{"version":3,"file":"Examples.Dy8e-xQr.mjs","names":["useState","useRef","useState","useCallback"],"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/X5f45ajrKSPTAmef3Tp3/FCNTKBRLjSfdmtx0Mml9/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}from\"react/jsx-runtime\";import{forwardRef,startTransition,useCallback,useEffect,useRef,useState}from\"react\";// @ts-expect-error Framer runtime URL import\nimport{createStore}from\"https://framer.com/m/framer/store.js@^1.0.0\";// @ts-expect-error Framer runtime URL import\nimport{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\"});function shouldOpenOverlayFromEvent(params){const{hostElement,sourceVideo,eventTarget}=params;const isWrapperHost=Boolean(hostElement&&hostElement!==sourceVideo);if(!isWrapperHost)return true;if(!(eventTarget instanceof Node))return false;return sourceVideo.contains(eventTarget);}function openFullscreenVideoOverlay(params){const{sourceVideo,cleanupRef,onOpen,onClose}=params;if(typeof window===\"undefined\"||typeof document===\"undefined\"){return;}if(cleanupRef.current)return;const sourceUrl=sourceVideo.currentSrc||sourceVideo.src;if(!sourceUrl)return;const startTime=Number.isFinite(sourceVideo.currentTime)?sourceVideo.currentTime:0;const playbackRate=Number.isFinite(sourceVideo.playbackRate)?sourceVideo.playbackRate:1;const overlay=document.createElement(\"div\");overlay.setAttribute(\"role\",\"dialog\");overlay.setAttribute(\"aria-modal\",\"true\");overlay.style.position=\"fixed\";overlay.style.inset=\"0\";overlay.style.background=\"#000000\";overlay.style.zIndex=\"2147483647\";overlay.style.display=\"flex\";overlay.style.alignItems=\"center\";overlay.style.justifyContent=\"center\";overlay.style.padding=\"24px\";overlay.style.boxSizing=\"border-box\";const video=document.createElement(\"video\");video.src=sourceUrl;video.controls=true;video.autoplay=true;video.loop=sourceVideo.loop;video.muted=sourceVideo.muted;video.defaultMuted=sourceVideo.defaultMuted;video.volume=sourceVideo.volume;video.playsInline=true;video.style.width=\"auto\";video.style.height=\"auto\";video.style.maxWidth=\"100%\";video.style.maxHeight=\"100%\";video.style.objectFit=\"contain\";video.style.background=\"#000000\";video.playbackRate=playbackRate;const closeButton=document.createElement(\"button\");closeButton.type=\"button\";closeButton.setAttribute(\"aria-label\",\"Close video overlay\");closeButton.title=\"Close video overlay\";closeButton.style.position=\"fixed\";closeButton.style.top=\"20px\";closeButton.style.right=\"20px\";closeButton.style.width=\"72px\";closeButton.style.height=\"72px\";closeButton.style.borderRadius=\"999px\";closeButton.style.border=\"2px solid #000000\";closeButton.style.background=\"#FFFFFF\";closeButton.style.color=\"#000000\";closeButton.style.cursor=\"pointer\";closeButton.style.display=\"flex\";closeButton.style.alignItems=\"center\";closeButton.style.justifyContent=\"center\";closeButton.style.fontSize=\"42px\";closeButton.style.lineHeight=\"1\";closeButton.style.zIndex=\"2147483647\";closeButton.textContent=\"\\xd7\";overlay.appendChild(video);overlay.appendChild(closeButton);document.body.appendChild(overlay);const previousOverflow=document.body.style.overflow;document.body.style.overflow=\"hidden\";if(onOpen)onOpen();let didClose=false;const onKeyDown=keyboardEvent=>{if(keyboardEvent.key===\"Escape\"){performCleanup();}};const onOverlayClick=mouseEvent=>{if(mouseEvent.target===overlay){performCleanup();}};const onCloseClick=mouseEvent=>{mouseEvent.preventDefault();mouseEvent.stopPropagation();performCleanup();};const performCleanup=()=>{if(didClose)return;didClose=true;document.removeEventListener(\"keydown\",onKeyDown);overlay.removeEventListener(\"click\",onOverlayClick);closeButton.removeEventListener(\"click\",onCloseClick);document.body.style.overflow=previousOverflow;video.pause();video.removeAttribute(\"src\");video.load();overlay.remove();cleanupRef.current=null;if(onClose)onClose();};cleanupRef.current=performCleanup;document.addEventListener(\"keydown\",onKeyDown);overlay.addEventListener(\"click\",onOverlayClick);closeButton.addEventListener(\"click\",onCloseClick);const seekAndPlay=()=>{try{video.currentTime=startTime;}catch(_){}const playPromise=video.play();if(playPromise&&typeof playPromise.catch===\"function\"){playPromise.catch(()=>{});}};if(video.readyState>=1){seekAndPlay();}else{const onLoadedMetadata=()=>{video.removeEventListener(\"loadedmetadata\",onLoadedMetadata);seekAndPlay();};video.addEventListener(\"loadedmetadata\",onLoadedMetadata);}}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 withFullscreenVideoOnClick(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const hostRef=useRef(null);const cleanupRef=useRef(null);const[isFullscreen,setIsFullscreen]=useState(false);const setMergedRef=useCallback(node=>{hostRef.current=node instanceof HTMLElement?node:null;if(typeof ref===\"function\"){ref(node);}else if(ref&&\"current\"in ref){ref.current=node;}},[ref]);const resolveFullscreenTarget=useCallback(triggerElement=>{const isHTMLElement=value=>value instanceof HTMLElement;const fromHost=hostRef.current;if(fromHost){if(fromHost.tagName.toLowerCase()===\"video\")return fromHost;const nestedVideo=fromHost.querySelector(\"video\");if(nestedVideo instanceof HTMLVideoElement)return nestedVideo;return fromHost;}if(isHTMLElement(triggerElement)){if(triggerElement.tagName.toLowerCase()===\"video\")return triggerElement;const nestedVideo=triggerElement.querySelector(\"video\");if(nestedVideo instanceof HTMLVideoElement)return nestedVideo;return triggerElement;}if(typeof document!==\"undefined\"){const anyVideo=document.querySelector(\"video\");if(anyVideo instanceof HTMLVideoElement)return anyVideo;}return null;},[]);useEffect(()=>{return()=>{if(cleanupRef.current)cleanupRef.current();};},[]);const onClick=useCallback(event=>{if(props.onClick)props.onClick(event);if(typeof document===\"undefined\")return;const target=resolveFullscreenTarget(event?.currentTarget);if(!target)return;const sourceVideo=target instanceof HTMLVideoElement?target:target.querySelector(\"video\");if(!(sourceVideo instanceof HTMLVideoElement))return;if(!shouldOpenOverlayFromEvent({hostElement:hostRef.current,sourceVideo,eventTarget:event?.target??null})){return;}if(hostRef.current&&hostRef.current!==sourceVideo){if(typeof event?.preventDefault===\"function\"){event.preventDefault();}if(typeof event?.stopPropagation===\"function\"){event.stopPropagation();}}openFullscreenVideoOverlay({sourceVideo,cleanupRef,onOpen:()=>{startTransition(()=>{setIsFullscreen(true);});},onClose:()=>{startTransition(()=>{setIsFullscreen(false);});}});},[props,resolveFullscreenTarget]);return /*#__PURE__*/_jsx(Component,{ref:setMergedRef,...props,onClick:onClick,controls:isFullscreen?true:props.controls});});}export function withHistoryBack(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const isNavigatingRef=useRef(false);const activateNavigation=useCallback(()=>{if(isNavigatingRef.current)return;isNavigatingRef.current=true;if(typeof window===\"undefined\"||typeof document===\"undefined\"){return;}const hasHistoryEntry=window.history.length>1;if(hasHistoryEntry){window.history.back();return;}const fallbackLink=document.createElement(\"a\");fallbackLink.href=\"/works\";fallbackLink.click();},[]);const handleActivation=useCallback((event,incomingHandler)=>{if(incomingHandler)incomingHandler(event);if(event?.defaultPrevented)return;if(typeof event?.preventDefault===\"function\"){event.preventDefault();}if(typeof event?.stopPropagation===\"function\"){event.stopPropagation();}activateNavigation();},[activateNavigation]);const onClick=useCallback(event=>handleActivation(event,props.onClick),[handleActivation,props]);const onPointerUp=useCallback(event=>handleActivation(event,props.onPointerUp),[handleActivation,props]);const onTap=useCallback(event=>handleActivation(event,props.onTap),[handleActivation,props]);const onKeyDown=useCallback(event=>{if(props.onKeyDown)props.onKeyDown(event);if(event?.defaultPrevented)return;const key=event?.key;const isActivationKey=key===\"Enter\"||key===\" \";if(!isActivationKey)return;if(typeof event?.preventDefault===\"function\"){event.preventDefault();}if(typeof event?.stopPropagation===\"function\"){event.stopPropagation();}activateNavigation();},[activateNavigation,props]);return /*#__PURE__*/_jsx(Component,{ref:ref,...props,onClick:onClick,onPointerUp:onPointerUp,onTap:onTap,onKeyDown:onKeyDown});});}export function withFullscreenVideoOverlayOnClick(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const hostRef=useRef(null);const cleanupRef=useRef(null);const setMergedRef=useCallback(node=>{hostRef.current=node instanceof HTMLElement?node:null;if(typeof ref===\"function\"){ref(node);}else if(ref&&\"current\"in ref){ref.current=node;}},[ref]);const resolveVideoElement=useCallback(triggerElement=>{const fromHost=hostRef.current;if(fromHost){if(fromHost instanceof HTMLVideoElement)return fromHost;const nestedHostVideo=fromHost.querySelector(\"video\");if(nestedHostVideo instanceof HTMLVideoElement){return nestedHostVideo;}}if(triggerElement instanceof HTMLVideoElement){return triggerElement;}if(triggerElement instanceof HTMLElement){const nestedTriggeredVideo=triggerElement.querySelector(\"video\");if(nestedTriggeredVideo instanceof HTMLVideoElement){return nestedTriggeredVideo;}}return null;},[]);useEffect(()=>{return()=>{if(cleanupRef.current){cleanupRef.current();}};},[]);const onClick=useCallback(event=>{if(props.onClick)props.onClick(event);if(event?.defaultPrevented)return;if(typeof window===\"undefined\"||typeof document===\"undefined\"){return;}if(cleanupRef.current)return;const sourceVideo=resolveVideoElement(event?.currentTarget);if(!sourceVideo)return;if(!shouldOpenOverlayFromEvent({hostElement:hostRef.current,sourceVideo,eventTarget:event?.target??null})){return;}if(hostRef.current&&hostRef.current!==sourceVideo){if(typeof event?.preventDefault===\"function\"){event.preventDefault();}if(typeof event?.stopPropagation===\"function\"){event.stopPropagation();}}openFullscreenVideoOverlay({sourceVideo,cleanupRef});},[props,resolveVideoElement]);return /*#__PURE__*/_jsx(Component,{ref:setMergedRef,...props,onClick:onClick});});}\nexport const __FramerMetadata__ = {\"exports\":{\"withFullscreenVideoOverlayOnClick\":{\"type\":\"reactHoc\",\"name\":\"withFullscreenVideoOverlayOnClick\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withFullscreenVideoOnClick\":{\"type\":\"reactHoc\",\"name\":\"withFullscreenVideoOnClick\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRandomColor\":{\"type\":\"reactHoc\",\"name\":\"withRandomColor\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRotate\":{\"type\":\"reactHoc\",\"name\":\"withRotate\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withHistoryBack\":{\"type\":\"reactHoc\",\"name\":\"withHistoryBack\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withHover\":{\"type\":\"reactHoc\",\"name\":\"withHover\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Examples.map"],"mappings":"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"}