{"version":3,"file":"Gradient_Animation.CN35P02r.mjs","names":["React.useRef","React.useState","React.useMemo","React.useCallback"],"sources":["https:/framerusercontent.com/modules/kiprxUqhjWAdXXq1hZsS/tIfezCwTxotjChoh2ZBd/Gradient_Animation.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{motion,useMotionValue,useSpring,useTransform,animate,useReducedMotion,useScroll,useAnimationFrame}from\"framer-motion\";// --------------------------- Utilities ---------------------------\nconst clamp=(v,min,max)=>Math.min(max,Math.max(min,v));function useElementSize(){const ref=React.useRef(null);const[size,setSize]=React.useState({w:0,h:0});React.useLayoutEffect(()=>{if(!ref.current)return;const el=ref.current;const ro=new ResizeObserver(entries=>{const r=entries[0]?.contentRect;if(r)setSize({w:r.width,h:r.height});});ro.observe(el);return()=>ro.disconnect();},[]);return[ref,size.w,size.h];}function seededRand(seed){let s=seed>>>0||1;return()=>{s=1664525*s+1013904223>>>0;return s/4294967295;};}// --- Optimized organic offset with per-seed param caching ---\nconst organicCache=new Map;function organicOffset(t,amp,seed){let params=organicCache.get(seed);if(!params){const rand=seededRand(seed);params={f1:.6+rand()*.7,f2:1.3+rand()*1,f3:.2+rand()*.4,p1:rand()*Math.PI*2,p2:rand()*Math.PI*2,p3:rand()*Math.PI*2};organicCache.set(seed,params);}const{f1,f2,f3,p1,p2,p3}=params;return amp*(.56*Math.sin(f1*t+p1)+.32*Math.sin(f2*t+p2)+.12*Math.sin(f3*t+p3));}function computeBlobSizePx(w,h,blur,bleed,outerStop){const base=Math.max(w,h);return base*1.5*(outerStop/60)+blur*2+bleed*2;}function qualityMultipliers(q){switch(q){case\"Low\":return{blur:.85,radius:.8,speed:.8};case\"Medium\":return{blur:1,radius:1,speed:1};case\"High\":default:return{blur:1.1,radius:1.05,speed:1.1};}}function detectQualityFromDeviceMemory(dm){return dm<=4?\"Low\":dm<=8?\"Medium\":\"High\";}function posForMode(mode,t,r,phaseShift,seed){switch(mode){case\"Organic\":return{x:organicOffset(t+phaseShift,r,seed+11),y:organicOffset(t+phaseShift+.7,r,seed+19)};case\"Lissajous\":{const a=1,b=2;return{x:Math.cos(a*(t+phaseShift))*r,y:Math.sin(b*(t+phaseShift))*r};}case\"Figure8\":return{x:Math.sin(t+phaseShift)*r,y:Math.sin(2*(t+phaseShift))*.66*r};case\"Orbit\":default:return{x:Math.cos(t+phaseShift)*r,y:Math.sin(t+phaseShift)*r};}}function posAll(t,r,phaseShift,seed,tempo){const tt=t*Math.max(.1,tempo);const w1=(Math.sin(tt*.25+0)+1)*.5;const w2=(Math.sin(tt*.27+1.3)+1)*.5;const w3=(Math.sin(tt*.31+2.1)+1)*.5;const w4=(Math.sin(tt*.22+3)+1)*.5;const sum=w1+w2+w3+w4+1e-6;const P1=posForMode(\"Orbit\",tt,r,phaseShift,seed);const P2=posForMode(\"Organic\",tt,r,phaseShift,seed);const P3=posForMode(\"Lissajous\",tt,r,phaseShift,seed);const P4=posForMode(\"Figure8\",tt,r,phaseShift,seed);return{x:(P1.x*w1+P2.x*w2+P3.x*w3+P4.x*w4)/sum,y:(P1.y*w1+P2.y*w2+P3.y*w3+P4.y*w4)/sum};}function randomBaseMode(index,seed){const rnd=seededRand(seed+index)();const modes=[\"Orbit\",\"Organic\",\"Lissajous\",\"Figure8\"];return modes[Math.floor(rnd*modes.length)];}function angleForIndex(i,count){const N=Math.max(2,count);return i*(2*Math.PI/N);}/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerIntrinsicWidth 600\n * @framerIntrinsicHeight 600\n * @framerDisableUnlink\n */// --------------------------- Component ---------------------------\nexport default function InteractiveGradientPro(props){// defaults\nlet{blobColors={},motionMode=\"Orbit\",loopDuration=16,orbitRadius=28,followStrength=.35,innerStop=0,middleStop=22,outerStop=60,blur=60,brightness=1,radius=20,bleed=0,blendMode=\"screen\",scrollInfluence=0,pulseOnTap=false,pulseStrength=.35,pauseWhenOffscreen=true,grain=false,grainOpacity=.08,seed=1,enableGyro=false,gyroStrength=.25,quality=\"Auto\",baseColor=\"#0e0f12\",hoverReturn=\"Smooth\",hoverOverscan=12,hoverInfluence=\"Blob1 only\",secondBlobFollow=.3,thirdBlobFollow=.15,fourthBlobFollow=.1,fifthBlobFollow=.08,sixthBlobFollow=.07,seventhBlobFollow=.06,eighthBlobFollow=.05,centerDriftStrength=.2,primaryMotion=\"Off\",primaryMotionRadius=8,blobCount=5,allTempo=1,randomReseedInterval=0,// per-blob size scales (1 = base)\nblob1Size=1,blob2Size=1,blob3Size=1,blob4Size=1,blob5Size=1,blob6Size=1,blob7Size=1,blob8Size=1}=props;// UI subpanels\nconst gp=props||{};const GColors=gp.colorsPanel||{};const GSizes=gp.blobSizes||{};const GStops=gp.stops||{};const GMotion=gp.motion||{};const GAppearance=gp.appearance||{};const GInteraction=gp.interaction||{};const GAdvanced=gp.advanced||{};// Colors\nblobColors={...blobColors,color1:GColors.color1??blobColors.color1,color2:GColors.color2??blobColors.color2,color3:GColors.color3??blobColors.color3,color4:GColors.color4??blobColors.color4,color5:GColors.color5??blobColors.color5,color6:GColors.color6??blobColors.color6,color7:GColors.color7??blobColors.color7,color8:GColors.color8??blobColors.color8};// Per-blob sizes\nblob1Size=GSizes.blob1Size??blob1Size;blob2Size=GSizes.blob2Size??blob2Size;blob3Size=GSizes.blob3Size??blob3Size;blob4Size=GSizes.blob4Size??blob4Size;blob5Size=GSizes.blob5Size??blob5Size;blob6Size=GSizes.blob6Size??blob6Size;blob7Size=GSizes.blob7Size??blob7Size;blob8Size=GSizes.blob8Size??blob8Size;// Stops\ninnerStop=GStops.innerStop??innerStop;middleStop=GStops.middleStop??middleStop;outerStop=GStops.outerStop??outerStop;// Motion\nmotionMode=GMotion.motionMode??motionMode;allTempo=GMotion.allTempo??allTempo;randomReseedInterval=GMotion.randomReseedInterval??randomReseedInterval;loopDuration=GMotion.loopDuration??loopDuration;orbitRadius=GMotion.orbitRadius??orbitRadius;// followStrength moved out of Motion\nprimaryMotion=GMotion.primaryMotion??primaryMotion;primaryMotionRadius=GMotion.primaryMotionRadius??primaryMotionRadius;blobCount=GMotion.blobCount??blobCount// (top-level control now; keep fallback)\n;scrollInfluence=GMotion.scrollInfluence??scrollInfluence;// Appearance\nblendMode=GAppearance.blendMode??blendMode;blur=GAppearance.blur??blur;brightness=GAppearance.brightness??brightness;radius=GAppearance.radius??radius;bleed=GAppearance.bleed??bleed;baseColor=GAppearance.baseColor??baseColor;grain=GAppearance.grain??grain;grainOpacity=GAppearance.grainOpacity??grainOpacity;// Interaction (followStrength moved here)\nhoverReturn=GInteraction.hoverReturn??hoverReturn;hoverOverscan=GInteraction.hoverOverscan??hoverOverscan;hoverInfluence=GInteraction.hoverInfluence??hoverInfluence;secondBlobFollow=GInteraction.secondBlobFollow??secondBlobFollow;thirdBlobFollow=GInteraction.thirdBlobFollow??thirdBlobFollow;fourthBlobFollow=GInteraction.fourthBlobFollow??fourthBlobFollow;fifthBlobFollow=GInteraction.fifthBlobFollow??fifthBlobFollow;sixthBlobFollow=GInteraction.sixthBlobFollow??sixthBlobFollow;seventhBlobFollow=GInteraction.seventhBlobFollow??seventhBlobFollow;eighthBlobFollow=GInteraction.eighthBlobFollow??eighthBlobFollow;centerDriftStrength=GInteraction.centerDriftStrength??centerDriftStrength;pulseOnTap=GInteraction.pulseOnTap??pulseOnTap;pulseStrength=GInteraction.pulseStrength??pulseStrength;enableGyro=GInteraction.enableGyro??enableGyro;gyroStrength=GInteraction.gyroStrength??gyroStrength;followStrength=GInteraction.followStrength??followStrength;// Advanced\nquality=GAdvanced.quality??quality;pauseWhenOffscreen=GAdvanced.pauseWhenOffscreen??pauseWhenOffscreen;seed=GAdvanced.seed??seed;// Resolve colors array\nconst C=[blobColors.color1||\"#FF5EDB\",blobColors.color2||\"#7B61FF\",blobColors.color3||\"#2EE6A6\",blobColors.color4||\"#FFB86C\",blobColors.color5||\"#61E6FF\",blobColors.color6||\"#B7F8DB\",blobColors.color7||\"#FF6E7F\",blobColors.color8||\"#8E54E9\"];const reduce=useReducedMotion();const isStatic=useIsStaticRenderer();const[ref,w,h]=useElementSize();const widthMV=useMotionValue(w);const heightMV=useMotionValue(h);React.useEffect(()=>{widthMV.set(w);heightMV.set(h);},[w,h,widthMV,heightMV]);const initialVisualQRef=React.useRef(quality===\"Auto\"?\"Medium\":quality);const[autoDetectedQ,setAutoDetectedQ]=React.useState(null);React.useEffect(()=>{if(quality!==\"Auto\")return;const dm=typeof navigator!==\"undefined\"&&navigator?.deviceMemory||null;if(dm!=null)setAutoDetectedQ(detectQualityFromDeviceMemory(Number(dm)));else setAutoDetectedQ(null);},[quality]);const visualQ=quality===\"Auto\"?initialVisualQRef.current:quality;const perfQ=quality===\"Auto\"?autoDetectedQ??initialVisualQRef.current:quality;const visualMul=React.useMemo(()=>qualityMultipliers(visualQ),[visualQ]);const perfMul=React.useMemo(()=>qualityMultipliers(perfQ),[perfQ]);const effBlur=blur*visualMul.blur;const effOrbit=orbitRadius*visualMul.radius;const effDuration=Math.max(.1,loopDuration/perfMul.speed);// Pointer state\nconst pointerX=useMotionValue(.5);const pointerY=useMotionValue(.5);const pX=useSpring(pointerX,{stiffness:200,damping:28,mass:.8});const pY=useSpring(pointerY,{stiffness:200,damping:28,mass:.8});const x1PctBase=useTransform(pX,v=>50+(v*100-50)*followStrength);const y1PctBase=useTransform(pY,v=>50+(v*100-50)*followStrength);// Hover tracking (overscan)\nconst rectRef=React.useRef(null);const overscanRef=React.useRef(hoverOverscan);React.useEffect(()=>{overscanRef.current=hoverOverscan;},[hoverOverscan]);const triggerPointerReturn=React.useCallback(()=>{const cx=.5,cy=.5;const px=pointerX.get();const py=pointerY.get();if(hoverReturn===\"Instant\"){pointerX.set(cx);pointerY.set(cy);return;}let dur=.35;if(hoverReturn===\"Distance\"){const dx=px-cx;const dy=py-cy;const dist=Math.sqrt(dx*dx+dy*dy);dur=clamp(.18+dist*.45,.18,.5);}animate(pointerX,cx,{duration:dur,ease:\"easeOut\"});animate(pointerY,cy,{duration:dur,ease:\"easeOut\"});},[hoverReturn,pointerX,pointerY]);const handleGlobalMove=React.useCallback(e=>{const rect=rectRef.current;if(!rect)return;const os=Math.max(0,overscanRef.current||0);const inside=e.clientX>=rect.left-os&&e.clientX<=rect.right+os&&e.clientY>=rect.top-os&&e.clientY<=rect.bottom+os;if(!inside){triggerPointerReturn();rectRef.current=null;window.removeEventListener(\"pointermove\",handleGlobalMove);return;}const nx=clamp((e.clientX-rect.left)/rect.width,0,1);const ny=clamp((e.clientY-rect.top)/rect.height,0,1);pointerX.set(nx);pointerY.set(ny);},[pointerX,pointerY,triggerPointerReturn]);const onPointerMove=e=>{if(isStatic||reduce)return;if((hoverOverscan||0)>0)return;const rect=e.currentTarget.getBoundingClientRect();const nx=clamp((e.clientX-rect.left)/rect.width,0,1);const ny=clamp((e.clientY-rect.top)/rect.height,0,1);pointerX.set(nx);pointerY.set(ny);};const onPointerLeave=()=>{if(isStatic||reduce)return;if((hoverOverscan||0)>0)return;triggerPointerReturn();};const onPointerEnter=e=>{if(isStatic||reduce)return;if((hoverOverscan||0)>0){const el=e.currentTarget;rectRef.current=el.getBoundingClientRect();window.addEventListener(\"pointermove\",handleGlobalMove);const r=rectRef.current;if(r){const nx=clamp((e.clientX-r.left)/r.width,0,1);const ny=clamp((e.clientY-r.top)/r.height,0,1);pointerX.set(nx);pointerY.set(ny);}}else{onPointerMove(e);}};React.useEffect(()=>{return()=>window.removeEventListener(\"pointermove\",handleGlobalMove);},[handleGlobalMove]);// Gyro\nReact.useEffect(()=>{if(!enableGyro)return;const handler=e=>{const gx=clamp(((e.gamma||0)+45)/90,0,1);const gy=clamp(((e.beta||0)+45)/90,0,1);const s=gyroStrength;pointerX.set(.5*(1-s)+gx*s);pointerY.set(.5*(1-s)+gy*s);};try{const anyDO=window.DeviceOrientationEvent;if(anyDO&&typeof anyDO.requestPermission===\"function\"){anyDO.requestPermission().then(state=>{if(state===\"granted\")window.addEventListener(\"deviceorientation\",handler);});}else{window.addEventListener(\"deviceorientation\",handler);}}catch{}return()=>window.removeEventListener(\"deviceorientation\",handler);},[enableGyro,gyroStrength,pointerX,pointerY]);// Offscreen pause\nconst[inView,setInView]=React.useState(true);React.useEffect(()=>{if(!pauseWhenOffscreen||!ref.current)return;const obs=new IntersectionObserver(entries=>setInView(entries[0]?.isIntersecting??true),{root:null,threshold:.01,rootMargin:\"200px\"});obs.observe(ref.current);return()=>obs.disconnect();},[pauseWhenOffscreen,ref]);// Time / phase base animation\nconst phaseBase=useMotionValue(0);const{scrollYProgress}=useScroll();const phase=useTransform([phaseBase,scrollYProgress],([p,s])=>{const extra=clamp(scrollInfluence,0,1)*s*(Math.PI*2);return p+extra;});// Random reseed for \"Random\" mode\nconst[randCycle,setRandCycle]=React.useState(0);const randElapsedRef=React.useRef(0);useAnimationFrame((t,delta)=>{if(reduce||isStatic)return;const shouldRun=!pauseWhenOffscreen||inView;if(!shouldRun)return;const speed=Math.PI*2/effDuration;const inc=delta/1e3*speed;phaseBase.set(phaseBase.get()+inc);if(motionMode===\"Random\"&&randomReseedInterval>0){randElapsedRef.current+=delta/1e3;if(randElapsedRef.current>=randomReseedInterval){randElapsedRef.current=0;setRandCycle(c=>c+1);}}});// Pulse on tap\nconst pulseMV=useMotionValue(1);const onPointerDown=()=>{if(!pulseOnTap||reduce||isStatic)return;const to=1+clamp(pulseStrength,0,1);animate(pulseMV,to,{type:\"spring\",stiffness:300,damping:18}).then(()=>animate(pulseMV,1,{type:\"spring\",stiffness:160,damping:20}));};const radiusPct=useTransform(pulseMV,p=>effOrbit*p);const pOffX=useTransform(pX,v=>(v*100-50)*followStrength);const pOffY=useTransform(pY,v=>(v*100-50)*followStrength);const wArr=[0,hoverInfluence===\"Weighted all\"?clamp(secondBlobFollow,0,1):0,hoverInfluence===\"Weighted all\"?clamp(thirdBlobFollow,0,1):0,hoverInfluence===\"Weighted all\"?clamp(fourthBlobFollow,0,1):0,hoverInfluence===\"Weighted all\"?clamp(fifthBlobFollow,0,1):0,hoverInfluence===\"Weighted all\"?clamp(sixthBlobFollow,0,1):0,hoverInfluence===\"Weighted all\"?clamp(seventhBlobFollow,0,1):0,hoverInfluence===\"Weighted all\"?clamp(eighthBlobFollow,0,1):0];const cDrift=hoverInfluence===\"Center drift\"?clamp(centerDriftStrength,0,1):0;const modeForBlob=React.useCallback(i=>{if(motionMode===\"Random\")return randomBaseMode(i+randCycle*101,seed);return motionMode;},[motionMode,seed,randCycle]);const calcXY=React.useCallback((i,t,r)=>{const angle=angleForIndex(i,Math.max(1,blobCount));const sel=modeForBlob(i);if(sel===\"All\")return posAll(t,r,angle,seed+i*101,allTempo);if(sel===\"Random\")return posForMode(randomBaseMode(i+randCycle*101,seed),t,r,angle,seed+i*101);return posForMode(sel,t,r,angle,seed+i*101);},[blobCount,modeForBlob,seed,allTempo,randCycle]);// Primary drift for blob 1\nconst primaryOn=primaryMotion!==\"Off\"&&primaryMotionRadius>0;const x1DriftPct=useTransform(phase,t=>{if(!primaryOn)return 0;const r=primaryMotionRadius;if(primaryMotion===\"Organic\")return organicOffset(t+.35,r,seed+501);return Math.cos(t)*r;});const y1DriftPct=useTransform(phase,t=>{if(!primaryOn)return 0;const r=primaryMotionRadius;if(primaryMotion===\"Organic\")return organicOffset(t+1.1,r,seed+509);return Math.sin(t)*r;});const x1Pct=useTransform([x1PctBase,x1DriftPct],([base,d])=>base+d);const y1Pct=useTransform([y1PctBase,y1DriftPct],([base,d])=>base+d);// Base blob size and per-blob MotionValues\nconst baseBlobSize=computeBlobSizePx(w,h,effBlur,bleed,outerStop);const baseBlobSizeMV=useMotionValue(baseBlobSize);React.useEffect(()=>{baseBlobSizeMV.set(baseBlobSize);},[baseBlobSize,baseBlobSizeMV]);// Per-blob size scales\nconst sizeScales=[blob1Size,blob2Size,blob3Size,blob4Size,blob5Size,blob6Size,blob7Size,blob8Size];const sMV=sizeScales.map(scale=>useTransform(baseBlobSizeMV,s=>s*scale));const pctToPx=(pctMV,axisMV,sizeMV)=>useTransform([pctMV,axisMV,sizeMV],([p,axis,s])=>p/100*axis-s/2);const x1px=pctToPx(x1Pct,widthMV,sMV[0]);const y1px=pctToPx(y1Pct,heightMV,sMV[0]);// blobs 2..8 percentage positions\nconst xPctArr=new Array(8).fill(null);const yPctArr=new Array(8).fill(null);for(let i=1;i<8;i++){// i corresponds to blob index (1-based for math), but 0 is blob1 already handled\nxPctArr[i]=useTransform([phase,radiusPct,pOffX],([t,r,offX])=>{const cx=50+offX*cDrift;const{x}=calcXY(i,t,r);return cx+x+offX*(wArr[i]||0);});yPctArr[i]=useTransform([phase,radiusPct,pOffY],([t,r,offY])=>{const cy=50+offY*cDrift;const{y}=calcXY(i,t,r);return cy+y+offY*(wArr[i]||0);});}const xPxArr=xPctArr.map((xp,i)=>i===0?x1px:pctToPx(xp,widthMV,sMV[i]));const yPxArr=yPctArr.map((yp,i)=>i===0?y1px:pctToPx(yp,heightMV,sMV[i]));// Static positions (SSR/reduced motion)\nconst staticPos=React.useMemo(()=>{const N=Math.max(1,blobCount);const arr=[];for(let i=0;i<Math.min(N,8);i++){const ang=angleForIndex(i,N);arr.push({x:50+Math.cos(ang)*effOrbit,y:50+Math.sin(ang)*effOrbit});}return arr;},[blobCount,effOrbit]);const mkGradient=React.useCallback(color=>`radial-gradient(circle, ${color} ${clamp(innerStop,0,100)}%, ${color} ${clamp(middleStop,innerStop,100)}%, rgba(0,0,0,0) ${clamp(outerStop,middleStop,100)}%)`,[innerStop,middleStop,outerStop]);const containerFilter=`blur(${effBlur}px) brightness(${brightness})`;// blend-mode fallback for plus-lighter\nconst supportsPlusLighter=typeof CSS!==\"undefined\"&&CSS.supports?.(\"mix-blend-mode\",\"plus-lighter\");const effectiveBlend=blendMode===\"plus-lighter\"&&!supportsPlusLighter?\"screen\":blendMode;const GrainOverlay=grain?/*#__PURE__*/_jsxs(\"svg\",{\"aria-hidden\":true,focusable:\"false\",width:\"100%\",height:\"100%\",style:{position:\"absolute\",inset:0,opacity:clamp(grainOpacity,0,1),pointerEvents:\"none\",mixBlendMode:blendMode===\"normal\"?\"overlay\":effectiveBlend},children:[/*#__PURE__*/_jsxs(\"filter\",{id:\"noiseFilter\",children:[/*#__PURE__*/_jsx(\"feTurbulence\",{type:\"fractalNoise\",baseFrequency:\"0.9\",numOctaves:\"1\",stitchTiles:\"stitch\",seed:seed}),/*#__PURE__*/_jsx(\"feColorMatrix\",{type:\"saturate\",values:\"0\"})]}),/*#__PURE__*/_jsx(\"rect\",{width:\"100%\",height:\"100%\",filter:\"url(#noiseFilter)\"})]}):null;const shouldBeStatic=isStatic||reduce;// Precompute static sizes for SSR branch\nconst baseBlobSizeVal=baseBlobSize;const bs=[baseBlobSizeVal*blob1Size,baseBlobSizeVal*blob2Size,baseBlobSizeVal*blob3Size,baseBlobSizeVal*blob4Size,baseBlobSizeVal*blob5Size,baseBlobSizeVal*blob6Size,baseBlobSizeVal*blob7Size,baseBlobSizeVal*blob8Size];const renderBlob=i=>{const show=blobCount>=i+1;if(!show)return null;const isFirst=i===0;const style={position:\"absolute\",width:shouldBeStatic?bs[i]:sMV[i],height:shouldBeStatic?bs[i]:sMV[i],left:0,top:0,x:shouldBeStatic?(staticPos[i]?.x??50)/100*w-bs[i]/2:xPxArr[i],y:shouldBeStatic?(staticPos[i]?.y??50)/100*h-bs[i]/2:yPxArr[i],backgroundImage:mkGradient(C[i]),mixBlendMode:effectiveBlend,pointerEvents:\"none\",willChange:shouldBeStatic?\"auto\":\"transform\"};return /*#__PURE__*/_jsx(motion.div,{style:style},i);};return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{width:\"100%\",height:\"100%\",position:\"relative\",borderRadius:radius,overflow:\"hidden\",backgroundColor:baseColor},onPointerMove:onPointerMove,onPointerLeave:onPointerLeave,onPointerEnter:onPointerEnter,onPointerDown:onPointerDown,children:/*#__PURE__*/_jsxs(motion.div,{\"aria-hidden\":\"true\",style:{position:\"absolute\",inset:-bleed,filter:containerFilter,willChange:shouldBeStatic?\"auto\":\"transform\"},children:[Array.from({length:8}).map((_,i)=>renderBlob(i)),GrainOverlay]})});}// --------------------------- Grouped Property Controls (order matters) ---------------------------\nconst BLEND_OPTIONS=[\"normal\",\"screen\",\"overlay\",\"plus-lighter\",\"multiply\",\"hard-light\",\"soft-light\",\"color-dodge\",\"color-burn\",\"difference\",\"exclusion\",\"darken\",\"lighten\",\"hue\",\"saturation\",\"color\",\"luminosity\"];addPropertyControls(InteractiveGradientPro,{// (A) Make blobCount the very first property (top-level)\nblobCount:{type:ControlType.Number,title:\"Blob Count\",defaultValue:5,min:1,max:8,step:1},// 1) Colors\ncolorsPanel:{type:ControlType.Object,title:\"Colors\",controls:{color1:{type:ControlType.Color,title:\"Blob 1\",defaultValue:\"#FF5EDB\"},color2:{type:ControlType.Color,title:\"Blob 2\",defaultValue:\"#7B61FF\"},color3:{type:ControlType.Color,title:\"Blob 3\",defaultValue:\"#2EE6A6\"},color4:{type:ControlType.Color,title:\"Blob 4\",defaultValue:\"#FFB86C\"},color5:{type:ControlType.Color,title:\"Blob 5\",defaultValue:\"#61E6FF\"},color6:{type:ControlType.Color,title:\"Blob 6\",defaultValue:\"#B7F8DB\"},color7:{type:ControlType.Color,title:\"Blob 7\",defaultValue:\"#FF6E7F\"},color8:{type:ControlType.Color,title:\"Blob 8\",defaultValue:\"#8E54E9\"}}},// 2) Blob Sizes\nblobSizes:{type:ControlType.Object,title:\"Blob Sizes\",controls:{blob1Size:{type:ControlType.Number,title:\"Blob 1\",defaultValue:1,min:.2,max:3,step:.05},blob2Size:{type:ControlType.Number,title:\"Blob 2\",defaultValue:1,min:.2,max:3,step:.05},blob3Size:{type:ControlType.Number,title:\"Blob 3\",defaultValue:1,min:.2,max:3,step:.05},blob4Size:{type:ControlType.Number,title:\"Blob 4\",defaultValue:1,min:.2,max:3,step:.05},blob5Size:{type:ControlType.Number,title:\"Blob 5\",defaultValue:1,min:.2,max:3,step:.05},blob6Size:{type:ControlType.Number,title:\"Blob 6\",defaultValue:1,min:.2,max:3,step:.05},blob7Size:{type:ControlType.Number,title:\"Blob 7\",defaultValue:1,min:.2,max:3,step:.05},blob8Size:{type:ControlType.Number,title:\"Blob 8\",defaultValue:1,min:.2,max:3,step:.05}}},// 3) Gradient stops\nstops:{type:ControlType.Object,title:\"Gradient Stops\",controls:{innerStop:{type:ControlType.Number,title:\"Inner\",defaultValue:0,min:0,max:60,step:1,unit:\"%\"},middleStop:{type:ControlType.Number,title:\"Middle\",defaultValue:22,min:0,max:80,step:1,unit:\"%\"},outerStop:{type:ControlType.Number,title:\"Outer\",defaultValue:60,min:20,max:100,step:1,unit:\"%\"}}},// 4) Motion (followStrength removed from here)\nmotion:{type:ControlType.Object,title:\"Motion\",controls:{motionMode:{type:ControlType.Enum,title:\"Mode\",options:[\"Orbit\",\"Organic\",\"Lissajous\",\"Figure8\",\"Random\",\"All\"],defaultValue:\"Orbit\"},allTempo:{type:ControlType.Number,title:\"All Tempo\",defaultValue:1,min:.1,max:3,step:.05,hidden:({motion,motionMode})=>(motion?.motionMode??motionMode)!==\"All\"},randomReseedInterval:{type:ControlType.Number,title:\"Random Reseed (s)\",defaultValue:0,min:0,max:30,step:.5,hidden:({motion,motionMode})=>(motion?.motionMode??motionMode)!==\"Random\"},loopDuration:{type:ControlType.Number,title:\"Loop (s)\",defaultValue:16,min:1,max:60,step:.1,unit:\"s\"},orbitRadius:{type:ControlType.Number,title:\"Orbit Radius\",defaultValue:28,min:0,max:48,step:1,unit:\"%\"},primaryMotion:{type:ControlType.Enum,title:\"Primary 1\",options:[\"Off\",\"Orbit\",\"Organic\"],defaultValue:\"Off\"},primaryMotionRadius:{type:ControlType.Number,title:\"Primary Radius\",defaultValue:8,min:0,max:24,step:1,unit:\"%\",hidden:({motion,primaryMotion})=>(motion?.primaryMotion??primaryMotion)===\"Off\"},// blobCount moved to top-level\nscrollInfluence:{type:ControlType.Number,title:\"Scroll FX\",defaultValue:0,min:0,max:1,step:.01}}},// 5) Appearance (make Grain Opacity visible when Grain is true robustly)\nappearance:{type:ControlType.Object,title:\"Appearance\",controls:{blendMode:{type:ControlType.Enum,title:\"Blend\",options:BLEND_OPTIONS,defaultValue:\"screen\"},blur:{type:ControlType.Number,title:\"Blur\",defaultValue:60,min:0,max:160,step:1,unit:\"px\"},brightness:{type:ControlType.Number,title:\"Brightness\",defaultValue:1,min:.2,max:1.4,step:.01},radius:{type:ControlType.Number,title:\"Radius\",defaultValue:20,min:0,max:80,step:1,unit:\"px\"},bleed:{type:ControlType.Number,title:\"Bleed\",defaultValue:0,min:0,max:120,step:1,unit:\"px\"},baseColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#0e0f12\"},grain:{type:ControlType.Boolean,title:\"Grain\",defaultValue:false},grainOpacity:{type:ControlType.Number,title:\"Grain Opacity\",defaultValue:.08,min:0,max:1,step:.01,// show when grain is true (whether read from nested appearance or top-level fallback)\nhidden:p=>{const on=(p?.appearance&&p.appearance.grain)??p?.grain??false;return!on;}}}},// 6) Interaction (followStrength is FIRST here)\ninteraction:{type:ControlType.Object,title:\"Interaction\",controls:{followStrength:{type:ControlType.Number,title:\"Follow\",defaultValue:.35,min:0,max:1,step:.01},hoverReturn:{type:ControlType.Enum,title:\"Hover Return\",options:[\"Instant\",\"Smooth\",\"Distance\"],defaultValue:\"Smooth\"},hoverOverscan:{type:ControlType.Number,title:\"Hover Overscan\",defaultValue:12,min:0,max:48,step:1,unit:\"px\"},hoverInfluence:{type:ControlType.Enum,title:\"Hover Influence\",options:[\"Blob1 only\",\"Weighted all\",\"Center drift\"],defaultValue:\"Blob1 only\"},// Show Blob follow controls when \"Weighted all\" and only up to blobCount\nsecondBlobFollow:{type:ControlType.Number,title:\"Blob2 Follow\",defaultValue:.3,min:0,max:1,step:.01,hidden:({interaction,hoverInfluence,blobCount})=>(interaction?.hoverInfluence??hoverInfluence)!==\"Weighted all\"||(blobCount??5)<2},thirdBlobFollow:{type:ControlType.Number,title:\"Blob3 Follow\",defaultValue:.15,min:0,max:1,step:.01,hidden:({interaction,hoverInfluence,blobCount})=>(interaction?.hoverInfluence??hoverInfluence)!==\"Weighted all\"||(blobCount??5)<3},fourthBlobFollow:{type:ControlType.Number,title:\"Blob4 Follow\",defaultValue:.1,min:0,max:1,step:.01,hidden:({interaction,hoverInfluence,blobCount})=>(interaction?.hoverInfluence??hoverInfluence)!==\"Weighted all\"||(blobCount??5)<4},fifthBlobFollow:{type:ControlType.Number,title:\"Blob5 Follow\",defaultValue:.08,min:0,max:1,step:.01,hidden:({interaction,hoverInfluence,blobCount})=>(interaction?.hoverInfluence??hoverInfluence)!==\"Weighted all\"||(blobCount??5)<5},sixthBlobFollow:{type:ControlType.Number,title:\"Blob6 Follow\",defaultValue:.07,min:0,max:1,step:.01,hidden:({interaction,hoverInfluence,blobCount})=>(interaction?.hoverInfluence??hoverInfluence)!==\"Weighted all\"||(blobCount??5)<6},seventhBlobFollow:{type:ControlType.Number,title:\"Blob7 Follow\",defaultValue:.06,min:0,max:1,step:.01,hidden:({interaction,hoverInfluence,blobCount})=>(interaction?.hoverInfluence??hoverInfluence)!==\"Weighted all\"||(blobCount??5)<7},eighthBlobFollow:{type:ControlType.Number,title:\"Blob8 Follow\",defaultValue:.05,min:0,max:1,step:.01,hidden:({interaction,hoverInfluence,blobCount})=>(interaction?.hoverInfluence??hoverInfluence)!==\"Weighted all\"||(blobCount??5)<8},centerDriftStrength:{type:ControlType.Number,title:\"Center Drift\",defaultValue:.2,min:0,max:1,step:.01,hidden:({interaction,hoverInfluence})=>(interaction?.hoverInfluence??hoverInfluence)!==\"Center drift\"},pulseOnTap:{type:ControlType.Boolean,title:\"Pulse on Tap\",defaultValue:false},pulseStrength:{type:ControlType.Number,title:\"Pulse Strength\",defaultValue:.35,min:0,max:1,step:.01,hidden:({interaction,pulseOnTap})=>!(interaction?.pulseOnTap??pulseOnTap)},enableGyro:{type:ControlType.Boolean,title:\"Gyro\",defaultValue:false},gyroStrength:{type:ControlType.Number,title:\"Gyro Strength\",defaultValue:.25,min:0,max:1,step:.01,hidden:({interaction,enableGyro})=>!(interaction?.enableGyro??enableGyro)}}},// 7) Advanced\nadvanced:{type:ControlType.Object,title:\"Advanced\",controls:{quality:{type:ControlType.Enum,title:\"Quality\",options:[\"Auto\",\"Low\",\"Medium\",\"High\"],defaultValue:\"Auto\"},pauseWhenOffscreen:{type:ControlType.Boolean,title:\"Pause Offscreen\",defaultValue:true},seed:{type:ControlType.Number,title:\"Seed\",defaultValue:1,min:0,max:9999,step:1}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"InteractiveGradientPro\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"600\",\"framerIntrinsicHeight\":\"600\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Gradient_Animation.map"],"mappings":"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"}