{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/0XzkemEeDAYulf1XngAI/YKVxFifTtpTJvF5THSpH/w0oYNi6lq.js", "ssg:https://framerusercontent.com/modules/lRDHiNWNVWmE0lqtoVHP/jFOAZKc2EvehHtUZX1Hf/Video.js", "ssg:https://framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js", "ssg:https://framerusercontent.com/modules/lRDHiNWNVWmE0lqtoVHP/qXQVWG1AZxpdrbBmhE1U/Video.js"],
  "sourcesContent": ["// Generated by Framer (f082bd6)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,CycleVariantState,getFonts,getPropertyControls,SVG,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{Video}from\"https://framerusercontent.com/modules/lRDHiNWNVWmE0lqtoVHP/jFOAZKc2EvehHtUZX1Hf/Video.js\";import{Video as Video1}from\"https://framerusercontent.com/modules/lRDHiNWNVWmE0lqtoVHP/qXQVWG1AZxpdrbBmhE1U/Video.js\";const VideoFonts=getFonts(Video);const Video1Controls=getPropertyControls(Video1);const enabledGestures={Zf4Qxizb_:{hover:true}};const cycleOrder=[\"Zf4Qxizb_\",\"MfctWMD3J\"];const serializationHash=\"framer-qFIY8\";const variantClassNames={MfctWMD3J:\"framer-v-1gpgkdi\",Zf4Qxizb_:\"framer-v-m8x2b0\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const transformTemplate1=(_,t)=>`translate(-50%, -50%) ${t}`;const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Variant 1\":\"Zf4Qxizb_\",\"Variant 2\":\"MfctWMD3J\"};const getProps=({height,id,videoFile,width,...props})=>{return{...props,tTy0YFxG4:videoFile??props.tTy0YFxG4,variant:humanReadableVariantMap[props.variant]??props.variant??\"Zf4Qxizb_\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,tTy0YFxG4,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"Zf4Qxizb_\",enabledGestures,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTapwiu2ur=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});setVariant(\"MfctWMD3J\");});const onTap1ihqjoj=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});setVariant(CycleVariantState);});const onEnd131hx22=activeVariantCallback(async(...args)=>{setVariant(\"Zf4Qxizb_\");});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const ref1=React.useRef(null);const isDisplayed=()=>{if(gestureVariant===\"Zf4Qxizb_-hover\")return true;return false;};const isDisplayed1=()=>{if(baseVariant===\"MfctWMD3J\")return false;return true;};const defaultLayoutId=React.useId();const componentViewport=useComponentViewport();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-m8x2b0\",className,classNames),\"data-framer-name\":\"Variant 1\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"Zf4Qxizb_\",onTap:onTapwiu2ur,ref:ref??ref1,style:{...style},...addPropertyOverrides({\"Zf4Qxizb_-hover\":{\"data-framer-name\":undefined},MfctWMD3J:{\"data-framer-name\":\"Variant 2\",onTap:onTap1ihqjoj}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1fcwcb8\",\"data-framer-name\":\"Blog\",layoutDependency:layoutDependency,layoutId:\"thLsAmdwN\",children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-1n4mdyd\",layoutDependency:layoutDependency,layoutId:\"GJ3V4AyQY\",children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-uxou8o\",\"data-framer-name\":\"Card\",layoutDependency:layoutDependency,layoutId:\"JRSm_YXWS\",style:{backgroundColor:\"rgb(255, 255, 255)\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10,boxShadow:\"0px 0.7961918735236395px 2.3885756205709185px -0.625px rgba(0, 0, 0, 0.05), 0px 2.414506143104518px 7.2435184293135535px -1.25px rgba(0, 0, 0, 0.05), 0px 6.382653521484461px 19.147960564453385px -1.875px rgba(0, 0, 0, 0.05), 0px 20px 60px -2.5px rgba(0, 0, 0, 0.05)\"},children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-wnc0fu-container\",layoutDependency:layoutDependency,layoutId:\"Ke50sTJCU-container\",children:/*#__PURE__*/_jsx(Video,{backgroundColor:\"rgba(0, 0, 0, 0)\",borderRadius:0,bottomLeftRadius:0,bottomRightRadius:0,controls:false,height:\"100%\",id:\"Ke50sTJCU\",isMixedBorderRadius:false,layoutId:\"Ke50sTJCU\",loop:false,muted:false,objectFit:\"cover\",playing:false,posterEnabled:true,srcFile:tTy0YFxG4,srcType:\"Upload\",srcUrl:\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\",startTime:0,style:{height:\"100%\",width:\"100%\"},topLeftRadius:0,topRightRadius:0,volume:40,width:\"100%\",...addPropertyOverrides({MfctWMD3J:{onEnd:onEnd131hx22,playing:true}},baseVariant,gestureVariant)})})}),isDisplayed()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-1wjww0r\",layoutDependency:layoutDependency,layoutId:\"rvT0WURgr\",style:{backgroundColor:\"var(--token-7bb9321c-e091-4129-baa5-7100e22087cb, rgb(18, 18, 18))\",opacity:.1}}),isDisplayed1()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-1o7vanf\",\"data-framer-name\":\"Play Button\",layoutDependency:layoutDependency,layoutId:\"CXxCF6Y7_\",style:{backgroundColor:\"rgba(255, 255, 255, 0.5)\",borderBottomLeftRadius:100,borderBottomRightRadius:100,borderTopLeftRadius:100,borderTopRightRadius:100},transformTemplate:transformTemplate1,children:/*#__PURE__*/_jsx(SVG,{className:\"framer-1yegkgt\",\"data-framer-name\":\"Play-arrow\",fill:\"black\",intrinsicHeight:24,intrinsicWidth:24,layoutDependency:layoutDependency,layoutId:\"l99ABwYBJ\",svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M8 19V5l11 7z\"/></svg>',withExternalLayout:true})})]})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-qFIY8.framer-158jdhz, .framer-qFIY8 .framer-158jdhz { display: block; }\",\".framer-qFIY8.framer-m8x2b0 { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-qFIY8 .framer-1fcwcb8 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 60px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: min-content; }\",\".framer-qFIY8 .framer-1n4mdyd { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: wrap; gap: 20px; height: min-content; justify-content: center; max-width: 100%; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-qFIY8 .framer-uxou8o { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 450px; justify-content: center; min-width: 100px; overflow: hidden; padding: 0px; position: relative; width: 300px; will-change: var(--framer-will-change-override, transform); }\",\".framer-qFIY8 .framer-wnc0fu-container { flex: none; height: 450px; position: relative; width: 300px; }\",\".framer-qFIY8 .framer-1wjww0r { bottom: 0px; flex: none; height: 450px; left: 0px; overflow: visible; position: absolute; right: 0px; z-index: 1; }\",\".framer-qFIY8 .framer-1o7vanf { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; left: 50%; overflow: visible; padding: 0px; position: absolute; top: 50%; width: min-content; z-index: 1; }\",\".framer-qFIY8 .framer-1yegkgt { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 50px); position: relative; width: 50px; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-qFIY8.framer-m8x2b0, .framer-qFIY8 .framer-1fcwcb8, .framer-qFIY8 .framer-1n4mdyd, .framer-qFIY8 .framer-uxou8o, .framer-qFIY8 .framer-1o7vanf { gap: 0px; } .framer-qFIY8.framer-m8x2b0 > *, .framer-qFIY8 .framer-1o7vanf > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } .framer-qFIY8.framer-m8x2b0 > :first-child, .framer-qFIY8 .framer-1n4mdyd > :first-child, .framer-qFIY8 .framer-1o7vanf > :first-child { margin-left: 0px; } .framer-qFIY8.framer-m8x2b0 > :last-child, .framer-qFIY8 .framer-1n4mdyd > :last-child, .framer-qFIY8 .framer-1o7vanf > :last-child { margin-right: 0px; } .framer-qFIY8 .framer-1fcwcb8 > * { margin: 0px; margin-bottom: calc(60px / 2); margin-top: calc(60px / 2); } .framer-qFIY8 .framer-1fcwcb8 > :first-child, .framer-qFIY8 .framer-uxou8o > :first-child { margin-top: 0px; } .framer-qFIY8 .framer-1fcwcb8 > :last-child, .framer-qFIY8 .framer-uxou8o > :last-child { margin-bottom: 0px; } .framer-qFIY8 .framer-1n4mdyd > * { margin: 0px; margin-left: calc(20px / 2); margin-right: calc(20px / 2); } .framer-qFIY8 .framer-uxou8o > * { margin: 0px; margin-bottom: calc(0px / 2); margin-top: calc(0px / 2); } }\",\".framer-qFIY8.framer-v-1gpgkdi .framer-uxou8o { height: min-content; width: min-content; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 450\n * @framerIntrinsicWidth 300\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"MfctWMD3J\":{\"layout\":[\"auto\",\"auto\"]},\"ODNl7Y_p5\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"tTy0YFxG4\":\"videoFile\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const Framerw0oYNi6lq=withCSS(Component,css,\"framer-qFIY8\");export default Framerw0oYNi6lq;Framerw0oYNi6lq.displayName=\"video testimonial\";Framerw0oYNi6lq.defaultProps={height:450,width:300};addPropertyControls(Framerw0oYNi6lq,{variant:{options:[\"Zf4Qxizb_\",\"MfctWMD3J\"],optionTitles:[\"Variant 1\",\"Variant 2\"],title:\"Variant\",type:ControlType.Enum},tTy0YFxG4:Video1Controls?.[\"srcFile\"]&&{...Video1Controls[\"srcFile\"],__defaultAssetReference:\"\",description:undefined,hidden:undefined,title:\"video file\"}});addFonts(Framerw0oYNi6lq,[{explicitInter:true,fonts:[]},...VideoFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerw0oYNi6lq\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"450\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerVariables\":\"{\\\"tTy0YFxG4\\\":\\\"videoFile\\\"}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"MfctWMD3J\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"ODNl7Y_p5\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicWidth\":\"300\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./w0oYNi6lq.map", "import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsInCurrentNavigationTarget,RenderTarget}from\"framer\";import{isMotionValue,useInView}from\"framer-motion\";import{borderRadiusControl,defaultEvents,useIsBrowserSafari,useIsOnCanvas,useOnEnter,useOnExit,useRadius,useRenderTarget}from\"https://framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js\";// https://framer.com/m/framer/default-utils.js@^0.45.0\nimport{memo,useCallback,useEffect,useMemo,useRef,useState}from\"react\";var ObjectFitType;(function(ObjectFitType){ObjectFitType[\"Fill\"]=\"fill\";ObjectFitType[\"Contain\"]=\"contain\";ObjectFitType[\"Cover\"]=\"cover\";ObjectFitType[\"None\"]=\"none\";ObjectFitType[\"ScaleDown\"]=\"scale-down\";})(ObjectFitType||(ObjectFitType={}));var SrcType;(function(SrcType){SrcType[\"Video\"]=\"Upload\";SrcType[\"Url\"]=\"URL\";})(SrcType||(SrcType={}));const defaultVideo=\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\";// Reduce renders\nfunction getProps(props){const{width,height,topLeft,topRight,bottomRight,bottomLeft,id,children,...rest}=props;return rest;}/**\n * VIDEO\n *\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 112\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export function Video(props){const newProps=getProps(props);return /*#__PURE__*/_jsx(VideoMemo,{...newProps});}function usePlaybackControls(videoRef){const isInCurrentNavigationTarget=useIsInCurrentNavigationTarget();const requestingPlay=useRef(false);const isPlayingRef=useRef(false);const setProgress=useCallback(rawProgress=>{if(!videoRef.current)return;const newProgress=(rawProgress===1?.999:rawProgress)*videoRef.current.duration;const isAlreadySet=Math.abs(videoRef.current.currentTime-newProgress)<.1;if(videoRef.current.duration>0&&!isAlreadySet){videoRef.current.currentTime=newProgress;}},[]);const play=useCallback(()=>{const video=videoRef.current;if(!video)return;video.preload=\"auto\"// makes sure browsers don't throttle: https://html.spec.whatwg.org/multipage/media.html#:~:text=When%20the%20media%20resource%20is%20playing%2C%20hints%20to%20the%20user%20agent%20that%20bandwidth%20is%20to%20be%20considered%20scarce%2C%20e.g.%20suggesting%20throttling%20the%20download%20so%20that%20the%20media%20data%20is%20obtained%20at%20the%20slowest%20possible%20rate%20that%20still%20maintains%20consistent%20playback.\n;const isPlaying=video.currentTime>0&&video.onplaying&&!video.paused&&!video.ended&&video.readyState>=video.HAVE_CURRENT_DATA;if(!isPlaying&&video&&!requestingPlay.current&&isInCurrentNavigationTarget){requestingPlay.current=true;isPlayingRef.current=true;video.play().catch(e=>{})// It's likely fine, swallow error\n.finally(()=>requestingPlay.current=false);}},[]);const pause=useCallback(()=>{if(!videoRef.current||requestingPlay.current)return;videoRef.current.pause();isPlayingRef.current=false;},[]);return{play,pause,setProgress,isPlaying:isPlayingRef};}function useAutoplayBehavior({playingProp,muted,loop,playsinline,controls}){const[initialPlayingProp]=useState(()=>playingProp);const[hasPlayingPropChanged,setHasPlayingPropChanged]=useState(false);if(playingProp!==initialPlayingProp&&!hasPlayingPropChanged){setHasPlayingPropChanged(true);}const behavesAsGif=// passing `playing === true` on mount indicates that the video should\n// autoplay, like a GIF\ninitialPlayingProp&&muted&&loop&&playsinline&&!controls&&// Some users of the <Video> component use it by wrapping it with\n// another smart component and adding their own controls on top. (The\n// controls use transitions to control the video: e.g., when clicking\n// the play button, the smart component will transition to a state with\n// <Video playing={true} />.) In this case, we don't want the video to\n// behave as a gif, as it will be weird if the video suddenly started\n// acting as such (and auto-pausing when leaving the viewport) as soon\n// as the site visitor mutes it and clicks \u201CPlay\u201D.\n!hasPlayingPropChanged;let autoplay;if(behavesAsGif)autoplay=\"on-viewport\";else if(initialPlayingProp)autoplay=\"on-mount\";else autoplay=\"no-autoplay\";return autoplay;}const VideoMemo=/*#__PURE__*/memo(function VideoInner(props){const{// default props\nsrcType=\"URL\",srcUrl,srcFile=\"\",posterEnabled=false,controls=false,playing=true,loop=true,muted=true,playsinline=true,restartOnEnter=false,objectFit=\"cover\",backgroundColor=\"rgba(0,0,0,0)\",radius=0,volume=25,startTime:startTimeProp=0,poster,playing:playingProp,progress,onSeeked,onPause,onPlay,onEnd,onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp}=props;const videoRef=useRef();const isSafari=useIsBrowserSafari();const wasPausedOnLeave=useRef(null);const wasEndedOnLeave=useRef(null);const isOnCanvas=useIsOnCanvas();const renderTarget=useRenderTarget();const isStaticRenderer=isOnCanvas||renderTarget===RenderTarget.export;const borderRadius=useRadius(props);// Hard-coding `autoplayBehavior` and `isInViewport` when on canvas as a\n// tiny perf optimization. isStaticRenderer won\u2019t change through the lifecycle of\n// the component, so using these hooks conditionally should be safe\nconst autoplayBehavior=isStaticRenderer?\"no-autoplay\":useAutoplayBehavior({playingProp,muted,loop,playsinline,controls});const isInViewport=isStaticRenderer?true:useInView(videoRef);const isCloseToViewport=isStaticRenderer?false:useInView(videoRef,{margin:\"0px 0px 100px 100px\",once:true});// Video elements behave oddly at 100% duration\nconst startTime=startTimeProp===100?99.9:startTimeProp;const{play,pause,setProgress,isPlaying}=usePlaybackControls(videoRef);// Pause/play via props\nuseEffect(()=>{if(isStaticRenderer)return;if(playingProp)play();else pause();},[playingProp]);// Pause/play via viewport\nuseEffect(()=>{if(isStaticRenderer)return;if(autoplayBehavior!==\"on-viewport\")return;if(isInViewport)play();else pause();},[autoplayBehavior,isInViewport]);/**\n     * The Video component has some effects that sync the video element with props\n     * like `startTime`, `progress`, etc. React calls these effects whenever these\n     * props change. However, it also calls them on the first mount, and this is\n     * troublesome \u2013 if we\u2019re doing SSR, and the user changed the video state before\n     * the video was hydrated, the initial `useEffect` call will reset the video\n     * state. To avoid this, we use this flag.\n     */const isMountedAndReadyForProgressChanges=useRef(false);// Allow scrubbling via progress prop\n// 1) Handle cases when the progress prop itself changes\nuseEffect(()=>{if(!isMountedAndReadyForProgressChanges.current){isMountedAndReadyForProgressChanges.current=true;return;}const rawProgressValue=isMotionValue(progress)?progress.get():(progress??0)*.01;setProgress(// When the progress value exists (e.g. <Video startTime={10}\n// progress={50} />), we respect the `progress` value over\n// `startTime`, even if `startTime` changes. That\u2019s because\n// `startTime` == start == changing it shouldn\u2019t affect the current\n// progress\n(rawProgressValue??0)||// Then why fall back to `startTime` when `progress` doesn\u2019t exist,\n// you might ask? Now, that\u2019s for\n// - canvas UX: we want the video progress to change when the user\n//   is scrobbling the \u201CStart Time\u201D in component settings.\n// - backwards compatibility: maybe some users *are* scrobbling\n//   using `startTime` instead of `progress`? We don\u2019t know, and it\n//   always supported it, so let\u2019s not break it\n(startTime??0)/100);},[startTime,srcFile,srcUrl,progress]);// 2) Handle cases when the motion value inside the progress prop changes\nuseEffect(()=>{if(!isMotionValue(progress))return;return progress.on(\"change\",value=>setProgress(value));},[progress]);// (Prototyping) Checking if we need to play on navigation enter\nuseOnEnter(()=>{if(wasPausedOnLeave.current===null)return;if(videoRef.current){// if (restartOnEnter) setProgress(0)\nif(!wasEndedOnLeave&&loop||!wasPausedOnLeave.current)play();}});// (Prototyping) Pausing & saving playing state on navigation exit\nuseOnExit(()=>{if(videoRef.current){wasEndedOnLeave.current=videoRef.current.ended;wasPausedOnLeave.current=videoRef.current.paused;pause();}});const src=useMemo(()=>{let fragment=\"\";// if (\n//     startTime > 0 &&\n//     videoRef.current &&\n//     !isNaN(videoRef.current.duration) &&\n//     !isStaticRenderer\n// ) {\n//     console.log(startTime, videoRef.current.duration)\n//     fragment = `#t=${startTime * videoRef.current.duration}`\n// }\nif(srcType===\"URL\")return srcUrl+fragment;if(srcType===\"Upload\")return srcFile+fragment;},[srcType,srcFile,srcUrl,startTime]);// Autoplay via JS to work in Safari\nuseEffect(()=>{if(isSafari&&videoRef.current&&autoplayBehavior===\"on-mount\"){setTimeout(()=>play(),50);}},[]);// Volume Control\nuseEffect(()=>{if(videoRef.current&&!muted)videoRef.current.volume=(volume??0)/100;},[volume]);// When video is ready, set start-time, then autoplay if needed\nconst handleReady=()=>{const video=videoRef.current;if(!video)return;if(video.currentTime<.3&&startTime>0)setProgress((startTime??0)*.01);if(// when the component updates (e.g. only srcFile/url changes), and the video was already playing, keep playing\nisPlaying.current||autoplayBehavior===\"on-mount\"||autoplayBehavior===\"on-viewport\"&&isInViewport)play();};return /*#__PURE__*/_jsx(\"video\",{onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp,src:src,loop:loop,ref:videoRef,onSeeked:e=>onSeeked?.(e),onPause:e=>onPause?.(e),onPlay:e=>onPlay?.(e),onEnded:e=>onEnd?.(e),autoPlay:isPlaying.current||autoplayBehavior===\"on-mount\"||autoplayBehavior===\"on-viewport\"&&isInViewport,preload:isPlaying.current?\"auto\":isStaticRenderer&&!poster?\"metadata\":autoplayBehavior!==\"on-mount\"&&!isCloseToViewport?\"none\":// `autoplay` overrides this too\n\"metadata\",poster:posterEnabled&&!srcFile&&srcUrl===defaultVideo?\"https://framerusercontent.com/images/5ILRvlYXf72kHSVHqpa3snGzjU.jpg\":posterEnabled&&poster?poster:undefined,onLoadedData:handleReady,controls:controls,muted:isStaticRenderer?true:muted,playsInline:playsinline,style:{cursor:!!onClick?\"pointer\":\"auto\",width:\"100%\",height:\"100%\",borderRadius,display:\"block\",objectFit:objectFit,backgroundColor:backgroundColor,objectPosition:\"50% 50%\"}});});Video.displayName=\"Video\";function capitalizeFirstLetter(value){return value.charAt(0).toUpperCase()+value.slice(1);}export function titleCase(value){const groups=value.match(/[A-Z]{2,}|[A-Z][a-z]+|[a-z]+|[A-Z]|\\d+/gu)||[];return groups.map(capitalizeFirstLetter).join(\" \");}const objectFitOptions=[\"cover\",\"fill\",\"contain\",\"scale-down\",\"none\"];addPropertyControls(Video,{srcType:{type:ControlType.Enum,displaySegmentedControl:true,title:\"Source\",options:[\"URL\",\"Upload\"]},srcUrl:{type:ControlType.String,title:\"URL\",defaultValue:\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\",hidden(props){return props.srcType===\"Upload\";}},srcFile:{type:ControlType.File,title:\"File\",allowedFileTypes:[\"mp4\",\"webm\"],hidden(props){return props.srcType===\"URL\";}},playing:{type:ControlType.Boolean,title:\"Playing\",enabledTitle:\"Yes\",disabledTitle:\"No\"},...borderRadiusControl,posterEnabled:{type:ControlType.Boolean,title:\"Poster\",enabledTitle:\"Yes\",disabledTitle:\"No\"},poster:{type:ControlType.Image,title:\"Image\",hidden:({posterEnabled})=>!posterEnabled,description:\"We recommend adding a poster. [Learn more](https://www.framer.com/help/articles/how-are-videos-optimized-in-framer/).\"},backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"rgba(0,0,0,0)\"},startTime:{title:\"Start Time\",type:ControlType.Number,min:0,max:100,step:.1,unit:\"%\"},loop:{type:ControlType.Boolean,title:\"Loop\",enabledTitle:\"Yes\",disabledTitle:\"No\"},objectFit:{type:ControlType.Enum,title:\"Fit\",options:objectFitOptions,optionTitles:objectFitOptions.map(titleCase)},// restartOnEnter: {\n//     type: ControlType.Boolean,\n//     title: \"On ReEnter\",\n//     enabledTitle: \"Restart\",\n//     disabledTitle: \"Resume\",\n// },\ncontrols:{type:ControlType.Boolean,title:\"Controls\",enabledTitle:\"Show\",disabledTitle:\"Hide\",defaultValue:false},muted:{type:ControlType.Boolean,title:\"Muted\",enabledTitle:\"Yes\",disabledTitle:\"No\"},volume:{type:ControlType.Number,max:100,min:0,unit:\"%\",hidden:({muted})=>muted,defaultValue:25},onEnd:{type:ControlType.EventHandler},onSeeked:{type:ControlType.EventHandler},onPause:{type:ControlType.EventHandler},onPlay:{type:ControlType.EventHandler},...defaultEvents});\nexport const __FramerMetadata__ = {\"exports\":{\"titleCase\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"VideoProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Video\":{\"type\":\"reactComponent\",\"name\":\"Video\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"200\",\"framerIntrinsicHeight\":\"112\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Video.map", "import{defaultEvents,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";import{useOnEnter,useOnExit}from\"https://framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js\";import{useConstant}from\"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";import{colorTokentoValue,colorFromToken}from\"https://framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js\";import{isMotionValue}from\"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";import{useUniqueClassName,randomID}from\"https://framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js\";import{getVariantControls}from\"https://framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js\";import{useIsBrowserSafari}from\"https://framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js\";import{useMultiOnChange,useOnChange}from\"https://framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js\";import{mstoMinAndSec,secondsToMinutes}from\"https://framerusercontent.com/modules/4zHZnO5JojN1PrIbu2jm/revv9QCWpkh8lPzi2jje/time.js\";import{useAutoMotionValue}from\"https://framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js\";import{useFontControls}from\"https://framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js\";import{useRenderTarget,useIsInPreview,useIsOnCanvas}from\"https://framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js\";import{useControlledState}from\"https://framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js\";import{usePadding,useRadius,paddingControl,borderRadiusControl}from\"https://framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js\";import{detectAutoSizingAxis}from\"https://framerusercontent.com/modules/8CkHAZatUz1UR8jNTcfD/HwbnIAZlUmQ2oTpcLkaH/detectAutoSizingAxis.js\";export{useOnEnter,useOnExit,defaultEvents,isMotionValue,colorFromToken,colorTokentoValue,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack,useUniqueClassName,getVariantControls,useIsBrowserSafari,randomID,useConstant,useMultiOnChange,useOnChange,usePadding,useRadius,paddingControl,borderRadiusControl,mstoMinAndSec,useFontControls,secondsToMinutes,useAutoMotionValue,useRenderTarget,useIsInPreview,useControlledState,detectAutoSizingAxis,useIsOnCanvas,};\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useUniqueClassName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getVariantControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorFromToken\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useControlledState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useAutoMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsInPreview\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"detectAutoSizingAxis\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mstoMinAndSec\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnEnter\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"secondsToMinutes\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}", "import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsInCurrentNavigationTarget}from\"framer\";import{isMotionValue,useInView}from\"framer-motion\";import{borderRadiusControl,defaultEvents,useIsBrowserSafari,useIsOnCanvas,useOnEnter,useOnExit,useRadius}from\"https://framer.com/m/framer/default-utils.js@^0.45.0\";import{memo,useCallback,useEffect,useMemo,useRef,useState}from\"react\";var ObjectFitType;(function(ObjectFitType){ObjectFitType[\"Fill\"]=\"fill\";ObjectFitType[\"Contain\"]=\"contain\";ObjectFitType[\"Cover\"]=\"cover\";ObjectFitType[\"None\"]=\"none\";ObjectFitType[\"ScaleDown\"]=\"scale-down\";})(ObjectFitType||(ObjectFitType={}));var SrcType;(function(SrcType){SrcType[\"Video\"]=\"Upload\";SrcType[\"Url\"]=\"URL\";})(SrcType||(SrcType={}));// Reduce renders\nfunction getProps(props){const{width,height,topLeft,topRight,bottomRight,bottomLeft,id,children,...rest}=props;return rest;}/**\n * VIDEO\n *\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 112\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */ export function Video(props){const newProps=getProps(props);return /*#__PURE__*/ _jsx(VideoMemo,{...newProps});}function usePlaybackControls(videoRef){const isInCurrentNavigationTarget=useIsInCurrentNavigationTarget();const requestingPlay=useRef(false);const setProgress=useCallback(rawProgress=>{if(!videoRef.current)return;const newProgress=(rawProgress===1?.999:rawProgress)*videoRef.current.duration;const isAlreadySet=Math.abs(videoRef.current.currentTime-newProgress)<.1;if(videoRef.current.duration>0&&!isAlreadySet){videoRef.current.currentTime=newProgress;}},[]);const play=useCallback(()=>{const isPlaying=videoRef.current.currentTime>0&&videoRef.current.onplaying&&!videoRef.current.paused&&!videoRef.current.ended&&videoRef.current.readyState>videoRef.current.HAVE_CURRENT_DATA;if(!isPlaying&&videoRef.current&&!requestingPlay.current&&isInCurrentNavigationTarget){requestingPlay.current=true;videoRef.current.play().catch(e=>{}) // It's likely fine, swallow error\n.finally(()=>requestingPlay.current=false);}},[]);const pause=useCallback(()=>{if(!videoRef.current||requestingPlay.current)return;videoRef.current.pause();},[]);return{play,pause,setProgress};}function useAutoplayBehavior({playingProp,muted,loop,playsinline,controls}){const[initialPlayingProp]=useState(()=>playingProp);const[hasPlayingPropChanged,setHasPlayingPropChanged]=useState(false);if(playingProp!==initialPlayingProp&&!hasPlayingPropChanged){setHasPlayingPropChanged(true);}const behavesAsGif=// passing `playing === true` on mount indicates that the video should\n// autoplay, like a GIF\ninitialPlayingProp&&muted&&loop&&playsinline&&!controls&&// Some users of the <Video> component use it by wrapping it with\n// another smart component and adding their own controls on top. (The\n// controls use transitions to control the video: e.g., when clicking\n// the play button, the smart component will transition to a state with\n// <Video playing={true} />.) In this case, we don't want the video to\n// behave as a gif, as it will be weird if the video suddenly started\n// acting as such (and auto-pausing when leaving the viewport) as soon\n// as the site visitor mutes it and clicks \u201CPlay\u201D.\n!hasPlayingPropChanged;let autoplay;if(behavesAsGif)autoplay=\"on-viewport\";else if(initialPlayingProp)autoplay=\"on-mount\";else autoplay=\"no-autoplay\";return autoplay;}/**\n * The Video component has some effects that sync the video element with props\n * like `startTime`, `progress`, etc. React calls these effects whenever these\n * props change. However, it also calls them on the first mount, and this is\n * troublesome \u2013 if we\u2019re doing SSR, and the user changed the video state before\n * the video was hydrated, the initial `useEffect` call will reset the video\n * state. To avoid this, we use this flag.\n */ let isMountedAndReadyForProgressChanges=false;const VideoMemo=/*#__PURE__*/ memo(function VideoInner(props){const{srcType,srcFile,srcUrl,playing:playingProp,muted,playsinline,controls,progress,objectFit,backgroundColor,onSeeked,onPause,onPlay,onEnd,onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp,poster,posterEnabled,startTime:startTimeProp,volume,loop}=props;const videoRef=useRef();const isSafari=useIsBrowserSafari();const wasPausedOnLeave=useRef(null);const wasEndedOnLeave=useRef(null);const isOnCanvas=useIsOnCanvas();const borderRadius=useRadius(props);// Hard-coding `autoplayBehavior` and `isInViewport` when on canvas as a\n// tiny perf optimization. isOnCanvas won\u2019t change through the lifecycle of\n// the component, so using these hooks conditionally should be safe\nconst autoplayBehavior=isOnCanvas?\"no-autoplay\":useAutoplayBehavior({playingProp,muted,loop,playsinline,controls});const isInViewport=isOnCanvas?true:useInView(videoRef);// Video elements behave oddly at 100% duration\nconst startTime=startTimeProp===100?99.9:startTimeProp;const{play,pause,setProgress}=usePlaybackControls(videoRef);// Pause/play via props\nuseEffect(()=>{if(isOnCanvas)return;if(playingProp)play();else pause();},[playingProp]);// Pause/play via viewport\nuseEffect(()=>{if(isOnCanvas)return;if(autoplayBehavior!==\"on-viewport\")return;if(isInViewport)play();else pause();},[autoplayBehavior,isInViewport]);// Allow scrubbling via progress prop\n// 1) Handle cases when the progress prop itself changes\nuseEffect(()=>{if(!isMountedAndReadyForProgressChanges){isMountedAndReadyForProgressChanges=true;return;}const rawProgressValue=isMotionValue(progress)?progress.get():(progress!==null&&progress!==void 0?progress:0)*.01;setProgress(// When the progress value exists (e.g. <Video startTime={10}\n// progress={50} />), we respect the `progress` value over\n// `startTime`, even if `startTime` changes. That\u2019s because\n// `startTime` == start == changing it shouldn\u2019t affect the current\n// progress\n(rawProgressValue!==null&&rawProgressValue!==void 0?rawProgressValue:0)||// Then why fall back to `startTime` when `progress` doesn\u2019t exist,\n// you might ask? Now, that\u2019s for\n// - canvas UX: we want the video progress to change when the user\n//   is scrobbling the \u201CStart Time\u201D in component settings.\n// - backwards compatibility: maybe some users *are* scrobbling\n//   using `startTime` instead of `progress`? We don\u2019t know, and it\n//   always supported it, so let\u2019s not break it\n(startTime!==null&&startTime!==void 0?startTime:0)/100);},[startTime,srcFile,srcUrl,progress]);// 2) Handle cases when the motion value inside the progress prop changes\nuseEffect(()=>{if(!isMotionValue(progress))return;return progress.on(\"change\",value=>setProgress(value));},[progress]);// (Prototyping) Checking if we need to play on navigation enter\nuseOnEnter(()=>{if(wasPausedOnLeave.current===null)return;if(videoRef.current){// if (restartOnEnter) setProgress(0)\nif(!wasEndedOnLeave&&loop||!wasPausedOnLeave.current)play();}});// (Prototyping) Pausing & saving playing state on navigation exit\nuseOnExit(()=>{if(videoRef.current){wasEndedOnLeave.current=videoRef.current.ended;wasPausedOnLeave.current=videoRef.current.paused;pause();}});const src=useMemo(()=>{let fragment=\"\";// if (\n//     startTime > 0 &&\n//     videoRef.current &&\n//     !isNaN(videoRef.current.duration) &&\n//     !isOnCanvas\n// ) {\n//     console.log(startTime, videoRef.current.duration)\n//     fragment = `#t=${startTime * videoRef.current.duration}`\n// }\nif(srcType===SrcType.Url)return srcUrl+fragment;if(srcType===SrcType.Video)return srcFile+fragment;},[srcType,srcFile,srcUrl,startTime]);// Autoplay via JS to work in Safari\nuseEffect(()=>{if(isSafari&&videoRef.current&&autoplayBehavior===\"on-mount\"){setTimeout(()=>play(),50);}},[]);// Volume Control\nuseEffect(()=>{if(videoRef.current&&!muted)videoRef.current.volume=(volume!==null&&volume!==void 0?volume:0)/100;},[volume]);// When video is ready, set start-time, then autoplay if needed\nconst handleReady=()=>{if(!videoRef.current)return;if(videoRef.current.currentTime<.3)setProgress((startTime!==null&&startTime!==void 0?startTime:0)*.01);if(autoplayBehavior===\"on-mount\")play();};return /*#__PURE__*/ _jsx(\"video\",{onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp,src:src,loop:loop,ref:videoRef,onSeeked:e=>{return onSeeked===null||onSeeked===void 0?void 0:onSeeked(e);},onPause:e=>{return onPause===null||onPause===void 0?void 0:onPause(e);},onPlay:e=>{return onPlay===null||onPlay===void 0?void 0:onPlay(e);},onEnded:e=>{return onEnd===null||onEnd===void 0?void 0:onEnd(e);},autoPlay:autoplayBehavior===\"on-mount\",poster:posterEnabled?poster:undefined,onLoadedData:handleReady,controls:controls,muted:isOnCanvas?true:muted,playsInline:playsinline,style:{cursor:!!onClick?\"pointer\":\"auto\",width:\"100%\",height:\"100%\",borderRadius,display:\"block\",objectFit:objectFit,backgroundColor:backgroundColor,objectPosition:\"50% 50%\"}});});Video.displayName=\"Video\";Video.defaultProps={srcType:SrcType.Url,srcUrl:\"https://assets.mixkit.co/videos/preview/mixkit-ice-cream-glass-of-red-soda-5094-small.mp4\",srcFile:\"\",posterEnabled:false,controls:false,playing:true,loop:true,muted:true,playsinline:true,restartOnEnter:false,objectFit:ObjectFitType.Cover,backgroundColor:\"rgba(0,0,0,0)\",radius:0,volume:25,startTime:0};const groupsRegex=/[A-Z]{2,}|[A-Z][a-z]+|[a-z]+|[A-Z]|\\d+/gu;function capitalizeFirstLetter(value){return value.charAt(0).toUpperCase()+value.slice(1);}export function titleCase(value){const groups=value.match(groupsRegex)||[];return groups.map(capitalizeFirstLetter).join(\" \");}const objectFitOptions=[ObjectFitType.Cover,ObjectFitType.Fill,ObjectFitType.Contain,ObjectFitType.ScaleDown,ObjectFitType.None,];addPropertyControls(Video,{srcType:{type:ControlType.Enum,displaySegmentedControl:true,title:\"Source\",options:[SrcType.Url,SrcType.Video]},srcUrl:{type:ControlType.String,title:\" \",placeholder:\"../example.mp4\",hidden(props){return props.srcType===SrcType.Video;},description:\"Hosted video file URL. For YouTube, use the YouTube component.\"},srcFile:{type:ControlType.File,title:\" \",allowedFileTypes:[\"mp4\"],hidden(props){return props.srcType===SrcType.Url;}},playing:{type:ControlType.Boolean,title:\"Playing\",enabledTitle:\"Yes\",disabledTitle:\"No\"},posterEnabled:{type:ControlType.Boolean,title:\"Poster\",enabledTitle:\"Yes\",disabledTitle:\"No\"},poster:{type:ControlType.Image,title:\" \",hidden:({posterEnabled})=>!posterEnabled},backgroundColor:{type:ControlType.Color,title:\"Background\"},...borderRadiusControl,startTime:{title:\"Start Time\",type:ControlType.Number,min:0,max:100,step:.1,unit:\"%\"},loop:{type:ControlType.Boolean,title:\"Loop\",enabledTitle:\"Yes\",disabledTitle:\"No\"},objectFit:{type:ControlType.Enum,title:\"Fit\",options:objectFitOptions,optionTitles:objectFitOptions.map(titleCase)},// restartOnEnter: {\n//     type: ControlType.Boolean,\n//     title: \"On ReEnter\",\n//     enabledTitle: \"Restart\",\n//     disabledTitle: \"Resume\",\n// },\ncontrols:{type:ControlType.Boolean,title:\"Controls\",enabledTitle:\"Show\",disabledTitle:\"Hide\"},muted:{type:ControlType.Boolean,title:\"Muted\",enabledTitle:\"Yes\",disabledTitle:\"No\"},volume:{type:ControlType.Number,max:100,min:0,unit:\"%\",hidden:({muted})=>muted},onEnd:{type:ControlType.EventHandler},onSeeked:{type:ControlType.EventHandler},onPause:{type:ControlType.EventHandler},onPlay:{type:ControlType.EventHandler},...defaultEvents});\nexport const __FramerMetadata__ = {\"exports\":{\"VideoProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"titleCase\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Video\":{\"type\":\"reactComponent\",\"name\":\"Video\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"200\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicHeight\":\"112\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Video.map"],
  "mappings": "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",
  "names": ["init_ssg_sandbox_shims", "init_ssg_sandbox_shims", "init_ssg_sandbox_shims", "ObjectFitType", "SrcType", "defaultVideo", "getProps", "props", "width", "height", "topLeft", "topRight", "bottomRight", "bottomLeft", "id", "children", "rest", "Video", "newProps", "VideoMemo", "usePlaybackControls", "videoRef", "isInCurrentNavigationTarget", "useIsInCurrentNavigationTarget", "requestingPlay", "pe", "isPlayingRef", "setProgress", "te", "rawProgress", "newProgress", "isAlreadySet", "play", "video", "e", "pause", "useAutoplayBehavior", "playingProp", "muted", "loop", "playsinline", "controls", "initialPlayingProp", "ye", "hasPlayingPropChanged", "setHasPlayingPropChanged", "behavesAsGif", "autoplay", "X", "srcType", "srcUrl", "srcFile", "posterEnabled", "playing", "restartOnEnter", "objectFit", "backgroundColor", "radius", "volume", "startTimeProp", "poster", "progress", "onSeeked", "onPause", "onPlay", "onEnd", "onClick", "onMouseEnter", "onMouseLeave", "onMouseDown", "onMouseUp", "isSafari", "useIsBrowserSafari", "wasPausedOnLeave", "wasEndedOnLeave", "isOnCanvas", "useIsOnCanvas", "renderTarget", "useRenderTarget", "isStaticRenderer", "RenderTarget", "borderRadius", "useRadius", "autoplayBehavior", "isInViewport", "useInView", "isCloseToViewport", "startTime", "isPlaying", "ue", "isMountedAndReadyForProgressChanges", "rawProgressValue", "isMotionValue", "value", "useOnEnter", "useOnExit", "src", "se", "fragment", "handleReady", "capitalizeFirstLetter", "titleCase", "objectFitOptions", "addPropertyControls", "ControlType", "borderRadiusControl", "defaultEvents", "init_ssg_sandbox_shims", "ObjectFitType", "SrcType", "getProps", "props", "width", "height", "topLeft", "topRight", "bottomRight", "bottomLeft", "id", "children", "rest", "Video", "newProps", "VideoMemo", "usePlaybackControls", "videoRef", "isInCurrentNavigationTarget", "useIsInCurrentNavigationTarget", "requestingPlay", "pe", "setProgress", "te", "rawProgress", "newProgress", "isAlreadySet", "play", "e", "pause", "useAutoplayBehavior", "playingProp", "muted", "loop", "playsinline", "controls", "initialPlayingProp", "ye", "hasPlayingPropChanged", "setHasPlayingPropChanged", "behavesAsGif", "autoplay", "isMountedAndReadyForProgressChanges", "X", "srcType", "srcFile", "srcUrl", "progress", "objectFit", "backgroundColor", "onSeeked", "onPause", "onPlay", "onEnd", "onClick", "onMouseEnter", "onMouseLeave", "onMouseDown", "onMouseUp", "poster", "posterEnabled", "startTimeProp", "volume", "isSafari", "useIsBrowserSafari", "wasPausedOnLeave", "wasEndedOnLeave", "isOnCanvas", "useIsOnCanvas", "borderRadius", "useRadius", "autoplayBehavior", "isInViewport", "useInView", "startTime", "ue", "rawProgressValue", "isMotionValue", "value", "useOnEnter", "useOnExit", "src", "se", "fragment", "groupsRegex", "capitalizeFirstLetter", "titleCase", "objectFitOptions", "addPropertyControls", "ControlType", "borderRadiusControl", "defaultEvents", "VideoFonts", "getFonts", "Video", "Video1Controls", "getPropertyControls", "enabledGestures", "cycleOrder", "serializationHash", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transition1", "transformTemplate1", "_", "t", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "Variants", "motion", "x", "humanReadableVariantMap", "getProps", "height", "id", "videoFile", "width", "props", "createLayoutDependency", "Component", "Y", "ref", "activeLocale", "setLocale", "useLocaleInfo", "style", "className", "layoutId", "tTy0YFxG4", "restProps", "baseVariant", "classNames", "clearLoadingGesture", "gestureHandlers", "gestureVariant", "isLoading", "setGestureState", "setVariant", "useVariantState", "layoutDependency", "activeVariantCallback", "delay", "useActiveVariantCallback", "onTapwiu2ur", "args", "onTap1ihqjoj", "CycleVariantState", "onEnd131hx22", "scopingClassNames", "cx", "ref1", "pe", "isDisplayed", "isDisplayed1", "defaultLayoutId", "ae", "componentViewport", "useComponentViewport", "LayoutGroup", "u", "ComponentViewportProvider", "SVG", "css", "Framerw0oYNi6lq", "withCSS", "w0oYNi6lq_default", "addPropertyControls", "ControlType", "addFonts"]
}
