shaders 2.5.121 → 2.5.122

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.
@@ -1,4 +1,4 @@
1
- /* shaders@2.5.121/react — bundled for CDN consumption (Framer code components, etc.). https://shaders.com */
1
+ /* shaders@2.5.122/react — bundled for CDN consumption (Framer code components, etc.). https://shaders.com */
2
2
  var fne=Object.defineProperty;var z=(t,e)=>()=>(t&&(e=t(t=0)),e);var yt=(t,e)=>{for(var n in e)fne(t,n,{get:e[n],enumerable:!0})};function hne(t){for(let e=t.length-1;e>=0;--e)if(t[e]>=65535)return!0;return!1}function Hh(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function Ah(t){return document.createElementNS("http://www.w3.org/1999/xhtml",t)}function Iw(){let t=Ah("canvas");return t.style.display="block",t}function pf(...t){let e="THREE."+t.shift();Ph?Ph("log",e,...t):console.log(e,...t)}function lF(t){let e=t[0];if(typeof e=="string"&&e.startsWith("TSL:")){let n=t[1];n&&n.isStackTrace?t[0]+=" "+n.getLocation():t[1]='Stack trace not available. Enable "THREE.Node.captureStackTrace" to capture stack traces.'}return t}function lt(...t){t=lF(t);let e="THREE."+t.shift();if(Ph)Ph("warn",e,...t);else{let n=t[0];n&&n.isStackTrace?console.warn(n.getError(e)):console.warn(e,...t)}}function ot(...t){t=lF(t);let e="THREE."+t.shift();if(Ph)Ph("error",e,...t);else{let n=t[0];n&&n.isStackTrace?console.error(n.getError(e)):console.error(e,...t)}}function ur(...t){let e=t.join(" ");e in wD||(wD[e]=!0,lt(...t))}function nC(){return typeof self<"u"&&typeof self.scheduler<"u"&&typeof self.scheduler.yield<"u"?self.scheduler.yield():new Promise(t=>{requestAnimationFrame(t)})}function uF(t,e,n){return new Promise(function(r,i){function o(){switch(t.clientWaitSync(e,t.SYNC_FLUSH_COMMANDS_BIT,0)){case t.WAIT_FAILED:i();break;case t.TIMEOUT_EXPIRED:setTimeout(o,n);break;default:r()}}setTimeout(o,n)})}function Va(){let t=Math.random()*4294967295|0,e=Math.random()*4294967295|0,n=Math.random()*4294967295|0,r=Math.random()*4294967295|0;return(Vi[t&255]+Vi[t>>8&255]+Vi[t>>16&255]+Vi[t>>24&255]+"-"+Vi[e&255]+Vi[e>>8&255]+"-"+Vi[e>>16&15|64]+Vi[e>>24&255]+"-"+Vi[n&63|128]+Vi[n>>8&255]+"-"+Vi[n>>16&255]+Vi[n>>24&255]+Vi[r&255]+Vi[r>>8&255]+Vi[r>>16&255]+Vi[r>>24&255]).toLowerCase()}function jn(t,e,n){return Math.max(e,Math.min(n,t))}function rC(t,e){return(t%e+e)%e}function mne(t,e,n,r,i){return r+(t-e)*(i-r)/(n-e)}function pne(t,e,n){return t!==e?(n-t)/(e-t):0}function Vm(t,e,n){return(1-n)*t+n*e}function gne(t,e,n,r){return Vm(t,e,1-Math.exp(-n*r))}function yne(t,e=1){return e-Math.abs(rC(t,e*2)-e)}function vne(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e),t*t*(3-2*t))}function xne(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e),t*t*t*(t*(t*6-15)+10))}function bne(t,e){return t+Math.floor(Math.random()*(e-t+1))}function _ne(t,e){return t+Math.random()*(e-t)}function Sne(t){return t*(.5-Math.random())}function wne(t){t!==void 0&&(MD=t);let e=MD+=1831565813;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}function Mne(t){return t*zm}function Tne(t){return t*Wa}function Cne(t){return(t&t-1)===0&&t!==0}function Ene(t){return Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))}function Rne(t){return Math.pow(2,Math.floor(Math.log(t)/Math.LN2))}function Ane(t,e,n,r,i){let o=Math.cos,a=Math.sin,l=o(n/2),s=a(n/2),u=o((e+r)/2),d=a((e+r)/2),h=o((e-r)/2),f=a((e-r)/2),g=o((r-e)/2),y=a((r-e)/2);switch(i){case"XYX":t.set(l*d,s*h,s*f,l*u);break;case"YZY":t.set(s*f,l*d,s*h,l*u);break;case"ZXZ":t.set(s*h,s*f,l*d,l*u);break;case"XZX":t.set(l*d,s*y,s*g,l*u);break;case"YXY":t.set(s*g,l*d,s*y,l*u);break;case"ZYZ":t.set(s*y,s*g,l*d,l*u);break;default:lt("MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+i)}}function ro(t,e){switch(e.constructor){case Float32Array:return t;case Uint32Array:return t/4294967295;case Uint16Array:return t/65535;case Uint8Array:return t/255;case Int32Array:return Math.max(t/2147483647,-1);case Int16Array:return Math.max(t/32767,-1);case Int8Array:return Math.max(t/127,-1);default:throw new Error("Invalid component type.")}}function Un(t,e){switch(e.constructor){case Float32Array:return t;case Uint32Array:return Math.round(t*4294967295);case Uint16Array:return Math.round(t*65535);case Uint8Array:return Math.round(t*255);case Int32Array:return Math.round(t*2147483647);case Int16Array:return Math.round(t*32767);case Int8Array:return Math.round(t*127);default:throw new Error("Invalid component type.")}}function Pne(){let t={enabled:!0,workingColorSpace:Lu,spaces:{},convert:function(i,o,a){return this.enabled===!1||o===a||!o||!a||(this.spaces[o].transfer===$t&&(i.r=Ga(i.r),i.g=Ga(i.g),i.b=Ga(i.b)),this.spaces[o].primaries!==this.spaces[a].primaries&&(i.applyMatrix3(this.spaces[o].toXYZ),i.applyMatrix3(this.spaces[a].fromXYZ)),this.spaces[a].transfer===$t&&(i.r=Rh(i.r),i.g=Rh(i.g),i.b=Rh(i.b))),i},workingToColorSpace:function(i,o){return this.convert(i,this.workingColorSpace,o)},colorSpaceToWorking:function(i,o){return this.convert(i,o,this.workingColorSpace)},getPrimaries:function(i){return this.spaces[i].primaries},getTransfer:function(i){return i===Xi?ku:this.spaces[i].transfer},getToneMappingMode:function(i){return this.spaces[i].outputColorSpaceConfig.toneMappingMode||"standard"},getLuminanceCoefficients:function(i,o=this.workingColorSpace){return i.fromArray(this.spaces[o].luminanceCoefficients)},define:function(i){Object.assign(this.spaces,i)},_getMatrix:function(i,o,a){return i.copy(this.spaces[o].toXYZ).multiply(this.spaces[a].fromXYZ)},_getDrawingBufferColorSpace:function(i){return this.spaces[i].outputColorSpaceConfig.drawingBufferColorSpace},_getUnpackColorSpace:function(i=this.workingColorSpace){return this.spaces[i].workingColorSpaceConfig.unpackColorSpace},fromWorkingColorSpace:function(i,o){return ur("ColorManagement: .fromWorkingColorSpace() has been renamed to .workingToColorSpace()."),t.workingToColorSpace(i,o)},toWorkingColorSpace:function(i,o){return ur("ColorManagement: .toWorkingColorSpace() has been renamed to .colorSpaceToWorking()."),t.colorSpaceToWorking(i,o)}},e=[.64,.33,.3,.6,.15,.06],n=[.2126,.7152,.0722],r=[.3127,.329];return t.define({[Lu]:{primaries:e,whitePoint:r,transfer:ku,toXYZ:CD,fromXYZ:ED,luminanceCoefficients:n,workingColorSpaceConfig:{unpackColorSpace:lr},outputColorSpaceConfig:{drawingBufferColorSpace:lr}},[lr]:{primaries:e,whitePoint:r,transfer:$t,toXYZ:CD,fromXYZ:ED,luminanceCoefficients:n,outputColorSpaceConfig:{drawingBufferColorSpace:lr}}}),t}function Ga(t){return t<.04045?t*.0773993808:Math.pow(t*.9478672986+.0521327014,2.4)}function Rh(t){return t<.0031308?t*12.92:1.055*Math.pow(t,.41666)-.055}function ST(t){return typeof HTMLImageElement<"u"&&t instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&t instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&t instanceof ImageBitmap?kS.getDataURL(t):t.data?{data:Array.from(t.data),width:t.width,height:t.height,type:t.data.constructor.name}:(lt("Texture: Unable to serialize Texture."),{})}function TT(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+(e-t)*6*n:n<1/2?e:n<2/3?t+(e-t)*6*(2/3-n):t}function OT(t,e,n,r,i){for(let o=0,a=t.length-3;o<=a;o+=3){nf.fromArray(t,o);let l=i.x*Math.abs(nf.x)+i.y*Math.abs(nf.y)+i.z*Math.abs(nf.z),s=e.dot(nf),u=n.dot(nf),d=r.dot(nf);if(Math.max(-Math.max(s,u,d),Math.min(s,u,d))>l)return!1}return!0}function zne(){let t=new ArrayBuffer(4),e=new Float32Array(t),n=new Uint32Array(t),r=new Uint32Array(512),i=new Uint32Array(512);for(let s=0;s<256;++s){let u=s-127;u<-27?(r[s]=0,r[s|256]=32768,i[s]=24,i[s|256]=24):u<-14?(r[s]=1024>>-u-14,r[s|256]=1024>>-u-14|32768,i[s]=-u-1,i[s|256]=-u-1):u<=15?(r[s]=u+15<<10,r[s|256]=u+15<<10|32768,i[s]=13,i[s|256]=13):u<128?(r[s]=31744,r[s|256]=64512,i[s]=24,i[s|256]=24):(r[s]=31744,r[s|256]=64512,i[s]=13,i[s|256]=13)}let o=new Uint32Array(2048),a=new Uint32Array(64),l=new Uint32Array(64);for(let s=1;s<1024;++s){let u=s<<13,d=0;for(;(u&8388608)===0;)u<<=1,d-=8388608;u&=-8388609,d+=947912704,o[s]=u|d}for(let s=1024;s<2048;++s)o[s]=939524096+(s-1024<<13);for(let s=1;s<31;++s)a[s]=s<<23;a[31]=1199570944,a[32]=2147483648;for(let s=33;s<63;++s)a[s]=2147483648+(s-32<<23);a[63]=3347054592;for(let s=1;s<64;++s)s!==32&&(l[s]=1024);return{floatView:e,uint32View:n,baseTable:r,shiftTable:i,mantissaTable:o,exponentTable:a,offsetTable:l}}function Ao(t){Math.abs(t)>65504&&lt("DataUtils.toHalfFloat(): Value out of range."),t=jn(t,-65504,65504),za.floatView[0]=t;let e=za.uint32View[0],n=e>>23&511;return za.baseTable[n]+((e&8388607)>>za.shiftTable[n])}function xS(t){let e=t>>10;return za.uint32View[0]=za.mantissaTable[za.offsetTable[e]+(t&1023)]+za.exponentTable[e],za.floatView[0]}function jne(t,e,n,r,i,o,a,l){let s;if(e.side===or?s=r.intersectTriangle(a,o,i,!0,l):s=r.intersectTriangle(i,o,a,e.side===Ni,l),s===null)return null;RS.copy(l),RS.applyMatrix4(t.matrixWorld);let u=n.ray.origin.distanceTo(RS);return u<n.near||u>n.far?null:{distance:u,point:RS.clone(),object:t}}function AS(t,e,n,r,i,o,a,l,s,u){t.getVertexPosition(l,MS),t.getVertexPosition(s,TS),t.getVertexPosition(u,CS);let d=jne(t,e,n,r,MS,TS,CS,kD);if(d){let h=new xe;Uu.getBarycoord(kD,MS,TS,CS,h),i&&(d.uv=Uu.getInterpolatedAttribute(i,l,s,u,h,new mn)),o&&(d.uv1=Uu.getInterpolatedAttribute(o,l,s,u,h,new mn)),a&&(d.normal=Uu.getInterpolatedAttribute(a,l,s,u,h,new xe),d.normal.dot(r.direction)>0&&d.normal.multiplyScalar(-1));let f={a:l,b:s,c:u,normal:new xe,materialIndex:0};Uu.getNormal(MS,TS,CS,f.normal),d.face=f,d.barycoord=h}return d}function If(t){let e={};for(let n in t){e[n]={};for(let r in t[n]){let i=t[n][r];if(BD(i))i.isRenderTargetTexture?(lt("UniformsUtils: Textures of render targets cannot be cloned via cloneUniforms() or mergeUniforms()."),e[n][r]=null):e[n][r]=i.clone();else if(Array.isArray(i))if(BD(i[0])){let o=[];for(let a=0,l=i.length;a<l;a++)o[a]=i[a].clone();e[n][r]=o}else e[n][r]=i.slice();else e[n][r]=i}}return e}function $i(t){let e={};for(let n=0;n<t.length;n++){let r=If(t[n]);for(let i in r)e[i]=r[i]}return e}function BD(t){return t&&(t.isColor||t.isMatrix3||t.isMatrix4||t.isVector2||t.isVector3||t.isVector4||t.isTexture||t.isQuaternion)}function Yne(t){let e=[];for(let n=0;n<t.length;n++)e.push(t[n].clone());return e}function oC(t){let e=t.getRenderTarget();return e===null?t.outputColorSpace:e.isXRRenderTarget===!0?e.texture.colorSpace:hn.workingColorSpace}function IS(t,e){return!t||t.constructor===e?t:typeof e.BYTES_PER_ELEMENT=="number"?new e(t):Array.prototype.slice.call(t)}function zD(t){try{let e=t.slice(t.indexOf(":")+1);return new URL(e).protocol==="blob:"}catch{return!1}}function Ep(t,e,n,r){let i=sre(r);switch(n){case zh:return t*e;case Zs:return t*e/i.components*i.byteLength;case Ja:return t*e/i.components*i.byteLength;case Tr:return t*e*2/i.components*i.byteLength;case Qa:return t*e*2/i.components*i.byteLength;case $u:return t*e*3/i.components*i.byteLength;case qn:return t*e*4/i.components*i.byteLength;case Yu:return t*e*4/i.components*i.byteLength;case Ks:case Js:return Math.floor((t+3)/4)*Math.floor((e+3)/4)*8;case Qs:case ea:return Math.floor((t+3)/4)*Math.floor((e+3)/4)*16;case Ef:case Af:return Math.max(t,16)*Math.max(e,8)/4;case Cf:case Rf:return Math.max(t,8)*Math.max(e,8)/2;case Zu:case Ku:case Qu:case ed:return Math.floor((t+3)/4)*Math.floor((e+3)/4)*8;case Ju:case ta:case td:return Math.floor((t+3)/4)*Math.floor((e+3)/4)*16;case nd:return Math.floor((t+3)/4)*Math.floor((e+3)/4)*16;case rd:return Math.floor((t+4)/5)*Math.floor((e+3)/4)*16;case id:return Math.floor((t+4)/5)*Math.floor((e+4)/5)*16;case od:return Math.floor((t+5)/6)*Math.floor((e+4)/5)*16;case sd:return Math.floor((t+5)/6)*Math.floor((e+5)/6)*16;case ad:return Math.floor((t+7)/8)*Math.floor((e+4)/5)*16;case cd:return Math.floor((t+7)/8)*Math.floor((e+5)/6)*16;case ld:return Math.floor((t+7)/8)*Math.floor((e+7)/8)*16;case ud:return Math.floor((t+9)/10)*Math.floor((e+4)/5)*16;case dd:return Math.floor((t+9)/10)*Math.floor((e+5)/6)*16;case fd:return Math.floor((t+9)/10)*Math.floor((e+7)/8)*16;case hd:return Math.floor((t+9)/10)*Math.floor((e+9)/10)*16;case md:return Math.floor((t+11)/12)*Math.floor((e+9)/10)*16;case pd:return Math.floor((t+11)/12)*Math.floor((e+11)/12)*16;case gd:case bp:case _p:return Math.ceil(t/4)*Math.ceil(e/4)*16;case yd:case vd:return Math.ceil(t/4)*Math.ceil(e/4)*8;case na:case xd:return Math.ceil(t/4)*Math.ceil(e/4)*16}throw new Error(`Unable to determine texture byte length for ${n} format.`)}function sre(t){switch(t){case dr:case $s:return{byteLength:1,components:1};case yo:case Ys:case Mr:return{byteLength:2,components:1};case Sf:case wf:return{byteLength:2,components:4};case nr:case ni:case on:return{byteLength:4,components:1};case Mf:case Tf:return{byteLength:4,components:3}}throw new Error(`Unknown texture type ${t}.`)}var vw,np,xw,jD,Wu,bw,Jo,Ni,or,di,fi,Ci,js,qs,Xs,Za,_w,xi,rp,ip,Sw,ww,ys,op,sp,ap,Du,Fu,cp,lp,up,dp,fp,ZT,KT,JT,QT,af,cf,lf,Gs,uf,df,ff,hf,_f,Mw,Tw,_i,hp,mp,pp,gp,Cw,yp,vp,Ew,Fo,Qo,ju,qu,Ka,Ko,Hi,Ha,An,xp,vs,sn,Xu,ji,qD,dr,$s,Ys,yo,ni,nr,on,Mr,Sf,wf,qi,Mf,Tf,zh,$u,qn,ui,Ei,Zs,Ja,Tr,Qa,eC,Yu,Ks,Js,Qs,ea,Cf,Ef,Rf,Af,Zu,Ku,Ju,Qu,ed,ta,td,nd,rd,id,od,sd,ad,cd,ld,ud,dd,fd,hd,md,pd,gd,bp,_p,yd,vd,na,xd,Gm,FS,US,GT,HT,WT,jT,XD,Lo,Rw,Xi,lr,Lu,ku,$t,Aw,tC,$D,YD,Ou,ZD,KD,JD,QD,eF,tF,nF,rF,iF,oF,sF,aF,cF,LS,Sp,Vh,wp,ra,Pf,Mp,xs,Tp,mf,Gh,Pw,Ii,No,bs,bd,wD,Ph,Cp,io,Vi,MD,zm,Wa,iC,mn,hs,xe,bT,TD,Cn,_T,CD,ED,hn,ph,kS,Ine,Ih,Nne,wT,Ur,wn,Oo,po,gf,Hm,In,gh,us,One,Une,Eu,hS,Ro,RD,AD,ms,Nh,Dne,PD,yh,Da,mS,Fm,Fne,Lne,ID,ND,OD,UD,kne,vh,MT,bi,sf,Bne,Bu,dF,Ru,pS,un,Gi,yf,ds,Fa,CT,La,xh,bh,DD,ET,RT,AT,PT,IT,NT,Uu,zu,ka,fs,gS,_h,Sh,wh,Au,Pu,tf,Lm,yS,vS,nf,za,li,bS,Vne,Jr,vf,xf,Wm,Qr,Gne,km,UT,bf,Hne,Zo,DT,Mh,Po,Bm,Ti,Wi,jm,no,BS,Wne,ei,zS,Ba,FT,_S,Iu,LT,SS,kT,VS,Uo,FD,rf,wS,LD,MS,TS,CS,BT,ES,kD,RS,Hr,ir,ja,zT,qne,Xne,Io,of,$ne,PS,qa,Bs,zs,GS,qm,HS,Xa,Oh,Hs,ps,ti,Uh,Dh,$a,WS,Ya,jS,qS,fF,Zne,Kne,go,Xm,$m,XS,$S,YS,ZS,KS,Ym,Zm,JS,QS,Vu,ew,tw,nw,rw,Do,Gu,iw,ow,sw,Km,Hu,aw,DS,cw,hF,Fh,Th,lw,Jm,Ws,uw,VT,VD,GD,Qm,NS,OS,Vs,ep,Nu,HD,WD,Kr,qT,Lh,XT,dw,gs,$T,fw,hw,mw,pw,gw,Ch,Eh,kh,Bh,sC,Jne,aC,Qne,ere,tre,nre,rre,ire,ore,YT,Or,TNe,yw,tp,Nw=z(()=>{vw=0,np=1,xw=2,jD=0,Wu=1,bw=2,Jo=3,Ni=0,or=1,di=2,fi=0,Ci=1,js=2,qs=3,Xs=4,Za=5,_w=6,xi=100,rp=101,ip=102,Sw=103,ww=104,ys=200,op=201,sp=202,ap=203,Du=204,Fu=205,cp=206,lp=207,up=208,dp=209,fp=210,ZT=211,KT=212,JT=213,QT=214,af=0,cf=1,lf=2,Gs=3,uf=4,df=5,ff=6,hf=7,_f=0,Mw=1,Tw=2,_i=0,hp=1,mp=2,pp=3,gp=4,Cw=5,yp=6,vp=7,Ew=300,Fo=301,Qo=302,ju=303,qu=304,Ka=306,Ko=1e3,Hi=1001,Ha=1002,An=1003,xp=1004,vs=1005,sn=1006,Xu=1007,ji=1008,qD=1008,dr=1009,$s=1010,Ys=1011,yo=1012,ni=1013,nr=1014,on=1015,Mr=1016,Sf=1017,wf=1018,qi=1020,Mf=35902,Tf=35899,zh=1021,$u=1022,qn=1023,ui=1026,Ei=1027,Zs=1028,Ja=1029,Tr=1030,Qa=1031,eC=1032,Yu=1033,Ks=33776,Js=33777,Qs=33778,ea=33779,Cf=35840,Ef=35841,Rf=35842,Af=35843,Zu=36196,Ku=37492,Ju=37496,Qu=37488,ed=37489,ta=37490,td=37491,nd=37808,rd=37809,id=37810,od=37811,sd=37812,ad=37813,cd=37814,ld=37815,ud=37816,dd=37817,fd=37818,hd=37819,md=37820,pd=37821,gd=36492,bp=36494,_p=36495,yd=36283,vd=36284,na=36285,xd=36286,Gm=2300,FS=2301,US=2302,GT=2303,HT=2400,WT=2401,jT=2402,XD=3200,Lo=0,Rw=1,Xi="",lr="srgb",Lu="srgb-linear",ku="linear",$t="srgb",Aw="",tC="rg",$D="ga",YD=0,Ou=7680,ZD=7681,KD=7682,JD=7683,QD=34055,eF=34056,tF=5386,nF=512,rF=513,iF=514,oF=515,sF=516,aF=517,cF=518,LS=519,Sp=512,Vh=513,wp=514,ra=515,Pf=516,Mp=517,xs=518,Tp=519,mf=35044,Gh=35048,Pw="300 es",Ii=2e3,No=2001,bs={COMPUTE:"compute",RENDER:"render"},bd={TEXTURE_COMPARE:"depthTextureCompare"};wD={},Ph=null;Cp={[af]:cf,[lf]:ff,[uf]:hf,[Gs]:df,[cf]:af,[ff]:lf,[hf]:uf,[df]:Gs},io=class{addEventListener(e,n){this._listeners===void 0&&(this._listeners={});let r=this._listeners;r[e]===void 0&&(r[e]=[]),r[e].indexOf(n)===-1&&r[e].push(n)}hasEventListener(e,n){let r=this._listeners;return r===void 0?!1:r[e]!==void 0&&r[e].indexOf(n)!==-1}removeEventListener(e,n){let r=this._listeners;if(r===void 0)return;let i=r[e];if(i!==void 0){let o=i.indexOf(n);o!==-1&&i.splice(o,1)}}dispatchEvent(e){let n=this._listeners;if(n===void 0)return;let r=n[e.type];if(r!==void 0){e.target=this;let i=r.slice(0);for(let o=0,a=i.length;o<a;o++)i[o].call(this,e);e.target=null}}},Vi=["00","01","02","03","04","05","06","07","08","09","0a","0b","0c","0d","0e","0f","10","11","12","13","14","15","16","17","18","19","1a","1b","1c","1d","1e","1f","20","21","22","23","24","25","26","27","28","29","2a","2b","2c","2d","2e","2f","30","31","32","33","34","35","36","37","38","39","3a","3b","3c","3d","3e","3f","40","41","42","43","44","45","46","47","48","49","4a","4b","4c","4d","4e","4f","50","51","52","53","54","55","56","57","58","59","5a","5b","5c","5d","5e","5f","60","61","62","63","64","65","66","67","68","69","6a","6b","6c","6d","6e","6f","70","71","72","73","74","75","76","77","78","79","7a","7b","7c","7d","7e","7f","80","81","82","83","84","85","86","87","88","89","8a","8b","8c","8d","8e","8f","90","91","92","93","94","95","96","97","98","99","9a","9b","9c","9d","9e","9f","a0","a1","a2","a3","a4","a5","a6","a7","a8","a9","aa","ab","ac","ad","ae","af","b0","b1","b2","b3","b4","b5","b6","b7","b8","b9","ba","bb","bc","bd","be","bf","c0","c1","c2","c3","c4","c5","c6","c7","c8","c9","ca","cb","cc","cd","ce","cf","d0","d1","d2","d3","d4","d5","d6","d7","d8","d9","da","db","dc","dd","de","df","e0","e1","e2","e3","e4","e5","e6","e7","e8","e9","ea","eb","ec","ed","ee","ef","f0","f1","f2","f3","f4","f5","f6","f7","f8","f9","fa","fb","fc","fd","fe","ff"],MD=1234567,zm=Math.PI/180,Wa=180/Math.PI;iC={DEG2RAD:zm,RAD2DEG:Wa,generateUUID:Va,clamp:jn,euclideanModulo:rC,mapLinear:mne,inverseLerp:pne,lerp:Vm,damp:gne,pingpong:yne,smoothstep:vne,smootherstep:xne,randInt:bne,randFloat:_ne,randFloatSpread:Sne,seededRandom:wne,degToRad:Mne,radToDeg:Tne,isPowerOfTwo:Cne,ceilPowerOfTwo:Ene,floorPowerOfTwo:Rne,setQuaternionFromProperEuler:Ane,normalize:Un,denormalize:ro},mn=class t{static{t.prototype.isVector2=!0}constructor(e=0,n=0){this.x=e,this.y=n}get width(){return this.x}set width(e){this.x=e}get height(){return this.y}set height(e){this.y=e}set(e,n){return this.x=e,this.y=n,this}setScalar(e){return this.x=e,this.y=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setComponent(e,n){switch(e){case 0:this.x=n;break;case 1:this.y=n;break;default:throw new Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y)}copy(e){return this.x=e.x,this.y=e.y,this}add(e){return this.x+=e.x,this.y+=e.y,this}addScalar(e){return this.x+=e,this.y+=e,this}addVectors(e,n){return this.x=e.x+n.x,this.y=e.y+n.y,this}addScaledVector(e,n){return this.x+=e.x*n,this.y+=e.y*n,this}sub(e){return this.x-=e.x,this.y-=e.y,this}subScalar(e){return this.x-=e,this.y-=e,this}subVectors(e,n){return this.x=e.x-n.x,this.y=e.y-n.y,this}multiply(e){return this.x*=e.x,this.y*=e.y,this}multiplyScalar(e){return this.x*=e,this.y*=e,this}divide(e){return this.x/=e.x,this.y/=e.y,this}divideScalar(e){return this.multiplyScalar(1/e)}applyMatrix3(e){let n=this.x,r=this.y,i=e.elements;return this.x=i[0]*n+i[3]*r+i[6],this.y=i[1]*n+i[4]*r+i[7],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this}clamp(e,n){return this.x=jn(this.x,e.x,n.x),this.y=jn(this.y,e.y,n.y),this}clampScalar(e,n){return this.x=jn(this.x,e,n),this.y=jn(this.y,e,n),this}clampLength(e,n){let r=this.length();return this.divideScalar(r||1).multiplyScalar(jn(r,e,n))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(e){return this.x*e.x+this.y*e.y}cross(e){return this.x*e.y-this.y*e.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(e){let n=Math.sqrt(this.lengthSq()*e.lengthSq());if(n===0)return Math.PI/2;let r=this.dot(e)/n;return Math.acos(jn(r,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let n=this.x-e.x,r=this.y-e.y;return n*n+r*r}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,n){return this.x+=(e.x-this.x)*n,this.y+=(e.y-this.y)*n,this}lerpVectors(e,n,r){return this.x=e.x+(n.x-e.x)*r,this.y=e.y+(n.y-e.y)*r,this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,n=0){return this.x=e[n],this.y=e[n+1],this}toArray(e=[],n=0){return e[n]=this.x,e[n+1]=this.y,e}fromBufferAttribute(e,n){return this.x=e.getX(n),this.y=e.getY(n),this}rotateAround(e,n){let r=Math.cos(n),i=Math.sin(n),o=this.x-e.x,a=this.y-e.y;return this.x=o*r-a*i+e.x,this.y=o*i+a*r+e.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}},hs=class{constructor(e=0,n=0,r=0,i=1){this.isQuaternion=!0,this._x=e,this._y=n,this._z=r,this._w=i}static slerpFlat(e,n,r,i,o,a,l){let s=r[i+0],u=r[i+1],d=r[i+2],h=r[i+3],f=o[a+0],g=o[a+1],y=o[a+2],_=o[a+3];if(h!==_||s!==f||u!==g||d!==y){let b=s*f+u*g+d*y+h*_;b<0&&(f=-f,g=-g,y=-y,_=-_,b=-b);let S=1-l;if(b<.9995){let w=Math.acos(b),v=Math.sin(w);S=Math.sin(S*w)/v,l=Math.sin(l*w)/v,s=s*S+f*l,u=u*S+g*l,d=d*S+y*l,h=h*S+_*l}else{s=s*S+f*l,u=u*S+g*l,d=d*S+y*l,h=h*S+_*l;let w=1/Math.sqrt(s*s+u*u+d*d+h*h);s*=w,u*=w,d*=w,h*=w}}e[n]=s,e[n+1]=u,e[n+2]=d,e[n+3]=h}static multiplyQuaternionsFlat(e,n,r,i,o,a){let l=r[i],s=r[i+1],u=r[i+2],d=r[i+3],h=o[a],f=o[a+1],g=o[a+2],y=o[a+3];return e[n]=l*y+d*h+s*g-u*f,e[n+1]=s*y+d*f+u*h-l*g,e[n+2]=u*y+d*g+l*f-s*h,e[n+3]=d*y-l*h-s*f-u*g,e}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get w(){return this._w}set w(e){this._w=e,this._onChangeCallback()}set(e,n,r,i){return this._x=e,this._y=n,this._z=r,this._w=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(e){return this._x=e.x,this._y=e.y,this._z=e.z,this._w=e.w,this._onChangeCallback(),this}setFromEuler(e,n=!0){let r=e._x,i=e._y,o=e._z,a=e._order,l=Math.cos,s=Math.sin,u=l(r/2),d=l(i/2),h=l(o/2),f=s(r/2),g=s(i/2),y=s(o/2);switch(a){case"XYZ":this._x=f*d*h+u*g*y,this._y=u*g*h-f*d*y,this._z=u*d*y+f*g*h,this._w=u*d*h-f*g*y;break;case"YXZ":this._x=f*d*h+u*g*y,this._y=u*g*h-f*d*y,this._z=u*d*y-f*g*h,this._w=u*d*h+f*g*y;break;case"ZXY":this._x=f*d*h-u*g*y,this._y=u*g*h+f*d*y,this._z=u*d*y+f*g*h,this._w=u*d*h-f*g*y;break;case"ZYX":this._x=f*d*h-u*g*y,this._y=u*g*h+f*d*y,this._z=u*d*y-f*g*h,this._w=u*d*h+f*g*y;break;case"YZX":this._x=f*d*h+u*g*y,this._y=u*g*h+f*d*y,this._z=u*d*y-f*g*h,this._w=u*d*h-f*g*y;break;case"XZY":this._x=f*d*h-u*g*y,this._y=u*g*h-f*d*y,this._z=u*d*y+f*g*h,this._w=u*d*h+f*g*y;break;default:lt("Quaternion: .setFromEuler() encountered an unknown order: "+a)}return n===!0&&this._onChangeCallback(),this}setFromAxisAngle(e,n){let r=n/2,i=Math.sin(r);return this._x=e.x*i,this._y=e.y*i,this._z=e.z*i,this._w=Math.cos(r),this._onChangeCallback(),this}setFromRotationMatrix(e){let n=e.elements,r=n[0],i=n[4],o=n[8],a=n[1],l=n[5],s=n[9],u=n[2],d=n[6],h=n[10],f=r+l+h;if(f>0){let g=.5/Math.sqrt(f+1);this._w=.25/g,this._x=(d-s)*g,this._y=(o-u)*g,this._z=(a-i)*g}else if(r>l&&r>h){let g=2*Math.sqrt(1+r-l-h);this._w=(d-s)/g,this._x=.25*g,this._y=(i+a)/g,this._z=(o+u)/g}else if(l>h){let g=2*Math.sqrt(1+l-r-h);this._w=(o-u)/g,this._x=(i+a)/g,this._y=.25*g,this._z=(s+d)/g}else{let g=2*Math.sqrt(1+h-r-l);this._w=(a-i)/g,this._x=(o+u)/g,this._y=(s+d)/g,this._z=.25*g}return this._onChangeCallback(),this}setFromUnitVectors(e,n){let r=e.dot(n)+1;return r<1e-8?(r=0,Math.abs(e.x)>Math.abs(e.z)?(this._x=-e.y,this._y=e.x,this._z=0,this._w=r):(this._x=0,this._y=-e.z,this._z=e.y,this._w=r)):(this._x=e.y*n.z-e.z*n.y,this._y=e.z*n.x-e.x*n.z,this._z=e.x*n.y-e.y*n.x,this._w=r),this.normalize()}angleTo(e){return 2*Math.acos(Math.abs(jn(this.dot(e),-1,1)))}rotateTowards(e,n){let r=this.angleTo(e);if(r===0)return this;let i=Math.min(1,n/r);return this.slerp(e,i),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(e){return this._x*e._x+this._y*e._y+this._z*e._z+this._w*e._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let e=this.length();return e===0?(this._x=0,this._y=0,this._z=0,this._w=1):(e=1/e,this._x=this._x*e,this._y=this._y*e,this._z=this._z*e,this._w=this._w*e),this._onChangeCallback(),this}multiply(e){return this.multiplyQuaternions(this,e)}premultiply(e){return this.multiplyQuaternions(e,this)}multiplyQuaternions(e,n){let r=e._x,i=e._y,o=e._z,a=e._w,l=n._x,s=n._y,u=n._z,d=n._w;return this._x=r*d+a*l+i*u-o*s,this._y=i*d+a*s+o*l-r*u,this._z=o*d+a*u+r*s-i*l,this._w=a*d-r*l-i*s-o*u,this._onChangeCallback(),this}slerp(e,n){let r=e._x,i=e._y,o=e._z,a=e._w,l=this.dot(e);l<0&&(r=-r,i=-i,o=-o,a=-a,l=-l);let s=1-n;if(l<.9995){let u=Math.acos(l),d=Math.sin(u);s=Math.sin(s*u)/d,n=Math.sin(n*u)/d,this._x=this._x*s+r*n,this._y=this._y*s+i*n,this._z=this._z*s+o*n,this._w=this._w*s+a*n,this._onChangeCallback()}else this._x=this._x*s+r*n,this._y=this._y*s+i*n,this._z=this._z*s+o*n,this._w=this._w*s+a*n,this.normalize();return this}slerpQuaternions(e,n,r){return this.copy(e).slerp(n,r)}random(){let e=2*Math.PI*Math.random(),n=2*Math.PI*Math.random(),r=Math.random(),i=Math.sqrt(1-r),o=Math.sqrt(r);return this.set(i*Math.sin(e),i*Math.cos(e),o*Math.sin(n),o*Math.cos(n))}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._w===this._w}fromArray(e,n=0){return this._x=e[n],this._y=e[n+1],this._z=e[n+2],this._w=e[n+3],this._onChangeCallback(),this}toArray(e=[],n=0){return e[n]=this._x,e[n+1]=this._y,e[n+2]=this._z,e[n+3]=this._w,e}fromBufferAttribute(e,n){return this._x=e.getX(n),this._y=e.getY(n),this._z=e.getZ(n),this._w=e.getW(n),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}},xe=class t{static{t.prototype.isVector3=!0}constructor(e=0,n=0,r=0){this.x=e,this.y=n,this.z=r}set(e,n,r){return r===void 0&&(r=this.z),this.x=e,this.y=n,this.z=r,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setComponent(e,n){switch(e){case 0:this.x=n;break;case 1:this.y=n;break;case 2:this.z=n;break;default:throw new Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this}addVectors(e,n){return this.x=e.x+n.x,this.y=e.y+n.y,this.z=e.z+n.z,this}addScaledVector(e,n){return this.x+=e.x*n,this.y+=e.y*n,this.z+=e.z*n,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this}subVectors(e,n){return this.x=e.x-n.x,this.y=e.y-n.y,this.z=e.z-n.z,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this}multiplyVectors(e,n){return this.x=e.x*n.x,this.y=e.y*n.y,this.z=e.z*n.z,this}applyEuler(e){return this.applyQuaternion(TD.setFromEuler(e))}applyAxisAngle(e,n){return this.applyQuaternion(TD.setFromAxisAngle(e,n))}applyMatrix3(e){let n=this.x,r=this.y,i=this.z,o=e.elements;return this.x=o[0]*n+o[3]*r+o[6]*i,this.y=o[1]*n+o[4]*r+o[7]*i,this.z=o[2]*n+o[5]*r+o[8]*i,this}applyNormalMatrix(e){return this.applyMatrix3(e).normalize()}applyMatrix4(e){let n=this.x,r=this.y,i=this.z,o=e.elements,a=1/(o[3]*n+o[7]*r+o[11]*i+o[15]);return this.x=(o[0]*n+o[4]*r+o[8]*i+o[12])*a,this.y=(o[1]*n+o[5]*r+o[9]*i+o[13])*a,this.z=(o[2]*n+o[6]*r+o[10]*i+o[14])*a,this}applyQuaternion(e){let n=this.x,r=this.y,i=this.z,o=e.x,a=e.y,l=e.z,s=e.w,u=2*(a*i-l*r),d=2*(l*n-o*i),h=2*(o*r-a*n);return this.x=n+s*u+a*h-l*d,this.y=r+s*d+l*u-o*h,this.z=i+s*h+o*d-a*u,this}project(e){return this.applyMatrix4(e.matrixWorldInverse).applyMatrix4(e.projectionMatrix)}unproject(e){return this.applyMatrix4(e.projectionMatrixInverse).applyMatrix4(e.matrixWorld)}transformDirection(e){let n=this.x,r=this.y,i=this.z,o=e.elements;return this.x=o[0]*n+o[4]*r+o[8]*i,this.y=o[1]*n+o[5]*r+o[9]*i,this.z=o[2]*n+o[6]*r+o[10]*i,this.normalize()}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this}divideScalar(e){return this.multiplyScalar(1/e)}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this}clamp(e,n){return this.x=jn(this.x,e.x,n.x),this.y=jn(this.y,e.y,n.y),this.z=jn(this.z,e.z,n.z),this}clampScalar(e,n){return this.x=jn(this.x,e,n),this.y=jn(this.y,e,n),this.z=jn(this.z,e,n),this}clampLength(e,n){let r=this.length();return this.divideScalar(r||1).multiplyScalar(jn(r,e,n))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,n){return this.x+=(e.x-this.x)*n,this.y+=(e.y-this.y)*n,this.z+=(e.z-this.z)*n,this}lerpVectors(e,n,r){return this.x=e.x+(n.x-e.x)*r,this.y=e.y+(n.y-e.y)*r,this.z=e.z+(n.z-e.z)*r,this}cross(e){return this.crossVectors(this,e)}crossVectors(e,n){let r=e.x,i=e.y,o=e.z,a=n.x,l=n.y,s=n.z;return this.x=i*s-o*l,this.y=o*a-r*s,this.z=r*l-i*a,this}projectOnVector(e){let n=e.lengthSq();if(n===0)return this.set(0,0,0);let r=e.dot(this)/n;return this.copy(e).multiplyScalar(r)}projectOnPlane(e){return bT.copy(this).projectOnVector(e),this.sub(bT)}reflect(e){return this.sub(bT.copy(e).multiplyScalar(2*this.dot(e)))}angleTo(e){let n=Math.sqrt(this.lengthSq()*e.lengthSq());if(n===0)return Math.PI/2;let r=this.dot(e)/n;return Math.acos(jn(r,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let n=this.x-e.x,r=this.y-e.y,i=this.z-e.z;return n*n+r*r+i*i}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)+Math.abs(this.z-e.z)}setFromSpherical(e){return this.setFromSphericalCoords(e.radius,e.phi,e.theta)}setFromSphericalCoords(e,n,r){let i=Math.sin(n)*e;return this.x=i*Math.sin(r),this.y=Math.cos(n)*e,this.z=i*Math.cos(r),this}setFromCylindrical(e){return this.setFromCylindricalCoords(e.radius,e.theta,e.y)}setFromCylindricalCoords(e,n,r){return this.x=e*Math.sin(n),this.y=r,this.z=e*Math.cos(n),this}setFromMatrixPosition(e){let n=e.elements;return this.x=n[12],this.y=n[13],this.z=n[14],this}setFromMatrixScale(e){let n=this.setFromMatrixColumn(e,0).length(),r=this.setFromMatrixColumn(e,1).length(),i=this.setFromMatrixColumn(e,2).length();return this.x=n,this.y=r,this.z=i,this}setFromMatrixColumn(e,n){return this.fromArray(e.elements,n*4)}setFromMatrix3Column(e,n){return this.fromArray(e.elements,n*3)}setFromEuler(e){return this.x=e._x,this.y=e._y,this.z=e._z,this}setFromColor(e){return this.x=e.r,this.y=e.g,this.z=e.b,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z}fromArray(e,n=0){return this.x=e[n],this.y=e[n+1],this.z=e[n+2],this}toArray(e=[],n=0){return e[n]=this.x,e[n+1]=this.y,e[n+2]=this.z,e}fromBufferAttribute(e,n){return this.x=e.getX(n),this.y=e.getY(n),this.z=e.getZ(n),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){let e=Math.random()*Math.PI*2,n=Math.random()*2-1,r=Math.sqrt(1-n*n);return this.x=r*Math.cos(e),this.y=n,this.z=r*Math.sin(e),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}},bT=new xe,TD=new hs,Cn=class t{static{t.prototype.isMatrix3=!0}constructor(e,n,r,i,o,a,l,s,u){this.elements=[1,0,0,0,1,0,0,0,1],e!==void 0&&this.set(e,n,r,i,o,a,l,s,u)}set(e,n,r,i,o,a,l,s,u){let d=this.elements;return d[0]=e,d[1]=i,d[2]=l,d[3]=n,d[4]=o,d[5]=s,d[6]=r,d[7]=a,d[8]=u,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(e){let n=this.elements,r=e.elements;return n[0]=r[0],n[1]=r[1],n[2]=r[2],n[3]=r[3],n[4]=r[4],n[5]=r[5],n[6]=r[6],n[7]=r[7],n[8]=r[8],this}extractBasis(e,n,r){return e.setFromMatrix3Column(this,0),n.setFromMatrix3Column(this,1),r.setFromMatrix3Column(this,2),this}setFromMatrix4(e){let n=e.elements;return this.set(n[0],n[4],n[8],n[1],n[5],n[9],n[2],n[6],n[10]),this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,n){let r=e.elements,i=n.elements,o=this.elements,a=r[0],l=r[3],s=r[6],u=r[1],d=r[4],h=r[7],f=r[2],g=r[5],y=r[8],_=i[0],b=i[3],S=i[6],w=i[1],v=i[4],E=i[7],C=i[2],M=i[5],R=i[8];return o[0]=a*_+l*w+s*C,o[3]=a*b+l*v+s*M,o[6]=a*S+l*E+s*R,o[1]=u*_+d*w+h*C,o[4]=u*b+d*v+h*M,o[7]=u*S+d*E+h*R,o[2]=f*_+g*w+y*C,o[5]=f*b+g*v+y*M,o[8]=f*S+g*E+y*R,this}multiplyScalar(e){let n=this.elements;return n[0]*=e,n[3]*=e,n[6]*=e,n[1]*=e,n[4]*=e,n[7]*=e,n[2]*=e,n[5]*=e,n[8]*=e,this}determinant(){let e=this.elements,n=e[0],r=e[1],i=e[2],o=e[3],a=e[4],l=e[5],s=e[6],u=e[7],d=e[8];return n*a*d-n*l*u-r*o*d+r*l*s+i*o*u-i*a*s}invert(){let e=this.elements,n=e[0],r=e[1],i=e[2],o=e[3],a=e[4],l=e[5],s=e[6],u=e[7],d=e[8],h=d*a-l*u,f=l*s-d*o,g=u*o-a*s,y=n*h+r*f+i*g;if(y===0)return this.set(0,0,0,0,0,0,0,0,0);let _=1/y;return e[0]=h*_,e[1]=(i*u-d*r)*_,e[2]=(l*r-i*a)*_,e[3]=f*_,e[4]=(d*n-i*s)*_,e[5]=(i*o-l*n)*_,e[6]=g*_,e[7]=(r*s-u*n)*_,e[8]=(a*n-r*o)*_,this}transpose(){let e,n=this.elements;return e=n[1],n[1]=n[3],n[3]=e,e=n[2],n[2]=n[6],n[6]=e,e=n[5],n[5]=n[7],n[7]=e,this}getNormalMatrix(e){return this.setFromMatrix4(e).invert().transpose()}transposeIntoArray(e){let n=this.elements;return e[0]=n[0],e[1]=n[3],e[2]=n[6],e[3]=n[1],e[4]=n[4],e[5]=n[7],e[6]=n[2],e[7]=n[5],e[8]=n[8],this}setUvTransform(e,n,r,i,o,a,l){let s=Math.cos(o),u=Math.sin(o);return this.set(r*s,r*u,-r*(s*a+u*l)+a+e,-i*u,i*s,-i*(-u*a+s*l)+l+n,0,0,1),this}scale(e,n){return this.premultiply(_T.makeScale(e,n)),this}rotate(e){return this.premultiply(_T.makeRotation(-e)),this}translate(e,n){return this.premultiply(_T.makeTranslation(e,n)),this}makeTranslation(e,n){return e.isVector2?this.set(1,0,e.x,0,1,e.y,0,0,1):this.set(1,0,e,0,1,n,0,0,1),this}makeRotation(e){let n=Math.cos(e),r=Math.sin(e);return this.set(n,-r,0,r,n,0,0,0,1),this}makeScale(e,n){return this.set(e,0,0,0,n,0,0,0,1),this}equals(e){let n=this.elements,r=e.elements;for(let i=0;i<9;i++)if(n[i]!==r[i])return!1;return!0}fromArray(e,n=0){for(let r=0;r<9;r++)this.elements[r]=e[r+n];return this}toArray(e=[],n=0){let r=this.elements;return e[n]=r[0],e[n+1]=r[1],e[n+2]=r[2],e[n+3]=r[3],e[n+4]=r[4],e[n+5]=r[5],e[n+6]=r[6],e[n+7]=r[7],e[n+8]=r[8],e}clone(){return new this.constructor().fromArray(this.elements)}},_T=new Cn,CD=new Cn().set(.4123908,.3575843,.1804808,.212639,.7151687,.0721923,.0193308,.1191948,.9505322),ED=new Cn().set(3.2409699,-1.5373832,-.4986108,-.9692436,1.8759675,.0415551,.0556301,-.203977,1.0569715);hn=Pne();kS=class{static getDataURL(e,n="image/png"){if(/^data:/i.test(e.src)||typeof HTMLCanvasElement>"u")return e.src;let r;if(e instanceof HTMLCanvasElement)r=e;else{ph===void 0&&(ph=Ah("canvas")),ph.width=e.width,ph.height=e.height;let i=ph.getContext("2d");e instanceof ImageData?i.putImageData(e,0,0):i.drawImage(e,0,0,e.width,e.height),r=ph}return r.toDataURL(n)}static sRGBToLinear(e){if(typeof HTMLImageElement<"u"&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&e instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&e instanceof ImageBitmap){let n=Ah("canvas");n.width=e.width,n.height=e.height;let r=n.getContext("2d");r.drawImage(e,0,0,e.width,e.height);let i=r.getImageData(0,0,e.width,e.height),o=i.data;for(let a=0;a<o.length;a++)o[a]=Ga(o[a]/255)*255;return r.putImageData(i,0,0),n}else if(e.data){let n=e.data.slice(0);for(let r=0;r<n.length;r++)n instanceof Uint8Array||n instanceof Uint8ClampedArray?n[r]=Math.floor(Ga(n[r]/255)*255):n[r]=Ga(n[r]);return{data:n,width:e.width,height:e.height}}else return lt("ImageUtils.sRGBToLinear(): Unsupported image type. No color space conversion applied."),e}},Ine=0,Ih=class{constructor(e=null){this.isSource=!0,Object.defineProperty(this,"id",{value:Ine++}),this.uuid=Va(),this.data=e,this.dataReady=!0,this.version=0}getSize(e){let n=this.data;return typeof HTMLVideoElement<"u"&&n instanceof HTMLVideoElement?e.set(n.videoWidth,n.videoHeight,0):typeof VideoFrame<"u"&&n instanceof VideoFrame?e.set(n.displayWidth,n.displayHeight,0):n!==null?e.set(n.width,n.height,n.depth||0):e.set(0,0,0),e}set needsUpdate(e){e===!0&&this.version++}toJSON(e){let n=e===void 0||typeof e=="string";if(!n&&e.images[this.uuid]!==void 0)return e.images[this.uuid];let r={uuid:this.uuid,url:""},i=this.data;if(i!==null){let o;if(Array.isArray(i)){o=[];for(let a=0,l=i.length;a<l;a++)i[a].isDataTexture?o.push(ST(i[a].image)):o.push(ST(i[a]))}else o=ST(i);r.url=o}return n||(e.images[this.uuid]=r),r}};Nne=0,wT=new xe,Ur=class t extends io{constructor(e=t.DEFAULT_IMAGE,n=t.DEFAULT_MAPPING,r=Hi,i=Hi,o=sn,a=ji,l=qn,s=dr,u=t.DEFAULT_ANISOTROPY,d=Xi){super(),this.isTexture=!0,Object.defineProperty(this,"id",{value:Nne++}),this.uuid=Va(),this.name="",this.source=new Ih(e),this.mipmaps=[],this.mapping=n,this.channel=0,this.wrapS=r,this.wrapT=i,this.magFilter=o,this.minFilter=a,this.anisotropy=u,this.format=l,this.internalFormat=null,this.type=s,this.offset=new mn(0,0),this.repeat=new mn(1,1),this.center=new mn(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new Cn,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.colorSpace=d,this.userData={},this.updateRanges=[],this.version=0,this.onUpdate=null,this.renderTarget=null,this.isRenderTargetTexture=!1,this.isArrayTexture=!!(e&&e.depth&&e.depth>1),this.pmremVersion=0,this.normalized=!1}get width(){return this.source.getSize(wT).x}get height(){return this.source.getSize(wT).y}get depth(){return this.source.getSize(wT).z}get image(){return this.source.data}set image(e){this.source.data=e}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}addUpdateRange(e,n){this.updateRanges.push({start:e,count:n})}clearUpdateRanges(){this.updateRanges.length=0}clone(){return new this.constructor().copy(this)}copy(e){return this.name=e.name,this.source=e.source,this.mipmaps=e.mipmaps.slice(0),this.mapping=e.mapping,this.channel=e.channel,this.wrapS=e.wrapS,this.wrapT=e.wrapT,this.magFilter=e.magFilter,this.minFilter=e.minFilter,this.anisotropy=e.anisotropy,this.format=e.format,this.internalFormat=e.internalFormat,this.type=e.type,this.normalized=e.normalized,this.offset.copy(e.offset),this.repeat.copy(e.repeat),this.center.copy(e.center),this.rotation=e.rotation,this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrix.copy(e.matrix),this.generateMipmaps=e.generateMipmaps,this.premultiplyAlpha=e.premultiplyAlpha,this.flipY=e.flipY,this.unpackAlignment=e.unpackAlignment,this.colorSpace=e.colorSpace,this.renderTarget=e.renderTarget,this.isRenderTargetTexture=e.isRenderTargetTexture,this.isArrayTexture=e.isArrayTexture,this.userData=JSON.parse(JSON.stringify(e.userData)),this.needsUpdate=!0,this}setValues(e){for(let n in e){let r=e[n];if(r===void 0){lt(`Texture.setValues(): parameter '${n}' has value of undefined.`);continue}let i=this[n];if(i===void 0){lt(`Texture.setValues(): property '${n}' does not exist.`);continue}i&&r&&i.isVector2&&r.isVector2||i&&r&&i.isVector3&&r.isVector3||i&&r&&i.isMatrix3&&r.isMatrix3?i.copy(r):this[n]=r}}toJSON(e){let n=e===void 0||typeof e=="string";if(!n&&e.textures[this.uuid]!==void 0)return e.textures[this.uuid];let r={metadata:{version:4.7,type:"Texture",generator:"Texture.toJSON"},uuid:this.uuid,name:this.name,image:this.source.toJSON(e).uuid,mapping:this.mapping,channel:this.channel,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,internalFormat:this.internalFormat,type:this.type,normalized:this.normalized,colorSpace:this.colorSpace,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,generateMipmaps:this.generateMipmaps,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};return Object.keys(this.userData).length>0&&(r.userData=this.userData),n||(e.textures[this.uuid]=r),r}dispose(){this.dispatchEvent({type:"dispose"})}transformUv(e){if(this.mapping!==Ew)return e;if(e.applyMatrix3(this.matrix),e.x<0||e.x>1)switch(this.wrapS){case Ko:e.x=e.x-Math.floor(e.x);break;case Hi:e.x=e.x<0?0:1;break;case Ha:Math.abs(Math.floor(e.x)%2)===1?e.x=Math.ceil(e.x)-e.x:e.x=e.x-Math.floor(e.x);break}if(e.y<0||e.y>1)switch(this.wrapT){case Ko:e.y=e.y-Math.floor(e.y);break;case Hi:e.y=e.y<0?0:1;break;case Ha:Math.abs(Math.floor(e.y)%2)===1?e.y=Math.ceil(e.y)-e.y:e.y=e.y-Math.floor(e.y);break}return this.flipY&&(e.y=1-e.y),e}set needsUpdate(e){e===!0&&(this.version++,this.source.needsUpdate=!0)}set needsPMREMUpdate(e){e===!0&&this.pmremVersion++}};Ur.DEFAULT_IMAGE=null;Ur.DEFAULT_MAPPING=Ew;Ur.DEFAULT_ANISOTROPY=1;wn=class t{static{t.prototype.isVector4=!0}constructor(e=0,n=0,r=0,i=1){this.x=e,this.y=n,this.z=r,this.w=i}get width(){return this.z}set width(e){this.z=e}get height(){return this.w}set height(e){this.w=e}set(e,n,r,i){return this.x=e,this.y=n,this.z=r,this.w=i,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this.w=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setW(e){return this.w=e,this}setComponent(e,n){switch(e){case 0:this.x=n;break;case 1:this.y=n;break;case 2:this.z=n;break;case 3:this.w=n;break;default:throw new Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=e.w!==void 0?e.w:1,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this.w+=e.w,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this.w+=e,this}addVectors(e,n){return this.x=e.x+n.x,this.y=e.y+n.y,this.z=e.z+n.z,this.w=e.w+n.w,this}addScaledVector(e,n){return this.x+=e.x*n,this.y+=e.y*n,this.z+=e.z*n,this.w+=e.w*n,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this.w-=e.w,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this.w-=e,this}subVectors(e,n){return this.x=e.x-n.x,this.y=e.y-n.y,this.z=e.z-n.z,this.w=e.w-n.w,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this.w*=e.w,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this.w*=e,this}applyMatrix4(e){let n=this.x,r=this.y,i=this.z,o=this.w,a=e.elements;return this.x=a[0]*n+a[4]*r+a[8]*i+a[12]*o,this.y=a[1]*n+a[5]*r+a[9]*i+a[13]*o,this.z=a[2]*n+a[6]*r+a[10]*i+a[14]*o,this.w=a[3]*n+a[7]*r+a[11]*i+a[15]*o,this}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this.w/=e.w,this}divideScalar(e){return this.multiplyScalar(1/e)}setAxisAngleFromQuaternion(e){this.w=2*Math.acos(e.w);let n=Math.sqrt(1-e.w*e.w);return n<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=e.x/n,this.y=e.y/n,this.z=e.z/n),this}setAxisAngleFromRotationMatrix(e){let n,r,i,o,s=e.elements,u=s[0],d=s[4],h=s[8],f=s[1],g=s[5],y=s[9],_=s[2],b=s[6],S=s[10];if(Math.abs(d-f)<.01&&Math.abs(h-_)<.01&&Math.abs(y-b)<.01){if(Math.abs(d+f)<.1&&Math.abs(h+_)<.1&&Math.abs(y+b)<.1&&Math.abs(u+g+S-3)<.1)return this.set(1,0,0,0),this;n=Math.PI;let v=(u+1)/2,E=(g+1)/2,C=(S+1)/2,M=(d+f)/4,R=(h+_)/4,c=(y+b)/4;return v>E&&v>C?v<.01?(r=0,i=.707106781,o=.707106781):(r=Math.sqrt(v),i=M/r,o=R/r):E>C?E<.01?(r=.707106781,i=0,o=.707106781):(i=Math.sqrt(E),r=M/i,o=c/i):C<.01?(r=.707106781,i=.707106781,o=0):(o=Math.sqrt(C),r=R/o,i=c/o),this.set(r,i,o,n),this}let w=Math.sqrt((b-y)*(b-y)+(h-_)*(h-_)+(f-d)*(f-d));return Math.abs(w)<.001&&(w=1),this.x=(b-y)/w,this.y=(h-_)/w,this.z=(f-d)/w,this.w=Math.acos((u+g+S-1)/2),this}setFromMatrixPosition(e){let n=e.elements;return this.x=n[12],this.y=n[13],this.z=n[14],this.w=n[15],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this.w=Math.min(this.w,e.w),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this.w=Math.max(this.w,e.w),this}clamp(e,n){return this.x=jn(this.x,e.x,n.x),this.y=jn(this.y,e.y,n.y),this.z=jn(this.z,e.z,n.z),this.w=jn(this.w,e.w,n.w),this}clampScalar(e,n){return this.x=jn(this.x,e,n),this.y=jn(this.y,e,n),this.z=jn(this.z,e,n),this.w=jn(this.w,e,n),this}clampLength(e,n){let r=this.length();return this.divideScalar(r||1).multiplyScalar(jn(r,e,n))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this.w=Math.trunc(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z+this.w*e.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,n){return this.x+=(e.x-this.x)*n,this.y+=(e.y-this.y)*n,this.z+=(e.z-this.z)*n,this.w+=(e.w-this.w)*n,this}lerpVectors(e,n,r){return this.x=e.x+(n.x-e.x)*r,this.y=e.y+(n.y-e.y)*r,this.z=e.z+(n.z-e.z)*r,this.w=e.w+(n.w-e.w)*r,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z&&e.w===this.w}fromArray(e,n=0){return this.x=e[n],this.y=e[n+1],this.z=e[n+2],this.w=e[n+3],this}toArray(e=[],n=0){return e[n]=this.x,e[n+1]=this.y,e[n+2]=this.z,e[n+3]=this.w,e}fromBufferAttribute(e,n){return this.x=e.getX(n),this.y=e.getY(n),this.z=e.getZ(n),this.w=e.getW(n),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}},Oo=class extends io{constructor(e=1,n=1,r={}){super(),r=Object.assign({generateMipmaps:!1,internalFormat:null,minFilter:sn,depthBuffer:!0,stencilBuffer:!1,resolveDepthBuffer:!0,resolveStencilBuffer:!0,depthTexture:null,samples:0,count:1,depth:1,multiview:!1},r),this.isRenderTarget=!0,this.width=e,this.height=n,this.depth=r.depth,this.scissor=new wn(0,0,e,n),this.scissorTest=!1,this.viewport=new wn(0,0,e,n),this.textures=[];let i={width:e,height:n,depth:r.depth},o=new Ur(i),a=r.count;for(let l=0;l<a;l++)this.textures[l]=o.clone(),this.textures[l].isRenderTargetTexture=!0,this.textures[l].renderTarget=this;this._setTextureOptions(r),this.depthBuffer=r.depthBuffer,this.stencilBuffer=r.stencilBuffer,this.resolveDepthBuffer=r.resolveDepthBuffer,this.resolveStencilBuffer=r.resolveStencilBuffer,this._depthTexture=null,this.depthTexture=r.depthTexture,this.samples=r.samples,this.multiview=r.multiview}_setTextureOptions(e={}){let n={minFilter:sn,generateMipmaps:!1,flipY:!1,internalFormat:null};e.mapping!==void 0&&(n.mapping=e.mapping),e.wrapS!==void 0&&(n.wrapS=e.wrapS),e.wrapT!==void 0&&(n.wrapT=e.wrapT),e.wrapR!==void 0&&(n.wrapR=e.wrapR),e.magFilter!==void 0&&(n.magFilter=e.magFilter),e.minFilter!==void 0&&(n.minFilter=e.minFilter),e.format!==void 0&&(n.format=e.format),e.type!==void 0&&(n.type=e.type),e.anisotropy!==void 0&&(n.anisotropy=e.anisotropy),e.colorSpace!==void 0&&(n.colorSpace=e.colorSpace),e.flipY!==void 0&&(n.flipY=e.flipY),e.generateMipmaps!==void 0&&(n.generateMipmaps=e.generateMipmaps),e.internalFormat!==void 0&&(n.internalFormat=e.internalFormat);for(let r=0;r<this.textures.length;r++)this.textures[r].setValues(n)}get texture(){return this.textures[0]}set texture(e){this.textures[0]=e}set depthTexture(e){this._depthTexture!==null&&(this._depthTexture.renderTarget=null),e!==null&&(e.renderTarget=this),this._depthTexture=e}get depthTexture(){return this._depthTexture}setSize(e,n,r=1){if(this.width!==e||this.height!==n||this.depth!==r){this.width=e,this.height=n,this.depth=r;for(let i=0,o=this.textures.length;i<o;i++)this.textures[i].image.width=e,this.textures[i].image.height=n,this.textures[i].image.depth=r,this.textures[i].isData3DTexture!==!0&&(this.textures[i].isArrayTexture=this.textures[i].image.depth>1);this.dispose()}this.viewport.set(0,0,e,n),this.scissor.set(0,0,e,n)}clone(){return new this.constructor().copy(this)}copy(e){this.width=e.width,this.height=e.height,this.depth=e.depth,this.scissor.copy(e.scissor),this.scissorTest=e.scissorTest,this.viewport.copy(e.viewport),this.textures.length=0;for(let n=0,r=e.textures.length;n<r;n++){this.textures[n]=e.textures[n].clone(),this.textures[n].isRenderTargetTexture=!0,this.textures[n].renderTarget=this;let i=Object.assign({},e.textures[n].image);this.textures[n].source=new Ih(i)}return this.depthBuffer=e.depthBuffer,this.stencilBuffer=e.stencilBuffer,this.resolveDepthBuffer=e.resolveDepthBuffer,this.resolveStencilBuffer=e.resolveStencilBuffer,e.depthTexture!==null&&(this.depthTexture=e.depthTexture.clone()),this.samples=e.samples,this.multiview=e.multiview,this}dispose(){this.dispatchEvent({type:"dispose"})}},po=class extends Oo{constructor(e=1,n=1,r={}){super(e,n,r),this.isWebGLRenderTarget=!0}},gf=class extends Ur{constructor(e=null,n=1,r=1,i=1){super(null),this.isDataArrayTexture=!0,this.image={data:e,width:n,height:r,depth:i},this.magFilter=An,this.minFilter=An,this.wrapR=Hi,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.layerUpdates=new Set}addLayerUpdate(e){this.layerUpdates.add(e)}clearLayerUpdates(){this.layerUpdates.clear()}},Hm=class extends Ur{constructor(e=null,n=1,r=1,i=1){super(null),this.isData3DTexture=!0,this.image={data:e,width:n,height:r,depth:i},this.magFilter=An,this.minFilter=An,this.wrapR=Hi,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}},In=class t{static{t.prototype.isMatrix4=!0}constructor(e,n,r,i,o,a,l,s,u,d,h,f,g,y,_,b){this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],e!==void 0&&this.set(e,n,r,i,o,a,l,s,u,d,h,f,g,y,_,b)}set(e,n,r,i,o,a,l,s,u,d,h,f,g,y,_,b){let S=this.elements;return S[0]=e,S[4]=n,S[8]=r,S[12]=i,S[1]=o,S[5]=a,S[9]=l,S[13]=s,S[2]=u,S[6]=d,S[10]=h,S[14]=f,S[3]=g,S[7]=y,S[11]=_,S[15]=b,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new t().fromArray(this.elements)}copy(e){let n=this.elements,r=e.elements;return n[0]=r[0],n[1]=r[1],n[2]=r[2],n[3]=r[3],n[4]=r[4],n[5]=r[5],n[6]=r[6],n[7]=r[7],n[8]=r[8],n[9]=r[9],n[10]=r[10],n[11]=r[11],n[12]=r[12],n[13]=r[13],n[14]=r[14],n[15]=r[15],this}copyPosition(e){let n=this.elements,r=e.elements;return n[12]=r[12],n[13]=r[13],n[14]=r[14],this}setFromMatrix3(e){let n=e.elements;return this.set(n[0],n[3],n[6],0,n[1],n[4],n[7],0,n[2],n[5],n[8],0,0,0,0,1),this}extractBasis(e,n,r){return this.determinant()===0?(e.set(1,0,0),n.set(0,1,0),r.set(0,0,1),this):(e.setFromMatrixColumn(this,0),n.setFromMatrixColumn(this,1),r.setFromMatrixColumn(this,2),this)}makeBasis(e,n,r){return this.set(e.x,n.x,r.x,0,e.y,n.y,r.y,0,e.z,n.z,r.z,0,0,0,0,1),this}extractRotation(e){if(e.determinant()===0)return this.identity();let n=this.elements,r=e.elements,i=1/gh.setFromMatrixColumn(e,0).length(),o=1/gh.setFromMatrixColumn(e,1).length(),a=1/gh.setFromMatrixColumn(e,2).length();return n[0]=r[0]*i,n[1]=r[1]*i,n[2]=r[2]*i,n[3]=0,n[4]=r[4]*o,n[5]=r[5]*o,n[6]=r[6]*o,n[7]=0,n[8]=r[8]*a,n[9]=r[9]*a,n[10]=r[10]*a,n[11]=0,n[12]=0,n[13]=0,n[14]=0,n[15]=1,this}makeRotationFromEuler(e){let n=this.elements,r=e.x,i=e.y,o=e.z,a=Math.cos(r),l=Math.sin(r),s=Math.cos(i),u=Math.sin(i),d=Math.cos(o),h=Math.sin(o);if(e.order==="XYZ"){let f=a*d,g=a*h,y=l*d,_=l*h;n[0]=s*d,n[4]=-s*h,n[8]=u,n[1]=g+y*u,n[5]=f-_*u,n[9]=-l*s,n[2]=_-f*u,n[6]=y+g*u,n[10]=a*s}else if(e.order==="YXZ"){let f=s*d,g=s*h,y=u*d,_=u*h;n[0]=f+_*l,n[4]=y*l-g,n[8]=a*u,n[1]=a*h,n[5]=a*d,n[9]=-l,n[2]=g*l-y,n[6]=_+f*l,n[10]=a*s}else if(e.order==="ZXY"){let f=s*d,g=s*h,y=u*d,_=u*h;n[0]=f-_*l,n[4]=-a*h,n[8]=y+g*l,n[1]=g+y*l,n[5]=a*d,n[9]=_-f*l,n[2]=-a*u,n[6]=l,n[10]=a*s}else if(e.order==="ZYX"){let f=a*d,g=a*h,y=l*d,_=l*h;n[0]=s*d,n[4]=y*u-g,n[8]=f*u+_,n[1]=s*h,n[5]=_*u+f,n[9]=g*u-y,n[2]=-u,n[6]=l*s,n[10]=a*s}else if(e.order==="YZX"){let f=a*s,g=a*u,y=l*s,_=l*u;n[0]=s*d,n[4]=_-f*h,n[8]=y*h+g,n[1]=h,n[5]=a*d,n[9]=-l*d,n[2]=-u*d,n[6]=g*h+y,n[10]=f-_*h}else if(e.order==="XZY"){let f=a*s,g=a*u,y=l*s,_=l*u;n[0]=s*d,n[4]=-h,n[8]=u*d,n[1]=f*h+_,n[5]=a*d,n[9]=g*h-y,n[2]=y*h-g,n[6]=l*d,n[10]=_*h+f}return n[3]=0,n[7]=0,n[11]=0,n[12]=0,n[13]=0,n[14]=0,n[15]=1,this}makeRotationFromQuaternion(e){return this.compose(One,e,Une)}lookAt(e,n,r){let i=this.elements;return Ro.subVectors(e,n),Ro.lengthSq()===0&&(Ro.z=1),Ro.normalize(),Eu.crossVectors(r,Ro),Eu.lengthSq()===0&&(Math.abs(r.z)===1?Ro.x+=1e-4:Ro.z+=1e-4,Ro.normalize(),Eu.crossVectors(r,Ro)),Eu.normalize(),hS.crossVectors(Ro,Eu),i[0]=Eu.x,i[4]=hS.x,i[8]=Ro.x,i[1]=Eu.y,i[5]=hS.y,i[9]=Ro.y,i[2]=Eu.z,i[6]=hS.z,i[10]=Ro.z,this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,n){let r=e.elements,i=n.elements,o=this.elements,a=r[0],l=r[4],s=r[8],u=r[12],d=r[1],h=r[5],f=r[9],g=r[13],y=r[2],_=r[6],b=r[10],S=r[14],w=r[3],v=r[7],E=r[11],C=r[15],M=i[0],R=i[4],c=i[8],m=i[12],x=i[1],T=i[5],N=i[9],B=i[13],D=i[2],O=i[6],L=i[10],V=i[14],Z=i[3],q=i[7],ae=i[11],we=i[15];return o[0]=a*M+l*x+s*D+u*Z,o[4]=a*R+l*T+s*O+u*q,o[8]=a*c+l*N+s*L+u*ae,o[12]=a*m+l*B+s*V+u*we,o[1]=d*M+h*x+f*D+g*Z,o[5]=d*R+h*T+f*O+g*q,o[9]=d*c+h*N+f*L+g*ae,o[13]=d*m+h*B+f*V+g*we,o[2]=y*M+_*x+b*D+S*Z,o[6]=y*R+_*T+b*O+S*q,o[10]=y*c+_*N+b*L+S*ae,o[14]=y*m+_*B+b*V+S*we,o[3]=w*M+v*x+E*D+C*Z,o[7]=w*R+v*T+E*O+C*q,o[11]=w*c+v*N+E*L+C*ae,o[15]=w*m+v*B+E*V+C*we,this}multiplyScalar(e){let n=this.elements;return n[0]*=e,n[4]*=e,n[8]*=e,n[12]*=e,n[1]*=e,n[5]*=e,n[9]*=e,n[13]*=e,n[2]*=e,n[6]*=e,n[10]*=e,n[14]*=e,n[3]*=e,n[7]*=e,n[11]*=e,n[15]*=e,this}determinant(){let e=this.elements,n=e[0],r=e[4],i=e[8],o=e[12],a=e[1],l=e[5],s=e[9],u=e[13],d=e[2],h=e[6],f=e[10],g=e[14],y=e[3],_=e[7],b=e[11],S=e[15],w=s*g-u*f,v=l*g-u*h,E=l*f-s*h,C=a*g-u*d,M=a*f-s*d,R=a*h-l*d;return n*(_*w-b*v+S*E)-r*(y*w-b*C+S*M)+i*(y*v-_*C+S*R)-o*(y*E-_*M+b*R)}transpose(){let e=this.elements,n;return n=e[1],e[1]=e[4],e[4]=n,n=e[2],e[2]=e[8],e[8]=n,n=e[6],e[6]=e[9],e[9]=n,n=e[3],e[3]=e[12],e[12]=n,n=e[7],e[7]=e[13],e[13]=n,n=e[11],e[11]=e[14],e[14]=n,this}setPosition(e,n,r){let i=this.elements;return e.isVector3?(i[12]=e.x,i[13]=e.y,i[14]=e.z):(i[12]=e,i[13]=n,i[14]=r),this}invert(){let e=this.elements,n=e[0],r=e[1],i=e[2],o=e[3],a=e[4],l=e[5],s=e[6],u=e[7],d=e[8],h=e[9],f=e[10],g=e[11],y=e[12],_=e[13],b=e[14],S=e[15],w=n*l-r*a,v=n*s-i*a,E=n*u-o*a,C=r*s-i*l,M=r*u-o*l,R=i*u-o*s,c=d*_-h*y,m=d*b-f*y,x=d*S-g*y,T=h*b-f*_,N=h*S-g*_,B=f*S-g*b,D=w*B-v*N+E*T+C*x-M*m+R*c;if(D===0)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);let O=1/D;return e[0]=(l*B-s*N+u*T)*O,e[1]=(i*N-r*B-o*T)*O,e[2]=(_*R-b*M+S*C)*O,e[3]=(f*M-h*R-g*C)*O,e[4]=(s*x-a*B-u*m)*O,e[5]=(n*B-i*x+o*m)*O,e[6]=(b*E-y*R-S*v)*O,e[7]=(d*R-f*E+g*v)*O,e[8]=(a*N-l*x+u*c)*O,e[9]=(r*x-n*N-o*c)*O,e[10]=(y*M-_*E+S*w)*O,e[11]=(h*E-d*M-g*w)*O,e[12]=(l*m-a*T-s*c)*O,e[13]=(n*T-r*m+i*c)*O,e[14]=(_*v-y*C-b*w)*O,e[15]=(d*C-h*v+f*w)*O,this}scale(e){let n=this.elements,r=e.x,i=e.y,o=e.z;return n[0]*=r,n[4]*=i,n[8]*=o,n[1]*=r,n[5]*=i,n[9]*=o,n[2]*=r,n[6]*=i,n[10]*=o,n[3]*=r,n[7]*=i,n[11]*=o,this}getMaxScaleOnAxis(){let e=this.elements,n=e[0]*e[0]+e[1]*e[1]+e[2]*e[2],r=e[4]*e[4]+e[5]*e[5]+e[6]*e[6],i=e[8]*e[8]+e[9]*e[9]+e[10]*e[10];return Math.sqrt(Math.max(n,r,i))}makeTranslation(e,n,r){return e.isVector3?this.set(1,0,0,e.x,0,1,0,e.y,0,0,1,e.z,0,0,0,1):this.set(1,0,0,e,0,1,0,n,0,0,1,r,0,0,0,1),this}makeRotationX(e){let n=Math.cos(e),r=Math.sin(e);return this.set(1,0,0,0,0,n,-r,0,0,r,n,0,0,0,0,1),this}makeRotationY(e){let n=Math.cos(e),r=Math.sin(e);return this.set(n,0,r,0,0,1,0,0,-r,0,n,0,0,0,0,1),this}makeRotationZ(e){let n=Math.cos(e),r=Math.sin(e);return this.set(n,-r,0,0,r,n,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(e,n){let r=Math.cos(n),i=Math.sin(n),o=1-r,a=e.x,l=e.y,s=e.z,u=o*a,d=o*l;return this.set(u*a+r,u*l-i*s,u*s+i*l,0,u*l+i*s,d*l+r,d*s-i*a,0,u*s-i*l,d*s+i*a,o*s*s+r,0,0,0,0,1),this}makeScale(e,n,r){return this.set(e,0,0,0,0,n,0,0,0,0,r,0,0,0,0,1),this}makeShear(e,n,r,i,o,a){return this.set(1,r,o,0,e,1,a,0,n,i,1,0,0,0,0,1),this}compose(e,n,r){let i=this.elements,o=n._x,a=n._y,l=n._z,s=n._w,u=o+o,d=a+a,h=l+l,f=o*u,g=o*d,y=o*h,_=a*d,b=a*h,S=l*h,w=s*u,v=s*d,E=s*h,C=r.x,M=r.y,R=r.z;return i[0]=(1-(_+S))*C,i[1]=(g+E)*C,i[2]=(y-v)*C,i[3]=0,i[4]=(g-E)*M,i[5]=(1-(f+S))*M,i[6]=(b+w)*M,i[7]=0,i[8]=(y+v)*R,i[9]=(b-w)*R,i[10]=(1-(f+_))*R,i[11]=0,i[12]=e.x,i[13]=e.y,i[14]=e.z,i[15]=1,this}decompose(e,n,r){let i=this.elements;e.x=i[12],e.y=i[13],e.z=i[14];let o=this.determinant();if(o===0)return r.set(1,1,1),n.identity(),this;let a=gh.set(i[0],i[1],i[2]).length(),l=gh.set(i[4],i[5],i[6]).length(),s=gh.set(i[8],i[9],i[10]).length();o<0&&(a=-a),us.copy(this);let u=1/a,d=1/l,h=1/s;return us.elements[0]*=u,us.elements[1]*=u,us.elements[2]*=u,us.elements[4]*=d,us.elements[5]*=d,us.elements[6]*=d,us.elements[8]*=h,us.elements[9]*=h,us.elements[10]*=h,n.setFromRotationMatrix(us),r.x=a,r.y=l,r.z=s,this}makePerspective(e,n,r,i,o,a,l=Ii,s=!1){let u=this.elements,d=2*o/(n-e),h=2*o/(r-i),f=(n+e)/(n-e),g=(r+i)/(r-i),y,_;if(s)y=o/(a-o),_=a*o/(a-o);else if(l===Ii)y=-(a+o)/(a-o),_=-2*a*o/(a-o);else if(l===No)y=-a/(a-o),_=-a*o/(a-o);else throw new Error("THREE.Matrix4.makePerspective(): Invalid coordinate system: "+l);return u[0]=d,u[4]=0,u[8]=f,u[12]=0,u[1]=0,u[5]=h,u[9]=g,u[13]=0,u[2]=0,u[6]=0,u[10]=y,u[14]=_,u[3]=0,u[7]=0,u[11]=-1,u[15]=0,this}makeOrthographic(e,n,r,i,o,a,l=Ii,s=!1){let u=this.elements,d=2/(n-e),h=2/(r-i),f=-(n+e)/(n-e),g=-(r+i)/(r-i),y,_;if(s)y=1/(a-o),_=a/(a-o);else if(l===Ii)y=-2/(a-o),_=-(a+o)/(a-o);else if(l===No)y=-1/(a-o),_=-o/(a-o);else throw new Error("THREE.Matrix4.makeOrthographic(): Invalid coordinate system: "+l);return u[0]=d,u[4]=0,u[8]=0,u[12]=f,u[1]=0,u[5]=h,u[9]=0,u[13]=g,u[2]=0,u[6]=0,u[10]=y,u[14]=_,u[3]=0,u[7]=0,u[11]=0,u[15]=1,this}equals(e){let n=this.elements,r=e.elements;for(let i=0;i<16;i++)if(n[i]!==r[i])return!1;return!0}fromArray(e,n=0){for(let r=0;r<16;r++)this.elements[r]=e[r+n];return this}toArray(e=[],n=0){let r=this.elements;return e[n]=r[0],e[n+1]=r[1],e[n+2]=r[2],e[n+3]=r[3],e[n+4]=r[4],e[n+5]=r[5],e[n+6]=r[6],e[n+7]=r[7],e[n+8]=r[8],e[n+9]=r[9],e[n+10]=r[10],e[n+11]=r[11],e[n+12]=r[12],e[n+13]=r[13],e[n+14]=r[14],e[n+15]=r[15],e}},gh=new xe,us=new In,One=new xe(0,0,0),Une=new xe(1,1,1),Eu=new xe,hS=new xe,Ro=new xe,RD=new In,AD=new hs,ms=class t{constructor(e=0,n=0,r=0,i=t.DEFAULT_ORDER){this.isEuler=!0,this._x=e,this._y=n,this._z=r,this._order=i}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get order(){return this._order}set order(e){this._order=e,this._onChangeCallback()}set(e,n,r,i=this._order){return this._x=e,this._y=n,this._z=r,this._order=i,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(e){return this._x=e._x,this._y=e._y,this._z=e._z,this._order=e._order,this._onChangeCallback(),this}setFromRotationMatrix(e,n=this._order,r=!0){let i=e.elements,o=i[0],a=i[4],l=i[8],s=i[1],u=i[5],d=i[9],h=i[2],f=i[6],g=i[10];switch(n){case"XYZ":this._y=Math.asin(jn(l,-1,1)),Math.abs(l)<.9999999?(this._x=Math.atan2(-d,g),this._z=Math.atan2(-a,o)):(this._x=Math.atan2(f,u),this._z=0);break;case"YXZ":this._x=Math.asin(-jn(d,-1,1)),Math.abs(d)<.9999999?(this._y=Math.atan2(l,g),this._z=Math.atan2(s,u)):(this._y=Math.atan2(-h,o),this._z=0);break;case"ZXY":this._x=Math.asin(jn(f,-1,1)),Math.abs(f)<.9999999?(this._y=Math.atan2(-h,g),this._z=Math.atan2(-a,u)):(this._y=0,this._z=Math.atan2(s,o));break;case"ZYX":this._y=Math.asin(-jn(h,-1,1)),Math.abs(h)<.9999999?(this._x=Math.atan2(f,g),this._z=Math.atan2(s,o)):(this._x=0,this._z=Math.atan2(-a,u));break;case"YZX":this._z=Math.asin(jn(s,-1,1)),Math.abs(s)<.9999999?(this._x=Math.atan2(-d,u),this._y=Math.atan2(-h,o)):(this._x=0,this._y=Math.atan2(l,g));break;case"XZY":this._z=Math.asin(-jn(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(f,u),this._y=Math.atan2(l,o)):(this._x=Math.atan2(-d,g),this._y=0);break;default:lt("Euler: .setFromRotationMatrix() encountered an unknown order: "+n)}return this._order=n,r===!0&&this._onChangeCallback(),this}setFromQuaternion(e,n,r){return RD.makeRotationFromQuaternion(e),this.setFromRotationMatrix(RD,n,r)}setFromVector3(e,n=this._order){return this.set(e.x,e.y,e.z,n)}reorder(e){return AD.setFromEuler(this),this.setFromQuaternion(AD,e)}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._order===this._order}fromArray(e){return this._x=e[0],this._y=e[1],this._z=e[2],e[3]!==void 0&&(this._order=e[3]),this._onChangeCallback(),this}toArray(e=[],n=0){return e[n]=this._x,e[n+1]=this._y,e[n+2]=this._z,e[n+3]=this._order,e}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}};ms.DEFAULT_ORDER="XYZ";Nh=class{constructor(){this.mask=1}set(e){this.mask=(1<<e|0)>>>0}enable(e){this.mask|=1<<e|0}enableAll(){this.mask=-1}toggle(e){this.mask^=1<<e|0}disable(e){this.mask&=~(1<<e|0)}disableAll(){this.mask=0}test(e){return(this.mask&e.mask)!==0}isEnabled(e){return(this.mask&(1<<e|0))!==0}},Dne=0,PD=new xe,yh=new hs,Da=new In,mS=new xe,Fm=new xe,Fne=new xe,Lne=new hs,ID=new xe(1,0,0),ND=new xe(0,1,0),OD=new xe(0,0,1),UD={type:"added"},kne={type:"removed"},vh={type:"childadded",child:null},MT={type:"childremoved",child:null},bi=class t extends io{constructor(){super(),this.isObject3D=!0,Object.defineProperty(this,"id",{value:Dne++}),this.uuid=Va(),this.name="",this.type="Object3D",this.parent=null,this.children=[],this.up=t.DEFAULT_UP.clone();let e=new xe,n=new ms,r=new hs,i=new xe(1,1,1);function o(){r.setFromEuler(n,!1)}function a(){n.setFromQuaternion(r,void 0,!1)}n._onChange(o),r._onChange(a),Object.defineProperties(this,{position:{configurable:!0,enumerable:!0,value:e},rotation:{configurable:!0,enumerable:!0,value:n},quaternion:{configurable:!0,enumerable:!0,value:r},scale:{configurable:!0,enumerable:!0,value:i},modelViewMatrix:{value:new In},normalMatrix:{value:new Cn}}),this.matrix=new In,this.matrixWorld=new In,this.matrixAutoUpdate=t.DEFAULT_MATRIX_AUTO_UPDATE,this.matrixWorldAutoUpdate=t.DEFAULT_MATRIX_WORLD_AUTO_UPDATE,this.matrixWorldNeedsUpdate=!1,this.layers=new Nh,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.animations=[],this.customDepthMaterial=void 0,this.customDistanceMaterial=void 0,this.static=!1,this.userData={},this.pivot=null}onBeforeShadow(){}onAfterShadow(){}onBeforeRender(){}onAfterRender(){}applyMatrix4(e){this.matrixAutoUpdate&&this.updateMatrix(),this.matrix.premultiply(e),this.matrix.decompose(this.position,this.quaternion,this.scale)}applyQuaternion(e){return this.quaternion.premultiply(e),this}setRotationFromAxisAngle(e,n){this.quaternion.setFromAxisAngle(e,n)}setRotationFromEuler(e){this.quaternion.setFromEuler(e,!0)}setRotationFromMatrix(e){this.quaternion.setFromRotationMatrix(e)}setRotationFromQuaternion(e){this.quaternion.copy(e)}rotateOnAxis(e,n){return yh.setFromAxisAngle(e,n),this.quaternion.multiply(yh),this}rotateOnWorldAxis(e,n){return yh.setFromAxisAngle(e,n),this.quaternion.premultiply(yh),this}rotateX(e){return this.rotateOnAxis(ID,e)}rotateY(e){return this.rotateOnAxis(ND,e)}rotateZ(e){return this.rotateOnAxis(OD,e)}translateOnAxis(e,n){return PD.copy(e).applyQuaternion(this.quaternion),this.position.add(PD.multiplyScalar(n)),this}translateX(e){return this.translateOnAxis(ID,e)}translateY(e){return this.translateOnAxis(ND,e)}translateZ(e){return this.translateOnAxis(OD,e)}localToWorld(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(this.matrixWorld)}worldToLocal(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(Da.copy(this.matrixWorld).invert())}lookAt(e,n,r){e.isVector3?mS.copy(e):mS.set(e,n,r);let i=this.parent;this.updateWorldMatrix(!0,!1),Fm.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?Da.lookAt(Fm,mS,this.up):Da.lookAt(mS,Fm,this.up),this.quaternion.setFromRotationMatrix(Da),i&&(Da.extractRotation(i.matrixWorld),yh.setFromRotationMatrix(Da),this.quaternion.premultiply(yh.invert()))}add(e){if(arguments.length>1){for(let n=0;n<arguments.length;n++)this.add(arguments[n]);return this}return e===this?(ot("Object3D.add: object can't be added as a child of itself.",e),this):(e&&e.isObject3D?(e.removeFromParent(),e.parent=this,this.children.push(e),e.dispatchEvent(UD),vh.child=e,this.dispatchEvent(vh),vh.child=null):ot("Object3D.add: object not an instance of THREE.Object3D.",e),this)}remove(e){if(arguments.length>1){for(let r=0;r<arguments.length;r++)this.remove(arguments[r]);return this}let n=this.children.indexOf(e);return n!==-1&&(e.parent=null,this.children.splice(n,1),e.dispatchEvent(kne),MT.child=e,this.dispatchEvent(MT),MT.child=null),this}removeFromParent(){let e=this.parent;return e!==null&&e.remove(this),this}clear(){return this.remove(...this.children)}attach(e){return this.updateWorldMatrix(!0,!1),Da.copy(this.matrixWorld).invert(),e.parent!==null&&(e.parent.updateWorldMatrix(!0,!1),Da.multiply(e.parent.matrixWorld)),e.applyMatrix4(Da),e.removeFromParent(),e.parent=this,this.children.push(e),e.updateWorldMatrix(!1,!0),e.dispatchEvent(UD),vh.child=e,this.dispatchEvent(vh),vh.child=null,this}getObjectById(e){return this.getObjectByProperty("id",e)}getObjectByName(e){return this.getObjectByProperty("name",e)}getObjectByProperty(e,n){if(this[e]===n)return this;for(let r=0,i=this.children.length;r<i;r++){let a=this.children[r].getObjectByProperty(e,n);if(a!==void 0)return a}}getObjectsByProperty(e,n,r=[]){this[e]===n&&r.push(this);let i=this.children;for(let o=0,a=i.length;o<a;o++)i[o].getObjectsByProperty(e,n,r);return r}getWorldPosition(e){return this.updateWorldMatrix(!0,!1),e.setFromMatrixPosition(this.matrixWorld)}getWorldQuaternion(e){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(Fm,e,Fne),e}getWorldScale(e){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(Fm,Lne,e),e}getWorldDirection(e){this.updateWorldMatrix(!0,!1);let n=this.matrixWorld.elements;return e.set(n[8],n[9],n[10]).normalize()}raycast(){}traverse(e){e(this);let n=this.children;for(let r=0,i=n.length;r<i;r++)n[r].traverse(e)}traverseVisible(e){if(this.visible===!1)return;e(this);let n=this.children;for(let r=0,i=n.length;r<i;r++)n[r].traverseVisible(e)}traverseAncestors(e){let n=this.parent;n!==null&&(e(n),n.traverseAncestors(e))}updateMatrix(){this.matrix.compose(this.position,this.quaternion,this.scale);let e=this.pivot;if(e!==null){let n=e.x,r=e.y,i=e.z,o=this.matrix.elements;o[12]+=n-o[0]*n-o[4]*r-o[8]*i,o[13]+=r-o[1]*n-o[5]*r-o[9]*i,o[14]+=i-o[2]*n-o[6]*r-o[10]*i}this.matrixWorldNeedsUpdate=!0}updateMatrixWorld(e){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||e)&&(this.matrixWorldAutoUpdate===!0&&(this.parent===null?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix)),this.matrixWorldNeedsUpdate=!1,e=!0);let n=this.children;for(let r=0,i=n.length;r<i;r++)n[r].updateMatrixWorld(e)}updateWorldMatrix(e,n){let r=this.parent;if(e===!0&&r!==null&&r.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),this.matrixWorldAutoUpdate===!0&&(this.parent===null?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix)),n===!0){let i=this.children;for(let o=0,a=i.length;o<a;o++)i[o].updateWorldMatrix(!1,!0)}}toJSON(e){let n=e===void 0||typeof e=="string",r={};n&&(e={geometries:{},materials:{},textures:{},images:{},shapes:{},skeletons:{},animations:{},nodes:{}},r.metadata={version:4.7,type:"Object",generator:"Object3D.toJSON"});let i={};i.uuid=this.uuid,i.type=this.type,this.name!==""&&(i.name=this.name),this.castShadow===!0&&(i.castShadow=!0),this.receiveShadow===!0&&(i.receiveShadow=!0),this.visible===!1&&(i.visible=!1),this.frustumCulled===!1&&(i.frustumCulled=!1),this.renderOrder!==0&&(i.renderOrder=this.renderOrder),this.static!==!1&&(i.static=this.static),Object.keys(this.userData).length>0&&(i.userData=this.userData),i.layers=this.layers.mask,i.matrix=this.matrix.toArray(),i.up=this.up.toArray(),this.pivot!==null&&(i.pivot=this.pivot.toArray()),this.matrixAutoUpdate===!1&&(i.matrixAutoUpdate=!1),this.morphTargetDictionary!==void 0&&(i.morphTargetDictionary=Object.assign({},this.morphTargetDictionary)),this.morphTargetInfluences!==void 0&&(i.morphTargetInfluences=this.morphTargetInfluences.slice()),this.isInstancedMesh&&(i.type="InstancedMesh",i.count=this.count,i.instanceMatrix=this.instanceMatrix.toJSON(),this.instanceColor!==null&&(i.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(i.type="BatchedMesh",i.perObjectFrustumCulled=this.perObjectFrustumCulled,i.sortObjects=this.sortObjects,i.drawRanges=this._drawRanges,i.reservedRanges=this._reservedRanges,i.geometryInfo=this._geometryInfo.map(l=>({...l,boundingBox:l.boundingBox?l.boundingBox.toJSON():void 0,boundingSphere:l.boundingSphere?l.boundingSphere.toJSON():void 0})),i.instanceInfo=this._instanceInfo.map(l=>({...l})),i.availableInstanceIds=this._availableInstanceIds.slice(),i.availableGeometryIds=this._availableGeometryIds.slice(),i.nextIndexStart=this._nextIndexStart,i.nextVertexStart=this._nextVertexStart,i.geometryCount=this._geometryCount,i.maxInstanceCount=this._maxInstanceCount,i.maxVertexCount=this._maxVertexCount,i.maxIndexCount=this._maxIndexCount,i.geometryInitialized=this._geometryInitialized,i.matricesTexture=this._matricesTexture.toJSON(e),i.indirectTexture=this._indirectTexture.toJSON(e),this._colorsTexture!==null&&(i.colorsTexture=this._colorsTexture.toJSON(e)),this.boundingSphere!==null&&(i.boundingSphere=this.boundingSphere.toJSON()),this.boundingBox!==null&&(i.boundingBox=this.boundingBox.toJSON()));function o(l,s){return l[s.uuid]===void 0&&(l[s.uuid]=s.toJSON(e)),s.uuid}if(this.isScene)this.background&&(this.background.isColor?i.background=this.background.toJSON():this.background.isTexture&&(i.background=this.background.toJSON(e).uuid)),this.environment&&this.environment.isTexture&&this.environment.isRenderTargetTexture!==!0&&(i.environment=this.environment.toJSON(e).uuid);else if(this.isMesh||this.isLine||this.isPoints){i.geometry=o(e.geometries,this.geometry);let l=this.geometry.parameters;if(l!==void 0&&l.shapes!==void 0){let s=l.shapes;if(Array.isArray(s))for(let u=0,d=s.length;u<d;u++){let h=s[u];o(e.shapes,h)}else o(e.shapes,s)}}if(this.isSkinnedMesh&&(i.bindMode=this.bindMode,i.bindMatrix=this.bindMatrix.toArray(),this.skeleton!==void 0&&(o(e.skeletons,this.skeleton),i.skeleton=this.skeleton.uuid)),this.material!==void 0)if(Array.isArray(this.material)){let l=[];for(let s=0,u=this.material.length;s<u;s++)l.push(o(e.materials,this.material[s]));i.material=l}else i.material=o(e.materials,this.material);if(this.children.length>0){i.children=[];for(let l=0;l<this.children.length;l++)i.children.push(this.children[l].toJSON(e).object)}if(this.animations.length>0){i.animations=[];for(let l=0;l<this.animations.length;l++){let s=this.animations[l];i.animations.push(o(e.animations,s))}}if(n){let l=a(e.geometries),s=a(e.materials),u=a(e.textures),d=a(e.images),h=a(e.shapes),f=a(e.skeletons),g=a(e.animations),y=a(e.nodes);l.length>0&&(r.geometries=l),s.length>0&&(r.materials=s),u.length>0&&(r.textures=u),d.length>0&&(r.images=d),h.length>0&&(r.shapes=h),f.length>0&&(r.skeletons=f),g.length>0&&(r.animations=g),y.length>0&&(r.nodes=y)}return r.object=i,r;function a(l){let s=[];for(let u in l){let d=l[u];delete d.metadata,s.push(d)}return s}}clone(e){return new this.constructor().copy(this,e)}copy(e,n=!0){if(this.name=e.name,this.up.copy(e.up),this.position.copy(e.position),this.rotation.order=e.rotation.order,this.quaternion.copy(e.quaternion),this.scale.copy(e.scale),this.pivot=e.pivot!==null?e.pivot.clone():null,this.matrix.copy(e.matrix),this.matrixWorld.copy(e.matrixWorld),this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrixWorldAutoUpdate=e.matrixWorldAutoUpdate,this.matrixWorldNeedsUpdate=e.matrixWorldNeedsUpdate,this.layers.mask=e.layers.mask,this.visible=e.visible,this.castShadow=e.castShadow,this.receiveShadow=e.receiveShadow,this.frustumCulled=e.frustumCulled,this.renderOrder=e.renderOrder,this.static=e.static,this.animations=e.animations.slice(),this.userData=JSON.parse(JSON.stringify(e.userData)),n===!0)for(let r=0;r<e.children.length;r++){let i=e.children[r];this.add(i.clone())}return this}};bi.DEFAULT_UP=new xe(0,1,0);bi.DEFAULT_MATRIX_AUTO_UPDATE=!0;bi.DEFAULT_MATRIX_WORLD_AUTO_UPDATE=!0;sf=class extends bi{constructor(){super(),this.isGroup=!0,this.type="Group"}},Bne={type:"move"},Bu=class{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return this._hand===null&&(this._hand=new sf,this._hand.matrixAutoUpdate=!1,this._hand.visible=!1,this._hand.joints={},this._hand.inputState={pinching:!1}),this._hand}getTargetRaySpace(){return this._targetRay===null&&(this._targetRay=new sf,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new xe,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new xe),this._targetRay}getGripSpace(){return this._grip===null&&(this._grip=new sf,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new xe,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new xe,this._grip.eventsEnabled=!1),this._grip}dispatchEvent(e){return this._targetRay!==null&&this._targetRay.dispatchEvent(e),this._grip!==null&&this._grip.dispatchEvent(e),this._hand!==null&&this._hand.dispatchEvent(e),this}connect(e){if(e&&e.hand){let n=this._hand;if(n)for(let r of e.hand.values())this._getHandJoint(n,r)}return this.dispatchEvent({type:"connected",data:e}),this}disconnect(e){return this.dispatchEvent({type:"disconnected",data:e}),this._targetRay!==null&&(this._targetRay.visible=!1),this._grip!==null&&(this._grip.visible=!1),this._hand!==null&&(this._hand.visible=!1),this}update(e,n,r){let i=null,o=null,a=null,l=this._targetRay,s=this._grip,u=this._hand;if(e&&n.session.visibilityState!=="visible-blurred"){if(u&&e.hand){a=!0;for(let _ of e.hand.values()){let b=n.getJointPose(_,r),S=this._getHandJoint(u,_);b!==null&&(S.matrix.fromArray(b.transform.matrix),S.matrix.decompose(S.position,S.rotation,S.scale),S.matrixWorldNeedsUpdate=!0,S.jointRadius=b.radius),S.visible=b!==null}let d=u.joints["index-finger-tip"],h=u.joints["thumb-tip"],f=d.position.distanceTo(h.position),g=.02,y=.005;u.inputState.pinching&&f>g+y?(u.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:e.handedness,target:this})):!u.inputState.pinching&&f<=g-y&&(u.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:e.handedness,target:this}))}else s!==null&&e.gripSpace&&(o=n.getPose(e.gripSpace,r),o!==null&&(s.matrix.fromArray(o.transform.matrix),s.matrix.decompose(s.position,s.rotation,s.scale),s.matrixWorldNeedsUpdate=!0,o.linearVelocity?(s.hasLinearVelocity=!0,s.linearVelocity.copy(o.linearVelocity)):s.hasLinearVelocity=!1,o.angularVelocity?(s.hasAngularVelocity=!0,s.angularVelocity.copy(o.angularVelocity)):s.hasAngularVelocity=!1,s.eventsEnabled&&s.dispatchEvent({type:"gripUpdated",data:e,target:this})));l!==null&&(i=n.getPose(e.targetRaySpace,r),i===null&&o!==null&&(i=o),i!==null&&(l.matrix.fromArray(i.transform.matrix),l.matrix.decompose(l.position,l.rotation,l.scale),l.matrixWorldNeedsUpdate=!0,i.linearVelocity?(l.hasLinearVelocity=!0,l.linearVelocity.copy(i.linearVelocity)):l.hasLinearVelocity=!1,i.angularVelocity?(l.hasAngularVelocity=!0,l.angularVelocity.copy(i.angularVelocity)):l.hasAngularVelocity=!1,this.dispatchEvent(Bne)))}return l!==null&&(l.visible=i!==null),s!==null&&(s.visible=o!==null),u!==null&&(u.visible=a!==null),this}_getHandJoint(e,n){if(e.joints[n.jointName]===void 0){let r=new sf;r.matrixAutoUpdate=!1,r.visible=!1,e.joints[n.jointName]=r,e.add(r)}return e.joints[n.jointName]}},dF={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},Ru={h:0,s:0,l:0},pS={h:0,s:0,l:0};un=class{constructor(e,n,r){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(e,n,r)}set(e,n,r){if(n===void 0&&r===void 0){let i=e;i&&i.isColor?this.copy(i):typeof i=="number"?this.setHex(i):typeof i=="string"&&this.setStyle(i)}else this.setRGB(e,n,r);return this}setScalar(e){return this.r=e,this.g=e,this.b=e,this}setHex(e,n=lr){return e=Math.floor(e),this.r=(e>>16&255)/255,this.g=(e>>8&255)/255,this.b=(e&255)/255,hn.colorSpaceToWorking(this,n),this}setRGB(e,n,r,i=hn.workingColorSpace){return this.r=e,this.g=n,this.b=r,hn.colorSpaceToWorking(this,i),this}setHSL(e,n,r,i=hn.workingColorSpace){if(e=rC(e,1),n=jn(n,0,1),r=jn(r,0,1),n===0)this.r=this.g=this.b=r;else{let o=r<=.5?r*(1+n):r+n-r*n,a=2*r-o;this.r=TT(a,o,e+1/3),this.g=TT(a,o,e),this.b=TT(a,o,e-1/3)}return hn.colorSpaceToWorking(this,i),this}setStyle(e,n=lr){function r(o){o!==void 0&&parseFloat(o)<1&&lt("Color: Alpha component of "+e+" will be ignored.")}let i;if(i=/^(\w+)\(([^\)]*)\)/.exec(e)){let o,a=i[1],l=i[2];switch(a){case"rgb":case"rgba":if(o=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(l))return r(o[4]),this.setRGB(Math.min(255,parseInt(o[1],10))/255,Math.min(255,parseInt(o[2],10))/255,Math.min(255,parseInt(o[3],10))/255,n);if(o=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(l))return r(o[4]),this.setRGB(Math.min(100,parseInt(o[1],10))/100,Math.min(100,parseInt(o[2],10))/100,Math.min(100,parseInt(o[3],10))/100,n);break;case"hsl":case"hsla":if(o=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(l))return r(o[4]),this.setHSL(parseFloat(o[1])/360,parseFloat(o[2])/100,parseFloat(o[3])/100,n);break;default:lt("Color: Unknown color model "+e)}}else if(i=/^\#([A-Fa-f\d]+)$/.exec(e)){let o=i[1],a=o.length;if(a===3)return this.setRGB(parseInt(o.charAt(0),16)/15,parseInt(o.charAt(1),16)/15,parseInt(o.charAt(2),16)/15,n);if(a===6)return this.setHex(parseInt(o,16),n);lt("Color: Invalid hex color "+e)}else if(e&&e.length>0)return this.setColorName(e,n);return this}setColorName(e,n=lr){let r=dF[e.toLowerCase()];return r!==void 0?this.setHex(r,n):lt("Color: Unknown color "+e),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(e){return this.r=e.r,this.g=e.g,this.b=e.b,this}copySRGBToLinear(e){return this.r=Ga(e.r),this.g=Ga(e.g),this.b=Ga(e.b),this}copyLinearToSRGB(e){return this.r=Rh(e.r),this.g=Rh(e.g),this.b=Rh(e.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(e=lr){return hn.workingToColorSpace(Gi.copy(this),e),Math.round(jn(Gi.r*255,0,255))*65536+Math.round(jn(Gi.g*255,0,255))*256+Math.round(jn(Gi.b*255,0,255))}getHexString(e=lr){return("000000"+this.getHex(e).toString(16)).slice(-6)}getHSL(e,n=hn.workingColorSpace){hn.workingToColorSpace(Gi.copy(this),n);let r=Gi.r,i=Gi.g,o=Gi.b,a=Math.max(r,i,o),l=Math.min(r,i,o),s,u,d=(l+a)/2;if(l===a)s=0,u=0;else{let h=a-l;switch(u=d<=.5?h/(a+l):h/(2-a-l),a){case r:s=(i-o)/h+(i<o?6:0);break;case i:s=(o-r)/h+2;break;case o:s=(r-i)/h+4;break}s/=6}return e.h=s,e.s=u,e.l=d,e}getRGB(e,n=hn.workingColorSpace){return hn.workingToColorSpace(Gi.copy(this),n),e.r=Gi.r,e.g=Gi.g,e.b=Gi.b,e}getStyle(e=lr){hn.workingToColorSpace(Gi.copy(this),e);let n=Gi.r,r=Gi.g,i=Gi.b;return e!==lr?`color(${e} ${n.toFixed(3)} ${r.toFixed(3)} ${i.toFixed(3)})`:`rgb(${Math.round(n*255)},${Math.round(r*255)},${Math.round(i*255)})`}offsetHSL(e,n,r){return this.getHSL(Ru),this.setHSL(Ru.h+e,Ru.s+n,Ru.l+r)}add(e){return this.r+=e.r,this.g+=e.g,this.b+=e.b,this}addColors(e,n){return this.r=e.r+n.r,this.g=e.g+n.g,this.b=e.b+n.b,this}addScalar(e){return this.r+=e,this.g+=e,this.b+=e,this}sub(e){return this.r=Math.max(0,this.r-e.r),this.g=Math.max(0,this.g-e.g),this.b=Math.max(0,this.b-e.b),this}multiply(e){return this.r*=e.r,this.g*=e.g,this.b*=e.b,this}multiplyScalar(e){return this.r*=e,this.g*=e,this.b*=e,this}lerp(e,n){return this.r+=(e.r-this.r)*n,this.g+=(e.g-this.g)*n,this.b+=(e.b-this.b)*n,this}lerpColors(e,n,r){return this.r=e.r+(n.r-e.r)*r,this.g=e.g+(n.g-e.g)*r,this.b=e.b+(n.b-e.b)*r,this}lerpHSL(e,n){this.getHSL(Ru),e.getHSL(pS);let r=Vm(Ru.h,pS.h,n),i=Vm(Ru.s,pS.s,n),o=Vm(Ru.l,pS.l,n);return this.setHSL(r,i,o),this}setFromVector3(e){return this.r=e.x,this.g=e.y,this.b=e.z,this}applyMatrix3(e){let n=this.r,r=this.g,i=this.b,o=e.elements;return this.r=o[0]*n+o[3]*r+o[6]*i,this.g=o[1]*n+o[4]*r+o[7]*i,this.b=o[2]*n+o[5]*r+o[8]*i,this}equals(e){return e.r===this.r&&e.g===this.g&&e.b===this.b}fromArray(e,n=0){return this.r=e[n],this.g=e[n+1],this.b=e[n+2],this}toArray(e=[],n=0){return e[n]=this.r,e[n+1]=this.g,e[n+2]=this.b,e}fromBufferAttribute(e,n){return this.r=e.getX(n),this.g=e.getY(n),this.b=e.getZ(n),this}toJSON(){return this.getHex()}*[Symbol.iterator](){yield this.r,yield this.g,yield this.b}},Gi=new un;un.NAMES=dF;yf=class extends bi{constructor(){super(),this.isScene=!0,this.type="Scene",this.background=null,this.environment=null,this.fog=null,this.backgroundBlurriness=0,this.backgroundIntensity=1,this.backgroundRotation=new ms,this.environmentIntensity=1,this.environmentRotation=new ms,this.overrideMaterial=null,typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}copy(e,n){return super.copy(e,n),e.background!==null&&(this.background=e.background.clone()),e.environment!==null&&(this.environment=e.environment.clone()),e.fog!==null&&(this.fog=e.fog.clone()),this.backgroundBlurriness=e.backgroundBlurriness,this.backgroundIntensity=e.backgroundIntensity,this.backgroundRotation.copy(e.backgroundRotation),this.environmentIntensity=e.environmentIntensity,this.environmentRotation.copy(e.environmentRotation),e.overrideMaterial!==null&&(this.overrideMaterial=e.overrideMaterial.clone()),this.matrixAutoUpdate=e.matrixAutoUpdate,this}toJSON(e){let n=super.toJSON(e);return this.fog!==null&&(n.object.fog=this.fog.toJSON()),this.backgroundBlurriness>0&&(n.object.backgroundBlurriness=this.backgroundBlurriness),this.backgroundIntensity!==1&&(n.object.backgroundIntensity=this.backgroundIntensity),n.object.backgroundRotation=this.backgroundRotation.toArray(),this.environmentIntensity!==1&&(n.object.environmentIntensity=this.environmentIntensity),n.object.environmentRotation=this.environmentRotation.toArray(),n}},ds=new xe,Fa=new xe,CT=new xe,La=new xe,xh=new xe,bh=new xe,DD=new xe,ET=new xe,RT=new xe,AT=new xe,PT=new wn,IT=new wn,NT=new wn,Uu=class t{constructor(e=new xe,n=new xe,r=new xe){this.a=e,this.b=n,this.c=r}static getNormal(e,n,r,i){i.subVectors(r,n),ds.subVectors(e,n),i.cross(ds);let o=i.lengthSq();return o>0?i.multiplyScalar(1/Math.sqrt(o)):i.set(0,0,0)}static getBarycoord(e,n,r,i,o){ds.subVectors(i,n),Fa.subVectors(r,n),CT.subVectors(e,n);let a=ds.dot(ds),l=ds.dot(Fa),s=ds.dot(CT),u=Fa.dot(Fa),d=Fa.dot(CT),h=a*u-l*l;if(h===0)return o.set(0,0,0),null;let f=1/h,g=(u*s-l*d)*f,y=(a*d-l*s)*f;return o.set(1-g-y,y,g)}static containsPoint(e,n,r,i){return this.getBarycoord(e,n,r,i,La)===null?!1:La.x>=0&&La.y>=0&&La.x+La.y<=1}static getInterpolation(e,n,r,i,o,a,l,s){return this.getBarycoord(e,n,r,i,La)===null?(s.x=0,s.y=0,"z"in s&&(s.z=0),"w"in s&&(s.w=0),null):(s.setScalar(0),s.addScaledVector(o,La.x),s.addScaledVector(a,La.y),s.addScaledVector(l,La.z),s)}static getInterpolatedAttribute(e,n,r,i,o,a){return PT.setScalar(0),IT.setScalar(0),NT.setScalar(0),PT.fromBufferAttribute(e,n),IT.fromBufferAttribute(e,r),NT.fromBufferAttribute(e,i),a.setScalar(0),a.addScaledVector(PT,o.x),a.addScaledVector(IT,o.y),a.addScaledVector(NT,o.z),a}static isFrontFacing(e,n,r,i){return ds.subVectors(r,n),Fa.subVectors(e,n),ds.cross(Fa).dot(i)<0}set(e,n,r){return this.a.copy(e),this.b.copy(n),this.c.copy(r),this}setFromPointsAndIndices(e,n,r,i){return this.a.copy(e[n]),this.b.copy(e[r]),this.c.copy(e[i]),this}setFromAttributeAndIndices(e,n,r,i){return this.a.fromBufferAttribute(e,n),this.b.fromBufferAttribute(e,r),this.c.fromBufferAttribute(e,i),this}clone(){return new this.constructor().copy(this)}copy(e){return this.a.copy(e.a),this.b.copy(e.b),this.c.copy(e.c),this}getArea(){return ds.subVectors(this.c,this.b),Fa.subVectors(this.a,this.b),ds.cross(Fa).length()*.5}getMidpoint(e){return e.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(e){return t.getNormal(this.a,this.b,this.c,e)}getPlane(e){return e.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(e,n){return t.getBarycoord(e,this.a,this.b,this.c,n)}getInterpolation(e,n,r,i,o){return t.getInterpolation(e,this.a,this.b,this.c,n,r,i,o)}containsPoint(e){return t.containsPoint(e,this.a,this.b,this.c)}isFrontFacing(e){return t.isFrontFacing(this.a,this.b,this.c,e)}intersectsBox(e){return e.intersectsTriangle(this)}closestPointToPoint(e,n){let r=this.a,i=this.b,o=this.c,a,l;xh.subVectors(i,r),bh.subVectors(o,r),ET.subVectors(e,r);let s=xh.dot(ET),u=bh.dot(ET);if(s<=0&&u<=0)return n.copy(r);RT.subVectors(e,i);let d=xh.dot(RT),h=bh.dot(RT);if(d>=0&&h<=d)return n.copy(i);let f=s*h-d*u;if(f<=0&&s>=0&&d<=0)return a=s/(s-d),n.copy(r).addScaledVector(xh,a);AT.subVectors(e,o);let g=xh.dot(AT),y=bh.dot(AT);if(y>=0&&g<=y)return n.copy(o);let _=g*u-s*y;if(_<=0&&u>=0&&y<=0)return l=u/(u-y),n.copy(r).addScaledVector(bh,l);let b=d*y-g*h;if(b<=0&&h-d>=0&&g-y>=0)return DD.subVectors(o,i),l=(h-d)/(h-d+(g-y)),n.copy(i).addScaledVector(DD,l);let S=1/(b+_+f);return a=_*S,l=f*S,n.copy(r).addScaledVector(xh,a).addScaledVector(bh,l)}equals(e){return e.a.equals(this.a)&&e.b.equals(this.b)&&e.c.equals(this.c)}},zu=class{constructor(e=new xe(1/0,1/0,1/0),n=new xe(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=e,this.max=n}set(e,n){return this.min.copy(e),this.max.copy(n),this}setFromArray(e){this.makeEmpty();for(let n=0,r=e.length;n<r;n+=3)this.expandByPoint(fs.fromArray(e,n));return this}setFromBufferAttribute(e){this.makeEmpty();for(let n=0,r=e.count;n<r;n++)this.expandByPoint(fs.fromBufferAttribute(e,n));return this}setFromPoints(e){this.makeEmpty();for(let n=0,r=e.length;n<r;n++)this.expandByPoint(e[n]);return this}setFromCenterAndSize(e,n){let r=fs.copy(n).multiplyScalar(.5);return this.min.copy(e).sub(r),this.max.copy(e).add(r),this}setFromObject(e,n=!1){return this.makeEmpty(),this.expandByObject(e,n)}clone(){return new this.constructor().copy(this)}copy(e){return this.min.copy(e.min),this.max.copy(e.max),this}makeEmpty(){return this.min.x=this.min.y=this.min.z=1/0,this.max.x=this.max.y=this.max.z=-1/0,this}isEmpty(){return this.max.x<this.min.x||this.max.y<this.min.y||this.max.z<this.min.z}getCenter(e){return this.isEmpty()?e.set(0,0,0):e.addVectors(this.min,this.max).multiplyScalar(.5)}getSize(e){return this.isEmpty()?e.set(0,0,0):e.subVectors(this.max,this.min)}expandByPoint(e){return this.min.min(e),this.max.max(e),this}expandByVector(e){return this.min.sub(e),this.max.add(e),this}expandByScalar(e){return this.min.addScalar(-e),this.max.addScalar(e),this}expandByObject(e,n=!1){e.updateWorldMatrix(!1,!1);let r=e.geometry;if(r!==void 0){let o=r.getAttribute("position");if(n===!0&&o!==void 0&&e.isInstancedMesh!==!0)for(let a=0,l=o.count;a<l;a++)e.isMesh===!0?e.getVertexPosition(a,fs):fs.fromBufferAttribute(o,a),fs.applyMatrix4(e.matrixWorld),this.expandByPoint(fs);else e.boundingBox!==void 0?(e.boundingBox===null&&e.computeBoundingBox(),gS.copy(e.boundingBox)):(r.boundingBox===null&&r.computeBoundingBox(),gS.copy(r.boundingBox)),gS.applyMatrix4(e.matrixWorld),this.union(gS)}let i=e.children;for(let o=0,a=i.length;o<a;o++)this.expandByObject(i[o],n);return this}containsPoint(e){return e.x>=this.min.x&&e.x<=this.max.x&&e.y>=this.min.y&&e.y<=this.max.y&&e.z>=this.min.z&&e.z<=this.max.z}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y&&this.min.z<=e.min.z&&e.max.z<=this.max.z}getParameter(e,n){return n.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y),(e.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(e){return e.max.x>=this.min.x&&e.min.x<=this.max.x&&e.max.y>=this.min.y&&e.min.y<=this.max.y&&e.max.z>=this.min.z&&e.min.z<=this.max.z}intersectsSphere(e){return this.clampPoint(e.center,fs),fs.distanceToSquared(e.center)<=e.radius*e.radius}intersectsPlane(e){let n,r;return e.normal.x>0?(n=e.normal.x*this.min.x,r=e.normal.x*this.max.x):(n=e.normal.x*this.max.x,r=e.normal.x*this.min.x),e.normal.y>0?(n+=e.normal.y*this.min.y,r+=e.normal.y*this.max.y):(n+=e.normal.y*this.max.y,r+=e.normal.y*this.min.y),e.normal.z>0?(n+=e.normal.z*this.min.z,r+=e.normal.z*this.max.z):(n+=e.normal.z*this.max.z,r+=e.normal.z*this.min.z),n<=-e.constant&&r>=-e.constant}intersectsTriangle(e){if(this.isEmpty())return!1;this.getCenter(Lm),yS.subVectors(this.max,Lm),_h.subVectors(e.a,Lm),Sh.subVectors(e.b,Lm),wh.subVectors(e.c,Lm),Au.subVectors(Sh,_h),Pu.subVectors(wh,Sh),tf.subVectors(_h,wh);let n=[0,-Au.z,Au.y,0,-Pu.z,Pu.y,0,-tf.z,tf.y,Au.z,0,-Au.x,Pu.z,0,-Pu.x,tf.z,0,-tf.x,-Au.y,Au.x,0,-Pu.y,Pu.x,0,-tf.y,tf.x,0];return!OT(n,_h,Sh,wh,yS)||(n=[1,0,0,0,1,0,0,0,1],!OT(n,_h,Sh,wh,yS))?!1:(vS.crossVectors(Au,Pu),n=[vS.x,vS.y,vS.z],OT(n,_h,Sh,wh,yS))}clampPoint(e,n){return n.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,fs).distanceTo(e)}getBoundingSphere(e){return this.isEmpty()?e.makeEmpty():(this.getCenter(e.center),e.radius=this.getSize(fs).length()*.5),e}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}applyMatrix4(e){return this.isEmpty()?this:(ka[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),ka[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),ka[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),ka[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),ka[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),ka[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),ka[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),ka[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(ka),this)}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}toJSON(){return{min:this.min.toArray(),max:this.max.toArray()}}fromJSON(e){return this.min.fromArray(e.min),this.max.fromArray(e.max),this}},ka=[new xe,new xe,new xe,new xe,new xe,new xe,new xe,new xe],fs=new xe,gS=new zu,_h=new xe,Sh=new xe,wh=new xe,Au=new xe,Pu=new xe,tf=new xe,Lm=new xe,yS=new xe,vS=new xe,nf=new xe;za=zne();li=new xe,bS=new mn,Vne=0,Jr=class extends io{constructor(e,n,r=!1){if(super(),Array.isArray(e))throw new TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.isBufferAttribute=!0,Object.defineProperty(this,"id",{value:Vne++}),this.name="",this.array=e,this.itemSize=n,this.count=e!==void 0?e.length/n:0,this.normalized=r,this.usage=mf,this.updateRanges=[],this.gpuType=on,this.version=0}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,n){this.updateRanges.push({start:e,count:n})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.name=e.name,this.array=new e.array.constructor(e.array),this.itemSize=e.itemSize,this.count=e.count,this.normalized=e.normalized,this.usage=e.usage,this.gpuType=e.gpuType,this}copyAt(e,n,r){e*=this.itemSize,r*=n.itemSize;for(let i=0,o=this.itemSize;i<o;i++)this.array[e+i]=n.array[r+i];return this}copyArray(e){return this.array.set(e),this}applyMatrix3(e){if(this.itemSize===2)for(let n=0,r=this.count;n<r;n++)bS.fromBufferAttribute(this,n),bS.applyMatrix3(e),this.setXY(n,bS.x,bS.y);else if(this.itemSize===3)for(let n=0,r=this.count;n<r;n++)li.fromBufferAttribute(this,n),li.applyMatrix3(e),this.setXYZ(n,li.x,li.y,li.z);return this}applyMatrix4(e){for(let n=0,r=this.count;n<r;n++)li.fromBufferAttribute(this,n),li.applyMatrix4(e),this.setXYZ(n,li.x,li.y,li.z);return this}applyNormalMatrix(e){for(let n=0,r=this.count;n<r;n++)li.fromBufferAttribute(this,n),li.applyNormalMatrix(e),this.setXYZ(n,li.x,li.y,li.z);return this}transformDirection(e){for(let n=0,r=this.count;n<r;n++)li.fromBufferAttribute(this,n),li.transformDirection(e),this.setXYZ(n,li.x,li.y,li.z);return this}set(e,n=0){return this.array.set(e,n),this}getComponent(e,n){let r=this.array[e*this.itemSize+n];return this.normalized&&(r=ro(r,this.array)),r}setComponent(e,n,r){return this.normalized&&(r=Un(r,this.array)),this.array[e*this.itemSize+n]=r,this}getX(e){let n=this.array[e*this.itemSize];return this.normalized&&(n=ro(n,this.array)),n}setX(e,n){return this.normalized&&(n=Un(n,this.array)),this.array[e*this.itemSize]=n,this}getY(e){let n=this.array[e*this.itemSize+1];return this.normalized&&(n=ro(n,this.array)),n}setY(e,n){return this.normalized&&(n=Un(n,this.array)),this.array[e*this.itemSize+1]=n,this}getZ(e){let n=this.array[e*this.itemSize+2];return this.normalized&&(n=ro(n,this.array)),n}setZ(e,n){return this.normalized&&(n=Un(n,this.array)),this.array[e*this.itemSize+2]=n,this}getW(e){let n=this.array[e*this.itemSize+3];return this.normalized&&(n=ro(n,this.array)),n}setW(e,n){return this.normalized&&(n=Un(n,this.array)),this.array[e*this.itemSize+3]=n,this}setXY(e,n,r){return e*=this.itemSize,this.normalized&&(n=Un(n,this.array),r=Un(r,this.array)),this.array[e+0]=n,this.array[e+1]=r,this}setXYZ(e,n,r,i){return e*=this.itemSize,this.normalized&&(n=Un(n,this.array),r=Un(r,this.array),i=Un(i,this.array)),this.array[e+0]=n,this.array[e+1]=r,this.array[e+2]=i,this}setXYZW(e,n,r,i,o){return e*=this.itemSize,this.normalized&&(n=Un(n,this.array),r=Un(r,this.array),i=Un(i,this.array),o=Un(o,this.array)),this.array[e+0]=n,this.array[e+1]=r,this.array[e+2]=i,this.array[e+3]=o,this}onUpload(e){return this.onUploadCallback=e,this}clone(){return new this.constructor(this.array,this.itemSize).copy(this)}toJSON(){let e={itemSize:this.itemSize,type:this.array.constructor.name,array:Array.from(this.array),normalized:this.normalized};return this.name!==""&&(e.name=this.name),this.usage!==mf&&(e.usage=this.usage),e}dispose(){this.dispatchEvent({type:"dispose"})}},vf=class extends Jr{constructor(e,n,r){super(new Uint16Array(e),n,r)}},xf=class extends Jr{constructor(e,n,r){super(new Uint32Array(e),n,r)}},Wm=class extends Jr{constructor(e,n,r){super(new Uint16Array(e),n,r),this.isFloat16BufferAttribute=!0}getX(e){let n=xS(this.array[e*this.itemSize]);return this.normalized&&(n=ro(n,this.array)),n}setX(e,n){return this.normalized&&(n=Un(n,this.array)),this.array[e*this.itemSize]=Ao(n),this}getY(e){let n=xS(this.array[e*this.itemSize+1]);return this.normalized&&(n=ro(n,this.array)),n}setY(e,n){return this.normalized&&(n=Un(n,this.array)),this.array[e*this.itemSize+1]=Ao(n),this}getZ(e){let n=xS(this.array[e*this.itemSize+2]);return this.normalized&&(n=ro(n,this.array)),n}setZ(e,n){return this.normalized&&(n=Un(n,this.array)),this.array[e*this.itemSize+2]=Ao(n),this}getW(e){let n=xS(this.array[e*this.itemSize+3]);return this.normalized&&(n=ro(n,this.array)),n}setW(e,n){return this.normalized&&(n=Un(n,this.array)),this.array[e*this.itemSize+3]=Ao(n),this}setXY(e,n,r){return e*=this.itemSize,this.normalized&&(n=Un(n,this.array),r=Un(r,this.array)),this.array[e+0]=Ao(n),this.array[e+1]=Ao(r),this}setXYZ(e,n,r,i){return e*=this.itemSize,this.normalized&&(n=Un(n,this.array),r=Un(r,this.array),i=Un(i,this.array)),this.array[e+0]=Ao(n),this.array[e+1]=Ao(r),this.array[e+2]=Ao(i),this}setXYZW(e,n,r,i,o){return e*=this.itemSize,this.normalized&&(n=Un(n,this.array),r=Un(r,this.array),i=Un(i,this.array),o=Un(o,this.array)),this.array[e+0]=Ao(n),this.array[e+1]=Ao(r),this.array[e+2]=Ao(i),this.array[e+3]=Ao(o),this}},Qr=class extends Jr{constructor(e,n,r){super(new Float32Array(e),n,r)}},Gne=new zu,km=new xe,UT=new xe,bf=class{constructor(e=new xe,n=-1){this.isSphere=!0,this.center=e,this.radius=n}set(e,n){return this.center.copy(e),this.radius=n,this}setFromPoints(e,n){let r=this.center;n!==void 0?r.copy(n):Gne.setFromPoints(e).getCenter(r);let i=0;for(let o=0,a=e.length;o<a;o++)i=Math.max(i,r.distanceToSquared(e[o]));return this.radius=Math.sqrt(i),this}copy(e){return this.center.copy(e.center),this.radius=e.radius,this}isEmpty(){return this.radius<0}makeEmpty(){return this.center.set(0,0,0),this.radius=-1,this}containsPoint(e){return e.distanceToSquared(this.center)<=this.radius*this.radius}distanceToPoint(e){return e.distanceTo(this.center)-this.radius}intersectsSphere(e){let n=this.radius+e.radius;return e.center.distanceToSquared(this.center)<=n*n}intersectsBox(e){return e.intersectsSphere(this)}intersectsPlane(e){return Math.abs(e.distanceToPoint(this.center))<=this.radius}clampPoint(e,n){let r=this.center.distanceToSquared(e);return n.copy(e),r>this.radius*this.radius&&(n.sub(this.center).normalize(),n.multiplyScalar(this.radius).add(this.center)),n}getBoundingBox(e){return this.isEmpty()?(e.makeEmpty(),e):(e.set(this.center,this.center),e.expandByScalar(this.radius),e)}applyMatrix4(e){return this.center.applyMatrix4(e),this.radius=this.radius*e.getMaxScaleOnAxis(),this}translate(e){return this.center.add(e),this}expandByPoint(e){if(this.isEmpty())return this.center.copy(e),this.radius=0,this;km.subVectors(e,this.center);let n=km.lengthSq();if(n>this.radius*this.radius){let r=Math.sqrt(n),i=(r-this.radius)*.5;this.center.addScaledVector(km,i/r),this.radius+=i}return this}union(e){return e.isEmpty()?this:this.isEmpty()?(this.copy(e),this):(this.center.equals(e.center)===!0?this.radius=Math.max(this.radius,e.radius):(UT.subVectors(e.center,this.center).setLength(e.radius),this.expandByPoint(km.copy(e.center).add(UT)),this.expandByPoint(km.copy(e.center).sub(UT))),this)}equals(e){return e.center.equals(this.center)&&e.radius===this.radius}clone(){return new this.constructor().copy(this)}toJSON(){return{radius:this.radius,center:this.center.toArray()}}fromJSON(e){return this.radius=e.radius,this.center.fromArray(e.center),this}},Hne=0,Zo=new In,DT=new bi,Mh=new xe,Po=new zu,Bm=new zu,Ti=new xe,Wi=class t extends io{constructor(){super(),this.isBufferGeometry=!0,Object.defineProperty(this,"id",{value:Hne++}),this.uuid=Va(),this.name="",this.type="BufferGeometry",this.index=null,this.indirect=null,this.indirectOffset=0,this.attributes={},this.morphAttributes={},this.morphTargetsRelative=!1,this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.drawRange={start:0,count:1/0},this.userData={}}getIndex(){return this.index}setIndex(e){return Array.isArray(e)?this.index=new(hne(e)?xf:vf)(e,1):this.index=e,this}setIndirect(e,n=0){return this.indirect=e,this.indirectOffset=n,this}getIndirect(){return this.indirect}getAttribute(e){return this.attributes[e]}setAttribute(e,n){return this.attributes[e]=n,this}deleteAttribute(e){return delete this.attributes[e],this}hasAttribute(e){return this.attributes[e]!==void 0}addGroup(e,n,r=0){this.groups.push({start:e,count:n,materialIndex:r})}clearGroups(){this.groups=[]}setDrawRange(e,n){this.drawRange.start=e,this.drawRange.count=n}applyMatrix4(e){let n=this.attributes.position;n!==void 0&&(n.applyMatrix4(e),n.needsUpdate=!0);let r=this.attributes.normal;if(r!==void 0){let o=new Cn().getNormalMatrix(e);r.applyNormalMatrix(o),r.needsUpdate=!0}let i=this.attributes.tangent;return i!==void 0&&(i.transformDirection(e),i.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this}applyQuaternion(e){return Zo.makeRotationFromQuaternion(e),this.applyMatrix4(Zo),this}rotateX(e){return Zo.makeRotationX(e),this.applyMatrix4(Zo),this}rotateY(e){return Zo.makeRotationY(e),this.applyMatrix4(Zo),this}rotateZ(e){return Zo.makeRotationZ(e),this.applyMatrix4(Zo),this}translate(e,n,r){return Zo.makeTranslation(e,n,r),this.applyMatrix4(Zo),this}scale(e,n,r){return Zo.makeScale(e,n,r),this.applyMatrix4(Zo),this}lookAt(e){return DT.lookAt(e),DT.updateMatrix(),this.applyMatrix4(DT.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(Mh).negate(),this.translate(Mh.x,Mh.y,Mh.z),this}setFromPoints(e){let n=this.getAttribute("position");if(n===void 0){let r=[];for(let i=0,o=e.length;i<o;i++){let a=e[i];r.push(a.x,a.y,a.z||0)}this.setAttribute("position",new Qr(r,3))}else{let r=Math.min(e.length,n.count);for(let i=0;i<r;i++){let o=e[i];n.setXYZ(i,o.x,o.y,o.z||0)}e.length>n.count&&lt("BufferGeometry: Buffer size too small for points data. Use .dispose() and create a new geometry."),n.needsUpdate=!0}return this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new zu);let e=this.attributes.position,n=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){ot("BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box.",this),this.boundingBox.set(new xe(-1/0,-1/0,-1/0),new xe(1/0,1/0,1/0));return}if(e!==void 0){if(this.boundingBox.setFromBufferAttribute(e),n)for(let r=0,i=n.length;r<i;r++){let o=n[r];Po.setFromBufferAttribute(o),this.morphTargetsRelative?(Ti.addVectors(this.boundingBox.min,Po.min),this.boundingBox.expandByPoint(Ti),Ti.addVectors(this.boundingBox.max,Po.max),this.boundingBox.expandByPoint(Ti)):(this.boundingBox.expandByPoint(Po.min),this.boundingBox.expandByPoint(Po.max))}}else this.boundingBox.makeEmpty();(isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||isNaN(this.boundingBox.min.z))&&ot('BufferGeometry.computeBoundingBox(): Computed min/max have NaN values. The "position" attribute is likely to have NaN values.',this)}computeBoundingSphere(){this.boundingSphere===null&&(this.boundingSphere=new bf);let e=this.attributes.position,n=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){ot("BufferGeometry.computeBoundingSphere(): GLBufferAttribute requires a manual bounding sphere.",this),this.boundingSphere.set(new xe,1/0);return}if(e){let r=this.boundingSphere.center;if(Po.setFromBufferAttribute(e),n)for(let o=0,a=n.length;o<a;o++){let l=n[o];Bm.setFromBufferAttribute(l),this.morphTargetsRelative?(Ti.addVectors(Po.min,Bm.min),Po.expandByPoint(Ti),Ti.addVectors(Po.max,Bm.max),Po.expandByPoint(Ti)):(Po.expandByPoint(Bm.min),Po.expandByPoint(Bm.max))}Po.getCenter(r);let i=0;for(let o=0,a=e.count;o<a;o++)Ti.fromBufferAttribute(e,o),i=Math.max(i,r.distanceToSquared(Ti));if(n)for(let o=0,a=n.length;o<a;o++){let l=n[o],s=this.morphTargetsRelative;for(let u=0,d=l.count;u<d;u++)Ti.fromBufferAttribute(l,u),s&&(Mh.fromBufferAttribute(e,u),Ti.add(Mh)),i=Math.max(i,r.distanceToSquared(Ti))}this.boundingSphere.radius=Math.sqrt(i),isNaN(this.boundingSphere.radius)&&ot('BufferGeometry.computeBoundingSphere(): Computed radius is NaN. The "position" attribute is likely to have NaN values.',this)}}computeTangents(){let e=this.index,n=this.attributes;if(e===null||n.position===void 0||n.normal===void 0||n.uv===void 0){ot("BufferGeometry: .computeTangents() failed. Missing required attributes (index, position, normal or uv)");return}let r=n.position,i=n.normal,o=n.uv;this.hasAttribute("tangent")===!1&&this.setAttribute("tangent",new Jr(new Float32Array(4*r.count),4));let a=this.getAttribute("tangent"),l=[],s=[];for(let c=0;c<r.count;c++)l[c]=new xe,s[c]=new xe;let u=new xe,d=new xe,h=new xe,f=new mn,g=new mn,y=new mn,_=new xe,b=new xe;function S(c,m,x){u.fromBufferAttribute(r,c),d.fromBufferAttribute(r,m),h.fromBufferAttribute(r,x),f.fromBufferAttribute(o,c),g.fromBufferAttribute(o,m),y.fromBufferAttribute(o,x),d.sub(u),h.sub(u),g.sub(f),y.sub(f);let T=1/(g.x*y.y-y.x*g.y);isFinite(T)&&(_.copy(d).multiplyScalar(y.y).addScaledVector(h,-g.y).multiplyScalar(T),b.copy(h).multiplyScalar(g.x).addScaledVector(d,-y.x).multiplyScalar(T),l[c].add(_),l[m].add(_),l[x].add(_),s[c].add(b),s[m].add(b),s[x].add(b))}let w=this.groups;w.length===0&&(w=[{start:0,count:e.count}]);for(let c=0,m=w.length;c<m;++c){let x=w[c],T=x.start,N=x.count;for(let B=T,D=T+N;B<D;B+=3)S(e.getX(B+0),e.getX(B+1),e.getX(B+2))}let v=new xe,E=new xe,C=new xe,M=new xe;function R(c){C.fromBufferAttribute(i,c),M.copy(C);let m=l[c];v.copy(m),v.sub(C.multiplyScalar(C.dot(m))).normalize(),E.crossVectors(M,m);let T=E.dot(s[c])<0?-1:1;a.setXYZW(c,v.x,v.y,v.z,T)}for(let c=0,m=w.length;c<m;++c){let x=w[c],T=x.start,N=x.count;for(let B=T,D=T+N;B<D;B+=3)R(e.getX(B+0)),R(e.getX(B+1)),R(e.getX(B+2))}}computeVertexNormals(){let e=this.index,n=this.getAttribute("position");if(n!==void 0){let r=this.getAttribute("normal");if(r===void 0)r=new Jr(new Float32Array(n.count*3),3),this.setAttribute("normal",r);else for(let f=0,g=r.count;f<g;f++)r.setXYZ(f,0,0,0);let i=new xe,o=new xe,a=new xe,l=new xe,s=new xe,u=new xe,d=new xe,h=new xe;if(e)for(let f=0,g=e.count;f<g;f+=3){let y=e.getX(f+0),_=e.getX(f+1),b=e.getX(f+2);i.fromBufferAttribute(n,y),o.fromBufferAttribute(n,_),a.fromBufferAttribute(n,b),d.subVectors(a,o),h.subVectors(i,o),d.cross(h),l.fromBufferAttribute(r,y),s.fromBufferAttribute(r,_),u.fromBufferAttribute(r,b),l.add(d),s.add(d),u.add(d),r.setXYZ(y,l.x,l.y,l.z),r.setXYZ(_,s.x,s.y,s.z),r.setXYZ(b,u.x,u.y,u.z)}else for(let f=0,g=n.count;f<g;f+=3)i.fromBufferAttribute(n,f+0),o.fromBufferAttribute(n,f+1),a.fromBufferAttribute(n,f+2),d.subVectors(a,o),h.subVectors(i,o),d.cross(h),r.setXYZ(f+0,d.x,d.y,d.z),r.setXYZ(f+1,d.x,d.y,d.z),r.setXYZ(f+2,d.x,d.y,d.z);this.normalizeNormals(),r.needsUpdate=!0}}normalizeNormals(){let e=this.attributes.normal;for(let n=0,r=e.count;n<r;n++)Ti.fromBufferAttribute(e,n),Ti.normalize(),e.setXYZ(n,Ti.x,Ti.y,Ti.z)}toNonIndexed(){function e(l,s){let u=l.array,d=l.itemSize,h=l.normalized,f=new u.constructor(s.length*d),g=0,y=0;for(let _=0,b=s.length;_<b;_++){l.isInterleavedBufferAttribute?g=s[_]*l.data.stride+l.offset:g=s[_]*d;for(let S=0;S<d;S++)f[y++]=u[g++]}return new Jr(f,d,h)}if(this.index===null)return lt("BufferGeometry.toNonIndexed(): BufferGeometry is already non-indexed."),this;let n=new t,r=this.index.array,i=this.attributes;for(let l in i){let s=i[l],u=e(s,r);n.setAttribute(l,u)}let o=this.morphAttributes;for(let l in o){let s=[],u=o[l];for(let d=0,h=u.length;d<h;d++){let f=u[d],g=e(f,r);s.push(g)}n.morphAttributes[l]=s}n.morphTargetsRelative=this.morphTargetsRelative;let a=this.groups;for(let l=0,s=a.length;l<s;l++){let u=a[l];n.addGroup(u.start,u.count,u.materialIndex)}return n}toJSON(){let e={metadata:{version:4.7,type:"BufferGeometry",generator:"BufferGeometry.toJSON"}};if(e.uuid=this.uuid,e.type=this.type,this.name!==""&&(e.name=this.name),Object.keys(this.userData).length>0&&(e.userData=this.userData),this.parameters!==void 0){let s=this.parameters;for(let u in s)s[u]!==void 0&&(e[u]=s[u]);return e}e.data={attributes:{}};let n=this.index;n!==null&&(e.data.index={type:n.array.constructor.name,array:Array.prototype.slice.call(n.array)});let r=this.attributes;for(let s in r){let u=r[s];e.data.attributes[s]=u.toJSON(e.data)}let i={},o=!1;for(let s in this.morphAttributes){let u=this.morphAttributes[s],d=[];for(let h=0,f=u.length;h<f;h++){let g=u[h];d.push(g.toJSON(e.data))}d.length>0&&(i[s]=d,o=!0)}o&&(e.data.morphAttributes=i,e.data.morphTargetsRelative=this.morphTargetsRelative);let a=this.groups;a.length>0&&(e.data.groups=JSON.parse(JSON.stringify(a)));let l=this.boundingSphere;return l!==null&&(e.data.boundingSphere=l.toJSON()),e}clone(){return new this.constructor().copy(this)}copy(e){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;let n={};this.name=e.name;let r=e.index;r!==null&&this.setIndex(r.clone());let i=e.attributes;for(let u in i){let d=i[u];this.setAttribute(u,d.clone(n))}let o=e.morphAttributes;for(let u in o){let d=[],h=o[u];for(let f=0,g=h.length;f<g;f++)d.push(h[f].clone(n));this.morphAttributes[u]=d}this.morphTargetsRelative=e.morphTargetsRelative;let a=e.groups;for(let u=0,d=a.length;u<d;u++){let h=a[u];this.addGroup(h.start,h.count,h.materialIndex)}let l=e.boundingBox;l!==null&&(this.boundingBox=l.clone());let s=e.boundingSphere;return s!==null&&(this.boundingSphere=s.clone()),this.drawRange.start=e.drawRange.start,this.drawRange.count=e.drawRange.count,this.userData=e.userData,this}dispose(){this.dispatchEvent({type:"dispose"})}},jm=class{constructor(e,n){this.isInterleavedBuffer=!0,this.array=e,this.stride=n,this.count=e!==void 0?e.length/n:0,this.usage=mf,this.updateRanges=[],this.version=0,this.uuid=Va()}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,n){this.updateRanges.push({start:e,count:n})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.array=new e.array.constructor(e.array),this.count=e.count,this.stride=e.stride,this.usage=e.usage,this}copyAt(e,n,r){e*=this.stride,r*=n.stride;for(let i=0,o=this.stride;i<o;i++)this.array[e+i]=n.array[r+i];return this}set(e,n=0){return this.array.set(e,n),this}clone(e){e.arrayBuffers===void 0&&(e.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=Va()),e.arrayBuffers[this.array.buffer._uuid]===void 0&&(e.arrayBuffers[this.array.buffer._uuid]=this.array.slice(0).buffer);let n=new this.array.constructor(e.arrayBuffers[this.array.buffer._uuid]),r=new this.constructor(n,this.stride);return r.setUsage(this.usage),r}onUpload(e){return this.onUploadCallback=e,this}toJSON(e){return e.arrayBuffers===void 0&&(e.arrayBuffers={}),this.array.buffer._uuid===void 0&&(this.array.buffer._uuid=Va()),e.arrayBuffers[this.array.buffer._uuid]===void 0&&(e.arrayBuffers[this.array.buffer._uuid]=Array.from(new Uint32Array(this.array.buffer))),{uuid:this.uuid,buffer:this.array.buffer._uuid,type:this.array.constructor.name,stride:this.stride}}},no=new xe,BS=class t{constructor(e,n,r,i=!1){this.isInterleavedBufferAttribute=!0,this.name="",this.data=e,this.itemSize=n,this.offset=r,this.normalized=i}get count(){return this.data.count}get array(){return this.data.array}set needsUpdate(e){this.data.needsUpdate=e}applyMatrix4(e){for(let n=0,r=this.data.count;n<r;n++)no.fromBufferAttribute(this,n),no.applyMatrix4(e),this.setXYZ(n,no.x,no.y,no.z);return this}applyNormalMatrix(e){for(let n=0,r=this.count;n<r;n++)no.fromBufferAttribute(this,n),no.applyNormalMatrix(e),this.setXYZ(n,no.x,no.y,no.z);return this}transformDirection(e){for(let n=0,r=this.count;n<r;n++)no.fromBufferAttribute(this,n),no.transformDirection(e),this.setXYZ(n,no.x,no.y,no.z);return this}getComponent(e,n){let r=this.array[e*this.data.stride+this.offset+n];return this.normalized&&(r=ro(r,this.array)),r}setComponent(e,n,r){return this.normalized&&(r=Un(r,this.array)),this.data.array[e*this.data.stride+this.offset+n]=r,this}setX(e,n){return this.normalized&&(n=Un(n,this.array)),this.data.array[e*this.data.stride+this.offset]=n,this}setY(e,n){return this.normalized&&(n=Un(n,this.array)),this.data.array[e*this.data.stride+this.offset+1]=n,this}setZ(e,n){return this.normalized&&(n=Un(n,this.array)),this.data.array[e*this.data.stride+this.offset+2]=n,this}setW(e,n){return this.normalized&&(n=Un(n,this.array)),this.data.array[e*this.data.stride+this.offset+3]=n,this}getX(e){let n=this.data.array[e*this.data.stride+this.offset];return this.normalized&&(n=ro(n,this.array)),n}getY(e){let n=this.data.array[e*this.data.stride+this.offset+1];return this.normalized&&(n=ro(n,this.array)),n}getZ(e){let n=this.data.array[e*this.data.stride+this.offset+2];return this.normalized&&(n=ro(n,this.array)),n}getW(e){let n=this.data.array[e*this.data.stride+this.offset+3];return this.normalized&&(n=ro(n,this.array)),n}setXY(e,n,r){return e=e*this.data.stride+this.offset,this.normalized&&(n=Un(n,this.array),r=Un(r,this.array)),this.data.array[e+0]=n,this.data.array[e+1]=r,this}setXYZ(e,n,r,i){return e=e*this.data.stride+this.offset,this.normalized&&(n=Un(n,this.array),r=Un(r,this.array),i=Un(i,this.array)),this.data.array[e+0]=n,this.data.array[e+1]=r,this.data.array[e+2]=i,this}setXYZW(e,n,r,i,o){return e=e*this.data.stride+this.offset,this.normalized&&(n=Un(n,this.array),r=Un(r,this.array),i=Un(i,this.array),o=Un(o,this.array)),this.data.array[e+0]=n,this.data.array[e+1]=r,this.data.array[e+2]=i,this.data.array[e+3]=o,this}clone(e){if(e===void 0){pf("InterleavedBufferAttribute.clone(): Cloning an interleaved buffer attribute will de-interleave buffer data.");let n=[];for(let r=0;r<this.count;r++){let i=r*this.data.stride+this.offset;for(let o=0;o<this.itemSize;o++)n.push(this.data.array[i+o])}return new Jr(new this.array.constructor(n),this.itemSize,this.normalized)}else return e.interleavedBuffers===void 0&&(e.interleavedBuffers={}),e.interleavedBuffers[this.data.uuid]===void 0&&(e.interleavedBuffers[this.data.uuid]=this.data.clone(e)),new t(e.interleavedBuffers[this.data.uuid],this.itemSize,this.offset,this.normalized)}toJSON(e){if(e===void 0){pf("InterleavedBufferAttribute.toJSON(): Serializing an interleaved buffer attribute will de-interleave buffer data.");let n=[];for(let r=0;r<this.count;r++){let i=r*this.data.stride+this.offset;for(let o=0;o<this.itemSize;o++)n.push(this.data.array[i+o])}return{itemSize:this.itemSize,type:this.array.constructor.name,array:n,normalized:this.normalized}}else return e.interleavedBuffers===void 0&&(e.interleavedBuffers={}),e.interleavedBuffers[this.data.uuid]===void 0&&(e.interleavedBuffers[this.data.uuid]=this.data.toJSON(e)),{isInterleavedBufferAttribute:!0,itemSize:this.itemSize,data:this.data.uuid,offset:this.offset,normalized:this.normalized}}},Wne=0,ei=class extends io{constructor(){super(),this.isMaterial=!0,Object.defineProperty(this,"id",{value:Wne++}),this.uuid=Va(),this.name="",this.type="Material",this.blending=Ci,this.side=Ni,this.vertexColors=!1,this.opacity=1,this.transparent=!1,this.alphaHash=!1,this.blendSrc=Du,this.blendDst=Fu,this.blendEquation=xi,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.blendColor=new un(0,0,0),this.blendAlpha=0,this.depthFunc=Gs,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=LS,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=Ou,this.stencilZFail=Ou,this.stencilZPass=Ou,this.stencilWrite=!1,this.clippingPlanes=null,this.clipIntersection=!1,this.clipShadows=!1,this.shadowSide=null,this.colorWrite=!0,this.precision=null,this.polygonOffset=!1,this.polygonOffsetFactor=0,this.polygonOffsetUnits=0,this.dithering=!1,this.alphaToCoverage=!1,this.premultipliedAlpha=!1,this.forceSinglePass=!1,this.allowOverride=!0,this.visible=!0,this.toneMapped=!0,this.userData={},this.version=0,this._alphaTest=0}get alphaTest(){return this._alphaTest}set alphaTest(e){this._alphaTest>0!=e>0&&this.version++,this._alphaTest=e}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(e){if(e!==void 0)for(let n in e){let r=e[n];if(r===void 0){lt(`Material: parameter '${n}' has value of undefined.`);continue}let i=this[n];if(i===void 0){lt(`Material: '${n}' is not a property of THREE.${this.type}.`);continue}i&&i.isColor?i.set(r):i&&i.isVector3&&r&&r.isVector3?i.copy(r):this[n]=r}}toJSON(e){let n=e===void 0||typeof e=="string";n&&(e={textures:{},images:{}});let r={metadata:{version:4.7,type:"Material",generator:"Material.toJSON"}};r.uuid=this.uuid,r.type=this.type,this.name!==""&&(r.name=this.name),this.color&&this.color.isColor&&(r.color=this.color.getHex()),this.roughness!==void 0&&(r.roughness=this.roughness),this.metalness!==void 0&&(r.metalness=this.metalness),this.sheen!==void 0&&(r.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(r.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(r.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(r.emissive=this.emissive.getHex()),this.emissiveIntensity!==void 0&&this.emissiveIntensity!==1&&(r.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(r.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(r.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(r.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(r.shininess=this.shininess),this.clearcoat!==void 0&&(r.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(r.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(r.clearcoatMap=this.clearcoatMap.toJSON(e).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(r.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(e).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(r.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(e).uuid,r.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.sheenColorMap&&this.sheenColorMap.isTexture&&(r.sheenColorMap=this.sheenColorMap.toJSON(e).uuid),this.sheenRoughnessMap&&this.sheenRoughnessMap.isTexture&&(r.sheenRoughnessMap=this.sheenRoughnessMap.toJSON(e).uuid),this.dispersion!==void 0&&(r.dispersion=this.dispersion),this.iridescence!==void 0&&(r.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(r.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(r.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(r.iridescenceMap=this.iridescenceMap.toJSON(e).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(r.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(e).uuid),this.anisotropy!==void 0&&(r.anisotropy=this.anisotropy),this.anisotropyRotation!==void 0&&(r.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(r.anisotropyMap=this.anisotropyMap.toJSON(e).uuid),this.map&&this.map.isTexture&&(r.map=this.map.toJSON(e).uuid),this.matcap&&this.matcap.isTexture&&(r.matcap=this.matcap.toJSON(e).uuid),this.alphaMap&&this.alphaMap.isTexture&&(r.alphaMap=this.alphaMap.toJSON(e).uuid),this.lightMap&&this.lightMap.isTexture&&(r.lightMap=this.lightMap.toJSON(e).uuid,r.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(r.aoMap=this.aoMap.toJSON(e).uuid,r.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(r.bumpMap=this.bumpMap.toJSON(e).uuid,r.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(r.normalMap=this.normalMap.toJSON(e).uuid,r.normalMapType=this.normalMapType,r.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(r.displacementMap=this.displacementMap.toJSON(e).uuid,r.displacementScale=this.displacementScale,r.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(r.roughnessMap=this.roughnessMap.toJSON(e).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(r.metalnessMap=this.metalnessMap.toJSON(e).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(r.emissiveMap=this.emissiveMap.toJSON(e).uuid),this.specularMap&&this.specularMap.isTexture&&(r.specularMap=this.specularMap.toJSON(e).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(r.specularIntensityMap=this.specularIntensityMap.toJSON(e).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(r.specularColorMap=this.specularColorMap.toJSON(e).uuid),this.envMap&&this.envMap.isTexture&&(r.envMap=this.envMap.toJSON(e).uuid,this.combine!==void 0&&(r.combine=this.combine)),this.envMapRotation!==void 0&&(r.envMapRotation=this.envMapRotation.toArray()),this.envMapIntensity!==void 0&&(r.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(r.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(r.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(r.gradientMap=this.gradientMap.toJSON(e).uuid),this.transmission!==void 0&&(r.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(r.transmissionMap=this.transmissionMap.toJSON(e).uuid),this.thickness!==void 0&&(r.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(r.thicknessMap=this.thicknessMap.toJSON(e).uuid),this.attenuationDistance!==void 0&&this.attenuationDistance!==1/0&&(r.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(r.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(r.size=this.size),this.shadowSide!==null&&(r.shadowSide=this.shadowSide),this.sizeAttenuation!==void 0&&(r.sizeAttenuation=this.sizeAttenuation),this.blending!==Ci&&(r.blending=this.blending),this.side!==Ni&&(r.side=this.side),this.vertexColors===!0&&(r.vertexColors=!0),this.opacity<1&&(r.opacity=this.opacity),this.transparent===!0&&(r.transparent=!0),this.blendSrc!==Du&&(r.blendSrc=this.blendSrc),this.blendDst!==Fu&&(r.blendDst=this.blendDst),this.blendEquation!==xi&&(r.blendEquation=this.blendEquation),this.blendSrcAlpha!==null&&(r.blendSrcAlpha=this.blendSrcAlpha),this.blendDstAlpha!==null&&(r.blendDstAlpha=this.blendDstAlpha),this.blendEquationAlpha!==null&&(r.blendEquationAlpha=this.blendEquationAlpha),this.blendColor&&this.blendColor.isColor&&(r.blendColor=this.blendColor.getHex()),this.blendAlpha!==0&&(r.blendAlpha=this.blendAlpha),this.depthFunc!==Gs&&(r.depthFunc=this.depthFunc),this.depthTest===!1&&(r.depthTest=this.depthTest),this.depthWrite===!1&&(r.depthWrite=this.depthWrite),this.colorWrite===!1&&(r.colorWrite=this.colorWrite),this.stencilWriteMask!==255&&(r.stencilWriteMask=this.stencilWriteMask),this.stencilFunc!==LS&&(r.stencilFunc=this.stencilFunc),this.stencilRef!==0&&(r.stencilRef=this.stencilRef),this.stencilFuncMask!==255&&(r.stencilFuncMask=this.stencilFuncMask),this.stencilFail!==Ou&&(r.stencilFail=this.stencilFail),this.stencilZFail!==Ou&&(r.stencilZFail=this.stencilZFail),this.stencilZPass!==Ou&&(r.stencilZPass=this.stencilZPass),this.stencilWrite===!0&&(r.stencilWrite=this.stencilWrite),this.rotation!==void 0&&this.rotation!==0&&(r.rotation=this.rotation),this.polygonOffset===!0&&(r.polygonOffset=!0),this.polygonOffsetFactor!==0&&(r.polygonOffsetFactor=this.polygonOffsetFactor),this.polygonOffsetUnits!==0&&(r.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth!==void 0&&this.linewidth!==1&&(r.linewidth=this.linewidth),this.dashSize!==void 0&&(r.dashSize=this.dashSize),this.gapSize!==void 0&&(r.gapSize=this.gapSize),this.scale!==void 0&&(r.scale=this.scale),this.dithering===!0&&(r.dithering=!0),this.alphaTest>0&&(r.alphaTest=this.alphaTest),this.alphaHash===!0&&(r.alphaHash=!0),this.alphaToCoverage===!0&&(r.alphaToCoverage=!0),this.premultipliedAlpha===!0&&(r.premultipliedAlpha=!0),this.forceSinglePass===!0&&(r.forceSinglePass=!0),this.allowOverride===!1&&(r.allowOverride=!1),this.wireframe===!0&&(r.wireframe=!0),this.wireframeLinewidth>1&&(r.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!=="round"&&(r.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!=="round"&&(r.wireframeLinejoin=this.wireframeLinejoin),this.flatShading===!0&&(r.flatShading=!0),this.visible===!1&&(r.visible=!1),this.toneMapped===!1&&(r.toneMapped=!1),this.fog===!1&&(r.fog=!1),Object.keys(this.userData).length>0&&(r.userData=this.userData);function i(o){let a=[];for(let l in o){let s=o[l];delete s.metadata,a.push(s)}return a}if(n){let o=i(e.textures),a=i(e.images);o.length>0&&(r.textures=o),a.length>0&&(r.images=a)}return r}clone(){return new this.constructor().copy(this)}copy(e){this.name=e.name,this.blending=e.blending,this.side=e.side,this.vertexColors=e.vertexColors,this.opacity=e.opacity,this.transparent=e.transparent,this.blendSrc=e.blendSrc,this.blendDst=e.blendDst,this.blendEquation=e.blendEquation,this.blendSrcAlpha=e.blendSrcAlpha,this.blendDstAlpha=e.blendDstAlpha,this.blendEquationAlpha=e.blendEquationAlpha,this.blendColor.copy(e.blendColor),this.blendAlpha=e.blendAlpha,this.depthFunc=e.depthFunc,this.depthTest=e.depthTest,this.depthWrite=e.depthWrite,this.stencilWriteMask=e.stencilWriteMask,this.stencilFunc=e.stencilFunc,this.stencilRef=e.stencilRef,this.stencilFuncMask=e.stencilFuncMask,this.stencilFail=e.stencilFail,this.stencilZFail=e.stencilZFail,this.stencilZPass=e.stencilZPass,this.stencilWrite=e.stencilWrite;let n=e.clippingPlanes,r=null;if(n!==null){let i=n.length;r=new Array(i);for(let o=0;o!==i;++o)r[o]=n[o].clone()}return this.clippingPlanes=r,this.clipIntersection=e.clipIntersection,this.clipShadows=e.clipShadows,this.shadowSide=e.shadowSide,this.colorWrite=e.colorWrite,this.precision=e.precision,this.polygonOffset=e.polygonOffset,this.polygonOffsetFactor=e.polygonOffsetFactor,this.polygonOffsetUnits=e.polygonOffsetUnits,this.dithering=e.dithering,this.alphaTest=e.alphaTest,this.alphaHash=e.alphaHash,this.alphaToCoverage=e.alphaToCoverage,this.premultipliedAlpha=e.premultipliedAlpha,this.forceSinglePass=e.forceSinglePass,this.allowOverride=e.allowOverride,this.visible=e.visible,this.toneMapped=e.toneMapped,this.userData=JSON.parse(JSON.stringify(e.userData)),this}dispose(){this.dispatchEvent({type:"dispose"})}set needsUpdate(e){e===!0&&this.version++}},zS=class extends ei{constructor(e){super(),this.isSpriteMaterial=!0,this.type="SpriteMaterial",this.color=new un(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.alphaMap=e.alphaMap,this.rotation=e.rotation,this.sizeAttenuation=e.sizeAttenuation,this.fog=e.fog,this}},Ba=new xe,FT=new xe,_S=new xe,Iu=new xe,LT=new xe,SS=new xe,kT=new xe,VS=class{constructor(e=new xe,n=new xe(0,0,-1)){this.origin=e,this.direction=n}set(e,n){return this.origin.copy(e),this.direction.copy(n),this}copy(e){return this.origin.copy(e.origin),this.direction.copy(e.direction),this}at(e,n){return n.copy(this.origin).addScaledVector(this.direction,e)}lookAt(e){return this.direction.copy(e).sub(this.origin).normalize(),this}recast(e){return this.origin.copy(this.at(e,Ba)),this}closestPointToPoint(e,n){n.subVectors(e,this.origin);let r=n.dot(this.direction);return r<0?n.copy(this.origin):n.copy(this.origin).addScaledVector(this.direction,r)}distanceToPoint(e){return Math.sqrt(this.distanceSqToPoint(e))}distanceSqToPoint(e){let n=Ba.subVectors(e,this.origin).dot(this.direction);return n<0?this.origin.distanceToSquared(e):(Ba.copy(this.origin).addScaledVector(this.direction,n),Ba.distanceToSquared(e))}distanceSqToSegment(e,n,r,i){FT.copy(e).add(n).multiplyScalar(.5),_S.copy(n).sub(e).normalize(),Iu.copy(this.origin).sub(FT);let o=e.distanceTo(n)*.5,a=-this.direction.dot(_S),l=Iu.dot(this.direction),s=-Iu.dot(_S),u=Iu.lengthSq(),d=Math.abs(1-a*a),h,f,g,y;if(d>0)if(h=a*s-l,f=a*l-s,y=o*d,h>=0)if(f>=-y)if(f<=y){let _=1/d;h*=_,f*=_,g=h*(h+a*f+2*l)+f*(a*h+f+2*s)+u}else f=o,h=Math.max(0,-(a*f+l)),g=-h*h+f*(f+2*s)+u;else f=-o,h=Math.max(0,-(a*f+l)),g=-h*h+f*(f+2*s)+u;else f<=-y?(h=Math.max(0,-(-a*o+l)),f=h>0?-o:Math.min(Math.max(-o,-s),o),g=-h*h+f*(f+2*s)+u):f<=y?(h=0,f=Math.min(Math.max(-o,-s),o),g=f*(f+2*s)+u):(h=Math.max(0,-(a*o+l)),f=h>0?o:Math.min(Math.max(-o,-s),o),g=-h*h+f*(f+2*s)+u);else f=a>0?-o:o,h=Math.max(0,-(a*f+l)),g=-h*h+f*(f+2*s)+u;return r&&r.copy(this.origin).addScaledVector(this.direction,h),i&&i.copy(FT).addScaledVector(_S,f),g}intersectSphere(e,n){Ba.subVectors(e.center,this.origin);let r=Ba.dot(this.direction),i=Ba.dot(Ba)-r*r,o=e.radius*e.radius;if(i>o)return null;let a=Math.sqrt(o-i),l=r-a,s=r+a;return s<0?null:l<0?this.at(s,n):this.at(l,n)}intersectsSphere(e){return e.radius<0?!1:this.distanceSqToPoint(e.center)<=e.radius*e.radius}distanceToPlane(e){let n=e.normal.dot(this.direction);if(n===0)return e.distanceToPoint(this.origin)===0?0:null;let r=-(this.origin.dot(e.normal)+e.constant)/n;return r>=0?r:null}intersectPlane(e,n){let r=this.distanceToPlane(e);return r===null?null:this.at(r,n)}intersectsPlane(e){let n=e.distanceToPoint(this.origin);return n===0||e.normal.dot(this.direction)*n<0}intersectBox(e,n){let r,i,o,a,l,s,u=1/this.direction.x,d=1/this.direction.y,h=1/this.direction.z,f=this.origin;return u>=0?(r=(e.min.x-f.x)*u,i=(e.max.x-f.x)*u):(r=(e.max.x-f.x)*u,i=(e.min.x-f.x)*u),d>=0?(o=(e.min.y-f.y)*d,a=(e.max.y-f.y)*d):(o=(e.max.y-f.y)*d,a=(e.min.y-f.y)*d),r>a||o>i||((o>r||isNaN(r))&&(r=o),(a<i||isNaN(i))&&(i=a),h>=0?(l=(e.min.z-f.z)*h,s=(e.max.z-f.z)*h):(l=(e.max.z-f.z)*h,s=(e.min.z-f.z)*h),r>s||l>i)||((l>r||r!==r)&&(r=l),(s<i||i!==i)&&(i=s),i<0)?null:this.at(r>=0?r:i,n)}intersectsBox(e){return this.intersectBox(e,Ba)!==null}intersectTriangle(e,n,r,i,o){LT.subVectors(n,e),SS.subVectors(r,e),kT.crossVectors(LT,SS);let a=this.direction.dot(kT),l;if(a>0){if(i)return null;l=1}else if(a<0)l=-1,a=-a;else return null;Iu.subVectors(this.origin,e);let s=l*this.direction.dot(SS.crossVectors(Iu,SS));if(s<0)return null;let u=l*this.direction.dot(LT.cross(Iu));if(u<0||s+u>a)return null;let d=-l*Iu.dot(kT);return d<0?null:this.at(d/a,o)}applyMatrix4(e){return this.origin.applyMatrix4(e),this.direction.transformDirection(e),this}equals(e){return e.origin.equals(this.origin)&&e.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}},Uo=class extends ei{constructor(e){super(),this.isMeshBasicMaterial=!0,this.type="MeshBasicMaterial",this.color=new un(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new ms,this.combine=_f,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}},FD=new In,rf=new VS,wS=new bf,LD=new xe,MS=new xe,TS=new xe,CS=new xe,BT=new xe,ES=new xe,kD=new xe,RS=new xe,Hr=class extends bi{constructor(e=new Wi,n=new Uo){super(),this.isMesh=!0,this.type="Mesh",this.geometry=e,this.material=n,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.count=1,this.updateMorphTargets()}copy(e,n){return super.copy(e,n),e.morphTargetInfluences!==void 0&&(this.morphTargetInfluences=e.morphTargetInfluences.slice()),e.morphTargetDictionary!==void 0&&(this.morphTargetDictionary=Object.assign({},e.morphTargetDictionary)),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}updateMorphTargets(){let n=this.geometry.morphAttributes,r=Object.keys(n);if(r.length>0){let i=n[r[0]];if(i!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let o=0,a=i.length;o<a;o++){let l=i[o].name||String(o);this.morphTargetInfluences.push(0),this.morphTargetDictionary[l]=o}}}}getVertexPosition(e,n){let r=this.geometry,i=r.attributes.position,o=r.morphAttributes.position,a=r.morphTargetsRelative;n.fromBufferAttribute(i,e);let l=this.morphTargetInfluences;if(o&&l){ES.set(0,0,0);for(let s=0,u=o.length;s<u;s++){let d=l[s],h=o[s];d!==0&&(BT.fromBufferAttribute(h,e),a?ES.addScaledVector(BT,d):ES.addScaledVector(BT.sub(n),d))}n.add(ES)}return n}raycast(e,n){let r=this.geometry,i=this.material,o=this.matrixWorld;i!==void 0&&(r.boundingSphere===null&&r.computeBoundingSphere(),wS.copy(r.boundingSphere),wS.applyMatrix4(o),rf.copy(e.ray).recast(e.near),!(wS.containsPoint(rf.origin)===!1&&(rf.intersectSphere(wS,LD)===null||rf.origin.distanceToSquared(LD)>(e.far-e.near)**2))&&(FD.copy(o).invert(),rf.copy(e.ray).applyMatrix4(FD),!(r.boundingBox!==null&&rf.intersectsBox(r.boundingBox)===!1)&&this._computeIntersections(e,n,rf)))}_computeIntersections(e,n,r){let i,o=this.geometry,a=this.material,l=o.index,s=o.attributes.position,u=o.attributes.uv,d=o.attributes.uv1,h=o.attributes.normal,f=o.groups,g=o.drawRange;if(l!==null)if(Array.isArray(a))for(let y=0,_=f.length;y<_;y++){let b=f[y],S=a[b.materialIndex],w=Math.max(b.start,g.start),v=Math.min(l.count,Math.min(b.start+b.count,g.start+g.count));for(let E=w,C=v;E<C;E+=3){let M=l.getX(E),R=l.getX(E+1),c=l.getX(E+2);i=AS(this,S,e,r,u,d,h,M,R,c),i&&(i.faceIndex=Math.floor(E/3),i.face.materialIndex=b.materialIndex,n.push(i))}}else{let y=Math.max(0,g.start),_=Math.min(l.count,g.start+g.count);for(let b=y,S=_;b<S;b+=3){let w=l.getX(b),v=l.getX(b+1),E=l.getX(b+2);i=AS(this,a,e,r,u,d,h,w,v,E),i&&(i.faceIndex=Math.floor(b/3),n.push(i))}}else if(s!==void 0)if(Array.isArray(a))for(let y=0,_=f.length;y<_;y++){let b=f[y],S=a[b.materialIndex],w=Math.max(b.start,g.start),v=Math.min(s.count,Math.min(b.start+b.count,g.start+g.count));for(let E=w,C=v;E<C;E+=3){let M=E,R=E+1,c=E+2;i=AS(this,S,e,r,u,d,h,M,R,c),i&&(i.faceIndex=Math.floor(E/3),i.face.materialIndex=b.materialIndex,n.push(i))}}else{let y=Math.max(0,g.start),_=Math.min(s.count,g.start+g.count);for(let b=y,S=_;b<S;b+=3){let w=b,v=b+1,E=b+2;i=AS(this,a,e,r,u,d,h,w,v,E),i&&(i.faceIndex=Math.floor(b/3),n.push(i))}}}};ir=class extends Ur{constructor(e=null,n=1,r=1,i,o,a,l,s,u=An,d=An,h,f){super(null,a,l,s,u,d,i,o,h,f),this.isDataTexture=!0,this.image={data:e,width:n,height:r},this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}},ja=class extends Jr{constructor(e,n,r,i=1){super(e,n,r),this.isInstancedBufferAttribute=!0,this.meshPerAttribute=i}copy(e){return super.copy(e),this.meshPerAttribute=e.meshPerAttribute,this}toJSON(){let e=super.toJSON();return e.meshPerAttribute=this.meshPerAttribute,e.isInstancedBufferAttribute=!0,e}},zT=new xe,qne=new xe,Xne=new Cn,Io=class{constructor(e=new xe(1,0,0),n=0){this.isPlane=!0,this.normal=e,this.constant=n}set(e,n){return this.normal.copy(e),this.constant=n,this}setComponents(e,n,r,i){return this.normal.set(e,n,r),this.constant=i,this}setFromNormalAndCoplanarPoint(e,n){return this.normal.copy(e),this.constant=-n.dot(this.normal),this}setFromCoplanarPoints(e,n,r){let i=zT.subVectors(r,n).cross(qne.subVectors(e,n)).normalize();return this.setFromNormalAndCoplanarPoint(i,e),this}copy(e){return this.normal.copy(e.normal),this.constant=e.constant,this}normalize(){let e=1/this.normal.length();return this.normal.multiplyScalar(e),this.constant*=e,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(e){return this.normal.dot(e)+this.constant}distanceToSphere(e){return this.distanceToPoint(e.center)-e.radius}projectPoint(e,n){return n.copy(e).addScaledVector(this.normal,-this.distanceToPoint(e))}intersectLine(e,n,r=!0){let i=e.delta(zT),o=this.normal.dot(i);if(o===0)return this.distanceToPoint(e.start)===0?n.copy(e.start):null;let a=-(e.start.dot(this.normal)+this.constant)/o;return r===!0&&(a<0||a>1)?null:n.copy(e.start).addScaledVector(i,a)}intersectsLine(e){let n=this.distanceToPoint(e.start),r=this.distanceToPoint(e.end);return n<0&&r>0||r<0&&n>0}intersectsBox(e){return e.intersectsPlane(this)}intersectsSphere(e){return e.intersectsPlane(this)}coplanarPoint(e){return e.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(e,n){let r=n||Xne.getNormalMatrix(e),i=this.coplanarPoint(zT).applyMatrix4(e),o=this.normal.applyMatrix3(r).normalize();return this.constant=-i.dot(o),this}translate(e){return this.constant-=e.dot(this.normal),this}equals(e){return e.normal.equals(this.normal)&&e.constant===this.constant}clone(){return new this.constructor().copy(this)}},of=new bf,$ne=new mn(.5,.5),PS=new xe,qa=class{constructor(e=new Io,n=new Io,r=new Io,i=new Io,o=new Io,a=new Io){this.planes=[e,n,r,i,o,a]}set(e,n,r,i,o,a){let l=this.planes;return l[0].copy(e),l[1].copy(n),l[2].copy(r),l[3].copy(i),l[4].copy(o),l[5].copy(a),this}copy(e){let n=this.planes;for(let r=0;r<6;r++)n[r].copy(e.planes[r]);return this}setFromProjectionMatrix(e,n=Ii,r=!1){let i=this.planes,o=e.elements,a=o[0],l=o[1],s=o[2],u=o[3],d=o[4],h=o[5],f=o[6],g=o[7],y=o[8],_=o[9],b=o[10],S=o[11],w=o[12],v=o[13],E=o[14],C=o[15];if(i[0].setComponents(u-a,g-d,S-y,C-w).normalize(),i[1].setComponents(u+a,g+d,S+y,C+w).normalize(),i[2].setComponents(u+l,g+h,S+_,C+v).normalize(),i[3].setComponents(u-l,g-h,S-_,C-v).normalize(),r)i[4].setComponents(s,f,b,E).normalize(),i[5].setComponents(u-s,g-f,S-b,C-E).normalize();else if(i[4].setComponents(u-s,g-f,S-b,C-E).normalize(),n===Ii)i[5].setComponents(u+s,g+f,S+b,C+E).normalize();else if(n===No)i[5].setComponents(s,f,b,E).normalize();else throw new Error("THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: "+n);return this}intersectsObject(e){if(e.boundingSphere!==void 0)e.boundingSphere===null&&e.computeBoundingSphere(),of.copy(e.boundingSphere).applyMatrix4(e.matrixWorld);else{let n=e.geometry;n.boundingSphere===null&&n.computeBoundingSphere(),of.copy(n.boundingSphere).applyMatrix4(e.matrixWorld)}return this.intersectsSphere(of)}intersectsSprite(e){of.center.set(0,0,0);let n=$ne.distanceTo(e.center);return of.radius=.7071067811865476+n,of.applyMatrix4(e.matrixWorld),this.intersectsSphere(of)}intersectsSphere(e){let n=this.planes,r=e.center,i=-e.radius;for(let o=0;o<6;o++)if(n[o].distanceToPoint(r)<i)return!1;return!0}intersectsBox(e){let n=this.planes;for(let r=0;r<6;r++){let i=n[r];if(PS.x=i.normal.x>0?e.max.x:e.min.x,PS.y=i.normal.y>0?e.max.y:e.min.y,PS.z=i.normal.z>0?e.max.z:e.min.z,i.distanceToPoint(PS)<0)return!1}return!0}containsPoint(e){let n=this.planes;for(let r=0;r<6;r++)if(n[r].distanceToPoint(e)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}},Bs=new In,zs=new qa,GS=class t{constructor(){this.coordinateSystem=Ii}intersectsObject(e,n){if(!n.isArrayCamera||n.cameras.length===0)return!1;for(let r=0;r<n.cameras.length;r++){let i=n.cameras[r];if(Bs.multiplyMatrices(i.projectionMatrix,i.matrixWorldInverse),zs.setFromProjectionMatrix(Bs,i.coordinateSystem,i.reversedDepth),zs.intersectsObject(e))return!0}return!1}intersectsSprite(e,n){if(!n||!n.cameras||n.cameras.length===0)return!1;for(let r=0;r<n.cameras.length;r++){let i=n.cameras[r];if(Bs.multiplyMatrices(i.projectionMatrix,i.matrixWorldInverse),zs.setFromProjectionMatrix(Bs,i.coordinateSystem,i.reversedDepth),zs.intersectsSprite(e))return!0}return!1}intersectsSphere(e,n){if(!n||!n.cameras||n.cameras.length===0)return!1;for(let r=0;r<n.cameras.length;r++){let i=n.cameras[r];if(Bs.multiplyMatrices(i.projectionMatrix,i.matrixWorldInverse),zs.setFromProjectionMatrix(Bs,i.coordinateSystem,i.reversedDepth),zs.intersectsSphere(e))return!0}return!1}intersectsBox(e,n){if(!n||!n.cameras||n.cameras.length===0)return!1;for(let r=0;r<n.cameras.length;r++){let i=n.cameras[r];if(Bs.multiplyMatrices(i.projectionMatrix,i.matrixWorldInverse),zs.setFromProjectionMatrix(Bs,i.coordinateSystem,i.reversedDepth),zs.intersectsBox(e))return!0}return!1}containsPoint(e,n){if(!n||!n.cameras||n.cameras.length===0)return!1;for(let r=0;r<n.cameras.length;r++){let i=n.cameras[r];if(Bs.multiplyMatrices(i.projectionMatrix,i.matrixWorldInverse),zs.setFromProjectionMatrix(Bs,i.coordinateSystem,i.reversedDepth),zs.containsPoint(e))return!0}return!1}clone(){return new t}},qm=class extends ei{constructor(e){super(),this.isLineBasicMaterial=!0,this.type="LineBasicMaterial",this.color=new un(16777215),this.map=null,this.linewidth=1,this.linecap="round",this.linejoin="round",this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.linewidth=e.linewidth,this.linecap=e.linecap,this.linejoin=e.linejoin,this.fog=e.fog,this}},HS=class extends ei{constructor(e){super(),this.isPointsMaterial=!0,this.type="PointsMaterial",this.color=new un(16777215),this.map=null,this.alphaMap=null,this.size=1,this.sizeAttenuation=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.alphaMap=e.alphaMap,this.size=e.size,this.sizeAttenuation=e.sizeAttenuation,this.fog=e.fog,this}},Xa=class extends Ur{constructor(e,n,r,i,o=sn,a=sn,l,s,u){super(e,n,r,i,o,a,l,s,u),this.isVideoTexture=!0,this.generateMipmaps=!1,this._requestVideoFrameCallbackId=0;let d=this;function h(){d.needsUpdate=!0,d._requestVideoFrameCallbackId=e.requestVideoFrameCallback(h)}"requestVideoFrameCallback"in e&&(this._requestVideoFrameCallbackId=e.requestVideoFrameCallback(h))}clone(){return new this.constructor(this.image).copy(this)}update(){let e=this.image;"requestVideoFrameCallback"in e===!1&&e.readyState>=e.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}dispose(){this._requestVideoFrameCallbackId!==0&&(this.source.data.cancelVideoFrameCallback(this._requestVideoFrameCallbackId),this._requestVideoFrameCallbackId=0),super.dispose()}},Oh=class extends Ur{constructor(e,n){super({width:e,height:n}),this.isFramebufferTexture=!0,this.magFilter=An,this.minFilter=An,this.generateMipmaps=!1,this.needsUpdate=!0}},Hs=class extends Ur{constructor(e=[],n=Fo,r,i,o,a,l,s,u,d){super(e,n,r,i,o,a,l,s,u,d),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(e){this.image=e}},ps=class extends Ur{constructor(e,n,r,i,o,a,l,s,u){super(e,n,r,i,o,a,l,s,u),this.isCanvasTexture=!0,this.needsUpdate=!0}},ti=class extends Ur{constructor(e,n,r=nr,i,o,a,l=An,s=An,u,d=ui,h=1){if(d!==ui&&d!==Ei)throw new Error("DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat");let f={width:e,height:n,depth:h};super(f,i,o,a,l,s,d,r,u),this.isDepthTexture=!0,this.flipY=!1,this.generateMipmaps=!1,this.compareFunction=null}copy(e){return super.copy(e),this.source=new Ih(Object.assign({},e.image)),this.compareFunction=e.compareFunction,this}toJSON(e){let n=super.toJSON(e);return this.compareFunction!==null&&(n.compareFunction=this.compareFunction),n}},Uh=class extends ti{constructor(e,n=nr,r=Fo,i,o,a=An,l=An,s,u=ui){let d={width:e,height:e,depth:1},h=[d,d,d,d,d,d];super(e,e,n,r,i,o,a,l,s,u),this.image=h,this.isCubeDepthTexture=!0,this.isCubeTexture=!0}get images(){return this.image}set images(e){this.image=e}},Dh=class extends Ur{constructor(e=null){super(),this.sourceTexture=e,this.isExternalTexture=!0}copy(e){return super.copy(e),this.sourceTexture=e.sourceTexture,this}},$a=class t extends Wi{constructor(e=1,n=1,r=1,i=1,o=1,a=1){super(),this.type="BoxGeometry",this.parameters={width:e,height:n,depth:r,widthSegments:i,heightSegments:o,depthSegments:a};let l=this;i=Math.floor(i),o=Math.floor(o),a=Math.floor(a);let s=[],u=[],d=[],h=[],f=0,g=0;y("z","y","x",-1,-1,r,n,e,a,o,0),y("z","y","x",1,-1,r,n,-e,a,o,1),y("x","z","y",1,1,e,r,n,i,a,2),y("x","z","y",1,-1,e,r,-n,i,a,3),y("x","y","z",1,-1,e,n,r,i,o,4),y("x","y","z",-1,-1,e,n,-r,i,o,5),this.setIndex(s),this.setAttribute("position",new Qr(u,3)),this.setAttribute("normal",new Qr(d,3)),this.setAttribute("uv",new Qr(h,2));function y(_,b,S,w,v,E,C,M,R,c,m){let x=E/R,T=C/c,N=E/2,B=C/2,D=M/2,O=R+1,L=c+1,V=0,Z=0,q=new xe;for(let ae=0;ae<L;ae++){let we=ae*T-B;for(let Ae=0;Ae<O;Ae++){let Ge=Ae*x-N;q[_]=Ge*w,q[b]=we*v,q[S]=D,u.push(q.x,q.y,q.z),q[_]=0,q[b]=0,q[S]=M>0?1:-1,d.push(q.x,q.y,q.z),h.push(Ae/R),h.push(1-ae/c),V+=1}}for(let ae=0;ae<c;ae++)for(let we=0;we<R;we++){let Ae=f+we+O*ae,Ge=f+we+O*(ae+1),et=f+(we+1)+O*(ae+1),Ze=f+(we+1)+O*ae;s.push(Ae,Ge,Ze),s.push(Ge,et,Ze),Z+=6}l.addGroup(g,Z,m),g+=Z,f+=V}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new t(e.width,e.height,e.depth,e.widthSegments,e.heightSegments,e.depthSegments)}},WS=class t extends Wi{constructor(e=1,n=1,r=1,i=32,o=1,a=!1,l=0,s=Math.PI*2){super(),this.type="CylinderGeometry",this.parameters={radiusTop:e,radiusBottom:n,height:r,radialSegments:i,heightSegments:o,openEnded:a,thetaStart:l,thetaLength:s};let u=this;i=Math.floor(i),o=Math.floor(o);let d=[],h=[],f=[],g=[],y=0,_=[],b=r/2,S=0;w(),a===!1&&(e>0&&v(!0),n>0&&v(!1)),this.setIndex(d),this.setAttribute("position",new Qr(h,3)),this.setAttribute("normal",new Qr(f,3)),this.setAttribute("uv",new Qr(g,2));function w(){let E=new xe,C=new xe,M=0,R=(n-e)/r;for(let c=0;c<=o;c++){let m=[],x=c/o,T=x*(n-e)+e;for(let N=0;N<=i;N++){let B=N/i,D=B*s+l,O=Math.sin(D),L=Math.cos(D);C.x=T*O,C.y=-x*r+b,C.z=T*L,h.push(C.x,C.y,C.z),E.set(O,R,L).normalize(),f.push(E.x,E.y,E.z),g.push(B,1-x),m.push(y++)}_.push(m)}for(let c=0;c<i;c++)for(let m=0;m<o;m++){let x=_[m][c],T=_[m+1][c],N=_[m+1][c+1],B=_[m][c+1];(e>0||m!==0)&&(d.push(x,T,B),M+=3),(n>0||m!==o-1)&&(d.push(T,N,B),M+=3)}u.addGroup(S,M,0),S+=M}function v(E){let C=y,M=new mn,R=new xe,c=0,m=E===!0?e:n,x=E===!0?1:-1;for(let N=1;N<=i;N++)h.push(0,b*x,0),f.push(0,x,0),g.push(.5,.5),y++;let T=y;for(let N=0;N<=i;N++){let D=N/i*s+l,O=Math.cos(D),L=Math.sin(D);R.x=m*L,R.y=b*x,R.z=m*O,h.push(R.x,R.y,R.z),f.push(0,x,0),M.x=O*.5+.5,M.y=L*.5*x+.5,g.push(M.x,M.y),y++}for(let N=0;N<i;N++){let B=C+N,D=T+N;E===!0?d.push(D,D+1,B):d.push(D+1,D,B),c+=3}u.addGroup(S,c,E===!0?1:2),S+=c}}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new t(e.radiusTop,e.radiusBottom,e.height,e.radialSegments,e.heightSegments,e.openEnded,e.thetaStart,e.thetaLength)}},Ya=class t extends Wi{constructor(e=1,n=1,r=1,i=1){super(),this.type="PlaneGeometry",this.parameters={width:e,height:n,widthSegments:r,heightSegments:i};let o=e/2,a=n/2,l=Math.floor(r),s=Math.floor(i),u=l+1,d=s+1,h=e/l,f=n/s,g=[],y=[],_=[],b=[];for(let S=0;S<d;S++){let w=S*f-a;for(let v=0;v<u;v++){let E=v*h-o;y.push(E,-w,0),_.push(0,0,1),b.push(v/l),b.push(1-S/s)}}for(let S=0;S<s;S++)for(let w=0;w<l;w++){let v=w+u*S,E=w+u*(S+1),C=w+1+u*(S+1),M=w+1+u*S;g.push(v,E,M),g.push(E,C,M)}this.setIndex(g),this.setAttribute("position",new Qr(y,3)),this.setAttribute("normal",new Qr(_,3)),this.setAttribute("uv",new Qr(b,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new t(e.width,e.height,e.widthSegments,e.heightSegments)}},jS=class t extends Wi{constructor(e=1,n=32,r=16,i=0,o=Math.PI*2,a=0,l=Math.PI){super(),this.type="SphereGeometry",this.parameters={radius:e,widthSegments:n,heightSegments:r,phiStart:i,phiLength:o,thetaStart:a,thetaLength:l},n=Math.max(3,Math.floor(n)),r=Math.max(2,Math.floor(r));let s=Math.min(a+l,Math.PI),u=0,d=[],h=new xe,f=new xe,g=[],y=[],_=[],b=[];for(let S=0;S<=r;S++){let w=[],v=S/r,E=0;S===0&&a===0?E=.5/n:S===r&&s===Math.PI&&(E=-.5/n);for(let C=0;C<=n;C++){let M=C/n;h.x=-e*Math.cos(i+M*o)*Math.sin(a+v*l),h.y=e*Math.cos(a+v*l),h.z=e*Math.sin(i+M*o)*Math.sin(a+v*l),y.push(h.x,h.y,h.z),f.copy(h).normalize(),_.push(f.x,f.y,f.z),b.push(M+E,1-v),w.push(u++)}d.push(w)}for(let S=0;S<r;S++)for(let w=0;w<n;w++){let v=d[S][w+1],E=d[S][w],C=d[S+1][w],M=d[S+1][w+1];(S!==0||a>0)&&g.push(v,E,M),(S!==r-1||s<Math.PI)&&g.push(E,C,M)}this.setIndex(g),this.setAttribute("position",new Qr(y,3)),this.setAttribute("normal",new Qr(_,3)),this.setAttribute("uv",new Qr(b,2))}copy(e){return super.copy(e),this.parameters=Object.assign({},e.parameters),this}static fromJSON(e){return new t(e.radius,e.widthSegments,e.heightSegments,e.phiStart,e.phiLength,e.thetaStart,e.thetaLength)}},qS=class extends ei{constructor(e){super(),this.isShadowMaterial=!0,this.type="ShadowMaterial",this.color=new un(0),this.transparent=!0,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.fog=e.fog,this}};fF={clone:If,merge:$i},Zne=`void main() {
3
3
  gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
4
4
  }`,Kne=`void main() {
@@ -4546,4 +4546,4 @@ The element must be a direct child of a <canvas layoutsubtree>.`,b),g=!0)}}}}),n
4546
4546
  Requested URL: ${c}
4547
4547
  Resolved URL: ${m}
4548
4548
  Path type: ${T?"relative":"absolute"}
4549
- Error:`,x),a=!1})}catch(m){console.error("[ImageTexture] Error initiating image load:",m),a=!1}}};setTimeout(()=>{let c=t?.url?.uniform?.value??"";c&&c.trim()!==""&&_(c)},0),n(()=>{let c=t?.url?.uniform?.value??"";c!==o&&!a&&_(c)}),e(()=>{l.dispose()});let b=r,S=$.x.div($.y),w=t.objectFit.uniform.value,v;switch(w){case 1:{let c=_n(S.div(u),p(1));v=I(u.div(S).mul(c),c);break}case 2:v=I(1,1);break;case 3:{let c=_n(_n(S.div(u),p(1)),_n($.x.div(d),$.y.div(h)));v=I(u.div(S).mul(c),c);break}case 4:{let c=_n($.x.div(d),$.y.div(h));v=I(u.div(S).mul(c),c);break}default:{let c=Pt(S.div(u),p(1));v=I(u.div(S).mul(c),c);break}}let E=b.sub(I(.5)).div(v).add(I(.5)),C=I(E.x,p(1).sub(E.y)),M=s.sample(C),R=uo(uo(C.x.lessThan(0),C.x.greaterThan(1)),uo(C.y.lessThan(0),C.y.greaterThan(1)));return F(M.rgb,fo(R,p(0),M.a))}}});var vl,I9=z(()=>{"use strict";ut();vl={name:"Invert",category:"Adjustments",description:"Invert RGB colors while preserving alpha",requiresChild:!0,props:{},fragmentNode:({childNode:t})=>{if(!t)return console.error("You must pass a child component into the Invert shader."),F(0);let e=t||F(0,0,0,0);return F(_e(1,1,1).sub(e.rgb),e.a)}}});var xl,N9=z(()=>{"use strict";gi();Dt();Wn();ut();xl={name:"Kaleidoscope",category:"Distortions",description:"Create a kaleidoscope effect with radial mirrored segments",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:wt,description:"The center point of the kaleidoscope effect",ui:{type:"position",label:"Center",group:"Position"}},segments:{default:6,description:"Number of radial segments in the kaleidoscope",ui:{type:["range","map"],min:2,max:24,step:1,label:"Segments",group:"Effect"}},angle:{default:0,description:"Rotation offset for the entire kaleidoscope pattern",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},edges:{default:"mirror",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=$.x.div($.y),o=I(j.x.mul(i),j.y),a=I(t.center.uniform.x.mul(i),t.center.uniform.y.oneMinus()),l=o.sub(a),s=Vn(l),u=Qn(l.y,l.x),d=t.angle.uniform.mul(Math.PI/180),h=u.add(d),f=p(Math.PI*2).div(t.segments.uniform),g=pr(h,f.mul(2)),y=g.greaterThan(f).select(f.mul(2).sub(g),g),_=I(Ye(y).mul(s),fe(y).mul(s)),b=a.add(_),S=I(b.x.div(i),b.y);return Vt(Ln(S,r.sample(S),r,t.edges.uniform.value))}}});var Xye,bl,O9=z(()=>{"use strict";Dt();gr();ut();Xye=qe(([t])=>{let e=p(6.2831853);return _e(Ye(e.mul(t)).mul(.5).add(.5),Ye(e.mul(t.sub(.333))).mul(.5).add(.5),Ye(e.mul(t.sub(.666))).mul(.5).add(.5))}),bl={name:"LensFlare",category:"Stylize",description:"Realistic camera lens flare with artifacts.",props:{lightPosition:{default:{x:.3,y:.3},transform:wt,description:"Position of the light source",ui:{type:"position",label:"Light Position",group:"Light"}},intensity:{default:.5,description:"Master brightness of the entire lens flare effect",ui:{type:["range","map"],min:0,max:2,step:.01,label:"Intensity",group:"Light"}},ghostIntensity:{default:.4,description:"Brightness of internal reflection ghost discs along the flare axis",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Ghosts",group:"Reflections"}},ghostSpread:{default:.7,description:"Spacing between ghost reflections along the flare axis",ui:{type:"range",min:.1,max:2,step:.01,label:"Ghost Spread",group:"Reflections"}},ghostChroma:{default:.3,description:"Rainbow chromatic fringing around ghost element edges",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Ghost Chroma",group:"Reflections"}},haloIntensity:{default:.4,description:"Brightness of the circular halo ring from internal reflection",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Halo",group:"Reflections"}},haloRadius:{default:.6,description:"Radius of the halo ring",ui:{type:"range",min:.1,max:1,step:.01,label:"Halo Size",group:"Reflections"}},haloChroma:{default:.6,description:"Spectral dispersion on the halo creating rainbow color separation",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Halo Chroma",group:"Reflections"}},haloSoftness:{default:.8,description:"Thickness and softness of the halo ring",ui:{type:["range","map"],min:.01,max:3,step:.01,label:"Halo Softness",group:"Reflections"}},starburstIntensity:{default:.3,description:"Brightness of diffraction spikes radiating from the light source",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Starburst",group:"Effects"}},starburstPoints:{default:6,description:"Number of starburst spikes (simulates aperture blade count)",ui:{type:["range","map"],min:4,max:16,step:1,label:"Blades",group:"Effects"}},streakIntensity:{default:.15,description:"Brightness of horizontal anamorphic light streak",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Streak",group:"Effects"}},streakLength:{default:.5,description:"Horizontal extent of the anamorphic streak",ui:{type:["range","map"],min:.1,max:1,step:.01,label:"Streak Length",group:"Effects"}},glareIntensity:{default:.2,description:"Soft veiling glare that washes out contrast around the light",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Glare",group:"Effects"}},glareSize:{default:.5,description:"Size of the soft glare glow",ui:{type:["range","map"],min:.1,max:1,step:.01,label:"Glare Size",group:"Effects"}},edgeFade:{default:.2,description:"How much the flare fades when the light source is near the screen edge (0 = no fade, 1 = heavy fade)",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Edge Fade",group:"Light"}},speed:{default:.5,description:"Speed of subtle flare shimmer and starburst rotation",ui:{type:"range",min:0,max:3,step:.1,label:"Speed",group:"Animation"}}},fragmentNode:t=>{let{uniforms:e}=t,n=e.intensity.uniform,r=e.ghostIntensity.uniform,i=e.ghostSpread.uniform,o=e.ghostChroma.uniform,a=e.haloIntensity.uniform,l=e.haloRadius.uniform,s=e.haloChroma.uniform,u=e.haloSoftness.uniform,d=e.starburstIntensity.uniform,h=e.starburstPoints.uniform,f=e.streakIntensity.uniform,g=e.streakLength.uniform,y=e.glareIntensity.uniform,_=e.glareSize.uniform,b=$.x.div($.y),S=j,w=I(e.lightPosition.uniform.x,e.lightPosition.uniform.y.oneMinus()),v=I(.5,.5).sub(w),E=fn(t,e.speed),C=fe(E.mul(3.7)).mul(.04).add(fe(E.mul(7.3)).mul(.03)).add(fe(E.mul(13.1)).mul(.02)).add(.97),M=e.edgeFade.uniform,R=Pt(Et(w.x.sub(.5)).mul(2),Et(w.y.sub(.5)).mul(2)),c=p(1).sub(M.mul(.5)),m=Re(p(1),Oe(c,p(1),R).oneMinus(),M),x=n.mul(m).mul(C),T=I(S.x.sub(w.x).mul(b),S.y.sub(w.y)),N=T.length(),B=[{offset:.15,size:.2,bright:.3,hollow:.1,r:1,g:.95,b:.9},{offset:.3,size:.12,bright:.25,hollow:.65,r:1,g:.85,b:.55},{offset:.5,size:.08,bright:.35,hollow:.15,r:.62,g:.82,b:1},{offset:.72,size:.14,bright:.18,hollow:.75,r:.75,g:1,b:.7},{offset:.95,size:.06,bright:.3,hollow:0,r:1,g:.6,b:.85},{offset:1.25,size:.1,bright:.15,hollow:.8,r:.55,g:.88,b:1},{offset:1.55,size:.07,bright:.2,hollow:.25,r:1,g:.92,b:.6}],D=_e(0,0,0);for(let H=0;H<B.length;H++){let Q=B[H],se=w.add(v.mul(p(Q.offset).mul(i).mul(2))),Te=I(S.x.sub(se.x).mul(b),S.y.sub(se.y)).length(),Ie=p(Q.size),J=Oe(Ie.mul(.12),Ie,Te).oneMinus(),ee=Oe(Ie.mul(.05),Ie.mul(.45),Te).oneMinus(),Se=J.mul(p(1).sub(ee.mul(p(Q.hollow)))),Je=p(H*2.17),Fe=fe(E.mul(4.3).add(Je)).mul(.08).add(fe(E.mul(9.1).add(Je.mul(1.7))).mul(.05)).add(.95),Qe=Ie.mul(.78),Nt=Ie.mul(o).mul(.14),Ot=Ie.mul(.1),en=Oe(p(0),Ot,Et(Te.sub(Qe.add(Nt)))).oneMinus(),ne=Oe(p(0),Ot,Et(Te.sub(Qe))).oneMinus(),st=Oe(p(0),Ot,Et(Te.sub(Qe.sub(Nt)))).oneMinus(),ze=p(Q.bright).mul(r).mul(Fe),Rt=_e(Se.mul(p(Q.r)).add(en.mul(o)).mul(ze),Se.mul(p(Q.g)).add(ne.mul(o)).mul(ze),Se.mul(p(Q.b)).add(st.mul(o)).mul(ze));D=D.add(Rt)}let O=I(p(1).sub(w.x),p(1).sub(w.y)),L=I(S.x.sub(O.x).mul(b),S.y.sub(O.y)),V=L.length(),Z=l.mul(s).mul(.06),q=u.mul(.12).add(.005),ae=Oe(p(0),q,Et(V.sub(l.add(Z)))).oneMinus(),we=Oe(p(0),q,Et(V.sub(l))).oneMinus(),Ae=Oe(p(0),q,Et(V.sub(l.sub(Z)))).oneMinus(),Ge=fe(Qn(L.y,L.x).mul(3).add(E.mul(.5))).mul(.12).add(.88),et=_e(ae,we,Ae).mul(a).mul(Ge),Ze=Qn(T.y,T.x),he=Qn(v.y,v.x.mul(b)).mul(.5).add(E.mul(.06)),Me=Ze.add(he),Pe=Bt(Et(Ye(Me.mul(h.div(2)))),p(3.5)),We=Bt(Et(Ye(Me.add(.25).mul(h.div(2)))),p(7)).mul(.4),Xe=p(1).div(p(1).add(N.mul(N).mul(60))),le=Xye(Me.div(p(6.2831853)).add(.5)),rt=Re(_e(1,.97,.92),le,p(.12)),De=Pe.add(We).mul(Xe).mul(d).mul(rt),K=Et(S.y.sub(w.y)),be=Et(S.x.sub(w.x)),Ee=p(-800).mul(K).mul(K).exp(),Be=g.mul(g).mul(.25).add(.001),Ke=p(-1).mul(be).mul(be).div(Be.mul(.7)).exp(),ct=p(-1).mul(be).mul(be).div(Be).exp(),X=p(-1).mul(be).mul(be).div(Be.mul(1.4)).exp(),at=_e(Ee.mul(Ke).mul(.5),Ee.mul(ct).mul(.65),Ee.mul(X).mul(.9)).mul(f),nt=p(1).div(_.mul(_).add(.01)),Ct=p(-1).mul(N).mul(N).mul(nt).exp().mul(y).mul(_e(1,.98,.95)),me=p(-500).mul(N).mul(N).exp(),ke=Oe(p(0),p(.025),N).oneMinus(),k=me.add(ke.mul(1.5)).mul(_e(1,.98,.96)).mul(n),P=D.add(et).add(De).add(at).add(Ct).add(k).mul(x);return F(P,Tt(kt(P,_e(.299,.587,.114)).mul(2),0,1))}}});var U9,$ye,Yye,_l,D9=z(()=>{"use strict";Dt();Wn();ut();U9=Array.from({length:32},(t,e)=>{let n=(e/31-.5)*2;return Math.exp(-.5*n*n/.64)}),$ye=U9.reduce((t,e)=>t+e),Yye=U9.map(t=>t/$ye),_l={name:"LinearBlur",category:"Blurs",description:"Directional motion blur in a specific angle",requiresRTT:!0,requiresChild:!0,props:{intensity:{default:30,description:"Intensity of the linear blur effect",ui:{type:["range","map"],min:0,max:100,step:1,label:"Intensity",group:"Effect"}},angle:{default:0,transform:sr,description:"Direction of the linear blur (in degrees)",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=qr(t.angle.uniform),o=$.x.div($.y),a=I(Ye(i).div(o),fe(i));return qe(()=>{let l=j,s=a.mul(t.intensity.uniform).div($).mul(2),u=F(0).toVar();for(let d=0;d<32;d++){let h=l.add(s.mul(d/31-.5));u.assign(u.add(r.sample(h).mul(p(Yye[d]))))}return Vt(u)})()}}});var Sl,F9=z(()=>{"use strict";Dt();On();ut();Sl={name:"LinearGradient",category:"Textures",description:"Create smooth linear color gradients",props:{colorA:{default:"#1aff00",transform:Ce,description:"The starting color of the gradient",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#0000ff",transform:Ce,description:"The ending color of the gradient",ui:{type:"color",label:"Color B",group:"Colors"}},start:{default:{x:0,y:.5},transform:wt,description:"The starting point of the gradient",ui:{type:"position",label:"Start",group:"Position"}},end:{default:{x:1,y:.5},transform:wt,description:"The ending point of the gradient",ui:{type:"position",label:"End",group:"Position"}},angle:{default:0,transform:sr,description:"Additional rotation angle of the gradient (in degrees)",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},edges:{default:"stretch",transform:Bn,compileTime:!0,description:"How to handle areas beyond the gradient endpoints",ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=I(t.start.uniform[0],t.start.uniform[1].oneMinus()),r=I(t.end.uniform[0],t.end.uniform[1].oneMinus()),i=r.sub(n),o=Vn(i),a=wo(i),l=$.y.max(1e-6),s=$.x.div(l),u=qr(t.angle.uniform).negate(),d=Ye(u),h=fe(u),f=n.add(r).mul(.5),g=e.sub(f),y=I(g.x.mul(s),g.y),_=I(y.x.mul(d).sub(y.y.mul(h)),y.x.mul(h).add(y.y.mul(d))),b=kt(I(_.x.div(s),_.y).add(f).sub(n),a).div(o.max(1e-6)),S=t.edges.uniform.value,w;switch(S){case 1:w=b;break;case 2:{let C=pr(Et(b),p(2));w=C.greaterThan(p(1)).select(p(2).sub(C),C);break}case 3:w=St(b);break;default:w=b.clamp(p(0),p(1))}let v=Lt(t.colorA.uniform,t.colorB.uniform,w.clamp(p(0),p(1)),t.colorSpace.uniform.value),E;if(S===1){let C=b.greaterThanEqual(p(0)).select(p(1),p(0)),M=b.lessThanEqual(p(1)).select(p(1),p(0)),R=C.mul(M);E=v.w.mul(R)}else E=v.w;return F(v.x,v.y,v.z,E)}}});var bn,wl,L9=z(()=>{"use strict";gi();Dt();Wn();Li();Bi();ut();bn=64,wl={name:"Liquify",category:"Interactive",description:"Liquid-like interactive deformation effect",requiresRTT:!0,requiresChild:!0,usesPointer:!0,props:{intensity:{default:10,description:"Scale of the fabric displacement effect",ui:{type:["range","map"],min:0,max:20,step:.1,label:"Intensity",group:"Effect"}},stiffness:{default:3,description:"Fabric rigidity (higher = stiffer canvas, lower = stretchy silk)",ui:{type:"range",min:1,max:30,step:.5,label:"Stiffness",group:"Effect"}},damping:{default:3,description:"How quickly fabric motion settles",ui:{type:"range",min:0,max:10,step:.1,label:"Damping",group:"Effect"}},radius:{default:1,description:"Cursor influence area",ui:{type:"range",min:.1,max:1.5,step:.1,label:"Radius",group:"Effect"}},edges:{default:"stretch",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},computeNode:({uniforms:t,onCleanup:e})=>{let n=br(bn*bn,"vec4"),r=br(bn*bn,"vec4"),i=new Nr(bn,bn);i.type=on;let o=Er(i);e(()=>{i.dispose()});let a=oe(.5),l=oe(.5),s=oe(0),u=oe(0),d=oe(0),h=oe(.016),f=oe(.008),g=oe(3),y=oe(.97),_=oe(.08),b=oe(1),S=Tn(bn),w=Tn(bn-1),v=(N,B)=>qe(()=>{let D=Kt,O=D.mod(S),L=D.div(S);Pn(L.greaterThan(Tn(0)).and(L.lessThan(w)).and(O.greaterThan(Tn(0))).and(O.lessThan(w)),()=>{let V=N.element(D),Z=V.x,q=V.y,ae=V.z,we=V.w,Ae=D.sub(Tn(1)),Ge=D.add(Tn(1)),et=D.sub(S),Ze=D.add(S),he=D.sub(S).sub(Tn(1)),Me=D.sub(S).add(Tn(1)),Pe=D.add(S).sub(Tn(1)),We=D.add(S).add(Tn(1)),Xe=g.mul(N.element(Ae).x.sub(Z).add(N.element(Ge).x.sub(Z)).add(N.element(et).x.sub(Z)).add(N.element(Ze).x.sub(Z))).toVar(),le=g.mul(N.element(Ae).y.sub(q).add(N.element(Ge).y.sub(q)).add(N.element(et).y.sub(q)).add(N.element(Ze).y.sub(q))).toVar(),rt=g.mul(p(.35));Xe.assign(Xe.add(rt.mul(N.element(he).x.sub(Z).add(N.element(Me).x.sub(Z)).add(N.element(Pe).x.sub(Z)).add(N.element(We).x.sub(Z))))),le.assign(le.add(rt.mul(N.element(he).y.sub(q).add(N.element(Me).y.sub(q)).add(N.element(Pe).y.sub(q)).add(N.element(We).y.sub(q))))),Xe.assign(Xe.sub(g.mul(p(.1)).mul(Z))),le.assign(le.sub(g.mul(p(.1)).mul(q)));let De=ae.mul(y).add(Xe.mul(f)).toVar(),K=we.mul(y).add(le.mul(f)).toVar();Pn(d.greaterThan(p(.01)),()=>{let Be=O.toFloat().add(p(.5)).div(p(bn)),Ke=L.toFloat().add(p(.5)).div(p(bn)),ct=b.greaterThanEqual(p(1)).select(Be.sub(a).mul(b),Be.sub(a)),X=b.greaterThanEqual(p(1)).select(Ke.sub(l),Ke.sub(l).div(b)),at=ct.mul(ct).add(X.mul(X)),nt=_.mul(p(3));Pn(at.lessThan(nt.mul(nt)),()=>{let Ct=at.negate().div(_.mul(_)).exp().mul(d).mul(h).mul(p(2));De.assign(De.add(s.mul(Ct))),K.assign(K.add(u.mul(Ct)))})});let be=Z.add(De.mul(f)).clamp(p(-.5),p(.5)),Ee=q.add(K.mul(f)).clamp(p(-.5),p(.5));B.element(D).assign(F(be,Ee,De,K))})})().compute(bn*bn,[256]),E=N=>qe(()=>{let B=Kt,D=B.mod(S),O=B.div(S),L=N.element(B);er(o,En(D,O),F(L.x,L.y,p(0),p(1))).toWriteOnly()})().compute(bn*bn,[256]),C=v(n,r),M=v(r,n),R=E(n),c=.5,m=.5,x=Date.now(),T=Date.now();return{outputs:{displacement:i},getComputeNodes:N=>{let B=Date.now(),D=Math.min((B-x)/1e3,.016);if(x=B,D<=0)return null;let O=Math.max(1,N.dimensions.width)/Math.max(1,N.dimensions.height),L=t.stiffness.uniform.value,V=t.damping.uniform.value,Z=t.radius.uniform.value*.08,q=(N.pointer.x-c)/D,ae=(N.pointer.y-m)/D,we=Math.sqrt(q*q+ae*ae),Ae=Math.min(we,3);c=N.pointer.x,m=N.pointer.y,Ae>.01&&(T=B);let Ge=t.damping.uniform.value,et=Ge>0?Math.min(3e4,5e3/Ge):3e4;if(B-T>et)return null;let Ze=D/2;return a.value=N.pointer.x,l.value=N.pointer.y,s.value=we>.01?q/we:0,u.value=we>.01?ae/we:0,d.value=Ae,h.value=D,f.value=Ze,g.value=L,y.value=Math.max(0,Math.min(1,1-V*Ze)),_.value=Z,b.value=O,[C,M,R]}}},fragmentNode:({uniforms:t,onBeforeRender:e,childNode:n,onCleanup:r,computeOutputs:i})=>{if(!n)return F(0,0,0,0);let o=i?.childTexture??It(n);i||r(()=>{o?.renderTarget?.dispose&&o.renderTarget.dispose()});let a;if(i?.displacement)o.sample(j),a=vn(i.displacement).sample(j).xy;else{let f=new Float32Array(bn*bn),g=new Float32Array(bn*bn),y=new Float32Array(bn*bn),_=new Float32Array(bn*bn),b=new Float32Array(bn*bn),S=new Float32Array(bn*bn),w=new Float32Array(bn*bn),v=new Float32Array(bn*bn),E=new Float32Array(bn*bn*2),C=new ir(E,bn,bn,Tr,on);C.magFilter=sn,C.minFilter=sn,C.needsUpdate=!0;let M=vn(C),R=.5,c=.5,m=Date.now(),x=2;e(({pointer:T,dimensions:N})=>{let B=Date.now(),D=Math.min((B-m)/1e3,.016);if(m=B,D<=0)return;let O=Math.max(1,N.width)/Math.max(1,N.height),L=t.stiffness.uniform.value,V=t.damping.uniform.value,Z=t.radius.uniform.value*.08,q=(T.x-R)/D,ae=(T.y-c)/D,we=Math.sqrt(q*q+ae*ae),Ae=Math.min(we,3),Ge=0,et=0;we>.01&&(Ge=q/we,et=ae/we);let Ze=D/x;for(let he=0;he<x;he++){if(he===0&&Ae>.01){let We=Z*3,Xe=Math.max(1,Math.floor((T.y-We)*bn)),le=Math.min(bn-2,Math.ceil((T.y+We)*bn)),rt=Math.max(1,Math.floor((T.x-We)*bn)),De=Math.min(bn-2,Math.ceil((T.x+We)*bn));for(let K=Xe;K<=le;K++)for(let be=rt;be<=De;be++){let Ee=K*bn+be,Be=(be+.5)/bn,Ke=(K+.5)/bn,ct=O>=1?(Be-T.x)*O:Be-T.x,X=O>=1?Ke-T.y:(Ke-T.y)/O,at=Math.sqrt(ct*ct+X*X);if(at<We){let nt=Math.exp(-at*at/(Z*Z))*Ae*D*2;y[Ee]+=Ge*nt,_[Ee]+=et*nt}}}let Me=Math.max(0,Math.min(1,1-V*Ze)),Pe=L*.35;b.set(y),S.set(_),w.set(f),v.set(g);for(let We=1;We<bn-1;We++)for(let Xe=1;Xe<bn-1;Xe++){let le=We*bn+Xe,rt=0,De=0,K=le-1,be=le+1,Ee=le-bn,Be=le+bn;rt+=L*(f[K]-f[le]),rt+=L*(f[be]-f[le]),rt+=L*(f[Ee]-f[le]),rt+=L*(f[Be]-f[le]),De+=L*(g[K]-g[le]),De+=L*(g[be]-g[le]),De+=L*(g[Ee]-g[le]),De+=L*(g[Be]-g[le]);let Ke=le-bn-1,ct=le-bn+1,X=le+bn-1,at=le+bn+1;rt+=Pe*(f[Ke]-f[le]),rt+=Pe*(f[ct]-f[le]),rt+=Pe*(f[X]-f[le]),rt+=Pe*(f[at]-f[le]),De+=Pe*(g[Ke]-g[le]),De+=Pe*(g[ct]-g[le]),De+=Pe*(g[X]-g[le]),De+=Pe*(g[at]-g[le]),rt-=L*.1*f[le],De-=L*.1*g[le],b[le]=y[le]*Me+rt*Ze,S[le]=_[le]*Me+De*Ze,w[le]=f[le]+b[le]*Ze,v[le]=g[le]+S[le]*Ze,w[le]=Math.max(-.5,Math.min(.5,w[le])),v[le]=Math.max(-.5,Math.min(.5,v[le]))}y.set(b),_.set(S),f.set(w),g.set(v)}for(let he=0;he<bn;he++)for(let Me=0;Me<bn;Me++){let Pe=he*bn+Me,We=Pe*2;E[We]=f[Pe],E[We+1]=g[Pe]}C.needsUpdate=!0,R=T.x,c=T.y}),r(()=>{C.dispose()}),a=M.sample(j).xy}let l=t.intensity.uniform.mul(.1),s=a.mul(l),u=p(.15),d=s.clamp(I(u.negate(),u.negate()),I(u,u)),h=j.sub(d);return Vt(Ln(h,o.sample(h),o,t.edges.uniform.value))}}});var Ml,k9=z(()=>{"use strict";Dt();On();gr();ut();Ml={name:"Marble",category:"Textures",description:"Classic marble swirl and vein texture using noise-warped sine waves",props:{colorA:{default:"#ffffff",transform:Ce,description:"Base background color of the marble",ui:{type:"color",label:"Base",group:"Colors"}},colorB:{default:"#3a2d54",transform:Ce,description:"Secondary marble tone",ui:{type:"color",label:"Tone",group:"Colors"}},colorC:{default:"#0f0f0f",transform:Ce,description:"Deepest marble color",ui:{type:"color",label:"Depth",group:"Colors"}},scale:{default:2,description:"Scale and density of the marble vein pattern",ui:{type:["range","map"],min:.1,max:10,step:.1,label:"Scale",group:"Effect"}},turbulence:{default:10,description:"Amount of noise-driven distortion applied to the veins",ui:{type:["range","map"],min:0,max:50,step:.5,label:"Turbulence",group:"Effect"}},speed:{default:.05,description:"Animation speed",ui:{type:"range",min:0,max:.25,step:.005,label:"Speed",group:"Animation"}},seed:{default:0,description:"Random seed for pattern variation",ui:{type:["range","map"],min:0,max:100,step:1,label:"Seed",group:"Effect"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=$.x.div($.y),i=n.x.mul(r),o=n.y,a=fn(t,e.speed),l=e.scale.uniform,s=e.seed.uniform,u=Dn(I(i.mul(l).add(s),o.mul(l).add(a))),d=Dn(I(i.mul(l).mul(2).add(s.mul(1.7)),o.mul(l).mul(2).add(a.mul(.7)))).mul(.5),h=Dn(I(i.mul(l).mul(4).add(s.mul(3.1)),o.mul(l).mul(4).add(a.mul(1.3)))).mul(.25),f=u.add(d).add(h),g=e.turbulence.uniform,y=fe(i.mul(l).mul(p(Math.PI)).add(f.mul(g))).mul(.5).add(.5),_=Dn(I(o.mul(l).mul(1.5).add(s.mul(2)),i.mul(l).mul(1.2))).mul(.3).add(.5),b=Oe(p(.3),p(.6),y),S=Oe(p(.6),p(.9),y),w=Lt(Lt(e.colorA.uniform,e.colorB.uniform,b,e.colorSpace.uniform.value),e.colorC.uniform,S.mul(_),e.colorSpace.uniform.value);return F(w.rgb,w.a)}}});var Tl,B9=z(()=>{"use strict";gi();Dt();Wn();ut();Tl={name:"Mirror",category:"Distortions",description:"Mirror content across a line defined by center point and angle",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:wt,description:"The point the mirror line passes through",ui:{type:"position",label:"Center",group:"Position"}},angle:{default:0,description:"The angle of the mirror line in degrees",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},edges:{default:"mirror",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=$.x.div($.y),o=I(j.x.mul(i),j.y),a=I(t.center.uniform.x.mul(i),t.center.uniform.y.oneMinus()),l=o.sub(a),s=t.angle.uniform.mul(Math.PI/180),u=I(Ye(s),fe(s)),d=I(u.y.negate(),u.x),h=l.dot(d),f=l.sub(d.mul(h.mul(2))),g=a.add(f),y=I(g.x.div(i),g.y),_=yn(0,h);return Vt(Re(r.sample(j),Ln(y,r.sample(y),r,t.edges.uniform.value),_))}}});var Cl,z9=z(()=>{"use strict";Dt();ut();Cl={name:"MultiPointGradient",category:"Textures",description:"Five individually placed color points blended together by proximity \u2014 drag each point to shape the gradient",props:{colorA:{default:"#4776E6",transform:Ce,description:"Color of control point A",ui:{type:"color",label:"Color",group:"Point A"}},positionA:{default:{x:.2,y:.2},transform:wt,description:"Position of control point A",ui:{type:"position",label:"Position",group:"Point A"}},colorB:{default:"#C44DFF",transform:Ce,description:"Color of control point B",ui:{type:"color",label:"Color",group:"Point B"}},positionB:{default:{x:.8,y:.2},transform:wt,description:"Position of control point B",ui:{type:"position",label:"Position",group:"Point B"}},colorC:{default:"#1ABC9C",transform:Ce,description:"Color of control point C",ui:{type:"color",label:"Color",group:"Point C"}},positionC:{default:{x:.2,y:.8},transform:wt,description:"Position of control point C",ui:{type:"position",label:"Position",group:"Point C"}},colorD:{default:"#F8BBD9",transform:Ce,description:"Color of control point D",ui:{type:"color",label:"Color",group:"Point D"}},positionD:{default:{x:.8,y:.8},transform:wt,description:"Position of control point D",ui:{type:"position",label:"Position",group:"Point D"}},colorE:{default:"#FF8C42",transform:Ce,description:"Color of control point E",ui:{type:"color",label:"Color",group:"Point E"}},positionE:{default:{x:.5,y:.5},transform:wt,description:"Position of control point E",ui:{type:"position",label:"Position",group:"Point E"}},smoothness:{default:2,description:"Controls how smoothly colors blend.",ui:{type:["range","map"],min:0,max:5,step:.05,label:"Smoothness",group:"Effect"}}},fragmentNode:({uniforms:t})=>{let e=t.smoothness.uniform,n=$.x.div($.y),r=I(j.x.mul(n),j.y),i=[{color:t.colorA.uniform,pos:I(t.positionA.uniform.x.mul(n),t.positionA.uniform.y.oneMinus())},{color:t.colorB.uniform,pos:I(t.positionB.uniform.x.mul(n),t.positionB.uniform.y.oneMinus())},{color:t.colorC.uniform,pos:I(t.positionC.uniform.x.mul(n),t.positionC.uniform.y.oneMinus())},{color:t.colorD.uniform,pos:I(t.positionD.uniform.x.mul(n),t.positionD.uniform.y.oneMinus())},{color:t.colorE.uniform,pos:I(t.positionE.uniform.x.mul(n),t.positionE.uniform.y.oneMinus())}];return qe(()=>{let o=_e(0).toVar(),a=p(0).toVar(),l=p(0).toVar();for(let{color:s,pos:u}of i){let d=r.x.sub(u.x),h=r.y.sub(u.y),f=Sn(d.mul(d).add(h.mul(h))).add(p(.001)),g=p(8).div(e.add(p(.5))).min(p(8)),y=p(1).div(Bt(f,g));o.assign(o.add(s.rgb.mul(y))),a.assign(a.add(s.a.mul(y))),l.assign(l.add(y))}return F(o.div(l),a.div(l))})()}}});function V9(t,e,n){return qe(()=>{let r=j,i=$.x.div($.y),o=I(e.center.uniform.x,e.center.uniform.y.oneMinus()),a=e.scale.uniform,l=I(r.x.sub(o.x).mul(i).div(a).add(p(.5)),r.y.sub(o.y).div(a).add(p(.5))),s=e.cornerSmoothing.uniform,u=p(.008).add(s.mul(p(.03))),d=t(l).r,h=t(l.add(I(u,p(0)))).r,f=t(l.sub(I(u,p(0)))).r,g=t(l.add(I(p(0),u))).r,y=t(l.sub(I(p(0),u))).r,_=h.sub(f).div(u.mul(p(2))),b=g.sub(y).div(u.mul(p(2))),S=Re(d,d.add(h).add(f).add(g).add(y).div(p(5)),s),w=p(1).div($.y),v=e.glowRadius.uniform.max(p(.001)),E=Pt(w.div(a),p(.004)),C=F(0).toVar();return Pn(S.greaterThan(v.mul(p(1.5)).add(E)),()=>{C.assign(F(0,0,0,0))}).Else(()=>{let M=Sn(_.mul(_).add(b.mul(b))).max(p(1e-4)),R=_.div(M),c=b.div(M),m=e.tubeThickness.uniform,x=Tt(S.negate().div(m.max(p(.001))),p(0),p(1)),T=Oe(E,E.negate(),S),N=Oe(m.add(E),m.sub(E),S.negate()),B=T.mul(N),D=x,O=Sn(D.mul(p(2).sub(D)).max(p(0))),L=p(1).sub(D),V=R.mul(L),Z=c.mul(L),q=O,ae=e.lightAngle.uniform.mul(p(Math.PI/180)),we=Ye(ae),Ae=fe(ae),Ge=we.mul(p(zg)),et=Ae.mul(p(zg)),Ze=p(G9),he=Tt(V.mul(Ge).add(Z.mul(et)).add(q.mul(Ze)),p(0),p(1)),Me=V.mul(Ge.mul(p($I))).add(Z.mul(et.mul(p($I)))).add(q.mul(p(ZI*$I))),Pe=_m(p(8).sub(e.specularSize.uniform.mul(p(7)))),We=Bt(Tt(Me,p(0),p(1)),Pe).mul(e.specularIntensity.uniform),Xe=l.x.sub(p(.5)),le=fe(Qn(l.y.sub(p(.5)),Xe).mul(p(2)).add(n.mul(e.flowSpeed.uniform))).mul(p(.5)).add(p(.5)),rt=Re(p(1),le,e.flowAmount.uniform),De=_e(e.color.uniform.x,e.color.uniform.y,e.color.uniform.z),K=_e(e.secondaryColor.uniform.x,e.secondaryColor.uniform.y,e.secondaryColor.uniform.z),be=e.secondaryBlend.uniform,Ee=Re(De,Re(K,De,he),be),Be=p(.12),Ke=O.mul(p(.35)),ct=Ee.mul(Be.add(he.mul(p(.55))).add(Ke)),X=_e(We,We,We),at=ct.add(X),nt=Oe(p(.55),p(1),x).mul(e.hotCoreIntensity.uniform).mul(rt),Ct=Re(at,Re(De,_e(1,1,1),p(.75)),nt).mul(Re(p(1),rt,p(.4))),me=e.glowIntensity.uniform,ke=Pt(S,p(0)),k=p(12).div(v),P=ki(ke.negate().mul(k)).mul(p(.7)),H=p(4).div(v),Q=ki(ke.negate().mul(H)).mul(p(.35)),se=P.add(Q).mul(me),Te=Oe(p(-.003),p(.003),S),Ie=se.mul(Te),J=_e(e.glowColor.uniform.x,e.glowColor.uniform.y,e.glowColor.uniform.z),ee=n.mul(e.flickerSpeed.uniform),Se=fe(ee.mul(p(17.13))),Je=fe(ee.mul(p(31.71))),Fe=fe(ee.mul(p(47.29))),Qe=Se.add(Je.mul(p(.5))).add(Fe.mul(p(.3))),Nt=Re(p(-2),p(.8),e.flickerAmount.uniform),Ot=Oe(Nt.sub(p(.1)),Nt.add(p(.1)),Qe),en=e.intensity.uniform.mul(Ot),ne=Ct.mul(en),st=J.mul(Ie).mul(en),ze=Re(st.x,ne.x,B),Rt=Re(st.y,ne.y,B),At=Re(st.z,ne.z,B),dt=Pt(B,Tt(Ie.mul(p(.6)),p(0),p(1)));C.assign(F(ze,Rt,At,dt))}),C})()}var YI,zg,G9,ZI,$I,Zye,El,H9=z(()=>{"use strict";Dt();eo();ut();YI=.7,zg=1/Math.sqrt(1+YI*YI),G9=YI*zg,ZI=G9+1,$I=1/Math.sqrt(zg*zg+ZI*ZI);Zye=JSON.stringify({type:"circleSDF",radius:.35}),El={name:"Neon",category:"Shape Effects",description:"Photorealistic neon tube / 3D pipe effect driven by a custom shape",props:{center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the neon shape",ui:{type:"position",label:"Center",group:"Position"}},scale:{default:1,description:"Scale of the neon shape (1 = default size)",ui:{type:"range",min:.1,max:3,step:.05,label:"Scale",group:"Position"}},color:{default:"#00ddff",transform:Ce,description:"Primary neon tube color",ui:{type:"color",label:"Tube Color",group:"Colors"}},secondaryColor:{default:"#ff00aa",transform:Ce,description:"Shadow-side color for a two-tone / dual-lit pipe look",ui:{type:"color",label:"Secondary Color",group:"Colors"}},secondaryBlend:{default:.5,description:"Blend between mono (0) and two-tone (1) tube coloring",ui:{type:"range",min:0,max:1,step:.01,label:"Blend",group:"Colors"}},glowColor:{default:"#00ddff",transform:Ce,description:"Color of the outer glow / bloom",ui:{type:"color",label:"Glow Color",group:"Colors"}},tubeThickness:{default:.2,transform:t=>t*.05,description:"How far inward from the boundary the tube extends. Low = thin neon outline, high = thick 3D pipe",ui:{type:"range",min:0,max:1,step:.01,label:"Tube Thickness",group:"Tube"}},intensity:{default:1.5,description:"Overall brightness multiplier",ui:{type:"range",min:.5,max:4,step:.05,label:"Intensity",group:"Tube"}},hotCoreIntensity:{default:.6,description:"Bright white-hot center line \u2014 the gas discharge glow inside the tube",ui:{type:"range",min:0,max:1,step:.01,label:"Hot Core",group:"Tube"}},glowIntensity:{default:.6,description:"Outer glow / bloom strength",ui:{type:"range",min:0,max:2,step:.05,label:"Glow Intensity",group:"Glow"}},glowRadius:{default:.25,description:"How far the glow extends beyond the tube",ui:{type:"range",min:.01,max:1,step:.01,label:"Glow Radius",group:"Glow"}},lightAngle:{default:300,description:"Directional light angle in degrees \u2014 controls 3D shading on the tube",ui:{type:"range",min:0,max:360,step:1,label:"Light Angle",group:"Lighting"}},specularIntensity:{default:.5,description:"Specular highlight brightness on the tube surface",ui:{type:"range",min:0,max:2,step:.05,label:"Specular",group:"Lighting"}},specularSize:{default:.5,description:"Specular highlight size \u2014 0 = tight pinpoint, 1 = broad sheen",ui:{type:"range",min:0,max:1,step:.01,label:"Specular Size",group:"Lighting"}},cornerSmoothing:{default:.15,description:"Rounds sharp corners to mimic how real glass tubes curve at bends",ui:{type:"range",min:0,max:1,step:.01,label:"Corner Smoothing",group:"Tube"}},flickerSpeed:{default:0,description:"Flicker animation speed \u2014 0 = off, higher = faster sporadic on/off",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Flicker"}},flickerAmount:{default:.2,description:"How often the neon flickers off \u2014 0 = always on, 1 = frequent outages",ui:{type:"range",min:0,max:1,step:.01,label:"Amount",group:"Flicker"}},flowSpeed:{default:0,description:"Flow animation speed \u2014 0 = off, light rotates through the tube",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Flow"}},flowAmount:{default:.3,description:"Strength of the flowing brightness variation \u2014 0 = uniform, 1 = dramatic",ui:{type:"range",min:0,max:1,step:.01,label:"Amount",group:"Flow"}},shape:{default:Zye,description:"Serialized shape configuration (JSON)",ui:{type:"shape",label:"Shape",group:"Shape"}},shapeSdfUrl:{default:"",compileTime:!0,description:"URL to a pre-generated SDF .bin file \u2014 when non-empty, activates SVG mode and triggers a shader recompile"},shapeType:{default:"",compileTime:!0,description:"Active SDF shape type \u2014 triggers recompile when shape is switched. When empty, derived from shape JSON at mount time."}},fragmentNode:({uniforms:t,onCleanup:e,onBeforeRender:n})=>{let r=oe(0);n(({deltaTime:a})=>{r.value+=a});let i=t.shapeSdfUrl.uniform.value,o=(()=>{let a=t.shape.uniform.value;if(typeof a=="object"&&a!==null)return a;try{return JSON.parse(a)}catch{return{type:"circleSDF",radius:.35,centerX:.5,centerY:.5}}})();return V9(i?Ns(i,n,e):Os(t.shapeType.uniform.value||o.type||"circleSDF",o,t.shape,n),t,r)}}});var Rl,W9=z(()=>{"use strict";ut();Rl={name:"Paper",category:"Stylize",description:"Applies realistic paper grain and surface roughness to child content",requiresRTT:!0,requiresChild:!0,props:{roughness:{default:.3,description:"Surface roughness \u2014 higher values create more pronounced brightness variation",ui:{type:"range",min:0,max:1,step:.01,label:"Roughness",group:"Texture"}},grainScale:{default:1,description:"Scale of the paper grain \u2014 lower = coarser, higher = finer",ui:{type:"range",min:.1,max:3,step:.05,label:"Grain Scale",group:"Texture"}},displacement:{default:.15,description:"Surface micro-roughness \u2014 shifts pixels at grain scale like real paper fiber bumps",ui:{type:"range",min:0,max:1,step:.01,label:"Displacement",group:"Texture"}},seed:{default:0,description:"Random seed for pattern variation",ui:{type:"range",min:0,max:100,step:1,label:"Seed",group:"Texture"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j,o=$.x.div($.y),a=I(i.x.mul(o),i.y),l=t.seed.uniform,s=t.grainScale.uniform.mul(p(120)).add(p(120)),u=s.mul(p(.25)),d=a.mul(u).add(l.add(p(50))),h=Dn(_e(d.x,d.y,p(22.3))),f=Dn(_e(d.x,d.y,p(29.7))),g=t.displacement.uniform.mul(p(.002)),y=i.add(I(h.mul(g),f.mul(g))),_=r.sample(y),b=I(y.x.mul(o),y.y).add(I(h.mul(p(.005)),f.mul(p(.005)))),S=b.mul(s.mul(p(.1))).add(l),w=Dn(_e(S.x,S.y,p(1.3))),v=b.mul(s.mul(p(.4))).add(l.add(p(33.7))),E=Et(Dn(_e(v.x,v.y,p(4.1)))),C=b.mul(s).add(l.add(p(71.2))),M=Dn(_e(C.x,C.y,p(9.8))),R=b.mul(s.mul(p(2))).add(l.add(p(107.3))),c=Dn(_e(R.x,R.y,p(15.6))),m=w.mul(p(.3)).add(E.mul(p(.3))).add(M.mul(p(.25))).add(c.mul(p(.15))),x=t.roughness.uniform,T=Tt(p(1).add(m.mul(x.mul(p(.4)))),p(0),p(1.5)),N=_e(_.r,_.g,_.b).mul(T);return F(N.x,N.y,N.z,_.a)}}});var Al,j9=z(()=>{"use strict";gi();Dt();Wn();ut();Al={name:"Perspective",category:"Distortions",description:"Rotate the plane in 3D space with pan and tilt",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:wt,description:"Center point of rotation",ui:{type:"position",label:"Center",group:"Position"}},pan:{default:0,description:"Horizontal rotation (left/right)",ui:{type:["range","map"],min:-90,max:90,step:.1,label:"Pan",group:"Effect"}},tilt:{default:0,description:"Vertical rotation (up/down)",ui:{type:["range","map"],min:-90,max:90,step:.1,label:"Tilt",group:"Effect"}},fov:{default:60,description:"Field of view - controls perspective intensity",ui:{type:["range","map"],min:30,max:120,step:1,label:"FOV",group:"Effect"}},zoom:{default:1,description:"Zoom in to fill the frame after rotation",ui:{type:["range","map"],min:.5,max:3,step:.1,label:"Zoom",group:"Effect"}},offset:{default:{x:.5,y:.5},transform:wt,description:"Shift the result in X/Y",ui:{type:"position",label:"Offset",group:"Position"}},edges:{default:"transparent",description:"How to handle edges",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=I(t.center.uniform.x,t.center.uniform.y.oneMinus()),o=t.zoom.uniform,a=j.x.sub(i.x).div(o),l=j.y.sub(i.y).div(o),s=t.pan.uniform.mul(Math.PI/180),u=t.tilt.uniform.mul(Math.PI/180),d=t.fov.uniform.mul(Math.PI/180),h=Ye(s),f=fe(s),g=Ye(u),y=fe(u),_=Hz(d.mul(.5)).mul(2),b=Pt(h.add(f.mul(a).mul(_)),p(.001)),S=a.div(b),w=l.mul(h).div(b),v=Pt(g.add(y.mul(w).mul(_)),p(.001)),E=S.mul(g).div(v),C=w.div(v),M=I(t.offset.uniform.x,t.offset.uniform.y.oneMinus()),R=I(E,C).add(i).sub(M).add(I(.5,.5));return Vt(Ln(R,r.sample(R),r,t.edges.uniform.value))}}});var Pl,q9=z(()=>{"use strict";Wn();ut();Pl={name:"Pixelate",category:"Stylize",description:"Pixelation effect with adjustable cell size",requiresRTT:!0,requiresChild:!0,props:{scale:{default:50,description:"Number of pixels along the longest edge (higher = smaller pixels)",ui:{type:["range","map"],min:1,max:200,step:1,label:"Scale",group:"Effect"}},gap:{default:0,description:"Space between pixels as a fraction of cell size (0 = no gap, 1 = fully invisible)",ui:{type:["range","map"],min:0,max:.95,step:.01,label:"Gap",group:"Effect"}},roundness:{default:0,description:"Roundness of each pixel's corners (0 = square, 1 = circle)",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Roundness",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=$.x.div($.y),o=t.scale.uniform,a=i.greaterThan(p(1)),l=a.select(o,o.mul(i)).max(p(1)),s=a.select(o.div(i),o).max(p(1)),u=I(Zt(j.x.mul(l)).div(l),Zt(j.y.mul(s)).div(s)),d=Vt(r.sample(u)),h=I(St(j.x.mul(l)).sub(.5),St(j.y.mul(s)).sub(.5)),f=p(.5).sub(t.gap.uniform.mul(.5)),g=t.roundness.uniform.mul(f),y=Vn(I(h.x.abs().sub(f).add(g).max(p(0)),h.y.abs().sub(f).add(g).max(p(0)))).sub(g).lessThanEqual(p(0)).select(p(1),p(0));return F(d.rgb,d.a.mul(y))}}});var Il,X9=z(()=>{"use strict";Dt();On();gr();ut();Il={name:"Plasma",category:"Textures",description:"Animated effect of glowing plasma",props:{density:{default:2,description:"Density of the plasma pattern",ui:{type:["range","map"],min:0,max:4,step:.1,label:"Density",group:"Effect"}},speed:{default:2,description:"Animation speed",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Effect"}},intensity:{default:1.5,description:"Brightness and spread of the plasma glow",ui:{type:["range","map"],min:.1,max:3,step:.1,label:"Intensity",group:"Colors"}},warp:{default:.4,description:"How much the flow distorts and swirls",ui:{type:"range",min:0,max:1,step:.01,label:"Warp",group:"Effect"}},contrast:{default:1,description:"Push darks darker and lights lighter",ui:{type:["range","map"],min:0,max:3,step:.1,label:"Contrast",group:"Colors"}},balance:{default:50,description:"Skew color balance toward A (higher) or B (lower)",ui:{type:["range","map"],min:0,max:100,step:1,label:"Balance",group:"Colors"}},colorA:{default:"#7018be",description:"Primary color",transform:Ce,ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#000000",description:"Secondary color",transform:Ce,ui:{type:"color",label:"Color B",group:"Colors"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=e.density.uniform,r=e.intensity.uniform,i=e.warp.uniform,o=fn(t,e.speed).mul(.125),a=$.x.div($.y),l=_e(j.x.mul(a),j.y,p(0)).mul(ki(n.sub(1))).toVar(),s=i.mul(4),u=Dn(l.add(_e(o.mul(.3),o.mul(-.2),0))),d=Dn(l.add(_e(5.2,1.3,o.mul(.25)))),h=l.add(_e(u,d,p(0)).mul(s)),f=Dn(h.add(_e(1.7,9.2,o.mul(.15)))),g=Dn(h.add(_e(8.3,2.8,o.mul(.13)))),y=Tt(Bt(Dn(l.add(_e(f,g,p(0)).mul(s))).mul(.5).add(.5),p(5).div(r)).sub(.5).mul(e.contrast.uniform).add(.5),0,1),_=e.balance.uniform.div(100).sub(.5),b=Tt(y.add(_),0,1);return Lt(e.colorB.uniform,e.colorA.uniform,b,e.colorSpace.uniform.value)}}});var Nl,$9=z(()=>{"use strict";gi();Dt();Wn();ut();Nl={name:"PolarCoordinates",category:"Distortions",description:"Convert rectangular coordinates to polar space",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:wt,description:"The center point for polar coordinate conversion",ui:{type:"position",label:"Center",group:"Position"}},wrap:{default:1,description:"Controls how much of the angular range to use (1 = full 360\xB0, 0.5 = 180\xB0)",ui:{type:["range","map"],min:0,max:2,step:.1,label:"Wrap",group:"Effect"}},radius:{default:1,description:"Controls how much of the radius range to use (affects the radial mapping)",ui:{type:["range","map"],min:0,max:2,step:.1,label:"Radius",group:"Effect"}},intensity:{default:1,description:"Blends between original UVs (0) and polar coordinates (1)",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Intensity",group:"Effect"}},edges:{default:"transparent",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=$.x.div($.y),o=I(j.x.mul(i),j.y),a=I(t.center.uniform.x.mul(i),t.center.uniform.y.oneMinus()),l=o.sub(a),s=Qn(l.y,l.x).add(ci).div(ci.mul(2)),u=Vn(l),d=Re(j,I(s.mul(t.wrap.uniform),u.mul(t.radius.uniform)),t.intensity.uniform);return Vt(Ln(d,r.sample(d),r,t.edges.uniform.value))}}});var Kye,Ol,Y9=z(()=>{"use strict";Dt();On();eo();ut();Kye=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,Ol={name:"Polygon",category:"Shapes",description:"Regular polygon with adjustable sides and corner rounding",props:{color:{default:"#ffffff",transform:Ce,description:"Fill color of the polygon",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the polygon",ui:{type:"position",label:"Center",group:"Position"}},radius:{default:.4,description:"Circumradius \u2014 distance from center to vertices in UV space",ui:{type:"range",min:0,max:1,step:.01,label:"Radius",group:"Shape"}},sides:{default:6,description:"Number of sides (3 = triangle, 4 = square, 6 = hexagon, etc.)",ui:{type:"range",min:3,max:12,step:1,label:"Sides",group:"Shape"}},rounding:{default:0,description:"Corner rounding \u2014 0 is sharp vertices, 1 morphs into a circle",ui:{type:"range",min:0,max:1,step:.01,label:"Rounding",group:"Shape"}},rotation:{default:0,description:"Rotation in degrees",ui:{type:"range",min:0,max:360,step:1,label:"Rotation",group:"Shape"}},softness:{default:0,description:"Edge softness for antialiasing",ui:{type:"range",min:0,max:.1,step:.001,label:"Softness",group:"Effect"}},strokeThickness:{default:0,description:"Stroke thickness. Zero means no stroke.",ui:{type:"range",min:0,max:.2,step:.005,label:"Stroke Thickness",group:"Stroke"}},strokeColor:{default:"#000000",transform:Ce,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:Kye,description:"Position of the stroke relative to the shape edge",ui:{type:"select",options:[{label:"Outside",value:"outside"},{label:"Center",value:"center"},{label:"Inside",value:"inside"}],label:"Stroke Position",group:"Stroke"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:Gt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=r.x.sub(i.x),a=r.y.sub(i.y),l=t.rotation.uniform.mul(p(Math.PI/180)),s=Ye(l),u=fe(l),d=o.mul(s).add(a.mul(u)),h=a.mul(s).sub(o.mul(u)),f=t.radius.uniform,g=Re(DI(d,h,f,t.sides.uniform),yT(o,a,f),t.rounding.uniform),y=t.softness.uniform,_=t.strokeThickness.uniform,b=t.strokePosition.uniform,S=_.greaterThan(p(0)),w=b.greaterThanEqual(p(.5)).and(b.lessThan(p(1.5))),v=b.greaterThanEqual(p(1.5)),E=_.mul(.5),C=v.select(_.negate(),w.select(E.negate(),p(0))),M=v.select(p(0),w.select(E,_)),R=Oe(M.sub(y),M,g).oneMinus(),c=S.select(Oe(C.sub(y),C,g),p(0)),m=Lt(F(t.color.uniform.rgb,t.color.uniform.a),F(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),c,t.colorSpace.uniform.value);return F(m.xyz,m.w.mul(R))}}});var Ul,Z9=z(()=>{"use strict";ut();Ul={name:"Posterize",category:"Adjustments",description:"Reduce color depth to create a poster effect",requiresChild:!0,props:{intensity:{default:5,description:"The intensity of the posterization effect (lower is more posterized)",ui:{type:["range","map"],min:2,max:20,step:1,label:"Intensity",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return console.error("You must pass a child component into the Posterize shader."),F(0);let n=p(t.intensity.uniform);return F(Zt(e.r.mul(n)).div(n),Zt(e.g.mul(n)).div(n),Zt(e.b.mul(n)).div(n),e.a)}}});var Dl,K9=z(()=>{"use strict";Dt();Wn();sh();ut();Dl={name:"ProgressiveBlur",category:"Blurs",description:"Blur that increases progressively in one direction",requiresRTT:!0,requiresChild:!0,props:{intensity:{default:50,description:"Maximum intensity of the blur effect",ui:{type:["range","map"],min:0,max:100,step:1,label:"Intensity",group:"Effect"}},angle:{default:0,transform:sr,description:"Direction of the blur gradient (in degrees)",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},center:{default:{x:0,y:.5},transform:wt,description:"Center point where blur begins",ui:{type:"position",label:"Center",group:"Position"}},falloff:{default:1,description:"Distance over which blur transitions to full strength",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Falloff",group:"Effect"}}},computeNode:({childNode:t,onCleanup:e,dimensions:n,renderer:r,uniforms:i,onResize:o})=>{if(!t||i.angle.mapComputeInfo||i.falloff.mapComputeInfo)return null;let a=It(t);e(()=>{a?.renderTarget?.dispose&&a.renderTarget.dispose()});let l=r?.getPixelRatio?.()??1,s=Math.round(n.width*l),u=Math.round(n.height*l),d=Zd(a,s,u,e),{computeNodes:h,outputTexture:f,blurMapWriteNode:g,computeWidth:y,computeHeight:_}=d,b=oe(0),S=oe(0),w=oe(.5),v=oe(1),E=oe(1),C=oe(s),M=oe(u),R=Tn(y),c=Tn(_);function m(D){return D.getCpuValue?.()??(typeof D.uniform.value=="number"?D.uniform.value:null)}function x(){let D=m(i.angle);D!==null&&(b.value=D);let O=i.center.uniform.value?.x??i.center.uniform.x?.value;typeof O=="number"&&(S.value=O);let L=i.center.uniform.value?.y??i.center.uniform.y?.value;typeof L=="number"&&(w.value=L);let V=m(i.falloff);V!==null&&(v.value=V),E.value=n.width/n.height}let T=i.intensity.mapComputeInfo;if(T){let{sourceTexture:D,channel:O,inputMin:L,inputMax:V,outputMin:Z,outputMax:q,curve:ae}=T,we=qe(()=>{let Ae=Kt,Ge=Ae.mod(R),et=Ae.div(R);Pn(et.lessThan(c),()=>{let Ze=Ge.toFloat().add(p(.5)).div(p(y)),he=et.toFloat().add(p(.5)).div(p(_)),Me=b.mul(p(Math.PI/180)),Pe=I(Me.cos().div(E),Me.sin()),We=I(S,p(1).sub(w)),Xe=I(Ze,he).sub(We),le=Pt(p(0),Xe.dot(Pe)),rt=Oe(p(0),v,le),De=Pi(D,En(Ze.mul(C).round().toInt().clamp(Ut(0),Ut(C.sub(1))).toUint(),he.mul(M).round().toInt().clamp(Ut(0),Ut(M.sub(1))).toUint()),Ut(0)),K;O==="alpha"?K=De.a:O==="alphaInverted"?K=De.a.oneMinus():O==="luminanceInverted"?K=kt(De.rgb,_e(.2126,.7152,.0722)).oneMinus():K=kt(De.rgb,_e(.2126,.7152,.0722));let be=V.sub(L).max(p(1e-4)),Ee=Re(Z,q,Bt(Tt(K.sub(L).div(be),p(0),p(1)),Bt(p(2),ae.negate().mul(p(2))))).mul(p(.36)),Be=rt.mul(Ee);er(g,En(Ge,et),F(Be,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:Ae,height:Ge})=>{let et=Math.round(Ae*l),Ze=Math.round(Ge*l);C.value=et,M.value=Ze,d.setInputDimensions(et,Ze)}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>(x(),[we,...h])}}let N=oe(18),B=qe(()=>{let D=Kt,O=D.mod(R),L=D.div(R);Pn(L.lessThan(c),()=>{let V=O.toFloat().add(p(.5)).div(p(y)),Z=L.toFloat().add(p(.5)).div(p(_)),q=b.mul(p(Math.PI/180)),ae=I(q.cos().div(E),q.sin()),we=I(S,p(1).sub(w)),Ae=I(V,Z).sub(we),Ge=Pt(p(0),Ae.dot(ae)),et=Oe(p(0),v,Ge).mul(N);er(g,En(O,L),F(et,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:D,height:O})=>{d.setInputDimensions(Math.round(D*l),Math.round(O*l))}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>{x();let D=m(i.intensity);return D!==null&&(N.value=D*.36),[B,...h]}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n,computeOutputs:r})=>{if(!e)return F(0,0,0,0);if(r?.blurredTexture){let E=r.childTexture.sample(j),C=vn(r.blurredTexture).sample(j),M=t.intensity.uniform.mul(p(0)).add(t.angle.uniform.mul(p(0))).add(t.falloff.uniform.mul(p(0)));return Vt(F(C.rgb.add(M),E.a))}let i=It(e);n(()=>{i?.renderTarget?.dispose&&i.renderTarget.dispose()});let o=$.x.div($.y),a=qr(t.angle.uniform),l=Ye(a),s=fe(a),u=I(l.div(o),s),d=I(t.center.uniform[0],t.center.uniform[1].oneMinus()),h=j.sub(d),f=Pt(p(0),h.dot(u)),g=Pt(p(.001),t.falloff.uniform),y=Oe(p(0),g,f),_=t.intensity.uniform.mul(.06),b=y.mul(_),S=[.056,.135,.278,.487,.726,.923,1,.923,.726,.487,.278,.135,.056],w=6.214,v=It(qe(()=>{let E=j,C=I(1).div($),M=F(0).toVar();for(let R=-6;R<=6;R++){let c=p(S[R+6]/w),m=I(p(R),p(0)).mul(b).mul(C),x=E.add(m),T=i.sample(x).mul(c);M.assign(M.add(T))}return M})());return n(()=>{v?.renderTarget?.dispose&&v.renderTarget.dispose()}),qe(()=>{let E=j,C=I(1).div($),M=F(0).toVar();for(let R=-6;R<=6;R++){let c=p(S[R+6]/w),m=I(p(0),p(R)).mul(b).mul(C),x=E.add(m),T=v.sample(x).mul(c);M.assign(M.add(T))}return Vt(M)})()}}});var Fl,J9=z(()=>{"use strict";Dt();On();ut();Fl={name:"RadialGradient",category:"Textures",description:"Radial gradient radiating from a center point",props:{colorA:{default:"#ff0000",transform:Ce,description:"The starting color at the center of the gradient",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#0000ff",transform:Ce,description:"The ending color at the edge of the gradient",ui:{type:"color",label:"Color B",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"The center point of the radial gradient",ui:{type:"position",label:"Center",group:"Position"}},radius:{default:1,description:"The radius of the gradient (normalized, 0.0-1.0)",ui:{type:["range","map"],min:0,max:2,step:.1,label:"Radius",group:"Effect"}},repeat:{default:1,description:"Number of times the gradient repeats. Values above 1 create concentric rings.",ui:{type:["range","map"],min:1,max:20,step:.5,label:"Repeat",group:"Effect"}},aspect:{default:1,description:"Stretches the gradient into an ellipse. Values below 1 compress vertically, above 1 compress horizontally.",ui:{type:["range","map"],min:.1,max:4,step:.05,label:"Aspect",group:"Effect"}},skewAngle:{default:0,description:"Rotates the ellipse axis in degrees. Only visible when Aspect is not 1.",ui:{type:["range","map"],min:0,max:360,step:1,label:"Skew Angle",group:"Effect"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=r.x.sub(i.x),a=r.y.sub(i.y),l=t.skewAngle.uniform.mul(p(Math.PI/180)),s=Ye(l),u=fe(l),d=o.mul(s).add(a.mul(u)),h=o.mul(u).negate().add(a.mul(s)),f=W1(I(d.mul(t.aspect.uniform),h),I(p(0),p(0))),g=t.radius.uniform.max(p(1e-6)),y=f.div(g).mul(t.repeat.uniform),_=t.repeat.uniform.greaterThan(p(1.0001)).select(St(y),y.clamp(p(0),p(1)));return Lt(t.colorA.uniform,t.colorB.uniform,_,t.colorSpace.uniform.value)}}});var Ll,Q9=z(()=>{"use strict";gi();Dt();Wn();ut();Ll={name:"RectangularCoordinates",category:"Distortions",description:"Convert polar coordinates back to rectangular space",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:wt,description:"The center point for rectangular coordinate conversion",ui:{type:"position",label:"Center",group:"Position"}},scale:{default:1,description:"Scale factor for the rectangular output",ui:{type:["range","map"],min:.1,max:3,step:.1,label:"Scale",group:"Effect"}},intensity:{default:1,description:"Blends between original UVs (0) and rectangular coordinates (1)",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Intensity",group:"Effect"}},edges:{default:"transparent",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j.x.mul(ci.mul(2)).sub(ci),o=j.y.mul(t.scale.uniform),a=o.mul(Ye(i)),l=o.mul(fe(i)),s=$.x.div($.y),u=I(t.center.uniform.x,t.center.uniform.y.oneMinus()),d=Re(j,I(a.div(s).add(u.x),l.add(u.y)),t.intensity.uniform);return Vt(Ln(d,r.sample(d),r,t.edges.uniform.value))}}});var Jye,kl,e6=z(()=>{"use strict";Dt();On();eo();ut();Jye=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,kl={name:"Ring",category:"Shapes",description:"Annular ring (donut) with adjustable radius and band thickness",props:{color:{default:"#ffffff",transform:Ce,description:"Fill color of the ring",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the ring",ui:{type:"position",label:"Center",group:"Position"}},radius:{default:.3,description:"Distance from center to the ring's midline in UV space",ui:{type:"range",min:0,max:1,step:.01,label:"Radius",group:"Shape"}},thickness:{default:.07,description:"Half-width of the ring band \u2014 total ring width is twice this value",ui:{type:"range",min:.005,max:.3,step:.005,label:"Thickness",group:"Shape"}},softness:{default:0,description:"Edge softness for antialiasing (applied to both inner and outer ring edges)",ui:{type:"range",min:0,max:.1,step:.001,label:"Softness",group:"Effect"}},strokeThickness:{default:0,description:"Stroke thickness. Zero means no stroke.",ui:{type:"range",min:0,max:.1,step:.005,label:"Stroke Thickness",group:"Stroke"}},strokeColor:{default:"#000000",transform:Ce,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:Jye,description:"Position of the stroke relative to the ring edge",ui:{type:"select",options:[{label:"Outside",value:"outside"},{label:"Center",value:"center"},{label:"Inside",value:"inside"}],label:"Stroke Position",group:"Stroke"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:Gt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=kI(r.x.sub(i.x),r.y.sub(i.y),t.radius.uniform,t.thickness.uniform),a=t.softness.uniform,l=t.strokeThickness.uniform,s=t.strokePosition.uniform,u=l.greaterThan(p(0)),d=s.greaterThanEqual(p(.5)).and(s.lessThan(p(1.5))),h=s.greaterThanEqual(p(1.5)),f=l.mul(.5),g=h.select(l.negate(),d.select(f.negate(),p(0))),y=h.select(p(0),d.select(f,l)),_=Oe(y.sub(a),y,o).oneMinus(),b=u.select(Oe(g.sub(a),g,o),p(0)),S=Lt(F(t.color.uniform.rgb,t.color.uniform.a),F(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),b,t.colorSpace.uniform.value);return F(S.xyz,S.w.mul(_))}}});var Bl,t6=z(()=>{"use strict";Dt();On();gr();ut();Bl={name:"Ripples",category:"Textures",description:"Concentric animated ripples emanating from a point",props:{center:{default:{x:.5,y:.5},transform:wt,description:"The center point where ripples emanate from",ui:{type:"position",label:"Center",group:"Position"}},colorA:{default:"#ffffff",transform:Ce,description:"Color of the ripple waves",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#000000",transform:Ce,description:"Background color between ripples",ui:{type:"color",label:"Color B",group:"Colors"}},speed:{default:1,description:"Speed of ripple animation",ui:{type:"range",min:-5,max:5,step:.1,label:"Speed",group:"Animation"}},frequency:{default:20,description:"Number of ripples/spacing between them",ui:{type:["range","map"],min:1,max:80,step:.1,label:"Frequency",group:"Effect"}},softness:{default:0,description:"Softness of ripple edges",ui:{type:["range","map"],min:0,max:3,step:.1,label:"Softness",group:"Effect"}},thickness:{default:.5,description:"Thickness of each ripple band",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Thickness",group:"Effect"}},phase:{default:0,description:"Phase offset for ripple animation",ui:{type:["range","map"],min:0,max:6.28,step:.1,label:"Phase",group:"Animation"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=e.center.uniform,i=e.colorA.uniform,o=e.colorB.uniform,a=e.frequency.uniform,l=e.softness.uniform,s=e.thickness.uniform,u=e.phase.uniform,d=$.x.div($.y),h=W1(I(n.x.mul(d),n.y),I(r.x.mul(d),r.y.oneMinus())),f=fn(t,e.speed),g=fe(h.mul(a).sub(f).add(u)),y=s.mul(p(2)).sub(p(1));return Lt(o,i,Oe(y.sub(l),y.add(l),g).oneMinus(),0)}}});var Qye,zl,n6=z(()=>{"use strict";Dt();On();eo();ut();Qye=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,zl={name:"RoundedRect",category:"Shapes",description:"Rounded rectangle with adjustable width, height, and corner rounding",props:{color:{default:"#ffffff",transform:Ce,description:"Fill color of the rectangle",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the rectangle",ui:{type:"position",label:"Center",group:"Position"}},width:{default:.35,description:"Half-width of the rectangle",ui:{type:"range",min:.01,max:1,step:.01,label:"Width",group:"Shape"}},height:{default:.25,description:"Half-height of the rectangle",ui:{type:"range",min:.01,max:1,step:.01,label:"Height",group:"Shape"}},rounding:{default:.05,description:"Corner rounding radius \u2014 set to min(width, height) for a pill shape",ui:{type:"range",min:0,max:.5,step:.01,label:"Rounding",group:"Shape"}},rotation:{default:0,description:"Rotation in degrees",ui:{type:"range",min:0,max:360,step:1,label:"Rotation",group:"Shape"}},softness:{default:0,description:"Edge softness for antialiasing",ui:{type:"range",min:0,max:.1,step:.001,label:"Softness",group:"Effect"}},strokeThickness:{default:0,description:"Stroke thickness. Zero means no stroke.",ui:{type:"range",min:0,max:.2,step:.005,label:"Stroke Thickness",group:"Stroke"}},strokeColor:{default:"#000000",transform:Ce,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:Qye,description:"Position of the stroke relative to the shape edge",ui:{type:"select",options:[{label:"Outside",value:"outside"},{label:"Center",value:"center"},{label:"Inside",value:"inside"}],label:"Stroke Position",group:"Stroke"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:Gt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=r.x.sub(i.x),a=r.y.sub(i.y),l=t.rotation.uniform.mul(p(Math.PI/180)),s=Ye(l),u=fe(l),d=zI(o.mul(s).add(a.mul(u)),a.mul(s).sub(o.mul(u)),t.width.uniform,t.height.uniform,t.rounding.uniform),h=t.softness.uniform,f=t.strokeThickness.uniform,g=t.strokePosition.uniform,y=f.greaterThan(p(0)),_=g.greaterThanEqual(p(.5)).and(g.lessThan(p(1.5))),b=g.greaterThanEqual(p(1.5)),S=f.mul(.5),w=b.select(f.negate(),_.select(S.negate(),p(0))),v=b.select(p(0),_.select(S,f)),E=Oe(v.sub(h),v,d).oneMinus(),C=y.select(Oe(w.sub(h),w,d),p(0)),M=Lt(F(t.color.uniform.rgb,t.color.uniform.a),F(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),C,t.colorSpace.uniform.value);return F(M.xyz,M.w.mul(E))}}});var Vl,r6=z(()=>{"use strict";ut();Vl={name:"Saturation",category:"Adjustments",description:"Adjust color saturation intensity",requiresChild:!0,props:{intensity:{default:1,description:"The intensity of the saturation effect (1 being no change)",compileTimeWhen:(t,e)=>t===1!=(e===1),ui:{type:["range","map"],min:0,max:3,step:.1,label:"Intensity",group:"Appearance"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return console.error("You must pass a child component into the Saturation shader."),F(0);if(t.intensity.uniform.value===1)return e;let n=kt(e.rgb,_e(.2126,.7152,.0722));return F(Re(_e(n,n,n),e.rgb,t.intensity.uniform),e.a)}}});var Gl,i6=z(()=>{"use strict";Wn();ut();Gl={name:"Sharpness",category:"Adjustments",description:"Adjust image sharpness using a convolution kernel",requiresRTT:!0,requiresChild:!0,props:{sharpness:{default:0,description:"How sharp to make the underlying image",compileTimeWhen:(t,e)=>t===0!=(e===0),ui:{type:["range","map"],min:0,max:5,step:.1,label:"Sharpness",group:"Appearance"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);if(t.sharpness.uniform.value===0)return e;let r=It(e);return n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()}),qe(()=>{let i=j,o=t.sharpness.uniform,a=I(1).div($),l=r.sample(i),s=r.sample(i.add(I(0,a.y))),u=r.sample(i.sub(I(0,a.y))),d=r.sample(i.sub(I(a.x,0))),h=r.sample(i.add(I(a.x,0))),f=p(1).add(o.mul(4)),g=o.negate();return Vt(F(Tt(l.mul(f).add(s.mul(g)).add(u.mul(g)).add(d.mul(g)).add(h.mul(g)).rgb,0,1),l.a))})()}}});var Oa,Co,mo,Hl,o6=z(()=>{"use strict";gi();Dt();Wn();Li();Bi();ut();Oa=t=>{let e=Math.sin(t)*1e4;return e-Math.floor(e)},Co=16,mo=1024,Hl={name:"Shatter",category:"Interactive",description:"Broken glass effect with tectonic plate displacement",requiresRTT:!0,requiresChild:!0,usesPointer:!0,props:{crackWidth:{default:1,description:"Thickness of crack lines",ui:{type:["range","map"],min:.5,max:5,step:.1,label:"Crack Width",group:"Effect"}},intensity:{default:4,description:"How much shards shift",ui:{type:"range",min:0,max:20,step:1,label:"Intensity",group:"Effect"}},radius:{default:.4,description:"Cursor influence radius",ui:{type:"range",min:.1,max:1,step:.1,label:"Radius",group:"Effect"}},decay:{default:1,description:"How fast shards return to rest",ui:{type:"range",min:.1,max:10,step:.1,label:"Decay",group:"Effect"}},seed:{default:2,description:"Random seed for pattern",ui:{type:"range",min:0,max:50,step:1,label:"Seed",group:"Effect"}},chromaticSplit:{default:1,description:"RGB separation for prismatic glass effect",ui:{type:["range","map"],min:0,max:5,step:.1,label:"Chromatic Split",group:"Effect"}},refractionStrength:{default:5,description:"How much cracks bend/distort the underlying image",ui:{type:["range","map"],min:0,max:10,step:.1,label:"Refraction",group:"Effect"}},shardLighting:{default:.1,description:"Subtle lighting on tilted shards for 3D depth",ui:{type:"range",min:0,max:.5,step:.1,label:"Shard Lighting",group:"Effect"}},edges:{default:"mirror",description:"How to handle edges when displacement pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},computeNode:({uniforms:t,onCleanup:e})=>{let n=Gd(new Array(Co*2).fill(0),"float"),r=new Nr(mo,mo);r.type=on,r.magFilter=An,r.minFilter=An,r.generateMipmaps=!1;let i=Er(r);e(()=>{r.dispose()});let o=Tn(mo),a=p(1/mo),l=qe(()=>{let h=Kt,f=h.mod(o),g=h.div(o);Pn(g.lessThan(o),()=>{let y=f.toFloat().add(p(.5)).mul(a),_=g.toFloat().add(p(.5)).mul(a),b=p(99999).toVar(),S=p(99999).toVar(),w=p(0).toVar(),v=p(0).toVar();for(let E=0;E<Co;E++){let C=n.element(Ut(E*2)),M=n.element(Ut(E*2+1)),R=y.sub(C),c=_.sub(M),m=R.mul(R).add(c.mul(c));Pn(m.lessThan(b),()=>{S.assign(b),v.assign(w),b.assign(m),w.assign(p(E))}).Else(()=>{Pn(m.lessThan(S),()=>{S.assign(m),v.assign(p(E))})})}er(i,En(f,g),F(w,v,p(0),p(0))).toWriteOnly()})})().compute(mo*mo,[256]),s=t.seed.uniform.value,u=!0,d=h=>{let f=new Array(Co*2);for(let g=0;g<Co;g++)f[g*2]=Oa(h+g*2),f[g*2+1]=Oa(h+g*2+1);n.array=f};return d(s),{outputs:{voronoiTexture:r},getComputeNodes:()=>{let h=t.seed.uniform.value;return h!==s&&(s=h,d(s),u=!0),u?(u=!1,[l]):null}}},fragmentNode:({uniforms:t,onBeforeRender:e,childNode:n,onCleanup:r,dimensions:i,computeOutputs:o})=>{let l=new Float32Array(Co*4),s=new Array(Co*2).fill(0),u=Gd(s,"float"),d=new Float32Array(Co*4),h=new Array(Co*2).fill(0),f=Gd(h,"float"),g=()=>{for(let ke=0;ke<Co;ke++)s[ke*2]=l[ke*4],s[ke*2+1]=l[ke*4+1];u.array=s},y=()=>{for(let ke=0;ke<Co;ke++)h[ke*2]=d[ke*4],h[ke*2+1]=d[ke*4+1];f.array=h},_;if(o?.voronoiTexture)_=vn(o.voronoiTexture);else{let ke=new Float32Array(mo*mo*4),k=new ir(ke,mo,mo,qn,on);k.magFilter=An,k.minFilter=An,_=vn(k);let P=()=>{for(let se=0;se<mo;se++)for(let Te=0;Te<mo;Te++){let Ie=(Te+.5)/mo,J=(se+.5)/mo,ee=1/0,Se=1/0,Je=0,Fe=0;for(let Nt=0;Nt<Co;Nt++){let Ot=Ie-l[Nt*4],en=J-l[Nt*4+1],ne=Ot*Ot+en*en;ne<ee?(Se=ee,Fe=Je,ee=ne,Je=Nt):ne<Se&&(Se=ne,Fe=Nt)}let Qe=(se*mo+Te)*4;ke[Qe]=Je,ke[Qe+1]=Fe}k.needsUpdate=!0},H=t.seed.uniform.value,Q=se=>{for(let Te=0;Te<Co;Te++)l[Te*4]=Oa(se+Te*2),l[Te*4+1]=Oa(se+Te*2+1),l[Te*4+2]=Oa(se+Te*3),l[Te*4+3]=Oa(se+Te*3+1);g()};Q(H),P(),e(()=>{let se=t.seed.uniform.value;se!==H&&(H=se,Q(H),P(),d.fill(0))}),r(()=>{k.dispose()})}let b=ke=>{for(let k=0;k<Co;k++)l[k*4]=Oa(ke+k*2),l[k*4+1]=Oa(ke+k*2+1),l[k*4+2]=Oa(ke+k*3),l[k*4+3]=Oa(ke+k*3+1);g()},S=t.seed.uniform.value;b(S),d.fill(0),y();let w=.5,v=.5,E=Date.now();if(e(({pointer:ke})=>{let k=Date.now(),P=Math.min((k-E)/1e3,.016);E=k;let H=i.width/i.height,Q=t.seed.uniform.value;Q!==S&&(S=Q,b(S),d.fill(0));let se=t.intensity.uniform.value,Te=t.radius.uniform.value,Ie=t.decay.uniform.value,J=P>0?(ke.x-w)/P:0,ee=P>0?(ke.y-v)/P:0,Se=Math.sqrt(J*J+ee*ee),Je=5+se*2;if(Se>Je){let Fe=Je/Se;J*=Fe,ee*=Fe,Se=Je}for(let Fe=0;Fe<Co;Fe++){let Qe=l[Fe*4],Nt=l[Fe*4+1],Ot=l[Fe*4+2]-.5,en=l[Fe*4+3]-.5,ne=H>=1?(Qe-ke.x)*H:Qe-ke.x,st=H>=1?Nt-ke.y:(Nt-ke.y)/H,ze=Math.sqrt(ne*ne+st*st),Rt=d[Fe*4],At=d[Fe*4+1],dt=Math.max(.01,Ie),qt=Math.exp(-P/dt);Rt*=qt,At*=qt;let pn=0,rr=0;if(ze<Te&&Se>.01){let Rr=Math.max(0,1-ze/Te),vi=Rr*Rr,Us=vi*Se*se*P*.5;pn=J*Us,rr=ee*Us;let Ds=vi*Se*se*P*.1;pn+=Ot*Ds,rr+=en*Ds}let Fn=Math.min(1,1*P);d[Fe*4]=Rt+pn*Fn,d[Fe*4+1]=At+rr*Fn,d[Fe*4+2]=0,d[Fe*4+3]=0}y(),w=ke.x,v=ke.y}),!n)return F(0,0,0,0);let C=It(n);r(()=>{C?.renderTarget?.dispose&&C.renderTarget.dispose()});let M=_.sample(j),R=M.r.toInt(),c=M.g.toInt(),m=I(u.element(R.mul(2)),u.element(R.mul(2).add(1))),x=I(u.element(c.mul(2)),u.element(c.mul(2).add(1))),T=j.sub(m).length(),N=j.sub(x).length(),B=I(f.element(R.mul(2)),f.element(R.mul(2).add(1))),D=B.length(),O=N.sub(T),L=t.crackWidth.uniform.mul(.005),V=p(1).sub(Oe(p(0),L,O)),Z=Oe(p(0),p(.01),D),q=V.mul(Z),ae=j.sub(m).normalize(),we=I(ae.y.negate(),ae.x),Ae=j.sub(B),Ge=we.mul(t.refractionStrength.uniform).mul(.01),et=t.chromaticSplit.uniform.mul(.005),Ze=Ge.add(we.mul(et)),he=Ge,Me=Ge.sub(we.mul(et)),Pe=Ae.add(Ze.mul(q)),We=Ae.add(he.mul(q)),Xe=Ae.add(Me.mul(q)),le=Ln(Pe,C.sample(Pe),C,t.edges.uniform.value),rt=Ln(We,C.sample(We),C,t.edges.uniform.value),De=Ln(Xe,C.sample(Xe),C,t.edges.uniform.value),K=F(le.r,rt.g,De.b,rt.a),be=Ln(Ae,C.sample(Ae),C,t.edges.uniform.value),Ee=be.rgb.mul(p(1).sub(q)).add(K.rgb.mul(q)),Be=B.length(),Ke=B.x.div(Be.add(.001)),ct=B.y.div(Be.add(.001)),X=I(.3,.6).normalize(),at=Ke.mul(X.x).add(ct.mul(X.y)),nt=p(1).add(at.mul(t.shardLighting.uniform)),Ct=Oe(p(0),p(.02),Be),me=p(1).add(nt.sub(1).mul(Ct));return Vt(F(Ee.mul(me),be.a))}}});var Wl,s6=z(()=>{"use strict";Dt();On();gr();ut();Wl={name:"SimplexNoise",category:"Textures",description:"Organic noise with animated movement",props:{colorA:{default:"#ffffff",description:"First color",transform:Ce,ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#000000",description:"Second color",transform:Ce,ui:{type:"color",label:"Color B",group:"Colors"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}},scale:{default:2,description:"Pattern scale (higher = larger patterns)",ui:{type:"range",min:-2,max:5,step:.1,label:"Scale",group:"Effect"}},balance:{default:0,description:"Balance between colors (negative = more colorB, positive = more colorA)",ui:{type:["range","map"],min:-1,max:1,step:.1,label:"Balance",group:"Effect"}},contrast:{default:0,description:"Pattern contrast (higher = sharper transitions)",ui:{type:["range","map"],min:-2,max:5,step:.1,label:"Contrast",group:"Effect"}},seed:{default:0,description:"Random seed for pattern variation",ui:{type:"range",min:0,max:100,step:1,label:"Seed",group:"Effect"}},speed:{default:1,description:"Animation speed",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Animation"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=$.x.div($.y),i=I(n.x.mul(r),n.y),o=fn(t,e.speed),a=i.mul(ki(e.scale.uniform)).add(e.seed.uniform),l=Dn(_e(a.x,a.y,o.mul(.5))),s=e.contrast.uniform.add(1),u=Tt(l.mul(s).add(e.balance.uniform).mul(.5).add(.5),0,1);return Lt(e.colorB.uniform,e.colorA.uniform,u,e.colorSpace.uniform.value)}}});var jl,a6=z(()=>{"use strict";Dt();gr();ut();jl={name:"SineWave",category:"Textures",description:"Animated wave with thickness and softness",props:{color:{default:"#ffffff",transform:Ce,description:"The color of the sine wave",ui:{type:"color",label:"Color",group:"Colors"}},amplitude:{default:.15,description:"The height/amplitude of the sine wave",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Amplitude",group:"Effect"}},frequency:{default:1,description:"The frequency/number of wave cycles",ui:{type:["range","map"],min:.1,max:20,step:.1,label:"Frequency",group:"Effect"}},speed:{default:1,description:"The animation speed of the wave",ui:{type:"range",min:-5,max:5,step:.1,label:"Speed",group:"Animation"}},angle:{default:0,transform:sr,description:"The rotation angle of the wave (in degrees)",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},position:{default:{x:.5,y:.5},transform:wt,description:"The center position of the wave",ui:{type:"position",label:"Position",group:"Position"}},thickness:{default:.2,description:"The thickness of the wave line",ui:{type:["range","map"],min:0,max:2,step:.1,label:"Thickness",group:"Effect"}},softness:{default:.4,description:"Edge softness of the wave line",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Softness",group:"Effect"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=$.x.div($.y),i=I(n.x.mul(r),n.y),o=I(e.position.uniform.x.mul(r),e.position.uniform.y.oneMinus()),a=i.sub(o),l=qr(e.angle.uniform),s=Ye(l),u=fe(l),d=a.x.mul(s).sub(a.y.mul(u)),h=a.x.mul(u).add(a.y.mul(s)),f=fn(t,e.speed),g=fe(d.mul(e.frequency.uniform).mul(ci.mul(2)).add(f)).mul(e.amplitude.uniform),y=Et(h.sub(g)),_=e.thickness.uniform.mul(.5),b=e.softness.uniform.mul(.5),S=Oe(_.sub(b),_.add(b),y).oneMinus();return F(e.color.uniform.rgb,e.color.uniform.a.mul(S))}}});var c6,eve,tve,l6,u6,ql,d6=z(()=>{"use strict";Dt();On();Li();Bi();ut();c6=256,eve=56,tve=20,l6=.8,u6=.2,ql={name:"Smoke",category:"Interactive",description:"Realistic fluid smoke simulation with vorticity dynamics",usesPointer:!0,props:{colorA:{default:"#fc83f9",transform:Ce,description:"Color of fresh smoke",ui:{type:"color",label:"Start Color",group:"Colors"}},colorB:{default:"#c21c79",transform:Ce,description:"Color smoke transitions to as it ages",ui:{type:"color",label:"End Color",group:"Colors"}},emitFrom:{default:{x:.5,y:1},transform:wt,description:"The emission source point",ui:{type:"position",label:"Emit From",group:"Emission"}},direction:{default:0,description:"Emission direction (0 = up, 90 = right, 180 = down, 270 = left)",ui:{type:"range",min:0,max:360,step:1,label:"Direction",group:"Emission"}},speed:{default:20,description:"Emission velocity strength",ui:{type:"range",min:.1,max:50,step:.1,label:"Speed",group:"Emission"}},spread:{default:60,description:"Emission cone angle in degrees",ui:{type:"range",min:0,max:180,step:1,label:"Spread",group:"Emission"}},emitRadius:{default:.08,description:"Size of the emission area",ui:{type:"range",min:.01,max:.3,step:.01,label:"Emit Size",group:"Emission"}},intensity:{default:1,description:"Smoke emission density",ui:{type:"range",min:.1,max:1,step:.05,label:"Intensity",group:"Effect"}},dissipation:{default:.2,description:"How fast smoke fades over time",ui:{type:"range",min:.1,max:3,step:.1,label:"Dissipation",group:"Effect"}},detail:{default:25,description:"Fine-scale swirling detail",ui:{type:"range",min:0,max:50,step:1,label:"Detail",group:"Effect"}},gravity:{default:.5,description:"Downward gravitational pull on smoke",ui:{type:"range",min:-2,max:2,step:.1,label:"Gravity",group:"Effect"}},colorDecay:{default:.4,description:"How quickly smoke shifts from Color A to Color B",ui:{type:"range",min:0,max:3,step:.1,label:"Color Decay",group:"Colors"}},mouseInfluence:{default:.1,description:"Strength of cursor influence",ui:{type:"range",min:0,max:2,step:.05,label:"Cursor Influence",group:"Interaction"}},mouseRadius:{default:.1,description:"Radius of cursor influence area",ui:{type:"range",min:.02,max:.5,step:.01,label:"Cursor Radius",group:"Interaction"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},computeNode:({uniforms:t,onCleanup:e,renderer:n})=>{let r=c6,i=Tn(r),o=Ut(r),a=Ut(r-1),l=r*r,s=(K,be,Ee,Be)=>K.add(Ut(Ee)).clamp(Ut(0),a).mul(o).add(be.add(Ut(Be)).clamp(Ut(0),a)),u=br(l,"vec4"),d=br(l,"vec4"),h=br(l,"vec4"),f=br(l,"vec4"),g=br(l,"vec4"),y=new Nr(r,r);y.type=on;let _=Er(y);e(()=>{y.dispose()});let b=oe(.016),S=oe(128),w=oe(256),v=oe(0),E=oe(-50),C=oe(1),M=oe(0),R=oe(.5),c=oe(15),m=oe(.7),x=oe(1),T=oe(30),N=oe(.5),B=oe(128),D=oe(128),O=oe(0),L=oe(0),V=oe(0),Z=oe(900),q=oe(1),ae=qe(()=>{let K=Kt,be=K.mod(i),Ee=K.div(i),Be=be.toFloat().add(p(.5)),Ke=Ee.toFloat().add(p(.5)),ct=Be.sub(S),X=Ke.sub(w),at=ct.mul(ct).add(X.mul(X)),nt=c.mul(c).max(p(1)),Ct=at.negate().div(nt).exp(),me=h.element(K),ke=me.x,k=m.mul(Ct).mul(b).mul(p(8)),P=ke.add(k).min(p(1)),H=k.div(P.max(p(.001)));h.element(K).assign(F(P,me.y.mul(p(1).sub(H.min(p(1)))),p(0),p(0)));let Q=u.element(K),se=ct.mul(C).add(X.mul(M)).div(c.max(p(1))),Te=v.mul(v).add(E.mul(E)).max(p(1)),Ie=v.add(C.mul(se).mul(R).mul(Te.sqrt())),J=E.add(M.mul(se).mul(R).mul(Te.sqrt())),ee=Ct.mul(b).mul(p(3)).min(p(1)),Se=N.mul(ke).mul(b).mul(p(r*.08)),Je=Be.sub(B),Fe=Ke.sub(D),Qe=Je.mul(Je).add(Fe.mul(Fe)).negate().div(Z.max(p(1))).exp().mul(V);u.element(K).assign(F(Re(Q.x,Ie,ee).add(O.mul(Qe)),Re(Q.y,J,ee).add(Se).add(L.mul(Qe)),Q.z,p(0)))})().compute(l,[256]),we=qe(()=>{let K=Kt,be=K.mod(i).toInt(),Ee=K.div(i).toInt(),Be=u.element(s(Ee,be,0,-1)),Ke=u.element(s(Ee,be,0,1)),ct=u.element(s(Ee,be,-1,0)),X=u.element(s(Ee,be,1,0)),at=Ke.y.sub(Be.y).sub(X.x.sub(ct.x)).mul(p(.5)),nt=u.element(K);u.element(K).assign(F(nt.x,nt.y,at,p(0)))})().compute(l,[256]),Ae=qe(()=>{let K=Kt,be=K.mod(i).toInt(),Ee=K.div(i).toInt(),Be=u.element(s(Ee,be,0,-1)).z.abs(),Ke=u.element(s(Ee,be,0,1)).z.abs(),ct=u.element(s(Ee,be,-1,0)).z.abs(),X=u.element(s(Ee,be,1,0)).z.abs(),at=u.element(K).z,nt=Ke.sub(Be).mul(p(.5)),Ct=X.sub(ct).mul(p(.5)),me=nt.mul(nt).add(Ct.mul(Ct)).sqrt().max(p(1e-5)),ke=Ct.div(me).mul(at).mul(T).mul(b),k=nt.div(me).negate().mul(at).mul(T).mul(b),P=u.element(K);u.element(K).assign(F(P.x.add(ke),P.y.add(k),P.z,p(0)))})().compute(l,[256]),Ge=qe(()=>{let K=Kt,be=K.mod(i).toInt(),Ee=K.div(i).toInt(),Be=be.toFloat(),Ke=Ee.toFloat(),ct=u.element(K),X=u.element(s(Ee,be,0,-1)).x,at=u.element(s(Ee,be,0,1)).x,nt=u.element(s(Ee,be,-1,0)).y,Ct=u.element(s(Ee,be,1,0)).y,me=Be.lessThan(p(.5)).select(ct.x.negate(),X),ke=Be.greaterThan(p(r-1.5)).select(ct.x.negate(),at),k=Ke.lessThan(p(.5)).select(ct.y.negate(),nt),P=Ke.greaterThan(p(r-1.5)).select(ct.y.negate(),Ct),H=ke.sub(me).add(P.sub(k)).mul(p(.5)),Q=g.element(K).x.mul(p(l6));g.element(K).assign(F(Q,H,p(0),p(0)))})().compute(l,[256]),et=qe(()=>{let K=Kt,be=K.mod(i).toInt(),Ee=K.div(i).toInt(),Be=g.element(s(Ee,be,0,-1)).x,Ke=g.element(s(Ee,be,0,1)).x,ct=g.element(s(Ee,be,-1,0)).x,X=g.element(s(Ee,be,1,0)).x,at=g.element(K).y;g.element(K).assign(F(Be.add(Ke).add(ct).add(X).sub(at).mul(p(.25)),at,p(0),p(0)))})().compute(l,[256]),Ze=qe(()=>{let K=Kt,be=K.mod(i).toInt(),Ee=K.div(i).toInt(),Be=g.element(s(Ee,be,0,-1)).x,Ke=g.element(s(Ee,be,0,1)).x,ct=g.element(s(Ee,be,-1,0)).x,X=g.element(s(Ee,be,1,0)).x,at=u.element(K);u.element(K).assign(F(at.x.sub(Ke.sub(Be).mul(p(.5))),at.y.sub(X.sub(ct).mul(p(.5))),at.z,p(0)))})().compute(l,[256]),he=qe(()=>{let K=Kt,be=K.mod(i),Ee=K.div(i),Be=u.element(K),Ke=be.toFloat().sub(Be.x.mul(b)).clamp(p(0),p(r-1)),ct=Ee.toFloat().sub(Be.y.mul(b)).clamp(p(0),p(r-1)),X=Zt(Ke).clamp(p(0),p(r-2)),at=Zt(ct).clamp(p(0),p(r-2)),nt=Ke.sub(X),Ct=ct.sub(at),me=X.toInt(),ke=at.toInt(),k=u.element(ke.mul(o).add(me)),P=u.element(ke.mul(o).add(me.add(Ut(1)))),H=u.element(ke.add(Ut(1)).mul(o).add(me)),Q=u.element(ke.add(Ut(1)).mul(o).add(me.add(Ut(1)))),se=p(1).add(p(u6).mul(b));d.element(K).assign(F(Re(Re(k.x,P.x,nt),Re(H.x,Q.x,nt),Ct).div(se),Re(Re(k.y,P.y,nt),Re(H.y,Q.y,nt),Ct).div(se),p(0),p(0)))})().compute(l,[256]),Me=qe(()=>{let K=d.element(Kt);u.element(Kt).assign(F(K.x,K.y,p(0),p(0)))})().compute(l,[256]),Pe=qe(()=>{let K=Kt,be=K.mod(i),Ee=K.div(i),Be=u.element(K),Ke=be.toFloat().sub(Be.x.mul(b)).clamp(p(0),p(r-1)),ct=Ee.toFloat().sub(Be.y.mul(b)).clamp(p(0),p(r-1)),X=Zt(Ke).clamp(p(0),p(r-2)),at=Zt(ct).clamp(p(0),p(r-2)),nt=Ke.sub(X),Ct=ct.sub(at),me=X.toInt(),ke=at.toInt(),k=h.element(ke.mul(o).add(me)),P=h.element(ke.mul(o).add(me.add(Ut(1)))),H=h.element(ke.add(Ut(1)).mul(o).add(me)),Q=h.element(ke.add(Ut(1)).mul(o).add(me.add(Ut(1)))),se=Re(Re(k.x,P.x,nt),Re(H.x,Q.x,nt),Ct),Te=Re(Re(k.y,P.y,nt),Re(H.y,Q.y,nt),Ct),Ie=p(1).add(x.mul(b));f.element(K).assign(F(se.div(Ie).max(p(0)),Te.add(b.mul(p(.4)).mul(q)).min(p(1)),p(0),p(0)))})().compute(l,[256]),We=qe(()=>{let K=f.element(Kt);h.element(Kt).assign(F(K.x,K.y,p(0),p(0)))})().compute(l,[256]),Xe=qe(()=>{let K=Kt,be=K.mod(i),Ee=K.div(i),Be=h.element(K);er(_,En(be,Ee),F(Be.x,Be.y,p(0),p(0))).toWriteOnly()})().compute(l,[256]),le=Date.now(),rt=.5,De=.5;return{outputs:{smokeTexture:y},getComputeNodes:K=>{let be=Date.now(),Ee=Math.min((be-le)/1e3,.033);if(le=be,Ee<.001)return null;let Be=(J,ee)=>{let Se=t[J];if(!Se)return ee;if(typeof Se.getCpuValue=="function"){let Fe=Se.getCpuValue();return typeof Fe=="number"?Fe:ee}let Je=Se.uniform?.value;return typeof Je=="number"?Je:ee},Ke=Be("speed",3),ct=Be("direction",0)*Math.PI/180,X=Math.min(89*Math.PI/180,Be("spread",45)*Math.PI/360),at=t.emitFrom.uniform.value,nt=typeof at=="object"?at.x??.5:.5,Ct=typeof at=="object"?at.y??0:0;b.value=Ee,S.value=nt*r,w.value=(1-Ct)*r;let me=Ke*r*.15;v.value=Math.sin(ct)*me,E.value=-Math.cos(ct)*me,C.value=Math.cos(ct),M.value=Math.sin(ct),R.value=Math.tan(X),c.value=Be("emitRadius",.06)*r,m.value=Be("intensity",.7),x.value=Be("dissipation",1),T.value=Be("detail",30),N.value=Be("gravity",.5),q.value=Be("colorDecay",1);let ke=Be("mouseInfluence",.5),k=Be("mouseRadius",.12),P=K?.pointer?.x??rt,H=K?.pointer?.y??De,Q=P-rt,se=H-De;rt=P,De=H;let Te=Math.sqrt(Q*Q+se*se),Ie=k*r;Z.value=Ie*Ie,Te>5e-4&&ke>0?(B.value=P*r,D.value=H*r,O.value=Q*r*15*ke,L.value=se*r*15*ke,V.value=1):V.value=0,n.compute(ae),n.compute(we),n.compute(Ae),n.compute(Ge);for(let J=0;J<tve;J++)n.compute(et);return n.compute(Ze),n.compute(he),n.compute(Me),n.compute(Pe),n.compute(We),[Xe]}}},fragmentNode:({uniforms:t,onBeforeRender:e,onCleanup:n,computeOutputs:r})=>{let i;if(r?.smokeTexture)i=vn(r.smokeTexture);else{let s=eve,u=s*s,d=new Float32Array(u),h=new Float32Array(u),f=new Float32Array(u),g=new Float32Array(u),y=new Float32Array(u),_=new Float32Array(u),b=new Float32Array(u),S=new Float32Array(u),w=new Float32Array(u),v=new Float32Array(u),E=new Float32Array(u),C=new Float32Array(u*4),M=new ir(C,s,s,qn,on);M.magFilter=sn,M.minFilter=sn,M.needsUpdate=!0,i=vn(M);let R=(B,D)=>{let O=t[B];if(!O)return D;if(typeof O.getCpuValue=="function"){let V=O.getCpuValue();return typeof V=="number"?V:D}let L=O.uniform?.value;return typeof L=="number"?L:D},c=Date.now(),m=.5,x=.5,T=(B,D,O)=>{let L=Math.max(0,Math.min(s-1,D)),V=Math.max(0,Math.min(s-1,O)),Z=Math.max(0,Math.min(s-2,Math.floor(L))),q=Math.max(0,Math.min(s-2,Math.floor(V))),ae=L-Z,we=V-q,Ae=q*s+Z;return(1-ae)*(1-we)*B[Ae]+ae*(1-we)*B[Ae+1]+(1-ae)*we*B[Ae+s]+ae*we*B[Ae+s+1]},N=(B,D,O,L)=>Math.max(0,Math.min(s-1,B+O))*s+Math.max(0,Math.min(s-1,D+L));e(({pointer:B})=>{let D=Date.now(),O=Math.min((D-c)/1e3,.033);if(c=D,O<.001)return;let L=R("speed",3),V=t.direction.uniform.value*Math.PI/180,Z=Math.min(89*Math.PI/180,t.spread.uniform.value*Math.PI/360),q=t.emitFrom.uniform.value,ae=(typeof q=="object"?q.x??.5:.5)*s,we=(1-(typeof q=="object"?q.y??0:0))*s,Ae=L*s*.15,Ge=Math.sin(V)*Ae,et=-Math.cos(V)*Ae,Ze=Math.cos(V),he=Math.sin(V),Me=Math.tan(Z),Pe=t.emitRadius.uniform.value*s,We=t.intensity.uniform.value,Xe=R("detail",30),le=R("gravity",.5),rt=R("colorDecay",1),De=R("dissipation",.2),K=t.mouseInfluence.uniform.value,be=t.mouseRadius.uniform.value*s,Ee=B?.x??m,Be=B?.y??x,Ke=Ee-m,ct=Be-x;m=Ee,x=Be;let X=Math.sqrt(Ke*Ke+ct*ct)>5e-4&&K>0,at=X?Ke*s*15*K:0,nt=X?ct*s*15*K:0,Ct=Ee*s,me=Be*s;for(let P=0;P<s;P++)for(let H=0;H<s;H++){let Q=P*s+H,se=H+.5-ae,Te=P+.5-we,Ie=Math.exp(-(se*se+Te*Te)/Math.max(1,Pe*Pe)),J=y[Q],ee=We*Ie*O*8,Se=Math.min(1,J+ee);_[Q]*=1-Math.min(1,ee/Math.max(.001,Se)),y[Q]=Se;let Je=(se*Ze+Te*he)/Math.max(1,Pe),Fe=Math.sqrt(Ge*Ge+et*et),Qe=Ge+Ze*Je*Me*Fe,Nt=et+he*Je*Me*Fe,Ot=Math.min(1,Ie*O*3),en=H+.5-Ct,ne=P+.5-me,st=X?Math.exp(-(en*en+ne*ne)/Math.max(1,be*be)):0;d[Q]=d[Q]*(1-Ot)+Qe*Ot+at*st,h[Q]=h[Q]*(1-Ot)+Nt*Ot+le*J*O*s*.08+nt*st}if(Xe>0){for(let P=0;P<s;P++)for(let H=0;H<s;H++)E[P*s+H]=.5*(h[N(P,H,0,1)]-h[N(P,H,0,-1)]-(d[N(P,H,1,0)]-d[N(P,H,-1,0)]));for(let P=0;P<s;P++)for(let H=0;H<s;H++){let Q=P*s+H,se=.5*(Math.abs(E[N(P,H,0,1)])-Math.abs(E[N(P,H,0,-1)])),Te=.5*(Math.abs(E[N(P,H,1,0)])-Math.abs(E[N(P,H,-1,0)])),Ie=Math.max(1e-5,Math.sqrt(se*se+Te*Te));d[Q]+=Te/Ie*E[Q]*Xe*O,h[Q]+=-(se/Ie)*E[Q]*Xe*O}}for(let P=0;P<s;P++)for(let H=0;H<s;H++){let Q=P*s+H,se=H===0?-d[Q]:d[N(P,H,0,-1)],Te=H===s-1?-d[Q]:d[N(P,H,0,1)],Ie=P===0?-h[Q]:h[N(P,H,-1,0)],J=P===s-1?-h[Q]:h[N(P,H,1,0)];v[Q]=.5*(Te-se+J-Ie),w[Q]*=l6}for(let P=0;P<6;P++)for(let H=0;H<s;H++)for(let Q=0;Q<s;Q++){let se=H*s+Q;w[se]=.25*(w[N(H,Q,0,-1)]+w[N(H,Q,0,1)]+w[N(H,Q,-1,0)]+w[N(H,Q,1,0)]-v[se])}for(let P=0;P<s;P++)for(let H=0;H<s;H++){let Q=P*s+H;d[Q]-=.5*(w[N(P,H,0,1)]-w[N(P,H,0,-1)]),h[Q]-=.5*(w[N(P,H,1,0)]-w[N(P,H,-1,0)])}let ke=1+u6*O;for(let P=0;P<s;P++)for(let H=0;H<s;H++){let Q=P*s+H;f[Q]=T(d,H-d[Q]*O,P-h[Q]*O)/ke,g[Q]=T(h,H-d[Q]*O,P-h[Q]*O)/ke}d.set(f),h.set(g);let k=1+De*O;for(let P=0;P<s;P++)for(let H=0;H<s;H++){let Q=P*s+H,se=H-d[Q]*O,Te=P-h[Q]*O;b[Q]=Math.max(0,T(y,se,Te)/k),S[Q]=Math.min(1,T(_,se,Te)+O*.4*rt)}y.set(b),_.set(S);for(let P=0;P<u;P++)C[P*4]=y[P],C[P*4+1]=_[P];M.needsUpdate=!0}),n(()=>{M.dispose()})}let o,a;if(r?.smokeTexture){let s=p(1/c6),u=i.sample(j),d=i.sample(j.add(I(s,p(0)))),h=i.sample(j.add(I(p(0),s))),f=i.sample(j.add(I(s.negate(),p(0)))),g=i.sample(j.add(I(p(0),s.negate())));o=u.x.mul(p(.5)).add(d.x.mul(p(.125))).add(h.x.mul(p(.125))).add(f.x.mul(p(.125))).add(g.x.mul(p(.125))),a=u.y.mul(p(.5)).add(d.y.mul(p(.125))).add(h.y.mul(p(.125))).add(f.y.mul(p(.125))).add(g.y.mul(p(.125)))}else{let s=i.sample(j);o=s.x,a=s.y}let l=Lt(t.colorA.uniform,t.colorB.uniform,a,t.colorSpace.uniform.value);return F(l.x,l.y,l.z,l.w.mul(o))}}});var nve,KI,f6,rve,ive,ove,Xl,h6=z(()=>{"use strict";Dt();On();eo();Li();Bi();ut();nve=JSON.stringify({type:"circleSDF",radius:.35}),KI=256,f6=56,rve=20,ive=.8,ove=.2,Xl={name:"SmokeFill",category:"Shape Effects",description:"Fill a shape with swirling fluid smoke that interacts with the shape boundary",requiresRTT:!1,requiresChild:!1,usesPointer:!0,props:{colorA:{default:"#8cf3ff",transform:Ce,description:"Color of fresh smoke",ui:{type:"color",label:"Start Color",group:"Colors"}},colorB:{default:"#04a0d6",transform:Ce,description:"Color smoke transitions to as it ages",ui:{type:"color",label:"End Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the shape",ui:{type:"position",label:"Center",group:"Position"}},scale:{default:1,description:"Scale of the shape (1 = default size)",ui:{type:"range",min:.1,max:3,step:.05,label:"Scale",group:"Position"}},emitFrom:{default:{x:.5,y:.5},transform:wt,description:"Emission source point within the shape",ui:{type:"position",label:"Emit From",group:"Emission"}},direction:{default:0,description:"Emission direction (0 = up, 90 = right, 180 = down, 270 = left)",ui:{type:"range",min:0,max:360,step:1,label:"Direction",group:"Emission"}},speed:{default:10,description:"Emission velocity strength",ui:{type:"range",min:.1,max:30,step:.1,label:"Speed",group:"Emission"}},spread:{default:60,description:"Emission cone angle in degrees",ui:{type:"range",min:0,max:180,step:1,label:"Spread",group:"Emission"}},emitRadius:{default:.03,description:"Size of the emission area",ui:{type:"range",min:.01,max:.3,step:.01,label:"Emit Size",group:"Emission"}},intensity:{default:1,description:"Smoke emission density",ui:{type:"range",min:.1,max:1,step:.05,label:"Intensity",group:"Effect"}},dissipation:{default:.3,description:"How fast smoke fades over time",ui:{type:"range",min:.1,max:5,step:.1,label:"Dissipation",group:"Effect"}},detail:{default:25,description:"Fine-scale swirling detail",ui:{type:"range",min:0,max:50,step:1,label:"Detail",group:"Effect"}},gravity:{default:.5,description:"Downward gravitational pull on smoke \u2014 0 = weightless, negative values = smoke rises",ui:{type:"range",min:-2,max:2,step:.1,label:"Gravity",group:"Effect"}},colorDecay:{default:.4,description:"How quickly smoke shifts from Color A to Color B",ui:{type:"range",min:0,max:3,step:.1,label:"Color Decay",group:"Colors"}},mouseInfluence:{default:.1,description:"Strength of cursor influence",ui:{type:"range",min:0,max:2,step:.05,label:"Cursor Influence",group:"Interaction"}},mouseRadius:{default:.1,description:"Radius of cursor influence area",ui:{type:"range",min:.02,max:.5,step:.01,label:"Cursor Radius",group:"Interaction"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}},shape:{default:nve,description:"Serialized shape configuration (JSON)",ui:{type:"shape",label:"Shape",group:"Shape"}},shapeSdfUrl:{default:"",compileTime:!0,description:"URL to a pre-generated SDF .bin file"},shapeType:{default:"",compileTime:!0,description:"Active SDF shape type"}},computeNode:({uniforms:t,onCleanup:e,onBeforeRender:n,renderer:r})=>{let i=KI,o=Tn(i),a=Ut(i),l=Ut(i-1),s=i*i,u=(me,ke,k,P)=>me.add(Ut(k)).clamp(Ut(0),l).mul(a).add(ke.add(Ut(P)).clamp(Ut(0),l)),d=t.shapeSdfUrl.uniform.value,h=(()=>{let me=t.shape.uniform.value;try{return JSON.parse(me)}catch{return{type:"circleSDF",radius:.35}}})(),f;d?f=Ns(d,n,e):f=Os(t.shapeType.uniform.value||h.type||"circleSDF",h,t.shape,n);let g=br(s,"vec4"),y=br(s,"vec4"),_=br(s,"vec4"),b=br(s,"vec4"),S=br(s,"vec4"),w=br(s,"vec4"),v=new Nr(i,i);v.type=on;let E=Er(v);e(()=>{v.dispose()});let C=oe(.016),M=oe(.5),R=oe(.5),c=oe(0),m=oe(-50),x=oe(1),T=oe(0),N=oe(.5),B=oe(10),D=oe(.8),O=oe(.5),L=oe(30),V=oe(.5),Z=oe(1),q=oe(.5),ae=oe(.5),we=oe(1),Ae=oe(1),Ge=oe(128),et=oe(128),Ze=oe(0),he=oe(0),Me=oe(0),Pe=oe(900),We=qe(()=>{let me=Kt,ke=me.mod(o),k=me.div(o),P=ke.toFloat().add(p(.5)).div(p(i)),H=k.toFloat().add(p(.5)).div(p(i)),Q=I(P.sub(q).mul(Ae).div(we).add(p(.5)),H.sub(ae).div(we).add(p(.5))),se=f(Q).x,Te=se.lessThan(p(0)).select(p(1),p(0));w.element(me).assign(F(Te,se,p(0),p(0)))})().compute(s,[256]),Xe=qe(()=>{let me=Kt,ke=me.mod(o),k=me.div(o),P=w.element(me).x,H=ke.toFloat().add(p(.5)),Q=k.toFloat().add(p(.5)),se=H.sub(M),Te=Q.sub(R),Ie=se.mul(se).add(Te.mul(Te)),J=B.mul(B).max(p(1)),ee=Ie.negate().div(J).exp().mul(P),Se=_.element(me),Je=Se.x,Fe=D.mul(ee).mul(C).mul(p(8)),Qe=Je.add(Fe).min(p(1)),Nt=Fe.div(Qe.max(p(.001)));_.element(me).assign(F(Qe,Se.y.mul(p(1).sub(Nt.min(p(1)))),p(0),p(0)));let Ot=g.element(me),en=se.mul(x).add(Te.mul(T)).div(B.max(p(1))),ne=c.mul(c).add(m.mul(m)).max(p(1)),st=c.add(x.mul(en).mul(N).mul(ne.sqrt())),ze=m.add(T.mul(en).mul(N).mul(ne.sqrt())),Rt=ee.mul(C).mul(p(3)).min(p(1)),At=V.mul(Je).mul(C).mul(p(i*.08)).mul(P),dt=H.sub(Ge),qt=Q.sub(et),pn=dt.mul(dt).add(qt.mul(qt)).negate().div(Pe.max(p(1))).exp().mul(Me).mul(P);g.element(me).assign(F(Re(Ot.x,st,Rt).add(Ze.mul(pn)),Re(Ot.y,ze,Rt).add(At).add(he.mul(pn)),Ot.z,p(0)))})().compute(s,[256]),le=qe(()=>{let me=Kt,ke=me.mod(o).toInt(),k=me.div(o).toInt(),P=g.element(u(k,ke,0,-1)),H=g.element(u(k,ke,0,1)),Q=g.element(u(k,ke,-1,0)),se=g.element(u(k,ke,1,0)),Te=H.y.sub(P.y).sub(se.x.sub(Q.x)).mul(p(.5)),Ie=g.element(me);g.element(me).assign(F(Ie.x,Ie.y,Te,p(0)))})().compute(s,[256]),rt=qe(()=>{let me=Kt,ke=me.mod(o).toInt(),k=me.div(o).toInt(),P=g.element(u(k,ke,0,-1)).z.abs(),H=g.element(u(k,ke,0,1)).z.abs(),Q=g.element(u(k,ke,-1,0)).z.abs(),se=g.element(u(k,ke,1,0)).z.abs(),Te=g.element(me).z,Ie=H.sub(P).mul(p(.5)),J=se.sub(Q).mul(p(.5)),ee=Ie.mul(Ie).add(J.mul(J)).sqrt().max(p(1e-5)),Se=g.element(me);g.element(me).assign(F(Se.x.add(J.div(ee).mul(Te).mul(L).mul(C)),Se.y.add(Ie.div(ee).negate().mul(Te).mul(L).mul(C)),Se.z,p(0)))})().compute(s,[256]),De=qe(()=>{let me=Kt,ke=me.mod(o).toInt(),k=me.div(o).toInt(),P=ke.toFloat(),H=k.toFloat(),Q=w.element(me).x,se=g.element(me),Te=P.lessThan(p(.5)).or(w.element(u(k,ke,0,-1)).x.lessThan(p(.5))),Ie=P.greaterThan(p(i-1.5)).or(w.element(u(k,ke,0,1)).x.lessThan(p(.5))),J=H.lessThan(p(.5)).or(w.element(u(k,ke,-1,0)).x.lessThan(p(.5))),ee=H.greaterThan(p(i-1.5)).or(w.element(u(k,ke,1,0)).x.lessThan(p(.5))),Se=Te.select(se.x.negate(),g.element(u(k,ke,0,-1)).x),Je=Ie.select(se.x.negate(),g.element(u(k,ke,0,1)).x),Fe=J.select(se.y.negate(),g.element(u(k,ke,-1,0)).y),Qe=ee.select(se.y.negate(),g.element(u(k,ke,1,0)).y),Nt=Je.sub(Se).add(Qe.sub(Fe)).mul(p(.5)).mul(Q),Ot=S.element(me).x.mul(p(ive)).mul(Q);S.element(me).assign(F(Ot,Nt,p(0),p(0)))})().compute(s,[256]),K=qe(()=>{let me=Kt,ke=me.mod(o).toInt(),k=me.div(o).toInt(),P=S.element(u(k,ke,0,-1)).x,H=S.element(u(k,ke,0,1)).x,Q=S.element(u(k,ke,-1,0)).x,se=S.element(u(k,ke,1,0)).x,Te=S.element(me).y;S.element(me).assign(F(P.add(H).add(Q).add(se).sub(Te).mul(p(.25)),Te,p(0),p(0)))})().compute(s,[256]),be=qe(()=>{let me=Kt,ke=me.mod(o).toInt(),k=me.div(o).toInt(),P=S.element(u(k,ke,0,-1)).x,H=S.element(u(k,ke,0,1)).x,Q=S.element(u(k,ke,-1,0)).x,se=S.element(u(k,ke,1,0)).x,Te=g.element(me);g.element(me).assign(F(Te.x.sub(H.sub(P).mul(p(.5))),Te.y.sub(se.sub(Q).mul(p(.5))),Te.z,p(0)))})().compute(s,[256]),Ee=qe(()=>{let me=Kt,ke=me.mod(o),k=me.div(o),P=g.element(me),H=ke.toFloat().sub(P.x.mul(C)).clamp(p(0),p(i-1)),Q=k.toFloat().sub(P.y.mul(C)).clamp(p(0),p(i-1)),se=Zt(H).clamp(p(0),p(i-2)),Te=Zt(Q).clamp(p(0),p(i-2)),Ie=H.sub(se),J=Q.sub(Te),ee=se.toInt(),Se=Te.toInt(),Je=g.element(Se.mul(a).add(ee)),Fe=g.element(Se.mul(a).add(ee.add(Ut(1)))),Qe=g.element(Se.add(Ut(1)).mul(a).add(ee)),Nt=g.element(Se.add(Ut(1)).mul(a).add(ee.add(Ut(1)))),Ot=p(1).add(p(ove).mul(C)),en=w.element(me).x;y.element(me).assign(F(Re(Re(Je.x,Fe.x,Ie),Re(Qe.x,Nt.x,Ie),J).div(Ot).mul(en),Re(Re(Je.y,Fe.y,Ie),Re(Qe.y,Nt.y,Ie),J).div(Ot).mul(en),p(0),p(0)))})().compute(s,[256]),Be=qe(()=>{let me=y.element(Kt);g.element(Kt).assign(F(me.x,me.y,p(0),p(0)))})().compute(s,[256]),Ke=qe(()=>{let me=Kt,ke=me.mod(o),k=me.div(o),P=g.element(me),H=ke.toFloat().sub(P.x.mul(C)).clamp(p(0),p(i-1)),Q=k.toFloat().sub(P.y.mul(C)).clamp(p(0),p(i-1)),se=Zt(H).clamp(p(0),p(i-2)),Te=Zt(Q).clamp(p(0),p(i-2)),Ie=H.sub(se),J=Q.sub(Te),ee=se.toInt(),Se=Te.toInt(),Je=_.element(Se.mul(a).add(ee)),Fe=_.element(Se.mul(a).add(ee.add(Ut(1)))),Qe=_.element(Se.add(Ut(1)).mul(a).add(ee)),Nt=_.element(Se.add(Ut(1)).mul(a).add(ee.add(Ut(1)))),Ot=Re(Re(Je.x,Fe.x,Ie),Re(Qe.x,Nt.x,Ie),J),en=Re(Re(Je.y,Fe.y,Ie),Re(Qe.y,Nt.y,Ie),J),ne=p(1).add(O.mul(C)),st=w.element(me).x;b.element(me).assign(F(Ot.div(ne).max(p(0)).mul(st),en.add(C.mul(p(.4)).mul(Z)).min(p(1)),p(0),p(0)))})().compute(s,[256]),ct=qe(()=>{let me=b.element(Kt);_.element(Kt).assign(F(me.x,me.y,p(0),p(0)))})().compute(s,[256]),X=qe(()=>{let me=Kt,ke=me.mod(o),k=me.div(o),P=_.element(me);er(E,En(ke,k),F(P.x,P.y,p(0),p(0))).toWriteOnly()})().compute(s,[256]),at=Date.now(),nt=.5,Ct=.5;return{outputs:{smokeTexture:v},getComputeNodes:me=>{let ke=Date.now(),k=Math.min((ke-at)/1e3,.033);if(at=ke,k<.001)return null;let P=(dt,qt)=>{let pn=t[dt];if(!pn)return qt;if(typeof pn.getCpuValue=="function"){let Fn=pn.getCpuValue();return typeof Fn=="number"?Fn:qt}let rr=pn.uniform?.value;return typeof rr=="number"?rr:qt},H=P("speed",2),Q=P("direction",0)*Math.PI/180,se=Math.min(89*Math.PI/180,P("spread",60)*Math.PI/360),Te=t.center.uniform.value,Ie=typeof Te=="object"?Te.x??.5:.5,J=typeof Te=="object"?Te.y??.5:.5,ee=typeof window<"u"&&r?.domElement?r.domElement.width/Math.max(1,r.domElement.height):1;C.value=k,q.value=Ie,ae.value=1-J,we.value=P("scale",1),Ae.value=ee;let Se=t.emitFrom?.uniform?.value,Je=typeof Se=="object"?Se.x??.5:.5,Fe=typeof Se=="object"?Se.y??.5:.5;M.value=Je*i,R.value=(1-Fe)*i;let Qe=H*i*.15;c.value=Math.sin(Q)*Qe,m.value=-Math.cos(Q)*Qe,x.value=Math.cos(Q),T.value=Math.sin(Q),N.value=Math.tan(se),B.value=P("emitRadius",.03)*i,D.value=P("intensity",.8),O.value=P("dissipation",.5),L.value=P("detail",30),V.value=P("gravity",.5),Z.value=P("colorDecay",1);let Nt=P("mouseInfluence",.5),Ot=P("mouseRadius",.12),en=me?.pointer?.x??nt,ne=me?.pointer?.y??Ct,st=en-nt,ze=ne-Ct;nt=en,Ct=ne;let Rt=Math.sqrt(st*st+ze*ze),At=Ot*i;Pe.value=At*At,Rt>5e-4&&Nt>0?(Ge.value=en*i,et.value=ne*i,Ze.value=st*i*15*Nt,he.value=ze*i*15*Nt,Me.value=1):Me.value=0,r.compute(We),r.compute(Xe),r.compute(le),r.compute(rt),r.compute(De);for(let dt=0;dt<rve;dt++)r.compute(K);return r.compute(be),r.compute(Ee),r.compute(Be),r.compute(Ke),r.compute(ct),[X]}}},fragmentNode:({uniforms:t,onBeforeRender:e,onCleanup:n,computeOutputs:r})=>{let i=t.shapeSdfUrl.uniform.value,o=(()=>{let w=t.shape.uniform.value;try{return JSON.parse(w)}catch{return{type:"circleSDF",radius:.35}}})(),a;i?a=Ns(i,e,n):a=Os(t.shapeType.uniform.value||o.type||"circleSDF",o,t.shape,e);let l,s=r?.smokeTexture?KI:f6;if(r?.smokeTexture)l=vn(r.smokeTexture);else{let w=f6,v=w*w,E=new Float32Array(v*4),C=new ir(E,w,w,qn,on);C.magFilter=sn,C.minFilter=sn,C.needsUpdate=!0,l=vn(C);let M=(c,m)=>{let x=t[c];if(!x)return m;if(typeof x.getCpuValue=="function"){let N=x.getCpuValue();return typeof N=="number"?N:m}let T=x.uniform?.value;return typeof T=="number"?T:m},R=Date.now();e(()=>{let c=Date.now(),m=Math.min((c-R)/1e3,.033);if(R=c,m<.001)return;let x=M("intensity",.8),T=M("dissipation",.5),N=t.emitFrom?.uniform?.value,B=(typeof N=="object"?N.x??.5:.5)*w,D=(1-(typeof N=="object"?N.y??.5:.5))*w,O=M("emitRadius",.03)*w;for(let L=0;L<w;L++)for(let V=0;V<w;V++){let Z=L*w+V,q=V+.5-B,ae=L+.5-D,we=Math.exp(-(q*q+ae*ae)/Math.max(1,O*O));E[Z*4]=Math.max(0,(E[Z*4]+x*we*m*8)/(1+T*m)),E[Z*4+1]=Math.min(1,E[Z*4+1]+m*.4*M("colorDecay",1))}C.needsUpdate=!0}),n(()=>{C.dispose()})}let u=j,d=$.x.div($.y),h=I(t.center.uniform.x,t.center.uniform.y.oneMinus()),f=t.scale.uniform,g=I(u.x.sub(h.x).mul(d).div(f).add(p(.5)),u.y.sub(h.y).div(f).add(p(.5))),y=a(g).x.negate().mul(p(s*4)).clamp(p(0),p(1)),_,b;if(r?.smokeTexture){let w=p(1/KI),v=l.sample(j),E=l.sample(j.add(I(w,p(0)))),C=l.sample(j.add(I(p(0),w))),M=l.sample(j.add(I(w.negate(),p(0)))),R=l.sample(j.add(I(p(0),w.negate())));_=v.x.mul(p(.5)).add(E.x.mul(p(.125))).add(C.x.mul(p(.125))).add(M.x.mul(p(.125))).add(R.x.mul(p(.125))),b=v.y.mul(p(.5)).add(E.y.mul(p(.125))).add(C.y.mul(p(.125))).add(M.y.mul(p(.125))).add(R.y.mul(p(.125)))}else{let w=l.sample(j);_=w.x,b=w.y}let S=Lt(t.colorA.uniform,t.colorB.uniform,b,t.colorSpace.uniform.value);return F(S.x,S.y,S.z,S.w.mul(_).mul(y))}}});var $l,m6=z(()=>{"use strict";ut();$l={name:"Solarize",category:"Adjustments",description:"Inverts tones above a luminance threshold \u2014 a classic darkroom and photo effect",requiresChild:!0,props:{threshold:{default:.5,description:"Luminance level above which colors are inverted. Pixels brighter than this threshold get flipped.",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Threshold",group:"Effect"}},strength:{default:1,description:"Blend between original (0) and fully solarized (1)",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Strength",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return console.error("You must pass a child component into the Solarize shader."),F(0);let n=t.threshold.uniform,r=t.strength.uniform,i=kt(e.rgb,_e(.299,.587,.114)),o=_e(1).sub(e.rgb),a=i.greaterThan(n).select(o,e.rgb);return F(Re(e.rgb,a,r),e.a)}}});var Yl,p6=z(()=>{"use strict";Dt();Yl={name:"SolidColor",category:"Textures",description:"Fill the canvas with a single solid color",props:{color:{default:"#5b18ca",transform:Ce,description:"The solid color to display",ui:{type:"color",label:"Color",group:"Colors"}}},fragmentNode:({uniforms:t})=>t.color.uniform}});var Zl,g6=z(()=>{"use strict";Dt();Wn();ut();Zl={name:"Spherize",category:"Distortions",description:"Map content onto a 3D sphere surface with depth distortion",requiresRTT:!0,requiresChild:!0,props:{radius:{default:1,description:"Radius of the sphere (1 = half viewport height)",ui:{type:["range","map"],min:.1,max:3,step:.1,label:"Radius",group:"Effect"}},depth:{default:1,description:"How much the sphere bulges toward viewer (0 = flat, higher = more bulge)",ui:{type:["range","map"],min:0,max:3,step:.1,label:"Depth",group:"Effect"}},center:{default:{x:.5,y:.5},transform:wt,description:"The center point of the sphere",ui:{type:"position",label:"Center",group:"Position"}},lightPosition:{default:{x:.3,y:.3},transform:wt,description:"Position of the specular light source",ui:{type:"position",label:"Light Position",group:"Position"}},lightIntensity:{default:.5,description:"Intensity of the rim light (0 = off)",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Light Intensity",group:"Effect"}},lightSoftness:{default:.5,description:"Softness of the rim light falloff (0 = hard edge, 1 = soft glow)",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Light Softness",group:"Effect"}},lightColor:{default:"#ffffff",transform:Ce,description:"Color of the specular highlight",ui:{type:"color",label:"Light Color",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j,o=$.x.div($.y),a=I(t.center.uniform.x,t.center.uniform.y.oneMinus()),l=t.radius.uniform,s=I(i.x.sub(a.x).mul(o),i.y.sub(a.y)).mul(2).div(l),u=s.x.mul(s.x).add(s.y.mul(s.y)),d=p(1).sub(Oe(p(.98),p(1),u)),h=Sn(Pt(p(0),p(1).sub(u))),f=p(1).add(h.mul(t.depth.uniform)),g=s.div(f).mul(l).div(2),y=I(g.x.div(o).add(a.x),g.y.add(a.y)),_=Vt(r.sample(y)),b=I(t.lightPosition.uniform.x,t.lightPosition.uniform.y.oneMinus()),S=t.lightIntensity.uniform,w=t.lightSoftness.uniform,v=_e(t.lightColor.uniform.x,t.lightColor.uniform.y,t.lightColor.uniform.z),E=wo(_e(s.x,s.y,h)),C=_e(0,0,1),M=p(1).add(p(4).mul(p(1).sub(w))),R=Bt(p(1).sub(Pt(kt(E,C),p(0))),M),c=I(b.x.sub(p(.5)).mul(2),b.y.sub(p(.5)).mul(2)),m=wo(I(E.x,E.y).add(I(1e-4,1e-4))),x=wo(c.add(I(1e-4,1e-4))),T=Bt(Pt(p(0),kt(m,x)),p(2)),N=R.mul(T).mul(S).mul(p(2));return F(_.x.add(v.x.mul(N)),_.y.add(v.y.mul(N)),_.z.add(v.z.mul(N)),_.w.mul(d))}}});var Kl,y6=z(()=>{"use strict";Dt();On();gr();ut();Kl={name:"Spiral",category:"Textures",description:"Rotating spiral pattern with animated movement",props:{colorA:{default:"#000000",transform:Ce,description:"Background color",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#ffffff",transform:Ce,description:"Spiral stroke color",ui:{type:"color",label:"Color B",group:"Colors"}},strokeWidth:{default:.5,description:"Thickness of spiral stroke",ui:{type:["range","map"],min:0,max:2,step:.1,label:"Stroke Width",group:"Effect"}},strokeFalloff:{default:0,description:"Stroke losing width further from center",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Stroke Falloff",group:"Effect"}},softness:{default:0,description:"Color transition sharpness (0 = hard edge, 1 = smooth fade)",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Softness",group:"Effect"}},speed:{default:1,description:"Animation speed (negative values reverse direction)",ui:{type:"range",min:-3,max:3,step:.1,label:"Speed",group:"Animation"}},center:{default:{x:.5,y:.5},transform:wt,description:"The center point of the spiral",ui:{type:"position",label:"Center",group:"Position"}},scale:{default:1,description:"Scale factor for spiral bands (higher = more bands, lower = fewer bands)",ui:{type:["range","map"],min:.1,max:5,step:.1,label:"Scale",group:"Effect"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=$.x.div($.y),i=I(n.x.mul(r),n.y),o=I(e.center.uniform.x.mul(r),e.center.uniform.y.oneMinus()),a=i.sub(o),l=fn(t,e.speed),s=Vn(a),u=s,d=Qn(a.y,a.x).sub(l),h=p(6.283185307),f=d.div(h),g=u.mul(e.scale.uniform).add(f),y=Et(St(g).sub(.5)).mul(2),_=Tt(e.strokeWidth.uniform,e.strokeFalloff.uniform.mul(.005),1),b=Tt(e.strokeFalloff.uniform,0,1).mul(s).oneMinus(),S=_.mul(b),w=$r(g),v=Re(p(4).sub(Oe(.05,.4,e.strokeWidth.uniform.mul(2)).mul(Oe(.05,.4,e.strokeWidth.uniform.oneMinus().mul(2))).mul(3)).mul(w),$r(y),Tt(w,0,1)),E=Oe(S.sub(v).sub(e.softness.uniform),S.add(v).add(e.softness.uniform),y),C=Lt(e.colorA.uniform,e.colorB.uniform,E,e.colorSpace.uniform.value);return F(C.rgb,C.a)}}});var sve,Jl,v6=z(()=>{"use strict";Dt();On();eo();ut();sve=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,Jl={name:"Star",category:"Shapes",description:"Classic star polygon with straight sides and sharp pointed tips",props:{color:{default:"#ffffff",transform:Ce,description:"Fill color of the star",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the star",ui:{type:"position",label:"Center",group:"Position"}},radius:{default:.4,description:"Outer tip radius \u2014 distance from center to the pointed tips",ui:{type:"range",min:0,max:1,step:.01,label:"Radius",group:"Shape"}},sides:{default:5,description:"Number of points on the star",ui:{type:"range",min:3,max:12,step:1,label:"Points",group:"Shape"}},innerRatio:{default:.4,description:"Inner vertex radius as a ratio of outer radius (0.382 = golden-ratio 5-star)",ui:{type:"range",min:.1,max:.9,step:.01,label:"Inner Ratio",group:"Shape"}},rotation:{default:0,description:"Rotation in degrees",ui:{type:"range",min:0,max:360,step:1,label:"Rotation",group:"Shape"}},softness:{default:0,description:"Edge softness for antialiasing",ui:{type:"range",min:0,max:.1,step:.001,label:"Softness",group:"Effect"}},strokeThickness:{default:0,description:"Stroke thickness. Zero means no stroke.",ui:{type:"range",min:0,max:.2,step:.005,label:"Stroke Thickness",group:"Stroke"}},strokeColor:{default:"#000000",transform:Ce,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:sve,description:"Position of the stroke relative to the shape edge",ui:{type:"select",options:[{label:"Outside",value:"outside"},{label:"Center",value:"center"},{label:"Inside",value:"inside"}],label:"Stroke Position",group:"Stroke"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:Gt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=r.x.sub(i.x),a=r.y.sub(i.y),l=t.rotation.uniform.mul(p(Math.PI/180)),s=Ye(l),u=fe(l),d=LI(o.mul(s).add(a.mul(u)),a.mul(s).sub(o.mul(u)),t.radius.uniform,t.sides.uniform,t.innerRatio.uniform),h=t.softness.uniform,f=t.strokeThickness.uniform,g=t.strokePosition.uniform,y=f.greaterThan(p(0)),_=g.greaterThanEqual(p(.5)).and(g.lessThan(p(1.5))),b=g.greaterThanEqual(p(1.5)),S=f.mul(.5),w=b.select(f.negate(),_.select(S.negate(),p(0))),v=b.select(p(0),_.select(S,f)),E=Oe(v.sub(h),v,d).oneMinus(),C=y.select(Oe(w.sub(h),w,d),p(0)),M=Lt(F(t.color.uniform.rgb,t.color.uniform.a),F(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),C,t.colorSpace.uniform.value);return F(M.xyz,M.w.mul(E))}}});var Ql,x6=z(()=>{"use strict";Dt();gr();ut();Ql={name:"Strands",category:"Textures",description:"Procedural wavy strands with layered animation",requiresRTT:!1,requiresChild:!1,props:{speed:{default:.5,description:"Overall animation speed",ui:{type:"range",min:0,max:1,step:.1,label:"Speed",group:"Animation"}},amplitude:{default:1,description:"Wave height amplitude",ui:{type:["range","map"],min:0,max:5,step:.1,label:"Amplitude",group:"Effect"}},frequency:{default:1,description:"Wave frequency",ui:{type:["range","map"],min:0,max:5,step:.1,label:"Frequency",group:"Effect"}},lineCount:{default:12,description:"Number of wave lines",ui:{type:"range",min:4,max:32,step:1,label:"Line Count",group:"Effect"}},lineWidth:{default:.1,description:"Width of wave lines",ui:{type:["range","map"],min:0,max:1,step:.05,label:"Line Width",group:"Effect"}},waveColor:{default:"#f1c907",transform:Ce,description:"Color of the waves",ui:{type:"color",label:"Wave Color",group:"Colors"}},pinEdges:{default:!0,description:"Pin waves at edges (fade effect)",ui:{type:"checkbox",label:"Pin Edges",group:"Effect"}},start:{default:{x:0,y:.5},transform:wt,description:"Starting point of the waves",ui:{type:"position",label:"Start",group:"Position"}},end:{default:{x:1,y:.5},transform:wt,description:"Ending point of the waves",ui:{type:"position",label:"End",group:"Position"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=fn(t,e.speed),i=qe(([o])=>Ye(o).add(Ye(o.mul(1.2).add(1.6))).add(Ye(o.mul(1.4).add(1.5))).div(3));return qe(([o])=>{let a=$.x.div($.y),l=I(e.start.uniform.x.mul(a),e.start.uniform.y.oneMinus()),s=I(e.end.uniform.x.mul(a),e.end.uniform.y.oneMinus()),u=I(o.x.mul(a),o.y),d=s.sub(l),h=d.length(),f=d.div(h),g=I(f.y.negate(),f.x),y=u.sub(l),_=y.dot(f).div(h),b=y.dot(g),S=_.mul(10),w=b.mul(10),v=e.pinEdges.uniform.select(Oe(p(0),p(.1),_).mul(Oe(p(.9),p(1),_).oneMinus()),p(1)),E=e.pinEdges.uniform.select(Ye(_.mul(6.28)).mul(.5).add(.5).oneMinus(),p(1)),C=Ye(_.mul(6.28)).mul(.5).add(.5).oneMinus(),M=F(0,0,0,0).toVar(),R=e.lineCount.uniform;for(let c=0;c<32;c++){let m=p(c).lessThan(R),x=p(c),T=x.div(R),N=p(.5),B=p(1.33),D=r.mul(B),O=x.add(S.mul(N)),L=i(O.add(D)).mul(.5).add(.5),V=Re(p(.01),e.lineWidth.uniform,L.mul(E)).mul(.5),Z=p(.6),q=p(2),ae=i(O.add(D.mul(T.add(1)))).mul(Re(Z,q,E)).mul(e.amplitude.uniform),we=i(S.mul(e.frequency.uniform).add(r)).mul(E).mul(e.amplitude.uniform).add(ae),Ae=Et(w.sub(we)),Ge=p(.01),et=Oe(V.sub(Ge),V.add(Ge),Ae).oneMinus(),Ze=F(e.waveColor.uniform.r,e.waveColor.uniform.g,e.waveColor.uniform.b,et).mul(L);M.assign(Pt(M,m.select(Ze,F(0,0,0,0))))}return M.mul(F(1,1,1,C.mul(v)))})(n)}}});var eu,b6=z(()=>{"use strict";gi();Dt();Wn();ut();eu={name:"Stretch",category:"Distortions",description:"Stretch content towards a direction from a center point",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:wt,description:"The center point of the stretch effect",ui:{type:"position",label:"Center",group:"Position"}},strength:{default:1,description:"The intensity of the stretch effect",ui:{type:["range","map"],min:0,max:1,step:.05,label:"Strength",group:"Effect"}},angle:{default:0,description:"The direction of the stretch in degrees",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},falloff:{default:0,description:"Controls the sharpness of the transition (0 = sharp edge, 1 = gradual transition)",ui:{type:["range","map"],min:0,max:1,step:.05,label:"Falloff",group:"Effect"}},edges:{default:"stretch",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=$.x.div($.y),o=I(j.x.mul(i),j.y),a=I(t.center.uniform.x.mul(i),t.center.uniform.y.oneMinus()),l=o.sub(a),s=t.angle.uniform.mul(Math.PI/180),u=I(Ye(s),fe(s)),d=l.dot(u),h=u.mul(d),f=l.sub(h),g=t.falloff.uniform,y=Re(p(.001),p(75),g),_=Tt(d.div(y),p(0),p(1)),b=t.strength.uniform.mul(p(100)),S=p(1).add(b.mul(_)),w=d.div(S),v=u.mul(w).add(f),E=a.add(v),C=I(E.x.div(i),E.y);return Vt(Ln(C,r.sample(C),r,t.edges.uniform.value))}}});var tu,_6=z(()=>{"use strict";Dt();On();gr();ut();tu={name:"Stripes",category:"Textures",description:"Alternating colored stripes with animation",props:{colorA:{default:"#000000",transform:Ce,description:"First stripe color",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#ffffff",transform:Ce,description:"Second stripe color",ui:{type:"color",label:"Color B",group:"Colors"}},angle:{default:45,transform:sr,description:"Angle of stripes in degrees",ui:{type:["range","map"],min:-180,max:180,step:1,label:"Angle",group:"Effect"}},density:{default:5,description:"Number of stripe pairs visible",ui:{type:["range","map"],min:1,max:30,step:1,label:"Density",group:"Effect"}},balance:{default:.5,description:"Ratio of the two colors",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Balance",group:"Effect"}},softness:{default:0,description:"Edge softness",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Softness",group:"Effect"}},speed:{default:.2,description:"Animation speed",ui:{type:"range",min:-1,max:1,step:.1,label:"Speed",group:"Animation"}},offset:{default:0,description:"Phase offset for pattern positioning",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Offset",group:"Animation"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=$.x.div($.y),i=I(n.x.mul(r),n.y),o=e.angle.uniform.mul(.0174533),a=Ye(o),l=fe(o),s=i.x.mul(a).add(i.y.mul(l)),u=fn(t,e.speed),d=s.mul(e.density.uniform).add(u).add(e.offset.uniform),h=St(d),f=$r(d),g=e.balance.uniform,y=e.softness.uniform,_=Oe(g.sub(y).sub(f),g.add(y).add(f),h),b=Lt(e.colorA.uniform,e.colorB.uniform,_,e.colorSpace.uniform.value);return F(b.rgb,b.a)}}});var nu,S6=z(()=>{"use strict";Dt();gr();ut();nu={name:"StudioBackground",category:"Textures",description:"Multi-light studio background with ambient motion.",props:{color:{default:"#d8dbec",transform:Ce,description:"Base studio surface color",ui:{type:"color",label:"Surface Color",group:"Colors"}},keyColor:{default:"#d5e4ea",transform:Ce,description:"Color of the overhead key light",ui:{type:"color",label:"Key Color",group:"Key Light"}},keyIntensity:{default:40,description:"Intensity of the key light",ui:{type:["range","map"],min:0,max:100,step:1,label:"Intensity",group:"Key Light"}},keySoftness:{default:50,description:"How diffuse the key light is",ui:{type:["range","map"],min:0,max:100,step:1,label:"Softness",group:"Key Light"}},fillColor:{default:"#d5e4ea",transform:Ce,description:"Color of the side fill lights",ui:{type:"color",label:"Fill Color",group:"Fill Lights"}},fillIntensity:{default:10,description:"Intensity of the fill lights",ui:{type:["range","map"],min:0,max:100,step:1,label:"Intensity",group:"Fill Lights"}},fillSoftness:{default:70,description:"How diffuse the fill lights are",ui:{type:["range","map"],min:0,max:100,step:1,label:"Softness",group:"Fill Lights"}},fillAngle:{default:70,description:"How far apart the fill lights are from center",ui:{type:["range","map"],min:0,max:100,step:1,label:"Spread",group:"Fill Lights"}},backColor:{default:"#c8d4e8",transform:Ce,description:"Color of the upward back wash",ui:{type:"color",label:"Back Color",group:"Back Light"}},backIntensity:{default:20,description:"Intensity of the back wash",ui:{type:["range","map"],min:0,max:100,step:1,label:"Intensity",group:"Back Light"}},backSoftness:{default:80,description:"How diffuse the back wash is",ui:{type:["range","map"],min:0,max:100,step:1,label:"Softness",group:"Back Light"}},brightness:{default:20,description:"Overall ambient light level",ui:{type:["range","map"],min:0,max:100,step:1,label:"Ambient",group:"Lighting"}},vignette:{default:0,description:"Edge darkening",ui:{type:["range","map"],min:0,max:100,step:1,label:"Vignette",group:"Lighting"}},center:{default:{x:.5,y:.8},transform:wt,description:"Where the spotlight meets the floor",ui:{type:"position",label:"Stage Center",group:"Scene"}},lightTarget:{default:100,description:"How far toward the floor vs wall the spotlights aim",ui:{type:["range","map"],min:0,max:100,step:1,label:"Light Depth",group:"Scene"}},wallCurvature:{default:10,description:"How rounded the cove is",ui:{type:["range","map"],min:0,max:100,step:1,label:"Wall Curvature",group:"Scene"}},ambientIntensity:{default:50,description:"Intensity of drifting ambient lights",ui:{type:["range","map"],min:0,max:100,step:1,label:"Ambient Detail",group:"Environment"}},ambientSpeed:{default:2,description:"Drift speed",ui:{type:"range",min:-5,max:5,step:.1,label:"Speed",group:"Environment"}},seed:{default:0,description:"Seed for ambient pattern",ui:{type:"range",min:0,max:100,step:1,label:"Seed",group:"Environment"}}},fragmentNode:t=>{let{uniforms:e}=t,n=e.color.uniform,r=e.brightness.uniform.mul(.02),i=e.keyColor.uniform,o=e.keyIntensity.uniform.mul(.015),a=e.fillColor.uniform,l=e.fillIntensity.uniform.mul(.015),s=e.fillAngle.uniform.mul(.005),u=e.backColor.uniform,d=e.backIntensity.uniform.mul(.015),h=e.center.uniform.x,f=e.center.uniform.y.oneMinus(),g=e.lightTarget.uniform.mul(.01),y=e.wallCurvature.uniform.mul(.01),_=e.vignette.uniform.mul(.025),b=e.ambientIntensity.uniform.mul(.012),S=e.seed.uniform,w=$.x.div($.y),v=fn(t,e.ambientSpeed),E=Re(p(5),p(.8),e.keySoftness.uniform.mul(.01)),C=Re(p(5),p(.8),e.fillSoftness.uniform.mul(.01)),M=Re(p(5),p(.8),e.backSoftness.uniform.mul(.01)),R=m=>St(fe(m.mul(12.9898)).mul(43758.5453)),c=Array.from({length:4},(m,x)=>{let T=S.add(p(x*73.1)),N=R(T.add(311)).mul(.12).add(.1);return{radiusX:R(T).mul(.5).add(.2),radiusY:R(T.add(37)).mul(.25).add(.1),freqX:R(T.add(91)).mul(.3).add(.1),freqY:R(T.add(143)).mul(.25).add(.08),phaseX:R(T.add(200)).mul(Math.PI*2),phaseY:R(T.add(257)).mul(Math.PI*2),sizeSq:N.mul(N)}});return qe(()=>{let m=j,x=Re(p(.015),p(.15),y),T=Oe(f.sub(x),f.add(x),m.y),N=p(1).sub(T),B=Tt(m.y.div(f),0,1),D=B.mul(B),O=Tt(m.y.sub(f).div(p(1).sub(f)),0,1),L=m.x.sub(h).mul(w),V=Re(p(.05),p(.45),D),Z=p(1).sub(B).mul(1.2),q=Z.mul(Z),ae=f.add(p(1).sub(f).mul(.3)),we=m.y.sub(ae).mul(4),Ae=we.mul(we),Ge=Re(Re(p(.2),p(.4),B),Re(p(.38),p(.18),O),T).mul(r),et=m.y.sub(f).div(x.add(.001)),Ze=ki(et.mul(et).mul(-.5)).mul(y).mul(r).mul(.1),he=Ge.add(Ze),Me=_e(he,he,he).toVar(),Pe=p(1).sub(g).mul(1.4).add(.3),We=g.mul(1.4).add(.3),Xe=(se,Te)=>{let Ie=Re(se,h,D),J=m.x.sub(Ie).mul(w).div(V),ee=ki(J.mul(J).add(q).mul(-1).mul(Te)).mul(N).mul(Pe),Se=Re(h,se,p(.25)),Je=m.x.sub(Se).mul(w).mul(1.4),Fe=ki(Je.mul(Je).add(Ae).mul(-1).mul(Te.mul(1.5))).mul(T).mul(We);return ee.add(Fe)},le=Xe(h,E).mul(o);Me.assign(Me.add(i.rgb.mul(le)));let rt=Xe(h.sub(s),C).mul(l),De=Xe(h.add(s),C).mul(l);Me.assign(Me.add(a.rgb.mul(rt.add(De))));let K=Re(p(1),f,p(.15)),be=L.mul(.5),Ee=m.y.sub(K).mul(4),Be=ki(be.mul(be).add(Ee.mul(Ee)).mul(-1).mul(M)).mul(T),Ke=L.mul(.6),ct=f.sub(m.y).mul(3),X=ki(Ke.mul(Ke).add(ct.mul(ct)).mul(-1).mul(M.mul(.8))).mul(N).mul(D),at=Be.add(X).mul(d);Me.assign(Me.add(u.rgb.mul(at)));let nt=L.mul(.7),Ct=m.y.sub(f).add(.02).mul(10),me=ki(nt.mul(nt).add(Ct.mul(Ct)).mul(-2.5)).mul(o.mul(.12)).mul(N);Me.assign(Me.add(_e(me,me,me)));let ke=b.mul(.25);for(let se=0;se<4;se++){let Te=c[se],Ie=h.add(fe(v.mul(Te.freqX).add(Te.phaseX)).mul(Te.radiusX)),J=f.sub(.2).add(Ye(v.mul(Te.freqY).add(Te.phaseY)).mul(Te.radiusY)),ee=m.x.sub(Ie).mul(w),Se=m.y.sub(J),Je=ki(ee.mul(ee).add(Se.mul(Se)).div(Te.sizeSq).mul(-.5)).mul(ke);Me.assign(Me.add(_e(Je,Je,Je)))}let k=m.x.sub(.5).mul(w),P=m.y.sub(.5),H=k.mul(k).add(P.mul(P)),Q=Tt(p(1).sub(H.mul(_)),0,1);return Me.assign(Tt(Me,0,3)),F(n.rgb.mul(Me).mul(Q).clamp(0,1),p(1))})()}}});var ru,w6=z(()=>{"use strict";Dt();gr();ut();ru={name:"SunBurst",category:"Textures",description:"Radial sunburst rays emanating from a center point",props:{color:{default:"#ffdd88",transform:Ce,description:"Ray color",ui:{type:"color",label:"Color",group:"Colors"}},background:{default:"#000000",transform:Ce,description:"Background color",ui:{type:"color",label:"Background",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center point of the sunburst",ui:{type:"position",label:"Center",group:"Position"}},rayCount:{default:12,description:"Number of rays",ui:{type:"range",min:3,max:64,step:1,label:"Ray Count",group:"Effect"}},softness:{default:.3,description:"Softness of ray edges",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Softness",group:"Effect"}},radius:{default:.8,description:"How far the rays extend from the center",ui:{type:["range","map"],min:0,max:1.2,step:.01,label:"Radius",group:"Effect"}},feather:{default:.5,description:"How gradually the rays fade at their outer edge",ui:{type:["range","map"],min:0,max:5,step:.01,label:"Feather",group:"Effect"}},speed:{default:.2,description:"Rotation speed \u2014 positive values rotate clockwise",ui:{type:"range",min:-2,max:2,step:.1,label:"Speed",group:"Animation"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=$.x.div($.y),i=e.center.uniform.x,o=e.center.uniform.y.oneMinus(),a=n.x.mul(r).sub(i.mul(r)),l=n.y.sub(o),s=Sn(a.mul(a).add(l.mul(l))),u=Qn(l,a),d=fn(t,e.speed),h=e.rayCount.uniform,f=Bt(fe(u.mul(h).sub(d)).mul(.5).add(.5),p(1).div(e.softness.uniform.add(p(.05))).mul(p(.3))),g=e.radius.uniform,y=e.feather.uniform,_=g.mul(p(1).sub(y)),b=p(1).sub(Oe(_,g,s)),S=f.mul(b),w=e.color.uniform,v=e.background.uniform;return F(Re(v.rgb,w.rgb,S),Re(v.a,w.a,S))}}});var iu,M6=z(()=>{"use strict";Dt();On();gr();ut();iu={name:"Swirl",category:"Textures",description:"Flowing swirl pattern with multi-layered noise",props:{colorA:{default:"#1275d8",description:"Primary gradient color",transform:Ce,ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#e19136",description:"Secondary gradient color",transform:Ce,ui:{type:"color",label:"Color B",group:"Colors"}},speed:{default:1,description:"Flow animation speed",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Animation"}},detail:{default:1,description:"Level of detail and intricacy in the swirl patterns",ui:{type:["range","map"],min:0,max:5,step:.1,label:"Detail",group:"Effect"}},blend:{default:50,description:"Skew color balance toward A (lower values) or B (higher values)",ui:{type:["range","map"],min:0,max:100,step:1,label:"Blend",group:"Effect"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=fn(t,e.speed),r=e.detail.uniform,i=e.colorSpace.uniform.value;return qe(()=>{let o=r,a=I(j.x.add(fe(j.y.mul(o.mul(1.7)).add(n.mul(.8))).mul(.12).add(Ye(j.x.mul(o.mul(.9)).sub(n.mul(.5))).mul(.05))),j.y.add(Ye(j.x.mul(o.mul(1.3)).sub(n.mul(.6))).mul(.12).add(fe(j.y.mul(o.mul(1.1)).add(n.mul(.7))).mul(.05)))).toVar(),l=fe(a.x.mul(o.mul(2.1)).add(a.y.mul(o.mul(1.8))).add(n.mul(.4))),s=r.mul(2.1),u=I(a.x.add(Ye(a.y.mul(s.mul(2.7)).sub(n.mul(.45))).mul(.07).add(fe(a.x.mul(s.mul(1.9)).add(n.mul(.6))).mul(.04))),a.y.add(fe(a.x.mul(s.mul(2.3)).add(n.mul(.65))).mul(.07).add(Ye(a.y.mul(s.mul(1.6)).sub(n.mul(.4))).mul(.04)))).toVar(),d=Ye(u.x.mul(s.mul(1.4)).sub(u.y.mul(s.mul(1.9))).add(n.mul(.35))),h=r.mul(3.7),f=I(u.x.add(fe(u.y.mul(h.mul(1.8)).add(n.mul(.85))).mul(.04).add(Ye(u.x.mul(h.mul(1.3)).sub(n.mul(.55))).mul(.025)).add(fe(u.x.add(u.y).mul(h.mul(.7)).add(n.mul(.9))).mul(.02))),u.y.add(Ye(u.x.mul(h.mul(1.6)).sub(n.mul(.75))).mul(.04).add(fe(u.y.mul(h.mul(1.1)).add(n.mul(.5))).mul(.025)).add(Ye(u.x.add(u.y).mul(h.mul(.8)).sub(n.mul(.95))).mul(.02)))).toVar(),g=fe(f.x.mul(h.mul(1.1)).add(f.y.mul(h.mul(1.5))).sub(n.mul(.55))),y=l.mul(.45).add(d.mul(.35)).add(g.mul(.2)),_=e.blend.uniform.sub(50).mul(.006),b=Oe(.3,.7,y.mul(.5).add(.5).add(_)),S=Lt(e.colorA.uniform,e.colorB.uniform,b,i),w=fe(n.mul(2.5).add(y.mul(8))).mul(.015).add(1),v=S.mul(w);return F(v.rgb,v.a)})()}}});var ou,T6=z(()=>{"use strict";Dt();Wn();sh();ut();ou={name:"TiltShift",category:"Blurs",description:"Selective focus blur mimicking tilt-shift photography",requiresRTT:!0,requiresChild:!0,props:{intensity:{default:50,description:"Maximum blur intensity at edges",ui:{type:["range","map"],min:0,max:100,step:1,label:"Intensity",group:"Effect"}},width:{default:.3,description:"Width of the sharp focus area",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Width",group:"Effect"}},falloff:{default:.3,description:"Distance over which blur transitions to full strength",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Falloff",group:"Effect"}},angle:{default:0,transform:sr,description:"Rotation angle of the focus line (in degrees)",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center point of the focus line",ui:{type:"position",label:"Center",group:"Position"}}},computeNode:({childNode:t,onCleanup:e,dimensions:n,renderer:r,uniforms:i,onResize:o})=>{if(!t||i.angle.mapComputeInfo||i.width.mapComputeInfo||i.falloff.mapComputeInfo)return null;let a=It(t);e(()=>{a?.renderTarget?.dispose&&a.renderTarget.dispose()});let l=r?.getPixelRatio?.()??1,s=Math.round(n.width*l),u=Math.round(n.height*l),d=Zd(a,s,u,e,14),{computeNodes:h,outputTexture:f,blurMapWriteNode:g,computeWidth:y,computeHeight:_}=d,b=oe(0),S=oe(.5),w=oe(.5),v=oe(.15),E=oe(.3),C=oe(1),M=oe(s),R=oe(u),c=Tn(y),m=Tn(_);function x(O){return O.getCpuValue?.()??(typeof O.uniform.value=="number"?O.uniform.value:null)}function T(){let O=x(i.angle);O!==null&&(b.value=O);let L=i.center.uniform.value?.x??i.center.uniform.x?.value;typeof L=="number"&&(S.value=L);let V=i.center.uniform.value?.y??i.center.uniform.y?.value;typeof V=="number"&&(w.value=V);let Z=x(i.width);Z!==null&&(v.value=Z*.5);let q=x(i.falloff);q!==null&&(E.value=q),C.value=n.width/n.height}let N=i.intensity.mapComputeInfo;if(N){let{sourceTexture:O,channel:L,inputMin:V,inputMax:Z,outputMin:q,outputMax:ae,curve:we}=N,Ae=qe(()=>{let Ge=Kt,et=Ge.mod(c),Ze=Ge.div(c);Pn(Ze.lessThan(m),()=>{let he=et.toFloat().add(p(.5)).div(p(y)),Me=Ze.toFloat().add(p(.5)).div(p(_)),Pe=b.mul(p(Math.PI/180)),We=I(Pe.sin().negate(),Pe.cos()),Xe=I(S,p(1).sub(w)),le=I(he,Me).sub(Xe),rt=Et(kt(I(le.x.mul(C),le.y),We)),De=Oe(v,v.add(E),rt),K=Pi(O,En(he.mul(M).round().toInt().clamp(Ut(0),Ut(M.sub(1))).toUint(),Me.mul(R).round().toInt().clamp(Ut(0),Ut(R.sub(1))).toUint()),Ut(0)),be;L==="alpha"?be=K.a:L==="alphaInverted"?be=K.a.oneMinus():L==="luminanceInverted"?be=kt(K.rgb,_e(.2126,.7152,.0722)).oneMinus():be=kt(K.rgb,_e(.2126,.7152,.0722));let Ee=Z.sub(V).max(p(1e-4)),Be=Re(q,ae,Bt(Tt(be.sub(V).div(Ee),p(0),p(1)),Bt(p(2),we.negate().mul(p(2))))).mul(p(.36)),Ke=De.mul(Be);er(g,En(et,Ze),F(Ke,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:Ge,height:et})=>{let Ze=Math.round(Ge*l),he=Math.round(et*l);M.value=Ze,R.value=he,d.setInputDimensions(Ze,he)}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>(T(),[Ae,...h])}}let B=oe(18),D=qe(()=>{let O=Kt,L=O.mod(c),V=O.div(c);Pn(V.lessThan(m),()=>{let Z=L.toFloat().add(p(.5)).div(p(y)),q=V.toFloat().add(p(.5)).div(p(_)),ae=b.mul(p(Math.PI/180)),we=I(ae.sin().negate(),ae.cos()),Ae=I(S,p(1).sub(w)),Ge=I(Z,q).sub(Ae),et=Et(kt(I(Ge.x.mul(C),Ge.y),we)),Ze=Oe(v,v.add(E),et).mul(B);er(g,En(L,V),F(Ze,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:O,height:L})=>{let V=Math.round(O*l),Z=Math.round(L*l);M.value=V,R.value=Z,d.setInputDimensions(V,Z)}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>{T();let O=x(i.intensity);return O!==null&&(B.value=O*.36),[D,...h]}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n,computeOutputs:r})=>{if(!e)return F(0,0,0,0);if(r?.blurredTexture){let E=r.childTexture.sample(j),C=vn(r.blurredTexture).sample(j),M=$.x.div($.y),R=qr(t.angle.uniform),c=I(R.sin().negate(),R.cos()),m=I(t.center.uniform[0],t.center.uniform[1].oneMinus()),x=j.sub(m),T=Et(kt(I(x.x.mul(M),x.y),c)),N=t.width.uniform.mul(.5),B=Oe(N,N.add(t.falloff.uniform),T),D=t.intensity.uniform.mul(p(0)).add(t.width.uniform.mul(p(0))).add(t.falloff.uniform.mul(p(0))).add(t.angle.uniform.mul(p(0))),O=Re(E,C,B);return Vt(F(O.rgb.add(D),O.a))}let i=It(e);n(()=>{i?.renderTarget?.dispose&&i.renderTarget.dispose()});let o=$.x.div($.y),a=qr(t.angle.uniform),l=Ye(a),s=I(fe(a).negate(),l),u=I(t.center.uniform[0],t.center.uniform[1].oneMinus()),d=j.sub(u),h=Et(kt(I(d.x.mul(o),d.y),s)),f=t.width.uniform.mul(.5),g=t.falloff.uniform,y=Oe(f,f.add(g),h),_=t.intensity.uniform.mul(.06),b=y.mul(_),S=[.056,.135,.278,.487,.726,.923,1,.923,.726,.487,.278,.135,.056],w=6.21,v=It(qe(()=>{let E=j,C=I(1).div($),M=F(0).toVar();for(let R=-6;R<=6;R++){let c=p(S[R+6]/w),m=I(p(R),p(0)).mul(b).mul(C),x=E.add(m),T=i.sample(x).mul(c);M.assign(M.add(T))}return M})());return n(()=>{v?.renderTarget?.dispose&&v.renderTarget.dispose()}),qe(()=>{let E=j,C=I(1).div($),M=F(0).toVar();for(let c=-6;c<=6;c++){let m=p(S[c+6]/w),x=I(p(0),p(c)).mul(b).mul(C),T=E.add(x),N=v.sample(T).mul(m);M.assign(M.add(N))}let R=M;return Vt(Re(i.sample(E),R,y))})()}}});var su,C6=z(()=>{"use strict";Dt();ut();su={name:"Tint",category:"Adjustments",description:"Apply a color tint to the image",requiresChild:!0,props:{color:{default:"#ff8800",transform:Ce,description:"Tint color",ui:{type:"color",label:"Tint Color",group:"Colors"}},amount:{default:.5,description:"Tint amount (0 = no tint, 1 = full tint)",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Amount",group:"Effect"}},preserveLuminosity:{default:!0,compileTime:!0,description:"Preserve original brightness",transform:t=>t?1:0,ui:{type:"checkbox",label:"Preserve Luminosity",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return console.error("You must pass a child component into the Tint shader."),F(0);let n=t.color.uniform,r=t.amount.uniform,i=_e(e.r,e.g,e.b),o=Re(i,n.rgb,r),a=t.preserveLuminosity.uniform.value===1,l;if(a){let s=_e(.299,.587,.114),u=kt(i,s),d=kt(o,s);l=o.mul(u.div(Pt(d,1e-4)))}else l=o;return F(l,e.a)}}});var ave,au,E6=z(()=>{"use strict";Dt();On();eo();ut();ave=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,au={name:"Trapezoid",category:"Shapes",description:"Trapezoid with adjustable top and bottom widths and height",props:{color:{default:"#ffffff",transform:Ce,description:"Fill color of the trapezoid",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the trapezoid",ui:{type:"position",label:"Center",group:"Position"}},bottomWidth:{default:.35,description:"Half-width of the bottom edge",ui:{type:"range",min:.01,max:1,step:.01,label:"Bottom Width",group:"Shape"}},topWidth:{default:.2,description:"Half-width of the top edge",ui:{type:"range",min:.01,max:1,step:.01,label:"Top Width",group:"Shape"}},height:{default:.25,description:"Half-height of the trapezoid",ui:{type:"range",min:.01,max:1,step:.01,label:"Height",group:"Shape"}},rotation:{default:0,description:"Rotation in degrees",ui:{type:"range",min:0,max:360,step:1,label:"Rotation",group:"Shape"}},softness:{default:0,description:"Edge softness for antialiasing",ui:{type:"range",min:0,max:.1,step:.001,label:"Softness",group:"Effect"}},strokeThickness:{default:0,description:"Stroke thickness. Zero means no stroke.",ui:{type:"range",min:0,max:.2,step:.005,label:"Stroke Thickness",group:"Stroke"}},strokeColor:{default:"#000000",transform:Ce,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:ave,description:"Position of the stroke relative to the shape edge",ui:{type:"select",options:[{label:"Outside",value:"outside"},{label:"Center",value:"center"},{label:"Inside",value:"inside"}],label:"Stroke Position",group:"Stroke"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:Gt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=r.x.sub(i.x),a=r.y.sub(i.y),l=t.rotation.uniform.mul(p(Math.PI/180)),s=Ye(l),u=fe(l),d=WI(o.mul(s).add(a.mul(u)),a.mul(s).sub(o.mul(u)),t.topWidth.uniform,t.bottomWidth.uniform,t.height.uniform),h=t.softness.uniform,f=t.strokeThickness.uniform,g=t.strokePosition.uniform,y=f.greaterThan(p(0)),_=g.greaterThanEqual(p(.5)).and(g.lessThan(p(1.5))),b=g.greaterThanEqual(p(1.5)),S=f.mul(.5),w=b.select(f.negate(),_.select(S.negate(),p(0))),v=b.select(p(0),_.select(S,f)),E=Oe(v.sub(h),v,d).oneMinus(),C=y.select(Oe(w.sub(h),w,d),p(0)),M=Lt(F(t.color.uniform.rgb,t.color.uniform.a),F(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),C,t.colorSpace.uniform.value);return F(M.xyz,M.w.mul(E))}}});var cu,R6=z(()=>{"use strict";Dt();On();ut();cu={name:"Tritone",category:"Adjustments",description:"Map colors to three tones: shadows, midtones, highlights",requiresChild:!0,props:{colorA:{default:"#ce1bea",transform:Ce,description:"First color (used for shadows/darkest areas)",ui:{type:"color",label:"Color A (Shadows)",group:"Colors"}},colorB:{default:"#2fff00",transform:Ce,description:"Second color (used for midtones)",ui:{type:"color",label:"Color B (Midtones)",group:"Colors"}},colorC:{default:"#ffff00",transform:Ce,description:"Third color (used for highlights/brightest areas)",ui:{type:"color",label:"Color C (Highlights)",group:"Colors"}},blendMid:{default:.5,description:"Midpoint position between the three colors",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Midpoint",group:"Effect"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return F(0,0,0,0);let n=kt(_e(e.r,e.g,e.b),_e(.299,.587,.114)),r=Oe(t.blendMid.uniform.sub(.25),t.blendMid.uniform,n),i=t.colorSpace.uniform.value,o=Lt(t.colorA.uniform,t.colorB.uniform,r,i),a=Oe(t.blendMid.uniform,t.blendMid.uniform.add(.25),n);return F(Lt(o,Lt(t.colorB.uniform,t.colorC.uniform,a,i),Oe(t.blendMid.uniform.sub(.1),t.blendMid.uniform.add(.1),n),i).rgb,e.a)}}});var cve,lu,A6=z(()=>{"use strict";Dt();On();ut();cve=qe(([t])=>St(fe(kt(t,I(127.1,311.7))).mul(p(43758.5453)))),lu={name:"Truchet",category:"Textures",description:"Quarter-circle arc tiles that connect to form organic, maze-like flowing curves",props:{colorA:{default:"#000000",transform:Ce,description:"Background color between the arcs",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#ffffff",transform:Ce,description:"Arc line color",ui:{type:"color",label:"Color B",group:"Colors"}},cells:{default:10,description:"Number of tiles across the shortest canvas edge",ui:{type:["range","map"],min:2,max:40,step:1,label:"Cells",group:"Effect"}},thickness:{default:2,description:"Thickness of the arc lines",ui:{type:["range","map"],min:0,max:20,step:.1,label:"Thickness",group:"Effect"}},seed:{default:0,description:"Random seed \u2014 changes which tiles flip, producing a different maze pattern",ui:{type:["range","map"],min:0,max:100,step:1,label:"Seed",group:"Effect"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y).mul(t.cells.uniform),i=Zt(r),o=St(r),a=cve(i.add(t.seed.uniform)).greaterThan(p(.5)),l=a.select(p(1),p(0)),s=a.select(p(0),p(0)),u=a.select(p(0),p(1)),d=a.select(p(1),p(1)),h=_n(Et(Vn(o.sub(I(l,s))).sub(p(.5))),Et(Vn(o.sub(I(u,d))).sub(p(.5)))),f=t.thickness.uniform.mul(p(.005)),g=$r(r.x).mul(p(.5)),y=Oe(f.add(g),f,h).mul(yn(p(1e-4),f));return Lt(t.colorA.uniform,t.colorB.uniform,y,t.colorSpace.uniform.value)}}});var uu,P6=z(()=>{"use strict";gi();Dt();Wn();ut();uu={name:"Twirl",category:"Distortions",description:"Rotate and twist content around a center point",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:wt,description:"The center point of the twirl effect",ui:{type:"position",label:"Center",group:"Position"}},intensity:{default:1,description:"The strength of the twirl effect",ui:{type:["range","map"],min:-5,max:5,step:.1,label:"Intensity",group:"Effect"}},edges:{default:"stretch",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return console.error("You must pass a child component into the Twirl shader."),F(0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j,o=$.x.div($.y),a=I(t.center.uniform.x,t.center.uniform.y.oneMinus()),l=i.sub(a),s=I(l.x.mul(o),l.y),u=t.intensity.uniform.mul(Vn(s)),d=Ye(u),h=fe(u),f=d.mul(s.x).sub(h.mul(s.y)),g=h.mul(s.x).add(d.mul(s.y)),y=I(f.div(o).add(a.x),g.add(a.y));return Vt(Ln(y,r.sample(y),r,t.edges.uniform.value))}}});var lve,du,I6=z(()=>{"use strict";Dt();On();eo();ut();lve=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,du={name:"Vesica",category:"Shapes",description:"Vesica piscis (lens shape) formed by the intersection of two overlapping circles",props:{color:{default:"#ffffff",transform:Ce,description:"Fill color of the vesica",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the vesica",ui:{type:"position",label:"Center",group:"Position"}},radius:{default:.35,description:"Radius of the two overlapping circles",ui:{type:"range",min:.05,max:1,step:.01,label:"Size",group:"Shape"}},spread:{default:.5,description:"Circle separation \u2014 0 = full circle overlap, 1 = infinitely thin lens",ui:{type:"range",min:.05,max:.95,step:.01,label:"Spread",group:"Shape"}},rotation:{default:0,description:"Rotation in degrees",ui:{type:"range",min:0,max:360,step:1,label:"Rotation",group:"Shape"}},softness:{default:0,description:"Edge softness for antialiasing",ui:{type:"range",min:0,max:.1,step:.001,label:"Softness",group:"Effect"}},strokeThickness:{default:0,description:"Stroke thickness. Zero means no stroke.",ui:{type:"range",min:0,max:.2,step:.005,label:"Stroke Thickness",group:"Stroke"}},strokeColor:{default:"#000000",transform:Ce,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:lve,description:"Position of the stroke relative to the shape edge",ui:{type:"select",options:[{label:"Outside",value:"outside"},{label:"Center",value:"center"},{label:"Inside",value:"inside"}],label:"Stroke Position",group:"Stroke"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:Gt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=r.x.sub(i.x),a=r.y.sub(i.y),l=t.rotation.uniform.mul(p(Math.PI/180)),s=Ye(l),u=fe(l),d=GI(o.mul(s).add(a.mul(u)),a.mul(s).sub(o.mul(u)),t.radius.uniform,t.spread.uniform),h=t.softness.uniform,f=t.strokeThickness.uniform,g=t.strokePosition.uniform,y=f.greaterThan(p(0)),_=g.greaterThanEqual(p(.5)).and(g.lessThan(p(1.5))),b=g.greaterThanEqual(p(1.5)),S=f.mul(.5),w=b.select(f.negate(),_.select(S.negate(),p(0))),v=b.select(p(0),_.select(S,f)),E=Oe(v.sub(h),v,d).oneMinus(),C=y.select(Oe(w.sub(h),w,d),p(0)),M=Lt(F(t.color.uniform.rgb,t.color.uniform.a),F(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),C,t.colorSpace.uniform.value);return F(M.xyz,M.w.mul(E))}}});var JI,uve,fu,N6=z(()=>{"use strict";Wn();ut();JI=6,uve=487,fu={name:"VHS",category:"Stylize",description:"Analog VHS tape with intermittent tape damage, chroma bleed, and per-scanline noise",requiresRTT:!0,requiresChild:!0,props:{wobble:{default:1,description:"Overall amount of tape damage \u2014 waves, creases, and head-switching noise. Bursts on and off organically over time.",ui:{type:["range","map"],min:0,max:5,step:.01,label:"Wobble",group:"Effect"}},scanlineNoise:{default:.6,description:"Per-scanline fine chroma/luma jitter. Adds the classic horizontal-streak detail.",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Scanline Noise",group:"Effect"}},smear:{default:.2,description:"Horizontal chroma smear (color bleed) amount. Positive trails colour to the right (classic VHS), negative trails it to the left.",ui:{type:["range","map"],min:-2,max:2,step:.01,label:"Smear",group:"Effect"}},speed:{default:1,description:"Animation speed of the tape effects.",ui:{type:"range",min:.1,max:3,step:.1,label:"Speed",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=t.wobble.uniform,o=t.scanlineNoise.uniform,a=t.smear.uniform,l=t.speed.uniform,s=Ca.mul(l),u=Ae=>St(fe(kt(Ae,I(12.9898,78.233))).mul(43758.5453)),d=Ae=>{let Ge=Zt(Ae),et=St(Ae),Ze=et.mul(et).mul(et.mul(-2).add(3)),he=u(Ge),Me=u(Ge.add(I(1,0))),Pe=u(Ge.add(I(0,1))),We=u(Ge.add(I(1,1)));return Re(Re(he,Me,Ze.x),Re(Pe,We,Ze.x),Ze.y)},h=Oe(p(.45),p(.8),d(I(s.mul(.4),p(0)))),f=Zt(j.y.mul(uve)),g=Ae=>St(fe(f.mul(12.9898).add(s.add(Ae).mul(78.233))).mul(43758.5453)).sub(.5).mul(2),y=p(.25).add(h.mul(.75)),_=g(0).mul(o).mul(.008).mul(y),b=g(69.42).mul(o).mul(.004).mul(y),S=d(I(j.y.mul(3),s.mul(.8))).sub(.5),w=d(I(j.y.mul(30),s.mul(6))).sub(.5),v=S.mul(.008).add(w.mul(.002)).mul(i),E=Oe(p(.92),p(.99),fe(j.y.mul(8).sub(s.mul(3.77)))),C=Oe(p(.3),p(1),d(I(j.y.mul(4.77),s))),M=E.mul(C).mul(i).mul(-.018),R=Oe(p(.06),p(0),j.y),c=d(I(j.y.mul(60),s.mul(14))).sub(.5),m=R.mul(c).mul(i).mul(.09),x=R.mul(i).mul(h).mul(.02),T=v.add(M).add(m),N=I(j.x.add(T).add(b),j.y.add(x)),B=I(j.x.add(T).add(_),j.y.add(x)),D=r.sample(N),O=D.rgb.dot(_e(.299,.587,.114)),L=a.mul(.0075),V=p(0),Z=p(0);for(let Ae=0;Ae<JI;Ae++){let Ge=p(-Ae).mul(L),et=r.sample(I(B.x.add(Ge),B.y)),Ze=et.rgb.dot(_e(.596,-.274,-.322)),he=et.rgb.dot(_e(.211,-.523,.312)),Me=Ae/(JI-1)*(2/JI);V=V.add(Ze.mul(Me)),Z=Z.add(he.mul(Me))}let q=_e(O,V,Z),ae=_e(q.x.add(q.y.mul(.956)).add(q.z.mul(.621)),q.x.sub(q.y.mul(.272)).sub(q.z.mul(.647)),q.x.sub(q.y.mul(1.106)).add(q.z.mul(1.703))),we=p(1).add(Ye(pr(s,6.2831853).mul(2).add(j.y.mul(.5))).mul(.015).mul(i));return Vt(F(Tt(ae.mul(we),_e(0),_e(1)),D.a))}}});var hu,O6=z(()=>{"use strict";ut();hu={name:"Vibrance",category:"Adjustments",description:"Selective saturation adjustment protecting skin tones",requiresChild:!0,props:{intensity:{default:0,description:"The intensity of the vibrance effect",ui:{type:["range","map"],min:-2,max:2,step:.1,label:"Intensity",group:"Appearance"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return console.error("You must pass a child component into the Vibrance shader."),F(0);let n=e.rgb,r=t.intensity.uniform,i=dn(n.r,dn(n.g,n.b)).div(3),o=Pt(n.r,Pt(n.g,n.b)),a=o.sub(i).mul(r).mul(-3);return F(Re(n,_e(o,o,o),a),e.a)}}});function Jd(){return QI===null&&(QI=typeof navigator<"u"&&/Firefox/.test(navigator.userAgent)),QI}var QI,eN=z(()=>{"use strict";QI=null});var mu,U6=z(()=>{"use strict";eN();Li();ut();mu={name:"VideoTexture",category:"Textures",description:"Display a video with customizable playback and object-fit modes",props:{url:{default:"https://shaders.com/sample.mp4",description:"Upload a video or provide a URL",ui:{type:"video-upload",label:"Video",group:"Media"}},objectFit:{default:"cover",description:"How the video should be sized within the viewport",transform:t=>({cover:0,contain:1,fill:2,"scale-down":3,none:4})[t]??0,compileTime:!0,ui:{type:"select",options:[{label:"Cover",value:"cover"},{label:"Contain",value:"contain"},{label:"Fill",value:"fill"},{label:"Scale Down",value:"scale-down"},{label:"None",value:"none"}],label:"Object Fit",group:"Appearance"}},loop:{default:!0,description:"Loop the video playback",ui:{type:"checkbox",label:"Loop",group:"Playback"}}},fragmentNode:({uniforms:t,onCleanup:e,onBeforeRender:n})=>{let r=j,i=null,o="",a=!1,l=!1,s=oe(1),u=oe(640),d=oe(480),h=null,f=null,g;if(Jd())h=document.createElement("canvas"),h.width=640,h.height=480,f=h.getContext("2d"),g=new ps(h);else{let c=document.createElement("video");c.playsInline=!0,c.muted=!0,g=new Xa(c)}g.colorSpace=lr;let y=vn(g),_=async c=>{if(!(!c||c.trim()===""||a||l)){a=!0;try{let m=document.createElement("video");if(m.src=c,m.playsInline=!0,m.crossOrigin="anonymous",m.muted=!0,m.loop=t.loop?.uniform?.value??!0,await new Promise((N,B)=>{m.onloadedmetadata=()=>{N()},m.onerror=()=>{B(new Error("Failed to load video"))},setTimeout(()=>{B(new Error("Video load timeout"))},1e4)}),l){m.src="";return}let x=m.videoWidth||640,T=m.videoHeight||480;s.value=x/T,u.value=x,d.value=T,i&&(i.pause(),i.src="",i=null),i=m,o=c;try{await m.play()}catch(N){console.warn("[VideoTexture] Autoplay failed (browser policy):",N)}g.dispose(),Jd()?(h.width=x,h.height=T,g=new ps(h)):g=new Xa(m),g.colorSpace=lr,y.value=g,a=!1}catch(m){console.error("[VideoTexture] Failed to load video:",m),a=!1}}};setTimeout(()=>{let c=t?.url?.uniform?.value??"";c&&c.trim()!==""&&_(c)},0),n(()=>{let c=t?.url?.uniform?.value??"";if(c!==o&&!a&&_(c),i){let m=t.loop?.uniform?.value??!0;i.loop!==m&&(i.loop=m),Jd()&&!i.paused&&i.readyState>=2&&(f.drawImage(i,0,0,h.width,h.height),g.needsUpdate=!0)}}),e(()=>{l=!0,i&&(i.pause(),i.src="",i=null),g.dispose(),o=""});let b=r,S=$.x.div($.y),w=t.objectFit.uniform.value,v;switch(w){case 1:{let c=_n(S.div(s),p(1));v=I(s.div(S).mul(c),c);break}case 2:v=I(1,1);break;case 3:{let c=_n(_n(S.div(s),p(1)),_n($.x.div(u),$.y.div(d)));v=I(s.div(S).mul(c),c);break}case 4:{let c=_n($.x.div(u),$.y.div(d));v=I(s.div(S).mul(c),c);break}default:{let c=Pt(S.div(s),p(1));v=I(s.div(S).mul(c),c);break}}let E=b.sub(I(.5)).div(v).add(I(.5)),C=I(E.x,p(1).sub(E.y)),M=y.sample(C),R=uo(uo(C.x.lessThan(0),C.x.greaterThan(1)),uo(C.y.lessThan(0),C.y.greaterThan(1)));return F(M.rgb,fo(R,p(0),M.a))}}});var pu,D6=z(()=>{"use strict";Dt();ut();pu={name:"Vignette",category:"Stylize",description:"Darkens or tints the edges of the frame, drawing attention toward the center",requiresChild:!0,props:{color:{default:"#000000",transform:Ce,description:"Color of the vignette at the edges",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center of the clear area where the vignette begins",ui:{type:"position",label:"Center",group:"Position"}},radius:{default:.5,description:"Distance from center where the vignette begins to fade in",ui:{type:["range","map"],min:0,max:1.5,step:.01,label:"Radius",group:"Effect"}},falloff:{default:.5,description:"Width of the transition zone from clear to full vignette",ui:{type:["range","map"],min:.01,max:1.5,step:.01,label:"Falloff",group:"Effect"}},intensity:{default:1,description:"Strength of the vignette effect",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Intensity",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return console.error("You must pass a child component into the Vignette shader."),F(0);let n=j,r=$.x.div($.y),i=I(n.x.mul(r),n.y),o=I(t.center.uniform.x.mul(r),t.center.uniform.y.oneMinus()),a=Vn(i.sub(o)),l=Oe(t.radius.uniform,t.radius.uniform.add(t.falloff.uniform),a);return F(Re(e.rgb,t.color.uniform.rgb,l.mul(t.intensity.uniform)),e.a)}}});var dve,gu,F6=z(()=>{"use strict";Dt();On();gr();ut();dve=qe(([t])=>St(fe(I(kt(t,I(127.1,311.7)),kt(t,I(269.5,183.3)))).mul(p(43758.5453)))),gu={name:"Voronoi",category:"Textures",description:"Cellular pattern where each pixel is colored by its distance to the nearest of many scattered points",props:{colorA:{default:"#3186cf",transform:Ce,description:"Color near each cell's center point",ui:{type:"color",label:"Color A (Center)",group:"Colors"}},colorB:{default:"#fc02dd",transform:Ce,description:"Color at cell boundaries, far from any center point",ui:{type:"color",label:"Color B (Edge)",group:"Colors"}},colorBorder:{default:"#000000",transform:Ce,description:"Color of the cell boundary lines",ui:{type:"color",label:"Border Color",group:"Colors"}},scale:{default:6,description:"Number of cells across the canvas",ui:{type:["range","map"],min:1,max:20,step:.5,label:"Scale",group:"Effect"}},speed:{default:.5,description:"Animation speed \u2014 how fast the cell points drift",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Animation"}},seed:{default:0,description:"Random seed \u2014 shifts the cell pattern without changing the overall structure",ui:{type:["range","map"],min:0,max:100,step:1,label:"Seed",group:"Effect"}},edgeIntensity:{default:.5,description:"Controls how much of the cell interior is filled by the edge color. Low = center color dominates with a sharp boundary. High = edge color spreads further into the cell.",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Edge Intensity",group:"Effect"}},edgeSoftness:{default:.05,description:"Width of the cell boundary lines.",ui:{type:["range","map"],min:0,max:.4,step:.005,label:"Edge Softness",group:"Effect"}},colorSpace:{default:"oklch",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=e.colorA.uniform,r=e.colorB.uniform,i=e.colorBorder.uniform,o=e.colorSpace.uniform.value,a=e.scale.uniform,l=e.seed.uniform,s=fn(t,e.speed),u=$.x.div($.y),d=I(j.x.mul(u),j.y).mul(a);return qe(([h,f,g,y,_,b])=>{let S=Zt(h),w=St(h),v=p(10),E=p(10);for(let x=-1;x<=1;x++)for(let T=-1;T<=1;T++){let N=I(p(T),p(x)),B=dve(S.add(N).add(g)),D=B.x.add(fe(f.add(B.x.mul(p(6.28)))).mul(p(.15))).clamp(p(.05),p(.95)),O=B.y.add(Ye(f.mul(p(.7)).add(B.y.mul(p(6.28)))).mul(p(.15))).clamp(p(.05),p(.95)),L=Vn(w.sub(N.add(I(D,O)))),V=L.lessThan(v);E=V.select(v,L.lessThan(E).select(L,E)),v=V.select(L,v)}let C=v.add(E).max(p(1e-4)),M=Lt(n,r,Bt(v.mul(p(2)).div(C).clamp(p(0),p(1)),p(4).sub(y.mul(p(3)))).clamp(p(0),p(1)),o),R=_.mul(a).div(p(6)),c=E.sub(v).div(C),m=Oe(p(0),R.add(p(.001)),c);return F(Re(b.rgb,M.rgb,m),M.a)})(d,s,l,e.edgeIntensity.uniform,e.edgeSoftness.uniform,i)}}});var yu,L6=z(()=>{"use strict";gi();Dt();Wn();gr();ut();yu={name:"WaveDistortion",category:"Distortions",description:"Wave-based distortion with multiple waveform types",requiresRTT:!0,requiresChild:!0,props:{strength:{default:.3,description:"Distortion intensity",ui:{type:["range","map"],min:0,max:1,step:.05,label:"Strength",group:"Effect"}},frequency:{default:1,description:"Number of bends/waves",ui:{type:["range","map"],min:.1,max:10,step:.1,label:"Frequency",group:"Effect"}},speed:{default:1,description:"Animation speed",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Animation"}},angle:{default:0,description:"Direction of wave distortion in degrees",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},waveType:{default:"sine",description:"Shape of the distortion wave",compileTime:!0,transform:t=>({sine:0,triangle:1,square:2,sawtooth:3,bounce:4})[t]??0,ui:{type:"select",options:[{label:"Sine",value:"sine"},{label:"Triangle",value:"triangle"},{label:"Square",value:"square"},{label:"Sawtooth",value:"sawtooth"},{label:"Bounce",value:"bounce"}],label:"Wave Type",group:"Effect"}},edges:{default:"stretch",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:t=>{let{uniforms:e,childNode:n,onCleanup:r,onBeforeRender:i}=t;if(!n)return F(0,0,0,0);let o=j,a=$.x.div($.y),l=fn(t,e.speed).mul(.5),s,u;if(e.angle.uniform.isUniformNode){let v=oe(1),E=oe(0);i(()=>{let C=e.angle.uniform.value*Math.PI/180;v.value=Math.cos(C),E.value=Math.sin(C)}),s=v,u=E}else{let v=e.angle.uniform.mul(ci).div(180);s=Ye(v),u=fe(v)}let d=o.sub(I(.5,.5)),h=I(d.x.mul(a),d.y),f=I(h.x.mul(s).sub(h.y.mul(u)),h.x.mul(u).add(h.y.mul(s))).y.add(.5).mul(e.frequency.uniform).mul(ci.mul(2)).add(l),g;switch(e.waveType.uniform.value){case 1:g=Et(St(f.div(ci.mul(2))).mul(2).sub(1)).mul(2).sub(1);break;case 2:{let v=St(f.div(ci.mul(2)));g=yn(p(.5),v).mul(2).sub(1);break}case 3:g=St(f.div(ci.mul(2))).mul(2).sub(1);break;case 4:g=Et(fe(f));break;default:g=fe(f)}let y=g.mul(e.strength.uniform).mul(.5),_=y.mul(s).div(a),b=y.mul(u),S=I(o.x.add(_),o.y.add(b)),w=It(n);return r(()=>{w?.renderTarget?.dispose&&w.renderTarget.dispose()}),Vt(Ln(S,w.sample(S),w,e.edges.uniform.value))}}});var vu,k6=z(()=>{"use strict";Dt();ut();vu={name:"Weave",category:"Textures",description:"Interlaced textile weave pattern with two thread colors going over and under each other",props:{colorA:{default:"#c4c4c4",transform:Ce,description:"Horizontal thread color",ui:{type:"color",label:"X Color",group:"Colors"}},colorB:{default:"#4d4d4d",transform:Ce,description:"Vertical thread color",ui:{type:"color",label:"Y Color",group:"Colors"}},cells:{default:10,description:"Number of threads across the shortest canvas edge",ui:{type:["range","map"],min:2,max:40,step:1,label:"Cells",group:"Effect"}},gap:{default:.25,description:"Gap between threads (0 = no gap, 0.5 = maximum gap)",ui:{type:["range","map"],min:0,max:.45,step:.01,label:"Gap",group:"Effect"}},rotation:{default:0,description:"Rotation of the weave pattern in degrees",ui:{type:["range","map"],min:0,max:360,step:1,label:"Rotation",group:"Effect"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=t.rotation.uniform.mul(p(Math.PI/180)),o=Ye(i),a=fe(i),l=I(n.mul(p(.5)),p(.5)),s=r.sub(l),u=I(s.x.mul(o).sub(s.y.mul(a)),s.x.mul(a).add(s.y.mul(o))).add(l).mul(t.cells.uniform),d=Zt(u),h=St(u),f=t.gap.uniform,g=$r(u.x).mul(p(.5)),y=Oe(f,f.add(g),h.y).mul(Oe(f,f.add(g),p(1).sub(h.y))),_=Oe(f,f.add(g),h.x).mul(Oe(f,f.add(g),p(1).sub(h.x))),b=pr(d.x.add(d.y),p(2)),S=y.mul(_),w=y.sub(S.mul(b)).clamp(p(0),p(1)),v=_.sub(S.mul(p(1).sub(b))).clamp(p(0),p(1)),E=t.colorA.uniform,C=t.colorB.uniform,M=E.a.mul(w),R=C.a.mul(v),c=M.add(R).clamp(p(0),p(1)),m=M.add(R).max(p(.001));return F(E.x.mul(M).add(C.x.mul(R)).div(m),E.y.mul(M).add(C.y.mul(R)).div(m),E.z.mul(M).add(C.z.mul(R)).div(m),c)}}});var xu,B6=z(()=>{"use strict";eN();Li();ut();xu={name:"WebcamTexture",category:"Textures",description:"Display a live webcam feed with customizable object-fit modes",props:{objectFit:{default:"cover",description:"How the webcam feed should be sized within the viewport",transform:t=>({cover:0,contain:1,fill:2,"scale-down":3,none:4})[t]??0,compileTime:!0,ui:{type:"select",options:[{label:"Cover",value:"cover"},{label:"Contain",value:"contain"},{label:"Fill",value:"fill"},{label:"Scale Down",value:"scale-down"},{label:"None",value:"none"}],label:"Object Fit",group:"Appearance"}},mirror:{default:!0,description:"Mirror the webcam feed horizontally (selfie mode)",ui:{type:"checkbox",label:"Mirror",group:"Effect"}}},fragmentNode:({uniforms:t,onCleanup:e,onBeforeRender:n})=>{let r=j,i=null,o=null,a=!1,l=!1,s=oe(1),u=oe(640),d=oe(480),h=null,f=null,g;if(Jd())h=document.createElement("canvas"),h.width=640,h.height=480,f=h.getContext("2d"),g=new ps(h);else{let m=document.createElement("video");m.playsInline=!0,m.muted=!0,g=new Xa(m)}g.colorSpace=lr;let y=vn(g);(async()=>{if(!(a||l))try{if(i=await navigator.mediaDevices.getUserMedia({video:{width:{ideal:1280},height:{ideal:720},facingMode:"user"},audio:!1}),l){i.getTracks().forEach(T=>T.stop()),i=null;return}if(o=document.createElement("video"),o.srcObject=i,o.playsInline=!0,o.muted=!0,await new Promise((T,N)=>{if(!o)return N(new Error("Video element not created"));o.onloadedmetadata=()=>{T()},o.onerror=()=>{N(new Error("Failed to load video metadata"))}}),l||(await o.play(),l))return;let m=o.videoWidth||640,x=o.videoHeight||480;s.value=m/x,u.value=m,d.value=x,g.dispose(),Jd()?(h.width=m,h.height=x,g=new ps(h)):g=new Xa(o),g.colorSpace=lr,y.value=g,a=!0,console.log(`[WebcamTexture] Webcam started: ${m}x${x}`)}catch(m){m instanceof DOMException?m.name==="NotAllowedError"?console.error("[WebcamTexture] Camera permission denied by user"):m.name==="NotFoundError"?console.error("[WebcamTexture] No camera found on this device"):m.name==="NotReadableError"?console.error("[WebcamTexture] Camera is already in use by another application"):console.error("[WebcamTexture] Camera error:",m.message):console.error("[WebcamTexture] Failed to start webcam:",m)}})(),n(()=>{Jd()&&o&&a&&!o.paused&&o.readyState>=2&&(f.drawImage(o,0,0,h.width,h.height),g.needsUpdate=!0)}),e(()=>{l=!0,i&&(i.getTracks().forEach(m=>m.stop()),i=null),o&&(o.srcObject=null,o=null),g.dispose(),a=!1});let b=r,S=$.x.div($.y),w=t.objectFit.uniform.value,v;switch(w){case 1:{let m=_n(S.div(s),p(1));v=I(s.div(S).mul(m),m);break}case 2:v=I(1,1);break;case 3:{let m=_n(_n(S.div(s),p(1)),_n($.x.div(u),$.y.div(d)));v=I(s.div(S).mul(m),m);break}case 4:{let m=_n($.x.div(u),$.y.div(d));v=I(s.div(S).mul(m),m);break}default:{let m=Pt(S.div(s),p(1));v=I(s.div(S).mul(m),m);break}}let E=b.sub(I(.5)).div(v).add(I(.5)),C=t.mirror.uniform,M=I(fo(C,p(1).sub(E.x),E.x),p(1).sub(E.y)),R=y.sample(M),c=uo(uo(M.x.lessThan(0),M.x.greaterThan(1)),uo(M.y.lessThan(0),M.y.greaterThan(1)));return F(R.rgb,fo(c,p(0),R.a))}}});var z6,V6,G6,H6,W6,fve,j6,hve,mve,pve,bu,q6=z(()=>{"use strict";Dt();On();gr();ut();z6=p(Math.PI*2),V6=p(.15),G6=p(.5),H6=p(.05),W6=p(.95),fve=p(.7),j6=p(10),hve=qe(([t])=>St(fe(I(kt(t,I(127.1,311.7)),kt(t,I(269.5,183.3)))).mul(p(43758.5453)))),mve=t=>({f1:0,f2:1,f2MinusF1:2,f1PlusF2:3,f1TimesF2:4})[t]??0,pve=t=>({euclidean:0,manhattan:1,chebyshev:2})[t]??0,bu={name:"WorleyNoise",category:"Textures",description:"Cellular noise field \u2014 distance-based, with selectable feature combinations and fractal octaves",props:{colorA:{default:"#ffffff",transform:Ce,description:"Color where the noise field is low (typically near cell centers)",ui:{type:"color",label:"Color A (Low)",group:"Colors"}},colorB:{default:"#000000",transform:Ce,description:"Color where the noise field is high (typically near cell boundaries)",ui:{type:"color",label:"Color B (High)",group:"Colors"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}},scale:{default:6,description:"Number of cells across the canvas at the base octave",ui:{type:["range","map"],min:1,max:30,step:.5,label:"Scale",group:"Effect"}},mode:{default:"f1",transform:mve,compileTime:!0,description:"Field type. F1 = distance to nearest point. F2 = distance to second-nearest. F2 \u2212 F1 emphasises cell boundaries.",ui:{type:"select",options:[{label:"F1 (Cells)",value:"f1"},{label:"F2 (Wider Cells)",value:"f2"},{label:"F2 \u2212 F1 (Edges)",value:"f2MinusF1"},{label:"F1 + F2",value:"f1PlusF2"},{label:"F1 \xD7 F2",value:"f1TimesF2"}],label:"Mode",group:"Effect"}},distance:{default:"euclidean",transform:pve,compileTime:!0,description:"Distance metric. Euclidean = round cells. Manhattan = diamond. Chebyshev = square.",ui:{type:"select",options:[{label:"Euclidean",value:"euclidean"},{label:"Manhattan",value:"manhattan"},{label:"Chebyshev",value:"chebyshev"}],label:"Distance",group:"Effect"}},octaves:{default:1,compileTime:!0,description:"Number of fractal layers stacked at progressively finer scales",ui:{type:"range",min:1,max:4,step:1,label:"Octaves",group:"Effect"}},lacunarity:{default:2,description:"Scale multiplier between octaves (only active when Octaves > 1)",ui:{type:["range","map"],min:1.5,max:4,step:.1,label:"Lacunarity",group:"Effect",condition:{octaves:[2,3,4]}}},persistence:{default:.5,description:"Amplitude multiplier between octaves (only active when Octaves > 1)",ui:{type:["range","map"],min:0,max:1,step:.05,label:"Persistence",group:"Effect",condition:{octaves:[2,3,4]}}},jitter:{default:1,description:"How much each cell's point drifts inside its cell. 0 = rigid grid (banded look), 1 = fully random.",ui:{type:["range","map"],min:0,max:1,step:.05,label:"Jitter",group:"Effect"}},contrast:{default:1,description:"Steepness of the gradient between low and high regions",ui:{type:["range","map"],min:.25,max:4,step:.05,label:"Contrast",group:"Effect"}},balance:{default:0,description:"Shifts the gradient midpoint. Negative pulls the field toward Color A, positive toward Color B.",ui:{type:["range","map"],min:-1,max:1,step:.05,label:"Balance",group:"Effect"}},seed:{default:0,description:"Random seed \u2014 shifts the cell pattern without changing its overall structure",ui:{type:["range","map"],min:0,max:100,step:1,label:"Seed",group:"Effect"}},speed:{default:.5,description:"Animation speed \u2014 how fast each cell's point drifts",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Animation"}}},fragmentNode:t=>{let{uniforms:e}=t,n=e.colorA.uniform,r=e.colorB.uniform,i=e.colorSpace.uniform.value,o=e.mode.uniform.value,a=e.distance.uniform.value,l=Math.max(1,Math.min(4,Math.round(e.octaves.uniform.value))),s=fn(t,e.speed),u=$.x.div($.y),d=I(j.x.mul(u),j.y),h=e.scale.uniform,f=e.seed.uniform,g=e.jitter.uniform,y=e.lacunarity.uniform,_=e.persistence.uniform,b=1.5;o===1?b=1:o===2?b=2.5:o===3?b=.6:o===4&&(b=2),a===1?b*=.7:a===2&&(b*=1.4);let S=a===0,w=o!==0,v=qe(([c,m,x])=>{let T=m.mul(fve),N=Zt(c),B=St(c),D=j6,O=j6;for(let V=-1;V<=1;V++)for(let Z=-1;Z<=1;Z++){let q=I(p(Z),p(V)),ae=hve(N.add(q).add(x)),we=ae.x.add(fe(m.add(ae.x.mul(z6))).mul(V6)),Ae=ae.y.add(Ye(T.add(ae.y.mul(z6))).mul(V6)),Ge=Re(G6,we.clamp(H6,W6),g),et=Re(G6,Ae.clamp(H6,W6),g),Ze=q.add(I(Ge,et)),he=B.sub(Ze),Me;a===1?Me=Et(he.x).add(Et(he.y)):a===2?Me=Pt(Et(he.x),Et(he.y)):Me=Vz(he),w?(O=_n(O,Pt(Me,D)),D=_n(D,Me)):D=_n(D,Me)}let L;return S?o===1?L=Sn(O):o===2?L=Sn(O).sub(Sn(D)):o===3?L=Sn(D).add(Sn(O)):o===4?L=Sn(D.mul(O)):L=Sn(D):o===1?L=O:o===2?L=O.sub(D):o===3?L=D.add(O):o===4?L=D.mul(O):L=D,L}),E=p(0),C=p(0),M=p(1),R=h;for(let c=0;c<l;c++){let m=v(d.mul(R),s.add(p(c*17)),f.add(p(c*31)));E=E.add(m.mul(M)),C=C.add(M),M=M.mul(_),R=R.mul(y)}return Lt(n,r,Tt(E.div(C.max(p(1e-4))).mul(p(b)).mul(p(2)).sub(p(1)).mul(e.contrast.uniform).add(e.balance.uniform).mul(p(.5)).add(p(.5)),p(0),p(1)),i)}}});var X6,gve,yve,_u,$6=z(()=>{"use strict";Dt();Wn();ut();X6=Array.from({length:32},(t,e)=>{let n=(e/31-.5)*2;return Math.exp(-.5*n*n/.64)}),gve=X6.reduce((t,e)=>t+e),yve=X6.map(t=>t/gve),_u={name:"ZoomBlur",category:"Blurs",description:"Radial zoom blur expanding from a center point",requiresRTT:!0,requiresChild:!0,props:{intensity:{default:30,description:"Intensity of the zoom blur effect",ui:{type:["range","map"],min:0,max:100,step:1,label:"Intensity",group:"Effect"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center point of the zoom blur",ui:{type:"position",label:"Center",group:"Position"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=I(t.center.uniform.x,t.center.uniform.y.oneMinus()),o=t.intensity.uniform.mul(.01),a=$.x.div($.y);return qe(()=>{let l=j,s=F(0).toVar(),u=l.sub(i),d=I(u.x.mul(a),u.y);for(let h=0;h<32;h++){let f=p(1).add(o.mul(h/31)),g=d.div(f),y=I(g.x.div(a),g.y).add(i);s.assign(s.add(r.sample(y).mul(p(yve[h]))))}return Vt(s)})()}}});function vve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(e.rgb,r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Sve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r))),o=Y6(_e(t.r,t.g,t.b)),a=Y6(_e(e.r,e.g,e.b)),l=Z6(o),s=Z6(a),u=K6(l);return F(xve(bve(_ve(dn(tt(K6(s),r),tt(u,tt(t.a,rn(1,r))))))),i)}function Tve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r))),o=J6(_e(t.r,t.g,t.b)),a=J6(_e(e.r,e.g,e.b)),l=Q6(o);return F(wve(Mve(dn(tt(Q6(a),r),tt(l,tt(t.a,rn(1,r)))))),i)}function Cve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(tt(t.rgb,e.rgb),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Eve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(rn(1,tt(rn(1,t.rgb),rn(1,e.rgb))),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Rve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(_n(dn(t.rgb,e.rgb),1),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Ave(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(Re(tt(2,tt(t.rgb,e.rgb)),rn(1,tt(2,tt(rn(1,t.rgb),rn(1,e.rgb)))),yn(.5,t.rgb)),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Pve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(Et(rn(t.rgb,e.rgb)),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Ive(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(Re(t.rgb,_n(hc(t.rgb,rn(1,e.rgb)),1),yn(.001,rn(1,e.rgb))),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Nve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(rn(dn(t.rgb,e.rgb),tt(2,tt(t.rgb,e.rgb))),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Qd(t){return dn(dn(tt(t.r,.2126),tt(t.g,.7152)),tt(t.b,.0722))}function Ove(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r))),o=rn(Qd(t.rgb),Qd(e.rgb));return F(dn(tt(dn(e.rgb,o),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Uve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r))),o=Qd(t.rgb),a=Qd(e.rgb).div(dn(o,1e-4));return F(dn(tt(tt(t.rgb,a),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Dve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(_n(t.rgb,e.rgb),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Fve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(Pt(t.rgb,e.rgb),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Lve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(Re(F(0,0,0,1).rgb,Pt(rn(1,rn(1,t.rgb).div(dn(e.rgb,1e-4))),0),yn(1e-4,e.rgb)),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function kve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(Pt(dn(dn(t.rgb,e.rgb),-1),0),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Bve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r))),o=dn(tt(2,tt(t.rgb,e.rgb)),tt(tt(t.rgb,t.rgb),rn(1,tt(2,e.rgb)))),a=Sn(t.rgb);return F(dn(tt(Re(o,dn(tt(2,tt(t.rgb,rn(1,e.rgb))),tt(a,rn(tt(2,e.rgb),1))),yn(.5,e.rgb)),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function zve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(Re(tt(2,tt(t.rgb,e.rgb)),rn(1,tt(2,tt(rn(1,t.rgb),rn(1,e.rgb)))),yn(.5,e.rgb)),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Vve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r))),o=Qd(t.rgb),a=Qd(e.rgb),l=t.rgb.sub(o),s=e.rgb.sub(a),u=l.length();return F(dn(tt(dn(tt(s.normalize(),u),o),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Gve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r))),o=Qd(t.rgb),a=Qd(e.rgb),l=t.rgb.sub(o),s=e.rgb.sub(a);return F(dn(tt(dn(tt(l.normalize(),s.length()),o),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Um(t,e,n="normal",r=1){return(e8[n]||e8.normal)(t,e,r)}function Hve(t,e){let n=tt(t.a,e.a);return F(t.rgb,n)}function Wve(t,e){let n=rn(1,e.a),r=tt(t.a,n);return F(t.rgb,r)}function jve(t,e){let n=_e(.2126,.7152,.0722),r=kt(e.rgb,n),i=tt(t.a,r);return F(t.rgb,i)}function qve(t,e){let n=_e(.2126,.7152,.0722),r=rn(1,kt(e.rgb,n)),i=tt(t.a,r);return F(t.rgb,i)}function Xve(t,e,n="alpha"){return(t8[n]||t8.alpha)(t,e)}function ue(t,e,n){let r={};return Object.entries(t.props).forEach(([i,o])=>{let a=e[i],l=a;if(o.transform){let u=o.transform(a);l=u?.node??u}if(l==null&&(l=o.default,o.transform&&l!==null&&l!==void 0)){let u=o.transform(l);l=u?.node??u}l==null&&(console.error(`[Shaders] Uniform "${i}" is null/undefined after fallback. PropConfig:`,{propName:i,initialValue:a,default:o.default,hasTransform:!!o.transform}),l=0);let s=oe(l).setName(`${i}_${n}`);typeof l=="string"&&s.value===null&&(s.value=l),r[i]={uniform:s,transform:o.transform||void 0,compileTime:o.compileTime||!1,...o.compileTimeWhen?{compileTimeWhen:o.compileTimeWhen,_lastCompiledValue:a??o.default}:{}}}),r}function Kve(t,e){if(t?.transform){let n=Zve.get(t.transform);if(n){let r=n(e);t.uniform.value&&typeof t.uniform.value.copy=="function"?t.uniform.value.copy(r):t.uniform.value=r}else{let r=t.transform(e),i=r?.data??r;t.uniform.value&&typeof t.uniform.value.copy=="function"&&i&&typeof i.copy=="function"?t.uniform.value.copy(i):t.uniform.value=i}}else t.uniform.value=e}function n8(){let t=null,e,n,r,i,o,a={nodes:new Map,rootId:null,idToNodeId:new Map},l=new Map,s=null,u=null,d=null,h=!1,f=!1,g="p3-linear",y=!1,_=null,b=!1,S=!0,w=!1,v=0,E=0,C=0,M=0,R=!1,c=.5,m=.5,x=!1,T=null,N=!1,B=!1,D=null,O=null,L=null,V=null,Z=8192,q=0,ae=0,we=!0,Ae=new $ve,Ge=[],et=!1,Ze=null,he=!1,Me=!1,Pe=null,We=!1,Xe=pe=>{if(!We){We=!0;try{Ua()}catch{}Pe&&queueMicrotask(()=>{try{Pe?.(pe)}catch(Le){console.error("[Shaders] onDeviceLost callback threw:",Le)}})}},le=null,rt=new Set,De=new Set,K=0,be=new Set,Ee=new Set,Be=null,Ke=!1,ct=(pe,Le)=>{let Ue=e?.getPixelRatio?.()??1,Ne=Math.max(1,Math.floor(Z/Ue)-1),U=Math.min(pe,window.innerWidth,Ne),Y=Math.min(Le,window.innerHeight,Ne),ve=Math.min(U/pe,Y/Le,1);return{width:Math.max(1,Math.round(pe*ve)),height:Math.max(1,Math.round(Le*ve))}},X=(pe,Le)=>{pe<=0||Le<=0||pe===q&&Le===ae||(q=pe,ae=Le,Be={width:pe,height:Le},Ke||(Ke=!0,requestAnimationFrame(()=>{if(Ke=!1,!Be)return;let Ue=Be;Be=null;let{width:Ne,height:U}=ct(Ue.width,Ue.height);v=Ne,E=U,y||(y=!0,a.nodes.size>0&&le===null&&(le=requestAnimationFrame(()=>{le=null,H()}))),e.setSize(Ne,U,!1);let Y=Ne/U,ve=2,te=ve*Y;n.left=-te/2,n.right=te/2,n.top=ve/2,n.bottom=-ve/2,n.updateProjectionMatrix(),i.scale.set(te,ve,1),a.nodes.forEach(ye=>{ye.transformUniforms?.aspectRatio&&(ye.transformUniforms.aspectRatio.value=Y),ye.resizeCallbacks.forEach(je=>{try{je({width:Ne,height:U})}catch($e){console.error("Error in resize callback:",$e)}})}),C=0,Rr()})))},at=()=>h&&!!e&&!!r&&!!n&&!!o&&v>0&&E>0,nt=pe=>{if(!e||!n||!i)return;let Le=pe[0];if(!Le)return;let Ue,Ne;if(Le.contentBoxSize){let U=Array.isArray(Le.contentBoxSize)?Le.contentBoxSize[0]:Le.contentBoxSize;U?(Ue=Math.round(U.inlineSize),Ne=Math.round(U.blockSize)):(Ue=Math.round(Le.contentRect.width),Ne=Math.round(Le.contentRect.height))}else Ue=Math.round(Le.contentRect.width),Ne=Math.round(Le.contentRect.height);Ue===0||Ne===0||X(Ue,Ne)},Ct=pe=>{let Le=pe[0];Le&&(b=Le.isIntersecting)},me=(pe,Le)=>{if(pe.size!==Le.size)return!1;for(let Ue of pe)if(!Le.has(Ue))return!1;return!0},ke=pe=>{K++;let Le=It(pe);return be.add(Le),Le},k=()=>{Ee.forEach(pe=>{try{pe?.renderTarget?.dispose&&pe.renderTarget.dispose()}catch{}}),Ee.clear()},P=!1,H=()=>{if(!(!a.rootId||!o||N)&&a.nodes.get(a.rootId)){if(v===0||E===0){P||(P=!0,requestAnimationFrame(()=>{P=!1,v>0&&E>0&&H()}));return}N=!0;try{Ee=new Set(be),be.clear();let pe=new Set;De.clear(),a.nodes.forEach((Ue,Ne)=>{(Ue.requiresRTT||Ue.transformRTTActive)&&De.add(Ne)}),K=0;let Le=Ot(a.rootId,new Set,pe);if(Le&&o){let Ue=!me(rt,pe),Ne=o.fragmentNode!==Le;if(Ue||R||Ne){k();try{o.dispose(),e.renderTarget&&e.renderTarget.dispose()}catch{}let U=new hm({transparent:!0});U.fragmentNode=Le,U.needsUpdate=!0,i.material=U,o=U,R=!1,rt=pe,!he&&pe.size>0&&(Me=!0)}}}catch(pe){console.error("Error composing shader tree:",pe)}finally{N=!1,B=!1}s||Rr()}},Q=pe=>{let Le=l.get(pe);if(!Le)return[];let Ue=[];for(let Ne of Le){let U=a.nodes.get(Ne);U&&Ue.push(U)}return Ue},se=pe=>pe.replace(/[^a-zA-Z0-9_]/g,"_"),Te=pe=>{let Le=se(pe);for(let[Ue,Ne]of a.nodes.entries())if(Ne.metadata.id===Le)return Ue;return null},Ie=(pe,Le,Ue,Ne,U)=>{if(!Le.metadata.mask?.source)return pe;let Y=Le.metadata.mask.source,ve=Te(Y);if(!ve)return pe;if(Ne.has(ve))return console.error("Uh oh, looks like you've got a circular dependency in your shader masks."),pe;let te=new Set(Ne);te.add(Ue);let ye=Ot(ve,te),je=ye;U&&(je=ke(ye).sample(U));let $e=Le.metadata.mask.type||"alpha";return Xve(pe,je,$e)},J=(pe,Le,Ue,Ne,U)=>{let Y=Te(pe.source);if(!Y)return null;if(Le.has(Y))return console.error(`[Shaders] Circular dependency detected in prop maps: node "${pe.source}" is already being processed.`),null;let ve=new Set(Le);ve.add(Ue);let te=ke(Ot(Y,ve)),ye=te.sample(U??j),je;switch(pe.channel){case"alpha":je=ye.a;break;case"alphaInverted":je=ye.a.oneMinus();break;case"luminanceInverted":je=kt(ye.rgb,_e(.2126,.7152,.0722)).oneMinus();break;default:je=kt(ye.rgb,_e(.2126,.7152,.0722));break}let $e=a.nodes.get(Ue);if(!$e)return null;$e.mapUniforms||($e.mapUniforms={}),$e.mapUniforms[Ne]?($e.mapUniforms[Ne].inputMin.value=pe.inputMin,$e.mapUniforms[Ne].inputMax.value=pe.inputMax,$e.mapUniforms[Ne].outputMin.value=pe.outputMin,$e.mapUniforms[Ne].outputMax.value=pe.outputMax,$e.mapUniforms[Ne].curve.value=pe.curve??0,$e.mapUniforms[Ne].sourceTexture=te,$e.mapUniforms[Ne].channel=pe.channel):$e.mapUniforms[Ne]={inputMin:oe(pe.inputMin),inputMax:oe(pe.inputMax),outputMin:oe(pe.outputMin),outputMax:oe(pe.outputMax),curve:oe(pe.curve??0),sourceTexture:te,channel:pe.channel};let{inputMin:ft,inputMax:ht,outputMin:He,outputMax:Ft,curve:Yt}=$e.mapUniforms[Ne],Wt=Pt(ht.sub(ft),1e-4);return Re(He,Ft,Bt(Tt(je.sub(ft).div(Wt),0,1),Bt(p(2),Yt.negate().mul(2))))},ee=(pe,Le,Ue)=>{let Ne=a.nodes.get(Le);if(!Ne)return null;if(Ne.mouseDriverState||(Ne.mouseDriverState={}),!Ne.mouseDriverState[Ue]){let U=pe.x===void 0||pe.x==="mouse",Y=pe.y===void 0||pe.y==="mouse",ve=U?c:pe.x,te=Y?m:pe.y,ye=oe(new mn(ve,1-te));Ne.mouseDriverState[Ue]={currentX:ve,currentY:te,velocityX:0,velocityY:0,smoothedUniform:ye}}return Ne.mouseDriverState[Ue].smoothedUniform},Se=(pe,Le,Ue)=>{let Ne=a.nodes.get(Le);if(!Ne)return null;if(Ne.mouseDriverState||(Ne.mouseDriverState={}),!Ne.mouseDriverState[Ue]){let ye=Math.max(.001,pe.axis==="x"?c:m),je=oe(ye);Ne.mouseDriverState[Ue]={currentX:ye,currentY:0,velocityX:0,velocityY:0,smoothedUniform:je}}Ne.mapUniforms||(Ne.mapUniforms={}),Ne.mapUniforms[Ue]?(Ne.mapUniforms[Ue].outputMin.value=pe.outputMin,Ne.mapUniforms[Ue].outputMax.value=pe.outputMax,Ne.mapUniforms[Ue].curve.value=pe.curve??0):Ne.mapUniforms[Ue]={inputMin:oe(0,"float"),inputMax:oe(1,"float"),outputMin:oe(pe.outputMin,"float"),outputMax:oe(pe.outputMax,"float"),curve:oe(pe.curve??0,"float")};let{outputMin:U,outputMax:Y,curve:ve}=Ne.mapUniforms[Ue],te=Ne.mouseDriverState[Ue].smoothedUniform;return Re(U,Y,Bt(te,Bt(p(2),ve.negate().mul(2))))},Je=(pe,Le,Ue)=>{let Ne=a.nodes.get(Le);return Ne?(Ne.autoAnimateState||(Ne.autoAnimateState={}),Ne.autoAnimateState[Ue]||(Ne.autoAnimateState[Ue]={smoothedUniform:oe(pe.outputMin,"float")}),Ne.autoAnimateState[Ue].smoothedUniform):null},Fe=(pe,Le,Ue,Ne)=>{if(!Le||Object.keys(Le).length===0)return pe;let U={...pe},Y=a.nodes.get(Ue),ve=Y?.mapSampleUVsFunc?.(pe)??{};for(let[te,ye]of Object.entries(Le)){let je=null;if(ye.type==="map"){if(!(te in U))continue;je=J(ye,Ne,Ue,te,ve[te])}else if(ye.type==="mouse-position"){je=ee(ye,Ue,te),je!==null&&te in U&&(U[te]={...U[te],uniform:je});continue}else if(ye.type==="mouse"){if(!(te in U))continue;je=Se(ye,Ue,te)}else if(ye.type==="auto-animate"){if(!(te in U))continue;je=Je(ye,Ue,te)}if(je!==null&&te in U){let $e;if(ye.type==="map"){let ht=Y?.mapUniforms?.[te];ht?.sourceTexture&&ht?.channel&&($e={sourceTexture:ht.sourceTexture,channel:ht.channel,inputMin:ht.inputMin,inputMax:ht.inputMax,outputMin:ht.outputMin,outputMax:ht.outputMax,curve:ht.curve})}let ft;ye.type==="mouse"&&(ft=()=>{let ht=Y?.mouseDriverState?.[te],He=Y?.mapUniforms?.[te];if(!ht||!He)return 0;let Ft=ht.smoothedUniform.value,Yt=He.outputMin.value,Wt=He.outputMax.value,Nn=Math.pow(2,-(He.curve.value*2));return Yt+(Wt-Yt)*Math.pow(Ft,Nn)}),U[te]={...U[te],uniform:je,...$e?{mapComputeInfo:$e}:{},...ft?{getCpuValue:ft}:{}}}}return U},Qe=(pe,Le)=>{if(!Le.metadata.transform||!Le.transformUniforms||!tN(Le.metadata.transform)&&!Le.transformRTTActive)return pe;let Ue=ke(pe),Ne=Yve(j,Le.transformUniforms.offsetX,Le.transformUniforms.offsetY,Le.transformUniforms.rotation,Le.transformUniforms.scale,Le.transformUniforms.anchorX,Le.transformUniforms.anchorY,Le.transformUniforms.aspectRatio);return Ln(Ne,Ue.sample(Ne),Ue,Le.transformUniforms.edges.value)},Nt=(pe,Le)=>{if(pe.computeOutputs=void 0,pe.computeGetNodes=void 0,!(typeof window<"u"&&window.sessionStorage?.getItem("__shadersForceWebGL")==="1")&&pe.computeNodeFunc&&e.backend?.isWebGPUBackend===!0)try{let Ue=pe.computeNodeFunc(Le);if(Ue)return pe.computeOutputs=Ue.outputs,pe.computeGetNodes=Ue.getComputeNodes,Ue.outputs}catch(Ue){console.error(`Error initializing compute for node ${pe.id}:`,Ue)}},Ot=(pe,Le=new Set,Ue)=>{if(v===0||E===0)return F(0,0,0,0);let Ne=a.nodes.get(pe);if(!Ne)return F(0,0,0,0);let U=je=>{Ne.cleanupCallbacks.push(je)},Y=je=>{Ne.beforeRenderCallbacks.push(je)},ve=je=>{Ne.afterRenderCallbacks.push(je)},te=je=>{Ne.resizeCallbacks.push(je)},ye=Q(pe);if(ye.length===0){Ne.cleanupCallbacks.forEach($e=>{try{$e()}catch(ft){console.error("Error in cleanup callback:",ft)}}),Ne.cleanupCallbacks=[],Ne.beforeRenderCallbacks=[],Ne.afterRenderCallbacks=[],Ne.resizeCallbacks=[];let je={uniforms:Fe(Ne.uniforms??{},Ne.metadata.maps,pe,Le),childNode:void 0,onCleanup:U,onBeforeRender:Y,onAfterRender:ve,onResize:te,canvas:t,dimensions:{width:v,height:E},renderer:e,domCanvas:Ne.domCanvas};return je.computeOutputs=Nt(Ne,je),Ie(Qe(Ne.fragmentNodeFunc(je),Ne),Ne,pe,Le)}else{let je=[...ye].sort(($e,ft)=>$e.metadata.renderOrder-ft.metadata.renderOrder);if(Ne.parentId===null){let $e;for(let ht=0;ht<je.length;ht++){let He=je[ht],Ft;if(He.metadata.opacity===void 0?(Ft=1,He.opacityUniform.value=Ft):(Ft=He.metadata.opacity,He.opacityUniform.value=Ft),He.metadata.visible===!1)continue;Ue&&Ue.add(He.id);let Yt=Q(He.id).length>0,Wt;if(Yt)Wt=Ot(He.id,Le,Ue);else{let Nn=cr=>{He.cleanupCallbacks.push(cr)},ar=cr=>{He.beforeRenderCallbacks.push(cr)},Sr=cr=>{He.afterRenderCallbacks.push(cr)},tr=cr=>{He.resizeCallbacks.push(cr)},wr=$e;He.requiresRTT&&$e!==void 0&&(wr=Um(F(0,0,0,0),$e,"normal",1)),He.cleanupCallbacks.forEach(cr=>{try{cr()}catch(Kn){console.error("Error in cleanup callback:",Kn)}}),He.cleanupCallbacks=[],He.beforeRenderCallbacks=[],He.afterRenderCallbacks=[],He.resizeCallbacks=[];let jt={uniforms:Fe(He.uniforms??{},He.metadata.maps,He.id,Le),childNode:wr,onCleanup:Nn,onBeforeRender:ar,onAfterRender:Sr,onResize:tr,canvas:t,dimensions:{width:v,height:E},renderer:e,domCanvas:He.domCanvas};jt.computeOutputs=Nt(He,jt),Wt=Ie(Qe(He.fragmentNodeFunc(jt),He),He,He.id,Le)}He.requiresChild&&He.metadata.blendMode==="normal"&&!Yt?$e=Re($e||F(0,0,0,0),Wt,He.opacityUniform):$e===void 0?Ne.requiresRTT||Ft!==1?$e=Um(F(1,1,1,0),Wt,He.metadata.blendMode,He.opacityUniform):$e=Wt:$e=Um($e,Wt,He.metadata.blendMode,He.opacityUniform)}Ne.cleanupCallbacks.forEach(ht=>{try{ht()}catch(He){console.error("Error in cleanup callback:",He)}}),Ne.cleanupCallbacks=[],Ne.beforeRenderCallbacks=[],Ne.afterRenderCallbacks=[],Ne.resizeCallbacks=[];let ft={uniforms:Fe(Ne.uniforms??{},Ne.metadata.maps,pe,Le),childNode:$e,onCleanup:U,onBeforeRender:Y,onAfterRender:ve,onResize:te,canvas:t,dimensions:{width:v,height:E},renderer:e,domCanvas:Ne.domCanvas};return ft.computeOutputs=Nt(Ne,ft),Ie(Qe(Ne.fragmentNodeFunc(ft),Ne),Ne,pe,Le)}else{let $e;for(let ht=0;ht<je.length;ht++){let He=je[ht],Ft;if(He.metadata.opacity===void 0?(Ft=1,He.opacityUniform.value=Ft):(Ft=He.metadata.opacity,He.opacityUniform.value=Ft),He.metadata.visible===!1)continue;Ue&&Ue.add(He.id);let Yt=Q(He.id).length>0,Wt;if(Yt)Wt=Ot(He.id,Le,Ue);else{let Nn=cr=>{He.cleanupCallbacks.push(cr)},ar=cr=>{He.beforeRenderCallbacks.push(cr)},Sr=cr=>{He.afterRenderCallbacks.push(cr)},tr=cr=>{He.resizeCallbacks.push(cr)},wr=$e;He.requiresRTT&&$e!==void 0&&(wr=Um(F(0,0,0,0),$e,"normal",1)),He.cleanupCallbacks=[],He.beforeRenderCallbacks=[],He.afterRenderCallbacks=[],He.resizeCallbacks=[];let jt={uniforms:Fe(He.uniforms??{},He.metadata.maps,He.id,Le),childNode:wr,onCleanup:Nn,onBeforeRender:ar,onAfterRender:Sr,onResize:tr,canvas:t,dimensions:{width:v,height:E},renderer:e,domCanvas:He.domCanvas};jt.computeOutputs=Nt(He,jt),Wt=Ie(Qe(He.fragmentNodeFunc(jt),He),He,He.id,Le)}He.requiresChild&&He.metadata.blendMode==="normal"&&!Yt?$e=Re($e||F(0,0,0,0),Wt,He.opacityUniform):$e===void 0?Ne.requiresRTT||Ft!==1?$e=Um(F(1,1,1,0),Wt,He.metadata.blendMode,He.opacityUniform):$e=Wt:$e=Um($e,Wt,He.metadata.blendMode,He.opacityUniform)}Ne.cleanupCallbacks.forEach(ht=>{try{ht()}catch(He){console.error("Error in cleanup callback:",He)}}),Ne.cleanupCallbacks=[],Ne.beforeRenderCallbacks=[],Ne.afterRenderCallbacks=[],Ne.resizeCallbacks=[];let ft={uniforms:Fe(Ne.uniforms??{},Ne.metadata.maps,pe,Le),childNode:$e,onCleanup:U,onBeforeRender:Y,onAfterRender:ve,onResize:te,canvas:t,dimensions:{width:v,height:E},renderer:e,domCanvas:Ne.domCanvas};return ft.computeOutputs=Nt(Ne,ft),Ie(Qe(Ne.fragmentNodeFunc(ft),Ne),Ne,pe,Le)}}},en=(pe,Le,Ue,Ne,U={},Y,ve)=>{if(Le===null){let ht=Ge.findIndex(He=>He.id===pe);if(ht!==-1){Ge.splice(ht,1);return}ze(pe);return}if(!et){let ht=Ge.findIndex(He=>He.id===pe);ht!==-1?Ge[ht]={id:pe,fragmentNodeFunc:Le,parentId:Ue,metadata:Ne,uniforms:U,componentDefinition:Y,domCanvas:ve}:Ge.push({id:pe,fragmentNodeFunc:Le,parentId:Ue,metadata:Ne,uniforms:U,componentDefinition:Y,domCanvas:ve});return}let te=0;if(Ue!==null){let ht=l.get(Ue);if(ht&&ht.size>0){let He=0;for(let Ft of ht){let Yt=a.nodes.get(Ft);Yt&&Yt.metadata.renderOrder>He&&(He=Yt.metadata.renderOrder)}te=He+1}}let ye=oe(Ne?.opacity!==void 0?Ne.opacity:1),je;if(Ne?.transform){let ht=v/Math.max(1,E),He=Ne.transform;je={offsetX:oe(He.offsetX??0),offsetY:oe(He.offsetY??0),rotation:oe(He.rotation??0),scale:oe(He.scale??1),anchorX:oe(He.anchorX??.5),anchorY:oe(He.anchorY??.5),edges:oe(He.edges==="stretch"?0:He.edges==="transparent"?1:He.edges==="mirror"?2:He.edges==="wrap"?3:1),aspectRatio:oe(ht)}}let $e={id:pe,componentName:Y?.name||"Unknown",fragmentNodeFunc:Le,parentId:Ue,requiresRTT:Y?.requiresRTT||!1,requiresChild:Y?.requiresChild||!1,opacityUniform:ye,metadata:{blendMode:Ne?.blendMode||"normal",opacity:Ne?.opacity,visible:Ne?.visible!==!1,id:Ne?.id?se(Ne.id):Ne?.id,mask:Ne?.mask,maps:Ne?.maps,renderOrder:Ne?.renderOrder!==void 0?Ne?.renderOrder:te,transform:Ne?.transform},uniforms:U,cleanupCallbacks:[],beforeRenderCallbacks:[],afterRenderCallbacks:[],resizeCallbacks:[],transformUniforms:je,transformRTTActive:!1,mapSampleUVsFunc:Y?.mapSampleUVs,computeNodeFunc:Y?.computeNode,usesPointer:Y?.usesPointer,domCanvas:ve};a.nodes.set(pe,$e),Ue===null&&(a.rootId=pe),Eo();let ft=l.get(Ue)||new Set;ft.add(pe),l.set(Ue,ft),o&&h&&v>0&&E>0?le===null&&(le=requestAnimationFrame(()=>{le=null,H()})):o&&h&&(P||(P=!0,requestAnimationFrame(()=>{P=!1,v>0&&E>0&&H()})))},ne=(pe,Le,Ue)=>{let Ne=a.nodes.get(pe);if(!Ne||!Ne.uniforms)return;let U=Ne.uniforms[Le];if(!(!U||!U.uniform)){if(U.transform?(ce(g),Kve(U,Ue)):U.uniform.value=Ue,U.compileTime&&o&&h&&v>0&&E>0){le===null&&(le=requestAnimationFrame(()=>{le=null,H()}));return}if(U.compileTimeWhen&&o&&h&&v>0&&E>0){let Y=U._lastCompiledValue;if(U.compileTimeWhen(Y,Ue)){U._lastCompiledValue=Ue,le===null&&(le=requestAnimationFrame(()=>{le=null,H()}));return}}s||Rr()}},st=(pe,Le)=>{let Ue=a.nodes.get(pe);if(!Ue)return;let Ne=!1;Le.blendMode!==void 0&&Ue.metadata.blendMode!==Le.blendMode&&(Ue.metadata.blendMode=Le.blendMode,Ne=!0),Le.opacity!==void 0&&Ue.metadata.opacity!==Le.opacity&&(Ue.metadata.opacity=Le.opacity,Ue.opacityUniform.value=Le.opacity),Le.renderOrder!==void 0&&Ue.metadata.renderOrder!==Le.renderOrder&&(Ue.metadata.renderOrder=Le.renderOrder,Ne=!0);let U=Le.visible!==!1;if(Ue.metadata.visible!==U&&(Ue.metadata.visible=U,Ne=!0),Le.id!==void 0){let Y=se(Le.id);Ue.metadata.id!==Y&&(Ue.metadata.id=Y,Ne=!0)}if("mask"in Le&&(Ue.metadata.mask?.source!==Le.mask?.source||Ue.metadata.mask?.type!==Le.mask?.type)&&(Ue.metadata.mask=Le.mask,Ne=!0),"maps"in Le&&JSON.stringify(Ue.metadata.maps)!==JSON.stringify(Le.maps)){let Y=Ue.metadata.maps,ve=Le.maps;if(Ue.metadata.maps=ve,Eo(),(()=>{if(!Y||!ve)return!0;let te=Object.keys(Y),ye=Object.keys(ve);if(te.length!==ye.length||!te.every(je=>je in ve))return!0;for(let je of ye){let $e=Y[je],ft=ve[je];if($e.type!==ft.type)return!0;if(ft.type==="map"){let ht=ft,He=$e;if(He.source!==ht.source||He.channel!==ht.channel||!Ue.mapUniforms?.[je])return!0}else if(ft.type==="mouse"){let ht=ft;if($e.axis!==ht.axis||!Ue.mouseDriverState?.[je])return!0}else if(ft.type==="mouse-position"){if(!Ue.mouseDriverState?.[je])return!0}else if(ft.type==="auto-animate"&&!Ue.autoAnimateState?.[je])return!0}return!1})()){if(Y&&ve)for(let te of Object.keys(Y))te in ve&&Y[te].type!==ve[te].type&&Ue.autoAnimateState&&delete Ue.autoAnimateState[te];if(Y&&ve&&Ue.mouseDriverState)for(let te of Object.keys(Y))te in ve&&Y[te].type!==ve[te].type&&delete Ue.mouseDriverState[te];Ne=!0}else for(let[te,ye]of Object.entries(ve))if(ye.type==="map"){let je=ye,$e=Ue.mapUniforms[te];$e&&($e.inputMin.value=je.inputMin,$e.inputMax.value=je.inputMax,$e.outputMin.value=je.outputMin,$e.outputMax.value=je.outputMax,$e.curve.value=je.curve??0)}else if(ye.type==="mouse"){let je=ye,$e=Ue.mapUniforms?.[te];$e&&($e.outputMin.value=je.outputMin,$e.outputMax.value=je.outputMax,$e.curve.value=je.curve??0)}else if(ye.type==="auto-animate"){let je=ye,$e=Ue.mapUniforms?.[te];$e&&($e.outputMin.value=je.outputMin,$e.outputMax.value=je.outputMax)}}if(Le.transform!==void 0){let Y={offsetX:Le.transform.offsetX??Ue.metadata.transform?.offsetX??0,offsetY:Le.transform.offsetY??Ue.metadata.transform?.offsetY??0,rotation:Le.transform.rotation??Ue.metadata.transform?.rotation??0,scale:Le.transform.scale??Ue.metadata.transform?.scale??1,anchorX:Le.transform.anchorX??Ue.metadata.transform?.anchorX??.5,anchorY:Le.transform.anchorY??Ue.metadata.transform?.anchorY??.5,edges:Le.transform.edges??Ue.metadata.transform?.edges??"transparent"},ve=tN(Y);if(Ue.metadata.transform=Y,!Ue.transformUniforms&&Y){let te=v/Math.max(1,E);Ue.transformUniforms={offsetX:oe(Y.offsetX),offsetY:oe(Y.offsetY),rotation:oe(Y.rotation),scale:oe(Y.scale),anchorX:oe(Y.anchorX),anchorY:oe(Y.anchorY),edges:oe(Y.edges==="stretch"?0:Y.edges==="transparent"?1:Y.edges==="mirror"?2:3),aspectRatio:oe(te)}}else if(Ue.transformUniforms){Ue.transformUniforms.offsetX.value=Y.offsetX,Ue.transformUniforms.offsetY.value=Y.offsetY,Ue.transformUniforms.rotation.value=Y.rotation,Ue.transformUniforms.scale.value=Y.scale,Ue.transformUniforms.anchorX.value=Y.anchorX,Ue.transformUniforms.anchorY.value=Y.anchorY;let te=Ue.transformUniforms.edges.value;Ue.transformUniforms.edges.value=Y.edges==="stretch"?0:Y.edges==="transparent"?1:Y.edges==="mirror"?2:3,Ue.transformUniforms.edges.value!==te&&(Ne=!0)}ve&&!Ue.transformRTTActive&&(Ue.transformRTTActive=!0,Ne=!0)}Ne&&o&&h?le===null&&(le=requestAnimationFrame(()=>{le=null,H()})):s||Rr()},ze=pe=>{if(!a.nodes.has(pe))return;let Le=a.nodes.get(pe);if(Le&&Le.cleanupCallbacks.length>0)for(let Ne of Le.cleanupCallbacks)try{Ne()}catch(U){console.error(`Error executing cleanup callback for node ${pe}:`,U)}let Ue=Q(pe);for(let Ne of Ue)ze(Ne.id);if(a.rootId===pe&&(a.rootId=null),Le){let Ne=l.get(Le.parentId);Ne&&(Ne.delete(pe),Ne.size===0&&l.delete(Le.parentId))}a.nodes.delete(pe),Eo(),B=!0,o&&h&&le===null&&(le=requestAnimationFrame(()=>{le=null,H()}))},Rt=pe=>pe<1/2.75?7.5625*pe*pe:pe<2/2.75?(pe-=1.5/2.75,7.5625*pe*pe+.75):pe<2.5/2.75?(pe-=2.25/2.75,7.5625*pe*pe+.9375):(pe-=2.625/2.75,7.5625*pe*pe+.984375),At=(pe,Le)=>{switch(Le){case"linear":return pe;case"quad":return pe<.5?2*pe*pe:1-Math.pow(-2*pe+2,2)/2;case"expo":return pe===0?0:pe===1?1:pe<.5?Math.pow(2,20*pe-10)/2:(2-Math.pow(2,-20*pe+10))/2;case"bounce":return Rt(pe);default:return(1-Math.cos(Math.PI*pe))/2}},dt=pe=>{M+=pe;for(let Le of a.nodes.values()){if(!Le.mouseDriverState&&!Le.autoAnimateState)continue;let Ue=Le.metadata.maps;if(Ue){for(let[Ne,U]of Object.entries(Le.mouseDriverState??{})){let Y=Ue[Ne];if(Y){if(Y.type==="mouse-position"){let ve=Y.smoothing??0,te=Y.momentum??0,ye=Y.x===void 0||Y.x==="mouse",je=Y.y===void 0||Y.y==="mouse",$e,ft;if(ye){let[wr,jt]=nN(U.currentX,U.velocityX,c,ve,te,pe);U.currentX=wr,U.velocityX=jt,$e=wr}else $e=Y.x,U.velocityX=0;if(je){let[wr,jt]=nN(U.currentY,U.velocityY,m,ve,te,pe);U.currentY=wr,U.velocityY=jt,ft=wr}else ft=Y.y,U.velocityY=0;let ht=Y.reach??1,He=Y.originX??.5,Ft=Y.originY??.5,Yt=Y.invertX?-1:1,Wt=Y.invertY?-1:1,Nn=He+Yt*($e-He)*ht,ar=Ft+Wt*(ft-Ft)*ht,Sr=Nn,tr=1-ar;U.smoothedUniform.value.set(Sr,tr)}else if(Y.type==="mouse"){let ve=Y.smoothing??0,te=Y.momentum??0,ye=Y.axis==="x"?c:m,[je,$e]=nN(U.currentX,U.velocityX,ye,ve,te,pe);U.currentX=je,U.velocityX=$e,U.smoothedUniform.value=Math.max(.001,je)}}}if(Le.autoAnimateState)for(let[Ne,U]of Object.entries(Le.autoAnimateState)){let Y=Ue[Ne];if(!Y||Y.type!=="auto-animate")continue;let ve=M*(Y.speed??1)*.2,te;if(Y.mode==="loop")te=At((ve%1+1)%1,Y.easing??Y.waveform??"sine");else{let ht=(ve%1+1)%1;te=At(ht<.5?ht*2:(1-ht)*2,Y.easing??Y.waveform??"sine")}let{outputMin:ye,outputMax:je}=Y,$e=ye+te*(je-ye),ft=Le.uniforms?.[Ne];if(ft?.compileTimeWhen&&o&&h&&v>0&&E>0){let ht=ft._lastCompiledValue;ft.compileTimeWhen(ht,$e)&&(ft._lastCompiledValue=$e,le===null&&(le=requestAnimationFrame(()=>{le=null,H()})))}U.smoothedUniform.value=$e}}}},qt=pe=>{let Le={deltaTime:pe,pointer:{x:c,y:m},pointerActive:x,dimensions:{width:v,height:E}};for(let Ue of a.nodes.values())if(Ue.computeGetNodes)try{let Ne=Ue.computeGetNodes(Le);if(Ne)for(let U of Ne)e.compute(U)}catch(Ne){console.error(`Error dispatching compute for node ${Ue.id}:`,Ne)}},pn=pe=>{let Le={deltaTime:pe,pointer:{x:c,y:m},pointerActive:x,dimensions:{width:v,height:E}};for(let Ue of a.nodes.values())if(Ue.beforeRenderCallbacks.length>0)for(let Ne of Ue.beforeRenderCallbacks)try{Ne(Le)}catch(U){console.error(`Error executing before render callback for node ${Ue.id}:`,U)}},rr=pe=>{let Le={deltaTime:pe,pointer:{x:c,y:m},pointerActive:x,dimensions:{width:v,height:E}};for(let Ue of a.nodes.values())if(Ue.afterRenderCallbacks.length>0)for(let Ne of Ue.afterRenderCallbacks)try{Ne(Le)}catch(U){console.error(`Error executing after render callback for node ${Ue.id}:`,U)}},Fn=async()=>{if(!at())throw new Error("Renderer is not ready");let pe=s!==null;if(pe&&Ua(),C=0,Rr(),e instanceof Jf)try{let Le=e.backend;Le?.device&&await Le.device.queue.onSubmittedWorkDone()}catch{await new Promise(Ue=>setTimeout(Ue,16))}pe&&Ds()},Rr=()=>{if(B||!at())return;let pe=we?performance.now():0,Le=pe||performance.now(),Ue=C>0?(Le-C)/1e3:.016,Ne=1e3,U=1e3/60-1;if(C>0){let ve=Le-C;if(!b&&!w&&ve<Ne||(b||w)&&ve<U)return}let Y=Math.min(Ue,.1);C=Le,we&&performance.mark("shader-cpu-start"),ls&&t&&(T=t.getBoundingClientRect()),dt(Y),qt(Y),pn(Y);try{if(N)return;if(we&&performance.mark("shader-gpu-start"),e.render(r,n),Me&&!he&&(he=!0,Me=!1,Ze&&queueMicrotask(Ze)),rr(Y),we){performance.mark("shader-gpu-end");let ve=!1;if(e instanceof Jf)try{let te=e.backend;if(te&&te.get&&te.get(e)){let ye=te.get(e);if(ye?.timestampQuery){let je=ye.timestampQuery.getResult();je!=null&&(Ae.recordGpuTime(je/1e6),ve=!0)}}}catch{}try{if(!ve){performance.measure("shader-gpu-time","shader-gpu-start","shader-gpu-end");let te=performance.getEntriesByName("shader-gpu-time")[0];te&&Ae.recordGpuTime(te.duration),performance.clearMeasures("shader-gpu-time")}performance.clearMarks("shader-gpu-start"),performance.clearMarks("shader-gpu-end")}catch{}}if(we){performance.mark("shader-cpu-end");try{performance.measure("shader-cpu-time","shader-cpu-start","shader-cpu-end");let te=performance.getEntriesByName("shader-cpu-time")[0];te&&Ae.recordCpuTime(te.duration),performance.clearMarks("shader-cpu-start"),performance.clearMarks("shader-cpu-end"),performance.clearMeasures("shader-cpu-time")}catch{}let ve=performance.now()-pe;Ae.recordFrame(ve)}}catch(ve){console.error("Render frame error:",ve)}},vi=()=>{let pe=Math.max(0,a.nodes.size-1),Le=K;Ae.updateNodeCounts(pe,Le)},Us=()=>{vi();let pe=e?.info;return Ae.getStats(pe)},Ds=()=>{if(!(s||!S))if(Ae.setRendering(!0),e&&"setAnimationLoop"in e&&typeof e.setAnimationLoop=="function")e.setAnimationLoop(()=>{Rr()}),s=1;else{let pe=()=>{Rr(),s=requestAnimationFrame(pe)};pe()}},Ua=()=>{s&&(e&&"setAnimationLoop"in e&&typeof e.setAnimationLoop=="function"?e.setAnimationLoop(null):cancelAnimationFrame(s),s=null),Ae.setRendering(!1)},ls=!1,Eo=()=>{let pe=!1;for(let Le of a.nodes.values()){if(Le.usesPointer){pe=!0;break}if(Le.metadata.maps){for(let Ue of Object.values(Le.metadata.maps))if(Ue&&typeof Ue=="object"&&"type"in Ue){let Ne=Ue.type;if(Ne==="mouse"||Ne==="mouse-position"){pe=!0;break}}if(pe)break}}pe&&!ls?(ls=!0,!D&&t&&(D=Jve.register({onMouseMove:lh,onTouchMove:uh,onMouseUp:wu,onTouchEnd:ef}),t.addEventListener("mousedown",Fs),t.addEventListener("touchstart",Ls))):!pe&&ls&&(ls=!1,D&&(D(),D=null),t&&(t.removeEventListener("mousedown",Fs),t.removeEventListener("touchstart",Ls)))},Su=pe=>{if(!t||!T)return;let Le,Ue;if("touches"in pe){if(pe.touches.length===0)return;Le=pe.touches[0].clientX,Ue=pe.touches[0].clientY}else Le=pe.clientX,Ue=pe.clientY;let Ne=(Le-T.left)/T.width,U=(Ue-T.top)/T.height;c=Ne,m=U},lh=pe=>{!h||!t||Su(pe)},uh=pe=>{!h||!t||Su(pe)},wu=()=>{h&&(x=!1,s||Rr())},ef=()=>{h&&(x=!1,s||Rr())},Fs=()=>{x=!0,s||Rr()},Ls=()=>{x=!0,s||Rr()},dh=()=>{if(Ge.length===0)return;let pe=[...Ge];Ge=[];for(let{id:Le,fragmentNodeFunc:Ue,parentId:Ne,metadata:U,uniforms:Y,componentDefinition:ve,domCanvas:te}of pe)Ue&&en(Le,Ue,Ne,U,Y,ve,te)},Dm=async({canvas:pe,resizeTarget:Le,enablePerformanceTracking:Ue=!0,colorSpace:Ne="p3-linear",context:U,gpu:Y,forceFullFrameRate:ve=!1,observeElement:te=!0})=>{if(h||f)return;we=Ue,w=ve,g=Ne,ce(Ne),f=!0,_=new AbortController;let ye=_;try{if(t=pe,r=new yf,r.background=null,n=new gs(-1,1,1,-1,.1,10),n.position.z=1,n.lookAt(0,0,0),L=()=>{fh()},window.addEventListener("beforeunload",L),V=()=>{if(q>0&&ae>0){let Ft=q,Yt=ae;q=0,ae=0,X(Ft,Yt)}},window.addEventListener("resize",V,{passive:!0}),ye.signal.aborted)return;if(U){console.log("[Shaders] Using provided WebGL context"),e=new Rg({canvas:pe,context:U,antialias:!0,alpha:!0,depth:!1,stencil:!0,powerPreference:"high-performance"});let Ft=Yt=>{Yt.preventDefault(),Xe("webglcontextlost")};pe.addEventListener("webglcontextlost",Ft,!1),O=()=>{pe.removeEventListener("webglcontextlost",Ft,!1)}}else try{if(e=new Jf({canvas:pe,antialias:!0,alpha:!0,depth:!1,powerPreference:"high-performance"}),Y?.device&&Y?.adapter?await e.init({device:Y.device,adapter:Y.adapter}):await e.init(),ye.signal.aborted)return;try{let Ft=e.backend?.device;Ft?.lost&&typeof Ft.lost.then=="function"&&Ft.lost.then(Yt=>{Yt?.reason!=="destroyed"&&Xe(Yt?.message||Yt?.reason||"unknown")}).catch(()=>{})}catch(Ft){console.warn("[Shaders] could not attach WebGPU device.lost handler",Ft)}}catch(Ft){if(ye.signal.aborted)return;console.warn("[Shaders] WebGPU initialization failed, falling back to WebGL:",Ft);try{let Yt={canvas:pe,antialias:!0,alpha:!0,depth:!1,stencil:!0,powerPreference:"high-performance"};if(U&&(Yt.context=U),e=new Rg(Yt),ye.signal.aborted)return;let Wt=Nn=>{Nn.preventDefault(),Xe("webglcontextlost")};pe.addEventListener("webglcontextlost",Wt,!1),O=()=>{pe.removeEventListener("webglcontextlost",Wt,!1)}}catch(Yt){if(ye.signal.aborted)return;console.error("[Shaders] Both WebGPU and WebGL initialization failed:",Yt);return}}if(ye.signal.aborted)return;if(e.setPixelRatio(Math.min(window.devicePixelRatio,2)),e.outputColorSpace=lr,o=new hm({transparent:!0}),o.fragmentNode=F(0,0,0,0),i=new Hr(new Ya(2,2),o),r.add(i),te){let Ft=Le??pe.parentElement;Ft?(u=new ResizeObserver(nt),u.observe(Ft)):console.warn("[Shaders] No element available for resize observation \u2014 use resize() manually"),d=new IntersectionObserver(Ct,{threshold:0}),d.observe(pe)}let je=pe.getBoundingClientRect();T=je,b=!te||je.width>0&&je.height>0&&je.top<window.innerHeight&&je.bottom>0&&je.left<window.innerWidth&&je.right>0,S=!0;let $e=je.width>0?je.width:pe.width,ft=je.height>0?je.height:pe.height,ht=Math.round($e),He=Math.round(ft);if(ht>0&&He>0){q=ht,ae=He;let{width:Ft,height:Yt}=ct(ht,He);v=Ft,E=Yt,y=!0,e.setSize(Ft,Yt,!1);let Wt=Ft/Yt,Nn=2,ar=Nn*Wt;n.left=-ar/2,n.right=ar/2,n.top=Nn/2,n.bottom=-Nn/2,n.updateProjectionMatrix(),i.scale.set(ar,Nn,1),Rr()}else y=!1;if(S&&Ds(),!ye.signal.aborted){try{if(e.backend?.isWebGPUBackend===!0){let Ft=e.backend?.device?.limits?.maxTextureDimension2D;typeof Ft=="number"&&Ft>0&&(Z=Ft)}else{let Ft=e.capabilities?.maxTextureSize;typeof Ft=="number"&&Ft>0&&(Z=Ft)}}catch{}if(q>0&&ae>0){let Ft=q,Yt=ae;q=0,ae=0,X(Ft,Yt)}h=!0,et=!0,dh()}}catch(je){console.error("[Shaders] Initialization error:",je)}finally{f=!1,_===ye&&(_=null)}},fh=()=>{if(_&&_.abort(),u&&(u.disconnect(),u=null),d&&(d.disconnect(),d=null),D&&(D(),D=null),O&&(O(),O=null),t&&(t.removeEventListener("mousedown",Fs),t.removeEventListener("touchstart",Ls)),L&&(window.removeEventListener("beforeunload",L),L=null),V&&(window.removeEventListener("resize",V),V=null),Ua(),k(),be.forEach(pe=>{try{pe?.renderTarget?.dispose&&pe.renderTarget.dispose()}catch{}}),be.clear(),a.nodes.clear(),a.rootId=null,a.idToNodeId.clear(),l.clear(),Ge=[],et=!1,le!==null&&(cancelAnimationFrame(le),le=null),Be=null,Ke=!1,i){r&&r.remove(i);try{i.geometry&&typeof i.geometry.dispose=="function"&&i.geometry.dispose()}catch{}try{i.material instanceof ei&&typeof i.material.dispose=="function"&&i.material.dispose()}catch{}}if(e&&typeof e.dispose=="function")try{e.dispose()}catch{}t=null,e=null,n=null,r=null,i=null,o=null,h=!1,f=!1,y=!1,_=null,v=0,E=0,b=!1,S=!0,c=.5,m=.5,x=!1,B=!1,Ze=null,he=!1,Me=!1,Pe=null,We=!1};return{initialize:Dm,cleanup:fh,registerNode:en,removeNode:ze,updateUniformValue:ne,updateNodeMetadata:st,isInitialized:()=>h,resize:(pe,Le)=>{!e||!n||!i||X(pe,Le)},startAnimation:Ds,stopAnimation:Ua,renderAndWait:Fn,getPerformanceStats:Us,getNodeRegistry:()=>({nodes:new Map(a.nodes)}),getRendererType:()=>e?e instanceof Jf?"webgpu":"webgl":null,getInternalRenderer:()=>e??null,setForceFullFrameRate:pe=>{let Le=w;return w=pe,Le},setOnReady:pe=>{Ze=pe},setOnDeviceLost:pe=>{Pe=pe},__testing:{needsTransformation:tN,findChildNodes:Q,applyMaskIfNeeded:Ie,applyNodeTransformation:Qe,getNodeRegistry:()=>a,getParentToChildren:()=>l}}}var Y6,xve,Z6,bve,K6,_ve,J6,wve,Q6,Mve,e8,t8,$ve,tN,Yve,Zve,Jve,nN,pt=z(()=>{"use strict";gi();Dt();Li();Bi();ut();Y6=t=>_e(t.x.mul(1.2249401).sub(t.y.mul(.2249404)).sub(t.z.mul(0)),t.x.mul(-.0420569).add(t.y.mul(1.0420571)).add(t.z.mul(0)),t.x.mul(-.0196376).sub(t.y.mul(.0786361)).add(t.z.mul(1.0982735))),xve=t=>_e(t.x.mul(.8224621).add(t.y.mul(.177538)).add(t.z.mul(0)),t.x.mul(.0331941).add(t.y.mul(.9668058)).add(t.z.mul(0)),t.x.mul(.0170826).add(t.y.mul(.0723974)).add(t.z.mul(.9105199))),Z6=t=>{let e=t.x,n=t.y,r=t.z,i=e.mul(.4122214708).add(n.mul(.5363325363)).add(r.mul(.0514459929)),o=e.mul(.2119034982).add(n.mul(.6806995451).add(r.mul(.1073969566))),a=e.mul(.0883024619).add(n.mul(.2817188376)).add(r.mul(.6299787005)),l=Qi(i).mul(Bt(Et(i),p(1/3))),s=Qi(o).mul(Bt(Et(o),p(1/3))),u=Qi(a).mul(Bt(Et(a),p(1/3)));return _e(l.mul(.2104542553).add(s.mul(.793617785)).sub(u.mul(.0040720468)),l.mul(1.9779984951).sub(s.mul(2.428592205)).add(u.mul(.4505937099)),l.mul(.0259040371).add(s.mul(.7827717662)).sub(u.mul(.808675766)))},bve=t=>{let e=t.x,n=t.y,r=t.z,i=e.add(n.mul(.3963377774)).add(r.mul(.2158037573)),o=e.sub(n.mul(.1055613458)).sub(r.mul(.0638541728)),a=e.sub(n.mul(.0894841775)).sub(r.mul(1.291485548)),l=Bt(i,p(3)),s=Bt(o,p(3)),u=Bt(a,p(3));return _e(l.mul(4.0767416621).sub(s.mul(3.3077115913)).add(u.mul(.2309699292)),l.mul(-1.2684380046).add(s.mul(2.6097574011)).sub(u.mul(.3413193965)),l.mul(-.0041960863).sub(s.mul(.7034186147)).add(u.mul(1.707614701)))},K6=t=>{let e=t.x,n=t.y,r=t.z;return _e(e,Sn(n.mul(n).add(r.mul(r))),Qn(r,n))},_ve=t=>{let e=t.x,n=t.y,r=t.z;return _e(e,n.mul(Ye(r)),n.mul(fe(r)))};J6=t=>_e(t.x.mul(1.2249401).sub(t.y.mul(.2249404)).sub(t.z.mul(0)),t.x.mul(-.0420569).add(t.y.mul(1.0420571)).add(t.z.mul(0)),t.x.mul(-.0196376).sub(t.y.mul(.0786361)).add(t.z.mul(1.0982735))),wve=t=>_e(t.x.mul(.8224621).add(t.y.mul(.177538)).add(t.z.mul(0)),t.x.mul(.0331941).add(t.y.mul(.9668058)).add(t.z.mul(0)),t.x.mul(.0170826).add(t.y.mul(.0723974)).add(t.z.mul(.9105199))),Q6=t=>{let e=t.x,n=t.y,r=t.z,i=e.mul(.4122214708).add(n.mul(.5363325363)).add(r.mul(.0514459929)),o=e.mul(.2119034982).add(n.mul(.6806995451).add(r.mul(.1073969566))),a=e.mul(.0883024619).add(n.mul(.2817188376)).add(r.mul(.6299787005)),l=Qi(i).mul(Bt(Et(i),p(1/3))),s=Qi(o).mul(Bt(Et(o),p(1/3))),u=Qi(a).mul(Bt(Et(a),p(1/3)));return _e(l.mul(.2104542553).add(s.mul(.793617785)).sub(u.mul(.0040720468)),l.mul(1.9779984951).sub(s.mul(2.428592205)).add(u.mul(.4505937099)),l.mul(.0259040371).add(s.mul(.7827717662)).sub(u.mul(.808675766)))},Mve=t=>{let e=t.x,n=t.y,r=t.z,i=e.add(n.mul(.3963377774)).add(r.mul(.2158037573)),o=e.sub(n.mul(.1055613458)).sub(r.mul(.0638541728)),a=e.sub(n.mul(.0894841775)).sub(r.mul(1.291485548)),l=Bt(i,p(3)),s=Bt(o,p(3)),u=Bt(a,p(3));return _e(l.mul(4.0767416621).sub(s.mul(3.3077115913)).add(u.mul(.2309699292)),l.mul(-1.2684380046).add(s.mul(2.6097574011)).sub(u.mul(.3413193965)),l.mul(-.0041960863).sub(s.mul(.7034186147)).add(u.mul(1.707614701)))};e8={normal:vve,"normal-oklch":Sve,"normal-oklab":Tve,multiply:Cve,screen:Eve,linearDodge:Rve,overlay:Ave,difference:Pve,colorDodge:Ive,exclusion:Nve,color:Ove,luminosity:Uve,darken:Dve,lighten:Fve,colorBurn:Lve,linearBurn:kve,softLight:Bve,hardLight:zve,hue:Vve,saturation:Gve};t8={alpha:Hve,alphaInverted:Wve,luminance:jve,luminanceInverted:qve};$ve=class{frameTimesMs=[];frameTimesIndex=0;frameTimesCount=0;maxSamples=60;targetFrameTime=16.67;jankFrameCount=0;totalFrameCount=0;memorySnapshots=[];memorySnapshotIndex=0;maxMemorySnapshots=300;nodeCount=0;rttNodeCount=0;lastCpuTime=null;lastGpuTime=null;isRendering=!1;lastFrameTimestamp=0;frameIntervals=[];frameIntervalsIndex=0;frameIntervalsCount=0;pushToCircularBuffer(t,e,n,r,i){return t.length<i?(t.push(e),{index:t.length,count:t.length}):(t[n%i]=e,{index:n+1,count:i})}getBufferValues(t,e){return e<=t.length?t.slice(0,e):t}recordFrame(t){let e=this.pushToCircularBuffer(this.frameTimesMs,t,this.frameTimesIndex,this.frameTimesCount,this.maxSamples);this.frameTimesIndex=e.index,this.frameTimesCount=e.count,this.totalFrameCount++,t>this.targetFrameTime&&this.jankFrameCount++;let n=performance.now();if(this.lastFrameTimestamp>0){let r=n-this.lastFrameTimestamp,i=this.pushToCircularBuffer(this.frameIntervals,r,this.frameIntervalsIndex,this.frameIntervalsCount,this.maxSamples);this.frameIntervalsIndex=i.index,this.frameIntervalsCount=i.count}this.lastFrameTimestamp=n,this.recordMemorySnapshot()}recordCpuTime(t){this.lastCpuTime=t}recordGpuTime(t){this.lastGpuTime=t}updateNodeCounts(t,e){this.nodeCount=t,this.rttNodeCount=e}setRendering(t){this.isRendering=t}recordMemorySnapshot(){if(!performance.memory)return;let t=performance.now(),e=performance.memory.usedJSHeapSize;if(this.memorySnapshots.length<this.maxMemorySnapshots)this.memorySnapshots.push({time:t,bytes:e});else{let n=this.memorySnapshots[this.memorySnapshotIndex];n.time=t,n.bytes=e,this.memorySnapshotIndex=(this.memorySnapshotIndex+1)%this.maxMemorySnapshots}}calculateMemoryGrowthRate(){if(this.memorySnapshots.length<2)return null;let t=this.memorySnapshots.length,e=t<this.maxMemorySnapshots?0:this.memorySnapshotIndex,n=t<this.maxMemorySnapshots?t-1:(this.memorySnapshotIndex-1+t)%t,r=this.memorySnapshots[e],i=this.memorySnapshots[n],o=(i.time-r.time)/1e3;return o<=0?null:(i.bytes-r.bytes)/(1024*1024)/o}calculateStdDev(t){if(t.length===0)return 0;let e=t.reduce((r,i)=>r+i,0)/t.length,n=0;for(let r=0;r<t.length;r++){let i=t[r]-e;n+=i*i}return Math.sqrt(n/t.length)}sortBuffer=[];calculateP99(t){let e=t.length;if(e===0)return 0;for(;this.sortBuffer.length<e;)this.sortBuffer.push(0);for(let r=0;r<e;r++)this.sortBuffer[r]=t[r];for(let r=1;r<e;r++){let i=this.sortBuffer[r],o=r-1;for(;o>=0&&this.sortBuffer[o]>i;)this.sortBuffer[o+1]=this.sortBuffer[o],o--;this.sortBuffer[o+1]=i}let n=Math.floor(e*.99);return this.sortBuffer[Math.min(n,e-1)]}calculateComplexityScore(){return this.nodeCount+this.rttNodeCount*10}calculateIntensityScore(){let t=this.getBufferValues(this.frameTimesMs,this.frameTimesCount),e=t.length;if(e===0)return{score:0,label:"N/A"};let n=t.reduce((d,h)=>d+h,0)/e,r=Math.min(n/16.67*100,100),i=this.calculateComplexityScore(),o=Math.min(i/100*100,100),a=0;this.lastGpuTime!==null&&(a=Math.min(this.lastGpuTime/16.67*100,100));let l=this.lastGpuTime!==null?{frame:.4,gpu:.4,complexity:.2}:{frame:.7,gpu:0,complexity:.3},s=Math.round(r*l.frame+a*l.gpu+o*l.complexity),u;return s<=20?u="Very Light":s<=40?u="Light":s<=60?u="Medium":s<=80?u="Heavy":u="Very Heavy",{score:Math.min(s,100),label:u}}getStats(t){let e=this.getBufferValues(this.frameTimesMs,this.frameTimesCount),n=this.getBufferValues(this.frameIntervals,this.frameIntervalsCount),r=e.length,i=n.length>0?1e3/(n.reduce((v,E)=>v+E,0)/n.length):0,o=r>0?e.reduce((v,E)=>v+E,0)/r:0,a=r>0?Math.min(...e):0,l=r>0?Math.max(...e):0,s=this.calculateP99(e),u=this.calculateStdDev(e),d=this.totalFrameCount>0?this.jankFrameCount/this.totalFrameCount*100:0,h=performance.memory,f=h?h.usedJSHeapSize/(1024*1024):null,g=this.calculateMemoryGrowthRate(),y=o>0?o/this.targetFrameTime*100:0,_=t?.render?.calls??null,b=t?.programs?.length??null,S=t?.memory?.textures??null,w=this.calculateIntensityScore();return{fps:Math.round(i),avgFrameTime:Math.round(o*100)/100,minFrameTime:Math.round(a*100)/100,maxFrameTime:Math.round(l*100)/100,p99FrameTime:Math.round(s*100)/100,stdDevFrameTime:Math.round(u*100)/100,jankCount:this.jankFrameCount,jankPercent:Math.round(d*10)/10,nodeCount:this.nodeCount,rttNodeCount:this.rttNodeCount,complexityScore:this.calculateComplexityScore(),memoryUsedMB:f!==null?Math.round(f*100)/100:null,memoryGrowthRate:g!==null?Math.round(g*1e3)/1e3:null,cpuTime:this.lastCpuTime!==null?Math.round(this.lastCpuTime*100)/100:null,gpuTime:this.lastGpuTime!==null?Math.round(this.lastGpuTime*100)/100:null,budgetUsed:Math.round(y*10)/10,drawCalls:_,shaderPrograms:b,textureCount:S,intensityScore:w.score,intensityLabel:w.label,isRendering:this.isRendering}}reset(){this.frameTimesMs.length=0,this.frameTimesIndex=0,this.frameTimesCount=0,this.frameIntervals.length=0,this.frameIntervalsIndex=0,this.frameIntervalsCount=0,this.lastFrameTimestamp=0,this.jankFrameCount=0,this.totalFrameCount=0,this.memorySnapshots.length=0,this.memorySnapshotIndex=0,this.sortBuffer.length=0,this.lastCpuTime=null,this.lastGpuTime=null}},tN=t=>t?t.offsetX!==0||t.offsetY!==0||t.rotation!==0||t.scale!==1||t.anchorX!==.5||t.anchorY!==.5:!1,Yve=(t,e,n,r,i,o,a,l)=>{let s=r.mul(ci).div(p(180)),u=Ye(s),d=fe(s),h=I(o,a),f=t.sub(h).div(i),g=I(f.x.mul(l),f.y),y=I(g.x.mul(u).sub(g.y.mul(d)),g.x.mul(d).add(g.y.mul(u)));return I(y.x.div(l),y.y).sub(I(e,n)).add(h)},Zve=new Map([[Ce,OI],[wt,UI]]);Jve=(()=>{let t=0,e=new Set,n=a=>{e.forEach(l=>{try{l.onMouseMove(a)}catch(s){console.error("[Shaders] Error in mouse move handler:",s)}})},r=a=>{e.forEach(l=>{try{l.onTouchMove(a)}catch(s){console.error("[Shaders] Error in touch move handler:",s)}})},i=()=>{e.forEach(a=>{try{a.onMouseUp()}catch(l){console.error("[Shaders] Error in mouse up handler:",l)}})},o=()=>{e.forEach(a=>{try{a.onTouchEnd()}catch(l){console.error("[Shaders] Error in touch end handler:",l)}})};return{register(a){return e.add(a),t++,t===1&&(window.addEventListener("mousemove",n),window.addEventListener("touchmove",r),window.addEventListener("mouseup",i),window.addEventListener("touchend",o)),()=>{e.delete(a),t--,t===0&&(window.removeEventListener("mousemove",n),window.removeEventListener("touchmove",r),window.removeEventListener("mouseup",i),window.removeEventListener("touchend",o))}}}})(),nN=(t,e,n,r,i,o)=>{if(r===0&&i===0)return[n,0];let a=200*Math.pow(.01,r),l=2*Math.sqrt(a)*(1-i*.85),s=e+(a*(n-t)-l*e)*o;return[t+s*o,s]}});var gt=z(()=>{"use strict";Dt()});function Qve(t){return t.includes("Edg/")||t.includes("EdgiOS")?"Edge":t.includes("OPR/")||t.includes("Opera/")?"Opera":t.includes("Chrome/")||t.includes("CriOS")?"Chrome":t.includes("Firefox/")||t.includes("FxiOS")?"Firefox":t.includes("Safari/")&&!t.includes("Chrome")?"Safari":"Other"}function exe(t){return/iPad|Tablet|PlayBook/i.test(t)||/Android/i.test(t)&&!/Mobile/i.test(t)?"tablet":/Mobile|Android|webOS|iPhone|iPod|BlackBerry|IEMobile|Opera Mini/i.test(t)?"mobile":"desktop"}function txe(){if(typeof window>"u"||typeof navigator>"u")return{domain:"unknown",browserFamily:"unknown",deviceType:"unknown"};let t=navigator.userAgent;return{domain:window.location.hostname,browserFamily:Qve(t),deviceType:exe(t)}}function rxe(t=!1,e=!1){return t||typeof navigator<"u"&&navigator.doNotTrack==="1"?!1:e?!0:Math.random()<ah.samplingRate}function r8(t,e,n=!1,r=!1){return rxe(n,r)?new nxe(t,e,r?"preview":"shader"):null}function i8(){if(typeof window>"u"||!window.location)return!1;let t=window.location.hostname;return!t.includes("shaders.com")&&t!=="localhost"&&t!=="127.0.0.1"}var ah,nxe,o8=z(()=>{"use strict";ah={samplingRate:.05,collectionDuration:5e3,warmupDuration:500,sampleInterval:500,apiEndpoint:"https://shaders.com/api/telemetry"};nxe=class{renderer;version;sourceType;sessionId;frameSamples=[];sampleInterval=null;stopped=!1;constructor(t,e,n){this.renderer=t,this.version=e,this.sourceType=n,this.sessionId=`tel_${Date.now()}_${Math.random().toString(36).substring(2,9)}`}stop(){this.stopped=!0,this.sampleInterval&&(clearInterval(this.sampleInterval),this.sampleInterval=null)}async start(){try{if(await this.sleep(ah.warmupDuration),this.stopped||(this.sampleInterval=setInterval(()=>{if(!this.stopped)try{let t=this.renderer.getPerformanceStats();this.frameSamples.push(t)}catch(t){console.error("Telemetry sampling error:",t)}},ah.sampleInterval),await this.sleep(ah.collectionDuration-ah.warmupDuration),this.stopped))return;if(this.sampleInterval&&(clearInterval(this.sampleInterval),this.sampleInterval=null),!this.stopped&&this.frameSamples.length>=5){let t=this.aggregateData();await this.sendTelemetry(t)}}catch(t){console.error("Telemetry collection error:",t)}}sleep(t){return new Promise(e=>setTimeout(e,t))}aggregateData(){let t=this.aggregatePerformance(),e=this.detectRendererType(),n=this.extractComponents(),r=txe();return{sessionId:this.sessionId,timestamp:Date.now(),collectionDuration:ah.collectionDuration,version:this.version,sourceType:this.sourceType,performance:t,renderer:e,components:n,environment:r}}aggregatePerformance(){if(this.frameSamples.length===0)return{fps:0,frameTime:{avg:0,min:0,max:0,p99:0},jankPercent:0,budgetUsed:0};let t=this.frameSamples.map(h=>h.avgFrameTime),e=this.frameSamples.map(h=>h.jankPercent),n=this.frameSamples.map(h=>h.budgetUsed),r=this.frameSamples.map(h=>h.fps),i=this.calculateMedian(r),o=this.calculateMean(t),a=Math.min(...t),l=Math.max(...t),s=this.calculatePercentile(t,99),u=this.calculateMean(e),d=this.calculateMean(n);return{fps:Math.round(i*10)/10,frameTime:{avg:Math.round(o*10)/10,min:Math.round(a*10)/10,max:Math.round(l*10)/10,p99:Math.round(s*10)/10},jankPercent:Math.round(u*10)/10,budgetUsed:Math.round(d*10)/10}}detectRendererType(){let t=this.frameSamples[this.frameSamples.length-1];return{type:this.renderer.getRendererType?.()||"webgl",drawCalls:t?.drawCalls??null,textureCount:t?.textureCount??null}}extractComponents(){try{let t=this.renderer.getNodeRegistry(),e=[];for(let[n,r]of t.nodes)r.parentId!==null&&e.push({name:r.componentName,requiresRTT:r.requiresRTT,renderOrder:r.metadata.renderOrder});return e.sort((n,r)=>n.renderOrder-r.renderOrder)}catch(t){return console.error("Failed to extract components:",t),[]}}async sendTelemetry(t){try{let e=await fetch(ah.apiEndpoint,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});e.ok||console.warn("Telemetry send failed:",e.status,e.statusText)}catch(e){console.error("Telemetry send error:",e)}}calculateMean(t){return t.length===0?0:t.reduce((e,n)=>e+n,0)/t.length}calculateMedian(t){if(t.length===0)return 0;let e=[...t].sort((r,i)=>r-i),n=Math.floor(e.length/2);return e.length%2===0?(e[n-1]+e[n])/2:e[n]}calculatePercentile(t,e){if(t.length===0)return 0;let n=[...t].sort((i,o)=>i-o),r=Math.ceil(e/100*n.length)-1;return n[Math.max(0,r)]}}});import{createContext as ixe,useEffect as rN,useId as oxe,useMemo as Vg,useRef as $o}from"react";import{jsx as s8,jsxs as sxe}from"react/jsx-runtime";var G,iN,axe,mt=z(()=>{"use strict";pt();gt();ut();o8();G=ixe(null),iN=({children:t,disableTelemetry:e=!1,colorSpace:n="p3-linear",isPreview:r=!1,onReady:i,style:o={},className:a="",...l})=>{let s=$o(null),u=$o(null),d=oxe(),h=Vg(()=>"shader-root-"+d.replace(/[^a-zA-Z0-9_]/g,""),[d]),f=$o(null);f.current===null&&(f.current=n8());let g=$o(i);g.current=i,rN(()=>(f.current.setOnReady(()=>g.current?.()),()=>{f.current.setOnReady(null)}),[]);let y=$o(null),_=$o(null),b=$o(null),S=Vg(()=>(D,O,L,V,Z=null,q=null,ae)=>{if(O===null){try{f.current.removeNode(D)}catch(we){console.warn("Error removing node:",we)}return}try{f.current.registerNode(D,O,L,V,Z,q,ae)}catch(we){console.error("Error registering node:",we,{id:D,parentId:L,metadata:V})}},[]),w=Vg(()=>(D,O,L)=>{try{f.current.updateUniformValue(D,O,L)}catch(V){console.warn("Error updating uniform:",V)}},[]),v=Vg(()=>(D,O)=>{try{f.current.updateNodeMetadata(D,O)}catch(L){console.warn("Error updating metadata:",L)}},[]),E=Vg(()=>({shaderParentId:h,shaderNodeRegister:S,shaderUniformUpdate:w,shaderMetadataUpdate:v,shaderColorSpace:n}),[h,S,w,v,n]),C=$o(!1),M=$o(!1),R=$o(!1),c=$o(!1),m=$o(null),x=()=>{let D=()=>{if(R.current||!f.current){_.current=null;return}f.current.getPerformanceStats().fps>0?(y.current=r8(f.current,"2.5.121",e,r),y.current&&y.current.start(),_.current=null):_.current=window.setTimeout(D,500)};_.current=window.setTimeout(D,500)},T=async()=>{let D=u.current;if(!(!D||C.current||M.current)){M.current=!0;try{let O=f.current;O.isInitialized()||await O.initialize({canvas:D,colorSpace:n}),O.registerNode(h,({childNode:L})=>L||F(0,0,0,0),null,null,{}),C.current=!0,M.current=!1,b.current===null&&(b.current=i8()),b.current&&!y.current&&x()}catch(O){throw console.error("[Shader] Initialization failed:",O),M.current=!1,O}}},N=()=>{let D=s.current;!D||m.current||(m.current=new IntersectionObserver(O=>{let L=O[0];if(!L)return;let V=D.getBoundingClientRect(),Z=L.isIntersecting&&V&&V.width>0&&V.height>0;Z&&!c.current?(f.current.isInitialized()?(f.current.startAnimation(),b.current&&!y.current&&!_.current&&x()):T().catch(console.error),c.current=!0):!Z&&c.current&&(f.current.stopAnimation(),c.current=!1)},{threshold:0}),m.current.observe(D))};rN(()=>{R.current=!1;let D=s.current;if(!D)return;let O=D.getBoundingClientRect();return O.width>0&&O.height>0?(T().catch(console.error),c.current=!0):c.current=!1,N(),()=>{if(!R.current){if(R.current=!0,y.current&&(y.current.stop(),y.current=null),_.current!==null&&(clearTimeout(_.current),_.current=null),m.current&&(m.current.disconnect(),m.current=null),f.current&&C.current)try{f.current.cleanup()}catch(L){console.warn("[Shader] Error during cleanup:",L)}C.current=!1,M.current=!1}}},[]);let B=$o(!0);return rN(()=>{if(B.current){B.current=!1;return}if(f.current&&C.current){ce(n);try{f.current.cleanup(),C.current=!1,T().catch(console.error)}catch(D){console.error("[Shader] Error updating colorSpace:",D)}}},[n]),s8(G.Provider,{value:E,children:sxe("div",{ref:s,className:"shader"+(a?" "+a:""),style:o,...l,children:[s8("canvas",{"data-renderer":"shaders",ref:u,style:{width:"100%",height:"100%",display:"block"}}),t]})})},axe=iN});var a8=z(()=>{"use strict";iG()});var h8={};yt(h8,{ShaderComponent:()=>d8,default:()=>f8});import{useContext as cxe,useEffect as Gg,useId as lxe,useMemo as Hg,useRef as Wg,useState as c8}from"react";import{createPortal as uxe}from"react-dom";import{jsx as l8,jsxs as dxe}from"react/jsx-runtime";function oN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function fxe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!oN(i)&&(n[r]=i);return n}var hxe,mxe,u8,d8,f8,sN=z(()=>{"use strict";mt();pt();gt();a8();hxe={display:"contents"},mxe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},u8={blendMode:"normal",visible:!0};try{pc&&pc.props&&Object.entries(pc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(u8[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}d8=t=>{let e=cxe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=lxe(),s=Hg(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Hg(()=>fxe(t,u8),[t]),d=Hg(()=>({...mxe,...t.transform}),[t.transform]),h=Wg(null),f=!!pc.capturesDOM,g=Wg(null),[y,_]=c8(!1),[b,S]=c8(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Gg(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Wg(void 0),v=Wg(null);v.current===null&&(ce(a),v.current=ue(pc,u,s));let E=Hg(()=>({...e,shaderParentId:s}),[e,s]);Gg(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,pc.fragmentNode,n,c,v.current,pc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Gg(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Wg({}),M=Hg(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&oN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Gg(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(oN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Gg(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?uxe(l8("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return dxe(G.Provider,{value:E,children:[l8("span",{ref:h,style:hxe,"data-shader-id":s,children:!f&&t.children}),R]})},f8=d8});var m8=z(()=>{"use strict";oG()});var b8={};yt(b8,{ShaderComponent:()=>v8,default:()=>x8});import{useContext as pxe,useEffect as jg,useId as gxe,useMemo as qg,useRef as Xg,useState as p8}from"react";import{createPortal as yxe}from"react-dom";import{jsx as g8,jsxs as vxe}from"react/jsx-runtime";function aN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function xxe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!aN(i)&&(n[r]=i);return n}var bxe,_xe,y8,v8,x8,cN=z(()=>{"use strict";mt();pt();gt();m8();bxe={display:"contents"},_xe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},y8={blendMode:"normal",visible:!0};try{Yr&&Yr.props&&Object.entries(Yr.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(y8[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}v8=t=>{let e=pxe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=gxe(),s=qg(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=qg(()=>xxe(t,y8),[t]),d=qg(()=>({..._xe,...t.transform}),[t.transform]),h=Xg(null),f=!!Yr.capturesDOM,g=Xg(null),[y,_]=p8(!1),[b,S]=p8(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));jg(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Xg(void 0),v=Xg(null);v.current===null&&(ce(a),v.current=ue(Yr,u,s));let E=qg(()=>({...e,shaderParentId:s}),[e,s]);jg(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Yr.fragmentNode,n,c,v.current,Yr,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),jg(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Xg({}),M=qg(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&aN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(jg(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(aN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),jg(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?yxe(g8("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return vxe(G.Provider,{value:E,children:[g8("span",{ref:h,style:bxe,"data-shader-id":s,children:!f&&t.children}),R]})},x8=v8});var _8=z(()=>{"use strict";gG()});var E8={};yt(E8,{ShaderComponent:()=>T8,default:()=>C8});import{useContext as Sxe,useEffect as $g,useId as wxe,useMemo as Yg,useRef as Zg,useState as S8}from"react";import{createPortal as Mxe}from"react-dom";import{jsx as w8,jsxs as Txe}from"react/jsx-runtime";function lN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Cxe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!lN(i)&&(n[r]=i);return n}var Exe,Rxe,M8,T8,C8,uN=z(()=>{"use strict";mt();pt();gt();_8();Exe={display:"contents"},Rxe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},M8={blendMode:"normal",visible:!0};try{gc&&gc.props&&Object.entries(gc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(M8[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}T8=t=>{let e=Sxe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=wxe(),s=Yg(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Yg(()=>Cxe(t,M8),[t]),d=Yg(()=>({...Rxe,...t.transform}),[t.transform]),h=Zg(null),f=!!gc.capturesDOM,g=Zg(null),[y,_]=S8(!1),[b,S]=S8(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));$g(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Zg(void 0),v=Zg(null);v.current===null&&(ce(a),v.current=ue(gc,u,s));let E=Yg(()=>({...e,shaderParentId:s}),[e,s]);$g(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,gc.fragmentNode,n,c,v.current,gc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),$g(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Zg({}),M=Yg(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&lN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if($g(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(lN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),$g(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Mxe(w8("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Txe(G.Provider,{value:E,children:[w8("span",{ref:h,style:Exe,"data-shader-id":s,children:!f&&t.children}),R]})},C8=T8});var R8=z(()=>{"use strict";yG()});var U8={};yt(U8,{ShaderComponent:()=>N8,default:()=>O8});import{useContext as Axe,useEffect as Kg,useId as Pxe,useMemo as Jg,useRef as Qg,useState as A8}from"react";import{createPortal as Ixe}from"react-dom";import{jsx as P8,jsxs as Nxe}from"react/jsx-runtime";function dN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Oxe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!dN(i)&&(n[r]=i);return n}var Uxe,Dxe,I8,N8,O8,fN=z(()=>{"use strict";mt();pt();gt();R8();Uxe={display:"contents"},Dxe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},I8={blendMode:"normal",visible:!0};try{yc&&yc.props&&Object.entries(yc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(I8[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}N8=t=>{let e=Axe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Pxe(),s=Jg(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Jg(()=>Oxe(t,I8),[t]),d=Jg(()=>({...Dxe,...t.transform}),[t.transform]),h=Qg(null),f=!!yc.capturesDOM,g=Qg(null),[y,_]=A8(!1),[b,S]=A8(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Kg(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Qg(void 0),v=Qg(null);v.current===null&&(ce(a),v.current=ue(yc,u,s));let E=Jg(()=>({...e,shaderParentId:s}),[e,s]);Kg(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,yc.fragmentNode,n,c,v.current,yc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Kg(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Qg({}),M=Jg(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&dN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Kg(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(dN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Kg(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Ixe(P8("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Nxe(G.Provider,{value:E,children:[P8("span",{ref:h,style:Uxe,"data-shader-id":s,children:!f&&t.children}),R]})},O8=N8});var D8=z(()=>{"use strict";vG()});var V8={};yt(V8,{ShaderComponent:()=>B8,default:()=>z8});import{useContext as Fxe,useEffect as e0,useId as Lxe,useMemo as t0,useRef as n0,useState as F8}from"react";import{createPortal as kxe}from"react-dom";import{jsx as L8,jsxs as Bxe}from"react/jsx-runtime";function hN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function zxe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!hN(i)&&(n[r]=i);return n}var Vxe,Gxe,k8,B8,z8,mN=z(()=>{"use strict";mt();pt();gt();D8();Vxe={display:"contents"},Gxe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},k8={blendMode:"normal",visible:!0};try{vc&&vc.props&&Object.entries(vc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(k8[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}B8=t=>{let e=Fxe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Lxe(),s=t0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=t0(()=>zxe(t,k8),[t]),d=t0(()=>({...Gxe,...t.transform}),[t.transform]),h=n0(null),f=!!vc.capturesDOM,g=n0(null),[y,_]=F8(!1),[b,S]=F8(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));e0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=n0(void 0),v=n0(null);v.current===null&&(ce(a),v.current=ue(vc,u,s));let E=t0(()=>({...e,shaderParentId:s}),[e,s]);e0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,vc.fragmentNode,n,c,v.current,vc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),e0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=n0({}),M=t0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&hN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(e0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(hN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),e0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?kxe(L8("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Bxe(G.Provider,{value:E,children:[L8("span",{ref:h,style:Vxe,"data-shader-id":s,children:!f&&t.children}),R]})},z8=B8});var G8=z(()=>{"use strict";xG()});var $8={};yt($8,{ShaderComponent:()=>q8,default:()=>X8});import{useContext as Hxe,useEffect as r0,useId as Wxe,useMemo as i0,useRef as o0,useState as H8}from"react";import{createPortal as jxe}from"react-dom";import{jsx as W8,jsxs as qxe}from"react/jsx-runtime";function pN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Xxe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!pN(i)&&(n[r]=i);return n}var $xe,Yxe,j8,q8,X8,gN=z(()=>{"use strict";mt();pt();gt();G8();$xe={display:"contents"},Yxe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},j8={blendMode:"normal",visible:!0};try{xc&&xc.props&&Object.entries(xc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(j8[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}q8=t=>{let e=Hxe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Wxe(),s=i0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=i0(()=>Xxe(t,j8),[t]),d=i0(()=>({...Yxe,...t.transform}),[t.transform]),h=o0(null),f=!!xc.capturesDOM,g=o0(null),[y,_]=H8(!1),[b,S]=H8(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));r0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=o0(void 0),v=o0(null);v.current===null&&(ce(a),v.current=ue(xc,u,s));let E=i0(()=>({...e,shaderParentId:s}),[e,s]);r0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,xc.fragmentNode,n,c,v.current,xc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),r0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=o0({}),M=i0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&pN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(r0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(pN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),r0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?jxe(W8("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return qxe(G.Provider,{value:E,children:[W8("span",{ref:h,style:$xe,"data-shader-id":s,children:!f&&t.children}),R]})},X8=q8});var Y8=z(()=>{"use strict";_G()});var tH={};yt(tH,{ShaderComponent:()=>Q8,default:()=>eH});import{useContext as Zxe,useEffect as s0,useId as Kxe,useMemo as a0,useRef as c0,useState as Z8}from"react";import{createPortal as Jxe}from"react-dom";import{jsx as K8,jsxs as Qxe}from"react/jsx-runtime";function yN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function ebe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!yN(i)&&(n[r]=i);return n}var tbe,nbe,J8,Q8,eH,vN=z(()=>{"use strict";mt();pt();gt();Y8();tbe={display:"contents"},nbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},J8={blendMode:"normal",visible:!0};try{bc&&bc.props&&Object.entries(bc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(J8[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Q8=t=>{let e=Zxe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Kxe(),s=a0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=a0(()=>ebe(t,J8),[t]),d=a0(()=>({...nbe,...t.transform}),[t.transform]),h=c0(null),f=!!bc.capturesDOM,g=c0(null),[y,_]=Z8(!1),[b,S]=Z8(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));s0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=c0(void 0),v=c0(null);v.current===null&&(ce(a),v.current=ue(bc,u,s));let E=a0(()=>({...e,shaderParentId:s}),[e,s]);s0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,bc.fragmentNode,n,c,v.current,bc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),s0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=c0({}),M=a0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&yN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(s0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(yN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),s0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Jxe(K8("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Qxe(G.Provider,{value:E,children:[K8("span",{ref:h,style:tbe,"data-shader-id":s,children:!f&&t.children}),R]})},eH=Q8});var nH=z(()=>{"use strict";SG()});var cH={};yt(cH,{ShaderComponent:()=>sH,default:()=>aH});import{useContext as rbe,useEffect as l0,useId as ibe,useMemo as u0,useRef as d0,useState as rH}from"react";import{createPortal as obe}from"react-dom";import{jsx as iH,jsxs as sbe}from"react/jsx-runtime";function xN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function abe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!xN(i)&&(n[r]=i);return n}var cbe,lbe,oH,sH,aH,bN=z(()=>{"use strict";mt();pt();gt();nH();cbe={display:"contents"},lbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},oH={blendMode:"normal",visible:!0};try{_c&&_c.props&&Object.entries(_c.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(oH[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}sH=t=>{let e=rbe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=ibe(),s=u0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=u0(()=>abe(t,oH),[t]),d=u0(()=>({...lbe,...t.transform}),[t.transform]),h=d0(null),f=!!_c.capturesDOM,g=d0(null),[y,_]=rH(!1),[b,S]=rH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));l0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=d0(void 0),v=d0(null);v.current===null&&(ce(a),v.current=ue(_c,u,s));let E=u0(()=>({...e,shaderParentId:s}),[e,s]);l0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,_c.fragmentNode,n,c,v.current,_c,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),l0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=d0({}),M=u0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&xN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(l0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(xN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),l0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?obe(iH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return sbe(G.Provider,{value:E,children:[iH("span",{ref:h,style:cbe,"data-shader-id":s,children:!f&&t.children}),R]})},aH=sH});var lH=z(()=>{"use strict";wG()});var pH={};yt(pH,{ShaderComponent:()=>hH,default:()=>mH});import{useContext as ube,useEffect as f0,useId as dbe,useMemo as h0,useRef as m0,useState as uH}from"react";import{createPortal as fbe}from"react-dom";import{jsx as dH,jsxs as hbe}from"react/jsx-runtime";function _N(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function mbe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!_N(i)&&(n[r]=i);return n}var pbe,gbe,fH,hH,mH,SN=z(()=>{"use strict";mt();pt();gt();lH();pbe={display:"contents"},gbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},fH={blendMode:"normal",visible:!0};try{Sc&&Sc.props&&Object.entries(Sc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(fH[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}hH=t=>{let e=ube(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=dbe(),s=h0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=h0(()=>mbe(t,fH),[t]),d=h0(()=>({...gbe,...t.transform}),[t.transform]),h=m0(null),f=!!Sc.capturesDOM,g=m0(null),[y,_]=uH(!1),[b,S]=uH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));f0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=m0(void 0),v=m0(null);v.current===null&&(ce(a),v.current=ue(Sc,u,s));let E=h0(()=>({...e,shaderParentId:s}),[e,s]);f0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Sc.fragmentNode,n,c,v.current,Sc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),f0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=m0({}),M=h0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&_N(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(f0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(_N(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),f0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?fbe(dH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return hbe(G.Provider,{value:E,children:[dH("span",{ref:h,style:pbe,"data-shader-id":s,children:!f&&t.children}),R]})},mH=hH});var gH=z(()=>{"use strict";MG()});var SH={};yt(SH,{ShaderComponent:()=>bH,default:()=>_H});import{useContext as ybe,useEffect as p0,useId as vbe,useMemo as g0,useRef as y0,useState as yH}from"react";import{createPortal as xbe}from"react-dom";import{jsx as vH,jsxs as bbe}from"react/jsx-runtime";function wN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function _be(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!wN(i)&&(n[r]=i);return n}var Sbe,wbe,xH,bH,_H,MN=z(()=>{"use strict";mt();pt();gt();gH();Sbe={display:"contents"},wbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},xH={blendMode:"normal",visible:!0};try{wc&&wc.props&&Object.entries(wc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(xH[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}bH=t=>{let e=ybe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=vbe(),s=g0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=g0(()=>_be(t,xH),[t]),d=g0(()=>({...wbe,...t.transform}),[t.transform]),h=y0(null),f=!!wc.capturesDOM,g=y0(null),[y,_]=yH(!1),[b,S]=yH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));p0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=y0(void 0),v=y0(null);v.current===null&&(ce(a),v.current=ue(wc,u,s));let E=g0(()=>({...e,shaderParentId:s}),[e,s]);p0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,wc.fragmentNode,n,c,v.current,wc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),p0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=y0({}),M=g0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&wN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(p0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(wN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),p0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?xbe(vH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return bbe(G.Provider,{value:E,children:[vH("span",{ref:h,style:Sbe,"data-shader-id":s,children:!f&&t.children}),R]})},_H=bH});var wH=z(()=>{"use strict";LG()});var AH={};yt(AH,{ShaderComponent:()=>EH,default:()=>RH});import{useContext as Mbe,useEffect as v0,useId as Tbe,useMemo as x0,useRef as b0,useState as MH}from"react";import{createPortal as Cbe}from"react-dom";import{jsx as TH,jsxs as Ebe}from"react/jsx-runtime";function TN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Rbe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!TN(i)&&(n[r]=i);return n}var Abe,Pbe,CH,EH,RH,CN=z(()=>{"use strict";mt();pt();gt();wH();Abe={display:"contents"},Pbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},CH={blendMode:"normal",visible:!0};try{Fc&&Fc.props&&Object.entries(Fc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(CH[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}EH=t=>{let e=Mbe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Tbe(),s=x0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=x0(()=>Rbe(t,CH),[t]),d=x0(()=>({...Pbe,...t.transform}),[t.transform]),h=b0(null),f=!!Fc.capturesDOM,g=b0(null),[y,_]=MH(!1),[b,S]=MH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));v0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=b0(void 0),v=b0(null);v.current===null&&(ce(a),v.current=ue(Fc,u,s));let E=x0(()=>({...e,shaderParentId:s}),[e,s]);v0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Fc.fragmentNode,n,c,v.current,Fc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),v0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=b0({}),M=x0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&TN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(v0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(TN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),v0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Cbe(TH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Ebe(G.Provider,{value:E,children:[TH("span",{ref:h,style:Abe,"data-shader-id":s,children:!f&&t.children}),R]})},RH=EH});var PH=z(()=>{"use strict";TG()});var FH={};yt(FH,{ShaderComponent:()=>UH,default:()=>DH});import{useContext as Ibe,useEffect as _0,useId as Nbe,useMemo as S0,useRef as w0,useState as IH}from"react";import{createPortal as Obe}from"react-dom";import{jsx as NH,jsxs as Ube}from"react/jsx-runtime";function EN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Dbe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!EN(i)&&(n[r]=i);return n}var Fbe,Lbe,OH,UH,DH,RN=z(()=>{"use strict";mt();pt();gt();PH();Fbe={display:"contents"},Lbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},OH={blendMode:"normal",visible:!0};try{Mc&&Mc.props&&Object.entries(Mc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(OH[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}UH=t=>{let e=Ibe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Nbe(),s=S0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=S0(()=>Dbe(t,OH),[t]),d=S0(()=>({...Lbe,...t.transform}),[t.transform]),h=w0(null),f=!!Mc.capturesDOM,g=w0(null),[y,_]=IH(!1),[b,S]=IH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));_0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=w0(void 0),v=w0(null);v.current===null&&(ce(a),v.current=ue(Mc,u,s));let E=S0(()=>({...e,shaderParentId:s}),[e,s]);_0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Mc.fragmentNode,n,c,v.current,Mc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),_0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=w0({}),M=S0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&EN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(_0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(EN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),_0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Obe(NH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Ube(G.Provider,{value:E,children:[NH("span",{ref:h,style:Fbe,"data-shader-id":s,children:!f&&t.children}),R]})},DH=UH});var LH=z(()=>{"use strict";CG()});var HH={};yt(HH,{ShaderComponent:()=>VH,default:()=>GH});import{useContext as kbe,useEffect as M0,useId as Bbe,useMemo as T0,useRef as C0,useState as kH}from"react";import{createPortal as zbe}from"react-dom";import{jsx as BH,jsxs as Vbe}from"react/jsx-runtime";function AN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Gbe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!AN(i)&&(n[r]=i);return n}var Hbe,Wbe,zH,VH,GH,PN=z(()=>{"use strict";mt();pt();gt();LH();Hbe={display:"contents"},Wbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},zH={blendMode:"normal",visible:!0};try{Tc&&Tc.props&&Object.entries(Tc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(zH[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}VH=t=>{let e=kbe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Bbe(),s=T0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=T0(()=>Gbe(t,zH),[t]),d=T0(()=>({...Wbe,...t.transform}),[t.transform]),h=C0(null),f=!!Tc.capturesDOM,g=C0(null),[y,_]=kH(!1),[b,S]=kH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));M0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=C0(void 0),v=C0(null);v.current===null&&(ce(a),v.current=ue(Tc,u,s));let E=T0(()=>({...e,shaderParentId:s}),[e,s]);M0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Tc.fragmentNode,n,c,v.current,Tc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),M0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=C0({}),M=T0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&AN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(M0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(AN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),M0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?zbe(BH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Vbe(G.Provider,{value:E,children:[BH("span",{ref:h,style:Hbe,"data-shader-id":s,children:!f&&t.children}),R]})},GH=VH});var WH=z(()=>{"use strict";EG()});var ZH={};yt(ZH,{ShaderComponent:()=>$H,default:()=>YH});import{useContext as jbe,useEffect as E0,useId as qbe,useMemo as R0,useRef as A0,useState as jH}from"react";import{createPortal as Xbe}from"react-dom";import{jsx as qH,jsxs as $be}from"react/jsx-runtime";function IN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Ybe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!IN(i)&&(n[r]=i);return n}var Zbe,Kbe,XH,$H,YH,NN=z(()=>{"use strict";mt();pt();gt();WH();Zbe={display:"contents"},Kbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},XH={blendMode:"normal",visible:!0};try{Cc&&Cc.props&&Object.entries(Cc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(XH[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}$H=t=>{let e=jbe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=qbe(),s=R0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=R0(()=>Ybe(t,XH),[t]),d=R0(()=>({...Kbe,...t.transform}),[t.transform]),h=A0(null),f=!!Cc.capturesDOM,g=A0(null),[y,_]=jH(!1),[b,S]=jH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));E0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=A0(void 0),v=A0(null);v.current===null&&(ce(a),v.current=ue(Cc,u,s));let E=R0(()=>({...e,shaderParentId:s}),[e,s]);E0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Cc.fragmentNode,n,c,v.current,Cc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),E0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=A0({}),M=R0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&IN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(E0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(IN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),E0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Xbe(qH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return $be(G.Provider,{value:E,children:[qH("span",{ref:h,style:Zbe,"data-shader-id":s,children:!f&&t.children}),R]})},YH=$H});var KH=z(()=>{"use strict";RG()});var rW={};yt(rW,{ShaderComponent:()=>tW,default:()=>nW});import{useContext as Jbe,useEffect as P0,useId as Qbe,useMemo as I0,useRef as N0,useState as JH}from"react";import{createPortal as e_e}from"react-dom";import{jsx as QH,jsxs as t_e}from"react/jsx-runtime";function ON(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function n_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!ON(i)&&(n[r]=i);return n}var r_e,i_e,eW,tW,nW,UN=z(()=>{"use strict";mt();pt();gt();KH();r_e={display:"contents"},i_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},eW={blendMode:"normal",visible:!0};try{Ec&&Ec.props&&Object.entries(Ec.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(eW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}tW=t=>{let e=Jbe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Qbe(),s=I0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=I0(()=>n_e(t,eW),[t]),d=I0(()=>({...i_e,...t.transform}),[t.transform]),h=N0(null),f=!!Ec.capturesDOM,g=N0(null),[y,_]=JH(!1),[b,S]=JH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));P0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=N0(void 0),v=N0(null);v.current===null&&(ce(a),v.current=ue(Ec,u,s));let E=I0(()=>({...e,shaderParentId:s}),[e,s]);P0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ec.fragmentNode,n,c,v.current,Ec,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),P0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=N0({}),M=I0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&ON(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(P0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(ON(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),P0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?e_e(QH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return t_e(G.Provider,{value:E,children:[QH("span",{ref:h,style:r_e,"data-shader-id":s,children:!f&&t.children}),R]})},nW=tW});var iW=z(()=>{"use strict";AG()});var uW={};yt(uW,{ShaderComponent:()=>cW,default:()=>lW});import{useContext as o_e,useEffect as O0,useId as s_e,useMemo as U0,useRef as D0,useState as oW}from"react";import{createPortal as a_e}from"react-dom";import{jsx as sW,jsxs as c_e}from"react/jsx-runtime";function DN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function l_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!DN(i)&&(n[r]=i);return n}var u_e,d_e,aW,cW,lW,FN=z(()=>{"use strict";mt();pt();gt();iW();u_e={display:"contents"},d_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},aW={blendMode:"normal",visible:!0};try{Rc&&Rc.props&&Object.entries(Rc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(aW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}cW=t=>{let e=o_e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=s_e(),s=U0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=U0(()=>l_e(t,aW),[t]),d=U0(()=>({...d_e,...t.transform}),[t.transform]),h=D0(null),f=!!Rc.capturesDOM,g=D0(null),[y,_]=oW(!1),[b,S]=oW(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));O0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=D0(void 0),v=D0(null);v.current===null&&(ce(a),v.current=ue(Rc,u,s));let E=U0(()=>({...e,shaderParentId:s}),[e,s]);O0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Rc.fragmentNode,n,c,v.current,Rc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),O0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=D0({}),M=U0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&DN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(O0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(DN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),O0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?a_e(sW("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return c_e(G.Provider,{value:E,children:[sW("span",{ref:h,style:u_e,"data-shader-id":s,children:!f&&t.children}),R]})},lW=cW});var dW=z(()=>{"use strict";PG()});var yW={};yt(yW,{ShaderComponent:()=>pW,default:()=>gW});import{useContext as f_e,useEffect as F0,useId as h_e,useMemo as L0,useRef as k0,useState as fW}from"react";import{createPortal as m_e}from"react-dom";import{jsx as hW,jsxs as p_e}from"react/jsx-runtime";function LN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function g_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!LN(i)&&(n[r]=i);return n}var y_e,v_e,mW,pW,gW,kN=z(()=>{"use strict";mt();pt();gt();dW();y_e={display:"contents"},v_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},mW={blendMode:"normal",visible:!0};try{Ac&&Ac.props&&Object.entries(Ac.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(mW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}pW=t=>{let e=f_e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=h_e(),s=L0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=L0(()=>g_e(t,mW),[t]),d=L0(()=>({...v_e,...t.transform}),[t.transform]),h=k0(null),f=!!Ac.capturesDOM,g=k0(null),[y,_]=fW(!1),[b,S]=fW(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));F0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=k0(void 0),v=k0(null);v.current===null&&(ce(a),v.current=ue(Ac,u,s));let E=L0(()=>({...e,shaderParentId:s}),[e,s]);F0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ac.fragmentNode,n,c,v.current,Ac,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),F0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=k0({}),M=L0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&LN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(F0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(LN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),F0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?m_e(hW("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return p_e(G.Provider,{value:E,children:[hW("span",{ref:h,style:y_e,"data-shader-id":s,children:!f&&t.children}),R]})},gW=pW});var vW=z(()=>{"use strict";IG()});var MW={};yt(MW,{ShaderComponent:()=>SW,default:()=>wW});import{useContext as x_e,useEffect as B0,useId as b_e,useMemo as z0,useRef as V0,useState as xW}from"react";import{createPortal as __e}from"react-dom";import{jsx as bW,jsxs as S_e}from"react/jsx-runtime";function BN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function w_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!BN(i)&&(n[r]=i);return n}var M_e,T_e,_W,SW,wW,zN=z(()=>{"use strict";mt();pt();gt();vW();M_e={display:"contents"},T_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},_W={blendMode:"normal",visible:!0};try{Pc&&Pc.props&&Object.entries(Pc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(_W[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}SW=t=>{let e=x_e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=b_e(),s=z0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=z0(()=>w_e(t,_W),[t]),d=z0(()=>({...T_e,...t.transform}),[t.transform]),h=V0(null),f=!!Pc.capturesDOM,g=V0(null),[y,_]=xW(!1),[b,S]=xW(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));B0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=V0(void 0),v=V0(null);v.current===null&&(ce(a),v.current=ue(Pc,u,s));let E=z0(()=>({...e,shaderParentId:s}),[e,s]);B0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Pc.fragmentNode,n,c,v.current,Pc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),B0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=V0({}),M=z0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&BN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(B0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(BN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),B0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?__e(bW("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return S_e(G.Provider,{value:E,children:[bW("span",{ref:h,style:M_e,"data-shader-id":s,children:!f&&t.children}),R]})},wW=SW});var TW=z(()=>{"use strict";NG()});var IW={};yt(IW,{ShaderComponent:()=>AW,default:()=>PW});import{useContext as C_e,useEffect as G0,useId as E_e,useMemo as H0,useRef as W0,useState as CW}from"react";import{createPortal as R_e}from"react-dom";import{jsx as EW,jsxs as A_e}from"react/jsx-runtime";function VN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function P_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!VN(i)&&(n[r]=i);return n}var I_e,N_e,RW,AW,PW,GN=z(()=>{"use strict";mt();pt();gt();TW();I_e={display:"contents"},N_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},RW={blendMode:"normal",visible:!0};try{Ic&&Ic.props&&Object.entries(Ic.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(RW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}AW=t=>{let e=C_e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=E_e(),s=H0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=H0(()=>P_e(t,RW),[t]),d=H0(()=>({...N_e,...t.transform}),[t.transform]),h=W0(null),f=!!Ic.capturesDOM,g=W0(null),[y,_]=CW(!1),[b,S]=CW(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));G0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=W0(void 0),v=W0(null);v.current===null&&(ce(a),v.current=ue(Ic,u,s));let E=H0(()=>({...e,shaderParentId:s}),[e,s]);G0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ic.fragmentNode,n,c,v.current,Ic,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),G0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=W0({}),M=H0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&VN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(G0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(VN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),G0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?R_e(EW("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return A_e(G.Provider,{value:E,children:[EW("span",{ref:h,style:I_e,"data-shader-id":s,children:!f&&t.children}),R]})},PW=AW});var NW=z(()=>{"use strict";OG()});var kW={};yt(kW,{ShaderComponent:()=>FW,default:()=>LW});import{useContext as O_e,useEffect as j0,useId as U_e,useMemo as q0,useRef as X0,useState as OW}from"react";import{createPortal as D_e}from"react-dom";import{jsx as UW,jsxs as F_e}from"react/jsx-runtime";function HN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function L_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!HN(i)&&(n[r]=i);return n}var k_e,B_e,DW,FW,LW,WN=z(()=>{"use strict";mt();pt();gt();NW();k_e={display:"contents"},B_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},DW={blendMode:"normal",visible:!0};try{Nc&&Nc.props&&Object.entries(Nc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(DW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}FW=t=>{let e=O_e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=U_e(),s=q0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=q0(()=>L_e(t,DW),[t]),d=q0(()=>({...B_e,...t.transform}),[t.transform]),h=X0(null),f=!!Nc.capturesDOM,g=X0(null),[y,_]=OW(!1),[b,S]=OW(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));j0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=X0(void 0),v=X0(null);v.current===null&&(ce(a),v.current=ue(Nc,u,s));let E=q0(()=>({...e,shaderParentId:s}),[e,s]);j0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Nc.fragmentNode,n,c,v.current,Nc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),j0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=X0({}),M=q0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&HN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(j0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(HN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),j0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?D_e(UW("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return F_e(G.Provider,{value:E,children:[UW("span",{ref:h,style:k_e,"data-shader-id":s,children:!f&&t.children}),R]})},LW=FW});var BW=z(()=>{"use strict";UG()});var jW={};yt(jW,{ShaderComponent:()=>HW,default:()=>WW});import{useContext as z_e,useEffect as $0,useId as V_e,useMemo as Y0,useRef as Z0,useState as zW}from"react";import{createPortal as G_e}from"react-dom";import{jsx as VW,jsxs as H_e}from"react/jsx-runtime";function jN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function W_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!jN(i)&&(n[r]=i);return n}var j_e,q_e,GW,HW,WW,qN=z(()=>{"use strict";mt();pt();gt();BW();j_e={display:"contents"},q_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},GW={blendMode:"normal",visible:!0};try{Oc&&Oc.props&&Object.entries(Oc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(GW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}HW=t=>{let e=z_e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=V_e(),s=Y0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Y0(()=>W_e(t,GW),[t]),d=Y0(()=>({...q_e,...t.transform}),[t.transform]),h=Z0(null),f=!!Oc.capturesDOM,g=Z0(null),[y,_]=zW(!1),[b,S]=zW(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));$0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Z0(void 0),v=Z0(null);v.current===null&&(ce(a),v.current=ue(Oc,u,s));let E=Y0(()=>({...e,shaderParentId:s}),[e,s]);$0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Oc.fragmentNode,n,c,v.current,Oc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),$0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Z0({}),M=Y0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&jN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if($0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(jN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),$0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?G_e(VW("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return H_e(G.Provider,{value:E,children:[VW("span",{ref:h,style:j_e,"data-shader-id":s,children:!f&&t.children}),R]})},WW=HW});var qW=z(()=>{"use strict";DG()});var JW={};yt(JW,{ShaderComponent:()=>ZW,default:()=>KW});import{useContext as X_e,useEffect as K0,useId as $_e,useMemo as J0,useRef as Q0,useState as XW}from"react";import{createPortal as Y_e}from"react-dom";import{jsx as $W,jsxs as Z_e}from"react/jsx-runtime";function XN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function K_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!XN(i)&&(n[r]=i);return n}var J_e,Q_e,YW,ZW,KW,$N=z(()=>{"use strict";mt();pt();gt();qW();J_e={display:"contents"},Q_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},YW={blendMode:"normal",visible:!0};try{Uc&&Uc.props&&Object.entries(Uc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(YW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}ZW=t=>{let e=X_e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=$_e(),s=J0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=J0(()=>K_e(t,YW),[t]),d=J0(()=>({...Q_e,...t.transform}),[t.transform]),h=Q0(null),f=!!Uc.capturesDOM,g=Q0(null),[y,_]=XW(!1),[b,S]=XW(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));K0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Q0(void 0),v=Q0(null);v.current===null&&(ce(a),v.current=ue(Uc,u,s));let E=J0(()=>({...e,shaderParentId:s}),[e,s]);K0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Uc.fragmentNode,n,c,v.current,Uc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),K0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Q0({}),M=J0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&XN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(K0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(XN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),K0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Y_e($W("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Z_e(G.Provider,{value:E,children:[$W("span",{ref:h,style:J_e,"data-shader-id":s,children:!f&&t.children}),R]})},KW=ZW});var QW=z(()=>{"use strict";FG()});var o7={};yt(o7,{ShaderComponent:()=>r7,default:()=>i7});import{useContext as eSe,useEffect as ey,useId as tSe,useMemo as ty,useRef as ny,useState as e7}from"react";import{createPortal as nSe}from"react-dom";import{jsx as t7,jsxs as rSe}from"react/jsx-runtime";function YN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function iSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!YN(i)&&(n[r]=i);return n}var oSe,sSe,n7,r7,i7,ZN=z(()=>{"use strict";mt();pt();gt();QW();oSe={display:"contents"},sSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},n7={blendMode:"normal",visible:!0};try{Dc&&Dc.props&&Object.entries(Dc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(n7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}r7=t=>{let e=eSe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=tSe(),s=ty(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ty(()=>iSe(t,n7),[t]),d=ty(()=>({...sSe,...t.transform}),[t.transform]),h=ny(null),f=!!Dc.capturesDOM,g=ny(null),[y,_]=e7(!1),[b,S]=e7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));ey(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=ny(void 0),v=ny(null);v.current===null&&(ce(a),v.current=ue(Dc,u,s));let E=ty(()=>({...e,shaderParentId:s}),[e,s]);ey(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Dc.fragmentNode,n,c,v.current,Dc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),ey(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=ny({}),M=ty(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&YN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(ey(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(YN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ey(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?nSe(t7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return rSe(G.Provider,{value:E,children:[t7("span",{ref:h,style:oSe,"data-shader-id":s,children:!f&&t.children}),R]})},i7=r7});var s7=z(()=>{"use strict";BG()});var f7={};yt(f7,{ShaderComponent:()=>u7,default:()=>d7});import{useContext as aSe,useEffect as ry,useId as cSe,useMemo as iy,useRef as oy,useState as a7}from"react";import{createPortal as lSe}from"react-dom";import{jsx as c7,jsxs as uSe}from"react/jsx-runtime";function KN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function dSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!KN(i)&&(n[r]=i);return n}var fSe,hSe,l7,u7,d7,JN=z(()=>{"use strict";mt();pt();gt();s7();fSe={display:"contents"},hSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},l7={blendMode:"normal",visible:!0};try{Lc&&Lc.props&&Object.entries(Lc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(l7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}u7=t=>{let e=aSe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=cSe(),s=iy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=iy(()=>dSe(t,l7),[t]),d=iy(()=>({...hSe,...t.transform}),[t.transform]),h=oy(null),f=!!Lc.capturesDOM,g=oy(null),[y,_]=a7(!1),[b,S]=a7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));ry(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=oy(void 0),v=oy(null);v.current===null&&(ce(a),v.current=ue(Lc,u,s));let E=iy(()=>({...e,shaderParentId:s}),[e,s]);ry(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Lc.fragmentNode,n,c,v.current,Lc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),ry(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=oy({}),M=iy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&KN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(ry(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(KN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ry(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?lSe(c7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return uSe(G.Provider,{value:E,children:[c7("span",{ref:h,style:fSe,"data-shader-id":s,children:!f&&t.children}),R]})},d7=u7});var h7=z(()=>{"use strict";zG()});var x7={};yt(x7,{ShaderComponent:()=>y7,default:()=>v7});import{useContext as mSe,useEffect as sy,useId as pSe,useMemo as ay,useRef as cy,useState as m7}from"react";import{createPortal as gSe}from"react-dom";import{jsx as p7,jsxs as ySe}from"react/jsx-runtime";function QN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function vSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!QN(i)&&(n[r]=i);return n}var xSe,bSe,g7,y7,v7,eO=z(()=>{"use strict";mt();pt();gt();h7();xSe={display:"contents"},bSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},g7={blendMode:"normal",visible:!0};try{kc&&kc.props&&Object.entries(kc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(g7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}y7=t=>{let e=mSe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=pSe(),s=ay(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ay(()=>vSe(t,g7),[t]),d=ay(()=>({...bSe,...t.transform}),[t.transform]),h=cy(null),f=!!kc.capturesDOM,g=cy(null),[y,_]=m7(!1),[b,S]=m7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));sy(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=cy(void 0),v=cy(null);v.current===null&&(ce(a),v.current=ue(kc,u,s));let E=ay(()=>({...e,shaderParentId:s}),[e,s]);sy(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,kc.fragmentNode,n,c,v.current,kc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),sy(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=cy({}),M=ay(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&QN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(sy(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(QN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),sy(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?gSe(p7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return ySe(G.Provider,{value:E,children:[p7("span",{ref:h,style:xSe,"data-shader-id":s,children:!f&&t.children}),R]})},v7=y7});var b7=z(()=>{"use strict";VG()});var C7={};yt(C7,{ShaderComponent:()=>M7,default:()=>T7});import{useContext as _Se,useEffect as ly,useId as SSe,useMemo as uy,useRef as dy,useState as _7}from"react";import{createPortal as wSe}from"react-dom";import{jsx as S7,jsxs as MSe}from"react/jsx-runtime";function tO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function TSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!tO(i)&&(n[r]=i);return n}var CSe,ESe,w7,M7,T7,nO=z(()=>{"use strict";mt();pt();gt();b7();CSe={display:"contents"},ESe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},w7={blendMode:"normal",visible:!0};try{Bc&&Bc.props&&Object.entries(Bc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(w7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}M7=t=>{let e=_Se(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=SSe(),s=uy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=uy(()=>TSe(t,w7),[t]),d=uy(()=>({...ESe,...t.transform}),[t.transform]),h=dy(null),f=!!Bc.capturesDOM,g=dy(null),[y,_]=_7(!1),[b,S]=_7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));ly(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=dy(void 0),v=dy(null);v.current===null&&(ce(a),v.current=ue(Bc,u,s));let E=uy(()=>({...e,shaderParentId:s}),[e,s]);ly(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Bc.fragmentNode,n,c,v.current,Bc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),ly(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=dy({}),M=uy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&tO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(ly(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(tO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ly(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?wSe(S7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return MSe(G.Provider,{value:E,children:[S7("span",{ref:h,style:CSe,"data-shader-id":s,children:!f&&t.children}),R]})},T7=M7});var E7=z(()=>{"use strict";jG()});var O7={};yt(O7,{ShaderComponent:()=>I7,default:()=>N7});import{useContext as RSe,useEffect as fy,useId as ASe,useMemo as hy,useRef as my,useState as R7}from"react";import{createPortal as PSe}from"react-dom";import{jsx as A7,jsxs as ISe}from"react/jsx-runtime";function rO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function NSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!rO(i)&&(n[r]=i);return n}var OSe,USe,P7,I7,N7,iO=z(()=>{"use strict";mt();pt();gt();E7();OSe={display:"contents"},USe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},P7={blendMode:"normal",visible:!0};try{Hc&&Hc.props&&Object.entries(Hc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(P7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}I7=t=>{let e=RSe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=ASe(),s=hy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=hy(()=>NSe(t,P7),[t]),d=hy(()=>({...USe,...t.transform}),[t.transform]),h=my(null),f=!!Hc.capturesDOM,g=my(null),[y,_]=R7(!1),[b,S]=R7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));fy(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=my(void 0),v=my(null);v.current===null&&(ce(a),v.current=ue(Hc,u,s));let E=hy(()=>({...e,shaderParentId:s}),[e,s]);fy(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Hc.fragmentNode,n,c,v.current,Hc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),fy(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=my({}),M=hy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&rO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(fy(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(rO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),fy(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?PSe(A7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return ISe(G.Provider,{value:E,children:[A7("span",{ref:h,style:OSe,"data-shader-id":s,children:!f&&t.children}),R]})},N7=I7});var U7=z(()=>{"use strict";GG()});var z7={};yt(z7,{ShaderComponent:()=>k7,default:()=>B7});import{useContext as DSe,useEffect as py,useId as FSe,useMemo as gy,useRef as yy,useState as D7}from"react";import{createPortal as LSe}from"react-dom";import{jsx as F7,jsxs as kSe}from"react/jsx-runtime";function oO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function BSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!oO(i)&&(n[r]=i);return n}var zSe,VSe,L7,k7,B7,sO=z(()=>{"use strict";mt();pt();gt();U7();zSe={display:"contents"},VSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},L7={blendMode:"normal",visible:!0};try{zc&&zc.props&&Object.entries(zc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(L7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}k7=t=>{let e=DSe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=FSe(),s=gy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=gy(()=>BSe(t,L7),[t]),d=gy(()=>({...VSe,...t.transform}),[t.transform]),h=yy(null),f=!!zc.capturesDOM,g=yy(null),[y,_]=D7(!1),[b,S]=D7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));py(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=yy(void 0),v=yy(null);v.current===null&&(ce(a),v.current=ue(zc,u,s));let E=gy(()=>({...e,shaderParentId:s}),[e,s]);py(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,zc.fragmentNode,n,c,v.current,zc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),py(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=yy({}),M=gy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&oO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(py(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(oO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),py(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?LSe(F7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return kSe(G.Provider,{value:E,children:[F7("span",{ref:h,style:zSe,"data-shader-id":s,children:!f&&t.children}),R]})},B7=k7});var V7=z(()=>{"use strict";HG()});var X7={};yt(X7,{ShaderComponent:()=>j7,default:()=>q7});import{useContext as GSe,useEffect as vy,useId as HSe,useMemo as xy,useRef as by,useState as G7}from"react";import{createPortal as WSe}from"react-dom";import{jsx as H7,jsxs as jSe}from"react/jsx-runtime";function aO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function qSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!aO(i)&&(n[r]=i);return n}var XSe,$Se,W7,j7,q7,cO=z(()=>{"use strict";mt();pt();gt();V7();XSe={display:"contents"},$Se={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},W7={blendMode:"normal",visible:!0};try{Vc&&Vc.props&&Object.entries(Vc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(W7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}j7=t=>{let e=GSe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=HSe(),s=xy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=xy(()=>qSe(t,W7),[t]),d=xy(()=>({...$Se,...t.transform}),[t.transform]),h=by(null),f=!!Vc.capturesDOM,g=by(null),[y,_]=G7(!1),[b,S]=G7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));vy(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=by(void 0),v=by(null);v.current===null&&(ce(a),v.current=ue(Vc,u,s));let E=xy(()=>({...e,shaderParentId:s}),[e,s]);vy(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Vc.fragmentNode,n,c,v.current,Vc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),vy(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=by({}),M=xy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&aO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(vy(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(aO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),vy(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?WSe(H7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return jSe(G.Provider,{value:E,children:[H7("span",{ref:h,style:XSe,"data-shader-id":s,children:!f&&t.children}),R]})},q7=j7});var $7=z(()=>{"use strict";WG()});var ej={};yt(ej,{ShaderComponent:()=>J7,default:()=>Q7});import{useContext as YSe,useEffect as _y,useId as ZSe,useMemo as Sy,useRef as wy,useState as Y7}from"react";import{createPortal as KSe}from"react-dom";import{jsx as Z7,jsxs as JSe}from"react/jsx-runtime";function lO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function QSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!lO(i)&&(n[r]=i);return n}var ewe,twe,K7,J7,Q7,uO=z(()=>{"use strict";mt();pt();gt();$7();ewe={display:"contents"},twe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},K7={blendMode:"normal",visible:!0};try{Gc&&Gc.props&&Object.entries(Gc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(K7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}J7=t=>{let e=YSe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=ZSe(),s=Sy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Sy(()=>QSe(t,K7),[t]),d=Sy(()=>({...twe,...t.transform}),[t.transform]),h=wy(null),f=!!Gc.capturesDOM,g=wy(null),[y,_]=Y7(!1),[b,S]=Y7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));_y(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=wy(void 0),v=wy(null);v.current===null&&(ce(a),v.current=ue(Gc,u,s));let E=Sy(()=>({...e,shaderParentId:s}),[e,s]);_y(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Gc.fragmentNode,n,c,v.current,Gc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),_y(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=wy({}),M=Sy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&lO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(_y(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(lO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),_y(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?KSe(Z7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return JSe(G.Provider,{value:E,children:[Z7("span",{ref:h,style:ewe,"data-shader-id":s,children:!f&&t.children}),R]})},Q7=J7});var tj=z(()=>{"use strict";qG()});var aj={};yt(aj,{ShaderComponent:()=>oj,default:()=>sj});import{useContext as nwe,useEffect as My,useId as rwe,useMemo as Ty,useRef as Cy,useState as nj}from"react";import{createPortal as iwe}from"react-dom";import{jsx as rj,jsxs as owe}from"react/jsx-runtime";function dO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function swe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!dO(i)&&(n[r]=i);return n}var awe,cwe,ij,oj,sj,fO=z(()=>{"use strict";mt();pt();gt();tj();awe={display:"contents"},cwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},ij={blendMode:"normal",visible:!0};try{Wc&&Wc.props&&Object.entries(Wc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(ij[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}oj=t=>{let e=nwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=rwe(),s=Ty(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ty(()=>swe(t,ij),[t]),d=Ty(()=>({...cwe,...t.transform}),[t.transform]),h=Cy(null),f=!!Wc.capturesDOM,g=Cy(null),[y,_]=nj(!1),[b,S]=nj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));My(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Cy(void 0),v=Cy(null);v.current===null&&(ce(a),v.current=ue(Wc,u,s));let E=Ty(()=>({...e,shaderParentId:s}),[e,s]);My(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Wc.fragmentNode,n,c,v.current,Wc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),My(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Cy({}),M=Ty(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&dO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(My(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(dO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),My(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?iwe(rj("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return owe(G.Provider,{value:E,children:[rj("span",{ref:h,style:awe,"data-shader-id":s,children:!f&&t.children}),R]})},sj=oj});var cj=z(()=>{"use strict";YG()});var mj={};yt(mj,{ShaderComponent:()=>fj,default:()=>hj});import{useContext as lwe,useEffect as Ey,useId as uwe,useMemo as Ry,useRef as Ay,useState as lj}from"react";import{createPortal as dwe}from"react-dom";import{jsx as uj,jsxs as fwe}from"react/jsx-runtime";function hO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function hwe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!hO(i)&&(n[r]=i);return n}var mwe,pwe,dj,fj,hj,mO=z(()=>{"use strict";mt();pt();gt();cj();mwe={display:"contents"},pwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},dj={blendMode:"normal",visible:!0};try{jc&&jc.props&&Object.entries(jc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(dj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}fj=t=>{let e=lwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=uwe(),s=Ry(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ry(()=>hwe(t,dj),[t]),d=Ry(()=>({...pwe,...t.transform}),[t.transform]),h=Ay(null),f=!!jc.capturesDOM,g=Ay(null),[y,_]=lj(!1),[b,S]=lj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Ey(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Ay(void 0),v=Ay(null);v.current===null&&(ce(a),v.current=ue(jc,u,s));let E=Ry(()=>({...e,shaderParentId:s}),[e,s]);Ey(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,jc.fragmentNode,n,c,v.current,jc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Ey(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Ay({}),M=Ry(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&hO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ey(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(hO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ey(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?dwe(uj("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return fwe(G.Provider,{value:E,children:[uj("span",{ref:h,style:mwe,"data-shader-id":s,children:!f&&t.children}),R]})},hj=fj});var pj=z(()=>{"use strict";ZG()});var _j={};yt(_j,{ShaderComponent:()=>xj,default:()=>bj});import{useContext as gwe,useEffect as Py,useId as ywe,useMemo as Iy,useRef as Ny,useState as gj}from"react";import{createPortal as vwe}from"react-dom";import{jsx as yj,jsxs as xwe}from"react/jsx-runtime";function pO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function bwe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!pO(i)&&(n[r]=i);return n}var _we,Swe,vj,xj,bj,gO=z(()=>{"use strict";mt();pt();gt();pj();_we={display:"contents"},Swe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},vj={blendMode:"normal",visible:!0};try{qc&&qc.props&&Object.entries(qc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(vj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}xj=t=>{let e=gwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=ywe(),s=Iy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Iy(()=>bwe(t,vj),[t]),d=Iy(()=>({...Swe,...t.transform}),[t.transform]),h=Ny(null),f=!!qc.capturesDOM,g=Ny(null),[y,_]=gj(!1),[b,S]=gj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Py(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Ny(void 0),v=Ny(null);v.current===null&&(ce(a),v.current=ue(qc,u,s));let E=Iy(()=>({...e,shaderParentId:s}),[e,s]);Py(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,qc.fragmentNode,n,c,v.current,qc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Py(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Ny({}),M=Iy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&pO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Py(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(pO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Py(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?vwe(yj("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return xwe(G.Provider,{value:E,children:[yj("span",{ref:h,style:_we,"data-shader-id":s,children:!f&&t.children}),R]})},bj=xj});var Sj=z(()=>{"use strict";KG()});var Rj={};yt(Rj,{ShaderComponent:()=>Cj,default:()=>Ej});import{useContext as wwe,useEffect as Oy,useId as Mwe,useMemo as Uy,useRef as Dy,useState as wj}from"react";import{createPortal as Twe}from"react-dom";import{jsx as Mj,jsxs as Cwe}from"react/jsx-runtime";function yO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Ewe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!yO(i)&&(n[r]=i);return n}var Rwe,Awe,Tj,Cj,Ej,vO=z(()=>{"use strict";mt();pt();gt();Sj();Rwe={display:"contents"},Awe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Tj={blendMode:"normal",visible:!0};try{Xc&&Xc.props&&Object.entries(Xc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Tj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Cj=t=>{let e=wwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Mwe(),s=Uy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Uy(()=>Ewe(t,Tj),[t]),d=Uy(()=>({...Awe,...t.transform}),[t.transform]),h=Dy(null),f=!!Xc.capturesDOM,g=Dy(null),[y,_]=wj(!1),[b,S]=wj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Oy(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Dy(void 0),v=Dy(null);v.current===null&&(ce(a),v.current=ue(Xc,u,s));let E=Uy(()=>({...e,shaderParentId:s}),[e,s]);Oy(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Xc.fragmentNode,n,c,v.current,Xc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Oy(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Dy({}),M=Uy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&yO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Oy(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(yO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Oy(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Twe(Mj("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Cwe(G.Provider,{value:E,children:[Mj("span",{ref:h,style:Rwe,"data-shader-id":s,children:!f&&t.children}),R]})},Ej=Cj});var Aj=z(()=>{"use strict";QG()});var Dj={};yt(Dj,{ShaderComponent:()=>Oj,default:()=>Uj});import{useContext as Pwe,useEffect as Fy,useId as Iwe,useMemo as Ly,useRef as ky,useState as Pj}from"react";import{createPortal as Nwe}from"react-dom";import{jsx as Ij,jsxs as Owe}from"react/jsx-runtime";function xO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Uwe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!xO(i)&&(n[r]=i);return n}var Dwe,Fwe,Nj,Oj,Uj,bO=z(()=>{"use strict";mt();pt();gt();Aj();Dwe={display:"contents"},Fwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Nj={blendMode:"normal",visible:!0};try{$c&&$c.props&&Object.entries($c.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Nj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Oj=t=>{let e=Pwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Iwe(),s=Ly(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ly(()=>Uwe(t,Nj),[t]),d=Ly(()=>({...Fwe,...t.transform}),[t.transform]),h=ky(null),f=!!$c.capturesDOM,g=ky(null),[y,_]=Pj(!1),[b,S]=Pj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Fy(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=ky(void 0),v=ky(null);v.current===null&&(ce(a),v.current=ue($c,u,s));let E=Ly(()=>({...e,shaderParentId:s}),[e,s]);Fy(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,$c.fragmentNode,n,c,v.current,$c,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Fy(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=ky({}),M=Ly(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&xO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Fy(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(xO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Fy(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Nwe(Ij("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Owe(G.Provider,{value:E,children:[Ij("span",{ref:h,style:Dwe,"data-shader-id":s,children:!f&&t.children}),R]})},Uj=Oj});var Fj=z(()=>{"use strict";e9()});var Gj={};yt(Gj,{ShaderComponent:()=>zj,default:()=>Vj});import{useContext as Lwe,useEffect as By,useId as kwe,useMemo as zy,useRef as Vy,useState as Lj}from"react";import{createPortal as Bwe}from"react-dom";import{jsx as kj,jsxs as zwe}from"react/jsx-runtime";function _O(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Vwe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!_O(i)&&(n[r]=i);return n}var Gwe,Hwe,Bj,zj,Vj,SO=z(()=>{"use strict";mt();pt();gt();Fj();Gwe={display:"contents"},Hwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Bj={blendMode:"normal",visible:!0};try{Yc&&Yc.props&&Object.entries(Yc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Bj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}zj=t=>{let e=Lwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=kwe(),s=zy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=zy(()=>Vwe(t,Bj),[t]),d=zy(()=>({...Hwe,...t.transform}),[t.transform]),h=Vy(null),f=!!Yc.capturesDOM,g=Vy(null),[y,_]=Lj(!1),[b,S]=Lj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));By(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Vy(void 0),v=Vy(null);v.current===null&&(ce(a),v.current=ue(Yc,u,s));let E=zy(()=>({...e,shaderParentId:s}),[e,s]);By(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Yc.fragmentNode,n,c,v.current,Yc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),By(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Vy({}),M=zy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&_O(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(By(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(_O(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),By(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Bwe(kj("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return zwe(G.Provider,{value:E,children:[kj("span",{ref:h,style:Gwe,"data-shader-id":s,children:!f&&t.children}),R]})},Vj=zj});var Hj=z(()=>{"use strict";t9()});var Yj={};yt(Yj,{ShaderComponent:()=>Xj,default:()=>$j});import{useContext as Wwe,useEffect as Gy,useId as jwe,useMemo as Hy,useRef as Wy,useState as Wj}from"react";import{createPortal as qwe}from"react-dom";import{jsx as jj,jsxs as Xwe}from"react/jsx-runtime";function wO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function $we(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!wO(i)&&(n[r]=i);return n}var Ywe,Zwe,qj,Xj,$j,MO=z(()=>{"use strict";mt();pt();gt();Hj();Ywe={display:"contents"},Zwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},qj={blendMode:"normal",visible:!0};try{Zc&&Zc.props&&Object.entries(Zc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(qj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Xj=t=>{let e=Wwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=jwe(),s=Hy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Hy(()=>$we(t,qj),[t]),d=Hy(()=>({...Zwe,...t.transform}),[t.transform]),h=Wy(null),f=!!Zc.capturesDOM,g=Wy(null),[y,_]=Wj(!1),[b,S]=Wj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Gy(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Wy(void 0),v=Wy(null);v.current===null&&(ce(a),v.current=ue(Zc,u,s));let E=Hy(()=>({...e,shaderParentId:s}),[e,s]);Gy(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Zc.fragmentNode,n,c,v.current,Zc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Gy(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Wy({}),M=Hy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&wO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Gy(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(wO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Gy(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?qwe(jj("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Xwe(G.Provider,{value:E,children:[jj("span",{ref:h,style:Ywe,"data-shader-id":s,children:!f&&t.children}),R]})},$j=Xj});var Zj=z(()=>{"use strict";r9()});var nq={};yt(nq,{ShaderComponent:()=>eq,default:()=>tq});import{useContext as Kwe,useEffect as jy,useId as Jwe,useMemo as qy,useRef as Xy,useState as Kj}from"react";import{createPortal as Qwe}from"react-dom";import{jsx as Jj,jsxs as eMe}from"react/jsx-runtime";function TO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function tMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!TO(i)&&(n[r]=i);return n}var nMe,rMe,Qj,eq,tq,CO=z(()=>{"use strict";mt();pt();gt();Zj();nMe={display:"contents"},rMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Qj={blendMode:"normal",visible:!0};try{Kc&&Kc.props&&Object.entries(Kc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Qj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}eq=t=>{let e=Kwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Jwe(),s=qy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=qy(()=>tMe(t,Qj),[t]),d=qy(()=>({...rMe,...t.transform}),[t.transform]),h=Xy(null),f=!!Kc.capturesDOM,g=Xy(null),[y,_]=Kj(!1),[b,S]=Kj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));jy(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Xy(void 0),v=Xy(null);v.current===null&&(ce(a),v.current=ue(Kc,u,s));let E=qy(()=>({...e,shaderParentId:s}),[e,s]);jy(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Kc.fragmentNode,n,c,v.current,Kc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),jy(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Xy({}),M=qy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&TO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(jy(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(TO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),jy(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Qwe(Jj("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return eMe(G.Provider,{value:E,children:[Jj("span",{ref:h,style:nMe,"data-shader-id":s,children:!f&&t.children}),R]})},tq=eq});var rq=z(()=>{"use strict";o9()});var lq={};yt(lq,{ShaderComponent:()=>aq,default:()=>cq});import{useContext as iMe,useEffect as $y,useId as oMe,useMemo as Yy,useRef as Zy,useState as iq}from"react";import{createPortal as sMe}from"react-dom";import{jsx as oq,jsxs as aMe}from"react/jsx-runtime";function EO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function cMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!EO(i)&&(n[r]=i);return n}var lMe,uMe,sq,aq,cq,RO=z(()=>{"use strict";mt();pt();gt();rq();lMe={display:"contents"},uMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},sq={blendMode:"normal",visible:!0};try{Qc&&Qc.props&&Object.entries(Qc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(sq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}aq=t=>{let e=iMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=oMe(),s=Yy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Yy(()=>cMe(t,sq),[t]),d=Yy(()=>({...uMe,...t.transform}),[t.transform]),h=Zy(null),f=!!Qc.capturesDOM,g=Zy(null),[y,_]=iq(!1),[b,S]=iq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));$y(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Zy(void 0),v=Zy(null);v.current===null&&(ce(a),v.current=ue(Qc,u,s));let E=Yy(()=>({...e,shaderParentId:s}),[e,s]);$y(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Qc.fragmentNode,n,c,v.current,Qc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),$y(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Zy({}),M=Yy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&EO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if($y(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(EO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),$y(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?sMe(oq("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return aMe(G.Provider,{value:E,children:[oq("span",{ref:h,style:lMe,"data-shader-id":s,children:!f&&t.children}),R]})},cq=aq});var uq=z(()=>{"use strict";i9()});var gq={};yt(gq,{ShaderComponent:()=>mq,default:()=>pq});import{useContext as dMe,useEffect as Ky,useId as fMe,useMemo as Jy,useRef as Qy,useState as dq}from"react";import{createPortal as hMe}from"react-dom";import{jsx as fq,jsxs as mMe}from"react/jsx-runtime";function AO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function pMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!AO(i)&&(n[r]=i);return n}var gMe,yMe,hq,mq,pq,PO=z(()=>{"use strict";mt();pt();gt();uq();gMe={display:"contents"},yMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},hq={blendMode:"normal",visible:!0};try{Jc&&Jc.props&&Object.entries(Jc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(hq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}mq=t=>{let e=dMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=fMe(),s=Jy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Jy(()=>pMe(t,hq),[t]),d=Jy(()=>({...yMe,...t.transform}),[t.transform]),h=Qy(null),f=!!Jc.capturesDOM,g=Qy(null),[y,_]=dq(!1),[b,S]=dq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Ky(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Qy(void 0),v=Qy(null);v.current===null&&(ce(a),v.current=ue(Jc,u,s));let E=Jy(()=>({...e,shaderParentId:s}),[e,s]);Ky(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Jc.fragmentNode,n,c,v.current,Jc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Ky(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Qy({}),M=Jy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&AO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ky(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(AO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ky(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?hMe(fq("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return mMe(G.Provider,{value:E,children:[fq("span",{ref:h,style:gMe,"data-shader-id":s,children:!f&&t.children}),R]})},pq=mq});var yq=z(()=>{"use strict";s9()});var wq={};yt(wq,{ShaderComponent:()=>_q,default:()=>Sq});import{useContext as vMe,useEffect as ev,useId as xMe,useMemo as tv,useRef as nv,useState as vq}from"react";import{createPortal as bMe}from"react-dom";import{jsx as xq,jsxs as _Me}from"react/jsx-runtime";function IO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function SMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!IO(i)&&(n[r]=i);return n}var wMe,MMe,bq,_q,Sq,NO=z(()=>{"use strict";mt();pt();gt();yq();wMe={display:"contents"},MMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},bq={blendMode:"normal",visible:!0};try{el&&el.props&&Object.entries(el.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(bq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}_q=t=>{let e=vMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=xMe(),s=tv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=tv(()=>SMe(t,bq),[t]),d=tv(()=>({...MMe,...t.transform}),[t.transform]),h=nv(null),f=!!el.capturesDOM,g=nv(null),[y,_]=vq(!1),[b,S]=vq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));ev(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=nv(void 0),v=nv(null);v.current===null&&(ce(a),v.current=ue(el,u,s));let E=tv(()=>({...e,shaderParentId:s}),[e,s]);ev(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,el.fragmentNode,n,c,v.current,el,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),ev(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=nv({}),M=tv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&IO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(ev(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(IO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ev(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?bMe(xq("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return _Me(G.Provider,{value:E,children:[xq("span",{ref:h,style:wMe,"data-shader-id":s,children:!f&&t.children}),R]})},Sq=_q});var Mq=z(()=>{"use strict";a9()});var Pq={};yt(Pq,{ShaderComponent:()=>Rq,default:()=>Aq});import{useContext as TMe,useEffect as rv,useId as CMe,useMemo as iv,useRef as ov,useState as Tq}from"react";import{createPortal as EMe}from"react-dom";import{jsx as Cq,jsxs as RMe}from"react/jsx-runtime";function OO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function AMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!OO(i)&&(n[r]=i);return n}var PMe,IMe,Eq,Rq,Aq,UO=z(()=>{"use strict";mt();pt();gt();Mq();PMe={display:"contents"},IMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Eq={blendMode:"normal",visible:!0};try{tl&&tl.props&&Object.entries(tl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Eq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Rq=t=>{let e=TMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=CMe(),s=iv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=iv(()=>AMe(t,Eq),[t]),d=iv(()=>({...IMe,...t.transform}),[t.transform]),h=ov(null),f=!!tl.capturesDOM,g=ov(null),[y,_]=Tq(!1),[b,S]=Tq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));rv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=ov(void 0),v=ov(null);v.current===null&&(ce(a),v.current=ue(tl,u,s));let E=iv(()=>({...e,shaderParentId:s}),[e,s]);rv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,tl.fragmentNode,n,c,v.current,tl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),rv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=ov({}),M=iv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&OO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(rv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(OO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),rv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?EMe(Cq("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return RMe(G.Provider,{value:E,children:[Cq("span",{ref:h,style:PMe,"data-shader-id":s,children:!f&&t.children}),R]})},Aq=Rq});var Iq=z(()=>{"use strict";u9()});var Lq={};yt(Lq,{ShaderComponent:()=>Dq,default:()=>Fq});import{useContext as NMe,useEffect as sv,useId as OMe,useMemo as av,useRef as cv,useState as Nq}from"react";import{createPortal as UMe}from"react-dom";import{jsx as Oq,jsxs as DMe}from"react/jsx-runtime";function DO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function FMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!DO(i)&&(n[r]=i);return n}var LMe,kMe,Uq,Dq,Fq,FO=z(()=>{"use strict";mt();pt();gt();Iq();LMe={display:"contents"},kMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Uq={blendMode:"normal",visible:!0};try{nl&&nl.props&&Object.entries(nl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Uq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Dq=t=>{let e=NMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=OMe(),s=av(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=av(()=>FMe(t,Uq),[t]),d=av(()=>({...kMe,...t.transform}),[t.transform]),h=cv(null),f=!!nl.capturesDOM,g=cv(null),[y,_]=Nq(!1),[b,S]=Nq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));sv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=cv(void 0),v=cv(null);v.current===null&&(ce(a),v.current=ue(nl,u,s));let E=av(()=>({...e,shaderParentId:s}),[e,s]);sv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,nl.fragmentNode,n,c,v.current,nl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),sv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=cv({}),M=av(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&DO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(sv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(DO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),sv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?UMe(Oq("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return DMe(G.Provider,{value:E,children:[Oq("span",{ref:h,style:LMe,"data-shader-id":s,children:!f&&t.children}),R]})},Fq=Dq});var kq=z(()=>{"use strict";f9()});var Wq={};yt(Wq,{ShaderComponent:()=>Gq,default:()=>Hq});import{useContext as BMe,useEffect as lv,useId as zMe,useMemo as uv,useRef as dv,useState as Bq}from"react";import{createPortal as VMe}from"react-dom";import{jsx as zq,jsxs as GMe}from"react/jsx-runtime";function LO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function HMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!LO(i)&&(n[r]=i);return n}var WMe,jMe,Vq,Gq,Hq,kO=z(()=>{"use strict";mt();pt();gt();kq();WMe={display:"contents"},jMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Vq={blendMode:"normal",visible:!0};try{rl&&rl.props&&Object.entries(rl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Vq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Gq=t=>{let e=BMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=zMe(),s=uv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=uv(()=>HMe(t,Vq),[t]),d=uv(()=>({...jMe,...t.transform}),[t.transform]),h=dv(null),f=!!rl.capturesDOM,g=dv(null),[y,_]=Bq(!1),[b,S]=Bq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));lv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=dv(void 0),v=dv(null);v.current===null&&(ce(a),v.current=ue(rl,u,s));let E=uv(()=>({...e,shaderParentId:s}),[e,s]);lv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,rl.fragmentNode,n,c,v.current,rl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),lv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=dv({}),M=uv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&LO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(lv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(LO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),lv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?VMe(zq("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return GMe(G.Provider,{value:E,children:[zq("span",{ref:h,style:WMe,"data-shader-id":s,children:!f&&t.children}),R]})},Hq=Gq});var jq=z(()=>{"use strict";m9()});var Kq={};yt(Kq,{ShaderComponent:()=>Yq,default:()=>Zq});import{useContext as qMe,useEffect as fv,useId as XMe,useMemo as hv,useRef as mv,useState as qq}from"react";import{createPortal as $Me}from"react-dom";import{jsx as Xq,jsxs as YMe}from"react/jsx-runtime";function BO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function ZMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!BO(i)&&(n[r]=i);return n}var KMe,JMe,$q,Yq,Zq,zO=z(()=>{"use strict";mt();pt();gt();jq();KMe={display:"contents"},JMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},$q={blendMode:"normal",visible:!0};try{il&&il.props&&Object.entries(il.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&($q[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Yq=t=>{let e=qMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=XMe(),s=hv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=hv(()=>ZMe(t,$q),[t]),d=hv(()=>({...JMe,...t.transform}),[t.transform]),h=mv(null),f=!!il.capturesDOM,g=mv(null),[y,_]=qq(!1),[b,S]=qq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));fv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=mv(void 0),v=mv(null);v.current===null&&(ce(a),v.current=ue(il,u,s));let E=hv(()=>({...e,shaderParentId:s}),[e,s]);fv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,il.fragmentNode,n,c,v.current,il,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),fv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=mv({}),M=hv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&BO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(fv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(BO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),fv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?$Me(Xq("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return YMe(G.Provider,{value:E,children:[Xq("span",{ref:h,style:KMe,"data-shader-id":s,children:!f&&t.children}),R]})},Zq=Yq});var Jq=z(()=>{"use strict";y9()});var iX={};yt(iX,{ShaderComponent:()=>nX,default:()=>rX});import{useContext as QMe,useEffect as pv,useId as e1e,useMemo as gv,useRef as yv,useState as Qq}from"react";import{createPortal as t1e}from"react-dom";import{jsx as eX,jsxs as n1e}from"react/jsx-runtime";function VO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function r1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!VO(i)&&(n[r]=i);return n}var i1e,o1e,tX,nX,rX,GO=z(()=>{"use strict";mt();pt();gt();Jq();i1e={display:"contents"},o1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},tX={blendMode:"normal",visible:!0};try{ol&&ol.props&&Object.entries(ol.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(tX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}nX=t=>{let e=QMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=e1e(),s=gv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=gv(()=>r1e(t,tX),[t]),d=gv(()=>({...o1e,...t.transform}),[t.transform]),h=yv(null),f=!!ol.capturesDOM,g=yv(null),[y,_]=Qq(!1),[b,S]=Qq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));pv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=yv(void 0),v=yv(null);v.current===null&&(ce(a),v.current=ue(ol,u,s));let E=gv(()=>({...e,shaderParentId:s}),[e,s]);pv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,ol.fragmentNode,n,c,v.current,ol,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),pv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=yv({}),M=gv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&VO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(pv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(VO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),pv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?t1e(eX("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return n1e(G.Provider,{value:E,children:[eX("span",{ref:h,style:i1e,"data-shader-id":s,children:!f&&t.children}),R]})},rX=nX});var oX=z(()=>{"use strict";v9()});var dX={};yt(dX,{ShaderComponent:()=>lX,default:()=>uX});import{useContext as s1e,useEffect as vv,useId as a1e,useMemo as xv,useRef as bv,useState as sX}from"react";import{createPortal as c1e}from"react-dom";import{jsx as aX,jsxs as l1e}from"react/jsx-runtime";function HO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function u1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!HO(i)&&(n[r]=i);return n}var d1e,f1e,cX,lX,uX,WO=z(()=>{"use strict";mt();pt();gt();oX();d1e={display:"contents"},f1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},cX={blendMode:"normal",visible:!0};try{sl&&sl.props&&Object.entries(sl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(cX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}lX=t=>{let e=s1e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=a1e(),s=xv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=xv(()=>u1e(t,cX),[t]),d=xv(()=>({...f1e,...t.transform}),[t.transform]),h=bv(null),f=!!sl.capturesDOM,g=bv(null),[y,_]=sX(!1),[b,S]=sX(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));vv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=bv(void 0),v=bv(null);v.current===null&&(ce(a),v.current=ue(sl,u,s));let E=xv(()=>({...e,shaderParentId:s}),[e,s]);vv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,sl.fragmentNode,n,c,v.current,sl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),vv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=bv({}),M=xv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&HO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(vv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(HO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),vv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?c1e(aX("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return l1e(G.Provider,{value:E,children:[aX("span",{ref:h,style:d1e,"data-shader-id":s,children:!f&&t.children}),R]})},uX=lX});var fX=z(()=>{"use strict";x9()});var vX={};yt(vX,{ShaderComponent:()=>gX,default:()=>yX});import{useContext as h1e,useEffect as _v,useId as m1e,useMemo as Sv,useRef as wv,useState as hX}from"react";import{createPortal as p1e}from"react-dom";import{jsx as mX,jsxs as g1e}from"react/jsx-runtime";function jO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function y1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!jO(i)&&(n[r]=i);return n}var v1e,x1e,pX,gX,yX,qO=z(()=>{"use strict";mt();pt();gt();fX();v1e={display:"contents"},x1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},pX={blendMode:"normal",visible:!0};try{al&&al.props&&Object.entries(al.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(pX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}gX=t=>{let e=h1e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=m1e(),s=Sv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Sv(()=>y1e(t,pX),[t]),d=Sv(()=>({...x1e,...t.transform}),[t.transform]),h=wv(null),f=!!al.capturesDOM,g=wv(null),[y,_]=hX(!1),[b,S]=hX(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));_v(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=wv(void 0),v=wv(null);v.current===null&&(ce(a),v.current=ue(al,u,s));let E=Sv(()=>({...e,shaderParentId:s}),[e,s]);_v(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,al.fragmentNode,n,c,v.current,al,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),_v(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=wv({}),M=Sv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&jO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(_v(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(jO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),_v(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?p1e(mX("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return g1e(G.Provider,{value:E,children:[mX("span",{ref:h,style:v1e,"data-shader-id":s,children:!f&&t.children}),R]})},yX=gX});var xX=z(()=>{"use strict";b9()});var TX={};yt(TX,{ShaderComponent:()=>wX,default:()=>MX});import{useContext as b1e,useEffect as Mv,useId as _1e,useMemo as Tv,useRef as Cv,useState as bX}from"react";import{createPortal as S1e}from"react-dom";import{jsx as _X,jsxs as w1e}from"react/jsx-runtime";function XO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function M1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!XO(i)&&(n[r]=i);return n}var T1e,C1e,SX,wX,MX,$O=z(()=>{"use strict";mt();pt();gt();xX();T1e={display:"contents"},C1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},SX={blendMode:"normal",visible:!0};try{cl&&cl.props&&Object.entries(cl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(SX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}wX=t=>{let e=b1e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=_1e(),s=Tv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Tv(()=>M1e(t,SX),[t]),d=Tv(()=>({...C1e,...t.transform}),[t.transform]),h=Cv(null),f=!!cl.capturesDOM,g=Cv(null),[y,_]=bX(!1),[b,S]=bX(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Mv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Cv(void 0),v=Cv(null);v.current===null&&(ce(a),v.current=ue(cl,u,s));let E=Tv(()=>({...e,shaderParentId:s}),[e,s]);Mv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,cl.fragmentNode,n,c,v.current,cl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Mv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Cv({}),M=Tv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&XO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Mv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(XO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Mv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?S1e(_X("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return w1e(G.Provider,{value:E,children:[_X("span",{ref:h,style:T1e,"data-shader-id":s,children:!f&&t.children}),R]})},MX=wX});var CX=z(()=>{"use strict";_9()});var NX={};yt(NX,{ShaderComponent:()=>PX,default:()=>IX});import{useContext as E1e,useEffect as Ev,useId as R1e,useMemo as Rv,useRef as Av,useState as EX}from"react";import{createPortal as A1e}from"react-dom";import{jsx as RX,jsxs as P1e}from"react/jsx-runtime";function YO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function I1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!YO(i)&&(n[r]=i);return n}var N1e,O1e,AX,PX,IX,ZO=z(()=>{"use strict";mt();pt();gt();CX();N1e={display:"contents"},O1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},AX={blendMode:"normal",visible:!0};try{ll&&ll.props&&Object.entries(ll.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(AX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}PX=t=>{let e=E1e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=R1e(),s=Rv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Rv(()=>I1e(t,AX),[t]),d=Rv(()=>({...O1e,...t.transform}),[t.transform]),h=Av(null),f=!!ll.capturesDOM,g=Av(null),[y,_]=EX(!1),[b,S]=EX(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Ev(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Av(void 0),v=Av(null);v.current===null&&(ce(a),v.current=ue(ll,u,s));let E=Rv(()=>({...e,shaderParentId:s}),[e,s]);Ev(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,ll.fragmentNode,n,c,v.current,ll,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Ev(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Av({}),M=Rv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&YO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ev(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(YO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ev(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?A1e(RX("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return P1e(G.Provider,{value:E,children:[RX("span",{ref:h,style:N1e,"data-shader-id":s,children:!f&&t.children}),R]})},IX=PX});var OX=z(()=>{"use strict";S9()});var BX={};yt(BX,{ShaderComponent:()=>LX,default:()=>kX});import{useContext as U1e,useEffect as Pv,useId as D1e,useMemo as Iv,useRef as Nv,useState as UX}from"react";import{createPortal as F1e}from"react-dom";import{jsx as DX,jsxs as L1e}from"react/jsx-runtime";function KO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function k1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!KO(i)&&(n[r]=i);return n}var B1e,z1e,FX,LX,kX,JO=z(()=>{"use strict";mt();pt();gt();OX();B1e={display:"contents"},z1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},FX={blendMode:"normal",visible:!0};try{ul&&ul.props&&Object.entries(ul.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(FX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}LX=t=>{let e=U1e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=D1e(),s=Iv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Iv(()=>k1e(t,FX),[t]),d=Iv(()=>({...z1e,...t.transform}),[t.transform]),h=Nv(null),f=!!ul.capturesDOM,g=Nv(null),[y,_]=UX(!1),[b,S]=UX(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Pv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Nv(void 0),v=Nv(null);v.current===null&&(ce(a),v.current=ue(ul,u,s));let E=Iv(()=>({...e,shaderParentId:s}),[e,s]);Pv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,ul.fragmentNode,n,c,v.current,ul,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Pv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Nv({}),M=Iv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&KO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Pv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(KO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Pv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?F1e(DX("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return L1e(G.Provider,{value:E,children:[DX("span",{ref:h,style:B1e,"data-shader-id":s,children:!f&&t.children}),R]})},kX=LX});var zX=z(()=>{"use strict";w9()});var qX={};yt(qX,{ShaderComponent:()=>WX,default:()=>jX});import{useContext as V1e,useEffect as Ov,useId as G1e,useMemo as Uv,useRef as Dv,useState as VX}from"react";import{createPortal as H1e}from"react-dom";import{jsx as GX,jsxs as W1e}from"react/jsx-runtime";function QO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function j1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!QO(i)&&(n[r]=i);return n}var q1e,X1e,HX,WX,jX,eU=z(()=>{"use strict";mt();pt();gt();zX();q1e={display:"contents"},X1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},HX={blendMode:"normal",visible:!0};try{dl&&dl.props&&Object.entries(dl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(HX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}WX=t=>{let e=V1e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=G1e(),s=Uv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Uv(()=>j1e(t,HX),[t]),d=Uv(()=>({...X1e,...t.transform}),[t.transform]),h=Dv(null),f=!!dl.capturesDOM,g=Dv(null),[y,_]=VX(!1),[b,S]=VX(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Ov(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Dv(void 0),v=Dv(null);v.current===null&&(ce(a),v.current=ue(dl,u,s));let E=Uv(()=>({...e,shaderParentId:s}),[e,s]);Ov(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,dl.fragmentNode,n,c,v.current,dl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Ov(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Dv({}),M=Uv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&QO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ov(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(QO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ov(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?H1e(GX("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return W1e(G.Provider,{value:E,children:[GX("span",{ref:h,style:q1e,"data-shader-id":s,children:!f&&t.children}),R]})},jX=WX});var XX=z(()=>{"use strict";T9()});var QX={};yt(QX,{ShaderComponent:()=>KX,default:()=>JX});import{useContext as $1e,useEffect as Fv,useId as Y1e,useMemo as Lv,useRef as kv,useState as $X}from"react";import{createPortal as Z1e}from"react-dom";import{jsx as YX,jsxs as K1e}from"react/jsx-runtime";function tU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function J1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!tU(i)&&(n[r]=i);return n}var Q1e,eTe,ZX,KX,JX,nU=z(()=>{"use strict";mt();pt();gt();XX();Q1e={display:"contents"},eTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},ZX={blendMode:"normal",visible:!0};try{fl&&fl.props&&Object.entries(fl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(ZX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}KX=t=>{let e=$1e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Y1e(),s=Lv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Lv(()=>J1e(t,ZX),[t]),d=Lv(()=>({...eTe,...t.transform}),[t.transform]),h=kv(null),f=!!fl.capturesDOM,g=kv(null),[y,_]=$X(!1),[b,S]=$X(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Fv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=kv(void 0),v=kv(null);v.current===null&&(ce(a),v.current=ue(fl,u,s));let E=Lv(()=>({...e,shaderParentId:s}),[e,s]);Fv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,fl.fragmentNode,n,c,v.current,fl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Fv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=kv({}),M=Lv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&tU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Fv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(tU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Fv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Z1e(YX("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return K1e(G.Provider,{value:E,children:[YX("span",{ref:h,style:Q1e,"data-shader-id":s,children:!f&&t.children}),R]})},JX=KX});var e$=z(()=>{"use strict";C9()});var s$={};yt(s$,{ShaderComponent:()=>i$,default:()=>o$});import{useContext as tTe,useEffect as Bv,useId as nTe,useMemo as zv,useRef as Vv,useState as t$}from"react";import{createPortal as rTe}from"react-dom";import{jsx as n$,jsxs as iTe}from"react/jsx-runtime";function rU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function oTe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!rU(i)&&(n[r]=i);return n}var sTe,aTe,r$,i$,o$,iU=z(()=>{"use strict";mt();pt();gt();e$();sTe={display:"contents"},aTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},r$={blendMode:"normal",visible:!0};try{hl&&hl.props&&Object.entries(hl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(r$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}i$=t=>{let e=tTe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=nTe(),s=zv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=zv(()=>oTe(t,r$),[t]),d=zv(()=>({...aTe,...t.transform}),[t.transform]),h=Vv(null),f=!!hl.capturesDOM,g=Vv(null),[y,_]=t$(!1),[b,S]=t$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Bv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Vv(void 0),v=Vv(null);v.current===null&&(ce(a),v.current=ue(hl,u,s));let E=zv(()=>({...e,shaderParentId:s}),[e,s]);Bv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,hl.fragmentNode,n,c,v.current,hl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Bv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Vv({}),M=zv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&rU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Bv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(rU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Bv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?rTe(n$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return iTe(G.Provider,{value:E,children:[n$("span",{ref:h,style:sTe,"data-shader-id":s,children:!f&&t.children}),R]})},o$=i$});var a$=z(()=>{"use strict";E9()});var h$={};yt(h$,{ShaderComponent:()=>d$,default:()=>f$});import{useContext as cTe,useEffect as Gv,useId as lTe,useMemo as Hv,useRef as Wv,useState as c$}from"react";import{createPortal as uTe}from"react-dom";import{jsx as l$,jsxs as dTe}from"react/jsx-runtime";function oU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function fTe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!oU(i)&&(n[r]=i);return n}var hTe,mTe,u$,d$,f$,sU=z(()=>{"use strict";mt();pt();gt();a$();hTe={display:"contents"},mTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},u$={blendMode:"normal",visible:!0};try{ml&&ml.props&&Object.entries(ml.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(u$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}d$=t=>{let e=cTe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=lTe(),s=Hv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Hv(()=>fTe(t,u$),[t]),d=Hv(()=>({...mTe,...t.transform}),[t.transform]),h=Wv(null),f=!!ml.capturesDOM,g=Wv(null),[y,_]=c$(!1),[b,S]=c$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Gv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Wv(void 0),v=Wv(null);v.current===null&&(ce(a),v.current=ue(ml,u,s));let E=Hv(()=>({...e,shaderParentId:s}),[e,s]);Gv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,ml.fragmentNode,n,c,v.current,ml,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Gv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Wv({}),M=Hv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&oU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Gv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(oU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Gv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?uTe(l$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return dTe(G.Provider,{value:E,children:[l$("span",{ref:h,style:hTe,"data-shader-id":s,children:!f&&t.children}),R]})},f$=d$});var m$=z(()=>{"use strict";R9()});var b$={};yt(b$,{ShaderComponent:()=>v$,default:()=>x$});import{useContext as pTe,useEffect as jv,useId as gTe,useMemo as qv,useRef as Xv,useState as p$}from"react";import{createPortal as yTe}from"react-dom";import{jsx as g$,jsxs as vTe}from"react/jsx-runtime";function aU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function xTe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!aU(i)&&(n[r]=i);return n}var bTe,_Te,y$,v$,x$,cU=z(()=>{"use strict";mt();pt();gt();m$();bTe={display:"contents"},_Te={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},y$={blendMode:"normal",visible:!0};try{pl&&pl.props&&Object.entries(pl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(y$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}v$=t=>{let e=pTe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=gTe(),s=qv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=qv(()=>xTe(t,y$),[t]),d=qv(()=>({..._Te,...t.transform}),[t.transform]),h=Xv(null),f=!!pl.capturesDOM,g=Xv(null),[y,_]=p$(!1),[b,S]=p$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));jv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Xv(void 0),v=Xv(null);v.current===null&&(ce(a),v.current=ue(pl,u,s));let E=qv(()=>({...e,shaderParentId:s}),[e,s]);jv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,pl.fragmentNode,n,c,v.current,pl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),jv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Xv({}),M=qv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&aU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(jv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(aU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),jv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?yTe(g$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return vTe(G.Provider,{value:E,children:[g$("span",{ref:h,style:bTe,"data-shader-id":s,children:!f&&t.children}),R]})},x$=v$});var _$=z(()=>{"use strict";A9()});var E$={};yt(E$,{ShaderComponent:()=>T$,default:()=>C$});import{useContext as STe,useEffect as $v,useId as wTe,useMemo as Yv,useRef as Zv,useState as S$}from"react";import{createPortal as MTe}from"react-dom";import{jsx as w$,jsxs as TTe}from"react/jsx-runtime";function lU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function CTe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!lU(i)&&(n[r]=i);return n}var ETe,RTe,M$,T$,C$,uU=z(()=>{"use strict";mt();pt();gt();_$();ETe={display:"contents"},RTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},M$={blendMode:"normal",visible:!0};try{gl&&gl.props&&Object.entries(gl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(M$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}T$=t=>{let e=STe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=wTe(),s=Yv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Yv(()=>CTe(t,M$),[t]),d=Yv(()=>({...RTe,...t.transform}),[t.transform]),h=Zv(null),f=!!gl.capturesDOM,g=Zv(null),[y,_]=S$(!1),[b,S]=S$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));$v(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Zv(void 0),v=Zv(null);v.current===null&&(ce(a),v.current=ue(gl,u,s));let E=Yv(()=>({...e,shaderParentId:s}),[e,s]);$v(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,gl.fragmentNode,n,c,v.current,gl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),$v(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Zv({}),M=Yv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&lU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if($v(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(lU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),$v(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?MTe(w$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return TTe(G.Provider,{value:E,children:[w$("span",{ref:h,style:ETe,"data-shader-id":s,children:!f&&t.children}),R]})},C$=T$});var R$=z(()=>{"use strict";P9()});var U$={};yt(U$,{ShaderComponent:()=>N$,default:()=>O$});import{useContext as ATe,useEffect as Kv,useId as PTe,useMemo as Jv,useRef as Qv,useState as A$}from"react";import{createPortal as ITe}from"react-dom";import{jsx as P$,jsxs as NTe}from"react/jsx-runtime";function dU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function OTe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!dU(i)&&(n[r]=i);return n}var UTe,DTe,I$,N$,O$,fU=z(()=>{"use strict";mt();pt();gt();R$();UTe={display:"contents"},DTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},I$={blendMode:"normal",visible:!0};try{yl&&yl.props&&Object.entries(yl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(I$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}N$=t=>{let e=ATe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=PTe(),s=Jv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Jv(()=>OTe(t,I$),[t]),d=Jv(()=>({...DTe,...t.transform}),[t.transform]),h=Qv(null),f=!!yl.capturesDOM,g=Qv(null),[y,_]=A$(!1),[b,S]=A$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Kv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Qv(void 0),v=Qv(null);v.current===null&&(ce(a),v.current=ue(yl,u,s));let E=Jv(()=>({...e,shaderParentId:s}),[e,s]);Kv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,yl.fragmentNode,n,c,v.current,yl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Kv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Qv({}),M=Jv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&dU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Kv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(dU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Kv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?ITe(P$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return NTe(G.Provider,{value:E,children:[P$("span",{ref:h,style:UTe,"data-shader-id":s,children:!f&&t.children}),R]})},O$=N$});var D$=z(()=>{"use strict";I9()});var V$={};yt(V$,{ShaderComponent:()=>B$,default:()=>z$});import{useContext as FTe,useEffect as ex,useId as LTe,useMemo as tx,useRef as nx,useState as F$}from"react";import{createPortal as kTe}from"react-dom";import{jsx as L$,jsxs as BTe}from"react/jsx-runtime";function hU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function zTe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!hU(i)&&(n[r]=i);return n}var VTe,GTe,k$,B$,z$,mU=z(()=>{"use strict";mt();pt();gt();D$();VTe={display:"contents"},GTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},k$={blendMode:"normal",visible:!0};try{vl&&vl.props&&Object.entries(vl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(k$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}B$=t=>{let e=FTe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=LTe(),s=tx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=tx(()=>zTe(t,k$),[t]),d=tx(()=>({...GTe,...t.transform}),[t.transform]),h=nx(null),f=!!vl.capturesDOM,g=nx(null),[y,_]=F$(!1),[b,S]=F$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));ex(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=nx(void 0),v=nx(null);v.current===null&&(ce(a),v.current=ue(vl,u,s));let E=tx(()=>({...e,shaderParentId:s}),[e,s]);ex(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,vl.fragmentNode,n,c,v.current,vl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),ex(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=nx({}),M=tx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&hU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(ex(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(hU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ex(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?kTe(L$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return BTe(G.Provider,{value:E,children:[L$("span",{ref:h,style:VTe,"data-shader-id":s,children:!f&&t.children}),R]})},z$=B$});var G$=z(()=>{"use strict";N9()});var $$={};yt($$,{ShaderComponent:()=>q$,default:()=>X$});import{useContext as HTe,useEffect as rx,useId as WTe,useMemo as ix,useRef as ox,useState as H$}from"react";import{createPortal as jTe}from"react-dom";import{jsx as W$,jsxs as qTe}from"react/jsx-runtime";function pU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function XTe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!pU(i)&&(n[r]=i);return n}var $Te,YTe,j$,q$,X$,gU=z(()=>{"use strict";mt();pt();gt();G$();$Te={display:"contents"},YTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},j$={blendMode:"normal",visible:!0};try{xl&&xl.props&&Object.entries(xl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(j$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}q$=t=>{let e=HTe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=WTe(),s=ix(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ix(()=>XTe(t,j$),[t]),d=ix(()=>({...YTe,...t.transform}),[t.transform]),h=ox(null),f=!!xl.capturesDOM,g=ox(null),[y,_]=H$(!1),[b,S]=H$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));rx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=ox(void 0),v=ox(null);v.current===null&&(ce(a),v.current=ue(xl,u,s));let E=ix(()=>({...e,shaderParentId:s}),[e,s]);rx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,xl.fragmentNode,n,c,v.current,xl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),rx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=ox({}),M=ix(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&pU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(rx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(pU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),rx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?jTe(W$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return qTe(G.Provider,{value:E,children:[W$("span",{ref:h,style:$Te,"data-shader-id":s,children:!f&&t.children}),R]})},X$=q$});var Y$=z(()=>{"use strict";O9()});var tY={};yt(tY,{ShaderComponent:()=>Q$,default:()=>eY});import{useContext as ZTe,useEffect as sx,useId as KTe,useMemo as ax,useRef as cx,useState as Z$}from"react";import{createPortal as JTe}from"react-dom";import{jsx as K$,jsxs as QTe}from"react/jsx-runtime";function yU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function eCe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!yU(i)&&(n[r]=i);return n}var tCe,nCe,J$,Q$,eY,vU=z(()=>{"use strict";mt();pt();gt();Y$();tCe={display:"contents"},nCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},J$={blendMode:"normal",visible:!0};try{bl&&bl.props&&Object.entries(bl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(J$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Q$=t=>{let e=ZTe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=KTe(),s=ax(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ax(()=>eCe(t,J$),[t]),d=ax(()=>({...nCe,...t.transform}),[t.transform]),h=cx(null),f=!!bl.capturesDOM,g=cx(null),[y,_]=Z$(!1),[b,S]=Z$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));sx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=cx(void 0),v=cx(null);v.current===null&&(ce(a),v.current=ue(bl,u,s));let E=ax(()=>({...e,shaderParentId:s}),[e,s]);sx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,bl.fragmentNode,n,c,v.current,bl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),sx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=cx({}),M=ax(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&yU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(sx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(yU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),sx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?JTe(K$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return QTe(G.Provider,{value:E,children:[K$("span",{ref:h,style:tCe,"data-shader-id":s,children:!f&&t.children}),R]})},eY=Q$});var nY=z(()=>{"use strict";D9()});var cY={};yt(cY,{ShaderComponent:()=>sY,default:()=>aY});import{useContext as rCe,useEffect as lx,useId as iCe,useMemo as ux,useRef as dx,useState as rY}from"react";import{createPortal as oCe}from"react-dom";import{jsx as iY,jsxs as sCe}from"react/jsx-runtime";function xU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function aCe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!xU(i)&&(n[r]=i);return n}var cCe,lCe,oY,sY,aY,bU=z(()=>{"use strict";mt();pt();gt();nY();cCe={display:"contents"},lCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},oY={blendMode:"normal",visible:!0};try{_l&&_l.props&&Object.entries(_l.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(oY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}sY=t=>{let e=rCe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=iCe(),s=ux(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ux(()=>aCe(t,oY),[t]),d=ux(()=>({...lCe,...t.transform}),[t.transform]),h=dx(null),f=!!_l.capturesDOM,g=dx(null),[y,_]=rY(!1),[b,S]=rY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));lx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=dx(void 0),v=dx(null);v.current===null&&(ce(a),v.current=ue(_l,u,s));let E=ux(()=>({...e,shaderParentId:s}),[e,s]);lx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,_l.fragmentNode,n,c,v.current,_l,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),lx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=dx({}),M=ux(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&xU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(lx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(xU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),lx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?oCe(iY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return sCe(G.Provider,{value:E,children:[iY("span",{ref:h,style:cCe,"data-shader-id":s,children:!f&&t.children}),R]})},aY=sY});var lY=z(()=>{"use strict";F9()});var pY={};yt(pY,{ShaderComponent:()=>hY,default:()=>mY});import{useContext as uCe,useEffect as fx,useId as dCe,useMemo as hx,useRef as mx,useState as uY}from"react";import{createPortal as fCe}from"react-dom";import{jsx as dY,jsxs as hCe}from"react/jsx-runtime";function _U(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function mCe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!_U(i)&&(n[r]=i);return n}var pCe,gCe,fY,hY,mY,SU=z(()=>{"use strict";mt();pt();gt();lY();pCe={display:"contents"},gCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},fY={blendMode:"normal",visible:!0};try{Sl&&Sl.props&&Object.entries(Sl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(fY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}hY=t=>{let e=uCe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=dCe(),s=hx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=hx(()=>mCe(t,fY),[t]),d=hx(()=>({...gCe,...t.transform}),[t.transform]),h=mx(null),f=!!Sl.capturesDOM,g=mx(null),[y,_]=uY(!1),[b,S]=uY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));fx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=mx(void 0),v=mx(null);v.current===null&&(ce(a),v.current=ue(Sl,u,s));let E=hx(()=>({...e,shaderParentId:s}),[e,s]);fx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Sl.fragmentNode,n,c,v.current,Sl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),fx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=mx({}),M=hx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&_U(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(fx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(_U(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),fx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?fCe(dY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return hCe(G.Provider,{value:E,children:[dY("span",{ref:h,style:pCe,"data-shader-id":s,children:!f&&t.children}),R]})},mY=hY});var gY=z(()=>{"use strict";L9()});var SY={};yt(SY,{ShaderComponent:()=>bY,default:()=>_Y});import{useContext as yCe,useEffect as px,useId as vCe,useMemo as gx,useRef as yx,useState as yY}from"react";import{createPortal as xCe}from"react-dom";import{jsx as vY,jsxs as bCe}from"react/jsx-runtime";function wU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function _Ce(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!wU(i)&&(n[r]=i);return n}var SCe,wCe,xY,bY,_Y,MU=z(()=>{"use strict";mt();pt();gt();gY();SCe={display:"contents"},wCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},xY={blendMode:"normal",visible:!0};try{wl&&wl.props&&Object.entries(wl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(xY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}bY=t=>{let e=yCe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=vCe(),s=gx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=gx(()=>_Ce(t,xY),[t]),d=gx(()=>({...wCe,...t.transform}),[t.transform]),h=yx(null),f=!!wl.capturesDOM,g=yx(null),[y,_]=yY(!1),[b,S]=yY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));px(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=yx(void 0),v=yx(null);v.current===null&&(ce(a),v.current=ue(wl,u,s));let E=gx(()=>({...e,shaderParentId:s}),[e,s]);px(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,wl.fragmentNode,n,c,v.current,wl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),px(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=yx({}),M=gx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&wU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(px(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(wU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),px(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?xCe(vY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return bCe(G.Provider,{value:E,children:[vY("span",{ref:h,style:SCe,"data-shader-id":s,children:!f&&t.children}),R]})},_Y=bY});var wY=z(()=>{"use strict";k9()});var AY={};yt(AY,{ShaderComponent:()=>EY,default:()=>RY});import{useContext as MCe,useEffect as vx,useId as TCe,useMemo as xx,useRef as bx,useState as MY}from"react";import{createPortal as CCe}from"react-dom";import{jsx as TY,jsxs as ECe}from"react/jsx-runtime";function TU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function RCe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!TU(i)&&(n[r]=i);return n}var ACe,PCe,CY,EY,RY,CU=z(()=>{"use strict";mt();pt();gt();wY();ACe={display:"contents"},PCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},CY={blendMode:"normal",visible:!0};try{Ml&&Ml.props&&Object.entries(Ml.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(CY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}EY=t=>{let e=MCe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=TCe(),s=xx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=xx(()=>RCe(t,CY),[t]),d=xx(()=>({...PCe,...t.transform}),[t.transform]),h=bx(null),f=!!Ml.capturesDOM,g=bx(null),[y,_]=MY(!1),[b,S]=MY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));vx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=bx(void 0),v=bx(null);v.current===null&&(ce(a),v.current=ue(Ml,u,s));let E=xx(()=>({...e,shaderParentId:s}),[e,s]);vx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ml.fragmentNode,n,c,v.current,Ml,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),vx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=bx({}),M=xx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&TU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(vx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(TU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),vx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?CCe(TY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return ECe(G.Provider,{value:E,children:[TY("span",{ref:h,style:ACe,"data-shader-id":s,children:!f&&t.children}),R]})},RY=EY});var PY=z(()=>{"use strict";B9()});var FY={};yt(FY,{ShaderComponent:()=>UY,default:()=>DY});import{useContext as ICe,useEffect as _x,useId as NCe,useMemo as Sx,useRef as wx,useState as IY}from"react";import{createPortal as OCe}from"react-dom";import{jsx as NY,jsxs as UCe}from"react/jsx-runtime";function EU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function DCe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!EU(i)&&(n[r]=i);return n}var FCe,LCe,OY,UY,DY,RU=z(()=>{"use strict";mt();pt();gt();PY();FCe={display:"contents"},LCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},OY={blendMode:"normal",visible:!0};try{Tl&&Tl.props&&Object.entries(Tl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(OY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}UY=t=>{let e=ICe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=NCe(),s=Sx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Sx(()=>DCe(t,OY),[t]),d=Sx(()=>({...LCe,...t.transform}),[t.transform]),h=wx(null),f=!!Tl.capturesDOM,g=wx(null),[y,_]=IY(!1),[b,S]=IY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));_x(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=wx(void 0),v=wx(null);v.current===null&&(ce(a),v.current=ue(Tl,u,s));let E=Sx(()=>({...e,shaderParentId:s}),[e,s]);_x(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Tl.fragmentNode,n,c,v.current,Tl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),_x(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=wx({}),M=Sx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&EU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(_x(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(EU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),_x(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?OCe(NY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return UCe(G.Provider,{value:E,children:[NY("span",{ref:h,style:FCe,"data-shader-id":s,children:!f&&t.children}),R]})},DY=UY});var LY=z(()=>{"use strict";z9()});var HY={};yt(HY,{ShaderComponent:()=>VY,default:()=>GY});import{useContext as kCe,useEffect as Mx,useId as BCe,useMemo as Tx,useRef as Cx,useState as kY}from"react";import{createPortal as zCe}from"react-dom";import{jsx as BY,jsxs as VCe}from"react/jsx-runtime";function AU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function GCe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!AU(i)&&(n[r]=i);return n}var HCe,WCe,zY,VY,GY,PU=z(()=>{"use strict";mt();pt();gt();LY();HCe={display:"contents"},WCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},zY={blendMode:"normal",visible:!0};try{Cl&&Cl.props&&Object.entries(Cl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(zY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}VY=t=>{let e=kCe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=BCe(),s=Tx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Tx(()=>GCe(t,zY),[t]),d=Tx(()=>({...WCe,...t.transform}),[t.transform]),h=Cx(null),f=!!Cl.capturesDOM,g=Cx(null),[y,_]=kY(!1),[b,S]=kY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Mx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Cx(void 0),v=Cx(null);v.current===null&&(ce(a),v.current=ue(Cl,u,s));let E=Tx(()=>({...e,shaderParentId:s}),[e,s]);Mx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Cl.fragmentNode,n,c,v.current,Cl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Mx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Cx({}),M=Tx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&AU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Mx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(AU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Mx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?zCe(BY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return VCe(G.Provider,{value:E,children:[BY("span",{ref:h,style:HCe,"data-shader-id":s,children:!f&&t.children}),R]})},GY=VY});var WY=z(()=>{"use strict";H9()});var ZY={};yt(ZY,{ShaderComponent:()=>$Y,default:()=>YY});import{useContext as jCe,useEffect as Ex,useId as qCe,useMemo as Rx,useRef as Ax,useState as jY}from"react";import{createPortal as XCe}from"react-dom";import{jsx as qY,jsxs as $Ce}from"react/jsx-runtime";function IU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function YCe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!IU(i)&&(n[r]=i);return n}var ZCe,KCe,XY,$Y,YY,NU=z(()=>{"use strict";mt();pt();gt();WY();ZCe={display:"contents"},KCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},XY={blendMode:"normal",visible:!0};try{El&&El.props&&Object.entries(El.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(XY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}$Y=t=>{let e=jCe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=qCe(),s=Rx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Rx(()=>YCe(t,XY),[t]),d=Rx(()=>({...KCe,...t.transform}),[t.transform]),h=Ax(null),f=!!El.capturesDOM,g=Ax(null),[y,_]=jY(!1),[b,S]=jY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Ex(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Ax(void 0),v=Ax(null);v.current===null&&(ce(a),v.current=ue(El,u,s));let E=Rx(()=>({...e,shaderParentId:s}),[e,s]);Ex(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,El.fragmentNode,n,c,v.current,El,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Ex(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Ax({}),M=Rx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&IU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ex(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(IU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ex(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?XCe(qY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return $Ce(G.Provider,{value:E,children:[qY("span",{ref:h,style:ZCe,"data-shader-id":s,children:!f&&t.children}),R]})},YY=$Y});var KY=z(()=>{"use strict";W9()});var rZ={};yt(rZ,{ShaderComponent:()=>tZ,default:()=>nZ});import{useContext as JCe,useEffect as Px,useId as QCe,useMemo as Ix,useRef as Nx,useState as JY}from"react";import{createPortal as eEe}from"react-dom";import{jsx as QY,jsxs as tEe}from"react/jsx-runtime";function OU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function nEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!OU(i)&&(n[r]=i);return n}var rEe,iEe,eZ,tZ,nZ,UU=z(()=>{"use strict";mt();pt();gt();KY();rEe={display:"contents"},iEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},eZ={blendMode:"normal",visible:!0};try{Rl&&Rl.props&&Object.entries(Rl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(eZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}tZ=t=>{let e=JCe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=QCe(),s=Ix(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ix(()=>nEe(t,eZ),[t]),d=Ix(()=>({...iEe,...t.transform}),[t.transform]),h=Nx(null),f=!!Rl.capturesDOM,g=Nx(null),[y,_]=JY(!1),[b,S]=JY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Px(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Nx(void 0),v=Nx(null);v.current===null&&(ce(a),v.current=ue(Rl,u,s));let E=Ix(()=>({...e,shaderParentId:s}),[e,s]);Px(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Rl.fragmentNode,n,c,v.current,Rl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Px(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Nx({}),M=Ix(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&OU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Px(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(OU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Px(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?eEe(QY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return tEe(G.Provider,{value:E,children:[QY("span",{ref:h,style:rEe,"data-shader-id":s,children:!f&&t.children}),R]})},nZ=tZ});var iZ=z(()=>{"use strict";j9()});var uZ={};yt(uZ,{ShaderComponent:()=>cZ,default:()=>lZ});import{useContext as oEe,useEffect as Ox,useId as sEe,useMemo as Ux,useRef as Dx,useState as oZ}from"react";import{createPortal as aEe}from"react-dom";import{jsx as sZ,jsxs as cEe}from"react/jsx-runtime";function DU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function lEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!DU(i)&&(n[r]=i);return n}var uEe,dEe,aZ,cZ,lZ,FU=z(()=>{"use strict";mt();pt();gt();iZ();uEe={display:"contents"},dEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},aZ={blendMode:"normal",visible:!0};try{Al&&Al.props&&Object.entries(Al.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(aZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}cZ=t=>{let e=oEe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=sEe(),s=Ux(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ux(()=>lEe(t,aZ),[t]),d=Ux(()=>({...dEe,...t.transform}),[t.transform]),h=Dx(null),f=!!Al.capturesDOM,g=Dx(null),[y,_]=oZ(!1),[b,S]=oZ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Ox(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Dx(void 0),v=Dx(null);v.current===null&&(ce(a),v.current=ue(Al,u,s));let E=Ux(()=>({...e,shaderParentId:s}),[e,s]);Ox(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Al.fragmentNode,n,c,v.current,Al,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Ox(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Dx({}),M=Ux(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&DU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ox(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(DU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ox(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?aEe(sZ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return cEe(G.Provider,{value:E,children:[sZ("span",{ref:h,style:uEe,"data-shader-id":s,children:!f&&t.children}),R]})},lZ=cZ});var dZ=z(()=>{"use strict";q9()});var yZ={};yt(yZ,{ShaderComponent:()=>pZ,default:()=>gZ});import{useContext as fEe,useEffect as Fx,useId as hEe,useMemo as Lx,useRef as kx,useState as fZ}from"react";import{createPortal as mEe}from"react-dom";import{jsx as hZ,jsxs as pEe}from"react/jsx-runtime";function LU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function gEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!LU(i)&&(n[r]=i);return n}var yEe,vEe,mZ,pZ,gZ,kU=z(()=>{"use strict";mt();pt();gt();dZ();yEe={display:"contents"},vEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},mZ={blendMode:"normal",visible:!0};try{Pl&&Pl.props&&Object.entries(Pl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(mZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}pZ=t=>{let e=fEe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=hEe(),s=Lx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Lx(()=>gEe(t,mZ),[t]),d=Lx(()=>({...vEe,...t.transform}),[t.transform]),h=kx(null),f=!!Pl.capturesDOM,g=kx(null),[y,_]=fZ(!1),[b,S]=fZ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Fx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=kx(void 0),v=kx(null);v.current===null&&(ce(a),v.current=ue(Pl,u,s));let E=Lx(()=>({...e,shaderParentId:s}),[e,s]);Fx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Pl.fragmentNode,n,c,v.current,Pl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Fx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=kx({}),M=Lx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&LU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Fx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(LU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Fx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?mEe(hZ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return pEe(G.Provider,{value:E,children:[hZ("span",{ref:h,style:yEe,"data-shader-id":s,children:!f&&t.children}),R]})},gZ=pZ});var vZ=z(()=>{"use strict";X9()});var MZ={};yt(MZ,{ShaderComponent:()=>SZ,default:()=>wZ});import{useContext as xEe,useEffect as Bx,useId as bEe,useMemo as zx,useRef as Vx,useState as xZ}from"react";import{createPortal as _Ee}from"react-dom";import{jsx as bZ,jsxs as SEe}from"react/jsx-runtime";function BU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function wEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!BU(i)&&(n[r]=i);return n}var MEe,TEe,_Z,SZ,wZ,zU=z(()=>{"use strict";mt();pt();gt();vZ();MEe={display:"contents"},TEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},_Z={blendMode:"normal",visible:!0};try{Il&&Il.props&&Object.entries(Il.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(_Z[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}SZ=t=>{let e=xEe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=bEe(),s=zx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=zx(()=>wEe(t,_Z),[t]),d=zx(()=>({...TEe,...t.transform}),[t.transform]),h=Vx(null),f=!!Il.capturesDOM,g=Vx(null),[y,_]=xZ(!1),[b,S]=xZ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Bx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Vx(void 0),v=Vx(null);v.current===null&&(ce(a),v.current=ue(Il,u,s));let E=zx(()=>({...e,shaderParentId:s}),[e,s]);Bx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Il.fragmentNode,n,c,v.current,Il,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Bx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Vx({}),M=zx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&BU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Bx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(BU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Bx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?_Ee(bZ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return SEe(G.Provider,{value:E,children:[bZ("span",{ref:h,style:MEe,"data-shader-id":s,children:!f&&t.children}),R]})},wZ=SZ});var TZ=z(()=>{"use strict";$9()});var IZ={};yt(IZ,{ShaderComponent:()=>AZ,default:()=>PZ});import{useContext as CEe,useEffect as Gx,useId as EEe,useMemo as Hx,useRef as Wx,useState as CZ}from"react";import{createPortal as REe}from"react-dom";import{jsx as EZ,jsxs as AEe}from"react/jsx-runtime";function VU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function PEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!VU(i)&&(n[r]=i);return n}var IEe,NEe,RZ,AZ,PZ,GU=z(()=>{"use strict";mt();pt();gt();TZ();IEe={display:"contents"},NEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},RZ={blendMode:"normal",visible:!0};try{Nl&&Nl.props&&Object.entries(Nl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(RZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}AZ=t=>{let e=CEe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=EEe(),s=Hx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Hx(()=>PEe(t,RZ),[t]),d=Hx(()=>({...NEe,...t.transform}),[t.transform]),h=Wx(null),f=!!Nl.capturesDOM,g=Wx(null),[y,_]=CZ(!1),[b,S]=CZ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Gx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Wx(void 0),v=Wx(null);v.current===null&&(ce(a),v.current=ue(Nl,u,s));let E=Hx(()=>({...e,shaderParentId:s}),[e,s]);Gx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Nl.fragmentNode,n,c,v.current,Nl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Gx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Wx({}),M=Hx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&VU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Gx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(VU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Gx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?REe(EZ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return AEe(G.Provider,{value:E,children:[EZ("span",{ref:h,style:IEe,"data-shader-id":s,children:!f&&t.children}),R]})},PZ=AZ});var NZ=z(()=>{"use strict";Y9()});var kZ={};yt(kZ,{ShaderComponent:()=>FZ,default:()=>LZ});import{useContext as OEe,useEffect as jx,useId as UEe,useMemo as qx,useRef as Xx,useState as OZ}from"react";import{createPortal as DEe}from"react-dom";import{jsx as UZ,jsxs as FEe}from"react/jsx-runtime";function HU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function LEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!HU(i)&&(n[r]=i);return n}var kEe,BEe,DZ,FZ,LZ,WU=z(()=>{"use strict";mt();pt();gt();NZ();kEe={display:"contents"},BEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},DZ={blendMode:"normal",visible:!0};try{Ol&&Ol.props&&Object.entries(Ol.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(DZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}FZ=t=>{let e=OEe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=UEe(),s=qx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=qx(()=>LEe(t,DZ),[t]),d=qx(()=>({...BEe,...t.transform}),[t.transform]),h=Xx(null),f=!!Ol.capturesDOM,g=Xx(null),[y,_]=OZ(!1),[b,S]=OZ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));jx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Xx(void 0),v=Xx(null);v.current===null&&(ce(a),v.current=ue(Ol,u,s));let E=qx(()=>({...e,shaderParentId:s}),[e,s]);jx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ol.fragmentNode,n,c,v.current,Ol,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),jx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Xx({}),M=qx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&HU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(jx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(HU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),jx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?DEe(UZ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return FEe(G.Provider,{value:E,children:[UZ("span",{ref:h,style:kEe,"data-shader-id":s,children:!f&&t.children}),R]})},LZ=FZ});var BZ=z(()=>{"use strict";Z9()});var jZ={};yt(jZ,{ShaderComponent:()=>HZ,default:()=>WZ});import{useContext as zEe,useEffect as $x,useId as VEe,useMemo as Yx,useRef as Zx,useState as zZ}from"react";import{createPortal as GEe}from"react-dom";import{jsx as VZ,jsxs as HEe}from"react/jsx-runtime";function jU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function WEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!jU(i)&&(n[r]=i);return n}var jEe,qEe,GZ,HZ,WZ,qU=z(()=>{"use strict";mt();pt();gt();BZ();jEe={display:"contents"},qEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},GZ={blendMode:"normal",visible:!0};try{Ul&&Ul.props&&Object.entries(Ul.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(GZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}HZ=t=>{let e=zEe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=VEe(),s=Yx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Yx(()=>WEe(t,GZ),[t]),d=Yx(()=>({...qEe,...t.transform}),[t.transform]),h=Zx(null),f=!!Ul.capturesDOM,g=Zx(null),[y,_]=zZ(!1),[b,S]=zZ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));$x(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Zx(void 0),v=Zx(null);v.current===null&&(ce(a),v.current=ue(Ul,u,s));let E=Yx(()=>({...e,shaderParentId:s}),[e,s]);$x(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ul.fragmentNode,n,c,v.current,Ul,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),$x(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Zx({}),M=Yx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&jU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if($x(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(jU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),$x(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?GEe(VZ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return HEe(G.Provider,{value:E,children:[VZ("span",{ref:h,style:jEe,"data-shader-id":s,children:!f&&t.children}),R]})},WZ=HZ});var qZ=z(()=>{"use strict";K9()});var JZ={};yt(JZ,{ShaderComponent:()=>ZZ,default:()=>KZ});import{useContext as XEe,useEffect as Kx,useId as $Ee,useMemo as Jx,useRef as Qx,useState as XZ}from"react";import{createPortal as YEe}from"react-dom";import{jsx as $Z,jsxs as ZEe}from"react/jsx-runtime";function XU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function KEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!XU(i)&&(n[r]=i);return n}var JEe,QEe,YZ,ZZ,KZ,$U=z(()=>{"use strict";mt();pt();gt();qZ();JEe={display:"contents"},QEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},YZ={blendMode:"normal",visible:!0};try{Dl&&Dl.props&&Object.entries(Dl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(YZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}ZZ=t=>{let e=XEe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=$Ee(),s=Jx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Jx(()=>KEe(t,YZ),[t]),d=Jx(()=>({...QEe,...t.transform}),[t.transform]),h=Qx(null),f=!!Dl.capturesDOM,g=Qx(null),[y,_]=XZ(!1),[b,S]=XZ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Kx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Qx(void 0),v=Qx(null);v.current===null&&(ce(a),v.current=ue(Dl,u,s));let E=Jx(()=>({...e,shaderParentId:s}),[e,s]);Kx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Dl.fragmentNode,n,c,v.current,Dl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Kx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Qx({}),M=Jx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&XU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Kx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(XU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Kx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?YEe($Z("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return ZEe(G.Provider,{value:E,children:[$Z("span",{ref:h,style:JEe,"data-shader-id":s,children:!f&&t.children}),R]})},KZ=ZZ});var QZ=z(()=>{"use strict";J9()});var oK={};yt(oK,{ShaderComponent:()=>rK,default:()=>iK});import{useContext as eRe,useEffect as eb,useId as tRe,useMemo as tb,useRef as nb,useState as eK}from"react";import{createPortal as nRe}from"react-dom";import{jsx as tK,jsxs as rRe}from"react/jsx-runtime";function YU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function iRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!YU(i)&&(n[r]=i);return n}var oRe,sRe,nK,rK,iK,ZU=z(()=>{"use strict";mt();pt();gt();QZ();oRe={display:"contents"},sRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},nK={blendMode:"normal",visible:!0};try{Fl&&Fl.props&&Object.entries(Fl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(nK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}rK=t=>{let e=eRe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=tRe(),s=tb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=tb(()=>iRe(t,nK),[t]),d=tb(()=>({...sRe,...t.transform}),[t.transform]),h=nb(null),f=!!Fl.capturesDOM,g=nb(null),[y,_]=eK(!1),[b,S]=eK(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));eb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=nb(void 0),v=nb(null);v.current===null&&(ce(a),v.current=ue(Fl,u,s));let E=tb(()=>({...e,shaderParentId:s}),[e,s]);eb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Fl.fragmentNode,n,c,v.current,Fl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),eb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=nb({}),M=tb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&YU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(eb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(YU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),eb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?nRe(tK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return rRe(G.Provider,{value:E,children:[tK("span",{ref:h,style:oRe,"data-shader-id":s,children:!f&&t.children}),R]})},iK=rK});var sK=z(()=>{"use strict";Q9()});var fK={};yt(fK,{ShaderComponent:()=>uK,default:()=>dK});import{useContext as aRe,useEffect as rb,useId as cRe,useMemo as ib,useRef as ob,useState as aK}from"react";import{createPortal as lRe}from"react-dom";import{jsx as cK,jsxs as uRe}from"react/jsx-runtime";function KU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function dRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!KU(i)&&(n[r]=i);return n}var fRe,hRe,lK,uK,dK,JU=z(()=>{"use strict";mt();pt();gt();sK();fRe={display:"contents"},hRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},lK={blendMode:"normal",visible:!0};try{Ll&&Ll.props&&Object.entries(Ll.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(lK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}uK=t=>{let e=aRe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=cRe(),s=ib(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ib(()=>dRe(t,lK),[t]),d=ib(()=>({...hRe,...t.transform}),[t.transform]),h=ob(null),f=!!Ll.capturesDOM,g=ob(null),[y,_]=aK(!1),[b,S]=aK(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));rb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=ob(void 0),v=ob(null);v.current===null&&(ce(a),v.current=ue(Ll,u,s));let E=ib(()=>({...e,shaderParentId:s}),[e,s]);rb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ll.fragmentNode,n,c,v.current,Ll,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),rb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=ob({}),M=ib(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&KU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(rb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(KU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),rb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?lRe(cK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return uRe(G.Provider,{value:E,children:[cK("span",{ref:h,style:fRe,"data-shader-id":s,children:!f&&t.children}),R]})},dK=uK});var hK=z(()=>{"use strict";e6()});var xK={};yt(xK,{ShaderComponent:()=>yK,default:()=>vK});import{useContext as mRe,useEffect as sb,useId as pRe,useMemo as ab,useRef as cb,useState as mK}from"react";import{createPortal as gRe}from"react-dom";import{jsx as pK,jsxs as yRe}from"react/jsx-runtime";function QU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function vRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!QU(i)&&(n[r]=i);return n}var xRe,bRe,gK,yK,vK,e3=z(()=>{"use strict";mt();pt();gt();hK();xRe={display:"contents"},bRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},gK={blendMode:"normal",visible:!0};try{kl&&kl.props&&Object.entries(kl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(gK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}yK=t=>{let e=mRe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=pRe(),s=ab(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ab(()=>vRe(t,gK),[t]),d=ab(()=>({...bRe,...t.transform}),[t.transform]),h=cb(null),f=!!kl.capturesDOM,g=cb(null),[y,_]=mK(!1),[b,S]=mK(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));sb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=cb(void 0),v=cb(null);v.current===null&&(ce(a),v.current=ue(kl,u,s));let E=ab(()=>({...e,shaderParentId:s}),[e,s]);sb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,kl.fragmentNode,n,c,v.current,kl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),sb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=cb({}),M=ab(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&QU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(sb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(QU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),sb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?gRe(pK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return yRe(G.Provider,{value:E,children:[pK("span",{ref:h,style:xRe,"data-shader-id":s,children:!f&&t.children}),R]})},vK=yK});var bK=z(()=>{"use strict";t6()});var CK={};yt(CK,{ShaderComponent:()=>MK,default:()=>TK});import{useContext as _Re,useEffect as lb,useId as SRe,useMemo as ub,useRef as db,useState as _K}from"react";import{createPortal as wRe}from"react-dom";import{jsx as SK,jsxs as MRe}from"react/jsx-runtime";function t3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function TRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!t3(i)&&(n[r]=i);return n}var CRe,ERe,wK,MK,TK,n3=z(()=>{"use strict";mt();pt();gt();bK();CRe={display:"contents"},ERe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},wK={blendMode:"normal",visible:!0};try{Bl&&Bl.props&&Object.entries(Bl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(wK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}MK=t=>{let e=_Re(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=SRe(),s=ub(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ub(()=>TRe(t,wK),[t]),d=ub(()=>({...ERe,...t.transform}),[t.transform]),h=db(null),f=!!Bl.capturesDOM,g=db(null),[y,_]=_K(!1),[b,S]=_K(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));lb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=db(void 0),v=db(null);v.current===null&&(ce(a),v.current=ue(Bl,u,s));let E=ub(()=>({...e,shaderParentId:s}),[e,s]);lb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Bl.fragmentNode,n,c,v.current,Bl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),lb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=db({}),M=ub(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&t3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(lb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(t3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),lb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?wRe(SK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return MRe(G.Provider,{value:E,children:[SK("span",{ref:h,style:CRe,"data-shader-id":s,children:!f&&t.children}),R]})},TK=MK});var EK=z(()=>{"use strict";n6()});var OK={};yt(OK,{ShaderComponent:()=>IK,default:()=>NK});import{useContext as RRe,useEffect as fb,useId as ARe,useMemo as hb,useRef as mb,useState as RK}from"react";import{createPortal as PRe}from"react-dom";import{jsx as AK,jsxs as IRe}from"react/jsx-runtime";function r3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function NRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!r3(i)&&(n[r]=i);return n}var ORe,URe,PK,IK,NK,i3=z(()=>{"use strict";mt();pt();gt();EK();ORe={display:"contents"},URe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},PK={blendMode:"normal",visible:!0};try{zl&&zl.props&&Object.entries(zl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(PK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}IK=t=>{let e=RRe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=ARe(),s=hb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=hb(()=>NRe(t,PK),[t]),d=hb(()=>({...URe,...t.transform}),[t.transform]),h=mb(null),f=!!zl.capturesDOM,g=mb(null),[y,_]=RK(!1),[b,S]=RK(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));fb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=mb(void 0),v=mb(null);v.current===null&&(ce(a),v.current=ue(zl,u,s));let E=hb(()=>({...e,shaderParentId:s}),[e,s]);fb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,zl.fragmentNode,n,c,v.current,zl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),fb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=mb({}),M=hb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&r3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(fb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(r3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),fb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?PRe(AK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return IRe(G.Provider,{value:E,children:[AK("span",{ref:h,style:ORe,"data-shader-id":s,children:!f&&t.children}),R]})},NK=IK});var UK=z(()=>{"use strict";r6()});var zK={};yt(zK,{ShaderComponent:()=>kK,default:()=>BK});import{useContext as DRe,useEffect as pb,useId as FRe,useMemo as gb,useRef as yb,useState as DK}from"react";import{createPortal as LRe}from"react-dom";import{jsx as FK,jsxs as kRe}from"react/jsx-runtime";function o3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function BRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!o3(i)&&(n[r]=i);return n}var zRe,VRe,LK,kK,BK,s3=z(()=>{"use strict";mt();pt();gt();UK();zRe={display:"contents"},VRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},LK={blendMode:"normal",visible:!0};try{Vl&&Vl.props&&Object.entries(Vl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(LK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}kK=t=>{let e=DRe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=FRe(),s=gb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=gb(()=>BRe(t,LK),[t]),d=gb(()=>({...VRe,...t.transform}),[t.transform]),h=yb(null),f=!!Vl.capturesDOM,g=yb(null),[y,_]=DK(!1),[b,S]=DK(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));pb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=yb(void 0),v=yb(null);v.current===null&&(ce(a),v.current=ue(Vl,u,s));let E=gb(()=>({...e,shaderParentId:s}),[e,s]);pb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Vl.fragmentNode,n,c,v.current,Vl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),pb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=yb({}),M=gb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&o3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(pb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(o3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),pb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?LRe(FK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return kRe(G.Provider,{value:E,children:[FK("span",{ref:h,style:zRe,"data-shader-id":s,children:!f&&t.children}),R]})},BK=kK});var VK=z(()=>{"use strict";i6()});var XK={};yt(XK,{ShaderComponent:()=>jK,default:()=>qK});import{useContext as GRe,useEffect as vb,useId as HRe,useMemo as xb,useRef as bb,useState as GK}from"react";import{createPortal as WRe}from"react-dom";import{jsx as HK,jsxs as jRe}from"react/jsx-runtime";function a3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function qRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!a3(i)&&(n[r]=i);return n}var XRe,$Re,WK,jK,qK,c3=z(()=>{"use strict";mt();pt();gt();VK();XRe={display:"contents"},$Re={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},WK={blendMode:"normal",visible:!0};try{Gl&&Gl.props&&Object.entries(Gl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(WK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}jK=t=>{let e=GRe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=HRe(),s=xb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=xb(()=>qRe(t,WK),[t]),d=xb(()=>({...$Re,...t.transform}),[t.transform]),h=bb(null),f=!!Gl.capturesDOM,g=bb(null),[y,_]=GK(!1),[b,S]=GK(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));vb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=bb(void 0),v=bb(null);v.current===null&&(ce(a),v.current=ue(Gl,u,s));let E=xb(()=>({...e,shaderParentId:s}),[e,s]);vb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Gl.fragmentNode,n,c,v.current,Gl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),vb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=bb({}),M=xb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&a3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(vb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(a3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),vb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?WRe(HK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return jRe(G.Provider,{value:E,children:[HK("span",{ref:h,style:XRe,"data-shader-id":s,children:!f&&t.children}),R]})},qK=jK});var $K=z(()=>{"use strict";o6()});var eJ={};yt(eJ,{ShaderComponent:()=>JK,default:()=>QK});import{useContext as YRe,useEffect as _b,useId as ZRe,useMemo as Sb,useRef as wb,useState as YK}from"react";import{createPortal as KRe}from"react-dom";import{jsx as ZK,jsxs as JRe}from"react/jsx-runtime";function l3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function QRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!l3(i)&&(n[r]=i);return n}var eAe,tAe,KK,JK,QK,u3=z(()=>{"use strict";mt();pt();gt();$K();eAe={display:"contents"},tAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},KK={blendMode:"normal",visible:!0};try{Hl&&Hl.props&&Object.entries(Hl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(KK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}JK=t=>{let e=YRe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=ZRe(),s=Sb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Sb(()=>QRe(t,KK),[t]),d=Sb(()=>({...tAe,...t.transform}),[t.transform]),h=wb(null),f=!!Hl.capturesDOM,g=wb(null),[y,_]=YK(!1),[b,S]=YK(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));_b(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=wb(void 0),v=wb(null);v.current===null&&(ce(a),v.current=ue(Hl,u,s));let E=Sb(()=>({...e,shaderParentId:s}),[e,s]);_b(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Hl.fragmentNode,n,c,v.current,Hl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),_b(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=wb({}),M=Sb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&l3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(_b(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(l3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),_b(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?KRe(ZK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return JRe(G.Provider,{value:E,children:[ZK("span",{ref:h,style:eAe,"data-shader-id":s,children:!f&&t.children}),R]})},QK=JK});var tJ=z(()=>{"use strict";s6()});var aJ={};yt(aJ,{ShaderComponent:()=>oJ,default:()=>sJ});import{useContext as nAe,useEffect as Mb,useId as rAe,useMemo as Tb,useRef as Cb,useState as nJ}from"react";import{createPortal as iAe}from"react-dom";import{jsx as rJ,jsxs as oAe}from"react/jsx-runtime";function d3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function sAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!d3(i)&&(n[r]=i);return n}var aAe,cAe,iJ,oJ,sJ,f3=z(()=>{"use strict";mt();pt();gt();tJ();aAe={display:"contents"},cAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},iJ={blendMode:"normal",visible:!0};try{Wl&&Wl.props&&Object.entries(Wl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(iJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}oJ=t=>{let e=nAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=rAe(),s=Tb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Tb(()=>sAe(t,iJ),[t]),d=Tb(()=>({...cAe,...t.transform}),[t.transform]),h=Cb(null),f=!!Wl.capturesDOM,g=Cb(null),[y,_]=nJ(!1),[b,S]=nJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Mb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Cb(void 0),v=Cb(null);v.current===null&&(ce(a),v.current=ue(Wl,u,s));let E=Tb(()=>({...e,shaderParentId:s}),[e,s]);Mb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Wl.fragmentNode,n,c,v.current,Wl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Mb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Cb({}),M=Tb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&d3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Mb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(d3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Mb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?iAe(rJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return oAe(G.Provider,{value:E,children:[rJ("span",{ref:h,style:aAe,"data-shader-id":s,children:!f&&t.children}),R]})},sJ=oJ});var cJ=z(()=>{"use strict";a6()});var mJ={};yt(mJ,{ShaderComponent:()=>fJ,default:()=>hJ});import{useContext as lAe,useEffect as Eb,useId as uAe,useMemo as Rb,useRef as Ab,useState as lJ}from"react";import{createPortal as dAe}from"react-dom";import{jsx as uJ,jsxs as fAe}from"react/jsx-runtime";function h3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function hAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!h3(i)&&(n[r]=i);return n}var mAe,pAe,dJ,fJ,hJ,m3=z(()=>{"use strict";mt();pt();gt();cJ();mAe={display:"contents"},pAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},dJ={blendMode:"normal",visible:!0};try{jl&&jl.props&&Object.entries(jl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(dJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}fJ=t=>{let e=lAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=uAe(),s=Rb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Rb(()=>hAe(t,dJ),[t]),d=Rb(()=>({...pAe,...t.transform}),[t.transform]),h=Ab(null),f=!!jl.capturesDOM,g=Ab(null),[y,_]=lJ(!1),[b,S]=lJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Eb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Ab(void 0),v=Ab(null);v.current===null&&(ce(a),v.current=ue(jl,u,s));let E=Rb(()=>({...e,shaderParentId:s}),[e,s]);Eb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,jl.fragmentNode,n,c,v.current,jl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Eb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Ab({}),M=Rb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&h3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Eb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(h3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Eb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?dAe(uJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return fAe(G.Provider,{value:E,children:[uJ("span",{ref:h,style:mAe,"data-shader-id":s,children:!f&&t.children}),R]})},hJ=fJ});var pJ=z(()=>{"use strict";d6()});var _J={};yt(_J,{ShaderComponent:()=>xJ,default:()=>bJ});import{useContext as gAe,useEffect as Pb,useId as yAe,useMemo as Ib,useRef as Nb,useState as gJ}from"react";import{createPortal as vAe}from"react-dom";import{jsx as yJ,jsxs as xAe}from"react/jsx-runtime";function p3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function bAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!p3(i)&&(n[r]=i);return n}var _Ae,SAe,vJ,xJ,bJ,g3=z(()=>{"use strict";mt();pt();gt();pJ();_Ae={display:"contents"},SAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},vJ={blendMode:"normal",visible:!0};try{ql&&ql.props&&Object.entries(ql.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(vJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}xJ=t=>{let e=gAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=yAe(),s=Ib(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ib(()=>bAe(t,vJ),[t]),d=Ib(()=>({...SAe,...t.transform}),[t.transform]),h=Nb(null),f=!!ql.capturesDOM,g=Nb(null),[y,_]=gJ(!1),[b,S]=gJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Pb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Nb(void 0),v=Nb(null);v.current===null&&(ce(a),v.current=ue(ql,u,s));let E=Ib(()=>({...e,shaderParentId:s}),[e,s]);Pb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,ql.fragmentNode,n,c,v.current,ql,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Pb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Nb({}),M=Ib(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&p3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Pb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(p3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Pb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?vAe(yJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return xAe(G.Provider,{value:E,children:[yJ("span",{ref:h,style:_Ae,"data-shader-id":s,children:!f&&t.children}),R]})},bJ=xJ});var SJ=z(()=>{"use strict";h6()});var RJ={};yt(RJ,{ShaderComponent:()=>CJ,default:()=>EJ});import{useContext as wAe,useEffect as Ob,useId as MAe,useMemo as Ub,useRef as Db,useState as wJ}from"react";import{createPortal as TAe}from"react-dom";import{jsx as MJ,jsxs as CAe}from"react/jsx-runtime";function y3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function EAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!y3(i)&&(n[r]=i);return n}var RAe,AAe,TJ,CJ,EJ,v3=z(()=>{"use strict";mt();pt();gt();SJ();RAe={display:"contents"},AAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},TJ={blendMode:"normal",visible:!0};try{Xl&&Xl.props&&Object.entries(Xl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(TJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}CJ=t=>{let e=wAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=MAe(),s=Ub(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ub(()=>EAe(t,TJ),[t]),d=Ub(()=>({...AAe,...t.transform}),[t.transform]),h=Db(null),f=!!Xl.capturesDOM,g=Db(null),[y,_]=wJ(!1),[b,S]=wJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Ob(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Db(void 0),v=Db(null);v.current===null&&(ce(a),v.current=ue(Xl,u,s));let E=Ub(()=>({...e,shaderParentId:s}),[e,s]);Ob(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Xl.fragmentNode,n,c,v.current,Xl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Ob(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Db({}),M=Ub(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&y3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ob(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(y3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ob(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?TAe(MJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return CAe(G.Provider,{value:E,children:[MJ("span",{ref:h,style:RAe,"data-shader-id":s,children:!f&&t.children}),R]})},EJ=CJ});var AJ=z(()=>{"use strict";m6()});var DJ={};yt(DJ,{ShaderComponent:()=>OJ,default:()=>UJ});import{useContext as PAe,useEffect as Fb,useId as IAe,useMemo as Lb,useRef as kb,useState as PJ}from"react";import{createPortal as NAe}from"react-dom";import{jsx as IJ,jsxs as OAe}from"react/jsx-runtime";function x3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function UAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!x3(i)&&(n[r]=i);return n}var DAe,FAe,NJ,OJ,UJ,b3=z(()=>{"use strict";mt();pt();gt();AJ();DAe={display:"contents"},FAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},NJ={blendMode:"normal",visible:!0};try{$l&&$l.props&&Object.entries($l.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(NJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}OJ=t=>{let e=PAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=IAe(),s=Lb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Lb(()=>UAe(t,NJ),[t]),d=Lb(()=>({...FAe,...t.transform}),[t.transform]),h=kb(null),f=!!$l.capturesDOM,g=kb(null),[y,_]=PJ(!1),[b,S]=PJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Fb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=kb(void 0),v=kb(null);v.current===null&&(ce(a),v.current=ue($l,u,s));let E=Lb(()=>({...e,shaderParentId:s}),[e,s]);Fb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,$l.fragmentNode,n,c,v.current,$l,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Fb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=kb({}),M=Lb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&x3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Fb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(x3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Fb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?NAe(IJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return OAe(G.Provider,{value:E,children:[IJ("span",{ref:h,style:DAe,"data-shader-id":s,children:!f&&t.children}),R]})},UJ=OJ});var FJ=z(()=>{"use strict";p6()});var GJ={};yt(GJ,{ShaderComponent:()=>zJ,default:()=>VJ});import{useContext as LAe,useEffect as Bb,useId as kAe,useMemo as zb,useRef as Vb,useState as LJ}from"react";import{createPortal as BAe}from"react-dom";import{jsx as kJ,jsxs as zAe}from"react/jsx-runtime";function _3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function VAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!_3(i)&&(n[r]=i);return n}var GAe,HAe,BJ,zJ,VJ,S3=z(()=>{"use strict";mt();pt();gt();FJ();GAe={display:"contents"},HAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},BJ={blendMode:"normal",visible:!0};try{Yl&&Yl.props&&Object.entries(Yl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(BJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}zJ=t=>{let e=LAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=kAe(),s=zb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=zb(()=>VAe(t,BJ),[t]),d=zb(()=>({...HAe,...t.transform}),[t.transform]),h=Vb(null),f=!!Yl.capturesDOM,g=Vb(null),[y,_]=LJ(!1),[b,S]=LJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Bb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Vb(void 0),v=Vb(null);v.current===null&&(ce(a),v.current=ue(Yl,u,s));let E=zb(()=>({...e,shaderParentId:s}),[e,s]);Bb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Yl.fragmentNode,n,c,v.current,Yl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Bb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Vb({}),M=zb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&_3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Bb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(_3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Bb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?BAe(kJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return zAe(G.Provider,{value:E,children:[kJ("span",{ref:h,style:GAe,"data-shader-id":s,children:!f&&t.children}),R]})},VJ=zJ});var HJ=z(()=>{"use strict";g6()});var YJ={};yt(YJ,{ShaderComponent:()=>XJ,default:()=>$J});import{useContext as WAe,useEffect as Gb,useId as jAe,useMemo as Hb,useRef as Wb,useState as WJ}from"react";import{createPortal as qAe}from"react-dom";import{jsx as jJ,jsxs as XAe}from"react/jsx-runtime";function w3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function $Ae(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!w3(i)&&(n[r]=i);return n}var YAe,ZAe,qJ,XJ,$J,M3=z(()=>{"use strict";mt();pt();gt();HJ();YAe={display:"contents"},ZAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},qJ={blendMode:"normal",visible:!0};try{Zl&&Zl.props&&Object.entries(Zl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(qJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}XJ=t=>{let e=WAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=jAe(),s=Hb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Hb(()=>$Ae(t,qJ),[t]),d=Hb(()=>({...ZAe,...t.transform}),[t.transform]),h=Wb(null),f=!!Zl.capturesDOM,g=Wb(null),[y,_]=WJ(!1),[b,S]=WJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Gb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Wb(void 0),v=Wb(null);v.current===null&&(ce(a),v.current=ue(Zl,u,s));let E=Hb(()=>({...e,shaderParentId:s}),[e,s]);Gb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Zl.fragmentNode,n,c,v.current,Zl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Gb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Wb({}),M=Hb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&w3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Gb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(w3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Gb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?qAe(jJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return XAe(G.Provider,{value:E,children:[jJ("span",{ref:h,style:YAe,"data-shader-id":s,children:!f&&t.children}),R]})},$J=XJ});var ZJ=z(()=>{"use strict";y6()});var nQ={};yt(nQ,{ShaderComponent:()=>eQ,default:()=>tQ});import{useContext as KAe,useEffect as jb,useId as JAe,useMemo as qb,useRef as Xb,useState as KJ}from"react";import{createPortal as QAe}from"react-dom";import{jsx as JJ,jsxs as e2e}from"react/jsx-runtime";function T3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function t2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!T3(i)&&(n[r]=i);return n}var n2e,r2e,QJ,eQ,tQ,C3=z(()=>{"use strict";mt();pt();gt();ZJ();n2e={display:"contents"},r2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},QJ={blendMode:"normal",visible:!0};try{Kl&&Kl.props&&Object.entries(Kl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(QJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}eQ=t=>{let e=KAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=JAe(),s=qb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=qb(()=>t2e(t,QJ),[t]),d=qb(()=>({...r2e,...t.transform}),[t.transform]),h=Xb(null),f=!!Kl.capturesDOM,g=Xb(null),[y,_]=KJ(!1),[b,S]=KJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));jb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Xb(void 0),v=Xb(null);v.current===null&&(ce(a),v.current=ue(Kl,u,s));let E=qb(()=>({...e,shaderParentId:s}),[e,s]);jb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Kl.fragmentNode,n,c,v.current,Kl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),jb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Xb({}),M=qb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&T3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(jb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(T3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),jb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?QAe(JJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return e2e(G.Provider,{value:E,children:[JJ("span",{ref:h,style:n2e,"data-shader-id":s,children:!f&&t.children}),R]})},tQ=eQ});var rQ=z(()=>{"use strict";v6()});var lQ={};yt(lQ,{ShaderComponent:()=>aQ,default:()=>cQ});import{useContext as i2e,useEffect as $b,useId as o2e,useMemo as Yb,useRef as Zb,useState as iQ}from"react";import{createPortal as s2e}from"react-dom";import{jsx as oQ,jsxs as a2e}from"react/jsx-runtime";function E3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function c2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!E3(i)&&(n[r]=i);return n}var l2e,u2e,sQ,aQ,cQ,R3=z(()=>{"use strict";mt();pt();gt();rQ();l2e={display:"contents"},u2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},sQ={blendMode:"normal",visible:!0};try{Jl&&Jl.props&&Object.entries(Jl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(sQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}aQ=t=>{let e=i2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=o2e(),s=Yb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Yb(()=>c2e(t,sQ),[t]),d=Yb(()=>({...u2e,...t.transform}),[t.transform]),h=Zb(null),f=!!Jl.capturesDOM,g=Zb(null),[y,_]=iQ(!1),[b,S]=iQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));$b(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Zb(void 0),v=Zb(null);v.current===null&&(ce(a),v.current=ue(Jl,u,s));let E=Yb(()=>({...e,shaderParentId:s}),[e,s]);$b(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Jl.fragmentNode,n,c,v.current,Jl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),$b(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Zb({}),M=Yb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&E3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if($b(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(E3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),$b(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?s2e(oQ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return a2e(G.Provider,{value:E,children:[oQ("span",{ref:h,style:l2e,"data-shader-id":s,children:!f&&t.children}),R]})},cQ=aQ});var uQ=z(()=>{"use strict";x6()});var gQ={};yt(gQ,{ShaderComponent:()=>mQ,default:()=>pQ});import{useContext as d2e,useEffect as Kb,useId as f2e,useMemo as Jb,useRef as Qb,useState as dQ}from"react";import{createPortal as h2e}from"react-dom";import{jsx as fQ,jsxs as m2e}from"react/jsx-runtime";function A3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function p2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!A3(i)&&(n[r]=i);return n}var g2e,y2e,hQ,mQ,pQ,P3=z(()=>{"use strict";mt();pt();gt();uQ();g2e={display:"contents"},y2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},hQ={blendMode:"normal",visible:!0};try{Ql&&Ql.props&&Object.entries(Ql.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(hQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}mQ=t=>{let e=d2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=f2e(),s=Jb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Jb(()=>p2e(t,hQ),[t]),d=Jb(()=>({...y2e,...t.transform}),[t.transform]),h=Qb(null),f=!!Ql.capturesDOM,g=Qb(null),[y,_]=dQ(!1),[b,S]=dQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Kb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Qb(void 0),v=Qb(null);v.current===null&&(ce(a),v.current=ue(Ql,u,s));let E=Jb(()=>({...e,shaderParentId:s}),[e,s]);Kb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ql.fragmentNode,n,c,v.current,Ql,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Kb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Qb({}),M=Jb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&A3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Kb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(A3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Kb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?h2e(fQ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return m2e(G.Provider,{value:E,children:[fQ("span",{ref:h,style:g2e,"data-shader-id":s,children:!f&&t.children}),R]})},pQ=mQ});var yQ=z(()=>{"use strict";b6()});var wQ={};yt(wQ,{ShaderComponent:()=>_Q,default:()=>SQ});import{useContext as v2e,useEffect as e_,useId as x2e,useMemo as t_,useRef as n_,useState as vQ}from"react";import{createPortal as b2e}from"react-dom";import{jsx as xQ,jsxs as _2e}from"react/jsx-runtime";function I3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function S2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!I3(i)&&(n[r]=i);return n}var w2e,M2e,bQ,_Q,SQ,N3=z(()=>{"use strict";mt();pt();gt();yQ();w2e={display:"contents"},M2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},bQ={blendMode:"normal",visible:!0};try{eu&&eu.props&&Object.entries(eu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(bQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}_Q=t=>{let e=v2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=x2e(),s=t_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=t_(()=>S2e(t,bQ),[t]),d=t_(()=>({...M2e,...t.transform}),[t.transform]),h=n_(null),f=!!eu.capturesDOM,g=n_(null),[y,_]=vQ(!1),[b,S]=vQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));e_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=n_(void 0),v=n_(null);v.current===null&&(ce(a),v.current=ue(eu,u,s));let E=t_(()=>({...e,shaderParentId:s}),[e,s]);e_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,eu.fragmentNode,n,c,v.current,eu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),e_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=n_({}),M=t_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&I3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(e_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(I3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),e_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?b2e(xQ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return _2e(G.Provider,{value:E,children:[xQ("span",{ref:h,style:w2e,"data-shader-id":s,children:!f&&t.children}),R]})},SQ=_Q});var MQ=z(()=>{"use strict";_6()});var PQ={};yt(PQ,{ShaderComponent:()=>RQ,default:()=>AQ});import{useContext as T2e,useEffect as r_,useId as C2e,useMemo as i_,useRef as o_,useState as TQ}from"react";import{createPortal as E2e}from"react-dom";import{jsx as CQ,jsxs as R2e}from"react/jsx-runtime";function O3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function A2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!O3(i)&&(n[r]=i);return n}var P2e,I2e,EQ,RQ,AQ,U3=z(()=>{"use strict";mt();pt();gt();MQ();P2e={display:"contents"},I2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},EQ={blendMode:"normal",visible:!0};try{tu&&tu.props&&Object.entries(tu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(EQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}RQ=t=>{let e=T2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=C2e(),s=i_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=i_(()=>A2e(t,EQ),[t]),d=i_(()=>({...I2e,...t.transform}),[t.transform]),h=o_(null),f=!!tu.capturesDOM,g=o_(null),[y,_]=TQ(!1),[b,S]=TQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));r_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=o_(void 0),v=o_(null);v.current===null&&(ce(a),v.current=ue(tu,u,s));let E=i_(()=>({...e,shaderParentId:s}),[e,s]);r_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,tu.fragmentNode,n,c,v.current,tu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),r_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=o_({}),M=i_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&O3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(r_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(O3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),r_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?E2e(CQ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return R2e(G.Provider,{value:E,children:[CQ("span",{ref:h,style:P2e,"data-shader-id":s,children:!f&&t.children}),R]})},AQ=RQ});var IQ=z(()=>{"use strict";S6()});var LQ={};yt(LQ,{ShaderComponent:()=>DQ,default:()=>FQ});import{useContext as N2e,useEffect as s_,useId as O2e,useMemo as a_,useRef as c_,useState as NQ}from"react";import{createPortal as U2e}from"react-dom";import{jsx as OQ,jsxs as D2e}from"react/jsx-runtime";function D3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function F2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!D3(i)&&(n[r]=i);return n}var L2e,k2e,UQ,DQ,FQ,F3=z(()=>{"use strict";mt();pt();gt();IQ();L2e={display:"contents"},k2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},UQ={blendMode:"normal",visible:!0};try{nu&&nu.props&&Object.entries(nu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(UQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}DQ=t=>{let e=N2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=O2e(),s=a_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=a_(()=>F2e(t,UQ),[t]),d=a_(()=>({...k2e,...t.transform}),[t.transform]),h=c_(null),f=!!nu.capturesDOM,g=c_(null),[y,_]=NQ(!1),[b,S]=NQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));s_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=c_(void 0),v=c_(null);v.current===null&&(ce(a),v.current=ue(nu,u,s));let E=a_(()=>({...e,shaderParentId:s}),[e,s]);s_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,nu.fragmentNode,n,c,v.current,nu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),s_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=c_({}),M=a_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&D3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(s_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(D3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),s_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?U2e(OQ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return D2e(G.Provider,{value:E,children:[OQ("span",{ref:h,style:L2e,"data-shader-id":s,children:!f&&t.children}),R]})},FQ=DQ});var kQ=z(()=>{"use strict";w6()});var WQ={};yt(WQ,{ShaderComponent:()=>GQ,default:()=>HQ});import{useContext as B2e,useEffect as l_,useId as z2e,useMemo as u_,useRef as d_,useState as BQ}from"react";import{createPortal as V2e}from"react-dom";import{jsx as zQ,jsxs as G2e}from"react/jsx-runtime";function L3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function H2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!L3(i)&&(n[r]=i);return n}var W2e,j2e,VQ,GQ,HQ,k3=z(()=>{"use strict";mt();pt();gt();kQ();W2e={display:"contents"},j2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},VQ={blendMode:"normal",visible:!0};try{ru&&ru.props&&Object.entries(ru.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(VQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}GQ=t=>{let e=B2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=z2e(),s=u_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=u_(()=>H2e(t,VQ),[t]),d=u_(()=>({...j2e,...t.transform}),[t.transform]),h=d_(null),f=!!ru.capturesDOM,g=d_(null),[y,_]=BQ(!1),[b,S]=BQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));l_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=d_(void 0),v=d_(null);v.current===null&&(ce(a),v.current=ue(ru,u,s));let E=u_(()=>({...e,shaderParentId:s}),[e,s]);l_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,ru.fragmentNode,n,c,v.current,ru,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),l_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=d_({}),M=u_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&L3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(l_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(L3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),l_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?V2e(zQ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return G2e(G.Provider,{value:E,children:[zQ("span",{ref:h,style:W2e,"data-shader-id":s,children:!f&&t.children}),R]})},HQ=GQ});var jQ=z(()=>{"use strict";M6()});var KQ={};yt(KQ,{ShaderComponent:()=>YQ,default:()=>ZQ});import{useContext as q2e,useEffect as f_,useId as X2e,useMemo as h_,useRef as m_,useState as qQ}from"react";import{createPortal as $2e}from"react-dom";import{jsx as XQ,jsxs as Y2e}from"react/jsx-runtime";function B3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Z2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!B3(i)&&(n[r]=i);return n}var K2e,J2e,$Q,YQ,ZQ,z3=z(()=>{"use strict";mt();pt();gt();jQ();K2e={display:"contents"},J2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},$Q={blendMode:"normal",visible:!0};try{iu&&iu.props&&Object.entries(iu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&($Q[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}YQ=t=>{let e=q2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=X2e(),s=h_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=h_(()=>Z2e(t,$Q),[t]),d=h_(()=>({...J2e,...t.transform}),[t.transform]),h=m_(null),f=!!iu.capturesDOM,g=m_(null),[y,_]=qQ(!1),[b,S]=qQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));f_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=m_(void 0),v=m_(null);v.current===null&&(ce(a),v.current=ue(iu,u,s));let E=h_(()=>({...e,shaderParentId:s}),[e,s]);f_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,iu.fragmentNode,n,c,v.current,iu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),f_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=m_({}),M=h_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&B3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(f_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(B3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),f_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?$2e(XQ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Y2e(G.Provider,{value:E,children:[XQ("span",{ref:h,style:K2e,"data-shader-id":s,children:!f&&t.children}),R]})},ZQ=YQ});var JQ=z(()=>{"use strict";T6()});var iee={};yt(iee,{ShaderComponent:()=>nee,default:()=>ree});import{useContext as Q2e,useEffect as p_,useId as ePe,useMemo as g_,useRef as y_,useState as QQ}from"react";import{createPortal as tPe}from"react-dom";import{jsx as eee,jsxs as nPe}from"react/jsx-runtime";function V3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function rPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!V3(i)&&(n[r]=i);return n}var iPe,oPe,tee,nee,ree,G3=z(()=>{"use strict";mt();pt();gt();JQ();iPe={display:"contents"},oPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},tee={blendMode:"normal",visible:!0};try{ou&&ou.props&&Object.entries(ou.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(tee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}nee=t=>{let e=Q2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=ePe(),s=g_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=g_(()=>rPe(t,tee),[t]),d=g_(()=>({...oPe,...t.transform}),[t.transform]),h=y_(null),f=!!ou.capturesDOM,g=y_(null),[y,_]=QQ(!1),[b,S]=QQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));p_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=y_(void 0),v=y_(null);v.current===null&&(ce(a),v.current=ue(ou,u,s));let E=g_(()=>({...e,shaderParentId:s}),[e,s]);p_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,ou.fragmentNode,n,c,v.current,ou,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),p_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=y_({}),M=g_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&V3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(p_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(V3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),p_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?tPe(eee("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return nPe(G.Provider,{value:E,children:[eee("span",{ref:h,style:iPe,"data-shader-id":s,children:!f&&t.children}),R]})},ree=nee});var oee=z(()=>{"use strict";C6()});var dee={};yt(dee,{ShaderComponent:()=>lee,default:()=>uee});import{useContext as sPe,useEffect as v_,useId as aPe,useMemo as x_,useRef as b_,useState as see}from"react";import{createPortal as cPe}from"react-dom";import{jsx as aee,jsxs as lPe}from"react/jsx-runtime";function H3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function uPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!H3(i)&&(n[r]=i);return n}var dPe,fPe,cee,lee,uee,W3=z(()=>{"use strict";mt();pt();gt();oee();dPe={display:"contents"},fPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},cee={blendMode:"normal",visible:!0};try{su&&su.props&&Object.entries(su.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(cee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}lee=t=>{let e=sPe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=aPe(),s=x_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=x_(()=>uPe(t,cee),[t]),d=x_(()=>({...fPe,...t.transform}),[t.transform]),h=b_(null),f=!!su.capturesDOM,g=b_(null),[y,_]=see(!1),[b,S]=see(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));v_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=b_(void 0),v=b_(null);v.current===null&&(ce(a),v.current=ue(su,u,s));let E=x_(()=>({...e,shaderParentId:s}),[e,s]);v_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,su.fragmentNode,n,c,v.current,su,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),v_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=b_({}),M=x_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&H3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(v_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(H3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),v_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?cPe(aee("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return lPe(G.Provider,{value:E,children:[aee("span",{ref:h,style:dPe,"data-shader-id":s,children:!f&&t.children}),R]})},uee=lee});var fee=z(()=>{"use strict";E6()});var vee={};yt(vee,{ShaderComponent:()=>gee,default:()=>yee});import{useContext as hPe,useEffect as __,useId as mPe,useMemo as S_,useRef as w_,useState as hee}from"react";import{createPortal as pPe}from"react-dom";import{jsx as mee,jsxs as gPe}from"react/jsx-runtime";function j3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function yPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!j3(i)&&(n[r]=i);return n}var vPe,xPe,pee,gee,yee,q3=z(()=>{"use strict";mt();pt();gt();fee();vPe={display:"contents"},xPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},pee={blendMode:"normal",visible:!0};try{au&&au.props&&Object.entries(au.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(pee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}gee=t=>{let e=hPe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=mPe(),s=S_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=S_(()=>yPe(t,pee),[t]),d=S_(()=>({...xPe,...t.transform}),[t.transform]),h=w_(null),f=!!au.capturesDOM,g=w_(null),[y,_]=hee(!1),[b,S]=hee(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));__(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=w_(void 0),v=w_(null);v.current===null&&(ce(a),v.current=ue(au,u,s));let E=S_(()=>({...e,shaderParentId:s}),[e,s]);__(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,au.fragmentNode,n,c,v.current,au,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),__(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=w_({}),M=S_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&j3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(__(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(j3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),__(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?pPe(mee("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return gPe(G.Provider,{value:E,children:[mee("span",{ref:h,style:vPe,"data-shader-id":s,children:!f&&t.children}),R]})},yee=gee});var xee=z(()=>{"use strict";R6()});var Tee={};yt(Tee,{ShaderComponent:()=>wee,default:()=>Mee});import{useContext as bPe,useEffect as M_,useId as _Pe,useMemo as T_,useRef as C_,useState as bee}from"react";import{createPortal as SPe}from"react-dom";import{jsx as _ee,jsxs as wPe}from"react/jsx-runtime";function X3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function MPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!X3(i)&&(n[r]=i);return n}var TPe,CPe,See,wee,Mee,$3=z(()=>{"use strict";mt();pt();gt();xee();TPe={display:"contents"},CPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},See={blendMode:"normal",visible:!0};try{cu&&cu.props&&Object.entries(cu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(See[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}wee=t=>{let e=bPe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=_Pe(),s=T_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=T_(()=>MPe(t,See),[t]),d=T_(()=>({...CPe,...t.transform}),[t.transform]),h=C_(null),f=!!cu.capturesDOM,g=C_(null),[y,_]=bee(!1),[b,S]=bee(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));M_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=C_(void 0),v=C_(null);v.current===null&&(ce(a),v.current=ue(cu,u,s));let E=T_(()=>({...e,shaderParentId:s}),[e,s]);M_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,cu.fragmentNode,n,c,v.current,cu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),M_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=C_({}),M=T_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&X3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(M_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(X3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),M_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?SPe(_ee("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return wPe(G.Provider,{value:E,children:[_ee("span",{ref:h,style:TPe,"data-shader-id":s,children:!f&&t.children}),R]})},Mee=wee});var Cee=z(()=>{"use strict";A6()});var Nee={};yt(Nee,{ShaderComponent:()=>Pee,default:()=>Iee});import{useContext as EPe,useEffect as E_,useId as RPe,useMemo as R_,useRef as A_,useState as Eee}from"react";import{createPortal as APe}from"react-dom";import{jsx as Ree,jsxs as PPe}from"react/jsx-runtime";function Y3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function IPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!Y3(i)&&(n[r]=i);return n}var NPe,OPe,Aee,Pee,Iee,Z3=z(()=>{"use strict";mt();pt();gt();Cee();NPe={display:"contents"},OPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Aee={blendMode:"normal",visible:!0};try{lu&&lu.props&&Object.entries(lu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Aee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Pee=t=>{let e=EPe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=RPe(),s=R_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=R_(()=>IPe(t,Aee),[t]),d=R_(()=>({...OPe,...t.transform}),[t.transform]),h=A_(null),f=!!lu.capturesDOM,g=A_(null),[y,_]=Eee(!1),[b,S]=Eee(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));E_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=A_(void 0),v=A_(null);v.current===null&&(ce(a),v.current=ue(lu,u,s));let E=R_(()=>({...e,shaderParentId:s}),[e,s]);E_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,lu.fragmentNode,n,c,v.current,lu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),E_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=A_({}),M=R_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&Y3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(E_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(Y3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),E_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?APe(Ree("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return PPe(G.Provider,{value:E,children:[Ree("span",{ref:h,style:NPe,"data-shader-id":s,children:!f&&t.children}),R]})},Iee=Pee});var Oee=z(()=>{"use strict";P6()});var Bee={};yt(Bee,{ShaderComponent:()=>Lee,default:()=>kee});import{useContext as UPe,useEffect as P_,useId as DPe,useMemo as I_,useRef as N_,useState as Uee}from"react";import{createPortal as FPe}from"react-dom";import{jsx as Dee,jsxs as LPe}from"react/jsx-runtime";function K3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function kPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!K3(i)&&(n[r]=i);return n}var BPe,zPe,Fee,Lee,kee,J3=z(()=>{"use strict";mt();pt();gt();Oee();BPe={display:"contents"},zPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Fee={blendMode:"normal",visible:!0};try{uu&&uu.props&&Object.entries(uu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Fee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Lee=t=>{let e=UPe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=DPe(),s=I_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=I_(()=>kPe(t,Fee),[t]),d=I_(()=>({...zPe,...t.transform}),[t.transform]),h=N_(null),f=!!uu.capturesDOM,g=N_(null),[y,_]=Uee(!1),[b,S]=Uee(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));P_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=N_(void 0),v=N_(null);v.current===null&&(ce(a),v.current=ue(uu,u,s));let E=I_(()=>({...e,shaderParentId:s}),[e,s]);P_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,uu.fragmentNode,n,c,v.current,uu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),P_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=N_({}),M=I_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&K3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(P_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(K3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),P_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?FPe(Dee("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return LPe(G.Provider,{value:E,children:[Dee("span",{ref:h,style:BPe,"data-shader-id":s,children:!f&&t.children}),R]})},kee=Lee});var zee=z(()=>{"use strict";N6()});var qee={};yt(qee,{ShaderComponent:()=>Wee,default:()=>jee});import{useContext as VPe,useEffect as O_,useId as GPe,useMemo as U_,useRef as D_,useState as Vee}from"react";import{createPortal as HPe}from"react-dom";import{jsx as Gee,jsxs as WPe}from"react/jsx-runtime";function Q3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function jPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!Q3(i)&&(n[r]=i);return n}var qPe,XPe,Hee,Wee,jee,eD=z(()=>{"use strict";mt();pt();gt();zee();qPe={display:"contents"},XPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Hee={blendMode:"normal",visible:!0};try{fu&&fu.props&&Object.entries(fu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Hee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Wee=t=>{let e=VPe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=GPe(),s=U_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=U_(()=>jPe(t,Hee),[t]),d=U_(()=>({...XPe,...t.transform}),[t.transform]),h=D_(null),f=!!fu.capturesDOM,g=D_(null),[y,_]=Vee(!1),[b,S]=Vee(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));O_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=D_(void 0),v=D_(null);v.current===null&&(ce(a),v.current=ue(fu,u,s));let E=U_(()=>({...e,shaderParentId:s}),[e,s]);O_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,fu.fragmentNode,n,c,v.current,fu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),O_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=D_({}),M=U_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&Q3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(O_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(Q3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),O_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?HPe(Gee("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return WPe(G.Provider,{value:E,children:[Gee("span",{ref:h,style:qPe,"data-shader-id":s,children:!f&&t.children}),R]})},jee=Wee});var Xee=z(()=>{"use strict";I6()});var Qee={};yt(Qee,{ShaderComponent:()=>Kee,default:()=>Jee});import{useContext as $Pe,useEffect as F_,useId as YPe,useMemo as L_,useRef as k_,useState as $ee}from"react";import{createPortal as ZPe}from"react-dom";import{jsx as Yee,jsxs as KPe}from"react/jsx-runtime";function tD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function JPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!tD(i)&&(n[r]=i);return n}var QPe,eIe,Zee,Kee,Jee,nD=z(()=>{"use strict";mt();pt();gt();Xee();QPe={display:"contents"},eIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Zee={blendMode:"normal",visible:!0};try{du&&du.props&&Object.entries(du.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Zee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Kee=t=>{let e=$Pe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=YPe(),s=L_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=L_(()=>JPe(t,Zee),[t]),d=L_(()=>({...eIe,...t.transform}),[t.transform]),h=k_(null),f=!!du.capturesDOM,g=k_(null),[y,_]=$ee(!1),[b,S]=$ee(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));F_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=k_(void 0),v=k_(null);v.current===null&&(ce(a),v.current=ue(du,u,s));let E=L_(()=>({...e,shaderParentId:s}),[e,s]);F_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,du.fragmentNode,n,c,v.current,du,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),F_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=k_({}),M=L_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&tD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(F_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(tD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),F_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?ZPe(Yee("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return KPe(G.Provider,{value:E,children:[Yee("span",{ref:h,style:QPe,"data-shader-id":s,children:!f&&t.children}),R]})},Jee=Kee});var ete=z(()=>{"use strict";O6()});var ste={};yt(ste,{ShaderComponent:()=>ite,default:()=>ote});import{useContext as tIe,useEffect as B_,useId as nIe,useMemo as z_,useRef as V_,useState as tte}from"react";import{createPortal as rIe}from"react-dom";import{jsx as nte,jsxs as iIe}from"react/jsx-runtime";function rD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function oIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!rD(i)&&(n[r]=i);return n}var sIe,aIe,rte,ite,ote,iD=z(()=>{"use strict";mt();pt();gt();ete();sIe={display:"contents"},aIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},rte={blendMode:"normal",visible:!0};try{hu&&hu.props&&Object.entries(hu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(rte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}ite=t=>{let e=tIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=nIe(),s=z_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=z_(()=>oIe(t,rte),[t]),d=z_(()=>({...aIe,...t.transform}),[t.transform]),h=V_(null),f=!!hu.capturesDOM,g=V_(null),[y,_]=tte(!1),[b,S]=tte(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));B_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=V_(void 0),v=V_(null);v.current===null&&(ce(a),v.current=ue(hu,u,s));let E=z_(()=>({...e,shaderParentId:s}),[e,s]);B_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,hu.fragmentNode,n,c,v.current,hu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),B_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=V_({}),M=z_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&rD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(B_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(rD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),B_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?rIe(nte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return iIe(G.Provider,{value:E,children:[nte("span",{ref:h,style:sIe,"data-shader-id":s,children:!f&&t.children}),R]})},ote=ite});var ate=z(()=>{"use strict";U6()});var hte={};yt(hte,{ShaderComponent:()=>dte,default:()=>fte});import{useContext as cIe,useEffect as G_,useId as lIe,useMemo as H_,useRef as W_,useState as cte}from"react";import{createPortal as uIe}from"react-dom";import{jsx as lte,jsxs as dIe}from"react/jsx-runtime";function oD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function fIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!oD(i)&&(n[r]=i);return n}var hIe,mIe,ute,dte,fte,sD=z(()=>{"use strict";mt();pt();gt();ate();hIe={display:"contents"},mIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},ute={blendMode:"normal",visible:!0};try{mu&&mu.props&&Object.entries(mu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(ute[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}dte=t=>{let e=cIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=lIe(),s=H_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=H_(()=>fIe(t,ute),[t]),d=H_(()=>({...mIe,...t.transform}),[t.transform]),h=W_(null),f=!!mu.capturesDOM,g=W_(null),[y,_]=cte(!1),[b,S]=cte(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));G_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=W_(void 0),v=W_(null);v.current===null&&(ce(a),v.current=ue(mu,u,s));let E=H_(()=>({...e,shaderParentId:s}),[e,s]);G_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,mu.fragmentNode,n,c,v.current,mu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),G_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=W_({}),M=H_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&oD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(G_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(oD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),G_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?uIe(lte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return dIe(G.Provider,{value:E,children:[lte("span",{ref:h,style:hIe,"data-shader-id":s,children:!f&&t.children}),R]})},fte=dte});var mte=z(()=>{"use strict";D6()});var bte={};yt(bte,{ShaderComponent:()=>vte,default:()=>xte});import{useContext as pIe,useEffect as j_,useId as gIe,useMemo as q_,useRef as X_,useState as pte}from"react";import{createPortal as yIe}from"react-dom";import{jsx as gte,jsxs as vIe}from"react/jsx-runtime";function aD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function xIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!aD(i)&&(n[r]=i);return n}var bIe,_Ie,yte,vte,xte,cD=z(()=>{"use strict";mt();pt();gt();mte();bIe={display:"contents"},_Ie={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},yte={blendMode:"normal",visible:!0};try{pu&&pu.props&&Object.entries(pu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(yte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}vte=t=>{let e=pIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=gIe(),s=q_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=q_(()=>xIe(t,yte),[t]),d=q_(()=>({..._Ie,...t.transform}),[t.transform]),h=X_(null),f=!!pu.capturesDOM,g=X_(null),[y,_]=pte(!1),[b,S]=pte(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));j_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=X_(void 0),v=X_(null);v.current===null&&(ce(a),v.current=ue(pu,u,s));let E=q_(()=>({...e,shaderParentId:s}),[e,s]);j_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,pu.fragmentNode,n,c,v.current,pu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),j_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=X_({}),M=q_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&aD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(j_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(aD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),j_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?yIe(gte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return vIe(G.Provider,{value:E,children:[gte("span",{ref:h,style:bIe,"data-shader-id":s,children:!f&&t.children}),R]})},xte=vte});var _te=z(()=>{"use strict";F6()});var Ete={};yt(Ete,{ShaderComponent:()=>Tte,default:()=>Cte});import{useContext as SIe,useEffect as $_,useId as wIe,useMemo as Y_,useRef as Z_,useState as Ste}from"react";import{createPortal as MIe}from"react-dom";import{jsx as wte,jsxs as TIe}from"react/jsx-runtime";function lD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function CIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!lD(i)&&(n[r]=i);return n}var EIe,RIe,Mte,Tte,Cte,uD=z(()=>{"use strict";mt();pt();gt();_te();EIe={display:"contents"},RIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Mte={blendMode:"normal",visible:!0};try{gu&&gu.props&&Object.entries(gu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Mte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Tte=t=>{let e=SIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=wIe(),s=Y_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Y_(()=>CIe(t,Mte),[t]),d=Y_(()=>({...RIe,...t.transform}),[t.transform]),h=Z_(null),f=!!gu.capturesDOM,g=Z_(null),[y,_]=Ste(!1),[b,S]=Ste(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));$_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Z_(void 0),v=Z_(null);v.current===null&&(ce(a),v.current=ue(gu,u,s));let E=Y_(()=>({...e,shaderParentId:s}),[e,s]);$_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,gu.fragmentNode,n,c,v.current,gu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),$_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Z_({}),M=Y_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&lD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if($_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(lD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),$_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?MIe(wte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return TIe(G.Provider,{value:E,children:[wte("span",{ref:h,style:EIe,"data-shader-id":s,children:!f&&t.children}),R]})},Cte=Tte});var Rte=z(()=>{"use strict";L6()});var Ute={};yt(Ute,{ShaderComponent:()=>Nte,default:()=>Ote});import{useContext as AIe,useEffect as K_,useId as PIe,useMemo as J_,useRef as Q_,useState as Ate}from"react";import{createPortal as IIe}from"react-dom";import{jsx as Pte,jsxs as NIe}from"react/jsx-runtime";function dD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function OIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!dD(i)&&(n[r]=i);return n}var UIe,DIe,Ite,Nte,Ote,fD=z(()=>{"use strict";mt();pt();gt();Rte();UIe={display:"contents"},DIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Ite={blendMode:"normal",visible:!0};try{yu&&yu.props&&Object.entries(yu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Ite[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Nte=t=>{let e=AIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=PIe(),s=J_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=J_(()=>OIe(t,Ite),[t]),d=J_(()=>({...DIe,...t.transform}),[t.transform]),h=Q_(null),f=!!yu.capturesDOM,g=Q_(null),[y,_]=Ate(!1),[b,S]=Ate(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));K_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Q_(void 0),v=Q_(null);v.current===null&&(ce(a),v.current=ue(yu,u,s));let E=J_(()=>({...e,shaderParentId:s}),[e,s]);K_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,yu.fragmentNode,n,c,v.current,yu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),K_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Q_({}),M=J_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&dD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(K_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(dD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),K_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?IIe(Pte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return NIe(G.Provider,{value:E,children:[Pte("span",{ref:h,style:UIe,"data-shader-id":s,children:!f&&t.children}),R]})},Ote=Nte});var Dte=z(()=>{"use strict";k6()});var Vte={};yt(Vte,{ShaderComponent:()=>Bte,default:()=>zte});import{useContext as FIe,useEffect as eS,useId as LIe,useMemo as tS,useRef as nS,useState as Fte}from"react";import{createPortal as kIe}from"react-dom";import{jsx as Lte,jsxs as BIe}from"react/jsx-runtime";function hD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function zIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!hD(i)&&(n[r]=i);return n}var VIe,GIe,kte,Bte,zte,mD=z(()=>{"use strict";mt();pt();gt();Dte();VIe={display:"contents"},GIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},kte={blendMode:"normal",visible:!0};try{vu&&vu.props&&Object.entries(vu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(kte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Bte=t=>{let e=FIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=LIe(),s=tS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=tS(()=>zIe(t,kte),[t]),d=tS(()=>({...GIe,...t.transform}),[t.transform]),h=nS(null),f=!!vu.capturesDOM,g=nS(null),[y,_]=Fte(!1),[b,S]=Fte(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));eS(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=nS(void 0),v=nS(null);v.current===null&&(ce(a),v.current=ue(vu,u,s));let E=tS(()=>({...e,shaderParentId:s}),[e,s]);eS(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,vu.fragmentNode,n,c,v.current,vu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),eS(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=nS({}),M=tS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&hD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(eS(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(hD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),eS(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?kIe(Lte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return BIe(G.Provider,{value:E,children:[Lte("span",{ref:h,style:VIe,"data-shader-id":s,children:!f&&t.children}),R]})},zte=Bte});var Gte=z(()=>{"use strict";B6()});var $te={};yt($te,{ShaderComponent:()=>qte,default:()=>Xte});import{useContext as HIe,useEffect as rS,useId as WIe,useMemo as iS,useRef as oS,useState as Hte}from"react";import{createPortal as jIe}from"react-dom";import{jsx as Wte,jsxs as qIe}from"react/jsx-runtime";function pD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function XIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!pD(i)&&(n[r]=i);return n}var $Ie,YIe,jte,qte,Xte,gD=z(()=>{"use strict";mt();pt();gt();Gte();$Ie={display:"contents"},YIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},jte={blendMode:"normal",visible:!0};try{xu&&xu.props&&Object.entries(xu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(jte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}qte=t=>{let e=HIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=WIe(),s=iS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=iS(()=>XIe(t,jte),[t]),d=iS(()=>({...YIe,...t.transform}),[t.transform]),h=oS(null),f=!!xu.capturesDOM,g=oS(null),[y,_]=Hte(!1),[b,S]=Hte(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));rS(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=oS(void 0),v=oS(null);v.current===null&&(ce(a),v.current=ue(xu,u,s));let E=iS(()=>({...e,shaderParentId:s}),[e,s]);rS(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,xu.fragmentNode,n,c,v.current,xu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),rS(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=oS({}),M=iS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&pD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(rS(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(pD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),rS(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?jIe(Wte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return qIe(G.Provider,{value:E,children:[Wte("span",{ref:h,style:$Ie,"data-shader-id":s,children:!f&&t.children}),R]})},Xte=qte});var Yte=z(()=>{"use strict";q6()});var tne={};yt(tne,{ShaderComponent:()=>Qte,default:()=>ene});import{useContext as ZIe,useEffect as sS,useId as KIe,useMemo as aS,useRef as cS,useState as Zte}from"react";import{createPortal as JIe}from"react-dom";import{jsx as Kte,jsxs as QIe}from"react/jsx-runtime";function yD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function eNe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!yD(i)&&(n[r]=i);return n}var tNe,nNe,Jte,Qte,ene,vD=z(()=>{"use strict";mt();pt();gt();Yte();tNe={display:"contents"},nNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Jte={blendMode:"normal",visible:!0};try{bu&&bu.props&&Object.entries(bu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Jte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Qte=t=>{let e=ZIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=KIe(),s=aS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=aS(()=>eNe(t,Jte),[t]),d=aS(()=>({...nNe,...t.transform}),[t.transform]),h=cS(null),f=!!bu.capturesDOM,g=cS(null),[y,_]=Zte(!1),[b,S]=Zte(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));sS(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=cS(void 0),v=cS(null);v.current===null&&(ce(a),v.current=ue(bu,u,s));let E=aS(()=>({...e,shaderParentId:s}),[e,s]);sS(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,bu.fragmentNode,n,c,v.current,bu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),sS(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=cS({}),M=aS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&yD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(sS(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(yD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),sS(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?JIe(Kte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return QIe(G.Provider,{value:E,children:[Kte("span",{ref:h,style:tNe,"data-shader-id":s,children:!f&&t.children}),R]})},ene=Qte});var nne=z(()=>{"use strict";$6()});var cne={};yt(cne,{ShaderComponent:()=>sne,default:()=>ane});import{useContext as rNe,useEffect as lS,useId as iNe,useMemo as uS,useRef as dS,useState as rne}from"react";import{createPortal as oNe}from"react-dom";import{jsx as ine,jsxs as sNe}from"react/jsx-runtime";function xD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function aNe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!xD(i)&&(n[r]=i);return n}var cNe,lNe,one,sne,ane,bD=z(()=>{"use strict";mt();pt();gt();nne();cNe={display:"contents"},lNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},one={blendMode:"normal",visible:!0};try{_u&&_u.props&&Object.entries(_u.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(one[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}sne=t=>{let e=rNe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=iNe(),s=uS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=uS(()=>aNe(t,one),[t]),d=uS(()=>({...lNe,...t.transform}),[t.transform]),h=dS(null),f=!!_u.capturesDOM,g=dS(null),[y,_]=rne(!1),[b,S]=rne(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));lS(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=dS(void 0),v=dS(null);v.current===null&&(ce(a),v.current=ue(_u,u,s));let E=uS(()=>({...e,shaderParentId:s}),[e,s]);lS(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,_u.fragmentNode,n,c,v.current,_u,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),lS(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=dS({}),M=uS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&xD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(lS(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(xD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),lS(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?oNe(ine("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return sNe(G.Provider,{value:E,children:[ine("span",{ref:h,style:cNe,"data-shader-id":s,children:!f&&t.children}),R]})},ane=sne});mt();sN();cN();uN();fN();mN();gN();vN();bN();SN();MN();CN();RN();PN();NN();UN();FN();kN();zN();GN();WN();qN();$N();ZN();JN();eO();nO();iO();sO();cO();uO();fO();mO();gO();vO();bO();SO();MO();CO();RO();PO();NO();UO();FO();kO();zO();GO();WO();qO();$O();ZO();JO();eU();nU();iU();sU();cU();uU();fU();mU();gU();vU();bU();SU();MU();CU();RU();PU();NU();UU();FU();kU();zU();GU();WU();qU();$U();ZU();JU();e3();n3();i3();s3();c3();u3();f3();m3();g3();v3();b3();S3();M3();C3();R3();P3();N3();U3();F3();k3();z3();G3();W3();q3();$3();Z3();J3();eD();nD();iD();sD();cD();uD();fD();mD();gD();vD();bD();mt();import{Suspense as uNe,lazy as xt,useEffect as _D,useMemo as dNe,useRef as fNe,useState as lne}from"react";import{jsx as ch,jsxs as hNe}from"react/jsx-runtime";function mNe(t,e){let n=new TextEncoder().encode(e),r=new Uint8Array(t.length);for(let i=0;i<t.length;i++)r[i]=t[i]^n[i%n.length];return r}function pNe(t,e){let n=atob(t),r=new Uint8Array(n.length);for(let a=0;a<n.length;a++)r[a]=n.charCodeAt(a);let i=mNe(r,e),o=new TextDecoder().decode(i);try{return JSON.parse(o)}catch{throw new Error("Failed to decode shader definition: invalid data or incorrect key")}}var gNe=new Set(["break","case","catch","class","const","continue","default","delete","do","else","export","extends","finally","for","function","if","import","in","instanceof","new","return","super","switch","this","throw","try","typeof","var","void","while","with","yield"]);function yNe(t,e){let n=t.replace(/[^A-Za-z0-9]+/g," ").trim();if(!n)return e;let r=n.split(/\s+/).map((o,a)=>a===0?o.charAt(0).toLowerCase()+o.slice(1):o.charAt(0).toUpperCase()+o.slice(1)).join(""),i=/^[A-Za-z_$]/.test(r)?r:`_${r}`;return gNe.has(i)?`_${i}`:i}function vNe(t){let e=new Set(["style"]),n=new Map;return t?.length&&t.forEach((r,i)=>{if(!r.targets?.length)return;let o=yNe(r.label,`keyProp${i}`),a=o,l=1;for(;e.has(a);)l++,a=`${o}${l}`;e.add(a),n.set(a,r)}),n}function une(t,e){for(let n of e){if(n.id===t)return n;if(n.children?.length){let r=une(t,n.children);if(r)return r}}return null}function xNe(t,e,n){if(!e||!n?.length)return t;let r=Object.entries(e);if(r.length===0)return t;let i=vNe(n),o=JSON.parse(JSON.stringify(t.components));for(let[a,l]of r){let s=i.get(a);if(s)for(let u of s.targets??[]){let d=une(u.component_id,o);d?.props&&u.prop in d.props&&(d.props[u.prop]=l)}}return{...t,components:o}}var bNe={AngularBlur:xt(()=>Promise.resolve().then(()=>(sN(),h8))),Ascii:xt(()=>Promise.resolve().then(()=>(cN(),b8))),Aurora:xt(()=>Promise.resolve().then(()=>(uN(),E8))),BarShift:xt(()=>Promise.resolve().then(()=>(fN(),U8))),Beam:xt(()=>Promise.resolve().then(()=>(mN(),V8))),Blob:xt(()=>Promise.resolve().then(()=>(gN(),$8))),Blur:xt(()=>Promise.resolve().then(()=>(vN(),tH))),BrickPattern:xt(()=>Promise.resolve().then(()=>(bN(),cH))),BrightnessContrast:xt(()=>Promise.resolve().then(()=>(SN(),pH))),Bulge:xt(()=>Promise.resolve().then(()=>(MN(),SH))),CRTScreen:xt(()=>Promise.resolve().then(()=>(CN(),AH))),ChannelBlur:xt(()=>Promise.resolve().then(()=>(RN(),FH))),Checkerboard:xt(()=>Promise.resolve().then(()=>(PN(),HH))),Chevron:xt(()=>Promise.resolve().then(()=>(NN(),ZH))),ChromaFlow:xt(()=>Promise.resolve().then(()=>(UN(),rW))),ChromaticAberration:xt(()=>Promise.resolve().then(()=>(FN(),uW))),Circle:xt(()=>Promise.resolve().then(()=>(kN(),yW))),ColorWheel:xt(()=>Promise.resolve().then(()=>(zN(),MW))),ConcentricSpin:xt(()=>Promise.resolve().then(()=>(GN(),IW))),ConicGradient:xt(()=>Promise.resolve().then(()=>(WN(),kW))),ContourLines:xt(()=>Promise.resolve().then(()=>(qN(),jW))),Crescent:xt(()=>Promise.resolve().then(()=>($N(),JW))),Cross:xt(()=>Promise.resolve().then(()=>(ZN(),o7))),Crystal:xt(()=>Promise.resolve().then(()=>(JN(),f7))),CursorRipples:xt(()=>Promise.resolve().then(()=>(eO(),x7))),CursorTrail:xt(()=>Promise.resolve().then(()=>(nO(),C7))),DOMTexture:xt(()=>Promise.resolve().then(()=>(iO(),O7))),DiamondGradient:xt(()=>Promise.resolve().then(()=>(sO(),z7))),DiffuseBlur:xt(()=>Promise.resolve().then(()=>(cO(),X7))),Dither:xt(()=>Promise.resolve().then(()=>(uO(),ej))),DotGrid:xt(()=>Promise.resolve().then(()=>(fO(),aj))),DropShadow:xt(()=>Promise.resolve().then(()=>(mO(),mj))),Duotone:xt(()=>Promise.resolve().then(()=>(gO(),_j))),Ellipse:xt(()=>Promise.resolve().then(()=>(vO(),Rj))),Emboss:xt(()=>Promise.resolve().then(()=>(bO(),Dj))),FallingLines:xt(()=>Promise.resolve().then(()=>(SO(),Gj))),FilmGrain:xt(()=>Promise.resolve().then(()=>(MO(),Yj))),FloatingParticles:xt(()=>Promise.resolve().then(()=>(CO(),nq))),FlowField:xt(()=>Promise.resolve().then(()=>(RO(),lq))),Flower:xt(()=>Promise.resolve().then(()=>(PO(),gq))),FlowingGradient:xt(()=>Promise.resolve().then(()=>(NO(),wq))),FlutedGlass:xt(()=>Promise.resolve().then(()=>(UO(),Pq))),Fog:xt(()=>Promise.resolve().then(()=>(FO(),Lq))),Form3D:xt(()=>Promise.resolve().then(()=>(kO(),Wq))),FractalNoise:xt(()=>Promise.resolve().then(()=>(zO(),Kq))),Glass:xt(()=>Promise.resolve().then(()=>(GO(),iX))),GlassTiles:xt(()=>Promise.resolve().then(()=>(WO(),dX))),Glitch:xt(()=>Promise.resolve().then(()=>(qO(),vX))),Glow:xt(()=>Promise.resolve().then(()=>($O(),TX))),Godrays:xt(()=>Promise.resolve().then(()=>(ZO(),NX))),Grayscale:xt(()=>Promise.resolve().then(()=>(JO(),BX))),Grid:xt(()=>Promise.resolve().then(()=>(eU(),qX))),GridDistortion:xt(()=>Promise.resolve().then(()=>(nU(),QX))),Group:xt(()=>Promise.resolve().then(()=>(iU(),s$))),Halftone:xt(()=>Promise.resolve().then(()=>(sU(),h$))),HexGrid:xt(()=>Promise.resolve().then(()=>(cU(),b$))),HueShift:xt(()=>Promise.resolve().then(()=>(uU(),E$))),ImageTexture:xt(()=>Promise.resolve().then(()=>(fU(),U$))),Invert:xt(()=>Promise.resolve().then(()=>(mU(),V$))),Kaleidoscope:xt(()=>Promise.resolve().then(()=>(gU(),$$))),LensFlare:xt(()=>Promise.resolve().then(()=>(vU(),tY))),LinearBlur:xt(()=>Promise.resolve().then(()=>(bU(),cY))),LinearGradient:xt(()=>Promise.resolve().then(()=>(SU(),pY))),Liquify:xt(()=>Promise.resolve().then(()=>(MU(),SY))),Marble:xt(()=>Promise.resolve().then(()=>(CU(),AY))),Mirror:xt(()=>Promise.resolve().then(()=>(RU(),FY))),MultiPointGradient:xt(()=>Promise.resolve().then(()=>(PU(),HY))),Neon:xt(()=>Promise.resolve().then(()=>(NU(),ZY))),Paper:xt(()=>Promise.resolve().then(()=>(UU(),rZ))),Perspective:xt(()=>Promise.resolve().then(()=>(FU(),uZ))),Pixelate:xt(()=>Promise.resolve().then(()=>(kU(),yZ))),Plasma:xt(()=>Promise.resolve().then(()=>(zU(),MZ))),PolarCoordinates:xt(()=>Promise.resolve().then(()=>(GU(),IZ))),Polygon:xt(()=>Promise.resolve().then(()=>(WU(),kZ))),Posterize:xt(()=>Promise.resolve().then(()=>(qU(),jZ))),ProgressiveBlur:xt(()=>Promise.resolve().then(()=>($U(),JZ))),RadialGradient:xt(()=>Promise.resolve().then(()=>(ZU(),oK))),RectangularCoordinates:xt(()=>Promise.resolve().then(()=>(JU(),fK))),Ring:xt(()=>Promise.resolve().then(()=>(e3(),xK))),Ripples:xt(()=>Promise.resolve().then(()=>(n3(),CK))),RoundedRect:xt(()=>Promise.resolve().then(()=>(i3(),OK))),Saturation:xt(()=>Promise.resolve().then(()=>(s3(),zK))),Sharpness:xt(()=>Promise.resolve().then(()=>(c3(),XK))),Shatter:xt(()=>Promise.resolve().then(()=>(u3(),eJ))),SimplexNoise:xt(()=>Promise.resolve().then(()=>(f3(),aJ))),SineWave:xt(()=>Promise.resolve().then(()=>(m3(),mJ))),Smoke:xt(()=>Promise.resolve().then(()=>(g3(),_J))),SmokeFill:xt(()=>Promise.resolve().then(()=>(v3(),RJ))),Solarize:xt(()=>Promise.resolve().then(()=>(b3(),DJ))),SolidColor:xt(()=>Promise.resolve().then(()=>(S3(),GJ))),Spherize:xt(()=>Promise.resolve().then(()=>(M3(),YJ))),Spiral:xt(()=>Promise.resolve().then(()=>(C3(),nQ))),Star:xt(()=>Promise.resolve().then(()=>(R3(),lQ))),Strands:xt(()=>Promise.resolve().then(()=>(P3(),gQ))),Stretch:xt(()=>Promise.resolve().then(()=>(N3(),wQ))),Stripes:xt(()=>Promise.resolve().then(()=>(U3(),PQ))),StudioBackground:xt(()=>Promise.resolve().then(()=>(F3(),LQ))),SunBurst:xt(()=>Promise.resolve().then(()=>(k3(),WQ))),Swirl:xt(()=>Promise.resolve().then(()=>(z3(),KQ))),TiltShift:xt(()=>Promise.resolve().then(()=>(G3(),iee))),Tint:xt(()=>Promise.resolve().then(()=>(W3(),dee))),Trapezoid:xt(()=>Promise.resolve().then(()=>(q3(),vee))),Tritone:xt(()=>Promise.resolve().then(()=>($3(),Tee))),Truchet:xt(()=>Promise.resolve().then(()=>(Z3(),Nee))),Twirl:xt(()=>Promise.resolve().then(()=>(J3(),Bee))),VHS:xt(()=>Promise.resolve().then(()=>(eD(),qee))),Vesica:xt(()=>Promise.resolve().then(()=>(nD(),Qee))),Vibrance:xt(()=>Promise.resolve().then(()=>(iD(),ste))),VideoTexture:xt(()=>Promise.resolve().then(()=>(sD(),hte))),Vignette:xt(()=>Promise.resolve().then(()=>(cD(),bte))),Voronoi:xt(()=>Promise.resolve().then(()=>(uD(),Ete))),WaveDistortion:xt(()=>Promise.resolve().then(()=>(fD(),Ute))),Weave:xt(()=>Promise.resolve().then(()=>(mD(),Vte))),WebcamTexture:xt(()=>Promise.resolve().then(()=>(gD(),$te))),WorleyNoise:xt(()=>Promise.resolve().then(()=>(vD(),tne))),ZoomBlur:xt(()=>Promise.resolve().then(()=>(bD(),cne)))},_Ne="shaders-preview-key";function SNe(t){return t.split(";").reduce((e,n)=>{let[r,...i]=n.split(":");if(!r?.trim())return e;let o=i.join(":").trim(),a=r.trim(),l=a.startsWith("--")?a:a.replace(/-([a-z])/g,(s,u)=>u.toUpperCase());return e[l]=o,e},{})}function dne({component:t}){let e=bNe[t.type];if(!e)return console.warn(`[Shaders Preview] Unknown component type: ${t.type}`),null;let{type:n,children:r,id:i,props:o,...a}=t,l={...a,...o};return i&&(l.id=i),ch(e,{...l,children:r?.map((s,u)=>ch(dne,{component:s},s.id||u))})}var wNe=({shader:t,presetId:e,apiBaseUrl:n="https://shaders.com",obfuscationKey:r=_Ne,watermarkText:i="Unlock your Shaders Pro license",watermarkLink:o="https://shaders.com/dashboard?pricing=true",style:a,className:l,configuration:s,version:u,...d})=>{let[h,f]=lne(null),[g,y]=lne(null),_=w=>{f(null),y(null),fetch(w).then(v=>{if(!v.ok)throw new Error(`Failed to fetch: ${v.status}`);return v.json()}).then(v=>{let E=v.preset||v.shader;E?.definition&&typeof E.definition=="string"&&(f(pNe(E.definition,r)),y(Array.isArray(E.key_props)?E.key_props:null))}).catch(v=>{console.error("[Shaders Preview] Failed to fetch preview:",v)})};_D(()=>{t?_(`${n}/api/preview/shader/${t}`):e||(f(null),y(null))},[t,e,n,r]),_D(()=>{e?_(`${n}/api/preview/preset/${e}${u?`?version=${encodeURIComponent(u)}`:""}`):t||(f(null),y(null))},[e,t,n,r,u]);let b=dNe(()=>h?xNe(h,s,g):null,[h,g,s]),S=fNe(!1);return _D(()=>{!S.current&&b&&(S.current=!0,console.warn("[Shaders] The Preview component is intended for use with a valid Shaders license. Please visit https://shaders.com for more information."))},[b]),b?hNe("div",{style:{position:"relative",...typeof a=="string"?SNe(a):a},className:l,...d,children:[ch(uNe,{fallback:null,children:ch(iN,{colorSpace:b.colorSpace||"p3-linear",isPreview:!0,style:{width:"100%",height:"100%"},children:b.components.map((w,v)=>ch(dne,{component:w},w.id||v))})}),i&&ch("div",{style:{position:"absolute",bottom:"8px",right:"12px",fontSize:"11px",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',color:"rgba(255, 255, 255, 0.5)",textShadow:"0 1px 3px rgba(0, 0, 0, 0.4)",pointerEvents:o?"auto":"none",zIndex:10,transition:"color 0.2s ease"},onMouseEnter:w=>{o&&(w.currentTarget.style.color="rgba(255, 255, 255, 0.8)")},onMouseLeave:w=>{o&&(w.currentTarget.style.color="rgba(255, 255, 255, 0.5)")},children:o?ch("a",{href:o,target:"_blank",rel:"noopener noreferrer",style:{color:"inherit",textDecoration:"none"},children:i}):i})]}):null};export{f8 as AngularBlur,x8 as Ascii,C8 as Aurora,O8 as BarShift,z8 as Beam,X8 as Blob,eH as Blur,aH as BrickPattern,mH as BrightnessContrast,_H as Bulge,RH as CRTScreen,DH as ChannelBlur,GH as Checkerboard,YH as Chevron,nW as ChromaFlow,lW as ChromaticAberration,gW as Circle,wW as ColorWheel,PW as ConcentricSpin,LW as ConicGradient,WW as ContourLines,KW as Crescent,i7 as Cross,d7 as Crystal,v7 as CursorRipples,T7 as CursorTrail,N7 as DOMTexture,B7 as DiamondGradient,q7 as DiffuseBlur,Q7 as Dither,sj as DotGrid,hj as DropShadow,bj as Duotone,Ej as Ellipse,Uj as Emboss,Vj as FallingLines,$j as FilmGrain,tq as FloatingParticles,cq as FlowField,pq as Flower,Sq as FlowingGradient,Aq as FlutedGlass,Fq as Fog,Hq as Form3D,Zq as FractalNoise,rX as Glass,uX as GlassTiles,yX as Glitch,MX as Glow,IX as Godrays,kX as Grayscale,jX as Grid,JX as GridDistortion,o$ as Group,f$ as Halftone,x$ as HexGrid,C$ as HueShift,O$ as ImageTexture,z$ as Invert,X$ as Kaleidoscope,eY as LensFlare,aY as LinearBlur,mY as LinearGradient,_Y as Liquify,RY as Marble,DY as Mirror,GY as MultiPointGradient,YY as Neon,nZ as Paper,lZ as Perspective,gZ as Pixelate,wZ as Plasma,PZ as PolarCoordinates,LZ as Polygon,WZ as Posterize,wNe as Preview,KZ as ProgressiveBlur,iK as RadialGradient,dK as RectangularCoordinates,vK as Ring,TK as Ripples,NK as RoundedRect,BK as Saturation,axe as Shader,qK as Sharpness,QK as Shatter,sJ as SimplexNoise,hJ as SineWave,bJ as Smoke,EJ as SmokeFill,UJ as Solarize,VJ as SolidColor,$J as Spherize,tQ as Spiral,cQ as Star,pQ as Strands,SQ as Stretch,AQ as Stripes,FQ as StudioBackground,HQ as SunBurst,ZQ as Swirl,ree as TiltShift,uee as Tint,yee as Trapezoid,Mee as Tritone,Iee as Truchet,kee as Twirl,jee as VHS,Jee as Vesica,ote as Vibrance,fte as VideoTexture,xte as Vignette,Cte as Voronoi,Ote as WaveDistortion,zte as Weave,Xte as WebcamTexture,ene as WorleyNoise,ane as ZoomBlur};
4549
+ Error:`,x),a=!1})}catch(m){console.error("[ImageTexture] Error initiating image load:",m),a=!1}}};setTimeout(()=>{let c=t?.url?.uniform?.value??"";c&&c.trim()!==""&&_(c)},0),n(()=>{let c=t?.url?.uniform?.value??"";c!==o&&!a&&_(c)}),e(()=>{l.dispose()});let b=r,S=$.x.div($.y),w=t.objectFit.uniform.value,v;switch(w){case 1:{let c=_n(S.div(u),p(1));v=I(u.div(S).mul(c),c);break}case 2:v=I(1,1);break;case 3:{let c=_n(_n(S.div(u),p(1)),_n($.x.div(d),$.y.div(h)));v=I(u.div(S).mul(c),c);break}case 4:{let c=_n($.x.div(d),$.y.div(h));v=I(u.div(S).mul(c),c);break}default:{let c=Pt(S.div(u),p(1));v=I(u.div(S).mul(c),c);break}}let E=b.sub(I(.5)).div(v).add(I(.5)),C=I(E.x,p(1).sub(E.y)),M=s.sample(C),R=uo(uo(C.x.lessThan(0),C.x.greaterThan(1)),uo(C.y.lessThan(0),C.y.greaterThan(1)));return F(M.rgb,fo(R,p(0),M.a))}}});var vl,I9=z(()=>{"use strict";ut();vl={name:"Invert",category:"Adjustments",description:"Invert RGB colors while preserving alpha",requiresChild:!0,props:{},fragmentNode:({childNode:t})=>{if(!t)return console.error("You must pass a child component into the Invert shader."),F(0);let e=t||F(0,0,0,0);return F(_e(1,1,1).sub(e.rgb),e.a)}}});var xl,N9=z(()=>{"use strict";gi();Dt();Wn();ut();xl={name:"Kaleidoscope",category:"Distortions",description:"Create a kaleidoscope effect with radial mirrored segments",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:wt,description:"The center point of the kaleidoscope effect",ui:{type:"position",label:"Center",group:"Position"}},segments:{default:6,description:"Number of radial segments in the kaleidoscope",ui:{type:["range","map"],min:2,max:24,step:1,label:"Segments",group:"Effect"}},angle:{default:0,description:"Rotation offset for the entire kaleidoscope pattern",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},edges:{default:"mirror",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=$.x.div($.y),o=I(j.x.mul(i),j.y),a=I(t.center.uniform.x.mul(i),t.center.uniform.y.oneMinus()),l=o.sub(a),s=Vn(l),u=Qn(l.y,l.x),d=t.angle.uniform.mul(Math.PI/180),h=u.add(d),f=p(Math.PI*2).div(t.segments.uniform),g=pr(h,f.mul(2)),y=g.greaterThan(f).select(f.mul(2).sub(g),g),_=I(Ye(y).mul(s),fe(y).mul(s)),b=a.add(_),S=I(b.x.div(i),b.y);return Vt(Ln(S,r.sample(S),r,t.edges.uniform.value))}}});var Xye,bl,O9=z(()=>{"use strict";Dt();gr();ut();Xye=qe(([t])=>{let e=p(6.2831853);return _e(Ye(e.mul(t)).mul(.5).add(.5),Ye(e.mul(t.sub(.333))).mul(.5).add(.5),Ye(e.mul(t.sub(.666))).mul(.5).add(.5))}),bl={name:"LensFlare",category:"Stylize",description:"Realistic camera lens flare with artifacts.",props:{lightPosition:{default:{x:.3,y:.3},transform:wt,description:"Position of the light source",ui:{type:"position",label:"Light Position",group:"Light"}},intensity:{default:.5,description:"Master brightness of the entire lens flare effect",ui:{type:["range","map"],min:0,max:2,step:.01,label:"Intensity",group:"Light"}},ghostIntensity:{default:.4,description:"Brightness of internal reflection ghost discs along the flare axis",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Ghosts",group:"Reflections"}},ghostSpread:{default:.7,description:"Spacing between ghost reflections along the flare axis",ui:{type:"range",min:.1,max:2,step:.01,label:"Ghost Spread",group:"Reflections"}},ghostChroma:{default:.3,description:"Rainbow chromatic fringing around ghost element edges",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Ghost Chroma",group:"Reflections"}},haloIntensity:{default:.4,description:"Brightness of the circular halo ring from internal reflection",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Halo",group:"Reflections"}},haloRadius:{default:.6,description:"Radius of the halo ring",ui:{type:"range",min:.1,max:1,step:.01,label:"Halo Size",group:"Reflections"}},haloChroma:{default:.6,description:"Spectral dispersion on the halo creating rainbow color separation",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Halo Chroma",group:"Reflections"}},haloSoftness:{default:.8,description:"Thickness and softness of the halo ring",ui:{type:["range","map"],min:.01,max:3,step:.01,label:"Halo Softness",group:"Reflections"}},starburstIntensity:{default:.3,description:"Brightness of diffraction spikes radiating from the light source",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Starburst",group:"Effects"}},starburstPoints:{default:6,description:"Number of starburst spikes (simulates aperture blade count)",ui:{type:["range","map"],min:4,max:16,step:1,label:"Blades",group:"Effects"}},streakIntensity:{default:.15,description:"Brightness of horizontal anamorphic light streak",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Streak",group:"Effects"}},streakLength:{default:.5,description:"Horizontal extent of the anamorphic streak",ui:{type:["range","map"],min:.1,max:1,step:.01,label:"Streak Length",group:"Effects"}},glareIntensity:{default:.2,description:"Soft veiling glare that washes out contrast around the light",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Glare",group:"Effects"}},glareSize:{default:.5,description:"Size of the soft glare glow",ui:{type:["range","map"],min:.1,max:1,step:.01,label:"Glare Size",group:"Effects"}},edgeFade:{default:.2,description:"How much the flare fades when the light source is near the screen edge (0 = no fade, 1 = heavy fade)",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Edge Fade",group:"Light"}},speed:{default:.5,description:"Speed of subtle flare shimmer and starburst rotation",ui:{type:"range",min:0,max:3,step:.1,label:"Speed",group:"Animation"}}},fragmentNode:t=>{let{uniforms:e}=t,n=e.intensity.uniform,r=e.ghostIntensity.uniform,i=e.ghostSpread.uniform,o=e.ghostChroma.uniform,a=e.haloIntensity.uniform,l=e.haloRadius.uniform,s=e.haloChroma.uniform,u=e.haloSoftness.uniform,d=e.starburstIntensity.uniform,h=e.starburstPoints.uniform,f=e.streakIntensity.uniform,g=e.streakLength.uniform,y=e.glareIntensity.uniform,_=e.glareSize.uniform,b=$.x.div($.y),S=j,w=I(e.lightPosition.uniform.x,e.lightPosition.uniform.y.oneMinus()),v=I(.5,.5).sub(w),E=fn(t,e.speed),C=fe(E.mul(3.7)).mul(.04).add(fe(E.mul(7.3)).mul(.03)).add(fe(E.mul(13.1)).mul(.02)).add(.97),M=e.edgeFade.uniform,R=Pt(Et(w.x.sub(.5)).mul(2),Et(w.y.sub(.5)).mul(2)),c=p(1).sub(M.mul(.5)),m=Re(p(1),Oe(c,p(1),R).oneMinus(),M),x=n.mul(m).mul(C),T=I(S.x.sub(w.x).mul(b),S.y.sub(w.y)),N=T.length(),B=[{offset:.15,size:.2,bright:.3,hollow:.1,r:1,g:.95,b:.9},{offset:.3,size:.12,bright:.25,hollow:.65,r:1,g:.85,b:.55},{offset:.5,size:.08,bright:.35,hollow:.15,r:.62,g:.82,b:1},{offset:.72,size:.14,bright:.18,hollow:.75,r:.75,g:1,b:.7},{offset:.95,size:.06,bright:.3,hollow:0,r:1,g:.6,b:.85},{offset:1.25,size:.1,bright:.15,hollow:.8,r:.55,g:.88,b:1},{offset:1.55,size:.07,bright:.2,hollow:.25,r:1,g:.92,b:.6}],D=_e(0,0,0);for(let H=0;H<B.length;H++){let Q=B[H],se=w.add(v.mul(p(Q.offset).mul(i).mul(2))),Te=I(S.x.sub(se.x).mul(b),S.y.sub(se.y)).length(),Ie=p(Q.size),J=Oe(Ie.mul(.12),Ie,Te).oneMinus(),ee=Oe(Ie.mul(.05),Ie.mul(.45),Te).oneMinus(),Se=J.mul(p(1).sub(ee.mul(p(Q.hollow)))),Je=p(H*2.17),Fe=fe(E.mul(4.3).add(Je)).mul(.08).add(fe(E.mul(9.1).add(Je.mul(1.7))).mul(.05)).add(.95),Qe=Ie.mul(.78),Nt=Ie.mul(o).mul(.14),Ot=Ie.mul(.1),en=Oe(p(0),Ot,Et(Te.sub(Qe.add(Nt)))).oneMinus(),ne=Oe(p(0),Ot,Et(Te.sub(Qe))).oneMinus(),st=Oe(p(0),Ot,Et(Te.sub(Qe.sub(Nt)))).oneMinus(),ze=p(Q.bright).mul(r).mul(Fe),Rt=_e(Se.mul(p(Q.r)).add(en.mul(o)).mul(ze),Se.mul(p(Q.g)).add(ne.mul(o)).mul(ze),Se.mul(p(Q.b)).add(st.mul(o)).mul(ze));D=D.add(Rt)}let O=I(p(1).sub(w.x),p(1).sub(w.y)),L=I(S.x.sub(O.x).mul(b),S.y.sub(O.y)),V=L.length(),Z=l.mul(s).mul(.06),q=u.mul(.12).add(.005),ae=Oe(p(0),q,Et(V.sub(l.add(Z)))).oneMinus(),we=Oe(p(0),q,Et(V.sub(l))).oneMinus(),Ae=Oe(p(0),q,Et(V.sub(l.sub(Z)))).oneMinus(),Ge=fe(Qn(L.y,L.x).mul(3).add(E.mul(.5))).mul(.12).add(.88),et=_e(ae,we,Ae).mul(a).mul(Ge),Ze=Qn(T.y,T.x),he=Qn(v.y,v.x.mul(b)).mul(.5).add(E.mul(.06)),Me=Ze.add(he),Pe=Bt(Et(Ye(Me.mul(h.div(2)))),p(3.5)),We=Bt(Et(Ye(Me.add(.25).mul(h.div(2)))),p(7)).mul(.4),Xe=p(1).div(p(1).add(N.mul(N).mul(60))),le=Xye(Me.div(p(6.2831853)).add(.5)),rt=Re(_e(1,.97,.92),le,p(.12)),De=Pe.add(We).mul(Xe).mul(d).mul(rt),K=Et(S.y.sub(w.y)),be=Et(S.x.sub(w.x)),Ee=p(-800).mul(K).mul(K).exp(),Be=g.mul(g).mul(.25).add(.001),Ke=p(-1).mul(be).mul(be).div(Be.mul(.7)).exp(),ct=p(-1).mul(be).mul(be).div(Be).exp(),X=p(-1).mul(be).mul(be).div(Be.mul(1.4)).exp(),at=_e(Ee.mul(Ke).mul(.5),Ee.mul(ct).mul(.65),Ee.mul(X).mul(.9)).mul(f),nt=p(1).div(_.mul(_).add(.01)),Ct=p(-1).mul(N).mul(N).mul(nt).exp().mul(y).mul(_e(1,.98,.95)),me=p(-500).mul(N).mul(N).exp(),ke=Oe(p(0),p(.025),N).oneMinus(),k=me.add(ke.mul(1.5)).mul(_e(1,.98,.96)).mul(n),P=D.add(et).add(De).add(at).add(Ct).add(k).mul(x);return F(P,Tt(kt(P,_e(.299,.587,.114)).mul(2),0,1))}}});var U9,$ye,Yye,_l,D9=z(()=>{"use strict";Dt();Wn();ut();U9=Array.from({length:32},(t,e)=>{let n=(e/31-.5)*2;return Math.exp(-.5*n*n/.64)}),$ye=U9.reduce((t,e)=>t+e),Yye=U9.map(t=>t/$ye),_l={name:"LinearBlur",category:"Blurs",description:"Directional motion blur in a specific angle",requiresRTT:!0,requiresChild:!0,props:{intensity:{default:30,description:"Intensity of the linear blur effect",ui:{type:["range","map"],min:0,max:100,step:1,label:"Intensity",group:"Effect"}},angle:{default:0,transform:sr,description:"Direction of the linear blur (in degrees)",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=qr(t.angle.uniform),o=$.x.div($.y),a=I(Ye(i).div(o),fe(i));return qe(()=>{let l=j,s=a.mul(t.intensity.uniform).div($).mul(2),u=F(0).toVar();for(let d=0;d<32;d++){let h=l.add(s.mul(d/31-.5));u.assign(u.add(r.sample(h).mul(p(Yye[d]))))}return Vt(u)})()}}});var Sl,F9=z(()=>{"use strict";Dt();On();ut();Sl={name:"LinearGradient",category:"Textures",description:"Create smooth linear color gradients",props:{colorA:{default:"#1aff00",transform:Ce,description:"The starting color of the gradient",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#0000ff",transform:Ce,description:"The ending color of the gradient",ui:{type:"color",label:"Color B",group:"Colors"}},start:{default:{x:0,y:.5},transform:wt,description:"The starting point of the gradient",ui:{type:"position",label:"Start",group:"Position"}},end:{default:{x:1,y:.5},transform:wt,description:"The ending point of the gradient",ui:{type:"position",label:"End",group:"Position"}},angle:{default:0,transform:sr,description:"Additional rotation angle of the gradient (in degrees)",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},edges:{default:"stretch",transform:Bn,compileTime:!0,description:"How to handle areas beyond the gradient endpoints",ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=I(t.start.uniform[0],t.start.uniform[1].oneMinus()),r=I(t.end.uniform[0],t.end.uniform[1].oneMinus()),i=r.sub(n),o=Vn(i),a=wo(i),l=$.y.max(1e-6),s=$.x.div(l),u=qr(t.angle.uniform).negate(),d=Ye(u),h=fe(u),f=n.add(r).mul(.5),g=e.sub(f),y=I(g.x.mul(s),g.y),_=I(y.x.mul(d).sub(y.y.mul(h)),y.x.mul(h).add(y.y.mul(d))),b=kt(I(_.x.div(s),_.y).add(f).sub(n),a).div(o.max(1e-6)),S=t.edges.uniform.value,w;switch(S){case 1:w=b;break;case 2:{let C=pr(Et(b),p(2));w=C.greaterThan(p(1)).select(p(2).sub(C),C);break}case 3:w=St(b);break;default:w=b.clamp(p(0),p(1))}let v=Lt(t.colorA.uniform,t.colorB.uniform,w.clamp(p(0),p(1)),t.colorSpace.uniform.value),E;if(S===1){let C=b.greaterThanEqual(p(0)).select(p(1),p(0)),M=b.lessThanEqual(p(1)).select(p(1),p(0)),R=C.mul(M);E=v.w.mul(R)}else E=v.w;return F(v.x,v.y,v.z,E)}}});var bn,wl,L9=z(()=>{"use strict";gi();Dt();Wn();Li();Bi();ut();bn=64,wl={name:"Liquify",category:"Interactive",description:"Liquid-like interactive deformation effect",requiresRTT:!0,requiresChild:!0,usesPointer:!0,props:{intensity:{default:10,description:"Scale of the fabric displacement effect",ui:{type:["range","map"],min:0,max:20,step:.1,label:"Intensity",group:"Effect"}},stiffness:{default:3,description:"Fabric rigidity (higher = stiffer canvas, lower = stretchy silk)",ui:{type:"range",min:1,max:30,step:.5,label:"Stiffness",group:"Effect"}},damping:{default:3,description:"How quickly fabric motion settles",ui:{type:"range",min:0,max:10,step:.1,label:"Damping",group:"Effect"}},radius:{default:1,description:"Cursor influence area",ui:{type:"range",min:.1,max:1.5,step:.1,label:"Radius",group:"Effect"}},edges:{default:"stretch",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},computeNode:({uniforms:t,onCleanup:e})=>{let n=br(bn*bn,"vec4"),r=br(bn*bn,"vec4"),i=new Nr(bn,bn);i.type=on;let o=Er(i);e(()=>{i.dispose()});let a=oe(.5),l=oe(.5),s=oe(0),u=oe(0),d=oe(0),h=oe(.016),f=oe(.008),g=oe(3),y=oe(.97),_=oe(.08),b=oe(1),S=Tn(bn),w=Tn(bn-1),v=(N,B)=>qe(()=>{let D=Kt,O=D.mod(S),L=D.div(S);Pn(L.greaterThan(Tn(0)).and(L.lessThan(w)).and(O.greaterThan(Tn(0))).and(O.lessThan(w)),()=>{let V=N.element(D),Z=V.x,q=V.y,ae=V.z,we=V.w,Ae=D.sub(Tn(1)),Ge=D.add(Tn(1)),et=D.sub(S),Ze=D.add(S),he=D.sub(S).sub(Tn(1)),Me=D.sub(S).add(Tn(1)),Pe=D.add(S).sub(Tn(1)),We=D.add(S).add(Tn(1)),Xe=g.mul(N.element(Ae).x.sub(Z).add(N.element(Ge).x.sub(Z)).add(N.element(et).x.sub(Z)).add(N.element(Ze).x.sub(Z))).toVar(),le=g.mul(N.element(Ae).y.sub(q).add(N.element(Ge).y.sub(q)).add(N.element(et).y.sub(q)).add(N.element(Ze).y.sub(q))).toVar(),rt=g.mul(p(.35));Xe.assign(Xe.add(rt.mul(N.element(he).x.sub(Z).add(N.element(Me).x.sub(Z)).add(N.element(Pe).x.sub(Z)).add(N.element(We).x.sub(Z))))),le.assign(le.add(rt.mul(N.element(he).y.sub(q).add(N.element(Me).y.sub(q)).add(N.element(Pe).y.sub(q)).add(N.element(We).y.sub(q))))),Xe.assign(Xe.sub(g.mul(p(.1)).mul(Z))),le.assign(le.sub(g.mul(p(.1)).mul(q)));let De=ae.mul(y).add(Xe.mul(f)).toVar(),K=we.mul(y).add(le.mul(f)).toVar();Pn(d.greaterThan(p(.01)),()=>{let Be=O.toFloat().add(p(.5)).div(p(bn)),Ke=L.toFloat().add(p(.5)).div(p(bn)),ct=b.greaterThanEqual(p(1)).select(Be.sub(a).mul(b),Be.sub(a)),X=b.greaterThanEqual(p(1)).select(Ke.sub(l),Ke.sub(l).div(b)),at=ct.mul(ct).add(X.mul(X)),nt=_.mul(p(3));Pn(at.lessThan(nt.mul(nt)),()=>{let Ct=at.negate().div(_.mul(_)).exp().mul(d).mul(h).mul(p(2));De.assign(De.add(s.mul(Ct))),K.assign(K.add(u.mul(Ct)))})});let be=Z.add(De.mul(f)).clamp(p(-.5),p(.5)),Ee=q.add(K.mul(f)).clamp(p(-.5),p(.5));B.element(D).assign(F(be,Ee,De,K))})})().compute(bn*bn,[256]),E=N=>qe(()=>{let B=Kt,D=B.mod(S),O=B.div(S),L=N.element(B);er(o,En(D,O),F(L.x,L.y,p(0),p(1))).toWriteOnly()})().compute(bn*bn,[256]),C=v(n,r),M=v(r,n),R=E(n),c=.5,m=.5,x=Date.now(),T=Date.now();return{outputs:{displacement:i},getComputeNodes:N=>{let B=Date.now(),D=Math.min((B-x)/1e3,.016);if(x=B,D<=0)return null;let O=Math.max(1,N.dimensions.width)/Math.max(1,N.dimensions.height),L=t.stiffness.uniform.value,V=t.damping.uniform.value,Z=t.radius.uniform.value*.08,q=(N.pointer.x-c)/D,ae=(N.pointer.y-m)/D,we=Math.sqrt(q*q+ae*ae),Ae=Math.min(we,3);c=N.pointer.x,m=N.pointer.y,Ae>.01&&(T=B);let Ge=t.damping.uniform.value,et=Ge>0?Math.min(3e4,5e3/Ge):3e4;if(B-T>et)return null;let Ze=D/2;return a.value=N.pointer.x,l.value=N.pointer.y,s.value=we>.01?q/we:0,u.value=we>.01?ae/we:0,d.value=Ae,h.value=D,f.value=Ze,g.value=L,y.value=Math.max(0,Math.min(1,1-V*Ze)),_.value=Z,b.value=O,[C,M,R]}}},fragmentNode:({uniforms:t,onBeforeRender:e,childNode:n,onCleanup:r,computeOutputs:i})=>{if(!n)return F(0,0,0,0);let o=i?.childTexture??It(n);i||r(()=>{o?.renderTarget?.dispose&&o.renderTarget.dispose()});let a;if(i?.displacement)o.sample(j),a=vn(i.displacement).sample(j).xy;else{let f=new Float32Array(bn*bn),g=new Float32Array(bn*bn),y=new Float32Array(bn*bn),_=new Float32Array(bn*bn),b=new Float32Array(bn*bn),S=new Float32Array(bn*bn),w=new Float32Array(bn*bn),v=new Float32Array(bn*bn),E=new Float32Array(bn*bn*2),C=new ir(E,bn,bn,Tr,on);C.magFilter=sn,C.minFilter=sn,C.needsUpdate=!0;let M=vn(C),R=.5,c=.5,m=Date.now(),x=2;e(({pointer:T,dimensions:N})=>{let B=Date.now(),D=Math.min((B-m)/1e3,.016);if(m=B,D<=0)return;let O=Math.max(1,N.width)/Math.max(1,N.height),L=t.stiffness.uniform.value,V=t.damping.uniform.value,Z=t.radius.uniform.value*.08,q=(T.x-R)/D,ae=(T.y-c)/D,we=Math.sqrt(q*q+ae*ae),Ae=Math.min(we,3),Ge=0,et=0;we>.01&&(Ge=q/we,et=ae/we);let Ze=D/x;for(let he=0;he<x;he++){if(he===0&&Ae>.01){let We=Z*3,Xe=Math.max(1,Math.floor((T.y-We)*bn)),le=Math.min(bn-2,Math.ceil((T.y+We)*bn)),rt=Math.max(1,Math.floor((T.x-We)*bn)),De=Math.min(bn-2,Math.ceil((T.x+We)*bn));for(let K=Xe;K<=le;K++)for(let be=rt;be<=De;be++){let Ee=K*bn+be,Be=(be+.5)/bn,Ke=(K+.5)/bn,ct=O>=1?(Be-T.x)*O:Be-T.x,X=O>=1?Ke-T.y:(Ke-T.y)/O,at=Math.sqrt(ct*ct+X*X);if(at<We){let nt=Math.exp(-at*at/(Z*Z))*Ae*D*2;y[Ee]+=Ge*nt,_[Ee]+=et*nt}}}let Me=Math.max(0,Math.min(1,1-V*Ze)),Pe=L*.35;b.set(y),S.set(_),w.set(f),v.set(g);for(let We=1;We<bn-1;We++)for(let Xe=1;Xe<bn-1;Xe++){let le=We*bn+Xe,rt=0,De=0,K=le-1,be=le+1,Ee=le-bn,Be=le+bn;rt+=L*(f[K]-f[le]),rt+=L*(f[be]-f[le]),rt+=L*(f[Ee]-f[le]),rt+=L*(f[Be]-f[le]),De+=L*(g[K]-g[le]),De+=L*(g[be]-g[le]),De+=L*(g[Ee]-g[le]),De+=L*(g[Be]-g[le]);let Ke=le-bn-1,ct=le-bn+1,X=le+bn-1,at=le+bn+1;rt+=Pe*(f[Ke]-f[le]),rt+=Pe*(f[ct]-f[le]),rt+=Pe*(f[X]-f[le]),rt+=Pe*(f[at]-f[le]),De+=Pe*(g[Ke]-g[le]),De+=Pe*(g[ct]-g[le]),De+=Pe*(g[X]-g[le]),De+=Pe*(g[at]-g[le]),rt-=L*.1*f[le],De-=L*.1*g[le],b[le]=y[le]*Me+rt*Ze,S[le]=_[le]*Me+De*Ze,w[le]=f[le]+b[le]*Ze,v[le]=g[le]+S[le]*Ze,w[le]=Math.max(-.5,Math.min(.5,w[le])),v[le]=Math.max(-.5,Math.min(.5,v[le]))}y.set(b),_.set(S),f.set(w),g.set(v)}for(let he=0;he<bn;he++)for(let Me=0;Me<bn;Me++){let Pe=he*bn+Me,We=Pe*2;E[We]=f[Pe],E[We+1]=g[Pe]}C.needsUpdate=!0,R=T.x,c=T.y}),r(()=>{C.dispose()}),a=M.sample(j).xy}let l=t.intensity.uniform.mul(.1),s=a.mul(l),u=p(.15),d=s.clamp(I(u.negate(),u.negate()),I(u,u)),h=j.sub(d);return Vt(Ln(h,o.sample(h),o,t.edges.uniform.value))}}});var Ml,k9=z(()=>{"use strict";Dt();On();gr();ut();Ml={name:"Marble",category:"Textures",description:"Classic marble swirl and vein texture using noise-warped sine waves",props:{colorA:{default:"#ffffff",transform:Ce,description:"Base background color of the marble",ui:{type:"color",label:"Base",group:"Colors"}},colorB:{default:"#3a2d54",transform:Ce,description:"Secondary marble tone",ui:{type:"color",label:"Tone",group:"Colors"}},colorC:{default:"#0f0f0f",transform:Ce,description:"Deepest marble color",ui:{type:"color",label:"Depth",group:"Colors"}},scale:{default:2,description:"Scale and density of the marble vein pattern",ui:{type:["range","map"],min:.1,max:10,step:.1,label:"Scale",group:"Effect"}},turbulence:{default:10,description:"Amount of noise-driven distortion applied to the veins",ui:{type:["range","map"],min:0,max:50,step:.5,label:"Turbulence",group:"Effect"}},speed:{default:.05,description:"Animation speed",ui:{type:"range",min:0,max:.25,step:.005,label:"Speed",group:"Animation"}},seed:{default:0,description:"Random seed for pattern variation",ui:{type:["range","map"],min:0,max:100,step:1,label:"Seed",group:"Effect"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=$.x.div($.y),i=n.x.mul(r),o=n.y,a=fn(t,e.speed),l=e.scale.uniform,s=e.seed.uniform,u=Dn(I(i.mul(l).add(s),o.mul(l).add(a))),d=Dn(I(i.mul(l).mul(2).add(s.mul(1.7)),o.mul(l).mul(2).add(a.mul(.7)))).mul(.5),h=Dn(I(i.mul(l).mul(4).add(s.mul(3.1)),o.mul(l).mul(4).add(a.mul(1.3)))).mul(.25),f=u.add(d).add(h),g=e.turbulence.uniform,y=fe(i.mul(l).mul(p(Math.PI)).add(f.mul(g))).mul(.5).add(.5),_=Dn(I(o.mul(l).mul(1.5).add(s.mul(2)),i.mul(l).mul(1.2))).mul(.3).add(.5),b=Oe(p(.3),p(.6),y),S=Oe(p(.6),p(.9),y),w=Lt(Lt(e.colorA.uniform,e.colorB.uniform,b,e.colorSpace.uniform.value),e.colorC.uniform,S.mul(_),e.colorSpace.uniform.value);return F(w.rgb,w.a)}}});var Tl,B9=z(()=>{"use strict";gi();Dt();Wn();ut();Tl={name:"Mirror",category:"Distortions",description:"Mirror content across a line defined by center point and angle",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:wt,description:"The point the mirror line passes through",ui:{type:"position",label:"Center",group:"Position"}},angle:{default:0,description:"The angle of the mirror line in degrees",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},edges:{default:"mirror",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=$.x.div($.y),o=I(j.x.mul(i),j.y),a=I(t.center.uniform.x.mul(i),t.center.uniform.y.oneMinus()),l=o.sub(a),s=t.angle.uniform.mul(Math.PI/180),u=I(Ye(s),fe(s)),d=I(u.y.negate(),u.x),h=l.dot(d),f=l.sub(d.mul(h.mul(2))),g=a.add(f),y=I(g.x.div(i),g.y),_=yn(0,h);return Vt(Re(r.sample(j),Ln(y,r.sample(y),r,t.edges.uniform.value),_))}}});var Cl,z9=z(()=>{"use strict";Dt();ut();Cl={name:"MultiPointGradient",category:"Textures",description:"Five individually placed color points blended together by proximity \u2014 drag each point to shape the gradient",props:{colorA:{default:"#4776E6",transform:Ce,description:"Color of control point A",ui:{type:"color",label:"Color",group:"Point A"}},positionA:{default:{x:.2,y:.2},transform:wt,description:"Position of control point A",ui:{type:"position",label:"Position",group:"Point A"}},colorB:{default:"#C44DFF",transform:Ce,description:"Color of control point B",ui:{type:"color",label:"Color",group:"Point B"}},positionB:{default:{x:.8,y:.2},transform:wt,description:"Position of control point B",ui:{type:"position",label:"Position",group:"Point B"}},colorC:{default:"#1ABC9C",transform:Ce,description:"Color of control point C",ui:{type:"color",label:"Color",group:"Point C"}},positionC:{default:{x:.2,y:.8},transform:wt,description:"Position of control point C",ui:{type:"position",label:"Position",group:"Point C"}},colorD:{default:"#F8BBD9",transform:Ce,description:"Color of control point D",ui:{type:"color",label:"Color",group:"Point D"}},positionD:{default:{x:.8,y:.8},transform:wt,description:"Position of control point D",ui:{type:"position",label:"Position",group:"Point D"}},colorE:{default:"#FF8C42",transform:Ce,description:"Color of control point E",ui:{type:"color",label:"Color",group:"Point E"}},positionE:{default:{x:.5,y:.5},transform:wt,description:"Position of control point E",ui:{type:"position",label:"Position",group:"Point E"}},smoothness:{default:2,description:"Controls how smoothly colors blend.",ui:{type:["range","map"],min:0,max:5,step:.05,label:"Smoothness",group:"Effect"}}},fragmentNode:({uniforms:t})=>{let e=t.smoothness.uniform,n=$.x.div($.y),r=I(j.x.mul(n),j.y),i=[{color:t.colorA.uniform,pos:I(t.positionA.uniform.x.mul(n),t.positionA.uniform.y.oneMinus())},{color:t.colorB.uniform,pos:I(t.positionB.uniform.x.mul(n),t.positionB.uniform.y.oneMinus())},{color:t.colorC.uniform,pos:I(t.positionC.uniform.x.mul(n),t.positionC.uniform.y.oneMinus())},{color:t.colorD.uniform,pos:I(t.positionD.uniform.x.mul(n),t.positionD.uniform.y.oneMinus())},{color:t.colorE.uniform,pos:I(t.positionE.uniform.x.mul(n),t.positionE.uniform.y.oneMinus())}];return qe(()=>{let o=_e(0).toVar(),a=p(0).toVar(),l=p(0).toVar();for(let{color:s,pos:u}of i){let d=r.x.sub(u.x),h=r.y.sub(u.y),f=Sn(d.mul(d).add(h.mul(h))).add(p(.001)),g=p(8).div(e.add(p(.5))).min(p(8)),y=p(1).div(Bt(f,g));o.assign(o.add(s.rgb.mul(y))),a.assign(a.add(s.a.mul(y))),l.assign(l.add(y))}return F(o.div(l),a.div(l))})()}}});function V9(t,e,n){return qe(()=>{let r=j,i=$.x.div($.y),o=I(e.center.uniform.x,e.center.uniform.y.oneMinus()),a=e.scale.uniform,l=I(r.x.sub(o.x).mul(i).div(a).add(p(.5)),r.y.sub(o.y).div(a).add(p(.5))),s=e.cornerSmoothing.uniform,u=p(.008).add(s.mul(p(.03))),d=t(l).r,h=t(l.add(I(u,p(0)))).r,f=t(l.sub(I(u,p(0)))).r,g=t(l.add(I(p(0),u))).r,y=t(l.sub(I(p(0),u))).r,_=h.sub(f).div(u.mul(p(2))),b=g.sub(y).div(u.mul(p(2))),S=Re(d,d.add(h).add(f).add(g).add(y).div(p(5)),s),w=p(1).div($.y),v=e.glowRadius.uniform.max(p(.001)),E=Pt(w.div(a),p(.004)),C=F(0).toVar();return Pn(S.greaterThan(v.mul(p(1.5)).add(E)),()=>{C.assign(F(0,0,0,0))}).Else(()=>{let M=Sn(_.mul(_).add(b.mul(b))).max(p(1e-4)),R=_.div(M),c=b.div(M),m=e.tubeThickness.uniform,x=Tt(S.negate().div(m.max(p(.001))),p(0),p(1)),T=Oe(E,E.negate(),S),N=Oe(m.add(E),m.sub(E),S.negate()),B=T.mul(N),D=x,O=Sn(D.mul(p(2).sub(D)).max(p(0))),L=p(1).sub(D),V=R.mul(L),Z=c.mul(L),q=O,ae=e.lightAngle.uniform.mul(p(Math.PI/180)),we=Ye(ae),Ae=fe(ae),Ge=we.mul(p(zg)),et=Ae.mul(p(zg)),Ze=p(G9),he=Tt(V.mul(Ge).add(Z.mul(et)).add(q.mul(Ze)),p(0),p(1)),Me=V.mul(Ge.mul(p($I))).add(Z.mul(et.mul(p($I)))).add(q.mul(p(ZI*$I))),Pe=_m(p(8).sub(e.specularSize.uniform.mul(p(7)))),We=Bt(Tt(Me,p(0),p(1)),Pe).mul(e.specularIntensity.uniform),Xe=l.x.sub(p(.5)),le=fe(Qn(l.y.sub(p(.5)),Xe).mul(p(2)).add(n.mul(e.flowSpeed.uniform))).mul(p(.5)).add(p(.5)),rt=Re(p(1),le,e.flowAmount.uniform),De=_e(e.color.uniform.x,e.color.uniform.y,e.color.uniform.z),K=_e(e.secondaryColor.uniform.x,e.secondaryColor.uniform.y,e.secondaryColor.uniform.z),be=e.secondaryBlend.uniform,Ee=Re(De,Re(K,De,he),be),Be=p(.12),Ke=O.mul(p(.35)),ct=Ee.mul(Be.add(he.mul(p(.55))).add(Ke)),X=_e(We,We,We),at=ct.add(X),nt=Oe(p(.55),p(1),x).mul(e.hotCoreIntensity.uniform).mul(rt),Ct=Re(at,Re(De,_e(1,1,1),p(.75)),nt).mul(Re(p(1),rt,p(.4))),me=e.glowIntensity.uniform,ke=Pt(S,p(0)),k=p(12).div(v),P=ki(ke.negate().mul(k)).mul(p(.7)),H=p(4).div(v),Q=ki(ke.negate().mul(H)).mul(p(.35)),se=P.add(Q).mul(me),Te=Oe(p(-.003),p(.003),S),Ie=se.mul(Te),J=_e(e.glowColor.uniform.x,e.glowColor.uniform.y,e.glowColor.uniform.z),ee=n.mul(e.flickerSpeed.uniform),Se=fe(ee.mul(p(17.13))),Je=fe(ee.mul(p(31.71))),Fe=fe(ee.mul(p(47.29))),Qe=Se.add(Je.mul(p(.5))).add(Fe.mul(p(.3))),Nt=Re(p(-2),p(.8),e.flickerAmount.uniform),Ot=Oe(Nt.sub(p(.1)),Nt.add(p(.1)),Qe),en=e.intensity.uniform.mul(Ot),ne=Ct.mul(en),st=J.mul(Ie).mul(en),ze=Re(st.x,ne.x,B),Rt=Re(st.y,ne.y,B),At=Re(st.z,ne.z,B),dt=Pt(B,Tt(Ie.mul(p(.6)),p(0),p(1)));C.assign(F(ze,Rt,At,dt))}),C})()}var YI,zg,G9,ZI,$I,Zye,El,H9=z(()=>{"use strict";Dt();eo();ut();YI=.7,zg=1/Math.sqrt(1+YI*YI),G9=YI*zg,ZI=G9+1,$I=1/Math.sqrt(zg*zg+ZI*ZI);Zye=JSON.stringify({type:"circleSDF",radius:.35}),El={name:"Neon",category:"Shape Effects",description:"Photorealistic neon tube / 3D pipe effect driven by a custom shape",props:{center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the neon shape",ui:{type:"position",label:"Center",group:"Position"}},scale:{default:1,description:"Scale of the neon shape (1 = default size)",ui:{type:"range",min:.1,max:3,step:.05,label:"Scale",group:"Position"}},color:{default:"#00ddff",transform:Ce,description:"Primary neon tube color",ui:{type:"color",label:"Tube Color",group:"Colors"}},secondaryColor:{default:"#ff00aa",transform:Ce,description:"Shadow-side color for a two-tone / dual-lit pipe look",ui:{type:"color",label:"Secondary Color",group:"Colors"}},secondaryBlend:{default:.5,description:"Blend between mono (0) and two-tone (1) tube coloring",ui:{type:"range",min:0,max:1,step:.01,label:"Blend",group:"Colors"}},glowColor:{default:"#00ddff",transform:Ce,description:"Color of the outer glow / bloom",ui:{type:"color",label:"Glow Color",group:"Colors"}},tubeThickness:{default:.2,transform:t=>t*.05,description:"How far inward from the boundary the tube extends. Low = thin neon outline, high = thick 3D pipe",ui:{type:"range",min:0,max:1,step:.01,label:"Tube Thickness",group:"Tube"}},intensity:{default:1.5,description:"Overall brightness multiplier",ui:{type:"range",min:.5,max:4,step:.05,label:"Intensity",group:"Tube"}},hotCoreIntensity:{default:.6,description:"Bright white-hot center line \u2014 the gas discharge glow inside the tube",ui:{type:"range",min:0,max:1,step:.01,label:"Hot Core",group:"Tube"}},glowIntensity:{default:.6,description:"Outer glow / bloom strength",ui:{type:"range",min:0,max:2,step:.05,label:"Glow Intensity",group:"Glow"}},glowRadius:{default:.25,description:"How far the glow extends beyond the tube",ui:{type:"range",min:.01,max:1,step:.01,label:"Glow Radius",group:"Glow"}},lightAngle:{default:300,description:"Directional light angle in degrees \u2014 controls 3D shading on the tube",ui:{type:"range",min:0,max:360,step:1,label:"Light Angle",group:"Lighting"}},specularIntensity:{default:.5,description:"Specular highlight brightness on the tube surface",ui:{type:"range",min:0,max:2,step:.05,label:"Specular",group:"Lighting"}},specularSize:{default:.5,description:"Specular highlight size \u2014 0 = tight pinpoint, 1 = broad sheen",ui:{type:"range",min:0,max:1,step:.01,label:"Specular Size",group:"Lighting"}},cornerSmoothing:{default:.15,description:"Rounds sharp corners to mimic how real glass tubes curve at bends",ui:{type:"range",min:0,max:1,step:.01,label:"Corner Smoothing",group:"Tube"}},flickerSpeed:{default:0,description:"Flicker animation speed \u2014 0 = off, higher = faster sporadic on/off",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Flicker"}},flickerAmount:{default:.2,description:"How often the neon flickers off \u2014 0 = always on, 1 = frequent outages",ui:{type:"range",min:0,max:1,step:.01,label:"Amount",group:"Flicker"}},flowSpeed:{default:0,description:"Flow animation speed \u2014 0 = off, light rotates through the tube",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Flow"}},flowAmount:{default:.3,description:"Strength of the flowing brightness variation \u2014 0 = uniform, 1 = dramatic",ui:{type:"range",min:0,max:1,step:.01,label:"Amount",group:"Flow"}},shape:{default:Zye,description:"Serialized shape configuration (JSON)",ui:{type:"shape",label:"Shape",group:"Shape"}},shapeSdfUrl:{default:"",compileTime:!0,description:"URL to a pre-generated SDF .bin file \u2014 when non-empty, activates SVG mode and triggers a shader recompile"},shapeType:{default:"",compileTime:!0,description:"Active SDF shape type \u2014 triggers recompile when shape is switched. When empty, derived from shape JSON at mount time."}},fragmentNode:({uniforms:t,onCleanup:e,onBeforeRender:n})=>{let r=oe(0);n(({deltaTime:a})=>{r.value+=a});let i=t.shapeSdfUrl.uniform.value,o=(()=>{let a=t.shape.uniform.value;if(typeof a=="object"&&a!==null)return a;try{return JSON.parse(a)}catch{return{type:"circleSDF",radius:.35,centerX:.5,centerY:.5}}})();return V9(i?Ns(i,n,e):Os(t.shapeType.uniform.value||o.type||"circleSDF",o,t.shape,n),t,r)}}});var Rl,W9=z(()=>{"use strict";ut();Rl={name:"Paper",category:"Stylize",description:"Applies realistic paper grain and surface roughness to child content",requiresRTT:!0,requiresChild:!0,props:{roughness:{default:.3,description:"Surface roughness \u2014 higher values create more pronounced brightness variation",ui:{type:"range",min:0,max:1,step:.01,label:"Roughness",group:"Texture"}},grainScale:{default:1,description:"Scale of the paper grain \u2014 lower = coarser, higher = finer",ui:{type:"range",min:.1,max:3,step:.05,label:"Grain Scale",group:"Texture"}},displacement:{default:.15,description:"Surface micro-roughness \u2014 shifts pixels at grain scale like real paper fiber bumps",ui:{type:"range",min:0,max:1,step:.01,label:"Displacement",group:"Texture"}},seed:{default:0,description:"Random seed for pattern variation",ui:{type:"range",min:0,max:100,step:1,label:"Seed",group:"Texture"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j,o=$.x.div($.y),a=I(i.x.mul(o),i.y),l=t.seed.uniform,s=t.grainScale.uniform.mul(p(120)).add(p(120)),u=s.mul(p(.25)),d=a.mul(u).add(l.add(p(50))),h=Dn(_e(d.x,d.y,p(22.3))),f=Dn(_e(d.x,d.y,p(29.7))),g=t.displacement.uniform.mul(p(.002)),y=i.add(I(h.mul(g),f.mul(g))),_=r.sample(y),b=I(y.x.mul(o),y.y).add(I(h.mul(p(.005)),f.mul(p(.005)))),S=b.mul(s.mul(p(.1))).add(l),w=Dn(_e(S.x,S.y,p(1.3))),v=b.mul(s.mul(p(.4))).add(l.add(p(33.7))),E=Et(Dn(_e(v.x,v.y,p(4.1)))),C=b.mul(s).add(l.add(p(71.2))),M=Dn(_e(C.x,C.y,p(9.8))),R=b.mul(s.mul(p(2))).add(l.add(p(107.3))),c=Dn(_e(R.x,R.y,p(15.6))),m=w.mul(p(.3)).add(E.mul(p(.3))).add(M.mul(p(.25))).add(c.mul(p(.15))),x=t.roughness.uniform,T=Tt(p(1).add(m.mul(x.mul(p(.4)))),p(0),p(1.5)),N=_e(_.r,_.g,_.b).mul(T);return F(N.x,N.y,N.z,_.a)}}});var Al,j9=z(()=>{"use strict";gi();Dt();Wn();ut();Al={name:"Perspective",category:"Distortions",description:"Rotate the plane in 3D space with pan and tilt",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:wt,description:"Center point of rotation",ui:{type:"position",label:"Center",group:"Position"}},pan:{default:0,description:"Horizontal rotation (left/right)",ui:{type:["range","map"],min:-90,max:90,step:.1,label:"Pan",group:"Effect"}},tilt:{default:0,description:"Vertical rotation (up/down)",ui:{type:["range","map"],min:-90,max:90,step:.1,label:"Tilt",group:"Effect"}},fov:{default:60,description:"Field of view - controls perspective intensity",ui:{type:["range","map"],min:30,max:120,step:1,label:"FOV",group:"Effect"}},zoom:{default:1,description:"Zoom in to fill the frame after rotation",ui:{type:["range","map"],min:.5,max:3,step:.1,label:"Zoom",group:"Effect"}},offset:{default:{x:.5,y:.5},transform:wt,description:"Shift the result in X/Y",ui:{type:"position",label:"Offset",group:"Position"}},edges:{default:"transparent",description:"How to handle edges",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=I(t.center.uniform.x,t.center.uniform.y.oneMinus()),o=t.zoom.uniform,a=j.x.sub(i.x).div(o),l=j.y.sub(i.y).div(o),s=t.pan.uniform.mul(Math.PI/180),u=t.tilt.uniform.mul(Math.PI/180),d=t.fov.uniform.mul(Math.PI/180),h=Ye(s),f=fe(s),g=Ye(u),y=fe(u),_=Hz(d.mul(.5)).mul(2),b=Pt(h.add(f.mul(a).mul(_)),p(.001)),S=a.div(b),w=l.mul(h).div(b),v=Pt(g.add(y.mul(w).mul(_)),p(.001)),E=S.mul(g).div(v),C=w.div(v),M=I(t.offset.uniform.x,t.offset.uniform.y.oneMinus()),R=I(E,C).add(i).sub(M).add(I(.5,.5));return Vt(Ln(R,r.sample(R),r,t.edges.uniform.value))}}});var Pl,q9=z(()=>{"use strict";Wn();ut();Pl={name:"Pixelate",category:"Stylize",description:"Pixelation effect with adjustable cell size",requiresRTT:!0,requiresChild:!0,props:{scale:{default:50,description:"Number of pixels along the longest edge (higher = smaller pixels)",ui:{type:["range","map"],min:1,max:200,step:1,label:"Scale",group:"Effect"}},gap:{default:0,description:"Space between pixels as a fraction of cell size (0 = no gap, 1 = fully invisible)",ui:{type:["range","map"],min:0,max:.95,step:.01,label:"Gap",group:"Effect"}},roundness:{default:0,description:"Roundness of each pixel's corners (0 = square, 1 = circle)",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Roundness",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=$.x.div($.y),o=t.scale.uniform,a=i.greaterThan(p(1)),l=a.select(o,o.mul(i)).max(p(1)),s=a.select(o.div(i),o).max(p(1)),u=I(Zt(j.x.mul(l)).div(l),Zt(j.y.mul(s)).div(s)),d=Vt(r.sample(u)),h=I(St(j.x.mul(l)).sub(.5),St(j.y.mul(s)).sub(.5)),f=p(.5).sub(t.gap.uniform.mul(.5)),g=t.roundness.uniform.mul(f),y=Vn(I(h.x.abs().sub(f).add(g).max(p(0)),h.y.abs().sub(f).add(g).max(p(0)))).sub(g).lessThanEqual(p(0)).select(p(1),p(0));return F(d.rgb,d.a.mul(y))}}});var Il,X9=z(()=>{"use strict";Dt();On();gr();ut();Il={name:"Plasma",category:"Textures",description:"Animated effect of glowing plasma",props:{density:{default:2,description:"Density of the plasma pattern",ui:{type:["range","map"],min:0,max:4,step:.1,label:"Density",group:"Effect"}},speed:{default:2,description:"Animation speed",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Effect"}},intensity:{default:1.5,description:"Brightness and spread of the plasma glow",ui:{type:["range","map"],min:.1,max:3,step:.1,label:"Intensity",group:"Colors"}},warp:{default:.4,description:"How much the flow distorts and swirls",ui:{type:"range",min:0,max:1,step:.01,label:"Warp",group:"Effect"}},contrast:{default:1,description:"Push darks darker and lights lighter",ui:{type:["range","map"],min:0,max:3,step:.1,label:"Contrast",group:"Colors"}},balance:{default:50,description:"Skew color balance toward A (higher) or B (lower)",ui:{type:["range","map"],min:0,max:100,step:1,label:"Balance",group:"Colors"}},colorA:{default:"#7018be",description:"Primary color",transform:Ce,ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#000000",description:"Secondary color",transform:Ce,ui:{type:"color",label:"Color B",group:"Colors"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=e.density.uniform,r=e.intensity.uniform,i=e.warp.uniform,o=fn(t,e.speed).mul(.125),a=$.x.div($.y),l=_e(j.x.mul(a),j.y,p(0)).mul(ki(n.sub(1))).toVar(),s=i.mul(4),u=Dn(l.add(_e(o.mul(.3),o.mul(-.2),0))),d=Dn(l.add(_e(5.2,1.3,o.mul(.25)))),h=l.add(_e(u,d,p(0)).mul(s)),f=Dn(h.add(_e(1.7,9.2,o.mul(.15)))),g=Dn(h.add(_e(8.3,2.8,o.mul(.13)))),y=Tt(Bt(Dn(l.add(_e(f,g,p(0)).mul(s))).mul(.5).add(.5),p(5).div(r)).sub(.5).mul(e.contrast.uniform).add(.5),0,1),_=e.balance.uniform.div(100).sub(.5),b=Tt(y.add(_),0,1);return Lt(e.colorB.uniform,e.colorA.uniform,b,e.colorSpace.uniform.value)}}});var Nl,$9=z(()=>{"use strict";gi();Dt();Wn();ut();Nl={name:"PolarCoordinates",category:"Distortions",description:"Convert rectangular coordinates to polar space",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:wt,description:"The center point for polar coordinate conversion",ui:{type:"position",label:"Center",group:"Position"}},wrap:{default:1,description:"Controls how much of the angular range to use (1 = full 360\xB0, 0.5 = 180\xB0)",ui:{type:["range","map"],min:0,max:2,step:.1,label:"Wrap",group:"Effect"}},radius:{default:1,description:"Controls how much of the radius range to use (affects the radial mapping)",ui:{type:["range","map"],min:0,max:2,step:.1,label:"Radius",group:"Effect"}},intensity:{default:1,description:"Blends between original UVs (0) and polar coordinates (1)",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Intensity",group:"Effect"}},edges:{default:"transparent",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=$.x.div($.y),o=I(j.x.mul(i),j.y),a=I(t.center.uniform.x.mul(i),t.center.uniform.y.oneMinus()),l=o.sub(a),s=Qn(l.y,l.x).add(ci).div(ci.mul(2)),u=Vn(l),d=Re(j,I(s.mul(t.wrap.uniform),u.mul(t.radius.uniform)),t.intensity.uniform);return Vt(Ln(d,r.sample(d),r,t.edges.uniform.value))}}});var Kye,Ol,Y9=z(()=>{"use strict";Dt();On();eo();ut();Kye=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,Ol={name:"Polygon",category:"Shapes",description:"Regular polygon with adjustable sides and corner rounding",props:{color:{default:"#ffffff",transform:Ce,description:"Fill color of the polygon",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the polygon",ui:{type:"position",label:"Center",group:"Position"}},radius:{default:.4,description:"Circumradius \u2014 distance from center to vertices in UV space",ui:{type:"range",min:0,max:1,step:.01,label:"Radius",group:"Shape"}},sides:{default:6,description:"Number of sides (3 = triangle, 4 = square, 6 = hexagon, etc.)",ui:{type:"range",min:3,max:12,step:1,label:"Sides",group:"Shape"}},rounding:{default:0,description:"Corner rounding \u2014 0 is sharp vertices, 1 morphs into a circle",ui:{type:"range",min:0,max:1,step:.01,label:"Rounding",group:"Shape"}},rotation:{default:0,description:"Rotation in degrees",ui:{type:"range",min:0,max:360,step:1,label:"Rotation",group:"Shape"}},softness:{default:0,description:"Edge softness for antialiasing",ui:{type:"range",min:0,max:.1,step:.001,label:"Softness",group:"Effect"}},strokeThickness:{default:0,description:"Stroke thickness. Zero means no stroke.",ui:{type:"range",min:0,max:.2,step:.005,label:"Stroke Thickness",group:"Stroke"}},strokeColor:{default:"#000000",transform:Ce,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:Kye,description:"Position of the stroke relative to the shape edge",ui:{type:"select",options:[{label:"Outside",value:"outside"},{label:"Center",value:"center"},{label:"Inside",value:"inside"}],label:"Stroke Position",group:"Stroke"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:Gt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=r.x.sub(i.x),a=r.y.sub(i.y),l=t.rotation.uniform.mul(p(Math.PI/180)),s=Ye(l),u=fe(l),d=o.mul(s).add(a.mul(u)),h=a.mul(s).sub(o.mul(u)),f=t.radius.uniform,g=Re(DI(d,h,f,t.sides.uniform),yT(o,a,f),t.rounding.uniform),y=t.softness.uniform,_=t.strokeThickness.uniform,b=t.strokePosition.uniform,S=_.greaterThan(p(0)),w=b.greaterThanEqual(p(.5)).and(b.lessThan(p(1.5))),v=b.greaterThanEqual(p(1.5)),E=_.mul(.5),C=v.select(_.negate(),w.select(E.negate(),p(0))),M=v.select(p(0),w.select(E,_)),R=Oe(M.sub(y),M,g).oneMinus(),c=S.select(Oe(C.sub(y),C,g),p(0)),m=Lt(F(t.color.uniform.rgb,t.color.uniform.a),F(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),c,t.colorSpace.uniform.value);return F(m.xyz,m.w.mul(R))}}});var Ul,Z9=z(()=>{"use strict";ut();Ul={name:"Posterize",category:"Adjustments",description:"Reduce color depth to create a poster effect",requiresChild:!0,props:{intensity:{default:5,description:"The intensity of the posterization effect (lower is more posterized)",ui:{type:["range","map"],min:2,max:20,step:1,label:"Intensity",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return console.error("You must pass a child component into the Posterize shader."),F(0);let n=p(t.intensity.uniform);return F(Zt(e.r.mul(n)).div(n),Zt(e.g.mul(n)).div(n),Zt(e.b.mul(n)).div(n),e.a)}}});var Dl,K9=z(()=>{"use strict";Dt();Wn();sh();ut();Dl={name:"ProgressiveBlur",category:"Blurs",description:"Blur that increases progressively in one direction",requiresRTT:!0,requiresChild:!0,props:{intensity:{default:50,description:"Maximum intensity of the blur effect",ui:{type:["range","map"],min:0,max:100,step:1,label:"Intensity",group:"Effect"}},angle:{default:0,transform:sr,description:"Direction of the blur gradient (in degrees)",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},center:{default:{x:0,y:.5},transform:wt,description:"Center point where blur begins",ui:{type:"position",label:"Center",group:"Position"}},falloff:{default:1,description:"Distance over which blur transitions to full strength",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Falloff",group:"Effect"}}},computeNode:({childNode:t,onCleanup:e,dimensions:n,renderer:r,uniforms:i,onResize:o})=>{if(!t||i.angle.mapComputeInfo||i.falloff.mapComputeInfo)return null;let a=It(t);e(()=>{a?.renderTarget?.dispose&&a.renderTarget.dispose()});let l=r?.getPixelRatio?.()??1,s=Math.round(n.width*l),u=Math.round(n.height*l),d=Zd(a,s,u,e),{computeNodes:h,outputTexture:f,blurMapWriteNode:g,computeWidth:y,computeHeight:_}=d,b=oe(0),S=oe(0),w=oe(.5),v=oe(1),E=oe(1),C=oe(s),M=oe(u),R=Tn(y),c=Tn(_);function m(D){return D.getCpuValue?.()??(typeof D.uniform.value=="number"?D.uniform.value:null)}function x(){let D=m(i.angle);D!==null&&(b.value=D);let O=i.center.uniform.value?.x??i.center.uniform.x?.value;typeof O=="number"&&(S.value=O);let L=i.center.uniform.value?.y??i.center.uniform.y?.value;typeof L=="number"&&(w.value=L);let V=m(i.falloff);V!==null&&(v.value=V),E.value=n.width/n.height}let T=i.intensity.mapComputeInfo;if(T){let{sourceTexture:D,channel:O,inputMin:L,inputMax:V,outputMin:Z,outputMax:q,curve:ae}=T,we=qe(()=>{let Ae=Kt,Ge=Ae.mod(R),et=Ae.div(R);Pn(et.lessThan(c),()=>{let Ze=Ge.toFloat().add(p(.5)).div(p(y)),he=et.toFloat().add(p(.5)).div(p(_)),Me=b.mul(p(Math.PI/180)),Pe=I(Me.cos().div(E),Me.sin()),We=I(S,p(1).sub(w)),Xe=I(Ze,he).sub(We),le=Pt(p(0),Xe.dot(Pe)),rt=Oe(p(0),v,le),De=Pi(D,En(Ze.mul(C).round().toInt().clamp(Ut(0),Ut(C.sub(1))).toUint(),he.mul(M).round().toInt().clamp(Ut(0),Ut(M.sub(1))).toUint()),Ut(0)),K;O==="alpha"?K=De.a:O==="alphaInverted"?K=De.a.oneMinus():O==="luminanceInverted"?K=kt(De.rgb,_e(.2126,.7152,.0722)).oneMinus():K=kt(De.rgb,_e(.2126,.7152,.0722));let be=V.sub(L).max(p(1e-4)),Ee=Re(Z,q,Bt(Tt(K.sub(L).div(be),p(0),p(1)),Bt(p(2),ae.negate().mul(p(2))))).mul(p(.36)),Be=rt.mul(Ee);er(g,En(Ge,et),F(Be,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:Ae,height:Ge})=>{let et=Math.round(Ae*l),Ze=Math.round(Ge*l);C.value=et,M.value=Ze,d.setInputDimensions(et,Ze)}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>(x(),[we,...h])}}let N=oe(18),B=qe(()=>{let D=Kt,O=D.mod(R),L=D.div(R);Pn(L.lessThan(c),()=>{let V=O.toFloat().add(p(.5)).div(p(y)),Z=L.toFloat().add(p(.5)).div(p(_)),q=b.mul(p(Math.PI/180)),ae=I(q.cos().div(E),q.sin()),we=I(S,p(1).sub(w)),Ae=I(V,Z).sub(we),Ge=Pt(p(0),Ae.dot(ae)),et=Oe(p(0),v,Ge).mul(N);er(g,En(O,L),F(et,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:D,height:O})=>{d.setInputDimensions(Math.round(D*l),Math.round(O*l))}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>{x();let D=m(i.intensity);return D!==null&&(N.value=D*.36),[B,...h]}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n,computeOutputs:r})=>{if(!e)return F(0,0,0,0);if(r?.blurredTexture){let E=r.childTexture.sample(j),C=vn(r.blurredTexture).sample(j),M=t.intensity.uniform.mul(p(0)).add(t.angle.uniform.mul(p(0))).add(t.falloff.uniform.mul(p(0)));return Vt(F(C.rgb.add(M),E.a))}let i=It(e);n(()=>{i?.renderTarget?.dispose&&i.renderTarget.dispose()});let o=$.x.div($.y),a=qr(t.angle.uniform),l=Ye(a),s=fe(a),u=I(l.div(o),s),d=I(t.center.uniform[0],t.center.uniform[1].oneMinus()),h=j.sub(d),f=Pt(p(0),h.dot(u)),g=Pt(p(.001),t.falloff.uniform),y=Oe(p(0),g,f),_=t.intensity.uniform.mul(.06),b=y.mul(_),S=[.056,.135,.278,.487,.726,.923,1,.923,.726,.487,.278,.135,.056],w=6.214,v=It(qe(()=>{let E=j,C=I(1).div($),M=F(0).toVar();for(let R=-6;R<=6;R++){let c=p(S[R+6]/w),m=I(p(R),p(0)).mul(b).mul(C),x=E.add(m),T=i.sample(x).mul(c);M.assign(M.add(T))}return M})());return n(()=>{v?.renderTarget?.dispose&&v.renderTarget.dispose()}),qe(()=>{let E=j,C=I(1).div($),M=F(0).toVar();for(let R=-6;R<=6;R++){let c=p(S[R+6]/w),m=I(p(0),p(R)).mul(b).mul(C),x=E.add(m),T=v.sample(x).mul(c);M.assign(M.add(T))}return Vt(M)})()}}});var Fl,J9=z(()=>{"use strict";Dt();On();ut();Fl={name:"RadialGradient",category:"Textures",description:"Radial gradient radiating from a center point",props:{colorA:{default:"#ff0000",transform:Ce,description:"The starting color at the center of the gradient",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#0000ff",transform:Ce,description:"The ending color at the edge of the gradient",ui:{type:"color",label:"Color B",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"The center point of the radial gradient",ui:{type:"position",label:"Center",group:"Position"}},radius:{default:1,description:"The radius of the gradient (normalized, 0.0-1.0)",ui:{type:["range","map"],min:0,max:2,step:.1,label:"Radius",group:"Effect"}},repeat:{default:1,description:"Number of times the gradient repeats. Values above 1 create concentric rings.",ui:{type:["range","map"],min:1,max:20,step:.5,label:"Repeat",group:"Effect"}},aspect:{default:1,description:"Stretches the gradient into an ellipse. Values below 1 compress vertically, above 1 compress horizontally.",ui:{type:["range","map"],min:.1,max:4,step:.05,label:"Aspect",group:"Effect"}},skewAngle:{default:0,description:"Rotates the ellipse axis in degrees. Only visible when Aspect is not 1.",ui:{type:["range","map"],min:0,max:360,step:1,label:"Skew Angle",group:"Effect"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=r.x.sub(i.x),a=r.y.sub(i.y),l=t.skewAngle.uniform.mul(p(Math.PI/180)),s=Ye(l),u=fe(l),d=o.mul(s).add(a.mul(u)),h=o.mul(u).negate().add(a.mul(s)),f=W1(I(d.mul(t.aspect.uniform),h),I(p(0),p(0))),g=t.radius.uniform.max(p(1e-6)),y=f.div(g).mul(t.repeat.uniform),_=t.repeat.uniform.greaterThan(p(1.0001)).select(St(y),y.clamp(p(0),p(1)));return Lt(t.colorA.uniform,t.colorB.uniform,_,t.colorSpace.uniform.value)}}});var Ll,Q9=z(()=>{"use strict";gi();Dt();Wn();ut();Ll={name:"RectangularCoordinates",category:"Distortions",description:"Convert polar coordinates back to rectangular space",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:wt,description:"The center point for rectangular coordinate conversion",ui:{type:"position",label:"Center",group:"Position"}},scale:{default:1,description:"Scale factor for the rectangular output",ui:{type:["range","map"],min:.1,max:3,step:.1,label:"Scale",group:"Effect"}},intensity:{default:1,description:"Blends between original UVs (0) and rectangular coordinates (1)",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Intensity",group:"Effect"}},edges:{default:"transparent",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j.x.mul(ci.mul(2)).sub(ci),o=j.y.mul(t.scale.uniform),a=o.mul(Ye(i)),l=o.mul(fe(i)),s=$.x.div($.y),u=I(t.center.uniform.x,t.center.uniform.y.oneMinus()),d=Re(j,I(a.div(s).add(u.x),l.add(u.y)),t.intensity.uniform);return Vt(Ln(d,r.sample(d),r,t.edges.uniform.value))}}});var Jye,kl,e6=z(()=>{"use strict";Dt();On();eo();ut();Jye=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,kl={name:"Ring",category:"Shapes",description:"Annular ring (donut) with adjustable radius and band thickness",props:{color:{default:"#ffffff",transform:Ce,description:"Fill color of the ring",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the ring",ui:{type:"position",label:"Center",group:"Position"}},radius:{default:.3,description:"Distance from center to the ring's midline in UV space",ui:{type:"range",min:0,max:1,step:.01,label:"Radius",group:"Shape"}},thickness:{default:.07,description:"Half-width of the ring band \u2014 total ring width is twice this value",ui:{type:"range",min:.005,max:.3,step:.005,label:"Thickness",group:"Shape"}},softness:{default:0,description:"Edge softness for antialiasing (applied to both inner and outer ring edges)",ui:{type:"range",min:0,max:.1,step:.001,label:"Softness",group:"Effect"}},strokeThickness:{default:0,description:"Stroke thickness. Zero means no stroke.",ui:{type:"range",min:0,max:.1,step:.005,label:"Stroke Thickness",group:"Stroke"}},strokeColor:{default:"#000000",transform:Ce,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:Jye,description:"Position of the stroke relative to the ring edge",ui:{type:"select",options:[{label:"Outside",value:"outside"},{label:"Center",value:"center"},{label:"Inside",value:"inside"}],label:"Stroke Position",group:"Stroke"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:Gt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=kI(r.x.sub(i.x),r.y.sub(i.y),t.radius.uniform,t.thickness.uniform),a=t.softness.uniform,l=t.strokeThickness.uniform,s=t.strokePosition.uniform,u=l.greaterThan(p(0)),d=s.greaterThanEqual(p(.5)).and(s.lessThan(p(1.5))),h=s.greaterThanEqual(p(1.5)),f=l.mul(.5),g=h.select(l.negate(),d.select(f.negate(),p(0))),y=h.select(p(0),d.select(f,l)),_=Oe(y.sub(a),y,o).oneMinus(),b=u.select(Oe(g.sub(a),g,o),p(0)),S=Lt(F(t.color.uniform.rgb,t.color.uniform.a),F(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),b,t.colorSpace.uniform.value);return F(S.xyz,S.w.mul(_))}}});var Bl,t6=z(()=>{"use strict";Dt();On();gr();ut();Bl={name:"Ripples",category:"Textures",description:"Concentric animated ripples emanating from a point",props:{center:{default:{x:.5,y:.5},transform:wt,description:"The center point where ripples emanate from",ui:{type:"position",label:"Center",group:"Position"}},colorA:{default:"#ffffff",transform:Ce,description:"Color of the ripple waves",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#000000",transform:Ce,description:"Background color between ripples",ui:{type:"color",label:"Color B",group:"Colors"}},speed:{default:1,description:"Speed of ripple animation",ui:{type:"range",min:-5,max:5,step:.1,label:"Speed",group:"Animation"}},frequency:{default:20,description:"Number of ripples/spacing between them",ui:{type:["range","map"],min:1,max:80,step:.1,label:"Frequency",group:"Effect"}},softness:{default:0,description:"Softness of ripple edges",ui:{type:["range","map"],min:0,max:3,step:.1,label:"Softness",group:"Effect"}},thickness:{default:.5,description:"Thickness of each ripple band",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Thickness",group:"Effect"}},phase:{default:0,description:"Phase offset for ripple animation",ui:{type:["range","map"],min:0,max:6.28,step:.1,label:"Phase",group:"Animation"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=e.center.uniform,i=e.colorA.uniform,o=e.colorB.uniform,a=e.frequency.uniform,l=e.softness.uniform,s=e.thickness.uniform,u=e.phase.uniform,d=$.x.div($.y),h=W1(I(n.x.mul(d),n.y),I(r.x.mul(d),r.y.oneMinus())),f=fn(t,e.speed),g=fe(h.mul(a).sub(f).add(u)),y=s.mul(p(2)).sub(p(1));return Lt(o,i,Oe(y.sub(l),y.add(l),g).oneMinus(),0)}}});var Qye,zl,n6=z(()=>{"use strict";Dt();On();eo();ut();Qye=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,zl={name:"RoundedRect",category:"Shapes",description:"Rounded rectangle with adjustable width, height, and corner rounding",props:{color:{default:"#ffffff",transform:Ce,description:"Fill color of the rectangle",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the rectangle",ui:{type:"position",label:"Center",group:"Position"}},width:{default:.35,description:"Half-width of the rectangle",ui:{type:"range",min:.01,max:1,step:.01,label:"Width",group:"Shape"}},height:{default:.25,description:"Half-height of the rectangle",ui:{type:"range",min:.01,max:1,step:.01,label:"Height",group:"Shape"}},rounding:{default:.05,description:"Corner rounding radius \u2014 set to min(width, height) for a pill shape",ui:{type:"range",min:0,max:.5,step:.01,label:"Rounding",group:"Shape"}},rotation:{default:0,description:"Rotation in degrees",ui:{type:"range",min:0,max:360,step:1,label:"Rotation",group:"Shape"}},softness:{default:0,description:"Edge softness for antialiasing",ui:{type:"range",min:0,max:.1,step:.001,label:"Softness",group:"Effect"}},strokeThickness:{default:0,description:"Stroke thickness. Zero means no stroke.",ui:{type:"range",min:0,max:.2,step:.005,label:"Stroke Thickness",group:"Stroke"}},strokeColor:{default:"#000000",transform:Ce,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:Qye,description:"Position of the stroke relative to the shape edge",ui:{type:"select",options:[{label:"Outside",value:"outside"},{label:"Center",value:"center"},{label:"Inside",value:"inside"}],label:"Stroke Position",group:"Stroke"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:Gt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=r.x.sub(i.x),a=r.y.sub(i.y),l=t.rotation.uniform.mul(p(Math.PI/180)),s=Ye(l),u=fe(l),d=zI(o.mul(s).add(a.mul(u)),a.mul(s).sub(o.mul(u)),t.width.uniform,t.height.uniform,t.rounding.uniform),h=t.softness.uniform,f=t.strokeThickness.uniform,g=t.strokePosition.uniform,y=f.greaterThan(p(0)),_=g.greaterThanEqual(p(.5)).and(g.lessThan(p(1.5))),b=g.greaterThanEqual(p(1.5)),S=f.mul(.5),w=b.select(f.negate(),_.select(S.negate(),p(0))),v=b.select(p(0),_.select(S,f)),E=Oe(v.sub(h),v,d).oneMinus(),C=y.select(Oe(w.sub(h),w,d),p(0)),M=Lt(F(t.color.uniform.rgb,t.color.uniform.a),F(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),C,t.colorSpace.uniform.value);return F(M.xyz,M.w.mul(E))}}});var Vl,r6=z(()=>{"use strict";ut();Vl={name:"Saturation",category:"Adjustments",description:"Adjust color saturation intensity",requiresChild:!0,props:{intensity:{default:1,description:"The intensity of the saturation effect (1 being no change)",compileTimeWhen:(t,e)=>t===1!=(e===1),ui:{type:["range","map"],min:0,max:3,step:.1,label:"Intensity",group:"Appearance"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return console.error("You must pass a child component into the Saturation shader."),F(0);if(t.intensity.uniform.value===1)return e;let n=kt(e.rgb,_e(.2126,.7152,.0722));return F(Re(_e(n,n,n),e.rgb,t.intensity.uniform),e.a)}}});var Gl,i6=z(()=>{"use strict";Wn();ut();Gl={name:"Sharpness",category:"Adjustments",description:"Adjust image sharpness using a convolution kernel",requiresRTT:!0,requiresChild:!0,props:{sharpness:{default:0,description:"How sharp to make the underlying image",compileTimeWhen:(t,e)=>t===0!=(e===0),ui:{type:["range","map"],min:0,max:5,step:.1,label:"Sharpness",group:"Appearance"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);if(t.sharpness.uniform.value===0)return e;let r=It(e);return n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()}),qe(()=>{let i=j,o=t.sharpness.uniform,a=I(1).div($),l=r.sample(i),s=r.sample(i.add(I(0,a.y))),u=r.sample(i.sub(I(0,a.y))),d=r.sample(i.sub(I(a.x,0))),h=r.sample(i.add(I(a.x,0))),f=p(1).add(o.mul(4)),g=o.negate();return Vt(F(Tt(l.mul(f).add(s.mul(g)).add(u.mul(g)).add(d.mul(g)).add(h.mul(g)).rgb,0,1),l.a))})()}}});var Oa,Co,mo,Hl,o6=z(()=>{"use strict";gi();Dt();Wn();Li();Bi();ut();Oa=t=>{let e=Math.sin(t)*1e4;return e-Math.floor(e)},Co=16,mo=1024,Hl={name:"Shatter",category:"Interactive",description:"Broken glass effect with tectonic plate displacement",requiresRTT:!0,requiresChild:!0,usesPointer:!0,props:{crackWidth:{default:1,description:"Thickness of crack lines",ui:{type:["range","map"],min:.5,max:5,step:.1,label:"Crack Width",group:"Effect"}},intensity:{default:4,description:"How much shards shift",ui:{type:"range",min:0,max:20,step:1,label:"Intensity",group:"Effect"}},radius:{default:.4,description:"Cursor influence radius",ui:{type:"range",min:.1,max:1,step:.1,label:"Radius",group:"Effect"}},decay:{default:1,description:"How fast shards return to rest",ui:{type:"range",min:.1,max:10,step:.1,label:"Decay",group:"Effect"}},seed:{default:2,description:"Random seed for pattern",ui:{type:"range",min:0,max:50,step:1,label:"Seed",group:"Effect"}},chromaticSplit:{default:1,description:"RGB separation for prismatic glass effect",ui:{type:["range","map"],min:0,max:5,step:.1,label:"Chromatic Split",group:"Effect"}},refractionStrength:{default:5,description:"How much cracks bend/distort the underlying image",ui:{type:["range","map"],min:0,max:10,step:.1,label:"Refraction",group:"Effect"}},shardLighting:{default:.1,description:"Subtle lighting on tilted shards for 3D depth",ui:{type:"range",min:0,max:.5,step:.1,label:"Shard Lighting",group:"Effect"}},edges:{default:"mirror",description:"How to handle edges when displacement pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},computeNode:({uniforms:t,onCleanup:e})=>{let n=Gd(new Array(Co*2).fill(0),"float"),r=new Nr(mo,mo);r.type=on,r.magFilter=An,r.minFilter=An,r.generateMipmaps=!1;let i=Er(r);e(()=>{r.dispose()});let o=Tn(mo),a=p(1/mo),l=qe(()=>{let h=Kt,f=h.mod(o),g=h.div(o);Pn(g.lessThan(o),()=>{let y=f.toFloat().add(p(.5)).mul(a),_=g.toFloat().add(p(.5)).mul(a),b=p(99999).toVar(),S=p(99999).toVar(),w=p(0).toVar(),v=p(0).toVar();for(let E=0;E<Co;E++){let C=n.element(Ut(E*2)),M=n.element(Ut(E*2+1)),R=y.sub(C),c=_.sub(M),m=R.mul(R).add(c.mul(c));Pn(m.lessThan(b),()=>{S.assign(b),v.assign(w),b.assign(m),w.assign(p(E))}).Else(()=>{Pn(m.lessThan(S),()=>{S.assign(m),v.assign(p(E))})})}er(i,En(f,g),F(w,v,p(0),p(0))).toWriteOnly()})})().compute(mo*mo,[256]),s=t.seed.uniform.value,u=!0,d=h=>{let f=new Array(Co*2);for(let g=0;g<Co;g++)f[g*2]=Oa(h+g*2),f[g*2+1]=Oa(h+g*2+1);n.array=f};return d(s),{outputs:{voronoiTexture:r},getComputeNodes:()=>{let h=t.seed.uniform.value;return h!==s&&(s=h,d(s),u=!0),u?(u=!1,[l]):null}}},fragmentNode:({uniforms:t,onBeforeRender:e,childNode:n,onCleanup:r,dimensions:i,computeOutputs:o})=>{let l=new Float32Array(Co*4),s=new Array(Co*2).fill(0),u=Gd(s,"float"),d=new Float32Array(Co*4),h=new Array(Co*2).fill(0),f=Gd(h,"float"),g=()=>{for(let ke=0;ke<Co;ke++)s[ke*2]=l[ke*4],s[ke*2+1]=l[ke*4+1];u.array=s},y=()=>{for(let ke=0;ke<Co;ke++)h[ke*2]=d[ke*4],h[ke*2+1]=d[ke*4+1];f.array=h},_;if(o?.voronoiTexture)_=vn(o.voronoiTexture);else{let ke=new Float32Array(mo*mo*4),k=new ir(ke,mo,mo,qn,on);k.magFilter=An,k.minFilter=An,_=vn(k);let P=()=>{for(let se=0;se<mo;se++)for(let Te=0;Te<mo;Te++){let Ie=(Te+.5)/mo,J=(se+.5)/mo,ee=1/0,Se=1/0,Je=0,Fe=0;for(let Nt=0;Nt<Co;Nt++){let Ot=Ie-l[Nt*4],en=J-l[Nt*4+1],ne=Ot*Ot+en*en;ne<ee?(Se=ee,Fe=Je,ee=ne,Je=Nt):ne<Se&&(Se=ne,Fe=Nt)}let Qe=(se*mo+Te)*4;ke[Qe]=Je,ke[Qe+1]=Fe}k.needsUpdate=!0},H=t.seed.uniform.value,Q=se=>{for(let Te=0;Te<Co;Te++)l[Te*4]=Oa(se+Te*2),l[Te*4+1]=Oa(se+Te*2+1),l[Te*4+2]=Oa(se+Te*3),l[Te*4+3]=Oa(se+Te*3+1);g()};Q(H),P(),e(()=>{let se=t.seed.uniform.value;se!==H&&(H=se,Q(H),P(),d.fill(0))}),r(()=>{k.dispose()})}let b=ke=>{for(let k=0;k<Co;k++)l[k*4]=Oa(ke+k*2),l[k*4+1]=Oa(ke+k*2+1),l[k*4+2]=Oa(ke+k*3),l[k*4+3]=Oa(ke+k*3+1);g()},S=t.seed.uniform.value;b(S),d.fill(0),y();let w=.5,v=.5,E=Date.now();if(e(({pointer:ke})=>{let k=Date.now(),P=Math.min((k-E)/1e3,.016);E=k;let H=i.width/i.height,Q=t.seed.uniform.value;Q!==S&&(S=Q,b(S),d.fill(0));let se=t.intensity.uniform.value,Te=t.radius.uniform.value,Ie=t.decay.uniform.value,J=P>0?(ke.x-w)/P:0,ee=P>0?(ke.y-v)/P:0,Se=Math.sqrt(J*J+ee*ee),Je=5+se*2;if(Se>Je){let Fe=Je/Se;J*=Fe,ee*=Fe,Se=Je}for(let Fe=0;Fe<Co;Fe++){let Qe=l[Fe*4],Nt=l[Fe*4+1],Ot=l[Fe*4+2]-.5,en=l[Fe*4+3]-.5,ne=H>=1?(Qe-ke.x)*H:Qe-ke.x,st=H>=1?Nt-ke.y:(Nt-ke.y)/H,ze=Math.sqrt(ne*ne+st*st),Rt=d[Fe*4],At=d[Fe*4+1],dt=Math.max(.01,Ie),qt=Math.exp(-P/dt);Rt*=qt,At*=qt;let pn=0,rr=0;if(ze<Te&&Se>.01){let Rr=Math.max(0,1-ze/Te),vi=Rr*Rr,Us=vi*Se*se*P*.5;pn=J*Us,rr=ee*Us;let Ds=vi*Se*se*P*.1;pn+=Ot*Ds,rr+=en*Ds}let Fn=Math.min(1,1*P);d[Fe*4]=Rt+pn*Fn,d[Fe*4+1]=At+rr*Fn,d[Fe*4+2]=0,d[Fe*4+3]=0}y(),w=ke.x,v=ke.y}),!n)return F(0,0,0,0);let C=It(n);r(()=>{C?.renderTarget?.dispose&&C.renderTarget.dispose()});let M=_.sample(j),R=M.r.toInt(),c=M.g.toInt(),m=I(u.element(R.mul(2)),u.element(R.mul(2).add(1))),x=I(u.element(c.mul(2)),u.element(c.mul(2).add(1))),T=j.sub(m).length(),N=j.sub(x).length(),B=I(f.element(R.mul(2)),f.element(R.mul(2).add(1))),D=B.length(),O=N.sub(T),L=t.crackWidth.uniform.mul(.005),V=p(1).sub(Oe(p(0),L,O)),Z=Oe(p(0),p(.01),D),q=V.mul(Z),ae=j.sub(m).normalize(),we=I(ae.y.negate(),ae.x),Ae=j.sub(B),Ge=we.mul(t.refractionStrength.uniform).mul(.01),et=t.chromaticSplit.uniform.mul(.005),Ze=Ge.add(we.mul(et)),he=Ge,Me=Ge.sub(we.mul(et)),Pe=Ae.add(Ze.mul(q)),We=Ae.add(he.mul(q)),Xe=Ae.add(Me.mul(q)),le=Ln(Pe,C.sample(Pe),C,t.edges.uniform.value),rt=Ln(We,C.sample(We),C,t.edges.uniform.value),De=Ln(Xe,C.sample(Xe),C,t.edges.uniform.value),K=F(le.r,rt.g,De.b,rt.a),be=Ln(Ae,C.sample(Ae),C,t.edges.uniform.value),Ee=be.rgb.mul(p(1).sub(q)).add(K.rgb.mul(q)),Be=B.length(),Ke=B.x.div(Be.add(.001)),ct=B.y.div(Be.add(.001)),X=I(.3,.6).normalize(),at=Ke.mul(X.x).add(ct.mul(X.y)),nt=p(1).add(at.mul(t.shardLighting.uniform)),Ct=Oe(p(0),p(.02),Be),me=p(1).add(nt.sub(1).mul(Ct));return Vt(F(Ee.mul(me),be.a))}}});var Wl,s6=z(()=>{"use strict";Dt();On();gr();ut();Wl={name:"SimplexNoise",category:"Textures",description:"Organic noise with animated movement",props:{colorA:{default:"#ffffff",description:"First color",transform:Ce,ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#000000",description:"Second color",transform:Ce,ui:{type:"color",label:"Color B",group:"Colors"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}},scale:{default:2,description:"Pattern scale (higher = larger patterns)",ui:{type:"range",min:-2,max:5,step:.1,label:"Scale",group:"Effect"}},balance:{default:0,description:"Balance between colors (negative = more colorB, positive = more colorA)",ui:{type:["range","map"],min:-1,max:1,step:.1,label:"Balance",group:"Effect"}},contrast:{default:0,description:"Pattern contrast (higher = sharper transitions)",ui:{type:["range","map"],min:-2,max:5,step:.1,label:"Contrast",group:"Effect"}},seed:{default:0,description:"Random seed for pattern variation",ui:{type:"range",min:0,max:100,step:1,label:"Seed",group:"Effect"}},speed:{default:1,description:"Animation speed",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Animation"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=$.x.div($.y),i=I(n.x.mul(r),n.y),o=fn(t,e.speed),a=i.mul(ki(e.scale.uniform)).add(e.seed.uniform),l=Dn(_e(a.x,a.y,o.mul(.5))),s=e.contrast.uniform.add(1),u=Tt(l.mul(s).add(e.balance.uniform).mul(.5).add(.5),0,1);return Lt(e.colorB.uniform,e.colorA.uniform,u,e.colorSpace.uniform.value)}}});var jl,a6=z(()=>{"use strict";Dt();gr();ut();jl={name:"SineWave",category:"Textures",description:"Animated wave with thickness and softness",props:{color:{default:"#ffffff",transform:Ce,description:"The color of the sine wave",ui:{type:"color",label:"Color",group:"Colors"}},amplitude:{default:.15,description:"The height/amplitude of the sine wave",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Amplitude",group:"Effect"}},frequency:{default:1,description:"The frequency/number of wave cycles",ui:{type:["range","map"],min:.1,max:20,step:.1,label:"Frequency",group:"Effect"}},speed:{default:1,description:"The animation speed of the wave",ui:{type:"range",min:-5,max:5,step:.1,label:"Speed",group:"Animation"}},angle:{default:0,transform:sr,description:"The rotation angle of the wave (in degrees)",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},position:{default:{x:.5,y:.5},transform:wt,description:"The center position of the wave",ui:{type:"position",label:"Position",group:"Position"}},thickness:{default:.2,description:"The thickness of the wave line",ui:{type:["range","map"],min:0,max:2,step:.1,label:"Thickness",group:"Effect"}},softness:{default:.4,description:"Edge softness of the wave line",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Softness",group:"Effect"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=$.x.div($.y),i=I(n.x.mul(r),n.y),o=I(e.position.uniform.x.mul(r),e.position.uniform.y.oneMinus()),a=i.sub(o),l=qr(e.angle.uniform),s=Ye(l),u=fe(l),d=a.x.mul(s).sub(a.y.mul(u)),h=a.x.mul(u).add(a.y.mul(s)),f=fn(t,e.speed),g=fe(d.mul(e.frequency.uniform).mul(ci.mul(2)).add(f)).mul(e.amplitude.uniform),y=Et(h.sub(g)),_=e.thickness.uniform.mul(.5),b=e.softness.uniform.mul(.5),S=Oe(_.sub(b),_.add(b),y).oneMinus();return F(e.color.uniform.rgb,e.color.uniform.a.mul(S))}}});var c6,eve,tve,l6,u6,ql,d6=z(()=>{"use strict";Dt();On();Li();Bi();ut();c6=256,eve=56,tve=20,l6=.8,u6=.2,ql={name:"Smoke",category:"Interactive",description:"Realistic fluid smoke simulation with vorticity dynamics",usesPointer:!0,props:{colorA:{default:"#fc83f9",transform:Ce,description:"Color of fresh smoke",ui:{type:"color",label:"Start Color",group:"Colors"}},colorB:{default:"#c21c79",transform:Ce,description:"Color smoke transitions to as it ages",ui:{type:"color",label:"End Color",group:"Colors"}},emitFrom:{default:{x:.5,y:1},transform:wt,description:"The emission source point",ui:{type:"position",label:"Emit From",group:"Emission"}},direction:{default:0,description:"Emission direction (0 = up, 90 = right, 180 = down, 270 = left)",ui:{type:"range",min:0,max:360,step:1,label:"Direction",group:"Emission"}},speed:{default:20,description:"Emission velocity strength",ui:{type:"range",min:.1,max:50,step:.1,label:"Speed",group:"Emission"}},spread:{default:60,description:"Emission cone angle in degrees",ui:{type:"range",min:0,max:180,step:1,label:"Spread",group:"Emission"}},emitRadius:{default:.08,description:"Size of the emission area",ui:{type:"range",min:.01,max:.3,step:.01,label:"Emit Size",group:"Emission"}},intensity:{default:1,description:"Smoke emission density",ui:{type:"range",min:.1,max:1,step:.05,label:"Intensity",group:"Effect"}},dissipation:{default:.2,description:"How fast smoke fades over time",ui:{type:"range",min:.1,max:3,step:.1,label:"Dissipation",group:"Effect"}},detail:{default:25,description:"Fine-scale swirling detail",ui:{type:"range",min:0,max:50,step:1,label:"Detail",group:"Effect"}},gravity:{default:.5,description:"Downward gravitational pull on smoke",ui:{type:"range",min:-2,max:2,step:.1,label:"Gravity",group:"Effect"}},colorDecay:{default:.4,description:"How quickly smoke shifts from Color A to Color B",ui:{type:"range",min:0,max:3,step:.1,label:"Color Decay",group:"Colors"}},mouseInfluence:{default:.1,description:"Strength of cursor influence",ui:{type:"range",min:0,max:2,step:.05,label:"Cursor Influence",group:"Interaction"}},mouseRadius:{default:.1,description:"Radius of cursor influence area",ui:{type:"range",min:.02,max:.5,step:.01,label:"Cursor Radius",group:"Interaction"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},computeNode:({uniforms:t,onCleanup:e,renderer:n})=>{let r=c6,i=Tn(r),o=Ut(r),a=Ut(r-1),l=r*r,s=(K,be,Ee,Be)=>K.add(Ut(Ee)).clamp(Ut(0),a).mul(o).add(be.add(Ut(Be)).clamp(Ut(0),a)),u=br(l,"vec4"),d=br(l,"vec4"),h=br(l,"vec4"),f=br(l,"vec4"),g=br(l,"vec4"),y=new Nr(r,r);y.type=on;let _=Er(y);e(()=>{y.dispose()});let b=oe(.016),S=oe(128),w=oe(256),v=oe(0),E=oe(-50),C=oe(1),M=oe(0),R=oe(.5),c=oe(15),m=oe(.7),x=oe(1),T=oe(30),N=oe(.5),B=oe(128),D=oe(128),O=oe(0),L=oe(0),V=oe(0),Z=oe(900),q=oe(1),ae=qe(()=>{let K=Kt,be=K.mod(i),Ee=K.div(i),Be=be.toFloat().add(p(.5)),Ke=Ee.toFloat().add(p(.5)),ct=Be.sub(S),X=Ke.sub(w),at=ct.mul(ct).add(X.mul(X)),nt=c.mul(c).max(p(1)),Ct=at.negate().div(nt).exp(),me=h.element(K),ke=me.x,k=m.mul(Ct).mul(b).mul(p(8)),P=ke.add(k).min(p(1)),H=k.div(P.max(p(.001)));h.element(K).assign(F(P,me.y.mul(p(1).sub(H.min(p(1)))),p(0),p(0)));let Q=u.element(K),se=ct.mul(C).add(X.mul(M)).div(c.max(p(1))),Te=v.mul(v).add(E.mul(E)).max(p(1)),Ie=v.add(C.mul(se).mul(R).mul(Te.sqrt())),J=E.add(M.mul(se).mul(R).mul(Te.sqrt())),ee=Ct.mul(b).mul(p(3)).min(p(1)),Se=N.mul(ke).mul(b).mul(p(r*.08)),Je=Be.sub(B),Fe=Ke.sub(D),Qe=Je.mul(Je).add(Fe.mul(Fe)).negate().div(Z.max(p(1))).exp().mul(V);u.element(K).assign(F(Re(Q.x,Ie,ee).add(O.mul(Qe)),Re(Q.y,J,ee).add(Se).add(L.mul(Qe)),Q.z,p(0)))})().compute(l,[256]),we=qe(()=>{let K=Kt,be=K.mod(i).toInt(),Ee=K.div(i).toInt(),Be=u.element(s(Ee,be,0,-1)),Ke=u.element(s(Ee,be,0,1)),ct=u.element(s(Ee,be,-1,0)),X=u.element(s(Ee,be,1,0)),at=Ke.y.sub(Be.y).sub(X.x.sub(ct.x)).mul(p(.5)),nt=u.element(K);u.element(K).assign(F(nt.x,nt.y,at,p(0)))})().compute(l,[256]),Ae=qe(()=>{let K=Kt,be=K.mod(i).toInt(),Ee=K.div(i).toInt(),Be=u.element(s(Ee,be,0,-1)).z.abs(),Ke=u.element(s(Ee,be,0,1)).z.abs(),ct=u.element(s(Ee,be,-1,0)).z.abs(),X=u.element(s(Ee,be,1,0)).z.abs(),at=u.element(K).z,nt=Ke.sub(Be).mul(p(.5)),Ct=X.sub(ct).mul(p(.5)),me=nt.mul(nt).add(Ct.mul(Ct)).sqrt().max(p(1e-5)),ke=Ct.div(me).mul(at).mul(T).mul(b),k=nt.div(me).negate().mul(at).mul(T).mul(b),P=u.element(K);u.element(K).assign(F(P.x.add(ke),P.y.add(k),P.z,p(0)))})().compute(l,[256]),Ge=qe(()=>{let K=Kt,be=K.mod(i).toInt(),Ee=K.div(i).toInt(),Be=be.toFloat(),Ke=Ee.toFloat(),ct=u.element(K),X=u.element(s(Ee,be,0,-1)).x,at=u.element(s(Ee,be,0,1)).x,nt=u.element(s(Ee,be,-1,0)).y,Ct=u.element(s(Ee,be,1,0)).y,me=Be.lessThan(p(.5)).select(ct.x.negate(),X),ke=Be.greaterThan(p(r-1.5)).select(ct.x.negate(),at),k=Ke.lessThan(p(.5)).select(ct.y.negate(),nt),P=Ke.greaterThan(p(r-1.5)).select(ct.y.negate(),Ct),H=ke.sub(me).add(P.sub(k)).mul(p(.5)),Q=g.element(K).x.mul(p(l6));g.element(K).assign(F(Q,H,p(0),p(0)))})().compute(l,[256]),et=qe(()=>{let K=Kt,be=K.mod(i).toInt(),Ee=K.div(i).toInt(),Be=g.element(s(Ee,be,0,-1)).x,Ke=g.element(s(Ee,be,0,1)).x,ct=g.element(s(Ee,be,-1,0)).x,X=g.element(s(Ee,be,1,0)).x,at=g.element(K).y;g.element(K).assign(F(Be.add(Ke).add(ct).add(X).sub(at).mul(p(.25)),at,p(0),p(0)))})().compute(l,[256]),Ze=qe(()=>{let K=Kt,be=K.mod(i).toInt(),Ee=K.div(i).toInt(),Be=g.element(s(Ee,be,0,-1)).x,Ke=g.element(s(Ee,be,0,1)).x,ct=g.element(s(Ee,be,-1,0)).x,X=g.element(s(Ee,be,1,0)).x,at=u.element(K);u.element(K).assign(F(at.x.sub(Ke.sub(Be).mul(p(.5))),at.y.sub(X.sub(ct).mul(p(.5))),at.z,p(0)))})().compute(l,[256]),he=qe(()=>{let K=Kt,be=K.mod(i),Ee=K.div(i),Be=u.element(K),Ke=be.toFloat().sub(Be.x.mul(b)).clamp(p(0),p(r-1)),ct=Ee.toFloat().sub(Be.y.mul(b)).clamp(p(0),p(r-1)),X=Zt(Ke).clamp(p(0),p(r-2)),at=Zt(ct).clamp(p(0),p(r-2)),nt=Ke.sub(X),Ct=ct.sub(at),me=X.toInt(),ke=at.toInt(),k=u.element(ke.mul(o).add(me)),P=u.element(ke.mul(o).add(me.add(Ut(1)))),H=u.element(ke.add(Ut(1)).mul(o).add(me)),Q=u.element(ke.add(Ut(1)).mul(o).add(me.add(Ut(1)))),se=p(1).add(p(u6).mul(b));d.element(K).assign(F(Re(Re(k.x,P.x,nt),Re(H.x,Q.x,nt),Ct).div(se),Re(Re(k.y,P.y,nt),Re(H.y,Q.y,nt),Ct).div(se),p(0),p(0)))})().compute(l,[256]),Me=qe(()=>{let K=d.element(Kt);u.element(Kt).assign(F(K.x,K.y,p(0),p(0)))})().compute(l,[256]),Pe=qe(()=>{let K=Kt,be=K.mod(i),Ee=K.div(i),Be=u.element(K),Ke=be.toFloat().sub(Be.x.mul(b)).clamp(p(0),p(r-1)),ct=Ee.toFloat().sub(Be.y.mul(b)).clamp(p(0),p(r-1)),X=Zt(Ke).clamp(p(0),p(r-2)),at=Zt(ct).clamp(p(0),p(r-2)),nt=Ke.sub(X),Ct=ct.sub(at),me=X.toInt(),ke=at.toInt(),k=h.element(ke.mul(o).add(me)),P=h.element(ke.mul(o).add(me.add(Ut(1)))),H=h.element(ke.add(Ut(1)).mul(o).add(me)),Q=h.element(ke.add(Ut(1)).mul(o).add(me.add(Ut(1)))),se=Re(Re(k.x,P.x,nt),Re(H.x,Q.x,nt),Ct),Te=Re(Re(k.y,P.y,nt),Re(H.y,Q.y,nt),Ct),Ie=p(1).add(x.mul(b));f.element(K).assign(F(se.div(Ie).max(p(0)),Te.add(b.mul(p(.4)).mul(q)).min(p(1)),p(0),p(0)))})().compute(l,[256]),We=qe(()=>{let K=f.element(Kt);h.element(Kt).assign(F(K.x,K.y,p(0),p(0)))})().compute(l,[256]),Xe=qe(()=>{let K=Kt,be=K.mod(i),Ee=K.div(i),Be=h.element(K);er(_,En(be,Ee),F(Be.x,Be.y,p(0),p(0))).toWriteOnly()})().compute(l,[256]),le=Date.now(),rt=.5,De=.5;return{outputs:{smokeTexture:y},getComputeNodes:K=>{let be=Date.now(),Ee=Math.min((be-le)/1e3,.033);if(le=be,Ee<.001)return null;let Be=(J,ee)=>{let Se=t[J];if(!Se)return ee;if(typeof Se.getCpuValue=="function"){let Fe=Se.getCpuValue();return typeof Fe=="number"?Fe:ee}let Je=Se.uniform?.value;return typeof Je=="number"?Je:ee},Ke=Be("speed",3),ct=Be("direction",0)*Math.PI/180,X=Math.min(89*Math.PI/180,Be("spread",45)*Math.PI/360),at=t.emitFrom.uniform.value,nt=typeof at=="object"?at.x??.5:.5,Ct=typeof at=="object"?at.y??0:0;b.value=Ee,S.value=nt*r,w.value=(1-Ct)*r;let me=Ke*r*.15;v.value=Math.sin(ct)*me,E.value=-Math.cos(ct)*me,C.value=Math.cos(ct),M.value=Math.sin(ct),R.value=Math.tan(X),c.value=Be("emitRadius",.06)*r,m.value=Be("intensity",.7),x.value=Be("dissipation",1),T.value=Be("detail",30),N.value=Be("gravity",.5),q.value=Be("colorDecay",1);let ke=Be("mouseInfluence",.5),k=Be("mouseRadius",.12),P=K?.pointer?.x??rt,H=K?.pointer?.y??De,Q=P-rt,se=H-De;rt=P,De=H;let Te=Math.sqrt(Q*Q+se*se),Ie=k*r;Z.value=Ie*Ie,Te>5e-4&&ke>0?(B.value=P*r,D.value=H*r,O.value=Q*r*15*ke,L.value=se*r*15*ke,V.value=1):V.value=0,n.compute(ae),n.compute(we),n.compute(Ae),n.compute(Ge);for(let J=0;J<tve;J++)n.compute(et);return n.compute(Ze),n.compute(he),n.compute(Me),n.compute(Pe),n.compute(We),[Xe]}}},fragmentNode:({uniforms:t,onBeforeRender:e,onCleanup:n,computeOutputs:r})=>{let i;if(r?.smokeTexture)i=vn(r.smokeTexture);else{let s=eve,u=s*s,d=new Float32Array(u),h=new Float32Array(u),f=new Float32Array(u),g=new Float32Array(u),y=new Float32Array(u),_=new Float32Array(u),b=new Float32Array(u),S=new Float32Array(u),w=new Float32Array(u),v=new Float32Array(u),E=new Float32Array(u),C=new Float32Array(u*4),M=new ir(C,s,s,qn,on);M.magFilter=sn,M.minFilter=sn,M.needsUpdate=!0,i=vn(M);let R=(B,D)=>{let O=t[B];if(!O)return D;if(typeof O.getCpuValue=="function"){let V=O.getCpuValue();return typeof V=="number"?V:D}let L=O.uniform?.value;return typeof L=="number"?L:D},c=Date.now(),m=.5,x=.5,T=(B,D,O)=>{let L=Math.max(0,Math.min(s-1,D)),V=Math.max(0,Math.min(s-1,O)),Z=Math.max(0,Math.min(s-2,Math.floor(L))),q=Math.max(0,Math.min(s-2,Math.floor(V))),ae=L-Z,we=V-q,Ae=q*s+Z;return(1-ae)*(1-we)*B[Ae]+ae*(1-we)*B[Ae+1]+(1-ae)*we*B[Ae+s]+ae*we*B[Ae+s+1]},N=(B,D,O,L)=>Math.max(0,Math.min(s-1,B+O))*s+Math.max(0,Math.min(s-1,D+L));e(({pointer:B})=>{let D=Date.now(),O=Math.min((D-c)/1e3,.033);if(c=D,O<.001)return;let L=R("speed",3),V=t.direction.uniform.value*Math.PI/180,Z=Math.min(89*Math.PI/180,t.spread.uniform.value*Math.PI/360),q=t.emitFrom.uniform.value,ae=(typeof q=="object"?q.x??.5:.5)*s,we=(1-(typeof q=="object"?q.y??0:0))*s,Ae=L*s*.15,Ge=Math.sin(V)*Ae,et=-Math.cos(V)*Ae,Ze=Math.cos(V),he=Math.sin(V),Me=Math.tan(Z),Pe=t.emitRadius.uniform.value*s,We=t.intensity.uniform.value,Xe=R("detail",30),le=R("gravity",.5),rt=R("colorDecay",1),De=R("dissipation",.2),K=t.mouseInfluence.uniform.value,be=t.mouseRadius.uniform.value*s,Ee=B?.x??m,Be=B?.y??x,Ke=Ee-m,ct=Be-x;m=Ee,x=Be;let X=Math.sqrt(Ke*Ke+ct*ct)>5e-4&&K>0,at=X?Ke*s*15*K:0,nt=X?ct*s*15*K:0,Ct=Ee*s,me=Be*s;for(let P=0;P<s;P++)for(let H=0;H<s;H++){let Q=P*s+H,se=H+.5-ae,Te=P+.5-we,Ie=Math.exp(-(se*se+Te*Te)/Math.max(1,Pe*Pe)),J=y[Q],ee=We*Ie*O*8,Se=Math.min(1,J+ee);_[Q]*=1-Math.min(1,ee/Math.max(.001,Se)),y[Q]=Se;let Je=(se*Ze+Te*he)/Math.max(1,Pe),Fe=Math.sqrt(Ge*Ge+et*et),Qe=Ge+Ze*Je*Me*Fe,Nt=et+he*Je*Me*Fe,Ot=Math.min(1,Ie*O*3),en=H+.5-Ct,ne=P+.5-me,st=X?Math.exp(-(en*en+ne*ne)/Math.max(1,be*be)):0;d[Q]=d[Q]*(1-Ot)+Qe*Ot+at*st,h[Q]=h[Q]*(1-Ot)+Nt*Ot+le*J*O*s*.08+nt*st}if(Xe>0){for(let P=0;P<s;P++)for(let H=0;H<s;H++)E[P*s+H]=.5*(h[N(P,H,0,1)]-h[N(P,H,0,-1)]-(d[N(P,H,1,0)]-d[N(P,H,-1,0)]));for(let P=0;P<s;P++)for(let H=0;H<s;H++){let Q=P*s+H,se=.5*(Math.abs(E[N(P,H,0,1)])-Math.abs(E[N(P,H,0,-1)])),Te=.5*(Math.abs(E[N(P,H,1,0)])-Math.abs(E[N(P,H,-1,0)])),Ie=Math.max(1e-5,Math.sqrt(se*se+Te*Te));d[Q]+=Te/Ie*E[Q]*Xe*O,h[Q]+=-(se/Ie)*E[Q]*Xe*O}}for(let P=0;P<s;P++)for(let H=0;H<s;H++){let Q=P*s+H,se=H===0?-d[Q]:d[N(P,H,0,-1)],Te=H===s-1?-d[Q]:d[N(P,H,0,1)],Ie=P===0?-h[Q]:h[N(P,H,-1,0)],J=P===s-1?-h[Q]:h[N(P,H,1,0)];v[Q]=.5*(Te-se+J-Ie),w[Q]*=l6}for(let P=0;P<6;P++)for(let H=0;H<s;H++)for(let Q=0;Q<s;Q++){let se=H*s+Q;w[se]=.25*(w[N(H,Q,0,-1)]+w[N(H,Q,0,1)]+w[N(H,Q,-1,0)]+w[N(H,Q,1,0)]-v[se])}for(let P=0;P<s;P++)for(let H=0;H<s;H++){let Q=P*s+H;d[Q]-=.5*(w[N(P,H,0,1)]-w[N(P,H,0,-1)]),h[Q]-=.5*(w[N(P,H,1,0)]-w[N(P,H,-1,0)])}let ke=1+u6*O;for(let P=0;P<s;P++)for(let H=0;H<s;H++){let Q=P*s+H;f[Q]=T(d,H-d[Q]*O,P-h[Q]*O)/ke,g[Q]=T(h,H-d[Q]*O,P-h[Q]*O)/ke}d.set(f),h.set(g);let k=1+De*O;for(let P=0;P<s;P++)for(let H=0;H<s;H++){let Q=P*s+H,se=H-d[Q]*O,Te=P-h[Q]*O;b[Q]=Math.max(0,T(y,se,Te)/k),S[Q]=Math.min(1,T(_,se,Te)+O*.4*rt)}y.set(b),_.set(S);for(let P=0;P<u;P++)C[P*4]=y[P],C[P*4+1]=_[P];M.needsUpdate=!0}),n(()=>{M.dispose()})}let o,a;if(r?.smokeTexture){let s=p(1/c6),u=i.sample(j),d=i.sample(j.add(I(s,p(0)))),h=i.sample(j.add(I(p(0),s))),f=i.sample(j.add(I(s.negate(),p(0)))),g=i.sample(j.add(I(p(0),s.negate())));o=u.x.mul(p(.5)).add(d.x.mul(p(.125))).add(h.x.mul(p(.125))).add(f.x.mul(p(.125))).add(g.x.mul(p(.125))),a=u.y.mul(p(.5)).add(d.y.mul(p(.125))).add(h.y.mul(p(.125))).add(f.y.mul(p(.125))).add(g.y.mul(p(.125)))}else{let s=i.sample(j);o=s.x,a=s.y}let l=Lt(t.colorA.uniform,t.colorB.uniform,a,t.colorSpace.uniform.value);return F(l.x,l.y,l.z,l.w.mul(o))}}});var nve,KI,f6,rve,ive,ove,Xl,h6=z(()=>{"use strict";Dt();On();eo();Li();Bi();ut();nve=JSON.stringify({type:"circleSDF",radius:.35}),KI=256,f6=56,rve=20,ive=.8,ove=.2,Xl={name:"SmokeFill",category:"Shape Effects",description:"Fill a shape with swirling fluid smoke that interacts with the shape boundary",requiresRTT:!1,requiresChild:!1,usesPointer:!0,props:{colorA:{default:"#8cf3ff",transform:Ce,description:"Color of fresh smoke",ui:{type:"color",label:"Start Color",group:"Colors"}},colorB:{default:"#04a0d6",transform:Ce,description:"Color smoke transitions to as it ages",ui:{type:"color",label:"End Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the shape",ui:{type:"position",label:"Center",group:"Position"}},scale:{default:1,description:"Scale of the shape (1 = default size)",ui:{type:"range",min:.1,max:3,step:.05,label:"Scale",group:"Position"}},emitFrom:{default:{x:.5,y:.5},transform:wt,description:"Emission source point within the shape",ui:{type:"position",label:"Emit From",group:"Emission"}},direction:{default:0,description:"Emission direction (0 = up, 90 = right, 180 = down, 270 = left)",ui:{type:"range",min:0,max:360,step:1,label:"Direction",group:"Emission"}},speed:{default:10,description:"Emission velocity strength",ui:{type:"range",min:.1,max:30,step:.1,label:"Speed",group:"Emission"}},spread:{default:60,description:"Emission cone angle in degrees",ui:{type:"range",min:0,max:180,step:1,label:"Spread",group:"Emission"}},emitRadius:{default:.03,description:"Size of the emission area",ui:{type:"range",min:.01,max:.3,step:.01,label:"Emit Size",group:"Emission"}},intensity:{default:1,description:"Smoke emission density",ui:{type:"range",min:.1,max:1,step:.05,label:"Intensity",group:"Effect"}},dissipation:{default:.3,description:"How fast smoke fades over time",ui:{type:"range",min:.1,max:5,step:.1,label:"Dissipation",group:"Effect"}},detail:{default:25,description:"Fine-scale swirling detail",ui:{type:"range",min:0,max:50,step:1,label:"Detail",group:"Effect"}},gravity:{default:.5,description:"Downward gravitational pull on smoke \u2014 0 = weightless, negative values = smoke rises",ui:{type:"range",min:-2,max:2,step:.1,label:"Gravity",group:"Effect"}},colorDecay:{default:.4,description:"How quickly smoke shifts from Color A to Color B",ui:{type:"range",min:0,max:3,step:.1,label:"Color Decay",group:"Colors"}},mouseInfluence:{default:.1,description:"Strength of cursor influence",ui:{type:"range",min:0,max:2,step:.05,label:"Cursor Influence",group:"Interaction"}},mouseRadius:{default:.1,description:"Radius of cursor influence area",ui:{type:"range",min:.02,max:.5,step:.01,label:"Cursor Radius",group:"Interaction"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}},shape:{default:nve,description:"Serialized shape configuration (JSON)",ui:{type:"shape",label:"Shape",group:"Shape"}},shapeSdfUrl:{default:"",compileTime:!0,description:"URL to a pre-generated SDF .bin file"},shapeType:{default:"",compileTime:!0,description:"Active SDF shape type"}},computeNode:({uniforms:t,onCleanup:e,onBeforeRender:n,renderer:r})=>{let i=KI,o=Tn(i),a=Ut(i),l=Ut(i-1),s=i*i,u=(me,ke,k,P)=>me.add(Ut(k)).clamp(Ut(0),l).mul(a).add(ke.add(Ut(P)).clamp(Ut(0),l)),d=t.shapeSdfUrl.uniform.value,h=(()=>{let me=t.shape.uniform.value;try{return JSON.parse(me)}catch{return{type:"circleSDF",radius:.35}}})(),f;d?f=Ns(d,n,e):f=Os(t.shapeType.uniform.value||h.type||"circleSDF",h,t.shape,n);let g=br(s,"vec4"),y=br(s,"vec4"),_=br(s,"vec4"),b=br(s,"vec4"),S=br(s,"vec4"),w=br(s,"vec4"),v=new Nr(i,i);v.type=on;let E=Er(v);e(()=>{v.dispose()});let C=oe(.016),M=oe(.5),R=oe(.5),c=oe(0),m=oe(-50),x=oe(1),T=oe(0),N=oe(.5),B=oe(10),D=oe(.8),O=oe(.5),L=oe(30),V=oe(.5),Z=oe(1),q=oe(.5),ae=oe(.5),we=oe(1),Ae=oe(1),Ge=oe(128),et=oe(128),Ze=oe(0),he=oe(0),Me=oe(0),Pe=oe(900),We=qe(()=>{let me=Kt,ke=me.mod(o),k=me.div(o),P=ke.toFloat().add(p(.5)).div(p(i)),H=k.toFloat().add(p(.5)).div(p(i)),Q=I(P.sub(q).mul(Ae).div(we).add(p(.5)),H.sub(ae).div(we).add(p(.5))),se=f(Q).x,Te=se.lessThan(p(0)).select(p(1),p(0));w.element(me).assign(F(Te,se,p(0),p(0)))})().compute(s,[256]),Xe=qe(()=>{let me=Kt,ke=me.mod(o),k=me.div(o),P=w.element(me).x,H=ke.toFloat().add(p(.5)),Q=k.toFloat().add(p(.5)),se=H.sub(M),Te=Q.sub(R),Ie=se.mul(se).add(Te.mul(Te)),J=B.mul(B).max(p(1)),ee=Ie.negate().div(J).exp().mul(P),Se=_.element(me),Je=Se.x,Fe=D.mul(ee).mul(C).mul(p(8)),Qe=Je.add(Fe).min(p(1)),Nt=Fe.div(Qe.max(p(.001)));_.element(me).assign(F(Qe,Se.y.mul(p(1).sub(Nt.min(p(1)))),p(0),p(0)));let Ot=g.element(me),en=se.mul(x).add(Te.mul(T)).div(B.max(p(1))),ne=c.mul(c).add(m.mul(m)).max(p(1)),st=c.add(x.mul(en).mul(N).mul(ne.sqrt())),ze=m.add(T.mul(en).mul(N).mul(ne.sqrt())),Rt=ee.mul(C).mul(p(3)).min(p(1)),At=V.mul(Je).mul(C).mul(p(i*.08)).mul(P),dt=H.sub(Ge),qt=Q.sub(et),pn=dt.mul(dt).add(qt.mul(qt)).negate().div(Pe.max(p(1))).exp().mul(Me).mul(P);g.element(me).assign(F(Re(Ot.x,st,Rt).add(Ze.mul(pn)),Re(Ot.y,ze,Rt).add(At).add(he.mul(pn)),Ot.z,p(0)))})().compute(s,[256]),le=qe(()=>{let me=Kt,ke=me.mod(o).toInt(),k=me.div(o).toInt(),P=g.element(u(k,ke,0,-1)),H=g.element(u(k,ke,0,1)),Q=g.element(u(k,ke,-1,0)),se=g.element(u(k,ke,1,0)),Te=H.y.sub(P.y).sub(se.x.sub(Q.x)).mul(p(.5)),Ie=g.element(me);g.element(me).assign(F(Ie.x,Ie.y,Te,p(0)))})().compute(s,[256]),rt=qe(()=>{let me=Kt,ke=me.mod(o).toInt(),k=me.div(o).toInt(),P=g.element(u(k,ke,0,-1)).z.abs(),H=g.element(u(k,ke,0,1)).z.abs(),Q=g.element(u(k,ke,-1,0)).z.abs(),se=g.element(u(k,ke,1,0)).z.abs(),Te=g.element(me).z,Ie=H.sub(P).mul(p(.5)),J=se.sub(Q).mul(p(.5)),ee=Ie.mul(Ie).add(J.mul(J)).sqrt().max(p(1e-5)),Se=g.element(me);g.element(me).assign(F(Se.x.add(J.div(ee).mul(Te).mul(L).mul(C)),Se.y.add(Ie.div(ee).negate().mul(Te).mul(L).mul(C)),Se.z,p(0)))})().compute(s,[256]),De=qe(()=>{let me=Kt,ke=me.mod(o).toInt(),k=me.div(o).toInt(),P=ke.toFloat(),H=k.toFloat(),Q=w.element(me).x,se=g.element(me),Te=P.lessThan(p(.5)).or(w.element(u(k,ke,0,-1)).x.lessThan(p(.5))),Ie=P.greaterThan(p(i-1.5)).or(w.element(u(k,ke,0,1)).x.lessThan(p(.5))),J=H.lessThan(p(.5)).or(w.element(u(k,ke,-1,0)).x.lessThan(p(.5))),ee=H.greaterThan(p(i-1.5)).or(w.element(u(k,ke,1,0)).x.lessThan(p(.5))),Se=Te.select(se.x.negate(),g.element(u(k,ke,0,-1)).x),Je=Ie.select(se.x.negate(),g.element(u(k,ke,0,1)).x),Fe=J.select(se.y.negate(),g.element(u(k,ke,-1,0)).y),Qe=ee.select(se.y.negate(),g.element(u(k,ke,1,0)).y),Nt=Je.sub(Se).add(Qe.sub(Fe)).mul(p(.5)).mul(Q),Ot=S.element(me).x.mul(p(ive)).mul(Q);S.element(me).assign(F(Ot,Nt,p(0),p(0)))})().compute(s,[256]),K=qe(()=>{let me=Kt,ke=me.mod(o).toInt(),k=me.div(o).toInt(),P=S.element(u(k,ke,0,-1)).x,H=S.element(u(k,ke,0,1)).x,Q=S.element(u(k,ke,-1,0)).x,se=S.element(u(k,ke,1,0)).x,Te=S.element(me).y;S.element(me).assign(F(P.add(H).add(Q).add(se).sub(Te).mul(p(.25)),Te,p(0),p(0)))})().compute(s,[256]),be=qe(()=>{let me=Kt,ke=me.mod(o).toInt(),k=me.div(o).toInt(),P=S.element(u(k,ke,0,-1)).x,H=S.element(u(k,ke,0,1)).x,Q=S.element(u(k,ke,-1,0)).x,se=S.element(u(k,ke,1,0)).x,Te=g.element(me);g.element(me).assign(F(Te.x.sub(H.sub(P).mul(p(.5))),Te.y.sub(se.sub(Q).mul(p(.5))),Te.z,p(0)))})().compute(s,[256]),Ee=qe(()=>{let me=Kt,ke=me.mod(o),k=me.div(o),P=g.element(me),H=ke.toFloat().sub(P.x.mul(C)).clamp(p(0),p(i-1)),Q=k.toFloat().sub(P.y.mul(C)).clamp(p(0),p(i-1)),se=Zt(H).clamp(p(0),p(i-2)),Te=Zt(Q).clamp(p(0),p(i-2)),Ie=H.sub(se),J=Q.sub(Te),ee=se.toInt(),Se=Te.toInt(),Je=g.element(Se.mul(a).add(ee)),Fe=g.element(Se.mul(a).add(ee.add(Ut(1)))),Qe=g.element(Se.add(Ut(1)).mul(a).add(ee)),Nt=g.element(Se.add(Ut(1)).mul(a).add(ee.add(Ut(1)))),Ot=p(1).add(p(ove).mul(C)),en=w.element(me).x;y.element(me).assign(F(Re(Re(Je.x,Fe.x,Ie),Re(Qe.x,Nt.x,Ie),J).div(Ot).mul(en),Re(Re(Je.y,Fe.y,Ie),Re(Qe.y,Nt.y,Ie),J).div(Ot).mul(en),p(0),p(0)))})().compute(s,[256]),Be=qe(()=>{let me=y.element(Kt);g.element(Kt).assign(F(me.x,me.y,p(0),p(0)))})().compute(s,[256]),Ke=qe(()=>{let me=Kt,ke=me.mod(o),k=me.div(o),P=g.element(me),H=ke.toFloat().sub(P.x.mul(C)).clamp(p(0),p(i-1)),Q=k.toFloat().sub(P.y.mul(C)).clamp(p(0),p(i-1)),se=Zt(H).clamp(p(0),p(i-2)),Te=Zt(Q).clamp(p(0),p(i-2)),Ie=H.sub(se),J=Q.sub(Te),ee=se.toInt(),Se=Te.toInt(),Je=_.element(Se.mul(a).add(ee)),Fe=_.element(Se.mul(a).add(ee.add(Ut(1)))),Qe=_.element(Se.add(Ut(1)).mul(a).add(ee)),Nt=_.element(Se.add(Ut(1)).mul(a).add(ee.add(Ut(1)))),Ot=Re(Re(Je.x,Fe.x,Ie),Re(Qe.x,Nt.x,Ie),J),en=Re(Re(Je.y,Fe.y,Ie),Re(Qe.y,Nt.y,Ie),J),ne=p(1).add(O.mul(C)),st=w.element(me).x;b.element(me).assign(F(Ot.div(ne).max(p(0)).mul(st),en.add(C.mul(p(.4)).mul(Z)).min(p(1)),p(0),p(0)))})().compute(s,[256]),ct=qe(()=>{let me=b.element(Kt);_.element(Kt).assign(F(me.x,me.y,p(0),p(0)))})().compute(s,[256]),X=qe(()=>{let me=Kt,ke=me.mod(o),k=me.div(o),P=_.element(me);er(E,En(ke,k),F(P.x,P.y,p(0),p(0))).toWriteOnly()})().compute(s,[256]),at=Date.now(),nt=.5,Ct=.5;return{outputs:{smokeTexture:v},getComputeNodes:me=>{let ke=Date.now(),k=Math.min((ke-at)/1e3,.033);if(at=ke,k<.001)return null;let P=(dt,qt)=>{let pn=t[dt];if(!pn)return qt;if(typeof pn.getCpuValue=="function"){let Fn=pn.getCpuValue();return typeof Fn=="number"?Fn:qt}let rr=pn.uniform?.value;return typeof rr=="number"?rr:qt},H=P("speed",2),Q=P("direction",0)*Math.PI/180,se=Math.min(89*Math.PI/180,P("spread",60)*Math.PI/360),Te=t.center.uniform.value,Ie=typeof Te=="object"?Te.x??.5:.5,J=typeof Te=="object"?Te.y??.5:.5,ee=typeof window<"u"&&r?.domElement?r.domElement.width/Math.max(1,r.domElement.height):1;C.value=k,q.value=Ie,ae.value=1-J,we.value=P("scale",1),Ae.value=ee;let Se=t.emitFrom?.uniform?.value,Je=typeof Se=="object"?Se.x??.5:.5,Fe=typeof Se=="object"?Se.y??.5:.5;M.value=Je*i,R.value=(1-Fe)*i;let Qe=H*i*.15;c.value=Math.sin(Q)*Qe,m.value=-Math.cos(Q)*Qe,x.value=Math.cos(Q),T.value=Math.sin(Q),N.value=Math.tan(se),B.value=P("emitRadius",.03)*i,D.value=P("intensity",.8),O.value=P("dissipation",.5),L.value=P("detail",30),V.value=P("gravity",.5),Z.value=P("colorDecay",1);let Nt=P("mouseInfluence",.5),Ot=P("mouseRadius",.12),en=me?.pointer?.x??nt,ne=me?.pointer?.y??Ct,st=en-nt,ze=ne-Ct;nt=en,Ct=ne;let Rt=Math.sqrt(st*st+ze*ze),At=Ot*i;Pe.value=At*At,Rt>5e-4&&Nt>0?(Ge.value=en*i,et.value=ne*i,Ze.value=st*i*15*Nt,he.value=ze*i*15*Nt,Me.value=1):Me.value=0,r.compute(We),r.compute(Xe),r.compute(le),r.compute(rt),r.compute(De);for(let dt=0;dt<rve;dt++)r.compute(K);return r.compute(be),r.compute(Ee),r.compute(Be),r.compute(Ke),r.compute(ct),[X]}}},fragmentNode:({uniforms:t,onBeforeRender:e,onCleanup:n,computeOutputs:r})=>{let i=t.shapeSdfUrl.uniform.value,o=(()=>{let w=t.shape.uniform.value;try{return JSON.parse(w)}catch{return{type:"circleSDF",radius:.35}}})(),a;i?a=Ns(i,e,n):a=Os(t.shapeType.uniform.value||o.type||"circleSDF",o,t.shape,e);let l,s=r?.smokeTexture?KI:f6;if(r?.smokeTexture)l=vn(r.smokeTexture);else{let w=f6,v=w*w,E=new Float32Array(v*4),C=new ir(E,w,w,qn,on);C.magFilter=sn,C.minFilter=sn,C.needsUpdate=!0,l=vn(C);let M=(c,m)=>{let x=t[c];if(!x)return m;if(typeof x.getCpuValue=="function"){let N=x.getCpuValue();return typeof N=="number"?N:m}let T=x.uniform?.value;return typeof T=="number"?T:m},R=Date.now();e(()=>{let c=Date.now(),m=Math.min((c-R)/1e3,.033);if(R=c,m<.001)return;let x=M("intensity",.8),T=M("dissipation",.5),N=t.emitFrom?.uniform?.value,B=(typeof N=="object"?N.x??.5:.5)*w,D=(1-(typeof N=="object"?N.y??.5:.5))*w,O=M("emitRadius",.03)*w;for(let L=0;L<w;L++)for(let V=0;V<w;V++){let Z=L*w+V,q=V+.5-B,ae=L+.5-D,we=Math.exp(-(q*q+ae*ae)/Math.max(1,O*O));E[Z*4]=Math.max(0,(E[Z*4]+x*we*m*8)/(1+T*m)),E[Z*4+1]=Math.min(1,E[Z*4+1]+m*.4*M("colorDecay",1))}C.needsUpdate=!0}),n(()=>{C.dispose()})}let u=j,d=$.x.div($.y),h=I(t.center.uniform.x,t.center.uniform.y.oneMinus()),f=t.scale.uniform,g=I(u.x.sub(h.x).mul(d).div(f).add(p(.5)),u.y.sub(h.y).div(f).add(p(.5))),y=a(g).x.negate().mul(p(s*4)).clamp(p(0),p(1)),_,b;if(r?.smokeTexture){let w=p(1/KI),v=l.sample(j),E=l.sample(j.add(I(w,p(0)))),C=l.sample(j.add(I(p(0),w))),M=l.sample(j.add(I(w.negate(),p(0)))),R=l.sample(j.add(I(p(0),w.negate())));_=v.x.mul(p(.5)).add(E.x.mul(p(.125))).add(C.x.mul(p(.125))).add(M.x.mul(p(.125))).add(R.x.mul(p(.125))),b=v.y.mul(p(.5)).add(E.y.mul(p(.125))).add(C.y.mul(p(.125))).add(M.y.mul(p(.125))).add(R.y.mul(p(.125)))}else{let w=l.sample(j);_=w.x,b=w.y}let S=Lt(t.colorA.uniform,t.colorB.uniform,b,t.colorSpace.uniform.value);return F(S.x,S.y,S.z,S.w.mul(_).mul(y))}}});var $l,m6=z(()=>{"use strict";ut();$l={name:"Solarize",category:"Adjustments",description:"Inverts tones above a luminance threshold \u2014 a classic darkroom and photo effect",requiresChild:!0,props:{threshold:{default:.5,description:"Luminance level above which colors are inverted. Pixels brighter than this threshold get flipped.",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Threshold",group:"Effect"}},strength:{default:1,description:"Blend between original (0) and fully solarized (1)",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Strength",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return console.error("You must pass a child component into the Solarize shader."),F(0);let n=t.threshold.uniform,r=t.strength.uniform,i=kt(e.rgb,_e(.299,.587,.114)),o=_e(1).sub(e.rgb),a=i.greaterThan(n).select(o,e.rgb);return F(Re(e.rgb,a,r),e.a)}}});var Yl,p6=z(()=>{"use strict";Dt();Yl={name:"SolidColor",category:"Textures",description:"Fill the canvas with a single solid color",props:{color:{default:"#5b18ca",transform:Ce,description:"The solid color to display",ui:{type:"color",label:"Color",group:"Colors"}}},fragmentNode:({uniforms:t})=>t.color.uniform}});var Zl,g6=z(()=>{"use strict";Dt();Wn();ut();Zl={name:"Spherize",category:"Distortions",description:"Map content onto a 3D sphere surface with depth distortion",requiresRTT:!0,requiresChild:!0,props:{radius:{default:1,description:"Radius of the sphere (1 = half viewport height)",ui:{type:["range","map"],min:.1,max:3,step:.1,label:"Radius",group:"Effect"}},depth:{default:1,description:"How much the sphere bulges toward viewer (0 = flat, higher = more bulge)",ui:{type:["range","map"],min:0,max:3,step:.1,label:"Depth",group:"Effect"}},center:{default:{x:.5,y:.5},transform:wt,description:"The center point of the sphere",ui:{type:"position",label:"Center",group:"Position"}},lightPosition:{default:{x:.3,y:.3},transform:wt,description:"Position of the specular light source",ui:{type:"position",label:"Light Position",group:"Position"}},lightIntensity:{default:.5,description:"Intensity of the rim light (0 = off)",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Light Intensity",group:"Effect"}},lightSoftness:{default:.5,description:"Softness of the rim light falloff (0 = hard edge, 1 = soft glow)",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Light Softness",group:"Effect"}},lightColor:{default:"#ffffff",transform:Ce,description:"Color of the specular highlight",ui:{type:"color",label:"Light Color",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j,o=$.x.div($.y),a=I(t.center.uniform.x,t.center.uniform.y.oneMinus()),l=t.radius.uniform,s=I(i.x.sub(a.x).mul(o),i.y.sub(a.y)).mul(2).div(l),u=s.x.mul(s.x).add(s.y.mul(s.y)),d=p(1).sub(Oe(p(.98),p(1),u)),h=Sn(Pt(p(0),p(1).sub(u))),f=p(1).add(h.mul(t.depth.uniform)),g=s.div(f).mul(l).div(2),y=I(g.x.div(o).add(a.x),g.y.add(a.y)),_=Vt(r.sample(y)),b=I(t.lightPosition.uniform.x,t.lightPosition.uniform.y.oneMinus()),S=t.lightIntensity.uniform,w=t.lightSoftness.uniform,v=_e(t.lightColor.uniform.x,t.lightColor.uniform.y,t.lightColor.uniform.z),E=wo(_e(s.x,s.y,h)),C=_e(0,0,1),M=p(1).add(p(4).mul(p(1).sub(w))),R=Bt(p(1).sub(Pt(kt(E,C),p(0))),M),c=I(b.x.sub(p(.5)).mul(2),b.y.sub(p(.5)).mul(2)),m=wo(I(E.x,E.y).add(I(1e-4,1e-4))),x=wo(c.add(I(1e-4,1e-4))),T=Bt(Pt(p(0),kt(m,x)),p(2)),N=R.mul(T).mul(S).mul(p(2));return F(_.x.add(v.x.mul(N)),_.y.add(v.y.mul(N)),_.z.add(v.z.mul(N)),_.w.mul(d))}}});var Kl,y6=z(()=>{"use strict";Dt();On();gr();ut();Kl={name:"Spiral",category:"Textures",description:"Rotating spiral pattern with animated movement",props:{colorA:{default:"#000000",transform:Ce,description:"Background color",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#ffffff",transform:Ce,description:"Spiral stroke color",ui:{type:"color",label:"Color B",group:"Colors"}},strokeWidth:{default:.5,description:"Thickness of spiral stroke",ui:{type:["range","map"],min:0,max:2,step:.1,label:"Stroke Width",group:"Effect"}},strokeFalloff:{default:0,description:"Stroke losing width further from center",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Stroke Falloff",group:"Effect"}},softness:{default:0,description:"Color transition sharpness (0 = hard edge, 1 = smooth fade)",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Softness",group:"Effect"}},speed:{default:1,description:"Animation speed (negative values reverse direction)",ui:{type:"range",min:-3,max:3,step:.1,label:"Speed",group:"Animation"}},center:{default:{x:.5,y:.5},transform:wt,description:"The center point of the spiral",ui:{type:"position",label:"Center",group:"Position"}},scale:{default:1,description:"Scale factor for spiral bands (higher = more bands, lower = fewer bands)",ui:{type:["range","map"],min:.1,max:5,step:.1,label:"Scale",group:"Effect"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=$.x.div($.y),i=I(n.x.mul(r),n.y),o=I(e.center.uniform.x.mul(r),e.center.uniform.y.oneMinus()),a=i.sub(o),l=fn(t,e.speed),s=Vn(a),u=s,d=Qn(a.y,a.x).sub(l),h=p(6.283185307),f=d.div(h),g=u.mul(e.scale.uniform).add(f),y=Et(St(g).sub(.5)).mul(2),_=Tt(e.strokeWidth.uniform,e.strokeFalloff.uniform.mul(.005),1),b=Tt(e.strokeFalloff.uniform,0,1).mul(s).oneMinus(),S=_.mul(b),w=$r(g),v=Re(p(4).sub(Oe(.05,.4,e.strokeWidth.uniform.mul(2)).mul(Oe(.05,.4,e.strokeWidth.uniform.oneMinus().mul(2))).mul(3)).mul(w),$r(y),Tt(w,0,1)),E=Oe(S.sub(v).sub(e.softness.uniform),S.add(v).add(e.softness.uniform),y),C=Lt(e.colorA.uniform,e.colorB.uniform,E,e.colorSpace.uniform.value);return F(C.rgb,C.a)}}});var sve,Jl,v6=z(()=>{"use strict";Dt();On();eo();ut();sve=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,Jl={name:"Star",category:"Shapes",description:"Classic star polygon with straight sides and sharp pointed tips",props:{color:{default:"#ffffff",transform:Ce,description:"Fill color of the star",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the star",ui:{type:"position",label:"Center",group:"Position"}},radius:{default:.4,description:"Outer tip radius \u2014 distance from center to the pointed tips",ui:{type:"range",min:0,max:1,step:.01,label:"Radius",group:"Shape"}},sides:{default:5,description:"Number of points on the star",ui:{type:"range",min:3,max:12,step:1,label:"Points",group:"Shape"}},innerRatio:{default:.4,description:"Inner vertex radius as a ratio of outer radius (0.382 = golden-ratio 5-star)",ui:{type:"range",min:.1,max:.9,step:.01,label:"Inner Ratio",group:"Shape"}},rotation:{default:0,description:"Rotation in degrees",ui:{type:"range",min:0,max:360,step:1,label:"Rotation",group:"Shape"}},softness:{default:0,description:"Edge softness for antialiasing",ui:{type:"range",min:0,max:.1,step:.001,label:"Softness",group:"Effect"}},strokeThickness:{default:0,description:"Stroke thickness. Zero means no stroke.",ui:{type:"range",min:0,max:.2,step:.005,label:"Stroke Thickness",group:"Stroke"}},strokeColor:{default:"#000000",transform:Ce,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:sve,description:"Position of the stroke relative to the shape edge",ui:{type:"select",options:[{label:"Outside",value:"outside"},{label:"Center",value:"center"},{label:"Inside",value:"inside"}],label:"Stroke Position",group:"Stroke"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:Gt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=r.x.sub(i.x),a=r.y.sub(i.y),l=t.rotation.uniform.mul(p(Math.PI/180)),s=Ye(l),u=fe(l),d=LI(o.mul(s).add(a.mul(u)),a.mul(s).sub(o.mul(u)),t.radius.uniform,t.sides.uniform,t.innerRatio.uniform),h=t.softness.uniform,f=t.strokeThickness.uniform,g=t.strokePosition.uniform,y=f.greaterThan(p(0)),_=g.greaterThanEqual(p(.5)).and(g.lessThan(p(1.5))),b=g.greaterThanEqual(p(1.5)),S=f.mul(.5),w=b.select(f.negate(),_.select(S.negate(),p(0))),v=b.select(p(0),_.select(S,f)),E=Oe(v.sub(h),v,d).oneMinus(),C=y.select(Oe(w.sub(h),w,d),p(0)),M=Lt(F(t.color.uniform.rgb,t.color.uniform.a),F(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),C,t.colorSpace.uniform.value);return F(M.xyz,M.w.mul(E))}}});var Ql,x6=z(()=>{"use strict";Dt();gr();ut();Ql={name:"Strands",category:"Textures",description:"Procedural wavy strands with layered animation",requiresRTT:!1,requiresChild:!1,props:{speed:{default:.5,description:"Overall animation speed",ui:{type:"range",min:0,max:1,step:.1,label:"Speed",group:"Animation"}},amplitude:{default:1,description:"Wave height amplitude",ui:{type:["range","map"],min:0,max:5,step:.1,label:"Amplitude",group:"Effect"}},frequency:{default:1,description:"Wave frequency",ui:{type:["range","map"],min:0,max:5,step:.1,label:"Frequency",group:"Effect"}},lineCount:{default:12,description:"Number of wave lines",ui:{type:"range",min:4,max:32,step:1,label:"Line Count",group:"Effect"}},lineWidth:{default:.1,description:"Width of wave lines",ui:{type:["range","map"],min:0,max:1,step:.05,label:"Line Width",group:"Effect"}},waveColor:{default:"#f1c907",transform:Ce,description:"Color of the waves",ui:{type:"color",label:"Wave Color",group:"Colors"}},pinEdges:{default:!0,description:"Pin waves at edges (fade effect)",ui:{type:"checkbox",label:"Pin Edges",group:"Effect"}},start:{default:{x:0,y:.5},transform:wt,description:"Starting point of the waves",ui:{type:"position",label:"Start",group:"Position"}},end:{default:{x:1,y:.5},transform:wt,description:"Ending point of the waves",ui:{type:"position",label:"End",group:"Position"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=fn(t,e.speed),i=qe(([o])=>Ye(o).add(Ye(o.mul(1.2).add(1.6))).add(Ye(o.mul(1.4).add(1.5))).div(3));return qe(([o])=>{let a=$.x.div($.y),l=I(e.start.uniform.x.mul(a),e.start.uniform.y.oneMinus()),s=I(e.end.uniform.x.mul(a),e.end.uniform.y.oneMinus()),u=I(o.x.mul(a),o.y),d=s.sub(l),h=d.length(),f=d.div(h),g=I(f.y.negate(),f.x),y=u.sub(l),_=y.dot(f).div(h),b=y.dot(g),S=_.mul(10),w=b.mul(10),v=e.pinEdges.uniform.select(Oe(p(0),p(.1),_).mul(Oe(p(.9),p(1),_).oneMinus()),p(1)),E=e.pinEdges.uniform.select(Ye(_.mul(6.28)).mul(.5).add(.5).oneMinus(),p(1)),C=Ye(_.mul(6.28)).mul(.5).add(.5).oneMinus(),M=F(0,0,0,0).toVar(),R=e.lineCount.uniform;for(let c=0;c<32;c++){let m=p(c).lessThan(R),x=p(c),T=x.div(R),N=p(.5),B=p(1.33),D=r.mul(B),O=x.add(S.mul(N)),L=i(O.add(D)).mul(.5).add(.5),V=Re(p(.01),e.lineWidth.uniform,L.mul(E)).mul(.5),Z=p(.6),q=p(2),ae=i(O.add(D.mul(T.add(1)))).mul(Re(Z,q,E)).mul(e.amplitude.uniform),we=i(S.mul(e.frequency.uniform).add(r)).mul(E).mul(e.amplitude.uniform).add(ae),Ae=Et(w.sub(we)),Ge=p(.01),et=Oe(V.sub(Ge),V.add(Ge),Ae).oneMinus(),Ze=F(e.waveColor.uniform.r,e.waveColor.uniform.g,e.waveColor.uniform.b,et).mul(L);M.assign(Pt(M,m.select(Ze,F(0,0,0,0))))}return M.mul(F(1,1,1,C.mul(v)))})(n)}}});var eu,b6=z(()=>{"use strict";gi();Dt();Wn();ut();eu={name:"Stretch",category:"Distortions",description:"Stretch content towards a direction from a center point",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:wt,description:"The center point of the stretch effect",ui:{type:"position",label:"Center",group:"Position"}},strength:{default:1,description:"The intensity of the stretch effect",ui:{type:["range","map"],min:0,max:1,step:.05,label:"Strength",group:"Effect"}},angle:{default:0,description:"The direction of the stretch in degrees",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},falloff:{default:0,description:"Controls the sharpness of the transition (0 = sharp edge, 1 = gradual transition)",ui:{type:["range","map"],min:0,max:1,step:.05,label:"Falloff",group:"Effect"}},edges:{default:"stretch",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=$.x.div($.y),o=I(j.x.mul(i),j.y),a=I(t.center.uniform.x.mul(i),t.center.uniform.y.oneMinus()),l=o.sub(a),s=t.angle.uniform.mul(Math.PI/180),u=I(Ye(s),fe(s)),d=l.dot(u),h=u.mul(d),f=l.sub(h),g=t.falloff.uniform,y=Re(p(.001),p(75),g),_=Tt(d.div(y),p(0),p(1)),b=t.strength.uniform.mul(p(100)),S=p(1).add(b.mul(_)),w=d.div(S),v=u.mul(w).add(f),E=a.add(v),C=I(E.x.div(i),E.y);return Vt(Ln(C,r.sample(C),r,t.edges.uniform.value))}}});var tu,_6=z(()=>{"use strict";Dt();On();gr();ut();tu={name:"Stripes",category:"Textures",description:"Alternating colored stripes with animation",props:{colorA:{default:"#000000",transform:Ce,description:"First stripe color",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#ffffff",transform:Ce,description:"Second stripe color",ui:{type:"color",label:"Color B",group:"Colors"}},angle:{default:45,transform:sr,description:"Angle of stripes in degrees",ui:{type:["range","map"],min:-180,max:180,step:1,label:"Angle",group:"Effect"}},density:{default:5,description:"Number of stripe pairs visible",ui:{type:["range","map"],min:1,max:30,step:1,label:"Density",group:"Effect"}},balance:{default:.5,description:"Ratio of the two colors",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Balance",group:"Effect"}},softness:{default:0,description:"Edge softness",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Softness",group:"Effect"}},speed:{default:.2,description:"Animation speed",ui:{type:"range",min:-1,max:1,step:.1,label:"Speed",group:"Animation"}},offset:{default:0,description:"Phase offset for pattern positioning",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Offset",group:"Animation"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=$.x.div($.y),i=I(n.x.mul(r),n.y),o=e.angle.uniform.mul(.0174533),a=Ye(o),l=fe(o),s=i.x.mul(a).add(i.y.mul(l)),u=fn(t,e.speed),d=s.mul(e.density.uniform).add(u).add(e.offset.uniform),h=St(d),f=$r(d),g=e.balance.uniform,y=e.softness.uniform,_=Oe(g.sub(y).sub(f),g.add(y).add(f),h),b=Lt(e.colorA.uniform,e.colorB.uniform,_,e.colorSpace.uniform.value);return F(b.rgb,b.a)}}});var nu,S6=z(()=>{"use strict";Dt();gr();ut();nu={name:"StudioBackground",category:"Textures",description:"Multi-light studio background with ambient motion.",props:{color:{default:"#d8dbec",transform:Ce,description:"Base studio surface color",ui:{type:"color",label:"Surface Color",group:"Colors"}},keyColor:{default:"#d5e4ea",transform:Ce,description:"Color of the overhead key light",ui:{type:"color",label:"Key Color",group:"Key Light"}},keyIntensity:{default:40,description:"Intensity of the key light",ui:{type:["range","map"],min:0,max:100,step:1,label:"Intensity",group:"Key Light"}},keySoftness:{default:50,description:"How diffuse the key light is",ui:{type:["range","map"],min:0,max:100,step:1,label:"Softness",group:"Key Light"}},fillColor:{default:"#d5e4ea",transform:Ce,description:"Color of the side fill lights",ui:{type:"color",label:"Fill Color",group:"Fill Lights"}},fillIntensity:{default:10,description:"Intensity of the fill lights",ui:{type:["range","map"],min:0,max:100,step:1,label:"Intensity",group:"Fill Lights"}},fillSoftness:{default:70,description:"How diffuse the fill lights are",ui:{type:["range","map"],min:0,max:100,step:1,label:"Softness",group:"Fill Lights"}},fillAngle:{default:70,description:"How far apart the fill lights are from center",ui:{type:["range","map"],min:0,max:100,step:1,label:"Spread",group:"Fill Lights"}},backColor:{default:"#c8d4e8",transform:Ce,description:"Color of the upward back wash",ui:{type:"color",label:"Back Color",group:"Back Light"}},backIntensity:{default:20,description:"Intensity of the back wash",ui:{type:["range","map"],min:0,max:100,step:1,label:"Intensity",group:"Back Light"}},backSoftness:{default:80,description:"How diffuse the back wash is",ui:{type:["range","map"],min:0,max:100,step:1,label:"Softness",group:"Back Light"}},brightness:{default:20,description:"Overall ambient light level",ui:{type:["range","map"],min:0,max:100,step:1,label:"Ambient",group:"Lighting"}},vignette:{default:0,description:"Edge darkening",ui:{type:["range","map"],min:0,max:100,step:1,label:"Vignette",group:"Lighting"}},center:{default:{x:.5,y:.8},transform:wt,description:"Where the spotlight meets the floor",ui:{type:"position",label:"Stage Center",group:"Scene"}},lightTarget:{default:100,description:"How far toward the floor vs wall the spotlights aim",ui:{type:["range","map"],min:0,max:100,step:1,label:"Light Depth",group:"Scene"}},wallCurvature:{default:10,description:"How rounded the cove is",ui:{type:["range","map"],min:0,max:100,step:1,label:"Wall Curvature",group:"Scene"}},ambientIntensity:{default:50,description:"Intensity of drifting ambient lights",ui:{type:["range","map"],min:0,max:100,step:1,label:"Ambient Detail",group:"Environment"}},ambientSpeed:{default:2,description:"Drift speed",ui:{type:"range",min:-5,max:5,step:.1,label:"Speed",group:"Environment"}},seed:{default:0,description:"Seed for ambient pattern",ui:{type:"range",min:0,max:100,step:1,label:"Seed",group:"Environment"}}},fragmentNode:t=>{let{uniforms:e}=t,n=e.color.uniform,r=e.brightness.uniform.mul(.02),i=e.keyColor.uniform,o=e.keyIntensity.uniform.mul(.015),a=e.fillColor.uniform,l=e.fillIntensity.uniform.mul(.015),s=e.fillAngle.uniform.mul(.005),u=e.backColor.uniform,d=e.backIntensity.uniform.mul(.015),h=e.center.uniform.x,f=e.center.uniform.y.oneMinus(),g=e.lightTarget.uniform.mul(.01),y=e.wallCurvature.uniform.mul(.01),_=e.vignette.uniform.mul(.025),b=e.ambientIntensity.uniform.mul(.012),S=e.seed.uniform,w=$.x.div($.y),v=fn(t,e.ambientSpeed),E=Re(p(5),p(.8),e.keySoftness.uniform.mul(.01)),C=Re(p(5),p(.8),e.fillSoftness.uniform.mul(.01)),M=Re(p(5),p(.8),e.backSoftness.uniform.mul(.01)),R=m=>St(fe(m.mul(12.9898)).mul(43758.5453)),c=Array.from({length:4},(m,x)=>{let T=S.add(p(x*73.1)),N=R(T.add(311)).mul(.12).add(.1);return{radiusX:R(T).mul(.5).add(.2),radiusY:R(T.add(37)).mul(.25).add(.1),freqX:R(T.add(91)).mul(.3).add(.1),freqY:R(T.add(143)).mul(.25).add(.08),phaseX:R(T.add(200)).mul(Math.PI*2),phaseY:R(T.add(257)).mul(Math.PI*2),sizeSq:N.mul(N)}});return qe(()=>{let m=j,x=Re(p(.015),p(.15),y),T=Oe(f.sub(x),f.add(x),m.y),N=p(1).sub(T),B=Tt(m.y.div(f),0,1),D=B.mul(B),O=Tt(m.y.sub(f).div(p(1).sub(f)),0,1),L=m.x.sub(h).mul(w),V=Re(p(.05),p(.45),D),Z=p(1).sub(B).mul(1.2),q=Z.mul(Z),ae=f.add(p(1).sub(f).mul(.3)),we=m.y.sub(ae).mul(4),Ae=we.mul(we),Ge=Re(Re(p(.2),p(.4),B),Re(p(.38),p(.18),O),T).mul(r),et=m.y.sub(f).div(x.add(.001)),Ze=ki(et.mul(et).mul(-.5)).mul(y).mul(r).mul(.1),he=Ge.add(Ze),Me=_e(he,he,he).toVar(),Pe=p(1).sub(g).mul(1.4).add(.3),We=g.mul(1.4).add(.3),Xe=(se,Te)=>{let Ie=Re(se,h,D),J=m.x.sub(Ie).mul(w).div(V),ee=ki(J.mul(J).add(q).mul(-1).mul(Te)).mul(N).mul(Pe),Se=Re(h,se,p(.25)),Je=m.x.sub(Se).mul(w).mul(1.4),Fe=ki(Je.mul(Je).add(Ae).mul(-1).mul(Te.mul(1.5))).mul(T).mul(We);return ee.add(Fe)},le=Xe(h,E).mul(o);Me.assign(Me.add(i.rgb.mul(le)));let rt=Xe(h.sub(s),C).mul(l),De=Xe(h.add(s),C).mul(l);Me.assign(Me.add(a.rgb.mul(rt.add(De))));let K=Re(p(1),f,p(.15)),be=L.mul(.5),Ee=m.y.sub(K).mul(4),Be=ki(be.mul(be).add(Ee.mul(Ee)).mul(-1).mul(M)).mul(T),Ke=L.mul(.6),ct=f.sub(m.y).mul(3),X=ki(Ke.mul(Ke).add(ct.mul(ct)).mul(-1).mul(M.mul(.8))).mul(N).mul(D),at=Be.add(X).mul(d);Me.assign(Me.add(u.rgb.mul(at)));let nt=L.mul(.7),Ct=m.y.sub(f).add(.02).mul(10),me=ki(nt.mul(nt).add(Ct.mul(Ct)).mul(-2.5)).mul(o.mul(.12)).mul(N);Me.assign(Me.add(_e(me,me,me)));let ke=b.mul(.25);for(let se=0;se<4;se++){let Te=c[se],Ie=h.add(fe(v.mul(Te.freqX).add(Te.phaseX)).mul(Te.radiusX)),J=f.sub(.2).add(Ye(v.mul(Te.freqY).add(Te.phaseY)).mul(Te.radiusY)),ee=m.x.sub(Ie).mul(w),Se=m.y.sub(J),Je=ki(ee.mul(ee).add(Se.mul(Se)).div(Te.sizeSq).mul(-.5)).mul(ke);Me.assign(Me.add(_e(Je,Je,Je)))}let k=m.x.sub(.5).mul(w),P=m.y.sub(.5),H=k.mul(k).add(P.mul(P)),Q=Tt(p(1).sub(H.mul(_)),0,1);return Me.assign(Tt(Me,0,3)),F(n.rgb.mul(Me).mul(Q).clamp(0,1),p(1))})()}}});var ru,w6=z(()=>{"use strict";Dt();gr();ut();ru={name:"SunBurst",category:"Textures",description:"Radial sunburst rays emanating from a center point",props:{color:{default:"#ffdd88",transform:Ce,description:"Ray color",ui:{type:"color",label:"Color",group:"Colors"}},background:{default:"#000000",transform:Ce,description:"Background color",ui:{type:"color",label:"Background",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center point of the sunburst",ui:{type:"position",label:"Center",group:"Position"}},rayCount:{default:12,description:"Number of rays",ui:{type:"range",min:3,max:64,step:1,label:"Ray Count",group:"Effect"}},softness:{default:.3,description:"Softness of ray edges",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Softness",group:"Effect"}},radius:{default:.8,description:"How far the rays extend from the center",ui:{type:["range","map"],min:0,max:1.2,step:.01,label:"Radius",group:"Effect"}},feather:{default:.5,description:"How gradually the rays fade at their outer edge",ui:{type:["range","map"],min:0,max:5,step:.01,label:"Feather",group:"Effect"}},speed:{default:.2,description:"Rotation speed \u2014 positive values rotate clockwise",ui:{type:"range",min:-2,max:2,step:.1,label:"Speed",group:"Animation"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=$.x.div($.y),i=e.center.uniform.x,o=e.center.uniform.y.oneMinus(),a=n.x.mul(r).sub(i.mul(r)),l=n.y.sub(o),s=Sn(a.mul(a).add(l.mul(l))),u=Qn(l,a),d=fn(t,e.speed),h=e.rayCount.uniform,f=Bt(fe(u.mul(h).sub(d)).mul(.5).add(.5),p(1).div(e.softness.uniform.add(p(.05))).mul(p(.3))),g=e.radius.uniform,y=e.feather.uniform,_=g.mul(p(1).sub(y)),b=p(1).sub(Oe(_,g,s)),S=f.mul(b),w=e.color.uniform,v=e.background.uniform;return F(Re(v.rgb,w.rgb,S),Re(v.a,w.a,S))}}});var iu,M6=z(()=>{"use strict";Dt();On();gr();ut();iu={name:"Swirl",category:"Textures",description:"Flowing swirl pattern with multi-layered noise",props:{colorA:{default:"#1275d8",description:"Primary gradient color",transform:Ce,ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#e19136",description:"Secondary gradient color",transform:Ce,ui:{type:"color",label:"Color B",group:"Colors"}},speed:{default:1,description:"Flow animation speed",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Animation"}},detail:{default:1,description:"Level of detail and intricacy in the swirl patterns",ui:{type:["range","map"],min:0,max:5,step:.1,label:"Detail",group:"Effect"}},blend:{default:50,description:"Skew color balance toward A (lower values) or B (higher values)",ui:{type:["range","map"],min:0,max:100,step:1,label:"Blend",group:"Effect"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=fn(t,e.speed),r=e.detail.uniform,i=e.colorSpace.uniform.value;return qe(()=>{let o=r,a=I(j.x.add(fe(j.y.mul(o.mul(1.7)).add(n.mul(.8))).mul(.12).add(Ye(j.x.mul(o.mul(.9)).sub(n.mul(.5))).mul(.05))),j.y.add(Ye(j.x.mul(o.mul(1.3)).sub(n.mul(.6))).mul(.12).add(fe(j.y.mul(o.mul(1.1)).add(n.mul(.7))).mul(.05)))).toVar(),l=fe(a.x.mul(o.mul(2.1)).add(a.y.mul(o.mul(1.8))).add(n.mul(.4))),s=r.mul(2.1),u=I(a.x.add(Ye(a.y.mul(s.mul(2.7)).sub(n.mul(.45))).mul(.07).add(fe(a.x.mul(s.mul(1.9)).add(n.mul(.6))).mul(.04))),a.y.add(fe(a.x.mul(s.mul(2.3)).add(n.mul(.65))).mul(.07).add(Ye(a.y.mul(s.mul(1.6)).sub(n.mul(.4))).mul(.04)))).toVar(),d=Ye(u.x.mul(s.mul(1.4)).sub(u.y.mul(s.mul(1.9))).add(n.mul(.35))),h=r.mul(3.7),f=I(u.x.add(fe(u.y.mul(h.mul(1.8)).add(n.mul(.85))).mul(.04).add(Ye(u.x.mul(h.mul(1.3)).sub(n.mul(.55))).mul(.025)).add(fe(u.x.add(u.y).mul(h.mul(.7)).add(n.mul(.9))).mul(.02))),u.y.add(Ye(u.x.mul(h.mul(1.6)).sub(n.mul(.75))).mul(.04).add(fe(u.y.mul(h.mul(1.1)).add(n.mul(.5))).mul(.025)).add(Ye(u.x.add(u.y).mul(h.mul(.8)).sub(n.mul(.95))).mul(.02)))).toVar(),g=fe(f.x.mul(h.mul(1.1)).add(f.y.mul(h.mul(1.5))).sub(n.mul(.55))),y=l.mul(.45).add(d.mul(.35)).add(g.mul(.2)),_=e.blend.uniform.sub(50).mul(.006),b=Oe(.3,.7,y.mul(.5).add(.5).add(_)),S=Lt(e.colorA.uniform,e.colorB.uniform,b,i),w=fe(n.mul(2.5).add(y.mul(8))).mul(.015).add(1),v=S.mul(w);return F(v.rgb,v.a)})()}}});var ou,T6=z(()=>{"use strict";Dt();Wn();sh();ut();ou={name:"TiltShift",category:"Blurs",description:"Selective focus blur mimicking tilt-shift photography",requiresRTT:!0,requiresChild:!0,props:{intensity:{default:50,description:"Maximum blur intensity at edges",ui:{type:["range","map"],min:0,max:100,step:1,label:"Intensity",group:"Effect"}},width:{default:.3,description:"Width of the sharp focus area",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Width",group:"Effect"}},falloff:{default:.3,description:"Distance over which blur transitions to full strength",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Falloff",group:"Effect"}},angle:{default:0,transform:sr,description:"Rotation angle of the focus line (in degrees)",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center point of the focus line",ui:{type:"position",label:"Center",group:"Position"}}},computeNode:({childNode:t,onCleanup:e,dimensions:n,renderer:r,uniforms:i,onResize:o})=>{if(!t||i.angle.mapComputeInfo||i.width.mapComputeInfo||i.falloff.mapComputeInfo)return null;let a=It(t);e(()=>{a?.renderTarget?.dispose&&a.renderTarget.dispose()});let l=r?.getPixelRatio?.()??1,s=Math.round(n.width*l),u=Math.round(n.height*l),d=Zd(a,s,u,e,14),{computeNodes:h,outputTexture:f,blurMapWriteNode:g,computeWidth:y,computeHeight:_}=d,b=oe(0),S=oe(.5),w=oe(.5),v=oe(.15),E=oe(.3),C=oe(1),M=oe(s),R=oe(u),c=Tn(y),m=Tn(_);function x(O){return O.getCpuValue?.()??(typeof O.uniform.value=="number"?O.uniform.value:null)}function T(){let O=x(i.angle);O!==null&&(b.value=O);let L=i.center.uniform.value?.x??i.center.uniform.x?.value;typeof L=="number"&&(S.value=L);let V=i.center.uniform.value?.y??i.center.uniform.y?.value;typeof V=="number"&&(w.value=V);let Z=x(i.width);Z!==null&&(v.value=Z*.5);let q=x(i.falloff);q!==null&&(E.value=q),C.value=n.width/n.height}let N=i.intensity.mapComputeInfo;if(N){let{sourceTexture:O,channel:L,inputMin:V,inputMax:Z,outputMin:q,outputMax:ae,curve:we}=N,Ae=qe(()=>{let Ge=Kt,et=Ge.mod(c),Ze=Ge.div(c);Pn(Ze.lessThan(m),()=>{let he=et.toFloat().add(p(.5)).div(p(y)),Me=Ze.toFloat().add(p(.5)).div(p(_)),Pe=b.mul(p(Math.PI/180)),We=I(Pe.sin().negate(),Pe.cos()),Xe=I(S,p(1).sub(w)),le=I(he,Me).sub(Xe),rt=Et(kt(I(le.x.mul(C),le.y),We)),De=Oe(v,v.add(E),rt),K=Pi(O,En(he.mul(M).round().toInt().clamp(Ut(0),Ut(M.sub(1))).toUint(),Me.mul(R).round().toInt().clamp(Ut(0),Ut(R.sub(1))).toUint()),Ut(0)),be;L==="alpha"?be=K.a:L==="alphaInverted"?be=K.a.oneMinus():L==="luminanceInverted"?be=kt(K.rgb,_e(.2126,.7152,.0722)).oneMinus():be=kt(K.rgb,_e(.2126,.7152,.0722));let Ee=Z.sub(V).max(p(1e-4)),Be=Re(q,ae,Bt(Tt(be.sub(V).div(Ee),p(0),p(1)),Bt(p(2),we.negate().mul(p(2))))).mul(p(.36)),Ke=De.mul(Be);er(g,En(et,Ze),F(Ke,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:Ge,height:et})=>{let Ze=Math.round(Ge*l),he=Math.round(et*l);M.value=Ze,R.value=he,d.setInputDimensions(Ze,he)}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>(T(),[Ae,...h])}}let B=oe(18),D=qe(()=>{let O=Kt,L=O.mod(c),V=O.div(c);Pn(V.lessThan(m),()=>{let Z=L.toFloat().add(p(.5)).div(p(y)),q=V.toFloat().add(p(.5)).div(p(_)),ae=b.mul(p(Math.PI/180)),we=I(ae.sin().negate(),ae.cos()),Ae=I(S,p(1).sub(w)),Ge=I(Z,q).sub(Ae),et=Et(kt(I(Ge.x.mul(C),Ge.y),we)),Ze=Oe(v,v.add(E),et).mul(B);er(g,En(L,V),F(Ze,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:O,height:L})=>{let V=Math.round(O*l),Z=Math.round(L*l);M.value=V,R.value=Z,d.setInputDimensions(V,Z)}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>{T();let O=x(i.intensity);return O!==null&&(B.value=O*.36),[D,...h]}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n,computeOutputs:r})=>{if(!e)return F(0,0,0,0);if(r?.blurredTexture){let E=r.childTexture.sample(j),C=vn(r.blurredTexture).sample(j),M=$.x.div($.y),R=qr(t.angle.uniform),c=I(R.sin().negate(),R.cos()),m=I(t.center.uniform[0],t.center.uniform[1].oneMinus()),x=j.sub(m),T=Et(kt(I(x.x.mul(M),x.y),c)),N=t.width.uniform.mul(.5),B=Oe(N,N.add(t.falloff.uniform),T),D=t.intensity.uniform.mul(p(0)).add(t.width.uniform.mul(p(0))).add(t.falloff.uniform.mul(p(0))).add(t.angle.uniform.mul(p(0))),O=Re(E,C,B);return Vt(F(O.rgb.add(D),O.a))}let i=It(e);n(()=>{i?.renderTarget?.dispose&&i.renderTarget.dispose()});let o=$.x.div($.y),a=qr(t.angle.uniform),l=Ye(a),s=I(fe(a).negate(),l),u=I(t.center.uniform[0],t.center.uniform[1].oneMinus()),d=j.sub(u),h=Et(kt(I(d.x.mul(o),d.y),s)),f=t.width.uniform.mul(.5),g=t.falloff.uniform,y=Oe(f,f.add(g),h),_=t.intensity.uniform.mul(.06),b=y.mul(_),S=[.056,.135,.278,.487,.726,.923,1,.923,.726,.487,.278,.135,.056],w=6.21,v=It(qe(()=>{let E=j,C=I(1).div($),M=F(0).toVar();for(let R=-6;R<=6;R++){let c=p(S[R+6]/w),m=I(p(R),p(0)).mul(b).mul(C),x=E.add(m),T=i.sample(x).mul(c);M.assign(M.add(T))}return M})());return n(()=>{v?.renderTarget?.dispose&&v.renderTarget.dispose()}),qe(()=>{let E=j,C=I(1).div($),M=F(0).toVar();for(let c=-6;c<=6;c++){let m=p(S[c+6]/w),x=I(p(0),p(c)).mul(b).mul(C),T=E.add(x),N=v.sample(T).mul(m);M.assign(M.add(N))}let R=M;return Vt(Re(i.sample(E),R,y))})()}}});var su,C6=z(()=>{"use strict";Dt();ut();su={name:"Tint",category:"Adjustments",description:"Apply a color tint to the image",requiresChild:!0,props:{color:{default:"#ff8800",transform:Ce,description:"Tint color",ui:{type:"color",label:"Tint Color",group:"Colors"}},amount:{default:.5,description:"Tint amount (0 = no tint, 1 = full tint)",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Amount",group:"Effect"}},preserveLuminosity:{default:!0,compileTime:!0,description:"Preserve original brightness",transform:t=>t?1:0,ui:{type:"checkbox",label:"Preserve Luminosity",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return console.error("You must pass a child component into the Tint shader."),F(0);let n=t.color.uniform,r=t.amount.uniform,i=_e(e.r,e.g,e.b),o=Re(i,n.rgb,r),a=t.preserveLuminosity.uniform.value===1,l;if(a){let s=_e(.299,.587,.114),u=kt(i,s),d=kt(o,s);l=o.mul(u.div(Pt(d,1e-4)))}else l=o;return F(l,e.a)}}});var ave,au,E6=z(()=>{"use strict";Dt();On();eo();ut();ave=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,au={name:"Trapezoid",category:"Shapes",description:"Trapezoid with adjustable top and bottom widths and height",props:{color:{default:"#ffffff",transform:Ce,description:"Fill color of the trapezoid",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the trapezoid",ui:{type:"position",label:"Center",group:"Position"}},bottomWidth:{default:.35,description:"Half-width of the bottom edge",ui:{type:"range",min:.01,max:1,step:.01,label:"Bottom Width",group:"Shape"}},topWidth:{default:.2,description:"Half-width of the top edge",ui:{type:"range",min:.01,max:1,step:.01,label:"Top Width",group:"Shape"}},height:{default:.25,description:"Half-height of the trapezoid",ui:{type:"range",min:.01,max:1,step:.01,label:"Height",group:"Shape"}},rotation:{default:0,description:"Rotation in degrees",ui:{type:"range",min:0,max:360,step:1,label:"Rotation",group:"Shape"}},softness:{default:0,description:"Edge softness for antialiasing",ui:{type:"range",min:0,max:.1,step:.001,label:"Softness",group:"Effect"}},strokeThickness:{default:0,description:"Stroke thickness. Zero means no stroke.",ui:{type:"range",min:0,max:.2,step:.005,label:"Stroke Thickness",group:"Stroke"}},strokeColor:{default:"#000000",transform:Ce,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:ave,description:"Position of the stroke relative to the shape edge",ui:{type:"select",options:[{label:"Outside",value:"outside"},{label:"Center",value:"center"},{label:"Inside",value:"inside"}],label:"Stroke Position",group:"Stroke"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:Gt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=r.x.sub(i.x),a=r.y.sub(i.y),l=t.rotation.uniform.mul(p(Math.PI/180)),s=Ye(l),u=fe(l),d=WI(o.mul(s).add(a.mul(u)),a.mul(s).sub(o.mul(u)),t.topWidth.uniform,t.bottomWidth.uniform,t.height.uniform),h=t.softness.uniform,f=t.strokeThickness.uniform,g=t.strokePosition.uniform,y=f.greaterThan(p(0)),_=g.greaterThanEqual(p(.5)).and(g.lessThan(p(1.5))),b=g.greaterThanEqual(p(1.5)),S=f.mul(.5),w=b.select(f.negate(),_.select(S.negate(),p(0))),v=b.select(p(0),_.select(S,f)),E=Oe(v.sub(h),v,d).oneMinus(),C=y.select(Oe(w.sub(h),w,d),p(0)),M=Lt(F(t.color.uniform.rgb,t.color.uniform.a),F(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),C,t.colorSpace.uniform.value);return F(M.xyz,M.w.mul(E))}}});var cu,R6=z(()=>{"use strict";Dt();On();ut();cu={name:"Tritone",category:"Adjustments",description:"Map colors to three tones: shadows, midtones, highlights",requiresChild:!0,props:{colorA:{default:"#ce1bea",transform:Ce,description:"First color (used for shadows/darkest areas)",ui:{type:"color",label:"Color A (Shadows)",group:"Colors"}},colorB:{default:"#2fff00",transform:Ce,description:"Second color (used for midtones)",ui:{type:"color",label:"Color B (Midtones)",group:"Colors"}},colorC:{default:"#ffff00",transform:Ce,description:"Third color (used for highlights/brightest areas)",ui:{type:"color",label:"Color C (Highlights)",group:"Colors"}},blendMid:{default:.5,description:"Midpoint position between the three colors",ui:{type:["range","map"],min:0,max:1,step:.1,label:"Midpoint",group:"Effect"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return F(0,0,0,0);let n=kt(_e(e.r,e.g,e.b),_e(.299,.587,.114)),r=Oe(t.blendMid.uniform.sub(.25),t.blendMid.uniform,n),i=t.colorSpace.uniform.value,o=Lt(t.colorA.uniform,t.colorB.uniform,r,i),a=Oe(t.blendMid.uniform,t.blendMid.uniform.add(.25),n);return F(Lt(o,Lt(t.colorB.uniform,t.colorC.uniform,a,i),Oe(t.blendMid.uniform.sub(.1),t.blendMid.uniform.add(.1),n),i).rgb,e.a)}}});var cve,lu,A6=z(()=>{"use strict";Dt();On();ut();cve=qe(([t])=>St(fe(kt(t,I(127.1,311.7))).mul(p(43758.5453)))),lu={name:"Truchet",category:"Textures",description:"Quarter-circle arc tiles that connect to form organic, maze-like flowing curves",props:{colorA:{default:"#000000",transform:Ce,description:"Background color between the arcs",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#ffffff",transform:Ce,description:"Arc line color",ui:{type:"color",label:"Color B",group:"Colors"}},cells:{default:10,description:"Number of tiles across the shortest canvas edge",ui:{type:["range","map"],min:2,max:40,step:1,label:"Cells",group:"Effect"}},thickness:{default:2,description:"Thickness of the arc lines",ui:{type:["range","map"],min:0,max:20,step:.1,label:"Thickness",group:"Effect"}},seed:{default:0,description:"Random seed \u2014 changes which tiles flip, producing a different maze pattern",ui:{type:["range","map"],min:0,max:100,step:1,label:"Seed",group:"Effect"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y).mul(t.cells.uniform),i=Zt(r),o=St(r),a=cve(i.add(t.seed.uniform)).greaterThan(p(.5)),l=a.select(p(1),p(0)),s=a.select(p(0),p(0)),u=a.select(p(0),p(1)),d=a.select(p(1),p(1)),h=_n(Et(Vn(o.sub(I(l,s))).sub(p(.5))),Et(Vn(o.sub(I(u,d))).sub(p(.5)))),f=t.thickness.uniform.mul(p(.005)),g=$r(r.x).mul(p(.5)),y=Oe(f.add(g),f,h).mul(yn(p(1e-4),f));return Lt(t.colorA.uniform,t.colorB.uniform,y,t.colorSpace.uniform.value)}}});var uu,P6=z(()=>{"use strict";gi();Dt();Wn();ut();uu={name:"Twirl",category:"Distortions",description:"Rotate and twist content around a center point",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:wt,description:"The center point of the twirl effect",ui:{type:"position",label:"Center",group:"Position"}},intensity:{default:1,description:"The strength of the twirl effect",ui:{type:["range","map"],min:-5,max:5,step:.1,label:"Intensity",group:"Effect"}},edges:{default:"stretch",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return console.error("You must pass a child component into the Twirl shader."),F(0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j,o=$.x.div($.y),a=I(t.center.uniform.x,t.center.uniform.y.oneMinus()),l=i.sub(a),s=I(l.x.mul(o),l.y),u=t.intensity.uniform.mul(Vn(s)),d=Ye(u),h=fe(u),f=d.mul(s.x).sub(h.mul(s.y)),g=h.mul(s.x).add(d.mul(s.y)),y=I(f.div(o).add(a.x),g.add(a.y));return Vt(Ln(y,r.sample(y),r,t.edges.uniform.value))}}});var lve,du,I6=z(()=>{"use strict";Dt();On();eo();ut();lve=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,du={name:"Vesica",category:"Shapes",description:"Vesica piscis (lens shape) formed by the intersection of two overlapping circles",props:{color:{default:"#ffffff",transform:Ce,description:"Fill color of the vesica",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center position of the vesica",ui:{type:"position",label:"Center",group:"Position"}},radius:{default:.35,description:"Radius of the two overlapping circles",ui:{type:"range",min:.05,max:1,step:.01,label:"Size",group:"Shape"}},spread:{default:.5,description:"Circle separation \u2014 0 = full circle overlap, 1 = infinitely thin lens",ui:{type:"range",min:.05,max:.95,step:.01,label:"Spread",group:"Shape"}},rotation:{default:0,description:"Rotation in degrees",ui:{type:"range",min:0,max:360,step:1,label:"Rotation",group:"Shape"}},softness:{default:0,description:"Edge softness for antialiasing",ui:{type:"range",min:0,max:.1,step:.001,label:"Softness",group:"Effect"}},strokeThickness:{default:0,description:"Stroke thickness. Zero means no stroke.",ui:{type:"range",min:0,max:.2,step:.005,label:"Stroke Thickness",group:"Stroke"}},strokeColor:{default:"#000000",transform:Ce,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:lve,description:"Position of the stroke relative to the shape edge",ui:{type:"select",options:[{label:"Outside",value:"outside"},{label:"Center",value:"center"},{label:"Inside",value:"inside"}],label:"Stroke Position",group:"Stroke"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:Gt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=r.x.sub(i.x),a=r.y.sub(i.y),l=t.rotation.uniform.mul(p(Math.PI/180)),s=Ye(l),u=fe(l),d=GI(o.mul(s).add(a.mul(u)),a.mul(s).sub(o.mul(u)),t.radius.uniform,t.spread.uniform),h=t.softness.uniform,f=t.strokeThickness.uniform,g=t.strokePosition.uniform,y=f.greaterThan(p(0)),_=g.greaterThanEqual(p(.5)).and(g.lessThan(p(1.5))),b=g.greaterThanEqual(p(1.5)),S=f.mul(.5),w=b.select(f.negate(),_.select(S.negate(),p(0))),v=b.select(p(0),_.select(S,f)),E=Oe(v.sub(h),v,d).oneMinus(),C=y.select(Oe(w.sub(h),w,d),p(0)),M=Lt(F(t.color.uniform.rgb,t.color.uniform.a),F(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),C,t.colorSpace.uniform.value);return F(M.xyz,M.w.mul(E))}}});var JI,uve,fu,N6=z(()=>{"use strict";Wn();ut();JI=6,uve=487,fu={name:"VHS",category:"Stylize",description:"Analog VHS tape with intermittent tape damage, chroma bleed, and per-scanline noise",requiresRTT:!0,requiresChild:!0,props:{wobble:{default:1,description:"Overall amount of tape damage \u2014 waves, creases, and head-switching noise. Bursts on and off organically over time.",ui:{type:["range","map"],min:0,max:5,step:.01,label:"Wobble",group:"Effect"}},scanlineNoise:{default:.6,description:"Per-scanline fine chroma/luma jitter. Adds the classic horizontal-streak detail.",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Scanline Noise",group:"Effect"}},smear:{default:.2,description:"Horizontal chroma smear (color bleed) amount. Positive trails colour to the right (classic VHS), negative trails it to the left.",ui:{type:["range","map"],min:-2,max:2,step:.01,label:"Smear",group:"Effect"}},speed:{default:1,description:"Animation speed of the tape effects.",ui:{type:"range",min:.1,max:3,step:.1,label:"Speed",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=t.wobble.uniform,o=t.scanlineNoise.uniform,a=t.smear.uniform,l=t.speed.uniform,s=Ca.mul(l),u=Ae=>St(fe(kt(Ae,I(12.9898,78.233))).mul(43758.5453)),d=Ae=>{let Ge=Zt(Ae),et=St(Ae),Ze=et.mul(et).mul(et.mul(-2).add(3)),he=u(Ge),Me=u(Ge.add(I(1,0))),Pe=u(Ge.add(I(0,1))),We=u(Ge.add(I(1,1)));return Re(Re(he,Me,Ze.x),Re(Pe,We,Ze.x),Ze.y)},h=Oe(p(.45),p(.8),d(I(s.mul(.4),p(0)))),f=Zt(j.y.mul(uve)),g=Ae=>St(fe(f.mul(12.9898).add(s.add(Ae).mul(78.233))).mul(43758.5453)).sub(.5).mul(2),y=p(.25).add(h.mul(.75)),_=g(0).mul(o).mul(.008).mul(y),b=g(69.42).mul(o).mul(.004).mul(y),S=d(I(j.y.mul(3),s.mul(.8))).sub(.5),w=d(I(j.y.mul(30),s.mul(6))).sub(.5),v=S.mul(.008).add(w.mul(.002)).mul(i),E=Oe(p(.92),p(.99),fe(j.y.mul(8).sub(s.mul(3.77)))),C=Oe(p(.3),p(1),d(I(j.y.mul(4.77),s))),M=E.mul(C).mul(i).mul(-.018),R=Oe(p(.06),p(0),j.y),c=d(I(j.y.mul(60),s.mul(14))).sub(.5),m=R.mul(c).mul(i).mul(.09),x=R.mul(i).mul(h).mul(.02),T=v.add(M).add(m),N=I(j.x.add(T).add(b),j.y.add(x)),B=I(j.x.add(T).add(_),j.y.add(x)),D=r.sample(N),O=D.rgb.dot(_e(.299,.587,.114)),L=a.mul(.0075),V=p(0),Z=p(0);for(let Ae=0;Ae<JI;Ae++){let Ge=p(-Ae).mul(L),et=r.sample(I(B.x.add(Ge),B.y)),Ze=et.rgb.dot(_e(.596,-.274,-.322)),he=et.rgb.dot(_e(.211,-.523,.312)),Me=Ae/(JI-1)*(2/JI);V=V.add(Ze.mul(Me)),Z=Z.add(he.mul(Me))}let q=_e(O,V,Z),ae=_e(q.x.add(q.y.mul(.956)).add(q.z.mul(.621)),q.x.sub(q.y.mul(.272)).sub(q.z.mul(.647)),q.x.sub(q.y.mul(1.106)).add(q.z.mul(1.703))),we=p(1).add(Ye(pr(s,6.2831853).mul(2).add(j.y.mul(.5))).mul(.015).mul(i));return Vt(F(Tt(ae.mul(we),_e(0),_e(1)),D.a))}}});var hu,O6=z(()=>{"use strict";ut();hu={name:"Vibrance",category:"Adjustments",description:"Selective saturation adjustment protecting skin tones",requiresChild:!0,props:{intensity:{default:0,description:"The intensity of the vibrance effect",ui:{type:["range","map"],min:-2,max:2,step:.1,label:"Intensity",group:"Appearance"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return console.error("You must pass a child component into the Vibrance shader."),F(0);let n=e.rgb,r=t.intensity.uniform,i=dn(n.r,dn(n.g,n.b)).div(3),o=Pt(n.r,Pt(n.g,n.b)),a=o.sub(i).mul(r).mul(-3);return F(Re(n,_e(o,o,o),a),e.a)}}});function Jd(){return QI===null&&(QI=typeof navigator<"u"&&/Firefox/.test(navigator.userAgent)),QI}var QI,eN=z(()=>{"use strict";QI=null});var mu,U6=z(()=>{"use strict";eN();Li();ut();mu={name:"VideoTexture",category:"Textures",description:"Display a video with customizable playback and object-fit modes",props:{url:{default:"https://shaders.com/sample.mp4",description:"Upload a video or provide a URL",ui:{type:"video-upload",label:"Video",group:"Media"}},objectFit:{default:"cover",description:"How the video should be sized within the viewport",transform:t=>({cover:0,contain:1,fill:2,"scale-down":3,none:4})[t]??0,compileTime:!0,ui:{type:"select",options:[{label:"Cover",value:"cover"},{label:"Contain",value:"contain"},{label:"Fill",value:"fill"},{label:"Scale Down",value:"scale-down"},{label:"None",value:"none"}],label:"Object Fit",group:"Appearance"}},loop:{default:!0,description:"Loop the video playback",ui:{type:"checkbox",label:"Loop",group:"Playback"}}},fragmentNode:({uniforms:t,onCleanup:e,onBeforeRender:n})=>{let r=j,i=null,o="",a=!1,l=!1,s=oe(1),u=oe(640),d=oe(480),h=null,f=null,g;if(Jd())h=document.createElement("canvas"),h.width=640,h.height=480,f=h.getContext("2d"),g=new ps(h);else{let c=document.createElement("video");c.playsInline=!0,c.muted=!0,g=new Xa(c)}g.colorSpace=lr;let y=vn(g),_=async c=>{if(!(!c||c.trim()===""||a||l)){a=!0;try{let m=document.createElement("video");if(m.src=c,m.playsInline=!0,m.crossOrigin="anonymous",m.muted=!0,m.loop=t.loop?.uniform?.value??!0,await new Promise((N,B)=>{m.onloadedmetadata=()=>{N()},m.onerror=()=>{B(new Error("Failed to load video"))},setTimeout(()=>{B(new Error("Video load timeout"))},1e4)}),l){m.src="";return}let x=m.videoWidth||640,T=m.videoHeight||480;s.value=x/T,u.value=x,d.value=T,i&&(i.pause(),i.src="",i=null),i=m,o=c;try{await m.play()}catch(N){console.warn("[VideoTexture] Autoplay failed (browser policy):",N)}g.dispose(),Jd()?(h.width=x,h.height=T,g=new ps(h)):g=new Xa(m),g.colorSpace=lr,y.value=g,a=!1}catch(m){console.error("[VideoTexture] Failed to load video:",m),a=!1}}};setTimeout(()=>{let c=t?.url?.uniform?.value??"";c&&c.trim()!==""&&_(c)},0),n(()=>{let c=t?.url?.uniform?.value??"";if(c!==o&&!a&&_(c),i){let m=t.loop?.uniform?.value??!0;i.loop!==m&&(i.loop=m),Jd()&&!i.paused&&i.readyState>=2&&(f.drawImage(i,0,0,h.width,h.height),g.needsUpdate=!0)}}),e(()=>{l=!0,i&&(i.pause(),i.src="",i=null),g.dispose(),o=""});let b=r,S=$.x.div($.y),w=t.objectFit.uniform.value,v;switch(w){case 1:{let c=_n(S.div(s),p(1));v=I(s.div(S).mul(c),c);break}case 2:v=I(1,1);break;case 3:{let c=_n(_n(S.div(s),p(1)),_n($.x.div(u),$.y.div(d)));v=I(s.div(S).mul(c),c);break}case 4:{let c=_n($.x.div(u),$.y.div(d));v=I(s.div(S).mul(c),c);break}default:{let c=Pt(S.div(s),p(1));v=I(s.div(S).mul(c),c);break}}let E=b.sub(I(.5)).div(v).add(I(.5)),C=I(E.x,p(1).sub(E.y)),M=y.sample(C),R=uo(uo(C.x.lessThan(0),C.x.greaterThan(1)),uo(C.y.lessThan(0),C.y.greaterThan(1)));return F(M.rgb,fo(R,p(0),M.a))}}});var pu,D6=z(()=>{"use strict";Dt();ut();pu={name:"Vignette",category:"Stylize",description:"Darkens or tints the edges of the frame, drawing attention toward the center",requiresChild:!0,props:{color:{default:"#000000",transform:Ce,description:"Color of the vignette at the edges",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center of the clear area where the vignette begins",ui:{type:"position",label:"Center",group:"Position"}},radius:{default:.5,description:"Distance from center where the vignette begins to fade in",ui:{type:["range","map"],min:0,max:1.5,step:.01,label:"Radius",group:"Effect"}},falloff:{default:.5,description:"Width of the transition zone from clear to full vignette",ui:{type:["range","map"],min:.01,max:1.5,step:.01,label:"Falloff",group:"Effect"}},intensity:{default:1,description:"Strength of the vignette effect",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Intensity",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return console.error("You must pass a child component into the Vignette shader."),F(0);let n=j,r=$.x.div($.y),i=I(n.x.mul(r),n.y),o=I(t.center.uniform.x.mul(r),t.center.uniform.y.oneMinus()),a=Vn(i.sub(o)),l=Oe(t.radius.uniform,t.radius.uniform.add(t.falloff.uniform),a);return F(Re(e.rgb,t.color.uniform.rgb,l.mul(t.intensity.uniform)),e.a)}}});var dve,gu,F6=z(()=>{"use strict";Dt();On();gr();ut();dve=qe(([t])=>St(fe(I(kt(t,I(127.1,311.7)),kt(t,I(269.5,183.3)))).mul(p(43758.5453)))),gu={name:"Voronoi",category:"Textures",description:"Cellular pattern where each pixel is colored by its distance to the nearest of many scattered points",props:{colorA:{default:"#3186cf",transform:Ce,description:"Color near each cell's center point",ui:{type:"color",label:"Color A (Center)",group:"Colors"}},colorB:{default:"#fc02dd",transform:Ce,description:"Color at cell boundaries, far from any center point",ui:{type:"color",label:"Color B (Edge)",group:"Colors"}},colorBorder:{default:"#000000",transform:Ce,description:"Color of the cell boundary lines",ui:{type:"color",label:"Border Color",group:"Colors"}},scale:{default:6,description:"Number of cells across the canvas",ui:{type:["range","map"],min:1,max:20,step:.5,label:"Scale",group:"Effect"}},speed:{default:.5,description:"Animation speed \u2014 how fast the cell points drift",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Animation"}},seed:{default:0,description:"Random seed \u2014 shifts the cell pattern without changing the overall structure",ui:{type:["range","map"],min:0,max:100,step:1,label:"Seed",group:"Effect"}},edgeIntensity:{default:.5,description:"Controls how much of the cell interior is filled by the edge color. Low = center color dominates with a sharp boundary. High = edge color spreads further into the cell.",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Edge Intensity",group:"Effect"}},edgeSoftness:{default:.05,description:"Width of the cell boundary lines.",ui:{type:["range","map"],min:0,max:.4,step:.005,label:"Edge Softness",group:"Effect"}},colorSpace:{default:"oklch",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=e.colorA.uniform,r=e.colorB.uniform,i=e.colorBorder.uniform,o=e.colorSpace.uniform.value,a=e.scale.uniform,l=e.seed.uniform,s=fn(t,e.speed),u=$.x.div($.y),d=I(j.x.mul(u),j.y).mul(a);return qe(([h,f,g,y,_,b])=>{let S=Zt(h),w=St(h),v=p(10),E=p(10);for(let x=-1;x<=1;x++)for(let T=-1;T<=1;T++){let N=I(p(T),p(x)),B=dve(S.add(N).add(g)),D=B.x.add(fe(f.add(B.x.mul(p(6.28)))).mul(p(.15))).clamp(p(.05),p(.95)),O=B.y.add(Ye(f.mul(p(.7)).add(B.y.mul(p(6.28)))).mul(p(.15))).clamp(p(.05),p(.95)),L=Vn(w.sub(N.add(I(D,O)))),V=L.lessThan(v);E=V.select(v,L.lessThan(E).select(L,E)),v=V.select(L,v)}let C=v.add(E).max(p(1e-4)),M=Lt(n,r,Bt(v.mul(p(2)).div(C).clamp(p(0),p(1)),p(4).sub(y.mul(p(3)))).clamp(p(0),p(1)),o),R=_.mul(a).div(p(6)),c=E.sub(v).div(C),m=Oe(p(0),R.add(p(.001)),c);return F(Re(b.rgb,M.rgb,m),M.a)})(d,s,l,e.edgeIntensity.uniform,e.edgeSoftness.uniform,i)}}});var yu,L6=z(()=>{"use strict";gi();Dt();Wn();gr();ut();yu={name:"WaveDistortion",category:"Distortions",description:"Wave-based distortion with multiple waveform types",requiresRTT:!0,requiresChild:!0,props:{strength:{default:.3,description:"Distortion intensity",ui:{type:["range","map"],min:0,max:1,step:.05,label:"Strength",group:"Effect"}},frequency:{default:1,description:"Number of bends/waves",ui:{type:["range","map"],min:.1,max:10,step:.1,label:"Frequency",group:"Effect"}},speed:{default:1,description:"Animation speed",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Animation"}},angle:{default:0,description:"Direction of wave distortion in degrees",ui:{type:["range","map"],min:0,max:360,step:1,label:"Angle",group:"Effect"}},waveType:{default:"sine",description:"Shape of the distortion wave",compileTime:!0,transform:t=>({sine:0,triangle:1,square:2,sawtooth:3,bounce:4})[t]??0,ui:{type:"select",options:[{label:"Sine",value:"sine"},{label:"Triangle",value:"triangle"},{label:"Square",value:"square"},{label:"Sawtooth",value:"sawtooth"},{label:"Bounce",value:"bounce"}],label:"Wave Type",group:"Effect"}},edges:{default:"stretch",description:"How to handle edges when distortion pushes content out of bounds",transform:Bn,compileTime:!0,ui:{type:"select",options:[{label:"Stretch",value:"stretch"},{label:"Transparent",value:"transparent"},{label:"Mirror",value:"mirror"},{label:"Wrap",value:"wrap"}],label:"Edges",group:"Effect"}}},fragmentNode:t=>{let{uniforms:e,childNode:n,onCleanup:r,onBeforeRender:i}=t;if(!n)return F(0,0,0,0);let o=j,a=$.x.div($.y),l=fn(t,e.speed).mul(.5),s,u;if(e.angle.uniform.isUniformNode){let v=oe(1),E=oe(0);i(()=>{let C=e.angle.uniform.value*Math.PI/180;v.value=Math.cos(C),E.value=Math.sin(C)}),s=v,u=E}else{let v=e.angle.uniform.mul(ci).div(180);s=Ye(v),u=fe(v)}let d=o.sub(I(.5,.5)),h=I(d.x.mul(a),d.y),f=I(h.x.mul(s).sub(h.y.mul(u)),h.x.mul(u).add(h.y.mul(s))).y.add(.5).mul(e.frequency.uniform).mul(ci.mul(2)).add(l),g;switch(e.waveType.uniform.value){case 1:g=Et(St(f.div(ci.mul(2))).mul(2).sub(1)).mul(2).sub(1);break;case 2:{let v=St(f.div(ci.mul(2)));g=yn(p(.5),v).mul(2).sub(1);break}case 3:g=St(f.div(ci.mul(2))).mul(2).sub(1);break;case 4:g=Et(fe(f));break;default:g=fe(f)}let y=g.mul(e.strength.uniform).mul(.5),_=y.mul(s).div(a),b=y.mul(u),S=I(o.x.add(_),o.y.add(b)),w=It(n);return r(()=>{w?.renderTarget?.dispose&&w.renderTarget.dispose()}),Vt(Ln(S,w.sample(S),w,e.edges.uniform.value))}}});var vu,k6=z(()=>{"use strict";Dt();ut();vu={name:"Weave",category:"Textures",description:"Interlaced textile weave pattern with two thread colors going over and under each other",props:{colorA:{default:"#c4c4c4",transform:Ce,description:"Horizontal thread color",ui:{type:"color",label:"X Color",group:"Colors"}},colorB:{default:"#4d4d4d",transform:Ce,description:"Vertical thread color",ui:{type:"color",label:"Y Color",group:"Colors"}},cells:{default:10,description:"Number of threads across the shortest canvas edge",ui:{type:["range","map"],min:2,max:40,step:1,label:"Cells",group:"Effect"}},gap:{default:.25,description:"Gap between threads (0 = no gap, 0.5 = maximum gap)",ui:{type:["range","map"],min:0,max:.45,step:.01,label:"Gap",group:"Effect"}},rotation:{default:0,description:"Rotation of the weave pattern in degrees",ui:{type:["range","map"],min:0,max:360,step:1,label:"Rotation",group:"Effect"}}},fragmentNode:({uniforms:t})=>{let e=j,n=$.x.div($.y),r=I(e.x.mul(n),e.y),i=t.rotation.uniform.mul(p(Math.PI/180)),o=Ye(i),a=fe(i),l=I(n.mul(p(.5)),p(.5)),s=r.sub(l),u=I(s.x.mul(o).sub(s.y.mul(a)),s.x.mul(a).add(s.y.mul(o))).add(l).mul(t.cells.uniform),d=Zt(u),h=St(u),f=t.gap.uniform,g=$r(u.x).mul(p(.5)),y=Oe(f,f.add(g),h.y).mul(Oe(f,f.add(g),p(1).sub(h.y))),_=Oe(f,f.add(g),h.x).mul(Oe(f,f.add(g),p(1).sub(h.x))),b=pr(d.x.add(d.y),p(2)),S=y.mul(_),w=y.sub(S.mul(b)).clamp(p(0),p(1)),v=_.sub(S.mul(p(1).sub(b))).clamp(p(0),p(1)),E=t.colorA.uniform,C=t.colorB.uniform,M=E.a.mul(w),R=C.a.mul(v),c=M.add(R).clamp(p(0),p(1)),m=M.add(R).max(p(.001));return F(E.x.mul(M).add(C.x.mul(R)).div(m),E.y.mul(M).add(C.y.mul(R)).div(m),E.z.mul(M).add(C.z.mul(R)).div(m),c)}}});var xu,B6=z(()=>{"use strict";eN();Li();ut();xu={name:"WebcamTexture",category:"Textures",description:"Display a live webcam feed with customizable object-fit modes",props:{objectFit:{default:"cover",description:"How the webcam feed should be sized within the viewport",transform:t=>({cover:0,contain:1,fill:2,"scale-down":3,none:4})[t]??0,compileTime:!0,ui:{type:"select",options:[{label:"Cover",value:"cover"},{label:"Contain",value:"contain"},{label:"Fill",value:"fill"},{label:"Scale Down",value:"scale-down"},{label:"None",value:"none"}],label:"Object Fit",group:"Appearance"}},mirror:{default:!0,description:"Mirror the webcam feed horizontally (selfie mode)",ui:{type:"checkbox",label:"Mirror",group:"Effect"}}},fragmentNode:({uniforms:t,onCleanup:e,onBeforeRender:n})=>{let r=j,i=null,o=null,a=!1,l=!1,s=oe(1),u=oe(640),d=oe(480),h=null,f=null,g;if(Jd())h=document.createElement("canvas"),h.width=640,h.height=480,f=h.getContext("2d"),g=new ps(h);else{let m=document.createElement("video");m.playsInline=!0,m.muted=!0,g=new Xa(m)}g.colorSpace=lr;let y=vn(g);(async()=>{if(!(a||l))try{if(i=await navigator.mediaDevices.getUserMedia({video:{width:{ideal:1280},height:{ideal:720},facingMode:"user"},audio:!1}),l){i.getTracks().forEach(T=>T.stop()),i=null;return}if(o=document.createElement("video"),o.srcObject=i,o.playsInline=!0,o.muted=!0,await new Promise((T,N)=>{if(!o)return N(new Error("Video element not created"));o.onloadedmetadata=()=>{T()},o.onerror=()=>{N(new Error("Failed to load video metadata"))}}),l||(await o.play(),l))return;let m=o.videoWidth||640,x=o.videoHeight||480;s.value=m/x,u.value=m,d.value=x,g.dispose(),Jd()?(h.width=m,h.height=x,g=new ps(h)):g=new Xa(o),g.colorSpace=lr,y.value=g,a=!0,console.log(`[WebcamTexture] Webcam started: ${m}x${x}`)}catch(m){m instanceof DOMException?m.name==="NotAllowedError"?console.error("[WebcamTexture] Camera permission denied by user"):m.name==="NotFoundError"?console.error("[WebcamTexture] No camera found on this device"):m.name==="NotReadableError"?console.error("[WebcamTexture] Camera is already in use by another application"):console.error("[WebcamTexture] Camera error:",m.message):console.error("[WebcamTexture] Failed to start webcam:",m)}})(),n(()=>{Jd()&&o&&a&&!o.paused&&o.readyState>=2&&(f.drawImage(o,0,0,h.width,h.height),g.needsUpdate=!0)}),e(()=>{l=!0,i&&(i.getTracks().forEach(m=>m.stop()),i=null),o&&(o.srcObject=null,o=null),g.dispose(),a=!1});let b=r,S=$.x.div($.y),w=t.objectFit.uniform.value,v;switch(w){case 1:{let m=_n(S.div(s),p(1));v=I(s.div(S).mul(m),m);break}case 2:v=I(1,1);break;case 3:{let m=_n(_n(S.div(s),p(1)),_n($.x.div(u),$.y.div(d)));v=I(s.div(S).mul(m),m);break}case 4:{let m=_n($.x.div(u),$.y.div(d));v=I(s.div(S).mul(m),m);break}default:{let m=Pt(S.div(s),p(1));v=I(s.div(S).mul(m),m);break}}let E=b.sub(I(.5)).div(v).add(I(.5)),C=t.mirror.uniform,M=I(fo(C,p(1).sub(E.x),E.x),p(1).sub(E.y)),R=y.sample(M),c=uo(uo(M.x.lessThan(0),M.x.greaterThan(1)),uo(M.y.lessThan(0),M.y.greaterThan(1)));return F(R.rgb,fo(c,p(0),R.a))}}});var z6,V6,G6,H6,W6,fve,j6,hve,mve,pve,bu,q6=z(()=>{"use strict";Dt();On();gr();ut();z6=p(Math.PI*2),V6=p(.15),G6=p(.5),H6=p(.05),W6=p(.95),fve=p(.7),j6=p(10),hve=qe(([t])=>St(fe(I(kt(t,I(127.1,311.7)),kt(t,I(269.5,183.3)))).mul(p(43758.5453)))),mve=t=>({f1:0,f2:1,f2MinusF1:2,f1PlusF2:3,f1TimesF2:4})[t]??0,pve=t=>({euclidean:0,manhattan:1,chebyshev:2})[t]??0,bu={name:"WorleyNoise",category:"Textures",description:"Cellular noise field \u2014 distance-based, with selectable feature combinations and fractal octaves",props:{colorA:{default:"#ffffff",transform:Ce,description:"Color where the noise field is low (typically near cell centers)",ui:{type:"color",label:"Color A (Low)",group:"Colors"}},colorB:{default:"#000000",transform:Ce,description:"Color where the noise field is high (typically near cell boundaries)",ui:{type:"color",label:"Color B (High)",group:"Colors"}},colorSpace:{default:"linear",transform:Ht,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:Gt,label:"Color Space",group:"Colors"}},scale:{default:6,description:"Number of cells across the canvas at the base octave",ui:{type:["range","map"],min:1,max:30,step:.5,label:"Scale",group:"Effect"}},mode:{default:"f1",transform:mve,compileTime:!0,description:"Field type. F1 = distance to nearest point. F2 = distance to second-nearest. F2 \u2212 F1 emphasises cell boundaries.",ui:{type:"select",options:[{label:"F1 (Cells)",value:"f1"},{label:"F2 (Wider Cells)",value:"f2"},{label:"F2 \u2212 F1 (Edges)",value:"f2MinusF1"},{label:"F1 + F2",value:"f1PlusF2"},{label:"F1 \xD7 F2",value:"f1TimesF2"}],label:"Mode",group:"Effect"}},distance:{default:"euclidean",transform:pve,compileTime:!0,description:"Distance metric. Euclidean = round cells. Manhattan = diamond. Chebyshev = square.",ui:{type:"select",options:[{label:"Euclidean",value:"euclidean"},{label:"Manhattan",value:"manhattan"},{label:"Chebyshev",value:"chebyshev"}],label:"Distance",group:"Effect"}},octaves:{default:1,compileTime:!0,description:"Number of fractal layers stacked at progressively finer scales",ui:{type:"range",min:1,max:4,step:1,label:"Octaves",group:"Effect"}},lacunarity:{default:2,description:"Scale multiplier between octaves (only active when Octaves > 1)",ui:{type:["range","map"],min:1.5,max:4,step:.1,label:"Lacunarity",group:"Effect",condition:{octaves:[2,3,4]}}},persistence:{default:.5,description:"Amplitude multiplier between octaves (only active when Octaves > 1)",ui:{type:["range","map"],min:0,max:1,step:.05,label:"Persistence",group:"Effect",condition:{octaves:[2,3,4]}}},jitter:{default:1,description:"How much each cell's point drifts inside its cell. 0 = rigid grid (banded look), 1 = fully random.",ui:{type:["range","map"],min:0,max:1,step:.05,label:"Jitter",group:"Effect"}},contrast:{default:1,description:"Steepness of the gradient between low and high regions",ui:{type:["range","map"],min:.25,max:4,step:.05,label:"Contrast",group:"Effect"}},balance:{default:0,description:"Shifts the gradient midpoint. Negative pulls the field toward Color A, positive toward Color B.",ui:{type:["range","map"],min:-1,max:1,step:.05,label:"Balance",group:"Effect"}},seed:{default:0,description:"Random seed \u2014 shifts the cell pattern without changing its overall structure",ui:{type:["range","map"],min:0,max:100,step:1,label:"Seed",group:"Effect"}},speed:{default:.5,description:"Animation speed \u2014 how fast each cell's point drifts",ui:{type:"range",min:0,max:5,step:.1,label:"Speed",group:"Animation"}}},fragmentNode:t=>{let{uniforms:e}=t,n=e.colorA.uniform,r=e.colorB.uniform,i=e.colorSpace.uniform.value,o=e.mode.uniform.value,a=e.distance.uniform.value,l=Math.max(1,Math.min(4,Math.round(e.octaves.uniform.value))),s=fn(t,e.speed),u=$.x.div($.y),d=I(j.x.mul(u),j.y),h=e.scale.uniform,f=e.seed.uniform,g=e.jitter.uniform,y=e.lacunarity.uniform,_=e.persistence.uniform,b=1.5;o===1?b=1:o===2?b=2.5:o===3?b=.6:o===4&&(b=2),a===1?b*=.7:a===2&&(b*=1.4);let S=a===0,w=o!==0,v=qe(([c,m,x])=>{let T=m.mul(fve),N=Zt(c),B=St(c),D=j6,O=j6;for(let V=-1;V<=1;V++)for(let Z=-1;Z<=1;Z++){let q=I(p(Z),p(V)),ae=hve(N.add(q).add(x)),we=ae.x.add(fe(m.add(ae.x.mul(z6))).mul(V6)),Ae=ae.y.add(Ye(T.add(ae.y.mul(z6))).mul(V6)),Ge=Re(G6,we.clamp(H6,W6),g),et=Re(G6,Ae.clamp(H6,W6),g),Ze=q.add(I(Ge,et)),he=B.sub(Ze),Me;a===1?Me=Et(he.x).add(Et(he.y)):a===2?Me=Pt(Et(he.x),Et(he.y)):Me=Vz(he),w?(O=_n(O,Pt(Me,D)),D=_n(D,Me)):D=_n(D,Me)}let L;return S?o===1?L=Sn(O):o===2?L=Sn(O).sub(Sn(D)):o===3?L=Sn(D).add(Sn(O)):o===4?L=Sn(D.mul(O)):L=Sn(D):o===1?L=O:o===2?L=O.sub(D):o===3?L=D.add(O):o===4?L=D.mul(O):L=D,L}),E=p(0),C=p(0),M=p(1),R=h;for(let c=0;c<l;c++){let m=v(d.mul(R),s.add(p(c*17)),f.add(p(c*31)));E=E.add(m.mul(M)),C=C.add(M),M=M.mul(_),R=R.mul(y)}return Lt(n,r,Tt(E.div(C.max(p(1e-4))).mul(p(b)).mul(p(2)).sub(p(1)).mul(e.contrast.uniform).add(e.balance.uniform).mul(p(.5)).add(p(.5)),p(0),p(1)),i)}}});var X6,gve,yve,_u,$6=z(()=>{"use strict";Dt();Wn();ut();X6=Array.from({length:32},(t,e)=>{let n=(e/31-.5)*2;return Math.exp(-.5*n*n/.64)}),gve=X6.reduce((t,e)=>t+e),yve=X6.map(t=>t/gve),_u={name:"ZoomBlur",category:"Blurs",description:"Radial zoom blur expanding from a center point",requiresRTT:!0,requiresChild:!0,props:{intensity:{default:30,description:"Intensity of the zoom blur effect",ui:{type:["range","map"],min:0,max:100,step:1,label:"Intensity",group:"Effect"}},center:{default:{x:.5,y:.5},transform:wt,description:"Center point of the zoom blur",ui:{type:"position",label:"Center",group:"Position"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return F(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=I(t.center.uniform.x,t.center.uniform.y.oneMinus()),o=t.intensity.uniform.mul(.01),a=$.x.div($.y);return qe(()=>{let l=j,s=F(0).toVar(),u=l.sub(i),d=I(u.x.mul(a),u.y);for(let h=0;h<32;h++){let f=p(1).add(o.mul(h/31)),g=d.div(f),y=I(g.x.div(a),g.y).add(i);s.assign(s.add(r.sample(y).mul(p(yve[h]))))}return Vt(s)})()}}});function vve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(e.rgb,r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Sve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r))),o=Y6(_e(t.r,t.g,t.b)),a=Y6(_e(e.r,e.g,e.b)),l=Z6(o),s=Z6(a),u=K6(l);return F(xve(bve(_ve(dn(tt(K6(s),r),tt(u,tt(t.a,rn(1,r))))))),i)}function Tve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r))),o=J6(_e(t.r,t.g,t.b)),a=J6(_e(e.r,e.g,e.b)),l=Q6(o);return F(wve(Mve(dn(tt(Q6(a),r),tt(l,tt(t.a,rn(1,r)))))),i)}function Cve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(tt(t.rgb,e.rgb),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Eve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(rn(1,tt(rn(1,t.rgb),rn(1,e.rgb))),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Rve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(_n(dn(t.rgb,e.rgb),1),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Ave(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(Re(tt(2,tt(t.rgb,e.rgb)),rn(1,tt(2,tt(rn(1,t.rgb),rn(1,e.rgb)))),yn(.5,t.rgb)),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Pve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(Et(rn(t.rgb,e.rgb)),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Ive(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(Re(t.rgb,_n(hc(t.rgb,rn(1,e.rgb)),1),yn(.001,rn(1,e.rgb))),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Nve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(rn(dn(t.rgb,e.rgb),tt(2,tt(t.rgb,e.rgb))),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Qd(t){return dn(dn(tt(t.r,.2126),tt(t.g,.7152)),tt(t.b,.0722))}function Ove(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r))),o=rn(Qd(t.rgb),Qd(e.rgb));return F(dn(tt(dn(e.rgb,o),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Uve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r))),o=Qd(t.rgb),a=Qd(e.rgb).div(dn(o,1e-4));return F(dn(tt(tt(t.rgb,a),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Dve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(_n(t.rgb,e.rgb),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Fve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(Pt(t.rgb,e.rgb),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Lve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(Re(F(0,0,0,1).rgb,Pt(rn(1,rn(1,t.rgb).div(dn(e.rgb,1e-4))),0),yn(1e-4,e.rgb)),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function kve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(Pt(dn(dn(t.rgb,e.rgb),-1),0),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Bve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r))),o=dn(tt(2,tt(t.rgb,e.rgb)),tt(tt(t.rgb,t.rgb),rn(1,tt(2,e.rgb)))),a=Sn(t.rgb);return F(dn(tt(Re(o,dn(tt(2,tt(t.rgb,rn(1,e.rgb))),tt(a,rn(tt(2,e.rgb),1))),yn(.5,e.rgb)),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function zve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r)));return F(dn(tt(Re(tt(2,tt(t.rgb,e.rgb)),rn(1,tt(2,tt(rn(1,t.rgb),rn(1,e.rgb)))),yn(.5,e.rgb)),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Vve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r))),o=Qd(t.rgb),a=Qd(e.rgb),l=t.rgb.sub(o),s=e.rgb.sub(a),u=l.length();return F(dn(tt(dn(tt(s.normalize(),u),o),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Gve(t,e,n=1){let r=tt(e.a,n),i=dn(r,tt(t.a,rn(1,r))),o=Qd(t.rgb),a=Qd(e.rgb),l=t.rgb.sub(o),s=e.rgb.sub(a);return F(dn(tt(dn(tt(l.normalize(),s.length()),o),r),tt(t.rgb,tt(t.a,rn(1,r)))),i)}function Um(t,e,n="normal",r=1){return(e8[n]||e8.normal)(t,e,r)}function Hve(t,e){let n=tt(t.a,e.a);return F(t.rgb,n)}function Wve(t,e){let n=rn(1,e.a),r=tt(t.a,n);return F(t.rgb,r)}function jve(t,e){let n=_e(.2126,.7152,.0722),r=kt(e.rgb,n),i=tt(t.a,r);return F(t.rgb,i)}function qve(t,e){let n=_e(.2126,.7152,.0722),r=rn(1,kt(e.rgb,n)),i=tt(t.a,r);return F(t.rgb,i)}function Xve(t,e,n="alpha"){return(t8[n]||t8.alpha)(t,e)}function ue(t,e,n){let r={};return Object.entries(t.props).forEach(([i,o])=>{let a=e[i],l=a;if(o.transform){let u=o.transform(a);l=u?.node??u}if(l==null&&(l=o.default,o.transform&&l!==null&&l!==void 0)){let u=o.transform(l);l=u?.node??u}l==null&&(console.error(`[Shaders] Uniform "${i}" is null/undefined after fallback. PropConfig:`,{propName:i,initialValue:a,default:o.default,hasTransform:!!o.transform}),l=0);let s=oe(l).setName(`${i}_${n}`);typeof l=="string"&&s.value===null&&(s.value=l),r[i]={uniform:s,transform:o.transform||void 0,compileTime:o.compileTime||!1,...o.compileTimeWhen?{compileTimeWhen:o.compileTimeWhen,_lastCompiledValue:a??o.default}:{}}}),r}function Kve(t,e){if(t?.transform){let n=Zve.get(t.transform);if(n){let r=n(e);t.uniform.value&&typeof t.uniform.value.copy=="function"?t.uniform.value.copy(r):t.uniform.value=r}else{let r=t.transform(e),i=r?.data??r;t.uniform.value&&typeof t.uniform.value.copy=="function"&&i&&typeof i.copy=="function"?t.uniform.value.copy(i):t.uniform.value=i}}else t.uniform.value=e}function n8(){let t=null,e,n,r,i,o,a={nodes:new Map,rootId:null,idToNodeId:new Map},l=new Map,s=null,u=null,d=null,h=!1,f=!1,g="p3-linear",y=!1,_=null,b=!1,S=!0,w=!1,v=0,E=0,C=0,M=0,R=!1,c=.5,m=.5,x=!1,T=null,N=!1,B=!1,D=null,O=null,L=null,V=null,Z=8192,q=0,ae=0,we=!0,Ae=new $ve,Ge=[],et=!1,Ze=null,he=!1,Me=!1,Pe=null,We=!1,Xe=pe=>{if(!We){We=!0;try{Ua()}catch{}Pe&&queueMicrotask(()=>{try{Pe?.(pe)}catch(Le){console.error("[Shaders] onDeviceLost callback threw:",Le)}})}},le=null,rt=new Set,De=new Set,K=0,be=new Set,Ee=new Set,Be=null,Ke=!1,ct=(pe,Le)=>{let Ue=e?.getPixelRatio?.()??1,Ne=Math.max(1,Math.floor(Z/Ue)-1),U=Math.min(pe,window.innerWidth,Ne),Y=Math.min(Le,window.innerHeight,Ne),ve=Math.min(U/pe,Y/Le,1);return{width:Math.max(1,Math.round(pe*ve)),height:Math.max(1,Math.round(Le*ve))}},X=(pe,Le)=>{pe<=0||Le<=0||pe===q&&Le===ae||(q=pe,ae=Le,Be={width:pe,height:Le},Ke||(Ke=!0,requestAnimationFrame(()=>{if(Ke=!1,!Be)return;let Ue=Be;Be=null;let{width:Ne,height:U}=ct(Ue.width,Ue.height);v=Ne,E=U,y||(y=!0,a.nodes.size>0&&le===null&&(le=requestAnimationFrame(()=>{le=null,H()}))),e.setSize(Ne,U,!1);let Y=Ne/U,ve=2,te=ve*Y;n.left=-te/2,n.right=te/2,n.top=ve/2,n.bottom=-ve/2,n.updateProjectionMatrix(),i.scale.set(te,ve,1),a.nodes.forEach(ye=>{ye.transformUniforms?.aspectRatio&&(ye.transformUniforms.aspectRatio.value=Y),ye.resizeCallbacks.forEach(je=>{try{je({width:Ne,height:U})}catch($e){console.error("Error in resize callback:",$e)}})}),C=0,Rr()})))},at=()=>h&&!!e&&!!r&&!!n&&!!o&&v>0&&E>0,nt=pe=>{if(!e||!n||!i)return;let Le=pe[0];if(!Le)return;let Ue,Ne;if(Le.contentBoxSize){let U=Array.isArray(Le.contentBoxSize)?Le.contentBoxSize[0]:Le.contentBoxSize;U?(Ue=Math.round(U.inlineSize),Ne=Math.round(U.blockSize)):(Ue=Math.round(Le.contentRect.width),Ne=Math.round(Le.contentRect.height))}else Ue=Math.round(Le.contentRect.width),Ne=Math.round(Le.contentRect.height);Ue===0||Ne===0||X(Ue,Ne)},Ct=pe=>{let Le=pe[0];Le&&(b=Le.isIntersecting)},me=(pe,Le)=>{if(pe.size!==Le.size)return!1;for(let Ue of pe)if(!Le.has(Ue))return!1;return!0},ke=pe=>{K++;let Le=It(pe);return be.add(Le),Le},k=()=>{Ee.forEach(pe=>{try{pe?.renderTarget?.dispose&&pe.renderTarget.dispose()}catch{}}),Ee.clear()},P=!1,H=()=>{if(!(!a.rootId||!o||N)&&a.nodes.get(a.rootId)){if(v===0||E===0){P||(P=!0,requestAnimationFrame(()=>{P=!1,v>0&&E>0&&H()}));return}N=!0;try{Ee=new Set(be),be.clear();let pe=new Set;De.clear(),a.nodes.forEach((Ue,Ne)=>{(Ue.requiresRTT||Ue.transformRTTActive)&&De.add(Ne)}),K=0;let Le=Ot(a.rootId,new Set,pe);if(Le&&o){let Ue=!me(rt,pe),Ne=o.fragmentNode!==Le;if(Ue||R||Ne){k();try{o.dispose(),e.renderTarget&&e.renderTarget.dispose()}catch{}let U=new hm({transparent:!0});U.fragmentNode=Le,U.needsUpdate=!0,i.material=U,o=U,R=!1,rt=pe,!he&&pe.size>0&&(Me=!0)}}}catch(pe){console.error("Error composing shader tree:",pe)}finally{N=!1,B=!1}s||Rr()}},Q=pe=>{let Le=l.get(pe);if(!Le)return[];let Ue=[];for(let Ne of Le){let U=a.nodes.get(Ne);U&&Ue.push(U)}return Ue},se=pe=>pe.replace(/[^a-zA-Z0-9_]/g,"_"),Te=pe=>{let Le=se(pe);for(let[Ue,Ne]of a.nodes.entries())if(Ne.metadata.id===Le)return Ue;return null},Ie=(pe,Le,Ue,Ne,U)=>{if(!Le.metadata.mask?.source)return pe;let Y=Le.metadata.mask.source,ve=Te(Y);if(!ve)return pe;if(Ne.has(ve))return console.error("Uh oh, looks like you've got a circular dependency in your shader masks."),pe;let te=new Set(Ne);te.add(Ue);let ye=Ot(ve,te),je=ye;U&&(je=ke(ye).sample(U));let $e=Le.metadata.mask.type||"alpha";return Xve(pe,je,$e)},J=(pe,Le,Ue,Ne,U)=>{let Y=Te(pe.source);if(!Y)return null;if(Le.has(Y))return console.error(`[Shaders] Circular dependency detected in prop maps: node "${pe.source}" is already being processed.`),null;let ve=new Set(Le);ve.add(Ue);let te=ke(Ot(Y,ve)),ye=te.sample(U??j),je;switch(pe.channel){case"alpha":je=ye.a;break;case"alphaInverted":je=ye.a.oneMinus();break;case"luminanceInverted":je=kt(ye.rgb,_e(.2126,.7152,.0722)).oneMinus();break;default:je=kt(ye.rgb,_e(.2126,.7152,.0722));break}let $e=a.nodes.get(Ue);if(!$e)return null;$e.mapUniforms||($e.mapUniforms={}),$e.mapUniforms[Ne]?($e.mapUniforms[Ne].inputMin.value=pe.inputMin,$e.mapUniforms[Ne].inputMax.value=pe.inputMax,$e.mapUniforms[Ne].outputMin.value=pe.outputMin,$e.mapUniforms[Ne].outputMax.value=pe.outputMax,$e.mapUniforms[Ne].curve.value=pe.curve??0,$e.mapUniforms[Ne].sourceTexture=te,$e.mapUniforms[Ne].channel=pe.channel):$e.mapUniforms[Ne]={inputMin:oe(pe.inputMin),inputMax:oe(pe.inputMax),outputMin:oe(pe.outputMin),outputMax:oe(pe.outputMax),curve:oe(pe.curve??0),sourceTexture:te,channel:pe.channel};let{inputMin:ft,inputMax:ht,outputMin:He,outputMax:Ft,curve:Yt}=$e.mapUniforms[Ne],Wt=Pt(ht.sub(ft),1e-4);return Re(He,Ft,Bt(Tt(je.sub(ft).div(Wt),0,1),Bt(p(2),Yt.negate().mul(2))))},ee=(pe,Le,Ue)=>{let Ne=a.nodes.get(Le);if(!Ne)return null;if(Ne.mouseDriverState||(Ne.mouseDriverState={}),!Ne.mouseDriverState[Ue]){let U=pe.x===void 0||pe.x==="mouse",Y=pe.y===void 0||pe.y==="mouse",ve=U?c:pe.x,te=Y?m:pe.y,ye=oe(new mn(ve,1-te));Ne.mouseDriverState[Ue]={currentX:ve,currentY:te,velocityX:0,velocityY:0,smoothedUniform:ye}}return Ne.mouseDriverState[Ue].smoothedUniform},Se=(pe,Le,Ue)=>{let Ne=a.nodes.get(Le);if(!Ne)return null;if(Ne.mouseDriverState||(Ne.mouseDriverState={}),!Ne.mouseDriverState[Ue]){let ye=Math.max(.001,pe.axis==="x"?c:m),je=oe(ye);Ne.mouseDriverState[Ue]={currentX:ye,currentY:0,velocityX:0,velocityY:0,smoothedUniform:je}}Ne.mapUniforms||(Ne.mapUniforms={}),Ne.mapUniforms[Ue]?(Ne.mapUniforms[Ue].outputMin.value=pe.outputMin,Ne.mapUniforms[Ue].outputMax.value=pe.outputMax,Ne.mapUniforms[Ue].curve.value=pe.curve??0):Ne.mapUniforms[Ue]={inputMin:oe(0,"float"),inputMax:oe(1,"float"),outputMin:oe(pe.outputMin,"float"),outputMax:oe(pe.outputMax,"float"),curve:oe(pe.curve??0,"float")};let{outputMin:U,outputMax:Y,curve:ve}=Ne.mapUniforms[Ue],te=Ne.mouseDriverState[Ue].smoothedUniform;return Re(U,Y,Bt(te,Bt(p(2),ve.negate().mul(2))))},Je=(pe,Le,Ue)=>{let Ne=a.nodes.get(Le);return Ne?(Ne.autoAnimateState||(Ne.autoAnimateState={}),Ne.autoAnimateState[Ue]||(Ne.autoAnimateState[Ue]={smoothedUniform:oe(pe.outputMin,"float")}),Ne.autoAnimateState[Ue].smoothedUniform):null},Fe=(pe,Le,Ue,Ne)=>{if(!Le||Object.keys(Le).length===0)return pe;let U={...pe},Y=a.nodes.get(Ue),ve=Y?.mapSampleUVsFunc?.(pe)??{};for(let[te,ye]of Object.entries(Le)){let je=null;if(ye.type==="map"){if(!(te in U))continue;je=J(ye,Ne,Ue,te,ve[te])}else if(ye.type==="mouse-position"){je=ee(ye,Ue,te),je!==null&&te in U&&(U[te]={...U[te],uniform:je});continue}else if(ye.type==="mouse"){if(!(te in U))continue;je=Se(ye,Ue,te)}else if(ye.type==="auto-animate"){if(!(te in U))continue;je=Je(ye,Ue,te)}if(je!==null&&te in U){let $e;if(ye.type==="map"){let ht=Y?.mapUniforms?.[te];ht?.sourceTexture&&ht?.channel&&($e={sourceTexture:ht.sourceTexture,channel:ht.channel,inputMin:ht.inputMin,inputMax:ht.inputMax,outputMin:ht.outputMin,outputMax:ht.outputMax,curve:ht.curve})}let ft;ye.type==="mouse"&&(ft=()=>{let ht=Y?.mouseDriverState?.[te],He=Y?.mapUniforms?.[te];if(!ht||!He)return 0;let Ft=ht.smoothedUniform.value,Yt=He.outputMin.value,Wt=He.outputMax.value,Nn=Math.pow(2,-(He.curve.value*2));return Yt+(Wt-Yt)*Math.pow(Ft,Nn)}),U[te]={...U[te],uniform:je,...$e?{mapComputeInfo:$e}:{},...ft?{getCpuValue:ft}:{}}}}return U},Qe=(pe,Le)=>{if(!Le.metadata.transform||!Le.transformUniforms||!tN(Le.metadata.transform)&&!Le.transformRTTActive)return pe;let Ue=ke(pe),Ne=Yve(j,Le.transformUniforms.offsetX,Le.transformUniforms.offsetY,Le.transformUniforms.rotation,Le.transformUniforms.scale,Le.transformUniforms.anchorX,Le.transformUniforms.anchorY,Le.transformUniforms.aspectRatio);return Ln(Ne,Ue.sample(Ne),Ue,Le.transformUniforms.edges.value)},Nt=(pe,Le)=>{if(pe.computeOutputs=void 0,pe.computeGetNodes=void 0,!(typeof window<"u"&&window.sessionStorage?.getItem("__shadersForceWebGL")==="1")&&pe.computeNodeFunc&&e.backend?.isWebGPUBackend===!0)try{let Ue=pe.computeNodeFunc(Le);if(Ue)return pe.computeOutputs=Ue.outputs,pe.computeGetNodes=Ue.getComputeNodes,Ue.outputs}catch(Ue){console.error(`Error initializing compute for node ${pe.id}:`,Ue)}},Ot=(pe,Le=new Set,Ue)=>{if(v===0||E===0)return F(0,0,0,0);let Ne=a.nodes.get(pe);if(!Ne)return F(0,0,0,0);let U=je=>{Ne.cleanupCallbacks.push(je)},Y=je=>{Ne.beforeRenderCallbacks.push(je)},ve=je=>{Ne.afterRenderCallbacks.push(je)},te=je=>{Ne.resizeCallbacks.push(je)},ye=Q(pe);if(ye.length===0){Ne.cleanupCallbacks.forEach($e=>{try{$e()}catch(ft){console.error("Error in cleanup callback:",ft)}}),Ne.cleanupCallbacks=[],Ne.beforeRenderCallbacks=[],Ne.afterRenderCallbacks=[],Ne.resizeCallbacks=[];let je={uniforms:Fe(Ne.uniforms??{},Ne.metadata.maps,pe,Le),childNode:void 0,onCleanup:U,onBeforeRender:Y,onAfterRender:ve,onResize:te,canvas:t,dimensions:{width:v,height:E},renderer:e,domCanvas:Ne.domCanvas};return je.computeOutputs=Nt(Ne,je),Ie(Qe(Ne.fragmentNodeFunc(je),Ne),Ne,pe,Le)}else{let je=[...ye].sort(($e,ft)=>$e.metadata.renderOrder-ft.metadata.renderOrder);if(Ne.parentId===null){let $e;for(let ht=0;ht<je.length;ht++){let He=je[ht],Ft;if(He.metadata.opacity===void 0?(Ft=1,He.opacityUniform.value=Ft):(Ft=He.metadata.opacity,He.opacityUniform.value=Ft),He.metadata.visible===!1)continue;Ue&&Ue.add(He.id);let Yt=Q(He.id).length>0,Wt;if(Yt)Wt=Ot(He.id,Le,Ue);else{let Nn=cr=>{He.cleanupCallbacks.push(cr)},ar=cr=>{He.beforeRenderCallbacks.push(cr)},Sr=cr=>{He.afterRenderCallbacks.push(cr)},tr=cr=>{He.resizeCallbacks.push(cr)},wr=$e;He.requiresRTT&&$e!==void 0&&(wr=Um(F(0,0,0,0),$e,"normal",1)),He.cleanupCallbacks.forEach(cr=>{try{cr()}catch(Kn){console.error("Error in cleanup callback:",Kn)}}),He.cleanupCallbacks=[],He.beforeRenderCallbacks=[],He.afterRenderCallbacks=[],He.resizeCallbacks=[];let jt={uniforms:Fe(He.uniforms??{},He.metadata.maps,He.id,Le),childNode:wr,onCleanup:Nn,onBeforeRender:ar,onAfterRender:Sr,onResize:tr,canvas:t,dimensions:{width:v,height:E},renderer:e,domCanvas:He.domCanvas};jt.computeOutputs=Nt(He,jt),Wt=Ie(Qe(He.fragmentNodeFunc(jt),He),He,He.id,Le)}He.requiresChild&&He.metadata.blendMode==="normal"&&!Yt?$e=Re($e||F(0,0,0,0),Wt,He.opacityUniform):$e===void 0?Ne.requiresRTT||Ft!==1?$e=Um(F(1,1,1,0),Wt,He.metadata.blendMode,He.opacityUniform):$e=Wt:$e=Um($e,Wt,He.metadata.blendMode,He.opacityUniform)}Ne.cleanupCallbacks.forEach(ht=>{try{ht()}catch(He){console.error("Error in cleanup callback:",He)}}),Ne.cleanupCallbacks=[],Ne.beforeRenderCallbacks=[],Ne.afterRenderCallbacks=[],Ne.resizeCallbacks=[];let ft={uniforms:Fe(Ne.uniforms??{},Ne.metadata.maps,pe,Le),childNode:$e,onCleanup:U,onBeforeRender:Y,onAfterRender:ve,onResize:te,canvas:t,dimensions:{width:v,height:E},renderer:e,domCanvas:Ne.domCanvas};return ft.computeOutputs=Nt(Ne,ft),Ie(Qe(Ne.fragmentNodeFunc(ft),Ne),Ne,pe,Le)}else{let $e;for(let ht=0;ht<je.length;ht++){let He=je[ht],Ft;if(He.metadata.opacity===void 0?(Ft=1,He.opacityUniform.value=Ft):(Ft=He.metadata.opacity,He.opacityUniform.value=Ft),He.metadata.visible===!1)continue;Ue&&Ue.add(He.id);let Yt=Q(He.id).length>0,Wt;if(Yt)Wt=Ot(He.id,Le,Ue);else{let Nn=cr=>{He.cleanupCallbacks.push(cr)},ar=cr=>{He.beforeRenderCallbacks.push(cr)},Sr=cr=>{He.afterRenderCallbacks.push(cr)},tr=cr=>{He.resizeCallbacks.push(cr)},wr=$e;He.requiresRTT&&$e!==void 0&&(wr=Um(F(0,0,0,0),$e,"normal",1)),He.cleanupCallbacks=[],He.beforeRenderCallbacks=[],He.afterRenderCallbacks=[],He.resizeCallbacks=[];let jt={uniforms:Fe(He.uniforms??{},He.metadata.maps,He.id,Le),childNode:wr,onCleanup:Nn,onBeforeRender:ar,onAfterRender:Sr,onResize:tr,canvas:t,dimensions:{width:v,height:E},renderer:e,domCanvas:He.domCanvas};jt.computeOutputs=Nt(He,jt),Wt=Ie(Qe(He.fragmentNodeFunc(jt),He),He,He.id,Le)}He.requiresChild&&He.metadata.blendMode==="normal"&&!Yt?$e=Re($e||F(0,0,0,0),Wt,He.opacityUniform):$e===void 0?Ne.requiresRTT||Ft!==1?$e=Um(F(1,1,1,0),Wt,He.metadata.blendMode,He.opacityUniform):$e=Wt:$e=Um($e,Wt,He.metadata.blendMode,He.opacityUniform)}Ne.cleanupCallbacks.forEach(ht=>{try{ht()}catch(He){console.error("Error in cleanup callback:",He)}}),Ne.cleanupCallbacks=[],Ne.beforeRenderCallbacks=[],Ne.afterRenderCallbacks=[],Ne.resizeCallbacks=[];let ft={uniforms:Fe(Ne.uniforms??{},Ne.metadata.maps,pe,Le),childNode:$e,onCleanup:U,onBeforeRender:Y,onAfterRender:ve,onResize:te,canvas:t,dimensions:{width:v,height:E},renderer:e,domCanvas:Ne.domCanvas};return ft.computeOutputs=Nt(Ne,ft),Ie(Qe(Ne.fragmentNodeFunc(ft),Ne),Ne,pe,Le)}}},en=(pe,Le,Ue,Ne,U={},Y,ve)=>{if(Le===null){let ht=Ge.findIndex(He=>He.id===pe);if(ht!==-1){Ge.splice(ht,1);return}ze(pe);return}if(!et){let ht=Ge.findIndex(He=>He.id===pe);ht!==-1?Ge[ht]={id:pe,fragmentNodeFunc:Le,parentId:Ue,metadata:Ne,uniforms:U,componentDefinition:Y,domCanvas:ve}:Ge.push({id:pe,fragmentNodeFunc:Le,parentId:Ue,metadata:Ne,uniforms:U,componentDefinition:Y,domCanvas:ve});return}let te=0;if(Ue!==null){let ht=l.get(Ue);if(ht&&ht.size>0){let He=0;for(let Ft of ht){let Yt=a.nodes.get(Ft);Yt&&Yt.metadata.renderOrder>He&&(He=Yt.metadata.renderOrder)}te=He+1}}let ye=oe(Ne?.opacity!==void 0?Ne.opacity:1),je;if(Ne?.transform){let ht=v/Math.max(1,E),He=Ne.transform;je={offsetX:oe(He.offsetX??0),offsetY:oe(He.offsetY??0),rotation:oe(He.rotation??0),scale:oe(He.scale??1),anchorX:oe(He.anchorX??.5),anchorY:oe(He.anchorY??.5),edges:oe(He.edges==="stretch"?0:He.edges==="transparent"?1:He.edges==="mirror"?2:He.edges==="wrap"?3:1),aspectRatio:oe(ht)}}let $e={id:pe,componentName:Y?.name||"Unknown",fragmentNodeFunc:Le,parentId:Ue,requiresRTT:Y?.requiresRTT||!1,requiresChild:Y?.requiresChild||!1,opacityUniform:ye,metadata:{blendMode:Ne?.blendMode||"normal",opacity:Ne?.opacity,visible:Ne?.visible!==!1,id:Ne?.id?se(Ne.id):Ne?.id,mask:Ne?.mask,maps:Ne?.maps,renderOrder:Ne?.renderOrder!==void 0?Ne?.renderOrder:te,transform:Ne?.transform},uniforms:U,cleanupCallbacks:[],beforeRenderCallbacks:[],afterRenderCallbacks:[],resizeCallbacks:[],transformUniforms:je,transformRTTActive:!1,mapSampleUVsFunc:Y?.mapSampleUVs,computeNodeFunc:Y?.computeNode,usesPointer:Y?.usesPointer,domCanvas:ve};a.nodes.set(pe,$e),Ue===null&&(a.rootId=pe),Eo();let ft=l.get(Ue)||new Set;ft.add(pe),l.set(Ue,ft),o&&h&&v>0&&E>0?le===null&&(le=requestAnimationFrame(()=>{le=null,H()})):o&&h&&(P||(P=!0,requestAnimationFrame(()=>{P=!1,v>0&&E>0&&H()})))},ne=(pe,Le,Ue)=>{let Ne=a.nodes.get(pe);if(!Ne||!Ne.uniforms)return;let U=Ne.uniforms[Le];if(!(!U||!U.uniform)){if(U.transform?(ce(g),Kve(U,Ue)):U.uniform.value=Ue,U.compileTime&&o&&h&&v>0&&E>0){le===null&&(le=requestAnimationFrame(()=>{le=null,H()}));return}if(U.compileTimeWhen&&o&&h&&v>0&&E>0){let Y=U._lastCompiledValue;if(U.compileTimeWhen(Y,Ue)){U._lastCompiledValue=Ue,le===null&&(le=requestAnimationFrame(()=>{le=null,H()}));return}}s||Rr()}},st=(pe,Le)=>{let Ue=a.nodes.get(pe);if(!Ue)return;let Ne=!1;Le.blendMode!==void 0&&Ue.metadata.blendMode!==Le.blendMode&&(Ue.metadata.blendMode=Le.blendMode,Ne=!0),Le.opacity!==void 0&&Ue.metadata.opacity!==Le.opacity&&(Ue.metadata.opacity=Le.opacity,Ue.opacityUniform.value=Le.opacity),Le.renderOrder!==void 0&&Ue.metadata.renderOrder!==Le.renderOrder&&(Ue.metadata.renderOrder=Le.renderOrder,Ne=!0);let U=Le.visible!==!1;if(Ue.metadata.visible!==U&&(Ue.metadata.visible=U,Ne=!0),Le.id!==void 0){let Y=se(Le.id);Ue.metadata.id!==Y&&(Ue.metadata.id=Y,Ne=!0)}if("mask"in Le&&(Ue.metadata.mask?.source!==Le.mask?.source||Ue.metadata.mask?.type!==Le.mask?.type)&&(Ue.metadata.mask=Le.mask,Ne=!0),"maps"in Le&&JSON.stringify(Ue.metadata.maps)!==JSON.stringify(Le.maps)){let Y=Ue.metadata.maps,ve=Le.maps;if(Ue.metadata.maps=ve,Eo(),(()=>{if(!Y||!ve)return!0;let te=Object.keys(Y),ye=Object.keys(ve);if(te.length!==ye.length||!te.every(je=>je in ve))return!0;for(let je of ye){let $e=Y[je],ft=ve[je];if($e.type!==ft.type)return!0;if(ft.type==="map"){let ht=ft,He=$e;if(He.source!==ht.source||He.channel!==ht.channel||!Ue.mapUniforms?.[je])return!0}else if(ft.type==="mouse"){let ht=ft;if($e.axis!==ht.axis||!Ue.mouseDriverState?.[je])return!0}else if(ft.type==="mouse-position"){if(!Ue.mouseDriverState?.[je])return!0}else if(ft.type==="auto-animate"&&!Ue.autoAnimateState?.[je])return!0}return!1})()){if(Y&&ve)for(let te of Object.keys(Y))te in ve&&Y[te].type!==ve[te].type&&Ue.autoAnimateState&&delete Ue.autoAnimateState[te];if(Y&&ve&&Ue.mouseDriverState)for(let te of Object.keys(Y))te in ve&&Y[te].type!==ve[te].type&&delete Ue.mouseDriverState[te];Ne=!0}else for(let[te,ye]of Object.entries(ve))if(ye.type==="map"){let je=ye,$e=Ue.mapUniforms[te];$e&&($e.inputMin.value=je.inputMin,$e.inputMax.value=je.inputMax,$e.outputMin.value=je.outputMin,$e.outputMax.value=je.outputMax,$e.curve.value=je.curve??0)}else if(ye.type==="mouse"){let je=ye,$e=Ue.mapUniforms?.[te];$e&&($e.outputMin.value=je.outputMin,$e.outputMax.value=je.outputMax,$e.curve.value=je.curve??0)}else if(ye.type==="auto-animate"){let je=ye,$e=Ue.mapUniforms?.[te];$e&&($e.outputMin.value=je.outputMin,$e.outputMax.value=je.outputMax)}}if(Le.transform!==void 0){let Y={offsetX:Le.transform.offsetX??Ue.metadata.transform?.offsetX??0,offsetY:Le.transform.offsetY??Ue.metadata.transform?.offsetY??0,rotation:Le.transform.rotation??Ue.metadata.transform?.rotation??0,scale:Le.transform.scale??Ue.metadata.transform?.scale??1,anchorX:Le.transform.anchorX??Ue.metadata.transform?.anchorX??.5,anchorY:Le.transform.anchorY??Ue.metadata.transform?.anchorY??.5,edges:Le.transform.edges??Ue.metadata.transform?.edges??"transparent"},ve=tN(Y);if(Ue.metadata.transform=Y,!Ue.transformUniforms&&Y){let te=v/Math.max(1,E);Ue.transformUniforms={offsetX:oe(Y.offsetX),offsetY:oe(Y.offsetY),rotation:oe(Y.rotation),scale:oe(Y.scale),anchorX:oe(Y.anchorX),anchorY:oe(Y.anchorY),edges:oe(Y.edges==="stretch"?0:Y.edges==="transparent"?1:Y.edges==="mirror"?2:3),aspectRatio:oe(te)}}else if(Ue.transformUniforms){Ue.transformUniforms.offsetX.value=Y.offsetX,Ue.transformUniforms.offsetY.value=Y.offsetY,Ue.transformUniforms.rotation.value=Y.rotation,Ue.transformUniforms.scale.value=Y.scale,Ue.transformUniforms.anchorX.value=Y.anchorX,Ue.transformUniforms.anchorY.value=Y.anchorY;let te=Ue.transformUniforms.edges.value;Ue.transformUniforms.edges.value=Y.edges==="stretch"?0:Y.edges==="transparent"?1:Y.edges==="mirror"?2:3,Ue.transformUniforms.edges.value!==te&&(Ne=!0)}ve&&!Ue.transformRTTActive&&(Ue.transformRTTActive=!0,Ne=!0)}Ne&&o&&h?le===null&&(le=requestAnimationFrame(()=>{le=null,H()})):s||Rr()},ze=pe=>{if(!a.nodes.has(pe))return;let Le=a.nodes.get(pe);if(Le&&Le.cleanupCallbacks.length>0)for(let Ne of Le.cleanupCallbacks)try{Ne()}catch(U){console.error(`Error executing cleanup callback for node ${pe}:`,U)}let Ue=Q(pe);for(let Ne of Ue)ze(Ne.id);if(a.rootId===pe&&(a.rootId=null),Le){let Ne=l.get(Le.parentId);Ne&&(Ne.delete(pe),Ne.size===0&&l.delete(Le.parentId))}a.nodes.delete(pe),Eo(),B=!0,o&&h&&le===null&&(le=requestAnimationFrame(()=>{le=null,H()}))},Rt=pe=>pe<1/2.75?7.5625*pe*pe:pe<2/2.75?(pe-=1.5/2.75,7.5625*pe*pe+.75):pe<2.5/2.75?(pe-=2.25/2.75,7.5625*pe*pe+.9375):(pe-=2.625/2.75,7.5625*pe*pe+.984375),At=(pe,Le)=>{switch(Le){case"linear":return pe;case"quad":return pe<.5?2*pe*pe:1-Math.pow(-2*pe+2,2)/2;case"expo":return pe===0?0:pe===1?1:pe<.5?Math.pow(2,20*pe-10)/2:(2-Math.pow(2,-20*pe+10))/2;case"bounce":return Rt(pe);default:return(1-Math.cos(Math.PI*pe))/2}},dt=pe=>{M+=pe;for(let Le of a.nodes.values()){if(!Le.mouseDriverState&&!Le.autoAnimateState)continue;let Ue=Le.metadata.maps;if(Ue){for(let[Ne,U]of Object.entries(Le.mouseDriverState??{})){let Y=Ue[Ne];if(Y){if(Y.type==="mouse-position"){let ve=Y.smoothing??0,te=Y.momentum??0,ye=Y.x===void 0||Y.x==="mouse",je=Y.y===void 0||Y.y==="mouse",$e,ft;if(ye){let[wr,jt]=nN(U.currentX,U.velocityX,c,ve,te,pe);U.currentX=wr,U.velocityX=jt,$e=wr}else $e=Y.x,U.velocityX=0;if(je){let[wr,jt]=nN(U.currentY,U.velocityY,m,ve,te,pe);U.currentY=wr,U.velocityY=jt,ft=wr}else ft=Y.y,U.velocityY=0;let ht=Y.reach??1,He=Y.originX??.5,Ft=Y.originY??.5,Yt=Y.invertX?-1:1,Wt=Y.invertY?-1:1,Nn=He+Yt*($e-He)*ht,ar=Ft+Wt*(ft-Ft)*ht,Sr=Nn,tr=1-ar;U.smoothedUniform.value.set(Sr,tr)}else if(Y.type==="mouse"){let ve=Y.smoothing??0,te=Y.momentum??0,ye=Y.axis==="x"?c:m,[je,$e]=nN(U.currentX,U.velocityX,ye,ve,te,pe);U.currentX=je,U.velocityX=$e,U.smoothedUniform.value=Math.max(.001,je)}}}if(Le.autoAnimateState)for(let[Ne,U]of Object.entries(Le.autoAnimateState)){let Y=Ue[Ne];if(!Y||Y.type!=="auto-animate")continue;let ve=M*(Y.speed??1)*.2,te;if(Y.mode==="loop")te=At((ve%1+1)%1,Y.easing??Y.waveform??"sine");else{let ht=(ve%1+1)%1;te=At(ht<.5?ht*2:(1-ht)*2,Y.easing??Y.waveform??"sine")}let{outputMin:ye,outputMax:je}=Y,$e=ye+te*(je-ye),ft=Le.uniforms?.[Ne];if(ft?.compileTimeWhen&&o&&h&&v>0&&E>0){let ht=ft._lastCompiledValue;ft.compileTimeWhen(ht,$e)&&(ft._lastCompiledValue=$e,le===null&&(le=requestAnimationFrame(()=>{le=null,H()})))}U.smoothedUniform.value=$e}}}},qt=pe=>{let Le={deltaTime:pe,pointer:{x:c,y:m},pointerActive:x,dimensions:{width:v,height:E}};for(let Ue of a.nodes.values())if(Ue.computeGetNodes)try{let Ne=Ue.computeGetNodes(Le);if(Ne)for(let U of Ne)e.compute(U)}catch(Ne){console.error(`Error dispatching compute for node ${Ue.id}:`,Ne)}},pn=pe=>{let Le={deltaTime:pe,pointer:{x:c,y:m},pointerActive:x,dimensions:{width:v,height:E}};for(let Ue of a.nodes.values())if(Ue.beforeRenderCallbacks.length>0)for(let Ne of Ue.beforeRenderCallbacks)try{Ne(Le)}catch(U){console.error(`Error executing before render callback for node ${Ue.id}:`,U)}},rr=pe=>{let Le={deltaTime:pe,pointer:{x:c,y:m},pointerActive:x,dimensions:{width:v,height:E}};for(let Ue of a.nodes.values())if(Ue.afterRenderCallbacks.length>0)for(let Ne of Ue.afterRenderCallbacks)try{Ne(Le)}catch(U){console.error(`Error executing after render callback for node ${Ue.id}:`,U)}},Fn=async()=>{if(!at())throw new Error("Renderer is not ready");let pe=s!==null;if(pe&&Ua(),C=0,Rr(),e instanceof Jf)try{let Le=e.backend;Le?.device&&await Le.device.queue.onSubmittedWorkDone()}catch{await new Promise(Ue=>setTimeout(Ue,16))}pe&&Ds()},Rr=()=>{if(B||!at())return;let pe=we?performance.now():0,Le=pe||performance.now(),Ue=C>0?(Le-C)/1e3:.016,Ne=1e3,U=1e3/60-1;if(C>0){let ve=Le-C;if(!b&&!w&&ve<Ne||(b||w)&&ve<U)return}let Y=Math.min(Ue,.1);C=Le,we&&performance.mark("shader-cpu-start"),ls&&t&&(T=t.getBoundingClientRect()),dt(Y),qt(Y),pn(Y);try{if(N)return;if(we&&performance.mark("shader-gpu-start"),e.render(r,n),Me&&!he&&(he=!0,Me=!1,Ze&&queueMicrotask(Ze)),rr(Y),we){performance.mark("shader-gpu-end");let ve=!1;if(e instanceof Jf)try{let te=e.backend;if(te&&te.get&&te.get(e)){let ye=te.get(e);if(ye?.timestampQuery){let je=ye.timestampQuery.getResult();je!=null&&(Ae.recordGpuTime(je/1e6),ve=!0)}}}catch{}try{if(!ve){performance.measure("shader-gpu-time","shader-gpu-start","shader-gpu-end");let te=performance.getEntriesByName("shader-gpu-time")[0];te&&Ae.recordGpuTime(te.duration),performance.clearMeasures("shader-gpu-time")}performance.clearMarks("shader-gpu-start"),performance.clearMarks("shader-gpu-end")}catch{}}if(we){performance.mark("shader-cpu-end");try{performance.measure("shader-cpu-time","shader-cpu-start","shader-cpu-end");let te=performance.getEntriesByName("shader-cpu-time")[0];te&&Ae.recordCpuTime(te.duration),performance.clearMarks("shader-cpu-start"),performance.clearMarks("shader-cpu-end"),performance.clearMeasures("shader-cpu-time")}catch{}let ve=performance.now()-pe;Ae.recordFrame(ve)}}catch(ve){console.error("Render frame error:",ve)}},vi=()=>{let pe=Math.max(0,a.nodes.size-1),Le=K;Ae.updateNodeCounts(pe,Le)},Us=()=>{vi();let pe=e?.info;return Ae.getStats(pe)},Ds=()=>{if(!(s||!S))if(Ae.setRendering(!0),e&&"setAnimationLoop"in e&&typeof e.setAnimationLoop=="function")e.setAnimationLoop(()=>{Rr()}),s=1;else{let pe=()=>{Rr(),s=requestAnimationFrame(pe)};pe()}},Ua=()=>{s&&(e&&"setAnimationLoop"in e&&typeof e.setAnimationLoop=="function"?e.setAnimationLoop(null):cancelAnimationFrame(s),s=null),Ae.setRendering(!1)},ls=!1,Eo=()=>{let pe=!1;for(let Le of a.nodes.values()){if(Le.usesPointer){pe=!0;break}if(Le.metadata.maps){for(let Ue of Object.values(Le.metadata.maps))if(Ue&&typeof Ue=="object"&&"type"in Ue){let Ne=Ue.type;if(Ne==="mouse"||Ne==="mouse-position"){pe=!0;break}}if(pe)break}}pe&&!ls?(ls=!0,!D&&t&&(D=Jve.register({onMouseMove:lh,onTouchMove:uh,onMouseUp:wu,onTouchEnd:ef}),t.addEventListener("mousedown",Fs),t.addEventListener("touchstart",Ls))):!pe&&ls&&(ls=!1,D&&(D(),D=null),t&&(t.removeEventListener("mousedown",Fs),t.removeEventListener("touchstart",Ls)))},Su=pe=>{if(!t||!T)return;let Le,Ue;if("touches"in pe){if(pe.touches.length===0)return;Le=pe.touches[0].clientX,Ue=pe.touches[0].clientY}else Le=pe.clientX,Ue=pe.clientY;let Ne=(Le-T.left)/T.width,U=(Ue-T.top)/T.height;c=Ne,m=U},lh=pe=>{!h||!t||Su(pe)},uh=pe=>{!h||!t||Su(pe)},wu=()=>{h&&(x=!1,s||Rr())},ef=()=>{h&&(x=!1,s||Rr())},Fs=()=>{x=!0,s||Rr()},Ls=()=>{x=!0,s||Rr()},dh=()=>{if(Ge.length===0)return;let pe=[...Ge];Ge=[];for(let{id:Le,fragmentNodeFunc:Ue,parentId:Ne,metadata:U,uniforms:Y,componentDefinition:ve,domCanvas:te}of pe)Ue&&en(Le,Ue,Ne,U,Y,ve,te)},Dm=async({canvas:pe,resizeTarget:Le,enablePerformanceTracking:Ue=!0,colorSpace:Ne="p3-linear",context:U,gpu:Y,forceFullFrameRate:ve=!1,observeElement:te=!0})=>{if(h||f)return;we=Ue,w=ve,g=Ne,ce(Ne),f=!0,_=new AbortController;let ye=_;try{if(t=pe,r=new yf,r.background=null,n=new gs(-1,1,1,-1,.1,10),n.position.z=1,n.lookAt(0,0,0),L=()=>{fh()},window.addEventListener("beforeunload",L),V=()=>{if(q>0&&ae>0){let Ft=q,Yt=ae;q=0,ae=0,X(Ft,Yt)}},window.addEventListener("resize",V,{passive:!0}),ye.signal.aborted)return;if(U){console.log("[Shaders] Using provided WebGL context"),e=new Rg({canvas:pe,context:U,antialias:!0,alpha:!0,depth:!1,stencil:!0,powerPreference:"high-performance"});let Ft=Yt=>{Yt.preventDefault(),Xe("webglcontextlost")};pe.addEventListener("webglcontextlost",Ft,!1),O=()=>{pe.removeEventListener("webglcontextlost",Ft,!1)}}else try{if(e=new Jf({canvas:pe,antialias:!0,alpha:!0,depth:!1,powerPreference:"high-performance"}),Y?.device&&Y?.adapter?await e.init({device:Y.device,adapter:Y.adapter}):await e.init(),ye.signal.aborted)return;try{let Ft=e.backend?.device;Ft?.lost&&typeof Ft.lost.then=="function"&&Ft.lost.then(Yt=>{Yt?.reason!=="destroyed"&&Xe(Yt?.message||Yt?.reason||"unknown")}).catch(()=>{})}catch(Ft){console.warn("[Shaders] could not attach WebGPU device.lost handler",Ft)}}catch(Ft){if(ye.signal.aborted)return;console.warn("[Shaders] WebGPU initialization failed, falling back to WebGL:",Ft);try{let Yt={canvas:pe,antialias:!0,alpha:!0,depth:!1,stencil:!0,powerPreference:"high-performance"};if(U&&(Yt.context=U),e=new Rg(Yt),ye.signal.aborted)return;let Wt=Nn=>{Nn.preventDefault(),Xe("webglcontextlost")};pe.addEventListener("webglcontextlost",Wt,!1),O=()=>{pe.removeEventListener("webglcontextlost",Wt,!1)}}catch(Yt){if(ye.signal.aborted)return;console.error("[Shaders] Both WebGPU and WebGL initialization failed:",Yt);return}}if(ye.signal.aborted)return;if(e.setPixelRatio(Math.min(window.devicePixelRatio,2)),e.outputColorSpace=lr,o=new hm({transparent:!0}),o.fragmentNode=F(0,0,0,0),i=new Hr(new Ya(2,2),o),r.add(i),te){let Ft=Le??pe.parentElement;Ft?(u=new ResizeObserver(nt),u.observe(Ft)):console.warn("[Shaders] No element available for resize observation \u2014 use resize() manually"),d=new IntersectionObserver(Ct,{threshold:0}),d.observe(pe)}let je=pe.getBoundingClientRect();T=je,b=!te||je.width>0&&je.height>0&&je.top<window.innerHeight&&je.bottom>0&&je.left<window.innerWidth&&je.right>0,S=!0;let $e=je.width>0?je.width:pe.width,ft=je.height>0?je.height:pe.height,ht=Math.round($e),He=Math.round(ft);if(ht>0&&He>0){q=ht,ae=He;let{width:Ft,height:Yt}=ct(ht,He);v=Ft,E=Yt,y=!0,e.setSize(Ft,Yt,!1);let Wt=Ft/Yt,Nn=2,ar=Nn*Wt;n.left=-ar/2,n.right=ar/2,n.top=Nn/2,n.bottom=-Nn/2,n.updateProjectionMatrix(),i.scale.set(ar,Nn,1),Rr()}else y=!1;if(S&&Ds(),!ye.signal.aborted){try{if(e.backend?.isWebGPUBackend===!0){let Ft=e.backend?.device?.limits?.maxTextureDimension2D;typeof Ft=="number"&&Ft>0&&(Z=Ft)}else{let Ft=e.capabilities?.maxTextureSize;typeof Ft=="number"&&Ft>0&&(Z=Ft)}}catch{}if(q>0&&ae>0){let Ft=q,Yt=ae;q=0,ae=0,X(Ft,Yt)}h=!0,et=!0,dh()}}catch(je){console.error("[Shaders] Initialization error:",je)}finally{f=!1,_===ye&&(_=null)}},fh=()=>{if(_&&_.abort(),u&&(u.disconnect(),u=null),d&&(d.disconnect(),d=null),D&&(D(),D=null),O&&(O(),O=null),t&&(t.removeEventListener("mousedown",Fs),t.removeEventListener("touchstart",Ls)),L&&(window.removeEventListener("beforeunload",L),L=null),V&&(window.removeEventListener("resize",V),V=null),Ua(),k(),be.forEach(pe=>{try{pe?.renderTarget?.dispose&&pe.renderTarget.dispose()}catch{}}),be.clear(),a.nodes.clear(),a.rootId=null,a.idToNodeId.clear(),l.clear(),Ge=[],et=!1,le!==null&&(cancelAnimationFrame(le),le=null),Be=null,Ke=!1,i){r&&r.remove(i);try{i.geometry&&typeof i.geometry.dispose=="function"&&i.geometry.dispose()}catch{}try{i.material instanceof ei&&typeof i.material.dispose=="function"&&i.material.dispose()}catch{}}if(e&&typeof e.dispose=="function")try{e.dispose()}catch{}t=null,e=null,n=null,r=null,i=null,o=null,h=!1,f=!1,y=!1,_=null,v=0,E=0,b=!1,S=!0,c=.5,m=.5,x=!1,B=!1,Ze=null,he=!1,Me=!1,Pe=null,We=!1};return{initialize:Dm,cleanup:fh,registerNode:en,removeNode:ze,updateUniformValue:ne,updateNodeMetadata:st,isInitialized:()=>h,resize:(pe,Le)=>{!e||!n||!i||X(pe,Le)},startAnimation:Ds,stopAnimation:Ua,renderAndWait:Fn,getPerformanceStats:Us,getNodeRegistry:()=>({nodes:new Map(a.nodes)}),getRendererType:()=>e?e instanceof Jf?"webgpu":"webgl":null,getInternalRenderer:()=>e??null,setForceFullFrameRate:pe=>{let Le=w;return w=pe,Le},setOnReady:pe=>{Ze=pe},setOnDeviceLost:pe=>{Pe=pe},__testing:{needsTransformation:tN,findChildNodes:Q,applyMaskIfNeeded:Ie,applyNodeTransformation:Qe,getNodeRegistry:()=>a,getParentToChildren:()=>l}}}var Y6,xve,Z6,bve,K6,_ve,J6,wve,Q6,Mve,e8,t8,$ve,tN,Yve,Zve,Jve,nN,pt=z(()=>{"use strict";gi();Dt();Li();Bi();ut();Y6=t=>_e(t.x.mul(1.2249401).sub(t.y.mul(.2249404)).sub(t.z.mul(0)),t.x.mul(-.0420569).add(t.y.mul(1.0420571)).add(t.z.mul(0)),t.x.mul(-.0196376).sub(t.y.mul(.0786361)).add(t.z.mul(1.0982735))),xve=t=>_e(t.x.mul(.8224621).add(t.y.mul(.177538)).add(t.z.mul(0)),t.x.mul(.0331941).add(t.y.mul(.9668058)).add(t.z.mul(0)),t.x.mul(.0170826).add(t.y.mul(.0723974)).add(t.z.mul(.9105199))),Z6=t=>{let e=t.x,n=t.y,r=t.z,i=e.mul(.4122214708).add(n.mul(.5363325363)).add(r.mul(.0514459929)),o=e.mul(.2119034982).add(n.mul(.6806995451).add(r.mul(.1073969566))),a=e.mul(.0883024619).add(n.mul(.2817188376)).add(r.mul(.6299787005)),l=Qi(i).mul(Bt(Et(i),p(1/3))),s=Qi(o).mul(Bt(Et(o),p(1/3))),u=Qi(a).mul(Bt(Et(a),p(1/3)));return _e(l.mul(.2104542553).add(s.mul(.793617785)).sub(u.mul(.0040720468)),l.mul(1.9779984951).sub(s.mul(2.428592205)).add(u.mul(.4505937099)),l.mul(.0259040371).add(s.mul(.7827717662)).sub(u.mul(.808675766)))},bve=t=>{let e=t.x,n=t.y,r=t.z,i=e.add(n.mul(.3963377774)).add(r.mul(.2158037573)),o=e.sub(n.mul(.1055613458)).sub(r.mul(.0638541728)),a=e.sub(n.mul(.0894841775)).sub(r.mul(1.291485548)),l=Bt(i,p(3)),s=Bt(o,p(3)),u=Bt(a,p(3));return _e(l.mul(4.0767416621).sub(s.mul(3.3077115913)).add(u.mul(.2309699292)),l.mul(-1.2684380046).add(s.mul(2.6097574011)).sub(u.mul(.3413193965)),l.mul(-.0041960863).sub(s.mul(.7034186147)).add(u.mul(1.707614701)))},K6=t=>{let e=t.x,n=t.y,r=t.z;return _e(e,Sn(n.mul(n).add(r.mul(r))),Qn(r,n))},_ve=t=>{let e=t.x,n=t.y,r=t.z;return _e(e,n.mul(Ye(r)),n.mul(fe(r)))};J6=t=>_e(t.x.mul(1.2249401).sub(t.y.mul(.2249404)).sub(t.z.mul(0)),t.x.mul(-.0420569).add(t.y.mul(1.0420571)).add(t.z.mul(0)),t.x.mul(-.0196376).sub(t.y.mul(.0786361)).add(t.z.mul(1.0982735))),wve=t=>_e(t.x.mul(.8224621).add(t.y.mul(.177538)).add(t.z.mul(0)),t.x.mul(.0331941).add(t.y.mul(.9668058)).add(t.z.mul(0)),t.x.mul(.0170826).add(t.y.mul(.0723974)).add(t.z.mul(.9105199))),Q6=t=>{let e=t.x,n=t.y,r=t.z,i=e.mul(.4122214708).add(n.mul(.5363325363)).add(r.mul(.0514459929)),o=e.mul(.2119034982).add(n.mul(.6806995451).add(r.mul(.1073969566))),a=e.mul(.0883024619).add(n.mul(.2817188376)).add(r.mul(.6299787005)),l=Qi(i).mul(Bt(Et(i),p(1/3))),s=Qi(o).mul(Bt(Et(o),p(1/3))),u=Qi(a).mul(Bt(Et(a),p(1/3)));return _e(l.mul(.2104542553).add(s.mul(.793617785)).sub(u.mul(.0040720468)),l.mul(1.9779984951).sub(s.mul(2.428592205)).add(u.mul(.4505937099)),l.mul(.0259040371).add(s.mul(.7827717662)).sub(u.mul(.808675766)))},Mve=t=>{let e=t.x,n=t.y,r=t.z,i=e.add(n.mul(.3963377774)).add(r.mul(.2158037573)),o=e.sub(n.mul(.1055613458)).sub(r.mul(.0638541728)),a=e.sub(n.mul(.0894841775)).sub(r.mul(1.291485548)),l=Bt(i,p(3)),s=Bt(o,p(3)),u=Bt(a,p(3));return _e(l.mul(4.0767416621).sub(s.mul(3.3077115913)).add(u.mul(.2309699292)),l.mul(-1.2684380046).add(s.mul(2.6097574011)).sub(u.mul(.3413193965)),l.mul(-.0041960863).sub(s.mul(.7034186147)).add(u.mul(1.707614701)))};e8={normal:vve,"normal-oklch":Sve,"normal-oklab":Tve,multiply:Cve,screen:Eve,linearDodge:Rve,overlay:Ave,difference:Pve,colorDodge:Ive,exclusion:Nve,color:Ove,luminosity:Uve,darken:Dve,lighten:Fve,colorBurn:Lve,linearBurn:kve,softLight:Bve,hardLight:zve,hue:Vve,saturation:Gve};t8={alpha:Hve,alphaInverted:Wve,luminance:jve,luminanceInverted:qve};$ve=class{frameTimesMs=[];frameTimesIndex=0;frameTimesCount=0;maxSamples=60;targetFrameTime=16.67;jankFrameCount=0;totalFrameCount=0;memorySnapshots=[];memorySnapshotIndex=0;maxMemorySnapshots=300;nodeCount=0;rttNodeCount=0;lastCpuTime=null;lastGpuTime=null;isRendering=!1;lastFrameTimestamp=0;frameIntervals=[];frameIntervalsIndex=0;frameIntervalsCount=0;pushToCircularBuffer(t,e,n,r,i){return t.length<i?(t.push(e),{index:t.length,count:t.length}):(t[n%i]=e,{index:n+1,count:i})}getBufferValues(t,e){return e<=t.length?t.slice(0,e):t}recordFrame(t){let e=this.pushToCircularBuffer(this.frameTimesMs,t,this.frameTimesIndex,this.frameTimesCount,this.maxSamples);this.frameTimesIndex=e.index,this.frameTimesCount=e.count,this.totalFrameCount++,t>this.targetFrameTime&&this.jankFrameCount++;let n=performance.now();if(this.lastFrameTimestamp>0){let r=n-this.lastFrameTimestamp,i=this.pushToCircularBuffer(this.frameIntervals,r,this.frameIntervalsIndex,this.frameIntervalsCount,this.maxSamples);this.frameIntervalsIndex=i.index,this.frameIntervalsCount=i.count}this.lastFrameTimestamp=n,this.recordMemorySnapshot()}recordCpuTime(t){this.lastCpuTime=t}recordGpuTime(t){this.lastGpuTime=t}updateNodeCounts(t,e){this.nodeCount=t,this.rttNodeCount=e}setRendering(t){this.isRendering=t}recordMemorySnapshot(){if(!performance.memory)return;let t=performance.now(),e=performance.memory.usedJSHeapSize;if(this.memorySnapshots.length<this.maxMemorySnapshots)this.memorySnapshots.push({time:t,bytes:e});else{let n=this.memorySnapshots[this.memorySnapshotIndex];n.time=t,n.bytes=e,this.memorySnapshotIndex=(this.memorySnapshotIndex+1)%this.maxMemorySnapshots}}calculateMemoryGrowthRate(){if(this.memorySnapshots.length<2)return null;let t=this.memorySnapshots.length,e=t<this.maxMemorySnapshots?0:this.memorySnapshotIndex,n=t<this.maxMemorySnapshots?t-1:(this.memorySnapshotIndex-1+t)%t,r=this.memorySnapshots[e],i=this.memorySnapshots[n],o=(i.time-r.time)/1e3;return o<=0?null:(i.bytes-r.bytes)/(1024*1024)/o}calculateStdDev(t){if(t.length===0)return 0;let e=t.reduce((r,i)=>r+i,0)/t.length,n=0;for(let r=0;r<t.length;r++){let i=t[r]-e;n+=i*i}return Math.sqrt(n/t.length)}sortBuffer=[];calculateP99(t){let e=t.length;if(e===0)return 0;for(;this.sortBuffer.length<e;)this.sortBuffer.push(0);for(let r=0;r<e;r++)this.sortBuffer[r]=t[r];for(let r=1;r<e;r++){let i=this.sortBuffer[r],o=r-1;for(;o>=0&&this.sortBuffer[o]>i;)this.sortBuffer[o+1]=this.sortBuffer[o],o--;this.sortBuffer[o+1]=i}let n=Math.floor(e*.99);return this.sortBuffer[Math.min(n,e-1)]}calculateComplexityScore(){return this.nodeCount+this.rttNodeCount*10}calculateIntensityScore(){let t=this.getBufferValues(this.frameTimesMs,this.frameTimesCount),e=t.length;if(e===0)return{score:0,label:"N/A"};let n=t.reduce((d,h)=>d+h,0)/e,r=Math.min(n/16.67*100,100),i=this.calculateComplexityScore(),o=Math.min(i/100*100,100),a=0;this.lastGpuTime!==null&&(a=Math.min(this.lastGpuTime/16.67*100,100));let l=this.lastGpuTime!==null?{frame:.4,gpu:.4,complexity:.2}:{frame:.7,gpu:0,complexity:.3},s=Math.round(r*l.frame+a*l.gpu+o*l.complexity),u;return s<=20?u="Very Light":s<=40?u="Light":s<=60?u="Medium":s<=80?u="Heavy":u="Very Heavy",{score:Math.min(s,100),label:u}}getStats(t){let e=this.getBufferValues(this.frameTimesMs,this.frameTimesCount),n=this.getBufferValues(this.frameIntervals,this.frameIntervalsCount),r=e.length,i=n.length>0?1e3/(n.reduce((v,E)=>v+E,0)/n.length):0,o=r>0?e.reduce((v,E)=>v+E,0)/r:0,a=r>0?Math.min(...e):0,l=r>0?Math.max(...e):0,s=this.calculateP99(e),u=this.calculateStdDev(e),d=this.totalFrameCount>0?this.jankFrameCount/this.totalFrameCount*100:0,h=performance.memory,f=h?h.usedJSHeapSize/(1024*1024):null,g=this.calculateMemoryGrowthRate(),y=o>0?o/this.targetFrameTime*100:0,_=t?.render?.calls??null,b=t?.programs?.length??null,S=t?.memory?.textures??null,w=this.calculateIntensityScore();return{fps:Math.round(i),avgFrameTime:Math.round(o*100)/100,minFrameTime:Math.round(a*100)/100,maxFrameTime:Math.round(l*100)/100,p99FrameTime:Math.round(s*100)/100,stdDevFrameTime:Math.round(u*100)/100,jankCount:this.jankFrameCount,jankPercent:Math.round(d*10)/10,nodeCount:this.nodeCount,rttNodeCount:this.rttNodeCount,complexityScore:this.calculateComplexityScore(),memoryUsedMB:f!==null?Math.round(f*100)/100:null,memoryGrowthRate:g!==null?Math.round(g*1e3)/1e3:null,cpuTime:this.lastCpuTime!==null?Math.round(this.lastCpuTime*100)/100:null,gpuTime:this.lastGpuTime!==null?Math.round(this.lastGpuTime*100)/100:null,budgetUsed:Math.round(y*10)/10,drawCalls:_,shaderPrograms:b,textureCount:S,intensityScore:w.score,intensityLabel:w.label,isRendering:this.isRendering}}reset(){this.frameTimesMs.length=0,this.frameTimesIndex=0,this.frameTimesCount=0,this.frameIntervals.length=0,this.frameIntervalsIndex=0,this.frameIntervalsCount=0,this.lastFrameTimestamp=0,this.jankFrameCount=0,this.totalFrameCount=0,this.memorySnapshots.length=0,this.memorySnapshotIndex=0,this.sortBuffer.length=0,this.lastCpuTime=null,this.lastGpuTime=null}},tN=t=>t?t.offsetX!==0||t.offsetY!==0||t.rotation!==0||t.scale!==1||t.anchorX!==.5||t.anchorY!==.5:!1,Yve=(t,e,n,r,i,o,a,l)=>{let s=r.mul(ci).div(p(180)),u=Ye(s),d=fe(s),h=I(o,a),f=t.sub(h).div(i),g=I(f.x.mul(l),f.y),y=I(g.x.mul(u).sub(g.y.mul(d)),g.x.mul(d).add(g.y.mul(u)));return I(y.x.div(l),y.y).sub(I(e,n)).add(h)},Zve=new Map([[Ce,OI],[wt,UI]]);Jve=(()=>{let t=0,e=new Set,n=a=>{e.forEach(l=>{try{l.onMouseMove(a)}catch(s){console.error("[Shaders] Error in mouse move handler:",s)}})},r=a=>{e.forEach(l=>{try{l.onTouchMove(a)}catch(s){console.error("[Shaders] Error in touch move handler:",s)}})},i=()=>{e.forEach(a=>{try{a.onMouseUp()}catch(l){console.error("[Shaders] Error in mouse up handler:",l)}})},o=()=>{e.forEach(a=>{try{a.onTouchEnd()}catch(l){console.error("[Shaders] Error in touch end handler:",l)}})};return{register(a){return e.add(a),t++,t===1&&(window.addEventListener("mousemove",n),window.addEventListener("touchmove",r),window.addEventListener("mouseup",i),window.addEventListener("touchend",o)),()=>{e.delete(a),t--,t===0&&(window.removeEventListener("mousemove",n),window.removeEventListener("touchmove",r),window.removeEventListener("mouseup",i),window.removeEventListener("touchend",o))}}}})(),nN=(t,e,n,r,i,o)=>{if(r===0&&i===0)return[n,0];let a=200*Math.pow(.01,r),l=2*Math.sqrt(a)*(1-i*.85),s=e+(a*(n-t)-l*e)*o;return[t+s*o,s]}});var gt=z(()=>{"use strict";Dt()});function Qve(t){return t.includes("Edg/")||t.includes("EdgiOS")?"Edge":t.includes("OPR/")||t.includes("Opera/")?"Opera":t.includes("Chrome/")||t.includes("CriOS")?"Chrome":t.includes("Firefox/")||t.includes("FxiOS")?"Firefox":t.includes("Safari/")&&!t.includes("Chrome")?"Safari":"Other"}function exe(t){return/iPad|Tablet|PlayBook/i.test(t)||/Android/i.test(t)&&!/Mobile/i.test(t)?"tablet":/Mobile|Android|webOS|iPhone|iPod|BlackBerry|IEMobile|Opera Mini/i.test(t)?"mobile":"desktop"}function txe(){if(typeof window>"u"||typeof navigator>"u")return{domain:"unknown",browserFamily:"unknown",deviceType:"unknown"};let t=navigator.userAgent;return{domain:window.location.hostname,browserFamily:Qve(t),deviceType:exe(t)}}function rxe(t=!1,e=!1){return t||typeof navigator<"u"&&navigator.doNotTrack==="1"?!1:e?!0:Math.random()<ah.samplingRate}function r8(t,e,n=!1,r=!1){return rxe(n,r)?new nxe(t,e,r?"preview":"shader"):null}function i8(){if(typeof window>"u"||!window.location)return!1;let t=window.location.hostname;return!t.includes("shaders.com")&&t!=="localhost"&&t!=="127.0.0.1"}var ah,nxe,o8=z(()=>{"use strict";ah={samplingRate:.05,collectionDuration:5e3,warmupDuration:500,sampleInterval:500,apiEndpoint:"https://shaders.com/api/telemetry"};nxe=class{renderer;version;sourceType;sessionId;frameSamples=[];sampleInterval=null;stopped=!1;constructor(t,e,n){this.renderer=t,this.version=e,this.sourceType=n,this.sessionId=`tel_${Date.now()}_${Math.random().toString(36).substring(2,9)}`}stop(){this.stopped=!0,this.sampleInterval&&(clearInterval(this.sampleInterval),this.sampleInterval=null)}async start(){try{if(await this.sleep(ah.warmupDuration),this.stopped||(this.sampleInterval=setInterval(()=>{if(!this.stopped)try{let t=this.renderer.getPerformanceStats();this.frameSamples.push(t)}catch(t){console.error("Telemetry sampling error:",t)}},ah.sampleInterval),await this.sleep(ah.collectionDuration-ah.warmupDuration),this.stopped))return;if(this.sampleInterval&&(clearInterval(this.sampleInterval),this.sampleInterval=null),!this.stopped&&this.frameSamples.length>=5){let t=this.aggregateData();await this.sendTelemetry(t)}}catch(t){console.error("Telemetry collection error:",t)}}sleep(t){return new Promise(e=>setTimeout(e,t))}aggregateData(){let t=this.aggregatePerformance(),e=this.detectRendererType(),n=this.extractComponents(),r=txe();return{sessionId:this.sessionId,timestamp:Date.now(),collectionDuration:ah.collectionDuration,version:this.version,sourceType:this.sourceType,performance:t,renderer:e,components:n,environment:r}}aggregatePerformance(){if(this.frameSamples.length===0)return{fps:0,frameTime:{avg:0,min:0,max:0,p99:0},jankPercent:0,budgetUsed:0};let t=this.frameSamples.map(h=>h.avgFrameTime),e=this.frameSamples.map(h=>h.jankPercent),n=this.frameSamples.map(h=>h.budgetUsed),r=this.frameSamples.map(h=>h.fps),i=this.calculateMedian(r),o=this.calculateMean(t),a=Math.min(...t),l=Math.max(...t),s=this.calculatePercentile(t,99),u=this.calculateMean(e),d=this.calculateMean(n);return{fps:Math.round(i*10)/10,frameTime:{avg:Math.round(o*10)/10,min:Math.round(a*10)/10,max:Math.round(l*10)/10,p99:Math.round(s*10)/10},jankPercent:Math.round(u*10)/10,budgetUsed:Math.round(d*10)/10}}detectRendererType(){let t=this.frameSamples[this.frameSamples.length-1];return{type:this.renderer.getRendererType?.()||"webgl",drawCalls:t?.drawCalls??null,textureCount:t?.textureCount??null}}extractComponents(){try{let t=this.renderer.getNodeRegistry(),e=[];for(let[n,r]of t.nodes)r.parentId!==null&&e.push({name:r.componentName,requiresRTT:r.requiresRTT,renderOrder:r.metadata.renderOrder});return e.sort((n,r)=>n.renderOrder-r.renderOrder)}catch(t){return console.error("Failed to extract components:",t),[]}}async sendTelemetry(t){try{let e=await fetch(ah.apiEndpoint,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});e.ok||console.warn("Telemetry send failed:",e.status,e.statusText)}catch(e){console.error("Telemetry send error:",e)}}calculateMean(t){return t.length===0?0:t.reduce((e,n)=>e+n,0)/t.length}calculateMedian(t){if(t.length===0)return 0;let e=[...t].sort((r,i)=>r-i),n=Math.floor(e.length/2);return e.length%2===0?(e[n-1]+e[n])/2:e[n]}calculatePercentile(t,e){if(t.length===0)return 0;let n=[...t].sort((i,o)=>i-o),r=Math.ceil(e/100*n.length)-1;return n[Math.max(0,r)]}}});import{createContext as ixe,useEffect as rN,useId as oxe,useMemo as Vg,useRef as $o}from"react";import{jsx as s8,jsxs as sxe}from"react/jsx-runtime";var G,iN,axe,mt=z(()=>{"use strict";pt();gt();ut();o8();G=ixe(null),iN=({children:t,disableTelemetry:e=!1,colorSpace:n="p3-linear",isPreview:r=!1,onReady:i,style:o={},className:a="",...l})=>{let s=$o(null),u=$o(null),d=oxe(),h=Vg(()=>"shader-root-"+d.replace(/[^a-zA-Z0-9_]/g,""),[d]),f=$o(null);f.current===null&&(f.current=n8());let g=$o(i);g.current=i,rN(()=>(f.current.setOnReady(()=>g.current?.()),()=>{f.current.setOnReady(null)}),[]);let y=$o(null),_=$o(null),b=$o(null),S=Vg(()=>(D,O,L,V,Z=null,q=null,ae)=>{if(O===null){try{f.current.removeNode(D)}catch(we){console.warn("Error removing node:",we)}return}try{f.current.registerNode(D,O,L,V,Z,q,ae)}catch(we){console.error("Error registering node:",we,{id:D,parentId:L,metadata:V})}},[]),w=Vg(()=>(D,O,L)=>{try{f.current.updateUniformValue(D,O,L)}catch(V){console.warn("Error updating uniform:",V)}},[]),v=Vg(()=>(D,O)=>{try{f.current.updateNodeMetadata(D,O)}catch(L){console.warn("Error updating metadata:",L)}},[]),E=Vg(()=>({shaderParentId:h,shaderNodeRegister:S,shaderUniformUpdate:w,shaderMetadataUpdate:v,shaderColorSpace:n}),[h,S,w,v,n]),C=$o(!1),M=$o(!1),R=$o(!1),c=$o(!1),m=$o(null),x=()=>{let D=()=>{if(R.current||!f.current){_.current=null;return}f.current.getPerformanceStats().fps>0?(y.current=r8(f.current,"2.5.122",e,r),y.current&&y.current.start(),_.current=null):_.current=window.setTimeout(D,500)};_.current=window.setTimeout(D,500)},T=async()=>{let D=u.current;if(!(!D||C.current||M.current)){M.current=!0;try{let O=f.current;O.isInitialized()||await O.initialize({canvas:D,colorSpace:n}),O.registerNode(h,({childNode:L})=>L||F(0,0,0,0),null,null,{}),C.current=!0,M.current=!1,b.current===null&&(b.current=i8()),b.current&&!y.current&&x()}catch(O){throw console.error("[Shader] Initialization failed:",O),M.current=!1,O}}},N=()=>{let D=s.current;!D||m.current||(m.current=new IntersectionObserver(O=>{let L=O[0];if(!L)return;let V=D.getBoundingClientRect(),Z=L.isIntersecting&&V&&V.width>0&&V.height>0;Z&&!c.current?(f.current.isInitialized()?(f.current.startAnimation(),b.current&&!y.current&&!_.current&&x()):T().catch(console.error),c.current=!0):!Z&&c.current&&(f.current.stopAnimation(),c.current=!1)},{threshold:0}),m.current.observe(D))};rN(()=>{R.current=!1;let D=s.current;if(!D)return;let O=D.getBoundingClientRect();return O.width>0&&O.height>0?(T().catch(console.error),c.current=!0):c.current=!1,N(),()=>{if(!R.current){if(R.current=!0,y.current&&(y.current.stop(),y.current=null),_.current!==null&&(clearTimeout(_.current),_.current=null),m.current&&(m.current.disconnect(),m.current=null),f.current&&C.current)try{f.current.cleanup()}catch(L){console.warn("[Shader] Error during cleanup:",L)}C.current=!1,M.current=!1}}},[]);let B=$o(!0);return rN(()=>{if(B.current){B.current=!1;return}if(f.current&&C.current){ce(n);try{f.current.cleanup(),C.current=!1,T().catch(console.error)}catch(D){console.error("[Shader] Error updating colorSpace:",D)}}},[n]),s8(G.Provider,{value:E,children:sxe("div",{ref:s,className:"shader"+(a?" "+a:""),style:o,...l,children:[s8("canvas",{"data-renderer":"shaders",ref:u,style:{width:"100%",height:"100%",display:"block"}}),t]})})},axe=iN});var a8=z(()=>{"use strict";iG()});var h8={};yt(h8,{ShaderComponent:()=>d8,default:()=>f8});import{useContext as cxe,useEffect as Gg,useId as lxe,useMemo as Hg,useRef as Wg,useState as c8}from"react";import{createPortal as uxe}from"react-dom";import{jsx as l8,jsxs as dxe}from"react/jsx-runtime";function oN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function fxe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!oN(i)&&(n[r]=i);return n}var hxe,mxe,u8,d8,f8,sN=z(()=>{"use strict";mt();pt();gt();a8();hxe={display:"contents"},mxe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},u8={blendMode:"normal",visible:!0};try{pc&&pc.props&&Object.entries(pc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(u8[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}d8=t=>{let e=cxe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=lxe(),s=Hg(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Hg(()=>fxe(t,u8),[t]),d=Hg(()=>({...mxe,...t.transform}),[t.transform]),h=Wg(null),f=!!pc.capturesDOM,g=Wg(null),[y,_]=c8(!1),[b,S]=c8(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Gg(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Wg(void 0),v=Wg(null);v.current===null&&(ce(a),v.current=ue(pc,u,s));let E=Hg(()=>({...e,shaderParentId:s}),[e,s]);Gg(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,pc.fragmentNode,n,c,v.current,pc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Gg(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Wg({}),M=Hg(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&oN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Gg(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(oN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Gg(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?uxe(l8("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return dxe(G.Provider,{value:E,children:[l8("span",{ref:h,style:hxe,"data-shader-id":s,children:!f&&t.children}),R]})},f8=d8});var m8=z(()=>{"use strict";oG()});var b8={};yt(b8,{ShaderComponent:()=>v8,default:()=>x8});import{useContext as pxe,useEffect as jg,useId as gxe,useMemo as qg,useRef as Xg,useState as p8}from"react";import{createPortal as yxe}from"react-dom";import{jsx as g8,jsxs as vxe}from"react/jsx-runtime";function aN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function xxe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!aN(i)&&(n[r]=i);return n}var bxe,_xe,y8,v8,x8,cN=z(()=>{"use strict";mt();pt();gt();m8();bxe={display:"contents"},_xe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},y8={blendMode:"normal",visible:!0};try{Yr&&Yr.props&&Object.entries(Yr.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(y8[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}v8=t=>{let e=pxe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=gxe(),s=qg(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=qg(()=>xxe(t,y8),[t]),d=qg(()=>({..._xe,...t.transform}),[t.transform]),h=Xg(null),f=!!Yr.capturesDOM,g=Xg(null),[y,_]=p8(!1),[b,S]=p8(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));jg(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Xg(void 0),v=Xg(null);v.current===null&&(ce(a),v.current=ue(Yr,u,s));let E=qg(()=>({...e,shaderParentId:s}),[e,s]);jg(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Yr.fragmentNode,n,c,v.current,Yr,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),jg(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Xg({}),M=qg(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&aN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(jg(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(aN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),jg(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?yxe(g8("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return vxe(G.Provider,{value:E,children:[g8("span",{ref:h,style:bxe,"data-shader-id":s,children:!f&&t.children}),R]})},x8=v8});var _8=z(()=>{"use strict";gG()});var E8={};yt(E8,{ShaderComponent:()=>T8,default:()=>C8});import{useContext as Sxe,useEffect as $g,useId as wxe,useMemo as Yg,useRef as Zg,useState as S8}from"react";import{createPortal as Mxe}from"react-dom";import{jsx as w8,jsxs as Txe}from"react/jsx-runtime";function lN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Cxe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!lN(i)&&(n[r]=i);return n}var Exe,Rxe,M8,T8,C8,uN=z(()=>{"use strict";mt();pt();gt();_8();Exe={display:"contents"},Rxe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},M8={blendMode:"normal",visible:!0};try{gc&&gc.props&&Object.entries(gc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(M8[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}T8=t=>{let e=Sxe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=wxe(),s=Yg(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Yg(()=>Cxe(t,M8),[t]),d=Yg(()=>({...Rxe,...t.transform}),[t.transform]),h=Zg(null),f=!!gc.capturesDOM,g=Zg(null),[y,_]=S8(!1),[b,S]=S8(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));$g(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Zg(void 0),v=Zg(null);v.current===null&&(ce(a),v.current=ue(gc,u,s));let E=Yg(()=>({...e,shaderParentId:s}),[e,s]);$g(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,gc.fragmentNode,n,c,v.current,gc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),$g(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Zg({}),M=Yg(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&lN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if($g(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(lN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),$g(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Mxe(w8("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Txe(G.Provider,{value:E,children:[w8("span",{ref:h,style:Exe,"data-shader-id":s,children:!f&&t.children}),R]})},C8=T8});var R8=z(()=>{"use strict";yG()});var U8={};yt(U8,{ShaderComponent:()=>N8,default:()=>O8});import{useContext as Axe,useEffect as Kg,useId as Pxe,useMemo as Jg,useRef as Qg,useState as A8}from"react";import{createPortal as Ixe}from"react-dom";import{jsx as P8,jsxs as Nxe}from"react/jsx-runtime";function dN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Oxe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!dN(i)&&(n[r]=i);return n}var Uxe,Dxe,I8,N8,O8,fN=z(()=>{"use strict";mt();pt();gt();R8();Uxe={display:"contents"},Dxe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},I8={blendMode:"normal",visible:!0};try{yc&&yc.props&&Object.entries(yc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(I8[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}N8=t=>{let e=Axe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Pxe(),s=Jg(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Jg(()=>Oxe(t,I8),[t]),d=Jg(()=>({...Dxe,...t.transform}),[t.transform]),h=Qg(null),f=!!yc.capturesDOM,g=Qg(null),[y,_]=A8(!1),[b,S]=A8(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Kg(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Qg(void 0),v=Qg(null);v.current===null&&(ce(a),v.current=ue(yc,u,s));let E=Jg(()=>({...e,shaderParentId:s}),[e,s]);Kg(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,yc.fragmentNode,n,c,v.current,yc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Kg(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Qg({}),M=Jg(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&dN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Kg(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(dN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Kg(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Ixe(P8("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Nxe(G.Provider,{value:E,children:[P8("span",{ref:h,style:Uxe,"data-shader-id":s,children:!f&&t.children}),R]})},O8=N8});var D8=z(()=>{"use strict";vG()});var V8={};yt(V8,{ShaderComponent:()=>B8,default:()=>z8});import{useContext as Fxe,useEffect as e0,useId as Lxe,useMemo as t0,useRef as n0,useState as F8}from"react";import{createPortal as kxe}from"react-dom";import{jsx as L8,jsxs as Bxe}from"react/jsx-runtime";function hN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function zxe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!hN(i)&&(n[r]=i);return n}var Vxe,Gxe,k8,B8,z8,mN=z(()=>{"use strict";mt();pt();gt();D8();Vxe={display:"contents"},Gxe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},k8={blendMode:"normal",visible:!0};try{vc&&vc.props&&Object.entries(vc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(k8[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}B8=t=>{let e=Fxe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Lxe(),s=t0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=t0(()=>zxe(t,k8),[t]),d=t0(()=>({...Gxe,...t.transform}),[t.transform]),h=n0(null),f=!!vc.capturesDOM,g=n0(null),[y,_]=F8(!1),[b,S]=F8(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));e0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=n0(void 0),v=n0(null);v.current===null&&(ce(a),v.current=ue(vc,u,s));let E=t0(()=>({...e,shaderParentId:s}),[e,s]);e0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,vc.fragmentNode,n,c,v.current,vc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),e0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=n0({}),M=t0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&hN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(e0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(hN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),e0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?kxe(L8("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Bxe(G.Provider,{value:E,children:[L8("span",{ref:h,style:Vxe,"data-shader-id":s,children:!f&&t.children}),R]})},z8=B8});var G8=z(()=>{"use strict";xG()});var $8={};yt($8,{ShaderComponent:()=>q8,default:()=>X8});import{useContext as Hxe,useEffect as r0,useId as Wxe,useMemo as i0,useRef as o0,useState as H8}from"react";import{createPortal as jxe}from"react-dom";import{jsx as W8,jsxs as qxe}from"react/jsx-runtime";function pN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Xxe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!pN(i)&&(n[r]=i);return n}var $xe,Yxe,j8,q8,X8,gN=z(()=>{"use strict";mt();pt();gt();G8();$xe={display:"contents"},Yxe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},j8={blendMode:"normal",visible:!0};try{xc&&xc.props&&Object.entries(xc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(j8[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}q8=t=>{let e=Hxe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Wxe(),s=i0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=i0(()=>Xxe(t,j8),[t]),d=i0(()=>({...Yxe,...t.transform}),[t.transform]),h=o0(null),f=!!xc.capturesDOM,g=o0(null),[y,_]=H8(!1),[b,S]=H8(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));r0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=o0(void 0),v=o0(null);v.current===null&&(ce(a),v.current=ue(xc,u,s));let E=i0(()=>({...e,shaderParentId:s}),[e,s]);r0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,xc.fragmentNode,n,c,v.current,xc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),r0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=o0({}),M=i0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&pN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(r0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(pN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),r0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?jxe(W8("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return qxe(G.Provider,{value:E,children:[W8("span",{ref:h,style:$xe,"data-shader-id":s,children:!f&&t.children}),R]})},X8=q8});var Y8=z(()=>{"use strict";_G()});var tH={};yt(tH,{ShaderComponent:()=>Q8,default:()=>eH});import{useContext as Zxe,useEffect as s0,useId as Kxe,useMemo as a0,useRef as c0,useState as Z8}from"react";import{createPortal as Jxe}from"react-dom";import{jsx as K8,jsxs as Qxe}from"react/jsx-runtime";function yN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function ebe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!yN(i)&&(n[r]=i);return n}var tbe,nbe,J8,Q8,eH,vN=z(()=>{"use strict";mt();pt();gt();Y8();tbe={display:"contents"},nbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},J8={blendMode:"normal",visible:!0};try{bc&&bc.props&&Object.entries(bc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(J8[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Q8=t=>{let e=Zxe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Kxe(),s=a0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=a0(()=>ebe(t,J8),[t]),d=a0(()=>({...nbe,...t.transform}),[t.transform]),h=c0(null),f=!!bc.capturesDOM,g=c0(null),[y,_]=Z8(!1),[b,S]=Z8(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));s0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=c0(void 0),v=c0(null);v.current===null&&(ce(a),v.current=ue(bc,u,s));let E=a0(()=>({...e,shaderParentId:s}),[e,s]);s0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,bc.fragmentNode,n,c,v.current,bc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),s0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=c0({}),M=a0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&yN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(s0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(yN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),s0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Jxe(K8("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Qxe(G.Provider,{value:E,children:[K8("span",{ref:h,style:tbe,"data-shader-id":s,children:!f&&t.children}),R]})},eH=Q8});var nH=z(()=>{"use strict";SG()});var cH={};yt(cH,{ShaderComponent:()=>sH,default:()=>aH});import{useContext as rbe,useEffect as l0,useId as ibe,useMemo as u0,useRef as d0,useState as rH}from"react";import{createPortal as obe}from"react-dom";import{jsx as iH,jsxs as sbe}from"react/jsx-runtime";function xN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function abe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!xN(i)&&(n[r]=i);return n}var cbe,lbe,oH,sH,aH,bN=z(()=>{"use strict";mt();pt();gt();nH();cbe={display:"contents"},lbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},oH={blendMode:"normal",visible:!0};try{_c&&_c.props&&Object.entries(_c.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(oH[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}sH=t=>{let e=rbe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=ibe(),s=u0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=u0(()=>abe(t,oH),[t]),d=u0(()=>({...lbe,...t.transform}),[t.transform]),h=d0(null),f=!!_c.capturesDOM,g=d0(null),[y,_]=rH(!1),[b,S]=rH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));l0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=d0(void 0),v=d0(null);v.current===null&&(ce(a),v.current=ue(_c,u,s));let E=u0(()=>({...e,shaderParentId:s}),[e,s]);l0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,_c.fragmentNode,n,c,v.current,_c,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),l0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=d0({}),M=u0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&xN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(l0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(xN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),l0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?obe(iH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return sbe(G.Provider,{value:E,children:[iH("span",{ref:h,style:cbe,"data-shader-id":s,children:!f&&t.children}),R]})},aH=sH});var lH=z(()=>{"use strict";wG()});var pH={};yt(pH,{ShaderComponent:()=>hH,default:()=>mH});import{useContext as ube,useEffect as f0,useId as dbe,useMemo as h0,useRef as m0,useState as uH}from"react";import{createPortal as fbe}from"react-dom";import{jsx as dH,jsxs as hbe}from"react/jsx-runtime";function _N(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function mbe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!_N(i)&&(n[r]=i);return n}var pbe,gbe,fH,hH,mH,SN=z(()=>{"use strict";mt();pt();gt();lH();pbe={display:"contents"},gbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},fH={blendMode:"normal",visible:!0};try{Sc&&Sc.props&&Object.entries(Sc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(fH[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}hH=t=>{let e=ube(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=dbe(),s=h0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=h0(()=>mbe(t,fH),[t]),d=h0(()=>({...gbe,...t.transform}),[t.transform]),h=m0(null),f=!!Sc.capturesDOM,g=m0(null),[y,_]=uH(!1),[b,S]=uH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));f0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=m0(void 0),v=m0(null);v.current===null&&(ce(a),v.current=ue(Sc,u,s));let E=h0(()=>({...e,shaderParentId:s}),[e,s]);f0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Sc.fragmentNode,n,c,v.current,Sc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),f0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=m0({}),M=h0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&_N(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(f0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(_N(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),f0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?fbe(dH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return hbe(G.Provider,{value:E,children:[dH("span",{ref:h,style:pbe,"data-shader-id":s,children:!f&&t.children}),R]})},mH=hH});var gH=z(()=>{"use strict";MG()});var SH={};yt(SH,{ShaderComponent:()=>bH,default:()=>_H});import{useContext as ybe,useEffect as p0,useId as vbe,useMemo as g0,useRef as y0,useState as yH}from"react";import{createPortal as xbe}from"react-dom";import{jsx as vH,jsxs as bbe}from"react/jsx-runtime";function wN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function _be(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!wN(i)&&(n[r]=i);return n}var Sbe,wbe,xH,bH,_H,MN=z(()=>{"use strict";mt();pt();gt();gH();Sbe={display:"contents"},wbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},xH={blendMode:"normal",visible:!0};try{wc&&wc.props&&Object.entries(wc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(xH[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}bH=t=>{let e=ybe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=vbe(),s=g0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=g0(()=>_be(t,xH),[t]),d=g0(()=>({...wbe,...t.transform}),[t.transform]),h=y0(null),f=!!wc.capturesDOM,g=y0(null),[y,_]=yH(!1),[b,S]=yH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));p0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=y0(void 0),v=y0(null);v.current===null&&(ce(a),v.current=ue(wc,u,s));let E=g0(()=>({...e,shaderParentId:s}),[e,s]);p0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,wc.fragmentNode,n,c,v.current,wc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),p0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=y0({}),M=g0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&wN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(p0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(wN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),p0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?xbe(vH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return bbe(G.Provider,{value:E,children:[vH("span",{ref:h,style:Sbe,"data-shader-id":s,children:!f&&t.children}),R]})},_H=bH});var wH=z(()=>{"use strict";LG()});var AH={};yt(AH,{ShaderComponent:()=>EH,default:()=>RH});import{useContext as Mbe,useEffect as v0,useId as Tbe,useMemo as x0,useRef as b0,useState as MH}from"react";import{createPortal as Cbe}from"react-dom";import{jsx as TH,jsxs as Ebe}from"react/jsx-runtime";function TN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Rbe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!TN(i)&&(n[r]=i);return n}var Abe,Pbe,CH,EH,RH,CN=z(()=>{"use strict";mt();pt();gt();wH();Abe={display:"contents"},Pbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},CH={blendMode:"normal",visible:!0};try{Fc&&Fc.props&&Object.entries(Fc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(CH[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}EH=t=>{let e=Mbe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Tbe(),s=x0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=x0(()=>Rbe(t,CH),[t]),d=x0(()=>({...Pbe,...t.transform}),[t.transform]),h=b0(null),f=!!Fc.capturesDOM,g=b0(null),[y,_]=MH(!1),[b,S]=MH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));v0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=b0(void 0),v=b0(null);v.current===null&&(ce(a),v.current=ue(Fc,u,s));let E=x0(()=>({...e,shaderParentId:s}),[e,s]);v0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Fc.fragmentNode,n,c,v.current,Fc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),v0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=b0({}),M=x0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&TN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(v0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(TN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),v0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Cbe(TH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Ebe(G.Provider,{value:E,children:[TH("span",{ref:h,style:Abe,"data-shader-id":s,children:!f&&t.children}),R]})},RH=EH});var PH=z(()=>{"use strict";TG()});var FH={};yt(FH,{ShaderComponent:()=>UH,default:()=>DH});import{useContext as Ibe,useEffect as _0,useId as Nbe,useMemo as S0,useRef as w0,useState as IH}from"react";import{createPortal as Obe}from"react-dom";import{jsx as NH,jsxs as Ube}from"react/jsx-runtime";function EN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Dbe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!EN(i)&&(n[r]=i);return n}var Fbe,Lbe,OH,UH,DH,RN=z(()=>{"use strict";mt();pt();gt();PH();Fbe={display:"contents"},Lbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},OH={blendMode:"normal",visible:!0};try{Mc&&Mc.props&&Object.entries(Mc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(OH[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}UH=t=>{let e=Ibe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Nbe(),s=S0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=S0(()=>Dbe(t,OH),[t]),d=S0(()=>({...Lbe,...t.transform}),[t.transform]),h=w0(null),f=!!Mc.capturesDOM,g=w0(null),[y,_]=IH(!1),[b,S]=IH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));_0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=w0(void 0),v=w0(null);v.current===null&&(ce(a),v.current=ue(Mc,u,s));let E=S0(()=>({...e,shaderParentId:s}),[e,s]);_0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Mc.fragmentNode,n,c,v.current,Mc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),_0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=w0({}),M=S0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&EN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(_0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(EN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),_0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Obe(NH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Ube(G.Provider,{value:E,children:[NH("span",{ref:h,style:Fbe,"data-shader-id":s,children:!f&&t.children}),R]})},DH=UH});var LH=z(()=>{"use strict";CG()});var HH={};yt(HH,{ShaderComponent:()=>VH,default:()=>GH});import{useContext as kbe,useEffect as M0,useId as Bbe,useMemo as T0,useRef as C0,useState as kH}from"react";import{createPortal as zbe}from"react-dom";import{jsx as BH,jsxs as Vbe}from"react/jsx-runtime";function AN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Gbe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!AN(i)&&(n[r]=i);return n}var Hbe,Wbe,zH,VH,GH,PN=z(()=>{"use strict";mt();pt();gt();LH();Hbe={display:"contents"},Wbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},zH={blendMode:"normal",visible:!0};try{Tc&&Tc.props&&Object.entries(Tc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(zH[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}VH=t=>{let e=kbe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Bbe(),s=T0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=T0(()=>Gbe(t,zH),[t]),d=T0(()=>({...Wbe,...t.transform}),[t.transform]),h=C0(null),f=!!Tc.capturesDOM,g=C0(null),[y,_]=kH(!1),[b,S]=kH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));M0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=C0(void 0),v=C0(null);v.current===null&&(ce(a),v.current=ue(Tc,u,s));let E=T0(()=>({...e,shaderParentId:s}),[e,s]);M0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Tc.fragmentNode,n,c,v.current,Tc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),M0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=C0({}),M=T0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&AN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(M0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(AN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),M0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?zbe(BH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Vbe(G.Provider,{value:E,children:[BH("span",{ref:h,style:Hbe,"data-shader-id":s,children:!f&&t.children}),R]})},GH=VH});var WH=z(()=>{"use strict";EG()});var ZH={};yt(ZH,{ShaderComponent:()=>$H,default:()=>YH});import{useContext as jbe,useEffect as E0,useId as qbe,useMemo as R0,useRef as A0,useState as jH}from"react";import{createPortal as Xbe}from"react-dom";import{jsx as qH,jsxs as $be}from"react/jsx-runtime";function IN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Ybe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!IN(i)&&(n[r]=i);return n}var Zbe,Kbe,XH,$H,YH,NN=z(()=>{"use strict";mt();pt();gt();WH();Zbe={display:"contents"},Kbe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},XH={blendMode:"normal",visible:!0};try{Cc&&Cc.props&&Object.entries(Cc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(XH[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}$H=t=>{let e=jbe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=qbe(),s=R0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=R0(()=>Ybe(t,XH),[t]),d=R0(()=>({...Kbe,...t.transform}),[t.transform]),h=A0(null),f=!!Cc.capturesDOM,g=A0(null),[y,_]=jH(!1),[b,S]=jH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));E0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=A0(void 0),v=A0(null);v.current===null&&(ce(a),v.current=ue(Cc,u,s));let E=R0(()=>({...e,shaderParentId:s}),[e,s]);E0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Cc.fragmentNode,n,c,v.current,Cc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),E0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=A0({}),M=R0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&IN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(E0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(IN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),E0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Xbe(qH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return $be(G.Provider,{value:E,children:[qH("span",{ref:h,style:Zbe,"data-shader-id":s,children:!f&&t.children}),R]})},YH=$H});var KH=z(()=>{"use strict";RG()});var rW={};yt(rW,{ShaderComponent:()=>tW,default:()=>nW});import{useContext as Jbe,useEffect as P0,useId as Qbe,useMemo as I0,useRef as N0,useState as JH}from"react";import{createPortal as e_e}from"react-dom";import{jsx as QH,jsxs as t_e}from"react/jsx-runtime";function ON(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function n_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!ON(i)&&(n[r]=i);return n}var r_e,i_e,eW,tW,nW,UN=z(()=>{"use strict";mt();pt();gt();KH();r_e={display:"contents"},i_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},eW={blendMode:"normal",visible:!0};try{Ec&&Ec.props&&Object.entries(Ec.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(eW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}tW=t=>{let e=Jbe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Qbe(),s=I0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=I0(()=>n_e(t,eW),[t]),d=I0(()=>({...i_e,...t.transform}),[t.transform]),h=N0(null),f=!!Ec.capturesDOM,g=N0(null),[y,_]=JH(!1),[b,S]=JH(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));P0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=N0(void 0),v=N0(null);v.current===null&&(ce(a),v.current=ue(Ec,u,s));let E=I0(()=>({...e,shaderParentId:s}),[e,s]);P0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ec.fragmentNode,n,c,v.current,Ec,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),P0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=N0({}),M=I0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&ON(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(P0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(ON(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),P0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?e_e(QH("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return t_e(G.Provider,{value:E,children:[QH("span",{ref:h,style:r_e,"data-shader-id":s,children:!f&&t.children}),R]})},nW=tW});var iW=z(()=>{"use strict";AG()});var uW={};yt(uW,{ShaderComponent:()=>cW,default:()=>lW});import{useContext as o_e,useEffect as O0,useId as s_e,useMemo as U0,useRef as D0,useState as oW}from"react";import{createPortal as a_e}from"react-dom";import{jsx as sW,jsxs as c_e}from"react/jsx-runtime";function DN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function l_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!DN(i)&&(n[r]=i);return n}var u_e,d_e,aW,cW,lW,FN=z(()=>{"use strict";mt();pt();gt();iW();u_e={display:"contents"},d_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},aW={blendMode:"normal",visible:!0};try{Rc&&Rc.props&&Object.entries(Rc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(aW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}cW=t=>{let e=o_e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=s_e(),s=U0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=U0(()=>l_e(t,aW),[t]),d=U0(()=>({...d_e,...t.transform}),[t.transform]),h=D0(null),f=!!Rc.capturesDOM,g=D0(null),[y,_]=oW(!1),[b,S]=oW(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));O0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=D0(void 0),v=D0(null);v.current===null&&(ce(a),v.current=ue(Rc,u,s));let E=U0(()=>({...e,shaderParentId:s}),[e,s]);O0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Rc.fragmentNode,n,c,v.current,Rc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),O0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=D0({}),M=U0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&DN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(O0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(DN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),O0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?a_e(sW("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return c_e(G.Provider,{value:E,children:[sW("span",{ref:h,style:u_e,"data-shader-id":s,children:!f&&t.children}),R]})},lW=cW});var dW=z(()=>{"use strict";PG()});var yW={};yt(yW,{ShaderComponent:()=>pW,default:()=>gW});import{useContext as f_e,useEffect as F0,useId as h_e,useMemo as L0,useRef as k0,useState as fW}from"react";import{createPortal as m_e}from"react-dom";import{jsx as hW,jsxs as p_e}from"react/jsx-runtime";function LN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function g_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!LN(i)&&(n[r]=i);return n}var y_e,v_e,mW,pW,gW,kN=z(()=>{"use strict";mt();pt();gt();dW();y_e={display:"contents"},v_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},mW={blendMode:"normal",visible:!0};try{Ac&&Ac.props&&Object.entries(Ac.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(mW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}pW=t=>{let e=f_e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=h_e(),s=L0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=L0(()=>g_e(t,mW),[t]),d=L0(()=>({...v_e,...t.transform}),[t.transform]),h=k0(null),f=!!Ac.capturesDOM,g=k0(null),[y,_]=fW(!1),[b,S]=fW(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));F0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=k0(void 0),v=k0(null);v.current===null&&(ce(a),v.current=ue(Ac,u,s));let E=L0(()=>({...e,shaderParentId:s}),[e,s]);F0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ac.fragmentNode,n,c,v.current,Ac,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),F0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=k0({}),M=L0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&LN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(F0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(LN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),F0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?m_e(hW("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return p_e(G.Provider,{value:E,children:[hW("span",{ref:h,style:y_e,"data-shader-id":s,children:!f&&t.children}),R]})},gW=pW});var vW=z(()=>{"use strict";IG()});var MW={};yt(MW,{ShaderComponent:()=>SW,default:()=>wW});import{useContext as x_e,useEffect as B0,useId as b_e,useMemo as z0,useRef as V0,useState as xW}from"react";import{createPortal as __e}from"react-dom";import{jsx as bW,jsxs as S_e}from"react/jsx-runtime";function BN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function w_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!BN(i)&&(n[r]=i);return n}var M_e,T_e,_W,SW,wW,zN=z(()=>{"use strict";mt();pt();gt();vW();M_e={display:"contents"},T_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},_W={blendMode:"normal",visible:!0};try{Pc&&Pc.props&&Object.entries(Pc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(_W[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}SW=t=>{let e=x_e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=b_e(),s=z0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=z0(()=>w_e(t,_W),[t]),d=z0(()=>({...T_e,...t.transform}),[t.transform]),h=V0(null),f=!!Pc.capturesDOM,g=V0(null),[y,_]=xW(!1),[b,S]=xW(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));B0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=V0(void 0),v=V0(null);v.current===null&&(ce(a),v.current=ue(Pc,u,s));let E=z0(()=>({...e,shaderParentId:s}),[e,s]);B0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Pc.fragmentNode,n,c,v.current,Pc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),B0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=V0({}),M=z0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&BN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(B0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(BN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),B0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?__e(bW("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return S_e(G.Provider,{value:E,children:[bW("span",{ref:h,style:M_e,"data-shader-id":s,children:!f&&t.children}),R]})},wW=SW});var TW=z(()=>{"use strict";NG()});var IW={};yt(IW,{ShaderComponent:()=>AW,default:()=>PW});import{useContext as C_e,useEffect as G0,useId as E_e,useMemo as H0,useRef as W0,useState as CW}from"react";import{createPortal as R_e}from"react-dom";import{jsx as EW,jsxs as A_e}from"react/jsx-runtime";function VN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function P_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!VN(i)&&(n[r]=i);return n}var I_e,N_e,RW,AW,PW,GN=z(()=>{"use strict";mt();pt();gt();TW();I_e={display:"contents"},N_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},RW={blendMode:"normal",visible:!0};try{Ic&&Ic.props&&Object.entries(Ic.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(RW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}AW=t=>{let e=C_e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=E_e(),s=H0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=H0(()=>P_e(t,RW),[t]),d=H0(()=>({...N_e,...t.transform}),[t.transform]),h=W0(null),f=!!Ic.capturesDOM,g=W0(null),[y,_]=CW(!1),[b,S]=CW(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));G0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=W0(void 0),v=W0(null);v.current===null&&(ce(a),v.current=ue(Ic,u,s));let E=H0(()=>({...e,shaderParentId:s}),[e,s]);G0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ic.fragmentNode,n,c,v.current,Ic,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),G0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=W0({}),M=H0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&VN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(G0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(VN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),G0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?R_e(EW("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return A_e(G.Provider,{value:E,children:[EW("span",{ref:h,style:I_e,"data-shader-id":s,children:!f&&t.children}),R]})},PW=AW});var NW=z(()=>{"use strict";OG()});var kW={};yt(kW,{ShaderComponent:()=>FW,default:()=>LW});import{useContext as O_e,useEffect as j0,useId as U_e,useMemo as q0,useRef as X0,useState as OW}from"react";import{createPortal as D_e}from"react-dom";import{jsx as UW,jsxs as F_e}from"react/jsx-runtime";function HN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function L_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!HN(i)&&(n[r]=i);return n}var k_e,B_e,DW,FW,LW,WN=z(()=>{"use strict";mt();pt();gt();NW();k_e={display:"contents"},B_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},DW={blendMode:"normal",visible:!0};try{Nc&&Nc.props&&Object.entries(Nc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(DW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}FW=t=>{let e=O_e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=U_e(),s=q0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=q0(()=>L_e(t,DW),[t]),d=q0(()=>({...B_e,...t.transform}),[t.transform]),h=X0(null),f=!!Nc.capturesDOM,g=X0(null),[y,_]=OW(!1),[b,S]=OW(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));j0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=X0(void 0),v=X0(null);v.current===null&&(ce(a),v.current=ue(Nc,u,s));let E=q0(()=>({...e,shaderParentId:s}),[e,s]);j0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Nc.fragmentNode,n,c,v.current,Nc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),j0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=X0({}),M=q0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&HN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(j0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(HN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),j0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?D_e(UW("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return F_e(G.Provider,{value:E,children:[UW("span",{ref:h,style:k_e,"data-shader-id":s,children:!f&&t.children}),R]})},LW=FW});var BW=z(()=>{"use strict";UG()});var jW={};yt(jW,{ShaderComponent:()=>HW,default:()=>WW});import{useContext as z_e,useEffect as $0,useId as V_e,useMemo as Y0,useRef as Z0,useState as zW}from"react";import{createPortal as G_e}from"react-dom";import{jsx as VW,jsxs as H_e}from"react/jsx-runtime";function jN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function W_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!jN(i)&&(n[r]=i);return n}var j_e,q_e,GW,HW,WW,qN=z(()=>{"use strict";mt();pt();gt();BW();j_e={display:"contents"},q_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},GW={blendMode:"normal",visible:!0};try{Oc&&Oc.props&&Object.entries(Oc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(GW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}HW=t=>{let e=z_e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=V_e(),s=Y0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Y0(()=>W_e(t,GW),[t]),d=Y0(()=>({...q_e,...t.transform}),[t.transform]),h=Z0(null),f=!!Oc.capturesDOM,g=Z0(null),[y,_]=zW(!1),[b,S]=zW(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));$0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Z0(void 0),v=Z0(null);v.current===null&&(ce(a),v.current=ue(Oc,u,s));let E=Y0(()=>({...e,shaderParentId:s}),[e,s]);$0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Oc.fragmentNode,n,c,v.current,Oc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),$0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Z0({}),M=Y0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&jN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if($0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(jN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),$0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?G_e(VW("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return H_e(G.Provider,{value:E,children:[VW("span",{ref:h,style:j_e,"data-shader-id":s,children:!f&&t.children}),R]})},WW=HW});var qW=z(()=>{"use strict";DG()});var JW={};yt(JW,{ShaderComponent:()=>ZW,default:()=>KW});import{useContext as X_e,useEffect as K0,useId as $_e,useMemo as J0,useRef as Q0,useState as XW}from"react";import{createPortal as Y_e}from"react-dom";import{jsx as $W,jsxs as Z_e}from"react/jsx-runtime";function XN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function K_e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!XN(i)&&(n[r]=i);return n}var J_e,Q_e,YW,ZW,KW,$N=z(()=>{"use strict";mt();pt();gt();qW();J_e={display:"contents"},Q_e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},YW={blendMode:"normal",visible:!0};try{Uc&&Uc.props&&Object.entries(Uc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(YW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}ZW=t=>{let e=X_e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=$_e(),s=J0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=J0(()=>K_e(t,YW),[t]),d=J0(()=>({...Q_e,...t.transform}),[t.transform]),h=Q0(null),f=!!Uc.capturesDOM,g=Q0(null),[y,_]=XW(!1),[b,S]=XW(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));K0(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Q0(void 0),v=Q0(null);v.current===null&&(ce(a),v.current=ue(Uc,u,s));let E=J0(()=>({...e,shaderParentId:s}),[e,s]);K0(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Uc.fragmentNode,n,c,v.current,Uc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),K0(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Q0({}),M=J0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&XN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(K0(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(XN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),K0(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Y_e($W("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Z_e(G.Provider,{value:E,children:[$W("span",{ref:h,style:J_e,"data-shader-id":s,children:!f&&t.children}),R]})},KW=ZW});var QW=z(()=>{"use strict";FG()});var o7={};yt(o7,{ShaderComponent:()=>r7,default:()=>i7});import{useContext as eSe,useEffect as ey,useId as tSe,useMemo as ty,useRef as ny,useState as e7}from"react";import{createPortal as nSe}from"react-dom";import{jsx as t7,jsxs as rSe}from"react/jsx-runtime";function YN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function iSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!YN(i)&&(n[r]=i);return n}var oSe,sSe,n7,r7,i7,ZN=z(()=>{"use strict";mt();pt();gt();QW();oSe={display:"contents"},sSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},n7={blendMode:"normal",visible:!0};try{Dc&&Dc.props&&Object.entries(Dc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(n7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}r7=t=>{let e=eSe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=tSe(),s=ty(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ty(()=>iSe(t,n7),[t]),d=ty(()=>({...sSe,...t.transform}),[t.transform]),h=ny(null),f=!!Dc.capturesDOM,g=ny(null),[y,_]=e7(!1),[b,S]=e7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));ey(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=ny(void 0),v=ny(null);v.current===null&&(ce(a),v.current=ue(Dc,u,s));let E=ty(()=>({...e,shaderParentId:s}),[e,s]);ey(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Dc.fragmentNode,n,c,v.current,Dc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),ey(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=ny({}),M=ty(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&YN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(ey(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(YN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ey(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?nSe(t7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return rSe(G.Provider,{value:E,children:[t7("span",{ref:h,style:oSe,"data-shader-id":s,children:!f&&t.children}),R]})},i7=r7});var s7=z(()=>{"use strict";BG()});var f7={};yt(f7,{ShaderComponent:()=>u7,default:()=>d7});import{useContext as aSe,useEffect as ry,useId as cSe,useMemo as iy,useRef as oy,useState as a7}from"react";import{createPortal as lSe}from"react-dom";import{jsx as c7,jsxs as uSe}from"react/jsx-runtime";function KN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function dSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!KN(i)&&(n[r]=i);return n}var fSe,hSe,l7,u7,d7,JN=z(()=>{"use strict";mt();pt();gt();s7();fSe={display:"contents"},hSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},l7={blendMode:"normal",visible:!0};try{Lc&&Lc.props&&Object.entries(Lc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(l7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}u7=t=>{let e=aSe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=cSe(),s=iy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=iy(()=>dSe(t,l7),[t]),d=iy(()=>({...hSe,...t.transform}),[t.transform]),h=oy(null),f=!!Lc.capturesDOM,g=oy(null),[y,_]=a7(!1),[b,S]=a7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));ry(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=oy(void 0),v=oy(null);v.current===null&&(ce(a),v.current=ue(Lc,u,s));let E=iy(()=>({...e,shaderParentId:s}),[e,s]);ry(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Lc.fragmentNode,n,c,v.current,Lc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),ry(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=oy({}),M=iy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&KN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(ry(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(KN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ry(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?lSe(c7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return uSe(G.Provider,{value:E,children:[c7("span",{ref:h,style:fSe,"data-shader-id":s,children:!f&&t.children}),R]})},d7=u7});var h7=z(()=>{"use strict";zG()});var x7={};yt(x7,{ShaderComponent:()=>y7,default:()=>v7});import{useContext as mSe,useEffect as sy,useId as pSe,useMemo as ay,useRef as cy,useState as m7}from"react";import{createPortal as gSe}from"react-dom";import{jsx as p7,jsxs as ySe}from"react/jsx-runtime";function QN(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function vSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!QN(i)&&(n[r]=i);return n}var xSe,bSe,g7,y7,v7,eO=z(()=>{"use strict";mt();pt();gt();h7();xSe={display:"contents"},bSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},g7={blendMode:"normal",visible:!0};try{kc&&kc.props&&Object.entries(kc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(g7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}y7=t=>{let e=mSe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=pSe(),s=ay(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ay(()=>vSe(t,g7),[t]),d=ay(()=>({...bSe,...t.transform}),[t.transform]),h=cy(null),f=!!kc.capturesDOM,g=cy(null),[y,_]=m7(!1),[b,S]=m7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));sy(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=cy(void 0),v=cy(null);v.current===null&&(ce(a),v.current=ue(kc,u,s));let E=ay(()=>({...e,shaderParentId:s}),[e,s]);sy(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,kc.fragmentNode,n,c,v.current,kc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),sy(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=cy({}),M=ay(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&QN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(sy(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(QN(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),sy(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?gSe(p7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return ySe(G.Provider,{value:E,children:[p7("span",{ref:h,style:xSe,"data-shader-id":s,children:!f&&t.children}),R]})},v7=y7});var b7=z(()=>{"use strict";VG()});var C7={};yt(C7,{ShaderComponent:()=>M7,default:()=>T7});import{useContext as _Se,useEffect as ly,useId as SSe,useMemo as uy,useRef as dy,useState as _7}from"react";import{createPortal as wSe}from"react-dom";import{jsx as S7,jsxs as MSe}from"react/jsx-runtime";function tO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function TSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!tO(i)&&(n[r]=i);return n}var CSe,ESe,w7,M7,T7,nO=z(()=>{"use strict";mt();pt();gt();b7();CSe={display:"contents"},ESe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},w7={blendMode:"normal",visible:!0};try{Bc&&Bc.props&&Object.entries(Bc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(w7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}M7=t=>{let e=_Se(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=SSe(),s=uy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=uy(()=>TSe(t,w7),[t]),d=uy(()=>({...ESe,...t.transform}),[t.transform]),h=dy(null),f=!!Bc.capturesDOM,g=dy(null),[y,_]=_7(!1),[b,S]=_7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));ly(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=dy(void 0),v=dy(null);v.current===null&&(ce(a),v.current=ue(Bc,u,s));let E=uy(()=>({...e,shaderParentId:s}),[e,s]);ly(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Bc.fragmentNode,n,c,v.current,Bc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),ly(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=dy({}),M=uy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&tO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(ly(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(tO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ly(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?wSe(S7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return MSe(G.Provider,{value:E,children:[S7("span",{ref:h,style:CSe,"data-shader-id":s,children:!f&&t.children}),R]})},T7=M7});var E7=z(()=>{"use strict";jG()});var O7={};yt(O7,{ShaderComponent:()=>I7,default:()=>N7});import{useContext as RSe,useEffect as fy,useId as ASe,useMemo as hy,useRef as my,useState as R7}from"react";import{createPortal as PSe}from"react-dom";import{jsx as A7,jsxs as ISe}from"react/jsx-runtime";function rO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function NSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!rO(i)&&(n[r]=i);return n}var OSe,USe,P7,I7,N7,iO=z(()=>{"use strict";mt();pt();gt();E7();OSe={display:"contents"},USe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},P7={blendMode:"normal",visible:!0};try{Hc&&Hc.props&&Object.entries(Hc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(P7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}I7=t=>{let e=RSe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=ASe(),s=hy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=hy(()=>NSe(t,P7),[t]),d=hy(()=>({...USe,...t.transform}),[t.transform]),h=my(null),f=!!Hc.capturesDOM,g=my(null),[y,_]=R7(!1),[b,S]=R7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));fy(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=my(void 0),v=my(null);v.current===null&&(ce(a),v.current=ue(Hc,u,s));let E=hy(()=>({...e,shaderParentId:s}),[e,s]);fy(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Hc.fragmentNode,n,c,v.current,Hc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),fy(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=my({}),M=hy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&rO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(fy(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(rO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),fy(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?PSe(A7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return ISe(G.Provider,{value:E,children:[A7("span",{ref:h,style:OSe,"data-shader-id":s,children:!f&&t.children}),R]})},N7=I7});var U7=z(()=>{"use strict";GG()});var z7={};yt(z7,{ShaderComponent:()=>k7,default:()=>B7});import{useContext as DSe,useEffect as py,useId as FSe,useMemo as gy,useRef as yy,useState as D7}from"react";import{createPortal as LSe}from"react-dom";import{jsx as F7,jsxs as kSe}from"react/jsx-runtime";function oO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function BSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!oO(i)&&(n[r]=i);return n}var zSe,VSe,L7,k7,B7,sO=z(()=>{"use strict";mt();pt();gt();U7();zSe={display:"contents"},VSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},L7={blendMode:"normal",visible:!0};try{zc&&zc.props&&Object.entries(zc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(L7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}k7=t=>{let e=DSe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=FSe(),s=gy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=gy(()=>BSe(t,L7),[t]),d=gy(()=>({...VSe,...t.transform}),[t.transform]),h=yy(null),f=!!zc.capturesDOM,g=yy(null),[y,_]=D7(!1),[b,S]=D7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));py(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=yy(void 0),v=yy(null);v.current===null&&(ce(a),v.current=ue(zc,u,s));let E=gy(()=>({...e,shaderParentId:s}),[e,s]);py(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,zc.fragmentNode,n,c,v.current,zc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),py(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=yy({}),M=gy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&oO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(py(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(oO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),py(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?LSe(F7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return kSe(G.Provider,{value:E,children:[F7("span",{ref:h,style:zSe,"data-shader-id":s,children:!f&&t.children}),R]})},B7=k7});var V7=z(()=>{"use strict";HG()});var X7={};yt(X7,{ShaderComponent:()=>j7,default:()=>q7});import{useContext as GSe,useEffect as vy,useId as HSe,useMemo as xy,useRef as by,useState as G7}from"react";import{createPortal as WSe}from"react-dom";import{jsx as H7,jsxs as jSe}from"react/jsx-runtime";function aO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function qSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!aO(i)&&(n[r]=i);return n}var XSe,$Se,W7,j7,q7,cO=z(()=>{"use strict";mt();pt();gt();V7();XSe={display:"contents"},$Se={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},W7={blendMode:"normal",visible:!0};try{Vc&&Vc.props&&Object.entries(Vc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(W7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}j7=t=>{let e=GSe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=HSe(),s=xy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=xy(()=>qSe(t,W7),[t]),d=xy(()=>({...$Se,...t.transform}),[t.transform]),h=by(null),f=!!Vc.capturesDOM,g=by(null),[y,_]=G7(!1),[b,S]=G7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));vy(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=by(void 0),v=by(null);v.current===null&&(ce(a),v.current=ue(Vc,u,s));let E=xy(()=>({...e,shaderParentId:s}),[e,s]);vy(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Vc.fragmentNode,n,c,v.current,Vc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),vy(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=by({}),M=xy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&aO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(vy(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(aO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),vy(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?WSe(H7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return jSe(G.Provider,{value:E,children:[H7("span",{ref:h,style:XSe,"data-shader-id":s,children:!f&&t.children}),R]})},q7=j7});var $7=z(()=>{"use strict";WG()});var ej={};yt(ej,{ShaderComponent:()=>J7,default:()=>Q7});import{useContext as YSe,useEffect as _y,useId as ZSe,useMemo as Sy,useRef as wy,useState as Y7}from"react";import{createPortal as KSe}from"react-dom";import{jsx as Z7,jsxs as JSe}from"react/jsx-runtime";function lO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function QSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!lO(i)&&(n[r]=i);return n}var ewe,twe,K7,J7,Q7,uO=z(()=>{"use strict";mt();pt();gt();$7();ewe={display:"contents"},twe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},K7={blendMode:"normal",visible:!0};try{Gc&&Gc.props&&Object.entries(Gc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(K7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}J7=t=>{let e=YSe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=ZSe(),s=Sy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Sy(()=>QSe(t,K7),[t]),d=Sy(()=>({...twe,...t.transform}),[t.transform]),h=wy(null),f=!!Gc.capturesDOM,g=wy(null),[y,_]=Y7(!1),[b,S]=Y7(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));_y(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=wy(void 0),v=wy(null);v.current===null&&(ce(a),v.current=ue(Gc,u,s));let E=Sy(()=>({...e,shaderParentId:s}),[e,s]);_y(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Gc.fragmentNode,n,c,v.current,Gc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),_y(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=wy({}),M=Sy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&lO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(_y(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(lO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),_y(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?KSe(Z7("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return JSe(G.Provider,{value:E,children:[Z7("span",{ref:h,style:ewe,"data-shader-id":s,children:!f&&t.children}),R]})},Q7=J7});var tj=z(()=>{"use strict";qG()});var aj={};yt(aj,{ShaderComponent:()=>oj,default:()=>sj});import{useContext as nwe,useEffect as My,useId as rwe,useMemo as Ty,useRef as Cy,useState as nj}from"react";import{createPortal as iwe}from"react-dom";import{jsx as rj,jsxs as owe}from"react/jsx-runtime";function dO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function swe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!dO(i)&&(n[r]=i);return n}var awe,cwe,ij,oj,sj,fO=z(()=>{"use strict";mt();pt();gt();tj();awe={display:"contents"},cwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},ij={blendMode:"normal",visible:!0};try{Wc&&Wc.props&&Object.entries(Wc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(ij[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}oj=t=>{let e=nwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=rwe(),s=Ty(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ty(()=>swe(t,ij),[t]),d=Ty(()=>({...cwe,...t.transform}),[t.transform]),h=Cy(null),f=!!Wc.capturesDOM,g=Cy(null),[y,_]=nj(!1),[b,S]=nj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));My(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Cy(void 0),v=Cy(null);v.current===null&&(ce(a),v.current=ue(Wc,u,s));let E=Ty(()=>({...e,shaderParentId:s}),[e,s]);My(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Wc.fragmentNode,n,c,v.current,Wc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),My(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Cy({}),M=Ty(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&dO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(My(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(dO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),My(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?iwe(rj("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return owe(G.Provider,{value:E,children:[rj("span",{ref:h,style:awe,"data-shader-id":s,children:!f&&t.children}),R]})},sj=oj});var cj=z(()=>{"use strict";YG()});var mj={};yt(mj,{ShaderComponent:()=>fj,default:()=>hj});import{useContext as lwe,useEffect as Ey,useId as uwe,useMemo as Ry,useRef as Ay,useState as lj}from"react";import{createPortal as dwe}from"react-dom";import{jsx as uj,jsxs as fwe}from"react/jsx-runtime";function hO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function hwe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!hO(i)&&(n[r]=i);return n}var mwe,pwe,dj,fj,hj,mO=z(()=>{"use strict";mt();pt();gt();cj();mwe={display:"contents"},pwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},dj={blendMode:"normal",visible:!0};try{jc&&jc.props&&Object.entries(jc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(dj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}fj=t=>{let e=lwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=uwe(),s=Ry(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ry(()=>hwe(t,dj),[t]),d=Ry(()=>({...pwe,...t.transform}),[t.transform]),h=Ay(null),f=!!jc.capturesDOM,g=Ay(null),[y,_]=lj(!1),[b,S]=lj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Ey(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Ay(void 0),v=Ay(null);v.current===null&&(ce(a),v.current=ue(jc,u,s));let E=Ry(()=>({...e,shaderParentId:s}),[e,s]);Ey(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,jc.fragmentNode,n,c,v.current,jc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Ey(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Ay({}),M=Ry(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&hO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ey(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(hO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ey(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?dwe(uj("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return fwe(G.Provider,{value:E,children:[uj("span",{ref:h,style:mwe,"data-shader-id":s,children:!f&&t.children}),R]})},hj=fj});var pj=z(()=>{"use strict";ZG()});var _j={};yt(_j,{ShaderComponent:()=>xj,default:()=>bj});import{useContext as gwe,useEffect as Py,useId as ywe,useMemo as Iy,useRef as Ny,useState as gj}from"react";import{createPortal as vwe}from"react-dom";import{jsx as yj,jsxs as xwe}from"react/jsx-runtime";function pO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function bwe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!pO(i)&&(n[r]=i);return n}var _we,Swe,vj,xj,bj,gO=z(()=>{"use strict";mt();pt();gt();pj();_we={display:"contents"},Swe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},vj={blendMode:"normal",visible:!0};try{qc&&qc.props&&Object.entries(qc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(vj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}xj=t=>{let e=gwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=ywe(),s=Iy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Iy(()=>bwe(t,vj),[t]),d=Iy(()=>({...Swe,...t.transform}),[t.transform]),h=Ny(null),f=!!qc.capturesDOM,g=Ny(null),[y,_]=gj(!1),[b,S]=gj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Py(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Ny(void 0),v=Ny(null);v.current===null&&(ce(a),v.current=ue(qc,u,s));let E=Iy(()=>({...e,shaderParentId:s}),[e,s]);Py(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,qc.fragmentNode,n,c,v.current,qc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Py(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Ny({}),M=Iy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&pO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Py(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(pO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Py(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?vwe(yj("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return xwe(G.Provider,{value:E,children:[yj("span",{ref:h,style:_we,"data-shader-id":s,children:!f&&t.children}),R]})},bj=xj});var Sj=z(()=>{"use strict";KG()});var Rj={};yt(Rj,{ShaderComponent:()=>Cj,default:()=>Ej});import{useContext as wwe,useEffect as Oy,useId as Mwe,useMemo as Uy,useRef as Dy,useState as wj}from"react";import{createPortal as Twe}from"react-dom";import{jsx as Mj,jsxs as Cwe}from"react/jsx-runtime";function yO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Ewe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!yO(i)&&(n[r]=i);return n}var Rwe,Awe,Tj,Cj,Ej,vO=z(()=>{"use strict";mt();pt();gt();Sj();Rwe={display:"contents"},Awe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Tj={blendMode:"normal",visible:!0};try{Xc&&Xc.props&&Object.entries(Xc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Tj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Cj=t=>{let e=wwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Mwe(),s=Uy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Uy(()=>Ewe(t,Tj),[t]),d=Uy(()=>({...Awe,...t.transform}),[t.transform]),h=Dy(null),f=!!Xc.capturesDOM,g=Dy(null),[y,_]=wj(!1),[b,S]=wj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Oy(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Dy(void 0),v=Dy(null);v.current===null&&(ce(a),v.current=ue(Xc,u,s));let E=Uy(()=>({...e,shaderParentId:s}),[e,s]);Oy(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Xc.fragmentNode,n,c,v.current,Xc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Oy(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Dy({}),M=Uy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&yO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Oy(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(yO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Oy(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Twe(Mj("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Cwe(G.Provider,{value:E,children:[Mj("span",{ref:h,style:Rwe,"data-shader-id":s,children:!f&&t.children}),R]})},Ej=Cj});var Aj=z(()=>{"use strict";QG()});var Dj={};yt(Dj,{ShaderComponent:()=>Oj,default:()=>Uj});import{useContext as Pwe,useEffect as Fy,useId as Iwe,useMemo as Ly,useRef as ky,useState as Pj}from"react";import{createPortal as Nwe}from"react-dom";import{jsx as Ij,jsxs as Owe}from"react/jsx-runtime";function xO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Uwe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!xO(i)&&(n[r]=i);return n}var Dwe,Fwe,Nj,Oj,Uj,bO=z(()=>{"use strict";mt();pt();gt();Aj();Dwe={display:"contents"},Fwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Nj={blendMode:"normal",visible:!0};try{$c&&$c.props&&Object.entries($c.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Nj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Oj=t=>{let e=Pwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Iwe(),s=Ly(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ly(()=>Uwe(t,Nj),[t]),d=Ly(()=>({...Fwe,...t.transform}),[t.transform]),h=ky(null),f=!!$c.capturesDOM,g=ky(null),[y,_]=Pj(!1),[b,S]=Pj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Fy(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=ky(void 0),v=ky(null);v.current===null&&(ce(a),v.current=ue($c,u,s));let E=Ly(()=>({...e,shaderParentId:s}),[e,s]);Fy(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,$c.fragmentNode,n,c,v.current,$c,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Fy(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=ky({}),M=Ly(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&xO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Fy(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(xO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Fy(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Nwe(Ij("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Owe(G.Provider,{value:E,children:[Ij("span",{ref:h,style:Dwe,"data-shader-id":s,children:!f&&t.children}),R]})},Uj=Oj});var Fj=z(()=>{"use strict";e9()});var Gj={};yt(Gj,{ShaderComponent:()=>zj,default:()=>Vj});import{useContext as Lwe,useEffect as By,useId as kwe,useMemo as zy,useRef as Vy,useState as Lj}from"react";import{createPortal as Bwe}from"react-dom";import{jsx as kj,jsxs as zwe}from"react/jsx-runtime";function _O(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Vwe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!_O(i)&&(n[r]=i);return n}var Gwe,Hwe,Bj,zj,Vj,SO=z(()=>{"use strict";mt();pt();gt();Fj();Gwe={display:"contents"},Hwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Bj={blendMode:"normal",visible:!0};try{Yc&&Yc.props&&Object.entries(Yc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Bj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}zj=t=>{let e=Lwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=kwe(),s=zy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=zy(()=>Vwe(t,Bj),[t]),d=zy(()=>({...Hwe,...t.transform}),[t.transform]),h=Vy(null),f=!!Yc.capturesDOM,g=Vy(null),[y,_]=Lj(!1),[b,S]=Lj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));By(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Vy(void 0),v=Vy(null);v.current===null&&(ce(a),v.current=ue(Yc,u,s));let E=zy(()=>({...e,shaderParentId:s}),[e,s]);By(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Yc.fragmentNode,n,c,v.current,Yc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),By(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Vy({}),M=zy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&_O(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(By(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(_O(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),By(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Bwe(kj("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return zwe(G.Provider,{value:E,children:[kj("span",{ref:h,style:Gwe,"data-shader-id":s,children:!f&&t.children}),R]})},Vj=zj});var Hj=z(()=>{"use strict";t9()});var Yj={};yt(Yj,{ShaderComponent:()=>Xj,default:()=>$j});import{useContext as Wwe,useEffect as Gy,useId as jwe,useMemo as Hy,useRef as Wy,useState as Wj}from"react";import{createPortal as qwe}from"react-dom";import{jsx as jj,jsxs as Xwe}from"react/jsx-runtime";function wO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function $we(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!wO(i)&&(n[r]=i);return n}var Ywe,Zwe,qj,Xj,$j,MO=z(()=>{"use strict";mt();pt();gt();Hj();Ywe={display:"contents"},Zwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},qj={blendMode:"normal",visible:!0};try{Zc&&Zc.props&&Object.entries(Zc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(qj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Xj=t=>{let e=Wwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=jwe(),s=Hy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Hy(()=>$we(t,qj),[t]),d=Hy(()=>({...Zwe,...t.transform}),[t.transform]),h=Wy(null),f=!!Zc.capturesDOM,g=Wy(null),[y,_]=Wj(!1),[b,S]=Wj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Gy(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Wy(void 0),v=Wy(null);v.current===null&&(ce(a),v.current=ue(Zc,u,s));let E=Hy(()=>({...e,shaderParentId:s}),[e,s]);Gy(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Zc.fragmentNode,n,c,v.current,Zc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Gy(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Wy({}),M=Hy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&wO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Gy(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(wO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Gy(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?qwe(jj("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Xwe(G.Provider,{value:E,children:[jj("span",{ref:h,style:Ywe,"data-shader-id":s,children:!f&&t.children}),R]})},$j=Xj});var Zj=z(()=>{"use strict";r9()});var nq={};yt(nq,{ShaderComponent:()=>eq,default:()=>tq});import{useContext as Kwe,useEffect as jy,useId as Jwe,useMemo as qy,useRef as Xy,useState as Kj}from"react";import{createPortal as Qwe}from"react-dom";import{jsx as Jj,jsxs as eMe}from"react/jsx-runtime";function TO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function tMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!TO(i)&&(n[r]=i);return n}var nMe,rMe,Qj,eq,tq,CO=z(()=>{"use strict";mt();pt();gt();Zj();nMe={display:"contents"},rMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Qj={blendMode:"normal",visible:!0};try{Kc&&Kc.props&&Object.entries(Kc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Qj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}eq=t=>{let e=Kwe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Jwe(),s=qy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=qy(()=>tMe(t,Qj),[t]),d=qy(()=>({...rMe,...t.transform}),[t.transform]),h=Xy(null),f=!!Kc.capturesDOM,g=Xy(null),[y,_]=Kj(!1),[b,S]=Kj(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));jy(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Xy(void 0),v=Xy(null);v.current===null&&(ce(a),v.current=ue(Kc,u,s));let E=qy(()=>({...e,shaderParentId:s}),[e,s]);jy(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Kc.fragmentNode,n,c,v.current,Kc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),jy(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Xy({}),M=qy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&TO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(jy(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(TO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),jy(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Qwe(Jj("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return eMe(G.Provider,{value:E,children:[Jj("span",{ref:h,style:nMe,"data-shader-id":s,children:!f&&t.children}),R]})},tq=eq});var rq=z(()=>{"use strict";o9()});var lq={};yt(lq,{ShaderComponent:()=>aq,default:()=>cq});import{useContext as iMe,useEffect as $y,useId as oMe,useMemo as Yy,useRef as Zy,useState as iq}from"react";import{createPortal as sMe}from"react-dom";import{jsx as oq,jsxs as aMe}from"react/jsx-runtime";function EO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function cMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!EO(i)&&(n[r]=i);return n}var lMe,uMe,sq,aq,cq,RO=z(()=>{"use strict";mt();pt();gt();rq();lMe={display:"contents"},uMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},sq={blendMode:"normal",visible:!0};try{Qc&&Qc.props&&Object.entries(Qc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(sq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}aq=t=>{let e=iMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=oMe(),s=Yy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Yy(()=>cMe(t,sq),[t]),d=Yy(()=>({...uMe,...t.transform}),[t.transform]),h=Zy(null),f=!!Qc.capturesDOM,g=Zy(null),[y,_]=iq(!1),[b,S]=iq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));$y(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Zy(void 0),v=Zy(null);v.current===null&&(ce(a),v.current=ue(Qc,u,s));let E=Yy(()=>({...e,shaderParentId:s}),[e,s]);$y(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Qc.fragmentNode,n,c,v.current,Qc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),$y(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Zy({}),M=Yy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&EO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if($y(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(EO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),$y(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?sMe(oq("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return aMe(G.Provider,{value:E,children:[oq("span",{ref:h,style:lMe,"data-shader-id":s,children:!f&&t.children}),R]})},cq=aq});var uq=z(()=>{"use strict";i9()});var gq={};yt(gq,{ShaderComponent:()=>mq,default:()=>pq});import{useContext as dMe,useEffect as Ky,useId as fMe,useMemo as Jy,useRef as Qy,useState as dq}from"react";import{createPortal as hMe}from"react-dom";import{jsx as fq,jsxs as mMe}from"react/jsx-runtime";function AO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function pMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!AO(i)&&(n[r]=i);return n}var gMe,yMe,hq,mq,pq,PO=z(()=>{"use strict";mt();pt();gt();uq();gMe={display:"contents"},yMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},hq={blendMode:"normal",visible:!0};try{Jc&&Jc.props&&Object.entries(Jc.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(hq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}mq=t=>{let e=dMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=fMe(),s=Jy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Jy(()=>pMe(t,hq),[t]),d=Jy(()=>({...yMe,...t.transform}),[t.transform]),h=Qy(null),f=!!Jc.capturesDOM,g=Qy(null),[y,_]=dq(!1),[b,S]=dq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Ky(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Qy(void 0),v=Qy(null);v.current===null&&(ce(a),v.current=ue(Jc,u,s));let E=Jy(()=>({...e,shaderParentId:s}),[e,s]);Ky(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Jc.fragmentNode,n,c,v.current,Jc,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Ky(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Qy({}),M=Jy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&AO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ky(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(AO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ky(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?hMe(fq("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return mMe(G.Provider,{value:E,children:[fq("span",{ref:h,style:gMe,"data-shader-id":s,children:!f&&t.children}),R]})},pq=mq});var yq=z(()=>{"use strict";s9()});var wq={};yt(wq,{ShaderComponent:()=>_q,default:()=>Sq});import{useContext as vMe,useEffect as ev,useId as xMe,useMemo as tv,useRef as nv,useState as vq}from"react";import{createPortal as bMe}from"react-dom";import{jsx as xq,jsxs as _Me}from"react/jsx-runtime";function IO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function SMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!IO(i)&&(n[r]=i);return n}var wMe,MMe,bq,_q,Sq,NO=z(()=>{"use strict";mt();pt();gt();yq();wMe={display:"contents"},MMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},bq={blendMode:"normal",visible:!0};try{el&&el.props&&Object.entries(el.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(bq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}_q=t=>{let e=vMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=xMe(),s=tv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=tv(()=>SMe(t,bq),[t]),d=tv(()=>({...MMe,...t.transform}),[t.transform]),h=nv(null),f=!!el.capturesDOM,g=nv(null),[y,_]=vq(!1),[b,S]=vq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));ev(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=nv(void 0),v=nv(null);v.current===null&&(ce(a),v.current=ue(el,u,s));let E=tv(()=>({...e,shaderParentId:s}),[e,s]);ev(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,el.fragmentNode,n,c,v.current,el,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),ev(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=nv({}),M=tv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&IO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(ev(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(IO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ev(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?bMe(xq("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return _Me(G.Provider,{value:E,children:[xq("span",{ref:h,style:wMe,"data-shader-id":s,children:!f&&t.children}),R]})},Sq=_q});var Mq=z(()=>{"use strict";a9()});var Pq={};yt(Pq,{ShaderComponent:()=>Rq,default:()=>Aq});import{useContext as TMe,useEffect as rv,useId as CMe,useMemo as iv,useRef as ov,useState as Tq}from"react";import{createPortal as EMe}from"react-dom";import{jsx as Cq,jsxs as RMe}from"react/jsx-runtime";function OO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function AMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!OO(i)&&(n[r]=i);return n}var PMe,IMe,Eq,Rq,Aq,UO=z(()=>{"use strict";mt();pt();gt();Mq();PMe={display:"contents"},IMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Eq={blendMode:"normal",visible:!0};try{tl&&tl.props&&Object.entries(tl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Eq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Rq=t=>{let e=TMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=CMe(),s=iv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=iv(()=>AMe(t,Eq),[t]),d=iv(()=>({...IMe,...t.transform}),[t.transform]),h=ov(null),f=!!tl.capturesDOM,g=ov(null),[y,_]=Tq(!1),[b,S]=Tq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));rv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=ov(void 0),v=ov(null);v.current===null&&(ce(a),v.current=ue(tl,u,s));let E=iv(()=>({...e,shaderParentId:s}),[e,s]);rv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,tl.fragmentNode,n,c,v.current,tl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),rv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=ov({}),M=iv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&OO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(rv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(OO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),rv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?EMe(Cq("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return RMe(G.Provider,{value:E,children:[Cq("span",{ref:h,style:PMe,"data-shader-id":s,children:!f&&t.children}),R]})},Aq=Rq});var Iq=z(()=>{"use strict";u9()});var Lq={};yt(Lq,{ShaderComponent:()=>Dq,default:()=>Fq});import{useContext as NMe,useEffect as sv,useId as OMe,useMemo as av,useRef as cv,useState as Nq}from"react";import{createPortal as UMe}from"react-dom";import{jsx as Oq,jsxs as DMe}from"react/jsx-runtime";function DO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function FMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!DO(i)&&(n[r]=i);return n}var LMe,kMe,Uq,Dq,Fq,FO=z(()=>{"use strict";mt();pt();gt();Iq();LMe={display:"contents"},kMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Uq={blendMode:"normal",visible:!0};try{nl&&nl.props&&Object.entries(nl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Uq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Dq=t=>{let e=NMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=OMe(),s=av(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=av(()=>FMe(t,Uq),[t]),d=av(()=>({...kMe,...t.transform}),[t.transform]),h=cv(null),f=!!nl.capturesDOM,g=cv(null),[y,_]=Nq(!1),[b,S]=Nq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));sv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=cv(void 0),v=cv(null);v.current===null&&(ce(a),v.current=ue(nl,u,s));let E=av(()=>({...e,shaderParentId:s}),[e,s]);sv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,nl.fragmentNode,n,c,v.current,nl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),sv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=cv({}),M=av(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&DO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(sv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(DO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),sv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?UMe(Oq("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return DMe(G.Provider,{value:E,children:[Oq("span",{ref:h,style:LMe,"data-shader-id":s,children:!f&&t.children}),R]})},Fq=Dq});var kq=z(()=>{"use strict";f9()});var Wq={};yt(Wq,{ShaderComponent:()=>Gq,default:()=>Hq});import{useContext as BMe,useEffect as lv,useId as zMe,useMemo as uv,useRef as dv,useState as Bq}from"react";import{createPortal as VMe}from"react-dom";import{jsx as zq,jsxs as GMe}from"react/jsx-runtime";function LO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function HMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!LO(i)&&(n[r]=i);return n}var WMe,jMe,Vq,Gq,Hq,kO=z(()=>{"use strict";mt();pt();gt();kq();WMe={display:"contents"},jMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Vq={blendMode:"normal",visible:!0};try{rl&&rl.props&&Object.entries(rl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Vq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Gq=t=>{let e=BMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=zMe(),s=uv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=uv(()=>HMe(t,Vq),[t]),d=uv(()=>({...jMe,...t.transform}),[t.transform]),h=dv(null),f=!!rl.capturesDOM,g=dv(null),[y,_]=Bq(!1),[b,S]=Bq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));lv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=dv(void 0),v=dv(null);v.current===null&&(ce(a),v.current=ue(rl,u,s));let E=uv(()=>({...e,shaderParentId:s}),[e,s]);lv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,rl.fragmentNode,n,c,v.current,rl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),lv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=dv({}),M=uv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&LO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(lv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(LO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),lv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?VMe(zq("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return GMe(G.Provider,{value:E,children:[zq("span",{ref:h,style:WMe,"data-shader-id":s,children:!f&&t.children}),R]})},Hq=Gq});var jq=z(()=>{"use strict";m9()});var Kq={};yt(Kq,{ShaderComponent:()=>Yq,default:()=>Zq});import{useContext as qMe,useEffect as fv,useId as XMe,useMemo as hv,useRef as mv,useState as qq}from"react";import{createPortal as $Me}from"react-dom";import{jsx as Xq,jsxs as YMe}from"react/jsx-runtime";function BO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function ZMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!BO(i)&&(n[r]=i);return n}var KMe,JMe,$q,Yq,Zq,zO=z(()=>{"use strict";mt();pt();gt();jq();KMe={display:"contents"},JMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},$q={blendMode:"normal",visible:!0};try{il&&il.props&&Object.entries(il.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&($q[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Yq=t=>{let e=qMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=XMe(),s=hv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=hv(()=>ZMe(t,$q),[t]),d=hv(()=>({...JMe,...t.transform}),[t.transform]),h=mv(null),f=!!il.capturesDOM,g=mv(null),[y,_]=qq(!1),[b,S]=qq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));fv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=mv(void 0),v=mv(null);v.current===null&&(ce(a),v.current=ue(il,u,s));let E=hv(()=>({...e,shaderParentId:s}),[e,s]);fv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,il.fragmentNode,n,c,v.current,il,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),fv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=mv({}),M=hv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&BO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(fv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(BO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),fv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?$Me(Xq("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return YMe(G.Provider,{value:E,children:[Xq("span",{ref:h,style:KMe,"data-shader-id":s,children:!f&&t.children}),R]})},Zq=Yq});var Jq=z(()=>{"use strict";y9()});var iX={};yt(iX,{ShaderComponent:()=>nX,default:()=>rX});import{useContext as QMe,useEffect as pv,useId as e1e,useMemo as gv,useRef as yv,useState as Qq}from"react";import{createPortal as t1e}from"react-dom";import{jsx as eX,jsxs as n1e}from"react/jsx-runtime";function VO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function r1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!VO(i)&&(n[r]=i);return n}var i1e,o1e,tX,nX,rX,GO=z(()=>{"use strict";mt();pt();gt();Jq();i1e={display:"contents"},o1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},tX={blendMode:"normal",visible:!0};try{ol&&ol.props&&Object.entries(ol.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(tX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}nX=t=>{let e=QMe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=e1e(),s=gv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=gv(()=>r1e(t,tX),[t]),d=gv(()=>({...o1e,...t.transform}),[t.transform]),h=yv(null),f=!!ol.capturesDOM,g=yv(null),[y,_]=Qq(!1),[b,S]=Qq(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));pv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=yv(void 0),v=yv(null);v.current===null&&(ce(a),v.current=ue(ol,u,s));let E=gv(()=>({...e,shaderParentId:s}),[e,s]);pv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,ol.fragmentNode,n,c,v.current,ol,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),pv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=yv({}),M=gv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&VO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(pv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(VO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),pv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?t1e(eX("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return n1e(G.Provider,{value:E,children:[eX("span",{ref:h,style:i1e,"data-shader-id":s,children:!f&&t.children}),R]})},rX=nX});var oX=z(()=>{"use strict";v9()});var dX={};yt(dX,{ShaderComponent:()=>lX,default:()=>uX});import{useContext as s1e,useEffect as vv,useId as a1e,useMemo as xv,useRef as bv,useState as sX}from"react";import{createPortal as c1e}from"react-dom";import{jsx as aX,jsxs as l1e}from"react/jsx-runtime";function HO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function u1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!HO(i)&&(n[r]=i);return n}var d1e,f1e,cX,lX,uX,WO=z(()=>{"use strict";mt();pt();gt();oX();d1e={display:"contents"},f1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},cX={blendMode:"normal",visible:!0};try{sl&&sl.props&&Object.entries(sl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(cX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}lX=t=>{let e=s1e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=a1e(),s=xv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=xv(()=>u1e(t,cX),[t]),d=xv(()=>({...f1e,...t.transform}),[t.transform]),h=bv(null),f=!!sl.capturesDOM,g=bv(null),[y,_]=sX(!1),[b,S]=sX(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));vv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=bv(void 0),v=bv(null);v.current===null&&(ce(a),v.current=ue(sl,u,s));let E=xv(()=>({...e,shaderParentId:s}),[e,s]);vv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,sl.fragmentNode,n,c,v.current,sl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),vv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=bv({}),M=xv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&HO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(vv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(HO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),vv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?c1e(aX("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return l1e(G.Provider,{value:E,children:[aX("span",{ref:h,style:d1e,"data-shader-id":s,children:!f&&t.children}),R]})},uX=lX});var fX=z(()=>{"use strict";x9()});var vX={};yt(vX,{ShaderComponent:()=>gX,default:()=>yX});import{useContext as h1e,useEffect as _v,useId as m1e,useMemo as Sv,useRef as wv,useState as hX}from"react";import{createPortal as p1e}from"react-dom";import{jsx as mX,jsxs as g1e}from"react/jsx-runtime";function jO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function y1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!jO(i)&&(n[r]=i);return n}var v1e,x1e,pX,gX,yX,qO=z(()=>{"use strict";mt();pt();gt();fX();v1e={display:"contents"},x1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},pX={blendMode:"normal",visible:!0};try{al&&al.props&&Object.entries(al.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(pX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}gX=t=>{let e=h1e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=m1e(),s=Sv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Sv(()=>y1e(t,pX),[t]),d=Sv(()=>({...x1e,...t.transform}),[t.transform]),h=wv(null),f=!!al.capturesDOM,g=wv(null),[y,_]=hX(!1),[b,S]=hX(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));_v(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=wv(void 0),v=wv(null);v.current===null&&(ce(a),v.current=ue(al,u,s));let E=Sv(()=>({...e,shaderParentId:s}),[e,s]);_v(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,al.fragmentNode,n,c,v.current,al,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),_v(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=wv({}),M=Sv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&jO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(_v(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(jO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),_v(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?p1e(mX("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return g1e(G.Provider,{value:E,children:[mX("span",{ref:h,style:v1e,"data-shader-id":s,children:!f&&t.children}),R]})},yX=gX});var xX=z(()=>{"use strict";b9()});var TX={};yt(TX,{ShaderComponent:()=>wX,default:()=>MX});import{useContext as b1e,useEffect as Mv,useId as _1e,useMemo as Tv,useRef as Cv,useState as bX}from"react";import{createPortal as S1e}from"react-dom";import{jsx as _X,jsxs as w1e}from"react/jsx-runtime";function XO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function M1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!XO(i)&&(n[r]=i);return n}var T1e,C1e,SX,wX,MX,$O=z(()=>{"use strict";mt();pt();gt();xX();T1e={display:"contents"},C1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},SX={blendMode:"normal",visible:!0};try{cl&&cl.props&&Object.entries(cl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(SX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}wX=t=>{let e=b1e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=_1e(),s=Tv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Tv(()=>M1e(t,SX),[t]),d=Tv(()=>({...C1e,...t.transform}),[t.transform]),h=Cv(null),f=!!cl.capturesDOM,g=Cv(null),[y,_]=bX(!1),[b,S]=bX(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Mv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Cv(void 0),v=Cv(null);v.current===null&&(ce(a),v.current=ue(cl,u,s));let E=Tv(()=>({...e,shaderParentId:s}),[e,s]);Mv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,cl.fragmentNode,n,c,v.current,cl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Mv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Cv({}),M=Tv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&XO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Mv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(XO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Mv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?S1e(_X("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return w1e(G.Provider,{value:E,children:[_X("span",{ref:h,style:T1e,"data-shader-id":s,children:!f&&t.children}),R]})},MX=wX});var CX=z(()=>{"use strict";_9()});var NX={};yt(NX,{ShaderComponent:()=>PX,default:()=>IX});import{useContext as E1e,useEffect as Ev,useId as R1e,useMemo as Rv,useRef as Av,useState as EX}from"react";import{createPortal as A1e}from"react-dom";import{jsx as RX,jsxs as P1e}from"react/jsx-runtime";function YO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function I1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!YO(i)&&(n[r]=i);return n}var N1e,O1e,AX,PX,IX,ZO=z(()=>{"use strict";mt();pt();gt();CX();N1e={display:"contents"},O1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},AX={blendMode:"normal",visible:!0};try{ll&&ll.props&&Object.entries(ll.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(AX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}PX=t=>{let e=E1e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=R1e(),s=Rv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Rv(()=>I1e(t,AX),[t]),d=Rv(()=>({...O1e,...t.transform}),[t.transform]),h=Av(null),f=!!ll.capturesDOM,g=Av(null),[y,_]=EX(!1),[b,S]=EX(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Ev(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Av(void 0),v=Av(null);v.current===null&&(ce(a),v.current=ue(ll,u,s));let E=Rv(()=>({...e,shaderParentId:s}),[e,s]);Ev(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,ll.fragmentNode,n,c,v.current,ll,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Ev(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Av({}),M=Rv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&YO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ev(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(YO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ev(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?A1e(RX("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return P1e(G.Provider,{value:E,children:[RX("span",{ref:h,style:N1e,"data-shader-id":s,children:!f&&t.children}),R]})},IX=PX});var OX=z(()=>{"use strict";S9()});var BX={};yt(BX,{ShaderComponent:()=>LX,default:()=>kX});import{useContext as U1e,useEffect as Pv,useId as D1e,useMemo as Iv,useRef as Nv,useState as UX}from"react";import{createPortal as F1e}from"react-dom";import{jsx as DX,jsxs as L1e}from"react/jsx-runtime";function KO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function k1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!KO(i)&&(n[r]=i);return n}var B1e,z1e,FX,LX,kX,JO=z(()=>{"use strict";mt();pt();gt();OX();B1e={display:"contents"},z1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},FX={blendMode:"normal",visible:!0};try{ul&&ul.props&&Object.entries(ul.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(FX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}LX=t=>{let e=U1e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=D1e(),s=Iv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Iv(()=>k1e(t,FX),[t]),d=Iv(()=>({...z1e,...t.transform}),[t.transform]),h=Nv(null),f=!!ul.capturesDOM,g=Nv(null),[y,_]=UX(!1),[b,S]=UX(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Pv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Nv(void 0),v=Nv(null);v.current===null&&(ce(a),v.current=ue(ul,u,s));let E=Iv(()=>({...e,shaderParentId:s}),[e,s]);Pv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,ul.fragmentNode,n,c,v.current,ul,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Pv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Nv({}),M=Iv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&KO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Pv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(KO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Pv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?F1e(DX("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return L1e(G.Provider,{value:E,children:[DX("span",{ref:h,style:B1e,"data-shader-id":s,children:!f&&t.children}),R]})},kX=LX});var zX=z(()=>{"use strict";w9()});var qX={};yt(qX,{ShaderComponent:()=>WX,default:()=>jX});import{useContext as V1e,useEffect as Ov,useId as G1e,useMemo as Uv,useRef as Dv,useState as VX}from"react";import{createPortal as H1e}from"react-dom";import{jsx as GX,jsxs as W1e}from"react/jsx-runtime";function QO(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function j1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!QO(i)&&(n[r]=i);return n}var q1e,X1e,HX,WX,jX,eU=z(()=>{"use strict";mt();pt();gt();zX();q1e={display:"contents"},X1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},HX={blendMode:"normal",visible:!0};try{dl&&dl.props&&Object.entries(dl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(HX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}WX=t=>{let e=V1e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=G1e(),s=Uv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Uv(()=>j1e(t,HX),[t]),d=Uv(()=>({...X1e,...t.transform}),[t.transform]),h=Dv(null),f=!!dl.capturesDOM,g=Dv(null),[y,_]=VX(!1),[b,S]=VX(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Ov(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Dv(void 0),v=Dv(null);v.current===null&&(ce(a),v.current=ue(dl,u,s));let E=Uv(()=>({...e,shaderParentId:s}),[e,s]);Ov(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,dl.fragmentNode,n,c,v.current,dl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Ov(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Dv({}),M=Uv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&QO(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ov(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(QO(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ov(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?H1e(GX("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return W1e(G.Provider,{value:E,children:[GX("span",{ref:h,style:q1e,"data-shader-id":s,children:!f&&t.children}),R]})},jX=WX});var XX=z(()=>{"use strict";T9()});var QX={};yt(QX,{ShaderComponent:()=>KX,default:()=>JX});import{useContext as $1e,useEffect as Fv,useId as Y1e,useMemo as Lv,useRef as kv,useState as $X}from"react";import{createPortal as Z1e}from"react-dom";import{jsx as YX,jsxs as K1e}from"react/jsx-runtime";function tU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function J1e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!tU(i)&&(n[r]=i);return n}var Q1e,eTe,ZX,KX,JX,nU=z(()=>{"use strict";mt();pt();gt();XX();Q1e={display:"contents"},eTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},ZX={blendMode:"normal",visible:!0};try{fl&&fl.props&&Object.entries(fl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(ZX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}KX=t=>{let e=$1e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=Y1e(),s=Lv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Lv(()=>J1e(t,ZX),[t]),d=Lv(()=>({...eTe,...t.transform}),[t.transform]),h=kv(null),f=!!fl.capturesDOM,g=kv(null),[y,_]=$X(!1),[b,S]=$X(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Fv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=kv(void 0),v=kv(null);v.current===null&&(ce(a),v.current=ue(fl,u,s));let E=Lv(()=>({...e,shaderParentId:s}),[e,s]);Fv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,fl.fragmentNode,n,c,v.current,fl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Fv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=kv({}),M=Lv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&tU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Fv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(tU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Fv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?Z1e(YX("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return K1e(G.Provider,{value:E,children:[YX("span",{ref:h,style:Q1e,"data-shader-id":s,children:!f&&t.children}),R]})},JX=KX});var e$=z(()=>{"use strict";C9()});var s$={};yt(s$,{ShaderComponent:()=>i$,default:()=>o$});import{useContext as tTe,useEffect as Bv,useId as nTe,useMemo as zv,useRef as Vv,useState as t$}from"react";import{createPortal as rTe}from"react-dom";import{jsx as n$,jsxs as iTe}from"react/jsx-runtime";function rU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function oTe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!rU(i)&&(n[r]=i);return n}var sTe,aTe,r$,i$,o$,iU=z(()=>{"use strict";mt();pt();gt();e$();sTe={display:"contents"},aTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},r$={blendMode:"normal",visible:!0};try{hl&&hl.props&&Object.entries(hl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(r$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}i$=t=>{let e=tTe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=nTe(),s=zv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=zv(()=>oTe(t,r$),[t]),d=zv(()=>({...aTe,...t.transform}),[t.transform]),h=Vv(null),f=!!hl.capturesDOM,g=Vv(null),[y,_]=t$(!1),[b,S]=t$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Bv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Vv(void 0),v=Vv(null);v.current===null&&(ce(a),v.current=ue(hl,u,s));let E=zv(()=>({...e,shaderParentId:s}),[e,s]);Bv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,hl.fragmentNode,n,c,v.current,hl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Bv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Vv({}),M=zv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&rU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Bv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(rU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Bv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?rTe(n$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return iTe(G.Provider,{value:E,children:[n$("span",{ref:h,style:sTe,"data-shader-id":s,children:!f&&t.children}),R]})},o$=i$});var a$=z(()=>{"use strict";E9()});var h$={};yt(h$,{ShaderComponent:()=>d$,default:()=>f$});import{useContext as cTe,useEffect as Gv,useId as lTe,useMemo as Hv,useRef as Wv,useState as c$}from"react";import{createPortal as uTe}from"react-dom";import{jsx as l$,jsxs as dTe}from"react/jsx-runtime";function oU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function fTe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!oU(i)&&(n[r]=i);return n}var hTe,mTe,u$,d$,f$,sU=z(()=>{"use strict";mt();pt();gt();a$();hTe={display:"contents"},mTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},u$={blendMode:"normal",visible:!0};try{ml&&ml.props&&Object.entries(ml.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(u$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}d$=t=>{let e=cTe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=lTe(),s=Hv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Hv(()=>fTe(t,u$),[t]),d=Hv(()=>({...mTe,...t.transform}),[t.transform]),h=Wv(null),f=!!ml.capturesDOM,g=Wv(null),[y,_]=c$(!1),[b,S]=c$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Gv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Wv(void 0),v=Wv(null);v.current===null&&(ce(a),v.current=ue(ml,u,s));let E=Hv(()=>({...e,shaderParentId:s}),[e,s]);Gv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,ml.fragmentNode,n,c,v.current,ml,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Gv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Wv({}),M=Hv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&oU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Gv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(oU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Gv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?uTe(l$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return dTe(G.Provider,{value:E,children:[l$("span",{ref:h,style:hTe,"data-shader-id":s,children:!f&&t.children}),R]})},f$=d$});var m$=z(()=>{"use strict";R9()});var b$={};yt(b$,{ShaderComponent:()=>v$,default:()=>x$});import{useContext as pTe,useEffect as jv,useId as gTe,useMemo as qv,useRef as Xv,useState as p$}from"react";import{createPortal as yTe}from"react-dom";import{jsx as g$,jsxs as vTe}from"react/jsx-runtime";function aU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function xTe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!aU(i)&&(n[r]=i);return n}var bTe,_Te,y$,v$,x$,cU=z(()=>{"use strict";mt();pt();gt();m$();bTe={display:"contents"},_Te={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},y$={blendMode:"normal",visible:!0};try{pl&&pl.props&&Object.entries(pl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(y$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}v$=t=>{let e=pTe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=gTe(),s=qv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=qv(()=>xTe(t,y$),[t]),d=qv(()=>({..._Te,...t.transform}),[t.transform]),h=Xv(null),f=!!pl.capturesDOM,g=Xv(null),[y,_]=p$(!1),[b,S]=p$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));jv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Xv(void 0),v=Xv(null);v.current===null&&(ce(a),v.current=ue(pl,u,s));let E=qv(()=>({...e,shaderParentId:s}),[e,s]);jv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,pl.fragmentNode,n,c,v.current,pl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),jv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Xv({}),M=qv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&aU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(jv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(aU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),jv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?yTe(g$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return vTe(G.Provider,{value:E,children:[g$("span",{ref:h,style:bTe,"data-shader-id":s,children:!f&&t.children}),R]})},x$=v$});var _$=z(()=>{"use strict";A9()});var E$={};yt(E$,{ShaderComponent:()=>T$,default:()=>C$});import{useContext as STe,useEffect as $v,useId as wTe,useMemo as Yv,useRef as Zv,useState as S$}from"react";import{createPortal as MTe}from"react-dom";import{jsx as w$,jsxs as TTe}from"react/jsx-runtime";function lU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function CTe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!lU(i)&&(n[r]=i);return n}var ETe,RTe,M$,T$,C$,uU=z(()=>{"use strict";mt();pt();gt();_$();ETe={display:"contents"},RTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},M$={blendMode:"normal",visible:!0};try{gl&&gl.props&&Object.entries(gl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(M$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}T$=t=>{let e=STe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=wTe(),s=Yv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Yv(()=>CTe(t,M$),[t]),d=Yv(()=>({...RTe,...t.transform}),[t.transform]),h=Zv(null),f=!!gl.capturesDOM,g=Zv(null),[y,_]=S$(!1),[b,S]=S$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));$v(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Zv(void 0),v=Zv(null);v.current===null&&(ce(a),v.current=ue(gl,u,s));let E=Yv(()=>({...e,shaderParentId:s}),[e,s]);$v(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,gl.fragmentNode,n,c,v.current,gl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),$v(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Zv({}),M=Yv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&lU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if($v(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(lU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),$v(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?MTe(w$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return TTe(G.Provider,{value:E,children:[w$("span",{ref:h,style:ETe,"data-shader-id":s,children:!f&&t.children}),R]})},C$=T$});var R$=z(()=>{"use strict";P9()});var U$={};yt(U$,{ShaderComponent:()=>N$,default:()=>O$});import{useContext as ATe,useEffect as Kv,useId as PTe,useMemo as Jv,useRef as Qv,useState as A$}from"react";import{createPortal as ITe}from"react-dom";import{jsx as P$,jsxs as NTe}from"react/jsx-runtime";function dU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function OTe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!dU(i)&&(n[r]=i);return n}var UTe,DTe,I$,N$,O$,fU=z(()=>{"use strict";mt();pt();gt();R$();UTe={display:"contents"},DTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},I$={blendMode:"normal",visible:!0};try{yl&&yl.props&&Object.entries(yl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(I$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}N$=t=>{let e=ATe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=PTe(),s=Jv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Jv(()=>OTe(t,I$),[t]),d=Jv(()=>({...DTe,...t.transform}),[t.transform]),h=Qv(null),f=!!yl.capturesDOM,g=Qv(null),[y,_]=A$(!1),[b,S]=A$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Kv(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Qv(void 0),v=Qv(null);v.current===null&&(ce(a),v.current=ue(yl,u,s));let E=Jv(()=>({...e,shaderParentId:s}),[e,s]);Kv(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,yl.fragmentNode,n,c,v.current,yl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Kv(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Qv({}),M=Jv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&dU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Kv(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(dU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Kv(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?ITe(P$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return NTe(G.Provider,{value:E,children:[P$("span",{ref:h,style:UTe,"data-shader-id":s,children:!f&&t.children}),R]})},O$=N$});var D$=z(()=>{"use strict";I9()});var V$={};yt(V$,{ShaderComponent:()=>B$,default:()=>z$});import{useContext as FTe,useEffect as ex,useId as LTe,useMemo as tx,useRef as nx,useState as F$}from"react";import{createPortal as kTe}from"react-dom";import{jsx as L$,jsxs as BTe}from"react/jsx-runtime";function hU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function zTe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!hU(i)&&(n[r]=i);return n}var VTe,GTe,k$,B$,z$,mU=z(()=>{"use strict";mt();pt();gt();D$();VTe={display:"contents"},GTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},k$={blendMode:"normal",visible:!0};try{vl&&vl.props&&Object.entries(vl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(k$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}B$=t=>{let e=FTe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=LTe(),s=tx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=tx(()=>zTe(t,k$),[t]),d=tx(()=>({...GTe,...t.transform}),[t.transform]),h=nx(null),f=!!vl.capturesDOM,g=nx(null),[y,_]=F$(!1),[b,S]=F$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));ex(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=nx(void 0),v=nx(null);v.current===null&&(ce(a),v.current=ue(vl,u,s));let E=tx(()=>({...e,shaderParentId:s}),[e,s]);ex(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,vl.fragmentNode,n,c,v.current,vl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),ex(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=nx({}),M=tx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&hU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(ex(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(hU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ex(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?kTe(L$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return BTe(G.Provider,{value:E,children:[L$("span",{ref:h,style:VTe,"data-shader-id":s,children:!f&&t.children}),R]})},z$=B$});var G$=z(()=>{"use strict";N9()});var $$={};yt($$,{ShaderComponent:()=>q$,default:()=>X$});import{useContext as HTe,useEffect as rx,useId as WTe,useMemo as ix,useRef as ox,useState as H$}from"react";import{createPortal as jTe}from"react-dom";import{jsx as W$,jsxs as qTe}from"react/jsx-runtime";function pU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function XTe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!pU(i)&&(n[r]=i);return n}var $Te,YTe,j$,q$,X$,gU=z(()=>{"use strict";mt();pt();gt();G$();$Te={display:"contents"},YTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},j$={blendMode:"normal",visible:!0};try{xl&&xl.props&&Object.entries(xl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(j$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}q$=t=>{let e=HTe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=WTe(),s=ix(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ix(()=>XTe(t,j$),[t]),d=ix(()=>({...YTe,...t.transform}),[t.transform]),h=ox(null),f=!!xl.capturesDOM,g=ox(null),[y,_]=H$(!1),[b,S]=H$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));rx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=ox(void 0),v=ox(null);v.current===null&&(ce(a),v.current=ue(xl,u,s));let E=ix(()=>({...e,shaderParentId:s}),[e,s]);rx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,xl.fragmentNode,n,c,v.current,xl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),rx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=ox({}),M=ix(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&pU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(rx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(pU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),rx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?jTe(W$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return qTe(G.Provider,{value:E,children:[W$("span",{ref:h,style:$Te,"data-shader-id":s,children:!f&&t.children}),R]})},X$=q$});var Y$=z(()=>{"use strict";O9()});var tY={};yt(tY,{ShaderComponent:()=>Q$,default:()=>eY});import{useContext as ZTe,useEffect as sx,useId as KTe,useMemo as ax,useRef as cx,useState as Z$}from"react";import{createPortal as JTe}from"react-dom";import{jsx as K$,jsxs as QTe}from"react/jsx-runtime";function yU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function eCe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!yU(i)&&(n[r]=i);return n}var tCe,nCe,J$,Q$,eY,vU=z(()=>{"use strict";mt();pt();gt();Y$();tCe={display:"contents"},nCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},J$={blendMode:"normal",visible:!0};try{bl&&bl.props&&Object.entries(bl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(J$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Q$=t=>{let e=ZTe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=KTe(),s=ax(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ax(()=>eCe(t,J$),[t]),d=ax(()=>({...nCe,...t.transform}),[t.transform]),h=cx(null),f=!!bl.capturesDOM,g=cx(null),[y,_]=Z$(!1),[b,S]=Z$(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));sx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=cx(void 0),v=cx(null);v.current===null&&(ce(a),v.current=ue(bl,u,s));let E=ax(()=>({...e,shaderParentId:s}),[e,s]);sx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,bl.fragmentNode,n,c,v.current,bl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),sx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=cx({}),M=ax(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&yU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(sx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(yU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),sx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?JTe(K$("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return QTe(G.Provider,{value:E,children:[K$("span",{ref:h,style:tCe,"data-shader-id":s,children:!f&&t.children}),R]})},eY=Q$});var nY=z(()=>{"use strict";D9()});var cY={};yt(cY,{ShaderComponent:()=>sY,default:()=>aY});import{useContext as rCe,useEffect as lx,useId as iCe,useMemo as ux,useRef as dx,useState as rY}from"react";import{createPortal as oCe}from"react-dom";import{jsx as iY,jsxs as sCe}from"react/jsx-runtime";function xU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function aCe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!xU(i)&&(n[r]=i);return n}var cCe,lCe,oY,sY,aY,bU=z(()=>{"use strict";mt();pt();gt();nY();cCe={display:"contents"},lCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},oY={blendMode:"normal",visible:!0};try{_l&&_l.props&&Object.entries(_l.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(oY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}sY=t=>{let e=rCe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=iCe(),s=ux(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ux(()=>aCe(t,oY),[t]),d=ux(()=>({...lCe,...t.transform}),[t.transform]),h=dx(null),f=!!_l.capturesDOM,g=dx(null),[y,_]=rY(!1),[b,S]=rY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));lx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=dx(void 0),v=dx(null);v.current===null&&(ce(a),v.current=ue(_l,u,s));let E=ux(()=>({...e,shaderParentId:s}),[e,s]);lx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,_l.fragmentNode,n,c,v.current,_l,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),lx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=dx({}),M=ux(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&xU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(lx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(xU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),lx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?oCe(iY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return sCe(G.Provider,{value:E,children:[iY("span",{ref:h,style:cCe,"data-shader-id":s,children:!f&&t.children}),R]})},aY=sY});var lY=z(()=>{"use strict";F9()});var pY={};yt(pY,{ShaderComponent:()=>hY,default:()=>mY});import{useContext as uCe,useEffect as fx,useId as dCe,useMemo as hx,useRef as mx,useState as uY}from"react";import{createPortal as fCe}from"react-dom";import{jsx as dY,jsxs as hCe}from"react/jsx-runtime";function _U(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function mCe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!_U(i)&&(n[r]=i);return n}var pCe,gCe,fY,hY,mY,SU=z(()=>{"use strict";mt();pt();gt();lY();pCe={display:"contents"},gCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},fY={blendMode:"normal",visible:!0};try{Sl&&Sl.props&&Object.entries(Sl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(fY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}hY=t=>{let e=uCe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=dCe(),s=hx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=hx(()=>mCe(t,fY),[t]),d=hx(()=>({...gCe,...t.transform}),[t.transform]),h=mx(null),f=!!Sl.capturesDOM,g=mx(null),[y,_]=uY(!1),[b,S]=uY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));fx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=mx(void 0),v=mx(null);v.current===null&&(ce(a),v.current=ue(Sl,u,s));let E=hx(()=>({...e,shaderParentId:s}),[e,s]);fx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Sl.fragmentNode,n,c,v.current,Sl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),fx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=mx({}),M=hx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&_U(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(fx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(_U(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),fx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?fCe(dY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return hCe(G.Provider,{value:E,children:[dY("span",{ref:h,style:pCe,"data-shader-id":s,children:!f&&t.children}),R]})},mY=hY});var gY=z(()=>{"use strict";L9()});var SY={};yt(SY,{ShaderComponent:()=>bY,default:()=>_Y});import{useContext as yCe,useEffect as px,useId as vCe,useMemo as gx,useRef as yx,useState as yY}from"react";import{createPortal as xCe}from"react-dom";import{jsx as vY,jsxs as bCe}from"react/jsx-runtime";function wU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function _Ce(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!wU(i)&&(n[r]=i);return n}var SCe,wCe,xY,bY,_Y,MU=z(()=>{"use strict";mt();pt();gt();gY();SCe={display:"contents"},wCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},xY={blendMode:"normal",visible:!0};try{wl&&wl.props&&Object.entries(wl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(xY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}bY=t=>{let e=yCe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=vCe(),s=gx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=gx(()=>_Ce(t,xY),[t]),d=gx(()=>({...wCe,...t.transform}),[t.transform]),h=yx(null),f=!!wl.capturesDOM,g=yx(null),[y,_]=yY(!1),[b,S]=yY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));px(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=yx(void 0),v=yx(null);v.current===null&&(ce(a),v.current=ue(wl,u,s));let E=gx(()=>({...e,shaderParentId:s}),[e,s]);px(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,wl.fragmentNode,n,c,v.current,wl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),px(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=yx({}),M=gx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&wU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(px(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(wU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),px(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?xCe(vY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return bCe(G.Provider,{value:E,children:[vY("span",{ref:h,style:SCe,"data-shader-id":s,children:!f&&t.children}),R]})},_Y=bY});var wY=z(()=>{"use strict";k9()});var AY={};yt(AY,{ShaderComponent:()=>EY,default:()=>RY});import{useContext as MCe,useEffect as vx,useId as TCe,useMemo as xx,useRef as bx,useState as MY}from"react";import{createPortal as CCe}from"react-dom";import{jsx as TY,jsxs as ECe}from"react/jsx-runtime";function TU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function RCe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!TU(i)&&(n[r]=i);return n}var ACe,PCe,CY,EY,RY,CU=z(()=>{"use strict";mt();pt();gt();wY();ACe={display:"contents"},PCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},CY={blendMode:"normal",visible:!0};try{Ml&&Ml.props&&Object.entries(Ml.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(CY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}EY=t=>{let e=MCe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=TCe(),s=xx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=xx(()=>RCe(t,CY),[t]),d=xx(()=>({...PCe,...t.transform}),[t.transform]),h=bx(null),f=!!Ml.capturesDOM,g=bx(null),[y,_]=MY(!1),[b,S]=MY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));vx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=bx(void 0),v=bx(null);v.current===null&&(ce(a),v.current=ue(Ml,u,s));let E=xx(()=>({...e,shaderParentId:s}),[e,s]);vx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ml.fragmentNode,n,c,v.current,Ml,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),vx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=bx({}),M=xx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&TU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(vx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(TU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),vx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?CCe(TY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return ECe(G.Provider,{value:E,children:[TY("span",{ref:h,style:ACe,"data-shader-id":s,children:!f&&t.children}),R]})},RY=EY});var PY=z(()=>{"use strict";B9()});var FY={};yt(FY,{ShaderComponent:()=>UY,default:()=>DY});import{useContext as ICe,useEffect as _x,useId as NCe,useMemo as Sx,useRef as wx,useState as IY}from"react";import{createPortal as OCe}from"react-dom";import{jsx as NY,jsxs as UCe}from"react/jsx-runtime";function EU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function DCe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!EU(i)&&(n[r]=i);return n}var FCe,LCe,OY,UY,DY,RU=z(()=>{"use strict";mt();pt();gt();PY();FCe={display:"contents"},LCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},OY={blendMode:"normal",visible:!0};try{Tl&&Tl.props&&Object.entries(Tl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(OY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}UY=t=>{let e=ICe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=NCe(),s=Sx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Sx(()=>DCe(t,OY),[t]),d=Sx(()=>({...LCe,...t.transform}),[t.transform]),h=wx(null),f=!!Tl.capturesDOM,g=wx(null),[y,_]=IY(!1),[b,S]=IY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));_x(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=wx(void 0),v=wx(null);v.current===null&&(ce(a),v.current=ue(Tl,u,s));let E=Sx(()=>({...e,shaderParentId:s}),[e,s]);_x(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Tl.fragmentNode,n,c,v.current,Tl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),_x(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=wx({}),M=Sx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&EU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(_x(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(EU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),_x(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?OCe(NY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return UCe(G.Provider,{value:E,children:[NY("span",{ref:h,style:FCe,"data-shader-id":s,children:!f&&t.children}),R]})},DY=UY});var LY=z(()=>{"use strict";z9()});var HY={};yt(HY,{ShaderComponent:()=>VY,default:()=>GY});import{useContext as kCe,useEffect as Mx,useId as BCe,useMemo as Tx,useRef as Cx,useState as kY}from"react";import{createPortal as zCe}from"react-dom";import{jsx as BY,jsxs as VCe}from"react/jsx-runtime";function AU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function GCe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!AU(i)&&(n[r]=i);return n}var HCe,WCe,zY,VY,GY,PU=z(()=>{"use strict";mt();pt();gt();LY();HCe={display:"contents"},WCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},zY={blendMode:"normal",visible:!0};try{Cl&&Cl.props&&Object.entries(Cl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(zY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}VY=t=>{let e=kCe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=BCe(),s=Tx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Tx(()=>GCe(t,zY),[t]),d=Tx(()=>({...WCe,...t.transform}),[t.transform]),h=Cx(null),f=!!Cl.capturesDOM,g=Cx(null),[y,_]=kY(!1),[b,S]=kY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Mx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Cx(void 0),v=Cx(null);v.current===null&&(ce(a),v.current=ue(Cl,u,s));let E=Tx(()=>({...e,shaderParentId:s}),[e,s]);Mx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Cl.fragmentNode,n,c,v.current,Cl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Mx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Cx({}),M=Tx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&AU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Mx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(AU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Mx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?zCe(BY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return VCe(G.Provider,{value:E,children:[BY("span",{ref:h,style:HCe,"data-shader-id":s,children:!f&&t.children}),R]})},GY=VY});var WY=z(()=>{"use strict";H9()});var ZY={};yt(ZY,{ShaderComponent:()=>$Y,default:()=>YY});import{useContext as jCe,useEffect as Ex,useId as qCe,useMemo as Rx,useRef as Ax,useState as jY}from"react";import{createPortal as XCe}from"react-dom";import{jsx as qY,jsxs as $Ce}from"react/jsx-runtime";function IU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function YCe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!IU(i)&&(n[r]=i);return n}var ZCe,KCe,XY,$Y,YY,NU=z(()=>{"use strict";mt();pt();gt();WY();ZCe={display:"contents"},KCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},XY={blendMode:"normal",visible:!0};try{El&&El.props&&Object.entries(El.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(XY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}$Y=t=>{let e=jCe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=qCe(),s=Rx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Rx(()=>YCe(t,XY),[t]),d=Rx(()=>({...KCe,...t.transform}),[t.transform]),h=Ax(null),f=!!El.capturesDOM,g=Ax(null),[y,_]=jY(!1),[b,S]=jY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Ex(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Ax(void 0),v=Ax(null);v.current===null&&(ce(a),v.current=ue(El,u,s));let E=Rx(()=>({...e,shaderParentId:s}),[e,s]);Ex(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,El.fragmentNode,n,c,v.current,El,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Ex(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Ax({}),M=Rx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&IU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ex(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(IU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ex(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?XCe(qY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return $Ce(G.Provider,{value:E,children:[qY("span",{ref:h,style:ZCe,"data-shader-id":s,children:!f&&t.children}),R]})},YY=$Y});var KY=z(()=>{"use strict";W9()});var rZ={};yt(rZ,{ShaderComponent:()=>tZ,default:()=>nZ});import{useContext as JCe,useEffect as Px,useId as QCe,useMemo as Ix,useRef as Nx,useState as JY}from"react";import{createPortal as eEe}from"react-dom";import{jsx as QY,jsxs as tEe}from"react/jsx-runtime";function OU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function nEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!OU(i)&&(n[r]=i);return n}var rEe,iEe,eZ,tZ,nZ,UU=z(()=>{"use strict";mt();pt();gt();KY();rEe={display:"contents"},iEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},eZ={blendMode:"normal",visible:!0};try{Rl&&Rl.props&&Object.entries(Rl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(eZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}tZ=t=>{let e=JCe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=QCe(),s=Ix(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ix(()=>nEe(t,eZ),[t]),d=Ix(()=>({...iEe,...t.transform}),[t.transform]),h=Nx(null),f=!!Rl.capturesDOM,g=Nx(null),[y,_]=JY(!1),[b,S]=JY(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Px(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Nx(void 0),v=Nx(null);v.current===null&&(ce(a),v.current=ue(Rl,u,s));let E=Ix(()=>({...e,shaderParentId:s}),[e,s]);Px(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Rl.fragmentNode,n,c,v.current,Rl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Px(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Nx({}),M=Ix(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&OU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Px(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(OU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Px(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?eEe(QY("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return tEe(G.Provider,{value:E,children:[QY("span",{ref:h,style:rEe,"data-shader-id":s,children:!f&&t.children}),R]})},nZ=tZ});var iZ=z(()=>{"use strict";j9()});var uZ={};yt(uZ,{ShaderComponent:()=>cZ,default:()=>lZ});import{useContext as oEe,useEffect as Ox,useId as sEe,useMemo as Ux,useRef as Dx,useState as oZ}from"react";import{createPortal as aEe}from"react-dom";import{jsx as sZ,jsxs as cEe}from"react/jsx-runtime";function DU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function lEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!DU(i)&&(n[r]=i);return n}var uEe,dEe,aZ,cZ,lZ,FU=z(()=>{"use strict";mt();pt();gt();iZ();uEe={display:"contents"},dEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},aZ={blendMode:"normal",visible:!0};try{Al&&Al.props&&Object.entries(Al.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(aZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}cZ=t=>{let e=oEe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=sEe(),s=Ux(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ux(()=>lEe(t,aZ),[t]),d=Ux(()=>({...dEe,...t.transform}),[t.transform]),h=Dx(null),f=!!Al.capturesDOM,g=Dx(null),[y,_]=oZ(!1),[b,S]=oZ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Ox(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Dx(void 0),v=Dx(null);v.current===null&&(ce(a),v.current=ue(Al,u,s));let E=Ux(()=>({...e,shaderParentId:s}),[e,s]);Ox(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Al.fragmentNode,n,c,v.current,Al,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Ox(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Dx({}),M=Ux(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&DU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ox(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(DU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ox(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?aEe(sZ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return cEe(G.Provider,{value:E,children:[sZ("span",{ref:h,style:uEe,"data-shader-id":s,children:!f&&t.children}),R]})},lZ=cZ});var dZ=z(()=>{"use strict";q9()});var yZ={};yt(yZ,{ShaderComponent:()=>pZ,default:()=>gZ});import{useContext as fEe,useEffect as Fx,useId as hEe,useMemo as Lx,useRef as kx,useState as fZ}from"react";import{createPortal as mEe}from"react-dom";import{jsx as hZ,jsxs as pEe}from"react/jsx-runtime";function LU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function gEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!LU(i)&&(n[r]=i);return n}var yEe,vEe,mZ,pZ,gZ,kU=z(()=>{"use strict";mt();pt();gt();dZ();yEe={display:"contents"},vEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},mZ={blendMode:"normal",visible:!0};try{Pl&&Pl.props&&Object.entries(Pl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(mZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}pZ=t=>{let e=fEe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=hEe(),s=Lx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Lx(()=>gEe(t,mZ),[t]),d=Lx(()=>({...vEe,...t.transform}),[t.transform]),h=kx(null),f=!!Pl.capturesDOM,g=kx(null),[y,_]=fZ(!1),[b,S]=fZ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Fx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=kx(void 0),v=kx(null);v.current===null&&(ce(a),v.current=ue(Pl,u,s));let E=Lx(()=>({...e,shaderParentId:s}),[e,s]);Fx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Pl.fragmentNode,n,c,v.current,Pl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Fx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=kx({}),M=Lx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&LU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Fx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(LU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Fx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?mEe(hZ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return pEe(G.Provider,{value:E,children:[hZ("span",{ref:h,style:yEe,"data-shader-id":s,children:!f&&t.children}),R]})},gZ=pZ});var vZ=z(()=>{"use strict";X9()});var MZ={};yt(MZ,{ShaderComponent:()=>SZ,default:()=>wZ});import{useContext as xEe,useEffect as Bx,useId as bEe,useMemo as zx,useRef as Vx,useState as xZ}from"react";import{createPortal as _Ee}from"react-dom";import{jsx as bZ,jsxs as SEe}from"react/jsx-runtime";function BU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function wEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!BU(i)&&(n[r]=i);return n}var MEe,TEe,_Z,SZ,wZ,zU=z(()=>{"use strict";mt();pt();gt();vZ();MEe={display:"contents"},TEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},_Z={blendMode:"normal",visible:!0};try{Il&&Il.props&&Object.entries(Il.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(_Z[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}SZ=t=>{let e=xEe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=bEe(),s=zx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=zx(()=>wEe(t,_Z),[t]),d=zx(()=>({...TEe,...t.transform}),[t.transform]),h=Vx(null),f=!!Il.capturesDOM,g=Vx(null),[y,_]=xZ(!1),[b,S]=xZ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Bx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Vx(void 0),v=Vx(null);v.current===null&&(ce(a),v.current=ue(Il,u,s));let E=zx(()=>({...e,shaderParentId:s}),[e,s]);Bx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Il.fragmentNode,n,c,v.current,Il,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Bx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Vx({}),M=zx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&BU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Bx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(BU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Bx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?_Ee(bZ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return SEe(G.Provider,{value:E,children:[bZ("span",{ref:h,style:MEe,"data-shader-id":s,children:!f&&t.children}),R]})},wZ=SZ});var TZ=z(()=>{"use strict";$9()});var IZ={};yt(IZ,{ShaderComponent:()=>AZ,default:()=>PZ});import{useContext as CEe,useEffect as Gx,useId as EEe,useMemo as Hx,useRef as Wx,useState as CZ}from"react";import{createPortal as REe}from"react-dom";import{jsx as EZ,jsxs as AEe}from"react/jsx-runtime";function VU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function PEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!VU(i)&&(n[r]=i);return n}var IEe,NEe,RZ,AZ,PZ,GU=z(()=>{"use strict";mt();pt();gt();TZ();IEe={display:"contents"},NEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},RZ={blendMode:"normal",visible:!0};try{Nl&&Nl.props&&Object.entries(Nl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(RZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}AZ=t=>{let e=CEe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=EEe(),s=Hx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Hx(()=>PEe(t,RZ),[t]),d=Hx(()=>({...NEe,...t.transform}),[t.transform]),h=Wx(null),f=!!Nl.capturesDOM,g=Wx(null),[y,_]=CZ(!1),[b,S]=CZ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Gx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Wx(void 0),v=Wx(null);v.current===null&&(ce(a),v.current=ue(Nl,u,s));let E=Hx(()=>({...e,shaderParentId:s}),[e,s]);Gx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Nl.fragmentNode,n,c,v.current,Nl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Gx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Wx({}),M=Hx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&VU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Gx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(VU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Gx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?REe(EZ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return AEe(G.Provider,{value:E,children:[EZ("span",{ref:h,style:IEe,"data-shader-id":s,children:!f&&t.children}),R]})},PZ=AZ});var NZ=z(()=>{"use strict";Y9()});var kZ={};yt(kZ,{ShaderComponent:()=>FZ,default:()=>LZ});import{useContext as OEe,useEffect as jx,useId as UEe,useMemo as qx,useRef as Xx,useState as OZ}from"react";import{createPortal as DEe}from"react-dom";import{jsx as UZ,jsxs as FEe}from"react/jsx-runtime";function HU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function LEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!HU(i)&&(n[r]=i);return n}var kEe,BEe,DZ,FZ,LZ,WU=z(()=>{"use strict";mt();pt();gt();NZ();kEe={display:"contents"},BEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},DZ={blendMode:"normal",visible:!0};try{Ol&&Ol.props&&Object.entries(Ol.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(DZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}FZ=t=>{let e=OEe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=UEe(),s=qx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=qx(()=>LEe(t,DZ),[t]),d=qx(()=>({...BEe,...t.transform}),[t.transform]),h=Xx(null),f=!!Ol.capturesDOM,g=Xx(null),[y,_]=OZ(!1),[b,S]=OZ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));jx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Xx(void 0),v=Xx(null);v.current===null&&(ce(a),v.current=ue(Ol,u,s));let E=qx(()=>({...e,shaderParentId:s}),[e,s]);jx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ol.fragmentNode,n,c,v.current,Ol,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),jx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Xx({}),M=qx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&HU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(jx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(HU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),jx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?DEe(UZ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return FEe(G.Provider,{value:E,children:[UZ("span",{ref:h,style:kEe,"data-shader-id":s,children:!f&&t.children}),R]})},LZ=FZ});var BZ=z(()=>{"use strict";Z9()});var jZ={};yt(jZ,{ShaderComponent:()=>HZ,default:()=>WZ});import{useContext as zEe,useEffect as $x,useId as VEe,useMemo as Yx,useRef as Zx,useState as zZ}from"react";import{createPortal as GEe}from"react-dom";import{jsx as VZ,jsxs as HEe}from"react/jsx-runtime";function jU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function WEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!jU(i)&&(n[r]=i);return n}var jEe,qEe,GZ,HZ,WZ,qU=z(()=>{"use strict";mt();pt();gt();BZ();jEe={display:"contents"},qEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},GZ={blendMode:"normal",visible:!0};try{Ul&&Ul.props&&Object.entries(Ul.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(GZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}HZ=t=>{let e=zEe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=VEe(),s=Yx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Yx(()=>WEe(t,GZ),[t]),d=Yx(()=>({...qEe,...t.transform}),[t.transform]),h=Zx(null),f=!!Ul.capturesDOM,g=Zx(null),[y,_]=zZ(!1),[b,S]=zZ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));$x(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Zx(void 0),v=Zx(null);v.current===null&&(ce(a),v.current=ue(Ul,u,s));let E=Yx(()=>({...e,shaderParentId:s}),[e,s]);$x(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ul.fragmentNode,n,c,v.current,Ul,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),$x(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Zx({}),M=Yx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&jU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if($x(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(jU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),$x(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?GEe(VZ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return HEe(G.Provider,{value:E,children:[VZ("span",{ref:h,style:jEe,"data-shader-id":s,children:!f&&t.children}),R]})},WZ=HZ});var qZ=z(()=>{"use strict";K9()});var JZ={};yt(JZ,{ShaderComponent:()=>ZZ,default:()=>KZ});import{useContext as XEe,useEffect as Kx,useId as $Ee,useMemo as Jx,useRef as Qx,useState as XZ}from"react";import{createPortal as YEe}from"react-dom";import{jsx as $Z,jsxs as ZEe}from"react/jsx-runtime";function XU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function KEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!XU(i)&&(n[r]=i);return n}var JEe,QEe,YZ,ZZ,KZ,$U=z(()=>{"use strict";mt();pt();gt();qZ();JEe={display:"contents"},QEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},YZ={blendMode:"normal",visible:!0};try{Dl&&Dl.props&&Object.entries(Dl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(YZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}ZZ=t=>{let e=XEe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=$Ee(),s=Jx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Jx(()=>KEe(t,YZ),[t]),d=Jx(()=>({...QEe,...t.transform}),[t.transform]),h=Qx(null),f=!!Dl.capturesDOM,g=Qx(null),[y,_]=XZ(!1),[b,S]=XZ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Kx(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Qx(void 0),v=Qx(null);v.current===null&&(ce(a),v.current=ue(Dl,u,s));let E=Jx(()=>({...e,shaderParentId:s}),[e,s]);Kx(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Dl.fragmentNode,n,c,v.current,Dl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Kx(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Qx({}),M=Jx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&XU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Kx(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(XU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Kx(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?YEe($Z("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return ZEe(G.Provider,{value:E,children:[$Z("span",{ref:h,style:JEe,"data-shader-id":s,children:!f&&t.children}),R]})},KZ=ZZ});var QZ=z(()=>{"use strict";J9()});var oK={};yt(oK,{ShaderComponent:()=>rK,default:()=>iK});import{useContext as eRe,useEffect as eb,useId as tRe,useMemo as tb,useRef as nb,useState as eK}from"react";import{createPortal as nRe}from"react-dom";import{jsx as tK,jsxs as rRe}from"react/jsx-runtime";function YU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function iRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!YU(i)&&(n[r]=i);return n}var oRe,sRe,nK,rK,iK,ZU=z(()=>{"use strict";mt();pt();gt();QZ();oRe={display:"contents"},sRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},nK={blendMode:"normal",visible:!0};try{Fl&&Fl.props&&Object.entries(Fl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(nK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}rK=t=>{let e=eRe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=tRe(),s=tb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=tb(()=>iRe(t,nK),[t]),d=tb(()=>({...sRe,...t.transform}),[t.transform]),h=nb(null),f=!!Fl.capturesDOM,g=nb(null),[y,_]=eK(!1),[b,S]=eK(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));eb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=nb(void 0),v=nb(null);v.current===null&&(ce(a),v.current=ue(Fl,u,s));let E=tb(()=>({...e,shaderParentId:s}),[e,s]);eb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Fl.fragmentNode,n,c,v.current,Fl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),eb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=nb({}),M=tb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&YU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(eb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(YU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),eb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?nRe(tK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return rRe(G.Provider,{value:E,children:[tK("span",{ref:h,style:oRe,"data-shader-id":s,children:!f&&t.children}),R]})},iK=rK});var sK=z(()=>{"use strict";Q9()});var fK={};yt(fK,{ShaderComponent:()=>uK,default:()=>dK});import{useContext as aRe,useEffect as rb,useId as cRe,useMemo as ib,useRef as ob,useState as aK}from"react";import{createPortal as lRe}from"react-dom";import{jsx as cK,jsxs as uRe}from"react/jsx-runtime";function KU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function dRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!KU(i)&&(n[r]=i);return n}var fRe,hRe,lK,uK,dK,JU=z(()=>{"use strict";mt();pt();gt();sK();fRe={display:"contents"},hRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},lK={blendMode:"normal",visible:!0};try{Ll&&Ll.props&&Object.entries(Ll.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(lK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}uK=t=>{let e=aRe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=cRe(),s=ib(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ib(()=>dRe(t,lK),[t]),d=ib(()=>({...hRe,...t.transform}),[t.transform]),h=ob(null),f=!!Ll.capturesDOM,g=ob(null),[y,_]=aK(!1),[b,S]=aK(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));rb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=ob(void 0),v=ob(null);v.current===null&&(ce(a),v.current=ue(Ll,u,s));let E=ib(()=>({...e,shaderParentId:s}),[e,s]);rb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ll.fragmentNode,n,c,v.current,Ll,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),rb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=ob({}),M=ib(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&KU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(rb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(KU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),rb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?lRe(cK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return uRe(G.Provider,{value:E,children:[cK("span",{ref:h,style:fRe,"data-shader-id":s,children:!f&&t.children}),R]})},dK=uK});var hK=z(()=>{"use strict";e6()});var xK={};yt(xK,{ShaderComponent:()=>yK,default:()=>vK});import{useContext as mRe,useEffect as sb,useId as pRe,useMemo as ab,useRef as cb,useState as mK}from"react";import{createPortal as gRe}from"react-dom";import{jsx as pK,jsxs as yRe}from"react/jsx-runtime";function QU(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function vRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!QU(i)&&(n[r]=i);return n}var xRe,bRe,gK,yK,vK,e3=z(()=>{"use strict";mt();pt();gt();hK();xRe={display:"contents"},bRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},gK={blendMode:"normal",visible:!0};try{kl&&kl.props&&Object.entries(kl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(gK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}yK=t=>{let e=mRe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=pRe(),s=ab(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ab(()=>vRe(t,gK),[t]),d=ab(()=>({...bRe,...t.transform}),[t.transform]),h=cb(null),f=!!kl.capturesDOM,g=cb(null),[y,_]=mK(!1),[b,S]=mK(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));sb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=cb(void 0),v=cb(null);v.current===null&&(ce(a),v.current=ue(kl,u,s));let E=ab(()=>({...e,shaderParentId:s}),[e,s]);sb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,kl.fragmentNode,n,c,v.current,kl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),sb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=cb({}),M=ab(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&QU(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(sb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(QU(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),sb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?gRe(pK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return yRe(G.Provider,{value:E,children:[pK("span",{ref:h,style:xRe,"data-shader-id":s,children:!f&&t.children}),R]})},vK=yK});var bK=z(()=>{"use strict";t6()});var CK={};yt(CK,{ShaderComponent:()=>MK,default:()=>TK});import{useContext as _Re,useEffect as lb,useId as SRe,useMemo as ub,useRef as db,useState as _K}from"react";import{createPortal as wRe}from"react-dom";import{jsx as SK,jsxs as MRe}from"react/jsx-runtime";function t3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function TRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!t3(i)&&(n[r]=i);return n}var CRe,ERe,wK,MK,TK,n3=z(()=>{"use strict";mt();pt();gt();bK();CRe={display:"contents"},ERe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},wK={blendMode:"normal",visible:!0};try{Bl&&Bl.props&&Object.entries(Bl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(wK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}MK=t=>{let e=_Re(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=SRe(),s=ub(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ub(()=>TRe(t,wK),[t]),d=ub(()=>({...ERe,...t.transform}),[t.transform]),h=db(null),f=!!Bl.capturesDOM,g=db(null),[y,_]=_K(!1),[b,S]=_K(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));lb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=db(void 0),v=db(null);v.current===null&&(ce(a),v.current=ue(Bl,u,s));let E=ub(()=>({...e,shaderParentId:s}),[e,s]);lb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Bl.fragmentNode,n,c,v.current,Bl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),lb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=db({}),M=ub(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&t3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(lb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(t3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),lb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?wRe(SK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return MRe(G.Provider,{value:E,children:[SK("span",{ref:h,style:CRe,"data-shader-id":s,children:!f&&t.children}),R]})},TK=MK});var EK=z(()=>{"use strict";n6()});var OK={};yt(OK,{ShaderComponent:()=>IK,default:()=>NK});import{useContext as RRe,useEffect as fb,useId as ARe,useMemo as hb,useRef as mb,useState as RK}from"react";import{createPortal as PRe}from"react-dom";import{jsx as AK,jsxs as IRe}from"react/jsx-runtime";function r3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function NRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!r3(i)&&(n[r]=i);return n}var ORe,URe,PK,IK,NK,i3=z(()=>{"use strict";mt();pt();gt();EK();ORe={display:"contents"},URe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},PK={blendMode:"normal",visible:!0};try{zl&&zl.props&&Object.entries(zl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(PK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}IK=t=>{let e=RRe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=ARe(),s=hb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=hb(()=>NRe(t,PK),[t]),d=hb(()=>({...URe,...t.transform}),[t.transform]),h=mb(null),f=!!zl.capturesDOM,g=mb(null),[y,_]=RK(!1),[b,S]=RK(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));fb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=mb(void 0),v=mb(null);v.current===null&&(ce(a),v.current=ue(zl,u,s));let E=hb(()=>({...e,shaderParentId:s}),[e,s]);fb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,zl.fragmentNode,n,c,v.current,zl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),fb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=mb({}),M=hb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&r3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(fb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(r3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),fb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?PRe(AK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return IRe(G.Provider,{value:E,children:[AK("span",{ref:h,style:ORe,"data-shader-id":s,children:!f&&t.children}),R]})},NK=IK});var UK=z(()=>{"use strict";r6()});var zK={};yt(zK,{ShaderComponent:()=>kK,default:()=>BK});import{useContext as DRe,useEffect as pb,useId as FRe,useMemo as gb,useRef as yb,useState as DK}from"react";import{createPortal as LRe}from"react-dom";import{jsx as FK,jsxs as kRe}from"react/jsx-runtime";function o3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function BRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!o3(i)&&(n[r]=i);return n}var zRe,VRe,LK,kK,BK,s3=z(()=>{"use strict";mt();pt();gt();UK();zRe={display:"contents"},VRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},LK={blendMode:"normal",visible:!0};try{Vl&&Vl.props&&Object.entries(Vl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(LK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}kK=t=>{let e=DRe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=FRe(),s=gb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=gb(()=>BRe(t,LK),[t]),d=gb(()=>({...VRe,...t.transform}),[t.transform]),h=yb(null),f=!!Vl.capturesDOM,g=yb(null),[y,_]=DK(!1),[b,S]=DK(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));pb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=yb(void 0),v=yb(null);v.current===null&&(ce(a),v.current=ue(Vl,u,s));let E=gb(()=>({...e,shaderParentId:s}),[e,s]);pb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Vl.fragmentNode,n,c,v.current,Vl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),pb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=yb({}),M=gb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&o3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(pb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(o3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),pb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?LRe(FK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return kRe(G.Provider,{value:E,children:[FK("span",{ref:h,style:zRe,"data-shader-id":s,children:!f&&t.children}),R]})},BK=kK});var VK=z(()=>{"use strict";i6()});var XK={};yt(XK,{ShaderComponent:()=>jK,default:()=>qK});import{useContext as GRe,useEffect as vb,useId as HRe,useMemo as xb,useRef as bb,useState as GK}from"react";import{createPortal as WRe}from"react-dom";import{jsx as HK,jsxs as jRe}from"react/jsx-runtime";function a3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function qRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!a3(i)&&(n[r]=i);return n}var XRe,$Re,WK,jK,qK,c3=z(()=>{"use strict";mt();pt();gt();VK();XRe={display:"contents"},$Re={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},WK={blendMode:"normal",visible:!0};try{Gl&&Gl.props&&Object.entries(Gl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(WK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}jK=t=>{let e=GRe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=HRe(),s=xb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=xb(()=>qRe(t,WK),[t]),d=xb(()=>({...$Re,...t.transform}),[t.transform]),h=bb(null),f=!!Gl.capturesDOM,g=bb(null),[y,_]=GK(!1),[b,S]=GK(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));vb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=bb(void 0),v=bb(null);v.current===null&&(ce(a),v.current=ue(Gl,u,s));let E=xb(()=>({...e,shaderParentId:s}),[e,s]);vb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Gl.fragmentNode,n,c,v.current,Gl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),vb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=bb({}),M=xb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&a3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(vb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(a3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),vb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?WRe(HK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return jRe(G.Provider,{value:E,children:[HK("span",{ref:h,style:XRe,"data-shader-id":s,children:!f&&t.children}),R]})},qK=jK});var $K=z(()=>{"use strict";o6()});var eJ={};yt(eJ,{ShaderComponent:()=>JK,default:()=>QK});import{useContext as YRe,useEffect as _b,useId as ZRe,useMemo as Sb,useRef as wb,useState as YK}from"react";import{createPortal as KRe}from"react-dom";import{jsx as ZK,jsxs as JRe}from"react/jsx-runtime";function l3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function QRe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!l3(i)&&(n[r]=i);return n}var eAe,tAe,KK,JK,QK,u3=z(()=>{"use strict";mt();pt();gt();$K();eAe={display:"contents"},tAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},KK={blendMode:"normal",visible:!0};try{Hl&&Hl.props&&Object.entries(Hl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(KK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}JK=t=>{let e=YRe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=ZRe(),s=Sb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Sb(()=>QRe(t,KK),[t]),d=Sb(()=>({...tAe,...t.transform}),[t.transform]),h=wb(null),f=!!Hl.capturesDOM,g=wb(null),[y,_]=YK(!1),[b,S]=YK(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));_b(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=wb(void 0),v=wb(null);v.current===null&&(ce(a),v.current=ue(Hl,u,s));let E=Sb(()=>({...e,shaderParentId:s}),[e,s]);_b(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Hl.fragmentNode,n,c,v.current,Hl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),_b(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=wb({}),M=Sb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&l3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(_b(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(l3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),_b(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?KRe(ZK("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return JRe(G.Provider,{value:E,children:[ZK("span",{ref:h,style:eAe,"data-shader-id":s,children:!f&&t.children}),R]})},QK=JK});var tJ=z(()=>{"use strict";s6()});var aJ={};yt(aJ,{ShaderComponent:()=>oJ,default:()=>sJ});import{useContext as nAe,useEffect as Mb,useId as rAe,useMemo as Tb,useRef as Cb,useState as nJ}from"react";import{createPortal as iAe}from"react-dom";import{jsx as rJ,jsxs as oAe}from"react/jsx-runtime";function d3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function sAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!d3(i)&&(n[r]=i);return n}var aAe,cAe,iJ,oJ,sJ,f3=z(()=>{"use strict";mt();pt();gt();tJ();aAe={display:"contents"},cAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},iJ={blendMode:"normal",visible:!0};try{Wl&&Wl.props&&Object.entries(Wl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(iJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}oJ=t=>{let e=nAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=rAe(),s=Tb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Tb(()=>sAe(t,iJ),[t]),d=Tb(()=>({...cAe,...t.transform}),[t.transform]),h=Cb(null),f=!!Wl.capturesDOM,g=Cb(null),[y,_]=nJ(!1),[b,S]=nJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Mb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Cb(void 0),v=Cb(null);v.current===null&&(ce(a),v.current=ue(Wl,u,s));let E=Tb(()=>({...e,shaderParentId:s}),[e,s]);Mb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Wl.fragmentNode,n,c,v.current,Wl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Mb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Cb({}),M=Tb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&d3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Mb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(d3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Mb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?iAe(rJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return oAe(G.Provider,{value:E,children:[rJ("span",{ref:h,style:aAe,"data-shader-id":s,children:!f&&t.children}),R]})},sJ=oJ});var cJ=z(()=>{"use strict";a6()});var mJ={};yt(mJ,{ShaderComponent:()=>fJ,default:()=>hJ});import{useContext as lAe,useEffect as Eb,useId as uAe,useMemo as Rb,useRef as Ab,useState as lJ}from"react";import{createPortal as dAe}from"react-dom";import{jsx as uJ,jsxs as fAe}from"react/jsx-runtime";function h3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function hAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!h3(i)&&(n[r]=i);return n}var mAe,pAe,dJ,fJ,hJ,m3=z(()=>{"use strict";mt();pt();gt();cJ();mAe={display:"contents"},pAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},dJ={blendMode:"normal",visible:!0};try{jl&&jl.props&&Object.entries(jl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(dJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}fJ=t=>{let e=lAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=uAe(),s=Rb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Rb(()=>hAe(t,dJ),[t]),d=Rb(()=>({...pAe,...t.transform}),[t.transform]),h=Ab(null),f=!!jl.capturesDOM,g=Ab(null),[y,_]=lJ(!1),[b,S]=lJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Eb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Ab(void 0),v=Ab(null);v.current===null&&(ce(a),v.current=ue(jl,u,s));let E=Rb(()=>({...e,shaderParentId:s}),[e,s]);Eb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,jl.fragmentNode,n,c,v.current,jl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Eb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Ab({}),M=Rb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&h3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Eb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(h3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Eb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?dAe(uJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return fAe(G.Provider,{value:E,children:[uJ("span",{ref:h,style:mAe,"data-shader-id":s,children:!f&&t.children}),R]})},hJ=fJ});var pJ=z(()=>{"use strict";d6()});var _J={};yt(_J,{ShaderComponent:()=>xJ,default:()=>bJ});import{useContext as gAe,useEffect as Pb,useId as yAe,useMemo as Ib,useRef as Nb,useState as gJ}from"react";import{createPortal as vAe}from"react-dom";import{jsx as yJ,jsxs as xAe}from"react/jsx-runtime";function p3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function bAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!p3(i)&&(n[r]=i);return n}var _Ae,SAe,vJ,xJ,bJ,g3=z(()=>{"use strict";mt();pt();gt();pJ();_Ae={display:"contents"},SAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},vJ={blendMode:"normal",visible:!0};try{ql&&ql.props&&Object.entries(ql.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(vJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}xJ=t=>{let e=gAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=yAe(),s=Ib(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ib(()=>bAe(t,vJ),[t]),d=Ib(()=>({...SAe,...t.transform}),[t.transform]),h=Nb(null),f=!!ql.capturesDOM,g=Nb(null),[y,_]=gJ(!1),[b,S]=gJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Pb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Nb(void 0),v=Nb(null);v.current===null&&(ce(a),v.current=ue(ql,u,s));let E=Ib(()=>({...e,shaderParentId:s}),[e,s]);Pb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,ql.fragmentNode,n,c,v.current,ql,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Pb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Nb({}),M=Ib(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&p3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Pb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(p3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Pb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?vAe(yJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return xAe(G.Provider,{value:E,children:[yJ("span",{ref:h,style:_Ae,"data-shader-id":s,children:!f&&t.children}),R]})},bJ=xJ});var SJ=z(()=>{"use strict";h6()});var RJ={};yt(RJ,{ShaderComponent:()=>CJ,default:()=>EJ});import{useContext as wAe,useEffect as Ob,useId as MAe,useMemo as Ub,useRef as Db,useState as wJ}from"react";import{createPortal as TAe}from"react-dom";import{jsx as MJ,jsxs as CAe}from"react/jsx-runtime";function y3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function EAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!y3(i)&&(n[r]=i);return n}var RAe,AAe,TJ,CJ,EJ,v3=z(()=>{"use strict";mt();pt();gt();SJ();RAe={display:"contents"},AAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},TJ={blendMode:"normal",visible:!0};try{Xl&&Xl.props&&Object.entries(Xl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(TJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}CJ=t=>{let e=wAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=MAe(),s=Ub(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ub(()=>EAe(t,TJ),[t]),d=Ub(()=>({...AAe,...t.transform}),[t.transform]),h=Db(null),f=!!Xl.capturesDOM,g=Db(null),[y,_]=wJ(!1),[b,S]=wJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Ob(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Db(void 0),v=Db(null);v.current===null&&(ce(a),v.current=ue(Xl,u,s));let E=Ub(()=>({...e,shaderParentId:s}),[e,s]);Ob(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Xl.fragmentNode,n,c,v.current,Xl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Ob(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Db({}),M=Ub(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&y3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ob(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(y3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ob(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?TAe(MJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return CAe(G.Provider,{value:E,children:[MJ("span",{ref:h,style:RAe,"data-shader-id":s,children:!f&&t.children}),R]})},EJ=CJ});var AJ=z(()=>{"use strict";m6()});var DJ={};yt(DJ,{ShaderComponent:()=>OJ,default:()=>UJ});import{useContext as PAe,useEffect as Fb,useId as IAe,useMemo as Lb,useRef as kb,useState as PJ}from"react";import{createPortal as NAe}from"react-dom";import{jsx as IJ,jsxs as OAe}from"react/jsx-runtime";function x3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function UAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!x3(i)&&(n[r]=i);return n}var DAe,FAe,NJ,OJ,UJ,b3=z(()=>{"use strict";mt();pt();gt();AJ();DAe={display:"contents"},FAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},NJ={blendMode:"normal",visible:!0};try{$l&&$l.props&&Object.entries($l.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(NJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}OJ=t=>{let e=PAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=IAe(),s=Lb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Lb(()=>UAe(t,NJ),[t]),d=Lb(()=>({...FAe,...t.transform}),[t.transform]),h=kb(null),f=!!$l.capturesDOM,g=kb(null),[y,_]=PJ(!1),[b,S]=PJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Fb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=kb(void 0),v=kb(null);v.current===null&&(ce(a),v.current=ue($l,u,s));let E=Lb(()=>({...e,shaderParentId:s}),[e,s]);Fb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,$l.fragmentNode,n,c,v.current,$l,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Fb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=kb({}),M=Lb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&x3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Fb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(x3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Fb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?NAe(IJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return OAe(G.Provider,{value:E,children:[IJ("span",{ref:h,style:DAe,"data-shader-id":s,children:!f&&t.children}),R]})},UJ=OJ});var FJ=z(()=>{"use strict";p6()});var GJ={};yt(GJ,{ShaderComponent:()=>zJ,default:()=>VJ});import{useContext as LAe,useEffect as Bb,useId as kAe,useMemo as zb,useRef as Vb,useState as LJ}from"react";import{createPortal as BAe}from"react-dom";import{jsx as kJ,jsxs as zAe}from"react/jsx-runtime";function _3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function VAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!_3(i)&&(n[r]=i);return n}var GAe,HAe,BJ,zJ,VJ,S3=z(()=>{"use strict";mt();pt();gt();FJ();GAe={display:"contents"},HAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},BJ={blendMode:"normal",visible:!0};try{Yl&&Yl.props&&Object.entries(Yl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(BJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}zJ=t=>{let e=LAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=kAe(),s=zb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=zb(()=>VAe(t,BJ),[t]),d=zb(()=>({...HAe,...t.transform}),[t.transform]),h=Vb(null),f=!!Yl.capturesDOM,g=Vb(null),[y,_]=LJ(!1),[b,S]=LJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Bb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Vb(void 0),v=Vb(null);v.current===null&&(ce(a),v.current=ue(Yl,u,s));let E=zb(()=>({...e,shaderParentId:s}),[e,s]);Bb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Yl.fragmentNode,n,c,v.current,Yl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Bb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Vb({}),M=zb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&_3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Bb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(_3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Bb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?BAe(kJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return zAe(G.Provider,{value:E,children:[kJ("span",{ref:h,style:GAe,"data-shader-id":s,children:!f&&t.children}),R]})},VJ=zJ});var HJ=z(()=>{"use strict";g6()});var YJ={};yt(YJ,{ShaderComponent:()=>XJ,default:()=>$J});import{useContext as WAe,useEffect as Gb,useId as jAe,useMemo as Hb,useRef as Wb,useState as WJ}from"react";import{createPortal as qAe}from"react-dom";import{jsx as jJ,jsxs as XAe}from"react/jsx-runtime";function w3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function $Ae(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!w3(i)&&(n[r]=i);return n}var YAe,ZAe,qJ,XJ,$J,M3=z(()=>{"use strict";mt();pt();gt();HJ();YAe={display:"contents"},ZAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},qJ={blendMode:"normal",visible:!0};try{Zl&&Zl.props&&Object.entries(Zl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(qJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}XJ=t=>{let e=WAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=jAe(),s=Hb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Hb(()=>$Ae(t,qJ),[t]),d=Hb(()=>({...ZAe,...t.transform}),[t.transform]),h=Wb(null),f=!!Zl.capturesDOM,g=Wb(null),[y,_]=WJ(!1),[b,S]=WJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Gb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Wb(void 0),v=Wb(null);v.current===null&&(ce(a),v.current=ue(Zl,u,s));let E=Hb(()=>({...e,shaderParentId:s}),[e,s]);Gb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Zl.fragmentNode,n,c,v.current,Zl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Gb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Wb({}),M=Hb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&w3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Gb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(w3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Gb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?qAe(jJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return XAe(G.Provider,{value:E,children:[jJ("span",{ref:h,style:YAe,"data-shader-id":s,children:!f&&t.children}),R]})},$J=XJ});var ZJ=z(()=>{"use strict";y6()});var nQ={};yt(nQ,{ShaderComponent:()=>eQ,default:()=>tQ});import{useContext as KAe,useEffect as jb,useId as JAe,useMemo as qb,useRef as Xb,useState as KJ}from"react";import{createPortal as QAe}from"react-dom";import{jsx as JJ,jsxs as e2e}from"react/jsx-runtime";function T3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function t2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!T3(i)&&(n[r]=i);return n}var n2e,r2e,QJ,eQ,tQ,C3=z(()=>{"use strict";mt();pt();gt();ZJ();n2e={display:"contents"},r2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},QJ={blendMode:"normal",visible:!0};try{Kl&&Kl.props&&Object.entries(Kl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(QJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}eQ=t=>{let e=KAe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=JAe(),s=qb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=qb(()=>t2e(t,QJ),[t]),d=qb(()=>({...r2e,...t.transform}),[t.transform]),h=Xb(null),f=!!Kl.capturesDOM,g=Xb(null),[y,_]=KJ(!1),[b,S]=KJ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));jb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Xb(void 0),v=Xb(null);v.current===null&&(ce(a),v.current=ue(Kl,u,s));let E=qb(()=>({...e,shaderParentId:s}),[e,s]);jb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Kl.fragmentNode,n,c,v.current,Kl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),jb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Xb({}),M=qb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&T3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(jb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(T3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),jb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?QAe(JJ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return e2e(G.Provider,{value:E,children:[JJ("span",{ref:h,style:n2e,"data-shader-id":s,children:!f&&t.children}),R]})},tQ=eQ});var rQ=z(()=>{"use strict";v6()});var lQ={};yt(lQ,{ShaderComponent:()=>aQ,default:()=>cQ});import{useContext as i2e,useEffect as $b,useId as o2e,useMemo as Yb,useRef as Zb,useState as iQ}from"react";import{createPortal as s2e}from"react-dom";import{jsx as oQ,jsxs as a2e}from"react/jsx-runtime";function E3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function c2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!E3(i)&&(n[r]=i);return n}var l2e,u2e,sQ,aQ,cQ,R3=z(()=>{"use strict";mt();pt();gt();rQ();l2e={display:"contents"},u2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},sQ={blendMode:"normal",visible:!0};try{Jl&&Jl.props&&Object.entries(Jl.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(sQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}aQ=t=>{let e=i2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=o2e(),s=Yb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Yb(()=>c2e(t,sQ),[t]),d=Yb(()=>({...u2e,...t.transform}),[t.transform]),h=Zb(null),f=!!Jl.capturesDOM,g=Zb(null),[y,_]=iQ(!1),[b,S]=iQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));$b(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Zb(void 0),v=Zb(null);v.current===null&&(ce(a),v.current=ue(Jl,u,s));let E=Yb(()=>({...e,shaderParentId:s}),[e,s]);$b(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Jl.fragmentNode,n,c,v.current,Jl,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),$b(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Zb({}),M=Yb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&E3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if($b(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(E3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),$b(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?s2e(oQ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return a2e(G.Provider,{value:E,children:[oQ("span",{ref:h,style:l2e,"data-shader-id":s,children:!f&&t.children}),R]})},cQ=aQ});var uQ=z(()=>{"use strict";x6()});var gQ={};yt(gQ,{ShaderComponent:()=>mQ,default:()=>pQ});import{useContext as d2e,useEffect as Kb,useId as f2e,useMemo as Jb,useRef as Qb,useState as dQ}from"react";import{createPortal as h2e}from"react-dom";import{jsx as fQ,jsxs as m2e}from"react/jsx-runtime";function A3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function p2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!A3(i)&&(n[r]=i);return n}var g2e,y2e,hQ,mQ,pQ,P3=z(()=>{"use strict";mt();pt();gt();uQ();g2e={display:"contents"},y2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},hQ={blendMode:"normal",visible:!0};try{Ql&&Ql.props&&Object.entries(Ql.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(hQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}mQ=t=>{let e=d2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=f2e(),s=Jb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Jb(()=>p2e(t,hQ),[t]),d=Jb(()=>({...y2e,...t.transform}),[t.transform]),h=Qb(null),f=!!Ql.capturesDOM,g=Qb(null),[y,_]=dQ(!1),[b,S]=dQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));Kb(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Qb(void 0),v=Qb(null);v.current===null&&(ce(a),v.current=ue(Ql,u,s));let E=Jb(()=>({...e,shaderParentId:s}),[e,s]);Kb(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,Ql.fragmentNode,n,c,v.current,Ql,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),Kb(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Qb({}),M=Jb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&A3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Kb(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(A3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Kb(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?h2e(fQ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return m2e(G.Provider,{value:E,children:[fQ("span",{ref:h,style:g2e,"data-shader-id":s,children:!f&&t.children}),R]})},pQ=mQ});var yQ=z(()=>{"use strict";b6()});var wQ={};yt(wQ,{ShaderComponent:()=>_Q,default:()=>SQ});import{useContext as v2e,useEffect as e_,useId as x2e,useMemo as t_,useRef as n_,useState as vQ}from"react";import{createPortal as b2e}from"react-dom";import{jsx as xQ,jsxs as _2e}from"react/jsx-runtime";function I3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function S2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!I3(i)&&(n[r]=i);return n}var w2e,M2e,bQ,_Q,SQ,N3=z(()=>{"use strict";mt();pt();gt();yQ();w2e={display:"contents"},M2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},bQ={blendMode:"normal",visible:!0};try{eu&&eu.props&&Object.entries(eu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(bQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}_Q=t=>{let e=v2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=x2e(),s=t_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=t_(()=>S2e(t,bQ),[t]),d=t_(()=>({...M2e,...t.transform}),[t.transform]),h=n_(null),f=!!eu.capturesDOM,g=n_(null),[y,_]=vQ(!1),[b,S]=vQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));e_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=n_(void 0),v=n_(null);v.current===null&&(ce(a),v.current=ue(eu,u,s));let E=t_(()=>({...e,shaderParentId:s}),[e,s]);e_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,eu.fragmentNode,n,c,v.current,eu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),e_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=n_({}),M=t_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&I3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(e_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(I3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),e_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?b2e(xQ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return _2e(G.Provider,{value:E,children:[xQ("span",{ref:h,style:w2e,"data-shader-id":s,children:!f&&t.children}),R]})},SQ=_Q});var MQ=z(()=>{"use strict";_6()});var PQ={};yt(PQ,{ShaderComponent:()=>RQ,default:()=>AQ});import{useContext as T2e,useEffect as r_,useId as C2e,useMemo as i_,useRef as o_,useState as TQ}from"react";import{createPortal as E2e}from"react-dom";import{jsx as CQ,jsxs as R2e}from"react/jsx-runtime";function O3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function A2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!O3(i)&&(n[r]=i);return n}var P2e,I2e,EQ,RQ,AQ,U3=z(()=>{"use strict";mt();pt();gt();MQ();P2e={display:"contents"},I2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},EQ={blendMode:"normal",visible:!0};try{tu&&tu.props&&Object.entries(tu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(EQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}RQ=t=>{let e=T2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=C2e(),s=i_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=i_(()=>A2e(t,EQ),[t]),d=i_(()=>({...I2e,...t.transform}),[t.transform]),h=o_(null),f=!!tu.capturesDOM,g=o_(null),[y,_]=TQ(!1),[b,S]=TQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));r_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=o_(void 0),v=o_(null);v.current===null&&(ce(a),v.current=ue(tu,u,s));let E=i_(()=>({...e,shaderParentId:s}),[e,s]);r_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,tu.fragmentNode,n,c,v.current,tu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),r_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=o_({}),M=i_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&O3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(r_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(O3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),r_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?E2e(CQ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return R2e(G.Provider,{value:E,children:[CQ("span",{ref:h,style:P2e,"data-shader-id":s,children:!f&&t.children}),R]})},AQ=RQ});var IQ=z(()=>{"use strict";S6()});var LQ={};yt(LQ,{ShaderComponent:()=>DQ,default:()=>FQ});import{useContext as N2e,useEffect as s_,useId as O2e,useMemo as a_,useRef as c_,useState as NQ}from"react";import{createPortal as U2e}from"react-dom";import{jsx as OQ,jsxs as D2e}from"react/jsx-runtime";function D3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function F2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!D3(i)&&(n[r]=i);return n}var L2e,k2e,UQ,DQ,FQ,F3=z(()=>{"use strict";mt();pt();gt();IQ();L2e={display:"contents"},k2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},UQ={blendMode:"normal",visible:!0};try{nu&&nu.props&&Object.entries(nu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(UQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}DQ=t=>{let e=N2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=O2e(),s=a_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=a_(()=>F2e(t,UQ),[t]),d=a_(()=>({...k2e,...t.transform}),[t.transform]),h=c_(null),f=!!nu.capturesDOM,g=c_(null),[y,_]=NQ(!1),[b,S]=NQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));s_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=c_(void 0),v=c_(null);v.current===null&&(ce(a),v.current=ue(nu,u,s));let E=a_(()=>({...e,shaderParentId:s}),[e,s]);s_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,nu.fragmentNode,n,c,v.current,nu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),s_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=c_({}),M=a_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&D3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(s_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(D3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),s_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?U2e(OQ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return D2e(G.Provider,{value:E,children:[OQ("span",{ref:h,style:L2e,"data-shader-id":s,children:!f&&t.children}),R]})},FQ=DQ});var kQ=z(()=>{"use strict";w6()});var WQ={};yt(WQ,{ShaderComponent:()=>GQ,default:()=>HQ});import{useContext as B2e,useEffect as l_,useId as z2e,useMemo as u_,useRef as d_,useState as BQ}from"react";import{createPortal as V2e}from"react-dom";import{jsx as zQ,jsxs as G2e}from"react/jsx-runtime";function L3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function H2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!L3(i)&&(n[r]=i);return n}var W2e,j2e,VQ,GQ,HQ,k3=z(()=>{"use strict";mt();pt();gt();kQ();W2e={display:"contents"},j2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},VQ={blendMode:"normal",visible:!0};try{ru&&ru.props&&Object.entries(ru.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(VQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}GQ=t=>{let e=B2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=z2e(),s=u_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=u_(()=>H2e(t,VQ),[t]),d=u_(()=>({...j2e,...t.transform}),[t.transform]),h=d_(null),f=!!ru.capturesDOM,g=d_(null),[y,_]=BQ(!1),[b,S]=BQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));l_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=d_(void 0),v=d_(null);v.current===null&&(ce(a),v.current=ue(ru,u,s));let E=u_(()=>({...e,shaderParentId:s}),[e,s]);l_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,ru.fragmentNode,n,c,v.current,ru,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),l_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=d_({}),M=u_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&L3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(l_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(L3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),l_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?V2e(zQ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return G2e(G.Provider,{value:E,children:[zQ("span",{ref:h,style:W2e,"data-shader-id":s,children:!f&&t.children}),R]})},HQ=GQ});var jQ=z(()=>{"use strict";M6()});var KQ={};yt(KQ,{ShaderComponent:()=>YQ,default:()=>ZQ});import{useContext as q2e,useEffect as f_,useId as X2e,useMemo as h_,useRef as m_,useState as qQ}from"react";import{createPortal as $2e}from"react-dom";import{jsx as XQ,jsxs as Y2e}from"react/jsx-runtime";function B3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function Z2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!B3(i)&&(n[r]=i);return n}var K2e,J2e,$Q,YQ,ZQ,z3=z(()=>{"use strict";mt();pt();gt();jQ();K2e={display:"contents"},J2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},$Q={blendMode:"normal",visible:!0};try{iu&&iu.props&&Object.entries(iu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&($Q[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}YQ=t=>{let e=q2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=X2e(),s=h_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=h_(()=>Z2e(t,$Q),[t]),d=h_(()=>({...J2e,...t.transform}),[t.transform]),h=m_(null),f=!!iu.capturesDOM,g=m_(null),[y,_]=qQ(!1),[b,S]=qQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));f_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=m_(void 0),v=m_(null);v.current===null&&(ce(a),v.current=ue(iu,u,s));let E=h_(()=>({...e,shaderParentId:s}),[e,s]);f_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,iu.fragmentNode,n,c,v.current,iu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),f_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=m_({}),M=h_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&B3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(f_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(B3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),f_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?$2e(XQ("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return Y2e(G.Provider,{value:E,children:[XQ("span",{ref:h,style:K2e,"data-shader-id":s,children:!f&&t.children}),R]})},ZQ=YQ});var JQ=z(()=>{"use strict";T6()});var iee={};yt(iee,{ShaderComponent:()=>nee,default:()=>ree});import{useContext as Q2e,useEffect as p_,useId as ePe,useMemo as g_,useRef as y_,useState as QQ}from"react";import{createPortal as tPe}from"react-dom";import{jsx as eee,jsxs as nPe}from"react/jsx-runtime";function V3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function rPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!V3(i)&&(n[r]=i);return n}var iPe,oPe,tee,nee,ree,G3=z(()=>{"use strict";mt();pt();gt();JQ();iPe={display:"contents"},oPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},tee={blendMode:"normal",visible:!0};try{ou&&ou.props&&Object.entries(ou.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(tee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}nee=t=>{let e=Q2e(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=ePe(),s=g_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=g_(()=>rPe(t,tee),[t]),d=g_(()=>({...oPe,...t.transform}),[t.transform]),h=y_(null),f=!!ou.capturesDOM,g=y_(null),[y,_]=QQ(!1),[b,S]=QQ(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));p_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=y_(void 0),v=y_(null);v.current===null&&(ce(a),v.current=ue(ou,u,s));let E=g_(()=>({...e,shaderParentId:s}),[e,s]);p_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,ou.fragmentNode,n,c,v.current,ou,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),p_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=y_({}),M=g_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&V3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(p_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(V3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),p_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?tPe(eee("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return nPe(G.Provider,{value:E,children:[eee("span",{ref:h,style:iPe,"data-shader-id":s,children:!f&&t.children}),R]})},ree=nee});var oee=z(()=>{"use strict";C6()});var dee={};yt(dee,{ShaderComponent:()=>lee,default:()=>uee});import{useContext as sPe,useEffect as v_,useId as aPe,useMemo as x_,useRef as b_,useState as see}from"react";import{createPortal as cPe}from"react-dom";import{jsx as aee,jsxs as lPe}from"react/jsx-runtime";function H3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function uPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!H3(i)&&(n[r]=i);return n}var dPe,fPe,cee,lee,uee,W3=z(()=>{"use strict";mt();pt();gt();oee();dPe={display:"contents"},fPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},cee={blendMode:"normal",visible:!0};try{su&&su.props&&Object.entries(su.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(cee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}lee=t=>{let e=sPe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=aPe(),s=x_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=x_(()=>uPe(t,cee),[t]),d=x_(()=>({...fPe,...t.transform}),[t.transform]),h=b_(null),f=!!su.capturesDOM,g=b_(null),[y,_]=see(!1),[b,S]=see(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));v_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=b_(void 0),v=b_(null);v.current===null&&(ce(a),v.current=ue(su,u,s));let E=x_(()=>({...e,shaderParentId:s}),[e,s]);v_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,su.fragmentNode,n,c,v.current,su,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),v_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=b_({}),M=x_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&H3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(v_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(H3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),v_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?cPe(aee("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return lPe(G.Provider,{value:E,children:[aee("span",{ref:h,style:dPe,"data-shader-id":s,children:!f&&t.children}),R]})},uee=lee});var fee=z(()=>{"use strict";E6()});var vee={};yt(vee,{ShaderComponent:()=>gee,default:()=>yee});import{useContext as hPe,useEffect as __,useId as mPe,useMemo as S_,useRef as w_,useState as hee}from"react";import{createPortal as pPe}from"react-dom";import{jsx as mee,jsxs as gPe}from"react/jsx-runtime";function j3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function yPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!j3(i)&&(n[r]=i);return n}var vPe,xPe,pee,gee,yee,q3=z(()=>{"use strict";mt();pt();gt();fee();vPe={display:"contents"},xPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},pee={blendMode:"normal",visible:!0};try{au&&au.props&&Object.entries(au.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(pee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}gee=t=>{let e=hPe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=mPe(),s=S_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=S_(()=>yPe(t,pee),[t]),d=S_(()=>({...xPe,...t.transform}),[t.transform]),h=w_(null),f=!!au.capturesDOM,g=w_(null),[y,_]=hee(!1),[b,S]=hee(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));__(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=w_(void 0),v=w_(null);v.current===null&&(ce(a),v.current=ue(au,u,s));let E=S_(()=>({...e,shaderParentId:s}),[e,s]);__(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,au.fragmentNode,n,c,v.current,au,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),__(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=w_({}),M=S_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&j3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(__(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(j3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),__(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?pPe(mee("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return gPe(G.Provider,{value:E,children:[mee("span",{ref:h,style:vPe,"data-shader-id":s,children:!f&&t.children}),R]})},yee=gee});var xee=z(()=>{"use strict";R6()});var Tee={};yt(Tee,{ShaderComponent:()=>wee,default:()=>Mee});import{useContext as bPe,useEffect as M_,useId as _Pe,useMemo as T_,useRef as C_,useState as bee}from"react";import{createPortal as SPe}from"react-dom";import{jsx as _ee,jsxs as wPe}from"react/jsx-runtime";function X3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function MPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!X3(i)&&(n[r]=i);return n}var TPe,CPe,See,wee,Mee,$3=z(()=>{"use strict";mt();pt();gt();xee();TPe={display:"contents"},CPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},See={blendMode:"normal",visible:!0};try{cu&&cu.props&&Object.entries(cu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(See[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}wee=t=>{let e=bPe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=_Pe(),s=T_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=T_(()=>MPe(t,See),[t]),d=T_(()=>({...CPe,...t.transform}),[t.transform]),h=C_(null),f=!!cu.capturesDOM,g=C_(null),[y,_]=bee(!1),[b,S]=bee(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));M_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=C_(void 0),v=C_(null);v.current===null&&(ce(a),v.current=ue(cu,u,s));let E=T_(()=>({...e,shaderParentId:s}),[e,s]);M_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,cu.fragmentNode,n,c,v.current,cu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),M_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=C_({}),M=T_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&X3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(M_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(X3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),M_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?SPe(_ee("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return wPe(G.Provider,{value:E,children:[_ee("span",{ref:h,style:TPe,"data-shader-id":s,children:!f&&t.children}),R]})},Mee=wee});var Cee=z(()=>{"use strict";A6()});var Nee={};yt(Nee,{ShaderComponent:()=>Pee,default:()=>Iee});import{useContext as EPe,useEffect as E_,useId as RPe,useMemo as R_,useRef as A_,useState as Eee}from"react";import{createPortal as APe}from"react-dom";import{jsx as Ree,jsxs as PPe}from"react/jsx-runtime";function Y3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function IPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!Y3(i)&&(n[r]=i);return n}var NPe,OPe,Aee,Pee,Iee,Z3=z(()=>{"use strict";mt();pt();gt();Cee();NPe={display:"contents"},OPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Aee={blendMode:"normal",visible:!0};try{lu&&lu.props&&Object.entries(lu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Aee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Pee=t=>{let e=EPe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=RPe(),s=R_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=R_(()=>IPe(t,Aee),[t]),d=R_(()=>({...OPe,...t.transform}),[t.transform]),h=A_(null),f=!!lu.capturesDOM,g=A_(null),[y,_]=Eee(!1),[b,S]=Eee(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));E_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=A_(void 0),v=A_(null);v.current===null&&(ce(a),v.current=ue(lu,u,s));let E=R_(()=>({...e,shaderParentId:s}),[e,s]);E_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,lu.fragmentNode,n,c,v.current,lu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),E_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=A_({}),M=R_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&Y3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(E_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(Y3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),E_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?APe(Ree("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return PPe(G.Provider,{value:E,children:[Ree("span",{ref:h,style:NPe,"data-shader-id":s,children:!f&&t.children}),R]})},Iee=Pee});var Oee=z(()=>{"use strict";P6()});var Bee={};yt(Bee,{ShaderComponent:()=>Lee,default:()=>kee});import{useContext as UPe,useEffect as P_,useId as DPe,useMemo as I_,useRef as N_,useState as Uee}from"react";import{createPortal as FPe}from"react-dom";import{jsx as Dee,jsxs as LPe}from"react/jsx-runtime";function K3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function kPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!K3(i)&&(n[r]=i);return n}var BPe,zPe,Fee,Lee,kee,J3=z(()=>{"use strict";mt();pt();gt();Oee();BPe={display:"contents"},zPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Fee={blendMode:"normal",visible:!0};try{uu&&uu.props&&Object.entries(uu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Fee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Lee=t=>{let e=UPe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=DPe(),s=I_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=I_(()=>kPe(t,Fee),[t]),d=I_(()=>({...zPe,...t.transform}),[t.transform]),h=N_(null),f=!!uu.capturesDOM,g=N_(null),[y,_]=Uee(!1),[b,S]=Uee(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));P_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=N_(void 0),v=N_(null);v.current===null&&(ce(a),v.current=ue(uu,u,s));let E=I_(()=>({...e,shaderParentId:s}),[e,s]);P_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,uu.fragmentNode,n,c,v.current,uu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),P_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=N_({}),M=I_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&K3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(P_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(K3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),P_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?FPe(Dee("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return LPe(G.Provider,{value:E,children:[Dee("span",{ref:h,style:BPe,"data-shader-id":s,children:!f&&t.children}),R]})},kee=Lee});var zee=z(()=>{"use strict";N6()});var qee={};yt(qee,{ShaderComponent:()=>Wee,default:()=>jee});import{useContext as VPe,useEffect as O_,useId as GPe,useMemo as U_,useRef as D_,useState as Vee}from"react";import{createPortal as HPe}from"react-dom";import{jsx as Gee,jsxs as WPe}from"react/jsx-runtime";function Q3(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function jPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!Q3(i)&&(n[r]=i);return n}var qPe,XPe,Hee,Wee,jee,eD=z(()=>{"use strict";mt();pt();gt();zee();qPe={display:"contents"},XPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Hee={blendMode:"normal",visible:!0};try{fu&&fu.props&&Object.entries(fu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Hee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Wee=t=>{let e=VPe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=GPe(),s=U_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=U_(()=>jPe(t,Hee),[t]),d=U_(()=>({...XPe,...t.transform}),[t.transform]),h=D_(null),f=!!fu.capturesDOM,g=D_(null),[y,_]=Vee(!1),[b,S]=Vee(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));O_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=D_(void 0),v=D_(null);v.current===null&&(ce(a),v.current=ue(fu,u,s));let E=U_(()=>({...e,shaderParentId:s}),[e,s]);O_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,fu.fragmentNode,n,c,v.current,fu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),O_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=D_({}),M=U_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&Q3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(O_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(Q3(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),O_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?HPe(Gee("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return WPe(G.Provider,{value:E,children:[Gee("span",{ref:h,style:qPe,"data-shader-id":s,children:!f&&t.children}),R]})},jee=Wee});var Xee=z(()=>{"use strict";I6()});var Qee={};yt(Qee,{ShaderComponent:()=>Kee,default:()=>Jee});import{useContext as $Pe,useEffect as F_,useId as YPe,useMemo as L_,useRef as k_,useState as $ee}from"react";import{createPortal as ZPe}from"react-dom";import{jsx as Yee,jsxs as KPe}from"react/jsx-runtime";function tD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function JPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!tD(i)&&(n[r]=i);return n}var QPe,eIe,Zee,Kee,Jee,nD=z(()=>{"use strict";mt();pt();gt();Xee();QPe={display:"contents"},eIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Zee={blendMode:"normal",visible:!0};try{du&&du.props&&Object.entries(du.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Zee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Kee=t=>{let e=$Pe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=YPe(),s=L_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=L_(()=>JPe(t,Zee),[t]),d=L_(()=>({...eIe,...t.transform}),[t.transform]),h=k_(null),f=!!du.capturesDOM,g=k_(null),[y,_]=$ee(!1),[b,S]=$ee(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));F_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=k_(void 0),v=k_(null);v.current===null&&(ce(a),v.current=ue(du,u,s));let E=L_(()=>({...e,shaderParentId:s}),[e,s]);F_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,du.fragmentNode,n,c,v.current,du,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),F_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=k_({}),M=L_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&tD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(F_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(tD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),F_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?ZPe(Yee("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return KPe(G.Provider,{value:E,children:[Yee("span",{ref:h,style:QPe,"data-shader-id":s,children:!f&&t.children}),R]})},Jee=Kee});var ete=z(()=>{"use strict";O6()});var ste={};yt(ste,{ShaderComponent:()=>ite,default:()=>ote});import{useContext as tIe,useEffect as B_,useId as nIe,useMemo as z_,useRef as V_,useState as tte}from"react";import{createPortal as rIe}from"react-dom";import{jsx as nte,jsxs as iIe}from"react/jsx-runtime";function rD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function oIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!rD(i)&&(n[r]=i);return n}var sIe,aIe,rte,ite,ote,iD=z(()=>{"use strict";mt();pt();gt();ete();sIe={display:"contents"},aIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},rte={blendMode:"normal",visible:!0};try{hu&&hu.props&&Object.entries(hu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(rte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}ite=t=>{let e=tIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=nIe(),s=z_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=z_(()=>oIe(t,rte),[t]),d=z_(()=>({...aIe,...t.transform}),[t.transform]),h=V_(null),f=!!hu.capturesDOM,g=V_(null),[y,_]=tte(!1),[b,S]=tte(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));B_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=V_(void 0),v=V_(null);v.current===null&&(ce(a),v.current=ue(hu,u,s));let E=z_(()=>({...e,shaderParentId:s}),[e,s]);B_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,hu.fragmentNode,n,c,v.current,hu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),B_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=V_({}),M=z_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&rD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(B_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(rD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),B_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?rIe(nte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return iIe(G.Provider,{value:E,children:[nte("span",{ref:h,style:sIe,"data-shader-id":s,children:!f&&t.children}),R]})},ote=ite});var ate=z(()=>{"use strict";U6()});var hte={};yt(hte,{ShaderComponent:()=>dte,default:()=>fte});import{useContext as cIe,useEffect as G_,useId as lIe,useMemo as H_,useRef as W_,useState as cte}from"react";import{createPortal as uIe}from"react-dom";import{jsx as lte,jsxs as dIe}from"react/jsx-runtime";function oD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function fIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!oD(i)&&(n[r]=i);return n}var hIe,mIe,ute,dte,fte,sD=z(()=>{"use strict";mt();pt();gt();ate();hIe={display:"contents"},mIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},ute={blendMode:"normal",visible:!0};try{mu&&mu.props&&Object.entries(mu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(ute[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}dte=t=>{let e=cIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=lIe(),s=H_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=H_(()=>fIe(t,ute),[t]),d=H_(()=>({...mIe,...t.transform}),[t.transform]),h=W_(null),f=!!mu.capturesDOM,g=W_(null),[y,_]=cte(!1),[b,S]=cte(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));G_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=W_(void 0),v=W_(null);v.current===null&&(ce(a),v.current=ue(mu,u,s));let E=H_(()=>({...e,shaderParentId:s}),[e,s]);G_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,mu.fragmentNode,n,c,v.current,mu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),G_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=W_({}),M=H_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&oD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(G_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(oD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),G_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?uIe(lte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return dIe(G.Provider,{value:E,children:[lte("span",{ref:h,style:hIe,"data-shader-id":s,children:!f&&t.children}),R]})},fte=dte});var mte=z(()=>{"use strict";D6()});var bte={};yt(bte,{ShaderComponent:()=>vte,default:()=>xte});import{useContext as pIe,useEffect as j_,useId as gIe,useMemo as q_,useRef as X_,useState as pte}from"react";import{createPortal as yIe}from"react-dom";import{jsx as gte,jsxs as vIe}from"react/jsx-runtime";function aD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function xIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!aD(i)&&(n[r]=i);return n}var bIe,_Ie,yte,vte,xte,cD=z(()=>{"use strict";mt();pt();gt();mte();bIe={display:"contents"},_Ie={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},yte={blendMode:"normal",visible:!0};try{pu&&pu.props&&Object.entries(pu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(yte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}vte=t=>{let e=pIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=gIe(),s=q_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=q_(()=>xIe(t,yte),[t]),d=q_(()=>({..._Ie,...t.transform}),[t.transform]),h=X_(null),f=!!pu.capturesDOM,g=X_(null),[y,_]=pte(!1),[b,S]=pte(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));j_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=X_(void 0),v=X_(null);v.current===null&&(ce(a),v.current=ue(pu,u,s));let E=q_(()=>({...e,shaderParentId:s}),[e,s]);j_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,pu.fragmentNode,n,c,v.current,pu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),j_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=X_({}),M=q_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&aD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(j_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(aD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),j_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?yIe(gte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return vIe(G.Provider,{value:E,children:[gte("span",{ref:h,style:bIe,"data-shader-id":s,children:!f&&t.children}),R]})},xte=vte});var _te=z(()=>{"use strict";F6()});var Ete={};yt(Ete,{ShaderComponent:()=>Tte,default:()=>Cte});import{useContext as SIe,useEffect as $_,useId as wIe,useMemo as Y_,useRef as Z_,useState as Ste}from"react";import{createPortal as MIe}from"react-dom";import{jsx as wte,jsxs as TIe}from"react/jsx-runtime";function lD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function CIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!lD(i)&&(n[r]=i);return n}var EIe,RIe,Mte,Tte,Cte,uD=z(()=>{"use strict";mt();pt();gt();_te();EIe={display:"contents"},RIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Mte={blendMode:"normal",visible:!0};try{gu&&gu.props&&Object.entries(gu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Mte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Tte=t=>{let e=SIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=wIe(),s=Y_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Y_(()=>CIe(t,Mte),[t]),d=Y_(()=>({...RIe,...t.transform}),[t.transform]),h=Z_(null),f=!!gu.capturesDOM,g=Z_(null),[y,_]=Ste(!1),[b,S]=Ste(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));$_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Z_(void 0),v=Z_(null);v.current===null&&(ce(a),v.current=ue(gu,u,s));let E=Y_(()=>({...e,shaderParentId:s}),[e,s]);$_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,gu.fragmentNode,n,c,v.current,gu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),$_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Z_({}),M=Y_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&lD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if($_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(lD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),$_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?MIe(wte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return TIe(G.Provider,{value:E,children:[wte("span",{ref:h,style:EIe,"data-shader-id":s,children:!f&&t.children}),R]})},Cte=Tte});var Rte=z(()=>{"use strict";L6()});var Ute={};yt(Ute,{ShaderComponent:()=>Nte,default:()=>Ote});import{useContext as AIe,useEffect as K_,useId as PIe,useMemo as J_,useRef as Q_,useState as Ate}from"react";import{createPortal as IIe}from"react-dom";import{jsx as Pte,jsxs as NIe}from"react/jsx-runtime";function dD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function OIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!dD(i)&&(n[r]=i);return n}var UIe,DIe,Ite,Nte,Ote,fD=z(()=>{"use strict";mt();pt();gt();Rte();UIe={display:"contents"},DIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Ite={blendMode:"normal",visible:!0};try{yu&&yu.props&&Object.entries(yu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Ite[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Nte=t=>{let e=AIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=PIe(),s=J_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=J_(()=>OIe(t,Ite),[t]),d=J_(()=>({...DIe,...t.transform}),[t.transform]),h=Q_(null),f=!!yu.capturesDOM,g=Q_(null),[y,_]=Ate(!1),[b,S]=Ate(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));K_(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=Q_(void 0),v=Q_(null);v.current===null&&(ce(a),v.current=ue(yu,u,s));let E=J_(()=>({...e,shaderParentId:s}),[e,s]);K_(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,yu.fragmentNode,n,c,v.current,yu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),K_(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=Q_({}),M=J_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&dD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(K_(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(dD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),K_(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?IIe(Pte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return NIe(G.Provider,{value:E,children:[Pte("span",{ref:h,style:UIe,"data-shader-id":s,children:!f&&t.children}),R]})},Ote=Nte});var Dte=z(()=>{"use strict";k6()});var Vte={};yt(Vte,{ShaderComponent:()=>Bte,default:()=>zte});import{useContext as FIe,useEffect as eS,useId as LIe,useMemo as tS,useRef as nS,useState as Fte}from"react";import{createPortal as kIe}from"react-dom";import{jsx as Lte,jsxs as BIe}from"react/jsx-runtime";function hD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function zIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!hD(i)&&(n[r]=i);return n}var VIe,GIe,kte,Bte,zte,mD=z(()=>{"use strict";mt();pt();gt();Dte();VIe={display:"contents"},GIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},kte={blendMode:"normal",visible:!0};try{vu&&vu.props&&Object.entries(vu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(kte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Bte=t=>{let e=FIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=LIe(),s=tS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=tS(()=>zIe(t,kte),[t]),d=tS(()=>({...GIe,...t.transform}),[t.transform]),h=nS(null),f=!!vu.capturesDOM,g=nS(null),[y,_]=Fte(!1),[b,S]=Fte(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));eS(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=nS(void 0),v=nS(null);v.current===null&&(ce(a),v.current=ue(vu,u,s));let E=tS(()=>({...e,shaderParentId:s}),[e,s]);eS(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,vu.fragmentNode,n,c,v.current,vu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),eS(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=nS({}),M=tS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&hD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(eS(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(hD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),eS(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?kIe(Lte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return BIe(G.Provider,{value:E,children:[Lte("span",{ref:h,style:VIe,"data-shader-id":s,children:!f&&t.children}),R]})},zte=Bte});var Gte=z(()=>{"use strict";B6()});var $te={};yt($te,{ShaderComponent:()=>qte,default:()=>Xte});import{useContext as HIe,useEffect as rS,useId as WIe,useMemo as iS,useRef as oS,useState as Hte}from"react";import{createPortal as jIe}from"react-dom";import{jsx as Wte,jsxs as qIe}from"react/jsx-runtime";function pD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function XIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!pD(i)&&(n[r]=i);return n}var $Ie,YIe,jte,qte,Xte,gD=z(()=>{"use strict";mt();pt();gt();Gte();$Ie={display:"contents"},YIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},jte={blendMode:"normal",visible:!0};try{xu&&xu.props&&Object.entries(xu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(jte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}qte=t=>{let e=HIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=WIe(),s=iS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=iS(()=>XIe(t,jte),[t]),d=iS(()=>({...YIe,...t.transform}),[t.transform]),h=oS(null),f=!!xu.capturesDOM,g=oS(null),[y,_]=Hte(!1),[b,S]=Hte(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));rS(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=oS(void 0),v=oS(null);v.current===null&&(ce(a),v.current=ue(xu,u,s));let E=iS(()=>({...e,shaderParentId:s}),[e,s]);rS(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,xu.fragmentNode,n,c,v.current,xu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),rS(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=oS({}),M=iS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&pD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(rS(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(pD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),rS(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?jIe(Wte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return qIe(G.Provider,{value:E,children:[Wte("span",{ref:h,style:$Ie,"data-shader-id":s,children:!f&&t.children}),R]})},Xte=qte});var Yte=z(()=>{"use strict";q6()});var tne={};yt(tne,{ShaderComponent:()=>Qte,default:()=>ene});import{useContext as ZIe,useEffect as sS,useId as KIe,useMemo as aS,useRef as cS,useState as Zte}from"react";import{createPortal as JIe}from"react-dom";import{jsx as Kte,jsxs as QIe}from"react/jsx-runtime";function yD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function eNe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!yD(i)&&(n[r]=i);return n}var tNe,nNe,Jte,Qte,ene,vD=z(()=>{"use strict";mt();pt();gt();Yte();tNe={display:"contents"},nNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Jte={blendMode:"normal",visible:!0};try{bu&&bu.props&&Object.entries(bu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Jte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Qte=t=>{let e=ZIe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=KIe(),s=aS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=aS(()=>eNe(t,Jte),[t]),d=aS(()=>({...nNe,...t.transform}),[t.transform]),h=cS(null),f=!!bu.capturesDOM,g=cS(null),[y,_]=Zte(!1),[b,S]=Zte(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));sS(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=cS(void 0),v=cS(null);v.current===null&&(ce(a),v.current=ue(bu,u,s));let E=aS(()=>({...e,shaderParentId:s}),[e,s]);sS(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,bu.fragmentNode,n,c,v.current,bu,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),sS(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=cS({}),M=aS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&yD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(sS(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(yD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),sS(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?JIe(Kte("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return QIe(G.Provider,{value:E,children:[Kte("span",{ref:h,style:tNe,"data-shader-id":s,children:!f&&t.children}),R]})},ene=Qte});var nne=z(()=>{"use strict";$6()});var cne={};yt(cne,{ShaderComponent:()=>sne,default:()=>ane});import{useContext as rNe,useEffect as lS,useId as iNe,useMemo as uS,useRef as dS,useState as rne}from"react";import{createPortal as oNe}from"react-dom";import{jsx as ine,jsxs as sNe}from"react/jsx-runtime";function xD(t){return typeof t=="object"&&t!==null&&"type"in t&&(t.type==="map"||t.type==="mouse"||t.type==="mouse-position"||t.type==="auto-animate")}function aNe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!xD(i)&&(n[r]=i);return n}var cNe,lNe,one,sne,ane,bD=z(()=>{"use strict";mt();pt();gt();nne();cNe={display:"contents"},lNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},one={blendMode:"normal",visible:!0};try{_u&&_u.props&&Object.entries(_u.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(one[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}sne=t=>{let e=rNe(G);if(!e)throw new Error("Shader components must be used inside an <Shader> component or another shader component");let{shaderParentId:n,shaderNodeRegister:r,shaderUniformUpdate:i,shaderMetadataUpdate:o,shaderColorSpace:a}=e,l=iNe(),s=uS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=uS(()=>aNe(t,one),[t]),d=uS(()=>({...lNe,...t.transform}),[t.transform]),h=dS(null),f=!!_u.capturesDOM,g=dS(null),[y,_]=rne(!1),[b,S]=rne(()=>({w:typeof window<"u"?Math.round(window.innerWidth*Math.min(window.devicePixelRatio,2)):0,h:typeof window<"u"?Math.round(window.innerHeight*Math.min(window.devicePixelRatio,2)):0}));lS(()=>{if(!f)return;_(!0);let c=()=>{let m=Math.min(window.devicePixelRatio,2);S({w:Math.round(window.innerWidth*m),h:Math.round(window.innerHeight*m)})};return window.addEventListener("resize",c),()=>window.removeEventListener("resize",c)},[f]);let w=dS(void 0),v=dS(null);v.current===null&&(ce(a),v.current=ue(_u,u,s));let E=uS(()=>({...e,shaderParentId:s}),[e,s]);lS(()=>{if(v.current)try{let c={blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d};return r(s,_u.fragmentNode,n,c,v.current,_u,f?g.current??void 0:void 0),()=>{r(s,null,null,null,null)}}catch(c){return console.error("Error registering shader node:",c),()=>{}}},[s,n,r,y]),lS(()=>{if(t.renderOrder===void 0&&h.current){let c=h.current.parentElement;if(c){let m=c.querySelectorAll(":scope > [data-shader-id]"),x=Array.from(m).indexOf(h.current);x>=0&&(w.current=x,o(s,{renderOrder:x}))}}},[]);let C=dS({}),M=uS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&xD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(lS(()=>{if(v.current)try{Object.entries(v.current).forEach(([c,m])=>{if(!m||typeof m!="object")return;let{uniform:x}=m;if(x?.value!==void 0&&c in u){let T=u[c];if(xD(T))return;T!==C.current[c]&&(i(s,c,T),C.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),lS(()=>{try{o(s,{blendMode:t.blendMode||"normal",opacity:t.opacity,visible:t.visible!==!1,id:t.id,mask:t.maskSource?{source:t.maskSource,type:t.maskType||"alpha"}:void 0,maps:M,renderOrder:t.renderOrder??w.current,transform:d})}catch(c){console.error("Error updating metadata:",c)}},[t.blendMode,t.opacity,t.visible,t.maskSource,t.maskType,t.renderOrder,t.id,M,d,s,o]),t.ref&&typeof t.ref=="function")try{t.ref(null)}catch{}let R=f&&y?oNe(ine("canvas",{ref:g,layoutsubtree:"",width:b.w,height:b.h,style:{position:"fixed",inset:0,width:"100vw",height:"100vh",zIndex:-9999},children:t.children}),document.body):null;return sNe(G.Provider,{value:E,children:[ine("span",{ref:h,style:cNe,"data-shader-id":s,children:!f&&t.children}),R]})},ane=sne});mt();sN();cN();uN();fN();mN();gN();vN();bN();SN();MN();CN();RN();PN();NN();UN();FN();kN();zN();GN();WN();qN();$N();ZN();JN();eO();nO();iO();sO();cO();uO();fO();mO();gO();vO();bO();SO();MO();CO();RO();PO();NO();UO();FO();kO();zO();GO();WO();qO();$O();ZO();JO();eU();nU();iU();sU();cU();uU();fU();mU();gU();vU();bU();SU();MU();CU();RU();PU();NU();UU();FU();kU();zU();GU();WU();qU();$U();ZU();JU();e3();n3();i3();s3();c3();u3();f3();m3();g3();v3();b3();S3();M3();C3();R3();P3();N3();U3();F3();k3();z3();G3();W3();q3();$3();Z3();J3();eD();nD();iD();sD();cD();uD();fD();mD();gD();vD();bD();mt();import{Suspense as uNe,lazy as xt,useEffect as _D,useMemo as dNe,useRef as fNe,useState as lne}from"react";import{jsx as ch,jsxs as hNe}from"react/jsx-runtime";function mNe(t,e){let n=new TextEncoder().encode(e),r=new Uint8Array(t.length);for(let i=0;i<t.length;i++)r[i]=t[i]^n[i%n.length];return r}function pNe(t,e){let n=atob(t),r=new Uint8Array(n.length);for(let a=0;a<n.length;a++)r[a]=n.charCodeAt(a);let i=mNe(r,e),o=new TextDecoder().decode(i);try{return JSON.parse(o)}catch{throw new Error("Failed to decode shader definition: invalid data or incorrect key")}}var gNe=new Set(["break","case","catch","class","const","continue","default","delete","do","else","export","extends","finally","for","function","if","import","in","instanceof","new","return","super","switch","this","throw","try","typeof","var","void","while","with","yield"]);function yNe(t,e){let n=t.replace(/[^A-Za-z0-9]+/g," ").trim();if(!n)return e;let r=n.split(/\s+/).map((o,a)=>a===0?o.charAt(0).toLowerCase()+o.slice(1):o.charAt(0).toUpperCase()+o.slice(1)).join(""),i=/^[A-Za-z_$]/.test(r)?r:`_${r}`;return gNe.has(i)?`_${i}`:i}function vNe(t){let e=new Set(["style"]),n=new Map;return t?.length&&t.forEach((r,i)=>{if(!r.targets?.length)return;let o=yNe(r.label,`keyProp${i}`),a=o,l=1;for(;e.has(a);)l++,a=`${o}${l}`;e.add(a),n.set(a,r)}),n}function une(t,e){for(let n of e){if(n.id===t)return n;if(n.children?.length){let r=une(t,n.children);if(r)return r}}return null}function xNe(t,e,n){if(!e||!n?.length)return t;let r=Object.entries(e);if(r.length===0)return t;let i=vNe(n),o=JSON.parse(JSON.stringify(t.components));for(let[a,l]of r){let s=i.get(a);if(s)for(let u of s.targets??[]){let d=une(u.component_id,o);d?.props&&u.prop in d.props&&(d.props[u.prop]=l)}}return{...t,components:o}}var bNe={AngularBlur:xt(()=>Promise.resolve().then(()=>(sN(),h8))),Ascii:xt(()=>Promise.resolve().then(()=>(cN(),b8))),Aurora:xt(()=>Promise.resolve().then(()=>(uN(),E8))),BarShift:xt(()=>Promise.resolve().then(()=>(fN(),U8))),Beam:xt(()=>Promise.resolve().then(()=>(mN(),V8))),Blob:xt(()=>Promise.resolve().then(()=>(gN(),$8))),Blur:xt(()=>Promise.resolve().then(()=>(vN(),tH))),BrickPattern:xt(()=>Promise.resolve().then(()=>(bN(),cH))),BrightnessContrast:xt(()=>Promise.resolve().then(()=>(SN(),pH))),Bulge:xt(()=>Promise.resolve().then(()=>(MN(),SH))),CRTScreen:xt(()=>Promise.resolve().then(()=>(CN(),AH))),ChannelBlur:xt(()=>Promise.resolve().then(()=>(RN(),FH))),Checkerboard:xt(()=>Promise.resolve().then(()=>(PN(),HH))),Chevron:xt(()=>Promise.resolve().then(()=>(NN(),ZH))),ChromaFlow:xt(()=>Promise.resolve().then(()=>(UN(),rW))),ChromaticAberration:xt(()=>Promise.resolve().then(()=>(FN(),uW))),Circle:xt(()=>Promise.resolve().then(()=>(kN(),yW))),ColorWheel:xt(()=>Promise.resolve().then(()=>(zN(),MW))),ConcentricSpin:xt(()=>Promise.resolve().then(()=>(GN(),IW))),ConicGradient:xt(()=>Promise.resolve().then(()=>(WN(),kW))),ContourLines:xt(()=>Promise.resolve().then(()=>(qN(),jW))),Crescent:xt(()=>Promise.resolve().then(()=>($N(),JW))),Cross:xt(()=>Promise.resolve().then(()=>(ZN(),o7))),Crystal:xt(()=>Promise.resolve().then(()=>(JN(),f7))),CursorRipples:xt(()=>Promise.resolve().then(()=>(eO(),x7))),CursorTrail:xt(()=>Promise.resolve().then(()=>(nO(),C7))),DOMTexture:xt(()=>Promise.resolve().then(()=>(iO(),O7))),DiamondGradient:xt(()=>Promise.resolve().then(()=>(sO(),z7))),DiffuseBlur:xt(()=>Promise.resolve().then(()=>(cO(),X7))),Dither:xt(()=>Promise.resolve().then(()=>(uO(),ej))),DotGrid:xt(()=>Promise.resolve().then(()=>(fO(),aj))),DropShadow:xt(()=>Promise.resolve().then(()=>(mO(),mj))),Duotone:xt(()=>Promise.resolve().then(()=>(gO(),_j))),Ellipse:xt(()=>Promise.resolve().then(()=>(vO(),Rj))),Emboss:xt(()=>Promise.resolve().then(()=>(bO(),Dj))),FallingLines:xt(()=>Promise.resolve().then(()=>(SO(),Gj))),FilmGrain:xt(()=>Promise.resolve().then(()=>(MO(),Yj))),FloatingParticles:xt(()=>Promise.resolve().then(()=>(CO(),nq))),FlowField:xt(()=>Promise.resolve().then(()=>(RO(),lq))),Flower:xt(()=>Promise.resolve().then(()=>(PO(),gq))),FlowingGradient:xt(()=>Promise.resolve().then(()=>(NO(),wq))),FlutedGlass:xt(()=>Promise.resolve().then(()=>(UO(),Pq))),Fog:xt(()=>Promise.resolve().then(()=>(FO(),Lq))),Form3D:xt(()=>Promise.resolve().then(()=>(kO(),Wq))),FractalNoise:xt(()=>Promise.resolve().then(()=>(zO(),Kq))),Glass:xt(()=>Promise.resolve().then(()=>(GO(),iX))),GlassTiles:xt(()=>Promise.resolve().then(()=>(WO(),dX))),Glitch:xt(()=>Promise.resolve().then(()=>(qO(),vX))),Glow:xt(()=>Promise.resolve().then(()=>($O(),TX))),Godrays:xt(()=>Promise.resolve().then(()=>(ZO(),NX))),Grayscale:xt(()=>Promise.resolve().then(()=>(JO(),BX))),Grid:xt(()=>Promise.resolve().then(()=>(eU(),qX))),GridDistortion:xt(()=>Promise.resolve().then(()=>(nU(),QX))),Group:xt(()=>Promise.resolve().then(()=>(iU(),s$))),Halftone:xt(()=>Promise.resolve().then(()=>(sU(),h$))),HexGrid:xt(()=>Promise.resolve().then(()=>(cU(),b$))),HueShift:xt(()=>Promise.resolve().then(()=>(uU(),E$))),ImageTexture:xt(()=>Promise.resolve().then(()=>(fU(),U$))),Invert:xt(()=>Promise.resolve().then(()=>(mU(),V$))),Kaleidoscope:xt(()=>Promise.resolve().then(()=>(gU(),$$))),LensFlare:xt(()=>Promise.resolve().then(()=>(vU(),tY))),LinearBlur:xt(()=>Promise.resolve().then(()=>(bU(),cY))),LinearGradient:xt(()=>Promise.resolve().then(()=>(SU(),pY))),Liquify:xt(()=>Promise.resolve().then(()=>(MU(),SY))),Marble:xt(()=>Promise.resolve().then(()=>(CU(),AY))),Mirror:xt(()=>Promise.resolve().then(()=>(RU(),FY))),MultiPointGradient:xt(()=>Promise.resolve().then(()=>(PU(),HY))),Neon:xt(()=>Promise.resolve().then(()=>(NU(),ZY))),Paper:xt(()=>Promise.resolve().then(()=>(UU(),rZ))),Perspective:xt(()=>Promise.resolve().then(()=>(FU(),uZ))),Pixelate:xt(()=>Promise.resolve().then(()=>(kU(),yZ))),Plasma:xt(()=>Promise.resolve().then(()=>(zU(),MZ))),PolarCoordinates:xt(()=>Promise.resolve().then(()=>(GU(),IZ))),Polygon:xt(()=>Promise.resolve().then(()=>(WU(),kZ))),Posterize:xt(()=>Promise.resolve().then(()=>(qU(),jZ))),ProgressiveBlur:xt(()=>Promise.resolve().then(()=>($U(),JZ))),RadialGradient:xt(()=>Promise.resolve().then(()=>(ZU(),oK))),RectangularCoordinates:xt(()=>Promise.resolve().then(()=>(JU(),fK))),Ring:xt(()=>Promise.resolve().then(()=>(e3(),xK))),Ripples:xt(()=>Promise.resolve().then(()=>(n3(),CK))),RoundedRect:xt(()=>Promise.resolve().then(()=>(i3(),OK))),Saturation:xt(()=>Promise.resolve().then(()=>(s3(),zK))),Sharpness:xt(()=>Promise.resolve().then(()=>(c3(),XK))),Shatter:xt(()=>Promise.resolve().then(()=>(u3(),eJ))),SimplexNoise:xt(()=>Promise.resolve().then(()=>(f3(),aJ))),SineWave:xt(()=>Promise.resolve().then(()=>(m3(),mJ))),Smoke:xt(()=>Promise.resolve().then(()=>(g3(),_J))),SmokeFill:xt(()=>Promise.resolve().then(()=>(v3(),RJ))),Solarize:xt(()=>Promise.resolve().then(()=>(b3(),DJ))),SolidColor:xt(()=>Promise.resolve().then(()=>(S3(),GJ))),Spherize:xt(()=>Promise.resolve().then(()=>(M3(),YJ))),Spiral:xt(()=>Promise.resolve().then(()=>(C3(),nQ))),Star:xt(()=>Promise.resolve().then(()=>(R3(),lQ))),Strands:xt(()=>Promise.resolve().then(()=>(P3(),gQ))),Stretch:xt(()=>Promise.resolve().then(()=>(N3(),wQ))),Stripes:xt(()=>Promise.resolve().then(()=>(U3(),PQ))),StudioBackground:xt(()=>Promise.resolve().then(()=>(F3(),LQ))),SunBurst:xt(()=>Promise.resolve().then(()=>(k3(),WQ))),Swirl:xt(()=>Promise.resolve().then(()=>(z3(),KQ))),TiltShift:xt(()=>Promise.resolve().then(()=>(G3(),iee))),Tint:xt(()=>Promise.resolve().then(()=>(W3(),dee))),Trapezoid:xt(()=>Promise.resolve().then(()=>(q3(),vee))),Tritone:xt(()=>Promise.resolve().then(()=>($3(),Tee))),Truchet:xt(()=>Promise.resolve().then(()=>(Z3(),Nee))),Twirl:xt(()=>Promise.resolve().then(()=>(J3(),Bee))),VHS:xt(()=>Promise.resolve().then(()=>(eD(),qee))),Vesica:xt(()=>Promise.resolve().then(()=>(nD(),Qee))),Vibrance:xt(()=>Promise.resolve().then(()=>(iD(),ste))),VideoTexture:xt(()=>Promise.resolve().then(()=>(sD(),hte))),Vignette:xt(()=>Promise.resolve().then(()=>(cD(),bte))),Voronoi:xt(()=>Promise.resolve().then(()=>(uD(),Ete))),WaveDistortion:xt(()=>Promise.resolve().then(()=>(fD(),Ute))),Weave:xt(()=>Promise.resolve().then(()=>(mD(),Vte))),WebcamTexture:xt(()=>Promise.resolve().then(()=>(gD(),$te))),WorleyNoise:xt(()=>Promise.resolve().then(()=>(vD(),tne))),ZoomBlur:xt(()=>Promise.resolve().then(()=>(bD(),cne)))},_Ne="shaders-preview-key";function SNe(t){return t.split(";").reduce((e,n)=>{let[r,...i]=n.split(":");if(!r?.trim())return e;let o=i.join(":").trim(),a=r.trim(),l=a.startsWith("--")?a:a.replace(/-([a-z])/g,(s,u)=>u.toUpperCase());return e[l]=o,e},{})}function dne({component:t}){let e=bNe[t.type];if(!e)return console.warn(`[Shaders Preview] Unknown component type: ${t.type}`),null;let{type:n,children:r,id:i,props:o,...a}=t,l={...a,...o};return i&&(l.id=i),ch(e,{...l,children:r?.map((s,u)=>ch(dne,{component:s},s.id||u))})}var wNe=({shader:t,presetId:e,apiBaseUrl:n="https://shaders.com",obfuscationKey:r=_Ne,watermarkText:i="Unlock your Shaders Pro license",watermarkLink:o="https://shaders.com/dashboard?pricing=true",style:a,className:l,configuration:s,version:u,...d})=>{let[h,f]=lne(null),[g,y]=lne(null),_=w=>{f(null),y(null),fetch(w).then(v=>{if(!v.ok)throw new Error(`Failed to fetch: ${v.status}`);return v.json()}).then(v=>{let E=v.preset||v.shader;E?.definition&&typeof E.definition=="string"&&(f(pNe(E.definition,r)),y(Array.isArray(E.key_props)?E.key_props:null))}).catch(v=>{console.error("[Shaders Preview] Failed to fetch preview:",v)})};_D(()=>{t?_(`${n}/api/preview/shader/${t}`):e||(f(null),y(null))},[t,e,n,r]),_D(()=>{e?_(`${n}/api/preview/preset/${e}${u?`?version=${encodeURIComponent(u)}`:""}`):t||(f(null),y(null))},[e,t,n,r,u]);let b=dNe(()=>h?xNe(h,s,g):null,[h,g,s]),S=fNe(!1);return _D(()=>{!S.current&&b&&(S.current=!0,console.warn("[Shaders] The Preview component is intended for use with a valid Shaders license. Please visit https://shaders.com for more information."))},[b]),b?hNe("div",{style:{position:"relative",...typeof a=="string"?SNe(a):a},className:l,...d,children:[ch(uNe,{fallback:null,children:ch(iN,{colorSpace:b.colorSpace||"p3-linear",isPreview:!0,style:{width:"100%",height:"100%"},children:b.components.map((w,v)=>ch(dne,{component:w},w.id||v))})}),i&&ch("div",{style:{position:"absolute",bottom:"8px",right:"12px",fontSize:"11px",fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',color:"rgba(255, 255, 255, 0.5)",textShadow:"0 1px 3px rgba(0, 0, 0, 0.4)",pointerEvents:o?"auto":"none",zIndex:10,transition:"color 0.2s ease"},onMouseEnter:w=>{o&&(w.currentTarget.style.color="rgba(255, 255, 255, 0.8)")},onMouseLeave:w=>{o&&(w.currentTarget.style.color="rgba(255, 255, 255, 0.5)")},children:o?ch("a",{href:o,target:"_blank",rel:"noopener noreferrer",style:{color:"inherit",textDecoration:"none"},children:i}):i})]}):null};export{f8 as AngularBlur,x8 as Ascii,C8 as Aurora,O8 as BarShift,z8 as Beam,X8 as Blob,eH as Blur,aH as BrickPattern,mH as BrightnessContrast,_H as Bulge,RH as CRTScreen,DH as ChannelBlur,GH as Checkerboard,YH as Chevron,nW as ChromaFlow,lW as ChromaticAberration,gW as Circle,wW as ColorWheel,PW as ConcentricSpin,LW as ConicGradient,WW as ContourLines,KW as Crescent,i7 as Cross,d7 as Crystal,v7 as CursorRipples,T7 as CursorTrail,N7 as DOMTexture,B7 as DiamondGradient,q7 as DiffuseBlur,Q7 as Dither,sj as DotGrid,hj as DropShadow,bj as Duotone,Ej as Ellipse,Uj as Emboss,Vj as FallingLines,$j as FilmGrain,tq as FloatingParticles,cq as FlowField,pq as Flower,Sq as FlowingGradient,Aq as FlutedGlass,Fq as Fog,Hq as Form3D,Zq as FractalNoise,rX as Glass,uX as GlassTiles,yX as Glitch,MX as Glow,IX as Godrays,kX as Grayscale,jX as Grid,JX as GridDistortion,o$ as Group,f$ as Halftone,x$ as HexGrid,C$ as HueShift,O$ as ImageTexture,z$ as Invert,X$ as Kaleidoscope,eY as LensFlare,aY as LinearBlur,mY as LinearGradient,_Y as Liquify,RY as Marble,DY as Mirror,GY as MultiPointGradient,YY as Neon,nZ as Paper,lZ as Perspective,gZ as Pixelate,wZ as Plasma,PZ as PolarCoordinates,LZ as Polygon,WZ as Posterize,wNe as Preview,KZ as ProgressiveBlur,iK as RadialGradient,dK as RectangularCoordinates,vK as Ring,TK as Ripples,NK as RoundedRect,BK as Saturation,axe as Shader,qK as Sharpness,QK as Shatter,sJ as SimplexNoise,hJ as SineWave,bJ as Smoke,EJ as SmokeFill,UJ as Solarize,VJ as SolidColor,$J as Spherize,tQ as Spiral,cQ as Star,pQ as Strands,SQ as Stretch,AQ as Stripes,FQ as StudioBackground,HQ as SunBurst,ZQ as Swirl,ree as TiltShift,uee as Tint,yee as Trapezoid,Mee as Tritone,Iee as Truchet,kee as Twirl,jee as VHS,Jee as Vesica,ote as Vibrance,fte as VideoTexture,xte as Vignette,Cte as Voronoi,Ote as WaveDistortion,zte as Weave,Xte as WebcamTexture,ene as WorleyNoise,ane as ZoomBlur};