shaders 2.5.133 → 2.5.135
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +114 -0
- package/dist/core/index.js +2 -2
- package/dist/core/utilities/uniforms.d.ts.map +1 -1
- package/dist/js/bundle.js +2 -2
- package/dist/js/createShader.js +2 -2
- package/dist/react/Shader.js +1 -1
- package/dist/react/bundle.js +2 -2
- package/dist/solid/engine/Shader.js +1 -1
- package/dist/svelte/index.js +1 -1
- package/dist/vue/Shader.vue_vue_type_script_setup_true_lang.js +1 -1
- package/package.json +6 -1
package/dist/react/bundle.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* shaders@2.5.
|
|
1
|
+
/* shaders@2.5.135/react — bundled for CDN consumption (Framer code components, etc.). https://shaders.com */
|
|
2
2
|
var toe=Object.defineProperty;var z=(t,e)=>()=>(t&&(e=t(t=0)),e);var vt=(t,e)=>{for(var n in e)toe(t,n,{get:e[n],enumerable:!0})};function noe(t){for(let e=t.length-1;e>=0;--e)if(t[e]>=65535)return!0;return!1}function Nm(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function bm(t){return document.createElementNS("http://www.w3.org/1999/xhtml",t)}function BM(){let t=bm("canvas");return t.style.display="block",t}function Xf(...t){let e="THREE."+t.shift();_m?_m("log",e,...t):console.log(e,...t)}function hk(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 ht(...t){t=hk(t);let e="THREE."+t.shift();if(_m)_m("warn",e,...t);else{let n=t[0];n&&n.isStackTrace?console.warn(n.getError(e)):console.warn(e,...t)}}function tt(...t){t=hk(t);let e="THREE."+t.shift();if(_m)_m("error",e,...t);else{let n=t[0];n&&n.isStackTrace?console.error(n.getError(e)):console.error(e,...t)}}function Zn(...t){let e=t.join(" ");e in EL||(EL[e]=!0,ht(...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 mk(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 cc(){let t=Math.random()*4294967295|0,e=Math.random()*4294967295|0,n=Math.random()*4294967295|0,r=Math.random()*4294967295|0;return(Ki[t&255]+Ki[t>>8&255]+Ki[t>>16&255]+Ki[t>>24&255]+"-"+Ki[e&255]+Ki[e>>8&255]+"-"+Ki[e>>16&15|64]+Ki[e>>24&255]+"-"+Ki[n&63|128]+Ki[n>>8&255]+"-"+Ki[n>>16&255]+Ki[n>>24&255]+Ki[r&255]+Ki[r>>8&255]+Ki[r>>16&255]+Ki[r>>24&255]).toLowerCase()}function tr(t,e,n){return Math.max(e,Math.min(n,t))}function DC(t,e){return(t%e+e)%e}function roe(t,e,n,r,i){return r+(t-e)*(i-r)/(n-e)}function ioe(t,e,n){return t!==e?(n-t)/(e-t):0}function Bp(t,e,n){return(1-n)*t+n*e}function ooe(t,e,n,r){return Bp(t,e,1-Math.exp(-n*r))}function soe(t,e=1){return e-Math.abs(DC(t,e*2)-e)}function aoe(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e),t*t*(3-2*t))}function coe(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e),t*t*t*(t*(t*6-15)+10))}function loe(t,e){return t+Math.floor(Math.random()*(e-t+1))}function uoe(t,e){return t+Math.random()*(e-t)}function doe(t){return t*(.5-Math.random())}function foe(t){t!==void 0&&(CL=t);let e=CL+=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 hoe(t){return t*kp}function moe(t){return t*dc}function poe(t){return(t&t-1)===0&&t!==0}function goe(t){return Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))}function yoe(t){return Math.pow(2,Math.floor(Math.log(t)/Math.LN2))}function voe(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:ht("MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+i)}}function yo(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("THREE.MathUtils: Invalid component type.")}}function Wn(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("THREE.MathUtils: Invalid component type.")}}function xoe(){let t={enabled:!0,workingColorSpace:ad,spaces:{},convert:function(i,o,a){return this.enabled===!1||o===a||!o||!a||(this.spaces[o].transfer===nn&&(i.r=lc(i.r),i.g=lc(i.g),i.b=lc(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===nn&&(i.r=xm(i.r),i.g=xm(i.g),i.b=xm(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===no?cd: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 Zn("ColorManagement: .fromWorkingColorSpace() has been renamed to .workingToColorSpace()."),t.workingToColorSpace(i,o)},toWorkingColorSpace:function(i,o){return Zn("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({[ad]:{primaries:e,whitePoint:r,transfer:cd,toXYZ:AL,fromXYZ:PL,luminanceCoefficients:n,workingColorSpaceConfig:{unpackColorSpace:gr},outputColorSpaceConfig:{drawingBufferColorSpace:gr}},[gr]:{primaries:e,whitePoint:r,transfer:nn,toXYZ:AL,fromXYZ:PL,luminanceCoefficients:n,outputColorSpaceConfig:{drawingBufferColorSpace:gr}}}),t}function lc(t){return t<.04045?t*.0773993808:Math.pow(t*.9478672986+.0521327014,2.4)}function xm(t){return t<.0031308?t*12.92:1.055*Math.pow(t,.41666)-.055}function tC(t){return typeof HTMLImageElement<"u"&&t instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&t instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&t instanceof ImageBitmap?jw.getDataURL(t):t.data?{data:Array.from(t.data),width:t.width,height:t.height,type:t.data.constructor.name}:(ht("Texture: Unable to serialize Texture."),{})}function iC(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 fC(t,e,n,r,i){for(let o=0,a=t.length-3;o<=a;o+=3){Df.fromArray(t,o);let l=i.x*Math.abs(Df.x)+i.y*Math.abs(Df.y)+i.z*Math.abs(Df.z),s=e.dot(Df),u=n.dot(Df),d=r.dot(Df);if(Math.max(-Math.max(s,u,d),Math.min(s,u,d))>l)return!1}return!0}function Aoe(){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 Go(t){Math.abs(t)>65504&&ht("DataUtils.toHalfFloat(): Value out of range."),t=tr(t,-65504,65504),ac.floatView[0]=t;let e=ac.uint32View[0],n=e>>23&511;return ac.baseTable[n]+((e&8388607)>>ac.shiftTable[n])}function Ew(t){let e=t>>10;return ac.uint32View[0]=ac.mantissaTable[ac.offsetTable[e]+(t&1023)]+ac.exponentTable[e],ac.floatView[0]}function Noe(t,e,n,r,i,o,a,l){let s;if(e.side===hr?s=r.intersectTriangle(a,o,i,!0,l):s=r.intersectTriangle(i,o,a,e.side===zi,l),s===null)return null;Dw.copy(l),Dw.applyMatrix4(t.matrixWorld);let u=n.ray.origin.distanceTo(Dw);return u<n.near||u>n.far?null:{distance:u,point:Dw.clone(),object:t}}function Fw(t,e,n,r,i,o,a,l,s,u){t.getVertexPosition(l,Iw),t.getVertexPosition(s,Ow),t.getVertexPosition(u,Uw);let d=Noe(t,e,n,r,Iw,Ow,Uw,VL);if(d){let h=new _e;id.getBarycoord(VL,Iw,Ow,Uw,h),i&&(d.uv=id.getInterpolatedAttribute(i,l,s,u,h,new yn)),o&&(d.uv1=id.getInterpolatedAttribute(o,l,s,u,h,new yn)),a&&(d.normal=id.getInterpolatedAttribute(a,l,s,u,h,new _e),d.normal.dot(r.direction)>0&&d.normal.multiplyScalar(-1));let f={a:l,b:s,c:u,normal:new _e,materialIndex:0};id.getNormal(Iw,Ow,Uw,f.normal),d.face=f,d.barycoord=h}return d}function mh(t){let e={};for(let n in t){e[n]={};for(let r in t[n]){let i=t[n][r];if(HL(i))i.isRenderTargetTexture?(ht("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(HL(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 ro(t){let e={};for(let n=0;n<t.length;n++){let r=mh(t[n]);for(let i in r)e[i]=r[i]}return e}function HL(t){return t&&(t.isColor||t.isMatrix3||t.isMatrix4||t.isVector2||t.isVector3||t.isVector4||t.isTexture||t.isQuaternion)}function koe(t){let e=[];for(let n=0;n<t.length;n++)e.push(t[n].clone());return e}function LC(t){let e=t.getRenderTarget();return e===null?t.outputColorSpace:e.isXRRenderTarget===!0?e.texture.colorSpace:Sn.workingColorSpace}function kw(t,e){return!t||t.constructor===e?t:typeof e.BYTES_PER_ELEMENT=="number"?new e(t):Array.prototype.slice.call(t)}function WL(t){try{let e=t.slice(t.indexOf(":")+1);return new URL(e).protocol==="blob:"}catch{return!1}}function vg(t,e,n,r){let i=Yoe(r);switch(n){case Im:return t*e;case Bs:return t*e/i.components*i.byteLength;case da:return t*e/i.components*i.byteLength;case Er:return t*e*2/i.components*i.byteLength;case fa:return t*e*2/i.components*i.byteLength;case yc:return t*e*3/i.components*i.byteLength;case nr:return t*e*4/i.components*i.byteLength;case vd:return t*e*4/i.components*i.byteLength;case ha:case ma:return Math.floor((t+3)/4)*Math.floor((e+3)/4)*8;case pa:case ga:return Math.floor((t+3)/4)*Math.floor((e+3)/4)*16;case uh:case fh:return Math.max(t,16)*Math.max(e,8)/4;case lh:case dh:return Math.max(t,8)*Math.max(e,8)/2;case xd:case bd:case Sd:case wd:return Math.floor((t+3)/4)*Math.floor((e+3)/4)*8;case _d:case ya:case Md:return Math.floor((t+3)/4)*Math.floor((e+3)/4)*16;case Td:return Math.floor((t+3)/4)*Math.floor((e+3)/4)*16;case Ed:return Math.floor((t+4)/5)*Math.floor((e+3)/4)*16;case Cd:return Math.floor((t+4)/5)*Math.floor((e+4)/5)*16;case Rd:return Math.floor((t+5)/6)*Math.floor((e+4)/5)*16;case Ad:return Math.floor((t+5)/6)*Math.floor((e+5)/6)*16;case Pd:return Math.floor((t+7)/8)*Math.floor((e+4)/5)*16;case Id:return Math.floor((t+7)/8)*Math.floor((e+5)/6)*16;case Od: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 Nd:return Math.floor((t+9)/10)*Math.floor((e+5)/6)*16;case Dd:return Math.floor((t+9)/10)*Math.floor((e+7)/8)*16;case Fd:return Math.floor((t+9)/10)*Math.floor((e+9)/10)*16;case Ld:return Math.floor((t+11)/12)*Math.floor((e+9)/10)*16;case kd:return Math.floor((t+11)/12)*Math.floor((e+11)/12)*16;case Bd:case zd:case Vd:return Math.ceil(t/4)*Math.ceil(e/4)*16;case Gd:case Hd:return Math.ceil(t/4)*Math.ceil(e/4)*8;case va:case Wd:return Math.ceil(t/4)*Math.ceil(e/4)*16}throw new Error(`Unable to determine texture byte length for ${n} format.`)}function Yoe(t){switch(t){case yr:case la:return{byteLength:1,components:1};case Uo:case ua:case vr:return{byteLength:2,components:1};case oh:case sh:return{byteLength:2,components:4};case ur:case Xr:case fn:return{byteLength:4,components:1};case ah:case ch:return{byteLength:4,components:3}}throw new Error(`THREE.TextureUtils: Unknown texture type ${t}.`)}var TM,eg,EM,YL,md,CM,gs,zi,hr,xi,bi,Oi,oa,sa,aa,gc,RM,Ti,tg,ng,AM,PM,ks,rg,ig,og,od,sd,sg,ag,cg,lg,ug,AC,PC,IC,OC,Bf,zf,Vf,ta,Gf,Hf,Wf,jf,Qf,IM,OM,Kr,dg,eh,th,nh,UM,rh,ih,NM,$o,ys,pd,gd,ca,ps,Qi,uc,kn,fg,vs,sn,yd,Vi,ZL,yr,la,ua,Uo,Xr,ur,fn,vr,oh,sh,to,ah,ch,Im,yc,nr,vi,Ui,Bs,da,Er,fa,DM,vd,ha,ma,pa,ga,lh,uh,dh,fh,xd,bd,_d,Sd,wd,ya,Md,Td,Ed,Cd,Rd,Ad,Pd,Id,Od,Ud,Nd,Dd,Fd,Ld,kd,Bd,zd,Vd,Gd,Hd,va,Wd,zp,Hw,Vw,_C,SC,wC,MC,KL,Yo,FM,no,gr,ad,cd,nn,LM,UC,JL,QL,rd,ek,tk,nk,rk,ik,ok,sk,ak,ck,lk,uk,dk,fk,Ww,hg,Om,mg,xa,hh,pg,zs,gg,qf,Um,kM,Bi,jo,Vs,jd,EL,_m,yg,vo,Ki,CL,kp,dc,FC,yn,Ns,_e,QE,RL,Nn,eC,AL,PL,Sn,sm,jw,boe,Sm,_oe,nC,Fr,In,Po,Io,$f,Vp,Ln,am,Is,Soe,woe,Ku,bw,Vo,IL,OL,Ds,wm,Moe,UL,cm,nc,_w,Np,Toe,Eoe,NL,DL,FL,LL,Coe,lm,rC,Ei,kf,Roe,ld,pk,Ju,Sw,vn,Ji,Yf,Os,rc,oC,ic,um,dm,kL,sC,aC,cC,lC,uC,dC,id,ud,oc,Us,ww,fm,hm,mm,Qu,ed,Nf,Dp,Mw,Tw,Df,ac,yi,Cw,Poe,si,Zf,Kf,Gp,ai,Ioe,Fp,hC,Jf,Ooe,ms,mC,pm,Ho,Lp,Ii,eo,Hp,go,qw,Uoe,ci,Xw,sc,pC,Rw,td,gC,Aw,yC,$w,qo,BL,Ff,Pw,zL,Iw,Ow,Uw,vC,Nw,VL,Dw,qr,fr,fc,xC,Doe,Foe,Wo,Lf,Loe,Lw,na,GL,Yw,Wp,Zw,hc,Mm,ra,Fs,li,Tm,Em,mc,Kw,pc,Jw,Qw,gk,Boe,zoe,Oo,jp,qp,eM,tM,nM,rM,iM,Xp,$p,oM,sM,dd,aM,cM,lM,uM,Xo,fd,dM,fM,hM,Yp,hd,mM,Gw,pM,yk,Cm,gm,gM,Zp,ia,yM,bC,jL,qL,Kp,Bw,zw,ea,Jp,nd,XL,$L,oi,TC,Rm,EC,vM,Ls,CC,xM,bM,_M,SM,wM,ym,vm,Am,Pm,kC,Voe,BC,Goe,Hoe,Woe,joe,qoe,Xoe,$oe,RC,Dr,V3e,MM,Qp,zM=z(()=>{TM=0,eg=1,EM=2,YL=0,md=1,CM=2,gs=3,zi=0,hr=1,xi=2,bi=0,Oi=1,oa=2,sa=3,aa=4,gc=5,RM=6,Ti=100,tg=101,ng=102,AM=103,PM=104,ks=200,rg=201,ig=202,og=203,od=204,sd=205,sg=206,ag=207,cg=208,lg=209,ug=210,AC=211,PC=212,IC=213,OC=214,Bf=0,zf=1,Vf=2,ta=3,Gf=4,Hf=5,Wf=6,jf=7,Qf=0,IM=1,OM=2,Kr=0,dg=1,eh=2,th=3,nh=4,UM=5,rh=6,ih=7,NM=300,$o=301,ys=302,pd=303,gd=304,ca=306,ps=1e3,Qi=1001,uc=1002,kn=1003,fg=1004,vs=1005,sn=1006,yd=1007,Vi=1008,ZL=1008,yr=1009,la=1010,ua=1011,Uo=1012,Xr=1013,ur=1014,fn=1015,vr=1016,oh=1017,sh=1018,to=1020,ah=35902,ch=35899,Im=1021,yc=1022,nr=1023,vi=1026,Ui=1027,Bs=1028,da=1029,Er=1030,fa=1031,DM=1032,vd=1033,ha=33776,ma=33777,pa=33778,ga=33779,lh=35840,uh=35841,dh=35842,fh=35843,xd=36196,bd=37492,_d=37496,Sd=37488,wd=37489,ya=37490,Md=37491,Td=37808,Ed=37809,Cd=37810,Rd=37811,Ad=37812,Pd=37813,Id=37814,Od=37815,Ud=37816,Nd=37817,Dd=37818,Fd=37819,Ld=37820,kd=37821,Bd=36492,zd=36494,Vd=36495,Gd=36283,Hd=36284,va=36285,Wd=36286,zp=2300,Hw=2301,Vw=2302,_C=2303,SC=2400,wC=2401,MC=2402,KL=3200,Yo=0,FM=1,no="",gr="srgb",ad="srgb-linear",cd="linear",nn="srgb",LM="",UC="rg",JL="ga",QL=0,rd=7680,ek=7681,tk=7682,nk=7683,rk=34055,ik=34056,ok=5386,sk=512,ak=513,ck=514,lk=515,uk=516,dk=517,fk=518,Ww=519,hg=512,Om=513,mg=514,xa=515,hh=516,pg=517,zs=518,gg=519,qf=35044,Um=35048,kM="300 es",Bi=2e3,jo=2001,Vs={COMPUTE:"compute",RENDER:"render"},jd={TEXTURE_COMPARE:"depthTextureCompare"};EL={},_m=null;yg={[Bf]:zf,[Vf]:Wf,[Gf]:jf,[ta]:Hf,[zf]:Bf,[Wf]:Vf,[jf]:Gf,[Hf]:ta},vo=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}}},Ki=["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"],CL=1234567,kp=Math.PI/180,dc=180/Math.PI;FC={DEG2RAD:kp,RAD2DEG:dc,generateUUID:cc,clamp:tr,euclideanModulo:DC,mapLinear:roe,inverseLerp:ioe,lerp:Bp,damp:ooe,pingpong:soe,smoothstep:aoe,smootherstep:coe,randInt:loe,randFloat:uoe,randFloatSpread:doe,seededRandom:foe,degToRad:hoe,radToDeg:moe,isPowerOfTwo:poe,ceilPowerOfTwo:goe,floorPowerOfTwo:yoe,setQuaternionFromProperEuler:voe,normalize:Wn,denormalize:yo},yn=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("THREE.Vector2: 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("THREE.Vector2: 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=tr(this.x,e.x,n.x),this.y=tr(this.y,e.y,n.y),this}clampScalar(e,n){return this.x=tr(this.x,e,n),this.y=tr(this.y,e,n),this}clampLength(e,n){let r=this.length();return this.divideScalar(r||1).multiplyScalar(tr(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(tr(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}},Ns=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:ht("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(tr(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}},_e=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("THREE.Vector3: 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("THREE.Vector3: 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(RL.setFromEuler(e))}applyAxisAngle(e,n){return this.applyQuaternion(RL.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=tr(this.x,e.x,n.x),this.y=tr(this.y,e.y,n.y),this.z=tr(this.z,e.z,n.z),this}clampScalar(e,n){return this.x=tr(this.x,e,n),this.y=tr(this.y,e,n),this.z=tr(this.z,e,n),this}clampLength(e,n){let r=this.length();return this.divideScalar(r||1).multiplyScalar(tr(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 QE.copy(this).projectOnVector(e),this.sub(QE)}reflect(e){return this.sub(QE.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(tr(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}},QE=new _e,RL=new Ns,Nn=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],C=i[7],E=i[2],M=i[5],R=i[8];return o[0]=a*_+l*w+s*E,o[3]=a*b+l*v+s*M,o[6]=a*S+l*C+s*R,o[1]=u*_+d*w+h*E,o[4]=u*b+d*v+h*M,o[7]=u*S+d*C+h*R,o[2]=f*_+g*w+y*E,o[5]=f*b+g*v+y*M,o[8]=f*S+g*C+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 Zn("Matrix3: .scale() is deprecated. Use .makeScale() instead."),this.premultiply(eC.makeScale(e,n)),this}rotate(e){return Zn("Matrix3: .rotate() is deprecated. Use .makeRotation() instead."),this.premultiply(eC.makeRotation(-e)),this}translate(e,n){return Zn("Matrix3: .translate() is deprecated. Use .makeTranslation() instead."),this.premultiply(eC.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)}},eC=new Nn,AL=new Nn().set(.4123908,.3575843,.1804808,.212639,.7151687,.0721923,.0193308,.1191948,.9505322),PL=new Nn().set(3.2409699,-1.5373832,-.4986108,-.9692436,1.8759675,.0415551,.0556301,-.203977,1.0569715);Sn=xoe();jw=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{sm===void 0&&(sm=bm("canvas")),sm.width=e.width,sm.height=e.height;let i=sm.getContext("2d");e instanceof ImageData?i.putImageData(e,0,0):i.drawImage(e,0,0,e.width,e.height),r=sm}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=bm("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]=lc(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(lc(n[r]/255)*255):n[r]=lc(n[r]);return{data:n,width:e.width,height:e.height}}else return ht("ImageUtils.sRGBToLinear(): Unsupported image type. No color space conversion applied."),e}},boe=0,Sm=class{constructor(e=null){this.isSource=!0,Object.defineProperty(this,"id",{value:boe++}),this.uuid=cc(),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(tC(i[a].image)):o.push(tC(i[a]))}else o=tC(i);r.url=o}return n||(e.images[this.uuid]=r),r}};_oe=0,nC=new _e,Fr=class t extends vo{constructor(e=t.DEFAULT_IMAGE,n=t.DEFAULT_MAPPING,r=Qi,i=Qi,o=sn,a=Vi,l=nr,s=yr,u=t.DEFAULT_ANISOTROPY,d=no){super(),this.isTexture=!0,Object.defineProperty(this,"id",{value:_oe++}),this.uuid=cc(),this.name="",this.source=new Sm(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 yn(0,0),this.repeat=new yn(1,1),this.center=new yn(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new Nn,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(nC).x}get height(){return this.source.getSize(nC).y}get depth(){return this.source.getSize(nC).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){ht(`Texture.setValues(): parameter '${n}' has value of undefined.`);continue}let i=this[n];if(i===void 0){ht(`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!==NM)return e;if(e.applyMatrix3(this.matrix),e.x<0||e.x>1)switch(this.wrapS){case ps:e.x=e.x-Math.floor(e.x);break;case Qi:e.x=e.x<0?0:1;break;case uc: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 ps:e.y=e.y-Math.floor(e.y);break;case Qi:e.y=e.y<0?0:1;break;case uc: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++}};Fr.DEFAULT_IMAGE=null;Fr.DEFAULT_MAPPING=NM;Fr.DEFAULT_ANISOTROPY=1;In=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("THREE.Vector4: 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("THREE.Vector4: 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,C=(g+1)/2,E=(S+1)/2,M=(d+f)/4,R=(h+_)/4,c=(y+b)/4;return v>C&&v>E?v<.01?(r=0,i=.707106781,o=.707106781):(r=Math.sqrt(v),i=M/r,o=R/r):C>E?C<.01?(r=.707106781,i=0,o=.707106781):(i=Math.sqrt(C),r=M/i,o=c/i):E<.01?(r=.707106781,i=.707106781,o=0):(o=Math.sqrt(E),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=tr(this.x,e.x,n.x),this.y=tr(this.y,e.y,n.y),this.z=tr(this.z,e.z,n.z),this.w=tr(this.w,e.w,n.w),this}clampScalar(e,n){return this.x=tr(this.x,e,n),this.y=tr(this.y,e,n),this.z=tr(this.z,e,n),this.w=tr(this.w,e,n),this}clampLength(e,n){let r=this.length();return this.divideScalar(r||1).multiplyScalar(tr(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}},Po=class extends vo{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,useArrayDepthTexture:!1},r),this.isRenderTarget=!0,this.width=e,this.height=n,this.depth=r.depth,this.scissor=new In(0,0,e,n),this.scissorTest=!1,this.viewport=new In(0,0,e,n),this.textures=[];let i={width:e,height:n,depth:r.depth},o=new Fr(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,this.useArrayDepthTexture=r.useArrayDepthTexture}_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 Sm(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.useArrayDepthTexture=e.useArrayDepthTexture,this}dispose(){this.dispatchEvent({type:"dispose"})}},Io=class extends Po{constructor(e=1,n=1,r={}){super(e,n,r),this.isWebGLRenderTarget=!0}},$f=class extends Fr{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=kn,this.minFilter=kn,this.wrapR=Qi,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.layerUpdates=new Set}addLayerUpdate(e){this.layerUpdates.add(e)}clearLayerUpdates(){this.layerUpdates.clear()}},Vp=class extends Fr{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=kn,this.minFilter=kn,this.wrapR=Qi,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}},Ln=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.determinantAffine()===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.determinantAffine()===0)return this.identity();let n=this.elements,r=e.elements,i=1/am.setFromMatrixColumn(e,0).length(),o=1/am.setFromMatrixColumn(e,1).length(),a=1/am.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(Soe,e,woe)}lookAt(e,n,r){let i=this.elements;return Vo.subVectors(e,n),Vo.lengthSq()===0&&(Vo.z=1),Vo.normalize(),Ku.crossVectors(r,Vo),Ku.lengthSq()===0&&(Math.abs(r.z)===1?Vo.x+=1e-4:Vo.z+=1e-4,Vo.normalize(),Ku.crossVectors(r,Vo)),Ku.normalize(),bw.crossVectors(Vo,Ku),i[0]=Ku.x,i[4]=bw.x,i[8]=Vo.x,i[1]=Ku.y,i[5]=bw.y,i[9]=Vo.y,i[2]=Ku.z,i[6]=bw.z,i[10]=Vo.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],C=r[11],E=r[15],M=i[0],R=i[4],c=i[8],m=i[12],x=i[1],T=i[5],O=i[9],L=i[13],F=i[2],U=i[6],D=i[10],B=i[14],q=i[3],X=i[7],re=i[11],xe=i[15];return o[0]=a*M+l*x+s*F+u*q,o[4]=a*R+l*T+s*U+u*X,o[8]=a*c+l*O+s*D+u*re,o[12]=a*m+l*L+s*B+u*xe,o[1]=d*M+h*x+f*F+g*q,o[5]=d*R+h*T+f*U+g*X,o[9]=d*c+h*O+f*D+g*re,o[13]=d*m+h*L+f*B+g*xe,o[2]=y*M+_*x+b*F+S*q,o[6]=y*R+_*T+b*U+S*X,o[10]=y*c+_*O+b*D+S*re,o[14]=y*m+_*L+b*B+S*xe,o[3]=w*M+v*x+C*F+E*q,o[7]=w*R+v*T+C*U+E*X,o[11]=w*c+v*O+C*D+E*re,o[15]=w*m+v*L+C*B+E*xe,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,C=l*f-s*h,E=a*g-u*d,M=a*f-s*d,R=a*h-l*d;return n*(_*w-b*v+S*C)-r*(y*w-b*E+S*M)+i*(y*v-_*E+S*R)-o*(y*C-_*M+b*R)}determinantAffine(){let e=this.elements,n=e[0],r=e[4],i=e[8],o=e[1],a=e[5],l=e[9],s=e[2],u=e[6],d=e[10];return n*(a*d-l*u)-r*(o*d-l*s)+i*(o*u-a*s)}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,C=n*u-o*a,E=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*_,O=h*S-g*_,L=f*S-g*b,F=w*L-v*O+C*T+E*x-M*m+R*c;if(F===0)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);let U=1/F;return e[0]=(l*L-s*O+u*T)*U,e[1]=(i*O-r*L-o*T)*U,e[2]=(_*R-b*M+S*E)*U,e[3]=(f*M-h*R-g*E)*U,e[4]=(s*x-a*L-u*m)*U,e[5]=(n*L-i*x+o*m)*U,e[6]=(b*C-y*R-S*v)*U,e[7]=(d*R-f*C+g*v)*U,e[8]=(a*O-l*x+u*c)*U,e[9]=(r*x-n*O-o*c)*U,e[10]=(y*M-_*C+S*w)*U,e[11]=(h*C-d*M-g*w)*U,e[12]=(l*m-a*T-s*c)*U,e[13]=(n*T-r*m+i*c)*U,e[14]=(_*v-y*E-b*w)*U,e[15]=(d*E-h*v+f*w)*U,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,C=s*h,E=r.x,M=r.y,R=r.z;return i[0]=(1-(_+S))*E,i[1]=(g+C)*E,i[2]=(y-v)*E,i[3]=0,i[4]=(g-C)*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.determinantAffine();if(o===0)return r.set(1,1,1),n.identity(),this;let a=am.set(i[0],i[1],i[2]).length(),l=am.set(i[4],i[5],i[6]).length(),s=am.set(i[8],i[9],i[10]).length();o<0&&(a=-a),Is.copy(this);let u=1/a,d=1/l,h=1/s;return Is.elements[0]*=u,Is.elements[1]*=u,Is.elements[2]*=u,Is.elements[4]*=d,Is.elements[5]*=d,Is.elements[6]*=d,Is.elements[8]*=h,Is.elements[9]*=h,Is.elements[10]*=h,n.setFromRotationMatrix(Is),r.x=a,r.y=l,r.z=s,this}makePerspective(e,n,r,i,o,a,l=Bi,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===Bi)y=-(a+o)/(a-o),_=-2*a*o/(a-o);else if(l===jo)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=Bi,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===Bi)y=-2/(a-o),_=-(a+o)/(a-o);else if(l===jo)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}},am=new _e,Is=new Ln,Soe=new _e(0,0,0),woe=new _e(1,1,1),Ku=new _e,bw=new _e,Vo=new _e,IL=new Ln,OL=new Ns,Ds=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(tr(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(-tr(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(tr(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(-tr(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(tr(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(-tr(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:ht("Euler: .setFromRotationMatrix() encountered an unknown order: "+n)}return this._order=n,r===!0&&this._onChangeCallback(),this}setFromQuaternion(e,n,r){return IL.makeRotationFromQuaternion(e),this.setFromRotationMatrix(IL,n,r)}setFromVector3(e,n=this._order){return this.set(e.x,e.y,e.z,n)}reorder(e){return OL.setFromEuler(this),this.setFromQuaternion(OL,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}};Ds.DEFAULT_ORDER="XYZ";wm=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}},Moe=0,UL=new _e,cm=new Ns,nc=new Ln,_w=new _e,Np=new _e,Toe=new _e,Eoe=new Ns,NL=new _e(1,0,0),DL=new _e(0,1,0),FL=new _e(0,0,1),LL={type:"added"},Coe={type:"removed"},lm={type:"childadded",child:null},rC={type:"childremoved",child:null},Ei=class t extends vo{constructor(){super(),this.isObject3D=!0,Object.defineProperty(this,"id",{value:Moe++}),this.uuid=cc(),this.name="",this.type="Object3D",this.parent=null,this.children=[],this.up=t.DEFAULT_UP.clone();let e=new _e,n=new Ds,r=new Ns,i=new _e(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 Ln},normalMatrix:{value:new Nn}}),this.matrix=new Ln,this.matrixWorld=new Ln,this.matrixAutoUpdate=t.DEFAULT_MATRIX_AUTO_UPDATE,this.matrixWorldAutoUpdate=t.DEFAULT_MATRIX_WORLD_AUTO_UPDATE,this.matrixWorldNeedsUpdate=!1,this.layers=new wm,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 cm.setFromAxisAngle(e,n),this.quaternion.multiply(cm),this}rotateOnWorldAxis(e,n){return cm.setFromAxisAngle(e,n),this.quaternion.premultiply(cm),this}rotateX(e){return this.rotateOnAxis(NL,e)}rotateY(e){return this.rotateOnAxis(DL,e)}rotateZ(e){return this.rotateOnAxis(FL,e)}translateOnAxis(e,n){return UL.copy(e).applyQuaternion(this.quaternion),this.position.add(UL.multiplyScalar(n)),this}translateX(e){return this.translateOnAxis(NL,e)}translateY(e){return this.translateOnAxis(DL,e)}translateZ(e){return this.translateOnAxis(FL,e)}localToWorld(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(this.matrixWorld)}worldToLocal(e){return this.updateWorldMatrix(!0,!1),e.applyMatrix4(nc.copy(this.matrixWorld).invert())}lookAt(e,n,r){e.isVector3?_w.copy(e):_w.set(e,n,r);let i=this.parent;this.updateWorldMatrix(!0,!1),Np.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?nc.lookAt(Np,_w,this.up):nc.lookAt(_w,Np,this.up),this.quaternion.setFromRotationMatrix(nc),i&&(nc.extractRotation(i.matrixWorld),cm.setFromRotationMatrix(nc),this.quaternion.premultiply(cm.invert()))}add(e){if(arguments.length>1){for(let n=0;n<arguments.length;n++)this.add(arguments[n]);return this}return e===this?(tt("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(LL),lm.child=e,this.dispatchEvent(lm),lm.child=null):tt("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(Coe),rC.child=e,this.dispatchEvent(rC),rC.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),nc.copy(this.matrixWorld).invert(),e.parent!==null&&(e.parent.updateWorldMatrix(!0,!1),nc.multiply(e.parent.matrixWorld)),e.applyMatrix4(nc),e.removeFromParent(),e.parent=this,this.children.push(e),e.updateWorldMatrix(!1,!0),e.dispatchEvent(LL),lm.child=e,this.dispatchEvent(lm),lm.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(Np,e,Toe),e}getWorldScale(e){return this.updateWorldMatrix(!0,!1),this.matrixWorld.decompose(Np,Eoe,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,r=!1){let i=this.parent;if(e===!0&&i!==null&&i.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||r)&&(this.matrixWorldAutoUpdate===!0&&(this.parent===null?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix)),this.matrixWorldNeedsUpdate=!1,r=!0),n===!0){let o=this.children;for(let a=0,l=o.length;a<l;a++)o[a].updateWorldMatrix(!1,!0,r)}}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}};Ei.DEFAULT_UP=new _e(0,1,0);Ei.DEFAULT_MATRIX_AUTO_UPDATE=!0;Ei.DEFAULT_MATRIX_WORLD_AUTO_UPDATE=!0;kf=class extends Ei{constructor(){super(),this.isGroup=!0,this.type="Group"}},Roe={type:"move"},ld=class{constructor(){this._targetRay=null,this._grip=null,this._hand=null}getHandSpace(){return this._hand===null&&(this._hand=new kf,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 kf,this._targetRay.matrixAutoUpdate=!1,this._targetRay.visible=!1,this._targetRay.hasLinearVelocity=!1,this._targetRay.linearVelocity=new _e,this._targetRay.hasAngularVelocity=!1,this._targetRay.angularVelocity=new _e),this._targetRay}getGripSpace(){return this._grip===null&&(this._grip=new kf,this._grip.matrixAutoUpdate=!1,this._grip.visible=!1,this._grip.hasLinearVelocity=!1,this._grip.linearVelocity=new _e,this._grip.hasAngularVelocity=!1,this._grip.angularVelocity=new _e,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(Roe)))}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 kf;r.matrixAutoUpdate=!1,r.visible=!1,e.joints[n.jointName]=r,e.add(r)}return e.joints[n.jointName]}},pk={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},Ju={h:0,s:0,l:0},Sw={h:0,s:0,l:0};vn=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=gr){return e=Math.floor(e),this.r=(e>>16&255)/255,this.g=(e>>8&255)/255,this.b=(e&255)/255,Sn.colorSpaceToWorking(this,n),this}setRGB(e,n,r,i=Sn.workingColorSpace){return this.r=e,this.g=n,this.b=r,Sn.colorSpaceToWorking(this,i),this}setHSL(e,n,r,i=Sn.workingColorSpace){if(e=DC(e,1),n=tr(n,0,1),r=tr(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=iC(a,o,e+1/3),this.g=iC(a,o,e),this.b=iC(a,o,e-1/3)}return Sn.colorSpaceToWorking(this,i),this}setStyle(e,n=gr){function r(o){o!==void 0&&parseFloat(o)<1&&ht("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:ht("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);ht("Color: Invalid hex color "+e)}else if(e&&e.length>0)return this.setColorName(e,n);return this}setColorName(e,n=gr){let r=pk[e.toLowerCase()];return r!==void 0?this.setHex(r,n):ht("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=lc(e.r),this.g=lc(e.g),this.b=lc(e.b),this}copyLinearToSRGB(e){return this.r=xm(e.r),this.g=xm(e.g),this.b=xm(e.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(e=gr){return Sn.workingToColorSpace(Ji.copy(this),e),Math.round(tr(Ji.r*255,0,255))*65536+Math.round(tr(Ji.g*255,0,255))*256+Math.round(tr(Ji.b*255,0,255))}getHexString(e=gr){return("000000"+this.getHex(e).toString(16)).slice(-6)}getHSL(e,n=Sn.workingColorSpace){Sn.workingToColorSpace(Ji.copy(this),n);let r=Ji.r,i=Ji.g,o=Ji.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=Sn.workingColorSpace){return Sn.workingToColorSpace(Ji.copy(this),n),e.r=Ji.r,e.g=Ji.g,e.b=Ji.b,e}getStyle(e=gr){Sn.workingToColorSpace(Ji.copy(this),e);let n=Ji.r,r=Ji.g,i=Ji.b;return e!==gr?`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(Ju),this.setHSL(Ju.h+e,Ju.s+n,Ju.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(Ju),e.getHSL(Sw);let r=Bp(Ju.h,Sw.h,n),i=Bp(Ju.s,Sw.s,n),o=Bp(Ju.l,Sw.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}},Ji=new vn;vn.NAMES=pk;Yf=class extends Ei{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 Ds,this.environmentIntensity=1,this.environmentRotation=new Ds,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}},Os=new _e,rc=new _e,oC=new _e,ic=new _e,um=new _e,dm=new _e,kL=new _e,sC=new _e,aC=new _e,cC=new _e,lC=new In,uC=new In,dC=new In,id=class t{constructor(e=new _e,n=new _e,r=new _e){this.a=e,this.b=n,this.c=r}static getNormal(e,n,r,i){i.subVectors(r,n),Os.subVectors(e,n),i.cross(Os);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){Os.subVectors(i,n),rc.subVectors(r,n),oC.subVectors(e,n);let a=Os.dot(Os),l=Os.dot(rc),s=Os.dot(oC),u=rc.dot(rc),d=rc.dot(oC),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,ic)===null?!1:ic.x>=0&&ic.y>=0&&ic.x+ic.y<=1}static getInterpolation(e,n,r,i,o,a,l,s){return this.getBarycoord(e,n,r,i,ic)===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,ic.x),s.addScaledVector(a,ic.y),s.addScaledVector(l,ic.z),s)}static getInterpolatedAttribute(e,n,r,i,o,a){return lC.setScalar(0),uC.setScalar(0),dC.setScalar(0),lC.fromBufferAttribute(e,n),uC.fromBufferAttribute(e,r),dC.fromBufferAttribute(e,i),a.setScalar(0),a.addScaledVector(lC,o.x),a.addScaledVector(uC,o.y),a.addScaledVector(dC,o.z),a}static isFrontFacing(e,n,r,i){return Os.subVectors(r,n),rc.subVectors(e,n),Os.cross(rc).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 Os.subVectors(this.c,this.b),rc.subVectors(this.a,this.b),Os.cross(rc).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;um.subVectors(i,r),dm.subVectors(o,r),sC.subVectors(e,r);let s=um.dot(sC),u=dm.dot(sC);if(s<=0&&u<=0)return n.copy(r);aC.subVectors(e,i);let d=um.dot(aC),h=dm.dot(aC);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(um,a);cC.subVectors(e,o);let g=um.dot(cC),y=dm.dot(cC);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(dm,l);let b=d*y-g*h;if(b<=0&&h-d>=0&&g-y>=0)return kL.subVectors(o,i),l=(h-d)/(h-d+(g-y)),n.copy(i).addScaledVector(kL,l);let S=1/(b+_+f);return a=_*S,l=f*S,n.copy(r).addScaledVector(um,a).addScaledVector(dm,l)}equals(e){return e.a.equals(this.a)&&e.b.equals(this.b)&&e.c.equals(this.c)}},ud=class{constructor(e=new _e(1/0,1/0,1/0),n=new _e(-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(Us.fromArray(e,n));return this}setFromBufferAttribute(e){this.makeEmpty();for(let n=0,r=e.count;n<r;n++)this.expandByPoint(Us.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=Us.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,Us):Us.fromBufferAttribute(o,a),Us.applyMatrix4(e.matrixWorld),this.expandByPoint(Us);else e.boundingBox!==void 0?(e.boundingBox===null&&e.computeBoundingBox(),ww.copy(e.boundingBox)):(r.boundingBox===null&&r.computeBoundingBox(),ww.copy(r.boundingBox)),ww.applyMatrix4(e.matrixWorld),this.union(ww)}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,Us),Us.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(Dp),Mw.subVectors(this.max,Dp),fm.subVectors(e.a,Dp),hm.subVectors(e.b,Dp),mm.subVectors(e.c,Dp),Qu.subVectors(hm,fm),ed.subVectors(mm,hm),Nf.subVectors(fm,mm);let n=[0,-Qu.z,Qu.y,0,-ed.z,ed.y,0,-Nf.z,Nf.y,Qu.z,0,-Qu.x,ed.z,0,-ed.x,Nf.z,0,-Nf.x,-Qu.y,Qu.x,0,-ed.y,ed.x,0,-Nf.y,Nf.x,0];return!fC(n,fm,hm,mm,Mw)||(n=[1,0,0,0,1,0,0,0,1],!fC(n,fm,hm,mm,Mw))?!1:(Tw.crossVectors(Qu,ed),n=[Tw.x,Tw.y,Tw.z],fC(n,fm,hm,mm,Mw))}clampPoint(e,n){return n.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,Us).distanceTo(e)}getBoundingSphere(e){return this.isEmpty()?e.makeEmpty():(this.getCenter(e.center),e.radius=this.getSize(Us).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:(oc[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),oc[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),oc[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),oc[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),oc[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),oc[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),oc[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),oc[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(oc),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}},oc=[new _e,new _e,new _e,new _e,new _e,new _e,new _e,new _e],Us=new _e,ww=new ud,fm=new _e,hm=new _e,mm=new _e,Qu=new _e,ed=new _e,Nf=new _e,Dp=new _e,Mw=new _e,Tw=new _e,Df=new _e;ac=Aoe();yi=new _e,Cw=new yn,Poe=0,si=class extends vo{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:Poe++}),this.name="",this.array=e,this.itemSize=n,this.count=e!==void 0?e.length/n:0,this.normalized=r,this.usage=qf,this.updateRanges=[],this.gpuType=fn,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++)Cw.fromBufferAttribute(this,n),Cw.applyMatrix3(e),this.setXY(n,Cw.x,Cw.y);else if(this.itemSize===3)for(let n=0,r=this.count;n<r;n++)yi.fromBufferAttribute(this,n),yi.applyMatrix3(e),this.setXYZ(n,yi.x,yi.y,yi.z);return this}applyMatrix4(e){for(let n=0,r=this.count;n<r;n++)yi.fromBufferAttribute(this,n),yi.applyMatrix4(e),this.setXYZ(n,yi.x,yi.y,yi.z);return this}applyNormalMatrix(e){for(let n=0,r=this.count;n<r;n++)yi.fromBufferAttribute(this,n),yi.applyNormalMatrix(e),this.setXYZ(n,yi.x,yi.y,yi.z);return this}transformDirection(e){for(let n=0,r=this.count;n<r;n++)yi.fromBufferAttribute(this,n),yi.transformDirection(e),this.setXYZ(n,yi.x,yi.y,yi.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=yo(r,this.array)),r}setComponent(e,n,r){return this.normalized&&(r=Wn(r,this.array)),this.array[e*this.itemSize+n]=r,this}getX(e){let n=this.array[e*this.itemSize];return this.normalized&&(n=yo(n,this.array)),n}setX(e,n){return this.normalized&&(n=Wn(n,this.array)),this.array[e*this.itemSize]=n,this}getY(e){let n=this.array[e*this.itemSize+1];return this.normalized&&(n=yo(n,this.array)),n}setY(e,n){return this.normalized&&(n=Wn(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=yo(n,this.array)),n}setZ(e,n){return this.normalized&&(n=Wn(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=yo(n,this.array)),n}setW(e,n){return this.normalized&&(n=Wn(n,this.array)),this.array[e*this.itemSize+3]=n,this}setXY(e,n,r){return e*=this.itemSize,this.normalized&&(n=Wn(n,this.array),r=Wn(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=Wn(n,this.array),r=Wn(r,this.array),i=Wn(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=Wn(n,this.array),r=Wn(r,this.array),i=Wn(i,this.array),o=Wn(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!==qf&&(e.usage=this.usage),e}dispose(){this.dispatchEvent({type:"dispose"})}},Zf=class extends si{constructor(e,n,r){super(new Uint16Array(e),n,r)}},Kf=class extends si{constructor(e,n,r){super(new Uint32Array(e),n,r)}},Gp=class extends si{constructor(e,n,r){super(new Uint16Array(e),n,r),this.isFloat16BufferAttribute=!0}getX(e){let n=Ew(this.array[e*this.itemSize]);return this.normalized&&(n=yo(n,this.array)),n}setX(e,n){return this.normalized&&(n=Wn(n,this.array)),this.array[e*this.itemSize]=Go(n),this}getY(e){let n=Ew(this.array[e*this.itemSize+1]);return this.normalized&&(n=yo(n,this.array)),n}setY(e,n){return this.normalized&&(n=Wn(n,this.array)),this.array[e*this.itemSize+1]=Go(n),this}getZ(e){let n=Ew(this.array[e*this.itemSize+2]);return this.normalized&&(n=yo(n,this.array)),n}setZ(e,n){return this.normalized&&(n=Wn(n,this.array)),this.array[e*this.itemSize+2]=Go(n),this}getW(e){let n=Ew(this.array[e*this.itemSize+3]);return this.normalized&&(n=yo(n,this.array)),n}setW(e,n){return this.normalized&&(n=Wn(n,this.array)),this.array[e*this.itemSize+3]=Go(n),this}setXY(e,n,r){return e*=this.itemSize,this.normalized&&(n=Wn(n,this.array),r=Wn(r,this.array)),this.array[e+0]=Go(n),this.array[e+1]=Go(r),this}setXYZ(e,n,r,i){return e*=this.itemSize,this.normalized&&(n=Wn(n,this.array),r=Wn(r,this.array),i=Wn(i,this.array)),this.array[e+0]=Go(n),this.array[e+1]=Go(r),this.array[e+2]=Go(i),this}setXYZW(e,n,r,i,o){return e*=this.itemSize,this.normalized&&(n=Wn(n,this.array),r=Wn(r,this.array),i=Wn(i,this.array),o=Wn(o,this.array)),this.array[e+0]=Go(n),this.array[e+1]=Go(r),this.array[e+2]=Go(i),this.array[e+3]=Go(o),this}},ai=class extends si{constructor(e,n,r){super(new Float32Array(e),n,r)}},Ioe=new ud,Fp=new _e,hC=new _e,Jf=class{constructor(e=new _e,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):Ioe.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;Fp.subVectors(e,this.center);let n=Fp.lengthSq();if(n>this.radius*this.radius){let r=Math.sqrt(n),i=(r-this.radius)*.5;this.center.addScaledVector(Fp,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):(hC.subVectors(e.center,this.center).setLength(e.radius),this.expandByPoint(Fp.copy(e.center).add(hC)),this.expandByPoint(Fp.copy(e.center).sub(hC))),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}},Ooe=0,ms=new Ln,mC=new Ei,pm=new _e,Ho=new ud,Lp=new ud,Ii=new _e,eo=class t extends vo{constructor(){super(),this.isBufferGeometry=!0,Object.defineProperty(this,"id",{value:Ooe++}),this.uuid=cc(),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={},this._transformed=!1}getIndex(){return this.index}setIndex(e){return Array.isArray(e)?this.index=new(noe(e)?Kf:Zf)(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 Nn().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._transformed=!0,this}applyQuaternion(e){return ms.makeRotationFromQuaternion(e),this.applyMatrix4(ms),this}rotateX(e){return ms.makeRotationX(e),this.applyMatrix4(ms),this}rotateY(e){return ms.makeRotationY(e),this.applyMatrix4(ms),this}rotateZ(e){return ms.makeRotationZ(e),this.applyMatrix4(ms),this}translate(e,n,r){return ms.makeTranslation(e,n,r),this.applyMatrix4(ms),this}scale(e,n,r){return ms.makeScale(e,n,r),this.applyMatrix4(ms),this}lookAt(e){return mC.lookAt(e),mC.updateMatrix(),this.applyMatrix4(mC.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(pm).negate(),this.translate(pm.x,pm.y,pm.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 ai(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&&ht("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 ud);let e=this.attributes.position,n=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){tt("BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box.",this),this.boundingBox.set(new _e(-1/0,-1/0,-1/0),new _e(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];Ho.setFromBufferAttribute(o),this.morphTargetsRelative?(Ii.addVectors(this.boundingBox.min,Ho.min),this.boundingBox.expandByPoint(Ii),Ii.addVectors(this.boundingBox.max,Ho.max),this.boundingBox.expandByPoint(Ii)):(this.boundingBox.expandByPoint(Ho.min),this.boundingBox.expandByPoint(Ho.max))}}else this.boundingBox.makeEmpty();(isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||isNaN(this.boundingBox.min.z))&&tt('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 Jf);let e=this.attributes.position,n=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){tt("BufferGeometry.computeBoundingSphere(): GLBufferAttribute requires a manual bounding sphere.",this),this.boundingSphere.set(new _e,1/0);return}if(e){let r=this.boundingSphere.center;if(Ho.setFromBufferAttribute(e),n)for(let o=0,a=n.length;o<a;o++){let l=n[o];Lp.setFromBufferAttribute(l),this.morphTargetsRelative?(Ii.addVectors(Ho.min,Lp.min),Ho.expandByPoint(Ii),Ii.addVectors(Ho.max,Lp.max),Ho.expandByPoint(Ii)):(Ho.expandByPoint(Lp.min),Ho.expandByPoint(Lp.max))}Ho.getCenter(r);let i=0;for(let o=0,a=e.count;o<a;o++)Ii.fromBufferAttribute(e,o),i=Math.max(i,r.distanceToSquared(Ii));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++)Ii.fromBufferAttribute(l,u),s&&(pm.fromBufferAttribute(e,u),Ii.add(pm)),i=Math.max(i,r.distanceToSquared(Ii))}this.boundingSphere.radius=Math.sqrt(i),isNaN(this.boundingSphere.radius)&&tt('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){tt("BufferGeometry: .computeTangents() failed. Missing required attributes (index, position, normal or uv)");return}let r=n.position,i=n.normal,o=n.uv,a=this.getAttribute("tangent");(a===void 0||a.count!==r.count)&&(a=new si(new Float32Array(4*r.count),4),this.setAttribute("tangent",a));let l=[],s=[];for(let c=0;c<r.count;c++)l[c]=new _e,s[c]=new _e;let u=new _e,d=new _e,h=new _e,f=new yn,g=new yn,y=new yn,_=new _e,b=new _e;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,O=x.count;for(let L=T,F=T+O;L<F;L+=3)S(e.getX(L+0),e.getX(L+1),e.getX(L+2))}let v=new _e,C=new _e,E=new _e,M=new _e;function R(c){E.fromBufferAttribute(i,c),M.copy(E);let m=l[c];v.copy(m),v.sub(E.multiplyScalar(E.dot(m))).normalize(),C.crossVectors(M,m);let T=C.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,O=x.count;for(let L=T,F=T+O;L<F;L+=3)R(e.getX(L+0)),R(e.getX(L+1)),R(e.getX(L+2))}this._transformed=!0}computeVertexNormals(){let e=this.index,n=this.getAttribute("position");if(n!==void 0){let r=this.getAttribute("normal");if(r===void 0||r.count!==n.count)r=new si(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 _e,o=new _e,a=new _e,l=new _e,s=new _e,u=new _e,d=new _e,h=new _e;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++)Ii.fromBufferAttribute(e,n),Ii.normalize(),e.setXYZ(n,Ii.x,Ii.y,Ii.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 si(f,d,h)}if(this.index===null)return ht("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.parameters!==void 0&&this._transformed===!0?"BufferGeometry":this.type,this.name!==""&&(e.name=this.name),Object.keys(this.userData).length>0&&(e.userData=this.userData),this.parameters!==void 0&&this._transformed!==!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._transformed=e._transformed,this}dispose(){this.dispatchEvent({type:"dispose"})}},Hp=class{constructor(e,n){this.isInterleavedBuffer=!0,this.array=e,this.stride=n,this.count=e!==void 0?e.length/n:0,this.usage=qf,this.updateRanges=[],this.version=0,this.uuid=cc()}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=cc()),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=cc()),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}}},go=new _e,qw=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++)go.fromBufferAttribute(this,n),go.applyMatrix4(e),this.setXYZ(n,go.x,go.y,go.z);return this}applyNormalMatrix(e){for(let n=0,r=this.count;n<r;n++)go.fromBufferAttribute(this,n),go.applyNormalMatrix(e),this.setXYZ(n,go.x,go.y,go.z);return this}transformDirection(e){for(let n=0,r=this.count;n<r;n++)go.fromBufferAttribute(this,n),go.transformDirection(e),this.setXYZ(n,go.x,go.y,go.z);return this}getComponent(e,n){let r=this.array[e*this.data.stride+this.offset+n];return this.normalized&&(r=yo(r,this.array)),r}setComponent(e,n,r){return this.normalized&&(r=Wn(r,this.array)),this.data.array[e*this.data.stride+this.offset+n]=r,this}setX(e,n){return this.normalized&&(n=Wn(n,this.array)),this.data.array[e*this.data.stride+this.offset]=n,this}setY(e,n){return this.normalized&&(n=Wn(n,this.array)),this.data.array[e*this.data.stride+this.offset+1]=n,this}setZ(e,n){return this.normalized&&(n=Wn(n,this.array)),this.data.array[e*this.data.stride+this.offset+2]=n,this}setW(e,n){return this.normalized&&(n=Wn(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=yo(n,this.array)),n}getY(e){let n=this.data.array[e*this.data.stride+this.offset+1];return this.normalized&&(n=yo(n,this.array)),n}getZ(e){let n=this.data.array[e*this.data.stride+this.offset+2];return this.normalized&&(n=yo(n,this.array)),n}getW(e){let n=this.data.array[e*this.data.stride+this.offset+3];return this.normalized&&(n=yo(n,this.array)),n}setXY(e,n,r){return e=e*this.data.stride+this.offset,this.normalized&&(n=Wn(n,this.array),r=Wn(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=Wn(n,this.array),r=Wn(r,this.array),i=Wn(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=Wn(n,this.array),r=Wn(r,this.array),i=Wn(i,this.array),o=Wn(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){Xf("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 si(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){Xf("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}}},Uoe=0,ci=class extends vo{constructor(){super(),this.isMaterial=!0,Object.defineProperty(this,"id",{value:Uoe++}),this.uuid=cc(),this.name="",this.type="Material",this.blending=Oi,this.side=zi,this.vertexColors=!1,this.opacity=1,this.transparent=!1,this.alphaHash=!1,this.blendSrc=od,this.blendDst=sd,this.blendEquation=Ti,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.blendColor=new vn(0,0,0),this.blendAlpha=0,this.depthFunc=ta,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=Ww,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=rd,this.stencilZFail=rd,this.stencilZPass=rd,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){ht(`Material: parameter '${n}' has value of undefined.`);continue}let i=this[n];if(i===void 0){ht(`Material: '${n}' is not a property of THREE.${this.type}.`);continue}i&&i.isColor?i.set(r):i&&i.isVector2&&r&&r.isVector2||i&&i.isEuler&&r&&r.isEuler||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!==Oi&&(r.blending=this.blending),this.side!==zi&&(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!==od&&(r.blendSrc=this.blendSrc),this.blendDst!==sd&&(r.blendDst=this.blendDst),this.blendEquation!==Ti&&(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!==ta&&(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!==Ww&&(r.stencilFunc=this.stencilFunc),this.stencilRef!==0&&(r.stencilRef=this.stencilRef),this.stencilFuncMask!==255&&(r.stencilFuncMask=this.stencilFuncMask),this.stencilFail!==rd&&(r.stencilFail=this.stencilFail),this.stencilZFail!==rd&&(r.stencilZFail=this.stencilZFail),this.stencilZPass!==rd&&(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}fromJSON(e,n){if(e.uuid!==void 0&&(this.uuid=e.uuid),e.name!==void 0&&(this.name=e.name),e.color!==void 0&&this.color!==void 0&&this.color.setHex(e.color),e.roughness!==void 0&&(this.roughness=e.roughness),e.metalness!==void 0&&(this.metalness=e.metalness),e.sheen!==void 0&&(this.sheen=e.sheen),e.sheenColor!==void 0&&(this.sheenColor=new vn().setHex(e.sheenColor)),e.sheenRoughness!==void 0&&(this.sheenRoughness=e.sheenRoughness),e.emissive!==void 0&&this.emissive!==void 0&&this.emissive.setHex(e.emissive),e.specular!==void 0&&this.specular!==void 0&&this.specular.setHex(e.specular),e.specularIntensity!==void 0&&(this.specularIntensity=e.specularIntensity),e.specularColor!==void 0&&this.specularColor!==void 0&&this.specularColor.setHex(e.specularColor),e.shininess!==void 0&&(this.shininess=e.shininess),e.clearcoat!==void 0&&(this.clearcoat=e.clearcoat),e.clearcoatRoughness!==void 0&&(this.clearcoatRoughness=e.clearcoatRoughness),e.dispersion!==void 0&&(this.dispersion=e.dispersion),e.iridescence!==void 0&&(this.iridescence=e.iridescence),e.iridescenceIOR!==void 0&&(this.iridescenceIOR=e.iridescenceIOR),e.iridescenceThicknessRange!==void 0&&(this.iridescenceThicknessRange=e.iridescenceThicknessRange),e.transmission!==void 0&&(this.transmission=e.transmission),e.thickness!==void 0&&(this.thickness=e.thickness),e.attenuationDistance!==void 0&&(this.attenuationDistance=e.attenuationDistance),e.attenuationColor!==void 0&&this.attenuationColor!==void 0&&this.attenuationColor.setHex(e.attenuationColor),e.anisotropy!==void 0&&(this.anisotropy=e.anisotropy),e.anisotropyRotation!==void 0&&(this.anisotropyRotation=e.anisotropyRotation),e.fog!==void 0&&(this.fog=e.fog),e.flatShading!==void 0&&(this.flatShading=e.flatShading),e.blending!==void 0&&(this.blending=e.blending),e.combine!==void 0&&(this.combine=e.combine),e.side!==void 0&&(this.side=e.side),e.shadowSide!==void 0&&(this.shadowSide=e.shadowSide),e.opacity!==void 0&&(this.opacity=e.opacity),e.transparent!==void 0&&(this.transparent=e.transparent),e.alphaTest!==void 0&&(this.alphaTest=e.alphaTest),e.alphaHash!==void 0&&(this.alphaHash=e.alphaHash),e.depthFunc!==void 0&&(this.depthFunc=e.depthFunc),e.depthTest!==void 0&&(this.depthTest=e.depthTest),e.depthWrite!==void 0&&(this.depthWrite=e.depthWrite),e.colorWrite!==void 0&&(this.colorWrite=e.colorWrite),e.blendSrc!==void 0&&(this.blendSrc=e.blendSrc),e.blendDst!==void 0&&(this.blendDst=e.blendDst),e.blendEquation!==void 0&&(this.blendEquation=e.blendEquation),e.blendSrcAlpha!==void 0&&(this.blendSrcAlpha=e.blendSrcAlpha),e.blendDstAlpha!==void 0&&(this.blendDstAlpha=e.blendDstAlpha),e.blendEquationAlpha!==void 0&&(this.blendEquationAlpha=e.blendEquationAlpha),e.blendColor!==void 0&&this.blendColor!==void 0&&this.blendColor.setHex(e.blendColor),e.blendAlpha!==void 0&&(this.blendAlpha=e.blendAlpha),e.stencilWriteMask!==void 0&&(this.stencilWriteMask=e.stencilWriteMask),e.stencilFunc!==void 0&&(this.stencilFunc=e.stencilFunc),e.stencilRef!==void 0&&(this.stencilRef=e.stencilRef),e.stencilFuncMask!==void 0&&(this.stencilFuncMask=e.stencilFuncMask),e.stencilFail!==void 0&&(this.stencilFail=e.stencilFail),e.stencilZFail!==void 0&&(this.stencilZFail=e.stencilZFail),e.stencilZPass!==void 0&&(this.stencilZPass=e.stencilZPass),e.stencilWrite!==void 0&&(this.stencilWrite=e.stencilWrite),e.wireframe!==void 0&&(this.wireframe=e.wireframe),e.wireframeLinewidth!==void 0&&(this.wireframeLinewidth=e.wireframeLinewidth),e.wireframeLinecap!==void 0&&(this.wireframeLinecap=e.wireframeLinecap),e.wireframeLinejoin!==void 0&&(this.wireframeLinejoin=e.wireframeLinejoin),e.rotation!==void 0&&(this.rotation=e.rotation),e.linewidth!==void 0&&(this.linewidth=e.linewidth),e.dashSize!==void 0&&(this.dashSize=e.dashSize),e.gapSize!==void 0&&(this.gapSize=e.gapSize),e.scale!==void 0&&(this.scale=e.scale),e.polygonOffset!==void 0&&(this.polygonOffset=e.polygonOffset),e.polygonOffsetFactor!==void 0&&(this.polygonOffsetFactor=e.polygonOffsetFactor),e.polygonOffsetUnits!==void 0&&(this.polygonOffsetUnits=e.polygonOffsetUnits),e.dithering!==void 0&&(this.dithering=e.dithering),e.alphaToCoverage!==void 0&&(this.alphaToCoverage=e.alphaToCoverage),e.premultipliedAlpha!==void 0&&(this.premultipliedAlpha=e.premultipliedAlpha),e.forceSinglePass!==void 0&&(this.forceSinglePass=e.forceSinglePass),e.allowOverride!==void 0&&(this.allowOverride=e.allowOverride),e.visible!==void 0&&(this.visible=e.visible),e.toneMapped!==void 0&&(this.toneMapped=e.toneMapped),e.userData!==void 0&&(this.userData=e.userData),e.vertexColors!==void 0&&(typeof e.vertexColors=="number"?this.vertexColors=e.vertexColors>0:this.vertexColors=e.vertexColors),e.size!==void 0&&(this.size=e.size),e.sizeAttenuation!==void 0&&(this.sizeAttenuation=e.sizeAttenuation),e.map!==void 0&&(this.map=n[e.map]||null),e.matcap!==void 0&&(this.matcap=n[e.matcap]||null),e.alphaMap!==void 0&&(this.alphaMap=n[e.alphaMap]||null),e.bumpMap!==void 0&&(this.bumpMap=n[e.bumpMap]||null),e.bumpScale!==void 0&&(this.bumpScale=e.bumpScale),e.normalMap!==void 0&&(this.normalMap=n[e.normalMap]||null),e.normalMapType!==void 0&&(this.normalMapType=e.normalMapType),e.normalScale!==void 0){let r=e.normalScale;Array.isArray(r)===!1&&(r=[r,r]),this.normalScale=new yn().fromArray(r)}return e.displacementMap!==void 0&&(this.displacementMap=n[e.displacementMap]||null),e.displacementScale!==void 0&&(this.displacementScale=e.displacementScale),e.displacementBias!==void 0&&(this.displacementBias=e.displacementBias),e.roughnessMap!==void 0&&(this.roughnessMap=n[e.roughnessMap]||null),e.metalnessMap!==void 0&&(this.metalnessMap=n[e.metalnessMap]||null),e.emissiveMap!==void 0&&(this.emissiveMap=n[e.emissiveMap]||null),e.emissiveIntensity!==void 0&&(this.emissiveIntensity=e.emissiveIntensity),e.specularMap!==void 0&&(this.specularMap=n[e.specularMap]||null),e.specularIntensityMap!==void 0&&(this.specularIntensityMap=n[e.specularIntensityMap]||null),e.specularColorMap!==void 0&&(this.specularColorMap=n[e.specularColorMap]||null),e.envMap!==void 0&&(this.envMap=n[e.envMap]||null),e.envMapRotation!==void 0&&this.envMapRotation.fromArray(e.envMapRotation),e.envMapIntensity!==void 0&&(this.envMapIntensity=e.envMapIntensity),e.reflectivity!==void 0&&(this.reflectivity=e.reflectivity),e.refractionRatio!==void 0&&(this.refractionRatio=e.refractionRatio),e.lightMap!==void 0&&(this.lightMap=n[e.lightMap]||null),e.lightMapIntensity!==void 0&&(this.lightMapIntensity=e.lightMapIntensity),e.aoMap!==void 0&&(this.aoMap=n[e.aoMap]||null),e.aoMapIntensity!==void 0&&(this.aoMapIntensity=e.aoMapIntensity),e.gradientMap!==void 0&&(this.gradientMap=n[e.gradientMap]||null),e.clearcoatMap!==void 0&&(this.clearcoatMap=n[e.clearcoatMap]||null),e.clearcoatRoughnessMap!==void 0&&(this.clearcoatRoughnessMap=n[e.clearcoatRoughnessMap]||null),e.clearcoatNormalMap!==void 0&&(this.clearcoatNormalMap=n[e.clearcoatNormalMap]||null),e.clearcoatNormalScale!==void 0&&(this.clearcoatNormalScale=new yn().fromArray(e.clearcoatNormalScale)),e.iridescenceMap!==void 0&&(this.iridescenceMap=n[e.iridescenceMap]||null),e.iridescenceThicknessMap!==void 0&&(this.iridescenceThicknessMap=n[e.iridescenceThicknessMap]||null),e.transmissionMap!==void 0&&(this.transmissionMap=n[e.transmissionMap]||null),e.thicknessMap!==void 0&&(this.thicknessMap=n[e.thicknessMap]||null),e.anisotropyMap!==void 0&&(this.anisotropyMap=n[e.anisotropyMap]||null),e.sheenColorMap!==void 0&&(this.sheenColorMap=n[e.sheenColorMap]||null),e.sheenRoughnessMap!==void 0&&(this.sheenRoughnessMap=n[e.sheenRoughnessMap]||null),this}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++}},Xw=class extends ci{constructor(e){super(),this.isSpriteMaterial=!0,this.type="SpriteMaterial",this.color=new vn(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}},sc=new _e,pC=new _e,Rw=new _e,td=new _e,gC=new _e,Aw=new _e,yC=new _e,$w=class{constructor(e=new _e,n=new _e(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,sc)),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=sc.subVectors(e,this.origin).dot(this.direction);return n<0?this.origin.distanceToSquared(e):(sc.copy(this.origin).addScaledVector(this.direction,n),sc.distanceToSquared(e))}distanceSqToSegment(e,n,r,i){pC.copy(e).add(n).multiplyScalar(.5),Rw.copy(n).sub(e).normalize(),td.copy(this.origin).sub(pC);let o=e.distanceTo(n)*.5,a=-this.direction.dot(Rw),l=td.dot(this.direction),s=-td.dot(Rw),u=td.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(pC).addScaledVector(Rw,f),g}intersectSphere(e,n){sc.subVectors(e.center,this.origin);let r=sc.dot(this.direction),i=sc.dot(sc)-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,sc)!==null}intersectTriangle(e,n,r,i,o){gC.subVectors(n,e),Aw.subVectors(r,e),yC.crossVectors(gC,Aw);let a=this.direction.dot(yC),l;if(a>0){if(i)return null;l=1}else if(a<0)l=-1,a=-a;else return null;td.subVectors(this.origin,e);let s=l*this.direction.dot(Aw.crossVectors(td,Aw));if(s<0)return null;let u=l*this.direction.dot(gC.cross(td));if(u<0||s+u>a)return null;let d=-l*td.dot(yC);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)}},qo=class extends ci{constructor(e){super(),this.isMeshBasicMaterial=!0,this.type="MeshBasicMaterial",this.color=new vn(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 Ds,this.combine=Qf,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}},BL=new Ln,Ff=new $w,Pw=new Jf,zL=new _e,Iw=new _e,Ow=new _e,Uw=new _e,vC=new _e,Nw=new _e,VL=new _e,Dw=new _e,qr=class extends Ei{constructor(e=new eo,n=new qo){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){Nw.set(0,0,0);for(let s=0,u=o.length;s<u;s++){let d=l[s],h=o[s];d!==0&&(vC.fromBufferAttribute(h,e),a?Nw.addScaledVector(vC,d):Nw.addScaledVector(vC.sub(n),d))}n.add(Nw)}return n}raycast(e,n){let r=this.geometry,i=this.material,o=this.matrixWorld;i!==void 0&&(r.boundingSphere===null&&r.computeBoundingSphere(),Pw.copy(r.boundingSphere),Pw.applyMatrix4(o),Ff.copy(e.ray).recast(e.near),!(Pw.containsPoint(Ff.origin)===!1&&(Ff.intersectSphere(Pw,zL)===null||Ff.origin.distanceToSquared(zL)>(e.far-e.near)**2))&&(BL.copy(o).invert(),Ff.copy(e.ray).applyMatrix4(BL),!(r.boundingBox!==null&&Ff.intersectsBox(r.boundingBox)===!1)&&this._computeIntersections(e,n,Ff)))}_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 C=w,E=v;C<E;C+=3){let M=l.getX(C),R=l.getX(C+1),c=l.getX(C+2);i=Fw(this,S,e,r,u,d,h,M,R,c),i&&(i.faceIndex=Math.floor(C/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),C=l.getX(b+2);i=Fw(this,a,e,r,u,d,h,w,v,C),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 C=w,E=v;C<E;C+=3){let M=C,R=C+1,c=C+2;i=Fw(this,S,e,r,u,d,h,M,R,c),i&&(i.faceIndex=Math.floor(C/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,C=b+2;i=Fw(this,a,e,r,u,d,h,w,v,C),i&&(i.faceIndex=Math.floor(b/3),n.push(i))}}}};fr=class extends Fr{constructor(e=null,n=1,r=1,i,o,a,l,s,u=kn,d=kn,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}},fc=class extends si{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}},xC=new _e,Doe=new _e,Foe=new Nn,Wo=class{constructor(e=new _e(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=xC.subVectors(r,n).cross(Doe.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(xC),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||Foe.getNormalMatrix(e),i=this.coplanarPoint(xC).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)}},Lf=new Jf,Loe=new yn(.5,.5),Lw=new _e,na=class{constructor(e=new Wo,n=new Wo,r=new Wo,i=new Wo,o=new Wo,a=new Wo){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=Bi,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],C=o[14],E=o[15];if(i[0].setComponents(u-a,g-d,S-y,E-w).normalize(),i[1].setComponents(u+a,g+d,S+y,E+w).normalize(),i[2].setComponents(u+l,g+h,S+_,E+v).normalize(),i[3].setComponents(u-l,g-h,S-_,E-v).normalize(),r)i[4].setComponents(s,f,b,C).normalize(),i[5].setComponents(u-s,g-f,S-b,E-C).normalize();else if(i[4].setComponents(u-s,g-f,S-b,E-C).normalize(),n===Bi)i[5].setComponents(u+s,g+f,S+b,E+C).normalize();else if(n===jo)i[5].setComponents(s,f,b,C).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(),Lf.copy(e.boundingSphere).applyMatrix4(e.matrixWorld);else{let n=e.geometry;n.boundingSphere===null&&n.computeBoundingSphere(),Lf.copy(n.boundingSphere).applyMatrix4(e.matrixWorld)}return this.intersectsSphere(Lf)}intersectsSprite(e){Lf.center.set(0,0,0);let n=Loe.distanceTo(e.center);return Lf.radius=.7071067811865476+n,Lf.applyMatrix4(e.matrixWorld),this.intersectsSphere(Lf)}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(Lw.x=i.normal.x>0?e.max.x:e.min.x,Lw.y=i.normal.y>0?e.max.y:e.min.y,Lw.z=i.normal.z>0?e.max.z:e.min.z,i.distanceToPoint(Lw)<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)}},GL=new Ln,Yw=class t{constructor(){this.coordinateSystem=Bi,this._frustums=[],this._count=0}setFromArrayCamera(e){let n=e.cameras,r=this._frustums;for(let i=0;i<n.length;i++){let o=n[i];GL.multiplyMatrices(o.projectionMatrix,o.matrixWorldInverse),r[i]===void 0&&(r[i]=new na),r[i].setFromProjectionMatrix(GL,o.coordinateSystem,o.reversedDepth)}return this._count=n.length,this}intersectsObject(e){let n=this._frustums;for(let r=0;r<this._count;r++)if(n[r].intersectsObject(e))return!0;return!1}intersectsSprite(e){let n=this._frustums;for(let r=0;r<this._count;r++)if(n[r].intersectsSprite(e))return!0;return!1}intersectsSphere(e){let n=this._frustums;for(let r=0;r<this._count;r++)if(n[r].intersectsSphere(e))return!0;return!1}intersectsBox(e){let n=this._frustums;for(let r=0;r<this._count;r++)if(n[r].intersectsBox(e))return!0;return!1}containsPoint(e){let n=this._frustums;for(let r=0;r<this._count;r++)if(n[r].containsPoint(e))return!0;return!1}copy(e){this.coordinateSystem=e.coordinateSystem;let n=this._frustums,r=e._frustums;for(let i=0;i<e._count;i++)n[i]===void 0&&(n[i]=new na),n[i].copy(r[i]);return this._count=e._count,this}clone(){return new t().copy(this)}},Wp=class extends ci{constructor(e){super(),this.isLineBasicMaterial=!0,this.type="LineBasicMaterial",this.color=new vn(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}},Zw=class extends ci{constructor(e){super(),this.isPointsMaterial=!0,this.type="PointsMaterial",this.color=new vn(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}},hc=class extends Fr{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()}},Mm=class extends Fr{constructor(e,n){super({width:e,height:n}),this.isFramebufferTexture=!0,this.magFilter=kn,this.minFilter=kn,this.generateMipmaps=!1,this.needsUpdate=!0}},ra=class extends Fr{constructor(e=[],n=$o,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}},Fs=class extends Fr{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}},li=class extends Fr{constructor(e,n,r=ur,i,o,a,l=kn,s=kn,u,d=vi,h=1){if(d!==vi&&d!==Ui)throw new Error("THREE.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 Sm(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}},Tm=class extends li{constructor(e,n=ur,r=$o,i,o,a=kn,l=kn,s,u=vi){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}},Em=class extends Fr{constructor(e=null){super(),this.sourceTexture=e,this.isExternalTexture=!0}copy(e){return super.copy(e),this.sourceTexture=e.sourceTexture,this}},mc=class t extends eo{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 ai(u,3)),this.setAttribute("normal",new ai(d,3)),this.setAttribute("uv",new ai(h,2));function y(_,b,S,w,v,C,E,M,R,c,m){let x=C/R,T=E/c,O=C/2,L=E/2,F=M/2,U=R+1,D=c+1,B=0,q=0,X=new _e;for(let re=0;re<D;re++){let xe=re*T-L;for(let pe=0;pe<U;pe++){let Ne=pe*x-O;X[_]=Ne*w,X[b]=xe*v,X[S]=F,u.push(X.x,X.y,X.z),X[_]=0,X[b]=0,X[S]=M>0?1:-1,d.push(X.x,X.y,X.z),h.push(pe/R),h.push(1-re/c),B+=1}}for(let re=0;re<c;re++)for(let xe=0;xe<R;xe++){let pe=f+xe+U*re,Ne=f+xe+U*(re+1),qe=f+(xe+1)+U*(re+1),Xe=f+(xe+1)+U*re;s.push(pe,Ne,Xe),s.push(Ne,qe,Xe),q+=6}l.addGroup(g,q,m),g+=q,f+=B}}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)}},Kw=class t extends eo{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 ai(h,3)),this.setAttribute("normal",new ai(f,3)),this.setAttribute("uv",new ai(g,2));function w(){let C=new _e,E=new _e,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 O=0;O<=i;O++){let L=O/i,F=L*s+l,U=Math.sin(F),D=Math.cos(F);E.x=T*U,E.y=-x*r+b,E.z=T*D,h.push(E.x,E.y,E.z),C.set(U,R,D).normalize(),f.push(C.x,C.y,C.z),g.push(L,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],O=_[m+1][c+1],L=_[m][c+1];(e>0||m!==0)&&(d.push(x,T,L),M+=3),(n>0||m!==o-1)&&(d.push(T,O,L),M+=3)}u.addGroup(S,M,0),S+=M}function v(C){let E=y,M=new yn,R=new _e,c=0,m=C===!0?e:n,x=C===!0?1:-1;for(let O=1;O<=i;O++)h.push(0,b*x,0),f.push(0,x,0),g.push(.5,.5),y++;let T=y;for(let O=0;O<=i;O++){let F=O/i*s+l,U=Math.cos(F),D=Math.sin(F);R.x=m*D,R.y=b*x,R.z=m*U,h.push(R.x,R.y,R.z),f.push(0,x,0),M.x=U*.5+.5,M.y=D*.5*x+.5,g.push(M.x,M.y),y++}for(let O=0;O<i;O++){let L=E+O,F=T+O;C===!0?d.push(F,F+1,L):d.push(F+1,F,L),c+=3}u.addGroup(S,c,C===!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)}},pc=class t extends eo{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 C=v*h-o;y.push(C,-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,C=w+u*(S+1),E=w+1+u*(S+1),M=w+1+u*S;g.push(v,C,M),g.push(C,E,M)}this.setIndex(g),this.setAttribute("position",new ai(y,3)),this.setAttribute("normal",new ai(_,3)),this.setAttribute("uv",new ai(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)}},Jw=class t extends eo{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 _e,f=new _e,g=[],y=[],_=[],b=[];for(let S=0;S<=r;S++){let w=[],v=S/r,C=a+v*l,E=e*Math.cos(C),M=Math.sqrt(e*e-E*E),R=0;S===0&&a===0?R=.5/n:S===r&&s===Math.PI&&(R=-.5/n);for(let c=0;c<=n;c++){let m=c/n,x=i+m*o;h.x=-M*Math.cos(x),h.y=E,h.z=M*Math.sin(x),y.push(h.x,h.y,h.z),f.copy(h).normalize(),_.push(f.x,f.y,f.z),b.push(m+R,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],C=d[S][w],E=d[S+1][w],M=d[S+1][w+1];(S!==0||a>0)&&g.push(v,C,M),(S!==r-1||s<Math.PI)&&g.push(C,E,M)}this.setIndex(g),this.setAttribute("position",new ai(y,3)),this.setAttribute("normal",new ai(_,3)),this.setAttribute("uv",new ai(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)}},Qw=class extends ci{constructor(e){super(),this.isShadowMaterial=!0,this.type="ShadowMaterial",this.color=new vn(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}};gk={clone:mh,merge:ro},Boe=`void main() {
|
|
3
3
|
gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
|
|
4
4
|
}`,zoe=`void main() {
|
|
@@ -4686,4 +4686,4 @@ The element must be a direct child of a <canvas layoutsubtree>.`,b),g=!0)}}}}),n
|
|
|
4686
4686
|
Requested URL: ${c}
|
|
4687
4687
|
Resolved URL: ${m}
|
|
4688
4688
|
Path type: ${T?"relative":"absolute"}
|
|
4689
|
-
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=Y.x.div(Y.y),w=t.objectFit.uniform.value,v;switch(w){case 1:{let c=Tn(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=Tn(Tn(S.div(u),p(1)),Tn(Y.x.div(d),Y.y.div(h)));v=I(u.div(S).mul(c),c);break}case 4:{let c=Tn(Y.x.div(d),Y.y.div(h));v=I(u.div(S).mul(c),c);break}default:{let c=Ot(S.div(u),p(1));v=I(u.div(S).mul(c),c);break}}let C=b.sub(I(.5)).div(v).add(I(.5)),E=I(C.x,p(1).sub(C.y)),M=s.sample(E),R=Eo(Eo(E.x.lessThan(0),E.x.greaterThan(1)),Eo(E.y.lessThan(0),E.y.greaterThan(1)));return N(M.rgb,Co(R,p(0),M.a))}}});var kl,Z8=z(()=>{"use strict";ut();kl={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."),N(0);let e=t||N(0,0,0,0);return N(ge(1,1,1).sub(e.rgb),e.a)}}});var Bl,K8=z(()=>{"use strict";pi();Dt();Jn();ut();Bl={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:Mt,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:Hn,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 N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=Y.x.div(Y.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=jn(l),u=dr(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=wr(h,f.mul(2)),y=g.greaterThan(f).select(f.mul(2).sub(g),g),_=I(He(y).mul(s),me(y).mul(s)),b=a.add(_),S=I(b.x.div(i),b.y);return Ht(Bn(S,r.sample(S),r,t.edges.uniform.value))}}});var kbe,zl,J8=z(()=>{"use strict";Dt();pr();ut();kbe=De(([t])=>{let e=p(6.2831853);return ge(He(e.mul(t)).mul(.5).add(.5),He(e.mul(t.sub(.333))).mul(.5).add(.5),He(e.mul(t.sub(.666))).mul(.5).add(.5))}),zl={name:"LensFlare",category:"Stylize",description:"Realistic camera lens flare with artifacts.",props:{lightPosition:{default:{x:.3,y:.3},transform:Mt,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=Y.x.div(Y.y),S=j,w=I(e.lightPosition.uniform.x,e.lightPosition.uniform.y.oneMinus()),v=I(.5,.5).sub(w),C=bn(t,e.speed),E=me(C.mul(3.7)).mul(.04).add(me(C.mul(7.3)).mul(.03)).add(me(C.mul(13.1)).mul(.02)).add(.97),M=e.edgeFade.uniform,R=Ot(At(w.x.sub(.5)).mul(2),At(w.y.sub(.5)).mul(2)),c=p(1).sub(M.mul(.5)),m=Te(p(1),Ae(c,p(1),R).oneMinus(),M),x=n.mul(m).mul(E),T=I(S.x.sub(w.x).mul(b),S.y.sub(w.y)),O=T.length(),L=[{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}],F=ge(0,0,0);for(let H=0;H<L.length;H++){let $=L[H],te=w.add(v.mul(p($.offset).mul(i).mul(2))),Ee=I(S.x.sub(te.x).mul(b),S.y.sub(te.y)).length(),Pe=p($.size),Q=Ae(Pe.mul(.12),Pe,Ee).oneMinus(),J=Ae(Pe.mul(.05),Pe.mul(.45),Ee).oneMinus(),be=Q.mul(p(1).sub(J.mul(p($.hollow)))),et=p(H*2.17),Ve=me(C.mul(4.3).add(et)).mul(.08).add(me(C.mul(9.1).add(et.mul(1.7))).mul(.05)).add(.95),nt=Pe.mul(.78),Et=Pe.mul(o).mul(.14),Ct=Pe.mul(.1),Wt=Ae(p(0),Ct,At(Ee.sub(nt.add(Et)))).oneMinus(),se=Ae(p(0),Ct,At(Ee.sub(nt))).oneMinus(),at=Ae(p(0),Ct,At(Ee.sub(nt.sub(Et)))).oneMinus(),Le=p($.bright).mul(r).mul(Ve),_t=ge(be.mul(p($.r)).add(Wt.mul(o)).mul(Le),be.mul(p($.g)).add(se.mul(o)).mul(Le),be.mul(p($.b)).add(at.mul(o)).mul(Le));F=F.add(_t)}let U=I(p(1).sub(w.x),p(1).sub(w.y)),D=I(S.x.sub(U.x).mul(b),S.y.sub(U.y)),B=D.length(),q=l.mul(s).mul(.06),X=u.mul(.12).add(.005),re=Ae(p(0),X,At(B.sub(l.add(q)))).oneMinus(),xe=Ae(p(0),X,At(B.sub(l))).oneMinus(),pe=Ae(p(0),X,At(B.sub(l.sub(q)))).oneMinus(),Ne=me(dr(D.y,D.x).mul(3).add(C.mul(.5))).mul(.12).add(.88),qe=ge(re,xe,pe).mul(a).mul(Ne),Xe=dr(T.y,T.x),le=dr(v.y,v.x.mul(b)).mul(.5).add(C.mul(.06)),we=Xe.add(le),Ce=Gt(At(He(we.mul(h.div(2)))),p(3.5)),ke=Gt(At(He(we.add(.25).mul(h.div(2)))),p(7)).mul(.4),je=p(1).div(p(1).add(O.mul(O).mul(60))),ve=kbe(we.div(p(6.2831853)).add(.5)),Ke=Te(ge(1,.97,.92),ve,p(.12)),Ue=Ce.add(ke).mul(je).mul(d).mul(Ke),Z=At(S.y.sub(w.y)),Se=At(S.x.sub(w.x)),Re=p(-800).mul(Z).mul(Z).exp(),ze=g.mul(g).mul(.25).add(.001),Je=p(-1).mul(Se).mul(Se).div(ze.mul(.7)).exp(),ot=p(-1).mul(Se).mul(Se).div(ze).exp(),it=p(-1).mul(Se).mul(Se).div(ze.mul(1.4)).exp(),rt=ge(Re.mul(Je).mul(.5),Re.mul(ot).mul(.65),Re.mul(it).mul(.9)).mul(f),st=p(1).div(_.mul(_).add(.01)),ee=p(-1).mul(O).mul(O).mul(st).exp().mul(y).mul(ge(1,.98,.95)),Fe=p(-500).mul(O).mul(O).exp(),Oe=Ae(p(0),p(.025),O).oneMinus(),k=Fe.add(Oe.mul(1.5)).mul(ge(1,.98,.96)).mul(n),P=F.add(qe).add(Ue).add(rt).add(ee).add(k).mul(x);return N(P,St(Vt(P,ge(.299,.587,.114)).mul(2),0,1))}}});var Q8,Bbe,zbe,Vl,eH=z(()=>{"use strict";Dt();Jn();ut();Q8=Array.from({length:32},(t,e)=>{let n=(e/31-.5)*2;return Math.exp(-.5*n*n/.64)}),Bbe=Q8.reduce((t,e)=>t+e),zbe=Q8.map(t=>t/Bbe),Vl={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:mr,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 N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=Zr(t.angle.uniform),o=Y.x.div(Y.y),a=I(He(i).div(o),me(i));return De(()=>{let l=j,s=a.mul(t.intensity.uniform).div(Y).mul(2),u=N(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(zbe[d]))))}return Ht(u)})()}}});var Gl,tH=z(()=>{"use strict";Dt();zn();ut();Gl={name:"LinearGradient",category:"Textures",description:"Create smooth linear color gradients",props:{colorA:{default:"#1aff00",transform:Me,description:"The starting color of the gradient",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#0000ff",transform:Me,description:"The ending color of the gradient",ui:{type:"color",label:"Color B",group:"Colors"}},start:{default:{x:0,y:.5},transform:Mt,description:"The starting point of the gradient",ui:{type:"position",label:"Start",group:"Position"}},end:{default:{x:1,y:.5},transform:Mt,description:"The ending point of the gradient",ui:{type:"position",label:"End",group:"Position"}},angle:{default:0,transform:mr,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:Hn,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,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=jn(i),a=Fo(i),l=Y.y.max(1e-6),s=Y.x.div(l),u=Zr(t.angle.uniform).negate(),d=He(u),h=me(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=Vt(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 E=wr(At(b),p(2));w=E.greaterThan(p(1)).select(p(2).sub(E),E);break}case 3:w=pt(b);break;default:w=b.clamp(p(0),p(1))}let v=Ft(t.colorA.uniform,t.colorB.uniform,w.clamp(p(0),p(1)),t.colorSpace.uniform.value),C;if(S===1){let E=b.greaterThanEqual(p(0)).select(p(1),p(0)),M=b.lessThanEqual(p(1)).select(p(1),p(0)),R=E.mul(M);C=v.w.mul(R)}else C=v.w;return N(v.x,v.y,v.z,C)}}});var Pn,Hl,nH=z(()=>{"use strict";pi();Dt();Jn();Fi();ki();ut();Pn=64,Hl={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:Hn,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=Rr(Pn*Pn,"vec4"),r=Rr(Pn*Pn,"vec4"),i=new Or(Pn,Pn);i.type=fn;let o=Tr(i);e(()=>{i.dispose()});let a=ne(.5),l=ne(.5),s=ne(0),u=ne(0),d=ne(0),h=ne(.016),f=ne(.008),g=ne(3),y=ne(.97),_=ne(.08),b=ne(1),S=Cn(Pn),w=Cn(Pn-1),v=(O,L)=>De(()=>{let F=Zt,U=F.mod(S),D=F.div(S);Fn(D.greaterThan(Cn(0)).and(D.lessThan(w)).and(U.greaterThan(Cn(0))).and(U.lessThan(w)),()=>{let B=O.element(F),q=B.x,X=B.y,re=B.z,xe=B.w,pe=F.sub(Cn(1)),Ne=F.add(Cn(1)),qe=F.sub(S),Xe=F.add(S),le=F.sub(S).sub(Cn(1)),we=F.sub(S).add(Cn(1)),Ce=F.add(S).sub(Cn(1)),ke=F.add(S).add(Cn(1)),je=g.mul(O.element(pe).x.sub(q).add(O.element(Ne).x.sub(q)).add(O.element(qe).x.sub(q)).add(O.element(Xe).x.sub(q))).toVar(),ve=g.mul(O.element(pe).y.sub(X).add(O.element(Ne).y.sub(X)).add(O.element(qe).y.sub(X)).add(O.element(Xe).y.sub(X))).toVar(),Ke=g.mul(p(.35));je.assign(je.add(Ke.mul(O.element(le).x.sub(q).add(O.element(we).x.sub(q)).add(O.element(Ce).x.sub(q)).add(O.element(ke).x.sub(q))))),ve.assign(ve.add(Ke.mul(O.element(le).y.sub(X).add(O.element(we).y.sub(X)).add(O.element(Ce).y.sub(X)).add(O.element(ke).y.sub(X))))),je.assign(je.sub(g.mul(p(.1)).mul(q))),ve.assign(ve.sub(g.mul(p(.1)).mul(X)));let Ue=re.mul(y).add(je.mul(f)).toVar(),Z=xe.mul(y).add(ve.mul(f)).toVar();Fn(d.greaterThan(p(.01)),()=>{let ze=U.toFloat().add(p(.5)).div(p(Pn)),Je=D.toFloat().add(p(.5)).div(p(Pn)),ot=b.greaterThanEqual(p(1)).select(ze.sub(a).mul(b),ze.sub(a)),it=b.greaterThanEqual(p(1)).select(Je.sub(l),Je.sub(l).div(b)),rt=ot.mul(ot).add(it.mul(it)),st=_.mul(p(3));Fn(rt.lessThan(st.mul(st)),()=>{let ee=rt.negate().div(_.mul(_)).exp().mul(d).mul(h).mul(p(2));Ue.assign(Ue.add(s.mul(ee))),Z.assign(Z.add(u.mul(ee)))})});let Se=q.add(Ue.mul(f)).clamp(p(-.5),p(.5)),Re=X.add(Z.mul(f)).clamp(p(-.5),p(.5));L.element(F).assign(N(Se,Re,Ue,Z))})})().compute(Pn*Pn,[256]),C=O=>De(()=>{let L=Zt,F=L.mod(S),U=L.div(S),D=O.element(L);ir(o,Dn(F,U),N(D.x,D.y,p(0),p(1))).toWriteOnly()})().compute(Pn*Pn,[256]),E=v(n,r),M=v(r,n),R=C(n),c=.5,m=.5,x=Date.now(),T=Date.now();return{outputs:{displacement:i},getComputeNodes:O=>{let L=Date.now(),F=Math.min((L-x)/1e3,.016);if(x=L,F<=0)return null;let U=Math.max(1,O.dimensions.width)/Math.max(1,O.dimensions.height),D=t.stiffness.uniform.value,B=t.damping.uniform.value,q=t.radius.uniform.value*.08,X=(O.pointer.x-c)/F,re=(O.pointer.y-m)/F,xe=Math.sqrt(X*X+re*re),pe=Math.min(xe,3);c=O.pointer.x,m=O.pointer.y,pe>.01&&(T=L);let Ne=t.damping.uniform.value,qe=Ne>0?Math.min(3e4,5e3/Ne):3e4;if(L-T>qe)return null;let Xe=F/2;return a.value=O.pointer.x,l.value=O.pointer.y,s.value=xe>.01?X/xe:0,u.value=xe>.01?re/xe:0,d.value=pe,h.value=F,f.value=Xe,g.value=D,y.value=Math.max(0,Math.min(1,1-B*Xe)),_.value=q,b.value=U,[E,M,R]}}},fragmentNode:({uniforms:t,onBeforeRender:e,childNode:n,onCleanup:r,computeOutputs:i})=>{if(!n)return N(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=wn(i.displacement).sample(j).xy;else{let f=new Float32Array(Pn*Pn),g=new Float32Array(Pn*Pn),y=new Float32Array(Pn*Pn),_=new Float32Array(Pn*Pn),b=new Float32Array(Pn*Pn),S=new Float32Array(Pn*Pn),w=new Float32Array(Pn*Pn),v=new Float32Array(Pn*Pn),C=new Float32Array(Pn*Pn*2),E=new fr(C,Pn,Pn,Er,fn);E.magFilter=sn,E.minFilter=sn,E.needsUpdate=!0;let M=wn(E),R=.5,c=.5,m=Date.now(),x=2;e(({pointer:T,dimensions:O})=>{let L=Date.now(),F=Math.min((L-m)/1e3,.016);if(m=L,F<=0)return;let U=Math.max(1,O.width)/Math.max(1,O.height),D=t.stiffness.uniform.value,B=t.damping.uniform.value,q=t.radius.uniform.value*.08,X=(T.x-R)/F,re=(T.y-c)/F,xe=Math.sqrt(X*X+re*re),pe=Math.min(xe,3),Ne=0,qe=0;xe>.01&&(Ne=X/xe,qe=re/xe);let Xe=F/x;for(let le=0;le<x;le++){if(le===0&&pe>.01){let ke=q*3,je=Math.max(1,Math.floor((T.y-ke)*Pn)),ve=Math.min(Pn-2,Math.ceil((T.y+ke)*Pn)),Ke=Math.max(1,Math.floor((T.x-ke)*Pn)),Ue=Math.min(Pn-2,Math.ceil((T.x+ke)*Pn));for(let Z=je;Z<=ve;Z++)for(let Se=Ke;Se<=Ue;Se++){let Re=Z*Pn+Se,ze=(Se+.5)/Pn,Je=(Z+.5)/Pn,ot=U>=1?(ze-T.x)*U:ze-T.x,it=U>=1?Je-T.y:(Je-T.y)/U,rt=Math.sqrt(ot*ot+it*it);if(rt<ke){let st=Math.exp(-rt*rt/(q*q))*pe*F*2;y[Re]+=Ne*st,_[Re]+=qe*st}}}let we=Math.max(0,Math.min(1,1-B*Xe)),Ce=D*.35;b.set(y),S.set(_),w.set(f),v.set(g);for(let ke=1;ke<Pn-1;ke++)for(let je=1;je<Pn-1;je++){let ve=ke*Pn+je,Ke=0,Ue=0,Z=ve-1,Se=ve+1,Re=ve-Pn,ze=ve+Pn;Ke+=D*(f[Z]-f[ve]),Ke+=D*(f[Se]-f[ve]),Ke+=D*(f[Re]-f[ve]),Ke+=D*(f[ze]-f[ve]),Ue+=D*(g[Z]-g[ve]),Ue+=D*(g[Se]-g[ve]),Ue+=D*(g[Re]-g[ve]),Ue+=D*(g[ze]-g[ve]);let Je=ve-Pn-1,ot=ve-Pn+1,it=ve+Pn-1,rt=ve+Pn+1;Ke+=Ce*(f[Je]-f[ve]),Ke+=Ce*(f[ot]-f[ve]),Ke+=Ce*(f[it]-f[ve]),Ke+=Ce*(f[rt]-f[ve]),Ue+=Ce*(g[Je]-g[ve]),Ue+=Ce*(g[ot]-g[ve]),Ue+=Ce*(g[it]-g[ve]),Ue+=Ce*(g[rt]-g[ve]),Ke-=D*.1*f[ve],Ue-=D*.1*g[ve],b[ve]=y[ve]*we+Ke*Xe,S[ve]=_[ve]*we+Ue*Xe,w[ve]=f[ve]+b[ve]*Xe,v[ve]=g[ve]+S[ve]*Xe,w[ve]=Math.max(-.5,Math.min(.5,w[ve])),v[ve]=Math.max(-.5,Math.min(.5,v[ve]))}y.set(b),_.set(S),f.set(w),g.set(v)}for(let le=0;le<Pn;le++)for(let we=0;we<Pn;we++){let Ce=le*Pn+we,ke=Ce*2;C[ke]=f[Ce],C[ke+1]=g[Ce]}E.needsUpdate=!0,R=T.x,c=T.y}),r(()=>{E.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 Ht(Bn(h,o.sample(h),o,t.edges.uniform.value))}}});var Wl,rH=z(()=>{"use strict";Dt();zn();pr();ut();Wl={name:"Marble",category:"Textures",description:"Classic marble swirl and vein texture using noise-warped sine waves",props:{colorA:{default:"#ffffff",transform:Me,description:"Base background color of the marble",ui:{type:"color",label:"Base",group:"Colors"}},colorB:{default:"#3a2d54",transform:Me,description:"Secondary marble tone",ui:{type:"color",label:"Tone",group:"Colors"}},colorC:{default:"#0f0f0f",transform:Me,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=Y.x.div(Y.y),i=n.x.mul(r),o=n.y,a=bn(t,e.speed),l=e.scale.uniform,s=e.seed.uniform,u=qn(I(i.mul(l).add(s),o.mul(l).add(a))),d=qn(I(i.mul(l).mul(2).add(s.mul(1.7)),o.mul(l).mul(2).add(a.mul(.7)))).mul(.5),h=qn(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=me(i.mul(l).mul(p(Math.PI)).add(f.mul(g))).mul(.5).add(.5),_=qn(I(o.mul(l).mul(1.5).add(s.mul(2)),i.mul(l).mul(1.2))).mul(.3).add(.5),b=Ae(p(.3),p(.6),y),S=Ae(p(.6),p(.9),y),w=Ft(Ft(e.colorA.uniform,e.colorB.uniform,b,e.colorSpace.uniform.value),e.colorC.uniform,S.mul(_),e.colorSpace.uniform.value);return N(w.rgb,w.a)}}});var jl,iH=z(()=>{"use strict";pi();Dt();Jn();ut();jl={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:Mt,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:Hn,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 N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=Y.x.div(Y.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(He(s),me(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),_=xn(0,h);return Ht(Te(r.sample(j),Bn(y,r.sample(y),r,t.edges.uniform.value),_))}}});var ql,oH=z(()=>{"use strict";Dt();ut();ql={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:Me,description:"Color of control point A",ui:{type:"color",label:"Color",group:"Point A"}},positionA:{default:{x:.2,y:.2},transform:Mt,description:"Position of control point A",ui:{type:"position",label:"Position",group:"Point A"}},colorB:{default:"#C44DFF",transform:Me,description:"Color of control point B",ui:{type:"color",label:"Color",group:"Point B"}},positionB:{default:{x:.8,y:.2},transform:Mt,description:"Position of control point B",ui:{type:"position",label:"Position",group:"Point B"}},colorC:{default:"#1ABC9C",transform:Me,description:"Color of control point C",ui:{type:"color",label:"Color",group:"Point C"}},positionC:{default:{x:.2,y:.8},transform:Mt,description:"Position of control point C",ui:{type:"position",label:"Position",group:"Point C"}},colorD:{default:"#F8BBD9",transform:Me,description:"Color of control point D",ui:{type:"color",label:"Color",group:"Point D"}},positionD:{default:{x:.8,y:.8},transform:Mt,description:"Position of control point D",ui:{type:"position",label:"Position",group:"Point D"}},colorE:{default:"#FF8C42",transform:Me,description:"Color of control point E",ui:{type:"color",label:"Color",group:"Point E"}},positionE:{default:{x:.5,y:.5},transform:Mt,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=Y.x.div(Y.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 De(()=>{let o=ge(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=An(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(Gt(f,g));o.assign(o.add(s.rgb.mul(y))),a.assign(a.add(s.a.mul(y))),l.assign(l.add(y))}return N(o.div(l),a.div(l))})()}}});function sH(t,e,n){return De(()=>{let r=j,i=Y.x.div(Y.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=Te(d,d.add(h).add(f).add(g).add(y).div(p(5)),s),w=p(1).div(Y.y),v=e.glowRadius.uniform.max(p(.001)),C=Ot(w.div(a),p(.004)),E=N(0).toVar();return Fn(S.greaterThan(v.mul(p(1.5)).add(C)),()=>{E.assign(N(0,0,0,0))}).Else(()=>{let M=An(_.mul(_).add(b.mul(b))).max(p(1e-4)),R=_.div(M),c=b.div(M),m=e.tubeThickness.uniform,x=St(S.negate().div(m.max(p(.001))),p(0),p(1)),T=Ae(C,C.negate(),S),O=Ae(m.add(C),m.sub(C),S.negate()),L=T.mul(O),F=x,U=An(F.mul(p(2).sub(F)).max(p(0))),D=p(1).sub(F),B=R.mul(D),q=c.mul(D),X=U,re=e.lightAngle.uniform.mul(p(Math.PI/180)),xe=He(re),pe=me(re),Ne=xe.mul(p(B0)),qe=pe.mul(p(B0)),Xe=p(aH),le=St(B.mul(Ne).add(q.mul(qe)).add(X.mul(Xe)),p(0),p(1)),we=B.mul(Ne.mul(p(qU))).add(q.mul(qe.mul(p(qU)))).add(X.mul(p($U*qU))),Ce=bp(p(8).sub(e.specularSize.uniform.mul(p(7)))),ke=Gt(St(we,p(0),p(1)),Ce).mul(e.specularIntensity.uniform),je=l.x.sub(p(.5)),ve=me(dr(l.y.sub(p(.5)),je).mul(p(2)).add(n.mul(e.flowSpeed.uniform))).mul(p(.5)).add(p(.5)),Ke=Te(p(1),ve,e.flowAmount.uniform),Ue=ge(e.color.uniform.x,e.color.uniform.y,e.color.uniform.z),Z=ge(e.secondaryColor.uniform.x,e.secondaryColor.uniform.y,e.secondaryColor.uniform.z),Se=e.secondaryBlend.uniform,Re=Te(Ue,Te(Z,Ue,le),Se),ze=p(.12),Je=U.mul(p(.35)),ot=Re.mul(ze.add(le.mul(p(.55))).add(Je)),it=ge(ke,ke,ke),rt=ot.add(it),st=Ae(p(.55),p(1),x).mul(e.hotCoreIntensity.uniform).mul(Ke),ee=Te(rt,Te(Ue,ge(1,1,1),p(.75)),st).mul(Te(p(1),Ke,p(.4))),Fe=e.glowIntensity.uniform,Oe=Ot(S,p(0)),k=p(12).div(v),P=$i(Oe.negate().mul(k)).mul(p(.7)),H=p(4).div(v),$=$i(Oe.negate().mul(H)).mul(p(.35)),te=P.add($).mul(Fe),Ee=Ae(p(-.003),p(.003),S),Pe=te.mul(Ee),Q=ge(e.glowColor.uniform.x,e.glowColor.uniform.y,e.glowColor.uniform.z),J=n.mul(e.flickerSpeed.uniform),be=me(J.mul(p(17.13))),et=me(J.mul(p(31.71))),Ve=me(J.mul(p(47.29))),nt=be.add(et.mul(p(.5))).add(Ve.mul(p(.3))),Et=Te(p(-2),p(.8),e.flickerAmount.uniform),Ct=Ae(Et.sub(p(.1)),Et.add(p(.1)),nt),Wt=e.intensity.uniform.mul(Ct),se=ee.mul(Wt),at=Q.mul(Pe).mul(Wt),Le=Te(at.x,se.x,L),_t=Te(at.y,se.y,L),Bt=Te(at.z,se.z,L),dt=Ot(L,St(Pe.mul(p(.6)),p(0),p(1)));E.assign(N(Le,_t,Bt,dt))}),E})()}var XU,B0,aH,$U,qU,Vbe,Xl,cH=z(()=>{"use strict";Dt();Zi();ut();XU=.7,B0=1/Math.sqrt(1+XU*XU),aH=XU*B0,$U=aH+1,qU=1/Math.sqrt(B0*B0+$U*$U);Vbe=JSON.stringify({type:"circleSDF",radius:.35}),Xl={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:Mt,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:Me,description:"Primary neon tube color",ui:{type:"color",label:"Tube Color",group:"Colors"}},secondaryColor:{default:"#ff00aa",transform:Me,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:Me,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:Vbe,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=ne(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 sH(i?ds(i,n,e):fs(t.shapeType.uniform.value||o.type||"circleSDF",o,t.shape,n),t,r)}}});var $l,lH=z(()=>{"use strict";ut();$l={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 N(0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j,o=Y.x.div(Y.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=qn(ge(d.x,d.y,p(22.3))),f=qn(ge(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=qn(ge(S.x,S.y,p(1.3))),v=b.mul(s.mul(p(.4))).add(l.add(p(33.7))),C=At(qn(ge(v.x,v.y,p(4.1)))),E=b.mul(s).add(l.add(p(71.2))),M=qn(ge(E.x,E.y,p(9.8))),R=b.mul(s.mul(p(2))).add(l.add(p(107.3))),c=qn(ge(R.x,R.y,p(15.6))),m=w.mul(p(.3)).add(C.mul(p(.3))).add(M.mul(p(.25))).add(c.mul(p(.15))),x=t.roughness.uniform,T=St(p(1).add(m.mul(x.mul(p(.4)))),p(0),p(1.5)),O=ge(_.r,_.g,_.b).mul(T);return N(O.x,O.y,O.z,_.a)}}});var Yl,uH=z(()=>{"use strict";pi();Dt();Jn();ut();Yl={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:Mt,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:Mt,description:"Shift the result in X/Y",ui:{type:"position",label:"Offset",group:"Position"}},edges:{default:"transparent",description:"How to handle edges",transform:Hn,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 N(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=He(s),f=me(s),g=He(u),y=me(u),_=aG(d.mul(.5)).mul(2),b=Ot(h.add(f.mul(a).mul(_)),p(.001)),S=a.div(b),w=l.mul(h).div(b),v=Ot(g.add(y.mul(w).mul(_)),p(.001)),C=S.mul(g).div(v),E=w.div(v),M=I(t.offset.uniform.x,t.offset.uniform.y.oneMinus()),R=I(C,E).add(i).sub(M).add(I(.5,.5));return Ht(Bn(R,r.sample(R),r,t.edges.uniform.value))}}});var Zl,dH=z(()=>{"use strict";Jn();ut();Zl={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 N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=Y.x.div(Y.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(en(j.x.mul(l)).div(l),en(j.y.mul(s)).div(s)),d=Ht(r.sample(u)),h=I(pt(j.x.mul(l)).sub(.5),pt(j.y.mul(s)).sub(.5)),f=p(.5).sub(t.gap.uniform.mul(.5)),g=t.roundness.uniform.mul(f),y=jn(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 N(d.rgb,d.a.mul(y))}}});var Kl,fH=z(()=>{"use strict";Dt();zn();pr();ut();Kl={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:Me,ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#000000",description:"Secondary color",transform:Me,ui:{type:"color",label:"Color B",group:"Colors"}},colorSpace:{default:"linear",transform:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=e.density.uniform,r=e.intensity.uniform,i=e.warp.uniform,o=bn(t,e.speed).mul(.125),a=Y.x.div(Y.y),l=ge(j.x.mul(a),j.y,p(0)).mul($i(n.sub(1))).toVar(),s=i.mul(4),u=qn(l.add(ge(o.mul(.3),o.mul(-.2),0))),d=qn(l.add(ge(5.2,1.3,o.mul(.25)))),h=l.add(ge(u,d,p(0)).mul(s)),f=qn(h.add(ge(1.7,9.2,o.mul(.15)))),g=qn(h.add(ge(8.3,2.8,o.mul(.13)))),y=St(Gt(qn(l.add(ge(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=St(y.add(_),0,1);return Ft(e.colorB.uniform,e.colorA.uniform,b,e.colorSpace.uniform.value)}}});var Jl,hH=z(()=>{"use strict";pi();Dt();Jn();ut();Jl={name:"PolarCoordinates",category:"Distortions",description:"Convert rectangular coordinates to polar space",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:Mt,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:Hn,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 N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=Y.x.div(Y.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=dr(l.y,l.x).add(mi).div(mi.mul(2)),u=jn(l),d=Te(j,I(s.mul(t.wrap.uniform),u.mul(t.radius.uniform)),t.intensity.uniform);return Ht(Bn(d,r.sample(d),r,t.edges.uniform.value))}}});var Gbe,Ql,mH=z(()=>{"use strict";Dt();zn();Zi();ut();Gbe=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,Ql={name:"Polygon",category:"Shapes",description:"Regular polygon with adjustable sides and corner rounding",props:{color:{default:"#ffffff",transform:Me,description:"Fill color of the polygon",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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:Me,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:Gbe,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:qt,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:jt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.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=He(l),u=me(l),d=o.mul(s).add(a.mul(u)),h=a.mul(s).sub(o.mul(u)),f=t.radius.uniform,g=Te(OU(d,h,f,t.sides.uniform),qE(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)),C=_.mul(.5),E=v.select(_.negate(),w.select(C.negate(),p(0))),M=v.select(p(0),w.select(C,_)),R=Ae(M.sub(y),M,g).oneMinus(),c=S.select(Ae(E.sub(y),E,g),p(0)),m=Ft(N(t.color.uniform.rgb,t.color.uniform.a),N(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),c,t.colorSpace.uniform.value);return N(m.xyz,m.w.mul(R))}}});var eu,pH=z(()=>{"use strict";ut();eu={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."),N(0);let n=p(t.intensity.uniform);return N(en(e.r.mul(n)).div(n),en(e.g.mul(n)).div(n),en(e.b.mul(n)).div(n),e.a)}}});var tu,gH=z(()=>{"use strict";Dt();Jn();Ef();ut();tu={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:mr,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:Mt,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=Ka(a,s,u,e),{computeNodes:h,outputTexture:f,blurMapWriteNode:g,computeWidth:y,computeHeight:_}=d,b=ne(0),S=ne(0),w=ne(.5),v=ne(1),C=ne(1),E=ne(s),M=ne(u),R=Cn(y),c=Cn(_);function m(F){return F.getCpuValue?.()??(typeof F.uniform.value=="number"?F.uniform.value:null)}function x(){let F=m(i.angle);F!==null&&(b.value=F);let U=i.center.uniform.value?.x??i.center.uniform.x?.value;typeof U=="number"&&(S.value=U);let D=i.center.uniform.value?.y??i.center.uniform.y?.value;typeof D=="number"&&(w.value=D);let B=m(i.falloff);B!==null&&(v.value=B),C.value=n.width/n.height}let T=i.intensity.mapComputeInfo;if(T){let{sourceTexture:F,channel:U,inputMin:D,inputMax:B,outputMin:q,outputMax:X,curve:re}=T,xe=De(()=>{let pe=Zt,Ne=pe.mod(R),qe=pe.div(R);Fn(qe.lessThan(c),()=>{let Xe=Ne.toFloat().add(p(.5)).div(p(y)),le=qe.toFloat().add(p(.5)).div(p(_)),we=b.mul(p(Math.PI/180)),Ce=I(we.cos().div(C),we.sin()),ke=I(S,p(1).sub(w)),je=I(Xe,le).sub(ke),ve=Ot(p(0),je.dot(Ce)),Ke=Ae(p(0),v,ve),Ue=Li(F,Dn(Xe.mul(E).round().toInt().clamp(Ut(0),Ut(E.sub(1))).toUint(),le.mul(M).round().toInt().clamp(Ut(0),Ut(M.sub(1))).toUint()),Ut(0)),Z;U==="alpha"?Z=Ue.a:U==="alphaInverted"?Z=Ue.a.oneMinus():U==="luminanceInverted"?Z=Vt(Ue.rgb,ge(.2126,.7152,.0722)).oneMinus():Z=Vt(Ue.rgb,ge(.2126,.7152,.0722));let Se=B.sub(D).max(p(1e-4)),Re=Te(q,X,Gt(St(Z.sub(D).div(Se),p(0),p(1)),Gt(p(2),re.negate().mul(p(2))))).mul(p(.36)),ze=Ke.mul(Re);ir(g,Dn(Ne,qe),N(ze,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:pe,height:Ne})=>{let qe=Math.round(pe*l),Xe=Math.round(Ne*l);E.value=qe,M.value=Xe,d.setInputDimensions(qe,Xe)}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>(x(),[xe,...h])}}let O=ne(18),L=De(()=>{let F=Zt,U=F.mod(R),D=F.div(R);Fn(D.lessThan(c),()=>{let B=U.toFloat().add(p(.5)).div(p(y)),q=D.toFloat().add(p(.5)).div(p(_)),X=b.mul(p(Math.PI/180)),re=I(X.cos().div(C),X.sin()),xe=I(S,p(1).sub(w)),pe=I(B,q).sub(xe),Ne=Ot(p(0),pe.dot(re)),qe=Ae(p(0),v,Ne).mul(O);ir(g,Dn(U,D),N(qe,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:F,height:U})=>{d.setInputDimensions(Math.round(F*l),Math.round(U*l))}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>{x();let F=m(i.intensity);return F!==null&&(O.value=F*.36),[L,...h]}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n,computeOutputs:r})=>{if(!e)return N(0,0,0,0);if(r?.blurredTexture){let C=r.childTexture.sample(j),E=wn(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 Ht(N(E.rgb.add(M),C.a))}let i=It(e);n(()=>{i?.renderTarget?.dispose&&i.renderTarget.dispose()});let o=Y.x.div(Y.y),a=Zr(t.angle.uniform),l=He(a),s=me(a),u=I(l.div(o),s),d=I(t.center.uniform[0],t.center.uniform[1].oneMinus()),h=j.sub(d),f=Ot(p(0),h.dot(u)),g=Ot(p(.001),t.falloff.uniform),y=Ae(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(De(()=>{let C=j,E=I(1).div(Y),M=N(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(E),x=C.add(m),T=i.sample(x).mul(c);M.assign(M.add(T))}return M})());return n(()=>{v?.renderTarget?.dispose&&v.renderTarget.dispose()}),De(()=>{let C=j,E=I(1).div(Y),M=N(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(E),x=C.add(m),T=v.sample(x).mul(c);M.assign(M.add(T))}return Ht(M)})()}}});var nu,yH=z(()=>{"use strict";Dt();zn();ut();nu={name:"RadialGradient",category:"Textures",description:"Radial gradient radiating from a center point",props:{colorA:{default:"#ff0000",transform:Me,description:"The starting color at the center of the gradient",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#0000ff",transform:Me,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:Mt,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.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=He(l),u=me(l),d=o.mul(s).add(a.mul(u)),h=o.mul(u).negate().add(a.mul(s)),f=vE(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(pt(y),y.clamp(p(0),p(1)));return Ft(t.colorA.uniform,t.colorB.uniform,_,t.colorSpace.uniform.value)}}});var ru,vH=z(()=>{"use strict";pi();Dt();Jn();ut();ru={name:"RectangularCoordinates",category:"Distortions",description:"Convert polar coordinates back to rectangular space",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:Mt,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:Hn,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 N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j.x.mul(mi.mul(2)).sub(mi),o=j.y.mul(t.scale.uniform),a=o.mul(He(i)),l=o.mul(me(i)),s=Y.x.div(Y.y),u=I(t.center.uniform.x,t.center.uniform.y.oneMinus()),d=Te(j,I(a.div(s).add(u.x),l.add(u.y)),t.intensity.uniform);return Ht(Bn(d,r.sample(d),r,t.edges.uniform.value))}}});var Hbe,Wbe,YU,jbe,iu,xH=z(()=>{"use strict";pi();Dt();Jn();Ef();ut();Hbe=30,Wbe=12,YU=[[0,0],[-.94,-.34],[.95,.31],[-.09,-.93],[.34,.94],[-.91,.41],[.88,-.46],[-.4,.71],[.51,.58],[-.49,-.59],[.4,-.68],[-.71,.05],[.07,.21]],jbe=1/YU.length,iu={name:"ReflectivePlane",category:"Stylize",description:"Reflective floor that mirrors the content above it",requiresRTT:!0,requiresChild:!0,props:{height:{default:.7,description:"Vertical position of the reflective surface",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Floor Height",group:"Plane"}},distance:{default:.5,description:"How far below the floor the reflection remains visible before fully fading to transparent.",ui:{type:["range","map"],min:.01,max:1,step:.01,label:"Reflection Distance",group:"Plane"}},falloff:{default:.5,description:"Width of the fade zone, as a fraction of reflection distance.",ui:{type:["range","map"],min:0,max:3,step:.01,label:"Reflection Falloff",group:"Plane"}},blur:{default:3,description:"Maximum blur applied to the reflection far from the surface.",ui:{type:["range","map"],min:0,max:5,step:.05,label:"Blur",group:"Surface"}},blurDistance:{default:.3,description:"How far below the surface the blur takes to ramp from sharp to maximum.",ui:{type:"range",min:.01,max:1,step:.01,label:"Blur Distance",group:"Surface"}},edges:{default:"stretch",description:"How to handle reflected samples that fall outside the source content.",transform:Hn,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:"Surface"}}},computeNode:({childNode:t,onCleanup:e,dimensions:n,renderer:r,uniforms:i,onResize:o})=>{if(!t||i.height.mapComputeInfo||i.blur.mapComputeInfo||i.blurDistance.mapComputeInfo)return null;let a=It(t);e(()=>{a?.renderTarget?.dispose&&a.renderTarget.dispose()});let l=r?.getPixelRatio?.()??1,s=Ka(a,Math.round(n.width*l),Math.round(n.height*l),e,Hbe),{computeNodes:u,outputTexture:d,blurMapWriteNode:h,computeWidth:f,computeHeight:g}=s,y=ne(.5),_=ne(1),b=ne(.5),S=Cn(f),w=Cn(g);function v(M){return M.getCpuValue?.()??(typeof M.uniform.value=="number"?M.uniform.value:null)}function C(){let M=v(i.height);M!==null&&(y.value=M);let R=v(i.blur);R!==null&&(_.value=R);let c=v(i.blurDistance);c!==null&&(b.value=Math.max(.01,c))}let E=De(()=>{let M=Zt,R=M.mod(S),c=M.div(S);Fn(c.lessThan(w),()=>{let m=c.toFloat().add(p(.5)).div(p(g)),x=y.sub(m).max(p(0)),T=Ae(p(0),b,x),O=_.mul(T).mul(p(Wbe));ir(h,Dn(R,c),N(O,p(0),p(0),p(1))).toWriteOnly()})})().compute(f*g,[256]);return o(({width:M,height:R})=>{s.setInputDimensions(Math.round(M*l),Math.round(R*l))}),{outputs:{childTexture:a,blurredTexture:d},getComputeNodes:()=>(C(),[E,...u])}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n,computeOutputs:r})=>{if(!e)return N(0,0,0,0);if(r?.blurredTexture&&r?.childTexture){let o=r.childTexture,a=wn(r.blurredTexture);return De(()=>{let l=t.height.uniform,s=j,u=s.y.sub(l).max(p(0)),d=o.sample(s),h=I(s.x,l.mul(2).sub(s.y)),f=Bn(h,a.sample(h),a,t.edges.uniform.value),g=t.distance.uniform.max(p(.001)),y=g.mul(t.falloff.uniform).max(p(1e-4)),_=g.sub(y),b=p(1).sub(Ae(_,g,u)),S=f.a.mul(b),w=f.rgb.mul(b),v=t.height.uniform.mul(p(0)).add(t.blur.uniform.mul(p(0))).add(t.blurDistance.uniform.mul(p(0))),C=S.oneMinus();return Ht(Te(d,N(w.add(d.rgb.mul(C)).add(v),S.add(d.a.mul(C))),xn(l,s.y)))})()}let i=It(e);return n(()=>{i?.renderTarget?.dispose&&i.renderTarget.dispose()}),De(()=>{let o=t.height.uniform,a=j,l=Y.x.div(Y.y),s=a.y.sub(o).max(p(0)),u=i.sample(a),d=I(a.x,o.mul(2).sub(a.y)),h=t.blurDistance.uniform.max(p(.01)),f=Ae(p(0),h,s),g=t.blur.uniform.mul(f).mul(.02),y=N(0).toVar();for(let M=0;M<YU.length;M++){let[R,c]=YU[M],m=I(p(R).mul(g).div(l),p(c).mul(g)),x=d.add(m),T=Bn(x,i.sample(x),i,t.edges.uniform.value);y.assign(y.add(T.mul(p(jbe))))}let _=t.distance.uniform.max(p(.001)),b=_.mul(t.falloff.uniform).max(p(1e-4)),S=_.sub(b),w=p(1).sub(Ae(S,_,s)),v=y.a.mul(w),C=y.rgb.mul(w),E=v.oneMinus();return Ht(Te(u,N(C.add(u.rgb.mul(E)),v.add(u.a.mul(E))),xn(o,a.y)))})()}}});var qbe,ou,bH=z(()=>{"use strict";Dt();zn();Zi();ut();qbe=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,ou={name:"Ring",category:"Shapes",description:"Annular ring (donut) with adjustable radius and band thickness",props:{color:{default:"#ffffff",transform:Me,description:"Fill color of the ring",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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:Me,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:qbe,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:qt,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:jt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=DU(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)),_=Ae(y.sub(a),y,o).oneMinus(),b=u.select(Ae(g.sub(a),g,o),p(0)),S=Ft(N(t.color.uniform.rgb,t.color.uniform.a),N(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),b,t.colorSpace.uniform.value);return N(S.xyz,S.w.mul(_))}}});var su,_H=z(()=>{"use strict";Dt();zn();pr();ut();su={name:"Ripples",category:"Textures",description:"Concentric animated ripples emanating from a point",props:{center:{default:{x:.5,y:.5},transform:Mt,description:"The center point where ripples emanate from",ui:{type:"position",label:"Center",group:"Position"}},colorA:{default:"#ffffff",transform:Me,description:"Color of the ripple waves",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#000000",transform:Me,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=Y.x.div(Y.y),h=vE(I(n.x.mul(d),n.y),I(r.x.mul(d),r.y.oneMinus())),f=bn(t,e.speed),g=me(h.mul(a).sub(f).add(u)),y=s.mul(p(2)).sub(p(1));return Ft(o,i,Ae(y.sub(l),y.add(l),g).oneMinus(),0)}}});var Xbe,au,SH=z(()=>{"use strict";Dt();zn();Zi();ut();Xbe=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,au={name:"RoundedRect",category:"Shapes",description:"Rounded rectangle with adjustable width, height, and corner rounding",props:{color:{default:"#ffffff",transform:Me,description:"Fill color of the rectangle",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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:Me,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:Xbe,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:qt,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:jt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.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=He(l),u=me(l),d=LU(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)),C=Ae(v.sub(h),v,d).oneMinus(),E=y.select(Ae(w.sub(h),w,d),p(0)),M=Ft(N(t.color.uniform.rgb,t.color.uniform.a),N(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),E,t.colorSpace.uniform.value);return N(M.xyz,M.w.mul(C))}}});var cu,wH=z(()=>{"use strict";ut();cu={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."),N(0);if(t.intensity.uniform.value===1)return e;let n=Vt(e.rgb,ge(.2126,.7152,.0722));return N(Te(ge(n,n,n),e.rgb,t.intensity.uniform),e.a)}}});var lu,MH=z(()=>{"use strict";Jn();ut();lu={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 N(0,0,0,0);if(t.sharpness.uniform.value===0)return e;let r=It(e);return n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()}),De(()=>{let i=j,o=t.sharpness.uniform,a=I(1).div(Y),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 Ht(N(St(l.rgb.mul(f).add(s.rgb.mul(g)).add(u.rgb.mul(g)).add(d.rgb.mul(g)).add(h.rgb.mul(g)),0,1),l.a))})()}}});var Ja,Bo,Ao,uu,TH=z(()=>{"use strict";pi();Dt();Jn();Fi();ki();ut();Ja=t=>{let e=Math.sin(t)*1e4;return e-Math.floor(e)},Bo=16,Ao=1024,uu={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:Hn,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=vf(new Array(Bo*2).fill(0),"float"),r=new Or(Ao,Ao);r.type=fn,r.magFilter=kn,r.minFilter=kn,r.generateMipmaps=!1;let i=Tr(r);e(()=>{r.dispose()});let o=Cn(Ao),a=p(1/Ao),l=De(()=>{let h=Zt,f=h.mod(o),g=h.div(o);Fn(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 C=0;C<Bo;C++){let E=n.element(Ut(C*2)),M=n.element(Ut(C*2+1)),R=y.sub(E),c=_.sub(M),m=R.mul(R).add(c.mul(c));Fn(m.lessThan(b),()=>{S.assign(b),v.assign(w),b.assign(m),w.assign(p(C))}).Else(()=>{Fn(m.lessThan(S),()=>{S.assign(m),v.assign(p(C))})})}ir(i,Dn(f,g),N(w,v,p(0),p(0))).toWriteOnly()})})().compute(Ao*Ao,[256]),s=t.seed.uniform.value,u=!0,d=h=>{let f=new Array(Bo*2);for(let g=0;g<Bo;g++)f[g*2]=Ja(h+g*2),f[g*2+1]=Ja(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(Bo*4),s=new Array(Bo*2).fill(0),u=vf(s,"float"),d=new Float32Array(Bo*4),h=new Array(Bo*2).fill(0),f=vf(h,"float"),g=()=>{for(let Oe=0;Oe<Bo;Oe++)s[Oe*2]=l[Oe*4],s[Oe*2+1]=l[Oe*4+1];u.array=s},y=()=>{for(let Oe=0;Oe<Bo;Oe++)h[Oe*2]=d[Oe*4],h[Oe*2+1]=d[Oe*4+1];f.array=h},_;if(o?.voronoiTexture)_=wn(o.voronoiTexture);else{let Oe=new Float32Array(Ao*Ao*4),k=new fr(Oe,Ao,Ao,nr,fn);k.magFilter=kn,k.minFilter=kn,_=wn(k);let P=()=>{for(let te=0;te<Ao;te++)for(let Ee=0;Ee<Ao;Ee++){let Pe=(Ee+.5)/Ao,Q=(te+.5)/Ao,J=1/0,be=1/0,et=0,Ve=0;for(let Et=0;Et<Bo;Et++){let Ct=Pe-l[Et*4],Wt=Q-l[Et*4+1],se=Ct*Ct+Wt*Wt;se<J?(be=J,Ve=et,J=se,et=Et):se<be&&(be=se,Ve=Et)}let nt=(te*Ao+Ee)*4;Oe[nt]=et,Oe[nt+1]=Ve}k.needsUpdate=!0},H=t.seed.uniform.value,$=te=>{for(let Ee=0;Ee<Bo;Ee++)l[Ee*4]=Ja(te+Ee*2),l[Ee*4+1]=Ja(te+Ee*2+1),l[Ee*4+2]=Ja(te+Ee*3),l[Ee*4+3]=Ja(te+Ee*3+1);g()};$(H),P(),e(()=>{let te=t.seed.uniform.value;te!==H&&(H=te,$(H),P(),d.fill(0))}),r(()=>{k.dispose()})}let b=Oe=>{for(let k=0;k<Bo;k++)l[k*4]=Ja(Oe+k*2),l[k*4+1]=Ja(Oe+k*2+1),l[k*4+2]=Ja(Oe+k*3),l[k*4+3]=Ja(Oe+k*3+1);g()},S=t.seed.uniform.value;b(S),d.fill(0),y();let w=.5,v=.5,C=Date.now();if(e(({pointer:Oe})=>{let k=Date.now(),P=Math.min((k-C)/1e3,.016);C=k;let H=i.width/i.height,$=t.seed.uniform.value;$!==S&&(S=$,b(S),d.fill(0));let te=t.intensity.uniform.value,Ee=t.radius.uniform.value,Pe=t.decay.uniform.value,Q=P>0?(Oe.x-w)/P:0,J=P>0?(Oe.y-v)/P:0,be=Math.sqrt(Q*Q+J*J),et=5+te*2;if(be>et){let Ve=et/be;Q*=Ve,J*=Ve,be=et}for(let Ve=0;Ve<Bo;Ve++){let nt=l[Ve*4],Et=l[Ve*4+1],Ct=l[Ve*4+2]-.5,Wt=l[Ve*4+3]-.5,se=H>=1?(nt-Oe.x)*H:nt-Oe.x,at=H>=1?Et-Oe.y:(Et-Oe.y)/H,Le=Math.sqrt(se*se+at*at),_t=d[Ve*4],Bt=d[Ve*4+1],dt=Math.max(.01,Pe),Kt=Math.exp(-P/dt);_t*=Kt,Bt*=Kt;let Xt=0,er=0;if(Le<Ee&&be>.01){let ri=Math.max(0,1-Le/Ee),gi=ri*ri,Wu=gi*be*te*P*.5;Xt=Q*Wu,er=J*Wu;let ju=gi*be*te*P*.1;Xt+=Ct*ju,er+=Wt*ju}let Vn=Math.min(1,1*P);d[Ve*4]=_t+Xt*Vn,d[Ve*4+1]=Bt+er*Vn,d[Ve*4+2]=0,d[Ve*4+3]=0}y(),w=Oe.x,v=Oe.y}),!n)return N(0,0,0,0);let E=It(n);r(()=>{E?.renderTarget?.dispose&&E.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(),O=j.sub(x).length(),L=I(f.element(R.mul(2)),f.element(R.mul(2).add(1))),F=L.length(),U=O.sub(T),D=t.crackWidth.uniform.mul(.005),B=p(1).sub(Ae(p(0),D,U)),q=Ae(p(0),p(.01),F),X=B.mul(q),re=j.sub(m).normalize(),xe=I(re.y.negate(),re.x),pe=j.sub(L),Ne=xe.mul(t.refractionStrength.uniform).mul(.01),qe=t.chromaticSplit.uniform.mul(.005),Xe=Ne.add(xe.mul(qe)),le=Ne,we=Ne.sub(xe.mul(qe)),Ce=pe.add(Xe.mul(X)),ke=pe.add(le.mul(X)),je=pe.add(we.mul(X)),ve=Bn(Ce,E.sample(Ce),E,t.edges.uniform.value),Ke=Bn(ke,E.sample(ke),E,t.edges.uniform.value),Ue=Bn(je,E.sample(je),E,t.edges.uniform.value),Z=N(ve.r,Ke.g,Ue.b,Ke.a),Se=Bn(pe,E.sample(pe),E,t.edges.uniform.value),Re=Se.rgb.mul(p(1).sub(X)).add(Z.rgb.mul(X)),ze=L.length(),Je=L.x.div(ze.add(.001)),ot=L.y.div(ze.add(.001)),it=I(.3,.6).normalize(),rt=Je.mul(it.x).add(ot.mul(it.y)),st=p(1).add(rt.mul(t.shardLighting.uniform)),ee=Ae(p(0),p(.02),ze),Fe=p(1).add(st.sub(1).mul(ee));return Ht(N(Re.mul(Fe),Se.a))}}});var du,EH=z(()=>{"use strict";Dt();zn();pr();ut();du={name:"SimplexNoise",category:"Textures",description:"Organic noise with animated movement",props:{colorA:{default:"#ffffff",description:"First color",transform:Me,ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#000000",description:"Second color",transform:Me,ui:{type:"color",label:"Color B",group:"Colors"}},colorSpace:{default:"linear",transform:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,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=Y.x.div(Y.y),i=I(n.x.mul(r),n.y),o=bn(t,e.speed),a=i.mul($i(e.scale.uniform)).add(e.seed.uniform),l=qn(ge(a.x,a.y,o.mul(.5))),s=e.contrast.uniform.add(1),u=St(l.mul(s).add(e.balance.uniform).mul(.5).add(.5),0,1);return Ft(e.colorB.uniform,e.colorA.uniform,u,e.colorSpace.uniform.value)}}});var fu,CH=z(()=>{"use strict";Dt();pr();ut();fu={name:"SineWave",category:"Textures",description:"Animated wave with thickness and softness",props:{color:{default:"#ffffff",transform:Me,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:mr,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:Mt,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=Y.x.div(Y.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=Zr(e.angle.uniform),s=He(l),u=me(l),d=a.x.mul(s).sub(a.y.mul(u)),h=a.x.mul(u).add(a.y.mul(s)),f=bn(t,e.speed),g=me(d.mul(e.frequency.uniform).mul(mi.mul(2)).add(f)).mul(e.amplitude.uniform),y=At(h.sub(g)),_=e.thickness.uniform.mul(.5),b=e.softness.uniform.mul(.5),S=Ae(_.sub(b),_.add(b),y).oneMinus();return N(e.color.uniform.rgb,e.color.uniform.a.mul(S))}}});var RH,$be,Ybe,AH,PH,hu,IH=z(()=>{"use strict";Dt();zn();Fi();ki();ut();RH=256,$be=56,Ybe=20,AH=.8,PH=.2,hu={name:"Smoke",category:"Interactive",description:"Realistic fluid smoke simulation with vorticity dynamics",usesPointer:!0,props:{colorA:{default:"#fc83f9",transform:Me,description:"Color of fresh smoke",ui:{type:"color",label:"Start Color",group:"Colors"}},colorB:{default:"#c21c79",transform:Me,description:"Color smoke transitions to as it ages",ui:{type:"color",label:"End Color",group:"Colors"}},emitFrom:{default:{x:.5,y:1},transform:Mt,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},computeNode:({uniforms:t,onCleanup:e,renderer:n})=>{let r=RH,i=Cn(r),o=Ut(r),a=Ut(r-1),l=r*r,s=(Z,Se,Re,ze)=>Z.add(Ut(Re)).clamp(Ut(0),a).mul(o).add(Se.add(Ut(ze)).clamp(Ut(0),a)),u=Rr(l,"vec4"),d=Rr(l,"vec4"),h=Rr(l,"vec4"),f=Rr(l,"vec4"),g=Rr(l,"vec4"),y=new Or(r,r);y.type=fn;let _=Tr(y);e(()=>{y.dispose()});let b=ne(.016),S=ne(128),w=ne(256),v=ne(0),C=ne(-50),E=ne(1),M=ne(0),R=ne(.5),c=ne(15),m=ne(.7),x=ne(1),T=ne(30),O=ne(.5),L=ne(128),F=ne(128),U=ne(0),D=ne(0),B=ne(0),q=ne(900),X=ne(1),re=De(()=>{let Z=Zt,Se=Z.mod(i),Re=Z.div(i),ze=Se.toFloat().add(p(.5)),Je=Re.toFloat().add(p(.5)),ot=ze.sub(S),it=Je.sub(w),rt=ot.mul(ot).add(it.mul(it)),st=c.mul(c).max(p(1)),ee=rt.negate().div(st).exp(),Fe=h.element(Z),Oe=Fe.x,k=m.mul(ee).mul(b).mul(p(8)),P=Oe.add(k).min(p(1)),H=k.div(P.max(p(.001)));h.element(Z).assign(N(P,Fe.y.mul(p(1).sub(H.min(p(1)))),p(0),p(0)));let $=u.element(Z),te=ot.mul(E).add(it.mul(M)).div(c.max(p(1))),Ee=v.mul(v).add(C.mul(C)).max(p(1)),Pe=v.add(E.mul(te).mul(R).mul(Ee.sqrt())),Q=C.add(M.mul(te).mul(R).mul(Ee.sqrt())),J=ee.mul(b).mul(p(3)).min(p(1)),be=O.mul(Oe).mul(b).mul(p(r*.08)),et=ze.sub(L),Ve=Je.sub(F),nt=et.mul(et).add(Ve.mul(Ve)).negate().div(q.max(p(1))).exp().mul(B);u.element(Z).assign(N(Te($.x,Pe,J).add(U.mul(nt)),Te($.y,Q,J).add(be).add(D.mul(nt)),$.z,p(0)))})().compute(l,[256]),xe=De(()=>{let Z=Zt,Se=Z.mod(i).toInt(),Re=Z.div(i).toInt(),ze=u.element(s(Re,Se,0,-1)),Je=u.element(s(Re,Se,0,1)),ot=u.element(s(Re,Se,-1,0)),it=u.element(s(Re,Se,1,0)),rt=Je.y.sub(ze.y).sub(it.x.sub(ot.x)).mul(p(.5)),st=u.element(Z);u.element(Z).assign(N(st.x,st.y,rt,p(0)))})().compute(l,[256]),pe=De(()=>{let Z=Zt,Se=Z.mod(i).toInt(),Re=Z.div(i).toInt(),ze=u.element(s(Re,Se,0,-1)).z.abs(),Je=u.element(s(Re,Se,0,1)).z.abs(),ot=u.element(s(Re,Se,-1,0)).z.abs(),it=u.element(s(Re,Se,1,0)).z.abs(),rt=u.element(Z).z,st=Je.sub(ze).mul(p(.5)),ee=it.sub(ot).mul(p(.5)),Fe=st.mul(st).add(ee.mul(ee)).sqrt().max(p(1e-5)),Oe=ee.div(Fe).mul(rt).mul(T).mul(b),k=st.div(Fe).negate().mul(rt).mul(T).mul(b),P=u.element(Z);u.element(Z).assign(N(P.x.add(Oe),P.y.add(k),P.z,p(0)))})().compute(l,[256]),Ne=De(()=>{let Z=Zt,Se=Z.mod(i).toInt(),Re=Z.div(i).toInt(),ze=Se.toFloat(),Je=Re.toFloat(),ot=u.element(Z),it=u.element(s(Re,Se,0,-1)).x,rt=u.element(s(Re,Se,0,1)).x,st=u.element(s(Re,Se,-1,0)).y,ee=u.element(s(Re,Se,1,0)).y,Fe=ze.lessThan(p(.5)).select(ot.x.negate(),it),Oe=ze.greaterThan(p(r-1.5)).select(ot.x.negate(),rt),k=Je.lessThan(p(.5)).select(ot.y.negate(),st),P=Je.greaterThan(p(r-1.5)).select(ot.y.negate(),ee),H=Oe.sub(Fe).add(P.sub(k)).mul(p(.5)),$=g.element(Z).x.mul(p(AH));g.element(Z).assign(N($,H,p(0),p(0)))})().compute(l,[256]),qe=De(()=>{let Z=Zt,Se=Z.mod(i).toInt(),Re=Z.div(i).toInt(),ze=g.element(s(Re,Se,0,-1)).x,Je=g.element(s(Re,Se,0,1)).x,ot=g.element(s(Re,Se,-1,0)).x,it=g.element(s(Re,Se,1,0)).x,rt=g.element(Z).y;g.element(Z).assign(N(ze.add(Je).add(ot).add(it).sub(rt).mul(p(.25)),rt,p(0),p(0)))})().compute(l,[256]),Xe=De(()=>{let Z=Zt,Se=Z.mod(i).toInt(),Re=Z.div(i).toInt(),ze=g.element(s(Re,Se,0,-1)).x,Je=g.element(s(Re,Se,0,1)).x,ot=g.element(s(Re,Se,-1,0)).x,it=g.element(s(Re,Se,1,0)).x,rt=u.element(Z);u.element(Z).assign(N(rt.x.sub(Je.sub(ze).mul(p(.5))),rt.y.sub(it.sub(ot).mul(p(.5))),rt.z,p(0)))})().compute(l,[256]),le=De(()=>{let Z=Zt,Se=Z.mod(i),Re=Z.div(i),ze=u.element(Z),Je=Se.toFloat().sub(ze.x.mul(b)).clamp(p(0),p(r-1)),ot=Re.toFloat().sub(ze.y.mul(b)).clamp(p(0),p(r-1)),it=en(Je).clamp(p(0),p(r-2)),rt=en(ot).clamp(p(0),p(r-2)),st=Je.sub(it),ee=ot.sub(rt),Fe=it.toInt(),Oe=rt.toInt(),k=u.element(Oe.mul(o).add(Fe)),P=u.element(Oe.mul(o).add(Fe.add(Ut(1)))),H=u.element(Oe.add(Ut(1)).mul(o).add(Fe)),$=u.element(Oe.add(Ut(1)).mul(o).add(Fe.add(Ut(1)))),te=p(1).add(p(PH).mul(b));d.element(Z).assign(N(Te(Te(k.x,P.x,st),Te(H.x,$.x,st),ee).div(te),Te(Te(k.y,P.y,st),Te(H.y,$.y,st),ee).div(te),p(0),p(0)))})().compute(l,[256]),we=De(()=>{let Z=d.element(Zt);u.element(Zt).assign(N(Z.x,Z.y,p(0),p(0)))})().compute(l,[256]),Ce=De(()=>{let Z=Zt,Se=Z.mod(i),Re=Z.div(i),ze=u.element(Z),Je=Se.toFloat().sub(ze.x.mul(b)).clamp(p(0),p(r-1)),ot=Re.toFloat().sub(ze.y.mul(b)).clamp(p(0),p(r-1)),it=en(Je).clamp(p(0),p(r-2)),rt=en(ot).clamp(p(0),p(r-2)),st=Je.sub(it),ee=ot.sub(rt),Fe=it.toInt(),Oe=rt.toInt(),k=h.element(Oe.mul(o).add(Fe)),P=h.element(Oe.mul(o).add(Fe.add(Ut(1)))),H=h.element(Oe.add(Ut(1)).mul(o).add(Fe)),$=h.element(Oe.add(Ut(1)).mul(o).add(Fe.add(Ut(1)))),te=Te(Te(k.x,P.x,st),Te(H.x,$.x,st),ee),Ee=Te(Te(k.y,P.y,st),Te(H.y,$.y,st),ee),Pe=p(1).add(x.mul(b));f.element(Z).assign(N(te.div(Pe).max(p(0)),Ee.add(b.mul(p(.4)).mul(X)).min(p(1)),p(0),p(0)))})().compute(l,[256]),ke=De(()=>{let Z=f.element(Zt);h.element(Zt).assign(N(Z.x,Z.y,p(0),p(0)))})().compute(l,[256]),je=De(()=>{let Z=Zt,Se=Z.mod(i),Re=Z.div(i),ze=h.element(Z);ir(_,Dn(Se,Re),N(ze.x,ze.y,p(0),p(0))).toWriteOnly()})().compute(l,[256]),ve=Date.now(),Ke=.5,Ue=.5;return{outputs:{smokeTexture:y},getComputeNodes:Z=>{let Se=Date.now(),Re=Math.min((Se-ve)/1e3,.033);if(ve=Se,Re<.001)return null;let ze=(Q,J)=>{let be=t[Q];if(!be)return J;if(typeof be.getCpuValue=="function"){let Ve=be.getCpuValue();return typeof Ve=="number"?Ve:J}let et=be.uniform?.value;return typeof et=="number"?et:J},Je=ze("speed",3),ot=ze("direction",0)*Math.PI/180,it=Math.min(89*Math.PI/180,ze("spread",45)*Math.PI/360),rt=t.emitFrom.uniform.value,st=typeof rt=="object"?rt.x??.5:.5,ee=typeof rt=="object"?rt.y??0:0;b.value=Re,S.value=st*r,w.value=(1-ee)*r;let Fe=Je*r*.15;v.value=Math.sin(ot)*Fe,C.value=-Math.cos(ot)*Fe,E.value=Math.cos(ot),M.value=Math.sin(ot),R.value=Math.tan(it),c.value=ze("emitRadius",.06)*r,m.value=ze("intensity",.7),x.value=ze("dissipation",1),T.value=ze("detail",30),O.value=ze("gravity",.5),X.value=ze("colorDecay",1);let Oe=ze("mouseInfluence",.5),k=ze("mouseRadius",.12),P=Z?.pointer?.x??Ke,H=Z?.pointer?.y??Ue,$=P-Ke,te=H-Ue;Ke=P,Ue=H;let Ee=Math.sqrt($*$+te*te),Pe=k*r;q.value=Pe*Pe,Ee>5e-4&&Oe>0?(L.value=P*r,F.value=H*r,U.value=$*r*15*Oe,D.value=te*r*15*Oe,B.value=1):B.value=0,n.compute(re),n.compute(xe),n.compute(pe),n.compute(Ne);for(let Q=0;Q<Ybe;Q++)n.compute(qe);return n.compute(Xe),n.compute(le),n.compute(we),n.compute(Ce),n.compute(ke),[je]}}},fragmentNode:({uniforms:t,onBeforeRender:e,onCleanup:n,computeOutputs:r})=>{let i;if(r?.smokeTexture)i=wn(r.smokeTexture);else{let s=$be,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),C=new Float32Array(u),E=new Float32Array(u*4),M=new fr(E,s,s,nr,fn);M.magFilter=sn,M.minFilter=sn,M.needsUpdate=!0,i=wn(M);let R=(L,F)=>{let U=t[L];if(!U)return F;if(typeof U.getCpuValue=="function"){let B=U.getCpuValue();return typeof B=="number"?B:F}let D=U.uniform?.value;return typeof D=="number"?D:F},c=Date.now(),m=.5,x=.5,T=(L,F,U)=>{let D=Math.max(0,Math.min(s-1,F)),B=Math.max(0,Math.min(s-1,U)),q=Math.max(0,Math.min(s-2,Math.floor(D))),X=Math.max(0,Math.min(s-2,Math.floor(B))),re=D-q,xe=B-X,pe=X*s+q;return(1-re)*(1-xe)*L[pe]+re*(1-xe)*L[pe+1]+(1-re)*xe*L[pe+s]+re*xe*L[pe+s+1]},O=(L,F,U,D)=>Math.max(0,Math.min(s-1,L+U))*s+Math.max(0,Math.min(s-1,F+D));e(({pointer:L})=>{let F=Date.now(),U=Math.min((F-c)/1e3,.033);if(c=F,U<.001)return;let D=R("speed",3),B=t.direction.uniform.value*Math.PI/180,q=Math.min(89*Math.PI/180,t.spread.uniform.value*Math.PI/360),X=t.emitFrom.uniform.value,re=(typeof X=="object"?X.x??.5:.5)*s,xe=(1-(typeof X=="object"?X.y??0:0))*s,pe=D*s*.15,Ne=Math.sin(B)*pe,qe=-Math.cos(B)*pe,Xe=Math.cos(B),le=Math.sin(B),we=Math.tan(q),Ce=t.emitRadius.uniform.value*s,ke=t.intensity.uniform.value,je=R("detail",30),ve=R("gravity",.5),Ke=R("colorDecay",1),Ue=R("dissipation",.2),Z=t.mouseInfluence.uniform.value,Se=t.mouseRadius.uniform.value*s,Re=L?.x??m,ze=L?.y??x,Je=Re-m,ot=ze-x;m=Re,x=ze;let it=Math.sqrt(Je*Je+ot*ot)>5e-4&&Z>0,rt=it?Je*s*15*Z:0,st=it?ot*s*15*Z:0,ee=Re*s,Fe=ze*s;for(let P=0;P<s;P++)for(let H=0;H<s;H++){let $=P*s+H,te=H+.5-re,Ee=P+.5-xe,Pe=Math.exp(-(te*te+Ee*Ee)/Math.max(1,Ce*Ce)),Q=y[$],J=ke*Pe*U*8,be=Math.min(1,Q+J);_[$]*=1-Math.min(1,J/Math.max(.001,be)),y[$]=be;let et=(te*Xe+Ee*le)/Math.max(1,Ce),Ve=Math.sqrt(Ne*Ne+qe*qe),nt=Ne+Xe*et*we*Ve,Et=qe+le*et*we*Ve,Ct=Math.min(1,Pe*U*3),Wt=H+.5-ee,se=P+.5-Fe,at=it?Math.exp(-(Wt*Wt+se*se)/Math.max(1,Se*Se)):0;d[$]=d[$]*(1-Ct)+nt*Ct+rt*at,h[$]=h[$]*(1-Ct)+Et*Ct+ve*Q*U*s*.08+st*at}if(je>0){for(let P=0;P<s;P++)for(let H=0;H<s;H++)C[P*s+H]=.5*(h[O(P,H,0,1)]-h[O(P,H,0,-1)]-(d[O(P,H,1,0)]-d[O(P,H,-1,0)]));for(let P=0;P<s;P++)for(let H=0;H<s;H++){let $=P*s+H,te=.5*(Math.abs(C[O(P,H,0,1)])-Math.abs(C[O(P,H,0,-1)])),Ee=.5*(Math.abs(C[O(P,H,1,0)])-Math.abs(C[O(P,H,-1,0)])),Pe=Math.max(1e-5,Math.sqrt(te*te+Ee*Ee));d[$]+=Ee/Pe*C[$]*je*U,h[$]+=-(te/Pe)*C[$]*je*U}}for(let P=0;P<s;P++)for(let H=0;H<s;H++){let $=P*s+H,te=H===0?-d[$]:d[O(P,H,0,-1)],Ee=H===s-1?-d[$]:d[O(P,H,0,1)],Pe=P===0?-h[$]:h[O(P,H,-1,0)],Q=P===s-1?-h[$]:h[O(P,H,1,0)];v[$]=.5*(Ee-te+Q-Pe),w[$]*=AH}for(let P=0;P<6;P++)for(let H=0;H<s;H++)for(let $=0;$<s;$++){let te=H*s+$;w[te]=.25*(w[O(H,$,0,-1)]+w[O(H,$,0,1)]+w[O(H,$,-1,0)]+w[O(H,$,1,0)]-v[te])}for(let P=0;P<s;P++)for(let H=0;H<s;H++){let $=P*s+H;d[$]-=.5*(w[O(P,H,0,1)]-w[O(P,H,0,-1)]),h[$]-=.5*(w[O(P,H,1,0)]-w[O(P,H,-1,0)])}let Oe=1+PH*U;for(let P=0;P<s;P++)for(let H=0;H<s;H++){let $=P*s+H;f[$]=T(d,H-d[$]*U,P-h[$]*U)/Oe,g[$]=T(h,H-d[$]*U,P-h[$]*U)/Oe}d.set(f),h.set(g);let k=1+Ue*U;for(let P=0;P<s;P++)for(let H=0;H<s;H++){let $=P*s+H,te=H-d[$]*U,Ee=P-h[$]*U;b[$]=Math.max(0,T(y,te,Ee)/k),S[$]=Math.min(1,T(_,te,Ee)+U*.4*Ke)}y.set(b),_.set(S);for(let P=0;P<u;P++)E[P*4]=y[P],E[P*4+1]=_[P];M.needsUpdate=!0}),n(()=>{M.dispose()})}let o,a;if(r?.smokeTexture){let s=p(1/RH),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=Ft(t.colorA.uniform,t.colorB.uniform,a,t.colorSpace.uniform.value);return N(l.x,l.y,l.z,l.w.mul(o))}}});var Zbe,ZU,OH,Kbe,Jbe,Qbe,mu,UH=z(()=>{"use strict";Dt();zn();Zi();Fi();ki();ut();Zbe=JSON.stringify({type:"circleSDF",radius:.35}),ZU=256,OH=56,Kbe=20,Jbe=.8,Qbe=.2,mu={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:Me,description:"Color of fresh smoke",ui:{type:"color",label:"Start Color",group:"Colors"}},colorB:{default:"#04a0d6",transform:Me,description:"Color smoke transitions to as it ages",ui:{type:"color",label:"End Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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:Mt,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}},shape:{default:Zbe,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=ZU,o=Cn(i),a=Ut(i),l=Ut(i-1),s=i*i,u=(Fe,Oe,k,P)=>Fe.add(Ut(k)).clamp(Ut(0),l).mul(a).add(Oe.add(Ut(P)).clamp(Ut(0),l)),d=t.shapeSdfUrl.uniform.value,h=(()=>{let Fe=t.shape.uniform.value;try{return JSON.parse(Fe)}catch{return{type:"circleSDF",radius:.35}}})(),f;d?f=ds(d,n,e):f=fs(t.shapeType.uniform.value||h.type||"circleSDF",h,t.shape,n);let g=Rr(s,"vec4"),y=Rr(s,"vec4"),_=Rr(s,"vec4"),b=Rr(s,"vec4"),S=Rr(s,"vec4"),w=Rr(s,"vec4"),v=new Or(i,i);v.type=fn;let C=Tr(v);e(()=>{v.dispose()});let E=ne(.016),M=ne(.5),R=ne(.5),c=ne(0),m=ne(-50),x=ne(1),T=ne(0),O=ne(.5),L=ne(10),F=ne(.8),U=ne(.5),D=ne(30),B=ne(.5),q=ne(1),X=ne(.5),re=ne(.5),xe=ne(1),pe=ne(1),Ne=ne(128),qe=ne(128),Xe=ne(0),le=ne(0),we=ne(0),Ce=ne(900),ke=De(()=>{let Fe=Zt,Oe=Fe.mod(o),k=Fe.div(o),P=Oe.toFloat().add(p(.5)).div(p(i)),H=k.toFloat().add(p(.5)).div(p(i)),$=I(P.sub(X).mul(pe).div(xe).add(p(.5)),H.sub(re).div(xe).add(p(.5))),te=f($).x,Ee=te.lessThan(p(0)).select(p(1),p(0));w.element(Fe).assign(N(Ee,te,p(0),p(0)))})().compute(s,[256]),je=De(()=>{let Fe=Zt,Oe=Fe.mod(o),k=Fe.div(o),P=w.element(Fe).x,H=Oe.toFloat().add(p(.5)),$=k.toFloat().add(p(.5)),te=H.sub(M),Ee=$.sub(R),Pe=te.mul(te).add(Ee.mul(Ee)),Q=L.mul(L).max(p(1)),J=Pe.negate().div(Q).exp().mul(P),be=_.element(Fe),et=be.x,Ve=F.mul(J).mul(E).mul(p(8)),nt=et.add(Ve).min(p(1)),Et=Ve.div(nt.max(p(.001)));_.element(Fe).assign(N(nt,be.y.mul(p(1).sub(Et.min(p(1)))),p(0),p(0)));let Ct=g.element(Fe),Wt=te.mul(x).add(Ee.mul(T)).div(L.max(p(1))),se=c.mul(c).add(m.mul(m)).max(p(1)),at=c.add(x.mul(Wt).mul(O).mul(se.sqrt())),Le=m.add(T.mul(Wt).mul(O).mul(se.sqrt())),_t=J.mul(E).mul(p(3)).min(p(1)),Bt=B.mul(et).mul(E).mul(p(i*.08)).mul(P),dt=H.sub(Ne),Kt=$.sub(qe),Xt=dt.mul(dt).add(Kt.mul(Kt)).negate().div(Ce.max(p(1))).exp().mul(we).mul(P);g.element(Fe).assign(N(Te(Ct.x,at,_t).add(Xe.mul(Xt)),Te(Ct.y,Le,_t).add(Bt).add(le.mul(Xt)),Ct.z,p(0)))})().compute(s,[256]),ve=De(()=>{let Fe=Zt,Oe=Fe.mod(o).toInt(),k=Fe.div(o).toInt(),P=g.element(u(k,Oe,0,-1)),H=g.element(u(k,Oe,0,1)),$=g.element(u(k,Oe,-1,0)),te=g.element(u(k,Oe,1,0)),Ee=H.y.sub(P.y).sub(te.x.sub($.x)).mul(p(.5)),Pe=g.element(Fe);g.element(Fe).assign(N(Pe.x,Pe.y,Ee,p(0)))})().compute(s,[256]),Ke=De(()=>{let Fe=Zt,Oe=Fe.mod(o).toInt(),k=Fe.div(o).toInt(),P=g.element(u(k,Oe,0,-1)).z.abs(),H=g.element(u(k,Oe,0,1)).z.abs(),$=g.element(u(k,Oe,-1,0)).z.abs(),te=g.element(u(k,Oe,1,0)).z.abs(),Ee=g.element(Fe).z,Pe=H.sub(P).mul(p(.5)),Q=te.sub($).mul(p(.5)),J=Pe.mul(Pe).add(Q.mul(Q)).sqrt().max(p(1e-5)),be=g.element(Fe);g.element(Fe).assign(N(be.x.add(Q.div(J).mul(Ee).mul(D).mul(E)),be.y.add(Pe.div(J).negate().mul(Ee).mul(D).mul(E)),be.z,p(0)))})().compute(s,[256]),Ue=De(()=>{let Fe=Zt,Oe=Fe.mod(o).toInt(),k=Fe.div(o).toInt(),P=Oe.toFloat(),H=k.toFloat(),$=w.element(Fe).x,te=g.element(Fe),Ee=P.lessThan(p(.5)).or(w.element(u(k,Oe,0,-1)).x.lessThan(p(.5))),Pe=P.greaterThan(p(i-1.5)).or(w.element(u(k,Oe,0,1)).x.lessThan(p(.5))),Q=H.lessThan(p(.5)).or(w.element(u(k,Oe,-1,0)).x.lessThan(p(.5))),J=H.greaterThan(p(i-1.5)).or(w.element(u(k,Oe,1,0)).x.lessThan(p(.5))),be=Ee.select(te.x.negate(),g.element(u(k,Oe,0,-1)).x),et=Pe.select(te.x.negate(),g.element(u(k,Oe,0,1)).x),Ve=Q.select(te.y.negate(),g.element(u(k,Oe,-1,0)).y),nt=J.select(te.y.negate(),g.element(u(k,Oe,1,0)).y),Et=et.sub(be).add(nt.sub(Ve)).mul(p(.5)).mul($),Ct=S.element(Fe).x.mul(p(Jbe)).mul($);S.element(Fe).assign(N(Ct,Et,p(0),p(0)))})().compute(s,[256]),Z=De(()=>{let Fe=Zt,Oe=Fe.mod(o).toInt(),k=Fe.div(o).toInt(),P=S.element(u(k,Oe,0,-1)).x,H=S.element(u(k,Oe,0,1)).x,$=S.element(u(k,Oe,-1,0)).x,te=S.element(u(k,Oe,1,0)).x,Ee=S.element(Fe).y;S.element(Fe).assign(N(P.add(H).add($).add(te).sub(Ee).mul(p(.25)),Ee,p(0),p(0)))})().compute(s,[256]),Se=De(()=>{let Fe=Zt,Oe=Fe.mod(o).toInt(),k=Fe.div(o).toInt(),P=S.element(u(k,Oe,0,-1)).x,H=S.element(u(k,Oe,0,1)).x,$=S.element(u(k,Oe,-1,0)).x,te=S.element(u(k,Oe,1,0)).x,Ee=g.element(Fe);g.element(Fe).assign(N(Ee.x.sub(H.sub(P).mul(p(.5))),Ee.y.sub(te.sub($).mul(p(.5))),Ee.z,p(0)))})().compute(s,[256]),Re=De(()=>{let Fe=Zt,Oe=Fe.mod(o),k=Fe.div(o),P=g.element(Fe),H=Oe.toFloat().sub(P.x.mul(E)).clamp(p(0),p(i-1)),$=k.toFloat().sub(P.y.mul(E)).clamp(p(0),p(i-1)),te=en(H).clamp(p(0),p(i-2)),Ee=en($).clamp(p(0),p(i-2)),Pe=H.sub(te),Q=$.sub(Ee),J=te.toInt(),be=Ee.toInt(),et=g.element(be.mul(a).add(J)),Ve=g.element(be.mul(a).add(J.add(Ut(1)))),nt=g.element(be.add(Ut(1)).mul(a).add(J)),Et=g.element(be.add(Ut(1)).mul(a).add(J.add(Ut(1)))),Ct=p(1).add(p(Qbe).mul(E)),Wt=w.element(Fe).x;y.element(Fe).assign(N(Te(Te(et.x,Ve.x,Pe),Te(nt.x,Et.x,Pe),Q).div(Ct).mul(Wt),Te(Te(et.y,Ve.y,Pe),Te(nt.y,Et.y,Pe),Q).div(Ct).mul(Wt),p(0),p(0)))})().compute(s,[256]),ze=De(()=>{let Fe=y.element(Zt);g.element(Zt).assign(N(Fe.x,Fe.y,p(0),p(0)))})().compute(s,[256]),Je=De(()=>{let Fe=Zt,Oe=Fe.mod(o),k=Fe.div(o),P=g.element(Fe),H=Oe.toFloat().sub(P.x.mul(E)).clamp(p(0),p(i-1)),$=k.toFloat().sub(P.y.mul(E)).clamp(p(0),p(i-1)),te=en(H).clamp(p(0),p(i-2)),Ee=en($).clamp(p(0),p(i-2)),Pe=H.sub(te),Q=$.sub(Ee),J=te.toInt(),be=Ee.toInt(),et=_.element(be.mul(a).add(J)),Ve=_.element(be.mul(a).add(J.add(Ut(1)))),nt=_.element(be.add(Ut(1)).mul(a).add(J)),Et=_.element(be.add(Ut(1)).mul(a).add(J.add(Ut(1)))),Ct=Te(Te(et.x,Ve.x,Pe),Te(nt.x,Et.x,Pe),Q),Wt=Te(Te(et.y,Ve.y,Pe),Te(nt.y,Et.y,Pe),Q),se=p(1).add(U.mul(E)),at=w.element(Fe).x;b.element(Fe).assign(N(Ct.div(se).max(p(0)).mul(at),Wt.add(E.mul(p(.4)).mul(q)).min(p(1)),p(0),p(0)))})().compute(s,[256]),ot=De(()=>{let Fe=b.element(Zt);_.element(Zt).assign(N(Fe.x,Fe.y,p(0),p(0)))})().compute(s,[256]),it=De(()=>{let Fe=Zt,Oe=Fe.mod(o),k=Fe.div(o),P=_.element(Fe);ir(C,Dn(Oe,k),N(P.x,P.y,p(0),p(0))).toWriteOnly()})().compute(s,[256]),rt=Date.now(),st=.5,ee=.5;return{outputs:{smokeTexture:v},getComputeNodes:Fe=>{let Oe=Date.now(),k=Math.min((Oe-rt)/1e3,.033);if(rt=Oe,k<.001)return null;let P=(dt,Kt)=>{let Xt=t[dt];if(!Xt)return Kt;if(typeof Xt.getCpuValue=="function"){let Vn=Xt.getCpuValue();return typeof Vn=="number"?Vn:Kt}let er=Xt.uniform?.value;return typeof er=="number"?er:Kt},H=P("speed",2),$=P("direction",0)*Math.PI/180,te=Math.min(89*Math.PI/180,P("spread",60)*Math.PI/360),Ee=t.center.uniform.value,Pe=typeof Ee=="object"?Ee.x??.5:.5,Q=typeof Ee=="object"?Ee.y??.5:.5,J=typeof window<"u"&&r?.domElement?r.domElement.width/Math.max(1,r.domElement.height):1;E.value=k,X.value=Pe,re.value=1-Q,xe.value=P("scale",1),pe.value=J;let be=t.emitFrom?.uniform?.value,et=typeof be=="object"?be.x??.5:.5,Ve=typeof be=="object"?be.y??.5:.5;M.value=et*i,R.value=(1-Ve)*i;let nt=H*i*.15;c.value=Math.sin($)*nt,m.value=-Math.cos($)*nt,x.value=Math.cos($),T.value=Math.sin($),O.value=Math.tan(te),L.value=P("emitRadius",.03)*i,F.value=P("intensity",.8),U.value=P("dissipation",.5),D.value=P("detail",30),B.value=P("gravity",.5),q.value=P("colorDecay",1);let Et=P("mouseInfluence",.5),Ct=P("mouseRadius",.12),Wt=Fe?.pointer?.x??st,se=Fe?.pointer?.y??ee,at=Wt-st,Le=se-ee;st=Wt,ee=se;let _t=Math.sqrt(at*at+Le*Le),Bt=Ct*i;Ce.value=Bt*Bt,_t>5e-4&&Et>0?(Ne.value=Wt*i,qe.value=se*i,Xe.value=at*i*15*Et,le.value=Le*i*15*Et,we.value=1):we.value=0,r.compute(ke),r.compute(je),r.compute(ve),r.compute(Ke),r.compute(Ue);for(let dt=0;dt<Kbe;dt++)r.compute(Z);return r.compute(Se),r.compute(Re),r.compute(ze),r.compute(Je),r.compute(ot),[it]}}},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=ds(i,e,n):a=fs(t.shapeType.uniform.value||o.type||"circleSDF",o,t.shape,e);let l,s=r?.smokeTexture?ZU:OH;if(r?.smokeTexture)l=wn(r.smokeTexture);else{let w=OH,v=w*w,C=new Float32Array(v*4),E=new fr(C,w,w,nr,fn);E.magFilter=sn,E.minFilter=sn,E.needsUpdate=!0,l=wn(E);let M=(c,m)=>{let x=t[c];if(!x)return m;if(typeof x.getCpuValue=="function"){let O=x.getCpuValue();return typeof O=="number"?O: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),O=t.emitFrom?.uniform?.value,L=(typeof O=="object"?O.x??.5:.5)*w,F=(1-(typeof O=="object"?O.y??.5:.5))*w,U=M("emitRadius",.03)*w;for(let D=0;D<w;D++)for(let B=0;B<w;B++){let q=D*w+B,X=B+.5-L,re=D+.5-F,xe=Math.exp(-(X*X+re*re)/Math.max(1,U*U));C[q*4]=Math.max(0,(C[q*4]+x*xe*m*8)/(1+T*m)),C[q*4+1]=Math.min(1,C[q*4+1]+m*.4*M("colorDecay",1))}E.needsUpdate=!0}),n(()=>{E.dispose()})}let u=j,d=Y.x.div(Y.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/ZU),v=l.sample(j),C=l.sample(j.add(I(w,p(0)))),E=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(C.x.mul(p(.125))).add(E.x.mul(p(.125))).add(M.x.mul(p(.125))).add(R.x.mul(p(.125))),b=v.y.mul(p(.5)).add(C.y.mul(p(.125))).add(E.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=Ft(t.colorA.uniform,t.colorB.uniform,b,t.colorSpace.uniform.value);return N(S.x,S.y,S.z,S.w.mul(_).mul(y))}}});var pu,NH=z(()=>{"use strict";ut();pu={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."),N(0);let n=t.threshold.uniform,r=t.strength.uniform,i=Vt(e.rgb,ge(.299,.587,.114)),o=ge(1).sub(e.rgb),a=i.greaterThan(n).select(o,e.rgb);return N(Te(e.rgb,a,r),e.a)}}});var gu,DH=z(()=>{"use strict";Dt();gu={name:"SolidColor",category:"Textures",description:"Fill the canvas with a single solid color",props:{color:{default:"#5b18ca",transform:Me,description:"The solid color to display",ui:{type:"color",label:"Color",group:"Colors"}}},fragmentNode:({uniforms:t})=>t.color.uniform}});var yu,FH=z(()=>{"use strict";Dt();Jn();ut();yu={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:Mt,description:"The center point of the sphere",ui:{type:"position",label:"Center",group:"Position"}},lightPosition:{default:{x:.3,y:.3},transform:Mt,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:Me,description:"Color of the specular highlight",ui:{type:"color",label:"Light Color",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j,o=Y.x.div(Y.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(Ae(p(.98),p(1),u)),h=An(Ot(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)),_=Ht(r.sample(y)),b=I(t.lightPosition.uniform.x,t.lightPosition.uniform.y.oneMinus()),S=t.lightIntensity.uniform,w=t.lightSoftness.uniform,v=ge(t.lightColor.uniform.x,t.lightColor.uniform.y,t.lightColor.uniform.z),C=Fo(ge(s.x,s.y,h)),E=ge(0,0,1),M=p(1).add(p(4).mul(p(1).sub(w))),R=Gt(p(1).sub(Ot(Vt(C,E),p(0))),M),c=I(b.x.sub(p(.5)).mul(2),b.y.sub(p(.5)).mul(2)),m=Fo(I(C.x,C.y).add(I(1e-4,1e-4))),x=Fo(c.add(I(1e-4,1e-4))),T=Gt(Ot(p(0),Vt(m,x)),p(2)),O=R.mul(T).mul(S).mul(p(2));return N(_.x.add(v.x.mul(O)),_.y.add(v.y.mul(O)),_.z.add(v.z.mul(O)),_.w.mul(d))}}});var vu,LH=z(()=>{"use strict";Dt();zn();pr();ut();vu={name:"Spiral",category:"Textures",description:"Rotating spiral pattern with animated movement",props:{colorA:{default:"#000000",transform:Me,description:"Background color",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#ffffff",transform:Me,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:Mt,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=Y.x.div(Y.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=bn(t,e.speed),s=jn(a),u=s,d=dr(a.y,a.x).sub(l),h=p(6.283185307),f=d.div(h),g=u.mul(e.scale.uniform).add(f),y=At(pt(g).sub(.5)).mul(2),_=St(e.strokeWidth.uniform,e.strokeFalloff.uniform.mul(.005),1),b=St(e.strokeFalloff.uniform,0,1).mul(s).oneMinus(),S=_.mul(b),w=ti(g),v=Te(p(4).sub(Ae(.05,.4,e.strokeWidth.uniform.mul(2)).mul(Ae(.05,.4,e.strokeWidth.uniform.oneMinus().mul(2))).mul(3)).mul(w),ti(y),St(w,0,1)),C=Ae(S.sub(v).sub(e.softness.uniform),S.add(v).add(e.softness.uniform),y),E=Ft(e.colorA.uniform,e.colorB.uniform,C,e.colorSpace.uniform.value);return N(E.rgb,E.a)}}});var e_e,xu,kH=z(()=>{"use strict";Dt();zn();Zi();ut();e_e=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,xu={name:"Star",category:"Shapes",description:"Classic star polygon with straight sides and sharp pointed tips",props:{color:{default:"#ffffff",transform:Me,description:"Fill color of the star",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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:Me,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:e_e,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:qt,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:jt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.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=He(l),u=me(l),d=NU(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)),C=Ae(v.sub(h),v,d).oneMinus(),E=y.select(Ae(w.sub(h),w,d),p(0)),M=Ft(N(t.color.uniform.rgb,t.color.uniform.a),N(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),E,t.colorSpace.uniform.value);return N(M.xyz,M.w.mul(C))}}});var bu,BH=z(()=>{"use strict";Dt();pr();ut();bu={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:Me,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:Mt,description:"Starting point of the waves",ui:{type:"position",label:"Start",group:"Position"}},end:{default:{x:1,y:.5},transform:Mt,description:"Ending point of the waves",ui:{type:"position",label:"End",group:"Position"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=bn(t,e.speed),i=De(([o])=>He(o).add(He(o.mul(1.2).add(1.6))).add(He(o.mul(1.4).add(1.5))).div(3));return De(([o])=>{let a=Y.x.div(Y.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(Ae(p(0),p(.1),_).mul(Ae(p(.9),p(1),_).oneMinus()),p(1)),C=e.pinEdges.uniform.select(He(_.mul(6.28)).mul(.5).add(.5).oneMinus(),p(1)),E=He(_.mul(6.28)).mul(.5).add(.5).oneMinus(),M=N(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),O=p(.5),L=p(1.33),F=r.mul(L),U=x.add(S.mul(O)),D=i(U.add(F)).mul(.5).add(.5),B=Te(p(.01),e.lineWidth.uniform,D.mul(C)).mul(.5),q=p(.6),X=p(2),re=i(U.add(F.mul(T.add(1)))).mul(Te(q,X,C)).mul(e.amplitude.uniform),xe=i(S.mul(e.frequency.uniform).add(r)).mul(C).mul(e.amplitude.uniform).add(re),pe=At(w.sub(xe)),Ne=p(.01),qe=Ae(B.sub(Ne),B.add(Ne),pe).oneMinus(),Xe=N(e.waveColor.uniform.r,e.waveColor.uniform.g,e.waveColor.uniform.b,qe).mul(D);M.assign(Ot(M,m.select(Xe,N(0,0,0,0))))}return M.mul(N(1,1,1,E.mul(v)))})(n)}}});var _u,zH=z(()=>{"use strict";pi();Dt();Jn();ut();_u={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:Mt,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:Hn,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 N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=Y.x.div(Y.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(He(s),me(s)),d=l.dot(u),h=u.mul(d),f=l.sub(h),g=t.falloff.uniform,y=Te(p(.001),p(75),g),_=St(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),C=a.add(v),E=I(C.x.div(i),C.y);return Ht(Bn(E,r.sample(E),r,t.edges.uniform.value))}}});var Su,VH=z(()=>{"use strict";Dt();zn();pr();ut();Su={name:"Stripes",category:"Textures",description:"Alternating colored stripes with animation",props:{colorA:{default:"#000000",transform:Me,description:"First stripe color",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#ffffff",transform:Me,description:"Second stripe color",ui:{type:"color",label:"Color B",group:"Colors"}},angle:{default:45,transform:mr,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:qt,compileTime:!0,description:"Color space for interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=Y.x.div(Y.y),i=I(n.x.mul(r),n.y),o=e.angle.uniform.mul(.0174533),a=He(o),l=me(o),s=i.x.mul(a).add(i.y.mul(l)),u=bn(t,e.speed),d=s.mul(e.density.uniform).add(u).add(e.offset.uniform),h=pt(d),f=ti(d),g=e.balance.uniform,y=e.softness.uniform,_=Ae(g.sub(y).sub(f),g.add(y).add(f),h),b=Ft(e.colorA.uniform,e.colorB.uniform,_,e.colorSpace.uniform.value);return N(b.rgb,b.a)}}});var wu,GH=z(()=>{"use strict";Dt();pr();ut();wu={name:"StudioBackground",category:"Textures",description:"Multi-light studio background with ambient motion.",props:{color:{default:"#d8dbec",transform:Me,description:"Base studio surface color",ui:{type:"color",label:"Surface Color",group:"Colors"}},keyColor:{default:"#d5e4ea",transform:Me,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:Me,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:Me,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:Mt,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=Y.x.div(Y.y),v=bn(t,e.ambientSpeed),C=Te(p(5),p(.8),e.keySoftness.uniform.mul(.01)),E=Te(p(5),p(.8),e.fillSoftness.uniform.mul(.01)),M=Te(p(5),p(.8),e.backSoftness.uniform.mul(.01)),R=m=>pt(me(m.mul(12.9898)).mul(43758.5453)),c=Array.from({length:4},(m,x)=>{let T=S.add(p(x*73.1)),O=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:O.mul(O)}});return De(()=>{let m=j,x=Te(p(.015),p(.15),y),T=Ae(f.sub(x),f.add(x),m.y),O=p(1).sub(T),L=St(m.y.div(f),0,1),F=L.mul(L),U=St(m.y.sub(f).div(p(1).sub(f)),0,1),D=m.x.sub(h).mul(w),B=Te(p(.05),p(.45),F),q=p(1).sub(L).mul(1.2),X=q.mul(q),re=f.add(p(1).sub(f).mul(.3)),xe=m.y.sub(re).mul(4),pe=xe.mul(xe),Ne=Te(Te(p(.2),p(.4),L),Te(p(.38),p(.18),U),T).mul(r),qe=m.y.sub(f).div(x.add(.001)),Xe=$i(qe.mul(qe).mul(-.5)).mul(y).mul(r).mul(.1),le=Ne.add(Xe),we=ge(le,le,le).toVar(),Ce=p(1).sub(g).mul(1.4).add(.3),ke=g.mul(1.4).add(.3),je=(te,Ee)=>{let Pe=Te(te,h,F),Q=m.x.sub(Pe).mul(w).div(B),J=$i(Q.mul(Q).add(X).mul(-1).mul(Ee)).mul(O).mul(Ce),be=Te(h,te,p(.25)),et=m.x.sub(be).mul(w).mul(1.4),Ve=$i(et.mul(et).add(pe).mul(-1).mul(Ee.mul(1.5))).mul(T).mul(ke);return J.add(Ve)},ve=je(h,C).mul(o);we.assign(we.add(i.rgb.mul(ve)));let Ke=je(h.sub(s),E).mul(l),Ue=je(h.add(s),E).mul(l);we.assign(we.add(a.rgb.mul(Ke.add(Ue))));let Z=Te(p(1),f,p(.15)),Se=D.mul(.5),Re=m.y.sub(Z).mul(4),ze=$i(Se.mul(Se).add(Re.mul(Re)).mul(-1).mul(M)).mul(T),Je=D.mul(.6),ot=f.sub(m.y).mul(3),it=$i(Je.mul(Je).add(ot.mul(ot)).mul(-1).mul(M.mul(.8))).mul(O).mul(F),rt=ze.add(it).mul(d);we.assign(we.add(u.rgb.mul(rt)));let st=D.mul(.7),ee=m.y.sub(f).add(.02).mul(10),Fe=$i(st.mul(st).add(ee.mul(ee)).mul(-2.5)).mul(o.mul(.12)).mul(O);we.assign(we.add(ge(Fe,Fe,Fe)));let Oe=b.mul(.25);for(let te=0;te<4;te++){let Ee=c[te],Pe=h.add(me(v.mul(Ee.freqX).add(Ee.phaseX)).mul(Ee.radiusX)),Q=f.sub(.2).add(He(v.mul(Ee.freqY).add(Ee.phaseY)).mul(Ee.radiusY)),J=m.x.sub(Pe).mul(w),be=m.y.sub(Q),et=$i(J.mul(J).add(be.mul(be)).div(Ee.sizeSq).mul(-.5)).mul(Oe);we.assign(we.add(ge(et,et,et)))}let k=m.x.sub(.5).mul(w),P=m.y.sub(.5),H=k.mul(k).add(P.mul(P)),$=St(p(1).sub(H.mul(_)),0,1);return we.assign(St(we,0,3)),N(n.rgb.mul(we).mul($).clamp(0,1),p(1))})()}}});var Mu,HH=z(()=>{"use strict";Dt();pr();ut();Mu={name:"SunBurst",category:"Textures",description:"Radial sunburst rays emanating from a center point",props:{color:{default:"#ffdd88",transform:Me,description:"Ray color",ui:{type:"color",label:"Color",group:"Colors"}},background:{default:"#000000",transform:Me,description:"Background color",ui:{type:"color",label:"Background",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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=Y.x.div(Y.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=An(a.mul(a).add(l.mul(l))),u=dr(l,a),d=bn(t,e.speed),h=e.rayCount.uniform,f=Gt(me(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(Ae(_,g,s)),S=f.mul(b),w=e.color.uniform,v=e.background.uniform;return N(Te(v.rgb,w.rgb,S),Te(v.a,w.a,S))}}});var Tu,WH=z(()=>{"use strict";Dt();zn();pr();ut();Tu={name:"Swirl",category:"Textures",description:"Flowing swirl pattern with multi-layered noise",props:{colorA:{default:"#1275d8",description:"Primary gradient color",transform:Me,ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#e19136",description:"Secondary gradient color",transform:Me,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=bn(t,e.speed),r=e.detail.uniform,i=e.colorSpace.uniform.value;return De(()=>{let o=r,a=I(j.x.add(me(j.y.mul(o.mul(1.7)).add(n.mul(.8))).mul(.12).add(He(j.x.mul(o.mul(.9)).sub(n.mul(.5))).mul(.05))),j.y.add(He(j.x.mul(o.mul(1.3)).sub(n.mul(.6))).mul(.12).add(me(j.y.mul(o.mul(1.1)).add(n.mul(.7))).mul(.05)))).toVar(),l=me(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(He(a.y.mul(s.mul(2.7)).sub(n.mul(.45))).mul(.07).add(me(a.x.mul(s.mul(1.9)).add(n.mul(.6))).mul(.04))),a.y.add(me(a.x.mul(s.mul(2.3)).add(n.mul(.65))).mul(.07).add(He(a.y.mul(s.mul(1.6)).sub(n.mul(.4))).mul(.04)))).toVar(),d=He(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(me(u.y.mul(h.mul(1.8)).add(n.mul(.85))).mul(.04).add(He(u.x.mul(h.mul(1.3)).sub(n.mul(.55))).mul(.025)).add(me(u.x.add(u.y).mul(h.mul(.7)).add(n.mul(.9))).mul(.02))),u.y.add(He(u.x.mul(h.mul(1.6)).sub(n.mul(.75))).mul(.04).add(me(u.y.mul(h.mul(1.1)).add(n.mul(.5))).mul(.025)).add(He(u.x.add(u.y).mul(h.mul(.8)).sub(n.mul(.95))).mul(.02)))).toVar(),g=me(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)).toVar(),_=e.blend.uniform.sub(50).mul(.006),b=Ae(.3,.7,y.mul(.5).add(.5).add(_)),S=Ft(e.colorA.uniform,e.colorB.uniform,b,i),w=me(n.mul(2.5).add(y.mul(8))).mul(.015).add(1),v=S.mul(w);return N(v.rgb,v.a)})()}}});function jH(t,e){let n=e.uniforms,r=ne(0),i=ne(0),o=()=>{let s=n.lightAngle.uniform.value*Math.PI/180;r.value=Math.cos(s),i.value=Math.sin(s)};o(),e.onBeforeRender(o);let a=bn(e,n.speed),l=n.mode.uniform.value;return De(()=>{let s=j,u=Y.x.div(Y.y),d=n.edgeSoftness.uniform.mul(p(.5)).max(p(.001)),h=I(n.center.uniform.x,n.center.uniform.y.oneMinus()),f=n.scale.uniform,g=I(s.x.sub(h.x).mul(u).div(f).add(p(.5)),s.y.sub(h.y).div(f).add(p(.5))),y=t(g).r,_=y.div(f),b=p(.01),S=t(g.add(I(b,p(0)))).r.sub(y).div(b),w=t(g.add(I(p(0),b))).r.sub(y).div(b),v=An(S.mul(S).add(w.mul(w))).max(p(1e-4)),C=S.div(v),E=w.div(v),M=St(_.negate().div(d).mul(p(32)),p(0),p(1)),R=n.rimWidth.uniform.mul(p(.1)).max(p(.001)),c=St(_.negate().div(R),p(0),p(1)),m=p(1).sub(c).mul(p(1).sub(c)).mul(M),x=C.mul(r).add(E.mul(i)),T=E.mul(r).sub(C.mul(i)),O=a.mul(p(ZE)),L=x.mul(He(O)).add(T.mul(me(O))),F=n.hueShift.uniform.add(n.dispersion.uniform.mul(L)).add(n.thickness.uniform.mul(c).mul(p(2))),U;if(l==="custom"){let D=pt(F).mul(p(3)),B=pt(D),q=en(D),X=n.colorSpace.uniform.value,re=Ft(n.colorA.uniform,n.colorB.uniform,B,X),xe=Ft(n.colorB.uniform,n.colorC.uniform,B,X),pe=Ft(n.colorC.uniform,n.colorA.uniform,B,X);pe=Te(pe,xe,xn(q,p(1.5))),pe=Te(pe,re,xn(q,p(.5))),U=pe.rgb}else U=ge(He(F.add(p(0)).mul(p(ZE))),He(F.add(p(.3333)).mul(p(ZE))),He(F.add(p(.6667)).mul(p(ZE)))).mul(p(.5)).add(p(.5));return N(Te(ge(1),U,n.saturation.uniform).mul(m).mul(n.intensity.uniform),St(m,p(0),p(1)))})()}var ZE,t_e,Eu,qH=z(()=>{"use strict";Dt();zn();pr();Zi();ut();ZE=Math.PI*2;t_e=JSON.stringify({type:"circleSDF",radius:.35}),Eu={name:"ThinFilm",category:"Shape Effects",description:"Iridescent thin-film edge",props:{center:{default:{x:.5,y:.5},transform:Mt,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","map"],min:.1,max:3,step:.05,label:"Scale",group:"Position"}},intensity:{default:1,description:"Rim brightness \u2014 values above 1 push the edge past white for HDR bloom",ui:{type:["range","map"],min:0,max:4,step:.05,label:"Intensity",group:"Film"}},rimWidth:{default:1,description:"How far inward from the edge the iridescence reaches",ui:{type:["range","map"],min:0,max:3,step:.01,label:"Rim Width",group:"Film"}},edgeSoftness:{default:.3,description:"Softness of the shape boundary",ui:{type:["range","map"],min:0,max:1,step:.05,label:"Edge Softness",group:"Film"}},thickness:{default:.5,description:"Film thickness \u2014 higher values pack more spectral bands across the rim",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Thickness",group:"Film"}},dispersion:{default:.5,description:"How strongly colour separates around the perimeter (warm vs cool sides)",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Dispersion",group:"Film"}},saturation:{default:1,description:"Spectral saturation \u2014 0 = white rim, 1 = full iridescence",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Saturation",group:"Film"}},hueShift:{default:0,description:"Rotate the spectrum to reposition the colours",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Hue Shift",group:"Film"}},lightAngle:{default:300,description:"Light angle in degrees \u2014 sets which side of the rim runs warm vs cool",ui:{type:"range",min:0,max:360,step:1,label:"Light Angle",group:"Film"}},mode:{default:"rainbow",compileTime:!0,description:"Rainbow uses the full iridescent spectrum; Custom cycles through your three chosen colours",ui:{type:"select",options:[{label:"Rainbow",value:"rainbow"},{label:"Custom",value:"custom"}],label:"Mode",group:"Colors"}},colorA:{default:"#2b6fff",transform:Me,description:"First colour in the rim cycle",ui:{type:"color",label:"Color 1",group:"Colors",condition:{mode:"custom"}}},colorB:{default:"#ffffff",transform:Me,description:"Second colour in the rim cycle",ui:{type:"color",label:"Color 2",group:"Colors",condition:{mode:"custom"}}},colorC:{default:"#ff7a21",transform:Me,description:"Third colour in the rim cycle",ui:{type:"color",label:"Color 3",group:"Colors",condition:{mode:"custom"}}},colorSpace:{default:"oklch",transform:qt,compileTime:!0,description:"Colour space used to blend between custom colours",ui:{type:"select",options:jt,label:"Color Space",group:"Colors",condition:{mode:"custom"}}},speed:{default:.1,description:"Speed at which the colours rotate around the rim (0 = static)",ui:{type:"range",min:-1,max:1,step:.01,label:"Speed",group:"Animation"}},shape:{default:t_e,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:t=>{let{uniforms:e,onCleanup:n,onBeforeRender:r}=t,i=e.shapeSdfUrl.uniform.value,o=(()=>{let a=e.shape.uniform.value;if(typeof a=="object"&&a!==null)return a;try{return JSON.parse(a)}catch{return{type:"circleSDF",radius:.35}}})();return jH(i?ds(i,r,n):fs(e.shapeType.uniform.value||o.type||"circleSDF",o,e.shape,r),t)}}});var Cu,XH=z(()=>{"use strict";Dt();Jn();Ef();ut();Cu={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:mr,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:Mt,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=Ka(a,s,u,e,14),{computeNodes:h,outputTexture:f,blurMapWriteNode:g,computeWidth:y,computeHeight:_}=d,b=ne(0),S=ne(.5),w=ne(.5),v=ne(.15),C=ne(.3),E=ne(1),M=ne(s),R=ne(u),c=Cn(y),m=Cn(_);function x(U){return U.getCpuValue?.()??(typeof U.uniform.value=="number"?U.uniform.value:null)}function T(){let U=x(i.angle);U!==null&&(b.value=U);let D=i.center.uniform.value?.x??i.center.uniform.x?.value;typeof D=="number"&&(S.value=D);let B=i.center.uniform.value?.y??i.center.uniform.y?.value;typeof B=="number"&&(w.value=B);let q=x(i.width);q!==null&&(v.value=q*.5);let X=x(i.falloff);X!==null&&(C.value=X),E.value=n.width/n.height}let O=i.intensity.mapComputeInfo;if(O){let{sourceTexture:U,channel:D,inputMin:B,inputMax:q,outputMin:X,outputMax:re,curve:xe}=O,pe=De(()=>{let Ne=Zt,qe=Ne.mod(c),Xe=Ne.div(c);Fn(Xe.lessThan(m),()=>{let le=qe.toFloat().add(p(.5)).div(p(y)),we=Xe.toFloat().add(p(.5)).div(p(_)),Ce=b.mul(p(Math.PI/180)),ke=I(Ce.sin().negate(),Ce.cos()),je=I(S,p(1).sub(w)),ve=I(le,we).sub(je),Ke=At(Vt(I(ve.x.mul(E),ve.y),ke)),Ue=Ae(v,v.add(C),Ke),Z=Li(U,Dn(le.mul(M).round().toInt().clamp(Ut(0),Ut(M.sub(1))).toUint(),we.mul(R).round().toInt().clamp(Ut(0),Ut(R.sub(1))).toUint()),Ut(0)),Se;D==="alpha"?Se=Z.a:D==="alphaInverted"?Se=Z.a.oneMinus():D==="luminanceInverted"?Se=Vt(Z.rgb,ge(.2126,.7152,.0722)).oneMinus():Se=Vt(Z.rgb,ge(.2126,.7152,.0722));let Re=q.sub(B).max(p(1e-4)),ze=Te(X,re,Gt(St(Se.sub(B).div(Re),p(0),p(1)),Gt(p(2),xe.negate().mul(p(2))))).mul(p(.36)),Je=Ue.mul(ze);ir(g,Dn(qe,Xe),N(Je,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:Ne,height:qe})=>{let Xe=Math.round(Ne*l),le=Math.round(qe*l);M.value=Xe,R.value=le,d.setInputDimensions(Xe,le)}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>(T(),[pe,...h])}}let L=ne(18),F=De(()=>{let U=Zt,D=U.mod(c),B=U.div(c);Fn(B.lessThan(m),()=>{let q=D.toFloat().add(p(.5)).div(p(y)),X=B.toFloat().add(p(.5)).div(p(_)),re=b.mul(p(Math.PI/180)),xe=I(re.sin().negate(),re.cos()),pe=I(S,p(1).sub(w)),Ne=I(q,X).sub(pe),qe=At(Vt(I(Ne.x.mul(E),Ne.y),xe)),Xe=Ae(v,v.add(C),qe).mul(L);ir(g,Dn(D,B),N(Xe,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:U,height:D})=>{let B=Math.round(U*l),q=Math.round(D*l);M.value=B,R.value=q,d.setInputDimensions(B,q)}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>{T();let U=x(i.intensity);return U!==null&&(L.value=U*.36),[F,...h]}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n,computeOutputs:r})=>{if(!e)return N(0,0,0,0);if(r?.blurredTexture){let C=r.childTexture.sample(j),E=wn(r.blurredTexture).sample(j),M=Y.x.div(Y.y),R=Zr(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=At(Vt(I(x.x.mul(M),x.y),c)),O=t.width.uniform.mul(.5),L=Ae(O,O.add(t.falloff.uniform),T),F=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))),U=Te(C,E,L);return Ht(N(U.rgb.add(F),U.a))}let i=It(e);n(()=>{i?.renderTarget?.dispose&&i.renderTarget.dispose()});let o=Y.x.div(Y.y),a=Zr(t.angle.uniform),l=He(a),s=I(me(a).negate(),l),u=I(t.center.uniform[0],t.center.uniform[1].oneMinus()),d=j.sub(u),h=At(Vt(I(d.x.mul(o),d.y),s)),f=t.width.uniform.mul(.5),g=t.falloff.uniform,y=Ae(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(De(()=>{let C=j,E=I(1).div(Y),M=N(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(E),x=C.add(m),T=i.sample(x).mul(c);M.assign(M.add(T))}return M})());return n(()=>{v?.renderTarget?.dispose&&v.renderTarget.dispose()}),De(()=>{let C=j,E=I(1).div(Y),M=N(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(E),T=C.add(x),O=v.sample(T).mul(m);M.assign(M.add(O))}let R=M;return Ht(Te(i.sample(C),R,y))})()}}});var Ru,$H=z(()=>{"use strict";Dt();ut();Ru={name:"Tint",category:"Adjustments",description:"Apply a color tint to the image",requiresChild:!0,props:{color:{default:"#ff8800",transform:Me,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."),N(0);let n=t.color.uniform,r=t.amount.uniform,i=ge(e.r,e.g,e.b),o=Te(i,n.rgb,r),a=t.preserveLuminosity.uniform.value===1,l;if(a){let s=ge(.299,.587,.114),u=Vt(i,s),d=Vt(o,s);l=o.mul(u.div(Ot(d,1e-4)))}else l=o;return N(l,e.a)}}});var n_e,Au,YH=z(()=>{"use strict";Dt();zn();Zi();ut();n_e=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:Me,description:"Fill color of the trapezoid",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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:Me,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:n_e,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:qt,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:jt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.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=He(l),u=me(l),d=VU(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)),C=Ae(v.sub(h),v,d).oneMinus(),E=y.select(Ae(w.sub(h),w,d),p(0)),M=Ft(N(t.color.uniform.rgb,t.color.uniform.a),N(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),E,t.colorSpace.uniform.value);return N(M.xyz,M.w.mul(C))}}});var Pu,ZH=z(()=>{"use strict";Dt();zn();ut();Pu={name:"Tritone",category:"Adjustments",description:"Map colors to three tones: shadows, midtones, highlights",requiresChild:!0,props:{colorA:{default:"#ce1bea",transform:Me,description:"First color (used for shadows/darkest areas)",ui:{type:"color",label:"Color A (Shadows)",group:"Colors"}},colorB:{default:"#2fff00",transform:Me,description:"Second color (used for midtones)",ui:{type:"color",label:"Color B (Midtones)",group:"Colors"}},colorC:{default:"#ffff00",transform:Me,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return N(0,0,0,0);let n=Vt(ge(e.r,e.g,e.b),ge(.299,.587,.114)),r=Ae(t.blendMid.uniform.sub(.25),t.blendMid.uniform,n),i=t.colorSpace.uniform.value,o=Ft(t.colorA.uniform,t.colorB.uniform,r,i),a=Ae(t.blendMid.uniform,t.blendMid.uniform.add(.25),n);return N(Ft(o,Ft(t.colorB.uniform,t.colorC.uniform,a,i),Ae(t.blendMid.uniform.sub(.1),t.blendMid.uniform.add(.1),n),i).rgb,e.a)}}});var r_e,Iu,KH=z(()=>{"use strict";Dt();zn();ut();r_e=De(([t])=>pt(me(Vt(t,I(127.1,311.7))).mul(p(43758.5453)))),Iu={name:"Truchet",category:"Textures",description:"Quarter-circle arc tiles that connect to form organic, maze-like flowing curves",props:{colorA:{default:"#000000",transform:Me,description:"Background color between the arcs",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#ffffff",transform:Me,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.y),r=I(e.x.mul(n),e.y).mul(t.cells.uniform),i=en(r),o=pt(r),a=r_e(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=Tn(At(jn(o.sub(I(l,s))).sub(p(.5))),At(jn(o.sub(I(u,d))).sub(p(.5)))),f=t.thickness.uniform.mul(p(.005)),g=ti(r.x).mul(p(.5)),y=Ae(f.add(g),f,h).mul(xn(p(1e-4),f));return Ft(t.colorA.uniform,t.colorB.uniform,y,t.colorSpace.uniform.value)}}});var Ou,JH=z(()=>{"use strict";pi();Dt();Jn();ut();Ou={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:Mt,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:Hn,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."),N(0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j,o=Y.x.div(Y.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(jn(s)),d=He(u),h=me(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 Ht(Bn(y,r.sample(y),r,t.edges.uniform.value))}}});var i_e,Uu,QH=z(()=>{"use strict";Dt();zn();Zi();ut();i_e=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,Uu={name:"Vesica",category:"Shapes",description:"Vesica piscis (lens shape) formed by the intersection of two overlapping circles",props:{color:{default:"#ffffff",transform:Me,description:"Fill color of the vesica",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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:Me,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:i_e,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:qt,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:jt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.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=He(l),u=me(l),d=BU(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)),C=Ae(v.sub(h),v,d).oneMinus(),E=y.select(Ae(w.sub(h),w,d),p(0)),M=Ft(N(t.color.uniform.rgb,t.color.uniform.a),N(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),E,t.colorSpace.uniform.value);return N(M.xyz,M.w.mul(C))}}});var KU,o_e,Nu,eW=z(()=>{"use strict";Jn();ut();KU=6,o_e=487,Nu={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 N(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=Wa.mul(l),u=pe=>pt(me(Vt(pe,I(12.9898,78.233))).mul(43758.5453)),d=pe=>{let Ne=en(pe),qe=pt(pe),Xe=qe.mul(qe).mul(qe.mul(-2).add(3)),le=u(Ne),we=u(Ne.add(I(1,0))),Ce=u(Ne.add(I(0,1))),ke=u(Ne.add(I(1,1)));return Te(Te(le,we,Xe.x),Te(Ce,ke,Xe.x),Xe.y)},h=Ae(p(.45),p(.8),d(I(s.mul(.4),p(0)))),f=en(j.y.mul(o_e)),g=pe=>pt(me(f.mul(12.9898).add(s.add(pe).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),C=Ae(p(.92),p(.99),me(j.y.mul(8).sub(s.mul(3.77)))),E=Ae(p(.3),p(1),d(I(j.y.mul(4.77),s))),M=C.mul(E).mul(i).mul(-.018),R=Ae(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),O=I(j.x.add(T).add(b),j.y.add(x)),L=I(j.x.add(T).add(_),j.y.add(x)),F=r.sample(O),U=F.rgb.dot(ge(.299,.587,.114)),D=a.mul(.0075),B=p(0),q=p(0);for(let pe=0;pe<KU;pe++){let Ne=p(-pe).mul(D),qe=r.sample(I(L.x.add(Ne),L.y)),Xe=qe.rgb.dot(ge(.596,-.274,-.322)),le=qe.rgb.dot(ge(.211,-.523,.312)),we=pe/(KU-1)*(2/KU);B=B.add(Xe.mul(we)),q=q.add(le.mul(we))}let X=ge(U,B,q),re=ge(X.x.add(X.y.mul(.956)).add(X.z.mul(.621)),X.x.sub(X.y.mul(.272)).sub(X.z.mul(.647)),X.x.sub(X.y.mul(1.106)).add(X.z.mul(1.703))),xe=p(1).add(He(wr(s,6.2831853).mul(2).add(j.y.mul(.5))).mul(.015).mul(i));return Ht(N(St(re.mul(xe),ge(0),ge(1)),F.a))}}});var Du,tW=z(()=>{"use strict";ut();Du={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."),N(0);let n=e.rgb,r=t.intensity.uniform,i=_n(n.r,_n(n.g,n.b)).div(3),o=Ot(n.r,Ot(n.g,n.b)),a=o.sub(i).mul(r).mul(-3);return N(Te(n,ge(o,o,o),a),e.a)}}});function Rf(){return JU===null&&(JU=typeof navigator<"u"&&/Firefox/.test(navigator.userAgent)),JU}var JU,QU=z(()=>{"use strict";JU=null});var Fu,nW=z(()=>{"use strict";QU();Fi();ut();Fu={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=ne(1),u=ne(640),d=ne(480),h=null,f=null,g;if(Rf())h=document.createElement("canvas"),h.width=640,h.height=480,f=h.getContext("2d"),g=new Fs(h);else{let c=document.createElement("video");c.playsInline=!0,c.muted=!0,g=new hc(c)}g.colorSpace=gr;let y=wn(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((O,L)=>{m.onloadedmetadata=()=>{O()},m.onerror=()=>{L(new Error("Failed to load video"))},setTimeout(()=>{L(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(O){console.warn("[VideoTexture] Autoplay failed (browser policy):",O)}g.dispose(),Rf()?(h.width=x,h.height=T,g=new Fs(h)):g=new hc(m),g.colorSpace=gr,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),Rf()&&!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=Y.x.div(Y.y),w=t.objectFit.uniform.value,v;switch(w){case 1:{let c=Tn(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=Tn(Tn(S.div(s),p(1)),Tn(Y.x.div(u),Y.y.div(d)));v=I(s.div(S).mul(c),c);break}case 4:{let c=Tn(Y.x.div(u),Y.y.div(d));v=I(s.div(S).mul(c),c);break}default:{let c=Ot(S.div(s),p(1));v=I(s.div(S).mul(c),c);break}}let C=b.sub(I(.5)).div(v).add(I(.5)),E=I(C.x,p(1).sub(C.y)),M=y.sample(E),R=Eo(Eo(E.x.lessThan(0),E.x.greaterThan(1)),Eo(E.y.lessThan(0),E.y.greaterThan(1)));return N(M.rgb,Co(R,p(0),M.a))}}});var Lu,rW=z(()=>{"use strict";Dt();ut();Lu={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:Me,description:"Color of the vignette at the edges",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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."),N(0);let n=j,r=Y.x.div(Y.y),i=I(n.x.mul(r),n.y),o=I(t.center.uniform.x.mul(r),t.center.uniform.y.oneMinus()),a=jn(i.sub(o)),l=Ae(t.radius.uniform,t.radius.uniform.add(t.falloff.uniform),a);return N(Te(e.rgb,t.color.uniform.rgb,l.mul(t.intensity.uniform)),e.a)}}});var s_e,ku,iW=z(()=>{"use strict";Dt();zn();pr();ut();s_e=De(([t])=>pt(me(I(Vt(t,I(127.1,311.7)),Vt(t,I(269.5,183.3)))).mul(p(43758.5453)))),ku={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:Me,description:"Color near each cell's center point",ui:{type:"color",label:"Color A (Center)",group:"Colors"}},colorB:{default:"#fc02dd",transform:Me,description:"Color at cell boundaries, far from any center point",ui:{type:"color",label:"Color B (Edge)",group:"Colors"}},colorBorder:{default:"#000000",transform:Me,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,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=bn(t,e.speed),u=Y.x.div(Y.y),d=I(j.x.mul(u),j.y).mul(a);return De(([h,f,g,y,_,b])=>{let S=en(h),w=pt(h),v=p(10),C=p(10);for(let x=-1;x<=1;x++)for(let T=-1;T<=1;T++){let O=I(p(T),p(x)),L=s_e(S.add(O).add(g)),F=L.x.add(me(f.add(L.x.mul(p(6.28)))).mul(p(.15))).clamp(p(.05),p(.95)),U=L.y.add(He(f.mul(p(.7)).add(L.y.mul(p(6.28)))).mul(p(.15))).clamp(p(.05),p(.95)),D=jn(w.sub(O.add(I(F,U)))),B=D.lessThan(v);C=B.select(v,D.lessThan(C).select(D,C)),v=B.select(D,v)}let E=v.add(C).max(p(1e-4)),M=Ft(n,r,Gt(v.mul(p(2)).div(E).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=C.sub(v).div(E),m=Ae(p(0),R.add(p(.001)),c);return N(Te(b.rgb,M.rgb,m),M.a)})(d,s,l,e.edgeIntensity.uniform,e.edgeSoftness.uniform,i)}}});var Bu,oW=z(()=>{"use strict";pi();Dt();Jn();pr();ut();Bu={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:Hn,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 N(0,0,0,0);let o=j,a=Y.x.div(Y.y),l=bn(t,e.speed).mul(.5),s,u;if(e.angle.uniform.isUniformNode){let E=ne(1),M=ne(0);i(()=>{let R=e.angle.uniform.value*Math.PI/180;E.value=Math.cos(R),M.value=Math.sin(R)}),s=E,u=M}else{let E=e.angle.uniform.mul(mi).div(180);s=He(E).toVar(),u=me(E).toVar()}let d=o.sub(I(.5,.5)),h=I(d.x.mul(a),d.y),f=h.x.mul(u).add(h.y.mul(s)).add(.5).mul(e.frequency.uniform).mul(mi.mul(2)).add(l),g;switch(e.waveType.uniform.value){case 1:g=At(pt(f.div(mi.mul(2))).mul(2).sub(1)).mul(2).sub(1);break;case 2:{let E=pt(f.div(mi.mul(2)));g=xn(p(.5),E).mul(2).sub(1);break}case 3:g=pt(f.div(mi.mul(2))).mul(2).sub(1);break;case 4:g=At(me(f));break;default:g=me(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);r(()=>{w?.renderTarget?.dispose&&w.renderTarget.dispose()});let v=e.edges.uniform.value,C;if(v===2||v===3){let E=xE(S,v);C=w.sample(E)}else C=Bn(S,w.sample(S),w,v);return Ht(C)}}});var zu,sW=z(()=>{"use strict";Dt();ut();zu={name:"Weave",category:"Textures",description:"Interlaced textile weave pattern with two thread colors going over and under each other",props:{colorA:{default:"#c4c4c4",transform:Me,description:"Horizontal thread color",ui:{type:"color",label:"X Color",group:"Colors"}},colorB:{default:"#4d4d4d",transform:Me,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=Y.x.div(Y.y),r=I(e.x.mul(n),e.y),i=t.rotation.uniform.mul(p(Math.PI/180)),o=He(i),a=me(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=en(u),h=pt(u),f=t.gap.uniform,g=ti(u.x).mul(p(.5)),y=Ae(f,f.add(g),h.y).mul(Ae(f,f.add(g),p(1).sub(h.y))),_=Ae(f,f.add(g),h.x).mul(Ae(f,f.add(g),p(1).sub(h.x))),b=wr(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)),C=t.colorA.uniform,E=t.colorB.uniform,M=C.a.mul(w),R=E.a.mul(v),c=M.add(R).clamp(p(0),p(1)),m=M.add(R).max(p(.001));return N(C.x.mul(M).add(E.x.mul(R)).div(m),C.y.mul(M).add(E.y.mul(R)).div(m),C.z.mul(M).add(E.z.mul(R)).div(m),c)}}});var Vu,aW=z(()=>{"use strict";QU();Fi();ut();Vu={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=ne(1),u=ne(640),d=ne(480),h=null,f=null,g;if(Rf())h=document.createElement("canvas"),h.width=640,h.height=480,f=h.getContext("2d"),g=new Fs(h);else{let m=document.createElement("video");m.playsInline=!0,m.muted=!0,g=new hc(m)}g.colorSpace=gr;let y=wn(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,O)=>{if(!o)return O(new Error("Video element not created"));o.onloadedmetadata=()=>{T()},o.onerror=()=>{O(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(),Rf()?(h.width=m,h.height=x,g=new Fs(h)):g=new hc(o),g.colorSpace=gr,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(()=>{Rf()&&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=Y.x.div(Y.y),w=t.objectFit.uniform.value,v;switch(w){case 1:{let m=Tn(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=Tn(Tn(S.div(s),p(1)),Tn(Y.x.div(u),Y.y.div(d)));v=I(s.div(S).mul(m),m);break}case 4:{let m=Tn(Y.x.div(u),Y.y.div(d));v=I(s.div(S).mul(m),m);break}default:{let m=Ot(S.div(s),p(1));v=I(s.div(S).mul(m),m);break}}let C=b.sub(I(.5)).div(v).add(I(.5)),E=t.mirror.uniform,M=I(Co(E,p(1).sub(C.x),C.x),p(1).sub(C.y)),R=y.sample(M),c=Eo(Eo(M.x.lessThan(0),M.x.greaterThan(1)),Eo(M.y.lessThan(0),M.y.greaterThan(1)));return N(R.rgb,Co(c,p(0),R.a))}}});var cW,lW,uW,dW,fW,a_e,hW,c_e,l_e,u_e,Gu,mW=z(()=>{"use strict";Dt();zn();pr();ut();cW=p(Math.PI*2),lW=p(.15),uW=p(.5),dW=p(.05),fW=p(.95),a_e=p(.7),hW=p(10),c_e=De(([t])=>pt(me(I(Vt(t,I(127.1,311.7)),Vt(t,I(269.5,183.3)))).mul(p(43758.5453)))),l_e=t=>({f1:0,f2:1,f2MinusF1:2,f1PlusF2:3,f1TimesF2:4})[t]??0,u_e=t=>({euclidean:0,manhattan:1,chebyshev:2})[t]??0,Gu={name:"WorleyNoise",category:"Textures",description:"Cellular noise field \u2014 distance-based, with selectable feature combinations and fractal octaves",props:{colorA:{default:"#ffffff",transform:Me,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:Me,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,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:l_e,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:u_e,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=bn(t,e.speed),u=Y.x.div(Y.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=De(([c,m,x])=>{let T=m.mul(a_e),O=en(c),L=pt(c),F=hW,U=hW;for(let B=-1;B<=1;B++)for(let q=-1;q<=1;q++){let X=I(p(q),p(B)),re=c_e(O.add(X).add(x)),xe=re.x.add(me(m.add(re.x.mul(cW))).mul(lW)),pe=re.y.add(He(T.add(re.y.mul(cW))).mul(lW)),Ne=Te(uW,xe.clamp(dW,fW),g),qe=Te(uW,pe.clamp(dW,fW),g),Xe=X.add(I(Ne,qe)),le=L.sub(Xe),we;a===1?we=At(le.x).add(At(le.y)):a===2?we=Ot(At(le.x),At(le.y)):we=oG(le),w?(U=Tn(U,Ot(we,F)),F=Tn(F,we)):F=Tn(F,we)}let D;return S?o===1?D=An(U):o===2?D=An(U).sub(An(F)):o===3?D=An(F).add(An(U)):o===4?D=An(F.mul(U)):D=An(F):o===1?D=U:o===2?D=U.sub(F):o===3?D=F.add(U):o===4?D=F.mul(U):D=F,D}),C=p(0),E=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)));C=C.add(m.mul(M)),E=E.add(M),M=M.mul(_),R=R.mul(y)}return Ft(n,r,St(C.div(E.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 pW,d_e,f_e,Hu,gW=z(()=>{"use strict";Dt();Jn();ut();pW=Array.from({length:32},(t,e)=>{let n=(e/31-.5)*2;return Math.exp(-.5*n*n/.64)}),d_e=pW.reduce((t,e)=>t+e),f_e=pW.map(t=>t/d_e),Hu={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:Mt,description:"Center point of the zoom blur",ui:{type:"position",label:"Center",group:"Position"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return N(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=Y.x.div(Y.y);return De(()=>{let l=j,s=N(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(f_e[h]))))}return Ht(s)})()}}});function h_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(e.rgb,r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function y_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r))),o=yW(ge(t.r,t.g,t.b)),a=yW(ge(e.r,e.g,e.b)),l=vW(o),s=vW(a),u=xW(l);return N(m_e(p_e(g_e(_n(Ye(xW(s),r),Ye(u,Ye(t.a,dn(1,r))))))),i)}function b_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r))),o=bW(ge(t.r,t.g,t.b)),a=bW(ge(e.r,e.g,e.b)),l=_W(o);return N(v_e(x_e(_n(Ye(_W(a),r),Ye(l,Ye(t.a,dn(1,r)))))),i)}function __e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Ye(t.rgb,e.rgb),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function S_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(dn(1,Ye(dn(1,t.rgb),dn(1,e.rgb))),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function w_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(_n(t.rgb,e.rgb),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function M_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Te(Ye(2,Ye(t.rgb,e.rgb)),dn(1,Ye(2,Ye(dn(1,t.rgb),dn(1,e.rgb)))),xn(.5,t.rgb)),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function T_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(At(dn(t.rgb,e.rgb)),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function E_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Te(t.rgb,Tn(Oc(t.rgb,dn(1,e.rgb)),1),xn(.001,dn(1,e.rgb))),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function C_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(dn(_n(t.rgb,e.rgb),Ye(2,Ye(t.rgb,e.rgb))),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function Af(t){return _n(_n(Ye(t.r,.2126),Ye(t.g,.7152)),Ye(t.b,.0722))}function R_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r))),o=dn(Af(t.rgb),Af(e.rgb));return N(_n(Ye(_n(e.rgb,o),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function A_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r))),o=Af(t.rgb),a=Af(e.rgb).div(_n(o,1e-4));return N(_n(Ye(Ye(t.rgb,a),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function P_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Tn(t.rgb,e.rgb),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function I_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Ot(t.rgb,e.rgb),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function O_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Te(N(0,0,0,1).rgb,Ot(dn(1,dn(1,t.rgb).div(_n(e.rgb,1e-4))),0),xn(1e-4,e.rgb)),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function U_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Ot(_n(_n(t.rgb,e.rgb),-1),0),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function N_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r))),o=_n(Ye(2,Ye(t.rgb,e.rgb)),Ye(Ye(t.rgb,t.rgb),dn(1,Ye(2,e.rgb)))),a=An(t.rgb);return N(_n(Ye(Te(o,_n(Ye(2,Ye(t.rgb,dn(1,e.rgb))),Ye(a,dn(Ye(2,e.rgb),1))),xn(.5,e.rgb)),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function D_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Te(Ye(2,Ye(t.rgb,e.rgb)),dn(1,Ye(2,Ye(dn(1,t.rgb),dn(1,e.rgb)))),xn(.5,e.rgb)),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function F_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r))),o=Af(t.rgb),a=Af(e.rgb),l=t.rgb.sub(o),s=e.rgb.sub(a),u=l.length();return N(_n(Ye(_n(Ye(s.normalize(),u),o),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function L_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r))),o=Af(t.rgb),a=Af(e.rgb),l=t.rgb.sub(o),s=e.rgb.sub(a);return N(_n(Ye(_n(Ye(l.normalize(),s.length()),o),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function Up(t,e,n="normal",r=1){return(SW[n]||SW.normal)(t,e,r)}function k_e(t,e){let n=Ye(t.a,e.a);return N(t.rgb,n)}function B_e(t,e){let n=dn(1,e.a),r=Ye(t.a,n);return N(t.rgb,r)}function z_e(t,e){let n=ge(.2126,.7152,.0722),r=Vt(e.rgb,n),i=Ye(t.a,r);return N(t.rgb,i)}function V_e(t,e){let n=ge(.2126,.7152,.0722),r=dn(1,Vt(e.rgb,n)),i=Ye(t.a,r);return N(t.rgb,i)}function G_e(t,e,n="alpha"){return(wW[n]||wW.alpha)(t,e)}function de(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=ne(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 q_e(t,e){if(t?.transform){let n=j_e.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 MW(){let t=null,e,n=null,r=!1,i,o,a,l,s={nodes:new Map,rootId:null,idToNodeId:new Map},u=new Map,d=null,h=null,f=null,g=!1,y=!1,_="p3-linear",b="linear",S=!1,w=null,v=!1,C=!0,E=!1,M=0,R=0,c=0,m=0,x=!1,T=.5,O=.5,L=!1,F=null,U=!1,D=!1,B=null,q=null,X=null,re=null,xe=8192,pe=0,Ne=0,qe=!0,Xe=new H_e,le=[],we=!1,Ce=null,ke=!1,je=!1,ve=null,Ke=!1,Ue=K=>{if(!Ke){Ke=!0;try{Qa()}catch{}ve&&queueMicrotask(()=>{try{ve?.(K)}catch(ue){console.error("[Shaders] onDeviceLost callback threw:",ue)}})}},Z=null,Se=new Set,Re=new Set,ze=0,Je=new Set,ot=new Set,it=new Set,rt=new Set,st=new Set,ee=new Set,Fe={deltaTime:0,pointer:{x:.5,y:.5},pointerActive:!1,dimensions:{width:0,height:0}},Oe=null,k=!1,P=(K,ue)=>{let ce=e?.getPixelRatio?.()??1,ye=Math.max(1,Math.floor(xe/ce)-1),Pt=Math.min(K,window.innerWidth,ye),ct=Math.min(ue,window.innerHeight,ye),Lt=Math.min(Pt/K,ct/ue,1);return{width:Math.max(1,Math.round(K*Lt)),height:Math.max(1,Math.round(ue*Lt))}},H=(K,ue)=>{K<=0||ue<=0||K===pe&&ue===Ne||(pe=K,Ne=ue,Oe={width:K,height:ue},k||(k=!0,requestAnimationFrame(()=>{if(k=!1,!Oe)return;let ce=Oe;Oe=null;let{width:ye,height:Pt}=P(ce.width,ce.height);M=ye,R=Pt,S||(S=!0,s.nodes.size>0&&Z===null&&(Z=requestAnimationFrame(()=>{Z=null,Ct()}))),e.setSize(ye,Pt,!1);let ct=ye/Pt,Lt=2,Rt=Lt*ct;i.left=-Rt/2,i.right=Rt/2,i.top=Lt/2,i.bottom=-Lt/2,i.updateProjectionMatrix(),a.scale.set(Rt,Lt,1),s.nodes.forEach(Qe=>{Qe.transformUniforms?.aspectRatio&&(Qe.transformUniforms.aspectRatio.value=ct),Qe.resizeCallbacks.forEach(kt=>{try{kt({width:ye,height:Pt})}catch(lt){console.error("Error in resize callback:",lt)}})}),c=0,ii()})))},$=()=>g&&!!e&&!!o&&!!i&&!!l&&M>0&&R>0,te=K=>{if(!e||!i||!a)return;let ue=K[0];if(!ue)return;let ce,ye;if(ue.contentBoxSize){let Pt=Array.isArray(ue.contentBoxSize)?ue.contentBoxSize[0]:ue.contentBoxSize;Pt?(ce=Math.round(Pt.inlineSize),ye=Math.round(Pt.blockSize)):(ce=Math.round(ue.contentRect.width),ye=Math.round(ue.contentRect.height))}else ce=Math.round(ue.contentRect.width),ye=Math.round(ue.contentRect.height);ce===0||ye===0||H(ce,ye)},Ee=K=>{let ue=K[0];ue&&(v=ue.isIntersecting)},Pe=(K,ue)=>{if(K.size!==ue.size)return!1;for(let ce of K)if(!ue.has(ce))return!1;return!0},Q=()=>{it.clear(),rt.clear(),st.clear(),ee.clear();for(let[K,ue]of s.nodes){ue.beforeRenderCallbacks.length>0&&it.add(K),ue.afterRenderCallbacks.length>0&&rt.add(K),ue.computeGetNodes&&st.add(K);let ce=ue.mouseDriverState,ye=ue.autoAnimateState,Pt=!!ce&&Object.keys(ce).length>0,ct=!!ye&&Object.keys(ye).length>0;(Pt||ct)&&ee.add(K)}},J=K=>{ze++;let ue=It(K);return Je.add(ue),ue},be=()=>{ot.forEach(K=>{try{K?.renderTarget?.dispose&&K.renderTarget.dispose()}catch{}}),ot.clear()},et=K=>{let ue=ge(K.x,K.y,K.z),ce=K.w,ye=ue.mul(16),Pt=ye.mul(ye.mul(.15).add(.05)).add(.004),ct=ye.mul(ye.mul(.15).add(.5)).add(.06),Lt=Pt.div(ct).sub(.02/.3);return N(Lt.x,Lt.y,Lt.z,ce)},Ve=K=>{let ue=ge(K.x,K.y,K.z),ce=K.w,ye=ue.div(ue.add(.155)).mul(1.019);return N(ye.x,ye.y,ye.z,ce)},nt=K=>{b=K,e&&(e.toneMapping={linear:Kr,reinhard:eh,cineon:th,aces:nh,agx:rh,neutral:ih}[K]??Kr)},Et=!1,Ct=()=>{if(!(!s.rootId||!l||U)&&s.nodes.get(s.rootId)){if(M===0||R===0){Et||(Et=!0,requestAnimationFrame(()=>{Et=!1,M>0&&R>0&&Ct()}));return}U=!0;try{ot=new Set(Je),Je.clear();let K=new Set;Re.clear(),s.nodes.forEach((ce,ye)=>{(ce.requiresRTT||ce.transformRTTActive)&&Re.add(ye)}),ze=0;let ue=ri(s.rootId,new Set,K);if(ue&&l){let ce=!Pe(Se,K),ye=ue;b==="hable"?ye=et(ue):b==="unreal"&&(ye=Ve(ue));let Pt=l.fragmentNode!==ye;if(ce||x||Pt){be();try{l.dispose(),e.renderTarget&&e.renderTarget.dispose()}catch{}let ct=new dp({transparent:!0});ct.fragmentNode=ye,ct.needsUpdate=!0,a.material=ct,l=ct,x=!1,Se=K,!ke&&K.size>0&&(je=!0)}}}catch(K){console.error("Error composing shader tree:",K)}finally{U=!1,D=!1}Q(),d||ii()}},Wt=K=>{let ue=u.get(K);if(!ue)return[];let ce=[];for(let ye of ue){let Pt=s.nodes.get(ye);Pt&&ce.push(Pt)}return ce},se=K=>K.replace(/[^a-zA-Z0-9_]/g,"_"),at=K=>{let ue=se(K);for(let[ce,ye]of s.nodes.entries())if(ye.metadata.id===ue)return ce;return null},Le=(K,ue,ce,ye,Pt)=>{if(!ue.metadata.mask?.source)return K;let ct=ue.metadata.mask.source,Lt=at(ct);if(!Lt)return K;if(ye.has(Lt))return console.error("Uh oh, looks like you've got a circular dependency in your shader masks."),K;let Rt=new Set(ye);Rt.add(ce);let Qe=ri(Lt,Rt),kt=Qe;Pt&&(kt=J(Qe).sample(Pt));let lt=ue.metadata.mask.type||"alpha";return G_e(K,kt,lt)},_t=(K,ue,ce,ye,Pt)=>{let ct=at(K.source);if(!ct)return null;if(ue.has(ct))return console.error(`[Shaders] Circular dependency detected in prop maps: node "${K.source}" is already being processed.`),null;let Lt=new Set(ue);Lt.add(ce);let Rt=J(ri(ct,Lt)),Qe=Rt.sample(Pt??j),kt;switch(K.channel){case"alpha":kt=Qe.a;break;case"alphaInverted":kt=Qe.a.oneMinus();break;case"luminanceInverted":kt=Vt(Qe.rgb,ge(.2126,.7152,.0722)).oneMinus();break;default:kt=Vt(Qe.rgb,ge(.2126,.7152,.0722));break}let lt=s.nodes.get(ce);if(!lt)return null;lt.mapUniforms||(lt.mapUniforms={}),lt.mapUniforms[ye]?(lt.mapUniforms[ye].inputMin.value=K.inputMin,lt.mapUniforms[ye].inputMax.value=K.inputMax,lt.mapUniforms[ye].outputMin.value=K.outputMin,lt.mapUniforms[ye].outputMax.value=K.outputMax,lt.mapUniforms[ye].curve.value=K.curve??0,lt.mapUniforms[ye].sourceTexture=Rt,lt.mapUniforms[ye].channel=K.channel):lt.mapUniforms[ye]={inputMin:ne(K.inputMin),inputMax:ne(K.inputMax),outputMin:ne(K.outputMin),outputMax:ne(K.outputMax),curve:ne(K.curve??0),sourceTexture:Rt,channel:K.channel};let{inputMin:Un,inputMax:pn,outputMin:ft,outputMax:or,curve:Jt}=lt.mapUniforms[ye],gn=Ot(pn.sub(Un),1e-4);return Te(ft,or,Gt(St(kt.sub(Un).div(gn),0,1),Gt(p(2),Jt.negate().mul(2))))},Bt=(K,ue,ce)=>{let ye=s.nodes.get(ue);if(!ye)return null;if(ye.mouseDriverState||(ye.mouseDriverState={}),!ye.mouseDriverState[ce]){let Pt=K.x===void 0||K.x==="mouse",ct=K.y===void 0||K.y==="mouse",Lt=Pt?T:K.x,Rt=ct?O:K.y,Qe=ne(new yn(Lt,1-Rt));ye.mouseDriverState[ce]={currentX:Lt,currentY:Rt,velocityX:0,velocityY:0,smoothedUniform:Qe}}return ye.mouseDriverState[ce].smoothedUniform},dt=(K,ue,ce)=>{let ye=s.nodes.get(ue);if(!ye)return null;if(ye.mouseDriverState||(ye.mouseDriverState={}),!ye.mouseDriverState[ce]){let Qe=Math.max(.001,K.axis==="x"?T:O),kt=ne(Qe);ye.mouseDriverState[ce]={currentX:Qe,currentY:0,velocityX:0,velocityY:0,smoothedUniform:kt}}ye.mapUniforms||(ye.mapUniforms={}),ye.mapUniforms[ce]?(ye.mapUniforms[ce].outputMin.value=K.outputMin,ye.mapUniforms[ce].outputMax.value=K.outputMax,ye.mapUniforms[ce].curve.value=K.curve??0):ye.mapUniforms[ce]={inputMin:ne(0,"float"),inputMax:ne(1,"float"),outputMin:ne(K.outputMin,"float"),outputMax:ne(K.outputMax,"float"),curve:ne(K.curve??0,"float")};let{outputMin:Pt,outputMax:ct,curve:Lt}=ye.mapUniforms[ce],Rt=ye.mouseDriverState[ce].smoothedUniform;return Te(Pt,ct,Gt(Rt,Gt(p(2),Lt.negate().mul(2))))},Kt=(K,ue,ce)=>{let ye=s.nodes.get(ue);return ye?(ye.autoAnimateState||(ye.autoAnimateState={}),ye.autoAnimateState[ce]||(ye.autoAnimateState[ce]={smoothedUniform:ne(K.outputMin,"float")}),ye.autoAnimateState[ce].smoothedUniform):null},Xt=(K,ue,ce,ye)=>{if(!ue||Object.keys(ue).length===0)return K;let Pt={...K},ct=s.nodes.get(ce),Lt=ct?.mapSampleUVsFunc?.(K)??{};for(let[Rt,Qe]of Object.entries(ue)){let kt=null;if(Qe.type==="map"){if(!(Rt in Pt))continue;kt=_t(Qe,ye,ce,Rt,Lt[Rt])}else if(Qe.type==="mouse-position"){kt=Bt(Qe,ce,Rt),kt!==null&&Rt in Pt&&(Pt[Rt]={...Pt[Rt],uniform:kt});continue}else if(Qe.type==="mouse"){if(!(Rt in Pt))continue;kt=dt(Qe,ce,Rt)}else if(Qe.type==="auto-animate"){if(!(Rt in Pt))continue;kt=Kt(Qe,ce,Rt)}if(kt!==null&&Rt in Pt){let lt;if(Qe.type==="map"){let pn=ct?.mapUniforms?.[Rt];pn?.sourceTexture&&pn?.channel&&(lt={sourceTexture:pn.sourceTexture,channel:pn.channel,inputMin:pn.inputMin,inputMax:pn.inputMax,outputMin:pn.outputMin,outputMax:pn.outputMax,curve:pn.curve})}let Un;Qe.type==="mouse"&&(Un=()=>{let pn=ct?.mouseDriverState?.[Rt],ft=ct?.mapUniforms?.[Rt];if(!pn||!ft)return 0;let or=pn.smoothedUniform.value,Jt=ft.outputMin.value,gn=ft.outputMax.value,Nr=Math.pow(2,-(ft.curve.value*2));return Jt+(gn-Jt)*Math.pow(or,Nr)}),Pt[Rt]={...Pt[Rt],uniform:kt,...lt?{mapComputeInfo:lt}:{},...Un?{getCpuValue:Un}:{}}}}return Pt},er=(K,ue)=>{if(!ue.metadata.transform||!ue.transformUniforms||!eN(ue.metadata.transform)&&!ue.transformRTTActive)return K;let ce=J(K),ye=W_e(j,ue.transformUniforms.offsetX,ue.transformUniforms.offsetY,ue.transformUniforms.rotation,ue.transformUniforms.scale,ue.transformUniforms.anchorX,ue.transformUniforms.anchorY,ue.transformUniforms.aspectRatio);return Bn(ye,ce.sample(ye),ce,ue.transformUniforms.edges.value)},Vn=(K,ue)=>{if(K.computeOutputs=void 0,K.computeGetNodes=void 0,!(typeof window<"u"&&window.sessionStorage?.getItem("__shadersForceWebGL")==="1")&&K.computeNodeFunc&&e.backend?.isWebGPUBackend===!0)try{let ce=K.computeNodeFunc(ue);if(ce)return K.computeOutputs=ce.outputs,K.computeGetNodes=ce.getComputeNodes,ce.outputs}catch(ce){console.error(`Error initializing compute for node ${K.id}:`,ce)}},ri=(K,ue=new Set,ce)=>{if(M===0||R===0)return N(0,0,0,0);let ye=s.nodes.get(K);if(!ye)return N(0,0,0,0);let Pt=kt=>{ye.cleanupCallbacks.push(kt)},ct=kt=>{ye.beforeRenderCallbacks.push(kt)},Lt=kt=>{ye.afterRenderCallbacks.push(kt)},Rt=kt=>{ye.resizeCallbacks.push(kt)},Qe=Wt(K);if(Qe.length===0){ye.cleanupCallbacks.forEach(lt=>{try{lt()}catch(Un){console.error("Error in cleanup callback:",Un)}}),ye.cleanupCallbacks=[],ye.beforeRenderCallbacks=[],ye.afterRenderCallbacks=[],ye.resizeCallbacks=[];let kt={uniforms:Xt(ye.uniforms??{},ye.metadata.maps,K,ue),childNode:void 0,onCleanup:Pt,onBeforeRender:ct,onAfterRender:Lt,onResize:Rt,canvas:t,dimensions:{width:M,height:R},renderer:e,domCanvas:ye.domCanvas};return kt.computeOutputs=Vn(ye,kt),Le(er(ye.fragmentNodeFunc(kt),ye),ye,K,ue)}else{let kt=[...Qe].sort((lt,Un)=>lt.metadata.renderOrder-Un.metadata.renderOrder);if(ye.parentId===null){let lt;for(let pn=0;pn<kt.length;pn++){let ft=kt[pn],or;if(ft.metadata.opacity===void 0?(or=1,ft.opacityUniform.value=or):(or=ft.metadata.opacity,ft.opacityUniform.value=or),ft.metadata.visible===!1)continue;ce&&ce.add(ft.id);let Jt=Wt(ft.id).length>0,gn;if(Jt)gn=ri(ft.id,ue,ce);else{let Nr=Mi=>{ft.cleanupCallbacks.push(Mi)},Qn=Mi=>{ft.beforeRenderCallbacks.push(Mi)},Pi=Mi=>{ft.afterRenderCallbacks.push(Mi)},hs=Mi=>{ft.resizeCallbacks.push(Mi)},Qs=lt;ft.requiresRTT&<!==void 0&&(Qs=Up(N(0,0,0,0),lt,"normal",1)),ft.cleanupCallbacks.forEach(Mi=>{try{Mi()}catch(Uf){console.error("Error in cleanup callback:",Uf)}}),ft.cleanupCallbacks=[],ft.beforeRenderCallbacks=[],ft.afterRenderCallbacks=[],ft.resizeCallbacks=[];let tc={uniforms:Xt(ft.uniforms??{},ft.metadata.maps,ft.id,ue),childNode:Qs,onCleanup:Nr,onBeforeRender:Qn,onAfterRender:Pi,onResize:hs,canvas:t,dimensions:{width:M,height:R},renderer:e,domCanvas:ft.domCanvas};tc.computeOutputs=Vn(ft,tc),gn=Le(er(ft.fragmentNodeFunc(tc),ft),ft,ft.id,ue)}ft.requiresChild&&ft.metadata.blendMode==="normal"&&!Jt?lt=Te(lt||N(0,0,0,0),gn,ft.opacityUniform):lt===void 0?ye.requiresRTT||or!==1?lt=Up(N(1,1,1,0),gn,ft.metadata.blendMode,ft.opacityUniform):lt=gn:lt=Up(lt,gn,ft.metadata.blendMode,ft.opacityUniform)}ye.cleanupCallbacks.forEach(pn=>{try{pn()}catch(ft){console.error("Error in cleanup callback:",ft)}}),ye.cleanupCallbacks=[],ye.beforeRenderCallbacks=[],ye.afterRenderCallbacks=[],ye.resizeCallbacks=[];let Un={uniforms:Xt(ye.uniforms??{},ye.metadata.maps,K,ue),childNode:lt,onCleanup:Pt,onBeforeRender:ct,onAfterRender:Lt,onResize:Rt,canvas:t,dimensions:{width:M,height:R},renderer:e,domCanvas:ye.domCanvas};return Un.computeOutputs=Vn(ye,Un),Le(er(ye.fragmentNodeFunc(Un),ye),ye,K,ue)}else{let lt;for(let pn=0;pn<kt.length;pn++){let ft=kt[pn],or;if(ft.metadata.opacity===void 0?(or=1,ft.opacityUniform.value=or):(or=ft.metadata.opacity,ft.opacityUniform.value=or),ft.metadata.visible===!1)continue;ce&&ce.add(ft.id);let Jt=Wt(ft.id).length>0,gn;if(Jt)gn=ri(ft.id,ue,ce);else{let Nr=Mi=>{ft.cleanupCallbacks.push(Mi)},Qn=Mi=>{ft.beforeRenderCallbacks.push(Mi)},Pi=Mi=>{ft.afterRenderCallbacks.push(Mi)},hs=Mi=>{ft.resizeCallbacks.push(Mi)},Qs=lt;ft.requiresRTT&<!==void 0&&(Qs=Up(N(0,0,0,0),lt,"normal",1)),ft.cleanupCallbacks=[],ft.beforeRenderCallbacks=[],ft.afterRenderCallbacks=[],ft.resizeCallbacks=[];let tc={uniforms:Xt(ft.uniforms??{},ft.metadata.maps,ft.id,ue),childNode:Qs,onCleanup:Nr,onBeforeRender:Qn,onAfterRender:Pi,onResize:hs,canvas:t,dimensions:{width:M,height:R},renderer:e,domCanvas:ft.domCanvas};tc.computeOutputs=Vn(ft,tc),gn=Le(er(ft.fragmentNodeFunc(tc),ft),ft,ft.id,ue)}ft.requiresChild&&ft.metadata.blendMode==="normal"&&!Jt?lt=Te(lt||N(0,0,0,0),gn,ft.opacityUniform):lt===void 0?ye.requiresRTT||or!==1?lt=Up(N(1,1,1,0),gn,ft.metadata.blendMode,ft.opacityUniform):lt=gn:lt=Up(lt,gn,ft.metadata.blendMode,ft.opacityUniform)}ye.cleanupCallbacks.forEach(pn=>{try{pn()}catch(ft){console.error("Error in cleanup callback:",ft)}}),ye.cleanupCallbacks=[],ye.beforeRenderCallbacks=[],ye.afterRenderCallbacks=[],ye.resizeCallbacks=[];let Un={uniforms:Xt(ye.uniforms??{},ye.metadata.maps,K,ue),childNode:lt,onCleanup:Pt,onBeforeRender:ct,onAfterRender:Lt,onResize:Rt,canvas:t,dimensions:{width:M,height:R},renderer:e,domCanvas:ye.domCanvas};return Un.computeOutputs=Vn(ye,Un),Le(er(ye.fragmentNodeFunc(Un),ye),ye,K,ue)}}},gi=(K,ue,ce,ye,Pt={},ct,Lt)=>{if(ue===null){let pn=le.findIndex(ft=>ft.id===K);if(pn!==-1){le.splice(pn,1);return}qu(K);return}if(!we){let pn=le.findIndex(ft=>ft.id===K);pn!==-1?le[pn]={id:K,fragmentNodeFunc:ue,parentId:ce,metadata:ye,uniforms:Pt,componentDefinition:ct,domCanvas:Lt}:le.push({id:K,fragmentNodeFunc:ue,parentId:ce,metadata:ye,uniforms:Pt,componentDefinition:ct,domCanvas:Lt});return}let Rt=0;if(ce!==null){let pn=u.get(ce);if(pn&&pn.size>0){let ft=0;for(let or of pn){let Jt=s.nodes.get(or);Jt&&Jt.metadata.renderOrder>ft&&(ft=Jt.metadata.renderOrder)}Rt=ft+1}}let Qe=ne(ye?.opacity!==void 0?ye.opacity:1),kt;if(ye?.transform){let pn=M/Math.max(1,R),ft=ye.transform;kt={offsetX:ne(ft.offsetX??0),offsetY:ne(ft.offsetY??0),rotation:ne(ft.rotation??0),scale:ne(ft.scale??1),anchorX:ne(ft.anchorX??.5),anchorY:ne(ft.anchorY??.5),edges:ne(ft.edges==="stretch"?0:ft.edges==="transparent"?1:ft.edges==="mirror"?2:ft.edges==="wrap"?3:1),aspectRatio:ne(pn)}}let lt={id:K,componentName:ct?.name||"Unknown",fragmentNodeFunc:ue,parentId:ce,requiresRTT:ct?.requiresRTT||!1,requiresChild:ct?.requiresChild||!1,opacityUniform:Qe,metadata:{blendMode:ye?.blendMode||"normal",opacity:ye?.opacity,visible:ye?.visible!==!1,id:ye?.id?se(ye.id):ye?.id,mask:ye?.mask,maps:ye?.maps,renderOrder:ye?.renderOrder!==void 0?ye?.renderOrder:Rt,transform:ye?.transform},uniforms:Pt,cleanupCallbacks:[],beforeRenderCallbacks:[],afterRenderCallbacks:[],resizeCallbacks:[],transformUniforms:kt,transformRTTActive:!1,mapSampleUVsFunc:ct?.mapSampleUVs,computeNodeFunc:ct?.computeNode,usesPointer:ct?.usesPointer,domCanvas:Lt};s.nodes.set(K,lt),ce===null&&(s.rootId=K),ec();let Un=u.get(ce)||new Set;Un.add(K),u.set(ce,Un),l&&g&&M>0&&R>0?Z===null&&(Z=requestAnimationFrame(()=>{Z=null,Ct()})):l&&g&&(Et||(Et=!0,requestAnimationFrame(()=>{Et=!1,M>0&&R>0&&Ct()})))},Wu=(K,ue,ce)=>{let ye=s.nodes.get(K);if(!ye||!ye.uniforms)return;let Pt=ye.uniforms[ue];if(!(!Pt||!Pt.uniform)){if(Pt.transform?(ae(_),q_e(Pt,ce)):Pt.uniform.value=ce,Pt.compileTime&&l&&g&&M>0&&R>0){Z===null&&(Z=requestAnimationFrame(()=>{Z=null,Ct()}));return}if(Pt.compileTimeWhen&&l&&g&&M>0&&R>0){let ct=Pt._lastCompiledValue;if(Pt.compileTimeWhen(ct,ce)){Pt._lastCompiledValue=ce,Z===null&&(Z=requestAnimationFrame(()=>{Z=null,Ct()}));return}}d||ii()}},ju=(K,ue)=>{let ce=s.nodes.get(K);if(!ce)return;let ye=!1;ue.blendMode!==void 0&&ce.metadata.blendMode!==ue.blendMode&&(ce.metadata.blendMode=ue.blendMode,ye=!0),ue.opacity!==void 0&&ce.metadata.opacity!==ue.opacity&&(ce.metadata.opacity=ue.opacity,ce.opacityUniform.value=ue.opacity),ue.renderOrder!==void 0&&ce.metadata.renderOrder!==ue.renderOrder&&(ce.metadata.renderOrder=ue.renderOrder,ye=!0);let Pt=ue.visible!==!1;if(ce.metadata.visible!==Pt&&(ce.metadata.visible=Pt,ye=!0),ue.id!==void 0){let ct=se(ue.id);ce.metadata.id!==ct&&(ce.metadata.id=ct,ye=!0)}if("mask"in ue&&(ce.metadata.mask?.source!==ue.mask?.source||ce.metadata.mask?.type!==ue.mask?.type)&&(ce.metadata.mask=ue.mask,ye=!0),"maps"in ue&&JSON.stringify(ce.metadata.maps)!==JSON.stringify(ue.maps)){let ct=ce.metadata.maps,Lt=ue.maps;if(ce.metadata.maps=Lt,ec(),(()=>{if(!ct||!Lt)return!0;let Rt=Object.keys(ct),Qe=Object.keys(Lt);if(Rt.length!==Qe.length||!Rt.every(kt=>kt in Lt))return!0;for(let kt of Qe){let lt=ct[kt],Un=Lt[kt];if(lt.type!==Un.type)return!0;if(Un.type==="map"){let pn=Un,ft=lt;if(ft.source!==pn.source||ft.channel!==pn.channel||!ce.mapUniforms?.[kt])return!0}else if(Un.type==="mouse"){let pn=Un;if(lt.axis!==pn.axis||!ce.mouseDriverState?.[kt])return!0}else if(Un.type==="mouse-position"){if(!ce.mouseDriverState?.[kt])return!0}else if(Un.type==="auto-animate"&&!ce.autoAnimateState?.[kt])return!0}return!1})()){if(ct&&Lt)for(let Rt of Object.keys(ct))Rt in Lt&&ct[Rt].type!==Lt[Rt].type&&ce.autoAnimateState&&delete ce.autoAnimateState[Rt];if(ct&&Lt&&ce.mouseDriverState)for(let Rt of Object.keys(ct))Rt in Lt&&ct[Rt].type!==Lt[Rt].type&&delete ce.mouseDriverState[Rt];ye=!0}else for(let[Rt,Qe]of Object.entries(Lt))if(Qe.type==="map"){let kt=Qe,lt=ce.mapUniforms[Rt];lt&&(lt.inputMin.value=kt.inputMin,lt.inputMax.value=kt.inputMax,lt.outputMin.value=kt.outputMin,lt.outputMax.value=kt.outputMax,lt.curve.value=kt.curve??0)}else if(Qe.type==="mouse"){let kt=Qe,lt=ce.mapUniforms?.[Rt];lt&&(lt.outputMin.value=kt.outputMin,lt.outputMax.value=kt.outputMax,lt.curve.value=kt.curve??0)}else if(Qe.type==="auto-animate"){let kt=Qe,lt=ce.mapUniforms?.[Rt];lt&&(lt.outputMin.value=kt.outputMin,lt.outputMax.value=kt.outputMax)}}if(ue.transform!==void 0){let ct={offsetX:ue.transform.offsetX??ce.metadata.transform?.offsetX??0,offsetY:ue.transform.offsetY??ce.metadata.transform?.offsetY??0,rotation:ue.transform.rotation??ce.metadata.transform?.rotation??0,scale:ue.transform.scale??ce.metadata.transform?.scale??1,anchorX:ue.transform.anchorX??ce.metadata.transform?.anchorX??.5,anchorY:ue.transform.anchorY??ce.metadata.transform?.anchorY??.5,edges:ue.transform.edges??ce.metadata.transform?.edges??"transparent"},Lt=eN(ct);if(ce.metadata.transform=ct,!ce.transformUniforms&&ct){let Rt=M/Math.max(1,R);ce.transformUniforms={offsetX:ne(ct.offsetX),offsetY:ne(ct.offsetY),rotation:ne(ct.rotation),scale:ne(ct.scale),anchorX:ne(ct.anchorX),anchorY:ne(ct.anchorY),edges:ne(ct.edges==="stretch"?0:ct.edges==="transparent"?1:ct.edges==="mirror"?2:3),aspectRatio:ne(Rt)}}else if(ce.transformUniforms){ce.transformUniforms.offsetX.value=ct.offsetX,ce.transformUniforms.offsetY.value=ct.offsetY,ce.transformUniforms.rotation.value=ct.rotation,ce.transformUniforms.scale.value=ct.scale,ce.transformUniforms.anchorX.value=ct.anchorX,ce.transformUniforms.anchorY.value=ct.anchorY;let Rt=ce.transformUniforms.edges.value;ce.transformUniforms.edges.value=ct.edges==="stretch"?0:ct.edges==="transparent"?1:ct.edges==="mirror"?2:3,ce.transformUniforms.edges.value!==Rt&&(ye=!0)}Lt&&!ce.transformRTTActive&&(ce.transformRTTActive=!0,ye=!0)}ye&&l&&g?Z===null&&(Z=requestAnimationFrame(()=>{Z=null,Ct()})):d||ii()},qu=K=>{if(!s.nodes.has(K))return;let ue=s.nodes.get(K);if(ue&&ue.cleanupCallbacks.length>0)for(let ye of ue.cleanupCallbacks)try{ye()}catch(Pt){console.error(`Error executing cleanup callback for node ${K}:`,Pt)}let ce=Wt(K);for(let ye of ce)qu(ye.id);if(s.rootId===K&&(s.rootId=null),ue){let ye=u.get(ue.parentId);ye&&(ye.delete(K),ye.size===0&&u.delete(ue.parentId))}s.nodes.delete(K),it.delete(K),rt.delete(K),st.delete(K),ee.delete(K),ec(),D=!0,l&&g&&Z===null&&(Z=requestAnimationFrame(()=>{Z=null,Ct()}))},Xu=K=>K<1/2.75?7.5625*K*K:K<2/2.75?(K-=1.5/2.75,7.5625*K*K+.75):K<2.5/2.75?(K-=2.25/2.75,7.5625*K*K+.9375):(K-=2.625/2.75,7.5625*K*K+.984375),em=(K,ue)=>{switch(ue){case"linear":return K;case"quad":return K<.5?2*K*K:1-Math.pow(-2*K+2,2)/2;case"expo":return K===0?0:K===1?1:K<.5?Math.pow(2,20*K-10)/2:(2-Math.pow(2,-20*K+10))/2;case"bounce":return Xu(K);default:return(1-Math.cos(Math.PI*K))/2}},tm=()=>{let K=Fe.deltaTime;m+=K;for(let ue of ee){let ce=s.nodes.get(ue);if(!ce)continue;let ye=ce.metadata.maps;if(!ye)continue;let Pt=ce.mouseDriverState;for(let Lt in Pt){let Rt=Pt[Lt],Qe=ye[Lt];if(Qe){if(Qe.type==="mouse-position"){let kt=Qe.smoothing??0,lt=Qe.momentum??0,Un=Qe.x===void 0||Qe.x==="mouse",pn=Qe.y===void 0||Qe.y==="mouse",ft,or;if(Un){let[Uf,JE]=tN(Rt.currentX,Rt.velocityX,T,kt,lt,K);Rt.currentX=Uf,Rt.velocityX=JE,ft=Uf}else ft=Qe.x,Rt.velocityX=0;if(pn){let[Uf,JE]=tN(Rt.currentY,Rt.velocityY,O,kt,lt,K);Rt.currentY=Uf,Rt.velocityY=JE,or=Uf}else or=Qe.y,Rt.velocityY=0;let Jt=Qe.reach??1,gn=Qe.originX??.5,Nr=Qe.originY??.5,Qn=Qe.invertX?-1:1,Pi=Qe.invertY?-1:1,hs=gn+Qn*(ft-gn)*Jt,Qs=Nr+Pi*(or-Nr)*Jt,tc=hs,Mi=1-Qs;Rt.smoothedUniform.value.set(tc,Mi)}else if(Qe.type==="mouse"){let kt=Qe.smoothing??0,lt=Qe.momentum??0,Un=Qe.axis==="x"?T:O,[pn,ft]=tN(Rt.currentX,Rt.velocityX,Un,kt,lt,K);Rt.currentX=pn,Rt.velocityX=ft,Rt.smoothedUniform.value=Math.max(.001,pn)}}}let ct=ce.autoAnimateState;if(ct)for(let Lt in ct){let Rt=ct[Lt],Qe=ye[Lt];if(!Qe||Qe.type!=="auto-animate")continue;let kt=m*(Qe.speed??1)*.2,lt;if(Qe.mode==="loop")lt=em((kt%1+1)%1,Qe.easing??Qe.waveform??"sine");else{let Jt=(kt%1+1)%1;lt=em(Jt<.5?Jt*2:(1-Jt)*2,Qe.easing??Qe.waveform??"sine")}let{outputMin:Un,outputMax:pn}=Qe,ft=Un+lt*(pn-Un),or=ce.uniforms?.[Lt];if(or?.compileTimeWhen&&l&&g&&M>0&&R>0){let Jt=or._lastCompiledValue;or.compileTimeWhen(Jt,ft)&&(or._lastCompiledValue=ft,Z===null&&(Z=requestAnimationFrame(()=>{Z=null,Ct()})))}Rt.smoothedUniform.value=ft}}},nm=()=>{for(let K of st){let ue=s.nodes.get(K);if(!(!ue||!ue.computeGetNodes))try{let ce=ue.computeGetNodes(Fe);if(ce)for(let ye of ce)e.compute(ye)}catch(ce){console.error(`Error dispatching compute for node ${ue.id}:`,ce)}}},Ps=()=>{for(let K of it){let ue=s.nodes.get(K);if(ue)for(let ce of ue.beforeRenderCallbacks)try{ce(Fe)}catch(ye){console.error(`Error executing before render callback for node ${ue.id}:`,ye)}}},Pf=()=>{for(let K of rt){let ue=s.nodes.get(K);if(ue)for(let ce of ue.afterRenderCallbacks)try{ce(Fe)}catch(ye){console.error(`Error executing after render callback for node ${ue.id}:`,ye)}}},If=async()=>{if(!$())throw new Error("Renderer is not ready");let K=d!==null;if(K&&Qa(),c=0,ii(),e instanceof hf)try{let ue=e.backend;ue?.device&&await ue.device.queue.onSubmittedWorkDone()}catch{await new Promise(ce=>setTimeout(ce,16))}K&&Yu()},Of=K=>{if(D||!$())return;let ue=qe?performance.now():0,ce=ue||performance.now(),ye;if(K!==void 0)ye=K;else{let Pt=c>0?(ce-c)/1e3:.016,ct=1e3,Lt=1e3/60-1;if(c>0){let Rt=ce-c;if(!v&&!E&&Rt<ct||(v||E)&&Rt<Lt)return}ye=Math.min(Pt,.1)}c=ce,qe&&performance.mark("shader-cpu-start"),Fe.deltaTime=ye,Fe.pointer.x=T,Fe.pointer.y=O,Fe.pointerActive=L,Fe.dimensions.width=M,Fe.dimensions.height=R,tm(),nm(),Ps();try{if(U)return;if(qe&&performance.mark("shader-gpu-start"),e.render(o,i),je&&!ke&&(ke=!0,je=!1,Ce&&queueMicrotask(Ce)),Pf(),qe){performance.mark("shader-gpu-end");let Pt=!1;if(e instanceof hf)try{let ct=e.backend;if(ct&&ct.get&&ct.get(e)){let Lt=ct.get(e);if(Lt?.timestampQuery){let Rt=Lt.timestampQuery.getResult();Rt!=null&&(Xe.recordGpuTime(Rt/1e6),Pt=!0)}}}catch{}try{if(!Pt){performance.measure("shader-gpu-time","shader-gpu-start","shader-gpu-end");let ct=performance.getEntriesByName("shader-gpu-time")[0];ct&&Xe.recordGpuTime(ct.duration),performance.clearMeasures("shader-gpu-time")}performance.clearMarks("shader-gpu-start"),performance.clearMarks("shader-gpu-end")}catch{}}if(qe){performance.mark("shader-cpu-end");try{performance.measure("shader-cpu-time","shader-cpu-start","shader-cpu-end");let ct=performance.getEntriesByName("shader-cpu-time")[0];ct&&Xe.recordCpuTime(ct.duration),performance.clearMarks("shader-cpu-start"),performance.clearMarks("shader-cpu-end"),performance.clearMeasures("shader-cpu-time")}catch{}let Pt=performance.now()-ue;Xe.recordFrame(Pt)}}catch(Pt){console.error("Render frame error:",Pt)}},ii=()=>Of(void 0),rm=async K=>{if(Of(K),e instanceof hf){let ue=e.backend;ue?.device&&await ue.device.queue.onSubmittedWorkDone()}},$u=()=>{let K=Math.max(0,s.nodes.size-1),ue=ze;Xe.updateNodeCounts(K,ue)},im=()=>{$u();let K=e?.info;return Xe.getStats(K)},Yu=()=>{if(!(d||!C))if(Xe.setRendering(!0),e&&"setAnimationLoop"in e&&typeof e.setAnimationLoop=="function")e.setAnimationLoop(()=>{ii()}),d=1;else{let K=()=>{ii(),d=requestAnimationFrame(K)};K()}},Qa=()=>{d&&(e&&"setAnimationLoop"in e&&typeof e.setAnimationLoop=="function"?e.setAnimationLoop(null):cancelAnimationFrame(d),d=null),Xe.setRendering(!1)},Zu=!1,ec=()=>{let K=!1;for(let ue of s.nodes.values()){if(ue.usesPointer){K=!0;break}if(ue.metadata.maps){for(let ce of Object.values(ue.metadata.maps))if(ce&&typeof ce=="object"&&"type"in ce){let ye=ce.type;if(ye==="mouse"||ye==="mouse-position"){K=!0;break}}if(K)break}}K&&!Zu?(Zu=!0,!B&&t&&(B=X_e.register({onMouseMove:G,onTouchMove:Ie,onMouseUp:$e,onTouchEnd:Ge}),t.addEventListener("mousedown",We),t.addEventListener("touchstart",Yt))):!K&&Zu&&(Zu=!1,B&&(B(),B=null),t&&(t.removeEventListener("mousedown",We),t.removeEventListener("touchstart",Yt)))},om=K=>{if(!t)return;F=t.getBoundingClientRect();let ue,ce;if("touches"in K){if(K.touches.length===0)return;ue=K.touches[0].clientX,ce=K.touches[0].clientY}else ue=K.clientX,ce=K.clientY;let ye=(ue-F.left)/F.width,Pt=(ce-F.top)/F.height;T=ye,O=Pt},G=K=>{!g||!t||om(K)},Ie=K=>{!g||!t||om(K)},$e=()=>{g&&(L=!1,d||ii())},Ge=()=>{g&&(L=!1,d||ii())},We=()=>{L=!0,d||ii()},Yt=()=>{L=!0,d||ii()},on=()=>{if(le.length===0)return;let K=[...le];le=[];for(let{id:ue,fragmentNodeFunc:ce,parentId:ye,metadata:Pt,uniforms:ct,componentDefinition:Lt,domCanvas:Rt}of K)ce&&gi(ue,ce,ye,Pt,ct,Lt,Rt)},$t=async({canvas:K,resizeTarget:ue,enablePerformanceTracking:ce=!0,colorSpace:ye="p3-linear",toneMapping:Pt="linear",context:ct,gpu:Lt,forceFullFrameRate:Rt=!1,observeElement:Qe=!0})=>{if(g||y)return;qe=ce,E=Rt,_=ye,ae(ye),y=!0,w=new AbortController;let kt=w;try{if(t=K,o=new Yf,o.background=null,i=new Ls(-1,1,1,-1,.1,10),i.position.z=1,i.lookAt(0,0,0),X=()=>{mn()},window.addEventListener("beforeunload",X),re=()=>{if(pe>0&&Ne>0){let Jt=pe,gn=Ne;pe=0,Ne=0,H(Jt,gn)}},window.addEventListener("resize",re,{passive:!0}),kt.signal.aborted)return;if(ct){console.log("[Shaders] Using provided WebGL context"),e=new E0({canvas:K,context:ct,antialias:!0,alpha:!0,depth:!1,stencil:!0,powerPreference:"high-performance"});let Jt=gn=>{gn.preventDefault(),Ue("webglcontextlost")};K.addEventListener("webglcontextlost",Jt,!1),q=()=>{K.removeEventListener("webglcontextlost",Jt,!1)}}else try{let Jt={canvas:K,antialias:!0,alpha:!0,depth:!1,powerPreference:"high-performance"};if(Lt?.device&&(Jt.device=Lt.device),e=new hf(Jt),r=!1,n=e.init(),n.finally(()=>{r=!0}).catch(()=>{}),await n,kt.signal.aborted)return;try{let gn=e.backend?.device;gn?.lost&&typeof gn.lost.then=="function"&&gn.lost.then(Nr=>{Nr?.reason!=="destroyed"&&Ue(Nr?.message||Nr?.reason||"unknown")}).catch(()=>{})}catch(gn){console.warn("[Shaders] could not attach WebGPU device.lost handler",gn)}}catch(Jt){if(kt.signal.aborted)return;console.warn("[Shaders] WebGPU initialization failed, falling back to WebGL:",Jt);try{let gn={canvas:K,antialias:!0,alpha:!0,depth:!1,stencil:!0,powerPreference:"high-performance"};if(ct&&(gn.context=ct),e=new E0(gn),kt.signal.aborted)return;let Nr=Qn=>{Qn.preventDefault(),Ue("webglcontextlost")};K.addEventListener("webglcontextlost",Nr,!1),q=()=>{K.removeEventListener("webglcontextlost",Nr,!1)}}catch(gn){if(kt.signal.aborted)return;console.error("[Shaders] Both WebGPU and WebGL initialization failed:",gn);return}}if(kt.signal.aborted)return;if(e.setPixelRatio(Math.min(window.devicePixelRatio,2)),e.outputColorSpace=gr,nt(Pt),l=new dp({transparent:!0}),l.fragmentNode=N(0,0,0,0),a=new qr(new pc(2,2),l),o.add(a),Qe){let Jt=ue??K.parentElement;Jt?(h=new ResizeObserver(te),h.observe(Jt)):console.warn("[Shaders] No element available for resize observation \u2014 use resize() manually"),f=new IntersectionObserver(Ee,{threshold:0}),f.observe(K)}let lt=K.getBoundingClientRect();F=lt,v=!Qe||lt.width>0&<.height>0&<.top<window.innerHeight&<.bottom>0&<.left<window.innerWidth&<.right>0,C=!0;let Un=lt.width>0?lt.width:K.width,pn=lt.height>0?lt.height:K.height,ft=Math.round(Un),or=Math.round(pn);if(ft>0&&or>0){pe=ft,Ne=or;let{width:Jt,height:gn}=P(ft,or);M=Jt,R=gn,S=!0,e.setSize(Jt,gn,!1);let Nr=Jt/gn,Qn=2,Pi=Qn*Nr;i.left=-Pi/2,i.right=Pi/2,i.top=Qn/2,i.bottom=-Qn/2,i.updateProjectionMatrix(),a.scale.set(Pi,Qn,1),ii()}else S=!1;if(C&&Yu(),!kt.signal.aborted){try{if(e.backend?.isWebGPUBackend===!0){let Jt=e.backend?.device?.limits?.maxTextureDimension2D;typeof Jt=="number"&&Jt>0&&(xe=Jt)}else{let Jt=e.capabilities?.maxTextureSize;typeof Jt=="number"&&Jt>0&&(xe=Jt)}}catch{}if(pe>0&&Ne>0){let Jt=pe,gn=Ne;pe=0,Ne=0,H(Jt,gn)}g=!0,we=!0,on()}}catch(lt){console.error("[Shaders] Initialization error:",lt)}finally{y=!1,w===kt&&(w=null)}},mn=()=>{if(w&&w.abort(),h&&(h.disconnect(),h=null),f&&(f.disconnect(),f=null),B&&(B(),B=null),q&&(q(),q=null),t&&(t.removeEventListener("mousedown",We),t.removeEventListener("touchstart",Yt)),X&&(window.removeEventListener("beforeunload",X),X=null),re&&(window.removeEventListener("resize",re),re=null),Qa(),be(),Je.forEach(ue=>{try{ue?.renderTarget?.dispose&&ue.renderTarget.dispose()}catch{}}),Je.clear(),s.nodes.clear(),s.rootId=null,s.idToNodeId.clear(),u.clear(),it.clear(),rt.clear(),st.clear(),ee.clear(),le=[],we=!1,Z!==null&&(cancelAnimationFrame(Z),Z=null),Oe=null,k=!1,a){o&&o.remove(a);try{a.geometry&&typeof a.geometry.dispose=="function"&&a.geometry.dispose()}catch{}try{a.material instanceof ci&&typeof a.material.dispose=="function"&&a.material.dispose()}catch{}}let K=ue=>{try{typeof ue.forceContextLoss=="function"&&ue.forceContextLoss()}catch{}if(typeof ue.dispose=="function")try{ue.dispose()}catch{}};if(e){let ue=e,ce=n;ce&&!r?ce.finally(()=>K(ue)).catch(()=>{}):K(ue)}n=null,r=!1,t=null,e=null,i=null,o=null,a=null,l=null,g=!1,y=!1,S=!1,w=null,M=0,R=0,v=!1,C=!0,T=.5,O=.5,L=!1,D=!1,Ce=null,ke=!1,je=!1,ve=null,Ke=!1};return{initialize:$t,cleanup:mn,registerNode:gi,removeNode:qu,updateUniformValue:Wu,updateNodeMetadata:ju,isInitialized:()=>g,resize:(K,ue)=>{!e||!i||!a||H(K,ue)},startAnimation:Yu,stopAnimation:Qa,renderAndWait:If,renderSyntheticFrame:rm,getPerformanceStats:im,getNodeRegistry:()=>({nodes:new Map(s.nodes)}),getRendererType:()=>e?e instanceof hf?"webgpu":"webgl":null,getInternalRenderer:()=>e??null,setForceFullFrameRate:K=>{let ue=E;return E=K,ue},setOnReady:K=>{Ce=K},setOnDeviceLost:K=>{ve=K},__testing:{needsTransformation:eN,findChildNodes:Wt,applyMaskIfNeeded:Le,applyNodeTransformation:er,getNodeRegistry:()=>s,getParentToChildren:()=>u}}}var yW,m_e,vW,p_e,xW,g_e,bW,v_e,_W,x_e,SW,wW,H_e,eN,W_e,j_e,X_e,tN,gt=z(()=>{"use strict";pi();Dt();Fi();ki();ut();yW=t=>ge(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))),m_e=t=>ge(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))),vW=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=mo(i).mul(Gt(At(i),p(1/3))),s=mo(o).mul(Gt(At(o),p(1/3))),u=mo(a).mul(Gt(At(a),p(1/3)));return ge(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)))},p_e=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=Gt(i,p(3)),s=Gt(o,p(3)),u=Gt(a,p(3));return ge(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)))},xW=t=>{let e=t.x,n=t.y,r=t.z;return ge(e,An(n.mul(n).add(r.mul(r))),dr(r,n))},g_e=t=>{let e=t.x,n=t.y,r=t.z;return ge(e,n.mul(He(r)),n.mul(me(r)))};bW=t=>ge(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))),v_e=t=>ge(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))),_W=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=mo(i).mul(Gt(At(i),p(1/3))),s=mo(o).mul(Gt(At(o),p(1/3))),u=mo(a).mul(Gt(At(a),p(1/3)));return ge(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)))},x_e=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=Gt(i,p(3)),s=Gt(o,p(3)),u=Gt(a,p(3));return ge(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)))};SW={normal:h_e,"normal-oklch":y_e,"normal-oklab":b_e,multiply:__e,screen:S_e,linearDodge:w_e,overlay:M_e,difference:T_e,colorDodge:E_e,exclusion:C_e,color:R_e,luminosity:A_e,darken:P_e,lighten:I_e,colorBurn:O_e,linearBurn:U_e,softLight:N_e,hardLight:D_e,hue:F_e,saturation:L_e};wW={alpha:k_e,alphaInverted:B_e,luminance:z_e,luminanceInverted:V_e};H_e=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,C)=>v+C,0)/n.length):0,o=r>0?e.reduce((v,C)=>v+C,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}},eN=t=>t?t.offsetX!==0||t.offsetY!==0||t.rotation!==0||t.scale!==1||t.anchorX!==.5||t.anchorY!==.5:!1,W_e=(t,e,n,r,i,o,a,l)=>{let s=r.mul(mi).div(p(180)),u=He(s),d=me(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)},j_e=new Map([[Me,PU],[Mt,IU]]);X_e=(()=>{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))}}}})(),tN=(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 yt=z(()=>{"use strict";Dt()});function $_e(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 Y_e(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 Z_e(){if(typeof window>"u"||typeof navigator>"u")return{domain:"unknown",browserFamily:"unknown",deviceType:"unknown"};let t=navigator.userAgent;return{domain:window.location.hostname,browserFamily:$_e(t),deviceType:Y_e(t)}}function J_e(t=!1,e=!1){return t||typeof navigator<"u"&&navigator.doNotTrack==="1"?!1:e?!0:Math.random()<Jh.samplingRate}function TW(t,e,n=!1,r=!1){return J_e(n,r)?new K_e(t,e,r?"preview":"shader"):null}function EW(){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 Jh,K_e,CW=z(()=>{"use strict";Jh={samplingRate:.05,collectionDuration:5e3,warmupDuration:500,sampleInterval:500,apiEndpoint:"https://shaders.com/api/telemetry"};K_e=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(Jh.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)}},Jh.sampleInterval),await this.sleep(Jh.collectionDuration-Jh.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=Z_e();return{sessionId:this.sessionId,timestamp:Date.now(),collectionDuration:Jh.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(Jh.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 Q_e,useEffect as KE,useId as eSe,useMemo as z0,useRef as zo}from"react";import{jsx as RW,jsxs as tSe}from"react/jsx-runtime";var V,nN,nSe,mt=z(()=>{"use strict";gt();yt();ut();CW();V=Q_e(null),nN=({children:t,disableTelemetry:e=!1,colorSpace:n="p3-linear",toneMapping:r="linear",isPreview:i=!1,onReady:o,style:a={},className:l="",...s})=>{let u=zo(null),d=zo(null),h=eSe(),f=z0(()=>"shader-root-"+h.replace(/[^a-zA-Z0-9_]/g,""),[h]),g=zo(null);g.current===null&&(g.current=MW());let y=zo(o);y.current=o,KE(()=>(g.current.setOnReady(()=>y.current?.()),()=>{g.current.setOnReady(null)}),[]);let _=zo(null),b=zo(null),S=zo(null),w=z0(()=>(D,B,q,X,re=null,xe=null,pe)=>{if(B===null){try{g.current.removeNode(D)}catch(Ne){console.warn("Error removing node:",Ne)}return}try{g.current.registerNode(D,B,q,X,re,xe,pe)}catch(Ne){console.error("Error registering node:",Ne,{id:D,parentId:q,metadata:X})}},[]),v=z0(()=>(D,B,q)=>{try{g.current.updateUniformValue(D,B,q)}catch(X){console.warn("Error updating uniform:",X)}},[]),C=z0(()=>(D,B)=>{try{g.current.updateNodeMetadata(D,B)}catch(q){console.warn("Error updating metadata:",q)}},[]),E=z0(()=>({shaderParentId:f,shaderNodeRegister:w,shaderUniformUpdate:v,shaderMetadataUpdate:C,shaderColorSpace:n}),[f,w,v,C,n]),M=zo(!1),R=zo(!1),c=zo(!1),m=zo(!1),x=zo(null),T=()=>{let D=()=>{if(c.current||!g.current){b.current=null;return}g.current.getPerformanceStats().fps>0?(_.current=TW(g.current,"2.5.133",e,i),_.current&&_.current.start(),b.current=null):b.current=window.setTimeout(D,500)};b.current=window.setTimeout(D,500)},O=async()=>{let D=d.current;if(!(!D||M.current||R.current)){R.current=!0;try{let B=g.current;B.isInitialized()||await B.initialize({canvas:D,colorSpace:n,toneMapping:r}),B.registerNode(f,({childNode:q})=>q||N(0,0,0,0),null,null,{}),M.current=!0,R.current=!1,S.current===null&&(S.current=EW()),S.current&&!_.current&&T()}catch(B){throw console.error("[Shader] Initialization failed:",B),R.current=!1,B}}},L=()=>{let D=u.current;!D||x.current||(x.current=new IntersectionObserver(B=>{let q=B[0];if(!q)return;let X=D.getBoundingClientRect(),re=q.isIntersecting&&X&&X.width>0&&X.height>0;re&&!m.current?(g.current.isInitialized()?(g.current.startAnimation(),S.current&&!_.current&&!b.current&&T()):O().catch(console.error),m.current=!0):!re&&m.current&&(g.current.stopAnimation(),m.current=!1)},{threshold:0}),x.current.observe(D))};KE(()=>{c.current=!1;let D=u.current;if(!D)return;let B=D.getBoundingClientRect();return B.width>0&&B.height>0?(O().catch(console.error),m.current=!0):m.current=!1,L(),()=>{if(!c.current){if(c.current=!0,_.current&&(_.current.stop(),_.current=null),b.current!==null&&(clearTimeout(b.current),b.current=null),x.current&&(x.current.disconnect(),x.current=null),g.current&&M.current)try{g.current.cleanup()}catch(q){console.warn("[Shader] Error during cleanup:",q)}M.current=!1,R.current=!1}}},[]);let F=zo(!0);KE(()=>{if(F.current){F.current=!1;return}if(g.current&&M.current){ae(n);try{g.current.cleanup(),M.current=!1,O().catch(console.error)}catch(D){console.error("[Shader] Error updating colorSpace:",D)}}},[n]);let U=zo(!0);return KE(()=>{if(U.current){U.current=!1;return}if(g.current&&M.current)try{g.current.cleanup(),M.current=!1,O().catch(console.error)}catch(D){console.error("[Shader] Error updating toneMapping:",D)}},[r]),RW(V.Provider,{value:E,children:tSe("div",{ref:u,className:"shader"+(l?" "+l:""),style:a,...s,children:[RW("canvas",{"data-renderer":"shaders",ref:d,style:{width:"100%",height:"100%",display:"block"}}),t]})})},nSe=nN});var AW=z(()=>{"use strict";_6()});var DW={};vt(DW,{ShaderComponent:()=>UW,default:()=>NW});import{useContext as rSe,useEffect as V0,useId as iSe,useMemo as G0,useRef as H0,useState as PW}from"react";import{createPortal as oSe}from"react-dom";import{jsx as IW,jsxs as sSe}from"react/jsx-runtime";function rN(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 aSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!rN(i)&&(n[r]=i);return n}var cSe,lSe,OW,UW,NW,iN=z(()=>{"use strict";mt();gt();yt();AW();cSe={display:"contents"},lSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},OW={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&&(OW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}UW=t=>{let e=rSe(V);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=iSe(),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(()=>aSe(t,OW),[t]),d=G0(()=>({...lSe,...t.transform}),[t.transform]),h=H0(null),f=!!Nc.capturesDOM,g=H0(null),[y,_]=PW(!1),[b,S]=PW(()=>({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=H0(void 0),v=H0(null);v.current===null&&(ae(a),v.current=de(Nc,u,s));let C=G0(()=>({...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,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]),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 E=H0({}),M=G0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&rN(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(rN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?oSe(IW("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 sSe(V.Provider,{value:C,children:[IW("span",{ref:h,style:cSe,"data-shader-id":s,children:!f&&t.children}),R]})},NW=UW});var FW=z(()=>{"use strict";S6()});var GW={};vt(GW,{ShaderComponent:()=>zW,default:()=>VW});import{useContext as uSe,useEffect as W0,useId as dSe,useMemo as j0,useRef as q0,useState as LW}from"react";import{createPortal as fSe}from"react-dom";import{jsx as kW,jsxs as hSe}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 mSe(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 pSe,gSe,BW,zW,VW,sN=z(()=>{"use strict";mt();gt();yt();FW();pSe={display:"contents"},gSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},BW={blendMode:"normal",visible:!0};try{ni&&ni.props&&Object.entries(ni.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(BW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}zW=t=>{let e=uSe(V);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=dSe(),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(()=>mSe(t,BW),[t]),d=j0(()=>({...gSe,...t.transform}),[t.transform]),h=q0(null),f=!!ni.capturesDOM,g=q0(null),[y,_]=LW(!1),[b,S]=LW(()=>({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}));W0(()=>{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&&(ae(a),v.current=de(ni,u,s));let C=j0(()=>({...e,shaderParentId:s}),[e,s]);W0(()=>{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,ni.fragmentNode,n,c,v.current,ni,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]),W0(()=>{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 E=q0({}),M=j0(()=>{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(W0(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),W0(()=>{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?fSe(kW("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 hSe(V.Provider,{value:C,children:[kW("span",{ref:h,style:pSe,"data-shader-id":s,children:!f&&t.children}),R]})},VW=zW});var HW=z(()=>{"use strict";U6()});var YW={};vt(YW,{ShaderComponent:()=>XW,default:()=>$W});import{useContext as ySe,useEffect as X0,useId as vSe,useMemo as $0,useRef as Y0,useState as WW}from"react";import{createPortal as xSe}from"react-dom";import{jsx as jW,jsxs as bSe}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 _Se(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 SSe,wSe,qW,XW,$W,cN=z(()=>{"use strict";mt();gt();yt();HW();SSe={display:"contents"},wSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},qW={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&&(qW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}XW=t=>{let e=ySe(V);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=vSe(),s=$0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=$0(()=>_Se(t,qW),[t]),d=$0(()=>({...wSe,...t.transform}),[t.transform]),h=Y0(null),f=!!Dc.capturesDOM,g=Y0(null),[y,_]=WW(!1),[b,S]=WW(()=>({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}));X0(()=>{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&&(ae(a),v.current=de(Dc,u,s));let C=$0(()=>({...e,shaderParentId:s}),[e,s]);X0(()=>{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]),X0(()=>{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 E=Y0({}),M=$0(()=>{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(X0(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),X0(()=>{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?xSe(jW("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 bSe(V.Provider,{value:C,children:[jW("span",{ref:h,style:SSe,"data-shader-id":s,children:!f&&t.children}),R]})},$W=XW});var ZW=z(()=>{"use strict";N6()});var nj={};vt(nj,{ShaderComponent:()=>ej,default:()=>tj});import{useContext as MSe,useEffect as Z0,useId as TSe,useMemo as K0,useRef as J0,useState as KW}from"react";import{createPortal as ESe}from"react-dom";import{jsx as JW,jsxs as CSe}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 RSe(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 ASe,PSe,QW,ej,tj,uN=z(()=>{"use strict";mt();gt();yt();ZW();ASe={display:"contents"},PSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},QW={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&&(QW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}ej=t=>{let e=MSe(V);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=K0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=K0(()=>RSe(t,QW),[t]),d=K0(()=>({...PSe,...t.transform}),[t.transform]),h=J0(null),f=!!Fc.capturesDOM,g=J0(null),[y,_]=KW(!1),[b,S]=KW(()=>({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}));Z0(()=>{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=J0(void 0),v=J0(null);v.current===null&&(ae(a),v.current=de(Fc,u,s));let C=K0(()=>({...e,shaderParentId:s}),[e,s]);Z0(()=>{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]),Z0(()=>{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 E=J0({}),M=K0(()=>{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(Z0(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Z0(()=>{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?ESe(JW("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 CSe(V.Provider,{value:C,children:[JW("span",{ref:h,style:ASe,"data-shader-id":s,children:!f&&t.children}),R]})},tj=ej});var rj=z(()=>{"use strict";D6()});var lj={};vt(lj,{ShaderComponent:()=>aj,default:()=>cj});import{useContext as ISe,useEffect as Q0,useId as OSe,useMemo as ey,useRef as ty,useState as ij}from"react";import{createPortal as USe}from"react-dom";import{jsx as oj,jsxs as NSe}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 DSe(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 FSe,LSe,sj,aj,cj,fN=z(()=>{"use strict";mt();gt();yt();rj();FSe={display:"contents"},LSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},sj={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&&(sj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}aj=t=>{let e=ISe(V);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=OSe(),s=ey(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ey(()=>DSe(t,sj),[t]),d=ey(()=>({...LSe,...t.transform}),[t.transform]),h=ty(null),f=!!Lc.capturesDOM,g=ty(null),[y,_]=ij(!1),[b,S]=ij(()=>({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}));Q0(()=>{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=ty(void 0),v=ty(null);v.current===null&&(ae(a),v.current=de(Lc,u,s));let C=ey(()=>({...e,shaderParentId:s}),[e,s]);Q0(()=>{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]),Q0(()=>{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 E=ty({}),M=ey(()=>{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(Q0(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Q0(()=>{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?USe(oj("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 NSe(V.Provider,{value:C,children:[oj("span",{ref:h,style:FSe,"data-shader-id":s,children:!f&&t.children}),R]})},cj=aj});var uj=z(()=>{"use strict";F6()});var gj={};vt(gj,{ShaderComponent:()=>mj,default:()=>pj});import{useContext as kSe,useEffect as ny,useId as BSe,useMemo as ry,useRef as iy,useState as dj}from"react";import{createPortal as zSe}from"react-dom";import{jsx as fj,jsxs as VSe}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 GSe(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 HSe,WSe,hj,mj,pj,mN=z(()=>{"use strict";mt();gt();yt();uj();HSe={display:"contents"},WSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},hj={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&&(hj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}mj=t=>{let e=kSe(V);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=BSe(),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(()=>GSe(t,hj),[t]),d=ry(()=>({...WSe,...t.transform}),[t.transform]),h=iy(null),f=!!kc.capturesDOM,g=iy(null),[y,_]=dj(!1),[b,S]=dj(()=>({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}));ny(()=>{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=iy(void 0),v=iy(null);v.current===null&&(ae(a),v.current=de(kc,u,s));let C=ry(()=>({...e,shaderParentId:s}),[e,s]);ny(()=>{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]),ny(()=>{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 E=iy({}),M=ry(()=>{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(ny(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ny(()=>{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?zSe(fj("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 VSe(V.Provider,{value:C,children:[fj("span",{ref:h,style:HSe,"data-shader-id":s,children:!f&&t.children}),R]})},pj=mj});var yj=z(()=>{"use strict";k6()});var wj={};vt(wj,{ShaderComponent:()=>_j,default:()=>Sj});import{useContext as jSe,useEffect as oy,useId as qSe,useMemo as sy,useRef as ay,useState as vj}from"react";import{createPortal as XSe}from"react-dom";import{jsx as xj,jsxs as $Se}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 YSe(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 ZSe,KSe,bj,_j,Sj,gN=z(()=>{"use strict";mt();gt();yt();yj();ZSe={display:"contents"},KSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},bj={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&&(bj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}_j=t=>{let e=jSe(V);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=qSe(),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(()=>YSe(t,bj),[t]),d=sy(()=>({...KSe,...t.transform}),[t.transform]),h=ay(null),f=!!Bc.capturesDOM,g=ay(null),[y,_]=vj(!1),[b,S]=vj(()=>({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=ay(void 0),v=ay(null);v.current===null&&(ae(a),v.current=de(Bc,u,s));let C=sy(()=>({...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,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]),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 E=ay({}),M=sy(()=>{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(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(pN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?XSe(xj("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 $Se(V.Provider,{value:C,children:[xj("span",{ref:h,style:ZSe,"data-shader-id":s,children:!f&&t.children}),R]})},Sj=_j});var Mj=z(()=>{"use strict";B6()});var Pj={};vt(Pj,{ShaderComponent:()=>Rj,default:()=>Aj});import{useContext as JSe,useEffect as cy,useId as QSe,useMemo as ly,useRef as uy,useState as Tj}from"react";import{createPortal as ewe}from"react-dom";import{jsx as Ej,jsxs as twe}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 nwe(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 rwe,iwe,Cj,Rj,Aj,vN=z(()=>{"use strict";mt();gt();yt();Mj();rwe={display:"contents"},iwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Cj={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&&(Cj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Rj=t=>{let e=JSe(V);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=QSe(),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(()=>nwe(t,Cj),[t]),d=ly(()=>({...iwe,...t.transform}),[t.transform]),h=uy(null),f=!!zc.capturesDOM,g=uy(null),[y,_]=Tj(!1),[b,S]=Tj(()=>({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}));cy(()=>{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=uy(void 0),v=uy(null);v.current===null&&(ae(a),v.current=de(zc,u,s));let C=ly(()=>({...e,shaderParentId:s}),[e,s]);cy(()=>{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]),cy(()=>{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 E=uy({}),M=ly(()=>{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(cy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),cy(()=>{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?ewe(Ej("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 twe(V.Provider,{value:C,children:[Ej("span",{ref:h,style:rwe,"data-shader-id":s,children:!f&&t.children}),R]})},Aj=Rj});var Ij=z(()=>{"use strict";z6()});var Lj={};vt(Lj,{ShaderComponent:()=>Dj,default:()=>Fj});import{useContext as owe,useEffect as dy,useId as swe,useMemo as fy,useRef as hy,useState as Oj}from"react";import{createPortal as awe}from"react-dom";import{jsx as Uj,jsxs as cwe}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 lwe(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 uwe,dwe,Nj,Dj,Fj,bN=z(()=>{"use strict";mt();gt();yt();Ij();uwe={display:"contents"},dwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Nj={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&&(Nj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Dj=t=>{let e=owe(V);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=swe(),s=fy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=fy(()=>lwe(t,Nj),[t]),d=fy(()=>({...dwe,...t.transform}),[t.transform]),h=hy(null),f=!!Vc.capturesDOM,g=hy(null),[y,_]=Oj(!1),[b,S]=Oj(()=>({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}));dy(()=>{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=hy(void 0),v=hy(null);v.current===null&&(ae(a),v.current=de(Vc,u,s));let C=fy(()=>({...e,shaderParentId:s}),[e,s]);dy(()=>{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]),dy(()=>{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 E=hy({}),M=fy(()=>{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(dy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),dy(()=>{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?awe(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 cwe(V.Provider,{value:C,children:[Uj("span",{ref:h,style:uwe,"data-shader-id":s,children:!f&&t.children}),R]})},Fj=Dj});var kj=z(()=>{"use strict";V6()});var Wj={};vt(Wj,{ShaderComponent:()=>Gj,default:()=>Hj});import{useContext as fwe,useEffect as my,useId as hwe,useMemo as py,useRef as gy,useState as Bj}from"react";import{createPortal as mwe}from"react-dom";import{jsx as zj,jsxs as pwe}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 gwe(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 ywe,vwe,Vj,Gj,Hj,SN=z(()=>{"use strict";mt();gt();yt();kj();ywe={display:"contents"},vwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Vj={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&&(Vj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Gj=t=>{let e=fwe(V);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=hwe(),s=py(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=py(()=>gwe(t,Vj),[t]),d=py(()=>({...vwe,...t.transform}),[t.transform]),h=gy(null),f=!!Gc.capturesDOM,g=gy(null),[y,_]=Bj(!1),[b,S]=Bj(()=>({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=gy(void 0),v=gy(null);v.current===null&&(ae(a),v.current=de(Gc,u,s));let C=py(()=>({...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,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]),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 E=gy({}),M=py(()=>{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(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(_N(T))return;T!==E.current[c]&&(i(s,c,T),E.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?mwe(zj("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 pwe(V.Provider,{value:C,children:[zj("span",{ref:h,style:ywe,"data-shader-id":s,children:!f&&t.children}),R]})},Hj=Gj});var jj=z(()=>{"use strict";e8()});var Kj={};vt(Kj,{ShaderComponent:()=>Yj,default:()=>Zj});import{useContext as xwe,useEffect as yy,useId as bwe,useMemo as vy,useRef as xy,useState as qj}from"react";import{createPortal as _we}from"react-dom";import{jsx as Xj,jsxs as Swe}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 wwe(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 Mwe,Twe,$j,Yj,Zj,MN=z(()=>{"use strict";mt();gt();yt();jj();Mwe={display:"contents"},Twe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},$j={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&&($j[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Yj=t=>{let e=xwe(V);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=bwe(),s=vy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=vy(()=>wwe(t,$j),[t]),d=vy(()=>({...Twe,...t.transform}),[t.transform]),h=xy(null),f=!!tl.capturesDOM,g=xy(null),[y,_]=qj(!1),[b,S]=qj(()=>({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}));yy(()=>{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&&(ae(a),v.current=de(tl,u,s));let C=vy(()=>({...e,shaderParentId:s}),[e,s]);yy(()=>{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]),yy(()=>{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 E=xy({}),M=vy(()=>{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(yy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),yy(()=>{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?_we(Xj("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 Swe(V.Provider,{value:C,children:[Xj("span",{ref:h,style:Mwe,"data-shader-id":s,children:!f&&t.children}),R]})},Zj=Yj});var Jj=z(()=>{"use strict";G6()});var i7={};vt(i7,{ShaderComponent:()=>n7,default:()=>r7});import{useContext as Ewe,useEffect as by,useId as Cwe,useMemo as _y,useRef as Sy,useState as Qj}from"react";import{createPortal as Rwe}from"react-dom";import{jsx as e7,jsxs as Awe}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 Pwe(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 Iwe,Owe,t7,n7,r7,EN=z(()=>{"use strict";mt();gt();yt();Jj();Iwe={display:"contents"},Owe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},t7={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&&(t7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}n7=t=>{let e=Ewe(V);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=Cwe(),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(()=>Pwe(t,t7),[t]),d=_y(()=>({...Owe,...t.transform}),[t.transform]),h=Sy(null),f=!!Hc.capturesDOM,g=Sy(null),[y,_]=Qj(!1),[b,S]=Qj(()=>({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=Sy(void 0),v=Sy(null);v.current===null&&(ae(a),v.current=de(Hc,u,s));let C=_y(()=>({...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,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]),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 E=Sy({}),M=_y(()=>{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(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(TN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?Rwe(e7("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 Awe(V.Provider,{value:C,children:[e7("span",{ref:h,style:Iwe,"data-shader-id":s,children:!f&&t.children}),R]})},r7=n7});var o7=z(()=>{"use strict";H6()});var d7={};vt(d7,{ShaderComponent:()=>l7,default:()=>u7});import{useContext as Uwe,useEffect as wy,useId as Nwe,useMemo as My,useRef as Ty,useState as s7}from"react";import{createPortal as Dwe}from"react-dom";import{jsx as a7,jsxs as Fwe}from"react/jsx-runtime";function CN(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 Lwe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!CN(i)&&(n[r]=i);return n}var kwe,Bwe,c7,l7,u7,RN=z(()=>{"use strict";mt();gt();yt();o7();kwe={display:"contents"},Bwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},c7={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&&(c7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}l7=t=>{let e=Uwe(V);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=Nwe(),s=My(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=My(()=>Lwe(t,c7),[t]),d=My(()=>({...Bwe,...t.transform}),[t.transform]),h=Ty(null),f=!!Wc.capturesDOM,g=Ty(null),[y,_]=s7(!1),[b,S]=s7(()=>({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}));wy(()=>{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=Ty(void 0),v=Ty(null);v.current===null&&(ae(a),v.current=de(Wc,u,s));let C=My(()=>({...e,shaderParentId:s}),[e,s]);wy(()=>{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]),wy(()=>{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 E=Ty({}),M=My(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&CN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(wy(()=>{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(CN(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),wy(()=>{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(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 Fwe(V.Provider,{value:C,children:[a7("span",{ref:h,style:kwe,"data-shader-id":s,children:!f&&t.children}),R]})},u7=l7});var f7=z(()=>{"use strict";W6()});var v7={};vt(v7,{ShaderComponent:()=>g7,default:()=>y7});import{useContext as zwe,useEffect as Ey,useId as Vwe,useMemo as Cy,useRef as Ry,useState as h7}from"react";import{createPortal as Gwe}from"react-dom";import{jsx as m7,jsxs as Hwe}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 Wwe(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 jwe,qwe,p7,g7,y7,PN=z(()=>{"use strict";mt();gt();yt();f7();jwe={display:"contents"},qwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},p7={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&&(p7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}g7=t=>{let e=zwe(V);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=Vwe(),s=Cy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Cy(()=>Wwe(t,p7),[t]),d=Cy(()=>({...qwe,...t.transform}),[t.transform]),h=Ry(null),f=!!jc.capturesDOM,g=Ry(null),[y,_]=h7(!1),[b,S]=h7(()=>({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=Ry(void 0),v=Ry(null);v.current===null&&(ae(a),v.current=de(jc,u,s));let C=Cy(()=>({...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 E=Ry({}),M=Cy(()=>{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(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(AN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?Gwe(m7("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 Hwe(V.Provider,{value:C,children:[m7("span",{ref:h,style:jwe,"data-shader-id":s,children:!f&&t.children}),R]})},y7=g7});var x7=z(()=>{"use strict";j6()});var T7={};vt(T7,{ShaderComponent:()=>w7,default:()=>M7});import{useContext as Xwe,useEffect as Ay,useId as $we,useMemo as Py,useRef as Iy,useState as b7}from"react";import{createPortal as Ywe}from"react-dom";import{jsx as _7,jsxs as Zwe}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 Kwe(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 Jwe,Qwe,S7,w7,M7,ON=z(()=>{"use strict";mt();gt();yt();x7();Jwe={display:"contents"},Qwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},S7={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&&(S7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}w7=t=>{let e=Xwe(V);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=$we(),s=Py(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Py(()=>Kwe(t,S7),[t]),d=Py(()=>({...Qwe,...t.transform}),[t.transform]),h=Iy(null),f=!!qc.capturesDOM,g=Iy(null),[y,_]=b7(!1),[b,S]=b7(()=>({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}));Ay(()=>{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=Iy(void 0),v=Iy(null);v.current===null&&(ae(a),v.current=de(qc,u,s));let C=Py(()=>({...e,shaderParentId:s}),[e,s]);Ay(()=>{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]),Ay(()=>{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 E=Iy({}),M=Py(()=>{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(Ay(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ay(()=>{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?Ywe(_7("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(V.Provider,{value:C,children:[_7("span",{ref:h,style:Jwe,"data-shader-id":s,children:!f&&t.children}),R]})},M7=w7});var E7=z(()=>{"use strict";q6()});var O7={};vt(O7,{ShaderComponent:()=>P7,default:()=>I7});import{useContext as eMe,useEffect as Oy,useId as tMe,useMemo as Uy,useRef as Ny,useState as C7}from"react";import{createPortal as nMe}from"react-dom";import{jsx as R7,jsxs as rMe}from"react/jsx-runtime";function UN(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 iMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!UN(i)&&(n[r]=i);return n}var oMe,sMe,A7,P7,I7,NN=z(()=>{"use strict";mt();gt();yt();E7();oMe={display:"contents"},sMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},A7={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&&(A7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}P7=t=>{let e=eMe(V);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=tMe(),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(()=>iMe(t,A7),[t]),d=Uy(()=>({...sMe,...t.transform}),[t.transform]),h=Ny(null),f=!!Xc.capturesDOM,g=Ny(null),[y,_]=C7(!1),[b,S]=C7(()=>({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=Ny(void 0),v=Ny(null);v.current===null&&(ae(a),v.current=de(Xc,u,s));let C=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 E=Ny({}),M=Uy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&UN(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(UN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?nMe(R7("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(V.Provider,{value:C,children:[R7("span",{ref:h,style:oMe,"data-shader-id":s,children:!f&&t.children}),R]})},I7=P7});var U7=z(()=>{"use strict";X6()});var B7={};vt(B7,{ShaderComponent:()=>L7,default:()=>k7});import{useContext as aMe,useEffect as Dy,useId as cMe,useMemo as Fy,useRef as Ly,useState as N7}from"react";import{createPortal as lMe}from"react-dom";import{jsx as D7,jsxs as uMe}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 dMe(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 fMe,hMe,F7,L7,k7,FN=z(()=>{"use strict";mt();gt();yt();U7();fMe={display:"contents"},hMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},F7={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&&(F7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}L7=t=>{let e=aMe(V);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=Fy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Fy(()=>dMe(t,F7),[t]),d=Fy(()=>({...hMe,...t.transform}),[t.transform]),h=Ly(null),f=!!$c.capturesDOM,g=Ly(null),[y,_]=N7(!1),[b,S]=N7(()=>({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}));Dy(()=>{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=Ly(void 0),v=Ly(null);v.current===null&&(ae(a),v.current=de($c,u,s));let C=Fy(()=>({...e,shaderParentId:s}),[e,s]);Dy(()=>{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]),Dy(()=>{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 E=Ly({}),M=Fy(()=>{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(Dy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Dy(()=>{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?lMe(D7("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 uMe(V.Provider,{value:C,children:[D7("span",{ref:h,style:fMe,"data-shader-id":s,children:!f&&t.children}),R]})},k7=L7});var z7=z(()=>{"use strict";$6()});var q7={};vt(q7,{ShaderComponent:()=>W7,default:()=>j7});import{useContext as mMe,useEffect as ky,useId as pMe,useMemo as By,useRef as zy,useState as V7}from"react";import{createPortal as gMe}from"react-dom";import{jsx as G7,jsxs as yMe}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 vMe(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 xMe,bMe,H7,W7,j7,kN=z(()=>{"use strict";mt();gt();yt();z7();xMe={display:"contents"},bMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},H7={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&&(H7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}W7=t=>{let e=mMe(V);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=pMe(),s=By(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=By(()=>vMe(t,H7),[t]),d=By(()=>({...bMe,...t.transform}),[t.transform]),h=zy(null),f=!!Yc.capturesDOM,g=zy(null),[y,_]=V7(!1),[b,S]=V7(()=>({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=zy(void 0),v=zy(null);v.current===null&&(ae(a),v.current=de(Yc,u,s));let C=By(()=>({...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,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]),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 E=zy({}),M=By(()=>{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(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(LN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?gMe(G7("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(V.Provider,{value:C,children:[G7("span",{ref:h,style:xMe,"data-shader-id":s,children:!f&&t.children}),R]})},j7=W7});var X7=z(()=>{"use strict";Y6()});var Q7={};vt(Q7,{ShaderComponent:()=>K7,default:()=>J7});import{useContext as _Me,useEffect as Vy,useId as SMe,useMemo as Gy,useRef as Hy,useState as $7}from"react";import{createPortal as wMe}from"react-dom";import{jsx as Y7,jsxs as MMe}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 TMe(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 EMe,CMe,Z7,K7,J7,zN=z(()=>{"use strict";mt();gt();yt();X7();EMe={display:"contents"},CMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Z7={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&&(Z7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}K7=t=>{let e=_Me(V);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=SMe(),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(()=>TMe(t,Z7),[t]),d=Gy(()=>({...CMe,...t.transform}),[t.transform]),h=Hy(null),f=!!Zc.capturesDOM,g=Hy(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}));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=Hy(void 0),v=Hy(null);v.current===null&&(ae(a),v.current=de(Zc,u,s));let C=Gy(()=>({...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,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]),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 E=Hy({}),M=Gy(()=>{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(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(BN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?wMe(Y7("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(V.Provider,{value:C,children:[Y7("span",{ref:h,style:EMe,"data-shader-id":s,children:!f&&t.children}),R]})},J7=K7});var eq=z(()=>{"use strict";Z6()});var sq={};vt(sq,{ShaderComponent:()=>iq,default:()=>oq});import{useContext as RMe,useEffect as Wy,useId as AMe,useMemo as jy,useRef as qy,useState as tq}from"react";import{createPortal as PMe}from"react-dom";import{jsx as nq,jsxs as IMe}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 OMe(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 UMe,NMe,rq,iq,oq,GN=z(()=>{"use strict";mt();gt();yt();eq();UMe={display:"contents"},NMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},rq={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&&(rq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}iq=t=>{let e=RMe(V);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=AMe(),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(()=>OMe(t,rq),[t]),d=jy(()=>({...NMe,...t.transform}),[t.transform]),h=qy(null),f=!!Kc.capturesDOM,g=qy(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}));Wy(()=>{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&&(ae(a),v.current=de(Kc,u,s));let C=jy(()=>({...e,shaderParentId:s}),[e,s]);Wy(()=>{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]),Wy(()=>{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 E=qy({}),M=jy(()=>{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(Wy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Wy(()=>{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?PMe(nq("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 IMe(V.Provider,{value:C,children:[nq("span",{ref:h,style:UMe,"data-shader-id":s,children:!f&&t.children}),R]})},oq=iq});var aq=z(()=>{"use strict";K6()});var hq={};vt(hq,{ShaderComponent:()=>dq,default:()=>fq});import{useContext as DMe,useEffect as Xy,useId as FMe,useMemo as $y,useRef as Yy,useState as cq}from"react";import{createPortal as LMe}from"react-dom";import{jsx as lq,jsxs as kMe}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 BMe(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 zMe,VMe,uq,dq,fq,WN=z(()=>{"use strict";mt();gt();yt();aq();zMe={display:"contents"},VMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},uq={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&&(uq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}dq=t=>{let e=DMe(V);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=$y(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=$y(()=>BMe(t,uq),[t]),d=$y(()=>({...VMe,...t.transform}),[t.transform]),h=Yy(null),f=!!Jc.capturesDOM,g=Yy(null),[y,_]=cq(!1),[b,S]=cq(()=>({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}));Xy(()=>{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&&(ae(a),v.current=de(Jc,u,s));let C=$y(()=>({...e,shaderParentId:s}),[e,s]);Xy(()=>{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]),Xy(()=>{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 E=Yy({}),M=$y(()=>{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(Xy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Xy(()=>{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?LMe(lq("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 kMe(V.Provider,{value:C,children:[lq("span",{ref:h,style:zMe,"data-shader-id":s,children:!f&&t.children}),R]})},fq=dq});var mq=z(()=>{"use strict";J6()});var bq={};vt(bq,{ShaderComponent:()=>vq,default:()=>xq});import{useContext as GMe,useEffect as Zy,useId as HMe,useMemo as Ky,useRef as Jy,useState as pq}from"react";import{createPortal as WMe}from"react-dom";import{jsx as gq,jsxs as jMe}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 qMe(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 XMe,$Me,yq,vq,xq,qN=z(()=>{"use strict";mt();gt();yt();mq();XMe={display:"contents"},$Me={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},yq={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&&(yq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}vq=t=>{let e=GMe(V);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=HMe(),s=Ky(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ky(()=>qMe(t,yq),[t]),d=Ky(()=>({...$Me,...t.transform}),[t.transform]),h=Jy(null),f=!!Qc.capturesDOM,g=Jy(null),[y,_]=pq(!1),[b,S]=pq(()=>({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}));Zy(()=>{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=Jy(void 0),v=Jy(null);v.current===null&&(ae(a),v.current=de(Qc,u,s));let C=Ky(()=>({...e,shaderParentId:s}),[e,s]);Zy(()=>{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]),Zy(()=>{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 E=Jy({}),M=Ky(()=>{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(Zy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Zy(()=>{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?WMe(gq("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 jMe(V.Provider,{value:C,children:[gq("span",{ref:h,style:XMe,"data-shader-id":s,children:!f&&t.children}),R]})},xq=vq});var _q=z(()=>{"use strict";Q6()});var Cq={};vt(Cq,{ShaderComponent:()=>Tq,default:()=>Eq});import{useContext as YMe,useEffect as Qy,useId as ZMe,useMemo as ev,useRef as tv,useState as Sq}from"react";import{createPortal as KMe}from"react-dom";import{jsx as wq,jsxs as JMe}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 QMe(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 e1e,t1e,Mq,Tq,Eq,$N=z(()=>{"use strict";mt();gt();yt();_q();e1e={display:"contents"},t1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Mq={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&&(Mq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Tq=t=>{let e=YMe(V);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=ev(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ev(()=>QMe(t,Mq),[t]),d=ev(()=>({...t1e,...t.transform}),[t.transform]),h=tv(null),f=!!el.capturesDOM,g=tv(null),[y,_]=Sq(!1),[b,S]=Sq(()=>({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}));Qy(()=>{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=tv(void 0),v=tv(null);v.current===null&&(ae(a),v.current=de(el,u,s));let C=ev(()=>({...e,shaderParentId:s}),[e,s]);Qy(()=>{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]),Qy(()=>{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 E=tv({}),M=ev(()=>{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(Qy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Qy(()=>{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?KMe(wq("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 JMe(V.Provider,{value:C,children:[wq("span",{ref:h,style:e1e,"data-shader-id":s,children:!f&&t.children}),R]})},Eq=Tq});var Rq=z(()=>{"use strict";n8()});var Nq={};vt(Nq,{ShaderComponent:()=>Oq,default:()=>Uq});import{useContext as n1e,useEffect as nv,useId as r1e,useMemo as rv,useRef as iv,useState as Aq}from"react";import{createPortal as i1e}from"react-dom";import{jsx as Pq,jsxs as o1e}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 s1e(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 a1e,c1e,Iq,Oq,Uq,ZN=z(()=>{"use strict";mt();gt();yt();Rq();a1e={display:"contents"},c1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Iq={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&&(Iq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Oq=t=>{let e=n1e(V);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(()=>s1e(t,Iq),[t]),d=rv(()=>({...c1e,...t.transform}),[t.transform]),h=iv(null),f=!!nl.capturesDOM,g=iv(null),[y,_]=Aq(!1),[b,S]=Aq(()=>({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}));nv(()=>{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=iv(void 0),v=iv(null);v.current===null&&(ae(a),v.current=de(nl,u,s));let C=rv(()=>({...e,shaderParentId:s}),[e,s]);nv(()=>{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]),nv(()=>{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 E=iv({}),M=rv(()=>{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(nv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),nv(()=>{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?i1e(Pq("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 o1e(V.Provider,{value:C,children:[Pq("span",{ref:h,style:a1e,"data-shader-id":s,children:!f&&t.children}),R]})},Uq=Oq});var Dq=z(()=>{"use strict";r8()});var Vq={};vt(Vq,{ShaderComponent:()=>Bq,default:()=>zq});import{useContext as l1e,useEffect as ov,useId as u1e,useMemo as sv,useRef as av,useState as Fq}from"react";import{createPortal as d1e}from"react-dom";import{jsx as Lq,jsxs as f1e}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 h1e(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 m1e,p1e,kq,Bq,zq,JN=z(()=>{"use strict";mt();gt();yt();Dq();m1e={display:"contents"},p1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},kq={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&&(kq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Bq=t=>{let e=l1e(V);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=u1e(),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(()=>h1e(t,kq),[t]),d=sv(()=>({...p1e,...t.transform}),[t.transform]),h=av(null),f=!!rl.capturesDOM,g=av(null),[y,_]=Fq(!1),[b,S]=Fq(()=>({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=av(void 0),v=av(null);v.current===null&&(ae(a),v.current=de(rl,u,s));let C=sv(()=>({...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,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]),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 E=av({}),M=sv(()=>{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(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(KN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?d1e(Lq("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 f1e(V.Provider,{value:C,children:[Lq("span",{ref:h,style:m1e,"data-shader-id":s,children:!f&&t.children}),R]})},zq=Bq});var Gq=z(()=>{"use strict";i8()});var $q={};vt($q,{ShaderComponent:()=>qq,default:()=>Xq});import{useContext as g1e,useEffect as cv,useId as y1e,useMemo as lv,useRef as uv,useState as Hq}from"react";import{createPortal as v1e}from"react-dom";import{jsx as Wq,jsxs as x1e}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 b1e(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 _1e,S1e,jq,qq,Xq,e3=z(()=>{"use strict";mt();gt();yt();Gq();_1e={display:"contents"},S1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},jq={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&&(jq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}qq=t=>{let e=g1e(V);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(()=>b1e(t,jq),[t]),d=lv(()=>({...S1e,...t.transform}),[t.transform]),h=uv(null),f=!!il.capturesDOM,g=uv(null),[y,_]=Hq(!1),[b,S]=Hq(()=>({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}));cv(()=>{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=uv(void 0),v=uv(null);v.current===null&&(ae(a),v.current=de(il,u,s));let C=lv(()=>({...e,shaderParentId:s}),[e,s]);cv(()=>{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]),cv(()=>{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 E=uv({}),M=lv(()=>{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(cv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),cv(()=>{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?v1e(Wq("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 x1e(V.Provider,{value:C,children:[Wq("span",{ref:h,style:_1e,"data-shader-id":s,children:!f&&t.children}),R]})},Xq=qq});var Yq=z(()=>{"use strict";c8()});var tX={};vt(tX,{ShaderComponent:()=>Qq,default:()=>eX});import{useContext as w1e,useEffect as dv,useId as M1e,useMemo as fv,useRef as hv,useState as Zq}from"react";import{createPortal as T1e}from"react-dom";import{jsx as Kq,jsxs as E1e}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 C1e(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 R1e,A1e,Jq,Qq,eX,n3=z(()=>{"use strict";mt();gt();yt();Yq();R1e={display:"contents"},A1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Jq={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&&(Jq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Qq=t=>{let e=w1e(V);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=fv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=fv(()=>C1e(t,Jq),[t]),d=fv(()=>({...A1e,...t.transform}),[t.transform]),h=hv(null),f=!!cl.capturesDOM,g=hv(null),[y,_]=Zq(!1),[b,S]=Zq(()=>({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}));dv(()=>{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=hv(void 0),v=hv(null);v.current===null&&(ae(a),v.current=de(cl,u,s));let C=fv(()=>({...e,shaderParentId:s}),[e,s]);dv(()=>{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]),dv(()=>{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 E=hv({}),M=fv(()=>{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(dv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),dv(()=>{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(Kq("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 E1e(V.Provider,{value:C,children:[Kq("span",{ref:h,style:R1e,"data-shader-id":s,children:!f&&t.children}),R]})},eX=Qq});var nX=z(()=>{"use strict";o8()});var cX={};vt(cX,{ShaderComponent:()=>sX,default:()=>aX});import{useContext as P1e,useEffect as mv,useId as I1e,useMemo as pv,useRef as gv,useState as rX}from"react";import{createPortal as O1e}from"react-dom";import{jsx as iX,jsxs as U1e}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 N1e(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 D1e,F1e,oX,sX,aX,i3=z(()=>{"use strict";mt();gt();yt();nX();D1e={display:"contents"},F1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},oX={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&&(oX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}sX=t=>{let e=P1e(V);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=I1e(),s=pv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=pv(()=>N1e(t,oX),[t]),d=pv(()=>({...F1e,...t.transform}),[t.transform]),h=gv(null),f=!!ol.capturesDOM,g=gv(null),[y,_]=rX(!1),[b,S]=rX(()=>({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=gv(void 0),v=gv(null);v.current===null&&(ae(a),v.current=de(ol,u,s));let C=pv(()=>({...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,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]),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 E=gv({}),M=pv(()=>{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(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(r3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?O1e(iX("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 U1e(V.Provider,{value:C,children:[iX("span",{ref:h,style:D1e,"data-shader-id":s,children:!f&&t.children}),R]})},aX=sX});var lX=z(()=>{"use strict";s8()});var pX={};vt(pX,{ShaderComponent:()=>hX,default:()=>mX});import{useContext as L1e,useEffect as yv,useId as k1e,useMemo as vv,useRef as xv,useState as uX}from"react";import{createPortal as B1e}from"react-dom";import{jsx as dX,jsxs as z1e}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 V1e(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 G1e,H1e,fX,hX,mX,s3=z(()=>{"use strict";mt();gt();yt();lX();G1e={display:"contents"},H1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},fX={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&&(fX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}hX=t=>{let e=L1e(V);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=k1e(),s=vv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=vv(()=>V1e(t,fX),[t]),d=vv(()=>({...H1e,...t.transform}),[t.transform]),h=xv(null),f=!!sl.capturesDOM,g=xv(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}));yv(()=>{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&&(ae(a),v.current=de(sl,u,s));let C=vv(()=>({...e,shaderParentId:s}),[e,s]);yv(()=>{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]),yv(()=>{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 E=xv({}),M=vv(()=>{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(yv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),yv(()=>{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?B1e(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 z1e(V.Provider,{value:C,children:[dX("span",{ref:h,style:G1e,"data-shader-id":s,children:!f&&t.children}),R]})},mX=hX});var gX=z(()=>{"use strict";a8()});var SX={};vt(SX,{ShaderComponent:()=>bX,default:()=>_X});import{useContext as W1e,useEffect as bv,useId as j1e,useMemo as _v,useRef as Sv,useState as yX}from"react";import{createPortal as q1e}from"react-dom";import{jsx as vX,jsxs as X1e}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 $1e(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 Y1e,Z1e,xX,bX,_X,c3=z(()=>{"use strict";mt();gt();yt();gX();Y1e={display:"contents"},Z1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},xX={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&&(xX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}bX=t=>{let e=W1e(V);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=j1e(),s=_v(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=_v(()=>$1e(t,xX),[t]),d=_v(()=>({...Z1e,...t.transform}),[t.transform]),h=Sv(null),f=!!al.capturesDOM,g=Sv(null),[y,_]=yX(!1),[b,S]=yX(()=>({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=Sv(void 0),v=Sv(null);v.current===null&&(ae(a),v.current=de(al,u,s));let C=_v(()=>({...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,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]),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 E=Sv({}),M=_v(()=>{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(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(a3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?q1e(vX("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 X1e(V.Provider,{value:C,children:[vX("span",{ref:h,style:Y1e,"data-shader-id":s,children:!f&&t.children}),R]})},_X=bX});var wX=z(()=>{"use strict";l8()});var AX={};vt(AX,{ShaderComponent:()=>CX,default:()=>RX});import{useContext as K1e,useEffect as wv,useId as J1e,useMemo as Mv,useRef as Tv,useState as MX}from"react";import{createPortal as Q1e}from"react-dom";import{jsx as TX,jsxs as eTe}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 tTe(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 nTe,rTe,EX,CX,RX,u3=z(()=>{"use strict";mt();gt();yt();wX();nTe={display:"contents"},rTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},EX={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&&(EX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}CX=t=>{let e=K1e(V);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=J1e(),s=Mv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Mv(()=>tTe(t,EX),[t]),d=Mv(()=>({...rTe,...t.transform}),[t.transform]),h=Tv(null),f=!!ll.capturesDOM,g=Tv(null),[y,_]=MX(!1),[b,S]=MX(()=>({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}));wv(()=>{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=Tv(void 0),v=Tv(null);v.current===null&&(ae(a),v.current=de(ll,u,s));let C=Mv(()=>({...e,shaderParentId:s}),[e,s]);wv(()=>{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]),wv(()=>{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 E=Tv({}),M=Mv(()=>{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(wv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),wv(()=>{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?Q1e(TX("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 eTe(V.Provider,{value:C,children:[TX("span",{ref:h,style:nTe,"data-shader-id":s,children:!f&&t.children}),R]})},RX=CX});var PX=z(()=>{"use strict";f8()});var FX={};vt(FX,{ShaderComponent:()=>NX,default:()=>DX});import{useContext as iTe,useEffect as Ev,useId as oTe,useMemo as Cv,useRef as Rv,useState as IX}from"react";import{createPortal as sTe}from"react-dom";import{jsx as OX,jsxs as aTe}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 cTe(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 lTe,uTe,UX,NX,DX,f3=z(()=>{"use strict";mt();gt();yt();PX();lTe={display:"contents"},uTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},UX={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&&(UX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}NX=t=>{let e=iTe(V);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=oTe(),s=Cv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Cv(()=>cTe(t,UX),[t]),d=Cv(()=>({...uTe,...t.transform}),[t.transform]),h=Rv(null),f=!!ul.capturesDOM,g=Rv(null),[y,_]=IX(!1),[b,S]=IX(()=>({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=Rv(void 0),v=Rv(null);v.current===null&&(ae(a),v.current=de(ul,u,s));let C=Cv(()=>({...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,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]),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 E=Rv({}),M=Cv(()=>{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(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(d3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?sTe(OX("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 aTe(V.Provider,{value:C,children:[OX("span",{ref:h,style:lTe,"data-shader-id":s,children:!f&&t.children}),R]})},DX=NX});var LX=z(()=>{"use strict";h8()});var HX={};vt(HX,{ShaderComponent:()=>VX,default:()=>GX});import{useContext as dTe,useEffect as Av,useId as fTe,useMemo as Pv,useRef as Iv,useState as kX}from"react";import{createPortal as hTe}from"react-dom";import{jsx as BX,jsxs as mTe}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 pTe(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 gTe,yTe,zX,VX,GX,m3=z(()=>{"use strict";mt();gt();yt();LX();gTe={display:"contents"},yTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},zX={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&&(zX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}VX=t=>{let e=dTe(V);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=fTe(),s=Pv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Pv(()=>pTe(t,zX),[t]),d=Pv(()=>({...yTe,...t.transform}),[t.transform]),h=Iv(null),f=!!dl.capturesDOM,g=Iv(null),[y,_]=kX(!1),[b,S]=kX(()=>({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}));Av(()=>{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=Iv(void 0),v=Iv(null);v.current===null&&(ae(a),v.current=de(dl,u,s));let C=Pv(()=>({...e,shaderParentId:s}),[e,s]);Av(()=>{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]),Av(()=>{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 E=Iv({}),M=Pv(()=>{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(Av(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Av(()=>{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?hTe(BX("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 mTe(V.Provider,{value:C,children:[BX("span",{ref:h,style:gTe,"data-shader-id":s,children:!f&&t.children}),R]})},GX=VX});var WX=z(()=>{"use strict";m8()});var ZX={};vt(ZX,{ShaderComponent:()=>$X,default:()=>YX});import{useContext as vTe,useEffect as Ov,useId as xTe,useMemo as Uv,useRef as Nv,useState as jX}from"react";import{createPortal as bTe}from"react-dom";import{jsx as qX,jsxs as _Te}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 STe(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 wTe,MTe,XX,$X,YX,g3=z(()=>{"use strict";mt();gt();yt();WX();wTe={display:"contents"},MTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},XX={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&&(XX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}$X=t=>{let e=vTe(V);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=xTe(),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(()=>STe(t,XX),[t]),d=Uv(()=>({...MTe,...t.transform}),[t.transform]),h=Nv(null),f=!!fl.capturesDOM,g=Nv(null),[y,_]=jX(!1),[b,S]=jX(()=>({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=Nv(void 0),v=Nv(null);v.current===null&&(ae(a),v.current=de(fl,u,s));let C=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,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]),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 E=Nv({}),M=Uv(()=>{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(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(p3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?bTe(qX("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 _Te(V.Provider,{value:C,children:[qX("span",{ref:h,style:wTe,"data-shader-id":s,children:!f&&t.children}),R]})},YX=$X});var KX=z(()=>{"use strict";g8()});var r$={};vt(r$,{ShaderComponent:()=>t$,default:()=>n$});import{useContext as TTe,useEffect as Dv,useId as ETe,useMemo as Fv,useRef as Lv,useState as JX}from"react";import{createPortal as CTe}from"react-dom";import{jsx as QX,jsxs as RTe}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 ATe(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 PTe,ITe,e$,t$,n$,v3=z(()=>{"use strict";mt();gt();yt();KX();PTe={display:"contents"},ITe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},e$={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&&(e$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}t$=t=>{let e=TTe(V);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=ETe(),s=Fv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Fv(()=>ATe(t,e$),[t]),d=Fv(()=>({...ITe,...t.transform}),[t.transform]),h=Lv(null),f=!!hl.capturesDOM,g=Lv(null),[y,_]=JX(!1),[b,S]=JX(()=>({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}));Dv(()=>{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=Lv(void 0),v=Lv(null);v.current===null&&(ae(a),v.current=de(hl,u,s));let C=Fv(()=>({...e,shaderParentId:s}),[e,s]);Dv(()=>{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]),Dv(()=>{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 E=Lv({}),M=Fv(()=>{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(Dv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Dv(()=>{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?CTe(QX("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 RTe(V.Provider,{value:C,children:[QX("span",{ref:h,style:PTe,"data-shader-id":s,children:!f&&t.children}),R]})},n$=t$});var i$=z(()=>{"use strict";y8()});var u$={};vt(u$,{ShaderComponent:()=>c$,default:()=>l$});import{useContext as OTe,useEffect as kv,useId as UTe,useMemo as Bv,useRef as zv,useState as o$}from"react";import{createPortal as NTe}from"react-dom";import{jsx as s$,jsxs as DTe}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 FTe(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 LTe,kTe,a$,c$,l$,b3=z(()=>{"use strict";mt();gt();yt();i$();LTe={display:"contents"},kTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},a$={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&&(a$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}c$=t=>{let e=OTe(V);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=UTe(),s=Bv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Bv(()=>FTe(t,a$),[t]),d=Bv(()=>({...kTe,...t.transform}),[t.transform]),h=zv(null),f=!!ml.capturesDOM,g=zv(null),[y,_]=o$(!1),[b,S]=o$(()=>({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=zv(void 0),v=zv(null);v.current===null&&(ae(a),v.current=de(ml,u,s));let C=Bv(()=>({...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,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]),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 E=zv({}),M=Bv(()=>{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(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(x3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?NTe(s$("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(V.Provider,{value:C,children:[s$("span",{ref:h,style:LTe,"data-shader-id":s,children:!f&&t.children}),R]})},l$=c$});var d$=z(()=>{"use strict";v8()});var y$={};vt(y$,{ShaderComponent:()=>p$,default:()=>g$});import{useContext as BTe,useEffect as Vv,useId as zTe,useMemo as Gv,useRef as Hv,useState as f$}from"react";import{createPortal as VTe}from"react-dom";import{jsx as h$,jsxs as GTe}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 HTe(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 WTe,jTe,m$,p$,g$,S3=z(()=>{"use strict";mt();gt();yt();d$();WTe={display:"contents"},jTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},m$={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&&(m$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}p$=t=>{let e=BTe(V);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=zTe(),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(()=>HTe(t,m$),[t]),d=Gv(()=>({...jTe,...t.transform}),[t.transform]),h=Hv(null),f=!!pl.capturesDOM,g=Hv(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}));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=Hv(void 0),v=Hv(null);v.current===null&&(ae(a),v.current=de(pl,u,s));let C=Gv(()=>({...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,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]),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 E=Hv({}),M=Gv(()=>{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(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(_3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?VTe(h$("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 GTe(V.Provider,{value:C,children:[h$("span",{ref:h,style:WTe,"data-shader-id":s,children:!f&&t.children}),R]})},g$=p$});var v$=z(()=>{"use strict";x8()});var M$={};vt(M$,{ShaderComponent:()=>S$,default:()=>w$});import{useContext as qTe,useEffect as Wv,useId as XTe,useMemo as jv,useRef as qv,useState as x$}from"react";import{createPortal as $Te}from"react-dom";import{jsx as b$,jsxs as YTe}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 ZTe(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 KTe,JTe,_$,S$,w$,M3=z(()=>{"use strict";mt();gt();yt();v$();KTe={display:"contents"},JTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},_$={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&&(_$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}S$=t=>{let e=qTe(V);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=XTe(),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(()=>ZTe(t,_$),[t]),d=jv(()=>({...JTe,...t.transform}),[t.transform]),h=qv(null),f=!!gl.capturesDOM,g=qv(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}));Wv(()=>{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&&(ae(a),v.current=de(gl,u,s));let C=jv(()=>({...e,shaderParentId:s}),[e,s]);Wv(()=>{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]),Wv(()=>{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 E=qv({}),M=jv(()=>{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(Wv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Wv(()=>{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?$Te(b$("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 YTe(V.Provider,{value:C,children:[b$("span",{ref:h,style:KTe,"data-shader-id":s,children:!f&&t.children}),R]})},w$=S$});var T$=z(()=>{"use strict";S8()});var I$={};vt(I$,{ShaderComponent:()=>A$,default:()=>P$});import{useContext as QTe,useEffect as Xv,useId as eEe,useMemo as $v,useRef as Yv,useState as E$}from"react";import{createPortal as tEe}from"react-dom";import{jsx as C$,jsxs as nEe}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 rEe(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 iEe,oEe,R$,A$,P$,E3=z(()=>{"use strict";mt();gt();yt();T$();iEe={display:"contents"},oEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},R$={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&&(R$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}A$=t=>{let e=QTe(V);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=$v(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=$v(()=>rEe(t,R$),[t]),d=$v(()=>({...oEe,...t.transform}),[t.transform]),h=Yv(null),f=!!yl.capturesDOM,g=Yv(null),[y,_]=E$(!1),[b,S]=E$(()=>({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}));Xv(()=>{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&&(ae(a),v.current=de(yl,u,s));let C=$v(()=>({...e,shaderParentId:s}),[e,s]);Xv(()=>{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]),Xv(()=>{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 E=Yv({}),M=$v(()=>{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(Xv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Xv(()=>{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?tEe(C$("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 nEe(V.Provider,{value:C,children:[C$("span",{ref:h,style:iEe,"data-shader-id":s,children:!f&&t.children}),R]})},P$=A$});var O$=z(()=>{"use strict";M8()});var k$={};vt(k$,{ShaderComponent:()=>F$,default:()=>L$});import{useContext as sEe,useEffect as Zv,useId as aEe,useMemo as Kv,useRef as Jv,useState as U$}from"react";import{createPortal as cEe}from"react-dom";import{jsx as N$,jsxs as lEe}from"react/jsx-runtime";function C3(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 uEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!C3(i)&&(n[r]=i);return n}var dEe,fEe,D$,F$,L$,R3=z(()=>{"use strict";mt();gt();yt();O$();dEe={display:"contents"},fEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},D$={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&&(D$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}F$=t=>{let e=sEe(V);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=aEe(),s=Kv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Kv(()=>uEe(t,D$),[t]),d=Kv(()=>({...fEe,...t.transform}),[t.transform]),h=Jv(null),f=!!xl.capturesDOM,g=Jv(null),[y,_]=U$(!1),[b,S]=U$(()=>({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}));Zv(()=>{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=Jv(void 0),v=Jv(null);v.current===null&&(ae(a),v.current=de(xl,u,s));let C=Kv(()=>({...e,shaderParentId:s}),[e,s]);Zv(()=>{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]),Zv(()=>{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 E=Jv({}),M=Kv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&C3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Zv(()=>{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(C3(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Zv(()=>{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?cEe(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 lEe(V.Provider,{value:C,children:[N$("span",{ref:h,style:dEe,"data-shader-id":s,children:!f&&t.children}),R]})},L$=F$});var B$=z(()=>{"use strict";w8()});var j$={};vt(j$,{ShaderComponent:()=>H$,default:()=>W$});import{useContext as hEe,useEffect as Qv,useId as mEe,useMemo as ex,useRef as tx,useState as z$}from"react";import{createPortal as pEe}from"react-dom";import{jsx as V$,jsxs as gEe}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 yEe(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 vEe,xEe,G$,H$,W$,P3=z(()=>{"use strict";mt();gt();yt();B$();vEe={display:"contents"},xEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},G$={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&&(G$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}H$=t=>{let e=hEe(V);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=mEe(),s=ex(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ex(()=>yEe(t,G$),[t]),d=ex(()=>({...xEe,...t.transform}),[t.transform]),h=tx(null),f=!!vl.capturesDOM,g=tx(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}));Qv(()=>{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=tx(void 0),v=tx(null);v.current===null&&(ae(a),v.current=de(vl,u,s));let C=ex(()=>({...e,shaderParentId:s}),[e,s]);Qv(()=>{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]),Qv(()=>{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 E=tx({}),M=ex(()=>{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(Qv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Qv(()=>{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?pEe(V$("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 gEe(V.Provider,{value:C,children:[V$("span",{ref:h,style:vEe,"data-shader-id":s,children:!f&&t.children}),R]})},W$=H$});var q$=z(()=>{"use strict";T8()});var J$={};vt(J$,{ShaderComponent:()=>Z$,default:()=>K$});import{useContext as bEe,useEffect as nx,useId as _Ee,useMemo as rx,useRef as ix,useState as X$}from"react";import{createPortal as SEe}from"react-dom";import{jsx as $$,jsxs as wEe}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 MEe(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 TEe,EEe,Y$,Z$,K$,O3=z(()=>{"use strict";mt();gt();yt();q$();TEe={display:"contents"},EEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Y$={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&&(Y$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Z$=t=>{let e=bEe(V);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=rx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=rx(()=>MEe(t,Y$),[t]),d=rx(()=>({...EEe,...t.transform}),[t.transform]),h=ix(null),f=!!bl.capturesDOM,g=ix(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}));nx(()=>{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=ix(void 0),v=ix(null);v.current===null&&(ae(a),v.current=de(bl,u,s));let C=rx(()=>({...e,shaderParentId:s}),[e,s]);nx(()=>{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]),nx(()=>{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 E=ix({}),M=rx(()=>{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(nx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),nx(()=>{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?SEe($$("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 wEe(V.Provider,{value:C,children:[$$("span",{ref:h,style:TEe,"data-shader-id":s,children:!f&&t.children}),R]})},K$=Z$});var Q$=z(()=>{"use strict";E8()});var oY={};vt(oY,{ShaderComponent:()=>rY,default:()=>iY});import{useContext as CEe,useEffect as ox,useId as REe,useMemo as sx,useRef as ax,useState as eY}from"react";import{createPortal as AEe}from"react-dom";import{jsx as tY,jsxs as PEe}from"react/jsx-runtime";function U3(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 IEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!U3(i)&&(n[r]=i);return n}var OEe,UEe,nY,rY,iY,N3=z(()=>{"use strict";mt();gt();yt();Q$();OEe={display:"contents"},UEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},nY={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&&(nY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}rY=t=>{let e=CEe(V);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=REe(),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(()=>IEe(t,nY),[t]),d=sx(()=>({...UEe,...t.transform}),[t.transform]),h=ax(null),f=!!_l.capturesDOM,g=ax(null),[y,_]=eY(!1),[b,S]=eY(()=>({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=ax(void 0),v=ax(null);v.current===null&&(ae(a),v.current=de(_l,u,s));let C=sx(()=>({...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,_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]),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 E=ax({}),M=sx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&U3(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(U3(T))return;T!==E.current[c]&&(i(s,c,T),E.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(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 PEe(V.Provider,{value:C,children:[tY("span",{ref:h,style:OEe,"data-shader-id":s,children:!f&&t.children}),R]})},iY=rY});var sY=z(()=>{"use strict";A8()});var fY={};vt(fY,{ShaderComponent:()=>uY,default:()=>dY});import{useContext as NEe,useEffect as cx,useId as DEe,useMemo as lx,useRef as ux,useState as aY}from"react";import{createPortal as FEe}from"react-dom";import{jsx as cY,jsxs as LEe}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 kEe(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 BEe,zEe,lY,uY,dY,F3=z(()=>{"use strict";mt();gt();yt();sY();BEe={display:"contents"},zEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},lY={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&&(lY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}uY=t=>{let e=NEe(V);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=DEe(),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(()=>kEe(t,lY),[t]),d=lx(()=>({...zEe,...t.transform}),[t.transform]),h=ux(null),f=!!Sl.capturesDOM,g=ux(null),[y,_]=aY(!1),[b,S]=aY(()=>({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}));cx(()=>{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=ux(void 0),v=ux(null);v.current===null&&(ae(a),v.current=de(Sl,u,s));let C=lx(()=>({...e,shaderParentId:s}),[e,s]);cx(()=>{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]),cx(()=>{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 E=ux({}),M=lx(()=>{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(cx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),cx(()=>{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?FEe(cY("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 LEe(V.Provider,{value:C,children:[cY("span",{ref:h,style:BEe,"data-shader-id":s,children:!f&&t.children}),R]})},dY=uY});var hY=z(()=>{"use strict";I8()});var xY={};vt(xY,{ShaderComponent:()=>yY,default:()=>vY});import{useContext as VEe,useEffect as dx,useId as GEe,useMemo as fx,useRef as hx,useState as mY}from"react";import{createPortal as HEe}from"react-dom";import{jsx as pY,jsxs as WEe}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 jEe(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 qEe,XEe,gY,yY,vY,k3=z(()=>{"use strict";mt();gt();yt();hY();qEe={display:"contents"},XEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},gY={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&&(gY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}yY=t=>{let e=VEe(V);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=GEe(),s=fx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=fx(()=>jEe(t,gY),[t]),d=fx(()=>({...XEe,...t.transform}),[t.transform]),h=hx(null),f=!!wl.capturesDOM,g=hx(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}));dx(()=>{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=hx(void 0),v=hx(null);v.current===null&&(ae(a),v.current=de(wl,u,s));let C=fx(()=>({...e,shaderParentId:s}),[e,s]);dx(()=>{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]),dx(()=>{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 E=hx({}),M=fx(()=>{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(dx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),dx(()=>{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?HEe(pY("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 WEe(V.Provider,{value:C,children:[pY("span",{ref:h,style:qEe,"data-shader-id":s,children:!f&&t.children}),R]})},vY=yY});var bY=z(()=>{"use strict";U8()});var EY={};vt(EY,{ShaderComponent:()=>MY,default:()=>TY});import{useContext as $Ee,useEffect as mx,useId as YEe,useMemo as px,useRef as gx,useState as _Y}from"react";import{createPortal as ZEe}from"react-dom";import{jsx as SY,jsxs as KEe}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 JEe(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 QEe,eCe,wY,MY,TY,z3=z(()=>{"use strict";mt();gt();yt();bY();QEe={display:"contents"},eCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},wY={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&&(wY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}MY=t=>{let e=$Ee(V);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=YEe(),s=px(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=px(()=>JEe(t,wY),[t]),d=px(()=>({...eCe,...t.transform}),[t.transform]),h=gx(null),f=!!Ml.capturesDOM,g=gx(null),[y,_]=_Y(!1),[b,S]=_Y(()=>({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=gx(void 0),v=gx(null);v.current===null&&(ae(a),v.current=de(Ml,u,s));let C=px(()=>({...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,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]),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 E=gx({}),M=px(()=>{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(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(B3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?ZEe(SY("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 KEe(V.Provider,{value:C,children:[SY("span",{ref:h,style:QEe,"data-shader-id":s,children:!f&&t.children}),R]})},TY=MY});var CY=z(()=>{"use strict";F8()});var UY={};vt(UY,{ShaderComponent:()=>IY,default:()=>OY});import{useContext as tCe,useEffect as yx,useId as nCe,useMemo as vx,useRef as xx,useState as RY}from"react";import{createPortal as rCe}from"react-dom";import{jsx as AY,jsxs as iCe}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 oCe(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 sCe,aCe,PY,IY,OY,G3=z(()=>{"use strict";mt();gt();yt();CY();sCe={display:"contents"},aCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},PY={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&&(PY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}IY=t=>{let e=tCe(V);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=vx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=vx(()=>oCe(t,PY),[t]),d=vx(()=>({...aCe,...t.transform}),[t.transform]),h=xx(null),f=!!Tl.capturesDOM,g=xx(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}));yx(()=>{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&&(ae(a),v.current=de(Tl,u,s));let C=vx(()=>({...e,shaderParentId:s}),[e,s]);yx(()=>{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]),yx(()=>{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 E=xx({}),M=vx(()=>{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(yx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),yx(()=>{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?rCe(AY("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 iCe(V.Provider,{value:C,children:[AY("span",{ref:h,style:sCe,"data-shader-id":s,children:!f&&t.children}),R]})},OY=IY});var NY=z(()=>{"use strict";L8()});var zY={};vt(zY,{ShaderComponent:()=>kY,default:()=>BY});import{useContext as cCe,useEffect as bx,useId as lCe,useMemo as _x,useRef as Sx,useState as DY}from"react";import{createPortal as uCe}from"react-dom";import{jsx as FY,jsxs as dCe}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 fCe(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 hCe,mCe,LY,kY,BY,W3=z(()=>{"use strict";mt();gt();yt();NY();hCe={display:"contents"},mCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},LY={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&&(LY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}kY=t=>{let e=cCe(V);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=lCe(),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(()=>fCe(t,LY),[t]),d=_x(()=>({...mCe,...t.transform}),[t.transform]),h=Sx(null),f=!!El.capturesDOM,g=Sx(null),[y,_]=DY(!1),[b,S]=DY(()=>({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=Sx(void 0),v=Sx(null);v.current===null&&(ae(a),v.current=de(El,u,s));let C=_x(()=>({...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,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]),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 E=Sx({}),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(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(H3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?uCe(FY("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 dCe(V.Provider,{value:C,children:[FY("span",{ref:h,style:hCe,"data-shader-id":s,children:!f&&t.children}),R]})},BY=kY});var VY=z(()=>{"use strict";k8()});var XY={};vt(XY,{ShaderComponent:()=>jY,default:()=>qY});import{useContext as pCe,useEffect as wx,useId as gCe,useMemo as Mx,useRef as Tx,useState as GY}from"react";import{createPortal as yCe}from"react-dom";import{jsx as HY,jsxs as vCe}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 xCe(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 bCe,_Ce,WY,jY,qY,q3=z(()=>{"use strict";mt();gt();yt();VY();bCe={display:"contents"},_Ce={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},WY={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&&(WY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}jY=t=>{let e=pCe(V);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=gCe(),s=Mx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Mx(()=>xCe(t,WY),[t]),d=Mx(()=>({..._Ce,...t.transform}),[t.transform]),h=Tx(null),f=!!Cl.capturesDOM,g=Tx(null),[y,_]=GY(!1),[b,S]=GY(()=>({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}));wx(()=>{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=Tx(void 0),v=Tx(null);v.current===null&&(ae(a),v.current=de(Cl,u,s));let C=Mx(()=>({...e,shaderParentId:s}),[e,s]);wx(()=>{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]),wx(()=>{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 E=Tx({}),M=Mx(()=>{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(wx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),wx(()=>{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?yCe(HY("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(V.Provider,{value:C,children:[HY("span",{ref:h,style:bCe,"data-shader-id":s,children:!f&&t.children}),R]})},qY=jY});var $Y=z(()=>{"use strict";B8()});var eZ={};vt(eZ,{ShaderComponent:()=>JY,default:()=>QY});import{useContext as SCe,useEffect as Ex,useId as wCe,useMemo as Cx,useRef as Rx,useState as YY}from"react";import{createPortal as MCe}from"react-dom";import{jsx as ZY,jsxs as TCe}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 ECe(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 CCe,RCe,KY,JY,QY,$3=z(()=>{"use strict";mt();gt();yt();$Y();CCe={display:"contents"},RCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},KY={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&&(KY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}JY=t=>{let e=SCe(V);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=wCe(),s=Cx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Cx(()=>ECe(t,KY),[t]),d=Cx(()=>({...RCe,...t.transform}),[t.transform]),h=Rx(null),f=!!Rl.capturesDOM,g=Rx(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}));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=Rx(void 0),v=Rx(null);v.current===null&&(ae(a),v.current=de(Rl,u,s));let C=Cx(()=>({...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,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]),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 E=Rx({}),M=Cx(()=>{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(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(X3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?MCe(ZY("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 TCe(V.Provider,{value:C,children:[ZY("span",{ref:h,style:CCe,"data-shader-id":s,children:!f&&t.children}),R]})},QY=JY});var tZ=z(()=>{"use strict";z8()});var aZ={};vt(aZ,{ShaderComponent:()=>oZ,default:()=>sZ});import{useContext as ACe,useEffect as Ax,useId as PCe,useMemo as Px,useRef as Ix,useState as nZ}from"react";import{createPortal as ICe}from"react-dom";import{jsx as rZ,jsxs as OCe}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 UCe(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 NCe,DCe,iZ,oZ,sZ,Z3=z(()=>{"use strict";mt();gt();yt();tZ();NCe={display:"contents"},DCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},iZ={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&&(iZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}oZ=t=>{let e=ACe(V);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=PCe(),s=Px(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Px(()=>UCe(t,iZ),[t]),d=Px(()=>({...DCe,...t.transform}),[t.transform]),h=Ix(null),f=!!Al.capturesDOM,g=Ix(null),[y,_]=nZ(!1),[b,S]=nZ(()=>({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}));Ax(()=>{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=Ix(void 0),v=Ix(null);v.current===null&&(ae(a),v.current=de(Al,u,s));let C=Px(()=>({...e,shaderParentId:s}),[e,s]);Ax(()=>{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]),Ax(()=>{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 E=Ix({}),M=Px(()=>{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(Ax(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ax(()=>{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?ICe(rZ("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 OCe(V.Provider,{value:C,children:[rZ("span",{ref:h,style:NCe,"data-shader-id":s,children:!f&&t.children}),R]})},sZ=oZ});var cZ=z(()=>{"use strict";V8()});var mZ={};vt(mZ,{ShaderComponent:()=>fZ,default:()=>hZ});import{useContext as FCe,useEffect as Ox,useId as LCe,useMemo as Ux,useRef as Nx,useState as lZ}from"react";import{createPortal as kCe}from"react-dom";import{jsx as uZ,jsxs as BCe}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 zCe(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 VCe,GCe,dZ,fZ,hZ,J3=z(()=>{"use strict";mt();gt();yt();cZ();VCe={display:"contents"},GCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},dZ={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&&(dZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}fZ=t=>{let e=FCe(V);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=LCe(),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(()=>zCe(t,dZ),[t]),d=Ux(()=>({...GCe,...t.transform}),[t.transform]),h=Nx(null),f=!!Pl.capturesDOM,g=Nx(null),[y,_]=lZ(!1),[b,S]=lZ(()=>({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=Nx(void 0),v=Nx(null);v.current===null&&(ae(a),v.current=de(Pl,u,s));let C=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,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]),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 E=Nx({}),M=Ux(()=>{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(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(K3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?kCe(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 BCe(V.Provider,{value:C,children:[uZ("span",{ref:h,style:VCe,"data-shader-id":s,children:!f&&t.children}),R]})},hZ=fZ});var pZ=z(()=>{"use strict";G8()});var _Z={};vt(_Z,{ShaderComponent:()=>xZ,default:()=>bZ});import{useContext as HCe,useEffect as Dx,useId as WCe,useMemo as Fx,useRef as Lx,useState as gZ}from"react";import{createPortal as jCe}from"react-dom";import{jsx as yZ,jsxs as qCe}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 XCe(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 $Ce,YCe,vZ,xZ,bZ,eD=z(()=>{"use strict";mt();gt();yt();pZ();$Ce={display:"contents"},YCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},vZ={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&&(vZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}xZ=t=>{let e=HCe(V);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=WCe(),s=Fx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Fx(()=>XCe(t,vZ),[t]),d=Fx(()=>({...YCe,...t.transform}),[t.transform]),h=Lx(null),f=!!Il.capturesDOM,g=Lx(null),[y,_]=gZ(!1),[b,S]=gZ(()=>({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}));Dx(()=>{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=Lx(void 0),v=Lx(null);v.current===null&&(ae(a),v.current=de(Il,u,s));let C=Fx(()=>({...e,shaderParentId:s}),[e,s]);Dx(()=>{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]),Dx(()=>{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 E=Lx({}),M=Fx(()=>{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(Dx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Dx(()=>{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?jCe(yZ("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 qCe(V.Provider,{value:C,children:[yZ("span",{ref:h,style:$Ce,"data-shader-id":s,children:!f&&t.children}),R]})},bZ=xZ});var SZ=z(()=>{"use strict";W8()});var RZ={};vt(RZ,{ShaderComponent:()=>EZ,default:()=>CZ});import{useContext as ZCe,useEffect as kx,useId as KCe,useMemo as Bx,useRef as zx,useState as wZ}from"react";import{createPortal as JCe}from"react-dom";import{jsx as MZ,jsxs as QCe}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 eRe(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 tRe,nRe,TZ,EZ,CZ,nD=z(()=>{"use strict";mt();gt();yt();SZ();tRe={display:"contents"},nRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},TZ={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&&(TZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}EZ=t=>{let e=ZCe(V);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=KCe(),s=Bx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Bx(()=>eRe(t,TZ),[t]),d=Bx(()=>({...nRe,...t.transform}),[t.transform]),h=zx(null),f=!!Ol.capturesDOM,g=zx(null),[y,_]=wZ(!1),[b,S]=wZ(()=>({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=zx(void 0),v=zx(null);v.current===null&&(ae(a),v.current=de(Ol,u,s));let C=Bx(()=>({...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,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]),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 E=zx({}),M=Bx(()=>{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(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(tD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?JCe(MZ("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 QCe(V.Provider,{value:C,children:[MZ("span",{ref:h,style:tRe,"data-shader-id":s,children:!f&&t.children}),R]})},CZ=EZ});var AZ=z(()=>{"use strict";j8()});var DZ={};vt(DZ,{ShaderComponent:()=>UZ,default:()=>NZ});import{useContext as rRe,useEffect as Vx,useId as iRe,useMemo as Gx,useRef as Hx,useState as PZ}from"react";import{createPortal as oRe}from"react-dom";import{jsx as IZ,jsxs as sRe}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 aRe(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 cRe,lRe,OZ,UZ,NZ,iD=z(()=>{"use strict";mt();gt();yt();AZ();cRe={display:"contents"},lRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},OZ={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&&(OZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}UZ=t=>{let e=rRe(V);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=iRe(),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(()=>aRe(t,OZ),[t]),d=Gx(()=>({...lRe,...t.transform}),[t.transform]),h=Hx(null),f=!!Ul.capturesDOM,g=Hx(null),[y,_]=PZ(!1),[b,S]=PZ(()=>({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=Hx(void 0),v=Hx(null);v.current===null&&(ae(a),v.current=de(Ul,u,s));let C=Gx(()=>({...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,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]),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 E=Hx({}),M=Gx(()=>{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(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(rD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?oRe(IZ("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 sRe(V.Provider,{value:C,children:[IZ("span",{ref:h,style:cRe,"data-shader-id":s,children:!f&&t.children}),R]})},NZ=UZ});var FZ=z(()=>{"use strict";q8()});var GZ={};vt(GZ,{ShaderComponent:()=>zZ,default:()=>VZ});import{useContext as uRe,useEffect as Wx,useId as dRe,useMemo as jx,useRef as qx,useState as LZ}from"react";import{createPortal as fRe}from"react-dom";import{jsx as kZ,jsxs as hRe}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 mRe(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 pRe,gRe,BZ,zZ,VZ,sD=z(()=>{"use strict";mt();gt();yt();FZ();pRe={display:"contents"},gRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},BZ={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&&(BZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}zZ=t=>{let e=uRe(V);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=dRe(),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(()=>mRe(t,BZ),[t]),d=jx(()=>({...gRe,...t.transform}),[t.transform]),h=qx(null),f=!!Nl.capturesDOM,g=qx(null),[y,_]=LZ(!1),[b,S]=LZ(()=>({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}));Wx(()=>{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&&(ae(a),v.current=de(Nl,u,s));let C=jx(()=>({...e,shaderParentId:s}),[e,s]);Wx(()=>{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]),Wx(()=>{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 E=qx({}),M=jx(()=>{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(Wx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Wx(()=>{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?fRe(kZ("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 hRe(V.Provider,{value:C,children:[kZ("span",{ref:h,style:pRe,"data-shader-id":s,children:!f&&t.children}),R]})},VZ=zZ});var HZ=z(()=>{"use strict";X8()});var YZ={};vt(YZ,{ShaderComponent:()=>XZ,default:()=>$Z});import{useContext as yRe,useEffect as Xx,useId as vRe,useMemo as $x,useRef as Yx,useState as WZ}from"react";import{createPortal as xRe}from"react-dom";import{jsx as jZ,jsxs as bRe}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 _Re(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 SRe,wRe,qZ,XZ,$Z,cD=z(()=>{"use strict";mt();gt();yt();HZ();SRe={display:"contents"},wRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},qZ={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&&(qZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}XZ=t=>{let e=yRe(V);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=vRe(),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(()=>_Re(t,qZ),[t]),d=$x(()=>({...wRe,...t.transform}),[t.transform]),h=Yx(null),f=!!Dl.capturesDOM,g=Yx(null),[y,_]=WZ(!1),[b,S]=WZ(()=>({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}));Xx(()=>{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&&(ae(a),v.current=de(Dl,u,s));let C=$x(()=>({...e,shaderParentId:s}),[e,s]);Xx(()=>{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]),Xx(()=>{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 E=Yx({}),M=$x(()=>{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(Xx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Xx(()=>{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?xRe(jZ("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 bRe(V.Provider,{value:C,children:[jZ("span",{ref:h,style:SRe,"data-shader-id":s,children:!f&&t.children}),R]})},$Z=XZ});var ZZ=z(()=>{"use strict";$8()});var nK={};vt(nK,{ShaderComponent:()=>eK,default:()=>tK});import{useContext as MRe,useEffect as Zx,useId as TRe,useMemo as Kx,useRef as Jx,useState as KZ}from"react";import{createPortal as ERe}from"react-dom";import{jsx as JZ,jsxs as CRe}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 RRe(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 ARe,PRe,QZ,eK,tK,uD=z(()=>{"use strict";mt();gt();yt();ZZ();ARe={display:"contents"},PRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},QZ={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&&(QZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}eK=t=>{let e=MRe(V);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=Kx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Kx(()=>RRe(t,QZ),[t]),d=Kx(()=>({...PRe,...t.transform}),[t.transform]),h=Jx(null),f=!!Fl.capturesDOM,g=Jx(null),[y,_]=KZ(!1),[b,S]=KZ(()=>({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}));Zx(()=>{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=Jx(void 0),v=Jx(null);v.current===null&&(ae(a),v.current=de(Fl,u,s));let C=Kx(()=>({...e,shaderParentId:s}),[e,s]);Zx(()=>{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]),Zx(()=>{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 E=Jx({}),M=Kx(()=>{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(Zx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Zx(()=>{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?ERe(JZ("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 CRe(V.Provider,{value:C,children:[JZ("span",{ref:h,style:ARe,"data-shader-id":s,children:!f&&t.children}),R]})},tK=eK});var rK=z(()=>{"use strict";Y8()});var lK={};vt(lK,{ShaderComponent:()=>aK,default:()=>cK});import{useContext as IRe,useEffect as Qx,useId as ORe,useMemo as eb,useRef as tb,useState as iK}from"react";import{createPortal as URe}from"react-dom";import{jsx as oK,jsxs as NRe}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 DRe(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 FRe,LRe,sK,aK,cK,fD=z(()=>{"use strict";mt();gt();yt();rK();FRe={display:"contents"},LRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},sK={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&&(sK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}aK=t=>{let e=IRe(V);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=ORe(),s=eb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=eb(()=>DRe(t,sK),[t]),d=eb(()=>({...LRe,...t.transform}),[t.transform]),h=tb(null),f=!!Ll.capturesDOM,g=tb(null),[y,_]=iK(!1),[b,S]=iK(()=>({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}));Qx(()=>{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=tb(void 0),v=tb(null);v.current===null&&(ae(a),v.current=de(Ll,u,s));let C=eb(()=>({...e,shaderParentId:s}),[e,s]);Qx(()=>{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]),Qx(()=>{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 E=tb({}),M=eb(()=>{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(Qx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Qx(()=>{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?URe(oK("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 NRe(V.Provider,{value:C,children:[oK("span",{ref:h,style:FRe,"data-shader-id":s,children:!f&&t.children}),R]})},cK=aK});var uK=z(()=>{"use strict";Z8()});var gK={};vt(gK,{ShaderComponent:()=>mK,default:()=>pK});import{useContext as kRe,useEffect as nb,useId as BRe,useMemo as rb,useRef as ib,useState as dK}from"react";import{createPortal as zRe}from"react-dom";import{jsx as fK,jsxs as VRe}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 GRe(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 HRe,WRe,hK,mK,pK,mD=z(()=>{"use strict";mt();gt();yt();uK();HRe={display:"contents"},WRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},hK={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&&(hK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}mK=t=>{let e=kRe(V);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=BRe(),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(()=>GRe(t,hK),[t]),d=rb(()=>({...WRe,...t.transform}),[t.transform]),h=ib(null),f=!!kl.capturesDOM,g=ib(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}));nb(()=>{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=ib(void 0),v=ib(null);v.current===null&&(ae(a),v.current=de(kl,u,s));let C=rb(()=>({...e,shaderParentId:s}),[e,s]);nb(()=>{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]),nb(()=>{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 E=ib({}),M=rb(()=>{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(nb(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),nb(()=>{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?zRe(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 VRe(V.Provider,{value:C,children:[fK("span",{ref:h,style:HRe,"data-shader-id":s,children:!f&&t.children}),R]})},pK=mK});var yK=z(()=>{"use strict";K8()});var wK={};vt(wK,{ShaderComponent:()=>_K,default:()=>SK});import{useContext as jRe,useEffect as ob,useId as qRe,useMemo as sb,useRef as ab,useState as vK}from"react";import{createPortal as XRe}from"react-dom";import{jsx as xK,jsxs as $Re}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 YRe(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 ZRe,KRe,bK,_K,SK,gD=z(()=>{"use strict";mt();gt();yt();yK();ZRe={display:"contents"},KRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},bK={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&&(bK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}_K=t=>{let e=jRe(V);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=qRe(),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(()=>YRe(t,bK),[t]),d=sb(()=>({...KRe,...t.transform}),[t.transform]),h=ab(null),f=!!Bl.capturesDOM,g=ab(null),[y,_]=vK(!1),[b,S]=vK(()=>({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=ab(void 0),v=ab(null);v.current===null&&(ae(a),v.current=de(Bl,u,s));let C=sb(()=>({...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,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]),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 E=ab({}),M=sb(()=>{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(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(pD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?XRe(xK("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 $Re(V.Provider,{value:C,children:[xK("span",{ref:h,style:ZRe,"data-shader-id":s,children:!f&&t.children}),R]})},SK=_K});var MK=z(()=>{"use strict";J8()});var PK={};vt(PK,{ShaderComponent:()=>RK,default:()=>AK});import{useContext as JRe,useEffect as cb,useId as QRe,useMemo as lb,useRef as ub,useState as TK}from"react";import{createPortal as eAe}from"react-dom";import{jsx as EK,jsxs as tAe}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 nAe(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 rAe,iAe,CK,RK,AK,vD=z(()=>{"use strict";mt();gt();yt();MK();rAe={display:"contents"},iAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},CK={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&&(CK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}RK=t=>{let e=JRe(V);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=QRe(),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(()=>nAe(t,CK),[t]),d=lb(()=>({...iAe,...t.transform}),[t.transform]),h=ub(null),f=!!zl.capturesDOM,g=ub(null),[y,_]=TK(!1),[b,S]=TK(()=>({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}));cb(()=>{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=ub(void 0),v=ub(null);v.current===null&&(ae(a),v.current=de(zl,u,s));let C=lb(()=>({...e,shaderParentId:s}),[e,s]);cb(()=>{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]),cb(()=>{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 E=ub({}),M=lb(()=>{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(cb(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),cb(()=>{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?eAe(EK("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 tAe(V.Provider,{value:C,children:[EK("span",{ref:h,style:rAe,"data-shader-id":s,children:!f&&t.children}),R]})},AK=RK});var IK=z(()=>{"use strict";eH()});var LK={};vt(LK,{ShaderComponent:()=>DK,default:()=>FK});import{useContext as oAe,useEffect as db,useId as sAe,useMemo as fb,useRef as hb,useState as OK}from"react";import{createPortal as aAe}from"react-dom";import{jsx as UK,jsxs as cAe}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 lAe(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 uAe,dAe,NK,DK,FK,bD=z(()=>{"use strict";mt();gt();yt();IK();uAe={display:"contents"},dAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},NK={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&&(NK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}DK=t=>{let e=oAe(V);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=sAe(),s=fb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=fb(()=>lAe(t,NK),[t]),d=fb(()=>({...dAe,...t.transform}),[t.transform]),h=hb(null),f=!!Vl.capturesDOM,g=hb(null),[y,_]=OK(!1),[b,S]=OK(()=>({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}));db(()=>{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=hb(void 0),v=hb(null);v.current===null&&(ae(a),v.current=de(Vl,u,s));let C=fb(()=>({...e,shaderParentId:s}),[e,s]);db(()=>{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]),db(()=>{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 E=hb({}),M=fb(()=>{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(db(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),db(()=>{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?aAe(UK("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(V.Provider,{value:C,children:[UK("span",{ref:h,style:uAe,"data-shader-id":s,children:!f&&t.children}),R]})},FK=DK});var kK=z(()=>{"use strict";tH()});var WK={};vt(WK,{ShaderComponent:()=>GK,default:()=>HK});import{useContext as fAe,useEffect as mb,useId as hAe,useMemo as pb,useRef as gb,useState as BK}from"react";import{createPortal as mAe}from"react-dom";import{jsx as zK,jsxs as pAe}from"react/jsx-runtime";function _D(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 gAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!_D(i)&&(n[r]=i);return n}var yAe,vAe,VK,GK,HK,SD=z(()=>{"use strict";mt();gt();yt();kK();yAe={display:"contents"},vAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},VK={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&&(VK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}GK=t=>{let e=fAe(V);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=hAe(),s=pb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=pb(()=>gAe(t,VK),[t]),d=pb(()=>({...vAe,...t.transform}),[t.transform]),h=gb(null),f=!!Gl.capturesDOM,g=gb(null),[y,_]=BK(!1),[b,S]=BK(()=>({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=gb(void 0),v=gb(null);v.current===null&&(ae(a),v.current=de(Gl,u,s));let C=pb(()=>({...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,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]),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 E=gb({}),M=pb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&_D(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(_D(T))return;T!==E.current[c]&&(i(s,c,T),E.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?mAe(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 pAe(V.Provider,{value:C,children:[zK("span",{ref:h,style:yAe,"data-shader-id":s,children:!f&&t.children}),R]})},HK=GK});var jK=z(()=>{"use strict";nH()});var KK={};vt(KK,{ShaderComponent:()=>YK,default:()=>ZK});import{useContext as xAe,useEffect as yb,useId as bAe,useMemo as vb,useRef as xb,useState as qK}from"react";import{createPortal as _Ae}from"react-dom";import{jsx as XK,jsxs as SAe}from"react/jsx-runtime";function wD(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 wAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!wD(i)&&(n[r]=i);return n}var MAe,TAe,$K,YK,ZK,MD=z(()=>{"use strict";mt();gt();yt();jK();MAe={display:"contents"},TAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},$K={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&&($K[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}YK=t=>{let e=xAe(V);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=bAe(),s=vb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=vb(()=>wAe(t,$K),[t]),d=vb(()=>({...TAe,...t.transform}),[t.transform]),h=xb(null),f=!!Hl.capturesDOM,g=xb(null),[y,_]=qK(!1),[b,S]=qK(()=>({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}));yb(()=>{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&&(ae(a),v.current=de(Hl,u,s));let C=vb(()=>({...e,shaderParentId:s}),[e,s]);yb(()=>{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]),yb(()=>{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 E=xb({}),M=vb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&wD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(yb(()=>{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(wD(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),yb(()=>{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?_Ae(XK("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 SAe(V.Provider,{value:C,children:[XK("span",{ref:h,style:MAe,"data-shader-id":s,children:!f&&t.children}),R]})},ZK=YK});var JK=z(()=>{"use strict";rH()});var iJ={};vt(iJ,{ShaderComponent:()=>nJ,default:()=>rJ});import{useContext as EAe,useEffect as bb,useId as CAe,useMemo as _b,useRef as Sb,useState as QK}from"react";import{createPortal as RAe}from"react-dom";import{jsx as eJ,jsxs as AAe}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 PAe(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 IAe,OAe,tJ,nJ,rJ,ED=z(()=>{"use strict";mt();gt();yt();JK();IAe={display:"contents"},OAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},tJ={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&&(tJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}nJ=t=>{let e=EAe(V);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=CAe(),s=_b(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=_b(()=>PAe(t,tJ),[t]),d=_b(()=>({...OAe,...t.transform}),[t.transform]),h=Sb(null),f=!!Wl.capturesDOM,g=Sb(null),[y,_]=QK(!1),[b,S]=QK(()=>({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=Sb(void 0),v=Sb(null);v.current===null&&(ae(a),v.current=de(Wl,u,s));let C=_b(()=>({...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,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]),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 E=Sb({}),M=_b(()=>{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(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(TD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?RAe(eJ("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 AAe(V.Provider,{value:C,children:[eJ("span",{ref:h,style:IAe,"data-shader-id":s,children:!f&&t.children}),R]})},rJ=nJ});var oJ=z(()=>{"use strict";iH()});var dJ={};vt(dJ,{ShaderComponent:()=>lJ,default:()=>uJ});import{useContext as UAe,useEffect as wb,useId as NAe,useMemo as Mb,useRef as Tb,useState as sJ}from"react";import{createPortal as DAe}from"react-dom";import{jsx as aJ,jsxs as FAe}from"react/jsx-runtime";function CD(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 LAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!CD(i)&&(n[r]=i);return n}var kAe,BAe,cJ,lJ,uJ,RD=z(()=>{"use strict";mt();gt();yt();oJ();kAe={display:"contents"},BAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},cJ={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&&(cJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}lJ=t=>{let e=UAe(V);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=NAe(),s=Mb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Mb(()=>LAe(t,cJ),[t]),d=Mb(()=>({...BAe,...t.transform}),[t.transform]),h=Tb(null),f=!!jl.capturesDOM,g=Tb(null),[y,_]=sJ(!1),[b,S]=sJ(()=>({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}));wb(()=>{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=Tb(void 0),v=Tb(null);v.current===null&&(ae(a),v.current=de(jl,u,s));let C=Mb(()=>({...e,shaderParentId:s}),[e,s]);wb(()=>{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]),wb(()=>{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 E=Tb({}),M=Mb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&CD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(wb(()=>{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(CD(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),wb(()=>{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(aJ("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(V.Provider,{value:C,children:[aJ("span",{ref:h,style:kAe,"data-shader-id":s,children:!f&&t.children}),R]})},uJ=lJ});var fJ=z(()=>{"use strict";oH()});var vJ={};vt(vJ,{ShaderComponent:()=>gJ,default:()=>yJ});import{useContext as zAe,useEffect as Eb,useId as VAe,useMemo as Cb,useRef as Rb,useState as hJ}from"react";import{createPortal as GAe}from"react-dom";import{jsx as mJ,jsxs as HAe}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 WAe(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 jAe,qAe,pJ,gJ,yJ,PD=z(()=>{"use strict";mt();gt();yt();fJ();jAe={display:"contents"},qAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},pJ={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&&(pJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}gJ=t=>{let e=zAe(V);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=VAe(),s=Cb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Cb(()=>WAe(t,pJ),[t]),d=Cb(()=>({...qAe,...t.transform}),[t.transform]),h=Rb(null),f=!!ql.capturesDOM,g=Rb(null),[y,_]=hJ(!1),[b,S]=hJ(()=>({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=Rb(void 0),v=Rb(null);v.current===null&&(ae(a),v.current=de(ql,u,s));let C=Cb(()=>({...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,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]),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 E=Rb({}),M=Cb(()=>{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(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(AD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?GAe(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 HAe(V.Provider,{value:C,children:[mJ("span",{ref:h,style:jAe,"data-shader-id":s,children:!f&&t.children}),R]})},yJ=gJ});var xJ=z(()=>{"use strict";cH()});var TJ={};vt(TJ,{ShaderComponent:()=>wJ,default:()=>MJ});import{useContext as XAe,useEffect as Ab,useId as $Ae,useMemo as Pb,useRef as Ib,useState as bJ}from"react";import{createPortal as YAe}from"react-dom";import{jsx as _J,jsxs as ZAe}from"react/jsx-runtime";function ID(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 KAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!ID(i)&&(n[r]=i);return n}var JAe,QAe,SJ,wJ,MJ,OD=z(()=>{"use strict";mt();gt();yt();xJ();JAe={display:"contents"},QAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},SJ={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&&(SJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}wJ=t=>{let e=XAe(V);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=$Ae(),s=Pb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Pb(()=>KAe(t,SJ),[t]),d=Pb(()=>({...QAe,...t.transform}),[t.transform]),h=Ib(null),f=!!Xl.capturesDOM,g=Ib(null),[y,_]=bJ(!1),[b,S]=bJ(()=>({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}));Ab(()=>{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=Ib(void 0),v=Ib(null);v.current===null&&(ae(a),v.current=de(Xl,u,s));let C=Pb(()=>({...e,shaderParentId:s}),[e,s]);Ab(()=>{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]),Ab(()=>{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 E=Ib({}),M=Pb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&ID(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ab(()=>{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(ID(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ab(()=>{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?YAe(_J("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(V.Provider,{value:C,children:[_J("span",{ref:h,style:JAe,"data-shader-id":s,children:!f&&t.children}),R]})},MJ=wJ});var EJ=z(()=>{"use strict";lH()});var OJ={};vt(OJ,{ShaderComponent:()=>PJ,default:()=>IJ});import{useContext as e2e,useEffect as Ob,useId as t2e,useMemo as Ub,useRef as Nb,useState as CJ}from"react";import{createPortal as n2e}from"react-dom";import{jsx as RJ,jsxs as r2e}from"react/jsx-runtime";function UD(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 i2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!UD(i)&&(n[r]=i);return n}var o2e,s2e,AJ,PJ,IJ,ND=z(()=>{"use strict";mt();gt();yt();EJ();o2e={display:"contents"},s2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},AJ={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&&(AJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}PJ=t=>{let e=e2e(V);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=t2e(),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(()=>i2e(t,AJ),[t]),d=Ub(()=>({...s2e,...t.transform}),[t.transform]),h=Nb(null),f=!!$l.capturesDOM,g=Nb(null),[y,_]=CJ(!1),[b,S]=CJ(()=>({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=Nb(void 0),v=Nb(null);v.current===null&&(ae(a),v.current=de($l,u,s));let C=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,$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]),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 E=Nb({}),M=Ub(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&UD(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(UD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?n2e(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 r2e(V.Provider,{value:C,children:[RJ("span",{ref:h,style:o2e,"data-shader-id":s,children:!f&&t.children}),R]})},IJ=PJ});var UJ=z(()=>{"use strict";uH()});var BJ={};vt(BJ,{ShaderComponent:()=>LJ,default:()=>kJ});import{useContext as a2e,useEffect as Db,useId as c2e,useMemo as Fb,useRef as Lb,useState as NJ}from"react";import{createPortal as l2e}from"react-dom";import{jsx as DJ,jsxs as u2e}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 d2e(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 f2e,h2e,FJ,LJ,kJ,FD=z(()=>{"use strict";mt();gt();yt();UJ();f2e={display:"contents"},h2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},FJ={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&&(FJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}LJ=t=>{let e=a2e(V);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=Fb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Fb(()=>d2e(t,FJ),[t]),d=Fb(()=>({...h2e,...t.transform}),[t.transform]),h=Lb(null),f=!!Yl.capturesDOM,g=Lb(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}));Db(()=>{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=Lb(void 0),v=Lb(null);v.current===null&&(ae(a),v.current=de(Yl,u,s));let C=Fb(()=>({...e,shaderParentId:s}),[e,s]);Db(()=>{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]),Db(()=>{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 E=Lb({}),M=Fb(()=>{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(Db(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Db(()=>{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?l2e(DJ("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 u2e(V.Provider,{value:C,children:[DJ("span",{ref:h,style:f2e,"data-shader-id":s,children:!f&&t.children}),R]})},kJ=LJ});var zJ=z(()=>{"use strict";dH()});var qJ={};vt(qJ,{ShaderComponent:()=>WJ,default:()=>jJ});import{useContext as m2e,useEffect as kb,useId as p2e,useMemo as Bb,useRef as zb,useState as VJ}from"react";import{createPortal as g2e}from"react-dom";import{jsx as GJ,jsxs as y2e}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 v2e(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 x2e,b2e,HJ,WJ,jJ,kD=z(()=>{"use strict";mt();gt();yt();zJ();x2e={display:"contents"},b2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},HJ={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&&(HJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}WJ=t=>{let e=m2e(V);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=p2e(),s=Bb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Bb(()=>v2e(t,HJ),[t]),d=Bb(()=>({...b2e,...t.transform}),[t.transform]),h=zb(null),f=!!Zl.capturesDOM,g=zb(null),[y,_]=VJ(!1),[b,S]=VJ(()=>({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=zb(void 0),v=zb(null);v.current===null&&(ae(a),v.current=de(Zl,u,s));let C=Bb(()=>({...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,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]),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 E=zb({}),M=Bb(()=>{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(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(LD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?g2e(GJ("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(V.Provider,{value:C,children:[GJ("span",{ref:h,style:x2e,"data-shader-id":s,children:!f&&t.children}),R]})},jJ=WJ});var XJ=z(()=>{"use strict";fH()});var QJ={};vt(QJ,{ShaderComponent:()=>KJ,default:()=>JJ});import{useContext as _2e,useEffect as Vb,useId as S2e,useMemo as Gb,useRef as Hb,useState as $J}from"react";import{createPortal as w2e}from"react-dom";import{jsx as YJ,jsxs as M2e}from"react/jsx-runtime";function BD(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&&!BD(i)&&(n[r]=i);return n}var E2e,C2e,ZJ,KJ,JJ,zD=z(()=>{"use strict";mt();gt();yt();XJ();E2e={display:"contents"},C2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},ZJ={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&&(ZJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}KJ=t=>{let e=_2e(V);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=S2e(),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(()=>T2e(t,ZJ),[t]),d=Gb(()=>({...C2e,...t.transform}),[t.transform]),h=Hb(null),f=!!Kl.capturesDOM,g=Hb(null),[y,_]=$J(!1),[b,S]=$J(()=>({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=Hb(void 0),v=Hb(null);v.current===null&&(ae(a),v.current=de(Kl,u,s));let C=Gb(()=>({...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,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]),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 E=Hb({}),M=Gb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&BD(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(BD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?w2e(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 M2e(V.Provider,{value:C,children:[YJ("span",{ref:h,style:E2e,"data-shader-id":s,children:!f&&t.children}),R]})},JJ=KJ});var eQ=z(()=>{"use strict";hH()});var sQ={};vt(sQ,{ShaderComponent:()=>iQ,default:()=>oQ});import{useContext as R2e,useEffect as Wb,useId as A2e,useMemo as jb,useRef as qb,useState as tQ}from"react";import{createPortal as P2e}from"react-dom";import{jsx as nQ,jsxs as I2e}from"react/jsx-runtime";function VD(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 O2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!VD(i)&&(n[r]=i);return n}var U2e,N2e,rQ,iQ,oQ,GD=z(()=>{"use strict";mt();gt();yt();eQ();U2e={display:"contents"},N2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},rQ={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&&(rQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}iQ=t=>{let e=R2e(V);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=A2e(),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(()=>O2e(t,rQ),[t]),d=jb(()=>({...N2e,...t.transform}),[t.transform]),h=qb(null),f=!!Jl.capturesDOM,g=qb(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}));Wb(()=>{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&&(ae(a),v.current=de(Jl,u,s));let C=jb(()=>({...e,shaderParentId:s}),[e,s]);Wb(()=>{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]),Wb(()=>{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 E=qb({}),M=jb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&VD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Wb(()=>{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(VD(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Wb(()=>{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?P2e(nQ("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 I2e(V.Provider,{value:C,children:[nQ("span",{ref:h,style:U2e,"data-shader-id":s,children:!f&&t.children}),R]})},oQ=iQ});var aQ=z(()=>{"use strict";mH()});var hQ={};vt(hQ,{ShaderComponent:()=>dQ,default:()=>fQ});import{useContext as D2e,useEffect as Xb,useId as F2e,useMemo as $b,useRef as Yb,useState as cQ}from"react";import{createPortal as L2e}from"react-dom";import{jsx as lQ,jsxs as k2e}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 B2e(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 z2e,V2e,uQ,dQ,fQ,WD=z(()=>{"use strict";mt();gt();yt();aQ();z2e={display:"contents"},V2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},uQ={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&&(uQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}dQ=t=>{let e=D2e(V);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=$b(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=$b(()=>B2e(t,uQ),[t]),d=$b(()=>({...V2e,...t.transform}),[t.transform]),h=Yb(null),f=!!Ql.capturesDOM,g=Yb(null),[y,_]=cQ(!1),[b,S]=cQ(()=>({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}));Xb(()=>{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&&(ae(a),v.current=de(Ql,u,s));let C=$b(()=>({...e,shaderParentId:s}),[e,s]);Xb(()=>{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]),Xb(()=>{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 E=Yb({}),M=$b(()=>{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(Xb(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Xb(()=>{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?L2e(lQ("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 k2e(V.Provider,{value:C,children:[lQ("span",{ref:h,style:z2e,"data-shader-id":s,children:!f&&t.children}),R]})},fQ=dQ});var mQ=z(()=>{"use strict";pH()});var bQ={};vt(bQ,{ShaderComponent:()=>vQ,default:()=>xQ});import{useContext as G2e,useEffect as Zb,useId as H2e,useMemo as Kb,useRef as Jb,useState as pQ}from"react";import{createPortal as W2e}from"react-dom";import{jsx as gQ,jsxs as j2e}from"react/jsx-runtime";function jD(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 q2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!jD(i)&&(n[r]=i);return n}var X2e,$2e,yQ,vQ,xQ,qD=z(()=>{"use strict";mt();gt();yt();mQ();X2e={display:"contents"},$2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},yQ={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&&(yQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}vQ=t=>{let e=G2e(V);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=H2e(),s=Kb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Kb(()=>q2e(t,yQ),[t]),d=Kb(()=>({...$2e,...t.transform}),[t.transform]),h=Jb(null),f=!!eu.capturesDOM,g=Jb(null),[y,_]=pQ(!1),[b,S]=pQ(()=>({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}));Zb(()=>{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=Jb(void 0),v=Jb(null);v.current===null&&(ae(a),v.current=de(eu,u,s));let C=Kb(()=>({...e,shaderParentId:s}),[e,s]);Zb(()=>{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]),Zb(()=>{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 E=Jb({}),M=Kb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&jD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Zb(()=>{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(jD(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Zb(()=>{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?W2e(gQ("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 j2e(V.Provider,{value:C,children:[gQ("span",{ref:h,style:X2e,"data-shader-id":s,children:!f&&t.children}),R]})},xQ=vQ});var _Q=z(()=>{"use strict";gH()});var CQ={};vt(CQ,{ShaderComponent:()=>TQ,default:()=>EQ});import{useContext as Y2e,useEffect as Qb,useId as Z2e,useMemo as e_,useRef as t_,useState as SQ}from"react";import{createPortal as K2e}from"react-dom";import{jsx as wQ,jsxs as J2e}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 Q2e(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 ePe,tPe,MQ,TQ,EQ,$D=z(()=>{"use strict";mt();gt();yt();_Q();ePe={display:"contents"},tPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},MQ={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&&(MQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}TQ=t=>{let e=Y2e(V);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=e_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=e_(()=>Q2e(t,MQ),[t]),d=e_(()=>({...tPe,...t.transform}),[t.transform]),h=t_(null),f=!!tu.capturesDOM,g=t_(null),[y,_]=SQ(!1),[b,S]=SQ(()=>({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}));Qb(()=>{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=t_(void 0),v=t_(null);v.current===null&&(ae(a),v.current=de(tu,u,s));let C=e_(()=>({...e,shaderParentId:s}),[e,s]);Qb(()=>{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]),Qb(()=>{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 E=t_({}),M=e_(()=>{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(Qb(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Qb(()=>{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?K2e(wQ("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 J2e(V.Provider,{value:C,children:[wQ("span",{ref:h,style:ePe,"data-shader-id":s,children:!f&&t.children}),R]})},EQ=TQ});var RQ=z(()=>{"use strict";yH()});var NQ={};vt(NQ,{ShaderComponent:()=>OQ,default:()=>UQ});import{useContext as nPe,useEffect as n_,useId as rPe,useMemo as r_,useRef as i_,useState as AQ}from"react";import{createPortal as iPe}from"react-dom";import{jsx as PQ,jsxs as oPe}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 sPe(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 aPe,cPe,IQ,OQ,UQ,ZD=z(()=>{"use strict";mt();gt();yt();RQ();aPe={display:"contents"},cPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},IQ={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&&(IQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}OQ=t=>{let e=nPe(V);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_(()=>sPe(t,IQ),[t]),d=r_(()=>({...cPe,...t.transform}),[t.transform]),h=i_(null),f=!!nu.capturesDOM,g=i_(null),[y,_]=AQ(!1),[b,S]=AQ(()=>({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}));n_(()=>{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=i_(void 0),v=i_(null);v.current===null&&(ae(a),v.current=de(nu,u,s));let C=r_(()=>({...e,shaderParentId:s}),[e,s]);n_(()=>{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]),n_(()=>{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 E=i_({}),M=r_(()=>{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(n_(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),n_(()=>{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?iPe(PQ("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 oPe(V.Provider,{value:C,children:[PQ("span",{ref:h,style:aPe,"data-shader-id":s,children:!f&&t.children}),R]})},UQ=OQ});var DQ=z(()=>{"use strict";vH()});var VQ={};vt(VQ,{ShaderComponent:()=>BQ,default:()=>zQ});import{useContext as lPe,useEffect as o_,useId as uPe,useMemo as s_,useRef as a_,useState as FQ}from"react";import{createPortal as dPe}from"react-dom";import{jsx as LQ,jsxs as fPe}from"react/jsx-runtime";function KD(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 hPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!KD(i)&&(n[r]=i);return n}var mPe,pPe,kQ,BQ,zQ,JD=z(()=>{"use strict";mt();gt();yt();DQ();mPe={display:"contents"},pPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},kQ={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&&(kQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}BQ=t=>{let e=lPe(V);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=uPe(),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_(()=>hPe(t,kQ),[t]),d=s_(()=>({...pPe,...t.transform}),[t.transform]),h=a_(null),f=!!ru.capturesDOM,g=a_(null),[y,_]=FQ(!1),[b,S]=FQ(()=>({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=a_(void 0),v=a_(null);v.current===null&&(ae(a),v.current=de(ru,u,s));let C=s_(()=>({...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,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]),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 E=a_({}),M=s_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&KD(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(KD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?dPe(LQ("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 fPe(V.Provider,{value:C,children:[LQ("span",{ref:h,style:mPe,"data-shader-id":s,children:!f&&t.children}),R]})},zQ=BQ});var GQ=z(()=>{"use strict";xH()});var $Q={};vt($Q,{ShaderComponent:()=>qQ,default:()=>XQ});import{useContext as gPe,useEffect as c_,useId as yPe,useMemo as l_,useRef as u_,useState as HQ}from"react";import{createPortal as vPe}from"react-dom";import{jsx as WQ,jsxs as xPe}from"react/jsx-runtime";function QD(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 bPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!QD(i)&&(n[r]=i);return n}var _Pe,SPe,jQ,qQ,XQ,eF=z(()=>{"use strict";mt();gt();yt();GQ();_Pe={display:"contents"},SPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},jQ={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&&(jQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}qQ=t=>{let e=gPe(V);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_(()=>bPe(t,jQ),[t]),d=l_(()=>({...SPe,...t.transform}),[t.transform]),h=u_(null),f=!!iu.capturesDOM,g=u_(null),[y,_]=HQ(!1),[b,S]=HQ(()=>({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}));c_(()=>{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=u_(void 0),v=u_(null);v.current===null&&(ae(a),v.current=de(iu,u,s));let C=l_(()=>({...e,shaderParentId:s}),[e,s]);c_(()=>{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]),c_(()=>{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 E=u_({}),M=l_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&QD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(c_(()=>{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(QD(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),c_(()=>{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?vPe(WQ("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 xPe(V.Provider,{value:C,children:[WQ("span",{ref:h,style:_Pe,"data-shader-id":s,children:!f&&t.children}),R]})},XQ=qQ});var YQ=z(()=>{"use strict";bH()});var tee={};vt(tee,{ShaderComponent:()=>QQ,default:()=>eee});import{useContext as wPe,useEffect as d_,useId as MPe,useMemo as f_,useRef as h_,useState as ZQ}from"react";import{createPortal as TPe}from"react-dom";import{jsx as KQ,jsxs as EPe}from"react/jsx-runtime";function tF(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 CPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!tF(i)&&(n[r]=i);return n}var RPe,APe,JQ,QQ,eee,nF=z(()=>{"use strict";mt();gt();yt();YQ();RPe={display:"contents"},APe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},JQ={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&&(JQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}QQ=t=>{let e=wPe(V);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=f_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=f_(()=>CPe(t,JQ),[t]),d=f_(()=>({...APe,...t.transform}),[t.transform]),h=h_(null),f=!!ou.capturesDOM,g=h_(null),[y,_]=ZQ(!1),[b,S]=ZQ(()=>({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}));d_(()=>{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=h_(void 0),v=h_(null);v.current===null&&(ae(a),v.current=de(ou,u,s));let C=f_(()=>({...e,shaderParentId:s}),[e,s]);d_(()=>{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]),d_(()=>{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 E=h_({}),M=f_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&tF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(d_(()=>{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(tF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),d_(()=>{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(KQ("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 EPe(V.Provider,{value:C,children:[KQ("span",{ref:h,style:RPe,"data-shader-id":s,children:!f&&t.children}),R]})},eee=QQ});var nee=z(()=>{"use strict";_H()});var cee={};vt(cee,{ShaderComponent:()=>see,default:()=>aee});import{useContext as PPe,useEffect as m_,useId as IPe,useMemo as p_,useRef as g_,useState as ree}from"react";import{createPortal as OPe}from"react-dom";import{jsx as iee,jsxs as UPe}from"react/jsx-runtime";function rF(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 NPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!rF(i)&&(n[r]=i);return n}var DPe,FPe,oee,see,aee,iF=z(()=>{"use strict";mt();gt();yt();nee();DPe={display:"contents"},FPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},oee={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&&(oee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}see=t=>{let e=PPe(V);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=IPe(),s=p_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=p_(()=>NPe(t,oee),[t]),d=p_(()=>({...FPe,...t.transform}),[t.transform]),h=g_(null),f=!!su.capturesDOM,g=g_(null),[y,_]=ree(!1),[b,S]=ree(()=>({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=g_(void 0),v=g_(null);v.current===null&&(ae(a),v.current=de(su,u,s));let C=p_(()=>({...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,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]),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 E=g_({}),M=p_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&rF(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(rF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?OPe(iee("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 UPe(V.Provider,{value:C,children:[iee("span",{ref:h,style:DPe,"data-shader-id":s,children:!f&&t.children}),R]})},aee=see});var lee=z(()=>{"use strict";SH()});var pee={};vt(pee,{ShaderComponent:()=>hee,default:()=>mee});import{useContext as LPe,useEffect as y_,useId as kPe,useMemo as v_,useRef as x_,useState as uee}from"react";import{createPortal as BPe}from"react-dom";import{jsx as dee,jsxs as zPe}from"react/jsx-runtime";function oF(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 VPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!oF(i)&&(n[r]=i);return n}var GPe,HPe,fee,hee,mee,sF=z(()=>{"use strict";mt();gt();yt();lee();GPe={display:"contents"},HPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},fee={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&&(fee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}hee=t=>{let e=LPe(V);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=kPe(),s=v_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=v_(()=>VPe(t,fee),[t]),d=v_(()=>({...HPe,...t.transform}),[t.transform]),h=x_(null),f=!!au.capturesDOM,g=x_(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}));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=x_(void 0),v=x_(null);v.current===null&&(ae(a),v.current=de(au,u,s));let C=v_(()=>({...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,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]),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 E=x_({}),M=v_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&oF(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(oF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?BPe(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 zPe(V.Provider,{value:C,children:[dee("span",{ref:h,style:GPe,"data-shader-id":s,children:!f&&t.children}),R]})},mee=hee});var gee=z(()=>{"use strict";wH()});var See={};vt(See,{ShaderComponent:()=>bee,default:()=>_ee});import{useContext as WPe,useEffect as b_,useId as jPe,useMemo as __,useRef as S_,useState as yee}from"react";import{createPortal as qPe}from"react-dom";import{jsx as vee,jsxs as XPe}from"react/jsx-runtime";function aF(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 $Pe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!aF(i)&&(n[r]=i);return n}var YPe,ZPe,xee,bee,_ee,cF=z(()=>{"use strict";mt();gt();yt();gee();YPe={display:"contents"},ZPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},xee={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&&(xee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}bee=t=>{let e=WPe(V);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=jPe(),s=__(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=__(()=>$Pe(t,xee),[t]),d=__(()=>({...ZPe,...t.transform}),[t.transform]),h=S_(null),f=!!cu.capturesDOM,g=S_(null),[y,_]=yee(!1),[b,S]=yee(()=>({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=S_(void 0),v=S_(null);v.current===null&&(ae(a),v.current=de(cu,u,s));let C=__(()=>({...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,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]),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 E=S_({}),M=__(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&aF(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(aF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?qPe(vee("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 XPe(V.Provider,{value:C,children:[vee("span",{ref:h,style:YPe,"data-shader-id":s,children:!f&&t.children}),R]})},_ee=bee});var wee=z(()=>{"use strict";MH()});var Aee={};vt(Aee,{ShaderComponent:()=>Cee,default:()=>Ree});import{useContext as KPe,useEffect as w_,useId as JPe,useMemo as M_,useRef as T_,useState as Mee}from"react";import{createPortal as QPe}from"react-dom";import{jsx as Tee,jsxs as eIe}from"react/jsx-runtime";function lF(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 tIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!lF(i)&&(n[r]=i);return n}var nIe,rIe,Eee,Cee,Ree,uF=z(()=>{"use strict";mt();gt();yt();wee();nIe={display:"contents"},rIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Eee={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&&(Eee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Cee=t=>{let e=KPe(V);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=JPe(),s=M_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=M_(()=>tIe(t,Eee),[t]),d=M_(()=>({...rIe,...t.transform}),[t.transform]),h=T_(null),f=!!lu.capturesDOM,g=T_(null),[y,_]=Mee(!1),[b,S]=Mee(()=>({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}));w_(()=>{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=T_(void 0),v=T_(null);v.current===null&&(ae(a),v.current=de(lu,u,s));let C=M_(()=>({...e,shaderParentId:s}),[e,s]);w_(()=>{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]),w_(()=>{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 E=T_({}),M=M_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&lF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(w_(()=>{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(lF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),w_(()=>{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?QPe(Tee("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 eIe(V.Provider,{value:C,children:[Tee("span",{ref:h,style:nIe,"data-shader-id":s,children:!f&&t.children}),R]})},Ree=Cee});var Pee=z(()=>{"use strict";TH()});var Fee={};vt(Fee,{ShaderComponent:()=>Nee,default:()=>Dee});import{useContext as iIe,useEffect as E_,useId as oIe,useMemo as C_,useRef as R_,useState as Iee}from"react";import{createPortal as sIe}from"react-dom";import{jsx as Oee,jsxs as aIe}from"react/jsx-runtime";function dF(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&&!dF(i)&&(n[r]=i);return n}var lIe,uIe,Uee,Nee,Dee,fF=z(()=>{"use strict";mt();gt();yt();Pee();lIe={display:"contents"},uIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Uee={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&&(Uee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Nee=t=>{let e=iIe(V);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=oIe(),s=C_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=C_(()=>cIe(t,Uee),[t]),d=C_(()=>({...uIe,...t.transform}),[t.transform]),h=R_(null),f=!!uu.capturesDOM,g=R_(null),[y,_]=Iee(!1),[b,S]=Iee(()=>({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=R_(void 0),v=R_(null);v.current===null&&(ae(a),v.current=de(uu,u,s));let C=C_(()=>({...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,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]),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 E=R_({}),M=C_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&dF(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(dF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?sIe(Oee("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 aIe(V.Provider,{value:C,children:[Oee("span",{ref:h,style:lIe,"data-shader-id":s,children:!f&&t.children}),R]})},Dee=Nee});var Lee=z(()=>{"use strict";EH()});var Hee={};vt(Hee,{ShaderComponent:()=>Vee,default:()=>Gee});import{useContext as dIe,useEffect as A_,useId as fIe,useMemo as P_,useRef as I_,useState as kee}from"react";import{createPortal as hIe}from"react-dom";import{jsx as Bee,jsxs as mIe}from"react/jsx-runtime";function hF(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 pIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!hF(i)&&(n[r]=i);return n}var gIe,yIe,zee,Vee,Gee,mF=z(()=>{"use strict";mt();gt();yt();Lee();gIe={display:"contents"},yIe={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)}Vee=t=>{let e=dIe(V);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=fIe(),s=P_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=P_(()=>pIe(t,zee),[t]),d=P_(()=>({...yIe,...t.transform}),[t.transform]),h=I_(null),f=!!du.capturesDOM,g=I_(null),[y,_]=kee(!1),[b,S]=kee(()=>({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}));A_(()=>{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=I_(void 0),v=I_(null);v.current===null&&(ae(a),v.current=de(du,u,s));let C=P_(()=>({...e,shaderParentId:s}),[e,s]);A_(()=>{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]),A_(()=>{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 E=I_({}),M=P_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&hF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(A_(()=>{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(hF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),A_(()=>{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?hIe(Bee("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 mIe(V.Provider,{value:C,children:[Bee("span",{ref:h,style:gIe,"data-shader-id":s,children:!f&&t.children}),R]})},Gee=Vee});var Wee=z(()=>{"use strict";CH()});var Zee={};vt(Zee,{ShaderComponent:()=>$ee,default:()=>Yee});import{useContext as vIe,useEffect as O_,useId as xIe,useMemo as U_,useRef as N_,useState as jee}from"react";import{createPortal as bIe}from"react-dom";import{jsx as qee,jsxs as _Ie}from"react/jsx-runtime";function pF(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 SIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!pF(i)&&(n[r]=i);return n}var wIe,MIe,Xee,$ee,Yee,gF=z(()=>{"use strict";mt();gt();yt();Wee();wIe={display:"contents"},MIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Xee={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&&(Xee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}$ee=t=>{let e=vIe(V);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=xIe(),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_(()=>SIe(t,Xee),[t]),d=U_(()=>({...MIe,...t.transform}),[t.transform]),h=N_(null),f=!!fu.capturesDOM,g=N_(null),[y,_]=jee(!1),[b,S]=jee(()=>({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=N_(void 0),v=N_(null);v.current===null&&(ae(a),v.current=de(fu,u,s));let C=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 E=N_({}),M=U_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&pF(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(pF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?bIe(qee("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 _Ie(V.Provider,{value:C,children:[qee("span",{ref:h,style:wIe,"data-shader-id":s,children:!f&&t.children}),R]})},Yee=$ee});var Kee=z(()=>{"use strict";IH()});var rte={};vt(rte,{ShaderComponent:()=>tte,default:()=>nte});import{useContext as TIe,useEffect as D_,useId as EIe,useMemo as F_,useRef as L_,useState as Jee}from"react";import{createPortal as CIe}from"react-dom";import{jsx as Qee,jsxs as RIe}from"react/jsx-runtime";function yF(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 AIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!yF(i)&&(n[r]=i);return n}var PIe,IIe,ete,tte,nte,vF=z(()=>{"use strict";mt();gt();yt();Kee();PIe={display:"contents"},IIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},ete={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&&(ete[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}tte=t=>{let e=TIe(V);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=EIe(),s=F_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=F_(()=>AIe(t,ete),[t]),d=F_(()=>({...IIe,...t.transform}),[t.transform]),h=L_(null),f=!!hu.capturesDOM,g=L_(null),[y,_]=Jee(!1),[b,S]=Jee(()=>({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}));D_(()=>{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=L_(void 0),v=L_(null);v.current===null&&(ae(a),v.current=de(hu,u,s));let C=F_(()=>({...e,shaderParentId:s}),[e,s]);D_(()=>{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]),D_(()=>{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 E=L_({}),M=F_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&yF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(D_(()=>{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(yF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),D_(()=>{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?CIe(Qee("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 RIe(V.Provider,{value:C,children:[Qee("span",{ref:h,style:PIe,"data-shader-id":s,children:!f&&t.children}),R]})},nte=tte});var ite=z(()=>{"use strict";UH()});var ute={};vt(ute,{ShaderComponent:()=>cte,default:()=>lte});import{useContext as OIe,useEffect as k_,useId as UIe,useMemo as B_,useRef as z_,useState as ote}from"react";import{createPortal as NIe}from"react-dom";import{jsx as ste,jsxs as DIe}from"react/jsx-runtime";function xF(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&&!xF(i)&&(n[r]=i);return n}var LIe,kIe,ate,cte,lte,bF=z(()=>{"use strict";mt();gt();yt();ite();LIe={display:"contents"},kIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},ate={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&&(ate[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}cte=t=>{let e=OIe(V);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=UIe(),s=B_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=B_(()=>FIe(t,ate),[t]),d=B_(()=>({...kIe,...t.transform}),[t.transform]),h=z_(null),f=!!mu.capturesDOM,g=z_(null),[y,_]=ote(!1),[b,S]=ote(()=>({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=z_(void 0),v=z_(null);v.current===null&&(ae(a),v.current=de(mu,u,s));let C=B_(()=>({...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,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]),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 E=z_({}),M=B_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&xF(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(xF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?NIe(ste("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(V.Provider,{value:C,children:[ste("span",{ref:h,style:LIe,"data-shader-id":s,children:!f&&t.children}),R]})},lte=cte});var dte=z(()=>{"use strict";NH()});var yte={};vt(yte,{ShaderComponent:()=>pte,default:()=>gte});import{useContext as BIe,useEffect as V_,useId as zIe,useMemo as G_,useRef as H_,useState as fte}from"react";import{createPortal as VIe}from"react-dom";import{jsx as hte,jsxs as GIe}from"react/jsx-runtime";function _F(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 HIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!_F(i)&&(n[r]=i);return n}var WIe,jIe,mte,pte,gte,SF=z(()=>{"use strict";mt();gt();yt();dte();WIe={display:"contents"},jIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},mte={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&&(mte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}pte=t=>{let e=BIe(V);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=zIe(),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_(()=>HIe(t,mte),[t]),d=G_(()=>({...jIe,...t.transform}),[t.transform]),h=H_(null),f=!!pu.capturesDOM,g=H_(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}));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=H_(void 0),v=H_(null);v.current===null&&(ae(a),v.current=de(pu,u,s));let C=G_(()=>({...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,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]),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 E=H_({}),M=G_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&_F(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(_F(T))return;T!==E.current[c]&&(i(s,c,T),E.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?VIe(hte("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 GIe(V.Provider,{value:C,children:[hte("span",{ref:h,style:WIe,"data-shader-id":s,children:!f&&t.children}),R]})},gte=pte});var vte=z(()=>{"use strict";DH()});var Mte={};vt(Mte,{ShaderComponent:()=>Ste,default:()=>wte});import{useContext as qIe,useEffect as W_,useId as XIe,useMemo as j_,useRef as q_,useState as xte}from"react";import{createPortal as $Ie}from"react-dom";import{jsx as bte,jsxs as YIe}from"react/jsx-runtime";function wF(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&&!wF(i)&&(n[r]=i);return n}var KIe,JIe,_te,Ste,wte,MF=z(()=>{"use strict";mt();gt();yt();vte();KIe={display:"contents"},JIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},_te={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&&(_te[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Ste=t=>{let e=qIe(V);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=XIe(),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_(()=>ZIe(t,_te),[t]),d=j_(()=>({...JIe,...t.transform}),[t.transform]),h=q_(null),f=!!gu.capturesDOM,g=q_(null),[y,_]=xte(!1),[b,S]=xte(()=>({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}));W_(()=>{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&&(ae(a),v.current=de(gu,u,s));let C=j_(()=>({...e,shaderParentId:s}),[e,s]);W_(()=>{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]),W_(()=>{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 E=q_({}),M=j_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&wF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(W_(()=>{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(wF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),W_(()=>{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?$Ie(bte("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 YIe(V.Provider,{value:C,children:[bte("span",{ref:h,style:KIe,"data-shader-id":s,children:!f&&t.children}),R]})},wte=Ste});var Tte=z(()=>{"use strict";FH()});var Ite={};vt(Ite,{ShaderComponent:()=>Ate,default:()=>Pte});import{useContext as QIe,useEffect as X_,useId as eOe,useMemo as $_,useRef as Y_,useState as Ete}from"react";import{createPortal as tOe}from"react-dom";import{jsx as Cte,jsxs as nOe}from"react/jsx-runtime";function TF(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 rOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!TF(i)&&(n[r]=i);return n}var iOe,oOe,Rte,Ate,Pte,EF=z(()=>{"use strict";mt();gt();yt();Tte();iOe={display:"contents"},oOe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Rte={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&&(Rte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Ate=t=>{let e=QIe(V);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=eOe(),s=$_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=$_(()=>rOe(t,Rte),[t]),d=$_(()=>({...oOe,...t.transform}),[t.transform]),h=Y_(null),f=!!yu.capturesDOM,g=Y_(null),[y,_]=Ete(!1),[b,S]=Ete(()=>({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=Y_(void 0),v=Y_(null);v.current===null&&(ae(a),v.current=de(yu,u,s));let C=$_(()=>({...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,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]),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 E=Y_({}),M=$_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&TF(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(TF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?tOe(Cte("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 nOe(V.Provider,{value:C,children:[Cte("span",{ref:h,style:iOe,"data-shader-id":s,children:!f&&t.children}),R]})},Pte=Ate});var Ote=z(()=>{"use strict";LH()});var kte={};vt(kte,{ShaderComponent:()=>Fte,default:()=>Lte});import{useContext as sOe,useEffect as Z_,useId as aOe,useMemo as K_,useRef as J_,useState as Ute}from"react";import{createPortal as cOe}from"react-dom";import{jsx as Nte,jsxs as lOe}from"react/jsx-runtime";function CF(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 uOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!CF(i)&&(n[r]=i);return n}var dOe,fOe,Dte,Fte,Lte,RF=z(()=>{"use strict";mt();gt();yt();Ote();dOe={display:"contents"},fOe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Dte={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&&(Dte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Fte=t=>{let e=sOe(V);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=aOe(),s=K_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=K_(()=>uOe(t,Dte),[t]),d=K_(()=>({...fOe,...t.transform}),[t.transform]),h=J_(null),f=!!vu.capturesDOM,g=J_(null),[y,_]=Ute(!1),[b,S]=Ute(()=>({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}));Z_(()=>{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=J_(void 0),v=J_(null);v.current===null&&(ae(a),v.current=de(vu,u,s));let C=K_(()=>({...e,shaderParentId:s}),[e,s]);Z_(()=>{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]),Z_(()=>{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 E=J_({}),M=K_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&CF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Z_(()=>{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(CF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Z_(()=>{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?cOe(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 lOe(V.Provider,{value:C,children:[Nte("span",{ref:h,style:dOe,"data-shader-id":s,children:!f&&t.children}),R]})},Lte=Fte});var Bte=z(()=>{"use strict";kH()});var jte={};vt(jte,{ShaderComponent:()=>Hte,default:()=>Wte});import{useContext as hOe,useEffect as Q_,useId as mOe,useMemo as eS,useRef as tS,useState as zte}from"react";import{createPortal as pOe}from"react-dom";import{jsx as Vte,jsxs as gOe}from"react/jsx-runtime";function AF(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 yOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!AF(i)&&(n[r]=i);return n}var vOe,xOe,Gte,Hte,Wte,PF=z(()=>{"use strict";mt();gt();yt();Bte();vOe={display:"contents"},xOe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Gte={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&&(Gte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Hte=t=>{let e=hOe(V);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=mOe(),s=eS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=eS(()=>yOe(t,Gte),[t]),d=eS(()=>({...xOe,...t.transform}),[t.transform]),h=tS(null),f=!!xu.capturesDOM,g=tS(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}));Q_(()=>{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=tS(void 0),v=tS(null);v.current===null&&(ae(a),v.current=de(xu,u,s));let C=eS(()=>({...e,shaderParentId:s}),[e,s]);Q_(()=>{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]),Q_(()=>{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 E=tS({}),M=eS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&AF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Q_(()=>{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(AF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Q_(()=>{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?pOe(Vte("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 gOe(V.Provider,{value:C,children:[Vte("span",{ref:h,style:vOe,"data-shader-id":s,children:!f&&t.children}),R]})},Wte=Hte});var qte=z(()=>{"use strict";BH()});var Jte={};vt(Jte,{ShaderComponent:()=>Zte,default:()=>Kte});import{useContext as bOe,useEffect as nS,useId as _Oe,useMemo as rS,useRef as iS,useState as Xte}from"react";import{createPortal as SOe}from"react-dom";import{jsx as $te,jsxs as wOe}from"react/jsx-runtime";function IF(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 MOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!IF(i)&&(n[r]=i);return n}var TOe,EOe,Yte,Zte,Kte,OF=z(()=>{"use strict";mt();gt();yt();qte();TOe={display:"contents"},EOe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Yte={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&&(Yte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Zte=t=>{let e=bOe(V);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=_Oe(),s=rS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=rS(()=>MOe(t,Yte),[t]),d=rS(()=>({...EOe,...t.transform}),[t.transform]),h=iS(null),f=!!bu.capturesDOM,g=iS(null),[y,_]=Xte(!1),[b,S]=Xte(()=>({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}));nS(()=>{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=iS(void 0),v=iS(null);v.current===null&&(ae(a),v.current=de(bu,u,s));let C=rS(()=>({...e,shaderParentId:s}),[e,s]);nS(()=>{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]),nS(()=>{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 E=iS({}),M=rS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&IF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(nS(()=>{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(IF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),nS(()=>{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?SOe($te("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 wOe(V.Provider,{value:C,children:[$te("span",{ref:h,style:TOe,"data-shader-id":s,children:!f&&t.children}),R]})},Kte=Zte});var Qte=z(()=>{"use strict";zH()});var one={};vt(one,{ShaderComponent:()=>rne,default:()=>ine});import{useContext as COe,useEffect as oS,useId as ROe,useMemo as sS,useRef as aS,useState as ene}from"react";import{createPortal as AOe}from"react-dom";import{jsx as tne,jsxs as POe}from"react/jsx-runtime";function UF(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 IOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!UF(i)&&(n[r]=i);return n}var OOe,UOe,nne,rne,ine,NF=z(()=>{"use strict";mt();gt();yt();Qte();OOe={display:"contents"},UOe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},nne={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&&(nne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}rne=t=>{let e=COe(V);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=ROe(),s=sS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=sS(()=>IOe(t,nne),[t]),d=sS(()=>({...UOe,...t.transform}),[t.transform]),h=aS(null),f=!!_u.capturesDOM,g=aS(null),[y,_]=ene(!1),[b,S]=ene(()=>({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}));oS(()=>{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=aS(void 0),v=aS(null);v.current===null&&(ae(a),v.current=de(_u,u,s));let C=sS(()=>({...e,shaderParentId:s}),[e,s]);oS(()=>{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]),oS(()=>{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 E=aS({}),M=sS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&UF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(oS(()=>{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(UF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),oS(()=>{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?AOe(tne("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 POe(V.Provider,{value:C,children:[tne("span",{ref:h,style:OOe,"data-shader-id":s,children:!f&&t.children}),R]})},ine=rne});var sne=z(()=>{"use strict";VH()});var fne={};vt(fne,{ShaderComponent:()=>une,default:()=>dne});import{useContext as NOe,useEffect as cS,useId as DOe,useMemo as lS,useRef as uS,useState as ane}from"react";import{createPortal as FOe}from"react-dom";import{jsx as cne,jsxs as LOe}from"react/jsx-runtime";function DF(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 kOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!DF(i)&&(n[r]=i);return n}var BOe,zOe,lne,une,dne,FF=z(()=>{"use strict";mt();gt();yt();sne();BOe={display:"contents"},zOe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},lne={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&&(lne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}une=t=>{let e=NOe(V);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=DOe(),s=lS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=lS(()=>kOe(t,lne),[t]),d=lS(()=>({...zOe,...t.transform}),[t.transform]),h=uS(null),f=!!Su.capturesDOM,g=uS(null),[y,_]=ane(!1),[b,S]=ane(()=>({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}));cS(()=>{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=uS(void 0),v=uS(null);v.current===null&&(ae(a),v.current=de(Su,u,s));let C=lS(()=>({...e,shaderParentId:s}),[e,s]);cS(()=>{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]),cS(()=>{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 E=uS({}),M=lS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&DF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(cS(()=>{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(DF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),cS(()=>{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?FOe(cne("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 LOe(V.Provider,{value:C,children:[cne("span",{ref:h,style:BOe,"data-shader-id":s,children:!f&&t.children}),R]})},dne=une});var hne=z(()=>{"use strict";GH()});var xne={};vt(xne,{ShaderComponent:()=>yne,default:()=>vne});import{useContext as VOe,useEffect as dS,useId as GOe,useMemo as fS,useRef as hS,useState as mne}from"react";import{createPortal as HOe}from"react-dom";import{jsx as pne,jsxs as WOe}from"react/jsx-runtime";function LF(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 jOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!LF(i)&&(n[r]=i);return n}var qOe,XOe,gne,yne,vne,kF=z(()=>{"use strict";mt();gt();yt();hne();qOe={display:"contents"},XOe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},gne={blendMode:"normal",visible:!0};try{wu&&wu.props&&Object.entries(wu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(gne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}yne=t=>{let e=VOe(V);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=GOe(),s=fS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=fS(()=>jOe(t,gne),[t]),d=fS(()=>({...XOe,...t.transform}),[t.transform]),h=hS(null),f=!!wu.capturesDOM,g=hS(null),[y,_]=mne(!1),[b,S]=mne(()=>({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}));dS(()=>{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=hS(void 0),v=hS(null);v.current===null&&(ae(a),v.current=de(wu,u,s));let C=fS(()=>({...e,shaderParentId:s}),[e,s]);dS(()=>{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,wu.fragmentNode,n,c,v.current,wu,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]),dS(()=>{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 E=hS({}),M=fS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&LF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(dS(()=>{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(LF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),dS(()=>{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?HOe(pne("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 WOe(V.Provider,{value:C,children:[pne("span",{ref:h,style:qOe,"data-shader-id":s,children:!f&&t.children}),R]})},vne=yne});var bne=z(()=>{"use strict";HH()});var Ene={};vt(Ene,{ShaderComponent:()=>Mne,default:()=>Tne});import{useContext as $Oe,useEffect as mS,useId as YOe,useMemo as pS,useRef as gS,useState as _ne}from"react";import{createPortal as ZOe}from"react-dom";import{jsx as Sne,jsxs as KOe}from"react/jsx-runtime";function BF(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 JOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!BF(i)&&(n[r]=i);return n}var QOe,eUe,wne,Mne,Tne,zF=z(()=>{"use strict";mt();gt();yt();bne();QOe={display:"contents"},eUe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},wne={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&&(wne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Mne=t=>{let e=$Oe(V);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=YOe(),s=pS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=pS(()=>JOe(t,wne),[t]),d=pS(()=>({...eUe,...t.transform}),[t.transform]),h=gS(null),f=!!Mu.capturesDOM,g=gS(null),[y,_]=_ne(!1),[b,S]=_ne(()=>({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}));mS(()=>{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=gS(void 0),v=gS(null);v.current===null&&(ae(a),v.current=de(Mu,u,s));let C=pS(()=>({...e,shaderParentId:s}),[e,s]);mS(()=>{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]),mS(()=>{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 E=gS({}),M=pS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&BF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(mS(()=>{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(BF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),mS(()=>{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?ZOe(Sne("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 KOe(V.Provider,{value:C,children:[Sne("span",{ref:h,style:QOe,"data-shader-id":s,children:!f&&t.children}),R]})},Tne=Mne});var Cne=z(()=>{"use strict";WH()});var Une={};vt(Une,{ShaderComponent:()=>Ine,default:()=>One});import{useContext as tUe,useEffect as yS,useId as nUe,useMemo as vS,useRef as xS,useState as Rne}from"react";import{createPortal as rUe}from"react-dom";import{jsx as Ane,jsxs as iUe}from"react/jsx-runtime";function VF(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 oUe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!VF(i)&&(n[r]=i);return n}var sUe,aUe,Pne,Ine,One,GF=z(()=>{"use strict";mt();gt();yt();Cne();sUe={display:"contents"},aUe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Pne={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&&(Pne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Ine=t=>{let e=tUe(V);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=nUe(),s=vS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=vS(()=>oUe(t,Pne),[t]),d=vS(()=>({...aUe,...t.transform}),[t.transform]),h=xS(null),f=!!Tu.capturesDOM,g=xS(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}));yS(()=>{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=xS(void 0),v=xS(null);v.current===null&&(ae(a),v.current=de(Tu,u,s));let C=vS(()=>({...e,shaderParentId:s}),[e,s]);yS(()=>{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]),yS(()=>{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 E=xS({}),M=vS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&VF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(yS(()=>{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(VF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),yS(()=>{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?rUe(Ane("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 iUe(V.Provider,{value:C,children:[Ane("span",{ref:h,style:sUe,"data-shader-id":s,children:!f&&t.children}),R]})},One=Ine});var Nne=z(()=>{"use strict";qH()});var zne={};vt(zne,{ShaderComponent:()=>kne,default:()=>Bne});import{useContext as cUe,useEffect as bS,useId as lUe,useMemo as _S,useRef as SS,useState as Dne}from"react";import{createPortal as uUe}from"react-dom";import{jsx as Fne,jsxs as dUe}from"react/jsx-runtime";function HF(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 fUe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!HF(i)&&(n[r]=i);return n}var hUe,mUe,Lne,kne,Bne,WF=z(()=>{"use strict";mt();gt();yt();Nne();hUe={display:"contents"},mUe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Lne={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&&(Lne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}kne=t=>{let e=cUe(V);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=lUe(),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(()=>fUe(t,Lne),[t]),d=_S(()=>({...mUe,...t.transform}),[t.transform]),h=SS(null),f=!!Eu.capturesDOM,g=SS(null),[y,_]=Dne(!1),[b,S]=Dne(()=>({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}));bS(()=>{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=SS(void 0),v=SS(null);v.current===null&&(ae(a),v.current=de(Eu,u,s));let C=_S(()=>({...e,shaderParentId:s}),[e,s]);bS(()=>{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]),bS(()=>{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 E=SS({}),M=_S(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&HF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(bS(()=>{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(HF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),bS(()=>{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?uUe(Fne("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 dUe(V.Provider,{value:C,children:[Fne("span",{ref:h,style:hUe,"data-shader-id":s,children:!f&&t.children}),R]})},Bne=kne});var Vne=z(()=>{"use strict";XH()});var Xne={};vt(Xne,{ShaderComponent:()=>jne,default:()=>qne});import{useContext as pUe,useEffect as wS,useId as gUe,useMemo as MS,useRef as TS,useState as Gne}from"react";import{createPortal as yUe}from"react-dom";import{jsx as Hne,jsxs as vUe}from"react/jsx-runtime";function jF(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 xUe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!jF(i)&&(n[r]=i);return n}var bUe,_Ue,Wne,jne,qne,qF=z(()=>{"use strict";mt();gt();yt();Vne();bUe={display:"contents"},_Ue={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Wne={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&&(Wne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}jne=t=>{let e=pUe(V);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=gUe(),s=MS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=MS(()=>xUe(t,Wne),[t]),d=MS(()=>({..._Ue,...t.transform}),[t.transform]),h=TS(null),f=!!Cu.capturesDOM,g=TS(null),[y,_]=Gne(!1),[b,S]=Gne(()=>({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}));wS(()=>{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=TS(void 0),v=TS(null);v.current===null&&(ae(a),v.current=de(Cu,u,s));let C=MS(()=>({...e,shaderParentId:s}),[e,s]);wS(()=>{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]),wS(()=>{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 E=TS({}),M=MS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&jF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(wS(()=>{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(jF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),wS(()=>{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?yUe(Hne("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 vUe(V.Provider,{value:C,children:[Hne("span",{ref:h,style:bUe,"data-shader-id":s,children:!f&&t.children}),R]})},qne=jne});var $ne=z(()=>{"use strict";$H()});var ere={};vt(ere,{ShaderComponent:()=>Jne,default:()=>Qne});import{useContext as SUe,useEffect as ES,useId as wUe,useMemo as CS,useRef as RS,useState as Yne}from"react";import{createPortal as MUe}from"react-dom";import{jsx as Zne,jsxs as TUe}from"react/jsx-runtime";function XF(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 EUe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!XF(i)&&(n[r]=i);return n}var CUe,RUe,Kne,Jne,Qne,$F=z(()=>{"use strict";mt();gt();yt();$ne();CUe={display:"contents"},RUe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Kne={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&&(Kne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Jne=t=>{let e=SUe(V);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=wUe(),s=CS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=CS(()=>EUe(t,Kne),[t]),d=CS(()=>({...RUe,...t.transform}),[t.transform]),h=RS(null),f=!!Ru.capturesDOM,g=RS(null),[y,_]=Yne(!1),[b,S]=Yne(()=>({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=RS(void 0),v=RS(null);v.current===null&&(ae(a),v.current=de(Ru,u,s));let C=CS(()=>({...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,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]),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 E=RS({}),M=CS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&XF(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(XF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?MUe(Zne("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 TUe(V.Provider,{value:C,children:[Zne("span",{ref:h,style:CUe,"data-shader-id":s,children:!f&&t.children}),R]})},Qne=Jne});var tre=z(()=>{"use strict";YH()});var are={};vt(are,{ShaderComponent:()=>ore,default:()=>sre});import{useContext as AUe,useEffect as AS,useId as PUe,useMemo as PS,useRef as IS,useState as nre}from"react";import{createPortal as IUe}from"react-dom";import{jsx as rre,jsxs as OUe}from"react/jsx-runtime";function YF(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 UUe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!YF(i)&&(n[r]=i);return n}var NUe,DUe,ire,ore,sre,ZF=z(()=>{"use strict";mt();gt();yt();tre();NUe={display:"contents"},DUe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},ire={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&&(ire[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}ore=t=>{let e=AUe(V);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=PUe(),s=PS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=PS(()=>UUe(t,ire),[t]),d=PS(()=>({...DUe,...t.transform}),[t.transform]),h=IS(null),f=!!Au.capturesDOM,g=IS(null),[y,_]=nre(!1),[b,S]=nre(()=>({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}));AS(()=>{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=IS(void 0),v=IS(null);v.current===null&&(ae(a),v.current=de(Au,u,s));let C=PS(()=>({...e,shaderParentId:s}),[e,s]);AS(()=>{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]),AS(()=>{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 E=IS({}),M=PS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&YF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(AS(()=>{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(YF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),AS(()=>{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?IUe(rre("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 OUe(V.Provider,{value:C,children:[rre("span",{ref:h,style:NUe,"data-shader-id":s,children:!f&&t.children}),R]})},sre=ore});var cre=z(()=>{"use strict";ZH()});var mre={};vt(mre,{ShaderComponent:()=>fre,default:()=>hre});import{useContext as FUe,useEffect as OS,useId as LUe,useMemo as US,useRef as NS,useState as lre}from"react";import{createPortal as kUe}from"react-dom";import{jsx as ure,jsxs as BUe}from"react/jsx-runtime";function KF(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 zUe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!KF(i)&&(n[r]=i);return n}var VUe,GUe,dre,fre,hre,JF=z(()=>{"use strict";mt();gt();yt();cre();VUe={display:"contents"},GUe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},dre={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&&(dre[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}fre=t=>{let e=FUe(V);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=LUe(),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(()=>zUe(t,dre),[t]),d=US(()=>({...GUe,...t.transform}),[t.transform]),h=NS(null),f=!!Pu.capturesDOM,g=NS(null),[y,_]=lre(!1),[b,S]=lre(()=>({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}));OS(()=>{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&&(ae(a),v.current=de(Pu,u,s));let C=US(()=>({...e,shaderParentId:s}),[e,s]);OS(()=>{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]),OS(()=>{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 E=NS({}),M=US(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&KF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(OS(()=>{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(KF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),OS(()=>{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?kUe(ure("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 BUe(V.Provider,{value:C,children:[ure("span",{ref:h,style:VUe,"data-shader-id":s,children:!f&&t.children}),R]})},hre=fre});var pre=z(()=>{"use strict";KH()});var _re={};vt(_re,{ShaderComponent:()=>xre,default:()=>bre});import{useContext as HUe,useEffect as DS,useId as WUe,useMemo as FS,useRef as LS,useState as gre}from"react";import{createPortal as jUe}from"react-dom";import{jsx as yre,jsxs as qUe}from"react/jsx-runtime";function QF(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 XUe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!QF(i)&&(n[r]=i);return n}var $Ue,YUe,vre,xre,bre,eL=z(()=>{"use strict";mt();gt();yt();pre();$Ue={display:"contents"},YUe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},vre={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&&(vre[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}xre=t=>{let e=HUe(V);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=WUe(),s=FS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=FS(()=>XUe(t,vre),[t]),d=FS(()=>({...YUe,...t.transform}),[t.transform]),h=LS(null),f=!!Iu.capturesDOM,g=LS(null),[y,_]=gre(!1),[b,S]=gre(()=>({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}));DS(()=>{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=LS(void 0),v=LS(null);v.current===null&&(ae(a),v.current=de(Iu,u,s));let C=FS(()=>({...e,shaderParentId:s}),[e,s]);DS(()=>{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]),DS(()=>{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 E=LS({}),M=FS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&QF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(DS(()=>{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(QF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),DS(()=>{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?jUe(yre("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 qUe(V.Provider,{value:C,children:[yre("span",{ref:h,style:$Ue,"data-shader-id":s,children:!f&&t.children}),R]})},bre=xre});var Sre=z(()=>{"use strict";JH()});var Rre={};vt(Rre,{ShaderComponent:()=>Ere,default:()=>Cre});import{useContext as ZUe,useEffect as kS,useId as KUe,useMemo as BS,useRef as zS,useState as wre}from"react";import{createPortal as JUe}from"react-dom";import{jsx as Mre,jsxs as QUe}from"react/jsx-runtime";function tL(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&&!tL(i)&&(n[r]=i);return n}var tNe,nNe,Tre,Ere,Cre,nL=z(()=>{"use strict";mt();gt();yt();Sre();tNe={display:"contents"},nNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Tre={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&&(Tre[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Ere=t=>{let e=ZUe(V);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=KUe(),s=BS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=BS(()=>eNe(t,Tre),[t]),d=BS(()=>({...nNe,...t.transform}),[t.transform]),h=zS(null),f=!!Ou.capturesDOM,g=zS(null),[y,_]=wre(!1),[b,S]=wre(()=>({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}));kS(()=>{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=zS(void 0),v=zS(null);v.current===null&&(ae(a),v.current=de(Ou,u,s));let C=BS(()=>({...e,shaderParentId:s}),[e,s]);kS(()=>{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]),kS(()=>{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 E=zS({}),M=BS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&tL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(kS(()=>{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(tL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),kS(()=>{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?JUe(Mre("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 QUe(V.Provider,{value:C,children:[Mre("span",{ref:h,style:tNe,"data-shader-id":s,children:!f&&t.children}),R]})},Cre=Ere});var Are=z(()=>{"use strict";eW()});var Dre={};vt(Dre,{ShaderComponent:()=>Ure,default:()=>Nre});import{useContext as rNe,useEffect as VS,useId as iNe,useMemo as GS,useRef as HS,useState as Pre}from"react";import{createPortal as oNe}from"react-dom";import{jsx as Ire,jsxs as sNe}from"react/jsx-runtime";function rL(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&&!rL(i)&&(n[r]=i);return n}var cNe,lNe,Ore,Ure,Nre,iL=z(()=>{"use strict";mt();gt();yt();Are();cNe={display:"contents"},lNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Ore={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&&(Ore[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Ure=t=>{let e=rNe(V);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=GS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=GS(()=>aNe(t,Ore),[t]),d=GS(()=>({...lNe,...t.transform}),[t.transform]),h=HS(null),f=!!Nu.capturesDOM,g=HS(null),[y,_]=Pre(!1),[b,S]=Pre(()=>({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}));VS(()=>{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=HS(void 0),v=HS(null);v.current===null&&(ae(a),v.current=de(Nu,u,s));let C=GS(()=>({...e,shaderParentId:s}),[e,s]);VS(()=>{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]),VS(()=>{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 E=HS({}),M=GS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&rL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(VS(()=>{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(rL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),VS(()=>{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(Ire("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(V.Provider,{value:C,children:[Ire("span",{ref:h,style:cNe,"data-shader-id":s,children:!f&&t.children}),R]})},Nre=Ure});var Fre=z(()=>{"use strict";QH()});var Gre={};vt(Gre,{ShaderComponent:()=>zre,default:()=>Vre});import{useContext as uNe,useEffect as WS,useId as dNe,useMemo as jS,useRef as qS,useState as Lre}from"react";import{createPortal as fNe}from"react-dom";import{jsx as kre,jsxs as hNe}from"react/jsx-runtime";function oL(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 mNe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!oL(i)&&(n[r]=i);return n}var pNe,gNe,Bre,zre,Vre,sL=z(()=>{"use strict";mt();gt();yt();Fre();pNe={display:"contents"},gNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Bre={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&&(Bre[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}zre=t=>{let e=uNe(V);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=dNe(),s=jS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=jS(()=>mNe(t,Bre),[t]),d=jS(()=>({...gNe,...t.transform}),[t.transform]),h=qS(null),f=!!Uu.capturesDOM,g=qS(null),[y,_]=Lre(!1),[b,S]=Lre(()=>({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}));WS(()=>{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=qS(void 0),v=qS(null);v.current===null&&(ae(a),v.current=de(Uu,u,s));let C=jS(()=>({...e,shaderParentId:s}),[e,s]);WS(()=>{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]),WS(()=>{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 E=qS({}),M=jS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&oL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(WS(()=>{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(oL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),WS(()=>{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?fNe(kre("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 hNe(V.Provider,{value:C,children:[kre("span",{ref:h,style:pNe,"data-shader-id":s,children:!f&&t.children}),R]})},Vre=zre});var Hre=z(()=>{"use strict";tW()});var Yre={};vt(Yre,{ShaderComponent:()=>Xre,default:()=>$re});import{useContext as yNe,useEffect as XS,useId as vNe,useMemo as $S,useRef as YS,useState as Wre}from"react";import{createPortal as xNe}from"react-dom";import{jsx as jre,jsxs as bNe}from"react/jsx-runtime";function aL(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 _Ne(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!aL(i)&&(n[r]=i);return n}var SNe,wNe,qre,Xre,$re,cL=z(()=>{"use strict";mt();gt();yt();Hre();SNe={display:"contents"},wNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},qre={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&&(qre[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Xre=t=>{let e=yNe(V);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=vNe(),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(()=>_Ne(t,qre),[t]),d=$S(()=>({...wNe,...t.transform}),[t.transform]),h=YS(null),f=!!Du.capturesDOM,g=YS(null),[y,_]=Wre(!1),[b,S]=Wre(()=>({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}));XS(()=>{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=YS(void 0),v=YS(null);v.current===null&&(ae(a),v.current=de(Du,u,s));let C=$S(()=>({...e,shaderParentId:s}),[e,s]);XS(()=>{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]),XS(()=>{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 E=YS({}),M=$S(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&aL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(XS(()=>{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(aL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),XS(()=>{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?xNe(jre("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 bNe(V.Provider,{value:C,children:[jre("span",{ref:h,style:SNe,"data-shader-id":s,children:!f&&t.children}),R]})},$re=Xre});var Zre=z(()=>{"use strict";nW()});var nie={};vt(nie,{ShaderComponent:()=>eie,default:()=>tie});import{useContext as MNe,useEffect as ZS,useId as TNe,useMemo as KS,useRef as JS,useState as Kre}from"react";import{createPortal as ENe}from"react-dom";import{jsx as Jre,jsxs as CNe}from"react/jsx-runtime";function lL(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 RNe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!lL(i)&&(n[r]=i);return n}var ANe,PNe,Qre,eie,tie,uL=z(()=>{"use strict";mt();gt();yt();Zre();ANe={display:"contents"},PNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Qre={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&&(Qre[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}eie=t=>{let e=MNe(V);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=TNe(),s=KS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=KS(()=>RNe(t,Qre),[t]),d=KS(()=>({...PNe,...t.transform}),[t.transform]),h=JS(null),f=!!Fu.capturesDOM,g=JS(null),[y,_]=Kre(!1),[b,S]=Kre(()=>({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}));ZS(()=>{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=JS(void 0),v=JS(null);v.current===null&&(ae(a),v.current=de(Fu,u,s));let C=KS(()=>({...e,shaderParentId:s}),[e,s]);ZS(()=>{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]),ZS(()=>{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 E=JS({}),M=KS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&lL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(ZS(()=>{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(lL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ZS(()=>{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?ENe(Jre("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 CNe(V.Provider,{value:C,children:[Jre("span",{ref:h,style:ANe,"data-shader-id":s,children:!f&&t.children}),R]})},tie=eie});var rie=z(()=>{"use strict";rW()});var lie={};vt(lie,{ShaderComponent:()=>aie,default:()=>cie});import{useContext as INe,useEffect as QS,useId as ONe,useMemo as ew,useRef as tw,useState as iie}from"react";import{createPortal as UNe}from"react-dom";import{jsx as oie,jsxs as NNe}from"react/jsx-runtime";function dL(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 DNe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!dL(i)&&(n[r]=i);return n}var FNe,LNe,sie,aie,cie,fL=z(()=>{"use strict";mt();gt();yt();rie();FNe={display:"contents"},LNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},sie={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&&(sie[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}aie=t=>{let e=INe(V);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=ONe(),s=ew(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ew(()=>DNe(t,sie),[t]),d=ew(()=>({...LNe,...t.transform}),[t.transform]),h=tw(null),f=!!Lu.capturesDOM,g=tw(null),[y,_]=iie(!1),[b,S]=iie(()=>({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}));QS(()=>{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=tw(void 0),v=tw(null);v.current===null&&(ae(a),v.current=de(Lu,u,s));let C=ew(()=>({...e,shaderParentId:s}),[e,s]);QS(()=>{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]),QS(()=>{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 E=tw({}),M=ew(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&dL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(QS(()=>{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(dL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),QS(()=>{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?UNe(oie("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 NNe(V.Provider,{value:C,children:[oie("span",{ref:h,style:FNe,"data-shader-id":s,children:!f&&t.children}),R]})},cie=aie});var uie=z(()=>{"use strict";iW()});var gie={};vt(gie,{ShaderComponent:()=>mie,default:()=>pie});import{useContext as kNe,useEffect as nw,useId as BNe,useMemo as rw,useRef as iw,useState as die}from"react";import{createPortal as zNe}from"react-dom";import{jsx as fie,jsxs as VNe}from"react/jsx-runtime";function hL(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 GNe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!hL(i)&&(n[r]=i);return n}var HNe,WNe,hie,mie,pie,mL=z(()=>{"use strict";mt();gt();yt();uie();HNe={display:"contents"},WNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},hie={blendMode:"normal",visible:!0};try{ku&&ku.props&&Object.entries(ku.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(hie[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}mie=t=>{let e=kNe(V);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=BNe(),s=rw(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=rw(()=>GNe(t,hie),[t]),d=rw(()=>({...WNe,...t.transform}),[t.transform]),h=iw(null),f=!!ku.capturesDOM,g=iw(null),[y,_]=die(!1),[b,S]=die(()=>({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}));nw(()=>{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=iw(void 0),v=iw(null);v.current===null&&(ae(a),v.current=de(ku,u,s));let C=rw(()=>({...e,shaderParentId:s}),[e,s]);nw(()=>{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,ku.fragmentNode,n,c,v.current,ku,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]),nw(()=>{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 E=iw({}),M=rw(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&hL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(nw(()=>{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(hL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),nw(()=>{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?zNe(fie("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 VNe(V.Provider,{value:C,children:[fie("span",{ref:h,style:HNe,"data-shader-id":s,children:!f&&t.children}),R]})},pie=mie});var yie=z(()=>{"use strict";oW()});var wie={};vt(wie,{ShaderComponent:()=>_ie,default:()=>Sie});import{useContext as jNe,useEffect as ow,useId as qNe,useMemo as sw,useRef as aw,useState as vie}from"react";import{createPortal as XNe}from"react-dom";import{jsx as xie,jsxs as $Ne}from"react/jsx-runtime";function pL(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 YNe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!pL(i)&&(n[r]=i);return n}var ZNe,KNe,bie,_ie,Sie,gL=z(()=>{"use strict";mt();gt();yt();yie();ZNe={display:"contents"},KNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},bie={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&&(bie[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}_ie=t=>{let e=jNe(V);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=qNe(),s=sw(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=sw(()=>YNe(t,bie),[t]),d=sw(()=>({...KNe,...t.transform}),[t.transform]),h=aw(null),f=!!Bu.capturesDOM,g=aw(null),[y,_]=vie(!1),[b,S]=vie(()=>({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}));ow(()=>{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=aw(void 0),v=aw(null);v.current===null&&(ae(a),v.current=de(Bu,u,s));let C=sw(()=>({...e,shaderParentId:s}),[e,s]);ow(()=>{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]),ow(()=>{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 E=aw({}),M=sw(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&pL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(ow(()=>{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(pL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ow(()=>{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?XNe(xie("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 $Ne(V.Provider,{value:C,children:[xie("span",{ref:h,style:ZNe,"data-shader-id":s,children:!f&&t.children}),R]})},Sie=_ie});var Mie=z(()=>{"use strict";sW()});var Pie={};vt(Pie,{ShaderComponent:()=>Rie,default:()=>Aie});import{useContext as JNe,useEffect as cw,useId as QNe,useMemo as lw,useRef as uw,useState as Tie}from"react";import{createPortal as e3e}from"react-dom";import{jsx as Eie,jsxs as t3e}from"react/jsx-runtime";function yL(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 n3e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!yL(i)&&(n[r]=i);return n}var r3e,i3e,Cie,Rie,Aie,vL=z(()=>{"use strict";mt();gt();yt();Mie();r3e={display:"contents"},i3e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Cie={blendMode:"normal",visible:!0};try{zu&&zu.props&&Object.entries(zu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Cie[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Rie=t=>{let e=JNe(V);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=QNe(),s=lw(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=lw(()=>n3e(t,Cie),[t]),d=lw(()=>({...i3e,...t.transform}),[t.transform]),h=uw(null),f=!!zu.capturesDOM,g=uw(null),[y,_]=Tie(!1),[b,S]=Tie(()=>({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}));cw(()=>{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=uw(void 0),v=uw(null);v.current===null&&(ae(a),v.current=de(zu,u,s));let C=lw(()=>({...e,shaderParentId:s}),[e,s]);cw(()=>{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,zu.fragmentNode,n,c,v.current,zu,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]),cw(()=>{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 E=uw({}),M=lw(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&yL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(cw(()=>{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(yL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),cw(()=>{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?e3e(Eie("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 t3e(V.Provider,{value:C,children:[Eie("span",{ref:h,style:r3e,"data-shader-id":s,children:!f&&t.children}),R]})},Aie=Rie});var Iie=z(()=>{"use strict";aW()});var Lie={};vt(Lie,{ShaderComponent:()=>Die,default:()=>Fie});import{useContext as o3e,useEffect as dw,useId as s3e,useMemo as fw,useRef as hw,useState as Oie}from"react";import{createPortal as a3e}from"react-dom";import{jsx as Uie,jsxs as c3e}from"react/jsx-runtime";function xL(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 l3e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!xL(i)&&(n[r]=i);return n}var u3e,d3e,Nie,Die,Fie,bL=z(()=>{"use strict";mt();gt();yt();Iie();u3e={display:"contents"},d3e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Nie={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&&(Nie[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Die=t=>{let e=o3e(V);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=s3e(),s=fw(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=fw(()=>l3e(t,Nie),[t]),d=fw(()=>({...d3e,...t.transform}),[t.transform]),h=hw(null),f=!!Vu.capturesDOM,g=hw(null),[y,_]=Oie(!1),[b,S]=Oie(()=>({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}));dw(()=>{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=hw(void 0),v=hw(null);v.current===null&&(ae(a),v.current=de(Vu,u,s));let C=fw(()=>({...e,shaderParentId:s}),[e,s]);dw(()=>{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]),dw(()=>{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 E=hw({}),M=fw(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&xL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(dw(()=>{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(xL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),dw(()=>{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?a3e(Uie("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 c3e(V.Provider,{value:C,children:[Uie("span",{ref:h,style:u3e,"data-shader-id":s,children:!f&&t.children}),R]})},Fie=Die});var kie=z(()=>{"use strict";mW()});var Wie={};vt(Wie,{ShaderComponent:()=>Gie,default:()=>Hie});import{useContext as f3e,useEffect as mw,useId as h3e,useMemo as pw,useRef as gw,useState as Bie}from"react";import{createPortal as m3e}from"react-dom";import{jsx as zie,jsxs as p3e}from"react/jsx-runtime";function _L(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 g3e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!_L(i)&&(n[r]=i);return n}var y3e,v3e,Vie,Gie,Hie,SL=z(()=>{"use strict";mt();gt();yt();kie();y3e={display:"contents"},v3e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Vie={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&&(Vie[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Gie=t=>{let e=f3e(V);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=h3e(),s=pw(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=pw(()=>g3e(t,Vie),[t]),d=pw(()=>({...v3e,...t.transform}),[t.transform]),h=gw(null),f=!!Gu.capturesDOM,g=gw(null),[y,_]=Bie(!1),[b,S]=Bie(()=>({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}));mw(()=>{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=gw(void 0),v=gw(null);v.current===null&&(ae(a),v.current=de(Gu,u,s));let C=pw(()=>({...e,shaderParentId:s}),[e,s]);mw(()=>{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]),mw(()=>{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 E=gw({}),M=pw(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&_L(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(mw(()=>{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(_L(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),mw(()=>{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?m3e(zie("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 p3e(V.Provider,{value:C,children:[zie("span",{ref:h,style:y3e,"data-shader-id":s,children:!f&&t.children}),R]})},Hie=Gie});var jie=z(()=>{"use strict";gW()});var Kie={};vt(Kie,{ShaderComponent:()=>Yie,default:()=>Zie});import{useContext as x3e,useEffect as yw,useId as b3e,useMemo as vw,useRef as xw,useState as qie}from"react";import{createPortal as _3e}from"react-dom";import{jsx as Xie,jsxs as S3e}from"react/jsx-runtime";function wL(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 w3e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!wL(i)&&(n[r]=i);return n}var M3e,T3e,$ie,Yie,Zie,ML=z(()=>{"use strict";mt();gt();yt();jie();M3e={display:"contents"},T3e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},$ie={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&&($ie[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Yie=t=>{let e=x3e(V);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=b3e(),s=vw(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=vw(()=>w3e(t,$ie),[t]),d=vw(()=>({...T3e,...t.transform}),[t.transform]),h=xw(null),f=!!Hu.capturesDOM,g=xw(null),[y,_]=qie(!1),[b,S]=qie(()=>({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}));yw(()=>{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=xw(void 0),v=xw(null);v.current===null&&(ae(a),v.current=de(Hu,u,s));let C=vw(()=>({...e,shaderParentId:s}),[e,s]);yw(()=>{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]),yw(()=>{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 E=xw({}),M=vw(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&wL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(yw(()=>{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(wL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),yw(()=>{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?_3e(Xie("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 S3e(V.Provider,{value:C,children:[Xie("span",{ref:h,style:M3e,"data-shader-id":s,children:!f&&t.children}),R]})},Zie=Yie});mt();iN();sN();cN();uN();fN();mN();gN();vN();bN();SN();MN();EN();RN();PN();ON();NN();FN();kN();zN();GN();WN();qN();$N();ZN();JN();e3();n3();i3();s3();c3();u3();f3();m3();g3();v3();b3();S3();M3();E3();R3();P3();O3();N3();F3();k3();z3();G3();W3();q3();$3();Z3();J3();eD();nD();iD();sD();cD();uD();fD();mD();gD();vD();bD();SD();MD();ED();RD();PD();OD();ND();FD();kD();zD();GD();WD();qD();$D();ZD();JD();eF();nF();iF();sF();cF();uF();fF();mF();gF();vF();bF();SF();MF();EF();RF();PF();OF();NF();FF();kF();zF();GF();WF();qF();$F();ZF();JF();eL();nL();iL();sL();cL();uL();fL();mL();gL();vL();bL();SL();ML();mt();import{Suspense as E3e,lazy as xt,useEffect as TL,useMemo as C3e,useRef as R3e,useState as Jie}from"react";import{jsx as Qh,jsxs as A3e}from"react/jsx-runtime";function P3e(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 I3e(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=P3e(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 O3e=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 U3e(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 O3e.has(i)?`_${i}`:i}function N3e(t){let e=new Set(["style"]),n=new Map;return t?.length&&t.forEach((r,i)=>{if(!r.targets?.length)return;let o=U3e(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 Qie(t,e){for(let n of e){if(n.id===t)return n;if(n.children?.length){let r=Qie(t,n.children);if(r)return r}}return null}function D3e(t,e,n){if(!e||!n?.length)return t;let r=Object.entries(e);if(r.length===0)return t;let i=N3e(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=Qie(u.component_id,o);d?.props&&u.prop in d.props&&(d.props[u.prop]=l)}}return{...t,components:o}}var F3e={AngularBlur:xt(()=>Promise.resolve().then(()=>(iN(),DW))),Ascii:xt(()=>Promise.resolve().then(()=>(sN(),GW))),Aurora:xt(()=>Promise.resolve().then(()=>(cN(),YW))),BarShift:xt(()=>Promise.resolve().then(()=>(uN(),nj))),Beam:xt(()=>Promise.resolve().then(()=>(fN(),lj))),Blob:xt(()=>Promise.resolve().then(()=>(mN(),gj))),Blur:xt(()=>Promise.resolve().then(()=>(gN(),wj))),BrickPattern:xt(()=>Promise.resolve().then(()=>(vN(),Pj))),BrightnessContrast:xt(()=>Promise.resolve().then(()=>(bN(),Lj))),Bulge:xt(()=>Promise.resolve().then(()=>(SN(),Wj))),CRTScreen:xt(()=>Promise.resolve().then(()=>(MN(),Kj))),ChannelBlur:xt(()=>Promise.resolve().then(()=>(EN(),i7))),Checkerboard:xt(()=>Promise.resolve().then(()=>(RN(),d7))),Chevron:xt(()=>Promise.resolve().then(()=>(PN(),v7))),ChromaFlow:xt(()=>Promise.resolve().then(()=>(ON(),T7))),ChromaticAberration:xt(()=>Promise.resolve().then(()=>(NN(),O7))),Circle:xt(()=>Promise.resolve().then(()=>(FN(),B7))),ColorWheel:xt(()=>Promise.resolve().then(()=>(kN(),q7))),ConcentricSpin:xt(()=>Promise.resolve().then(()=>(zN(),Q7))),ConicGradient:xt(()=>Promise.resolve().then(()=>(GN(),sq))),ContourLines:xt(()=>Promise.resolve().then(()=>(WN(),hq))),Crescent:xt(()=>Promise.resolve().then(()=>(qN(),bq))),Cross:xt(()=>Promise.resolve().then(()=>($N(),Cq))),Crystal:xt(()=>Promise.resolve().then(()=>(ZN(),Nq))),CursorRipples:xt(()=>Promise.resolve().then(()=>(JN(),Vq))),CursorTrail:xt(()=>Promise.resolve().then(()=>(e3(),$q))),DOMTexture:xt(()=>Promise.resolve().then(()=>(n3(),tX))),DiamondGradient:xt(()=>Promise.resolve().then(()=>(i3(),cX))),DiffuseBlur:xt(()=>Promise.resolve().then(()=>(s3(),pX))),Dither:xt(()=>Promise.resolve().then(()=>(c3(),SX))),DotGrid:xt(()=>Promise.resolve().then(()=>(u3(),AX))),DropShadow:xt(()=>Promise.resolve().then(()=>(f3(),FX))),Duotone:xt(()=>Promise.resolve().then(()=>(m3(),HX))),Ellipse:xt(()=>Promise.resolve().then(()=>(g3(),ZX))),Emboss:xt(()=>Promise.resolve().then(()=>(v3(),r$))),Exposure:xt(()=>Promise.resolve().then(()=>(b3(),u$))),FallingLines:xt(()=>Promise.resolve().then(()=>(S3(),y$))),FilmGrain:xt(()=>Promise.resolve().then(()=>(M3(),M$))),FloatingParticles:xt(()=>Promise.resolve().then(()=>(E3(),I$))),FlowField:xt(()=>Promise.resolve().then(()=>(R3(),k$))),Flower:xt(()=>Promise.resolve().then(()=>(P3(),j$))),FlowingGradient:xt(()=>Promise.resolve().then(()=>(O3(),J$))),FlutedGlass:xt(()=>Promise.resolve().then(()=>(N3(),oY))),Fog:xt(()=>Promise.resolve().then(()=>(F3(),fY))),Form3D:xt(()=>Promise.resolve().then(()=>(k3(),xY))),FractalNoise:xt(()=>Promise.resolve().then(()=>(z3(),EY))),Glass:xt(()=>Promise.resolve().then(()=>(G3(),UY))),GlassTiles:xt(()=>Promise.resolve().then(()=>(W3(),zY))),Glitch:xt(()=>Promise.resolve().then(()=>(q3(),XY))),Glow:xt(()=>Promise.resolve().then(()=>($3(),eZ))),Godrays:xt(()=>Promise.resolve().then(()=>(Z3(),aZ))),Grayscale:xt(()=>Promise.resolve().then(()=>(J3(),mZ))),Grid:xt(()=>Promise.resolve().then(()=>(eD(),_Z))),GridDistortion:xt(()=>Promise.resolve().then(()=>(nD(),RZ))),Group:xt(()=>Promise.resolve().then(()=>(iD(),DZ))),Halftone:xt(()=>Promise.resolve().then(()=>(sD(),GZ))),HexGrid:xt(()=>Promise.resolve().then(()=>(cD(),YZ))),HueShift:xt(()=>Promise.resolve().then(()=>(uD(),nK))),ImageTexture:xt(()=>Promise.resolve().then(()=>(fD(),lK))),Invert:xt(()=>Promise.resolve().then(()=>(mD(),gK))),Kaleidoscope:xt(()=>Promise.resolve().then(()=>(gD(),wK))),LensFlare:xt(()=>Promise.resolve().then(()=>(vD(),PK))),LinearBlur:xt(()=>Promise.resolve().then(()=>(bD(),LK))),LinearGradient:xt(()=>Promise.resolve().then(()=>(SD(),WK))),Liquify:xt(()=>Promise.resolve().then(()=>(MD(),KK))),Marble:xt(()=>Promise.resolve().then(()=>(ED(),iJ))),Mirror:xt(()=>Promise.resolve().then(()=>(RD(),dJ))),MultiPointGradient:xt(()=>Promise.resolve().then(()=>(PD(),vJ))),Neon:xt(()=>Promise.resolve().then(()=>(OD(),TJ))),Paper:xt(()=>Promise.resolve().then(()=>(ND(),OJ))),Perspective:xt(()=>Promise.resolve().then(()=>(FD(),BJ))),Pixelate:xt(()=>Promise.resolve().then(()=>(kD(),qJ))),Plasma:xt(()=>Promise.resolve().then(()=>(zD(),QJ))),PolarCoordinates:xt(()=>Promise.resolve().then(()=>(GD(),sQ))),Polygon:xt(()=>Promise.resolve().then(()=>(WD(),hQ))),Posterize:xt(()=>Promise.resolve().then(()=>(qD(),bQ))),ProgressiveBlur:xt(()=>Promise.resolve().then(()=>($D(),CQ))),RadialGradient:xt(()=>Promise.resolve().then(()=>(ZD(),NQ))),RectangularCoordinates:xt(()=>Promise.resolve().then(()=>(JD(),VQ))),ReflectivePlane:xt(()=>Promise.resolve().then(()=>(eF(),$Q))),Ring:xt(()=>Promise.resolve().then(()=>(nF(),tee))),Ripples:xt(()=>Promise.resolve().then(()=>(iF(),cee))),RoundedRect:xt(()=>Promise.resolve().then(()=>(sF(),pee))),Saturation:xt(()=>Promise.resolve().then(()=>(cF(),See))),Sharpness:xt(()=>Promise.resolve().then(()=>(uF(),Aee))),Shatter:xt(()=>Promise.resolve().then(()=>(fF(),Fee))),SimplexNoise:xt(()=>Promise.resolve().then(()=>(mF(),Hee))),SineWave:xt(()=>Promise.resolve().then(()=>(gF(),Zee))),Smoke:xt(()=>Promise.resolve().then(()=>(vF(),rte))),SmokeFill:xt(()=>Promise.resolve().then(()=>(bF(),ute))),Solarize:xt(()=>Promise.resolve().then(()=>(SF(),yte))),SolidColor:xt(()=>Promise.resolve().then(()=>(MF(),Mte))),Spherize:xt(()=>Promise.resolve().then(()=>(EF(),Ite))),Spiral:xt(()=>Promise.resolve().then(()=>(RF(),kte))),Star:xt(()=>Promise.resolve().then(()=>(PF(),jte))),Strands:xt(()=>Promise.resolve().then(()=>(OF(),Jte))),Stretch:xt(()=>Promise.resolve().then(()=>(NF(),one))),Stripes:xt(()=>Promise.resolve().then(()=>(FF(),fne))),StudioBackground:xt(()=>Promise.resolve().then(()=>(kF(),xne))),SunBurst:xt(()=>Promise.resolve().then(()=>(zF(),Ene))),Swirl:xt(()=>Promise.resolve().then(()=>(GF(),Une))),ThinFilm:xt(()=>Promise.resolve().then(()=>(WF(),zne))),TiltShift:xt(()=>Promise.resolve().then(()=>(qF(),Xne))),Tint:xt(()=>Promise.resolve().then(()=>($F(),ere))),Trapezoid:xt(()=>Promise.resolve().then(()=>(ZF(),are))),Tritone:xt(()=>Promise.resolve().then(()=>(JF(),mre))),Truchet:xt(()=>Promise.resolve().then(()=>(eL(),_re))),Twirl:xt(()=>Promise.resolve().then(()=>(nL(),Rre))),VHS:xt(()=>Promise.resolve().then(()=>(iL(),Dre))),Vesica:xt(()=>Promise.resolve().then(()=>(sL(),Gre))),Vibrance:xt(()=>Promise.resolve().then(()=>(cL(),Yre))),VideoTexture:xt(()=>Promise.resolve().then(()=>(uL(),nie))),Vignette:xt(()=>Promise.resolve().then(()=>(fL(),lie))),Voronoi:xt(()=>Promise.resolve().then(()=>(mL(),gie))),WaveDistortion:xt(()=>Promise.resolve().then(()=>(gL(),wie))),Weave:xt(()=>Promise.resolve().then(()=>(vL(),Pie))),WebcamTexture:xt(()=>Promise.resolve().then(()=>(bL(),Lie))),WorleyNoise:xt(()=>Promise.resolve().then(()=>(SL(),Wie))),ZoomBlur:xt(()=>Promise.resolve().then(()=>(ML(),Kie)))},L3e="shaders-preview-key";function k3e(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 eoe({component:t}){let e=F3e[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),Qh(e,{...l,children:r?.map((s,u)=>Qh(eoe,{component:s},s.id||u))})}var B3e=({shader:t,presetId:e,apiBaseUrl:n="https://shaders.com",obfuscationKey:r=L3e,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]=Jie(null),[g,y]=Jie(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 C=v.preset||v.shader;C?.definition&&typeof C.definition=="string"&&(f(I3e(C.definition,r)),y(Array.isArray(C.key_props)?C.key_props:null))}).catch(v=>{console.error("[Shaders Preview] Failed to fetch preview:",v)})};TL(()=>{t?_(`${n}/api/preview/shader/${t}`):e||(f(null),y(null))},[t,e,n,r]),TL(()=>{e?_(`${n}/api/preview/preset/${e}${u?`?version=${encodeURIComponent(u)}`:""}`):t||(f(null),y(null))},[e,t,n,r,u]);let b=C3e(()=>h?D3e(h,s,g):null,[h,g,s]),S=R3e(!1);return TL(()=>{!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?A3e("div",{style:{position:"relative",...typeof a=="string"?k3e(a):a},className:l,...d,children:[Qh(E3e,{fallback:null,children:Qh(nN,{colorSpace:b.colorSpace||"p3-linear",isPreview:!0,style:{width:"100%",height:"100%"},children:b.components.map((w,v)=>Qh(eoe,{component:w},w.id||v))})}),i&&Qh("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?Qh("a",{href:o,target:"_blank",rel:"noopener noreferrer",style:{color:"inherit",textDecoration:"none"},children:i}):i})]}):null};export{NW as AngularBlur,VW as Ascii,$W as Aurora,tj as BarShift,cj as Beam,pj as Blob,Sj as Blur,Aj as BrickPattern,Fj as BrightnessContrast,Hj as Bulge,Zj as CRTScreen,r7 as ChannelBlur,u7 as Checkerboard,y7 as Chevron,M7 as ChromaFlow,I7 as ChromaticAberration,k7 as Circle,j7 as ColorWheel,J7 as ConcentricSpin,oq as ConicGradient,fq as ContourLines,xq as Crescent,Eq as Cross,Uq as Crystal,zq as CursorRipples,Xq as CursorTrail,eX as DOMTexture,aX as DiamondGradient,mX as DiffuseBlur,_X as Dither,RX as DotGrid,DX as DropShadow,GX as Duotone,YX as Ellipse,n$ as Emboss,l$ as Exposure,g$ as FallingLines,w$ as FilmGrain,P$ as FloatingParticles,L$ as FlowField,W$ as Flower,K$ as FlowingGradient,iY as FlutedGlass,dY as Fog,vY as Form3D,TY as FractalNoise,OY as Glass,BY as GlassTiles,qY as Glitch,QY as Glow,sZ as Godrays,hZ as Grayscale,bZ as Grid,CZ as GridDistortion,NZ as Group,VZ as Halftone,$Z as HexGrid,tK as HueShift,cK as ImageTexture,pK as Invert,SK as Kaleidoscope,AK as LensFlare,FK as LinearBlur,HK as LinearGradient,ZK as Liquify,rJ as Marble,uJ as Mirror,yJ as MultiPointGradient,MJ as Neon,IJ as Paper,kJ as Perspective,jJ as Pixelate,JJ as Plasma,oQ as PolarCoordinates,fQ as Polygon,xQ as Posterize,B3e as Preview,EQ as ProgressiveBlur,UQ as RadialGradient,zQ as RectangularCoordinates,XQ as ReflectivePlane,eee as Ring,aee as Ripples,mee as RoundedRect,_ee as Saturation,nSe as Shader,Ree as Sharpness,Dee as Shatter,Gee as SimplexNoise,Yee as SineWave,nte as Smoke,lte as SmokeFill,gte as Solarize,wte as SolidColor,Pte as Spherize,Lte as Spiral,Wte as Star,Kte as Strands,ine as Stretch,dne as Stripes,vne as StudioBackground,Tne as SunBurst,One as Swirl,Bne as ThinFilm,qne as TiltShift,Qne as Tint,sre as Trapezoid,hre as Tritone,bre as Truchet,Cre as Twirl,Nre as VHS,Vre as Vesica,$re as Vibrance,tie as VideoTexture,cie as Vignette,pie as Voronoi,Sie as WaveDistortion,Aie as Weave,Fie as WebcamTexture,Hie as WorleyNoise,Zie as ZoomBlur};
|
|
4689
|
+
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=Y.x.div(Y.y),w=t.objectFit.uniform.value,v;switch(w){case 1:{let c=Tn(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=Tn(Tn(S.div(u),p(1)),Tn(Y.x.div(d),Y.y.div(h)));v=I(u.div(S).mul(c),c);break}case 4:{let c=Tn(Y.x.div(d),Y.y.div(h));v=I(u.div(S).mul(c),c);break}default:{let c=Ot(S.div(u),p(1));v=I(u.div(S).mul(c),c);break}}let C=b.sub(I(.5)).div(v).add(I(.5)),E=I(C.x,p(1).sub(C.y)),M=s.sample(E),R=Eo(Eo(E.x.lessThan(0),E.x.greaterThan(1)),Eo(E.y.lessThan(0),E.y.greaterThan(1)));return N(M.rgb,Co(R,p(0),M.a))}}});var kl,Z8=z(()=>{"use strict";ut();kl={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."),N(0);let e=t||N(0,0,0,0);return N(ge(1,1,1).sub(e.rgb),e.a)}}});var Bl,K8=z(()=>{"use strict";pi();Dt();Jn();ut();Bl={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:Mt,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:Hn,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 N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=Y.x.div(Y.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=jn(l),u=dr(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=wr(h,f.mul(2)),y=g.greaterThan(f).select(f.mul(2).sub(g),g),_=I(He(y).mul(s),me(y).mul(s)),b=a.add(_),S=I(b.x.div(i),b.y);return Ht(Bn(S,r.sample(S),r,t.edges.uniform.value))}}});var kbe,zl,J8=z(()=>{"use strict";Dt();pr();ut();kbe=De(([t])=>{let e=p(6.2831853);return ge(He(e.mul(t)).mul(.5).add(.5),He(e.mul(t.sub(.333))).mul(.5).add(.5),He(e.mul(t.sub(.666))).mul(.5).add(.5))}),zl={name:"LensFlare",category:"Stylize",description:"Realistic camera lens flare with artifacts.",props:{lightPosition:{default:{x:.3,y:.3},transform:Mt,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=Y.x.div(Y.y),S=j,w=I(e.lightPosition.uniform.x,e.lightPosition.uniform.y.oneMinus()),v=I(.5,.5).sub(w),C=bn(t,e.speed),E=me(C.mul(3.7)).mul(.04).add(me(C.mul(7.3)).mul(.03)).add(me(C.mul(13.1)).mul(.02)).add(.97),M=e.edgeFade.uniform,R=Ot(At(w.x.sub(.5)).mul(2),At(w.y.sub(.5)).mul(2)),c=p(1).sub(M.mul(.5)),m=Te(p(1),Ae(c,p(1),R).oneMinus(),M),x=n.mul(m).mul(E),T=I(S.x.sub(w.x).mul(b),S.y.sub(w.y)),O=T.length(),L=[{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}],F=ge(0,0,0);for(let H=0;H<L.length;H++){let $=L[H],te=w.add(v.mul(p($.offset).mul(i).mul(2))),Ee=I(S.x.sub(te.x).mul(b),S.y.sub(te.y)).length(),Pe=p($.size),Q=Ae(Pe.mul(.12),Pe,Ee).oneMinus(),J=Ae(Pe.mul(.05),Pe.mul(.45),Ee).oneMinus(),be=Q.mul(p(1).sub(J.mul(p($.hollow)))),et=p(H*2.17),Ve=me(C.mul(4.3).add(et)).mul(.08).add(me(C.mul(9.1).add(et.mul(1.7))).mul(.05)).add(.95),nt=Pe.mul(.78),Et=Pe.mul(o).mul(.14),Ct=Pe.mul(.1),Wt=Ae(p(0),Ct,At(Ee.sub(nt.add(Et)))).oneMinus(),se=Ae(p(0),Ct,At(Ee.sub(nt))).oneMinus(),at=Ae(p(0),Ct,At(Ee.sub(nt.sub(Et)))).oneMinus(),Le=p($.bright).mul(r).mul(Ve),_t=ge(be.mul(p($.r)).add(Wt.mul(o)).mul(Le),be.mul(p($.g)).add(se.mul(o)).mul(Le),be.mul(p($.b)).add(at.mul(o)).mul(Le));F=F.add(_t)}let U=I(p(1).sub(w.x),p(1).sub(w.y)),D=I(S.x.sub(U.x).mul(b),S.y.sub(U.y)),B=D.length(),q=l.mul(s).mul(.06),X=u.mul(.12).add(.005),re=Ae(p(0),X,At(B.sub(l.add(q)))).oneMinus(),xe=Ae(p(0),X,At(B.sub(l))).oneMinus(),pe=Ae(p(0),X,At(B.sub(l.sub(q)))).oneMinus(),Ne=me(dr(D.y,D.x).mul(3).add(C.mul(.5))).mul(.12).add(.88),qe=ge(re,xe,pe).mul(a).mul(Ne),Xe=dr(T.y,T.x),le=dr(v.y,v.x.mul(b)).mul(.5).add(C.mul(.06)),we=Xe.add(le),Ce=Gt(At(He(we.mul(h.div(2)))),p(3.5)),ke=Gt(At(He(we.add(.25).mul(h.div(2)))),p(7)).mul(.4),je=p(1).div(p(1).add(O.mul(O).mul(60))),ve=kbe(we.div(p(6.2831853)).add(.5)),Ke=Te(ge(1,.97,.92),ve,p(.12)),Ue=Ce.add(ke).mul(je).mul(d).mul(Ke),Z=At(S.y.sub(w.y)),Se=At(S.x.sub(w.x)),Re=p(-800).mul(Z).mul(Z).exp(),ze=g.mul(g).mul(.25).add(.001),Je=p(-1).mul(Se).mul(Se).div(ze.mul(.7)).exp(),ot=p(-1).mul(Se).mul(Se).div(ze).exp(),it=p(-1).mul(Se).mul(Se).div(ze.mul(1.4)).exp(),rt=ge(Re.mul(Je).mul(.5),Re.mul(ot).mul(.65),Re.mul(it).mul(.9)).mul(f),st=p(1).div(_.mul(_).add(.01)),ee=p(-1).mul(O).mul(O).mul(st).exp().mul(y).mul(ge(1,.98,.95)),Fe=p(-500).mul(O).mul(O).exp(),Oe=Ae(p(0),p(.025),O).oneMinus(),k=Fe.add(Oe.mul(1.5)).mul(ge(1,.98,.96)).mul(n),P=F.add(qe).add(Ue).add(rt).add(ee).add(k).mul(x);return N(P,St(Vt(P,ge(.299,.587,.114)).mul(2),0,1))}}});var Q8,Bbe,zbe,Vl,eH=z(()=>{"use strict";Dt();Jn();ut();Q8=Array.from({length:32},(t,e)=>{let n=(e/31-.5)*2;return Math.exp(-.5*n*n/.64)}),Bbe=Q8.reduce((t,e)=>t+e),zbe=Q8.map(t=>t/Bbe),Vl={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:mr,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 N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=Zr(t.angle.uniform),o=Y.x.div(Y.y),a=I(He(i).div(o),me(i));return De(()=>{let l=j,s=a.mul(t.intensity.uniform).div(Y).mul(2),u=N(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(zbe[d]))))}return Ht(u)})()}}});var Gl,tH=z(()=>{"use strict";Dt();zn();ut();Gl={name:"LinearGradient",category:"Textures",description:"Create smooth linear color gradients",props:{colorA:{default:"#1aff00",transform:Me,description:"The starting color of the gradient",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#0000ff",transform:Me,description:"The ending color of the gradient",ui:{type:"color",label:"Color B",group:"Colors"}},start:{default:{x:0,y:.5},transform:Mt,description:"The starting point of the gradient",ui:{type:"position",label:"Start",group:"Position"}},end:{default:{x:1,y:.5},transform:Mt,description:"The ending point of the gradient",ui:{type:"position",label:"End",group:"Position"}},angle:{default:0,transform:mr,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:Hn,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,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=jn(i),a=Fo(i),l=Y.y.max(1e-6),s=Y.x.div(l),u=Zr(t.angle.uniform).negate(),d=He(u),h=me(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=Vt(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 E=wr(At(b),p(2));w=E.greaterThan(p(1)).select(p(2).sub(E),E);break}case 3:w=pt(b);break;default:w=b.clamp(p(0),p(1))}let v=Ft(t.colorA.uniform,t.colorB.uniform,w.clamp(p(0),p(1)),t.colorSpace.uniform.value),C;if(S===1){let E=b.greaterThanEqual(p(0)).select(p(1),p(0)),M=b.lessThanEqual(p(1)).select(p(1),p(0)),R=E.mul(M);C=v.w.mul(R)}else C=v.w;return N(v.x,v.y,v.z,C)}}});var Pn,Hl,nH=z(()=>{"use strict";pi();Dt();Jn();Fi();ki();ut();Pn=64,Hl={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:Hn,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=Rr(Pn*Pn,"vec4"),r=Rr(Pn*Pn,"vec4"),i=new Or(Pn,Pn);i.type=fn;let o=Tr(i);e(()=>{i.dispose()});let a=ne(.5),l=ne(.5),s=ne(0),u=ne(0),d=ne(0),h=ne(.016),f=ne(.008),g=ne(3),y=ne(.97),_=ne(.08),b=ne(1),S=Cn(Pn),w=Cn(Pn-1),v=(O,L)=>De(()=>{let F=Zt,U=F.mod(S),D=F.div(S);Fn(D.greaterThan(Cn(0)).and(D.lessThan(w)).and(U.greaterThan(Cn(0))).and(U.lessThan(w)),()=>{let B=O.element(F),q=B.x,X=B.y,re=B.z,xe=B.w,pe=F.sub(Cn(1)),Ne=F.add(Cn(1)),qe=F.sub(S),Xe=F.add(S),le=F.sub(S).sub(Cn(1)),we=F.sub(S).add(Cn(1)),Ce=F.add(S).sub(Cn(1)),ke=F.add(S).add(Cn(1)),je=g.mul(O.element(pe).x.sub(q).add(O.element(Ne).x.sub(q)).add(O.element(qe).x.sub(q)).add(O.element(Xe).x.sub(q))).toVar(),ve=g.mul(O.element(pe).y.sub(X).add(O.element(Ne).y.sub(X)).add(O.element(qe).y.sub(X)).add(O.element(Xe).y.sub(X))).toVar(),Ke=g.mul(p(.35));je.assign(je.add(Ke.mul(O.element(le).x.sub(q).add(O.element(we).x.sub(q)).add(O.element(Ce).x.sub(q)).add(O.element(ke).x.sub(q))))),ve.assign(ve.add(Ke.mul(O.element(le).y.sub(X).add(O.element(we).y.sub(X)).add(O.element(Ce).y.sub(X)).add(O.element(ke).y.sub(X))))),je.assign(je.sub(g.mul(p(.1)).mul(q))),ve.assign(ve.sub(g.mul(p(.1)).mul(X)));let Ue=re.mul(y).add(je.mul(f)).toVar(),Z=xe.mul(y).add(ve.mul(f)).toVar();Fn(d.greaterThan(p(.01)),()=>{let ze=U.toFloat().add(p(.5)).div(p(Pn)),Je=D.toFloat().add(p(.5)).div(p(Pn)),ot=b.greaterThanEqual(p(1)).select(ze.sub(a).mul(b),ze.sub(a)),it=b.greaterThanEqual(p(1)).select(Je.sub(l),Je.sub(l).div(b)),rt=ot.mul(ot).add(it.mul(it)),st=_.mul(p(3));Fn(rt.lessThan(st.mul(st)),()=>{let ee=rt.negate().div(_.mul(_)).exp().mul(d).mul(h).mul(p(2));Ue.assign(Ue.add(s.mul(ee))),Z.assign(Z.add(u.mul(ee)))})});let Se=q.add(Ue.mul(f)).clamp(p(-.5),p(.5)),Re=X.add(Z.mul(f)).clamp(p(-.5),p(.5));L.element(F).assign(N(Se,Re,Ue,Z))})})().compute(Pn*Pn,[256]),C=O=>De(()=>{let L=Zt,F=L.mod(S),U=L.div(S),D=O.element(L);ir(o,Dn(F,U),N(D.x,D.y,p(0),p(1))).toWriteOnly()})().compute(Pn*Pn,[256]),E=v(n,r),M=v(r,n),R=C(n),c=.5,m=.5,x=Date.now(),T=Date.now();return{outputs:{displacement:i},getComputeNodes:O=>{let L=Date.now(),F=Math.min((L-x)/1e3,.016);if(x=L,F<=0)return null;let U=Math.max(1,O.dimensions.width)/Math.max(1,O.dimensions.height),D=t.stiffness.uniform.value,B=t.damping.uniform.value,q=t.radius.uniform.value*.08,X=(O.pointer.x-c)/F,re=(O.pointer.y-m)/F,xe=Math.sqrt(X*X+re*re),pe=Math.min(xe,3);c=O.pointer.x,m=O.pointer.y,pe>.01&&(T=L);let Ne=t.damping.uniform.value,qe=Ne>0?Math.min(3e4,5e3/Ne):3e4;if(L-T>qe)return null;let Xe=F/2;return a.value=O.pointer.x,l.value=O.pointer.y,s.value=xe>.01?X/xe:0,u.value=xe>.01?re/xe:0,d.value=pe,h.value=F,f.value=Xe,g.value=D,y.value=Math.max(0,Math.min(1,1-B*Xe)),_.value=q,b.value=U,[E,M,R]}}},fragmentNode:({uniforms:t,onBeforeRender:e,childNode:n,onCleanup:r,computeOutputs:i})=>{if(!n)return N(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=wn(i.displacement).sample(j).xy;else{let f=new Float32Array(Pn*Pn),g=new Float32Array(Pn*Pn),y=new Float32Array(Pn*Pn),_=new Float32Array(Pn*Pn),b=new Float32Array(Pn*Pn),S=new Float32Array(Pn*Pn),w=new Float32Array(Pn*Pn),v=new Float32Array(Pn*Pn),C=new Float32Array(Pn*Pn*2),E=new fr(C,Pn,Pn,Er,fn);E.magFilter=sn,E.minFilter=sn,E.needsUpdate=!0;let M=wn(E),R=.5,c=.5,m=Date.now(),x=2;e(({pointer:T,dimensions:O})=>{let L=Date.now(),F=Math.min((L-m)/1e3,.016);if(m=L,F<=0)return;let U=Math.max(1,O.width)/Math.max(1,O.height),D=t.stiffness.uniform.value,B=t.damping.uniform.value,q=t.radius.uniform.value*.08,X=(T.x-R)/F,re=(T.y-c)/F,xe=Math.sqrt(X*X+re*re),pe=Math.min(xe,3),Ne=0,qe=0;xe>.01&&(Ne=X/xe,qe=re/xe);let Xe=F/x;for(let le=0;le<x;le++){if(le===0&&pe>.01){let ke=q*3,je=Math.max(1,Math.floor((T.y-ke)*Pn)),ve=Math.min(Pn-2,Math.ceil((T.y+ke)*Pn)),Ke=Math.max(1,Math.floor((T.x-ke)*Pn)),Ue=Math.min(Pn-2,Math.ceil((T.x+ke)*Pn));for(let Z=je;Z<=ve;Z++)for(let Se=Ke;Se<=Ue;Se++){let Re=Z*Pn+Se,ze=(Se+.5)/Pn,Je=(Z+.5)/Pn,ot=U>=1?(ze-T.x)*U:ze-T.x,it=U>=1?Je-T.y:(Je-T.y)/U,rt=Math.sqrt(ot*ot+it*it);if(rt<ke){let st=Math.exp(-rt*rt/(q*q))*pe*F*2;y[Re]+=Ne*st,_[Re]+=qe*st}}}let we=Math.max(0,Math.min(1,1-B*Xe)),Ce=D*.35;b.set(y),S.set(_),w.set(f),v.set(g);for(let ke=1;ke<Pn-1;ke++)for(let je=1;je<Pn-1;je++){let ve=ke*Pn+je,Ke=0,Ue=0,Z=ve-1,Se=ve+1,Re=ve-Pn,ze=ve+Pn;Ke+=D*(f[Z]-f[ve]),Ke+=D*(f[Se]-f[ve]),Ke+=D*(f[Re]-f[ve]),Ke+=D*(f[ze]-f[ve]),Ue+=D*(g[Z]-g[ve]),Ue+=D*(g[Se]-g[ve]),Ue+=D*(g[Re]-g[ve]),Ue+=D*(g[ze]-g[ve]);let Je=ve-Pn-1,ot=ve-Pn+1,it=ve+Pn-1,rt=ve+Pn+1;Ke+=Ce*(f[Je]-f[ve]),Ke+=Ce*(f[ot]-f[ve]),Ke+=Ce*(f[it]-f[ve]),Ke+=Ce*(f[rt]-f[ve]),Ue+=Ce*(g[Je]-g[ve]),Ue+=Ce*(g[ot]-g[ve]),Ue+=Ce*(g[it]-g[ve]),Ue+=Ce*(g[rt]-g[ve]),Ke-=D*.1*f[ve],Ue-=D*.1*g[ve],b[ve]=y[ve]*we+Ke*Xe,S[ve]=_[ve]*we+Ue*Xe,w[ve]=f[ve]+b[ve]*Xe,v[ve]=g[ve]+S[ve]*Xe,w[ve]=Math.max(-.5,Math.min(.5,w[ve])),v[ve]=Math.max(-.5,Math.min(.5,v[ve]))}y.set(b),_.set(S),f.set(w),g.set(v)}for(let le=0;le<Pn;le++)for(let we=0;we<Pn;we++){let Ce=le*Pn+we,ke=Ce*2;C[ke]=f[Ce],C[ke+1]=g[Ce]}E.needsUpdate=!0,R=T.x,c=T.y}),r(()=>{E.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 Ht(Bn(h,o.sample(h),o,t.edges.uniform.value))}}});var Wl,rH=z(()=>{"use strict";Dt();zn();pr();ut();Wl={name:"Marble",category:"Textures",description:"Classic marble swirl and vein texture using noise-warped sine waves",props:{colorA:{default:"#ffffff",transform:Me,description:"Base background color of the marble",ui:{type:"color",label:"Base",group:"Colors"}},colorB:{default:"#3a2d54",transform:Me,description:"Secondary marble tone",ui:{type:"color",label:"Tone",group:"Colors"}},colorC:{default:"#0f0f0f",transform:Me,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=Y.x.div(Y.y),i=n.x.mul(r),o=n.y,a=bn(t,e.speed),l=e.scale.uniform,s=e.seed.uniform,u=qn(I(i.mul(l).add(s),o.mul(l).add(a))),d=qn(I(i.mul(l).mul(2).add(s.mul(1.7)),o.mul(l).mul(2).add(a.mul(.7)))).mul(.5),h=qn(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=me(i.mul(l).mul(p(Math.PI)).add(f.mul(g))).mul(.5).add(.5),_=qn(I(o.mul(l).mul(1.5).add(s.mul(2)),i.mul(l).mul(1.2))).mul(.3).add(.5),b=Ae(p(.3),p(.6),y),S=Ae(p(.6),p(.9),y),w=Ft(Ft(e.colorA.uniform,e.colorB.uniform,b,e.colorSpace.uniform.value),e.colorC.uniform,S.mul(_),e.colorSpace.uniform.value);return N(w.rgb,w.a)}}});var jl,iH=z(()=>{"use strict";pi();Dt();Jn();ut();jl={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:Mt,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:Hn,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 N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=Y.x.div(Y.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(He(s),me(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),_=xn(0,h);return Ht(Te(r.sample(j),Bn(y,r.sample(y),r,t.edges.uniform.value),_))}}});var ql,oH=z(()=>{"use strict";Dt();ut();ql={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:Me,description:"Color of control point A",ui:{type:"color",label:"Color",group:"Point A"}},positionA:{default:{x:.2,y:.2},transform:Mt,description:"Position of control point A",ui:{type:"position",label:"Position",group:"Point A"}},colorB:{default:"#C44DFF",transform:Me,description:"Color of control point B",ui:{type:"color",label:"Color",group:"Point B"}},positionB:{default:{x:.8,y:.2},transform:Mt,description:"Position of control point B",ui:{type:"position",label:"Position",group:"Point B"}},colorC:{default:"#1ABC9C",transform:Me,description:"Color of control point C",ui:{type:"color",label:"Color",group:"Point C"}},positionC:{default:{x:.2,y:.8},transform:Mt,description:"Position of control point C",ui:{type:"position",label:"Position",group:"Point C"}},colorD:{default:"#F8BBD9",transform:Me,description:"Color of control point D",ui:{type:"color",label:"Color",group:"Point D"}},positionD:{default:{x:.8,y:.8},transform:Mt,description:"Position of control point D",ui:{type:"position",label:"Position",group:"Point D"}},colorE:{default:"#FF8C42",transform:Me,description:"Color of control point E",ui:{type:"color",label:"Color",group:"Point E"}},positionE:{default:{x:.5,y:.5},transform:Mt,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=Y.x.div(Y.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 De(()=>{let o=ge(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=An(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(Gt(f,g));o.assign(o.add(s.rgb.mul(y))),a.assign(a.add(s.a.mul(y))),l.assign(l.add(y))}return N(o.div(l),a.div(l))})()}}});function sH(t,e,n){return De(()=>{let r=j,i=Y.x.div(Y.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=Te(d,d.add(h).add(f).add(g).add(y).div(p(5)),s),w=p(1).div(Y.y),v=e.glowRadius.uniform.max(p(.001)),C=Ot(w.div(a),p(.004)),E=N(0).toVar();return Fn(S.greaterThan(v.mul(p(1.5)).add(C)),()=>{E.assign(N(0,0,0,0))}).Else(()=>{let M=An(_.mul(_).add(b.mul(b))).max(p(1e-4)),R=_.div(M),c=b.div(M),m=e.tubeThickness.uniform,x=St(S.negate().div(m.max(p(.001))),p(0),p(1)),T=Ae(C,C.negate(),S),O=Ae(m.add(C),m.sub(C),S.negate()),L=T.mul(O),F=x,U=An(F.mul(p(2).sub(F)).max(p(0))),D=p(1).sub(F),B=R.mul(D),q=c.mul(D),X=U,re=e.lightAngle.uniform.mul(p(Math.PI/180)),xe=He(re),pe=me(re),Ne=xe.mul(p(B0)),qe=pe.mul(p(B0)),Xe=p(aH),le=St(B.mul(Ne).add(q.mul(qe)).add(X.mul(Xe)),p(0),p(1)),we=B.mul(Ne.mul(p(qU))).add(q.mul(qe.mul(p(qU)))).add(X.mul(p($U*qU))),Ce=bp(p(8).sub(e.specularSize.uniform.mul(p(7)))),ke=Gt(St(we,p(0),p(1)),Ce).mul(e.specularIntensity.uniform),je=l.x.sub(p(.5)),ve=me(dr(l.y.sub(p(.5)),je).mul(p(2)).add(n.mul(e.flowSpeed.uniform))).mul(p(.5)).add(p(.5)),Ke=Te(p(1),ve,e.flowAmount.uniform),Ue=ge(e.color.uniform.x,e.color.uniform.y,e.color.uniform.z),Z=ge(e.secondaryColor.uniform.x,e.secondaryColor.uniform.y,e.secondaryColor.uniform.z),Se=e.secondaryBlend.uniform,Re=Te(Ue,Te(Z,Ue,le),Se),ze=p(.12),Je=U.mul(p(.35)),ot=Re.mul(ze.add(le.mul(p(.55))).add(Je)),it=ge(ke,ke,ke),rt=ot.add(it),st=Ae(p(.55),p(1),x).mul(e.hotCoreIntensity.uniform).mul(Ke),ee=Te(rt,Te(Ue,ge(1,1,1),p(.75)),st).mul(Te(p(1),Ke,p(.4))),Fe=e.glowIntensity.uniform,Oe=Ot(S,p(0)),k=p(12).div(v),P=$i(Oe.negate().mul(k)).mul(p(.7)),H=p(4).div(v),$=$i(Oe.negate().mul(H)).mul(p(.35)),te=P.add($).mul(Fe),Ee=Ae(p(-.003),p(.003),S),Pe=te.mul(Ee),Q=ge(e.glowColor.uniform.x,e.glowColor.uniform.y,e.glowColor.uniform.z),J=n.mul(e.flickerSpeed.uniform),be=me(J.mul(p(17.13))),et=me(J.mul(p(31.71))),Ve=me(J.mul(p(47.29))),nt=be.add(et.mul(p(.5))).add(Ve.mul(p(.3))),Et=Te(p(-2),p(.8),e.flickerAmount.uniform),Ct=Ae(Et.sub(p(.1)),Et.add(p(.1)),nt),Wt=e.intensity.uniform.mul(Ct),se=ee.mul(Wt),at=Q.mul(Pe).mul(Wt),Le=Te(at.x,se.x,L),_t=Te(at.y,se.y,L),Bt=Te(at.z,se.z,L),dt=Ot(L,St(Pe.mul(p(.6)),p(0),p(1)));E.assign(N(Le,_t,Bt,dt))}),E})()}var XU,B0,aH,$U,qU,Vbe,Xl,cH=z(()=>{"use strict";Dt();Zi();ut();XU=.7,B0=1/Math.sqrt(1+XU*XU),aH=XU*B0,$U=aH+1,qU=1/Math.sqrt(B0*B0+$U*$U);Vbe=JSON.stringify({type:"circleSDF",radius:.35}),Xl={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:Mt,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:Me,description:"Primary neon tube color",ui:{type:"color",label:"Tube Color",group:"Colors"}},secondaryColor:{default:"#ff00aa",transform:Me,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:Me,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:Vbe,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=ne(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 sH(i?ds(i,n,e):fs(t.shapeType.uniform.value||o.type||"circleSDF",o,t.shape,n),t,r)}}});var $l,lH=z(()=>{"use strict";ut();$l={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 N(0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j,o=Y.x.div(Y.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=qn(ge(d.x,d.y,p(22.3))),f=qn(ge(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=qn(ge(S.x,S.y,p(1.3))),v=b.mul(s.mul(p(.4))).add(l.add(p(33.7))),C=At(qn(ge(v.x,v.y,p(4.1)))),E=b.mul(s).add(l.add(p(71.2))),M=qn(ge(E.x,E.y,p(9.8))),R=b.mul(s.mul(p(2))).add(l.add(p(107.3))),c=qn(ge(R.x,R.y,p(15.6))),m=w.mul(p(.3)).add(C.mul(p(.3))).add(M.mul(p(.25))).add(c.mul(p(.15))),x=t.roughness.uniform,T=St(p(1).add(m.mul(x.mul(p(.4)))),p(0),p(1.5)),O=ge(_.r,_.g,_.b).mul(T);return N(O.x,O.y,O.z,_.a)}}});var Yl,uH=z(()=>{"use strict";pi();Dt();Jn();ut();Yl={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:Mt,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:Mt,description:"Shift the result in X/Y",ui:{type:"position",label:"Offset",group:"Position"}},edges:{default:"transparent",description:"How to handle edges",transform:Hn,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 N(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=He(s),f=me(s),g=He(u),y=me(u),_=aG(d.mul(.5)).mul(2),b=Ot(h.add(f.mul(a).mul(_)),p(.001)),S=a.div(b),w=l.mul(h).div(b),v=Ot(g.add(y.mul(w).mul(_)),p(.001)),C=S.mul(g).div(v),E=w.div(v),M=I(t.offset.uniform.x,t.offset.uniform.y.oneMinus()),R=I(C,E).add(i).sub(M).add(I(.5,.5));return Ht(Bn(R,r.sample(R),r,t.edges.uniform.value))}}});var Zl,dH=z(()=>{"use strict";Jn();ut();Zl={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 N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=Y.x.div(Y.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(en(j.x.mul(l)).div(l),en(j.y.mul(s)).div(s)),d=Ht(r.sample(u)),h=I(pt(j.x.mul(l)).sub(.5),pt(j.y.mul(s)).sub(.5)),f=p(.5).sub(t.gap.uniform.mul(.5)),g=t.roundness.uniform.mul(f),y=jn(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 N(d.rgb,d.a.mul(y))}}});var Kl,fH=z(()=>{"use strict";Dt();zn();pr();ut();Kl={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:Me,ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#000000",description:"Secondary color",transform:Me,ui:{type:"color",label:"Color B",group:"Colors"}},colorSpace:{default:"linear",transform:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=e.density.uniform,r=e.intensity.uniform,i=e.warp.uniform,o=bn(t,e.speed).mul(.125),a=Y.x.div(Y.y),l=ge(j.x.mul(a),j.y,p(0)).mul($i(n.sub(1))).toVar(),s=i.mul(4),u=qn(l.add(ge(o.mul(.3),o.mul(-.2),0))),d=qn(l.add(ge(5.2,1.3,o.mul(.25)))),h=l.add(ge(u,d,p(0)).mul(s)),f=qn(h.add(ge(1.7,9.2,o.mul(.15)))),g=qn(h.add(ge(8.3,2.8,o.mul(.13)))),y=St(Gt(qn(l.add(ge(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=St(y.add(_),0,1);return Ft(e.colorB.uniform,e.colorA.uniform,b,e.colorSpace.uniform.value)}}});var Jl,hH=z(()=>{"use strict";pi();Dt();Jn();ut();Jl={name:"PolarCoordinates",category:"Distortions",description:"Convert rectangular coordinates to polar space",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:Mt,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:Hn,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 N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=Y.x.div(Y.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=dr(l.y,l.x).add(mi).div(mi.mul(2)),u=jn(l),d=Te(j,I(s.mul(t.wrap.uniform),u.mul(t.radius.uniform)),t.intensity.uniform);return Ht(Bn(d,r.sample(d),r,t.edges.uniform.value))}}});var Gbe,Ql,mH=z(()=>{"use strict";Dt();zn();Zi();ut();Gbe=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,Ql={name:"Polygon",category:"Shapes",description:"Regular polygon with adjustable sides and corner rounding",props:{color:{default:"#ffffff",transform:Me,description:"Fill color of the polygon",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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:Me,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:Gbe,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:qt,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:jt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.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=He(l),u=me(l),d=o.mul(s).add(a.mul(u)),h=a.mul(s).sub(o.mul(u)),f=t.radius.uniform,g=Te(OU(d,h,f,t.sides.uniform),qE(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)),C=_.mul(.5),E=v.select(_.negate(),w.select(C.negate(),p(0))),M=v.select(p(0),w.select(C,_)),R=Ae(M.sub(y),M,g).oneMinus(),c=S.select(Ae(E.sub(y),E,g),p(0)),m=Ft(N(t.color.uniform.rgb,t.color.uniform.a),N(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),c,t.colorSpace.uniform.value);return N(m.xyz,m.w.mul(R))}}});var eu,pH=z(()=>{"use strict";ut();eu={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."),N(0);let n=p(t.intensity.uniform);return N(en(e.r.mul(n)).div(n),en(e.g.mul(n)).div(n),en(e.b.mul(n)).div(n),e.a)}}});var tu,gH=z(()=>{"use strict";Dt();Jn();Ef();ut();tu={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:mr,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:Mt,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=Ka(a,s,u,e),{computeNodes:h,outputTexture:f,blurMapWriteNode:g,computeWidth:y,computeHeight:_}=d,b=ne(0),S=ne(0),w=ne(.5),v=ne(1),C=ne(1),E=ne(s),M=ne(u),R=Cn(y),c=Cn(_);function m(F){return F.getCpuValue?.()??(typeof F.uniform.value=="number"?F.uniform.value:null)}function x(){let F=m(i.angle);F!==null&&(b.value=F);let U=i.center.uniform.value?.x??i.center.uniform.x?.value;typeof U=="number"&&(S.value=U);let D=i.center.uniform.value?.y??i.center.uniform.y?.value;typeof D=="number"&&(w.value=D);let B=m(i.falloff);B!==null&&(v.value=B),C.value=n.width/n.height}let T=i.intensity.mapComputeInfo;if(T){let{sourceTexture:F,channel:U,inputMin:D,inputMax:B,outputMin:q,outputMax:X,curve:re}=T,xe=De(()=>{let pe=Zt,Ne=pe.mod(R),qe=pe.div(R);Fn(qe.lessThan(c),()=>{let Xe=Ne.toFloat().add(p(.5)).div(p(y)),le=qe.toFloat().add(p(.5)).div(p(_)),we=b.mul(p(Math.PI/180)),Ce=I(we.cos().div(C),we.sin()),ke=I(S,p(1).sub(w)),je=I(Xe,le).sub(ke),ve=Ot(p(0),je.dot(Ce)),Ke=Ae(p(0),v,ve),Ue=Li(F,Dn(Xe.mul(E).round().toInt().clamp(Ut(0),Ut(E.sub(1))).toUint(),le.mul(M).round().toInt().clamp(Ut(0),Ut(M.sub(1))).toUint()),Ut(0)),Z;U==="alpha"?Z=Ue.a:U==="alphaInverted"?Z=Ue.a.oneMinus():U==="luminanceInverted"?Z=Vt(Ue.rgb,ge(.2126,.7152,.0722)).oneMinus():Z=Vt(Ue.rgb,ge(.2126,.7152,.0722));let Se=B.sub(D).max(p(1e-4)),Re=Te(q,X,Gt(St(Z.sub(D).div(Se),p(0),p(1)),Gt(p(2),re.negate().mul(p(2))))).mul(p(.36)),ze=Ke.mul(Re);ir(g,Dn(Ne,qe),N(ze,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:pe,height:Ne})=>{let qe=Math.round(pe*l),Xe=Math.round(Ne*l);E.value=qe,M.value=Xe,d.setInputDimensions(qe,Xe)}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>(x(),[xe,...h])}}let O=ne(18),L=De(()=>{let F=Zt,U=F.mod(R),D=F.div(R);Fn(D.lessThan(c),()=>{let B=U.toFloat().add(p(.5)).div(p(y)),q=D.toFloat().add(p(.5)).div(p(_)),X=b.mul(p(Math.PI/180)),re=I(X.cos().div(C),X.sin()),xe=I(S,p(1).sub(w)),pe=I(B,q).sub(xe),Ne=Ot(p(0),pe.dot(re)),qe=Ae(p(0),v,Ne).mul(O);ir(g,Dn(U,D),N(qe,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:F,height:U})=>{d.setInputDimensions(Math.round(F*l),Math.round(U*l))}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>{x();let F=m(i.intensity);return F!==null&&(O.value=F*.36),[L,...h]}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n,computeOutputs:r})=>{if(!e)return N(0,0,0,0);if(r?.blurredTexture){let C=r.childTexture.sample(j),E=wn(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 Ht(N(E.rgb.add(M),C.a))}let i=It(e);n(()=>{i?.renderTarget?.dispose&&i.renderTarget.dispose()});let o=Y.x.div(Y.y),a=Zr(t.angle.uniform),l=He(a),s=me(a),u=I(l.div(o),s),d=I(t.center.uniform[0],t.center.uniform[1].oneMinus()),h=j.sub(d),f=Ot(p(0),h.dot(u)),g=Ot(p(.001),t.falloff.uniform),y=Ae(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(De(()=>{let C=j,E=I(1).div(Y),M=N(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(E),x=C.add(m),T=i.sample(x).mul(c);M.assign(M.add(T))}return M})());return n(()=>{v?.renderTarget?.dispose&&v.renderTarget.dispose()}),De(()=>{let C=j,E=I(1).div(Y),M=N(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(E),x=C.add(m),T=v.sample(x).mul(c);M.assign(M.add(T))}return Ht(M)})()}}});var nu,yH=z(()=>{"use strict";Dt();zn();ut();nu={name:"RadialGradient",category:"Textures",description:"Radial gradient radiating from a center point",props:{colorA:{default:"#ff0000",transform:Me,description:"The starting color at the center of the gradient",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#0000ff",transform:Me,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:Mt,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.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=He(l),u=me(l),d=o.mul(s).add(a.mul(u)),h=o.mul(u).negate().add(a.mul(s)),f=vE(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(pt(y),y.clamp(p(0),p(1)));return Ft(t.colorA.uniform,t.colorB.uniform,_,t.colorSpace.uniform.value)}}});var ru,vH=z(()=>{"use strict";pi();Dt();Jn();ut();ru={name:"RectangularCoordinates",category:"Distortions",description:"Convert polar coordinates back to rectangular space",requiresRTT:!0,requiresChild:!0,props:{center:{default:{x:.5,y:.5},transform:Mt,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:Hn,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 N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j.x.mul(mi.mul(2)).sub(mi),o=j.y.mul(t.scale.uniform),a=o.mul(He(i)),l=o.mul(me(i)),s=Y.x.div(Y.y),u=I(t.center.uniform.x,t.center.uniform.y.oneMinus()),d=Te(j,I(a.div(s).add(u.x),l.add(u.y)),t.intensity.uniform);return Ht(Bn(d,r.sample(d),r,t.edges.uniform.value))}}});var Hbe,Wbe,YU,jbe,iu,xH=z(()=>{"use strict";pi();Dt();Jn();Ef();ut();Hbe=30,Wbe=12,YU=[[0,0],[-.94,-.34],[.95,.31],[-.09,-.93],[.34,.94],[-.91,.41],[.88,-.46],[-.4,.71],[.51,.58],[-.49,-.59],[.4,-.68],[-.71,.05],[.07,.21]],jbe=1/YU.length,iu={name:"ReflectivePlane",category:"Stylize",description:"Reflective floor that mirrors the content above it",requiresRTT:!0,requiresChild:!0,props:{height:{default:.7,description:"Vertical position of the reflective surface",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Floor Height",group:"Plane"}},distance:{default:.5,description:"How far below the floor the reflection remains visible before fully fading to transparent.",ui:{type:["range","map"],min:.01,max:1,step:.01,label:"Reflection Distance",group:"Plane"}},falloff:{default:.5,description:"Width of the fade zone, as a fraction of reflection distance.",ui:{type:["range","map"],min:0,max:3,step:.01,label:"Reflection Falloff",group:"Plane"}},blur:{default:3,description:"Maximum blur applied to the reflection far from the surface.",ui:{type:["range","map"],min:0,max:5,step:.05,label:"Blur",group:"Surface"}},blurDistance:{default:.3,description:"How far below the surface the blur takes to ramp from sharp to maximum.",ui:{type:"range",min:.01,max:1,step:.01,label:"Blur Distance",group:"Surface"}},edges:{default:"stretch",description:"How to handle reflected samples that fall outside the source content.",transform:Hn,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:"Surface"}}},computeNode:({childNode:t,onCleanup:e,dimensions:n,renderer:r,uniforms:i,onResize:o})=>{if(!t||i.height.mapComputeInfo||i.blur.mapComputeInfo||i.blurDistance.mapComputeInfo)return null;let a=It(t);e(()=>{a?.renderTarget?.dispose&&a.renderTarget.dispose()});let l=r?.getPixelRatio?.()??1,s=Ka(a,Math.round(n.width*l),Math.round(n.height*l),e,Hbe),{computeNodes:u,outputTexture:d,blurMapWriteNode:h,computeWidth:f,computeHeight:g}=s,y=ne(.5),_=ne(1),b=ne(.5),S=Cn(f),w=Cn(g);function v(M){return M.getCpuValue?.()??(typeof M.uniform.value=="number"?M.uniform.value:null)}function C(){let M=v(i.height);M!==null&&(y.value=M);let R=v(i.blur);R!==null&&(_.value=R);let c=v(i.blurDistance);c!==null&&(b.value=Math.max(.01,c))}let E=De(()=>{let M=Zt,R=M.mod(S),c=M.div(S);Fn(c.lessThan(w),()=>{let m=c.toFloat().add(p(.5)).div(p(g)),x=y.sub(m).max(p(0)),T=Ae(p(0),b,x),O=_.mul(T).mul(p(Wbe));ir(h,Dn(R,c),N(O,p(0),p(0),p(1))).toWriteOnly()})})().compute(f*g,[256]);return o(({width:M,height:R})=>{s.setInputDimensions(Math.round(M*l),Math.round(R*l))}),{outputs:{childTexture:a,blurredTexture:d},getComputeNodes:()=>(C(),[E,...u])}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n,computeOutputs:r})=>{if(!e)return N(0,0,0,0);if(r?.blurredTexture&&r?.childTexture){let o=r.childTexture,a=wn(r.blurredTexture);return De(()=>{let l=t.height.uniform,s=j,u=s.y.sub(l).max(p(0)),d=o.sample(s),h=I(s.x,l.mul(2).sub(s.y)),f=Bn(h,a.sample(h),a,t.edges.uniform.value),g=t.distance.uniform.max(p(.001)),y=g.mul(t.falloff.uniform).max(p(1e-4)),_=g.sub(y),b=p(1).sub(Ae(_,g,u)),S=f.a.mul(b),w=f.rgb.mul(b),v=t.height.uniform.mul(p(0)).add(t.blur.uniform.mul(p(0))).add(t.blurDistance.uniform.mul(p(0))),C=S.oneMinus();return Ht(Te(d,N(w.add(d.rgb.mul(C)).add(v),S.add(d.a.mul(C))),xn(l,s.y)))})()}let i=It(e);return n(()=>{i?.renderTarget?.dispose&&i.renderTarget.dispose()}),De(()=>{let o=t.height.uniform,a=j,l=Y.x.div(Y.y),s=a.y.sub(o).max(p(0)),u=i.sample(a),d=I(a.x,o.mul(2).sub(a.y)),h=t.blurDistance.uniform.max(p(.01)),f=Ae(p(0),h,s),g=t.blur.uniform.mul(f).mul(.02),y=N(0).toVar();for(let M=0;M<YU.length;M++){let[R,c]=YU[M],m=I(p(R).mul(g).div(l),p(c).mul(g)),x=d.add(m),T=Bn(x,i.sample(x),i,t.edges.uniform.value);y.assign(y.add(T.mul(p(jbe))))}let _=t.distance.uniform.max(p(.001)),b=_.mul(t.falloff.uniform).max(p(1e-4)),S=_.sub(b),w=p(1).sub(Ae(S,_,s)),v=y.a.mul(w),C=y.rgb.mul(w),E=v.oneMinus();return Ht(Te(u,N(C.add(u.rgb.mul(E)),v.add(u.a.mul(E))),xn(o,a.y)))})()}}});var qbe,ou,bH=z(()=>{"use strict";Dt();zn();Zi();ut();qbe=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,ou={name:"Ring",category:"Shapes",description:"Annular ring (donut) with adjustable radius and band thickness",props:{color:{default:"#ffffff",transform:Me,description:"Fill color of the ring",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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:Me,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:qbe,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:qt,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:jt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.y),r=I(e.x.mul(n),e.y),i=I(t.center.uniform.x.mul(n),t.center.uniform.y.oneMinus()),o=DU(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)),_=Ae(y.sub(a),y,o).oneMinus(),b=u.select(Ae(g.sub(a),g,o),p(0)),S=Ft(N(t.color.uniform.rgb,t.color.uniform.a),N(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),b,t.colorSpace.uniform.value);return N(S.xyz,S.w.mul(_))}}});var su,_H=z(()=>{"use strict";Dt();zn();pr();ut();su={name:"Ripples",category:"Textures",description:"Concentric animated ripples emanating from a point",props:{center:{default:{x:.5,y:.5},transform:Mt,description:"The center point where ripples emanate from",ui:{type:"position",label:"Center",group:"Position"}},colorA:{default:"#ffffff",transform:Me,description:"Color of the ripple waves",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#000000",transform:Me,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=Y.x.div(Y.y),h=vE(I(n.x.mul(d),n.y),I(r.x.mul(d),r.y.oneMinus())),f=bn(t,e.speed),g=me(h.mul(a).sub(f).add(u)),y=s.mul(p(2)).sub(p(1));return Ft(o,i,Ae(y.sub(l),y.add(l),g).oneMinus(),0)}}});var Xbe,au,SH=z(()=>{"use strict";Dt();zn();Zi();ut();Xbe=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,au={name:"RoundedRect",category:"Shapes",description:"Rounded rectangle with adjustable width, height, and corner rounding",props:{color:{default:"#ffffff",transform:Me,description:"Fill color of the rectangle",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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:Me,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:Xbe,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:qt,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:jt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.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=He(l),u=me(l),d=LU(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)),C=Ae(v.sub(h),v,d).oneMinus(),E=y.select(Ae(w.sub(h),w,d),p(0)),M=Ft(N(t.color.uniform.rgb,t.color.uniform.a),N(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),E,t.colorSpace.uniform.value);return N(M.xyz,M.w.mul(C))}}});var cu,wH=z(()=>{"use strict";ut();cu={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."),N(0);if(t.intensity.uniform.value===1)return e;let n=Vt(e.rgb,ge(.2126,.7152,.0722));return N(Te(ge(n,n,n),e.rgb,t.intensity.uniform),e.a)}}});var lu,MH=z(()=>{"use strict";Jn();ut();lu={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 N(0,0,0,0);if(t.sharpness.uniform.value===0)return e;let r=It(e);return n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()}),De(()=>{let i=j,o=t.sharpness.uniform,a=I(1).div(Y),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 Ht(N(St(l.rgb.mul(f).add(s.rgb.mul(g)).add(u.rgb.mul(g)).add(d.rgb.mul(g)).add(h.rgb.mul(g)),0,1),l.a))})()}}});var Ja,Bo,Ao,uu,TH=z(()=>{"use strict";pi();Dt();Jn();Fi();ki();ut();Ja=t=>{let e=Math.sin(t)*1e4;return e-Math.floor(e)},Bo=16,Ao=1024,uu={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:Hn,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=vf(new Array(Bo*2).fill(0),"float"),r=new Or(Ao,Ao);r.type=fn,r.magFilter=kn,r.minFilter=kn,r.generateMipmaps=!1;let i=Tr(r);e(()=>{r.dispose()});let o=Cn(Ao),a=p(1/Ao),l=De(()=>{let h=Zt,f=h.mod(o),g=h.div(o);Fn(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 C=0;C<Bo;C++){let E=n.element(Ut(C*2)),M=n.element(Ut(C*2+1)),R=y.sub(E),c=_.sub(M),m=R.mul(R).add(c.mul(c));Fn(m.lessThan(b),()=>{S.assign(b),v.assign(w),b.assign(m),w.assign(p(C))}).Else(()=>{Fn(m.lessThan(S),()=>{S.assign(m),v.assign(p(C))})})}ir(i,Dn(f,g),N(w,v,p(0),p(0))).toWriteOnly()})})().compute(Ao*Ao,[256]),s=t.seed.uniform.value,u=!0,d=h=>{let f=new Array(Bo*2);for(let g=0;g<Bo;g++)f[g*2]=Ja(h+g*2),f[g*2+1]=Ja(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(Bo*4),s=new Array(Bo*2).fill(0),u=vf(s,"float"),d=new Float32Array(Bo*4),h=new Array(Bo*2).fill(0),f=vf(h,"float"),g=()=>{for(let Oe=0;Oe<Bo;Oe++)s[Oe*2]=l[Oe*4],s[Oe*2+1]=l[Oe*4+1];u.array=s},y=()=>{for(let Oe=0;Oe<Bo;Oe++)h[Oe*2]=d[Oe*4],h[Oe*2+1]=d[Oe*4+1];f.array=h},_;if(o?.voronoiTexture)_=wn(o.voronoiTexture);else{let Oe=new Float32Array(Ao*Ao*4),k=new fr(Oe,Ao,Ao,nr,fn);k.magFilter=kn,k.minFilter=kn,_=wn(k);let P=()=>{for(let te=0;te<Ao;te++)for(let Ee=0;Ee<Ao;Ee++){let Pe=(Ee+.5)/Ao,Q=(te+.5)/Ao,J=1/0,be=1/0,et=0,Ve=0;for(let Et=0;Et<Bo;Et++){let Ct=Pe-l[Et*4],Wt=Q-l[Et*4+1],se=Ct*Ct+Wt*Wt;se<J?(be=J,Ve=et,J=se,et=Et):se<be&&(be=se,Ve=Et)}let nt=(te*Ao+Ee)*4;Oe[nt]=et,Oe[nt+1]=Ve}k.needsUpdate=!0},H=t.seed.uniform.value,$=te=>{for(let Ee=0;Ee<Bo;Ee++)l[Ee*4]=Ja(te+Ee*2),l[Ee*4+1]=Ja(te+Ee*2+1),l[Ee*4+2]=Ja(te+Ee*3),l[Ee*4+3]=Ja(te+Ee*3+1);g()};$(H),P(),e(()=>{let te=t.seed.uniform.value;te!==H&&(H=te,$(H),P(),d.fill(0))}),r(()=>{k.dispose()})}let b=Oe=>{for(let k=0;k<Bo;k++)l[k*4]=Ja(Oe+k*2),l[k*4+1]=Ja(Oe+k*2+1),l[k*4+2]=Ja(Oe+k*3),l[k*4+3]=Ja(Oe+k*3+1);g()},S=t.seed.uniform.value;b(S),d.fill(0),y();let w=.5,v=.5,C=Date.now();if(e(({pointer:Oe})=>{let k=Date.now(),P=Math.min((k-C)/1e3,.016);C=k;let H=i.width/i.height,$=t.seed.uniform.value;$!==S&&(S=$,b(S),d.fill(0));let te=t.intensity.uniform.value,Ee=t.radius.uniform.value,Pe=t.decay.uniform.value,Q=P>0?(Oe.x-w)/P:0,J=P>0?(Oe.y-v)/P:0,be=Math.sqrt(Q*Q+J*J),et=5+te*2;if(be>et){let Ve=et/be;Q*=Ve,J*=Ve,be=et}for(let Ve=0;Ve<Bo;Ve++){let nt=l[Ve*4],Et=l[Ve*4+1],Ct=l[Ve*4+2]-.5,Wt=l[Ve*4+3]-.5,se=H>=1?(nt-Oe.x)*H:nt-Oe.x,at=H>=1?Et-Oe.y:(Et-Oe.y)/H,Le=Math.sqrt(se*se+at*at),_t=d[Ve*4],Bt=d[Ve*4+1],dt=Math.max(.01,Pe),Kt=Math.exp(-P/dt);_t*=Kt,Bt*=Kt;let Xt=0,er=0;if(Le<Ee&&be>.01){let ri=Math.max(0,1-Le/Ee),gi=ri*ri,Wu=gi*be*te*P*.5;Xt=Q*Wu,er=J*Wu;let ju=gi*be*te*P*.1;Xt+=Ct*ju,er+=Wt*ju}let Vn=Math.min(1,1*P);d[Ve*4]=_t+Xt*Vn,d[Ve*4+1]=Bt+er*Vn,d[Ve*4+2]=0,d[Ve*4+3]=0}y(),w=Oe.x,v=Oe.y}),!n)return N(0,0,0,0);let E=It(n);r(()=>{E?.renderTarget?.dispose&&E.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(),O=j.sub(x).length(),L=I(f.element(R.mul(2)),f.element(R.mul(2).add(1))),F=L.length(),U=O.sub(T),D=t.crackWidth.uniform.mul(.005),B=p(1).sub(Ae(p(0),D,U)),q=Ae(p(0),p(.01),F),X=B.mul(q),re=j.sub(m).normalize(),xe=I(re.y.negate(),re.x),pe=j.sub(L),Ne=xe.mul(t.refractionStrength.uniform).mul(.01),qe=t.chromaticSplit.uniform.mul(.005),Xe=Ne.add(xe.mul(qe)),le=Ne,we=Ne.sub(xe.mul(qe)),Ce=pe.add(Xe.mul(X)),ke=pe.add(le.mul(X)),je=pe.add(we.mul(X)),ve=Bn(Ce,E.sample(Ce),E,t.edges.uniform.value),Ke=Bn(ke,E.sample(ke),E,t.edges.uniform.value),Ue=Bn(je,E.sample(je),E,t.edges.uniform.value),Z=N(ve.r,Ke.g,Ue.b,Ke.a),Se=Bn(pe,E.sample(pe),E,t.edges.uniform.value),Re=Se.rgb.mul(p(1).sub(X)).add(Z.rgb.mul(X)),ze=L.length(),Je=L.x.div(ze.add(.001)),ot=L.y.div(ze.add(.001)),it=I(.3,.6).normalize(),rt=Je.mul(it.x).add(ot.mul(it.y)),st=p(1).add(rt.mul(t.shardLighting.uniform)),ee=Ae(p(0),p(.02),ze),Fe=p(1).add(st.sub(1).mul(ee));return Ht(N(Re.mul(Fe),Se.a))}}});var du,EH=z(()=>{"use strict";Dt();zn();pr();ut();du={name:"SimplexNoise",category:"Textures",description:"Organic noise with animated movement",props:{colorA:{default:"#ffffff",description:"First color",transform:Me,ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#000000",description:"Second color",transform:Me,ui:{type:"color",label:"Color B",group:"Colors"}},colorSpace:{default:"linear",transform:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,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=Y.x.div(Y.y),i=I(n.x.mul(r),n.y),o=bn(t,e.speed),a=i.mul($i(e.scale.uniform)).add(e.seed.uniform),l=qn(ge(a.x,a.y,o.mul(.5))),s=e.contrast.uniform.add(1),u=St(l.mul(s).add(e.balance.uniform).mul(.5).add(.5),0,1);return Ft(e.colorB.uniform,e.colorA.uniform,u,e.colorSpace.uniform.value)}}});var fu,CH=z(()=>{"use strict";Dt();pr();ut();fu={name:"SineWave",category:"Textures",description:"Animated wave with thickness and softness",props:{color:{default:"#ffffff",transform:Me,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:mr,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:Mt,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=Y.x.div(Y.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=Zr(e.angle.uniform),s=He(l),u=me(l),d=a.x.mul(s).sub(a.y.mul(u)),h=a.x.mul(u).add(a.y.mul(s)),f=bn(t,e.speed),g=me(d.mul(e.frequency.uniform).mul(mi.mul(2)).add(f)).mul(e.amplitude.uniform),y=At(h.sub(g)),_=e.thickness.uniform.mul(.5),b=e.softness.uniform.mul(.5),S=Ae(_.sub(b),_.add(b),y).oneMinus();return N(e.color.uniform.rgb,e.color.uniform.a.mul(S))}}});var RH,$be,Ybe,AH,PH,hu,IH=z(()=>{"use strict";Dt();zn();Fi();ki();ut();RH=256,$be=56,Ybe=20,AH=.8,PH=.2,hu={name:"Smoke",category:"Interactive",description:"Realistic fluid smoke simulation with vorticity dynamics",usesPointer:!0,props:{colorA:{default:"#fc83f9",transform:Me,description:"Color of fresh smoke",ui:{type:"color",label:"Start Color",group:"Colors"}},colorB:{default:"#c21c79",transform:Me,description:"Color smoke transitions to as it ages",ui:{type:"color",label:"End Color",group:"Colors"}},emitFrom:{default:{x:.5,y:1},transform:Mt,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},computeNode:({uniforms:t,onCleanup:e,renderer:n})=>{let r=RH,i=Cn(r),o=Ut(r),a=Ut(r-1),l=r*r,s=(Z,Se,Re,ze)=>Z.add(Ut(Re)).clamp(Ut(0),a).mul(o).add(Se.add(Ut(ze)).clamp(Ut(0),a)),u=Rr(l,"vec4"),d=Rr(l,"vec4"),h=Rr(l,"vec4"),f=Rr(l,"vec4"),g=Rr(l,"vec4"),y=new Or(r,r);y.type=fn;let _=Tr(y);e(()=>{y.dispose()});let b=ne(.016),S=ne(128),w=ne(256),v=ne(0),C=ne(-50),E=ne(1),M=ne(0),R=ne(.5),c=ne(15),m=ne(.7),x=ne(1),T=ne(30),O=ne(.5),L=ne(128),F=ne(128),U=ne(0),D=ne(0),B=ne(0),q=ne(900),X=ne(1),re=De(()=>{let Z=Zt,Se=Z.mod(i),Re=Z.div(i),ze=Se.toFloat().add(p(.5)),Je=Re.toFloat().add(p(.5)),ot=ze.sub(S),it=Je.sub(w),rt=ot.mul(ot).add(it.mul(it)),st=c.mul(c).max(p(1)),ee=rt.negate().div(st).exp(),Fe=h.element(Z),Oe=Fe.x,k=m.mul(ee).mul(b).mul(p(8)),P=Oe.add(k).min(p(1)),H=k.div(P.max(p(.001)));h.element(Z).assign(N(P,Fe.y.mul(p(1).sub(H.min(p(1)))),p(0),p(0)));let $=u.element(Z),te=ot.mul(E).add(it.mul(M)).div(c.max(p(1))),Ee=v.mul(v).add(C.mul(C)).max(p(1)),Pe=v.add(E.mul(te).mul(R).mul(Ee.sqrt())),Q=C.add(M.mul(te).mul(R).mul(Ee.sqrt())),J=ee.mul(b).mul(p(3)).min(p(1)),be=O.mul(Oe).mul(b).mul(p(r*.08)),et=ze.sub(L),Ve=Je.sub(F),nt=et.mul(et).add(Ve.mul(Ve)).negate().div(q.max(p(1))).exp().mul(B);u.element(Z).assign(N(Te($.x,Pe,J).add(U.mul(nt)),Te($.y,Q,J).add(be).add(D.mul(nt)),$.z,p(0)))})().compute(l,[256]),xe=De(()=>{let Z=Zt,Se=Z.mod(i).toInt(),Re=Z.div(i).toInt(),ze=u.element(s(Re,Se,0,-1)),Je=u.element(s(Re,Se,0,1)),ot=u.element(s(Re,Se,-1,0)),it=u.element(s(Re,Se,1,0)),rt=Je.y.sub(ze.y).sub(it.x.sub(ot.x)).mul(p(.5)),st=u.element(Z);u.element(Z).assign(N(st.x,st.y,rt,p(0)))})().compute(l,[256]),pe=De(()=>{let Z=Zt,Se=Z.mod(i).toInt(),Re=Z.div(i).toInt(),ze=u.element(s(Re,Se,0,-1)).z.abs(),Je=u.element(s(Re,Se,0,1)).z.abs(),ot=u.element(s(Re,Se,-1,0)).z.abs(),it=u.element(s(Re,Se,1,0)).z.abs(),rt=u.element(Z).z,st=Je.sub(ze).mul(p(.5)),ee=it.sub(ot).mul(p(.5)),Fe=st.mul(st).add(ee.mul(ee)).sqrt().max(p(1e-5)),Oe=ee.div(Fe).mul(rt).mul(T).mul(b),k=st.div(Fe).negate().mul(rt).mul(T).mul(b),P=u.element(Z);u.element(Z).assign(N(P.x.add(Oe),P.y.add(k),P.z,p(0)))})().compute(l,[256]),Ne=De(()=>{let Z=Zt,Se=Z.mod(i).toInt(),Re=Z.div(i).toInt(),ze=Se.toFloat(),Je=Re.toFloat(),ot=u.element(Z),it=u.element(s(Re,Se,0,-1)).x,rt=u.element(s(Re,Se,0,1)).x,st=u.element(s(Re,Se,-1,0)).y,ee=u.element(s(Re,Se,1,0)).y,Fe=ze.lessThan(p(.5)).select(ot.x.negate(),it),Oe=ze.greaterThan(p(r-1.5)).select(ot.x.negate(),rt),k=Je.lessThan(p(.5)).select(ot.y.negate(),st),P=Je.greaterThan(p(r-1.5)).select(ot.y.negate(),ee),H=Oe.sub(Fe).add(P.sub(k)).mul(p(.5)),$=g.element(Z).x.mul(p(AH));g.element(Z).assign(N($,H,p(0),p(0)))})().compute(l,[256]),qe=De(()=>{let Z=Zt,Se=Z.mod(i).toInt(),Re=Z.div(i).toInt(),ze=g.element(s(Re,Se,0,-1)).x,Je=g.element(s(Re,Se,0,1)).x,ot=g.element(s(Re,Se,-1,0)).x,it=g.element(s(Re,Se,1,0)).x,rt=g.element(Z).y;g.element(Z).assign(N(ze.add(Je).add(ot).add(it).sub(rt).mul(p(.25)),rt,p(0),p(0)))})().compute(l,[256]),Xe=De(()=>{let Z=Zt,Se=Z.mod(i).toInt(),Re=Z.div(i).toInt(),ze=g.element(s(Re,Se,0,-1)).x,Je=g.element(s(Re,Se,0,1)).x,ot=g.element(s(Re,Se,-1,0)).x,it=g.element(s(Re,Se,1,0)).x,rt=u.element(Z);u.element(Z).assign(N(rt.x.sub(Je.sub(ze).mul(p(.5))),rt.y.sub(it.sub(ot).mul(p(.5))),rt.z,p(0)))})().compute(l,[256]),le=De(()=>{let Z=Zt,Se=Z.mod(i),Re=Z.div(i),ze=u.element(Z),Je=Se.toFloat().sub(ze.x.mul(b)).clamp(p(0),p(r-1)),ot=Re.toFloat().sub(ze.y.mul(b)).clamp(p(0),p(r-1)),it=en(Je).clamp(p(0),p(r-2)),rt=en(ot).clamp(p(0),p(r-2)),st=Je.sub(it),ee=ot.sub(rt),Fe=it.toInt(),Oe=rt.toInt(),k=u.element(Oe.mul(o).add(Fe)),P=u.element(Oe.mul(o).add(Fe.add(Ut(1)))),H=u.element(Oe.add(Ut(1)).mul(o).add(Fe)),$=u.element(Oe.add(Ut(1)).mul(o).add(Fe.add(Ut(1)))),te=p(1).add(p(PH).mul(b));d.element(Z).assign(N(Te(Te(k.x,P.x,st),Te(H.x,$.x,st),ee).div(te),Te(Te(k.y,P.y,st),Te(H.y,$.y,st),ee).div(te),p(0),p(0)))})().compute(l,[256]),we=De(()=>{let Z=d.element(Zt);u.element(Zt).assign(N(Z.x,Z.y,p(0),p(0)))})().compute(l,[256]),Ce=De(()=>{let Z=Zt,Se=Z.mod(i),Re=Z.div(i),ze=u.element(Z),Je=Se.toFloat().sub(ze.x.mul(b)).clamp(p(0),p(r-1)),ot=Re.toFloat().sub(ze.y.mul(b)).clamp(p(0),p(r-1)),it=en(Je).clamp(p(0),p(r-2)),rt=en(ot).clamp(p(0),p(r-2)),st=Je.sub(it),ee=ot.sub(rt),Fe=it.toInt(),Oe=rt.toInt(),k=h.element(Oe.mul(o).add(Fe)),P=h.element(Oe.mul(o).add(Fe.add(Ut(1)))),H=h.element(Oe.add(Ut(1)).mul(o).add(Fe)),$=h.element(Oe.add(Ut(1)).mul(o).add(Fe.add(Ut(1)))),te=Te(Te(k.x,P.x,st),Te(H.x,$.x,st),ee),Ee=Te(Te(k.y,P.y,st),Te(H.y,$.y,st),ee),Pe=p(1).add(x.mul(b));f.element(Z).assign(N(te.div(Pe).max(p(0)),Ee.add(b.mul(p(.4)).mul(X)).min(p(1)),p(0),p(0)))})().compute(l,[256]),ke=De(()=>{let Z=f.element(Zt);h.element(Zt).assign(N(Z.x,Z.y,p(0),p(0)))})().compute(l,[256]),je=De(()=>{let Z=Zt,Se=Z.mod(i),Re=Z.div(i),ze=h.element(Z);ir(_,Dn(Se,Re),N(ze.x,ze.y,p(0),p(0))).toWriteOnly()})().compute(l,[256]),ve=Date.now(),Ke=.5,Ue=.5;return{outputs:{smokeTexture:y},getComputeNodes:Z=>{let Se=Date.now(),Re=Math.min((Se-ve)/1e3,.033);if(ve=Se,Re<.001)return null;let ze=(Q,J)=>{let be=t[Q];if(!be)return J;if(typeof be.getCpuValue=="function"){let Ve=be.getCpuValue();return typeof Ve=="number"?Ve:J}let et=be.uniform?.value;return typeof et=="number"?et:J},Je=ze("speed",3),ot=ze("direction",0)*Math.PI/180,it=Math.min(89*Math.PI/180,ze("spread",45)*Math.PI/360),rt=t.emitFrom.uniform.value,st=typeof rt=="object"?rt.x??.5:.5,ee=typeof rt=="object"?rt.y??0:0;b.value=Re,S.value=st*r,w.value=(1-ee)*r;let Fe=Je*r*.15;v.value=Math.sin(ot)*Fe,C.value=-Math.cos(ot)*Fe,E.value=Math.cos(ot),M.value=Math.sin(ot),R.value=Math.tan(it),c.value=ze("emitRadius",.06)*r,m.value=ze("intensity",.7),x.value=ze("dissipation",1),T.value=ze("detail",30),O.value=ze("gravity",.5),X.value=ze("colorDecay",1);let Oe=ze("mouseInfluence",.5),k=ze("mouseRadius",.12),P=Z?.pointer?.x??Ke,H=Z?.pointer?.y??Ue,$=P-Ke,te=H-Ue;Ke=P,Ue=H;let Ee=Math.sqrt($*$+te*te),Pe=k*r;q.value=Pe*Pe,Ee>5e-4&&Oe>0?(L.value=P*r,F.value=H*r,U.value=$*r*15*Oe,D.value=te*r*15*Oe,B.value=1):B.value=0,n.compute(re),n.compute(xe),n.compute(pe),n.compute(Ne);for(let Q=0;Q<Ybe;Q++)n.compute(qe);return n.compute(Xe),n.compute(le),n.compute(we),n.compute(Ce),n.compute(ke),[je]}}},fragmentNode:({uniforms:t,onBeforeRender:e,onCleanup:n,computeOutputs:r})=>{let i;if(r?.smokeTexture)i=wn(r.smokeTexture);else{let s=$be,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),C=new Float32Array(u),E=new Float32Array(u*4),M=new fr(E,s,s,nr,fn);M.magFilter=sn,M.minFilter=sn,M.needsUpdate=!0,i=wn(M);let R=(L,F)=>{let U=t[L];if(!U)return F;if(typeof U.getCpuValue=="function"){let B=U.getCpuValue();return typeof B=="number"?B:F}let D=U.uniform?.value;return typeof D=="number"?D:F},c=Date.now(),m=.5,x=.5,T=(L,F,U)=>{let D=Math.max(0,Math.min(s-1,F)),B=Math.max(0,Math.min(s-1,U)),q=Math.max(0,Math.min(s-2,Math.floor(D))),X=Math.max(0,Math.min(s-2,Math.floor(B))),re=D-q,xe=B-X,pe=X*s+q;return(1-re)*(1-xe)*L[pe]+re*(1-xe)*L[pe+1]+(1-re)*xe*L[pe+s]+re*xe*L[pe+s+1]},O=(L,F,U,D)=>Math.max(0,Math.min(s-1,L+U))*s+Math.max(0,Math.min(s-1,F+D));e(({pointer:L})=>{let F=Date.now(),U=Math.min((F-c)/1e3,.033);if(c=F,U<.001)return;let D=R("speed",3),B=t.direction.uniform.value*Math.PI/180,q=Math.min(89*Math.PI/180,t.spread.uniform.value*Math.PI/360),X=t.emitFrom.uniform.value,re=(typeof X=="object"?X.x??.5:.5)*s,xe=(1-(typeof X=="object"?X.y??0:0))*s,pe=D*s*.15,Ne=Math.sin(B)*pe,qe=-Math.cos(B)*pe,Xe=Math.cos(B),le=Math.sin(B),we=Math.tan(q),Ce=t.emitRadius.uniform.value*s,ke=t.intensity.uniform.value,je=R("detail",30),ve=R("gravity",.5),Ke=R("colorDecay",1),Ue=R("dissipation",.2),Z=t.mouseInfluence.uniform.value,Se=t.mouseRadius.uniform.value*s,Re=L?.x??m,ze=L?.y??x,Je=Re-m,ot=ze-x;m=Re,x=ze;let it=Math.sqrt(Je*Je+ot*ot)>5e-4&&Z>0,rt=it?Je*s*15*Z:0,st=it?ot*s*15*Z:0,ee=Re*s,Fe=ze*s;for(let P=0;P<s;P++)for(let H=0;H<s;H++){let $=P*s+H,te=H+.5-re,Ee=P+.5-xe,Pe=Math.exp(-(te*te+Ee*Ee)/Math.max(1,Ce*Ce)),Q=y[$],J=ke*Pe*U*8,be=Math.min(1,Q+J);_[$]*=1-Math.min(1,J/Math.max(.001,be)),y[$]=be;let et=(te*Xe+Ee*le)/Math.max(1,Ce),Ve=Math.sqrt(Ne*Ne+qe*qe),nt=Ne+Xe*et*we*Ve,Et=qe+le*et*we*Ve,Ct=Math.min(1,Pe*U*3),Wt=H+.5-ee,se=P+.5-Fe,at=it?Math.exp(-(Wt*Wt+se*se)/Math.max(1,Se*Se)):0;d[$]=d[$]*(1-Ct)+nt*Ct+rt*at,h[$]=h[$]*(1-Ct)+Et*Ct+ve*Q*U*s*.08+st*at}if(je>0){for(let P=0;P<s;P++)for(let H=0;H<s;H++)C[P*s+H]=.5*(h[O(P,H,0,1)]-h[O(P,H,0,-1)]-(d[O(P,H,1,0)]-d[O(P,H,-1,0)]));for(let P=0;P<s;P++)for(let H=0;H<s;H++){let $=P*s+H,te=.5*(Math.abs(C[O(P,H,0,1)])-Math.abs(C[O(P,H,0,-1)])),Ee=.5*(Math.abs(C[O(P,H,1,0)])-Math.abs(C[O(P,H,-1,0)])),Pe=Math.max(1e-5,Math.sqrt(te*te+Ee*Ee));d[$]+=Ee/Pe*C[$]*je*U,h[$]+=-(te/Pe)*C[$]*je*U}}for(let P=0;P<s;P++)for(let H=0;H<s;H++){let $=P*s+H,te=H===0?-d[$]:d[O(P,H,0,-1)],Ee=H===s-1?-d[$]:d[O(P,H,0,1)],Pe=P===0?-h[$]:h[O(P,H,-1,0)],Q=P===s-1?-h[$]:h[O(P,H,1,0)];v[$]=.5*(Ee-te+Q-Pe),w[$]*=AH}for(let P=0;P<6;P++)for(let H=0;H<s;H++)for(let $=0;$<s;$++){let te=H*s+$;w[te]=.25*(w[O(H,$,0,-1)]+w[O(H,$,0,1)]+w[O(H,$,-1,0)]+w[O(H,$,1,0)]-v[te])}for(let P=0;P<s;P++)for(let H=0;H<s;H++){let $=P*s+H;d[$]-=.5*(w[O(P,H,0,1)]-w[O(P,H,0,-1)]),h[$]-=.5*(w[O(P,H,1,0)]-w[O(P,H,-1,0)])}let Oe=1+PH*U;for(let P=0;P<s;P++)for(let H=0;H<s;H++){let $=P*s+H;f[$]=T(d,H-d[$]*U,P-h[$]*U)/Oe,g[$]=T(h,H-d[$]*U,P-h[$]*U)/Oe}d.set(f),h.set(g);let k=1+Ue*U;for(let P=0;P<s;P++)for(let H=0;H<s;H++){let $=P*s+H,te=H-d[$]*U,Ee=P-h[$]*U;b[$]=Math.max(0,T(y,te,Ee)/k),S[$]=Math.min(1,T(_,te,Ee)+U*.4*Ke)}y.set(b),_.set(S);for(let P=0;P<u;P++)E[P*4]=y[P],E[P*4+1]=_[P];M.needsUpdate=!0}),n(()=>{M.dispose()})}let o,a;if(r?.smokeTexture){let s=p(1/RH),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=Ft(t.colorA.uniform,t.colorB.uniform,a,t.colorSpace.uniform.value);return N(l.x,l.y,l.z,l.w.mul(o))}}});var Zbe,ZU,OH,Kbe,Jbe,Qbe,mu,UH=z(()=>{"use strict";Dt();zn();Zi();Fi();ki();ut();Zbe=JSON.stringify({type:"circleSDF",radius:.35}),ZU=256,OH=56,Kbe=20,Jbe=.8,Qbe=.2,mu={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:Me,description:"Color of fresh smoke",ui:{type:"color",label:"Start Color",group:"Colors"}},colorB:{default:"#04a0d6",transform:Me,description:"Color smoke transitions to as it ages",ui:{type:"color",label:"End Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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:Mt,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}},shape:{default:Zbe,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=ZU,o=Cn(i),a=Ut(i),l=Ut(i-1),s=i*i,u=(Fe,Oe,k,P)=>Fe.add(Ut(k)).clamp(Ut(0),l).mul(a).add(Oe.add(Ut(P)).clamp(Ut(0),l)),d=t.shapeSdfUrl.uniform.value,h=(()=>{let Fe=t.shape.uniform.value;try{return JSON.parse(Fe)}catch{return{type:"circleSDF",radius:.35}}})(),f;d?f=ds(d,n,e):f=fs(t.shapeType.uniform.value||h.type||"circleSDF",h,t.shape,n);let g=Rr(s,"vec4"),y=Rr(s,"vec4"),_=Rr(s,"vec4"),b=Rr(s,"vec4"),S=Rr(s,"vec4"),w=Rr(s,"vec4"),v=new Or(i,i);v.type=fn;let C=Tr(v);e(()=>{v.dispose()});let E=ne(.016),M=ne(.5),R=ne(.5),c=ne(0),m=ne(-50),x=ne(1),T=ne(0),O=ne(.5),L=ne(10),F=ne(.8),U=ne(.5),D=ne(30),B=ne(.5),q=ne(1),X=ne(.5),re=ne(.5),xe=ne(1),pe=ne(1),Ne=ne(128),qe=ne(128),Xe=ne(0),le=ne(0),we=ne(0),Ce=ne(900),ke=De(()=>{let Fe=Zt,Oe=Fe.mod(o),k=Fe.div(o),P=Oe.toFloat().add(p(.5)).div(p(i)),H=k.toFloat().add(p(.5)).div(p(i)),$=I(P.sub(X).mul(pe).div(xe).add(p(.5)),H.sub(re).div(xe).add(p(.5))),te=f($).x,Ee=te.lessThan(p(0)).select(p(1),p(0));w.element(Fe).assign(N(Ee,te,p(0),p(0)))})().compute(s,[256]),je=De(()=>{let Fe=Zt,Oe=Fe.mod(o),k=Fe.div(o),P=w.element(Fe).x,H=Oe.toFloat().add(p(.5)),$=k.toFloat().add(p(.5)),te=H.sub(M),Ee=$.sub(R),Pe=te.mul(te).add(Ee.mul(Ee)),Q=L.mul(L).max(p(1)),J=Pe.negate().div(Q).exp().mul(P),be=_.element(Fe),et=be.x,Ve=F.mul(J).mul(E).mul(p(8)),nt=et.add(Ve).min(p(1)),Et=Ve.div(nt.max(p(.001)));_.element(Fe).assign(N(nt,be.y.mul(p(1).sub(Et.min(p(1)))),p(0),p(0)));let Ct=g.element(Fe),Wt=te.mul(x).add(Ee.mul(T)).div(L.max(p(1))),se=c.mul(c).add(m.mul(m)).max(p(1)),at=c.add(x.mul(Wt).mul(O).mul(se.sqrt())),Le=m.add(T.mul(Wt).mul(O).mul(se.sqrt())),_t=J.mul(E).mul(p(3)).min(p(1)),Bt=B.mul(et).mul(E).mul(p(i*.08)).mul(P),dt=H.sub(Ne),Kt=$.sub(qe),Xt=dt.mul(dt).add(Kt.mul(Kt)).negate().div(Ce.max(p(1))).exp().mul(we).mul(P);g.element(Fe).assign(N(Te(Ct.x,at,_t).add(Xe.mul(Xt)),Te(Ct.y,Le,_t).add(Bt).add(le.mul(Xt)),Ct.z,p(0)))})().compute(s,[256]),ve=De(()=>{let Fe=Zt,Oe=Fe.mod(o).toInt(),k=Fe.div(o).toInt(),P=g.element(u(k,Oe,0,-1)),H=g.element(u(k,Oe,0,1)),$=g.element(u(k,Oe,-1,0)),te=g.element(u(k,Oe,1,0)),Ee=H.y.sub(P.y).sub(te.x.sub($.x)).mul(p(.5)),Pe=g.element(Fe);g.element(Fe).assign(N(Pe.x,Pe.y,Ee,p(0)))})().compute(s,[256]),Ke=De(()=>{let Fe=Zt,Oe=Fe.mod(o).toInt(),k=Fe.div(o).toInt(),P=g.element(u(k,Oe,0,-1)).z.abs(),H=g.element(u(k,Oe,0,1)).z.abs(),$=g.element(u(k,Oe,-1,0)).z.abs(),te=g.element(u(k,Oe,1,0)).z.abs(),Ee=g.element(Fe).z,Pe=H.sub(P).mul(p(.5)),Q=te.sub($).mul(p(.5)),J=Pe.mul(Pe).add(Q.mul(Q)).sqrt().max(p(1e-5)),be=g.element(Fe);g.element(Fe).assign(N(be.x.add(Q.div(J).mul(Ee).mul(D).mul(E)),be.y.add(Pe.div(J).negate().mul(Ee).mul(D).mul(E)),be.z,p(0)))})().compute(s,[256]),Ue=De(()=>{let Fe=Zt,Oe=Fe.mod(o).toInt(),k=Fe.div(o).toInt(),P=Oe.toFloat(),H=k.toFloat(),$=w.element(Fe).x,te=g.element(Fe),Ee=P.lessThan(p(.5)).or(w.element(u(k,Oe,0,-1)).x.lessThan(p(.5))),Pe=P.greaterThan(p(i-1.5)).or(w.element(u(k,Oe,0,1)).x.lessThan(p(.5))),Q=H.lessThan(p(.5)).or(w.element(u(k,Oe,-1,0)).x.lessThan(p(.5))),J=H.greaterThan(p(i-1.5)).or(w.element(u(k,Oe,1,0)).x.lessThan(p(.5))),be=Ee.select(te.x.negate(),g.element(u(k,Oe,0,-1)).x),et=Pe.select(te.x.negate(),g.element(u(k,Oe,0,1)).x),Ve=Q.select(te.y.negate(),g.element(u(k,Oe,-1,0)).y),nt=J.select(te.y.negate(),g.element(u(k,Oe,1,0)).y),Et=et.sub(be).add(nt.sub(Ve)).mul(p(.5)).mul($),Ct=S.element(Fe).x.mul(p(Jbe)).mul($);S.element(Fe).assign(N(Ct,Et,p(0),p(0)))})().compute(s,[256]),Z=De(()=>{let Fe=Zt,Oe=Fe.mod(o).toInt(),k=Fe.div(o).toInt(),P=S.element(u(k,Oe,0,-1)).x,H=S.element(u(k,Oe,0,1)).x,$=S.element(u(k,Oe,-1,0)).x,te=S.element(u(k,Oe,1,0)).x,Ee=S.element(Fe).y;S.element(Fe).assign(N(P.add(H).add($).add(te).sub(Ee).mul(p(.25)),Ee,p(0),p(0)))})().compute(s,[256]),Se=De(()=>{let Fe=Zt,Oe=Fe.mod(o).toInt(),k=Fe.div(o).toInt(),P=S.element(u(k,Oe,0,-1)).x,H=S.element(u(k,Oe,0,1)).x,$=S.element(u(k,Oe,-1,0)).x,te=S.element(u(k,Oe,1,0)).x,Ee=g.element(Fe);g.element(Fe).assign(N(Ee.x.sub(H.sub(P).mul(p(.5))),Ee.y.sub(te.sub($).mul(p(.5))),Ee.z,p(0)))})().compute(s,[256]),Re=De(()=>{let Fe=Zt,Oe=Fe.mod(o),k=Fe.div(o),P=g.element(Fe),H=Oe.toFloat().sub(P.x.mul(E)).clamp(p(0),p(i-1)),$=k.toFloat().sub(P.y.mul(E)).clamp(p(0),p(i-1)),te=en(H).clamp(p(0),p(i-2)),Ee=en($).clamp(p(0),p(i-2)),Pe=H.sub(te),Q=$.sub(Ee),J=te.toInt(),be=Ee.toInt(),et=g.element(be.mul(a).add(J)),Ve=g.element(be.mul(a).add(J.add(Ut(1)))),nt=g.element(be.add(Ut(1)).mul(a).add(J)),Et=g.element(be.add(Ut(1)).mul(a).add(J.add(Ut(1)))),Ct=p(1).add(p(Qbe).mul(E)),Wt=w.element(Fe).x;y.element(Fe).assign(N(Te(Te(et.x,Ve.x,Pe),Te(nt.x,Et.x,Pe),Q).div(Ct).mul(Wt),Te(Te(et.y,Ve.y,Pe),Te(nt.y,Et.y,Pe),Q).div(Ct).mul(Wt),p(0),p(0)))})().compute(s,[256]),ze=De(()=>{let Fe=y.element(Zt);g.element(Zt).assign(N(Fe.x,Fe.y,p(0),p(0)))})().compute(s,[256]),Je=De(()=>{let Fe=Zt,Oe=Fe.mod(o),k=Fe.div(o),P=g.element(Fe),H=Oe.toFloat().sub(P.x.mul(E)).clamp(p(0),p(i-1)),$=k.toFloat().sub(P.y.mul(E)).clamp(p(0),p(i-1)),te=en(H).clamp(p(0),p(i-2)),Ee=en($).clamp(p(0),p(i-2)),Pe=H.sub(te),Q=$.sub(Ee),J=te.toInt(),be=Ee.toInt(),et=_.element(be.mul(a).add(J)),Ve=_.element(be.mul(a).add(J.add(Ut(1)))),nt=_.element(be.add(Ut(1)).mul(a).add(J)),Et=_.element(be.add(Ut(1)).mul(a).add(J.add(Ut(1)))),Ct=Te(Te(et.x,Ve.x,Pe),Te(nt.x,Et.x,Pe),Q),Wt=Te(Te(et.y,Ve.y,Pe),Te(nt.y,Et.y,Pe),Q),se=p(1).add(U.mul(E)),at=w.element(Fe).x;b.element(Fe).assign(N(Ct.div(se).max(p(0)).mul(at),Wt.add(E.mul(p(.4)).mul(q)).min(p(1)),p(0),p(0)))})().compute(s,[256]),ot=De(()=>{let Fe=b.element(Zt);_.element(Zt).assign(N(Fe.x,Fe.y,p(0),p(0)))})().compute(s,[256]),it=De(()=>{let Fe=Zt,Oe=Fe.mod(o),k=Fe.div(o),P=_.element(Fe);ir(C,Dn(Oe,k),N(P.x,P.y,p(0),p(0))).toWriteOnly()})().compute(s,[256]),rt=Date.now(),st=.5,ee=.5;return{outputs:{smokeTexture:v},getComputeNodes:Fe=>{let Oe=Date.now(),k=Math.min((Oe-rt)/1e3,.033);if(rt=Oe,k<.001)return null;let P=(dt,Kt)=>{let Xt=t[dt];if(!Xt)return Kt;if(typeof Xt.getCpuValue=="function"){let Vn=Xt.getCpuValue();return typeof Vn=="number"?Vn:Kt}let er=Xt.uniform?.value;return typeof er=="number"?er:Kt},H=P("speed",2),$=P("direction",0)*Math.PI/180,te=Math.min(89*Math.PI/180,P("spread",60)*Math.PI/360),Ee=t.center.uniform.value,Pe=typeof Ee=="object"?Ee.x??.5:.5,Q=typeof Ee=="object"?Ee.y??.5:.5,J=typeof window<"u"&&r?.domElement?r.domElement.width/Math.max(1,r.domElement.height):1;E.value=k,X.value=Pe,re.value=1-Q,xe.value=P("scale",1),pe.value=J;let be=t.emitFrom?.uniform?.value,et=typeof be=="object"?be.x??.5:.5,Ve=typeof be=="object"?be.y??.5:.5;M.value=et*i,R.value=(1-Ve)*i;let nt=H*i*.15;c.value=Math.sin($)*nt,m.value=-Math.cos($)*nt,x.value=Math.cos($),T.value=Math.sin($),O.value=Math.tan(te),L.value=P("emitRadius",.03)*i,F.value=P("intensity",.8),U.value=P("dissipation",.5),D.value=P("detail",30),B.value=P("gravity",.5),q.value=P("colorDecay",1);let Et=P("mouseInfluence",.5),Ct=P("mouseRadius",.12),Wt=Fe?.pointer?.x??st,se=Fe?.pointer?.y??ee,at=Wt-st,Le=se-ee;st=Wt,ee=se;let _t=Math.sqrt(at*at+Le*Le),Bt=Ct*i;Ce.value=Bt*Bt,_t>5e-4&&Et>0?(Ne.value=Wt*i,qe.value=se*i,Xe.value=at*i*15*Et,le.value=Le*i*15*Et,we.value=1):we.value=0,r.compute(ke),r.compute(je),r.compute(ve),r.compute(Ke),r.compute(Ue);for(let dt=0;dt<Kbe;dt++)r.compute(Z);return r.compute(Se),r.compute(Re),r.compute(ze),r.compute(Je),r.compute(ot),[it]}}},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=ds(i,e,n):a=fs(t.shapeType.uniform.value||o.type||"circleSDF",o,t.shape,e);let l,s=r?.smokeTexture?ZU:OH;if(r?.smokeTexture)l=wn(r.smokeTexture);else{let w=OH,v=w*w,C=new Float32Array(v*4),E=new fr(C,w,w,nr,fn);E.magFilter=sn,E.minFilter=sn,E.needsUpdate=!0,l=wn(E);let M=(c,m)=>{let x=t[c];if(!x)return m;if(typeof x.getCpuValue=="function"){let O=x.getCpuValue();return typeof O=="number"?O: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),O=t.emitFrom?.uniform?.value,L=(typeof O=="object"?O.x??.5:.5)*w,F=(1-(typeof O=="object"?O.y??.5:.5))*w,U=M("emitRadius",.03)*w;for(let D=0;D<w;D++)for(let B=0;B<w;B++){let q=D*w+B,X=B+.5-L,re=D+.5-F,xe=Math.exp(-(X*X+re*re)/Math.max(1,U*U));C[q*4]=Math.max(0,(C[q*4]+x*xe*m*8)/(1+T*m)),C[q*4+1]=Math.min(1,C[q*4+1]+m*.4*M("colorDecay",1))}E.needsUpdate=!0}),n(()=>{E.dispose()})}let u=j,d=Y.x.div(Y.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/ZU),v=l.sample(j),C=l.sample(j.add(I(w,p(0)))),E=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(C.x.mul(p(.125))).add(E.x.mul(p(.125))).add(M.x.mul(p(.125))).add(R.x.mul(p(.125))),b=v.y.mul(p(.5)).add(C.y.mul(p(.125))).add(E.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=Ft(t.colorA.uniform,t.colorB.uniform,b,t.colorSpace.uniform.value);return N(S.x,S.y,S.z,S.w.mul(_).mul(y))}}});var pu,NH=z(()=>{"use strict";ut();pu={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."),N(0);let n=t.threshold.uniform,r=t.strength.uniform,i=Vt(e.rgb,ge(.299,.587,.114)),o=ge(1).sub(e.rgb),a=i.greaterThan(n).select(o,e.rgb);return N(Te(e.rgb,a,r),e.a)}}});var gu,DH=z(()=>{"use strict";Dt();gu={name:"SolidColor",category:"Textures",description:"Fill the canvas with a single solid color",props:{color:{default:"#5b18ca",transform:Me,description:"The solid color to display",ui:{type:"color",label:"Color",group:"Colors"}}},fragmentNode:({uniforms:t})=>t.color.uniform}});var yu,FH=z(()=>{"use strict";Dt();Jn();ut();yu={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:Mt,description:"The center point of the sphere",ui:{type:"position",label:"Center",group:"Position"}},lightPosition:{default:{x:.3,y:.3},transform:Mt,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:Me,description:"Color of the specular highlight",ui:{type:"color",label:"Light Color",group:"Effect"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j,o=Y.x.div(Y.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(Ae(p(.98),p(1),u)),h=An(Ot(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)),_=Ht(r.sample(y)),b=I(t.lightPosition.uniform.x,t.lightPosition.uniform.y.oneMinus()),S=t.lightIntensity.uniform,w=t.lightSoftness.uniform,v=ge(t.lightColor.uniform.x,t.lightColor.uniform.y,t.lightColor.uniform.z),C=Fo(ge(s.x,s.y,h)),E=ge(0,0,1),M=p(1).add(p(4).mul(p(1).sub(w))),R=Gt(p(1).sub(Ot(Vt(C,E),p(0))),M),c=I(b.x.sub(p(.5)).mul(2),b.y.sub(p(.5)).mul(2)),m=Fo(I(C.x,C.y).add(I(1e-4,1e-4))),x=Fo(c.add(I(1e-4,1e-4))),T=Gt(Ot(p(0),Vt(m,x)),p(2)),O=R.mul(T).mul(S).mul(p(2));return N(_.x.add(v.x.mul(O)),_.y.add(v.y.mul(O)),_.z.add(v.z.mul(O)),_.w.mul(d))}}});var vu,LH=z(()=>{"use strict";Dt();zn();pr();ut();vu={name:"Spiral",category:"Textures",description:"Rotating spiral pattern with animated movement",props:{colorA:{default:"#000000",transform:Me,description:"Background color",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#ffffff",transform:Me,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:Mt,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=Y.x.div(Y.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=bn(t,e.speed),s=jn(a),u=s,d=dr(a.y,a.x).sub(l),h=p(6.283185307),f=d.div(h),g=u.mul(e.scale.uniform).add(f),y=At(pt(g).sub(.5)).mul(2),_=St(e.strokeWidth.uniform,e.strokeFalloff.uniform.mul(.005),1),b=St(e.strokeFalloff.uniform,0,1).mul(s).oneMinus(),S=_.mul(b),w=ti(g),v=Te(p(4).sub(Ae(.05,.4,e.strokeWidth.uniform.mul(2)).mul(Ae(.05,.4,e.strokeWidth.uniform.oneMinus().mul(2))).mul(3)).mul(w),ti(y),St(w,0,1)),C=Ae(S.sub(v).sub(e.softness.uniform),S.add(v).add(e.softness.uniform),y),E=Ft(e.colorA.uniform,e.colorB.uniform,C,e.colorSpace.uniform.value);return N(E.rgb,E.a)}}});var e_e,xu,kH=z(()=>{"use strict";Dt();zn();Zi();ut();e_e=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,xu={name:"Star",category:"Shapes",description:"Classic star polygon with straight sides and sharp pointed tips",props:{color:{default:"#ffffff",transform:Me,description:"Fill color of the star",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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:Me,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:e_e,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:qt,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:jt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.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=He(l),u=me(l),d=NU(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)),C=Ae(v.sub(h),v,d).oneMinus(),E=y.select(Ae(w.sub(h),w,d),p(0)),M=Ft(N(t.color.uniform.rgb,t.color.uniform.a),N(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),E,t.colorSpace.uniform.value);return N(M.xyz,M.w.mul(C))}}});var bu,BH=z(()=>{"use strict";Dt();pr();ut();bu={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:Me,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:Mt,description:"Starting point of the waves",ui:{type:"position",label:"Start",group:"Position"}},end:{default:{x:1,y:.5},transform:Mt,description:"Ending point of the waves",ui:{type:"position",label:"End",group:"Position"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=bn(t,e.speed),i=De(([o])=>He(o).add(He(o.mul(1.2).add(1.6))).add(He(o.mul(1.4).add(1.5))).div(3));return De(([o])=>{let a=Y.x.div(Y.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(Ae(p(0),p(.1),_).mul(Ae(p(.9),p(1),_).oneMinus()),p(1)),C=e.pinEdges.uniform.select(He(_.mul(6.28)).mul(.5).add(.5).oneMinus(),p(1)),E=He(_.mul(6.28)).mul(.5).add(.5).oneMinus(),M=N(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),O=p(.5),L=p(1.33),F=r.mul(L),U=x.add(S.mul(O)),D=i(U.add(F)).mul(.5).add(.5),B=Te(p(.01),e.lineWidth.uniform,D.mul(C)).mul(.5),q=p(.6),X=p(2),re=i(U.add(F.mul(T.add(1)))).mul(Te(q,X,C)).mul(e.amplitude.uniform),xe=i(S.mul(e.frequency.uniform).add(r)).mul(C).mul(e.amplitude.uniform).add(re),pe=At(w.sub(xe)),Ne=p(.01),qe=Ae(B.sub(Ne),B.add(Ne),pe).oneMinus(),Xe=N(e.waveColor.uniform.r,e.waveColor.uniform.g,e.waveColor.uniform.b,qe).mul(D);M.assign(Ot(M,m.select(Xe,N(0,0,0,0))))}return M.mul(N(1,1,1,E.mul(v)))})(n)}}});var _u,zH=z(()=>{"use strict";pi();Dt();Jn();ut();_u={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:Mt,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:Hn,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 N(0,0,0,0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=Y.x.div(Y.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(He(s),me(s)),d=l.dot(u),h=u.mul(d),f=l.sub(h),g=t.falloff.uniform,y=Te(p(.001),p(75),g),_=St(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),C=a.add(v),E=I(C.x.div(i),C.y);return Ht(Bn(E,r.sample(E),r,t.edges.uniform.value))}}});var Su,VH=z(()=>{"use strict";Dt();zn();pr();ut();Su={name:"Stripes",category:"Textures",description:"Alternating colored stripes with animation",props:{colorA:{default:"#000000",transform:Me,description:"First stripe color",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#ffffff",transform:Me,description:"Second stripe color",ui:{type:"color",label:"Color B",group:"Colors"}},angle:{default:45,transform:mr,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:qt,compileTime:!0,description:"Color space for interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=j,r=Y.x.div(Y.y),i=I(n.x.mul(r),n.y),o=e.angle.uniform.mul(.0174533),a=He(o),l=me(o),s=i.x.mul(a).add(i.y.mul(l)),u=bn(t,e.speed),d=s.mul(e.density.uniform).add(u).add(e.offset.uniform),h=pt(d),f=ti(d),g=e.balance.uniform,y=e.softness.uniform,_=Ae(g.sub(y).sub(f),g.add(y).add(f),h),b=Ft(e.colorA.uniform,e.colorB.uniform,_,e.colorSpace.uniform.value);return N(b.rgb,b.a)}}});var wu,GH=z(()=>{"use strict";Dt();pr();ut();wu={name:"StudioBackground",category:"Textures",description:"Multi-light studio background with ambient motion.",props:{color:{default:"#d8dbec",transform:Me,description:"Base studio surface color",ui:{type:"color",label:"Surface Color",group:"Colors"}},keyColor:{default:"#d5e4ea",transform:Me,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:Me,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:Me,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:Mt,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=Y.x.div(Y.y),v=bn(t,e.ambientSpeed),C=Te(p(5),p(.8),e.keySoftness.uniform.mul(.01)),E=Te(p(5),p(.8),e.fillSoftness.uniform.mul(.01)),M=Te(p(5),p(.8),e.backSoftness.uniform.mul(.01)),R=m=>pt(me(m.mul(12.9898)).mul(43758.5453)),c=Array.from({length:4},(m,x)=>{let T=S.add(p(x*73.1)),O=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:O.mul(O)}});return De(()=>{let m=j,x=Te(p(.015),p(.15),y),T=Ae(f.sub(x),f.add(x),m.y),O=p(1).sub(T),L=St(m.y.div(f),0,1),F=L.mul(L),U=St(m.y.sub(f).div(p(1).sub(f)),0,1),D=m.x.sub(h).mul(w),B=Te(p(.05),p(.45),F),q=p(1).sub(L).mul(1.2),X=q.mul(q),re=f.add(p(1).sub(f).mul(.3)),xe=m.y.sub(re).mul(4),pe=xe.mul(xe),Ne=Te(Te(p(.2),p(.4),L),Te(p(.38),p(.18),U),T).mul(r),qe=m.y.sub(f).div(x.add(.001)),Xe=$i(qe.mul(qe).mul(-.5)).mul(y).mul(r).mul(.1),le=Ne.add(Xe),we=ge(le,le,le).toVar(),Ce=p(1).sub(g).mul(1.4).add(.3),ke=g.mul(1.4).add(.3),je=(te,Ee)=>{let Pe=Te(te,h,F),Q=m.x.sub(Pe).mul(w).div(B),J=$i(Q.mul(Q).add(X).mul(-1).mul(Ee)).mul(O).mul(Ce),be=Te(h,te,p(.25)),et=m.x.sub(be).mul(w).mul(1.4),Ve=$i(et.mul(et).add(pe).mul(-1).mul(Ee.mul(1.5))).mul(T).mul(ke);return J.add(Ve)},ve=je(h,C).mul(o);we.assign(we.add(i.rgb.mul(ve)));let Ke=je(h.sub(s),E).mul(l),Ue=je(h.add(s),E).mul(l);we.assign(we.add(a.rgb.mul(Ke.add(Ue))));let Z=Te(p(1),f,p(.15)),Se=D.mul(.5),Re=m.y.sub(Z).mul(4),ze=$i(Se.mul(Se).add(Re.mul(Re)).mul(-1).mul(M)).mul(T),Je=D.mul(.6),ot=f.sub(m.y).mul(3),it=$i(Je.mul(Je).add(ot.mul(ot)).mul(-1).mul(M.mul(.8))).mul(O).mul(F),rt=ze.add(it).mul(d);we.assign(we.add(u.rgb.mul(rt)));let st=D.mul(.7),ee=m.y.sub(f).add(.02).mul(10),Fe=$i(st.mul(st).add(ee.mul(ee)).mul(-2.5)).mul(o.mul(.12)).mul(O);we.assign(we.add(ge(Fe,Fe,Fe)));let Oe=b.mul(.25);for(let te=0;te<4;te++){let Ee=c[te],Pe=h.add(me(v.mul(Ee.freqX).add(Ee.phaseX)).mul(Ee.radiusX)),Q=f.sub(.2).add(He(v.mul(Ee.freqY).add(Ee.phaseY)).mul(Ee.radiusY)),J=m.x.sub(Pe).mul(w),be=m.y.sub(Q),et=$i(J.mul(J).add(be.mul(be)).div(Ee.sizeSq).mul(-.5)).mul(Oe);we.assign(we.add(ge(et,et,et)))}let k=m.x.sub(.5).mul(w),P=m.y.sub(.5),H=k.mul(k).add(P.mul(P)),$=St(p(1).sub(H.mul(_)),0,1);return we.assign(St(we,0,3)),N(n.rgb.mul(we).mul($).clamp(0,1),p(1))})()}}});var Mu,HH=z(()=>{"use strict";Dt();pr();ut();Mu={name:"SunBurst",category:"Textures",description:"Radial sunburst rays emanating from a center point",props:{color:{default:"#ffdd88",transform:Me,description:"Ray color",ui:{type:"color",label:"Color",group:"Colors"}},background:{default:"#000000",transform:Me,description:"Background color",ui:{type:"color",label:"Background",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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=Y.x.div(Y.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=An(a.mul(a).add(l.mul(l))),u=dr(l,a),d=bn(t,e.speed),h=e.rayCount.uniform,f=Gt(me(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(Ae(_,g,s)),S=f.mul(b),w=e.color.uniform,v=e.background.uniform;return N(Te(v.rgb,w.rgb,S),Te(v.a,w.a,S))}}});var Tu,WH=z(()=>{"use strict";Dt();zn();pr();ut();Tu={name:"Swirl",category:"Textures",description:"Flowing swirl pattern with multi-layered noise",props:{colorA:{default:"#1275d8",description:"Primary gradient color",transform:Me,ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#e19136",description:"Secondary gradient color",transform:Me,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:t=>{let{uniforms:e}=t,n=bn(t,e.speed),r=e.detail.uniform,i=e.colorSpace.uniform.value;return De(()=>{let o=r,a=I(j.x.add(me(j.y.mul(o.mul(1.7)).add(n.mul(.8))).mul(.12).add(He(j.x.mul(o.mul(.9)).sub(n.mul(.5))).mul(.05))),j.y.add(He(j.x.mul(o.mul(1.3)).sub(n.mul(.6))).mul(.12).add(me(j.y.mul(o.mul(1.1)).add(n.mul(.7))).mul(.05)))).toVar(),l=me(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(He(a.y.mul(s.mul(2.7)).sub(n.mul(.45))).mul(.07).add(me(a.x.mul(s.mul(1.9)).add(n.mul(.6))).mul(.04))),a.y.add(me(a.x.mul(s.mul(2.3)).add(n.mul(.65))).mul(.07).add(He(a.y.mul(s.mul(1.6)).sub(n.mul(.4))).mul(.04)))).toVar(),d=He(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(me(u.y.mul(h.mul(1.8)).add(n.mul(.85))).mul(.04).add(He(u.x.mul(h.mul(1.3)).sub(n.mul(.55))).mul(.025)).add(me(u.x.add(u.y).mul(h.mul(.7)).add(n.mul(.9))).mul(.02))),u.y.add(He(u.x.mul(h.mul(1.6)).sub(n.mul(.75))).mul(.04).add(me(u.y.mul(h.mul(1.1)).add(n.mul(.5))).mul(.025)).add(He(u.x.add(u.y).mul(h.mul(.8)).sub(n.mul(.95))).mul(.02)))).toVar(),g=me(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)).toVar(),_=e.blend.uniform.sub(50).mul(.006),b=Ae(.3,.7,y.mul(.5).add(.5).add(_)),S=Ft(e.colorA.uniform,e.colorB.uniform,b,i),w=me(n.mul(2.5).add(y.mul(8))).mul(.015).add(1),v=S.mul(w);return N(v.rgb,v.a)})()}}});function jH(t,e){let n=e.uniforms,r=ne(0),i=ne(0),o=()=>{let s=n.lightAngle.uniform.value*Math.PI/180;r.value=Math.cos(s),i.value=Math.sin(s)};o(),e.onBeforeRender(o);let a=bn(e,n.speed),l=n.mode.uniform.value;return De(()=>{let s=j,u=Y.x.div(Y.y),d=n.edgeSoftness.uniform.mul(p(.5)).max(p(.001)),h=I(n.center.uniform.x,n.center.uniform.y.oneMinus()),f=n.scale.uniform,g=I(s.x.sub(h.x).mul(u).div(f).add(p(.5)),s.y.sub(h.y).div(f).add(p(.5))),y=t(g).r,_=y.div(f),b=p(.01),S=t(g.add(I(b,p(0)))).r.sub(y).div(b),w=t(g.add(I(p(0),b))).r.sub(y).div(b),v=An(S.mul(S).add(w.mul(w))).max(p(1e-4)),C=S.div(v),E=w.div(v),M=St(_.negate().div(d).mul(p(32)),p(0),p(1)),R=n.rimWidth.uniform.mul(p(.1)).max(p(.001)),c=St(_.negate().div(R),p(0),p(1)),m=p(1).sub(c).mul(p(1).sub(c)).mul(M),x=C.mul(r).add(E.mul(i)),T=E.mul(r).sub(C.mul(i)),O=a.mul(p(ZE)),L=x.mul(He(O)).add(T.mul(me(O))),F=n.hueShift.uniform.add(n.dispersion.uniform.mul(L)).add(n.thickness.uniform.mul(c).mul(p(2))),U;if(l==="custom"){let D=pt(F).mul(p(3)),B=pt(D),q=en(D),X=n.colorSpace.uniform.value,re=Ft(n.colorA.uniform,n.colorB.uniform,B,X),xe=Ft(n.colorB.uniform,n.colorC.uniform,B,X),pe=Ft(n.colorC.uniform,n.colorA.uniform,B,X);pe=Te(pe,xe,xn(q,p(1.5))),pe=Te(pe,re,xn(q,p(.5))),U=pe.rgb}else U=ge(He(F.add(p(0)).mul(p(ZE))),He(F.add(p(.3333)).mul(p(ZE))),He(F.add(p(.6667)).mul(p(ZE)))).mul(p(.5)).add(p(.5));return N(Te(ge(1),U,n.saturation.uniform).mul(m).mul(n.intensity.uniform),St(m,p(0),p(1)))})()}var ZE,t_e,Eu,qH=z(()=>{"use strict";Dt();zn();pr();Zi();ut();ZE=Math.PI*2;t_e=JSON.stringify({type:"circleSDF",radius:.35}),Eu={name:"ThinFilm",category:"Shape Effects",description:"Iridescent thin-film edge",props:{center:{default:{x:.5,y:.5},transform:Mt,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","map"],min:.1,max:3,step:.05,label:"Scale",group:"Position"}},intensity:{default:1,description:"Rim brightness \u2014 values above 1 push the edge past white for HDR bloom",ui:{type:["range","map"],min:0,max:4,step:.05,label:"Intensity",group:"Film"}},rimWidth:{default:1,description:"How far inward from the edge the iridescence reaches",ui:{type:["range","map"],min:0,max:3,step:.01,label:"Rim Width",group:"Film"}},edgeSoftness:{default:.3,description:"Softness of the shape boundary",ui:{type:["range","map"],min:0,max:1,step:.05,label:"Edge Softness",group:"Film"}},thickness:{default:.5,description:"Film thickness \u2014 higher values pack more spectral bands across the rim",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Thickness",group:"Film"}},dispersion:{default:.5,description:"How strongly colour separates around the perimeter (warm vs cool sides)",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Dispersion",group:"Film"}},saturation:{default:1,description:"Spectral saturation \u2014 0 = white rim, 1 = full iridescence",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Saturation",group:"Film"}},hueShift:{default:0,description:"Rotate the spectrum to reposition the colours",ui:{type:["range","map"],min:0,max:1,step:.01,label:"Hue Shift",group:"Film"}},lightAngle:{default:300,description:"Light angle in degrees \u2014 sets which side of the rim runs warm vs cool",ui:{type:"range",min:0,max:360,step:1,label:"Light Angle",group:"Film"}},mode:{default:"rainbow",compileTime:!0,description:"Rainbow uses the full iridescent spectrum; Custom cycles through your three chosen colours",ui:{type:"select",options:[{label:"Rainbow",value:"rainbow"},{label:"Custom",value:"custom"}],label:"Mode",group:"Colors"}},colorA:{default:"#2b6fff",transform:Me,description:"First colour in the rim cycle",ui:{type:"color",label:"Color 1",group:"Colors",condition:{mode:"custom"}}},colorB:{default:"#ffffff",transform:Me,description:"Second colour in the rim cycle",ui:{type:"color",label:"Color 2",group:"Colors",condition:{mode:"custom"}}},colorC:{default:"#ff7a21",transform:Me,description:"Third colour in the rim cycle",ui:{type:"color",label:"Color 3",group:"Colors",condition:{mode:"custom"}}},colorSpace:{default:"oklch",transform:qt,compileTime:!0,description:"Colour space used to blend between custom colours",ui:{type:"select",options:jt,label:"Color Space",group:"Colors",condition:{mode:"custom"}}},speed:{default:.1,description:"Speed at which the colours rotate around the rim (0 = static)",ui:{type:"range",min:-1,max:1,step:.01,label:"Speed",group:"Animation"}},shape:{default:t_e,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:t=>{let{uniforms:e,onCleanup:n,onBeforeRender:r}=t,i=e.shapeSdfUrl.uniform.value,o=(()=>{let a=e.shape.uniform.value;if(typeof a=="object"&&a!==null)return a;try{return JSON.parse(a)}catch{return{type:"circleSDF",radius:.35}}})();return jH(i?ds(i,r,n):fs(e.shapeType.uniform.value||o.type||"circleSDF",o,e.shape,r),t)}}});var Cu,XH=z(()=>{"use strict";Dt();Jn();Ef();ut();Cu={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:mr,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:Mt,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=Ka(a,s,u,e,14),{computeNodes:h,outputTexture:f,blurMapWriteNode:g,computeWidth:y,computeHeight:_}=d,b=ne(0),S=ne(.5),w=ne(.5),v=ne(.15),C=ne(.3),E=ne(1),M=ne(s),R=ne(u),c=Cn(y),m=Cn(_);function x(U){return U.getCpuValue?.()??(typeof U.uniform.value=="number"?U.uniform.value:null)}function T(){let U=x(i.angle);U!==null&&(b.value=U);let D=i.center.uniform.value?.x??i.center.uniform.x?.value;typeof D=="number"&&(S.value=D);let B=i.center.uniform.value?.y??i.center.uniform.y?.value;typeof B=="number"&&(w.value=B);let q=x(i.width);q!==null&&(v.value=q*.5);let X=x(i.falloff);X!==null&&(C.value=X),E.value=n.width/n.height}let O=i.intensity.mapComputeInfo;if(O){let{sourceTexture:U,channel:D,inputMin:B,inputMax:q,outputMin:X,outputMax:re,curve:xe}=O,pe=De(()=>{let Ne=Zt,qe=Ne.mod(c),Xe=Ne.div(c);Fn(Xe.lessThan(m),()=>{let le=qe.toFloat().add(p(.5)).div(p(y)),we=Xe.toFloat().add(p(.5)).div(p(_)),Ce=b.mul(p(Math.PI/180)),ke=I(Ce.sin().negate(),Ce.cos()),je=I(S,p(1).sub(w)),ve=I(le,we).sub(je),Ke=At(Vt(I(ve.x.mul(E),ve.y),ke)),Ue=Ae(v,v.add(C),Ke),Z=Li(U,Dn(le.mul(M).round().toInt().clamp(Ut(0),Ut(M.sub(1))).toUint(),we.mul(R).round().toInt().clamp(Ut(0),Ut(R.sub(1))).toUint()),Ut(0)),Se;D==="alpha"?Se=Z.a:D==="alphaInverted"?Se=Z.a.oneMinus():D==="luminanceInverted"?Se=Vt(Z.rgb,ge(.2126,.7152,.0722)).oneMinus():Se=Vt(Z.rgb,ge(.2126,.7152,.0722));let Re=q.sub(B).max(p(1e-4)),ze=Te(X,re,Gt(St(Se.sub(B).div(Re),p(0),p(1)),Gt(p(2),xe.negate().mul(p(2))))).mul(p(.36)),Je=Ue.mul(ze);ir(g,Dn(qe,Xe),N(Je,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:Ne,height:qe})=>{let Xe=Math.round(Ne*l),le=Math.round(qe*l);M.value=Xe,R.value=le,d.setInputDimensions(Xe,le)}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>(T(),[pe,...h])}}let L=ne(18),F=De(()=>{let U=Zt,D=U.mod(c),B=U.div(c);Fn(B.lessThan(m),()=>{let q=D.toFloat().add(p(.5)).div(p(y)),X=B.toFloat().add(p(.5)).div(p(_)),re=b.mul(p(Math.PI/180)),xe=I(re.sin().negate(),re.cos()),pe=I(S,p(1).sub(w)),Ne=I(q,X).sub(pe),qe=At(Vt(I(Ne.x.mul(E),Ne.y),xe)),Xe=Ae(v,v.add(C),qe).mul(L);ir(g,Dn(D,B),N(Xe,p(0),p(0),p(1))).toWriteOnly()})})().compute(y*_,[256]);return o(({width:U,height:D})=>{let B=Math.round(U*l),q=Math.round(D*l);M.value=B,R.value=q,d.setInputDimensions(B,q)}),{outputs:{childTexture:a,blurredTexture:f},getComputeNodes:()=>{T();let U=x(i.intensity);return U!==null&&(L.value=U*.36),[F,...h]}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n,computeOutputs:r})=>{if(!e)return N(0,0,0,0);if(r?.blurredTexture){let C=r.childTexture.sample(j),E=wn(r.blurredTexture).sample(j),M=Y.x.div(Y.y),R=Zr(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=At(Vt(I(x.x.mul(M),x.y),c)),O=t.width.uniform.mul(.5),L=Ae(O,O.add(t.falloff.uniform),T),F=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))),U=Te(C,E,L);return Ht(N(U.rgb.add(F),U.a))}let i=It(e);n(()=>{i?.renderTarget?.dispose&&i.renderTarget.dispose()});let o=Y.x.div(Y.y),a=Zr(t.angle.uniform),l=He(a),s=I(me(a).negate(),l),u=I(t.center.uniform[0],t.center.uniform[1].oneMinus()),d=j.sub(u),h=At(Vt(I(d.x.mul(o),d.y),s)),f=t.width.uniform.mul(.5),g=t.falloff.uniform,y=Ae(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(De(()=>{let C=j,E=I(1).div(Y),M=N(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(E),x=C.add(m),T=i.sample(x).mul(c);M.assign(M.add(T))}return M})());return n(()=>{v?.renderTarget?.dispose&&v.renderTarget.dispose()}),De(()=>{let C=j,E=I(1).div(Y),M=N(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(E),T=C.add(x),O=v.sample(T).mul(m);M.assign(M.add(O))}let R=M;return Ht(Te(i.sample(C),R,y))})()}}});var Ru,$H=z(()=>{"use strict";Dt();ut();Ru={name:"Tint",category:"Adjustments",description:"Apply a color tint to the image",requiresChild:!0,props:{color:{default:"#ff8800",transform:Me,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."),N(0);let n=t.color.uniform,r=t.amount.uniform,i=ge(e.r,e.g,e.b),o=Te(i,n.rgb,r),a=t.preserveLuminosity.uniform.value===1,l;if(a){let s=ge(.299,.587,.114),u=Vt(i,s),d=Vt(o,s);l=o.mul(u.div(Ot(d,1e-4)))}else l=o;return N(l,e.a)}}});var n_e,Au,YH=z(()=>{"use strict";Dt();zn();Zi();ut();n_e=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:Me,description:"Fill color of the trapezoid",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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:Me,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:n_e,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:qt,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:jt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.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=He(l),u=me(l),d=VU(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)),C=Ae(v.sub(h),v,d).oneMinus(),E=y.select(Ae(w.sub(h),w,d),p(0)),M=Ft(N(t.color.uniform.rgb,t.color.uniform.a),N(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),E,t.colorSpace.uniform.value);return N(M.xyz,M.w.mul(C))}}});var Pu,ZH=z(()=>{"use strict";Dt();zn();ut();Pu={name:"Tritone",category:"Adjustments",description:"Map colors to three tones: shadows, midtones, highlights",requiresChild:!0,props:{colorA:{default:"#ce1bea",transform:Me,description:"First color (used for shadows/darkest areas)",ui:{type:"color",label:"Color A (Shadows)",group:"Colors"}},colorB:{default:"#2fff00",transform:Me,description:"Second color (used for midtones)",ui:{type:"color",label:"Color B (Midtones)",group:"Colors"}},colorC:{default:"#ffff00",transform:Me,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:({uniforms:t,childNode:e})=>{if(!e)return N(0,0,0,0);let n=Vt(ge(e.r,e.g,e.b),ge(.299,.587,.114)),r=Ae(t.blendMid.uniform.sub(.25),t.blendMid.uniform,n),i=t.colorSpace.uniform.value,o=Ft(t.colorA.uniform,t.colorB.uniform,r,i),a=Ae(t.blendMid.uniform,t.blendMid.uniform.add(.25),n);return N(Ft(o,Ft(t.colorB.uniform,t.colorC.uniform,a,i),Ae(t.blendMid.uniform.sub(.1),t.blendMid.uniform.add(.1),n),i).rgb,e.a)}}});var r_e,Iu,KH=z(()=>{"use strict";Dt();zn();ut();r_e=De(([t])=>pt(me(Vt(t,I(127.1,311.7))).mul(p(43758.5453)))),Iu={name:"Truchet",category:"Textures",description:"Quarter-circle arc tiles that connect to form organic, maze-like flowing curves",props:{colorA:{default:"#000000",transform:Me,description:"Background color between the arcs",ui:{type:"color",label:"Color A",group:"Colors"}},colorB:{default:"#ffffff",transform:Me,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,label:"Color Space",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.y),r=I(e.x.mul(n),e.y).mul(t.cells.uniform),i=en(r),o=pt(r),a=r_e(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=Tn(At(jn(o.sub(I(l,s))).sub(p(.5))),At(jn(o.sub(I(u,d))).sub(p(.5)))),f=t.thickness.uniform.mul(p(.005)),g=ti(r.x).mul(p(.5)),y=Ae(f.add(g),f,h).mul(xn(p(1e-4),f));return Ft(t.colorA.uniform,t.colorB.uniform,y,t.colorSpace.uniform.value)}}});var Ou,JH=z(()=>{"use strict";pi();Dt();Jn();ut();Ou={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:Mt,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:Hn,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."),N(0);let r=It(e);n(()=>{r?.renderTarget?.dispose&&r.renderTarget.dispose()});let i=j,o=Y.x.div(Y.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(jn(s)),d=He(u),h=me(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 Ht(Bn(y,r.sample(y),r,t.edges.uniform.value))}}});var i_e,Uu,QH=z(()=>{"use strict";Dt();zn();Zi();ut();i_e=t=>({outside:0,center:1,inside:2})[t?.toLowerCase()]??1,Uu={name:"Vesica",category:"Shapes",description:"Vesica piscis (lens shape) formed by the intersection of two overlapping circles",props:{color:{default:"#ffffff",transform:Me,description:"Fill color of the vesica",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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:Me,description:"Color of the stroke outline",ui:{type:"color",label:"Stroke Color",group:"Colors"}},strokePosition:{default:"center",transform:i_e,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:qt,compileTime:!0,description:"Color space for blending fill and stroke colors",ui:{type:"select",options:jt,label:"Color Blending",group:"Colors"}}},fragmentNode:({uniforms:t})=>{let e=j,n=Y.x.div(Y.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=He(l),u=me(l),d=BU(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)),C=Ae(v.sub(h),v,d).oneMinus(),E=y.select(Ae(w.sub(h),w,d),p(0)),M=Ft(N(t.color.uniform.rgb,t.color.uniform.a),N(t.strokeColor.uniform.rgb,t.strokeColor.uniform.a),E,t.colorSpace.uniform.value);return N(M.xyz,M.w.mul(C))}}});var KU,o_e,Nu,eW=z(()=>{"use strict";Jn();ut();KU=6,o_e=487,Nu={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 N(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=Wa.mul(l),u=pe=>pt(me(Vt(pe,I(12.9898,78.233))).mul(43758.5453)),d=pe=>{let Ne=en(pe),qe=pt(pe),Xe=qe.mul(qe).mul(qe.mul(-2).add(3)),le=u(Ne),we=u(Ne.add(I(1,0))),Ce=u(Ne.add(I(0,1))),ke=u(Ne.add(I(1,1)));return Te(Te(le,we,Xe.x),Te(Ce,ke,Xe.x),Xe.y)},h=Ae(p(.45),p(.8),d(I(s.mul(.4),p(0)))),f=en(j.y.mul(o_e)),g=pe=>pt(me(f.mul(12.9898).add(s.add(pe).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),C=Ae(p(.92),p(.99),me(j.y.mul(8).sub(s.mul(3.77)))),E=Ae(p(.3),p(1),d(I(j.y.mul(4.77),s))),M=C.mul(E).mul(i).mul(-.018),R=Ae(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),O=I(j.x.add(T).add(b),j.y.add(x)),L=I(j.x.add(T).add(_),j.y.add(x)),F=r.sample(O),U=F.rgb.dot(ge(.299,.587,.114)),D=a.mul(.0075),B=p(0),q=p(0);for(let pe=0;pe<KU;pe++){let Ne=p(-pe).mul(D),qe=r.sample(I(L.x.add(Ne),L.y)),Xe=qe.rgb.dot(ge(.596,-.274,-.322)),le=qe.rgb.dot(ge(.211,-.523,.312)),we=pe/(KU-1)*(2/KU);B=B.add(Xe.mul(we)),q=q.add(le.mul(we))}let X=ge(U,B,q),re=ge(X.x.add(X.y.mul(.956)).add(X.z.mul(.621)),X.x.sub(X.y.mul(.272)).sub(X.z.mul(.647)),X.x.sub(X.y.mul(1.106)).add(X.z.mul(1.703))),xe=p(1).add(He(wr(s,6.2831853).mul(2).add(j.y.mul(.5))).mul(.015).mul(i));return Ht(N(St(re.mul(xe),ge(0),ge(1)),F.a))}}});var Du,tW=z(()=>{"use strict";ut();Du={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."),N(0);let n=e.rgb,r=t.intensity.uniform,i=_n(n.r,_n(n.g,n.b)).div(3),o=Ot(n.r,Ot(n.g,n.b)),a=o.sub(i).mul(r).mul(-3);return N(Te(n,ge(o,o,o),a),e.a)}}});function Rf(){return JU===null&&(JU=typeof navigator<"u"&&/Firefox/.test(navigator.userAgent)),JU}var JU,QU=z(()=>{"use strict";JU=null});var Fu,nW=z(()=>{"use strict";QU();Fi();ut();Fu={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=ne(1),u=ne(640),d=ne(480),h=null,f=null,g;if(Rf())h=document.createElement("canvas"),h.width=640,h.height=480,f=h.getContext("2d"),g=new Fs(h);else{let c=document.createElement("video");c.playsInline=!0,c.muted=!0,g=new hc(c)}g.colorSpace=gr;let y=wn(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((O,L)=>{m.onloadedmetadata=()=>{O()},m.onerror=()=>{L(new Error("Failed to load video"))},setTimeout(()=>{L(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(O){console.warn("[VideoTexture] Autoplay failed (browser policy):",O)}g.dispose(),Rf()?(h.width=x,h.height=T,g=new Fs(h)):g=new hc(m),g.colorSpace=gr,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),Rf()&&!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=Y.x.div(Y.y),w=t.objectFit.uniform.value,v;switch(w){case 1:{let c=Tn(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=Tn(Tn(S.div(s),p(1)),Tn(Y.x.div(u),Y.y.div(d)));v=I(s.div(S).mul(c),c);break}case 4:{let c=Tn(Y.x.div(u),Y.y.div(d));v=I(s.div(S).mul(c),c);break}default:{let c=Ot(S.div(s),p(1));v=I(s.div(S).mul(c),c);break}}let C=b.sub(I(.5)).div(v).add(I(.5)),E=I(C.x,p(1).sub(C.y)),M=y.sample(E),R=Eo(Eo(E.x.lessThan(0),E.x.greaterThan(1)),Eo(E.y.lessThan(0),E.y.greaterThan(1)));return N(M.rgb,Co(R,p(0),M.a))}}});var Lu,rW=z(()=>{"use strict";Dt();ut();Lu={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:Me,description:"Color of the vignette at the edges",ui:{type:"color",label:"Color",group:"Colors"}},center:{default:{x:.5,y:.5},transform:Mt,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."),N(0);let n=j,r=Y.x.div(Y.y),i=I(n.x.mul(r),n.y),o=I(t.center.uniform.x.mul(r),t.center.uniform.y.oneMinus()),a=jn(i.sub(o)),l=Ae(t.radius.uniform,t.radius.uniform.add(t.falloff.uniform),a);return N(Te(e.rgb,t.color.uniform.rgb,l.mul(t.intensity.uniform)),e.a)}}});var s_e,ku,iW=z(()=>{"use strict";Dt();zn();pr();ut();s_e=De(([t])=>pt(me(I(Vt(t,I(127.1,311.7)),Vt(t,I(269.5,183.3)))).mul(p(43758.5453)))),ku={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:Me,description:"Color near each cell's center point",ui:{type:"color",label:"Color A (Center)",group:"Colors"}},colorB:{default:"#fc02dd",transform:Me,description:"Color at cell boundaries, far from any center point",ui:{type:"color",label:"Color B (Edge)",group:"Colors"}},colorBorder:{default:"#000000",transform:Me,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,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=bn(t,e.speed),u=Y.x.div(Y.y),d=I(j.x.mul(u),j.y).mul(a);return De(([h,f,g,y,_,b])=>{let S=en(h),w=pt(h),v=p(10),C=p(10);for(let x=-1;x<=1;x++)for(let T=-1;T<=1;T++){let O=I(p(T),p(x)),L=s_e(S.add(O).add(g)),F=L.x.add(me(f.add(L.x.mul(p(6.28)))).mul(p(.15))).clamp(p(.05),p(.95)),U=L.y.add(He(f.mul(p(.7)).add(L.y.mul(p(6.28)))).mul(p(.15))).clamp(p(.05),p(.95)),D=jn(w.sub(O.add(I(F,U)))),B=D.lessThan(v);C=B.select(v,D.lessThan(C).select(D,C)),v=B.select(D,v)}let E=v.add(C).max(p(1e-4)),M=Ft(n,r,Gt(v.mul(p(2)).div(E).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=C.sub(v).div(E),m=Ae(p(0),R.add(p(.001)),c);return N(Te(b.rgb,M.rgb,m),M.a)})(d,s,l,e.edgeIntensity.uniform,e.edgeSoftness.uniform,i)}}});var Bu,oW=z(()=>{"use strict";pi();Dt();Jn();pr();ut();Bu={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:Hn,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 N(0,0,0,0);let o=j,a=Y.x.div(Y.y),l=bn(t,e.speed).mul(.5),s,u;if(e.angle.uniform.isUniformNode){let E=ne(1),M=ne(0);i(()=>{let R=e.angle.uniform.value*Math.PI/180;E.value=Math.cos(R),M.value=Math.sin(R)}),s=E,u=M}else{let E=e.angle.uniform.mul(mi).div(180);s=He(E).toVar(),u=me(E).toVar()}let d=o.sub(I(.5,.5)),h=I(d.x.mul(a),d.y),f=h.x.mul(u).add(h.y.mul(s)).add(.5).mul(e.frequency.uniform).mul(mi.mul(2)).add(l),g;switch(e.waveType.uniform.value){case 1:g=At(pt(f.div(mi.mul(2))).mul(2).sub(1)).mul(2).sub(1);break;case 2:{let E=pt(f.div(mi.mul(2)));g=xn(p(.5),E).mul(2).sub(1);break}case 3:g=pt(f.div(mi.mul(2))).mul(2).sub(1);break;case 4:g=At(me(f));break;default:g=me(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);r(()=>{w?.renderTarget?.dispose&&w.renderTarget.dispose()});let v=e.edges.uniform.value,C;if(v===2||v===3){let E=xE(S,v);C=w.sample(E)}else C=Bn(S,w.sample(S),w,v);return Ht(C)}}});var zu,sW=z(()=>{"use strict";Dt();ut();zu={name:"Weave",category:"Textures",description:"Interlaced textile weave pattern with two thread colors going over and under each other",props:{colorA:{default:"#c4c4c4",transform:Me,description:"Horizontal thread color",ui:{type:"color",label:"X Color",group:"Colors"}},colorB:{default:"#4d4d4d",transform:Me,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=Y.x.div(Y.y),r=I(e.x.mul(n),e.y),i=t.rotation.uniform.mul(p(Math.PI/180)),o=He(i),a=me(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=en(u),h=pt(u),f=t.gap.uniform,g=ti(u.x).mul(p(.5)),y=Ae(f,f.add(g),h.y).mul(Ae(f,f.add(g),p(1).sub(h.y))),_=Ae(f,f.add(g),h.x).mul(Ae(f,f.add(g),p(1).sub(h.x))),b=wr(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)),C=t.colorA.uniform,E=t.colorB.uniform,M=C.a.mul(w),R=E.a.mul(v),c=M.add(R).clamp(p(0),p(1)),m=M.add(R).max(p(.001));return N(C.x.mul(M).add(E.x.mul(R)).div(m),C.y.mul(M).add(E.y.mul(R)).div(m),C.z.mul(M).add(E.z.mul(R)).div(m),c)}}});var Vu,aW=z(()=>{"use strict";QU();Fi();ut();Vu={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=ne(1),u=ne(640),d=ne(480),h=null,f=null,g;if(Rf())h=document.createElement("canvas"),h.width=640,h.height=480,f=h.getContext("2d"),g=new Fs(h);else{let m=document.createElement("video");m.playsInline=!0,m.muted=!0,g=new hc(m)}g.colorSpace=gr;let y=wn(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,O)=>{if(!o)return O(new Error("Video element not created"));o.onloadedmetadata=()=>{T()},o.onerror=()=>{O(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(),Rf()?(h.width=m,h.height=x,g=new Fs(h)):g=new hc(o),g.colorSpace=gr,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(()=>{Rf()&&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=Y.x.div(Y.y),w=t.objectFit.uniform.value,v;switch(w){case 1:{let m=Tn(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=Tn(Tn(S.div(s),p(1)),Tn(Y.x.div(u),Y.y.div(d)));v=I(s.div(S).mul(m),m);break}case 4:{let m=Tn(Y.x.div(u),Y.y.div(d));v=I(s.div(S).mul(m),m);break}default:{let m=Ot(S.div(s),p(1));v=I(s.div(S).mul(m),m);break}}let C=b.sub(I(.5)).div(v).add(I(.5)),E=t.mirror.uniform,M=I(Co(E,p(1).sub(C.x),C.x),p(1).sub(C.y)),R=y.sample(M),c=Eo(Eo(M.x.lessThan(0),M.x.greaterThan(1)),Eo(M.y.lessThan(0),M.y.greaterThan(1)));return N(R.rgb,Co(c,p(0),R.a))}}});var cW,lW,uW,dW,fW,a_e,hW,c_e,l_e,u_e,Gu,mW=z(()=>{"use strict";Dt();zn();pr();ut();cW=p(Math.PI*2),lW=p(.15),uW=p(.5),dW=p(.05),fW=p(.95),a_e=p(.7),hW=p(10),c_e=De(([t])=>pt(me(I(Vt(t,I(127.1,311.7)),Vt(t,I(269.5,183.3)))).mul(p(43758.5453)))),l_e=t=>({f1:0,f2:1,f2MinusF1:2,f1PlusF2:3,f1TimesF2:4})[t]??0,u_e=t=>({euclidean:0,manhattan:1,chebyshev:2})[t]??0,Gu={name:"WorleyNoise",category:"Textures",description:"Cellular noise field \u2014 distance-based, with selectable feature combinations and fractal octaves",props:{colorA:{default:"#ffffff",transform:Me,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:Me,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:qt,compileTime:!0,description:"Color space for color interpolation",ui:{type:"select",options:jt,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:l_e,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:u_e,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=bn(t,e.speed),u=Y.x.div(Y.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=De(([c,m,x])=>{let T=m.mul(a_e),O=en(c),L=pt(c),F=hW,U=hW;for(let B=-1;B<=1;B++)for(let q=-1;q<=1;q++){let X=I(p(q),p(B)),re=c_e(O.add(X).add(x)),xe=re.x.add(me(m.add(re.x.mul(cW))).mul(lW)),pe=re.y.add(He(T.add(re.y.mul(cW))).mul(lW)),Ne=Te(uW,xe.clamp(dW,fW),g),qe=Te(uW,pe.clamp(dW,fW),g),Xe=X.add(I(Ne,qe)),le=L.sub(Xe),we;a===1?we=At(le.x).add(At(le.y)):a===2?we=Ot(At(le.x),At(le.y)):we=oG(le),w?(U=Tn(U,Ot(we,F)),F=Tn(F,we)):F=Tn(F,we)}let D;return S?o===1?D=An(U):o===2?D=An(U).sub(An(F)):o===3?D=An(F).add(An(U)):o===4?D=An(F.mul(U)):D=An(F):o===1?D=U:o===2?D=U.sub(F):o===3?D=F.add(U):o===4?D=F.mul(U):D=F,D}),C=p(0),E=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)));C=C.add(m.mul(M)),E=E.add(M),M=M.mul(_),R=R.mul(y)}return Ft(n,r,St(C.div(E.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 pW,d_e,f_e,Hu,gW=z(()=>{"use strict";Dt();Jn();ut();pW=Array.from({length:32},(t,e)=>{let n=(e/31-.5)*2;return Math.exp(-.5*n*n/.64)}),d_e=pW.reduce((t,e)=>t+e),f_e=pW.map(t=>t/d_e),Hu={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:Mt,description:"Center point of the zoom blur",ui:{type:"position",label:"Center",group:"Position"}}},fragmentNode:({uniforms:t,childNode:e,onCleanup:n})=>{if(!e)return N(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=Y.x.div(Y.y);return De(()=>{let l=j,s=N(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(f_e[h]))))}return Ht(s)})()}}});function h_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(e.rgb,r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function y_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r))),o=yW(ge(t.r,t.g,t.b)),a=yW(ge(e.r,e.g,e.b)),l=vW(o),s=vW(a),u=xW(l);return N(m_e(p_e(g_e(_n(Ye(xW(s),r),Ye(u,Ye(t.a,dn(1,r))))))),i)}function b_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r))),o=bW(ge(t.r,t.g,t.b)),a=bW(ge(e.r,e.g,e.b)),l=_W(o);return N(v_e(x_e(_n(Ye(_W(a),r),Ye(l,Ye(t.a,dn(1,r)))))),i)}function __e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Ye(t.rgb,e.rgb),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function S_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(dn(1,Ye(dn(1,t.rgb),dn(1,e.rgb))),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function w_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(_n(t.rgb,e.rgb),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function M_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Te(Ye(2,Ye(t.rgb,e.rgb)),dn(1,Ye(2,Ye(dn(1,t.rgb),dn(1,e.rgb)))),xn(.5,t.rgb)),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function T_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(At(dn(t.rgb,e.rgb)),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function E_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Te(t.rgb,Tn(Oc(t.rgb,dn(1,e.rgb)),1),xn(.001,dn(1,e.rgb))),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function C_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(dn(_n(t.rgb,e.rgb),Ye(2,Ye(t.rgb,e.rgb))),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function Af(t){return _n(_n(Ye(t.r,.2126),Ye(t.g,.7152)),Ye(t.b,.0722))}function R_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r))),o=dn(Af(t.rgb),Af(e.rgb));return N(_n(Ye(_n(e.rgb,o),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function A_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r))),o=Af(t.rgb),a=Af(e.rgb).div(_n(o,1e-4));return N(_n(Ye(Ye(t.rgb,a),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function P_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Tn(t.rgb,e.rgb),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function I_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Ot(t.rgb,e.rgb),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function O_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Te(N(0,0,0,1).rgb,Ot(dn(1,dn(1,t.rgb).div(_n(e.rgb,1e-4))),0),xn(1e-4,e.rgb)),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function U_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Ot(_n(_n(t.rgb,e.rgb),-1),0),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function N_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r))),o=_n(Ye(2,Ye(t.rgb,e.rgb)),Ye(Ye(t.rgb,t.rgb),dn(1,Ye(2,e.rgb)))),a=An(t.rgb);return N(_n(Ye(Te(o,_n(Ye(2,Ye(t.rgb,dn(1,e.rgb))),Ye(a,dn(Ye(2,e.rgb),1))),xn(.5,e.rgb)),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function D_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r)));return N(_n(Ye(Te(Ye(2,Ye(t.rgb,e.rgb)),dn(1,Ye(2,Ye(dn(1,t.rgb),dn(1,e.rgb)))),xn(.5,e.rgb)),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function F_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r))),o=Af(t.rgb),a=Af(e.rgb),l=t.rgb.sub(o),s=e.rgb.sub(a),u=l.length();return N(_n(Ye(_n(Ye(s.normalize(),u),o),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function L_e(t,e,n=1){let r=Ye(e.a,n),i=_n(r,Ye(t.a,dn(1,r))),o=Af(t.rgb),a=Af(e.rgb),l=t.rgb.sub(o),s=e.rgb.sub(a);return N(_n(Ye(_n(Ye(l.normalize(),s.length()),o),r),Ye(t.rgb,Ye(t.a,dn(1,r)))),i)}function Up(t,e,n="normal",r=1){return(SW[n]||SW.normal)(t,e,r)}function k_e(t,e){let n=Ye(t.a,e.a);return N(t.rgb,n)}function B_e(t,e){let n=dn(1,e.a),r=Ye(t.a,n);return N(t.rgb,r)}function z_e(t,e){let n=ge(.2126,.7152,.0722),r=Vt(e.rgb,n),i=Ye(t.a,r);return N(t.rgb,i)}function V_e(t,e){let n=ge(.2126,.7152,.0722),r=dn(1,Vt(e.rgb,n)),i=Ye(t.a,r);return N(t.rgb,i)}function G_e(t,e,n="alpha"){return(wW[n]||wW.alpha)(t,e)}function de(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=ne(l).setName(`${i}_${n}`.replace(/[^a-zA-Z0-9_]/g,"_"));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 q_e(t,e){if(t?.transform){let n=j_e.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 MW(){let t=null,e,n=null,r=!1,i,o,a,l,s={nodes:new Map,rootId:null,idToNodeId:new Map},u=new Map,d=null,h=null,f=null,g=!1,y=!1,_="p3-linear",b="linear",S=!1,w=null,v=!1,C=!0,E=!1,M=0,R=0,c=0,m=0,x=!1,T=.5,O=.5,L=!1,F=null,U=!1,D=!1,B=null,q=null,X=null,re=null,xe=8192,pe=0,Ne=0,qe=!0,Xe=new H_e,le=[],we=!1,Ce=null,ke=!1,je=!1,ve=null,Ke=!1,Ue=K=>{if(!Ke){Ke=!0;try{Qa()}catch{}ve&&queueMicrotask(()=>{try{ve?.(K)}catch(ue){console.error("[Shaders] onDeviceLost callback threw:",ue)}})}},Z=null,Se=new Set,Re=new Set,ze=0,Je=new Set,ot=new Set,it=new Set,rt=new Set,st=new Set,ee=new Set,Fe={deltaTime:0,pointer:{x:.5,y:.5},pointerActive:!1,dimensions:{width:0,height:0}},Oe=null,k=!1,P=(K,ue)=>{let ce=e?.getPixelRatio?.()??1,ye=Math.max(1,Math.floor(xe/ce)-1),Pt=Math.min(K,window.innerWidth,ye),ct=Math.min(ue,window.innerHeight,ye),Lt=Math.min(Pt/K,ct/ue,1);return{width:Math.max(1,Math.round(K*Lt)),height:Math.max(1,Math.round(ue*Lt))}},H=(K,ue)=>{K<=0||ue<=0||K===pe&&ue===Ne||(pe=K,Ne=ue,Oe={width:K,height:ue},k||(k=!0,requestAnimationFrame(()=>{if(k=!1,!Oe)return;let ce=Oe;Oe=null;let{width:ye,height:Pt}=P(ce.width,ce.height);M=ye,R=Pt,S||(S=!0,s.nodes.size>0&&Z===null&&(Z=requestAnimationFrame(()=>{Z=null,Ct()}))),e.setSize(ye,Pt,!1);let ct=ye/Pt,Lt=2,Rt=Lt*ct;i.left=-Rt/2,i.right=Rt/2,i.top=Lt/2,i.bottom=-Lt/2,i.updateProjectionMatrix(),a.scale.set(Rt,Lt,1),s.nodes.forEach(Qe=>{Qe.transformUniforms?.aspectRatio&&(Qe.transformUniforms.aspectRatio.value=ct),Qe.resizeCallbacks.forEach(kt=>{try{kt({width:ye,height:Pt})}catch(lt){console.error("Error in resize callback:",lt)}})}),c=0,ii()})))},$=()=>g&&!!e&&!!o&&!!i&&!!l&&M>0&&R>0,te=K=>{if(!e||!i||!a)return;let ue=K[0];if(!ue)return;let ce,ye;if(ue.contentBoxSize){let Pt=Array.isArray(ue.contentBoxSize)?ue.contentBoxSize[0]:ue.contentBoxSize;Pt?(ce=Math.round(Pt.inlineSize),ye=Math.round(Pt.blockSize)):(ce=Math.round(ue.contentRect.width),ye=Math.round(ue.contentRect.height))}else ce=Math.round(ue.contentRect.width),ye=Math.round(ue.contentRect.height);ce===0||ye===0||H(ce,ye)},Ee=K=>{let ue=K[0];ue&&(v=ue.isIntersecting)},Pe=(K,ue)=>{if(K.size!==ue.size)return!1;for(let ce of K)if(!ue.has(ce))return!1;return!0},Q=()=>{it.clear(),rt.clear(),st.clear(),ee.clear();for(let[K,ue]of s.nodes){ue.beforeRenderCallbacks.length>0&&it.add(K),ue.afterRenderCallbacks.length>0&&rt.add(K),ue.computeGetNodes&&st.add(K);let ce=ue.mouseDriverState,ye=ue.autoAnimateState,Pt=!!ce&&Object.keys(ce).length>0,ct=!!ye&&Object.keys(ye).length>0;(Pt||ct)&&ee.add(K)}},J=K=>{ze++;let ue=It(K);return Je.add(ue),ue},be=()=>{ot.forEach(K=>{try{K?.renderTarget?.dispose&&K.renderTarget.dispose()}catch{}}),ot.clear()},et=K=>{let ue=ge(K.x,K.y,K.z),ce=K.w,ye=ue.mul(16),Pt=ye.mul(ye.mul(.15).add(.05)).add(.004),ct=ye.mul(ye.mul(.15).add(.5)).add(.06),Lt=Pt.div(ct).sub(.02/.3);return N(Lt.x,Lt.y,Lt.z,ce)},Ve=K=>{let ue=ge(K.x,K.y,K.z),ce=K.w,ye=ue.div(ue.add(.155)).mul(1.019);return N(ye.x,ye.y,ye.z,ce)},nt=K=>{b=K,e&&(e.toneMapping={linear:Kr,reinhard:eh,cineon:th,aces:nh,agx:rh,neutral:ih}[K]??Kr)},Et=!1,Ct=()=>{if(!(!s.rootId||!l||U)&&s.nodes.get(s.rootId)){if(M===0||R===0){Et||(Et=!0,requestAnimationFrame(()=>{Et=!1,M>0&&R>0&&Ct()}));return}U=!0;try{ot=new Set(Je),Je.clear();let K=new Set;Re.clear(),s.nodes.forEach((ce,ye)=>{(ce.requiresRTT||ce.transformRTTActive)&&Re.add(ye)}),ze=0;let ue=ri(s.rootId,new Set,K);if(ue&&l){let ce=!Pe(Se,K),ye=ue;b==="hable"?ye=et(ue):b==="unreal"&&(ye=Ve(ue));let Pt=l.fragmentNode!==ye;if(ce||x||Pt){be();try{l.dispose(),e.renderTarget&&e.renderTarget.dispose()}catch{}let ct=new dp({transparent:!0});ct.fragmentNode=ye,ct.needsUpdate=!0,a.material=ct,l=ct,x=!1,Se=K,!ke&&K.size>0&&(je=!0)}}}catch(K){console.error("Error composing shader tree:",K)}finally{U=!1,D=!1}Q(),d||ii()}},Wt=K=>{let ue=u.get(K);if(!ue)return[];let ce=[];for(let ye of ue){let Pt=s.nodes.get(ye);Pt&&ce.push(Pt)}return ce},se=K=>K.replace(/[^a-zA-Z0-9_]/g,"_"),at=K=>{let ue=se(K);for(let[ce,ye]of s.nodes.entries())if(ye.metadata.id===ue)return ce;return null},Le=(K,ue,ce,ye,Pt)=>{if(!ue.metadata.mask?.source)return K;let ct=ue.metadata.mask.source,Lt=at(ct);if(!Lt)return K;if(ye.has(Lt))return console.error("Uh oh, looks like you've got a circular dependency in your shader masks."),K;let Rt=new Set(ye);Rt.add(ce);let Qe=ri(Lt,Rt),kt=Qe;Pt&&(kt=J(Qe).sample(Pt));let lt=ue.metadata.mask.type||"alpha";return G_e(K,kt,lt)},_t=(K,ue,ce,ye,Pt)=>{let ct=at(K.source);if(!ct)return null;if(ue.has(ct))return console.error(`[Shaders] Circular dependency detected in prop maps: node "${K.source}" is already being processed.`),null;let Lt=new Set(ue);Lt.add(ce);let Rt=J(ri(ct,Lt)),Qe=Rt.sample(Pt??j),kt;switch(K.channel){case"alpha":kt=Qe.a;break;case"alphaInverted":kt=Qe.a.oneMinus();break;case"luminanceInverted":kt=Vt(Qe.rgb,ge(.2126,.7152,.0722)).oneMinus();break;default:kt=Vt(Qe.rgb,ge(.2126,.7152,.0722));break}let lt=s.nodes.get(ce);if(!lt)return null;lt.mapUniforms||(lt.mapUniforms={}),lt.mapUniforms[ye]?(lt.mapUniforms[ye].inputMin.value=K.inputMin,lt.mapUniforms[ye].inputMax.value=K.inputMax,lt.mapUniforms[ye].outputMin.value=K.outputMin,lt.mapUniforms[ye].outputMax.value=K.outputMax,lt.mapUniforms[ye].curve.value=K.curve??0,lt.mapUniforms[ye].sourceTexture=Rt,lt.mapUniforms[ye].channel=K.channel):lt.mapUniforms[ye]={inputMin:ne(K.inputMin),inputMax:ne(K.inputMax),outputMin:ne(K.outputMin),outputMax:ne(K.outputMax),curve:ne(K.curve??0),sourceTexture:Rt,channel:K.channel};let{inputMin:Un,inputMax:pn,outputMin:ft,outputMax:or,curve:Jt}=lt.mapUniforms[ye],gn=Ot(pn.sub(Un),1e-4);return Te(ft,or,Gt(St(kt.sub(Un).div(gn),0,1),Gt(p(2),Jt.negate().mul(2))))},Bt=(K,ue,ce)=>{let ye=s.nodes.get(ue);if(!ye)return null;if(ye.mouseDriverState||(ye.mouseDriverState={}),!ye.mouseDriverState[ce]){let Pt=K.x===void 0||K.x==="mouse",ct=K.y===void 0||K.y==="mouse",Lt=Pt?T:K.x,Rt=ct?O:K.y,Qe=ne(new yn(Lt,1-Rt));ye.mouseDriverState[ce]={currentX:Lt,currentY:Rt,velocityX:0,velocityY:0,smoothedUniform:Qe}}return ye.mouseDriverState[ce].smoothedUniform},dt=(K,ue,ce)=>{let ye=s.nodes.get(ue);if(!ye)return null;if(ye.mouseDriverState||(ye.mouseDriverState={}),!ye.mouseDriverState[ce]){let Qe=Math.max(.001,K.axis==="x"?T:O),kt=ne(Qe);ye.mouseDriverState[ce]={currentX:Qe,currentY:0,velocityX:0,velocityY:0,smoothedUniform:kt}}ye.mapUniforms||(ye.mapUniforms={}),ye.mapUniforms[ce]?(ye.mapUniforms[ce].outputMin.value=K.outputMin,ye.mapUniforms[ce].outputMax.value=K.outputMax,ye.mapUniforms[ce].curve.value=K.curve??0):ye.mapUniforms[ce]={inputMin:ne(0,"float"),inputMax:ne(1,"float"),outputMin:ne(K.outputMin,"float"),outputMax:ne(K.outputMax,"float"),curve:ne(K.curve??0,"float")};let{outputMin:Pt,outputMax:ct,curve:Lt}=ye.mapUniforms[ce],Rt=ye.mouseDriverState[ce].smoothedUniform;return Te(Pt,ct,Gt(Rt,Gt(p(2),Lt.negate().mul(2))))},Kt=(K,ue,ce)=>{let ye=s.nodes.get(ue);return ye?(ye.autoAnimateState||(ye.autoAnimateState={}),ye.autoAnimateState[ce]||(ye.autoAnimateState[ce]={smoothedUniform:ne(K.outputMin,"float")}),ye.autoAnimateState[ce].smoothedUniform):null},Xt=(K,ue,ce,ye)=>{if(!ue||Object.keys(ue).length===0)return K;let Pt={...K},ct=s.nodes.get(ce),Lt=ct?.mapSampleUVsFunc?.(K)??{};for(let[Rt,Qe]of Object.entries(ue)){let kt=null;if(Qe.type==="map"){if(!(Rt in Pt))continue;kt=_t(Qe,ye,ce,Rt,Lt[Rt])}else if(Qe.type==="mouse-position"){kt=Bt(Qe,ce,Rt),kt!==null&&Rt in Pt&&(Pt[Rt]={...Pt[Rt],uniform:kt});continue}else if(Qe.type==="mouse"){if(!(Rt in Pt))continue;kt=dt(Qe,ce,Rt)}else if(Qe.type==="auto-animate"){if(!(Rt in Pt))continue;kt=Kt(Qe,ce,Rt)}if(kt!==null&&Rt in Pt){let lt;if(Qe.type==="map"){let pn=ct?.mapUniforms?.[Rt];pn?.sourceTexture&&pn?.channel&&(lt={sourceTexture:pn.sourceTexture,channel:pn.channel,inputMin:pn.inputMin,inputMax:pn.inputMax,outputMin:pn.outputMin,outputMax:pn.outputMax,curve:pn.curve})}let Un;Qe.type==="mouse"&&(Un=()=>{let pn=ct?.mouseDriverState?.[Rt],ft=ct?.mapUniforms?.[Rt];if(!pn||!ft)return 0;let or=pn.smoothedUniform.value,Jt=ft.outputMin.value,gn=ft.outputMax.value,Nr=Math.pow(2,-(ft.curve.value*2));return Jt+(gn-Jt)*Math.pow(or,Nr)}),Pt[Rt]={...Pt[Rt],uniform:kt,...lt?{mapComputeInfo:lt}:{},...Un?{getCpuValue:Un}:{}}}}return Pt},er=(K,ue)=>{if(!ue.metadata.transform||!ue.transformUniforms||!eN(ue.metadata.transform)&&!ue.transformRTTActive)return K;let ce=J(K),ye=W_e(j,ue.transformUniforms.offsetX,ue.transformUniforms.offsetY,ue.transformUniforms.rotation,ue.transformUniforms.scale,ue.transformUniforms.anchorX,ue.transformUniforms.anchorY,ue.transformUniforms.aspectRatio);return Bn(ye,ce.sample(ye),ce,ue.transformUniforms.edges.value)},Vn=(K,ue)=>{if(K.computeOutputs=void 0,K.computeGetNodes=void 0,!(typeof window<"u"&&window.sessionStorage?.getItem("__shadersForceWebGL")==="1")&&K.computeNodeFunc&&e.backend?.isWebGPUBackend===!0)try{let ce=K.computeNodeFunc(ue);if(ce)return K.computeOutputs=ce.outputs,K.computeGetNodes=ce.getComputeNodes,ce.outputs}catch(ce){console.error(`Error initializing compute for node ${K.id}:`,ce)}},ri=(K,ue=new Set,ce)=>{if(M===0||R===0)return N(0,0,0,0);let ye=s.nodes.get(K);if(!ye)return N(0,0,0,0);let Pt=kt=>{ye.cleanupCallbacks.push(kt)},ct=kt=>{ye.beforeRenderCallbacks.push(kt)},Lt=kt=>{ye.afterRenderCallbacks.push(kt)},Rt=kt=>{ye.resizeCallbacks.push(kt)},Qe=Wt(K);if(Qe.length===0){ye.cleanupCallbacks.forEach(lt=>{try{lt()}catch(Un){console.error("Error in cleanup callback:",Un)}}),ye.cleanupCallbacks=[],ye.beforeRenderCallbacks=[],ye.afterRenderCallbacks=[],ye.resizeCallbacks=[];let kt={uniforms:Xt(ye.uniforms??{},ye.metadata.maps,K,ue),childNode:void 0,onCleanup:Pt,onBeforeRender:ct,onAfterRender:Lt,onResize:Rt,canvas:t,dimensions:{width:M,height:R},renderer:e,domCanvas:ye.domCanvas};return kt.computeOutputs=Vn(ye,kt),Le(er(ye.fragmentNodeFunc(kt),ye),ye,K,ue)}else{let kt=[...Qe].sort((lt,Un)=>lt.metadata.renderOrder-Un.metadata.renderOrder);if(ye.parentId===null){let lt;for(let pn=0;pn<kt.length;pn++){let ft=kt[pn],or;if(ft.metadata.opacity===void 0?(or=1,ft.opacityUniform.value=or):(or=ft.metadata.opacity,ft.opacityUniform.value=or),ft.metadata.visible===!1)continue;ce&&ce.add(ft.id);let Jt=Wt(ft.id).length>0,gn;if(Jt)gn=ri(ft.id,ue,ce);else{let Nr=Mi=>{ft.cleanupCallbacks.push(Mi)},Qn=Mi=>{ft.beforeRenderCallbacks.push(Mi)},Pi=Mi=>{ft.afterRenderCallbacks.push(Mi)},hs=Mi=>{ft.resizeCallbacks.push(Mi)},Qs=lt;ft.requiresRTT&<!==void 0&&(Qs=Up(N(0,0,0,0),lt,"normal",1)),ft.cleanupCallbacks.forEach(Mi=>{try{Mi()}catch(Uf){console.error("Error in cleanup callback:",Uf)}}),ft.cleanupCallbacks=[],ft.beforeRenderCallbacks=[],ft.afterRenderCallbacks=[],ft.resizeCallbacks=[];let tc={uniforms:Xt(ft.uniforms??{},ft.metadata.maps,ft.id,ue),childNode:Qs,onCleanup:Nr,onBeforeRender:Qn,onAfterRender:Pi,onResize:hs,canvas:t,dimensions:{width:M,height:R},renderer:e,domCanvas:ft.domCanvas};tc.computeOutputs=Vn(ft,tc),gn=Le(er(ft.fragmentNodeFunc(tc),ft),ft,ft.id,ue)}ft.requiresChild&&ft.metadata.blendMode==="normal"&&!Jt?lt=Te(lt||N(0,0,0,0),gn,ft.opacityUniform):lt===void 0?ye.requiresRTT||or!==1?lt=Up(N(1,1,1,0),gn,ft.metadata.blendMode,ft.opacityUniform):lt=gn:lt=Up(lt,gn,ft.metadata.blendMode,ft.opacityUniform)}ye.cleanupCallbacks.forEach(pn=>{try{pn()}catch(ft){console.error("Error in cleanup callback:",ft)}}),ye.cleanupCallbacks=[],ye.beforeRenderCallbacks=[],ye.afterRenderCallbacks=[],ye.resizeCallbacks=[];let Un={uniforms:Xt(ye.uniforms??{},ye.metadata.maps,K,ue),childNode:lt,onCleanup:Pt,onBeforeRender:ct,onAfterRender:Lt,onResize:Rt,canvas:t,dimensions:{width:M,height:R},renderer:e,domCanvas:ye.domCanvas};return Un.computeOutputs=Vn(ye,Un),Le(er(ye.fragmentNodeFunc(Un),ye),ye,K,ue)}else{let lt;for(let pn=0;pn<kt.length;pn++){let ft=kt[pn],or;if(ft.metadata.opacity===void 0?(or=1,ft.opacityUniform.value=or):(or=ft.metadata.opacity,ft.opacityUniform.value=or),ft.metadata.visible===!1)continue;ce&&ce.add(ft.id);let Jt=Wt(ft.id).length>0,gn;if(Jt)gn=ri(ft.id,ue,ce);else{let Nr=Mi=>{ft.cleanupCallbacks.push(Mi)},Qn=Mi=>{ft.beforeRenderCallbacks.push(Mi)},Pi=Mi=>{ft.afterRenderCallbacks.push(Mi)},hs=Mi=>{ft.resizeCallbacks.push(Mi)},Qs=lt;ft.requiresRTT&<!==void 0&&(Qs=Up(N(0,0,0,0),lt,"normal",1)),ft.cleanupCallbacks=[],ft.beforeRenderCallbacks=[],ft.afterRenderCallbacks=[],ft.resizeCallbacks=[];let tc={uniforms:Xt(ft.uniforms??{},ft.metadata.maps,ft.id,ue),childNode:Qs,onCleanup:Nr,onBeforeRender:Qn,onAfterRender:Pi,onResize:hs,canvas:t,dimensions:{width:M,height:R},renderer:e,domCanvas:ft.domCanvas};tc.computeOutputs=Vn(ft,tc),gn=Le(er(ft.fragmentNodeFunc(tc),ft),ft,ft.id,ue)}ft.requiresChild&&ft.metadata.blendMode==="normal"&&!Jt?lt=Te(lt||N(0,0,0,0),gn,ft.opacityUniform):lt===void 0?ye.requiresRTT||or!==1?lt=Up(N(1,1,1,0),gn,ft.metadata.blendMode,ft.opacityUniform):lt=gn:lt=Up(lt,gn,ft.metadata.blendMode,ft.opacityUniform)}ye.cleanupCallbacks.forEach(pn=>{try{pn()}catch(ft){console.error("Error in cleanup callback:",ft)}}),ye.cleanupCallbacks=[],ye.beforeRenderCallbacks=[],ye.afterRenderCallbacks=[],ye.resizeCallbacks=[];let Un={uniforms:Xt(ye.uniforms??{},ye.metadata.maps,K,ue),childNode:lt,onCleanup:Pt,onBeforeRender:ct,onAfterRender:Lt,onResize:Rt,canvas:t,dimensions:{width:M,height:R},renderer:e,domCanvas:ye.domCanvas};return Un.computeOutputs=Vn(ye,Un),Le(er(ye.fragmentNodeFunc(Un),ye),ye,K,ue)}}},gi=(K,ue,ce,ye,Pt={},ct,Lt)=>{if(ue===null){let pn=le.findIndex(ft=>ft.id===K);if(pn!==-1){le.splice(pn,1);return}qu(K);return}if(!we){let pn=le.findIndex(ft=>ft.id===K);pn!==-1?le[pn]={id:K,fragmentNodeFunc:ue,parentId:ce,metadata:ye,uniforms:Pt,componentDefinition:ct,domCanvas:Lt}:le.push({id:K,fragmentNodeFunc:ue,parentId:ce,metadata:ye,uniforms:Pt,componentDefinition:ct,domCanvas:Lt});return}let Rt=0;if(ce!==null){let pn=u.get(ce);if(pn&&pn.size>0){let ft=0;for(let or of pn){let Jt=s.nodes.get(or);Jt&&Jt.metadata.renderOrder>ft&&(ft=Jt.metadata.renderOrder)}Rt=ft+1}}let Qe=ne(ye?.opacity!==void 0?ye.opacity:1),kt;if(ye?.transform){let pn=M/Math.max(1,R),ft=ye.transform;kt={offsetX:ne(ft.offsetX??0),offsetY:ne(ft.offsetY??0),rotation:ne(ft.rotation??0),scale:ne(ft.scale??1),anchorX:ne(ft.anchorX??.5),anchorY:ne(ft.anchorY??.5),edges:ne(ft.edges==="stretch"?0:ft.edges==="transparent"?1:ft.edges==="mirror"?2:ft.edges==="wrap"?3:1),aspectRatio:ne(pn)}}let lt={id:K,componentName:ct?.name||"Unknown",fragmentNodeFunc:ue,parentId:ce,requiresRTT:ct?.requiresRTT||!1,requiresChild:ct?.requiresChild||!1,opacityUniform:Qe,metadata:{blendMode:ye?.blendMode||"normal",opacity:ye?.opacity,visible:ye?.visible!==!1,id:ye?.id?se(ye.id):ye?.id,mask:ye?.mask,maps:ye?.maps,renderOrder:ye?.renderOrder!==void 0?ye?.renderOrder:Rt,transform:ye?.transform},uniforms:Pt,cleanupCallbacks:[],beforeRenderCallbacks:[],afterRenderCallbacks:[],resizeCallbacks:[],transformUniforms:kt,transformRTTActive:!1,mapSampleUVsFunc:ct?.mapSampleUVs,computeNodeFunc:ct?.computeNode,usesPointer:ct?.usesPointer,domCanvas:Lt};s.nodes.set(K,lt),ce===null&&(s.rootId=K),ec();let Un=u.get(ce)||new Set;Un.add(K),u.set(ce,Un),l&&g&&M>0&&R>0?Z===null&&(Z=requestAnimationFrame(()=>{Z=null,Ct()})):l&&g&&(Et||(Et=!0,requestAnimationFrame(()=>{Et=!1,M>0&&R>0&&Ct()})))},Wu=(K,ue,ce)=>{let ye=s.nodes.get(K);if(!ye||!ye.uniforms)return;let Pt=ye.uniforms[ue];if(!(!Pt||!Pt.uniform)){if(Pt.transform?(ae(_),q_e(Pt,ce)):Pt.uniform.value=ce,Pt.compileTime&&l&&g&&M>0&&R>0){Z===null&&(Z=requestAnimationFrame(()=>{Z=null,Ct()}));return}if(Pt.compileTimeWhen&&l&&g&&M>0&&R>0){let ct=Pt._lastCompiledValue;if(Pt.compileTimeWhen(ct,ce)){Pt._lastCompiledValue=ce,Z===null&&(Z=requestAnimationFrame(()=>{Z=null,Ct()}));return}}d||ii()}},ju=(K,ue)=>{let ce=s.nodes.get(K);if(!ce)return;let ye=!1;ue.blendMode!==void 0&&ce.metadata.blendMode!==ue.blendMode&&(ce.metadata.blendMode=ue.blendMode,ye=!0),ue.opacity!==void 0&&ce.metadata.opacity!==ue.opacity&&(ce.metadata.opacity=ue.opacity,ce.opacityUniform.value=ue.opacity),ue.renderOrder!==void 0&&ce.metadata.renderOrder!==ue.renderOrder&&(ce.metadata.renderOrder=ue.renderOrder,ye=!0);let Pt=ue.visible!==!1;if(ce.metadata.visible!==Pt&&(ce.metadata.visible=Pt,ye=!0),ue.id!==void 0){let ct=se(ue.id);ce.metadata.id!==ct&&(ce.metadata.id=ct,ye=!0)}if("mask"in ue&&(ce.metadata.mask?.source!==ue.mask?.source||ce.metadata.mask?.type!==ue.mask?.type)&&(ce.metadata.mask=ue.mask,ye=!0),"maps"in ue&&JSON.stringify(ce.metadata.maps)!==JSON.stringify(ue.maps)){let ct=ce.metadata.maps,Lt=ue.maps;if(ce.metadata.maps=Lt,ec(),(()=>{if(!ct||!Lt)return!0;let Rt=Object.keys(ct),Qe=Object.keys(Lt);if(Rt.length!==Qe.length||!Rt.every(kt=>kt in Lt))return!0;for(let kt of Qe){let lt=ct[kt],Un=Lt[kt];if(lt.type!==Un.type)return!0;if(Un.type==="map"){let pn=Un,ft=lt;if(ft.source!==pn.source||ft.channel!==pn.channel||!ce.mapUniforms?.[kt])return!0}else if(Un.type==="mouse"){let pn=Un;if(lt.axis!==pn.axis||!ce.mouseDriverState?.[kt])return!0}else if(Un.type==="mouse-position"){if(!ce.mouseDriverState?.[kt])return!0}else if(Un.type==="auto-animate"&&!ce.autoAnimateState?.[kt])return!0}return!1})()){if(ct&&Lt)for(let Rt of Object.keys(ct))Rt in Lt&&ct[Rt].type!==Lt[Rt].type&&ce.autoAnimateState&&delete ce.autoAnimateState[Rt];if(ct&&Lt&&ce.mouseDriverState)for(let Rt of Object.keys(ct))Rt in Lt&&ct[Rt].type!==Lt[Rt].type&&delete ce.mouseDriverState[Rt];ye=!0}else for(let[Rt,Qe]of Object.entries(Lt))if(Qe.type==="map"){let kt=Qe,lt=ce.mapUniforms[Rt];lt&&(lt.inputMin.value=kt.inputMin,lt.inputMax.value=kt.inputMax,lt.outputMin.value=kt.outputMin,lt.outputMax.value=kt.outputMax,lt.curve.value=kt.curve??0)}else if(Qe.type==="mouse"){let kt=Qe,lt=ce.mapUniforms?.[Rt];lt&&(lt.outputMin.value=kt.outputMin,lt.outputMax.value=kt.outputMax,lt.curve.value=kt.curve??0)}else if(Qe.type==="auto-animate"){let kt=Qe,lt=ce.mapUniforms?.[Rt];lt&&(lt.outputMin.value=kt.outputMin,lt.outputMax.value=kt.outputMax)}}if(ue.transform!==void 0){let ct={offsetX:ue.transform.offsetX??ce.metadata.transform?.offsetX??0,offsetY:ue.transform.offsetY??ce.metadata.transform?.offsetY??0,rotation:ue.transform.rotation??ce.metadata.transform?.rotation??0,scale:ue.transform.scale??ce.metadata.transform?.scale??1,anchorX:ue.transform.anchorX??ce.metadata.transform?.anchorX??.5,anchorY:ue.transform.anchorY??ce.metadata.transform?.anchorY??.5,edges:ue.transform.edges??ce.metadata.transform?.edges??"transparent"},Lt=eN(ct);if(ce.metadata.transform=ct,!ce.transformUniforms&&ct){let Rt=M/Math.max(1,R);ce.transformUniforms={offsetX:ne(ct.offsetX),offsetY:ne(ct.offsetY),rotation:ne(ct.rotation),scale:ne(ct.scale),anchorX:ne(ct.anchorX),anchorY:ne(ct.anchorY),edges:ne(ct.edges==="stretch"?0:ct.edges==="transparent"?1:ct.edges==="mirror"?2:3),aspectRatio:ne(Rt)}}else if(ce.transformUniforms){ce.transformUniforms.offsetX.value=ct.offsetX,ce.transformUniforms.offsetY.value=ct.offsetY,ce.transformUniforms.rotation.value=ct.rotation,ce.transformUniforms.scale.value=ct.scale,ce.transformUniforms.anchorX.value=ct.anchorX,ce.transformUniforms.anchorY.value=ct.anchorY;let Rt=ce.transformUniforms.edges.value;ce.transformUniforms.edges.value=ct.edges==="stretch"?0:ct.edges==="transparent"?1:ct.edges==="mirror"?2:3,ce.transformUniforms.edges.value!==Rt&&(ye=!0)}Lt&&!ce.transformRTTActive&&(ce.transformRTTActive=!0,ye=!0)}ye&&l&&g?Z===null&&(Z=requestAnimationFrame(()=>{Z=null,Ct()})):d||ii()},qu=K=>{if(!s.nodes.has(K))return;let ue=s.nodes.get(K);if(ue&&ue.cleanupCallbacks.length>0)for(let ye of ue.cleanupCallbacks)try{ye()}catch(Pt){console.error(`Error executing cleanup callback for node ${K}:`,Pt)}let ce=Wt(K);for(let ye of ce)qu(ye.id);if(s.rootId===K&&(s.rootId=null),ue){let ye=u.get(ue.parentId);ye&&(ye.delete(K),ye.size===0&&u.delete(ue.parentId))}s.nodes.delete(K),it.delete(K),rt.delete(K),st.delete(K),ee.delete(K),ec(),D=!0,l&&g&&Z===null&&(Z=requestAnimationFrame(()=>{Z=null,Ct()}))},Xu=K=>K<1/2.75?7.5625*K*K:K<2/2.75?(K-=1.5/2.75,7.5625*K*K+.75):K<2.5/2.75?(K-=2.25/2.75,7.5625*K*K+.9375):(K-=2.625/2.75,7.5625*K*K+.984375),em=(K,ue)=>{switch(ue){case"linear":return K;case"quad":return K<.5?2*K*K:1-Math.pow(-2*K+2,2)/2;case"expo":return K===0?0:K===1?1:K<.5?Math.pow(2,20*K-10)/2:(2-Math.pow(2,-20*K+10))/2;case"bounce":return Xu(K);default:return(1-Math.cos(Math.PI*K))/2}},tm=()=>{let K=Fe.deltaTime;m+=K;for(let ue of ee){let ce=s.nodes.get(ue);if(!ce)continue;let ye=ce.metadata.maps;if(!ye)continue;let Pt=ce.mouseDriverState;for(let Lt in Pt){let Rt=Pt[Lt],Qe=ye[Lt];if(Qe){if(Qe.type==="mouse-position"){let kt=Qe.smoothing??0,lt=Qe.momentum??0,Un=Qe.x===void 0||Qe.x==="mouse",pn=Qe.y===void 0||Qe.y==="mouse",ft,or;if(Un){let[Uf,JE]=tN(Rt.currentX,Rt.velocityX,T,kt,lt,K);Rt.currentX=Uf,Rt.velocityX=JE,ft=Uf}else ft=Qe.x,Rt.velocityX=0;if(pn){let[Uf,JE]=tN(Rt.currentY,Rt.velocityY,O,kt,lt,K);Rt.currentY=Uf,Rt.velocityY=JE,or=Uf}else or=Qe.y,Rt.velocityY=0;let Jt=Qe.reach??1,gn=Qe.originX??.5,Nr=Qe.originY??.5,Qn=Qe.invertX?-1:1,Pi=Qe.invertY?-1:1,hs=gn+Qn*(ft-gn)*Jt,Qs=Nr+Pi*(or-Nr)*Jt,tc=hs,Mi=1-Qs;Rt.smoothedUniform.value.set(tc,Mi)}else if(Qe.type==="mouse"){let kt=Qe.smoothing??0,lt=Qe.momentum??0,Un=Qe.axis==="x"?T:O,[pn,ft]=tN(Rt.currentX,Rt.velocityX,Un,kt,lt,K);Rt.currentX=pn,Rt.velocityX=ft,Rt.smoothedUniform.value=Math.max(.001,pn)}}}let ct=ce.autoAnimateState;if(ct)for(let Lt in ct){let Rt=ct[Lt],Qe=ye[Lt];if(!Qe||Qe.type!=="auto-animate")continue;let kt=m*(Qe.speed??1)*.2,lt;if(Qe.mode==="loop")lt=em((kt%1+1)%1,Qe.easing??Qe.waveform??"sine");else{let Jt=(kt%1+1)%1;lt=em(Jt<.5?Jt*2:(1-Jt)*2,Qe.easing??Qe.waveform??"sine")}let{outputMin:Un,outputMax:pn}=Qe,ft=Un+lt*(pn-Un),or=ce.uniforms?.[Lt];if(or?.compileTimeWhen&&l&&g&&M>0&&R>0){let Jt=or._lastCompiledValue;or.compileTimeWhen(Jt,ft)&&(or._lastCompiledValue=ft,Z===null&&(Z=requestAnimationFrame(()=>{Z=null,Ct()})))}Rt.smoothedUniform.value=ft}}},nm=()=>{for(let K of st){let ue=s.nodes.get(K);if(!(!ue||!ue.computeGetNodes))try{let ce=ue.computeGetNodes(Fe);if(ce)for(let ye of ce)e.compute(ye)}catch(ce){console.error(`Error dispatching compute for node ${ue.id}:`,ce)}}},Ps=()=>{for(let K of it){let ue=s.nodes.get(K);if(ue)for(let ce of ue.beforeRenderCallbacks)try{ce(Fe)}catch(ye){console.error(`Error executing before render callback for node ${ue.id}:`,ye)}}},Pf=()=>{for(let K of rt){let ue=s.nodes.get(K);if(ue)for(let ce of ue.afterRenderCallbacks)try{ce(Fe)}catch(ye){console.error(`Error executing after render callback for node ${ue.id}:`,ye)}}},If=async()=>{if(!$())throw new Error("Renderer is not ready");let K=d!==null;if(K&&Qa(),c=0,ii(),e instanceof hf)try{let ue=e.backend;ue?.device&&await ue.device.queue.onSubmittedWorkDone()}catch{await new Promise(ce=>setTimeout(ce,16))}K&&Yu()},Of=K=>{if(D||!$())return;let ue=qe?performance.now():0,ce=ue||performance.now(),ye;if(K!==void 0)ye=K;else{let Pt=c>0?(ce-c)/1e3:.016,ct=1e3,Lt=1e3/60-1;if(c>0){let Rt=ce-c;if(!v&&!E&&Rt<ct||(v||E)&&Rt<Lt)return}ye=Math.min(Pt,.1)}c=ce,qe&&performance.mark("shader-cpu-start"),Fe.deltaTime=ye,Fe.pointer.x=T,Fe.pointer.y=O,Fe.pointerActive=L,Fe.dimensions.width=M,Fe.dimensions.height=R,tm(),nm(),Ps();try{if(U)return;if(qe&&performance.mark("shader-gpu-start"),e.render(o,i),je&&!ke&&(ke=!0,je=!1,Ce&&queueMicrotask(Ce)),Pf(),qe){performance.mark("shader-gpu-end");let Pt=!1;if(e instanceof hf)try{let ct=e.backend;if(ct&&ct.get&&ct.get(e)){let Lt=ct.get(e);if(Lt?.timestampQuery){let Rt=Lt.timestampQuery.getResult();Rt!=null&&(Xe.recordGpuTime(Rt/1e6),Pt=!0)}}}catch{}try{if(!Pt){performance.measure("shader-gpu-time","shader-gpu-start","shader-gpu-end");let ct=performance.getEntriesByName("shader-gpu-time")[0];ct&&Xe.recordGpuTime(ct.duration),performance.clearMeasures("shader-gpu-time")}performance.clearMarks("shader-gpu-start"),performance.clearMarks("shader-gpu-end")}catch{}}if(qe){performance.mark("shader-cpu-end");try{performance.measure("shader-cpu-time","shader-cpu-start","shader-cpu-end");let ct=performance.getEntriesByName("shader-cpu-time")[0];ct&&Xe.recordCpuTime(ct.duration),performance.clearMarks("shader-cpu-start"),performance.clearMarks("shader-cpu-end"),performance.clearMeasures("shader-cpu-time")}catch{}let Pt=performance.now()-ue;Xe.recordFrame(Pt)}}catch(Pt){console.error("Render frame error:",Pt)}},ii=()=>Of(void 0),rm=async K=>{if(Of(K),e instanceof hf){let ue=e.backend;ue?.device&&await ue.device.queue.onSubmittedWorkDone()}},$u=()=>{let K=Math.max(0,s.nodes.size-1),ue=ze;Xe.updateNodeCounts(K,ue)},im=()=>{$u();let K=e?.info;return Xe.getStats(K)},Yu=()=>{if(!(d||!C))if(Xe.setRendering(!0),e&&"setAnimationLoop"in e&&typeof e.setAnimationLoop=="function")e.setAnimationLoop(()=>{ii()}),d=1;else{let K=()=>{ii(),d=requestAnimationFrame(K)};K()}},Qa=()=>{d&&(e&&"setAnimationLoop"in e&&typeof e.setAnimationLoop=="function"?e.setAnimationLoop(null):cancelAnimationFrame(d),d=null),Xe.setRendering(!1)},Zu=!1,ec=()=>{let K=!1;for(let ue of s.nodes.values()){if(ue.usesPointer){K=!0;break}if(ue.metadata.maps){for(let ce of Object.values(ue.metadata.maps))if(ce&&typeof ce=="object"&&"type"in ce){let ye=ce.type;if(ye==="mouse"||ye==="mouse-position"){K=!0;break}}if(K)break}}K&&!Zu?(Zu=!0,!B&&t&&(B=X_e.register({onMouseMove:G,onTouchMove:Ie,onMouseUp:$e,onTouchEnd:Ge}),t.addEventListener("mousedown",We),t.addEventListener("touchstart",Yt))):!K&&Zu&&(Zu=!1,B&&(B(),B=null),t&&(t.removeEventListener("mousedown",We),t.removeEventListener("touchstart",Yt)))},om=K=>{if(!t)return;F=t.getBoundingClientRect();let ue,ce;if("touches"in K){if(K.touches.length===0)return;ue=K.touches[0].clientX,ce=K.touches[0].clientY}else ue=K.clientX,ce=K.clientY;let ye=(ue-F.left)/F.width,Pt=(ce-F.top)/F.height;T=ye,O=Pt},G=K=>{!g||!t||om(K)},Ie=K=>{!g||!t||om(K)},$e=()=>{g&&(L=!1,d||ii())},Ge=()=>{g&&(L=!1,d||ii())},We=()=>{L=!0,d||ii()},Yt=()=>{L=!0,d||ii()},on=()=>{if(le.length===0)return;let K=[...le];le=[];for(let{id:ue,fragmentNodeFunc:ce,parentId:ye,metadata:Pt,uniforms:ct,componentDefinition:Lt,domCanvas:Rt}of K)ce&&gi(ue,ce,ye,Pt,ct,Lt,Rt)},$t=async({canvas:K,resizeTarget:ue,enablePerformanceTracking:ce=!0,colorSpace:ye="p3-linear",toneMapping:Pt="linear",context:ct,gpu:Lt,forceFullFrameRate:Rt=!1,observeElement:Qe=!0})=>{if(g||y)return;qe=ce,E=Rt,_=ye,ae(ye),y=!0,w=new AbortController;let kt=w;try{if(t=K,o=new Yf,o.background=null,i=new Ls(-1,1,1,-1,.1,10),i.position.z=1,i.lookAt(0,0,0),X=()=>{mn()},window.addEventListener("beforeunload",X),re=()=>{if(pe>0&&Ne>0){let Jt=pe,gn=Ne;pe=0,Ne=0,H(Jt,gn)}},window.addEventListener("resize",re,{passive:!0}),kt.signal.aborted)return;if(ct){console.log("[Shaders] Using provided WebGL context"),e=new E0({canvas:K,context:ct,antialias:!0,alpha:!0,depth:!1,stencil:!0,powerPreference:"high-performance"});let Jt=gn=>{gn.preventDefault(),Ue("webglcontextlost")};K.addEventListener("webglcontextlost",Jt,!1),q=()=>{K.removeEventListener("webglcontextlost",Jt,!1)}}else try{let Jt={canvas:K,antialias:!0,alpha:!0,depth:!1,powerPreference:"high-performance"};if(Lt?.device&&(Jt.device=Lt.device),e=new hf(Jt),r=!1,n=e.init(),n.finally(()=>{r=!0}).catch(()=>{}),await n,kt.signal.aborted)return;try{let gn=e.backend?.device;gn?.lost&&typeof gn.lost.then=="function"&&gn.lost.then(Nr=>{Nr?.reason!=="destroyed"&&Ue(Nr?.message||Nr?.reason||"unknown")}).catch(()=>{})}catch(gn){console.warn("[Shaders] could not attach WebGPU device.lost handler",gn)}}catch(Jt){if(kt.signal.aborted)return;console.warn("[Shaders] WebGPU initialization failed, falling back to WebGL:",Jt);try{let gn={canvas:K,antialias:!0,alpha:!0,depth:!1,stencil:!0,powerPreference:"high-performance"};if(ct&&(gn.context=ct),e=new E0(gn),kt.signal.aborted)return;let Nr=Qn=>{Qn.preventDefault(),Ue("webglcontextlost")};K.addEventListener("webglcontextlost",Nr,!1),q=()=>{K.removeEventListener("webglcontextlost",Nr,!1)}}catch(gn){if(kt.signal.aborted)return;console.error("[Shaders] Both WebGPU and WebGL initialization failed:",gn);return}}if(kt.signal.aborted)return;if(e.setPixelRatio(Math.min(window.devicePixelRatio,2)),e.outputColorSpace=gr,nt(Pt),l=new dp({transparent:!0}),l.fragmentNode=N(0,0,0,0),a=new qr(new pc(2,2),l),o.add(a),Qe){let Jt=ue??K.parentElement;Jt?(h=new ResizeObserver(te),h.observe(Jt)):console.warn("[Shaders] No element available for resize observation \u2014 use resize() manually"),f=new IntersectionObserver(Ee,{threshold:0}),f.observe(K)}let lt=K.getBoundingClientRect();F=lt,v=!Qe||lt.width>0&<.height>0&<.top<window.innerHeight&<.bottom>0&<.left<window.innerWidth&<.right>0,C=!0;let Un=lt.width>0?lt.width:K.width,pn=lt.height>0?lt.height:K.height,ft=Math.round(Un),or=Math.round(pn);if(ft>0&&or>0){pe=ft,Ne=or;let{width:Jt,height:gn}=P(ft,or);M=Jt,R=gn,S=!0,e.setSize(Jt,gn,!1);let Nr=Jt/gn,Qn=2,Pi=Qn*Nr;i.left=-Pi/2,i.right=Pi/2,i.top=Qn/2,i.bottom=-Qn/2,i.updateProjectionMatrix(),a.scale.set(Pi,Qn,1),ii()}else S=!1;if(C&&Yu(),!kt.signal.aborted){try{if(e.backend?.isWebGPUBackend===!0){let Jt=e.backend?.device?.limits?.maxTextureDimension2D;typeof Jt=="number"&&Jt>0&&(xe=Jt)}else{let Jt=e.capabilities?.maxTextureSize;typeof Jt=="number"&&Jt>0&&(xe=Jt)}}catch{}if(pe>0&&Ne>0){let Jt=pe,gn=Ne;pe=0,Ne=0,H(Jt,gn)}g=!0,we=!0,on()}}catch(lt){console.error("[Shaders] Initialization error:",lt)}finally{y=!1,w===kt&&(w=null)}},mn=()=>{if(w&&w.abort(),h&&(h.disconnect(),h=null),f&&(f.disconnect(),f=null),B&&(B(),B=null),q&&(q(),q=null),t&&(t.removeEventListener("mousedown",We),t.removeEventListener("touchstart",Yt)),X&&(window.removeEventListener("beforeunload",X),X=null),re&&(window.removeEventListener("resize",re),re=null),Qa(),be(),Je.forEach(ue=>{try{ue?.renderTarget?.dispose&&ue.renderTarget.dispose()}catch{}}),Je.clear(),s.nodes.clear(),s.rootId=null,s.idToNodeId.clear(),u.clear(),it.clear(),rt.clear(),st.clear(),ee.clear(),le=[],we=!1,Z!==null&&(cancelAnimationFrame(Z),Z=null),Oe=null,k=!1,a){o&&o.remove(a);try{a.geometry&&typeof a.geometry.dispose=="function"&&a.geometry.dispose()}catch{}try{a.material instanceof ci&&typeof a.material.dispose=="function"&&a.material.dispose()}catch{}}let K=ue=>{try{typeof ue.forceContextLoss=="function"&&ue.forceContextLoss()}catch{}if(typeof ue.dispose=="function")try{ue.dispose()}catch{}};if(e){let ue=e,ce=n;ce&&!r?ce.finally(()=>K(ue)).catch(()=>{}):K(ue)}n=null,r=!1,t=null,e=null,i=null,o=null,a=null,l=null,g=!1,y=!1,S=!1,w=null,M=0,R=0,v=!1,C=!0,T=.5,O=.5,L=!1,D=!1,Ce=null,ke=!1,je=!1,ve=null,Ke=!1};return{initialize:$t,cleanup:mn,registerNode:gi,removeNode:qu,updateUniformValue:Wu,updateNodeMetadata:ju,isInitialized:()=>g,resize:(K,ue)=>{!e||!i||!a||H(K,ue)},startAnimation:Yu,stopAnimation:Qa,renderAndWait:If,renderSyntheticFrame:rm,getPerformanceStats:im,getNodeRegistry:()=>({nodes:new Map(s.nodes)}),getRendererType:()=>e?e instanceof hf?"webgpu":"webgl":null,getInternalRenderer:()=>e??null,setForceFullFrameRate:K=>{let ue=E;return E=K,ue},setOnReady:K=>{Ce=K},setOnDeviceLost:K=>{ve=K},__testing:{needsTransformation:eN,findChildNodes:Wt,applyMaskIfNeeded:Le,applyNodeTransformation:er,getNodeRegistry:()=>s,getParentToChildren:()=>u}}}var yW,m_e,vW,p_e,xW,g_e,bW,v_e,_W,x_e,SW,wW,H_e,eN,W_e,j_e,X_e,tN,gt=z(()=>{"use strict";pi();Dt();Fi();ki();ut();yW=t=>ge(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))),m_e=t=>ge(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))),vW=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=mo(i).mul(Gt(At(i),p(1/3))),s=mo(o).mul(Gt(At(o),p(1/3))),u=mo(a).mul(Gt(At(a),p(1/3)));return ge(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)))},p_e=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=Gt(i,p(3)),s=Gt(o,p(3)),u=Gt(a,p(3));return ge(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)))},xW=t=>{let e=t.x,n=t.y,r=t.z;return ge(e,An(n.mul(n).add(r.mul(r))),dr(r,n))},g_e=t=>{let e=t.x,n=t.y,r=t.z;return ge(e,n.mul(He(r)),n.mul(me(r)))};bW=t=>ge(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))),v_e=t=>ge(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))),_W=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=mo(i).mul(Gt(At(i),p(1/3))),s=mo(o).mul(Gt(At(o),p(1/3))),u=mo(a).mul(Gt(At(a),p(1/3)));return ge(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)))},x_e=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=Gt(i,p(3)),s=Gt(o,p(3)),u=Gt(a,p(3));return ge(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)))};SW={normal:h_e,"normal-oklch":y_e,"normal-oklab":b_e,multiply:__e,screen:S_e,linearDodge:w_e,overlay:M_e,difference:T_e,colorDodge:E_e,exclusion:C_e,color:R_e,luminosity:A_e,darken:P_e,lighten:I_e,colorBurn:O_e,linearBurn:U_e,softLight:N_e,hardLight:D_e,hue:F_e,saturation:L_e};wW={alpha:k_e,alphaInverted:B_e,luminance:z_e,luminanceInverted:V_e};H_e=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,C)=>v+C,0)/n.length):0,o=r>0?e.reduce((v,C)=>v+C,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}},eN=t=>t?t.offsetX!==0||t.offsetY!==0||t.rotation!==0||t.scale!==1||t.anchorX!==.5||t.anchorY!==.5:!1,W_e=(t,e,n,r,i,o,a,l)=>{let s=r.mul(mi).div(p(180)),u=He(s),d=me(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)},j_e=new Map([[Me,PU],[Mt,IU]]);X_e=(()=>{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))}}}})(),tN=(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 yt=z(()=>{"use strict";Dt()});function $_e(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 Y_e(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 Z_e(){if(typeof window>"u"||typeof navigator>"u")return{domain:"unknown",browserFamily:"unknown",deviceType:"unknown"};let t=navigator.userAgent;return{domain:window.location.hostname,browserFamily:$_e(t),deviceType:Y_e(t)}}function J_e(t=!1,e=!1){return t||typeof navigator<"u"&&navigator.doNotTrack==="1"?!1:e?!0:Math.random()<Jh.samplingRate}function TW(t,e,n=!1,r=!1){return J_e(n,r)?new K_e(t,e,r?"preview":"shader"):null}function EW(){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 Jh,K_e,CW=z(()=>{"use strict";Jh={samplingRate:.05,collectionDuration:5e3,warmupDuration:500,sampleInterval:500,apiEndpoint:"https://shaders.com/api/telemetry"};K_e=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(Jh.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)}},Jh.sampleInterval),await this.sleep(Jh.collectionDuration-Jh.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=Z_e();return{sessionId:this.sessionId,timestamp:Date.now(),collectionDuration:Jh.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(Jh.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 Q_e,useEffect as KE,useId as eSe,useMemo as z0,useRef as zo}from"react";import{jsx as RW,jsxs as tSe}from"react/jsx-runtime";var V,nN,nSe,mt=z(()=>{"use strict";gt();yt();ut();CW();V=Q_e(null),nN=({children:t,disableTelemetry:e=!1,colorSpace:n="p3-linear",toneMapping:r="linear",isPreview:i=!1,onReady:o,style:a={},className:l="",...s})=>{let u=zo(null),d=zo(null),h=eSe(),f=z0(()=>"shader-root-"+h.replace(/[^a-zA-Z0-9_]/g,""),[h]),g=zo(null);g.current===null&&(g.current=MW());let y=zo(o);y.current=o,KE(()=>(g.current.setOnReady(()=>y.current?.()),()=>{g.current.setOnReady(null)}),[]);let _=zo(null),b=zo(null),S=zo(null),w=z0(()=>(D,B,q,X,re=null,xe=null,pe)=>{if(B===null){try{g.current.removeNode(D)}catch(Ne){console.warn("Error removing node:",Ne)}return}try{g.current.registerNode(D,B,q,X,re,xe,pe)}catch(Ne){console.error("Error registering node:",Ne,{id:D,parentId:q,metadata:X})}},[]),v=z0(()=>(D,B,q)=>{try{g.current.updateUniformValue(D,B,q)}catch(X){console.warn("Error updating uniform:",X)}},[]),C=z0(()=>(D,B)=>{try{g.current.updateNodeMetadata(D,B)}catch(q){console.warn("Error updating metadata:",q)}},[]),E=z0(()=>({shaderParentId:f,shaderNodeRegister:w,shaderUniformUpdate:v,shaderMetadataUpdate:C,shaderColorSpace:n}),[f,w,v,C,n]),M=zo(!1),R=zo(!1),c=zo(!1),m=zo(!1),x=zo(null),T=()=>{let D=()=>{if(c.current||!g.current){b.current=null;return}g.current.getPerformanceStats().fps>0?(_.current=TW(g.current,"2.5.135",e,i),_.current&&_.current.start(),b.current=null):b.current=window.setTimeout(D,500)};b.current=window.setTimeout(D,500)},O=async()=>{let D=d.current;if(!(!D||M.current||R.current)){R.current=!0;try{let B=g.current;B.isInitialized()||await B.initialize({canvas:D,colorSpace:n,toneMapping:r}),B.registerNode(f,({childNode:q})=>q||N(0,0,0,0),null,null,{}),M.current=!0,R.current=!1,S.current===null&&(S.current=EW()),S.current&&!_.current&&T()}catch(B){throw console.error("[Shader] Initialization failed:",B),R.current=!1,B}}},L=()=>{let D=u.current;!D||x.current||(x.current=new IntersectionObserver(B=>{let q=B[0];if(!q)return;let X=D.getBoundingClientRect(),re=q.isIntersecting&&X&&X.width>0&&X.height>0;re&&!m.current?(g.current.isInitialized()?(g.current.startAnimation(),S.current&&!_.current&&!b.current&&T()):O().catch(console.error),m.current=!0):!re&&m.current&&(g.current.stopAnimation(),m.current=!1)},{threshold:0}),x.current.observe(D))};KE(()=>{c.current=!1;let D=u.current;if(!D)return;let B=D.getBoundingClientRect();return B.width>0&&B.height>0?(O().catch(console.error),m.current=!0):m.current=!1,L(),()=>{if(!c.current){if(c.current=!0,_.current&&(_.current.stop(),_.current=null),b.current!==null&&(clearTimeout(b.current),b.current=null),x.current&&(x.current.disconnect(),x.current=null),g.current&&M.current)try{g.current.cleanup()}catch(q){console.warn("[Shader] Error during cleanup:",q)}M.current=!1,R.current=!1}}},[]);let F=zo(!0);KE(()=>{if(F.current){F.current=!1;return}if(g.current&&M.current){ae(n);try{g.current.cleanup(),M.current=!1,O().catch(console.error)}catch(D){console.error("[Shader] Error updating colorSpace:",D)}}},[n]);let U=zo(!0);return KE(()=>{if(U.current){U.current=!1;return}if(g.current&&M.current)try{g.current.cleanup(),M.current=!1,O().catch(console.error)}catch(D){console.error("[Shader] Error updating toneMapping:",D)}},[r]),RW(V.Provider,{value:E,children:tSe("div",{ref:u,className:"shader"+(l?" "+l:""),style:a,...s,children:[RW("canvas",{"data-renderer":"shaders",ref:d,style:{width:"100%",height:"100%",display:"block"}}),t]})})},nSe=nN});var AW=z(()=>{"use strict";_6()});var DW={};vt(DW,{ShaderComponent:()=>UW,default:()=>NW});import{useContext as rSe,useEffect as V0,useId as iSe,useMemo as G0,useRef as H0,useState as PW}from"react";import{createPortal as oSe}from"react-dom";import{jsx as IW,jsxs as sSe}from"react/jsx-runtime";function rN(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 aSe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!rN(i)&&(n[r]=i);return n}var cSe,lSe,OW,UW,NW,iN=z(()=>{"use strict";mt();gt();yt();AW();cSe={display:"contents"},lSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},OW={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&&(OW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}UW=t=>{let e=rSe(V);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=iSe(),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(()=>aSe(t,OW),[t]),d=G0(()=>({...lSe,...t.transform}),[t.transform]),h=H0(null),f=!!Nc.capturesDOM,g=H0(null),[y,_]=PW(!1),[b,S]=PW(()=>({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=H0(void 0),v=H0(null);v.current===null&&(ae(a),v.current=de(Nc,u,s));let C=G0(()=>({...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,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]),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 E=H0({}),M=G0(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&rN(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(rN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?oSe(IW("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 sSe(V.Provider,{value:C,children:[IW("span",{ref:h,style:cSe,"data-shader-id":s,children:!f&&t.children}),R]})},NW=UW});var FW=z(()=>{"use strict";S6()});var GW={};vt(GW,{ShaderComponent:()=>zW,default:()=>VW});import{useContext as uSe,useEffect as W0,useId as dSe,useMemo as j0,useRef as q0,useState as LW}from"react";import{createPortal as fSe}from"react-dom";import{jsx as kW,jsxs as hSe}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 mSe(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 pSe,gSe,BW,zW,VW,sN=z(()=>{"use strict";mt();gt();yt();FW();pSe={display:"contents"},gSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},BW={blendMode:"normal",visible:!0};try{ni&&ni.props&&Object.entries(ni.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(BW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}zW=t=>{let e=uSe(V);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=dSe(),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(()=>mSe(t,BW),[t]),d=j0(()=>({...gSe,...t.transform}),[t.transform]),h=q0(null),f=!!ni.capturesDOM,g=q0(null),[y,_]=LW(!1),[b,S]=LW(()=>({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}));W0(()=>{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&&(ae(a),v.current=de(ni,u,s));let C=j0(()=>({...e,shaderParentId:s}),[e,s]);W0(()=>{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,ni.fragmentNode,n,c,v.current,ni,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]),W0(()=>{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 E=q0({}),M=j0(()=>{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(W0(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),W0(()=>{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?fSe(kW("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 hSe(V.Provider,{value:C,children:[kW("span",{ref:h,style:pSe,"data-shader-id":s,children:!f&&t.children}),R]})},VW=zW});var HW=z(()=>{"use strict";U6()});var YW={};vt(YW,{ShaderComponent:()=>XW,default:()=>$W});import{useContext as ySe,useEffect as X0,useId as vSe,useMemo as $0,useRef as Y0,useState as WW}from"react";import{createPortal as xSe}from"react-dom";import{jsx as jW,jsxs as bSe}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 _Se(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 SSe,wSe,qW,XW,$W,cN=z(()=>{"use strict";mt();gt();yt();HW();SSe={display:"contents"},wSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},qW={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&&(qW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}XW=t=>{let e=ySe(V);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=vSe(),s=$0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=$0(()=>_Se(t,qW),[t]),d=$0(()=>({...wSe,...t.transform}),[t.transform]),h=Y0(null),f=!!Dc.capturesDOM,g=Y0(null),[y,_]=WW(!1),[b,S]=WW(()=>({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}));X0(()=>{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&&(ae(a),v.current=de(Dc,u,s));let C=$0(()=>({...e,shaderParentId:s}),[e,s]);X0(()=>{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]),X0(()=>{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 E=Y0({}),M=$0(()=>{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(X0(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),X0(()=>{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?xSe(jW("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 bSe(V.Provider,{value:C,children:[jW("span",{ref:h,style:SSe,"data-shader-id":s,children:!f&&t.children}),R]})},$W=XW});var ZW=z(()=>{"use strict";N6()});var nj={};vt(nj,{ShaderComponent:()=>ej,default:()=>tj});import{useContext as MSe,useEffect as Z0,useId as TSe,useMemo as K0,useRef as J0,useState as KW}from"react";import{createPortal as ESe}from"react-dom";import{jsx as JW,jsxs as CSe}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 RSe(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 ASe,PSe,QW,ej,tj,uN=z(()=>{"use strict";mt();gt();yt();ZW();ASe={display:"contents"},PSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},QW={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&&(QW[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}ej=t=>{let e=MSe(V);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=K0(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=K0(()=>RSe(t,QW),[t]),d=K0(()=>({...PSe,...t.transform}),[t.transform]),h=J0(null),f=!!Fc.capturesDOM,g=J0(null),[y,_]=KW(!1),[b,S]=KW(()=>({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}));Z0(()=>{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=J0(void 0),v=J0(null);v.current===null&&(ae(a),v.current=de(Fc,u,s));let C=K0(()=>({...e,shaderParentId:s}),[e,s]);Z0(()=>{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]),Z0(()=>{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 E=J0({}),M=K0(()=>{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(Z0(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Z0(()=>{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?ESe(JW("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 CSe(V.Provider,{value:C,children:[JW("span",{ref:h,style:ASe,"data-shader-id":s,children:!f&&t.children}),R]})},tj=ej});var rj=z(()=>{"use strict";D6()});var lj={};vt(lj,{ShaderComponent:()=>aj,default:()=>cj});import{useContext as ISe,useEffect as Q0,useId as OSe,useMemo as ey,useRef as ty,useState as ij}from"react";import{createPortal as USe}from"react-dom";import{jsx as oj,jsxs as NSe}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 DSe(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 FSe,LSe,sj,aj,cj,fN=z(()=>{"use strict";mt();gt();yt();rj();FSe={display:"contents"},LSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},sj={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&&(sj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}aj=t=>{let e=ISe(V);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=OSe(),s=ey(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ey(()=>DSe(t,sj),[t]),d=ey(()=>({...LSe,...t.transform}),[t.transform]),h=ty(null),f=!!Lc.capturesDOM,g=ty(null),[y,_]=ij(!1),[b,S]=ij(()=>({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}));Q0(()=>{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=ty(void 0),v=ty(null);v.current===null&&(ae(a),v.current=de(Lc,u,s));let C=ey(()=>({...e,shaderParentId:s}),[e,s]);Q0(()=>{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]),Q0(()=>{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 E=ty({}),M=ey(()=>{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(Q0(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Q0(()=>{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?USe(oj("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 NSe(V.Provider,{value:C,children:[oj("span",{ref:h,style:FSe,"data-shader-id":s,children:!f&&t.children}),R]})},cj=aj});var uj=z(()=>{"use strict";F6()});var gj={};vt(gj,{ShaderComponent:()=>mj,default:()=>pj});import{useContext as kSe,useEffect as ny,useId as BSe,useMemo as ry,useRef as iy,useState as dj}from"react";import{createPortal as zSe}from"react-dom";import{jsx as fj,jsxs as VSe}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 GSe(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 HSe,WSe,hj,mj,pj,mN=z(()=>{"use strict";mt();gt();yt();uj();HSe={display:"contents"},WSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},hj={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&&(hj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}mj=t=>{let e=kSe(V);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=BSe(),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(()=>GSe(t,hj),[t]),d=ry(()=>({...WSe,...t.transform}),[t.transform]),h=iy(null),f=!!kc.capturesDOM,g=iy(null),[y,_]=dj(!1),[b,S]=dj(()=>({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}));ny(()=>{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=iy(void 0),v=iy(null);v.current===null&&(ae(a),v.current=de(kc,u,s));let C=ry(()=>({...e,shaderParentId:s}),[e,s]);ny(()=>{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]),ny(()=>{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 E=iy({}),M=ry(()=>{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(ny(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ny(()=>{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?zSe(fj("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 VSe(V.Provider,{value:C,children:[fj("span",{ref:h,style:HSe,"data-shader-id":s,children:!f&&t.children}),R]})},pj=mj});var yj=z(()=>{"use strict";k6()});var wj={};vt(wj,{ShaderComponent:()=>_j,default:()=>Sj});import{useContext as jSe,useEffect as oy,useId as qSe,useMemo as sy,useRef as ay,useState as vj}from"react";import{createPortal as XSe}from"react-dom";import{jsx as xj,jsxs as $Se}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 YSe(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 ZSe,KSe,bj,_j,Sj,gN=z(()=>{"use strict";mt();gt();yt();yj();ZSe={display:"contents"},KSe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},bj={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&&(bj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}_j=t=>{let e=jSe(V);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=qSe(),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(()=>YSe(t,bj),[t]),d=sy(()=>({...KSe,...t.transform}),[t.transform]),h=ay(null),f=!!Bc.capturesDOM,g=ay(null),[y,_]=vj(!1),[b,S]=vj(()=>({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=ay(void 0),v=ay(null);v.current===null&&(ae(a),v.current=de(Bc,u,s));let C=sy(()=>({...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,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]),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 E=ay({}),M=sy(()=>{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(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(pN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?XSe(xj("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 $Se(V.Provider,{value:C,children:[xj("span",{ref:h,style:ZSe,"data-shader-id":s,children:!f&&t.children}),R]})},Sj=_j});var Mj=z(()=>{"use strict";B6()});var Pj={};vt(Pj,{ShaderComponent:()=>Rj,default:()=>Aj});import{useContext as JSe,useEffect as cy,useId as QSe,useMemo as ly,useRef as uy,useState as Tj}from"react";import{createPortal as ewe}from"react-dom";import{jsx as Ej,jsxs as twe}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 nwe(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 rwe,iwe,Cj,Rj,Aj,vN=z(()=>{"use strict";mt();gt();yt();Mj();rwe={display:"contents"},iwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Cj={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&&(Cj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Rj=t=>{let e=JSe(V);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=QSe(),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(()=>nwe(t,Cj),[t]),d=ly(()=>({...iwe,...t.transform}),[t.transform]),h=uy(null),f=!!zc.capturesDOM,g=uy(null),[y,_]=Tj(!1),[b,S]=Tj(()=>({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}));cy(()=>{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=uy(void 0),v=uy(null);v.current===null&&(ae(a),v.current=de(zc,u,s));let C=ly(()=>({...e,shaderParentId:s}),[e,s]);cy(()=>{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]),cy(()=>{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 E=uy({}),M=ly(()=>{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(cy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),cy(()=>{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?ewe(Ej("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 twe(V.Provider,{value:C,children:[Ej("span",{ref:h,style:rwe,"data-shader-id":s,children:!f&&t.children}),R]})},Aj=Rj});var Ij=z(()=>{"use strict";z6()});var Lj={};vt(Lj,{ShaderComponent:()=>Dj,default:()=>Fj});import{useContext as owe,useEffect as dy,useId as swe,useMemo as fy,useRef as hy,useState as Oj}from"react";import{createPortal as awe}from"react-dom";import{jsx as Uj,jsxs as cwe}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 lwe(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 uwe,dwe,Nj,Dj,Fj,bN=z(()=>{"use strict";mt();gt();yt();Ij();uwe={display:"contents"},dwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Nj={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&&(Nj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Dj=t=>{let e=owe(V);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=swe(),s=fy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=fy(()=>lwe(t,Nj),[t]),d=fy(()=>({...dwe,...t.transform}),[t.transform]),h=hy(null),f=!!Vc.capturesDOM,g=hy(null),[y,_]=Oj(!1),[b,S]=Oj(()=>({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}));dy(()=>{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=hy(void 0),v=hy(null);v.current===null&&(ae(a),v.current=de(Vc,u,s));let C=fy(()=>({...e,shaderParentId:s}),[e,s]);dy(()=>{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]),dy(()=>{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 E=hy({}),M=fy(()=>{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(dy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),dy(()=>{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?awe(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 cwe(V.Provider,{value:C,children:[Uj("span",{ref:h,style:uwe,"data-shader-id":s,children:!f&&t.children}),R]})},Fj=Dj});var kj=z(()=>{"use strict";V6()});var Wj={};vt(Wj,{ShaderComponent:()=>Gj,default:()=>Hj});import{useContext as fwe,useEffect as my,useId as hwe,useMemo as py,useRef as gy,useState as Bj}from"react";import{createPortal as mwe}from"react-dom";import{jsx as zj,jsxs as pwe}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 gwe(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 ywe,vwe,Vj,Gj,Hj,SN=z(()=>{"use strict";mt();gt();yt();kj();ywe={display:"contents"},vwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Vj={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&&(Vj[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Gj=t=>{let e=fwe(V);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=hwe(),s=py(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=py(()=>gwe(t,Vj),[t]),d=py(()=>({...vwe,...t.transform}),[t.transform]),h=gy(null),f=!!Gc.capturesDOM,g=gy(null),[y,_]=Bj(!1),[b,S]=Bj(()=>({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=gy(void 0),v=gy(null);v.current===null&&(ae(a),v.current=de(Gc,u,s));let C=py(()=>({...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,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]),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 E=gy({}),M=py(()=>{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(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(_N(T))return;T!==E.current[c]&&(i(s,c,T),E.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?mwe(zj("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 pwe(V.Provider,{value:C,children:[zj("span",{ref:h,style:ywe,"data-shader-id":s,children:!f&&t.children}),R]})},Hj=Gj});var jj=z(()=>{"use strict";e8()});var Kj={};vt(Kj,{ShaderComponent:()=>Yj,default:()=>Zj});import{useContext as xwe,useEffect as yy,useId as bwe,useMemo as vy,useRef as xy,useState as qj}from"react";import{createPortal as _we}from"react-dom";import{jsx as Xj,jsxs as Swe}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 wwe(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 Mwe,Twe,$j,Yj,Zj,MN=z(()=>{"use strict";mt();gt();yt();jj();Mwe={display:"contents"},Twe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},$j={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&&($j[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Yj=t=>{let e=xwe(V);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=bwe(),s=vy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=vy(()=>wwe(t,$j),[t]),d=vy(()=>({...Twe,...t.transform}),[t.transform]),h=xy(null),f=!!tl.capturesDOM,g=xy(null),[y,_]=qj(!1),[b,S]=qj(()=>({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}));yy(()=>{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&&(ae(a),v.current=de(tl,u,s));let C=vy(()=>({...e,shaderParentId:s}),[e,s]);yy(()=>{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]),yy(()=>{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 E=xy({}),M=vy(()=>{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(yy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),yy(()=>{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?_we(Xj("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 Swe(V.Provider,{value:C,children:[Xj("span",{ref:h,style:Mwe,"data-shader-id":s,children:!f&&t.children}),R]})},Zj=Yj});var Jj=z(()=>{"use strict";G6()});var i7={};vt(i7,{ShaderComponent:()=>n7,default:()=>r7});import{useContext as Ewe,useEffect as by,useId as Cwe,useMemo as _y,useRef as Sy,useState as Qj}from"react";import{createPortal as Rwe}from"react-dom";import{jsx as e7,jsxs as Awe}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 Pwe(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 Iwe,Owe,t7,n7,r7,EN=z(()=>{"use strict";mt();gt();yt();Jj();Iwe={display:"contents"},Owe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},t7={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&&(t7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}n7=t=>{let e=Ewe(V);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=Cwe(),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(()=>Pwe(t,t7),[t]),d=_y(()=>({...Owe,...t.transform}),[t.transform]),h=Sy(null),f=!!Hc.capturesDOM,g=Sy(null),[y,_]=Qj(!1),[b,S]=Qj(()=>({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=Sy(void 0),v=Sy(null);v.current===null&&(ae(a),v.current=de(Hc,u,s));let C=_y(()=>({...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,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]),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 E=Sy({}),M=_y(()=>{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(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(TN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?Rwe(e7("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 Awe(V.Provider,{value:C,children:[e7("span",{ref:h,style:Iwe,"data-shader-id":s,children:!f&&t.children}),R]})},r7=n7});var o7=z(()=>{"use strict";H6()});var d7={};vt(d7,{ShaderComponent:()=>l7,default:()=>u7});import{useContext as Uwe,useEffect as wy,useId as Nwe,useMemo as My,useRef as Ty,useState as s7}from"react";import{createPortal as Dwe}from"react-dom";import{jsx as a7,jsxs as Fwe}from"react/jsx-runtime";function CN(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 Lwe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!CN(i)&&(n[r]=i);return n}var kwe,Bwe,c7,l7,u7,RN=z(()=>{"use strict";mt();gt();yt();o7();kwe={display:"contents"},Bwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},c7={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&&(c7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}l7=t=>{let e=Uwe(V);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=Nwe(),s=My(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=My(()=>Lwe(t,c7),[t]),d=My(()=>({...Bwe,...t.transform}),[t.transform]),h=Ty(null),f=!!Wc.capturesDOM,g=Ty(null),[y,_]=s7(!1),[b,S]=s7(()=>({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}));wy(()=>{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=Ty(void 0),v=Ty(null);v.current===null&&(ae(a),v.current=de(Wc,u,s));let C=My(()=>({...e,shaderParentId:s}),[e,s]);wy(()=>{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]),wy(()=>{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 E=Ty({}),M=My(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&CN(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(wy(()=>{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(CN(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),wy(()=>{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(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 Fwe(V.Provider,{value:C,children:[a7("span",{ref:h,style:kwe,"data-shader-id":s,children:!f&&t.children}),R]})},u7=l7});var f7=z(()=>{"use strict";W6()});var v7={};vt(v7,{ShaderComponent:()=>g7,default:()=>y7});import{useContext as zwe,useEffect as Ey,useId as Vwe,useMemo as Cy,useRef as Ry,useState as h7}from"react";import{createPortal as Gwe}from"react-dom";import{jsx as m7,jsxs as Hwe}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 Wwe(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 jwe,qwe,p7,g7,y7,PN=z(()=>{"use strict";mt();gt();yt();f7();jwe={display:"contents"},qwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},p7={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&&(p7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}g7=t=>{let e=zwe(V);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=Vwe(),s=Cy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Cy(()=>Wwe(t,p7),[t]),d=Cy(()=>({...qwe,...t.transform}),[t.transform]),h=Ry(null),f=!!jc.capturesDOM,g=Ry(null),[y,_]=h7(!1),[b,S]=h7(()=>({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=Ry(void 0),v=Ry(null);v.current===null&&(ae(a),v.current=de(jc,u,s));let C=Cy(()=>({...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 E=Ry({}),M=Cy(()=>{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(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(AN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?Gwe(m7("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 Hwe(V.Provider,{value:C,children:[m7("span",{ref:h,style:jwe,"data-shader-id":s,children:!f&&t.children}),R]})},y7=g7});var x7=z(()=>{"use strict";j6()});var T7={};vt(T7,{ShaderComponent:()=>w7,default:()=>M7});import{useContext as Xwe,useEffect as Ay,useId as $we,useMemo as Py,useRef as Iy,useState as b7}from"react";import{createPortal as Ywe}from"react-dom";import{jsx as _7,jsxs as Zwe}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 Kwe(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 Jwe,Qwe,S7,w7,M7,ON=z(()=>{"use strict";mt();gt();yt();x7();Jwe={display:"contents"},Qwe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},S7={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&&(S7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}w7=t=>{let e=Xwe(V);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=$we(),s=Py(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Py(()=>Kwe(t,S7),[t]),d=Py(()=>({...Qwe,...t.transform}),[t.transform]),h=Iy(null),f=!!qc.capturesDOM,g=Iy(null),[y,_]=b7(!1),[b,S]=b7(()=>({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}));Ay(()=>{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=Iy(void 0),v=Iy(null);v.current===null&&(ae(a),v.current=de(qc,u,s));let C=Py(()=>({...e,shaderParentId:s}),[e,s]);Ay(()=>{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]),Ay(()=>{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 E=Iy({}),M=Py(()=>{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(Ay(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ay(()=>{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?Ywe(_7("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(V.Provider,{value:C,children:[_7("span",{ref:h,style:Jwe,"data-shader-id":s,children:!f&&t.children}),R]})},M7=w7});var E7=z(()=>{"use strict";q6()});var O7={};vt(O7,{ShaderComponent:()=>P7,default:()=>I7});import{useContext as eMe,useEffect as Oy,useId as tMe,useMemo as Uy,useRef as Ny,useState as C7}from"react";import{createPortal as nMe}from"react-dom";import{jsx as R7,jsxs as rMe}from"react/jsx-runtime";function UN(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 iMe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!UN(i)&&(n[r]=i);return n}var oMe,sMe,A7,P7,I7,NN=z(()=>{"use strict";mt();gt();yt();E7();oMe={display:"contents"},sMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},A7={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&&(A7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}P7=t=>{let e=eMe(V);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=tMe(),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(()=>iMe(t,A7),[t]),d=Uy(()=>({...sMe,...t.transform}),[t.transform]),h=Ny(null),f=!!Xc.capturesDOM,g=Ny(null),[y,_]=C7(!1),[b,S]=C7(()=>({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=Ny(void 0),v=Ny(null);v.current===null&&(ae(a),v.current=de(Xc,u,s));let C=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 E=Ny({}),M=Uy(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&UN(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(UN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?nMe(R7("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(V.Provider,{value:C,children:[R7("span",{ref:h,style:oMe,"data-shader-id":s,children:!f&&t.children}),R]})},I7=P7});var U7=z(()=>{"use strict";X6()});var B7={};vt(B7,{ShaderComponent:()=>L7,default:()=>k7});import{useContext as aMe,useEffect as Dy,useId as cMe,useMemo as Fy,useRef as Ly,useState as N7}from"react";import{createPortal as lMe}from"react-dom";import{jsx as D7,jsxs as uMe}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 dMe(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 fMe,hMe,F7,L7,k7,FN=z(()=>{"use strict";mt();gt();yt();U7();fMe={display:"contents"},hMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},F7={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&&(F7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}L7=t=>{let e=aMe(V);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=Fy(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Fy(()=>dMe(t,F7),[t]),d=Fy(()=>({...hMe,...t.transform}),[t.transform]),h=Ly(null),f=!!$c.capturesDOM,g=Ly(null),[y,_]=N7(!1),[b,S]=N7(()=>({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}));Dy(()=>{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=Ly(void 0),v=Ly(null);v.current===null&&(ae(a),v.current=de($c,u,s));let C=Fy(()=>({...e,shaderParentId:s}),[e,s]);Dy(()=>{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]),Dy(()=>{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 E=Ly({}),M=Fy(()=>{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(Dy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Dy(()=>{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?lMe(D7("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 uMe(V.Provider,{value:C,children:[D7("span",{ref:h,style:fMe,"data-shader-id":s,children:!f&&t.children}),R]})},k7=L7});var z7=z(()=>{"use strict";$6()});var q7={};vt(q7,{ShaderComponent:()=>W7,default:()=>j7});import{useContext as mMe,useEffect as ky,useId as pMe,useMemo as By,useRef as zy,useState as V7}from"react";import{createPortal as gMe}from"react-dom";import{jsx as G7,jsxs as yMe}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 vMe(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 xMe,bMe,H7,W7,j7,kN=z(()=>{"use strict";mt();gt();yt();z7();xMe={display:"contents"},bMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},H7={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&&(H7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}W7=t=>{let e=mMe(V);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=pMe(),s=By(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=By(()=>vMe(t,H7),[t]),d=By(()=>({...bMe,...t.transform}),[t.transform]),h=zy(null),f=!!Yc.capturesDOM,g=zy(null),[y,_]=V7(!1),[b,S]=V7(()=>({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=zy(void 0),v=zy(null);v.current===null&&(ae(a),v.current=de(Yc,u,s));let C=By(()=>({...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,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]),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 E=zy({}),M=By(()=>{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(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(LN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?gMe(G7("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(V.Provider,{value:C,children:[G7("span",{ref:h,style:xMe,"data-shader-id":s,children:!f&&t.children}),R]})},j7=W7});var X7=z(()=>{"use strict";Y6()});var Q7={};vt(Q7,{ShaderComponent:()=>K7,default:()=>J7});import{useContext as _Me,useEffect as Vy,useId as SMe,useMemo as Gy,useRef as Hy,useState as $7}from"react";import{createPortal as wMe}from"react-dom";import{jsx as Y7,jsxs as MMe}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 TMe(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 EMe,CMe,Z7,K7,J7,zN=z(()=>{"use strict";mt();gt();yt();X7();EMe={display:"contents"},CMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Z7={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&&(Z7[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}K7=t=>{let e=_Me(V);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=SMe(),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(()=>TMe(t,Z7),[t]),d=Gy(()=>({...CMe,...t.transform}),[t.transform]),h=Hy(null),f=!!Zc.capturesDOM,g=Hy(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}));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=Hy(void 0),v=Hy(null);v.current===null&&(ae(a),v.current=de(Zc,u,s));let C=Gy(()=>({...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,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]),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 E=Hy({}),M=Gy(()=>{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(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(BN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?wMe(Y7("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(V.Provider,{value:C,children:[Y7("span",{ref:h,style:EMe,"data-shader-id":s,children:!f&&t.children}),R]})},J7=K7});var eq=z(()=>{"use strict";Z6()});var sq={};vt(sq,{ShaderComponent:()=>iq,default:()=>oq});import{useContext as RMe,useEffect as Wy,useId as AMe,useMemo as jy,useRef as qy,useState as tq}from"react";import{createPortal as PMe}from"react-dom";import{jsx as nq,jsxs as IMe}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 OMe(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 UMe,NMe,rq,iq,oq,GN=z(()=>{"use strict";mt();gt();yt();eq();UMe={display:"contents"},NMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},rq={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&&(rq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}iq=t=>{let e=RMe(V);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=AMe(),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(()=>OMe(t,rq),[t]),d=jy(()=>({...NMe,...t.transform}),[t.transform]),h=qy(null),f=!!Kc.capturesDOM,g=qy(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}));Wy(()=>{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&&(ae(a),v.current=de(Kc,u,s));let C=jy(()=>({...e,shaderParentId:s}),[e,s]);Wy(()=>{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]),Wy(()=>{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 E=qy({}),M=jy(()=>{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(Wy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Wy(()=>{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?PMe(nq("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 IMe(V.Provider,{value:C,children:[nq("span",{ref:h,style:UMe,"data-shader-id":s,children:!f&&t.children}),R]})},oq=iq});var aq=z(()=>{"use strict";K6()});var hq={};vt(hq,{ShaderComponent:()=>dq,default:()=>fq});import{useContext as DMe,useEffect as Xy,useId as FMe,useMemo as $y,useRef as Yy,useState as cq}from"react";import{createPortal as LMe}from"react-dom";import{jsx as lq,jsxs as kMe}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 BMe(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 zMe,VMe,uq,dq,fq,WN=z(()=>{"use strict";mt();gt();yt();aq();zMe={display:"contents"},VMe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},uq={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&&(uq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}dq=t=>{let e=DMe(V);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=$y(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=$y(()=>BMe(t,uq),[t]),d=$y(()=>({...VMe,...t.transform}),[t.transform]),h=Yy(null),f=!!Jc.capturesDOM,g=Yy(null),[y,_]=cq(!1),[b,S]=cq(()=>({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}));Xy(()=>{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&&(ae(a),v.current=de(Jc,u,s));let C=$y(()=>({...e,shaderParentId:s}),[e,s]);Xy(()=>{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]),Xy(()=>{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 E=Yy({}),M=$y(()=>{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(Xy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Xy(()=>{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?LMe(lq("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 kMe(V.Provider,{value:C,children:[lq("span",{ref:h,style:zMe,"data-shader-id":s,children:!f&&t.children}),R]})},fq=dq});var mq=z(()=>{"use strict";J6()});var bq={};vt(bq,{ShaderComponent:()=>vq,default:()=>xq});import{useContext as GMe,useEffect as Zy,useId as HMe,useMemo as Ky,useRef as Jy,useState as pq}from"react";import{createPortal as WMe}from"react-dom";import{jsx as gq,jsxs as jMe}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 qMe(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 XMe,$Me,yq,vq,xq,qN=z(()=>{"use strict";mt();gt();yt();mq();XMe={display:"contents"},$Me={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},yq={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&&(yq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}vq=t=>{let e=GMe(V);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=HMe(),s=Ky(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Ky(()=>qMe(t,yq),[t]),d=Ky(()=>({...$Me,...t.transform}),[t.transform]),h=Jy(null),f=!!Qc.capturesDOM,g=Jy(null),[y,_]=pq(!1),[b,S]=pq(()=>({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}));Zy(()=>{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=Jy(void 0),v=Jy(null);v.current===null&&(ae(a),v.current=de(Qc,u,s));let C=Ky(()=>({...e,shaderParentId:s}),[e,s]);Zy(()=>{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]),Zy(()=>{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 E=Jy({}),M=Ky(()=>{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(Zy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Zy(()=>{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?WMe(gq("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 jMe(V.Provider,{value:C,children:[gq("span",{ref:h,style:XMe,"data-shader-id":s,children:!f&&t.children}),R]})},xq=vq});var _q=z(()=>{"use strict";Q6()});var Cq={};vt(Cq,{ShaderComponent:()=>Tq,default:()=>Eq});import{useContext as YMe,useEffect as Qy,useId as ZMe,useMemo as ev,useRef as tv,useState as Sq}from"react";import{createPortal as KMe}from"react-dom";import{jsx as wq,jsxs as JMe}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 QMe(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 e1e,t1e,Mq,Tq,Eq,$N=z(()=>{"use strict";mt();gt();yt();_q();e1e={display:"contents"},t1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Mq={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&&(Mq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Tq=t=>{let e=YMe(V);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=ev(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ev(()=>QMe(t,Mq),[t]),d=ev(()=>({...t1e,...t.transform}),[t.transform]),h=tv(null),f=!!el.capturesDOM,g=tv(null),[y,_]=Sq(!1),[b,S]=Sq(()=>({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}));Qy(()=>{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=tv(void 0),v=tv(null);v.current===null&&(ae(a),v.current=de(el,u,s));let C=ev(()=>({...e,shaderParentId:s}),[e,s]);Qy(()=>{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]),Qy(()=>{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 E=tv({}),M=ev(()=>{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(Qy(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Qy(()=>{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?KMe(wq("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 JMe(V.Provider,{value:C,children:[wq("span",{ref:h,style:e1e,"data-shader-id":s,children:!f&&t.children}),R]})},Eq=Tq});var Rq=z(()=>{"use strict";n8()});var Nq={};vt(Nq,{ShaderComponent:()=>Oq,default:()=>Uq});import{useContext as n1e,useEffect as nv,useId as r1e,useMemo as rv,useRef as iv,useState as Aq}from"react";import{createPortal as i1e}from"react-dom";import{jsx as Pq,jsxs as o1e}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 s1e(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 a1e,c1e,Iq,Oq,Uq,ZN=z(()=>{"use strict";mt();gt();yt();Rq();a1e={display:"contents"},c1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Iq={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&&(Iq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Oq=t=>{let e=n1e(V);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(()=>s1e(t,Iq),[t]),d=rv(()=>({...c1e,...t.transform}),[t.transform]),h=iv(null),f=!!nl.capturesDOM,g=iv(null),[y,_]=Aq(!1),[b,S]=Aq(()=>({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}));nv(()=>{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=iv(void 0),v=iv(null);v.current===null&&(ae(a),v.current=de(nl,u,s));let C=rv(()=>({...e,shaderParentId:s}),[e,s]);nv(()=>{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]),nv(()=>{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 E=iv({}),M=rv(()=>{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(nv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),nv(()=>{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?i1e(Pq("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 o1e(V.Provider,{value:C,children:[Pq("span",{ref:h,style:a1e,"data-shader-id":s,children:!f&&t.children}),R]})},Uq=Oq});var Dq=z(()=>{"use strict";r8()});var Vq={};vt(Vq,{ShaderComponent:()=>Bq,default:()=>zq});import{useContext as l1e,useEffect as ov,useId as u1e,useMemo as sv,useRef as av,useState as Fq}from"react";import{createPortal as d1e}from"react-dom";import{jsx as Lq,jsxs as f1e}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 h1e(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 m1e,p1e,kq,Bq,zq,JN=z(()=>{"use strict";mt();gt();yt();Dq();m1e={display:"contents"},p1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},kq={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&&(kq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Bq=t=>{let e=l1e(V);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=u1e(),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(()=>h1e(t,kq),[t]),d=sv(()=>({...p1e,...t.transform}),[t.transform]),h=av(null),f=!!rl.capturesDOM,g=av(null),[y,_]=Fq(!1),[b,S]=Fq(()=>({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=av(void 0),v=av(null);v.current===null&&(ae(a),v.current=de(rl,u,s));let C=sv(()=>({...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,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]),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 E=av({}),M=sv(()=>{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(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(KN(T))return;T!==E.current[c]&&(i(s,c,T),E.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?d1e(Lq("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 f1e(V.Provider,{value:C,children:[Lq("span",{ref:h,style:m1e,"data-shader-id":s,children:!f&&t.children}),R]})},zq=Bq});var Gq=z(()=>{"use strict";i8()});var $q={};vt($q,{ShaderComponent:()=>qq,default:()=>Xq});import{useContext as g1e,useEffect as cv,useId as y1e,useMemo as lv,useRef as uv,useState as Hq}from"react";import{createPortal as v1e}from"react-dom";import{jsx as Wq,jsxs as x1e}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 b1e(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 _1e,S1e,jq,qq,Xq,e3=z(()=>{"use strict";mt();gt();yt();Gq();_1e={display:"contents"},S1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},jq={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&&(jq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}qq=t=>{let e=g1e(V);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(()=>b1e(t,jq),[t]),d=lv(()=>({...S1e,...t.transform}),[t.transform]),h=uv(null),f=!!il.capturesDOM,g=uv(null),[y,_]=Hq(!1),[b,S]=Hq(()=>({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}));cv(()=>{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=uv(void 0),v=uv(null);v.current===null&&(ae(a),v.current=de(il,u,s));let C=lv(()=>({...e,shaderParentId:s}),[e,s]);cv(()=>{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]),cv(()=>{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 E=uv({}),M=lv(()=>{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(cv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),cv(()=>{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?v1e(Wq("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 x1e(V.Provider,{value:C,children:[Wq("span",{ref:h,style:_1e,"data-shader-id":s,children:!f&&t.children}),R]})},Xq=qq});var Yq=z(()=>{"use strict";c8()});var tX={};vt(tX,{ShaderComponent:()=>Qq,default:()=>eX});import{useContext as w1e,useEffect as dv,useId as M1e,useMemo as fv,useRef as hv,useState as Zq}from"react";import{createPortal as T1e}from"react-dom";import{jsx as Kq,jsxs as E1e}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 C1e(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 R1e,A1e,Jq,Qq,eX,n3=z(()=>{"use strict";mt();gt();yt();Yq();R1e={display:"contents"},A1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Jq={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&&(Jq[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Qq=t=>{let e=w1e(V);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=fv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=fv(()=>C1e(t,Jq),[t]),d=fv(()=>({...A1e,...t.transform}),[t.transform]),h=hv(null),f=!!cl.capturesDOM,g=hv(null),[y,_]=Zq(!1),[b,S]=Zq(()=>({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}));dv(()=>{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=hv(void 0),v=hv(null);v.current===null&&(ae(a),v.current=de(cl,u,s));let C=fv(()=>({...e,shaderParentId:s}),[e,s]);dv(()=>{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]),dv(()=>{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 E=hv({}),M=fv(()=>{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(dv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),dv(()=>{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(Kq("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 E1e(V.Provider,{value:C,children:[Kq("span",{ref:h,style:R1e,"data-shader-id":s,children:!f&&t.children}),R]})},eX=Qq});var nX=z(()=>{"use strict";o8()});var cX={};vt(cX,{ShaderComponent:()=>sX,default:()=>aX});import{useContext as P1e,useEffect as mv,useId as I1e,useMemo as pv,useRef as gv,useState as rX}from"react";import{createPortal as O1e}from"react-dom";import{jsx as iX,jsxs as U1e}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 N1e(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 D1e,F1e,oX,sX,aX,i3=z(()=>{"use strict";mt();gt();yt();nX();D1e={display:"contents"},F1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},oX={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&&(oX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}sX=t=>{let e=P1e(V);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=I1e(),s=pv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=pv(()=>N1e(t,oX),[t]),d=pv(()=>({...F1e,...t.transform}),[t.transform]),h=gv(null),f=!!ol.capturesDOM,g=gv(null),[y,_]=rX(!1),[b,S]=rX(()=>({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=gv(void 0),v=gv(null);v.current===null&&(ae(a),v.current=de(ol,u,s));let C=pv(()=>({...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,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]),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 E=gv({}),M=pv(()=>{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(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(r3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?O1e(iX("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 U1e(V.Provider,{value:C,children:[iX("span",{ref:h,style:D1e,"data-shader-id":s,children:!f&&t.children}),R]})},aX=sX});var lX=z(()=>{"use strict";s8()});var pX={};vt(pX,{ShaderComponent:()=>hX,default:()=>mX});import{useContext as L1e,useEffect as yv,useId as k1e,useMemo as vv,useRef as xv,useState as uX}from"react";import{createPortal as B1e}from"react-dom";import{jsx as dX,jsxs as z1e}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 V1e(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 G1e,H1e,fX,hX,mX,s3=z(()=>{"use strict";mt();gt();yt();lX();G1e={display:"contents"},H1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},fX={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&&(fX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}hX=t=>{let e=L1e(V);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=k1e(),s=vv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=vv(()=>V1e(t,fX),[t]),d=vv(()=>({...H1e,...t.transform}),[t.transform]),h=xv(null),f=!!sl.capturesDOM,g=xv(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}));yv(()=>{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&&(ae(a),v.current=de(sl,u,s));let C=vv(()=>({...e,shaderParentId:s}),[e,s]);yv(()=>{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]),yv(()=>{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 E=xv({}),M=vv(()=>{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(yv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),yv(()=>{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?B1e(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 z1e(V.Provider,{value:C,children:[dX("span",{ref:h,style:G1e,"data-shader-id":s,children:!f&&t.children}),R]})},mX=hX});var gX=z(()=>{"use strict";a8()});var SX={};vt(SX,{ShaderComponent:()=>bX,default:()=>_X});import{useContext as W1e,useEffect as bv,useId as j1e,useMemo as _v,useRef as Sv,useState as yX}from"react";import{createPortal as q1e}from"react-dom";import{jsx as vX,jsxs as X1e}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 $1e(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 Y1e,Z1e,xX,bX,_X,c3=z(()=>{"use strict";mt();gt();yt();gX();Y1e={display:"contents"},Z1e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},xX={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&&(xX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}bX=t=>{let e=W1e(V);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=j1e(),s=_v(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=_v(()=>$1e(t,xX),[t]),d=_v(()=>({...Z1e,...t.transform}),[t.transform]),h=Sv(null),f=!!al.capturesDOM,g=Sv(null),[y,_]=yX(!1),[b,S]=yX(()=>({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=Sv(void 0),v=Sv(null);v.current===null&&(ae(a),v.current=de(al,u,s));let C=_v(()=>({...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,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]),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 E=Sv({}),M=_v(()=>{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(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(a3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?q1e(vX("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 X1e(V.Provider,{value:C,children:[vX("span",{ref:h,style:Y1e,"data-shader-id":s,children:!f&&t.children}),R]})},_X=bX});var wX=z(()=>{"use strict";l8()});var AX={};vt(AX,{ShaderComponent:()=>CX,default:()=>RX});import{useContext as K1e,useEffect as wv,useId as J1e,useMemo as Mv,useRef as Tv,useState as MX}from"react";import{createPortal as Q1e}from"react-dom";import{jsx as TX,jsxs as eTe}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 tTe(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 nTe,rTe,EX,CX,RX,u3=z(()=>{"use strict";mt();gt();yt();wX();nTe={display:"contents"},rTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},EX={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&&(EX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}CX=t=>{let e=K1e(V);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=J1e(),s=Mv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Mv(()=>tTe(t,EX),[t]),d=Mv(()=>({...rTe,...t.transform}),[t.transform]),h=Tv(null),f=!!ll.capturesDOM,g=Tv(null),[y,_]=MX(!1),[b,S]=MX(()=>({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}));wv(()=>{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=Tv(void 0),v=Tv(null);v.current===null&&(ae(a),v.current=de(ll,u,s));let C=Mv(()=>({...e,shaderParentId:s}),[e,s]);wv(()=>{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]),wv(()=>{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 E=Tv({}),M=Mv(()=>{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(wv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),wv(()=>{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?Q1e(TX("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 eTe(V.Provider,{value:C,children:[TX("span",{ref:h,style:nTe,"data-shader-id":s,children:!f&&t.children}),R]})},RX=CX});var PX=z(()=>{"use strict";f8()});var FX={};vt(FX,{ShaderComponent:()=>NX,default:()=>DX});import{useContext as iTe,useEffect as Ev,useId as oTe,useMemo as Cv,useRef as Rv,useState as IX}from"react";import{createPortal as sTe}from"react-dom";import{jsx as OX,jsxs as aTe}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 cTe(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 lTe,uTe,UX,NX,DX,f3=z(()=>{"use strict";mt();gt();yt();PX();lTe={display:"contents"},uTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},UX={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&&(UX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}NX=t=>{let e=iTe(V);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=oTe(),s=Cv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Cv(()=>cTe(t,UX),[t]),d=Cv(()=>({...uTe,...t.transform}),[t.transform]),h=Rv(null),f=!!ul.capturesDOM,g=Rv(null),[y,_]=IX(!1),[b,S]=IX(()=>({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=Rv(void 0),v=Rv(null);v.current===null&&(ae(a),v.current=de(ul,u,s));let C=Cv(()=>({...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,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]),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 E=Rv({}),M=Cv(()=>{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(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(d3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?sTe(OX("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 aTe(V.Provider,{value:C,children:[OX("span",{ref:h,style:lTe,"data-shader-id":s,children:!f&&t.children}),R]})},DX=NX});var LX=z(()=>{"use strict";h8()});var HX={};vt(HX,{ShaderComponent:()=>VX,default:()=>GX});import{useContext as dTe,useEffect as Av,useId as fTe,useMemo as Pv,useRef as Iv,useState as kX}from"react";import{createPortal as hTe}from"react-dom";import{jsx as BX,jsxs as mTe}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 pTe(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 gTe,yTe,zX,VX,GX,m3=z(()=>{"use strict";mt();gt();yt();LX();gTe={display:"contents"},yTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},zX={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&&(zX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}VX=t=>{let e=dTe(V);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=fTe(),s=Pv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Pv(()=>pTe(t,zX),[t]),d=Pv(()=>({...yTe,...t.transform}),[t.transform]),h=Iv(null),f=!!dl.capturesDOM,g=Iv(null),[y,_]=kX(!1),[b,S]=kX(()=>({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}));Av(()=>{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=Iv(void 0),v=Iv(null);v.current===null&&(ae(a),v.current=de(dl,u,s));let C=Pv(()=>({...e,shaderParentId:s}),[e,s]);Av(()=>{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]),Av(()=>{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 E=Iv({}),M=Pv(()=>{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(Av(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Av(()=>{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?hTe(BX("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 mTe(V.Provider,{value:C,children:[BX("span",{ref:h,style:gTe,"data-shader-id":s,children:!f&&t.children}),R]})},GX=VX});var WX=z(()=>{"use strict";m8()});var ZX={};vt(ZX,{ShaderComponent:()=>$X,default:()=>YX});import{useContext as vTe,useEffect as Ov,useId as xTe,useMemo as Uv,useRef as Nv,useState as jX}from"react";import{createPortal as bTe}from"react-dom";import{jsx as qX,jsxs as _Te}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 STe(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 wTe,MTe,XX,$X,YX,g3=z(()=>{"use strict";mt();gt();yt();WX();wTe={display:"contents"},MTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},XX={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&&(XX[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}$X=t=>{let e=vTe(V);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=xTe(),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(()=>STe(t,XX),[t]),d=Uv(()=>({...MTe,...t.transform}),[t.transform]),h=Nv(null),f=!!fl.capturesDOM,g=Nv(null),[y,_]=jX(!1),[b,S]=jX(()=>({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=Nv(void 0),v=Nv(null);v.current===null&&(ae(a),v.current=de(fl,u,s));let C=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,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]),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 E=Nv({}),M=Uv(()=>{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(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(p3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?bTe(qX("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 _Te(V.Provider,{value:C,children:[qX("span",{ref:h,style:wTe,"data-shader-id":s,children:!f&&t.children}),R]})},YX=$X});var KX=z(()=>{"use strict";g8()});var r$={};vt(r$,{ShaderComponent:()=>t$,default:()=>n$});import{useContext as TTe,useEffect as Dv,useId as ETe,useMemo as Fv,useRef as Lv,useState as JX}from"react";import{createPortal as CTe}from"react-dom";import{jsx as QX,jsxs as RTe}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 ATe(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 PTe,ITe,e$,t$,n$,v3=z(()=>{"use strict";mt();gt();yt();KX();PTe={display:"contents"},ITe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},e$={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&&(e$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}t$=t=>{let e=TTe(V);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=ETe(),s=Fv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Fv(()=>ATe(t,e$),[t]),d=Fv(()=>({...ITe,...t.transform}),[t.transform]),h=Lv(null),f=!!hl.capturesDOM,g=Lv(null),[y,_]=JX(!1),[b,S]=JX(()=>({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}));Dv(()=>{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=Lv(void 0),v=Lv(null);v.current===null&&(ae(a),v.current=de(hl,u,s));let C=Fv(()=>({...e,shaderParentId:s}),[e,s]);Dv(()=>{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]),Dv(()=>{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 E=Lv({}),M=Fv(()=>{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(Dv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Dv(()=>{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?CTe(QX("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 RTe(V.Provider,{value:C,children:[QX("span",{ref:h,style:PTe,"data-shader-id":s,children:!f&&t.children}),R]})},n$=t$});var i$=z(()=>{"use strict";y8()});var u$={};vt(u$,{ShaderComponent:()=>c$,default:()=>l$});import{useContext as OTe,useEffect as kv,useId as UTe,useMemo as Bv,useRef as zv,useState as o$}from"react";import{createPortal as NTe}from"react-dom";import{jsx as s$,jsxs as DTe}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 FTe(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 LTe,kTe,a$,c$,l$,b3=z(()=>{"use strict";mt();gt();yt();i$();LTe={display:"contents"},kTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},a$={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&&(a$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}c$=t=>{let e=OTe(V);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=UTe(),s=Bv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Bv(()=>FTe(t,a$),[t]),d=Bv(()=>({...kTe,...t.transform}),[t.transform]),h=zv(null),f=!!ml.capturesDOM,g=zv(null),[y,_]=o$(!1),[b,S]=o$(()=>({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=zv(void 0),v=zv(null);v.current===null&&(ae(a),v.current=de(ml,u,s));let C=Bv(()=>({...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,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]),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 E=zv({}),M=Bv(()=>{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(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(x3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?NTe(s$("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(V.Provider,{value:C,children:[s$("span",{ref:h,style:LTe,"data-shader-id":s,children:!f&&t.children}),R]})},l$=c$});var d$=z(()=>{"use strict";v8()});var y$={};vt(y$,{ShaderComponent:()=>p$,default:()=>g$});import{useContext as BTe,useEffect as Vv,useId as zTe,useMemo as Gv,useRef as Hv,useState as f$}from"react";import{createPortal as VTe}from"react-dom";import{jsx as h$,jsxs as GTe}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 HTe(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 WTe,jTe,m$,p$,g$,S3=z(()=>{"use strict";mt();gt();yt();d$();WTe={display:"contents"},jTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},m$={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&&(m$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}p$=t=>{let e=BTe(V);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=zTe(),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(()=>HTe(t,m$),[t]),d=Gv(()=>({...jTe,...t.transform}),[t.transform]),h=Hv(null),f=!!pl.capturesDOM,g=Hv(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}));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=Hv(void 0),v=Hv(null);v.current===null&&(ae(a),v.current=de(pl,u,s));let C=Gv(()=>({...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,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]),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 E=Hv({}),M=Gv(()=>{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(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(_3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?VTe(h$("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 GTe(V.Provider,{value:C,children:[h$("span",{ref:h,style:WTe,"data-shader-id":s,children:!f&&t.children}),R]})},g$=p$});var v$=z(()=>{"use strict";x8()});var M$={};vt(M$,{ShaderComponent:()=>S$,default:()=>w$});import{useContext as qTe,useEffect as Wv,useId as XTe,useMemo as jv,useRef as qv,useState as x$}from"react";import{createPortal as $Te}from"react-dom";import{jsx as b$,jsxs as YTe}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 ZTe(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 KTe,JTe,_$,S$,w$,M3=z(()=>{"use strict";mt();gt();yt();v$();KTe={display:"contents"},JTe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},_$={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&&(_$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}S$=t=>{let e=qTe(V);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=XTe(),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(()=>ZTe(t,_$),[t]),d=jv(()=>({...JTe,...t.transform}),[t.transform]),h=qv(null),f=!!gl.capturesDOM,g=qv(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}));Wv(()=>{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&&(ae(a),v.current=de(gl,u,s));let C=jv(()=>({...e,shaderParentId:s}),[e,s]);Wv(()=>{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]),Wv(()=>{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 E=qv({}),M=jv(()=>{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(Wv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Wv(()=>{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?$Te(b$("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 YTe(V.Provider,{value:C,children:[b$("span",{ref:h,style:KTe,"data-shader-id":s,children:!f&&t.children}),R]})},w$=S$});var T$=z(()=>{"use strict";S8()});var I$={};vt(I$,{ShaderComponent:()=>A$,default:()=>P$});import{useContext as QTe,useEffect as Xv,useId as eEe,useMemo as $v,useRef as Yv,useState as E$}from"react";import{createPortal as tEe}from"react-dom";import{jsx as C$,jsxs as nEe}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 rEe(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 iEe,oEe,R$,A$,P$,E3=z(()=>{"use strict";mt();gt();yt();T$();iEe={display:"contents"},oEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},R$={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&&(R$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}A$=t=>{let e=QTe(V);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=$v(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=$v(()=>rEe(t,R$),[t]),d=$v(()=>({...oEe,...t.transform}),[t.transform]),h=Yv(null),f=!!yl.capturesDOM,g=Yv(null),[y,_]=E$(!1),[b,S]=E$(()=>({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}));Xv(()=>{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&&(ae(a),v.current=de(yl,u,s));let C=$v(()=>({...e,shaderParentId:s}),[e,s]);Xv(()=>{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]),Xv(()=>{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 E=Yv({}),M=$v(()=>{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(Xv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Xv(()=>{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?tEe(C$("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 nEe(V.Provider,{value:C,children:[C$("span",{ref:h,style:iEe,"data-shader-id":s,children:!f&&t.children}),R]})},P$=A$});var O$=z(()=>{"use strict";M8()});var k$={};vt(k$,{ShaderComponent:()=>F$,default:()=>L$});import{useContext as sEe,useEffect as Zv,useId as aEe,useMemo as Kv,useRef as Jv,useState as U$}from"react";import{createPortal as cEe}from"react-dom";import{jsx as N$,jsxs as lEe}from"react/jsx-runtime";function C3(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 uEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!C3(i)&&(n[r]=i);return n}var dEe,fEe,D$,F$,L$,R3=z(()=>{"use strict";mt();gt();yt();O$();dEe={display:"contents"},fEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},D$={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&&(D$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}F$=t=>{let e=sEe(V);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=aEe(),s=Kv(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Kv(()=>uEe(t,D$),[t]),d=Kv(()=>({...fEe,...t.transform}),[t.transform]),h=Jv(null),f=!!xl.capturesDOM,g=Jv(null),[y,_]=U$(!1),[b,S]=U$(()=>({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}));Zv(()=>{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=Jv(void 0),v=Jv(null);v.current===null&&(ae(a),v.current=de(xl,u,s));let C=Kv(()=>({...e,shaderParentId:s}),[e,s]);Zv(()=>{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]),Zv(()=>{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 E=Jv({}),M=Kv(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&C3(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Zv(()=>{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(C3(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Zv(()=>{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?cEe(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 lEe(V.Provider,{value:C,children:[N$("span",{ref:h,style:dEe,"data-shader-id":s,children:!f&&t.children}),R]})},L$=F$});var B$=z(()=>{"use strict";w8()});var j$={};vt(j$,{ShaderComponent:()=>H$,default:()=>W$});import{useContext as hEe,useEffect as Qv,useId as mEe,useMemo as ex,useRef as tx,useState as z$}from"react";import{createPortal as pEe}from"react-dom";import{jsx as V$,jsxs as gEe}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 yEe(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 vEe,xEe,G$,H$,W$,P3=z(()=>{"use strict";mt();gt();yt();B$();vEe={display:"contents"},xEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},G$={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&&(G$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}H$=t=>{let e=hEe(V);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=mEe(),s=ex(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ex(()=>yEe(t,G$),[t]),d=ex(()=>({...xEe,...t.transform}),[t.transform]),h=tx(null),f=!!vl.capturesDOM,g=tx(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}));Qv(()=>{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=tx(void 0),v=tx(null);v.current===null&&(ae(a),v.current=de(vl,u,s));let C=ex(()=>({...e,shaderParentId:s}),[e,s]);Qv(()=>{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]),Qv(()=>{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 E=tx({}),M=ex(()=>{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(Qv(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Qv(()=>{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?pEe(V$("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 gEe(V.Provider,{value:C,children:[V$("span",{ref:h,style:vEe,"data-shader-id":s,children:!f&&t.children}),R]})},W$=H$});var q$=z(()=>{"use strict";T8()});var J$={};vt(J$,{ShaderComponent:()=>Z$,default:()=>K$});import{useContext as bEe,useEffect as nx,useId as _Ee,useMemo as rx,useRef as ix,useState as X$}from"react";import{createPortal as SEe}from"react-dom";import{jsx as $$,jsxs as wEe}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 MEe(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 TEe,EEe,Y$,Z$,K$,O3=z(()=>{"use strict";mt();gt();yt();q$();TEe={display:"contents"},EEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Y$={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&&(Y$[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Z$=t=>{let e=bEe(V);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=rx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=rx(()=>MEe(t,Y$),[t]),d=rx(()=>({...EEe,...t.transform}),[t.transform]),h=ix(null),f=!!bl.capturesDOM,g=ix(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}));nx(()=>{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=ix(void 0),v=ix(null);v.current===null&&(ae(a),v.current=de(bl,u,s));let C=rx(()=>({...e,shaderParentId:s}),[e,s]);nx(()=>{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]),nx(()=>{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 E=ix({}),M=rx(()=>{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(nx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),nx(()=>{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?SEe($$("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 wEe(V.Provider,{value:C,children:[$$("span",{ref:h,style:TEe,"data-shader-id":s,children:!f&&t.children}),R]})},K$=Z$});var Q$=z(()=>{"use strict";E8()});var oY={};vt(oY,{ShaderComponent:()=>rY,default:()=>iY});import{useContext as CEe,useEffect as ox,useId as REe,useMemo as sx,useRef as ax,useState as eY}from"react";import{createPortal as AEe}from"react-dom";import{jsx as tY,jsxs as PEe}from"react/jsx-runtime";function U3(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 IEe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!U3(i)&&(n[r]=i);return n}var OEe,UEe,nY,rY,iY,N3=z(()=>{"use strict";mt();gt();yt();Q$();OEe={display:"contents"},UEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},nY={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&&(nY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}rY=t=>{let e=CEe(V);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=REe(),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(()=>IEe(t,nY),[t]),d=sx(()=>({...UEe,...t.transform}),[t.transform]),h=ax(null),f=!!_l.capturesDOM,g=ax(null),[y,_]=eY(!1),[b,S]=eY(()=>({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=ax(void 0),v=ax(null);v.current===null&&(ae(a),v.current=de(_l,u,s));let C=sx(()=>({...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,_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]),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 E=ax({}),M=sx(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&U3(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(U3(T))return;T!==E.current[c]&&(i(s,c,T),E.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(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 PEe(V.Provider,{value:C,children:[tY("span",{ref:h,style:OEe,"data-shader-id":s,children:!f&&t.children}),R]})},iY=rY});var sY=z(()=>{"use strict";A8()});var fY={};vt(fY,{ShaderComponent:()=>uY,default:()=>dY});import{useContext as NEe,useEffect as cx,useId as DEe,useMemo as lx,useRef as ux,useState as aY}from"react";import{createPortal as FEe}from"react-dom";import{jsx as cY,jsxs as LEe}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 kEe(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 BEe,zEe,lY,uY,dY,F3=z(()=>{"use strict";mt();gt();yt();sY();BEe={display:"contents"},zEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},lY={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&&(lY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}uY=t=>{let e=NEe(V);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=DEe(),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(()=>kEe(t,lY),[t]),d=lx(()=>({...zEe,...t.transform}),[t.transform]),h=ux(null),f=!!Sl.capturesDOM,g=ux(null),[y,_]=aY(!1),[b,S]=aY(()=>({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}));cx(()=>{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=ux(void 0),v=ux(null);v.current===null&&(ae(a),v.current=de(Sl,u,s));let C=lx(()=>({...e,shaderParentId:s}),[e,s]);cx(()=>{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]),cx(()=>{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 E=ux({}),M=lx(()=>{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(cx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),cx(()=>{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?FEe(cY("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 LEe(V.Provider,{value:C,children:[cY("span",{ref:h,style:BEe,"data-shader-id":s,children:!f&&t.children}),R]})},dY=uY});var hY=z(()=>{"use strict";I8()});var xY={};vt(xY,{ShaderComponent:()=>yY,default:()=>vY});import{useContext as VEe,useEffect as dx,useId as GEe,useMemo as fx,useRef as hx,useState as mY}from"react";import{createPortal as HEe}from"react-dom";import{jsx as pY,jsxs as WEe}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 jEe(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 qEe,XEe,gY,yY,vY,k3=z(()=>{"use strict";mt();gt();yt();hY();qEe={display:"contents"},XEe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},gY={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&&(gY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}yY=t=>{let e=VEe(V);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=GEe(),s=fx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=fx(()=>jEe(t,gY),[t]),d=fx(()=>({...XEe,...t.transform}),[t.transform]),h=hx(null),f=!!wl.capturesDOM,g=hx(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}));dx(()=>{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=hx(void 0),v=hx(null);v.current===null&&(ae(a),v.current=de(wl,u,s));let C=fx(()=>({...e,shaderParentId:s}),[e,s]);dx(()=>{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]),dx(()=>{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 E=hx({}),M=fx(()=>{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(dx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),dx(()=>{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?HEe(pY("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 WEe(V.Provider,{value:C,children:[pY("span",{ref:h,style:qEe,"data-shader-id":s,children:!f&&t.children}),R]})},vY=yY});var bY=z(()=>{"use strict";U8()});var EY={};vt(EY,{ShaderComponent:()=>MY,default:()=>TY});import{useContext as $Ee,useEffect as mx,useId as YEe,useMemo as px,useRef as gx,useState as _Y}from"react";import{createPortal as ZEe}from"react-dom";import{jsx as SY,jsxs as KEe}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 JEe(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 QEe,eCe,wY,MY,TY,z3=z(()=>{"use strict";mt();gt();yt();bY();QEe={display:"contents"},eCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},wY={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&&(wY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}MY=t=>{let e=$Ee(V);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=YEe(),s=px(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=px(()=>JEe(t,wY),[t]),d=px(()=>({...eCe,...t.transform}),[t.transform]),h=gx(null),f=!!Ml.capturesDOM,g=gx(null),[y,_]=_Y(!1),[b,S]=_Y(()=>({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=gx(void 0),v=gx(null);v.current===null&&(ae(a),v.current=de(Ml,u,s));let C=px(()=>({...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,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]),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 E=gx({}),M=px(()=>{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(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(B3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?ZEe(SY("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 KEe(V.Provider,{value:C,children:[SY("span",{ref:h,style:QEe,"data-shader-id":s,children:!f&&t.children}),R]})},TY=MY});var CY=z(()=>{"use strict";F8()});var UY={};vt(UY,{ShaderComponent:()=>IY,default:()=>OY});import{useContext as tCe,useEffect as yx,useId as nCe,useMemo as vx,useRef as xx,useState as RY}from"react";import{createPortal as rCe}from"react-dom";import{jsx as AY,jsxs as iCe}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 oCe(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 sCe,aCe,PY,IY,OY,G3=z(()=>{"use strict";mt();gt();yt();CY();sCe={display:"contents"},aCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},PY={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&&(PY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}IY=t=>{let e=tCe(V);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=vx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=vx(()=>oCe(t,PY),[t]),d=vx(()=>({...aCe,...t.transform}),[t.transform]),h=xx(null),f=!!Tl.capturesDOM,g=xx(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}));yx(()=>{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&&(ae(a),v.current=de(Tl,u,s));let C=vx(()=>({...e,shaderParentId:s}),[e,s]);yx(()=>{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]),yx(()=>{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 E=xx({}),M=vx(()=>{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(yx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),yx(()=>{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?rCe(AY("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 iCe(V.Provider,{value:C,children:[AY("span",{ref:h,style:sCe,"data-shader-id":s,children:!f&&t.children}),R]})},OY=IY});var NY=z(()=>{"use strict";L8()});var zY={};vt(zY,{ShaderComponent:()=>kY,default:()=>BY});import{useContext as cCe,useEffect as bx,useId as lCe,useMemo as _x,useRef as Sx,useState as DY}from"react";import{createPortal as uCe}from"react-dom";import{jsx as FY,jsxs as dCe}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 fCe(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 hCe,mCe,LY,kY,BY,W3=z(()=>{"use strict";mt();gt();yt();NY();hCe={display:"contents"},mCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},LY={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&&(LY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}kY=t=>{let e=cCe(V);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=lCe(),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(()=>fCe(t,LY),[t]),d=_x(()=>({...mCe,...t.transform}),[t.transform]),h=Sx(null),f=!!El.capturesDOM,g=Sx(null),[y,_]=DY(!1),[b,S]=DY(()=>({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=Sx(void 0),v=Sx(null);v.current===null&&(ae(a),v.current=de(El,u,s));let C=_x(()=>({...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,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]),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 E=Sx({}),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(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(H3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?uCe(FY("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 dCe(V.Provider,{value:C,children:[FY("span",{ref:h,style:hCe,"data-shader-id":s,children:!f&&t.children}),R]})},BY=kY});var VY=z(()=>{"use strict";k8()});var XY={};vt(XY,{ShaderComponent:()=>jY,default:()=>qY});import{useContext as pCe,useEffect as wx,useId as gCe,useMemo as Mx,useRef as Tx,useState as GY}from"react";import{createPortal as yCe}from"react-dom";import{jsx as HY,jsxs as vCe}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 xCe(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 bCe,_Ce,WY,jY,qY,q3=z(()=>{"use strict";mt();gt();yt();VY();bCe={display:"contents"},_Ce={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},WY={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&&(WY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}jY=t=>{let e=pCe(V);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=gCe(),s=Mx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Mx(()=>xCe(t,WY),[t]),d=Mx(()=>({..._Ce,...t.transform}),[t.transform]),h=Tx(null),f=!!Cl.capturesDOM,g=Tx(null),[y,_]=GY(!1),[b,S]=GY(()=>({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}));wx(()=>{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=Tx(void 0),v=Tx(null);v.current===null&&(ae(a),v.current=de(Cl,u,s));let C=Mx(()=>({...e,shaderParentId:s}),[e,s]);wx(()=>{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]),wx(()=>{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 E=Tx({}),M=Mx(()=>{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(wx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),wx(()=>{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?yCe(HY("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(V.Provider,{value:C,children:[HY("span",{ref:h,style:bCe,"data-shader-id":s,children:!f&&t.children}),R]})},qY=jY});var $Y=z(()=>{"use strict";B8()});var eZ={};vt(eZ,{ShaderComponent:()=>JY,default:()=>QY});import{useContext as SCe,useEffect as Ex,useId as wCe,useMemo as Cx,useRef as Rx,useState as YY}from"react";import{createPortal as MCe}from"react-dom";import{jsx as ZY,jsxs as TCe}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 ECe(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 CCe,RCe,KY,JY,QY,$3=z(()=>{"use strict";mt();gt();yt();$Y();CCe={display:"contents"},RCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},KY={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&&(KY[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}JY=t=>{let e=SCe(V);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=wCe(),s=Cx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Cx(()=>ECe(t,KY),[t]),d=Cx(()=>({...RCe,...t.transform}),[t.transform]),h=Rx(null),f=!!Rl.capturesDOM,g=Rx(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}));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=Rx(void 0),v=Rx(null);v.current===null&&(ae(a),v.current=de(Rl,u,s));let C=Cx(()=>({...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,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]),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 E=Rx({}),M=Cx(()=>{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(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(X3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?MCe(ZY("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 TCe(V.Provider,{value:C,children:[ZY("span",{ref:h,style:CCe,"data-shader-id":s,children:!f&&t.children}),R]})},QY=JY});var tZ=z(()=>{"use strict";z8()});var aZ={};vt(aZ,{ShaderComponent:()=>oZ,default:()=>sZ});import{useContext as ACe,useEffect as Ax,useId as PCe,useMemo as Px,useRef as Ix,useState as nZ}from"react";import{createPortal as ICe}from"react-dom";import{jsx as rZ,jsxs as OCe}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 UCe(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 NCe,DCe,iZ,oZ,sZ,Z3=z(()=>{"use strict";mt();gt();yt();tZ();NCe={display:"contents"},DCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},iZ={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&&(iZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}oZ=t=>{let e=ACe(V);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=PCe(),s=Px(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Px(()=>UCe(t,iZ),[t]),d=Px(()=>({...DCe,...t.transform}),[t.transform]),h=Ix(null),f=!!Al.capturesDOM,g=Ix(null),[y,_]=nZ(!1),[b,S]=nZ(()=>({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}));Ax(()=>{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=Ix(void 0),v=Ix(null);v.current===null&&(ae(a),v.current=de(Al,u,s));let C=Px(()=>({...e,shaderParentId:s}),[e,s]);Ax(()=>{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]),Ax(()=>{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 E=Ix({}),M=Px(()=>{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(Ax(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ax(()=>{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?ICe(rZ("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 OCe(V.Provider,{value:C,children:[rZ("span",{ref:h,style:NCe,"data-shader-id":s,children:!f&&t.children}),R]})},sZ=oZ});var cZ=z(()=>{"use strict";V8()});var mZ={};vt(mZ,{ShaderComponent:()=>fZ,default:()=>hZ});import{useContext as FCe,useEffect as Ox,useId as LCe,useMemo as Ux,useRef as Nx,useState as lZ}from"react";import{createPortal as kCe}from"react-dom";import{jsx as uZ,jsxs as BCe}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 zCe(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 VCe,GCe,dZ,fZ,hZ,J3=z(()=>{"use strict";mt();gt();yt();cZ();VCe={display:"contents"},GCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},dZ={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&&(dZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}fZ=t=>{let e=FCe(V);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=LCe(),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(()=>zCe(t,dZ),[t]),d=Ux(()=>({...GCe,...t.transform}),[t.transform]),h=Nx(null),f=!!Pl.capturesDOM,g=Nx(null),[y,_]=lZ(!1),[b,S]=lZ(()=>({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=Nx(void 0),v=Nx(null);v.current===null&&(ae(a),v.current=de(Pl,u,s));let C=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,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]),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 E=Nx({}),M=Ux(()=>{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(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(K3(T))return;T!==E.current[c]&&(i(s,c,T),E.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?kCe(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 BCe(V.Provider,{value:C,children:[uZ("span",{ref:h,style:VCe,"data-shader-id":s,children:!f&&t.children}),R]})},hZ=fZ});var pZ=z(()=>{"use strict";G8()});var _Z={};vt(_Z,{ShaderComponent:()=>xZ,default:()=>bZ});import{useContext as HCe,useEffect as Dx,useId as WCe,useMemo as Fx,useRef as Lx,useState as gZ}from"react";import{createPortal as jCe}from"react-dom";import{jsx as yZ,jsxs as qCe}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 XCe(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 $Ce,YCe,vZ,xZ,bZ,eD=z(()=>{"use strict";mt();gt();yt();pZ();$Ce={display:"contents"},YCe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},vZ={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&&(vZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}xZ=t=>{let e=HCe(V);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=WCe(),s=Fx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Fx(()=>XCe(t,vZ),[t]),d=Fx(()=>({...YCe,...t.transform}),[t.transform]),h=Lx(null),f=!!Il.capturesDOM,g=Lx(null),[y,_]=gZ(!1),[b,S]=gZ(()=>({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}));Dx(()=>{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=Lx(void 0),v=Lx(null);v.current===null&&(ae(a),v.current=de(Il,u,s));let C=Fx(()=>({...e,shaderParentId:s}),[e,s]);Dx(()=>{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]),Dx(()=>{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 E=Lx({}),M=Fx(()=>{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(Dx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Dx(()=>{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?jCe(yZ("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 qCe(V.Provider,{value:C,children:[yZ("span",{ref:h,style:$Ce,"data-shader-id":s,children:!f&&t.children}),R]})},bZ=xZ});var SZ=z(()=>{"use strict";W8()});var RZ={};vt(RZ,{ShaderComponent:()=>EZ,default:()=>CZ});import{useContext as ZCe,useEffect as kx,useId as KCe,useMemo as Bx,useRef as zx,useState as wZ}from"react";import{createPortal as JCe}from"react-dom";import{jsx as MZ,jsxs as QCe}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 eRe(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 tRe,nRe,TZ,EZ,CZ,nD=z(()=>{"use strict";mt();gt();yt();SZ();tRe={display:"contents"},nRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},TZ={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&&(TZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}EZ=t=>{let e=ZCe(V);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=KCe(),s=Bx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Bx(()=>eRe(t,TZ),[t]),d=Bx(()=>({...nRe,...t.transform}),[t.transform]),h=zx(null),f=!!Ol.capturesDOM,g=zx(null),[y,_]=wZ(!1),[b,S]=wZ(()=>({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=zx(void 0),v=zx(null);v.current===null&&(ae(a),v.current=de(Ol,u,s));let C=Bx(()=>({...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,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]),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 E=zx({}),M=Bx(()=>{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(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(tD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?JCe(MZ("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 QCe(V.Provider,{value:C,children:[MZ("span",{ref:h,style:tRe,"data-shader-id":s,children:!f&&t.children}),R]})},CZ=EZ});var AZ=z(()=>{"use strict";j8()});var DZ={};vt(DZ,{ShaderComponent:()=>UZ,default:()=>NZ});import{useContext as rRe,useEffect as Vx,useId as iRe,useMemo as Gx,useRef as Hx,useState as PZ}from"react";import{createPortal as oRe}from"react-dom";import{jsx as IZ,jsxs as sRe}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 aRe(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 cRe,lRe,OZ,UZ,NZ,iD=z(()=>{"use strict";mt();gt();yt();AZ();cRe={display:"contents"},lRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},OZ={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&&(OZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}UZ=t=>{let e=rRe(V);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=iRe(),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(()=>aRe(t,OZ),[t]),d=Gx(()=>({...lRe,...t.transform}),[t.transform]),h=Hx(null),f=!!Ul.capturesDOM,g=Hx(null),[y,_]=PZ(!1),[b,S]=PZ(()=>({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=Hx(void 0),v=Hx(null);v.current===null&&(ae(a),v.current=de(Ul,u,s));let C=Gx(()=>({...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,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]),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 E=Hx({}),M=Gx(()=>{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(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(rD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?oRe(IZ("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 sRe(V.Provider,{value:C,children:[IZ("span",{ref:h,style:cRe,"data-shader-id":s,children:!f&&t.children}),R]})},NZ=UZ});var FZ=z(()=>{"use strict";q8()});var GZ={};vt(GZ,{ShaderComponent:()=>zZ,default:()=>VZ});import{useContext as uRe,useEffect as Wx,useId as dRe,useMemo as jx,useRef as qx,useState as LZ}from"react";import{createPortal as fRe}from"react-dom";import{jsx as kZ,jsxs as hRe}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 mRe(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 pRe,gRe,BZ,zZ,VZ,sD=z(()=>{"use strict";mt();gt();yt();FZ();pRe={display:"contents"},gRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},BZ={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&&(BZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}zZ=t=>{let e=uRe(V);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=dRe(),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(()=>mRe(t,BZ),[t]),d=jx(()=>({...gRe,...t.transform}),[t.transform]),h=qx(null),f=!!Nl.capturesDOM,g=qx(null),[y,_]=LZ(!1),[b,S]=LZ(()=>({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}));Wx(()=>{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&&(ae(a),v.current=de(Nl,u,s));let C=jx(()=>({...e,shaderParentId:s}),[e,s]);Wx(()=>{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]),Wx(()=>{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 E=qx({}),M=jx(()=>{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(Wx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Wx(()=>{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?fRe(kZ("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 hRe(V.Provider,{value:C,children:[kZ("span",{ref:h,style:pRe,"data-shader-id":s,children:!f&&t.children}),R]})},VZ=zZ});var HZ=z(()=>{"use strict";X8()});var YZ={};vt(YZ,{ShaderComponent:()=>XZ,default:()=>$Z});import{useContext as yRe,useEffect as Xx,useId as vRe,useMemo as $x,useRef as Yx,useState as WZ}from"react";import{createPortal as xRe}from"react-dom";import{jsx as jZ,jsxs as bRe}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 _Re(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 SRe,wRe,qZ,XZ,$Z,cD=z(()=>{"use strict";mt();gt();yt();HZ();SRe={display:"contents"},wRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},qZ={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&&(qZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}XZ=t=>{let e=yRe(V);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=vRe(),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(()=>_Re(t,qZ),[t]),d=$x(()=>({...wRe,...t.transform}),[t.transform]),h=Yx(null),f=!!Dl.capturesDOM,g=Yx(null),[y,_]=WZ(!1),[b,S]=WZ(()=>({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}));Xx(()=>{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&&(ae(a),v.current=de(Dl,u,s));let C=$x(()=>({...e,shaderParentId:s}),[e,s]);Xx(()=>{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]),Xx(()=>{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 E=Yx({}),M=$x(()=>{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(Xx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Xx(()=>{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?xRe(jZ("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 bRe(V.Provider,{value:C,children:[jZ("span",{ref:h,style:SRe,"data-shader-id":s,children:!f&&t.children}),R]})},$Z=XZ});var ZZ=z(()=>{"use strict";$8()});var nK={};vt(nK,{ShaderComponent:()=>eK,default:()=>tK});import{useContext as MRe,useEffect as Zx,useId as TRe,useMemo as Kx,useRef as Jx,useState as KZ}from"react";import{createPortal as ERe}from"react-dom";import{jsx as JZ,jsxs as CRe}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 RRe(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 ARe,PRe,QZ,eK,tK,uD=z(()=>{"use strict";mt();gt();yt();ZZ();ARe={display:"contents"},PRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},QZ={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&&(QZ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}eK=t=>{let e=MRe(V);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=Kx(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Kx(()=>RRe(t,QZ),[t]),d=Kx(()=>({...PRe,...t.transform}),[t.transform]),h=Jx(null),f=!!Fl.capturesDOM,g=Jx(null),[y,_]=KZ(!1),[b,S]=KZ(()=>({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}));Zx(()=>{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=Jx(void 0),v=Jx(null);v.current===null&&(ae(a),v.current=de(Fl,u,s));let C=Kx(()=>({...e,shaderParentId:s}),[e,s]);Zx(()=>{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]),Zx(()=>{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 E=Jx({}),M=Kx(()=>{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(Zx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Zx(()=>{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?ERe(JZ("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 CRe(V.Provider,{value:C,children:[JZ("span",{ref:h,style:ARe,"data-shader-id":s,children:!f&&t.children}),R]})},tK=eK});var rK=z(()=>{"use strict";Y8()});var lK={};vt(lK,{ShaderComponent:()=>aK,default:()=>cK});import{useContext as IRe,useEffect as Qx,useId as ORe,useMemo as eb,useRef as tb,useState as iK}from"react";import{createPortal as URe}from"react-dom";import{jsx as oK,jsxs as NRe}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 DRe(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 FRe,LRe,sK,aK,cK,fD=z(()=>{"use strict";mt();gt();yt();rK();FRe={display:"contents"},LRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},sK={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&&(sK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}aK=t=>{let e=IRe(V);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=ORe(),s=eb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=eb(()=>DRe(t,sK),[t]),d=eb(()=>({...LRe,...t.transform}),[t.transform]),h=tb(null),f=!!Ll.capturesDOM,g=tb(null),[y,_]=iK(!1),[b,S]=iK(()=>({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}));Qx(()=>{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=tb(void 0),v=tb(null);v.current===null&&(ae(a),v.current=de(Ll,u,s));let C=eb(()=>({...e,shaderParentId:s}),[e,s]);Qx(()=>{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]),Qx(()=>{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 E=tb({}),M=eb(()=>{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(Qx(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Qx(()=>{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?URe(oK("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 NRe(V.Provider,{value:C,children:[oK("span",{ref:h,style:FRe,"data-shader-id":s,children:!f&&t.children}),R]})},cK=aK});var uK=z(()=>{"use strict";Z8()});var gK={};vt(gK,{ShaderComponent:()=>mK,default:()=>pK});import{useContext as kRe,useEffect as nb,useId as BRe,useMemo as rb,useRef as ib,useState as dK}from"react";import{createPortal as zRe}from"react-dom";import{jsx as fK,jsxs as VRe}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 GRe(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 HRe,WRe,hK,mK,pK,mD=z(()=>{"use strict";mt();gt();yt();uK();HRe={display:"contents"},WRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},hK={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&&(hK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}mK=t=>{let e=kRe(V);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=BRe(),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(()=>GRe(t,hK),[t]),d=rb(()=>({...WRe,...t.transform}),[t.transform]),h=ib(null),f=!!kl.capturesDOM,g=ib(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}));nb(()=>{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=ib(void 0),v=ib(null);v.current===null&&(ae(a),v.current=de(kl,u,s));let C=rb(()=>({...e,shaderParentId:s}),[e,s]);nb(()=>{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]),nb(()=>{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 E=ib({}),M=rb(()=>{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(nb(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),nb(()=>{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?zRe(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 VRe(V.Provider,{value:C,children:[fK("span",{ref:h,style:HRe,"data-shader-id":s,children:!f&&t.children}),R]})},pK=mK});var yK=z(()=>{"use strict";K8()});var wK={};vt(wK,{ShaderComponent:()=>_K,default:()=>SK});import{useContext as jRe,useEffect as ob,useId as qRe,useMemo as sb,useRef as ab,useState as vK}from"react";import{createPortal as XRe}from"react-dom";import{jsx as xK,jsxs as $Re}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 YRe(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 ZRe,KRe,bK,_K,SK,gD=z(()=>{"use strict";mt();gt();yt();yK();ZRe={display:"contents"},KRe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},bK={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&&(bK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}_K=t=>{let e=jRe(V);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=qRe(),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(()=>YRe(t,bK),[t]),d=sb(()=>({...KRe,...t.transform}),[t.transform]),h=ab(null),f=!!Bl.capturesDOM,g=ab(null),[y,_]=vK(!1),[b,S]=vK(()=>({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=ab(void 0),v=ab(null);v.current===null&&(ae(a),v.current=de(Bl,u,s));let C=sb(()=>({...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,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]),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 E=ab({}),M=sb(()=>{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(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(pD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?XRe(xK("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 $Re(V.Provider,{value:C,children:[xK("span",{ref:h,style:ZRe,"data-shader-id":s,children:!f&&t.children}),R]})},SK=_K});var MK=z(()=>{"use strict";J8()});var PK={};vt(PK,{ShaderComponent:()=>RK,default:()=>AK});import{useContext as JRe,useEffect as cb,useId as QRe,useMemo as lb,useRef as ub,useState as TK}from"react";import{createPortal as eAe}from"react-dom";import{jsx as EK,jsxs as tAe}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 nAe(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 rAe,iAe,CK,RK,AK,vD=z(()=>{"use strict";mt();gt();yt();MK();rAe={display:"contents"},iAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},CK={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&&(CK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}RK=t=>{let e=JRe(V);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=QRe(),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(()=>nAe(t,CK),[t]),d=lb(()=>({...iAe,...t.transform}),[t.transform]),h=ub(null),f=!!zl.capturesDOM,g=ub(null),[y,_]=TK(!1),[b,S]=TK(()=>({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}));cb(()=>{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=ub(void 0),v=ub(null);v.current===null&&(ae(a),v.current=de(zl,u,s));let C=lb(()=>({...e,shaderParentId:s}),[e,s]);cb(()=>{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]),cb(()=>{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 E=ub({}),M=lb(()=>{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(cb(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),cb(()=>{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?eAe(EK("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 tAe(V.Provider,{value:C,children:[EK("span",{ref:h,style:rAe,"data-shader-id":s,children:!f&&t.children}),R]})},AK=RK});var IK=z(()=>{"use strict";eH()});var LK={};vt(LK,{ShaderComponent:()=>DK,default:()=>FK});import{useContext as oAe,useEffect as db,useId as sAe,useMemo as fb,useRef as hb,useState as OK}from"react";import{createPortal as aAe}from"react-dom";import{jsx as UK,jsxs as cAe}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 lAe(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 uAe,dAe,NK,DK,FK,bD=z(()=>{"use strict";mt();gt();yt();IK();uAe={display:"contents"},dAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},NK={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&&(NK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}DK=t=>{let e=oAe(V);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=sAe(),s=fb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=fb(()=>lAe(t,NK),[t]),d=fb(()=>({...dAe,...t.transform}),[t.transform]),h=hb(null),f=!!Vl.capturesDOM,g=hb(null),[y,_]=OK(!1),[b,S]=OK(()=>({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}));db(()=>{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=hb(void 0),v=hb(null);v.current===null&&(ae(a),v.current=de(Vl,u,s));let C=fb(()=>({...e,shaderParentId:s}),[e,s]);db(()=>{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]),db(()=>{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 E=hb({}),M=fb(()=>{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(db(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),db(()=>{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?aAe(UK("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(V.Provider,{value:C,children:[UK("span",{ref:h,style:uAe,"data-shader-id":s,children:!f&&t.children}),R]})},FK=DK});var kK=z(()=>{"use strict";tH()});var WK={};vt(WK,{ShaderComponent:()=>GK,default:()=>HK});import{useContext as fAe,useEffect as mb,useId as hAe,useMemo as pb,useRef as gb,useState as BK}from"react";import{createPortal as mAe}from"react-dom";import{jsx as zK,jsxs as pAe}from"react/jsx-runtime";function _D(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 gAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!_D(i)&&(n[r]=i);return n}var yAe,vAe,VK,GK,HK,SD=z(()=>{"use strict";mt();gt();yt();kK();yAe={display:"contents"},vAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},VK={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&&(VK[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}GK=t=>{let e=fAe(V);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=hAe(),s=pb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=pb(()=>gAe(t,VK),[t]),d=pb(()=>({...vAe,...t.transform}),[t.transform]),h=gb(null),f=!!Gl.capturesDOM,g=gb(null),[y,_]=BK(!1),[b,S]=BK(()=>({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=gb(void 0),v=gb(null);v.current===null&&(ae(a),v.current=de(Gl,u,s));let C=pb(()=>({...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,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]),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 E=gb({}),M=pb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&_D(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(_D(T))return;T!==E.current[c]&&(i(s,c,T),E.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?mAe(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 pAe(V.Provider,{value:C,children:[zK("span",{ref:h,style:yAe,"data-shader-id":s,children:!f&&t.children}),R]})},HK=GK});var jK=z(()=>{"use strict";nH()});var KK={};vt(KK,{ShaderComponent:()=>YK,default:()=>ZK});import{useContext as xAe,useEffect as yb,useId as bAe,useMemo as vb,useRef as xb,useState as qK}from"react";import{createPortal as _Ae}from"react-dom";import{jsx as XK,jsxs as SAe}from"react/jsx-runtime";function wD(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 wAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!wD(i)&&(n[r]=i);return n}var MAe,TAe,$K,YK,ZK,MD=z(()=>{"use strict";mt();gt();yt();jK();MAe={display:"contents"},TAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},$K={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&&($K[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}YK=t=>{let e=xAe(V);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=bAe(),s=vb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=vb(()=>wAe(t,$K),[t]),d=vb(()=>({...TAe,...t.transform}),[t.transform]),h=xb(null),f=!!Hl.capturesDOM,g=xb(null),[y,_]=qK(!1),[b,S]=qK(()=>({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}));yb(()=>{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&&(ae(a),v.current=de(Hl,u,s));let C=vb(()=>({...e,shaderParentId:s}),[e,s]);yb(()=>{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]),yb(()=>{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 E=xb({}),M=vb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&wD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(yb(()=>{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(wD(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),yb(()=>{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?_Ae(XK("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 SAe(V.Provider,{value:C,children:[XK("span",{ref:h,style:MAe,"data-shader-id":s,children:!f&&t.children}),R]})},ZK=YK});var JK=z(()=>{"use strict";rH()});var iJ={};vt(iJ,{ShaderComponent:()=>nJ,default:()=>rJ});import{useContext as EAe,useEffect as bb,useId as CAe,useMemo as _b,useRef as Sb,useState as QK}from"react";import{createPortal as RAe}from"react-dom";import{jsx as eJ,jsxs as AAe}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 PAe(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 IAe,OAe,tJ,nJ,rJ,ED=z(()=>{"use strict";mt();gt();yt();JK();IAe={display:"contents"},OAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},tJ={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&&(tJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}nJ=t=>{let e=EAe(V);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=CAe(),s=_b(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=_b(()=>PAe(t,tJ),[t]),d=_b(()=>({...OAe,...t.transform}),[t.transform]),h=Sb(null),f=!!Wl.capturesDOM,g=Sb(null),[y,_]=QK(!1),[b,S]=QK(()=>({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=Sb(void 0),v=Sb(null);v.current===null&&(ae(a),v.current=de(Wl,u,s));let C=_b(()=>({...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,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]),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 E=Sb({}),M=_b(()=>{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(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(TD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?RAe(eJ("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 AAe(V.Provider,{value:C,children:[eJ("span",{ref:h,style:IAe,"data-shader-id":s,children:!f&&t.children}),R]})},rJ=nJ});var oJ=z(()=>{"use strict";iH()});var dJ={};vt(dJ,{ShaderComponent:()=>lJ,default:()=>uJ});import{useContext as UAe,useEffect as wb,useId as NAe,useMemo as Mb,useRef as Tb,useState as sJ}from"react";import{createPortal as DAe}from"react-dom";import{jsx as aJ,jsxs as FAe}from"react/jsx-runtime";function CD(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 LAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!CD(i)&&(n[r]=i);return n}var kAe,BAe,cJ,lJ,uJ,RD=z(()=>{"use strict";mt();gt();yt();oJ();kAe={display:"contents"},BAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},cJ={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&&(cJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}lJ=t=>{let e=UAe(V);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=NAe(),s=Mb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Mb(()=>LAe(t,cJ),[t]),d=Mb(()=>({...BAe,...t.transform}),[t.transform]),h=Tb(null),f=!!jl.capturesDOM,g=Tb(null),[y,_]=sJ(!1),[b,S]=sJ(()=>({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}));wb(()=>{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=Tb(void 0),v=Tb(null);v.current===null&&(ae(a),v.current=de(jl,u,s));let C=Mb(()=>({...e,shaderParentId:s}),[e,s]);wb(()=>{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]),wb(()=>{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 E=Tb({}),M=Mb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&CD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(wb(()=>{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(CD(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),wb(()=>{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(aJ("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(V.Provider,{value:C,children:[aJ("span",{ref:h,style:kAe,"data-shader-id":s,children:!f&&t.children}),R]})},uJ=lJ});var fJ=z(()=>{"use strict";oH()});var vJ={};vt(vJ,{ShaderComponent:()=>gJ,default:()=>yJ});import{useContext as zAe,useEffect as Eb,useId as VAe,useMemo as Cb,useRef as Rb,useState as hJ}from"react";import{createPortal as GAe}from"react-dom";import{jsx as mJ,jsxs as HAe}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 WAe(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 jAe,qAe,pJ,gJ,yJ,PD=z(()=>{"use strict";mt();gt();yt();fJ();jAe={display:"contents"},qAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},pJ={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&&(pJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}gJ=t=>{let e=zAe(V);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=VAe(),s=Cb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Cb(()=>WAe(t,pJ),[t]),d=Cb(()=>({...qAe,...t.transform}),[t.transform]),h=Rb(null),f=!!ql.capturesDOM,g=Rb(null),[y,_]=hJ(!1),[b,S]=hJ(()=>({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=Rb(void 0),v=Rb(null);v.current===null&&(ae(a),v.current=de(ql,u,s));let C=Cb(()=>({...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,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]),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 E=Rb({}),M=Cb(()=>{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(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(AD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?GAe(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 HAe(V.Provider,{value:C,children:[mJ("span",{ref:h,style:jAe,"data-shader-id":s,children:!f&&t.children}),R]})},yJ=gJ});var xJ=z(()=>{"use strict";cH()});var TJ={};vt(TJ,{ShaderComponent:()=>wJ,default:()=>MJ});import{useContext as XAe,useEffect as Ab,useId as $Ae,useMemo as Pb,useRef as Ib,useState as bJ}from"react";import{createPortal as YAe}from"react-dom";import{jsx as _J,jsxs as ZAe}from"react/jsx-runtime";function ID(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 KAe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!ID(i)&&(n[r]=i);return n}var JAe,QAe,SJ,wJ,MJ,OD=z(()=>{"use strict";mt();gt();yt();xJ();JAe={display:"contents"},QAe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},SJ={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&&(SJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}wJ=t=>{let e=XAe(V);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=$Ae(),s=Pb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Pb(()=>KAe(t,SJ),[t]),d=Pb(()=>({...QAe,...t.transform}),[t.transform]),h=Ib(null),f=!!Xl.capturesDOM,g=Ib(null),[y,_]=bJ(!1),[b,S]=bJ(()=>({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}));Ab(()=>{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=Ib(void 0),v=Ib(null);v.current===null&&(ae(a),v.current=de(Xl,u,s));let C=Pb(()=>({...e,shaderParentId:s}),[e,s]);Ab(()=>{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]),Ab(()=>{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 E=Ib({}),M=Pb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&ID(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Ab(()=>{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(ID(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Ab(()=>{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?YAe(_J("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(V.Provider,{value:C,children:[_J("span",{ref:h,style:JAe,"data-shader-id":s,children:!f&&t.children}),R]})},MJ=wJ});var EJ=z(()=>{"use strict";lH()});var OJ={};vt(OJ,{ShaderComponent:()=>PJ,default:()=>IJ});import{useContext as e2e,useEffect as Ob,useId as t2e,useMemo as Ub,useRef as Nb,useState as CJ}from"react";import{createPortal as n2e}from"react-dom";import{jsx as RJ,jsxs as r2e}from"react/jsx-runtime";function UD(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 i2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!UD(i)&&(n[r]=i);return n}var o2e,s2e,AJ,PJ,IJ,ND=z(()=>{"use strict";mt();gt();yt();EJ();o2e={display:"contents"},s2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},AJ={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&&(AJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}PJ=t=>{let e=e2e(V);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=t2e(),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(()=>i2e(t,AJ),[t]),d=Ub(()=>({...s2e,...t.transform}),[t.transform]),h=Nb(null),f=!!$l.capturesDOM,g=Nb(null),[y,_]=CJ(!1),[b,S]=CJ(()=>({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=Nb(void 0),v=Nb(null);v.current===null&&(ae(a),v.current=de($l,u,s));let C=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,$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]),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 E=Nb({}),M=Ub(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&UD(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(UD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?n2e(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 r2e(V.Provider,{value:C,children:[RJ("span",{ref:h,style:o2e,"data-shader-id":s,children:!f&&t.children}),R]})},IJ=PJ});var UJ=z(()=>{"use strict";uH()});var BJ={};vt(BJ,{ShaderComponent:()=>LJ,default:()=>kJ});import{useContext as a2e,useEffect as Db,useId as c2e,useMemo as Fb,useRef as Lb,useState as NJ}from"react";import{createPortal as l2e}from"react-dom";import{jsx as DJ,jsxs as u2e}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 d2e(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 f2e,h2e,FJ,LJ,kJ,FD=z(()=>{"use strict";mt();gt();yt();UJ();f2e={display:"contents"},h2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},FJ={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&&(FJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}LJ=t=>{let e=a2e(V);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=Fb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Fb(()=>d2e(t,FJ),[t]),d=Fb(()=>({...h2e,...t.transform}),[t.transform]),h=Lb(null),f=!!Yl.capturesDOM,g=Lb(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}));Db(()=>{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=Lb(void 0),v=Lb(null);v.current===null&&(ae(a),v.current=de(Yl,u,s));let C=Fb(()=>({...e,shaderParentId:s}),[e,s]);Db(()=>{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]),Db(()=>{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 E=Lb({}),M=Fb(()=>{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(Db(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Db(()=>{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?l2e(DJ("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 u2e(V.Provider,{value:C,children:[DJ("span",{ref:h,style:f2e,"data-shader-id":s,children:!f&&t.children}),R]})},kJ=LJ});var zJ=z(()=>{"use strict";dH()});var qJ={};vt(qJ,{ShaderComponent:()=>WJ,default:()=>jJ});import{useContext as m2e,useEffect as kb,useId as p2e,useMemo as Bb,useRef as zb,useState as VJ}from"react";import{createPortal as g2e}from"react-dom";import{jsx as GJ,jsxs as y2e}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 v2e(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 x2e,b2e,HJ,WJ,jJ,kD=z(()=>{"use strict";mt();gt();yt();zJ();x2e={display:"contents"},b2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},HJ={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&&(HJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}WJ=t=>{let e=m2e(V);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=p2e(),s=Bb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Bb(()=>v2e(t,HJ),[t]),d=Bb(()=>({...b2e,...t.transform}),[t.transform]),h=zb(null),f=!!Zl.capturesDOM,g=zb(null),[y,_]=VJ(!1),[b,S]=VJ(()=>({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=zb(void 0),v=zb(null);v.current===null&&(ae(a),v.current=de(Zl,u,s));let C=Bb(()=>({...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,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]),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 E=zb({}),M=Bb(()=>{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(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(LD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?g2e(GJ("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(V.Provider,{value:C,children:[GJ("span",{ref:h,style:x2e,"data-shader-id":s,children:!f&&t.children}),R]})},jJ=WJ});var XJ=z(()=>{"use strict";fH()});var QJ={};vt(QJ,{ShaderComponent:()=>KJ,default:()=>JJ});import{useContext as _2e,useEffect as Vb,useId as S2e,useMemo as Gb,useRef as Hb,useState as $J}from"react";import{createPortal as w2e}from"react-dom";import{jsx as YJ,jsxs as M2e}from"react/jsx-runtime";function BD(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&&!BD(i)&&(n[r]=i);return n}var E2e,C2e,ZJ,KJ,JJ,zD=z(()=>{"use strict";mt();gt();yt();XJ();E2e={display:"contents"},C2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},ZJ={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&&(ZJ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}KJ=t=>{let e=_2e(V);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=S2e(),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(()=>T2e(t,ZJ),[t]),d=Gb(()=>({...C2e,...t.transform}),[t.transform]),h=Hb(null),f=!!Kl.capturesDOM,g=Hb(null),[y,_]=$J(!1),[b,S]=$J(()=>({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=Hb(void 0),v=Hb(null);v.current===null&&(ae(a),v.current=de(Kl,u,s));let C=Gb(()=>({...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,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]),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 E=Hb({}),M=Gb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&BD(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(BD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?w2e(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 M2e(V.Provider,{value:C,children:[YJ("span",{ref:h,style:E2e,"data-shader-id":s,children:!f&&t.children}),R]})},JJ=KJ});var eQ=z(()=>{"use strict";hH()});var sQ={};vt(sQ,{ShaderComponent:()=>iQ,default:()=>oQ});import{useContext as R2e,useEffect as Wb,useId as A2e,useMemo as jb,useRef as qb,useState as tQ}from"react";import{createPortal as P2e}from"react-dom";import{jsx as nQ,jsxs as I2e}from"react/jsx-runtime";function VD(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 O2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!VD(i)&&(n[r]=i);return n}var U2e,N2e,rQ,iQ,oQ,GD=z(()=>{"use strict";mt();gt();yt();eQ();U2e={display:"contents"},N2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},rQ={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&&(rQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}iQ=t=>{let e=R2e(V);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=A2e(),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(()=>O2e(t,rQ),[t]),d=jb(()=>({...N2e,...t.transform}),[t.transform]),h=qb(null),f=!!Jl.capturesDOM,g=qb(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}));Wb(()=>{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&&(ae(a),v.current=de(Jl,u,s));let C=jb(()=>({...e,shaderParentId:s}),[e,s]);Wb(()=>{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]),Wb(()=>{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 E=qb({}),M=jb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&VD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Wb(()=>{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(VD(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Wb(()=>{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?P2e(nQ("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 I2e(V.Provider,{value:C,children:[nQ("span",{ref:h,style:U2e,"data-shader-id":s,children:!f&&t.children}),R]})},oQ=iQ});var aQ=z(()=>{"use strict";mH()});var hQ={};vt(hQ,{ShaderComponent:()=>dQ,default:()=>fQ});import{useContext as D2e,useEffect as Xb,useId as F2e,useMemo as $b,useRef as Yb,useState as cQ}from"react";import{createPortal as L2e}from"react-dom";import{jsx as lQ,jsxs as k2e}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 B2e(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 z2e,V2e,uQ,dQ,fQ,WD=z(()=>{"use strict";mt();gt();yt();aQ();z2e={display:"contents"},V2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},uQ={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&&(uQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}dQ=t=>{let e=D2e(V);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=$b(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=$b(()=>B2e(t,uQ),[t]),d=$b(()=>({...V2e,...t.transform}),[t.transform]),h=Yb(null),f=!!Ql.capturesDOM,g=Yb(null),[y,_]=cQ(!1),[b,S]=cQ(()=>({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}));Xb(()=>{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&&(ae(a),v.current=de(Ql,u,s));let C=$b(()=>({...e,shaderParentId:s}),[e,s]);Xb(()=>{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]),Xb(()=>{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 E=Yb({}),M=$b(()=>{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(Xb(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Xb(()=>{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?L2e(lQ("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 k2e(V.Provider,{value:C,children:[lQ("span",{ref:h,style:z2e,"data-shader-id":s,children:!f&&t.children}),R]})},fQ=dQ});var mQ=z(()=>{"use strict";pH()});var bQ={};vt(bQ,{ShaderComponent:()=>vQ,default:()=>xQ});import{useContext as G2e,useEffect as Zb,useId as H2e,useMemo as Kb,useRef as Jb,useState as pQ}from"react";import{createPortal as W2e}from"react-dom";import{jsx as gQ,jsxs as j2e}from"react/jsx-runtime";function jD(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 q2e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!jD(i)&&(n[r]=i);return n}var X2e,$2e,yQ,vQ,xQ,qD=z(()=>{"use strict";mt();gt();yt();mQ();X2e={display:"contents"},$2e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},yQ={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&&(yQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}vQ=t=>{let e=G2e(V);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=H2e(),s=Kb(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=Kb(()=>q2e(t,yQ),[t]),d=Kb(()=>({...$2e,...t.transform}),[t.transform]),h=Jb(null),f=!!eu.capturesDOM,g=Jb(null),[y,_]=pQ(!1),[b,S]=pQ(()=>({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}));Zb(()=>{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=Jb(void 0),v=Jb(null);v.current===null&&(ae(a),v.current=de(eu,u,s));let C=Kb(()=>({...e,shaderParentId:s}),[e,s]);Zb(()=>{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]),Zb(()=>{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 E=Jb({}),M=Kb(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&jD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Zb(()=>{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(jD(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Zb(()=>{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?W2e(gQ("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 j2e(V.Provider,{value:C,children:[gQ("span",{ref:h,style:X2e,"data-shader-id":s,children:!f&&t.children}),R]})},xQ=vQ});var _Q=z(()=>{"use strict";gH()});var CQ={};vt(CQ,{ShaderComponent:()=>TQ,default:()=>EQ});import{useContext as Y2e,useEffect as Qb,useId as Z2e,useMemo as e_,useRef as t_,useState as SQ}from"react";import{createPortal as K2e}from"react-dom";import{jsx as wQ,jsxs as J2e}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 Q2e(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 ePe,tPe,MQ,TQ,EQ,$D=z(()=>{"use strict";mt();gt();yt();_Q();ePe={display:"contents"},tPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},MQ={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&&(MQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}TQ=t=>{let e=Y2e(V);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=e_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=e_(()=>Q2e(t,MQ),[t]),d=e_(()=>({...tPe,...t.transform}),[t.transform]),h=t_(null),f=!!tu.capturesDOM,g=t_(null),[y,_]=SQ(!1),[b,S]=SQ(()=>({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}));Qb(()=>{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=t_(void 0),v=t_(null);v.current===null&&(ae(a),v.current=de(tu,u,s));let C=e_(()=>({...e,shaderParentId:s}),[e,s]);Qb(()=>{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]),Qb(()=>{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 E=t_({}),M=e_(()=>{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(Qb(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Qb(()=>{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?K2e(wQ("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 J2e(V.Provider,{value:C,children:[wQ("span",{ref:h,style:ePe,"data-shader-id":s,children:!f&&t.children}),R]})},EQ=TQ});var RQ=z(()=>{"use strict";yH()});var NQ={};vt(NQ,{ShaderComponent:()=>OQ,default:()=>UQ});import{useContext as nPe,useEffect as n_,useId as rPe,useMemo as r_,useRef as i_,useState as AQ}from"react";import{createPortal as iPe}from"react-dom";import{jsx as PQ,jsxs as oPe}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 sPe(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 aPe,cPe,IQ,OQ,UQ,ZD=z(()=>{"use strict";mt();gt();yt();RQ();aPe={display:"contents"},cPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},IQ={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&&(IQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}OQ=t=>{let e=nPe(V);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_(()=>sPe(t,IQ),[t]),d=r_(()=>({...cPe,...t.transform}),[t.transform]),h=i_(null),f=!!nu.capturesDOM,g=i_(null),[y,_]=AQ(!1),[b,S]=AQ(()=>({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}));n_(()=>{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=i_(void 0),v=i_(null);v.current===null&&(ae(a),v.current=de(nu,u,s));let C=r_(()=>({...e,shaderParentId:s}),[e,s]);n_(()=>{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]),n_(()=>{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 E=i_({}),M=r_(()=>{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(n_(()=>{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!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),n_(()=>{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?iPe(PQ("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 oPe(V.Provider,{value:C,children:[PQ("span",{ref:h,style:aPe,"data-shader-id":s,children:!f&&t.children}),R]})},UQ=OQ});var DQ=z(()=>{"use strict";vH()});var VQ={};vt(VQ,{ShaderComponent:()=>BQ,default:()=>zQ});import{useContext as lPe,useEffect as o_,useId as uPe,useMemo as s_,useRef as a_,useState as FQ}from"react";import{createPortal as dPe}from"react-dom";import{jsx as LQ,jsxs as fPe}from"react/jsx-runtime";function KD(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 hPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!KD(i)&&(n[r]=i);return n}var mPe,pPe,kQ,BQ,zQ,JD=z(()=>{"use strict";mt();gt();yt();DQ();mPe={display:"contents"},pPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},kQ={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&&(kQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}BQ=t=>{let e=lPe(V);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=uPe(),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_(()=>hPe(t,kQ),[t]),d=s_(()=>({...pPe,...t.transform}),[t.transform]),h=a_(null),f=!!ru.capturesDOM,g=a_(null),[y,_]=FQ(!1),[b,S]=FQ(()=>({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=a_(void 0),v=a_(null);v.current===null&&(ae(a),v.current=de(ru,u,s));let C=s_(()=>({...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,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]),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 E=a_({}),M=s_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&KD(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(KD(T))return;T!==E.current[c]&&(i(s,c,T),E.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?dPe(LQ("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 fPe(V.Provider,{value:C,children:[LQ("span",{ref:h,style:mPe,"data-shader-id":s,children:!f&&t.children}),R]})},zQ=BQ});var GQ=z(()=>{"use strict";xH()});var $Q={};vt($Q,{ShaderComponent:()=>qQ,default:()=>XQ});import{useContext as gPe,useEffect as c_,useId as yPe,useMemo as l_,useRef as u_,useState as HQ}from"react";import{createPortal as vPe}from"react-dom";import{jsx as WQ,jsxs as xPe}from"react/jsx-runtime";function QD(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 bPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!QD(i)&&(n[r]=i);return n}var _Pe,SPe,jQ,qQ,XQ,eF=z(()=>{"use strict";mt();gt();yt();GQ();_Pe={display:"contents"},SPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},jQ={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&&(jQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}qQ=t=>{let e=gPe(V);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_(()=>bPe(t,jQ),[t]),d=l_(()=>({...SPe,...t.transform}),[t.transform]),h=u_(null),f=!!iu.capturesDOM,g=u_(null),[y,_]=HQ(!1),[b,S]=HQ(()=>({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}));c_(()=>{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=u_(void 0),v=u_(null);v.current===null&&(ae(a),v.current=de(iu,u,s));let C=l_(()=>({...e,shaderParentId:s}),[e,s]);c_(()=>{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]),c_(()=>{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 E=u_({}),M=l_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&QD(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(c_(()=>{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(QD(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),c_(()=>{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?vPe(WQ("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 xPe(V.Provider,{value:C,children:[WQ("span",{ref:h,style:_Pe,"data-shader-id":s,children:!f&&t.children}),R]})},XQ=qQ});var YQ=z(()=>{"use strict";bH()});var tee={};vt(tee,{ShaderComponent:()=>QQ,default:()=>eee});import{useContext as wPe,useEffect as d_,useId as MPe,useMemo as f_,useRef as h_,useState as ZQ}from"react";import{createPortal as TPe}from"react-dom";import{jsx as KQ,jsxs as EPe}from"react/jsx-runtime";function tF(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 CPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!tF(i)&&(n[r]=i);return n}var RPe,APe,JQ,QQ,eee,nF=z(()=>{"use strict";mt();gt();yt();YQ();RPe={display:"contents"},APe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},JQ={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&&(JQ[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}QQ=t=>{let e=wPe(V);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=f_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=f_(()=>CPe(t,JQ),[t]),d=f_(()=>({...APe,...t.transform}),[t.transform]),h=h_(null),f=!!ou.capturesDOM,g=h_(null),[y,_]=ZQ(!1),[b,S]=ZQ(()=>({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}));d_(()=>{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=h_(void 0),v=h_(null);v.current===null&&(ae(a),v.current=de(ou,u,s));let C=f_(()=>({...e,shaderParentId:s}),[e,s]);d_(()=>{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]),d_(()=>{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 E=h_({}),M=f_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&tF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(d_(()=>{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(tF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),d_(()=>{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(KQ("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 EPe(V.Provider,{value:C,children:[KQ("span",{ref:h,style:RPe,"data-shader-id":s,children:!f&&t.children}),R]})},eee=QQ});var nee=z(()=>{"use strict";_H()});var cee={};vt(cee,{ShaderComponent:()=>see,default:()=>aee});import{useContext as PPe,useEffect as m_,useId as IPe,useMemo as p_,useRef as g_,useState as ree}from"react";import{createPortal as OPe}from"react-dom";import{jsx as iee,jsxs as UPe}from"react/jsx-runtime";function rF(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 NPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!rF(i)&&(n[r]=i);return n}var DPe,FPe,oee,see,aee,iF=z(()=>{"use strict";mt();gt();yt();nee();DPe={display:"contents"},FPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},oee={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&&(oee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}see=t=>{let e=PPe(V);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=IPe(),s=p_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=p_(()=>NPe(t,oee),[t]),d=p_(()=>({...FPe,...t.transform}),[t.transform]),h=g_(null),f=!!su.capturesDOM,g=g_(null),[y,_]=ree(!1),[b,S]=ree(()=>({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=g_(void 0),v=g_(null);v.current===null&&(ae(a),v.current=de(su,u,s));let C=p_(()=>({...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,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]),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 E=g_({}),M=p_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&rF(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(rF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?OPe(iee("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 UPe(V.Provider,{value:C,children:[iee("span",{ref:h,style:DPe,"data-shader-id":s,children:!f&&t.children}),R]})},aee=see});var lee=z(()=>{"use strict";SH()});var pee={};vt(pee,{ShaderComponent:()=>hee,default:()=>mee});import{useContext as LPe,useEffect as y_,useId as kPe,useMemo as v_,useRef as x_,useState as uee}from"react";import{createPortal as BPe}from"react-dom";import{jsx as dee,jsxs as zPe}from"react/jsx-runtime";function oF(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 VPe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!oF(i)&&(n[r]=i);return n}var GPe,HPe,fee,hee,mee,sF=z(()=>{"use strict";mt();gt();yt();lee();GPe={display:"contents"},HPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},fee={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&&(fee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}hee=t=>{let e=LPe(V);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=kPe(),s=v_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=v_(()=>VPe(t,fee),[t]),d=v_(()=>({...HPe,...t.transform}),[t.transform]),h=x_(null),f=!!au.capturesDOM,g=x_(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}));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=x_(void 0),v=x_(null);v.current===null&&(ae(a),v.current=de(au,u,s));let C=v_(()=>({...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,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]),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 E=x_({}),M=v_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&oF(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(oF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?BPe(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 zPe(V.Provider,{value:C,children:[dee("span",{ref:h,style:GPe,"data-shader-id":s,children:!f&&t.children}),R]})},mee=hee});var gee=z(()=>{"use strict";wH()});var See={};vt(See,{ShaderComponent:()=>bee,default:()=>_ee});import{useContext as WPe,useEffect as b_,useId as jPe,useMemo as __,useRef as S_,useState as yee}from"react";import{createPortal as qPe}from"react-dom";import{jsx as vee,jsxs as XPe}from"react/jsx-runtime";function aF(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 $Pe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!aF(i)&&(n[r]=i);return n}var YPe,ZPe,xee,bee,_ee,cF=z(()=>{"use strict";mt();gt();yt();gee();YPe={display:"contents"},ZPe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},xee={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&&(xee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}bee=t=>{let e=WPe(V);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=jPe(),s=__(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=__(()=>$Pe(t,xee),[t]),d=__(()=>({...ZPe,...t.transform}),[t.transform]),h=S_(null),f=!!cu.capturesDOM,g=S_(null),[y,_]=yee(!1),[b,S]=yee(()=>({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=S_(void 0),v=S_(null);v.current===null&&(ae(a),v.current=de(cu,u,s));let C=__(()=>({...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,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]),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 E=S_({}),M=__(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&aF(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(aF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?qPe(vee("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 XPe(V.Provider,{value:C,children:[vee("span",{ref:h,style:YPe,"data-shader-id":s,children:!f&&t.children}),R]})},_ee=bee});var wee=z(()=>{"use strict";MH()});var Aee={};vt(Aee,{ShaderComponent:()=>Cee,default:()=>Ree});import{useContext as KPe,useEffect as w_,useId as JPe,useMemo as M_,useRef as T_,useState as Mee}from"react";import{createPortal as QPe}from"react-dom";import{jsx as Tee,jsxs as eIe}from"react/jsx-runtime";function lF(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 tIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!lF(i)&&(n[r]=i);return n}var nIe,rIe,Eee,Cee,Ree,uF=z(()=>{"use strict";mt();gt();yt();wee();nIe={display:"contents"},rIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Eee={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&&(Eee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Cee=t=>{let e=KPe(V);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=JPe(),s=M_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=M_(()=>tIe(t,Eee),[t]),d=M_(()=>({...rIe,...t.transform}),[t.transform]),h=T_(null),f=!!lu.capturesDOM,g=T_(null),[y,_]=Mee(!1),[b,S]=Mee(()=>({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}));w_(()=>{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=T_(void 0),v=T_(null);v.current===null&&(ae(a),v.current=de(lu,u,s));let C=M_(()=>({...e,shaderParentId:s}),[e,s]);w_(()=>{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]),w_(()=>{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 E=T_({}),M=M_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&lF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(w_(()=>{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(lF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),w_(()=>{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?QPe(Tee("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 eIe(V.Provider,{value:C,children:[Tee("span",{ref:h,style:nIe,"data-shader-id":s,children:!f&&t.children}),R]})},Ree=Cee});var Pee=z(()=>{"use strict";TH()});var Fee={};vt(Fee,{ShaderComponent:()=>Nee,default:()=>Dee});import{useContext as iIe,useEffect as E_,useId as oIe,useMemo as C_,useRef as R_,useState as Iee}from"react";import{createPortal as sIe}from"react-dom";import{jsx as Oee,jsxs as aIe}from"react/jsx-runtime";function dF(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&&!dF(i)&&(n[r]=i);return n}var lIe,uIe,Uee,Nee,Dee,fF=z(()=>{"use strict";mt();gt();yt();Pee();lIe={display:"contents"},uIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Uee={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&&(Uee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Nee=t=>{let e=iIe(V);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=oIe(),s=C_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=C_(()=>cIe(t,Uee),[t]),d=C_(()=>({...uIe,...t.transform}),[t.transform]),h=R_(null),f=!!uu.capturesDOM,g=R_(null),[y,_]=Iee(!1),[b,S]=Iee(()=>({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=R_(void 0),v=R_(null);v.current===null&&(ae(a),v.current=de(uu,u,s));let C=C_(()=>({...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,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]),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 E=R_({}),M=C_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&dF(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(dF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?sIe(Oee("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 aIe(V.Provider,{value:C,children:[Oee("span",{ref:h,style:lIe,"data-shader-id":s,children:!f&&t.children}),R]})},Dee=Nee});var Lee=z(()=>{"use strict";EH()});var Hee={};vt(Hee,{ShaderComponent:()=>Vee,default:()=>Gee});import{useContext as dIe,useEffect as A_,useId as fIe,useMemo as P_,useRef as I_,useState as kee}from"react";import{createPortal as hIe}from"react-dom";import{jsx as Bee,jsxs as mIe}from"react/jsx-runtime";function hF(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 pIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!hF(i)&&(n[r]=i);return n}var gIe,yIe,zee,Vee,Gee,mF=z(()=>{"use strict";mt();gt();yt();Lee();gIe={display:"contents"},yIe={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)}Vee=t=>{let e=dIe(V);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=fIe(),s=P_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=P_(()=>pIe(t,zee),[t]),d=P_(()=>({...yIe,...t.transform}),[t.transform]),h=I_(null),f=!!du.capturesDOM,g=I_(null),[y,_]=kee(!1),[b,S]=kee(()=>({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}));A_(()=>{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=I_(void 0),v=I_(null);v.current===null&&(ae(a),v.current=de(du,u,s));let C=P_(()=>({...e,shaderParentId:s}),[e,s]);A_(()=>{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]),A_(()=>{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 E=I_({}),M=P_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&hF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(A_(()=>{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(hF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),A_(()=>{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?hIe(Bee("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 mIe(V.Provider,{value:C,children:[Bee("span",{ref:h,style:gIe,"data-shader-id":s,children:!f&&t.children}),R]})},Gee=Vee});var Wee=z(()=>{"use strict";CH()});var Zee={};vt(Zee,{ShaderComponent:()=>$ee,default:()=>Yee});import{useContext as vIe,useEffect as O_,useId as xIe,useMemo as U_,useRef as N_,useState as jee}from"react";import{createPortal as bIe}from"react-dom";import{jsx as qee,jsxs as _Ie}from"react/jsx-runtime";function pF(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 SIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!pF(i)&&(n[r]=i);return n}var wIe,MIe,Xee,$ee,Yee,gF=z(()=>{"use strict";mt();gt();yt();Wee();wIe={display:"contents"},MIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Xee={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&&(Xee[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}$ee=t=>{let e=vIe(V);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=xIe(),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_(()=>SIe(t,Xee),[t]),d=U_(()=>({...MIe,...t.transform}),[t.transform]),h=N_(null),f=!!fu.capturesDOM,g=N_(null),[y,_]=jee(!1),[b,S]=jee(()=>({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=N_(void 0),v=N_(null);v.current===null&&(ae(a),v.current=de(fu,u,s));let C=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 E=N_({}),M=U_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&pF(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(pF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?bIe(qee("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 _Ie(V.Provider,{value:C,children:[qee("span",{ref:h,style:wIe,"data-shader-id":s,children:!f&&t.children}),R]})},Yee=$ee});var Kee=z(()=>{"use strict";IH()});var rte={};vt(rte,{ShaderComponent:()=>tte,default:()=>nte});import{useContext as TIe,useEffect as D_,useId as EIe,useMemo as F_,useRef as L_,useState as Jee}from"react";import{createPortal as CIe}from"react-dom";import{jsx as Qee,jsxs as RIe}from"react/jsx-runtime";function yF(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 AIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!yF(i)&&(n[r]=i);return n}var PIe,IIe,ete,tte,nte,vF=z(()=>{"use strict";mt();gt();yt();Kee();PIe={display:"contents"},IIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},ete={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&&(ete[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}tte=t=>{let e=TIe(V);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=EIe(),s=F_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=F_(()=>AIe(t,ete),[t]),d=F_(()=>({...IIe,...t.transform}),[t.transform]),h=L_(null),f=!!hu.capturesDOM,g=L_(null),[y,_]=Jee(!1),[b,S]=Jee(()=>({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}));D_(()=>{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=L_(void 0),v=L_(null);v.current===null&&(ae(a),v.current=de(hu,u,s));let C=F_(()=>({...e,shaderParentId:s}),[e,s]);D_(()=>{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]),D_(()=>{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 E=L_({}),M=F_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&yF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(D_(()=>{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(yF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),D_(()=>{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?CIe(Qee("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 RIe(V.Provider,{value:C,children:[Qee("span",{ref:h,style:PIe,"data-shader-id":s,children:!f&&t.children}),R]})},nte=tte});var ite=z(()=>{"use strict";UH()});var ute={};vt(ute,{ShaderComponent:()=>cte,default:()=>lte});import{useContext as OIe,useEffect as k_,useId as UIe,useMemo as B_,useRef as z_,useState as ote}from"react";import{createPortal as NIe}from"react-dom";import{jsx as ste,jsxs as DIe}from"react/jsx-runtime";function xF(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&&!xF(i)&&(n[r]=i);return n}var LIe,kIe,ate,cte,lte,bF=z(()=>{"use strict";mt();gt();yt();ite();LIe={display:"contents"},kIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},ate={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&&(ate[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}cte=t=>{let e=OIe(V);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=UIe(),s=B_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=B_(()=>FIe(t,ate),[t]),d=B_(()=>({...kIe,...t.transform}),[t.transform]),h=z_(null),f=!!mu.capturesDOM,g=z_(null),[y,_]=ote(!1),[b,S]=ote(()=>({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=z_(void 0),v=z_(null);v.current===null&&(ae(a),v.current=de(mu,u,s));let C=B_(()=>({...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,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]),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 E=z_({}),M=B_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&xF(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(xF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?NIe(ste("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(V.Provider,{value:C,children:[ste("span",{ref:h,style:LIe,"data-shader-id":s,children:!f&&t.children}),R]})},lte=cte});var dte=z(()=>{"use strict";NH()});var yte={};vt(yte,{ShaderComponent:()=>pte,default:()=>gte});import{useContext as BIe,useEffect as V_,useId as zIe,useMemo as G_,useRef as H_,useState as fte}from"react";import{createPortal as VIe}from"react-dom";import{jsx as hte,jsxs as GIe}from"react/jsx-runtime";function _F(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 HIe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!_F(i)&&(n[r]=i);return n}var WIe,jIe,mte,pte,gte,SF=z(()=>{"use strict";mt();gt();yt();dte();WIe={display:"contents"},jIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},mte={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&&(mte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}pte=t=>{let e=BIe(V);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=zIe(),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_(()=>HIe(t,mte),[t]),d=G_(()=>({...jIe,...t.transform}),[t.transform]),h=H_(null),f=!!pu.capturesDOM,g=H_(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}));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=H_(void 0),v=H_(null);v.current===null&&(ae(a),v.current=de(pu,u,s));let C=G_(()=>({...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,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]),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 E=H_({}),M=G_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&_F(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(_F(T))return;T!==E.current[c]&&(i(s,c,T),E.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?VIe(hte("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 GIe(V.Provider,{value:C,children:[hte("span",{ref:h,style:WIe,"data-shader-id":s,children:!f&&t.children}),R]})},gte=pte});var vte=z(()=>{"use strict";DH()});var Mte={};vt(Mte,{ShaderComponent:()=>Ste,default:()=>wte});import{useContext as qIe,useEffect as W_,useId as XIe,useMemo as j_,useRef as q_,useState as xte}from"react";import{createPortal as $Ie}from"react-dom";import{jsx as bte,jsxs as YIe}from"react/jsx-runtime";function wF(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&&!wF(i)&&(n[r]=i);return n}var KIe,JIe,_te,Ste,wte,MF=z(()=>{"use strict";mt();gt();yt();vte();KIe={display:"contents"},JIe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},_te={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&&(_te[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Ste=t=>{let e=qIe(V);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=XIe(),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_(()=>ZIe(t,_te),[t]),d=j_(()=>({...JIe,...t.transform}),[t.transform]),h=q_(null),f=!!gu.capturesDOM,g=q_(null),[y,_]=xte(!1),[b,S]=xte(()=>({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}));W_(()=>{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&&(ae(a),v.current=de(gu,u,s));let C=j_(()=>({...e,shaderParentId:s}),[e,s]);W_(()=>{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]),W_(()=>{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 E=q_({}),M=j_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&wF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(W_(()=>{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(wF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),W_(()=>{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?$Ie(bte("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 YIe(V.Provider,{value:C,children:[bte("span",{ref:h,style:KIe,"data-shader-id":s,children:!f&&t.children}),R]})},wte=Ste});var Tte=z(()=>{"use strict";FH()});var Ite={};vt(Ite,{ShaderComponent:()=>Ate,default:()=>Pte});import{useContext as QIe,useEffect as X_,useId as eOe,useMemo as $_,useRef as Y_,useState as Ete}from"react";import{createPortal as tOe}from"react-dom";import{jsx as Cte,jsxs as nOe}from"react/jsx-runtime";function TF(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 rOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!TF(i)&&(n[r]=i);return n}var iOe,oOe,Rte,Ate,Pte,EF=z(()=>{"use strict";mt();gt();yt();Tte();iOe={display:"contents"},oOe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Rte={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&&(Rte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Ate=t=>{let e=QIe(V);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=eOe(),s=$_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=$_(()=>rOe(t,Rte),[t]),d=$_(()=>({...oOe,...t.transform}),[t.transform]),h=Y_(null),f=!!yu.capturesDOM,g=Y_(null),[y,_]=Ete(!1),[b,S]=Ete(()=>({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=Y_(void 0),v=Y_(null);v.current===null&&(ae(a),v.current=de(yu,u,s));let C=$_(()=>({...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,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]),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 E=Y_({}),M=$_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&TF(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(TF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?tOe(Cte("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 nOe(V.Provider,{value:C,children:[Cte("span",{ref:h,style:iOe,"data-shader-id":s,children:!f&&t.children}),R]})},Pte=Ate});var Ote=z(()=>{"use strict";LH()});var kte={};vt(kte,{ShaderComponent:()=>Fte,default:()=>Lte});import{useContext as sOe,useEffect as Z_,useId as aOe,useMemo as K_,useRef as J_,useState as Ute}from"react";import{createPortal as cOe}from"react-dom";import{jsx as Nte,jsxs as lOe}from"react/jsx-runtime";function CF(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 uOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!CF(i)&&(n[r]=i);return n}var dOe,fOe,Dte,Fte,Lte,RF=z(()=>{"use strict";mt();gt();yt();Ote();dOe={display:"contents"},fOe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Dte={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&&(Dte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Fte=t=>{let e=sOe(V);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=aOe(),s=K_(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=K_(()=>uOe(t,Dte),[t]),d=K_(()=>({...fOe,...t.transform}),[t.transform]),h=J_(null),f=!!vu.capturesDOM,g=J_(null),[y,_]=Ute(!1),[b,S]=Ute(()=>({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}));Z_(()=>{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=J_(void 0),v=J_(null);v.current===null&&(ae(a),v.current=de(vu,u,s));let C=K_(()=>({...e,shaderParentId:s}),[e,s]);Z_(()=>{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]),Z_(()=>{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 E=J_({}),M=K_(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&CF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Z_(()=>{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(CF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Z_(()=>{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?cOe(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 lOe(V.Provider,{value:C,children:[Nte("span",{ref:h,style:dOe,"data-shader-id":s,children:!f&&t.children}),R]})},Lte=Fte});var Bte=z(()=>{"use strict";kH()});var jte={};vt(jte,{ShaderComponent:()=>Hte,default:()=>Wte});import{useContext as hOe,useEffect as Q_,useId as mOe,useMemo as eS,useRef as tS,useState as zte}from"react";import{createPortal as pOe}from"react-dom";import{jsx as Vte,jsxs as gOe}from"react/jsx-runtime";function AF(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 yOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!AF(i)&&(n[r]=i);return n}var vOe,xOe,Gte,Hte,Wte,PF=z(()=>{"use strict";mt();gt();yt();Bte();vOe={display:"contents"},xOe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Gte={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&&(Gte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Hte=t=>{let e=hOe(V);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=mOe(),s=eS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=eS(()=>yOe(t,Gte),[t]),d=eS(()=>({...xOe,...t.transform}),[t.transform]),h=tS(null),f=!!xu.capturesDOM,g=tS(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}));Q_(()=>{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=tS(void 0),v=tS(null);v.current===null&&(ae(a),v.current=de(xu,u,s));let C=eS(()=>({...e,shaderParentId:s}),[e,s]);Q_(()=>{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]),Q_(()=>{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 E=tS({}),M=eS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&AF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(Q_(()=>{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(AF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),Q_(()=>{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?pOe(Vte("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 gOe(V.Provider,{value:C,children:[Vte("span",{ref:h,style:vOe,"data-shader-id":s,children:!f&&t.children}),R]})},Wte=Hte});var qte=z(()=>{"use strict";BH()});var Jte={};vt(Jte,{ShaderComponent:()=>Zte,default:()=>Kte});import{useContext as bOe,useEffect as nS,useId as _Oe,useMemo as rS,useRef as iS,useState as Xte}from"react";import{createPortal as SOe}from"react-dom";import{jsx as $te,jsxs as wOe}from"react/jsx-runtime";function IF(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 MOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!IF(i)&&(n[r]=i);return n}var TOe,EOe,Yte,Zte,Kte,OF=z(()=>{"use strict";mt();gt();yt();qte();TOe={display:"contents"},EOe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Yte={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&&(Yte[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Zte=t=>{let e=bOe(V);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=_Oe(),s=rS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=rS(()=>MOe(t,Yte),[t]),d=rS(()=>({...EOe,...t.transform}),[t.transform]),h=iS(null),f=!!bu.capturesDOM,g=iS(null),[y,_]=Xte(!1),[b,S]=Xte(()=>({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}));nS(()=>{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=iS(void 0),v=iS(null);v.current===null&&(ae(a),v.current=de(bu,u,s));let C=rS(()=>({...e,shaderParentId:s}),[e,s]);nS(()=>{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]),nS(()=>{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 E=iS({}),M=rS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&IF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(nS(()=>{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(IF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),nS(()=>{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?SOe($te("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 wOe(V.Provider,{value:C,children:[$te("span",{ref:h,style:TOe,"data-shader-id":s,children:!f&&t.children}),R]})},Kte=Zte});var Qte=z(()=>{"use strict";zH()});var one={};vt(one,{ShaderComponent:()=>rne,default:()=>ine});import{useContext as COe,useEffect as oS,useId as ROe,useMemo as sS,useRef as aS,useState as ene}from"react";import{createPortal as AOe}from"react-dom";import{jsx as tne,jsxs as POe}from"react/jsx-runtime";function UF(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 IOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!UF(i)&&(n[r]=i);return n}var OOe,UOe,nne,rne,ine,NF=z(()=>{"use strict";mt();gt();yt();Qte();OOe={display:"contents"},UOe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},nne={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&&(nne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}rne=t=>{let e=COe(V);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=ROe(),s=sS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=sS(()=>IOe(t,nne),[t]),d=sS(()=>({...UOe,...t.transform}),[t.transform]),h=aS(null),f=!!_u.capturesDOM,g=aS(null),[y,_]=ene(!1),[b,S]=ene(()=>({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}));oS(()=>{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=aS(void 0),v=aS(null);v.current===null&&(ae(a),v.current=de(_u,u,s));let C=sS(()=>({...e,shaderParentId:s}),[e,s]);oS(()=>{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]),oS(()=>{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 E=aS({}),M=sS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&UF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(oS(()=>{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(UF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),oS(()=>{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?AOe(tne("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 POe(V.Provider,{value:C,children:[tne("span",{ref:h,style:OOe,"data-shader-id":s,children:!f&&t.children}),R]})},ine=rne});var sne=z(()=>{"use strict";VH()});var fne={};vt(fne,{ShaderComponent:()=>une,default:()=>dne});import{useContext as NOe,useEffect as cS,useId as DOe,useMemo as lS,useRef as uS,useState as ane}from"react";import{createPortal as FOe}from"react-dom";import{jsx as cne,jsxs as LOe}from"react/jsx-runtime";function DF(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 kOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!DF(i)&&(n[r]=i);return n}var BOe,zOe,lne,une,dne,FF=z(()=>{"use strict";mt();gt();yt();sne();BOe={display:"contents"},zOe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},lne={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&&(lne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}une=t=>{let e=NOe(V);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=DOe(),s=lS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=lS(()=>kOe(t,lne),[t]),d=lS(()=>({...zOe,...t.transform}),[t.transform]),h=uS(null),f=!!Su.capturesDOM,g=uS(null),[y,_]=ane(!1),[b,S]=ane(()=>({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}));cS(()=>{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=uS(void 0),v=uS(null);v.current===null&&(ae(a),v.current=de(Su,u,s));let C=lS(()=>({...e,shaderParentId:s}),[e,s]);cS(()=>{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]),cS(()=>{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 E=uS({}),M=lS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&DF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(cS(()=>{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(DF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),cS(()=>{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?FOe(cne("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 LOe(V.Provider,{value:C,children:[cne("span",{ref:h,style:BOe,"data-shader-id":s,children:!f&&t.children}),R]})},dne=une});var hne=z(()=>{"use strict";GH()});var xne={};vt(xne,{ShaderComponent:()=>yne,default:()=>vne});import{useContext as VOe,useEffect as dS,useId as GOe,useMemo as fS,useRef as hS,useState as mne}from"react";import{createPortal as HOe}from"react-dom";import{jsx as pne,jsxs as WOe}from"react/jsx-runtime";function LF(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 jOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!LF(i)&&(n[r]=i);return n}var qOe,XOe,gne,yne,vne,kF=z(()=>{"use strict";mt();gt();yt();hne();qOe={display:"contents"},XOe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},gne={blendMode:"normal",visible:!0};try{wu&&wu.props&&Object.entries(wu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(gne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}yne=t=>{let e=VOe(V);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=GOe(),s=fS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=fS(()=>jOe(t,gne),[t]),d=fS(()=>({...XOe,...t.transform}),[t.transform]),h=hS(null),f=!!wu.capturesDOM,g=hS(null),[y,_]=mne(!1),[b,S]=mne(()=>({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}));dS(()=>{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=hS(void 0),v=hS(null);v.current===null&&(ae(a),v.current=de(wu,u,s));let C=fS(()=>({...e,shaderParentId:s}),[e,s]);dS(()=>{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,wu.fragmentNode,n,c,v.current,wu,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]),dS(()=>{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 E=hS({}),M=fS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&LF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(dS(()=>{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(LF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),dS(()=>{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?HOe(pne("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 WOe(V.Provider,{value:C,children:[pne("span",{ref:h,style:qOe,"data-shader-id":s,children:!f&&t.children}),R]})},vne=yne});var bne=z(()=>{"use strict";HH()});var Ene={};vt(Ene,{ShaderComponent:()=>Mne,default:()=>Tne});import{useContext as $Oe,useEffect as mS,useId as YOe,useMemo as pS,useRef as gS,useState as _ne}from"react";import{createPortal as ZOe}from"react-dom";import{jsx as Sne,jsxs as KOe}from"react/jsx-runtime";function BF(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 JOe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!BF(i)&&(n[r]=i);return n}var QOe,eUe,wne,Mne,Tne,zF=z(()=>{"use strict";mt();gt();yt();bne();QOe={display:"contents"},eUe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},wne={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&&(wne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Mne=t=>{let e=$Oe(V);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=YOe(),s=pS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=pS(()=>JOe(t,wne),[t]),d=pS(()=>({...eUe,...t.transform}),[t.transform]),h=gS(null),f=!!Mu.capturesDOM,g=gS(null),[y,_]=_ne(!1),[b,S]=_ne(()=>({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}));mS(()=>{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=gS(void 0),v=gS(null);v.current===null&&(ae(a),v.current=de(Mu,u,s));let C=pS(()=>({...e,shaderParentId:s}),[e,s]);mS(()=>{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]),mS(()=>{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 E=gS({}),M=pS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&BF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(mS(()=>{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(BF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),mS(()=>{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?ZOe(Sne("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 KOe(V.Provider,{value:C,children:[Sne("span",{ref:h,style:QOe,"data-shader-id":s,children:!f&&t.children}),R]})},Tne=Mne});var Cne=z(()=>{"use strict";WH()});var Une={};vt(Une,{ShaderComponent:()=>Ine,default:()=>One});import{useContext as tUe,useEffect as yS,useId as nUe,useMemo as vS,useRef as xS,useState as Rne}from"react";import{createPortal as rUe}from"react-dom";import{jsx as Ane,jsxs as iUe}from"react/jsx-runtime";function VF(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 oUe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!VF(i)&&(n[r]=i);return n}var sUe,aUe,Pne,Ine,One,GF=z(()=>{"use strict";mt();gt();yt();Cne();sUe={display:"contents"},aUe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Pne={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&&(Pne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Ine=t=>{let e=tUe(V);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=nUe(),s=vS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=vS(()=>oUe(t,Pne),[t]),d=vS(()=>({...aUe,...t.transform}),[t.transform]),h=xS(null),f=!!Tu.capturesDOM,g=xS(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}));yS(()=>{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=xS(void 0),v=xS(null);v.current===null&&(ae(a),v.current=de(Tu,u,s));let C=vS(()=>({...e,shaderParentId:s}),[e,s]);yS(()=>{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]),yS(()=>{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 E=xS({}),M=vS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&VF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(yS(()=>{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(VF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),yS(()=>{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?rUe(Ane("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 iUe(V.Provider,{value:C,children:[Ane("span",{ref:h,style:sUe,"data-shader-id":s,children:!f&&t.children}),R]})},One=Ine});var Nne=z(()=>{"use strict";qH()});var zne={};vt(zne,{ShaderComponent:()=>kne,default:()=>Bne});import{useContext as cUe,useEffect as bS,useId as lUe,useMemo as _S,useRef as SS,useState as Dne}from"react";import{createPortal as uUe}from"react-dom";import{jsx as Fne,jsxs as dUe}from"react/jsx-runtime";function HF(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 fUe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!HF(i)&&(n[r]=i);return n}var hUe,mUe,Lne,kne,Bne,WF=z(()=>{"use strict";mt();gt();yt();Nne();hUe={display:"contents"},mUe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Lne={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&&(Lne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}kne=t=>{let e=cUe(V);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=lUe(),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(()=>fUe(t,Lne),[t]),d=_S(()=>({...mUe,...t.transform}),[t.transform]),h=SS(null),f=!!Eu.capturesDOM,g=SS(null),[y,_]=Dne(!1),[b,S]=Dne(()=>({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}));bS(()=>{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=SS(void 0),v=SS(null);v.current===null&&(ae(a),v.current=de(Eu,u,s));let C=_S(()=>({...e,shaderParentId:s}),[e,s]);bS(()=>{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]),bS(()=>{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 E=SS({}),M=_S(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&HF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(bS(()=>{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(HF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),bS(()=>{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?uUe(Fne("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 dUe(V.Provider,{value:C,children:[Fne("span",{ref:h,style:hUe,"data-shader-id":s,children:!f&&t.children}),R]})},Bne=kne});var Vne=z(()=>{"use strict";XH()});var Xne={};vt(Xne,{ShaderComponent:()=>jne,default:()=>qne});import{useContext as pUe,useEffect as wS,useId as gUe,useMemo as MS,useRef as TS,useState as Gne}from"react";import{createPortal as yUe}from"react-dom";import{jsx as Hne,jsxs as vUe}from"react/jsx-runtime";function jF(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 xUe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!jF(i)&&(n[r]=i);return n}var bUe,_Ue,Wne,jne,qne,qF=z(()=>{"use strict";mt();gt();yt();Vne();bUe={display:"contents"},_Ue={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Wne={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&&(Wne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}jne=t=>{let e=pUe(V);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=gUe(),s=MS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=MS(()=>xUe(t,Wne),[t]),d=MS(()=>({..._Ue,...t.transform}),[t.transform]),h=TS(null),f=!!Cu.capturesDOM,g=TS(null),[y,_]=Gne(!1),[b,S]=Gne(()=>({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}));wS(()=>{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=TS(void 0),v=TS(null);v.current===null&&(ae(a),v.current=de(Cu,u,s));let C=MS(()=>({...e,shaderParentId:s}),[e,s]);wS(()=>{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]),wS(()=>{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 E=TS({}),M=MS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&jF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(wS(()=>{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(jF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),wS(()=>{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?yUe(Hne("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 vUe(V.Provider,{value:C,children:[Hne("span",{ref:h,style:bUe,"data-shader-id":s,children:!f&&t.children}),R]})},qne=jne});var $ne=z(()=>{"use strict";$H()});var ere={};vt(ere,{ShaderComponent:()=>Jne,default:()=>Qne});import{useContext as SUe,useEffect as ES,useId as wUe,useMemo as CS,useRef as RS,useState as Yne}from"react";import{createPortal as MUe}from"react-dom";import{jsx as Zne,jsxs as TUe}from"react/jsx-runtime";function XF(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 EUe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!XF(i)&&(n[r]=i);return n}var CUe,RUe,Kne,Jne,Qne,$F=z(()=>{"use strict";mt();gt();yt();$ne();CUe={display:"contents"},RUe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Kne={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&&(Kne[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Jne=t=>{let e=SUe(V);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=wUe(),s=CS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=CS(()=>EUe(t,Kne),[t]),d=CS(()=>({...RUe,...t.transform}),[t.transform]),h=RS(null),f=!!Ru.capturesDOM,g=RS(null),[y,_]=Yne(!1),[b,S]=Yne(()=>({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=RS(void 0),v=RS(null);v.current===null&&(ae(a),v.current=de(Ru,u,s));let C=CS(()=>({...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,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]),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 E=RS({}),M=CS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&XF(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(XF(T))return;T!==E.current[c]&&(i(s,c,T),E.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?MUe(Zne("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 TUe(V.Provider,{value:C,children:[Zne("span",{ref:h,style:CUe,"data-shader-id":s,children:!f&&t.children}),R]})},Qne=Jne});var tre=z(()=>{"use strict";YH()});var are={};vt(are,{ShaderComponent:()=>ore,default:()=>sre});import{useContext as AUe,useEffect as AS,useId as PUe,useMemo as PS,useRef as IS,useState as nre}from"react";import{createPortal as IUe}from"react-dom";import{jsx as rre,jsxs as OUe}from"react/jsx-runtime";function YF(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 UUe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!YF(i)&&(n[r]=i);return n}var NUe,DUe,ire,ore,sre,ZF=z(()=>{"use strict";mt();gt();yt();tre();NUe={display:"contents"},DUe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},ire={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&&(ire[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}ore=t=>{let e=AUe(V);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=PUe(),s=PS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=PS(()=>UUe(t,ire),[t]),d=PS(()=>({...DUe,...t.transform}),[t.transform]),h=IS(null),f=!!Au.capturesDOM,g=IS(null),[y,_]=nre(!1),[b,S]=nre(()=>({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}));AS(()=>{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=IS(void 0),v=IS(null);v.current===null&&(ae(a),v.current=de(Au,u,s));let C=PS(()=>({...e,shaderParentId:s}),[e,s]);AS(()=>{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]),AS(()=>{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 E=IS({}),M=PS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&YF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(AS(()=>{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(YF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),AS(()=>{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?IUe(rre("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 OUe(V.Provider,{value:C,children:[rre("span",{ref:h,style:NUe,"data-shader-id":s,children:!f&&t.children}),R]})},sre=ore});var cre=z(()=>{"use strict";ZH()});var mre={};vt(mre,{ShaderComponent:()=>fre,default:()=>hre});import{useContext as FUe,useEffect as OS,useId as LUe,useMemo as US,useRef as NS,useState as lre}from"react";import{createPortal as kUe}from"react-dom";import{jsx as ure,jsxs as BUe}from"react/jsx-runtime";function KF(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 zUe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!KF(i)&&(n[r]=i);return n}var VUe,GUe,dre,fre,hre,JF=z(()=>{"use strict";mt();gt();yt();cre();VUe={display:"contents"},GUe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},dre={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&&(dre[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}fre=t=>{let e=FUe(V);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=LUe(),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(()=>zUe(t,dre),[t]),d=US(()=>({...GUe,...t.transform}),[t.transform]),h=NS(null),f=!!Pu.capturesDOM,g=NS(null),[y,_]=lre(!1),[b,S]=lre(()=>({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}));OS(()=>{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&&(ae(a),v.current=de(Pu,u,s));let C=US(()=>({...e,shaderParentId:s}),[e,s]);OS(()=>{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]),OS(()=>{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 E=NS({}),M=US(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&KF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(OS(()=>{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(KF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),OS(()=>{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?kUe(ure("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 BUe(V.Provider,{value:C,children:[ure("span",{ref:h,style:VUe,"data-shader-id":s,children:!f&&t.children}),R]})},hre=fre});var pre=z(()=>{"use strict";KH()});var _re={};vt(_re,{ShaderComponent:()=>xre,default:()=>bre});import{useContext as HUe,useEffect as DS,useId as WUe,useMemo as FS,useRef as LS,useState as gre}from"react";import{createPortal as jUe}from"react-dom";import{jsx as yre,jsxs as qUe}from"react/jsx-runtime";function QF(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 XUe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!QF(i)&&(n[r]=i);return n}var $Ue,YUe,vre,xre,bre,eL=z(()=>{"use strict";mt();gt();yt();pre();$Ue={display:"contents"},YUe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},vre={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&&(vre[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}xre=t=>{let e=HUe(V);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=WUe(),s=FS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=FS(()=>XUe(t,vre),[t]),d=FS(()=>({...YUe,...t.transform}),[t.transform]),h=LS(null),f=!!Iu.capturesDOM,g=LS(null),[y,_]=gre(!1),[b,S]=gre(()=>({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}));DS(()=>{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=LS(void 0),v=LS(null);v.current===null&&(ae(a),v.current=de(Iu,u,s));let C=FS(()=>({...e,shaderParentId:s}),[e,s]);DS(()=>{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]),DS(()=>{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 E=LS({}),M=FS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&QF(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(DS(()=>{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(QF(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),DS(()=>{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?jUe(yre("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 qUe(V.Provider,{value:C,children:[yre("span",{ref:h,style:$Ue,"data-shader-id":s,children:!f&&t.children}),R]})},bre=xre});var Sre=z(()=>{"use strict";JH()});var Rre={};vt(Rre,{ShaderComponent:()=>Ere,default:()=>Cre});import{useContext as ZUe,useEffect as kS,useId as KUe,useMemo as BS,useRef as zS,useState as wre}from"react";import{createPortal as JUe}from"react-dom";import{jsx as Mre,jsxs as QUe}from"react/jsx-runtime";function tL(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&&!tL(i)&&(n[r]=i);return n}var tNe,nNe,Tre,Ere,Cre,nL=z(()=>{"use strict";mt();gt();yt();Sre();tNe={display:"contents"},nNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Tre={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&&(Tre[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Ere=t=>{let e=ZUe(V);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=KUe(),s=BS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=BS(()=>eNe(t,Tre),[t]),d=BS(()=>({...nNe,...t.transform}),[t.transform]),h=zS(null),f=!!Ou.capturesDOM,g=zS(null),[y,_]=wre(!1),[b,S]=wre(()=>({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}));kS(()=>{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=zS(void 0),v=zS(null);v.current===null&&(ae(a),v.current=de(Ou,u,s));let C=BS(()=>({...e,shaderParentId:s}),[e,s]);kS(()=>{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]),kS(()=>{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 E=zS({}),M=BS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&tL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(kS(()=>{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(tL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),kS(()=>{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?JUe(Mre("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 QUe(V.Provider,{value:C,children:[Mre("span",{ref:h,style:tNe,"data-shader-id":s,children:!f&&t.children}),R]})},Cre=Ere});var Are=z(()=>{"use strict";eW()});var Dre={};vt(Dre,{ShaderComponent:()=>Ure,default:()=>Nre});import{useContext as rNe,useEffect as VS,useId as iNe,useMemo as GS,useRef as HS,useState as Pre}from"react";import{createPortal as oNe}from"react-dom";import{jsx as Ire,jsxs as sNe}from"react/jsx-runtime";function rL(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&&!rL(i)&&(n[r]=i);return n}var cNe,lNe,Ore,Ure,Nre,iL=z(()=>{"use strict";mt();gt();yt();Are();cNe={display:"contents"},lNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Ore={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&&(Ore[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Ure=t=>{let e=rNe(V);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=GS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=GS(()=>aNe(t,Ore),[t]),d=GS(()=>({...lNe,...t.transform}),[t.transform]),h=HS(null),f=!!Nu.capturesDOM,g=HS(null),[y,_]=Pre(!1),[b,S]=Pre(()=>({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}));VS(()=>{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=HS(void 0),v=HS(null);v.current===null&&(ae(a),v.current=de(Nu,u,s));let C=GS(()=>({...e,shaderParentId:s}),[e,s]);VS(()=>{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]),VS(()=>{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 E=HS({}),M=GS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&rL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(VS(()=>{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(rL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),VS(()=>{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(Ire("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(V.Provider,{value:C,children:[Ire("span",{ref:h,style:cNe,"data-shader-id":s,children:!f&&t.children}),R]})},Nre=Ure});var Fre=z(()=>{"use strict";QH()});var Gre={};vt(Gre,{ShaderComponent:()=>zre,default:()=>Vre});import{useContext as uNe,useEffect as WS,useId as dNe,useMemo as jS,useRef as qS,useState as Lre}from"react";import{createPortal as fNe}from"react-dom";import{jsx as kre,jsxs as hNe}from"react/jsx-runtime";function oL(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 mNe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!oL(i)&&(n[r]=i);return n}var pNe,gNe,Bre,zre,Vre,sL=z(()=>{"use strict";mt();gt();yt();Fre();pNe={display:"contents"},gNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Bre={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&&(Bre[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}zre=t=>{let e=uNe(V);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=dNe(),s=jS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=jS(()=>mNe(t,Bre),[t]),d=jS(()=>({...gNe,...t.transform}),[t.transform]),h=qS(null),f=!!Uu.capturesDOM,g=qS(null),[y,_]=Lre(!1),[b,S]=Lre(()=>({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}));WS(()=>{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=qS(void 0),v=qS(null);v.current===null&&(ae(a),v.current=de(Uu,u,s));let C=jS(()=>({...e,shaderParentId:s}),[e,s]);WS(()=>{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]),WS(()=>{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 E=qS({}),M=jS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&oL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(WS(()=>{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(oL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),WS(()=>{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?fNe(kre("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 hNe(V.Provider,{value:C,children:[kre("span",{ref:h,style:pNe,"data-shader-id":s,children:!f&&t.children}),R]})},Vre=zre});var Hre=z(()=>{"use strict";tW()});var Yre={};vt(Yre,{ShaderComponent:()=>Xre,default:()=>$re});import{useContext as yNe,useEffect as XS,useId as vNe,useMemo as $S,useRef as YS,useState as Wre}from"react";import{createPortal as xNe}from"react-dom";import{jsx as jre,jsxs as bNe}from"react/jsx-runtime";function aL(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 _Ne(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!aL(i)&&(n[r]=i);return n}var SNe,wNe,qre,Xre,$re,cL=z(()=>{"use strict";mt();gt();yt();Hre();SNe={display:"contents"},wNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},qre={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&&(qre[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Xre=t=>{let e=yNe(V);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=vNe(),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(()=>_Ne(t,qre),[t]),d=$S(()=>({...wNe,...t.transform}),[t.transform]),h=YS(null),f=!!Du.capturesDOM,g=YS(null),[y,_]=Wre(!1),[b,S]=Wre(()=>({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}));XS(()=>{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=YS(void 0),v=YS(null);v.current===null&&(ae(a),v.current=de(Du,u,s));let C=$S(()=>({...e,shaderParentId:s}),[e,s]);XS(()=>{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]),XS(()=>{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 E=YS({}),M=$S(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&aL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(XS(()=>{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(aL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),XS(()=>{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?xNe(jre("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 bNe(V.Provider,{value:C,children:[jre("span",{ref:h,style:SNe,"data-shader-id":s,children:!f&&t.children}),R]})},$re=Xre});var Zre=z(()=>{"use strict";nW()});var nie={};vt(nie,{ShaderComponent:()=>eie,default:()=>tie});import{useContext as MNe,useEffect as ZS,useId as TNe,useMemo as KS,useRef as JS,useState as Kre}from"react";import{createPortal as ENe}from"react-dom";import{jsx as Jre,jsxs as CNe}from"react/jsx-runtime";function lL(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 RNe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!lL(i)&&(n[r]=i);return n}var ANe,PNe,Qre,eie,tie,uL=z(()=>{"use strict";mt();gt();yt();Zre();ANe={display:"contents"},PNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Qre={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&&(Qre[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}eie=t=>{let e=MNe(V);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=TNe(),s=KS(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=KS(()=>RNe(t,Qre),[t]),d=KS(()=>({...PNe,...t.transform}),[t.transform]),h=JS(null),f=!!Fu.capturesDOM,g=JS(null),[y,_]=Kre(!1),[b,S]=Kre(()=>({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}));ZS(()=>{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=JS(void 0),v=JS(null);v.current===null&&(ae(a),v.current=de(Fu,u,s));let C=KS(()=>({...e,shaderParentId:s}),[e,s]);ZS(()=>{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]),ZS(()=>{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 E=JS({}),M=KS(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&lL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(ZS(()=>{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(lL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ZS(()=>{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?ENe(Jre("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 CNe(V.Provider,{value:C,children:[Jre("span",{ref:h,style:ANe,"data-shader-id":s,children:!f&&t.children}),R]})},tie=eie});var rie=z(()=>{"use strict";rW()});var lie={};vt(lie,{ShaderComponent:()=>aie,default:()=>cie});import{useContext as INe,useEffect as QS,useId as ONe,useMemo as ew,useRef as tw,useState as iie}from"react";import{createPortal as UNe}from"react-dom";import{jsx as oie,jsxs as NNe}from"react/jsx-runtime";function dL(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 DNe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!dL(i)&&(n[r]=i);return n}var FNe,LNe,sie,aie,cie,fL=z(()=>{"use strict";mt();gt();yt();rie();FNe={display:"contents"},LNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},sie={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&&(sie[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}aie=t=>{let e=INe(V);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=ONe(),s=ew(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=ew(()=>DNe(t,sie),[t]),d=ew(()=>({...LNe,...t.transform}),[t.transform]),h=tw(null),f=!!Lu.capturesDOM,g=tw(null),[y,_]=iie(!1),[b,S]=iie(()=>({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}));QS(()=>{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=tw(void 0),v=tw(null);v.current===null&&(ae(a),v.current=de(Lu,u,s));let C=ew(()=>({...e,shaderParentId:s}),[e,s]);QS(()=>{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]),QS(()=>{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 E=tw({}),M=ew(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&dL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(QS(()=>{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(dL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),QS(()=>{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?UNe(oie("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 NNe(V.Provider,{value:C,children:[oie("span",{ref:h,style:FNe,"data-shader-id":s,children:!f&&t.children}),R]})},cie=aie});var uie=z(()=>{"use strict";iW()});var gie={};vt(gie,{ShaderComponent:()=>mie,default:()=>pie});import{useContext as kNe,useEffect as nw,useId as BNe,useMemo as rw,useRef as iw,useState as die}from"react";import{createPortal as zNe}from"react-dom";import{jsx as fie,jsxs as VNe}from"react/jsx-runtime";function hL(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 GNe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!hL(i)&&(n[r]=i);return n}var HNe,WNe,hie,mie,pie,mL=z(()=>{"use strict";mt();gt();yt();uie();HNe={display:"contents"},WNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},hie={blendMode:"normal",visible:!0};try{ku&&ku.props&&Object.entries(ku.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(hie[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}mie=t=>{let e=kNe(V);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=BNe(),s=rw(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=rw(()=>GNe(t,hie),[t]),d=rw(()=>({...WNe,...t.transform}),[t.transform]),h=iw(null),f=!!ku.capturesDOM,g=iw(null),[y,_]=die(!1),[b,S]=die(()=>({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}));nw(()=>{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=iw(void 0),v=iw(null);v.current===null&&(ae(a),v.current=de(ku,u,s));let C=rw(()=>({...e,shaderParentId:s}),[e,s]);nw(()=>{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,ku.fragmentNode,n,c,v.current,ku,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]),nw(()=>{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 E=iw({}),M=rw(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&hL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(nw(()=>{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(hL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),nw(()=>{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?zNe(fie("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 VNe(V.Provider,{value:C,children:[fie("span",{ref:h,style:HNe,"data-shader-id":s,children:!f&&t.children}),R]})},pie=mie});var yie=z(()=>{"use strict";oW()});var wie={};vt(wie,{ShaderComponent:()=>_ie,default:()=>Sie});import{useContext as jNe,useEffect as ow,useId as qNe,useMemo as sw,useRef as aw,useState as vie}from"react";import{createPortal as XNe}from"react-dom";import{jsx as xie,jsxs as $Ne}from"react/jsx-runtime";function pL(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 YNe(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!pL(i)&&(n[r]=i);return n}var ZNe,KNe,bie,_ie,Sie,gL=z(()=>{"use strict";mt();gt();yt();yie();ZNe={display:"contents"},KNe={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},bie={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&&(bie[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}_ie=t=>{let e=jNe(V);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=qNe(),s=sw(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=sw(()=>YNe(t,bie),[t]),d=sw(()=>({...KNe,...t.transform}),[t.transform]),h=aw(null),f=!!Bu.capturesDOM,g=aw(null),[y,_]=vie(!1),[b,S]=vie(()=>({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}));ow(()=>{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=aw(void 0),v=aw(null);v.current===null&&(ae(a),v.current=de(Bu,u,s));let C=sw(()=>({...e,shaderParentId:s}),[e,s]);ow(()=>{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]),ow(()=>{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 E=aw({}),M=sw(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&pL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(ow(()=>{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(pL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),ow(()=>{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?XNe(xie("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 $Ne(V.Provider,{value:C,children:[xie("span",{ref:h,style:ZNe,"data-shader-id":s,children:!f&&t.children}),R]})},Sie=_ie});var Mie=z(()=>{"use strict";sW()});var Pie={};vt(Pie,{ShaderComponent:()=>Rie,default:()=>Aie});import{useContext as JNe,useEffect as cw,useId as QNe,useMemo as lw,useRef as uw,useState as Tie}from"react";import{createPortal as e3e}from"react-dom";import{jsx as Eie,jsxs as t3e}from"react/jsx-runtime";function yL(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 n3e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!yL(i)&&(n[r]=i);return n}var r3e,i3e,Cie,Rie,Aie,vL=z(()=>{"use strict";mt();gt();yt();Mie();r3e={display:"contents"},i3e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Cie={blendMode:"normal",visible:!0};try{zu&&zu.props&&Object.entries(zu.props).forEach(([t,e])=>{let n=e;n&&typeof n=="object"&&"default"in n&&(Cie[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Rie=t=>{let e=JNe(V);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=QNe(),s=lw(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=lw(()=>n3e(t,Cie),[t]),d=lw(()=>({...i3e,...t.transform}),[t.transform]),h=uw(null),f=!!zu.capturesDOM,g=uw(null),[y,_]=Tie(!1),[b,S]=Tie(()=>({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}));cw(()=>{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=uw(void 0),v=uw(null);v.current===null&&(ae(a),v.current=de(zu,u,s));let C=lw(()=>({...e,shaderParentId:s}),[e,s]);cw(()=>{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,zu.fragmentNode,n,c,v.current,zu,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]),cw(()=>{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 E=uw({}),M=lw(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&yL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(cw(()=>{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(yL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),cw(()=>{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?e3e(Eie("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 t3e(V.Provider,{value:C,children:[Eie("span",{ref:h,style:r3e,"data-shader-id":s,children:!f&&t.children}),R]})},Aie=Rie});var Iie=z(()=>{"use strict";aW()});var Lie={};vt(Lie,{ShaderComponent:()=>Die,default:()=>Fie});import{useContext as o3e,useEffect as dw,useId as s3e,useMemo as fw,useRef as hw,useState as Oie}from"react";import{createPortal as a3e}from"react-dom";import{jsx as Uie,jsxs as c3e}from"react/jsx-runtime";function xL(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 l3e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!xL(i)&&(n[r]=i);return n}var u3e,d3e,Nie,Die,Fie,bL=z(()=>{"use strict";mt();gt();yt();Iie();u3e={display:"contents"},d3e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Nie={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&&(Nie[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Die=t=>{let e=o3e(V);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=s3e(),s=fw(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=fw(()=>l3e(t,Nie),[t]),d=fw(()=>({...d3e,...t.transform}),[t.transform]),h=hw(null),f=!!Vu.capturesDOM,g=hw(null),[y,_]=Oie(!1),[b,S]=Oie(()=>({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}));dw(()=>{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=hw(void 0),v=hw(null);v.current===null&&(ae(a),v.current=de(Vu,u,s));let C=fw(()=>({...e,shaderParentId:s}),[e,s]);dw(()=>{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]),dw(()=>{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 E=hw({}),M=fw(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&xL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(dw(()=>{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(xL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),dw(()=>{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?a3e(Uie("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 c3e(V.Provider,{value:C,children:[Uie("span",{ref:h,style:u3e,"data-shader-id":s,children:!f&&t.children}),R]})},Fie=Die});var kie=z(()=>{"use strict";mW()});var Wie={};vt(Wie,{ShaderComponent:()=>Gie,default:()=>Hie});import{useContext as f3e,useEffect as mw,useId as h3e,useMemo as pw,useRef as gw,useState as Bie}from"react";import{createPortal as m3e}from"react-dom";import{jsx as zie,jsxs as p3e}from"react/jsx-runtime";function _L(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 g3e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!_L(i)&&(n[r]=i);return n}var y3e,v3e,Vie,Gie,Hie,SL=z(()=>{"use strict";mt();gt();yt();kie();y3e={display:"contents"},v3e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},Vie={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&&(Vie[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Gie=t=>{let e=f3e(V);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=h3e(),s=pw(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=pw(()=>g3e(t,Vie),[t]),d=pw(()=>({...v3e,...t.transform}),[t.transform]),h=gw(null),f=!!Gu.capturesDOM,g=gw(null),[y,_]=Bie(!1),[b,S]=Bie(()=>({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}));mw(()=>{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=gw(void 0),v=gw(null);v.current===null&&(ae(a),v.current=de(Gu,u,s));let C=pw(()=>({...e,shaderParentId:s}),[e,s]);mw(()=>{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]),mw(()=>{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 E=gw({}),M=pw(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&_L(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(mw(()=>{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(_L(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),mw(()=>{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?m3e(zie("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 p3e(V.Provider,{value:C,children:[zie("span",{ref:h,style:y3e,"data-shader-id":s,children:!f&&t.children}),R]})},Hie=Gie});var jie=z(()=>{"use strict";gW()});var Kie={};vt(Kie,{ShaderComponent:()=>Yie,default:()=>Zie});import{useContext as x3e,useEffect as yw,useId as b3e,useMemo as vw,useRef as xw,useState as qie}from"react";import{createPortal as _3e}from"react-dom";import{jsx as Xie,jsxs as S3e}from"react/jsx-runtime";function wL(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 w3e(t,e){let n={...e};for(let[r,i]of Object.entries(t))r!=="children"&&r!=="ref"&&i!==void 0&&!wL(i)&&(n[r]=i);return n}var M3e,T3e,$ie,Yie,Zie,ML=z(()=>{"use strict";mt();gt();yt();jie();M3e={display:"contents"},T3e={offsetX:0,offsetY:0,rotation:0,scale:1,anchorX:.5,anchorY:.5,edges:"transparent"},$ie={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&&($ie[t]=n.default)})}catch(t){console.warn("Error extracting default props:",t)}Yie=t=>{let e=x3e(V);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=b3e(),s=vw(()=>(t.id?t.id.replace(/[^a-zA-Z0-9_]/g,"_"):null)||l.replace(/[^a-zA-Z0-9_]/g,""),[t.id,l]),u=vw(()=>w3e(t,$ie),[t]),d=vw(()=>({...T3e,...t.transform}),[t.transform]),h=xw(null),f=!!Hu.capturesDOM,g=xw(null),[y,_]=qie(!1),[b,S]=qie(()=>({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}));yw(()=>{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=xw(void 0),v=xw(null);v.current===null&&(ae(a),v.current=de(Hu,u,s));let C=vw(()=>({...e,shaderParentId:s}),[e,s]);yw(()=>{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]),yw(()=>{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 E=xw({}),M=vw(()=>{let c={};for(let[m,x]of Object.entries(t))m!=="children"&&m!=="ref"&&wL(x)&&(c[m]=x);return Object.keys(c).length>0?c:void 0},[t]);if(yw(()=>{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(wL(T))return;T!==E.current[c]&&(i(s,c,T),E.current[c]=T)}})}catch(c){console.error("Error updating uniforms:",c)}},[u,s,i]),yw(()=>{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?_3e(Xie("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 S3e(V.Provider,{value:C,children:[Xie("span",{ref:h,style:M3e,"data-shader-id":s,children:!f&&t.children}),R]})},Zie=Yie});mt();iN();sN();cN();uN();fN();mN();gN();vN();bN();SN();MN();EN();RN();PN();ON();NN();FN();kN();zN();GN();WN();qN();$N();ZN();JN();e3();n3();i3();s3();c3();u3();f3();m3();g3();v3();b3();S3();M3();E3();R3();P3();O3();N3();F3();k3();z3();G3();W3();q3();$3();Z3();J3();eD();nD();iD();sD();cD();uD();fD();mD();gD();vD();bD();SD();MD();ED();RD();PD();OD();ND();FD();kD();zD();GD();WD();qD();$D();ZD();JD();eF();nF();iF();sF();cF();uF();fF();mF();gF();vF();bF();SF();MF();EF();RF();PF();OF();NF();FF();kF();zF();GF();WF();qF();$F();ZF();JF();eL();nL();iL();sL();cL();uL();fL();mL();gL();vL();bL();SL();ML();mt();import{Suspense as E3e,lazy as xt,useEffect as TL,useMemo as C3e,useRef as R3e,useState as Jie}from"react";import{jsx as Qh,jsxs as A3e}from"react/jsx-runtime";function P3e(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 I3e(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=P3e(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 O3e=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 U3e(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 O3e.has(i)?`_${i}`:i}function N3e(t){let e=new Set(["style"]),n=new Map;return t?.length&&t.forEach((r,i)=>{if(!r.targets?.length)return;let o=U3e(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 Qie(t,e){for(let n of e){if(n.id===t)return n;if(n.children?.length){let r=Qie(t,n.children);if(r)return r}}return null}function D3e(t,e,n){if(!e||!n?.length)return t;let r=Object.entries(e);if(r.length===0)return t;let i=N3e(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=Qie(u.component_id,o);d?.props&&u.prop in d.props&&(d.props[u.prop]=l)}}return{...t,components:o}}var F3e={AngularBlur:xt(()=>Promise.resolve().then(()=>(iN(),DW))),Ascii:xt(()=>Promise.resolve().then(()=>(sN(),GW))),Aurora:xt(()=>Promise.resolve().then(()=>(cN(),YW))),BarShift:xt(()=>Promise.resolve().then(()=>(uN(),nj))),Beam:xt(()=>Promise.resolve().then(()=>(fN(),lj))),Blob:xt(()=>Promise.resolve().then(()=>(mN(),gj))),Blur:xt(()=>Promise.resolve().then(()=>(gN(),wj))),BrickPattern:xt(()=>Promise.resolve().then(()=>(vN(),Pj))),BrightnessContrast:xt(()=>Promise.resolve().then(()=>(bN(),Lj))),Bulge:xt(()=>Promise.resolve().then(()=>(SN(),Wj))),CRTScreen:xt(()=>Promise.resolve().then(()=>(MN(),Kj))),ChannelBlur:xt(()=>Promise.resolve().then(()=>(EN(),i7))),Checkerboard:xt(()=>Promise.resolve().then(()=>(RN(),d7))),Chevron:xt(()=>Promise.resolve().then(()=>(PN(),v7))),ChromaFlow:xt(()=>Promise.resolve().then(()=>(ON(),T7))),ChromaticAberration:xt(()=>Promise.resolve().then(()=>(NN(),O7))),Circle:xt(()=>Promise.resolve().then(()=>(FN(),B7))),ColorWheel:xt(()=>Promise.resolve().then(()=>(kN(),q7))),ConcentricSpin:xt(()=>Promise.resolve().then(()=>(zN(),Q7))),ConicGradient:xt(()=>Promise.resolve().then(()=>(GN(),sq))),ContourLines:xt(()=>Promise.resolve().then(()=>(WN(),hq))),Crescent:xt(()=>Promise.resolve().then(()=>(qN(),bq))),Cross:xt(()=>Promise.resolve().then(()=>($N(),Cq))),Crystal:xt(()=>Promise.resolve().then(()=>(ZN(),Nq))),CursorRipples:xt(()=>Promise.resolve().then(()=>(JN(),Vq))),CursorTrail:xt(()=>Promise.resolve().then(()=>(e3(),$q))),DOMTexture:xt(()=>Promise.resolve().then(()=>(n3(),tX))),DiamondGradient:xt(()=>Promise.resolve().then(()=>(i3(),cX))),DiffuseBlur:xt(()=>Promise.resolve().then(()=>(s3(),pX))),Dither:xt(()=>Promise.resolve().then(()=>(c3(),SX))),DotGrid:xt(()=>Promise.resolve().then(()=>(u3(),AX))),DropShadow:xt(()=>Promise.resolve().then(()=>(f3(),FX))),Duotone:xt(()=>Promise.resolve().then(()=>(m3(),HX))),Ellipse:xt(()=>Promise.resolve().then(()=>(g3(),ZX))),Emboss:xt(()=>Promise.resolve().then(()=>(v3(),r$))),Exposure:xt(()=>Promise.resolve().then(()=>(b3(),u$))),FallingLines:xt(()=>Promise.resolve().then(()=>(S3(),y$))),FilmGrain:xt(()=>Promise.resolve().then(()=>(M3(),M$))),FloatingParticles:xt(()=>Promise.resolve().then(()=>(E3(),I$))),FlowField:xt(()=>Promise.resolve().then(()=>(R3(),k$))),Flower:xt(()=>Promise.resolve().then(()=>(P3(),j$))),FlowingGradient:xt(()=>Promise.resolve().then(()=>(O3(),J$))),FlutedGlass:xt(()=>Promise.resolve().then(()=>(N3(),oY))),Fog:xt(()=>Promise.resolve().then(()=>(F3(),fY))),Form3D:xt(()=>Promise.resolve().then(()=>(k3(),xY))),FractalNoise:xt(()=>Promise.resolve().then(()=>(z3(),EY))),Glass:xt(()=>Promise.resolve().then(()=>(G3(),UY))),GlassTiles:xt(()=>Promise.resolve().then(()=>(W3(),zY))),Glitch:xt(()=>Promise.resolve().then(()=>(q3(),XY))),Glow:xt(()=>Promise.resolve().then(()=>($3(),eZ))),Godrays:xt(()=>Promise.resolve().then(()=>(Z3(),aZ))),Grayscale:xt(()=>Promise.resolve().then(()=>(J3(),mZ))),Grid:xt(()=>Promise.resolve().then(()=>(eD(),_Z))),GridDistortion:xt(()=>Promise.resolve().then(()=>(nD(),RZ))),Group:xt(()=>Promise.resolve().then(()=>(iD(),DZ))),Halftone:xt(()=>Promise.resolve().then(()=>(sD(),GZ))),HexGrid:xt(()=>Promise.resolve().then(()=>(cD(),YZ))),HueShift:xt(()=>Promise.resolve().then(()=>(uD(),nK))),ImageTexture:xt(()=>Promise.resolve().then(()=>(fD(),lK))),Invert:xt(()=>Promise.resolve().then(()=>(mD(),gK))),Kaleidoscope:xt(()=>Promise.resolve().then(()=>(gD(),wK))),LensFlare:xt(()=>Promise.resolve().then(()=>(vD(),PK))),LinearBlur:xt(()=>Promise.resolve().then(()=>(bD(),LK))),LinearGradient:xt(()=>Promise.resolve().then(()=>(SD(),WK))),Liquify:xt(()=>Promise.resolve().then(()=>(MD(),KK))),Marble:xt(()=>Promise.resolve().then(()=>(ED(),iJ))),Mirror:xt(()=>Promise.resolve().then(()=>(RD(),dJ))),MultiPointGradient:xt(()=>Promise.resolve().then(()=>(PD(),vJ))),Neon:xt(()=>Promise.resolve().then(()=>(OD(),TJ))),Paper:xt(()=>Promise.resolve().then(()=>(ND(),OJ))),Perspective:xt(()=>Promise.resolve().then(()=>(FD(),BJ))),Pixelate:xt(()=>Promise.resolve().then(()=>(kD(),qJ))),Plasma:xt(()=>Promise.resolve().then(()=>(zD(),QJ))),PolarCoordinates:xt(()=>Promise.resolve().then(()=>(GD(),sQ))),Polygon:xt(()=>Promise.resolve().then(()=>(WD(),hQ))),Posterize:xt(()=>Promise.resolve().then(()=>(qD(),bQ))),ProgressiveBlur:xt(()=>Promise.resolve().then(()=>($D(),CQ))),RadialGradient:xt(()=>Promise.resolve().then(()=>(ZD(),NQ))),RectangularCoordinates:xt(()=>Promise.resolve().then(()=>(JD(),VQ))),ReflectivePlane:xt(()=>Promise.resolve().then(()=>(eF(),$Q))),Ring:xt(()=>Promise.resolve().then(()=>(nF(),tee))),Ripples:xt(()=>Promise.resolve().then(()=>(iF(),cee))),RoundedRect:xt(()=>Promise.resolve().then(()=>(sF(),pee))),Saturation:xt(()=>Promise.resolve().then(()=>(cF(),See))),Sharpness:xt(()=>Promise.resolve().then(()=>(uF(),Aee))),Shatter:xt(()=>Promise.resolve().then(()=>(fF(),Fee))),SimplexNoise:xt(()=>Promise.resolve().then(()=>(mF(),Hee))),SineWave:xt(()=>Promise.resolve().then(()=>(gF(),Zee))),Smoke:xt(()=>Promise.resolve().then(()=>(vF(),rte))),SmokeFill:xt(()=>Promise.resolve().then(()=>(bF(),ute))),Solarize:xt(()=>Promise.resolve().then(()=>(SF(),yte))),SolidColor:xt(()=>Promise.resolve().then(()=>(MF(),Mte))),Spherize:xt(()=>Promise.resolve().then(()=>(EF(),Ite))),Spiral:xt(()=>Promise.resolve().then(()=>(RF(),kte))),Star:xt(()=>Promise.resolve().then(()=>(PF(),jte))),Strands:xt(()=>Promise.resolve().then(()=>(OF(),Jte))),Stretch:xt(()=>Promise.resolve().then(()=>(NF(),one))),Stripes:xt(()=>Promise.resolve().then(()=>(FF(),fne))),StudioBackground:xt(()=>Promise.resolve().then(()=>(kF(),xne))),SunBurst:xt(()=>Promise.resolve().then(()=>(zF(),Ene))),Swirl:xt(()=>Promise.resolve().then(()=>(GF(),Une))),ThinFilm:xt(()=>Promise.resolve().then(()=>(WF(),zne))),TiltShift:xt(()=>Promise.resolve().then(()=>(qF(),Xne))),Tint:xt(()=>Promise.resolve().then(()=>($F(),ere))),Trapezoid:xt(()=>Promise.resolve().then(()=>(ZF(),are))),Tritone:xt(()=>Promise.resolve().then(()=>(JF(),mre))),Truchet:xt(()=>Promise.resolve().then(()=>(eL(),_re))),Twirl:xt(()=>Promise.resolve().then(()=>(nL(),Rre))),VHS:xt(()=>Promise.resolve().then(()=>(iL(),Dre))),Vesica:xt(()=>Promise.resolve().then(()=>(sL(),Gre))),Vibrance:xt(()=>Promise.resolve().then(()=>(cL(),Yre))),VideoTexture:xt(()=>Promise.resolve().then(()=>(uL(),nie))),Vignette:xt(()=>Promise.resolve().then(()=>(fL(),lie))),Voronoi:xt(()=>Promise.resolve().then(()=>(mL(),gie))),WaveDistortion:xt(()=>Promise.resolve().then(()=>(gL(),wie))),Weave:xt(()=>Promise.resolve().then(()=>(vL(),Pie))),WebcamTexture:xt(()=>Promise.resolve().then(()=>(bL(),Lie))),WorleyNoise:xt(()=>Promise.resolve().then(()=>(SL(),Wie))),ZoomBlur:xt(()=>Promise.resolve().then(()=>(ML(),Kie)))},L3e="shaders-preview-key";function k3e(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 eoe({component:t}){let e=F3e[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),Qh(e,{...l,children:r?.map((s,u)=>Qh(eoe,{component:s},s.id||u))})}var B3e=({shader:t,presetId:e,apiBaseUrl:n="https://shaders.com",obfuscationKey:r=L3e,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]=Jie(null),[g,y]=Jie(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 C=v.preset||v.shader;C?.definition&&typeof C.definition=="string"&&(f(I3e(C.definition,r)),y(Array.isArray(C.key_props)?C.key_props:null))}).catch(v=>{console.error("[Shaders Preview] Failed to fetch preview:",v)})};TL(()=>{t?_(`${n}/api/preview/shader/${t}`):e||(f(null),y(null))},[t,e,n,r]),TL(()=>{e?_(`${n}/api/preview/preset/${e}${u?`?version=${encodeURIComponent(u)}`:""}`):t||(f(null),y(null))},[e,t,n,r,u]);let b=C3e(()=>h?D3e(h,s,g):null,[h,g,s]),S=R3e(!1);return TL(()=>{!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?A3e("div",{style:{position:"relative",...typeof a=="string"?k3e(a):a},className:l,...d,children:[Qh(E3e,{fallback:null,children:Qh(nN,{colorSpace:b.colorSpace||"p3-linear",isPreview:!0,style:{width:"100%",height:"100%"},children:b.components.map((w,v)=>Qh(eoe,{component:w},w.id||v))})}),i&&Qh("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?Qh("a",{href:o,target:"_blank",rel:"noopener noreferrer",style:{color:"inherit",textDecoration:"none"},children:i}):i})]}):null};export{NW as AngularBlur,VW as Ascii,$W as Aurora,tj as BarShift,cj as Beam,pj as Blob,Sj as Blur,Aj as BrickPattern,Fj as BrightnessContrast,Hj as Bulge,Zj as CRTScreen,r7 as ChannelBlur,u7 as Checkerboard,y7 as Chevron,M7 as ChromaFlow,I7 as ChromaticAberration,k7 as Circle,j7 as ColorWheel,J7 as ConcentricSpin,oq as ConicGradient,fq as ContourLines,xq as Crescent,Eq as Cross,Uq as Crystal,zq as CursorRipples,Xq as CursorTrail,eX as DOMTexture,aX as DiamondGradient,mX as DiffuseBlur,_X as Dither,RX as DotGrid,DX as DropShadow,GX as Duotone,YX as Ellipse,n$ as Emboss,l$ as Exposure,g$ as FallingLines,w$ as FilmGrain,P$ as FloatingParticles,L$ as FlowField,W$ as Flower,K$ as FlowingGradient,iY as FlutedGlass,dY as Fog,vY as Form3D,TY as FractalNoise,OY as Glass,BY as GlassTiles,qY as Glitch,QY as Glow,sZ as Godrays,hZ as Grayscale,bZ as Grid,CZ as GridDistortion,NZ as Group,VZ as Halftone,$Z as HexGrid,tK as HueShift,cK as ImageTexture,pK as Invert,SK as Kaleidoscope,AK as LensFlare,FK as LinearBlur,HK as LinearGradient,ZK as Liquify,rJ as Marble,uJ as Mirror,yJ as MultiPointGradient,MJ as Neon,IJ as Paper,kJ as Perspective,jJ as Pixelate,JJ as Plasma,oQ as PolarCoordinates,fQ as Polygon,xQ as Posterize,B3e as Preview,EQ as ProgressiveBlur,UQ as RadialGradient,zQ as RectangularCoordinates,XQ as ReflectivePlane,eee as Ring,aee as Ripples,mee as RoundedRect,_ee as Saturation,nSe as Shader,Ree as Sharpness,Dee as Shatter,Gee as SimplexNoise,Yee as SineWave,nte as Smoke,lte as SmokeFill,gte as Solarize,wte as SolidColor,Pte as Spherize,Lte as Spiral,Wte as Star,Kte as Strands,ine as Stretch,dne as Stripes,vne as StudioBackground,Tne as SunBurst,One as Swirl,Bne as ThinFilm,qne as TiltShift,Qne as Tint,sre as Trapezoid,hre as Tritone,bre as Truchet,Cre as Twirl,Nre as VHS,Vre as Vesica,$re as Vibrance,tie as VideoTexture,cie as Vignette,pie as Voronoi,Sie as WaveDistortion,Aie as Weave,Fie as WebcamTexture,Hie as WorleyNoise,Zie as ZoomBlur};
|