{"version":3,"file":"OverlayVideoPlayer.B5dowbQJ.mjs","names":["React.useRef","React.useState","React.useMemo","React.useCallback"],"sources":["https:/framerusercontent.com/modules/sDBuUZToeEjqMu2tlLKw/GAPvLKlKP9qG0zmDDyMm/OverlayVideoPlayer.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{motion,useInView}from\"framer-motion\";// Request: Build OverlayVideoPlayer with interactive/ambient modes, centered Play overlay, preview looping, full-play handoff, and configurable video/display controls.\n/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function OverlayVideoPlayer(props){const{videoSource=\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\",ambientLoop=false,nativeControls=false,autoplayOnMount=false,posterEnabled=true,posterImage={src:\"https://framerusercontent.com/images/GfGkADagM4KEibNcIiRUWlfrR0.jpg\",alt:\"Gradient 1 - Blue\"},fillContainer=false,heightBehavior=\"ratio\",ratio=16/9,fixedHeight=420,cornerRadius=\"5px\",background=\"#FFFFFF\",volume=25,loop=false,objectFit=\"cover\",previewLoopDuration=10,style}=props;const staticRenderer=useIsStaticRenderer();const containerRef=React.useRef(null);const videoRef=React.useRef(null);const isInView=useInView(containerRef,{once:false,amount:.3});const[overlayVisible,setOverlayVisible]=React.useState(!ambientLoop&&!autoplayOnMount);const[prefersReducedMotion,setPrefersReducedMotion]=React.useState(false);React.useEffect(()=>{React.startTransition(()=>{setOverlayVisible(!ambientLoop&&!autoplayOnMount);});},[ambientLoop,autoplayOnMount]);React.useEffect(()=>{if(typeof window!==\"undefined\"&&\"matchMedia\"in window){const media=window.matchMedia(\"(prefers-reduced-motion: reduce)\");const apply=()=>{React.startTransition(()=>{setPrefersReducedMotion(media.matches);});};apply();if(\"addEventListener\"in media){media.addEventListener(\"change\",apply);return()=>media.removeEventListener(\"change\",apply);}const legacyMedia=media;legacyMedia.addListener?.(apply);return()=>legacyMedia.removeListener?.(apply);}else{React.startTransition(()=>{setPrefersReducedMotion(false);});}},[]);const safePreviewDuration=React.useMemo(()=>Math.max(.5,previewLoopDuration),[previewLoopDuration]);const safeVolume=React.useMemo(()=>{const normalized=Number.isFinite(volume)?volume:25;return Math.min(100,Math.max(0,normalized))/100;},[volume]);React.useEffect(()=>{const video=videoRef.current;if(!video)return;if(ambientLoop){video.currentTime=0;video.muted=true;video.loop=true;video.autoplay=true;video.play().catch(()=>null);return;}if(overlayVisible&&!autoplayOnMount){video.muted=true;video.loop=false;video.autoplay=true;video.play().catch(()=>null);const handleTimeUpdate=()=>{if(video.currentTime>=safePreviewDuration){video.currentTime=0;video.play().catch(()=>null);}};video.addEventListener(\"timeupdate\",handleTimeUpdate);return()=>{video.removeEventListener(\"timeupdate\",handleTimeUpdate);};}video.currentTime=0;video.muted=false;video.volume=safeVolume;video.loop=loop;video.play().catch(()=>null);},[ambientLoop,overlayVisible,autoplayOnMount,safePreviewDuration,safeVolume,loop,videoSource]);const handlePlayClick=React.useCallback(()=>{const video=videoRef.current;if(!video)return;React.startTransition(()=>{setOverlayVisible(false);});video.currentTime=0;video.muted=false;video.volume=safeVolume;video.loop=loop;video.play().catch(()=>null);},[loop,safeVolume]);const handleFramePointerUp=React.useCallback(()=>{const video=videoRef.current;if(!video)return;if(ambientLoop||overlayVisible||nativeControls)return;if(video.paused||video.ended)return;video.pause();},[ambientLoop,overlayVisible,nativeControls]);const containerStyle=React.useMemo(()=>{const base={position:\"relative\",width:\"100%\",overflow:\"hidden\",borderRadius:cornerRadius,background,isolation:\"isolate\"};if(fillContainer){base.height=\"100%\";}else if(heightBehavior===\"fixed\"){base.height=fixedHeight;}else{base.aspectRatio=`${ratio}`;base.height=\"auto\";}return base;},[background,cornerRadius,fillContainer,fixedHeight,heightBehavior,ratio]);const pulseEnabled=!ambientLoop&&overlayVisible&&!prefersReducedMotion&&!staticRenderer&&isInView;return /*#__PURE__*/_jsxs(\"div\",{ref:containerRef,style:{...containerStyle,...style},onPointerUp:handleFramePointerUp,children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,background:\"#000000\",zIndex:0,pointerEvents:\"none\"}}),/*#__PURE__*/_jsx(\"video\",{ref:videoRef,src:videoSource,poster:posterEnabled?posterImage?.src:undefined,playsInline:true,autoPlay:true,muted:ambientLoop||overlayVisible,loop:ambientLoop,controls:nativeControls,style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",display:\"block\",objectFit,background,opacity:1,mixBlendMode:\"normal\",zIndex:1}}),!ambientLoop&&overlayVisible&&!autoplayOnMount?/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",pointerEvents:\"none\",zIndex:2},children:/*#__PURE__*/_jsx(motion.button,{type:\"button\",\"aria-label\":\"Play video\",onClick:handlePlayClick,animate:pulseEnabled?{scale:[1,1.08,1]}:{scale:1},transition:pulseEnabled?{duration:1.8,repeat:Infinity,repeatType:\"loop\",ease:\"easeInOut\"}:{duration:.2},style:{pointerEvents:\"auto\",width:72,height:72,borderRadius:\"999px\",border:\"none\",background:\"rgba(0,0,0,0.36)\",color:\"#FFFFFF\",cursor:\"pointer\",font:\"inherit\",fontSize:14,lineHeight:1,letterSpacing:\"-0.01em\",backdropFilter:\"blur(6px)\",WebkitBackdropFilter:\"blur(6px)\"},children:\"Play\"})}):null]});}addPropertyControls(OverlayVideoPlayer,{videoSource:{type:ControlType.File,title:\"Video\",allowedFileTypes:[\"mp4\",\"webm\",\"mov\"]},ambientLoop:{type:ControlType.Boolean,title:\"Ambient Loop\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},nativeControls:{type:ControlType.Boolean,title:\"Native Controls\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},autoplayOnMount:{type:ControlType.Boolean,title:\"Autoplay Full\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},posterEnabled:{type:ControlType.Boolean,title:\"Use Poster\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},posterImage:{type:ControlType.ResponsiveImage,title:\"Poster\",hidden:props=>!props.posterEnabled},fillContainer:{type:ControlType.Boolean,title:\"Fill Container\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},heightBehavior:{type:ControlType.Enum,title:\"Height\",defaultValue:\"ratio\",options:[\"ratio\",\"fixed\"],optionTitles:[\"Ratio\",\"Fixed\"],displaySegmentedControl:true},ratio:{type:ControlType.Number,title:\"Ratio\",defaultValue:16/9,min:.2,max:3,step:.01,hidden:props=>props.heightBehavior!==\"ratio\"},fixedHeight:{type:ControlType.Number,title:\"Fixed H\",defaultValue:420,min:80,max:1200,unit:\"px\",step:1,hidden:props=>props.heightBehavior!==\"fixed\"},cornerRadius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"5px\"},background:{type:ControlType.Color,title:\"Background\",defaultValue:\"#FFFFFF\"},volume:{type:ControlType.Number,title:\"Volume\",defaultValue:25,min:0,max:100,unit:\"%\",step:1},loop:{type:ControlType.Boolean,title:\"Loop Full\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},objectFit:{type:ControlType.Enum,title:\"Fit\",defaultValue:\"cover\",options:[\"cover\",\"contain\",\"fill\",\"none\",\"scale-down\"],optionTitles:[\"Cover\",\"Contain\",\"Fill\",\"None\",\"Scale Down\"]},previewLoopDuration:{type:ControlType.Number,title:\"Preview (s)\",defaultValue:10,min:1,max:60,step:.5}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"OverlayVideoPlayer\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./OverlayVideoPlayer.map"],"mappings":"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"}