360 lines
430 KiB
JavaScript
360 lines
430 KiB
JavaScript
// @bun
|
|
var YU=Object.create;var{getPrototypeOf:XU,defineProperty:CW,getOwnPropertyNames:$U}=Object;var ZU=Object.prototype.hasOwnProperty;var PW=(Y,X,$)=>{$=Y!=null?YU(XU(Y)):{};let Z=X||!Y||!Y.__esModule?CW($,"default",{value:Y,enumerable:!0}):$;for(let W of $U(Y))if(!ZU.call(Z,W))CW(Z,W,{get:()=>Y[W],enumerable:!0});return Z};var T$=(Y,X)=>()=>(X||Y((X={exports:{}}).exports,X),X.exports);var RY=(Y,X)=>{for(var $ in X)CW(Y,$,{get:X[$],enumerable:!0,configurable:!0,set:(Z)=>X[$]=()=>Z})};var o1=(Y,X)=>()=>(Y&&(X=Y(Y=0)),X);var k$=import.meta.require;var m1,bX;var X6=o1(()=>{m1=class m1 extends Error{constructor(){super("End-Of-Stream");this.name="EndOfStreamError"}};bX=class bX extends Error{constructor(Y="The operation was aborted"){super(Y);this.name="AbortError"}}});class BJ{constructor(){this.resolve=()=>null,this.reject=()=>null,this.promise=new Promise((Y,X)=>{this.reject=X,this.resolve=Y})}}class gX{constructor(){this.endOfStream=!1,this.interrupted=!1,this.peekQueue=[]}async peek(Y,X=!1){let $=await this.read(Y,X);return this.peekQueue.push(Y.subarray(0,$)),$}async read(Y,X=!1){if(Y.length===0)return 0;let $=this.readFromPeekBuffer(Y);if(!this.endOfStream)$+=await this.readRemainderFromStream(Y.subarray($),X);if($===0)throw new m1;return $}readFromPeekBuffer(Y){let X=Y.length,$=0;while(this.peekQueue.length>0&&X>0){let Z=this.peekQueue.pop();if(!Z)throw new Error("peekData should be defined");let W=Math.min(Z.length,X);if(Y.set(Z.subarray(0,W),$),$+=W,X-=W,W<Z.length)this.peekQueue.push(Z.subarray(W))}return $}async readRemainderFromStream(Y,X){let $=0;while($<Y.length&&!this.endOfStream){if(this.interrupted)throw new bX;let Z=await this.readFromStream(Y.subarray($),X);if(Z===0)break;$+=Z}if(!X&&$<Y.length)throw new m1;return $}}var LZ=o1(()=>{X6()});var qZ;var m9=o1(()=>{X6();LZ();qZ=class qZ extends gX{constructor(Y){super();if(this.s=Y,this.deferred=null,!Y.read||!Y.once)throw new Error("Expected an instance of stream.Readable");this.s.once("end",()=>{if(this.endOfStream=!0,this.deferred)this.deferred.resolve(0)}),this.s.once("error",(X)=>this.reject(X)),this.s.once("close",()=>this.abort())}async readFromStream(Y,X){if(Y.length===0)return 0;let $=this.s.read(Y.length);if($)return Y.set($),$.length;let Z={buffer:Y,mayBeLess:X,deferred:new BJ};return this.deferred=Z.deferred,this.s.once("readable",()=>{this.readDeferred(Z)}),Z.deferred.promise}readDeferred(Y){let X=this.s.read(Y.buffer.length);if(X)Y.buffer.set(X),Y.deferred.resolve(X.length),this.deferred=null;else this.s.once("readable",()=>{this.readDeferred(Y)})}reject(Y){if(this.interrupted=!0,this.deferred)this.deferred.reject(Y),this.deferred=null}async abort(){this.reject(new bX)}async close(){return this.abort()}}});var KJ;var p9=o1(()=>{LZ();KJ=class KJ extends gX{constructor(Y){super();this.reader=Y}async abort(){return this.close()}async close(){this.reader.releaseLock()}}});var _Z;var LJ=o1(()=>{p9();_Z=class _Z extends KJ{async readFromStream(Y,X){if(Y.length===0)return 0;let $=await this.reader.read(new Uint8Array(Y.length),{min:X?void 0:Y.length});if($.done)this.endOfStream=$.done;if($.value)return Y.set($.value),$.value.length;return 0}}});var $6;var qJ=o1(()=>{X6();LZ();$6=class $6 extends gX{constructor(Y){super();this.reader=Y,this.buffer=null}writeChunk(Y,X){let $=Math.min(X.length,Y.length);if(Y.set(X.subarray(0,$)),$<X.length)this.buffer=X.subarray($);else this.buffer=null;return $}async readFromStream(Y,X){if(Y.length===0)return 0;let $=0;if(this.buffer)$+=this.writeChunk(Y,this.buffer);while($<Y.length&&!this.endOfStream){let Z=await this.reader.read();if(Z.done){this.endOfStream=!0;break}if(Z.value)$+=this.writeChunk(Y.subarray($),Z.value)}if($===0&&this.endOfStream)throw new m1;return $}abort(){return this.interrupted=!0,this.reader.cancel()}async close(){await this.abort(),this.reader.releaseLock()}}});function _J(Y){try{let X=Y.getReader({mode:"byob"});if(X instanceof ReadableStreamDefaultReader)return new $6(X);return new _Z(X)}catch(X){if(X instanceof TypeError)return new $6(Y.getReader());throw X}}var c9=o1(()=>{LJ();qJ()});var fX=o1(()=>{X6();m9();LJ();qJ();c9()});class MX{constructor(Y){if(this.numBuffer=new Uint8Array(8),this.position=0,this.onClose=Y?.onClose,Y?.abortSignal)Y.abortSignal.addEventListener("abort",()=>{this.abort()})}async readToken(Y,X=this.position){let $=new Uint8Array(Y.len);if(await this.readBuffer($,{position:X})<Y.len)throw new m1;return Y.get($,0)}async peekToken(Y,X=this.position){let $=new Uint8Array(Y.len);if(await this.peekBuffer($,{position:X})<Y.len)throw new m1;return Y.get($,0)}async readNumber(Y){if(await this.readBuffer(this.numBuffer,{length:Y.len})<Y.len)throw new m1;return Y.get(this.numBuffer,0)}async peekNumber(Y){if(await this.peekBuffer(this.numBuffer,{length:Y.len})<Y.len)throw new m1;return Y.get(this.numBuffer,0)}async ignore(Y){if(this.fileInfo.size!==void 0){let X=this.fileInfo.size-this.position;if(Y>X)return this.position+=X,X}return this.position+=Y,Y}async close(){await this.abort(),await this.onClose?.()}normalizeOptions(Y,X){if(!this.supportsRandomAccess()&&X&&X.position!==void 0&&X.position<this.position)throw new Error("`options.position` must be equal or greater than `tokenizer.position`");return{...{mayBeLess:!1,offset:0,length:Y.length,position:this.position},...X}}abort(){return Promise.resolve()}}var Z6=o1(()=>{fX()});var dK=256000,RZ;var u9=o1(()=>{Z6();fX();RZ=class RZ extends MX{constructor(Y,X){super(X);this.streamReader=Y,this.fileInfo=X?.fileInfo??{}}async readBuffer(Y,X){let $=this.normalizeOptions(Y,X),Z=$.position-this.position;if(Z>0)return await this.ignore(Z),this.readBuffer(Y,X);if(Z<0)throw new Error("`options.position` must be equal or greater than `tokenizer.position`");if($.length===0)return 0;let W=await this.streamReader.read(Y.subarray(0,$.length),$.mayBeLess);if(this.position+=W,(!X||!X.mayBeLess)&&W<$.length)throw new m1;return W}async peekBuffer(Y,X){let $=this.normalizeOptions(Y,X),Z=0;if($.position){let W=$.position-this.position;if(W>0){let J=new Uint8Array($.length+W);return Z=await this.peekBuffer(J,{mayBeLess:$.mayBeLess}),Y.set(J.subarray(W)),Z-W}if(W<0)throw new Error("Cannot peek from a negative offset in a stream")}if($.length>0){try{Z=await this.streamReader.peek(Y.subarray(0,$.length),$.mayBeLess)}catch(W){if(X?.mayBeLess&&W instanceof m1)return 0;throw W}if(!$.mayBeLess&&Z<$.length)throw new m1}return Z}async ignore(Y){let X=Math.min(dK,Y),$=new Uint8Array(X),Z=0;while(Z<Y){let W=Y-Z,J=await this.readBuffer($,{length:Math.min(X,W)});if(J<0)return J;Z+=J}return Z}abort(){return this.streamReader.abort()}async close(){return this.streamReader.close()}supportsRandomAccess(){return!1}}});var RJ;var i9=o1(()=>{fX();Z6();RJ=class RJ extends MX{constructor(Y,X){super(X);this.uint8Array=Y,this.fileInfo={...X?.fileInfo??{},...{size:Y.length}}}async readBuffer(Y,X){if(X?.position)this.position=X.position;let $=await this.peekBuffer(Y,X);return this.position+=$,$}async peekBuffer(Y,X){let $=this.normalizeOptions(Y,X),Z=Math.min(this.uint8Array.length-$.position,$.length);if(!$.mayBeLess&&Z<$.length)throw new m1;return Y.set(this.uint8Array.subarray($.position,$.position+Z)),Z}close(){return super.close()}supportsRandomAccess(){return!0}setPosition(Y){this.position=Y}}});function o9(Y,X){let $=new qZ(Y),Z=X??{},W=Z.onClose;return Z.onClose=async()=>{if(await $.close(),W)return W()},new RZ($,Z)}function EZ(Y,X){let $=_J(Y),Z=X??{},W=Z.onClose;return Z.onClose=async()=>{if(await $.close(),W)return W()},new RZ($,Z)}function l9(Y,X){return new RJ(Y,X)}var VZ=o1(()=>{fX();u9();i9();fX();Z6()});import{open as pK}from"fs/promises";var W6;var EJ=o1(()=>{Z6();fX();W6=class W6 extends MX{static async fromFile(Y){let X=await pK(Y,"r"),$=await X.stat();return new W6(X,{fileInfo:{path:Y,size:$.size}})}constructor(Y,X){super(X);this.fileHandle=Y,this.fileInfo=X.fileInfo}async readBuffer(Y,X){let $=this.normalizeOptions(Y,X);if(this.position=$.position,$.length===0)return 0;let Z=await this.fileHandle.read(Y,0,$.length,$.position);if(this.position+=Z.bytesRead,Z.bytesRead<$.length&&(!X||!X.mayBeLess))throw new m1;return Z.bytesRead}async peekBuffer(Y,X){let $=this.normalizeOptions(Y,X),Z=await this.fileHandle.read(Y,0,$.length,$.position);if(!$.mayBeLess&&Z.bytesRead<$.length)throw new m1;return Z.bytesRead}async close(){return await this.fileHandle.close(),super.close()}setPosition(Y){this.position=Y}supportsRandomAccess(){return!0}}});import{stat as cK}from"fs/promises";async function n9(Y,X){let $=o9(Y,X);if(Y.path){let Z=await cK(Y.path);$.fileInfo.path=Y.path,$.fileInfo.size=Z.size}return $}var t9;var s9=o1(()=>{VZ();EJ();EJ();VZ();t9=W6.fromFile});var r9=o1(()=>{/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */});function Y8(Y){return new DataView(Y.buffer,Y.byteOffset)}class K8{constructor(Y,X){this.len=Y,this.encoding=X,this.textDecoder=new TextDecoder(X)}get(Y,X){return this.textDecoder.decode(Y.subarray(X,X+this.len))}}var a9,t1,w$,U0,e9,YQ,XQ;var J6=o1(()=>{r9();a9={len:1,get(Y,X){return Y8(Y).getUint8(X)},put(Y,X,$){return Y8(Y).setUint8(X,$),X+1}},t1={len:2,get(Y,X){return Y8(Y).getUint16(X,!0)},put(Y,X,$){return Y8(Y).setUint16(X,$,!0),X+2}},w$={len:2,get(Y,X){return Y8(Y).getUint16(X)},put(Y,X,$){return Y8(Y).setUint16(X,$),X+2}},U0={len:4,get(Y,X){return Y8(Y).getUint32(X,!0)},put(Y,X,$){return Y8(Y).setUint32(X,$,!0),X+4}},e9={len:4,get(Y,X){return Y8(Y).getUint32(X)},put(Y,X,$){return Y8(Y).setUint32(X,$),X+4}},YQ={len:4,get(Y,X){return Y8(Y).getInt32(X)},put(Y,X,$){return Y8(Y).setInt32(X,$),X+4}},XQ={len:8,get(Y,X){return Y8(Y).getBigUint64(X,!0)},put(Y,X,$){return Y8(Y).setBigUint64(X,$,!0),X+8}}});import{createRequire as lK}from"module";function HL(Y,X){return CJ(Y,{i:2},X&&X.out,X&&X.dictionary)}function UL(Y,X){var $=QL(Y);if($+8>Y.length)L8(6,"invalid gzip data");return CJ(Y.subarray($,-8),{i:2},X&&X.out||new q8(GL(Y)),X&&X.dictionary)}function zL(Y,X){return CJ(Y.subarray(ML(Y,X&&X.dictionary),-4),{i:2},X&&X.out,X&&X.dictionary)}function HQ(Y,X){return Y[0]==31&&Y[1]==139&&Y[2]==8?UL(Y,X):(Y[0]&15)!=8||Y[0]>>4>7||(Y[0]<<8|Y[1])%31?HL(Y,X):zL(Y,X)}var nK,tK,q8,F$,sK,$Q,ZQ,rK,WQ=function(Y,X){var $=new F$(31);for(var Z=0;Z<31;++Z)$[Z]=X+=1<<Y[Z-1];var W=new sK($[30]);for(var Z=1;Z<30;++Z)for(var J=$[Z];J<$[Z+1];++J)W[J]=J-$[Z]<<5|Z;return{b:$,r:W}},JQ,QQ,aK,GQ,eK,Gv,SJ,NY,z1,Q6=function(Y,X,$){var Z=Y.length,W=0,J=new F$(X);for(;W<Z;++W)if(Y[W])++J[Y[W]-1];var Q=new F$(X);for(W=1;W<X;++W)Q[W]=Q[W-1]+J[W-1]<<1;var G;if($){G=new F$(1<<X);var M=15-X;for(W=0;W<Z;++W)if(Y[W]){var H=W<<4|Y[W],U=X-Y[W],A=Q[Y[W]-1]++<<U;for(var N=A|(1<<U)-1;A<=N;++A)G[SJ[A]>>M]=H}}else{G=new F$(Z);for(W=0;W<Z;++W)if(Y[W])G[W]=SJ[Q[Y[W]-1]++]>>15-Y[W]}return G},G6,z1,z1,z1,z1,MQ,z1,YL,XL,VJ=function(Y){var X=Y[0];for(var $=1;$<Y.length;++$)if(Y[$]>X)X=Y[$];return X},$Y=function(Y,X,$){var Z=X/8|0;return(Y[Z]|Y[Z+1]<<8)>>(X&7)&$},jJ=function(Y,X){var $=X/8|0;return(Y[$]|Y[$+1]<<8|Y[$+2]<<16)>>(X&7)},$L=function(Y){return(Y+7)/8|0},ZL=function(Y,X,$){if(X==null||X<0)X=0;if($==null||$>Y.length)$=Y.length;return new q8(Y.subarray(X,$))},WL,L8=function(Y,X,$){var Z=new Error(X||WL[Y]);if(Z.code=Y,Error.captureStackTrace)Error.captureStackTrace(Z,L8);if(!$)throw Z;return Z},CJ=function(Y,X,$,Z){var W=Y.length,J=Z?Z.length:0;if(!W||X.f&&!X.l)return $||new q8(0);var Q=!$,G=Q||X.i!=2,M=X.i;if(Q)$=new q8(W*3);var H=function(D){var E=$.length;if(D>E){var w=new q8(Math.max(E*2,D));w.set($),$=w}},U=X.f||0,A=X.p||0,N=X.b||0,O=X.l,z=X.d,L=X.m,F=X.n,g=W*8;do{if(!O){U=$Y(Y,A,1);var V=$Y(Y,A+1,3);if(A+=3,!V){var v=$L(A)+4,s=Y[v-4]|Y[v-3]<<8,o=v+s;if(o>W){if(M)L8(0);break}if(G)H(N+s);$.set(Y.subarray(v,o),N),X.b=N+=s,X.p=A=o*8,X.f=U;continue}else if(V==1)O=YL,z=XL,L=9,F=5;else if(V==2){var x=$Y(Y,A,31)+257,T=$Y(Y,A+10,15)+4,P=x+$Y(Y,A+5,31)+1;A+=14;var k=new q8(P),r=new q8(19);for(var n=0;n<T;++n)r[rK[n]]=$Y(Y,A+n*3,7);A+=T*3;var X1=VJ(r),W1=(1<<X1)-1,$1=Q6(r,X1,1);for(var n=0;n<P;){var H8=$1[$Y(Y,A,W1)];A+=H8&15;var v=H8>>4;if(v<16)k[n++]=v;else{var I0=0,y8=0;if(v==16)y8=3+$Y(Y,A,3),A+=2,I0=k[n-1];else if(v==17)y8=3+$Y(Y,A,7),A+=3;else if(v==18)y8=11+$Y(Y,A,127),A+=7;while(y8--)k[n++]=I0}}var qY=k.subarray(0,x),R8=k.subarray(x);L=VJ(qY),F=VJ(R8),O=Q6(qY,L,1),z=Q6(R8,F,1)}else L8(1);if(A>g){if(M)L8(0);break}}if(G)H(N+131072);var GY=(1<<L)-1,X0=(1<<F)-1,D0=A;for(;;D0=A){var I0=O[jJ(Y,A)&GY],E0=I0>>4;if(A+=I0&15,A>g){if(M)L8(0);break}if(!I0)L8(2);if(E0<256)$[N++]=E0;else if(E0==256){D0=A,O=null;break}else{var h8=E0-254;if(E0>264){var n=E0-257,y0=$Q[n];h8=$Y(Y,A,(1<<y0)-1)+QQ[n],A+=y0}var E8=z[jJ(Y,A)&X0],aY=E8>>4;if(!E8)L8(3);A+=E8&15;var R8=eK[aY];if(aY>3){var y0=ZQ[aY];R8+=jJ(Y,A)&(1<<y0)-1,A+=y0}if(A>g){if(M)L8(0);break}if(G)H(N+131072);var d8=N+h8;if(N<R8){var m=J-R8,b=Math.min(R8,d8);if(m+N<0)L8(3);for(;N<b;++N)$[N]=Z[m+N]}for(;N<d8;++N)$[N]=$[N-R8]}}if(X.l=O,X.p=D0,X.b=N,X.f=U,O)U=1,X.m=L,X.d=z,X.n=F}while(!U);return N!=$.length&&Q?ZL($,0,N):$.subarray(0,N)},JL,QL=function(Y){if(Y[0]!=31||Y[1]!=139||Y[2]!=8)L8(6,"invalid gzip data");var X=Y[3],$=10;if(X&4)$+=(Y[10]|Y[11]<<8)+2;for(var Z=(X>>3&1)+(X>>4&1);Z>0;Z-=!Y[$++]);return $+(X&2)},GL=function(Y){var X=Y.length;return(Y[X-4]|Y[X-3]<<8|Y[X-2]<<16|Y[X-1]<<24)>>>0},ML=function(Y,X){if((Y[0]&15)!=8||Y[0]>>4>7||(Y[0]<<8|Y[1])%31)L8(6,"invalid zlib data");if((Y[1]>>5&1)==+!X)L8(6,"invalid zlib data: "+(Y[1]&32?"need":"unexpected")+" dictionary");return(Y[1]>>3&4)+2},DL,AL=0;var UQ=o1(()=>{nK=lK("/");try{tK=nK("worker_threads").Worker}catch(Y){}q8=Uint8Array,F$=Uint16Array,sK=Int32Array,$Q=new q8([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),ZQ=new q8([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),rK=new q8([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),JQ=WQ($Q,2),QQ=JQ.b,aK=JQ.r;QQ[28]=258,aK[258]=28;GQ=WQ(ZQ,0),eK=GQ.b,Gv=GQ.r,SJ=new F$(32768);for(z1=0;z1<32768;++z1)NY=(z1&43690)>>1|(z1&21845)<<1,NY=(NY&52428)>>2|(NY&13107)<<2,NY=(NY&61680)>>4|(NY&3855)<<4,SJ[z1]=((NY&65280)>>8|(NY&255)<<8)>>1;G6=new q8(288);for(z1=0;z1<144;++z1)G6[z1]=8;for(z1=144;z1<256;++z1)G6[z1]=9;for(z1=256;z1<280;++z1)G6[z1]=7;for(z1=280;z1<288;++z1)G6[z1]=8;MQ=new q8(32);for(z1=0;z1<32;++z1)MQ[z1]=5;YL=Q6(G6,9,1),XL=Q6(MQ,5,1),WL=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],JL=new q8(0);DL=typeof TextDecoder!="undefined"&&new TextDecoder;try{DL.decode(JL,{stream:!0}),AL=1}catch(Y){}});var DQ=T$((Hv,zQ)=>{var B$=1000,K$=B$*60,L$=K$*60,vX=L$*24,OL=vX*7,NL=vX*365.25;zQ.exports=function(Y,X){X=X||{};var $=typeof Y;if($==="string"&&Y.length>0)return wL(Y);else if($==="number"&&isFinite(Y))return X.long?BL(Y):FL(Y);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(Y))};function wL(Y){if(Y=String(Y),Y.length>100)return;var X=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(Y);if(!X)return;var $=parseFloat(X[1]),Z=(X[2]||"ms").toLowerCase();switch(Z){case"years":case"year":case"yrs":case"yr":case"y":return $*NL;case"weeks":case"week":case"w":return $*OL;case"days":case"day":case"d":return $*vX;case"hours":case"hour":case"hrs":case"hr":case"h":return $*L$;case"minutes":case"minute":case"mins":case"min":case"m":return $*K$;case"seconds":case"second":case"secs":case"sec":case"s":return $*B$;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return $;default:return}}function FL(Y){var X=Math.abs(Y);if(X>=vX)return Math.round(Y/vX)+"d";if(X>=L$)return Math.round(Y/L$)+"h";if(X>=K$)return Math.round(Y/K$)+"m";if(X>=B$)return Math.round(Y/B$)+"s";return Y+"ms"}function BL(Y){var X=Math.abs(Y);if(X>=vX)return jZ(Y,X,vX,"day");if(X>=L$)return jZ(Y,X,L$,"hour");if(X>=K$)return jZ(Y,X,K$,"minute");if(X>=B$)return jZ(Y,X,B$,"second");return Y+" ms"}function jZ(Y,X,$,Z){var W=X>=$*1.5;return Math.round(Y/$)+" "+Z+(W?"s":"")}});var PJ=T$((Uv,AQ)=>{function KL(Y){$.debug=$,$.default=$,$.coerce=M,$.disable=Q,$.enable=W,$.enabled=G,$.humanize=DQ(),$.destroy=H,Object.keys(Y).forEach((U)=>{$[U]=Y[U]}),$.names=[],$.skips=[],$.formatters={};function X(U){let A=0;for(let N=0;N<U.length;N++)A=(A<<5)-A+U.charCodeAt(N),A|=0;return $.colors[Math.abs(A)%$.colors.length]}$.selectColor=X;function $(U){let A,N=null,O,z;function L(...F){if(!L.enabled)return;let g=L,V=Number(new Date),v=V-(A||V);if(g.diff=v,g.prev=A,g.curr=V,A=V,F[0]=$.coerce(F[0]),typeof F[0]!=="string")F.unshift("%O");let s=0;F[0]=F[0].replace(/%([a-zA-Z%])/g,(x,T)=>{if(x==="%%")return"%";s++;let P=$.formatters[T];if(typeof P==="function"){let k=F[s];x=P.call(g,k),F.splice(s,1),s--}return x}),$.formatArgs.call(g,F),(g.log||$.log).apply(g,F)}if(L.namespace=U,L.useColors=$.useColors(),L.color=$.selectColor(U),L.extend=Z,L.destroy=$.destroy,Object.defineProperty(L,"enabled",{enumerable:!0,configurable:!1,get:()=>{if(N!==null)return N;if(O!==$.namespaces)O=$.namespaces,z=$.enabled(U);return z},set:(F)=>{N=F}}),typeof $.init==="function")$.init(L);return L}function Z(U,A){let N=$(this.namespace+(typeof A==="undefined"?":":A)+U);return N.log=this.log,N}function W(U){$.save(U),$.namespaces=U,$.names=[],$.skips=[];let A=(typeof U==="string"?U:"").trim().replace(" ",",").split(",").filter(Boolean);for(let N of A)if(N[0]==="-")$.skips.push(N.slice(1));else $.names.push(N)}function J(U,A){let N=0,O=0,z=-1,L=0;while(N<U.length)if(O<A.length&&(A[O]===U[N]||A[O]==="*"))if(A[O]==="*")z=O,L=N,O++;else N++,O++;else if(z!==-1)O=z+1,L++,N=L;else return!1;while(O<A.length&&A[O]==="*")O++;return O===A.length}function Q(){let U=[...$.names,...$.skips.map((A)=>"-"+A)].join(",");return $.enable(""),U}function G(U){for(let A of $.skips)if(J(U,A))return!1;for(let A of $.names)if(J(U,A))return!0;return!1}function M(U){if(U instanceof Error)return U.stack||U.message;return U}function H(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return $.enable($.load()),$}AQ.exports=KL});var NQ=T$((OQ,CZ)=>{OQ.formatArgs=qL;OQ.save=_L;OQ.load=RL;OQ.useColors=LL;OQ.storage=EL();OQ.destroy=(()=>{let Y=!1;return()=>{if(!Y)Y=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}})();OQ.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function LL(){if(typeof window!=="undefined"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let Y;return typeof document!=="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!=="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!=="undefined"&&navigator.userAgent&&(Y=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(Y[1],10)>=31||typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function qL(Y){if(Y[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+Y[0]+(this.useColors?"%c ":" ")+"+"+CZ.exports.humanize(this.diff),!this.useColors)return;let X="color: "+this.color;Y.splice(1,0,X,"color: inherit");let $=0,Z=0;Y[0].replace(/%[a-zA-Z%]/g,(W)=>{if(W==="%%")return;if($++,W==="%c")Z=$}),Y.splice(Z,0,X)}OQ.log=console.debug||console.log||(()=>{});function _L(Y){try{if(Y)OQ.storage.setItem("debug",Y);else OQ.storage.removeItem("debug")}catch(X){}}function RL(){let Y;try{Y=OQ.storage.getItem("debug")}catch(X){}if(!Y&&typeof process!=="undefined"&&"env"in process)Y=process.env.DEBUG;return Y}function EL(){try{return localStorage}catch(Y){}}CZ.exports=PJ()(OQ);var{formatters:VL}=CZ.exports;VL.j=function(Y){try{return JSON.stringify(Y)}catch(X){return"[UnexpectedJSONParseError]: "+X.message}}});var KQ=T$((FQ,IZ)=>{var kL=k$("tty"),PZ=k$("util");FQ.init=dL;FQ.log=vL;FQ.formatArgs=gL;FQ.save=yL;FQ.load=hL;FQ.useColors=bL;FQ.destroy=PZ.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");FQ.colors=[6,2,3,4,5,1];try{let Y=(()=>{throw new Error("Cannot require module "+"supports-color");})();if(Y&&(Y.stderr||Y).level>=2)FQ.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221]}catch(Y){}FQ.inspectOpts=Object.keys(process.env).filter((Y)=>{return/^debug_/i.test(Y)}).reduce((Y,X)=>{let $=X.substring(6).toLowerCase().replace(/_([a-z])/g,(W,J)=>{return J.toUpperCase()}),Z=process.env[X];if(/^(yes|on|true|enabled)$/i.test(Z))Z=!0;else if(/^(no|off|false|disabled)$/i.test(Z))Z=!1;else if(Z==="null")Z=null;else Z=Number(Z);return Y[$]=Z,Y},{});function bL(){return"colors"in FQ.inspectOpts?Boolean(FQ.inspectOpts.colors):kL.isatty(process.stderr.fd)}function gL(Y){let{namespace:X,useColors:$}=this;if($){let Z=this.color,W="\x1B[3"+(Z<8?Z:"8;5;"+Z),J=` ${W};1m${X} \x1B[0m`;Y[0]=J+Y[0].split(`
|
|
`).join(`
|
|
`+J),Y.push(W+"m+"+IZ.exports.humanize(this.diff)+"\x1B[0m")}else Y[0]=fL()+X+" "+Y[0]}function fL(){if(FQ.inspectOpts.hideDate)return"";return new Date().toISOString()+" "}function vL(...Y){return process.stderr.write(PZ.formatWithOptions(FQ.inspectOpts,...Y)+`
|
|
`)}function yL(Y){if(Y)process.env.DEBUG=Y;else delete process.env.DEBUG}function hL(){return process.env.DEBUG}function dL(Y){Y.inspectOpts={};let X=Object.keys(FQ.inspectOpts);for(let $=0;$<X.length;$++)Y.inspectOpts[X[$]]=FQ.inspectOpts[X[$]]}IZ.exports=PJ()(FQ);var{formatters:wQ}=IZ.exports;wQ.o=function(Y){return this.inspectOpts.colors=this.useColors,PZ.inspect(Y,this.inspectOpts).split(`
|
|
`).map((X)=>X.trim()).join(" ")};wQ.O=function(Y){return this.inspectOpts.colors=this.useColors,PZ.inspect(Y,this.inspectOpts)}});var LQ=T$((Av,IJ)=>{if(typeof process==="undefined"||process.type==="renderer"||!1||process.__nwjs)IJ.exports=NQ();else IJ.exports=KQ()});var hX,xJ,qQ,_Q,RQ;var EQ=o1(()=>{J6();hX={LocalFileHeader:67324752,DataDescriptor:134695760,CentralFileHeader:33639248,EndOfCentralDirectory:101010256},xJ={get(Y){let X=t1.get(Y,6);return{signature:U0.get(Y,0),compressedSize:U0.get(Y,8),uncompressedSize:U0.get(Y,12)}},len:16},qQ={get(Y){let X=t1.get(Y,6);return{signature:U0.get(Y,0),minVersion:t1.get(Y,4),dataDescriptor:!!(X&8),compressedMethod:t1.get(Y,8),compressedSize:U0.get(Y,18),uncompressedSize:U0.get(Y,22),filenameLength:t1.get(Y,26),extraFieldLength:t1.get(Y,28),filename:null}},len:30},_Q={get(Y){return{signature:U0.get(Y,0),nrOfThisDisk:t1.get(Y,4),nrOfThisDiskWithTheStart:t1.get(Y,6),nrOfEntriesOnThisDisk:t1.get(Y,8),nrOfEntriesOfSize:t1.get(Y,10),sizeOfCd:U0.get(Y,12),offsetOfStartOfCd:U0.get(Y,16),zipFileCommentLength:t1.get(Y,20)}},len:22},RQ={get(Y){let X=t1.get(Y,8);return{signature:U0.get(Y,0),minVersion:t1.get(Y,6),dataDescriptor:!!(X&8),compressedMethod:t1.get(Y,10),compressedSize:U0.get(Y,20),uncompressedSize:U0.get(Y,24),filenameLength:t1.get(Y,28),extraFieldLength:t1.get(Y,30),fileCommentLength:t1.get(Y,32),relativeOffsetOfLocalHeader:U0.get(Y,42),filename:null}},len:46}});function jQ(Y){let X=new Uint8Array(U0.len);return U0.put(X,0,Y),X}class kJ{constructor(Y){this.tokenizer=Y,this.syncBuffer=new Uint8Array(TJ)}async isZip(){return await this.peekSignature()===hX.LocalFileHeader}peekSignature(){return this.tokenizer.peekToken(U0)}async findEndOfCentralDirectoryLocator(){let Y=this.tokenizer,X=Math.min(16384,Y.fileInfo.size),$=this.syncBuffer.subarray(0,X);await this.tokenizer.readBuffer($,{position:Y.fileInfo.size-X});for(let Z=$.length-4;Z>=0;Z--)if($[Z]===xZ[0]&&$[Z+1]===xZ[1]&&$[Z+2]===xZ[2]&&$[Z+3]===xZ[3])return Y.fileInfo.size-X+Z;return-1}async readCentralDirectory(){if(!this.tokenizer.supportsRandomAccess()){wY("Cannot reading central-directory without random-read support");return}wY("Reading central-directory...");let Y=this.tokenizer.position,X=await this.findEndOfCentralDirectoryLocator();if(X>0){wY("Central-directory 32-bit signature found");let $=await this.tokenizer.readToken(_Q,X),Z=[];this.tokenizer.setPosition($.offsetOfStartOfCd);for(let W=0;W<$.nrOfEntriesOfSize;++W){let J=await this.tokenizer.readToken(RQ);if(J.signature!==hX.CentralFileHeader)throw new Error("Expected Central-File-Header signature");J.filename=await this.tokenizer.readToken(new K8(J.filenameLength,"utf-8")),await this.tokenizer.ignore(J.extraFieldLength),await this.tokenizer.ignore(J.fileCommentLength),Z.push(J),wY(`Add central-directory file-entry: n=${W+1}/${Z.length}: filename=${Z[W].filename}`)}return this.tokenizer.setPosition(Y),Z}this.tokenizer.setPosition(Y)}async unzip(Y){let X=await this.readCentralDirectory();if(X)return this.iterateOverCentralDirectory(X,Y);let $=!1;do{let Z=await this.readLocalFileHeader();if(!Z)break;let W=Y(Z);$=!!W.stop;let J=void 0;if(await this.tokenizer.ignore(Z.extraFieldLength),Z.dataDescriptor&&Z.compressedSize===0){let Q=[],G=TJ;wY("Compressed-file-size unknown, scanning for next data-descriptor-signature....");let M=-1;while(M<0&&G===TJ){G=await this.tokenizer.peekBuffer(this.syncBuffer,{mayBeLess:!0}),M=tL(this.syncBuffer.subarray(0,G),nL);let H=M>=0?M:G;if(W.handler){let U=new Uint8Array(H);await this.tokenizer.readBuffer(U),Q.push(U)}else await this.tokenizer.ignore(H)}if(wY(`Found data-descriptor-signature at pos=${this.tokenizer.position}`),W.handler)await this.inflate(Z,sL(Q),W.handler)}else if(W.handler)wY(`Reading compressed-file-data: ${Z.compressedSize} bytes`),J=new Uint8Array(Z.compressedSize),await this.tokenizer.readBuffer(J),await this.inflate(Z,J,W.handler);else wY(`Ignoring compressed-file-data: ${Z.compressedSize} bytes`),await this.tokenizer.ignore(Z.compressedSize);if(wY(`Reading data-descriptor at pos=${this.tokenizer.position}`),Z.dataDescriptor){if((await this.tokenizer.readToken(xJ)).signature!==134695760)throw new Error(`Expected data-descriptor-signature at position ${this.tokenizer.position-xJ.len}`)}}while(!$)}async iterateOverCentralDirectory(Y,X){for(let $ of Y){let Z=X($);if(Z.handler){this.tokenizer.setPosition($.relativeOffsetOfLocalHeader);let W=await this.readLocalFileHeader();if(W){await this.tokenizer.ignore(W.extraFieldLength);let J=new Uint8Array($.compressedSize);await this.tokenizer.readBuffer(J),await this.inflate(W,J,Z.handler)}}if(Z.stop)break}}inflate(Y,X,$){if(Y.compressedMethod===0)return $(X);wY(`Decompress filename=${Y.filename}, compressed-size=${X.length}`);let Z=HQ(X);return $(Z)}async readLocalFileHeader(){let Y=await this.tokenizer.peekToken(U0);if(Y===hX.LocalFileHeader){let X=await this.tokenizer.readToken(qQ);return X.filename=await this.tokenizer.readToken(new K8(X.filenameLength,"utf-8")),X}if(Y===hX.CentralFileHeader)return!1;if(Y===3759263696)throw new Error("Encrypted ZIP");throw new Error("Unexpected signature")}}function tL(Y,X){let $=Y.length,Z=X.length;if(Z>$)return-1;for(let W=0;W<=$-Z;W++){let J=!0;for(let Q=0;Q<Z;Q++)if(Y[W+Q]!==X[Q]){J=!1;break}if(J)return W}return-1}function sL(Y){let X=Y.reduce((W,J)=>W+J.length,0),$=new Uint8Array(X),Z=0;for(let W of Y)$.set(W,Z),Z+=W.length;return $}var VQ,wY,TJ=262144,nL,xZ;var SQ=o1(()=>{J6();UQ();VQ=PW(LQ(),1);EQ();wY=VQ.default("tokenizer:inflate"),nL=jQ(hX.DataDescriptor),xZ=jQ(hX.EndOfCentralDirectory)});function bJ(Y){let{byteLength:X}=Y;if(X===6)return Y.getUint16(0)*4294967296+Y.getUint32(2);if(X===5)return Y.getUint8(0)*4294967296+Y.getUint32(1);if(X===4)return Y.getUint32(0);if(X===3)return Y.getUint8(0)*65536+Y.getUint16(1);if(X===2)return Y.getUint16(0);if(X===1)return Y.getUint8(0)}var Lv,qv,_v;var CQ=o1(()=>{Lv={utf8:new globalThis.TextDecoder("utf8")},qv=new globalThis.TextEncoder,_v=Array.from({length:256},(Y,X)=>X.toString(16).padStart(2,"0"))});function PQ(Y){return[...Y].map((X)=>X.charCodeAt(0))}function IQ(Y,X=0){let $=Number.parseInt(new K8(6).get(Y,148).replace(/\0.*$/,"").trim(),8);if(Number.isNaN($))return!1;let Z=256;for(let W=X;W<X+148;W++)Z+=Y[W];for(let W=X+156;W<X+512;W++)Z+=Y[W];return $===Z}var xQ;var TQ=o1(()=>{J6();xQ={get:(Y,X)=>Y[X+3]&127|Y[X+2]<<7|Y[X+1]<<14|Y[X]<<21,len:4}});var kQ,bQ;var gQ=o1(()=>{kQ=["jpg","png","apng","gif","webp","flif","xcf","cr2","cr3","orf","arw","dng","nef","rw2","raf","tif","bmp","icns","jxr","psd","indd","zip","tar","rar","gz","bz2","7z","dmg","mp4","mid","mkv","webm","mov","avi","mpg","mp2","mp3","m4a","oga","ogg","ogv","opus","flac","wav","spx","amr","pdf","epub","elf","macho","exe","swf","rtf","wasm","woff","woff2","eot","ttf","otf","ttc","ico","flv","ps","xz","sqlite","nes","crx","xpi","cab","deb","ar","rpm","Z","lz","cfb","mxf","mts","blend","bpg","docx","pptx","xlsx","3gp","3g2","j2c","jp2","jpm","jpx","mj2","aif","qcp","odt","ods","odp","xml","mobi","heic","cur","ktx","ape","wv","dcm","ics","glb","pcap","dsf","lnk","alias","voc","ac3","m4v","m4p","m4b","f4v","f4p","f4b","f4a","mie","asf","ogm","ogx","mpc","arrow","shp","aac","mp1","it","s3m","xm","skp","avif","eps","lzh","pgp","asar","stl","chm","3mf","zst","jxl","vcf","jls","pst","dwg","parquet","class","arj","cpio","ace","avro","icc","fbx","vsdx","vtt","apk","drc","lz4","potx","xltx","dotx","xltm","ott","ots","otp","odg","otg","xlsm","docm","dotm","potm","pptm","jar","rm","ppsm","ppsx"],bQ=["image/jpeg","image/png","image/gif","image/webp","image/flif","image/x-xcf","image/x-canon-cr2","image/x-canon-cr3","image/tiff","image/bmp","image/vnd.ms-photo","image/vnd.adobe.photoshop","application/x-indesign","application/epub+zip","application/x-xpinstall","application/vnd.ms-powerpoint.slideshow.macroenabled.12","application/vnd.oasis.opendocument.text","application/vnd.oasis.opendocument.spreadsheet","application/vnd.oasis.opendocument.presentation","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/vnd.openxmlformats-officedocument.presentationml.slideshow","application/zip","application/x-tar","application/x-rar-compressed","application/gzip","application/x-bzip2","application/x-7z-compressed","application/x-apple-diskimage","application/vnd.apache.arrow.file","video/mp4","audio/midi","video/matroska","video/webm","video/quicktime","video/vnd.avi","audio/wav","audio/qcelp","audio/x-ms-asf","video/x-ms-asf","application/vnd.ms-asf","video/mpeg","video/3gpp","audio/mpeg","audio/mp4","video/ogg","audio/ogg","audio/ogg; codecs=opus","application/ogg","audio/flac","audio/ape","audio/wavpack","audio/amr","application/pdf","application/x-elf","application/x-mach-binary","application/x-msdownload","application/x-shockwave-flash","application/rtf","application/wasm","font/woff","font/woff2","application/vnd.ms-fontobject","font/ttf","font/otf","font/collection","image/x-icon","video/x-flv","application/postscript","application/eps","application/x-xz","application/x-sqlite3","application/x-nintendo-nes-rom","application/x-google-chrome-extension","application/vnd.ms-cab-compressed","application/x-deb","application/x-unix-archive","application/x-rpm","application/x-compress","application/x-lzip","application/x-cfb","application/x-mie","application/mxf","video/mp2t","application/x-blender","image/bpg","image/j2c","image/jp2","image/jpx","image/jpm","image/mj2","audio/aiff","application/xml","application/x-mobipocket-ebook","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/icns","image/ktx","application/dicom","audio/x-musepack","text/calendar","text/vcard","text/vtt","model/gltf-binary","application/vnd.tcpdump.pcap","audio/x-dsf","application/x.ms.shortcut","application/x.apple.alias","audio/x-voc","audio/vnd.dolby.dd-raw","audio/x-m4a","image/apng","image/x-olympus-orf","image/x-sony-arw","image/x-adobe-dng","image/x-nikon-nef","image/x-panasonic-rw2","image/x-fujifilm-raf","video/x-m4v","video/3gpp2","application/x-esri-shape","audio/aac","audio/x-it","audio/x-s3m","audio/x-xm","video/MP1S","video/MP2P","application/vnd.sketchup.skp","image/avif","application/x-lzh-compressed","application/pgp-encrypted","application/x-asar","model/stl","application/vnd.ms-htmlhelp","model/3mf","image/jxl","application/zstd","image/jls","application/vnd.ms-outlook","image/vnd.dwg","application/vnd.apache.parquet","application/java-vm","application/x-arj","application/x-cpio","application/x-ace-compressed","application/avro","application/vnd.iccprofile","application/x.autodesk.fbx","application/vnd.visio","application/vnd.android.package-archive","application/vnd.google.draco","application/x-lz4","application/vnd.openxmlformats-officedocument.presentationml.template","application/vnd.openxmlformats-officedocument.spreadsheetml.template","application/vnd.openxmlformats-officedocument.wordprocessingml.template","application/vnd.ms-excel.template.macroenabled.12","application/vnd.oasis.opendocument.text-template","application/vnd.oasis.opendocument.spreadsheet-template","application/vnd.oasis.opendocument.presentation-template","application/vnd.oasis.opendocument.graphics","application/vnd.oasis.opendocument.graphics-template","application/vnd.ms-excel.sheet.macroenabled.12","application/vnd.ms-word.document.macroenabled.12","application/vnd.ms-word.template.macroenabled.12","application/vnd.ms-powerpoint.template.macroenabled.12","application/vnd.ms-powerpoint.presentation.macroenabled.12","application/java-archive","application/vnd.rn-realmedia"]});async function fQ(Y,X){return new q$(X).fromBuffer(Y)}async function vQ(Y,X){return new q$(X).fromBlob(Y)}function gJ(Y){switch(Y=Y.toLowerCase(),Y){case"application/epub+zip":return{ext:"epub",mime:Y};case"application/vnd.oasis.opendocument.text":return{ext:"odt",mime:Y};case"application/vnd.oasis.opendocument.text-template":return{ext:"ott",mime:Y};case"application/vnd.oasis.opendocument.spreadsheet":return{ext:"ods",mime:Y};case"application/vnd.oasis.opendocument.spreadsheet-template":return{ext:"ots",mime:Y};case"application/vnd.oasis.opendocument.presentation":return{ext:"odp",mime:Y};case"application/vnd.oasis.opendocument.presentation-template":return{ext:"otp",mime:Y};case"application/vnd.oasis.opendocument.graphics":return{ext:"odg",mime:Y};case"application/vnd.oasis.opendocument.graphics-template":return{ext:"otg",mime:Y};case"application/vnd.openxmlformats-officedocument.presentationml.slideshow":return{ext:"ppsx",mime:Y};case"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":return{ext:"xlsx",mime:Y};case"application/vnd.ms-excel.sheet.macroenabled":return{ext:"xlsm",mime:"application/vnd.ms-excel.sheet.macroenabled.12"};case"application/vnd.openxmlformats-officedocument.spreadsheetml.template":return{ext:"xltx",mime:Y};case"application/vnd.ms-excel.template.macroenabled":return{ext:"xltm",mime:"application/vnd.ms-excel.template.macroenabled.12"};case"application/vnd.ms-powerpoint.slideshow.macroenabled":return{ext:"ppsm",mime:"application/vnd.ms-powerpoint.slideshow.macroenabled.12"};case"application/vnd.openxmlformats-officedocument.wordprocessingml.document":return{ext:"docx",mime:Y};case"application/vnd.ms-word.document.macroenabled":return{ext:"docm",mime:"application/vnd.ms-word.document.macroenabled.12"};case"application/vnd.openxmlformats-officedocument.wordprocessingml.template":return{ext:"dotx",mime:Y};case"application/vnd.ms-word.template.macroenabledtemplate":return{ext:"dotm",mime:"application/vnd.ms-word.template.macroenabled.12"};case"application/vnd.openxmlformats-officedocument.presentationml.template":return{ext:"potx",mime:Y};case"application/vnd.ms-powerpoint.template.macroenabled":return{ext:"potm",mime:"application/vnd.ms-powerpoint.template.macroenabled.12"};case"application/vnd.openxmlformats-officedocument.presentationml.presentation":return{ext:"pptx",mime:Y};case"application/vnd.ms-powerpoint.presentation.macroenabled":return{ext:"pptm",mime:"application/vnd.ms-powerpoint.presentation.macroenabled.12"};case"application/vnd.ms-visio.drawing":return{ext:"vsdx",mime:"application/vnd.visio"};case"application/vnd.ms-package.3dmanufacturing-3dmodel+xml":return{ext:"3mf",mime:"model/3mf"};default:}}function FY(Y,X,$){$={offset:0,...$};for(let[Z,W]of X.entries())if($.mask){if(W!==($.mask[Z]&Y[Z+$.offset]))return!1}else if(W!==Y[Z+$.offset])return!1;return!0}async function yQ(Y,X){return new q$(X).fromTokenizer(Y)}class q${constructor(Y){this.options={mpegOffsetTolerance:0,...Y},this.detectors=[...Y?.customDetectors??[],{id:"core",detect:this.detectConfident},{id:"core.imprecise",detect:this.detectImprecise}],this.tokenizerOptions={abortSignal:Y?.signal}}async fromTokenizer(Y){let X=Y.position;for(let $ of this.detectors){let Z=await $.detect(Y);if(Z)return Z;if(X!==Y.position)return}}async fromBuffer(Y){if(!(Y instanceof Uint8Array||Y instanceof ArrayBuffer))throw new TypeError(`Expected the \`input\` argument to be of type \`Uint8Array\` or \`ArrayBuffer\`, got \`${typeof Y}\``);let X=Y instanceof Uint8Array?Y:new Uint8Array(Y);if(!(X?.length>1))return;return this.fromTokenizer(l9(X,this.tokenizerOptions))}async fromBlob(Y){return this.fromStream(Y.stream())}async fromStream(Y){let X=await EZ(Y,this.tokenizerOptions);try{return await this.fromTokenizer(X)}finally{await X.close()}}async toDetectionStream(Y,X){let{sampleSize:$=M6}=X,Z,W,J=Y.getReader({mode:"byob"});try{let{value:M,done:H}=await J.read(new Uint8Array($));if(W=M,!H&&M)try{Z=await this.fromBuffer(M.subarray(0,$))}catch(U){if(!(U instanceof m1))throw U;Z=void 0}W=M}finally{J.releaseLock()}let Q=new TransformStream({async start(M){M.enqueue(W)},transform(M,H){H.enqueue(M)}}),G=Y.pipeThrough(Q);return G.fileType=Z,G}check(Y,X){return FY(this.buffer,Y,X)}checkString(Y,X){return this.check(PQ(Y),X)}detectConfident=async(Y)=>{if(this.buffer=new Uint8Array(M6),Y.fileInfo.size===void 0)Y.fileInfo.size=Number.MAX_SAFE_INTEGER;if(this.tokenizer=Y,await Y.peekBuffer(this.buffer,{length:12,mayBeLess:!0}),this.check([66,77]))return{ext:"bmp",mime:"image/bmp"};if(this.check([11,119]))return{ext:"ac3",mime:"audio/vnd.dolby.dd-raw"};if(this.check([120,1]))return{ext:"dmg",mime:"application/x-apple-diskimage"};if(this.check([77,90]))return{ext:"exe",mime:"application/x-msdownload"};if(this.check([37,33])){if(await Y.peekBuffer(this.buffer,{length:24,mayBeLess:!0}),this.checkString("PS-Adobe-",{offset:2})&&this.checkString(" EPSF-",{offset:14}))return{ext:"eps",mime:"application/eps"};return{ext:"ps",mime:"application/postscript"}}if(this.check([31,160])||this.check([31,157]))return{ext:"Z",mime:"application/x-compress"};if(this.check([199,113]))return{ext:"cpio",mime:"application/x-cpio"};if(this.check([96,234]))return{ext:"arj",mime:"application/x-arj"};if(this.check([239,187,191]))return this.tokenizer.ignore(3),this.detectConfident(Y);if(this.check([71,73,70]))return{ext:"gif",mime:"image/gif"};if(this.check([73,73,188]))return{ext:"jxr",mime:"image/vnd.ms-photo"};if(this.check([31,139,8]))return{ext:"gz",mime:"application/gzip"};if(this.check([66,90,104]))return{ext:"bz2",mime:"application/x-bzip2"};if(this.checkString("ID3")){await Y.ignore(6);let X=await Y.readToken(xQ);if(Y.position+X>Y.fileInfo.size)return{ext:"mp3",mime:"audio/mpeg"};return await Y.ignore(X),this.fromTokenizer(Y)}if(this.checkString("MP+"))return{ext:"mpc",mime:"audio/x-musepack"};if((this.buffer[0]===67||this.buffer[0]===70)&&this.check([87,83],{offset:1}))return{ext:"swf",mime:"application/x-shockwave-flash"};if(this.check([255,216,255])){if(this.check([247],{offset:3}))return{ext:"jls",mime:"image/jls"};return{ext:"jpg",mime:"image/jpeg"}}if(this.check([79,98,106,1]))return{ext:"avro",mime:"application/avro"};if(this.checkString("FLIF"))return{ext:"flif",mime:"image/flif"};if(this.checkString("8BPS"))return{ext:"psd",mime:"image/vnd.adobe.photoshop"};if(this.checkString("MPCK"))return{ext:"mpc",mime:"audio/x-musepack"};if(this.checkString("FORM"))return{ext:"aif",mime:"audio/aiff"};if(this.checkString("icns",{offset:0}))return{ext:"icns",mime:"image/icns"};if(this.check([80,75,3,4])){let X;return await new kJ(Y).unzip(($)=>{switch($.filename){case"META-INF/mozilla.rsa":return X={ext:"xpi",mime:"application/x-xpinstall"},{stop:!0};case"META-INF/MANIFEST.MF":return X={ext:"jar",mime:"application/java-archive"},{stop:!0};case"mimetype":return{async handler(Z){let W=new TextDecoder("utf-8").decode(Z).trim();X=gJ(W)},stop:!0};case"[Content_Types].xml":return{async handler(Z){let W=new TextDecoder("utf-8").decode(Z),J=W.indexOf('.main+xml"');if(J===-1){if(W.includes('ContentType="application/vnd.ms-package.3dmanufacturing-3dmodel+xml"'))X=gJ("application/vnd.ms-package.3dmanufacturing-3dmodel+xml")}else{W=W.slice(0,Math.max(0,J));let Q=W.lastIndexOf('"'),G=W.slice(Math.max(0,Q+1));X=gJ(G)}},stop:!0};default:if(/classes\d*\.dex/.test($.filename))return X={ext:"apk",mime:"application/vnd.android.package-archive"},{stop:!0};return{}}}),X??{ext:"zip",mime:"application/zip"}}if(this.checkString("OggS")){await Y.ignore(28);let X=new Uint8Array(8);if(await Y.readBuffer(X),FY(X,[79,112,117,115,72,101,97,100]))return{ext:"opus",mime:"audio/ogg; codecs=opus"};if(FY(X,[128,116,104,101,111,114,97]))return{ext:"ogv",mime:"video/ogg"};if(FY(X,[1,118,105,100,101,111,0]))return{ext:"ogm",mime:"video/ogg"};if(FY(X,[127,70,76,65,67]))return{ext:"oga",mime:"audio/ogg"};if(FY(X,[83,112,101,101,120,32,32]))return{ext:"spx",mime:"audio/ogg"};if(FY(X,[1,118,111,114,98,105,115]))return{ext:"ogg",mime:"audio/ogg"};return{ext:"ogx",mime:"application/ogg"}}if(this.check([80,75])&&(this.buffer[2]===3||this.buffer[2]===5||this.buffer[2]===7)&&(this.buffer[3]===4||this.buffer[3]===6||this.buffer[3]===8))return{ext:"zip",mime:"application/zip"};if(this.checkString("MThd"))return{ext:"mid",mime:"audio/midi"};if(this.checkString("wOFF")&&(this.check([0,1,0,0],{offset:4})||this.checkString("OTTO",{offset:4})))return{ext:"woff",mime:"font/woff"};if(this.checkString("wOF2")&&(this.check([0,1,0,0],{offset:4})||this.checkString("OTTO",{offset:4})))return{ext:"woff2",mime:"font/woff2"};if(this.check([212,195,178,161])||this.check([161,178,195,212]))return{ext:"pcap",mime:"application/vnd.tcpdump.pcap"};if(this.checkString("DSD "))return{ext:"dsf",mime:"audio/x-dsf"};if(this.checkString("LZIP"))return{ext:"lz",mime:"application/x-lzip"};if(this.checkString("fLaC"))return{ext:"flac",mime:"audio/flac"};if(this.check([66,80,71,251]))return{ext:"bpg",mime:"image/bpg"};if(this.checkString("wvpk"))return{ext:"wv",mime:"audio/wavpack"};if(this.checkString("%PDF"))return{ext:"pdf",mime:"application/pdf"};if(this.check([0,97,115,109]))return{ext:"wasm",mime:"application/wasm"};if(this.check([73,73])){let X=await this.readTiffHeader(!1);if(X)return X}if(this.check([77,77])){let X=await this.readTiffHeader(!0);if(X)return X}if(this.checkString("MAC "))return{ext:"ape",mime:"audio/ape"};if(this.check([26,69,223,163])){async function X(){let Q=await Y.peekNumber(a9),G=128,M=0;while((Q&G)===0&&G!==0)++M,G>>=1;let H=new Uint8Array(M+1);return await Y.readBuffer(H),H}async function $(){let Q=await X(),G=await X();G[0]^=128>>G.length-1;let M=Math.min(6,G.length),H=new DataView(Q.buffer),U=new DataView(G.buffer,G.length-M,M);return{id:bJ(H),len:bJ(U)}}async function Z(Q){while(Q>0){let G=await $();if(G.id===17026)return(await Y.readToken(new K8(G.len))).replaceAll(/\00.*$/g,"");await Y.ignore(G.len),--Q}}let W=await $();switch(await Z(W.len)){case"webm":return{ext:"webm",mime:"video/webm"};case"matroska":return{ext:"mkv",mime:"video/matroska"};default:return}}if(this.checkString("SQLi"))return{ext:"sqlite",mime:"application/x-sqlite3"};if(this.check([78,69,83,26]))return{ext:"nes",mime:"application/x-nintendo-nes-rom"};if(this.checkString("Cr24"))return{ext:"crx",mime:"application/x-google-chrome-extension"};if(this.checkString("MSCF")||this.checkString("ISc("))return{ext:"cab",mime:"application/vnd.ms-cab-compressed"};if(this.check([237,171,238,219]))return{ext:"rpm",mime:"application/x-rpm"};if(this.check([197,208,211,198]))return{ext:"eps",mime:"application/eps"};if(this.check([40,181,47,253]))return{ext:"zst",mime:"application/zstd"};if(this.check([127,69,76,70]))return{ext:"elf",mime:"application/x-elf"};if(this.check([33,66,68,78]))return{ext:"pst",mime:"application/vnd.ms-outlook"};if(this.checkString("PAR1")||this.checkString("PARE"))return{ext:"parquet",mime:"application/vnd.apache.parquet"};if(this.checkString("ttcf"))return{ext:"ttc",mime:"font/collection"};if(this.check([207,250,237,254]))return{ext:"macho",mime:"application/x-mach-binary"};if(this.check([4,34,77,24]))return{ext:"lz4",mime:"application/x-lz4"};if(this.check([79,84,84,79,0]))return{ext:"otf",mime:"font/otf"};if(this.checkString("#!AMR"))return{ext:"amr",mime:"audio/amr"};if(this.checkString("{\\rtf"))return{ext:"rtf",mime:"application/rtf"};if(this.check([70,76,86,1]))return{ext:"flv",mime:"video/x-flv"};if(this.checkString("IMPM"))return{ext:"it",mime:"audio/x-it"};if(this.checkString("-lh0-",{offset:2})||this.checkString("-lh1-",{offset:2})||this.checkString("-lh2-",{offset:2})||this.checkString("-lh3-",{offset:2})||this.checkString("-lh4-",{offset:2})||this.checkString("-lh5-",{offset:2})||this.checkString("-lh6-",{offset:2})||this.checkString("-lh7-",{offset:2})||this.checkString("-lzs-",{offset:2})||this.checkString("-lz4-",{offset:2})||this.checkString("-lz5-",{offset:2})||this.checkString("-lhd-",{offset:2}))return{ext:"lzh",mime:"application/x-lzh-compressed"};if(this.check([0,0,1,186])){if(this.check([33],{offset:4,mask:[241]}))return{ext:"mpg",mime:"video/MP1S"};if(this.check([68],{offset:4,mask:[196]}))return{ext:"mpg",mime:"video/MP2P"}}if(this.checkString("ITSF"))return{ext:"chm",mime:"application/vnd.ms-htmlhelp"};if(this.check([202,254,186,190]))return{ext:"class",mime:"application/java-vm"};if(this.checkString(".RMF"))return{ext:"rm",mime:"application/vnd.rn-realmedia"};if(this.checkString("DRACO"))return{ext:"drc",mime:"application/vnd.google.draco"};if(this.check([253,55,122,88,90,0]))return{ext:"xz",mime:"application/x-xz"};if(this.checkString("<?xml "))return{ext:"xml",mime:"application/xml"};if(this.check([55,122,188,175,39,28]))return{ext:"7z",mime:"application/x-7z-compressed"};if(this.check([82,97,114,33,26,7])&&(this.buffer[6]===0||this.buffer[6]===1))return{ext:"rar",mime:"application/x-rar-compressed"};if(this.checkString("solid "))return{ext:"stl",mime:"model/stl"};if(this.checkString("AC")){let X=new K8(4,"latin1").get(this.buffer,2);if(X.match("^d*")&&X>=1000&&X<=1050)return{ext:"dwg",mime:"image/vnd.dwg"}}if(this.checkString("070707"))return{ext:"cpio",mime:"application/x-cpio"};if(this.checkString("BLENDER"))return{ext:"blend",mime:"application/x-blender"};if(this.checkString("!<arch>")){if(await Y.ignore(8),await Y.readToken(new K8(13,"ascii"))==="debian-binary")return{ext:"deb",mime:"application/x-deb"};return{ext:"ar",mime:"application/x-unix-archive"}}if(this.checkString("WEBVTT")&&[`
|
|
`,"\r","\t"," ","\x00"].some((X)=>this.checkString(X,{offset:6})))return{ext:"vtt",mime:"text/vtt"};if(this.check([137,80,78,71,13,10,26,10])){await Y.ignore(8);async function X(){return{length:await Y.readToken(YQ),type:await Y.readToken(new K8(4,"latin1"))}}do{let $=await X();if($.length<0)return;switch($.type){case"IDAT":return{ext:"png",mime:"image/png"};case"acTL":return{ext:"apng",mime:"image/apng"};default:await Y.ignore($.length+4)}}while(Y.position+8<Y.fileInfo.size);return{ext:"png",mime:"image/png"}}if(this.check([65,82,82,79,87,49,0,0]))return{ext:"arrow",mime:"application/vnd.apache.arrow.file"};if(this.check([103,108,84,70,2,0,0,0]))return{ext:"glb",mime:"model/gltf-binary"};if(this.check([102,114,101,101],{offset:4})||this.check([109,100,97,116],{offset:4})||this.check([109,111,111,118],{offset:4})||this.check([119,105,100,101],{offset:4}))return{ext:"mov",mime:"video/quicktime"};if(this.check([73,73,82,79,8,0,0,0,24]))return{ext:"orf",mime:"image/x-olympus-orf"};if(this.checkString("gimp xcf "))return{ext:"xcf",mime:"image/x-xcf"};if(this.checkString("ftyp",{offset:4})&&(this.buffer[8]&96)!==0){let X=new K8(4,"latin1").get(this.buffer,8).replace("\x00"," ").trim();switch(X){case"avif":case"avis":return{ext:"avif",mime:"image/avif"};case"mif1":return{ext:"heic",mime:"image/heif"};case"msf1":return{ext:"heic",mime:"image/heif-sequence"};case"heic":case"heix":return{ext:"heic",mime:"image/heic"};case"hevc":case"hevx":return{ext:"heic",mime:"image/heic-sequence"};case"qt":return{ext:"mov",mime:"video/quicktime"};case"M4V":case"M4VH":case"M4VP":return{ext:"m4v",mime:"video/x-m4v"};case"M4P":return{ext:"m4p",mime:"video/mp4"};case"M4B":return{ext:"m4b",mime:"audio/mp4"};case"M4A":return{ext:"m4a",mime:"audio/x-m4a"};case"F4V":return{ext:"f4v",mime:"video/mp4"};case"F4P":return{ext:"f4p",mime:"video/mp4"};case"F4A":return{ext:"f4a",mime:"audio/mp4"};case"F4B":return{ext:"f4b",mime:"audio/mp4"};case"crx":return{ext:"cr3",mime:"image/x-canon-cr3"};default:if(X.startsWith("3g")){if(X.startsWith("3g2"))return{ext:"3g2",mime:"video/3gpp2"};return{ext:"3gp",mime:"video/3gpp"}}return{ext:"mp4",mime:"video/mp4"}}}if(this.check([82,73,70,70])){if(this.checkString("WEBP",{offset:8}))return{ext:"webp",mime:"image/webp"};if(this.check([65,86,73],{offset:8}))return{ext:"avi",mime:"video/vnd.avi"};if(this.check([87,65,86,69],{offset:8}))return{ext:"wav",mime:"audio/wav"};if(this.check([81,76,67,77],{offset:8}))return{ext:"qcp",mime:"audio/qcelp"}}if(this.check([73,73,85,0,24,0,0,0,136,231,116,216]))return{ext:"rw2",mime:"image/x-panasonic-rw2"};if(this.check([48,38,178,117,142,102,207,17,166,217])){async function X(){let $=new Uint8Array(16);return await Y.readBuffer($),{id:$,size:Number(await Y.readToken(XQ))}}await Y.ignore(30);while(Y.position+24<Y.fileInfo.size){let $=await X(),Z=$.size-24;if(FY($.id,[145,7,220,183,183,169,207,17,142,230,0,192,12,32,83,101])){let W=new Uint8Array(16);if(Z-=await Y.readBuffer(W),FY(W,[64,158,105,248,77,91,207,17,168,253,0,128,95,92,68,43]))return{ext:"asf",mime:"audio/x-ms-asf"};if(FY(W,[192,239,25,188,77,91,207,17,168,253,0,128,95,92,68,43]))return{ext:"asf",mime:"video/x-ms-asf"};break}await Y.ignore(Z)}return{ext:"asf",mime:"application/vnd.ms-asf"}}if(this.check([171,75,84,88,32,49,49,187,13,10,26,10]))return{ext:"ktx",mime:"image/ktx"};if((this.check([126,16,4])||this.check([126,24,4]))&&this.check([48,77,73,69],{offset:4}))return{ext:"mie",mime:"application/x-mie"};if(this.check([39,10,0,0,0,0,0,0,0,0,0,0],{offset:2}))return{ext:"shp",mime:"application/x-esri-shape"};if(this.check([255,79,255,81]))return{ext:"j2c",mime:"image/j2c"};if(this.check([0,0,0,12,106,80,32,32,13,10,135,10]))switch(await Y.ignore(20),await Y.readToken(new K8(4,"ascii"))){case"jp2 ":return{ext:"jp2",mime:"image/jp2"};case"jpx ":return{ext:"jpx",mime:"image/jpx"};case"jpm ":return{ext:"jpm",mime:"image/jpm"};case"mjp2":return{ext:"mj2",mime:"image/mj2"};default:return}if(this.check([255,10])||this.check([0,0,0,12,74,88,76,32,13,10,135,10]))return{ext:"jxl",mime:"image/jxl"};if(this.check([254,255])){if(this.check([0,60,0,63,0,120,0,109,0,108],{offset:2}))return{ext:"xml",mime:"application/xml"};return}if(this.check([208,207,17,224,161,177,26,225]))return{ext:"cfb",mime:"application/x-cfb"};if(await Y.peekBuffer(this.buffer,{length:Math.min(256,Y.fileInfo.size),mayBeLess:!0}),this.check([97,99,115,112],{offset:36}))return{ext:"icc",mime:"application/vnd.iccprofile"};if(this.checkString("**ACE",{offset:7})&&this.checkString("**",{offset:12}))return{ext:"ace",mime:"application/x-ace-compressed"};if(this.checkString("BEGIN:")){if(this.checkString("VCARD",{offset:6}))return{ext:"vcf",mime:"text/vcard"};if(this.checkString("VCALENDAR",{offset:6}))return{ext:"ics",mime:"text/calendar"}}if(this.checkString("FUJIFILMCCD-RAW"))return{ext:"raf",mime:"image/x-fujifilm-raf"};if(this.checkString("Extended Module:"))return{ext:"xm",mime:"audio/x-xm"};if(this.checkString("Creative Voice File"))return{ext:"voc",mime:"audio/x-voc"};if(this.check([4,0,0,0])&&this.buffer.length>=16){let X=new DataView(this.buffer.buffer).getUint32(12,!0);if(X>12&&this.buffer.length>=X+16)try{let $=new TextDecoder().decode(this.buffer.subarray(16,X+16));if(JSON.parse($).files)return{ext:"asar",mime:"application/x-asar"}}catch{}}if(this.check([6,14,43,52,2,5,1,1,13,1,2,1,1,2]))return{ext:"mxf",mime:"application/mxf"};if(this.checkString("SCRM",{offset:44}))return{ext:"s3m",mime:"audio/x-s3m"};if(this.check([71])&&this.check([71],{offset:188}))return{ext:"mts",mime:"video/mp2t"};if(this.check([71],{offset:4})&&this.check([71],{offset:196}))return{ext:"mts",mime:"video/mp2t"};if(this.check([66,79,79,75,77,79,66,73],{offset:60}))return{ext:"mobi",mime:"application/x-mobipocket-ebook"};if(this.check([68,73,67,77],{offset:128}))return{ext:"dcm",mime:"application/dicom"};if(this.check([76,0,0,0,1,20,2,0,0,0,0,0,192,0,0,0,0,0,0,70]))return{ext:"lnk",mime:"application/x.ms.shortcut"};if(this.check([98,111,111,107,0,0,0,0,109,97,114,107,0,0,0,0]))return{ext:"alias",mime:"application/x.apple.alias"};if(this.checkString("Kaydara FBX Binary \x00"))return{ext:"fbx",mime:"application/x.autodesk.fbx"};if(this.check([76,80],{offset:34})&&(this.check([0,0,1],{offset:8})||this.check([1,0,2],{offset:8})||this.check([2,0,2],{offset:8})))return{ext:"eot",mime:"application/vnd.ms-fontobject"};if(this.check([6,6,237,245,216,29,70,229,189,49,239,231,254,116,183,29]))return{ext:"indd",mime:"application/x-indesign"};if(await Y.peekBuffer(this.buffer,{length:Math.min(512,Y.fileInfo.size),mayBeLess:!0}),this.checkString("ustar",{offset:257})&&(this.checkString("\x00",{offset:262})||this.checkString(" ",{offset:262}))||this.check([0,0,0,0,0,0],{offset:257})&&IQ(this.buffer))return{ext:"tar",mime:"application/x-tar"};if(this.check([255,254])){if(this.check([60,0,63,0,120,0,109,0,108,0],{offset:2}))return{ext:"xml",mime:"application/xml"};if(this.check([255,14,83,0,107,0,101,0,116,0,99,0,104,0,85,0,112,0,32,0,77,0,111,0,100,0,101,0,108,0],{offset:2}))return{ext:"skp",mime:"application/vnd.sketchup.skp"};return}if(this.checkString("-----BEGIN PGP MESSAGE-----"))return{ext:"pgp",mime:"application/pgp-encrypted"}};detectImprecise=async(Y)=>{if(this.buffer=new Uint8Array(M6),await Y.peekBuffer(this.buffer,{length:Math.min(8,Y.fileInfo.size),mayBeLess:!0}),this.check([0,0,1,186])||this.check([0,0,1,179]))return{ext:"mpg",mime:"video/mpeg"};if(this.check([0,1,0,0,0]))return{ext:"ttf",mime:"font/ttf"};if(this.check([0,0,1,0]))return{ext:"ico",mime:"image/x-icon"};if(this.check([0,0,2,0]))return{ext:"cur",mime:"image/x-icon"};if(await Y.peekBuffer(this.buffer,{length:Math.min(2+this.options.mpegOffsetTolerance,Y.fileInfo.size),mayBeLess:!0}),this.buffer.length>=2+this.options.mpegOffsetTolerance)for(let X=0;X<=this.options.mpegOffsetTolerance;++X){let $=this.scanMpeg(X);if($)return $}};async readTiffTag(Y){let X=await this.tokenizer.readToken(Y?w$:t1);switch(this.tokenizer.ignore(10),X){case 50341:return{ext:"arw",mime:"image/x-sony-arw"};case 50706:return{ext:"dng",mime:"image/x-adobe-dng"};default:}}async readTiffIFD(Y){let X=await this.tokenizer.readToken(Y?w$:t1);for(let $=0;$<X;++$){let Z=await this.readTiffTag(Y);if(Z)return Z}}async readTiffHeader(Y){let X=(Y?w$:t1).get(this.buffer,2),$=(Y?e9:U0).get(this.buffer,4);if(X===42){if($>=6){if(this.checkString("CR",{offset:8}))return{ext:"cr2",mime:"image/x-canon-cr2"};if($>=8){let W=(Y?w$:t1).get(this.buffer,8),J=(Y?w$:t1).get(this.buffer,10);if(W===28&&J===254||W===31&&J===11)return{ext:"nef",mime:"image/x-nikon-nef"}}}return await this.tokenizer.ignore($),await this.readTiffIFD(Y)??{ext:"tif",mime:"image/tiff"}}if(X===43)return{ext:"tif",mime:"image/tiff"}}scanMpeg(Y){if(this.check([255,224],{offset:Y,mask:[255,224]})){if(this.check([16],{offset:Y+1,mask:[22]})){if(this.check([8],{offset:Y+1,mask:[8]}))return{ext:"aac",mime:"audio/aac"};return{ext:"aac",mime:"audio/aac"}}if(this.check([2],{offset:Y+1,mask:[6]}))return{ext:"mp3",mime:"audio/mpeg"};if(this.check([4],{offset:Y+1,mask:[6]}))return{ext:"mp2",mime:"audio/mpeg"};if(this.check([6],{offset:Y+1,mask:[6]}))return{ext:"mp1",mime:"audio/mpeg"}}}}var M6=4100,hQ,dQ;var fJ=o1(()=>{J6();VZ();SQ();CQ();TQ();gQ();hQ=new Set(kQ),dQ=new Set(bQ)});var pQ={};RY(pQ,{supportedMimeTypes:()=>dQ,supportedExtensions:()=>hQ,fileTypeStream:()=>$q,fileTypeFromTokenizer:()=>yQ,fileTypeFromStream:()=>Xq,fileTypeFromFile:()=>Yq,fileTypeFromBuffer:()=>fQ,fileTypeFromBlob:()=>vQ,FileTypeParser:()=>H6});import{ReadableStream as rL}from"stream/web";import{pipeline as mQ,PassThrough as aL,Readable as eL}from"stream";async function Yq(Y,X){return new H6(X).fromFile(Y,X)}async function Xq(Y,X){return new H6(X).fromStream(Y)}async function $q(Y,X={}){return new H6(X).toDetectionStream(Y,X)}var H6;var cQ=o1(()=>{s9();fJ();fJ();H6=class H6 extends q${async fromStream(Y){let X=await(Y instanceof rL?EZ(Y,this.tokenizerOptions):n9(Y,this.tokenizerOptions));try{return await super.fromTokenizer(X)}finally{await X.close()}}async fromFile(Y){let X=await t9(Y);try{return await super.fromTokenizer(X)}finally{await X.close()}}async toDetectionStream(Y,X={}){if(!(Y instanceof eL))return super.toDetectionStream(Y,X);let{sampleSize:$=M6}=X;return new Promise((Z,W)=>{Y.on("error",W),Y.once("readable",()=>{(async()=>{try{let J=new aL,Q=mQ?mQ(Y,J,()=>{}):Y.pipe(J),G=Y.read($)??Y.read()??new Uint8Array(0);try{J.fileType=await this.fromBuffer(G)}catch(M){if(M instanceof m1)J.fileType=void 0;else W(M)}Z(Q)}catch(J){W(J)}})()})})}}});var T0={};RY(T0,{IsUndefined:()=>Q0,IsUint8Array:()=>VY,IsSymbol:()=>bW,IsString:()=>b1,IsRegExp:()=>g$,IsObject:()=>S1,IsNumber:()=>z8,IsNull:()=>kW,IsIterator:()=>TW,IsFunction:()=>xW,IsDate:()=>_X,IsBoolean:()=>EY,IsBigInt:()=>b$,IsAsyncIterator:()=>IW,IsArray:()=>J0,HasPropertyKey:()=>g6});function g6(Y,X){return X in Y}function IW(Y){return S1(Y)&&!J0(Y)&&!VY(Y)&&Symbol.asyncIterator in Y}function J0(Y){return Array.isArray(Y)}function b$(Y){return typeof Y==="bigint"}function EY(Y){return typeof Y==="boolean"}function _X(Y){return Y instanceof globalThis.Date}function xW(Y){return typeof Y==="function"}function TW(Y){return S1(Y)&&!J0(Y)&&!VY(Y)&&Symbol.iterator in Y}function kW(Y){return Y===null}function z8(Y){return typeof Y==="number"}function S1(Y){return typeof Y==="object"&&Y!==null}function g$(Y){return Y instanceof globalThis.RegExp}function b1(Y){return typeof Y==="string"}function bW(Y){return typeof Y==="symbol"}function VY(Y){return Y instanceof globalThis.Uint8Array}function Q0(Y){return Y===void 0}function WU(Y){return Y.map((X)=>f6(X))}function JU(Y){return new Date(Y.getTime())}function QU(Y){return new Uint8Array(Y)}function GU(Y){return new RegExp(Y.source,Y.flags)}function MU(Y){let X={};for(let $ of Object.getOwnPropertyNames(Y))X[$]=f6(Y[$]);for(let $ of Object.getOwnPropertySymbols(Y))X[$]=f6(Y[$]);return X}function f6(Y){return J0(Y)?WU(Y):_X(Y)?JU(Y):VY(Y)?QU(Y):g$(Y)?GU(Y):S1(Y)?MU(Y):Y}function p1(Y){return f6(Y)}function iX(Y,X){return X===void 0?p1(Y):p1({...X,...Y})}function v6(Y){return Q1(Y)&&globalThis.Symbol.asyncIterator in Y}function y6(Y){return Q1(Y)&&globalThis.Symbol.iterator in Y}function gW(Y){return Q1(Y)&&(globalThis.Object.getPrototypeOf(Y)===Object.prototype||globalThis.Object.getPrototypeOf(Y)===null)}function h6(Y){return Y instanceof globalThis.Promise}function h0(Y){return Y instanceof Date&&globalThis.Number.isFinite(Y.getTime())}function m4(Y){return Y instanceof globalThis.Map}function p4(Y){return Y instanceof globalThis.Set}function V8(Y){return globalThis.ArrayBuffer.isView(Y)}function oX(Y){return Y instanceof globalThis.Uint8Array}function e(Y,X){return X in Y}function Q1(Y){return Y!==null&&typeof Y==="object"}function Y1(Y){return globalThis.Array.isArray(Y)&&!globalThis.ArrayBuffer.isView(Y)}function c1(Y){return Y===void 0}function jY(Y){return Y===null}function MY(Y){return typeof Y==="boolean"}function t(Y){return typeof Y==="number"}function d6(Y){return globalThis.Number.isInteger(Y)}function j0(Y){return typeof Y==="bigint"}function N1(Y){return typeof Y==="string"}function eY(Y){return typeof Y==="function"}function SY(Y){return typeof Y==="symbol"}function D8(Y){return j0(Y)||MY(Y)||jY(Y)||t(Y)||N1(Y)||SY(Y)||c1(Y)}var h1;(function(Y){Y.InstanceMode="default",Y.ExactOptionalPropertyTypes=!1,Y.AllowArrayObject=!1,Y.AllowNaN=!1,Y.AllowNullVoid=!1;function X(Q,G){return Y.ExactOptionalPropertyTypes?G in Q:Q[G]!==void 0}Y.IsExactOptionalProperty=X;function $(Q){let G=Q1(Q);return Y.AllowArrayObject?G:G&&!Y1(Q)}Y.IsObjectLike=$;function Z(Q){return $(Q)&&!(Q instanceof Date)&&!(Q instanceof Uint8Array)}Y.IsRecordLike=Z;function W(Q){return Y.AllowNaN?t(Q):Number.isFinite(Q)}Y.IsNumberLike=W;function J(Q){let G=c1(Q);return Y.AllowNullVoid?G||Q===null:G}Y.IsVoidLike=J})(h1||(h1={}));function HU(Y){return globalThis.Object.freeze(Y).map((X)=>f$(X))}function UU(Y){return Y}function zU(Y){return Y}function DU(Y){return Y}function AU(Y){let X={};for(let $ of Object.getOwnPropertyNames(Y))X[$]=f$(Y[$]);for(let $ of Object.getOwnPropertySymbols(Y))X[$]=f$(Y[$]);return globalThis.Object.freeze(X)}function f$(Y){return J0(Y)?HU(Y):_X(Y)?UU(Y):VY(Y)?zU(Y):g$(Y)?DU(Y):S1(Y)?AU(Y):Y}function S(Y,X){let $=X!==void 0?{...X,...Y}:Y;switch(h1.InstanceMode){case"freeze":return f$($);case"clone":return p1($);default:return $}}class a extends Error{constructor(Y){super(Y)}}var I1=Symbol.for("TypeBox.Transform"),m8=Symbol.for("TypeBox.Readonly"),G0=Symbol.for("TypeBox.Optional"),j8=Symbol.for("TypeBox.Hint"),R=Symbol.for("TypeBox.Kind");function lX(Y){return S1(Y)&&Y[m8]==="Readonly"}function l0(Y){return S1(Y)&&Y[G0]==="Optional"}function fW(Y){return D1(Y,"Any")}function vW(Y){return D1(Y,"Argument")}function p8(Y){return D1(Y,"Array")}function RX(Y){return D1(Y,"AsyncIterator")}function EX(Y){return D1(Y,"BigInt")}function CY(Y){return D1(Y,"Boolean")}function c8(Y){return D1(Y,"Computed")}function u8(Y){return D1(Y,"Constructor")}function OU(Y){return D1(Y,"Date")}function i8(Y){return D1(Y,"Function")}function o8(Y){return D1(Y,"Integer")}function r1(Y){return D1(Y,"Intersect")}function VX(Y){return D1(Y,"Iterator")}function D1(Y,X){return S1(Y)&&R in Y&&Y[R]===X}function m6(Y){return EY(Y)||z8(Y)||b1(Y)}function A8(Y){return D1(Y,"Literal")}function O8(Y){return D1(Y,"MappedKey")}function u1(Y){return D1(Y,"MappedResult")}function YX(Y){return D1(Y,"Never")}function NU(Y){return D1(Y,"Not")}function v$(Y){return D1(Y,"Null")}function l8(Y){return D1(Y,"Number")}function M0(Y){return D1(Y,"Object")}function jX(Y){return D1(Y,"Promise")}function SX(Y){return D1(Y,"Record")}function $0(Y){return D1(Y,"Ref")}function yW(Y){return D1(Y,"RegExp")}function PY(Y){return D1(Y,"String")}function y$(Y){return D1(Y,"Symbol")}function N8(Y){return D1(Y,"TemplateLiteral")}function wU(Y){return D1(Y,"This")}function q1(Y){return S1(Y)&&I1 in Y}function w8(Y){return D1(Y,"Tuple")}function IY(Y){return D1(Y,"Undefined")}function w1(Y){return D1(Y,"Union")}function FU(Y){return D1(Y,"Uint8Array")}function BU(Y){return D1(Y,"Unknown")}function KU(Y){return D1(Y,"Unsafe")}function LU(Y){return D1(Y,"Void")}function XX(Y){return S1(Y)&&R in Y&&b1(Y[R])}function l1(Y){return fW(Y)||vW(Y)||p8(Y)||CY(Y)||EX(Y)||RX(Y)||c8(Y)||u8(Y)||OU(Y)||i8(Y)||o8(Y)||r1(Y)||VX(Y)||A8(Y)||O8(Y)||u1(Y)||YX(Y)||NU(Y)||v$(Y)||l8(Y)||M0(Y)||jX(Y)||SX(Y)||$0(Y)||yW(Y)||PY(Y)||y$(Y)||N8(Y)||wU(Y)||w8(Y)||IY(Y)||w1(Y)||FU(Y)||BU(Y)||KU(Y)||LU(Y)||XX(Y)}var _={};RY(_,{TypeGuardUnknownTypeError:()=>c4,IsVoid:()=>I7,IsUnsafe:()=>P7,IsUnknown:()=>C7,IsUnionLiteral:()=>PU,IsUnion:()=>mW,IsUndefined:()=>j7,IsUint8Array:()=>S7,IsTuple:()=>V7,IsTransform:()=>E7,IsThis:()=>R7,IsTemplateLiteral:()=>_7,IsSymbol:()=>q7,IsString:()=>L7,IsSchema:()=>i1,IsRegExp:()=>K7,IsRef:()=>B7,IsRecursive:()=>CU,IsRecord:()=>F7,IsReadonly:()=>EU,IsProperties:()=>p6,IsPromise:()=>w7,IsOptional:()=>VU,IsObject:()=>N7,IsNumber:()=>O7,IsNull:()=>A7,IsNot:()=>D7,IsNever:()=>z7,IsMappedResult:()=>U7,IsMappedKey:()=>H7,IsLiteralValue:()=>M7,IsLiteralString:()=>Q7,IsLiteralNumber:()=>G7,IsLiteralBoolean:()=>SU,IsLiteral:()=>d$,IsKindOf:()=>M1,IsKind:()=>x7,IsIterator:()=>J7,IsIntersect:()=>W7,IsInteger:()=>Z7,IsImport:()=>jU,IsFunction:()=>$7,IsDate:()=>X7,IsConstructor:()=>Y7,IsComputed:()=>e4,IsBoolean:()=>a4,IsBigInt:()=>r4,IsAsyncIterator:()=>s4,IsArray:()=>t4,IsArgument:()=>n4,IsAny:()=>l4});class c4 extends a{}var qU=["Argument","Any","Array","AsyncIterator","BigInt","Boolean","Computed","Constructor","Date","Enum","Function","Integer","Intersect","Iterator","Literal","MappedKey","MappedResult","Not","Null","Number","Object","Promise","Record","Ref","RegExp","String","Symbol","TemplateLiteral","This","Tuple","Undefined","Union","Uint8Array","Unknown","Void"];function u4(Y){try{return new RegExp(Y),!0}catch{return!1}}function hW(Y){if(!b1(Y))return!1;for(let X=0;X<Y.length;X++){let $=Y.charCodeAt(X);if($>=7&&$<=13||$===27||$===127)return!1}return!0}function i4(Y){return dW(Y)||i1(Y)}function h$(Y){return Q0(Y)||b$(Y)}function g1(Y){return Q0(Y)||z8(Y)}function dW(Y){return Q0(Y)||EY(Y)}function C1(Y){return Q0(Y)||b1(Y)}function _U(Y){return Q0(Y)||b1(Y)&&hW(Y)&&u4(Y)}function RU(Y){return Q0(Y)||b1(Y)&&hW(Y)}function o4(Y){return Q0(Y)||i1(Y)}function EU(Y){return S1(Y)&&Y[m8]==="Readonly"}function VU(Y){return S1(Y)&&Y[G0]==="Optional"}function l4(Y){return M1(Y,"Any")&&C1(Y.$id)}function n4(Y){return M1(Y,"Argument")&&z8(Y.index)}function t4(Y){return M1(Y,"Array")&&Y.type==="array"&&C1(Y.$id)&&i1(Y.items)&&g1(Y.minItems)&&g1(Y.maxItems)&&dW(Y.uniqueItems)&&o4(Y.contains)&&g1(Y.minContains)&&g1(Y.maxContains)}function s4(Y){return M1(Y,"AsyncIterator")&&Y.type==="AsyncIterator"&&C1(Y.$id)&&i1(Y.items)}function r4(Y){return M1(Y,"BigInt")&&Y.type==="bigint"&&C1(Y.$id)&&h$(Y.exclusiveMaximum)&&h$(Y.exclusiveMinimum)&&h$(Y.maximum)&&h$(Y.minimum)&&h$(Y.multipleOf)}function a4(Y){return M1(Y,"Boolean")&&Y.type==="boolean"&&C1(Y.$id)}function e4(Y){return M1(Y,"Computed")&&b1(Y.target)&&J0(Y.parameters)&&Y.parameters.every((X)=>i1(X))}function Y7(Y){return M1(Y,"Constructor")&&Y.type==="Constructor"&&C1(Y.$id)&&J0(Y.parameters)&&Y.parameters.every((X)=>i1(X))&&i1(Y.returns)}function X7(Y){return M1(Y,"Date")&&Y.type==="Date"&&C1(Y.$id)&&g1(Y.exclusiveMaximumTimestamp)&&g1(Y.exclusiveMinimumTimestamp)&&g1(Y.maximumTimestamp)&&g1(Y.minimumTimestamp)&&g1(Y.multipleOfTimestamp)}function $7(Y){return M1(Y,"Function")&&Y.type==="Function"&&C1(Y.$id)&&J0(Y.parameters)&&Y.parameters.every((X)=>i1(X))&&i1(Y.returns)}function jU(Y){return M1(Y,"Import")&&g6(Y,"$defs")&&S1(Y.$defs)&&p6(Y.$defs)&&g6(Y,"$ref")&&b1(Y.$ref)&&Y.$ref in Y.$defs}function Z7(Y){return M1(Y,"Integer")&&Y.type==="integer"&&C1(Y.$id)&&g1(Y.exclusiveMaximum)&&g1(Y.exclusiveMinimum)&&g1(Y.maximum)&&g1(Y.minimum)&&g1(Y.multipleOf)}function p6(Y){return S1(Y)&&Object.entries(Y).every(([X,$])=>hW(X)&&i1($))}function W7(Y){return M1(Y,"Intersect")&&(b1(Y.type)&&Y.type!=="object"?!1:!0)&&J0(Y.allOf)&&Y.allOf.every((X)=>i1(X)&&!E7(X))&&C1(Y.type)&&(dW(Y.unevaluatedProperties)||o4(Y.unevaluatedProperties))&&C1(Y.$id)}function J7(Y){return M1(Y,"Iterator")&&Y.type==="Iterator"&&C1(Y.$id)&&i1(Y.items)}function M1(Y,X){return S1(Y)&&R in Y&&Y[R]===X}function Q7(Y){return d$(Y)&&b1(Y.const)}function G7(Y){return d$(Y)&&z8(Y.const)}function SU(Y){return d$(Y)&&EY(Y.const)}function d$(Y){return M1(Y,"Literal")&&C1(Y.$id)&&M7(Y.const)}function M7(Y){return EY(Y)||z8(Y)||b1(Y)}function H7(Y){return M1(Y,"MappedKey")&&J0(Y.keys)&&Y.keys.every((X)=>z8(X)||b1(X))}function U7(Y){return M1(Y,"MappedResult")&&p6(Y.properties)}function z7(Y){return M1(Y,"Never")&&S1(Y.not)&&Object.getOwnPropertyNames(Y.not).length===0}function D7(Y){return M1(Y,"Not")&&i1(Y.not)}function A7(Y){return M1(Y,"Null")&&Y.type==="null"&&C1(Y.$id)}function O7(Y){return M1(Y,"Number")&&Y.type==="number"&&C1(Y.$id)&&g1(Y.exclusiveMaximum)&&g1(Y.exclusiveMinimum)&&g1(Y.maximum)&&g1(Y.minimum)&&g1(Y.multipleOf)}function N7(Y){return M1(Y,"Object")&&Y.type==="object"&&C1(Y.$id)&&p6(Y.properties)&&i4(Y.additionalProperties)&&g1(Y.minProperties)&&g1(Y.maxProperties)}function w7(Y){return M1(Y,"Promise")&&Y.type==="Promise"&&C1(Y.$id)&&i1(Y.item)}function F7(Y){return M1(Y,"Record")&&Y.type==="object"&&C1(Y.$id)&&i4(Y.additionalProperties)&&S1(Y.patternProperties)&&((X)=>{let $=Object.getOwnPropertyNames(X.patternProperties);return $.length===1&&u4($[0])&&S1(X.patternProperties)&&i1(X.patternProperties[$[0]])})(Y)}function CU(Y){return S1(Y)&&j8 in Y&&Y[j8]==="Recursive"}function B7(Y){return M1(Y,"Ref")&&C1(Y.$id)&&b1(Y.$ref)}function K7(Y){return M1(Y,"RegExp")&&C1(Y.$id)&&b1(Y.source)&&b1(Y.flags)&&g1(Y.maxLength)&&g1(Y.minLength)}function L7(Y){return M1(Y,"String")&&Y.type==="string"&&C1(Y.$id)&&g1(Y.minLength)&&g1(Y.maxLength)&&_U(Y.pattern)&&RU(Y.format)}function q7(Y){return M1(Y,"Symbol")&&Y.type==="symbol"&&C1(Y.$id)}function _7(Y){return M1(Y,"TemplateLiteral")&&Y.type==="string"&&b1(Y.pattern)&&Y.pattern[0]==="^"&&Y.pattern[Y.pattern.length-1]==="$"}function R7(Y){return M1(Y,"This")&&C1(Y.$id)&&b1(Y.$ref)}function E7(Y){return S1(Y)&&I1 in Y}function V7(Y){return M1(Y,"Tuple")&&Y.type==="array"&&C1(Y.$id)&&z8(Y.minItems)&&z8(Y.maxItems)&&Y.minItems===Y.maxItems&&(Q0(Y.items)&&Q0(Y.additionalItems)&&Y.minItems===0||J0(Y.items)&&Y.items.every((X)=>i1(X)))}function j7(Y){return M1(Y,"Undefined")&&Y.type==="undefined"&&C1(Y.$id)}function PU(Y){return mW(Y)&&Y.anyOf.every((X)=>Q7(X)||G7(X))}function mW(Y){return M1(Y,"Union")&&C1(Y.$id)&&S1(Y)&&J0(Y.anyOf)&&Y.anyOf.every((X)=>i1(X))}function S7(Y){return M1(Y,"Uint8Array")&&Y.type==="Uint8Array"&&C1(Y.$id)&&g1(Y.minByteLength)&&g1(Y.maxByteLength)}function C7(Y){return M1(Y,"Unknown")&&C1(Y.$id)}function P7(Y){return M1(Y,"Unsafe")}function I7(Y){return M1(Y,"Void")&&Y.type==="void"&&C1(Y.$id)}function x7(Y){return S1(Y)&&R in Y&&b1(Y[R])&&!qU.includes(Y[R])}function i1(Y){return S1(Y)&&(l4(Y)||n4(Y)||t4(Y)||a4(Y)||r4(Y)||s4(Y)||e4(Y)||Y7(Y)||X7(Y)||$7(Y)||Z7(Y)||W7(Y)||J7(Y)||d$(Y)||H7(Y)||U7(Y)||z7(Y)||D7(Y)||A7(Y)||O7(Y)||N7(Y)||w7(Y)||F7(Y)||B7(Y)||K7(Y)||L7(Y)||q7(Y)||_7(Y)||R7(Y)||V7(Y)||j7(Y)||mW(Y)||S7(Y)||C7(Y)||P7(Y)||I7(Y)||x7(Y))}var T7="(true|false)",c6="(0|[1-9][0-9]*)",k7="(.*)";var HY="^(0|[1-9][0-9]*)$",UY="^(.*)$",b7="^(?!.*)$";var j1={};RY(j1,{Set:()=>bU,Has:()=>kU,Get:()=>gU,Entries:()=>IU,Delete:()=>TU,Clear:()=>xU});var nX=new Map;function IU(){return new Map(nX)}function xU(){return nX.clear()}function TU(Y){return nX.delete(Y)}function kU(Y){return nX.has(Y)}function bU(Y,X){nX.set(Y,X)}function gU(Y){return nX.get(Y)}var H0={};RY(H0,{Set:()=>dU,Has:()=>hU,Get:()=>mU,Entries:()=>fU,Delete:()=>yU,Clear:()=>vU});var tX=new Map;function fU(){return new Map(tX)}function vU(){return tX.clear()}function yU(Y){return tX.delete(Y)}function hU(Y){return tX.has(Y)}function dU(Y,X){tX.set(Y,X)}function mU(Y){return tX.get(Y)}function g7(Y,X){return Y.includes(X)}function f7(Y){return[...new Set(Y)]}function pU(Y,X){return Y.filter(($)=>X.includes($))}function cU(Y,X){return Y.reduce(($,Z)=>{return pU($,Z)},X)}function v7(Y){return Y.length===1?Y[0]:Y.length>1?cU(Y.slice(1),Y[0]):[]}function y7(Y){let X=[];for(let $ of Y)X.push(...$);return X}function $X(Y){return S({[R]:"Any"},Y)}function sX(Y,X){return S({[R]:"Array",type:"array",items:Y},X)}function h7(Y){return S({[R]:"Argument",index:Y})}function rX(Y,X){return S({[R]:"AsyncIterator",type:"AsyncIterator",items:Y},X)}function d1(Y,X,$){return S({[R]:"Computed",target:Y,parameters:X},$)}function uU(Y,X){let{[X]:$,...Z}=Y;return Z}function a1(Y,X){return X.reduce(($,Z)=>uU($,Z),Y)}function J1(Y){return S({[R]:"Never",not:{}},Y)}function F1(Y){return S({[R]:"MappedResult",properties:Y})}function aX(Y,X,$){return S({[R]:"Constructor",type:"Constructor",parameters:Y,returns:X},$)}function zY(Y,X,$){return S({[R]:"Function",type:"Function",parameters:Y,returns:X},$)}function m$(Y,X){return S({[R]:"Union",anyOf:Y},X)}function iU(Y){return Y.some((X)=>l0(X))}function d7(Y){return Y.map((X)=>l0(X)?oU(X):X)}function oU(Y){return a1(Y,[G0])}function lU(Y,X){return iU(Y)?k0(m$(d7(Y),X)):m$(d7(Y),X)}function DY(Y,X){return Y.length===1?S(Y[0],X):Y.length===0?J1(X):lU(Y,X)}function _1(Y,X){return Y.length===0?J1(X):Y.length===1?S(Y[0],X):m$(Y,X)}class pW extends a{}function nU(Y){return Y.replace(/\\\$/g,"$").replace(/\\\*/g,"*").replace(/\\\^/g,"^").replace(/\\\|/g,"|").replace(/\\\(/g,"(").replace(/\\\)/g,")")}function cW(Y,X,$){return Y[X]===$&&Y.charCodeAt(X-1)!==92}function TY(Y,X){return cW(Y,X,"(")}function p$(Y,X){return cW(Y,X,")")}function m7(Y,X){return cW(Y,X,"|")}function tU(Y){if(!(TY(Y,0)&&p$(Y,Y.length-1)))return!1;let X=0;for(let $=0;$<Y.length;$++){if(TY(Y,$))X+=1;if(p$(Y,$))X-=1;if(X===0&&$!==Y.length-1)return!1}return!0}function sU(Y){return Y.slice(1,Y.length-1)}function rU(Y){let X=0;for(let $=0;$<Y.length;$++){if(TY(Y,$))X+=1;if(p$(Y,$))X-=1;if(m7(Y,$)&&X===0)return!0}return!1}function aU(Y){for(let X=0;X<Y.length;X++)if(TY(Y,X))return!0;return!1}function eU(Y){let[X,$]=[0,0],Z=[];for(let J=0;J<Y.length;J++){if(TY(Y,J))X+=1;if(p$(Y,J))X-=1;if(m7(Y,J)&&X===0){let Q=Y.slice($,J);if(Q.length>0)Z.push(eX(Q));$=J+1}}let W=Y.slice($);if(W.length>0)Z.push(eX(W));if(Z.length===0)return{type:"const",const:""};if(Z.length===1)return Z[0];return{type:"or",expr:Z}}function Yz(Y){function X(W,J){if(!TY(W,J))throw new pW("TemplateLiteralParser: Index must point to open parens");let Q=0;for(let G=J;G<W.length;G++){if(TY(W,G))Q+=1;if(p$(W,G))Q-=1;if(Q===0)return[J,G]}throw new pW("TemplateLiteralParser: Unclosed group parens in expression")}function $(W,J){for(let Q=J;Q<W.length;Q++)if(TY(W,Q))return[J,Q];return[J,W.length]}let Z=[];for(let W=0;W<Y.length;W++)if(TY(Y,W)){let[J,Q]=X(Y,W),G=Y.slice(J,Q+1);Z.push(eX(G)),W=Q}else{let[J,Q]=$(Y,W),G=Y.slice(J,Q);if(G.length>0)Z.push(eX(G));W=Q-1}return Z.length===0?{type:"const",const:""}:Z.length===1?Z[0]:{type:"and",expr:Z}}function eX(Y){return tU(Y)?eX(sU(Y)):rU(Y)?eU(Y):aU(Y)?Yz(Y):{type:"const",const:nU(Y)}}function Y$(Y){return eX(Y.slice(1,Y.length-1))}class p7 extends a{}function Xz(Y){return Y.type==="or"&&Y.expr.length===2&&Y.expr[0].type==="const"&&Y.expr[0].const==="0"&&Y.expr[1].type==="const"&&Y.expr[1].const==="[1-9][0-9]*"}function $z(Y){return Y.type==="or"&&Y.expr.length===2&&Y.expr[0].type==="const"&&Y.expr[0].const==="true"&&Y.expr[1].type==="const"&&Y.expr[1].const==="false"}function Zz(Y){return Y.type==="const"&&Y.const===".*"}function CX(Y){return Xz(Y)||Zz(Y)?!1:$z(Y)?!0:Y.type==="and"?Y.expr.every((X)=>CX(X)):Y.type==="or"?Y.expr.every((X)=>CX(X)):Y.type==="const"?!0:(()=>{throw new p7("Unknown expression type")})()}function u6(Y){let X=Y$(Y.pattern);return CX(X)}class c7 extends a{}function*u7(Y){if(Y.length===1)return yield*Y[0];for(let X of Y[0])for(let $ of u7(Y.slice(1)))yield`${X}${$}`}function*Wz(Y){return yield*u7(Y.expr.map((X)=>[...c$(X)]))}function*Jz(Y){for(let X of Y.expr)yield*c$(X)}function*Qz(Y){return yield Y.const}function*c$(Y){return Y.type==="and"?yield*Wz(Y):Y.type==="or"?yield*Jz(Y):Y.type==="const"?yield*Qz(Y):(()=>{throw new c7("Unknown expression")})()}function X$(Y){let X=Y$(Y.pattern);return CX(X)?[...c$(X)]:[]}function A1(Y,X){return S({[R]:"Literal",const:Y,type:typeof Y},X)}function i6(Y){return S({[R]:"Boolean",type:"boolean"},Y)}function $$(Y){return S({[R]:"BigInt",type:"bigint"},Y)}function S8(Y){return S({[R]:"Number",type:"number"},Y)}function d0(Y){return S({[R]:"String",type:"string"},Y)}function*Gz(Y){let X=Y.trim().replace(/"|'/g,"");return X==="boolean"?yield i6():X==="number"?yield S8():X==="bigint"?yield $$():X==="string"?yield d0():yield(()=>{let $=X.split("|").map((Z)=>A1(Z.trim()));return $.length===0?J1():$.length===1?$[0]:DY($)})()}function*Mz(Y){if(Y[1]!=="{"){let X=A1("$"),$=uW(Y.slice(1));return yield*[X,...$]}for(let X=2;X<Y.length;X++)if(Y[X]==="}"){let $=Gz(Y.slice(2,X)),Z=uW(Y.slice(X+1));return yield*[...$,...Z]}yield A1(Y)}function*uW(Y){for(let X=0;X<Y.length;X++)if(Y[X]==="$"){let $=A1(Y.slice(0,X)),Z=Mz(Y.slice(X));return yield*[$,...Z]}yield A1(Y)}function i7(Y){return[...uW(Y)]}class o7 extends a{}function Hz(Y){return Y.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function l7(Y,X){return N8(Y)?Y.pattern.slice(1,Y.pattern.length-1):w1(Y)?`(${Y.anyOf.map(($)=>l7($,X)).join("|")})`:l8(Y)?`${X}${c6}`:o8(Y)?`${X}${c6}`:EX(Y)?`${X}${c6}`:PY(Y)?`${X}${k7}`:A8(Y)?`${X}${Hz(Y.const.toString())}`:CY(Y)?`${X}${T7}`:(()=>{throw new o7(`Unexpected Kind '${Y[R]}'`)})()}function iW(Y){return`^${Y.map((X)=>l7(X,"")).join("")}$`}function PX(Y){let $=X$(Y).map((Z)=>A1(Z));return DY($)}function o6(Y,X){let $=b1(Y)?iW(i7(Y)):iW(Y);return S({[R]:"TemplateLiteral",type:"string",pattern:$},X)}function Uz(Y){return X$(Y).map(($)=>$.toString())}function zz(Y){let X=[];for(let $ of Y)X.push(...n0($));return X}function Dz(Y){return[Y.toString()]}function n0(Y){return[...new Set(N8(Y)?Uz(Y):w1(Y)?zz(Y.anyOf):A8(Y)?Dz(Y.const):l8(Y)?["[number]"]:o8(Y)?["[number]"]:[])]}function Az(Y,X,$){let Z={};for(let W of Object.getOwnPropertyNames(X))Z[W]=ZX(Y,n0(X[W]),$);return Z}function Oz(Y,X,$){return Az(Y,X.properties,$)}function n7(Y,X,$){let Z=Oz(Y,X,$);return F1(Z)}function s7(Y,X){return Y.map(($)=>r7($,X))}function Nz(Y){return Y.filter((X)=>!YX(X))}function wz(Y,X){return l6(Nz(s7(Y,X)))}function Fz(Y){return Y.some((X)=>YX(X))?[]:Y}function Bz(Y,X){return DY(Fz(s7(Y,X)))}function Kz(Y,X){return X in Y?Y[X]:X==="[number]"?DY(Y):J1()}function Lz(Y,X){return X==="[number]"?Y:J1()}function qz(Y,X){return X in Y?Y[X]:J1()}function r7(Y,X){return r1(Y)?wz(Y.allOf,X):w1(Y)?Bz(Y.anyOf,X):w8(Y)?Kz(Y.items??[],X):p8(Y)?Lz(Y.items,X):M0(Y)?qz(Y.properties,X):J1()}function u$(Y,X){return X.map(($)=>r7(Y,$))}function t7(Y,X){return DY(u$(Y,X))}function ZX(Y,X,$){if($0(Y)||$0(X)){if(!l1(Y)||!l1(X))throw new a("Index types using Ref parameters require both Type and Key to be of TSchema");return d1("Index",[Y,X])}if(u1(X))return n7(Y,X,$);if(O8(X))return a7(Y,X,$);return S(l1(X)?t7(Y,n0(X)):t7(Y,X),$)}function _z(Y,X,$){return{[X]:ZX(Y,[X],p1($))}}function Rz(Y,X,$){return X.reduce((Z,W)=>{return{...Z,..._z(Y,W,$)}},{})}function Ez(Y,X,$){return Rz(Y,X.keys,$)}function a7(Y,X,$){let Z=Ez(Y,X,$);return F1(Z)}function Z$(Y,X){return S({[R]:"Iterator",type:"Iterator",items:Y},X)}function Vz(Y){let X=[];for(let $ in Y)if(!l0(Y[$]))X.push($);return X}function jz(Y,X){let $=Vz(Y),Z=$.length>0?{[R]:"Object",type:"object",properties:Y,required:$}:{[R]:"Object",type:"object",properties:Y};return S(Z,X)}var R1=jz;function n6(Y,X){return S({[R]:"Promise",type:"Promise",item:Y},X)}function Sz(Y){return S(a1(Y,[m8]))}function Cz(Y){return S({...Y,[m8]:"Readonly"})}function Pz(Y,X){return X===!1?Sz(Y):Cz(Y)}function t0(Y,X){let $=X??!0;return u1(Y)?e7(Y,$):Pz(Y,$)}function Iz(Y,X){let $={};for(let Z of globalThis.Object.getOwnPropertyNames(Y))$[Z]=t0(Y[Z],X);return $}function xz(Y,X){return Iz(Y.properties,X)}function e7(Y,X){let $=xz(Y,X);return F1($)}function C8(Y,X){return S(Y.length>0?{[R]:"Tuple",type:"array",items:Y,additionalItems:!1,minItems:Y.length,maxItems:Y.length}:{[R]:"Tuple",type:"array",minItems:Y.length,maxItems:Y.length},X)}function Y5(Y,X){return Y in X?P8(Y,X[Y]):F1(X)}function Tz(Y){return{[Y]:A1(Y)}}function kz(Y){let X={};for(let $ of Y)X[$]=A1($);return X}function bz(Y,X){return g7(X,Y)?Tz(Y):kz(X)}function gz(Y,X){let $=bz(Y,X);return Y5(Y,$)}function i$(Y,X){return X.map(($)=>P8(Y,$))}function fz(Y,X){let $={};for(let Z of globalThis.Object.getOwnPropertyNames(X))$[Z]=P8(Y,X[Z]);return $}function P8(Y,X){let $={...X};return l0(X)?k0(P8(Y,a1(X,[G0]))):lX(X)?t0(P8(Y,a1(X,[m8]))):u1(X)?Y5(Y,X.properties):O8(X)?gz(Y,X.keys):u8(X)?aX(i$(Y,X.parameters),P8(Y,X.returns),$):i8(X)?zY(i$(Y,X.parameters),P8(Y,X.returns),$):RX(X)?rX(P8(Y,X.items),$):VX(X)?Z$(P8(Y,X.items),$):r1(X)?b0(i$(Y,X.allOf),$):w1(X)?_1(i$(Y,X.anyOf),$):w8(X)?C8(i$(Y,X.items??[]),$):M0(X)?R1(fz(Y,X.properties),$):p8(X)?sX(P8(Y,X.items),$):jX(X)?n6(P8(Y,X.item),$):X}function vz(Y,X){let $={};for(let Z of Y)$[Z]=P8(Z,X);return $}function X5(Y,X,$){let Z=l1(Y)?n0(Y):Y,W=X({[R]:"MappedKey",keys:Z}),J=vz(Z,W);return R1(J,$)}function yz(Y){return S(a1(Y,[G0]))}function hz(Y){return S({...Y,[G0]:"Optional"})}function dz(Y,X){return X===!1?yz(Y):hz(Y)}function k0(Y,X){let $=X??!0;return u1(Y)?$5(Y,$):dz(Y,$)}function mz(Y,X){let $={};for(let Z of globalThis.Object.getOwnPropertyNames(Y))$[Z]=k0(Y[Z],X);return $}function pz(Y,X){return mz(Y.properties,X)}function $5(Y,X){let $=pz(Y,X);return F1($)}function o$(Y,X={}){let $=Y.every((W)=>M0(W)),Z=l1(X.unevaluatedProperties)?{unevaluatedProperties:X.unevaluatedProperties}:{};return S(X.unevaluatedProperties===!1||l1(X.unevaluatedProperties)||$?{...Z,[R]:"Intersect",type:"object",allOf:Y}:{...Z,[R]:"Intersect",allOf:Y},X)}function cz(Y){return Y.every((X)=>l0(X))}function uz(Y){return a1(Y,[G0])}function Z5(Y){return Y.map((X)=>l0(X)?uz(X):X)}function iz(Y,X){return cz(Y)?k0(o$(Z5(Y),X)):o$(Z5(Y),X)}function l6(Y,X={}){if(Y.length===1)return S(Y[0],X);if(Y.length===0)return J1(X);if(Y.some(($)=>q1($)))throw new Error("Cannot intersect transform types");return iz(Y,X)}function b0(Y,X){if(Y.length===1)return S(Y[0],X);if(Y.length===0)return J1(X);if(Y.some(($)=>q1($)))throw new Error("Cannot intersect transform types");return o$(Y,X)}function I8(...Y){let[X,$]=typeof Y[0]==="string"?[Y[0],Y[1]]:[Y[0].$id,Y[1]];if(typeof X!=="string")throw new a("Ref: $ref must be a string");return S({[R]:"Ref",$ref:X},$)}function oz(Y,X){return d1("Awaited",[d1(Y,X)])}function lz(Y){return d1("Awaited",[I8(Y)])}function nz(Y){return b0(W5(Y))}function tz(Y){return _1(W5(Y))}function sz(Y){return W$(Y)}function W5(Y){return Y.map((X)=>W$(X))}function W$(Y,X){return S(c8(Y)?oz(Y.target,Y.parameters):r1(Y)?nz(Y.allOf):w1(Y)?tz(Y.anyOf):jX(Y)?sz(Y.item):$0(Y)?lz(Y.$ref):Y,X)}function J5(Y){let X=[];for(let $ of Y)X.push(s0($));return X}function rz(Y){let X=J5(Y);return y7(X)}function az(Y){let X=J5(Y);return v7(X)}function ez(Y){return Y.map((X,$)=>$.toString())}function YD(Y){return["[number]"]}function XD(Y){return globalThis.Object.getOwnPropertyNames(Y)}function $D(Y){if(!oW)return[];return globalThis.Object.getOwnPropertyNames(Y).map(($)=>{return $[0]==="^"&&$[$.length-1]==="$"?$.slice(1,$.length-1):$})}function s0(Y){return r1(Y)?rz(Y.allOf):w1(Y)?az(Y.anyOf):w8(Y)?ez(Y.items??[]):p8(Y)?YD(Y.items):M0(Y)?XD(Y.properties):SX(Y)?$D(Y.patternProperties):[]}var oW=!1;function kY(Y){oW=!0;let X=s0(Y);return oW=!1,`^(${X.map((Z)=>`(${Z})`).join("|")})$`}function ZD(Y,X){return d1("KeyOf",[d1(Y,X)])}function WD(Y){return d1("KeyOf",[I8(Y)])}function JD(Y,X){let $=s0(Y),Z=QD($),W=DY(Z);return S(W,X)}function QD(Y){return Y.map((X)=>X==="[number]"?S8():A1(X))}function J$(Y,X){return c8(Y)?ZD(Y.target,Y.parameters):$0(Y)?WD(Y.$ref):u1(Y)?Q5(Y,X):JD(Y,X)}function GD(Y,X){let $={};for(let Z of globalThis.Object.getOwnPropertyNames(Y))$[Z]=J$(Y[Z],p1(X));return $}function MD(Y,X){return GD(Y.properties,X)}function Q5(Y,X){let $=MD(Y,X);return F1($)}function t6(Y){let X=s0(Y),$=u$(Y,X);return X.map((Z,W)=>[X[W],$[W]])}function HD(Y){let X=[];for(let $ of Y)X.push(...s0($));return f7(X)}function UD(Y){return Y.filter((X)=>!YX(X))}function zD(Y,X){let $=[];for(let Z of Y)$.push(...u$(Z,[X]));return UD($)}function DD(Y,X){let $={};for(let Z of X)$[Z]=l6(zD(Y,Z));return $}function G5(Y,X){let $=HD(Y),Z=DD(Y,$);return R1(Z,X)}function s6(Y){return S({[R]:"Date",type:"Date"},Y)}function r6(Y){return S({[R]:"Null",type:"null"},Y)}function a6(Y){return S({[R]:"Symbol",type:"symbol"},Y)}function e6(Y){return S({[R]:"Undefined",type:"undefined"},Y)}function YZ(Y){return S({[R]:"Uint8Array",type:"Uint8Array"},Y)}function n8(Y){return S({[R]:"Unknown"},Y)}function AD(Y){return Y.map((X)=>lW(X,!1))}function OD(Y){let X={};for(let $ of globalThis.Object.getOwnPropertyNames(Y))X[$]=t0(lW(Y[$],!1));return X}function XZ(Y,X){return X===!0?Y:t0(Y)}function lW(Y,X){return IW(Y)?XZ($X(),X):TW(Y)?XZ($X(),X):J0(Y)?t0(C8(AD(Y))):VY(Y)?YZ():_X(Y)?s6():S1(Y)?XZ(R1(OD(Y)),X):xW(Y)?XZ(zY([],n8()),X):Q0(Y)?e6():kW(Y)?r6():bW(Y)?a6():b$(Y)?$$():z8(Y)?A1(Y):EY(Y)?A1(Y):b1(Y)?A1(Y):R1({})}function M5(Y,X){return S(lW(Y,!0),X)}function H5(Y,X){return u8(Y)?C8(Y.parameters,X):J1(X)}function U5(Y,X){if(Q0(Y))throw new Error("Enum undefined or empty");let $=globalThis.Object.getOwnPropertyNames(Y).filter((J)=>isNaN(J)).map((J)=>Y[J]),W=[...new Set($)].map((J)=>A1(J));return _1(W,{...X,[j8]:"Enum"})}class N5 extends a{}var C;(function(Y){Y[Y.Union=0]="Union",Y[Y.True=1]="True",Y[Y.False=2]="False"})(C||(C={}));function x8(Y){return Y===C.False?Y:C.True}function Q$(Y){throw new N5(Y)}function A0(Y){return _.IsNever(Y)||_.IsIntersect(Y)||_.IsUnion(Y)||_.IsUnknown(Y)||_.IsAny(Y)}function O0(Y,X){return _.IsNever(X)?B5(Y,X):_.IsIntersect(X)?$Z(Y,X):_.IsUnion(X)?aW(Y,X):_.IsUnknown(X)?_5(Y,X):_.IsAny(X)?rW(Y,X):Q$("StructuralRight")}function rW(Y,X){return C.True}function ND(Y,X){return _.IsIntersect(X)?$Z(Y,X):_.IsUnion(X)&&X.anyOf.some(($)=>_.IsAny($)||_.IsUnknown($))?C.True:_.IsUnion(X)?C.Union:_.IsUnknown(X)?C.True:_.IsAny(X)?C.True:C.Union}function wD(Y,X){return _.IsUnknown(Y)?C.False:_.IsAny(Y)?C.Union:_.IsNever(Y)?C.True:C.False}function FD(Y,X){return _.IsObject(X)&&ZZ(X)?C.True:A0(X)?O0(Y,X):!_.IsArray(X)?C.False:x8(P1(Y.items,X.items))}function BD(Y,X){return A0(X)?O0(Y,X):!_.IsAsyncIterator(X)?C.False:x8(P1(Y.items,X.items))}function KD(Y,X){return A0(X)?O0(Y,X):_.IsObject(X)?g0(Y,X):_.IsRecord(X)?T8(Y,X):_.IsBigInt(X)?C.True:C.False}function w5(Y,X){return _.IsLiteralBoolean(Y)?C.True:_.IsBoolean(Y)?C.True:C.False}function LD(Y,X){return A0(X)?O0(Y,X):_.IsObject(X)?g0(Y,X):_.IsRecord(X)?T8(Y,X):_.IsBoolean(X)?C.True:C.False}function qD(Y,X){return A0(X)?O0(Y,X):_.IsObject(X)?g0(Y,X):!_.IsConstructor(X)?C.False:Y.parameters.length>X.parameters.length?C.False:!Y.parameters.every(($,Z)=>x8(P1(X.parameters[Z],$))===C.True)?C.False:x8(P1(Y.returns,X.returns))}function _D(Y,X){return A0(X)?O0(Y,X):_.IsObject(X)?g0(Y,X):_.IsRecord(X)?T8(Y,X):_.IsDate(X)?C.True:C.False}function RD(Y,X){return A0(X)?O0(Y,X):_.IsObject(X)?g0(Y,X):!_.IsFunction(X)?C.False:Y.parameters.length>X.parameters.length?C.False:!Y.parameters.every(($,Z)=>x8(P1(X.parameters[Z],$))===C.True)?C.False:x8(P1(Y.returns,X.returns))}function F5(Y,X){return _.IsLiteral(Y)&&T0.IsNumber(Y.const)?C.True:_.IsNumber(Y)||_.IsInteger(Y)?C.True:C.False}function ED(Y,X){return _.IsInteger(X)||_.IsNumber(X)?C.True:A0(X)?O0(Y,X):_.IsObject(X)?g0(Y,X):_.IsRecord(X)?T8(Y,X):C.False}function $Z(Y,X){return X.allOf.every(($)=>P1(Y,$)===C.True)?C.True:C.False}function VD(Y,X){return Y.allOf.some(($)=>P1($,X)===C.True)?C.True:C.False}function jD(Y,X){return A0(X)?O0(Y,X):!_.IsIterator(X)?C.False:x8(P1(Y.items,X.items))}function SD(Y,X){return _.IsLiteral(X)&&X.const===Y.const?C.True:A0(X)?O0(Y,X):_.IsObject(X)?g0(Y,X):_.IsRecord(X)?T8(Y,X):_.IsString(X)?q5(Y,X):_.IsNumber(X)?K5(Y,X):_.IsInteger(X)?F5(Y,X):_.IsBoolean(X)?w5(Y,X):C.False}function B5(Y,X){return C.False}function CD(Y,X){return C.True}function z5(Y){let[X,$]=[Y,0];while(!0){if(!_.IsNot(X))break;X=X.not,$+=1}return $%2===0?X:n8()}function PD(Y,X){return _.IsNot(Y)?P1(z5(Y),X):_.IsNot(X)?P1(Y,z5(X)):Q$("Invalid fallthrough for Not")}function ID(Y,X){return A0(X)?O0(Y,X):_.IsObject(X)?g0(Y,X):_.IsRecord(X)?T8(Y,X):_.IsNull(X)?C.True:C.False}function K5(Y,X){return _.IsLiteralNumber(Y)?C.True:_.IsNumber(Y)||_.IsInteger(Y)?C.True:C.False}function xD(Y,X){return A0(X)?O0(Y,X):_.IsObject(X)?g0(Y,X):_.IsRecord(X)?T8(Y,X):_.IsInteger(X)||_.IsNumber(X)?C.True:C.False}function r0(Y,X){return Object.getOwnPropertyNames(Y.properties).length===X}function D5(Y){return ZZ(Y)}function A5(Y){return r0(Y,0)||r0(Y,1)&&"description"in Y.properties&&_.IsUnion(Y.properties.description)&&Y.properties.description.anyOf.length===2&&(_.IsString(Y.properties.description.anyOf[0])&&_.IsUndefined(Y.properties.description.anyOf[1])||_.IsString(Y.properties.description.anyOf[1])&&_.IsUndefined(Y.properties.description.anyOf[0]))}function nW(Y){return r0(Y,0)}function O5(Y){return r0(Y,0)}function TD(Y){return r0(Y,0)}function kD(Y){return r0(Y,0)}function bD(Y){return ZZ(Y)}function gD(Y){let X=S8();return r0(Y,0)||r0(Y,1)&&"length"in Y.properties&&x8(P1(Y.properties.length,X))===C.True}function fD(Y){return r0(Y,0)}function ZZ(Y){let X=S8();return r0(Y,0)||r0(Y,1)&&"length"in Y.properties&&x8(P1(Y.properties.length,X))===C.True}function vD(Y){let X=zY([$X()],$X());return r0(Y,0)||r0(Y,1)&&"then"in Y.properties&&x8(P1(Y.properties.then,X))===C.True}function L5(Y,X){return P1(Y,X)===C.False?C.False:_.IsOptional(Y)&&!_.IsOptional(X)?C.False:C.True}function g0(Y,X){return _.IsUnknown(Y)?C.False:_.IsAny(Y)?C.Union:_.IsNever(Y)||_.IsLiteralString(Y)&&D5(X)||_.IsLiteralNumber(Y)&&nW(X)||_.IsLiteralBoolean(Y)&&O5(X)||_.IsSymbol(Y)&&A5(X)||_.IsBigInt(Y)&&TD(X)||_.IsString(Y)&&D5(X)||_.IsSymbol(Y)&&A5(X)||_.IsNumber(Y)&&nW(X)||_.IsInteger(Y)&&nW(X)||_.IsBoolean(Y)&&O5(X)||_.IsUint8Array(Y)&&bD(X)||_.IsDate(Y)&&kD(X)||_.IsConstructor(Y)&&fD(X)||_.IsFunction(Y)&&gD(X)?C.True:_.IsRecord(Y)&&_.IsString(tW(Y))?(()=>{return X[j8]==="Record"?C.True:C.False})():_.IsRecord(Y)&&_.IsNumber(tW(Y))?(()=>{return r0(X,0)?C.True:C.False})():C.False}function yD(Y,X){return A0(X)?O0(Y,X):_.IsRecord(X)?T8(Y,X):!_.IsObject(X)?C.False:(()=>{for(let $ of Object.getOwnPropertyNames(X.properties)){if(!($ in Y.properties)&&!_.IsOptional(X.properties[$]))return C.False;if(_.IsOptional(X.properties[$]))return C.True;if(L5(Y.properties[$],X.properties[$])===C.False)return C.False}return C.True})()}function hD(Y,X){return A0(X)?O0(Y,X):_.IsObject(X)&&vD(X)?C.True:!_.IsPromise(X)?C.False:x8(P1(Y.item,X.item))}function tW(Y){return HY in Y.patternProperties?S8():(UY in Y.patternProperties)?d0():Q$("Unknown record key pattern")}function sW(Y){return HY in Y.patternProperties?Y.patternProperties[HY]:(UY in Y.patternProperties)?Y.patternProperties[UY]:Q$("Unable to get record value schema")}function T8(Y,X){let[$,Z]=[tW(X),sW(X)];return _.IsLiteralString(Y)&&_.IsNumber($)&&x8(P1(Y,Z))===C.True?C.True:_.IsUint8Array(Y)&&_.IsNumber($)?P1(Y,Z):_.IsString(Y)&&_.IsNumber($)?P1(Y,Z):_.IsArray(Y)&&_.IsNumber($)?P1(Y,Z):_.IsObject(Y)?(()=>{for(let W of Object.getOwnPropertyNames(Y.properties))if(L5(Z,Y.properties[W])===C.False)return C.False;return C.True})():C.False}function dD(Y,X){return A0(X)?O0(Y,X):_.IsObject(X)?g0(Y,X):!_.IsRecord(X)?C.False:P1(sW(Y),sW(X))}function mD(Y,X){let $=_.IsRegExp(Y)?d0():Y,Z=_.IsRegExp(X)?d0():X;return P1($,Z)}function q5(Y,X){return _.IsLiteral(Y)&&T0.IsString(Y.const)?C.True:_.IsString(Y)?C.True:C.False}function pD(Y,X){return A0(X)?O0(Y,X):_.IsObject(X)?g0(Y,X):_.IsRecord(X)?T8(Y,X):_.IsString(X)?C.True:C.False}function cD(Y,X){return A0(X)?O0(Y,X):_.IsObject(X)?g0(Y,X):_.IsRecord(X)?T8(Y,X):_.IsSymbol(X)?C.True:C.False}function uD(Y,X){return _.IsTemplateLiteral(Y)?P1(PX(Y),X):_.IsTemplateLiteral(X)?P1(Y,PX(X)):Q$("Invalid fallthrough for TemplateLiteral")}function iD(Y,X){return _.IsArray(X)&&Y.items!==void 0&&Y.items.every(($)=>P1($,X.items)===C.True)}function oD(Y,X){return _.IsNever(Y)?C.True:_.IsUnknown(Y)?C.False:_.IsAny(Y)?C.Union:C.False}function lD(Y,X){return A0(X)?O0(Y,X):_.IsObject(X)&&ZZ(X)?C.True:_.IsArray(X)&&iD(Y,X)?C.True:!_.IsTuple(X)?C.False:T0.IsUndefined(Y.items)&&!T0.IsUndefined(X.items)||!T0.IsUndefined(Y.items)&&T0.IsUndefined(X.items)?C.False:T0.IsUndefined(Y.items)&&!T0.IsUndefined(X.items)?C.True:Y.items.every(($,Z)=>P1($,X.items[Z])===C.True)?C.True:C.False}function nD(Y,X){return A0(X)?O0(Y,X):_.IsObject(X)?g0(Y,X):_.IsRecord(X)?T8(Y,X):_.IsUint8Array(X)?C.True:C.False}function tD(Y,X){return A0(X)?O0(Y,X):_.IsObject(X)?g0(Y,X):_.IsRecord(X)?T8(Y,X):_.IsVoid(X)?aD(Y,X):_.IsUndefined(X)?C.True:C.False}function aW(Y,X){return X.anyOf.some(($)=>P1(Y,$)===C.True)?C.True:C.False}function sD(Y,X){return Y.anyOf.every(($)=>P1($,X)===C.True)?C.True:C.False}function _5(Y,X){return C.True}function rD(Y,X){return _.IsNever(X)?B5(Y,X):_.IsIntersect(X)?$Z(Y,X):_.IsUnion(X)?aW(Y,X):_.IsAny(X)?rW(Y,X):_.IsString(X)?q5(Y,X):_.IsNumber(X)?K5(Y,X):_.IsInteger(X)?F5(Y,X):_.IsBoolean(X)?w5(Y,X):_.IsArray(X)?wD(Y,X):_.IsTuple(X)?oD(Y,X):_.IsObject(X)?g0(Y,X):_.IsUnknown(X)?C.True:C.False}function aD(Y,X){return _.IsUndefined(Y)?C.True:_.IsUndefined(Y)?C.True:C.False}function eD(Y,X){return _.IsIntersect(X)?$Z(Y,X):_.IsUnion(X)?aW(Y,X):_.IsUnknown(X)?_5(Y,X):_.IsAny(X)?rW(Y,X):_.IsObject(X)?g0(Y,X):_.IsVoid(X)?C.True:C.False}function P1(Y,X){return _.IsTemplateLiteral(Y)||_.IsTemplateLiteral(X)?uD(Y,X):_.IsRegExp(Y)||_.IsRegExp(X)?mD(Y,X):_.IsNot(Y)||_.IsNot(X)?PD(Y,X):_.IsAny(Y)?ND(Y,X):_.IsArray(Y)?FD(Y,X):_.IsBigInt(Y)?KD(Y,X):_.IsBoolean(Y)?LD(Y,X):_.IsAsyncIterator(Y)?BD(Y,X):_.IsConstructor(Y)?qD(Y,X):_.IsDate(Y)?_D(Y,X):_.IsFunction(Y)?RD(Y,X):_.IsInteger(Y)?ED(Y,X):_.IsIntersect(Y)?VD(Y,X):_.IsIterator(Y)?jD(Y,X):_.IsLiteral(Y)?SD(Y,X):_.IsNever(Y)?CD(Y,X):_.IsNull(Y)?ID(Y,X):_.IsNumber(Y)?xD(Y,X):_.IsObject(Y)?yD(Y,X):_.IsRecord(Y)?dD(Y,X):_.IsString(Y)?pD(Y,X):_.IsSymbol(Y)?cD(Y,X):_.IsTuple(Y)?lD(Y,X):_.IsPromise(Y)?hD(Y,X):_.IsUint8Array(Y)?nD(Y,X):_.IsUndefined(Y)?tD(Y,X):_.IsUnion(Y)?sD(Y,X):_.IsUnknown(Y)?rD(Y,X):_.IsVoid(Y)?eD(Y,X):Q$(`Unknown left type operand '${Y[R]}'`)}function WX(Y,X){return P1(Y,X)}function YA(Y,X,$,Z,W){let J={};for(let Q of globalThis.Object.getOwnPropertyNames(Y))J[Q]=G$(Y[Q],X,$,Z,p1(W));return J}function XA(Y,X,$,Z,W){return YA(Y.properties,X,$,Z,W)}function R5(Y,X,$,Z,W){let J=XA(Y,X,$,Z,W);return F1(J)}function $A(Y,X,$,Z){let W=WX(Y,X);return W===C.Union?_1([$,Z]):W===C.True?$:Z}function G$(Y,X,$,Z,W){return u1(Y)?R5(Y,X,$,Z,W):O8(Y)?S(E5(Y,X,$,Z,W)):S($A(Y,X,$,Z),W)}function ZA(Y,X,$,Z,W){return{[Y]:G$(A1(Y),X,$,Z,p1(W))}}function WA(Y,X,$,Z,W){return Y.reduce((J,Q)=>{return{...J,...ZA(Q,X,$,Z,W)}},{})}function JA(Y,X,$,Z,W){return WA(Y.keys,X,$,Z,W)}function E5(Y,X,$,Z,W){let J=JA(Y,X,$,Z,W);return F1(J)}function QA(Y){return Y.allOf.every((X)=>bY(X))}function GA(Y){return Y.anyOf.some((X)=>bY(X))}function MA(Y){return!bY(Y.not)}function bY(Y){return Y[R]==="Intersect"?QA(Y):Y[R]==="Union"?GA(Y):Y[R]==="Not"?MA(Y):Y[R]==="Undefined"?!0:!1}function V5(Y,X){return M$(PX(Y),X)}function HA(Y,X){let $=Y.filter((Z)=>WX(Z,X)===C.False);return $.length===1?$[0]:_1($)}function M$(Y,X,$={}){if(N8(Y))return S(V5(Y,X),$);if(u1(Y))return S(j5(Y,X),$);return S(w1(Y)?HA(Y.anyOf,X):WX(Y,X)!==C.False?J1():Y,$)}function UA(Y,X){let $={};for(let Z of globalThis.Object.getOwnPropertyNames(Y))$[Z]=M$(Y[Z],X);return $}function zA(Y,X){return UA(Y.properties,X)}function j5(Y,X){let $=zA(Y,X);return F1($)}function S5(Y,X){return H$(PX(Y),X)}function DA(Y,X){let $=Y.filter((Z)=>WX(Z,X)!==C.False);return $.length===1?$[0]:_1($)}function H$(Y,X,$){if(N8(Y))return S(S5(Y,X),$);if(u1(Y))return S(C5(Y,X),$);return S(w1(Y)?DA(Y.anyOf,X):WX(Y,X)!==C.False?Y:J1(),$)}function AA(Y,X){let $={};for(let Z of globalThis.Object.getOwnPropertyNames(Y))$[Z]=H$(Y[Z],X);return $}function OA(Y,X){return AA(Y.properties,X)}function C5(Y,X){let $=OA(Y,X);return F1($)}function P5(Y,X){return u8(Y)?S(Y.returns,X):J1(X)}function WZ(Y){return t0(k0(Y))}function IX(Y,X,$){return S({[R]:"Record",type:"object",patternProperties:{[Y]:X}},$)}function eW(Y,X,$){let Z={};for(let W of Y)Z[W]=X;return R1(Z,{...$,[j8]:"Record"})}function NA(Y,X,$){return u6(Y)?eW(n0(Y),X,$):IX(Y.pattern,X,$)}function wA(Y,X,$){return eW(n0(_1(Y)),X,$)}function FA(Y,X,$){return eW([Y.toString()],X,$)}function BA(Y,X,$){return IX(Y.source,X,$)}function KA(Y,X,$){let Z=Q0(Y.pattern)?UY:Y.pattern;return IX(Z,X,$)}function LA(Y,X,$){return IX(UY,X,$)}function qA(Y,X,$){return IX(b7,X,$)}function _A(Y,X,$){return R1({true:X,false:X},$)}function RA(Y,X,$){return IX(HY,X,$)}function EA(Y,X,$){return IX(HY,X,$)}function JZ(Y,X,$={}){return w1(Y)?wA(Y.anyOf,X,$):N8(Y)?NA(Y,X,$):A8(Y)?FA(Y.const,X,$):CY(Y)?_A(Y,X,$):o8(Y)?RA(Y,X,$):l8(Y)?EA(Y,X,$):yW(Y)?BA(Y,X,$):PY(Y)?KA(Y,X,$):fW(Y)?LA(Y,X,$):YX(Y)?qA(Y,X,$):J1($)}function QZ(Y){return globalThis.Object.getOwnPropertyNames(Y.patternProperties)[0]}function I5(Y){let X=QZ(Y);return X===UY?d0():X===HY?S8():d0({pattern:X})}function GZ(Y){return Y.patternProperties[QZ(Y)]}function VA(Y,X){return X.parameters=l$(Y,X.parameters),X.returns=t8(Y,X.returns),X}function jA(Y,X){return X.parameters=l$(Y,X.parameters),X.returns=t8(Y,X.returns),X}function SA(Y,X){return X.allOf=l$(Y,X.allOf),X}function CA(Y,X){return X.anyOf=l$(Y,X.anyOf),X}function PA(Y,X){if(Q0(X.items))return X;return X.items=l$(Y,X.items),X}function IA(Y,X){return X.items=t8(Y,X.items),X}function xA(Y,X){return X.items=t8(Y,X.items),X}function TA(Y,X){return X.items=t8(Y,X.items),X}function kA(Y,X){return X.item=t8(Y,X.item),X}function bA(Y,X){let $=yA(Y,X.properties);return{...X,...R1($)}}function gA(Y,X){let $=t8(Y,I5(X)),Z=t8(Y,GZ(X)),W=JZ($,Z);return{...X,...W}}function fA(Y,X){return X.index in Y?Y[X.index]:n8()}function vA(Y,X){let $=lX(X),Z=l0(X),W=t8(Y,X);return $&&Z?WZ(W):$&&!Z?t0(W):!$&&Z?k0(W):W}function yA(Y,X){return globalThis.Object.getOwnPropertyNames(X).reduce(($,Z)=>{return{...$,[Z]:vA(Y,X[Z])}},{})}function l$(Y,X){return X.map(($)=>t8(Y,$))}function t8(Y,X){return u8(X)?VA(Y,X):i8(X)?jA(Y,X):r1(X)?SA(Y,X):w1(X)?CA(Y,X):w8(X)?PA(Y,X):p8(X)?IA(Y,X):RX(X)?xA(Y,X):VX(X)?TA(Y,X):jX(X)?kA(Y,X):M0(X)?bA(Y,X):SX(X)?gA(Y,X):vW(X)?fA(Y,X):X}function x5(Y,X){return t8(X,iX(Y))}function T5(Y){return S({[R]:"Integer",type:"integer"},Y)}function hA(Y,X,$){return{[Y]:s8(A1(Y),X,p1($))}}function dA(Y,X,$){return Y.reduce((W,J)=>{return{...W,...hA(J,X,$)}},{})}function mA(Y,X,$){return dA(Y.keys,X,$)}function k5(Y,X,$){let Z=mA(Y,X,$);return F1(Z)}function pA(Y){let[X,$]=[Y.slice(0,1),Y.slice(1)];return[X.toLowerCase(),$].join("")}function cA(Y){let[X,$]=[Y.slice(0,1),Y.slice(1)];return[X.toUpperCase(),$].join("")}function uA(Y){return Y.toUpperCase()}function iA(Y){return Y.toLowerCase()}function oA(Y,X,$){let Z=Y$(Y.pattern);if(!CX(Z))return{...Y,pattern:b5(Y.pattern,X)};let Q=[...c$(Z)].map((H)=>A1(H)),G=g5(Q,X),M=_1(G);return o6([M],$)}function b5(Y,X){return typeof Y==="string"?X==="Uncapitalize"?pA(Y):X==="Capitalize"?cA(Y):X==="Uppercase"?uA(Y):X==="Lowercase"?iA(Y):Y:Y.toString()}function g5(Y,X){return Y.map(($)=>s8($,X))}function s8(Y,X,$={}){return O8(Y)?k5(Y,X,$):N8(Y)?oA(Y,X,$):w1(Y)?_1(g5(Y.anyOf,X),$):A8(Y)?A1(b5(Y.const,X),$):S(Y,$)}function f5(Y,X={}){return s8(Y,"Capitalize",X)}function v5(Y,X={}){return s8(Y,"Lowercase",X)}function y5(Y,X={}){return s8(Y,"Uncapitalize",X)}function h5(Y,X={}){return s8(Y,"Uppercase",X)}function lA(Y,X,$){let Z={};for(let W of globalThis.Object.getOwnPropertyNames(Y))Z[W]=JX(Y[W],X,p1($));return Z}function nA(Y,X,$){return lA(Y.properties,X,$)}function d5(Y,X,$){let Z=nA(Y,X,$);return F1(Z)}function tA(Y,X){return Y.map(($)=>YJ($,X))}function sA(Y,X){return Y.map(($)=>YJ($,X))}function rA(Y,X){let{[X]:$,...Z}=Y;return Z}function aA(Y,X){return X.reduce(($,Z)=>rA($,Z),Y)}function eA(Y,X){let $=a1(Y,[I1,"$id","required","properties"]),Z=aA(Y.properties,X);return R1(Z,$)}function YO(Y){let X=Y.reduce(($,Z)=>m6(Z)?[...$,A1(Z)]:$,[]);return _1(X)}function YJ(Y,X){return r1(Y)?b0(tA(Y.allOf,X)):w1(Y)?_1(sA(Y.anyOf,X)):M0(Y)?eA(Y,X):R1({})}function JX(Y,X,$){let Z=J0(X)?YO(X):X,W=l1(X)?n0(X):X,J=$0(Y),Q=$0(X);return u1(Y)?d5(Y,W,$):O8(X)?m5(Y,X,$):J&&Q?d1("Omit",[Y,Z],$):!J&&Q?d1("Omit",[Y,Z],$):J&&!Q?d1("Omit",[Y,Z],$):S({...YJ(Y,W),...$})}function XO(Y,X,$){return{[X]:JX(Y,[X],p1($))}}function $O(Y,X,$){return X.reduce((Z,W)=>{return{...Z,...XO(Y,W,$)}},{})}function ZO(Y,X,$){return $O(Y,X.keys,$)}function m5(Y,X,$){let Z=ZO(Y,X,$);return F1(Z)}function WO(Y,X,$){let Z={};for(let W of globalThis.Object.getOwnPropertyNames(Y))Z[W]=QX(Y[W],X,p1($));return Z}function JO(Y,X,$){return WO(Y.properties,X,$)}function p5(Y,X,$){let Z=JO(Y,X,$);return F1(Z)}function QO(Y,X){return Y.map(($)=>XJ($,X))}function GO(Y,X){return Y.map(($)=>XJ($,X))}function MO(Y,X){let $={};for(let Z of X)if(Z in Y)$[Z]=Y[Z];return $}function HO(Y,X){let $=a1(Y,[I1,"$id","required","properties"]),Z=MO(Y.properties,X);return R1(Z,$)}function UO(Y){let X=Y.reduce(($,Z)=>m6(Z)?[...$,A1(Z)]:$,[]);return _1(X)}function XJ(Y,X){return r1(Y)?b0(QO(Y.allOf,X)):w1(Y)?_1(GO(Y.anyOf,X)):M0(Y)?HO(Y,X):R1({})}function QX(Y,X,$){let Z=J0(X)?UO(X):X,W=l1(X)?n0(X):X,J=$0(Y),Q=$0(X);return u1(Y)?p5(Y,W,$):O8(X)?c5(Y,X,$):J&&Q?d1("Pick",[Y,Z],$):!J&&Q?d1("Pick",[Y,Z],$):J&&!Q?d1("Pick",[Y,Z],$):S({...XJ(Y,W),...$})}function zO(Y,X,$){return{[X]:QX(Y,[X],p1($))}}function DO(Y,X,$){return X.reduce((Z,W)=>{return{...Z,...zO(Y,W,$)}},{})}function AO(Y,X,$){return DO(Y,X.keys,$)}function c5(Y,X,$){let Z=AO(Y,X,$);return F1(Z)}function OO(Y,X){return d1("Partial",[d1(Y,X)])}function NO(Y){return d1("Partial",[I8(Y)])}function wO(Y){let X={};for(let $ of globalThis.Object.getOwnPropertyNames(Y))X[$]=k0(Y[$]);return X}function FO(Y){let X=a1(Y,[I1,"$id","required","properties"]),$=wO(Y.properties);return R1($,X)}function u5(Y){return Y.map((X)=>i5(X))}function i5(Y){return c8(Y)?OO(Y.target,Y.parameters):$0(Y)?NO(Y.$ref):r1(Y)?b0(u5(Y.allOf)):w1(Y)?_1(u5(Y.anyOf)):M0(Y)?FO(Y):EX(Y)?Y:CY(Y)?Y:o8(Y)?Y:A8(Y)?Y:v$(Y)?Y:l8(Y)?Y:PY(Y)?Y:y$(Y)?Y:IY(Y)?Y:R1({})}function U$(Y,X){if(u1(Y))return o5(Y,X);else return S({...i5(Y),...X})}function BO(Y,X){let $={};for(let Z of globalThis.Object.getOwnPropertyNames(Y))$[Z]=U$(Y[Z],p1(X));return $}function KO(Y,X){return BO(Y.properties,X)}function o5(Y,X){let $=KO(Y,X);return F1($)}function LO(Y,X){return d1("Required",[d1(Y,X)])}function qO(Y){return d1("Required",[I8(Y)])}function _O(Y){let X={};for(let $ of globalThis.Object.getOwnPropertyNames(Y))X[$]=a1(Y[$],[G0]);return X}function RO(Y){let X=a1(Y,[I1,"$id","required","properties"]),$=_O(Y.properties);return R1($,X)}function l5(Y){return Y.map((X)=>n5(X))}function n5(Y){return c8(Y)?LO(Y.target,Y.parameters):$0(Y)?qO(Y.$ref):r1(Y)?b0(l5(Y.allOf)):w1(Y)?_1(l5(Y.anyOf)):M0(Y)?RO(Y):EX(Y)?Y:CY(Y)?Y:o8(Y)?Y:A8(Y)?Y:v$(Y)?Y:l8(Y)?Y:PY(Y)?Y:y$(Y)?Y:IY(Y)?Y:R1({})}function z$(Y,X){if(u1(Y))return t5(Y,X);else return S({...n5(Y),...X})}function EO(Y,X){let $={};for(let Z of globalThis.Object.getOwnPropertyNames(Y))$[Z]=z$(Y[Z],X);return $}function VO(Y,X){return EO(Y.properties,X)}function t5(Y,X){let $=VO(Y,X);return F1($)}function jO(Y,X){return X.map(($)=>{return $0($)?$J(Y,$.$ref):F8(Y,$)})}function $J(Y,X){return X in Y?$0(Y[X])?$J(Y,Y[X].$ref):F8(Y,Y[X]):J1()}function SO(Y){return W$(Y[0])}function CO(Y){return ZX(Y[0],Y[1])}function PO(Y){return J$(Y[0])}function IO(Y){return U$(Y[0])}function xO(Y){return JX(Y[0],Y[1])}function TO(Y){return QX(Y[0],Y[1])}function kO(Y){return z$(Y[0])}function bO(Y,X,$){let Z=jO(Y,$);return X==="Awaited"?SO(Z):X==="Index"?CO(Z):X==="KeyOf"?PO(Z):X==="Partial"?IO(Z):X==="Omit"?xO(Z):X==="Pick"?TO(Z):X==="Required"?kO(Z):J1()}function gO(Y,X){return sX(F8(Y,X))}function fO(Y,X){return rX(F8(Y,X))}function vO(Y,X,$){return aX(n$(Y,X),F8(Y,$))}function yO(Y,X,$){return zY(n$(Y,X),F8(Y,$))}function hO(Y,X){return b0(n$(Y,X))}function dO(Y,X){return Z$(F8(Y,X))}function mO(Y,X){return R1(globalThis.Object.keys(X).reduce(($,Z)=>{return{...$,[Z]:F8(Y,X[Z])}},{}))}function pO(Y,X){let[$,Z]=[F8(Y,GZ(X)),QZ(X)],W=iX(X);return W.patternProperties[Z]=$,W}function cO(Y,X){return $0(X)?{...$J(Y,X.$ref),[I1]:X[I1]}:X}function uO(Y,X){return C8(n$(Y,X))}function iO(Y,X){return _1(n$(Y,X))}function n$(Y,X){return X.map(($)=>F8(Y,$))}function F8(Y,X){return l0(X)?S(F8(Y,a1(X,[G0])),X):lX(X)?S(F8(Y,a1(X,[m8])),X):q1(X)?S(cO(Y,X),X):p8(X)?S(gO(Y,X.items),X):RX(X)?S(fO(Y,X.items),X):c8(X)?S(bO(Y,X.target,X.parameters)):u8(X)?S(vO(Y,X.parameters,X.returns),X):i8(X)?S(yO(Y,X.parameters,X.returns),X):r1(X)?S(hO(Y,X.allOf),X):VX(X)?S(dO(Y,X.items),X):M0(X)?S(mO(Y,X.properties),X):SX(X)?S(pO(Y,X)):w8(X)?S(uO(Y,X.items||[]),X):w1(X)?S(iO(Y,X.anyOf),X):X}function oO(Y,X){return X in Y?F8(Y,Y[X]):J1()}function s5(Y){return globalThis.Object.getOwnPropertyNames(Y).reduce((X,$)=>{return{...X,[$]:oO(Y,$)}},{})}class r5{constructor(Y){let X=s5(Y),$=this.WithIdentifiers(X);this.$defs=$}Import(Y,X){let $={...this.$defs,[Y]:S(this.$defs[Y],X)};return S({[R]:"Import",$defs:$,$ref:Y})}WithIdentifiers(Y){return globalThis.Object.getOwnPropertyNames(Y).reduce((X,$)=>{return{...X,[$]:{...Y[$],$id:$}}},{})}}function a5(Y){return new r5(Y)}function e5(Y,X){return S({[R]:"Not",not:Y},X)}function Y9(Y,X){return i8(Y)?C8(Y.parameters,X):J1()}var lO=0;function X9(Y,X={}){if(Q0(X.$id))X.$id=`T${lO++}`;let $=iX(Y({[R]:"This",$ref:`${X.$id}`}));return $.$id=X.$id,S({[j8]:"Recursive",...$},X)}function $9(Y,X){let $=b1(Y)?new globalThis.RegExp(Y):Y;return S({[R]:"RegExp",type:"RegExp",source:$.source,flags:$.flags},X)}function nO(Y){return r1(Y)?Y.allOf:w1(Y)?Y.anyOf:w8(Y)?Y.items??[]:[]}function Z9(Y){return nO(Y)}function W9(Y,X){return i8(Y)?S(Y.returns,X):J1(X)}class J9{constructor(Y){this.schema=Y}Decode(Y){return new Q9(this.schema,Y)}}class Q9{constructor(Y,X){this.schema=Y,this.decode=X}EncodeTransform(Y,X){let W={Encode:(J)=>X[I1].Encode(Y(J)),Decode:(J)=>this.decode(X[I1].Decode(J))};return{...X,[I1]:W}}EncodeSchema(Y,X){let $={Decode:this.decode,Encode:Y};return{...X,[I1]:$}}Encode(Y){return q1(this.schema)?this.EncodeTransform(Y,this.schema):this.EncodeSchema(Y,this.schema)}}function G9(Y){return new J9(Y)}function MZ(Y={}){return S({[R]:Y[R]??"Unsafe"},Y)}function M9(Y){return S({[R]:"Void",type:"void"},Y)}var ZJ={};RY(ZJ,{Void:()=>M9,Uppercase:()=>h5,Unsafe:()=>MZ,Unknown:()=>n8,Union:()=>_1,Undefined:()=>e6,Uncapitalize:()=>y5,Uint8Array:()=>YZ,Tuple:()=>C8,Transform:()=>G9,TemplateLiteral:()=>o6,Symbol:()=>a6,String:()=>d0,ReturnType:()=>W9,Rest:()=>Z9,Required:()=>z$,RegExp:()=>$9,Ref:()=>I8,Recursive:()=>X9,Record:()=>JZ,ReadonlyOptional:()=>WZ,Readonly:()=>t0,Promise:()=>n6,Pick:()=>QX,Partial:()=>U$,Parameters:()=>Y9,Optional:()=>k0,Omit:()=>JX,Object:()=>R1,Number:()=>S8,Null:()=>r6,Not:()=>e5,Never:()=>J1,Module:()=>a5,Mapped:()=>X5,Lowercase:()=>v5,Literal:()=>A1,KeyOf:()=>J$,Iterator:()=>Z$,Intersect:()=>b0,Integer:()=>T5,Instantiate:()=>x5,InstanceType:()=>P5,Index:()=>ZX,Function:()=>zY,Extract:()=>H$,Extends:()=>G$,Exclude:()=>M$,Enum:()=>U5,Date:()=>s6,ConstructorParameters:()=>H5,Constructor:()=>aX,Const:()=>M5,Composite:()=>G5,Capitalize:()=>f5,Boolean:()=>i6,BigInt:()=>$$,Awaited:()=>W$,AsyncIterator:()=>rX,Array:()=>sX,Argument:()=>h7,Any:()=>$X});var x1=ZJ;function tO(Y){switch(Y.errorType){case j.ArrayContains:return"Expected array to contain at least one matching value";case j.ArrayMaxContains:return`Expected array to contain no more than ${Y.schema.maxContains} matching values`;case j.ArrayMinContains:return`Expected array to contain at least ${Y.schema.minContains} matching values`;case j.ArrayMaxItems:return`Expected array length to be less or equal to ${Y.schema.maxItems}`;case j.ArrayMinItems:return`Expected array length to be greater or equal to ${Y.schema.minItems}`;case j.ArrayUniqueItems:return"Expected array elements to be unique";case j.Array:return"Expected array";case j.AsyncIterator:return"Expected AsyncIterator";case j.BigIntExclusiveMaximum:return`Expected bigint to be less than ${Y.schema.exclusiveMaximum}`;case j.BigIntExclusiveMinimum:return`Expected bigint to be greater than ${Y.schema.exclusiveMinimum}`;case j.BigIntMaximum:return`Expected bigint to be less or equal to ${Y.schema.maximum}`;case j.BigIntMinimum:return`Expected bigint to be greater or equal to ${Y.schema.minimum}`;case j.BigIntMultipleOf:return`Expected bigint to be a multiple of ${Y.schema.multipleOf}`;case j.BigInt:return"Expected bigint";case j.Boolean:return"Expected boolean";case j.DateExclusiveMinimumTimestamp:return`Expected Date timestamp to be greater than ${Y.schema.exclusiveMinimumTimestamp}`;case j.DateExclusiveMaximumTimestamp:return`Expected Date timestamp to be less than ${Y.schema.exclusiveMaximumTimestamp}`;case j.DateMinimumTimestamp:return`Expected Date timestamp to be greater or equal to ${Y.schema.minimumTimestamp}`;case j.DateMaximumTimestamp:return`Expected Date timestamp to be less or equal to ${Y.schema.maximumTimestamp}`;case j.DateMultipleOfTimestamp:return`Expected Date timestamp to be a multiple of ${Y.schema.multipleOfTimestamp}`;case j.Date:return"Expected Date";case j.Function:return"Expected function";case j.IntegerExclusiveMaximum:return`Expected integer to be less than ${Y.schema.exclusiveMaximum}`;case j.IntegerExclusiveMinimum:return`Expected integer to be greater than ${Y.schema.exclusiveMinimum}`;case j.IntegerMaximum:return`Expected integer to be less or equal to ${Y.schema.maximum}`;case j.IntegerMinimum:return`Expected integer to be greater or equal to ${Y.schema.minimum}`;case j.IntegerMultipleOf:return`Expected integer to be a multiple of ${Y.schema.multipleOf}`;case j.Integer:return"Expected integer";case j.IntersectUnevaluatedProperties:return"Unexpected property";case j.Intersect:return"Expected all values to match";case j.Iterator:return"Expected Iterator";case j.Literal:return`Expected ${typeof Y.schema.const==="string"?`'${Y.schema.const}'`:Y.schema.const}`;case j.Never:return"Never";case j.Not:return"Value should not match";case j.Null:return"Expected null";case j.NumberExclusiveMaximum:return`Expected number to be less than ${Y.schema.exclusiveMaximum}`;case j.NumberExclusiveMinimum:return`Expected number to be greater than ${Y.schema.exclusiveMinimum}`;case j.NumberMaximum:return`Expected number to be less or equal to ${Y.schema.maximum}`;case j.NumberMinimum:return`Expected number to be greater or equal to ${Y.schema.minimum}`;case j.NumberMultipleOf:return`Expected number to be a multiple of ${Y.schema.multipleOf}`;case j.Number:return"Expected number";case j.Object:return"Expected object";case j.ObjectAdditionalProperties:return"Unexpected property";case j.ObjectMaxProperties:return`Expected object to have no more than ${Y.schema.maxProperties} properties`;case j.ObjectMinProperties:return`Expected object to have at least ${Y.schema.minProperties} properties`;case j.ObjectRequiredProperty:return"Expected required property";case j.Promise:return"Expected Promise";case j.RegExp:return"Expected string to match regular expression";case j.StringFormatUnknown:return`Unknown format '${Y.schema.format}'`;case j.StringFormat:return`Expected string to match '${Y.schema.format}' format`;case j.StringMaxLength:return`Expected string length less or equal to ${Y.schema.maxLength}`;case j.StringMinLength:return`Expected string length greater or equal to ${Y.schema.minLength}`;case j.StringPattern:return`Expected string to match '${Y.schema.pattern}'`;case j.String:return"Expected string";case j.Symbol:return"Expected symbol";case j.TupleLength:return`Expected tuple to have ${Y.schema.maxItems||0} elements`;case j.Tuple:return"Expected tuple";case j.Uint8ArrayMaxByteLength:return`Expected byte length less or equal to ${Y.schema.maxByteLength}`;case j.Uint8ArrayMinByteLength:return`Expected byte length greater or equal to ${Y.schema.minByteLength}`;case j.Uint8Array:return"Expected Uint8Array";case j.Undefined:return"Expected undefined";case j.Union:return"Expected union value";case j.Void:return"Expected void";case j.Kind:return`Expected kind '${Y.schema[R]}'`;default:return"Unknown error type"}}var sO=tO;function H9(){return sO}class U9 extends a{constructor(Y){super(`Unable to dereference schema with $id '${Y.$ref}'`);this.schema=Y}}function rO(Y,X){let $=X.find((Z)=>Z.$id===Y.$ref);if($===void 0)throw new U9(Y);return B1($,X)}function L0(Y,X){if(!N1(Y.$id)||X.some(($)=>$.$id===Y.$id))return X;return X.push(Y),X}function B1(Y,X){return Y[R]==="This"||Y[R]==="Ref"?rO(Y,X):Y}class z9 extends a{constructor(Y){super("Unable to hash value");this.value=Y}}var B8;(function(Y){Y[Y.Undefined=0]="Undefined",Y[Y.Null=1]="Null",Y[Y.Boolean=2]="Boolean",Y[Y.Number=3]="Number",Y[Y.String=4]="String",Y[Y.Object=5]="Object",Y[Y.Array=6]="Array",Y[Y.Date=7]="Date",Y[Y.Uint8Array=8]="Uint8Array",Y[Y.Symbol=9]="Symbol",Y[Y.BigInt=10]="BigInt"})(B8||(B8={}));var D$=BigInt("14695981039346656037"),[aO,eO]=[BigInt("1099511628211"),BigInt("18446744073709551616")],YN=Array.from({length:256}).map((Y,X)=>BigInt(X)),D9=new Float64Array(1),A9=new DataView(D9.buffer),O9=new Uint8Array(D9.buffer);function*XN(Y){let X=Y===0?1:Math.ceil(Math.floor(Math.log2(Y)+1)/8);for(let $=0;$<X;$++)yield Y>>8*(X-1-$)&255}function $N(Y){f0(B8.Array);for(let X of Y)A$(X)}function ZN(Y){f0(B8.Boolean),f0(Y?1:0)}function WN(Y){f0(B8.BigInt),A9.setBigInt64(0,Y);for(let X of O9)f0(X)}function JN(Y){f0(B8.Date),A$(Y.getTime())}function QN(Y){f0(B8.Null)}function GN(Y){f0(B8.Number),A9.setFloat64(0,Y);for(let X of O9)f0(X)}function MN(Y){f0(B8.Object);for(let X of globalThis.Object.getOwnPropertyNames(Y).sort())A$(X),A$(Y[X])}function HN(Y){f0(B8.String);for(let X=0;X<Y.length;X++)for(let $ of XN(Y.charCodeAt(X)))f0($)}function UN(Y){f0(B8.Symbol),A$(Y.description)}function zN(Y){f0(B8.Uint8Array);for(let X=0;X<Y.length;X++)f0(Y[X])}function DN(Y){return f0(B8.Undefined)}function A$(Y){if(Y1(Y))return $N(Y);if(MY(Y))return ZN(Y);if(j0(Y))return WN(Y);if(h0(Y))return JN(Y);if(jY(Y))return QN(Y);if(t(Y))return GN(Y);if(Q1(Y))return MN(Y);if(N1(Y))return HN(Y);if(SY(Y))return UN(Y);if(oX(Y))return zN(Y);if(c1(Y))return DN(Y);throw new z9(Y)}function f0(Y){D$=D$^YN[Y],D$=D$*aO%eO}function GX(Y){return D$=BigInt("14695981039346656037"),A$(Y),D$}class N9 extends a{constructor(Y){super("Unknown type");this.schema=Y}}function AN(Y){return Y[R]==="Any"||Y[R]==="Unknown"}function H1(Y){return Y!==void 0}function ON(Y,X,$){return!0}function NN(Y,X,$){return!0}function wN(Y,X,$){if(!Y1($))return!1;if(H1(Y.minItems)&&!($.length>=Y.minItems))return!1;if(H1(Y.maxItems)&&!($.length<=Y.maxItems))return!1;if(!$.every((J)=>q0(Y.items,X,J)))return!1;if(Y.uniqueItems===!0&&!function(){let J=new Set;for(let Q of $){let G=GX(Q);if(J.has(G))return!1;else J.add(G)}return!0}())return!1;if(!(H1(Y.contains)||t(Y.minContains)||t(Y.maxContains)))return!0;let Z=H1(Y.contains)?Y.contains:J1(),W=$.reduce((J,Q)=>q0(Z,X,Q)?J+1:J,0);if(W===0)return!1;if(t(Y.minContains)&&W<Y.minContains)return!1;if(t(Y.maxContains)&&W>Y.maxContains)return!1;return!0}function FN(Y,X,$){return v6($)}function BN(Y,X,$){if(!j0($))return!1;if(H1(Y.exclusiveMaximum)&&!($<Y.exclusiveMaximum))return!1;if(H1(Y.exclusiveMinimum)&&!($>Y.exclusiveMinimum))return!1;if(H1(Y.maximum)&&!($<=Y.maximum))return!1;if(H1(Y.minimum)&&!($>=Y.minimum))return!1;if(H1(Y.multipleOf)&&$%Y.multipleOf!==BigInt(0))return!1;return!0}function KN(Y,X,$){return MY($)}function LN(Y,X,$){return q0(Y.returns,X,$.prototype)}function qN(Y,X,$){if(!h0($))return!1;if(H1(Y.exclusiveMaximumTimestamp)&&!($.getTime()<Y.exclusiveMaximumTimestamp))return!1;if(H1(Y.exclusiveMinimumTimestamp)&&!($.getTime()>Y.exclusiveMinimumTimestamp))return!1;if(H1(Y.maximumTimestamp)&&!($.getTime()<=Y.maximumTimestamp))return!1;if(H1(Y.minimumTimestamp)&&!($.getTime()>=Y.minimumTimestamp))return!1;if(H1(Y.multipleOfTimestamp)&&$.getTime()%Y.multipleOfTimestamp!==0)return!1;return!0}function _N(Y,X,$){return eY($)}function RN(Y,X,$){let Z=globalThis.Object.values(Y.$defs),W=Y.$defs[Y.$ref];return q0(W,[...X,...Z],$)}function EN(Y,X,$){if(!d6($))return!1;if(H1(Y.exclusiveMaximum)&&!($<Y.exclusiveMaximum))return!1;if(H1(Y.exclusiveMinimum)&&!($>Y.exclusiveMinimum))return!1;if(H1(Y.maximum)&&!($<=Y.maximum))return!1;if(H1(Y.minimum)&&!($>=Y.minimum))return!1;if(H1(Y.multipleOf)&&$%Y.multipleOf!==0)return!1;return!0}function VN(Y,X,$){let Z=Y.allOf.every((W)=>q0(W,X,$));if(Y.unevaluatedProperties===!1){let W=new RegExp(kY(Y)),J=Object.getOwnPropertyNames($).every((Q)=>W.test(Q));return Z&&J}else if(l1(Y.unevaluatedProperties)){let W=new RegExp(kY(Y)),J=Object.getOwnPropertyNames($).every((Q)=>W.test(Q)||q0(Y.unevaluatedProperties,X,$[Q]));return Z&&J}else return Z}function jN(Y,X,$){return y6($)}function SN(Y,X,$){return $===Y.const}function CN(Y,X,$){return!1}function PN(Y,X,$){return!q0(Y.not,X,$)}function IN(Y,X,$){return jY($)}function xN(Y,X,$){if(!h1.IsNumberLike($))return!1;if(H1(Y.exclusiveMaximum)&&!($<Y.exclusiveMaximum))return!1;if(H1(Y.exclusiveMinimum)&&!($>Y.exclusiveMinimum))return!1;if(H1(Y.minimum)&&!($>=Y.minimum))return!1;if(H1(Y.maximum)&&!($<=Y.maximum))return!1;if(H1(Y.multipleOf)&&$%Y.multipleOf!==0)return!1;return!0}function TN(Y,X,$){if(!h1.IsObjectLike($))return!1;if(H1(Y.minProperties)&&!(Object.getOwnPropertyNames($).length>=Y.minProperties))return!1;if(H1(Y.maxProperties)&&!(Object.getOwnPropertyNames($).length<=Y.maxProperties))return!1;let Z=Object.getOwnPropertyNames(Y.properties);for(let W of Z){let J=Y.properties[W];if(Y.required&&Y.required.includes(W)){if(!q0(J,X,$[W]))return!1;if((bY(J)||AN(J))&&!(W in $))return!1}else if(h1.IsExactOptionalProperty($,W)&&!q0(J,X,$[W]))return!1}if(Y.additionalProperties===!1){let W=Object.getOwnPropertyNames($);if(Y.required&&Y.required.length===Z.length&&W.length===Z.length)return!0;else return W.every((J)=>Z.includes(J))}else if(typeof Y.additionalProperties==="object")return Object.getOwnPropertyNames($).every((J)=>Z.includes(J)||q0(Y.additionalProperties,X,$[J]));else return!0}function kN(Y,X,$){return h6($)}function bN(Y,X,$){if(!h1.IsRecordLike($))return!1;if(H1(Y.minProperties)&&!(Object.getOwnPropertyNames($).length>=Y.minProperties))return!1;if(H1(Y.maxProperties)&&!(Object.getOwnPropertyNames($).length<=Y.maxProperties))return!1;let[Z,W]=Object.entries(Y.patternProperties)[0],J=new RegExp(Z),Q=Object.entries($).every(([H,U])=>{return J.test(H)?q0(W,X,U):!0}),G=typeof Y.additionalProperties==="object"?Object.entries($).every(([H,U])=>{return!J.test(H)?q0(Y.additionalProperties,X,U):!0}):!0,M=Y.additionalProperties===!1?Object.getOwnPropertyNames($).every((H)=>{return J.test(H)}):!0;return Q&&G&&M}function gN(Y,X,$){return q0(B1(Y,X),X,$)}function fN(Y,X,$){let Z=new RegExp(Y.source,Y.flags);if(H1(Y.minLength)){if(!($.length>=Y.minLength))return!1}if(H1(Y.maxLength)){if(!($.length<=Y.maxLength))return!1}return Z.test($)}function vN(Y,X,$){if(!N1($))return!1;if(H1(Y.minLength)){if(!($.length>=Y.minLength))return!1}if(H1(Y.maxLength)){if(!($.length<=Y.maxLength))return!1}if(H1(Y.pattern)){if(!new RegExp(Y.pattern).test($))return!1}if(H1(Y.format)){if(!j1.Has(Y.format))return!1;return j1.Get(Y.format)($)}return!0}function yN(Y,X,$){return SY($)}function hN(Y,X,$){return N1($)&&new RegExp(Y.pattern).test($)}function dN(Y,X,$){return q0(B1(Y,X),X,$)}function mN(Y,X,$){if(!Y1($))return!1;if(Y.items===void 0&&$.length!==0)return!1;if($.length!==Y.maxItems)return!1;if(!Y.items)return!0;for(let Z=0;Z<Y.items.length;Z++)if(!q0(Y.items[Z],X,$[Z]))return!1;return!0}function pN(Y,X,$){return c1($)}function cN(Y,X,$){return Y.anyOf.some((Z)=>q0(Z,X,$))}function uN(Y,X,$){if(!oX($))return!1;if(H1(Y.maxByteLength)&&!($.length<=Y.maxByteLength))return!1;if(H1(Y.minByteLength)&&!($.length>=Y.minByteLength))return!1;return!0}function iN(Y,X,$){return!0}function oN(Y,X,$){return h1.IsVoidLike($)}function lN(Y,X,$){if(!H0.Has(Y[R]))return!1;return H0.Get(Y[R])(Y,$)}function q0(Y,X,$){let Z=H1(Y.$id)?L0(Y,X):X,W=Y;switch(W[R]){case"Any":return ON(W,Z,$);case"Argument":return NN(W,Z,$);case"Array":return wN(W,Z,$);case"AsyncIterator":return FN(W,Z,$);case"BigInt":return BN(W,Z,$);case"Boolean":return KN(W,Z,$);case"Constructor":return LN(W,Z,$);case"Date":return qN(W,Z,$);case"Function":return _N(W,Z,$);case"Import":return RN(W,Z,$);case"Integer":return EN(W,Z,$);case"Intersect":return VN(W,Z,$);case"Iterator":return jN(W,Z,$);case"Literal":return SN(W,Z,$);case"Never":return CN(W,Z,$);case"Not":return PN(W,Z,$);case"Null":return IN(W,Z,$);case"Number":return xN(W,Z,$);case"Object":return TN(W,Z,$);case"Promise":return kN(W,Z,$);case"Record":return bN(W,Z,$);case"Ref":return gN(W,Z,$);case"RegExp":return fN(W,Z,$);case"String":return vN(W,Z,$);case"Symbol":return yN(W,Z,$);case"TemplateLiteral":return hN(W,Z,$);case"This":return dN(W,Z,$);case"Tuple":return mN(W,Z,$);case"Undefined":return pN(W,Z,$);case"Union":return cN(W,Z,$);case"Uint8Array":return uN(W,Z,$);case"Unknown":return iN(W,Z,$);case"Void":return oN(W,Z,$);default:if(!H0.Has(W[R]))throw new N9(W);return lN(W,Z,$)}}function G1(...Y){return Y.length===3?q0(Y[0],Y[1],Y[2]):q0(Y[0],[],Y[1])}var j;(function(Y){Y[Y.ArrayContains=0]="ArrayContains",Y[Y.ArrayMaxContains=1]="ArrayMaxContains",Y[Y.ArrayMaxItems=2]="ArrayMaxItems",Y[Y.ArrayMinContains=3]="ArrayMinContains",Y[Y.ArrayMinItems=4]="ArrayMinItems",Y[Y.ArrayUniqueItems=5]="ArrayUniqueItems",Y[Y.Array=6]="Array",Y[Y.AsyncIterator=7]="AsyncIterator",Y[Y.BigIntExclusiveMaximum=8]="BigIntExclusiveMaximum",Y[Y.BigIntExclusiveMinimum=9]="BigIntExclusiveMinimum",Y[Y.BigIntMaximum=10]="BigIntMaximum",Y[Y.BigIntMinimum=11]="BigIntMinimum",Y[Y.BigIntMultipleOf=12]="BigIntMultipleOf",Y[Y.BigInt=13]="BigInt",Y[Y.Boolean=14]="Boolean",Y[Y.DateExclusiveMaximumTimestamp=15]="DateExclusiveMaximumTimestamp",Y[Y.DateExclusiveMinimumTimestamp=16]="DateExclusiveMinimumTimestamp",Y[Y.DateMaximumTimestamp=17]="DateMaximumTimestamp",Y[Y.DateMinimumTimestamp=18]="DateMinimumTimestamp",Y[Y.DateMultipleOfTimestamp=19]="DateMultipleOfTimestamp",Y[Y.Date=20]="Date",Y[Y.Function=21]="Function",Y[Y.IntegerExclusiveMaximum=22]="IntegerExclusiveMaximum",Y[Y.IntegerExclusiveMinimum=23]="IntegerExclusiveMinimum",Y[Y.IntegerMaximum=24]="IntegerMaximum",Y[Y.IntegerMinimum=25]="IntegerMinimum",Y[Y.IntegerMultipleOf=26]="IntegerMultipleOf",Y[Y.Integer=27]="Integer",Y[Y.IntersectUnevaluatedProperties=28]="IntersectUnevaluatedProperties",Y[Y.Intersect=29]="Intersect",Y[Y.Iterator=30]="Iterator",Y[Y.Kind=31]="Kind",Y[Y.Literal=32]="Literal",Y[Y.Never=33]="Never",Y[Y.Not=34]="Not",Y[Y.Null=35]="Null",Y[Y.NumberExclusiveMaximum=36]="NumberExclusiveMaximum",Y[Y.NumberExclusiveMinimum=37]="NumberExclusiveMinimum",Y[Y.NumberMaximum=38]="NumberMaximum",Y[Y.NumberMinimum=39]="NumberMinimum",Y[Y.NumberMultipleOf=40]="NumberMultipleOf",Y[Y.Number=41]="Number",Y[Y.ObjectAdditionalProperties=42]="ObjectAdditionalProperties",Y[Y.ObjectMaxProperties=43]="ObjectMaxProperties",Y[Y.ObjectMinProperties=44]="ObjectMinProperties",Y[Y.ObjectRequiredProperty=45]="ObjectRequiredProperty",Y[Y.Object=46]="Object",Y[Y.Promise=47]="Promise",Y[Y.RegExp=48]="RegExp",Y[Y.StringFormatUnknown=49]="StringFormatUnknown",Y[Y.StringFormat=50]="StringFormat",Y[Y.StringMaxLength=51]="StringMaxLength",Y[Y.StringMinLength=52]="StringMinLength",Y[Y.StringPattern=53]="StringPattern",Y[Y.String=54]="String",Y[Y.Symbol=55]="Symbol",Y[Y.TupleLength=56]="TupleLength",Y[Y.Tuple=57]="Tuple",Y[Y.Uint8ArrayMaxByteLength=58]="Uint8ArrayMaxByteLength",Y[Y.Uint8ArrayMinByteLength=59]="Uint8ArrayMinByteLength",Y[Y.Uint8Array=60]="Uint8Array",Y[Y.Undefined=61]="Undefined",Y[Y.Union=62]="Union",Y[Y.Void=63]="Void"})(j||(j={}));class w9 extends a{constructor(Y){super("Unknown type");this.schema=Y}}function gY(Y){return Y.replace(/~/g,"~0").replace(/\//g,"~1")}function U1(Y){return Y!==void 0}class xX{constructor(Y){this.iterator=Y}[Symbol.iterator](){return this.iterator}First(){let Y=this.iterator.next();return Y.done?void 0:Y.value}}function p(Y,X,$,Z,W=[]){return{type:Y,schema:X,path:$,value:Z,message:H9()({errorType:Y,path:$,schema:X,value:Z,errors:W}),errors:W}}function*nN(Y,X,$,Z){}function*tN(Y,X,$,Z){}function*sN(Y,X,$,Z){if(!Y1(Z))return yield p(j.Array,Y,$,Z);if(U1(Y.minItems)&&!(Z.length>=Y.minItems))yield p(j.ArrayMinItems,Y,$,Z);if(U1(Y.maxItems)&&!(Z.length<=Y.maxItems))yield p(j.ArrayMaxItems,Y,$,Z);for(let Q=0;Q<Z.length;Q++)yield*_0(Y.items,X,`${$}/${Q}`,Z[Q]);if(Y.uniqueItems===!0&&!function(){let Q=new Set;for(let G of Z){let M=GX(G);if(Q.has(M))return!1;else Q.add(M)}return!0}())yield p(j.ArrayUniqueItems,Y,$,Z);if(!(U1(Y.contains)||U1(Y.minContains)||U1(Y.maxContains)))return;let W=U1(Y.contains)?Y.contains:J1(),J=Z.reduce((Q,G,M)=>_0(W,X,`${$}${M}`,G).next().done===!0?Q+1:Q,0);if(J===0)yield p(j.ArrayContains,Y,$,Z);if(t(Y.minContains)&&J<Y.minContains)yield p(j.ArrayMinContains,Y,$,Z);if(t(Y.maxContains)&&J>Y.maxContains)yield p(j.ArrayMaxContains,Y,$,Z)}function*rN(Y,X,$,Z){if(!v6(Z))yield p(j.AsyncIterator,Y,$,Z)}function*aN(Y,X,$,Z){if(!j0(Z))return yield p(j.BigInt,Y,$,Z);if(U1(Y.exclusiveMaximum)&&!(Z<Y.exclusiveMaximum))yield p(j.BigIntExclusiveMaximum,Y,$,Z);if(U1(Y.exclusiveMinimum)&&!(Z>Y.exclusiveMinimum))yield p(j.BigIntExclusiveMinimum,Y,$,Z);if(U1(Y.maximum)&&!(Z<=Y.maximum))yield p(j.BigIntMaximum,Y,$,Z);if(U1(Y.minimum)&&!(Z>=Y.minimum))yield p(j.BigIntMinimum,Y,$,Z);if(U1(Y.multipleOf)&&Z%Y.multipleOf!==BigInt(0))yield p(j.BigIntMultipleOf,Y,$,Z)}function*eN(Y,X,$,Z){if(!MY(Z))yield p(j.Boolean,Y,$,Z)}function*Yw(Y,X,$,Z){yield*_0(Y.returns,X,$,Z.prototype)}function*Xw(Y,X,$,Z){if(!h0(Z))return yield p(j.Date,Y,$,Z);if(U1(Y.exclusiveMaximumTimestamp)&&!(Z.getTime()<Y.exclusiveMaximumTimestamp))yield p(j.DateExclusiveMaximumTimestamp,Y,$,Z);if(U1(Y.exclusiveMinimumTimestamp)&&!(Z.getTime()>Y.exclusiveMinimumTimestamp))yield p(j.DateExclusiveMinimumTimestamp,Y,$,Z);if(U1(Y.maximumTimestamp)&&!(Z.getTime()<=Y.maximumTimestamp))yield p(j.DateMaximumTimestamp,Y,$,Z);if(U1(Y.minimumTimestamp)&&!(Z.getTime()>=Y.minimumTimestamp))yield p(j.DateMinimumTimestamp,Y,$,Z);if(U1(Y.multipleOfTimestamp)&&Z.getTime()%Y.multipleOfTimestamp!==0)yield p(j.DateMultipleOfTimestamp,Y,$,Z)}function*$w(Y,X,$,Z){if(!eY(Z))yield p(j.Function,Y,$,Z)}function*Zw(Y,X,$,Z){let W=globalThis.Object.values(Y.$defs),J=Y.$defs[Y.$ref];yield*_0(J,[...X,...W],$,Z)}function*Ww(Y,X,$,Z){if(!d6(Z))return yield p(j.Integer,Y,$,Z);if(U1(Y.exclusiveMaximum)&&!(Z<Y.exclusiveMaximum))yield p(j.IntegerExclusiveMaximum,Y,$,Z);if(U1(Y.exclusiveMinimum)&&!(Z>Y.exclusiveMinimum))yield p(j.IntegerExclusiveMinimum,Y,$,Z);if(U1(Y.maximum)&&!(Z<=Y.maximum))yield p(j.IntegerMaximum,Y,$,Z);if(U1(Y.minimum)&&!(Z>=Y.minimum))yield p(j.IntegerMinimum,Y,$,Z);if(U1(Y.multipleOf)&&Z%Y.multipleOf!==0)yield p(j.IntegerMultipleOf,Y,$,Z)}function*Jw(Y,X,$,Z){let W=!1;for(let J of Y.allOf)for(let Q of _0(J,X,$,Z))W=!0,yield Q;if(W)return yield p(j.Intersect,Y,$,Z);if(Y.unevaluatedProperties===!1){let J=new RegExp(kY(Y));for(let Q of Object.getOwnPropertyNames(Z))if(!J.test(Q))yield p(j.IntersectUnevaluatedProperties,Y,`${$}/${Q}`,Z)}if(typeof Y.unevaluatedProperties==="object"){let J=new RegExp(kY(Y));for(let Q of Object.getOwnPropertyNames(Z))if(!J.test(Q)){let G=_0(Y.unevaluatedProperties,X,`${$}/${Q}`,Z[Q]).next();if(!G.done)yield G.value}}}function*Qw(Y,X,$,Z){if(!y6(Z))yield p(j.Iterator,Y,$,Z)}function*Gw(Y,X,$,Z){if(Z!==Y.const)yield p(j.Literal,Y,$,Z)}function*Mw(Y,X,$,Z){yield p(j.Never,Y,$,Z)}function*Hw(Y,X,$,Z){if(_0(Y.not,X,$,Z).next().done===!0)yield p(j.Not,Y,$,Z)}function*Uw(Y,X,$,Z){if(!jY(Z))yield p(j.Null,Y,$,Z)}function*zw(Y,X,$,Z){if(!h1.IsNumberLike(Z))return yield p(j.Number,Y,$,Z);if(U1(Y.exclusiveMaximum)&&!(Z<Y.exclusiveMaximum))yield p(j.NumberExclusiveMaximum,Y,$,Z);if(U1(Y.exclusiveMinimum)&&!(Z>Y.exclusiveMinimum))yield p(j.NumberExclusiveMinimum,Y,$,Z);if(U1(Y.maximum)&&!(Z<=Y.maximum))yield p(j.NumberMaximum,Y,$,Z);if(U1(Y.minimum)&&!(Z>=Y.minimum))yield p(j.NumberMinimum,Y,$,Z);if(U1(Y.multipleOf)&&Z%Y.multipleOf!==0)yield p(j.NumberMultipleOf,Y,$,Z)}function*Dw(Y,X,$,Z){if(!h1.IsObjectLike(Z))return yield p(j.Object,Y,$,Z);if(U1(Y.minProperties)&&!(Object.getOwnPropertyNames(Z).length>=Y.minProperties))yield p(j.ObjectMinProperties,Y,$,Z);if(U1(Y.maxProperties)&&!(Object.getOwnPropertyNames(Z).length<=Y.maxProperties))yield p(j.ObjectMaxProperties,Y,$,Z);let W=Array.isArray(Y.required)?Y.required:[],J=Object.getOwnPropertyNames(Y.properties),Q=Object.getOwnPropertyNames(Z);for(let G of W){if(Q.includes(G))continue;yield p(j.ObjectRequiredProperty,Y.properties[G],`${$}/${gY(G)}`,void 0)}if(Y.additionalProperties===!1){for(let G of Q)if(!J.includes(G))yield p(j.ObjectAdditionalProperties,Y,`${$}/${gY(G)}`,Z[G])}if(typeof Y.additionalProperties==="object")for(let G of Q){if(J.includes(G))continue;yield*_0(Y.additionalProperties,X,`${$}/${gY(G)}`,Z[G])}for(let G of J){let M=Y.properties[G];if(Y.required&&Y.required.includes(G)){if(yield*_0(M,X,`${$}/${gY(G)}`,Z[G]),bY(Y)&&!(G in Z))yield p(j.ObjectRequiredProperty,M,`${$}/${gY(G)}`,void 0)}else if(h1.IsExactOptionalProperty(Z,G))yield*_0(M,X,`${$}/${gY(G)}`,Z[G])}}function*Aw(Y,X,$,Z){if(!h6(Z))yield p(j.Promise,Y,$,Z)}function*Ow(Y,X,$,Z){if(!h1.IsRecordLike(Z))return yield p(j.Object,Y,$,Z);if(U1(Y.minProperties)&&!(Object.getOwnPropertyNames(Z).length>=Y.minProperties))yield p(j.ObjectMinProperties,Y,$,Z);if(U1(Y.maxProperties)&&!(Object.getOwnPropertyNames(Z).length<=Y.maxProperties))yield p(j.ObjectMaxProperties,Y,$,Z);let[W,J]=Object.entries(Y.patternProperties)[0],Q=new RegExp(W);for(let[G,M]of Object.entries(Z))if(Q.test(G))yield*_0(J,X,`${$}/${gY(G)}`,M);if(typeof Y.additionalProperties==="object"){for(let[G,M]of Object.entries(Z))if(!Q.test(G))yield*_0(Y.additionalProperties,X,`${$}/${gY(G)}`,M)}if(Y.additionalProperties===!1)for(let[G,M]of Object.entries(Z)){if(Q.test(G))continue;return yield p(j.ObjectAdditionalProperties,Y,`${$}/${gY(G)}`,M)}}function*Nw(Y,X,$,Z){yield*_0(B1(Y,X),X,$,Z)}function*ww(Y,X,$,Z){if(!N1(Z))return yield p(j.String,Y,$,Z);if(U1(Y.minLength)&&!(Z.length>=Y.minLength))yield p(j.StringMinLength,Y,$,Z);if(U1(Y.maxLength)&&!(Z.length<=Y.maxLength))yield p(j.StringMaxLength,Y,$,Z);if(!new RegExp(Y.source,Y.flags).test(Z))return yield p(j.RegExp,Y,$,Z)}function*Fw(Y,X,$,Z){if(!N1(Z))return yield p(j.String,Y,$,Z);if(U1(Y.minLength)&&!(Z.length>=Y.minLength))yield p(j.StringMinLength,Y,$,Z);if(U1(Y.maxLength)&&!(Z.length<=Y.maxLength))yield p(j.StringMaxLength,Y,$,Z);if(N1(Y.pattern)){if(!new RegExp(Y.pattern).test(Z))yield p(j.StringPattern,Y,$,Z)}if(N1(Y.format)){if(!j1.Has(Y.format))yield p(j.StringFormatUnknown,Y,$,Z);else if(!j1.Get(Y.format)(Z))yield p(j.StringFormat,Y,$,Z)}}function*Bw(Y,X,$,Z){if(!SY(Z))yield p(j.Symbol,Y,$,Z)}function*Kw(Y,X,$,Z){if(!N1(Z))return yield p(j.String,Y,$,Z);if(!new RegExp(Y.pattern).test(Z))yield p(j.StringPattern,Y,$,Z)}function*Lw(Y,X,$,Z){yield*_0(B1(Y,X),X,$,Z)}function*qw(Y,X,$,Z){if(!Y1(Z))return yield p(j.Tuple,Y,$,Z);if(Y.items===void 0&&Z.length!==0)return yield p(j.TupleLength,Y,$,Z);if(Z.length!==Y.maxItems)return yield p(j.TupleLength,Y,$,Z);if(!Y.items)return;for(let W=0;W<Y.items.length;W++)yield*_0(Y.items[W],X,`${$}/${W}`,Z[W])}function*_w(Y,X,$,Z){if(!c1(Z))yield p(j.Undefined,Y,$,Z)}function*Rw(Y,X,$,Z){if(G1(Y,X,Z))return;let W=Y.anyOf.map((J)=>new xX(_0(J,X,$,Z)));yield p(j.Union,Y,$,Z,W)}function*Ew(Y,X,$,Z){if(!oX(Z))return yield p(j.Uint8Array,Y,$,Z);if(U1(Y.maxByteLength)&&!(Z.length<=Y.maxByteLength))yield p(j.Uint8ArrayMaxByteLength,Y,$,Z);if(U1(Y.minByteLength)&&!(Z.length>=Y.minByteLength))yield p(j.Uint8ArrayMinByteLength,Y,$,Z)}function*Vw(Y,X,$,Z){}function*jw(Y,X,$,Z){if(!h1.IsVoidLike(Z))yield p(j.Void,Y,$,Z)}function*Sw(Y,X,$,Z){if(!H0.Get(Y[R])(Y,Z))yield p(j.Kind,Y,$,Z)}function*_0(Y,X,$,Z){let W=U1(Y.$id)?[...X,Y]:X,J=Y;switch(J[R]){case"Any":return yield*nN(J,W,$,Z);case"Argument":return yield*tN(J,W,$,Z);case"Array":return yield*sN(J,W,$,Z);case"AsyncIterator":return yield*rN(J,W,$,Z);case"BigInt":return yield*aN(J,W,$,Z);case"Boolean":return yield*eN(J,W,$,Z);case"Constructor":return yield*Yw(J,W,$,Z);case"Date":return yield*Xw(J,W,$,Z);case"Function":return yield*$w(J,W,$,Z);case"Import":return yield*Zw(J,W,$,Z);case"Integer":return yield*Ww(J,W,$,Z);case"Intersect":return yield*Jw(J,W,$,Z);case"Iterator":return yield*Qw(J,W,$,Z);case"Literal":return yield*Gw(J,W,$,Z);case"Never":return yield*Mw(J,W,$,Z);case"Not":return yield*Hw(J,W,$,Z);case"Null":return yield*Uw(J,W,$,Z);case"Number":return yield*zw(J,W,$,Z);case"Object":return yield*Dw(J,W,$,Z);case"Promise":return yield*Aw(J,W,$,Z);case"Record":return yield*Ow(J,W,$,Z);case"Ref":return yield*Nw(J,W,$,Z);case"RegExp":return yield*ww(J,W,$,Z);case"String":return yield*Fw(J,W,$,Z);case"Symbol":return yield*Bw(J,W,$,Z);case"TemplateLiteral":return yield*Kw(J,W,$,Z);case"This":return yield*Lw(J,W,$,Z);case"Tuple":return yield*qw(J,W,$,Z);case"Undefined":return yield*_w(J,W,$,Z);case"Union":return yield*Rw(J,W,$,Z);case"Uint8Array":return yield*Ew(J,W,$,Z);case"Unknown":return yield*Vw(J,W,$,Z);case"Void":return yield*jw(J,W,$,Z);default:if(!H0.Has(J[R]))throw new w9(Y);return yield*Sw(J,W,$,Z)}}function AY(...Y){let X=Y.length===3?_0(Y[0],Y[1],"",Y[2]):_0(Y[0],[],"",Y[1]);return new xX(X)}var Cw=function(Y,X,$,Z,W){if(Z==="m")throw new TypeError("Private method is not writable");if(Z==="a"&&!W)throw new TypeError("Private accessor was defined without a setter");if(typeof X==="function"?Y!==X||!W:!X.has(Y))throw new TypeError("Cannot write private member to an object whose class did not declare it");return Z==="a"?W.call(Y,$):W?W.value=$:X.set(Y,$),$},B9=function(Y,X,$,Z){if($==="a"&&!Z)throw new TypeError("Private accessor was defined without a getter");if(typeof X==="function"?Y!==X||!Z:!X.has(Y))throw new TypeError("Cannot read private member from an object whose class did not declare it");return $==="m"?Z:$==="a"?Z.call(Y):Z?Z.value:X.get(Y)},WJ,HZ,K9;class L9 extends a{constructor(Y){let X=Y.First();super(X===void 0?"Invalid Value":X.message);WJ.add(this),HZ.set(this,void 0),Cw(this,HZ,Y,"f"),this.error=X}Errors(){return new xX(B9(this,WJ,"m",K9).call(this))}}HZ=new WeakMap,WJ=new WeakSet,K9=function*Y(){if(this.error)yield this.error;yield*B9(this,HZ,"f")};function F9(Y,X,$){if(G1(Y,X,$))return;throw new L9(AY(Y,X,$))}function UZ(...Y){return Y.length===3?F9(Y[0],Y[1],Y[2]):F9(Y[0],[],Y[1])}function Pw(Y){let X={};for(let $ of Object.getOwnPropertyNames(Y))X[$]=K1(Y[$]);for(let $ of Object.getOwnPropertySymbols(Y))X[$]=K1(Y[$]);return X}function Iw(Y){return Y.map((X)=>K1(X))}function xw(Y){return Y.slice()}function Tw(Y){return new Map(K1([...Y.entries()]))}function kw(Y){return new Set(K1([...Y.entries()]))}function bw(Y){return new Date(Y.toISOString())}function gw(Y){return Y}function K1(Y){if(Y1(Y))return Iw(Y);if(h0(Y))return bw(Y);if(V8(Y))return xw(Y);if(m4(Y))return Tw(Y);if(p4(Y))return kw(Y);if(Q1(Y))return Pw(Y);if(D8(Y))return gw(Y);throw new Error("ValueClone: Unable to clone value")}class k8 extends a{constructor(Y,X){super(X);this.schema=Y}}function L1(Y){return eY(Y)?Y():K1(Y)}function fw(Y,X){if(e(Y,"default"))return L1(Y.default);else return{}}function vw(Y,X){return{}}function yw(Y,X){if(Y.uniqueItems===!0&&!e(Y,"default"))throw new k8(Y,"Array with the uniqueItems constraint requires a default value");else if("contains"in Y&&!e(Y,"default"))throw new k8(Y,"Array with the contains constraint requires a default value");else if("default"in Y)return L1(Y.default);else if(Y.minItems!==void 0)return Array.from({length:Y.minItems}).map(($)=>{return a0(Y.items,X)});else return[]}function hw(Y,X){if(e(Y,"default"))return L1(Y.default);else return async function*(){}()}function dw(Y,X){if(e(Y,"default"))return L1(Y.default);else return BigInt(0)}function mw(Y,X){if(e(Y,"default"))return L1(Y.default);else return!1}function pw(Y,X){if(e(Y,"default"))return L1(Y.default);else{let $=a0(Y.returns,X);if(typeof $==="object"&&!Array.isArray($))return class{constructor(){for(let[Z,W]of Object.entries($)){let J=this;J[Z]=W}}};else return class{}}}function cw(Y,X){if(e(Y,"default"))return L1(Y.default);else if(Y.minimumTimestamp!==void 0)return new Date(Y.minimumTimestamp);else return new Date}function uw(Y,X){if(e(Y,"default"))return L1(Y.default);else return()=>a0(Y.returns,X)}function iw(Y,X){let $=globalThis.Object.values(Y.$defs),Z=Y.$defs[Y.$ref];return a0(Z,[...X,...$])}function ow(Y,X){if(e(Y,"default"))return L1(Y.default);else if(Y.minimum!==void 0)return Y.minimum;else return 0}function lw(Y,X){if(e(Y,"default"))return L1(Y.default);else{let $=Y.allOf.reduce((Z,W)=>{let J=a0(W,X);return typeof J==="object"?{...Z,...J}:J},{});if(!G1(Y,X,$))throw new k8(Y,"Intersect produced invalid value. Consider using a default value.");return $}}function nw(Y,X){if(e(Y,"default"))return L1(Y.default);else return function*(){}()}function tw(Y,X){if(e(Y,"default"))return L1(Y.default);else return Y.const}function sw(Y,X){if(e(Y,"default"))return L1(Y.default);else throw new k8(Y,"Never types cannot be created. Consider using a default value.")}function rw(Y,X){if(e(Y,"default"))return L1(Y.default);else throw new k8(Y,"Not types must have a default value")}function aw(Y,X){if(e(Y,"default"))return L1(Y.default);else return null}function ew(Y,X){if(e(Y,"default"))return L1(Y.default);else if(Y.minimum!==void 0)return Y.minimum;else return 0}function YF(Y,X){if(e(Y,"default"))return L1(Y.default);else{let $=new Set(Y.required),Z={};for(let[W,J]of Object.entries(Y.properties)){if(!$.has(W))continue;Z[W]=a0(J,X)}return Z}}function XF(Y,X){if(e(Y,"default"))return L1(Y.default);else return Promise.resolve(a0(Y.item,X))}function $F(Y,X){let[$,Z]=Object.entries(Y.patternProperties)[0];if(e(Y,"default"))return L1(Y.default);else if(!($===UY||$===HY)){let W=$.slice(1,$.length-1).split("|"),J={};for(let Q of W)J[Q]=a0(Z,X);return J}else return{}}function ZF(Y,X){if(e(Y,"default"))return L1(Y.default);else return a0(B1(Y,X),X)}function WF(Y,X){if(e(Y,"default"))return L1(Y.default);else throw new k8(Y,"RegExp types cannot be created. Consider using a default value.")}function JF(Y,X){if(Y.pattern!==void 0)if(!e(Y,"default"))throw new k8(Y,"String types with patterns must specify a default value");else return L1(Y.default);else if(Y.format!==void 0)if(!e(Y,"default"))throw new k8(Y,"String types with formats must specify a default value");else return L1(Y.default);else if(e(Y,"default"))return L1(Y.default);else if(Y.minLength!==void 0)return Array.from({length:Y.minLength}).map(()=>" ").join("");else return""}function QF(Y,X){if(e(Y,"default"))return L1(Y.default);else if("value"in Y)return Symbol.for(Y.value);else return Symbol()}function GF(Y,X){if(e(Y,"default"))return L1(Y.default);if(!u6(Y))throw new k8(Y,"Can only create template literals that produce a finite variants. Consider using a default value.");return X$(Y)[0]}function MF(Y,X){if(q9++>wF)throw new k8(Y,"Cannot create recursive type as it appears possibly infinite. Consider using a default.");if(e(Y,"default"))return L1(Y.default);else return a0(B1(Y,X),X)}function HF(Y,X){if(e(Y,"default"))return L1(Y.default);if(Y.items===void 0)return[];else return Array.from({length:Y.minItems}).map(($,Z)=>a0(Y.items[Z],X))}function UF(Y,X){if(e(Y,"default"))return L1(Y.default);else return}function zF(Y,X){if(e(Y,"default"))return L1(Y.default);else if(Y.anyOf.length===0)throw new Error("ValueCreate.Union: Cannot create Union with zero variants");else return a0(Y.anyOf[0],X)}function DF(Y,X){if(e(Y,"default"))return L1(Y.default);else if(Y.minByteLength!==void 0)return new Uint8Array(Y.minByteLength);else return new Uint8Array(0)}function AF(Y,X){if(e(Y,"default"))return L1(Y.default);else return{}}function OF(Y,X){if(e(Y,"default"))return L1(Y.default);else return}function NF(Y,X){if(e(Y,"default"))return L1(Y.default);else throw new Error("User defined types must specify a default value")}function a0(Y,X){let $=L0(Y,X),Z=Y;switch(Z[R]){case"Any":return fw(Z,$);case"Argument":return vw(Z,$);case"Array":return yw(Z,$);case"AsyncIterator":return hw(Z,$);case"BigInt":return dw(Z,$);case"Boolean":return mw(Z,$);case"Constructor":return pw(Z,$);case"Date":return cw(Z,$);case"Function":return uw(Z,$);case"Import":return iw(Z,$);case"Integer":return ow(Z,$);case"Intersect":return lw(Z,$);case"Iterator":return nw(Z,$);case"Literal":return tw(Z,$);case"Never":return sw(Z,$);case"Not":return rw(Z,$);case"Null":return aw(Z,$);case"Number":return ew(Z,$);case"Object":return YF(Z,$);case"Promise":return XF(Z,$);case"Record":return $F(Z,$);case"Ref":return ZF(Z,$);case"RegExp":return WF(Z,$);case"String":return JF(Z,$);case"Symbol":return QF(Z,$);case"TemplateLiteral":return GF(Z,$);case"This":return MF(Z,$);case"Tuple":return HF(Z,$);case"Undefined":return UF(Z,$);case"Union":return zF(Z,$);case"Uint8Array":return DF(Z,$);case"Unknown":return AF(Z,$);case"Void":return OF(Z,$);default:if(!H0.Has(Z[R]))throw new k8(Z,"Unknown type");return NF(Z,$)}}var wF=512,q9=0;function b8(...Y){return q9=0,Y.length===2?a0(Y[0],Y[1]):a0(Y[0],[])}class JJ extends a{constructor(Y,X){super(X);this.schema=Y}}function FF(Y,X,$){if(Y[R]==="Object"&&typeof $==="object"&&!jY($)){let Z=Y,W=Object.getOwnPropertyNames($),J=Object.entries(Z.properties),[Q,G]=[1/J.length,J.length];return J.reduce((M,[H,U])=>{let A=U[R]==="Literal"&&U.const===$[H]?G:0,N=G1(U,X,$[H])?Q:0,O=W.includes(H)?Q:0;return M+(A+N+O)},0)}else return G1(Y,X,$)?1:0}function BF(Y,X,$){let Z=Y.anyOf.map((Q)=>B1(Q,X)),[W,J]=[Z[0],0];for(let Q of Z){let G=FF(Q,X,$);if(G>J)W=Q,J=G}return W}function KF(Y,X,$){if("default"in Y)return typeof $==="function"?Y.default:K1(Y.default);else{let Z=BF(Y,X,$);return t$(Z,X,$)}}function LF(Y,X,$){return G1(Y,X,$)?K1($):b8(Y,X)}function qF(Y,X,$){return G1(Y,X,$)?$:b8(Y,X)}function _F(Y,X,$){if(G1(Y,X,$))return K1($);let Z=Y1($)?K1($):b8(Y,X),W=t(Y.minItems)&&Z.length<Y.minItems?[...Z,...Array.from({length:Y.minItems-Z.length},()=>null)]:Z,Q=(t(Y.maxItems)&&W.length>Y.maxItems?W.slice(0,Y.maxItems):W).map((M)=>r8(Y.items,X,M));if(Y.uniqueItems!==!0)return Q;let G=[...new Set(Q)];if(!G1(Y,X,G))throw new JJ(Y,"Array cast produced invalid data due to uniqueItems constraint");return G}function RF(Y,X,$){if(G1(Y,X,$))return b8(Y,X);let Z=new Set(Y.returns.required||[]),W=function(){};for(let[J,Q]of Object.entries(Y.returns.properties)){if(!Z.has(J)&&$.prototype[J]===void 0)continue;W.prototype[J]=r8(Q,X,$.prototype[J])}return W}function EF(Y,X,$){let Z=globalThis.Object.values(Y.$defs),W=Y.$defs[Y.$ref];return r8(W,[...X,...Z],$)}function VF(Y,X,$){let Z=b8(Y,X),W=Q1(Z)&&Q1($)?{...Z,...$}:$;return G1(Y,X,W)?W:b8(Y,X)}function jF(Y,X,$){throw new JJ(Y,"Never types cannot be cast")}function SF(Y,X,$){if(G1(Y,X,$))return $;if($===null||typeof $!=="object")return b8(Y,X);let Z=new Set(Y.required||[]),W={};for(let[J,Q]of Object.entries(Y.properties)){if(!Z.has(J)&&$[J]===void 0)continue;W[J]=r8(Q,X,$[J])}if(typeof Y.additionalProperties==="object"){let J=Object.getOwnPropertyNames(Y.properties);for(let Q of Object.getOwnPropertyNames($)){if(J.includes(Q))continue;W[Q]=r8(Y.additionalProperties,X,$[Q])}}return W}function CF(Y,X,$){if(G1(Y,X,$))return K1($);if($===null||typeof $!=="object"||Array.isArray($)||$ instanceof Date)return b8(Y,X);let Z=Object.getOwnPropertyNames(Y.patternProperties)[0],W=Y.patternProperties[Z],J={};for(let[Q,G]of Object.entries($))J[Q]=r8(W,X,G);return J}function PF(Y,X,$){return r8(B1(Y,X),X,$)}function IF(Y,X,$){return r8(B1(Y,X),X,$)}function xF(Y,X,$){if(G1(Y,X,$))return K1($);if(!Y1($))return b8(Y,X);if(Y.items===void 0)return[];return Y.items.map((Z,W)=>r8(Z,X,$[W]))}function TF(Y,X,$){return G1(Y,X,$)?K1($):KF(Y,X,$)}function r8(Y,X,$){let Z=N1(Y.$id)?L0(Y,X):X,W=Y;switch(Y[R]){case"Array":return _F(W,Z,$);case"Constructor":return RF(W,Z,$);case"Import":return EF(W,Z,$);case"Intersect":return VF(W,Z,$);case"Never":return jF(W,Z,$);case"Object":return SF(W,Z,$);case"Record":return CF(W,Z,$);case"Ref":return PF(W,Z,$);case"This":return IF(W,Z,$);case"Tuple":return xF(W,Z,$);case"Union":return TF(W,Z,$);case"Date":case"Symbol":case"Uint8Array":return LF(Y,X,$);default:return qF(W,Z,$)}}function t$(...Y){return Y.length===3?r8(Y[0],Y[1],Y[2]):r8(Y[0],[],Y[1])}function kF(Y){return XX(Y)&&Y[R]!=="Unsafe"}function bF(Y,X,$){if(!Y1($))return $;return $.map((Z)=>e0(Y.items,X,Z))}function gF(Y,X,$){let Z=globalThis.Object.values(Y.$defs),W=Y.$defs[Y.$ref];return e0(W,[...X,...Z],$)}function fF(Y,X,$){let Z=Y.unevaluatedProperties,J=Y.allOf.map((G)=>e0(G,X,K1($))).reduce((G,M)=>Q1(M)?{...G,...M}:M,{});if(!Q1($)||!Q1(J)||!XX(Z))return J;let Q=s0(Y);for(let G of Object.getOwnPropertyNames($)){if(Q.includes(G))continue;if(G1(Z,X,$[G]))J[G]=e0(Z,X,$[G])}return J}function vF(Y,X,$){if(!Q1($)||Y1($))return $;let Z=Y.additionalProperties;for(let W of Object.getOwnPropertyNames($)){if(e(Y.properties,W)){$[W]=e0(Y.properties[W],X,$[W]);continue}if(XX(Z)&&G1(Z,X,$[W])){$[W]=e0(Z,X,$[W]);continue}delete $[W]}return $}function yF(Y,X,$){if(!Q1($))return $;let Z=Y.additionalProperties,W=Object.getOwnPropertyNames($),[J,Q]=Object.entries(Y.patternProperties)[0],G=new RegExp(J);for(let M of W){if(G.test(M)){$[M]=e0(Q,X,$[M]);continue}if(XX(Z)&&G1(Z,X,$[M])){$[M]=e0(Z,X,$[M]);continue}delete $[M]}return $}function hF(Y,X,$){return e0(B1(Y,X),X,$)}function dF(Y,X,$){return e0(B1(Y,X),X,$)}function mF(Y,X,$){if(!Y1($))return $;if(c1(Y.items))return[];let Z=Math.min($.length,Y.items.length);for(let W=0;W<Z;W++)$[W]=e0(Y.items[W],X,$[W]);return $.length>Z?$.slice(0,Z):$}function pF(Y,X,$){for(let Z of Y.anyOf)if(kF(Z)&&G1(Z,X,$))return e0(Z,X,$);return $}function e0(Y,X,$){let Z=N1(Y.$id)?L0(Y,X):X,W=Y;switch(W[R]){case"Array":return bF(W,Z,$);case"Import":return gF(W,Z,$);case"Intersect":return fF(W,Z,$);case"Object":return vF(W,Z,$);case"Record":return yF(W,Z,$);case"Ref":return hF(W,Z,$);case"This":return dF(W,Z,$);case"Tuple":return mF(W,Z,$);case"Union":return pF(W,Z,$);default:return $}}function zZ(...Y){return Y.length===3?e0(Y[0],Y[1],Y[2]):e0(Y[0],[],Y[1])}function DZ(Y){return N1(Y)&&!isNaN(Y)&&!isNaN(parseFloat(Y))}function cF(Y){return j0(Y)||MY(Y)||t(Y)}function s$(Y){return Y===!0||t(Y)&&Y===1||j0(Y)&&Y===BigInt("1")||N1(Y)&&(Y.toLowerCase()==="true"||Y==="1")}function r$(Y){return Y===!1||t(Y)&&(Y===0||Object.is(Y,-0))||j0(Y)&&Y===BigInt("0")||N1(Y)&&(Y.toLowerCase()==="false"||Y==="0"||Y==="-0")}function uF(Y){return N1(Y)&&/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i.test(Y)}function iF(Y){return N1(Y)&&/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)?$/i.test(Y)}function oF(Y){return N1(Y)&&/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i.test(Y)}function lF(Y){return N1(Y)&&/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)?$/i.test(Y)}function nF(Y){return N1(Y)&&/^\d\d\d\d-[0-1]\d-[0-3]\d$/i.test(Y)}function tF(Y,X){let $=R9(Y);return $===X?$:Y}function sF(Y,X){let $=E9(Y);return $===X?$:Y}function rF(Y,X){let $=_9(Y);return $===X?$:Y}function aF(Y,X){return N1(Y.const)?tF(X,Y.const):t(Y.const)?sF(X,Y.const):MY(Y.const)?rF(X,Y.const):X}function _9(Y){return s$(Y)?!0:r$(Y)?!1:Y}function eF(Y){let X=($)=>$.split(".")[0];return DZ(Y)?BigInt(X(Y)):t(Y)?BigInt(Math.trunc(Y)):r$(Y)?BigInt(0):s$(Y)?BigInt(1):Y}function R9(Y){return SY(Y)&&Y.description!==void 0?Y.description.toString():cF(Y)?Y.toString():Y}function E9(Y){return DZ(Y)?parseFloat(Y):s$(Y)?1:r$(Y)?0:Y}function YB(Y){return DZ(Y)?parseInt(Y):t(Y)?Math.trunc(Y):s$(Y)?1:r$(Y)?0:Y}function XB(Y){return N1(Y)&&Y.toLowerCase()==="null"?null:Y}function $B(Y){return N1(Y)&&Y==="undefined"?void 0:Y}function ZB(Y){return h0(Y)?Y:t(Y)?new Date(Y):s$(Y)?new Date(1):r$(Y)?new Date(0):DZ(Y)?new Date(parseInt(Y)):iF(Y)?new Date(`1970-01-01T${Y}.000Z`):uF(Y)?new Date(`1970-01-01T${Y}`):lF(Y)?new Date(`${Y}.000Z`):oF(Y)?new Date(Y):nF(Y)?new Date(`${Y}T00:00:00.000Z`):Y}function WB(Y){return Y}function JB(Y,X,$){return(Y1($)?$:[$]).map((W)=>a8(Y.items,X,W))}function QB(Y,X,$){return eF($)}function GB(Y,X,$){return _9($)}function MB(Y,X,$){return ZB($)}function HB(Y,X,$){let Z=globalThis.Object.values(Y.$defs),W=Y.$defs[Y.$ref];return a8(W,[...X,...Z],$)}function UB(Y,X,$){return YB($)}function zB(Y,X,$){return Y.allOf.reduce((Z,W)=>a8(W,X,Z),$)}function DB(Y,X,$){return aF(Y,$)}function AB(Y,X,$){return XB($)}function OB(Y,X,$){return E9($)}function NB(Y,X,$){if(!Q1($))return $;for(let Z of Object.getOwnPropertyNames(Y.properties)){if(!e($,Z))continue;$[Z]=a8(Y.properties[Z],X,$[Z])}return $}function wB(Y,X,$){if(!Q1($))return $;let W=Object.getOwnPropertyNames(Y.patternProperties)[0],J=Y.patternProperties[W];for(let[Q,G]of Object.entries($))$[Q]=a8(J,X,G);return $}function FB(Y,X,$){return a8(B1(Y,X),X,$)}function BB(Y,X,$){return R9($)}function KB(Y,X,$){return N1($)||t($)?Symbol($):$}function LB(Y,X,$){return a8(B1(Y,X),X,$)}function qB(Y,X,$){if(!(Y1($)&&!c1(Y.items)))return $;return $.map((W,J)=>{return J<Y.items.length?a8(Y.items[J],X,W):W})}function _B(Y,X,$){return $B($)}function RB(Y,X,$){for(let Z of Y.anyOf){let W=a8(Z,X,K1($));if(!G1(Z,X,W))continue;return W}return $}function a8(Y,X,$){let Z=L0(Y,X),W=Y;switch(Y[R]){case"Array":return JB(W,Z,$);case"BigInt":return QB(W,Z,$);case"Boolean":return GB(W,Z,$);case"Date":return MB(W,Z,$);case"Import":return HB(W,Z,$);case"Integer":return UB(W,Z,$);case"Intersect":return zB(W,Z,$);case"Literal":return DB(W,Z,$);case"Null":return AB(W,Z,$);case"Number":return OB(W,Z,$);case"Object":return NB(W,Z,$);case"Record":return wB(W,Z,$);case"Ref":return FB(W,Z,$);case"String":return BB(W,Z,$);case"Symbol":return KB(W,Z,$);case"This":return LB(W,Z,$);case"Tuple":return qB(W,Z,$);case"Undefined":return _B(W,Z,$);case"Union":return RB(W,Z,$);default:return WB($)}}function AZ(...Y){return Y.length===3?a8(Y[0],Y[1],Y[2]):a8(Y[0],[],Y[1])}class a$ extends a{constructor(Y,X,$){super("Unable to decode value as it does not match the expected schema");this.schema=Y,this.value=X,this.error=$}}class OZ extends a{constructor(Y,X,$,Z){super(Z instanceof Error?Z.message:"Unknown error");this.schema=Y,this.path=X,this.value=$,this.error=Z}}function n1(Y,X,$){try{return q1(Y)?Y[I1].Decode($):$}catch(Z){throw new OZ(Y,X,$,Z)}}function EB(Y,X,$,Z){return Y1(Z)?n1(Y,$,Z.map((W,J)=>e8(Y.items,X,`${$}/${J}`,W))):n1(Y,$,Z)}function VB(Y,X,$,Z){if(!Q1(Z)||D8(Z))return n1(Y,$,Z);let W=t6(Y),J=W.map((U)=>U[0]),Q={...Z};for(let[U,A]of W)if(U in Q)Q[U]=e8(A,X,`${$}/${U}`,Q[U]);if(!q1(Y.unevaluatedProperties))return n1(Y,$,Q);let G=Object.getOwnPropertyNames(Q),M=Y.unevaluatedProperties,H={...Q};for(let U of G)if(!J.includes(U))H[U]=n1(M,`${$}/${U}`,H[U]);return n1(Y,$,H)}function jB(Y,X,$,Z){let W=globalThis.Object.values(Y.$defs),J=Y.$defs[Y.$ref],Q=e8(J,[...X,...W],$,Z);return n1(Y,$,Q)}function SB(Y,X,$,Z){return n1(Y,$,e8(Y.not,X,$,Z))}function CB(Y,X,$,Z){if(!Q1(Z))return n1(Y,$,Z);let W=s0(Y),J={...Z};for(let H of W){if(!e(J,H))continue;if(c1(J[H])&&(!IY(Y.properties[H])||h1.IsExactOptionalProperty(J,H)))continue;J[H]=e8(Y.properties[H],X,`${$}/${H}`,J[H])}if(!l1(Y.additionalProperties))return n1(Y,$,J);let Q=Object.getOwnPropertyNames(J),G=Y.additionalProperties,M={...J};for(let H of Q)if(!W.includes(H))M[H]=n1(G,`${$}/${H}`,M[H]);return n1(Y,$,M)}function PB(Y,X,$,Z){if(!Q1(Z))return n1(Y,$,Z);let W=Object.getOwnPropertyNames(Y.patternProperties)[0],J=new RegExp(W),Q={...Z};for(let U of Object.getOwnPropertyNames(Z))if(J.test(U))Q[U]=e8(Y.patternProperties[W],X,`${$}/${U}`,Q[U]);if(!l1(Y.additionalProperties))return n1(Y,$,Q);let G=Object.getOwnPropertyNames(Q),M=Y.additionalProperties,H={...Q};for(let U of G)if(!J.test(U))H[U]=n1(M,`${$}/${U}`,H[U]);return n1(Y,$,H)}function IB(Y,X,$,Z){let W=B1(Y,X);return n1(Y,$,e8(W,X,$,Z))}function xB(Y,X,$,Z){let W=B1(Y,X);return n1(Y,$,e8(W,X,$,Z))}function TB(Y,X,$,Z){return Y1(Z)&&Y1(Y.items)?n1(Y,$,Y.items.map((W,J)=>e8(W,X,`${$}/${J}`,Z[J]))):n1(Y,$,Z)}function kB(Y,X,$,Z){for(let W of Y.anyOf){if(!G1(W,X,Z))continue;let J=e8(W,X,$,Z);return n1(Y,$,J)}return n1(Y,$,Z)}function e8(Y,X,$,Z){let W=L0(Y,X),J=Y;switch(Y[R]){case"Array":return EB(J,W,$,Z);case"Import":return jB(J,W,$,Z);case"Intersect":return VB(J,W,$,Z);case"Not":return SB(J,W,$,Z);case"Object":return CB(J,W,$,Z);case"Record":return PB(J,W,$,Z);case"Ref":return IB(J,W,$,Z);case"Symbol":return n1(J,$,Z);case"This":return xB(J,W,$,Z);case"Tuple":return TB(J,W,$,Z);case"Union":return kB(J,W,$,Z);default:return n1(J,$,Z)}}function O$(Y,X,$){return e8(Y,X,"",$)}class e$ extends a{constructor(Y,X,$){super("The encoded value does not match the expected schema");this.schema=Y,this.value=X,this.error=$}}class V9 extends a{constructor(Y,X,$,Z){super(`${Z instanceof Error?Z.message:"Unknown error"}`);this.schema=Y,this.path=X,this.value=$,this.error=Z}}function S0(Y,X,$){try{return q1(Y)?Y[I1].Encode($):$}catch(Z){throw new V9(Y,X,$,Z)}}function bB(Y,X,$,Z){let W=S0(Y,$,Z);return Y1(W)?W.map((J,Q)=>YY(Y.items,X,`${$}/${Q}`,J)):W}function gB(Y,X,$,Z){let W=globalThis.Object.values(Y.$defs),J=Y.$defs[Y.$ref],Q=S0(Y,$,Z);return YY(J,[...X,...W],$,Q)}function fB(Y,X,$,Z){let W=S0(Y,$,Z);if(!Q1(Z)||D8(Z))return W;let J=t6(Y),Q=J.map((A)=>A[0]),G={...W};for(let[A,N]of J)if(A in G)G[A]=YY(N,X,`${$}/${A}`,G[A]);if(!q1(Y.unevaluatedProperties))return G;let M=Object.getOwnPropertyNames(G),H=Y.unevaluatedProperties,U={...G};for(let A of M)if(!Q.includes(A))U[A]=S0(H,`${$}/${A}`,U[A]);return U}function vB(Y,X,$,Z){return S0(Y.not,$,S0(Y,$,Z))}function yB(Y,X,$,Z){let W=S0(Y,$,Z);if(!Q1(W))return W;let J=s0(Y),Q={...W};for(let U of J){if(!e(Q,U))continue;if(c1(Q[U])&&(!IY(Y.properties[U])||h1.IsExactOptionalProperty(Q,U)))continue;Q[U]=YY(Y.properties[U],X,`${$}/${U}`,Q[U])}if(!l1(Y.additionalProperties))return Q;let G=Object.getOwnPropertyNames(Q),M=Y.additionalProperties,H={...Q};for(let U of G)if(!J.includes(U))H[U]=S0(M,`${$}/${U}`,H[U]);return H}function hB(Y,X,$,Z){let W=S0(Y,$,Z);if(!Q1(Z))return W;let J=Object.getOwnPropertyNames(Y.patternProperties)[0],Q=new RegExp(J),G={...W};for(let A of Object.getOwnPropertyNames(Z))if(Q.test(A))G[A]=YY(Y.patternProperties[J],X,`${$}/${A}`,G[A]);if(!l1(Y.additionalProperties))return G;let M=Object.getOwnPropertyNames(G),H=Y.additionalProperties,U={...G};for(let A of M)if(!Q.test(A))U[A]=S0(H,`${$}/${A}`,U[A]);return U}function dB(Y,X,$,Z){let W=B1(Y,X),J=YY(W,X,$,Z);return S0(Y,$,J)}function mB(Y,X,$,Z){let W=B1(Y,X),J=YY(W,X,$,Z);return S0(Y,$,J)}function pB(Y,X,$,Z){let W=S0(Y,$,Z);return Y1(Y.items)?Y.items.map((J,Q)=>YY(J,X,`${$}/${Q}`,W[Q])):[]}function cB(Y,X,$,Z){for(let W of Y.anyOf){if(!G1(W,X,Z))continue;let J=YY(W,X,$,Z);return S0(Y,$,J)}for(let W of Y.anyOf){let J=YY(W,X,$,Z);if(!G1(Y,X,J))continue;return S0(Y,$,J)}return S0(Y,$,Z)}function YY(Y,X,$,Z){let W=L0(Y,X),J=Y;switch(Y[R]){case"Array":return bB(J,W,$,Z);case"Import":return gB(J,W,$,Z);case"Intersect":return fB(J,W,$,Z);case"Not":return vB(J,W,$,Z);case"Object":return yB(J,W,$,Z);case"Record":return hB(J,W,$,Z);case"Ref":return dB(J,W,$,Z);case"This":return mB(J,W,$,Z);case"Tuple":return pB(J,W,$,Z);case"Union":return cB(J,W,$,Z);default:return S0(J,$,Z)}}function N$(Y,X,$){return YY(Y,X,"",$)}function uB(Y,X){return q1(Y)||w0(Y.items,X)}function iB(Y,X){return q1(Y)||w0(Y.items,X)}function oB(Y,X){return q1(Y)||w0(Y.returns,X)||Y.parameters.some(($)=>w0($,X))}function lB(Y,X){return q1(Y)||w0(Y.returns,X)||Y.parameters.some(($)=>w0($,X))}function nB(Y,X){return q1(Y)||q1(Y.unevaluatedProperties)||Y.allOf.some(($)=>w0($,X))}function tB(Y,X){let $=globalThis.Object.getOwnPropertyNames(Y.$defs).reduce((W,J)=>[...W,Y.$defs[J]],[]),Z=Y.$defs[Y.$ref];return q1(Y)||w0(Z,[...$,...X])}function sB(Y,X){return q1(Y)||w0(Y.items,X)}function rB(Y,X){return q1(Y)||w0(Y.not,X)}function aB(Y,X){return q1(Y)||Object.values(Y.properties).some(($)=>w0($,X))||l1(Y.additionalProperties)&&w0(Y.additionalProperties,X)}function eB(Y,X){return q1(Y)||w0(Y.item,X)}function YK(Y,X){let $=Object.getOwnPropertyNames(Y.patternProperties)[0],Z=Y.patternProperties[$];return q1(Y)||w0(Z,X)||l1(Y.additionalProperties)&&q1(Y.additionalProperties)}function XK(Y,X){if(q1(Y))return!0;return w0(B1(Y,X),X)}function $K(Y,X){if(q1(Y))return!0;return w0(B1(Y,X),X)}function ZK(Y,X){return q1(Y)||!c1(Y.items)&&Y.items.some(($)=>w0($,X))}function WK(Y,X){return q1(Y)||Y.anyOf.some(($)=>w0($,X))}function w0(Y,X){let $=L0(Y,X),Z=Y;if(Y.$id&&QJ.has(Y.$id))return!1;if(Y.$id)QJ.add(Y.$id);switch(Y[R]){case"Array":return uB(Z,$);case"AsyncIterator":return iB(Z,$);case"Constructor":return oB(Z,$);case"Function":return lB(Z,$);case"Import":return tB(Z,$);case"Intersect":return nB(Z,$);case"Iterator":return sB(Z,$);case"Not":return rB(Z,$);case"Object":return aB(Z,$);case"Promise":return eB(Z,$);case"Record":return YK(Z,$);case"Ref":return XK(Z,$);case"This":return $K(Z,$);case"Tuple":return ZK(Z,$);case"Union":return WK(Z,$);default:return q1(Y)}}var QJ=new Set;function fY(Y,X){return QJ.clear(),w0(Y,X)}function j9(...Y){let[X,$,Z]=Y.length===3?[Y[0],Y[1],Y[2]]:[Y[0],[],Y[1]];if(!G1(X,$,Z))throw new a$(X,Z,AY(X,$,Z).First());return fY(X,$)?O$(X,$,Z):Z}function vY(Y,X){let $=e(Y,"default")?Y.default:void 0,Z=eY($)?$():K1($);return c1(X)?Z:Q1(X)&&Q1(Z)?Object.assign(Z,X):X}function GJ(Y){return XX(Y)&&"default"in Y}function JK(Y,X,$){if(Y1($)){for(let W=0;W<$.length;W++)$[W]=m0(Y.items,X,$[W]);return $}let Z=vY(Y,$);if(!Y1(Z))return Z;for(let W=0;W<Z.length;W++)Z[W]=m0(Y.items,X,Z[W]);return Z}function QK(Y,X,$){return h0($)?$:vY(Y,$)}function GK(Y,X,$){let Z=globalThis.Object.values(Y.$defs),W=Y.$defs[Y.$ref];return m0(W,[...X,...Z],$)}function MK(Y,X,$){let Z=vY(Y,$);return Y.allOf.reduce((W,J)=>{let Q=m0(J,X,Z);return Q1(Q)?{...W,...Q}:Q},{})}function HK(Y,X,$){let Z=vY(Y,$);if(!Q1(Z))return Z;let W=Object.getOwnPropertyNames(Y.properties);for(let J of W){let Q=m0(Y.properties[J],X,Z[J]);if(c1(Q))continue;Z[J]=m0(Y.properties[J],X,Z[J])}if(!GJ(Y.additionalProperties))return Z;for(let J of Object.getOwnPropertyNames(Z)){if(W.includes(J))continue;Z[J]=m0(Y.additionalProperties,X,Z[J])}return Z}function UK(Y,X,$){let Z=vY(Y,$);if(!Q1(Z))return Z;let W=Y.additionalProperties,[J,Q]=Object.entries(Y.patternProperties)[0],G=new RegExp(J);for(let M of Object.getOwnPropertyNames(Z)){if(!(G.test(M)&&GJ(Q)))continue;Z[M]=m0(Q,X,Z[M])}if(!GJ(W))return Z;for(let M of Object.getOwnPropertyNames(Z)){if(G.test(M))continue;Z[M]=m0(W,X,Z[M])}return Z}function zK(Y,X,$){return m0(B1(Y,X),X,vY(Y,$))}function DK(Y,X,$){return m0(B1(Y,X),X,$)}function AK(Y,X,$){let Z=vY(Y,$);if(!Y1(Z)||c1(Y.items))return Z;let[W,J]=[Y.items,Math.max(Y.items.length,Z.length)];for(let Q=0;Q<J;Q++)if(Q<W.length)Z[Q]=m0(W[Q],X,Z[Q]);return Z}function OK(Y,X,$){let Z=vY(Y,$);for(let W of Y.anyOf){let J=m0(W,X,K1(Z));if(G1(W,X,J))return J}return Z}function m0(Y,X,$){let Z=L0(Y,X),W=Y;switch(W[R]){case"Array":return JK(W,Z,$);case"Date":return QK(W,Z,$);case"Import":return GK(W,Z,$);case"Intersect":return MK(W,Z,$);case"Object":return HK(W,Z,$);case"Record":return UK(W,Z,$);case"Ref":return zK(W,Z,$);case"This":return DK(W,Z,$);case"Tuple":return AK(W,Z,$);case"Union":return OK(W,Z,$);default:return vY(W,$)}}function NZ(...Y){return Y.length===3?m0(Y[0],Y[1],Y[2]):m0(Y[0],[],Y[1])}var XY={};RY(XY,{ValuePointerRootSetError:()=>MJ,ValuePointerRootDeleteError:()=>HJ,Set:()=>NK,Has:()=>FK,Get:()=>BK,Format:()=>Y6,Delete:()=>wK});class MJ extends a{constructor(Y,X,$){super("Cannot set root value");this.value=Y,this.path=X,this.update=$}}class HJ extends a{constructor(Y,X){super("Cannot delete root value");this.value=Y,this.path=X}}function S9(Y){return Y.indexOf("~")===-1?Y:Y.replace(/~1/g,"/").replace(/~0/g,"~")}function*Y6(Y){if(Y==="")return;let[X,$]=[0,0];for(let Z=0;Z<Y.length;Z++)if(Y.charAt(Z)==="/")if(Z===0)X=Z+1;else $=Z,yield S9(Y.slice(X,$)),X=Z+1;else $=Z;yield S9(Y.slice(X))}function NK(Y,X,$){if(X==="")throw new MJ(Y,X,$);let[Z,W,J]=[null,Y,""];for(let Q of Y6(X)){if(W[Q]===void 0)W[Q]={};Z=W,W=W[Q],J=Q}Z[J]=$}function wK(Y,X){if(X==="")throw new HJ(Y,X);let[$,Z,W]=[null,Y,""];for(let J of Y6(X)){if(Z[J]===void 0||Z[J]===null)return;$=Z,Z=Z[J],W=J}if(Array.isArray($)){let J=parseInt(W);$.splice(J,1)}else delete $[W]}function FK(Y,X){if(X==="")return!0;let[$,Z,W]=[null,Y,""];for(let J of Y6(X)){if(Z[J]===void 0)return!1;$=Z,Z=Z[J],W=J}return Object.getOwnPropertyNames($).includes(W)}function BK(Y,X){if(X==="")return Y;let $=Y;for(let Z of Y6(X)){if($[Z]===void 0)return;$=$[Z]}return $}function KK(Y,X){if(!Q1(X))return!1;let $=[...Object.keys(Y),...Object.getOwnPropertySymbols(Y)],Z=[...Object.keys(X),...Object.getOwnPropertySymbols(X)];if($.length!==Z.length)return!1;return $.every((W)=>TX(Y[W],X[W]))}function LK(Y,X){return h0(X)&&Y.getTime()===X.getTime()}function qK(Y,X){if(!Y1(X)||Y.length!==X.length)return!1;return Y.every(($,Z)=>TX($,X[Z]))}function _K(Y,X){if(!V8(X)||Y.length!==X.length||Object.getPrototypeOf(Y).constructor.name!==Object.getPrototypeOf(X).constructor.name)return!1;return Y.every(($,Z)=>TX($,X[Z]))}function RK(Y,X){return Y===X}function TX(Y,X){if(h0(Y))return LK(Y,X);if(V8(Y))return _K(Y,X);if(Y1(Y))return qK(Y,X);if(Q1(Y))return KK(Y,X);if(D8(Y))return RK(Y,X);throw new Error("ValueEquals: Unable to compare value")}var EK=R1({type:A1("insert"),path:d0(),value:n8()}),VK=R1({type:A1("update"),path:d0(),value:n8()}),jK=R1({type:A1("delete"),path:d0()}),P9=_1([EK,VK,jK]);class UJ extends a{constructor(Y,X){super(X);this.value=Y}}function wZ(Y,X){return{type:"update",path:Y,value:X}}function I9(Y,X){return{type:"insert",path:Y,value:X}}function x9(Y){return{type:"delete",path:Y}}function C9(Y){if(globalThis.Object.getOwnPropertySymbols(Y).length>0)throw new UJ(Y,"Cannot diff objects with symbols")}function*SK(Y,X,$){if(C9(X),C9($),!gW($))return yield wZ(Y,$);let Z=globalThis.Object.getOwnPropertyNames(X),W=globalThis.Object.getOwnPropertyNames($);for(let J of W){if(e(X,J))continue;yield I9(`${Y}/${J}`,$[J])}for(let J of Z){if(!e($,J))continue;if(TX(X,$))continue;yield*FZ(`${Y}/${J}`,X[J],$[J])}for(let J of Z){if(e($,J))continue;yield x9(`${Y}/${J}`)}}function*CK(Y,X,$){if(!Y1($))return yield wZ(Y,$);for(let Z=0;Z<Math.min(X.length,$.length);Z++)yield*FZ(`${Y}/${Z}`,X[Z],$[Z]);for(let Z=0;Z<$.length;Z++){if(Z<X.length)continue;yield I9(`${Y}/${Z}`,$[Z])}for(let Z=X.length-1;Z>=0;Z--){if(Z<$.length)continue;yield x9(`${Y}/${Z}`)}}function*PK(Y,X,$){if(!V8($)||X.length!==$.length||globalThis.Object.getPrototypeOf(X).constructor.name!==globalThis.Object.getPrototypeOf($).constructor.name)return yield wZ(Y,$);for(let Z=0;Z<Math.min(X.length,$.length);Z++)yield*FZ(`${Y}/${Z}`,X[Z],$[Z])}function*IK(Y,X,$){if(X===$)return;yield wZ(Y,$)}function*FZ(Y,X,$){if(gW(X))return yield*SK(Y,X,$);if(Y1(X))return yield*CK(Y,X,$);if(V8(X))return yield*PK(Y,X,$);if(D8(X))return yield*IK(Y,X,$);throw new UJ(X,"Unable to diff value")}function T9(Y,X){return[...FZ("",Y,X)]}function xK(Y){return Y.length>0&&Y[0].path===""&&Y[0].type==="update"}function TK(Y){return Y.length===0}function k9(Y,X){if(xK(X))return K1(X[0].value);if(TK(X))return K1(Y);let $=K1(Y);for(let Z of X)switch(Z.type){case"insert":{XY.Set($,Z.path,Z.value);break}case"update":{XY.Set($,Z.path,Z.value);break}case"delete":{XY.Delete($,Z.path);break}}return $}function b9(...Y){let[X,$,Z]=Y.length===3?[Y[0],Y[1],Y[2]]:[Y[0],[],Y[1]],W=fY(X,$)?N$(X,$,Z):Z;if(!G1(X,$,W))throw new e$(X,W,AY(X,$,W).First());return W}function BZ(Y){return Q1(Y)&&!Y1(Y)}class zJ extends a{constructor(Y){super(Y)}}function kK(Y,X,$,Z){if(!BZ($))XY.Set(Y,X,K1(Z));else{let W=Object.getOwnPropertyNames($),J=Object.getOwnPropertyNames(Z);for(let Q of W)if(!J.includes(Q))delete $[Q];for(let Q of J)if(!W.includes(Q))$[Q]=null;for(let Q of J)DJ(Y,`${X}/${Q}`,$[Q],Z[Q])}}function bK(Y,X,$,Z){if(!Y1($))XY.Set(Y,X,K1(Z));else{for(let W=0;W<Z.length;W++)DJ(Y,`${X}/${W}`,$[W],Z[W]);$.splice(Z.length)}}function gK(Y,X,$,Z){if(V8($)&&$.length===Z.length)for(let W=0;W<$.length;W++)$[W]=Z[W];else XY.Set(Y,X,K1(Z))}function fK(Y,X,$,Z){if($===Z)return;XY.Set(Y,X,Z)}function DJ(Y,X,$,Z){if(Y1(Z))return bK(Y,X,$,Z);if(V8(Z))return gK(Y,X,$,Z);if(BZ(Z))return kK(Y,X,$,Z);if(D8(Z))return fK(Y,X,$,Z)}function g9(Y){return V8(Y)||D8(Y)}function vK(Y,X){return BZ(Y)&&Y1(X)||Y1(Y)&&BZ(X)}function f9(Y,X){if(g9(Y)||g9(X))throw new zJ("Only object and array types can be mutated at the root level");if(vK(Y,X))throw new zJ("Cannot assign due type mismatch of assignable values");DJ(Y,"",Y,X)}class OJ extends a{constructor(Y){super(Y)}}var AJ;(function(Y){let X=new Map([["Assert",(J,Q,G)=>{return UZ(J,Q,G),G}],["Cast",(J,Q,G)=>t$(J,Q,G)],["Clean",(J,Q,G)=>zZ(J,Q,G)],["Clone",(J,Q,G)=>K1(G)],["Convert",(J,Q,G)=>AZ(J,Q,G)],["Decode",(J,Q,G)=>fY(J,Q)?O$(J,Q,G):G],["Default",(J,Q,G)=>NZ(J,Q,G)],["Encode",(J,Q,G)=>fY(J,Q)?N$(J,Q,G):G]]);function $(J){X.delete(J)}Y.Delete=$;function Z(J,Q){X.set(J,Q)}Y.Set=Z;function W(J){return X.get(J)}Y.Get=W})(AJ||(AJ={}));var v9=["Clone","Clean","Default","Convert","Assert","Decode"];function yK(Y,X,$,Z){return Y.reduce((W,J)=>{let Q=AJ.Get(J);if(c1(Q))throw new OJ(`Unable to find Parse operation '${J}'`);return Q(X,$,W)},Z)}function y9(...Y){let[X,$,Z,W]=Y.length===4?[Y[0],Y[1],Y[2],Y[3]]:Y.length===3?Y1(Y[0])?[Y[0],Y[1],[],Y[2]]:[v9,Y[0],Y[1],Y[2]]:Y.length===2?[v9,Y[0],[],Y[1]]:(()=>{throw new OJ("Invalid Arguments")})();return yK(X,$,Z,W)}var V1={};RY(V1,{ValueErrorIterator:()=>xX,Patch:()=>k9,Parse:()=>y9,Mutate:()=>f9,Hash:()=>GX,Errors:()=>AY,Equal:()=>TX,Encode:()=>b9,Edit:()=>P9,Diff:()=>T9,Default:()=>NZ,Decode:()=>j9,Create:()=>b8,Convert:()=>AZ,Clone:()=>K1,Clean:()=>zZ,Check:()=>G1,Cast:()=>t$,Assert:()=>UZ});class h9{constructor(Y,X,$,Z){this.schema=Y,this.references=X,this.checkFunc=$,this.code=Z,this.hasTransform=fY(Y,X)}Code(){return this.code}Schema(){return this.schema}References(){return this.references}Errors(Y){return AY(this.schema,this.references,Y)}Check(Y){return this.checkFunc(Y)}Decode(Y){if(!this.checkFunc(Y))throw new a$(this.schema,Y,this.Errors(Y).First());return this.hasTransform?O$(this.schema,this.references,Y):Y}Encode(Y){let X=this.hasTransform?N$(this.schema,this.references,Y):Y;if(!this.checkFunc(X))throw new e$(this.schema,Y,this.Errors(Y).First());return X}}var yY;(function(Y){function X(J){return J===36}Y.DollarSign=X;function $(J){return J===95}Y.IsUnderscore=$;function Z(J){return J>=65&&J<=90||J>=97&&J<=122}Y.IsAlpha=Z;function W(J){return J>=48&&J<=57}Y.IsNumeric=W})(yY||(yY={}));var KZ;(function(Y){function X(J){if(J.length===0)return!1;return yY.IsNumeric(J.charCodeAt(0))}function $(J){if(X(J))return!1;for(let Q=0;Q<J.length;Q++){let G=J.charCodeAt(Q);if(!(yY.IsAlpha(G)||yY.IsNumeric(G)||yY.DollarSign(G)||yY.IsUnderscore(G)))return!1}return!0}function Z(J){return J.replace(/'/g,"\\'")}function W(J,Q){return $(Q)?`${J}.${Q}`:`${J}['${Z(Q)}']`}Y.Encode=W})(KZ||(KZ={}));var NJ;(function(Y){function X($){let Z=[];for(let W=0;W<$.length;W++){let J=$.charCodeAt(W);if(yY.IsNumeric(J)||yY.IsAlpha(J))Z.push($.charAt(W));else Z.push(`_${J}_`)}return Z.join("").replace(/__/g,"_")}Y.Encode=X})(NJ||(NJ={}));var wJ;(function(Y){function X($){return $.replace(/'/g,"\\'")}Y.Escape=X})(wJ||(wJ={}));class d9 extends a{constructor(Y){super("Unknown type");this.schema=Y}}class FJ extends a{constructor(Y){super("Preflight validation check failed to guard for the given schema");this.schema=Y}}var kX;(function(Y){function X(Q,G,M){return h1.ExactOptionalPropertyTypes?`('${G}' in ${Q} ? ${M} : true)`:`(${KZ.Encode(Q,G)} !== undefined ? ${M} : true)`}Y.IsExactOptionalProperty=X;function $(Q){return!h1.AllowArrayObject?`(typeof ${Q} === 'object' && ${Q} !== null && !Array.isArray(${Q}))`:`(typeof ${Q} === 'object' && ${Q} !== null)`}Y.IsObjectLike=$;function Z(Q){return!h1.AllowArrayObject?`(typeof ${Q} === 'object' && ${Q} !== null && !Array.isArray(${Q}) && !(${Q} instanceof Date) && !(${Q} instanceof Uint8Array))`:`(typeof ${Q} === 'object' && ${Q} !== null && !(${Q} instanceof Date) && !(${Q} instanceof Uint8Array))`}Y.IsRecordLike=Z;function W(Q){return h1.AllowNaN?`typeof ${Q} === 'number'`:`Number.isFinite(${Q})`}Y.IsNumberLike=W;function J(Q){return h1.AllowNullVoid?`(${Q} === undefined || ${Q} === null)`:`${Q} === undefined`}Y.IsVoidLike=J})(kX||(kX={}));var OY;(function(Y){function X(D){return D[R]==="Any"||D[R]==="Unknown"}function*$(D,E,w){yield"true"}function*Z(D,E,w){yield"true"}function*W(D,E,w){yield`Array.isArray(${w})`;let[y,f]=[E8("value","any"),E8("acc","number")];if(t(D.maxItems))yield`${w}.length <= ${D.maxItems}`;if(t(D.minItems))yield`${w}.length >= ${D.minItems}`;let h=D0(D.items,E,"value");if(yield`${w}.every((${y}) => ${h})`,i1(D.contains)||t(D.minContains)||t(D.maxContains)){let l=i1(D.contains)?D.contains:J1(),k1=D0(l,E,"value"),x0=t(D.minContains)?[`(count >= ${D.minContains})`]:[],V0=t(D.maxContains)?[`(count <= ${D.maxContains})`]:[],U8=`const count = value.reduce((${f}, ${y}) => ${k1} ? acc + 1 : acc, 0)`,_Y=["(count > 0)",...x0,...V0].join(" && ");yield`((${y}) => { ${U8}; return ${_Y}})(${w})`}if(D.uniqueItems===!0)yield`((${y}) => { const set = new Set(); for(const element of value) { const hashed = hash(element); if(set.has(hashed)) { return false } else { set.add(hashed) } } return true } )(${w})`}function*J(D,E,w){yield`(typeof value === 'object' && Symbol.asyncIterator in ${w})`}function*Q(D,E,w){if(yield`(typeof ${w} === 'bigint')`,j0(D.exclusiveMaximum))yield`${w} < BigInt(${D.exclusiveMaximum})`;if(j0(D.exclusiveMinimum))yield`${w} > BigInt(${D.exclusiveMinimum})`;if(j0(D.maximum))yield`${w} <= BigInt(${D.maximum})`;if(j0(D.minimum))yield`${w} >= BigInt(${D.minimum})`;if(j0(D.multipleOf))yield`(${w} % BigInt(${D.multipleOf})) === 0`}function*G(D,E,w){yield`(typeof ${w} === 'boolean')`}function*M(D,E,w){yield*GY(D.returns,E,`${w}.prototype`)}function*H(D,E,w){if(yield`(${w} instanceof Date) && Number.isFinite(${w}.getTime())`,t(D.exclusiveMaximumTimestamp))yield`${w}.getTime() < ${D.exclusiveMaximumTimestamp}`;if(t(D.exclusiveMinimumTimestamp))yield`${w}.getTime() > ${D.exclusiveMinimumTimestamp}`;if(t(D.maximumTimestamp))yield`${w}.getTime() <= ${D.maximumTimestamp}`;if(t(D.minimumTimestamp))yield`${w}.getTime() >= ${D.minimumTimestamp}`;if(t(D.multipleOfTimestamp))yield`(${w}.getTime() % ${D.multipleOfTimestamp}) === 0`}function*U(D,E,w){yield`(typeof ${w} === 'function')`}function*A(D,E,w){let y=globalThis.Object.getOwnPropertyNames(D.$defs).reduce((f,h)=>{return[...f,D.$defs[h]]},[]);yield*GY(I8(D.$ref),[...E,...y],w)}function*N(D,E,w){if(yield`Number.isInteger(${w})`,t(D.exclusiveMaximum))yield`${w} < ${D.exclusiveMaximum}`;if(t(D.exclusiveMinimum))yield`${w} > ${D.exclusiveMinimum}`;if(t(D.maximum))yield`${w} <= ${D.maximum}`;if(t(D.minimum))yield`${w} >= ${D.minimum}`;if(t(D.multipleOf))yield`(${w} % ${D.multipleOf}) === 0`}function*O(D,E,w){let y=D.allOf.map((f)=>D0(f,E,w)).join(" && ");if(D.unevaluatedProperties===!1){let f=h8(`${new RegExp(kY(D))};`),h=`Object.getOwnPropertyNames(${w}).every(key => ${f}.test(key))`;yield`(${y} && ${h})`}else if(i1(D.unevaluatedProperties)){let f=h8(`${new RegExp(kY(D))};`),h=`Object.getOwnPropertyNames(${w}).every(key => ${f}.test(key) || ${D0(D.unevaluatedProperties,E,`${w}[key]`)})`;yield`(${y} && ${h})`}else yield`(${y})`}function*z(D,E,w){yield`(typeof value === 'object' && Symbol.iterator in ${w})`}function*L(D,E,w){if(typeof D.const==="number"||typeof D.const==="boolean")yield`(${w} === ${D.const})`;else yield`(${w} === '${wJ.Escape(D.const)}')`}function*F(D,E,w){yield"false"}function*g(D,E,w){yield`(!${D0(D.not,E,w)})`}function*V(D,E,w){yield`(${w} === null)`}function*v(D,E,w){if(yield kX.IsNumberLike(w),t(D.exclusiveMaximum))yield`${w} < ${D.exclusiveMaximum}`;if(t(D.exclusiveMinimum))yield`${w} > ${D.exclusiveMinimum}`;if(t(D.maximum))yield`${w} <= ${D.maximum}`;if(t(D.minimum))yield`${w} >= ${D.minimum}`;if(t(D.multipleOf))yield`(${w} % ${D.multipleOf}) === 0`}function*s(D,E,w){if(yield kX.IsObjectLike(w),t(D.minProperties))yield`Object.getOwnPropertyNames(${w}).length >= ${D.minProperties}`;if(t(D.maxProperties))yield`Object.getOwnPropertyNames(${w}).length <= ${D.maxProperties}`;let y=Object.getOwnPropertyNames(D.properties);for(let f of y){let h=KZ.Encode(w,f),l=D.properties[f];if(D.required&&D.required.includes(f)){if(yield*GY(l,E,h),bY(l)||X(l))yield`('${f}' in ${w})`}else{let k1=D0(l,E,h);yield kX.IsExactOptionalProperty(w,f,k1)}}if(D.additionalProperties===!1)if(D.required&&D.required.length===y.length)yield`Object.getOwnPropertyNames(${w}).length === ${y.length}`;else{let f=`[${y.map((h)=>`'${h}'`).join(", ")}]`;yield`Object.getOwnPropertyNames(${w}).every(key => ${f}.includes(key))`}if(typeof D.additionalProperties==="object"){let f=D0(D.additionalProperties,E,`${w}[key]`),h=`[${y.map((l)=>`'${l}'`).join(", ")}]`;yield`(Object.getOwnPropertyNames(${w}).every(key => ${h}.includes(key) || ${f}))`}}function*o(D,E,w){yield`${w} instanceof Promise`}function*x(D,E,w){if(yield kX.IsRecordLike(w),t(D.minProperties))yield`Object.getOwnPropertyNames(${w}).length >= ${D.minProperties}`;if(t(D.maxProperties))yield`Object.getOwnPropertyNames(${w}).length <= ${D.maxProperties}`;let[y,f]=Object.entries(D.patternProperties)[0],h=h8(`${new RegExp(y)}`),l=D0(f,E,"value"),k1=i1(D.additionalProperties)?D0(D.additionalProperties,E,w):D.additionalProperties===!1?"false":"true",x0=`(${h}.test(key) ? ${l} : ${k1})`;yield`(Object.entries(${w}).every(([key, value]) => ${x0}))`}function*T(D,E,w){let y=B1(D,E);if(X0.functions.has(D.$ref))return yield`${E0(D.$ref)}(${w})`;yield*GY(y,E,w)}function*P(D,E,w){let y=h8(`${new RegExp(D.source,D.flags)};`);if(yield`(typeof ${w} === 'string')`,t(D.maxLength))yield`${w}.length <= ${D.maxLength}`;if(t(D.minLength))yield`${w}.length >= ${D.minLength}`;yield`${y}.test(${w})`}function*k(D,E,w){if(yield`(typeof ${w} === 'string')`,t(D.maxLength))yield`${w}.length <= ${D.maxLength}`;if(t(D.minLength))yield`${w}.length >= ${D.minLength}`;if(D.pattern!==void 0)yield`${h8(`${new RegExp(D.pattern)};`)}.test(${w})`;if(D.format!==void 0)yield`format('${D.format}', ${w})`}function*r(D,E,w){yield`(typeof ${w} === 'symbol')`}function*n(D,E,w){yield`(typeof ${w} === 'string')`,yield`${h8(`${new RegExp(D.pattern)};`)}.test(${w})`}function*X1(D,E,w){yield`${E0(D.$ref)}(${w})`}function*W1(D,E,w){if(yield`Array.isArray(${w})`,D.items===void 0)return yield`${w}.length === 0`;yield`(${w}.length === ${D.maxItems})`;for(let y=0;y<D.items.length;y++)yield`${D0(D.items[y],E,`${w}[${y}]`)}`}function*$1(D,E,w){yield`${w} === undefined`}function*H8(D,E,w){yield`(${D.anyOf.map((f)=>D0(f,E,w)).join(" || ")})`}function*I0(D,E,w){if(yield`${w} instanceof Uint8Array`,t(D.maxByteLength))yield`(${w}.length <= ${D.maxByteLength})`;if(t(D.minByteLength))yield`(${w}.length >= ${D.minByteLength})`}function*y8(D,E,w){yield"true"}function*qY(D,E,w){yield kX.IsVoidLike(w)}function*R8(D,E,w){let y=X0.instances.size;X0.instances.set(y,D),yield`kind('${D[R]}', ${y}, ${w})`}function*GY(D,E,w,y=!0){let f=N1(D.$id)?[...E,D]:E,h=D;if(y&&N1(D.$id)){let l=E0(D.$id);if(X0.functions.has(l))return yield`${l}(${w})`;else{X0.functions.set(l,"<deferred>");let k1=y0(l,D,E,"value",!1);return X0.functions.set(l,k1),yield`${l}(${w})`}}switch(h[R]){case"Any":return yield*$(h,f,w);case"Argument":return yield*Z(h,f,w);case"Array":return yield*W(h,f,w);case"AsyncIterator":return yield*J(h,f,w);case"BigInt":return yield*Q(h,f,w);case"Boolean":return yield*G(h,f,w);case"Constructor":return yield*M(h,f,w);case"Date":return yield*H(h,f,w);case"Function":return yield*U(h,f,w);case"Import":return yield*A(h,f,w);case"Integer":return yield*N(h,f,w);case"Intersect":return yield*O(h,f,w);case"Iterator":return yield*z(h,f,w);case"Literal":return yield*L(h,f,w);case"Never":return yield*F(h,f,w);case"Not":return yield*g(h,f,w);case"Null":return yield*V(h,f,w);case"Number":return yield*v(h,f,w);case"Object":return yield*s(h,f,w);case"Promise":return yield*o(h,f,w);case"Record":return yield*x(h,f,w);case"Ref":return yield*T(h,f,w);case"RegExp":return yield*P(h,f,w);case"String":return yield*k(h,f,w);case"Symbol":return yield*r(h,f,w);case"TemplateLiteral":return yield*n(h,f,w);case"This":return yield*X1(h,f,w);case"Tuple":return yield*W1(h,f,w);case"Undefined":return yield*$1(h,f,w);case"Union":return yield*H8(h,f,w);case"Uint8Array":return yield*I0(h,f,w);case"Unknown":return yield*y8(h,f,w);case"Void":return yield*qY(h,f,w);default:if(!H0.Has(h[R]))throw new d9(D);return yield*R8(h,f,w)}}let X0={language:"javascript",functions:new Map,variables:new Map,instances:new Map};function D0(D,E,w,y=!0){return`(${[...GY(D,E,w,y)].join(" && ")})`}function E0(D){return`check_${NJ.Encode(D)}`}function h8(D){let E=`local_${X0.variables.size}`;return X0.variables.set(E,`const ${E} = ${D}`),E}function y0(D,E,w,y,f=!0){let[h,l]=[`
|
|
`,(U8)=>"".padStart(U8," ")],k1=E8("value","any"),x0=aY("boolean"),V0=[...GY(E,w,y,f)].map((U8)=>`${l(4)}${U8}`).join(` &&${h}`);return`function ${D}(${k1})${x0} {${h}${l(2)}return (${h}${V0}${h}${l(2)})
|
|
}`}function E8(D,E){let w=X0.language==="typescript"?`: ${E}`:"";return`${D}${w}`}function aY(D){return X0.language==="typescript"?`: ${D}`:""}function d8(D,E,w){let y=y0("check",D,E,"value"),f=E8("value","any"),h=aY("boolean"),l=[...X0.functions.values()],k1=[...X0.variables.values()],x0=N1(D.$id)?`return function check(${f})${h} {
|
|
return ${E0(D.$id)}(value)
|
|
}`:`return ${y}`;return[...k1,...l,x0].join(`
|
|
`)}function m(...D){let E={language:"javascript"},[w,y,f]=D.length===2&&Y1(D[1])?[D[0],D[1],E]:D.length===2&&!Y1(D[1])?[D[0],[],D[1]]:D.length===3?[D[0],D[1],D[2]]:D.length===1?[D[0],[],E]:[null,[],E];if(X0.language=f.language,X0.variables.clear(),X0.functions.clear(),X0.instances.clear(),!i1(w))throw new FJ(w);for(let h of y)if(!i1(h))throw new FJ(h);return d8(w,y,f)}Y.Code=m;function b(D,E=[]){let w=m(D,E,{language:"javascript"}),y=globalThis.Function("kind","format","hash",w),f=new Map(X0.instances);function h(V0,U8,_Y){if(!H0.Has(V0)||!f.has(U8))return!1;let aH=H0.Get(V0),eH=f.get(U8);return aH(eH,_Y)}function l(V0,U8){if(!j1.Has(V0))return!1;return j1.Get(V0)(U8)}function k1(V0){return GX(V0)}let x0=y(h,l,k1);return new h9(D,E,x0,w)}Y.Compile=b})(OY||(OY={}));var Zq=Object.create,{getPrototypeOf:Wq,defineProperty:uQ,getOwnPropertyNames:Jq}=Object,Qq=Object.prototype.hasOwnProperty,tZ=(Y,X,$)=>{$=Y!=null?Zq(Wq(Y)):{};let Z=X||!Y||!Y.__esModule?uQ($,"default",{value:Y,enumerable:!0}):$;for(let W of Jq(Y))if(!Qq.call(Z,W))uQ(Z,W,{get:()=>Y[W],enumerable:!0});return Z},L2=(Y,X)=>()=>(X||Y((X={exports:{}}).exports,X),X.exports);var Gq=L2((Y)=>{Object.defineProperty(Y,"__esModule",{value:!0}),Y.parse=G,Y.serialize=U;var X=/^[\u0021-\u003A\u003C\u003E-\u007E]+$/,$=/^[\u0021-\u003A\u003C-\u007E]*$/,Z=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,W=/^[\u0020-\u003A\u003D-\u007E]*$/,J=Object.prototype.toString,Q=(()=>{let O=function(){};return O.prototype=Object.create(null),O})();function G(O,z){let L=new Q,F=O.length;if(F<2)return L;let g=z?.decode||A,V=0;do{let v=O.indexOf("=",V);if(v===-1)break;let s=O.indexOf(";",V),o=s===-1?F:s;if(v>o){V=O.lastIndexOf(";",v-1)+1;continue}let x=M(O,V,v),T=H(O,v,x),P=O.slice(x,T);if(L[P]===void 0){let k=M(O,v+1,o),r=H(O,o,k),n=g(O.slice(k,r));L[P]=n}V=o+1}while(V<F);return L}function M(O,z,L){do{let F=O.charCodeAt(z);if(F!==32&&F!==9)return z}while(++z<L);return L}function H(O,z,L){while(z>L){let F=O.charCodeAt(--z);if(F!==32&&F!==9)return z+1}return L}function U(O,z,L){let F=L?.encode||encodeURIComponent;if(!X.test(O))throw new TypeError(`argument name is invalid: ${O}`);let g=F(z);if(!$.test(g))throw new TypeError(`argument val is invalid: ${z}`);let V=O+"="+g;if(!L)return V;if(L.maxAge!==void 0){if(!Number.isInteger(L.maxAge))throw new TypeError(`option maxAge is invalid: ${L.maxAge}`);V+="; Max-Age="+L.maxAge}if(L.domain){if(!Z.test(L.domain))throw new TypeError(`option domain is invalid: ${L.domain}`);V+="; Domain="+L.domain}if(L.path){if(!W.test(L.path))throw new TypeError(`option path is invalid: ${L.path}`);V+="; Path="+L.path}if(L.expires){if(!N(L.expires)||!Number.isFinite(L.expires.valueOf()))throw new TypeError(`option expires is invalid: ${L.expires}`);V+="; Expires="+L.expires.toUTCString()}if(L.httpOnly)V+="; HttpOnly";if(L.secure)V+="; Secure";if(L.partitioned)V+="; Partitioned";if(L.priority)switch(typeof L.priority==="string"?L.priority.toLowerCase():void 0){case"low":V+="; Priority=Low";break;case"medium":V+="; Priority=Medium";break;case"high":V+="; Priority=High";break;default:throw new TypeError(`option priority is invalid: ${L.priority}`)}if(L.sameSite)switch(typeof L.sameSite==="string"?L.sameSite.toLowerCase():L.sameSite){case!0:case"strict":V+="; SameSite=Strict";break;case"lax":V+="; SameSite=Lax";break;case"none":V+="; SameSite=None";break;default:throw new TypeError(`option sameSite is invalid: ${L.sameSite}`)}return V}function A(O){if(O.indexOf("%")===-1)return O;try{return decodeURIComponent(O)}catch(z){return O}}function N(O){return J.call(O)==="[object Date]"}}),eJ=L2((Y,X)=>{var $=12,Z=0,W=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,10,9,9,9,11,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,24,36,48,60,72,84,96,0,12,12,12,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,24,24,24,0,0,0,0,0,0,0,0,0,24,24,0,0,0,0,0,0,0,0,0,0,48,48,48,0,0,0,0,0,0,0,0,0,0,48,48,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,127,63,63,63,0,31,15,15,15,7,7,7];function J(M){var H=M.indexOf("%");if(H===-1)return M;var U=M.length,A="",N=0,O=0,z=H,L=$;while(H>-1&&H<U){var F=G(M[H+1],4),g=G(M[H+2],0),V=F|g,v=W[V];if(L=W[256+L+v],O=O<<6|V&W[364+v],L===$)A+=M.slice(N,z),A+=O<=65535?String.fromCharCode(O):String.fromCharCode(55232+(O>>10),56320+(O&1023)),O=0,N=H+3,H=z=M.indexOf("%",N);else if(L===Z)return null;else{if(H+=3,H<U&&M.charCodeAt(H)===37)continue;return null}}return A+M.slice(N)}var Q={"0":0,"1":1,"2":2,"3":3,"4":4,"5":5,"6":6,"7":7,"8":8,"9":9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};function G(M,H){var U=Q[M];return U===void 0?255:U<<H}X.exports=J}),_$=(Y,X)=>{let $=X?.length?{}:null;if($)for(let Z of X)$[Z.part.charCodeAt(0)]=Z;return{part:Y,store:null,inert:$,params:null,wildcardStore:null}},iQ=(Y,X)=>({...Y,part:X}),oQ=(Y)=>({name:Y,store:null,inert:null});class j${config;root={};history=[];deferred=[];constructor(Y={}){if(this.config=Y,Y.lazy)this.find=this.lazyFind}static regex={static:/:.+?(?=\/|$)/,params:/:.+?(?=\/|$)/g,optionalParams:/:.+?\?(?=\/|$)/g};lazyFind=(Y,X)=>{if(!this.config.lazy)return this.find;return this.build(),this.find(Y,X)};build(){if(!this.config.lazy)return;for(let[Y,X,$]of this.deferred)this.add(Y,X,$,{lazy:!1,ignoreHistory:!0});this.deferred=[],this.find=(Y,X)=>{let $=this.root[Y];if(!$)return null;return yZ(X,X.length,$,0)}}add(Y,X,$,{ignoreError:Z=!1,ignoreHistory:W=!1,lazy:J=this.config.lazy}={}){if(J)return this.find=this.lazyFind,this.deferred.push([Y,X,$]),$;if(typeof X!=="string")throw new TypeError("Route path must be a string");if(X==="")X="/";else if(X[0]!=="/")X=`/${X}`;let Q=X[X.length-1]==="*",G=X.match(j$.regex.optionalParams);if(G){let N=X.replaceAll("?","");this.add(Y,N,$,{ignoreError:Z,ignoreHistory:W,lazy:J});for(let O=0;O<G.length;O++){let z=X.replace("/"+G[O],"");this.add(Y,z,$,{ignoreError:!0,ignoreHistory:W,lazy:J})}return $}if(G)X=X.replaceAll("?","");if(this.history.find(([N,O,z])=>N===Y&&O===X))return $;if(Q||G&&X.charCodeAt(X.length-1)===63)X=X.slice(0,-1);if(!W)this.history.push([Y,X,$]);let M=X.split(j$.regex.static),H=X.match(j$.regex.params)||[];if(M[M.length-1]==="")M.pop();let U;if(!this.root[Y])U=this.root[Y]=_$("/");else U=this.root[Y];let A=0;for(let N=0;N<M.length;++N){let O=M[N];if(N>0){let z=H[A++].slice(1);if(U.params===null)U.params=oQ(z);else if(U.params.name!==z)if(Z)return $;else throw new Error(`Cannot create route "${X}" with parameter "${z}" because a route already exists with a different parameter name ("${U.params.name}") in the same location`);let L=U.params;if(L.inert===null){U=L.inert=_$(O);continue}U=L.inert}for(let z=0;;){if(z===O.length){if(z<U.part.length){let L=iQ(U,U.part.slice(z));Object.assign(U,_$(O,[L]))}break}if(z===U.part.length){if(U.inert===null)U.inert={};let L=U.inert[O.charCodeAt(z)];if(L){U=L,O=O.slice(z),z=0;continue}let F=_$(O.slice(z));U.inert[O.charCodeAt(z)]=F,U=F;break}if(O[z]!==U.part[z]){let L=iQ(U,U.part.slice(z)),F=_$(O.slice(z));Object.assign(U,_$(U.part.slice(0,z),[L,F])),U=F;break}++z}}if(A<H.length){let N=H[A].slice(1);if(U.params===null)U.params=oQ(N);else if(U.params.name!==N)if(Z)return $;else throw new Error(`Cannot create route "${X}" with parameter "${N}" because a route already exists with a different parameter name ("${U.params.name}") in the same location`);if(U.params.store===null)U.params.store=$;return U.params.store}if(Q){if(U.wildcardStore===null)U.wildcardStore=$;return U.wildcardStore}if(U.store===null)U.store=$;return U.store}find(Y,X){let $=this.root[Y];if(!$)return null;return yZ(X,X.length,$,0)}}var yZ=(Y,X,$,Z)=>{let W=$.part,J=W.length,Q=Z+J;if(J>1){if(Q>X)return null;if(J<15){for(let G=1,M=Z+1;G<J;++G,++M)if(W.charCodeAt(G)!==Y.charCodeAt(M))return null}else if(Y.slice(Z,Q)!==W)return null}if(Q===X){if($.store!==null)return{store:$.store,params:{}};if($.wildcardStore!==null)return{store:$.wildcardStore,params:{"*":""}};return null}if($.inert!==null){let G=$.inert[Y.charCodeAt(Q)];if(G!==void 0){let M=yZ(Y,X,G,Q);if(M!==null)return M}}if($.params!==null){let{store:G,name:M,inert:H}=$.params,U=Y.indexOf("/",Q);if(U!==Q){if(U===-1||U>=X){if(G!==null){let A={};return A[M]=Y.substring(Q,X),{store:G,params:A}}}else if(H!==null){let A=yZ(Y,X,H,U);if(A!==null)return A.params[M]=Y.substring(Q,U),A}}}if($.wildcardStore!==null)return{store:$.wildcardStore,params:{"*":Y.substring(Q,X)}};return null},Y4={date:q2,time:oJ(!0),"date-time":lQ(!0),"iso-time":oJ(!1),"iso-date-time":lQ(!1),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:Nq,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:_q,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:wq,int32:{type:"number",validate:Kq},int64:{type:"number",validate:Lq},float:{type:"number",validate:tQ},double:{type:"number",validate:tQ},password:!0,binary:!0};function Mq(Y){return Y%4===0&&(Y%100!==0||Y%400===0)}var Hq=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,Uq=[0,31,28,31,30,31,30,31,31,30,31,30,31];function q2(Y){let X=Hq.exec(Y);if(!X)return!1;let $=+X[1],Z=+X[2],W=+X[3];return Z>=1&&Z<=12&&W>=1&&W<=(Z===2&&Mq($)?29:Uq[Z])}var zq=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function oJ(Y){return function X($){let Z=zq.exec($);if(!Z)return!1;let W=+Z[1],J=+Z[2],Q=+Z[3],G=Z[4],M=Z[5]==="-"?-1:1,H=+(Z[6]||0),U=+(Z[7]||0);if(H>23||U>59||Y&&!G)return!1;if(W<=23&&J<=59&&Q<60)return!0;let A=J-U*M,N=W-H*M-(A<0?1:0);return(N===23||N===-1)&&(A===59||A===-1)&&Q<61}}var _2=(Y)=>{if(Y.charCodeAt(Y.length-6)===32)return Y.slice(0,-6)+"+"+Y.slice(-5);return Y},Dq=/t|\s/i;function lQ(Y){let X=oJ(Y);return function $(Z){let W=Z.split(Dq);return W.length===2&&q2(W[0])&&X(W[1])}}var Aq=/\/|:/,Oq=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function Nq(Y){return Aq.test(Y)&&Oq.test(Y)}var nQ=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function wq(Y){return nQ.lastIndex=0,nQ.test(Y)}var Fq=-2147483648,Bq=2147483647;function Kq(Y){return Number.isInteger(Y)&&Y<=Bq&&Y>=Fq}function Lq(Y){return Number.isInteger(Y)}function tQ(){return!0}var qq=/[^\\]\\Z/;function _q(Y){if(qq.test(Y))return!1;try{return new RegExp(Y),!0}catch(X){return!1}}var R2=/(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))/,E2=/(?:Sun|Mon|Tue|Wed|Thu|Fri|Sat)\s(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s\d{2}\s\d{4}\s\d{2}:\d{2}:\d{2}\sGMT(?:\+|-)\d{4}\s\([^)]+\)/,V2=/^(?:(?:(?:(?:0?[1-9]|[12][0-9]|3[01])[/\s-](?:0?[1-9]|1[0-2])[/\s-](?:19|20)\d{2})|(?:(?:19|20)\d{2}[/\s-](?:0?[1-9]|1[0-2])[/\s-](?:0?[1-9]|[12][0-9]|3[01]))))(?:\s(?:1[012]|0?[1-9]):[0-5][0-9](?::[0-5][0-9])?(?:\s[AP]M)?)?$/,Rq=Y4.date,Eq=Y4["date-time"];if(!j1.Has("date"))j1.Set("date",(Y)=>{let X=_2(Y).replace(/"/g,"");if(R2.test(X)||E2.test(X)||V2.test(X)||Rq(X)){let $=new Date(X);if(!Number.isNaN($.getTime()))return!0}return!1});if(!j1.Has("date-time"))j1.Set("date-time",(Y)=>{let X=Y.replace(/"/g,"");if(R2.test(X)||E2.test(X)||V2.test(X)||Eq(X)){let $=new Date(X);if(!Number.isNaN($.getTime()))return!0}return!1});Object.entries(Y4).forEach((Y)=>{let[X,$]=Y;if(!j1.Has(X)){if($ instanceof RegExp)j1.Set(X,(Z)=>$.test(Z));else if(typeof $==="function")j1.Set(X,$)}});if(!j1.Has("numeric"))j1.Set("numeric",(Y)=>!!Y&&!isNaN(+Y));if(!j1.Has("integer"))j1.Set("integer",(Y)=>!!Y&&Number.isInteger(+Y));if(!j1.Has("boolean"))j1.Set("boolean",(Y)=>Y==="true"||Y==="false");if(!j1.Has("ObjectString"))j1.Set("ObjectString",(Y)=>{let X=Y.charCodeAt(0);if(X===9||X===10||X===32)X=Y.trimStart().charCodeAt(0);if(X!==123&&X!==91)return!1;try{return JSON.parse(Y),!0}catch{return!1}});if(!j1.Has("ArrayString"))j1.Set("ArrayString",(Y)=>{let X=Y.charCodeAt(0);if(X===9||X===10||X===32)X=Y.trimStart().charCodeAt(0);if(X!==123&&X!==91)return!1;try{return JSON.parse(Y),!0}catch{return!1}});var B6=typeof Bun!=="undefined",Vq={aac:"audio/aac",abw:"application/x-abiword",ai:"application/postscript",arc:"application/octet-stream",avi:"video/x-msvideo",azw:"application/vnd.amazon.ebook",bin:"application/octet-stream",bz:"application/x-bzip",bz2:"application/x-bzip2",csh:"application/x-csh",css:"text/css",csv:"text/csv",doc:"application/msword",dll:"application/octet-stream",eot:"application/vnd.ms-fontobject",epub:"application/epub+zip",gif:"image/gif",htm:"text/html",html:"text/html",ico:"image/x-icon",ics:"text/calendar",jar:"application/java-archive",jpeg:"image/jpeg",jpg:"image/jpeg",js:"application/javascript",json:"application/json",mid:"audio/midi",midi:"audio/midi",mp2:"audio/mpeg",mp3:"audio/mpeg",mp4:"video/mp4",mpa:"video/mpeg",mpe:"video/mpeg",mpeg:"video/mpeg",mpkg:"application/vnd.apple.installer+xml",odp:"application/vnd.oasis.opendocument.presentation",ods:"application/vnd.oasis.opendocument.spreadsheet",odt:"application/vnd.oasis.opendocument.text",oga:"audio/ogg",ogv:"video/ogg",ogx:"application/ogg",otf:"font/otf",png:"image/png",pdf:"application/pdf",ppt:"application/vnd.ms-powerpoint",rar:"application/x-rar-compressed",rtf:"application/rtf",sh:"application/x-sh",svg:"image/svg+xml",swf:"application/x-shockwave-flash",tar:"application/x-tar",tif:"image/tiff",tiff:"image/tiff",ts:"application/typescript",ttf:"font/ttf",txt:"text/plain",vsd:"application/vnd.visio",wav:"audio/x-wav",weba:"audio/webm",webm:"video/webm",webp:"image/webp",woff:"font/woff",woff2:"font/woff2",xhtml:"application/xhtml+xml",xls:"application/vnd.ms-excel",xlsx:"application/vnd.ms-excel",xlsx_OLD:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",xml:"application/xml",xul:"application/vnd.mozilla.xul+xml",zip:"application/zip","3gp":"video/3gpp","3gp_DOES_NOT_CONTAIN_VIDEO":"audio/3gpp","3gp2":"video/3gpp2","3gp2_DOES_NOT_CONTAIN_VIDEO":"audio/3gpp2","7z":"application/x-7z-compressed"},jq=(Y)=>{let X=Y.lastIndexOf(".");if(X===-1)return"";return Y.slice(X+1)};var vJ,yJ;class hZ{path;value;stats;constructor(Y){if(this.path=Y,B6)this.value=Bun.file(Y);else if(typeof window!=="undefined")console.warn("Browser environment does not support file");else if(!vJ||!yJ)try{this.value=import("fs").then((X)=>{return vJ=X.createReadStream,X.createReadStream(Y)}),this.stats=import("fs/promises").then((X)=>{return yJ=X.stat,X.stat(Y)})}catch{}else this.value=vJ(Y),this.stats=yJ(Y)}get type(){return Vq[jq(this.path)]||"application/octet-stream"}get length(){if(B6)return this.value.size;return this.stats?.then((Y)=>Y.size)??0}}var dZ="toJSON"in new Headers,sQ=(Y,X)=>{let $=new URL(Y);return $.pathname=X,$.toString()},Sq=(Y)=>typeof Y==="function"&&/^\s*class\s+/.test(Y.toString())||Y.toString&&Y.toString().startsWith("[object ")&&Y.toString()!=="[object Object]"||f1(Object.getPrototypeOf(Y)),hJ=(Y)=>Y&&typeof Y==="object"&&!Array.isArray(Y),$8=(Y,X,$)=>{let Z=$?.skipKeys,W=$?.override??!0;if(!hJ(Y)||!hJ(X))return Y;for(let[J,Q]of Object.entries(X)){if(Z?.includes(J))continue;if(!hJ(Q)||!(J in Y)||Sq(Q)){if(W||!(J in Y))Y[J]=Q;continue}Y[J]=$8(Y[J],Q,{skipKeys:Z,override:W})}return Y},j2=(Y,X)=>{let $=$8(Object.assign({},Y),X,{skipKeys:["properties"]});if($.properties)delete $.properties;return $},e1=(Y,X)=>{if(!X)return Y;let $=[],Z=[];if(Y){if(!Array.isArray(Y))Y=[Y];for(let W of Y)if($.push(W),W.checksum)Z.push(W.checksum)}if(X){if(!Array.isArray(X))X=[X];for(let W of X)if(!Z.includes(W.checksum))$.push(W)}return $},Cq=["start","request","parse","transform","resolve","beforeHandle","afterHandle","mapResponse","afterResponse","trace","error","stop","body","headers","params","query","response","type","detail"],Pq=Cq.reduce((Y,X)=>(Y[X]=!0,Y),{}),S2=(Y,X)=>{let $=(Z)=>typeof Z==="object"&&Object.keys(Z).every(X4);if($(Y)&&$(X))return Object.assign(Y,X);else if(Y&&!$(Y)&&$(X))return Object.assign({200:Y},X);return X??Y},U6=(Y,X)=>{return{body:X?.body??Y?.body,headers:X?.headers??Y?.headers,params:X?.params??Y?.params,query:X?.query??Y?.query,cookie:X?.cookie??Y?.cookie,response:S2(Y?.response,X?.response)}},hY=(Y,X)=>{if(!Object.values(X).find((Z)=>Z!==void 0&&Z!==null))return{...Y};let $={...Y,...X,body:X?.body??Y?.body,headers:X?.headers??Y?.headers,params:X?.params??Y?.params,query:X?.query??Y?.query,cookie:X?.cookie??Y?.cookie,response:S2(Y?.response,X?.response),type:Y?.type||X?.type,detail:$8(X?.detail??{},Y?.detail??{}),parse:e1(Y?.parse,X?.parse),transform:e1(Y?.transform,X?.transform),beforeHandle:e1(e1(F0(Y?.resolve,"resolve"),Y?.beforeHandle),e1(F0(X.resolve,"resolve"),X?.beforeHandle)),afterHandle:e1(Y?.afterHandle,X?.afterHandle),mapResponse:e1(Y?.mapResponse,X?.mapResponse),afterResponse:e1(Y?.afterResponse,X?.afterResponse),trace:e1(Y?.trace,X?.trace),error:e1(Y?.error,X?.error)};if($.resolve)delete $.resolve;return $},Iq=(Y)=>{if(Y.parse&&!Array.isArray(Y.parse))Y.parse=[Y.parse];if(Y.transform&&!Array.isArray(Y.transform))Y.transform=[Y.transform];if(Y.afterHandle&&!Array.isArray(Y.afterHandle))Y.afterHandle=[Y.afterHandle];if(Y.mapResponse&&!Array.isArray(Y.mapResponse))Y.mapResponse=[Y.mapResponse];if(Y.afterResponse&&!Array.isArray(Y.afterResponse))Y.afterResponse=[Y.afterResponse];if(Y.trace&&!Array.isArray(Y.trace))Y.trace=[Y.trace];if(Y.error&&!Array.isArray(Y.error))Y.error=[Y.error];let X=[];if(Y.resolve)X=F0(Array.isArray(Y.resolve)?Y.resolve:[Y.resolve],"resolve"),delete Y.resolve;if(Y.beforeHandle)if(X.length)X=X.concat(Array.isArray(Y.beforeHandle)?Y.beforeHandle:[Y.beforeHandle]);else X=Array.isArray(Y.beforeHandle)?Y.beforeHandle:[Y.beforeHandle];if(X.length)Y.beforeHandle=X;return Y},xq=typeof Bun!=="undefined",cv=xq&&typeof Bun.hash==="function",R$=(Y)=>{let X=9;for(let $=0;$<Y.length;)X=Math.imul(X^Y.charCodeAt($++),387420489);return X=X^X>>>9},ZY=(Y,X)=>{if(!X)return;if(!Array.isArray(X)){let Z=X;if(Y&&!Z.checksum)Z.checksum=Y;if(Z.scope==="scoped")Z.scope="local";return Z}let $=[...X];for(let Z of $){if(Y&&!Z.checksum)Z.checksum=Y;if(Z.scope==="scoped")Z.scope="local"}return $},rQ=(Y,X,$)=>{return{start:e1(Y.start,ZY($,X?.start)),request:e1(Y.request,ZY($,X?.request)),parse:e1(Y.parse,ZY($,X?.parse)),transform:e1(Y.transform,ZY($,X?.transform)),beforeHandle:e1(e1(F0(Y.resolve,"resolve"),Y.beforeHandle),ZY($,e1(F0(X?.resolve,"resolve"),X?.beforeHandle))),afterHandle:e1(Y.afterHandle,ZY($,X?.afterHandle)),mapResponse:e1(Y.mapResponse,ZY($,X?.mapResponse)),afterResponse:e1(Y.afterResponse,ZY($,X?.afterResponse)),trace:e1(Y.trace,ZY($,X?.trace)),error:e1(Y.error,ZY($,X?.error)),stop:e1(Y.stop,ZY($,X?.stop))}},Tq=(Y,X,{skipIfHasType:$=!1})=>{if(!Y)return Y;if(!Array.isArray(Y)){if($)Y.scope??=X;else Y.scope=X;return Y}for(let Z of Y)if($)Z.scope??=X;else Z.scope=X;return Y},HX=(Y)=>{if(!Y)return Y;if(!Array.isArray(Y))switch(Y.scope){case"global":case"scoped":return{...Y};default:return{fn:Y}}let X=[];for(let $ of Y)switch($.scope){case"global":case"scoped":X.push({...$});break}return X},aQ=(Y)=>{return{...Y,type:Y?.type,detail:Y?.detail,parse:HX(Y?.parse),transform:HX(Y?.transform),beforeHandle:HX(Y?.beforeHandle),afterHandle:HX(Y?.afterHandle),mapResponse:HX(Y?.mapResponse),afterResponse:HX(Y?.afterResponse),error:HX(Y?.error),trace:HX(Y?.trace)}},sZ={Continue:100,"Switching Protocols":101,Processing:102,"Early Hints":103,OK:200,Created:201,Accepted:202,"Non-Authoritative Information":203,"No Content":204,"Reset Content":205,"Partial Content":206,"Multi-Status":207,"Already Reported":208,"Multiple Choices":300,"Moved Permanently":301,Found:302,"See Other":303,"Not Modified":304,"Temporary Redirect":307,"Permanent Redirect":308,"Bad Request":400,Unauthorized:401,"Payment Required":402,Forbidden:403,"Not Found":404,"Method Not Allowed":405,"Not Acceptable":406,"Proxy Authentication Required":407,"Request Timeout":408,Conflict:409,Gone:410,"Length Required":411,"Precondition Failed":412,"Payload Too Large":413,"URI Too Long":414,"Unsupported Media Type":415,"Range Not Satisfiable":416,"Expectation Failed":417,"I'm a teapot":418,"Misdirected Request":421,"Unprocessable Content":422,Locked:423,"Failed Dependency":424,"Too Early":425,"Upgrade Required":426,"Precondition Required":428,"Too Many Requests":429,"Request Header Fields Too Large":431,"Unavailable For Legal Reasons":451,"Internal Server Error":500,"Not Implemented":501,"Bad Gateway":502,"Service Unavailable":503,"Gateway Timeout":504,"HTTP Version Not Supported":505,"Variant Also Negotiates":506,"Insufficient Storage":507,"Loop Detected":508,"Not Extended":510,"Network Authentication Required":511},eQ=Object.fromEntries(Object.entries(sZ).map(([Y,X])=>[X,Y]));function kq(Y){let X=Y;while(X.endsWith("="))X=X.slice(0,-1);return X}var Y2=new TextEncoder,mZ=async(Y,X)=>{if(typeof Y!=="string")throw new TypeError("Cookie value must be provided as a string.");if(X===null)throw new TypeError("Secret key must be provided.");let $=await crypto.subtle.importKey("raw",Y2.encode(X),{name:"HMAC",hash:"SHA-256"},!1,["sign"]),Z=await crypto.subtle.sign("HMAC",$,Y2.encode(Y));return Y+"."+kq(Buffer.from(Z).toString("base64"))},X2=async(Y,X)=>{if(typeof Y!=="string")throw new TypeError("Signed cookie string must be provided.");if(X===null)throw new TypeError("Secret key must be provided.");let $=Y.slice(0,Y.lastIndexOf("."));return await mZ($,X)===Y?$:!1},bq=(Y,X,$)=>{if(!Y||typeof Y!=="object"||!X)return;for(let[Z,W]of Object.entries(X)){if(Pq[Z]||!(Z in Y))continue;let J=Y[Z];if(typeof J==="function"){let Q=J(W);if(typeof Q==="object")for(let[G,M]of Object.entries(Q))$(G)({fn:M})}delete X[Z]}},gq=({globalHook:Y,localHook:X})=>($)=>(Z,W)=>{if(typeof Z==="function")Z={fn:Z};if($==="resolve")Z={...Z,subType:"resolve"};if(!X[$])X[$]=[];if(typeof X[$]==="function")X[$]=[X[$]];if(!Array.isArray(X[$]))X[$]=[X[$]];if("fn"in Z||Array.isArray(Z)){if(Array.isArray(Z))X[$]=X[$].concat(Z);else X[$].push(Z);return}let{insert:J="after",stack:Q="local"}=Z;if(typeof W==="function")W={fn:W};if(Q==="global")if(!Array.isArray(W))if(J==="before")Y[$].unshift(W);else Y[$].push(W);else if(J==="before")Y[$]=W.concat(Y[$]);else Y[$]=Y[$].concat(W);else if(!Array.isArray(W))if(J==="before")X[$].unshift(W);else X[$].push(W);else if(J==="before")X[$]=W.concat(X[$]);else X[$]=X[$].concat(W)},fq=(Y)=>{if(typeof Y==="number")return Y;if(Y.length<16){if(Y.trim().length===0)return null;let X=Number(Y);if(Number.isNaN(X))return null;return X}if(Y.length===16){if(Y.trim().length===0)return null;let X=Number(Y);if(Number.isNaN(X)||X.toString()!==Y)return null;return X}return null},X4=(Y)=>fq(Y)!==null;class C2{onError;onFinally;root=null;promises=[];constructor(Y=console.error,X=()=>{}){this.onError=Y,this.onFinally=X}get size(){return this.promises.length}add(Y){if(this.promises.push(Y),this.root||=this.drain(),this.promises.length===1)this.then(this.onFinally);return Y}async drain(){while(this.promises.length>0){try{await this.promises[0]}catch(Y){this.onError(Y)}this.promises.shift()}this.root=null}then(Y,X){return(this.root??Promise.resolve()).then(Y,X)}}var F0=(Y,X)=>{if(!Y)return Y;if(!Array.isArray(Y)){if(typeof Y==="function"||typeof Y==="string")return X?{fn:Y,subType:X}:{fn:Y};else if("fn"in Y)return Y}let $=[];for(let Z of Y)if(typeof Z==="function"||typeof Z==="string")$.push(X?{fn:Z,subType:X}:{fn:Z});else if("fn"in Z)$.push(Z);return $},$2=(Y)=>{if(Y.start)Y.start=F0(Y.start);if(Y.request)Y.request=F0(Y.request);if(Y.parse)Y.parse=F0(Y.parse);if(Y.transform)Y.transform=F0(Y.transform);if(Y.beforeHandle)Y.beforeHandle=F0(Y.beforeHandle);if(Y.afterHandle)Y.afterHandle=F0(Y.afterHandle);if(Y.mapResponse)Y.mapResponse=F0(Y.mapResponse);if(Y.afterResponse)Y.afterResponse=F0(Y.afterResponse);if(Y.trace)Y.trace=F0(Y.trace);if(Y.error)Y.error=F0(Y.error);if(Y.stop)Y.stop=F0(Y.stop);return Y},Z2=(Y)=>{if(Y.start?.map)Y.start=Y.start.map((X)=>X.fn);if(Y.request?.map)Y.request=Y.request.map((X)=>X.fn);if(Y.parse?.map)Y.parse=Y.parse.map((X)=>X.fn);if(Y.transform?.map)Y.transform=Y.transform.map((X)=>X.fn);if(Y.beforeHandle?.map)Y.beforeHandle=Y.beforeHandle.map((X)=>X.fn);if(Y.afterHandle?.map)Y.afterHandle=Y.afterHandle.map((X)=>X.fn);if(Y.mapResponse?.map)Y.mapResponse=Y.mapResponse.map((X)=>X.fn);if(Y.afterResponse?.map)Y.afterResponse=Y.afterResponse.map((X)=>X.fn);if(Y.trace?.map)Y.trace=Y.trace.map((X)=>X.fn);else Y.trace=[];if(Y.error?.map)Y.error=Y.error.map((X)=>X.fn);if(Y.stop?.map)Y.stop=Y.stop.map((X)=>X.fn);return Y},W2=(Y)=>({body:Y.body,cookie:Y.cookie,headers:Y.headers,query:Y.query,set:Y.set,server:Y.server,path:Y.path,route:Y.route,url:Y.url}),$4=(Y,X=302)=>Response.redirect(Y,X),pX=Symbol("ElysiaFormData"),q6=Symbol("ElysiaRequestId"),vq=(Y)=>{let X=new FormData;if(X[pX]={},Y)for(let[$,Z]of Object.entries(Y)){if(Array.isArray(Z)){X[pX][$]=[];for(let W of Z){if(Z instanceof File)X.append($,Z,Z.name);else if(Z instanceof hZ)X.append($,Z.value,Z.value?.name);else X.append($,Z);X[pX][$].push(Z)}continue}if(Z instanceof File)X.append($,Z,Z.name);else if(Z instanceof hZ)X.append($,Z.value,Z.value?.name);else X.append($,Z);X[pX][$]=Z}return X},rZ=()=>{let Y=crypto.randomUUID();return Y.slice(0,8)+Y.slice(24,32)},J2=(Y)=>{let X=[];for(let $=0;$<Y.length;$++){let Z=Y[$];if(Z.checksum){if(X.includes(Z.checksum))Y.splice($,1),$--;X.push(Z.checksum)}}return Y},UX=(Y,X="scoped")=>{if(!Y)return;if(X==="scoped"){for(let $ of Y)if("scope"in $&&$.scope==="local")$.scope="scoped";return}for(let $ of Y)if("scope"in $)$.scope="global"},E$=(Y)=>{if(Y.charCodeAt(Y.length-1)===47)return Y.slice(0,Y.length-1);return Y+"/"},f1=(Y)=>{if(!Y)return!1;for(let X in Y)return!0;return!1},D6=(Y,{dynamic:X=!1}={})=>{let $=encodeURIComponent(Y).replace(/%2F/g,"/");if(X)$=$.replace(/%3A/g,":").replace(/%3F/g,"?");return $},Q2=typeof Bun!=="undefined"?Bun.env:typeof process!=="undefined"?process?.env:void 0,pZ=Symbol("ElysiaErrorCode"),K6=(Q2?.NODE_ENV??Q2?.ENV)==="production";class u0{code;response;constructor(Y,X){let $=X??(Y in eQ?eQ[Y]:Y);this.code=sZ[Y]??Y,this.response=$}}var iY=(Y,X)=>new u0(Y,X);class Z4 extends Error{code="NOT_FOUND";status=404;constructor(Y){super(Y??"NOT_FOUND")}}class P2 extends Error{code="PARSE";status=400;constructor(Y){super("Bad Request",{cause:Y})}}class lJ extends Error{key;code="INVALID_COOKIE_SIGNATURE";status=400;constructor(Y,X){super(X??`"${Y}" has invalid cookie signature`);this.key=Y}}var JY=(Y)=>{if(!Y)return{summary:void 0};let{message:X,path:$,value:Z,type:W}=Y,J=$.slice(1).replaceAll("/","."),Q=$==="";switch(W){case 42:return{...Y,summary:Q?"Value should not be provided":`Property '${J}' should not be provided`};case 45:return{...Y,summary:Q?"Value is missing":`Property '${J}' is missing`};case 50:let G=X.indexOf("'"),M=X.slice(G+1,X.indexOf("'",G+1));return{...Y,summary:Q?"Value should be an email":`Property '${J}' should be ${M}`};case 54:return{...Y,summary:`${X.slice(0,9).trim()} property '${J}' to be ${X.slice(8).trim()} but found: ${Z}`};case 62:let H=Y.schema.anyOf.map((U)=>`'${U?.format??U.type}'`).join(", ");return{...Y,summary:Q?`Value should be one of ${H}`:`Property '${J}' should be one of: ${H}`};default:return{summary:X,...Y}}};class N6 extends Error{property;expected;message;code="INVALID_FILE_TYPE";status=422;constructor(Y,X,$=`"${Y}" has invalid file type`){super($);this.property=Y,this.expected=X,this.message=$,Object.setPrototypeOf(this,N6.prototype)}toResponse(Y){if(K6)return new Response(JSON.stringify({type:"validation",on:"body"}),{status:422,headers:{...Y,"content-type":"application/json"}});return new Response(JSON.stringify({type:"validation",on:"body",summary:"Invalid file type",message:this.message,property:this.property,expected:this.expected}),{status:422,headers:{...Y,"content-type":"application/json"}})}}class T1 extends Error{type;validator;value;code="VALIDATION";status=422;constructor(Y,X,$,Z){if($&&typeof $==="object"&&$ instanceof u0)$=$.response;let W=Z?.First()||(K6?void 0:("Errors"in X)?X.Errors($).First():V1.Errors(X,$).First()),J=W?.schema?.message||W?.schema?.error!==void 0?typeof W.schema.error==="function"?W.schema.error({type:Y,validator:X,value:$,get errors(){return[...X.Errors($)].map(JY)}}):W.schema.error:void 0,Q=W?.path||"root",G="";if(J!==void 0)G=typeof J==="object"?JSON.stringify(J):J+"";else if(K6)G=JSON.stringify({type:"validation",on:Y,summary:JY(W).summary,message:W?.message,found:$});else{let M=X?.schema??X,H="Errors"in X?[...X.Errors($)].map(JY):[...V1.Errors(X,$)].map(JY),U;try{U=V1.Create(M)}catch(A){U={type:"Could not create expected value",message:A?.message,error:A}}G=JSON.stringify({type:"validation",on:Y,summary:JY(W).summary,property:Q,message:W?.message,expected:U,found:$,errors:H},null,2)}super(G);this.type=Y,this.validator=X,this.value=$,Object.setPrototypeOf(this,T1.prototype)}get all(){return"Errors"in this.validator?[...this.validator.Errors(this.value)].map(JY):[...V1.Errors(this.validator,this.value)].map(JY)}static simplifyModel(Y){let X="schema"in Y?Y.schema:Y;try{return V1.Create(X)}catch{return X}}get model(){return T1.simplifyModel(this.validator)}toResponse(Y){return new Response(this.message,{status:400,headers:{...Y,"content-type":"application/json"}})}}var TZ=(Y,X)=>{try{return JSON.parse(Y)}catch{throw new T1("property",X,Y)}};function aZ(Y,X){if(!H0.Has(Y))H0.Set(Y,X);return($={})=>MZ({...$,[R]:Y})}var dX=(Y)=>{try{let X=OY.Compile(Y);return X.Create=()=>V1.Create(Y),X.Error=($)=>new T1("property",Y,$,X.Errors($)),X}catch{return{Check:(X)=>V1.Check(Y,X),CheckThrow:(X)=>{if(!V1.Check(Y,X))throw new T1("property",Y,X,V1.Errors(Y,X))},Decode:(X)=>V1.Decode(Y,X),Create:()=>V1.Create(Y),Error:(X)=>new T1("property",Y,X,V1.Errors(Y,X))}}},G2=(Y)=>{if(typeof Y==="string")switch(Y.slice(-1)){case"k":return+Y.slice(0,Y.length-1)*1024;case"m":return+Y.slice(0,Y.length-1)*1048576;default:return+Y}return Y},cZ=(Y,X)=>{if(Y.startsWith(X))return!0;return X.charCodeAt(X.length-1)===42&&X.charCodeAt(X.length-2)===47&&Y.startsWith(X.slice(0,-1))},M2=!1,yq=()=>{if(!M2)console.warn("[Elysia] Attempt to validate file type without 'file-type'. This may lead to security risks. We recommend installing 'file-type' to properly validate file extension."),M2=!0},W4=async()=>Promise.resolve().then(() => (cQ(),pQ)).then((Y)=>{return uZ=Y.fileTypeFromBlob,uZ}).catch(yq),uZ,hq=(Y)=>{if(uZ)return uZ(Y);return W4().then((X)=>{if(X)return X(Y)})},dq=async(Y,X,$=Y?.name??"")=>{if(!Y)return;let Z=await hq(Y);if(!Z)throw new N6($,X);if(typeof X==="string"){if(!cZ(Z.mime,X))throw new N6($,X)}for(let W=0;W<X.length;W++)if(cZ(Z.mime,X[W]))return!0;throw new N6($,X)},nJ=(Y,X)=>{if(X instanceof hZ)return!0;if(!(X instanceof Blob))return!1;if(Y.minSize&&X.size<G2(Y.minSize))return!1;if(Y.maxSize&&X.size>G2(Y.maxSize))return!1;if(Y.extension){if(typeof Y.extension==="string")return cZ(X.type,Y.extension);for(let $=0;$<Y.extension.length;$++)if(cZ(X.type,Y.extension[$]))return!0;return!1}return!0},B=Object.assign({},x1);aZ("UnionEnum",(Y,X)=>(typeof X==="number"||typeof X==="string"||X===null)&&Y.enum.includes(X));var mq=aZ("Files",(Y,X)=>{if(!Array.isArray(X))return nJ(Y,X);if(Y.minItems&&X.length<Y.minItems)return!1;if(Y.maxItems&&X.length>Y.maxItems)return!1;for(let $=0;$<X.length;$++)if(!nJ(Y,X[$]))return!1;return!0}),pq=aZ("ElysiaForm",({compiler:Y,...X},$)=>{if(!($ instanceof FormData))return!1;if(Y){if(!(pX in $))throw new T1("property",X,$);if(!Y.Check($[pX]))throw Y.Error($[pX])}return!0}),J8={String:(Y)=>x1.String(Y),Numeric:(Y)=>{let X=x1.Number(Y),$=dX(X);return B.Transform(B.Union([B.String({format:"numeric",default:0}),B.Number(Y)],Y)).Decode((Z)=>{let W=+Z;if(isNaN(W))return Z;if(Y&&!$.Check(W))throw $.Error(Z);return W}).Encode((Z)=>Z)},Integer:(Y)=>{let X=x1.Integer(Y),$=dX(X);return B.Transform(B.Union([B.String({format:"integer",default:0}),x1.Integer(Y)],Y)).Decode((Z)=>{let W=+Z;if(!$.Check(W))throw $.Error(W);return W}).Encode((Z)=>Z)},Date:(Y)=>{let X=x1.Date(Y),$=dX(X),Z=Y?.default?new Date(Y.default):void 0;return B.Transform(B.Union([x1.Date(Y),B.String({format:"date-time",default:Z?.toISOString()}),B.String({format:"date",default:Z?.toISOString()}),B.Number({default:Z?.getTime()})],Y)).Decode((W)=>{if(typeof W==="number"){let Q=new Date(W);if(!$.Check(Q))throw $.Error(Q);return Q}if(W instanceof Date)return W;let J=new Date(_2(W));if(!J||isNaN(J.getTime()))throw new T1("property",X,J);if(!$.Check(J))throw $.Error(J);return J}).Encode((W)=>W.toISOString())},BooleanString:(Y)=>{let X=x1.Boolean(Y),$=dX(X);return B.Transform(B.Union([B.Boolean(Y),B.String({format:"boolean",default:!1})],Y)).Decode((Z)=>{if(typeof Z==="string")return Z==="true";if(Z!==void 0&&!$.Check(Z))throw $.Error(Z);return Z}).Encode((Z)=>Z)},ObjectString:(Y,X)=>{let $=B.Object(Y,X),Z=dX($),W=JSON.stringify(Z.Create());return B.Transform(B.Union([B.String({format:"ObjectString",default:W}),$])).Decode((J)=>{if(typeof J==="string"){if(J.charCodeAt(0)!==123)throw new T1("property",$,J);if(!Z.Check(J=TZ(J,$)))throw Z.Error(J);return Z.Decode(J)}return J}).Encode((J)=>{let Q;if(typeof J==="string")J=TZ(Q=J,$);if(!Z.Check(J))throw Z.Error(J);return Q??JSON.stringify(J)})},ArrayString:(Y=B.String(),X)=>{let $=B.Array(Y,X),Z=dX($),W=(J,Q=!1)=>{if(J.charCodeAt(0)===91){if(!Z.Check(J=TZ(J,$)))throw Z.Error(J);return Z.Decode(J)}if(J.indexOf(",")!==-1){if(!Z.Check(J))throw Z.Error(J);return Z.Decode(J)}if(Q)return J;throw new T1("property",$,J)};return B.Transform(B.Union([B.String({format:"ArrayString",default:X?.default}),$])).Decode((J)=>{if(Array.isArray(J)){let Q=[];for(let G=0;G<J.length;G++){let M=J[G];if(typeof M==="string"){let H=W(M,!0);if(Array.isArray(H))Q=Q.concat(H);else Q.push(H);continue}Q.push(M)}return Q}if(typeof J==="string")return W(J);return J}).Encode((J)=>{let Q;if(typeof J==="string")J=TZ(Q=J,$);if(!Z.Check(J))throw new T1("property",$,J);return Q??JSON.stringify(J)})},File:aZ("File",nJ),Files:(Y={})=>B.Transform(mq(Y)).Decode((X)=>{if(Array.isArray(X))return X;return[X]}).Encode((X)=>X),Nullable:(Y,X)=>B.Union([Y,B.Null()],X),MaybeEmpty:(Y,X)=>B.Union([Y,B.Null(),B.Undefined()],X),Cookie:(Y,{domain:X,expires:$,httpOnly:Z,maxAge:W,path:J,priority:Q,sameSite:G,secure:M,secrets:H,sign:U,...A}={})=>{let N=B.Object(Y,A);return N.config={domain:X,expires:$,httpOnly:Z,maxAge:W,path:J,priority:Q,sameSite:G,secure:M,secrets:H,sign:U},N},UnionEnum:(Y,X={})=>{let $=Y.every((Z)=>typeof Z==="string")?{type:"string"}:Y.every((Z)=>typeof Z==="number")?{type:"number"}:Y.every((Z)=>Z===null)?{type:"null"}:{};if(Y.some((Z)=>typeof Z==="object"&&Z!==null))throw new Error("This type does not support objects or arrays");return{default:Y[0],...X,[R]:"UnionEnum",...$,enum:Y}},NoValidate:(Y,X=!0)=>{return Y.noValidate=X,Y},Form:(Y,X={})=>{let $=B.Object(Y,{default:vq({}),...X}),Z=dX($);return B.Union([$,pq({compiler:Z})])}};B.BooleanString=J8.BooleanString;B.ObjectString=J8.ObjectString;B.ArrayString=J8.ArrayString;B.Numeric=J8.Numeric;B.Integer=J8.Integer;B.File=(Y)=>{if(Y?.type)W4();return J8.File({default:"File",...Y,extension:Y?.type,type:"string",format:"binary"})};B.Files=(Y)=>{if(Y?.type)W4();return J8.Files({...Y,elysiaMeta:"Files",default:"Files",extension:Y?.type,type:"array",items:{...Y,default:"Files",type:"string",format:"binary"}})};B.Nullable=(Y)=>J8.Nullable(Y);B.MaybeEmpty=J8.MaybeEmpty;B.Cookie=J8.Cookie;B.Date=J8.Date;B.UnionEnum=J8.UnionEnum;B.NoValidate=J8.NoValidate;B.Form=J8.Form;var cq=(Y)=>{if(Y.startsWith("async"))Y=Y.slice(5);Y=Y.trimStart();let X=-1;if(Y.charCodeAt(0)===40){if(X=Y.indexOf("=>",Y.indexOf(")")),X!==-1){let W=X;while(W>0)if(Y.charCodeAt(--W)===41)break;let J=Y.slice(X+2);if(J.charCodeAt(0)===32)J=J.trimStart();return[Y.slice(1,W),J,{isArrowReturn:J.charCodeAt(0)!==123}]}}if(/^(\w+)=>/g.test(Y)){if(X=Y.indexOf("=>"),X!==-1){let W=Y.slice(X+2);if(W.charCodeAt(0)===32)W=W.trimStart();return[Y.slice(0,X),W,{isArrowReturn:W.charCodeAt(0)!==123}]}}if(Y.startsWith("function")){X=Y.indexOf("(");let W=Y.indexOf(")");return[Y.slice(X+1,W),Y.slice(W+2),{isArrowReturn:!1}]}let $=Y.indexOf("(");if($!==-1){let W=Y.indexOf(`
|
|
`,2),J=Y.slice(0,W),Q=J.lastIndexOf(")")+1,G=Y.slice(W+1);return[J.slice($,Q),"{"+G,{isArrowReturn:!1}]}let Z=Y.split(`
|
|
`,2);return[Z[0],Z[1],{isArrowReturn:!1}]},uq=(Y)=>{let X=Y.indexOf("{");if(X===-1)return[-1,0];let $=X+1,Z=1;for(;$<Y.length;$++){let W=Y.charCodeAt($);if(W===123)Z++;else if(W===125)Z--;if(Z===0)break}if(Z!==0)return[0,Y.length];return[X,$+1]},iq=(Y)=>{let X=Y.lastIndexOf("}");if(X===-1)return[-1,0];let $=X-1,Z=1;for(;$>=0;$--){let W=Y.charCodeAt($);if(W===125)Z++;else if(W===123)Z--;if(Z===0)break}if(Z!==0)return[-1,0];return[$,X+1]},I2=(Y)=>{while(!0){let X=Y.indexOf(":");if(X===-1)break;let $=Y.indexOf(",",X);if($===-1)$=Y.indexOf("}",X)-1;if($===-2)$=Y.length;Y=Y.slice(0,X)+Y.slice($)}return Y},x2=(Y)=>{let X=!1;if(Y.charCodeAt(0)===40)Y=Y.slice(1,-1);if(Y.charCodeAt(0)===123)X=!0,Y=Y.slice(1,-1);Y=Y.replace(/( |\t|\n)/g,"").trim();let $=[];while(!0){let[W,J]=uq(Y);if(W===-1)break;if($.push(Y.slice(0,W-1)),Y.charCodeAt(J)===44)J++;Y=Y.slice(J)}if(Y=I2(Y),Y)$=$.concat(Y.split(","));let Z=Object.create(null);for(let W of $){if(W.indexOf(",")===-1){Z[W]=!0;continue}for(let J of W.split(","))Z[J.trim()]=!0}return{hasParenthesis:X,parameters:Z}},oq=(Y,X)=>{let{parameters:$,hasParenthesis:Z}=x2(Y);if($.query)X.query=!0;if($.headers)X.headers=!0;if($.body)X.body=!0;if($.cookie)X.cookie=!0;if($.set)X.set=!0;if($.server)X.server=!0;if($.route)X.route=!0;if($.url)X.url=!0;if($.path)X.path=!0;if(Z)return`{ ${Object.keys($).join(", ")} }`;return Object.keys($).join(", ")},H2=(Y,X,$)=>{let Z=new RegExp(`${Y.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}[\\n\\t,; ]`);if($!==void 0)Z.lastIndex=$;let W=Z.exec(X);return W?W.index:-1},T2=(Y,X,$=0)=>{if($>5)return[];let Z=[],W=X;while(!0){let J=H2(" = "+Y,W);if(J===-1)J=H2("="+Y,W);if(J===-1){let H=W.indexOf(" = "+Y);if(H===-1)H=W.indexOf("="+Y);if(H+3+Y.length!==W.length)break;J=H}let Q=W.slice(0,J),G=Q.lastIndexOf(" "),M=Q.slice(G!==-1?G+1:-1);if(M==="}"){let[H,U]=iq(Q);Z.push(I2(W.slice(H,U))),W=W.slice(J+3+Y.length);continue}while(M.charCodeAt(0)===44)M=M.slice(1);while(M.charCodeAt(0)===9)M=M.slice(1);if(!M.includes("("))Z.push(M);W=W.slice(J+3+Y.length)}for(let J of Z){if(J.charCodeAt(0)===123)continue;let Q=T2(J,X);if(Q.length>0)Z.push(...Q)}return Z},lq=(Y)=>{if(!Y)return;if(Y.charCodeAt(0)!==123)return Y;if(Y=Y.slice(2,-2),!Y.includes(",")){if(Y.indexOf("...")!==-1)return Y.slice(Y.indexOf("...")+3);return}let X=Y.indexOf("...");if(X===-1)return;return Y.slice(X+3).trimEnd()},nq=(Y,X,$)=>{let Z=(W,J)=>new RegExp(`${J}\\.(${W})|${J}\\["${W}"\\]|${J}\\['${W}'\\]`).test(Y);for(let W of X){if(!W)continue;if(W.charCodeAt(0)===123){let J=x2(W).parameters;if(J.query)$.query=!0;if(J.headers)$.headers=!0;if(J.body)$.body=!0;if(J.cookie)$.cookie=!0;if(J.set)$.set=!0;if(J.server)$.server=!0;if(J.url)$.url=!0;if(J.route)$.route=!0;if(J.path)$.path=!0;continue}if(!$.query&&(Z("query",W)||Y.includes("return "+W)||Y.includes("return "+W+".query")))$.query=!0;if(!$.headers&&Z("headers",W))$.headers=!0;if(!$.body&&Z("body",W))$.body=!0;if(!$.cookie&&Z("cookie",W))$.cookie=!0;if(!$.set&&Z("set",W))$.set=!0;if(!$.server&&Z("server",W))$.server=!0;if(!$.route&&Z("route",W))$.route=!0;if(!$.url&&Z("url",W))$.url=!0;if(!$.path&&Z("path",W))$.path=!0;if($.query&&$.headers&&$.body&&$.cookie&&$.set&&$.server&&$.route&&$.url&&$.path)break}return X},tq=(Y,X,$)=>{try{let Z=new RegExp(`(?:\\w)\\((?:.*)?${Y}`,"gs");Z.test(X);let W=X.charCodeAt(Z.lastIndex);if(W===41||W===44)return $.query=!0,$.headers=!0,$.body=!0,$.cookie=!0,$.set=!0,$.server=!0,$.url=!0,$.route=!0,$.path=!0,!0;return!1}catch(Z){return console.log("[Sucrose] warning: unexpected isContextPassToFunction error, you may continue development as usual but please report the following to maintainers:"),console.log("--- body ---"),console.log(X),console.log("--- context ---"),console.log(Y),!0}},kZ,fZ={},U2=(Y=0)=>{if(kZ)clearTimeout(kZ);kZ=setTimeout(()=>{if(fZ={},kZ=void 0,B6)Bun.gc(!1)},Y)},tJ=(Y,X)=>{return{body:Y.body||X.body,cookie:Y.cookie||X.cookie,headers:Y.headers||X.headers,query:Y.query||X.query,set:Y.set||X.set,server:Y.server||X.server,url:Y.url||X.url,route:Y.route||X.route,path:Y.path||X.path}},L6=(Y,X={query:!1,headers:!1,body:!1,cookie:!1,set:!1,server:!1,url:!1,route:!1,path:!1})=>{let $=[];if(Y.request?.length)$.push(...Y.request);if(Y.beforeHandle?.length)$.push(...Y.beforeHandle);if(Y.parse?.length)$.push(...Y.parse);if(Y.error?.length)$.push(...Y.error);if(Y.transform?.length)$.push(...Y.transform);if(Y.afterHandle?.length)$.push(...Y.afterHandle);if(Y.mapResponse?.length)$.push(...Y.mapResponse);if(Y.afterResponse?.length)$.push(...Y.afterResponse);if(Y.handler&&typeof Y.handler==="function")$.push(Y.handler);for(let Z=0;Z<$.length;Z++){let W=$[Z];if(!W)continue;let J=typeof W==="object"?W.fn:W;if(typeof J!=="function")continue;let Q=J.toString(),G=R$(Q),M=fZ[G];if(M){X=tJ(X,M);continue}let H={query:!1,headers:!1,body:!1,cookie:!1,set:!1,server:!1,url:!1,route:!1,path:!1},[U,A]=cq(Q),N=oq(U,H),O=lq(N);if(O){let z=T2(O,A.slice(1,-1));z.splice(0,-1,O);let L=A;if(L.charCodeAt(0)===123&&L.charCodeAt(A.length-1)===125)L=L.slice(1,-1);if(!tq(O,L,H))nq(L,z,H);if(!H.query&&L.includes("return "+O+".query"))H.query=!0}if(!fZ[G])fZ[G]=H;if(X=tJ(X,H),X.query&&X.headers&&X.body&&X.cookie&&X.set&&X.server&&X.url&&X.route&&X.path)break}return X},k2=tZ(Gq(),1),sq=tZ(eJ(),1);class oY{name;jar;initial;constructor(Y,X,$={}){this.name=Y,this.jar=X,this.initial=$}get cookie(){return this.jar[this.name]??this.initial}set cookie(Y){if(!(this.name in this.jar))this.jar[this.name]=this.initial;this.jar[this.name]=Y}get setCookie(){if(!(this.name in this.jar))this.jar[this.name]=this.initial;return this.jar[this.name]}set setCookie(Y){this.cookie=Y}get value(){return this.cookie.value}set value(Y){this.setCookie.value=Y}get expires(){return this.cookie.expires}set expires(Y){this.setCookie.expires=Y}get maxAge(){return this.cookie.maxAge}set maxAge(Y){this.setCookie.maxAge=Y}get domain(){return this.cookie.domain}set domain(Y){this.setCookie.domain=Y}get path(){return this.cookie.path}set path(Y){this.setCookie.path=Y}get secure(){return this.cookie.secure}set secure(Y){this.setCookie.secure=Y}get httpOnly(){return this.cookie.httpOnly}set httpOnly(Y){this.setCookie.httpOnly=Y}get sameSite(){return this.cookie.sameSite}set sameSite(Y){this.setCookie.sameSite=Y}get priority(){return this.cookie.priority}set priority(Y){this.setCookie.priority=Y}get partitioned(){return this.cookie.partitioned}set partitioned(Y){this.setCookie.partitioned=Y}get secrets(){return this.cookie.secrets}set secrets(Y){this.setCookie.secrets=Y}update(Y){return this.setCookie=Object.assign(this.cookie,typeof Y==="function"?Y(this.cookie):Y),this}set(Y){return this.setCookie=Object.assign({...this.initial,value:this.value},typeof Y==="function"?Y(this.cookie):Y),this}remove(){if(this.value===void 0)return;return this.set({expires:new Date(0),maxAge:0,value:""}),this}toString(){return typeof this.value==="object"?JSON.stringify(this.value):this.value?.toString()??""}}var z2=(Y,X,$)=>{if(!Y.cookie)Y.cookie={};return new Proxy(X,{get(Z,W){if(W in X)return new oY(W,Y.cookie,Object.assign({},$??{},X[W]));return new oY(W,Y.cookie,Object.assign({},$))}})},b2=async(Y,X,{secrets:$,sign:Z,...W}={})=>{if(!X)return z2(Y,{},W);let J=typeof $==="string";if(Z&&Z!==!0&&!Array.isArray(Z))Z=[Z];let Q={},G=k2.parse(X);for(let[M,H]of Object.entries(G)){if(H===void 0)continue;let U=sq.default(H);if(Z===!0||Z?.includes(M)){if(!$)throw new Error("No secret is provided to cookie plugin");if(J){let A=await X2(U,$);if(A===!1)throw new lJ(M);U=A}else{let A=!0;for(let N=0;N<$.length;N++){let O=await X2(U,$[N]);if(O!==!1){A=!0,U=O;break}}if(!A)throw new lJ(M)}}Q[M]={value:U}}return z2(Y,Q,W)},g2=(Y)=>{if(!Y||!f1(Y))return;let X=[];for(let[$,Z]of Object.entries(Y)){if(!$||!Z)continue;let W=Z.value;if(W===void 0||W===null)continue;X.push(k2.serialize($,typeof W==="object"?JSON.stringify(W):W+"",Z))}if(X.length===0)return;if(X.length===1)return X[0];return X},s1=(Y,X)=>{let $=Y.size;if(!X&&$||$&&X&&X.status!==206&&X.status!==304&&X.status!==412&&X.status!==416){if(X){if(X.headers instanceof Headers){let Z={"accept-ranges":"bytes","content-range":`bytes 0-${$-1}/${$}`,"transfer-encoding":"chunked"};if(dZ)Z=X.headers.toJSON();else{Z={};for(let[W,J]of X.headers.entries())if(W in X.headers)Z[W]=J}return new Response(Y,{status:X.status,headers:Z})}if(f1(X.headers))return new Response(Y,{status:X.status,headers:Object.assign({"accept-ranges":"bytes","content-range":`bytes 0-${$-1}/${$}`,"transfer-encoding":"chunked"},X.headers)})}return new Response(Y,{headers:{"accept-ranges":"bytes","content-range":`bytes 0-${$-1}/${$}`,"transfer-encoding":"chunked"}})}return new Response(Y)},f2=(Y,X)=>{if(!Y)return Y;Y.delete("set-cookie");for(let $=0;$<X.length;$++){let Z=X[$].indexOf("=");Y.append("set-cookie",`${X[$].slice(0,Z)}=${X[$].slice(Z+1)||""}`)}return Y},wX=(Y,X)=>{if(X?.headers){if(Y){if(dZ)Object.assign(X.headers,Y.headers.toJSON());else for(let[$,Z]of Y.headers.entries())if($ in X.headers)X.headers[$]=Z}if(X.status===200)X.status=Y.status;if(X.headers["content-encoding"])delete X.headers["content-encoding"];return X}if(!Y)return{headers:{},status:X?.status??200};if(dZ){if(X={headers:Y.headers.toJSON(),status:X?.status??200},X.headers["content-encoding"])delete X.headers["content-encoding"];return X}X={headers:{},status:X?.status??200};for(let[$,Z]of Y.headers.entries()){if($==="content-encoding")continue;if($ in X.headers)X.headers[$]=Z}return X},J4=({mapResponse:Y,mapCompactResponse:X})=>async($,Z,W)=>{let J=$.next();if(J instanceof Promise)J=await J;if(J.done){if(Z)return Y(J.value,Z,W);return X(J.value,W)}if(Z?.headers){if(!Z.headers["transfer-encoding"])Z.headers["transfer-encoding"]="chunked";if(!Z.headers["content-type"])Z.headers["content-type"]="text/event-stream; charset=utf-8"}else Z={status:200,headers:{"content-type":"text/event-stream; charset=utf-8","transfer-encoding":"chunked"}};return new Response(new ReadableStream({async start(Q){let G=!1;if(W?.signal?.addEventListener("abort",()=>{G=!0;try{Q.close()}catch{}}),J.value!==void 0&&J.value!==null)if(typeof J.value==="object")try{Q.enqueue(Buffer.from(JSON.stringify(J.value)))}catch{Q.enqueue(Buffer.from(J.value.toString()))}else Q.enqueue(Buffer.from(J.value.toString()));for await(let M of $){if(G)break;if(M===void 0||M===null)continue;if(typeof M==="object")try{Q.enqueue(Buffer.from(JSON.stringify(M)))}catch{Q.enqueue(Buffer.from(M.toString()))}else Q.enqueue(Buffer.from(M.toString()));await new Promise((H)=>setTimeout(()=>H(),0))}try{Q.close()}catch{}}}),Z)};async function*FX(Y){let X=Y.body;if(!X)return;let $=X.getReader(),Z=new TextDecoder;try{while(!0){let{done:W,value:J}=await $.read();if(W)break;yield Z.decode(J)}}finally{$.releaseLock()}}var eZ=(Y)=>{if(typeof Y.status==="string")Y.status=sZ[Y.status];if(Y.cookie&&f1(Y.cookie)){let X=g2(Y.cookie);if(X)Y.headers["set-cookie"]=X}if(Y.headers["set-cookie"]&&Array.isArray(Y.headers["set-cookie"]))Y.headers=f2(new Headers(Y.headers),Y.headers["set-cookie"])},v2=(Y)=>{let X=J4(Y);return($,Z,W)=>{let J=!1;if(Z.headers instanceof Headers)for(let G of Z.headers.keys())if(G==="set-cookie"){if(J)continue;J=!0;for(let M of Z.headers.getSetCookie())$.headers.append("set-cookie",M)}else $.headers.append(G,Z.headers?.get(G)??"");else for(let G in Z.headers)$.headers.append(G,Z.headers[G]);let Q=Z.status??200;if($.status!==Q&&Q!==200&&($.status<=300||$.status>400))return $.text().then((G)=>{let M=new Response(G,{headers:$.headers,status:Z.status});if(!M.headers.has("content-length")&&M.headers.get("transfer-encoding")==="chunked")return X(FX(M),wX(M,Z),W);return M});if(!$.headers.has("content-length")&&$.headers.get("transfer-encoding")==="chunked")return X(FX($),wX($,Z),W);return $}},Z8=(Y,X,$)=>{if(f1(X.headers)||X.status!==200||X.cookie)switch(eZ(X),Y?.constructor?.name){case"String":return X.headers["content-type"]="text/plain",new Response(Y,X);case"Array":case"Object":return X.headers["content-type"]="application/json",new Response(JSON.stringify(Y),X);case"ElysiaFile":return s1(Y.value);case"File":return s1(Y,X);case"Blob":return s1(Y,X);case"ElysiaCustomStatusResponse":return X.status=Y.code,Z8(Y.response,X,$);case"ReadableStream":if(!X.headers["content-type"]?.startsWith("text/event-stream"))X.headers["content-type"]="text/event-stream; charset=utf-8";return $?.signal?.addEventListener("abort",{handleEvent(){if($?.signal&&!$?.signal?.aborted)Y.cancel()}},{once:!0}),new Response(Y,X);case void 0:if(!Y)return new Response("",X);return new Response(JSON.stringify(Y),X);case"Response":return iZ(Y,X,$);case"Error":return DX(Y,X);case"Promise":return Y.then((Z)=>Z8(Z,X,$));case"Function":return Z8(Y(),X,$);case"Number":case"Boolean":return new Response(Y.toString(),X);case"Cookie":if(Y instanceof oY)return new Response(Y.value,X);return new Response(Y?.toString(),X);case"FormData":return new Response(Y,X);default:if(Y instanceof Response)return iZ(Y,X,$);if(Y instanceof Promise)return Y.then((Z)=>Z8(Z,X));if(Y instanceof Error)return DX(Y,X);if(Y instanceof u0)return X.status=Y.code,Z8(Y.response,X,$);if(typeof Y?.next==="function")return OX(Y,X,$);if(typeof Y?.then==="function")return Y.then((Z)=>Z8(Z,X));if(typeof Y?.toResponse==="function")return Z8(Y.toResponse(),X);if("charCodeAt"in Y){let Z=Y.charCodeAt(0);if(Z===123||Z===91){if(!X.headers["Content-Type"])X.headers["Content-Type"]="application/json";return new Response(JSON.stringify(Y),X)}}return new Response(Y,X)}if(Y instanceof Response&&!Y.headers.has("content-length")&&Y.headers.get("transfer-encoding")==="chunked")return OX(FX(Y),wX(Y,X),$);if(typeof Y?.next==="function"||Y instanceof ReadableStream)return OX(Y,X,$);return cY(Y,$)},X8=(Y,X,$)=>{if(Y===void 0||Y===null)return;if(f1(X.headers)||X.status!==200||X.cookie)switch(eZ(X),Y?.constructor?.name){case"String":return X.headers["content-type"]="text/plain",new Response(Y,X);case"Array":case"Object":return X.headers["content-type"]="application/json",new Response(JSON.stringify(Y),X);case"ElysiaFile":return s1(Y.value);case"File":return s1(Y,X);case"Blob":return s1(Y,X);case"ElysiaCustomStatusResponse":return X.status=Y.code,X8(Y.response,X,$);case"ReadableStream":if(!X.headers["content-type"]?.startsWith("text/event-stream"))X.headers["content-type"]="text/event-stream; charset=utf-8";return $?.signal?.addEventListener("abort",{handleEvent(){if($?.signal&&!$?.signal?.aborted)Y.cancel()}},{once:!0}),new Response(Y,X);case void 0:if(!Y)return;return new Response(JSON.stringify(Y),X);case"Response":return iZ(Y,X,$);case"Promise":return Y.then((Z)=>X8(Z,X));case"Error":return DX(Y,X);case"Function":return X8(Y(),X);case"Number":case"Boolean":return new Response(Y.toString(),X);case"FormData":return new Response(Y);case"Cookie":if(Y instanceof oY)return new Response(Y.value,X);return new Response(Y?.toString(),X);default:if(Y instanceof Response)return iZ(Y,X,$);if(Y instanceof Promise)return Y.then((Z)=>X8(Z,X));if(Y instanceof Error)return DX(Y,X);if(Y instanceof u0)return X.status=Y.code,X8(Y.response,X,$);if(typeof Y?.next==="function")return OX(Y,X,$);if(typeof Y?.then==="function")return Y.then((Z)=>X8(Z,X));if(typeof Y?.toResponse==="function")return X8(Y.toResponse(),X);if("charCodeAt"in Y){let Z=Y.charCodeAt(0);if(Z===123||Z===91){if(!X.headers["Content-Type"])X.headers["Content-Type"]="application/json";return new Response(JSON.stringify(Y),X)}}return new Response(Y,X)}else switch(Y?.constructor?.name){case"String":return X.headers["content-type"]="text/plain",new Response(Y);case"Array":case"Object":return X.headers["content-type"]="application/json",new Response(JSON.stringify(Y),X);case"ElysiaFile":return s1(Y.value);case"File":return s1(Y,X);case"Blob":return s1(Y,X);case"ElysiaCustomStatusResponse":return X.status=Y.code,X8(Y.response,X,$);case"ReadableStream":return $?.signal?.addEventListener("abort",{handleEvent(){if($?.signal&&!$?.signal?.aborted)Y.cancel()}},{once:!0}),new Response(Y,{headers:{"Content-Type":"text/event-stream; charset=utf-8"}});case void 0:if(!Y)return new Response("");return new Response(JSON.stringify(Y),{headers:{"content-type":"application/json"}});case"Response":if(!Y.headers.has("content-length")&&Y.headers.get("transfer-encoding")==="chunked")return OX(FX(Y),wX(Y),$);return Y;case"Promise":return Y.then((Z)=>{let W=X8(Z,X);if(W!==void 0)return W});case"Error":return DX(Y,X);case"Function":return cY(Y(),$);case"Number":case"Boolean":return new Response(Y.toString());case"Cookie":if(Y instanceof oY)return new Response(Y.value,X);return new Response(Y?.toString(),X);case"FormData":return new Response(Y);default:if(Y instanceof Response)return Y;if(Y instanceof Promise)return Y.then((Z)=>X8(Z,X));if(Y instanceof Error)return DX(Y,X);if(Y instanceof u0)return X.status=Y.code,X8(Y.response,X,$);if(typeof Y?.next==="function")return OX(Y,X,$);if(typeof Y?.then==="function")return Y.then((Z)=>X8(Z,X));if(typeof Y?.toResponse==="function")return X8(Y.toResponse(),X);if("charCodeAt"in Y){let Z=Y.charCodeAt(0);if(Z===123||Z===91){if(!X.headers["Content-Type"])X.headers["Content-Type"]="application/json";return new Response(JSON.stringify(Y),X)}}return new Response(Y)}},cY=(Y,X)=>{switch(Y?.constructor?.name){case"String":return new Response(Y,{headers:{"Content-Type":"text/plain"}});case"Object":case"Array":return new Response(JSON.stringify(Y),{headers:{"Content-Type":"application/json"}});case"ElysiaFile":return s1(Y.value);case"File":return s1(Y);case"Blob":return s1(Y);case"ElysiaCustomStatusResponse":return Z8(Y.response,{status:Y.code,headers:{}});case"ReadableStream":return X?.signal?.addEventListener("abort",{handleEvent(){if(X?.signal&&!X?.signal?.aborted)Y.cancel()}},{once:!0}),new Response(Y,{headers:{"Content-Type":"text/event-stream; charset=utf-8"}});case void 0:if(!Y)return new Response("");return new Response(JSON.stringify(Y),{headers:{"content-type":"application/json"}});case"Response":if(Y.headers.get("transfer-encoding")==="chunked")return OX(FX(Y),wX(Y),X);return Y;case"Error":return DX(Y);case"Promise":return Y.then(($)=>cY($,X));case"Function":return cY(Y(),X);case"Number":case"Boolean":return new Response(Y.toString());case"FormData":return new Response(Y);default:if(Y instanceof Response)return Y;if(Y instanceof Promise)return Y.then(($)=>cY($,X));if(Y instanceof Error)return DX(Y);if(Y instanceof u0)return Z8(Y.response,{status:Y.code,headers:{}});if(typeof Y?.next==="function")return OX(Y,void 0,X);if(typeof Y?.then==="function")return Y.then(($)=>Z8($,set));if(typeof Y?.toResponse==="function")return cY(Y.toResponse());if("charCodeAt"in Y){let $=Y.charCodeAt(0);if($===123||$===91)return new Response(JSON.stringify(Y),{headers:{"Content-Type":"application/json"}})}return new Response(Y)}},DX=(Y,X)=>new Response(JSON.stringify({name:Y?.name,message:Y?.message,cause:Y?.cause}),{status:X?.status!==200?X?.status??500:500,headers:X?.headers}),rq=(Y,X,$={})=>{if(typeof Y==="function")return;let Z=Z8(Y,{headers:$});if(!X.parse?.length&&!X.transform?.length&&!X.beforeHandle?.length&&!X.afterHandle?.length)return Z.clone.bind(Z)},iZ=v2({mapResponse:Z8,mapCompactResponse:cY}),OX=J4({mapResponse:Z8,mapCompactResponse:cY}),sJ={name:"web-standard",isWebStandard:!0,handler:{mapResponse:Z8,mapEarlyResponse:X8,mapCompactResponse:cY,createStaticHandler:rq},composeHandler:{mapResponseContext:"c.request",preferWebstandardHeaders:!0,headers:`c.headers={}
|
|
for(const [k,v] of c.request.headers.entries())c.headers[k]=v
|
|
`,parser:{json(Y){if(Y)return`try{c.body=await c.request.json()}catch{}
|
|
`;return`c.body=await c.request.json()
|
|
`},text(){return`c.body=await c.request.text()
|
|
`},urlencoded(){return`c.body=parseQuery(await c.request.text())
|
|
`},arrayBuffer(){return`c.body=await c.request.arrayBuffer()
|
|
`},formData(Y){let X=`
|
|
c.body={}
|
|
`;if(Y)X+="let form;try{form=await c.request.formData()}catch{}";else X+=`const form=await c.request.formData()
|
|
`;return X+`for(const key of form.keys()){if(c.body[key]) continue
|
|
const value=form.getAll(key)
|
|
if(value.length===1)c.body[key]=value[0]
|
|
else c.body[key]=value}`}}},composeGeneralHandler:{parameters:"r",createContext(Y){let X="",$="",Z=Y.setHeaders;for(let Q of Object.keys(Y.decorator))X+=`,'${Q}':decorator['${Q}']`;let W=Y.config.handler?.standardHostname??!0,J=!!Y.event.trace?.length;if($+=`const u=r.url,s=u.indexOf('/',${W?11:7}),qi=u.indexOf('?',s+1)
|
|
let p
|
|
if(qi===-1)p=u.substring(s)
|
|
else p=u.substring(s, qi)
|
|
`,J)$+=`const id=randomId()
|
|
`;if($+="const c={request:r,store,qi,path:p,url:u,redirect,error:status,status,set:{headers:",$+=Object.keys(Z??{}).length?"Object.assign({},app.setHeaders)":"Object.create(null)",$+=",status:200}",Y.inference.server)$+=",get server(){return app.getServer()}";if(J)$+=",[ELYSIA_REQUEST_ID]:id";return $+=X,$+=`}
|
|
`,$},error404(Y,X){let $="if(route===null)return ";if(X)$+=`app.handleError(c,notFound,false,${this.parameters})`;else $+=Y?"new Response(error404Message,{status:c.set.status===200?404:c.set.status,headers:c.set.headers})":"error404.clone()";return{declare:X?"":`const error404Message=notFound.message.toString()
|
|
const error404=new Response(error404Message,{status:404})
|
|
`,code:$}}},composeError:{mapResponseContext:"",validationError:"return new Response(error.message,{headers:Object.assign({'content-type':'application/json'},set.headers),status:set.status})",unknownError:"return new Response(error.message,{headers:set.headers,status:error.status??set.status??500})"},listen(){return()=>{throw new Error("WebStandard does not support listen, you might want to export default Elysia.fetch instead")}}},aq=tZ(eJ(),1),oZ=tZ(eJ(),1);function eq(Y,X=0){let $=Object.create(null),Z=1,W=2,J=4,Q=8,G=0,M=X-1,H=M,U=Y.length;for(let N=X;N<U;N++)switch(Y.charCodeAt(N)){case 38:A(N),M=N,H=N,G=0;break;case 61:if(H<=M)H=N;else G|=8;break;case 43:if(H>M)G|=4;else G|=1;break;case 37:if(H>M)G|=8;else G|=2;break}return A(U),$;function A(N){let O=H>M,z=O?H:N;if(z<=M+1)return;let L=Y.slice(M+1,z);if(G&1)L=L.replace(/\+/g," ");if(G&2)L=oZ.default(L)||L;if($[L]!==void 0)return;let F="";if(O){if(F=Y.slice(H+1,N),G&4)F=F.replace(/\+/g," ");if(G&8)F=oZ.default(F)||F}$[L]=F}}function vZ(Y){let X=Object.create(null),$=0,Z=1,W=2,J=4,Q=8,G=Y.length,M=-1,H=-1;for(let A=0;A<G;A++)switch(Y.charCodeAt(A)){case 38:U(Y,A),M=A,H=A,$=0;break;case 61:if(H<=M)H=A;else $|=Q;break;case 43:if(H>M)$|=J;else $|=Z;break;case 37:if(H>M)$|=Q;else $|=W;break}if(M<G)U(Y,G);return X;function U(A,N){let O=H>M,z=O?H:N,L=A.slice(M+1,z);if(!O&&L.length===0)return;let F=L;if($&Z)F=F.replace(/\+/g," ");if($&W)F=oZ.default(F)||F;let g="";if(O){let v=A.slice(H+1,N);if($&J)v=v.replace(/\+/g," ");if($&Q)v=oZ.default(v)||v;g=v}let V=X[F];if(V===void 0)X[F]=g;else if(Array.isArray(V))V.push(g);else X[F]=[V,g]}}var YW=Symbol("ElysiaTrace"),dY=()=>{let{promise:Y,resolve:X}=Promise.withResolvers(),{promise:$,resolve:Z}=Promise.withResolvers(),{promise:W,resolve:J}=Promise.withResolvers(),Q=[],G=[];return[(M)=>{if(M)Q.push(M);return Y},(M)=>{let H=[],U=[],A=null;for(let O=0;O<(M.total??0);O++){let{promise:z,resolve:L}=Promise.withResolvers(),{promise:F,resolve:g}=Promise.withResolvers(),{promise:V,resolve:v}=Promise.withResolvers(),s=[],o=[];H.push((x)=>{if(x)s.push(x);return z}),U.push((x)=>{let T={...x,end:F,error:V,index:O,onStop(P){if(P)o.push(P);return F}};L(T);for(let P=0;P<s.length;P++)s[P](T);return(P=null)=>{let k=performance.now();if(P)A=P;let r={end:k,error:P,get elapsed(){return k-x.begin}};for(let n=0;n<o.length;n++)o[n](r);g(k),v(P)}})}let N={...M,end:$,error:W,onEvent(O){for(let z=0;z<H.length;z++)H[z](O)},onStop(O){if(O)G.push(O);return $}};X(N);for(let O=0;O<Q.length;O++)Q[O](N);return{resolveChild:U,resolve(O=null){let z=performance.now();if(!O&&A)O=A;let L={end:z,error:O,get elapsed(){return z-M.begin}};for(let F=0;F<G.length;F++)G[F](L);Z(z),J(O)}}}]},Y_=(Y)=>{return(X)=>{let[$,Z]=dY(),[W,J]=dY(),[Q,G]=dY(),[M,H]=dY(),[U,A]=dY(),[N,O]=dY(),[z,L]=dY(),[F,g]=dY(),[V,v]=dY();return Y({id:X[q6],context:X,set:X.set,onRequest:$,onParse:W,onTransform:Q,onBeforeHandle:M,onHandle:U,onAfterHandle:N,onMapResponse:F,onAfterResponse:V,onError:z}),{request:Z,parse:J,transform:G,beforeHandle:H,handle:A,afterHandle:O,error:L,mapResponse:g,afterResponse:v}}},W8=Symbol.for("TypeBox.Kind"),X_=Symbol.for("TypeBox.Hint"),y2=(Y)=>/(\ |-|\t|\n)/.test(Y),h2=(Y,X,$=!1)=>{if(typeof X==="number")return`${Y}[${X}]`;if(y2(X))return`${Y}${$?"?.":""}["${X}"]`;return`${Y}${$?"?":""}.${X}`},$_=(Y)=>y2(Y)?`"${Y}"`:Y,D2=(Y,X=0,$)=>{if($.type!=="string"||$.const||$.trusted)return Y;let Z="";for(let W=X-1;W>=0;W--)Z+=`d.h${W}(`;return Z+Y+")".repeat(X)},d2=(Y)=>{if(!Y.allOf||W8 in Y&&(Y[W8]!=="Intersect"||Y.type!=="object"))return Y;let{allOf:X,...$}=Y;if($.properties={},W8 in $)$[W8]="Object";for(let Z of X){if(Z.type!=="object")continue;let{properties:W,required:J,type:Q,[W8]:G,...M}=Z;if(J)$.required=$.required?$.required.concat(J):J;Object.assign($,M);for(let H in Z.properties)$.properties[H]=d2(Z.properties[H])}return $},Z_=(Y,X,$)=>{let Z=Y.patternProperties["^(.*)$"]??Y.patternProperties[Object.keys(Y.patternProperties)[0]];if(!Z)return X;let W=$.array;return $.array++,`(()=>{const ar${W}s=Object.keys(${X}),ar${W}v={};for(let i=0;i<ar${W}s.length;i++){const ar${W}p=${X}[ar${W}s[i]];ar${W}v[ar${W}s[i]]=${mY(Z,`ar${W}p`,$)}}return ar${W}v})()`},W_=(Y,X,$)=>{let Z=$.array;$.array++;let W=X==="v"&&!$.unions.length,J="";if(!W)J="(()=>{";J+=`const ar${Z}v=[`;for(let Q=0;Q<Y.length;Q++){if(Q!==0)J+=",";J+=mY(Y[Q],h2(X,Q,$.parentIsOptional),$)}if(J+="];",!W)J+=`return ar${Z}v})()`;return J};function lZ(Y,X=new WeakMap){if(Y===null||typeof Y!=="object"||typeof Y==="function")return Y;if(X.has(Y))return X.get(Y);if(Array.isArray(Y)){let $=new Array(Y.length);X.set(Y,$);for(let Z=0;Z<Y.length;Z++)$[Z]=lZ(Y[Z],X);return $}if(typeof Y==="object"){let $=Object.keys(Y).concat(Object.getOwnPropertySymbols(Y)),Z={};for(let W of $)Z[W]=lZ(Y[W],X);return Z}return Y}var J_=(Y,X,$)=>{if($.TypeCompiler===void 0){if(!$.typeCompilerWanred)console.warn(new Error("[exact-mirror] TypeBox's TypeCompiler is required to use Union")),$.typeCompilerWanred=!0;return X}$.unionKeys[X]=1;let Z=$.unions.length,W=$.unions[Z]=[],J=`(()=>{
|
|
`,Q=(G)=>{if(!(W8 in G)||!G.$ref)return G;if(G[W8]==="This")return lZ($.definitions[G.$ref]);else if(G[W8]==="Ref")if(!$.modules)console.warn(new Error("[exact-mirror] modules is required when using nested cyclic reference"));else return $.modules.Import(G.$ref);return G};for(let G=0;G<Y.length;G++){let M=Q(Y[G]);if(Array.isArray(M.anyOf))for(let H=0;H<M.anyOf.length;H++)M.anyOf[H]=Q(M.anyOf[H]);else if(M.items)if(Array.isArray(M.items))for(let H=0;H<M.items.length;H++)M.items[H]=Q(M.items[H]);else M.items=Q(M.items);W.push(OY.Compile(M)),J+=`if(d.unions[${Z}][${G}].Check(${X})){return ${mY(M,X,{...$,recursion:$.recursion+1,parentIsOptional:!0})}}
|
|
`}return J+=`return ${$.removeUnknownUnionType?"undefined":X}})()`,J},mY=(Y,X,$)=>{if(!Y)return"";let Z=X==="v"&&!$.unions.length;if(W8 in Y&&Y[W8]==="Import"&&Y.$ref in Y.$defs)return mY(Y.$defs[Y.$ref],X,{...$,definitions:Object.assign($.definitions,Y.$defs)});if(Z&&Y.type!=="object"&&Y.type!=="array"&&!Y.anyOf)return`return ${D2("v",$.sanitize?.length,Y)}`;if($.recursion>=$.recursionLimit)return X;let W="";if(Y.$id&&X_ in Y)$.definitions[Y.$id]=Y;switch(Y.type){case"object":if(Y[W8]==="Record"){W=Z_(Y,X,$);break}if(Y=d2(Y),W+="{",Y.additionalProperties)W+=`...${X}`;let J=Object.keys(Y.properties);for(let H=0;H<J.length;H++){let U=J[H],A=Y.required&&!Y.required.includes(U)||Array.isArray(Y.properties[U].anyOf),N=h2(X,U,$.parentIsOptional);if(A){let z=$.array;if(X.startsWith("ar")){let L=N.slice(N.indexOf(".")+1),F=$.optionalsInArray;if(F[z])F[z].push(L);else F[z]=[L]}else $.optionals.push(N)}let O=Y.properties[U];if(Y.additionalProperties&&O.type!=="object")continue;if(H!==0)W+=",";W+=`${$_(U)}:${A?`${N}===undefined?undefined:`:""}${mY(O,N,{...$,recursion:$.recursion+1,parentIsOptional:A})}`}W+="}";break;case"array":if(Y.items.type!=="object"&&Y.items.type!=="array")if(Array.isArray(Y.items)){W=W_(Y.items,X,$);break}else if(Z)return"return v";else if(W8 in Y.items&&Y.items.$ref&&(Y.items[W8]==="Ref"||Y.items[W8]==="This"))W=mY(lZ($.definitions[Y.items.$ref]),X,{...$,parentIsOptional:!0,recursion:$.recursion+1});else{W=X;break}let Q=$.array;$.array++;let G=X;if(Z)W=`const ar${Q}v=new Array(${X}.length);`;else G=`ar${Q}s`,W=`((${G})=>{const ar${Q}v=new Array(${G}.length);`;W+=`for(let i=0;i<${G}.length;i++){const ar${Q}p=${G}[i];ar${Q}v[i]=${mY(Y.items,`ar${Q}p`,$)}`;let M=$.optionalsInArray[Q+1];if(M)for(let H=0;H<M.length;H++){let U=`ar${Q}v[i].${M[H]}`;W+=`;if(${U}===undefined)delete ${U}`}if(W+="}",!Z)W+=`return ar${Q}v})(${X})`;break;default:if(Y.$ref&&Y.$ref in $.definitions)return mY($.definitions[Y.$ref],X,$);if(Array.isArray(Y.anyOf)){W=J_(Y.anyOf,X,$);break}W=D2(X,$.sanitize?.length,Y);break}if(!Z)return W;if(Y.type==="array")return`${W}return ar0v`;W=`const x=${W}
|
|
`;for(let J=0;J<$.optionals.length;J++){let Q=$.optionals[J],G=Q.slice(1);if(W+=`if(${Q}===undefined`,$.unionKeys[Q])W+=`||x${G}===undefined`;W+=`)delete x${G.charCodeAt(0)!==63?"?":""}${G}
|
|
`}return`${W}return x`},A2=(Y,{TypeCompiler:X,modules:$,definitions:Z,sanitize:W,recursionLimit:J=8,removeUnknownUnionType:Q=!1}={})=>{let G=[];if(typeof W==="function")W=[W];let M=mY(Y,"v",{optionals:[],optionalsInArray:[],array:0,parentIsOptional:!1,unions:G,unionKeys:{},TypeCompiler:X,modules:$,definitions:Z??$?.$defs??{},sanitize:W,recursion:0,recursionLimit:J,removeUnknownUnionType:Q});if(!G.length&&!W?.length)return Function("v",M);let H;if(W?.length){H={};for(let U=0;U<W.length;U++)H[`h${U}`]=W[U]}return Function("d",`return function mirror(v){${M}}`)({unions:G,...H})},rJ=(Y)=>{if(!Y)return!1;if(Y?.[R]==="Import"&&Y.References)return Y.References().some(rJ);if(Y.schema)Y=Y.schema;return!!Y&&G0 in Y},BY=(Y)=>{if(!Y)return!1;let X=Y?.schema??Y;if(X[R]==="Import"&&Y.References)return Y.References().some(BY);if(X.anyOf)return X.anyOf.some(BY);if(X.someOf)return X.someOf.some(BY);if(X.allOf)return X.allOf.some(BY);if(X.not)return X.not.some(BY);if(X.type==="object"){let $=X.properties;if("additionalProperties"in X)return X.additionalProperties;if("patternProperties"in X)return!1;for(let Z of Object.keys($)){let W=$[Z];if(W.type==="object"){if(BY(W))return!0}else if(W.anyOf){for(let J=0;J<W.anyOf.length;J++)if(BY(W.anyOf[J]))return!0}return W.additionalProperties}return!1}if(X.type==="array"&&X.items&&!Array.isArray(X.items))return BY(X.items);return!1},zX=(Y,X)=>{if(!X)return!1;if(R in X&&X[R]===Y)return!0;if(X.type==="object"){let $=X.properties;if(!$)return!1;for(let Z of Object.keys($)){let W=$[Z];if(W.type==="object"){if(zX(Y,W))return!0}else if(W.anyOf){for(let J=0;J<W.anyOf.length;J++)if(zX(Y,W.anyOf[J]))return!0}if(R in W&&W[R]===Y)return!0}return!1}return!!X.properties&&R in X.properties&&X.properties[R]===Y},w6=(Y,X)=>{if(!X)return;let $=X.schema??X;if($[R]==="Import"&&X.References)return X.References().some((Z)=>w6(Y,Z));if($.type==="object"){let Z=$.properties;if(!Z)return!1;for(let W of Object.keys(Z)){let J=Z[W];if(Y in J)return!0;if(J.type==="object"){if(w6(Y,J))return!0}else if(J.anyOf){for(let Q=0;Q<J.anyOf.length;Q++)if(w6(Y,J.anyOf[Q]))return!0}}return!1}return Y in $},KY=(Y)=>{if(!Y)return!1;if(Y.oneOf){for(let X=0;X<Y.oneOf.length;X++)if(KY(Y.oneOf[X]))return!0}if(Y.anyOf){for(let X=0;X<Y.anyOf.length;X++)if(KY(Y.anyOf[X]))return!0}if(Y.oneOf){for(let X=0;X<Y.oneOf.length;X++)if(KY(Y.oneOf[X]))return!0}if(Y.allOf){for(let X=0;X<Y.allOf.length;X++)if(KY(Y.allOf[X]))return!0}if(Y.not&&KY(Y.not))return!0;if(Y.type==="object"&&Y.properties){let X=Y.properties;for(let $ of Object.keys(X)){let Z=X[$];if(KY(Z))return!0;if(Z.type==="array"&&Z.items&&KY(Z.items))return!0}}if(Y.type==="array"&&Y.items&&KY(Y.items))return!0;return Y[R]==="Ref"&&"$ref"in Y},WY=(Y)=>{if(!Y)return!1;if(Y.$ref&&Y.$defs&&Y.$ref in Y.$defs&&WY(Y.$defs[Y.$ref]))return!0;if(Y.oneOf){for(let X=0;X<Y.oneOf.length;X++)if(WY(Y.oneOf[X]))return!0}if(Y.anyOf){for(let X=0;X<Y.anyOf.length;X++)if(WY(Y.anyOf[X]))return!0}if(Y.allOf){for(let X=0;X<Y.allOf.length;X++)if(WY(Y.allOf[X]))return!0}if(Y.not&&WY(Y.not))return!0;if(Y.type==="object"&&Y.properties){let X=Y.properties;for(let $ of Object.keys(X)){let Z=X[$];if(WY(Z))return!0;if(Z.type==="array"&&Z.items&&WY(Z.items))return!0}}if(Y.type==="array"&&Y.items&&WY(Y.items))return!0;return I1 in Y},O2=(Y,X,$={})=>{let Z=$;if(Z.root=!0,!Array.isArray(X))return X.original=Y,C0(Y,X,Z);for(let W of X)W.original=Y,Y=C0(Y,W,Z);return Y},C0=(Y,X,$)=>{if(!Y)return Y;let Z=$.root;if(X.untilObjectFound&&!Z&&Y.type==="object")return Y;let W=X.from[R];if(Y.oneOf){for(let G=0;G<Y.oneOf.length;G++)Y.oneOf[G]=C0(Y.oneOf[G],X,$);return Y}if(Y.anyOf){for(let G=0;G<Y.anyOf.length;G++)Y.anyOf[G]=C0(Y.anyOf[G],X,$);return Y}if(Y.allOf){for(let G=0;G<Y.allOf.length;G++)Y.allOf[G]=C0(Y.allOf[G],X,$);return Y}if(Y.not)return C0(Y.not,X,$);let J=Z&&!!X.excludeRoot;if(Y[R]===W){let{anyOf:G,oneOf:M,allOf:H,not:U,properties:A,items:N,...O}=Y,z=X.to(O);if(!z)return Y;let L,F=(V)=>{let v=g(V);if(v.$id)delete v.$id;return v},g=(V)=>{if(A&&V.type==="object"){let s={};for(let[o,x]of Object.entries(A))s[o]=C0(x,X,{...$,root:!1});return{...O,...V,properties:s}}if(N&&V.type==="array")return{...O,...V,items:C0(N,X,{...$,root:!1})};let v={...O,...V};if(delete v.required,A&&V.type==="string"&&V.format==="ObjectString"&&V.default==="{}")L=B.ObjectString(A,O),v.default=JSON.stringify(V1.Create(B.Object(A))),v.properties=A;if(N&&V.type==="string"&&V.format==="ArrayString"&&V.default==="[]")L=B.ArrayString(N,O),v.default=JSON.stringify(V1.Create(B.Array(N))),v.items=N;return v};if(J){if(A){let V={};for(let[v,s]of Object.entries(A))V[v]=C0(s,X,{...$,root:!1});return{...O,properties:V}}else if(N?.map)return{...O,items:N.map((V)=>C0(V,X,{...$,root:!1}))};return O}if(z.anyOf)for(let V=0;V<z.anyOf.length;V++)z.anyOf[V]=F(z.anyOf[V]);else if(z.oneOf)for(let V=0;V<z.oneOf.length;V++)z.oneOf[V]=F(z.oneOf[V]);else if(z.allOf)for(let V=0;V<z.allOf.length;V++)z.allOf[V]=F(z.allOf[V]);else if(z.not)z.not=F(z.not);if(L)z[I1]=L[I1];if(z.anyOf||z.oneOf||z.allOf||z.not)return z;if(A){let V={};for(let[v,s]of Object.entries(A))V[v]=C0(s,X,{...$,root:!1});return{...O,...z,properties:V}}else if(N?.map)return{...O,...z,items:N.map((V)=>C0(V,X,{...$,root:!1}))};return{...O,...z}}let Q=Y?.properties;if(Q&&Z&&X.rootOnly!==!0)for(let[G,M]of Object.entries(Q))switch(M[R]){case W:let{anyOf:H,oneOf:U,allOf:A,not:N,type:O,...z}=M,L=X.to(z);if(!L)return Y;if(L.anyOf)for(let F=0;F<L.anyOf.length;F++)L.anyOf[F]={...z,...L.anyOf[F]};else if(L.oneOf)for(let F=0;F<L.oneOf.length;F++)L.oneOf[F]={...z,...L.oneOf[F]};else if(L.allOf)for(let F=0;F<L.allOf.length;F++)L.allOf[F]={...z,...L.allOf[F]};else if(L.not)L.not={...z,...L.not};Q[G]={...z,...C0(z,X,{...$,root:!1})};break;case"Object":case"Union":Q[G]=C0(M,X,{...$,root:!1});break;default:if(Array.isArray(M.items))for(let F=0;F<M.items.length;F++)M.items[F]=C0(M.items[F],X,{...$,root:!1});else if(M.anyOf||M.oneOf||M.allOf||M.not)Q[G]=C0(M,X,{...$,root:!1});else if(M.type==="array")M.items=C0(M.items,X,{...$,root:!1});break}return Y},z6=(Y)=>(X)=>{if(typeof X==="object")try{return V1.Clean(Y,X)}catch{try{return V1.Clean(Y,X)}catch{return X}}return X},R0=(Y,{models:X={},dynamic:$=!1,modules:Z,normalize:W=!1,additionalProperties:J=!1,coerce:Q=!1,additionalCoerce:G=[],validators:M,sanitize:H}={})=>{if(M=M?.filter((L)=>L),!Y){if(!M?.length)return;Y=M[0],M=M.slice(1)}let U=void 0,A=(L)=>{if(Q)return O2(L,[{from:B.Number(),to:(F)=>B.Numeric(F),untilObjectFound:!0},{from:B.Boolean(),to:(F)=>B.BooleanString(F),untilObjectFound:!0},...Array.isArray(G)?G:[G]]);return O2(L,G)},N=(L)=>{let F;if(!L)return;if(typeof L!=="string")F=L;else{let V=L.endsWith("[]"),v=V?L.substring(0,L.length-2):L;if(F=Z?.Import(v)??X[v],V)F=B.Array(F)}if(!F)return;let g;if(F[R]!=="Import"&&(g=KY(F))){let V=rZ();if(U===void 0)U=g;F=B.Module({...Z?.$defs,[V]:F}).Import(V)}if(F[R]==="Import"){let V={};for(let[s,o]of Object.entries(F.$defs))V[s]=A(o);let v=F.$ref;F=B.Module(V).Import(v)}else if(Q||G)F=A(F);return F},O=N(Y);if(M?.length){let L=!1,{schema:F,notObjects:g}=G_([O,...M.map(N)]);if(g){if(O=B.Intersect([...F?[F]:[],...g.map((V)=>{let v=N(V);if(v.type==="object"&&"additionalProperties"in v){if(!L&&v.additionalProperties===!1)L=!0;delete v.additionalProperties}return v})]),O.type==="object"&&L)O.additionalProperties=!1}}else if(O.type==="object"&&"additionalProperties"in O===!1)O.additionalProperties=J;if($){let L={schema:O,references:"",checkFunc:()=>{},code:"",Check:(F)=>V1.Check(O,F),Errors:(F)=>V1.Errors(O,F),Code:()=>"",Clean:z6(O),Decode:(F)=>V1.Decode(O,F),Encode:(F)=>V1.Encode(O,F),get hasAdditionalProperties(){if("~hasAdditionalProperties"in this)return this["~hasAdditionalProperties"];return this["~hasAdditionalProperties"]=BY(O)},get hasDefault(){if("~hasDefault"in this)return this["~hasDefault"];return this["~hasDefault"]=w6("default",O)},get isOptional(){if("~isOptional"in this)return this["~isOptional"];return this["~isOptional"]=rJ(O)},get hasTransform(){if("~hasTransform"in this)return this["~hasTransform"];return this["~hasTransform"]=WY(O)},"~hasRef":U,get hasRef(){if("~hasRef"in this)return this["~hasRef"];return this["~hasRef"]=WY(O)}};if(O.config){if(L.config=O.config,L?.schema?.config)delete L.schema.config}if(W&&O.additionalProperties===!1)if(W===!0||W==="exactMirror")try{L.Clean=A2(O,{TypeCompiler:OY,sanitize:H?.(),modules:Z})}catch{console.warn("Failed to create exactMirror. Please report the following code to https://github.com/elysiajs/elysia/issues"),console.warn(O),L.Clean=z6(O)}else L.Clean=z6(O);return L.parse=(F)=>{try{return L.Decode(F)}catch(g){throw[...L.Errors(F)].map(JY)}},L.safeParse=(F)=>{try{return{success:!0,data:L.Decode(F),error:null}}catch(g){let V=[...z.Errors(F)].map(JY);return{success:!1,data:null,error:V[0]?.summary,errors:V}}},L}let z=OY.Compile(O,Object.values(X));if(O.config){if(z.config=O.config,z?.schema?.config)delete z.schema.config}if(W===!0||W==="exactMirror")try{z.Clean=A2(O,{TypeCompiler:OY,sanitize:H?.(),modules:Z})}catch(L){console.warn("Failed to create exactMirror. Please report the following code to https://github.com/elysiajs/elysia/issues"),console.warn(O),z.Clean=z6(O)}else z.Clean=z6(O);return z.parse=(L)=>{try{return z.Decode(L)}catch(F){throw[...z.Errors(L)].map(JY)}},z.safeParse=(L)=>{try{return{success:!0,data:z.Decode(L),error:null}}catch(F){let g=[...z.Errors(L)].map(JY);return{success:!1,data:null,error:g[0]?.summary,errors:g}}},Object.assign(z,{get hasAdditionalProperties(){if("~hasAdditionalProperties"in this)return this["~hasAdditionalProperties"];return this["~hasAdditionalProperties"]=BY(z)},get hasDefault(){if("~hasDefault"in this)return this["~hasDefault"];return this["~hasDefault"]=w6("default",z)},get isOptional(){if("~isOptional"in this)return this["~isOptional"];return this["~isOptional"]=rJ(z)},get hasTransform(){if("~hasTransform"in this)return this["~hasTransform"];return this["~hasTransform"]=WY(O)},get hasRef(){if("~hasRef"in this)return this["~hasRef"];return this["~hasRef"]=KY(O)},"~hasRef":U}),z},Q_=(Y)=>Y[R]==="Union"||!Y.schema&&!!Y.anyOf,G_=(Y)=>{if(Y.length===0)return{schema:void 0,notObjects:[]};if(Y.length===1)return Y[0].type==="object"?{schema:Y[0],notObjects:[]}:{schema:void 0,notObjects:Y};let X,$=[],Z=!1,W=!1;for(let J of Y){if(J.type!=="object"){$.push(J);continue}if("additionalProperties"in J){if(J.additionalProperties===!0)Z=!0;else if(J.additionalProperties===!1)W=!0}if(!X){X=J;continue}X={...X,...J,properties:{...X.properties,...J.properties},required:[...X?.required??[],...J.required]}}if(X){if(X.required)X.required=[...new Set(X.required)];if(W)X.additionalProperties=!1;else if(Z)X.additionalProperties=!0}return{schema:X,notObjects:$}},N2=(Y,{models:X={},modules:$,dynamic:Z=!1,normalize:W=!1,additionalProperties:J=!1,validators:Q=[],sanitize:G})=>{if(Q=Q.filter((U)=>U),!Y){if(!Q?.length)return;Y=Q[0],Q=Q.slice(1)}let M;if(typeof Y!=="string")M=Y;else{let U=Y.endsWith("[]"),A=U?Y.substring(0,Y.length-2):Y;if(M=$.Import(A)??X[A],U)M=B.Array(M)}if(!M)return;if(R in M)return{200:R0(M,{modules:$,models:X,additionalProperties:J,dynamic:Z,normalize:W,coerce:!1,additionalCoerce:[],validators:Q.map((U)=>U[200]),sanitize:G})};let H={};return Object.keys(M).forEach((U)=>{if(isNaN(+U))return;let A=M[+U];if(typeof A==="string"){if(A in X){let N=X[A];H[+U]=R in N?R0(N,{modules:$,models:X,additionalProperties:J,dynamic:Z,normalize:W,coerce:!1,additionalCoerce:[],validators:Q.map((O)=>O[+U]),sanitize:G}):N}return}H[+U]=R in A?R0(A,{modules:$,models:X,additionalProperties:J,dynamic:Z,normalize:W,coerce:!1,additionalCoerce:[],validators:Q.map((N)=>N[+U]),sanitize:G}):A}),H},dJ,mX=()=>{if(!dJ)dJ=[{from:B.Object({}),to:()=>B.ObjectString({}),excludeRoot:!0},{from:B.Array(B.Any()),to:()=>B.ArrayString(B.Any())}];return dJ},mJ,aJ=()=>{if(!mJ)mJ=[{from:B.Number(),to:(Y)=>B.Numeric(Y),rootOnly:!0},{from:B.Boolean(),to:(Y)=>B.BooleanString(Y),rootOnly:!0}];return mJ},m2=({validator:Y,modules:X,defaultConfig:$={},config:Z,dynamic:W,models:J,validators:Q,sanitize:G})=>{let M=R0(Y,{modules:X,dynamic:W,models:J,additionalProperties:!0,coerce:!0,additionalCoerce:mX(),validators:Q,sanitize:G});if(M)M.config=j2(M.config,Z);else M=R0(B.Cookie(B.Any()),{modules:X,dynamic:W,models:J,additionalProperties:!0,validators:Q,sanitize:G}),M.config=$;return M},Z0=(Y,X)=>X?Y:"",M_=["json","text","urlencoded","arrayBuffer","formdata","application/json","text/plain","application/x-www-form-urlencoded","application/octet-stream","multipart/form-data"],Q4=({context:Y="c",trace:X=[],addFn:$})=>{if(!X.length)return()=>{return{resolveChild(){return()=>{}},resolve(){}}};for(let Z=0;Z<X.length;Z++)$(`let report${Z},reportChild${Z},reportErr${Z},reportErrChild${Z};let trace${Z}=${Y}[ELYSIA_TRACE]?.[${Z}]??trace[${Z}](${Y});
|
|
`);return(Z,{name:W,total:J=0}={})=>{if(!W)W="anonymous";let Q=Z==="error"?"reportErr":"report";for(let G=0;G<X.length;G++)$(`${Q}${G} = trace${G}.${Z}({id,event:'${Z}',name:'${W}',begin:performance.now(),total:${J}})
|
|
`);return{resolve(){for(let G=0;G<X.length;G++)$(`${Q}${G}.resolve()
|
|
`)},resolveChild(G){for(let M=0;M<X.length;M++)$(`${Q}Child${M}=${Q}${M}.resolveChild?.shift()?.({id,event:'${Z}',name:'${G}',begin:performance.now()})
|
|
`);return(M)=>{for(let H=0;H<X.length;H++)if(M)$(`if(${M} instanceof Error){${Q}Child${H}?.(${M}) }else{${Q}Child${H}?.()}`);else $(`${Q}Child${H}?.()
|
|
`)}}}}},A6=({schema:Y,name:X,type:$,typeAlias:Z=$,normalize:W,ignoreTryCatch:J=!1})=>{if(!W||!Y.Clean||Y.hasAdditionalProperties)return"";if(W===!0||W==="exactMirror"){if(J)return`${X}=validator.${Z}.Clean(${X})
|
|
`;return`try{${X}=validator.${Z}.Clean(${X})
|
|
}catch{}`}if(W==="typebox")return`${X}=validator.${Z}.Clean(${X})
|
|
`;return""},H_=({injectResponse:Y="",normalize:X=!1,validator:$,encodeSchema:Z=!1,isStaticResponse:W=!1,hasSanitize:J=!1})=>({validate:(Q,G=`c.${Q}`)=>`c.set.status=422;throw new ValidationError('${Q}',validator.${Q},${G})`,response:(Q="r")=>{if(W)return"";let G=Y+`
|
|
`;G+=`if(${Q} instanceof ElysiaCustomStatusResponse){c.set.status=${Q}.code
|
|
${Q}=${Q}.response}switch(c.set.status){`;for(let[M,H]of Object.entries($.response)){G+=`
|
|
case ${M}:if(${Q} instanceof Response)break
|
|
`;let U=H.schema?.noValidate===!0,A=U||J,N=({ignoreTryCatch:z=!1}={})=>A6({name:Q,schema:H,type:"response",typeAlias:`response[${M}]`,normalize:X,ignoreTryCatch:z});if(A)G+=N();let O=!A&&X&&!U;if(Z&&H.hasTransform)G+=`try{${Q}=validator.response[${M}].Encode(${Q})
|
|
c.set.status=${M}}catch{`+(O?`try{
|
|
`+N({ignoreTryCatch:!0})+`${Q}=validator.response[${M}].Encode(${Q})
|
|
}catch{throw new ValidationError('response',validator.response[${M}],${Q})}`:`throw new ValidationError('response',validator.response[${M}],${Q})`)+"}";else{if(!A)G+=N();if(!U)G+=`if(validator.response[${M}].Check(${Q})===false)throw new ValidationError('response',validator.response[${M}],${Q})
|
|
c.set.status=${M}
|
|
`}G+=`break
|
|
`}return G+"}"}}),V$=(Y)=>{return(Y?.fn??Y).constructor.name==="AsyncFunction"},U_=/=>\s?response\.clone\(/,z_=/(?:return|=>)\s?\S+\(|a(?:sync|wait)/,N0=(Y)=>{let X=typeof Y==="object";if(X&&Y.isAsync!==void 0)return Y.isAsync;let $=X?Y.fn:Y;if($.constructor.name==="AsyncFunction")return!0;let Z=$.toString();if(U_.test(Z)){if(X)Y.isAsync=!1;return!1}let W=z_.test(Z);if(X)Y.isAsync=W;return W},F6=(Y)=>{let X=typeof Y==="object";if(X&&Y.hasReturn!==void 0)return Y.hasReturn;let $=X?Y.fn.toString():typeof Y==="string"?Y.toString():Y,Z=$.indexOf(")");if($.charCodeAt(Z+2)===61&&$.charCodeAt(Z+5)!==123){if(X)Y.hasReturn=!0;return!0}let W=$.includes("return");if(X)Y.hasReturn=W;return W},bZ=(Y)=>{let X=Y?.fn??Y;return X.constructor.name==="AsyncGeneratorFunction"||X.constructor.name==="GeneratorFunction"},D_=({app:Y,path:X,method:$,hooks:Z,validator:W,handler:J,allowMeta:Q=!1,inference:G})=>{let M=Y["~adapter"].composeHandler,H=Y["~adapter"].handler,U=typeof J==="function";if(!U){if(J=H.mapResponse(J,{headers:Y.setHeaders??{}}),Z.parse?.length&&Z.transform?.length&&Z.beforeHandle?.length&&Z.afterHandle?.length){if(J instanceof Response)return Function("a",`"use strict";
|
|
return function(){return a.clone()}`)(J);return Function("a",`"use strict";
|
|
return function(){return a}`)(J)}}let A=U?"handler(c)":"handler",N=!!Z.afterResponse?.length,O=!!Z.trace?.length,z="";if(G=L6(Z,G),G=L6({handler:J},G),M.declare){let m=M.declare(G);if(m)z+=m}if(G.server)z+=`Object.defineProperty(c,'server',{get:function(){return getServer()}})
|
|
`;W.createBody?.(),W.createQuery?.(),W.createHeaders?.(),W.createParams?.(),W.createCookie?.(),W.createResponse?.();let L=!!W.body||!!W.headers||!!W.params||!!W.query||!!W.cookie||!!W.response,F=G.query||!!W.query,g=Z.parse?.length===1&&Z.parse[0].fn==="none",V=$!==""&&$!=="GET"&&$!=="HEAD"&&(G.body||!!W.body||!!Z.parse?.length)&&!g,v=Y.setHeaders,s=v&&!!Object.keys(v).length,o=G.headers||!!W.headers||M.preferWebstandardHeaders!==!0&&G.body,x=G.cookie||!!W.cookie,T=W.cookie?.config?j2(W?.cookie?.config,Y.config.cookie):Y.config.cookie,P="",k=()=>{if(P)return P;if(T?.sign){if(!T.secrets)throw new Error(`t.Cookie required secret which is not set in (${$}) ${X}.`);let m=!T.secrets?void 0:typeof T.secrets==="string"?T.secrets:T.secrets[0];if(P+=`const _setCookie = c.set.cookie
|
|
if(_setCookie){`,T.sign===!0)P+=`for(const [key, cookie] of Object.entries(_setCookie)){c.set.cookie[key].value=await signCookie(cookie.value,'${m}')}`;else for(let b of T.sign)P+=`if(_setCookie['${b}']?.value)c.set.cookie['${b}'].value=await signCookie(_setCookie['${b}'].value,'${m}')
|
|
`;P+=`}
|
|
`}return P},r=Y.config.normalize,n=Y.config.encodeSchema,X1=H_({normalize:r,validator:W,encodeSchema:n,isStaticResponse:J instanceof Response,hasSanitize:!!Y.config.sanitize});if(o)z+=M.headers;if(O)z+=`const id=c[ELYSIA_REQUEST_ID]
|
|
`;let W1=Q4({trace:Z.trace,addFn:(m)=>{z+=m}});if(z+="try{",x){let m=(D,E)=>{let w=T?.[D]??E;if(!w)return typeof E==="string"?`${D}:"${E}",`:`${D}:${E},`;if(typeof w==="string")return`${D}:'${w}',`;if(w instanceof Date)return`${D}: new Date(${w.getTime()}),`;return`${D}:${w},`},b=T?`{secrets:${T.secrets!==void 0?typeof T.secrets==="string"?`'${T.secrets}'`:"["+T.secrets.reduce((D,E)=>D+`'${E}',`,"")+"]":"undefined"},sign:${T.sign===!0?!0:T.sign!==void 0?"["+T.sign.reduce((D,E)=>D+`'${E}',`,"")+"]":"undefined"},`+m("domain")+m("expires")+m("httpOnly")+m("maxAge")+m("path","/")+m("priority")+m("sameSite")+m("secure")+"}":"undefined";if(o)z+=`
|
|
c.cookie=await parseCookie(c.set,c.headers.cookie,${b})
|
|
`;else z+=`
|
|
c.cookie=await parseCookie(c.set,c.request.headers.get('cookie'),${b})
|
|
`}if(F){let m=[];if(W.query&&W.query.schema.type==="object"){let b=W.query.schema.properties;if(!W.query.hasAdditionalProperties)for(let[D,E]of Object.entries(b)){let w=E,y=w.type==="array"||!!w.anyOf?.some((l)=>l.type==="string"&&l.format==="ArrayString");if(w&&G0 in w&&w.type==="array"&&w.items)w=w.items;let{type:f,anyOf:h}=w;m.push({key:D,isArray:y,isNestedObjectArray:y&&w.items?.type==="object"||!!w.items?.anyOf?.some((l)=>l.type==="object"||l.type==="array"),isObject:f==="object"||h?.some((l)=>l.type==="string"&&l.format==="ArrayString"),anyOf:!!h})}}if(!m.length)z+="if(c.qi===-1){c.query={}}else{c.query=parseQueryFromURL(c.url,c.qi+1)}";else{z+=`if(c.qi!==-1){let url='&'+c.url.slice(c.qi+1)
|
|
`;let b=0;for(let{key:D,isArray:E,isObject:w,isNestedObjectArray:y,anyOf:f}of m){let h=(b===0?"let ":"")+`memory=url.indexOf('&${D}=')
|
|
let a${b}
|
|
`;if(E)if(z+=h,y)z+=`while(memory!==-1){const start=memory+${D.length+2}
|
|
memory=url.indexOf('&',start)
|
|
if(a${b}===undefined)
|
|
a${b}=''
|
|
else
|
|
a${b}+=','
|
|
let temp
|
|
if(memory===-1)temp=decodeURIComponent(url.slice(start).replace(/\\+/g,' '))
|
|
else temp=decodeURIComponent(url.slice(start, memory).replace(/\\+/g,' '))
|
|
const charCode=temp.charCodeAt(0)
|
|
if(charCode!==91&&charCode !== 123)
|
|
temp='"'+temp+'"'
|
|
a${b}+=temp
|
|
if(memory===-1)break
|
|
memory=url.indexOf('&${D}=',memory)
|
|
if(memory===-1)break}try{if(a${b}.charCodeAt(0)===91)a${b} = JSON.parse(a${b})
|
|
else
|
|
a${b}=JSON.parse('['+a${b}+']')}catch{}
|
|
`;else z+=`while(memory!==-1){const start=memory+${D.length+2}
|
|
memory=url.indexOf('&',start)
|
|
if(a${b}===undefined)a${b}=[]
|
|
if(memory===-1){const temp=decodeURIComponent(url.slice(start)).replace(/\\+/g,' ')
|
|
if(temp.includes(',')){a${b}=a${b}.concat(temp.split(','))}else{a${b}.push(decodeURIComponent(url.slice(start)).replace(/\\+/g,' '))}
|
|
break}else{const temp=decodeURIComponent(url.slice(start, memory)).replace(/\\+/g,' ')
|
|
if(temp.includes(',')){a${b}=a${b}.concat(temp.split(','))}else{a${b}.push(temp)}
|
|
}memory=url.indexOf('&${D}=',memory)
|
|
if(memory===-1) break
|
|
}`;else if(w)z+=h+`if(memory!==-1){const start=memory+${D.length+2}
|
|
memory=url.indexOf('&',start)
|
|
if(memory===-1)a${b}=decodeURIComponent(url.slice(start).replace(/\\+/g,' '))else a${b}=decodeURIComponent(url.slice(start,memory).replace(/\\+/g,' '))if(a${b}!==undefined)try{a${b}=JSON.parse(a${b})}catch{}}`;else{if(z+=h+`if(memory!==-1){const start=memory+${D.length+2}
|
|
memory=url.indexOf('&',start)
|
|
if(memory===-1)a${b}=decodeURIComponent(url.slice(start).replace(/\\+/g,' '))
|
|
else{a${b}=decodeURIComponent(url.slice(start,memory).replace(/\\+/g,' '))`,f)z+=`
|
|
let deepMemory=url.indexOf('&${D}=',memory)
|
|
if(deepMemory!==-1){a${b}=[a${b}]
|
|
let first=true
|
|
while(true){const start=deepMemory+${D.length+2}
|
|
if(first)first=false
|
|
else deepMemory = url.indexOf('&', start)
|
|
let value
|
|
if(deepMemory===-1)value=url.slice(start).replace(/\\+/g,' ')
|
|
else value=url.slice(start, deepMemory).replace(/\\+/g,' ')
|
|
value=decodeURIComponent(value)
|
|
if(value===null){if(deepMemory===-1){break}else{continue}}
|
|
const vStart=value.charCodeAt(0)
|
|
const vEnd=value.charCodeAt(value.length - 1)
|
|
if((vStart===91&&vEnd===93)||(vStart===123&&vEnd===125))
|
|
try{a${b}.push(JSON.parse(value))}catch{a${b}.push(value)}if(deepMemory===-1)break}}`;z+="}}"}b++,z+=`
|
|
`}z+="c.query={"+m.map(({key:D},E)=>`'${D}':a${E}`).join(",")+"}",z+=`} else c.query = {}
|
|
`}}let $1=typeof J==="function"&&N0(J),H8=O||Z.afterResponse?.length?"c.response= ":"",I0=x||V||$1||!!Z.parse?.length||!!Z.afterHandle?.some(N0)||!!Z.beforeHandle?.some(N0)||!!Z.transform?.some(N0)||!!Z.mapResponse?.some(N0),y8=(typeof J==="function"?bZ(J):!1)||!!Z.beforeHandle?.some(bZ)||!!Z.afterHandle?.some(bZ)||!!Z.transform?.some(bZ),qY=Object.keys(W.response??{}),R8=qY.length>1,GY=qY.length===0||qY.length===1&&qY[0]==="200",X0=G.cookie||G.set||o||O||R8||!GY||U&&s||y8,D0=(m="r")=>`return ${X0?"mapResponse":"mapCompactResponse"}(${H8}${m}${X0?",c.set":""}${E0})
|
|
`,E0=y8&&M.mapResponseContext?`,${M.mapResponseContext}`:"";if(O||G.route)z+=`c.route=\`${X}\`
|
|
`;let h8=W1("parse",{total:Z.parse?.length});if(V){let m=!!Z.parse?.length||G.body||W.body;if(M.parser.declare)z+=M.parser.declare;z+=`
|
|
try{`;let b=typeof Z.parse==="string"?Z.parse:Array.isArray(Z.parse)&&Z.parse.length===1?typeof Z.parse[0]==="string"?Z.parse[0]:typeof Z.parse[0].fn==="string"?Z.parse[0].fn:void 0:void 0;if(!b&&W.body&&!Z.parse?.length){let D=W.body.schema;if(D&&D.anyOf&&D[R]==="Union"&&D.anyOf?.length===2&&D.anyOf?.find((E)=>E[R]==="ElysiaForm"))b="formdata"}if(b&&M_.includes(b)){let D=W1("parse",{total:Z.parse?.length}),E=!!W.body?.isOptional;switch(b){case"json":case"application/json":z+=M.parser.json(E);break;case"text":case"text/plain":z+=M.parser.text(E);break;case"urlencoded":case"application/x-www-form-urlencoded":z+=M.parser.urlencoded(E);break;case"arrayBuffer":case"application/octet-stream":z+=M.parser.arrayBuffer(E);break;case"formdata":case"multipart/form-data":z+=M.parser.formData(E);break;default:if(b[0]in Y["~parser"])z+=o?"let contentType = c.headers['content-type']":"let contentType = c.request.headers.get('content-type')",z+=`
|
|
if(contentType){const index=contentType.indexOf(';')
|
|
if(index!==-1)contentType=contentType.substring(0,index)}
|
|
else{contentType=''}c.contentType=contentType
|
|
let result=parser['${b}'](c, contentType)
|
|
if(result instanceof Promise)result=await result
|
|
if(result instanceof ElysiaCustomStatusResponse)throw result
|
|
if(result!==undefined)c.body=result
|
|
delete c.contentType
|
|
`;break}D.resolve()}else if(m){z+=`
|
|
`;let D=Z.parse?.length?"let":"const";z+=o?`${D} contentType=c.headers['content-type']
|
|
`:`${D} contentType=c.request.headers.get('content-type')
|
|
`;let E=!1;if(Z.parse?.length)z+=`if(contentType){
|
|
const index=contentType.indexOf(';')
|
|
|
|
if(index!==-1)contentType=contentType.substring(0,index)}else{contentType=''}let used=false
|
|
c.contentType=contentType
|
|
`;else{E=!0;let y=!!W.body?.isOptional;z+=`if(contentType)switch(contentType.charCodeAt(12)){
|
|
case 106:`+M.parser.json(y)+`break
|
|
case 120:`+M.parser.urlencoded(y)+`break
|
|
case 111:`+M.parser.arrayBuffer(y)+`break
|
|
case 114:`+M.parser.formData(y)+`break
|
|
default:if(contentType.charCodeAt(0)===116){`+M.parser.text(y)+`}break
|
|
}`}let w=W1("parse",{total:Z.parse?.length});if(Z.parse)for(let y=0;y<Z.parse.length;y++){let f=`bo${y}`;if(y!==0)z+=`
|
|
if(!used){`;if(typeof Z.parse[y].fn==="string"){let h=w.resolveChild(Z.parse[y].fn),l=!!W.body?.isOptional;switch(Z.parse[y].fn){case"json":case"application/json":E=!0,z+=M.parser.json(l);break;case"text":case"text/plain":E=!0,z+=M.parser.text(l);break;case"urlencoded":case"application/x-www-form-urlencoded":E=!0,z+=M.parser.urlencoded(l);break;case"arrayBuffer":case"application/octet-stream":E=!0,z+=M.parser.arrayBuffer(l);break;case"formdata":case"multipart/form-data":E=!0,z+=M.parser.formData(l);break;default:z+=`let ${f}=parser['${Z.parse[y].fn}'](c,contentType)
|
|
if(${f} instanceof Promise)${f}=await ${f}
|
|
if(${f}!==undefined){c.body=${f};used=true;}
|
|
`}h()}else{let h=w.resolveChild(Z.parse[y].fn.name);z+=`let ${f}=e.parse[${y}]
|
|
${f}=${f}(c,contentType)
|
|
if(${f} instanceof Promise)${f}=await ${f}
|
|
if(${f}!==undefined){c.body=${f};used=true}`,h()}if(y!==0)z+="}";if(E)break}if(w.resolve(),!E){let y=!!W.body?.isOptional;if(Z.parse?.length)z+=`
|
|
if(!used){
|
|
if(!contentType) throw new ParseError()
|
|
`;z+="switch(contentType){",z+=`case 'application/json':
|
|
`+M.parser.json(y)+`break
|
|
case 'text/plain':`+M.parser.text(y)+`break
|
|
case 'application/x-www-form-urlencoded':`+M.parser.urlencoded(y)+`break
|
|
case 'application/octet-stream':`+M.parser.arrayBuffer(y)+`break
|
|
case 'multipart/form-data':`+M.parser.formData(y)+`break
|
|
`;for(let f of Object.keys(Y["~parser"]))z+=`case '${f}':let bo${f}=parser['${f}'](c,contentType)
|
|
if(bo${f} instanceof Promise)bo${f}=await bo${f}
|
|
if(bo${f} instanceof ElysiaCustomStatusResponse)throw result
|
|
if(bo${f}!==undefined)c.body=bo${f}
|
|
break
|
|
`;if(Z.parse?.length)z+="}";z+="}"}if(Z.parse?.length)z+=`
|
|
delete c.contentType`}z+="}catch(error){throw new ParseError(error)}"}if(h8.resolve(),Z?.transform){let m=W1("transform",{total:Z.transform.length});if(Z.transform.length)z+=`let transformed
|
|
`;for(let b=0;b<Z.transform.length;b++){let D=Z.transform[b],E=m.resolveChild(D.fn.name);if(z+=N0(D)?`transformed=await e.transform[${b}](c)
|
|
`:`transformed=e.transform[${b}](c)
|
|
`,D.subType==="mapDerive")z+=`if(transformed instanceof ElysiaCustomStatusResponse)throw transformed
|
|
else{transformed.request=c.request
|
|
transformed.store=c.store
|
|
transformed.qi=c.qi
|
|
transformed.path=c.path
|
|
transformed.url=c.url
|
|
transformed.redirect=c.redirect
|
|
transformed.set=c.set
|
|
transformed.error=c.error
|
|
c=transformed}`;else z+=`if(transformed instanceof ElysiaCustomStatusResponse)throw transformed
|
|
else Object.assign(c,transformed)
|
|
`;E()}m.resolve()}let y0=[];if(W){if(W.headers){if(W.headers.hasDefault)for(let[m,b]of Object.entries(V1.Default(W.headers.schema,{}))){let D=typeof b==="object"?JSON.stringify(b):typeof b==="string"?`'${b}'`:b;if(D!==void 0)z+=`c.headers['${m}']??=${D}
|
|
`}if(z+=A6({name:"c.headers",schema:W.headers,type:"headers",normalize:r}),W.headers.isOptional)z+="if(isNotEmpty(c.headers)){";if(W.body?.schema?.noValidate!==!0)z+="if(validator.headers.Check(c.headers) === false){"+X1.validate("headers")+"}";if(W.headers.hasTransform)z+=`c.headers=validator.headers.Decode(c.headers)
|
|
`;if(W.headers.isOptional)z+="}"}if(W.params){if(W.params.hasDefault)for(let[m,b]of Object.entries(V1.Default(W.params.schema,{}))){let D=typeof b==="object"?JSON.stringify(b):typeof b==="string"?`'${b}'`:b;if(D!==void 0)z+=`c.params['${m}']??=${D}
|
|
`}if(W.params?.schema?.noValidate!==!0)z+="if(validator.params.Check(c.params)===false){"+X1.validate("params")+"}";if(W.params.hasTransform)z+=`c.params=validator.params.Decode(c.params)
|
|
`}if(W.query){if(W.query.hasDefault)for(let[m,b]of Object.entries(V1.Default(W.query.schema,{}))){let D=typeof b==="object"?JSON.stringify(b):typeof b==="string"?`'${b}'`:b;if(D!==void 0)z+=`if(c.query['${m}']===undefined)c.query['${m}']=${D}
|
|
`;z+=A6({name:"c.query",schema:W.query,type:"query",normalize:r})}if(W.query.isOptional)z+="if(isNotEmpty(c.query)){";if(W.query?.schema?.noValidate!==!0)z+="if(validator.query.Check(c.query)===false){"+X1.validate("query")+"}";if(W.query.hasTransform)z+=`c.query=validator.query.Decode(Object.assign({},c.query))
|
|
`;if(W.query.isOptional)z+="}"}if(V&&W.body){if(W.body.hasTransform||W.body.isOptional)z+=`const isNotEmptyObject=c.body&&(typeof c.body==="object"&&isNotEmpty(c.body))
|
|
`;let m=Q_(W.body.schema),b=!1;if(W.body.hasDefault){let D=V1.Default(W.body.schema,W.body.schema.type==="object"||W.body.schema[R]==="Import"&&W.body.schema.$defs[W.body.schema.$ref][R]==="Object"?{}:void 0);if(!m&&D&&typeof D==="object"&&(zX("File",W.body.schema)||zX("Files",W.body.schema))){b=!0;for(let[w,y]of Object.entries(D))if(y==="File"||y==="Files")delete D[w];if(!f1(D))D=void 0}let E=typeof D==="object"?JSON.stringify(D):typeof D==="string"?`'${D}'`:D;if(D!==void 0&&D!==null)if(Array.isArray(D))z+=`if(!c.body)c.body=${E}
|
|
`;else if(typeof D==="object")z+=`c.body=Object.assign(${E},c.body)
|
|
`;else z+=`c.body=${E}
|
|
`;if(z+=A6({name:"c.body",schema:W.body,type:"body",normalize:r}),W.body?.schema?.noValidate!==!0)if(W.body.isOptional)z+="if(isNotEmptyObject&&validator.body.Check(c.body)===false){"+X1.validate("body")+"}";else z+="if(validator.body.Check(c.body)===false){"+X1.validate("body")+"}"}else if(z+=A6({name:"c.body",schema:W.body,type:"body",normalize:r}),W.body?.schema?.noValidate!==!0)if(W.body.isOptional)z+="if(isNotEmptyObject&&validator.body.Check(c.body)===false){"+X1.validate("body")+"}";else z+="if(validator.body.Check(c.body)===false){"+X1.validate("body")+"}";if(W.body.hasTransform)z+=`if(isNotEmptyObject)c.body=validator.body.Decode(c.body)
|
|
`;if(m&&W.body.schema.anyOf?.length){let D=Object.values(W.body.schema.anyOf);for(let E=0;E<D.length;E++){let w=D[E];if(zX("File",w)||zX("Files",w)){let y=R0(w,{modules:Y.definitions.typebox,dynamic:!Y.config.aot,models:Y.definitions.type,normalize:Y.config.normalize,additionalCoerce:aJ(),sanitize:()=>Y.config.sanitize});if(y){let f=y0.length===0,h=Object.entries(w.properties),l=f?`
|
|
`:" else ";l+=`if(fileUnions[${y0.length}].Check(c.body)){`;let k1="",x0=0;for(let V0=0;V0<h.length;V0++){let[U8,_Y]=h[V0];if(!_Y.extension||_Y[R]!=="File"&&_Y[R]!=="Files")continue;if(x0)k1+=",";k1+=`validateFileExtension(c.body.${U8},${JSON.stringify(_Y.extension)},'body.${U8}')`,x0++}if(k1){if(x0===1)l+=`await ${k1}
|
|
`;else if(x0>1)l+=`await Promise.all([${k1}])
|
|
`;l+="}",z+=l,y0.push(y)}}}}}else if(b||!m&&(zX("File",W.body.schema)||zX("Files",W.body.schema))){let D="",E=0;for(let[w,y]of Object.entries(W.body.schema.properties)){if(!y.extension||y[R]!=="File"&&y[R]!=="Files")continue;if(E)D+=",";D+=`validateFileExtension(c.body.${w},${JSON.stringify(y.extension)},'body.${w}')`,E++}if(E)z+=`
|
|
`;if(E===1)z+=`await ${D}
|
|
`;else if(E>1)z+=`await Promise.all([${D}])
|
|
`}}if(W.cookie){let m=m2({modules:Y.definitions.typebox,validator:W.cookie,defaultConfig:Y.config.cookie,dynamic:!!Y.config.aot,config:W.cookie?.config??{},models:Y.definitions.type});if(z+=`const cookieValue={}
|
|
for(const [key,value] of Object.entries(c.cookie))cookieValue[key]=value.value
|
|
`,m.hasDefault)for(let[b,D]of Object.entries(V1.Default(m.schema,{})))z+=`cookieValue['${b}'] = ${typeof D==="object"?JSON.stringify(D):D}
|
|
`;if(m.isOptional)z+="if(isNotEmpty(c.cookie)){";if(W.body?.schema?.noValidate!==!0)z+="if(validator.cookie.Check(cookieValue)===false){"+X1.validate("cookie","cookieValue")+"}";if(m.hasTransform)z+=`for(const [key,value] of Object.entries(validator.cookie.Decode(cookieValue)))c.cookie[key].value=value
|
|
`;if(m.isOptional)z+="}"}}if(Z?.beforeHandle){let m=W1("beforeHandle",{total:Z.beforeHandle.length}),b=!1;for(let D=0;D<Z.beforeHandle.length;D++){let E=Z.beforeHandle[D],w=m.resolveChild(E.fn.name),y=F6(E);if(E.subType==="resolve"||E.subType==="mapResolve"){if(!b)b=!0,z+=`
|
|
let resolved
|
|
`;if(z+=N0(E)?`resolved=await e.beforeHandle[${D}](c);
|
|
`:`resolved=e.beforeHandle[${D}](c);
|
|
`,E.subType==="mapResolve")z+=`if(resolved instanceof ElysiaCustomStatusResponse)throw resolved
|
|
else{resolved.request=c.request
|
|
resolved.store=c.store
|
|
resolved.qi=c.qi
|
|
resolved.path=c.path
|
|
resolved.url=c.url
|
|
resolved.redirect=c.redirect
|
|
resolved.set=c.set
|
|
resolved.error=c.error
|
|
c=resolved}`;else z+=`if(resolved instanceof ElysiaCustomStatusResponse)throw resolved
|
|
else Object.assign(c, resolved)
|
|
`}else if(!y)z+=N0(E)?`await e.beforeHandle[${D}](c)
|
|
`:`e.beforeHandle[${D}](c)
|
|
`,w();else{if(z+=N0(E)?`be=await e.beforeHandle[${D}](c)
|
|
`:`be=e.beforeHandle[${D}](c)
|
|
`,w("be"),z+="if(be!==undefined){",m.resolve(),Z.afterHandle?.length){W1("handle",{name:U?J.name:void 0}).resolve();let h=W1("afterHandle",{total:Z.afterHandle.length});for(let l=0;l<Z.afterHandle.length;l++){let k1=Z.afterHandle[l],x0=F6(k1),V0=h.resolveChild(k1.fn.name);if(z+=`c.response = be
|
|
`,!x0)z+=N0(k1.fn)?`await e.afterHandle[${l}](c, be)
|
|
`:`e.afterHandle[${l}](c, be)
|
|
`;else z+=N0(k1.fn)?`af=await e.afterHandle[${l}](c)
|
|
`:`af=e.afterHandle[${l}](c)
|
|
`,z+=`if(af!==undefined) c.response=be=af
|
|
`;V0("af")}h.resolve()}if(W.response)z+=X1.response("be");let f=W1("mapResponse",{total:Z.mapResponse?.length});if(Z.mapResponse?.length){z+=`c.response=be
|
|
`;for(let h=0;h<Z.mapResponse.length;h++){let l=Z.mapResponse[h],k1=f.resolveChild(l.fn.name);z+=`if(mr===undefined){mr=${V$(l)?"await ":""}e.mapResponse[${h}](c)
|
|
if(mr!==undefined)be=c.response=mr}`,k1()}}f.resolve(),z+=k(),z+=`return mapEarlyResponse(${H8}be,c.set${E0})}
|
|
`}}m.resolve()}if(Z.afterHandle?.length){let m=W1("handle",{name:U?J.name:void 0});if(Z.afterHandle.length)z+=$1?`let r=c.response=await ${A}
|
|
`:`let r=c.response=${A}
|
|
`;else z+=$1?`let r=await ${A}
|
|
`:`let r=${A}
|
|
`;m.resolve();let b=W1("afterHandle",{total:Z.afterHandle.length});for(let E=0;E<Z.afterHandle.length;E++){let w=Z.afterHandle[E],y=F6(w),f=b.resolveChild(w.fn.name);if(!y)z+=N0(w.fn)?`await e.afterHandle[${E}](c)
|
|
`:`e.afterHandle[${E}](c)
|
|
`,f();else if(z+=N0(w.fn)?`af=await e.afterHandle[${E}](c)
|
|
`:`af=e.afterHandle[${E}](c)
|
|
`,f("af"),W.response)z+="if(af!==undefined){",b.resolve(),z+=X1.response("af"),z+="c.response=af}";else z+="if(af!==undefined){",b.resolve(),z+="c.response=af}"}if(b.resolve(),z+=`r=c.response
|
|
`,W.response)z+=X1.response();z+=k();let D=W1("mapResponse",{total:Z.mapResponse?.length});if(Z.mapResponse?.length)for(let E=0;E<Z.mapResponse.length;E++){let w=Z.mapResponse[E],y=D.resolveChild(w.fn.name);z+=`mr=${V$(w)?"await ":""}e.mapResponse[${E}](c)
|
|
if(mr!==undefined)r=c.response=mr
|
|
`,y()}D.resolve(),z+=D0()}else{let m=W1("handle",{name:U?J.name:void 0});if(W.response||Z.mapResponse?.length){if(z+=$1?`let r=await ${A}
|
|
`:`let r=${A}
|
|
`,m.resolve(),W.response)z+=X1.response();W1("afterHandle").resolve();let b=W1("mapResponse",{total:Z.mapResponse?.length});if(Z.mapResponse?.length){z+=`
|
|
c.response=r
|
|
`;for(let D=0;D<Z.mapResponse.length;D++){let E=Z.mapResponse[D],w=b.resolveChild(E.fn.name);z+=`
|
|
if(mr===undefined){mr=${V$(E)?"await ":""}e.mapResponse[${D}](c)
|
|
if(mr!==undefined)r=c.response=mr}
|
|
`,w()}}if(b.resolve(),z+=k(),J instanceof Response)z+=G.set?`if(isNotEmpty(c.set.headers)||c.set.status!==200||c.set.redirect||c.set.cookie)return mapResponse(${H8}${A}.clone(),c.set${E0})else return ${A}.clone()`:`return ${A}.clone()`,z+=`
|
|
`;else z+=D0()}else if(x||O){z+=$1?`let r=await ${A}
|
|
`:`let r=${A}
|
|
`,m.resolve(),W1("afterHandle").resolve();let b=W1("mapResponse",{total:Z.mapResponse?.length});if(Z.mapResponse?.length){z+=`c.response= r
|
|
`;for(let D=0;D<Z.mapResponse.length;D++){let E=Z.mapResponse[D],w=b.resolveChild(E.fn.name);z+=`if(mr===undefined){mr=${V$(E)?"await ":""}e.mapResponse[${D}](c)
|
|
if(mr!==undefined)r=c.response=mr}`,w()}}b.resolve(),z+=k()+D0()}else{m.resolve();let b=$1?`await ${A}`:A;if(W1("afterHandle").resolve(),J instanceof Response)z+=G.set?`if(isNotEmpty(c.set.headers)||c.set.status!==200||c.set.redirect||c.set.cookie)return mapResponse(${H8}${A}.clone(),c.set${E0})
|
|
else return ${A}.clone()
|
|
`:`return ${A}.clone()
|
|
`;else z+=D0(b)}}if(z+=`
|
|
}catch(error){`,!I0&&Z.error?.length)z+="return(async()=>{";if(z+=`const set=c.set
|
|
if(!set.status||set.status<300)set.status=error?.status||500
|
|
`,x)z+=k();if(O&&Z.trace)for(let m=0;m<Z.trace.length;m++)z+=`report${m}?.resolve(error);reportChild${m}?.(error)
|
|
`;let E8=W1("error",{total:Z.error?.length});if(Z.error?.length){if(z+=`c.error=error
|
|
`,L)z+=`if(error instanceof TypeBoxError){c.code="VALIDATION"
|
|
c.set.status=422}else{c.code=error.code??error[ERROR_CODE]??"UNKNOWN"}`;else z+=`c.code=error.code??error[ERROR_CODE]??"UNKNOWN"
|
|
`;z+=`let er
|
|
`;for(let m=0;m<Z.error.length;m++){let b=E8.resolveChild(Z.error[m].fn.name);if(N0(Z.error[m]))z+=`er=await e.error[${m}](c)
|
|
`;else z+=`er=e.error[${m}](c)
|
|
if(er instanceof Promise)er=await er
|
|
`;b();let D=W1("mapResponse",{total:Z.mapResponse?.length});if(Z.mapResponse?.length)for(let E=0;E<Z.mapResponse.length;E++){let w=Z.mapResponse[E],y=D.resolveChild(w.fn.name);z+=`c.response=er
|
|
er=e.mapResponse[${E}](c)
|
|
if(er instanceof Promise)er=await er
|
|
`,y()}if(D.resolve(),z+=`er=mapEarlyResponse(er,set${E0})
|
|
`,z+="if(er){",O&&Z.trace){for(let E=0;E<Z.trace.length;E++)z+=`report${E}.resolve()
|
|
`;E8.resolve()}z+="return er}"}}if(E8.resolve(),z+="return handleError(c,error,true)",!I0&&Z.error?.length)z+="})()";if(z+="}",N||O){if(z+="finally{ ",!I0)z+=";(async()=>{";let m=W1("afterResponse",{total:Z.afterResponse?.length});if(N&&Z.afterResponse)for(let b=0;b<Z.afterResponse.length;b++){let D=m.resolveChild(Z.afterResponse[b].fn.name);z+=`
|
|
await e.afterResponse[${b}](c)
|
|
`,D()}if(m.resolve(),!I0)z+="})()";z+="}"}let aY=M.inject?Object.keys(M.inject).join(",")+",":"",d8="const {handler,handleError,hooks:e, "+Z0("validator,",L)+"mapResponse,mapCompactResponse,mapEarlyResponse,isNotEmpty,utils:{"+Z0("parseQuery,",V)+Z0("parseQueryFromURL,",F)+"},error:{"+Z0("ValidationError,",L)+Z0("ParseError",V)+"},validateFileExtension,schema,definitions,ERROR_CODE,"+Z0("parseCookie,",x)+Z0("signCookie,",x)+Z0("decodeURIComponent,",F)+"ElysiaCustomStatusResponse,"+Z0("ELYSIA_TRACE,",O)+Z0("ELYSIA_REQUEST_ID,",O)+Z0("parser,",Z.parse?.length)+Z0("getServer,",G.server)+Z0("fileUnions,",y0.length)+aY+Z0("TypeBoxError",L)+`}=hooks
|
|
const trace=e.trace
|
|
return ${I0?"async ":""}function handle(c){`;if(Z.beforeHandle?.length)d8+=`let be
|
|
`;if(Z.afterHandle?.length)d8+=`let af
|
|
`;if(Z.mapResponse?.length)d8+=`let mr
|
|
`;if(Q)d8+=`c.schema=schema
|
|
c.defs=definitions
|
|
`;z=d8+z+"}",d8="";try{return Function("hooks",`"use strict";
|
|
`+z)({handler:J,hooks:Z2({...Z}),validator:L?W:void 0,handleError:Y.handleError,mapResponse:H.mapResponse,mapCompactResponse:H.mapCompactResponse,mapEarlyResponse:H.mapEarlyResponse,isNotEmpty:f1,utils:{parseQuery:V?vZ:void 0,parseQueryFromURL:F?eq:void 0},error:{ValidationError:L?T1:void 0,ParseError:V?P2:void 0},validateFileExtension:dq,schema:Y.router.history,definitions:Y.definitions.type,ERROR_CODE:pZ,parseCookie:x?b2:void 0,signCookie:x?mZ:void 0,decodeURIComponent:F?aq.default:void 0,ElysiaCustomStatusResponse:u0,ELYSIA_TRACE:O?YW:void 0,ELYSIA_REQUEST_ID:O?q6:void 0,getServer:()=>Y.getServer(),fileUnions:y0.length?y0:void 0,TypeBoxError:L?a:void 0,parser:Y["~parser"],...M.inject})}catch(m){let b=Z2(Z);console.log("[Composer] failed to generate optimized handler"),console.log("---"),console.log({handler:typeof J==="function"?J.toString():J,instruction:z,hooks:{...b,transform:b?.transform?.map?.((D)=>D.toString()),resolve:b?.resolve?.map?.((D)=>D.toString()),beforeHandle:b?.beforeHandle?.map?.((D)=>D.toString()),afterHandle:b?.afterHandle?.map?.((D)=>D.toString()),mapResponse:b?.mapResponse?.map?.((D)=>D.toString()),parse:b?.parse?.map?.((D)=>D.toString()),error:b?.error?.map?.((D)=>D.toString()),afterResponse:b?.afterResponse?.map?.((D)=>D.toString()),stop:b?.stop?.map?.((D)=>D.toString())},validator:W,definitions:Y.definitions.type,error:m}),console.log("---"),process.exit(1)}},p2=(Y,X)=>{let $="",Z=Q4({trace:Y.event.trace,addFn:X??((W)=>{$+=W})})("request",{total:Y.event.request?.length});if(Y.event.request?.length){$+="try{";for(let W=0;W<Y.event.request.length;W++){let J=Y.event.request[W],Q=F6(J),G=N0(J),M=Z.resolveChild(Y.event.request[W].fn.name);if(Q)$+=`re=mapEarlyResponse(${G?"await ":""}onRequest[${W}](c),c.set)
|
|
`,M("re"),$+=`if(re!==undefined)return re
|
|
`;else $+=`${G?"await ":""}onRequest[${W}](c)
|
|
`,M()}$+="}catch(error){return app.handleError(c,error,false)}"}return Z.resolve(),$},c2=(Y,X="map")=>{let $=Y.extender.higherOrderFunctions;if(!$.length)return"return "+X;let Z=Y["~adapter"].composeGeneralHandler,W=X;for(let J=0;J<$.length;J++)W=`hoc[${J}](${W},${Z.parameters})`;return`return function hocMap(${Z.parameters}){return ${W}(${Z.parameters})}`},pJ=(Y)=>{let X=Y["~adapter"].composeGeneralHandler;Y.router.http.build();let $=X.error404(!!Y.event.request?.length,!!Y.event.error?.length),Z=Y.event.trace?.length,W="",J=Y.router,Q=J.http.root.WS?`const route=router.find(r.method === "GET" && r.headers.get('upgrade')==='websocket'?'WS':r.method,p)`:"const route=router.find(r.method,p)";Q+=J.http.root.ALL?`??router.find("ALL",p)
|
|
`:`
|
|
`,Q+=$.code,Q+=`
|
|
c.params=route.params
|
|
if(route.store.handler)return route.store.handler(c)
|
|
return route.store.compile()(c)
|
|
`;let G="";for(let[A,N]of Object.entries(J.static)){if(G+=`case'${A}':`,Y.config.strictPath!==!0)G+=`case'${E$(A)}':`;let O=D6(A);if(A!==O)G+=`case'${O}':`;if(G+="switch(r.method){","GET"in N||"WS"in N){if(G+="case 'GET':","WS"in N)G+=`if(r.headers.get('upgrade')==='websocket')return ht[${N.WS}].composed(c)
|
|
`;if("GET"in N)G+=`return ht[${N.GET}].composed(c)
|
|
`}for(let[z,L]of Object.entries(N)){if(z==="ALL"||z==="GET"||z==="WS")continue;G+=`case '${z}':return ht[${L}].composed(c)
|
|
`}if("ALL"in N)G+=`default:return ht[${N.ALL}].composed(c)
|
|
`;else G+=`default:break map
|
|
`;G+="}"}let M=!!Y.event.request?.some(N0),H=X.inject?Object.keys(X.inject).join(",")+",":"";if(W+=`
|
|
const {app,mapEarlyResponse,NotFoundError,randomId,handleError,status,redirect,`+Z0("ELYSIA_TRACE,",Z)+Z0("ELYSIA_REQUEST_ID,",Z)+H+`}=data
|
|
const store=app.singleton.store
|
|
const decorator=app.singleton.decorator
|
|
const staticRouter=app.router.static.http
|
|
const ht=app.router.history
|
|
const router=app.router.http
|
|
const trace=app.event.trace?.map(x=>typeof x==='function'?x:x.fn)??[]
|
|
const notFound=new NotFoundError()
|
|
const hoc=app.extender.higherOrderFunctions.map(x=>x.fn)
|
|
`,Y.event.request?.length)W+=`const onRequest=app.event.request.map(x=>x.fn)
|
|
`;if(W+=$.declare,Y.event.trace?.length)W+="const "+Y.event.trace.map((A,N)=>`tr${N}=app.event.trace[${N}].fn`).join(",")+`
|
|
`;if(W+=`${M?"async ":""}function map(${X.parameters}){`,Y.event.request?.length)W+=`let re
|
|
`;if(W+=X.createContext(Y),Y.event.trace?.length)W+="c[ELYSIA_TRACE]=["+Y.event.trace.map((A,N)=>`tr${N}(c)`).join(",")+`]
|
|
`;if(W+=p2(Y),G)W+=`
|
|
map: switch(p){
|
|
`+G+"}";W+=Q+`}
|
|
`+c2(Y),Y.handleError=u2(Y);let U=Function("data",`"use strict";
|
|
`+W)({app:Y,mapEarlyResponse:Y["~adapter"].handler.mapEarlyResponse,NotFoundError:Z4,randomId:rZ,handleError:Y.handleError,status:iY,redirect:$4,ELYSIA_TRACE:Z?YW:void 0,ELYSIA_REQUEST_ID:Z?q6:void 0,...X.inject});if(B6)Bun.gc(!1);return U},u2=(Y)=>{let X=Y.event,$="",Z=Y["~adapter"].composeError,W=Z.inject?Object.keys(Z.inject).join(",")+",":"",J=!!Y.event.trace?.length;if($+="const {mapResponse,ERROR_CODE,ElysiaCustomStatusResponse,"+Z0("onError,",Y.event.error)+Z0("afterResponse,",Y.event.afterResponse)+Z0("trace,",Y.event.trace)+Z0("onMapResponse,",Y.event.mapResponse)+Z0("ELYSIA_TRACE,",J)+Z0("ELYSIA_REQUEST_ID,",J)+W+`}=inject
|
|
`,$+=`return ${Y.event.error?.find(N0)||Y.event.mapResponse?.find(N0)?"async ":""}function(context,error,skipGlobal){`,$+="",J)$+=`const id=context[ELYSIA_REQUEST_ID]
|
|
`;let Q=Q4({context:"context",trace:X.trace,addFn:(U)=>{$+=U}});if($+=`const set=context.set
|
|
let _r
|
|
if(!context.code)context.code=error.code??error[ERROR_CODE]
|
|
if(!(context.error instanceof Error))context.error=error
|
|
if(error instanceof ElysiaCustomStatusResponse){set.status=error.status=error.code
|
|
error.message=error.response}`,Z.declare)$+=Z.declare;let G=J||!!X.afterResponse?.length||!!X.afterResponse?.length?"context.response = ":"";if(Y.event.error)for(let U=0;U<Y.event.error.length;U++){let A=Y.event.error[U],N=`${N0(A)?"await ":""}onError[${U}](context)
|
|
`;if($+="if(skipGlobal!==true){",F6(A)){$+=`_r=${N}
|
|
if(_r!==undefined){if(_r instanceof Response)return mapResponse(_r,set${Z.mapResponseContext})
|
|
if(_r instanceof ElysiaCustomStatusResponse){error.status=error.code
|
|
error.message = error.response}if(set.status===200||!set.status)set.status=error.status
|
|
`;let O=Q("mapResponse",{total:X.mapResponse?.length,name:"context"});if(X.mapResponse?.length)for(let z=0;z<X.mapResponse.length;z++){let L=X.mapResponse[z],F=O.resolveChild(L.fn.name);$+=`context.response=_r_r=${V$(L)?"await ":""}onMapResponse[${z}](context)
|
|
`,F()}O.resolve(),$+=`return mapResponse(${G}_r,set${Z.mapResponseContext})}`}else $+=N;$+="}"}$+=`if(error.constructor.name==="ValidationError"||error.constructor.name==="TransformDecodeError"){
|
|
if(error.error)error=error.error
|
|
set.status=error.status??422
|
|
`+Z.validationError+`
|
|
}
|
|
`,$+=`if(error instanceof Error){
|
|
if(typeof error.toResponse==='function')return context.response=error.toResponse()
|
|
`+Z.unknownError+`
|
|
}`;let M=Q("mapResponse",{total:X.mapResponse?.length,name:"context"});if($+=`
|
|
if(!context.response)context.response=error.message??error
|
|
`,X.mapResponse?.length){$+=`let mr
|
|
`;for(let U=0;U<X.mapResponse.length;U++){let A=X.mapResponse[U],N=M.resolveChild(A.fn.name);$+=`if(mr===undefined){mr=${V$(A)?"await ":""}onMapResponse[${U}](context)
|
|
if(mr!==undefined)error=context.response=mr}`,N()}}M.resolve(),$+=`
|
|
return mapResponse(${G}error,set${Z.mapResponseContext})}`;let H=(U)=>typeof U==="function"?U:U.fn;return Function("inject",`"use strict";
|
|
`+$)({mapResponse:Y["~adapter"].handler.mapResponse,ERROR_CODE:pZ,ElysiaCustomStatusResponse:u0,onError:Y.event.error?.map(H),afterResponse:Y.event.afterResponse?.map(H),trace:Y.event.trace?.map(H),onMapResponse:Y.event.mapResponse?.map(H),ELYSIA_TRACE:J?YW:void 0,ELYSIA_REQUEST_ID:J?q6:void 0,...Z.inject})},c0=(Y,X,$)=>{if(f1(X.headers)||X.status!==200||X.cookie)switch(eZ(X),Y?.constructor?.name){case"String":return new Response(Y,X);case"Array":case"Object":return X.headers["content-type"]="application/json",new Response(JSON.stringify(Y),X);case"ElysiaFile":return s1(Y.value);case"File":return s1(Y,X);case"Blob":return s1(Y,X);case"ElysiaCustomStatusResponse":return X.status=Y.code,c0(Y.response,X,$);case"ReadableStream":if(!X.headers["content-type"]?.startsWith("text/event-stream"))X.headers["content-type"]="text/event-stream; charset=utf-8";return $?.signal?.addEventListener("abort",{handleEvent(){if($?.signal&&!$?.signal?.aborted)Y.cancel()}},{once:!0}),new Response(Y,X);case void 0:if(!Y)return new Response("",X);return new Response(JSON.stringify(Y),X);case"Response":return nZ(Y,X,$);case"Error":return AX(Y,X);case"Promise":return Y.then((Z)=>c0(Z,X,$));case"Function":return c0(Y(),X,$);case"Number":case"Boolean":return new Response(Y.toString(),X);case"Cookie":if(Y instanceof oY)return new Response(Y.value,X);return new Response(Y?.toString(),X);case"FormData":return new Response(Y,X);default:if(Y instanceof Response)return nZ(Y,X,$);if(Y instanceof Promise)return Y.then((Z)=>c0(Z,X));if(Y instanceof Error)return AX(Y,X);if(Y instanceof u0)return X.status=Y.code,c0(Y.response,X,$);if(typeof Y?.next==="function")return NX(Y,X,$);if(typeof Y?.then==="function")return Y.then((Z)=>c0(Z,X));if(typeof Y?.toResponse==="function")return c0(Y.toResponse(),X);if("charCodeAt"in Y){let Z=Y.charCodeAt(0);if(Z===123||Z===91){if(!X.headers["Content-Type"])X.headers["Content-Type"]="application/json";return new Response(JSON.stringify(Y),X)}}return new Response(Y,X)}if(Y instanceof Response&&!Y.headers.has("content-length")&&Y.headers.get("transfer-encoding")==="chunked")return NX(FX(Y),wX(Y,X),$);if(typeof Y?.next==="function"||Y instanceof ReadableStream)return NX(Y,X,$);return uY(Y,$)},p0=(Y,X,$)=>{if(Y===void 0||Y===null)return;if(f1(X.headers)||X.status!==200||X.cookie)switch(eZ(X),Y?.constructor?.name){case"String":return new Response(Y,X);case"Array":case"Object":return X.headers["content-type"]="application/json",new Response(JSON.stringify(Y),X);case"ElysiaFile":return s1(Y.value);case"File":return s1(Y,X);case"Blob":return s1(Y,X);case"ElysiaCustomStatusResponse":return X.status=Y.code,p0(Y.response,X,$);case"ReadableStream":if(!X.headers["content-type"]?.startsWith("text/event-stream"))X.headers["content-type"]="text/event-stream; charset=utf-8";return $?.signal?.addEventListener("abort",{handleEvent(){if($?.signal&&!$?.signal?.aborted)Y.cancel()}},{once:!0}),new Response(Y,X);case void 0:if(!Y)return;return new Response(JSON.stringify(Y),X);case"Response":return nZ(Y,X,$);case"Promise":return Y.then((Z)=>p0(Z,X));case"Error":return AX(Y,X);case"Function":return p0(Y(),X);case"Number":case"Boolean":return new Response(Y.toString(),X);case"FormData":return new Response(Y);case"Cookie":if(Y instanceof oY)return new Response(Y.value,X);return new Response(Y?.toString(),X);default:if(Y instanceof Response)return nZ(Y,X,$);if(Y instanceof Promise)return Y.then((Z)=>p0(Z,X));if(Y instanceof Error)return AX(Y,X);if(Y instanceof u0)return X.status=Y.code,p0(Y.response,X,$);if(typeof Y?.next==="function")return NX(Y,X,$);if(typeof Y?.then==="function")return Y.then((Z)=>p0(Z,X));if(typeof Y?.toResponse==="function")return p0(Y.toResponse(),X);if("charCodeAt"in Y){let Z=Y.charCodeAt(0);if(Z===123||Z===91){if(!X.headers["Content-Type"])X.headers["Content-Type"]="application/json";return new Response(JSON.stringify(Y),X)}}return new Response(Y,X)}else switch(Y?.constructor?.name){case"String":return new Response(Y);case"Array":case"Object":return X.headers["content-type"]="application/json",new Response(JSON.stringify(Y),X);case"ElysiaFile":return s1(Y.value);case"File":return s1(Y,X);case"Blob":return s1(Y,X);case"ElysiaCustomStatusResponse":return X.status=Y.code,p0(Y.response,X,$);case"ReadableStream":return $?.signal?.addEventListener("abort",{handleEvent(){if($?.signal&&!$?.signal?.aborted)Y.cancel()}},{once:!0}),new Response(Y,{headers:{"Content-Type":"text/event-stream; charset=utf-8"}});case void 0:if(!Y)return new Response("");return new Response(JSON.stringify(Y),{headers:{"content-type":"application/json"}});case"Response":if(!Y.headers.has("content-length")&&Y.headers.get("transfer-encoding")==="chunked")return NX(FX(Y),wX(Y),$);return Y;case"Promise":return Y.then((Z)=>{let W=p0(Z,X);if(W!==void 0)return W});case"Error":return AX(Y,X);case"Function":return uY(Y(),$);case"Number":case"Boolean":return new Response(Y.toString());case"Cookie":if(Y instanceof oY)return new Response(Y.value,X);return new Response(Y?.toString(),X);case"FormData":return new Response(Y);default:if(Y instanceof Response)return Y;if(Y instanceof Promise)return Y.then((Z)=>p0(Z,X));if(Y instanceof Error)return AX(Y,X);if(Y instanceof u0)return X.status=Y.code,p0(Y.response,X,$);if(typeof Y?.next==="function")return NX(Y,X,$);if(typeof Y?.then==="function")return Y.then((Z)=>p0(Z,X));if(typeof Y?.toResponse==="function")return p0(Y.toResponse(),X);if("charCodeAt"in Y){let Z=Y.charCodeAt(0);if(Z===123||Z===91){if(!X.headers["Content-Type"])X.headers["Content-Type"]="application/json";return new Response(JSON.stringify(Y),X)}}return new Response(Y)}},uY=(Y,X)=>{switch(Y?.constructor?.name){case"String":return new Response(Y);case"Object":case"Array":return new Response(JSON.stringify(Y),{headers:{"Content-Type":"application/json"}});case"ElysiaFile":return s1(Y.value);case"File":return s1(Y);case"Blob":return s1(Y);case"ElysiaCustomStatusResponse":return c0(Y.response,{status:Y.code,headers:{}});case"ReadableStream":return X?.signal?.addEventListener("abort",{handleEvent(){if(X?.signal&&!X?.signal?.aborted)Y.cancel()}},{once:!0}),new Response(Y,{headers:{"Content-Type":"text/event-stream; charset=utf-8"}});case void 0:if(!Y)return new Response("");return new Response(JSON.stringify(Y),{headers:{"content-type":"application/json"}});case"Response":if(Y.headers.get("transfer-encoding")==="chunked")return NX(FX(Y),wX(Y),X);return Y;case"Error":return AX(Y);case"Promise":return Y.then(($)=>uY($,X));case"Function":return uY(Y(),X);case"Number":case"Boolean":return new Response(Y.toString());case"FormData":return new Response(Y);default:if(Y instanceof Response)return Y;if(Y instanceof Promise)return Y.then(($)=>uY($,X));if(Y instanceof Error)return AX(Y);if(Y instanceof u0)return c0(Y.response,{status:Y.code,headers:{}});if(typeof Y?.next==="function")return NX(Y,void 0,X);if(typeof Y?.then==="function")return Y.then(($)=>c0($,set));if(typeof Y?.toResponse==="function")return uY(Y.toResponse());if("charCodeAt"in Y){let $=Y.charCodeAt(0);if($===123||$===91)return new Response(JSON.stringify(Y),{headers:{"Content-Type":"application/json"}})}return new Response(Y)}},AX=(Y,X)=>new Response(JSON.stringify({name:Y?.name,message:Y?.message,cause:Y?.cause}),{status:X?.status!==200?X?.status??500:500,headers:X?.headers}),A_=(Y,X,$={})=>{if(typeof Y==="function")return;let Z=c0(Y,{headers:$});if(!X.parse?.length&&!X.transform?.length&&!X.beforeHandle?.length&&!X.afterHandle?.length)return Z.clone.bind(Z)},nZ=v2({mapResponse:c0,mapCompactResponse:uY}),NX=J4({mapResponse:c0,mapCompactResponse:uY}),pY=(Y,X)=>X?Y:"",w2=(Y,X,$,Z=!1)=>{let W="",J=Y.setHeaders,Q=!!Y.event.trace?.length;if(Q)W+=`const id=randomId()
|
|
`;let G=/[:*]/.test(X.path),M=`const u=request.url,s=u.indexOf('/',${Y.config.handler?.standardHostname??!0?11:7}),qi=u.indexOf('?', s + 1)
|
|
`;if($.query)W+=M;let H=!$.path?"":!G?`path:'${X.path}',`:"get path(){"+($.query?"":M)+`if(qi===-1)return u.substring(s)
|
|
return u.substring(s,qi)
|
|
},`;if(W+=pY("const c=",!Z)+"{request,store,"+pY("qi,",$.query)+pY("params:request.params,",G)+H+pY("url:request.url,",Q||$.url||$.query)+"redirect,error:status,status,set:{headers:"+(f1(J)?"Object.assign({},app.setHeaders)":"Object.create(null)")+",status:200}",$.server)W+=",get server(){return app.getServer()}";if(Q)W+=",[ELYSIA_REQUEST_ID]:id";{let U="";for(let A of Object.keys(Y.singleton.decorator))U+=`,'${A}':decorator['${A}']`;W+=U}return W+=`}
|
|
`,W},cJ=(Y,X)=>{let $=!!Y.event.trace?.length,Z=!!Y.extender.higherOrderFunctions.length,W=L6(X.hooks,Y.inference);W=L6({handler:X.handler},W);let J="const handler=data.handler,app=data.app,store=data.store,decorator=data.decorator,redirect=data.redirect,route=data.route,mapEarlyResponse=data.mapEarlyResponse,"+pY("randomId=data.randomId,",$)+pY("ELYSIA_REQUEST_ID=data.ELYSIA_REQUEST_ID,",$)+pY("ELYSIA_TRACE=data.ELYSIA_TRACE,",$)+pY("trace=data.trace,",$)+pY("hoc=data.hoc,",Z)+`status=data.status
|
|
`;if(Y.event.request?.length)J+=`const onRequest=app.event.request.map(x=>x.fn)
|
|
`;if(J+=`${Y.event.request?.find(N0)?"async":""} function map(request){`,$||W.query||Y.event.request?.length)J+=w2(Y,X,W),J+=p2(Y),J+="return handler(c)}";else J+=`return handler(${w2(Y,X,W,!0)})}`;return J+=c2(Y),Function("data",J)({app:Y,handler:X.compile?.()??X.composed,redirect:$4,status:iY,hoc:Y.extender.higherOrderFunctions.map((Q)=>Q.fn),store:Y.store,decorator:Y.decorator,route:X.path,randomId:$?rZ:void 0,ELYSIA_TRACE:$?YW:void 0,ELYSIA_REQUEST_ID:$?q6:void 0,trace:$?Y.event.trace?.map((Q)=>Q?.fn??Q):void 0,mapEarlyResponse:p0})},O_=(Y,X,$={})=>{if(typeof Y==="function"||Y instanceof Blob)return;if(typeof Y==="object"&&Y?.toString()==="[object HTMLBundle]")return()=>Y;let Z=c0(Y,{headers:$});if(!X.parse?.length&&!X.transform?.length&&!X.beforeHandle?.length&&!X.afterHandle?.length){if(Z instanceof Promise)return Z.then((W)=>{if(!W)return;if(!W.headers.has("content-type"))W.headers.append("content-type","text/plain");return W.clone()});if(!Z.headers.has("content-type"))Z.headers.append("content-type","text/plain");return Z.clone.bind(Z)}},F2={open(Y){Y.data.open?.(Y)},message(Y,X){Y.data.message?.(Y,X)},drain(Y){Y.data.drain?.(Y)},close(Y,X,$){Y.data.close?.(Y,X,$)}};class O6{raw;data;body;validator;["~types"];get id(){return this.data.id}constructor(Y,X,$=void 0){this.raw=Y,this.data=X,this.body=$,this.validator=Y.data?.validator,this.sendText=Y.sendText.bind(Y),this.sendBinary=Y.sendBinary.bind(Y),this.close=Y.close.bind(Y),this.terminate=Y.terminate.bind(Y),this.publishText=Y.publishText.bind(Y),this.publishBinary=Y.publishBinary.bind(Y),this.subscribe=Y.subscribe.bind(Y),this.unsubscribe=Y.unsubscribe.bind(Y),this.isSubscribed=Y.isSubscribed.bind(Y),this.cork=Y.cork.bind(Y),this.remoteAddress=Y.remoteAddress,this.binaryType=Y.binaryType,this.data=Y.data,this.send=this.send.bind(this),this.ping=this.ping.bind(this),this.pong=this.pong.bind(this),this.publish=this.publish.bind(this)}send(Y,X){if(Buffer.isBuffer(Y))return this.raw.send(Y,X);if(this.validator?.Check(Y)===!1)return this.raw.send(new T1("message",this.validator,Y).message);if(typeof Y==="object")Y=JSON.stringify(Y);return this.raw.send(Y,X)}ping(Y){if(Buffer.isBuffer(Y))return this.raw.ping(Y);if(this.validator?.Check(Y)===!1)return this.raw.send(new T1("message",this.validator,Y).message);if(typeof Y==="object")Y=JSON.stringify(Y);return this.raw.ping(Y)}pong(Y){if(Buffer.isBuffer(Y))return this.raw.pong(Y);if(this.validator?.Check(Y)===!1)return this.raw.send(new T1("message",this.validator,Y).message);if(typeof Y==="object")Y=JSON.stringify(Y);return this.raw.pong(Y)}publish(Y,X,$){if(Buffer.isBuffer(X))return this.raw.publish(Y,X,$);if(this.validator?.Check(X)===!1)return this.raw.send(new T1("message",this.validator,X).message);if(typeof X==="object")X=JSON.stringify(X);return this.raw.publish(Y,X,$)}sendText;sendBinary;close;terminate;publishText;publishBinary;subscribe;unsubscribe;isSubscribed;cork;remoteAddress;binaryType;get readyState(){return this.raw.readyState}}var N_=(Y)=>{let X=typeof Y==="function"?[Y]:Y;return async function $(Z,W){if(typeof W==="string"){let J=W?.charCodeAt(0);if(J===34||J===47||J===91||J===123)try{W=JSON.parse(W)}catch{}else if(X4(W))W=+W;else if(W==="true")W=!0;else if(W==="false")W=!1;else if(W==="null")W=null}if(X)for(let J=0;J<X.length;J++){let Q=X[J](Z,W);if(Q instanceof Promise)Q=await Q;if(Q!==void 0)return Q}return W}},w_=(Y)=>{let X=($,Z)=>{if(Z instanceof Promise)return Z.then((Q)=>X($,Q));if(Buffer.isBuffer(Z))return $.send(Z.toString());if(Z===void 0)return;let W=(Q)=>{if(Y?.Check(Q)===!1)return $.send(new T1("message",Y,Q).message);if(typeof Q==="object")return $.send(JSON.stringify(Q));$.send(Q)};if(typeof Z?.next!=="function")return void W(Z);let J=Z.next();if(J instanceof Promise)return(async()=>{let Q=await J;if(Y?.Check(Q)===!1)return $.send(new T1("message",Y,Q).message);if(W(Q.value),!Q.done)for await(let G of Z)W(G)})();if(W(J.value),!J.done)for(let Q of Z)W(Q)};return X},F_=/:.+?\?(?=\/|$)/,i2=(Y)=>{let X=F_.exec(Y);if(!X)return[Y];let $=[],Z=Y.slice(0,X.index),W=X[0].slice(0,-1),J=Y.slice(X.index+X[0].length);$.push(Z.slice(0,-1)),$.push(Z+W);for(let Q of i2(J)){if(!Q)continue;if(!Q.startsWith("/:"))$.push(Z.slice(0,-1)+Q);$.push(Z+W+Q)}return $},B_={GET:!0,HEAD:!0,OPTIONS:!0,DELETE:!0,PATCH:!0,POST:!0,PUT:!0},uJ=(Y)=>{if(!Y.config.aot||!Y.config.systemRouter)return;let X={},$=(W,J)=>{if(X[W.path]){if(!X[W.path][W.method])X[W.path][W.method]=J}else X[W.path]={[W.method]:J}},Z=Y.routeTree;for(let W of Y.router.history){if(typeof W.handler!=="function")continue;let J=W.method;if(J==="GET"&&`WS_${W.path}`in Z||J==="WS"||W.path.charCodeAt(W.path.length-1)===42||!(J in B_))continue;if(J==="ALL"){if(!(`WS_${W.path}`in Z))X[W.path]=W.hooks?.config?.mount?W.hooks.trace||Y.event.trace||Y.extender.higherOrderFunctions?cJ(Y,W):W.hooks.mount||W.handler:W.handler;continue}let Q,G=Y.config.precompile?cJ(Y,W):(M)=>{if(Q)return Q(M);return(Q=cJ(Y,W))(M)};for(let M of i2(W.path))$({method:J,path:M},G)}return X},gZ=(Y,X)=>{if(!X)return Y;for(let $ of Object.keys(X)){if(Y[$]===X[$])continue;if(!Y[$]){Y[$]=X[$];continue}if(Y[$]&&X[$]){if(typeof Y[$]==="function"||Y[$]instanceof Response){Y[$]=X[$];continue}Y[$]={...Y[$],...X[$]}}}return Y},K_={...sJ,name:"bun",handler:{mapResponse:c0,mapEarlyResponse:p0,mapCompactResponse:uY,createStaticHandler:A_,createNativeStaticHandler:O_},composeHandler:{...sJ.composeHandler,headers:dZ?`c.headers=c.request.headers.toJSON()
|
|
`:`c.headers={}
|
|
for(const [k,v] of c.request.headers.entries())c.headers[k]=v
|
|
`},listen(Y){return(X,$)=>{if(typeof Bun==="undefined")throw new Error(".listen() is designed to run on Bun only. If you are running Elysia in other environment please use a dedicated plugin or export the handler via Elysia.fetch");if(Y.compile(),typeof X==="string"){if(!X4(X))throw new Error("Port must be a numeric value");X=parseInt(X)}let Z={};for(let[J,Q]of Object.entries(Y.router.response))if(Q&&!(Q instanceof Promise))Z[J]=Q;let W=typeof X==="object"?{development:!K6,reusePort:!0,...Y.config.serve||{},...X||{},routes:{...Z,...uJ(Y),...Y.config.serve?.routes},websocket:{...Y.config.websocket||{},...F2||{}},fetch:Y.fetch}:{development:!K6,reusePort:!0,...Y.config.serve||{},routes:gZ(gZ(Z,uJ(Y)),Y.config.serve?.routes),websocket:{...Y.config.websocket||{},...F2||{}},port:X,fetch:Y.fetch};if(Y.server=Bun.serve(W),Y.event.start)for(let J=0;J<Y.event.start.length;J++)Y.event.start[J].fn(Y);if($)$(Y.server);process.on("beforeExit",()=>{if(Y.server){if(Y.server.stop?.(),Y.server=null,Y.event.stop)for(let J=0;J<Y.event.stop.length;J++)Y.event.stop[J].fn(Y)}}),Y.promisedModules.then(async()=>{Bun?.gc(!1);let J={},Q=[],G=[];for(let[H,U]of Object.entries(Y.router.response))if(U instanceof Promise)Q.push(U),G.push(H);else if(U)J[H]=U;if(!Y.server&&!f1(Q))return;let M=await Promise.all(Q);for(let H=0;H<M.length;H++){let U=M[H],A=G[H];if(U)J[A]=U}Y.server?.reload({...W,fetch:Y.fetch,routes:gZ(gZ(J,uJ(Y)),Y.config.serve?.routes)})})}},ws(Y,X,$){let{parse:Z,body:W,response:J,...Q}=$,G=R0(W,{modules:Y.definitions.typebox,models:Y.definitions.type,normalize:Y.config.normalize}),M=R0(J,{modules:Y.definitions.typebox,models:Y.definitions.type,normalize:Y.config.normalize});Y.route("WS",X,async(H)=>{let U=Y.getServer(),{set:A,path:N,qi:O,headers:z,query:L,params:F}=H;if(H.validator=M,$.upgrade){if(typeof $.upgrade==="function"){let x=$.upgrade(H);if(x instanceof Promise)await x}else if($.upgrade)Object.assign(A.headers,$.upgrade)}if(A.cookie&&f1(A.cookie)){let x=g2(A.cookie);if(x)A.headers["set-cookie"]=x}if(A.headers["set-cookie"]&&Array.isArray(A.headers["set-cookie"]))A.headers=f2(new Headers(A.headers),A.headers["set-cookie"]);let g=w_(M),V=N_(Z),v,s=[...Array.isArray($.error)?$.error:[$.error],...(Y.event.error??[]).map((x)=>typeof x==="function"?x:x.fn)].filter((x)=>x),o=!s.length?()=>{}:async(x,T)=>{for(let P of s){let k=P(Object.assign(H,{error:T}));if(k instanceof Promise)k=await k;if(await g(x,k),k)break}};if(U?.upgrade(H.request,{headers:f1(A.headers)?A.headers:void 0,data:{...H,get id(){if(v)return v;return v=rZ()},validator:M,ping(x){$.ping?.(x)},pong(x){$.pong?.(x)},open(x){try{g(x,$.open?.(new O6(x,H)))}catch(T){o(x,T)}},message:async(x,T)=>{let P=await V(x,T);if(G?.Check(P)===!1)return void x.send(new T1("message",G,P).message);try{g(x,$.message?.(new O6(x,H,P),P))}catch(k){o(x,k)}},drain(x){try{g(x,$.drain?.(new O6(x,H)))}catch(T){o(x,T)}},close(x,T,P){try{g(x,$.close?.(new O6(x,H),T,P))}catch(k){o(x,k)}}}}))return;return A.status=400,"Expected a websocket connection"},{...Q,websocket:$})}},B2=B6?Bun.env:typeof process!=="undefined"&&process?.env?process.env:{},iJ=(Y,X)=>{for(let[$,Z]of Object.entries(Y.schema.properties))X[$]??=Z.default},K2=(Y)=>{let{mapResponse:X,mapEarlyResponse:$}=Y["~adapter"].handler;return async(Z)=>{let W=Z.url,J=W.indexOf("/",11),Q=W.indexOf("?",J+1),G=Q===-1?W.substring(J):W.substring(J,Q),M={cookie:{},status:200,headers:{}},H=Object.assign({},Y.singleton.decorator,{set:M,store:Y.singleton.store,request:Z,path:G,qi:Q,error:iY,status:iY,redirect:$4});try{if(Y.event.request)for(let T=0;T<Y.event.request.length;T++){let P=Y.event.request[T].fn,k=P(H);if(k instanceof Promise)k=await k;if(k=$(k,M),k)return H.response=k}let U=Y.router.dynamic.find(Z.method,G)??Y.router.dynamic.find("ALL",G);if(!U)throw new Z4;let{handle:A,hooks:N,validator:O,content:z,route:L}=U.store,F;if(Z.method!=="GET"&&Z.method!=="HEAD")if(z)switch(z){case"application/json":F=await Z.json();break;case"text/plain":F=await Z.text();break;case"application/x-www-form-urlencoded":F=vZ(await Z.text());break;case"application/octet-stream":F=await Z.arrayBuffer();break;case"multipart/form-data":F={};let T=await Z.formData();for(let P of T.keys()){if(F[P])continue;let k=T.getAll(P);if(k.length===1)F[P]=k[0];else F[P]=k}break}else{let T=Z.headers.get("content-type");if(T){let P=T.indexOf(";");if(P!==-1)T=T.slice(0,P);if(H.contentType=T,N.parse)for(let k=0;k<N.parse.length;k++){let r=N.parse[k].fn,n=r(H,T);if(n instanceof Promise)n=await n;if(n){F=n;break}}if(delete H.contentType,F===void 0)switch(T){case"application/json":F=await Z.json();break;case"text/plain":F=await Z.text();break;case"application/x-www-form-urlencoded":F=vZ(await Z.text());break;case"application/octet-stream":F=await Z.arrayBuffer();break;case"multipart/form-data":F={};let k=await Z.formData();for(let r of k.keys()){if(F[r])continue;let n=k.getAll(r);if(n.length===1)F[r]=n[0];else F[r]=n}break}}}H.route=L,H.body=F,H.params=U?.params||void 0,H.query=Q===-1?{}:vZ(W.substring(Q+1)),H.headers={};for(let[T,P]of Z.headers.entries())H.headers[T]=P;let g=Object.assign({},Y.config?.cookie,O?.cookie?.config),V=Z.headers.get("cookie");H.cookie=await b2(H.set,V,g?{secrets:g.secrets!==void 0?typeof g.secrets==="string"?g.secrets:g.secrets.join(","):void 0,sign:g.sign===!0?!0:g.sign!==void 0?typeof g.sign==="string"?g.sign:g.sign.join(","):void 0}:void 0);let v=O?.createHeaders?.();if(v)iJ(v,H.headers);let s=O?.createParams?.();if(s)iJ(s,H.params);let o=O?.createQuery?.();if(o)iJ(o,H.query);if(N.transform)for(let T=0;T<N.transform.length;T++){let P=N.transform[T],k=P.fn(H);if(P.subType==="derive")if(k instanceof Promise)Object.assign(H,await k);else Object.assign(H,k);else if(k instanceof Promise)await k}if(O){if(v){let T=structuredClone(H.headers);for(let[P,k]of Z.headers)T[P]=k;if(O.headers.Check(T)===!1)throw new T1("header",O.headers,T)}else if(O.headers?.Decode)H.headers=O.headers.Decode(H.headers);if(s?.Check(H.params)===!1)throw new T1("params",O.params,H.params);else if(O.params?.Decode)H.params=O.params.Decode(H.params);if(o?.Check(H.query)===!1)throw new T1("query",O.query,H.query);else if(O.query?.Decode)H.query=O.query.Decode(H.query);if(O.createCookie?.()){let T={};for(let[P,k]of Object.entries(H.cookie))T[P]=k.value;if(O.cookie.Check(T)===!1)throw new T1("cookie",O.cookie,T);else if(O.cookie?.Decode)T=O.cookie.Decode(T)}if(O.createBody?.()?.Check(F)===!1)throw new T1("body",O.body,F);else if(O.body?.Decode)H.body=O.body.Decode(F)}if(N.beforeHandle)for(let T=0;T<N.beforeHandle.length;T++){let P=N.beforeHandle[T],k=P.fn(H);if(P.subType==="resolve"){if(k instanceof u0){let r=$(k,H.set);if(r)return H.response=r}if(k instanceof Promise)Object.assign(H,await k);else Object.assign(H,k);continue}else if(k instanceof Promise)k=await k;if(k!==void 0){if(H.response=k,N.afterHandle)for(let n=0;n<N.afterHandle.length;n++){let X1=N.afterHandle[n].fn(H);if(X1 instanceof Promise)X1=await X1;if(X1)k=X1}let r=$(k,H.set);if(r)return H.response=r}}let x=typeof A==="function"?A(H):A;if(x instanceof Promise)x=await x;if(N.afterHandle)if(!N.afterHandle.length){let T=x instanceof u0?x.code:M.status?typeof M.status==="string"?sZ[M.status]:M.status:200,P=O?.createResponse?.()?.[T];if(P?.Check(x)===!1)throw new T1("response",P,x);else if(P?.Decode)x=P.Decode(x)}else{H.response=x;for(let T=0;T<N.afterHandle.length;T++){let P=N.afterHandle[T].fn(H);if(P instanceof Promise)P=await P;let k=$(P,H.set);if(k!==void 0){let r=O?.response?.[k.status];if(r?.Check(k)===!1)throw new T1("response",r,k);else if(r?.Decode)x=r.Decode(x);return H.response=k}}}if(H.set.cookie&&g?.sign){let T=!g.secrets?void 0:typeof g.secrets==="string"?g.secrets:g.secrets[0];if(g.sign===!0)for(let[P,k]of Object.entries(H.set.cookie))H.set.cookie[P].value=await mZ(k.value,"${secret}");else{let P=O?.cookie?.schema?.properties;for(let k of g.sign){if(!(k in P))continue;if(H.set.cookie[k]?.value)H.set.cookie[k].value=await mZ(H.set.cookie[k].value,T)}}}return X(H.response=x,H.set)}catch(U){let A=U instanceof OZ&&U.error?U.error:U;return Y.handleError(H,A)}finally{if(Y.event.afterResponse)for(let U of Y.event.afterResponse)await U.fn(H)}}},L_=(Y)=>{let{mapResponse:X}=Y["~adapter"].handler;return async($,Z)=>{let W=Object.assign($,{error:Z,code:Z.code});if(W.set=$.set,Y.event.error)for(let J=0;J<Y.event.error.length;J++){let Q=Y.event.error[J].fn(W);if(Q instanceof Promise)Q=await Q;if(Q!==void 0&&Q!==null)return $.response=X(Q,$.set)}return new Response(typeof Z.cause==="string"?Z.cause:Z.message,{headers:$.set.headers,status:Z.status??500})}};class v0{config;server=null;dependencies={};"~Prefix"="";"~Singleton"=null;"~Definitions"=null;"~Metadata"=null;"~Ephemeral"=null;"~Volatile"=null;"~Routes"=null;singleton={decorator:{},store:{},derive:{},resolve:{}};get store(){return this.singleton.store}get decorator(){return this.singleton.decorator}definitions={typebox:B.Module({}),type:{},error:{}};extender={macros:[],higherOrderFunctions:[]};validator={global:null,scoped:null,local:null,getCandidate(){return U6(U6(this.global,this.scoped),this.local)}};standaloneValidator={global:null,scoped:null,local:null};event={};telemetry;router={"~http":void 0,get http(){if(!this["~http"])this["~http"]=new j$({lazy:!0});return this["~http"]},"~dynamic":void 0,get dynamic(){if(!this["~dynamic"])this["~dynamic"]=new j$;return this["~dynamic"]},static:{},response:{},history:[]};routeTree={};get routes(){return this.router.history}getGlobalRoutes(){return this.router.history}getGlobalDefinitions(){return this.definitions}inference={body:!1,cookie:!1,headers:!1,query:!1,set:!1,server:!1,path:!1,route:!1,url:!1};getServer(){return this.server}getParent(){return null}"~parser"={};_promisedModules;get promisedModules(){if(!this._promisedModules)this._promisedModules=new C2(console.error,()=>{});return this._promisedModules}constructor(Y={}){if(Y.tags)if(!Y.detail)Y.detail={tags:Y.tags};else Y.detail.tags=Y.tags;if(this.config={prefix:"",aot:B2.ELYSIA_AOT!=="false",nativeStaticResponse:!0,systemRouter:!0,encodeSchema:!0,normalize:!0,...Y,cookie:{path:"/",...Y?.cookie},experimental:Y?.experimental??{},seed:Y?.seed===void 0?"":Y?.seed},this["~adapter"]=Y.adapter??(typeof Bun!=="undefined"?K_:sJ),Y?.analytic&&(Y?.name||Y?.seed!==void 0))this.telemetry={stack:new Error().stack}}"~adapter";env(Y,X=B2){if(R0(Y,{modules:this.definitions.typebox,dynamic:!0,additionalProperties:!0,coerce:!0,sanitize:()=>this.config.sanitize}).Check(X)===!1){let $=new T1("env",Y,X);throw new Error($.all.map((Z)=>Z.summary).join(`
|
|
`))}return this}wrap(Y){return this.extender.higherOrderFunctions.push({checksum:R$(JSON.stringify({name:this.config.name,seed:this.config.seed,content:Y.toString()})),fn:Y}),this}applyMacro(Y){if(this.extender.macros.length){let X=gq({globalHook:this.event,localHook:Y}),$={events:{global:this.event,local:Y},get onParse(){return X("parse")},get onTransform(){return X("transform")},get onBeforeHandle(){return X("beforeHandle")},get onAfterHandle(){return X("afterHandle")},get mapResponse(){return X("mapResponse")},get onAfterResponse(){return X("afterResponse")},get onError(){return X("error")}};for(let Z of this.extender.macros)bq(Z.fn($),Y,X)}}get models(){let Y={};for(let X of Object.keys(this.definitions.type))Y[X]=R0(this.definitions.typebox.Import(X));return Y.modules=this.definitions.typebox,Y}add(Y,X,$,Z,W,J){let Q=W?.skipPrefix??!1,G=W?.allowMeta??!1;if(Z??={},J===void 0){if(J=[],this.standaloneValidator.local)J=J.concat(this.standaloneValidator.local);if(this.standaloneValidator.scoped)J=J.concat(this.standaloneValidator.scoped);if(this.standaloneValidator.global)J=J.concat(this.standaloneValidator.global)}if(X!==""&&X.charCodeAt(0)!==47)X="/"+X;if(this.config.prefix&&!Q)X=this.config.prefix+X;if(Z?.type)switch(Z.type){case"text":Z.type="text/plain";break;case"json":Z.type="application/json";break;case"formdata":Z.type="multipart/form-data";break;case"urlencoded":Z.type="application/x-www-form-urlencoded";break;case"arrayBuffer":Z.type="application/octet-stream";break;default:break}let M=this.validator.getCandidate(),H={body:Z?.body??M?.body,headers:Z?.headers??M?.headers,params:Z?.params??M?.params,query:Z?.query??M?.query,cookie:Z?.cookie??M?.cookie,response:Z?.response??M?.response},U=this.config.precompile===!0||typeof this.config.precompile==="object"&&this.config.precompile.compose===!0,A=()=>{let P=this.definitions.type,k=!this.config.aot,r=this.config.normalize,n=this.definitions.typebox,X1=()=>this.config.sanitize,W1=()=>{if(H.cookie||J.find(($1)=>$1.cookie))return m2({modules:n,validator:H.cookie,defaultConfig:this.config.cookie,config:H.cookie?.config??{},dynamic:k,models:P,validators:J.map(($1)=>$1.cookie),sanitize:X1})};return U?{body:R0(H.body,{modules:n,dynamic:k,models:P,normalize:r,additionalCoerce:aJ(),validators:J.map(($1)=>$1.body),sanitize:X1}),headers:R0(H.headers,{modules:n,dynamic:k,models:P,additionalProperties:!0,coerce:!0,additionalCoerce:mX(),validators:J.map(($1)=>$1.headers),sanitize:X1}),params:R0(H.params,{modules:n,dynamic:k,models:P,coerce:!0,additionalCoerce:mX(),validators:J.map(($1)=>$1.params),sanitize:X1}),query:R0(H.query,{modules:n,dynamic:k,models:P,normalize:r,coerce:!0,additionalCoerce:mX(),validators:J.map(($1)=>$1.query),sanitize:X1}),cookie:W1(),response:N2(H.response,{modules:n,dynamic:k,models:P,normalize:r,validators:J.map(($1)=>$1.response),sanitize:X1})}:{createBody(){if(this.body)return this.body;return this.body=R0(H.body,{modules:n,dynamic:k,models:P,normalize:r,additionalCoerce:aJ(),validators:J.map(($1)=>$1.body),sanitize:X1})},createHeaders(){if(this.headers)return this.headers;return this.headers=R0(H.headers,{modules:n,dynamic:k,models:P,additionalProperties:!r,coerce:!0,additionalCoerce:mX(),validators:J.map(($1)=>$1.headers),sanitize:X1})},createParams(){if(this.params)return this.params;return this.params=R0(H.params,{modules:n,dynamic:k,models:P,coerce:!0,additionalCoerce:mX(),validators:J.map(($1)=>$1.params),sanitize:X1})},createQuery(){if(this.query)return this.query;return this.query=R0(H.query,{modules:n,dynamic:k,models:P,coerce:!0,additionalCoerce:mX(),validators:J.map(($1)=>$1.query),sanitize:X1})},createCookie(){if(this.cookie)return this.cookie;return this.cookie=W1()},createResponse(){if(this.response)return this.response;return this.response=N2(H.response,{modules:n,dynamic:k,models:P,normalize:r,validators:J.map(($1)=>$1.response),sanitize:X1})}}};if(M.body||M.cookie||M.headers||M.params||M.query||M.response)Z=hY(Z,M);if(Z.tags)if(!Z.detail)Z.detail={tags:Z.tags};else Z.detail.tags=Z.tags;if(f1(this.config.detail))Z.detail=$8(Object.assign({},this.config.detail),Z.detail);this.applyMacro(Z);let N=f1(this.event)?hY(this.event,$2(Z)):Iq($2(Z));if(this.config.aot===!1){let P=A();this.router.dynamic.add(Y,X,{validator:P,hooks:N,content:Z?.type,handle:$,route:X});let k=D6(X,{dynamic:!0});if(X!==k)this.router.dynamic.add(Y,k,{validator:P,hooks:N,content:Z?.type,handle:$,route:X});if(this.config.strictPath===!1){let r=E$(X);this.router.dynamic.add(Y,r,{validator:P,hooks:N,content:Z?.type,handle:$,route:X});let n=D6(r);if(r!==n)this.router.dynamic.add(Y,r,{validator:P,hooks:N,content:Z?.type,handle:$,route:X})}this.router.history.push({method:Y,path:X,composed:null,handler:$,compile:void 0,hooks:N,standaloneValidators:J});return}let O=this["~adapter"].handler,z=typeof $!=="function"?()=>{let P=O.createNativeStaticHandler?.($,N,this.setHeaders);return P instanceof Promise?P.then((k)=>{if(k)return k}):P?.()}:void 0,L=this.config.nativeStaticResponse===!0;if(L&&z&&(Y==="GET"||Y==="ALL"))this.router.response[X]=z();let F,g=()=>{if(F)return F;return F=D_({app:this,path:X,method:Y,hooks:N,validator:A(),handler:typeof $!=="function"&&typeof O.createStaticHandler!=="function"?()=>$:$,allowMeta:G,inference:this.inference})},V;if(`${Y}_${X}`in this.routeTree)for(let P=0;P<this.router.history.length;P++){let k=this.router.history[P];if(k.path===X&&k.method===Y){V=P;break}}else this.routeTree[`${Y}_${X}`]=this.router.history.length;let v=V??this.router.history.length,s=U?g():(P)=>(this.router.history[v].composed=g())(P);if(V!==void 0)this.router.history[V]=Object.assign({method:Y,path:X,composed:s,compile:g,handler:$,hooks:N},J.length?{standaloneValidators:J}:void 0,Z.webSocket?{websocket:Z.websocket}:void 0);else this.router.history.push(Object.assign({method:Y,path:X,composed:s,compile:g,handler:$,hooks:N},J.length?{standaloneValidators:J}:void 0,Z.webSocket?{websocket:Z.websocket}:void 0));let o={handler:U?s:void 0,compile(){return this.handler=g()}},x=this.router.static,T=X.indexOf(":")===-1&&X.indexOf("*")===-1;if(Y==="WS"){if(T){if(X in x)x[X][Y]=v;else x[X]={[Y]:v};return}if(this.router.http.add("WS",X,o),!this.config.strictPath)this.router.http.add("WS",E$(X),o);let P=D6(X,{dynamic:!0});if(X!==P)this.router.http.add("WS",P,o);return}if(T){if(X in x)x[X][Y]=v;else x[X]={[Y]:v};if(!this.config.strictPath&&L&&z&&(Y==="GET"||Y==="ALL"))this.router.response[E$(X)]=z()}else{this.router.http.add(Y,X,o);let P=typeof $!=="function"&&typeof O.createStaticHandler==="function"?O.createStaticHandler($,N,this.setHeaders):void 0;if(!this.config.strictPath){let r=E$(X);if(L&&P&&(Y==="GET"||Y==="ALL"))this.router.response[r]=P();this.router.http.add(Y,r,o)}let k=D6(X,{dynamic:!0});if(X!==k){if(this.router.http.add(Y,k,o),L&&P&&(Y==="GET"||Y==="ALL"))this.router.response[k]=P(),this.router.response[E$(k)]=P()}}}setHeaders;headers(Y){if(!Y)return this;if(!this.setHeaders)this.setHeaders={};return this.setHeaders=$8(this.setHeaders,Y),this}onStart(Y){return this.on("start",Y),this}onRequest(Y){return this.on("request",Y),this}onParse(Y,X){if(!X){if(typeof Y==="string")return this.on("parse",this["~parser"][Y]);return this.on("parse",Y)}return this.on(Y,"parse",X)}parser(Y,X){return this["~parser"][Y]=X,this}onTransform(Y,X){if(!X)return this.on("transform",Y);return this.on(Y,"transform",X)}resolve(Y,X){if(!X)X=Y,Y={as:"local"};let $={subType:"resolve",fn:X};return this.onBeforeHandle(Y,$)}mapResolve(Y,X){if(!X)X=Y,Y={as:"local"};let $={subType:"mapResolve",fn:X};return this.onBeforeHandle(Y,$)}onBeforeHandle(Y,X){if(!X)return this.on("beforeHandle",Y);return this.on(Y,"beforeHandle",X)}onAfterHandle(Y,X){if(!X)return this.on("afterHandle",Y);return this.on(Y,"afterHandle",X)}mapResponse(Y,X){if(!X)return this.on("mapResponse",Y);return this.on(Y,"mapResponse",X)}onAfterResponse(Y,X){if(!X)return this.on("afterResponse",Y);return this.on(Y,"afterResponse",X)}trace(Y,X){if(!X)X=Y,Y={as:"local"};if(!Array.isArray(X))X=[X];for(let $ of X)this.on(Y,"trace",Y_($));return this}error(Y,X){switch(typeof Y){case"string":return X.prototype[pZ]=Y,this.definitions.error[Y]=X,this;case"function":return this.definitions.error=Y(this.definitions.error),this}for(let[$,Z]of Object.entries(Y))Z.prototype[pZ]=$,this.definitions.error[$]=Z;return this}onError(Y,X){if(!X)return this.on("error",Y);return this.on(Y,"error",X)}onStop(Y){return this.on("stop",Y),this}on(Y,X,$){let Z;switch(typeof Y){case"string":Z=Y,$=X;break;case"object":if(Z=X,!Array.isArray(X)&&typeof X==="object")$=X;break}if(Array.isArray($))$=F0($);else if(typeof $==="function")$=[{fn:$}];else $=[$];let W=$;for(let J of W)if(J.scope=typeof Y==="string"?"local":Y?.as??"local",Z==="resolve"||Z==="derive")J.subType=Z;if(Z!=="trace")this.inference=L6({[Z]:W.map((J)=>J.fn)},this.inference);for(let J of W){let Q=Tq(J,"global",{skipIfHasType:!0});switch(Z){case"start":this.event.start??=[],this.event.start.push(Q);break;case"request":this.event.request??=[],this.event.request.push(Q);break;case"parse":this.event.parse??=[],this.event.parse.push(Q);break;case"transform":this.event.transform??=[],this.event.transform.push(Q);break;case"derive":this.event.transform??=[],this.event.transform.push(F0(Q,"derive"));break;case"beforeHandle":this.event.beforeHandle??=[],this.event.beforeHandle.push(Q);break;case"resolve":this.event.beforeHandle??=[],this.event.beforeHandle.push(F0(Q,"resolve"));break;case"afterHandle":this.event.afterHandle??=[],this.event.afterHandle.push(Q);break;case"mapResponse":this.event.mapResponse??=[],this.event.mapResponse.push(Q);break;case"afterResponse":this.event.afterResponse??=[],this.event.afterResponse.push(Q);break;case"trace":this.event.trace??=[],this.event.trace.push(Q);break;case"error":this.event.error??=[],this.event.error.push(Q);break;case"stop":this.event.stop??=[],this.event.stop.push(Q);break}}return this}as(Y){if(UX(this.event.parse,Y),UX(this.event.transform,Y),UX(this.event.beforeHandle,Y),UX(this.event.afterHandle,Y),UX(this.event.mapResponse,Y),UX(this.event.afterResponse,Y),UX(this.event.trace,Y),UX(this.event.error,Y),Y==="scoped")this.validator.scoped=U6(this.validator.scoped,this.validator.local),this.validator.local=null;else if(Y==="global")this.validator.global=U6(this.validator.global,U6(this.validator.scoped,this.validator.local)),this.validator.scoped=null,this.validator.local=null;return this}group(Y,X,$){let Z=new v0({...this.config,prefix:""});Z.singleton={...this.singleton},Z.definitions={...this.definitions},Z.getServer=()=>this.getServer(),Z.inference=W2(this.inference),Z.extender={...this.extender},Z["~parser"]=this["~parser"],Z.standaloneValidator={local:[...this.standaloneValidator.local??[]],scoped:[...this.standaloneValidator.scoped??[]],global:[...this.standaloneValidator.global??[]]};let W=typeof X==="object",J=(W?$:X)(Z);if(this.singleton=$8(this.singleton,Z.singleton),this.definitions=$8(this.definitions,Z.definitions),J.event.request?.length)this.event.request=[...this.event.request||[],...J.event.request||[]];if(J.event.mapResponse?.length)this.event.mapResponse=[...this.event.mapResponse||[],...J.event.mapResponse||[]];return this.model(J.definitions.type),Object.values(Z.router.history).forEach(({method:Q,path:G,handler:M,hooks:H,standaloneValidators:U})=>{if(G=(W?"":this.config.prefix)+Y+G,W){let A=X,N=H;this.add(Q,G,M,hY(A,{...N||{},error:!N.error?J.event.error:Array.isArray(N.error)?[...N.error||{},...J.event.error||{}]:[N.error,...J.event.error||{}]}),void 0,U)}else this.add(Q,G,M,hY(H,{error:J.event.error}),{skipPrefix:!0},U)}),this}guard(Y,X){if(!X){if(typeof Y==="object"){if(this.applyMacro(Y),Y.detail)if(this.config.detail)this.config.detail=$8(Object.assign({},this.config.detail),Y.detail);else this.config.detail=Y.detail;if(Y.tags)if(!this.config.detail)this.config.detail={tags:Y.tags};else this.config.detail.tags=Y.tags;let W=Y.as??"local";if(Y.schema==="standalone"){if(!this.standaloneValidator[W])this.standaloneValidator[W]=[];let J=Y?.response||typeof Y?.response==="string"||Y?.response&&R in Y.response?{200:Y.response}:Y?.response;return this.standaloneValidator[W].push({body:Y.body,headers:Y.headers,params:Y.params,query:Y.query,response:J,cookie:Y.cookie}),this}if(this.validator[W]={body:Y.body??this.validator[W]?.body,headers:Y.headers??this.validator[W]?.headers,params:Y.params??this.validator[W]?.params,query:Y.query??this.validator[W]?.query,response:Y.response??this.validator[W]?.response,cookie:Y.cookie??this.validator[W]?.cookie},Y.parse)this.on({as:W},"parse",Y.parse);if(Y.transform)this.on({as:W},"transform",Y.transform);if(Y.derive)this.on({as:W},"derive",Y.derive);if(Y.beforeHandle)this.on({as:W},"beforeHandle",Y.beforeHandle);if(Y.resolve)this.on({as:W},"resolve",Y.resolve);if(Y.afterHandle)this.on({as:W},"afterHandle",Y.afterHandle);if(Y.mapResponse)this.on({as:W},"mapResponse",Y.mapResponse);if(Y.afterResponse)this.on({as:W},"afterResponse",Y.afterResponse);if(Y.error)this.on({as:W},"error",Y.error);return this}return this.guard({},Y)}let $=new v0({...this.config,prefix:""});$.singleton={...this.singleton},$.definitions={...this.definitions},$.inference=W2(this.inference),$.extender={...this.extender};let Z=X($);if(this.singleton=$8(this.singleton,$.singleton),this.definitions=$8(this.definitions,$.definitions),Z.getServer=()=>this.server,Z.event.request?.length)this.event.request=[...this.event.request||[],...Z.event.request||[]];if(Z.event.mapResponse?.length)this.event.mapResponse=[...this.event.mapResponse||[],...Z.event.mapResponse||[]];return this.model(Z.definitions.type),Object.values($.router.history).forEach(({method:W,path:J,handler:Q,hooks:G})=>{this.add(W,J,Q,hY(Y,{...G||{},error:!G.error?Z.event.error:Array.isArray(G.error)?[...G.error||{},...Z.event.error||[]]:[G.error,...Z.event.error||[]]}))}),this}use(Y,X){if(Array.isArray(Y)){let $=this;for(let Z of Y)$=$.use(Z);return $}if(X?.scoped)return this.guard({},($)=>$.use(Y));if(Array.isArray(Y)){let $=this;for(let Z of Y)$=this.use(Z);return $}if(Y instanceof Promise)return this.promisedModules.add(Y.then(($)=>{if(typeof $==="function")return $(this);if($ instanceof v0)return this._use($).compile();if($.constructor.name==="Elysia")return this._use($).compile();if(typeof $.default==="function")return $.default(this);if($.default instanceof v0)return this._use($.default);if($.constructor.name==="Elysia")return this._use($.default);if($.constructor.name==="_Elysia")return this._use($.default);try{return this._use($.default)}catch(Z){throw console.error('Invalid plugin type. Expected Elysia instance, function, or module with "default" as Elysia instance or function that returns Elysia instance.'),Z}}).then(($)=>{if($&&typeof $.compile==="function")$.compile();return $})),this;return this._use(Y)}propagatePromiseModules(Y){if(Y.promisedModules.size<=0)return this;for(let X of Y.promisedModules.promises)this.promisedModules.add(X.then(($)=>{if(!$)return;let Z=this._use($);if(Z instanceof Promise)return Z.then((W)=>{if(W)W.compile();else $.compile()});return $.compile()}));return this}_use(Y){if(typeof Y==="function"){let W=Y(this);if(W instanceof Promise)return this.promisedModules.add(W.then((J)=>{if(J instanceof v0){J.getServer=()=>this.getServer(),J.getGlobalRoutes=()=>this.getGlobalRoutes(),J.getGlobalDefinitions=()=>this.getGlobalDefinitions(),J.model(this.definitions.type),J.error(this.definitions.error);for(let{method:Q,path:G,handler:M,hooks:H,standaloneValidators:U}of Object.values(J.router.history))this.add(Q,G,M,f1(J.event.error)?hY(H,{error:J.event.error}):H,void 0,U);if(J===this)return;return this.propagatePromiseModules(J),J}if(typeof J==="function")return J(this);if(typeof J.default==="function")return J.default(this);return this._use(J)}).then((J)=>{if(J&&typeof J.compile==="function")J.compile();return J})),this;return W}this.propagatePromiseModules(Y);let X=Y.config.name,$=Y.config.seed;if(Y.getParent=()=>this,Y.getServer=()=>this.getServer(),Y.getGlobalRoutes=()=>this.getGlobalRoutes(),Y.getGlobalDefinitions=()=>this.getGlobalDefinitions(),Y.standaloneValidator?.scoped)if(this.standaloneValidator.local)this.standaloneValidator.local=this.standaloneValidator.local.concat(Y.standaloneValidator.scoped);else this.standaloneValidator.local=Y.standaloneValidator.scoped;if(Y.standaloneValidator?.global)if(this.standaloneValidator.global)this.standaloneValidator.global=this.standaloneValidator.global.concat(Y.standaloneValidator.global);else this.standaloneValidator.global=Y.standaloneValidator.global;if(f1(Y["~parser"]))this["~parser"]={...Y["~parser"],...this["~parser"]};if(Y.setHeaders)this.headers(Y.setHeaders);if(X){if(!(X in this.dependencies))this.dependencies[X]=[];let W=$!==void 0?R$(X+JSON.stringify($)):0;if(!this.dependencies[X].some(({checksum:J})=>W===J))this.extender.macros=this.extender.macros.concat(Y.extender.macros),this.extender.higherOrderFunctions=this.extender.higherOrderFunctions.concat(Y.extender.higherOrderFunctions)}else{if(Y.extender.macros.length)this.extender.macros=this.extender.macros.concat(Y.extender.macros);if(Y.extender.higherOrderFunctions.length)this.extender.higherOrderFunctions=this.extender.higherOrderFunctions.concat(Y.extender.higherOrderFunctions)}J2(this.extender.macros),J2(this.extender.higherOrderFunctions);let Z=[];for(let W=0;W<this.extender.higherOrderFunctions.length;W++){let J=this.extender.higherOrderFunctions[W];if(J.checksum){if(Z.includes(J.checksum))this.extender.higherOrderFunctions.splice(W,1),W--;Z.push(J.checksum)}}if(Z.length=0,this.inference=tJ(this.inference,Y.inference),f1(Y.singleton.decorator))this.decorate(Y.singleton.decorator);if(f1(Y.singleton.store))this.state(Y.singleton.store);if(f1(Y.definitions.type))this.model(Y.definitions.type);if(f1(Y.definitions.error))this.error(Y.definitions.error);if(f1(Y.definitions.error))Y.extender.macros=this.extender.macros.concat(Y.extender.macros);for(let{method:W,path:J,handler:Q,hooks:G,standaloneValidators:M}of Object.values(Y.router.history))this.add(W,J,Q,f1(Y.event.error)?hY(G,{error:Y.event.error}):G,void 0,M);if(X){if(!(X in this.dependencies))this.dependencies[X]=[];let W=$!==void 0?R$(X+JSON.stringify($)):0;if(this.dependencies[X].some(({checksum:J})=>W===J))return this;if(this.dependencies[X].push(this.config?.analytic?{name:Y.config.name,seed:Y.config.seed,checksum:W,dependencies:Y.dependencies,stack:Y.telemetry?.stack,routes:Y.router.history,decorators:Y.singleton,store:Y.singleton.store,error:Y.definitions.error,derive:Y.event.transform?.filter((J)=>J?.subType==="derive").map((J)=>({fn:J.toString(),stack:new Error().stack??""})),resolve:Y.event.transform?.filter((J)=>J?.subType==="resolve").map((J)=>({fn:J.toString(),stack:new Error().stack??""}))}:{name:Y.config.name,seed:Y.config.seed,checksum:W,dependencies:Y.dependencies}),f1(Y.event))this.event=rQ(this.event,aQ(Y.event),W)}else if(f1(Y.event))this.event=rQ(this.event,aQ(Y.event));if(Y.validator.global)this.validator.global=hY(this.validator.global,{...Y.validator.global});if(Y.validator.scoped)this.validator.local=hY(this.validator.local,{...Y.validator.scoped});return this}macro(Y){if(typeof Y==="function"){let X={checksum:R$(JSON.stringify({name:this.config.name,seed:this.config.seed,content:Y.toString()})),fn:Y};this.extender.macros.push(X)}else if(typeof Y==="object"){for(let $ of Object.keys(Y))if(typeof Y[$]==="object"){let Z={...Y[$]};Y[$]=(W)=>{if(W===!0)return Z}}let X={checksum:R$(JSON.stringify({name:this.config.name,seed:this.config.seed,content:Object.entries(Y).map(([$,Z])=>`${$}+${Z}`).join(",")})),fn:()=>Y};this.extender.macros.push(X)}return this}mount(Y,X,$){if(Y instanceof v0||typeof Y==="function"||Y.length===0||Y==="/"){let Q=typeof Y==="function"?Y:Y instanceof v0?Y.compile().fetch:X instanceof v0?X.compile().fetch:typeof X==="function"?X:(()=>{throw new Error("Invalid handler")})(),G=({request:M,path:H})=>Q(new Request(sQ(M.url,H),{method:M.method,headers:M.headers,signal:M.signal,credentials:M.credentials,referrerPolicy:M.referrerPolicy,duplex:M.duplex,redirect:M.redirect,mode:M.mode,keepalive:M.keepalive,integrity:M.integrity,body:M.body}));return this.route("ALL","/*",G,{parse:"none",...$,detail:{...$?.detail,hide:!0},config:{mount:Q}}),this}let Z=X instanceof v0?X.compile().fetch:typeof X==="function"?X:(()=>{throw new Error("Invalid handler")})(),W=Y.length-(Y.endsWith("*")?1:0),J=({request:Q,path:G})=>Z(new Request(sQ(Q.url,G.slice(W)||"/"),{method:Q.method,headers:Q.headers,signal:Q.signal,credentials:Q.credentials,referrerPolicy:Q.referrerPolicy,duplex:Q.duplex,redirect:Q.redirect,mode:Q.mode,keepalive:Q.keepalive,integrity:Q.integrity,body:Q.body}));return this.route("ALL",Y,J,{parse:"none",...$,detail:{...$?.detail,hide:!0},config:{mount:Z}}),this.route("ALL",Y+(Y.endsWith("/")?"*":"/*"),J,{parse:"none",...$,detail:{...$?.detail,hide:!0},config:{mount:Z}}),this}get(Y,X,$){return this.add("GET",Y,X,$),this}post(Y,X,$){return this.add("POST",Y,X,$),this}put(Y,X,$){return this.add("PUT",Y,X,$),this}patch(Y,X,$){return this.add("PATCH",Y,X,$),this}delete(Y,X,$){return this.add("DELETE",Y,X,$),this}options(Y,X,$){return this.add("OPTIONS",Y,X,$),this}all(Y,X,$){return this.add("ALL",Y,X,$),this}head(Y,X,$){return this.add("HEAD",Y,X,$),this}connect(Y,X,$){return this.add("CONNECT",Y,X,$),this}route(Y,X,$,Z){return this.add(Y.toUpperCase(),X,$,Z,Z?.config),this}ws(Y,X){if(this["~adapter"].ws)this["~adapter"].ws(this,Y,X);else console.warn("Current adapter doesn't support WebSocket");return this}state(Y,X,$){if(X===void 0)$=Y,Y={as:"append"},X="";else if($===void 0){if(typeof Y==="string")$=X,X=Y,Y={as:"append"};else if(typeof Y==="object")$=X,X=""}let{as:Z}=Y;if(typeof X!=="string")return this;switch(typeof $){case"object":if(!$||!f1($))return this;if(X){if(X in this.singleton.store)this.singleton.store[X]=$8(this.singleton.store[X],$,{override:Z==="override"});else this.singleton.store[X]=$;return this}if($===null)return this;return this.singleton.store=$8(this.singleton.store,$,{override:Z==="override"}),this;case"function":if(X){if(Z==="override"||!(X in this.singleton.store))this.singleton.store[X]=$}else this.singleton.store=$(this.singleton.store);return this;default:if(Z==="override"||!(X in this.singleton.store))this.singleton.store[X]=$;return this}}decorate(Y,X,$){if(X===void 0)$=Y,Y={as:"append"},X="";else if($===void 0){if(typeof Y==="string")$=X,X=Y,Y={as:"append"};else if(typeof Y==="object")$=X,X=""}let{as:Z}=Y;if(typeof X!=="string")return this;switch(typeof $){case"object":if(X){if(X in this.singleton.decorator)this.singleton.decorator[X]=$8(this.singleton.decorator[X],$,{override:Z==="override"});else this.singleton.decorator[X]=$;return this}if($===null)return this;return this.singleton.decorator=$8(this.singleton.decorator,$,{override:Z==="override"}),this;case"function":if(X){if(Z==="override"||!(X in this.singleton.decorator))this.singleton.decorator[X]=$}else this.singleton.decorator=$(this.singleton.decorator);return this;default:if(Z==="override"||!(X in this.singleton.decorator))this.singleton.decorator[X]=$;return this}}derive(Y,X){if(!X)X=Y,Y={as:"local"};let $={subType:"derive",fn:X};return this.onTransform(Y,$)}model(Y,X){switch(typeof Y){case"object":let $={},Z=Object.entries(Y);if(!Z.length)return this;for(let[Q,G]of Z){if(Q in this.definitions.type)continue;$[Q]=this.definitions.type[Q]=G,$[Q].$id??=`#/components/schemas/${Q}`}return this.definitions.typebox=B.Module({...this.definitions.typebox.$defs,...$}),this;case"function":let W=Y(this.definitions.type);return this.definitions.type=W,this.definitions.typebox=B.Module(W),this;case"string":if(!X)break;let J={...X,id:X.$id??`#/components/schemas/${Y}`};return this.definitions.type[Y]=X,this.definitions.typebox=B.Module({...this.definitions.typebox.$defs,...J}),this}return this.definitions.type[Y]=X,this.definitions.typebox=B.Module({...this.definitions.typebox.$defs,[Y]:X}),this}Ref(Y){return B.Ref(Y)}mapDerive(Y,X){if(!X)X=Y,Y={as:"local"};let $={subType:"mapDerive",fn:X};return this.onTransform(Y,$)}affix(Y,X,$){if($==="")return this;let Z=["_","-"," "],W=(M)=>M[0].toUpperCase()+M.slice(1),J=Y==="prefix"?(M,H)=>Z.includes(M.at(-1)??"")?M+H:M+W(H):Z.includes($.at(-1)??"")?(M,H)=>H+M:(M,H)=>H+W(M),Q=(M)=>{let H={};switch(M){case"decorator":for(let U in this.singleton.decorator)H[J($,U)]=this.singleton.decorator[U];this.singleton.decorator=H;break;case"state":for(let U in this.singleton.store)H[J($,U)]=this.singleton.store[U];this.singleton.store=H;break;case"model":for(let U in this.definitions.type)H[J($,U)]=this.definitions.type[U];this.definitions.type=H;break;case"error":for(let U in this.definitions.error)H[J($,U)]=this.definitions.error[U];this.definitions.error=H;break}},G=Array.isArray(X)?X:[X];for(let M of G.some((H)=>H==="all")?["decorator","state","model","error"]:G)Q(M);return this}prefix(Y,X){return this.affix("prefix",Y,X)}suffix(Y,X){return this.affix("suffix",Y,X)}compile(){if(this["~adapter"].isWebStandard){if(this.fetch=this.config.aot?pJ(this):K2(this),typeof this.server?.reload==="function")this.server.reload({...this.server||{},fetch:this.fetch});return this}if(typeof this.server?.reload==="function")this.server.reload(this.server||{});return this._handle=pJ(this),this}handle=async(Y)=>this.fetch(Y);fetch=(Y)=>{return(this.fetch=this.config.aot?pJ(this):K2(this))(Y)};handleError=async(Y,X)=>{return(this.handleError=this.config.aot?u2(this):L_(this))(Y,X)};listen=(Y,X)=>{if(this["~adapter"].listen(this)(Y,X),this.promisedModules.size)U2(5000);return this.promisedModules.then(()=>{U2(1000)}),this};stop=async(Y)=>{if(!this.server)throw new Error("Elysia isn't running. Call `app.listen` to start the server.");if(this.server){if(this.server.stop(Y),this.server=null,this.event.stop?.length)for(let X=0;X<this.event.stop.length;X++)this.event.stop[X].fn(this)}};get modules(){return this.promisedModules}}var f4={};RY(f4,{unitsTable:()=>Z1});var K=Symbol.for("drizzle:entityKind"),av=Symbol.for("drizzle:hasOwnEntityKind");function I(Y,X){if(!Y||typeof Y!=="object")return!1;if(Y instanceof X)return!0;if(!Object.prototype.hasOwnProperty.call(X,K))throw new Error(`Class "${X.name??"<unknown>"}" doesn't look like a Drizzle entity. If this is incorrect and the class is provided by Drizzle, please report this as a bug.`);let $=Object.getPrototypeOf(Y).constructor;if($)while($){if(K in $&&$[K]===X[K])return!0;$=Object.getPrototypeOf($)}return!1}class E1{constructor(Y,X){this.table=Y,this.config=X,this.name=X.name,this.keyAsName=X.keyAsName,this.notNull=X.notNull,this.default=X.default,this.defaultFn=X.defaultFn,this.onUpdateFn=X.onUpdateFn,this.hasDefault=X.hasDefault,this.primary=X.primaryKey,this.isUnique=X.isUnique,this.uniqueName=X.uniqueName,this.uniqueType=X.uniqueType,this.dataType=X.dataType,this.columnType=X.columnType,this.generated=X.generated,this.generatedIdentity=X.generatedIdentity}static[K]="Column";name;keyAsName;primary;notNull;default;defaultFn;onUpdateFn;hasDefault;isUnique;uniqueName;uniqueType;dataType;columnType;enumValues=void 0;generated=void 0;generatedIdentity=void 0;config;mapFromDriverValue(Y){return Y}mapToDriverValue(Y){return Y}shouldDisableInsert(){return this.config.generated!==void 0&&this.config.generated.type!=="byDefault"}}class G4{static[K]="ColumnBuilder";config;constructor(Y,X,$){this.config={name:Y,keyAsName:Y==="",notNull:!1,default:void 0,hasDefault:!1,primaryKey:!1,isUnique:!1,uniqueName:void 0,uniqueType:void 0,dataType:X,columnType:$,generated:void 0}}$type(){return this}notNull(){return this.config.notNull=!0,this}default(Y){return this.config.default=Y,this.config.hasDefault=!0,this}$defaultFn(Y){return this.config.defaultFn=Y,this.config.hasDefault=!0,this}$default=this.$defaultFn;$onUpdateFn(Y){return this.config.onUpdateFn=Y,this.config.hasDefault=!0,this}$onUpdate=this.$onUpdateFn;primaryKey(){return this.config.primaryKey=!0,this.config.notNull=!0,this}setName(Y){if(this.config.name!=="")return;this.config.name=Y}}var QY=Symbol.for("drizzle:Name");class M4{static[K]="PgForeignKeyBuilder";reference;_onUpdate="no action";_onDelete="no action";constructor(Y,X){if(this.reference=()=>{let{name:$,columns:Z,foreignColumns:W}=Y();return{name:$,columns:Z,foreignTable:W[0].table,foreignColumns:W}},X)this._onUpdate=X.onUpdate,this._onDelete=X.onDelete}onUpdate(Y){return this._onUpdate=Y===void 0?"no action":Y,this}onDelete(Y){return this._onDelete=Y===void 0?"no action":Y,this}build(Y){return new o2(Y,this)}}class o2{constructor(Y,X){this.table=Y,this.reference=X.reference,this.onUpdate=X._onUpdate,this.onDelete=X._onDelete}static[K]="PgForeignKey";reference;onUpdate;onDelete;getName(){let{name:Y,columns:X,foreignColumns:$}=this.reference(),Z=X.map((Q)=>Q.name),W=$.map((Q)=>Q.name),J=[this.table[QY],...Z,$[0].table[QY],...W];return Y??`${J.join("_")}_fk`}}function XW(Y,...X){return Y(...X)}function l2(Y){return new t2(Y)}function H4(Y,X){return`${Y[QY]}_${X.join("_")}_unique`}class n2{constructor(Y,X){this.name=X,this.columns=Y}static[K]="PgUniqueConstraintBuilder";columns;nullsNotDistinctConfig=!1;nullsNotDistinct(){return this.nullsNotDistinctConfig=!0,this}build(Y){return new s2(Y,this.columns,this.nullsNotDistinctConfig,this.name)}}class t2{static[K]="PgUniqueOnConstraintBuilder";name;constructor(Y){this.name=Y}on(...Y){return new n2(Y,this.name)}}class s2{constructor(Y,X,$,Z){this.table=Y,this.columns=X,this.name=Z??H4(this.table,this.columns.map((W)=>W.name)),this.nullsNotDistinct=$}static[K]="PgUniqueConstraint";columns;name;nullsNotDistinct=!1;getName(){return this.name}}function r2(Y,X,$){for(let Z=X;Z<Y.length;Z++){let W=Y[Z];if(W==="\\"){Z++;continue}if(W==='"')return[Y.slice(X,Z).replace(/\\/g,""),Z+1];if($)continue;if(W===","||W==="}")return[Y.slice(X,Z).replace(/\\/g,""),Z]}return[Y.slice(X).replace(/\\/g,""),Y.length]}function a2(Y,X=0){let $=[],Z=X,W=!1;while(Z<Y.length){let J=Y[Z];if(J===","){if(W||Z===X)$.push("");W=!0,Z++;continue}if(W=!1,J==="\\"){Z+=2;continue}if(J==='"'){let[M,H]=r2(Y,Z+1,!0);$.push(M),Z=H;continue}if(J==="}")return[$,Z+1];if(J==="{"){let[M,H]=a2(Y,Z+1);$.push(M),Z=H;continue}let[Q,G]=r2(Y,Z,!1);$.push(Q),Z=G}return[$,Z]}function e2(Y){let[X]=a2(Y,1);return X}function U4(Y){return`{${Y.map((X)=>{if(Array.isArray(X))return U4(X);if(typeof X==="string")return`"${X.replace(/\\/g,"\\\\").replace(/"/g,"\\\"")}"`;return`${X}`}).join(",")}}`}class i extends G4{foreignKeyConfigs=[];static[K]="PgColumnBuilder";array(Y){return new XG(this.config.name,this,Y)}references(Y,X={}){return this.foreignKeyConfigs.push({ref:Y,actions:X}),this}unique(Y,X){return this.config.isUnique=!0,this.config.uniqueName=Y,this.config.uniqueType=X?.nulls,this}generatedAlwaysAs(Y){return this.config.generated={as:Y,type:"always",mode:"stored"},this}buildForeignKeys(Y,X){return this.foreignKeyConfigs.map(({ref:$,actions:Z})=>{return XW((W,J)=>{let Q=new M4(()=>{let G=W();return{columns:[Y],foreignColumns:[G]}});if(J.onUpdate)Q.onUpdate(J.onUpdate);if(J.onDelete)Q.onDelete(J.onDelete);return Q.build(X)},$,Z)})}buildExtraConfigColumn(Y){return new YG(Y,this.config)}}class d extends E1{constructor(Y,X){if(!X.uniqueName)X.uniqueName=H4(Y,[X.name]);super(Y,X);this.table=Y}static[K]="PgColumn"}class YG extends d{static[K]="ExtraConfigColumn";getSQLType(){return this.getSQLType()}indexConfig={order:this.config.order??"asc",nulls:this.config.nulls??"last",opClass:this.config.opClass};defaultConfig={order:"asc",nulls:"last",opClass:void 0};asc(){return this.indexConfig.order="asc",this}desc(){return this.indexConfig.order="desc",this}nullsFirst(){return this.indexConfig.nulls="first",this}nullsLast(){return this.indexConfig.nulls="last",this}op(Y){return this.indexConfig.opClass=Y,this}}class XG extends i{static[K]="PgArrayBuilder";constructor(Y,X,$){super(Y,"array","PgArray");this.config.baseBuilder=X,this.config.size=$}build(Y){let X=this.config.baseBuilder.build(Y);return new z4(Y,this.config,X)}}class z4 extends d{constructor(Y,X,$,Z){super(Y,X);this.baseColumn=$,this.range=Z,this.size=X.size}size;static[K]="PgArray";getSQLType(){return`${this.baseColumn.getSQLType()}[${typeof this.size==="number"?this.size:""}]`}mapFromDriverValue(Y){if(typeof Y==="string")Y=e2(Y);return Y.map((X)=>this.baseColumn.mapFromDriverValue(X))}mapToDriverValue(Y,X=!1){let $=Y.map((Z)=>Z===null?null:I(this.baseColumn,z4)?this.baseColumn.mapToDriverValue(Z,!0):this.baseColumn.mapToDriverValue(Z));if(X)return $;return U4($)}}var $G=Symbol.for("drizzle:isPgEnum");function ZG(Y){return!!Y&&typeof Y==="function"&&$G in Y&&Y[$G]===!0}class q_ extends d{static[K]="PgEnumColumn";enum=this.config.enum;enumValues=this.config.enum.enumValues;constructor(Y,X){super(Y,X);this.enum=X.enum}getSQLType(){return this.enum.enumName}}class B0{static[K]="Subquery";constructor(Y,X,$,Z=!1){this._={brand:"Subquery",sql:Y,selectedFields:X,alias:$,isWith:Z}}}class _6 extends B0{static[K]="WithSubquery"}var WG="0.41.0";var D4,A4,v1={startActiveSpan(Y,X){if(!D4)return X();if(!A4)A4=D4.trace.getTracer("drizzle-orm",WG);return XW(($,Z)=>Z.startActiveSpan(Y,(W)=>{try{return X(W)}catch(J){throw W.setStatus({code:$.SpanStatusCode.ERROR,message:J instanceof Error?J.message:"Unknown error"}),J}finally{W.end()}}),D4,A4)}};var y1=Symbol.for("drizzle:ViewBaseConfig");var $W=Symbol.for("drizzle:Schema"),ZW=Symbol.for("drizzle:Columns"),JG=Symbol.for("drizzle:ExtraConfigColumns"),O4=Symbol.for("drizzle:OriginalName"),N4=Symbol.for("drizzle:BaseName"),R6=Symbol.for("drizzle:IsAlias"),QG=Symbol.for("drizzle:ExtraConfigBuilder"),GG=Symbol.for("drizzle:IsDrizzleTable");class c{static[K]="Table";static Symbol={Name:QY,Schema:$W,OriginalName:O4,Columns:ZW,ExtraConfigColumns:JG,BaseName:N4,IsAlias:R6,ExtraConfigBuilder:QG};[QY];[O4];[$W];[ZW];[JG];[N4];[R6]=!1;[GG]=!0;[QG]=void 0;constructor(Y,X,$){this[QY]=this[O4]=Y,this[$W]=X,this[N4]=$}}function w4(Y){return typeof Y==="object"&&Y!==null&&GG in Y}function Q8(Y){return Y[QY]}function cX(Y){return`${Y[$W]??"public"}.${Y[QY]}`}function F4(Y){return Y!==null&&Y!==void 0&&typeof Y.getSQL==="function"}function __(Y){let X={sql:"",params:[]};for(let $ of Y)if(X.sql+=$.sql,X.params.push(...$.params),$.typings?.length){if(!X.typings)X.typings=[];X.typings.push(...$.typings)}return X}class K0{static[K]="StringChunk";value;constructor(Y){this.value=Array.isArray(Y)?Y:[Y]}getSQL(){return new u([this])}}class u{constructor(Y){this.queryChunks=Y}static[K]="SQL";decoder=HG;shouldInlineParams=!1;append(Y){return this.queryChunks.push(...Y.queryChunks),this}toQuery(Y){return v1.startActiveSpan("drizzle.buildSQL",(X)=>{let $=this.buildQueryFromSourceParams(this.queryChunks,Y);return X?.setAttributes({"drizzle.query.text":$.sql,"drizzle.query.params":JSON.stringify($.params)}),$})}buildQueryFromSourceParams(Y,X){let $=Object.assign({},X,{inlineParams:X.inlineParams||this.shouldInlineParams,paramStartIndex:X.paramStartIndex||{value:0}}),{casing:Z,escapeName:W,escapeParam:J,prepareTyping:Q,inlineParams:G,paramStartIndex:M}=$;return __(Y.map((H)=>{if(I(H,K0))return{sql:H.value.join(""),params:[]};if(I(H,WW))return{sql:W(H.value),params:[]};if(H===void 0)return{sql:"",params:[]};if(Array.isArray(H)){let U=[new K0("(")];for(let[A,N]of H.entries())if(U.push(N),A<H.length-1)U.push(new K0(", "));return U.push(new K0(")")),this.buildQueryFromSourceParams(U,$)}if(I(H,u))return this.buildQueryFromSourceParams(H.queryChunks,{...$,inlineParams:G||H.shouldInlineParams});if(I(H,c)){let U=H[c.Symbol.Schema],A=H[c.Symbol.Name];return{sql:U===void 0||H[R6]?W(A):W(U)+"."+W(A),params:[]}}if(I(H,E1)){let U=Z.getColumnCasing(H);if(X.invokeSource==="indexes")return{sql:W(U),params:[]};let A=H.table[c.Symbol.Schema];return{sql:H.table[R6]||A===void 0?W(H.table[c.Symbol.Name])+"."+W(U):W(A)+"."+W(H.table[c.Symbol.Name])+"."+W(U),params:[]}}if(I(H,G8)){let U=H[y1].schema,A=H[y1].name;return{sql:U===void 0||H[y1].isAlias?W(A):W(U)+"."+W(A),params:[]}}if(I(H,_8)){if(I(H.value,BX))return{sql:J(M.value++,H),params:[H],typings:["none"]};let U=H.value===null?null:H.encoder.mapToDriverValue(H.value);if(I(U,u))return this.buildQueryFromSourceParams([U],$);if(G)return{sql:this.mapInlineParam(U,$),params:[]};let A=["none"];if(Q)A=[Q(H.encoder)];return{sql:J(M.value++,U),params:[U],typings:A}}if(I(H,BX))return{sql:J(M.value++,H),params:[H],typings:["none"]};if(I(H,u.Aliased)&&H.fieldAlias!==void 0)return{sql:W(H.fieldAlias),params:[]};if(I(H,B0)){if(H._.isWith)return{sql:W(H._.alias),params:[]};return this.buildQueryFromSourceParams([new K0("("),H._.sql,new K0(") "),new WW(H._.alias)],$)}if(ZG(H)){if(H.schema)return{sql:W(H.schema)+"."+W(H.enumName),params:[]};return{sql:W(H.enumName),params:[]}}if(F4(H)){if(H.shouldOmitSQLParens?.())return this.buildQueryFromSourceParams([H.getSQL()],$);return this.buildQueryFromSourceParams([new K0("("),H.getSQL(),new K0(")")],$)}if(G)return{sql:this.mapInlineParam(H,$),params:[]};return{sql:J(M.value++,H),params:[H],typings:["none"]}}))}mapInlineParam(Y,{escapeString:X}){if(Y===null)return"null";if(typeof Y==="number"||typeof Y==="boolean")return Y.toString();if(typeof Y==="string")return X(Y);if(typeof Y==="object"){let $=Y.toString();if($==="[object Object]")return X(JSON.stringify(Y));return X($)}throw new Error("Unexpected param value: "+Y)}getSQL(){return this}as(Y){if(Y===void 0)return this;return new u.Aliased(this,Y)}mapWith(Y){return this.decoder=typeof Y==="function"?{mapFromDriverValue:Y}:Y,this}inlineParams(){return this.shouldInlineParams=!0,this}if(Y){return Y?this:void 0}}class WW{constructor(Y){this.value=Y}static[K]="Name";brand;getSQL(){return new u([this])}}function MG(Y){return typeof Y==="object"&&Y!==null&&"mapToDriverValue"in Y&&typeof Y.mapToDriverValue==="function"}var HG={mapFromDriverValue:(Y)=>Y},UG={mapToDriverValue:(Y)=>Y},my={...HG,...UG};class _8{constructor(Y,X=UG){this.value=Y,this.encoder=X}static[K]="Param";brand;getSQL(){return new u([this])}}function q(Y,...X){let $=[];if(X.length>0||Y.length>0&&Y[0]!=="")$.push(new K0(Y[0]));for(let[Z,W]of X.entries())$.push(W,new K0(Y[Z+1]));return new u($)}((Y)=>{function X(){return new u([])}Y.empty=X;function $(M){return new u(M)}Y.fromList=$;function Z(M){return new u([new K0(M)])}Y.raw=Z;function W(M,H){let U=[];for(let[A,N]of M.entries()){if(A>0&&H!==void 0)U.push(H);U.push(N)}return new u(U)}Y.join=W;function J(M){return new WW(M)}Y.identifier=J;function Q(M){return new BX(M)}Y.placeholder=Q;function G(M,H){return new _8(M,H)}Y.param=G})(q||(q={}));((Y)=>{class X{constructor($,Z){this.sql=$,this.fieldAlias=Z}static[K]="SQL.Aliased";isSelectionField=!1;getSQL(){return this.sql}clone(){return new X(this.sql,this.fieldAlias)}}Y.Aliased=X})(u||(u={}));class BX{constructor(Y){this.name=Y}static[K]="Placeholder";getSQL(){return new u([this])}}function B4(Y,X){return Y.map(($)=>{if(I($,BX)){if(!($.name in X))throw new Error(`No value for placeholder "${$.name}" was provided`);return X[$.name]}if(I($,_8)&&I($.value,BX)){if(!($.value.name in X))throw new Error(`No value for placeholder "${$.value.name}" was provided`);return $.encoder.mapToDriverValue(X[$.value.name])}return $})}var zG=Symbol.for("drizzle:IsDrizzleView");class G8{static[K]="View";[y1];[zG]=!0;constructor({name:Y,schema:X,selectedFields:$,query:Z}){this[y1]={name:Y,originalName:Y,schema:X,selectedFields:$,query:Z,isExisting:!Z,isAlias:!1}}getSQL(){return new u([this])}}function DG(Y){return typeof Y==="object"&&Y!==null&&zG in Y}E1.prototype.getSQL=function(){return new u([this])};c.prototype.getSQL=function(){return new u([this])};B0.prototype.getSQL=function(){return new u([this])};class S${constructor(Y){this.table=Y}static[K]="ColumnAliasProxyHandler";get(Y,X){if(X==="table")return this.table;return Y[X]}}class E6{constructor(Y,X){this.alias=Y,this.replaceOriginalName=X}static[K]="TableAliasProxyHandler";get(Y,X){if(X===c.Symbol.IsAlias)return!0;if(X===c.Symbol.Name)return this.alias;if(this.replaceOriginalName&&X===c.Symbol.OriginalName)return this.alias;if(X===y1)return{...Y[y1],name:this.alias,isAlias:!0};if(X===c.Symbol.Columns){let Z=Y[c.Symbol.Columns];if(!Z)return Z;let W={};return Object.keys(Z).map((J)=>{W[J]=new Proxy(Z[J],new S$(new Proxy(Y,this)))}),W}let $=Y[X];if(I($,E1))return new Proxy($,new S$(new Proxy(Y,this)));return $}}function JW(Y,X){return new Proxy(Y,new E6(X,!1))}function LY(Y,X){return new Proxy(Y,new S$(new Proxy(Y.table,new E6(X,!1))))}function K4(Y,X){return new u.Aliased(V6(Y.sql,X),Y.fieldAlias)}function V6(Y,X){return q.join(Y.queryChunks.map(($)=>{if(I($,E1))return LY($,X);if(I($,u))return V6($,X);if(I($,u.Aliased))return K4($,X);return $}))}function AG(Y,X,$){let Z={},W=Y.reduce((J,{path:Q,field:G},M)=>{let H;if(I(G,E1))H=G;else if(I(G,u))H=G.decoder;else H=G.sql.decoder;let U=J;for(let[A,N]of Q.entries())if(A<Q.length-1){if(!(N in U))U[N]={};U=U[N]}else{let O=X[M],z=U[N]=O===null?null:H.mapFromDriverValue(O);if($&&I(G,E1)&&Q.length===2){let L=Q[0];if(!(L in Z))Z[L]=z===null?Q8(G.table):!1;else if(typeof Z[L]==="string"&&Z[L]!==Q8(G.table))Z[L]=!1}}return J},{});if($&&Object.keys(Z).length>0){for(let[J,Q]of Object.entries(Z))if(typeof Q==="string"&&!$[Q])W[J]=null}return W}function g8(Y,X){return Object.entries(Y).reduce(($,[Z,W])=>{if(typeof Z!=="string")return $;let J=X?[...X,Z]:[Z];if(I(W,E1)||I(W,u)||I(W,u.Aliased))$.push({path:J,field:W});else if(I(W,c))$.push(...g8(W[c.Symbol.Columns],J));else $.push(...g8(W,J));return $},[])}function j6(Y,X){let $=Object.keys(Y),Z=Object.keys(X);if($.length!==Z.length)return!1;for(let[W,J]of $.entries())if(J!==Z[W])return!1;return!0}function QW(Y,X){let $=Object.entries(X).filter(([,Z])=>Z!==void 0).map(([Z,W])=>{if(I(W,u)||I(W,E1))return[Z,W];else return[Z,new _8(W,Y[c.Symbol.Columns][Z])]});if($.length===0)throw new Error("No values to set");return Object.fromEntries($)}function OG(Y,X){for(let $ of X)for(let Z of Object.getOwnPropertyNames($.prototype)){if(Z==="constructor")continue;Object.defineProperty(Y.prototype,Z,Object.getOwnPropertyDescriptor($.prototype,Z)||Object.create(null))}}function GW(Y){return Y[c.Symbol.Columns]}function NG(Y){return Y[y1].selectedFields}function lY(Y){return I(Y,B0)?Y._.alias:I(Y,G8)?Y[y1].name:I(Y,u)?void 0:Y[c.Symbol.IsAlias]?Y[c.Symbol.Name]:Y[c.Symbol.BaseName]}function O1(Y,X){return{name:typeof Y==="string"&&Y.length>0?Y:"",config:typeof Y==="object"?Y:X}}function wG(Y){if(typeof Y!=="object"||Y===null)return!1;if(Y.constructor.name!=="Object")return!1;if("logger"in Y){let X=typeof Y.logger;if(X!=="boolean"&&(X!=="object"||typeof Y.logger.logQuery!=="function")&&X!=="undefined")return!1;return!0}if("schema"in Y){let X=typeof Y.schema;if(X!=="object"&&X!=="undefined")return!1;return!0}if("casing"in Y){let X=typeof Y.casing;if(X!=="string"&&X!=="undefined")return!1;return!0}if("mode"in Y){if(Y.mode!=="default"||Y.mode!=="planetscale"||Y.mode!==void 0)return!1;return!0}if("connection"in Y){let X=typeof Y.connection;if(X!=="string"&&X!=="object"&&X!=="undefined")return!1;return!0}if("client"in Y){let X=typeof Y.client;if(X!=="object"&&X!=="function"&&X!=="undefined")return!1;return!0}if(Object.keys(Y).length===0)return!0;return!1}class KX extends i{static[K]="PgIntColumnBaseBuilder";generatedAlwaysAsIdentity(Y){if(Y){let{name:X,...$}=Y;this.config.generatedIdentity={type:"always",sequenceName:X,sequenceOptions:$}}else this.config.generatedIdentity={type:"always"};return this.config.hasDefault=!0,this.config.notNull=!0,this}generatedByDefaultAsIdentity(Y){if(Y){let{name:X,...$}=Y;this.config.generatedIdentity={type:"byDefault",sequenceName:X,sequenceOptions:$}}else this.config.generatedIdentity={type:"byDefault"};return this.config.hasDefault=!0,this.config.notNull=!0,this}}class FG extends KX{static[K]="PgBigInt53Builder";constructor(Y){super(Y,"number","PgBigInt53")}build(Y){return new BG(Y,this.config)}}class BG extends d{static[K]="PgBigInt53";getSQLType(){return"bigint"}mapFromDriverValue(Y){if(typeof Y==="number")return Y;return Number(Y)}}class KG extends KX{static[K]="PgBigInt64Builder";constructor(Y){super(Y,"bigint","PgBigInt64")}build(Y){return new LG(Y,this.config)}}class LG extends d{static[K]="PgBigInt64";getSQLType(){return"bigint"}mapFromDriverValue(Y){return BigInt(Y)}}function qG(Y,X){let{name:$,config:Z}=O1(Y,X);if(Z.mode==="number")return new FG($);return new KG($)}class _G extends i{static[K]="PgBigSerial53Builder";constructor(Y){super(Y,"number","PgBigSerial53");this.config.hasDefault=!0,this.config.notNull=!0}build(Y){return new RG(Y,this.config)}}class RG extends d{static[K]="PgBigSerial53";getSQLType(){return"bigserial"}mapFromDriverValue(Y){if(typeof Y==="number")return Y;return Number(Y)}}class EG extends i{static[K]="PgBigSerial64Builder";constructor(Y){super(Y,"bigint","PgBigSerial64");this.config.hasDefault=!0}build(Y){return new VG(Y,this.config)}}class VG extends d{static[K]="PgBigSerial64";getSQLType(){return"bigserial"}mapFromDriverValue(Y){return BigInt(Y)}}function jG(Y,X){let{name:$,config:Z}=O1(Y,X);if(Z.mode==="number")return new _G($);return new EG($)}class SG extends i{static[K]="PgBooleanBuilder";constructor(Y){super(Y,"boolean","PgBoolean")}build(Y){return new CG(Y,this.config)}}class CG extends d{static[K]="PgBoolean";getSQLType(){return"boolean"}}function PG(Y){return new SG(Y??"")}class IG extends i{static[K]="PgCharBuilder";constructor(Y,X){super(Y,"string","PgChar");this.config.length=X.length,this.config.enumValues=X.enum}build(Y){return new xG(Y,this.config)}}class xG extends d{static[K]="PgChar";length=this.config.length;enumValues=this.config.enumValues;getSQLType(){return this.length===void 0?"char":`char(${this.length})`}}function TG(Y,X={}){let{name:$,config:Z}=O1(Y,X);return new IG($,Z)}class kG extends i{static[K]="PgCidrBuilder";constructor(Y){super(Y,"string","PgCidr")}build(Y){return new bG(Y,this.config)}}class bG extends d{static[K]="PgCidr";getSQLType(){return"cidr"}}function gG(Y){return new kG(Y??"")}class fG extends i{static[K]="PgCustomColumnBuilder";constructor(Y,X,$){super(Y,"custom","PgCustomColumn");this.config.fieldConfig=X,this.config.customTypeParams=$}build(Y){return new vG(Y,this.config)}}class vG extends d{static[K]="PgCustomColumn";sqlName;mapTo;mapFrom;constructor(Y,X){super(Y,X);this.sqlName=X.customTypeParams.dataType(X.fieldConfig),this.mapTo=X.customTypeParams.toDriver,this.mapFrom=X.customTypeParams.fromDriver}getSQLType(){return this.sqlName}mapFromDriverValue(Y){return typeof this.mapFrom==="function"?this.mapFrom(Y):Y}mapToDriverValue(Y){return typeof this.mapTo==="function"?this.mapTo(Y):Y}}function yG(Y){return(X,$)=>{let{name:Z,config:W}=O1(X,$);return new fG(Z,W,Y)}}class nY extends i{static[K]="PgDateColumnBaseBuilder";defaultNow(){return this.default(q`now()`)}}class hG extends nY{static[K]="PgDateBuilder";constructor(Y){super(Y,"date","PgDate")}build(Y){return new MW(Y,this.config)}}class MW extends d{static[K]="PgDate";getSQLType(){return"date"}mapFromDriverValue(Y){return new Date(Y)}mapToDriverValue(Y){return Y.toISOString()}}class dG extends nY{static[K]="PgDateStringBuilder";constructor(Y){super(Y,"string","PgDateString")}build(Y){return new HW(Y,this.config)}}class HW extends d{static[K]="PgDateString";getSQLType(){return"date"}}function mG(Y,X){let{name:$,config:Z}=O1(Y,X);if(Z?.mode==="date")return new hG($);return new dG($)}class pG extends i{static[K]="PgDoublePrecisionBuilder";constructor(Y){super(Y,"number","PgDoublePrecision")}build(Y){return new cG(Y,this.config)}}class cG extends d{static[K]="PgDoublePrecision";getSQLType(){return"double precision"}mapFromDriverValue(Y){if(typeof Y==="string")return Number.parseFloat(Y);return Y}}function C$(Y){return new pG(Y??"")}class uG extends i{static[K]="PgInetBuilder";constructor(Y){super(Y,"string","PgInet")}build(Y){return new iG(Y,this.config)}}class iG extends d{static[K]="PgInet";getSQLType(){return"inet"}}function oG(Y){return new uG(Y??"")}class lG extends KX{static[K]="PgIntegerBuilder";constructor(Y){super(Y,"number","PgInteger")}build(Y){return new nG(Y,this.config)}}class nG extends d{static[K]="PgInteger";getSQLType(){return"integer"}mapFromDriverValue(Y){if(typeof Y==="string")return Number.parseInt(Y);return Y}}function LX(Y){return new lG(Y??"")}class tG extends i{static[K]="PgIntervalBuilder";constructor(Y,X){super(Y,"string","PgInterval");this.config.intervalConfig=X}build(Y){return new sG(Y,this.config)}}class sG extends d{static[K]="PgInterval";fields=this.config.intervalConfig.fields;precision=this.config.intervalConfig.precision;getSQLType(){let Y=this.fields?` ${this.fields}`:"",X=this.precision?`(${this.precision})`:"";return`interval${Y}${X}`}}function rG(Y,X={}){let{name:$,config:Z}=O1(Y,X);return new tG($,Z)}class aG extends i{static[K]="PgJsonBuilder";constructor(Y){super(Y,"json","PgJson")}build(Y){return new UW(Y,this.config)}}class UW extends d{static[K]="PgJson";constructor(Y,X){super(Y,X)}getSQLType(){return"json"}mapToDriverValue(Y){return JSON.stringify(Y)}mapFromDriverValue(Y){if(typeof Y==="string")try{return JSON.parse(Y)}catch{return Y}return Y}}function eG(Y){return new aG(Y??"")}class YM extends i{static[K]="PgJsonbBuilder";constructor(Y){super(Y,"json","PgJsonb")}build(Y){return new zW(Y,this.config)}}class zW extends d{static[K]="PgJsonb";constructor(Y,X){super(Y,X)}getSQLType(){return"jsonb"}mapToDriverValue(Y){return JSON.stringify(Y)}mapFromDriverValue(Y){if(typeof Y==="string")try{return JSON.parse(Y)}catch{return Y}return Y}}function XM(Y){return new YM(Y??"")}class $M extends i{static[K]="PgLineBuilder";constructor(Y){super(Y,"array","PgLine")}build(Y){return new ZM(Y,this.config)}}class ZM extends d{static[K]="PgLine";getSQLType(){return"line"}mapFromDriverValue(Y){let[X,$,Z]=Y.slice(1,-1).split(",");return[Number.parseFloat(X),Number.parseFloat($),Number.parseFloat(Z)]}mapToDriverValue(Y){return`{${Y[0]},${Y[1]},${Y[2]}}`}}class WM extends i{static[K]="PgLineABCBuilder";constructor(Y){super(Y,"json","PgLineABC")}build(Y){return new JM(Y,this.config)}}class JM extends d{static[K]="PgLineABC";getSQLType(){return"line"}mapFromDriverValue(Y){let[X,$,Z]=Y.slice(1,-1).split(",");return{a:Number.parseFloat(X),b:Number.parseFloat($),c:Number.parseFloat(Z)}}mapToDriverValue(Y){return`{${Y.a},${Y.b},${Y.c}}`}}function QM(Y,X){let{name:$,config:Z}=O1(Y,X);if(!Z?.mode||Z.mode==="tuple")return new $M($);return new WM($)}class GM extends i{static[K]="PgMacaddrBuilder";constructor(Y){super(Y,"string","PgMacaddr")}build(Y){return new MM(Y,this.config)}}class MM extends d{static[K]="PgMacaddr";getSQLType(){return"macaddr"}}function HM(Y){return new GM(Y??"")}class UM extends i{static[K]="PgMacaddr8Builder";constructor(Y){super(Y,"string","PgMacaddr8")}build(Y){return new zM(Y,this.config)}}class zM extends d{static[K]="PgMacaddr8";getSQLType(){return"macaddr8"}}function DM(Y){return new UM(Y??"")}class AM extends i{static[K]="PgNumericBuilder";constructor(Y,X,$){super(Y,"string","PgNumeric");this.config.precision=X,this.config.scale=$}build(Y){return new DW(Y,this.config)}}class DW extends d{static[K]="PgNumeric";precision;scale;constructor(Y,X){super(Y,X);this.precision=X.precision,this.scale=X.scale}mapFromDriverValue(Y){if(typeof Y==="string")return Y;return String(Y)}getSQLType(){if(this.precision!==void 0&&this.scale!==void 0)return`numeric(${this.precision}, ${this.scale})`;else if(this.precision===void 0)return"numeric";else return`numeric(${this.precision})`}}class OM extends i{static[K]="PgNumericNumberBuilder";constructor(Y,X,$){super(Y,"number","PgNumericNumber");this.config.precision=X,this.config.scale=$}build(Y){return new NM(Y,this.config)}}class NM extends d{static[K]="PgNumericNumber";precision;scale;constructor(Y,X){super(Y,X);this.precision=X.precision,this.scale=X.scale}mapFromDriverValue(Y){if(typeof Y==="number")return Y;return Number(Y)}mapToDriverValue=String;getSQLType(){if(this.precision!==void 0&&this.scale!==void 0)return`numeric(${this.precision}, ${this.scale})`;else if(this.precision===void 0)return"numeric";else return`numeric(${this.precision})`}}class wM extends i{static[K]="PgNumericBigIntBuilder";constructor(Y,X,$){super(Y,"bigint","PgNumericBigInt");this.config.precision=X,this.config.scale=$}build(Y){return new FM(Y,this.config)}}class FM extends d{static[K]="PgNumericBigInt";precision;scale;constructor(Y,X){super(Y,X);this.precision=X.precision,this.scale=X.scale}mapFromDriverValue=BigInt;mapToDriverValue=String;getSQLType(){if(this.precision!==void 0&&this.scale!==void 0)return`numeric(${this.precision}, ${this.scale})`;else if(this.precision===void 0)return"numeric";else return`numeric(${this.precision})`}}function BM(Y,X){let{name:$,config:Z}=O1(Y,X),W=Z?.mode;return W==="number"?new OM($,Z?.precision,Z?.scale):W==="bigint"?new wM($,Z?.precision,Z?.scale):new AM($,Z?.precision,Z?.scale)}class KM extends i{static[K]="PgPointTupleBuilder";constructor(Y){super(Y,"array","PgPointTuple")}build(Y){return new LM(Y,this.config)}}class LM extends d{static[K]="PgPointTuple";getSQLType(){return"point"}mapFromDriverValue(Y){if(typeof Y==="string"){let[X,$]=Y.slice(1,-1).split(",");return[Number.parseFloat(X),Number.parseFloat($)]}return[Y.x,Y.y]}mapToDriverValue(Y){return`(${Y[0]},${Y[1]})`}}class qM extends i{static[K]="PgPointObjectBuilder";constructor(Y){super(Y,"json","PgPointObject")}build(Y){return new _M(Y,this.config)}}class _M extends d{static[K]="PgPointObject";getSQLType(){return"point"}mapFromDriverValue(Y){if(typeof Y==="string"){let[X,$]=Y.slice(1,-1).split(",");return{x:Number.parseFloat(X),y:Number.parseFloat($)}}return Y}mapToDriverValue(Y){return`(${Y.x},${Y.y})`}}function RM(Y,X){let{name:$,config:Z}=O1(Y,X);if(!Z?.mode||Z.mode==="tuple")return new KM($);return new qM($)}function R_(Y){let X=[];for(let $=0;$<Y.length;$+=2)X.push(Number.parseInt(Y.slice($,$+2),16));return new Uint8Array(X)}function EM(Y,X){let $=new ArrayBuffer(8),Z=new DataView($);for(let W=0;W<8;W++)Z.setUint8(W,Y[X+W]);return Z.getFloat64(0,!0)}function L4(Y){let X=R_(Y),$=0,Z=X[$];$+=1;let W=new DataView(X.buffer),J=W.getUint32($,Z===1);$+=4;let Q;if(J&536870912)Q=W.getUint32($,Z===1),$+=4;if((J&65535)===1){let G=EM(X,$);$+=8;let M=EM(X,$);return $+=8,[G,M]}throw new Error("Unsupported geometry type")}class VM extends i{static[K]="PgGeometryBuilder";constructor(Y){super(Y,"array","PgGeometry")}build(Y){return new jM(Y,this.config)}}class jM extends d{static[K]="PgGeometry";getSQLType(){return"geometry(point)"}mapFromDriverValue(Y){return L4(Y)}mapToDriverValue(Y){return`point(${Y[0]} ${Y[1]})`}}class SM extends i{static[K]="PgGeometryObjectBuilder";constructor(Y){super(Y,"json","PgGeometryObject")}build(Y){return new CM(Y,this.config)}}class CM extends d{static[K]="PgGeometryObject";getSQLType(){return"geometry(point)"}mapFromDriverValue(Y){let X=L4(Y);return{x:X[0],y:X[1]}}mapToDriverValue(Y){return`point(${Y.x} ${Y.y})`}}function PM(Y,X){let{name:$,config:Z}=O1(Y,X);if(!Z?.mode||Z.mode==="tuple")return new VM($);return new SM($)}class IM extends i{static[K]="PgRealBuilder";constructor(Y,X){super(Y,"number","PgReal");this.config.length=X}build(Y){return new xM(Y,this.config)}}class xM extends d{static[K]="PgReal";constructor(Y,X){super(Y,X)}getSQLType(){return"real"}mapFromDriverValue=(Y)=>{if(typeof Y==="string")return Number.parseFloat(Y);return Y}}function TM(Y){return new IM(Y??"")}class kM extends i{static[K]="PgSerialBuilder";constructor(Y){super(Y,"number","PgSerial");this.config.hasDefault=!0,this.config.notNull=!0}build(Y){return new bM(Y,this.config)}}class bM extends d{static[K]="PgSerial";getSQLType(){return"serial"}}function gM(Y){return new kM(Y??"")}class fM extends KX{static[K]="PgSmallIntBuilder";constructor(Y){super(Y,"number","PgSmallInt")}build(Y){return new vM(Y,this.config)}}class vM extends d{static[K]="PgSmallInt";getSQLType(){return"smallint"}mapFromDriverValue=(Y)=>{if(typeof Y==="string")return Number(Y);return Y}}function yM(Y){return new fM(Y??"")}class hM extends i{static[K]="PgSmallSerialBuilder";constructor(Y){super(Y,"number","PgSmallSerial");this.config.hasDefault=!0,this.config.notNull=!0}build(Y){return new dM(Y,this.config)}}class dM extends d{static[K]="PgSmallSerial";getSQLType(){return"smallserial"}}function mM(Y){return new hM(Y??"")}class pM extends i{static[K]="PgTextBuilder";constructor(Y,X){super(Y,"string","PgText");this.config.enumValues=X.enum}build(Y){return new cM(Y,this.config)}}class cM extends d{static[K]="PgText";enumValues=this.config.enumValues;getSQLType(){return"text"}}function uM(Y,X={}){let{name:$,config:Z}=O1(Y,X);return new pM($,Z)}class iM extends nY{constructor(Y,X,$){super(Y,"string","PgTime");this.withTimezone=X,this.precision=$,this.config.withTimezone=X,this.config.precision=$}static[K]="PgTimeBuilder";build(Y){return new AW(Y,this.config)}}class AW extends d{static[K]="PgTime";withTimezone;precision;constructor(Y,X){super(Y,X);this.withTimezone=X.withTimezone,this.precision=X.precision}getSQLType(){return`time${this.precision===void 0?"":`(${this.precision})`}${this.withTimezone?" with time zone":""}`}}function oM(Y,X={}){let{name:$,config:Z}=O1(Y,X);return new iM($,Z.withTimezone??!1,Z.precision)}class lM extends nY{static[K]="PgTimestampBuilder";constructor(Y,X,$){super(Y,"date","PgTimestamp");this.config.withTimezone=X,this.config.precision=$}build(Y){return new OW(Y,this.config)}}class OW extends d{static[K]="PgTimestamp";withTimezone;precision;constructor(Y,X){super(Y,X);this.withTimezone=X.withTimezone,this.precision=X.precision}getSQLType(){return`timestamp${this.precision===void 0?"":` (${this.precision})`}${this.withTimezone?" with time zone":""}`}mapFromDriverValue=(Y)=>{return new Date(this.withTimezone?Y:Y+"+0000")};mapToDriverValue=(Y)=>{return Y.toISOString()}}class nM extends nY{static[K]="PgTimestampStringBuilder";constructor(Y,X,$){super(Y,"string","PgTimestampString");this.config.withTimezone=X,this.config.precision=$}build(Y){return new NW(Y,this.config)}}class NW extends d{static[K]="PgTimestampString";withTimezone;precision;constructor(Y,X){super(Y,X);this.withTimezone=X.withTimezone,this.precision=X.precision}getSQLType(){return`timestamp${this.precision===void 0?"":`(${this.precision})`}${this.withTimezone?" with time zone":""}`}}function tM(Y,X={}){let{name:$,config:Z}=O1(Y,X);if(Z?.mode==="string")return new nM($,Z.withTimezone??!1,Z.precision);return new lM($,Z?.withTimezone??!1,Z?.precision)}class sM extends i{static[K]="PgUUIDBuilder";constructor(Y){super(Y,"string","PgUUID")}defaultRandom(){return this.default(q`gen_random_uuid()`)}build(Y){return new wW(Y,this.config)}}class wW extends d{static[K]="PgUUID";getSQLType(){return"uuid"}}function FW(Y){return new sM(Y??"")}class rM extends i{static[K]="PgVarcharBuilder";constructor(Y,X){super(Y,"string","PgVarchar");this.config.length=X.length,this.config.enumValues=X.enum}build(Y){return new aM(Y,this.config)}}class aM extends d{static[K]="PgVarchar";length=this.config.length;enumValues=this.config.enumValues;getSQLType(){return this.length===void 0?"varchar":`varchar(${this.length})`}}function tY(Y,X={}){let{name:$,config:Z}=O1(Y,X);return new rM($,Z)}class eM extends i{static[K]="PgBinaryVectorBuilder";constructor(Y,X){super(Y,"string","PgBinaryVector");this.config.dimensions=X.dimensions}build(Y){return new YH(Y,this.config)}}class YH extends d{static[K]="PgBinaryVector";dimensions=this.config.dimensions;getSQLType(){return`bit(${this.dimensions})`}}function XH(Y,X){let{name:$,config:Z}=O1(Y,X);return new eM($,Z)}class $H extends i{static[K]="PgHalfVectorBuilder";constructor(Y,X){super(Y,"array","PgHalfVector");this.config.dimensions=X.dimensions}build(Y){return new ZH(Y,this.config)}}class ZH extends d{static[K]="PgHalfVector";dimensions=this.config.dimensions;getSQLType(){return`halfvec(${this.dimensions})`}mapToDriverValue(Y){return JSON.stringify(Y)}mapFromDriverValue(Y){return Y.slice(1,-1).split(",").map((X)=>Number.parseFloat(X))}}function WH(Y,X){let{name:$,config:Z}=O1(Y,X);return new $H($,Z)}class JH extends i{static[K]="PgSparseVectorBuilder";constructor(Y,X){super(Y,"string","PgSparseVector");this.config.dimensions=X.dimensions}build(Y){return new QH(Y,this.config)}}class QH extends d{static[K]="PgSparseVector";dimensions=this.config.dimensions;getSQLType(){return`sparsevec(${this.dimensions})`}}function GH(Y,X){let{name:$,config:Z}=O1(Y,X);return new JH($,Z)}class MH extends i{static[K]="PgVectorBuilder";constructor(Y,X){super(Y,"array","PgVector");this.config.dimensions=X.dimensions}build(Y){return new HH(Y,this.config)}}class HH extends d{static[K]="PgVector";dimensions=this.config.dimensions;getSQLType(){return`vector(${this.dimensions})`}mapToDriverValue(Y){return JSON.stringify(Y)}mapFromDriverValue(Y){return Y.slice(1,-1).split(",").map((X)=>Number.parseFloat(X))}}function UH(Y,X){let{name:$,config:Z}=O1(Y,X);return new MH($,Z)}class i0{static[K]="QueryPromise";[Symbol.toStringTag]="QueryPromise";catch(Y){return this.then(void 0,Y)}finally(Y){return this.then((X)=>{return Y?.(),X},(X)=>{throw Y?.(),X})}then(Y,X){return this.execute().then(Y,X)}}class W0{static[K]="SelectionProxyHandler";config;constructor(Y){this.config={...Y}}get(Y,X){if(X==="_")return{...Y._,selectedFields:new Proxy(Y._.selectedFields,this)};if(X===y1)return{...Y[y1],selectedFields:new Proxy(Y[y1].selectedFields,this)};if(typeof X==="symbol")return Y[X];let Z=(I(Y,B0)?Y._.selectedFields:I(Y,G8)?Y[y1].selectedFields:Y)[X];if(I(Z,u.Aliased)){if(this.config.sqlAliasedBehavior==="sql"&&!Z.isSelectionField)return Z.sql;let W=Z.clone();return W.isSelectionField=!0,W}if(I(Z,u)){if(this.config.sqlBehavior==="sql")return Z;throw new Error(`You tried to reference "${X}" field from a subquery, which is a raw SQL field, but it doesn't have an alias declared. Please add an alias to the field using ".as('alias')" method.`)}if(I(Z,E1)){if(this.config.alias)return new Proxy(Z,new S$(new Proxy(Z.table,new E6(this.config.alias,this.config.replaceOriginalName??!1))));return Z}if(typeof Z!=="object"||Z===null)return Z;return new Proxy(Z,new W0(this.config))}}class BW extends i0{constructor(Y,X,$,Z){super();this.session=X,this.dialect=$,this.config={table:Y,withList:Z}}static[K]="PgDelete";config;where(Y){return this.config.where=Y,this}returning(Y=this.config.table[c.Symbol.Columns]){return this.config.returningFields=Y,this.config.returning=g8(Y),this}getSQL(){return this.dialect.buildDeleteQuery(this.config)}toSQL(){let{typings:Y,...X}=this.dialect.sqlToQuery(this.getSQL());return X}_prepare(Y){return v1.startActiveSpan("drizzle.prepareQuery",()=>{return this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()),this.config.returning,Y,!0)})}prepare(Y){return this._prepare(Y)}authToken;setToken(Y){return this.authToken=Y,this}execute=(Y)=>{return v1.startActiveSpan("drizzle.operation",()=>{return this._prepare().execute(Y,this.authToken)})};getSelectedFields(){return this.config.returningFields?new Proxy(this.config.returningFields,new W0({alias:Q8(this.config.table),sqlAliasedBehavior:"alias",sqlBehavior:"error"})):void 0}$dynamic(){return this}}function E_(Y){return(Y.replace(/['\u2019]/g,"").match(/[\da-z]+|[A-Z]+(?![a-z])|[A-Z][\da-z]+/g)??[]).map(($)=>$.toLowerCase()).join("_")}function V_(Y){return(Y.replace(/['\u2019]/g,"").match(/[\da-z]+|[A-Z]+(?![a-z])|[A-Z][\da-z]+/g)??[]).reduce(($,Z,W)=>{let J=W===0?Z.toLowerCase():`${Z[0].toUpperCase()}${Z.slice(1)}`;return $+J},"")}function j_(Y){return Y}class q4{static[K]="CasingCache";cache={};cachedTables={};convert;constructor(Y){this.convert=Y==="snake_case"?E_:Y==="camelCase"?V_:j_}getColumnCasing(Y){if(!Y.keyAsName)return Y.name;let X=Y.table[c.Symbol.Schema]??"public",$=Y.table[c.Symbol.OriginalName],Z=`${X}.${$}.${Y.name}`;if(!this.cache[Z])this.cacheTable(Y.table);return this.cache[Z]}cacheTable(Y){let X=Y[c.Symbol.Schema]??"public",$=Y[c.Symbol.OriginalName],Z=`${X}.${$}`;if(!this.cachedTables[Z]){for(let W of Object.values(Y[c.Symbol.Columns])){let J=`${Z}.${W.name}`;this.cache[J]=this.convert(W.name)}this.cachedTables[Z]=!0}}clearCache(){this.cache={},this.cachedTables={}}}class KW extends Error{static[K]="DrizzleError";constructor({message:Y,cause:X}){super(Y);this.name="DrizzleError",this.cause=X}}class _4 extends KW{static[K]="TransactionRollbackError";constructor(){super({message:"Rollback"})}}function zH(){return{bigint:qG,bigserial:jG,boolean:PG,char:TG,cidr:gG,customType:yG,date:mG,doublePrecision:C$,inet:oG,integer:LX,interval:rG,json:eG,jsonb:XM,line:QM,macaddr:HM,macaddr8:DM,numeric:BM,point:RM,geometry:PM,real:TM,serial:gM,smallint:yM,smallserial:mM,text:uM,time:oM,timestamp:tM,uuid:FW,varchar:tY,bit:XH,halfvec:WH,sparsevec:GH,vector:UH}}var R4=Symbol.for("drizzle:PgInlineForeignKeys"),DH=Symbol.for("drizzle:EnableRLS");class P0 extends c{static[K]="PgTable";static Symbol=Object.assign({},c.Symbol,{InlineForeignKeys:R4,EnableRLS:DH});[R4]=[];[DH]=!1;[c.Symbol.ExtraConfigBuilder]=void 0;[c.Symbol.ExtraConfigColumns]={}}function S_(Y,X,$,Z,W=Y){let J=new P0(Y,Z,W),Q=typeof X==="function"?X(zH()):X,G=Object.fromEntries(Object.entries(Q).map(([U,A])=>{let N=A;N.setName(U);let O=N.build(J);return J[R4].push(...N.buildForeignKeys(O,J)),[U,O]})),M=Object.fromEntries(Object.entries(Q).map(([U,A])=>{let N=A;N.setName(U);let O=N.buildExtraConfigColumn(J);return[U,O]})),H=Object.assign(J,G);if(H[c.Symbol.Columns]=G,H[c.Symbol.ExtraConfigColumns]=M,$)H[P0.Symbol.ExtraConfigBuilder]=$;return Object.assign(H,{enableRLS:()=>{return H[P0.Symbol.EnableRLS]=!0,H}})}var AH=(Y,X,$)=>{return S_(Y,X,$,void 0)};class E4{static[K]="PgPrimaryKeyBuilder";columns;name;constructor(Y,X){this.columns=Y,this.name=X}build(Y){return new OH(Y,this.columns,this.name)}}class OH{constructor(Y,X,$){this.table=Y,this.columns=X,this.name=$}static[K]="PgPrimaryKey";columns;name;getName(){return this.name??`${this.table[P0.Symbol.Name]}_${this.columns.map((Y)=>Y.name).join("_")}_pk`}}function M8(Y,X){if(MG(X)&&!F4(Y)&&!I(Y,_8)&&!I(Y,BX)&&!I(Y,E1)&&!I(Y,c)&&!I(Y,G8))return new _8(Y,X);return Y}var f8=(Y,X)=>{return q`${Y} = ${M8(X,Y)}`},NH=(Y,X)=>{return q`${Y} <> ${M8(X,Y)}`};function sY(...Y){let X=Y.filter(($)=>$!==void 0);if(X.length===0)return;if(X.length===1)return new u(X);return new u([new K0("("),q.join(X,new K0(" and ")),new K0(")")])}function wH(...Y){let X=Y.filter(($)=>$!==void 0);if(X.length===0)return;if(X.length===1)return new u(X);return new u([new K0("("),q.join(X,new K0(" or ")),new K0(")")])}function S6(Y){return q`not ${Y}`}var FH=(Y,X)=>{return q`${Y} > ${M8(X,Y)}`},BH=(Y,X)=>{return q`${Y} >= ${M8(X,Y)}`},KH=(Y,X)=>{return q`${Y} < ${M8(X,Y)}`},LH=(Y,X)=>{return q`${Y} <= ${M8(X,Y)}`};function P$(Y,X){if(Array.isArray(X)){if(X.length===0)return q`false`;return q`${Y} in ${X.map(($)=>M8($,Y))}`}return q`${Y} in ${M8(X,Y)}`}function qH(Y,X){if(Array.isArray(X)){if(X.length===0)return q`true`;return q`${Y} not in ${X.map(($)=>M8($,Y))}`}return q`${Y} not in ${M8(X,Y)}`}function C6(Y){return q`${Y} is null`}function _H(Y){return q`${Y} is not null`}function RH(Y){return q`exists ${Y}`}function EH(Y){return q`not exists ${Y}`}function v8(Y,X,$){return q`${Y} between ${M8(X,Y)} and ${M8($,Y)}`}function VH(Y,X,$){return q`${Y} not between ${M8(X,Y)} and ${M8($,Y)}`}function jH(Y,X){return q`${Y} like ${X}`}function SH(Y,X){return q`${Y} not like ${X}`}function CH(Y,X){return q`${Y} ilike ${X}`}function PH(Y,X){return q`${Y} not ilike ${X}`}function LW(Y){return q`${Y} asc`}function qW(Y){return q`${Y} desc`}class V4{constructor(Y,X,$){this.sourceTable=Y,this.referencedTable=X,this.relationName=$,this.referencedTableName=X[c.Symbol.Name]}static[K]="Relation";referencedTableName;fieldName}class IH{constructor(Y,X){this.table=Y,this.config=X}static[K]="Relations"}class qX extends V4{constructor(Y,X,$,Z){super(Y,X,$?.relationName);this.config=$,this.isNullable=Z}static[K]="One";withFieldName(Y){let X=new qX(this.sourceTable,this.referencedTable,this.config,this.isNullable);return X.fieldName=Y,X}}class P6 extends V4{constructor(Y,X,$){super(Y,X,$?.relationName);this.config=$}static[K]="Many";withFieldName(Y){let X=new P6(this.sourceTable,this.referencedTable,this.config);return X.fieldName=Y,X}}function xH(){return{and:sY,between:v8,eq:f8,exists:RH,gt:FH,gte:BH,ilike:CH,inArray:P$,isNull:C6,isNotNull:_H,like:jH,lt:KH,lte:LH,ne:NH,not:S6,notBetween:VH,notExists:EH,notLike:SH,notIlike:PH,notInArray:qH,or:wH,sql:q}}function TH(){return{sql:q,asc:LW,desc:qW}}function kH(Y,X){if(Object.keys(Y).length===1&&"default"in Y&&!I(Y.default,c))Y=Y.default;let $={},Z={},W={};for(let[J,Q]of Object.entries(Y))if(I(Q,c)){let G=cX(Q),M=Z[G];$[G]=J,W[J]={tsName:J,dbName:Q[c.Symbol.Name],schema:Q[c.Symbol.Schema],columns:Q[c.Symbol.Columns],relations:M?.relations??{},primaryKey:M?.primaryKey??[]};for(let U of Object.values(Q[c.Symbol.Columns]))if(U.primary)W[J].primaryKey.push(U);let H=Q[c.Symbol.ExtraConfigBuilder]?.(Q[c.Symbol.ExtraConfigColumns]);if(H){for(let U of Object.values(H))if(I(U,E4))W[J].primaryKey.push(...U.columns)}}else if(I(Q,IH)){let G=cX(Q.table),M=$[G],H=Q.config(X(Q.table)),U;for(let[A,N]of Object.entries(H))if(M){let O=W[M];if(O.relations[A]=N,U)O.primaryKey.push(...U)}else{if(!(G in Z))Z[G]={relations:{},primaryKey:U};Z[G].relations[A]=N}}return{tables:W,tableNamesMap:$}}function C_(Y){return function X($,Z){return new qX(Y,$,Z,Z?.fields.reduce((W,J)=>W&&J.notNull,!0)??!1)}}function P_(Y){return function X($,Z){return new P6(Y,$,Z)}}function bH(Y,X,$){if(I($,qX)&&$.config)return{fields:$.config.fields,references:$.config.references};let Z=X[cX($.referencedTable)];if(!Z)throw new Error(`Table "${$.referencedTable[c.Symbol.Name]}" not found in schema`);let W=Y[Z];if(!W)throw new Error(`Table "${Z}" not found in schema`);let J=$.sourceTable,Q=X[cX(J)];if(!Q)throw new Error(`Table "${J[c.Symbol.Name]}" not found in schema`);let G=[];for(let M of Object.values(W.relations))if($.relationName&&$!==M&&M.relationName===$.relationName||!$.relationName&&M.referencedTable===$.sourceTable)G.push(M);if(G.length>1)throw $.relationName?new Error(`There are multiple relations with name "${$.relationName}" in table "${Z}"`):new Error(`There are multiple relations between "${Z}" and "${$.sourceTable[c.Symbol.Name]}". Please specify relation name`);if(G[0]&&I(G[0],qX)&&G[0].config)return{fields:G[0].config.references,references:G[0].config.fields};throw new Error(`There is not enough information to infer relation "${Q}.${$.fieldName}"`)}function gH(Y){return{one:C_(Y),many:P_(Y)}}function _W(Y,X,$,Z,W=(J)=>J){let J={};for(let[Q,G]of Z.entries())if(G.isJson){let M=X.relations[G.tsKey],H=$[Q],U=typeof H==="string"?JSON.parse(H):H;J[G.tsKey]=I(M,qX)?U&&_W(Y,Y[G.relationTableTsKey],U,G.selection,W):U.map((A)=>_W(Y,Y[G.relationTableTsKey],A,G.selection,W))}else{let M=W($[Q]),H=G.field,U;if(I(H,E1))U=H;else if(I(H,u))U=H.decoder;else U=H.sql.decoder;J[G.tsKey]=M===null?null:U.mapFromDriverValue(M)}return J}function fH(Y){return q`count(${Y||q.raw("*")})`.mapWith(Number)}function RW(Y){return q`max(${Y})`.mapWith(I(Y,E1)?Y:String)}function EW(Y){return q`min(${Y})`.mapWith(I(Y,E1)?Y:String)}class I6 extends G8{static[K]="PgViewBase"}class uX{static[K]="PgDialect";casing;constructor(Y){this.casing=new q4(Y?.casing)}async migrate(Y,X,$){let Z=typeof $==="string"?"__drizzle_migrations":$.migrationsTable??"__drizzle_migrations",W=typeof $==="string"?"drizzle":$.migrationsSchema??"drizzle",J=q`
|
|
CREATE TABLE IF NOT EXISTS ${q.identifier(W)}.${q.identifier(Z)} (
|
|
id SERIAL PRIMARY KEY,
|
|
hash text NOT NULL,
|
|
created_at bigint
|
|
)
|
|
`;await X.execute(q`CREATE SCHEMA IF NOT EXISTS ${q.identifier(W)}`),await X.execute(J);let G=(await X.all(q`select id, hash, created_at from ${q.identifier(W)}.${q.identifier(Z)} order by created_at desc limit 1`))[0];await X.transaction(async(M)=>{for await(let H of Y)if(!G||Number(G.created_at)<H.folderMillis){for(let U of H.sql)await M.execute(q.raw(U));await M.execute(q`insert into ${q.identifier(W)}.${q.identifier(Z)} ("hash", "created_at") values(${H.hash}, ${H.folderMillis})`)}})}escapeName(Y){return`"${Y}"`}escapeParam(Y){return`$${Y+1}`}escapeString(Y){return`'${Y.replace(/'/g,"''")}'`}buildWithCTE(Y){if(!Y?.length)return;let X=[q`with `];for(let[$,Z]of Y.entries())if(X.push(q`${q.identifier(Z._.alias)} as (${Z._.sql})`),$<Y.length-1)X.push(q`, `);return X.push(q` `),q.join(X)}buildDeleteQuery({table:Y,where:X,returning:$,withList:Z}){let W=this.buildWithCTE(Z),J=$?q` returning ${this.buildSelection($,{isSingleTable:!0})}`:void 0,Q=X?q` where ${X}`:void 0;return q`${W}delete from ${Y}${Q}${J}`}buildUpdateSet(Y,X){let $=Y[c.Symbol.Columns],Z=Object.keys($).filter((J)=>X[J]!==void 0||$[J]?.onUpdateFn!==void 0),W=Z.length;return q.join(Z.flatMap((J,Q)=>{let G=$[J],M=X[J]??q.param(G.onUpdateFn(),G),H=q`${q.identifier(this.casing.getColumnCasing(G))} = ${M}`;if(Q<W-1)return[H,q.raw(", ")];return[H]}))}buildUpdateQuery({table:Y,set:X,where:$,returning:Z,withList:W,from:J,joins:Q}){let G=this.buildWithCTE(W),M=Y[P0.Symbol.Name],H=Y[P0.Symbol.Schema],U=Y[P0.Symbol.OriginalName],A=M===U?void 0:M,N=q`${H?q`${q.identifier(H)}.`:void 0}${q.identifier(U)}${A&&q` ${q.identifier(A)}`}`,O=this.buildUpdateSet(Y,X),z=J&&q.join([q.raw(" from "),this.buildFromTable(J)]),L=this.buildJoins(Q),F=Z?q` returning ${this.buildSelection(Z,{isSingleTable:!J})}`:void 0,g=$?q` where ${$}`:void 0;return q`${G}update ${N} set ${O}${z}${L}${g}${F}`}buildSelection(Y,{isSingleTable:X=!1}={}){let $=Y.length,Z=Y.flatMap(({field:W},J)=>{let Q=[];if(I(W,u.Aliased)&&W.isSelectionField)Q.push(q.identifier(W.fieldAlias));else if(I(W,u.Aliased)||I(W,u)){let G=I(W,u.Aliased)?W.sql:W;if(X)Q.push(new u(G.queryChunks.map((M)=>{if(I(M,d))return q.identifier(this.casing.getColumnCasing(M));return M})));else Q.push(G);if(I(W,u.Aliased))Q.push(q` as ${q.identifier(W.fieldAlias)}`)}else if(I(W,E1))if(X)Q.push(q.identifier(this.casing.getColumnCasing(W)));else Q.push(W);if(J<$-1)Q.push(q`, `);return Q});return q.join(Z)}buildJoins(Y){if(!Y||Y.length===0)return;let X=[];for(let[$,Z]of Y.entries()){if($===0)X.push(q` `);let W=Z.table,J=Z.lateral?q` lateral`:void 0;if(I(W,P0)){let Q=W[P0.Symbol.Name],G=W[P0.Symbol.Schema],M=W[P0.Symbol.OriginalName],H=Q===M?void 0:Z.alias;X.push(q`${q.raw(Z.joinType)} join${J} ${G?q`${q.identifier(G)}.`:void 0}${q.identifier(M)}${H&&q` ${q.identifier(H)}`} on ${Z.on}`)}else if(I(W,G8)){let Q=W[y1].name,G=W[y1].schema,M=W[y1].originalName,H=Q===M?void 0:Z.alias;X.push(q`${q.raw(Z.joinType)} join${J} ${G?q`${q.identifier(G)}.`:void 0}${q.identifier(M)}${H&&q` ${q.identifier(H)}`} on ${Z.on}`)}else X.push(q`${q.raw(Z.joinType)} join${J} ${W} on ${Z.on}`);if($<Y.length-1)X.push(q` `)}return q.join(X)}buildFromTable(Y){if(I(Y,c)&&Y[c.Symbol.IsAlias]){let X=q`${q.identifier(Y[c.Symbol.OriginalName])}`;if(Y[c.Symbol.Schema])X=q`${q.identifier(Y[c.Symbol.Schema])}.${X}`;return q`${X} ${q.identifier(Y[c.Symbol.Name])}`}return Y}buildSelectQuery({withList:Y,fields:X,fieldsFlat:$,where:Z,having:W,table:J,joins:Q,orderBy:G,groupBy:M,limit:H,offset:U,lockingClause:A,distinct:N,setOperators:O}){let z=$??g8(X);for(let W1 of z)if(I(W1.field,E1)&&Q8(W1.field.table)!==(I(J,B0)?J._.alias:I(J,I6)?J[y1].name:I(J,u)?void 0:Q8(J))&&!(($1)=>Q?.some(({alias:H8})=>H8===($1[c.Symbol.IsAlias]?Q8($1):$1[c.Symbol.BaseName])))(W1.field.table)){let $1=Q8(W1.field.table);throw new Error(`Your "${W1.path.join("->")}" field references a column "${$1}"."${W1.field.name}", but the table "${$1}" is not part of the query! Did you forget to join it?`)}let L=!Q||Q.length===0,F=this.buildWithCTE(Y),g;if(N)g=N===!0?q` distinct`:q` distinct on (${q.join(N.on,q`, `)})`;let V=this.buildSelection(z,{isSingleTable:L}),v=this.buildFromTable(J),s=this.buildJoins(Q),o=Z?q` where ${Z}`:void 0,x=W?q` having ${W}`:void 0,T;if(G&&G.length>0)T=q` order by ${q.join(G,q`, `)}`;let P;if(M&&M.length>0)P=q` group by ${q.join(M,q`, `)}`;let k=typeof H==="object"||typeof H==="number"&&H>=0?q` limit ${H}`:void 0,r=U?q` offset ${U}`:void 0,n=q.empty();if(A){let W1=q` for ${q.raw(A.strength)}`;if(A.config.of)W1.append(q` of ${q.join(Array.isArray(A.config.of)?A.config.of:[A.config.of],q`, `)}`);if(A.config.noWait)W1.append(q` no wait`);else if(A.config.skipLocked)W1.append(q` skip locked`);n.append(W1)}let X1=q`${F}select${g} ${V} from ${v}${s}${o}${P}${x}${T}${k}${r}${n}`;if(O.length>0)return this.buildSetOperations(X1,O);return X1}buildSetOperations(Y,X){let[$,...Z]=X;if(!$)throw new Error("Cannot pass undefined values to any set operator");if(Z.length===0)return this.buildSetOperationQuery({leftSelect:Y,setOperator:$});return this.buildSetOperations(this.buildSetOperationQuery({leftSelect:Y,setOperator:$}),Z)}buildSetOperationQuery({leftSelect:Y,setOperator:{type:X,isAll:$,rightSelect:Z,limit:W,orderBy:J,offset:Q}}){let G=q`(${Y.getSQL()}) `,M=q`(${Z.getSQL()})`,H;if(J&&J.length>0){let O=[];for(let z of J)if(I(z,d))O.push(q.identifier(z.name));else if(I(z,u)){for(let L=0;L<z.queryChunks.length;L++){let F=z.queryChunks[L];if(I(F,d))z.queryChunks[L]=q.identifier(F.name)}O.push(q`${z}`)}else O.push(q`${z}`);H=q` order by ${q.join(O,q`, `)} `}let U=typeof W==="object"||typeof W==="number"&&W>=0?q` limit ${W}`:void 0,A=q.raw(`${X} ${$?"all ":""}`),N=Q?q` offset ${Q}`:void 0;return q`${G}${A}${M}${H}${U}${N}`}buildInsertQuery({table:Y,values:X,onConflict:$,returning:Z,withList:W,select:J,overridingSystemValue_:Q}){let G=[],M=Y[c.Symbol.Columns],H=Object.entries(M).filter(([F,g])=>!g.shouldDisableInsert()),U=H.map(([,F])=>q.identifier(this.casing.getColumnCasing(F)));if(J){let F=X;if(I(F,u))G.push(F);else G.push(F.getSQL())}else{let F=X;G.push(q.raw("values "));for(let[g,V]of F.entries()){let v=[];for(let[s,o]of H){let x=V[s];if(x===void 0||I(x,_8)&&x.value===void 0)if(o.defaultFn!==void 0){let T=o.defaultFn(),P=I(T,u)?T:q.param(T,o);v.push(P)}else if(!o.default&&o.onUpdateFn!==void 0){let T=o.onUpdateFn(),P=I(T,u)?T:q.param(T,o);v.push(P)}else v.push(q`default`);else v.push(x)}if(G.push(v),g<F.length-1)G.push(q`, `)}}let A=this.buildWithCTE(W),N=q.join(G),O=Z?q` returning ${this.buildSelection(Z,{isSingleTable:!0})}`:void 0,z=$?q` on conflict ${$}`:void 0,L=Q===!0?q`overriding system value `:void 0;return q`${A}insert into ${Y} ${U} ${L}${N}${z}${O}`}buildRefreshMaterializedViewQuery({view:Y,concurrently:X,withNoData:$}){let Z=X?q` concurrently`:void 0,W=$?q` with no data`:void 0;return q`refresh materialized view${Z} ${Y}${W}`}prepareTyping(Y){if(I(Y,zW)||I(Y,UW))return"json";else if(I(Y,DW))return"decimal";else if(I(Y,AW))return"time";else if(I(Y,OW)||I(Y,NW))return"timestamp";else if(I(Y,MW)||I(Y,HW))return"date";else if(I(Y,wW))return"uuid";else return"none"}sqlToQuery(Y,X){return Y.toQuery({casing:this.casing,escapeName:this.escapeName,escapeParam:this.escapeParam,escapeString:this.escapeString,prepareTyping:this.prepareTyping,invokeSource:X})}buildRelationalQueryWithoutPK({fullSchema:Y,schema:X,tableNamesMap:$,table:Z,tableConfig:W,queryConfig:J,tableAlias:Q,nestedQueryRelation:G,joinOn:M}){let H=[],U,A,N=[],O,z=[];if(J===!0)H=Object.entries(W.columns).map(([g,V])=>({dbKey:V.name,tsKey:g,field:LY(V,Q),relationTableTsKey:void 0,isJson:!1,selection:[]}));else{let F=Object.fromEntries(Object.entries(W.columns).map(([x,T])=>[x,LY(T,Q)]));if(J.where){let x=typeof J.where==="function"?J.where(F,xH()):J.where;O=x&&V6(x,Q)}let g=[],V=[];if(J.columns){let x=!1;for(let[T,P]of Object.entries(J.columns)){if(P===void 0)continue;if(T in W.columns){if(!x&&P===!0)x=!0;V.push(T)}}if(V.length>0)V=x?V.filter((T)=>J.columns?.[T]===!0):Object.keys(W.columns).filter((T)=>!V.includes(T))}else V=Object.keys(W.columns);for(let x of V){let T=W.columns[x];g.push({tsKey:x,value:T})}let v=[];if(J.with)v=Object.entries(J.with).filter((x)=>!!x[1]).map(([x,T])=>({tsKey:x,queryConfig:T,relation:W.relations[x]}));let s;if(J.extras){s=typeof J.extras==="function"?J.extras(F,{sql:q}):J.extras;for(let[x,T]of Object.entries(s))g.push({tsKey:x,value:K4(T,Q)})}for(let{tsKey:x,value:T}of g)H.push({dbKey:I(T,u.Aliased)?T.fieldAlias:W.columns[x].name,tsKey:x,field:I(T,E1)?LY(T,Q):T,relationTableTsKey:void 0,isJson:!1,selection:[]});let o=typeof J.orderBy==="function"?J.orderBy(F,TH()):J.orderBy??[];if(!Array.isArray(o))o=[o];N=o.map((x)=>{if(I(x,E1))return LY(x,Q);return V6(x,Q)}),U=J.limit,A=J.offset;for(let{tsKey:x,queryConfig:T,relation:P}of v){let k=bH(X,$,P),r=cX(P.referencedTable),n=$[r],X1=`${Q}_${x}`,W1=sY(...k.fields.map((I0,y8)=>f8(LY(k.references[y8],X1),LY(I0,Q)))),$1=this.buildRelationalQueryWithoutPK({fullSchema:Y,schema:X,tableNamesMap:$,table:Y[n],tableConfig:X[n],queryConfig:I(P,qX)?T===!0?{limit:1}:{...T,limit:1}:T,tableAlias:X1,joinOn:W1,nestedQueryRelation:P}),H8=q`${q.identifier(X1)}.${q.identifier("data")}`.as(x);z.push({on:q`true`,table:new B0($1.sql,{},X1),alias:X1,joinType:"left",lateral:!0}),H.push({dbKey:x,tsKey:x,field:H8,relationTableTsKey:n,isJson:!0,selection:$1.selection})}}if(H.length===0)throw new KW({message:`No fields selected for table "${W.tsName}" ("${Q}")`});let L;if(O=sY(M,O),G){let F=q`json_build_array(${q.join(H.map(({field:v,tsKey:s,isJson:o})=>o?q`${q.identifier(`${Q}_${s}`)}.${q.identifier("data")}`:I(v,u.Aliased)?v.sql:v),q`, `)})`;if(I(G,P6))F=q`coalesce(json_agg(${F}${N.length>0?q` order by ${q.join(N,q`, `)}`:void 0}), '[]'::json)`;let g=[{dbKey:"data",tsKey:"data",field:F.as("data"),isJson:!0,relationTableTsKey:W.tsName,selection:H}];if(U!==void 0||A!==void 0||N.length>0)L=this.buildSelectQuery({table:JW(Z,Q),fields:{},fieldsFlat:[{path:[],field:q.raw("*")}],where:O,limit:U,offset:A,orderBy:N,setOperators:[]}),O=void 0,U=void 0,A=void 0,N=[];else L=JW(Z,Q);L=this.buildSelectQuery({table:I(L,P0)?L:new B0(L,{},Q),fields:{},fieldsFlat:g.map(({field:v})=>({path:[],field:I(v,E1)?LY(v,Q):v})),joins:z,where:O,limit:U,offset:A,orderBy:N,setOperators:[]})}else L=this.buildSelectQuery({table:JW(Z,Q),fields:{},fieldsFlat:H.map(({field:F})=>({path:[],field:I(F,E1)?LY(F,Q):F})),joins:z,where:O,limit:U,offset:A,orderBy:N,setOperators:[]});return{tableTsKey:W.tsName,sql:L,selection:H}}}class j4{static[K]="TypedQueryBuilder";getSelectedFields(){return this._.selectedFields}}class o0{static[K]="PgSelectBuilder";fields;session;dialect;withList=[];distinct;constructor(Y){if(this.fields=Y.fields,this.session=Y.session,this.dialect=Y.dialect,Y.withList)this.withList=Y.withList;this.distinct=Y.distinct}authToken;setToken(Y){return this.authToken=Y,this}from(Y){let X=!!this.fields,$=Y,Z;if(this.fields)Z=this.fields;else if(I($,B0))Z=Object.fromEntries(Object.keys($._.selectedFields).map((W)=>[W,$[W]]));else if(I($,I6))Z=$[y1].selectedFields;else if(I($,u))Z={};else Z=GW($);return new S4({table:$,fields:Z,isPartialSelect:X,session:this.session,dialect:this.dialect,withList:this.withList,distinct:this.distinct}).setToken(this.authToken)}}class vH extends j4{static[K]="PgSelectQueryBuilder";_;config;joinsNotNullableMap;tableName;isPartialSelect;session;dialect;constructor({table:Y,fields:X,isPartialSelect:$,session:Z,dialect:W,withList:J,distinct:Q}){super();this.config={withList:J,table:Y,fields:{...X},distinct:Q,setOperators:[]},this.isPartialSelect=$,this.session=Z,this.dialect=W,this._={selectedFields:X},this.tableName=lY(Y),this.joinsNotNullableMap=typeof this.tableName==="string"?{[this.tableName]:!0}:{}}createJoin(Y){return(X,$)=>{let Z=this.tableName,W=lY(X);if(typeof W==="string"&&this.config.joins?.some((J)=>J.alias===W))throw new Error(`Alias "${W}" is already used in this query`);if(!this.isPartialSelect){if(Object.keys(this.joinsNotNullableMap).length===1&&typeof Z==="string")this.config.fields={[Z]:this.config.fields};if(typeof W==="string"&&!I(X,u)){let J=I(X,B0)?X._.selectedFields:I(X,G8)?X[y1].selectedFields:X[c.Symbol.Columns];this.config.fields[W]=J}}if(typeof $==="function")$=$(new Proxy(this.config.fields,new W0({sqlAliasedBehavior:"sql",sqlBehavior:"sql"})));if(!this.config.joins)this.config.joins=[];if(this.config.joins.push({on:$,table:X,joinType:Y,alias:W}),typeof W==="string")switch(Y){case"left":{this.joinsNotNullableMap[W]=!1;break}case"right":{this.joinsNotNullableMap=Object.fromEntries(Object.entries(this.joinsNotNullableMap).map(([J])=>[J,!1])),this.joinsNotNullableMap[W]=!0;break}case"inner":{this.joinsNotNullableMap[W]=!0;break}case"full":{this.joinsNotNullableMap=Object.fromEntries(Object.entries(this.joinsNotNullableMap).map(([J])=>[J,!1])),this.joinsNotNullableMap[W]=!1;break}}return this}}leftJoin=this.createJoin("left");rightJoin=this.createJoin("right");innerJoin=this.createJoin("inner");fullJoin=this.createJoin("full");createSetOperator(Y,X){return($)=>{let Z=typeof $==="function"?$(I_()):$;if(!j6(this.getSelectedFields(),Z.getSelectedFields()))throw new Error("Set operator error (union / intersect / except): selected fields are not the same or are in a different order");return this.config.setOperators.push({type:Y,isAll:X,rightSelect:Z}),this}}union=this.createSetOperator("union",!1);unionAll=this.createSetOperator("union",!0);intersect=this.createSetOperator("intersect",!1);intersectAll=this.createSetOperator("intersect",!0);except=this.createSetOperator("except",!1);exceptAll=this.createSetOperator("except",!0);addSetOperators(Y){return this.config.setOperators.push(...Y),this}where(Y){if(typeof Y==="function")Y=Y(new Proxy(this.config.fields,new W0({sqlAliasedBehavior:"sql",sqlBehavior:"sql"})));return this.config.where=Y,this}having(Y){if(typeof Y==="function")Y=Y(new Proxy(this.config.fields,new W0({sqlAliasedBehavior:"sql",sqlBehavior:"sql"})));return this.config.having=Y,this}groupBy(...Y){if(typeof Y[0]==="function"){let X=Y[0](new Proxy(this.config.fields,new W0({sqlAliasedBehavior:"alias",sqlBehavior:"sql"})));this.config.groupBy=Array.isArray(X)?X:[X]}else this.config.groupBy=Y;return this}orderBy(...Y){if(typeof Y[0]==="function"){let X=Y[0](new Proxy(this.config.fields,new W0({sqlAliasedBehavior:"alias",sqlBehavior:"sql"}))),$=Array.isArray(X)?X:[X];if(this.config.setOperators.length>0)this.config.setOperators.at(-1).orderBy=$;else this.config.orderBy=$}else{let X=Y;if(this.config.setOperators.length>0)this.config.setOperators.at(-1).orderBy=X;else this.config.orderBy=X}return this}limit(Y){if(this.config.setOperators.length>0)this.config.setOperators.at(-1).limit=Y;else this.config.limit=Y;return this}offset(Y){if(this.config.setOperators.length>0)this.config.setOperators.at(-1).offset=Y;else this.config.offset=Y;return this}for(Y,X={}){return this.config.lockingClause={strength:Y,config:X},this}getSQL(){return this.dialect.buildSelectQuery(this.config)}toSQL(){let{typings:Y,...X}=this.dialect.sqlToQuery(this.getSQL());return X}as(Y){return new Proxy(new B0(this.getSQL(),this.config.fields,Y),new W0({alias:Y,sqlAliasedBehavior:"alias",sqlBehavior:"error"}))}getSelectedFields(){return new Proxy(this.config.fields,new W0({alias:this.tableName,sqlAliasedBehavior:"alias",sqlBehavior:"error"}))}$dynamic(){return this}}class S4 extends vH{static[K]="PgSelect";_prepare(Y){let{session:X,config:$,dialect:Z,joinsNotNullableMap:W,authToken:J}=this;if(!X)throw new Error("Cannot execute a query on a query builder. Please use a database instance instead.");return v1.startActiveSpan("drizzle.prepareQuery",()=>{let Q=g8($.fields),G=X.prepareQuery(Z.sqlToQuery(this.getSQL()),Q,Y,!0);return G.joinsNotNullableMap=W,G.setToken(J)})}prepare(Y){return this._prepare(Y)}authToken;setToken(Y){return this.authToken=Y,this}execute=(Y)=>{return v1.startActiveSpan("drizzle.operation",()=>{return this._prepare().execute(Y,this.authToken)})}}OG(S4,[i0]);function I$(Y,X){return($,Z,...W)=>{let J=[Z,...W].map((Q)=>({type:Y,isAll:X,rightSelect:Q}));for(let Q of J)if(!j6($.getSelectedFields(),Q.rightSelect.getSelectedFields()))throw new Error("Set operator error (union / intersect / except): selected fields are not the same or are in a different order");return $.addSetOperators(J)}}var I_=()=>({union:x_,unionAll:T_,intersect:k_,intersectAll:b_,except:g_,exceptAll:f_}),x_=I$("union",!1),T_=I$("union",!0),k_=I$("intersect",!1),b_=I$("intersect",!0),g_=I$("except",!1),f_=I$("except",!0);class x6{static[K]="PgQueryBuilder";dialect;dialectConfig;constructor(Y){this.dialect=I(Y,uX)?Y:void 0,this.dialectConfig=I(Y,uX)?void 0:Y}$with=(Y,X)=>{let $=this;return{as:(W)=>{if(typeof W==="function")W=W($);return new Proxy(new _6(W.getSQL(),X??("getSelectedFields"in W?W.getSelectedFields()??{}:{}),Y,!0),new W0({alias:Y,sqlAliasedBehavior:"alias",sqlBehavior:"error"}))}}};with(...Y){let X=this;function $(J){return new o0({fields:J??void 0,session:void 0,dialect:X.getDialect(),withList:Y})}function Z(J){return new o0({fields:J??void 0,session:void 0,dialect:X.getDialect(),distinct:!0})}function W(J,Q){return new o0({fields:Q??void 0,session:void 0,dialect:X.getDialect(),distinct:{on:J}})}return{select:$,selectDistinct:Z,selectDistinctOn:W}}select(Y){return new o0({fields:Y??void 0,session:void 0,dialect:this.getDialect()})}selectDistinct(Y){return new o0({fields:Y??void 0,session:void 0,dialect:this.getDialect(),distinct:!0})}selectDistinctOn(Y,X){return new o0({fields:X??void 0,session:void 0,dialect:this.getDialect(),distinct:{on:Y}})}getDialect(){if(!this.dialect)this.dialect=new uX(this.dialectConfig);return this.dialect}}class VW{constructor(Y,X,$,Z,W){this.table=Y,this.session=X,this.dialect=$,this.withList=Z,this.overridingSystemValue_=W}static[K]="PgInsertBuilder";authToken;setToken(Y){return this.authToken=Y,this}overridingSystemValue(){return this.overridingSystemValue_=!0,this}values(Y){if(Y=Array.isArray(Y)?Y:[Y],Y.length===0)throw new Error("values() must be called with at least one value");let X=Y.map(($)=>{let Z={},W=this.table[c.Symbol.Columns];for(let J of Object.keys($)){let Q=$[J];Z[J]=I(Q,u)?Q:new _8(Q,W[J])}return Z});return new C4(this.table,X,this.session,this.dialect,this.withList,!1,this.overridingSystemValue_).setToken(this.authToken)}select(Y){let X=typeof Y==="function"?Y(new x6):Y;if(!I(X,u)&&!j6(this.table[ZW],X._.selectedFields))throw new Error("Insert select error: selected fields are not the same or are in a different order compared to the table definition");return new C4(this.table,X,this.session,this.dialect,this.withList,!0)}}class C4 extends i0{constructor(Y,X,$,Z,W,J,Q){super();this.session=$,this.dialect=Z,this.config={table:Y,values:X,withList:W,select:J,overridingSystemValue_:Q}}static[K]="PgInsert";config;returning(Y=this.config.table[c.Symbol.Columns]){return this.config.returningFields=Y,this.config.returning=g8(Y),this}onConflictDoNothing(Y={}){if(Y.target===void 0)this.config.onConflict=q`do nothing`;else{let X="";X=Array.isArray(Y.target)?Y.target.map((Z)=>this.dialect.escapeName(this.dialect.casing.getColumnCasing(Z))).join(","):this.dialect.escapeName(this.dialect.casing.getColumnCasing(Y.target));let $=Y.where?q` where ${Y.where}`:void 0;this.config.onConflict=q`(${q.raw(X)})${$} do nothing`}return this}onConflictDoUpdate(Y){if(Y.where&&(Y.targetWhere||Y.setWhere))throw new Error('You cannot use both "where" and "targetWhere"/"setWhere" at the same time - "where" is deprecated, use "targetWhere" or "setWhere" instead.');let X=Y.where?q` where ${Y.where}`:void 0,$=Y.targetWhere?q` where ${Y.targetWhere}`:void 0,Z=Y.setWhere?q` where ${Y.setWhere}`:void 0,W=this.dialect.buildUpdateSet(this.config.table,QW(this.config.table,Y.set)),J="";return J=Array.isArray(Y.target)?Y.target.map((Q)=>this.dialect.escapeName(this.dialect.casing.getColumnCasing(Q))).join(","):this.dialect.escapeName(this.dialect.casing.getColumnCasing(Y.target)),this.config.onConflict=q`(${q.raw(J)})${$} do update set ${W}${X}${Z}`,this}getSQL(){return this.dialect.buildInsertQuery(this.config)}toSQL(){let{typings:Y,...X}=this.dialect.sqlToQuery(this.getSQL());return X}_prepare(Y){return v1.startActiveSpan("drizzle.prepareQuery",()=>{return this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()),this.config.returning,Y,!0)})}prepare(Y){return this._prepare(Y)}authToken;setToken(Y){return this.authToken=Y,this}execute=(Y)=>{return v1.startActiveSpan("drizzle.operation",()=>{return this._prepare().execute(Y,this.authToken)})};getSelectedFields(){return this.config.returningFields?new Proxy(this.config.returningFields,new W0({alias:Q8(this.config.table),sqlAliasedBehavior:"alias",sqlBehavior:"error"})):void 0}$dynamic(){return this}}class P4 extends i0{constructor(Y,X,$){super();this.session=X,this.dialect=$,this.config={view:Y}}static[K]="PgRefreshMaterializedView";config;concurrently(){if(this.config.withNoData!==void 0)throw new Error("Cannot use concurrently and withNoData together");return this.config.concurrently=!0,this}withNoData(){if(this.config.concurrently!==void 0)throw new Error("Cannot use concurrently and withNoData together");return this.config.withNoData=!0,this}getSQL(){return this.dialect.buildRefreshMaterializedViewQuery(this.config)}toSQL(){let{typings:Y,...X}=this.dialect.sqlToQuery(this.getSQL());return X}_prepare(Y){return v1.startActiveSpan("drizzle.prepareQuery",()=>{return this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()),void 0,Y,!0)})}prepare(Y){return this._prepare(Y)}authToken;setToken(Y){return this.authToken=Y,this}execute=(Y)=>{return v1.startActiveSpan("drizzle.operation",()=>{return this._prepare().execute(Y,this.authToken)})}}class jW{constructor(Y,X,$,Z){this.table=Y,this.session=X,this.dialect=$,this.withList=Z}static[K]="PgUpdateBuilder";authToken;setToken(Y){return this.authToken=Y,this}set(Y){return new yH(this.table,QW(this.table,Y),this.session,this.dialect,this.withList).setToken(this.authToken)}}class yH extends i0{constructor(Y,X,$,Z,W){super();this.session=$,this.dialect=Z,this.config={set:X,table:Y,withList:W,joins:[]},this.tableName=lY(Y),this.joinsNotNullableMap=typeof this.tableName==="string"?{[this.tableName]:!0}:{}}static[K]="PgUpdate";config;tableName;joinsNotNullableMap;from(Y){let X=Y,$=lY(X);if(typeof $==="string")this.joinsNotNullableMap[$]=!0;return this.config.from=X,this}getTableLikeFields(Y){if(I(Y,P0))return Y[c.Symbol.Columns];else if(I(Y,B0))return Y._.selectedFields;return Y[y1].selectedFields}createJoin(Y){return(X,$)=>{let Z=lY(X);if(typeof Z==="string"&&this.config.joins.some((W)=>W.alias===Z))throw new Error(`Alias "${Z}" is already used in this query`);if(typeof $==="function"){let W=this.config.from&&!I(this.config.from,u)?this.getTableLikeFields(this.config.from):void 0;$=$(new Proxy(this.config.table[c.Symbol.Columns],new W0({sqlAliasedBehavior:"sql",sqlBehavior:"sql"})),W&&new Proxy(W,new W0({sqlAliasedBehavior:"sql",sqlBehavior:"sql"})))}if(this.config.joins.push({on:$,table:X,joinType:Y,alias:Z}),typeof Z==="string")switch(Y){case"left":{this.joinsNotNullableMap[Z]=!1;break}case"right":{this.joinsNotNullableMap=Object.fromEntries(Object.entries(this.joinsNotNullableMap).map(([W])=>[W,!1])),this.joinsNotNullableMap[Z]=!0;break}case"inner":{this.joinsNotNullableMap[Z]=!0;break}case"full":{this.joinsNotNullableMap=Object.fromEntries(Object.entries(this.joinsNotNullableMap).map(([W])=>[W,!1])),this.joinsNotNullableMap[Z]=!1;break}}return this}}leftJoin=this.createJoin("left");rightJoin=this.createJoin("right");innerJoin=this.createJoin("inner");fullJoin=this.createJoin("full");where(Y){return this.config.where=Y,this}returning(Y){if(!Y){if(Y=Object.assign({},this.config.table[c.Symbol.Columns]),this.config.from){let X=lY(this.config.from);if(typeof X==="string"&&this.config.from&&!I(this.config.from,u)){let $=this.getTableLikeFields(this.config.from);Y[X]=$}for(let $ of this.config.joins){let Z=lY($.table);if(typeof Z==="string"&&!I($.table,u)){let W=this.getTableLikeFields($.table);Y[Z]=W}}}}return this.config.returningFields=Y,this.config.returning=g8(Y),this}getSQL(){return this.dialect.buildUpdateQuery(this.config)}toSQL(){let{typings:Y,...X}=this.dialect.sqlToQuery(this.getSQL());return X}_prepare(Y){let X=this.session.prepareQuery(this.dialect.sqlToQuery(this.getSQL()),this.config.returning,Y,!0);return X.joinsNotNullableMap=this.joinsNotNullableMap,X}prepare(Y){return this._prepare(Y)}authToken;setToken(Y){return this.authToken=Y,this}execute=(Y)=>{return this._prepare().execute(Y,this.authToken)};getSelectedFields(){return this.config.returningFields?new Proxy(this.config.returningFields,new W0({alias:Q8(this.config.table),sqlAliasedBehavior:"alias",sqlBehavior:"error"})):void 0}$dynamic(){return this}}class T6 extends u{constructor(Y){super(T6.buildEmbeddedCount(Y.source,Y.filters).queryChunks);this.params=Y,this.mapWith(Number),this.session=Y.session,this.sql=T6.buildCount(Y.source,Y.filters)}sql;token;static[K]="PgCountBuilder";[Symbol.toStringTag]="PgCountBuilder";session;static buildEmbeddedCount(Y,X){return q`(select count(*) from ${Y}${q.raw(" where ").if(X)}${X})`}static buildCount(Y,X){return q`select count(*) as count from ${Y}${q.raw(" where ").if(X)}${X};`}setToken(Y){return this.token=Y,this}then(Y,X){return Promise.resolve(this.session.count(this.sql,this.token)).then(Y,X)}catch(Y){return this.then(void 0,Y)}finally(Y){return this.then((X)=>{return Y?.(),X},(X)=>{throw Y?.(),X})}}class x4{constructor(Y,X,$,Z,W,J,Q){this.fullSchema=Y,this.schema=X,this.tableNamesMap=$,this.table=Z,this.tableConfig=W,this.dialect=J,this.session=Q}static[K]="PgRelationalQueryBuilder";findMany(Y){return new I4(this.fullSchema,this.schema,this.tableNamesMap,this.table,this.tableConfig,this.dialect,this.session,Y?Y:{},"many")}findFirst(Y){return new I4(this.fullSchema,this.schema,this.tableNamesMap,this.table,this.tableConfig,this.dialect,this.session,Y?{...Y,limit:1}:{limit:1},"first")}}class I4 extends i0{constructor(Y,X,$,Z,W,J,Q,G,M){super();this.fullSchema=Y,this.schema=X,this.tableNamesMap=$,this.table=Z,this.tableConfig=W,this.dialect=J,this.session=Q,this.config=G,this.mode=M}static[K]="PgRelationalQuery";_prepare(Y){return v1.startActiveSpan("drizzle.prepareQuery",()=>{let{query:X,builtQuery:$}=this._toSQL();return this.session.prepareQuery($,void 0,Y,!0,(Z,W)=>{let J=Z.map((Q)=>_W(this.schema,this.tableConfig,Q,X.selection,W));if(this.mode==="first")return J[0];return J})})}prepare(Y){return this._prepare(Y)}_getQuery(){return this.dialect.buildRelationalQueryWithoutPK({fullSchema:this.fullSchema,schema:this.schema,tableNamesMap:this.tableNamesMap,table:this.table,tableConfig:this.tableConfig,queryConfig:this.config,tableAlias:this.tableConfig.tsName})}getSQL(){return this._getQuery().sql}_toSQL(){let Y=this._getQuery(),X=this.dialect.sqlToQuery(Y.sql);return{query:Y,builtQuery:X}}toSQL(){return this._toSQL().builtQuery}authToken;setToken(Y){return this.authToken=Y,this}execute(){return v1.startActiveSpan("drizzle.operation",()=>{return this._prepare().execute(void 0,this.authToken)})}}class T4 extends i0{constructor(Y,X,$,Z){super();this.execute=Y,this.sql=X,this.query=$,this.mapBatchResult=Z}static[K]="PgRaw";getSQL(){return this.sql}getQuery(){return this.query}mapResult(Y,X){return X?this.mapBatchResult(Y):Y}_prepare(){return this}isResponseInArrayMode(){return!1}}class k6{constructor(Y,X,$){if(this.dialect=Y,this.session=X,this._=$?{schema:$.schema,fullSchema:$.fullSchema,tableNamesMap:$.tableNamesMap,session:X}:{schema:void 0,fullSchema:{},tableNamesMap:{},session:X},this.query={},this._.schema)for(let[Z,W]of Object.entries(this._.schema))this.query[Z]=new x4($.fullSchema,this._.schema,this._.tableNamesMap,$.fullSchema[Z],W,Y,X)}static[K]="PgDatabase";query;$with=(Y,X)=>{let $=this;return{as:(W)=>{if(typeof W==="function")W=W(new x6($.dialect));return new Proxy(new _6(W.getSQL(),X??("getSelectedFields"in W?W.getSelectedFields()??{}:{}),Y,!0),new W0({alias:Y,sqlAliasedBehavior:"alias",sqlBehavior:"error"}))}}};$count(Y,X){return new T6({source:Y,filters:X,session:this.session})}with(...Y){let X=this;function $(M){return new o0({fields:M??void 0,session:X.session,dialect:X.dialect,withList:Y})}function Z(M){return new o0({fields:M??void 0,session:X.session,dialect:X.dialect,withList:Y,distinct:!0})}function W(M,H){return new o0({fields:H??void 0,session:X.session,dialect:X.dialect,withList:Y,distinct:{on:M}})}function J(M){return new jW(M,X.session,X.dialect,Y)}function Q(M){return new VW(M,X.session,X.dialect,Y)}function G(M){return new BW(M,X.session,X.dialect,Y)}return{select:$,selectDistinct:Z,selectDistinctOn:W,update:J,insert:Q,delete:G}}select(Y){return new o0({fields:Y??void 0,session:this.session,dialect:this.dialect})}selectDistinct(Y){return new o0({fields:Y??void 0,session:this.session,dialect:this.dialect,distinct:!0})}selectDistinctOn(Y,X){return new o0({fields:X??void 0,session:this.session,dialect:this.dialect,distinct:{on:Y}})}update(Y){return new jW(Y,this.session,this.dialect)}insert(Y){return new VW(Y,this.session,this.dialect)}delete(Y){return new BW(Y,this.session,this.dialect)}refreshMaterializedView(Y){return new P4(Y,this.session,this.dialect)}authToken;execute(Y){let X=typeof Y==="string"?q.raw(Y):Y.getSQL(),$=this.dialect.sqlToQuery(X),Z=this.session.prepareQuery($,void 0,void 0,!1);return new T4(()=>Z.execute(void 0,this.authToken),X,$,(W)=>Z.mapResult(W,!0))}transaction(Y,X){return this.session.transaction(Y,X)}}class k4{constructor(Y){this.query=Y}authToken;getQuery(){return this.query}mapResult(Y,X){return Y}setToken(Y){return this.authToken=Y,this}static[K]="PgPreparedQuery";joinsNotNullableMap}class b4{constructor(Y){this.dialect=Y}static[K]="PgSession";execute(Y,X){return v1.startActiveSpan("drizzle.operation",()=>{return v1.startActiveSpan("drizzle.prepareQuery",()=>{return this.prepareQuery(this.dialect.sqlToQuery(Y),void 0,void 0,!1)}).setToken(X).execute(void 0,X)})}all(Y){return this.prepareQuery(this.dialect.sqlToQuery(Y),void 0,void 0,!1).all()}async count(Y,X){let $=await this.execute(Y,X);return Number($[0].count)}}class g4 extends k6{constructor(Y,X,$,Z=0){super(Y,X,$);this.schema=$,this.nestedIndex=Z}static[K]="PgTransaction";rollback(){throw new _4}getTransactionConfigSQL(Y){let X=[];if(Y.isolationLevel)X.push(`isolation level ${Y.isolationLevel}`);if(Y.accessMode)X.push(Y.accessMode);if(typeof Y.deferrable==="boolean")X.push(Y.deferrable?"deferrable":"not deferrable");return q.raw(X.join(" "))}setTransaction(Y){return this.session.execute(q`set transaction ${this.getTransactionConfigSQL(Y)}`)}}var Z1=AH("units",{id:FW("id").defaultRandom().primaryKey(),unitNo:tY("unit_no",{length:10}).notNull(),number:LX("number"),project:tY("project",{length:256}).notNull(),floor:LX("floor").notNull(),unitType:tY("unit_type",{length:256,enum:["Studio Squared","1 BR Squared","Studio Flex","2 BR Squared","One Bedroom2","Studio2","One Bedroom Loft","Two Bedroom Loft"]}),noOfBathrooms:LX("no_of_bathrooms").notNull(),unitView:tY("unit_view",{length:256,enum:["Canal / Amenities","Corner-Canal / Amenities","Corner-Canal View","Business Bay","Park Facing","Corner-Park Facing","Partial Park","BK/DT / Amenities","Corner-BK/DT / Amenities","Corner-Canal / BK/DT View","Marina View","Partial Marina View","Partial Marina, Partial City View","City view","Marina View, Sea View","Partial Marina View, Partial Sea View"]}),suitsArea:C$("suits_area").notNull(),squareFt:C$("square_ft").notNull(),noOfParkingSpace:LX("no_of_parking_space").notNull(),salesPrice:LX("sales_price").notNull(),state:tY("state",{length:256,enum:["reserved","sold_spa","available","sold_registered"]}).notNull(),balconyArea:C$("balcony_area").notNull(),wing:tY("wing",{enum:["East","West"]})},(Y)=>[l2().on(Y.project,Y.unitNo)]);class hH{static[K]="ConsoleLogWriter";write(Y){console.log(Y)}}class v4{static[K]="DefaultLogger";writer;constructor(Y){this.writer=Y?.writer??new hH}logQuery(Y,X){let $=X.map((W)=>{try{return JSON.stringify(W)}catch{return String(W)}}),Z=$.length?` -- params: [${$.join(", ")}]`:"";this.writer.write(`Query: ${Y}${Z}`)}}class y4{static[K]="NoopLogger";logQuery(){}}var Y0={INT8_MIN:-128,INT8_MAX:127,INT8_UNSIGNED_MAX:255,INT16_MIN:-32768,INT16_MAX:32767,INT16_UNSIGNED_MAX:65535,INT24_MIN:-8388608,INT24_MAX:8388607,INT24_UNSIGNED_MAX:16777215,INT32_MIN:-2147483648,INT32_MAX:2147483647,INT32_UNSIGNED_MAX:4294967295,INT48_MIN:-140737488355328,INT48_MAX:140737488355327,INT48_UNSIGNED_MAX:281474976710655,INT64_MIN:-9223372036854775808n,INT64_MAX:9223372036854775807n,INT64_UNSIGNED_MAX:18446744073709551615n};function z0(Y,X){return X.includes(Y.columnType)}function dH(Y){return"enumValues"in Y&&Array.isArray(Y.enumValues)&&Y.enumValues.length>0}var v_=dH,y_=x1.Union([x1.String(),x1.Number(),x1.Boolean(),x1.Null()]),h_=x1.Union([y_,x1.Array(x1.Any()),x1.Record(x1.String(),x1.Any())]);H0.Set("Buffer",(Y,X)=>X instanceof Buffer);var d_={[R]:"Buffer",type:"buffer"};function mH(Y){return Object.fromEntries(Y.map((X)=>[X,X]))}function pH(Y,X){let $;if(dH(Y))$=Y.enumValues.length?X.Enum(mH(Y.enumValues)):X.String();if(!$){if(z0(Y,["PgGeometry","PgPointTuple"]))$=X.Tuple([X.Number(),X.Number()]);else if(z0(Y,["PgGeometryObject","PgPointObject"]))$=X.Object({x:X.Number(),y:X.Number()});else if(z0(Y,["PgHalfVector","PgVector"]))$=X.Array(X.Number(),Y.dimensions?{minItems:Y.dimensions,maxItems:Y.dimensions}:void 0);else if(z0(Y,["PgLine"]))$=X.Tuple([X.Number(),X.Number(),X.Number()]);else if(z0(Y,["PgLineABC"]))$=X.Object({a:X.Number(),b:X.Number(),c:X.Number()});else if(z0(Y,["PgArray"]))$=X.Array(pH(Y.baseColumn,X),Y.size?{minItems:Y.size,maxItems:Y.size}:void 0);else if(Y.dataType==="array")$=X.Array(X.Any());else if(Y.dataType==="number")$=m_(Y,X);else if(Y.dataType==="bigint")$=p_(Y,X);else if(Y.dataType==="boolean")$=X.Boolean();else if(Y.dataType==="date")$=X.Date();else if(Y.dataType==="string")$=c_(Y,X);else if(Y.dataType==="json")$=h_;else if(Y.dataType==="custom")$=X.Any();else if(Y.dataType==="buffer")$=d_}if(!$)$=X.Any();return $}function m_(Y,X){let $=Y.getSQLType().includes("unsigned"),Z,W,J=!1;if(z0(Y,["MySqlTinyInt","SingleStoreTinyInt"]))Z=$?0:Y0.INT8_MIN,W=$?Y0.INT8_UNSIGNED_MAX:Y0.INT8_MAX,J=!0;else if(z0(Y,["PgSmallInt","PgSmallSerial","MySqlSmallInt","SingleStoreSmallInt"]))Z=$?0:Y0.INT16_MIN,W=$?Y0.INT16_UNSIGNED_MAX:Y0.INT16_MAX,J=!0;else if(z0(Y,["PgReal","MySqlFloat","MySqlMediumInt","SingleStoreFloat","SingleStoreMediumInt"]))Z=$?0:Y0.INT24_MIN,W=$?Y0.INT24_UNSIGNED_MAX:Y0.INT24_MAX,J=z0(Y,["MySqlMediumInt","SingleStoreMediumInt"]);else if(z0(Y,["PgInteger","PgSerial","MySqlInt","SingleStoreInt"]))Z=$?0:Y0.INT32_MIN,W=$?Y0.INT32_UNSIGNED_MAX:Y0.INT32_MAX,J=!0;else if(z0(Y,["PgDoublePrecision","MySqlReal","MySqlDouble","SingleStoreReal","SingleStoreDouble","SQLiteReal"]))Z=$?0:Y0.INT48_MIN,W=$?Y0.INT48_UNSIGNED_MAX:Y0.INT48_MAX;else if(z0(Y,["PgBigInt53","PgBigSerial53","MySqlBigInt53","MySqlSerial","SingleStoreBigInt53","SingleStoreSerial","SQLiteInteger"]))$=$||z0(Y,["MySqlSerial","SingleStoreSerial"]),Z=$?0:Number.MIN_SAFE_INTEGER,W=Number.MAX_SAFE_INTEGER,J=!0;else if(z0(Y,["MySqlYear","SingleStoreYear"]))Z=1901,W=2155,J=!0;else Z=Number.MIN_SAFE_INTEGER,W=Number.MAX_SAFE_INTEGER;return X[J?"Integer":"Number"]({minimum:Z,maximum:W})}function p_(Y,X){let $=Y.getSQLType().includes("unsigned"),Z=$?0n:Y0.INT64_MIN,W=$?Y0.INT64_UNSIGNED_MAX:Y0.INT64_MAX;return X.BigInt({minimum:Z,maximum:W})}function c_(Y,X){if(z0(Y,["PgUUID"]))return X.String({format:"uuid"});else if(z0(Y,["PgBinaryVector"]))return X.RegExp(/^[01]+$/,Y.dimensions?{maxLength:Y.dimensions}:void 0);let $,Z=!1;if(z0(Y,["PgVarchar","SQLiteText"]))$=Y.length;else if(z0(Y,["MySqlVarChar","SingleStoreVarChar"]))$=Y.length??Y0.INT16_UNSIGNED_MAX;else if(z0(Y,["MySqlText","SingleStoreText"]))if(Y.textType==="longtext")$=Y0.INT32_UNSIGNED_MAX;else if(Y.textType==="mediumtext")$=Y0.INT24_UNSIGNED_MAX;else if(Y.textType==="text")$=Y0.INT16_UNSIGNED_MAX;else $=Y0.INT8_UNSIGNED_MAX;if(z0(Y,["PgChar","MySqlChar","SingleStoreChar"]))$=Y.length,Z=!0;let W={};if($!==void 0&&Z)W.minLength=$,W.maxLength=$;else if($!==void 0)W.maxLength=$;return X.String(Object.keys(W).length>0?W:void 0)}function cH(Y){return w4(Y)?GW(Y):NG(Y)}function uH(Y,X,$,Z){let W={};for(let[J,Q]of Object.entries(Y)){if(!I(Q,E1)&&!I(Q,u)&&!I(Q,u.Aliased)&&typeof Q==="object"){let A=w4(Q)||DG(Q)?cH(Q):Q;W[J]=uH(A,X[J]??{},$,Z);continue}let G=X[J];if(G!==void 0&&typeof G!=="function"){W[J]=G;continue}let M=I(Q,E1)?Q:void 0,H=M?pH(M,Z?.typeboxInstance??x1):x1.Any(),U=typeof G==="function"?G(H):H;if($.never(M))continue;else W[J]=U;if(M){if($.nullable(M))W[J]=x1.Union([W[J],x1.Null()]);if($.optional(M))W[J]=x1.Optional(W[J])}}return x1.Object(W)}function u_(Y,X){return(X?.typeboxInstance??x1).Enum(mH(Y.enumValues))}var i_={never:()=>!1,optional:()=>!1,nullable:(Y)=>!Y.notNull};var iH=(Y,X)=>{if(v_(Y))return u_(Y);let $=cH(Y);return uH($,X??{},i_)};var{SQL:d4}=globalThis.Bun;class oH extends k4{constructor(Y,X,$,Z,W,J,Q){super({sql:X,params:$});this.client=Y,this.queryString=X,this.params=$,this.logger=Z,this.fields=W,this._isResponseInArrayMode=J,this.customResultMapper=Q}static[K]="BunSQLPreparedQuery";async execute(Y={}){return v1.startActiveSpan("drizzle.execute",async(X)=>{let $=B4(this.params,Y);X?.setAttributes({"drizzle.query.text":this.queryString,"drizzle.query.params":JSON.stringify($)}),this.logger.logQuery(this.queryString,$);let{fields:Z,queryString:W,client:J,joinsNotNullableMap:Q,customResultMapper:G}=this;if(!Z&&!G)return v1.startActiveSpan("drizzle.driver.execute",()=>{return J.unsafe(W,$)});let M=await v1.startActiveSpan("drizzle.driver.execute",()=>{return X?.setAttributes({"drizzle.query.text":W,"drizzle.query.params":JSON.stringify($)}),J.unsafe(W,$).values()});return v1.startActiveSpan("drizzle.mapResponse",()=>{return G?G(M):M.map((H)=>AG(Z,H,Q))})})}all(Y={}){return v1.startActiveSpan("drizzle.execute",async(X)=>{let $=B4(this.params,Y);return X?.setAttributes({"drizzle.query.text":this.queryString,"drizzle.query.params":JSON.stringify($)}),this.logger.logQuery(this.queryString,$),v1.startActiveSpan("drizzle.driver.execute",()=>{return X?.setAttributes({"drizzle.query.text":this.queryString,"drizzle.query.params":JSON.stringify($)}),this.client.unsafe(this.queryString,$)})})}isResponseInArrayMode(){return this._isResponseInArrayMode}}class b6 extends b4{constructor(Y,X,$,Z={}){super(X);this.client=Y,this.schema=$,this.options=Z,this.logger=Z.logger??new y4}static[K]="BunSQLSession";logger;prepareQuery(Y,X,$,Z,W){return new oH(this.client,Y.sql,Y.params,this.logger,X,Z,W)}query(Y,X){return this.logger.logQuery(Y,X),this.client.unsafe(Y,X).values()}queryObjects(Y,X){return this.client.unsafe(Y,X)}transaction(Y,X){return this.client.begin(async($)=>{let Z=new b6($,this.dialect,this.schema,this.options),W=new h4(this.dialect,Z,this.schema);if(X)await W.setTransaction(X);return Y(W)})}}class h4 extends g4{constructor(Y,X,$,Z=0){super(Y,X,$,Z);this.session=X}static[K]="BunSQLTransaction";transaction(Y){return this.session.client.savepoint((X)=>{let $=new b6(X,this.dialect,this.schema,this.session.options),Z=new h4(this.dialect,$,this.schema);return Y(Z)})}}class lH extends k6{static[K]="BunSQLDatabase"}function x$(Y,X={}){let $=new uX({casing:X.casing}),Z;if(X.logger===!0)Z=new v4;else if(X.logger!==!1)Z=X.logger;let W;if(X.schema){let G=kH(X.schema,gH);W={fullSchema:X.schema,schema:G.tables,tableNamesMap:G.tableNamesMap}}let J=new b6(Y,$,W,{logger:Z}),Q=new lH($,J,W);return Q.$client=Y,Q}function SW(...Y){if(typeof Y[0]==="string"){let X=new d4(Y[0]);return x$(X,Y[1])}if(wG(Y[0])){let{connection:X,client:$,...Z}=Y[0];if($)return x$($,Z);if(typeof X==="object"&&X.url!==void 0){let{url:J,...Q}=X,G=new d4({url:J,...Q});return x$(G,Z)}let W=new d4(X);return x$(W,Z)}return x$(Y[0],Y[1])}((Y)=>{function X($){return x$({options:{parsers:{},serializers:{}}},$)}Y.mock=X})(SW||(SW={}));var{SQL:o_}=globalThis.Bun;var rY=SW({schema:f4,client:new o_("postgresql://postgres:v1sq3vD5faXL@194.26.138.94:5432/irth")});var Di=iH(Z1),nH=new v0({prefix:"/units"}).get("/",async({query:{project:Y,unitTypes:X,cost:$,floor:Z,area:W,view:J,order:Q,offset:G,limit:M}})=>{try{return await rY.query.unitsTable.findMany({where:sY(Y?f8(Z1.project,Y):void 0,X?P$(Z1.unitType,X):void 0,$?v8(Z1.salesPrice,$[0],$[1]):void 0,Z?v8(Z1.floor,Z[0],Z[1]):void 0,W?v8(Z1.squareFt,W[0],W[1]):void 0,J?f8(Z1.unitView,J):void 0,S6(C6(Z1.unitType))),orderBy:Q?[Q[1]==="asc"?LW(Z1[Q[0]==="cost"?"salesPrice":"squareFt"]):qW(Z1[Q[0]==="cost"?"salesPrice":"squareFt"])]:void 0,offset:G,limit:M})}catch(H){return console.log(H.message),iY(500,"Internal server error")}},{query:B.Partial(B.Object({project:B.String(),unitTypes:B.Array(B.Union([B.Literal("Studio Squared"),B.Literal("1 BR Squared"),B.Literal("Studio Flex"),B.Literal("2 BR Squared"),B.Literal("Studio2"),B.Literal("One Bedroom2"),B.Literal("One Bedroom Loft"),B.Literal("Two Bedroom Loft")])),cost:B.Tuple([B.Number(),B.Number()]),floor:B.Tuple([B.Number(),B.Number()]),area:B.Tuple([B.Number(),B.Number()]),view:B.Union([B.Literal("Canal / Amenities"),B.Literal("Corner-Canal / Amenities"),B.Literal("Corner-Canal View"),B.Literal("Business Bay"),B.Literal("Park Facing"),B.Literal("Corner-Park Facing"),B.Literal("Partial Park"),B.Literal("BK/DT / Amenities"),B.Literal("Corner-BK/DT / Amenities"),B.Literal("Corner-Canal / BK/DT View"),B.Literal("Marina View"),B.Literal("Partial Marina View"),B.Literal("Partial Marina, Partial City View"),B.Literal("City view"),B.Literal("Marina View, Sea View"),B.Literal("Partial Marina View, Partial Sea View")]),order:B.Tuple([B.Union([B.Literal("cost"),B.Literal("sqft")]),B.Union([B.Literal("asc"),B.Literal("desc")])]),offset:B.Number({default:0}),limit:B.Number({default:16})}))}).get("/count",async({query:{project:Y,unitTypes:X,cost:$,floor:Z,area:W,view:J}})=>{try{return(await rY.select({count:fH()}).from(Z1).where(sY(Y?f8(Z1.project,Y):void 0,X?P$(Z1.unitType,X):void 0,$?v8(Z1.salesPrice,$[0],$[1]):void 0,Z?v8(Z1.floor,Z[0],Z[1]):void 0,W?v8(Z1.squareFt,W[0],W[1]):void 0,J?f8(Z1.unitView,J):void 0,S6(C6(Z1.unitType)))))[0].count}catch(Q){return console.log(Q.message),iY(500,"Internal server error")}},{query:B.Partial(B.Object({project:B.String(),unitTypes:B.Array(B.Union([B.Literal("Studio Squared"),B.Literal("1 BR Squared"),B.Literal("Studio Flex"),B.Literal("2 BR Squared"),B.Literal("Studio2"),B.Literal("One Bedroom2"),B.Literal("One Bedroom Loft"),B.Literal("Two Bedroom Loft")])),cost:B.Tuple([B.Number(),B.Number()]),floor:B.Tuple([B.Number(),B.Number()]),area:B.Tuple([B.Number(),B.Number()]),view:B.Union([B.Literal("Canal / Amenities"),B.Literal("Corner-Canal / Amenities"),B.Literal("Corner-Canal View"),B.Literal("Business Bay"),B.Literal("Park Facing"),B.Literal("Corner-Park Facing"),B.Literal("Partial Park"),B.Literal("BK/DT / Amenities"),B.Literal("Corner-BK/DT / Amenities"),B.Literal("Corner-Canal / BK/DT View"),B.Literal("Marina View"),B.Literal("Partial Marina View"),B.Literal("Partial Marina, Partial City View"),B.Literal("City view"),B.Literal("Marina View, Sea View"),B.Literal("Partial Marina View, Partial Sea View")])}))}).get("/filters/:filterName",async({query:{project:Y,view:X,unitTypes:$,cost:Z,floor:W,area:J},params:{filterName:Q}})=>{try{let G=sY(Y?f8(Z1.project,Y):void 0,$&&Q!=="unitTypes"?P$(Z1.unitType,$):void 0,X&&Q!=="views"?f8(Z1.unitView,X):void 0,Z&&Q!=="cost"?v8(Z1.salesPrice,Z[0],Z[1]):void 0,W&&Q!=="floor"?v8(Z1.floor,W[0],W[1]):void 0,J&&Q!=="area"?v8(Z1.squareFt,J[0],J[1]):void 0);if(Q==="unitTypes")return(await rY.selectDistinctOn([Z1.unitType],{unitType:Z1.unitType}).from(Z1).where(G)).map((M)=>M.unitType).filter(Boolean);else if(Q==="views")return(await rY.selectDistinctOn([Z1.unitView],{unitView:Z1.unitView}).from(Z1).where(G)).map((M)=>M.unitView).filter(Boolean);else if(Q==="cost")return(await rY.select({min:EW(Z1.salesPrice),max:RW(Z1.salesPrice)}).from(Z1).where(G))[0];else if(Q==="area")return(await rY.select({min:EW(Z1.squareFt),max:RW(Z1.squareFt)}).from(Z1).where(G))[0];return(await rY.select({min:EW(Z1.floor),max:RW(Z1.floor)}).from(Z1).where(G))[0]}catch(G){return console.log(G.message),iY(500,"Internal server error")}},{response:{200:B.Union([B.Array(B.String()),B.Object({min:B.Number(),max:B.Number()})]),500:B.ObjectString({})},params:B.Object({filterName:B.Union([B.Literal("unitTypes"),B.Literal("views"),B.Literal("cost"),B.Literal("area"),B.Literal("floor")])}),query:B.Partial(B.Object({project:B.String(),unitTypes:B.Array(B.Union([B.Literal("Studio Squared"),B.Literal("1 BR Squared"),B.Literal("Studio Flex"),B.Literal("2 BR Squared"),B.Literal("Studio2"),B.Literal("One Bedroom2"),B.Literal("One Bedroom Loft"),B.Literal("Two Bedroom Loft")])),cost:B.Tuple([B.Number(),B.Number()]),floor:B.Tuple([B.Number(),B.Number()]),area:B.Tuple([B.Number(),B.Number()]),view:B.Union([B.Literal("Canal / Amenities"),B.Literal("Corner-Canal / Amenities"),B.Literal("Corner-Canal View"),B.Literal("Business Bay"),B.Literal("Park Facing"),B.Literal("Corner-Park Facing"),B.Literal("Partial Park"),B.Literal("BK/DT / Amenities"),B.Literal("Corner-BK/DT / Amenities"),B.Literal("Corner-Canal / BK/DT View"),B.Literal("Marina View"),B.Literal("Partial Marina View"),B.Literal("Partial Marina, Partial City View"),B.Literal("City view"),B.Literal("Marina View, Sea View"),B.Literal("Partial Marina View, Partial Sea View")])}))}).get("/get-floors-data/:project",async({params:{project:Y}})=>{try{let X=await rY.select().from(Z1).where(f8(Z1.project,decodeURIComponent(Y))),$=new Map;for(let Z of X)if(Z.unitNo&&Z.floor&&Z.unitType){if(!$.has(Z.floor))$.set(Z.floor,{floor:Z.floor,East:{types:{},totalUnits:0},West:{types:{},totalUnits:0},others:{types:{},totalUnits:0}});let W=$.get(Z.floor);if(console.log(Z),Z.wing==="East")W.East.types[Z.unitType]=(W.East.types[Z.unitType]||0)+1,W.East.totalUnits++;else if(Z.wing==="West")W.West.types[Z.unitType]=(W.West.types[Z.unitType]||0)+1,W.West.totalUnits++;else W.others.types[Z.unitType]=(W.others.types[Z.unitType]||0)+1,W.others.totalUnits++}return Array.from($.values())}catch(X){return console.log(X.message),iY(500,"Internal server error")}},{params:B.Object({project:B.String()})});var l_=typeof new Headers()?.toJSON==="function",n_=(Y)=>{if(l_)return Object.keys(Y.toJSON()).join(", ");let X="";if(Y.forEach(($,Z)=>{X+=Z+", "}),X)X=X.slice(0,-1);return X},tH=(Y,X,$)=>{if(Array.isArray(Y))return Y.some((Z)=>tH(Z,X,$));switch(typeof Y){case"string":if(Y.indexOf("://")===-1)return $.includes(Y);return Y===$;case"function":return Y(X)===!0;case"object":if(Y instanceof RegExp)return Y.test($)}return!1},sH=(Y)=>{let{aot:X=!0,origin:$=!0,methods:Z=!0,allowedHeaders:W=!0,exposeHeaders:J=!0,credentials:Q=!0,maxAge:G=5,preflight:M=!0}=Y??{};if(Array.isArray(W))W=W.join(", ");if(Array.isArray(J))J=J.join(", ");let H=typeof $==="boolean"?void 0:Array.isArray($)?$:[$],U=new v0({name:"@elysiajs/cors",seed:Y,aot:X}),A=H?.some((F)=>F==="*"),N=(F,g)=>{if($===!0){F.headers.vary="*",F.headers["access-control-allow-origin"]=g.headers.get("Origin")||"*";return}if(A){F.headers.vary="*",F.headers["access-control-allow-origin"]="*";return}if(!H?.length)return;let V=[];if(H.length){let v=g.headers.get("Origin")??"";for(let s=0;s<H.length;s++){let o=tH(H[s],g,v);if(o===!0){F.headers.vary=$?"Origin":"*",F.headers["access-control-allow-origin"]=v||"*";return}if(o)V.push(o)}}if(F.headers.vary="Origin",V.length)F.headers["access-control-allow-origin"]=V.join(", ")},O=(F,g)=>{if(!g)return;if(Z===!0)return F.headers["access-control-allow-methods"]=g??"*";if(Z===!1||!Z?.length)return;if(Z==="*")return F.headers["access-control-allow-methods"]="*";if(!Array.isArray(Z))return F.headers["access-control-allow-methods"]=Z;F.headers["access-control-allow-methods"]=Z.join(", ")},z={};if(typeof J==="string")z["access-control-expose-headers"]=J;if(typeof W==="string")z["access-control-allow-headers"]=W;if(Q===!0)z["access-control-allow-credentials"]="true";U.headers(z);function L({set:F,request:g,headers:V}){if(N(F,g),O(F,g.headers.get("access-control-request-method")),W===!0||J===!0){if(W===!0)F.headers["access-control-allow-headers"]=V["access-control-request-headers"];if(J===!0)F.headers["access-control-expose-headers"]=Object.keys(V).join(",")}if(G)F.headers["access-control-max-age"]=G.toString();return new Response(null,{status:204})}if(M)U.options("/",L).options("/*",L);return U.onRequest(function F({set:g,request:V}){if(N(g,V),O(g,V.method),W===!0||J===!0){let v=n_(V.headers);if(W===!0)g.headers["access-control-allow-headers"]=v;if(J===!0)g.headers["access-control-expose-headers"]=v}})};var rH=new v0().use(sH({origin:"*"})).use(nH).listen(4002);console.log(`\uD83E\uDD8A Elysia is running at ${rH.server?.hostname}:${rH.server?.port}`);
|