{"version":3,"file":"CarouselModule_3.BUGrKFdb.mjs","names":["useMemo","useRef","useState","useCallback"],"sources":["https:/framerusercontent.com/modules/kRBf83DcfIC0LubiIoQW/toYWUxz2NW7GYEddSCMD/CarouselModule_3.js"],"sourcesContent":["// Carrousel: media central (imagen o video por breakpoint) + 3 cards con barra\n// de progreso segmentada. Todos los items duran lo mismo (itemDuration) y se\n// encadenan sin pausa. El video hace loop mientras su item está activo.\n//\n// Nota de arquitectura (importante): un <video> de React NO recarga su fuente\n// cuando solo cambia el atributo `src` de un elemento ya montado. Por eso el\n// media activo se monta con key = URL del asset, forzando el remonte y evitando\n// el clásico bug de \"siempre se ve el primer video\". Aparte, se mantiene un set\n// oculto de <video preload=\"auto\"> (uno por URL) para que los assets 2 y 3 ya\n// estén cacheados cuando el carousel llega a ellos.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{motion,useInView}from\"framer-motion\";import{startTransition,useCallback,useEffect,useMemo,useRef,useState}from\"react\";const defaultSlides=[{title:\"Ask\",description:\"Your AI agent answers in seconds, with real data behind every response.\",desktopMediaType:\"image\",mobileMediaType:\"image\",image:{src:\"https://framerusercontent.com/images/f9RiWoNpmlCMqVRIHz8l8wYfeI.jpg\",alt:\"Slide 1\"},imageMobile:{src:\"https://framerusercontent.com/images/aNsAT3jCvt4zglbWCUoFe33Q.jpg\",alt:\"Slide 1 (Mobile)\"}},{title:\"Act\",description:\"Your AI handles the entire workflow. When it truly matters, our team takes over.\",desktopMediaType:\"image\",mobileMediaType:\"image\",image:{src:\"https://framerusercontent.com/images/2uTNEj5aTl2K3NJaEFWMbnrA.jpg\",alt:\"Slide 2\"},imageMobile:{src:\"https://framerusercontent.com/images/BYnxEV1zjYb9bhWh1IwBZ1ZoS60.jpg\",alt:\"Slide 2 (Mobile)\"}},{title:\"Monitor\",description:\"Your AI tracks every listing, booking, and issue, 24/7, in real time.\",desktopMediaType:\"image\",mobileMediaType:\"image\",image:{src:\"https://framerusercontent.com/images/BYnxEV1zjYb9bhWh1IwBZ1ZoS60.jpg\",alt:\"Slide 3\"},imageMobile:{src:\"https://framerusercontent.com/images/2uTNEj5aTl2K3NJaEFWMbnrA.jpg\",alt:\"Slide 3 (Mobile)\"}}];function clamp(n,min,max){return Math.max(min,Math.min(max,n));}// Resuelve qué media mostrar para un slide según el breakpoint activo.\nfunction resolveMedia(slide,isMobile){const type=isMobile?slide.mobileMediaType:slide.desktopMediaType;if(type===\"video\"){const src=isMobile?slide.videoMobile??slide.video:slide.video;return{type:\"video\",videoSrc:src,image:undefined};}const image=isMobile?slide.imageMobile??slide.image:slide.image;return{type:\"image\",videoSrc:undefined,image};}/**\n * Carousel Module\n *\n * @framerIntrinsicWidth 900\n * @framerIntrinsicHeight 650\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function CarouselModule(props){const isStatic=useIsStaticRenderer();const{slides=defaultSlides,autoPlay=true,itemDuration=4,videoLoopSeconds=4,initialIndex=0,responsiveMode=false,activeCardBackgroundColor=\"#FFFFFF\",inactiveCardBackgroundColor=\"#FFFFFF\",titleColor=\"#000000\",descriptionColor=\"#000000\",progressTrackColor=\"#EEEEEE\",progressFillColor=\"#000000\",titleFont,descriptionFont,cardRadius=12,mediaRadius=12,padding=28,gap=18,imageAreaHeight=440,transition}=props;const safeSlides=useMemo(()=>{const s=Array.isArray(slides)&&slides.length>0?slides:defaultSlides;if(s.length>=3)return s.slice(0,3);const out=[...s];while(out.length<3)out.push(s[out.length%s.length]);return out;},[slides]);const containerRef=useRef(null);const activeVideoRef=useRef(null);const inView=useInView(containerRef,{margin:\"-20% 0px -20% 0px\",amount:.2});// Ancho real del contenedor. Se usa para decidir el modo mobile de forma\n// automática (breakpoint por ancho), además del toggle manual del panel.\nconst[containerWidth,setContainerWidth]=useState(0);useEffect(()=>{if(typeof window===\"undefined\")return;const el=containerRef.current;if(!el)return;const update=()=>setContainerWidth(el.offsetWidth);update();const ro=new ResizeObserver(update);ro.observe(el);return()=>ro.disconnect();},[]);// Mobile si el toggle está activo O el ancho real es < 810px. El fallback\n// por ancho hace que el componente se adapte solo en dispositivos chicos,\n// aunque no se haya activado el toggle manualmente.\nconst isMobile=responsiveMode||containerWidth>0&&containerWidth<768;const[activeIndex,setActiveIndex]=useState(()=>{const idx=Number.isFinite(initialIndex)?initialIndex:0;return clamp(Math.floor(idx),0,2);});const[progress,setProgress]=useState(0);const goTo=useCallback(idx=>{startTransition(()=>{setActiveIndex(clamp(Math.floor(idx),0,2));setProgress(0);});},[]);const next=useCallback(()=>{startTransition(()=>{setActiveIndex(prev=>(prev+1)%3);setProgress(0);});},[]);// Motor de avance: cada item dura itemDuration (igual para todos). La barra\n// sigue ese tiempo con RAF (fluido a 60fps) y al cumplirse avanza al toque.\nuseEffect(()=>{if(isStatic)return;if(!autoPlay)return;if(!inView)return;if(typeof window===\"undefined\")return;const durationMs=Math.max(.25,itemDuration)*1e3;let raf=0;const start=performance.now();const tick=now=>{const p=clamp((now-start)/durationMs,0,1);startTransition(()=>setProgress(p));if(p>=1){next();return;}raf=window.requestAnimationFrame(tick);};raf=window.requestAnimationFrame(tick);return()=>window.cancelAnimationFrame(raf);},[isStatic,autoPlay,inView,activeIndex,itemDuration,next]);const activeSlide=safeSlides[activeIndex]??defaultSlides[0];const activeMedia=resolveMedia(activeSlide,isMobile);// Pausa entre repeticiones del video del item activo. El video NO usa `loop`\n// nativo; en su lugar, al terminar espera `videoLoopSeconds` y vuelve a\n// reproducir desde el principio. Se re-arma cada vez que cambia el item.\nuseEffect(()=>{if(isStatic)return;if(activeMedia.type!==\"video\"||!activeMedia.videoSrc)return;const video=activeVideoRef.current;if(!video)return;let timeoutId=null;const handleEnded=()=>{timeoutId=setTimeout(()=>{try{video.currentTime=0;video.play().catch(()=>{});}catch{}},Math.max(0,videoLoopSeconds)*1e3);};video.addEventListener(\"ended\",handleEnded);return()=>{video.removeEventListener(\"ended\",handleEnded);if(timeoutId)clearTimeout(timeoutId);};},[isStatic,activeIndex,activeMedia.type,activeMedia.videoSrc,videoLoopSeconds]);// Todas las URLs de video de todos los slides, para el set de precarga.\nconst allVideoSrcs=useMemo(()=>{const urls=[];for(const s of safeSlides){if(s.video)urls.push(s.video);if(s.videoMobile)urls.push(s.videoMobile);}return Array.from(new Set(urls));},[safeSlides]);const baseContainerStyle=useMemo(()=>({...props.style,position:\"relative\",width:\"100%\",height:\"100%\",padding,boxSizing:\"border-box\",display:\"flex\",flexDirection:\"column\",gap}),[props.style,padding,gap,isMobile]);const mediaStyle={width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\"};// En mobile solo se ve la card activa; en desktop las 3.\nconst visibleCards=isMobile?[{slide:activeSlide,idx:activeIndex}]:safeSlides.map((slide,idx)=>({slide,idx}));return /*#__PURE__*/_jsxs(\"section\",{ref:containerRef,style:baseContainerStyle,\"aria-roledescription\":\"carousel\",children:[/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",style:{position:\"absolute\",width:1,height:1,top:-9999,left:-9999,overflow:\"hidden\",pointerEvents:\"none\"},children:allVideoSrcs.map(src=>/*#__PURE__*/_jsx(\"video\",{src:src,preload:\"auto\",muted:true,playsInline:true},src))}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",width:\"100%\",height:imageAreaHeight,borderRadius:mediaRadius,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(motion.div,{initial:isStatic?false:{opacity:0},animate:isStatic?undefined:{opacity:1},transition:transition,style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\"},children:activeMedia.type===\"video\"&&activeMedia.videoSrc?/*#__PURE__*/_jsx(\"video\",{ref:activeVideoRef,src:activeMedia.videoSrc,autoPlay:true,muted:true,playsInline:true,preload:\"auto\",style:mediaStyle},activeMedia.videoSrc):activeMedia.image?.src?/*#__PURE__*/_jsx(\"img\",{src:activeMedia.image.src,srcSet:activeMedia.image.srcSet,alt:activeMedia.image.alt??\"\",style:mediaStyle},activeMedia.image.src):null},activeIndex)}),/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",style:{position:\"relative\",width:\"100%\",display:\"grid\",gridTemplateColumns:isMobile?\"1fr\":\"repeat(3, minmax(0, 1fr))\",gap:8},children:(isMobile?[0]:[0,1,2]).map(seg=>{const filled=isMobile?isStatic?1:progress:seg<activeIndex?1:seg===activeIndex?isStatic?1:progress:0;return /*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",width:\"100%\",height:2,borderRadius:999,background:progressTrackColor,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",left:0,top:0,bottom:0,width:\"100%\",background:progressFillColor,transformOrigin:\"0% 50%\",transform:`scaleX(${filled})`}})},seg);})}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",width:\"100%\",display:isMobile?\"flex\":\"grid\",gridTemplateColumns:isMobile?undefined:\"repeat(3, minmax(0, 1fr))\",gap:isMobile?0:8,alignItems:\"stretch\"},children:visibleCards.map(({slide,idx})=>{const isActive=idx===activeIndex;return /*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:()=>isMobile?next():goTo(idx),\"aria-current\":isActive,style:{appearance:\"none\",border:\"none\",background:\"transparent\",padding:0,textAlign:\"left\",cursor:\"pointer\",color:\"inherit\",width:\"100%\",display:\"flex\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",background:isActive?activeCardBackgroundColor:inactiveCardBackgroundColor,borderRadius:cardRadius,padding:18,boxSizing:\"border-box\",display:\"flex\",flexDirection:\"column\",gap:8,boxShadow:\"0 1px 0 rgba(0,0,0,0.04)\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{...titleFont,color:titleColor,margin:0,lineHeight:(titleFont?.lineHeight)??\"1.2em\"},children:slide.title}),/*#__PURE__*/_jsx(\"div\",{style:{...descriptionFont,color:descriptionColor,opacity:isActive?.9:.75,margin:0,lineHeight:(descriptionFont?.lineHeight)??\"1.3em\"},children:slide.description})]})},idx);})})]});}addPropertyControls(CarouselModule,{slides:{type:ControlType.Array,title:\"Slides\",maxCount:3,defaultValue:[{title:defaultSlides[0].title,description:defaultSlides[0].description,desktopMediaType:\"image\",mobileMediaType:\"image\"},{title:defaultSlides[1].title,description:defaultSlides[1].description,desktopMediaType:\"image\",mobileMediaType:\"image\"},{title:defaultSlides[2].title,description:defaultSlides[2].description,desktopMediaType:\"image\",mobileMediaType:\"image\"}],control:{type:ControlType.Object,controls:{title:{type:ControlType.String,title:\"Title\",defaultValue:\"Ask\"},description:{type:ControlType.String,title:\"Description\",defaultValue:\"Your AI agent answers in seconds, with real data behind every response.\",displayTextArea:true},desktopMediaType:{type:ControlType.Enum,title:\"Media (Desktop)\",options:[\"image\",\"video\"],optionTitles:[\"Image\",\"Video\"],defaultValue:\"image\",displaySegmentedControl:true},image:{type:ControlType.ResponsiveImage,title:\"Image (Desktop)\",hidden(props){return props.desktopMediaType!==\"image\";}},video:{type:ControlType.File,title:\"Video (Desktop)\",allowedFileTypes:[\"mp4\",\"webm\",\"mov\"],hidden(props){return props.desktopMediaType!==\"video\";}},mobileMediaType:{type:ControlType.Enum,title:\"Media (Mobile)\",options:[\"image\",\"video\"],optionTitles:[\"Image\",\"Video\"],defaultValue:\"image\",displaySegmentedControl:true},imageMobile:{type:ControlType.ResponsiveImage,title:\"Image (Mobile)\",hidden(props){return props.mobileMediaType!==\"image\";}},videoMobile:{type:ControlType.File,title:\"Video (Mobile)\",allowedFileTypes:[\"mp4\",\"webm\",\"mov\"],hidden(props){return props.mobileMediaType!==\"video\";}}}}},responsiveMode:{type:ControlType.Boolean,title:\"Mobile\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\"},autoPlay:{type:ControlType.Boolean,title:\"Auto Play\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},itemDuration:{type:ControlType.Number,title:\"Item Duration\",description:\"Segundos que dura cada item antes de avanzar. Igual para todos.\",defaultValue:4,min:1,max:20,step:.5,unit:\"s\"},videoLoopSeconds:{type:ControlType.Number,title:\"Video Loop Gap\",description:\"Pausa (en segundos) entre cada repetici\\xf3n del video, mientras el item est\\xe1 activo.\",defaultValue:4,min:0,max:30,step:.5,unit:\"s\"},initialIndex:{type:ControlType.Number,title:\"Start\",defaultValue:0,min:0,max:2,step:1},activeCardBackgroundColor:{type:ControlType.Color,title:\"Card Active\",defaultValue:\"#FFFFFF\"},inactiveCardBackgroundColor:{type:ControlType.Color,title:\"Card Inactive\",defaultValue:\"#FFFFFF\"},titleColor:{type:ControlType.Color,title:\"Title\",defaultValue:\"#000000\"},descriptionColor:{type:ControlType.Color,title:\"Description\",defaultValue:\"#000000\"},progressTrackColor:{type:ControlType.Color,title:\"Track\",defaultValue:\"#EEEEEE\"},progressFillColor:{type:ControlType.Color,title:\"Progress\",defaultValue:\"#000000\"},titleFont:{type:ControlType.Font,title:\"Title Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"16px\",variant:\"Semibold\",letterSpacing:\"-0.01em\",lineHeight:\"1.1em\"}},descriptionFont:{type:ControlType.Font,title:\"Description Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:\"14px\",variant:\"Medium\",letterSpacing:\"-0.01em\",lineHeight:\"1.35em\"}},cardRadius:{type:ControlType.Number,title:\"Card Radius\",defaultValue:12,min:0,max:32,step:1},mediaRadius:{type:ControlType.Number,title:\"Media Radius\",description:\"Radio de las esquinas del video/imagen. Export\\xe1 el video desde Figma con esquinas rectas (radius 0); el redondeo lo aplica este control.\",defaultValue:12,min:0,max:48,step:1},padding:{type:ControlType.Number,title:\"Padding\",defaultValue:28,min:0,max:80,step:1,unit:\"px\"},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:18,min:0,max:60,step:1,unit:\"px\"},imageAreaHeight:{type:ControlType.Number,title:\"Image H\",defaultValue:440,min:120,max:900,step:1,unit:\"px\"},transition:{type:ControlType.Transition,title:\"Transition\",defaultValue:{type:\"tween\",ease:\"easeOut\",duration:.35}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CarouselModule\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"650\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"900\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CarouselModule_3.map"],"mappings":"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"}