{"version":3,"file":"Custom_Gradient.CNikMXKt.mjs","names":[],"sources":["https:/framerusercontent.com/modules/7714OuMzlkv2ruaZ8Y34/m08BdP3aCzJHxgCBfL8D/Custom_Gradient.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{useState,useEffect,useRef}from\"react\";import{addPropertyControls,ControlType}from\"framer\";export function DynamicGradient(props){const{width,height,colors,gradientSize,cursorTrackingSpeed,damping}=props;const containerRef=useRef(null);const[isDesktop,setIsDesktop]=useState(false);const[mousePosition,setMousePosition]=useState({x:0,y:0});const[gradientPosition,setGradientPosition]=useState({x:0,y:0});useEffect(()=>{const handleResize=()=>{setIsDesktop(window.innerWidth>=1024);};handleResize()// Initial check\n;window.addEventListener(\"resize\",handleResize);return()=>window.removeEventListener(\"resize\",handleResize);},[]);useEffect(()=>{if(!isDesktop)return;const container=containerRef.current;if(!container)return;const handleMouseMove=event=>{const rect=container.getBoundingClientRect();const x=event.clientX-rect.left;const y=event.clientY-rect.top;setMousePosition({x,y});};container.addEventListener(\"mousemove\",handleMouseMove);return()=>container.removeEventListener(\"mousemove\",handleMouseMove);},[isDesktop]);useEffect(()=>{if(!isDesktop)return;let animationFrameId;const animate=()=>{setGradientPosition(prev=>({x:prev.x+(mousePosition.x-prev.x)/damping,y:prev.y+(mousePosition.y-prev.y)/damping}));animationFrameId=requestAnimationFrame(animate);};animationFrameId=requestAnimationFrame(animate);return()=>cancelAnimationFrame(animationFrameId);},[mousePosition,damping,isDesktop]);const gradientStyle=isDesktop?{position:\"absolute\",width:\"100%\",height:\"100%\",background:`radial-gradient(circle ${gradientSize}px at ${gradientPosition.x}px ${gradientPosition.y}px, ${colors.join(\", \")})`,transition:`background ${cursorTrackingSpeed}ms ease`}:{};return /*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:{width:width,height:height,position:\"relative\",overflow:\"hidden\"},children:isDesktop&&/*#__PURE__*/_jsx(\"div\",{style:gradientStyle})});}DynamicGradient.defaultProps={width:900,height:500,colors:[\"#ff0000\",\"#00ff00\",\"#0000ff\",\"#ffff00\"],gradientSize:400,cursorTrackingSpeed:100,damping:10};addPropertyControls(DynamicGradient,{width:{type:ControlType.Number,title:\"Width\"},height:{type:ControlType.Number,title:\"Height\"},colors:{type:ControlType.Array,title:\"Colors\",control:{type:ControlType.Color}},gradientSize:{type:ControlType.Number,title:\"Gradient Size\"},cursorTrackingSpeed:{type:ControlType.Number,title:\"Tracking Speed\"},damping:{type:ControlType.Number,title:\"Damping\",min:1,max:100}});\nexport const __FramerMetadata__ = {\"exports\":{\"DynamicGradient\":{\"type\":\"reactComponent\",\"name\":\"DynamicGradient\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Custom_Gradient.map"],"mappings":"0TAA4I,SAAgB,EAAgB,EAAM,CAAC,GAAK,CAAC,QAAM,SAAO,SAAO,eAAa,sBAAoB,UAAQ,CAAC,EAAY,EAAa,EAAO,KAAK,CAAM,CAAC,EAAU,EAAa,CAAC,GAAS,EAAM,CAAM,CAAC,EAAc,EAAiB,CAAC,EAAS,CAAC,EAAE,EAAE,EAAE,CAAE,EAAC,CAAM,CAAC,EAAiB,EAAoB,CAAC,EAAS,CAAC,EAAE,EAAE,EAAE,CAAE,EAAC,CAC4D,AAD3D,EAAU,IAAI,CAAC,IAAM,EAAa,IAAI,CAAC,EAAa,EAAO,YAAY,KAAK,AAAE,EACne,MADoe,IAAc,CACjiB,EAAO,iBAAiB,SAAS,EAAa,CAAO,IAAI,EAAO,oBAAoB,SAAS,EAAa,AAAE,EAAC,CAAE,EAAC,CAAC,EAAU,IAAI,CAAC,IAAI,EAAU,OAAO,IAAM,EAAU,EAAa,QAAQ,IAAI,EAAU,OAAO,IAAM,EAAgB,GAAO,CAAC,IAAM,EAAK,EAAU,uBAAuB,CAAO,EAAE,EAAM,QAAQ,EAAK,KAAW,EAAE,EAAM,QAAQ,EAAK,IAAI,EAAiB,CAAC,IAAE,GAAE,EAAC,AAAE,EAAyD,MAAxD,GAAU,iBAAiB,YAAY,EAAgB,CAAO,IAAI,EAAU,oBAAoB,YAAY,EAAgB,AAAE,EAAC,CAAC,CAAU,EAAC,CAAC,EAAU,IAAI,CAAC,IAAI,EAAU,OAAO,IAAI,EAAuB,EAAQ,IAAI,CAAoH,AAAnH,EAAoB,IAAO,CAAC,EAAE,EAAK,GAAG,EAAc,EAAE,EAAK,GAAG,EAAQ,EAAE,EAAK,GAAG,EAAc,EAAE,EAAK,GAAG,CAAQ,GAAE,CAAC,EAAiB,sBAAsB,EAAQ,AAAE,EAAiD,OAAhD,EAAiB,sBAAsB,EAAQ,CAAO,IAAI,qBAAqB,EAAiB,AAAE,EAAC,CAAC,EAAc,EAAQ,CAAU,EAAC,CAAC,IAAM,EAAc,EAAU,CAAC,SAAS,WAAW,MAAM,OAAO,OAAO,OAAO,YAAY,yBAAyB,EAAa,QAAQ,EAAiB,EAAE,KAAK,EAAiB,EAAE,MAAM,EAAO,KAAK,KAAK,CAAC,GAAG,YAAY,aAAa,EAAoB,QAAS,EAAC,CAAE,EAAC,MAAoB,GAAK,MAAM,CAAC,IAAI,EAAa,MAAM,CAAO,QAAa,SAAO,SAAS,WAAW,SAAS,QAAS,EAAC,SAAS,GAAwB,EAAK,MAAM,CAAC,MAAM,CAAc,EAAC,AAAC,EAAC,AAAE,cAAyJ,IADv9C,GAA2C,IAA6C,IAAoD,CACkrC,EAAgB,aAAa,CAAC,MAAM,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,UAAU,UAAU,SAAU,EAAC,aAAa,IAAI,oBAAoB,IAAI,QAAQ,EAAG,EAAC,EAAoB,EAAgB,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,OAAQ,EAAC,OAAO,CAAC,KAAK,EAAY,OAAO,MAAM,QAAS,EAAC,OAAO,CAAC,KAAK,EAAY,MAAM,MAAM,SAAS,QAAQ,CAAC,KAAK,EAAY,KAAM,CAAC,EAAC,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,eAAgB,EAAC,oBAAoB,CAAC,KAAK,EAAY,OAAO,MAAM,gBAAiB,EAAC,QAAQ,CAAC,KAAK,EAAY,OAAO,MAAM,UAAU,IAAI,EAAE,IAAI,GAAI,CAAC,EAAC"}