{"version":3,"file":"ScrollGradient.CSYCS8tk.mjs","names":["useRef","__esmMin","init_npm_react_18_3_1","init_jsx_runtime","c","de","motion","useTransform","useScroll","init_framer_motion_DhsWWWsN","init_framer_B1b760uK","ControlType","addPropertyControls","ScrollGradient","animation","container","direction","start","end","height","scrollYProgress","minHeight","maxHeight","image","Direction","init_ScrollGradient","props"],"sources":["https:/framerusercontent.com/modules/7YFg7QCCWFcLIhZs1N23/yOf5R2OujHnPK84l2zTF/ScrollGradient.js"],"sourcesContent":["// Get Started: https://www.framer.com/developers\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{motion,useScroll,useTransform}from\"framer-motion\";import{useRef}from\"react\";const Direction=[\"up\",\"down\"];const lerp=(a,b,amount)=>(1-amount)*a+amount*b;export default function ScrollGradient({direction,image,maxHeight,minHeight,animation}){const{start,end}=animation;const container=useRef(null);const{scrollYProgress}=useScroll({target:container,offset:direction===\"up\"?[`end ${start}%`,`end ${end}%`]:[`start ${end}%`,`start ${start}%`]});const height=useTransform(scrollYProgress,[0,1],[`${minHeight}rem`,`${maxHeight}rem`]);return /*#__PURE__*/_jsx(motion.img,{ref:container,style:{width:\"100%\",height,rotateZ:direction===\"up\"?0:180},...image});}const defaultProps={image:{src:\"\",srsSet:\"\",alt:\"\"},direction:\"up\",maxHeight:1.5,minHeight:1,animation:{start:100,end:0}};ScrollGradient.defultProps=defaultProps;addPropertyControls(ScrollGradient,{direction:{type:ControlType.Enum,displaySegmentedControl:true,segmentedControlDirection:\"horizontal\",defaultValue:\"up\",options:Direction,optionTitles:Direction},animation:{title:\"Transition\",type:ControlType.Object,buttonTitle:\"Controls\",controls:{start:{title:\"Start\",type:ControlType.Number,unit:\"%\",defaultValue:100,min:0,max:100,description:\"Transition start with respect to the viewport\",hidden(props){return props.customStart===false;}},end:{title:\"End\",type:ControlType.Number,unit:\"%\",defaultValue:0,min:0,max:100,description:\"Transition end with respect to the viewport\",hidden(props){return props.customEnd===false;}}},description:\"Controls at what point during scroll does the gradient expand\"},image:{type:ControlType.ResponsiveImage},maxHeight:{title:\"Max Height\",type:ControlType.Number,unit:\"rem\",defaultValue:6,min:1,max:64},minHeight:{title:\"Min Height\",type:ControlType.Number,unit:\"rem\",defaultValue:2,min:1,max:64}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ScrollGradient\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ScrollGradient.map"],"mappings":"A,yOAC+P,SAAwBa,EAAe,CAAC,YAAU,QAAM,YAAU,YAAU,aAAW,CAAC,GAAK,CAAC,QAAM,OAAKC,EAAgBC,EAAUf,EAAO,IAAI,EAAO,CAAC,mBAAiBQ,EAAU,CAAC,OAAOO,EAAU,OAAOC,IAAY,KAAK,CAAC,OAAOC,EAAM,GAAG,OAAOC,EAAI,EAAE,EAAE,CAAC,SAASA,EAAI,GAAG,SAASD,EAAM,EAAE,CAAC,CAAC,EAAQE,EAAOZ,EAAaa,EAAgB,CAAC,EAAE,CAAC,EAAE,CAAC,GAAGC,EAAU,KAAK,GAAGC,EAAU,IAAI,CAAC,EAAE,MAAoB,gBAAKhB,EAAO,IAAI,CAAC,IAAIS,EAAU,MAAM,CAAC,MAAM,OAAO,SAAO,QAAQC,IAAY,KAAK,EAAE,GAAG,EAAE,GAAGO,CAAK,CAAC,CAAE,C,oDAAxjB,EAAU,CAAC,KAAK,MAAM,EAA6pB,EAAe,YAAY,CAAjI,MAAM,CAAC,IAAI,GAAG,OAAO,GAAG,IAAI,EAAE,EAAE,UAAU,KAAK,UAAU,IAAI,UAAU,EAAE,UAAU,CAAC,MAAM,IAAI,IAAI,CAAC,CAAyC,EAAEX,EAAoBC,EAAe,CAAC,UAAU,CAAC,KAAKF,EAAY,KAAK,wBAAwB,GAAK,0BAA0B,aAAa,aAAa,KAAK,QAAQa,EAAU,aAAaA,CAAS,EAAE,UAAU,CAAC,MAAM,aAAa,KAAKb,EAAY,OAAO,YAAY,WAAW,SAAS,CAAC,MAAM,CAAC,MAAM,QAAQ,KAAKA,EAAY,OAAO,KAAK,IAAI,aAAa,IAAI,IAAI,EAAE,IAAI,IAAI,YAAY,gDAAgD,OAAO,EAAM,CAAC,OAAOe,EAAM,cAAc,EAAM,CAAC,EAAE,IAAI,CAAC,MAAM,MAAM,KAAKf,EAAY,OAAO,KAAK,IAAI,aAAa,EAAE,IAAI,EAAE,IAAI,IAAI,YAAY,8CAA8C,OAAO,EAAM,CAAC,OAAOe,EAAM,YAAY,EAAM,CAAC,CAAC,EAAE,YAAY,+DAA+D,EAAE,MAAM,CAAC,KAAKf,EAAY,eAAe,EAAE,UAAU,CAAC,MAAM,aAAa,KAAKA,EAAY,OAAO,KAAK,MAAM,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,UAAU,CAAC,MAAM,aAAa,KAAKA,EAAY,OAAO,KAAK,MAAM,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,C"}