{"version":3,"file":"Circle_Cursor.B0pbJgO0.mjs","names":["useRef","useCallback","useState","_Fragment"],"sources":["https:/framerusercontent.com/modules/5aOy4b6nWO9x9kmxP63j/aTQHfQLHloAu1z6wD2ej/Cursor_Animations.js","https:/framerusercontent.com/modules/XQeTsLzmLPvQvFJmNxa6/weXuzi1q3k4xfXMDxSIu/Circle_Cursor.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{useRef,useEffect,useCallback}from\"react\";import{addPropertyControls,ControlType,RenderTarget,useIsStaticRenderer}from\"framer\";const defaultProps={trailStyle:\"constellation\",trailColor:\"#6366f1\",particleSize:6,trailIntensity:6,fadeSpeed:.4,flowSpeed:.6,backgroundColor:\"transparent\",zIndex:0};// Parse any color format to RGB\nfunction parseColor(color){// Default fallback\nconst fallback={r:99,g:102,b:241};if(!color)return fallback;// Handle hex format\nif(color.startsWith(\"#\")){let hex=color.slice(1);// Handle 3-char hex\nif(hex.length===3){hex=hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2];}// Handle 8-char hex (with alpha)\nif(hex.length===8){hex=hex.slice(0,6);}const result=/^([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);if(result){return{r:parseInt(result[1],16),g:parseInt(result[2],16),b:parseInt(result[3],16)};}}// Handle rgb/rgba format\nconst rgbMatch=color.match(/rgba?\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)/);if(rgbMatch){return{r:parseInt(rgbMatch[1]),g:parseInt(rgbMatch[2]),b:parseInt(rgbMatch[3])};}// Handle hsl/hsla format\nconst hslMatch=color.match(/hsla?\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)%?\\s*,\\s*(\\d+)%?/);if(hslMatch){const h=parseInt(hslMatch[1])/360;const s=parseInt(hslMatch[2])/100;const l=parseInt(hslMatch[3])/100;let r,g,b;if(s===0){r=g=b=l;}else{const hue2rgb=(p,q,t)=>{if(t<0)t+=1;if(t>1)t-=1;if(t<1/6)return p+(q-p)*6*t;if(t<1/2)return q;if(t<2/3)return p+(q-p)*(2/3-t)*6;return p;};const q=l<.5?l*(1+s):l+s-l*s;const p=2*l-q;r=hue2rgb(p,q,h+1/3);g=hue2rgb(p,q,h);b=hue2rgb(p,q,h-1/3);}return{r:Math.round(r*255),g:Math.round(g*255),b:Math.round(b*255)};}return fallback;}export default function CursorAnimations(props){const{trailStyle,trailColor,particleSize,trailIntensity,fadeSpeed,flowSpeed,backgroundColor,zIndex,style}=props;// Static preview for canvas/editor\nconst isStatic=useIsStaticRenderer();if(isStatic){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",backgroundColor:\"rgba(0, 153, 255, 0.1)\",overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"div\",{style:{width:5,height:5,backgroundColor:trailColor,borderRadius:\"50%\"}})});}const containerRef=useRef(null);const canvasRef=useRef(null);const particlesRef=useRef([]);const trailPointsRef=useRef([]);const cometSparksRef=useRef([]);const bubblesRef=useRef([]);const animationFrameRef=useRef(null);const mouseRef=useRef({x:0,y:0,lastX:0,lastY:0});const isVisibleRef=useRef(true);const reducedMotionRef=useRef(false);const rgbRef=useRef(parseColor(trailColor));const trailColorRef=useRef(trailColor);const trailStyleRef=useRef(trailStyle);const isCanvas=RenderTarget.current()===RenderTarget.canvas;// Update refs when props change\nuseEffect(()=>{rgbRef.current=parseColor(trailColor);trailColorRef.current=trailColor;},[trailColor]);useEffect(()=>{trailStyleRef.current=trailStyle;// Clear particles when switching styles\nparticlesRef.current=[];trailPointsRef.current=[];cometSparksRef.current=[];bubblesRef.current=[];},[trailStyle]);// Check for reduced motion\nuseEffect(()=>{const mediaQuery=window.matchMedia(\"(prefers-reduced-motion: reduce)\");reducedMotionRef.current=mediaQuery.matches;const handleChange=e=>{reducedMotionRef.current=e.matches;};mediaQuery.addEventListener(\"change\",handleChange);return()=>mediaQuery.removeEventListener(\"change\",handleChange);},[]);// IntersectionObserver\nuseEffect(()=>{if(!containerRef.current)return;const observer=new IntersectionObserver(entries=>{isVisibleRef.current=entries[0].isIntersecting;},{threshold:0});observer.observe(containerRef.current);return()=>observer.disconnect();},[]);// Resize canvas\nuseEffect(()=>{const canvas=canvasRef.current;const container=containerRef.current;if(!canvas||!container)return;const resizeCanvas=()=>{const rect=container.getBoundingClientRect();const dpr=Math.min(window.devicePixelRatio,2);canvas.width=rect.width*dpr;canvas.height=rect.height*dpr;canvas.style.width=`${rect.width}px`;canvas.style.height=`${rect.height}px`;const ctx=canvas.getContext(\"2d\");if(ctx){ctx.scale(dpr,dpr);}};resizeCanvas();window.addEventListener(\"resize\",resizeCanvas);return()=>window.removeEventListener(\"resize\",resizeCanvas);},[]);// Spawn particles\nconst spawnParticles=useCallback((x,y,vx,vy)=>{const now=performance.now();const count=Math.min(trailIntensity,8);for(let i=0;i<count;i++){const angle=Math.PI*2*i/count+Math.random()*.2;const spread=particleSize*.2;particlesRef.current.push({x:x+Math.cos(angle)*spread*Math.random(),y:y+Math.sin(angle)*spread*Math.random(),size:particleSize*(.8+Math.random()*.4),opacity:1,birth:now,vx:vx*flowSpeed*.1+(Math.random()-.5)*8,vy:vy*flowSpeed*.1+(Math.random()-.5)*8});}if(particlesRef.current.length>100){particlesRef.current=particlesRef.current.slice(-100);}},[trailIntensity,particleSize,flowSpeed]);// Mouse tracking - only in preview mode\nuseEffect(()=>{if(reducedMotionRef.current||isCanvas)return;const container=containerRef.current;if(!container)return;let lastTime=performance.now();const handleMouseMove=e=>{const rect=container.getBoundingClientRect();const x=e.clientX-rect.left;const y=e.clientY-rect.top;const now=performance.now();const dt=Math.max((now-lastTime)/1e3,.001);lastTime=now;const vx=(x-mouseRef.current.lastX)/dt;const vy=(y-mouseRef.current.lastY)/dt;mouseRef.current={x,y,lastX:x,lastY:y};const dist=Math.sqrt(vx*vx+vy*vy)*dt;if(dist>1.5){if(trailStyleRef.current===\"constellation\"){spawnParticles(x,y,vx,vy);}else if(trailStyleRef.current===\"ribbon\"){// Ribbon style - add trail points\ntrailPointsRef.current.push({x,y,time:now});const maxPoints=Math.floor(trailIntensity*15);if(trailPointsRef.current.length>maxPoints){trailPointsRef.current=trailPointsRef.current.slice(-maxPoints);}}else if(trailStyleRef.current===\"comet\"){// Comet style - spawn sparkling particles\nconst sparkCount=Math.floor(trailIntensity*.6);for(let i=0;i<sparkCount;i++){const angle=Math.atan2(vy,vx)+Math.PI+(Math.random()-.5)*1.2;const speed=Math.random()*2+.5;cometSparksRef.current.push({x:x+(Math.random()-.5)*6,y:y+(Math.random()-.5)*6,size:particleSize*(.2+Math.random()*.5),opacity:.8+Math.random()*.2,birth:now,vx:Math.cos(angle)*speed,vy:Math.sin(angle)*speed,rotation:Math.random()*Math.PI*2,twinkle:Math.random()*Math.PI*2});}if(cometSparksRef.current.length>120){cometSparksRef.current=cometSparksRef.current.slice(-120);}}else if(trailStyleRef.current===\"bubbles\"){// Bubbles style - spawn floating bubbles\nconst bubbleCount=Math.floor(trailIntensity*.4);for(let i=0;i<bubbleCount;i++){bubblesRef.current.push({x:x+(Math.random()-.5)*20,y:y+(Math.random()-.5)*20,size:particleSize*(.6+Math.random()*1.2),opacity:.4+Math.random()*.3,birth:now,vx:(Math.random()-.5)*2,vy:-Math.random()*2-.5,wobble:Math.random()*Math.PI*2,wobbleSpeed:.03+Math.random()*.04});}if(bubblesRef.current.length>80){bubblesRef.current=bubblesRef.current.slice(-80);}}}};const handleTouchMove=e=>{if(e.touches.length>0){const rect=container.getBoundingClientRect();const x=e.touches[0].clientX-rect.left;const y=e.touches[0].clientY-rect.top;const now=performance.now();const dt=Math.max((now-lastTime)/1e3,.001);lastTime=now;const vx=(x-mouseRef.current.lastX)/dt;const vy=(y-mouseRef.current.lastY)/dt;mouseRef.current={x,y,lastX:x,lastY:y};const dist=Math.sqrt(vx*vx+vy*vy)*dt;if(dist>1.5){if(trailStyleRef.current===\"constellation\"){spawnParticles(x,y,vx,vy);}else if(trailStyleRef.current===\"ribbon\"){// Ribbon style - add trail points\ntrailPointsRef.current.push({x,y,time:now});const maxPoints=Math.floor(trailIntensity*15);if(trailPointsRef.current.length>maxPoints){trailPointsRef.current=trailPointsRef.current.slice(-maxPoints);}}else if(trailStyleRef.current===\"comet\"){// Comet style - spawn sparkling particles\nconst sparkCount=Math.floor(trailIntensity*.6);for(let i=0;i<sparkCount;i++){const angle=Math.atan2(vy,vx)+Math.PI+(Math.random()-.5)*1.2;const speed=Math.random()*2+.5;cometSparksRef.current.push({x:x+(Math.random()-.5)*6,y:y+(Math.random()-.5)*6,size:particleSize*(.2+Math.random()*.5),opacity:.8+Math.random()*.2,birth:now,vx:Math.cos(angle)*speed,vy:Math.sin(angle)*speed,rotation:Math.random()*Math.PI*2,twinkle:Math.random()*Math.PI*2});}if(cometSparksRef.current.length>120){cometSparksRef.current=cometSparksRef.current.slice(-120);}}else if(trailStyleRef.current===\"bubbles\"){// Bubbles style - spawn floating bubbles\nconst bubbleCount=Math.floor(trailIntensity*.4);for(let i=0;i<bubbleCount;i++){bubblesRef.current.push({x:x+(Math.random()-.5)*20,y:y+(Math.random()-.5)*20,size:particleSize*(.6+Math.random()*1.2),opacity:.4+Math.random()*.3,birth:now,vx:(Math.random()-.5)*2,vy:-Math.random()*2-.5,wobble:Math.random()*Math.PI*2,wobbleSpeed:.03+Math.random()*.04});}if(bubblesRef.current.length>80){bubblesRef.current=bubblesRef.current.slice(-80);}}}}};const rect=container.getBoundingClientRect();mouseRef.current={x:rect.width/2,y:rect.height/2,lastX:rect.width/2,lastY:rect.height/2};window.addEventListener(\"mousemove\",handleMouseMove,{passive:true});window.addEventListener(\"touchmove\",handleTouchMove,{passive:true});return()=>{window.removeEventListener(\"mousemove\",handleMouseMove);window.removeEventListener(\"touchmove\",handleTouchMove);};},[spawnParticles,isCanvas,trailIntensity]);// Main animation loop\nuseEffect(()=>{const canvas=canvasRef.current;if(!canvas)return;const ctx=canvas.getContext(\"2d\");if(!ctx)return;// Don't run animation in canvas/editor mode\nif(isCanvas)return;const maxAge=fadeSpeed*1e3;// Draw smooth ribbon trail using bezier curves\nconst drawRibbon=(points,now)=>{if(points.length<2)return;const rgb=rgbRef.current;const baseWidth=particleSize*2;// Filter old points\nconst activePoints=points.filter(p=>now-p.time<maxAge);trailPointsRef.current=activePoints;if(activePoints.length<2)return;// Draw ribbon with gradient thickness\nctx.lineCap=\"round\";ctx.lineJoin=\"round\";for(let i=1;i<activePoints.length;i++){const p0=activePoints[i-1];const p1=activePoints[i];// Calculate age-based opacity and width\nconst age0=(now-p0.time)/maxAge;const age1=(now-p1.time)/maxAge;const opacity=Math.pow(1-age1,2)*.85;const width=baseWidth*(1-age1*.7);if(width<.5)continue;// Create gradient along segment\nconst gradient=ctx.createLinearGradient(p0.x,p0.y,p1.x,p1.y);const opacity0=Math.pow(1-age0,2)*.85;gradient.addColorStop(0,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${opacity0})`);gradient.addColorStop(1,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${opacity})`);ctx.strokeStyle=gradient;ctx.lineWidth=width;ctx.beginPath();ctx.moveTo(p0.x,p0.y);// Smooth curve using control points\nif(i<activePoints.length-1){const p2=activePoints[i+1];const cpX=p1.x;const cpY=p1.y;const endX=(p1.x+p2.x)/2;const endY=(p1.y+p2.y)/2;ctx.quadraticCurveTo(cpX,cpY,endX,endY);}else{ctx.lineTo(p1.x,p1.y);}ctx.stroke();}// Draw glowing tip at the head of the ribbon\nif(activePoints.length>0){const tip=activePoints[activePoints.length-1];const tipGlow=ctx.createRadialGradient(tip.x,tip.y,0,tip.x,tip.y,baseWidth*1.5);tipGlow.addColorStop(0,`rgba(255, 255, 255, 0.8)`);tipGlow.addColorStop(.3,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, 0.6)`);tipGlow.addColorStop(1,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, 0)`);ctx.beginPath();ctx.arc(tip.x,tip.y,baseWidth*1.5,0,Math.PI*2);ctx.fillStyle=tipGlow;ctx.fill();}};// Draw comet style - glowing head with sparkling tail\nconst drawComet=now=>{const rgb=rgbRef.current;const newSparks=[];// Draw sparks (tail)\nfor(const spark of cometSparksRef.current){const age=now-spark.birth;if(age>maxAge)continue;// Update position with slight drift\nspark.x+=spark.vx;spark.y+=spark.vy;spark.vx*=.98;spark.vy*=.98;spark.twinkle+=.15;// Calculate fade\nconst normalizedAge=age/maxAge;const baseFade=Math.pow(1-normalizedAge,2);const twinkleFactor=.7+.3*Math.sin(spark.twinkle);spark.opacity=baseFade*twinkleFactor;const size=spark.size*(1-normalizedAge*.5);if(size<.5)continue;// Draw 4-point star shape for sparkle effect\nctx.save();ctx.translate(spark.x,spark.y);ctx.rotate(spark.rotation+normalizedAge*2);// Inner glow\nconst innerGlow=ctx.createRadialGradient(0,0,0,0,0,size*1.5);innerGlow.addColorStop(0,`rgba(255, 255, 255, ${spark.opacity*.9})`);innerGlow.addColorStop(.3,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${spark.opacity*.7})`);innerGlow.addColorStop(1,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, 0)`);ctx.beginPath();ctx.arc(0,0,size*1.5,0,Math.PI*2);ctx.fillStyle=innerGlow;ctx.fill();// Draw cross sparkle\nctx.strokeStyle=`rgba(255, 255, 255, ${spark.opacity*.6})`;ctx.lineWidth=size*.3;ctx.lineCap=\"round\";// Horizontal line\nctx.beginPath();ctx.moveTo(-size*1.2,0);ctx.lineTo(size*1.2,0);ctx.stroke();// Vertical line\nctx.beginPath();ctx.moveTo(0,-size*1.2);ctx.lineTo(0,size*1.2);ctx.stroke();ctx.restore();newSparks.push(spark);}cometSparksRef.current=newSparks;// Draw comet head (smaller glowing orb)\nconst headX=mouseRef.current.x;const headY=mouseRef.current.y;const headSize=particleSize*1.2;// Outer glow\nconst outerGlow=ctx.createRadialGradient(headX,headY,0,headX,headY,headSize*3);outerGlow.addColorStop(0,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, 0.35)`);outerGlow.addColorStop(.5,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, 0.1)`);outerGlow.addColorStop(1,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, 0)`);ctx.beginPath();ctx.arc(headX,headY,headSize*3,0,Math.PI*2);ctx.fillStyle=outerGlow;ctx.fill();// Middle glow\nconst midGlow=ctx.createRadialGradient(headX,headY,0,headX,headY,headSize*1.5);midGlow.addColorStop(0,`rgba(255, 255, 255, 0.9)`);midGlow.addColorStop(.5,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, 0.7)`);midGlow.addColorStop(1,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, 0)`);ctx.beginPath();ctx.arc(headX,headY,headSize*1.5,0,Math.PI*2);ctx.fillStyle=midGlow;ctx.fill();// Core\nconst coreGlow=ctx.createRadialGradient(headX,headY,0,headX,headY,headSize*.7);coreGlow.addColorStop(0,`rgba(255, 255, 255, 1)`);coreGlow.addColorStop(.6,`rgba(255, 255, 255, 0.8)`);coreGlow.addColorStop(1,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, 0.5)`);ctx.beginPath();ctx.arc(headX,headY,headSize*.7,0,Math.PI*2);ctx.fillStyle=coreGlow;ctx.fill();};// Draw bubbles style - floating translucent bubbles\nconst drawBubbles=now=>{const rgb=rgbRef.current;const newBubbles=[];for(const bubble of bubblesRef.current){const age=now-bubble.birth;if(age>maxAge*1.5)continue;// Update position with wobble\nbubble.wobble+=bubble.wobbleSpeed;bubble.x+=bubble.vx+Math.sin(bubble.wobble)*.5;bubble.y+=bubble.vy;bubble.vy*=.995// Slow rise\n;bubble.vx*=.98;// Calculate fade\nconst normalizedAge=age/(maxAge*1.5);const fadeOut=normalizedAge>.7?1-(normalizedAge-.7)/.3:1;bubble.opacity=bubble.opacity*fadeOut;const size=bubble.size*(1+normalizedAge*.3)// Grow slightly\n;if(bubble.opacity<.05)continue;// Draw bubble with highlight\nctx.save();// Outer ring\nctx.beginPath();ctx.arc(bubble.x,bubble.y,size,0,Math.PI*2);ctx.strokeStyle=`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${bubble.opacity*.6})`;ctx.lineWidth=1.5;ctx.stroke();// Inner fill - translucent\nconst bubbleGradient=ctx.createRadialGradient(bubble.x-size*.3,bubble.y-size*.3,0,bubble.x,bubble.y,size);bubbleGradient.addColorStop(0,`rgba(255, 255, 255, ${bubble.opacity*.3})`);bubbleGradient.addColorStop(.5,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${bubble.opacity*.15})`);bubbleGradient.addColorStop(1,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${bubble.opacity*.05})`);ctx.beginPath();ctx.arc(bubble.x,bubble.y,size,0,Math.PI*2);ctx.fillStyle=bubbleGradient;ctx.fill();// Highlight reflection\nconst highlightSize=size*.35;const highlightX=bubble.x-size*.35;const highlightY=bubble.y-size*.35;const highlight=ctx.createRadialGradient(highlightX,highlightY,0,highlightX,highlightY,highlightSize);highlight.addColorStop(0,`rgba(255, 255, 255, ${bubble.opacity*.7})`);highlight.addColorStop(1,`rgba(255, 255, 255, 0)`);ctx.beginPath();ctx.arc(highlightX,highlightY,highlightSize,0,Math.PI*2);ctx.fillStyle=highlight;ctx.fill();// Small secondary highlight\nconst smallHighlightX=bubble.x+size*.25;const smallHighlightY=bubble.y+size*.3;const smallHighlightSize=size*.15;ctx.beginPath();ctx.arc(smallHighlightX,smallHighlightY,smallHighlightSize,0,Math.PI*2);ctx.fillStyle=`rgba(255, 255, 255, ${bubble.opacity*.4})`;ctx.fill();ctx.restore();newBubbles.push(bubble);}bubblesRef.current=newBubbles;// Draw subtle cursor indicator\nconst cursorX=mouseRef.current.x;const cursorY=mouseRef.current.y;const cursorSize=particleSize*.8;const cursorGlow=ctx.createRadialGradient(cursorX,cursorY,0,cursorX,cursorY,cursorSize*2);cursorGlow.addColorStop(0,`rgba(255, 255, 255, 0.5)`);cursorGlow.addColorStop(.5,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, 0.3)`);cursorGlow.addColorStop(1,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, 0)`);ctx.beginPath();ctx.arc(cursorX,cursorY,cursorSize*2,0,Math.PI*2);ctx.fillStyle=cursorGlow;ctx.fill();};// Draw constellation style (existing)\nconst drawConstellation=now=>{const newParticles=[];const rgb=rgbRef.current;// Draw particles - crisp and clean\nfor(const particle of particlesRef.current){const age=now-particle.birth;if(age>maxAge)continue;// Update physics\nparticle.vx*=.96;particle.vy*=.96;particle.x+=particle.vx*.016;particle.y+=particle.vy*.016;// Calculate fade with smooth easing\nconst normalizedAge=age/maxAge;particle.opacity=Math.pow(1-normalizedAge,1.5);const size=particle.size*(1-normalizedAge*.2);// Draw crisp particle with subtle gradient\nconst gradient=ctx.createRadialGradient(particle.x,particle.y,0,particle.x,particle.y,size);gradient.addColorStop(0,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${particle.opacity})`);gradient.addColorStop(.7,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${particle.opacity*.6})`);gradient.addColorStop(1,`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, 0)`);ctx.beginPath();ctx.arc(particle.x,particle.y,size,0,Math.PI*2);ctx.fillStyle=gradient;ctx.fill();newParticles.push(particle);}// Draw elegant connections\nconst connectLimit=Math.min(newParticles.length,40);ctx.lineWidth=1;for(let i=0;i<connectLimit;i++){const p1=newParticles[i];for(let j=i+1;j<Math.min(i+5,connectLimit);j++){const p2=newParticles[j];const dx=p2.x-p1.x;const dy=p2.y-p1.y;const dist=Math.sqrt(dx*dx+dy*dy);if(dist<particleSize*5){const opacity=(1-dist/(particleSize*5))*p1.opacity*p2.opacity*.5;ctx.strokeStyle=`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${opacity})`;ctx.beginPath();ctx.moveTo(p1.x,p1.y);ctx.lineTo(p2.x,p2.y);ctx.stroke();}}}particlesRef.current=newParticles;// Draw cursor dot - clean and elegant\nconst cursorSize=particleSize*1.5;const rgb2=rgbRef.current;// Soft glow\nconst glowGradient=ctx.createRadialGradient(mouseRef.current.x,mouseRef.current.y,0,mouseRef.current.x,mouseRef.current.y,cursorSize*2.5);glowGradient.addColorStop(0,`rgba(${rgb2.r}, ${rgb2.g}, ${rgb2.b}, 0.4)`);glowGradient.addColorStop(1,`rgba(${rgb2.r}, ${rgb2.g}, ${rgb2.b}, 0)`);ctx.beginPath();ctx.arc(mouseRef.current.x,mouseRef.current.y,cursorSize*2.5,0,Math.PI*2);ctx.fillStyle=glowGradient;ctx.fill();// Core dot\nconst coreGradient=ctx.createRadialGradient(mouseRef.current.x,mouseRef.current.y,0,mouseRef.current.x,mouseRef.current.y,cursorSize);coreGradient.addColorStop(0,`rgba(255, 255, 255, 0.9)`);coreGradient.addColorStop(.3,trailColorRef.current);coreGradient.addColorStop(1,`rgba(${rgb2.r}, ${rgb2.g}, ${rgb2.b}, 0.8)`);ctx.beginPath();ctx.arc(mouseRef.current.x,mouseRef.current.y,cursorSize,0,Math.PI*2);ctx.fillStyle=coreGradient;ctx.fill();};const animate=()=>{if(!isVisibleRef.current||reducedMotionRef.current){animationFrameRef.current=requestAnimationFrame(animate);return;}const now=performance.now();const rect=containerRef.current?.getBoundingClientRect();const width=rect?.width||600;const height=rect?.height||400;ctx.clearRect(0,0,width,height);if(trailStyleRef.current===\"ribbon\"){drawRibbon(trailPointsRef.current,now);}else if(trailStyleRef.current===\"comet\"){drawComet(now);}else if(trailStyleRef.current===\"bubbles\"){drawBubbles(now);}else{drawConstellation(now);}animationFrameRef.current=requestAnimationFrame(animate);};animationFrameRef.current=requestAnimationFrame(animate);return()=>{if(animationFrameRef.current){cancelAnimationFrame(animationFrameRef.current);}};},[fadeSpeed,particleSize,isCanvas]);const containerStyle={position:\"fixed\",top:0,left:0,width:\"100vw\",height:\"100vh\",overflow:\"hidden\",pointerEvents:\"none\",zIndex:zIndex,backgroundColor:backgroundColor};return /*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:containerStyle,children:/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",pointerEvents:\"none\"}})});}CursorAnimations.defaultProps=defaultProps;addPropertyControls(CursorAnimations,{trailStyle:{type:ControlType.Enum,title:\"Trail Style\",options:[\"constellation\",\"ribbon\",\"comet\",\"bubbles\"],optionTitles:[\"Constellation\",\"Ribbon\",\"Comet\",\"Bubbles\"],defaultValue:defaultProps.trailStyle},trailColor:{type:ControlType.Color,title:\"Trail Color\",defaultValue:defaultProps.trailColor},backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:defaultProps.backgroundColor},zIndex:{type:ControlType.Number,title:\"Z-Index\",defaultValue:defaultProps.zIndex,min:-10,max:100,step:1},particleSize:{type:ControlType.Number,title:\"Particle Size\",min:3,max:12,step:1,defaultValue:defaultProps.particleSize,unit:\"px\",displayStepper:true},trailIntensity:{type:ControlType.Number,title:\"Trail Intensity\",min:3,max:10,step:1,defaultValue:defaultProps.trailIntensity,displayStepper:true,description:\"Number of particles per movement\"},fadeSpeed:{type:ControlType.Number,title:\"Fade Speed\",min:.2,max:1,step:.1,defaultValue:defaultProps.fadeSpeed,unit:\"s\",displayStepper:true,description:\"How quickly particles fade\"},flowSpeed:{type:ControlType.Number,title:\"Flow Speed\",min:.3,max:1.2,step:.1,defaultValue:defaultProps.flowSpeed,displayStepper:true,description:\"Particle flow velocity\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CursorAnimations\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Cursor_Animations.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useState,useEffect}from\"react\";import{addPropertyControls,ControlType}from\"framer\";export default function CustomCursor(props){const[position,setPosition]=useState({x:0,y:0});const[hidden,setHidden]=useState(true);const[linkHovered,setLinkHovered]=useState(false);const[clicked,setClicked]=useState(false);useEffect(()=>{// Only show on desktop devices if hideOnMobile is enabled\nconst isMobile=/iPhone|iPad|iPod|Android/i.test(navigator.userAgent);if(isMobile&&props.hideOnMobile)return;// Hide default cursor\ndocument.body.style.cursor=\"none\";// Apply to all elements\nconst styleElement=document.createElement(\"style\");styleElement.innerHTML=`* { cursor: none !important; }`;document.head.appendChild(styleElement);const addEventListeners=()=>{document.addEventListener(\"mousemove\",onMouseMove);document.addEventListener(\"mouseenter\",onMouseEnter);document.addEventListener(\"mouseleave\",onMouseLeave);document.addEventListener(\"mousedown\",onMouseDown);document.addEventListener(\"mouseup\",onMouseUp);};const removeEventListeners=()=>{document.removeEventListener(\"mousemove\",onMouseMove);document.removeEventListener(\"mouseenter\",onMouseEnter);document.removeEventListener(\"mouseleave\",onMouseLeave);document.removeEventListener(\"mousedown\",onMouseDown);document.removeEventListener(\"mouseup\",onMouseUp);};const onMouseMove=e=>{setPosition({x:e.clientX,y:e.clientY});setHidden(false);};const onMouseEnter=()=>{setHidden(false);};const onMouseLeave=()=>{setHidden(true);};const onMouseDown=()=>{setClicked(true);};const onMouseUp=()=>{setClicked(false);};// Check for link hover - updated to handle Framer's dynamic content\nconst handleLinkHoverEvents=()=>{const updateLinkHover=()=>{document.querySelectorAll('a, button, [data-framer-name*=\"button\"], [role=\"button\"]').forEach(el=>{el.addEventListener(\"mouseenter\",()=>setLinkHovered(true));el.addEventListener(\"mouseleave\",()=>setLinkHovered(false));});};updateLinkHover();// Re-run when DOM changes (for dynamic Framer content)\nconst observer=new MutationObserver(updateLinkHover);observer.observe(document.body,{childList:true,subtree:true});return()=>observer.disconnect();};addEventListeners();const cleanupLinkEvents=handleLinkHoverEvents();return()=>{removeEventListeners();cleanupLinkEvents?.();// Restore default cursor on cleanup\ndocument.body.style.cursor=\"auto\";styleElement.remove();};},[props.hideOnMobile]);// Only show on desktop devices if hideOnMobile is enabled\nif(typeof window===\"undefined\")return null;const isMobile=/iPhone|iPad|iPod|Android/i.test(navigator.userAgent);if(isMobile&&props.hideOnMobile)return null;const currentScale=linkHovered?props.hoverScale:clicked?props.clickScale:1;const transitionSpeed=`${props.animationDuration}ms`;return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"fixed\",left:0,top:0,width:`${props.dotSize}px`,height:`${props.dotSize}px`,backgroundColor:props.dotColor,borderRadius:\"50%\",transform:`translate(${position.x-props.dotSize/2}px, ${position.y-props.dotSize/2}px)`,pointerEvents:\"none\",zIndex:1e4,mixBlendMode:props.blendMode,opacity:hidden?0:props.opacity,transition:`opacity ${transitionSpeed} ease`}}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"fixed\",left:0,top:0,width:`${props.ringSize}px`,height:`${props.ringSize}px`,border:`${props.ringBorderWidth}px solid ${props.ringColor}`,borderRadius:\"50%\",transform:`translate(${position.x-props.ringSize/2}px, ${position.y-props.ringSize/2}px) scale(${currentScale})`,pointerEvents:\"none\",zIndex:9999,mixBlendMode:props.blendMode,opacity:hidden?0:props.opacity,transition:`all ${transitionSpeed} ease`,backgroundColor:\"transparent\"}})]});}// Framer property controls\naddPropertyControls(CustomCursor,{dotSize:{type:ControlType.Number,defaultValue:6,min:2,max:20,step:1,displayStepper:true,title:\"Dot Size\"},dotColor:{type:ControlType.Color,defaultValue:\"#ffffff\",title:\"Dot Color\"},ringSize:{type:ControlType.Number,defaultValue:32,min:10,max:100,step:2,displayStepper:true,title:\"Ring Size\"},ringColor:{type:ControlType.Color,defaultValue:\"#ffffff\",title:\"Ring Color\"},ringBorderWidth:{type:ControlType.Number,defaultValue:1,min:1,max:5,step:1,displayStepper:true,title:\"Ring Border Width\"},hoverScale:{type:ControlType.Number,defaultValue:1.5,min:.5,max:3,step:.1,displayStepper:true,title:\"Hover Scale\"},clickScale:{type:ControlType.Number,defaultValue:.75,min:.2,max:2,step:.05,displayStepper:true,title:\"Click Scale\"},animationDuration:{type:ControlType.Number,defaultValue:200,min:50,max:1e3,step:50,displayStepper:true,title:\"Animation Duration (ms)\"},blendMode:{type:ControlType.Enum,defaultValue:\"difference\",options:[\"normal\",\"multiply\",\"screen\",\"overlay\",\"darken\",\"lighten\",\"color-dodge\",\"color-burn\",\"hard-light\",\"soft-light\",\"difference\",\"exclusion\"],optionTitles:[\"Normal\",\"Multiply\",\"Screen\",\"Overlay\",\"Darken\",\"Lighten\",\"Color Dodge\",\"Color Burn\",\"Hard Light\",\"Soft Light\",\"Difference\",\"Exclusion\"],title:\"Blend Mode\"},opacity:{type:ControlType.Number,defaultValue:1,min:0,max:1,step:.1,displayStepper:true,title:\"Opacity\"},hideOnMobile:{type:ControlType.Boolean,defaultValue:true,title:\"Hide on Mobile\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CustomCursor\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Circle_Cursor.map"],"mappings":"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"}