{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/bseJayOmuQ65NcqWIb8h/q1BN0Q5PbzkR1U5HGWhy/Adjust.js"],
  "sourcesContent": ["import{jsx as _jsx}from\"react/jsx-runtime\";import{useState,useEffect}from\"react\";import{useScroll,useVelocity}from\"framer-motion\";export function hoverScale(Component){return props=>{return /*#__PURE__*/_jsx(Component,{...props,whileHover:{scale:1.015}});};}export function truncateTitle(Component){return props=>{const maxLength=50;const truncateText=props.truncatedText&&props.truncatedText.length>maxLength?`${props.truncatedText.substring(0,maxLength)}...`:props.truncatedText;return /*#__PURE__*/_jsx(Component,{...props,truncatedText:truncateText});};}export function withSlideOutOnScrollUp(Component){const slideDistance=102// if we are sliding out a nav bar at the top of the screen, this will be it's height\n;const threshold=500// only slide it back when scrolling back at velocity above this positive (or zero) value\n;return props=>{const{scrollY}=useScroll();const scrollVelocity=useVelocity(scrollY);const[isScrollingBack,setIsScrollingBack]=useState(false);const[isAtTop,setIsAtTop]=useState(true)// true if the page is not scrolled or fully scrolled back\n;const[isInView,setIsInView]=useState(true);useEffect(()=>scrollVelocity.onChange(latest=>{if(latest>0){setIsScrollingBack(false);return;}if(latest<-threshold){setIsScrollingBack(true);return;}}),[]);useEffect(()=>scrollY.onChange(latest=>setIsAtTop(latest<=0)),[]);useEffect(()=>setIsInView(isScrollingBack||isAtTop),[isScrollingBack,isAtTop]);return /*#__PURE__*/_jsx(Component,{...props,animate:{y:isInView?0:-slideDistance},transition:{duration:.2,delay:.25,ease:\"easeInOut\"}});};}\nexport const __FramerMetadata__ = {\"exports\":{\"withSlideOutOnScrollUp\":{\"type\":\"reactHoc\",\"name\":\"withSlideOutOnScrollUp\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"truncateTitle\":{\"type\":\"reactHoc\",\"name\":\"truncateTitle\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"hoverScale\":{\"type\":\"reactHoc\",\"name\":\"hoverScale\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Adjust.map"],
  "mappings": "kGAAqjB,SAASA,EAAuBC,EAAU,CAE9lB,OAAOC,GAAO,CAAC,GAAK,CAAC,QAAAC,CAAO,EAAEC,EAAU,EAAQC,EAAeC,EAAYH,CAAO,EAAO,CAACI,EAAgBC,CAAkB,EAAEC,EAAS,EAAK,EAAO,CAACC,EAAQC,CAAU,EAAEF,EAAS,EAAI,EAChL,CAACG,EAASC,CAAW,EAAEJ,EAAS,EAAI,EAAE,OAAAK,EAAU,IAAIT,EAAe,SAASU,GAAQ,CAAC,GAAGA,EAAO,EAAE,CAACP,EAAmB,EAAK,EAAE,MAAO,CAAC,GAAGO,EAAO,KAAW,CAACP,EAAmB,EAAI,EAAE,MAAO,CAAC,CAAC,EAAE,CAAC,CAAC,EAAEM,EAAU,IAAIX,EAAQ,SAASY,GAAQJ,EAAWI,GAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,EAAED,EAAU,IAAID,EAAYN,GAAiBG,CAAO,EAAE,CAACH,EAAgBG,CAAO,CAAC,EAAsBM,EAAKf,EAAU,CAAC,GAAGC,EAAM,QAAQ,CAAC,EAAEU,EAAS,EAAE,IAAc,EAAE,WAAW,CAAC,SAAS,GAAG,MAAM,IAAI,KAAK,WAAW,CAAC,CAAC,CAAE,CAAE",
  "names": ["withSlideOutOnScrollUp", "Component", "props", "scrollY", "useScroll", "scrollVelocity", "useVelocity", "isScrollingBack", "setIsScrollingBack", "ye", "isAtTop", "setIsAtTop", "isInView", "setIsInView", "ue", "latest", "p"]
}
