{"version":3,"file":"Examples.CP6YJkMt.mjs","names":["useState","useState","useRef","useCallback","useMemo"],"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/NCMrw5X1ZeJzQGbUaoEK/ZU1cPMePKxjG4U7WaEq6/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,useMemo,useCallback,useEffect,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 withSlideUnderlineHover(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const existingStyle=props.style??{};const existingWhileHover=props.whileHover&&typeof props.whileHover===\"object\"?props.whileHover:{};const existingTransition=props.transition&&typeof props.transition===\"object\"?props.transition:{};return /*#__PURE__*/_jsx(Component,{ref:ref,...props,style:{...existingStyle,backgroundImage:\"linear-gradient(currentColor, currentColor)\",backgroundRepeat:\"no-repeat\",backgroundPosition:\"0 calc(100% + 1px)\",backgroundSize:\"0% 1px\"},whileHover:{...existingWhileHover,backgroundSize:\"100% 1px\"},transition:{...existingTransition,backgroundSize:{duration:.2,ease:\"easeOut\"}}});});}const paletteGhostHoverClassName=\"framer-palette-ghost-hover-text\";const paletteGhostHoverStyleId=\"framer-palette-ghost-hover-text-style\";const blancTextRevealStyleId=\"framer-blanc-text-reveal-style\";const blancPageLoaderStyleId=\"framer-blanc-page-loader-style\";const blancCursorStyleId=\"framer-blanc-image-cursor-style\";const blancCursorElementId=\"framer-blanc-image-cursor\";let blancCursorElement=null;let blancCursorLabel=null;let blancCursorRafId=0;let blancCursorActiveCount=0;let blancCursorTargetX=0;let blancCursorTargetY=0;let blancCursorCurrentX=0;let blancCursorCurrentY=0;function ensureBlancImageCursorStyle(){if(typeof document===\"undefined\")return;if(document.getElementById(blancCursorStyleId))return;const style=document.createElement(\"style\");style.id=blancCursorStyleId;style.textContent=`\n#${blancCursorElementId} {\n    position: fixed;\n    left: 0;\n    top: 0;\n    width: 40px;\n    height: 40px;\n    border-radius: 999px;\n    background: #A4855D;\n    color: #1A1A1A;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    pointer-events: none;\n    z-index: 2147483647;\n    transform: translate3d(-20px, -20px, 0) scale(0.92);\n    opacity: 0;\n    transition: opacity 0.18s ease-out, transform 0.22s ease-out;\n    will-change: transform, opacity;\n}\n`;document.head.appendChild(style);}function ensureBlancImageCursorElement(){if(typeof document===\"undefined\")return null;ensureBlancImageCursorStyle();if(blancCursorElement&&document.body.contains(blancCursorElement)){return blancCursorElement;}const existing=document.getElementById(blancCursorElementId);if(existing){blancCursorElement=existing;blancCursorLabel=existing.querySelector(\"span\");return blancCursorElement;}const element=document.createElement(\"div\");element.id=blancCursorElementId;element.setAttribute(\"aria-hidden\",\"true\");element.setAttribute(\"role\",\"presentation\");const label=document.createElement(\"span\");label.textContent=\"VIEW\";label.style.fontSize=\"8px\";label.style.letterSpacing=\"0.08em\";label.style.lineHeight=\"1\";label.style.fontWeight=\"500\";label.style.userSelect=\"none\";element.appendChild(label);document.body.appendChild(element);blancCursorElement=element;blancCursorLabel=label;return blancCursorElement;}function runBlancCursorLoop(){if(typeof window===\"undefined\")return;if(!blancCursorElement)return;const lerp=.18;blancCursorCurrentX+=(blancCursorTargetX-blancCursorCurrentX)*lerp;blancCursorCurrentY+=(blancCursorTargetY-blancCursorCurrentY)*lerp;blancCursorElement.style.transform=`translate3d(${blancCursorCurrentX-20}px, ${blancCursorCurrentY-20}px, 0) scale(1)`;blancCursorRafId=window.requestAnimationFrame(runBlancCursorLoop);}function startBlancCursorLoop(){if(typeof window===\"undefined\")return;if(blancCursorRafId!==0)return;blancCursorRafId=window.requestAnimationFrame(runBlancCursorLoop);}function stopBlancCursorLoop(){if(typeof window===\"undefined\")return;if(blancCursorRafId===0)return;window.cancelAnimationFrame(blancCursorRafId);blancCursorRafId=0;}function ensureBlancPageLoaderStyle(){if(typeof document===\"undefined\")return;if(document.getElementById(blancPageLoaderStyleId))return;const style=document.createElement(\"style\");style.id=blancPageLoaderStyleId;style.textContent=`\n@keyframes framer-blanc-page-loader-spin {\n    from { transform: rotate(0deg); }\n    to { transform: rotate(360deg); }\n}\n`;document.head.appendChild(style);}function ensurePaletteGhostHoverTextStyle(){if(typeof document===\"undefined\")return;if(document.getElementById(paletteGhostHoverStyleId))return;const style=document.createElement(\"style\");style.id=paletteGhostHoverStyleId;style.textContent=`\n.${paletteGhostHoverClassName}:hover :where(\n    .framer-text,\n    .framer-text *,\n    p,\n    span,\n    strong,\n    em,\n    b,\n    i,\n    u,\n    small,\n    mark,\n    blockquote,\n    li,\n    a,\n    h1,\n    h2,\n    h3,\n    h4,\n    h5,\n    h6,\n    label\n) {\n    color: #FFFFFF !important;\n    -webkit-text-fill-color: #FFFFFF !important;\n}\n`;document.head.appendChild(style);}function ensureBlancTextRevealStyle(){if(typeof document===\"undefined\")return;if(document.getElementById(blancTextRevealStyleId))return;const style=document.createElement(\"style\");style.id=blancTextRevealStyleId;style.textContent=`\n.framer-blanc-reveal-overlay {\n    position: absolute;\n    inset: 0;\n    pointer-events: none;\n    white-space: pre-wrap;\n    color: currentColor;\n}\n\n.framer-blanc-reveal-animating :where(\n    .framer-text,\n    .framer-text *,\n    p,\n    span,\n    strong,\n    em,\n    b,\n    i,\n    u,\n    small,\n    mark,\n    blockquote,\n    li,\n    a,\n    h1,\n    h2,\n    h3,\n    h4,\n    h5,\n    h6,\n    label\n) {\n    color: transparent !important;\n    -webkit-text-fill-color: transparent !important;\n}\n`;document.head.appendChild(style);}function observeInViewOnce(node,onEnter){let animationCleanup;if(typeof window===\"undefined\"||typeof IntersectionObserver===\"undefined\"){animationCleanup=onEnter();return()=>{if(typeof animationCleanup===\"function\"){animationCleanup();}};}let hasTriggered=false;const observer=new IntersectionObserver(entries=>{for(const entry of entries){if(!hasTriggered&&entry.isIntersecting){hasTriggered=true;animationCleanup=onEnter();observer.disconnect();break;}}},{threshold:.25});observer.observe(node);return()=>{observer.disconnect();if(typeof animationCleanup===\"function\"){animationCleanup();}};}function getReducedMotionPreference(){if(typeof window===\"undefined\"||typeof window.matchMedia!==\"function\"){return true;}return window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;}/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export function BlancPageLoader(props){const{backgroundColor,accentColor,fadeDelay}=props;const[isFading,setIsFading]=useState(false);const[isHidden,setIsHidden]=useState(false);const loadTimeoutRef=useRef(null);const hideTimeoutRef=useRef(null);const triggerFade=useCallback(()=>{startTransition(()=>setIsFading(true));hideTimeoutRef.current=window.setTimeout(()=>{startTransition(()=>setIsHidden(true));},450);},[]);useEffect(()=>{if(typeof window===\"undefined\"||typeof document===\"undefined\")return;ensureBlancPageLoaderStyle();const onReady=()=>{loadTimeoutRef.current=window.setTimeout(triggerFade,Math.max(0,fadeDelay));};if(document.readyState===\"complete\"){onReady();}else{window.addEventListener(\"load\",onReady,{once:true});return()=>{window.removeEventListener(\"load\",onReady);if(loadTimeoutRef.current!==null){window.clearTimeout(loadTimeoutRef.current);}if(hideTimeoutRef.current!==null){window.clearTimeout(hideTimeoutRef.current);}};}return()=>{if(loadTimeoutRef.current!==null){window.clearTimeout(loadTimeoutRef.current);}if(hideTimeoutRef.current!==null){window.clearTimeout(hideTimeoutRef.current);}};},[fadeDelay,triggerFade]);const rootStyle=useMemo(()=>({position:\"fixed\",inset:0,zIndex:9999,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",backgroundColor,opacity:isFading?0:1,transition:\"opacity 0.45s ease\",pointerEvents:isHidden?\"none\":\"auto\"}),[backgroundColor,isFading,isHidden]);if(isHidden)return null;return /*#__PURE__*/_jsx(\"div\",{style:rootStyle,\"aria-hidden\":false,children:/*#__PURE__*/_jsx(\"svg\",{width:\"64\",height:\"64\",viewBox:\"0 0 64 64\",role:\"img\",\"aria-label\":\"Loading\",style:{animation:\"framer-blanc-page-loader-spin 2s linear infinite\"},children:/*#__PURE__*/_jsx(\"circle\",{cx:\"32\",cy:\"32\",r:\"22\",fill:\"none\",stroke:accentColor,strokeWidth:\"2\",strokeLinecap:\"round\",strokeDasharray:\"104 34\"})})});}export function withPaletteGhostButtonHoverText(Component){return /*#__PURE__*/forwardRef((props,ref)=>{useEffect(()=>{ensurePaletteGhostHoverTextStyle();},[]);const className=props.className?`${props.className} ${paletteGhostHoverClassName}`:paletteGhostHoverClassName;return /*#__PURE__*/_jsx(Component,{ref:ref,...props,className:className});});}export function withBlancScrambleReveal(Component){return /*#__PURE__*/forwardRef((props,forwardedRef)=>{const elementRef=useRef(null);const setRefs=useCallback(node=>{elementRef.current=node;if(typeof forwardedRef===\"function\"){forwardedRef(node);}else if(forwardedRef&&typeof forwardedRef===\"object\"){forwardedRef.current=node;}},[forwardedRef]);useEffect(()=>{ensureBlancTextRevealStyle();const node=elementRef.current;if(!node)return;const finalText=node.textContent??\"\";if(!finalText)return;const runAnimation=()=>{if(getReducedMotionPreference())return;node.classList.add(\"framer-blanc-reveal-root\");node.classList.add(\"framer-blanc-reveal-animating\");const overlay=document.createElement(\"span\");overlay.className=\"framer-blanc-reveal-overlay\";overlay.setAttribute(\"aria-hidden\",\"true\");overlay.textContent=finalText;node.appendChild(overlay);const randomChars=\"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\";const durationMs=800;const tickMs=50;const totalSteps=Math.max(1,Math.round(durationMs/tickMs));let step=0;const intervalId=window.setInterval(()=>{step+=1;const progress=Math.min(1,step/totalSteps);const revealCount=Math.floor(finalText.length*progress);let frameText=\"\";for(let index=0;index<finalText.length;index+=1){const character=finalText[index];if(index<revealCount){frameText+=character;}else if(/\\s/.test(character)||/[.,!?;:()[\\]{}'\"’\"-]/.test(character)){frameText+=character;}else{frameText+=randomChars[Math.floor(Math.random()*randomChars.length)];}}overlay.textContent=frameText;if(progress>=1){window.clearInterval(intervalId);overlay.textContent=finalText;node.classList.remove(\"framer-blanc-reveal-animating\");overlay.remove();}},tickMs);return()=>{window.clearInterval(intervalId);node.classList.remove(\"framer-blanc-reveal-animating\");overlay.remove();};};const cleanupObserver=observeInViewOnce(node,runAnimation);return()=>{cleanupObserver();};},[]);return /*#__PURE__*/_jsx(Component,{ref:setRefs,...props});});}export function withBlancTypewriterReveal(Component){return /*#__PURE__*/forwardRef((props,forwardedRef)=>{const elementRef=useRef(null);const setRefs=useCallback(node=>{elementRef.current=node;if(typeof forwardedRef===\"function\"){forwardedRef(node);}else if(forwardedRef&&typeof forwardedRef===\"object\"){forwardedRef.current=node;}},[forwardedRef]);useEffect(()=>{ensureBlancTextRevealStyle();const node=elementRef.current;if(!node)return;const finalText=node.textContent??\"\";if(!finalText)return;const runAnimation=()=>{if(getReducedMotionPreference())return;node.classList.add(\"framer-blanc-reveal-root\");node.classList.add(\"framer-blanc-reveal-animating\");const overlay=document.createElement(\"span\");overlay.className=\"framer-blanc-reveal-overlay\";overlay.setAttribute(\"aria-hidden\",\"true\");overlay.textContent=\"\";node.appendChild(overlay);const speedMs=30;let index=0;const timeoutIds=[];const typeNext=()=>{index+=1;overlay.textContent=finalText.slice(0,index);if(index<finalText.length){timeoutIds.push(window.setTimeout(typeNext,speedMs));}else{node.classList.remove(\"framer-blanc-reveal-animating\");overlay.remove();}};timeoutIds.push(window.setTimeout(typeNext,speedMs));return()=>{for(const id of timeoutIds){window.clearTimeout(id);}node.classList.remove(\"framer-blanc-reveal-animating\");overlay.remove();};};const cleanupObserver=observeInViewOnce(node,runAnimation);return()=>{cleanupObserver();};},[]);return /*#__PURE__*/_jsx(Component,{ref:setRefs,...props});});}export function withBlancNavSpotlightHover(Component){return /*#__PURE__*/forwardRef((props,forwardedRef)=>{const elementRef=useRef(null);const activeChildRef=useRef(null);const setRefs=useCallback(node=>{elementRef.current=node;if(typeof forwardedRef===\"function\"){forwardedRef(node);}else if(forwardedRef&&typeof forwardedRef===\"object\"){forwardedRef.current=node;}},[forwardedRef]);useEffect(()=>{if(typeof window===\"undefined\")return;const root=elementRef.current;if(!root)return;const getDirectChildFromTarget=target=>{let current=target;while(current&&current.parentElement!==root){current=current.parentElement;}if(!current||current.parentElement!==root)return null;const hasTextLikeContent=current.matches(\"a,[role='link'],.framer-text\")||current.querySelector(\"a,[role='link'],.framer-text\")!==null;return hasTextLikeContent?current:null;};const applyState=hovered=>{const children=Array.from(root.children);for(const child of children){const inlineLetterSpacing=child.style.letterSpacing;if(!child.dataset.blancOriginalLetterSpacing){const computedLetterSpacing=window.getComputedStyle(child).letterSpacing;child.dataset.blancOriginalLetterSpacing=inlineLetterSpacing||computedLetterSpacing||\"0.02em\";child.dataset.blancOriginalTransition=child.style.transition||\"\";}const baseTransition=child.dataset.blancOriginalTransition??\"\";const blendedTransition=baseTransition?`${baseTransition}, letter-spacing 0.3s ease-out, opacity 0.3s ease-out`:\"letter-spacing 0.3s ease-out, opacity 0.3s ease-out\";child.style.transition=blendedTransition;if(!hovered){child.style.opacity=\"1\";child.style.letterSpacing=child.dataset.blancOriginalLetterSpacing||\"0.02em\";}else if(child===hovered){child.style.opacity=\"1\";child.style.letterSpacing=\"0.08em\";}else{child.style.opacity=\"0.5\";child.style.letterSpacing=child.dataset.blancOriginalLetterSpacing||\"0.02em\";}}};const onMouseOver=event=>{const hovered=getDirectChildFromTarget(event.target);if(!hovered)return;activeChildRef.current=hovered;applyState(hovered);};const onMouseLeave=()=>{activeChildRef.current=null;applyState(null);};root.addEventListener(\"mouseover\",onMouseOver);root.addEventListener(\"mouseleave\",onMouseLeave);return()=>{root.removeEventListener(\"mouseover\",onMouseOver);root.removeEventListener(\"mouseleave\",onMouseLeave);applyState(null);};},[]);return /*#__PURE__*/_jsx(Component,{ref:setRefs,...props});});}export function withBlancImageCursorLabel(Component){return /*#__PURE__*/forwardRef((props,forwardedRef)=>{const elementRef=useRef(null);const previousCursorRef=useRef(\"\");const isHoveringRef=useRef(false);const setRefs=useCallback(node=>{elementRef.current=node;if(typeof forwardedRef===\"function\"){forwardedRef(node);}else if(forwardedRef&&typeof forwardedRef===\"object\"){forwardedRef.current=node;}},[forwardedRef]);useEffect(()=>{if(typeof window===\"undefined\"||typeof document===\"undefined\")return;const node=elementRef.current;if(!node)return;const cursorEl=ensureBlancImageCursorElement();if(!cursorEl)return;const showCursor=()=>{const element=ensureBlancImageCursorElement();if(!element)return;blancCursorActiveCount+=1;previousCursorRef.current=node.style.cursor;node.style.cursor=\"none\";element.style.opacity=\"1\";element.style.transform=`translate3d(${blancCursorCurrentX-20}px, ${blancCursorCurrentY-20}px, 0) scale(1)`;isHoveringRef.current=true;startBlancCursorLoop();};const moveCursor=event=>{blancCursorTargetX=event.clientX;blancCursorTargetY=event.clientY;if(!isHoveringRef.current)return;if(blancCursorCurrentX===0&&blancCursorCurrentY===0){blancCursorCurrentX=event.clientX;blancCursorCurrentY=event.clientY;}};const hideCursor=()=>{if(!isHoveringRef.current)return;node.style.cursor=previousCursorRef.current||\"\";isHoveringRef.current=false;blancCursorActiveCount=Math.max(0,blancCursorActiveCount-1);const element=ensureBlancImageCursorElement();if(!element)return;if(blancCursorActiveCount===0){element.style.opacity=\"0\";element.style.transform=`translate3d(${blancCursorCurrentX-20}px, ${blancCursorCurrentY-20}px, 0) scale(0.92)`;stopBlancCursorLoop();}};node.addEventListener(\"mouseenter\",showCursor);node.addEventListener(\"mousemove\",moveCursor);node.addEventListener(\"mouseleave\",hideCursor);return()=>{node.removeEventListener(\"mouseenter\",showCursor);node.removeEventListener(\"mousemove\",moveCursor);node.removeEventListener(\"mouseleave\",hideCursor);hideCursor();};},[]);const className=props.className?`${props.className} framer-blanc-image-cursor-label`:\"framer-blanc-image-cursor-label\";return /*#__PURE__*/_jsx(Component,{ref:setRefs,...props,className:className,\"data-cursor-label\":\"image\"});});}export function withGiftCardButtonStyle(Component){return /*#__PURE__*/forwardRef((props,ref)=>{return /*#__PURE__*/_jsx(Component,{ref:ref,...props,style:{...props.style,backgroundColor:\"#A4855D\",color:\"#FFFAF0\",borderRadius:2},whileHover:{backgroundColor:\"#3A2E1F\"},transition:{duration:.2,ease:\"easeOut\"}});});}export function withHorizontalDragScroll(Component){return /*#__PURE__*/forwardRef((props,forwardedRef)=>{const elementRef=useRef(null);const dragPointerIdRef=useRef(null);const dragStartXRef=useRef(0);const dragStartScrollLeftRef=useRef(0);const draggedRef=useRef(false);const[isDragging,setIsDragging]=useState(false);const setRefs=useCallback(node=>{elementRef.current=node;if(typeof forwardedRef===\"function\"){forwardedRef(node);}else if(forwardedRef&&typeof forwardedRef===\"object\"){forwardedRef.current=node;}},[forwardedRef]);const onWheel=useCallback(event=>{props.onWheel?.(event);if(event.defaultPrevented)return;const node=elementRef.current;if(!node)return;const deltaX=Number(event.deltaX)||0;const deltaY=Number(event.deltaY)||0;const horizontalDelta=deltaX+deltaY;if(horizontalDelta===0)return;const prev=node.scrollLeft;node.scrollLeft+=horizontalDelta;if(node.scrollLeft!==prev){event.preventDefault();}},[props]);const endDrag=useCallback(event=>{const node=elementRef.current;if(event&&node&&dragPointerIdRef.current!==null){if(node.releasePointerCapture){try{node.releasePointerCapture(dragPointerIdRef.current);}catch(_error){// no-op\n}}}dragPointerIdRef.current=null;startTransition(()=>setIsDragging(false));},[]);const onPointerDown=useCallback(event=>{props.onPointerDown?.(event);if(event.defaultPrevented)return;if(event.pointerType!==\"mouse\")return;if(event.button!==0)return;const node=elementRef.current;if(!node)return;dragPointerIdRef.current=event.pointerId;dragStartXRef.current=event.clientX;dragStartScrollLeftRef.current=node.scrollLeft;draggedRef.current=false;if(node.setPointerCapture){try{node.setPointerCapture(event.pointerId);}catch(_error){// no-op\n}}startTransition(()=>setIsDragging(true));},[props]);const onPointerMove=useCallback(event=>{props.onPointerMove?.(event);const pointerId=dragPointerIdRef.current;if(pointerId===null||pointerId!==event.pointerId)return;const node=elementRef.current;if(!node)return;const dx=event.clientX-dragStartXRef.current;if(Math.abs(dx)>3){draggedRef.current=true;}node.scrollLeft=dragStartScrollLeftRef.current-dx;},[props]);const onPointerUp=useCallback(event=>{props.onPointerUp?.(event);endDrag(event);},[endDrag,props]);const onPointerCancel=useCallback(event=>{props.onPointerCancel?.(event);endDrag(event);},[endDrag,props]);const onClickCapture=useCallback(event=>{props.onClickCapture?.(event);if(event.defaultPrevented)return;if(!draggedRef.current)return;event.preventDefault();event.stopPropagation();draggedRef.current=false;},[props]);const mergedStyle={...props.style??{},cursor:isDragging?\"grabbing\":\"grab\",userSelect:isDragging?\"none\":props.style?.userSelect,WebkitUserSelect:isDragging?\"none\":props.style?.WebkitUserSelect};return /*#__PURE__*/_jsx(Component,{ref:setRefs,...props,style:mergedStyle,onWheel:onWheel,onPointerDown:onPointerDown,onPointerMove:onPointerMove,onPointerUp:onPointerUp,onPointerCancel:onPointerCancel,onClickCapture:onClickCapture});});}\nexport const __FramerMetadata__ = {\"exports\":{\"withRotate\":{\"type\":\"reactHoc\",\"name\":\"withRotate\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withBlancImageCursorLabel\":{\"type\":\"reactHoc\",\"name\":\"withBlancImageCursorLabel\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withBlancNavSpotlightHover\":{\"type\":\"reactHoc\",\"name\":\"withBlancNavSpotlightHover\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withPaletteGhostButtonHoverText\":{\"type\":\"reactHoc\",\"name\":\"withPaletteGhostButtonHoverText\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRandomColor\":{\"type\":\"reactHoc\",\"name\":\"withRandomColor\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withHorizontalDragScroll\":{\"type\":\"reactHoc\",\"name\":\"withHorizontalDragScroll\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withHover\":{\"type\":\"reactHoc\",\"name\":\"withHover\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withBlancScrambleReveal\":{\"type\":\"reactHoc\",\"name\":\"withBlancScrambleReveal\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withBlancTypewriterReveal\":{\"type\":\"reactHoc\",\"name\":\"withBlancTypewriterReveal\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withGiftCardButtonStyle\":{\"type\":\"reactHoc\",\"name\":\"withGiftCardButtonStyle\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withSlideUnderlineHover\":{\"type\":\"reactHoc\",\"name\":\"withSlideUnderlineHover\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"BlancPageLoader\":{\"type\":\"reactComponent\",\"name\":\"BlancPageLoader\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"fixed\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Examples.map"],"mappings":"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"}