{"version":3,"file":"Examples.D0JDAIPq.mjs","names":["useState","useRef","useCallback","useState","_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/veTnHxW7PzpxuZ5JBszn/Z2zIBHcq66ySm67mSBHj/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,useCallback,useEffect,useRef,useState}from\"react\";// @ts-ignore\nimport{createPortal}from\"react-dom\";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\"});const useCopyToastStore=createStore({visible:false,hostId:\"\",cycle:0});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 HoverPanCarousel(Component){return /*#__PURE__*/forwardRef((props,forwardedRef)=>{const hostRef=useRef(null);const animationFrameRef=useRef(null);const isHoveredRef=useRef(false);const panDistanceRef=useRef(0);const currentXRef=useRef(0);const originalTransformRef=useRef(\"\");const phaseStartRef=useRef(null);const isReturningRef=useRef(false);const returnStartXRef=useRef(0);const returnStartTimeRef=useRef(null);const setRefs=useCallback(node=>{hostRef.current=node;if(typeof forwardedRef===\"function\"){forwardedRef(node);}else if(forwardedRef&&\"current\"in forwardedRef){forwardedRef.current=node;}},[forwardedRef]);const measurePanDistance=useCallback(()=>{if(typeof window===\"undefined\")return;const element=hostRef.current;if(!element)return;const parent=element.parentElement;if(!parent)return;const fullWidth=element.getBoundingClientRect().width;const clipWidth=parent.getBoundingClientRect().width;panDistanceRef.current=Math.max(0,fullWidth-clipWidth);},[]);useEffect(()=>{if(typeof window===\"undefined\")return;const element=hostRef.current;const parent=element?.parentElement;if(!element||!parent)return;originalTransformRef.current=element.style.transform&&element.style.transform!==\"none\"?element.style.transform:\"\";const applyTransform=x=>{const base=originalTransformRef.current?`${originalTransformRef.current} `:\"\";element.style.transform=`${base}translateX(${x}px)`;};const stopAnimationFrame=()=>{if(animationFrameRef.current!==null){window.cancelAnimationFrame(animationFrameRef.current);animationFrameRef.current=null;}};const animate=time=>{const distance=panDistanceRef.current;if(distance<=0){currentXRef.current=0;applyTransform(0);animationFrameRef.current=window.requestAnimationFrame(animate);return;}if(isHoveredRef.current){if(phaseStartRef.current===null||isReturningRef.current){phaseStartRef.current=time;isReturningRef.current=false;}const cycleMs=12e3;const progress=(time-phaseStartRef.current)%cycleMs/cycleMs;const pingPong=progress<.5?progress*2:(1-progress)*2;const nextX=-distance*pingPong;currentXRef.current=nextX;applyTransform(nextX);}else{if(!isReturningRef.current){isReturningRef.current=true;returnStartXRef.current=currentXRef.current;returnStartTimeRef.current=time;}const returnDuration=700;const start=returnStartTimeRef.current??time;const t=Math.min(1,(time-start)/returnDuration);const eased=1-Math.pow(1-t,3);const nextX=returnStartXRef.current*(1-eased);currentXRef.current=nextX;applyTransform(nextX);if(t>=1){currentXRef.current=0;returnStartXRef.current=0;returnStartTimeRef.current=null;phaseStartRef.current=null;}}animationFrameRef.current=window.requestAnimationFrame(animate);};const onPointerEnter=()=>{measurePanDistance();isHoveredRef.current=true;isReturningRef.current=false;returnStartTimeRef.current=null;};const onPointerLeave=()=>{isHoveredRef.current=false;};measurePanDistance();animationFrameRef.current=window.requestAnimationFrame(animate);parent.addEventListener(\"pointerenter\",onPointerEnter);parent.addEventListener(\"pointerleave\",onPointerLeave);parent.addEventListener(\"mouseenter\",onPointerEnter);parent.addEventListener(\"mouseleave\",onPointerLeave);window.addEventListener(\"resize\",measurePanDistance);return()=>{parent.removeEventListener(\"pointerenter\",onPointerEnter);parent.removeEventListener(\"pointerleave\",onPointerLeave);parent.removeEventListener(\"mouseenter\",onPointerEnter);parent.removeEventListener(\"mouseleave\",onPointerLeave);window.removeEventListener(\"resize\",measurePanDistance);stopAnimationFrame();element.style.transform=originalTransformRef.current||\"\";};},[measurePanDistance]);return /*#__PURE__*/_jsx(Component,{ref:setRefs,...props,style:{...props.style,willChange:\"transform\"}});});}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 withIframeLoadFade(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const hostRef=useRef(null);const fallbackTimerRef=useRef(null);const settleTimerRef=useRef(null);const hasCompletedRef=useRef(false);const[hostElement,setHostElement]=useState(null);const[isLoading,setIsLoading]=useState(true);const[spinnerPosition,setSpinnerPosition]=useState({left:-1e4,top:-1e4});const clearSettleTimer=useCallback(()=>{if(settleTimerRef.current!==null&&typeof window!==\"undefined\"){window.clearTimeout(settleTimerRef.current);settleTimerRef.current=null;}},[]);const clearFallbackTimer=useCallback(()=>{if(fallbackTimerRef.current!==null&&typeof window!==\"undefined\"){window.clearTimeout(fallbackTimerRef.current);fallbackTimerRef.current=null;}},[]);const finishLoading=useCallback(()=>{if(hasCompletedRef.current)return;hasCompletedRef.current=true;clearSettleTimer();clearFallbackTimer();startTransition(()=>setIsLoading(false));},[clearFallbackTimer,clearSettleTimer]);useEffect(()=>{if(typeof window===\"undefined\")return;const host=hostElement;const scheduleSettledReveal=()=>{clearSettleTimer();settleTimerRef.current=window.setTimeout(()=>{finishLoading();},620);};const iframe=host?.querySelector(\"iframe\")??null;const onLoad=()=>scheduleSettledReveal();if(iframe){iframe.addEventListener(\"load\",onLoad);}fallbackTimerRef.current=window.setTimeout(finishLoading,3e3);return()=>{if(iframe){iframe.removeEventListener(\"load\",onLoad);}clearSettleTimer();clearFallbackTimer();};},[clearFallbackTimer,clearSettleTimer,finishLoading,hostElement]);useEffect(()=>{if(typeof window===\"undefined\")return;if(!isLoading||!hostElement)return;const updateSpinnerPosition=()=>{const rect=hostElement.getBoundingClientRect();startTransition(()=>{setSpinnerPosition({left:rect.left+rect.width/2,top:rect.top+rect.height/2});});};updateSpinnerPosition();window.addEventListener(\"resize\",updateSpinnerPosition);window.addEventListener(\"scroll\",updateSpinnerPosition,true);return()=>{window.removeEventListener(\"resize\",updateSpinnerPosition);window.removeEventListener(\"scroll\",updateSpinnerPosition,true);};},[hostElement,isLoading]);const setRefs=useCallback(node=>{hostRef.current=node;startTransition(()=>setHostElement(node));if(typeof ref===\"function\"){ref(node);}else if(ref&&\"current\"in ref){ref.current=node;}},[ref]);return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(Component,{ref:setRefs,...props,style:{...props.style,opacity:1}}),isLoading&&hostElement&&typeof document!==\"undefined\"?/*#__PURE__*/createPortal(/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",style:{position:\"fixed\",left:spinnerPosition.left,top:spinnerPosition.top,transform:\"translate(-50%, -50%)\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",pointerEvents:\"none\",zIndex:10},children:/*#__PURE__*/_jsx(\"div\",{style:{width:28,height:28,borderRadius:\"50%\",background:\"rgba(0, 0, 0, 0.45)\",border:\"2.5px solid rgba(255, 255, 255, 0.3)\",borderTopColor:\"#FFFFFF\",boxShadow:\"0 8px 20px rgba(0, 0, 0, 0.35)\",animation:\"withIframeLoadFadeSpin 0.8s linear infinite\"}})}),document.body):null,isLoading?/*#__PURE__*/_jsx(\"style\",{children:`@keyframes withIframeLoadFadeSpin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }`}):null]});});}export function CopyTienEmail(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const[isCopied,setIsCopied]=useState(false);const[toastStore,setToastStore]=useCopyToastStore();const instanceIdRef=useRef(`copy-tien-email-${Math.random().toString(36).slice(2)}`);const timerRef=useRef(null);const toastTimerRef=useRef(null);const toastExitTimerRef=useRef(null);const toastRafRef=useRef(null);const portalOwnerRef=useRef(false);const portalNodeRef=useRef(null);const[isToastMounted,setIsToastMounted]=useState(false);const[portalNode,setPortalNode]=useState(null);const[toastPhase,setToastPhase]=useState(\"hidden\");const clearResetTimer=useCallback(()=>{if(timerRef.current!==null&&typeof window!==\"undefined\"){window.clearTimeout(timerRef.current);timerRef.current=null;}},[]);const clearToastTimer=useCallback(()=>{if(toastTimerRef.current!==null&&typeof window!==\"undefined\"){window.clearTimeout(toastTimerRef.current);toastTimerRef.current=null;}},[]);const clearToastExitTimer=useCallback(()=>{if(toastExitTimerRef.current!==null&&typeof window!==\"undefined\"){window.clearTimeout(toastExitTimerRef.current);toastExitTimerRef.current=null;}},[]);const clearToastRaf=useCallback(()=>{if(toastRafRef.current!==null&&typeof window!==\"undefined\"){window.cancelAnimationFrame(toastRafRef.current);toastRafRef.current=null;}},[]);useEffect(()=>{if(typeof document===\"undefined\")return;const existingNode=document.getElementById(\"copy-tien-email-toast-root\");if(existingNode){portalNodeRef.current=existingNode;startTransition(()=>setPortalNode(existingNode));return;}const createdNode=document.createElement(\"div\");createdNode.id=\"copy-tien-email-toast-root\";createdNode.style.position=\"fixed\";createdNode.style.left=\"0\";createdNode.style.top=\"0\";createdNode.style.width=\"0\";createdNode.style.height=\"0\";createdNode.style.pointerEvents=\"none\";createdNode.style.zIndex=\"2147483647\";document.body.appendChild(createdNode);portalOwnerRef.current=true;portalNodeRef.current=createdNode;startTransition(()=>setPortalNode(createdNode));return()=>{if(portalOwnerRef.current&&portalNodeRef.current?.parentNode){portalNodeRef.current.parentNode.removeChild(portalNodeRef.current);}portalOwnerRef.current=false;portalNodeRef.current=null;clearResetTimer();clearToastTimer();clearToastExitTimer();clearToastRaf();};},[clearResetTimer,clearToastTimer,clearToastExitTimer,clearToastRaf]);useEffect(()=>{const isHost=toastStore.hostId===instanceIdRef.current;if(!isHost){clearToastTimer();clearToastExitTimer();clearToastRaf();startTransition(()=>{setIsToastMounted(false);setToastPhase(\"hidden\");});return;}if(toastStore.visible){clearToastExitTimer();clearToastRaf();startTransition(()=>{setIsToastMounted(true);setToastPhase(\"entering\");});if(typeof window!==\"undefined\"){toastRafRef.current=window.requestAnimationFrame(()=>{toastRafRef.current=window.requestAnimationFrame(()=>{startTransition(()=>setToastPhase(\"entered\"));toastRafRef.current=null;});});}}else if(isToastMounted){clearToastRaf();clearToastExitTimer();startTransition(()=>setToastPhase(\"exiting\"));if(typeof window!==\"undefined\"){toastExitTimerRef.current=window.setTimeout(()=>{startTransition(()=>{setIsToastMounted(false);setToastPhase(\"hidden\");});toastExitTimerRef.current=null;},220);}}},[clearToastExitTimer,clearToastRaf,clearToastTimer,isToastMounted,toastStore.hostId,toastStore.visible]);useEffect(()=>{const isHost=toastStore.hostId===instanceIdRef.current;if(!isHost||!toastStore.visible)return;clearToastTimer();if(typeof window!==\"undefined\"){toastTimerRef.current=window.setTimeout(()=>{startTransition(()=>{setToastStore({visible:false});});toastTimerRef.current=null;},1380);}return()=>{clearToastTimer();};},[clearToastTimer,setToastStore,toastStore.cycle,toastStore.hostId,toastStore.visible]);const copyEmail=useCallback(async()=>{const email=\"tienc25@gmail.com\";if(typeof navigator!==\"undefined\"&&navigator.clipboard?.writeText){await navigator.clipboard.writeText(email);return;}if(typeof document===\"undefined\")return;const textarea=document.createElement(\"textarea\");textarea.value=email;textarea.setAttribute(\"readonly\",\"true\");textarea.style.position=\"fixed\";textarea.style.opacity=\"0\";textarea.style.pointerEvents=\"none\";textarea.style.top=\"-9999px\";textarea.style.left=\"-9999px\";document.body.appendChild(textarea);textarea.focus();textarea.select();document.execCommand(\"copy\");document.body.removeChild(textarea);},[]);const showConfirmation=useCallback(()=>{clearResetTimer();startTransition(()=>setIsCopied(true));startTransition(()=>{setToastStore({visible:true,hostId:instanceIdRef.current,cycle:toastStore.cycle+1});});if(typeof window!==\"undefined\"){timerRef.current=window.setTimeout(()=>{startTransition(()=>setIsCopied(false));timerRef.current=null;},1600);}},[clearResetTimer,setToastStore,toastStore.cycle]);const activateCopy=useCallback(async event=>{if(event?.preventDefault)event.preventDefault();if(event?.stopPropagation)event.stopPropagation();const nativeEvent=event?.nativeEvent??event;if(nativeEvent?.preventDefault)nativeEvent.preventDefault();if(nativeEvent?.stopPropagation)nativeEvent.stopPropagation();try{await copyEmail();showConfirmation();}catch(error){showConfirmation();}},[copyEmail,showConfirmation]);const onClick=useCallback(async event=>{await activateCopy(event);props.onClick?.(event);},[activateCopy,props]);const onTap=useCallback(async(event,info)=>{await activateCopy(event);props.onTap?.(event,info);},[activateCopy,props]);const onKeyDown=useCallback(async event=>{const key=event?.key;if(key===\"Enter\"||key===\" \"){event.preventDefault?.();await activateCopy(event);}props.onKeyDown?.(event);},[activateCopy,props]);const originalAria=props[\"aria-label\"]??props.ariaLabel;const baseLabel=typeof originalAria===\"string\"&&originalAria.trim().length>0?originalAria:\"Copy email address\";const accessibilityLabel=isCopied?\"Email copied: tienc25@gmail.com\":baseLabel;const title=isCopied?\"Copied\":props.title??\"Copy email address\";return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(Component,{ref:ref,...props,onClick:onClick,onTap:onTap,onKeyDown:onKeyDown,role:props.role??\"button\",tabIndex:props.tabIndex??0,\"aria-label\":accessibilityLabel,title:title}),/*#__PURE__*/_jsx(\"span\",{\"aria-live\":\"polite\",style:{position:\"absolute\",width:1,height:1,padding:0,margin:-1,overflow:\"hidden\",clip:\"rect(0, 0, 0, 0)\",whiteSpace:\"nowrap\",border:0},children:isCopied?\"Email copied to clipboard.\":\"\"}),isToastMounted&&toastStore.hostId===instanceIdRef.current&&portalNode&&typeof document!==\"undefined\"?/*#__PURE__*/createPortal(/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",style:{position:\"fixed\",left:\"50%\",bottom:24,transform:toastPhase===\"entered\"?\"translateX(-50%) translateY(0) scale(1)\":toastPhase===\"exiting\"?\"translateX(-50%) translateY(6px) scale(0.985)\":\"translateX(-50%) translateY(10px) scale(0.96)\",background:\"rgba(24, 24, 27, 0.95)\",color:\"#FFFFFF\",fontSize:14,lineHeight:1.2,padding:\"10px 14px\",borderRadius:10,boxShadow:\"0 8px 24px rgba(0, 0, 0, 0.24)\",pointerEvents:\"none\",zIndex:2147483647,opacity:toastPhase===\"entered\"?1:0,transition:\"opacity 220ms ease, transform 280ms cubic-bezier(0.22, 1, 0.36, 1)\",willChange:\"opacity, transform\"},children:\"Email copied to clipboard\"}),portalNode):null]});});}\nexport const __FramerMetadata__ = {\"exports\":{\"HoverPanCarousel\":{\"type\":\"reactHoc\",\"name\":\"HoverPanCarousel\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withIframeLoadFade\":{\"type\":\"reactHoc\",\"name\":\"withIframeLoadFade\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"CopyTienEmail\":{\"type\":\"reactHoc\",\"name\":\"CopyTienEmail\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRotate\":{\"type\":\"reactHoc\",\"name\":\"withRotate\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRandomColor\":{\"type\":\"reactHoc\",\"name\":\"withRandomColor\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withHover\":{\"type\":\"reactHoc\",\"name\":\"withHover\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Examples.map"],"mappings":"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"}