@moontra/moonui-pro 3.3.19 → 3.3.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cdn/index.global.js
CHANGED
|
@@ -808,7 +808,7 @@ ${e.description}`:e.title;e.variant==="destructive"?console.error(t):console.log
|
|
|
808
808
|
.dot-pattern-rotate {
|
|
809
809
|
animation: dot-pattern-rotate ${c*10}s linear infinite;
|
|
810
810
|
}
|
|
811
|
-
`}}),e&&(0,hn.jsx)("div",{className:"relative z-10",children:e})]})},Wne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,hn.jsx)(ze,{componentName:"DotPattern",compact:!0,className:"inline-block"}):(0,hn.jsx)(A$t,{...e})};Wne.displayName="DotPattern";var $i=F(ge(),1);var m1=F(le(),1);var I$t=({children:e,className:t,containerClassName:r,columns:n=15,rows:o=15,color:a="#ffffff",lineWidth:i=1,opacity:s=.3,backgroundColor:l="transparent",distortion:c=!0,distortionType:u="wave",amplitude:d=20,frequency:f=.01,speed:p=1,interactive:m=!0,mouseRadius:h=150,mouseStrength:g=30,perspective:v=!1,perspectiveDepth:y=1e3,rotateX:b=0,rotateY:w=0,glow:x=!1,glowIntensity:C=10,glowColor:k,gradient:T=!1,gradientColors:_=["#00d4ff","#ff00ff","#ffff00"],responsive:B=!0,fps:O=30,blur:L=0})=>{let V=(0,$i.useRef)(null),$=(0,$i.useRef)(null),R=(0,$i.useRef)(void 0),N=(0,$i.useRef)([]),S=(0,$i.useRef)({x:-1e3,y:-1e3}),E=(0,$i.useRef)(0),A=(0,$i.useRef)(0),P=(0,$i.useRef)(!0),I=1e3/O,M=(0,$i.useCallback)(()=>{let X=[];for(let ie=0;ie<=o;ie++){let ee=[];for(let re=0;re<=n;re++){let Z=re/n,J=ie/o;ee.push({x:Z,y:J,originalX:Z,originalY:J,offsetX:0,offsetY:0})}X.push(ee)}N.current=X},[n,o]),U=(0,$i.useCallback)(X=>{let ie=N.current;if(!ie.length||!c)return;let ee=E.current,re=X.width,Z=X.height;for(let J=0;J<=o;J++)for(let Q=0;Q<=n;Q++){let ne=ie[J][Q],ae=0,se=0;switch(u){case"wave":ae=Math.sin((ne.originalY*Math.PI*2+ee)*f*50)*d/re,se=Math.cos((ne.originalX*Math.PI*2+ee)*f*50)*d/Z*.5;break;case"ripple":let q=.5,te=.5,ue=ne.originalX-q,ce=ne.originalY-te,xe=Math.sqrt(ue*ue+ce*ce),be=Math.sin(xe*10-ee*2)*d/re;ae=ue*be,se=ce*be;break;case"turbulence":let ye=ne.originalX*10+ee,Ce=ne.originalY*10+ee;ae=Math.sin(ye)*Math.cos(Ce*2)*d/re,se=Math.cos(ye*1.5)*Math.sin(Ce)*d/Z;break;case"spiral":let de=.5,Ie=.5,Te=ne.originalX-de,Pe=ne.originalY-Ie,Re=Math.sqrt(Te*Te+Pe*Pe),fe=Math.atan2(Pe,Te)+Re*5-ee;ae=Math.cos(fe)*d/re*Re,se=Math.sin(fe)*d/Z*Re;break;case"noise":let pe=ne.originalX*10+ee,ke=ne.originalY*10+ee;ae=Math.sin(pe*2.1)*Math.cos(ke*1.3)*d/re,se=Math.cos(pe*1.7)*Math.sin(ke*2.3)*d/Z;break}if(m&&S.current.x>=0){let q=ne.originalX*re-S.current.x,te=ne.originalY*Z-S.current.y,ue=Math.sqrt(q*q+te*te);if(ue<h){let ce=1-ue/h,xe=ce*ce*g;ae+=q/ue*xe/re,se+=te/ue*xe/Z}}let Y=.15;ne.offsetX+=(ae-ne.offsetX)*Y,ne.offsetY+=(se-ne.offsetY)*Y,ne.x=ne.originalX+ne.offsetX,ne.y=ne.originalY+ne.offsetY}},[c,u,d,f,o,n,m,h,g]),z=(0,$i.useCallback)((X,ie,ee,re)=>{if(!v)return{x:X,y:ie};let Z=ee/2,J=re/2,Q=Math.cos(b*Math.PI/180),ne=Math.sin(b*Math.PI/180),ae=Math.cos(w*Math.PI/180),se=Math.sin(w*Math.PI/180),Y=X-Z,q=ie-J,te=-Y*se;Y=Y*ae;let ue=q*Q-te*ne,ce=q*ne+te*Q,xe=y/(y+ce);return Y=Y*xe+Z,q=ue*xe+J,{x:Y,y:q}},[v,y,b,w]),W=(0,$i.useCallback)((X,ie)=>{let ee=N.current;if(!ee.length)return;let re=ie.width,Z=ie.height;X.clearRect(0,0,re,Z),l!=="transparent"&&(X.fillStyle=l,X.fillRect(0,0,re,Z)),X.strokeStyle=T?J(X,re,Z):a,X.lineWidth=i,X.globalAlpha=s,X.lineCap="round",X.lineJoin="round",L>0&&(X.filter=`blur(${L}px)`),x&&(X.shadowBlur=C,X.shadowColor=k||a),X.beginPath();for(let Q=0;Q<=o;Q++)for(let ne=0;ne<=n;ne++){let ae=ee[Q][ne],se=ae.x*re,Y=ae.y*Z,q=z(se,Y,re,Z);ne===0?X.moveTo(q.x,q.y):X.lineTo(q.x,q.y)}for(let Q=0;Q<=n;Q++)for(let ne=0;ne<=o;ne++){let ae=ee[ne][Q],se=ae.x*re,Y=ae.y*Z,q=z(se,Y,re,Z);ne===0?X.moveTo(q.x,q.y):X.lineTo(q.x,q.y)}X.stroke(),x&&(X.shadowBlur=0),L>0&&(X.filter="none");function J(Q,ne,ae){let se=Q.createLinearGradient(0,0,ne,ae);return _.forEach((Y,q)=>{se.addColorStop(q/(_.length-1),Y)}),se}},[o,n,a,i,s,x,C,k,T,_,L,l,z]),H=(0,$i.useCallback)(X=>{let ie=V.current,ee=ie?.getContext("2d");if(!ie||!ee||!P.current){R.current=requestAnimationFrame(H);return}let re=X-A.current;if(re<I){R.current=requestAnimationFrame(H);return}A.current=X-re%I,E.current+=p*.016,U(ie),W(ee,ie),R.current=requestAnimationFrame(H)},[U,W,p,I]),j=(0,$i.useCallback)(()=>{let X=V.current,ie=$.current;if(!X||!ie)return;let ee=ie.getBoundingClientRect(),re=window.devicePixelRatio||1;X.style.width="100%",X.style.height="100%",X.width=ee.width*re,X.height=ee.height*re;let Z=X.getContext("2d");Z&&(Z.scale(re,re),X.width=ee.width,X.height=ee.height),M()},[M]),K=(0,$i.useCallback)(X=>{let ie=V.current;if(!ie)return;let ee=ie.getBoundingClientRect();S.current.x=X.clientX-ee.left,S.current.y=X.clientY-ee.top},[]),G=(0,$i.useCallback)(()=>{S.current.x=-1e3,S.current.y=-1e3},[]);return(0,$i.useEffect)(()=>{if(!B)return;let X=$.current;if(!X)return;let ie=new ResizeObserver(()=>{j()});return ie.observe(X),()=>ie.disconnect()},[j,B]),(0,$i.useEffect)(()=>{let X=$.current;if(!X)return;let ie=new IntersectionObserver(([ee])=>{P.current=ee.isIntersecting},{threshold:.1});return ie.observe(X),()=>ie.disconnect()},[]),(0,$i.useEffect)(()=>{let X=V.current,ie=$.current;if(!(!X||!ie))return j(),m&&(X.addEventListener("mousemove",K),X.addEventListener("mouseleave",G)),R.current=requestAnimationFrame(H),()=>{R.current&&cancelAnimationFrame(R.current),X&&(X.removeEventListener("mousemove",K),X.removeEventListener("mouseleave",G))}},[j,K,G,H,m]),(0,m1.jsxs)("div",{ref:$,className:D("relative w-full h-full overflow-hidden",r),style:{backgroundColor:l==="transparent"?void 0:l},children:[(0,m1.jsx)("canvas",{ref:V,className:D("absolute inset-0 w-full h-full",t),style:{imageRendering:"crisp-edges"}}),e&&(0,m1.jsx)("div",{className:"relative z-10",children:e})]})},qne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,m1.jsx)(ze,{componentName:"GridDistortion",compact:!0,className:"inline-block"}):(0,m1.jsx)(I$t,{...e})};qne.displayName="GridDistortion";var md=F(ge(),1);var h1=F(le(),1);var L$t=({children:e,className:t,containerClassName:r,layers:n=3,colors:o=["#0066cc","#0052a3","#003d7a"],amplitude:a=50,frequency:i=2,speed:s=.5,opacity:l=.5,backgroundColor:c="transparent",waveStyle:u="smooth",parallax:d=!0,parallaxIntensity:f=.5,direction:p="horizontal",blur:m=0,gradient:h=!0,gradientType:g="linear",animationType:v="continuous",interactive:y=!1,mouseRadius:b=150,fps:w=60})=>{let x=(0,md.useRef)(null),C=(0,md.useRef)(void 0),k=(0,md.useRef)([]),T=(0,md.useRef)({x:0,y:0}),_=(0,md.useRef)(0),B=(0,md.useRef)(0),O=1e3/w,L=(0,md.useCallback)(()=>{let A=[];for(let P=0;P<n;P++){let I=P/n;A.push({amplitude:a*(1-I*(d?f:0)),frequency:i*(1+I*.2),speed:s*(1-I*(d?f*.5:0)),phase:Math.PI*2*P/n,color:o[P%o.length]})}k.current=A},[n,a,i,s,d,f,o]),V=(A,P,I,M=0)=>{let U=0;switch(u){case"smooth":U=Math.sin((A*P.frequency+I*P.speed+P.phase)*.01)*P.amplitude;break;case"sharp":let z=(A*P.frequency+I*P.speed+P.phase)*.01;U=(Math.sin(z)>0?1:-1)*P.amplitude;break;case"turbulent":U=Math.sin((A*P.frequency+I*P.speed+P.phase)*.01)*P.amplitude,U+=Math.sin((A*P.frequency*2.3+I*P.speed*1.5)*.01)*P.amplitude*.3,U+=Math.sin((A*P.frequency*3.7+I*P.speed*.7)*.01)*P.amplitude*.2;break;case"organic":U=Math.sin((A*P.frequency+I*P.speed+P.phase)*.01)*P.amplitude,U*=1+Math.sin(A*.003+I*.001)*.2;break}return y&&M>0&&(U+=M*20),U},$=(A,P,I,M)=>{let U=_.current;if(A.save(),m>0&&(A.filter=`blur(${m*(1-I/n)}px)`),h){let z;g==="radial"?z=A.createRadialGradient(M.width/2,M.height/2,0,M.width/2,M.height/2,M.width/2):p==="vertical"?z=A.createLinearGradient(0,0,0,M.height):p==="diagonal"?z=A.createLinearGradient(0,0,M.width,M.height):z=A.createLinearGradient(0,0,M.width,0);let W=P.color,H=P.color;if(P.color.startsWith("rgba")){let j=P.color.match(/rgba?\((\d+),\s*(\d+),\s*(\d+)/);j&&(W=`rgba(${j[1]}, ${j[2]}, ${j[3]}, 0)`,H=`rgba(${j[1]}, ${j[2]}, ${j[3]}, ${l})`)}else if(P.color.startsWith("#")){let j=Math.floor(l*255).toString(16).padStart(2,"0");W=P.color+"00",H=P.color+j}else W=P.color,H=P.color;z.addColorStop(0,W),z.addColorStop(.5,H),z.addColorStop(1,W),A.fillStyle=z}else A.fillStyle=P.color,A.globalAlpha=l*(1-I*.2/n);if(A.beginPath(),p==="vertical"){A.moveTo(0,0);for(let z=0;z<=M.height;z+=5){let W=y?R(M.width/2,z):0,H=M.width/2+V(z,P,U,W);A.lineTo(H,z)}A.lineTo(M.width,M.height),A.lineTo(M.width,0)}else if(p==="diagonal"){let z=Math.sqrt(M.width*M.width+M.height*M.height);A.moveTo(0,M.height);for(let W=0;W<=z;W+=5){let H=W/z*M.width,j=W/z*M.height,K=y?R(H,j):0,G=V(W,P,U,K);A.lineTo(H,M.height-j+G)}A.lineTo(M.width,0),A.lineTo(M.width,M.height)}else{A.moveTo(0,M.height);for(let z=0;z<=M.width;z+=5){let W=y?R(z,M.height/2):0,H=M.height/2+V(z,P,U,W);A.lineTo(z,H)}A.lineTo(M.width,M.height)}A.closePath(),A.fill(),A.restore()},R=(A,P)=>{let I=A-T.current.x,M=P-T.current.y,U=Math.sqrt(I*I+M*M);return U<b?(1-U/b)*Math.sin(_.current*.01):0},N=(0,md.useCallback)(A=>{let P=x.current;if(!P)return;let I=P.getContext("2d",{alpha:!0,desynchronized:!0});if(!I)return;if(A-B.current<O){C.current=requestAnimationFrame(N);return}B.current=A,v==="continuous"?_.current+=1:v==="pulse"?_.current+=1+Math.sin(A*.001)*.5:v==="breathe"&&(_.current+=.5+Math.sin(A*5e-4)*.5),I.clearRect(0,0,P.width,P.height);let U=k.current;for(let z=U.length-1;z>=0;z--)$(I,U[z],z,P);C.current=requestAnimationFrame(N)},[O,v]),S=(0,md.useCallback)(()=>{let A=x.current;if(!A)return;let P=A.getBoundingClientRect();A.width=P.width,A.height=P.height,L()},[L]),E=(0,md.useCallback)(A=>{let P=x.current;if(!P)return;let I=P.getBoundingClientRect();T.current={x:A.clientX-I.left,y:A.clientY-I.top}},[]);return(0,md.useEffect)(()=>{let A=x.current;if(!A)return;let P=A.getBoundingClientRect();return A.width=P.width,A.height=P.height,L(),window.addEventListener("resize",S),y&&window.addEventListener("mousemove",E),C.current=requestAnimationFrame(N),()=>{window.removeEventListener("resize",S),window.removeEventListener("mousemove",E),C.current&&cancelAnimationFrame(C.current)}},[L,S,E,N,y]),(0,h1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),style:{backgroundColor:c},children:[(0,h1.jsx)("canvas",{ref:x,className:D("absolute inset-0 w-full h-full",t)}),e&&(0,h1.jsx)("div",{className:"relative z-10",children:e})]})},Gne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,h1.jsx)(ze,{componentName:"Waves",compact:!0,className:"inline-block"}):(0,h1.jsx)(L$t,{...e})};Gne.displayName="Waves";var Xl=F(ge(),1);var g1=F(le(),1);var D$t=({children:e,className:t,containerClassName:r,colors:n=["#667eea","#764ba2","#f093fb","#c471ed","#12c2e9"],speed:o=5,angle:a=45,type:i="linear",animationStyle:s="flow",blur:l=0,opacity:c=1,steps:u=10,noise:d=!1,noiseOpacity:f=.05,interactive:p=!1,mouseRadius:m=200,parallax:h=!1,parallaxIntensity:g=.5,scale:v=1,blendMode:y="normal",smooth:b=!0,fps:w=60})=>{let x=(0,Xl.useRef)(null),C=(0,Xl.useRef)(void 0),k=(0,Xl.useRef)([]),T=(0,Xl.useRef)({x:0,y:0}),_=(0,Xl.useRef)(0),B=(0,Xl.useRef)(0),O=1e3/w,L=(0,Xl.useCallback)(()=>{let E=x.current;if(!E)return;let A=[],P=Math.ceil(Math.sqrt(u));for(let I=0;I<u;I++){let M=I%P/(P-1),U=Math.floor(I/P)/(P-1);A.push({x:M*E.width,y:U*E.height,color:n[I%n.length],radius:E.width/P*v,velocity:{x:(Math.random()-.5)*o,y:(Math.random()-.5)*o}})}k.current=A},[n,u,o,v]),V=(0,Xl.useCallback)(E=>{k.current.forEach(P=>{if(s==="flow")P.x+=P.velocity.x,P.y+=P.velocity.y,(P.x<=0||P.x>=E.width)&&(P.velocity.x*=-1),(P.y<=0||P.y>=E.height)&&(P.velocity.y*=-1);else if(s==="morph"){let I=_.current*.01;P.x+=Math.sin(I+P.x*.01)*o*.5,P.y+=Math.cos(I+P.y*.01)*o*.5}else if(s==="rotate"){let I=E.width/2,M=E.height/2,U=P.x-I,z=P.y-M,W=Math.atan2(z,U)+o*.001,H=Math.sqrt(U*U+z*z);P.x=I+Math.cos(W)*H,P.y=M+Math.sin(W)*H}if(p){let I=P.x-T.current.x,M=P.y-T.current.y,U=Math.sqrt(I*I+M*M);if(U<m){let z=(1-U/m)*2;P.x+=I/U*z,P.y+=M/U*z}}})},[s,o,p,m]),$=(0,Xl.useCallback)((E,A)=>{if(E.globalCompositeOperation=y,E.globalAlpha=c,i==="mesh")k.current.forEach((I,M)=>{let U=E.createRadialGradient(I.x,I.y,0,I.x,I.y,I.radius),z=n[(M+1)%n.length];U.addColorStop(0,I.color),U.addColorStop(1,z+"00"),E.fillStyle=U,E.fillRect(0,0,A.width,A.height)});else if(i==="radial"){let P=_.current*.01,I=A.width/2+Math.sin(P)*A.width*.1,M=A.height/2+Math.cos(P)*A.height*.1,U=Math.min(A.width,A.height)*v,z=E.createRadialGradient(I,M,0,I,M,U);n.forEach((W,H)=>{let j=H/(n.length-1),K=s==="pulse"?j*(1+Math.sin(P*.5)*.2):j;z.addColorStop(Math.min(1,K),W)}),E.fillStyle=z,E.fillRect(0,0,A.width,A.height)}else if(i==="conic"){let P=A.width/2,I=A.height/2,M=_.current*.01;for(let U=0;U<360;U+=5){let z=(U+M*o*10)%360*Math.PI/180,W=Math.floor(U/360*n.length);E.save(),E.translate(P,I),E.rotate(z);let H=E.createLinearGradient(0,0,A.width,0);H.addColorStop(0,n[W]),H.addColorStop(1,n[(W+1)%n.length]),E.fillStyle=H,E.fillRect(0,-A.height,A.width,A.height*2),E.restore()}}else{let P=_.current*.01,I=0,M=0,U=A.width,z=A.height;if(s==="flow"){let H=P*o*10;I=Math.sin(H*.01)*A.width*.5,M=Math.cos(H*.01)*A.height*.5}else if(s==="rotate"){let j=(a+P*o*10)%360*Math.PI/180;U=A.width/2+Math.cos(j)*A.width,z=A.height/2+Math.sin(j)*A.height}let W=E.createLinearGradient(I,M,U,z);s==="shift"?n.forEach((H,j)=>{let K=(j/(n.length-1)+P*.1)%1;W.addColorStop(K,H)}):n.forEach((H,j)=>{W.addColorStop(j/(n.length-1),H)}),E.fillStyle=W,E.fillRect(0,0,A.width,A.height)}if(d){let P=E.createImageData(A.width,A.height),I=P.data;for(let M=0;M<I.length;M+=4){let U=Math.random()*255;I[M]=U,I[M+1]=U,I[M+2]=U,I[M+3]=f*255}E.putImageData(P,0,0)}},[i,n,a,s,o,v,c,y,d,f]),R=(0,Xl.useCallback)(E=>{let A=x.current;if(!A)return;let P=A.getContext("2d",{alpha:!0,desynchronized:!0});if(!P)return;let I=E-B.current;if(b&&I<O){C.current=requestAnimationFrame(R);return}B.current=E,_.current+=1,P.clearRect(0,0,A.width,A.height),l>0&&(P.filter=`blur(${l}px)`),i==="mesh"&&V(A),$(P,A),C.current=requestAnimationFrame(R)},[O,b,l,i,V,$]),N=(0,Xl.useCallback)(()=>{let E=x.current;if(!E)return;let A=E.getBoundingClientRect();E.width=A.width,E.height=A.height,i==="mesh"&&L()},[i,L]),S=(0,Xl.useCallback)(E=>{let A=x.current;if(!A)return;let P=A.getBoundingClientRect();T.current={x:E.clientX-P.left,y:E.clientY-P.top}},[]);return(0,Xl.useEffect)(()=>{if(!h)return;let E=()=>{let A=x.current;if(!A)return;let I=window.scrollY*g;A.style.transform=`translateY(${I}px)`};return window.addEventListener("scroll",E),()=>window.removeEventListener("scroll",E)},[h,g]),(0,Xl.useEffect)(()=>{let E=x.current;if(!E)return;let A=E.getBoundingClientRect();return E.width=A.width,E.height=A.height,i==="mesh"&&L(),window.addEventListener("resize",N),p&&window.addEventListener("mousemove",S),C.current=requestAnimationFrame(R),()=>{window.removeEventListener("resize",N),window.removeEventListener("mousemove",S),C.current&&cancelAnimationFrame(C.current)}},[i,L,N,S,R,p]),(0,g1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),children:[(0,g1.jsx)("canvas",{ref:x,className:D("absolute inset-0 w-full h-full",t)}),e&&(0,g1.jsx)("div",{className:"relative z-10",children:e})]})},Kne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,g1.jsx)(ze,{componentName:"GradientFlow",compact:!0,className:"inline-block"}):(0,g1.jsx)(D$t,{...e})};Kne.displayName="GradientFlow";var Jl=F(ge(),1);var v1=F(le(),1);var O$t=({children:e,className:t,containerClassName:r,colors:n=["#FF006E","#FB5607","#FFBE0B","#8338EC","#3A86FF"],speed:o=.5,gridSize:a=4,animate:i=!0,animationType:s="wave",opacity:l=1,blur:c=40,interactive:u=!1,mouseRadius:d=200,blendMode:f="normal",complexity:p=12,interpolation:m="smooth",grain:h=!1,grainOpacity:g=.03,saturation:v=1,brightness:y=1,fps:b=60})=>{let w=(0,Jl.useRef)(null),x=(0,Jl.useRef)(void 0),C=(0,Jl.useRef)([]),k=(0,Jl.useRef)({x:0,y:0}),T=(0,Jl.useRef)(0),_=(0,Jl.useRef)(0),B=1e3/b,O=(0,Jl.useCallback)(()=>{let E=w.current;if(!E)return;let A=E.width>0?E.width:800,P=E.height>0?E.height:600,I=[],M=p;for(let U=0;U<M;U++){let z=U/M*Math.PI*2,W=Math.random()*.5+.2;I.push({x:A/2+Math.cos(z)*W*A,y:P/2+Math.sin(z)*W*P,vx:(Math.random()-.5)*o,vy:(Math.random()-.5)*o,color:n[U%n.length],radius:Math.max(100,(A+P)/4),phase:U/M*Math.PI*2})}C.current=I},[n,p,o]),L=(0,Jl.useCallback)((E,A=1)=>{let P=E.replace("#",""),I=parseInt(P.substring(0,2),16),M=parseInt(P.substring(2,4),16),U=parseInt(P.substring(4,6),16),z=Math.min(255,Math.max(0,I*y)),W=Math.min(255,Math.max(0,M*y)),H=Math.min(255,Math.max(0,U*y));if(v!==1){let j=(z+W+H)/3,K=Math.round(j+(z-j)*v),G=Math.round(j+(W-j)*v),X=Math.round(j+(H-j)*v);return`rgba(${Math.min(255,Math.max(0,K))}, ${Math.min(255,Math.max(0,G))}, ${Math.min(255,Math.max(0,X))}, ${A})`}return`rgba(${Math.round(z)}, ${Math.round(W)}, ${Math.round(H)}, ${A})`},[v,y]),V=(0,Jl.useCallback)(E=>{let A=C.current,P=T.current*.01;A.forEach((I,M)=>{switch(s){case"wave":I.x+=Math.sin(P+I.phase)*o,I.y+=Math.cos(P+I.phase)*o;break;case"morph":let U=P+I.phase;I.x+=Math.sin(U)*o*2,I.y+=Math.cos(U*1.5)*o*2;break;case"pulse":let z=1+Math.sin(P*2+I.phase)*.2,W=E.width/2,H=E.height/2,j=I.x-W,K=I.y-H;I.x=W+j*z,I.y=H+K*z;break;case"swirl":let G=P*.5+I.phase,X=Math.sqrt(Math.pow(I.x-E.width/2,2)+Math.pow(I.y-E.height/2,2));I.x=E.width/2+Math.cos(G)*X,I.y=E.height/2+Math.sin(G)*X;break;case"flow":default:I.x+=I.vx,I.y+=I.vy,(I.x<=0||I.x>=E.width)&&(I.vx*=-.95,I.x=Math.max(0,Math.min(E.width,I.x))),(I.y<=0||I.y>=E.height)&&(I.vy*=-.95,I.y=Math.max(0,Math.min(E.height,I.y)));break}if(u){let U=I.x-k.current.x,z=I.y-k.current.y,W=Math.sqrt(U*U+z*z);if(W>0&&W<d){let H=(1-W/d)*3;I.x+=U/W*H,I.y+=z/W*H}}isFinite(I.x)||(I.x=E.width/2),isFinite(I.y)||(I.y=E.height/2)})},[s,o,u,d]),$=(0,Jl.useCallback)((E,A)=>{let P=C.current;if(E.clearRect(0,0,A.width,A.height),E.globalCompositeOperation=f,E.globalAlpha=l,c>0&&(E.filter=`blur(${c}px)`),P.forEach((I,M)=>{let U=isFinite(I.x)?I.x:A.width/2,z=isFinite(I.y)?I.y:A.height/2,W=isFinite(I.radius)&&I.radius>0?I.radius:100,H=E.createRadialGradient(U,z,0,U,z,W);m==="smooth"?(H.addColorStop(0,L(I.color,1)),H.addColorStop(.5,L(I.color,.5)),H.addColorStop(1,L(I.color,0))):m==="bezier"?(H.addColorStop(0,L(I.color,1)),H.addColorStop(.25,L(I.color,.8)),H.addColorStop(.5,L(I.color,.5)),H.addColorStop(.75,L(I.color,.25)),H.addColorStop(1,L(I.color,0))):(H.addColorStop(0,L(I.color,1)),H.addColorStop(1,L(I.color,0))),E.fillStyle=H,E.fillRect(0,0,A.width,A.height)}),h){E.filter="none";let I=E.createImageData(A.width,A.height),M=I.data;for(let U=0;U<M.length;U+=4){let z=Math.random()*255;M[U]=z,M[U+1]=z,M[U+2]=z,M[U+3]=g*255}E.globalCompositeOperation="overlay",E.putImageData(I,0,0)}},[l,c,f,m,h,g,L]),R=(0,Jl.useCallback)(E=>{let A=w.current;if(!A)return;let P=A.getContext("2d",{alpha:!0,desynchronized:!0});if(!P)return;if(E-_.current<B){x.current=requestAnimationFrame(R);return}_.current=E,i&&(T.current+=5),V(A),$(P,A),x.current=requestAnimationFrame(R)},[B,V,$,i]),N=(0,Jl.useCallback)(()=>{let E=w.current;if(!E)return;let A=E.getBoundingClientRect();E.width=A.width,E.height=A.height,O()},[O]),S=(0,Jl.useCallback)(E=>{let A=w.current;if(!A)return;let P=A.getBoundingClientRect();k.current={x:E.clientX-P.left,y:E.clientY-P.top}},[]);return(0,Jl.useEffect)(()=>{let E=w.current;if(!E)return;let A=E.getBoundingClientRect();if(E.width=A.width,E.height=A.height,O(),window.addEventListener("resize",N),u&&window.addEventListener("mousemove",S),i)x.current=requestAnimationFrame(R);else{let P=E.getContext("2d");P&&$(P,E)}return()=>{window.removeEventListener("resize",N),window.removeEventListener("mousemove",S),x.current&&cancelAnimationFrame(x.current)}},[O,N,S,R,$,u,i]),(0,v1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),children:[(0,v1.jsx)("canvas",{ref:w,className:D("absolute inset-0 w-full h-full",t)}),e&&(0,v1.jsx)("div",{className:"relative z-10 h-full w-full",children:e})]})},Yne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,v1.jsx)(ze,{componentName:"MeshGradient",compact:!0,className:"inline-block"}):(0,v1.jsx)(O$t,{...e})};Yne.displayName="MeshGradient";var Ec=F(ge(),1);var y1=F(le(),1);var _$t=({children:e,className:t,containerClassName:r,colors:n=["#6366f1","#8b5cf6","#ec4899","#f43f5e"],blobCount:o=5,speed:a=.3,sizeRange:i=[50,150],opacity:s=.8,blur:l=40,contrast:c=15,interactive:u=!1,mouseRadius:d=150,viscosity:f=.5,tension:p=.03,glow:m=!0,glowIntensity:h=.5,backgroundColor:g="transparent",animationStyle:v="float",gradientOverlay:y=!1,fps:b=60})=>{let w=(0,Ec.useRef)(null),x=(0,Ec.useRef)(void 0),C=(0,Ec.useRef)([]),k=(0,Ec.useRef)({x:0,y:0,vx:0,vy:0}),T=(0,Ec.useRef)(0),_=(0,Ec.useRef)(0),B=1e3/b,O=(0,Ec.useCallback)(()=>{let S=w.current;if(!S)return;let E=[],[A,P]=i;for(let I=0;I<o;I++){let M=A+Math.random()*(P-A);E.push({x:Math.random()*S.width,y:Math.random()*S.height,vx:(Math.random()-.5)*a,vy:(Math.random()-.5)*a,radius:M,targetRadius:M,color:n[I%n.length],phase:Math.random()*Math.PI*2,morphSpeed:.01+Math.random()*.02})}C.current=E},[n,o,a,i]),L=(0,Ec.useCallback)(S=>{let E=C.current,A=T.current*.01;E.forEach((P,I)=>{switch(v){case"morph":P.x+=Math.sin(A+P.phase)*a,P.y+=Math.cos(A*.7+P.phase)*a,P.radius=P.targetRadius+Math.sin(A*P.morphSpeed*10)*20;break;case"bubble":P.y-=a*2,P.x+=Math.sin(A+P.phase)*a,P.y<-P.radius&&(P.y=S.height+P.radius,P.x=Math.random()*S.width),P.radius=P.targetRadius+Math.sin(A*2+P.phase)*10;break;case"lava":let M=A*.5;P.x+=Math.sin(M+P.phase)*a*.5,P.y+=(Math.cos(M*.7+P.phase)-.5)*a,P.radius=P.targetRadius*(1+Math.sin(M*P.morphSpeed*5)*.3);break;case"float":default:P.x+=P.vx*(1-f),P.y+=P.vy*(1-f),P.vx+=(Math.random()-.5)*p,P.vy+=(Math.random()-.5)*p;let U=a*2;if(P.vx=Math.max(-U,Math.min(U,P.vx)),P.vy=Math.max(-U,Math.min(U,P.vy)),P.radius+=(P.targetRadius-P.radius)*.1,Math.random()<.01){let[z,W]=i;P.targetRadius=z+Math.random()*(W-z)}break}if(P.x<P.radius?(P.x=P.radius,P.vx=Math.abs(P.vx)*.8):P.x>S.width-P.radius&&(P.x=S.width-P.radius,P.vx=-Math.abs(P.vx)*.8),P.y<P.radius?(P.y=P.radius,P.vy=Math.abs(P.vy)*.8):P.y>S.height-P.radius&&(P.y=S.height-P.radius,P.vy=-Math.abs(P.vy)*.8),E.forEach((M,U)=>{if(I===U)return;let z=M.x-P.x,W=M.y-P.y,H=Math.sqrt(z*z+W*W),j=(P.radius+M.radius)*.8;if(H<j&&H>0){let K=(j-H)/H*p;P.vx-=z*K/2,P.vy-=W*K/2}}),u){let M=P.x-k.current.x,U=P.y-k.current.y,z=Math.sqrt(M*M+U*U);if(z<d&&z>0){let W=(1-z/d)*2;P.vx+=M/z*W+k.current.vx*.1,P.vy+=U/z*W+k.current.vy*.1}}})},[v,a,f,p,i,u,d]),V=(0,Ec.useCallback)((S,E)=>{if(S.clearRect(0,0,E.width,E.height),l>0&&c>0&&(S.filter=`blur(${l}px) contrast(${c})`),S.globalAlpha=s,C.current.forEach(P=>{let I=S.createRadialGradient(P.x,P.y,0,P.x,P.y,P.radius);m?(I.addColorStop(0,P.color),I.addColorStop(.5,P.color+"CC"),I.addColorStop(.8,P.color+"66"),I.addColorStop(1,P.color+"00"),S.save(),S.filter=`blur(${P.radius*h}px)`,S.globalAlpha=s*.5,S.fillStyle=P.color,S.beginPath(),S.arc(P.x,P.y,P.radius*1.5,0,Math.PI*2),S.fill(),S.restore()):(I.addColorStop(0,P.color),I.addColorStop(.7,P.color+"88"),I.addColorStop(1,P.color+"00")),S.fillStyle=I,S.beginPath(),S.arc(P.x,P.y,P.radius,0,Math.PI*2),S.fill()}),y){S.filter="none";let P=S.createLinearGradient(0,0,E.width,E.height);P.addColorStop(0,"rgba(255, 255, 255, 0.1)"),P.addColorStop(.5,"rgba(255, 255, 255, 0)"),P.addColorStop(1,"rgba(0, 0, 0, 0.1)"),S.globalCompositeOperation="overlay",S.fillStyle=P,S.fillRect(0,0,E.width,E.height),S.globalCompositeOperation="source-over"}},[l,c,s,m,h,y]),$=(0,Ec.useCallback)(S=>{let E=w.current;if(!E)return;let A=E.getContext("2d",{alpha:!0,desynchronized:!0});if(!A)return;if(S-_.current<B){x.current=requestAnimationFrame($);return}_.current=S,T.current+=1,L(E),V(A,E),x.current=requestAnimationFrame($)},[B,L,V]),R=(0,Ec.useCallback)(()=>{let S=w.current;if(!S)return;let E=S.getBoundingClientRect();S.width=E.width,S.height=E.height,O()},[O]),N=(0,Ec.useCallback)(S=>{let E=w.current;if(!E)return;let A=E.getBoundingClientRect(),P=S.clientX-A.left,I=S.clientY-A.top;k.current.vx=P-k.current.x,k.current.vy=I-k.current.y,k.current.x=P,k.current.y=I},[]);return(0,Ec.useEffect)(()=>{let S=w.current;if(!S)return;let E=S.getBoundingClientRect();return S.width=E.width,S.height=E.height,O(),window.addEventListener("resize",R),u&&window.addEventListener("mousemove",N),x.current=requestAnimationFrame($),()=>{window.removeEventListener("resize",R),window.removeEventListener("mousemove",N),x.current&&cancelAnimationFrame(x.current)}},[O,R,N,$,u]),(0,y1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),style:{backgroundColor:g},children:[(0,y1.jsx)("canvas",{ref:w,className:D("absolute inset-0 w-full h-full",t)}),e&&(0,y1.jsx)("div",{className:"relative z-10",children:e})]})},Xne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,y1.jsx)(ze,{componentName:"LiquidBackground",compact:!0,className:"inline-block"}):(0,y1.jsx)(_$t,{...e})};Xne.displayName="LiquidBackground";var Ql=F(ge(),1);var b1=F(le(),1);var F$t=({children:e,className:t,containerClassName:r,color:n="green",customColor:o,speed:a=5,fontSize:i=16,opacity:s=1,charSet:l="matrix",customChars:c,backgroundOpacity:u=1,glow:d=!0,glowIntensity:f=.5,density:p=.5,fadeLength:m=20,interactive:h=!1,mouseRadius:g=200,fps:v=30})=>{let y=(0,Ql.useRef)(null),b=(0,Ql.useRef)(void 0),w=(0,Ql.useRef)([]),x=(0,Ql.useRef)({x:0,y:0}),C=(0,Ql.useRef)(0),k=1e3/v,T=(0,Ql.useCallback)(()=>{switch(l){case"matrix":return"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789@#$%^&*()_+-=[]{}|;:,.<>?\uFF71\uFF72\uFF73\uFF74\uFF75\uFF76\uFF77\uFF78\uFF79\uFF7A\uFF7B\uFF7C\uFF7D\uFF7E\uFF7F\uFF80\uFF81\uFF82\uFF83\uFF84\uFF85\uFF86\uFF87\uFF88\uFF89\uFF8A\uFF8B\uFF8C\uFF8D\uFF8E\uFF8F\uFF90\uFF91\uFF92\uFF93\uFF94\uFF95\uFF96\uFF97\uFF98\uFF99\uFF9A\uFF9B\uFF9C\uFF9D";case"binary":return"01";case"japanese":return"\uFF71\uFF72\uFF73\uFF74\uFF75\uFF76\uFF77\uFF78\uFF79\uFF7A\uFF7B\uFF7C\uFF7D\uFF7E\uFF7F\uFF80\uFF81\uFF82\uFF83\uFF84\uFF85\uFF86\uFF87\uFF88\uFF89\uFF8A\uFF8B\uFF8C\uFF8D\uFF8E\uFF8F\uFF90\uFF91\uFF92\uFF93\uFF94\uFF95\uFF96\uFF97\uFF98\uFF99\uFF9A\uFF9B\uFF9C\uFF9D";case"chinese":return"\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D\u5341\u767E\u5343\u4E07\u4EBF\u5146\u4EAC\u5793\u79ED\u7A70\u6E9D\u6F97\u6B63\u8F09\u6975";case"emoji":return"\u{1F600}\u{1F603}\u{1F604}\u{1F601}\u{1F606}\u{1F605}\u{1F923}\u{1F602}\u{1F642}\u{1F609}\u{1F60A}\u{1F607}\u{1F970}\u{1F60D}\u{1F929}\u{1F618}\u{1F617}\u{1F61A}\u{1F619}\u{1F60B}\u{1F61B}\u{1F61C}\u{1F92A}\u{1F61D}\u{1F911}\u{1F917}\u{1F92D}\u{1F92B}\u{1F914}\u{1F910}\u{1F928}\u{1F610}\u{1F611}\u{1F636}\u{1F60F}\u{1F612}\u{1F644}\u{1F62C}\u{1F925}\u{1F60C}\u{1F614}\u{1F62A}\u{1F924}\u{1F634}\u{1F637}\u{1F912}\u{1F915}\u{1F922}\u{1F92E}\u{1F927}\u{1F975}\u{1F976}\u{1F974}\u{1F635}\u{1F92F}\u{1F920}\u{1F973}\u{1F60E}\u{1F913}\u{1F9D0}\u{1F615}\u{1F61F}\u{1F641}\u{1F62E}\u{1F62F}\u{1F632}\u{1F633}\u{1F97A}\u{1F626}\u{1F627}\u{1F628}\u{1F630}\u{1F625}\u{1F622}\u{1F62D}\u{1F631}\u{1F616}\u{1F623}\u{1F61E}\u{1F613}\u{1F629}\u{1F62B}\u{1F971}\u{1F624}\u{1F621}\u{1F620}\u{1F92C}\u{1F608}\u{1F47F}\u{1F480}\u2620\uFE0F\u{1F4A9}\u{1F921}\u{1F479}\u{1F47A}\u{1F47B}\u{1F47D}";case"custom":return c||"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";default:return"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"}},[l,c]),_=(0,Ql.useCallback)((N=1)=>{let S={green:`rgba(0, 255, 0, ${N})`,blue:`rgba(0, 150, 255, ${N})`,red:`rgba(255, 0, 0, ${N})`,purple:`rgba(150, 0, 255, ${N})`,cyan:`rgba(0, 255, 255, ${N})`,white:`rgba(255, 255, 255, ${N})`,custom:o||`rgba(0, 255, 0, ${N})`};return S[n]||S.green},[n,o]),B=(0,Ql.useCallback)(()=>{let N=y.current;if(!N)return;let S=[],E=i,A=Math.floor(N.width/E*p),P=T();for(let I=0;I<A;I++){let M={x:Math.floor(Math.random()*A)*E,y:Math.random()*N.height,speed:.5+Math.random()*(a/10),characters:[],fadePositions:[]},U=Math.floor(Math.random()*m)+10;for(let z=0;z<U;z++)M.characters.push(P[Math.floor(Math.random()*P.length)]),M.fadePositions.push(z/U);S.push(M)}w.current=S},[i,p,a,m,T]),O=(0,Ql.useCallback)(N=>{let S=w.current,E=T();S.forEach(A=>{if(A.y+=A.speed*i,A.y>N.height+A.characters.length*i){A.y=-A.characters.length*i,A.x=Math.floor(Math.random()*Math.floor(N.width/i))*i;let P=Math.floor(Math.random()*m)+10;A.characters=[],A.fadePositions=[];for(let I=0;I<P;I++)A.characters.push(E[Math.floor(Math.random()*E.length)]),A.fadePositions.push(I/P)}if(Math.random()<.05){let P=Math.floor(Math.random()*A.characters.length);A.characters[P]=E[Math.floor(Math.random()*E.length)]}if(h){let P=A.x-x.current.x,I=A.y-x.current.y,M=Math.sqrt(P*P+I*I);if(M<g){let U=(1-M/g)*2;A.speed=Math.min(3,A.speed+U*.1)}else A.speed=Math.max(.5,A.speed*.98)}})},[i,m,h,g,T]),L=(0,Ql.useCallback)((N,S)=>{N.fillStyle=`rgba(0, 0, 0, ${.1})`,N.fillRect(0,0,S.width,S.height),N.font=`${i}px monospace`,N.textAlign="center",N.textBaseline="middle",w.current.forEach(A=>{A.characters.forEach((P,I)=>{let M=A.y-I*i;if(M<-i||M>S.height+i)return;let U=A.fadePositions[I],z=s*(1-U*.8);d&&I===0?(N.shadowBlur=i*f,N.shadowColor=_(1)):N.shadowBlur=0,N.fillStyle=_(z),N.fillText(P,A.x,M)})})},[i,s,d,f,_]),V=(0,Ql.useCallback)(N=>{let S=y.current;if(!S)return;let E=S.getContext("2d",{alpha:!0,desynchronized:!0});if(!E)return;if(N-C.current<k){b.current=requestAnimationFrame(V);return}C.current=N,O(S),L(E,S),b.current=requestAnimationFrame(V)},[k,O,L]),$=(0,Ql.useCallback)(()=>{let N=y.current;if(!N)return;let S=N.getBoundingClientRect();N.width=S.width,N.height=S.height,B()},[B]),R=(0,Ql.useCallback)(N=>{let S=y.current;if(!S)return;let E=S.getBoundingClientRect();x.current={x:N.clientX-E.left,y:N.clientY-E.top}},[]);return(0,Ql.useEffect)(()=>{let N=y.current;if(!N)return;let S=N.getBoundingClientRect();return N.width=S.width,N.height=S.height,B(),window.addEventListener("resize",$),h&&window.addEventListener("mousemove",R),b.current=requestAnimationFrame(V),()=>{window.removeEventListener("resize",$),window.removeEventListener("mousemove",R),b.current&&cancelAnimationFrame(b.current)}},[B,$,R,V,h]),(0,b1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden bg-black",r),children:[(0,b1.jsx)("canvas",{ref:y,className:D("absolute inset-0 w-full h-full",t),style:{opacity:u}}),e&&(0,b1.jsx)("div",{className:"relative z-10",children:e})]})},Jne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,b1.jsx)(ze,{componentName:"MatrixRain",compact:!0,className:"inline-block"}):(0,b1.jsx)(F$t,{...e})};Jne.displayName="MatrixRain";var Nl=F(ge(),1);var x1=F(le(),1);var B$t=({children:e,className:t,containerClassName:r,intensity:n=.5,frequency:o=.3,rgbShift:a=!0,rgbShiftAmount:i=5,scanLines:s=!0,scanLineOpacity:l=.05,noise:c=!0,noiseOpacity:u=.1,colors:d=["#ff0000","#00ff00","#0000ff"],backgroundColor:f="#000000",flicker:p=!0,flickerIntensity:m=.1,distortion:h=!0,distortionAmount:g=10,speed:v=1,interactive:y=!1,mouseRadius:b=200,fps:w=30})=>{let x=(0,Nl.useRef)(null),C=(0,Nl.useRef)(void 0),k=(0,Nl.useRef)([]),T=(0,Nl.useRef)({x:0,y:0}),_=(0,Nl.useRef)(0),B=1e3/w,O=(0,Nl.useRef)(0),L=(0,Nl.useRef)(!1),V=(0,Nl.useCallback)(P=>{let I=[],M=Math.floor(Math.random()*10*n)+2;for(let U=0;U<M;U++){let z={x:0,y:Math.random()*P.height,width:P.width,height:Math.random()*50*n+5,offsetX:(Math.random()-.5)*g*2,offsetY:(Math.random()-.5)*g,rgbOffset:{r:(Math.random()-.5)*i*2,g:(Math.random()-.5)*i*2,b:(Math.random()-.5)*i*2}};I.push(z)}k.current=I},[n,g,i]),$=(0,Nl.useCallback)((P,I)=>{if(s){P.strokeStyle=`rgba(0, 0, 0, ${l})`,P.lineWidth=1;for(let M=0;M<I.height;M+=3)P.beginPath(),P.moveTo(0,M),P.lineTo(I.width,M),P.stroke();Math.random()<.05&&(P.fillStyle=`rgba(255, 255, 255, ${l*.5})`,P.fillRect(0,Math.random()*I.height,I.width,2))}},[s,l]),R=(0,Nl.useCallback)((P,I)=>{if(!c)return;let M=P.createImageData(I.width,I.height),U=M.data;for(let z=0;z<U.length;z+=4){let W=Math.random()*255;U[z]=W,U[z+1]=W,U[z+2]=W,U[z+3]=u*255}P.putImageData(M,0,0)},[c,u]),N=(0,Nl.useCallback)((P,I)=>{if(!(I.width===0||I.height===0)){if(P.clearRect(0,0,I.width,I.height),R(P,I),L.current){let M=k.current,U=P.getImageData(0,0,I.width,I.height);M.forEach(z=>{if(h){P.save();let W=P.getImageData(z.x,z.y,z.width,z.height);P.clearRect(z.x,z.y,z.width,z.height),P.putImageData(W,z.x+z.offsetX,z.y+z.offsetY),a&&(P.globalCompositeOperation="screen",P.fillStyle=d[0]||"#ff0000",P.globalAlpha=.3,P.fillRect(z.x+z.offsetX+z.rgbOffset.r,z.y+z.offsetY,z.width,z.height),P.fillStyle=d[1]||"#00ff00",P.fillRect(z.x+z.offsetX+z.rgbOffset.g,z.y+z.offsetY,z.width,z.height),P.fillStyle=d[2]||"#0000ff",P.fillRect(z.x+z.offsetX+z.rgbOffset.b,z.y+z.offsetY,z.width,z.height),P.globalCompositeOperation="source-over",P.globalAlpha=1),P.restore()}})}$(P,I),p&&Math.random()<m&&(P.fillStyle=`rgba(255, 255, 255, ${Math.random()*m})`,P.fillRect(0,0,I.width,I.height))}},[f,h,a,d,p,m,R,$]),S=(0,Nl.useCallback)(P=>{let I=x.current;if(!I)return;let M=I.getContext("2d",{alpha:!0,desynchronized:!0});if(!M)return;if(P-_.current<B){C.current=requestAnimationFrame(S);return}_.current=P,O.current+=v;let z=o*.1;if(!L.current&&Math.random()<z&&(L.current=!0,V(I),setTimeout(()=>{L.current=!1},Math.random()*200*n+50)),y){let W=I.width/2-T.current.x,H=I.height/2-T.current.y,j=Math.sqrt(W*W+H*H);if(j<b&&!L.current){let K=(1-j/b)*o;Math.random()<K*.05&&(L.current=!0,V(I),setTimeout(()=>{L.current=!1},Math.random()*100+50))}}N(M,I),C.current=requestAnimationFrame(S)},[B,v,o,n,y,b,V,N]),E=(0,Nl.useCallback)(()=>{let P=x.current;if(!P)return;let I=P.getBoundingClientRect();P.width=I.width,P.height=I.height},[]),A=(0,Nl.useCallback)(P=>{let I=x.current;if(!I)return;let M=I.getBoundingClientRect();T.current={x:P.clientX-M.left,y:P.clientY-M.top}},[]);return(0,Nl.useEffect)(()=>{let P=x.current;if(!P)return;let I=()=>{let U=P.getBoundingClientRect();return U.width>0&&U.height>0?(P.width=U.width,P.height=U.height,!0):!1},M=()=>{I()?C.current=requestAnimationFrame(S):setTimeout(M,100)};return window.addEventListener("resize",E),y&&window.addEventListener("mousemove",A),M(),()=>{window.removeEventListener("resize",E),window.removeEventListener("mousemove",A),C.current&&cancelAnimationFrame(C.current)}},[E,A,S,y]),(0,x1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),style:{backgroundColor:f},children:[(0,x1.jsx)("canvas",{ref:x,className:D("absolute inset-0 w-full h-full pointer-events-none",t),style:{zIndex:1}}),e&&(0,x1.jsx)("div",{className:"relative z-10",children:e})]})},Qne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,x1.jsx)(ze,{componentName:"GlitchBackground",compact:!0,className:"inline-block"}):(0,x1.jsx)(B$t,{...e})};Qne.displayName="GlitchBackground";var Tc=F(ge(),1);var w1=F(le(),1);var z$t=({children:e,className:t,containerClassName:r,count:n=20,shapes:o=["circle","square","triangle"],colors:a=["#667eea","#764ba2","#f093fb","#c471ed","#12c2e9"],sizeRange:i=[20,60],speed:s=.5,rotationSpeed:l=1,enable3D:c=!1,depth:u=100,glow:d=!0,glowIntensity:f=.5,backgroundOpacity:p=1,collision:m=!1,gravity:h=!1,gravityStrength:g=.1,interactive:v=!0,mouseRadius:y=150,connections:b=!0,connectionDistance:w=150,connectionOpacity:x=.2,fps:C=60})=>{let k=(0,Tc.useRef)(null),T=(0,Tc.useRef)(void 0),_=(0,Tc.useRef)([]),B=(0,Tc.useRef)({x:0,y:0}),O=(0,Tc.useRef)(0),L=1e3/C,V=(0,Tc.useCallback)(()=>{let P=k.current;if(!P)return;let I=[],[M,U]=i;for(let z=0;z<n;z++){let W={x:Math.random()*P.width,y:Math.random()*P.height,z:c?(Math.random()-.5)*u:0,vx:(Math.random()-.5)*s,vy:(Math.random()-.5)*s,vz:c?(Math.random()-.5)*s*.5:0,size:M+Math.random()*(U-M),shape:o[Math.floor(Math.random()*o.length)],color:a[Math.floor(Math.random()*a.length)],rotation:Math.random()*Math.PI*2,rotationSpeed:(Math.random()-.5)*l*.1,opacity:.8+Math.random()*.2};I.push(W)}_.current=I},[n,o,a,i,s,l,c,u]),$=(0,Tc.useCallback)((P,I)=>{P.save();let M=c?1+I.z/u:1,U=I.size*M;switch(P.translate(I.x,I.y),P.rotate(I.rotation),d&&(P.shadowBlur=U*f,P.shadowColor=I.color),P.fillStyle=I.color,P.globalAlpha=I.opacity*p,I.shape){case"circle":P.beginPath(),P.arc(0,0,U/2,0,Math.PI*2),P.fill();break;case"square":P.fillRect(-U/2,-U/2,U,U);break;case"triangle":P.beginPath(),P.moveTo(0,-U/2),P.lineTo(U/2,U/2),P.lineTo(-U/2,U/2),P.closePath(),P.fill();break;case"hexagon":P.beginPath();for(let W=0;W<6;W++){let H=Math.PI*2/6*W,j=Math.cos(H)*U/2,K=Math.sin(H)*U/2;W===0?P.moveTo(j,K):P.lineTo(j,K)}P.closePath(),P.fill();break;case"star":P.beginPath();for(let W=0;W<10;W++){let H=W%2===0?U/2:U/4,j=Math.PI*2/10*W-Math.PI/2,K=Math.cos(j)*H,G=Math.sin(j)*H;W===0?P.moveTo(K,G):P.lineTo(K,G)}P.closePath(),P.fill();break;case"heart":P.beginPath();let z=U/2;P.moveTo(0,z*.3),P.bezierCurveTo(-z*.5,-z*.3,-z,z*.3,0,z),P.bezierCurveTo(z,z*.3,z*.5,-z*.3,0,z*.3),P.closePath(),P.fill();break}P.restore()},[c,u,d,f,p]),R=(0,Tc.useCallback)((P,I)=>{if(b){P.strokeStyle=`rgba(255, 255, 255, ${x})`,P.lineWidth=1;for(let M=0;M<I.length;M++)for(let U=M+1;U<I.length;U++){let z=I[M].x-I[U].x,W=I[M].y-I[U].y,H=Math.sqrt(z*z+W*W);if(H<w){let j=(1-H/w)*x;P.globalAlpha=j,P.beginPath(),P.moveTo(I[M].x,I[M].y),P.lineTo(I[U].x,I[U].y),P.stroke()}}P.globalAlpha=1}},[b,w,x]),N=(0,Tc.useCallback)(P=>{let I=_.current;I.forEach((M,U)=>{if(M.x+=M.vx,M.y+=M.vy,c&&(M.z+=M.vz),M.rotation+=M.rotationSpeed,h&&(M.vy+=g),(M.x<=M.size/2||M.x>=P.width-M.size/2)&&(M.vx*=-.9,M.x=Math.max(M.size/2,Math.min(P.width-M.size/2,M.x))),(M.y<=M.size/2||M.y>=P.height-M.size/2)&&(M.vy*=-.9,M.y=Math.max(M.size/2,Math.min(P.height-M.size/2,M.y))),c&&(M.z<=-u/2||M.z>=u/2)&&(M.vz*=-.9,M.z=Math.max(-u/2,Math.min(u/2,M.z))),m&&I.forEach((z,W)=>{if(U===W)return;let H=M.x-z.x,j=M.y-z.y,K=Math.sqrt(H*H+j*j),G=(M.size+z.size)/2;if(K<G&&K>0){let X=Math.atan2(j,H),ie=(G-K)/K;M.vx+=Math.cos(X)*ie*.5,M.vy+=Math.sin(X)*ie*.5,z.vx-=Math.cos(X)*ie*.5,z.vy-=Math.sin(X)*ie*.5}}),v){let z=M.x-B.current.x,W=M.y-B.current.y,H=Math.sqrt(z*z+W*W);if(H<y&&H>0){let j=(1-H/y)*2;M.vx+=z/H*j,M.vy+=W/H*j}}M.vx*=.99,M.vy*=.99,c&&(M.vz*=.99)})},[c,u,h,g,m,v,y]),S=(0,Tc.useCallback)(P=>{let I=k.current;if(!I)return;let M=I.getContext("2d",{alpha:!0,desynchronized:!0});if(!M)return;if(P-O.current<L){T.current=requestAnimationFrame(S);return}O.current=P,M.clearRect(0,0,I.width,I.height),N(I);let z=_.current;c&&z.sort((W,H)=>W.z-H.z),R(M,z),z.forEach(W=>{$(M,W)}),T.current=requestAnimationFrame(S)},[L,N,R,$,c]),E=(0,Tc.useCallback)(()=>{let P=k.current;if(!P)return;let I=P.getBoundingClientRect();P.width=I.width,P.height=I.height,V()},[V]),A=(0,Tc.useCallback)(P=>{let I=k.current;if(!I)return;let M=I.getBoundingClientRect();B.current={x:P.clientX-M.left,y:P.clientY-M.top}},[]);return(0,Tc.useEffect)(()=>{let P=k.current;if(!P)return;let I=P.getBoundingClientRect();return P.width=I.width,P.height=I.height,V(),window.addEventListener("resize",E),v&&window.addEventListener("mousemove",A),T.current=requestAnimationFrame(S),()=>{window.removeEventListener("resize",E),window.removeEventListener("mousemove",A),T.current&&cancelAnimationFrame(T.current)}},[V,E,A,S,v]),(0,w1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),children:[(0,w1.jsx)("canvas",{ref:k,className:D("absolute inset-0 w-full h-full",t)}),e&&(0,w1.jsx)("div",{className:"relative z-10",children:e})]})},Zne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,w1.jsx)(ze,{componentName:"FloatingElements",compact:!0,className:"inline-block"}):(0,w1.jsx)(z$t,{...e})};Zne.displayName="FloatingElements";var Vi=F(ge(),1);var C1=F(le(),1);var eoe={high:{gradient:!0,glow:!0,blur:!0,merging:!0},medium:{gradient:!0,glow:!0,blur:!1,merging:!1},low:{gradient:!1,glow:!1,blur:!1,merging:!1}},U$t=({children:e,className:t,containerClassName:r,count:n=30,colors:o=["#667eea","#764ba2","#f093fb","#c471ed","#12c2e9"],sizeRange:a=[20,80],speed:i=1,wobble:s=2,backgroundColor:l="transparent",backgroundOpacity:c=1,bubbleOpacity:u=.6,gradient:d=!0,gradientType:f="radial",glow:p=!0,glowIntensity:m=.5,blur:h=!1,blurAmount:g=2,popping:v=!0,popThreshold:y=50,interactive:b=!0,mouseRadius:w=150,merging:x=!1,mergeThreshold:C=50,animationStyle:k="float",fps:T=60,physics:_=!1,gravity:B=.5,buoyancy:O=1,splitChance:L=0,mergeDistance:V=30})=>{let $=(0,Vi.useRef)(null),R=(0,Vi.useRef)(null),N=(0,Vi.useRef)(void 0),S=(0,Vi.useRef)([]),E=(0,Vi.useRef)({x:0,y:0}),A=(0,Vi.useRef)(0),P=1e3/T,I=(0,Vi.useRef)(0),M=(0,Vi.useRef)(new Map),U=(0,Vi.useRef)(eoe.medium),z=(0,Vi.useCallback)(()=>{let re=window.devicePixelRatio||1;/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)||re>2?U.current=eoe.low:U.current=eoe.medium},[]),W=(0,Vi.useCallback)((re,Z)=>{if(!d)return Z.color;let J=`${Z.color}-${Z.size}-${f}`;if(M.current.has(J))return M.current.get(J);let Q;return f==="radial"?(Q=re.createRadialGradient(-Z.size*.3,-Z.size*.3,0,0,0,Z.size/2),Q.addColorStop(0,"rgba(255, 255, 255, 0.8)"),Q.addColorStop(.3,Z.color),Q.addColorStop(1,Z.color+"80")):(Q=re.createLinearGradient(-Z.size/2,-Z.size/2,Z.size/2,Z.size/2),Q.addColorStop(0,"rgba(255, 255, 255, 0.5)"),Q.addColorStop(.5,Z.color),Q.addColorStop(1,Z.color+"80")),M.current.set(J,Q),Q},[d,f]),H=(0,Vi.useCallback)(re=>{let[Z,J]=a,Q=Z+Math.random()*(J-Z),ne=re.getBoundingClientRect(),ae=ne.width,Y=ne.height+Q,q=-Q+Math.random()*(ae+Q*2);if(k==="champagne"){let te=[ae*.3,ae*.5,ae*.7];q=te[Math.floor(Math.random()*te.length)]+(Math.random()-.5)*50}else k==="lava"&&(q=ae/2+(Math.random()-.5)*ae*.3);return{x:q,y:Y,vx:0,vy:-i*(.5+Math.random()*.5),size:Q,targetSize:Q,color:o[Math.floor(Math.random()*o.length)],opacity:u*(.7+Math.random()*.3),wobblePhase:Math.random()*Math.PI*2,wobbleSpeed:.02+Math.random()*.03,lifespan:0,maxLifespan:k==="champagne"?100+Math.random()*100:1/0,popping:!1,popProgress:0}},[a,o,i,u,k]),j=(0,Vi.useCallback)(()=>{let re=$.current;if(!re)return;let Z=re.getBoundingClientRect(),J=Z.width,Q=Z.height,ne=[];for(let ae=0;ae<n;ae++){let se=H(re);se.y=Math.random()*(Q+100),se.x=-50+Math.random()*(J+100),ne.push(se)}S.current=ne},[n,H]),K=(0,Vi.useCallback)((re,Z)=>{re.save(),re.translate(Z.x,Z.y);let J=Z.size;Z.popping&&(J=Z.size*(1+Z.popProgress*.5));let Q=Z.opacity;Z.popping&&(Q*=1-Z.popProgress),k==="champagne"&&Z.lifespan>Z.maxLifespan*.8&&(Q*=1-(Z.lifespan-Z.maxLifespan*.8)/(Z.maxLifespan*.2)),re.globalAlpha=Q,re.fillStyle=W(re,Z),re.beginPath(),re.arc(0,0,J/2,0,Math.PI*2),re.fill(),!Z.popping&&d&&(re.globalAlpha=Q*.5,re.fillStyle="rgba(255, 255, 255, 0.8)",re.beginPath(),re.arc(-J*.15,-J*.15,J*.1,0,Math.PI*2),re.fill()),re.restore()},[d,k,W]),G=(0,Vi.useCallback)((re,Z)=>{let J=S.current,Q=I.current;if(J.length<n){let se=H(re);J.push(se)}let ne=100,ae=new Map;for(x&&J.forEach(se=>{let Y=Math.floor(se.x/ne),q=Math.floor(se.y/ne),te=`${Y},${q}`;ae.has(te)||ae.set(te,[]),ae.get(te).push(se)}),J.forEach((se,Y)=>{switch(se.lifespan++,k){case"lava":se.vy=-i*.3,se.vx=Math.sin(Q*.01+se.wobblePhase)*s*.5,se.targetSize=se.size*(1+Math.sin(Q*.01+se.wobblePhase)*.3),se.size+=(se.targetSize-se.size)*.1;break;case"champagne":se.vy=-i*2,se.vx+=(Math.random()-.5)*.2,se.vx*=.98;break;case"rise":se.vy=-i,se.vx=Math.sin(Q*se.wobbleSpeed+se.wobblePhase)*s;break;case"float":default:se.vy=-i*.5,se.vx=Math.sin(Q*se.wobbleSpeed+se.wobblePhase)*s,_&&(se.vy-=B*.1,se.vy+=O*.05);break}if(se.x+=se.vx*(Z/16),se.y+=se.vy*(Z/16),se.popping&&(se.popProgress+=.1,se.popProgress>=1)){let ue=H(re);Object.assign(se,ue)}if(v&&se.y<y&&!se.popping&&(se.popping=!0),x&&!se.popping&&ae.size>0){let ue=Math.floor(se.x/ne),ce=Math.floor(se.y/ne);for(let xe=-1;xe<=1;xe++)for(let be=-1;be<=1;be++){let ye=`${ue+xe},${ce+be}`;(ae.get(ye)||[]).forEach(de=>{if(de===se||de.popping)return;let Ie=se.x-de.x,Te=se.y-de.y,Pe=Math.sqrt(Ie*Ie+Te*Te);Pe<V&&Pe>0&&se.size>de.size&&(se.size=Math.sqrt(se.size*se.size+de.size*de.size),se.targetSize=se.size,de.popping=!0)})}}if(b){let ue=se.x-E.current.x,ce=se.y-E.current.y,xe=ue*ue+ce*ce,be=w*w;if(xe<be&&xe>0){let ye=Math.sqrt(xe),Ce=(1-ye/w)*3;se.vx+=ue/ye*Ce,se.vy+=ce/ye*Ce}}let te=re.getBoundingClientRect().width;if(se.x<-se.size*2&&(se.x=te+se.size),se.x>te+se.size*2&&(se.x=-se.size),se.y<-se.size&&!se.popping){let ue=H(re);Object.assign(se,ue)}if(se.lifespan>se.maxLifespan){let ue=H(re);Object.assign(se,ue)}});J.length>n;)J.pop()},[n,i,s,v,y,x,V,b,w,k,H,_,B,O]),X=(0,Vi.useCallback)(re=>{let Z=$.current;if(!Z)return;let J=Z.getContext("2d",{alpha:!0,desynchronized:!0});if(!J)return;let Q=re-A.current;if(Q<P){N.current=requestAnimationFrame(X);return}if(A.current=re,I.current+=1,J.clearRect(0,0,Z.width,Z.height),l!=="transparent"&&(J.fillStyle=l,J.globalAlpha=c,J.fillRect(0,0,Z.width,Z.height),J.globalAlpha=1),G(Z,Q),p&&U.current.glow&&(J.shadowBlur=20*m,J.shadowColor=o[0]),h&&U.current.blur&&R.current){let ne=R.current.getContext("2d");ne&&(ne.filter=`blur(${g}px)`,ne.clearRect(0,0,Z.width,Z.height),S.current.forEach(ae=>{K(ne,ae)}),J.drawImage(R.current,0,0))}else S.current.forEach(ae=>{K(J,ae)});p&&U.current.glow&&(J.shadowBlur=0),N.current=requestAnimationFrame(X)},[P,l,c,G,K,p,m,h,g,o]),ie=(0,Vi.useCallback)(()=>{let re=$.current;if(!re)return;let Z=re.parentElement;if(!Z)return;let J=Z.getBoundingClientRect(),Q=Math.min(window.devicePixelRatio||1,2);re.style.width="100%",re.style.height="100%",re.width=J.width*Q,re.height=J.height*Q;let ne=re.getContext("2d");ne&&ne.scale(Q,Q),h&&R.current&&(R.current.width=re.width,R.current.height=re.height)},[h]),ee=(0,Vi.useCallback)(re=>{let Z=$.current;if(!Z)return;let J=Z.getBoundingClientRect();E.current={x:re.clientX-J.left,y:re.clientY-J.top}},[]);return(0,Vi.useEffect)(()=>{let re=$.current;if(!re)return;z();let Z=re.parentElement;if(!Z)return;let J=Z.getBoundingClientRect(),Q=Math.min(window.devicePixelRatio||1,2);re.style.width="100%",re.style.height="100%",re.width=J.width*Q,re.height=J.height*Q;let ne=re.getContext("2d");return ne&&ne.scale(Q,Q),h&&(R.current=document.createElement("canvas"),R.current.width=re.width,R.current.height=re.height),j(),window.addEventListener("resize",ie),b&&re.addEventListener("mousemove",ee),N.current=requestAnimationFrame(X),()=>{window.removeEventListener("resize",ie),b&&re.removeEventListener("mousemove",ee),N.current&&cancelAnimationFrame(N.current),M.current.clear()}},[]),(0,C1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),children:[(0,C1.jsx)("canvas",{ref:$,className:D("absolute inset-0 w-full h-full",t),style:{width:"100%",height:"100%",touchAction:"none"}}),e&&(0,C1.jsx)("div",{className:"relative z-10",children:e})]})},Fje=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,C1.jsx)(ze,{componentName:"BubbleBackground",compact:!0,className:"inline-block"}):(0,C1.jsx)(U$t,{...e})};var vo=F(ge(),1);var S1=F(le(),1);var $$t=({children:e,className:t,containerClassName:r,pattern:n="triangles",colors:o=["#667eea","#764ba2","#f093fb","#c471ed","#12c2e9"],patternSize:a=40,spacing:i=10,animation:s="rotate",animationSpeed:l=3e3,opacity:c=.3,enable3D:u=!1,depth:d=20,strokeWidth:f=2,fillStyle:p="gradient",gradientDirection:m="diagonal",glow:h=!1,glowIntensity:g=.5,backgroundColor:v="transparent",interactive:y=!0,mouseRadius:b=150,density:w=1,fps:x=60,performancePreset:C="medium"})=>{let k=(0,vo.useRef)(null),T=(0,vo.useRef)(null),_=(0,vo.useRef)(void 0),B=(0,vo.useRef)([]),O=(0,vo.useRef)({x:0,y:0}),L=(0,vo.useRef)(0),V=(0,vo.useRef)(0),$=(0,vo.useRef)({gradients:new Map,paths:new Map}),R=(0,vo.useRef)(null),N=(0,vo.useRef)([]),S=(0,vo.useMemo)(()=>({low:{maxPatterns:100,interactionRadius:60,fps:24,enableGlow:!1,enable3D:!1,updateFrequency:3,spatialGridSize:250,maxDPR:1.2,glowQuality:"none"},medium:{maxPatterns:200,interactionRadius:100,fps:30,enableGlow:h,enable3D:!1,updateFrequency:2,spatialGridSize:200,maxDPR:1.5,glowQuality:"low"},high:{maxPatterns:400,interactionRadius:b,fps:60,enableGlow:h,enable3D:u,updateFrequency:1,spatialGridSize:100,maxDPR:2,glowQuality:"high"}})[C],[C,x,b,h,u]),E=1e3/S.fps,A=(0,vo.useCallback)((re,Z)=>{let J=S.spatialGridSize,Q=Math.ceil(re/J)+1,ne=Math.ceil(Z/J)+1;return{cellSize:J,cols:Q,rows:ne,cells:new Map}},[S.spatialGridSize]),P=(0,vo.useCallback)((re,Z)=>{let J=Math.floor(Z.x/re.cellSize),Q=Math.floor(Z.y/re.cellSize);if(J>=0&&J<re.cols&&Q>=0&&Q<re.rows){let ne=`${J},${Q}`;re.cells.has(ne)||re.cells.set(ne,[]),re.cells.get(ne).push(Z),Z.gridX=J,Z.gridY=Q}},[]),I=(0,vo.useCallback)((re,Z,J,Q)=>{let ne=$.current;if(ne.gradients.has(Q))return ne.gradients.get(Q);let ae;if(m==="radial")ae=re.createRadialGradient(0,0,0,0,0,J/2);else{let se=m==="horizontal"?0:m==="vertical"?Math.PI/2:Math.PI/4;ae=re.createLinearGradient(-J/2*Math.cos(se),-J/2*Math.sin(se),J/2*Math.cos(se),J/2*Math.sin(se))}return ae.addColorStop(0,Z),ae.addColorStop(1,Z+"40"),ne.gradients.set(Q,ae),ae},[m]),M=(0,vo.useCallback)((re,Z)=>{let J=`${re}-${Z}`,Q=$.current;if(Q.paths.has(J))return Q.paths.get(J);let ne=new Path2D;switch(re){case"triangles":ne.moveTo(0,-Z/2),ne.lineTo(Z/2,Z/2),ne.lineTo(-Z/2,Z/2),ne.closePath();break;case"hexagons":for(let ae=0;ae<6;ae++){let se=Math.PI*2/6*ae-Math.PI/2,Y=Math.cos(se)*Z/2,q=Math.sin(se)*Z/2;ae===0?ne.moveTo(Y,q):ne.lineTo(Y,q)}ne.closePath();break;case"squares":ne.rect(-Z/2,-Z/2,Z,Z);break;case"diamonds":ne.moveTo(0,-Z/2),ne.lineTo(Z/2,0),ne.lineTo(0,Z/2),ne.lineTo(-Z/2,0),ne.closePath();break;case"circles":ne.arc(0,0,Z/2,0,Math.PI*2);break}return Q.paths.set(J,ne),ne},[]),U=(0,vo.useCallback)((re,Z)=>{let J=a+i,Q=B.current;N.current=Q.filter(ne=>ne.x>=-J&&ne.x<=re+J&&ne.y>=-J&&ne.y<=Z+J)},[a,i]),z=(0,vo.useCallback)(()=>{let re=k.current,Z=re?.parentElement;if(!re||!Z)return;let J=Z.getBoundingClientRect(),Q=J.width,ne=J.height,ae=A(Q,ne);R.current=ae;let se=[],Y=a+i,q=Math.ceil(Q/Y)+2,te=Math.ceil(ne/Y)+2,ue=0,ce=S.maxPatterns,xe=Math.max(1,Math.floor(1/w)),be=[];for(let Ce=-1;Ce<te;Ce++)for(let de=-1;de<q;de++){if(w<1&&(Ce%xe!==0||de%xe!==0))continue;let Ie=de*Y,Te=Ce*Y;n==="hexagons"&&Ce%2===1&&(Ie+=Y/2),be.push({x:Ie,y:Te})}for(let Ce=be.length-1;Ce>0;Ce--){let de=Math.floor(Math.random()*(Ce+1));[be[Ce],be[de]]=[be[de],be[Ce]]}let ye=be.slice(0,Math.min(ce,be.length));for(let Ce of ye){let de=n==="mixed"?["triangles","hexagons","squares","diamonds","circles"]:[n],Ie={x:Ce.x,y:Ce.y,rotation:0,scale:1,opacity:c,color:o[Math.floor(Math.random()*o.length)],animationPhase:Math.random()*Math.PI*2,type:de[Math.floor(Math.random()*de.length)],gridX:0,gridY:0,originalX:Ce.x,originalY:Ce.y,lastMouseDistance:1/0};se.push(Ie),P(ae,Ie)}B.current=se,U(re.width,re.height),$.current.gradients.clear(),$.current.paths.clear()},[a,i,n,o,c,w,A,P,U,S.maxPatterns]),W=(0,vo.useCallback)((re,Z,J)=>{let Q=new Map;for(let ne of Z){let se=`${n==="mixed"?ne.type:n}-${ne.color}`;Q.has(se)||Q.set(se,[]),Q.get(se).push(ne)}for(let[ne,ae]of Q){let[se,Y]=ne.split("-");re.lineWidth=f;let q=M(se,J);for(let te of ae){if(re.save(),re.translate(te.x,te.y),re.rotate(te.rotation),re.scale(te.scale,te.scale),S.enable3D){let ue=1+Math.sin(te.animationPhase)*d/100;re.scale(ue,ue)}if(S.enableGlow&&S.glowQuality!=="none"){let ue=S.glowQuality==="low"?.5:1;re.shadowBlur=J*g*ue,re.shadowColor=te.color}if(re.globalAlpha=te.opacity,p==="gradient"){let ue=`${Y}-${J}-${m}`,ce=I(re,Y,J,ue);re.fillStyle=ce,re.strokeStyle=Y}else p==="outline"?re.strokeStyle=Y:p==="dotted"?(re.setLineDash([5,5]),re.strokeStyle=Y):(re.fillStyle=Y,re.strokeStyle=Y);p!=="outline"&&p!=="dotted"&&re.fill(q),(p==="outline"||p==="dotted"||f>0)&&re.stroke(q),S.enableGlow&&(re.shadowBlur=0),re.restore()}p==="dotted"&&re.setLineDash([])}},[n,f,M,S.enable3D,S.enableGlow,d,g,p,I,m]),H=(0,vo.useCallback)((re,Z,J)=>{let Q=R.current;if(!Q)return[];let ne=[],ae=Math.ceil(J/Q.cellSize),se=Math.floor(re/Q.cellSize),Y=Math.floor(Z/Q.cellSize);for(let q=-ae;q<=ae;q++)for(let te=-ae;te<=ae;te++){let ue=se+te,ce=Y+q;if(ue>=0&&ue<Q.cols&&ce>=0&&ce<Q.rows){let xe=`${ue},${ce}`,be=Q.cells.get(xe);if(be)for(let ye of be){let Ce=ye.x-re,de=ye.y-Z;Math.sqrt(Ce*Ce+de*de)<J&&ne.push(ye)}}}return ne},[]),j=(0,vo.useCallback)(()=>{let re=B.current,Z=V.current,J=Z*60/l,Q=Z%S.updateFrequency===0;if(!(!Q&&s==="none"&&!y)){for(let ne of re)if(Q)switch(s){case"rotate":ne.rotation=J+ne.animationPhase;break;case"pulse":ne.scale=1+Math.sin(J+ne.animationPhase)*.2,ne.opacity=c*(.7+Math.sin(J+ne.animationPhase)*.3);break;case"shift":let ae=Math.sin(J+ne.animationPhase)*10;ne.x=ne.originalX+Math.cos(ne.animationPhase)*ae*.1,ne.y=ne.originalY+Math.sin(ne.animationPhase)*ae*.1;break;case"morph":ne.scale=1+Math.sin(J+ne.animationPhase)*.3,ne.rotation=Math.sin(J*.5+ne.animationPhase)*Math.PI/4;break;case"none":default:ne.scale+=(1-ne.scale)*.1,ne.rotation*=.95,ne.opacity+=(c-ne.opacity)*.1;break}if(y&&Q){let ne=S.interactionRadius,ae=H(O.current.x,O.current.y,ne);for(let se of ae){let Y=se.x-O.current.x,q=se.y-O.current.y,te=Math.sqrt(Y*Y+q*q);if(te<ne){let ue=1-te/ne;se.scale=Math.max(se.scale,1+ue*.5),se.rotation+=ue*.1,se.opacity=Math.min(1,Math.max(se.opacity,c+ue*.5)),se.lastMouseDistance=te}}for(let se of re)se.lastMouseDistance>ne&&(s==="none"&&(se.scale+=(1-se.scale)*.1,se.rotation*=.95),se.opacity+=(c-se.opacity)*.1,se.lastMouseDistance=1/0)}}},[s,l,c,y,H,S.updateFrequency,S.interactionRadius]),K=(0,vo.useCallback)(re=>{let Z=k.current,J=Z?.parentElement;if(!Z||!J)return;let Q=Z.getContext("2d",{alpha:!0,desynchronized:!0,willReadFrequently:!1});if(!Q)return;if(re-L.current<E){_.current=requestAnimationFrame(K);return}L.current=re,V.current+=1;let ae=J.getBoundingClientRect(),se=window.devicePixelRatio||1,Y=Math.min(se,S.maxDPR);Q.clearRect(0,0,Z.width,Z.height),v!=="transparent"&&(Q.fillStyle=v,Q.fillRect(0,0,ae.width,ae.height)),j(),U(ae.width,ae.height);let q=N.current;q.length>0&&W(Q,q,a),_.current=requestAnimationFrame(K)},[E,v,j,U,W,a,S.maxDPR]),G=(0,vo.useCallback)(()=>{let re=k.current,Z=re?.parentElement;if(!re||!Z)return;let J=Z.getBoundingClientRect(),Q=window.devicePixelRatio||1,ne=Math.min(Q,S.maxDPR),ae=J.width*ne,se=J.height*ne;if(re.width!==ae||re.height!==se){re.width=ae,re.height=se,re.style.width="100%",re.style.height="100%";let Y=re.getContext("2d",{alpha:!0,desynchronized:!0,willReadFrequently:!1});Y&&(Y.scale(ne,ne),Y.imageSmoothingEnabled=C!=="low",Y.imageSmoothingQuality=C==="high"?"high":"low");let q=B.current,te=R.current;if(q.length>0&&te){let ue=q.filter(Ce=>Ce.x>=-a-i&&Ce.x<=J.width+a+i&&Ce.y>=-a-i&&Ce.y<=J.height+a+i),ce=a+i,xe=Math.ceil(J.width/ce)+2,be=Math.ceil(J.height/ce)+2,ye=A(J.width,J.height);for(let Ce of ue)P(ye,Ce);R.current=ye,B.current=ue,U(J.width,J.height)}else z()}},[z,A,P,U,a,i,S.maxDPR,C]),X=(0,vo.useCallback)(()=>{let re;return()=>{clearTimeout(re),re=setTimeout(G,100)}},[G])(),ie=(0,vo.useCallback)(re=>{let Z=k.current;if(!Z||!y)return;let J=Z.getBoundingClientRect(),Q=re.clientX-J.left,ne=re.clientY-J.top,ae=O.current.x,se=O.current.y;Math.sqrt((Q-ae)**2+(ne-se)**2)>5&&(O.current={x:Q,y:ne})},[y]),ee=(0,vo.useCallback)(()=>{let re=!1;return Z=>{re||(requestAnimationFrame(()=>{ie(Z),re=!1}),re=!0)}},[ie])();return(0,vo.useEffect)(()=>{let re=k.current,Z=re?.parentElement;if(!re||!Z)return;let J=Z.getBoundingClientRect(),Q=window.devicePixelRatio||1,ne=Math.min(Q,S.maxDPR);re.width=J.width*ne,re.height=J.height*ne;let ae=re.getContext("2d",{alpha:!0,desynchronized:!0,willReadFrequently:!1});return ae&&(ae.scale(ne,ne),ae.imageSmoothingEnabled=C!=="low",ae.imageSmoothingQuality=C==="high"?"high":"low"),re.style.width="100%",re.style.height="100%",z(),window.addEventListener("resize",X,{passive:!0}),y&&window.addEventListener("mousemove",ee,{passive:!0}),_.current=requestAnimationFrame(K),()=>{window.removeEventListener("resize",X),window.removeEventListener("mousemove",ee),_.current&&cancelAnimationFrame(_.current),$.current.gradients.clear(),$.current.paths.clear(),B.current=[],N.current=[],R.current=null}},[z,X,ee,K,y,S.maxDPR,C]),(0,vo.useEffect)(()=>{},[C,S]),(0,S1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),children:[(0,S1.jsx)("canvas",{ref:k,className:D("absolute inset-0 w-full h-full",t)}),e&&(0,S1.jsx)("div",{className:"relative z-10",children:e})]})},toe=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,S1.jsx)(ze,{componentName:"GeometricPatterns",compact:!0,className:"inline-block"}):(0,S1.jsx)($$t,{...e})};toe.displayName="GeometricPatterns";var ij=F(ge(),1);var Um=F(le(),1),Bje={javascript:{color:"#ffd700",icon:"JS",glow:"rgba(255, 215, 0, 0.5)"},typescript:{color:"#3178c6",icon:"TS",glow:"rgba(49, 120, 198, 0.5)"},python:{color:"#4b8bbe",icon:"PY",glow:"rgba(75, 139, 190, 0.5)"},react:{color:"#61dafb",icon:"\u269B\uFE0F",glow:"rgba(97, 218, 251, 0.5)"},rust:{color:"#ff6b6b",icon:"\u{1F980}",glow:"rgba(255, 107, 107, 0.5)"},go:{color:"#00d4ff",icon:"GO",glow:"rgba(0, 212, 255, 0.5)"},sql:{color:"#6366f1",icon:"SQL",glow:"rgba(99, 102, 241, 0.5)"},docker:{color:"#2496ed",icon:"\u{1F433}",glow:"rgba(36, 150, 237, 0.5)"},nodejs:{color:"#68a063",icon:"Node",glow:"rgba(104, 160, 99, 0.5)"},vue:{color:"#42d392",icon:"Vue",glow:"rgba(66, 211, 146, 0.5)"},angular:{color:"#ff4785",icon:"NG",glow:"rgba(255, 71, 133, 0.5)"},java:{color:"#ff9800",icon:"\u2615",glow:"rgba(255, 152, 0, 0.5)"},csharp:{color:"#a179dc",icon:"C#",glow:"rgba(161, 121, 220, 0.5)"},php:{color:"#8993be",icon:"PHP",glow:"rgba(137, 147, 190, 0.5)"},swift:{color:"#ff6b6b",icon:"\u{1F34E}",glow:"rgba(255, 107, 107, 0.5)"},kotlin:{color:"#b125ea",icon:"KT",glow:"rgba(177, 37, 234, 0.5)"}},P1=[{language:"javascript",code:`const app = express();
|
|
811
|
+
`}}),e&&(0,hn.jsx)("div",{className:"relative z-10",children:e})]})},Wne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,hn.jsx)(ze,{componentName:"DotPattern",compact:!0,className:"inline-block"}):(0,hn.jsx)(A$t,{...e})};Wne.displayName="DotPattern";var $i=F(ge(),1);var m1=F(le(),1);var I$t=({children:e,className:t,containerClassName:r,columns:n=15,rows:o=15,color:a="#ffffff",lineWidth:i=1,opacity:s=.3,backgroundColor:l="transparent",distortion:c=!0,distortionType:u="wave",amplitude:d=20,frequency:f=.01,speed:p=1,interactive:m=!0,mouseRadius:h=150,mouseStrength:g=30,perspective:v=!1,perspectiveDepth:y=1e3,rotateX:b=0,rotateY:w=0,glow:x=!1,glowIntensity:C=10,glowColor:k,gradient:T=!1,gradientColors:_=["#00d4ff","#ff00ff","#ffff00"],responsive:B=!0,fps:O=30,blur:L=0})=>{let V=(0,$i.useRef)(null),$=(0,$i.useRef)(null),R=(0,$i.useRef)(void 0),N=(0,$i.useRef)([]),S=(0,$i.useRef)({x:-1e3,y:-1e3}),E=(0,$i.useRef)(0),A=(0,$i.useRef)(0),P=(0,$i.useRef)(!0),I=1e3/O,M=(0,$i.useCallback)(()=>{let X=[];for(let ie=0;ie<=o;ie++){let ee=[];for(let re=0;re<=n;re++){let Z=re/n,J=ie/o;ee.push({x:Z,y:J,originalX:Z,originalY:J,offsetX:0,offsetY:0})}X.push(ee)}N.current=X},[n,o]),U=(0,$i.useCallback)(X=>{let ie=N.current;if(!ie.length||!c)return;let ee=E.current,re=X.width,Z=X.height;for(let J=0;J<=o;J++)for(let Q=0;Q<=n;Q++){let ne=ie[J][Q],ae=0,se=0;switch(u){case"wave":ae=Math.sin((ne.originalY*Math.PI*2+ee)*f*50)*d/re,se=Math.cos((ne.originalX*Math.PI*2+ee)*f*50)*d/Z*.5;break;case"ripple":let q=.5,te=.5,ue=ne.originalX-q,ce=ne.originalY-te,xe=Math.sqrt(ue*ue+ce*ce),be=Math.sin(xe*10-ee*2)*d/re;ae=ue*be,se=ce*be;break;case"turbulence":let ye=ne.originalX*10+ee,Ce=ne.originalY*10+ee;ae=Math.sin(ye)*Math.cos(Ce*2)*d/re,se=Math.cos(ye*1.5)*Math.sin(Ce)*d/Z;break;case"spiral":let de=.5,Ie=.5,Te=ne.originalX-de,Pe=ne.originalY-Ie,Re=Math.sqrt(Te*Te+Pe*Pe),fe=Math.atan2(Pe,Te)+Re*5-ee;ae=Math.cos(fe)*d/re*Re,se=Math.sin(fe)*d/Z*Re;break;case"noise":let pe=ne.originalX*10+ee,ke=ne.originalY*10+ee;ae=Math.sin(pe*2.1)*Math.cos(ke*1.3)*d/re,se=Math.cos(pe*1.7)*Math.sin(ke*2.3)*d/Z;break}if(m&&S.current.x>=0){let q=ne.originalX*re-S.current.x,te=ne.originalY*Z-S.current.y,ue=Math.sqrt(q*q+te*te);if(ue<h){let ce=1-ue/h,xe=ce*ce*g;ae+=q/ue*xe/re,se+=te/ue*xe/Z}}let Y=.15;ne.offsetX+=(ae-ne.offsetX)*Y,ne.offsetY+=(se-ne.offsetY)*Y,ne.x=ne.originalX+ne.offsetX,ne.y=ne.originalY+ne.offsetY}},[c,u,d,f,o,n,m,h,g]),z=(0,$i.useCallback)((X,ie,ee,re)=>{if(!v)return{x:X,y:ie};let Z=ee/2,J=re/2,Q=Math.cos(b*Math.PI/180),ne=Math.sin(b*Math.PI/180),ae=Math.cos(w*Math.PI/180),se=Math.sin(w*Math.PI/180),Y=X-Z,q=ie-J,te=-Y*se;Y=Y*ae;let ue=q*Q-te*ne,ce=q*ne+te*Q,xe=y/(y+ce);return Y=Y*xe+Z,q=ue*xe+J,{x:Y,y:q}},[v,y,b,w]),W=(0,$i.useCallback)((X,ie)=>{let ee=N.current;if(!ee.length)return;let re=ie.width,Z=ie.height;X.clearRect(0,0,re,Z),l!=="transparent"&&(X.fillStyle=l,X.fillRect(0,0,re,Z)),X.strokeStyle=T?J(X,re,Z):a,X.lineWidth=i,X.globalAlpha=s,X.lineCap="round",X.lineJoin="round",L>0&&(X.filter=`blur(${L}px)`),x&&(X.shadowBlur=C,X.shadowColor=k||a),X.beginPath();for(let Q=0;Q<=o;Q++)for(let ne=0;ne<=n;ne++){let ae=ee[Q][ne],se=ae.x*re,Y=ae.y*Z,q=z(se,Y,re,Z);ne===0?X.moveTo(q.x,q.y):X.lineTo(q.x,q.y)}for(let Q=0;Q<=n;Q++)for(let ne=0;ne<=o;ne++){let ae=ee[ne][Q],se=ae.x*re,Y=ae.y*Z,q=z(se,Y,re,Z);ne===0?X.moveTo(q.x,q.y):X.lineTo(q.x,q.y)}X.stroke(),x&&(X.shadowBlur=0),L>0&&(X.filter="none");function J(Q,ne,ae){let se=Q.createLinearGradient(0,0,ne,ae);return _.forEach((Y,q)=>{se.addColorStop(q/(_.length-1),Y)}),se}},[o,n,a,i,s,x,C,k,T,_,L,l,z]),H=(0,$i.useCallback)(X=>{let ie=V.current,ee=ie?.getContext("2d");if(!ie||!ee||!P.current){R.current=requestAnimationFrame(H);return}let re=X-A.current;if(re<I){R.current=requestAnimationFrame(H);return}A.current=X-re%I,E.current+=p*.016,U(ie),W(ee,ie),R.current=requestAnimationFrame(H)},[U,W,p,I]),j=(0,$i.useCallback)(()=>{let X=V.current,ie=$.current;if(!X||!ie)return;let ee=ie.getBoundingClientRect(),re=window.devicePixelRatio||1;X.style.width="100%",X.style.height="100%",X.width=ee.width*re,X.height=ee.height*re;let Z=X.getContext("2d");Z&&(Z.scale(re,re),X.width=ee.width,X.height=ee.height),M()},[M]),K=(0,$i.useCallback)(X=>{let ie=V.current;if(!ie)return;let ee=ie.getBoundingClientRect();S.current.x=X.clientX-ee.left,S.current.y=X.clientY-ee.top},[]),G=(0,$i.useCallback)(()=>{S.current.x=-1e3,S.current.y=-1e3},[]);return(0,$i.useEffect)(()=>{if(!B)return;let X=$.current;if(!X)return;let ie=new ResizeObserver(()=>{j()});return ie.observe(X),()=>ie.disconnect()},[j,B]),(0,$i.useEffect)(()=>{let X=$.current;if(!X)return;let ie=new IntersectionObserver(([ee])=>{P.current=ee.isIntersecting},{threshold:.1});return ie.observe(X),()=>ie.disconnect()},[]),(0,$i.useEffect)(()=>{let X=V.current,ie=$.current;if(!(!X||!ie))return j(),m&&(X.addEventListener("mousemove",K),X.addEventListener("mouseleave",G)),R.current=requestAnimationFrame(H),()=>{R.current&&cancelAnimationFrame(R.current),X&&(X.removeEventListener("mousemove",K),X.removeEventListener("mouseleave",G))}},[j,K,G,H,m]),(0,m1.jsxs)("div",{ref:$,className:D("relative w-full h-full overflow-hidden",r),style:{backgroundColor:l==="transparent"?void 0:l},children:[(0,m1.jsx)("canvas",{ref:V,className:D("absolute inset-0 w-full h-full",t),style:{imageRendering:"crisp-edges"}}),e&&(0,m1.jsx)("div",{className:"relative z-10",children:e})]})},qne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,m1.jsx)(ze,{componentName:"GridDistortion",compact:!0,className:"inline-block"}):(0,m1.jsx)(I$t,{...e})};qne.displayName="GridDistortion";var md=F(ge(),1);var h1=F(le(),1);var L$t=({children:e,className:t,containerClassName:r,layers:n=3,colors:o=["#0066cc","#0052a3","#003d7a"],amplitude:a=50,frequency:i=2,speed:s=.5,opacity:l=.5,backgroundColor:c="transparent",waveStyle:u="smooth",parallax:d=!0,parallaxIntensity:f=.5,direction:p="horizontal",blur:m=0,gradient:h=!0,gradientType:g="linear",animationType:v="continuous",interactive:y=!1,mouseRadius:b=150,fps:w=60})=>{let x=(0,md.useRef)(null),C=(0,md.useRef)(void 0),k=(0,md.useRef)([]),T=(0,md.useRef)({x:0,y:0}),_=(0,md.useRef)(0),B=(0,md.useRef)(0),O=1e3/w,L=(0,md.useCallback)(()=>{let A=[];for(let P=0;P<n;P++){let I=P/n;A.push({amplitude:a*(1-I*(d?f:0)),frequency:i*(1+I*.2),speed:s*(1-I*(d?f*.5:0)),phase:Math.PI*2*P/n,color:o[P%o.length]})}k.current=A},[n,a,i,s,d,f,o]),V=(A,P,I,M=0)=>{let U=0;switch(u){case"smooth":U=Math.sin((A*P.frequency+I*P.speed+P.phase)*.01)*P.amplitude;break;case"sharp":let z=(A*P.frequency+I*P.speed+P.phase)*.01;U=(Math.sin(z)>0?1:-1)*P.amplitude;break;case"turbulent":U=Math.sin((A*P.frequency+I*P.speed+P.phase)*.01)*P.amplitude,U+=Math.sin((A*P.frequency*2.3+I*P.speed*1.5)*.01)*P.amplitude*.3,U+=Math.sin((A*P.frequency*3.7+I*P.speed*.7)*.01)*P.amplitude*.2;break;case"organic":U=Math.sin((A*P.frequency+I*P.speed+P.phase)*.01)*P.amplitude,U*=1+Math.sin(A*.003+I*.001)*.2;break}return y&&M>0&&(U+=M*20),U},$=(A,P,I,M)=>{let U=_.current;if(A.save(),m>0&&(A.filter=`blur(${m*(1-I/n)}px)`),h){let z;g==="radial"?z=A.createRadialGradient(M.width/2,M.height/2,0,M.width/2,M.height/2,M.width/2):p==="vertical"?z=A.createLinearGradient(0,0,0,M.height):p==="diagonal"?z=A.createLinearGradient(0,0,M.width,M.height):z=A.createLinearGradient(0,0,M.width,0);let W=P.color,H=P.color;if(P.color.startsWith("rgba")){let j=P.color.match(/rgba?\((\d+),\s*(\d+),\s*(\d+)/);j&&(W=`rgba(${j[1]}, ${j[2]}, ${j[3]}, 0)`,H=`rgba(${j[1]}, ${j[2]}, ${j[3]}, ${l})`)}else if(P.color.startsWith("#")){let j=Math.floor(l*255).toString(16).padStart(2,"0");W=P.color+"00",H=P.color+j}else W=P.color,H=P.color;z.addColorStop(0,W),z.addColorStop(.5,H),z.addColorStop(1,W),A.fillStyle=z}else A.fillStyle=P.color,A.globalAlpha=l*(1-I*.2/n);if(A.beginPath(),p==="vertical"){A.moveTo(0,0);for(let z=0;z<=M.height;z+=5){let W=y?R(M.width/2,z):0,H=M.width/2+V(z,P,U,W);A.lineTo(H,z)}A.lineTo(M.width,M.height),A.lineTo(M.width,0)}else if(p==="diagonal"){let z=Math.sqrt(M.width*M.width+M.height*M.height);A.moveTo(0,M.height);for(let W=0;W<=z;W+=5){let H=W/z*M.width,j=W/z*M.height,K=y?R(H,j):0,G=V(W,P,U,K);A.lineTo(H,M.height-j+G)}A.lineTo(M.width,0),A.lineTo(M.width,M.height)}else{A.moveTo(0,M.height);for(let z=0;z<=M.width;z+=5){let W=y?R(z,M.height/2):0,H=M.height/2+V(z,P,U,W);A.lineTo(z,H)}A.lineTo(M.width,M.height)}A.closePath(),A.fill(),A.restore()},R=(A,P)=>{let I=A-T.current.x,M=P-T.current.y,U=Math.sqrt(I*I+M*M);return U<b?(1-U/b)*Math.sin(_.current*.01):0},N=(0,md.useCallback)(A=>{let P=x.current;if(!P)return;let I=P.getContext("2d",{alpha:!0,desynchronized:!0});if(!I)return;if(A-B.current<O){C.current=requestAnimationFrame(N);return}B.current=A,v==="continuous"?_.current+=1:v==="pulse"?_.current+=1+Math.sin(A*.001)*.5:v==="breathe"&&(_.current+=.5+Math.sin(A*5e-4)*.5),I.clearRect(0,0,P.width,P.height);let U=k.current;for(let z=U.length-1;z>=0;z--)$(I,U[z],z,P);C.current=requestAnimationFrame(N)},[O,v]),S=(0,md.useCallback)(()=>{let A=x.current;if(!A)return;let P=A.getBoundingClientRect();A.width=P.width,A.height=P.height,L()},[L]),E=(0,md.useCallback)(A=>{let P=x.current;if(!P)return;let I=P.getBoundingClientRect();T.current={x:A.clientX-I.left,y:A.clientY-I.top}},[]);return(0,md.useEffect)(()=>{let A=x.current;if(!A)return;let P=A.getBoundingClientRect();return A.width=P.width,A.height=P.height,L(),window.addEventListener("resize",S),y&&window.addEventListener("mousemove",E),C.current=requestAnimationFrame(N),()=>{window.removeEventListener("resize",S),window.removeEventListener("mousemove",E),C.current&&cancelAnimationFrame(C.current)}},[L,S,E,N,y]),(0,h1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),style:{backgroundColor:c},children:[(0,h1.jsx)("canvas",{ref:x,className:D("absolute inset-0 w-full h-full",t)}),e&&(0,h1.jsx)("div",{className:"relative z-10",children:e})]})},Gne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,h1.jsx)(ze,{componentName:"Waves",compact:!0,className:"inline-block"}):(0,h1.jsx)(L$t,{...e})};Gne.displayName="Waves";var Xl=F(ge(),1);var g1=F(le(),1);var D$t=({children:e,className:t,containerClassName:r,colors:n=["#667eea","#764ba2","#f093fb","#c471ed","#12c2e9"],speed:o=5,angle:a=45,type:i="linear",animationStyle:s="flow",blur:l=0,opacity:c=1,steps:u=10,noise:d=!1,noiseOpacity:f=.05,interactive:p=!1,mouseRadius:m=200,parallax:h=!1,parallaxIntensity:g=.5,scale:v=1,blendMode:y="normal",smooth:b=!0,fps:w=60})=>{let x=(0,Xl.useRef)(null),C=(0,Xl.useRef)(void 0),k=(0,Xl.useRef)([]),T=(0,Xl.useRef)({x:0,y:0}),_=(0,Xl.useRef)(0),B=(0,Xl.useRef)(0),O=1e3/w,L=(0,Xl.useCallback)(()=>{let E=x.current;if(!E)return;let A=[],P=Math.ceil(Math.sqrt(u));for(let I=0;I<u;I++){let M=I%P/(P-1),U=Math.floor(I/P)/(P-1);A.push({x:M*E.width,y:U*E.height,color:n[I%n.length],radius:E.width/P*v,velocity:{x:(Math.random()-.5)*o,y:(Math.random()-.5)*o}})}k.current=A},[n,u,o,v]),V=(0,Xl.useCallback)(E=>{k.current.forEach(P=>{if(s==="flow")P.x+=P.velocity.x,P.y+=P.velocity.y,(P.x<=0||P.x>=E.width)&&(P.velocity.x*=-1),(P.y<=0||P.y>=E.height)&&(P.velocity.y*=-1);else if(s==="morph"){let I=_.current*.01;P.x+=Math.sin(I+P.x*.01)*o*.5,P.y+=Math.cos(I+P.y*.01)*o*.5}else if(s==="rotate"){let I=E.width/2,M=E.height/2,U=P.x-I,z=P.y-M,W=Math.atan2(z,U)+o*.001,H=Math.sqrt(U*U+z*z);P.x=I+Math.cos(W)*H,P.y=M+Math.sin(W)*H}if(p){let I=P.x-T.current.x,M=P.y-T.current.y,U=Math.sqrt(I*I+M*M);if(U<m){let z=(1-U/m)*2;P.x+=I/U*z,P.y+=M/U*z}}})},[s,o,p,m]),$=(0,Xl.useCallback)((E,A)=>{if(E.globalCompositeOperation=y,E.globalAlpha=c,i==="mesh")k.current.forEach((I,M)=>{let U=E.createRadialGradient(I.x,I.y,0,I.x,I.y,I.radius),z=n[(M+1)%n.length];U.addColorStop(0,I.color),U.addColorStop(1,z+"00"),E.fillStyle=U,E.fillRect(0,0,A.width,A.height)});else if(i==="radial"){let P=_.current*.01,I=A.width/2+Math.sin(P)*A.width*.1,M=A.height/2+Math.cos(P)*A.height*.1,U=Math.min(A.width,A.height)*v,z=E.createRadialGradient(I,M,0,I,M,U);n.forEach((W,H)=>{let j=H/(n.length-1),K=s==="pulse"?j*(1+Math.sin(P*.5)*.2):j;z.addColorStop(Math.min(1,K),W)}),E.fillStyle=z,E.fillRect(0,0,A.width,A.height)}else if(i==="conic"){let P=A.width/2,I=A.height/2,M=_.current*.01;for(let U=0;U<360;U+=5){let z=(U+M*o*10)%360*Math.PI/180,W=Math.floor(U/360*n.length);E.save(),E.translate(P,I),E.rotate(z);let H=E.createLinearGradient(0,0,A.width,0);H.addColorStop(0,n[W]),H.addColorStop(1,n[(W+1)%n.length]),E.fillStyle=H,E.fillRect(0,-A.height,A.width,A.height*2),E.restore()}}else{let P=_.current*.01,I=0,M=0,U=A.width,z=A.height;if(s==="flow"){let H=P*o*10;I=Math.sin(H*.01)*A.width*.5,M=Math.cos(H*.01)*A.height*.5}else if(s==="rotate"){let j=(a+P*o*10)%360*Math.PI/180;U=A.width/2+Math.cos(j)*A.width,z=A.height/2+Math.sin(j)*A.height}let W=E.createLinearGradient(I,M,U,z);s==="shift"?n.forEach((H,j)=>{let K=(j/(n.length-1)+P*.1)%1;W.addColorStop(K,H)}):n.forEach((H,j)=>{W.addColorStop(j/(n.length-1),H)}),E.fillStyle=W,E.fillRect(0,0,A.width,A.height)}if(d){let P=E.createImageData(A.width,A.height),I=P.data;for(let M=0;M<I.length;M+=4){let U=Math.random()*255;I[M]=U,I[M+1]=U,I[M+2]=U,I[M+3]=f*255}E.putImageData(P,0,0)}},[i,n,a,s,o,v,c,y,d,f]),R=(0,Xl.useCallback)(E=>{let A=x.current;if(!A)return;let P=A.getContext("2d",{alpha:!0,desynchronized:!0});if(!P)return;let I=E-B.current;if(b&&I<O){C.current=requestAnimationFrame(R);return}B.current=E,_.current+=1,P.clearRect(0,0,A.width,A.height),l>0&&(P.filter=`blur(${l}px)`),i==="mesh"&&V(A),$(P,A),C.current=requestAnimationFrame(R)},[O,b,l,i,V,$]),N=(0,Xl.useCallback)(()=>{let E=x.current;if(!E)return;let A=E.getBoundingClientRect();E.width=A.width,E.height=A.height,i==="mesh"&&L()},[i,L]),S=(0,Xl.useCallback)(E=>{let A=x.current;if(!A)return;let P=A.getBoundingClientRect();T.current={x:E.clientX-P.left,y:E.clientY-P.top}},[]);return(0,Xl.useEffect)(()=>{if(!h)return;let E=()=>{let A=x.current;if(!A)return;let I=window.scrollY*g;A.style.transform=`translateY(${I}px)`};return window.addEventListener("scroll",E),()=>window.removeEventListener("scroll",E)},[h,g]),(0,Xl.useEffect)(()=>{let E=x.current;if(!E)return;let A=E.getBoundingClientRect();return E.width=A.width,E.height=A.height,i==="mesh"&&L(),window.addEventListener("resize",N),p&&window.addEventListener("mousemove",S),C.current=requestAnimationFrame(R),()=>{window.removeEventListener("resize",N),window.removeEventListener("mousemove",S),C.current&&cancelAnimationFrame(C.current)}},[i,L,N,S,R,p]),(0,g1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),children:[(0,g1.jsx)("canvas",{ref:x,className:D("absolute inset-0 w-full h-full",t)}),e&&(0,g1.jsx)("div",{className:"relative z-10",children:e})]})},Kne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,g1.jsx)(ze,{componentName:"GradientFlow",compact:!0,className:"inline-block"}):(0,g1.jsx)(D$t,{...e})};Kne.displayName="GradientFlow";var Jl=F(ge(),1);var v1=F(le(),1);var O$t=({children:e,className:t,containerClassName:r,colors:n=["#FF006E","#FB5607","#FFBE0B","#8338EC","#3A86FF"],speed:o=.5,gridSize:a=4,animate:i=!0,animationType:s="wave",opacity:l=1,blur:c=40,interactive:u=!1,mouseRadius:d=200,blendMode:f="normal",complexity:p=12,interpolation:m="smooth",grain:h=!1,grainOpacity:g=.03,saturation:v=1,brightness:y=1,fps:b=60})=>{let w=(0,Jl.useRef)(null),x=(0,Jl.useRef)(void 0),C=(0,Jl.useRef)([]),k=(0,Jl.useRef)({x:0,y:0}),T=(0,Jl.useRef)(0),_=(0,Jl.useRef)(0),B=1e3/b,O=(0,Jl.useCallback)(()=>{let E=w.current;if(!E)return;let A=E.width>0?E.width:800,P=E.height>0?E.height:600,I=[],M=p;for(let U=0;U<M;U++){let z=U/M*Math.PI*2,W=Math.random()*.5+.2;I.push({x:A/2+Math.cos(z)*W*A,y:P/2+Math.sin(z)*W*P,vx:(Math.random()-.5)*o,vy:(Math.random()-.5)*o,color:n[U%n.length],radius:Math.max(100,(A+P)/4),phase:U/M*Math.PI*2})}C.current=I},[n,p,o]),L=(0,Jl.useCallback)((E,A=1)=>{let P=E.replace("#",""),I=parseInt(P.substring(0,2),16),M=parseInt(P.substring(2,4),16),U=parseInt(P.substring(4,6),16),z=Math.min(255,Math.max(0,I*y)),W=Math.min(255,Math.max(0,M*y)),H=Math.min(255,Math.max(0,U*y));if(v!==1){let j=(z+W+H)/3,K=Math.round(j+(z-j)*v),G=Math.round(j+(W-j)*v),X=Math.round(j+(H-j)*v);return`rgba(${Math.min(255,Math.max(0,K))}, ${Math.min(255,Math.max(0,G))}, ${Math.min(255,Math.max(0,X))}, ${A})`}return`rgba(${Math.round(z)}, ${Math.round(W)}, ${Math.round(H)}, ${A})`},[v,y]),V=(0,Jl.useCallback)(E=>{let A=C.current,P=T.current*.01;A.forEach((I,M)=>{switch(s){case"wave":I.x+=Math.sin(P+I.phase)*.5,I.y+=Math.cos(P+I.phase)*.5;break;case"morph":let U=P+I.phase;I.x+=Math.sin(U)*1,I.y+=Math.cos(U*1.5)*1;break;case"pulse":let z=1+Math.sin(P*2+I.phase)*.2,W=E.width/2,H=E.height/2,j=I.x-W,K=I.y-H;I.x=W+j*z,I.y=H+K*z;break;case"swirl":let G=P*.5+I.phase,X=Math.sqrt(Math.pow(I.x-E.width/2,2)+Math.pow(I.y-E.height/2,2));I.x=E.width/2+Math.cos(G)*X,I.y=E.height/2+Math.sin(G)*X;break;case"flow":default:I.x+=I.vx,I.y+=I.vy,(I.x<=0||I.x>=E.width)&&(I.vx*=-.95,I.x=Math.max(0,Math.min(E.width,I.x))),(I.y<=0||I.y>=E.height)&&(I.vy*=-.95,I.y=Math.max(0,Math.min(E.height,I.y)));break}if(u){let U=I.x-k.current.x,z=I.y-k.current.y,W=Math.sqrt(U*U+z*z);if(W>0&&W<d){let H=(1-W/d)*3;I.x+=U/W*H,I.y+=z/W*H}}isFinite(I.x)||(I.x=E.width/2),isFinite(I.y)||(I.y=E.height/2)})},[s,o,u,d]),$=(0,Jl.useCallback)((E,A)=>{let P=C.current;if(E.clearRect(0,0,A.width,A.height),E.globalCompositeOperation=f,E.globalAlpha=l,c>0&&(E.filter=`blur(${c}px)`),P.forEach((I,M)=>{let U=isFinite(I.x)?I.x:A.width/2,z=isFinite(I.y)?I.y:A.height/2,W=isFinite(I.radius)&&I.radius>0?I.radius:100,H=E.createRadialGradient(U,z,0,U,z,W);m==="smooth"?(H.addColorStop(0,L(I.color,1)),H.addColorStop(.5,L(I.color,.5)),H.addColorStop(1,L(I.color,0))):m==="bezier"?(H.addColorStop(0,L(I.color,1)),H.addColorStop(.25,L(I.color,.8)),H.addColorStop(.5,L(I.color,.5)),H.addColorStop(.75,L(I.color,.25)),H.addColorStop(1,L(I.color,0))):(H.addColorStop(0,L(I.color,1)),H.addColorStop(1,L(I.color,0))),E.fillStyle=H,E.fillRect(0,0,A.width,A.height)}),h){E.filter="none";let I=E.createImageData(A.width,A.height),M=I.data;for(let U=0;U<M.length;U+=4){let z=Math.random()*255;M[U]=z,M[U+1]=z,M[U+2]=z,M[U+3]=g*255}E.globalCompositeOperation="overlay",E.putImageData(I,0,0)}},[l,c,f,m,h,g,L]),R=(0,Jl.useCallback)(E=>{let A=w.current;if(!A)return;let P=A.getContext("2d",{alpha:!0,desynchronized:!0});if(!P)return;if(E-_.current<B){x.current=requestAnimationFrame(R);return}_.current=E,i&&(T.current+=o*2.5),V(A),$(P,A),x.current=requestAnimationFrame(R)},[B,V,$,i]),N=(0,Jl.useCallback)(()=>{let E=w.current;if(!E)return;let A=E.getBoundingClientRect();E.width=A.width,E.height=A.height,O()},[O]),S=(0,Jl.useCallback)(E=>{let A=w.current;if(!A)return;let P=A.getBoundingClientRect();k.current={x:E.clientX-P.left,y:E.clientY-P.top}},[]);return(0,Jl.useEffect)(()=>{let E=w.current;if(!E)return;let A=E.getBoundingClientRect();if(E.width=A.width,E.height=A.height,O(),window.addEventListener("resize",N),u&&window.addEventListener("mousemove",S),i)x.current=requestAnimationFrame(R);else{let P=E.getContext("2d");P&&$(P,E)}return()=>{window.removeEventListener("resize",N),window.removeEventListener("mousemove",S),x.current&&cancelAnimationFrame(x.current)}},[O,N,S,R,$,u,i]),(0,v1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),children:[(0,v1.jsx)("canvas",{ref:w,className:D("absolute inset-0 w-full h-full",t)}),e&&(0,v1.jsx)("div",{className:"relative z-10 h-full w-full",children:e})]})},Yne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,v1.jsx)(ze,{componentName:"MeshGradient",compact:!0,className:"inline-block"}):(0,v1.jsx)(O$t,{...e})};Yne.displayName="MeshGradient";var Ec=F(ge(),1);var y1=F(le(),1);var _$t=({children:e,className:t,containerClassName:r,colors:n=["#6366f1","#8b5cf6","#ec4899","#f43f5e"],blobCount:o=5,speed:a=.3,sizeRange:i=[50,150],opacity:s=.8,blur:l=40,contrast:c=15,interactive:u=!1,mouseRadius:d=150,viscosity:f=.5,tension:p=.03,glow:m=!0,glowIntensity:h=.5,backgroundColor:g="transparent",animationStyle:v="float",gradientOverlay:y=!1,fps:b=60})=>{let w=(0,Ec.useRef)(null),x=(0,Ec.useRef)(void 0),C=(0,Ec.useRef)([]),k=(0,Ec.useRef)({x:0,y:0,vx:0,vy:0}),T=(0,Ec.useRef)(0),_=(0,Ec.useRef)(0),B=1e3/b,O=(0,Ec.useCallback)(()=>{let S=w.current;if(!S)return;let E=[],[A,P]=i;for(let I=0;I<o;I++){let M=A+Math.random()*(P-A);E.push({x:Math.random()*S.width,y:Math.random()*S.height,vx:(Math.random()-.5)*a,vy:(Math.random()-.5)*a,radius:M,targetRadius:M,color:n[I%n.length],phase:Math.random()*Math.PI*2,morphSpeed:.01+Math.random()*.02})}C.current=E},[n,o,a,i]),L=(0,Ec.useCallback)(S=>{let E=C.current,A=T.current*.01;E.forEach((P,I)=>{switch(v){case"morph":P.x+=Math.sin(A+P.phase)*a,P.y+=Math.cos(A*.7+P.phase)*a,P.radius=P.targetRadius+Math.sin(A*P.morphSpeed*10)*20;break;case"bubble":P.y-=a*2,P.x+=Math.sin(A+P.phase)*a,P.y<-P.radius&&(P.y=S.height+P.radius,P.x=Math.random()*S.width),P.radius=P.targetRadius+Math.sin(A*2+P.phase)*10;break;case"lava":let M=A*.5;P.x+=Math.sin(M+P.phase)*a*.5,P.y+=(Math.cos(M*.7+P.phase)-.5)*a,P.radius=P.targetRadius*(1+Math.sin(M*P.morphSpeed*5)*.3);break;case"float":default:P.x+=P.vx*(1-f),P.y+=P.vy*(1-f),P.vx+=(Math.random()-.5)*p,P.vy+=(Math.random()-.5)*p;let U=a*2;if(P.vx=Math.max(-U,Math.min(U,P.vx)),P.vy=Math.max(-U,Math.min(U,P.vy)),P.radius+=(P.targetRadius-P.radius)*.1,Math.random()<.01){let[z,W]=i;P.targetRadius=z+Math.random()*(W-z)}break}if(P.x<P.radius?(P.x=P.radius,P.vx=Math.abs(P.vx)*.8):P.x>S.width-P.radius&&(P.x=S.width-P.radius,P.vx=-Math.abs(P.vx)*.8),P.y<P.radius?(P.y=P.radius,P.vy=Math.abs(P.vy)*.8):P.y>S.height-P.radius&&(P.y=S.height-P.radius,P.vy=-Math.abs(P.vy)*.8),E.forEach((M,U)=>{if(I===U)return;let z=M.x-P.x,W=M.y-P.y,H=Math.sqrt(z*z+W*W),j=(P.radius+M.radius)*.8;if(H<j&&H>0){let K=(j-H)/H*p;P.vx-=z*K/2,P.vy-=W*K/2}}),u){let M=P.x-k.current.x,U=P.y-k.current.y,z=Math.sqrt(M*M+U*U);if(z<d&&z>0){let W=(1-z/d)*2;P.vx+=M/z*W+k.current.vx*.1,P.vy+=U/z*W+k.current.vy*.1}}})},[v,a,f,p,i,u,d]),V=(0,Ec.useCallback)((S,E)=>{if(S.clearRect(0,0,E.width,E.height),l>0&&c>0&&(S.filter=`blur(${l}px) contrast(${c})`),S.globalAlpha=s,C.current.forEach(P=>{let I=S.createRadialGradient(P.x,P.y,0,P.x,P.y,P.radius);m?(I.addColorStop(0,P.color),I.addColorStop(.5,P.color+"CC"),I.addColorStop(.8,P.color+"66"),I.addColorStop(1,P.color+"00"),S.save(),S.filter=`blur(${P.radius*h}px)`,S.globalAlpha=s*.5,S.fillStyle=P.color,S.beginPath(),S.arc(P.x,P.y,P.radius*1.5,0,Math.PI*2),S.fill(),S.restore()):(I.addColorStop(0,P.color),I.addColorStop(.7,P.color+"88"),I.addColorStop(1,P.color+"00")),S.fillStyle=I,S.beginPath(),S.arc(P.x,P.y,P.radius,0,Math.PI*2),S.fill()}),y){S.filter="none";let P=S.createLinearGradient(0,0,E.width,E.height);P.addColorStop(0,"rgba(255, 255, 255, 0.1)"),P.addColorStop(.5,"rgba(255, 255, 255, 0)"),P.addColorStop(1,"rgba(0, 0, 0, 0.1)"),S.globalCompositeOperation="overlay",S.fillStyle=P,S.fillRect(0,0,E.width,E.height),S.globalCompositeOperation="source-over"}},[l,c,s,m,h,y]),$=(0,Ec.useCallback)(S=>{let E=w.current;if(!E)return;let A=E.getContext("2d",{alpha:!0,desynchronized:!0});if(!A)return;if(S-_.current<B){x.current=requestAnimationFrame($);return}_.current=S,T.current+=1,L(E),V(A,E),x.current=requestAnimationFrame($)},[B,L,V]),R=(0,Ec.useCallback)(()=>{let S=w.current;if(!S)return;let E=S.getBoundingClientRect();S.width=E.width,S.height=E.height,O()},[O]),N=(0,Ec.useCallback)(S=>{let E=w.current;if(!E)return;let A=E.getBoundingClientRect(),P=S.clientX-A.left,I=S.clientY-A.top;k.current.vx=P-k.current.x,k.current.vy=I-k.current.y,k.current.x=P,k.current.y=I},[]);return(0,Ec.useEffect)(()=>{let S=w.current;if(!S)return;let E=S.getBoundingClientRect();return S.width=E.width,S.height=E.height,O(),window.addEventListener("resize",R),u&&window.addEventListener("mousemove",N),x.current=requestAnimationFrame($),()=>{window.removeEventListener("resize",R),window.removeEventListener("mousemove",N),x.current&&cancelAnimationFrame(x.current)}},[O,R,N,$,u]),(0,y1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),style:{backgroundColor:g},children:[(0,y1.jsx)("canvas",{ref:w,className:D("absolute inset-0 w-full h-full",t)}),e&&(0,y1.jsx)("div",{className:"relative z-10",children:e})]})},Xne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,y1.jsx)(ze,{componentName:"LiquidBackground",compact:!0,className:"inline-block"}):(0,y1.jsx)(_$t,{...e})};Xne.displayName="LiquidBackground";var Ql=F(ge(),1);var b1=F(le(),1);var F$t=({children:e,className:t,containerClassName:r,color:n="green",customColor:o,speed:a=5,fontSize:i=16,opacity:s=1,charSet:l="matrix",customChars:c,backgroundOpacity:u=1,glow:d=!0,glowIntensity:f=.5,density:p=.5,fadeLength:m=20,interactive:h=!1,mouseRadius:g=200,fps:v=30})=>{let y=(0,Ql.useRef)(null),b=(0,Ql.useRef)(void 0),w=(0,Ql.useRef)([]),x=(0,Ql.useRef)({x:0,y:0}),C=(0,Ql.useRef)(0),k=1e3/v,T=(0,Ql.useCallback)(()=>{switch(l){case"matrix":return"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789@#$%^&*()_+-=[]{}|;:,.<>?\uFF71\uFF72\uFF73\uFF74\uFF75\uFF76\uFF77\uFF78\uFF79\uFF7A\uFF7B\uFF7C\uFF7D\uFF7E\uFF7F\uFF80\uFF81\uFF82\uFF83\uFF84\uFF85\uFF86\uFF87\uFF88\uFF89\uFF8A\uFF8B\uFF8C\uFF8D\uFF8E\uFF8F\uFF90\uFF91\uFF92\uFF93\uFF94\uFF95\uFF96\uFF97\uFF98\uFF99\uFF9A\uFF9B\uFF9C\uFF9D";case"binary":return"01";case"japanese":return"\uFF71\uFF72\uFF73\uFF74\uFF75\uFF76\uFF77\uFF78\uFF79\uFF7A\uFF7B\uFF7C\uFF7D\uFF7E\uFF7F\uFF80\uFF81\uFF82\uFF83\uFF84\uFF85\uFF86\uFF87\uFF88\uFF89\uFF8A\uFF8B\uFF8C\uFF8D\uFF8E\uFF8F\uFF90\uFF91\uFF92\uFF93\uFF94\uFF95\uFF96\uFF97\uFF98\uFF99\uFF9A\uFF9B\uFF9C\uFF9D";case"chinese":return"\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D\u5341\u767E\u5343\u4E07\u4EBF\u5146\u4EAC\u5793\u79ED\u7A70\u6E9D\u6F97\u6B63\u8F09\u6975";case"emoji":return"\u{1F600}\u{1F603}\u{1F604}\u{1F601}\u{1F606}\u{1F605}\u{1F923}\u{1F602}\u{1F642}\u{1F609}\u{1F60A}\u{1F607}\u{1F970}\u{1F60D}\u{1F929}\u{1F618}\u{1F617}\u{1F61A}\u{1F619}\u{1F60B}\u{1F61B}\u{1F61C}\u{1F92A}\u{1F61D}\u{1F911}\u{1F917}\u{1F92D}\u{1F92B}\u{1F914}\u{1F910}\u{1F928}\u{1F610}\u{1F611}\u{1F636}\u{1F60F}\u{1F612}\u{1F644}\u{1F62C}\u{1F925}\u{1F60C}\u{1F614}\u{1F62A}\u{1F924}\u{1F634}\u{1F637}\u{1F912}\u{1F915}\u{1F922}\u{1F92E}\u{1F927}\u{1F975}\u{1F976}\u{1F974}\u{1F635}\u{1F92F}\u{1F920}\u{1F973}\u{1F60E}\u{1F913}\u{1F9D0}\u{1F615}\u{1F61F}\u{1F641}\u{1F62E}\u{1F62F}\u{1F632}\u{1F633}\u{1F97A}\u{1F626}\u{1F627}\u{1F628}\u{1F630}\u{1F625}\u{1F622}\u{1F62D}\u{1F631}\u{1F616}\u{1F623}\u{1F61E}\u{1F613}\u{1F629}\u{1F62B}\u{1F971}\u{1F624}\u{1F621}\u{1F620}\u{1F92C}\u{1F608}\u{1F47F}\u{1F480}\u2620\uFE0F\u{1F4A9}\u{1F921}\u{1F479}\u{1F47A}\u{1F47B}\u{1F47D}";case"custom":return c||"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";default:return"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"}},[l,c]),_=(0,Ql.useCallback)((N=1)=>{let S={green:`rgba(0, 255, 0, ${N})`,blue:`rgba(0, 150, 255, ${N})`,red:`rgba(255, 0, 0, ${N})`,purple:`rgba(150, 0, 255, ${N})`,cyan:`rgba(0, 255, 255, ${N})`,white:`rgba(255, 255, 255, ${N})`,custom:o||`rgba(0, 255, 0, ${N})`};return S[n]||S.green},[n,o]),B=(0,Ql.useCallback)(()=>{let N=y.current;if(!N)return;let S=[],E=i,A=Math.floor(N.width/E*p),P=T();for(let I=0;I<A;I++){let M={x:Math.floor(Math.random()*A)*E,y:Math.random()*N.height,speed:.5+Math.random()*(a/10),characters:[],fadePositions:[]},U=Math.floor(Math.random()*m)+10;for(let z=0;z<U;z++)M.characters.push(P[Math.floor(Math.random()*P.length)]),M.fadePositions.push(z/U);S.push(M)}w.current=S},[i,p,a,m,T]),O=(0,Ql.useCallback)(N=>{let S=w.current,E=T();S.forEach(A=>{if(A.y+=A.speed*i,A.y>N.height+A.characters.length*i){A.y=-A.characters.length*i,A.x=Math.floor(Math.random()*Math.floor(N.width/i))*i;let P=Math.floor(Math.random()*m)+10;A.characters=[],A.fadePositions=[];for(let I=0;I<P;I++)A.characters.push(E[Math.floor(Math.random()*E.length)]),A.fadePositions.push(I/P)}if(Math.random()<.05){let P=Math.floor(Math.random()*A.characters.length);A.characters[P]=E[Math.floor(Math.random()*E.length)]}if(h){let P=A.x-x.current.x,I=A.y-x.current.y,M=Math.sqrt(P*P+I*I);if(M<g){let U=(1-M/g)*2;A.speed=Math.min(3,A.speed+U*.1)}else A.speed=Math.max(.5,A.speed*.98)}})},[i,m,h,g,T]),L=(0,Ql.useCallback)((N,S)=>{N.fillStyle=`rgba(0, 0, 0, ${.1})`,N.fillRect(0,0,S.width,S.height),N.font=`${i}px monospace`,N.textAlign="center",N.textBaseline="middle",w.current.forEach(A=>{A.characters.forEach((P,I)=>{let M=A.y-I*i;if(M<-i||M>S.height+i)return;let U=A.fadePositions[I],z=s*(1-U*.8);d&&I===0?(N.shadowBlur=i*f,N.shadowColor=_(1)):N.shadowBlur=0,N.fillStyle=_(z),N.fillText(P,A.x,M)})})},[i,s,d,f,_]),V=(0,Ql.useCallback)(N=>{let S=y.current;if(!S)return;let E=S.getContext("2d",{alpha:!0,desynchronized:!0});if(!E)return;if(N-C.current<k){b.current=requestAnimationFrame(V);return}C.current=N,O(S),L(E,S),b.current=requestAnimationFrame(V)},[k,O,L]),$=(0,Ql.useCallback)(()=>{let N=y.current;if(!N)return;let S=N.getBoundingClientRect();N.width=S.width,N.height=S.height,B()},[B]),R=(0,Ql.useCallback)(N=>{let S=y.current;if(!S)return;let E=S.getBoundingClientRect();x.current={x:N.clientX-E.left,y:N.clientY-E.top}},[]);return(0,Ql.useEffect)(()=>{let N=y.current;if(!N)return;let S=N.getBoundingClientRect();return N.width=S.width,N.height=S.height,B(),window.addEventListener("resize",$),h&&window.addEventListener("mousemove",R),b.current=requestAnimationFrame(V),()=>{window.removeEventListener("resize",$),window.removeEventListener("mousemove",R),b.current&&cancelAnimationFrame(b.current)}},[B,$,R,V,h]),(0,b1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden bg-black",r),children:[(0,b1.jsx)("canvas",{ref:y,className:D("absolute inset-0 w-full h-full",t),style:{opacity:u}}),e&&(0,b1.jsx)("div",{className:"relative z-10",children:e})]})},Jne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,b1.jsx)(ze,{componentName:"MatrixRain",compact:!0,className:"inline-block"}):(0,b1.jsx)(F$t,{...e})};Jne.displayName="MatrixRain";var Nl=F(ge(),1);var x1=F(le(),1);var B$t=({children:e,className:t,containerClassName:r,intensity:n=.5,frequency:o=.3,rgbShift:a=!0,rgbShiftAmount:i=5,scanLines:s=!0,scanLineOpacity:l=.05,noise:c=!0,noiseOpacity:u=.1,colors:d=["#ff0000","#00ff00","#0000ff"],backgroundColor:f="#000000",flicker:p=!0,flickerIntensity:m=.1,distortion:h=!0,distortionAmount:g=10,speed:v=1,interactive:y=!1,mouseRadius:b=200,fps:w=30})=>{let x=(0,Nl.useRef)(null),C=(0,Nl.useRef)(void 0),k=(0,Nl.useRef)([]),T=(0,Nl.useRef)({x:0,y:0}),_=(0,Nl.useRef)(0),B=1e3/w,O=(0,Nl.useRef)(0),L=(0,Nl.useRef)(!1),V=(0,Nl.useCallback)(P=>{let I=[],M=Math.floor(Math.random()*10*n)+2;for(let U=0;U<M;U++){let z={x:0,y:Math.random()*P.height,width:P.width,height:Math.random()*50*n+5,offsetX:(Math.random()-.5)*g*2,offsetY:(Math.random()-.5)*g,rgbOffset:{r:(Math.random()-.5)*i*2,g:(Math.random()-.5)*i*2,b:(Math.random()-.5)*i*2}};I.push(z)}k.current=I},[n,g,i]),$=(0,Nl.useCallback)((P,I)=>{if(s){P.strokeStyle=`rgba(0, 0, 0, ${l})`,P.lineWidth=1;for(let M=0;M<I.height;M+=3)P.beginPath(),P.moveTo(0,M),P.lineTo(I.width,M),P.stroke();Math.random()<.05&&(P.fillStyle=`rgba(255, 255, 255, ${l*.5})`,P.fillRect(0,Math.random()*I.height,I.width,2))}},[s,l]),R=(0,Nl.useCallback)((P,I)=>{if(!c)return;let M=P.createImageData(I.width,I.height),U=M.data;for(let z=0;z<U.length;z+=4){let W=Math.random()*255;U[z]=W,U[z+1]=W,U[z+2]=W,U[z+3]=u*255}P.putImageData(M,0,0)},[c,u]),N=(0,Nl.useCallback)((P,I)=>{if(!(I.width===0||I.height===0)){if(P.clearRect(0,0,I.width,I.height),R(P,I),L.current){let M=k.current,U=P.getImageData(0,0,I.width,I.height);M.forEach(z=>{if(h){P.save();let W=P.getImageData(z.x,z.y,z.width,z.height);P.clearRect(z.x,z.y,z.width,z.height),P.putImageData(W,z.x+z.offsetX,z.y+z.offsetY),a&&(P.globalCompositeOperation="screen",P.fillStyle=d[0]||"#ff0000",P.globalAlpha=.3,P.fillRect(z.x+z.offsetX+z.rgbOffset.r,z.y+z.offsetY,z.width,z.height),P.fillStyle=d[1]||"#00ff00",P.fillRect(z.x+z.offsetX+z.rgbOffset.g,z.y+z.offsetY,z.width,z.height),P.fillStyle=d[2]||"#0000ff",P.fillRect(z.x+z.offsetX+z.rgbOffset.b,z.y+z.offsetY,z.width,z.height),P.globalCompositeOperation="source-over",P.globalAlpha=1),P.restore()}})}$(P,I),p&&Math.random()<m&&(P.fillStyle=`rgba(255, 255, 255, ${Math.random()*m})`,P.fillRect(0,0,I.width,I.height))}},[f,h,a,d,p,m,R,$]),S=(0,Nl.useCallback)(P=>{let I=x.current;if(!I)return;let M=I.getContext("2d",{alpha:!0,desynchronized:!0});if(!M)return;if(P-_.current<B){C.current=requestAnimationFrame(S);return}_.current=P,O.current+=v;let z=o*.1;if(!L.current&&Math.random()<z&&(L.current=!0,V(I),setTimeout(()=>{L.current=!1},Math.random()*200*n+50)),y){let W=I.width/2-T.current.x,H=I.height/2-T.current.y,j=Math.sqrt(W*W+H*H);if(j<b&&!L.current){let K=(1-j/b)*o;Math.random()<K*.05&&(L.current=!0,V(I),setTimeout(()=>{L.current=!1},Math.random()*100+50))}}N(M,I),C.current=requestAnimationFrame(S)},[B,v,o,n,y,b,V,N]),E=(0,Nl.useCallback)(()=>{let P=x.current;if(!P)return;let I=P.getBoundingClientRect();P.width=I.width,P.height=I.height},[]),A=(0,Nl.useCallback)(P=>{let I=x.current;if(!I)return;let M=I.getBoundingClientRect();T.current={x:P.clientX-M.left,y:P.clientY-M.top}},[]);return(0,Nl.useEffect)(()=>{let P=x.current;if(!P)return;let I=()=>{let U=P.getBoundingClientRect();return U.width>0&&U.height>0?(P.width=U.width,P.height=U.height,!0):!1},M=()=>{I()?C.current=requestAnimationFrame(S):setTimeout(M,100)};return window.addEventListener("resize",E),y&&window.addEventListener("mousemove",A),M(),()=>{window.removeEventListener("resize",E),window.removeEventListener("mousemove",A),C.current&&cancelAnimationFrame(C.current)}},[E,A,S,y]),(0,x1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),style:{backgroundColor:f},children:[(0,x1.jsx)("canvas",{ref:x,className:D("absolute inset-0 w-full h-full pointer-events-none",t),style:{zIndex:1}}),e&&(0,x1.jsx)("div",{className:"relative z-10",children:e})]})},Qne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,x1.jsx)(ze,{componentName:"GlitchBackground",compact:!0,className:"inline-block"}):(0,x1.jsx)(B$t,{...e})};Qne.displayName="GlitchBackground";var Tc=F(ge(),1);var w1=F(le(),1);var z$t=({children:e,className:t,containerClassName:r,count:n=20,shapes:o=["circle","square","triangle"],colors:a=["#667eea","#764ba2","#f093fb","#c471ed","#12c2e9"],sizeRange:i=[20,60],speed:s=.5,rotationSpeed:l=1,enable3D:c=!1,depth:u=100,glow:d=!0,glowIntensity:f=.5,backgroundOpacity:p=1,collision:m=!1,gravity:h=!1,gravityStrength:g=.1,interactive:v=!0,mouseRadius:y=150,connections:b=!0,connectionDistance:w=150,connectionOpacity:x=.2,fps:C=60})=>{let k=(0,Tc.useRef)(null),T=(0,Tc.useRef)(void 0),_=(0,Tc.useRef)([]),B=(0,Tc.useRef)({x:0,y:0}),O=(0,Tc.useRef)(0),L=1e3/C,V=(0,Tc.useCallback)(()=>{let P=k.current;if(!P)return;let I=[],[M,U]=i;for(let z=0;z<n;z++){let W={x:Math.random()*P.width,y:Math.random()*P.height,z:c?(Math.random()-.5)*u:0,vx:(Math.random()-.5)*s,vy:(Math.random()-.5)*s,vz:c?(Math.random()-.5)*s*.5:0,size:M+Math.random()*(U-M),shape:o[Math.floor(Math.random()*o.length)],color:a[Math.floor(Math.random()*a.length)],rotation:Math.random()*Math.PI*2,rotationSpeed:(Math.random()-.5)*l*.1,opacity:.8+Math.random()*.2};I.push(W)}_.current=I},[n,o,a,i,s,l,c,u]),$=(0,Tc.useCallback)((P,I)=>{P.save();let M=c?1+I.z/u:1,U=I.size*M;switch(P.translate(I.x,I.y),P.rotate(I.rotation),d&&(P.shadowBlur=U*f,P.shadowColor=I.color),P.fillStyle=I.color,P.globalAlpha=I.opacity*p,I.shape){case"circle":P.beginPath(),P.arc(0,0,U/2,0,Math.PI*2),P.fill();break;case"square":P.fillRect(-U/2,-U/2,U,U);break;case"triangle":P.beginPath(),P.moveTo(0,-U/2),P.lineTo(U/2,U/2),P.lineTo(-U/2,U/2),P.closePath(),P.fill();break;case"hexagon":P.beginPath();for(let W=0;W<6;W++){let H=Math.PI*2/6*W,j=Math.cos(H)*U/2,K=Math.sin(H)*U/2;W===0?P.moveTo(j,K):P.lineTo(j,K)}P.closePath(),P.fill();break;case"star":P.beginPath();for(let W=0;W<10;W++){let H=W%2===0?U/2:U/4,j=Math.PI*2/10*W-Math.PI/2,K=Math.cos(j)*H,G=Math.sin(j)*H;W===0?P.moveTo(K,G):P.lineTo(K,G)}P.closePath(),P.fill();break;case"heart":P.beginPath();let z=U/2;P.moveTo(0,z*.3),P.bezierCurveTo(-z*.5,-z*.3,-z,z*.3,0,z),P.bezierCurveTo(z,z*.3,z*.5,-z*.3,0,z*.3),P.closePath(),P.fill();break}P.restore()},[c,u,d,f,p]),R=(0,Tc.useCallback)((P,I)=>{if(b){P.strokeStyle=`rgba(255, 255, 255, ${x})`,P.lineWidth=1;for(let M=0;M<I.length;M++)for(let U=M+1;U<I.length;U++){let z=I[M].x-I[U].x,W=I[M].y-I[U].y,H=Math.sqrt(z*z+W*W);if(H<w){let j=(1-H/w)*x;P.globalAlpha=j,P.beginPath(),P.moveTo(I[M].x,I[M].y),P.lineTo(I[U].x,I[U].y),P.stroke()}}P.globalAlpha=1}},[b,w,x]),N=(0,Tc.useCallback)(P=>{let I=_.current;I.forEach((M,U)=>{if(M.x+=M.vx,M.y+=M.vy,c&&(M.z+=M.vz),M.rotation+=M.rotationSpeed,h&&(M.vy+=g),(M.x<=M.size/2||M.x>=P.width-M.size/2)&&(M.vx*=-.9,M.x=Math.max(M.size/2,Math.min(P.width-M.size/2,M.x))),(M.y<=M.size/2||M.y>=P.height-M.size/2)&&(M.vy*=-.9,M.y=Math.max(M.size/2,Math.min(P.height-M.size/2,M.y))),c&&(M.z<=-u/2||M.z>=u/2)&&(M.vz*=-.9,M.z=Math.max(-u/2,Math.min(u/2,M.z))),m&&I.forEach((z,W)=>{if(U===W)return;let H=M.x-z.x,j=M.y-z.y,K=Math.sqrt(H*H+j*j),G=(M.size+z.size)/2;if(K<G&&K>0){let X=Math.atan2(j,H),ie=(G-K)/K;M.vx+=Math.cos(X)*ie*.5,M.vy+=Math.sin(X)*ie*.5,z.vx-=Math.cos(X)*ie*.5,z.vy-=Math.sin(X)*ie*.5}}),v){let z=M.x-B.current.x,W=M.y-B.current.y,H=Math.sqrt(z*z+W*W);if(H<y&&H>0){let j=(1-H/y)*2;M.vx+=z/H*j,M.vy+=W/H*j}}M.vx*=.99,M.vy*=.99,c&&(M.vz*=.99)})},[c,u,h,g,m,v,y]),S=(0,Tc.useCallback)(P=>{let I=k.current;if(!I)return;let M=I.getContext("2d",{alpha:!0,desynchronized:!0});if(!M)return;if(P-O.current<L){T.current=requestAnimationFrame(S);return}O.current=P,M.clearRect(0,0,I.width,I.height),N(I);let z=_.current;c&&z.sort((W,H)=>W.z-H.z),R(M,z),z.forEach(W=>{$(M,W)}),T.current=requestAnimationFrame(S)},[L,N,R,$,c]),E=(0,Tc.useCallback)(()=>{let P=k.current;if(!P)return;let I=P.getBoundingClientRect();P.width=I.width,P.height=I.height,V()},[V]),A=(0,Tc.useCallback)(P=>{let I=k.current;if(!I)return;let M=I.getBoundingClientRect();B.current={x:P.clientX-M.left,y:P.clientY-M.top}},[]);return(0,Tc.useEffect)(()=>{let P=k.current;if(!P)return;let I=P.getBoundingClientRect();return P.width=I.width,P.height=I.height,V(),window.addEventListener("resize",E),v&&window.addEventListener("mousemove",A),T.current=requestAnimationFrame(S),()=>{window.removeEventListener("resize",E),window.removeEventListener("mousemove",A),T.current&&cancelAnimationFrame(T.current)}},[V,E,A,S,v]),(0,w1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),children:[(0,w1.jsx)("canvas",{ref:k,className:D("absolute inset-0 w-full h-full",t)}),e&&(0,w1.jsx)("div",{className:"relative z-10",children:e})]})},Zne=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,w1.jsx)(ze,{componentName:"FloatingElements",compact:!0,className:"inline-block"}):(0,w1.jsx)(z$t,{...e})};Zne.displayName="FloatingElements";var Vi=F(ge(),1);var C1=F(le(),1);var eoe={high:{gradient:!0,glow:!0,blur:!0,merging:!0},medium:{gradient:!0,glow:!0,blur:!1,merging:!1},low:{gradient:!1,glow:!1,blur:!1,merging:!1}},U$t=({children:e,className:t,containerClassName:r,count:n=30,colors:o=["#667eea","#764ba2","#f093fb","#c471ed","#12c2e9"],sizeRange:a=[20,80],speed:i=1,wobble:s=2,backgroundColor:l="transparent",backgroundOpacity:c=1,bubbleOpacity:u=.6,gradient:d=!0,gradientType:f="radial",glow:p=!0,glowIntensity:m=.5,blur:h=!1,blurAmount:g=2,popping:v=!0,popThreshold:y=50,interactive:b=!0,mouseRadius:w=150,merging:x=!1,mergeThreshold:C=50,animationStyle:k="float",fps:T=60,physics:_=!1,gravity:B=.5,buoyancy:O=1,splitChance:L=0,mergeDistance:V=30})=>{let $=(0,Vi.useRef)(null),R=(0,Vi.useRef)(null),N=(0,Vi.useRef)(void 0),S=(0,Vi.useRef)([]),E=(0,Vi.useRef)({x:0,y:0}),A=(0,Vi.useRef)(0),P=1e3/T,I=(0,Vi.useRef)(0),M=(0,Vi.useRef)(new Map),U=(0,Vi.useRef)(eoe.medium),z=(0,Vi.useCallback)(()=>{let re=window.devicePixelRatio||1;/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)||re>2?U.current=eoe.low:U.current=eoe.medium},[]),W=(0,Vi.useCallback)((re,Z)=>{if(!d)return Z.color;let J=`${Z.color}-${Z.size}-${f}`;if(M.current.has(J))return M.current.get(J);let Q;return f==="radial"?(Q=re.createRadialGradient(-Z.size*.3,-Z.size*.3,0,0,0,Z.size/2),Q.addColorStop(0,"rgba(255, 255, 255, 0.8)"),Q.addColorStop(.3,Z.color),Q.addColorStop(1,Z.color+"80")):(Q=re.createLinearGradient(-Z.size/2,-Z.size/2,Z.size/2,Z.size/2),Q.addColorStop(0,"rgba(255, 255, 255, 0.5)"),Q.addColorStop(.5,Z.color),Q.addColorStop(1,Z.color+"80")),M.current.set(J,Q),Q},[d,f]),H=(0,Vi.useCallback)(re=>{let[Z,J]=a,Q=Z+Math.random()*(J-Z),ne=re.getBoundingClientRect(),ae=ne.width,Y=ne.height+Q,q=-Q+Math.random()*(ae+Q*2);if(k==="champagne"){let te=[ae*.3,ae*.5,ae*.7];q=te[Math.floor(Math.random()*te.length)]+(Math.random()-.5)*50}else k==="lava"&&(q=ae/2+(Math.random()-.5)*ae*.3);return{x:q,y:Y,vx:0,vy:-i*(.5+Math.random()*.5),size:Q,targetSize:Q,color:o[Math.floor(Math.random()*o.length)],opacity:u*(.7+Math.random()*.3),wobblePhase:Math.random()*Math.PI*2,wobbleSpeed:.02+Math.random()*.03,lifespan:0,maxLifespan:k==="champagne"?100+Math.random()*100:1/0,popping:!1,popProgress:0}},[a,o,i,u,k]),j=(0,Vi.useCallback)(()=>{let re=$.current;if(!re)return;let Z=re.getBoundingClientRect(),J=Z.width,Q=Z.height,ne=[];for(let ae=0;ae<n;ae++){let se=H(re);se.y=Math.random()*(Q+100),se.x=-50+Math.random()*(J+100),ne.push(se)}S.current=ne},[n,H]),K=(0,Vi.useCallback)((re,Z)=>{re.save(),re.translate(Z.x,Z.y);let J=Z.size;Z.popping&&(J=Z.size*(1+Z.popProgress*.5));let Q=Z.opacity;Z.popping&&(Q*=1-Z.popProgress),k==="champagne"&&Z.lifespan>Z.maxLifespan*.8&&(Q*=1-(Z.lifespan-Z.maxLifespan*.8)/(Z.maxLifespan*.2)),re.globalAlpha=Q,re.fillStyle=W(re,Z),re.beginPath(),re.arc(0,0,J/2,0,Math.PI*2),re.fill(),!Z.popping&&d&&(re.globalAlpha=Q*.5,re.fillStyle="rgba(255, 255, 255, 0.8)",re.beginPath(),re.arc(-J*.15,-J*.15,J*.1,0,Math.PI*2),re.fill()),re.restore()},[d,k,W]),G=(0,Vi.useCallback)((re,Z)=>{let J=S.current,Q=I.current;if(J.length<n){let se=H(re);J.push(se)}let ne=100,ae=new Map;for(x&&J.forEach(se=>{let Y=Math.floor(se.x/ne),q=Math.floor(se.y/ne),te=`${Y},${q}`;ae.has(te)||ae.set(te,[]),ae.get(te).push(se)}),J.forEach((se,Y)=>{switch(se.lifespan++,k){case"lava":se.vy=-i*.3,se.vx=Math.sin(Q*.01+se.wobblePhase)*s*.5,se.targetSize=se.size*(1+Math.sin(Q*.01+se.wobblePhase)*.3),se.size+=(se.targetSize-se.size)*.1;break;case"champagne":se.vy=-i*2,se.vx+=(Math.random()-.5)*.2,se.vx*=.98;break;case"rise":se.vy=-i,se.vx=Math.sin(Q*se.wobbleSpeed+se.wobblePhase)*s;break;case"float":default:se.vy=-i*.5,se.vx=Math.sin(Q*se.wobbleSpeed+se.wobblePhase)*s,_&&(se.vy-=B*.1,se.vy+=O*.05);break}if(se.x+=se.vx*(Z/16),se.y+=se.vy*(Z/16),se.popping&&(se.popProgress+=.1,se.popProgress>=1)){let ue=H(re);Object.assign(se,ue)}if(v&&se.y<y&&!se.popping&&(se.popping=!0),x&&!se.popping&&ae.size>0){let ue=Math.floor(se.x/ne),ce=Math.floor(se.y/ne);for(let xe=-1;xe<=1;xe++)for(let be=-1;be<=1;be++){let ye=`${ue+xe},${ce+be}`;(ae.get(ye)||[]).forEach(de=>{if(de===se||de.popping)return;let Ie=se.x-de.x,Te=se.y-de.y,Pe=Math.sqrt(Ie*Ie+Te*Te);Pe<V&&Pe>0&&se.size>de.size&&(se.size=Math.sqrt(se.size*se.size+de.size*de.size),se.targetSize=se.size,de.popping=!0)})}}if(b){let ue=se.x-E.current.x,ce=se.y-E.current.y,xe=ue*ue+ce*ce,be=w*w;if(xe<be&&xe>0){let ye=Math.sqrt(xe),Ce=(1-ye/w)*3;se.vx+=ue/ye*Ce,se.vy+=ce/ye*Ce}}let te=re.getBoundingClientRect().width;if(se.x<-se.size*2&&(se.x=te+se.size),se.x>te+se.size*2&&(se.x=-se.size),se.y<-se.size&&!se.popping){let ue=H(re);Object.assign(se,ue)}if(se.lifespan>se.maxLifespan){let ue=H(re);Object.assign(se,ue)}});J.length>n;)J.pop()},[n,i,s,v,y,x,V,b,w,k,H,_,B,O]),X=(0,Vi.useCallback)(re=>{let Z=$.current;if(!Z)return;let J=Z.getContext("2d",{alpha:!0,desynchronized:!0});if(!J)return;let Q=re-A.current;if(Q<P){N.current=requestAnimationFrame(X);return}if(A.current=re,I.current+=1,J.clearRect(0,0,Z.width,Z.height),l!=="transparent"&&(J.fillStyle=l,J.globalAlpha=c,J.fillRect(0,0,Z.width,Z.height),J.globalAlpha=1),G(Z,Q),p&&U.current.glow&&(J.shadowBlur=20*m,J.shadowColor=o[0]),h&&U.current.blur&&R.current){let ne=R.current.getContext("2d");ne&&(ne.filter=`blur(${g}px)`,ne.clearRect(0,0,Z.width,Z.height),S.current.forEach(ae=>{K(ne,ae)}),J.drawImage(R.current,0,0))}else S.current.forEach(ae=>{K(J,ae)});p&&U.current.glow&&(J.shadowBlur=0),N.current=requestAnimationFrame(X)},[P,l,c,G,K,p,m,h,g,o]),ie=(0,Vi.useCallback)(()=>{let re=$.current;if(!re)return;let Z=re.parentElement;if(!Z)return;let J=Z.getBoundingClientRect(),Q=Math.min(window.devicePixelRatio||1,2);re.style.width="100%",re.style.height="100%",re.width=J.width*Q,re.height=J.height*Q;let ne=re.getContext("2d");ne&&ne.scale(Q,Q),h&&R.current&&(R.current.width=re.width,R.current.height=re.height)},[h]),ee=(0,Vi.useCallback)(re=>{let Z=$.current;if(!Z)return;let J=Z.getBoundingClientRect();E.current={x:re.clientX-J.left,y:re.clientY-J.top}},[]);return(0,Vi.useEffect)(()=>{let re=$.current;if(!re)return;z();let Z=re.parentElement;if(!Z)return;let J=Z.getBoundingClientRect(),Q=Math.min(window.devicePixelRatio||1,2);re.style.width="100%",re.style.height="100%",re.width=J.width*Q,re.height=J.height*Q;let ne=re.getContext("2d");return ne&&ne.scale(Q,Q),h&&(R.current=document.createElement("canvas"),R.current.width=re.width,R.current.height=re.height),j(),window.addEventListener("resize",ie),b&&re.addEventListener("mousemove",ee),N.current=requestAnimationFrame(X),()=>{window.removeEventListener("resize",ie),b&&re.removeEventListener("mousemove",ee),N.current&&cancelAnimationFrame(N.current),M.current.clear()}},[]),(0,C1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),children:[(0,C1.jsx)("canvas",{ref:$,className:D("absolute inset-0 w-full h-full",t),style:{width:"100%",height:"100%",touchAction:"none"}}),e&&(0,C1.jsx)("div",{className:"relative z-10",children:e})]})},Fje=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,C1.jsx)(ze,{componentName:"BubbleBackground",compact:!0,className:"inline-block"}):(0,C1.jsx)(U$t,{...e})};var vo=F(ge(),1);var S1=F(le(),1);var $$t=({children:e,className:t,containerClassName:r,pattern:n="triangles",colors:o=["#667eea","#764ba2","#f093fb","#c471ed","#12c2e9"],patternSize:a=40,spacing:i=10,animation:s="rotate",animationSpeed:l=3e3,opacity:c=.3,enable3D:u=!1,depth:d=20,strokeWidth:f=2,fillStyle:p="gradient",gradientDirection:m="diagonal",glow:h=!1,glowIntensity:g=.5,backgroundColor:v="transparent",interactive:y=!0,mouseRadius:b=150,density:w=1,fps:x=60,performancePreset:C="medium"})=>{let k=(0,vo.useRef)(null),T=(0,vo.useRef)(null),_=(0,vo.useRef)(void 0),B=(0,vo.useRef)([]),O=(0,vo.useRef)({x:0,y:0}),L=(0,vo.useRef)(0),V=(0,vo.useRef)(0),$=(0,vo.useRef)({gradients:new Map,paths:new Map}),R=(0,vo.useRef)(null),N=(0,vo.useRef)([]),S=(0,vo.useMemo)(()=>({low:{maxPatterns:100,interactionRadius:60,fps:24,enableGlow:!1,enable3D:!1,updateFrequency:3,spatialGridSize:250,maxDPR:1.2,glowQuality:"none"},medium:{maxPatterns:200,interactionRadius:100,fps:30,enableGlow:h,enable3D:!1,updateFrequency:2,spatialGridSize:200,maxDPR:1.5,glowQuality:"low"},high:{maxPatterns:400,interactionRadius:b,fps:60,enableGlow:h,enable3D:u,updateFrequency:1,spatialGridSize:100,maxDPR:2,glowQuality:"high"}})[C],[C,x,b,h,u]),E=1e3/S.fps,A=(0,vo.useCallback)((re,Z)=>{let J=S.spatialGridSize,Q=Math.ceil(re/J)+1,ne=Math.ceil(Z/J)+1;return{cellSize:J,cols:Q,rows:ne,cells:new Map}},[S.spatialGridSize]),P=(0,vo.useCallback)((re,Z)=>{let J=Math.floor(Z.x/re.cellSize),Q=Math.floor(Z.y/re.cellSize);if(J>=0&&J<re.cols&&Q>=0&&Q<re.rows){let ne=`${J},${Q}`;re.cells.has(ne)||re.cells.set(ne,[]),re.cells.get(ne).push(Z),Z.gridX=J,Z.gridY=Q}},[]),I=(0,vo.useCallback)((re,Z,J,Q)=>{let ne=$.current;if(ne.gradients.has(Q))return ne.gradients.get(Q);let ae;if(m==="radial")ae=re.createRadialGradient(0,0,0,0,0,J/2);else{let se=m==="horizontal"?0:m==="vertical"?Math.PI/2:Math.PI/4;ae=re.createLinearGradient(-J/2*Math.cos(se),-J/2*Math.sin(se),J/2*Math.cos(se),J/2*Math.sin(se))}return ae.addColorStop(0,Z),ae.addColorStop(1,Z+"40"),ne.gradients.set(Q,ae),ae},[m]),M=(0,vo.useCallback)((re,Z)=>{let J=`${re}-${Z}`,Q=$.current;if(Q.paths.has(J))return Q.paths.get(J);let ne=new Path2D;switch(re){case"triangles":ne.moveTo(0,-Z/2),ne.lineTo(Z/2,Z/2),ne.lineTo(-Z/2,Z/2),ne.closePath();break;case"hexagons":for(let ae=0;ae<6;ae++){let se=Math.PI*2/6*ae-Math.PI/2,Y=Math.cos(se)*Z/2,q=Math.sin(se)*Z/2;ae===0?ne.moveTo(Y,q):ne.lineTo(Y,q)}ne.closePath();break;case"squares":ne.rect(-Z/2,-Z/2,Z,Z);break;case"diamonds":ne.moveTo(0,-Z/2),ne.lineTo(Z/2,0),ne.lineTo(0,Z/2),ne.lineTo(-Z/2,0),ne.closePath();break;case"circles":ne.arc(0,0,Z/2,0,Math.PI*2);break}return Q.paths.set(J,ne),ne},[]),U=(0,vo.useCallback)((re,Z)=>{let J=a+i,Q=B.current;N.current=Q.filter(ne=>ne.x>=-J&&ne.x<=re+J&&ne.y>=-J&&ne.y<=Z+J)},[a,i]),z=(0,vo.useCallback)(()=>{let re=k.current,Z=re?.parentElement;if(!re||!Z)return;let J=Z.getBoundingClientRect(),Q=J.width,ne=J.height,ae=A(Q,ne);R.current=ae;let se=[],Y=a+i,q=Math.ceil(Q/Y)+2,te=Math.ceil(ne/Y)+2,ue=0,ce=S.maxPatterns,xe=Math.max(1,Math.floor(1/w)),be=[];for(let Ce=-1;Ce<te;Ce++)for(let de=-1;de<q;de++){if(w<1&&(Ce%xe!==0||de%xe!==0))continue;let Ie=de*Y,Te=Ce*Y;n==="hexagons"&&Ce%2===1&&(Ie+=Y/2),be.push({x:Ie,y:Te})}for(let Ce=be.length-1;Ce>0;Ce--){let de=Math.floor(Math.random()*(Ce+1));[be[Ce],be[de]]=[be[de],be[Ce]]}let ye=be.slice(0,Math.min(ce,be.length));for(let Ce of ye){let de=n==="mixed"?["triangles","hexagons","squares","diamonds","circles"]:[n],Ie={x:Ce.x,y:Ce.y,rotation:0,scale:1,opacity:c,color:o[Math.floor(Math.random()*o.length)],animationPhase:Math.random()*Math.PI*2,type:de[Math.floor(Math.random()*de.length)],gridX:0,gridY:0,originalX:Ce.x,originalY:Ce.y,lastMouseDistance:1/0};se.push(Ie),P(ae,Ie)}B.current=se,U(re.width,re.height),$.current.gradients.clear(),$.current.paths.clear()},[a,i,n,o,c,w,A,P,U,S.maxPatterns]),W=(0,vo.useCallback)((re,Z,J)=>{let Q=new Map;for(let ne of Z){let se=`${n==="mixed"?ne.type:n}-${ne.color}`;Q.has(se)||Q.set(se,[]),Q.get(se).push(ne)}for(let[ne,ae]of Q){let[se,Y]=ne.split("-");re.lineWidth=f;let q=M(se,J);for(let te of ae){if(re.save(),re.translate(te.x,te.y),re.rotate(te.rotation),re.scale(te.scale,te.scale),S.enable3D){let ue=1+Math.sin(te.animationPhase)*d/100;re.scale(ue,ue)}if(S.enableGlow&&S.glowQuality!=="none"){let ue=S.glowQuality==="low"?.5:1;re.shadowBlur=J*g*ue,re.shadowColor=te.color}if(re.globalAlpha=te.opacity,p==="gradient"){let ue=`${Y}-${J}-${m}`,ce=I(re,Y,J,ue);re.fillStyle=ce,re.strokeStyle=Y}else p==="outline"?re.strokeStyle=Y:p==="dotted"?(re.setLineDash([5,5]),re.strokeStyle=Y):(re.fillStyle=Y,re.strokeStyle=Y);p!=="outline"&&p!=="dotted"&&re.fill(q),(p==="outline"||p==="dotted"||f>0)&&re.stroke(q),S.enableGlow&&(re.shadowBlur=0),re.restore()}p==="dotted"&&re.setLineDash([])}},[n,f,M,S.enable3D,S.enableGlow,d,g,p,I,m]),H=(0,vo.useCallback)((re,Z,J)=>{let Q=R.current;if(!Q)return[];let ne=[],ae=Math.ceil(J/Q.cellSize),se=Math.floor(re/Q.cellSize),Y=Math.floor(Z/Q.cellSize);for(let q=-ae;q<=ae;q++)for(let te=-ae;te<=ae;te++){let ue=se+te,ce=Y+q;if(ue>=0&&ue<Q.cols&&ce>=0&&ce<Q.rows){let xe=`${ue},${ce}`,be=Q.cells.get(xe);if(be)for(let ye of be){let Ce=ye.x-re,de=ye.y-Z;Math.sqrt(Ce*Ce+de*de)<J&&ne.push(ye)}}}return ne},[]),j=(0,vo.useCallback)(()=>{let re=B.current,Z=V.current,J=Z*60/l,Q=Z%S.updateFrequency===0;if(!(!Q&&s==="none"&&!y)){for(let ne of re)if(Q)switch(s){case"rotate":ne.rotation=J+ne.animationPhase;break;case"pulse":ne.scale=1+Math.sin(J+ne.animationPhase)*.2,ne.opacity=c*(.7+Math.sin(J+ne.animationPhase)*.3);break;case"shift":let ae=Math.sin(J+ne.animationPhase)*10;ne.x=ne.originalX+Math.cos(ne.animationPhase)*ae*.1,ne.y=ne.originalY+Math.sin(ne.animationPhase)*ae*.1;break;case"morph":ne.scale=1+Math.sin(J+ne.animationPhase)*.3,ne.rotation=Math.sin(J*.5+ne.animationPhase)*Math.PI/4;break;case"none":default:ne.scale+=(1-ne.scale)*.1,ne.rotation*=.95,ne.opacity+=(c-ne.opacity)*.1;break}if(y&&Q){let ne=S.interactionRadius,ae=H(O.current.x,O.current.y,ne);for(let se of ae){let Y=se.x-O.current.x,q=se.y-O.current.y,te=Math.sqrt(Y*Y+q*q);if(te<ne){let ue=1-te/ne;se.scale=Math.max(se.scale,1+ue*.5),se.rotation+=ue*.1,se.opacity=Math.min(1,Math.max(se.opacity,c+ue*.5)),se.lastMouseDistance=te}}for(let se of re)se.lastMouseDistance>ne&&(s==="none"&&(se.scale+=(1-se.scale)*.1,se.rotation*=.95),se.opacity+=(c-se.opacity)*.1,se.lastMouseDistance=1/0)}}},[s,l,c,y,H,S.updateFrequency,S.interactionRadius]),K=(0,vo.useCallback)(re=>{let Z=k.current,J=Z?.parentElement;if(!Z||!J)return;let Q=Z.getContext("2d",{alpha:!0,desynchronized:!0,willReadFrequently:!1});if(!Q)return;if(re-L.current<E){_.current=requestAnimationFrame(K);return}L.current=re,V.current+=1;let ae=J.getBoundingClientRect(),se=window.devicePixelRatio||1,Y=Math.min(se,S.maxDPR);Q.clearRect(0,0,Z.width,Z.height),v!=="transparent"&&(Q.fillStyle=v,Q.fillRect(0,0,ae.width,ae.height)),j(),U(ae.width,ae.height);let q=N.current;q.length>0&&W(Q,q,a),_.current=requestAnimationFrame(K)},[E,v,j,U,W,a,S.maxDPR]),G=(0,vo.useCallback)(()=>{let re=k.current,Z=re?.parentElement;if(!re||!Z)return;let J=Z.getBoundingClientRect(),Q=window.devicePixelRatio||1,ne=Math.min(Q,S.maxDPR),ae=J.width*ne,se=J.height*ne;if(re.width!==ae||re.height!==se){re.width=ae,re.height=se,re.style.width="100%",re.style.height="100%";let Y=re.getContext("2d",{alpha:!0,desynchronized:!0,willReadFrequently:!1});Y&&(Y.scale(ne,ne),Y.imageSmoothingEnabled=C!=="low",Y.imageSmoothingQuality=C==="high"?"high":"low");let q=B.current,te=R.current;if(q.length>0&&te){let ue=q.filter(Ce=>Ce.x>=-a-i&&Ce.x<=J.width+a+i&&Ce.y>=-a-i&&Ce.y<=J.height+a+i),ce=a+i,xe=Math.ceil(J.width/ce)+2,be=Math.ceil(J.height/ce)+2,ye=A(J.width,J.height);for(let Ce of ue)P(ye,Ce);R.current=ye,B.current=ue,U(J.width,J.height)}else z()}},[z,A,P,U,a,i,S.maxDPR,C]),X=(0,vo.useCallback)(()=>{let re;return()=>{clearTimeout(re),re=setTimeout(G,100)}},[G])(),ie=(0,vo.useCallback)(re=>{let Z=k.current;if(!Z||!y)return;let J=Z.getBoundingClientRect(),Q=re.clientX-J.left,ne=re.clientY-J.top,ae=O.current.x,se=O.current.y;Math.sqrt((Q-ae)**2+(ne-se)**2)>5&&(O.current={x:Q,y:ne})},[y]),ee=(0,vo.useCallback)(()=>{let re=!1;return Z=>{re||(requestAnimationFrame(()=>{ie(Z),re=!1}),re=!0)}},[ie])();return(0,vo.useEffect)(()=>{let re=k.current,Z=re?.parentElement;if(!re||!Z)return;let J=Z.getBoundingClientRect(),Q=window.devicePixelRatio||1,ne=Math.min(Q,S.maxDPR);re.width=J.width*ne,re.height=J.height*ne;let ae=re.getContext("2d",{alpha:!0,desynchronized:!0,willReadFrequently:!1});return ae&&(ae.scale(ne,ne),ae.imageSmoothingEnabled=C!=="low",ae.imageSmoothingQuality=C==="high"?"high":"low"),re.style.width="100%",re.style.height="100%",z(),window.addEventListener("resize",X,{passive:!0}),y&&window.addEventListener("mousemove",ee,{passive:!0}),_.current=requestAnimationFrame(K),()=>{window.removeEventListener("resize",X),window.removeEventListener("mousemove",ee),_.current&&cancelAnimationFrame(_.current),$.current.gradients.clear(),$.current.paths.clear(),B.current=[],N.current=[],R.current=null}},[z,X,ee,K,y,S.maxDPR,C]),(0,vo.useEffect)(()=>{},[C,S]),(0,S1.jsxs)("div",{className:D("relative w-full h-full overflow-hidden",r),children:[(0,S1.jsx)("canvas",{ref:k,className:D("absolute inset-0 w-full h-full",t)}),e&&(0,S1.jsx)("div",{className:"relative z-10",children:e})]})},toe=e=>{let{hasProAccess:t,isLoading:r}=Ae();return!r&&!t?(0,S1.jsx)(ze,{componentName:"GeometricPatterns",compact:!0,className:"inline-block"}):(0,S1.jsx)($$t,{...e})};toe.displayName="GeometricPatterns";var ij=F(ge(),1);var Um=F(le(),1),Bje={javascript:{color:"#ffd700",icon:"JS",glow:"rgba(255, 215, 0, 0.5)"},typescript:{color:"#3178c6",icon:"TS",glow:"rgba(49, 120, 198, 0.5)"},python:{color:"#4b8bbe",icon:"PY",glow:"rgba(75, 139, 190, 0.5)"},react:{color:"#61dafb",icon:"\u269B\uFE0F",glow:"rgba(97, 218, 251, 0.5)"},rust:{color:"#ff6b6b",icon:"\u{1F980}",glow:"rgba(255, 107, 107, 0.5)"},go:{color:"#00d4ff",icon:"GO",glow:"rgba(0, 212, 255, 0.5)"},sql:{color:"#6366f1",icon:"SQL",glow:"rgba(99, 102, 241, 0.5)"},docker:{color:"#2496ed",icon:"\u{1F433}",glow:"rgba(36, 150, 237, 0.5)"},nodejs:{color:"#68a063",icon:"Node",glow:"rgba(104, 160, 99, 0.5)"},vue:{color:"#42d392",icon:"Vue",glow:"rgba(66, 211, 146, 0.5)"},angular:{color:"#ff4785",icon:"NG",glow:"rgba(255, 71, 133, 0.5)"},java:{color:"#ff9800",icon:"\u2615",glow:"rgba(255, 152, 0, 0.5)"},csharp:{color:"#a179dc",icon:"C#",glow:"rgba(161, 121, 220, 0.5)"},php:{color:"#8993be",icon:"PHP",glow:"rgba(137, 147, 190, 0.5)"},swift:{color:"#ff6b6b",icon:"\u{1F34E}",glow:"rgba(255, 107, 107, 0.5)"},kotlin:{color:"#b125ea",icon:"KT",glow:"rgba(177, 37, 234, 0.5)"}},P1=[{language:"javascript",code:`const app = express();
|
|
812
812
|
app.listen(3000);
|
|
813
813
|
console.log('Server started');`,title:"server.js"},{language:"typescript",code:`interface User {
|
|
814
814
|
id: string;
|