{"version":3,"file":"Examples.DEMC_2Rp.mjs","names":["useState","useRef","useState","useCallback","_Fragment"],"sources":["https:/framerusercontent.com/modules/vj7bFUjvEQFgEzNBkdoG/vf3CKm378wlVcBk7IhSU/createStore.js","https:/framer.com/m/framer/store.js@^1.0.0","https:/framerusercontent.com/modules/28rXvpPsrum7FH6cMELS/1jCAazZw1EGHjrG5Nu5D/Utils.js","https:/framer.com/m/framer/utils.js@^0.9.0","https:/framerusercontent.com/modules/b3MNvN4cNAlUDgeDMJM1/dssdZ7cLNcp9MTuozAWw/Examples.js"],"sourcesContent":["import{useState,useEffect}from\"react\";import{Data,useObserveData}from\"framer\";export function createStore(state1){// Use Data so that a Preview reload resets the state\nconst dataStore=Data({state:Object.freeze({...state1})});// Create a set function that updates the state\nconst setDataStore=newState=>{// If the state is an object, make sure we copy it\nif(typeof newState===\"function\"){newState=newState(dataStore.state);}dataStore.state=Object.freeze({...dataStore.state,...newState});};// Store the initial state, copy the object if it's an object\nlet storeState=typeof state1===\"object\"?Object.freeze({...state1}):state1;// Keep a list of all the listeners, in the form of React hook setters\nconst storeSetters=new Set();// Create a set function that updates all the listeners / setters\nconst setStoreState=newState=>{// If the state is an object, make sure we copy it\nif(typeof newState===\"function\"){newState=newState(storeState);}storeState=typeof newState===\"object\"?Object.freeze({...storeState,...newState}):newState;// Update all the listeners / setters with the new value\nstoreSetters.forEach(setter=>setter(storeState));};// Create the actual hook based on everything above\nfunction useStore(){// Create the hook we are going to use as a listener\nconst[state,setState]=useState(storeState);// If we unmount the component using this hook, we need to remove the listener\n// @ts-ignore\nuseEffect(()=>{// But right now, we need to add the listener\nstoreSetters.add(setState);return()=>storeSetters.delete(setState);},[]);// If Data context exists, use Data, otherwise use vanilla React state\nif(useObserveData()===true){useObserveData();return[dataStore.state,setDataStore];}else{// Return the state and a function to update the central store\nreturn[state,setStoreState];}}return useStore;}\nexport const __FramerMetadata__ = {\"exports\":{\"createStore\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./createStore.map","/*\n * createStore (framer/store@1.0.1)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/vj7bFUjvEQFgEzNBkdoG/vf3CKm378wlVcBk7IhSU/createStore.js\"\n","export const centerContent = {\n    display: \"flex\",\n    justifyContent: \"center\",\n    alignItems: \"center\"\n};\nexport const autoSizingText = {\n    width: \"max-content\",\n    wordBreak: \"break-word\",\n    overflowWrap: \"break-word\",\n    overflow: \"hidden\",\n    whiteSpace: \"pre-wrap\",\n    flexShrink: 0\n};\nexport const defaultContainerStyles = {\n    ...centerContent,\n    overflow: \"hidden\"\n};\nexport const containerStyles = defaultContainerStyles;\nexport const randomColor = ()=>\"#\" + Math.floor(Math.random() * 16777215).toString(16)\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"centerContent\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"autoSizingText\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultContainerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomColor\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./Utils.map","/*\n * Utils (framer/utils@0.9.0)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/28rXvpPsrum7FH6cMELS/1jCAazZw1EGHjrG5Nu5D/Utils.js\"\n","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{forwardRef,startTransition,useEffect,useCallback,useRef,useState}from\"react\";import{createStore}from\"https://framer.com/m/framer/store.js@^1.0.0\";import{randomColor}from\"https://framer.com/m/framer/utils.js@^0.9.0\";// Learn more: https://www.framer.com/developers/overrides/\nconst useStore=createStore({background:\"#0099FF\"});export function withRotate(Component){return /*#__PURE__*/forwardRef((props,ref)=>{return /*#__PURE__*/_jsx(Component,{ref:ref,...props,animate:{rotate:90},transition:{duration:2}});});}export function withHover(Component){return /*#__PURE__*/forwardRef((props,ref)=>{return /*#__PURE__*/_jsx(Component,{ref:ref,...props,whileHover:{scale:1.05}});});}export function withRandomColor(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const[store,setStore]=useStore();return /*#__PURE__*/_jsx(Component,{ref:ref,...props,animate:{background:store.background},onClick:()=>{setStore({background:randomColor()});}});});}export function SubmitHomeContactToFormspree(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const[isSubmitting,setIsSubmitting]=useState(false);const isSubmittingRef=useRef(false);const resolveFieldValue=useCallback((formData,keys)=>{for(const key of keys){const value=formData.get(key);if(typeof value===\"string\"&&value.length>0)return value;}return\"\";},[]);const handleSubmit=useCallback(async event=>{event?.preventDefault?.();const form=event?.currentTarget;if(!form||isSubmittingRef.current)return;if(!form.checkValidity()){form.reportValidity();return;}isSubmittingRef.current=true;startTransition(()=>setIsSubmitting(true));try{const sourceData=new FormData(form);const formData=new FormData;formData.append(\"Nombre\",resolveFieldValue(sourceData,[\"Nombre\",\"nombre\",\"name\"]));formData.append(\"Email\",resolveFieldValue(sourceData,[\"Email\",\"email\"]));formData.append(\"Tel\\xe9fono\",resolveFieldValue(sourceData,[\"Tel\\xe9fono\",\"Telefono\",\"tel\\xe9fono\",\"telefono\",\"Tel\",\"tel\",\"phone\"]));formData.append(\"Tipo de proyecto\",resolveFieldValue(sourceData,[\"Tipo de proyecto\",\"tipo de proyecto\",\"tipoProyecto\",\"projectType\"]));formData.append(\"Mensaje\",resolveFieldValue(sourceData,[\"Mensaje\",\"mensaje\",\"message\"]));const response=await fetch(\"https://formspree.io/f/xrpzlwrj\",{method:\"POST\",headers:{Accept:\"application/json\"},body:formData});if(!response.ok){throw new Error(`Formspree request failed with status ${response.status}`);}form.reset();}catch(error){console.error(\"SubmitHomeContactToFormspree: Failed to submit contact form to Formspree.\",error);}finally{isSubmittingRef.current=false;startTransition(()=>setIsSubmitting(false));}},[resolveFieldValue]);return /*#__PURE__*/_jsx(Component,{ref:ref,...props,onSubmit:handleSubmit,\"aria-busy\":isSubmitting});});}export function HomeProjectCarouselControls(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const rootRef=useRef(null);const setRefs=useCallback(node=>{rootRef.current=node;if(typeof ref===\"function\"){ref(node);}else if(ref&&typeof ref===\"object\"&&\"current\"in ref){ref.current=node;}},[ref]);useEffect(()=>{if(typeof document===\"undefined\")return;const root=rootRef.current;if(!root)return;const previousButton=root.querySelector('[aria-label=\"Proyecto anterior\"]');const nextButton=root.querySelector('[aria-label=\"Proyecto siguiente\"]');const scrollContainer=document.getElementById(\"home-project-carousel\");if(!scrollContainer)return;const getScrollAmount=()=>Math.max(1,scrollContainer.clientWidth);const onPreviousClick=event=>{event.preventDefault();scrollContainer.scrollBy({left:-getScrollAmount(),behavior:\"smooth\"});};const onNextClick=event=>{event.preventDefault();scrollContainer.scrollBy({left:getScrollAmount(),behavior:\"smooth\"});};previousButton?.addEventListener(\"click\",onPreviousClick);nextButton?.addEventListener(\"click\",onNextClick);return()=>{previousButton?.removeEventListener(\"click\",onPreviousClick);nextButton?.removeEventListener(\"click\",onNextClick);};},[]);return /*#__PURE__*/_jsx(Component,{ref:setRefs,...props});});}export function HomeFeaturedProjectsPreviousArrowOverride(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const handleClick=useCallback(event=>{props.onClick?.(event);if(event?.defaultPrevented)return;if(typeof document===\"undefined\")return;const scrollContainer=document.getElementById(\"home-featured-projects\");if(!scrollContainer)return;const scrollAmount=Math.max(1,scrollContainer.clientWidth*.85);scrollContainer.scrollBy({left:-scrollAmount,behavior:\"smooth\"});},[props]);return /*#__PURE__*/_jsx(Component,{ref:ref,...props,onClick:handleClick});});}export function HomeFeaturedProjectsNextArrowOverride(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const handleClick=useCallback(event=>{props.onClick?.(event);if(event?.defaultPrevented)return;if(typeof document===\"undefined\")return;const scrollContainer=document.getElementById(\"home-featured-projects\");if(!scrollContainer)return;const scrollAmount=Math.max(1,scrollContainer.clientWidth*.85);scrollContainer.scrollBy({left:scrollAmount,behavior:\"smooth\"});},[props]);return /*#__PURE__*/_jsx(Component,{ref:ref,...props,onClick:handleClick});});}export function ProjectGalleryLightboxOverlay(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const rootRef=useRef(null);const[isOpen,setIsOpen]=useState(false);const[activeIndex,setActiveIndex]=useState(0);const[imageUrls,setImageUrls]=useState([]);const setRefs=useCallback(node=>{rootRef.current=node;if(typeof ref===\"function\"){ref(node);}else if(ref&&typeof ref===\"object\"&&\"current\"in ref){ref.current=node;}},[ref]);const parseBackgroundImageUrl=useCallback(value=>{if(!value||value===\"none\")return\"\";const match=value.match(/url\\((['\"]?)(.*?)\\1\\)/i);return match?.[2]??\"\";},[]);const getImageUrlFromElement=useCallback(element=>{if(!element)return\"\";if(element instanceof HTMLImageElement){return element.currentSrc||element.src||\"\";}const inlineUrl=parseBackgroundImageUrl(element.style?.backgroundImage);if(inlineUrl)return inlineUrl;if(typeof window!==\"undefined\"){const computed=window.getComputedStyle(element);const computedUrl=parseBackgroundImageUrl(computed.backgroundImage);if(computedUrl)return computedUrl;}return\"\";},[parseBackgroundImageUrl]);const collectGalleryUrls=useCallback(()=>{if(typeof document===\"undefined\")return[];const root=rootRef.current;if(!root)return[];const orderedUrls=[];const seen=new Set;const descendants=Array.from(root.querySelectorAll(\"*\"));for(const element of descendants){const src=getImageUrlFromElement(element);if(!src||seen.has(src))continue;seen.add(src);orderedUrls.push(src);}return orderedUrls;},[getImageUrlFromElement]);const closeLightbox=useCallback(()=>{startTransition(()=>{setIsOpen(false);});},[]);const showNext=useCallback(()=>{startTransition(()=>{setActiveIndex(prev=>{if(imageUrls.length===0)return 0;return(prev+1)%imageUrls.length;});});},[imageUrls]);const showPrev=useCallback(()=>{startTransition(()=>{setActiveIndex(prev=>{if(imageUrls.length===0)return 0;return(prev-1+imageUrls.length)%imageUrls.length;});});},[imageUrls]);const onWrappedClickCapture=useCallback(event=>{props.onClickCapture?.(event);if(event?.defaultPrevented)return;if(typeof document===\"undefined\")return;const root=rootRef.current;const target=event?.target;if(!root||!target||!(target instanceof HTMLElement))return;if(!root.contains(target))return;let current=target;let clickedSrc=\"\";while(current&&current!==root){clickedSrc=getImageUrlFromElement(current);if(clickedSrc)break;current=current.parentElement;}if(!clickedSrc)return;const urls=collectGalleryUrls();if(urls.length===0)return;const index=Math.max(0,urls.indexOf(clickedSrc));startTransition(()=>{setImageUrls(urls);setActiveIndex(index);setIsOpen(true);});},[props,getImageUrlFromElement,collectGalleryUrls]);useEffect(()=>{if(!isOpen)return;if(typeof document===\"undefined\")return;const onKeyDown=event=>{if(event.key===\"Escape\")closeLightbox();if(event.key===\"ArrowRight\")showNext();if(event.key===\"ArrowLeft\")showPrev();};const previousOverflow=document.body.style.overflow;document.body.style.overflow=\"hidden\";document.addEventListener(\"keydown\",onKeyDown);return()=>{document.body.style.overflow=previousOverflow;document.removeEventListener(\"keydown\",onKeyDown);};},[isOpen,closeLightbox,showNext,showPrev]);const activeImage=imageUrls[activeIndex]||\"\";return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(Component,{ref:setRefs,...props,onClickCapture:onWrappedClickCapture}),isOpen&&activeImage?/*#__PURE__*/_jsx(\"div\",{role:\"dialog\",\"aria-modal\":\"true\",\"aria-label\":\"Project gallery lightbox\",onClick:closeLightbox,style:{position:\"fixed\",inset:0,zIndex:2147483e3,background:\"rgba(8, 8, 10, 0.88)\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",padding:16},children:/*#__PURE__*/_jsxs(\"div\",{onClick:event=>event.stopPropagation(),style:{position:\"relative\",width:\"100%\",maxWidth:1440,maxHeight:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:[/*#__PURE__*/_jsx(\"img\",{src:activeImage,alt:\"\",style:{display:\"block\",maxWidth:\"100%\",maxHeight:\"calc(100vh - 32px)\",width:\"auto\",height:\"auto\",objectFit:\"contain\"}}),/*#__PURE__*/_jsx(\"button\",{\"aria-label\":\"Close lightbox\",onClick:closeLightbox,style:{position:\"absolute\",top:8,right:8,width:44,height:44,border:\"none\",borderRadius:999,background:\"rgba(0, 0, 0, 0.58)\",color:\"#FFFFFF\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",fontSize:28,lineHeight:1,cursor:\"pointer\"},children:\"\\xd7\"}),imageUrls.length>1&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"button\",{\"aria-label\":\"Previous image\",onClick:showPrev,style:{position:\"absolute\",left:8,top:\"50%\",transform:\"translateY(-50%)\",width:48,height:48,border:\"none\",borderRadius:999,background:\"rgba(0, 0, 0, 0.58)\",color:\"#FFFFFF\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",fontSize:30,lineHeight:1,cursor:\"pointer\"},children:\"‹\"}),/*#__PURE__*/_jsx(\"button\",{\"aria-label\":\"Next image\",onClick:showNext,style:{position:\"absolute\",right:8,top:\"50%\",transform:\"translateY(-50%)\",width:48,height:48,border:\"none\",borderRadius:999,background:\"rgba(0, 0, 0, 0.58)\",color:\"#FFFFFF\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",fontSize:30,lineHeight:1,cursor:\"pointer\"},children:\"›\"})]})]})}):null]});});}\nexport const __FramerMetadata__ = {\"exports\":{\"HomeFeaturedProjectsPreviousArrowOverride\":{\"type\":\"reactHoc\",\"name\":\"HomeFeaturedProjectsPreviousArrowOverride\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ProjectGalleryLightboxOverlay\":{\"type\":\"reactHoc\",\"name\":\"ProjectGalleryLightboxOverlay\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SubmitHomeContactToFormspree\":{\"type\":\"reactHoc\",\"name\":\"SubmitHomeContactToFormspree\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HomeProjectCarouselControls\":{\"type\":\"reactHoc\",\"name\":\"HomeProjectCarouselControls\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withHover\":{\"type\":\"reactHoc\",\"name\":\"withHover\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HomeFeaturedProjectsNextArrowOverride\":{\"type\":\"reactHoc\",\"name\":\"HomeFeaturedProjectsNextArrowOverride\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRotate\":{\"type\":\"reactHoc\",\"name\":\"withRotate\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRandomColor\":{\"type\":\"reactHoc\",\"name\":\"withRandomColor\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Examples.map"],"mappings":"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"}