{"version":3,"file":"Custom_header.DsbRKQbC.mjs","names":["useRef","useCallback","customEvent","useState"],"sources":["https:/framerusercontent.com/modules/eFVxZopXWa5LPw3k2mEO/HTAl6m2ZtaPrsThMmURE/Custom_header.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{useScroll}from\"framer-motion\";import{useIsStaticRenderer}from\"framer\";import{useRef,useEffect,useState,forwardRef,useCallback}from\"react\";// CHANGE THE VALUES HERE IF YOU NEED\nconst HEADER_HEIGHT={DESKTOP:80,MOBILE:65};const INITIAL_THRESHOLD={DESKTOP:250,MOBILE:1};const OPACITY_THRESHOLD=INITIAL_THRESHOLD.DESKTOP;const PASSWORD_GATE_LOCK_KEY=\"__framerPasswordGateLocked\";const PASSWORD_GATE_EVENT=\"framer-password-gate-lock-change\";const readPasswordGateLocked=()=>{if(typeof window===\"undefined\")return false;return Boolean(window[PASSWORD_GATE_LOCK_KEY]);};const usePasswordGateLocked=()=>{const[isLocked,setIsLocked]=useState(readPasswordGateLocked);useEffect(()=>{if(typeof window===\"undefined\")return;setIsLocked(readPasswordGateLocked());const handleLockChange=event=>{const customEvent=event;if(typeof customEvent.detail?.locked===\"boolean\"){setIsLocked(customEvent.detail.locked);return;}setIsLocked(readPasswordGateLocked());};window.addEventListener(PASSWORD_GATE_EVENT,handleLockChange);return()=>window.removeEventListener(PASSWORD_GATE_EVENT,handleLockChange);},[]);return isLocked;};const useIsBgVisible=()=>{const{scrollY}=useScroll();const[isVisible,setIsVisble]=useState(false);useEffect(()=>{const unsubscribe=scrollY.onChange(y=>{setIsVisble(y>OPACITY_THRESHOLD);});return()=>unsubscribe();},[scrollY]);return isVisible;};const useHideOnScroll=threshold=>{const{scrollY}=useScroll();const directionRef=useRef(0);const prevY=useRef(0);const[isVisible,setIsVisble]=useState(true);useEffect(()=>{const unsubscribe=scrollY.onChange(y=>{const dir=y>prevY.current?1:-1;directionRef.current=dir;if(y<threshold){setIsVisble(true);}else{setIsVisble(dir<0);}prevY.current=y;});return()=>unsubscribe();},[scrollY]);return isVisible;};export function withOpacityOnScroll(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const isVisible=useIsBgVisible();return /*#__PURE__*/_jsx(Component,{ref:ref,...props,animate:{opacity:isVisible?1:0}});});}export function withHideOnScrollDesktop(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const isVisible=useHideOnScroll(INITIAL_THRESHOLD.DESKTOP);const isGateLocked=usePasswordGateLocked();const height=HEADER_HEIGHT.DESKTOP;const lockedOffset=height*2;return /*#__PURE__*/_jsx(Component,{ref:ref,...props,animate:{y:isGateLocked?-lockedOffset:isVisible?0:-height,opacity:isGateLocked?0:1}});});}export function withHideOnScrollMobile(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const isVisible=useHideOnScroll(INITIAL_THRESHOLD.MOBILE);const isGateLocked=usePasswordGateLocked();const height=HEADER_HEIGHT.MOBILE;const lockedOffset=height*2;return /*#__PURE__*/_jsx(Component,{ref:ref,...props,animate:{y:isGateLocked?-lockedOffset:isVisible?0:-height,opacity:isGateLocked?0:1}});});}export function withPasswordGatePointerEvents(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const isGateLocked=usePasswordGateLocked();const gateStyle=isGateLocked?{pointerEvents:\"auto\",width:\"100%\",height:\"100vh\",display:\"block\"}:{pointerEvents:\"none\",width:\"0px\",height:\"0px\",display:\"none\"};const incomingAnimateIsObject=props.animate&&typeof props.animate===\"object\"&&!Array.isArray(props.animate);const animate=incomingAnimateIsObject?{...props.animate,...gateStyle}:gateStyle;return /*#__PURE__*/_jsx(Component,{ref:ref,...props,animate:animate,style:{...props.style,...gateStyle}});});}export function withScrollToTop(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const isStaticRenderer=useIsStaticRenderer();const isPopNavigationRef=useRef(false);const routeKey=typeof window!==\"undefined\"?`${window.location.pathname}${window.location.hash}`:\"\";const resetScrollPosition=useCallback(()=>{if(typeof window===\"undefined\")return;window.scrollTo({top:0,left:0,behavior:\"auto\"});const candidates=[window.lenis,window.__lenis,window.Lenis?.instance,window.lenis?.instance].filter(Boolean);for(const lenisInstance of candidates){if(!lenisInstance||typeof lenisInstance.scrollTo!==\"function\")continue;try{lenisInstance.scrollTo(0,{immediate:true,force:true,lock:true,duration:0});}catch(_){try{lenisInstance.scrollTo(0,{immediate:true});}catch(_){try{lenisInstance.scrollTo(0);}catch(_){}}}}},[]);useEffect(()=>{if(isStaticRenderer)return;if(isPopNavigationRef.current){isPopNavigationRef.current=false;return;}resetScrollPosition();},[isStaticRenderer,routeKey,resetScrollPosition]);useEffect(()=>{if(typeof window===\"undefined\"||isStaticRenderer)return;const handlePopState=()=>{isPopNavigationRef.current=true;};const handleLocationChange=()=>resetScrollPosition();window.addEventListener(\"popstate\",handlePopState);window.addEventListener(\"hashchange\",handleLocationChange);window.addEventListener(\"pageshow\",handleLocationChange);return()=>{window.removeEventListener(\"popstate\",handlePopState);window.removeEventListener(\"hashchange\",handleLocationChange);window.removeEventListener(\"pageshow\",handleLocationChange);};},[isStaticRenderer,resetScrollPosition]);useEffect(()=>{if(typeof window===\"undefined\"||isStaticRenderer)return;let rafId=0;const handlePasswordGateChange=event=>{const customEvent=event;if(customEvent.detail?.locked!==false)return;resetScrollPosition();if(typeof window!==\"undefined\"){rafId=window.requestAnimationFrame(()=>{resetScrollPosition();rafId=0;});}};window.addEventListener(PASSWORD_GATE_EVENT,handlePasswordGateChange);return()=>{window.removeEventListener(PASSWORD_GATE_EVENT,handlePasswordGateChange);if(rafId){window.cancelAnimationFrame(rafId);}};},[isStaticRenderer,resetScrollPosition]);return /*#__PURE__*/_jsx(Component,{ref:ref,...props});});}\nexport const __FramerMetadata__ = {\"exports\":{\"withHideOnScrollMobile\":{\"type\":\"reactHoc\",\"name\":\"withHideOnScrollMobile\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withHideOnScrollDesktop\":{\"type\":\"reactHoc\",\"name\":\"withHideOnScrollDesktop\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withOpacityOnScroll\":{\"type\":\"reactHoc\",\"name\":\"withOpacityOnScroll\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withPasswordGatePointerEvents\":{\"type\":\"reactHoc\",\"name\":\"withPasswordGatePointerEvents\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withScrollToTop\":{\"type\":\"reactHoc\",\"name\":\"withScrollToTop\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Custom_header.map"],"mappings":"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"}