veloce-ts 0.3.0 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +55 -1
- package/dist/cjs/src/cli/index.js +122 -71
- package/dist/cjs/src/cli/index.js.map +4 -4
- package/dist/cjs/src/index.js +17 -17
- package/dist/cjs/src/index.js.map +2 -2
- package/dist/cjs/src/middleware/index.js +2 -2
- package/dist/cjs/src/middleware/index.js.map +2 -2
- package/dist/cjs/src/plugins/index.js +2 -2
- package/dist/cjs/src/plugins/index.js.map +2 -2
- package/dist/cjs/src/testing/index.js +2 -2
- package/dist/cjs/src/testing/index.js.map +2 -2
- package/dist/cjs/src/websocket/index.js +3 -3
- package/dist/cjs/src/websocket/index.js.map +1 -1
- package/dist/esm/src/cli/index.js +561 -22
- package/dist/esm/src/cli/index.js.map +8 -4
- package/dist/esm/src/docs/index.js +6 -6
- package/dist/esm/src/docs/index.js.map +10 -3
- package/dist/esm/src/errors/index.js +3 -2
- package/dist/esm/src/errors/index.js.map +7 -3
- package/dist/esm/src/graphql/index.js +82 -2
- package/dist/esm/src/graphql/index.js.map +18 -3
- package/dist/esm/src/index.js +161 -14
- package/dist/esm/src/index.js.map +178 -5
- package/dist/esm/src/middleware/index.js +28 -2
- package/dist/esm/src/middleware/index.js.map +79 -3
- package/dist/esm/src/plugins/index.js +113 -3
- package/dist/esm/src/plugins/index.js.map +129 -3
- package/dist/esm/src/testing/index.js +42 -2
- package/dist/esm/src/testing/index.js.map +93 -3
- package/dist/esm/src/types/index.js +2 -2
- package/dist/esm/src/types/index.js.map +10 -3
- package/dist/esm/src/validation/index.js +2 -2
- package/dist/esm/src/validation/index.js.map +13 -3
- package/dist/esm/src/websocket/index.js +15 -2
- package/dist/esm/src/websocket/index.js.map +9 -4
- package/dist/types/cli/commands/new.d.ts.map +1 -1
- package/dist/types/websocket/index.d.ts +1 -1
- package/dist/types/websocket/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/esm/chunk-0st10wcn.js +0 -5
- package/dist/esm/chunk-0st10wcn.js.map +0 -10
- package/dist/esm/chunk-17vq2krv.js +0 -4
- package/dist/esm/chunk-17vq2krv.js.map +0 -16
- package/dist/esm/chunk-39f1dm0q.js +0 -60
- package/dist/esm/chunk-39f1dm0q.js.map +0 -10
- package/dist/esm/chunk-3q5xefez.js +0 -72
- package/dist/esm/chunk-3q5xefez.js.map +0 -13
- package/dist/esm/chunk-6ft6xkhc.js +0 -5
- package/dist/esm/chunk-6ft6xkhc.js.map +0 -10
- package/dist/esm/chunk-79b0bm4k.js +0 -5
- package/dist/esm/chunk-79b0bm4k.js.map +0 -10
- package/dist/esm/chunk-8kakv20e.js +0 -7
- package/dist/esm/chunk-8kakv20e.js.map +0 -10
- package/dist/esm/chunk-b2pdghf7.js +0 -5
- package/dist/esm/chunk-b2pdghf7.js.map +0 -11
- package/dist/esm/chunk-b7yr0p26.js +0 -5
- package/dist/esm/chunk-b7yr0p26.js.map +0 -10
- package/dist/esm/chunk-fzj3j2tz.js +0 -5
- package/dist/esm/chunk-fzj3j2tz.js.map +0 -10
- package/dist/esm/chunk-g0e0m30h.js +0 -6
- package/dist/esm/chunk-g0e0m30h.js.map +0 -10
- package/dist/esm/chunk-gzkpxw50.js +0 -5
- package/dist/esm/chunk-gzkpxw50.js.map +0 -10
- package/dist/esm/chunk-k4346bxd.js +0 -30
- package/dist/esm/chunk-k4346bxd.js.map +0 -78
- package/dist/esm/chunk-k9p1edmj.js +0 -5
- package/dist/esm/chunk-k9p1edmj.js.map +0 -10
- package/dist/esm/chunk-keyvhe4h.js +0 -5
- package/dist/esm/chunk-keyvhe4h.js.map +0 -9
- package/dist/esm/chunk-npcmt5ay.js +0 -430
- package/dist/esm/chunk-npcmt5ay.js.map +0 -10
- package/dist/esm/chunk-nyqav7az.js +0 -18
- package/dist/esm/chunk-nyqav7az.js.map +0 -10
- package/dist/esm/chunk-nzg49r1w.js +0 -7
- package/dist/esm/chunk-nzg49r1w.js.map +0 -10
- package/dist/esm/chunk-sk8amac2.js +0 -5
- package/dist/esm/chunk-sk8amac2.js.map +0 -10
- package/dist/esm/chunk-sz3bj4rp.js +0 -5
- package/dist/esm/chunk-sz3bj4rp.js.map +0 -12
- package/dist/esm/chunk-x1mvjab1.js +0 -5
- package/dist/esm/chunk-x1mvjab1.js.map +0 -12
package/dist/cjs/src/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
var vB=Object.create;var{getPrototypeOf:gB,defineProperty:F4,getOwnPropertyNames:
|
|
1
|
+
var vB=Object.create;var{getPrototypeOf:gB,defineProperty:F4,getOwnPropertyNames:A3,getOwnPropertyDescriptor:yB}=Object,R3=Object.prototype.hasOwnProperty;var F0=($,H,J)=>{J=$!=null?vB(gB($)):{};let Q=H||!$||!$.__esModule?F4(J,"default",{value:$,enumerable:!0}):J;for(let X of A3($))if(!R3.call(Q,X))F4(Q,X,{get:()=>$[X],enumerable:!0});return Q},N3=new WeakMap,l1=($)=>{var H=N3.get($),J;if(H)return H;if(H=F4({},"__esModule",{value:!0}),$&&typeof $==="object"||typeof $==="function")A3($).map((Q)=>!R3.call(H,Q)&&F4(H,Q,{get:()=>$[Q],enumerable:!(J=yB($,Q))||J.enumerable}));return N3.set($,H),H},N=($,H)=>()=>(H||$((H={exports:{}}).exports,H),H.exports);var L1=($,H)=>{for(var J in H)F4($,J,{get:H[J],enumerable:!0,configurable:!0,set:(Q)=>H[J]=()=>Q})};var Z9=($,H)=>()=>($&&(H=$($=0)),H);var K8={};L1(K8,{setRequestMetadata:()=>Z3,setRequestContext:()=>P8,initializeRequestContext:()=>R4,getRequestMetadata:()=>L3,getRequestId:()=>E3,getRequestDuration:()=>E4,getRequestContext:()=>N0,getAbortSignal:()=>j3,generateRequestId:()=>C8,cleanupRequestContext:()=>j4,abortRequest:()=>O3});function C8(){if(typeof crypto<"u"&&crypto.randomUUID)return crypto.randomUUID();return`${Date.now()}-${Math.random().toString(36).substring(2,15)}-${Math.random().toString(36).substring(2,15)}`}function N0($){return $.get("veloce:request-context")||null}function P8($,H){$.set("veloce:request-context",H)}function R4($,H){let J=H?.requestId||C8(),Q=new AbortController,X={requestId:J,startTime:Date.now(),abortSignal:Q.signal,abortController:Q,timeout:H?.timeout,metadata:{}};if(H?.timeout&&H.timeout>0)X.timeoutId=setTimeout(()=>{Q.abort()},H.timeout);return P8($,X),X}function E3($){return N0($)?.requestId||null}function j3($){return N0($)?.abortSignal||null}function O3($){let H=N0($);if(H?.abortController&&!H.abortSignal.aborted)H.abortController.abort()}function Z3($,H,J){let Q=N0($);if(Q)Q.metadata[H]=J}function L3($,H){return N0($)?.metadata[H]}function E4($){let H=N0($);if(!H)return null;return Date.now()-H.startTime}function j4($){let H=N0($);if(H?.timeoutId)clearTimeout(H.timeoutId)}var T8=N((gC,C3)=>{var O4=($)=>{return $&&typeof $.message==="string"},I8=($)=>{if(!$)return;let H=$.cause;if(typeof H==="function"){let J=$.cause();return O4(J)?J:void 0}else return O4(H)?H:void 0},M3=($,H)=>{if(!O4($))return"";let J=$.stack||"";if(H.has($))return J+`
|
|
2
2
|
causes have become circular...`;let Q=I8($);if(Q)return H.add($),J+`
|
|
3
|
-
caused by: `+j3(Q,H);else return J},uB=($)=>j3($,new Set),O3=($,H,J)=>{if(!O4($))return"";let Q=J?"":$.message||"";if(H.has($))return Q+": ...";let X=I8($);if(X){H.add($);let Y=typeof $.cause==="function";return Q+(Y?"":": ")+O3(X,H,Y)}else return Q},mB=($)=>O3($,new Set);Z3.exports={isErrorLike:O4,getErrorCause:I8,stackWithCauses:uB,messageWithCauses:mB}});var b8=N((yC,M3)=>{var dB=Symbol("circular-ref-tag"),L9=Symbol("pino-raw-err-ref"),L3=Object.create({},{type:{enumerable:!0,writable:!0,value:void 0},message:{enumerable:!0,writable:!0,value:void 0},stack:{enumerable:!0,writable:!0,value:void 0},aggregateErrors:{enumerable:!0,writable:!0,value:void 0},raw:{enumerable:!1,get:function(){return this[L9]},set:function($){this[L9]=$}}});Object.defineProperty(L3,L9,{writable:!0,value:{}});M3.exports={pinoErrProto:L3,pinoErrorSymbols:{seen:dB,rawSymbol:L9}}});var P3=N((uC,C3)=>{C3.exports=x8;var{messageWithCauses:cB,stackWithCauses:lB,isErrorLike:S3}=T8(),{pinoErrProto:pB,pinoErrorSymbols:nB}=b8(),{seen:f8}=nB,{toString:iB}=Object.prototype;function x8($){if(!S3($))return $;$[f8]=void 0;let H=Object.create(pB);if(H.type=iB.call($.constructor)==="[object Function]"?$.constructor.name:$.name,H.message=cB($),H.stack=lB($),Array.isArray($.errors))H.aggregateErrors=$.errors.map((J)=>x8(J));for(let J in $)if(H[J]===void 0){let Q=$[J];if(S3(Q)){if(J!=="cause"&&!Object.prototype.hasOwnProperty.call(Q,f8))H[J]=x8(Q)}else H[J]=Q}return delete $[f8],H.raw=$,H}});var I3=N((mC,K3)=>{K3.exports=S9;var{isErrorLike:k8}=T8(),{pinoErrProto:sB,pinoErrorSymbols:oB}=b8(),{seen:M9}=oB,{toString:rB}=Object.prototype;function S9($){if(!k8($))return $;$[M9]=void 0;let H=Object.create(sB);if(H.type=rB.call($.constructor)==="[object Function]"?$.constructor.name:$.name,H.message=$.message,H.stack=$.stack,Array.isArray($.errors))H.aggregateErrors=$.errors.map((J)=>S9(J));if(k8($.cause)&&!Object.prototype.hasOwnProperty.call($.cause,M9))H.cause=S9($.cause);for(let J in $)if(H[J]===void 0){let Q=$[J];if(k8(Q)){if(!Object.prototype.hasOwnProperty.call(Q,M9))H[J]=S9(Q)}else H[J]=Q}return delete $[M9],H.raw=$,H}});var x3=N((dC,f3)=>{f3.exports={mapHttpRequest:aB,reqSerializer:b3};var h8=Symbol("pino-raw-req-ref"),T3=Object.create({},{id:{enumerable:!0,writable:!0,value:""},method:{enumerable:!0,writable:!0,value:""},url:{enumerable:!0,writable:!0,value:""},query:{enumerable:!0,writable:!0,value:""},params:{enumerable:!0,writable:!0,value:""},headers:{enumerable:!0,writable:!0,value:{}},remoteAddress:{enumerable:!0,writable:!0,value:""},remotePort:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[h8]},set:function($){this[h8]=$}}});Object.defineProperty(T3,h8,{writable:!0,value:{}});function b3($){let H=$.info||$.socket,J=Object.create(T3);if(J.id=typeof $.id==="function"?$.id():$.id||($.info?$.info.id:void 0),J.method=$.method,$.originalUrl)J.url=$.originalUrl;else{let Q=$.path;J.url=typeof Q==="string"?Q:$.url?$.url.path||$.url:void 0}if($.query)J.query=$.query;if($.params)J.params=$.params;return J.headers=$.headers,J.remoteAddress=H&&H.remoteAddress,J.remotePort=H&&H.remotePort,J.raw=$.raw||$,J}function aB($){return{req:b3($)}}});var g3=N((cC,v3)=>{v3.exports={mapHttpResponse:tB,resSerializer:h3};var v8=Symbol("pino-raw-res-ref"),k3=Object.create({},{statusCode:{enumerable:!0,writable:!0,value:0},headers:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[v8]},set:function($){this[v8]=$}}});Object.defineProperty(k3,v8,{writable:!0,value:{}});function h3($){let H=Object.create(k3);return H.statusCode=$.headersSent?$.statusCode:null,H.headers=$.getHeaders?$.getHeaders():$._headers,H.raw=$,H}function tB($){return{res:h3($)}}});var y8=N((lC,y3)=>{var g8=P3(),eB=I3(),C9=x3(),P9=g3();y3.exports={err:g8,errWithCause:eB,mapHttpRequest:C9.mapHttpRequest,mapHttpResponse:P9.mapHttpResponse,req:C9.reqSerializer,res:P9.resSerializer,wrapErrorSerializer:function(H){if(H===g8)return H;return function(Q){return H(g8(Q))}},wrapRequestSerializer:function(H){if(H===C9.reqSerializer)return H;return function(Q){return H(C9.reqSerializer(Q))}},wrapResponseSerializer:function(H){if(H===P9.resSerializer)return H;return function(Q){return H(P9.resSerializer(Q))}}}});var u8=N((pC,u3)=>{function $w($,H){return H}u3.exports=function(){let H=Error.prepareStackTrace;Error.prepareStackTrace=$w;let J=Error().stack;if(Error.prepareStackTrace=H,!Array.isArray(J))return;let Q=J.slice(2),X=[];for(let Y of Q){if(!Y)continue;X.push(Y.getFileName())}return X}});var n3=N((nC,p3)=>{function m8($){if($===null||typeof $!=="object")return $;if($ instanceof Date)return new Date($.getTime());if($ instanceof Array){let H=[];for(let J=0;J<$.length;J++)H[J]=m8($[J]);return H}if(typeof $==="object"){let H=Object.create(Object.getPrototypeOf($));for(let J in $)if(Object.prototype.hasOwnProperty.call($,J))H[J]=m8($[J]);return H}return $}function m3($){let H=[],J="",Q=!1,X=!1,Y="";for(let W=0;W<$.length;W++){let G=$[W];if(!Q&&G==="."){if(J)H.push(J),J=""}else if(G==="["){if(J)H.push(J),J="";Q=!0}else if(G==="]"&&Q)H.push(J),J="",Q=!1,X=!1;else if((G==='"'||G==="'")&&Q)if(!X)X=!0,Y=G;else if(G===Y)X=!1,Y="";else J+=G;else J+=G}if(J)H.push(J);return H}function d3($,H,J){let Q=$;for(let Y=0;Y<H.length-1;Y++){let W=H[Y];if(typeof Q!=="object"||Q===null||!(W in Q))return!1;if(typeof Q[W]!=="object"||Q[W]===null)return!1;Q=Q[W]}let X=H[H.length-1];if(X==="*"){if(Array.isArray(Q))for(let Y=0;Y<Q.length;Y++)Q[Y]=J;else if(typeof Q==="object"&&Q!==null){for(let Y in Q)if(Object.prototype.hasOwnProperty.call(Q,Y))Q[Y]=J}}else if(typeof Q==="object"&&Q!==null&&X in Q&&Object.prototype.hasOwnProperty.call(Q,X))Q[X]=J;return!0}function c3($,H){let J=$;for(let X=0;X<H.length-1;X++){let Y=H[X];if(typeof J!=="object"||J===null||!(Y in J))return!1;if(typeof J[Y]!=="object"||J[Y]===null)return!1;J=J[Y]}let Q=H[H.length-1];if(Q==="*"){if(Array.isArray(J))for(let X=0;X<J.length;X++)J[X]=void 0;else if(typeof J==="object"&&J!==null){for(let X in J)if(Object.prototype.hasOwnProperty.call(J,X))delete J[X]}}else if(typeof J==="object"&&J!==null&&Q in J&&Object.prototype.hasOwnProperty.call(J,Q))delete J[Q];return!0}var K9=Symbol("PATH_NOT_FOUND");function Hw($,H){let J=$;for(let Q of H){if(J===null||J===void 0)return K9;if(typeof J!=="object"||J===null)return K9;if(!(Q in J))return K9;J=J[Q]}return J}function Jw($,H){let J=$;for(let Q of H){if(J===null||J===void 0)return;if(typeof J!=="object"||J===null)return;J=J[Q]}return J}function Qw($,H,J,Q=!1){for(let X of H){let Y=m3(X);if(Y.includes("*"))l3($,Y,J,X,Q);else if(Q)c3($,Y);else{let W=Hw($,Y);if(W===K9)continue;let G=typeof J==="function"?J(W,Y):J;d3($,Y,G)}}}function l3($,H,J,Q,X=!1){let Y=H.indexOf("*");if(Y===H.length-1){let W=H.slice(0,-1),G=$;for(let q of W){if(G===null||G===void 0)return;if(typeof G!=="object"||G===null)return;G=G[q]}if(Array.isArray(G))if(X)for(let q=0;q<G.length;q++)G[q]=void 0;else for(let q=0;q<G.length;q++){let U=[...W,q.toString()],B=typeof J==="function"?J(G[q],U):J;G[q]=B}else if(typeof G==="object"&&G!==null)if(X){let q=[];for(let U in G)if(Object.prototype.hasOwnProperty.call(G,U))q.push(U);for(let U of q)delete G[U]}else for(let q in G){let U=[...W,q],B=typeof J==="function"?J(G[q],U):J;G[q]=B}}else Xw($,H,J,Y,Q,X)}function Xw($,H,J,Q,X,Y=!1){let W=H.slice(0,Q),G=H.slice(Q+1),q=[];function U(B,w){if(w===W.length){if(Array.isArray(B))for(let _=0;_<B.length;_++)q[w]=_.toString(),U(B[_],w+1);else if(typeof B==="object"&&B!==null)for(let _ in B)q[w]=_,U(B[_],w+1)}else if(w<W.length){let _=W[w];if(B&&typeof B==="object"&&B!==null&&_ in B)q[w]=_,U(B[_],w+1)}else if(G.includes("*"))l3(B,G,typeof J==="function"?(V,D)=>{let A=[...q.slice(0,w),...D];return J(V,A)}:J,X,Y);else if(Y)c3(B,G);else{let _=typeof J==="function"?J(Jw(B,G),[...q.slice(0,w),...G]):J;d3(B,G,_)}}if(W.length===0)U($,0);else{let B=$;for(let w=0;w<W.length;w++){let _=W[w];if(B===null||B===void 0)return;if(typeof B!=="object"||B===null)return;B=B[_],q[w]=_}if(B!==null&&B!==void 0)U(B,W.length)}}function Yw($){if($.length===0)return null;let H=new Map;for(let J of $){let Q=m3(J),X=H;for(let Y=0;Y<Q.length;Y++){let W=Q[Y];if(!X.has(W))X.set(W,new Map);X=X.get(W)}}return H}function Ww($,H){if(!H)return $;function J(Q,X,Y=0){if(!X||X.size===0)return Q;if(Q===null||typeof Q!=="object")return Q;if(Q instanceof Date)return new Date(Q.getTime());if(Array.isArray(Q)){let G=[];for(let q=0;q<Q.length;q++){let U=q.toString();if(X.has(U)||X.has("*"))G[q]=J(Q[q],X.get(U)||X.get("*"));else G[q]=Q[q]}return G}let W=Object.create(Object.getPrototypeOf(Q));for(let G in Q)if(Object.prototype.hasOwnProperty.call(Q,G))if(X.has(G)||X.has("*"))W[G]=J(Q[G],X.get(G)||X.get("*"));else W[G]=Q[G];return W}return J($,H)}function Gw($){if(typeof $!=="string")throw Error("Paths must be (non-empty) strings");if($==="")throw Error("Invalid redaction path ()");if($.includes(".."))throw Error(`Invalid redaction path (${$})`);if($.includes(","))throw Error(`Invalid redaction path (${$})`);let H=0,J=!1,Q="";for(let X=0;X<$.length;X++){let Y=$[X];if((Y==='"'||Y==="'")&&H>0){if(!J)J=!0,Q=Y;else if(Y===Q)J=!1,Q=""}else if(Y==="["&&!J)H++;else if(Y==="]"&&!J){if(H--,H<0)throw Error(`Invalid redaction path (${$})`)}}if(H!==0)throw Error(`Invalid redaction path (${$})`)}function qw($){if(!Array.isArray($))throw TypeError("paths must be an array");for(let H of $)Gw(H)}function Uw($={}){let{paths:H=[],censor:J="[REDACTED]",serialize:Q=JSON.stringify,strict:X=!0,remove:Y=!1}=$;qw(H);let W=Yw(H);return function(q){if(X&&(q===null||typeof q!=="object")){if(q===null||q===void 0)return Q?Q(q):q;if(typeof q!=="object")return Q?Q(q):q}let U=Ww(q,W),B=q,w=J;if(typeof J==="function")w=J;if(Qw(U,H,w,Y),Q===!1)return U.restore=function(){return m8(B)},U;if(typeof Q==="function")return Q(U);return JSON.stringify(U)}}p3.exports=Uw});var E$=N((iC,i3)=>{var Bw=Symbol("pino.setLevel"),ww=Symbol("pino.getLevel"),Dw=Symbol("pino.levelVal"),Vw=Symbol("pino.levelComp"),_w=Symbol("pino.useLevelLabels"),Fw=Symbol("pino.useOnlyCustomLevels"),zw=Symbol("pino.mixin"),Nw=Symbol("pino.lsCache"),Aw=Symbol("pino.chindings"),Rw=Symbol("pino.asJson"),Ew=Symbol("pino.write"),jw=Symbol("pino.redactFmt"),Ow=Symbol("pino.time"),Zw=Symbol("pino.timeSliceIndex"),Lw=Symbol("pino.stream"),Mw=Symbol("pino.stringify"),Sw=Symbol("pino.stringifySafe"),Cw=Symbol("pino.stringifiers"),Pw=Symbol("pino.end"),Kw=Symbol("pino.formatOpts"),Iw=Symbol("pino.messageKey"),Tw=Symbol("pino.errorKey"),bw=Symbol("pino.nestedKey"),fw=Symbol("pino.nestedKeyStr"),xw=Symbol("pino.mixinMergeStrategy"),kw=Symbol("pino.msgPrefix"),hw=Symbol("pino.wildcardFirst"),vw=Symbol.for("pino.serializers"),gw=Symbol.for("pino.formatters"),yw=Symbol.for("pino.hooks"),uw=Symbol.for("pino.metadata");i3.exports={setLevelSym:Bw,getLevelSym:ww,levelValSym:Dw,levelCompSym:Vw,useLevelLabelsSym:_w,mixinSym:zw,lsCacheSym:Nw,chindingsSym:Aw,asJsonSym:Rw,writeSym:Ew,serializersSym:vw,redactFmtSym:jw,timeSym:Ow,timeSliceIndexSym:Zw,streamSym:Lw,stringifySym:Mw,stringifySafeSym:Sw,stringifiersSym:Cw,endSym:Pw,formatOptsSym:Kw,messageKeySym:Iw,errorKeySym:Tw,nestedKeySym:bw,wildcardFirstSym:hw,needsMetadataGsym:uw,useOnlyCustomLevelsSym:Fw,formattersSym:gw,hooksSym:yw,nestedKeyStrSym:fw,mixinMergeStrategySym:xw,msgPrefixSym:kw}});var c8=N((sC,o3)=>{var s3=n3(),{redactFmtSym:mw,wildcardFirstSym:I9}=E$(),d8=/[^.[\]]+|\[([^[\]]*?)\]/g;function dw($,H){let{paths:J,censor:Q,remove:X}=cw($),Y=J.reduce((q,U)=>{d8.lastIndex=0;let B=d8.exec(U),w=d8.exec(U),_=B[1]!==void 0?B[1].replace(/^(?:"|'|`)(.*)(?:"|'|`)$/,"$1"):B[0];if(_==="*")_=I9;if(w===null)return q[_]=null,q;if(q[_]===null)return q;let{index:V}=w,D=`${U.substr(V,U.length-1)}`;if(q[_]=q[_]||[],_!==I9&&q[_].length===0)q[_].push(...q[I9]||[]);if(_===I9)Object.keys(q).forEach(function(A){if(q[A])q[A].push(D)});return q[_].push(D),q},{}),W={[mw]:s3({paths:J,censor:Q,serialize:H,strict:!1,remove:X})},G=(...q)=>{return typeof Q==="function"?H(Q(...q)):H(Q)};return[...Object.keys(Y),...Object.getOwnPropertySymbols(Y)].reduce((q,U)=>{if(Y[U]===null)q[U]=(B)=>G(B,[U]);else{let B=typeof Q==="function"?(w,_)=>{return Q(w,[U,..._])}:Q;q[U]=s3({paths:Y[U],censor:B,serialize:H,strict:!1,remove:X})}return q},W)}function cw($){if(Array.isArray($))return $={paths:$,censor:"[Redacted]"},$;let{paths:H,censor:J="[Redacted]",remove:Q}=$;if(Array.isArray(H)===!1)throw Error("pino – redact must contain an array of strings");if(Q===!0)J=void 0;return{paths:H,censor:J,remove:Q}}o3.exports=dw});var t3=N((oC,a3)=>{var lw=()=>"",pw=()=>`,"time":${Date.now()}`,nw=()=>`,"time":${Math.round(Date.now()/1000)}`,iw=()=>`,"time":"${new Date(Date.now()).toISOString()}"`,sw=1000000n,r3=1000000000n,ow=BigInt(Date.now())*sw,rw=process.hrtime.bigint(),aw=()=>{let $=process.hrtime.bigint()-rw,H=ow+$,J=H/r3,Q=H%r3,X=Number(J*1000n+Q/1000000n),Y=new Date(X),W=Y.getUTCFullYear(),G=(Y.getUTCMonth()+1).toString().padStart(2,"0"),q=Y.getUTCDate().toString().padStart(2,"0"),U=Y.getUTCHours().toString().padStart(2,"0"),B=Y.getUTCMinutes().toString().padStart(2,"0"),w=Y.getUTCSeconds().toString().padStart(2,"0");return`,"time":"${W}-${G}-${q}T${U}:${B}:${w}.${Q.toString().padStart(9,"0")}Z"`};a3.exports={nullTime:lw,epochTime:pw,unixTime:nw,isoTime:iw,isoTimeNano:aw}});var $H=N((rC,e3)=>{function tw($){try{return JSON.stringify($)}catch(H){return'"[Circular]"'}}e3.exports=ew;function ew($,H,J){var Q=J&&J.stringify||tw,X=1;if(typeof $==="object"&&$!==null){var Y=H.length+X;if(Y===1)return $;var W=Array(Y);W[0]=Q($);for(var G=1;G<Y;G++)W[G]=Q(H[G]);return W.join(" ")}if(typeof $!=="string")return $;var q=H.length;if(q===0)return $;var U="",B=1-X,w=-1,_=$&&$.length||0;for(var V=0;V<_;){if($.charCodeAt(V)===37&&V+1<_){switch(w=w>-1?w:0,$.charCodeAt(V+1)){case 100:case 102:if(B>=q)break;if(H[B]==null)break;if(w<V)U+=$.slice(w,V);U+=Number(H[B]),w=V+2,V++;break;case 105:if(B>=q)break;if(H[B]==null)break;if(w<V)U+=$.slice(w,V);U+=Math.floor(Number(H[B])),w=V+2,V++;break;case 79:case 111:case 106:if(B>=q)break;if(H[B]===void 0)break;if(w<V)U+=$.slice(w,V);var D=typeof H[B];if(D==="string"){U+="'"+H[B]+"'",w=V+2,V++;break}if(D==="function"){U+=H[B].name||"<anonymous>",w=V+2,V++;break}U+=Q(H[B]),w=V+2,V++;break;case 115:if(B>=q)break;if(w<V)U+=$.slice(w,V);U+=String(H[B]),w=V+2,V++;break;case 37:if(w<V)U+=$.slice(w,V);U+="%",w=V+2,V++,B--;break}++B}++V}if(w===-1)return $;else if(w<_)U+=$.slice(w);return U}});var p8=N((aC,l8)=>{if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let H=function(J){if((J>0&&J<1/0)===!1){if(typeof J!=="number"&&typeof J!=="bigint")throw TypeError("sleep: ms must be a number");throw RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity")}Atomics.wait($,0,0,Number(J))},$=new Int32Array(new SharedArrayBuffer(4));l8.exports=H}else{let $=function(H){if((H>0&&H<1/0)===!1){if(typeof H!=="number"&&typeof H!=="bigint")throw TypeError("sleep: ms must be a number");throw RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity")}let Q=Date.now()+Number(H);while(Q>Date.now());};l8.exports=$}});var s8=N((tC,YH)=>{var N1=require("fs"),$D=require("events"),HD=require("util").inherits,HH=require("path"),i8=p8(),JD=require("assert"),T9=Buffer.allocUnsafe(0),[QD,XD]=(process.versions.node||"0.0").split(".").map(Number),YD=QD>=22&&XD>=7;function JH($,H){H._opening=!0,H._writing=!0,H._asyncDrainScheduled=!1;function J(Y,W){if(Y){if(H._reopening=!1,H._writing=!1,H._opening=!1,H.sync)process.nextTick(()=>{if(H.listenerCount("error")>0)H.emit("error",Y)});else H.emit("error",Y);return}let G=H._reopening;if(H.fd=W,H.file=$,H._reopening=!1,H._opening=!1,H._writing=!1,H.sync)process.nextTick(()=>H.emit("ready"));else H.emit("ready");if(H.destroyed)return;if(!H._writing&&H._len>H.minLength||H._flushPending)H._actualWrite();else if(G)process.nextTick(()=>H.emit("drain"))}let Q=H.append?"a":"w",X=H.mode;if(H.sync)try{if(H.mkdir)N1.mkdirSync(HH.dirname($),{recursive:!0});let Y=N1.openSync($,Q,X);J(null,Y)}catch(Y){throw J(Y),Y}else if(H.mkdir)N1.mkdir(HH.dirname($),{recursive:!0},(Y)=>{if(Y)return J(Y);N1.open($,Q,X,J)});else N1.open($,Q,X,J)}function p1($){if(!(this instanceof p1))return new p1($);let{fd:H,dest:J,minLength:Q,maxLength:X,maxWrite:Y,periodicFlush:W,sync:G,append:q=!0,mkdir:U,retryEAGAIN:B,fsync:w,contentMode:_,mode:V}=$||{};H=H||J,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(Q||0,16387),this.file=null,this.destroyed=!1,this.minLength=Q||0,this.maxLength=X||0,this.maxWrite=Y||16384,this._periodicFlush=W||0,this._periodicFlushTimer=void 0,this.sync=G||!1,this.writable=!0,this._fsync=w||!1,this.append=q||!1,this.mode=V,this.retryEAGAIN=B||(()=>!0),this.mkdir=U||!1;let D,A;if(_==="buffer")this._writingBuf=T9,this.write=qD,this.flush=BD,this.flushSync=DD,this._actualWrite=_D,D=()=>N1.writeSync(this.fd,this._writingBuf),A=()=>N1.write(this.fd,this._writingBuf,this.release);else if(_===void 0||_==="utf8")this._writingBuf="",this.write=GD,this.flush=UD,this.flushSync=wD,this._actualWrite=VD,D=()=>N1.writeSync(this.fd,this._writingBuf,"utf8"),A=()=>N1.write(this.fd,this._writingBuf,"utf8",this.release);else throw Error(`SonicBoom supports "utf8" and "buffer", but passed ${_}`);if(typeof H==="number")this.fd=H,process.nextTick(()=>this.emit("ready"));else if(typeof H==="string")JH(H,this);else throw Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);if(this.release=(E,Z)=>{if(E){if((E.code==="EAGAIN"||E.code==="EBUSY")&&this.retryEAGAIN(E,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{i8(100),this.release(void 0,0)}catch(b){this.release(b)}else setTimeout(A,100);else this._writing=!1,this.emit("error",E);return}this.emit("write",Z);let M=n8(this._writingBuf,this._len,Z);if(this._len=M.len,this._writingBuf=M.writingBuf,this._writingBuf.length){if(!this.sync){A();return}try{do{let b=D(),v=n8(this._writingBuf,this._len,b);this._len=v.len,this._writingBuf=v.writingBuf}while(this._writingBuf.length)}catch(b){this.release(b);return}}if(this._fsync)N1.fsyncSync(this.fd);let L=this._len;if(this._reopening)this._writing=!1,this._reopening=!1,this.reopen();else if(L>this.minLength)this._actualWrite();else if(this._ending)if(L>0)this._actualWrite();else this._writing=!1,b9(this);else if(this._writing=!1,this.sync){if(!this._asyncDrainScheduled)this._asyncDrainScheduled=!0,process.nextTick(WD,this)}else this.emit("drain")},this.on("newListener",function(E){if(E==="drain")this._asyncDrainScheduled=!1}),this._periodicFlush!==0)this._periodicFlushTimer=setInterval(()=>this.flush(null),this._periodicFlush),this._periodicFlushTimer.unref()}function n8($,H,J){if(typeof $==="string"&&Buffer.byteLength($)!==J)J=Buffer.from($).subarray(0,J).toString().length;return H=Math.max(H-J,0),$=$.slice(J),{writingBuf:$,len:H}}function WD($){if(!($.listenerCount("drain")>0))return;$._asyncDrainScheduled=!1,$.emit("drain")}HD(p1,$D);function QH($,H){if($.length===0)return T9;if($.length===1)return $[0];return Buffer.concat($,H)}function GD($){if(this.destroyed)throw Error("SonicBoom destroyed");let H=this._len+$.length,J=this._bufs;if(this.maxLength&&H>this.maxLength)return this.emit("drop",$),this._len<this._hwm;if(J.length===0||J[J.length-1].length+$.length>this.maxWrite)J.push(""+$);else J[J.length-1]+=$;if(this._len=H,!this._writing&&this._len>=this.minLength)this._actualWrite();return this._len<this._hwm}function qD($){if(this.destroyed)throw Error("SonicBoom destroyed");let H=this._len+$.length,J=this._bufs,Q=this._lens;if(this.maxLength&&H>this.maxLength)return this.emit("drop",$),this._len<this._hwm;if(J.length===0||Q[Q.length-1]+$.length>this.maxWrite)J.push([$]),Q.push($.length);else J[J.length-1].push($),Q[Q.length-1]+=$.length;if(this._len=H,!this._writing&&this._len>=this.minLength)this._actualWrite();return this._len<this._hwm}function XH($){this._flushPending=!0;let H=()=>{if(!this._fsync)try{N1.fsync(this.fd,(Q)=>{this._flushPending=!1,$(Q)})}catch(Q){$(Q)}else this._flushPending=!1,$();this.off("error",J)},J=(Q)=>{this._flushPending=!1,$(Q),this.off("drain",H)};this.once("drain",H),this.once("error",J)}function UD($){if($!=null&&typeof $!=="function")throw Error("flush cb must be a function");if(this.destroyed){let H=Error("SonicBoom destroyed");if($){$(H);return}throw H}if(this.minLength<=0){$?.();return}if($)XH.call(this,$);if(this._writing)return;if(this._bufs.length===0)this._bufs.push("");this._actualWrite()}function BD($){if($!=null&&typeof $!=="function")throw Error("flush cb must be a function");if(this.destroyed){let H=Error("SonicBoom destroyed");if($){$(H);return}throw H}if(this.minLength<=0){$?.();return}if($)XH.call(this,$);if(this._writing)return;if(this._bufs.length===0)this._bufs.push([]),this._lens.push(0);this._actualWrite()}p1.prototype.reopen=function($){if(this.destroyed)throw Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen($)});return}if(this._ending)return;if(!this.file)throw Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if($)this.file=$;if(this._reopening=!0,this._writing)return;let H=this.fd;this.once("ready",()=>{if(H!==this.fd)N1.close(H,(J)=>{if(J)return this.emit("error",J)})}),JH(this.file,this)};p1.prototype.end=function(){if(this.destroyed)throw Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}if(this._ending)return;if(this._ending=!0,this._writing)return;if(this._len>0&&this.fd>=0)this._actualWrite();else b9(this)};function wD(){if(this.destroyed)throw Error("SonicBoom destroyed");if(this.fd<0)throw Error("sonic boom is not ready yet");if(!this._writing&&this._writingBuf.length>0)this._bufs.unshift(this._writingBuf),this._writingBuf="";let $="";while(this._bufs.length||$){if($.length<=0)$=this._bufs[0];try{let H=N1.writeSync(this.fd,$,"utf8"),J=n8($,this._len,H);if($=J.writingBuf,this._len=J.len,$.length<=0)this._bufs.shift()}catch(H){if((H.code==="EAGAIN"||H.code==="EBUSY")&&!this.retryEAGAIN(H,$.length,this._len-$.length))throw H;i8(100)}}try{N1.fsyncSync(this.fd)}catch{}}function DD(){if(this.destroyed)throw Error("SonicBoom destroyed");if(this.fd<0)throw Error("sonic boom is not ready yet");if(!this._writing&&this._writingBuf.length>0)this._bufs.unshift([this._writingBuf]),this._writingBuf=T9;let $=T9;while(this._bufs.length||$.length){if($.length<=0)$=QH(this._bufs[0],this._lens[0]);try{let H=N1.writeSync(this.fd,$);if($=$.subarray(H),this._len=Math.max(this._len-H,0),$.length<=0)this._bufs.shift(),this._lens.shift()}catch(H){if((H.code==="EAGAIN"||H.code==="EBUSY")&&!this.retryEAGAIN(H,$.length,this._len-$.length))throw H;i8(100)}}}p1.prototype.destroy=function(){if(this.destroyed)return;b9(this)};function VD(){let $=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let H=N1.writeSync(this.fd,this._writingBuf,"utf8");$(null,H)}catch(H){$(H)}else N1.write(this.fd,this._writingBuf,"utf8",$)}function _D(){let $=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:QH(this._bufs.shift(),this._lens.shift()),this.sync)try{let H=N1.writeSync(this.fd,this._writingBuf);$(null,H)}catch(H){$(H)}else{if(YD)this._writingBuf=Buffer.from(this._writingBuf);N1.write(this.fd,this._writingBuf,$)}}function b9($){if($.fd===-1){$.once("ready",b9.bind(null,$));return}if($._periodicFlushTimer!==void 0)clearInterval($._periodicFlushTimer);$.destroyed=!0,$._bufs=[],$._lens=[],JD(typeof $.fd==="number",`sonic.fd must be a number, got ${typeof $.fd}`);try{N1.fsync($.fd,H)}catch{}function H(){if($.fd!==1&&$.fd!==2)N1.close($.fd,J);else J()}function J(Q){if(Q){$.emit("error",Q);return}if($._ending&&!$._writing)$.emit("finish");$.emit("close")}}p1.SonicBoom=p1;p1.default=p1;YH.exports=p1});var f9=N((eC,BH)=>{var n1={exit:[],beforeExit:[]},WH={exit:ND,beforeExit:AD},j$;function FD(){if(j$===void 0)j$=new FinalizationRegistry(RD)}function zD($){if(n1[$].length>0)return;process.on($,WH[$])}function GH($){if(n1[$].length>0)return;if(process.removeListener($,WH[$]),n1.exit.length===0&&n1.beforeExit.length===0)j$=void 0}function ND(){qH("exit")}function AD(){qH("beforeExit")}function qH($){for(let H of n1[$]){let J=H.deref(),Q=H.fn;if(J!==void 0)Q(J,$)}n1[$]=[]}function RD($){for(let H of["exit","beforeExit"]){let J=n1[H].indexOf($);n1[H].splice(J,J+1),GH(H)}}function UH($,H,J){if(H===void 0)throw Error("the object can't be undefined");zD($);let Q=new WeakRef(H);Q.fn=J,FD(),j$.register(H,Q),n1[$].push(Q)}function ED($,H){UH("exit",$,H)}function jD($,H){UH("beforeExit",$,H)}function OD($){if(j$===void 0)return;j$.unregister($);for(let H of["exit","beforeExit"])n1[H]=n1[H].filter((J)=>{let Q=J.deref();return Q&&Q!==$}),GH(H)}BH.exports={register:ED,registerBeforeExit:jD,unregister:OD}});var wH=N(($P,ZD)=>{ZD.exports={name:"thread-stream",version:"3.1.0",description:"A streaming way to send data to a Node.js Worker Thread",main:"index.js",types:"index.d.ts",dependencies:{"real-require":"^0.2.0"},devDependencies:{"@types/node":"^20.1.0","@types/tap":"^15.0.0","@yao-pkg/pkg":"^5.11.5",desm:"^1.3.0",fastbench:"^1.0.1",husky:"^9.0.6","pino-elasticsearch":"^8.0.0","sonic-boom":"^4.0.1",standard:"^17.0.0",tap:"^16.2.0","ts-node":"^10.8.0",typescript:"^5.3.2","why-is-node-running":"^2.2.2"},scripts:{build:"tsc --noEmit",test:'standard && npm run build && npm run transpile && tap "test/**/*.test.*js" && tap --ts test/*.test.*ts',"test:ci":"standard && npm run transpile && npm run test:ci:js && npm run test:ci:ts","test:ci:js":'tap --no-check-coverage --timeout=120 --coverage-report=lcovonly "test/**/*.test.*js"',"test:ci:ts":'tap --ts --no-check-coverage --coverage-report=lcovonly "test/**/*.test.*ts"',"test:yarn":'npm run transpile && tap "test/**/*.test.js" --no-check-coverage',transpile:"sh ./test/ts/transpile.sh",prepare:"husky install"},standard:{ignore:["test/ts/**/*","test/syntax-error.mjs"]},repository:{type:"git",url:"git+https://github.com/mcollina/thread-stream.git"},keywords:["worker","thread","threads","stream"],author:"Matteo Collina <hello@matteocollina.com>",license:"MIT",bugs:{url:"https://github.com/mcollina/thread-stream/issues"},homepage:"https://github.com/mcollina/thread-stream#readme"}});var VH=N((HP,DH)=>{function LD($,H,J,Q,X){let Y=Date.now()+Q,W=Atomics.load($,H);if(W===J){X(null,"ok");return}let G=W,q=(U)=>{if(Date.now()>Y)X(null,"timed-out");else setTimeout(()=>{if(G=W,W=Atomics.load($,H),W===G)q(U>=1000?1000:U*2);else if(W===J)X(null,"ok");else X(null,"not-equal")},U)};q(1)}function MD($,H,J,Q,X){let Y=Date.now()+Q,W=Atomics.load($,H);if(W!==J){X(null,"ok");return}let G=(q)=>{if(Date.now()>Y)X(null,"timed-out");else setTimeout(()=>{if(W=Atomics.load($,H),W!==J)X(null,"ok");else G(q>=1000?1000:q*2)},q)};G(1)}DH.exports={wait:LD,waitDiff:MD}});var FH=N((JP,_H)=>{_H.exports={WRITE_INDEX:4,READ_INDEX:8}});var jH=N((QP,EH)=>{var __dirname="C:\\Users\\mejia\\Desktop\\fastTS\\node_modules\\thread-stream",{version:SD}=wH(),{EventEmitter:CD}=require("events"),{Worker:PD}=require("worker_threads"),{join:KD}=require("path"),{pathToFileURL:ID}=require("url"),{wait:TD}=VH(),{WRITE_INDEX:b1,READ_INDEX:W0}=FH(),bD=require("buffer"),fD=require("assert"),O=Symbol("kImpl"),xD=bD.constants.MAX_STRING_LENGTH;class k9{constructor($){this._value=$}deref(){return this._value}}class r8{register(){}unregister(){}}var kD=process.env.NODE_V8_COVERAGE?r8:global.FinalizationRegistry||r8,hD=process.env.NODE_V8_COVERAGE?k9:global.WeakRef||k9,zH=new kD(($)=>{if($.exited)return;$.terminate()});function vD($,H){let{filename:J,workerData:Q}=H,Y=("__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{})["thread-stream-worker"]||KD(__dirname,"lib","worker.js"),W=new PD(Y,{...H.workerOpts,trackUnmanagedFds:!1,workerData:{filename:J.indexOf("file://")===0?J:ID(J).href,dataBuf:$[O].dataBuf,stateBuf:$[O].stateBuf,workerData:{$context:{threadStreamVersion:SD},...Q}}});return W.stream=new k9($),W.on("message",gD),W.on("exit",AH),zH.register($,W),W}function NH($){if(fD(!$[O].sync),$[O].needDrain)$[O].needDrain=!1,$.emit("drain")}function x9($){let H=Atomics.load($[O].state,b1),J=$[O].data.length-H;if(J>0){if($[O].buf.length===0){if($[O].flushing=!1,$[O].ending)e8($);else if($[O].needDrain)process.nextTick(NH,$);return}let Q=$[O].buf.slice(0,J),X=Buffer.byteLength(Q);if(X<=J)$[O].buf=$[O].buf.slice(J),h9($,Q,x9.bind(null,$));else $.flush(()=>{if($.destroyed)return;Atomics.store($[O].state,W0,0),Atomics.store($[O].state,b1,0);while(X>$[O].data.length)J=J/2,Q=$[O].buf.slice(0,J),X=Buffer.byteLength(Q);$[O].buf=$[O].buf.slice(J),h9($,Q,x9.bind(null,$))})}else if(J===0){if(H===0&&$[O].buf.length===0)return;$.flush(()=>{Atomics.store($[O].state,W0,0),Atomics.store($[O].state,b1,0),x9($)})}else G0($,Error("overwritten"))}function gD($){let H=this.stream.deref();if(H===void 0){this.exited=!0,this.terminate();return}switch($.code){case"READY":this.stream=new hD(H),H.flush(()=>{H[O].ready=!0,H.emit("ready")});break;case"ERROR":G0(H,$.err);break;case"EVENT":if(Array.isArray($.args))H.emit($.name,...$.args);else H.emit($.name,$.args);break;case"WARNING":process.emitWarning($.err);break;default:G0(H,Error("this should not happen: "+$.code))}}function AH($){let H=this.stream.deref();if(H===void 0)return;zH.unregister(H),H.worker.exited=!0,H.worker.off("exit",AH),G0(H,$!==0?Error("the worker thread exited"):null)}class RH extends CD{constructor($={}){super();if($.bufferSize<4)throw Error("bufferSize must at least fit a 4-byte utf-8 char");this[O]={},this[O].stateBuf=new SharedArrayBuffer(128),this[O].state=new Int32Array(this[O].stateBuf),this[O].dataBuf=new SharedArrayBuffer($.bufferSize||4194304),this[O].data=Buffer.from(this[O].dataBuf),this[O].sync=$.sync||!1,this[O].ending=!1,this[O].ended=!1,this[O].needDrain=!1,this[O].destroyed=!1,this[O].flushing=!1,this[O].ready=!1,this[O].finished=!1,this[O].errored=null,this[O].closed=!1,this[O].buf="",this.worker=vD(this,$),this.on("message",(H,J)=>{this.worker.postMessage(H,J)})}write($){if(this[O].destroyed)return a8(this,Error("the worker has exited")),!1;if(this[O].ending)return a8(this,Error("the worker is ending")),!1;if(this[O].flushing&&this[O].buf.length+$.length>=xD)try{o8(this),this[O].flushing=!0}catch(H){return G0(this,H),!1}if(this[O].buf+=$,this[O].sync)try{return o8(this),!0}catch(H){return G0(this,H),!1}if(!this[O].flushing)this[O].flushing=!0,setImmediate(x9,this);return this[O].needDrain=this[O].data.length-this[O].buf.length-Atomics.load(this[O].state,b1)<=0,!this[O].needDrain}end(){if(this[O].destroyed)return;this[O].ending=!0,e8(this)}flush($){if(this[O].destroyed){if(typeof $==="function")process.nextTick($,Error("the worker has exited"));return}let H=Atomics.load(this[O].state,b1);TD(this[O].state,W0,H,1/0,(J,Q)=>{if(J){G0(this,J),process.nextTick($,J);return}if(Q==="not-equal"){this.flush($);return}process.nextTick($)})}flushSync(){if(this[O].destroyed)return;o8(this),t8(this)}unref(){this.worker.unref()}ref(){this.worker.ref()}get ready(){return this[O].ready}get destroyed(){return this[O].destroyed}get closed(){return this[O].closed}get writable(){return!this[O].destroyed&&!this[O].ending}get writableEnded(){return this[O].ending}get writableFinished(){return this[O].finished}get writableNeedDrain(){return this[O].needDrain}get writableObjectMode(){return!1}get writableErrored(){return this[O].errored}}function a8($,H){setImmediate(()=>{$.emit("error",H)})}function G0($,H){if($[O].destroyed)return;if($[O].destroyed=!0,H)$[O].errored=H,a8($,H);if(!$.worker.exited)$.worker.terminate().catch(()=>{}).then(()=>{$[O].closed=!0,$.emit("close")});else setImmediate(()=>{$[O].closed=!0,$.emit("close")})}function h9($,H,J){let Q=Atomics.load($[O].state,b1),X=Buffer.byteLength(H);return $[O].data.write(H,Q),Atomics.store($[O].state,b1,Q+X),Atomics.notify($[O].state,b1),J(),!0}function e8($){if($[O].ended||!$[O].ending||$[O].flushing)return;$[O].ended=!0;try{$.flushSync();let H=Atomics.load($[O].state,W0);Atomics.store($[O].state,b1,-1),Atomics.notify($[O].state,b1);let J=0;while(H!==-1){if(Atomics.wait($[O].state,W0,H,1000),H=Atomics.load($[O].state,W0),H===-2){G0($,Error("end() failed"));return}if(++J===10){G0($,Error("end() took too long (10s)"));return}}process.nextTick(()=>{$[O].finished=!0,$.emit("finish")})}catch(H){G0($,H)}}function o8($){let H=()=>{if($[O].ending)e8($);else if($[O].needDrain)process.nextTick(NH,$)};$[O].flushing=!1;while($[O].buf.length!==0){let J=Atomics.load($[O].state,b1),Q=$[O].data.length-J;if(Q===0){t8($),Atomics.store($[O].state,W0,0),Atomics.store($[O].state,b1,0);continue}else if(Q<0)throw Error("overwritten");let X=$[O].buf.slice(0,Q),Y=Buffer.byteLength(X);if(Y<=Q)$[O].buf=$[O].buf.slice(Q),h9($,X,H);else{t8($),Atomics.store($[O].state,W0,0),Atomics.store($[O].state,b1,0);while(Y>$[O].buf.length)Q=Q/2,X=$[O].buf.slice(0,Q),Y=Buffer.byteLength(X);$[O].buf=$[O].buf.slice(Q),h9($,X,H)}}}function t8($){if($[O].flushing)throw Error("unable to flush while flushing");let H=Atomics.load($[O].state,b1),J=0;while(!0){let Q=Atomics.load($[O].state,W0);if(Q===-2)throw Error("_flushSync failed");if(Q!==H)Atomics.wait($[O].state,W0,Q,1000);else break;if(++J===10)throw Error("_flushSync took too long (10s)")}}EH.exports=RH});var J6=N((XP,OH)=>{var __dirname="C:\\Users\\mejia\\Desktop\\fastTS\\node_modules\\pino\\lib",{createRequire:yD}=require("module"),uD=u8(),{join:$6,isAbsolute:mD,sep:dD}=require("node:path"),cD=p8(),H6=f9(),lD=jH();function pD($){H6.register($,iD),H6.registerBeforeExit($,sD),$.on("close",function(){H6.unregister($)})}function nD($,H,J,Q){let X=new lD({filename:$,workerData:H,workerOpts:J,sync:Q});X.on("ready",Y),X.on("close",function(){process.removeListener("exit",W)}),process.on("exit",W);function Y(){if(process.removeListener("exit",W),X.unref(),J.autoEnd!==!1)pD(X)}function W(){if(X.closed)return;X.flushSync(),cD(100),X.end()}return X}function iD($){$.ref(),$.flushSync(),$.end(),$.once("close",function(){$.unref()})}function sD($){$.flushSync()}function oD($){let{pipeline:H,targets:J,levels:Q,dedupe:X,worker:Y={},caller:W=uD(),sync:G=!1}=$,q={...$.options},U=typeof W==="string"?[W]:W,B="__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{},w=$.target;if(w&&J)throw Error("only one of target or targets can be specified");if(J)w=B["pino-worker"]||$6(__dirname,"worker.js"),q.targets=J.filter((V)=>V.target).map((V)=>{return{...V,target:_(V.target)}}),q.pipelines=J.filter((V)=>V.pipeline).map((V)=>{return V.pipeline.map((D)=>{return{...D,level:V.level,target:_(D.target)}})});else if(H)w=B["pino-worker"]||$6(__dirname,"worker.js"),q.pipelines=[H.map((V)=>{return{...V,target:_(V.target)}})];if(Q)q.levels=Q;if(X)q.dedupe=X;return q.pinoWillSendConfig=!0,nD(_(w),q,Y,G);function _(V){if(V=B[V]||V,mD(V)||V.indexOf("file://")===0)return V;if(V==="pino/file")return $6(__dirname,"..","file.js");let D;for(let A of U)try{let E=A==="node:repl"?process.cwd()+dD:A;D=yD(E).resolve(V);break}catch(E){continue}if(!D)throw Error(`unable to determine transport target for "${V}"`);return D}}OH.exports=oD});var y9=N((YP,kH)=>{var rD=require("node:diagnostics_channel"),ZH=$H(),{mapHttpRequest:aD,mapHttpResponse:tD}=y8(),X6=s8(),LH=f9(),{lsCacheSym:eD,chindingsSym:KH,writeSym:MH,serializersSym:IH,formatOptsSym:SH,endSym:$V,stringifiersSym:TH,stringifySym:bH,stringifySafeSym:Y6,wildcardFirstSym:fH,nestedKeySym:HV,formattersSym:xH,messageKeySym:JV,errorKeySym:QV,nestedKeyStrSym:XV,msgPrefixSym:v9}=E$(),{isMainThread:YV}=require("worker_threads"),WV=J6(),CH=rD.tracingChannel("pino_asJson");function O$(){}function GV($,H){if(!H)return J;return function(...X){H.call(this,X,J,$)};function J(Q,...X){if(typeof Q==="object"){let Y=Q;if(Q!==null){if(Q.method&&Q.headers&&Q.socket)Q=aD(Q);else if(typeof Q.setHeader==="function")Q=tD(Q)}let W;if(Y===null&&X.length===0)W=[null];else Y=X.shift(),W=X;if(typeof this[v9]==="string"&&Y!==void 0&&Y!==null)Y=this[v9]+Y;this[MH](Q,ZH(Y,W,this[SH]),$)}else{let Y=Q===void 0?X.shift():Q;if(typeof this[v9]==="string"&&Y!==void 0&&Y!==null)Y=this[v9]+Y;this[MH](null,ZH(Y,X,this[SH]),$)}}}function Q6($){let H="",J=0,Q=!1,X=255,Y=$.length;if(Y>100)return JSON.stringify($);for(var W=0;W<Y&&X>=32;W++)if(X=$.charCodeAt(W),X===34||X===92)H+=$.slice(J,W)+"\\",J=W,Q=!0;if(!Q)H=$;else H+=$.slice(J);return X<32?JSON.stringify($):'"'+H+'"'}function qV($,H,J,Q){if(CH.hasSubscribers===!1)return PH.call(this,$,H,J,Q);let X={instance:this,arguments};return CH.traceSync(PH,X,this,$,H,J,Q)}function PH($,H,J,Q){let X=this[bH],Y=this[Y6],W=this[TH],G=this[$V],q=this[KH],U=this[IH],B=this[xH],w=this[JV],_=this[QV],V=this[eD][J]+Q;V=V+q;let D;if(B.log)$=B.log($);let A=W[fH],E="";for(let M in $)if(D=$[M],Object.prototype.hasOwnProperty.call($,M)&&D!==void 0){if(U[M])D=U[M](D);else if(M===_&&U.err)D=U.err(D);let L=W[M]||A;switch(typeof D){case"undefined":case"function":continue;case"number":if(Number.isFinite(D)===!1)D=null;case"boolean":if(L)D=L(D);break;case"string":D=(L||Q6)(D);break;default:D=(L||X)(D,Y)}if(D===void 0)continue;let b=Q6(M);E+=","+b+":"+D}let Z="";if(H!==void 0){D=U[w]?U[w](H):H;let M=W[w]||A;switch(typeof D){case"function":break;case"number":if(Number.isFinite(D)===!1)D=null;case"boolean":if(M)D=M(D);Z=',"'+w+'":'+D;break;case"string":D=(M||Q6)(D),Z=',"'+w+'":'+D;break;default:D=(M||X)(D,Y),Z=',"'+w+'":'+D}}if(this[HV]&&E)return V+this[XV]+E.slice(1)+"}"+Z+G;else return V+E+Z+G}function UV($,H){let J,Q=$[KH],X=$[bH],Y=$[Y6],W=$[TH],G=W[fH],q=$[IH],U=$[xH].bindings;H=U(H);for(let B in H)if(J=H[B],((B.length<5||B!=="level"&&B!=="serializers"&&B!=="formatters"&&B!=="customLevels")&&H.hasOwnProperty(B)&&J!==void 0)===!0){if(J=q[B]?q[B](J):J,J=(W[B]||G||X)(J,Y),J===void 0)continue;Q+=',"'+B+'":'+J}return Q}function BV($){return $.write!==$.constructor.prototype.write}function g9($){let H=new X6($);if(H.on("error",J),!$.sync&&YV)LH.register(H,wV),H.on("close",function(){LH.unregister(H)});return H;function J(Q){if(Q.code==="EPIPE"){H.write=O$,H.end=O$,H.flushSync=O$,H.destroy=O$;return}H.removeListener("error",J),H.emit("error",Q)}}function wV($,H){if($.destroyed)return;if(H==="beforeExit")$.flush(),$.on("drain",function(){$.end()});else $.flushSync()}function DV($){return function(J,Q,X={},Y){if(typeof X==="string")Y=g9({dest:X}),X={};else if(typeof Y==="string"){if(X&&X.transport)throw Error("only one of option.transport or stream can be specified");Y=g9({dest:Y})}else if(X instanceof X6||X.writable||X._writableState)Y=X,X={};else if(X.transport){if(X.transport instanceof X6||X.transport.writable||X.transport._writableState)throw Error("option.transport do not allow stream, please pass to option directly. e.g. pino(transport)");if(X.transport.targets&&X.transport.targets.length&&X.formatters&&typeof X.formatters.level==="function")throw Error("option.transport.targets do not allow custom level formatters");let q;if(X.customLevels)q=X.useOnlyCustomLevels?X.customLevels:Object.assign({},X.levels,X.customLevels);Y=WV({caller:Q,...X.transport,levels:q})}if(X=Object.assign({},$,X),X.serializers=Object.assign({},$.serializers,X.serializers),X.formatters=Object.assign({},$.formatters,X.formatters),X.prettyPrint)throw Error("prettyPrint option is no longer supported, see the pino-pretty package (https://github.com/pinojs/pino-pretty)");let{enabled:W,onChild:G}=X;if(W===!1)X.level="silent";if(!G)X.onChild=O$;if(!Y)if(!BV(process.stdout))Y=g9({fd:process.stdout.fd||1});else Y=process.stdout;return{opts:X,stream:Y}}}function VV($,H){try{return JSON.stringify($)}catch(J){try{return(H||this[Y6])($)}catch(Q){return'"[unable to serialize, circular reference is too complex to analyze]"'}}}function _V($,H,J){return{level:$,bindings:H,log:J}}function FV($){let H=Number($);if(typeof $==="string"&&Number.isFinite(H))return H;if($===void 0)return 1;return $}kH.exports={noop:O$,buildSafeSonicBoom:g9,asChindings:UV,asJson:qV,genLog:GV,createArgsNormalizer:DV,stringify:VV,buildFormatters:_V,normalizeDestFileDescriptor:FV}});var u9=N((WP,hH)=>{var zV={trace:10,debug:20,info:30,warn:40,error:50,fatal:60},NV={ASC:"ASC",DESC:"DESC"};hH.exports={DEFAULT_LEVELS:zV,SORTING_ORDER:NV}});var q6=N((GP,uH)=>{var{lsCacheSym:AV,levelValSym:W6,useOnlyCustomLevelsSym:RV,streamSym:EV,formattersSym:jV,hooksSym:OV,levelCompSym:vH}=E$(),{noop:ZV,genLog:c0}=y9(),{DEFAULT_LEVELS:q0,SORTING_ORDER:gH}=u9(),yH={fatal:($)=>{let H=c0(q0.fatal,$);return function(...J){let Q=this[EV];if(H.call(this,...J),typeof Q.flushSync==="function")try{Q.flushSync()}catch(X){}}},error:($)=>c0(q0.error,$),warn:($)=>c0(q0.warn,$),info:($)=>c0(q0.info,$),debug:($)=>c0(q0.debug,$),trace:($)=>c0(q0.trace,$)},G6=Object.keys(q0).reduce(($,H)=>{return $[q0[H]]=H,$},{}),LV=Object.keys(G6).reduce(($,H)=>{return $[H]='{"level":'+Number(H),$},{});function MV($){let H=$[jV].level,{labels:J}=$.levels,Q={};for(let X in J){let Y=H(J[X],Number(X));Q[X]=JSON.stringify(Y).slice(0,-1)}return $[AV]=Q,$}function SV($,H){if(H)return!1;switch($){case"fatal":case"error":case"warn":case"info":case"debug":case"trace":return!0;default:return!1}}function CV($){let{labels:H,values:J}=this.levels;if(typeof $==="number"){if(H[$]===void 0)throw Error("unknown level value"+$);$=H[$]}if(J[$]===void 0)throw Error("unknown level "+$);let Q=this[W6],X=this[W6]=J[$],Y=this[RV],W=this[vH],G=this[OV].logMethod;for(let q in J){if(W(J[q],X)===!1){this[q]=ZV;continue}this[q]=SV(q,Y)?yH[q](G):c0(J[q],G)}this.emit("level-change",$,X,H[Q],Q,this)}function PV($){let{levels:H,levelVal:J}=this;return H&&H.labels?H.labels[J]:""}function KV($){let{values:H}=this.levels,J=H[$];return J!==void 0&&this[vH](J,this[W6])}function IV($,H,J){if($===gH.DESC)return H<=J;return H>=J}function TV($){if(typeof $==="string")return IV.bind(null,$);return $}function bV($=null,H=!1){let J=$?Object.keys($).reduce((Y,W)=>{return Y[$[W]]=W,Y},{}):null,Q=Object.assign(Object.create(Object.prototype,{Infinity:{value:"silent"}}),H?null:G6,J),X=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),H?null:q0,$);return{labels:Q,values:X}}function fV($,H,J){if(typeof $==="number"){if(![].concat(Object.keys(H||{}).map((Y)=>H[Y]),J?[]:Object.keys(G6).map((Y)=>+Y),1/0).includes($))throw Error(`default level:${$} must be included in custom levels`);return}let Q=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),J?null:q0,H);if(!($ in Q))throw Error(`default level:${$} must be included in custom levels`)}function xV($,H){let{labels:J,values:Q}=$;for(let X in H){if(X in Q)throw Error("levels cannot be overridden");if(H[X]in J)throw Error("pre-existing level values cannot be used for new levels")}}function kV($){if(typeof $==="function")return;if(typeof $==="string"&&Object.values(gH).includes($))return;throw Error('Levels comparison should be one of "ASC", "DESC" or "function" type')}uH.exports={initialLsCache:LV,genLsCache:MV,levelMethods:yH,getLevel:PV,setLevel:CV,isLevelEnabled:KV,mappings:bV,assertNoLevelCollisions:xV,assertDefaultLevelFound:fV,genLevelComparison:TV,assertLevelComparison:kV}});var U6=N((qP,mH)=>{mH.exports={version:"10.1.0"}});var oH=N((UP,sH)=>{var{EventEmitter:hV}=require("node:events"),{lsCacheSym:vV,levelValSym:gV,setLevelSym:w6,getLevelSym:dH,chindingsSym:d9,mixinSym:yV,asJsonSym:lH,writeSym:uV,mixinMergeStrategySym:mV,timeSym:dV,timeSliceIndexSym:cV,streamSym:pH,serializersSym:l0,formattersSym:Z4,errorKeySym:lV,messageKeySym:pV,useOnlyCustomLevelsSym:nV,needsMetadataGsym:iV,redactFmtSym:sV,stringifySym:oV,formatOptsSym:rV,stringifiersSym:aV,msgPrefixSym:D6,hooksSym:tV}=E$(),{getLevel:eV,setLevel:$_,isLevelEnabled:H_,mappings:J_,initialLsCache:Q_,genLsCache:X_,assertNoLevelCollisions:Y_}=q6(),{asChindings:V6,asJson:W_,buildFormatters:B6,stringify:cH,noop:nH}=y9(),{version:G_}=U6(),q_=c8(),U_=class{},iH={constructor:U_,child:B_,bindings:w_,setBindings:D_,flush:F_,isLevelEnabled:H_,version:G_,get level(){return this[dH]()},set level($){this[w6]($)},get levelVal(){return this[gV]},set levelVal($){throw Error("levelVal is read-only")},get msgPrefix(){return this[D6]},get[Symbol.toStringTag](){return"Pino"},[vV]:Q_,[uV]:__,[lH]:W_,[dH]:eV,[w6]:$_};Object.setPrototypeOf(iH,hV.prototype);sH.exports=function(){return Object.create(iH)};var m9=($)=>$;function B_($,H){if(!$)throw Error("missing bindings for child Pino");let J=this[l0],Q=this[Z4],X=Object.create(this);if(H==null){if(X[Z4].bindings!==m9)X[Z4]=B6(Q.level,m9,Q.log);if(X[d9]=V6(X,$),this.onChild!==nH)this.onChild(X);return X}if(H.hasOwnProperty("serializers")===!0){X[l0]=Object.create(null);for(let U in J)X[l0][U]=J[U];let G=Object.getOwnPropertySymbols(J);for(var Y=0;Y<G.length;Y++){let U=G[Y];X[l0][U]=J[U]}for(let U in H.serializers)X[l0][U]=H.serializers[U];let q=Object.getOwnPropertySymbols(H.serializers);for(var W=0;W<q.length;W++){let U=q[W];X[l0][U]=H.serializers[U]}}else X[l0]=J;if(H.hasOwnProperty("formatters")){let{level:G,bindings:q,log:U}=H.formatters;X[Z4]=B6(G||Q.level,q||m9,U||Q.log)}else X[Z4]=B6(Q.level,m9,Q.log);if(H.hasOwnProperty("customLevels")===!0)Y_(this.levels,H.customLevels),X.levels=J_(H.customLevels,X[nV]),X_(X);if(typeof H.redact==="object"&&H.redact!==null||Array.isArray(H.redact)){X.redact=H.redact;let G=q_(X.redact,cH),q={stringify:G[sV]};X[oV]=cH,X[aV]=G,X[rV]=q}if(typeof H.msgPrefix==="string")X[D6]=(this[D6]||"")+H.msgPrefix;if(X[d9]=V6(X,$),H.level!==void 0&&H.level!==this.level||H.hasOwnProperty("customLevels")){let G=H.level||this.level;X[w6](G)}return this.onChild(X),X}function w_(){let H=`{${this[d9].substr(1)}}`,J=JSON.parse(H);return delete J.pid,delete J.hostname,J}function D_($){let H=V6(this,$);this[d9]=H}function V_($,H){return Object.assign(H,$)}function __($,H,J){let Q=this[dV](),X=this[yV],Y=this[lV],W=this[pV],G=this[mV]||V_,q,U=this[tV].streamWrite;if($===void 0||$===null)q={};else if($ instanceof Error){if(q={[Y]:$},H===void 0)H=$.message}else if(q=$,H===void 0&&$[W]===void 0&&$[Y])H=$[Y].message;if(X)q=G(q,X(q,J,this));let B=this[lH](q,H,J,Q),w=this[pH];if(w[iV]===!0)w.lastLevel=J,w.lastObj=q,w.lastMsg=H,w.lastTime=Q.slice(this[cV]),w.lastLogger=this;w.write(U?U(B):B)}function F_($){if($!=null&&typeof $!=="function")throw Error("callback must be a function");let H=this[pH];if(typeof H.flush==="function")H.flush($||nH);else if($)$()}});var eH=N((N6,tH)=>{var{hasOwnProperty:L4}=Object.prototype,n0=z6();n0.configure=z6;n0.stringify=n0;n0.default=n0;N6.stringify=n0;N6.configure=z6;tH.exports=n0;var z_=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function S0($){if($.length<5000&&!z_.test($))return`"${$}"`;return JSON.stringify($)}function _6($,H){if($.length>200||H)return $.sort(H);for(let J=1;J<$.length;J++){let Q=$[J],X=J;while(X!==0&&$[X-1]>Q)$[X]=$[X-1],X--;$[X]=Q}return $}var N_=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function F6($){return N_.call($)!==void 0&&$.length!==0}function rH($,H,J){if($.length<J)J=$.length;let Q=H===","?"":" ",X=`"0":${Q}${$[0]}`;for(let Y=1;Y<J;Y++)X+=`${H}"${Y}":${Q}${$[Y]}`;return X}function A_($){if(L4.call($,"circularValue")){let H=$.circularValue;if(typeof H==="string")return`"${H}"`;if(H==null)return H;if(H===Error||H===TypeError)return{toString(){throw TypeError("Converting circular structure to JSON")}};throw TypeError('The "circularValue" argument must be of type string or the value null or undefined')}return'"[Circular]"'}function R_($){let H;if(L4.call($,"deterministic")){if(H=$.deterministic,typeof H!=="boolean"&&typeof H!=="function")throw TypeError('The "deterministic" argument must be of type boolean or comparator function')}return H===void 0?!0:H}function E_($,H){let J;if(L4.call($,H)){if(J=$[H],typeof J!=="boolean")throw TypeError(`The "${H}" argument must be of type boolean`)}return J===void 0?!0:J}function aH($,H){let J;if(L4.call($,H)){if(J=$[H],typeof J!=="number")throw TypeError(`The "${H}" argument must be of type number`);if(!Number.isInteger(J))throw TypeError(`The "${H}" argument must be an integer`);if(J<1)throw RangeError(`The "${H}" argument must be >= 1`)}return J===void 0?1/0:J}function p0($){if($===1)return"1 item";return`${$} items`}function j_($){let H=new Set;for(let J of $)if(typeof J==="string"||typeof J==="number")H.add(String(J));return H}function O_($){if(L4.call($,"strict")){let H=$.strict;if(typeof H!=="boolean")throw TypeError('The "strict" argument must be of type boolean');if(H)return(J)=>{let Q=`Object can not safely be stringified. Received type ${typeof J}`;if(typeof J!=="function")Q+=` (${J.toString()})`;throw Error(Q)}}}function z6($){$={...$};let H=O_($);if(H){if($.bigint===void 0)$.bigint=!1;if(!("circularValue"in $))$.circularValue=Error}let J=A_($),Q=E_($,"bigint"),X=R_($),Y=typeof X==="function"?X:void 0,W=aH($,"maximumDepth"),G=aH($,"maximumBreadth");function q(V,D,A,E,Z,M){let L=D[V];if(typeof L==="object"&&L!==null&&typeof L.toJSON==="function")L=L.toJSON(V);switch(L=E.call(D,V,L),typeof L){case"string":return S0(L);case"object":{if(L===null)return"null";if(A.indexOf(L)!==-1)return J;let b="",v=",",l=M;if(Array.isArray(L)){if(L.length===0)return"[]";if(W<A.length+1)return'"[Array]"';if(A.push(L),Z!=="")M+=Z,b+=`
|
|
3
|
+
caused by: `+M3(Q,H);else return J},uB=($)=>M3($,new Set),S3=($,H,J)=>{if(!O4($))return"";let Q=J?"":$.message||"";if(H.has($))return Q+": ...";let X=I8($);if(X){H.add($);let Y=typeof $.cause==="function";return Q+(Y?"":": ")+S3(X,H,Y)}else return Q},mB=($)=>S3($,new Set);C3.exports={isErrorLike:O4,getErrorCause:I8,stackWithCauses:uB,messageWithCauses:mB}});var b8=N((yC,K3)=>{var dB=Symbol("circular-ref-tag"),L9=Symbol("pino-raw-err-ref"),P3=Object.create({},{type:{enumerable:!0,writable:!0,value:void 0},message:{enumerable:!0,writable:!0,value:void 0},stack:{enumerable:!0,writable:!0,value:void 0},aggregateErrors:{enumerable:!0,writable:!0,value:void 0},raw:{enumerable:!1,get:function(){return this[L9]},set:function($){this[L9]=$}}});Object.defineProperty(P3,L9,{writable:!0,value:{}});K3.exports={pinoErrProto:P3,pinoErrorSymbols:{seen:dB,rawSymbol:L9}}});var b3=N((uC,T3)=>{T3.exports=x8;var{messageWithCauses:cB,stackWithCauses:lB,isErrorLike:I3}=T8(),{pinoErrProto:pB,pinoErrorSymbols:nB}=b8(),{seen:f8}=nB,{toString:iB}=Object.prototype;function x8($){if(!I3($))return $;$[f8]=void 0;let H=Object.create(pB);if(H.type=iB.call($.constructor)==="[object Function]"?$.constructor.name:$.name,H.message=cB($),H.stack=lB($),Array.isArray($.errors))H.aggregateErrors=$.errors.map((J)=>x8(J));for(let J in $)if(H[J]===void 0){let Q=$[J];if(I3(Q)){if(J!=="cause"&&!Object.prototype.hasOwnProperty.call(Q,f8))H[J]=x8(Q)}else H[J]=Q}return delete $[f8],H.raw=$,H}});var x3=N((mC,f3)=>{f3.exports=S9;var{isErrorLike:k8}=T8(),{pinoErrProto:sB,pinoErrorSymbols:oB}=b8(),{seen:M9}=oB,{toString:rB}=Object.prototype;function S9($){if(!k8($))return $;$[M9]=void 0;let H=Object.create(sB);if(H.type=rB.call($.constructor)==="[object Function]"?$.constructor.name:$.name,H.message=$.message,H.stack=$.stack,Array.isArray($.errors))H.aggregateErrors=$.errors.map((J)=>S9(J));if(k8($.cause)&&!Object.prototype.hasOwnProperty.call($.cause,M9))H.cause=S9($.cause);for(let J in $)if(H[J]===void 0){let Q=$[J];if(k8(Q)){if(!Object.prototype.hasOwnProperty.call(Q,M9))H[J]=S9(Q)}else H[J]=Q}return delete $[M9],H.raw=$,H}});var g3=N((dC,v3)=>{v3.exports={mapHttpRequest:aB,reqSerializer:h3};var h8=Symbol("pino-raw-req-ref"),k3=Object.create({},{id:{enumerable:!0,writable:!0,value:""},method:{enumerable:!0,writable:!0,value:""},url:{enumerable:!0,writable:!0,value:""},query:{enumerable:!0,writable:!0,value:""},params:{enumerable:!0,writable:!0,value:""},headers:{enumerable:!0,writable:!0,value:{}},remoteAddress:{enumerable:!0,writable:!0,value:""},remotePort:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[h8]},set:function($){this[h8]=$}}});Object.defineProperty(k3,h8,{writable:!0,value:{}});function h3($){let H=$.info||$.socket,J=Object.create(k3);if(J.id=typeof $.id==="function"?$.id():$.id||($.info?$.info.id:void 0),J.method=$.method,$.originalUrl)J.url=$.originalUrl;else{let Q=$.path;J.url=typeof Q==="string"?Q:$.url?$.url.path||$.url:void 0}if($.query)J.query=$.query;if($.params)J.params=$.params;return J.headers=$.headers,J.remoteAddress=H&&H.remoteAddress,J.remotePort=H&&H.remotePort,J.raw=$.raw||$,J}function aB($){return{req:h3($)}}});var d3=N((cC,m3)=>{m3.exports={mapHttpResponse:tB,resSerializer:u3};var v8=Symbol("pino-raw-res-ref"),y3=Object.create({},{statusCode:{enumerable:!0,writable:!0,value:0},headers:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[v8]},set:function($){this[v8]=$}}});Object.defineProperty(y3,v8,{writable:!0,value:{}});function u3($){let H=Object.create(y3);return H.statusCode=$.headersSent?$.statusCode:null,H.headers=$.getHeaders?$.getHeaders():$._headers,H.raw=$,H}function tB($){return{res:u3($)}}});var y8=N((lC,c3)=>{var g8=b3(),eB=x3(),C9=g3(),P9=d3();c3.exports={err:g8,errWithCause:eB,mapHttpRequest:C9.mapHttpRequest,mapHttpResponse:P9.mapHttpResponse,req:C9.reqSerializer,res:P9.resSerializer,wrapErrorSerializer:function(H){if(H===g8)return H;return function(Q){return H(g8(Q))}},wrapRequestSerializer:function(H){if(H===C9.reqSerializer)return H;return function(Q){return H(C9.reqSerializer(Q))}},wrapResponseSerializer:function(H){if(H===P9.resSerializer)return H;return function(Q){return H(P9.resSerializer(Q))}}}});var u8=N((pC,l3)=>{function $w($,H){return H}l3.exports=function(){let H=Error.prepareStackTrace;Error.prepareStackTrace=$w;let J=Error().stack;if(Error.prepareStackTrace=H,!Array.isArray(J))return;let Q=J.slice(2),X=[];for(let Y of Q){if(!Y)continue;X.push(Y.getFileName())}return X}});var r3=N((nC,o3)=>{function m8($){if($===null||typeof $!=="object")return $;if($ instanceof Date)return new Date($.getTime());if($ instanceof Array){let H=[];for(let J=0;J<$.length;J++)H[J]=m8($[J]);return H}if(typeof $==="object"){let H=Object.create(Object.getPrototypeOf($));for(let J in $)if(Object.prototype.hasOwnProperty.call($,J))H[J]=m8($[J]);return H}return $}function p3($){let H=[],J="",Q=!1,X=!1,Y="";for(let W=0;W<$.length;W++){let G=$[W];if(!Q&&G==="."){if(J)H.push(J),J=""}else if(G==="["){if(J)H.push(J),J="";Q=!0}else if(G==="]"&&Q)H.push(J),J="",Q=!1,X=!1;else if((G==='"'||G==="'")&&Q)if(!X)X=!0,Y=G;else if(G===Y)X=!1,Y="";else J+=G;else J+=G}if(J)H.push(J);return H}function n3($,H,J){let Q=$;for(let Y=0;Y<H.length-1;Y++){let W=H[Y];if(typeof Q!=="object"||Q===null||!(W in Q))return!1;if(typeof Q[W]!=="object"||Q[W]===null)return!1;Q=Q[W]}let X=H[H.length-1];if(X==="*"){if(Array.isArray(Q))for(let Y=0;Y<Q.length;Y++)Q[Y]=J;else if(typeof Q==="object"&&Q!==null){for(let Y in Q)if(Object.prototype.hasOwnProperty.call(Q,Y))Q[Y]=J}}else if(typeof Q==="object"&&Q!==null&&X in Q&&Object.prototype.hasOwnProperty.call(Q,X))Q[X]=J;return!0}function i3($,H){let J=$;for(let X=0;X<H.length-1;X++){let Y=H[X];if(typeof J!=="object"||J===null||!(Y in J))return!1;if(typeof J[Y]!=="object"||J[Y]===null)return!1;J=J[Y]}let Q=H[H.length-1];if(Q==="*"){if(Array.isArray(J))for(let X=0;X<J.length;X++)J[X]=void 0;else if(typeof J==="object"&&J!==null){for(let X in J)if(Object.prototype.hasOwnProperty.call(J,X))delete J[X]}}else if(typeof J==="object"&&J!==null&&Q in J&&Object.prototype.hasOwnProperty.call(J,Q))delete J[Q];return!0}var K9=Symbol("PATH_NOT_FOUND");function Hw($,H){let J=$;for(let Q of H){if(J===null||J===void 0)return K9;if(typeof J!=="object"||J===null)return K9;if(!(Q in J))return K9;J=J[Q]}return J}function Jw($,H){let J=$;for(let Q of H){if(J===null||J===void 0)return;if(typeof J!=="object"||J===null)return;J=J[Q]}return J}function Qw($,H,J,Q=!1){for(let X of H){let Y=p3(X);if(Y.includes("*"))s3($,Y,J,X,Q);else if(Q)i3($,Y);else{let W=Hw($,Y);if(W===K9)continue;let G=typeof J==="function"?J(W,Y):J;n3($,Y,G)}}}function s3($,H,J,Q,X=!1){let Y=H.indexOf("*");if(Y===H.length-1){let W=H.slice(0,-1),G=$;for(let q of W){if(G===null||G===void 0)return;if(typeof G!=="object"||G===null)return;G=G[q]}if(Array.isArray(G))if(X)for(let q=0;q<G.length;q++)G[q]=void 0;else for(let q=0;q<G.length;q++){let U=[...W,q.toString()],B=typeof J==="function"?J(G[q],U):J;G[q]=B}else if(typeof G==="object"&&G!==null)if(X){let q=[];for(let U in G)if(Object.prototype.hasOwnProperty.call(G,U))q.push(U);for(let U of q)delete G[U]}else for(let q in G){let U=[...W,q],B=typeof J==="function"?J(G[q],U):J;G[q]=B}}else Xw($,H,J,Y,Q,X)}function Xw($,H,J,Q,X,Y=!1){let W=H.slice(0,Q),G=H.slice(Q+1),q=[];function U(B,w){if(w===W.length){if(Array.isArray(B))for(let _=0;_<B.length;_++)q[w]=_.toString(),U(B[_],w+1);else if(typeof B==="object"&&B!==null)for(let _ in B)q[w]=_,U(B[_],w+1)}else if(w<W.length){let _=W[w];if(B&&typeof B==="object"&&B!==null&&_ in B)q[w]=_,U(B[_],w+1)}else if(G.includes("*"))s3(B,G,typeof J==="function"?(V,D)=>{let A=[...q.slice(0,w),...D];return J(V,A)}:J,X,Y);else if(Y)i3(B,G);else{let _=typeof J==="function"?J(Jw(B,G),[...q.slice(0,w),...G]):J;n3(B,G,_)}}if(W.length===0)U($,0);else{let B=$;for(let w=0;w<W.length;w++){let _=W[w];if(B===null||B===void 0)return;if(typeof B!=="object"||B===null)return;B=B[_],q[w]=_}if(B!==null&&B!==void 0)U(B,W.length)}}function Yw($){if($.length===0)return null;let H=new Map;for(let J of $){let Q=p3(J),X=H;for(let Y=0;Y<Q.length;Y++){let W=Q[Y];if(!X.has(W))X.set(W,new Map);X=X.get(W)}}return H}function Ww($,H){if(!H)return $;function J(Q,X,Y=0){if(!X||X.size===0)return Q;if(Q===null||typeof Q!=="object")return Q;if(Q instanceof Date)return new Date(Q.getTime());if(Array.isArray(Q)){let G=[];for(let q=0;q<Q.length;q++){let U=q.toString();if(X.has(U)||X.has("*"))G[q]=J(Q[q],X.get(U)||X.get("*"));else G[q]=Q[q]}return G}let W=Object.create(Object.getPrototypeOf(Q));for(let G in Q)if(Object.prototype.hasOwnProperty.call(Q,G))if(X.has(G)||X.has("*"))W[G]=J(Q[G],X.get(G)||X.get("*"));else W[G]=Q[G];return W}return J($,H)}function Gw($){if(typeof $!=="string")throw Error("Paths must be (non-empty) strings");if($==="")throw Error("Invalid redaction path ()");if($.includes(".."))throw Error(`Invalid redaction path (${$})`);if($.includes(","))throw Error(`Invalid redaction path (${$})`);let H=0,J=!1,Q="";for(let X=0;X<$.length;X++){let Y=$[X];if((Y==='"'||Y==="'")&&H>0){if(!J)J=!0,Q=Y;else if(Y===Q)J=!1,Q=""}else if(Y==="["&&!J)H++;else if(Y==="]"&&!J){if(H--,H<0)throw Error(`Invalid redaction path (${$})`)}}if(H!==0)throw Error(`Invalid redaction path (${$})`)}function qw($){if(!Array.isArray($))throw TypeError("paths must be an array");for(let H of $)Gw(H)}function Uw($={}){let{paths:H=[],censor:J="[REDACTED]",serialize:Q=JSON.stringify,strict:X=!0,remove:Y=!1}=$;qw(H);let W=Yw(H);return function(q){if(X&&(q===null||typeof q!=="object")){if(q===null||q===void 0)return Q?Q(q):q;if(typeof q!=="object")return Q?Q(q):q}let U=Ww(q,W),B=q,w=J;if(typeof J==="function")w=J;if(Qw(U,H,w,Y),Q===!1)return U.restore=function(){return m8(B)},U;if(typeof Q==="function")return Q(U);return JSON.stringify(U)}}o3.exports=Uw});var E$=N((iC,a3)=>{var Bw=Symbol("pino.setLevel"),ww=Symbol("pino.getLevel"),Dw=Symbol("pino.levelVal"),Vw=Symbol("pino.levelComp"),_w=Symbol("pino.useLevelLabels"),Fw=Symbol("pino.useOnlyCustomLevels"),zw=Symbol("pino.mixin"),Nw=Symbol("pino.lsCache"),Aw=Symbol("pino.chindings"),Rw=Symbol("pino.asJson"),Ew=Symbol("pino.write"),jw=Symbol("pino.redactFmt"),Ow=Symbol("pino.time"),Zw=Symbol("pino.timeSliceIndex"),Lw=Symbol("pino.stream"),Mw=Symbol("pino.stringify"),Sw=Symbol("pino.stringifySafe"),Cw=Symbol("pino.stringifiers"),Pw=Symbol("pino.end"),Kw=Symbol("pino.formatOpts"),Iw=Symbol("pino.messageKey"),Tw=Symbol("pino.errorKey"),bw=Symbol("pino.nestedKey"),fw=Symbol("pino.nestedKeyStr"),xw=Symbol("pino.mixinMergeStrategy"),kw=Symbol("pino.msgPrefix"),hw=Symbol("pino.wildcardFirst"),vw=Symbol.for("pino.serializers"),gw=Symbol.for("pino.formatters"),yw=Symbol.for("pino.hooks"),uw=Symbol.for("pino.metadata");a3.exports={setLevelSym:Bw,getLevelSym:ww,levelValSym:Dw,levelCompSym:Vw,useLevelLabelsSym:_w,mixinSym:zw,lsCacheSym:Nw,chindingsSym:Aw,asJsonSym:Rw,writeSym:Ew,serializersSym:vw,redactFmtSym:jw,timeSym:Ow,timeSliceIndexSym:Zw,streamSym:Lw,stringifySym:Mw,stringifySafeSym:Sw,stringifiersSym:Cw,endSym:Pw,formatOptsSym:Kw,messageKeySym:Iw,errorKeySym:Tw,nestedKeySym:bw,wildcardFirstSym:hw,needsMetadataGsym:uw,useOnlyCustomLevelsSym:Fw,formattersSym:gw,hooksSym:yw,nestedKeyStrSym:fw,mixinMergeStrategySym:xw,msgPrefixSym:kw}});var c8=N((sC,e3)=>{var t3=r3(),{redactFmtSym:mw,wildcardFirstSym:I9}=E$(),d8=/[^.[\]]+|\[([^[\]]*?)\]/g;function dw($,H){let{paths:J,censor:Q,remove:X}=cw($),Y=J.reduce((q,U)=>{d8.lastIndex=0;let B=d8.exec(U),w=d8.exec(U),_=B[1]!==void 0?B[1].replace(/^(?:"|'|`)(.*)(?:"|'|`)$/,"$1"):B[0];if(_==="*")_=I9;if(w===null)return q[_]=null,q;if(q[_]===null)return q;let{index:V}=w,D=`${U.substr(V,U.length-1)}`;if(q[_]=q[_]||[],_!==I9&&q[_].length===0)q[_].push(...q[I9]||[]);if(_===I9)Object.keys(q).forEach(function(A){if(q[A])q[A].push(D)});return q[_].push(D),q},{}),W={[mw]:t3({paths:J,censor:Q,serialize:H,strict:!1,remove:X})},G=(...q)=>{return typeof Q==="function"?H(Q(...q)):H(Q)};return[...Object.keys(Y),...Object.getOwnPropertySymbols(Y)].reduce((q,U)=>{if(Y[U]===null)q[U]=(B)=>G(B,[U]);else{let B=typeof Q==="function"?(w,_)=>{return Q(w,[U,..._])}:Q;q[U]=t3({paths:Y[U],censor:B,serialize:H,strict:!1,remove:X})}return q},W)}function cw($){if(Array.isArray($))return $={paths:$,censor:"[Redacted]"},$;let{paths:H,censor:J="[Redacted]",remove:Q}=$;if(Array.isArray(H)===!1)throw Error("pino – redact must contain an array of strings");if(Q===!0)J=void 0;return{paths:H,censor:J,remove:Q}}e3.exports=dw});var JH=N((oC,HH)=>{var lw=()=>"",pw=()=>`,"time":${Date.now()}`,nw=()=>`,"time":${Math.round(Date.now()/1000)}`,iw=()=>`,"time":"${new Date(Date.now()).toISOString()}"`,sw=1000000n,$H=1000000000n,ow=BigInt(Date.now())*sw,rw=process.hrtime.bigint(),aw=()=>{let $=process.hrtime.bigint()-rw,H=ow+$,J=H/$H,Q=H%$H,X=Number(J*1000n+Q/1000000n),Y=new Date(X),W=Y.getUTCFullYear(),G=(Y.getUTCMonth()+1).toString().padStart(2,"0"),q=Y.getUTCDate().toString().padStart(2,"0"),U=Y.getUTCHours().toString().padStart(2,"0"),B=Y.getUTCMinutes().toString().padStart(2,"0"),w=Y.getUTCSeconds().toString().padStart(2,"0");return`,"time":"${W}-${G}-${q}T${U}:${B}:${w}.${Q.toString().padStart(9,"0")}Z"`};HH.exports={nullTime:lw,epochTime:pw,unixTime:nw,isoTime:iw,isoTimeNano:aw}});var XH=N((rC,QH)=>{function tw($){try{return JSON.stringify($)}catch(H){return'"[Circular]"'}}QH.exports=ew;function ew($,H,J){var Q=J&&J.stringify||tw,X=1;if(typeof $==="object"&&$!==null){var Y=H.length+X;if(Y===1)return $;var W=Array(Y);W[0]=Q($);for(var G=1;G<Y;G++)W[G]=Q(H[G]);return W.join(" ")}if(typeof $!=="string")return $;var q=H.length;if(q===0)return $;var U="",B=1-X,w=-1,_=$&&$.length||0;for(var V=0;V<_;){if($.charCodeAt(V)===37&&V+1<_){switch(w=w>-1?w:0,$.charCodeAt(V+1)){case 100:case 102:if(B>=q)break;if(H[B]==null)break;if(w<V)U+=$.slice(w,V);U+=Number(H[B]),w=V+2,V++;break;case 105:if(B>=q)break;if(H[B]==null)break;if(w<V)U+=$.slice(w,V);U+=Math.floor(Number(H[B])),w=V+2,V++;break;case 79:case 111:case 106:if(B>=q)break;if(H[B]===void 0)break;if(w<V)U+=$.slice(w,V);var D=typeof H[B];if(D==="string"){U+="'"+H[B]+"'",w=V+2,V++;break}if(D==="function"){U+=H[B].name||"<anonymous>",w=V+2,V++;break}U+=Q(H[B]),w=V+2,V++;break;case 115:if(B>=q)break;if(w<V)U+=$.slice(w,V);U+=String(H[B]),w=V+2,V++;break;case 37:if(w<V)U+=$.slice(w,V);U+="%",w=V+2,V++,B--;break}++B}++V}if(w===-1)return $;else if(w<_)U+=$.slice(w);return U}});var p8=N((aC,l8)=>{if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let H=function(J){if((J>0&&J<1/0)===!1){if(typeof J!=="number"&&typeof J!=="bigint")throw TypeError("sleep: ms must be a number");throw RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity")}Atomics.wait($,0,0,Number(J))},$=new Int32Array(new SharedArrayBuffer(4));l8.exports=H}else{let $=function(H){if((H>0&&H<1/0)===!1){if(typeof H!=="number"&&typeof H!=="bigint")throw TypeError("sleep: ms must be a number");throw RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity")}let Q=Date.now()+Number(H);while(Q>Date.now());};l8.exports=$}});var s8=N((tC,UH)=>{var N1=require("fs"),$D=require("events"),HD=require("util").inherits,YH=require("path"),i8=p8(),JD=require("assert"),T9=Buffer.allocUnsafe(0),[QD,XD]=(process.versions.node||"0.0").split(".").map(Number),YD=QD>=22&&XD>=7;function WH($,H){H._opening=!0,H._writing=!0,H._asyncDrainScheduled=!1;function J(Y,W){if(Y){if(H._reopening=!1,H._writing=!1,H._opening=!1,H.sync)process.nextTick(()=>{if(H.listenerCount("error")>0)H.emit("error",Y)});else H.emit("error",Y);return}let G=H._reopening;if(H.fd=W,H.file=$,H._reopening=!1,H._opening=!1,H._writing=!1,H.sync)process.nextTick(()=>H.emit("ready"));else H.emit("ready");if(H.destroyed)return;if(!H._writing&&H._len>H.minLength||H._flushPending)H._actualWrite();else if(G)process.nextTick(()=>H.emit("drain"))}let Q=H.append?"a":"w",X=H.mode;if(H.sync)try{if(H.mkdir)N1.mkdirSync(YH.dirname($),{recursive:!0});let Y=N1.openSync($,Q,X);J(null,Y)}catch(Y){throw J(Y),Y}else if(H.mkdir)N1.mkdir(YH.dirname($),{recursive:!0},(Y)=>{if(Y)return J(Y);N1.open($,Q,X,J)});else N1.open($,Q,X,J)}function p1($){if(!(this instanceof p1))return new p1($);let{fd:H,dest:J,minLength:Q,maxLength:X,maxWrite:Y,periodicFlush:W,sync:G,append:q=!0,mkdir:U,retryEAGAIN:B,fsync:w,contentMode:_,mode:V}=$||{};H=H||J,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(Q||0,16387),this.file=null,this.destroyed=!1,this.minLength=Q||0,this.maxLength=X||0,this.maxWrite=Y||16384,this._periodicFlush=W||0,this._periodicFlushTimer=void 0,this.sync=G||!1,this.writable=!0,this._fsync=w||!1,this.append=q||!1,this.mode=V,this.retryEAGAIN=B||(()=>!0),this.mkdir=U||!1;let D,A;if(_==="buffer")this._writingBuf=T9,this.write=qD,this.flush=BD,this.flushSync=DD,this._actualWrite=_D,D=()=>N1.writeSync(this.fd,this._writingBuf),A=()=>N1.write(this.fd,this._writingBuf,this.release);else if(_===void 0||_==="utf8")this._writingBuf="",this.write=GD,this.flush=UD,this.flushSync=wD,this._actualWrite=VD,D=()=>N1.writeSync(this.fd,this._writingBuf,"utf8"),A=()=>N1.write(this.fd,this._writingBuf,"utf8",this.release);else throw Error(`SonicBoom supports "utf8" and "buffer", but passed ${_}`);if(typeof H==="number")this.fd=H,process.nextTick(()=>this.emit("ready"));else if(typeof H==="string")WH(H,this);else throw Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);if(this.release=(E,Z)=>{if(E){if((E.code==="EAGAIN"||E.code==="EBUSY")&&this.retryEAGAIN(E,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{i8(100),this.release(void 0,0)}catch(b){this.release(b)}else setTimeout(A,100);else this._writing=!1,this.emit("error",E);return}this.emit("write",Z);let M=n8(this._writingBuf,this._len,Z);if(this._len=M.len,this._writingBuf=M.writingBuf,this._writingBuf.length){if(!this.sync){A();return}try{do{let b=D(),v=n8(this._writingBuf,this._len,b);this._len=v.len,this._writingBuf=v.writingBuf}while(this._writingBuf.length)}catch(b){this.release(b);return}}if(this._fsync)N1.fsyncSync(this.fd);let L=this._len;if(this._reopening)this._writing=!1,this._reopening=!1,this.reopen();else if(L>this.minLength)this._actualWrite();else if(this._ending)if(L>0)this._actualWrite();else this._writing=!1,b9(this);else if(this._writing=!1,this.sync){if(!this._asyncDrainScheduled)this._asyncDrainScheduled=!0,process.nextTick(WD,this)}else this.emit("drain")},this.on("newListener",function(E){if(E==="drain")this._asyncDrainScheduled=!1}),this._periodicFlush!==0)this._periodicFlushTimer=setInterval(()=>this.flush(null),this._periodicFlush),this._periodicFlushTimer.unref()}function n8($,H,J){if(typeof $==="string"&&Buffer.byteLength($)!==J)J=Buffer.from($).subarray(0,J).toString().length;return H=Math.max(H-J,0),$=$.slice(J),{writingBuf:$,len:H}}function WD($){if(!($.listenerCount("drain")>0))return;$._asyncDrainScheduled=!1,$.emit("drain")}HD(p1,$D);function GH($,H){if($.length===0)return T9;if($.length===1)return $[0];return Buffer.concat($,H)}function GD($){if(this.destroyed)throw Error("SonicBoom destroyed");let H=this._len+$.length,J=this._bufs;if(this.maxLength&&H>this.maxLength)return this.emit("drop",$),this._len<this._hwm;if(J.length===0||J[J.length-1].length+$.length>this.maxWrite)J.push(""+$);else J[J.length-1]+=$;if(this._len=H,!this._writing&&this._len>=this.minLength)this._actualWrite();return this._len<this._hwm}function qD($){if(this.destroyed)throw Error("SonicBoom destroyed");let H=this._len+$.length,J=this._bufs,Q=this._lens;if(this.maxLength&&H>this.maxLength)return this.emit("drop",$),this._len<this._hwm;if(J.length===0||Q[Q.length-1]+$.length>this.maxWrite)J.push([$]),Q.push($.length);else J[J.length-1].push($),Q[Q.length-1]+=$.length;if(this._len=H,!this._writing&&this._len>=this.minLength)this._actualWrite();return this._len<this._hwm}function qH($){this._flushPending=!0;let H=()=>{if(!this._fsync)try{N1.fsync(this.fd,(Q)=>{this._flushPending=!1,$(Q)})}catch(Q){$(Q)}else this._flushPending=!1,$();this.off("error",J)},J=(Q)=>{this._flushPending=!1,$(Q),this.off("drain",H)};this.once("drain",H),this.once("error",J)}function UD($){if($!=null&&typeof $!=="function")throw Error("flush cb must be a function");if(this.destroyed){let H=Error("SonicBoom destroyed");if($){$(H);return}throw H}if(this.minLength<=0){$?.();return}if($)qH.call(this,$);if(this._writing)return;if(this._bufs.length===0)this._bufs.push("");this._actualWrite()}function BD($){if($!=null&&typeof $!=="function")throw Error("flush cb must be a function");if(this.destroyed){let H=Error("SonicBoom destroyed");if($){$(H);return}throw H}if(this.minLength<=0){$?.();return}if($)qH.call(this,$);if(this._writing)return;if(this._bufs.length===0)this._bufs.push([]),this._lens.push(0);this._actualWrite()}p1.prototype.reopen=function($){if(this.destroyed)throw Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen($)});return}if(this._ending)return;if(!this.file)throw Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if($)this.file=$;if(this._reopening=!0,this._writing)return;let H=this.fd;this.once("ready",()=>{if(H!==this.fd)N1.close(H,(J)=>{if(J)return this.emit("error",J)})}),WH(this.file,this)};p1.prototype.end=function(){if(this.destroyed)throw Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}if(this._ending)return;if(this._ending=!0,this._writing)return;if(this._len>0&&this.fd>=0)this._actualWrite();else b9(this)};function wD(){if(this.destroyed)throw Error("SonicBoom destroyed");if(this.fd<0)throw Error("sonic boom is not ready yet");if(!this._writing&&this._writingBuf.length>0)this._bufs.unshift(this._writingBuf),this._writingBuf="";let $="";while(this._bufs.length||$){if($.length<=0)$=this._bufs[0];try{let H=N1.writeSync(this.fd,$,"utf8"),J=n8($,this._len,H);if($=J.writingBuf,this._len=J.len,$.length<=0)this._bufs.shift()}catch(H){if((H.code==="EAGAIN"||H.code==="EBUSY")&&!this.retryEAGAIN(H,$.length,this._len-$.length))throw H;i8(100)}}try{N1.fsyncSync(this.fd)}catch{}}function DD(){if(this.destroyed)throw Error("SonicBoom destroyed");if(this.fd<0)throw Error("sonic boom is not ready yet");if(!this._writing&&this._writingBuf.length>0)this._bufs.unshift([this._writingBuf]),this._writingBuf=T9;let $=T9;while(this._bufs.length||$.length){if($.length<=0)$=GH(this._bufs[0],this._lens[0]);try{let H=N1.writeSync(this.fd,$);if($=$.subarray(H),this._len=Math.max(this._len-H,0),$.length<=0)this._bufs.shift(),this._lens.shift()}catch(H){if((H.code==="EAGAIN"||H.code==="EBUSY")&&!this.retryEAGAIN(H,$.length,this._len-$.length))throw H;i8(100)}}}p1.prototype.destroy=function(){if(this.destroyed)return;b9(this)};function VD(){let $=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let H=N1.writeSync(this.fd,this._writingBuf,"utf8");$(null,H)}catch(H){$(H)}else N1.write(this.fd,this._writingBuf,"utf8",$)}function _D(){let $=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:GH(this._bufs.shift(),this._lens.shift()),this.sync)try{let H=N1.writeSync(this.fd,this._writingBuf);$(null,H)}catch(H){$(H)}else{if(YD)this._writingBuf=Buffer.from(this._writingBuf);N1.write(this.fd,this._writingBuf,$)}}function b9($){if($.fd===-1){$.once("ready",b9.bind(null,$));return}if($._periodicFlushTimer!==void 0)clearInterval($._periodicFlushTimer);$.destroyed=!0,$._bufs=[],$._lens=[],JD(typeof $.fd==="number",`sonic.fd must be a number, got ${typeof $.fd}`);try{N1.fsync($.fd,H)}catch{}function H(){if($.fd!==1&&$.fd!==2)N1.close($.fd,J);else J()}function J(Q){if(Q){$.emit("error",Q);return}if($._ending&&!$._writing)$.emit("finish");$.emit("close")}}p1.SonicBoom=p1;p1.default=p1;UH.exports=p1});var f9=N((eC,_H)=>{var n1={exit:[],beforeExit:[]},BH={exit:ND,beforeExit:AD},j$;function FD(){if(j$===void 0)j$=new FinalizationRegistry(RD)}function zD($){if(n1[$].length>0)return;process.on($,BH[$])}function wH($){if(n1[$].length>0)return;if(process.removeListener($,BH[$]),n1.exit.length===0&&n1.beforeExit.length===0)j$=void 0}function ND(){DH("exit")}function AD(){DH("beforeExit")}function DH($){for(let H of n1[$]){let J=H.deref(),Q=H.fn;if(J!==void 0)Q(J,$)}n1[$]=[]}function RD($){for(let H of["exit","beforeExit"]){let J=n1[H].indexOf($);n1[H].splice(J,J+1),wH(H)}}function VH($,H,J){if(H===void 0)throw Error("the object can't be undefined");zD($);let Q=new WeakRef(H);Q.fn=J,FD(),j$.register(H,Q),n1[$].push(Q)}function ED($,H){VH("exit",$,H)}function jD($,H){VH("beforeExit",$,H)}function OD($){if(j$===void 0)return;j$.unregister($);for(let H of["exit","beforeExit"])n1[H]=n1[H].filter((J)=>{let Q=J.deref();return Q&&Q!==$}),wH(H)}_H.exports={register:ED,registerBeforeExit:jD,unregister:OD}});var FH=N(($P,ZD)=>{ZD.exports={name:"thread-stream",version:"3.1.0",description:"A streaming way to send data to a Node.js Worker Thread",main:"index.js",types:"index.d.ts",dependencies:{"real-require":"^0.2.0"},devDependencies:{"@types/node":"^20.1.0","@types/tap":"^15.0.0","@yao-pkg/pkg":"^5.11.5",desm:"^1.3.0",fastbench:"^1.0.1",husky:"^9.0.6","pino-elasticsearch":"^8.0.0","sonic-boom":"^4.0.1",standard:"^17.0.0",tap:"^16.2.0","ts-node":"^10.8.0",typescript:"^5.3.2","why-is-node-running":"^2.2.2"},scripts:{build:"tsc --noEmit",test:'standard && npm run build && npm run transpile && tap "test/**/*.test.*js" && tap --ts test/*.test.*ts',"test:ci":"standard && npm run transpile && npm run test:ci:js && npm run test:ci:ts","test:ci:js":'tap --no-check-coverage --timeout=120 --coverage-report=lcovonly "test/**/*.test.*js"',"test:ci:ts":'tap --ts --no-check-coverage --coverage-report=lcovonly "test/**/*.test.*ts"',"test:yarn":'npm run transpile && tap "test/**/*.test.js" --no-check-coverage',transpile:"sh ./test/ts/transpile.sh",prepare:"husky install"},standard:{ignore:["test/ts/**/*","test/syntax-error.mjs"]},repository:{type:"git",url:"git+https://github.com/mcollina/thread-stream.git"},keywords:["worker","thread","threads","stream"],author:"Matteo Collina <hello@matteocollina.com>",license:"MIT",bugs:{url:"https://github.com/mcollina/thread-stream/issues"},homepage:"https://github.com/mcollina/thread-stream#readme"}});var NH=N((HP,zH)=>{function LD($,H,J,Q,X){let Y=Date.now()+Q,W=Atomics.load($,H);if(W===J){X(null,"ok");return}let G=W,q=(U)=>{if(Date.now()>Y)X(null,"timed-out");else setTimeout(()=>{if(G=W,W=Atomics.load($,H),W===G)q(U>=1000?1000:U*2);else if(W===J)X(null,"ok");else X(null,"not-equal")},U)};q(1)}function MD($,H,J,Q,X){let Y=Date.now()+Q,W=Atomics.load($,H);if(W!==J){X(null,"ok");return}let G=(q)=>{if(Date.now()>Y)X(null,"timed-out");else setTimeout(()=>{if(W=Atomics.load($,H),W!==J)X(null,"ok");else G(q>=1000?1000:q*2)},q)};G(1)}zH.exports={wait:LD,waitDiff:MD}});var RH=N((JP,AH)=>{AH.exports={WRITE_INDEX:4,READ_INDEX:8}});var MH=N((QP,LH)=>{var __dirname="C:\\Users\\mejia\\Desktop\\prueba-real\\fastTS\\node_modules\\thread-stream",{version:SD}=FH(),{EventEmitter:CD}=require("events"),{Worker:PD}=require("worker_threads"),{join:KD}=require("path"),{pathToFileURL:ID}=require("url"),{wait:TD}=NH(),{WRITE_INDEX:b1,READ_INDEX:W0}=RH(),bD=require("buffer"),fD=require("assert"),O=Symbol("kImpl"),xD=bD.constants.MAX_STRING_LENGTH;class k9{constructor($){this._value=$}deref(){return this._value}}class r8{register(){}unregister(){}}var kD=process.env.NODE_V8_COVERAGE?r8:global.FinalizationRegistry||r8,hD=process.env.NODE_V8_COVERAGE?k9:global.WeakRef||k9,EH=new kD(($)=>{if($.exited)return;$.terminate()});function vD($,H){let{filename:J,workerData:Q}=H,Y=("__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{})["thread-stream-worker"]||KD(__dirname,"lib","worker.js"),W=new PD(Y,{...H.workerOpts,trackUnmanagedFds:!1,workerData:{filename:J.indexOf("file://")===0?J:ID(J).href,dataBuf:$[O].dataBuf,stateBuf:$[O].stateBuf,workerData:{$context:{threadStreamVersion:SD},...Q}}});return W.stream=new k9($),W.on("message",gD),W.on("exit",OH),EH.register($,W),W}function jH($){if(fD(!$[O].sync),$[O].needDrain)$[O].needDrain=!1,$.emit("drain")}function x9($){let H=Atomics.load($[O].state,b1),J=$[O].data.length-H;if(J>0){if($[O].buf.length===0){if($[O].flushing=!1,$[O].ending)e8($);else if($[O].needDrain)process.nextTick(jH,$);return}let Q=$[O].buf.slice(0,J),X=Buffer.byteLength(Q);if(X<=J)$[O].buf=$[O].buf.slice(J),h9($,Q,x9.bind(null,$));else $.flush(()=>{if($.destroyed)return;Atomics.store($[O].state,W0,0),Atomics.store($[O].state,b1,0);while(X>$[O].data.length)J=J/2,Q=$[O].buf.slice(0,J),X=Buffer.byteLength(Q);$[O].buf=$[O].buf.slice(J),h9($,Q,x9.bind(null,$))})}else if(J===0){if(H===0&&$[O].buf.length===0)return;$.flush(()=>{Atomics.store($[O].state,W0,0),Atomics.store($[O].state,b1,0),x9($)})}else G0($,Error("overwritten"))}function gD($){let H=this.stream.deref();if(H===void 0){this.exited=!0,this.terminate();return}switch($.code){case"READY":this.stream=new hD(H),H.flush(()=>{H[O].ready=!0,H.emit("ready")});break;case"ERROR":G0(H,$.err);break;case"EVENT":if(Array.isArray($.args))H.emit($.name,...$.args);else H.emit($.name,$.args);break;case"WARNING":process.emitWarning($.err);break;default:G0(H,Error("this should not happen: "+$.code))}}function OH($){let H=this.stream.deref();if(H===void 0)return;EH.unregister(H),H.worker.exited=!0,H.worker.off("exit",OH),G0(H,$!==0?Error("the worker thread exited"):null)}class ZH extends CD{constructor($={}){super();if($.bufferSize<4)throw Error("bufferSize must at least fit a 4-byte utf-8 char");this[O]={},this[O].stateBuf=new SharedArrayBuffer(128),this[O].state=new Int32Array(this[O].stateBuf),this[O].dataBuf=new SharedArrayBuffer($.bufferSize||4194304),this[O].data=Buffer.from(this[O].dataBuf),this[O].sync=$.sync||!1,this[O].ending=!1,this[O].ended=!1,this[O].needDrain=!1,this[O].destroyed=!1,this[O].flushing=!1,this[O].ready=!1,this[O].finished=!1,this[O].errored=null,this[O].closed=!1,this[O].buf="",this.worker=vD(this,$),this.on("message",(H,J)=>{this.worker.postMessage(H,J)})}write($){if(this[O].destroyed)return a8(this,Error("the worker has exited")),!1;if(this[O].ending)return a8(this,Error("the worker is ending")),!1;if(this[O].flushing&&this[O].buf.length+$.length>=xD)try{o8(this),this[O].flushing=!0}catch(H){return G0(this,H),!1}if(this[O].buf+=$,this[O].sync)try{return o8(this),!0}catch(H){return G0(this,H),!1}if(!this[O].flushing)this[O].flushing=!0,setImmediate(x9,this);return this[O].needDrain=this[O].data.length-this[O].buf.length-Atomics.load(this[O].state,b1)<=0,!this[O].needDrain}end(){if(this[O].destroyed)return;this[O].ending=!0,e8(this)}flush($){if(this[O].destroyed){if(typeof $==="function")process.nextTick($,Error("the worker has exited"));return}let H=Atomics.load(this[O].state,b1);TD(this[O].state,W0,H,1/0,(J,Q)=>{if(J){G0(this,J),process.nextTick($,J);return}if(Q==="not-equal"){this.flush($);return}process.nextTick($)})}flushSync(){if(this[O].destroyed)return;o8(this),t8(this)}unref(){this.worker.unref()}ref(){this.worker.ref()}get ready(){return this[O].ready}get destroyed(){return this[O].destroyed}get closed(){return this[O].closed}get writable(){return!this[O].destroyed&&!this[O].ending}get writableEnded(){return this[O].ending}get writableFinished(){return this[O].finished}get writableNeedDrain(){return this[O].needDrain}get writableObjectMode(){return!1}get writableErrored(){return this[O].errored}}function a8($,H){setImmediate(()=>{$.emit("error",H)})}function G0($,H){if($[O].destroyed)return;if($[O].destroyed=!0,H)$[O].errored=H,a8($,H);if(!$.worker.exited)$.worker.terminate().catch(()=>{}).then(()=>{$[O].closed=!0,$.emit("close")});else setImmediate(()=>{$[O].closed=!0,$.emit("close")})}function h9($,H,J){let Q=Atomics.load($[O].state,b1),X=Buffer.byteLength(H);return $[O].data.write(H,Q),Atomics.store($[O].state,b1,Q+X),Atomics.notify($[O].state,b1),J(),!0}function e8($){if($[O].ended||!$[O].ending||$[O].flushing)return;$[O].ended=!0;try{$.flushSync();let H=Atomics.load($[O].state,W0);Atomics.store($[O].state,b1,-1),Atomics.notify($[O].state,b1);let J=0;while(H!==-1){if(Atomics.wait($[O].state,W0,H,1000),H=Atomics.load($[O].state,W0),H===-2){G0($,Error("end() failed"));return}if(++J===10){G0($,Error("end() took too long (10s)"));return}}process.nextTick(()=>{$[O].finished=!0,$.emit("finish")})}catch(H){G0($,H)}}function o8($){let H=()=>{if($[O].ending)e8($);else if($[O].needDrain)process.nextTick(jH,$)};$[O].flushing=!1;while($[O].buf.length!==0){let J=Atomics.load($[O].state,b1),Q=$[O].data.length-J;if(Q===0){t8($),Atomics.store($[O].state,W0,0),Atomics.store($[O].state,b1,0);continue}else if(Q<0)throw Error("overwritten");let X=$[O].buf.slice(0,Q),Y=Buffer.byteLength(X);if(Y<=Q)$[O].buf=$[O].buf.slice(Q),h9($,X,H);else{t8($),Atomics.store($[O].state,W0,0),Atomics.store($[O].state,b1,0);while(Y>$[O].buf.length)Q=Q/2,X=$[O].buf.slice(0,Q),Y=Buffer.byteLength(X);$[O].buf=$[O].buf.slice(Q),h9($,X,H)}}}function t8($){if($[O].flushing)throw Error("unable to flush while flushing");let H=Atomics.load($[O].state,b1),J=0;while(!0){let Q=Atomics.load($[O].state,W0);if(Q===-2)throw Error("_flushSync failed");if(Q!==H)Atomics.wait($[O].state,W0,Q,1000);else break;if(++J===10)throw Error("_flushSync took too long (10s)")}}LH.exports=ZH});var J6=N((XP,SH)=>{var __dirname="C:\\Users\\mejia\\Desktop\\prueba-real\\fastTS\\node_modules\\pino\\lib",{createRequire:yD}=require("module"),uD=u8(),{join:$6,isAbsolute:mD,sep:dD}=require("node:path"),cD=p8(),H6=f9(),lD=MH();function pD($){H6.register($,iD),H6.registerBeforeExit($,sD),$.on("close",function(){H6.unregister($)})}function nD($,H,J,Q){let X=new lD({filename:$,workerData:H,workerOpts:J,sync:Q});X.on("ready",Y),X.on("close",function(){process.removeListener("exit",W)}),process.on("exit",W);function Y(){if(process.removeListener("exit",W),X.unref(),J.autoEnd!==!1)pD(X)}function W(){if(X.closed)return;X.flushSync(),cD(100),X.end()}return X}function iD($){$.ref(),$.flushSync(),$.end(),$.once("close",function(){$.unref()})}function sD($){$.flushSync()}function oD($){let{pipeline:H,targets:J,levels:Q,dedupe:X,worker:Y={},caller:W=uD(),sync:G=!1}=$,q={...$.options},U=typeof W==="string"?[W]:W,B="__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{},w=$.target;if(w&&J)throw Error("only one of target or targets can be specified");if(J)w=B["pino-worker"]||$6(__dirname,"worker.js"),q.targets=J.filter((V)=>V.target).map((V)=>{return{...V,target:_(V.target)}}),q.pipelines=J.filter((V)=>V.pipeline).map((V)=>{return V.pipeline.map((D)=>{return{...D,level:V.level,target:_(D.target)}})});else if(H)w=B["pino-worker"]||$6(__dirname,"worker.js"),q.pipelines=[H.map((V)=>{return{...V,target:_(V.target)}})];if(Q)q.levels=Q;if(X)q.dedupe=X;return q.pinoWillSendConfig=!0,nD(_(w),q,Y,G);function _(V){if(V=B[V]||V,mD(V)||V.indexOf("file://")===0)return V;if(V==="pino/file")return $6(__dirname,"..","file.js");let D;for(let A of U)try{let E=A==="node:repl"?process.cwd()+dD:A;D=yD(E).resolve(V);break}catch(E){continue}if(!D)throw Error(`unable to determine transport target for "${V}"`);return D}}SH.exports=oD});var y9=N((YP,yH)=>{var rD=require("node:diagnostics_channel"),CH=XH(),{mapHttpRequest:aD,mapHttpResponse:tD}=y8(),X6=s8(),PH=f9(),{lsCacheSym:eD,chindingsSym:fH,writeSym:KH,serializersSym:xH,formatOptsSym:IH,endSym:$V,stringifiersSym:kH,stringifySym:hH,stringifySafeSym:Y6,wildcardFirstSym:vH,nestedKeySym:HV,formattersSym:gH,messageKeySym:JV,errorKeySym:QV,nestedKeyStrSym:XV,msgPrefixSym:v9}=E$(),{isMainThread:YV}=require("worker_threads"),WV=J6(),TH=rD.tracingChannel("pino_asJson");function O$(){}function GV($,H){if(!H)return J;return function(...X){H.call(this,X,J,$)};function J(Q,...X){if(typeof Q==="object"){let Y=Q;if(Q!==null){if(Q.method&&Q.headers&&Q.socket)Q=aD(Q);else if(typeof Q.setHeader==="function")Q=tD(Q)}let W;if(Y===null&&X.length===0)W=[null];else Y=X.shift(),W=X;if(typeof this[v9]==="string"&&Y!==void 0&&Y!==null)Y=this[v9]+Y;this[KH](Q,CH(Y,W,this[IH]),$)}else{let Y=Q===void 0?X.shift():Q;if(typeof this[v9]==="string"&&Y!==void 0&&Y!==null)Y=this[v9]+Y;this[KH](null,CH(Y,X,this[IH]),$)}}}function Q6($){let H="",J=0,Q=!1,X=255,Y=$.length;if(Y>100)return JSON.stringify($);for(var W=0;W<Y&&X>=32;W++)if(X=$.charCodeAt(W),X===34||X===92)H+=$.slice(J,W)+"\\",J=W,Q=!0;if(!Q)H=$;else H+=$.slice(J);return X<32?JSON.stringify($):'"'+H+'"'}function qV($,H,J,Q){if(TH.hasSubscribers===!1)return bH.call(this,$,H,J,Q);let X={instance:this,arguments};return TH.traceSync(bH,X,this,$,H,J,Q)}function bH($,H,J,Q){let X=this[hH],Y=this[Y6],W=this[kH],G=this[$V],q=this[fH],U=this[xH],B=this[gH],w=this[JV],_=this[QV],V=this[eD][J]+Q;V=V+q;let D;if(B.log)$=B.log($);let A=W[vH],E="";for(let M in $)if(D=$[M],Object.prototype.hasOwnProperty.call($,M)&&D!==void 0){if(U[M])D=U[M](D);else if(M===_&&U.err)D=U.err(D);let L=W[M]||A;switch(typeof D){case"undefined":case"function":continue;case"number":if(Number.isFinite(D)===!1)D=null;case"boolean":if(L)D=L(D);break;case"string":D=(L||Q6)(D);break;default:D=(L||X)(D,Y)}if(D===void 0)continue;let b=Q6(M);E+=","+b+":"+D}let Z="";if(H!==void 0){D=U[w]?U[w](H):H;let M=W[w]||A;switch(typeof D){case"function":break;case"number":if(Number.isFinite(D)===!1)D=null;case"boolean":if(M)D=M(D);Z=',"'+w+'":'+D;break;case"string":D=(M||Q6)(D),Z=',"'+w+'":'+D;break;default:D=(M||X)(D,Y),Z=',"'+w+'":'+D}}if(this[HV]&&E)return V+this[XV]+E.slice(1)+"}"+Z+G;else return V+E+Z+G}function UV($,H){let J,Q=$[fH],X=$[hH],Y=$[Y6],W=$[kH],G=W[vH],q=$[xH],U=$[gH].bindings;H=U(H);for(let B in H)if(J=H[B],((B.length<5||B!=="level"&&B!=="serializers"&&B!=="formatters"&&B!=="customLevels")&&H.hasOwnProperty(B)&&J!==void 0)===!0){if(J=q[B]?q[B](J):J,J=(W[B]||G||X)(J,Y),J===void 0)continue;Q+=',"'+B+'":'+J}return Q}function BV($){return $.write!==$.constructor.prototype.write}function g9($){let H=new X6($);if(H.on("error",J),!$.sync&&YV)PH.register(H,wV),H.on("close",function(){PH.unregister(H)});return H;function J(Q){if(Q.code==="EPIPE"){H.write=O$,H.end=O$,H.flushSync=O$,H.destroy=O$;return}H.removeListener("error",J),H.emit("error",Q)}}function wV($,H){if($.destroyed)return;if(H==="beforeExit")$.flush(),$.on("drain",function(){$.end()});else $.flushSync()}function DV($){return function(J,Q,X={},Y){if(typeof X==="string")Y=g9({dest:X}),X={};else if(typeof Y==="string"){if(X&&X.transport)throw Error("only one of option.transport or stream can be specified");Y=g9({dest:Y})}else if(X instanceof X6||X.writable||X._writableState)Y=X,X={};else if(X.transport){if(X.transport instanceof X6||X.transport.writable||X.transport._writableState)throw Error("option.transport do not allow stream, please pass to option directly. e.g. pino(transport)");if(X.transport.targets&&X.transport.targets.length&&X.formatters&&typeof X.formatters.level==="function")throw Error("option.transport.targets do not allow custom level formatters");let q;if(X.customLevels)q=X.useOnlyCustomLevels?X.customLevels:Object.assign({},X.levels,X.customLevels);Y=WV({caller:Q,...X.transport,levels:q})}if(X=Object.assign({},$,X),X.serializers=Object.assign({},$.serializers,X.serializers),X.formatters=Object.assign({},$.formatters,X.formatters),X.prettyPrint)throw Error("prettyPrint option is no longer supported, see the pino-pretty package (https://github.com/pinojs/pino-pretty)");let{enabled:W,onChild:G}=X;if(W===!1)X.level="silent";if(!G)X.onChild=O$;if(!Y)if(!BV(process.stdout))Y=g9({fd:process.stdout.fd||1});else Y=process.stdout;return{opts:X,stream:Y}}}function VV($,H){try{return JSON.stringify($)}catch(J){try{return(H||this[Y6])($)}catch(Q){return'"[unable to serialize, circular reference is too complex to analyze]"'}}}function _V($,H,J){return{level:$,bindings:H,log:J}}function FV($){let H=Number($);if(typeof $==="string"&&Number.isFinite(H))return H;if($===void 0)return 1;return $}yH.exports={noop:O$,buildSafeSonicBoom:g9,asChindings:UV,asJson:qV,genLog:GV,createArgsNormalizer:DV,stringify:VV,buildFormatters:_V,normalizeDestFileDescriptor:FV}});var u9=N((WP,uH)=>{var zV={trace:10,debug:20,info:30,warn:40,error:50,fatal:60},NV={ASC:"ASC",DESC:"DESC"};uH.exports={DEFAULT_LEVELS:zV,SORTING_ORDER:NV}});var q6=N((GP,lH)=>{var{lsCacheSym:AV,levelValSym:W6,useOnlyCustomLevelsSym:RV,streamSym:EV,formattersSym:jV,hooksSym:OV,levelCompSym:mH}=E$(),{noop:ZV,genLog:c0}=y9(),{DEFAULT_LEVELS:q0,SORTING_ORDER:dH}=u9(),cH={fatal:($)=>{let H=c0(q0.fatal,$);return function(...J){let Q=this[EV];if(H.call(this,...J),typeof Q.flushSync==="function")try{Q.flushSync()}catch(X){}}},error:($)=>c0(q0.error,$),warn:($)=>c0(q0.warn,$),info:($)=>c0(q0.info,$),debug:($)=>c0(q0.debug,$),trace:($)=>c0(q0.trace,$)},G6=Object.keys(q0).reduce(($,H)=>{return $[q0[H]]=H,$},{}),LV=Object.keys(G6).reduce(($,H)=>{return $[H]='{"level":'+Number(H),$},{});function MV($){let H=$[jV].level,{labels:J}=$.levels,Q={};for(let X in J){let Y=H(J[X],Number(X));Q[X]=JSON.stringify(Y).slice(0,-1)}return $[AV]=Q,$}function SV($,H){if(H)return!1;switch($){case"fatal":case"error":case"warn":case"info":case"debug":case"trace":return!0;default:return!1}}function CV($){let{labels:H,values:J}=this.levels;if(typeof $==="number"){if(H[$]===void 0)throw Error("unknown level value"+$);$=H[$]}if(J[$]===void 0)throw Error("unknown level "+$);let Q=this[W6],X=this[W6]=J[$],Y=this[RV],W=this[mH],G=this[OV].logMethod;for(let q in J){if(W(J[q],X)===!1){this[q]=ZV;continue}this[q]=SV(q,Y)?cH[q](G):c0(J[q],G)}this.emit("level-change",$,X,H[Q],Q,this)}function PV($){let{levels:H,levelVal:J}=this;return H&&H.labels?H.labels[J]:""}function KV($){let{values:H}=this.levels,J=H[$];return J!==void 0&&this[mH](J,this[W6])}function IV($,H,J){if($===dH.DESC)return H<=J;return H>=J}function TV($){if(typeof $==="string")return IV.bind(null,$);return $}function bV($=null,H=!1){let J=$?Object.keys($).reduce((Y,W)=>{return Y[$[W]]=W,Y},{}):null,Q=Object.assign(Object.create(Object.prototype,{Infinity:{value:"silent"}}),H?null:G6,J),X=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),H?null:q0,$);return{labels:Q,values:X}}function fV($,H,J){if(typeof $==="number"){if(![].concat(Object.keys(H||{}).map((Y)=>H[Y]),J?[]:Object.keys(G6).map((Y)=>+Y),1/0).includes($))throw Error(`default level:${$} must be included in custom levels`);return}let Q=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),J?null:q0,H);if(!($ in Q))throw Error(`default level:${$} must be included in custom levels`)}function xV($,H){let{labels:J,values:Q}=$;for(let X in H){if(X in Q)throw Error("levels cannot be overridden");if(H[X]in J)throw Error("pre-existing level values cannot be used for new levels")}}function kV($){if(typeof $==="function")return;if(typeof $==="string"&&Object.values(dH).includes($))return;throw Error('Levels comparison should be one of "ASC", "DESC" or "function" type')}lH.exports={initialLsCache:LV,genLsCache:MV,levelMethods:cH,getLevel:PV,setLevel:CV,isLevelEnabled:KV,mappings:bV,assertNoLevelCollisions:xV,assertDefaultLevelFound:fV,genLevelComparison:TV,assertLevelComparison:kV}});var U6=N((qP,pH)=>{pH.exports={version:"10.1.0"}});var eH=N((UP,tH)=>{var{EventEmitter:hV}=require("node:events"),{lsCacheSym:vV,levelValSym:gV,setLevelSym:w6,getLevelSym:nH,chindingsSym:d9,mixinSym:yV,asJsonSym:sH,writeSym:uV,mixinMergeStrategySym:mV,timeSym:dV,timeSliceIndexSym:cV,streamSym:oH,serializersSym:l0,formattersSym:Z4,errorKeySym:lV,messageKeySym:pV,useOnlyCustomLevelsSym:nV,needsMetadataGsym:iV,redactFmtSym:sV,stringifySym:oV,formatOptsSym:rV,stringifiersSym:aV,msgPrefixSym:D6,hooksSym:tV}=E$(),{getLevel:eV,setLevel:$_,isLevelEnabled:H_,mappings:J_,initialLsCache:Q_,genLsCache:X_,assertNoLevelCollisions:Y_}=q6(),{asChindings:V6,asJson:W_,buildFormatters:B6,stringify:iH,noop:rH}=y9(),{version:G_}=U6(),q_=c8(),U_=class{},aH={constructor:U_,child:B_,bindings:w_,setBindings:D_,flush:F_,isLevelEnabled:H_,version:G_,get level(){return this[nH]()},set level($){this[w6]($)},get levelVal(){return this[gV]},set levelVal($){throw Error("levelVal is read-only")},get msgPrefix(){return this[D6]},get[Symbol.toStringTag](){return"Pino"},[vV]:Q_,[uV]:__,[sH]:W_,[nH]:eV,[w6]:$_};Object.setPrototypeOf(aH,hV.prototype);tH.exports=function(){return Object.create(aH)};var m9=($)=>$;function B_($,H){if(!$)throw Error("missing bindings for child Pino");let J=this[l0],Q=this[Z4],X=Object.create(this);if(H==null){if(X[Z4].bindings!==m9)X[Z4]=B6(Q.level,m9,Q.log);if(X[d9]=V6(X,$),this.onChild!==rH)this.onChild(X);return X}if(H.hasOwnProperty("serializers")===!0){X[l0]=Object.create(null);for(let U in J)X[l0][U]=J[U];let G=Object.getOwnPropertySymbols(J);for(var Y=0;Y<G.length;Y++){let U=G[Y];X[l0][U]=J[U]}for(let U in H.serializers)X[l0][U]=H.serializers[U];let q=Object.getOwnPropertySymbols(H.serializers);for(var W=0;W<q.length;W++){let U=q[W];X[l0][U]=H.serializers[U]}}else X[l0]=J;if(H.hasOwnProperty("formatters")){let{level:G,bindings:q,log:U}=H.formatters;X[Z4]=B6(G||Q.level,q||m9,U||Q.log)}else X[Z4]=B6(Q.level,m9,Q.log);if(H.hasOwnProperty("customLevels")===!0)Y_(this.levels,H.customLevels),X.levels=J_(H.customLevels,X[nV]),X_(X);if(typeof H.redact==="object"&&H.redact!==null||Array.isArray(H.redact)){X.redact=H.redact;let G=q_(X.redact,iH),q={stringify:G[sV]};X[oV]=iH,X[aV]=G,X[rV]=q}if(typeof H.msgPrefix==="string")X[D6]=(this[D6]||"")+H.msgPrefix;if(X[d9]=V6(X,$),H.level!==void 0&&H.level!==this.level||H.hasOwnProperty("customLevels")){let G=H.level||this.level;X[w6](G)}return this.onChild(X),X}function w_(){let H=`{${this[d9].substr(1)}}`,J=JSON.parse(H);return delete J.pid,delete J.hostname,J}function D_($){let H=V6(this,$);this[d9]=H}function V_($,H){return Object.assign(H,$)}function __($,H,J){let Q=this[dV](),X=this[yV],Y=this[lV],W=this[pV],G=this[mV]||V_,q,U=this[tV].streamWrite;if($===void 0||$===null)q={};else if($ instanceof Error){if(q={[Y]:$},H===void 0)H=$.message}else if(q=$,H===void 0&&$[W]===void 0&&$[Y])H=$[Y].message;if(X)q=G(q,X(q,J,this));let B=this[sH](q,H,J,Q),w=this[oH];if(w[iV]===!0)w.lastLevel=J,w.lastObj=q,w.lastMsg=H,w.lastTime=Q.slice(this[cV]),w.lastLogger=this;w.write(U?U(B):B)}function F_($){if($!=null&&typeof $!=="function")throw Error("callback must be a function");let H=this[oH];if(typeof H.flush==="function")H.flush($||rH);else if($)$()}});var QJ=N((N6,JJ)=>{var{hasOwnProperty:L4}=Object.prototype,n0=z6();n0.configure=z6;n0.stringify=n0;n0.default=n0;N6.stringify=n0;N6.configure=z6;JJ.exports=n0;var z_=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function S0($){if($.length<5000&&!z_.test($))return`"${$}"`;return JSON.stringify($)}function _6($,H){if($.length>200||H)return $.sort(H);for(let J=1;J<$.length;J++){let Q=$[J],X=J;while(X!==0&&$[X-1]>Q)$[X]=$[X-1],X--;$[X]=Q}return $}var N_=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function F6($){return N_.call($)!==void 0&&$.length!==0}function $J($,H,J){if($.length<J)J=$.length;let Q=H===","?"":" ",X=`"0":${Q}${$[0]}`;for(let Y=1;Y<J;Y++)X+=`${H}"${Y}":${Q}${$[Y]}`;return X}function A_($){if(L4.call($,"circularValue")){let H=$.circularValue;if(typeof H==="string")return`"${H}"`;if(H==null)return H;if(H===Error||H===TypeError)return{toString(){throw TypeError("Converting circular structure to JSON")}};throw TypeError('The "circularValue" argument must be of type string or the value null or undefined')}return'"[Circular]"'}function R_($){let H;if(L4.call($,"deterministic")){if(H=$.deterministic,typeof H!=="boolean"&&typeof H!=="function")throw TypeError('The "deterministic" argument must be of type boolean or comparator function')}return H===void 0?!0:H}function E_($,H){let J;if(L4.call($,H)){if(J=$[H],typeof J!=="boolean")throw TypeError(`The "${H}" argument must be of type boolean`)}return J===void 0?!0:J}function HJ($,H){let J;if(L4.call($,H)){if(J=$[H],typeof J!=="number")throw TypeError(`The "${H}" argument must be of type number`);if(!Number.isInteger(J))throw TypeError(`The "${H}" argument must be an integer`);if(J<1)throw RangeError(`The "${H}" argument must be >= 1`)}return J===void 0?1/0:J}function p0($){if($===1)return"1 item";return`${$} items`}function j_($){let H=new Set;for(let J of $)if(typeof J==="string"||typeof J==="number")H.add(String(J));return H}function O_($){if(L4.call($,"strict")){let H=$.strict;if(typeof H!=="boolean")throw TypeError('The "strict" argument must be of type boolean');if(H)return(J)=>{let Q=`Object can not safely be stringified. Received type ${typeof J}`;if(typeof J!=="function")Q+=` (${J.toString()})`;throw Error(Q)}}}function z6($){$={...$};let H=O_($);if(H){if($.bigint===void 0)$.bigint=!1;if(!("circularValue"in $))$.circularValue=Error}let J=A_($),Q=E_($,"bigint"),X=R_($),Y=typeof X==="function"?X:void 0,W=HJ($,"maximumDepth"),G=HJ($,"maximumBreadth");function q(V,D,A,E,Z,M){let L=D[V];if(typeof L==="object"&&L!==null&&typeof L.toJSON==="function")L=L.toJSON(V);switch(L=E.call(D,V,L),typeof L){case"string":return S0(L);case"object":{if(L===null)return"null";if(A.indexOf(L)!==-1)return J;let b="",v=",",l=M;if(Array.isArray(L)){if(L.length===0)return"[]";if(W<A.length+1)return'"[Array]"';if(A.push(L),Z!=="")M+=Z,b+=`
|
|
4
4
|
${M}`,v=`,
|
|
5
5
|
${M}`;let X1=Math.min(L.length,G),I=0;for(;I<X1-1;I++){let E1=q(String(I),L,A,E,Z,M);b+=E1!==void 0?E1:"null",b+=v}let R1=q(String(I),L,A,E,Z,M);if(b+=R1!==void 0?R1:"null",L.length-1>G){let E1=L.length-G-1;b+=`${v}"... ${p0(E1)} not stringified"`}if(Z!=="")b+=`
|
|
6
6
|
${l}`;return A.pop(),`[${b}]`}let i=Object.keys(L),J1=i.length;if(J1===0)return"{}";if(W<A.length+1)return'"[Object]"';let d="",W1="";if(Z!=="")M+=Z,v=`,
|
|
@@ -16,15 +16,15 @@ ${L}`;return A.pop(),`{${b}}`}case"number":return isFinite(D)?String(D):H?H(D):"
|
|
|
16
16
|
${Z}`,W1=`,
|
|
17
17
|
${Z}`,G1=Math.min(D.length,G),X1=0;for(;X1<G1-1;X1++){let R1=B(String(X1),D[X1],A,E,Z);d+=R1!==void 0?R1:"null",d+=W1}let I=B(String(X1),D[X1],A,E,Z);if(d+=I!==void 0?I:"null",D.length-1>G){let R1=D.length-G-1;d+=`${W1}"... ${p0(R1)} not stringified"`}return d+=`
|
|
18
18
|
${M}`,A.pop(),`[${d}]`}let L=Object.keys(D),b=L.length;if(b===0)return"{}";if(W<A.length+1)return'"[Object]"';Z+=E;let v=`,
|
|
19
|
-
${Z}`,l="",i="",J1=Math.min(b,G);if(F6(D))l
|
|
19
|
+
${Z}`,l="",i="",J1=Math.min(b,G);if(F6(D))l+=$J(D,v,G),L=L.slice(D.length),J1-=D.length,i=v;if(X)L=_6(L,Y);A.push(D);for(let d=0;d<J1;d++){let W1=L[d],G1=B(W1,D[W1],A,E,Z);if(G1!==void 0)l+=`${i}${S0(W1)}: ${G1}`,i=v}if(b>G){let d=b-G;l+=`${i}"...": "${p0(d)} not stringified"`,i=v}if(i!=="")l=`
|
|
20
20
|
${Z}${l}
|
|
21
|
-
${M}`;return A.pop(),`{${l}}`}case"number":return isFinite(D)?String(D):H?H(D):"null";case"boolean":return D===!0?"true":"false";case"undefined":return;case"bigint":if(Q)return String(D);default:return H?H(D):void 0}}function w(V,D,A){switch(typeof D){case"string":return S0(D);case"object":{if(D===null)return"null";if(typeof D.toJSON==="function"){if(D=D.toJSON(V),typeof D!=="object")return w(V,D,A);if(D===null)return"null"}if(A.indexOf(D)!==-1)return J;let E="",Z=D.length!==void 0;if(Z&&Array.isArray(D)){if(D.length===0)return"[]";if(W<A.length+1)return'"[Array]"';A.push(D);let l=Math.min(D.length,G),i=0;for(;i<l-1;i++){let d=w(String(i),D[i],A);E+=d!==void 0?d:"null",E+=","}let J1=w(String(i),D[i],A);if(E+=J1!==void 0?J1:"null",D.length-1>G){let d=D.length-G-1;E+=`,"... ${p0(d)} not stringified"`}return A.pop(),`[${E}]`}let M=Object.keys(D),L=M.length;if(L===0)return"{}";if(W<A.length+1)return'"[Object]"';let b="",v=Math.min(L,G);if(Z&&F6(D))E
|
|
21
|
+
${M}`;return A.pop(),`{${l}}`}case"number":return isFinite(D)?String(D):H?H(D):"null";case"boolean":return D===!0?"true":"false";case"undefined":return;case"bigint":if(Q)return String(D);default:return H?H(D):void 0}}function w(V,D,A){switch(typeof D){case"string":return S0(D);case"object":{if(D===null)return"null";if(typeof D.toJSON==="function"){if(D=D.toJSON(V),typeof D!=="object")return w(V,D,A);if(D===null)return"null"}if(A.indexOf(D)!==-1)return J;let E="",Z=D.length!==void 0;if(Z&&Array.isArray(D)){if(D.length===0)return"[]";if(W<A.length+1)return'"[Array]"';A.push(D);let l=Math.min(D.length,G),i=0;for(;i<l-1;i++){let d=w(String(i),D[i],A);E+=d!==void 0?d:"null",E+=","}let J1=w(String(i),D[i],A);if(E+=J1!==void 0?J1:"null",D.length-1>G){let d=D.length-G-1;E+=`,"... ${p0(d)} not stringified"`}return A.pop(),`[${E}]`}let M=Object.keys(D),L=M.length;if(L===0)return"{}";if(W<A.length+1)return'"[Object]"';let b="",v=Math.min(L,G);if(Z&&F6(D))E+=$J(D,",",G),M=M.slice(D.length),v-=D.length,b=",";if(X)M=_6(M,Y);A.push(D);for(let l=0;l<v;l++){let i=M[l],J1=w(i,D[i],A);if(J1!==void 0)E+=`${b}${S0(i)}:${J1}`,b=","}if(L>G){let l=L-G;E+=`${b}"...":"${p0(l)} not stringified"`}return A.pop(),`{${E}}`}case"number":return isFinite(D)?String(D):H?H(D):"null";case"boolean":return D===!0?"true":"false";case"undefined":return;case"bigint":if(Q)return String(D);default:return H?H(D):void 0}}function _(V,D,A){if(arguments.length>1){let E="";if(typeof A==="number")E=" ".repeat(Math.min(A,10));else if(typeof A==="string")E=A.slice(0,10);if(D!=null){if(typeof D==="function")return q("",{"":V},[],D,E,"");if(Array.isArray(D))return U("",V,[],j_(D),E,"")}if(E.length!==0)return B("",V,[],E,"")}return w("",V,[])}return _}});var GJ=N((BP,WJ)=>{var A6=Symbol.for("pino.metadata"),{DEFAULT_LEVELS:YJ}=u9(),Z_=YJ.info;function L_($,H){$=$||[],H=H||{dedupe:!1};let J=Object.create(YJ);if(J.silent=1/0,H.levels&&typeof H.levels==="object")Object.keys(H.levels).forEach((w)=>{J[w]=H.levels[w]});let Q={write:X,add:G,remove:q,emit:Y,flushSync:W,end:U,minLevel:0,lastId:0,streams:[],clone:B,[A6]:!0,streamLevels:J};if(Array.isArray($))$.forEach(G,Q);else G.call(Q,$);return $=null,Q;function X(w){let _,V=this.lastLevel,{streams:D}=this,A=0,E;for(let Z=M_(D.length,H.dedupe);C_(Z,D.length,H.dedupe);Z=S_(Z,H.dedupe))if(_=D[Z],_.level<=V){if(A!==0&&A!==_.level)break;if(E=_.stream,E[A6]){let{lastTime:M,lastMsg:L,lastObj:b,lastLogger:v}=this;E.lastLevel=V,E.lastTime=M,E.lastMsg=L,E.lastObj=b,E.lastLogger=v}if(E.write(w),H.dedupe)A=_.level}else if(!H.dedupe)break}function Y(...w){for(let{stream:_}of this.streams)if(typeof _.emit==="function")_.emit(...w)}function W(){for(let{stream:w}of this.streams)if(typeof w.flushSync==="function")w.flushSync()}function G(w){if(!w)return Q;let _=typeof w.write==="function"||w.stream,V=w.write?w:w.stream;if(!_)throw Error("stream object needs to implement either StreamEntry or DestinationStream interface");let{streams:D,streamLevels:A}=this,E;if(typeof w.levelVal==="number")E=w.levelVal;else if(typeof w.level==="string")E=A[w.level];else if(typeof w.level==="number")E=w.level;else E=Z_;let Z={stream:V,level:E,levelVal:void 0,id:++Q.lastId};return D.unshift(Z),D.sort(XJ),this.minLevel=D[0].level,Q}function q(w){let{streams:_}=this,V=_.findIndex((D)=>D.id===w);if(V>=0)_.splice(V,1),_.sort(XJ),this.minLevel=_.length>0?_[0].level:-1;return Q}function U(){for(let{stream:w}of this.streams){if(typeof w.flushSync==="function")w.flushSync();w.end()}}function B(w){let _=Array(this.streams.length);for(let V=0;V<_.length;V++)_[V]={level:w,stream:this.streams[V].stream};return{write:X,add:G,remove:q,minLevel:w,streams:_,clone:B,emit:Y,flushSync:W,[A6]:!0}}}function XJ($,H){return $.level-H.level}function M_($,H){return H?$-1:0}function S_($,H){return H?$-1:$+1}function C_($,H,J){return J?$>=0:$<H}WJ.exports=L_});var jJ=N((wP,k1)=>{var P_=require("node:os"),FJ=y8(),K_=u8(),I_=c8(),zJ=JH(),T_=eH(),NJ=E$(),{configure:b_}=QJ(),{assertDefaultLevelFound:f_,mappings:AJ,genLsCache:x_,genLevelComparison:k_,assertLevelComparison:h_}=q6(),{DEFAULT_LEVELS:RJ,SORTING_ORDER:v_}=u9(),{createArgsNormalizer:g_,asChindings:y_,buildSafeSonicBoom:qJ,buildFormatters:u_,stringify:R6,normalizeDestFileDescriptor:UJ,noop:m_}=y9(),{version:d_}=U6(),{chindingsSym:BJ,redactFmtSym:c_,serializersSym:wJ,timeSym:l_,timeSliceIndexSym:p_,streamSym:n_,stringifySym:DJ,stringifySafeSym:E6,stringifiersSym:VJ,setLevelSym:i_,endSym:s_,formatOptsSym:o_,messageKeySym:r_,errorKeySym:a_,nestedKeySym:t_,mixinSym:e_,levelCompSym:$F,useOnlyCustomLevelsSym:HF,formattersSym:_J,hooksSym:JF,nestedKeyStrSym:QF,mixinMergeStrategySym:XF,msgPrefixSym:YF}=NJ,{epochTime:EJ,nullTime:WF}=zJ,{pid:GF}=process,qF=P_.hostname(),UF=FJ.err,BF={level:"info",levelComparison:v_.ASC,levels:RJ,messageKey:"msg",errorKey:"err",nestedKey:null,enabled:!0,base:{pid:GF,hostname:qF},serializers:Object.assign(Object.create(null),{err:UF}),formatters:Object.assign(Object.create(null),{bindings($){return $},level($,H){return{level:H}}}),hooks:{logMethod:void 0,streamWrite:void 0},timestamp:EJ,name:void 0,redact:null,customLevels:null,useOnlyCustomLevels:!1,depthLimit:5,edgeLimit:100},wF=g_(BF),DF=Object.assign(Object.create(null),FJ);function j6(...$){let H={},{opts:J,stream:Q}=wF(H,K_(),...$);if(J.level&&typeof J.level==="string"&&RJ[J.level.toLowerCase()]!==void 0)J.level=J.level.toLowerCase();let{redact:X,crlf:Y,serializers:W,timestamp:G,messageKey:q,errorKey:U,nestedKey:B,base:w,name:_,level:V,customLevels:D,levelComparison:A,mixin:E,mixinMergeStrategy:Z,useOnlyCustomLevels:M,formatters:L,hooks:b,depthLimit:v,edgeLimit:l,onChild:i,msgPrefix:J1}=J,d=b_({maximumDepth:v,maximumBreadth:l}),W1=u_(L.level,L.bindings,L.log),G1=R6.bind({[E6]:d}),X1=X?I_(X,G1):{},I=X?{stringify:X1[c_]}:{stringify:G1},R1="}"+(Y?`\r
|
|
22
22
|
`:`
|
|
23
|
-
`),E1=y_.bind(null,{[WJ]:"",[GJ]:W,[UJ]:X1,[qJ]:R6,[E6]:d,[BJ]:W1}),X0="";if(w!==null)if(_===void 0)X0=E1(w);else X0=E1(Object.assign({},w,{name:_}));let D4=G instanceof Function?G:G?zJ:WF,j9=D4().indexOf(":")+1;if(M&&!D)throw Error("customLevels is required if useOnlyCustomLevels is set true");if(E&&typeof E!=="function")throw Error(`Unknown mixin type "${typeof E}" - expected "function"`);if(J1&&typeof J1!=="string")throw Error(`Unknown msgPrefix type "${typeof J1}" - expected "string"`);f_(V,D,M);let V4=_J(D,M);if(typeof Q.emit==="function")Q.emit("message",{code:"PINO_CONFIG",config:{levels:V4,messageKey:q,errorKey:U}});h_(A);let O9=k_(A);return Object.assign(H,{levels:V4,[$F]:O9,[HF]:M,[n_]:Q,[l_]:D4,[p_]:j9,[qJ]:R6,[E6]:d,[UJ]:X1,[s_]:R1,[o_]:I,[r_]:q,[a_]:U,[t_]:B,[QF]:B?`,${JSON.stringify(B)}:{`:"",[GJ]:W,[e_]:E,[XF]:Z,[WJ]:X0,[BJ]:W1,[JF]:b,silent:m_,onChild:i,[YF]:J1}),Object.setPrototypeOf(H,T_()),x_(H),H[i_](V),H}k1.exports=j6;k1.exports.destination=($=process.stdout.fd)=>{if(typeof $==="object")return $.dest=YJ($.dest||process.stdout.fd),XJ($);else return XJ({dest:YJ($),minLength:0})};k1.exports.transport=J6();k1.exports.multistream=QJ();k1.exports.levels=_J();k1.exports.stdSerializers=DF;k1.exports.stdTimeFunctions=Object.assign({},DJ);k1.exports.symbols=VJ;k1.exports.version=d_;k1.exports.default=j6;k1.exports.pino=j6});var Z6=N((o)=>{Object.defineProperty(o,"__esModule",{value:!0});var VF=require("tty");function _F($){if($&&$.__esModule)return $;var H=Object.create(null);if($)Object.keys($).forEach(function(J){if(J!=="default"){var Q=Object.getOwnPropertyDescriptor($,J);Object.defineProperty(H,J,Q.get?Q:{enumerable:!0,get:function(){return $[J]}})}});return H.default=$,Object.freeze(H)}var O6=_F(VF),{env:C0={},argv:RJ=[],platform:FF=""}=typeof process>"u"?{}:process,zF="NO_COLOR"in C0||RJ.includes("--no-color"),NF="FORCE_COLOR"in C0||RJ.includes("--color"),AF=FF==="win32",EJ=C0.TERM==="dumb",RF=O6&&O6.isatty&&O6.isatty(1)&&C0.TERM&&!EJ,EF="CI"in C0&&(("GITHUB_ACTIONS"in C0)||("GITLAB_CI"in C0)||("CIRCLECI"in C0)),jJ=!zF&&(NF||AF&&!EJ||RF||EF),OJ=($,H,J,Q,X=H.substring(0,$)+Q,Y=H.substring($+J.length),W=Y.indexOf(J))=>X+(W<0?Y:OJ(W,Y,J,Q)),jF=($,H,J,Q,X)=>$<0?J+H+Q:J+OJ($,H,Q,X)+Q,OF=($,H,J=$,Q=$.length+1)=>(X)=>X||!(X===""||X===void 0)?jF((""+X).indexOf(H,Q),X,$,H,J):"",t=($,H,J)=>OF(`\x1B[${$}m`,`\x1B[${H}m`,J),AJ={reset:t(0,0),bold:t(1,22,"\x1B[22m\x1B[1m"),dim:t(2,22,"\x1B[22m\x1B[2m"),italic:t(3,23),underline:t(4,24),inverse:t(7,27),hidden:t(8,28),strikethrough:t(9,29),black:t(30,39),red:t(31,39),green:t(32,39),yellow:t(33,39),blue:t(34,39),magenta:t(35,39),cyan:t(36,39),white:t(37,39),gray:t(90,39),bgBlack:t(40,49),bgRed:t(41,49),bgGreen:t(42,49),bgYellow:t(43,49),bgBlue:t(44,49),bgMagenta:t(45,49),bgCyan:t(46,49),bgWhite:t(47,49),blackBright:t(90,39),redBright:t(91,39),greenBright:t(92,39),yellowBright:t(93,39),blueBright:t(94,39),magentaBright:t(95,39),cyanBright:t(96,39),whiteBright:t(97,39),bgBlackBright:t(100,49),bgRedBright:t(101,49),bgGreenBright:t(102,49),bgYellowBright:t(103,49),bgBlueBright:t(104,49),bgMagentaBright:t(105,49),bgCyanBright:t(106,49),bgWhiteBright:t(107,49)},ZJ=({useColor:$=jJ}={})=>$?AJ:Object.keys(AJ).reduce((H,J)=>({...H,[J]:String}),{}),{reset:ZF,bold:LF,dim:MF,italic:SF,underline:CF,inverse:PF,hidden:KF,strikethrough:IF,black:TF,red:bF,green:fF,yellow:xF,blue:kF,magenta:hF,cyan:vF,white:gF,gray:yF,bgBlack:uF,bgRed:mF,bgGreen:dF,bgYellow:cF,bgBlue:lF,bgMagenta:pF,bgCyan:nF,bgWhite:iF,blackBright:sF,redBright:oF,greenBright:rF,yellowBright:aF,blueBright:tF,magentaBright:eF,cyanBright:$z,whiteBright:Hz,bgBlackBright:Jz,bgRedBright:Qz,bgGreenBright:Xz,bgYellowBright:Yz,bgBlueBright:Wz,bgMagentaBright:Gz,bgCyanBright:qz,bgWhiteBright:Uz}=ZJ();o.bgBlack=uF;o.bgBlackBright=Jz;o.bgBlue=lF;o.bgBlueBright=Wz;o.bgCyan=nF;o.bgCyanBright=qz;o.bgGreen=dF;o.bgGreenBright=Xz;o.bgMagenta=pF;o.bgMagentaBright=Gz;o.bgRed=mF;o.bgRedBright=Qz;o.bgWhite=iF;o.bgWhiteBright=Uz;o.bgYellow=cF;o.bgYellowBright=Yz;o.black=TF;o.blackBright=sF;o.blue=kF;o.blueBright=tF;o.bold=LF;o.createColors=ZJ;o.cyan=vF;o.cyanBright=$z;o.dim=MF;o.gray=yF;o.green=fF;o.greenBright=rF;o.hidden=KF;o.inverse=PF;o.isColorSupported=jJ;o.italic=SF;o.magenta=hF;o.magentaBright=eF;o.red=bF;o.redBright=oF;o.reset=ZF;o.strikethrough=IF;o.underline=CF;o.white=gF;o.whiteBright=Hz;o.yellow=xF;o.yellowBright=aF});var SJ=N((VP,MJ)=>{MJ.exports=LJ;function LJ($,H){if($&&H)return LJ($)(H);if(typeof $!=="function")throw TypeError("need wrapper function");return Object.keys($).forEach(function(Q){J[Q]=$[Q]}),J;function J(){var Q=Array(arguments.length);for(var X=0;X<Q.length;X++)Q[X]=arguments[X];var Y=$.apply(this,Q),W=Q[Q.length-1];if(typeof Y==="function"&&Y!==W)Object.keys(W).forEach(function(G){Y[G]=W[G]});return Y}}});var M6=N((_P,L6)=>{var CJ=SJ();L6.exports=CJ(c9);L6.exports.strict=CJ(PJ);c9.proto=c9(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return c9(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return PJ(this)},configurable:!0})});function c9($){var H=function(){if(H.called)return H.value;return H.called=!0,H.value=$.apply(this,arguments)};return H.called=!1,H}function PJ($){var H=function(){if(H.called)throw Error(H.onceError);return H.called=!0,H.value=$.apply(this,arguments)},J=$.name||"Function wrapped with `once`";return H.onceError=J+" shouldn't be called more than once",H.called=!1,H}});var TJ=N((FP,IJ)=>{var Bz=M6(),wz=function(){},Dz=global.Bare?queueMicrotask:process.nextTick.bind(process),Vz=function($){return $.setHeader&&typeof $.abort==="function"},_z=function($){return $.stdio&&Array.isArray($.stdio)&&$.stdio.length===3},KJ=function($,H,J){if(typeof H==="function")return KJ($,null,H);if(!H)H={};J=Bz(J||wz);var{_writableState:Q,_readableState:X}=$,Y=H.readable||H.readable!==!1&&$.readable,W=H.writable||H.writable!==!1&&$.writable,G=!1,q=function(){if(!$.writable)U()},U=function(){if(W=!1,!Y)J.call($)},B=function(){if(Y=!1,!W)J.call($)},w=function(E){J.call($,E?Error("exited with error code: "+E):null)},_=function(E){J.call($,E)},V=function(){Dz(D)},D=function(){if(G)return;if(Y&&!(X&&(X.ended&&!X.destroyed)))return J.call($,Error("premature close"));if(W&&!(Q&&(Q.ended&&!Q.destroyed)))return J.call($,Error("premature close"))},A=function(){$.req.on("finish",U)};if(Vz($))if($.on("complete",U),$.on("abort",V),$.req)A();else $.on("request",A);else if(W&&!Q)$.on("end",q),$.on("close",q);if(_z($))$.on("exit",w);if($.on("end",B),$.on("finish",U),H.error!==!1)$.on("error",_);return $.on("close",V),function(){if(G=!0,$.removeListener("complete",U),$.removeListener("abort",V),$.removeListener("request",A),$.req)$.req.removeListener("finish",U);$.removeListener("end",q),$.removeListener("close",q),$.removeListener("finish",U),$.removeListener("exit",w),$.removeListener("end",B),$.removeListener("error",_),$.removeListener("close",V)}};IJ.exports=KJ});var xJ=N((zP,fJ)=>{var Fz=M6(),zz=TJ(),l9;try{l9=require("fs")}catch($){}var M4=function(){},Nz=typeof process>"u"?!1:/^v?\.0/.test(process.version),p9=function($){return typeof $==="function"},Az=function($){if(!Nz)return!1;if(!l9)return!1;return($ instanceof(l9.ReadStream||M4)||$ instanceof(l9.WriteStream||M4))&&p9($.close)},Rz=function($){return $.setHeader&&p9($.abort)},Ez=function($,H,J,Q){Q=Fz(Q);var X=!1;$.on("close",function(){X=!0}),zz($,{readable:H,writable:J},function(W){if(W)return Q(W);X=!0,Q()});var Y=!1;return function(W){if(X)return;if(Y)return;if(Y=!0,Az($))return $.close(M4);if(Rz($))return $.abort();if(p9($.destroy))return $.destroy();Q(W||Error("stream was destroyed"))}},bJ=function($){$()},jz=function($,H){return $.pipe(H)},Oz=function(){var $=Array.prototype.slice.call(arguments),H=p9($[$.length-1]||M4)&&$.pop()||M4;if(Array.isArray($[0]))$=$[0];if($.length<2)throw Error("pump requires two streams per minimum");var J,Q=$.map(function(X,Y){var W=Y<$.length-1,G=Y>0;return Ez(X,W,G,function(q){if(!J)J=q;if(q)Q.forEach(bJ);if(W)return;Q.forEach(bJ),H(J)})});return $.reduce(jz)};fJ.exports=Oz});var gJ=N((NP,vJ)=>{var{Transform:Zz}=require("stream"),{StringDecoder:Lz}=require("string_decoder"),P0=Symbol("last"),n9=Symbol("decoder");function Mz($,H,J){let Q;if(this.overflow){if(Q=this[n9].write($).split(this.matcher),Q.length===1)return J();Q.shift(),this.overflow=!1}else this[P0]+=this[n9].write($),Q=this[P0].split(this.matcher);this[P0]=Q.pop();for(let X=0;X<Q.length;X++)try{hJ(this,this.mapper(Q[X]))}catch(Y){return J(Y)}if(this.overflow=this[P0].length>this.maxLength,this.overflow&&!this.skipOverflow){J(Error("maximum buffer reached"));return}J()}function Sz($){if(this[P0]+=this[n9].end(),this[P0])try{hJ(this,this.mapper(this[P0]))}catch(H){return $(H)}$()}function hJ($,H){if(H!==void 0)$.push(H)}function kJ($){return $}function Cz($,H,J){switch($=$||/\r?\n/,H=H||kJ,J=J||{},arguments.length){case 1:if(typeof $==="function")H=$,$=/\r?\n/;else if(typeof $==="object"&&!($ instanceof RegExp)&&!$[Symbol.split])J=$,$=/\r?\n/;break;case 2:if(typeof $==="function")J=H,H=$,$=/\r?\n/;else if(typeof H==="object")J=H,H=kJ}J=Object.assign({},J),J.autoDestroy=!0,J.transform=Mz,J.flush=Sz,J.readableObjectMode=!0;let Q=new Zz(J);return Q[P0]="",Q[n9]=new Lz("utf8"),Q.matcher=$,Q.mapper=H,Q.maxLength=J.maxLength,Q.skipOverflow=J.skipOverflow||!1,Q.overflow=!1,Q._destroy=function(X,Y){this._writableState.errorEmitted=!1,Y(X)},Q}vJ.exports=Cz});var cJ=N((AP,dJ)=>{var yJ=Symbol.for("pino.metadata"),Pz=gJ(),{Duplex:Kz}=require("stream"),{parentPort:uJ,workerData:mJ}=require("worker_threads");function Iz(){let $,H,J=new Promise((Q,X)=>{$=Q,H=X});return J.resolve=$,J.reject=H,J}dJ.exports=function(H,J={}){let Q=J.expectPinoConfig===!0&&mJ?.workerData?.pinoWillSendConfig===!0,X=J.parse==="lines",Y=typeof J.parseLine==="function"?J.parseLine:JSON.parse,W=J.close||Tz,G=Pz(function(U){let B;try{B=Y(U)}catch(w){this.emit("unknown",U,w);return}if(B===null){this.emit("unknown",U,"Null value ignored");return}if(typeof B!=="object")B={data:B,time:Date.now()};if(G[yJ])G.lastTime=B.time,G.lastLevel=B.level,G.lastObj=B;if(X)return U;return B},{autoDestroy:!0});if(G._destroy=function(U,B){let w=W(U,B);if(w&&typeof w.then==="function")w.then(B,B)},J.expectPinoConfig===!0&&mJ?.workerData?.pinoWillSendConfig!==!0)setImmediate(()=>{G.emit("error",Error("This transport is not compatible with the current version of pino. Please upgrade pino to the latest version."))});if(J.metadata!==!1)G[yJ]=!0,G.lastTime=0,G.lastLevel=0,G.lastObj=null;if(Q){let U={},B=Iz();return uJ.on("message",function w(_){if(_.code==="PINO_CONFIG")U=_.config,B.resolve(),uJ.off("message",w)}),Object.defineProperties(G,{levels:{get(){return U.levels}},messageKey:{get(){return U.messageKey}},errorKey:{get(){return U.errorKey}}}),B.then(q)}return q();function q(){let U=H(G);if(U&&typeof U.catch==="function")U.catch((B)=>{G.destroy(B)}),U=null;else if(J.enablePipelining&&U)return Kz.from({writable:G,readable:U});return G}};function Tz($,H){process.nextTick(H,$)}});var A0=N((RP,lJ)=>{lJ.exports={DATE_FORMAT:"yyyy-mm-dd HH:MM:ss.l o",DATE_FORMAT_SIMPLE:"HH:MM:ss.l",ERROR_LIKE_KEYS:["err","error"],MESSAGE_KEY:"msg",LEVEL_KEY:"level",LEVEL_LABEL:"levelLabel",TIMESTAMP_KEY:"time",LEVELS:{default:"USERLVL",60:"FATAL",50:"ERROR",40:"WARN",30:"INFO",20:"DEBUG",10:"TRACE"},LEVEL_NAMES:{fatal:60,error:50,warn:40,info:30,debug:20,trace:10},LOGGER_KEYS:["pid","hostname","name","level","time","timestamp","caller"]}});var i9=N((EP,iJ)=>{iJ.exports=bz;var{LEVELS:pJ,LEVEL_NAMES:nJ}=A0();function bz($,H,J){let Q=$?H||pJ:Object.assign({},pJ,H),X=$?J||nJ:Object.assign({},nJ,J);return function(Y){let W="default";if(Number.isInteger(+Y))W=Object.prototype.hasOwnProperty.call(Q,Y)?Y:W;else W=Object.prototype.hasOwnProperty.call(X,Y.toLowerCase())?X[Y.toLowerCase()]:W;return[Q[W],W]}}});var K6=N((jP,aJ)=>{var U0=($)=>$,s9={default:U0,60:U0,50:U0,40:U0,30:U0,20:U0,10:U0,message:U0,greyMessage:U0,property:U0},{createColors:sJ}=Z6(),fz=i9(),C4=sJ({useColor:!0}),{white:S6,bgRed:xz,red:kz,yellow:hz,green:vz,blue:gz,gray:C6,cyan:oJ,magenta:rJ}=C4,S4={default:S6,60:xz,50:kz,40:hz,30:vz,20:gz,10:C6,message:oJ,greyMessage:C6,property:rJ};function yz($){return $.reduce(function(H,[J,Q]){return H[J]=typeof C4[Q]==="function"?C4[Q]:S6,H},{default:S6,message:oJ,greyMessage:C6,property:rJ})}function P6($){return function(H,J,{customLevels:Q,customLevelNames:X}={}){let[Y,W]=fz($,Q,X)(H);return Object.prototype.hasOwnProperty.call(J,W)?J[W](Y):J.default(Y)}}function uz($){let H=P6($),J=function(Q,X){return H(Q,s9,X)};return J.message=s9.message,J.greyMessage=s9.greyMessage,J.property=s9.property,J.colors=sJ({useColor:!1}),J}function mz($){let H=P6($),J=function(Q,X){return H(Q,S4,X)};return J.message=S4.message,J.property=S4.property,J.greyMessage=S4.greyMessage,J.colors=C4,J}function dz($,H){let J=yz($),Q=H?J:Object.assign({},S4,J),X=P6(H),Y=function(W,G){return X(W,Q,G)};return Y.colors=C4,Y.message=Y.message||Q.message,Y.property=Y.property||Q.property,Y.greyMessage=Y.greyMessage||Q.greyMessage,Y}aJ.exports=function(H=!1,J,Q){if(H&&J!==void 0)return dz(J,Q);else if(H)return mz(Q);return uz(Q)}});var I6=N((OP,tJ)=>{tJ.exports=function(){}});var $Q=N((ZP,eJ)=>{eJ.exports=pz;var{isMainThread:cz}=require("node:worker_threads"),lz=s8(),o9=I6();function pz($){let H=new lz($);if(H.on("error",J),!$.sync&&cz)nz(H);return H;function J(Q){if(Q.code==="EPIPE"){H.write=o9,H.end=o9,H.flushSync=o9,H.destroy=o9;return}H.removeListener("error",J)}}function nz($){if(global.WeakRef&&global.WeakMap&&global.FinalizationRegistry){let H=f9();H.register($,iz),$.on("close",function(){H.unregister($)})}}function iz($,H){if($.destroyed)return;if(H==="beforeExit")$.flush(),$.on("drain",function(){$.end()});else $.flushSync()}});var r9=N((LP,HQ)=>{HQ.exports=sz;function sz($){return $ instanceof Date&&!Number.isNaN($.getTime())}});var T6=N((MP,JQ)=>{JQ.exports=rz;var oz=r9();function rz($){let H=new Date($);if(oz(H))return H;return H=new Date(+$),H}});var a9=N((SP,QQ)=>{QQ.exports=az;function az($){let H=[],J=!1,Q="";for(let X=0;X<$.length;X++){let Y=$.charAt(X);if(Y==="\\"){J=!0;continue}if(J){J=!1,Q+=Y;continue}if(Y==="."){H.push(Q),Q="";continue}Q+=Y}if(Q.length)H.push(Q);return H}});var Z$=N((CP,XQ)=>{XQ.exports=ez;var tz=a9();function ez($,H){let J=Array.isArray(H)?H:tz(H);for(let Q of J){if(!Object.prototype.hasOwnProperty.call($,Q))return;$=$[Q]}return $}});var b6=N((PP,YQ)=>{YQ.exports=JN;var $N=Z$(),HN=a9();function JN($,H){let J=HN(H),Q=J.pop();if($=$N($,J),$!==null&&typeof $==="object"&&Object.prototype.hasOwnProperty.call($,Q))delete $[Q]}});var zQ=N((L$)=>{Object.defineProperty(L$,"__esModule",{value:!0});var QN=Function.prototype.toString,f6=Object.create,XN=Object.prototype.toString,YN=function(){function $(){this._keys=[],this._values=[]}return $.prototype.has=function(H){return!!~this._keys.indexOf(H)},$.prototype.get=function(H){return this._values[this._keys.indexOf(H)]},$.prototype.set=function(H,J){this._keys.push(H),this._values.push(J)},$}();function WN(){return new YN}function GN(){return new WeakMap}var qN=typeof WeakMap<"u"?GN:WN;function k6($){if(!$)return f6(null);var H=$.constructor;if(H===Object)return $===Object.prototype?{}:f6($);if(H&&~QN.call(H).indexOf("[native code]"))try{return new H}catch(J){}return f6($)}function UN($){var H="";if($.global)H+="g";if($.ignoreCase)H+="i";if($.multiline)H+="m";if($.unicode)H+="u";if($.sticky)H+="y";return H}function BN($){return $.flags}var wN=/test/g.flags==="g"?BN:UN;function WQ($){var H=XN.call($);return H.substring(8,H.length-1)}function DN($){return $[Symbol.toStringTag]||WQ($)}var VN=typeof Symbol<"u"?DN:WQ,_N=Object.defineProperty,FN=Object.getOwnPropertyDescriptor,GQ=Object.getOwnPropertyNames,h6=Object.getOwnPropertySymbols,qQ=Object.prototype,UQ=qQ.hasOwnProperty,zN=qQ.propertyIsEnumerable,BQ=typeof h6==="function";function NN($){return GQ($).concat(h6($))}var AN=BQ?NN:GQ;function e9($,H,J){var Q=AN($);for(var X=0,Y=Q.length,W=void 0,G=void 0;X<Y;++X){if(W=Q[X],W==="callee"||W==="caller")continue;if(G=FN($,W),!G){H[W]=J.copier($[W],J);continue}if(!G.get&&!G.set)G.value=J.copier(G.value,J);try{_N(H,W,G)}catch(q){H[W]=G.value}}return H}function RN($,H){var J=new H.Constructor;H.cache.set($,J);for(var Q=0,X=$.length;Q<X;++Q)J[Q]=H.copier($[Q],H);return J}function EN($,H){var J=new H.Constructor;return H.cache.set($,J),e9($,J,H)}function wQ($,H){return $.slice(0)}function jN($,H){return $.slice(0,$.size,$.type)}function ON($,H){return new H.Constructor(wQ($.buffer))}function ZN($,H){return new H.Constructor($.getTime())}function DQ($,H){var J=new H.Constructor;return H.cache.set($,J),$.forEach(function(Q,X){J.set(X,H.copier(Q,H))}),J}function LN($,H){return e9($,DQ($,H),H)}function MN($,H){var J=k6(H.prototype);H.cache.set($,J);for(var Q in $)if(UQ.call($,Q))J[Q]=H.copier($[Q],H);return J}function SN($,H){var J=k6(H.prototype);H.cache.set($,J);for(var Q in $)if(UQ.call($,Q))J[Q]=H.copier($[Q],H);var X=h6($);for(var Y=0,W=X.length,G=void 0;Y<W;++Y)if(G=X[Y],zN.call($,G))J[G]=H.copier($[G],H);return J}var CN=BQ?SN:MN;function PN($,H){var J=k6(H.prototype);return H.cache.set($,J),e9($,J,H)}function x6($,H){return new H.Constructor($.valueOf())}function KN($,H){var J=new H.Constructor($.source,wN($));return J.lastIndex=$.lastIndex,J}function t9($,H){return $}function VQ($,H){var J=new H.Constructor;return H.cache.set($,J),$.forEach(function(Q){J.add(H.copier(Q,H))}),J}function IN($,H){return e9($,VQ($,H),H)}var TN=Array.isArray,v6=Object.assign,bN=Object.getPrototypeOf||function($){return $.__proto__},_Q={array:RN,arrayBuffer:wQ,blob:jN,dataView:ON,date:ZN,error:t9,map:DQ,object:CN,regExp:KN,set:VQ},fN=v6({},_Q,{array:EN,map:LN,object:PN,set:IN});function xN($){return{Arguments:$.object,Array:$.array,ArrayBuffer:$.arrayBuffer,Blob:$.blob,Boolean:x6,DataView:$.dataView,Date:$.date,Error:$.error,Float32Array:$.arrayBuffer,Float64Array:$.arrayBuffer,Int8Array:$.arrayBuffer,Int16Array:$.arrayBuffer,Int32Array:$.arrayBuffer,Map:$.map,Number:x6,Object:$.object,Promise:t9,RegExp:$.regExp,Set:$.set,String:x6,WeakMap:t9,WeakSet:t9,Uint8Array:$.arrayBuffer,Uint8ClampedArray:$.arrayBuffer,Uint16Array:$.arrayBuffer,Uint32Array:$.arrayBuffer,Uint64Array:$.arrayBuffer}}function g6($){var H=v6({},_Q,$),J=xN(H),Q=J.Array,X=J.Object;function Y(W,G){if(G.prototype=G.Constructor=void 0,!W||typeof W!=="object")return W;if(G.cache.has(W))return G.cache.get(W);if(G.prototype=bN(W),G.Constructor=G.prototype&&G.prototype.constructor,!G.Constructor||G.Constructor===Object)return X(W,G);if(TN(W))return Q(W,G);var q=J[VN(W)];if(q)return q(W,G);return typeof W.then==="function"?W:X(W,G)}return function(G){return Y(G,{Constructor:void 0,cache:qN(),copier:Y,prototype:void 0})}}function FQ($){return g6(v6({},fN,$))}var kN=FQ({}),hN=g6({});L$.copyStrict=kN;L$.createCopier=g6;L$.createStrictCopier=FQ;L$.default=hN});var y6=N((IP,NQ)=>{NQ.exports=uN;var{createCopier:vN}=zQ(),gN=vN({}),yN=b6();function uN({log:$,context:H}){let{ignoreKeys:J,includeKeys:Q}=H,X=gN($);if(Q){let Y={};return Q.forEach((W)=>{Y[W]=X[W]}),Y}return J.forEach((Y)=>{yN(X,Y)}),X}});var RQ=N((u6,AQ)=>{function M$($){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")M$=function(J){return typeof J};else M$=function(J){return J&&typeof Symbol==="function"&&J.constructor===Symbol&&J!==Symbol.prototype?"symbol":typeof J};return M$($)}(function($){var H=arguments,J=function(){var q=/d{1,4}|D{3,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|W{1,2}|[LlopSZN]|"[^"]*"|'[^']*'/g,U=/\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,B=/[^-+\dA-Z]/g;return function(w,_,V,D){if(H.length===1&&G(w)==="string"&&!/\d/.test(w))_=w,w=void 0;if(w=w||w===0?w:new Date,!(w instanceof Date))w=new Date(w);if(isNaN(w))throw TypeError("Invalid date");_=String(J.masks[_]||_||J.masks.default);var A=_.slice(0,4);if(A==="UTC:"||A==="GMT:"){if(_=_.slice(4),V=!0,A==="GMT:")D=!0}var E=function(){return V?"getUTC":"get"},Z=function(){return w[E()+"Date"]()},M=function(){return w[E()+"Day"]()},L=function(){return w[E()+"Month"]()},b=function(){return w[E()+"FullYear"]()},v=function(){return w[E()+"Hours"]()},l=function(){return w[E()+"Minutes"]()},i=function(){return w[E()+"Seconds"]()},J1=function(){return w[E()+"Milliseconds"]()},d=function(){return V?0:w.getTimezoneOffset()},W1=function(){return Y(w)},G1=function(){return W(w)},X1={d:function(){return Z()},dd:function(){return Q(Z())},ddd:function(){return J.i18n.dayNames[M()]},DDD:function(){return X({y:b(),m:L(),d:Z(),_:E(),dayName:J.i18n.dayNames[M()],short:!0})},dddd:function(){return J.i18n.dayNames[M()+7]},DDDD:function(){return X({y:b(),m:L(),d:Z(),_:E(),dayName:J.i18n.dayNames[M()+7]})},m:function(){return L()+1},mm:function(){return Q(L()+1)},mmm:function(){return J.i18n.monthNames[L()]},mmmm:function(){return J.i18n.monthNames[L()+12]},yy:function(){return String(b()).slice(2)},yyyy:function(){return Q(b(),4)},h:function(){return v()%12||12},hh:function(){return Q(v()%12||12)},H:function(){return v()},HH:function(){return Q(v())},M:function(){return l()},MM:function(){return Q(l())},s:function(){return i()},ss:function(){return Q(i())},l:function(){return Q(J1(),3)},L:function(){return Q(Math.floor(J1()/10))},t:function(){return v()<12?J.i18n.timeNames[0]:J.i18n.timeNames[1]},tt:function(){return v()<12?J.i18n.timeNames[2]:J.i18n.timeNames[3]},T:function(){return v()<12?J.i18n.timeNames[4]:J.i18n.timeNames[5]},TT:function(){return v()<12?J.i18n.timeNames[6]:J.i18n.timeNames[7]},Z:function(){return D?"GMT":V?"UTC":(String(w).match(U)||[""]).pop().replace(B,"").replace(/GMT\+0000/g,"UTC")},o:function(){return(d()>0?"-":"+")+Q(Math.floor(Math.abs(d())/60)*100+Math.abs(d())%60,4)},p:function(){return(d()>0?"-":"+")+Q(Math.floor(Math.abs(d())/60),2)+":"+Q(Math.floor(Math.abs(d())%60),2)},S:function(){return["th","st","nd","rd"][Z()%10>3?0:(Z()%100-Z()%10!=10)*Z()%10]},W:function(){return W1()},WW:function(){return Q(W1())},N:function(){return G1()}};return _.replace(q,function(I){if(I in X1)return X1[I]();return I.slice(1,I.length-1)})}}();J.masks={default:"ddd mmm dd yyyy HH:MM:ss",shortDate:"m/d/yy",paddedShortDate:"mm/dd/yyyy",mediumDate:"mmm d, yyyy",longDate:"mmmm d, yyyy",fullDate:"dddd, mmmm d, yyyy",shortTime:"h:MM TT",mediumTime:"h:MM:ss TT",longTime:"h:MM:ss TT Z",isoDate:"yyyy-mm-dd",isoTime:"HH:MM:ss",isoDateTime:"yyyy-mm-dd'T'HH:MM:sso",isoUtcDateTime:"UTC:yyyy-mm-dd'T'HH:MM:ss'Z'",expiresHeaderFormat:"ddd, dd mmm yyyy HH:MM:ss Z"},J.i18n={dayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],monthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","January","February","March","April","May","June","July","August","September","October","November","December"],timeNames:["a","p","am","pm","A","P","AM","PM"]};var Q=function(U,B){U=String(U),B=B||2;while(U.length<B)U="0"+U;return U},X=function(U){var{y:B,m:w,d:_,_:V,dayName:D,short:A}=U,E=A===void 0?!1:A,Z=new Date,M=new Date;M.setDate(M[V+"Date"]()-1);var L=new Date;L.setDate(L[V+"Date"]()+1);var b=function(){return Z[V+"Date"]()},v=function(){return Z[V+"Month"]()},l=function(){return Z[V+"FullYear"]()},i=function(){return M[V+"Date"]()},J1=function(){return M[V+"Month"]()},d=function(){return M[V+"FullYear"]()},W1=function(){return L[V+"Date"]()},G1=function(){return L[V+"Month"]()},X1=function(){return L[V+"FullYear"]()};if(l()===B&&v()===w&&b()===_)return E?"Tdy":"Today";else if(d()===B&&J1()===w&&i()===_)return E?"Ysd":"Yesterday";else if(X1()===B&&G1()===w&&W1()===_)return E?"Tmw":"Tomorrow";return D},Y=function(U){var B=new Date(U.getFullYear(),U.getMonth(),U.getDate());B.setDate(B.getDate()-(B.getDay()+6)%7+3);var w=new Date(B.getFullYear(),0,4);w.setDate(w.getDate()-(w.getDay()+6)%7+3);var _=B.getTimezoneOffset()-w.getTimezoneOffset();B.setHours(B.getHours()-_);var V=(B-w)/604800000;return 1+Math.floor(V)},W=function(U){var B=U.getDay();if(B===0)B=7;return B},G=function(U){if(U===null)return"null";if(U===void 0)return"undefined";if(M$(U)!=="object")return M$(U);if(Array.isArray(U))return"array";return{}.toString.call(U).slice(8,-1).toLowerCase()};if(typeof define==="function"&&define.amd)define(function(){return J});else if((typeof u6>"u"?"undefined":M$(u6))==="object")AQ.exports=J;else $.dateFormat=J})(void 0)});var m6=N((TP,EQ)=>{EQ.exports=pN;var{DATE_FORMAT:mN,DATE_FORMAT_SIMPLE:dN}=A0(),P4=RQ(),cN=T6(),lN=r9();function pN($,H=!1){if(H===!1)return $;let J=cN($);if(!lN(J))return $;if(H===!0)return P4(J,dN);let Q=H.toUpperCase();if(Q==="SYS:STANDARD")return P4(J,mN);let X=Q.substr(0,4);if(X==="SYS:"||X==="UTC:"){if(X==="UTC:")return P4(J,H);return P4(J,H.slice(4))}return P4(J,`UTC:${H}`)}});var d6=N((bP,jQ)=>{jQ.exports=nN;function nN($){if(!$)return{};if(typeof $==="string")return $.split(",").reduce((H,J,Q)=>{let[X,Y=Q]=J.split(":");return H[X.toLowerCase()]=Y,H},{});else if(Object.prototype.toString.call($)==="[object Object]")return Object.keys($).reduce((H,J)=>{return H[J.toLowerCase()]=$[J],H},{});else return{}}});var c6=N((fP,OQ)=>{OQ.exports=iN;function iN($){if(!$)return{};if(typeof $==="string")return $.split(",").reduce((H,J,Q)=>{let[X,Y=Q]=J.split(":");return H[Y]=X.toUpperCase(),H},{default:"USERLVL"});else if(Object.prototype.toString.call($)==="[object Object]")return Object.keys($).reduce((H,J)=>{return H[$[J]]=J.toUpperCase(),H},{default:"USERLVL"});else return{}}});var l6=N((xP,ZQ)=>{ZQ.exports=oN;var sN=Z$();function oN($,H){return $=$.replace(/{if (.*?)}(.*?){end}/g,J),$=$.replace(/{if (.*?)}/g,""),$=$.replace(/{end}/g,""),$.replace(/\s+/g," ").trim();function J(Q,X,Y){let W=sN(H,X);if(W&&Y.includes(X))return Y.replace(new RegExp("{"+X+"}","g"),W);else return""}}});var $2=N((kP,LQ)=>{LQ.exports=rN;function rN($){return Object.prototype.toString.apply($)==="[object Object]"}});var K4=N((hP,MQ)=>{MQ.exports=aN;function aN({input:$,ident:H=" ",eol:J=`
|
|
24
|
-
`}){let Q=$.split(/\r?\n/);for(let X=1;X<Q.length;X+=1)Q[X]=H+Q[X];return Q.join(J)}});var
|
|
23
|
+
`),E1=y_.bind(null,{[BJ]:"",[wJ]:W,[VJ]:X1,[DJ]:R6,[E6]:d,[_J]:W1}),X0="";if(w!==null)if(_===void 0)X0=E1(w);else X0=E1(Object.assign({},w,{name:_}));let D4=G instanceof Function?G:G?EJ:WF,j9=D4().indexOf(":")+1;if(M&&!D)throw Error("customLevels is required if useOnlyCustomLevels is set true");if(E&&typeof E!=="function")throw Error(`Unknown mixin type "${typeof E}" - expected "function"`);if(J1&&typeof J1!=="string")throw Error(`Unknown msgPrefix type "${typeof J1}" - expected "string"`);f_(V,D,M);let V4=AJ(D,M);if(typeof Q.emit==="function")Q.emit("message",{code:"PINO_CONFIG",config:{levels:V4,messageKey:q,errorKey:U}});h_(A);let O9=k_(A);return Object.assign(H,{levels:V4,[$F]:O9,[HF]:M,[n_]:Q,[l_]:D4,[p_]:j9,[DJ]:R6,[E6]:d,[VJ]:X1,[s_]:R1,[o_]:I,[r_]:q,[a_]:U,[t_]:B,[QF]:B?`,${JSON.stringify(B)}:{`:"",[wJ]:W,[e_]:E,[XF]:Z,[BJ]:X0,[_J]:W1,[JF]:b,silent:m_,onChild:i,[YF]:J1}),Object.setPrototypeOf(H,T_()),x_(H),H[i_](V),H}k1.exports=j6;k1.exports.destination=($=process.stdout.fd)=>{if(typeof $==="object")return $.dest=UJ($.dest||process.stdout.fd),qJ($);else return qJ({dest:UJ($),minLength:0})};k1.exports.transport=J6();k1.exports.multistream=GJ();k1.exports.levels=AJ();k1.exports.stdSerializers=DF;k1.exports.stdTimeFunctions=Object.assign({},zJ);k1.exports.symbols=NJ;k1.exports.version=d_;k1.exports.default=j6;k1.exports.pino=j6});var Z6=N((o)=>{Object.defineProperty(o,"__esModule",{value:!0});var VF=require("tty");function _F($){if($&&$.__esModule)return $;var H=Object.create(null);if($)Object.keys($).forEach(function(J){if(J!=="default"){var Q=Object.getOwnPropertyDescriptor($,J);Object.defineProperty(H,J,Q.get?Q:{enumerable:!0,get:function(){return $[J]}})}});return H.default=$,Object.freeze(H)}var O6=_F(VF),{env:C0={},argv:ZJ=[],platform:FF=""}=typeof process>"u"?{}:process,zF="NO_COLOR"in C0||ZJ.includes("--no-color"),NF="FORCE_COLOR"in C0||ZJ.includes("--color"),AF=FF==="win32",LJ=C0.TERM==="dumb",RF=O6&&O6.isatty&&O6.isatty(1)&&C0.TERM&&!LJ,EF="CI"in C0&&(("GITHUB_ACTIONS"in C0)||("GITLAB_CI"in C0)||("CIRCLECI"in C0)),MJ=!zF&&(NF||AF&&!LJ||RF||EF),SJ=($,H,J,Q,X=H.substring(0,$)+Q,Y=H.substring($+J.length),W=Y.indexOf(J))=>X+(W<0?Y:SJ(W,Y,J,Q)),jF=($,H,J,Q,X)=>$<0?J+H+Q:J+SJ($,H,Q,X)+Q,OF=($,H,J=$,Q=$.length+1)=>(X)=>X||!(X===""||X===void 0)?jF((""+X).indexOf(H,Q),X,$,H,J):"",t=($,H,J)=>OF(`\x1B[${$}m`,`\x1B[${H}m`,J),OJ={reset:t(0,0),bold:t(1,22,"\x1B[22m\x1B[1m"),dim:t(2,22,"\x1B[22m\x1B[2m"),italic:t(3,23),underline:t(4,24),inverse:t(7,27),hidden:t(8,28),strikethrough:t(9,29),black:t(30,39),red:t(31,39),green:t(32,39),yellow:t(33,39),blue:t(34,39),magenta:t(35,39),cyan:t(36,39),white:t(37,39),gray:t(90,39),bgBlack:t(40,49),bgRed:t(41,49),bgGreen:t(42,49),bgYellow:t(43,49),bgBlue:t(44,49),bgMagenta:t(45,49),bgCyan:t(46,49),bgWhite:t(47,49),blackBright:t(90,39),redBright:t(91,39),greenBright:t(92,39),yellowBright:t(93,39),blueBright:t(94,39),magentaBright:t(95,39),cyanBright:t(96,39),whiteBright:t(97,39),bgBlackBright:t(100,49),bgRedBright:t(101,49),bgGreenBright:t(102,49),bgYellowBright:t(103,49),bgBlueBright:t(104,49),bgMagentaBright:t(105,49),bgCyanBright:t(106,49),bgWhiteBright:t(107,49)},CJ=({useColor:$=MJ}={})=>$?OJ:Object.keys(OJ).reduce((H,J)=>({...H,[J]:String}),{}),{reset:ZF,bold:LF,dim:MF,italic:SF,underline:CF,inverse:PF,hidden:KF,strikethrough:IF,black:TF,red:bF,green:fF,yellow:xF,blue:kF,magenta:hF,cyan:vF,white:gF,gray:yF,bgBlack:uF,bgRed:mF,bgGreen:dF,bgYellow:cF,bgBlue:lF,bgMagenta:pF,bgCyan:nF,bgWhite:iF,blackBright:sF,redBright:oF,greenBright:rF,yellowBright:aF,blueBright:tF,magentaBright:eF,cyanBright:$z,whiteBright:Hz,bgBlackBright:Jz,bgRedBright:Qz,bgGreenBright:Xz,bgYellowBright:Yz,bgBlueBright:Wz,bgMagentaBright:Gz,bgCyanBright:qz,bgWhiteBright:Uz}=CJ();o.bgBlack=uF;o.bgBlackBright=Jz;o.bgBlue=lF;o.bgBlueBright=Wz;o.bgCyan=nF;o.bgCyanBright=qz;o.bgGreen=dF;o.bgGreenBright=Xz;o.bgMagenta=pF;o.bgMagentaBright=Gz;o.bgRed=mF;o.bgRedBright=Qz;o.bgWhite=iF;o.bgWhiteBright=Uz;o.bgYellow=cF;o.bgYellowBright=Yz;o.black=TF;o.blackBright=sF;o.blue=kF;o.blueBright=tF;o.bold=LF;o.createColors=CJ;o.cyan=vF;o.cyanBright=$z;o.dim=MF;o.gray=yF;o.green=fF;o.greenBright=rF;o.hidden=KF;o.inverse=PF;o.isColorSupported=MJ;o.italic=SF;o.magenta=hF;o.magentaBright=eF;o.red=bF;o.redBright=oF;o.reset=ZF;o.strikethrough=IF;o.underline=CF;o.white=gF;o.whiteBright=Hz;o.yellow=xF;o.yellowBright=aF});var IJ=N((VP,KJ)=>{KJ.exports=PJ;function PJ($,H){if($&&H)return PJ($)(H);if(typeof $!=="function")throw TypeError("need wrapper function");return Object.keys($).forEach(function(Q){J[Q]=$[Q]}),J;function J(){var Q=Array(arguments.length);for(var X=0;X<Q.length;X++)Q[X]=arguments[X];var Y=$.apply(this,Q),W=Q[Q.length-1];if(typeof Y==="function"&&Y!==W)Object.keys(W).forEach(function(G){Y[G]=W[G]});return Y}}});var M6=N((_P,L6)=>{var TJ=IJ();L6.exports=TJ(c9);L6.exports.strict=TJ(bJ);c9.proto=c9(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return c9(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return bJ(this)},configurable:!0})});function c9($){var H=function(){if(H.called)return H.value;return H.called=!0,H.value=$.apply(this,arguments)};return H.called=!1,H}function bJ($){var H=function(){if(H.called)throw Error(H.onceError);return H.called=!0,H.value=$.apply(this,arguments)},J=$.name||"Function wrapped with `once`";return H.onceError=J+" shouldn't be called more than once",H.called=!1,H}});var kJ=N((FP,xJ)=>{var Bz=M6(),wz=function(){},Dz=global.Bare?queueMicrotask:process.nextTick.bind(process),Vz=function($){return $.setHeader&&typeof $.abort==="function"},_z=function($){return $.stdio&&Array.isArray($.stdio)&&$.stdio.length===3},fJ=function($,H,J){if(typeof H==="function")return fJ($,null,H);if(!H)H={};J=Bz(J||wz);var{_writableState:Q,_readableState:X}=$,Y=H.readable||H.readable!==!1&&$.readable,W=H.writable||H.writable!==!1&&$.writable,G=!1,q=function(){if(!$.writable)U()},U=function(){if(W=!1,!Y)J.call($)},B=function(){if(Y=!1,!W)J.call($)},w=function(E){J.call($,E?Error("exited with error code: "+E):null)},_=function(E){J.call($,E)},V=function(){Dz(D)},D=function(){if(G)return;if(Y&&!(X&&(X.ended&&!X.destroyed)))return J.call($,Error("premature close"));if(W&&!(Q&&(Q.ended&&!Q.destroyed)))return J.call($,Error("premature close"))},A=function(){$.req.on("finish",U)};if(Vz($))if($.on("complete",U),$.on("abort",V),$.req)A();else $.on("request",A);else if(W&&!Q)$.on("end",q),$.on("close",q);if(_z($))$.on("exit",w);if($.on("end",B),$.on("finish",U),H.error!==!1)$.on("error",_);return $.on("close",V),function(){if(G=!0,$.removeListener("complete",U),$.removeListener("abort",V),$.removeListener("request",A),$.req)$.req.removeListener("finish",U);$.removeListener("end",q),$.removeListener("close",q),$.removeListener("finish",U),$.removeListener("exit",w),$.removeListener("end",B),$.removeListener("error",_),$.removeListener("close",V)}};xJ.exports=fJ});var gJ=N((zP,vJ)=>{var Fz=M6(),zz=kJ(),l9;try{l9=require("fs")}catch($){}var M4=function(){},Nz=typeof process>"u"?!1:/^v?\.0/.test(process.version),p9=function($){return typeof $==="function"},Az=function($){if(!Nz)return!1;if(!l9)return!1;return($ instanceof(l9.ReadStream||M4)||$ instanceof(l9.WriteStream||M4))&&p9($.close)},Rz=function($){return $.setHeader&&p9($.abort)},Ez=function($,H,J,Q){Q=Fz(Q);var X=!1;$.on("close",function(){X=!0}),zz($,{readable:H,writable:J},function(W){if(W)return Q(W);X=!0,Q()});var Y=!1;return function(W){if(X)return;if(Y)return;if(Y=!0,Az($))return $.close(M4);if(Rz($))return $.abort();if(p9($.destroy))return $.destroy();Q(W||Error("stream was destroyed"))}},hJ=function($){$()},jz=function($,H){return $.pipe(H)},Oz=function(){var $=Array.prototype.slice.call(arguments),H=p9($[$.length-1]||M4)&&$.pop()||M4;if(Array.isArray($[0]))$=$[0];if($.length<2)throw Error("pump requires two streams per minimum");var J,Q=$.map(function(X,Y){var W=Y<$.length-1,G=Y>0;return Ez(X,W,G,function(q){if(!J)J=q;if(q)Q.forEach(hJ);if(W)return;Q.forEach(hJ),H(J)})});return $.reduce(jz)};vJ.exports=Oz});var dJ=N((NP,mJ)=>{var{Transform:Zz}=require("stream"),{StringDecoder:Lz}=require("string_decoder"),P0=Symbol("last"),n9=Symbol("decoder");function Mz($,H,J){let Q;if(this.overflow){if(Q=this[n9].write($).split(this.matcher),Q.length===1)return J();Q.shift(),this.overflow=!1}else this[P0]+=this[n9].write($),Q=this[P0].split(this.matcher);this[P0]=Q.pop();for(let X=0;X<Q.length;X++)try{uJ(this,this.mapper(Q[X]))}catch(Y){return J(Y)}if(this.overflow=this[P0].length>this.maxLength,this.overflow&&!this.skipOverflow){J(Error("maximum buffer reached"));return}J()}function Sz($){if(this[P0]+=this[n9].end(),this[P0])try{uJ(this,this.mapper(this[P0]))}catch(H){return $(H)}$()}function uJ($,H){if(H!==void 0)$.push(H)}function yJ($){return $}function Cz($,H,J){switch($=$||/\r?\n/,H=H||yJ,J=J||{},arguments.length){case 1:if(typeof $==="function")H=$,$=/\r?\n/;else if(typeof $==="object"&&!($ instanceof RegExp)&&!$[Symbol.split])J=$,$=/\r?\n/;break;case 2:if(typeof $==="function")J=H,H=$,$=/\r?\n/;else if(typeof H==="object")J=H,H=yJ}J=Object.assign({},J),J.autoDestroy=!0,J.transform=Mz,J.flush=Sz,J.readableObjectMode=!0;let Q=new Zz(J);return Q[P0]="",Q[n9]=new Lz("utf8"),Q.matcher=$,Q.mapper=H,Q.maxLength=J.maxLength,Q.skipOverflow=J.skipOverflow||!1,Q.overflow=!1,Q._destroy=function(X,Y){this._writableState.errorEmitted=!1,Y(X)},Q}mJ.exports=Cz});var iJ=N((AP,nJ)=>{var cJ=Symbol.for("pino.metadata"),Pz=dJ(),{Duplex:Kz}=require("stream"),{parentPort:lJ,workerData:pJ}=require("worker_threads");function Iz(){let $,H,J=new Promise((Q,X)=>{$=Q,H=X});return J.resolve=$,J.reject=H,J}nJ.exports=function(H,J={}){let Q=J.expectPinoConfig===!0&&pJ?.workerData?.pinoWillSendConfig===!0,X=J.parse==="lines",Y=typeof J.parseLine==="function"?J.parseLine:JSON.parse,W=J.close||Tz,G=Pz(function(U){let B;try{B=Y(U)}catch(w){this.emit("unknown",U,w);return}if(B===null){this.emit("unknown",U,"Null value ignored");return}if(typeof B!=="object")B={data:B,time:Date.now()};if(G[cJ])G.lastTime=B.time,G.lastLevel=B.level,G.lastObj=B;if(X)return U;return B},{autoDestroy:!0});if(G._destroy=function(U,B){let w=W(U,B);if(w&&typeof w.then==="function")w.then(B,B)},J.expectPinoConfig===!0&&pJ?.workerData?.pinoWillSendConfig!==!0)setImmediate(()=>{G.emit("error",Error("This transport is not compatible with the current version of pino. Please upgrade pino to the latest version."))});if(J.metadata!==!1)G[cJ]=!0,G.lastTime=0,G.lastLevel=0,G.lastObj=null;if(Q){let U={},B=Iz();return lJ.on("message",function w(_){if(_.code==="PINO_CONFIG")U=_.config,B.resolve(),lJ.off("message",w)}),Object.defineProperties(G,{levels:{get(){return U.levels}},messageKey:{get(){return U.messageKey}},errorKey:{get(){return U.errorKey}}}),B.then(q)}return q();function q(){let U=H(G);if(U&&typeof U.catch==="function")U.catch((B)=>{G.destroy(B)}),U=null;else if(J.enablePipelining&&U)return Kz.from({writable:G,readable:U});return G}};function Tz($,H){process.nextTick(H,$)}});var A0=N((RP,sJ)=>{sJ.exports={DATE_FORMAT:"yyyy-mm-dd HH:MM:ss.l o",DATE_FORMAT_SIMPLE:"HH:MM:ss.l",ERROR_LIKE_KEYS:["err","error"],MESSAGE_KEY:"msg",LEVEL_KEY:"level",LEVEL_LABEL:"levelLabel",TIMESTAMP_KEY:"time",LEVELS:{default:"USERLVL",60:"FATAL",50:"ERROR",40:"WARN",30:"INFO",20:"DEBUG",10:"TRACE"},LEVEL_NAMES:{fatal:60,error:50,warn:40,info:30,debug:20,trace:10},LOGGER_KEYS:["pid","hostname","name","level","time","timestamp","caller"]}});var i9=N((EP,aJ)=>{aJ.exports=bz;var{LEVELS:oJ,LEVEL_NAMES:rJ}=A0();function bz($,H,J){let Q=$?H||oJ:Object.assign({},oJ,H),X=$?J||rJ:Object.assign({},rJ,J);return function(Y){let W="default";if(Number.isInteger(+Y))W=Object.prototype.hasOwnProperty.call(Q,Y)?Y:W;else W=Object.prototype.hasOwnProperty.call(X,Y.toLowerCase())?X[Y.toLowerCase()]:W;return[Q[W],W]}}});var K6=N((jP,HQ)=>{var U0=($)=>$,s9={default:U0,60:U0,50:U0,40:U0,30:U0,20:U0,10:U0,message:U0,greyMessage:U0,property:U0},{createColors:tJ}=Z6(),fz=i9(),C4=tJ({useColor:!0}),{white:S6,bgRed:xz,red:kz,yellow:hz,green:vz,blue:gz,gray:C6,cyan:eJ,magenta:$Q}=C4,S4={default:S6,60:xz,50:kz,40:hz,30:vz,20:gz,10:C6,message:eJ,greyMessage:C6,property:$Q};function yz($){return $.reduce(function(H,[J,Q]){return H[J]=typeof C4[Q]==="function"?C4[Q]:S6,H},{default:S6,message:eJ,greyMessage:C6,property:$Q})}function P6($){return function(H,J,{customLevels:Q,customLevelNames:X}={}){let[Y,W]=fz($,Q,X)(H);return Object.prototype.hasOwnProperty.call(J,W)?J[W](Y):J.default(Y)}}function uz($){let H=P6($),J=function(Q,X){return H(Q,s9,X)};return J.message=s9.message,J.greyMessage=s9.greyMessage,J.property=s9.property,J.colors=tJ({useColor:!1}),J}function mz($){let H=P6($),J=function(Q,X){return H(Q,S4,X)};return J.message=S4.message,J.property=S4.property,J.greyMessage=S4.greyMessage,J.colors=C4,J}function dz($,H){let J=yz($),Q=H?J:Object.assign({},S4,J),X=P6(H),Y=function(W,G){return X(W,Q,G)};return Y.colors=C4,Y.message=Y.message||Q.message,Y.property=Y.property||Q.property,Y.greyMessage=Y.greyMessage||Q.greyMessage,Y}HQ.exports=function(H=!1,J,Q){if(H&&J!==void 0)return dz(J,Q);else if(H)return mz(Q);return uz(Q)}});var I6=N((OP,JQ)=>{JQ.exports=function(){}});var XQ=N((ZP,QQ)=>{QQ.exports=pz;var{isMainThread:cz}=require("node:worker_threads"),lz=s8(),o9=I6();function pz($){let H=new lz($);if(H.on("error",J),!$.sync&&cz)nz(H);return H;function J(Q){if(Q.code==="EPIPE"){H.write=o9,H.end=o9,H.flushSync=o9,H.destroy=o9;return}H.removeListener("error",J)}}function nz($){if(global.WeakRef&&global.WeakMap&&global.FinalizationRegistry){let H=f9();H.register($,iz),$.on("close",function(){H.unregister($)})}}function iz($,H){if($.destroyed)return;if(H==="beforeExit")$.flush(),$.on("drain",function(){$.end()});else $.flushSync()}});var r9=N((LP,YQ)=>{YQ.exports=sz;function sz($){return $ instanceof Date&&!Number.isNaN($.getTime())}});var T6=N((MP,WQ)=>{WQ.exports=rz;var oz=r9();function rz($){let H=new Date($);if(oz(H))return H;return H=new Date(+$),H}});var a9=N((SP,GQ)=>{GQ.exports=az;function az($){let H=[],J=!1,Q="";for(let X=0;X<$.length;X++){let Y=$.charAt(X);if(Y==="\\"){J=!0;continue}if(J){J=!1,Q+=Y;continue}if(Y==="."){H.push(Q),Q="";continue}Q+=Y}if(Q.length)H.push(Q);return H}});var Z$=N((CP,qQ)=>{qQ.exports=ez;var tz=a9();function ez($,H){let J=Array.isArray(H)?H:tz(H);for(let Q of J){if(!Object.prototype.hasOwnProperty.call($,Q))return;$=$[Q]}return $}});var b6=N((PP,UQ)=>{UQ.exports=JN;var $N=Z$(),HN=a9();function JN($,H){let J=HN(H),Q=J.pop();if($=$N($,J),$!==null&&typeof $==="object"&&Object.prototype.hasOwnProperty.call($,Q))delete $[Q]}});var EQ=N((L$)=>{Object.defineProperty(L$,"__esModule",{value:!0});var QN=Function.prototype.toString,f6=Object.create,XN=Object.prototype.toString,YN=function(){function $(){this._keys=[],this._values=[]}return $.prototype.has=function(H){return!!~this._keys.indexOf(H)},$.prototype.get=function(H){return this._values[this._keys.indexOf(H)]},$.prototype.set=function(H,J){this._keys.push(H),this._values.push(J)},$}();function WN(){return new YN}function GN(){return new WeakMap}var qN=typeof WeakMap<"u"?GN:WN;function k6($){if(!$)return f6(null);var H=$.constructor;if(H===Object)return $===Object.prototype?{}:f6($);if(H&&~QN.call(H).indexOf("[native code]"))try{return new H}catch(J){}return f6($)}function UN($){var H="";if($.global)H+="g";if($.ignoreCase)H+="i";if($.multiline)H+="m";if($.unicode)H+="u";if($.sticky)H+="y";return H}function BN($){return $.flags}var wN=/test/g.flags==="g"?BN:UN;function BQ($){var H=XN.call($);return H.substring(8,H.length-1)}function DN($){return $[Symbol.toStringTag]||BQ($)}var VN=typeof Symbol<"u"?DN:BQ,_N=Object.defineProperty,FN=Object.getOwnPropertyDescriptor,wQ=Object.getOwnPropertyNames,h6=Object.getOwnPropertySymbols,DQ=Object.prototype,VQ=DQ.hasOwnProperty,zN=DQ.propertyIsEnumerable,_Q=typeof h6==="function";function NN($){return wQ($).concat(h6($))}var AN=_Q?NN:wQ;function e9($,H,J){var Q=AN($);for(var X=0,Y=Q.length,W=void 0,G=void 0;X<Y;++X){if(W=Q[X],W==="callee"||W==="caller")continue;if(G=FN($,W),!G){H[W]=J.copier($[W],J);continue}if(!G.get&&!G.set)G.value=J.copier(G.value,J);try{_N(H,W,G)}catch(q){H[W]=G.value}}return H}function RN($,H){var J=new H.Constructor;H.cache.set($,J);for(var Q=0,X=$.length;Q<X;++Q)J[Q]=H.copier($[Q],H);return J}function EN($,H){var J=new H.Constructor;return H.cache.set($,J),e9($,J,H)}function FQ($,H){return $.slice(0)}function jN($,H){return $.slice(0,$.size,$.type)}function ON($,H){return new H.Constructor(FQ($.buffer))}function ZN($,H){return new H.Constructor($.getTime())}function zQ($,H){var J=new H.Constructor;return H.cache.set($,J),$.forEach(function(Q,X){J.set(X,H.copier(Q,H))}),J}function LN($,H){return e9($,zQ($,H),H)}function MN($,H){var J=k6(H.prototype);H.cache.set($,J);for(var Q in $)if(VQ.call($,Q))J[Q]=H.copier($[Q],H);return J}function SN($,H){var J=k6(H.prototype);H.cache.set($,J);for(var Q in $)if(VQ.call($,Q))J[Q]=H.copier($[Q],H);var X=h6($);for(var Y=0,W=X.length,G=void 0;Y<W;++Y)if(G=X[Y],zN.call($,G))J[G]=H.copier($[G],H);return J}var CN=_Q?SN:MN;function PN($,H){var J=k6(H.prototype);return H.cache.set($,J),e9($,J,H)}function x6($,H){return new H.Constructor($.valueOf())}function KN($,H){var J=new H.Constructor($.source,wN($));return J.lastIndex=$.lastIndex,J}function t9($,H){return $}function NQ($,H){var J=new H.Constructor;return H.cache.set($,J),$.forEach(function(Q){J.add(H.copier(Q,H))}),J}function IN($,H){return e9($,NQ($,H),H)}var TN=Array.isArray,v6=Object.assign,bN=Object.getPrototypeOf||function($){return $.__proto__},AQ={array:RN,arrayBuffer:FQ,blob:jN,dataView:ON,date:ZN,error:t9,map:zQ,object:CN,regExp:KN,set:NQ},fN=v6({},AQ,{array:EN,map:LN,object:PN,set:IN});function xN($){return{Arguments:$.object,Array:$.array,ArrayBuffer:$.arrayBuffer,Blob:$.blob,Boolean:x6,DataView:$.dataView,Date:$.date,Error:$.error,Float32Array:$.arrayBuffer,Float64Array:$.arrayBuffer,Int8Array:$.arrayBuffer,Int16Array:$.arrayBuffer,Int32Array:$.arrayBuffer,Map:$.map,Number:x6,Object:$.object,Promise:t9,RegExp:$.regExp,Set:$.set,String:x6,WeakMap:t9,WeakSet:t9,Uint8Array:$.arrayBuffer,Uint8ClampedArray:$.arrayBuffer,Uint16Array:$.arrayBuffer,Uint32Array:$.arrayBuffer,Uint64Array:$.arrayBuffer}}function g6($){var H=v6({},AQ,$),J=xN(H),Q=J.Array,X=J.Object;function Y(W,G){if(G.prototype=G.Constructor=void 0,!W||typeof W!=="object")return W;if(G.cache.has(W))return G.cache.get(W);if(G.prototype=bN(W),G.Constructor=G.prototype&&G.prototype.constructor,!G.Constructor||G.Constructor===Object)return X(W,G);if(TN(W))return Q(W,G);var q=J[VN(W)];if(q)return q(W,G);return typeof W.then==="function"?W:X(W,G)}return function(G){return Y(G,{Constructor:void 0,cache:qN(),copier:Y,prototype:void 0})}}function RQ($){return g6(v6({},fN,$))}var kN=RQ({}),hN=g6({});L$.copyStrict=kN;L$.createCopier=g6;L$.createStrictCopier=RQ;L$.default=hN});var y6=N((IP,jQ)=>{jQ.exports=uN;var{createCopier:vN}=EQ(),gN=vN({}),yN=b6();function uN({log:$,context:H}){let{ignoreKeys:J,includeKeys:Q}=H,X=gN($);if(Q){let Y={};return Q.forEach((W)=>{Y[W]=X[W]}),Y}return J.forEach((Y)=>{yN(X,Y)}),X}});var ZQ=N((u6,OQ)=>{function M$($){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")M$=function(J){return typeof J};else M$=function(J){return J&&typeof Symbol==="function"&&J.constructor===Symbol&&J!==Symbol.prototype?"symbol":typeof J};return M$($)}(function($){var H=arguments,J=function(){var q=/d{1,4}|D{3,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|W{1,2}|[LlopSZN]|"[^"]*"|'[^']*'/g,U=/\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,B=/[^-+\dA-Z]/g;return function(w,_,V,D){if(H.length===1&&G(w)==="string"&&!/\d/.test(w))_=w,w=void 0;if(w=w||w===0?w:new Date,!(w instanceof Date))w=new Date(w);if(isNaN(w))throw TypeError("Invalid date");_=String(J.masks[_]||_||J.masks.default);var A=_.slice(0,4);if(A==="UTC:"||A==="GMT:"){if(_=_.slice(4),V=!0,A==="GMT:")D=!0}var E=function(){return V?"getUTC":"get"},Z=function(){return w[E()+"Date"]()},M=function(){return w[E()+"Day"]()},L=function(){return w[E()+"Month"]()},b=function(){return w[E()+"FullYear"]()},v=function(){return w[E()+"Hours"]()},l=function(){return w[E()+"Minutes"]()},i=function(){return w[E()+"Seconds"]()},J1=function(){return w[E()+"Milliseconds"]()},d=function(){return V?0:w.getTimezoneOffset()},W1=function(){return Y(w)},G1=function(){return W(w)},X1={d:function(){return Z()},dd:function(){return Q(Z())},ddd:function(){return J.i18n.dayNames[M()]},DDD:function(){return X({y:b(),m:L(),d:Z(),_:E(),dayName:J.i18n.dayNames[M()],short:!0})},dddd:function(){return J.i18n.dayNames[M()+7]},DDDD:function(){return X({y:b(),m:L(),d:Z(),_:E(),dayName:J.i18n.dayNames[M()+7]})},m:function(){return L()+1},mm:function(){return Q(L()+1)},mmm:function(){return J.i18n.monthNames[L()]},mmmm:function(){return J.i18n.monthNames[L()+12]},yy:function(){return String(b()).slice(2)},yyyy:function(){return Q(b(),4)},h:function(){return v()%12||12},hh:function(){return Q(v()%12||12)},H:function(){return v()},HH:function(){return Q(v())},M:function(){return l()},MM:function(){return Q(l())},s:function(){return i()},ss:function(){return Q(i())},l:function(){return Q(J1(),3)},L:function(){return Q(Math.floor(J1()/10))},t:function(){return v()<12?J.i18n.timeNames[0]:J.i18n.timeNames[1]},tt:function(){return v()<12?J.i18n.timeNames[2]:J.i18n.timeNames[3]},T:function(){return v()<12?J.i18n.timeNames[4]:J.i18n.timeNames[5]},TT:function(){return v()<12?J.i18n.timeNames[6]:J.i18n.timeNames[7]},Z:function(){return D?"GMT":V?"UTC":(String(w).match(U)||[""]).pop().replace(B,"").replace(/GMT\+0000/g,"UTC")},o:function(){return(d()>0?"-":"+")+Q(Math.floor(Math.abs(d())/60)*100+Math.abs(d())%60,4)},p:function(){return(d()>0?"-":"+")+Q(Math.floor(Math.abs(d())/60),2)+":"+Q(Math.floor(Math.abs(d())%60),2)},S:function(){return["th","st","nd","rd"][Z()%10>3?0:(Z()%100-Z()%10!=10)*Z()%10]},W:function(){return W1()},WW:function(){return Q(W1())},N:function(){return G1()}};return _.replace(q,function(I){if(I in X1)return X1[I]();return I.slice(1,I.length-1)})}}();J.masks={default:"ddd mmm dd yyyy HH:MM:ss",shortDate:"m/d/yy",paddedShortDate:"mm/dd/yyyy",mediumDate:"mmm d, yyyy",longDate:"mmmm d, yyyy",fullDate:"dddd, mmmm d, yyyy",shortTime:"h:MM TT",mediumTime:"h:MM:ss TT",longTime:"h:MM:ss TT Z",isoDate:"yyyy-mm-dd",isoTime:"HH:MM:ss",isoDateTime:"yyyy-mm-dd'T'HH:MM:sso",isoUtcDateTime:"UTC:yyyy-mm-dd'T'HH:MM:ss'Z'",expiresHeaderFormat:"ddd, dd mmm yyyy HH:MM:ss Z"},J.i18n={dayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],monthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","January","February","March","April","May","June","July","August","September","October","November","December"],timeNames:["a","p","am","pm","A","P","AM","PM"]};var Q=function(U,B){U=String(U),B=B||2;while(U.length<B)U="0"+U;return U},X=function(U){var{y:B,m:w,d:_,_:V,dayName:D,short:A}=U,E=A===void 0?!1:A,Z=new Date,M=new Date;M.setDate(M[V+"Date"]()-1);var L=new Date;L.setDate(L[V+"Date"]()+1);var b=function(){return Z[V+"Date"]()},v=function(){return Z[V+"Month"]()},l=function(){return Z[V+"FullYear"]()},i=function(){return M[V+"Date"]()},J1=function(){return M[V+"Month"]()},d=function(){return M[V+"FullYear"]()},W1=function(){return L[V+"Date"]()},G1=function(){return L[V+"Month"]()},X1=function(){return L[V+"FullYear"]()};if(l()===B&&v()===w&&b()===_)return E?"Tdy":"Today";else if(d()===B&&J1()===w&&i()===_)return E?"Ysd":"Yesterday";else if(X1()===B&&G1()===w&&W1()===_)return E?"Tmw":"Tomorrow";return D},Y=function(U){var B=new Date(U.getFullYear(),U.getMonth(),U.getDate());B.setDate(B.getDate()-(B.getDay()+6)%7+3);var w=new Date(B.getFullYear(),0,4);w.setDate(w.getDate()-(w.getDay()+6)%7+3);var _=B.getTimezoneOffset()-w.getTimezoneOffset();B.setHours(B.getHours()-_);var V=(B-w)/604800000;return 1+Math.floor(V)},W=function(U){var B=U.getDay();if(B===0)B=7;return B},G=function(U){if(U===null)return"null";if(U===void 0)return"undefined";if(M$(U)!=="object")return M$(U);if(Array.isArray(U))return"array";return{}.toString.call(U).slice(8,-1).toLowerCase()};if(typeof define==="function"&&define.amd)define(function(){return J});else if((typeof u6>"u"?"undefined":M$(u6))==="object")OQ.exports=J;else $.dateFormat=J})(void 0)});var m6=N((TP,LQ)=>{LQ.exports=pN;var{DATE_FORMAT:mN,DATE_FORMAT_SIMPLE:dN}=A0(),P4=ZQ(),cN=T6(),lN=r9();function pN($,H=!1){if(H===!1)return $;let J=cN($);if(!lN(J))return $;if(H===!0)return P4(J,dN);let Q=H.toUpperCase();if(Q==="SYS:STANDARD")return P4(J,mN);let X=Q.substr(0,4);if(X==="SYS:"||X==="UTC:"){if(X==="UTC:")return P4(J,H);return P4(J,H.slice(4))}return P4(J,`UTC:${H}`)}});var d6=N((bP,MQ)=>{MQ.exports=nN;function nN($){if(!$)return{};if(typeof $==="string")return $.split(",").reduce((H,J,Q)=>{let[X,Y=Q]=J.split(":");return H[X.toLowerCase()]=Y,H},{});else if(Object.prototype.toString.call($)==="[object Object]")return Object.keys($).reduce((H,J)=>{return H[J.toLowerCase()]=$[J],H},{});else return{}}});var c6=N((fP,SQ)=>{SQ.exports=iN;function iN($){if(!$)return{};if(typeof $==="string")return $.split(",").reduce((H,J,Q)=>{let[X,Y=Q]=J.split(":");return H[Y]=X.toUpperCase(),H},{default:"USERLVL"});else if(Object.prototype.toString.call($)==="[object Object]")return Object.keys($).reduce((H,J)=>{return H[$[J]]=J.toUpperCase(),H},{default:"USERLVL"});else return{}}});var l6=N((xP,CQ)=>{CQ.exports=oN;var sN=Z$();function oN($,H){return $=$.replace(/{if (.*?)}(.*?){end}/g,J),$=$.replace(/{if (.*?)}/g,""),$=$.replace(/{end}/g,""),$.replace(/\s+/g," ").trim();function J(Q,X,Y){let W=sN(H,X);if(W&&Y.includes(X))return Y.replace(new RegExp("{"+X+"}","g"),W);else return""}}});var $2=N((kP,PQ)=>{PQ.exports=rN;function rN($){return Object.prototype.toString.apply($)==="[object Object]"}});var K4=N((hP,KQ)=>{KQ.exports=aN;function aN({input:$,ident:H=" ",eol:J=`
|
|
24
|
+
`}){let Q=$.split(/\r?\n/);for(let X=1;X<Q.length;X+=1)Q[X]=H+Q[X];return Q.join(J)}});var fQ=N((vP,bQ)=>{bQ.exports=HA;var{LEVEL_NAMES:IQ}=A0(),TQ=K6(),tN=c6(),eN=d6(),$A=i9();function HA($){let H=$.crlf?`\r
|
|
25
25
|
`:`
|
|
26
|
-
`,J=" ",{customPrettifiers:Q,errorLikeObjectKeys:X,hideObject:Y,levelFirst:W,levelKey:G,levelLabel:q,messageFormat:U,messageKey:B,minimumLevel:w,singleLine:_,timestampKey:V,translateTime:D}=$,A=$.errorProps.split(","),E=typeof $.useOnlyCustomProps==="boolean"?$.useOnlyCustomProps:$.useOnlyCustomProps==="true",Z=tN($.customLevels),M=eN($.customLevels),L=$A(E,Z,M),b;if($.customColors)if(typeof $.customColors==="string")b=$.customColors.split(",").reduce((W1,G1)=>{let[X1,I]=G1.split(":"),E1=(E?$.customLevels:M[X1]!==void 0)?M[X1]:SQ[X1],X0=E1!==void 0?E1:X1;return W1.push([X0,I]),W1},[]);else if(typeof $.customColors==="object")b=Object.keys($.customColors).reduce((W1,G1)=>{let[X1,I]=[G1,$.customColors[G1]],E1=(E?$.customLevels:M[X1]!==void 0)?M[X1]:SQ[X1],X0=E1!==void 0?E1:X1;return W1.push([X0,I]),W1},[]);else throw Error("options.customColors must be of type string or object.");let v={customLevels:Z,customLevelNames:M};if(E===!0&&!$.customLevels)v.customLevels=void 0,v.customLevelNames=void 0;let l=$.include!==void 0?new Set($.include.split(",")):void 0,i=!l&&$.ignore?new Set($.ignore.split(",")):void 0,J1=CQ($.colorize,b,E),d=$.colorizeObjects?J1:CQ(!1,[],!1);return{EOL:H,IDENT:" ",colorizer:J1,customColors:b,customLevelNames:M,customLevels:Z,customPrettifiers:Q,customProperties:v,errorLikeObjectKeys:X,errorProps:A,getLevelLabelData:L,hideObject:Y,ignoreKeys:i,includeKeys:l,levelFirst:W,levelKey:G,levelLabel:q,messageFormat:U,messageKey:B,minimumLevel:w,objectColorizer:d,singleLine:_,timestampKey:V,translateTime:D,useOnlyCustomProps:E}}});var kQ=N((gP,xQ)=>{xQ.exports=I4;I4.default=I4;I4.stable=bQ;I4.stableStringify=bQ;var H2="[...]",IQ="[Circular]",s0=[],i0=[];function TQ(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function I4($,H,J,Q){if(typeof Q>"u")Q=TQ();p6($,"",0,[],void 0,0,Q);var X;try{if(i0.length===0)X=JSON.stringify($,H,J);else X=JSON.stringify($,fQ(H),J)}catch(W){return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{while(s0.length!==0){var Y=s0.pop();if(Y.length===4)Object.defineProperty(Y[0],Y[1],Y[3]);else Y[0][Y[1]]=Y[2]}}return X}function S$($,H,J,Q){var X=Object.getOwnPropertyDescriptor(Q,J);if(X.get!==void 0)if(X.configurable)Object.defineProperty(Q,J,{value:$}),s0.push([Q,J,H,X]);else i0.push([H,J,$]);else Q[J]=$,s0.push([Q,J,H])}function p6($,H,J,Q,X,Y,W){Y+=1;var G;if(typeof $==="object"&&$!==null){for(G=0;G<Q.length;G++)if(Q[G]===$){S$(IQ,$,H,X);return}if(typeof W.depthLimit<"u"&&Y>W.depthLimit){S$(H2,$,H,X);return}if(typeof W.edgesLimit<"u"&&J+1>W.edgesLimit){S$(H2,$,H,X);return}if(Q.push($),Array.isArray($))for(G=0;G<$.length;G++)p6($[G],G,G,Q,$,Y,W);else{var q=Object.keys($);for(G=0;G<q.length;G++){var U=q[G];p6($[U],U,G,Q,$,Y,W)}}Q.pop()}}function JA($,H){if($<H)return-1;if($>H)return 1;return 0}function bQ($,H,J,Q){if(typeof Q>"u")Q=TQ();var X=n6($,"",0,[],void 0,0,Q)||$,Y;try{if(i0.length===0)Y=JSON.stringify(X,H,J);else Y=JSON.stringify(X,fQ(H),J)}catch(G){return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{while(s0.length!==0){var W=s0.pop();if(W.length===4)Object.defineProperty(W[0],W[1],W[3]);else W[0][W[1]]=W[2]}}return Y}function n6($,H,J,Q,X,Y,W){Y+=1;var G;if(typeof $==="object"&&$!==null){for(G=0;G<Q.length;G++)if(Q[G]===$){S$(IQ,$,H,X);return}try{if(typeof $.toJSON==="function")return}catch(w){return}if(typeof W.depthLimit<"u"&&Y>W.depthLimit){S$(H2,$,H,X);return}if(typeof W.edgesLimit<"u"&&J+1>W.edgesLimit){S$(H2,$,H,X);return}if(Q.push($),Array.isArray($))for(G=0;G<$.length;G++)n6($[G],G,G,Q,$,Y,W);else{var q={},U=Object.keys($).sort(JA);for(G=0;G<U.length;G++){var B=U[G];n6($[B],B,G,Q,$,Y,W),q[B]=$[B]}if(typeof X<"u")s0.push([X,H,$]),X[H]=q;else return q}Q.pop()}}function fQ($){return $=typeof $<"u"?$:function(H,J){return J},function(H,J){if(i0.length>0)for(var Q=0;Q<i0.length;Q++){var X=i0[Q];if(X[1]===H&&X[0]===J){J=X[2],i0.splice(Q,1);break}}return $.call(this,H,J)}}});var i6=N((yP,hQ)=>{hQ.exports=XA;var QA=K4();function XA({keyName:$,lines:H,eol:J,ident:Q}){let X="",Y=QA({input:H,ident:Q,eol:J}),W=`${Q}${$}: ${Y}${J}`.split(J);for(let G=0;G<W.length;G+=1){if(G!==0)X+=J;let q=W[G];if(/^\s*"stack"/.test(q)){let U=/^(\s*"stack":)\s*(".*"),?$/.exec(q);if(U&&U.length===3){let B=/^\s*/.exec(q)[0].length+4,w=" ".repeat(B),_=U[2];X+=U[1]+J+w+JSON.parse(_).replace(/\n/g,J+w)}else X+=q}else X+=q}return X}});var J2=N((uP,vQ)=>{vQ.exports=qA;var{LOGGER_KEYS:YA}=A0(),s6=kQ(),WA=K4(),GA=i6();function qA({log:$,excludeLoggerKeys:H=!0,skipKeys:J=[],context:Q}){let{EOL:X,IDENT:Y,customPrettifiers:W,errorLikeObjectKeys:G,objectColorizer:q,singleLine:U,colorizer:B}=Q,w=[].concat(J);if(H===!0)Array.prototype.push.apply(w,YA);let _="",{plain:V,errors:D}=Object.entries($).reduce(({plain:A,errors:E},[Z,M])=>{if(w.includes(Z)===!1){let L=typeof W[Z]==="function"?W[Z](M,Z,$,{colors:B.colors}):M;if(G.includes(Z))E[Z]=L;else A[Z]=L}return{plain:A,errors:E}},{plain:{},errors:{}});if(U){if(Object.keys(V).length>0)_+=q.greyMessage(s6(V));_+=X,_=_.replace(/\\\\/gi,"\\")}else Object.entries(V).forEach(([A,E])=>{let Z=typeof W[A]==="function"?E:s6(E,null,2);if(Z===void 0)return;Z=Z.replace(/\\\\/gi,"\\");let M=WA({input:Z,ident:Y,eol:X});_+=`${Y}${q.property(A)}:${M.startsWith(X)?"":" "}${M}${X}`});return Object.entries(D).forEach(([A,E])=>{let Z=typeof W[A]==="function"?E:s6(E,null,2);if(Z===void 0)return;_+=GA({keyName:A,lines:Z,eol:X,ident:Y})}),_}});var o6=N((mP,gQ)=>{gQ.exports=VA;var{LOGGER_KEYS:UA}=A0(),BA=$2(),wA=K4(),DA=J2();function VA({log:$,context:H}){let{EOL:J,IDENT:Q,errorProps:X,messageKey:Y}=H,W=$.stack,G=wA({input:W,ident:Q,eol:J}),q=`${Q}${G}${J}`;if(X.length>0){let U=UA.concat(Y,"type","stack"),B;if(X[0]==="*")B=Object.keys($).filter((w)=>U.includes(w)===!1);else B=X.filter((w)=>U.includes(w)===!1);for(let w=0;w<B.length;w+=1){let _=B[w];if(_ in $===!1)continue;if(BA($[_])){let V=DA({log:$[_],excludeLoggerKeys:!1,context:{...H,IDENT:Q+Q}});q=`${q}${Q}${_}: {${J}${V}${Q}}${J}`;continue}q=`${q}${Q}${_}: ${$[_]}${J}`}}return q}});var r6=N((dP,yQ)=>{yQ.exports=FA;var _A=Z$();function FA({log:$,context:H}){let{colorizer:J,customLevels:Q,customLevelNames:X,levelKey:Y,getLevelLabelData:W}=H,G=H.customPrettifiers?.level,q=_A($,Y);if(q===void 0)return;let U=J(q,{customLevels:Q,customLevelNames:X});if(G){let[B]=W(q);return G(q,Y,$,{label:B,labelColorized:U,colors:J.colors})}return U}});var a6=N((cP,mQ)=>{mQ.exports=AA;var{LEVELS:zA}=A0(),uQ=Z$(),NA=l6();function AA({log:$,context:H}){let{colorizer:J,customLevels:Q,levelKey:X,levelLabel:Y,messageFormat:W,messageKey:G,useOnlyCustomProps:q}=H;if(W&&typeof W==="string"){let U=NA(W,$),B=String(U).replace(/{([^{}]+)}/g,function(w,_){let V;if(_===Y&&(V=uQ($,X))!==void 0)return(q?Q===void 0:Q[V]===void 0)?zA[V]:Q[V];return uQ($,_)||""});return J.message(B)}if(W&&typeof W==="function"){let U=W($,G,Y,{colors:J.colors});return J.message(U)}if(G in $===!1)return;if(typeof $[G]!=="string"&&typeof $[G]!=="number"&&typeof $[G]!=="boolean")return;return J.message($[G])}});var t6=N((lP,dQ)=>{dQ.exports=RA;function RA({log:$,context:H}){let{customPrettifiers:J,colorizer:Q}=H,X="";if($.name||$.pid||$.hostname){if(X+="(",$.name)X+=J.name?J.name($.name,"name",$,{colors:Q.colors}):$.name;if($.pid){let Y=J.pid?J.pid($.pid,"pid",$,{colors:Q.colors}):$.pid;if($.name&&$.pid)X+="/"+Y;else X+=Y}if($.hostname){let Y=J.hostname?J.hostname($.hostname,"hostname",$,{colors:Q.colors}):$.hostname;X+=`${X==="("?"on":" on"} ${Y}`}X+=")"}if($.caller){let Y=J.caller?J.caller($.caller,"caller",$,{colors:Q.colors}):$.caller;X+=`${X===""?"":" "}<${Y}>`}if(X==="")return;else return X}});var e6=N((pP,cQ)=>{cQ.exports=jA;var EA=m6();function jA({log:$,context:H}){let{timestampKey:J,translateTime:Q}=H,X=H.customPrettifiers?.time,Y=null;if(J in $)Y=$[J];else if("timestamp"in $)Y=$.timestamp;if(Y===null)return;let W=Q?EA(Y,Q):Y;return X?X(W):`[${W}]`}});var pQ=N((nP,lQ)=>{lQ.exports={buildSafeSonicBoom:$Q(),createDate:T6(),deleteLogProperty:b6(),filterLog:y6(),formatTime:m6(),getPropertyValue:Z$(),handleCustomLevelsNamesOpts:d6(),handleCustomLevelsOpts:c6(),interpretConditionals:l6(),isObject:$2(),isValidDate:r9(),joinLinesWithIndentation:K4(),noop:I6(),parseFactoryOptions:KQ(),prettifyErrorLog:o6(),prettifyError:i6(),prettifyLevel:r6(),prettifyMessage:a6(),prettifyMetadata:t6(),prettifyObject:J2(),prettifyTime:e6(),splitPropertyKey:a9(),getLevelLabelData:i9()}});var rQ=N((iP,C$)=>{var OA=typeof Buffer<"u",nQ=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,iQ=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function sQ($,H,J){if(J==null){if(H!==null&&typeof H==="object")J=H,H=void 0}if(OA&&Buffer.isBuffer($))$=$.toString();if($&&$.charCodeAt(0)===65279)$=$.slice(1);let Q=JSON.parse($,H);if(Q===null||typeof Q!=="object")return Q;let X=J&&J.protoAction||"error",Y=J&&J.constructorAction||"error";if(X==="ignore"&&Y==="ignore")return Q;if(X!=="ignore"&&Y!=="ignore"){if(nQ.test($)===!1&&iQ.test($)===!1)return Q}else if(X!=="ignore"&&Y==="ignore"){if(nQ.test($)===!1)return Q}else if(iQ.test($)===!1)return Q;return oQ(Q,{protoAction:X,constructorAction:Y,safe:J&&J.safe})}function oQ($,{protoAction:H="error",constructorAction:J="error",safe:Q}={}){let X=[$];while(X.length){let Y=X;X=[];for(let W of Y){if(H!=="ignore"&&Object.prototype.hasOwnProperty.call(W,"__proto__")){if(Q===!0)return null;else if(H==="error")throw SyntaxError("Object contains forbidden prototype property");delete W.__proto__}if(J!=="ignore"&&Object.prototype.hasOwnProperty.call(W,"constructor")&&W.constructor!==null&&typeof W.constructor==="object"&&Object.prototype.hasOwnProperty.call(W.constructor,"prototype")){if(Q===!0)return null;else if(J==="error")throw SyntaxError("Object contains forbidden prototype property");delete W.constructor}for(let G in W){let q=W[G];if(q&&typeof q==="object")X.push(q)}}}return $}function $5($,H,J){let{stackTraceLimit:Q}=Error;Error.stackTraceLimit=0;try{return sQ($,H,J)}finally{Error.stackTraceLimit=Q}}function ZA($,H){let{stackTraceLimit:J}=Error;Error.stackTraceLimit=0;try{return sQ($,H,{safe:!0})}catch{return}finally{Error.stackTraceLimit=J}}C$.exports=$5;C$.exports.default=$5;C$.exports.parse=$5;C$.exports.safeParse=ZA;C$.exports.scan=oQ});var eQ=N((sP,tQ)=>{tQ.exports=kA;var LA=rQ(),aQ=$2(),MA=o6(),SA=r6(),CA=a6(),PA=t6(),KA=J2(),IA=e6(),TA=y6(),{LEVELS:bA,LEVEL_KEY:fA,LEVEL_NAMES:H5}=A0(),xA=($)=>{try{return{value:LA.parse($,{protoAction:"remove"})}}catch(H){return{err:H}}};function kA($){let H;if(!aQ($)){let G=xA($);if(G.err||!aQ(G.value))return $+this.EOL;H=G.value}else H=$;if(this.minimumLevel){let G;if(this.useOnlyCustomProps)G=this.customLevels;else G=this.customLevelNames[this.minimumLevel]!==void 0;let q;if(G)q=this.customLevelNames[this.minimumLevel];else q=H5[this.minimumLevel];if(!q)q=typeof this.minimumLevel==="string"?H5[this.minimumLevel]:H5[bA[this.minimumLevel].toLowerCase()];if(H[this.levelKey===void 0?fA:this.levelKey]<q)return}let J=CA({log:H,context:this.context});if(this.ignoreKeys||this.includeKeys)H=TA({log:H,context:this.context});let Q=SA({log:H,context:{...this.context,...this.context.customProperties}}),X=PA({log:H,context:this.context}),Y=IA({log:H,context:this.context}),W="";if(this.levelFirst&&Q)W=`${Q}`;if(Y&&W==="")W=`${Y}`;else if(Y)W=`${W} ${Y}`;if(!this.levelFirst&&Q)if(W.length>0)W=`${W} ${Q}`;else W=Q;if(X)if(W.length>0)W=`${W} ${X}:`;else W=X;if(W.endsWith(":")===!1&&W!=="")W+=":";if(J!==void 0)if(W.length>0)W=`${W} ${J}`;else W=J;if(W.length>0&&!this.singleLine)W+=this.EOL;if(H.type==="Error"&&typeof H.stack==="string"){let G=MA({log:H,context:this.context});if(this.singleLine)W+=this.EOL;W+=G}else if(this.hideObject===!1){let G=[this.messageKey,this.levelKey,this.timestampKey].map((U)=>U.replaceAll(/\\/g,"")).filter((U)=>{return typeof H[U]==="string"||typeof H[U]==="number"||typeof H[U]==="boolean"}),q=KA({log:H,skipKeys:G,context:this.context});if(this.singleLine&&!/^\s$/.test(q))W+=" ";W+=q}return W}});var JX=N((oP,K0)=>{var{isColorSupported:$X}=Z6(),hA=xJ(),{Transform:vA}=require("node:stream"),gA=cJ(),yA=K6(),{ERROR_LIKE_KEYS:HX,LEVEL_KEY:uA,LEVEL_LABEL:mA,MESSAGE_KEY:dA,TIMESTAMP_KEY:cA}=A0(),{buildSafeSonicBoom:lA,parseFactoryOptions:pA}=pQ(),nA=eQ(),iA={colorize:$X,colorizeObjects:!0,crlf:!1,customColors:null,customLevels:null,customPrettifiers:{},errorLikeObjectKeys:HX,errorProps:"",hideObject:!1,ignore:"hostname",include:void 0,levelFirst:!1,levelKey:uA,levelLabel:mA,messageFormat:null,messageKey:dA,minimumLevel:void 0,outputStream:process.stdout,singleLine:!1,timestampKey:cA,translateTime:!0,useOnlyCustomProps:!0};function J5($){let H=pA(Object.assign({},iA,$));return nA.bind({...H,context:H})}function Q2($={}){let H=J5($),J;return gA(function(Q){Q.on("message",function Y(W){if(!W||W.code!=="PINO_CONFIG")return;Object.assign($,{messageKey:W.config.messageKey,errorLikeObjectKeys:Array.from(new Set([...$.errorLikeObjectKeys||HX,W.config.errorKey])),customLevels:W.config.levels.values}),H=J5($),Q.off("message",Y)});let X=new vA({objectMode:!0,autoDestroy:!0,transform(Y,W,G){let q=H(Y);G(null,q)}});if(typeof $.destination==="object"&&typeof $.destination.write==="function")J=$.destination;else J=lA({dest:$.destination||1,append:$.append,mkdir:$.mkdir,sync:$.sync});return Q.on("unknown",function(Y){J.write(Y+`
|
|
27
|
-
`)}),hA(Q,X,J),X},{parse:"lines",close(Q,X){J.on("close",()=>{X(Q)})}})}K0.exports=Q2;K0.exports.build=Q2;K0.exports.PinoPretty=Q2;K0.exports.prettyFactory=J5;K0.exports.colorizerFactory=yA;K0.exports.isColorSupported
|
|
26
|
+
`,J=" ",{customPrettifiers:Q,errorLikeObjectKeys:X,hideObject:Y,levelFirst:W,levelKey:G,levelLabel:q,messageFormat:U,messageKey:B,minimumLevel:w,singleLine:_,timestampKey:V,translateTime:D}=$,A=$.errorProps.split(","),E=typeof $.useOnlyCustomProps==="boolean"?$.useOnlyCustomProps:$.useOnlyCustomProps==="true",Z=tN($.customLevels),M=eN($.customLevels),L=$A(E,Z,M),b;if($.customColors)if(typeof $.customColors==="string")b=$.customColors.split(",").reduce((W1,G1)=>{let[X1,I]=G1.split(":"),E1=(E?$.customLevels:M[X1]!==void 0)?M[X1]:IQ[X1],X0=E1!==void 0?E1:X1;return W1.push([X0,I]),W1},[]);else if(typeof $.customColors==="object")b=Object.keys($.customColors).reduce((W1,G1)=>{let[X1,I]=[G1,$.customColors[G1]],E1=(E?$.customLevels:M[X1]!==void 0)?M[X1]:IQ[X1],X0=E1!==void 0?E1:X1;return W1.push([X0,I]),W1},[]);else throw Error("options.customColors must be of type string or object.");let v={customLevels:Z,customLevelNames:M};if(E===!0&&!$.customLevels)v.customLevels=void 0,v.customLevelNames=void 0;let l=$.include!==void 0?new Set($.include.split(",")):void 0,i=!l&&$.ignore?new Set($.ignore.split(",")):void 0,J1=TQ($.colorize,b,E),d=$.colorizeObjects?J1:TQ(!1,[],!1);return{EOL:H,IDENT:" ",colorizer:J1,customColors:b,customLevelNames:M,customLevels:Z,customPrettifiers:Q,customProperties:v,errorLikeObjectKeys:X,errorProps:A,getLevelLabelData:L,hideObject:Y,ignoreKeys:i,includeKeys:l,levelFirst:W,levelKey:G,levelLabel:q,messageFormat:U,messageKey:B,minimumLevel:w,objectColorizer:d,singleLine:_,timestampKey:V,translateTime:D,useOnlyCustomProps:E}}});var yQ=N((gP,gQ)=>{gQ.exports=I4;I4.default=I4;I4.stable=hQ;I4.stableStringify=hQ;var H2="[...]",xQ="[Circular]",s0=[],i0=[];function kQ(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function I4($,H,J,Q){if(typeof Q>"u")Q=kQ();p6($,"",0,[],void 0,0,Q);var X;try{if(i0.length===0)X=JSON.stringify($,H,J);else X=JSON.stringify($,vQ(H),J)}catch(W){return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{while(s0.length!==0){var Y=s0.pop();if(Y.length===4)Object.defineProperty(Y[0],Y[1],Y[3]);else Y[0][Y[1]]=Y[2]}}return X}function S$($,H,J,Q){var X=Object.getOwnPropertyDescriptor(Q,J);if(X.get!==void 0)if(X.configurable)Object.defineProperty(Q,J,{value:$}),s0.push([Q,J,H,X]);else i0.push([H,J,$]);else Q[J]=$,s0.push([Q,J,H])}function p6($,H,J,Q,X,Y,W){Y+=1;var G;if(typeof $==="object"&&$!==null){for(G=0;G<Q.length;G++)if(Q[G]===$){S$(xQ,$,H,X);return}if(typeof W.depthLimit<"u"&&Y>W.depthLimit){S$(H2,$,H,X);return}if(typeof W.edgesLimit<"u"&&J+1>W.edgesLimit){S$(H2,$,H,X);return}if(Q.push($),Array.isArray($))for(G=0;G<$.length;G++)p6($[G],G,G,Q,$,Y,W);else{var q=Object.keys($);for(G=0;G<q.length;G++){var U=q[G];p6($[U],U,G,Q,$,Y,W)}}Q.pop()}}function JA($,H){if($<H)return-1;if($>H)return 1;return 0}function hQ($,H,J,Q){if(typeof Q>"u")Q=kQ();var X=n6($,"",0,[],void 0,0,Q)||$,Y;try{if(i0.length===0)Y=JSON.stringify(X,H,J);else Y=JSON.stringify(X,vQ(H),J)}catch(G){return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{while(s0.length!==0){var W=s0.pop();if(W.length===4)Object.defineProperty(W[0],W[1],W[3]);else W[0][W[1]]=W[2]}}return Y}function n6($,H,J,Q,X,Y,W){Y+=1;var G;if(typeof $==="object"&&$!==null){for(G=0;G<Q.length;G++)if(Q[G]===$){S$(xQ,$,H,X);return}try{if(typeof $.toJSON==="function")return}catch(w){return}if(typeof W.depthLimit<"u"&&Y>W.depthLimit){S$(H2,$,H,X);return}if(typeof W.edgesLimit<"u"&&J+1>W.edgesLimit){S$(H2,$,H,X);return}if(Q.push($),Array.isArray($))for(G=0;G<$.length;G++)n6($[G],G,G,Q,$,Y,W);else{var q={},U=Object.keys($).sort(JA);for(G=0;G<U.length;G++){var B=U[G];n6($[B],B,G,Q,$,Y,W),q[B]=$[B]}if(typeof X<"u")s0.push([X,H,$]),X[H]=q;else return q}Q.pop()}}function vQ($){return $=typeof $<"u"?$:function(H,J){return J},function(H,J){if(i0.length>0)for(var Q=0;Q<i0.length;Q++){var X=i0[Q];if(X[1]===H&&X[0]===J){J=X[2],i0.splice(Q,1);break}}return $.call(this,H,J)}}});var i6=N((yP,uQ)=>{uQ.exports=XA;var QA=K4();function XA({keyName:$,lines:H,eol:J,ident:Q}){let X="",Y=QA({input:H,ident:Q,eol:J}),W=`${Q}${$}: ${Y}${J}`.split(J);for(let G=0;G<W.length;G+=1){if(G!==0)X+=J;let q=W[G];if(/^\s*"stack"/.test(q)){let U=/^(\s*"stack":)\s*(".*"),?$/.exec(q);if(U&&U.length===3){let B=/^\s*/.exec(q)[0].length+4,w=" ".repeat(B),_=U[2];X+=U[1]+J+w+JSON.parse(_).replace(/\n/g,J+w)}else X+=q}else X+=q}return X}});var J2=N((uP,mQ)=>{mQ.exports=qA;var{LOGGER_KEYS:YA}=A0(),s6=yQ(),WA=K4(),GA=i6();function qA({log:$,excludeLoggerKeys:H=!0,skipKeys:J=[],context:Q}){let{EOL:X,IDENT:Y,customPrettifiers:W,errorLikeObjectKeys:G,objectColorizer:q,singleLine:U,colorizer:B}=Q,w=[].concat(J);if(H===!0)Array.prototype.push.apply(w,YA);let _="",{plain:V,errors:D}=Object.entries($).reduce(({plain:A,errors:E},[Z,M])=>{if(w.includes(Z)===!1){let L=typeof W[Z]==="function"?W[Z](M,Z,$,{colors:B.colors}):M;if(G.includes(Z))E[Z]=L;else A[Z]=L}return{plain:A,errors:E}},{plain:{},errors:{}});if(U){if(Object.keys(V).length>0)_+=q.greyMessage(s6(V));_+=X,_=_.replace(/\\\\/gi,"\\")}else Object.entries(V).forEach(([A,E])=>{let Z=typeof W[A]==="function"?E:s6(E,null,2);if(Z===void 0)return;Z=Z.replace(/\\\\/gi,"\\");let M=WA({input:Z,ident:Y,eol:X});_+=`${Y}${q.property(A)}:${M.startsWith(X)?"":" "}${M}${X}`});return Object.entries(D).forEach(([A,E])=>{let Z=typeof W[A]==="function"?E:s6(E,null,2);if(Z===void 0)return;_+=GA({keyName:A,lines:Z,eol:X,ident:Y})}),_}});var o6=N((mP,dQ)=>{dQ.exports=VA;var{LOGGER_KEYS:UA}=A0(),BA=$2(),wA=K4(),DA=J2();function VA({log:$,context:H}){let{EOL:J,IDENT:Q,errorProps:X,messageKey:Y}=H,W=$.stack,G=wA({input:W,ident:Q,eol:J}),q=`${Q}${G}${J}`;if(X.length>0){let U=UA.concat(Y,"type","stack"),B;if(X[0]==="*")B=Object.keys($).filter((w)=>U.includes(w)===!1);else B=X.filter((w)=>U.includes(w)===!1);for(let w=0;w<B.length;w+=1){let _=B[w];if(_ in $===!1)continue;if(BA($[_])){let V=DA({log:$[_],excludeLoggerKeys:!1,context:{...H,IDENT:Q+Q}});q=`${q}${Q}${_}: {${J}${V}${Q}}${J}`;continue}q=`${q}${Q}${_}: ${$[_]}${J}`}}return q}});var r6=N((dP,cQ)=>{cQ.exports=FA;var _A=Z$();function FA({log:$,context:H}){let{colorizer:J,customLevels:Q,customLevelNames:X,levelKey:Y,getLevelLabelData:W}=H,G=H.customPrettifiers?.level,q=_A($,Y);if(q===void 0)return;let U=J(q,{customLevels:Q,customLevelNames:X});if(G){let[B]=W(q);return G(q,Y,$,{label:B,labelColorized:U,colors:J.colors})}return U}});var a6=N((cP,pQ)=>{pQ.exports=AA;var{LEVELS:zA}=A0(),lQ=Z$(),NA=l6();function AA({log:$,context:H}){let{colorizer:J,customLevels:Q,levelKey:X,levelLabel:Y,messageFormat:W,messageKey:G,useOnlyCustomProps:q}=H;if(W&&typeof W==="string"){let U=NA(W,$),B=String(U).replace(/{([^{}]+)}/g,function(w,_){let V;if(_===Y&&(V=lQ($,X))!==void 0)return(q?Q===void 0:Q[V]===void 0)?zA[V]:Q[V];return lQ($,_)||""});return J.message(B)}if(W&&typeof W==="function"){let U=W($,G,Y,{colors:J.colors});return J.message(U)}if(G in $===!1)return;if(typeof $[G]!=="string"&&typeof $[G]!=="number"&&typeof $[G]!=="boolean")return;return J.message($[G])}});var t6=N((lP,nQ)=>{nQ.exports=RA;function RA({log:$,context:H}){let{customPrettifiers:J,colorizer:Q}=H,X="";if($.name||$.pid||$.hostname){if(X+="(",$.name)X+=J.name?J.name($.name,"name",$,{colors:Q.colors}):$.name;if($.pid){let Y=J.pid?J.pid($.pid,"pid",$,{colors:Q.colors}):$.pid;if($.name&&$.pid)X+="/"+Y;else X+=Y}if($.hostname){let Y=J.hostname?J.hostname($.hostname,"hostname",$,{colors:Q.colors}):$.hostname;X+=`${X==="("?"on":" on"} ${Y}`}X+=")"}if($.caller){let Y=J.caller?J.caller($.caller,"caller",$,{colors:Q.colors}):$.caller;X+=`${X===""?"":" "}<${Y}>`}if(X==="")return;else return X}});var e6=N((pP,iQ)=>{iQ.exports=jA;var EA=m6();function jA({log:$,context:H}){let{timestampKey:J,translateTime:Q}=H,X=H.customPrettifiers?.time,Y=null;if(J in $)Y=$[J];else if("timestamp"in $)Y=$.timestamp;if(Y===null)return;let W=Q?EA(Y,Q):Y;return X?X(W):`[${W}]`}});var oQ=N((nP,sQ)=>{sQ.exports={buildSafeSonicBoom:XQ(),createDate:T6(),deleteLogProperty:b6(),filterLog:y6(),formatTime:m6(),getPropertyValue:Z$(),handleCustomLevelsNamesOpts:d6(),handleCustomLevelsOpts:c6(),interpretConditionals:l6(),isObject:$2(),isValidDate:r9(),joinLinesWithIndentation:K4(),noop:I6(),parseFactoryOptions:fQ(),prettifyErrorLog:o6(),prettifyError:i6(),prettifyLevel:r6(),prettifyMessage:a6(),prettifyMetadata:t6(),prettifyObject:J2(),prettifyTime:e6(),splitPropertyKey:a9(),getLevelLabelData:i9()}});var $X=N((iP,C$)=>{var OA=typeof Buffer<"u",rQ=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,aQ=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function tQ($,H,J){if(J==null){if(H!==null&&typeof H==="object")J=H,H=void 0}if(OA&&Buffer.isBuffer($))$=$.toString();if($&&$.charCodeAt(0)===65279)$=$.slice(1);let Q=JSON.parse($,H);if(Q===null||typeof Q!=="object")return Q;let X=J&&J.protoAction||"error",Y=J&&J.constructorAction||"error";if(X==="ignore"&&Y==="ignore")return Q;if(X!=="ignore"&&Y!=="ignore"){if(rQ.test($)===!1&&aQ.test($)===!1)return Q}else if(X!=="ignore"&&Y==="ignore"){if(rQ.test($)===!1)return Q}else if(aQ.test($)===!1)return Q;return eQ(Q,{protoAction:X,constructorAction:Y,safe:J&&J.safe})}function eQ($,{protoAction:H="error",constructorAction:J="error",safe:Q}={}){let X=[$];while(X.length){let Y=X;X=[];for(let W of Y){if(H!=="ignore"&&Object.prototype.hasOwnProperty.call(W,"__proto__")){if(Q===!0)return null;else if(H==="error")throw SyntaxError("Object contains forbidden prototype property");delete W.__proto__}if(J!=="ignore"&&Object.prototype.hasOwnProperty.call(W,"constructor")&&W.constructor!==null&&typeof W.constructor==="object"&&Object.prototype.hasOwnProperty.call(W.constructor,"prototype")){if(Q===!0)return null;else if(J==="error")throw SyntaxError("Object contains forbidden prototype property");delete W.constructor}for(let G in W){let q=W[G];if(q&&typeof q==="object")X.push(q)}}}return $}function $5($,H,J){let{stackTraceLimit:Q}=Error;Error.stackTraceLimit=0;try{return tQ($,H,J)}finally{Error.stackTraceLimit=Q}}function ZA($,H){let{stackTraceLimit:J}=Error;Error.stackTraceLimit=0;try{return tQ($,H,{safe:!0})}catch{return}finally{Error.stackTraceLimit=J}}C$.exports=$5;C$.exports.default=$5;C$.exports.parse=$5;C$.exports.safeParse=ZA;C$.exports.scan=eQ});var QX=N((sP,JX)=>{JX.exports=kA;var LA=$X(),HX=$2(),MA=o6(),SA=r6(),CA=a6(),PA=t6(),KA=J2(),IA=e6(),TA=y6(),{LEVELS:bA,LEVEL_KEY:fA,LEVEL_NAMES:H5}=A0(),xA=($)=>{try{return{value:LA.parse($,{protoAction:"remove"})}}catch(H){return{err:H}}};function kA($){let H;if(!HX($)){let G=xA($);if(G.err||!HX(G.value))return $+this.EOL;H=G.value}else H=$;if(this.minimumLevel){let G;if(this.useOnlyCustomProps)G=this.customLevels;else G=this.customLevelNames[this.minimumLevel]!==void 0;let q;if(G)q=this.customLevelNames[this.minimumLevel];else q=H5[this.minimumLevel];if(!q)q=typeof this.minimumLevel==="string"?H5[this.minimumLevel]:H5[bA[this.minimumLevel].toLowerCase()];if(H[this.levelKey===void 0?fA:this.levelKey]<q)return}let J=CA({log:H,context:this.context});if(this.ignoreKeys||this.includeKeys)H=TA({log:H,context:this.context});let Q=SA({log:H,context:{...this.context,...this.context.customProperties}}),X=PA({log:H,context:this.context}),Y=IA({log:H,context:this.context}),W="";if(this.levelFirst&&Q)W=`${Q}`;if(Y&&W==="")W=`${Y}`;else if(Y)W=`${W} ${Y}`;if(!this.levelFirst&&Q)if(W.length>0)W=`${W} ${Q}`;else W=Q;if(X)if(W.length>0)W=`${W} ${X}:`;else W=X;if(W.endsWith(":")===!1&&W!=="")W+=":";if(J!==void 0)if(W.length>0)W=`${W} ${J}`;else W=J;if(W.length>0&&!this.singleLine)W+=this.EOL;if(H.type==="Error"&&typeof H.stack==="string"){let G=MA({log:H,context:this.context});if(this.singleLine)W+=this.EOL;W+=G}else if(this.hideObject===!1){let G=[this.messageKey,this.levelKey,this.timestampKey].map((U)=>U.replaceAll(/\\/g,"")).filter((U)=>{return typeof H[U]==="string"||typeof H[U]==="number"||typeof H[U]==="boolean"}),q=KA({log:H,skipKeys:G,context:this.context});if(this.singleLine&&!/^\s$/.test(q))W+=" ";W+=q}return W}});var WX=N((oP,K0)=>{var{isColorSupported:XX}=Z6(),hA=gJ(),{Transform:vA}=require("node:stream"),gA=iJ(),yA=K6(),{ERROR_LIKE_KEYS:YX,LEVEL_KEY:uA,LEVEL_LABEL:mA,MESSAGE_KEY:dA,TIMESTAMP_KEY:cA}=A0(),{buildSafeSonicBoom:lA,parseFactoryOptions:pA}=oQ(),nA=QX(),iA={colorize:XX,colorizeObjects:!0,crlf:!1,customColors:null,customLevels:null,customPrettifiers:{},errorLikeObjectKeys:YX,errorProps:"",hideObject:!1,ignore:"hostname",include:void 0,levelFirst:!1,levelKey:uA,levelLabel:mA,messageFormat:null,messageKey:dA,minimumLevel:void 0,outputStream:process.stdout,singleLine:!1,timestampKey:cA,translateTime:!0,useOnlyCustomProps:!0};function J5($){let H=pA(Object.assign({},iA,$));return nA.bind({...H,context:H})}function Q2($={}){let H=J5($),J;return gA(function(Q){Q.on("message",function Y(W){if(!W||W.code!=="PINO_CONFIG")return;Object.assign($,{messageKey:W.config.messageKey,errorLikeObjectKeys:Array.from(new Set([...$.errorLikeObjectKeys||YX,W.config.errorKey])),customLevels:W.config.levels.values}),H=J5($),Q.off("message",Y)});let X=new vA({objectMode:!0,autoDestroy:!0,transform(Y,W,G){let q=H(Y);G(null,q)}});if(typeof $.destination==="object"&&typeof $.destination.write==="function")J=$.destination;else J=lA({dest:$.destination||1,append:$.append,mkdir:$.mkdir,sync:$.sync});return Q.on("unknown",function(Y){J.write(Y+`
|
|
27
|
+
`)}),hA(Q,X,J),X},{parse:"lines",close(Q,X){J.on("close",()=>{X(Q)})}})}K0.exports=Q2;K0.exports.build=Q2;K0.exports.PinoPretty=Q2;K0.exports.prettyFactory=J5;K0.exports.colorizerFactory=yA;K0.exports.isColorSupported=XX;K0.exports.default=Q2});var q5={};L1(q5,{parseTTL:()=>r0});function r0($){if(typeof $==="number")return $;let H=$.match(/^(\d+)([smhd])$/);if(!H)throw Error(`Invalid TTL format: ${$}. Use format like '5s', '5m', '5h', '5d' or a number`);let J=parseInt(H[1],10),Q=H[2];switch(Q){case"s":return J;case"m":return J*60;case"h":return J*3600;case"d":return J*86400;default:throw Error(`Unknown TTL unit: ${Q}`)}}class b4{cache=new Map;cleanupInterval;maxSize;constructor($={}){this.maxSize=$.maxSize||1000;let H=$.cleanupInterval??60000;if(H>0)this.cleanupInterval=setInterval(()=>{this.cleanup()},H)}async get($){let H=this.cache.get($);if(!H)return null;if(H.expiresAt>0&&Date.now()>H.expiresAt)return this.cache.delete($),null;return H.data}async set($,H,J=0){if(this.cache.size>=this.maxSize&&!this.cache.has($))this.removeOldest();let Q=Date.now(),X={data:H,createdAt:Q,expiresAt:J>0?Q+J*1000:0};this.cache.set($,X)}async delete($){return this.cache.delete($)}async has($){let H=this.cache.get($);if(!H)return!1;if(H.expiresAt>0&&Date.now()>H.expiresAt)return this.cache.delete($),!1;return!0}async clear(){this.cache.clear()}async deletePattern($){let H=this.patternToRegex($),J=0;for(let Q of this.cache.keys())if(H.test(Q))this.cache.delete(Q),J++;return J}async keys($){let H=Array.from(this.cache.keys());if(!$)return H;let J=this.patternToRegex($);return H.filter((Q)=>J.test(Q))}getStats(){return{size:this.cache.size,maxSize:this.maxSize}}cleanup(){let $=Date.now();for(let[H,J]of this.cache.entries())if(J.expiresAt>0&&$>J.expiresAt)this.cache.delete(H)}removeOldest(){let $=null,H=1/0;for(let[J,Q]of this.cache.entries())if(Q.createdAt<H)H=Q.createdAt,$=J;if($)this.cache.delete($)}patternToRegex($){let J=$.replace(/[.+?^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*");return new RegExp(`^${J}$`)}destroy(){if(this.cleanupInterval)clearInterval(this.cleanupInterval)}}var _5={};L1(_5,{setCache:()=>B5,invalidateCache:()=>D5,getCache:()=>U5,deleteCache:()=>w5,clearCache:()=>V5,CacheManager:()=>f1});async function U5($){return await f1.get($)}async function B5($,H,J){await f1.set($,H,J)}async function w5($){return await f1.delete($)}async function D5($){return await f1.invalidate($)}async function V5(){await f1.clear()}var f1;var f4=Z9(()=>{f1=class f1{static defaultStore=new b4;static stores=new Map;static setDefaultStore($){this.defaultStore=$}static getDefaultStore(){return this.defaultStore}static registerStore($,H){this.stores.set($,H)}static getStore($){return this.stores.get($)}static generateKey($,H,J,Q,X){let Y=[];if(X?.prefix)Y.push(X.prefix);if(X?.key){let W=X.key;if(J)for(let[G,q]of Object.entries(J))W=W.replace(`{${G}}`,String(q));Y.push(W)}else if(Y.push($.toLowerCase()),Y.push(H.replace(/\//g,":")),J&&Object.keys(J).length>0)Y.push(JSON.stringify(J));if(X?.includeQuery&&Q&&Object.keys(Q).length>0){let W=Object.keys(Q).sort().reduce((G,q)=>{return G[q]=Q[q],G},{});Y.push(JSON.stringify(W))}return Y.join(":")}static async get($,H){return await(H||this.defaultStore).get($)}static async set($,H,J,Q){let X=Q||this.defaultStore,Y=J?r0(J):0;await X.set($,H,Y)}static async delete($,H){return await(H||this.defaultStore).delete($)}static async invalidate($,H){return await(H||this.defaultStore).deletePattern($)}static async clear($){await($||this.defaultStore).clear()}}});var Q$=N(()=>{/*! *****************************************************************************
|
|
28
28
|
Copyright (C) Microsoft. All rights reserved.
|
|
29
29
|
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
|
30
30
|
this file except in compliance with the License. You may obtain a copy of the
|
|
@@ -37,13 +37,13 @@ MERCHANTABLITY OR NON-INFRINGEMENT.
|
|
|
37
37
|
|
|
38
38
|
See the Apache Version 2.0 License for specific language governing permissions
|
|
39
39
|
and limitations under the License.
|
|
40
|
-
***************************************************************************** */var rX;(function($){(function(H){var J=typeof globalThis==="object"?globalThis:typeof global==="object"?global:typeof self==="object"?self:typeof this==="object"?this:G(),Q=X($);if(typeof J.Reflect<"u")Q=X(J.Reflect,Q);if(H(Q,J),typeof J.Reflect>"u")J.Reflect=$;function X(q,U){return function(B,w){if(Object.defineProperty(q,B,{configurable:!0,writable:!0,value:w}),U)U(B,w)}}function Y(){try{return Function("return this;")()}catch(q){}}function W(){try{return(0,eval)("(function() { return this; })()")}catch(q){}}function G(){return Y()||W()}})(function(H,J){var Q=Object.prototype.hasOwnProperty,X=typeof Symbol==="function",Y=X&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",W=X&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",G=typeof Object.create==="function",q={__proto__:[]}instanceof Array,U=!G&&!q,B={create:G?function(){return S8(Object.create(null))}:q?function(){return S8({__proto__:null})}:function(){return S8({})},has:U?function(F,z){return Q.call(F,z)}:function(F,z){return z in F},get:U?function(F,z){return Q.call(F,z)?F[z]:void 0}:function(F,z){return F[z]}},w=Object.getPrototypeOf(Function),_=typeof Map==="function"&&typeof Map.prototype.entries==="function"?Map:bB(),V=typeof Set==="function"&&typeof Set.prototype.entries==="function"?Set:fB(),D=typeof WeakMap==="function"?WeakMap:xB(),A=X?Symbol.for("@reflect-metadata:registry"):void 0,E=KB(),Z=IB(E);function M(F,z,j,K){if(!s(j)){if(!Y3(F))throw TypeError();if(!_1(z))throw TypeError();if(!_1(K)&&!s(K)&&!A$(K))throw TypeError();if(A$(K))K=void 0;return j=Y0(j),I(F,z,j,K)}else{if(!Y3(F))throw TypeError();if(!W3(z))throw TypeError();return X1(F,z)}}H("decorate",M);function L(F,z){function j(K,c){if(!_1(K))throw TypeError();if(!s(c)&&!CB(c))throw TypeError();j9(F,z,K,c)}return j}H("metadata",L);function b(F,z,j,K){if(!_1(j))throw TypeError();if(!s(K))K=Y0(K);return j9(F,z,j,K)}H("defineMetadata",b);function v(F,z,j){if(!_1(z))throw TypeError();if(!s(j))j=Y0(j);return R1(F,z,j)}H("hasMetadata",v);function l(F,z,j){if(!_1(z))throw TypeError();if(!s(j))j=Y0(j);return E1(F,z,j)}H("hasOwnMetadata",l);function i(F,z,j){if(!_1(z))throw TypeError();if(!s(j))j=Y0(j);return X0(F,z,j)}H("getMetadata",i);function J1(F,z,j){if(!_1(z))throw TypeError();if(!s(j))j=Y0(j);return D4(F,z,j)}H("getOwnMetadata",J1);function d(F,z){if(!_1(F))throw TypeError();if(!s(z))z=Y0(z);return V4(F,z)}H("getMetadataKeys",d);function W1(F,z){if(!_1(F))throw TypeError();if(!s(z))z=Y0(z);return O9(F,z)}H("getOwnMetadataKeys",W1);function G1(F,z,j){if(!_1(z))throw TypeError();if(!s(j))j=Y0(j);if(!_1(z))throw TypeError();if(!s(j))j=Y0(j);var K=_4(z,j,!1);if(s(K))return!1;return K.OrdinaryDeleteMetadata(F,z,j)}H("deleteMetadata",G1);function X1(F,z){for(var j=F.length-1;j>=0;--j){var K=F[j],c=K(z);if(!s(c)&&!A$(c)){if(!W3(c))throw TypeError();z=c}}return z}function I(F,z,j,K){for(var c=F.length-1;c>=0;--c){var F1=F[c],A1=F1(z,j,K);if(!s(A1)&&!A$(A1)){if(!_1(A1))throw TypeError();K=A1}}return K}function R1(F,z,j){var K=E1(F,z,j);if(K)return!0;var c=M8(z);if(!A$(c))return R1(F,c,j);return!1}function E1(F,z,j){var K=_4(z,j,!1);if(s(K))return!1;return X3(K.OrdinaryHasOwnMetadata(F,z,j))}function X0(F,z,j){var K=E1(F,z,j);if(K)return D4(F,z,j);var c=M8(z);if(!A$(c))return X0(F,c,j);return}function D4(F,z,j){var K=_4(z,j,!1);if(s(K))return;return K.OrdinaryGetOwnMetadata(F,z,j)}function j9(F,z,j,K){var c=_4(j,K,!0);c.OrdinaryDefineOwnMetadata(F,z,j,K)}function V4(F,z){var j=O9(F,z),K=M8(F);if(K===null)return j;var c=V4(K,z);if(c.length<=0)return j;if(j.length<=0)return c;var F1=new V,A1=[];for(var $1=0,f=j;$1<f.length;$1++){var h=f[$1],g=F1.has(h);if(!g)F1.add(h),A1.push(h)}for(var u=0,Q1=c;u<Q1.length;u++){var h=Q1[u],g=F1.has(h);if(!g)F1.add(h),A1.push(h)}return A1}function O9(F,z){var j=_4(F,z,!1);if(!j)return[];return j.OrdinaryOwnMetadataKeys(F,z)}function Q3(F){if(F===null)return 1;switch(typeof F){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return F===null?1:6;default:return 6}}function s(F){return F===void 0}function A$(F){return F===null}function ZB(F){return typeof F==="symbol"}function _1(F){return typeof F==="object"?F!==null:typeof F==="function"}function LB(F,z){switch(Q3(F)){case 0:return F;case 1:return F;case 2:return F;case 3:return F;case 4:return F;case 5:return F}var j=z===3?"string":z===5?"number":"default",K=G3(F,Y);if(K!==void 0){var c=K.call(F,j);if(_1(c))throw TypeError();return c}return MB(F,j==="default"?"number":j)}function MB(F,z){if(z==="string"){var j=F.toString;if(R$(j)){var K=j.call(F);if(!_1(K))return K}var c=F.valueOf;if(R$(c)){var K=c.call(F);if(!_1(K))return K}}else{var c=F.valueOf;if(R$(c)){var K=c.call(F);if(!_1(K))return K}var F1=F.toString;if(R$(F1)){var K=F1.call(F);if(!_1(K))return K}}throw TypeError()}function X3(F){return!!F}function SB(F){return""+F}function Y0(F){var z=LB(F,3);if(ZB(z))return z;return SB(z)}function Y3(F){return Array.isArray?Array.isArray(F):F instanceof Object?F instanceof Array:Object.prototype.toString.call(F)==="[object Array]"}function R$(F){return typeof F==="function"}function W3(F){return typeof F==="function"}function CB(F){switch(Q3(F)){case 3:return!0;case 4:return!0;default:return!1}}function L8(F,z){return F===z||F!==F&&z!==z}function G3(F,z){var j=F[z];if(j===void 0||j===null)return;if(!R$(j))throw TypeError();return j}function q3(F){var z=G3(F,W);if(!R$(z))throw TypeError();var j=z.call(F);if(!_1(j))throw TypeError();return j}function U3(F){return F.value}function B3(F){var z=F.next();return z.done?!1:z}function w3(F){var z=F.return;if(z)z.call(F)}function M8(F){var z=Object.getPrototypeOf(F);if(typeof F!=="function"||F===w)return z;if(z!==w)return z;var j=F.prototype,K=j&&Object.getPrototypeOf(j);if(K==null||K===Object.prototype)return z;var c=K.constructor;if(typeof c!=="function")return z;if(c===F)return z;return c}function PB(){var F;if(!s(A)&&typeof J.Reflect<"u"&&!(A in J.Reflect)&&typeof J.Reflect.defineMetadata==="function")F=TB(J.Reflect);var z,j,K,c=new D,F1={registerProvider:A1,getProvider:f,setProvider:g};return F1;function A1(u){if(!Object.isExtensible(F1))throw Error("Cannot add provider to a frozen registry.");switch(!0){case F===u:break;case s(z):z=u;break;case z===u:break;case s(j):j=u;break;case j===u:break;default:if(K===void 0)K=new V;K.add(u);break}}function $1(u,Q1){if(!s(z)){if(z.isProviderFor(u,Q1))return z;if(!s(j)){if(j.isProviderFor(u,Q1))return z;if(!s(K)){var U1=q3(K);while(!0){var z1=B3(U1);if(!z1)return;var c1=U3(z1);if(c1.isProviderFor(u,Q1))return w3(U1),c1}}}}if(!s(F)&&F.isProviderFor(u,Q1))return F;return}function f(u,Q1){var U1=c.get(u),z1;if(!s(U1))z1=U1.get(Q1);if(!s(z1))return z1;if(z1=$1(u,Q1),!s(z1)){if(s(U1))U1=new _,c.set(u,U1);U1.set(Q1,z1)}return z1}function h(u){if(s(u))throw TypeError();return z===u||j===u||!s(K)&&K.has(u)}function g(u,Q1,U1){if(!h(U1))throw Error("Metadata provider not registered.");var z1=f(u,Q1);if(z1!==U1){if(!s(z1))return!1;var c1=c.get(u);if(s(c1))c1=new _,c.set(u,c1);c1.set(Q1,U1)}return!0}}function KB(){var F;if(!s(A)&&_1(J.Reflect)&&Object.isExtensible(J.Reflect))F=J.Reflect[A];if(s(F))F=PB();if(!s(A)&&_1(J.Reflect)&&Object.isExtensible(J.Reflect))Object.defineProperty(J.Reflect,A,{enumerable:!1,configurable:!1,writable:!1,value:F});return F}function IB(F){var z=new D,j={isProviderFor:function(h,g){var u=z.get(h);if(s(u))return!1;return u.has(g)},OrdinaryDefineOwnMetadata:A1,OrdinaryHasOwnMetadata:c,OrdinaryGetOwnMetadata:F1,OrdinaryOwnMetadataKeys:$1,OrdinaryDeleteMetadata:f};return E.registerProvider(j),j;function K(h,g,u){var Q1=z.get(h),U1=!1;if(s(Q1)){if(!u)return;Q1=new _,z.set(h,Q1),U1=!0}var z1=Q1.get(g);if(s(z1)){if(!u)return;if(z1=new _,Q1.set(g,z1),!F.setProvider(h,g,j)){if(Q1.delete(g),U1)z.delete(h);throw Error("Wrong provider for target.")}}return z1}function c(h,g,u){var Q1=K(g,u,!1);if(s(Q1))return!1;return X3(Q1.has(h))}function F1(h,g,u){var Q1=K(g,u,!1);if(s(Q1))return;return Q1.get(h)}function A1(h,g,u,Q1){var U1=K(u,Q1,!0);U1.set(h,g)}function $1(h,g){var u=[],Q1=K(h,g,!1);if(s(Q1))return u;var U1=Q1.keys(),z1=q3(U1),c1=0;while(!0){var D3=B3(z1);if(!D3)return u.length=c1,u;var kB=U3(D3);try{u[c1]=kB}catch(hB){try{w3(z1)}finally{throw hB}}c1++}}function f(h,g,u){var Q1=K(g,u,!1);if(s(Q1))return!1;if(!Q1.delete(h))return!1;if(Q1.size===0){var U1=z.get(g);if(!s(U1)){if(U1.delete(u),U1.size===0)z.delete(U1)}}return!0}}function TB(F){var{defineMetadata:z,hasOwnMetadata:j,getOwnMetadata:K,getOwnMetadataKeys:c,deleteMetadata:F1}=F,A1=new D,$1={isProviderFor:function(f,h){var g=A1.get(f);if(!s(g)&&g.has(h))return!0;if(c(f,h).length){if(s(g))g=new V,A1.set(f,g);return g.add(h),!0}return!1},OrdinaryDefineOwnMetadata:z,OrdinaryHasOwnMetadata:j,OrdinaryGetOwnMetadata:K,OrdinaryOwnMetadataKeys:c,OrdinaryDeleteMetadata:F1};return $1}function _4(F,z,j){var K=E.getProvider(F,z);if(!s(K))return K;if(j){if(E.setProvider(F,z,Z))return Z;throw Error("Illegal state.")}return}function bB(){var F={},z=[],j=function(){function $1(f,h,g){this._index=0,this._keys=f,this._values=h,this._selector=g}return $1.prototype["@@iterator"]=function(){return this},$1.prototype[W]=function(){return this},$1.prototype.next=function(){var f=this._index;if(f>=0&&f<this._keys.length){var h=this._selector(this._keys[f],this._values[f]);if(f+1>=this._keys.length)this._index=-1,this._keys=z,this._values=z;else this._index++;return{value:h,done:!1}}return{value:void 0,done:!0}},$1.prototype.throw=function(f){if(this._index>=0)this._index=-1,this._keys=z,this._values=z;throw f},$1.prototype.return=function(f){if(this._index>=0)this._index=-1,this._keys=z,this._values=z;return{value:f,done:!0}},$1}(),K=function(){function $1(){this._keys=[],this._values=[],this._cacheKey=F,this._cacheIndex=-2}return Object.defineProperty($1.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),$1.prototype.has=function(f){return this._find(f,!1)>=0},$1.prototype.get=function(f){var h=this._find(f,!1);return h>=0?this._values[h]:void 0},$1.prototype.set=function(f,h){var g=this._find(f,!0);return this._values[g]=h,this},$1.prototype.delete=function(f){var h=this._find(f,!1);if(h>=0){var g=this._keys.length;for(var u=h+1;u<g;u++)this._keys[u-1]=this._keys[u],this._values[u-1]=this._values[u];if(this._keys.length--,this._values.length--,L8(f,this._cacheKey))this._cacheKey=F,this._cacheIndex=-2;return!0}return!1},$1.prototype.clear=function(){this._keys.length=0,this._values.length=0,this._cacheKey=F,this._cacheIndex=-2},$1.prototype.keys=function(){return new j(this._keys,this._values,c)},$1.prototype.values=function(){return new j(this._keys,this._values,F1)},$1.prototype.entries=function(){return new j(this._keys,this._values,A1)},$1.prototype["@@iterator"]=function(){return this.entries()},$1.prototype[W]=function(){return this.entries()},$1.prototype._find=function(f,h){if(!L8(this._cacheKey,f)){this._cacheIndex=-1;for(var g=0;g<this._keys.length;g++)if(L8(this._keys[g],f)){this._cacheIndex=g;break}}if(this._cacheIndex<0&&h)this._cacheIndex=this._keys.length,this._keys.push(f),this._values.push(void 0);return this._cacheIndex},$1}();return K;function c($1,f){return $1}function F1($1,f){return f}function A1($1,f){return[$1,f]}}function fB(){var F=function(){function z(){this._map=new _}return Object.defineProperty(z.prototype,"size",{get:function(){return this._map.size},enumerable:!0,configurable:!0}),z.prototype.has=function(j){return this._map.has(j)},z.prototype.add=function(j){return this._map.set(j,j),this},z.prototype.delete=function(j){return this._map.delete(j)},z.prototype.clear=function(){this._map.clear()},z.prototype.keys=function(){return this._map.keys()},z.prototype.values=function(){return this._map.keys()},z.prototype.entries=function(){return this._map.entries()},z.prototype["@@iterator"]=function(){return this.keys()},z.prototype[W]=function(){return this.keys()},z}();return F}function xB(){var F=16,z=B.create(),j=K();return function(){function f(){this._key=K()}return f.prototype.has=function(h){var g=c(h,!1);return g!==void 0?B.has(g,this._key):!1},f.prototype.get=function(h){var g=c(h,!1);return g!==void 0?B.get(g,this._key):void 0},f.prototype.set=function(h,g){var u=c(h,!0);return u[this._key]=g,this},f.prototype.delete=function(h){var g=c(h,!1);return g!==void 0?delete g[this._key]:!1},f.prototype.clear=function(){this._key=K()},f}();function K(){var f;do f="@@WeakMap@@"+$1();while(B.has(z,f));return z[f]=!0,f}function c(f,h){if(!Q.call(f,j)){if(!h)return;Object.defineProperty(f,j,{value:B.create()})}return f[j]}function F1(f,h){for(var g=0;g<h;++g)f[g]=Math.random()*255|0;return f}function A1(f){if(typeof Uint8Array==="function"){var h=new Uint8Array(f);if(typeof crypto<"u")crypto.getRandomValues(h);else if(typeof msCrypto<"u")msCrypto.getRandomValues(h);else F1(h,f);return h}return F1(Array(f),f)}function $1(){var f=A1(F);f[6]=f[6]&79|64,f[8]=f[8]&191|128;var h="";for(var g=0;g<F;++g){var u=f[g];if(g===4||g===6||g===8)h+="-";if(u<16)h+="0";h+=u.toString(16).toLowerCase()}return h}}function S8(F){return F.__=void 0,delete F.__,F}})})(rX||(rX={}))});var x1,BY,wY,DY,z2;var i$=Z9(()=>{x1=class x1 extends Error{statusCode;details;constructor($,H,J){super(H);this.statusCode=$;this.details=J;if(this.name="HTTPException",Error.captureStackTrace)Error.captureStackTrace(this,this.constructor)}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};BY=class BY extends x1{constructor($="Not Found",H){super(404,$,H);this.name="NotFoundException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};wY=class wY extends x1{constructor($="Unauthorized",H){super(401,$,H);this.name="UnauthorizedException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};DY=class DY extends x1{constructor($="Forbidden",H){super(403,$,H);this.name="ForbiddenException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};z2=class z2 extends x1{constructor($="Bad Request",H){super(400,$,H);this.name="BadRequestException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}}});var yY={};L1(yY,{TokenRevokedException:()=>e5,TokenExpiredException:()=>e4,InvalidTokenException:()=>q$,AuthorizationException:()=>S1,AuthenticationException:()=>Z1});var Z1,S1,e4,q$,e5;var U$=Z9(()=>{i$();Z1=class Z1 extends x1{constructor($="Authentication required"){super(401,$);this.name="AuthenticationException"}toJSON(){return{error:"Authentication Error",message:this.message,statusCode:401}}};S1=class S1 extends x1{constructor($="Insufficient permissions"){super(403,$);this.name="AuthorizationException"}toJSON(){return{error:"Authorization Error",message:this.message,statusCode:403}}};e4=class e4 extends Z1{constructor($="Token has expired"){super($);this.name="TokenExpiredException"}};q$=class q$ extends Z1{constructor($="Invalid token"){super($);this.name="InvalidTokenException"}};e5=class e5 extends Z1{constructor($="Token has been revoked"){super($);this.name="TokenRevokedException"}}});var $7={};L1($7,{HonoAdapter:()=>x2});class x2{hono;name="hono";runtime;constructor($){this.hono=$;this.runtime=mE()}listen($,H){switch(this.runtime){case"bun":return this.listenBun($,H);case"deno":return this.listenDeno($,H);case"node":return this.listenNode($,H);case"workerd":throw Error("Cloudflare Workers do not support listen(). Deploy using wrangler or export the handler with getHandler().");default:throw Error(`Unsupported runtime: ${this.runtime}. FastAPI-TS supports Bun, Node.js, Deno, and Cloudflare Workers.`)}}getHandler(){return this.hono.fetch}getRuntime(){return this.runtime}listenBun($,H){let J=Bun.serve({port:$,fetch:this.hono.fetch});if(H)H();return{port:$,close:async()=>{J.stop()},...J}}listenDeno($,H){let J=new AbortController;return Deno.serve({port:$,signal:J.signal,onListen:H},this.hono.fetch),{port:$,close:async()=>{J.abort()}}}listenNode($,H){try{let{serve:J}=(()=>{throw new Error("Cannot require module "+"@hono/node-server");})(),Q=J({fetch:this.hono.fetch,port:$},H);return{port:$,close:async()=>{return new Promise((X)=>{Q.close(()=>X())})},...Q}}catch(J){throw Error("Node.js adapter requires @hono/node-server package. Install it with: npm install @hono/node-server")}}}var mE=()=>{if(typeof Bun<"u")return"bun";if(typeof Deno<"u")return"deno";if(typeof navigator<"u"&&navigator.userAgent==="Cloudflare-Workers")return"workerd";if(typeof process<"u"&&process.versions&&process.versions.node)return"node";return"unknown"};var uY={};L1(uY,{ExpressAdapter:()=>k2});class k2{app;name="express";express;constructor($){this.app=$;try{let H=(()=>{throw new Error("Cannot require module "+"express");})();this.express=H(),this.setupBridge()}catch(H){throw Error("Express adapter requires express package. Install it with: npm install express")}}setupBridge(){let $=this.app.getHono();this.express.use(async(H,J)=>{try{let Q=this.createWebRequest(H),X=await $.fetch(Q);await this.sendExpressResponse(J,X)}catch(Q){J.status(500).json({error:"Internal Server Error",message:Q instanceof Error?Q.message:"Unknown error"})}})}createWebRequest($){let H=$.protocol||"http",J=$.get("host")||"localhost",Q=`${H}://${J}${$.originalUrl||$.url}`,X=new Headers;for(let[W,G]of Object.entries($.headers))if(typeof G==="string")X.set(W,G);else if(Array.isArray(G))G.forEach((q)=>X.append(W,q));let Y={method:$.method,headers:X};if($.method!=="GET"&&$.method!=="HEAD"){if($.body)Y.body=JSON.stringify($.body),X.set("content-type","application/json")}return new Request(Q,Y)}async sendExpressResponse($,H){if($.status(H.status),H.headers.forEach((J,Q)=>{$.setHeader(Q,J)}),H.body){let J=H.headers.get("content-type")||"";if(J.includes("application/json")){let Q=await H.json();$.json(Q)}else if(J.includes("text/")){let Q=await H.text();$.send(Q)}else{let Q=await H.arrayBuffer();$.send(Buffer.from(Q))}}else $.end()}listen($,H){return this.express.listen($,H)}getHandler(){return this.express}getExpressApp(){return this.express}}var t$=N((X7,$W)=>{/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */var g2=require("buffer"),V0=g2.Buffer;function eY($,H){for(var J in $)H[J]=$[J]}if(V0.from&&V0.alloc&&V0.allocUnsafe&&V0.allocUnsafeSlow)$W.exports=g2;else eY(g2,X7),X7.Buffer=w$;function w$($,H,J){return V0($,H,J)}w$.prototype=Object.create(V0.prototype);eY(V0,w$);w$.from=function($,H,J){if(typeof $==="number")throw TypeError("Argument must not be a number");return V0($,H,J)};w$.alloc=function($,H,J){if(typeof $!=="number")throw TypeError("Argument must be a number");var Q=V0($);if(H!==void 0)if(typeof J==="string")Q.fill(H,J);else Q.fill(H);else Q.fill(0);return Q};w$.allocUnsafe=function($){if(typeof $!=="number")throw TypeError("Argument must be a number");return V0($)};w$.allocUnsafeSlow=function($){if(typeof $!=="number")throw TypeError("Argument must be a number");return g2.SlowBuffer($)}});var Y7=N((xk,HW)=>{var y2=t$().Buffer,$j=require("stream"),Hj=require("util");function u2($){if(this.buffer=null,this.writable=!0,this.readable=!0,!$)return this.buffer=y2.alloc(0),this;if(typeof $.pipe==="function")return this.buffer=y2.alloc(0),$.pipe(this),this;if($.length||typeof $==="object")return this.buffer=$,this.writable=!1,process.nextTick(function(){this.emit("end",$),this.readable=!1,this.emit("close")}.bind(this)),this;throw TypeError("Unexpected data type ("+typeof $+")")}Hj.inherits(u2,$j);u2.prototype.write=function(H){this.buffer=y2.concat([this.buffer,y2.from(H)]),this.emit("data",H)};u2.prototype.end=function(H){if(H)this.write(H);this.emit("end",H),this.emit("close"),this.writable=!1,this.readable=!1};HW.exports=u2});var QW=N((kk,JW)=>{function W7($){var H=($/8|0)+($%8===0?0:1);return H}var Jj={ES256:W7(256),ES384:W7(384),ES512:W7(521)};function Qj($){var H=Jj[$];if(H)return H;throw Error('Unknown algorithm "'+$+'"')}JW.exports=Qj});var BW=N((hk,UW)=>{var m2=t$().Buffer,YW=QW(),d2=128,WW=0,Xj=32,Yj=16,Wj=2,GW=Yj|Xj|WW<<6,c2=Wj|WW<<6;function Gj($){return $.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function qW($){if(m2.isBuffer($))return $;else if(typeof $==="string")return m2.from($,"base64");throw TypeError("ECDSA signature must be a Base64 string or a Buffer")}function qj($,H){$=qW($);var J=YW(H),Q=J+1,X=$.length,Y=0;if($[Y++]!==GW)throw Error('Could not find expected "seq"');var W=$[Y++];if(W===(d2|1))W=$[Y++];if(X-Y<W)throw Error('"seq" specified length of "'+W+'", only "'+(X-Y)+'" remaining');if($[Y++]!==c2)throw Error('Could not find expected "int" for "r"');var G=$[Y++];if(X-Y-2<G)throw Error('"r" specified length of "'+G+'", only "'+(X-Y-2)+'" available');if(Q<G)throw Error('"r" specified length of "'+G+'", max of "'+Q+'" is acceptable');var q=Y;if(Y+=G,$[Y++]!==c2)throw Error('Could not find expected "int" for "s"');var U=$[Y++];if(X-Y!==U)throw Error('"s" specified length of "'+U+'", expected "'+(X-Y)+'"');if(Q<U)throw Error('"s" specified length of "'+U+'", max of "'+Q+'" is acceptable');var B=Y;if(Y+=U,Y!==X)throw Error('Expected to consume entire buffer, but "'+(X-Y)+'" bytes remain');var w=J-G,_=J-U,V=m2.allocUnsafe(w+G+_+U);for(Y=0;Y<w;++Y)V[Y]=0;$.copy(V,Y,q+Math.max(-w,0),q+G),Y=J;for(var D=Y;Y<D+_;++Y)V[Y]=0;return $.copy(V,Y,B+Math.max(-_,0),B+U),V=V.toString("base64"),V=Gj(V),V}function XW($,H,J){var Q=0;while(H+Q<J&&$[H+Q]===0)++Q;var X=$[H+Q]>=d2;if(X)--Q;return Q}function Uj($,H){$=qW($);var J=YW(H),Q=$.length;if(Q!==J*2)throw TypeError('"'+H+'" signatures must be "'+J*2+'" bytes, saw "'+Q+'"');var X=XW($,0,J),Y=XW($,J,$.length),W=J-X,G=J-Y,q=2+W+1+1+G,U=q<d2,B=m2.allocUnsafe((U?2:3)+q),w=0;if(B[w++]=GW,U)B[w++]=q;else B[w++]=d2|1,B[w++]=q&255;if(B[w++]=c2,B[w++]=W,X<0)B[w++]=0,w+=$.copy(B,w,0,J);else w+=$.copy(B,w,X,J);if(B[w++]=c2,B[w++]=G,Y<0)B[w++]=0,$.copy(B,w,J);else $.copy(B,w,J+Y);return B}UW.exports={derToJose:qj,joseToDer:Uj}});var DW=N((vk,wW)=>{var Q9=require("buffer").Buffer,G7=require("buffer").SlowBuffer;wW.exports=l2;function l2($,H){if(!Q9.isBuffer($)||!Q9.isBuffer(H))return!1;if($.length!==H.length)return!1;var J=0;for(var Q=0;Q<$.length;Q++)J|=$[Q]^H[Q];return J===0}l2.install=function(){Q9.prototype.equal=G7.prototype.equal=function(H){return l2(this,H)}};var Bj=Q9.prototype.equal,wj=G7.prototype.equal;l2.restore=function(){Q9.prototype.equal=Bj,G7.prototype.equal=wj}});var w7=N((gk,jW)=>{var $4=t$().Buffer,h1=require("crypto"),_W=BW(),VW=require("util"),Dj=`"%s" is not a valid algorithm.
|
|
40
|
+
***************************************************************************** */var $Y;(function($){(function(H){var J=typeof globalThis==="object"?globalThis:typeof global==="object"?global:typeof self==="object"?self:typeof this==="object"?this:G(),Q=X($);if(typeof J.Reflect<"u")Q=X(J.Reflect,Q);if(H(Q,J),typeof J.Reflect>"u")J.Reflect=$;function X(q,U){return function(B,w){if(Object.defineProperty(q,B,{configurable:!0,writable:!0,value:w}),U)U(B,w)}}function Y(){try{return Function("return this;")()}catch(q){}}function W(){try{return(0,eval)("(function() { return this; })()")}catch(q){}}function G(){return Y()||W()}})(function(H,J){var Q=Object.prototype.hasOwnProperty,X=typeof Symbol==="function",Y=X&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",W=X&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",G=typeof Object.create==="function",q={__proto__:[]}instanceof Array,U=!G&&!q,B={create:G?function(){return S8(Object.create(null))}:q?function(){return S8({__proto__:null})}:function(){return S8({})},has:U?function(F,z){return Q.call(F,z)}:function(F,z){return z in F},get:U?function(F,z){return Q.call(F,z)?F[z]:void 0}:function(F,z){return F[z]}},w=Object.getPrototypeOf(Function),_=typeof Map==="function"&&typeof Map.prototype.entries==="function"?Map:bB(),V=typeof Set==="function"&&typeof Set.prototype.entries==="function"?Set:fB(),D=typeof WeakMap==="function"?WeakMap:xB(),A=X?Symbol.for("@reflect-metadata:registry"):void 0,E=KB(),Z=IB(E);function M(F,z,j,K){if(!s(j)){if(!U3(F))throw TypeError();if(!_1(z))throw TypeError();if(!_1(K)&&!s(K)&&!A$(K))throw TypeError();if(A$(K))K=void 0;return j=Y0(j),I(F,z,j,K)}else{if(!U3(F))throw TypeError();if(!B3(z))throw TypeError();return X1(F,z)}}H("decorate",M);function L(F,z){function j(K,c){if(!_1(K))throw TypeError();if(!s(c)&&!CB(c))throw TypeError();j9(F,z,K,c)}return j}H("metadata",L);function b(F,z,j,K){if(!_1(j))throw TypeError();if(!s(K))K=Y0(K);return j9(F,z,j,K)}H("defineMetadata",b);function v(F,z,j){if(!_1(z))throw TypeError();if(!s(j))j=Y0(j);return R1(F,z,j)}H("hasMetadata",v);function l(F,z,j){if(!_1(z))throw TypeError();if(!s(j))j=Y0(j);return E1(F,z,j)}H("hasOwnMetadata",l);function i(F,z,j){if(!_1(z))throw TypeError();if(!s(j))j=Y0(j);return X0(F,z,j)}H("getMetadata",i);function J1(F,z,j){if(!_1(z))throw TypeError();if(!s(j))j=Y0(j);return D4(F,z,j)}H("getOwnMetadata",J1);function d(F,z){if(!_1(F))throw TypeError();if(!s(z))z=Y0(z);return V4(F,z)}H("getMetadataKeys",d);function W1(F,z){if(!_1(F))throw TypeError();if(!s(z))z=Y0(z);return O9(F,z)}H("getOwnMetadataKeys",W1);function G1(F,z,j){if(!_1(z))throw TypeError();if(!s(j))j=Y0(j);if(!_1(z))throw TypeError();if(!s(j))j=Y0(j);var K=_4(z,j,!1);if(s(K))return!1;return K.OrdinaryDeleteMetadata(F,z,j)}H("deleteMetadata",G1);function X1(F,z){for(var j=F.length-1;j>=0;--j){var K=F[j],c=K(z);if(!s(c)&&!A$(c)){if(!B3(c))throw TypeError();z=c}}return z}function I(F,z,j,K){for(var c=F.length-1;c>=0;--c){var F1=F[c],A1=F1(z,j,K);if(!s(A1)&&!A$(A1)){if(!_1(A1))throw TypeError();K=A1}}return K}function R1(F,z,j){var K=E1(F,z,j);if(K)return!0;var c=M8(z);if(!A$(c))return R1(F,c,j);return!1}function E1(F,z,j){var K=_4(z,j,!1);if(s(K))return!1;return q3(K.OrdinaryHasOwnMetadata(F,z,j))}function X0(F,z,j){var K=E1(F,z,j);if(K)return D4(F,z,j);var c=M8(z);if(!A$(c))return X0(F,c,j);return}function D4(F,z,j){var K=_4(z,j,!1);if(s(K))return;return K.OrdinaryGetOwnMetadata(F,z,j)}function j9(F,z,j,K){var c=_4(j,K,!0);c.OrdinaryDefineOwnMetadata(F,z,j,K)}function V4(F,z){var j=O9(F,z),K=M8(F);if(K===null)return j;var c=V4(K,z);if(c.length<=0)return j;if(j.length<=0)return c;var F1=new V,A1=[];for(var $1=0,f=j;$1<f.length;$1++){var h=f[$1],g=F1.has(h);if(!g)F1.add(h),A1.push(h)}for(var u=0,Q1=c;u<Q1.length;u++){var h=Q1[u],g=F1.has(h);if(!g)F1.add(h),A1.push(h)}return A1}function O9(F,z){var j=_4(F,z,!1);if(!j)return[];return j.OrdinaryOwnMetadataKeys(F,z)}function G3(F){if(F===null)return 1;switch(typeof F){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return F===null?1:6;default:return 6}}function s(F){return F===void 0}function A$(F){return F===null}function ZB(F){return typeof F==="symbol"}function _1(F){return typeof F==="object"?F!==null:typeof F==="function"}function LB(F,z){switch(G3(F)){case 0:return F;case 1:return F;case 2:return F;case 3:return F;case 4:return F;case 5:return F}var j=z===3?"string":z===5?"number":"default",K=w3(F,Y);if(K!==void 0){var c=K.call(F,j);if(_1(c))throw TypeError();return c}return MB(F,j==="default"?"number":j)}function MB(F,z){if(z==="string"){var j=F.toString;if(R$(j)){var K=j.call(F);if(!_1(K))return K}var c=F.valueOf;if(R$(c)){var K=c.call(F);if(!_1(K))return K}}else{var c=F.valueOf;if(R$(c)){var K=c.call(F);if(!_1(K))return K}var F1=F.toString;if(R$(F1)){var K=F1.call(F);if(!_1(K))return K}}throw TypeError()}function q3(F){return!!F}function SB(F){return""+F}function Y0(F){var z=LB(F,3);if(ZB(z))return z;return SB(z)}function U3(F){return Array.isArray?Array.isArray(F):F instanceof Object?F instanceof Array:Object.prototype.toString.call(F)==="[object Array]"}function R$(F){return typeof F==="function"}function B3(F){return typeof F==="function"}function CB(F){switch(G3(F)){case 3:return!0;case 4:return!0;default:return!1}}function L8(F,z){return F===z||F!==F&&z!==z}function w3(F,z){var j=F[z];if(j===void 0||j===null)return;if(!R$(j))throw TypeError();return j}function D3(F){var z=w3(F,W);if(!R$(z))throw TypeError();var j=z.call(F);if(!_1(j))throw TypeError();return j}function V3(F){return F.value}function _3(F){var z=F.next();return z.done?!1:z}function F3(F){var z=F.return;if(z)z.call(F)}function M8(F){var z=Object.getPrototypeOf(F);if(typeof F!=="function"||F===w)return z;if(z!==w)return z;var j=F.prototype,K=j&&Object.getPrototypeOf(j);if(K==null||K===Object.prototype)return z;var c=K.constructor;if(typeof c!=="function")return z;if(c===F)return z;return c}function PB(){var F;if(!s(A)&&typeof J.Reflect<"u"&&!(A in J.Reflect)&&typeof J.Reflect.defineMetadata==="function")F=TB(J.Reflect);var z,j,K,c=new D,F1={registerProvider:A1,getProvider:f,setProvider:g};return F1;function A1(u){if(!Object.isExtensible(F1))throw Error("Cannot add provider to a frozen registry.");switch(!0){case F===u:break;case s(z):z=u;break;case z===u:break;case s(j):j=u;break;case j===u:break;default:if(K===void 0)K=new V;K.add(u);break}}function $1(u,Q1){if(!s(z)){if(z.isProviderFor(u,Q1))return z;if(!s(j)){if(j.isProviderFor(u,Q1))return z;if(!s(K)){var U1=D3(K);while(!0){var z1=_3(U1);if(!z1)return;var c1=V3(z1);if(c1.isProviderFor(u,Q1))return F3(U1),c1}}}}if(!s(F)&&F.isProviderFor(u,Q1))return F;return}function f(u,Q1){var U1=c.get(u),z1;if(!s(U1))z1=U1.get(Q1);if(!s(z1))return z1;if(z1=$1(u,Q1),!s(z1)){if(s(U1))U1=new _,c.set(u,U1);U1.set(Q1,z1)}return z1}function h(u){if(s(u))throw TypeError();return z===u||j===u||!s(K)&&K.has(u)}function g(u,Q1,U1){if(!h(U1))throw Error("Metadata provider not registered.");var z1=f(u,Q1);if(z1!==U1){if(!s(z1))return!1;var c1=c.get(u);if(s(c1))c1=new _,c.set(u,c1);c1.set(Q1,U1)}return!0}}function KB(){var F;if(!s(A)&&_1(J.Reflect)&&Object.isExtensible(J.Reflect))F=J.Reflect[A];if(s(F))F=PB();if(!s(A)&&_1(J.Reflect)&&Object.isExtensible(J.Reflect))Object.defineProperty(J.Reflect,A,{enumerable:!1,configurable:!1,writable:!1,value:F});return F}function IB(F){var z=new D,j={isProviderFor:function(h,g){var u=z.get(h);if(s(u))return!1;return u.has(g)},OrdinaryDefineOwnMetadata:A1,OrdinaryHasOwnMetadata:c,OrdinaryGetOwnMetadata:F1,OrdinaryOwnMetadataKeys:$1,OrdinaryDeleteMetadata:f};return E.registerProvider(j),j;function K(h,g,u){var Q1=z.get(h),U1=!1;if(s(Q1)){if(!u)return;Q1=new _,z.set(h,Q1),U1=!0}var z1=Q1.get(g);if(s(z1)){if(!u)return;if(z1=new _,Q1.set(g,z1),!F.setProvider(h,g,j)){if(Q1.delete(g),U1)z.delete(h);throw Error("Wrong provider for target.")}}return z1}function c(h,g,u){var Q1=K(g,u,!1);if(s(Q1))return!1;return q3(Q1.has(h))}function F1(h,g,u){var Q1=K(g,u,!1);if(s(Q1))return;return Q1.get(h)}function A1(h,g,u,Q1){var U1=K(u,Q1,!0);U1.set(h,g)}function $1(h,g){var u=[],Q1=K(h,g,!1);if(s(Q1))return u;var U1=Q1.keys(),z1=D3(U1),c1=0;while(!0){var z3=_3(z1);if(!z3)return u.length=c1,u;var kB=V3(z3);try{u[c1]=kB}catch(hB){try{F3(z1)}finally{throw hB}}c1++}}function f(h,g,u){var Q1=K(g,u,!1);if(s(Q1))return!1;if(!Q1.delete(h))return!1;if(Q1.size===0){var U1=z.get(g);if(!s(U1)){if(U1.delete(u),U1.size===0)z.delete(U1)}}return!0}}function TB(F){var{defineMetadata:z,hasOwnMetadata:j,getOwnMetadata:K,getOwnMetadataKeys:c,deleteMetadata:F1}=F,A1=new D,$1={isProviderFor:function(f,h){var g=A1.get(f);if(!s(g)&&g.has(h))return!0;if(c(f,h).length){if(s(g))g=new V,A1.set(f,g);return g.add(h),!0}return!1},OrdinaryDefineOwnMetadata:z,OrdinaryHasOwnMetadata:j,OrdinaryGetOwnMetadata:K,OrdinaryOwnMetadataKeys:c,OrdinaryDeleteMetadata:F1};return $1}function _4(F,z,j){var K=E.getProvider(F,z);if(!s(K))return K;if(j){if(E.setProvider(F,z,Z))return Z;throw Error("Illegal state.")}return}function bB(){var F={},z=[],j=function(){function $1(f,h,g){this._index=0,this._keys=f,this._values=h,this._selector=g}return $1.prototype["@@iterator"]=function(){return this},$1.prototype[W]=function(){return this},$1.prototype.next=function(){var f=this._index;if(f>=0&&f<this._keys.length){var h=this._selector(this._keys[f],this._values[f]);if(f+1>=this._keys.length)this._index=-1,this._keys=z,this._values=z;else this._index++;return{value:h,done:!1}}return{value:void 0,done:!0}},$1.prototype.throw=function(f){if(this._index>=0)this._index=-1,this._keys=z,this._values=z;throw f},$1.prototype.return=function(f){if(this._index>=0)this._index=-1,this._keys=z,this._values=z;return{value:f,done:!0}},$1}(),K=function(){function $1(){this._keys=[],this._values=[],this._cacheKey=F,this._cacheIndex=-2}return Object.defineProperty($1.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),$1.prototype.has=function(f){return this._find(f,!1)>=0},$1.prototype.get=function(f){var h=this._find(f,!1);return h>=0?this._values[h]:void 0},$1.prototype.set=function(f,h){var g=this._find(f,!0);return this._values[g]=h,this},$1.prototype.delete=function(f){var h=this._find(f,!1);if(h>=0){var g=this._keys.length;for(var u=h+1;u<g;u++)this._keys[u-1]=this._keys[u],this._values[u-1]=this._values[u];if(this._keys.length--,this._values.length--,L8(f,this._cacheKey))this._cacheKey=F,this._cacheIndex=-2;return!0}return!1},$1.prototype.clear=function(){this._keys.length=0,this._values.length=0,this._cacheKey=F,this._cacheIndex=-2},$1.prototype.keys=function(){return new j(this._keys,this._values,c)},$1.prototype.values=function(){return new j(this._keys,this._values,F1)},$1.prototype.entries=function(){return new j(this._keys,this._values,A1)},$1.prototype["@@iterator"]=function(){return this.entries()},$1.prototype[W]=function(){return this.entries()},$1.prototype._find=function(f,h){if(!L8(this._cacheKey,f)){this._cacheIndex=-1;for(var g=0;g<this._keys.length;g++)if(L8(this._keys[g],f)){this._cacheIndex=g;break}}if(this._cacheIndex<0&&h)this._cacheIndex=this._keys.length,this._keys.push(f),this._values.push(void 0);return this._cacheIndex},$1}();return K;function c($1,f){return $1}function F1($1,f){return f}function A1($1,f){return[$1,f]}}function fB(){var F=function(){function z(){this._map=new _}return Object.defineProperty(z.prototype,"size",{get:function(){return this._map.size},enumerable:!0,configurable:!0}),z.prototype.has=function(j){return this._map.has(j)},z.prototype.add=function(j){return this._map.set(j,j),this},z.prototype.delete=function(j){return this._map.delete(j)},z.prototype.clear=function(){this._map.clear()},z.prototype.keys=function(){return this._map.keys()},z.prototype.values=function(){return this._map.keys()},z.prototype.entries=function(){return this._map.entries()},z.prototype["@@iterator"]=function(){return this.keys()},z.prototype[W]=function(){return this.keys()},z}();return F}function xB(){var F=16,z=B.create(),j=K();return function(){function f(){this._key=K()}return f.prototype.has=function(h){var g=c(h,!1);return g!==void 0?B.has(g,this._key):!1},f.prototype.get=function(h){var g=c(h,!1);return g!==void 0?B.get(g,this._key):void 0},f.prototype.set=function(h,g){var u=c(h,!0);return u[this._key]=g,this},f.prototype.delete=function(h){var g=c(h,!1);return g!==void 0?delete g[this._key]:!1},f.prototype.clear=function(){this._key=K()},f}();function K(){var f;do f="@@WeakMap@@"+$1();while(B.has(z,f));return z[f]=!0,f}function c(f,h){if(!Q.call(f,j)){if(!h)return;Object.defineProperty(f,j,{value:B.create()})}return f[j]}function F1(f,h){for(var g=0;g<h;++g)f[g]=Math.random()*255|0;return f}function A1(f){if(typeof Uint8Array==="function"){var h=new Uint8Array(f);if(typeof crypto<"u")crypto.getRandomValues(h);else if(typeof msCrypto<"u")msCrypto.getRandomValues(h);else F1(h,f);return h}return F1(Array(f),f)}function $1(){var f=A1(F);f[6]=f[6]&79|64,f[8]=f[8]&191|128;var h="";for(var g=0;g<F;++g){var u=f[g];if(g===4||g===6||g===8)h+="-";if(u<16)h+="0";h+=u.toString(16).toLowerCase()}return h}}function S8(F){return F.__=void 0,delete F.__,F}})})($Y||($Y={}))});var x1,_Y,FY,zY,z2;var i$=Z9(()=>{x1=class x1 extends Error{statusCode;details;constructor($,H,J){super(H);this.statusCode=$;this.details=J;if(this.name="HTTPException",Error.captureStackTrace)Error.captureStackTrace(this,this.constructor)}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};_Y=class _Y extends x1{constructor($="Not Found",H){super(404,$,H);this.name="NotFoundException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};FY=class FY extends x1{constructor($="Unauthorized",H){super(401,$,H);this.name="UnauthorizedException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};zY=class zY extends x1{constructor($="Forbidden",H){super(403,$,H);this.name="ForbiddenException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};z2=class z2 extends x1{constructor($="Bad Request",H){super(400,$,H);this.name="BadRequestException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}}});var yY={};L1(yY,{TokenRevokedException:()=>Q7,TokenExpiredException:()=>e4,InvalidTokenException:()=>q$,AuthorizationException:()=>S1,AuthenticationException:()=>Z1});var Z1,S1,e4,q$,Q7;var U$=Z9(()=>{i$();Z1=class Z1 extends x1{constructor($="Authentication required"){super(401,$);this.name="AuthenticationException"}toJSON(){return{error:"Authentication Error",message:this.message,statusCode:401}}};S1=class S1 extends x1{constructor($="Insufficient permissions"){super(403,$);this.name="AuthorizationException"}toJSON(){return{error:"Authorization Error",message:this.message,statusCode:403}}};e4=class e4 extends Z1{constructor($="Token has expired"){super($);this.name="TokenExpiredException"}};q$=class q$ extends Z1{constructor($="Invalid token"){super($);this.name="InvalidTokenException"}};Q7=class Q7 extends Z1{constructor($="Token has been revoked"){super($);this.name="TokenRevokedException"}}});var X7={};L1(X7,{HonoAdapter:()=>x2});class x2{hono;name="hono";runtime;constructor($){this.hono=$;this.runtime=mE()}listen($,H){switch(this.runtime){case"bun":return this.listenBun($,H);case"deno":return this.listenDeno($,H);case"node":return this.listenNode($,H);case"workerd":throw Error("Cloudflare Workers do not support listen(). Deploy using wrangler or export the handler with getHandler().");default:throw Error(`Unsupported runtime: ${this.runtime}. FastAPI-TS supports Bun, Node.js, Deno, and Cloudflare Workers.`)}}getHandler(){return this.hono.fetch}getRuntime(){return this.runtime}listenBun($,H){let J=Bun.serve({port:$,fetch:this.hono.fetch});if(H)H();return{port:$,close:async()=>{J.stop()},...J}}listenDeno($,H){let J=new AbortController;return Deno.serve({port:$,signal:J.signal,onListen:H},this.hono.fetch),{port:$,close:async()=>{J.abort()}}}listenNode($,H){try{let{serve:J}=(()=>{throw new Error("Cannot require module "+"@hono/node-server");})(),Q=J({fetch:this.hono.fetch,port:$},H);return{port:$,close:async()=>{return new Promise((X)=>{Q.close(()=>X())})},...Q}}catch(J){throw Error("Node.js adapter requires @hono/node-server package. Install it with: npm install @hono/node-server")}}}var mE=()=>{if(typeof Bun<"u")return"bun";if(typeof Deno<"u")return"deno";if(typeof navigator<"u"&&navigator.userAgent==="Cloudflare-Workers")return"workerd";if(typeof process<"u"&&process.versions&&process.versions.node)return"node";return"unknown"};var uY={};L1(uY,{ExpressAdapter:()=>k2});class k2{app;name="express";express;constructor($){this.app=$;try{let H=(()=>{throw new Error("Cannot require module "+"express");})();this.express=H(),this.setupBridge()}catch(H){throw Error("Express adapter requires express package. Install it with: npm install express")}}setupBridge(){let $=this.app.getHono();this.express.use(async(H,J)=>{try{let Q=this.createWebRequest(H),X=await $.fetch(Q);await this.sendExpressResponse(J,X)}catch(Q){J.status(500).json({error:"Internal Server Error",message:Q instanceof Error?Q.message:"Unknown error"})}})}createWebRequest($){let H=$.protocol||"http",J=$.get("host")||"localhost",Q=`${H}://${J}${$.originalUrl||$.url}`,X=new Headers;for(let[W,G]of Object.entries($.headers))if(typeof G==="string")X.set(W,G);else if(Array.isArray(G))G.forEach((q)=>X.append(W,q));let Y={method:$.method,headers:X};if($.method!=="GET"&&$.method!=="HEAD"){if($.body)Y.body=JSON.stringify($.body),X.set("content-type","application/json")}return new Request(Q,Y)}async sendExpressResponse($,H){if($.status(H.status),H.headers.forEach((J,Q)=>{$.setHeader(Q,J)}),H.body){let J=H.headers.get("content-type")||"";if(J.includes("application/json")){let Q=await H.json();$.json(Q)}else if(J.includes("text/")){let Q=await H.text();$.send(Q)}else{let Q=await H.arrayBuffer();$.send(Buffer.from(Q))}}else $.end()}listen($,H){return this.express.listen($,H)}getHandler(){return this.express}getExpressApp(){return this.express}}var t$=N((q7,$W)=>{/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */var g2=require("buffer"),V0=g2.Buffer;function eY($,H){for(var J in $)H[J]=$[J]}if(V0.from&&V0.alloc&&V0.allocUnsafe&&V0.allocUnsafeSlow)$W.exports=g2;else eY(g2,q7),q7.Buffer=w$;function w$($,H,J){return V0($,H,J)}w$.prototype=Object.create(V0.prototype);eY(V0,w$);w$.from=function($,H,J){if(typeof $==="number")throw TypeError("Argument must not be a number");return V0($,H,J)};w$.alloc=function($,H,J){if(typeof $!=="number")throw TypeError("Argument must be a number");var Q=V0($);if(H!==void 0)if(typeof J==="string")Q.fill(H,J);else Q.fill(H);else Q.fill(0);return Q};w$.allocUnsafe=function($){if(typeof $!=="number")throw TypeError("Argument must be a number");return V0($)};w$.allocUnsafeSlow=function($){if(typeof $!=="number")throw TypeError("Argument must be a number");return g2.SlowBuffer($)}});var U7=N((xk,HW)=>{var y2=t$().Buffer,$j=require("stream"),Hj=require("util");function u2($){if(this.buffer=null,this.writable=!0,this.readable=!0,!$)return this.buffer=y2.alloc(0),this;if(typeof $.pipe==="function")return this.buffer=y2.alloc(0),$.pipe(this),this;if($.length||typeof $==="object")return this.buffer=$,this.writable=!1,process.nextTick(function(){this.emit("end",$),this.readable=!1,this.emit("close")}.bind(this)),this;throw TypeError("Unexpected data type ("+typeof $+")")}Hj.inherits(u2,$j);u2.prototype.write=function(H){this.buffer=y2.concat([this.buffer,y2.from(H)]),this.emit("data",H)};u2.prototype.end=function(H){if(H)this.write(H);this.emit("end",H),this.emit("close"),this.writable=!1,this.readable=!1};HW.exports=u2});var QW=N((kk,JW)=>{function B7($){var H=($/8|0)+($%8===0?0:1);return H}var Jj={ES256:B7(256),ES384:B7(384),ES512:B7(521)};function Qj($){var H=Jj[$];if(H)return H;throw Error('Unknown algorithm "'+$+'"')}JW.exports=Qj});var BW=N((hk,UW)=>{var m2=t$().Buffer,YW=QW(),d2=128,WW=0,Xj=32,Yj=16,Wj=2,GW=Yj|Xj|WW<<6,c2=Wj|WW<<6;function Gj($){return $.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function qW($){if(m2.isBuffer($))return $;else if(typeof $==="string")return m2.from($,"base64");throw TypeError("ECDSA signature must be a Base64 string or a Buffer")}function qj($,H){$=qW($);var J=YW(H),Q=J+1,X=$.length,Y=0;if($[Y++]!==GW)throw Error('Could not find expected "seq"');var W=$[Y++];if(W===(d2|1))W=$[Y++];if(X-Y<W)throw Error('"seq" specified length of "'+W+'", only "'+(X-Y)+'" remaining');if($[Y++]!==c2)throw Error('Could not find expected "int" for "r"');var G=$[Y++];if(X-Y-2<G)throw Error('"r" specified length of "'+G+'", only "'+(X-Y-2)+'" available');if(Q<G)throw Error('"r" specified length of "'+G+'", max of "'+Q+'" is acceptable');var q=Y;if(Y+=G,$[Y++]!==c2)throw Error('Could not find expected "int" for "s"');var U=$[Y++];if(X-Y!==U)throw Error('"s" specified length of "'+U+'", expected "'+(X-Y)+'"');if(Q<U)throw Error('"s" specified length of "'+U+'", max of "'+Q+'" is acceptable');var B=Y;if(Y+=U,Y!==X)throw Error('Expected to consume entire buffer, but "'+(X-Y)+'" bytes remain');var w=J-G,_=J-U,V=m2.allocUnsafe(w+G+_+U);for(Y=0;Y<w;++Y)V[Y]=0;$.copy(V,Y,q+Math.max(-w,0),q+G),Y=J;for(var D=Y;Y<D+_;++Y)V[Y]=0;return $.copy(V,Y,B+Math.max(-_,0),B+U),V=V.toString("base64"),V=Gj(V),V}function XW($,H,J){var Q=0;while(H+Q<J&&$[H+Q]===0)++Q;var X=$[H+Q]>=d2;if(X)--Q;return Q}function Uj($,H){$=qW($);var J=YW(H),Q=$.length;if(Q!==J*2)throw TypeError('"'+H+'" signatures must be "'+J*2+'" bytes, saw "'+Q+'"');var X=XW($,0,J),Y=XW($,J,$.length),W=J-X,G=J-Y,q=2+W+1+1+G,U=q<d2,B=m2.allocUnsafe((U?2:3)+q),w=0;if(B[w++]=GW,U)B[w++]=q;else B[w++]=d2|1,B[w++]=q&255;if(B[w++]=c2,B[w++]=W,X<0)B[w++]=0,w+=$.copy(B,w,0,J);else w+=$.copy(B,w,X,J);if(B[w++]=c2,B[w++]=G,Y<0)B[w++]=0,$.copy(B,w,J);else $.copy(B,w,J+Y);return B}UW.exports={derToJose:qj,joseToDer:Uj}});var DW=N((vk,wW)=>{var Q9=require("buffer").Buffer,w7=require("buffer").SlowBuffer;wW.exports=l2;function l2($,H){if(!Q9.isBuffer($)||!Q9.isBuffer(H))return!1;if($.length!==H.length)return!1;var J=0;for(var Q=0;Q<$.length;Q++)J|=$[Q]^H[Q];return J===0}l2.install=function(){Q9.prototype.equal=w7.prototype.equal=function(H){return l2(this,H)}};var Bj=Q9.prototype.equal,wj=w7.prototype.equal;l2.restore=function(){Q9.prototype.equal=Bj,w7.prototype.equal=wj}});var F7=N((gk,jW)=>{var $4=t$().Buffer,h1=require("crypto"),_W=BW(),VW=require("util"),Dj=`"%s" is not a valid algorithm.
|
|
41
41
|
Supported algorithms are:
|
|
42
|
-
"HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "PS256", "PS384", "PS512", "ES256", "ES384", "ES512" and "none".`,X9="secret must be a string or buffer",e$="key must be a string or a buffer",Vj="key must be a string, a buffer or an object",U7=typeof h1.createPublicKey==="function";if(U7)e$+=" or a KeyObject",X9+="or a KeyObject";function FW($){if($4.isBuffer($))return;if(typeof $==="string")return;if(!U7)throw H0(e$);if(typeof $!=="object")throw H0(e$);if(typeof $.type!=="string")throw H0(e$);if(typeof $.asymmetricKeyType!=="string")throw H0(e$);if(typeof $.export!=="function")throw H0(e$)}function zW($){if($4.isBuffer($))return;if(typeof $==="string")return;if(typeof $==="object")return;throw H0(Vj)}function _j($){if($4.isBuffer($))return;if(typeof $==="string")return $;if(!U7)throw H0(X9);if(typeof $!=="object")throw H0(X9);if($.type!=="secret")throw H0(X9);if(typeof $.export!=="function")throw H0(X9)}function B7($){return $.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function NW($){$=$.toString();var H=4-$.length%4;if(H!==4)for(var J=0;J<H;++J)$+="=";return $.replace(/\-/g,"+").replace(/_/g,"/")}function H0($){var H=[].slice.call(arguments,1),J=VW.format.bind(VW,$).apply(null,H);return TypeError(J)}function Fj($){return $4.isBuffer($)||typeof $==="string"}function Y9($){if(!Fj($))$=JSON.stringify($);return $}function AW($){return function(J,Q){_j(Q),J=Y9(J);var X=h1.createHmac("sha"+$,Q),Y=(X.update(J),X.digest("base64"));return B7(Y)}}var q7,zj="timingSafeEqual"in h1?function(H,J){if(H.byteLength!==J.byteLength)return!1;return h1.timingSafeEqual(H,J)}:function(H,J){if(!q7)q7=DW();return q7(H,J)};function Nj($){return function(J,Q,X){var Y=AW($)(J,X);return zj($4.from(Q),$4.from(Y))}}function RW($){return function(J,Q){zW(Q),J=Y9(J);var X=h1.createSign("RSA-SHA"+$),Y=(X.update(J),X.sign(Q,"base64"));return B7(Y)}}function EW($){return function(J,Q,X){FW(X),J=Y9(J),Q=NW(Q);var Y=h1.createVerify("RSA-SHA"+$);return Y.update(J),Y.verify(X,Q,"base64")}}function Aj($){return function(J,Q){zW(Q),J=Y9(J);var X=h1.createSign("RSA-SHA"+$),Y=(X.update(J),X.sign({key:Q,padding:h1.constants.RSA_PKCS1_PSS_PADDING,saltLength:h1.constants.RSA_PSS_SALTLEN_DIGEST},"base64"));return B7(Y)}}function Rj($){return function(J,Q,X){FW(X),J=Y9(J),Q=NW(Q);var Y=h1.createVerify("RSA-SHA"+$);return Y.update(J),Y.verify({key:X,padding:h1.constants.RSA_PKCS1_PSS_PADDING,saltLength:h1.constants.RSA_PSS_SALTLEN_DIGEST},Q,"base64")}}function Ej($){var H=RW($);return function(){var Q=H.apply(null,arguments);return Q=_W.derToJose(Q,"ES"+$),Q}}function jj($){var H=EW($);return function(Q,X,Y){X=_W.joseToDer(X,"ES"+$).toString("base64");var W=H(Q,X,Y);return W}}function Oj(){return function(){return""}}function Zj(){return function(H,J){return J===""}}jW.exports=function(H){var J={hs:AW,rs:RW,ps:Aj,es:Ej,none:Oj},Q={hs:Nj,rs:EW,ps:Rj,es:jj,none:Zj},X=H.match(/^(RS|PS|ES|HS)(256|384|512)$|^(none)$/i);if(!X)throw H0(Dj,H);var Y=(X[1]||X[3]).toLowerCase(),W=X[2];return{sign:J[Y](W),verify:Q[Y](W)}}});var D7=N((yk,OW)=>{var Lj=require("buffer").Buffer;OW.exports=function(H){if(typeof H==="string")return H;if(typeof H==="number"||Lj.isBuffer(H))return H.toString();return JSON.stringify(H)}});var PW=N((uk,CW)=>{var Mj=t$().Buffer,ZW=Y7(),Sj=w7(),Cj=require("stream"),LW=D7(),V7=require("util");function MW($,H){return Mj.from($,H).toString("base64").replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function Pj($,H,J){J=J||"utf8";var Q=MW(LW($),"binary"),X=MW(LW(H),J);return V7.format("%s.%s",Q,X)}function SW($){var{header:H,payload:J}=$,Q=$.secret||$.privateKey,X=$.encoding,Y=Sj(H.alg),W=Pj(H,J,X),G=Y.sign(W,Q);return V7.format("%s.%s",W,G)}function p2($){var H=$.secret||$.privateKey||$.key,J=new ZW(H);this.readable=!0,this.header=$.header,this.encoding=$.encoding,this.secret=this.privateKey=this.key=J,this.payload=new ZW($.payload),this.secret.once("close",function(){if(!this.payload.writable&&this.readable)this.sign()}.bind(this)),this.payload.once("close",function(){if(!this.secret.writable&&this.readable)this.sign()}.bind(this))}V7.inherits(p2,Cj);p2.prototype.sign=function(){try{var H=SW({header:this.header,payload:this.payload.buffer,secret:this.secret.buffer,encoding:this.encoding});return this.emit("done",H),this.emit("data",H),this.emit("end"),this.readable=!1,H}catch(J){this.readable=!1,this.emit("error",J),this.emit("close")}};p2.sign=SW;CW.exports=p2});var gW=N((mk,vW)=>{var IW=t$().Buffer,KW=Y7(),Kj=w7(),Ij=require("stream"),TW=D7(),Tj=require("util"),bj=/^[a-zA-Z0-9\-_]+?\.[a-zA-Z0-9\-_]+?\.([a-zA-Z0-9\-_]+)?$/;function fj($){return Object.prototype.toString.call($)==="[object Object]"}function xj($){if(fj($))return $;try{return JSON.parse($)}catch(H){return}}function bW($){var H=$.split(".",1)[0];return xj(IW.from(H,"base64").toString("binary"))}function kj($){return $.split(".",2).join(".")}function fW($){return $.split(".")[2]}function hj($,H){H=H||"utf8";var J=$.split(".")[1];return IW.from(J,"base64").toString(H)}function xW($){return bj.test($)&&!!bW($)}function kW($,H,J){if(!H){var Q=Error("Missing algorithm parameter for jws.verify");throw Q.code="MISSING_ALGORITHM",Q}$=TW($);var X=fW($),Y=kj($),W=Kj(H);return W.verify(Y,X,J)}function hW($,H){if(H=H||{},$=TW($),!xW($))return null;var J=bW($);if(!J)return null;var Q=hj($);if(J.typ==="JWT"||H.json)Q=JSON.parse(Q,H.encoding);return{header:J,payload:Q,signature:fW($)}}function H4($){$=$||{};var H=$.secret||$.publicKey||$.key,J=new KW(H);this.readable=!0,this.algorithm=$.algorithm,this.encoding=$.encoding,this.secret=this.publicKey=this.key=J,this.signature=new KW($.signature),this.secret.once("close",function(){if(!this.signature.writable&&this.readable)this.verify()}.bind(this)),this.signature.once("close",function(){if(!this.secret.writable&&this.readable)this.verify()}.bind(this))}Tj.inherits(H4,Ij);H4.prototype.verify=function(){try{var H=kW(this.signature.buffer,this.algorithm,this.key.buffer),J=hW(this.signature.buffer,this.encoding);return this.emit("done",H,J),this.emit("data",H),this.emit("end"),this.readable=!1,H}catch(Q){this.readable=!1,this.emit("error",Q),this.emit("close")}};H4.decode=hW;H4.isValid=xW;H4.verify=kW;vW.exports=H4});var i2=N((v0)=>{var yW=PW(),n2=gW(),vj=["HS256","HS384","HS512","RS256","RS384","RS512","PS256","PS384","PS512","ES256","ES384","ES512"];v0.ALGORITHMS=vj;v0.sign=yW.sign;v0.verify=n2.verify;v0.decode=n2.decode;v0.isValid=n2.isValid;v0.createSign=function(H){return new yW(H)};v0.createVerify=function(H){return new n2(H)}});var _7=N((ck,uW)=>{var gj=i2();uW.exports=function($,H){H=H||{};var J=gj.decode($,H);if(!J)return null;var Q=J.payload;if(typeof Q==="string")try{var X=JSON.parse(Q);if(X!==null&&typeof X==="object")Q=X}catch(Y){}if(H.complete===!0)return{header:J.header,payload:Q,signature:J.signature};return Q}});var W9=N((lk,mW)=>{var s2=function($,H){if(Error.call(this,$),Error.captureStackTrace)Error.captureStackTrace(this,this.constructor);if(this.name="JsonWebTokenError",this.message=$,H)this.inner=H};s2.prototype=Object.create(Error.prototype);s2.prototype.constructor=s2;mW.exports=s2});var F7=N((pk,cW)=>{var dW=W9(),o2=function($,H){dW.call(this,$),this.name="NotBeforeError",this.date=H};o2.prototype=Object.create(dW.prototype);o2.prototype.constructor=o2;cW.exports=o2});var z7=N((nk,pW)=>{var lW=W9(),r2=function($,H){lW.call(this,$),this.name="TokenExpiredError",this.expiredAt=H};r2.prototype=Object.create(lW.prototype);r2.prototype.constructor=r2;pW.exports=r2});var iW=N((ik,nW)=>{var J4=1000,Q4=J4*60,X4=Q4*60,D$=X4*24,yj=D$*7,uj=D$*365.25;nW.exports=function($,H){H=H||{};var J=typeof $;if(J==="string"&&$.length>0)return mj($);else if(J==="number"&&isFinite($))return H.long?cj($):dj($);throw Error("val is not a non-empty string or a valid number. val="+JSON.stringify($))};function mj($){if($=String($),$.length>100)return;var H=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec($);if(!H)return;var J=parseFloat(H[1]),Q=(H[2]||"ms").toLowerCase();switch(Q){case"years":case"year":case"yrs":case"yr":case"y":return J*uj;case"weeks":case"week":case"w":return J*yj;case"days":case"day":case"d":return J*D$;case"hours":case"hour":case"hrs":case"hr":case"h":return J*X4;case"minutes":case"minute":case"mins":case"min":case"m":return J*Q4;case"seconds":case"second":case"secs":case"sec":case"s":return J*J4;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return J;default:return}}function dj($){var H=Math.abs($);if(H>=D$)return Math.round($/D$)+"d";if(H>=X4)return Math.round($/X4)+"h";if(H>=Q4)return Math.round($/Q4)+"m";if(H>=J4)return Math.round($/J4)+"s";return $+"ms"}function cj($){var H=Math.abs($);if(H>=D$)return a2($,H,D$,"day");if(H>=X4)return a2($,H,X4,"hour");if(H>=Q4)return a2($,H,Q4,"minute");if(H>=J4)return a2($,H,J4,"second");return $+" ms"}function a2($,H,J,Q){var X=H>=J*1.5;return Math.round($/J)+" "+Q+(X?"s":"")}});var N7=N((sk,sW)=>{var lj=iW();sW.exports=function($,H){var J=H||Math.floor(Date.now()/1000);if(typeof $==="string"){var Q=lj($);if(typeof Q>"u")return;return Math.floor(J+Q/1000)}else if(typeof $==="number")return J+$;else return}});var G9=N((ok,oW)=>{var pj=Number.MAX_SAFE_INTEGER||9007199254740991,nj=["major","premajor","minor","preminor","patch","prepatch","prerelease"];oW.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:pj,RELEASE_TYPES:nj,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var q9=N((rk,rW)=>{var ij=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...$)=>console.error("SEMVER",...$):()=>{};rW.exports=ij});var Y4=N((_0,aW)=>{var{MAX_SAFE_COMPONENT_LENGTH:A7,MAX_SAFE_BUILD_LENGTH:sj,MAX_LENGTH:oj}=G9(),rj=q9();_0=aW.exports={};var aj=_0.re=[],tj=_0.safeRe=[],x=_0.src=[],ej=_0.safeSrc=[],k=_0.t={},$O=0,R7="[a-zA-Z0-9-]",HO=[["\\s",1],["\\d",oj],[R7,sj]],JO=($)=>{for(let[H,J]of HO)$=$.split(`${H}*`).join(`${H}{0,${J}}`).split(`${H}+`).join(`${H}{1,${J}}`);return $},r=($,H,J)=>{let Q=JO(H),X=$O++;rj($,X,H),k[$]=X,x[X]=H,ej[X]=Q,aj[X]=new RegExp(H,J?"g":void 0),tj[X]=new RegExp(Q,J?"g":void 0)};r("NUMERICIDENTIFIER","0|[1-9]\\d*");r("NUMERICIDENTIFIERLOOSE","\\d+");r("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${R7}*`);r("MAINVERSION",`(${x[k.NUMERICIDENTIFIER]})\\.(${x[k.NUMERICIDENTIFIER]})\\.(${x[k.NUMERICIDENTIFIER]})`);r("MAINVERSIONLOOSE",`(${x[k.NUMERICIDENTIFIERLOOSE]})\\.(${x[k.NUMERICIDENTIFIERLOOSE]})\\.(${x[k.NUMERICIDENTIFIERLOOSE]})`);r("PRERELEASEIDENTIFIER",`(?:${x[k.NONNUMERICIDENTIFIER]}|${x[k.NUMERICIDENTIFIER]})`);r("PRERELEASEIDENTIFIERLOOSE",`(?:${x[k.NONNUMERICIDENTIFIER]}|${x[k.NUMERICIDENTIFIERLOOSE]})`);r("PRERELEASE",`(?:-(${x[k.PRERELEASEIDENTIFIER]}(?:\\.${x[k.PRERELEASEIDENTIFIER]})*))`);r("PRERELEASELOOSE",`(?:-?(${x[k.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${x[k.PRERELEASEIDENTIFIERLOOSE]})*))`);r("BUILDIDENTIFIER",`${R7}+`);r("BUILD",`(?:\\+(${x[k.BUILDIDENTIFIER]}(?:\\.${x[k.BUILDIDENTIFIER]})*))`);r("FULLPLAIN",`v?${x[k.MAINVERSION]}${x[k.PRERELEASE]}?${x[k.BUILD]}?`);r("FULL",`^${x[k.FULLPLAIN]}$`);r("LOOSEPLAIN",`[v=\\s]*${x[k.MAINVERSIONLOOSE]}${x[k.PRERELEASELOOSE]}?${x[k.BUILD]}?`);r("LOOSE",`^${x[k.LOOSEPLAIN]}$`);r("GTLT","((?:<|>)?=?)");r("XRANGEIDENTIFIERLOOSE",`${x[k.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);r("XRANGEIDENTIFIER",`${x[k.NUMERICIDENTIFIER]}|x|X|\\*`);r("XRANGEPLAIN",`[v=\\s]*(${x[k.XRANGEIDENTIFIER]})(?:\\.(${x[k.XRANGEIDENTIFIER]})(?:\\.(${x[k.XRANGEIDENTIFIER]})(?:${x[k.PRERELEASE]})?${x[k.BUILD]}?)?)?`);r("XRANGEPLAINLOOSE",`[v=\\s]*(${x[k.XRANGEIDENTIFIERLOOSE]})(?:\\.(${x[k.XRANGEIDENTIFIERLOOSE]})(?:\\.(${x[k.XRANGEIDENTIFIERLOOSE]})(?:${x[k.PRERELEASELOOSE]})?${x[k.BUILD]}?)?)?`);r("XRANGE",`^${x[k.GTLT]}\\s*${x[k.XRANGEPLAIN]}$`);r("XRANGELOOSE",`^${x[k.GTLT]}\\s*${x[k.XRANGEPLAINLOOSE]}$`);r("COERCEPLAIN",`(^|[^\\d])(\\d{1,${A7}})(?:\\.(\\d{1,${A7}}))?(?:\\.(\\d{1,${A7}}))?`);r("COERCE",`${x[k.COERCEPLAIN]}(?:$|[^\\d])`);r("COERCEFULL",x[k.COERCEPLAIN]+`(?:${x[k.PRERELEASE]})?(?:${x[k.BUILD]})?(?:$|[^\\d])`);r("COERCERTL",x[k.COERCE],!0);r("COERCERTLFULL",x[k.COERCEFULL],!0);r("LONETILDE","(?:~>?)");r("TILDETRIM",`(\\s*)${x[k.LONETILDE]}\\s+`,!0);_0.tildeTrimReplace="$1~";r("TILDE",`^${x[k.LONETILDE]}${x[k.XRANGEPLAIN]}$`);r("TILDELOOSE",`^${x[k.LONETILDE]}${x[k.XRANGEPLAINLOOSE]}$`);r("LONECARET","(?:\\^)");r("CARETTRIM",`(\\s*)${x[k.LONECARET]}\\s+`,!0);_0.caretTrimReplace="$1^";r("CARET",`^${x[k.LONECARET]}${x[k.XRANGEPLAIN]}$`);r("CARETLOOSE",`^${x[k.LONECARET]}${x[k.XRANGEPLAINLOOSE]}$`);r("COMPARATORLOOSE",`^${x[k.GTLT]}\\s*(${x[k.LOOSEPLAIN]})$|^$`);r("COMPARATOR",`^${x[k.GTLT]}\\s*(${x[k.FULLPLAIN]})$|^$`);r("COMPARATORTRIM",`(\\s*)${x[k.GTLT]}\\s*(${x[k.LOOSEPLAIN]}|${x[k.XRANGEPLAIN]})`,!0);_0.comparatorTrimReplace="$1$2$3";r("HYPHENRANGE",`^\\s*(${x[k.XRANGEPLAIN]})\\s+-\\s+(${x[k.XRANGEPLAIN]})\\s*$`);r("HYPHENRANGELOOSE",`^\\s*(${x[k.XRANGEPLAINLOOSE]})\\s+-\\s+(${x[k.XRANGEPLAINLOOSE]})\\s*$`);r("STAR","(<|>)?=?\\s*\\*");r("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");r("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var t2=N((ak,tW)=>{var QO=Object.freeze({loose:!0}),XO=Object.freeze({}),YO=($)=>{if(!$)return XO;if(typeof $!=="object")return QO;return $};tW.exports=YO});var E7=N((tk,HG)=>{var eW=/^[0-9]+$/,$G=($,H)=>{if(typeof $==="number"&&typeof H==="number")return $===H?0:$<H?-1:1;let J=eW.test($),Q=eW.test(H);if(J&&Q)$=+$,H=+H;return $===H?0:J&&!Q?-1:Q&&!J?1:$<H?-1:1},WO=($,H)=>$G(H,$);HG.exports={compareIdentifiers:$G,rcompareIdentifiers:WO}});var C1=N((ek,QG)=>{var e2=q9(),{MAX_LENGTH:JG,MAX_SAFE_INTEGER:$8}=G9(),{safeRe:H8,t:J8}=Y4(),GO=t2(),{compareIdentifiers:j7}=E7();class J0{constructor($,H){if(H=GO(H),$ instanceof J0)if($.loose===!!H.loose&&$.includePrerelease===!!H.includePrerelease)return $;else $=$.version;else if(typeof $!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof $}".`);if($.length>JG)throw TypeError(`version is longer than ${JG} characters`);e2("SemVer",$,H),this.options=H,this.loose=!!H.loose,this.includePrerelease=!!H.includePrerelease;let J=$.trim().match(H.loose?H8[J8.LOOSE]:H8[J8.FULL]);if(!J)throw TypeError(`Invalid Version: ${$}`);if(this.raw=$,this.major=+J[1],this.minor=+J[2],this.patch=+J[3],this.major>$8||this.major<0)throw TypeError("Invalid major version");if(this.minor>$8||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>$8||this.patch<0)throw TypeError("Invalid patch version");if(!J[4])this.prerelease=[];else this.prerelease=J[4].split(".").map((Q)=>{if(/^[0-9]+$/.test(Q)){let X=+Q;if(X>=0&&X<$8)return X}return Q});this.build=J[5]?J[5].split("."):[],this.format()}format(){if(this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length)this.version+=`-${this.prerelease.join(".")}`;return this.version}toString(){return this.version}compare($){if(e2("SemVer.compare",this.version,this.options,$),!($ instanceof J0)){if(typeof $==="string"&&$===this.version)return 0;$=new J0($,this.options)}if($.version===this.version)return 0;return this.compareMain($)||this.comparePre($)}compareMain($){if(!($ instanceof J0))$=new J0($,this.options);if(this.major<$.major)return-1;if(this.major>$.major)return 1;if(this.minor<$.minor)return-1;if(this.minor>$.minor)return 1;if(this.patch<$.patch)return-1;if(this.patch>$.patch)return 1;return 0}comparePre($){if(!($ instanceof J0))$=new J0($,this.options);if(this.prerelease.length&&!$.prerelease.length)return-1;else if(!this.prerelease.length&&$.prerelease.length)return 1;else if(!this.prerelease.length&&!$.prerelease.length)return 0;let H=0;do{let J=this.prerelease[H],Q=$.prerelease[H];if(e2("prerelease compare",H,J,Q),J===void 0&&Q===void 0)return 0;else if(Q===void 0)return 1;else if(J===void 0)return-1;else if(J===Q)continue;else return j7(J,Q)}while(++H)}compareBuild($){if(!($ instanceof J0))$=new J0($,this.options);let H=0;do{let J=this.build[H],Q=$.build[H];if(e2("build compare",H,J,Q),J===void 0&&Q===void 0)return 0;else if(Q===void 0)return 1;else if(J===void 0)return-1;else if(J===Q)continue;else return j7(J,Q)}while(++H)}inc($,H,J){if($.startsWith("pre")){if(!H&&J===!1)throw Error("invalid increment argument: identifier is empty");if(H){let Q=`-${H}`.match(this.options.loose?H8[J8.PRERELEASELOOSE]:H8[J8.PRERELEASE]);if(!Q||Q[1]!==H)throw Error(`invalid identifier: ${H}`)}}switch($){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",H,J);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",H,J);break;case"prepatch":this.prerelease.length=0,this.inc("patch",H,J),this.inc("pre",H,J);break;case"prerelease":if(this.prerelease.length===0)this.inc("patch",H,J);this.inc("pre",H,J);break;case"release":if(this.prerelease.length===0)throw Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0)this.major++;this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0)this.minor++;this.patch=0,this.prerelease=[];break;case"patch":if(this.prerelease.length===0)this.patch++;this.prerelease=[];break;case"pre":{let Q=Number(J)?1:0;if(this.prerelease.length===0)this.prerelease=[Q];else{let X=this.prerelease.length;while(--X>=0)if(typeof this.prerelease[X]==="number")this.prerelease[X]++,X=-2;if(X===-1){if(H===this.prerelease.join(".")&&J===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Q)}}if(H){let X=[H,Q];if(J===!1)X=[H];if(j7(this.prerelease[0],H)===0){if(isNaN(this.prerelease[1]))this.prerelease=X}else this.prerelease=X}break}default:throw Error(`invalid increment argument: ${$}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}QG.exports=J0});var V$=N(($h,YG)=>{var XG=C1(),qO=($,H,J=!1)=>{if($ instanceof XG)return $;try{return new XG($,H)}catch(Q){if(!J)return null;throw Q}};YG.exports=qO});var GG=N((Hh,WG)=>{var UO=V$(),BO=($,H)=>{let J=UO($,H);return J?J.version:null};WG.exports=BO});var UG=N((Jh,qG)=>{var wO=V$(),DO=($,H)=>{let J=wO($.trim().replace(/^[=v]+/,""),H);return J?J.version:null};qG.exports=DO});var DG=N((Qh,wG)=>{var BG=C1(),VO=($,H,J,Q,X)=>{if(typeof J==="string")X=Q,Q=J,J=void 0;try{return new BG($ instanceof BG?$.version:$,J).inc(H,Q,X).version}catch(Y){return null}};wG.exports=VO});var FG=N((Xh,_G)=>{var VG=V$(),_O=($,H)=>{let J=VG($,null,!0),Q=VG(H,null,!0),X=J.compare(Q);if(X===0)return null;let Y=X>0,W=Y?J:Q,G=Y?Q:J,q=!!W.prerelease.length;if(!!G.prerelease.length&&!q){if(!G.patch&&!G.minor)return"major";if(G.compareMain(W)===0){if(G.minor&&!G.patch)return"minor";return"patch"}}let B=q?"pre":"";if(J.major!==Q.major)return B+"major";if(J.minor!==Q.minor)return B+"minor";if(J.patch!==Q.patch)return B+"patch";return"prerelease"};_G.exports=_O});var NG=N((Yh,zG)=>{var FO=C1(),zO=($,H)=>new FO($,H).major;zG.exports=zO});var RG=N((Wh,AG)=>{var NO=C1(),AO=($,H)=>new NO($,H).minor;AG.exports=AO});var jG=N((Gh,EG)=>{var RO=C1(),EO=($,H)=>new RO($,H).patch;EG.exports=EO});var ZG=N((qh,OG)=>{var jO=V$(),OO=($,H)=>{let J=jO($,H);return J&&J.prerelease.length?J.prerelease:null};OG.exports=OO});var v1=N((Uh,MG)=>{var LG=C1(),ZO=($,H,J)=>new LG($,J).compare(new LG(H,J));MG.exports=ZO});var CG=N((Bh,SG)=>{var LO=v1(),MO=($,H,J)=>LO(H,$,J);SG.exports=MO});var KG=N((wh,PG)=>{var SO=v1(),CO=($,H)=>SO($,H,!0);PG.exports=CO});var Q8=N((Dh,TG)=>{var IG=C1(),PO=($,H,J)=>{let Q=new IG($,J),X=new IG(H,J);return Q.compare(X)||Q.compareBuild(X)};TG.exports=PO});var fG=N((Vh,bG)=>{var KO=Q8(),IO=($,H)=>$.sort((J,Q)=>KO(J,Q,H));bG.exports=IO});var kG=N((_h,xG)=>{var TO=Q8(),bO=($,H)=>$.sort((J,Q)=>TO(Q,J,H));xG.exports=bO});var U9=N((Fh,hG)=>{var fO=v1(),xO=($,H,J)=>fO($,H,J)>0;hG.exports=xO});var X8=N((zh,vG)=>{var kO=v1(),hO=($,H,J)=>kO($,H,J)<0;vG.exports=hO});var O7=N((Nh,gG)=>{var vO=v1(),gO=($,H,J)=>vO($,H,J)===0;gG.exports=gO});var Z7=N((Ah,yG)=>{var yO=v1(),uO=($,H,J)=>yO($,H,J)!==0;yG.exports=uO});var Y8=N((Rh,uG)=>{var mO=v1(),dO=($,H,J)=>mO($,H,J)>=0;uG.exports=dO});var W8=N((Eh,mG)=>{var cO=v1(),lO=($,H,J)=>cO($,H,J)<=0;mG.exports=lO});var L7=N((jh,dG)=>{var pO=O7(),nO=Z7(),iO=U9(),sO=Y8(),oO=X8(),rO=W8(),aO=($,H,J,Q)=>{switch(H){case"===":if(typeof $==="object")$=$.version;if(typeof J==="object")J=J.version;return $===J;case"!==":if(typeof $==="object")$=$.version;if(typeof J==="object")J=J.version;return $!==J;case"":case"=":case"==":return pO($,J,Q);case"!=":return nO($,J,Q);case">":return iO($,J,Q);case">=":return sO($,J,Q);case"<":return oO($,J,Q);case"<=":return rO($,J,Q);default:throw TypeError(`Invalid operator: ${H}`)}};dG.exports=aO});var lG=N((Oh,cG)=>{var tO=C1(),eO=V$(),{safeRe:G8,t:q8}=Y4(),$Z=($,H)=>{if($ instanceof tO)return $;if(typeof $==="number")$=String($);if(typeof $!=="string")return null;H=H||{};let J=null;if(!H.rtl)J=$.match(H.includePrerelease?G8[q8.COERCEFULL]:G8[q8.COERCE]);else{let q=H.includePrerelease?G8[q8.COERCERTLFULL]:G8[q8.COERCERTL],U;while((U=q.exec($))&&(!J||J.index+J[0].length!==$.length)){if(!J||U.index+U[0].length!==J.index+J[0].length)J=U;q.lastIndex=U.index+U[1].length+U[2].length}q.lastIndex=-1}if(J===null)return null;let Q=J[2],X=J[3]||"0",Y=J[4]||"0",W=H.includePrerelease&&J[5]?`-${J[5]}`:"",G=H.includePrerelease&&J[6]?`+${J[6]}`:"";return eO(`${Q}.${X}.${Y}${W}${G}`,H)};cG.exports=$Z});var iG=N((Zh,nG)=>{class pG{constructor(){this.max=1000,this.map=new Map}get($){let H=this.map.get($);if(H===void 0)return;else return this.map.delete($),this.map.set($,H),H}delete($){return this.map.delete($)}set($,H){if(!this.delete($)&&H!==void 0){if(this.map.size>=this.max){let Q=this.map.keys().next().value;this.delete(Q)}this.map.set($,H)}return this}}nG.exports=pG});var g1=N((Lh,aG)=>{var HZ=/\s+/g;class B9{constructor($,H){if(H=QZ(H),$ instanceof B9)if($.loose===!!H.loose&&$.includePrerelease===!!H.includePrerelease)return $;else return new B9($.raw,H);if($ instanceof M7)return this.raw=$.value,this.set=[[$]],this.formatted=void 0,this;if(this.options=H,this.loose=!!H.loose,this.includePrerelease=!!H.includePrerelease,this.raw=$.trim().replace(HZ," "),this.set=this.raw.split("||").map((J)=>this.parseRange(J.trim())).filter((J)=>J.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let J=this.set[0];if(this.set=this.set.filter((Q)=>!oG(Q[0])),this.set.length===0)this.set=[J];else if(this.set.length>1){for(let Q of this.set)if(Q.length===1&&BZ(Q[0])){this.set=[Q];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let $=0;$<this.set.length;$++){if($>0)this.formatted+="||";let H=this.set[$];for(let J=0;J<H.length;J++){if(J>0)this.formatted+=" ";this.formatted+=H[J].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange($){let J=((this.options.includePrerelease&&qZ)|(this.options.loose&&UZ))+":"+$,Q=sG.get(J);if(Q)return Q;let X=this.options.loose,Y=X?I1[P1.HYPHENRANGELOOSE]:I1[P1.HYPHENRANGE];$=$.replace(Y,EZ(this.options.includePrerelease)),B1("hyphen replace",$),$=$.replace(I1[P1.COMPARATORTRIM],YZ),B1("comparator trim",$),$=$.replace(I1[P1.TILDETRIM],WZ),B1("tilde trim",$),$=$.replace(I1[P1.CARETTRIM],GZ),B1("caret trim",$);let W=$.split(" ").map((B)=>wZ(B,this.options)).join(" ").split(/\s+/).map((B)=>RZ(B,this.options));if(X)W=W.filter((B)=>{return B1("loose invalid filter",B,this.options),!!B.match(I1[P1.COMPARATORLOOSE])});B1("range list",W);let G=new Map,q=W.map((B)=>new M7(B,this.options));for(let B of q){if(oG(B))return[B];G.set(B.value,B)}if(G.size>1&&G.has(""))G.delete("");let U=[...G.values()];return sG.set(J,U),U}intersects($,H){if(!($ instanceof B9))throw TypeError("a Range is required");return this.set.some((J)=>{return rG(J,H)&&$.set.some((Q)=>{return rG(Q,H)&&J.every((X)=>{return Q.every((Y)=>{return X.intersects(Y,H)})})})})}test($){if(!$)return!1;if(typeof $==="string")try{$=new XZ($,this.options)}catch(H){return!1}for(let H=0;H<this.set.length;H++)if(jZ(this.set[H],$,this.options))return!0;return!1}}aG.exports=B9;var JZ=iG(),sG=new JZ,QZ=t2(),M7=w9(),B1=q9(),XZ=C1(),{safeRe:I1,t:P1,comparatorTrimReplace:YZ,tildeTrimReplace:WZ,caretTrimReplace:GZ}=Y4(),{FLAG_INCLUDE_PRERELEASE:qZ,FLAG_LOOSE:UZ}=G9(),oG=($)=>$.value==="<0.0.0-0",BZ=($)=>$.value==="",rG=($,H)=>{let J=!0,Q=$.slice(),X=Q.pop();while(J&&Q.length)J=Q.every((Y)=>{return X.intersects(Y,H)}),X=Q.pop();return J},wZ=($,H)=>{return $=$.replace(I1[P1.BUILD],""),B1("comp",$,H),$=_Z($,H),B1("caret",$),$=DZ($,H),B1("tildes",$),$=zZ($,H),B1("xrange",$),$=AZ($,H),B1("stars",$),$},T1=($)=>!$||$.toLowerCase()==="x"||$==="*",DZ=($,H)=>{return $.trim().split(/\s+/).map((J)=>VZ(J,H)).join(" ")},VZ=($,H)=>{let J=H.loose?I1[P1.TILDELOOSE]:I1[P1.TILDE];return $.replace(J,(Q,X,Y,W,G)=>{B1("tilde",$,Q,X,Y,W,G);let q;if(T1(X))q="";else if(T1(Y))q=`>=${X}.0.0 <${+X+1}.0.0-0`;else if(T1(W))q=`>=${X}.${Y}.0 <${X}.${+Y+1}.0-0`;else if(G)B1("replaceTilde pr",G),q=`>=${X}.${Y}.${W}-${G} <${X}.${+Y+1}.0-0`;else q=`>=${X}.${Y}.${W} <${X}.${+Y+1}.0-0`;return B1("tilde return",q),q})},_Z=($,H)=>{return $.trim().split(/\s+/).map((J)=>FZ(J,H)).join(" ")},FZ=($,H)=>{B1("caret",$,H);let J=H.loose?I1[P1.CARETLOOSE]:I1[P1.CARET],Q=H.includePrerelease?"-0":"";return $.replace(J,(X,Y,W,G,q)=>{B1("caret",$,X,Y,W,G,q);let U;if(T1(Y))U="";else if(T1(W))U=`>=${Y}.0.0${Q} <${+Y+1}.0.0-0`;else if(T1(G))if(Y==="0")U=`>=${Y}.${W}.0${Q} <${Y}.${+W+1}.0-0`;else U=`>=${Y}.${W}.0${Q} <${+Y+1}.0.0-0`;else if(q)if(B1("replaceCaret pr",q),Y==="0")if(W==="0")U=`>=${Y}.${W}.${G}-${q} <${Y}.${W}.${+G+1}-0`;else U=`>=${Y}.${W}.${G}-${q} <${Y}.${+W+1}.0-0`;else U=`>=${Y}.${W}.${G}-${q} <${+Y+1}.0.0-0`;else if(B1("no pr"),Y==="0")if(W==="0")U=`>=${Y}.${W}.${G}${Q} <${Y}.${W}.${+G+1}-0`;else U=`>=${Y}.${W}.${G}${Q} <${Y}.${+W+1}.0-0`;else U=`>=${Y}.${W}.${G} <${+Y+1}.0.0-0`;return B1("caret return",U),U})},zZ=($,H)=>{return B1("replaceXRanges",$,H),$.split(/\s+/).map((J)=>NZ(J,H)).join(" ")},NZ=($,H)=>{$=$.trim();let J=H.loose?I1[P1.XRANGELOOSE]:I1[P1.XRANGE];return $.replace(J,(Q,X,Y,W,G,q)=>{B1("xRange",$,Q,X,Y,W,G,q);let U=T1(Y),B=U||T1(W),w=B||T1(G),_=w;if(X==="="&&_)X="";if(q=H.includePrerelease?"-0":"",U)if(X===">"||X==="<")Q="<0.0.0-0";else Q="*";else if(X&&_){if(B)W=0;if(G=0,X===">")if(X=">=",B)Y=+Y+1,W=0,G=0;else W=+W+1,G=0;else if(X==="<=")if(X="<",B)Y=+Y+1;else W=+W+1;if(X==="<")q="-0";Q=`${X+Y}.${W}.${G}${q}`}else if(B)Q=`>=${Y}.0.0${q} <${+Y+1}.0.0-0`;else if(w)Q=`>=${Y}.${W}.0${q} <${Y}.${+W+1}.0-0`;return B1("xRange return",Q),Q})},AZ=($,H)=>{return B1("replaceStars",$,H),$.trim().replace(I1[P1.STAR],"")},RZ=($,H)=>{return B1("replaceGTE0",$,H),$.trim().replace(I1[H.includePrerelease?P1.GTE0PRE:P1.GTE0],"")},EZ=($)=>(H,J,Q,X,Y,W,G,q,U,B,w,_)=>{if(T1(Q))J="";else if(T1(X))J=`>=${Q}.0.0${$?"-0":""}`;else if(T1(Y))J=`>=${Q}.${X}.0${$?"-0":""}`;else if(W)J=`>=${J}`;else J=`>=${J}${$?"-0":""}`;if(T1(U))q="";else if(T1(B))q=`<${+U+1}.0.0-0`;else if(T1(w))q=`<${U}.${+B+1}.0-0`;else if(_)q=`<=${U}.${B}.${w}-${_}`;else if($)q=`<${U}.${B}.${+w+1}-0`;else q=`<=${q}`;return`${J} ${q}`.trim()},jZ=($,H,J)=>{for(let Q=0;Q<$.length;Q++)if(!$[Q].test(H))return!1;if(H.prerelease.length&&!J.includePrerelease){for(let Q=0;Q<$.length;Q++){if(B1($[Q].semver),$[Q].semver===M7.ANY)continue;if($[Q].semver.prerelease.length>0){let X=$[Q].semver;if(X.major===H.major&&X.minor===H.minor&&X.patch===H.patch)return!0}}return!1}return!0}});var w9=N((Mh,Qq)=>{var D9=Symbol("SemVer ANY");class U8{static get ANY(){return D9}constructor($,H){if(H=tG(H),$ instanceof U8)if($.loose===!!H.loose)return $;else $=$.value;if($=$.trim().split(/\s+/).join(" "),C7("comparator",$,H),this.options=H,this.loose=!!H.loose,this.parse($),this.semver===D9)this.value="";else this.value=this.operator+this.semver.version;C7("comp",this)}parse($){let H=this.options.loose?eG[$q.COMPARATORLOOSE]:eG[$q.COMPARATOR],J=$.match(H);if(!J)throw TypeError(`Invalid comparator: ${$}`);if(this.operator=J[1]!==void 0?J[1]:"",this.operator==="=")this.operator="";if(!J[2])this.semver=D9;else this.semver=new Hq(J[2],this.options.loose)}toString(){return this.value}test($){if(C7("Comparator.test",$,this.options.loose),this.semver===D9||$===D9)return!0;if(typeof $==="string")try{$=new Hq($,this.options)}catch(H){return!1}return S7($,this.operator,this.semver,this.options)}intersects($,H){if(!($ instanceof U8))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new Jq($.value,H).test(this.value)}else if($.operator===""){if($.value==="")return!0;return new Jq(this.value,H).test($.semver)}if(H=tG(H),H.includePrerelease&&(this.value==="<0.0.0-0"||$.value==="<0.0.0-0"))return!1;if(!H.includePrerelease&&(this.value.startsWith("<0.0.0")||$.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&$.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&$.operator.startsWith("<"))return!0;if(this.semver.version===$.semver.version&&this.operator.includes("=")&&$.operator.includes("="))return!0;if(S7(this.semver,"<",$.semver,H)&&this.operator.startsWith(">")&&$.operator.startsWith("<"))return!0;if(S7(this.semver,">",$.semver,H)&&this.operator.startsWith("<")&&$.operator.startsWith(">"))return!0;return!1}}Qq.exports=U8;var tG=t2(),{safeRe:eG,t:$q}=Y4(),S7=L7(),C7=q9(),Hq=C1(),Jq=g1()});var V9=N((Sh,Xq)=>{var OZ=g1(),ZZ=($,H,J)=>{try{H=new OZ(H,J)}catch(Q){return!1}return H.test($)};Xq.exports=ZZ});var Wq=N((Ch,Yq)=>{var LZ=g1(),MZ=($,H)=>new LZ($,H).set.map((J)=>J.map((Q)=>Q.value).join(" ").trim().split(" "));Yq.exports=MZ});var qq=N((Ph,Gq)=>{var SZ=C1(),CZ=g1(),PZ=($,H,J)=>{let Q=null,X=null,Y=null;try{Y=new CZ(H,J)}catch(W){return null}return $.forEach((W)=>{if(Y.test(W)){if(!Q||X.compare(W)===-1)Q=W,X=new SZ(Q,J)}}),Q};Gq.exports=PZ});var Bq=N((Kh,Uq)=>{var KZ=C1(),IZ=g1(),TZ=($,H,J)=>{let Q=null,X=null,Y=null;try{Y=new IZ(H,J)}catch(W){return null}return $.forEach((W)=>{if(Y.test(W)){if(!Q||X.compare(W)===1)Q=W,X=new KZ(Q,J)}}),Q};Uq.exports=TZ});var Vq=N((Ih,Dq)=>{var P7=C1(),bZ=g1(),wq=U9(),fZ=($,H)=>{$=new bZ($,H);let J=new P7("0.0.0");if($.test(J))return J;if(J=new P7("0.0.0-0"),$.test(J))return J;J=null;for(let Q=0;Q<$.set.length;++Q){let X=$.set[Q],Y=null;if(X.forEach((W)=>{let G=new P7(W.semver.version);switch(W.operator){case">":if(G.prerelease.length===0)G.patch++;else G.prerelease.push(0);G.raw=G.format();case"":case">=":if(!Y||wq(G,Y))Y=G;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${W.operator}`)}}),Y&&(!J||wq(J,Y)))J=Y}if(J&&$.test(J))return J;return null};Dq.exports=fZ});var Fq=N((Th,_q)=>{var xZ=g1(),kZ=($,H)=>{try{return new xZ($,H).range||"*"}catch(J){return null}};_q.exports=kZ});var B8=N((bh,Rq)=>{var hZ=C1(),Aq=w9(),{ANY:vZ}=Aq,gZ=g1(),yZ=V9(),zq=U9(),Nq=X8(),uZ=W8(),mZ=Y8(),dZ=($,H,J,Q)=>{$=new hZ($,Q),H=new gZ(H,Q);let X,Y,W,G,q;switch(J){case">":X=zq,Y=uZ,W=Nq,G=">",q=">=";break;case"<":X=Nq,Y=mZ,W=zq,G="<",q="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(yZ($,H,Q))return!1;for(let U=0;U<H.set.length;++U){let B=H.set[U],w=null,_=null;if(B.forEach((V)=>{if(V.semver===vZ)V=new Aq(">=0.0.0");if(w=w||V,_=_||V,X(V.semver,w.semver,Q))w=V;else if(W(V.semver,_.semver,Q))_=V}),w.operator===G||w.operator===q)return!1;if((!_.operator||_.operator===G)&&Y($,_.semver))return!1;else if(_.operator===q&&W($,_.semver))return!1}return!0};Rq.exports=dZ});var jq=N((fh,Eq)=>{var cZ=B8(),lZ=($,H,J)=>cZ($,H,">",J);Eq.exports=lZ});var Zq=N((xh,Oq)=>{var pZ=B8(),nZ=($,H,J)=>pZ($,H,"<",J);Oq.exports=nZ});var Sq=N((kh,Mq)=>{var Lq=g1(),iZ=($,H,J)=>{return $=new Lq($,J),H=new Lq(H,J),$.intersects(H,J)};Mq.exports=iZ});var Pq=N((hh,Cq)=>{var sZ=V9(),oZ=v1();Cq.exports=($,H,J)=>{let Q=[],X=null,Y=null,W=$.sort((B,w)=>oZ(B,w,J));for(let B of W)if(sZ(B,H,J)){if(Y=B,!X)X=B}else{if(Y)Q.push([X,Y]);Y=null,X=null}if(X)Q.push([X,null]);let G=[];for(let[B,w]of Q)if(B===w)G.push(B);else if(!w&&B===W[0])G.push("*");else if(!w)G.push(`>=${B}`);else if(B===W[0])G.push(`<=${w}`);else G.push(`${B} - ${w}`);let q=G.join(" || "),U=typeof H.raw==="string"?H.raw:String(H);return q.length<U.length?q:H}});var xq=N((vh,fq)=>{var Kq=g1(),I7=w9(),{ANY:K7}=I7,_9=V9(),T7=v1(),rZ=($,H,J={})=>{if($===H)return!0;$=new Kq($,J),H=new Kq(H,J);let Q=!1;$:for(let X of $.set){for(let Y of H.set){let W=tZ(X,Y,J);if(Q=Q||W!==null,W)continue $}if(Q)return!1}return!0},aZ=[new I7(">=0.0.0-0")],Iq=[new I7(">=0.0.0")],tZ=($,H,J)=>{if($===H)return!0;if($.length===1&&$[0].semver===K7)if(H.length===1&&H[0].semver===K7)return!0;else if(J.includePrerelease)$=aZ;else $=Iq;if(H.length===1&&H[0].semver===K7)if(J.includePrerelease)return!0;else H=Iq;let Q=new Set,X,Y;for(let V of $)if(V.operator===">"||V.operator===">=")X=Tq(X,V,J);else if(V.operator==="<"||V.operator==="<=")Y=bq(Y,V,J);else Q.add(V.semver);if(Q.size>1)return null;let W;if(X&&Y){if(W=T7(X.semver,Y.semver,J),W>0)return null;else if(W===0&&(X.operator!==">="||Y.operator!=="<="))return null}for(let V of Q){if(X&&!_9(V,String(X),J))return null;if(Y&&!_9(V,String(Y),J))return null;for(let D of H)if(!_9(V,String(D),J))return!1;return!0}let G,q,U,B,w=Y&&!J.includePrerelease&&Y.semver.prerelease.length?Y.semver:!1,_=X&&!J.includePrerelease&&X.semver.prerelease.length?X.semver:!1;if(w&&w.prerelease.length===1&&Y.operator==="<"&&w.prerelease[0]===0)w=!1;for(let V of H){if(B=B||V.operator===">"||V.operator===">=",U=U||V.operator==="<"||V.operator==="<=",X){if(_){if(V.semver.prerelease&&V.semver.prerelease.length&&V.semver.major===_.major&&V.semver.minor===_.minor&&V.semver.patch===_.patch)_=!1}if(V.operator===">"||V.operator===">="){if(G=Tq(X,V,J),G===V&&G!==X)return!1}else if(X.operator===">="&&!_9(X.semver,String(V),J))return!1}if(Y){if(w){if(V.semver.prerelease&&V.semver.prerelease.length&&V.semver.major===w.major&&V.semver.minor===w.minor&&V.semver.patch===w.patch)w=!1}if(V.operator==="<"||V.operator==="<="){if(q=bq(Y,V,J),q===V&&q!==Y)return!1}else if(Y.operator==="<="&&!_9(Y.semver,String(V),J))return!1}if(!V.operator&&(Y||X)&&W!==0)return!1}if(X&&U&&!Y&&W!==0)return!1;if(Y&&B&&!X&&W!==0)return!1;if(_||w)return!1;return!0},Tq=($,H,J)=>{if(!$)return H;let Q=T7($.semver,H.semver,J);return Q>0?$:Q<0?H:H.operator===">"&&$.operator===">="?H:$},bq=($,H,J)=>{if(!$)return H;let Q=T7($.semver,H.semver,J);return Q<0?$:Q>0?H:H.operator==="<"&&$.operator==="<="?H:$};fq.exports=rZ});var w8=N((gh,vq)=>{var b7=Y4(),kq=G9(),eZ=C1(),hq=E7(),$L=V$(),HL=GG(),JL=UG(),QL=DG(),XL=FG(),YL=NG(),WL=RG(),GL=jG(),qL=ZG(),UL=v1(),BL=CG(),wL=KG(),DL=Q8(),VL=fG(),_L=kG(),FL=U9(),zL=X8(),NL=O7(),AL=Z7(),RL=Y8(),EL=W8(),jL=L7(),OL=lG(),ZL=w9(),LL=g1(),ML=V9(),SL=Wq(),CL=qq(),PL=Bq(),KL=Vq(),IL=Fq(),TL=B8(),bL=jq(),fL=Zq(),xL=Sq(),kL=Pq(),hL=xq();vq.exports={parse:$L,valid:HL,clean:JL,inc:QL,diff:XL,major:YL,minor:WL,patch:GL,prerelease:qL,compare:UL,rcompare:BL,compareLoose:wL,compareBuild:DL,sort:VL,rsort:_L,gt:FL,lt:zL,eq:NL,neq:AL,gte:RL,lte:EL,cmp:jL,coerce:OL,Comparator:ZL,Range:LL,satisfies:ML,toComparators:SL,maxSatisfying:CL,minSatisfying:PL,minVersion:KL,validRange:IL,outside:TL,gtr:bL,ltr:fL,intersects:xL,simplifyRange:kL,subset:hL,SemVer:eZ,re:b7.re,src:b7.src,tokens:b7.t,SEMVER_SPEC_VERSION:kq.SEMVER_SPEC_VERSION,RELEASE_TYPES:kq.RELEASE_TYPES,compareIdentifiers:hq.compareIdentifiers,rcompareIdentifiers:hq.rcompareIdentifiers}});var yq=N((yh,gq)=>{var vL=w8();gq.exports=vL.satisfies(process.version,">=15.7.0")});var mq=N((uh,uq)=>{var gL=w8();uq.exports=gL.satisfies(process.version,">=16.9.0")});var f7=N((mh,dq)=>{var yL=yq(),uL=mq(),mL={ec:["ES256","ES384","ES512"],rsa:["RS256","PS256","RS384","PS384","RS512","PS512"],"rsa-pss":["PS256","PS384","PS512"]},dL={ES256:"prime256v1",ES384:"secp384r1",ES512:"secp521r1"};dq.exports=function($,H){if(!$||!H)return;let J=H.asymmetricKeyType;if(!J)return;let Q=mL[J];if(!Q)throw Error(`Unknown key type "${J}".`);if(!Q.includes($))throw Error(`"alg" parameter for "${J}" key type must be one of: ${Q.join(", ")}.`);if(yL)switch(J){case"ec":let X=H.asymmetricKeyDetails.namedCurve,Y=dL[$];if(X!==Y)throw Error(`"alg" parameter "${$}" requires curve "${Y}".`);break;case"rsa-pss":if(uL){let W=parseInt($.slice(-3),10),{hashAlgorithm:G,mgf1HashAlgorithm:q,saltLength:U}=H.asymmetricKeyDetails;if(G!==`sha${W}`||q!==G)throw Error(`Invalid key for this operation, its RSA-PSS parameters do not meet the requirements of "alg" ${$}.`);if(U!==void 0&&U>W>>3)throw Error(`Invalid key for this operation, its RSA-PSS parameter saltLength does not meet the requirements of "alg" ${$}.`)}break}}});var x7=N((dh,cq)=>{var cL=w8();cq.exports=cL.satisfies(process.version,"^6.12.0 || >=8.0.0")});var nq=N((ch,pq)=>{var q1=W9(),lL=F7(),lq=z7(),pL=_7(),nL=N7(),iL=f7(),sL=x7(),oL=i2(),{KeyObject:rL,createSecretKey:aL,createPublicKey:tL}=require("crypto"),k7=["RS256","RS384","RS512"],eL=["ES256","ES384","ES512"],h7=["RS256","RS384","RS512"],$M=["HS256","HS384","HS512"];if(sL)k7.splice(k7.length,0,"PS256","PS384","PS512"),h7.splice(h7.length,0,"PS256","PS384","PS512");pq.exports=function($,H,J,Q){if(typeof J==="function"&&!Q)Q=J,J={};if(!J)J={};J=Object.assign({},J);let X;if(Q)X=Q;else X=function(B,w){if(B)throw B;return w};if(J.clockTimestamp&&typeof J.clockTimestamp!=="number")return X(new q1("clockTimestamp must be a number"));if(J.nonce!==void 0&&(typeof J.nonce!=="string"||J.nonce.trim()===""))return X(new q1("nonce must be a non-empty string"));if(J.allowInvalidAsymmetricKeyTypes!==void 0&&typeof J.allowInvalidAsymmetricKeyTypes!=="boolean")return X(new q1("allowInvalidAsymmetricKeyTypes must be a boolean"));let Y=J.clockTimestamp||Math.floor(Date.now()/1000);if(!$)return X(new q1("jwt must be provided"));if(typeof $!=="string")return X(new q1("jwt must be a string"));let W=$.split(".");if(W.length!==3)return X(new q1("jwt malformed"));let G;try{G=pL($,{complete:!0})}catch(B){return X(B)}if(!G)return X(new q1("invalid token"));let q=G.header,U;if(typeof H==="function"){if(!Q)return X(new q1("verify must be called asynchronous if secret or public key is provided as a callback"));U=H}else U=function(B,w){return w(null,H)};return U(q,function(B,w){if(B)return X(new q1("error in secret or public key callback: "+B.message));let _=W[2].trim()!=="";if(!_&&w)return X(new q1("jwt signature is required"));if(_&&!w)return X(new q1("secret or public key must be provided"));if(!_&&!J.algorithms)return X(new q1('please specify "none" in "algorithms" to verify unsigned tokens'));if(w!=null&&!(w instanceof rL))try{w=tL(w)}catch(A){try{w=aL(typeof w==="string"?Buffer.from(w):w)}catch(E){return X(new q1("secretOrPublicKey is not valid key material"))}}if(!J.algorithms)if(w.type==="secret")J.algorithms=$M;else if(["rsa","rsa-pss"].includes(w.asymmetricKeyType))J.algorithms=h7;else if(w.asymmetricKeyType==="ec")J.algorithms=eL;else J.algorithms=k7;if(J.algorithms.indexOf(G.header.alg)===-1)return X(new q1("invalid algorithm"));if(q.alg.startsWith("HS")&&w.type!=="secret")return X(new q1(`secretOrPublicKey must be a symmetric key when using ${q.alg}`));else if(/^(?:RS|PS|ES)/.test(q.alg)&&w.type!=="public")return X(new q1(`secretOrPublicKey must be an asymmetric key when using ${q.alg}`));if(!J.allowInvalidAsymmetricKeyTypes)try{iL(q.alg,w)}catch(A){return X(A)}let V;try{V=oL.verify($,G.header.alg,w)}catch(A){return X(A)}if(!V)return X(new q1("invalid signature"));let D=G.payload;if(typeof D.nbf<"u"&&!J.ignoreNotBefore){if(typeof D.nbf!=="number")return X(new q1("invalid nbf value"));if(D.nbf>Y+(J.clockTolerance||0))return X(new lL("jwt not active",new Date(D.nbf*1000)))}if(typeof D.exp<"u"&&!J.ignoreExpiration){if(typeof D.exp!=="number")return X(new q1("invalid exp value"));if(Y>=D.exp+(J.clockTolerance||0))return X(new lq("jwt expired",new Date(D.exp*1000)))}if(J.audience){let A=Array.isArray(J.audience)?J.audience:[J.audience];if(!(Array.isArray(D.aud)?D.aud:[D.aud]).some(function(M){return A.some(function(L){return L instanceof RegExp?L.test(M):L===M})}))return X(new q1("jwt audience invalid. expected: "+A.join(" or ")))}if(J.issuer){if(typeof J.issuer==="string"&&D.iss!==J.issuer||Array.isArray(J.issuer)&&J.issuer.indexOf(D.iss)===-1)return X(new q1("jwt issuer invalid. expected: "+J.issuer))}if(J.subject){if(D.sub!==J.subject)return X(new q1("jwt subject invalid. expected: "+J.subject))}if(J.jwtid){if(D.jti!==J.jwtid)return X(new q1("jwt jwtid invalid. expected: "+J.jwtid))}if(J.nonce){if(D.nonce!==J.nonce)return X(new q1("jwt nonce invalid. expected: "+J.nonce))}if(J.maxAge){if(typeof D.iat!=="number")return X(new q1("iat required when maxAge is specified"));let A=nL(J.maxAge,D.iat);if(typeof A>"u")return X(new q1('"maxAge" should be a number of seconds or string representing a timespan eg: "1d", "20h", 60'));if(Y>=A+(J.clockTolerance||0))return X(new lq("maxAge exceeded",new Date(A*1000)))}if(J.complete===!0){let A=G.signature;return X(null,{header:q,payload:D,signature:A})}return X(null,D)})}});var tq=N((lh,aq)=>{var iq=1/0,oq=9007199254740991,HM=179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,sq=NaN,JM="[object Arguments]",QM="[object Function]",XM="[object GeneratorFunction]",YM="[object String]",WM="[object Symbol]",GM=/^\s+|\s+$/g,qM=/^[-+]0x[0-9a-f]+$/i,UM=/^0b[01]+$/i,BM=/^0o[0-7]+$/i,wM=/^(?:0|[1-9]\d*)$/,DM=parseInt;function VM($,H){var J=-1,Q=$?$.length:0,X=Array(Q);while(++J<Q)X[J]=H($[J],J,$);return X}function _M($,H,J,Q){var X=$.length,Y=J+(Q?1:-1);while(Q?Y--:++Y<X)if(H($[Y],Y,$))return Y;return-1}function FM($,H,J){if(H!==H)return _M($,zM,J);var Q=J-1,X=$.length;while(++Q<X)if($[Q]===H)return Q;return-1}function zM($){return $!==$}function NM($,H){var J=-1,Q=Array($);while(++J<$)Q[J]=H(J);return Q}function AM($,H){return VM(H,function(J){return $[J]})}function RM($,H){return function(J){return $(H(J))}}var D8=Object.prototype,g7=D8.hasOwnProperty,V8=D8.toString,EM=D8.propertyIsEnumerable,jM=RM(Object.keys,Object),OM=Math.max;function ZM($,H){var J=rq($)||PM($)?NM($.length,String):[],Q=J.length,X=!!Q;for(var Y in $)if((H||g7.call($,Y))&&!(X&&(Y=="length"||MM(Y,Q))))J.push(Y);return J}function LM($){if(!SM($))return jM($);var H=[];for(var J in Object($))if(g7.call($,J)&&J!="constructor")H.push(J);return H}function MM($,H){return H=H==null?oq:H,!!H&&(typeof $=="number"||wM.test($))&&($>-1&&$%1==0&&$<H)}function SM($){var H=$&&$.constructor,J=typeof H=="function"&&H.prototype||D8;return $===J}function CM($,H,J,Q){$=y7($)?$:gM($),J=J&&!Q?kM(J):0;var X=$.length;if(J<0)J=OM(X+J,0);return bM($)?J<=X&&$.indexOf(H,J)>-1:!!X&&FM($,H,J)>-1}function PM($){return KM($)&&g7.call($,"callee")&&(!EM.call($,"callee")||V8.call($)==JM)}var rq=Array.isArray;function y7($){return $!=null&&TM($.length)&&!IM($)}function KM($){return u7($)&&y7($)}function IM($){var H=v7($)?V8.call($):"";return H==QM||H==XM}function TM($){return typeof $=="number"&&$>-1&&$%1==0&&$<=oq}function v7($){var H=typeof $;return!!$&&(H=="object"||H=="function")}function u7($){return!!$&&typeof $=="object"}function bM($){return typeof $=="string"||!rq($)&&u7($)&&V8.call($)==YM}function fM($){return typeof $=="symbol"||u7($)&&V8.call($)==WM}function xM($){if(!$)return $===0?$:0;if($=hM($),$===iq||$===-iq){var H=$<0?-1:1;return H*HM}return $===$?$:0}function kM($){var H=xM($),J=H%1;return H===H?J?H-J:H:0}function hM($){if(typeof $=="number")return $;if(fM($))return sq;if(v7($)){var H=typeof $.valueOf=="function"?$.valueOf():$;$=v7(H)?H+"":H}if(typeof $!="string")return $===0?$:+$;$=$.replace(GM,"");var J=UM.test($);return J||BM.test($)?DM($.slice(2),J?2:8):qM.test($)?sq:+$}function vM($){return y7($)?ZM($):LM($)}function gM($){return $?AM($,vM($)):[]}aq.exports=CM});var $U=N((ph,eq)=>{var yM="[object Boolean]",uM=Object.prototype,mM=uM.toString;function dM($){return $===!0||$===!1||cM($)&&mM.call($)==yM}function cM($){return!!$&&typeof $=="object"}eq.exports=dM});var YU=N((nh,XU)=>{var HU=1/0,lM=179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,JU=NaN,pM="[object Symbol]",nM=/^\s+|\s+$/g,iM=/^[-+]0x[0-9a-f]+$/i,sM=/^0b[01]+$/i,oM=/^0o[0-7]+$/i,rM=parseInt,aM=Object.prototype,tM=aM.toString;function eM($){return typeof $=="number"&&$==QS($)}function QU($){var H=typeof $;return!!$&&(H=="object"||H=="function")}function $S($){return!!$&&typeof $=="object"}function HS($){return typeof $=="symbol"||$S($)&&tM.call($)==pM}function JS($){if(!$)return $===0?$:0;if($=XS($),$===HU||$===-HU){var H=$<0?-1:1;return H*lM}return $===$?$:0}function QS($){var H=JS($),J=H%1;return H===H?J?H-J:H:0}function XS($){if(typeof $=="number")return $;if(HS($))return JU;if(QU($)){var H=typeof $.valueOf=="function"?$.valueOf():$;$=QU(H)?H+"":H}if(typeof $!="string")return $===0?$:+$;$=$.replace(nM,"");var J=sM.test($);return J||oM.test($)?rM($.slice(2),J?2:8):iM.test($)?JU:+$}XU.exports=eM});var GU=N((ih,WU)=>{var YS="[object Number]",WS=Object.prototype,GS=WS.toString;function qS($){return!!$&&typeof $=="object"}function US($){return typeof $=="number"||qS($)&&GS.call($)==YS}WU.exports=US});var wU=N((sh,BU)=>{var BS="[object Object]";function wS($){var H=!1;if($!=null&&typeof $.toString!="function")try{H=!!($+"")}catch(J){}return H}function DS($,H){return function(J){return $(H(J))}}var VS=Function.prototype,qU=Object.prototype,UU=VS.toString,_S=qU.hasOwnProperty,FS=UU.call(Object),zS=qU.toString,NS=DS(Object.getPrototypeOf,Object);function AS($){return!!$&&typeof $=="object"}function RS($){if(!AS($)||zS.call($)!=BS||wS($))return!1;var H=NS($);if(H===null)return!0;var J=_S.call(H,"constructor")&&H.constructor;return typeof J=="function"&&J instanceof J&&UU.call(J)==FS}BU.exports=RS});var VU=N((oh,DU)=>{var ES="[object String]",jS=Object.prototype,OS=jS.toString,ZS=Array.isArray;function LS($){return!!$&&typeof $=="object"}function MS($){return typeof $=="string"||!ZS($)&&LS($)&&OS.call($)==ES}DU.exports=MS});var AU=N((rh,NU)=>{var SS="Expected a function",_U=1/0,CS=179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,FU=NaN,PS="[object Symbol]",KS=/^\s+|\s+$/g,IS=/^[-+]0x[0-9a-f]+$/i,TS=/^0b[01]+$/i,bS=/^0o[0-7]+$/i,fS=parseInt,xS=Object.prototype,kS=xS.toString;function hS($,H){var J;if(typeof H!="function")throw TypeError(SS);return $=mS($),function(){if(--$>0)J=H.apply(this,arguments);if($<=1)H=void 0;return J}}function vS($){return hS(2,$)}function zU($){var H=typeof $;return!!$&&(H=="object"||H=="function")}function gS($){return!!$&&typeof $=="object"}function yS($){return typeof $=="symbol"||gS($)&&kS.call($)==PS}function uS($){if(!$)return $===0?$:0;if($=dS($),$===_U||$===-_U){var H=$<0?-1:1;return H*CS}return $===$?$:0}function mS($){var H=uS($),J=H%1;return H===H?J?H-J:H:0}function dS($){if(typeof $=="number")return $;if(yS($))return FU;if(zU($)){var H=typeof $.valueOf=="function"?$.valueOf():$;$=zU(H)?H+"":H}if(typeof $!="string")return $===0?$:+$;$=$.replace(KS,"");var J=TS.test($);return J||bS.test($)?fS($.slice(2),J?2:8):IS.test($)?FU:+$}NU.exports=vS});var CU=N((ah,SU)=>{var RU=N7(),cS=x7(),lS=f7(),EU=i2(),pS=tq(),_8=$U(),jU=YU(),m7=GU(),ZU=wU(),g0=VU(),nS=AU(),{KeyObject:iS,createSecretKey:sS,createPrivateKey:oS}=require("crypto"),LU=["RS256","RS384","RS512","ES256","ES384","ES512","HS256","HS384","HS512","none"];if(cS)LU.splice(3,0,"PS256","PS384","PS512");var rS={expiresIn:{isValid:function($){return jU($)||g0($)&&$},message:'"expiresIn" should be a number of seconds or string representing a timespan'},notBefore:{isValid:function($){return jU($)||g0($)&&$},message:'"notBefore" should be a number of seconds or string representing a timespan'},audience:{isValid:function($){return g0($)||Array.isArray($)},message:'"audience" must be a string or array'},algorithm:{isValid:pS.bind(null,LU),message:'"algorithm" must be a valid string enum value'},header:{isValid:ZU,message:'"header" must be an object'},encoding:{isValid:g0,message:'"encoding" must be a string'},issuer:{isValid:g0,message:'"issuer" must be a string'},subject:{isValid:g0,message:'"subject" must be a string'},jwtid:{isValid:g0,message:'"jwtid" must be a string'},noTimestamp:{isValid:_8,message:'"noTimestamp" must be a boolean'},keyid:{isValid:g0,message:'"keyid" must be a string'},mutatePayload:{isValid:_8,message:'"mutatePayload" must be a boolean'},allowInsecureKeySizes:{isValid:_8,message:'"allowInsecureKeySizes" must be a boolean'},allowInvalidAsymmetricKeyTypes:{isValid:_8,message:'"allowInvalidAsymmetricKeyTypes" must be a boolean'}},aS={iat:{isValid:m7,message:'"iat" should be a number of seconds'},exp:{isValid:m7,message:'"exp" should be a number of seconds'},nbf:{isValid:m7,message:'"nbf" should be a number of seconds'}};function MU($,H,J,Q){if(!ZU(J))throw Error('Expected "'+Q+'" to be a plain object.');Object.keys(J).forEach(function(X){let Y=$[X];if(!Y){if(!H)throw Error('"'+X+'" is not allowed in "'+Q+'"');return}if(!Y.isValid(J[X]))throw Error(Y.message)})}function tS($){return MU(rS,!1,$,"options")}function eS($){return MU(aS,!0,$,"payload")}var OU={audience:"aud",issuer:"iss",subject:"sub",jwtid:"jti"},$C=["expiresIn","notBefore","noTimestamp","audience","issuer","subject","jwtid"];SU.exports=function($,H,J,Q){if(typeof J==="function")Q=J,J={};else J=J||{};let X=typeof $==="object"&&!Buffer.isBuffer($),Y=Object.assign({alg:J.algorithm||"HS256",typ:X?"JWT":void 0,kid:J.keyid},J.header);function W(U){if(Q)return Q(U);throw U}if(!H&&J.algorithm!=="none")return W(Error("secretOrPrivateKey must have a value"));if(H!=null&&!(H instanceof iS))try{H=oS(H)}catch(U){try{H=sS(typeof H==="string"?Buffer.from(H):H)}catch(B){return W(Error("secretOrPrivateKey is not valid key material"))}}if(Y.alg.startsWith("HS")&&H.type!=="secret")return W(Error(`secretOrPrivateKey must be a symmetric key when using ${Y.alg}`));else if(/^(?:RS|PS|ES)/.test(Y.alg)){if(H.type!=="private")return W(Error(`secretOrPrivateKey must be an asymmetric key when using ${Y.alg}`));if(!J.allowInsecureKeySizes&&!Y.alg.startsWith("ES")&&H.asymmetricKeyDetails!==void 0&&H.asymmetricKeyDetails.modulusLength<2048)return W(Error(`secretOrPrivateKey has a minimum key size of 2048 bits for ${Y.alg}`))}if(typeof $>"u")return W(Error("payload is required"));else if(X){try{eS($)}catch(U){return W(U)}if(!J.mutatePayload)$=Object.assign({},$)}else{let U=$C.filter(function(B){return typeof J[B]<"u"});if(U.length>0)return W(Error("invalid "+U.join(",")+" option for "+typeof $+" payload"))}if(typeof $.exp<"u"&&typeof J.expiresIn<"u")return W(Error('Bad "options.expiresIn" option the payload already has an "exp" property.'));if(typeof $.nbf<"u"&&typeof J.notBefore<"u")return W(Error('Bad "options.notBefore" option the payload already has an "nbf" property.'));try{tS(J)}catch(U){return W(U)}if(!J.allowInvalidAsymmetricKeyTypes)try{lS(Y.alg,H)}catch(U){return W(U)}let G=$.iat||Math.floor(Date.now()/1000);if(J.noTimestamp)delete $.iat;else if(X)$.iat=G;if(typeof J.notBefore<"u"){try{$.nbf=RU(J.notBefore,G)}catch(U){return W(U)}if(typeof $.nbf>"u")return W(Error('"notBefore" should be a number of seconds or string representing a timespan eg: "1d", "20h", 60'))}if(typeof J.expiresIn<"u"&&typeof $==="object"){try{$.exp=RU(J.expiresIn,G)}catch(U){return W(U)}if(typeof $.exp>"u")return W(Error('"expiresIn" should be a number of seconds or string representing a timespan eg: "1d", "20h", 60'))}Object.keys(OU).forEach(function(U){let B=OU[U];if(typeof J[U]<"u"){if(typeof $[B]<"u")return W(Error('Bad "options.'+U+'" option. The payload already has an "'+B+'" property.'));$[B]=J[U]}});let q=J.encoding||"utf8";if(typeof Q==="function")Q=Q&&nS(Q),EU.createSign({header:Y,privateKey:H,payload:$,encoding:q}).once("error",Q).once("done",function(U){if(!J.allowInsecureKeySizes&&/^(?:RS|PS)/.test(Y.alg)&&U.length<256)return Q(Error(`secretOrPrivateKey has a minimum key size of 2048 bits for ${Y.alg}`));Q(null,U)});else{let U=EU.sign({header:Y,payload:$,secret:H,encoding:q});if(!J.allowInsecureKeySizes&&/^(?:RS|PS)/.test(Y.alg)&&U.length<256)throw Error(`secretOrPrivateKey has a minimum key size of 2048 bits for ${Y.alg}`);return U}}});var KU=N((th,PU)=>{PU.exports={decode:_7(),verify:nq(),sign:CU(),JsonWebTokenError:W9(),NotBeforeError:F7(),TokenExpiredError:z7()}});var GB={};L1(GB,{setGlobalTransactionManager:()=>m1,getGlobalTransactionManager:()=>M0,InMemoryTransactionManager:()=>F$,BaseTransactionManager:()=>Q0});class Q0{activeTransactions=new Map;requestTransactions=new WeakMap;isActive($){return this.activeTransactions.has($.id)}setRollbackOnly($){$.rollbackOnly=!0}createTransactionContext($){let H={id:crypto.randomUUID(),startTime:new Date,isolation:$?.isolation,timeout:$?.timeout,readOnly:$?.readOnly,savepoints:[],rollbackOnly:!1};return this.activeTransactions.set(H.id,H),H}removeTransactionContext($){this.activeTransactions.delete($.id)}getRequestTransaction($){return this.requestTransactions.get($)}setRequestTransaction($,H){this.requestTransactions.set($,H)}clearRequestTransaction($){this.requestTransactions.delete($)}async handleTransactional($,H,J,Q,X){let Y=Reflect.getMetadata("transactional",$,H);if(!Y)return Q.apply($,J);let W=X?this.getRequestTransaction(X):null;switch(Y.propagation||"REQUIRED"){case"REQUIRED":return W?this.executeInExistingTransaction(W,$,J,Q,Y):this.executeInNewTransaction($,J,Q,Y,X);case"REQUIRES_NEW":return this.executeInNewTransaction($,J,Q,Y,X);case"SUPPORTS":return W?this.executeInExistingTransaction(W,$,J,Q,Y):Q.apply($,J);case"NOT_SUPPORTED":return Q.apply($,J);case"MANDATORY":if(!W)throw Error("Transaction is mandatory but no existing transaction found");return this.executeInExistingTransaction(W,$,J,Q,Y);case"NEVER":if(W)throw Error("Transaction is not allowed but existing transaction found");return Q.apply($,J);default:return W?this.executeInExistingTransaction(W,$,J,Q,Y):this.executeInNewTransaction($,J,Q,Y,X)}}async executeInNewTransaction($,H,J,Q,X){let Y=await this.begin(Q);if(X)this.setRequestTransaction(X,Y);try{let W=await J.apply($,H);if(Y.rollbackOnly)throw await this.rollback(Y),Error("Transaction marked for rollback");return await this.commit(Y),W}catch(W){throw await this.rollback(Y),W}finally{if(X)this.clearRequestTransaction(X);this.removeTransactionContext(Y)}}async executeInExistingTransaction($,H,J,Q,X){return this.handleNestedTransaction($,H,J,Q)}async handleNestedTransaction($,H,J,Q){let X=`sp_${Date.now()}_${Math.random().toString(36).substring(2,11)}`;try{return await this.savepoint($,X),await Q.apply(H,J)}catch(Y){throw await this.rollbackToSavepoint($,X),Y}}}function m1($){N8=$}function M0(){if(!N8)N8=new F$;return N8}var F$,N8=null;var d1=Z9(()=>{F$=class F$ extends Q0{transactions=new Map;currentTransactionId=null;async begin($){let H=this.createTransactionContext($);return this.transactions.set(H.id,{operations:[],committed:!1,rolledBack:!1}),this.currentTransactionId=H.id,H}async commit($){let H=this.transactions.get($.id);if(!H)throw Error(`Transaction ${$.id} not found`);if(H.rolledBack)throw Error(`Transaction ${$.id} already rolled back`);if(H.committed=!0,typeof globalThis.mockDatabase?.commitTransaction==="function")globalThis.mockDatabase.commitTransaction($.id);if(this.transactions.delete($.id),this.removeTransactionContext($),this.currentTransactionId===$.id)this.currentTransactionId=null}async rollback($){let H=this.transactions.get($.id);if(!H)throw Error(`Transaction ${$.id} not found`);if(H.rolledBack=!0,typeof globalThis.mockDatabase?.rollbackTransaction==="function")globalThis.mockDatabase.rollbackTransaction($.id);if(this.transactions.delete($.id),this.removeTransactionContext($),this.currentTransactionId===$.id)this.currentTransactionId=null}async savepoint($,H){$.savepoints.push(H);let J=this.transactions.get($.id);if(J)J.savepoints=J.savepoints||[],J.savepoints.push(H)}async rollbackToSavepoint($,H){let J=$.savepoints.indexOf(H);if(J===-1)throw Error(`Savepoint ${H} not found`);$.savepoints=$.savepoints.slice(0,J+1);let Q=this.transactions.get($.id);if(Q&&Q.savepoints)Q.savepoints=Q.savepoints.slice(0,J+1)}}});var tA={};L1(tA,{createSimpleRequestIdMiddleware:()=>G5,createRequestContextMiddleware:()=>W5,createRateLimitMiddleware:()=>N4,createCorsMiddleware:()=>z4,createCompressionMiddleware:()=>A4,createCacheMiddleware:()=>F5,createCacheInvalidationMiddleware:()=>z5});module.exports=l1(tA);function z4($){let{origin:H="*",methods:J=["GET","POST","PUT","DELETE","PATCH","OPTIONS"],allowedHeaders:Q=["Content-Type","Authorization"],exposedHeaders:X=[],credentials:Y=!1,maxAge:W=86400}=$||{};return async(G,q)=>{let U=G.req.header("origin"),B=G.req.method,w=null;if(typeof H==="string")w=H;else if(Array.isArray(H)){if(U&&H.includes(U))w=U}else if(typeof H==="function"){if(U&&H(U))w=U}if(w)G.header("Access-Control-Allow-Origin",w);if(Y)G.header("Access-Control-Allow-Credentials","true");if(X.length>0)G.header("Access-Control-Expose-Headers",X.join(", "));if(B==="OPTIONS")return G.header("Access-Control-Allow-Methods",J.join(", ")),G.header("Access-Control-Allow-Headers",Q.join(", ")),G.header("Access-Control-Max-Age",W.toString()),G.body(null,204);await q()}}function N4($){let{windowMs:H=60000,max:J=100,keyGenerator:Q=(W)=>{return W.req.header("x-forwarded-for")||W.req.header("x-real-ip")||"unknown"}}=$,X=new Map,Y=setInterval(()=>{let W=Date.now();for(let[G,q]of X.entries())if(W>q.resetTime)X.delete(G)},H);if(typeof process<"u"&&process.on)process.on("exit",()=>clearInterval(Y));return async(W,G)=>{let q=Q(W),U=Date.now(),B=X.get(q);if(!B||U>B.resetTime)X.set(q,{count:1,resetTime:U+H}),W.header("X-RateLimit-Limit",J.toString()),W.header("X-RateLimit-Remaining",(J-1).toString()),W.header("X-RateLimit-Reset",new Date(U+H).toISOString()),await G();else if(B.count<J)B.count++,W.header("X-RateLimit-Limit",J.toString()),W.header("X-RateLimit-Remaining",(J-B.count).toString()),W.header("X-RateLimit-Reset",new Date(B.resetTime).toISOString()),await G();else{let w=Math.ceil((B.resetTime-U)/1000);return W.header("X-RateLimit-Limit",J.toString()),W.header("X-RateLimit-Remaining","0"),W.header("X-RateLimit-Reset",new Date(B.resetTime).toISOString()),W.header("Retry-After",w.toString()),W.json({error:"Too Many Requests",message:`Rate limit exceeded. Please try again in ${w} seconds.`,retryAfter:w},429)}}}function A4($){let{threshold:H=1024,level:J=6}=$||{};return async(Q,X)=>{await X();let Y=Q.res;if(!Y)return;let W=Y.headers.get("content-type")||"",G=Y.headers.get("content-length"),q=Q.req.header("accept-encoding")||"";if(!["text/","application/json","application/javascript","application/xml","application/x-www-form-urlencoded"].some((D)=>W.toLowerCase().includes(D)))return;if(G&&parseInt(G)<H)return;if(Y.headers.get("content-encoding"))return;let w=await Y.arrayBuffer();if(w.byteLength<H)return;let _=null,V=null;if(q.includes("br")&&typeof CompressionStream<"u")try{let D=new CompressionStream("deflate"),A=D.writable.getWriter();A.write(new Uint8Array(w)),A.close();let E=D.readable.getReader(),Z=[];while(!0){let{done:v,value:l}=await E.read();if(v)break;Z.push(l)}let M=Z.reduce((v,l)=>v+l.length,0),L=new Uint8Array(M),b=0;for(let v of Z)L.set(v,b),b+=v.length;_=L,V="deflate"}catch(D){_=null}if(!_&&q.includes("gzip")&&typeof CompressionStream<"u")try{let D=new CompressionStream("gzip"),A=D.writable.getWriter();A.write(new Uint8Array(w)),A.close();let E=D.readable.getReader(),Z=[];while(!0){let{done:v,value:l}=await E.read();if(v)break;Z.push(l)}let M=Z.reduce((v,l)=>v+l.length,0),L=new Uint8Array(M),b=0;for(let v of Z)L.set(v,b),b+=v.length;_=L,V="gzip"}catch(D){_=null}if(_&&V&&_.byteLength<w.byteLength){let D=new Headers(Y.headers);return D.set("content-encoding",V),D.set("content-length",_.byteLength.toString()),D.delete("content-length"),new Response(_,{status:Y.status,statusText:Y.statusText,headers:D})}}}var Q5,QX;function sA(){if(!Q5)Q5=NJ(),QX=JX();return{pino:Q5,pinoPretty:QX}}class XX{logger;constructor($){let{pino:H}=sA(),J=!0,Q=$?.pretty!==void 0?$.pretty:!0;this.logger=H({level:$?.level||"debug",transport:Q?{target:"pino-pretty",options:{colorize:!0,translateTime:"SYS:HH:MM:ss",ignore:"pid,hostname",singleLine:!1}}:void 0})}trace($,H){this.logger.trace(H||{},$)}debug($,H){this.logger.debug(H||{},$)}info($,H){this.logger.info(H||{},$)}warn($,H){this.logger.warn(H||{},$)}error($,H,J){this.logger.error({err:H,...J},$)}fatal($,H,J){this.logger.fatal({err:H,...J},$)}child($){return new X5(this.logger.child($))}}class X5{logger;constructor($){this.logger=$}trace($,H){this.logger.trace(H||{},$)}debug($,H){this.logger.debug(H||{},$)}info($,H){this.logger.info(H||{},$)}warn($,H){this.logger.warn(H||{},$)}error($,H,J){this.logger.error({err:H,...J},$)}fatal($,H,J){this.logger.fatal({err:H,...J},$)}child($){return new X5(this.logger.child($))}}function Y5($){return new XX($)}var T4=null;function oA($){return T4=Y5($),T4}function I0(){if(!T4)T4=Y5({pretty:!0,level:"debug"});return T4}function o0($){return I0().child($)}function rA(){return async($,H)=>{let J=o0({context:"request",method:$.req.method,path:$.req.path,ip:$.req.header("x-forwarded-for")||$.req.header("x-real-ip")||"unknown"}),Q=Date.now();J.info("Incoming request");try{await H();let X=Date.now()-Q;J.info("Request completed",{status:$.res.status,duration:`${X}ms`})}catch(X){let Y=Date.now()-Q;throw J.error("Request failed",X,{status:X.status||500,duration:`${Y}ms`}),X}}}function aA(){return async($,H)=>{try{await H()}catch(J){throw o0({context:"error"}).error("Unhandled error",J,{method:$.req.method,path:$.req.path,query:$.req.query(),headers:Object.fromEntries(new Map($.req.raw.headers))}),J}}}function W5($={}){let{timeout:H,logging:J=!0,requestIdGenerator:Q,logHeaders:X=[]}=$;return async(Y,W)=>{let G=Q?.()||Y.req.header("x-request-id")||void 0,q=R4(Y,{requestId:G,timeout:H}),U=J?I0().child({requestId:q.requestId}):null;if(U){let B={method:Y.req.method,path:Y.req.path,url:Y.req.url};if(X.length>0){B.headers={};for(let w of X){let _=Y.req.header(w);if(_)B.headers[w]=_}}U.info("Request started",B)}try{if(Y.header("x-request-id",q.requestId),await W(),U){let B=E4(Y);U.info("Request completed",{status:Y.res.status,duration:`${B}ms`})}}catch(B){if(U){let w=E4(Y);U.error("Request failed",B,{duration:`${w}ms`})}throw B}finally{j4(Y)}}}function G5(){return async($,H)=>{let J=$.req.header("x-request-id")||R4($).requestId;$.header("x-request-id",J);try{await H()}finally{j4($)}}}f4();function F5($){let{ttl:H,key:J,prefix:Q,includeQuery:X=!1,varyByHeaders:Y,condition:W,store:G,onlySuccess:q=!0}=$,U=r0(H);return async(B,w)=>{let _=B.req.method,V=B.req.path,D=B.req.param(),A=X?B.req.query():void 0,E="";if(Y&&Y.length>0)E=`:${Y.map((l)=>`${l}:${B.req.header(l)||""}`).join("|")}`;let Z=f1.generateKey(_,V,D,A,{key:J,prefix:Q,includeQuery:X})+E,M=G||f1.getDefaultStore(),L=await M.get(Z);if(L!==null)return B.header("X-Cache","HIT"),B.json(L);B.header("X-Cache","MISS"),await w();let b=B.res;if(q&&b.status>=300)return;try{let l=await b.clone().json();if(W&&!W(l))return;await M.set(Z,l,U)}catch{}}}function z5($,H){let J=Array.isArray($)?$:[$];return async(Q,X)=>{await X();let Y=H||f1.getDefaultStore();for(let W of J){let G=W,q=Q.req.param();if(q)for(let[U,B]of Object.entries(q))G=G.replace(`{${U}}`,String(B));await Y.deletePattern(G)}}}var NE={};L1(NE,{zodToJsonSchema:()=>V2,ZodToJsonSchemaConverter:()=>O0,OpenAPIGenerator:()=>J$});module.exports=l1(NE);var WX=Symbol("Let zodToJsonSchema decide on which parser to use");var YX={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},GX=($)=>typeof $==="string"?{...YX,name:$}:{...YX,...$};var qX=($)=>{let H=GX($),J=H.name!==void 0?[...H.basePath,H.definitionPath,H.name]:H.basePath;return{...H,flags:{hasReferencedOpenAiAnyType:!1},currentPath:J,propertyPath:void 0,seen:new Map(Object.entries(H.definitions).map(([Q,X])=>[X._def,{def:X._def,path:[...H.basePath,H.definitionPath,Q],jsonSchema:void 0}]))}};function N5($,H,J,Q){if(!Q?.errorMessages)return;if(J)$.errorMessage={...$.errorMessage,[H]:J}}function Y1($,H,J,Q,X){$[H]=J,N5($,H,Q,X)}var X2=($,H)=>{let J=0;for(;J<$.length&&J<H.length;J++)if($[J]!==H[J])break;return[($.length-J).toString(),...H.slice(J)].join("/")};var R={};L1(R,{void:()=>hR,util:()=>H1,unknown:()=>xR,union:()=>uR,undefined:()=>TR,tuple:()=>cR,transformer:()=>eR,symbol:()=>IR,string:()=>NX,strictObject:()=>yR,setErrorMap:()=>HR,set:()=>nR,record:()=>lR,quotelessJson:()=>eA,promise:()=>tR,preprocess:()=>JE,pipeline:()=>QE,ostring:()=>XE,optional:()=>$E,onumber:()=>YE,oboolean:()=>WE,objectUtil:()=>A5,object:()=>gR,number:()=>AX,nullable:()=>HE,null:()=>bR,never:()=>kR,nativeEnum:()=>aR,nan:()=>CR,map:()=>pR,makeIssue:()=>x4,literal:()=>oR,lazy:()=>sR,late:()=>MR,isValid:()=>T0,isDirty:()=>W2,isAsync:()=>K$,isAborted:()=>Y2,intersection:()=>dR,instanceof:()=>SR,getParsedType:()=>B0,getErrorMap:()=>P$,function:()=>iR,enum:()=>rR,effect:()=>eR,discriminatedUnion:()=>mR,defaultErrorMap:()=>R0,datetimeRegex:()=>_X,date:()=>KR,custom:()=>zX,coerce:()=>GE,boolean:()=>RX,bigint:()=>PR,array:()=>vR,any:()=>fR,addIssueToContext:()=>T,ZodVoid:()=>h4,ZodUnknown:()=>b0,ZodUnion:()=>k$,ZodUndefined:()=>f$,ZodType:()=>e,ZodTuple:()=>D0,ZodTransformer:()=>a1,ZodSymbol:()=>k4,ZodString:()=>i1,ZodSet:()=>$$,ZodSchema:()=>e,ZodRecord:()=>v4,ZodReadonly:()=>d$,ZodPromise:()=>H$,ZodPipeline:()=>u4,ZodParsedType:()=>P,ZodOptional:()=>o1,ZodObject:()=>D1,ZodNumber:()=>f0,ZodNullable:()=>j0,ZodNull:()=>x$,ZodNever:()=>w0,ZodNativeEnum:()=>y$,ZodNaN:()=>y4,ZodMap:()=>g4,ZodLiteral:()=>g$,ZodLazy:()=>v$,ZodIssueCode:()=>S,ZodIntersection:()=>h$,ZodFunction:()=>T$,ZodFirstPartyTypeKind:()=>C,ZodError:()=>j1,ZodEnum:()=>k0,ZodEffects:()=>a1,ZodDiscriminatedUnion:()=>G2,ZodDefault:()=>u$,ZodDate:()=>t0,ZodCatch:()=>m$,ZodBranded:()=>q2,ZodBoolean:()=>b$,ZodBigInt:()=>x0,ZodArray:()=>s1,ZodAny:()=>e0,Schema:()=>e,ParseStatus:()=>O1,OK:()=>M1,NEVER:()=>qE,INVALID:()=>p,EMPTY_PATH:()=>JR,DIRTY:()=>a0,BRAND:()=>LR});var H1;(function($){$.assertEqual=(X)=>{};function H(X){}$.assertIs=H;function J(X){throw Error()}$.assertNever=J,$.arrayToEnum=(X)=>{let Y={};for(let W of X)Y[W]=W;return Y},$.getValidEnumValues=(X)=>{let Y=$.objectKeys(X).filter((G)=>typeof X[X[G]]!=="number"),W={};for(let G of Y)W[G]=X[G];return $.objectValues(W)},$.objectValues=(X)=>{return $.objectKeys(X).map(function(Y){return X[Y]})},$.objectKeys=typeof Object.keys==="function"?(X)=>Object.keys(X):(X)=>{let Y=[];for(let W in X)if(Object.prototype.hasOwnProperty.call(X,W))Y.push(W);return Y},$.find=(X,Y)=>{for(let W of X)if(Y(W))return W;return},$.isInteger=typeof Number.isInteger==="function"?(X)=>Number.isInteger(X):(X)=>typeof X==="number"&&Number.isFinite(X)&&Math.floor(X)===X;function Q(X,Y=" | "){return X.map((W)=>typeof W==="string"?`'${W}'`:W).join(Y)}$.joinValues=Q,$.jsonStringifyReplacer=(X,Y)=>{if(typeof Y==="bigint")return Y.toString();return Y}})(H1||(H1={}));var A5;(function($){$.mergeShapes=(H,J)=>{return{...H,...J}}})(A5||(A5={}));var P=H1.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),B0=($)=>{switch(typeof $){case"undefined":return P.undefined;case"string":return P.string;case"number":return Number.isNaN($)?P.nan:P.number;case"boolean":return P.boolean;case"function":return P.function;case"bigint":return P.bigint;case"symbol":return P.symbol;case"object":if(Array.isArray($))return P.array;if($===null)return P.null;if($.then&&typeof $.then==="function"&&$.catch&&typeof $.catch==="function")return P.promise;if(typeof Map<"u"&&$ instanceof Map)return P.map;if(typeof Set<"u"&&$ instanceof Set)return P.set;if(typeof Date<"u"&&$ instanceof Date)return P.date;return P.object;default:return P.unknown}};var S=H1.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),eA=($)=>{return JSON.stringify($,null,2).replace(/"([^"]+)":/g,"$1:")};class j1 extends Error{get errors(){return this.issues}constructor($){super();this.issues=[],this.addIssue=(J)=>{this.issues=[...this.issues,J]},this.addIssues=(J=[])=>{this.issues=[...this.issues,...J]};let H=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,H);else this.__proto__=H;this.name="ZodError",this.issues=$}format($){let H=$||function(X){return X.message},J={_errors:[]},Q=(X)=>{for(let Y of X.issues)if(Y.code==="invalid_union")Y.unionErrors.map(Q);else if(Y.code==="invalid_return_type")Q(Y.returnTypeError);else if(Y.code==="invalid_arguments")Q(Y.argumentsError);else if(Y.path.length===0)J._errors.push(H(Y));else{let W=J,G=0;while(G<Y.path.length){let q=Y.path[G];if(G!==Y.path.length-1)W[q]=W[q]||{_errors:[]};else W[q]=W[q]||{_errors:[]},W[q]._errors.push(H(Y));W=W[q],G++}}};return Q(this),J}static assert($){if(!($ instanceof j1))throw Error(`Not a ZodError: ${$}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,H1.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten($=(H)=>H.message){let H={},J=[];for(let Q of this.issues)if(Q.path.length>0){let X=Q.path[0];H[X]=H[X]||[],H[X].push($(Q))}else J.push($(Q));return{formErrors:J,fieldErrors:H}}get formErrors(){return this.flatten()}}j1.create=($)=>{return new j1($)};var $R=($,H)=>{let J;switch($.code){case S.invalid_type:if($.received===P.undefined)J="Required";else J=`Expected ${$.expected}, received ${$.received}`;break;case S.invalid_literal:J=`Invalid literal value, expected ${JSON.stringify($.expected,H1.jsonStringifyReplacer)}`;break;case S.unrecognized_keys:J=`Unrecognized key(s) in object: ${H1.joinValues($.keys,", ")}`;break;case S.invalid_union:J="Invalid input";break;case S.invalid_union_discriminator:J=`Invalid discriminator value. Expected ${H1.joinValues($.options)}`;break;case S.invalid_enum_value:J=`Invalid enum value. Expected ${H1.joinValues($.options)}, received '${$.received}'`;break;case S.invalid_arguments:J="Invalid function arguments";break;case S.invalid_return_type:J="Invalid function return type";break;case S.invalid_date:J="Invalid date";break;case S.invalid_string:if(typeof $.validation==="object")if("includes"in $.validation){if(J=`Invalid input: must include "${$.validation.includes}"`,typeof $.validation.position==="number")J=`${J} at one or more positions greater than or equal to ${$.validation.position}`}else if("startsWith"in $.validation)J=`Invalid input: must start with "${$.validation.startsWith}"`;else if("endsWith"in $.validation)J=`Invalid input: must end with "${$.validation.endsWith}"`;else H1.assertNever($.validation);else if($.validation!=="regex")J=`Invalid ${$.validation}`;else J="Invalid";break;case S.too_small:if($.type==="array")J=`Array must contain ${$.exact?"exactly":$.inclusive?"at least":"more than"} ${$.minimum} element(s)`;else if($.type==="string")J=`String must contain ${$.exact?"exactly":$.inclusive?"at least":"over"} ${$.minimum} character(s)`;else if($.type==="number")J=`Number must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${$.minimum}`;else if($.type==="bigint")J=`Number must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${$.minimum}`;else if($.type==="date")J=`Date must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${new Date(Number($.minimum))}`;else J="Invalid input";break;case S.too_big:if($.type==="array")J=`Array must contain ${$.exact?"exactly":$.inclusive?"at most":"less than"} ${$.maximum} element(s)`;else if($.type==="string")J=`String must contain ${$.exact?"exactly":$.inclusive?"at most":"under"} ${$.maximum} character(s)`;else if($.type==="number")J=`Number must be ${$.exact?"exactly":$.inclusive?"less than or equal to":"less than"} ${$.maximum}`;else if($.type==="bigint")J=`BigInt must be ${$.exact?"exactly":$.inclusive?"less than or equal to":"less than"} ${$.maximum}`;else if($.type==="date")J=`Date must be ${$.exact?"exactly":$.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number($.maximum))}`;else J="Invalid input";break;case S.custom:J="Invalid input";break;case S.invalid_intersection_types:J="Intersection results could not be merged";break;case S.not_multiple_of:J=`Number must be a multiple of ${$.multipleOf}`;break;case S.not_finite:J="Number must be finite";break;default:J=H.defaultError,H1.assertNever($)}return{message:J}},R0=$R;var UX=R0;function HR($){UX=$}function P$(){return UX}var x4=($)=>{let{data:H,path:J,errorMaps:Q,issueData:X}=$,Y=[...J,...X.path||[]],W={...X,path:Y};if(X.message!==void 0)return{...X,path:Y,message:X.message};let G="",q=Q.filter((U)=>!!U).slice().reverse();for(let U of q)G=U(W,{data:H,defaultError:G}).message;return{...X,path:Y,message:G}},JR=[];function T($,H){let J=P$(),Q=x4({issueData:H,data:$.data,path:$.path,errorMaps:[$.common.contextualErrorMap,$.schemaErrorMap,J,J===R0?void 0:R0].filter((X)=>!!X)});$.common.issues.push(Q)}class O1{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray($,H){let J=[];for(let Q of H){if(Q.status==="aborted")return p;if(Q.status==="dirty")$.dirty();J.push(Q.value)}return{status:$.value,value:J}}static async mergeObjectAsync($,H){let J=[];for(let Q of H){let X=await Q.key,Y=await Q.value;J.push({key:X,value:Y})}return O1.mergeObjectSync($,J)}static mergeObjectSync($,H){let J={};for(let Q of H){let{key:X,value:Y}=Q;if(X.status==="aborted")return p;if(Y.status==="aborted")return p;if(X.status==="dirty")$.dirty();if(Y.status==="dirty")$.dirty();if(X.value!=="__proto__"&&(typeof Y.value<"u"||Q.alwaysSet))J[X.value]=Y.value}return{status:$.value,value:J}}}var p=Object.freeze({status:"aborted"}),a0=($)=>({status:"dirty",value:$}),M1=($)=>({status:"valid",value:$}),Y2=($)=>$.status==="aborted",W2=($)=>$.status==="dirty",T0=($)=>$.status==="valid",K$=($)=>typeof Promise<"u"&&$ instanceof Promise;var y;(function($){$.errToObj=(H)=>typeof H==="string"?{message:H}:H||{},$.toString=(H)=>typeof H==="string"?H:H?.message})(y||(y={}));class r1{constructor($,H,J,Q){this._cachedPath=[],this.parent=$,this.data=H,this._path=J,this._key=Q}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var BX=($,H)=>{if(T0(H))return{success:!0,data:H.value};else{if(!$.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let J=new j1($.common.issues);return this._error=J,this._error}}}};function a($){if(!$)return{};let{errorMap:H,invalid_type_error:J,required_error:Q,description:X}=$;if(H&&(J||Q))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(H)return{errorMap:H,description:X};return{errorMap:(W,G)=>{let{message:q}=$;if(W.code==="invalid_enum_value")return{message:q??G.defaultError};if(typeof G.data>"u")return{message:q??Q??G.defaultError};if(W.code!=="invalid_type")return{message:G.defaultError};return{message:q??J??G.defaultError}},description:X}}class e{get description(){return this._def.description}_getType($){return B0($.data)}_getOrReturnCtx($,H){return H||{common:$.parent.common,data:$.data,parsedType:B0($.data),schemaErrorMap:this._def.errorMap,path:$.path,parent:$.parent}}_processInputParams($){return{status:new O1,ctx:{common:$.parent.common,data:$.data,parsedType:B0($.data),schemaErrorMap:this._def.errorMap,path:$.path,parent:$.parent}}}_parseSync($){let H=this._parse($);if(K$(H))throw Error("Synchronous parse encountered promise.");return H}_parseAsync($){let H=this._parse($);return Promise.resolve(H)}parse($,H){let J=this.safeParse($,H);if(J.success)return J.data;throw J.error}safeParse($,H){let J={common:{issues:[],async:H?.async??!1,contextualErrorMap:H?.errorMap},path:H?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:B0($)},Q=this._parseSync({data:$,path:J.path,parent:J});return BX(J,Q)}"~validate"($){let H={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:B0($)};if(!this["~standard"].async)try{let J=this._parseSync({data:$,path:[],parent:H});return T0(J)?{value:J.value}:{issues:H.common.issues}}catch(J){if(J?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;H.common={issues:[],async:!0}}return this._parseAsync({data:$,path:[],parent:H}).then((J)=>T0(J)?{value:J.value}:{issues:H.common.issues})}async parseAsync($,H){let J=await this.safeParseAsync($,H);if(J.success)return J.data;throw J.error}async safeParseAsync($,H){let J={common:{issues:[],contextualErrorMap:H?.errorMap,async:!0},path:H?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:B0($)},Q=this._parse({data:$,path:J.path,parent:J}),X=await(K$(Q)?Q:Promise.resolve(Q));return BX(J,X)}refine($,H){let J=(Q)=>{if(typeof H==="string"||typeof H>"u")return{message:H};else if(typeof H==="function")return H(Q);else return H};return this._refinement((Q,X)=>{let Y=$(Q),W=()=>X.addIssue({code:S.custom,...J(Q)});if(typeof Promise<"u"&&Y instanceof Promise)return Y.then((G)=>{if(!G)return W(),!1;else return!0});if(!Y)return W(),!1;else return!0})}refinement($,H){return this._refinement((J,Q)=>{if(!$(J))return Q.addIssue(typeof H==="function"?H(J,Q):H),!1;else return!0})}_refinement($){return new a1({schema:this,typeName:C.ZodEffects,effect:{type:"refinement",refinement:$}})}superRefine($){return this._refinement($)}constructor($){this.spa=this.safeParseAsync,this._def=$,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(H)=>this["~validate"](H)}}optional(){return o1.create(this,this._def)}nullable(){return j0.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return s1.create(this)}promise(){return H$.create(this,this._def)}or($){return k$.create([this,$],this._def)}and($){return h$.create(this,$,this._def)}transform($){return new a1({...a(this._def),schema:this,typeName:C.ZodEffects,effect:{type:"transform",transform:$}})}default($){let H=typeof $==="function"?$:()=>$;return new u$({...a(this._def),innerType:this,defaultValue:H,typeName:C.ZodDefault})}brand(){return new q2({typeName:C.ZodBranded,type:this,...a(this._def)})}catch($){let H=typeof $==="function"?$:()=>$;return new m$({...a(this._def),innerType:this,catchValue:H,typeName:C.ZodCatch})}describe($){return new this.constructor({...this._def,description:$})}pipe($){return u4.create(this,$)}readonly(){return d$.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var QR=/^c[^\s-]{8,}$/i,XR=/^[0-9a-z]+$/,YR=/^[0-9A-HJKMNP-TV-Z]{26}$/i,WR=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,GR=/^[a-z0-9_-]{21}$/i,qR=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,UR=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,BR=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,wR="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",R5,DR=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,VR=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,_R=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,FR=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,zR=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,NR=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,DX="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",AR=new RegExp(`^${DX}$`);function VX($){let H="[0-5]\\d";if($.precision)H=`${H}\\.\\d{${$.precision}}`;else if($.precision==null)H=`${H}(\\.\\d+)?`;let J=$.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${H})${J}`}function RR($){return new RegExp(`^${VX($)}$`)}function _X($){let H=`${DX}T${VX($)}`,J=[];if(J.push($.local?"Z?":"Z"),$.offset)J.push("([+-]\\d{2}:?\\d{2})");return H=`${H}(${J.join("|")})`,new RegExp(`^${H}$`)}function ER($,H){if((H==="v4"||!H)&&DR.test($))return!0;if((H==="v6"||!H)&&_R.test($))return!0;return!1}function jR($,H){if(!qR.test($))return!1;try{let[J]=$.split(".");if(!J)return!1;let Q=J.replace(/-/g,"+").replace(/_/g,"/").padEnd(J.length+(4-J.length%4)%4,"="),X=JSON.parse(atob(Q));if(typeof X!=="object"||X===null)return!1;if("typ"in X&&X?.typ!=="JWT")return!1;if(!X.alg)return!1;if(H&&X.alg!==H)return!1;return!0}catch{return!1}}function OR($,H){if((H==="v4"||!H)&&VR.test($))return!0;if((H==="v6"||!H)&&FR.test($))return!0;return!1}class i1 extends e{_parse($){if(this._def.coerce)$.data=String($.data);if(this._getType($)!==P.string){let X=this._getOrReturnCtx($);return T(X,{code:S.invalid_type,expected:P.string,received:X.parsedType}),p}let J=new O1,Q=void 0;for(let X of this._def.checks)if(X.kind==="min"){if($.data.length<X.value)Q=this._getOrReturnCtx($,Q),T(Q,{code:S.too_small,minimum:X.value,type:"string",inclusive:!0,exact:!1,message:X.message}),J.dirty()}else if(X.kind==="max"){if($.data.length>X.value)Q=this._getOrReturnCtx($,Q),T(Q,{code:S.too_big,maximum:X.value,type:"string",inclusive:!0,exact:!1,message:X.message}),J.dirty()}else if(X.kind==="length"){let Y=$.data.length>X.value,W=$.data.length<X.value;if(Y||W){if(Q=this._getOrReturnCtx($,Q),Y)T(Q,{code:S.too_big,maximum:X.value,type:"string",inclusive:!0,exact:!0,message:X.message});else if(W)T(Q,{code:S.too_small,minimum:X.value,type:"string",inclusive:!0,exact:!0,message:X.message});J.dirty()}}else if(X.kind==="email"){if(!BR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"email",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="emoji"){if(!R5)R5=new RegExp(wR,"u");if(!R5.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"emoji",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="uuid"){if(!WR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"uuid",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="nanoid"){if(!GR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"nanoid",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="cuid"){if(!QR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"cuid",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="cuid2"){if(!XR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"cuid2",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="ulid"){if(!YR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"ulid",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="url")try{new URL($.data)}catch{Q=this._getOrReturnCtx($,Q),T(Q,{validation:"url",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="regex"){if(X.regex.lastIndex=0,!X.regex.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"regex",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="trim")$.data=$.data.trim();else if(X.kind==="includes"){if(!$.data.includes(X.value,X.position))Q=this._getOrReturnCtx($,Q),T(Q,{code:S.invalid_string,validation:{includes:X.value,position:X.position},message:X.message}),J.dirty()}else if(X.kind==="toLowerCase")$.data=$.data.toLowerCase();else if(X.kind==="toUpperCase")$.data=$.data.toUpperCase();else if(X.kind==="startsWith"){if(!$.data.startsWith(X.value))Q=this._getOrReturnCtx($,Q),T(Q,{code:S.invalid_string,validation:{startsWith:X.value},message:X.message}),J.dirty()}else if(X.kind==="endsWith"){if(!$.data.endsWith(X.value))Q=this._getOrReturnCtx($,Q),T(Q,{code:S.invalid_string,validation:{endsWith:X.value},message:X.message}),J.dirty()}else if(X.kind==="datetime"){if(!_X(X).test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{code:S.invalid_string,validation:"datetime",message:X.message}),J.dirty()}else if(X.kind==="date"){if(!AR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{code:S.invalid_string,validation:"date",message:X.message}),J.dirty()}else if(X.kind==="time"){if(!RR(X).test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{code:S.invalid_string,validation:"time",message:X.message}),J.dirty()}else if(X.kind==="duration"){if(!UR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"duration",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="ip"){if(!ER($.data,X.version))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"ip",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="jwt"){if(!jR($.data,X.alg))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"jwt",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="cidr"){if(!OR($.data,X.version))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"cidr",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="base64"){if(!zR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"base64",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="base64url"){if(!NR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"base64url",code:S.invalid_string,message:X.message}),J.dirty()}else H1.assertNever(X);return{status:J.value,value:$.data}}_regex($,H,J){return this.refinement((Q)=>$.test(Q),{validation:H,code:S.invalid_string,...y.errToObj(J)})}_addCheck($){return new i1({...this._def,checks:[...this._def.checks,$]})}email($){return this._addCheck({kind:"email",...y.errToObj($)})}url($){return this._addCheck({kind:"url",...y.errToObj($)})}emoji($){return this._addCheck({kind:"emoji",...y.errToObj($)})}uuid($){return this._addCheck({kind:"uuid",...y.errToObj($)})}nanoid($){return this._addCheck({kind:"nanoid",...y.errToObj($)})}cuid($){return this._addCheck({kind:"cuid",...y.errToObj($)})}cuid2($){return this._addCheck({kind:"cuid2",...y.errToObj($)})}ulid($){return this._addCheck({kind:"ulid",...y.errToObj($)})}base64($){return this._addCheck({kind:"base64",...y.errToObj($)})}base64url($){return this._addCheck({kind:"base64url",...y.errToObj($)})}jwt($){return this._addCheck({kind:"jwt",...y.errToObj($)})}ip($){return this._addCheck({kind:"ip",...y.errToObj($)})}cidr($){return this._addCheck({kind:"cidr",...y.errToObj($)})}datetime($){if(typeof $==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:$});return this._addCheck({kind:"datetime",precision:typeof $?.precision>"u"?null:$?.precision,offset:$?.offset??!1,local:$?.local??!1,...y.errToObj($?.message)})}date($){return this._addCheck({kind:"date",message:$})}time($){if(typeof $==="string")return this._addCheck({kind:"time",precision:null,message:$});return this._addCheck({kind:"time",precision:typeof $?.precision>"u"?null:$?.precision,...y.errToObj($?.message)})}duration($){return this._addCheck({kind:"duration",...y.errToObj($)})}regex($,H){return this._addCheck({kind:"regex",regex:$,...y.errToObj(H)})}includes($,H){return this._addCheck({kind:"includes",value:$,position:H?.position,...y.errToObj(H?.message)})}startsWith($,H){return this._addCheck({kind:"startsWith",value:$,...y.errToObj(H)})}endsWith($,H){return this._addCheck({kind:"endsWith",value:$,...y.errToObj(H)})}min($,H){return this._addCheck({kind:"min",value:$,...y.errToObj(H)})}max($,H){return this._addCheck({kind:"max",value:$,...y.errToObj(H)})}length($,H){return this._addCheck({kind:"length",value:$,...y.errToObj(H)})}nonempty($){return this.min(1,y.errToObj($))}trim(){return new i1({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new i1({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new i1({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(($)=>$.kind==="datetime")}get isDate(){return!!this._def.checks.find(($)=>$.kind==="date")}get isTime(){return!!this._def.checks.find(($)=>$.kind==="time")}get isDuration(){return!!this._def.checks.find(($)=>$.kind==="duration")}get isEmail(){return!!this._def.checks.find(($)=>$.kind==="email")}get isURL(){return!!this._def.checks.find(($)=>$.kind==="url")}get isEmoji(){return!!this._def.checks.find(($)=>$.kind==="emoji")}get isUUID(){return!!this._def.checks.find(($)=>$.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(($)=>$.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(($)=>$.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(($)=>$.kind==="cuid2")}get isULID(){return!!this._def.checks.find(($)=>$.kind==="ulid")}get isIP(){return!!this._def.checks.find(($)=>$.kind==="ip")}get isCIDR(){return!!this._def.checks.find(($)=>$.kind==="cidr")}get isBase64(){return!!this._def.checks.find(($)=>$.kind==="base64")}get isBase64url(){return!!this._def.checks.find(($)=>$.kind==="base64url")}get minLength(){let $=null;for(let H of this._def.checks)if(H.kind==="min"){if($===null||H.value>$)$=H.value}return $}get maxLength(){let $=null;for(let H of this._def.checks)if(H.kind==="max"){if($===null||H.value<$)$=H.value}return $}}i1.create=($)=>{return new i1({checks:[],typeName:C.ZodString,coerce:$?.coerce??!1,...a($)})};function ZR($,H){let J=($.toString().split(".")[1]||"").length,Q=(H.toString().split(".")[1]||"").length,X=J>Q?J:Q,Y=Number.parseInt($.toFixed(X).replace(".","")),W=Number.parseInt(H.toFixed(X).replace(".",""));return Y%W/10**X}class f0 extends e{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse($){if(this._def.coerce)$.data=Number($.data);if(this._getType($)!==P.number){let X=this._getOrReturnCtx($);return T(X,{code:S.invalid_type,expected:P.number,received:X.parsedType}),p}let J=void 0,Q=new O1;for(let X of this._def.checks)if(X.kind==="int"){if(!H1.isInteger($.data))J=this._getOrReturnCtx($,J),T(J,{code:S.invalid_type,expected:"integer",received:"float",message:X.message}),Q.dirty()}else if(X.kind==="min"){if(X.inclusive?$.data<X.value:$.data<=X.value)J=this._getOrReturnCtx($,J),T(J,{code:S.too_small,minimum:X.value,type:"number",inclusive:X.inclusive,exact:!1,message:X.message}),Q.dirty()}else if(X.kind==="max"){if(X.inclusive?$.data>X.value:$.data>=X.value)J=this._getOrReturnCtx($,J),T(J,{code:S.too_big,maximum:X.value,type:"number",inclusive:X.inclusive,exact:!1,message:X.message}),Q.dirty()}else if(X.kind==="multipleOf"){if(ZR($.data,X.value)!==0)J=this._getOrReturnCtx($,J),T(J,{code:S.not_multiple_of,multipleOf:X.value,message:X.message}),Q.dirty()}else if(X.kind==="finite"){if(!Number.isFinite($.data))J=this._getOrReturnCtx($,J),T(J,{code:S.not_finite,message:X.message}),Q.dirty()}else H1.assertNever(X);return{status:Q.value,value:$.data}}gte($,H){return this.setLimit("min",$,!0,y.toString(H))}gt($,H){return this.setLimit("min",$,!1,y.toString(H))}lte($,H){return this.setLimit("max",$,!0,y.toString(H))}lt($,H){return this.setLimit("max",$,!1,y.toString(H))}setLimit($,H,J,Q){return new f0({...this._def,checks:[...this._def.checks,{kind:$,value:H,inclusive:J,message:y.toString(Q)}]})}_addCheck($){return new f0({...this._def,checks:[...this._def.checks,$]})}int($){return this._addCheck({kind:"int",message:y.toString($)})}positive($){return this._addCheck({kind:"min",value:0,inclusive:!1,message:y.toString($)})}negative($){return this._addCheck({kind:"max",value:0,inclusive:!1,message:y.toString($)})}nonpositive($){return this._addCheck({kind:"max",value:0,inclusive:!0,message:y.toString($)})}nonnegative($){return this._addCheck({kind:"min",value:0,inclusive:!0,message:y.toString($)})}multipleOf($,H){return this._addCheck({kind:"multipleOf",value:$,message:y.toString(H)})}finite($){return this._addCheck({kind:"finite",message:y.toString($)})}safe($){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:y.toString($)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:y.toString($)})}get minValue(){let $=null;for(let H of this._def.checks)if(H.kind==="min"){if($===null||H.value>$)$=H.value}return $}get maxValue(){let $=null;for(let H of this._def.checks)if(H.kind==="max"){if($===null||H.value<$)$=H.value}return $}get isInt(){return!!this._def.checks.find(($)=>$.kind==="int"||$.kind==="multipleOf"&&H1.isInteger($.value))}get isFinite(){let $=null,H=null;for(let J of this._def.checks)if(J.kind==="finite"||J.kind==="int"||J.kind==="multipleOf")return!0;else if(J.kind==="min"){if(H===null||J.value>H)H=J.value}else if(J.kind==="max"){if($===null||J.value<$)$=J.value}return Number.isFinite(H)&&Number.isFinite($)}}f0.create=($)=>{return new f0({checks:[],typeName:C.ZodNumber,coerce:$?.coerce||!1,...a($)})};class x0 extends e{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse($){if(this._def.coerce)try{$.data=BigInt($.data)}catch{return this._getInvalidInput($)}if(this._getType($)!==P.bigint)return this._getInvalidInput($);let J=void 0,Q=new O1;for(let X of this._def.checks)if(X.kind==="min"){if(X.inclusive?$.data<X.value:$.data<=X.value)J=this._getOrReturnCtx($,J),T(J,{code:S.too_small,type:"bigint",minimum:X.value,inclusive:X.inclusive,message:X.message}),Q.dirty()}else if(X.kind==="max"){if(X.inclusive?$.data>X.value:$.data>=X.value)J=this._getOrReturnCtx($,J),T(J,{code:S.too_big,type:"bigint",maximum:X.value,inclusive:X.inclusive,message:X.message}),Q.dirty()}else if(X.kind==="multipleOf"){if($.data%X.value!==BigInt(0))J=this._getOrReturnCtx($,J),T(J,{code:S.not_multiple_of,multipleOf:X.value,message:X.message}),Q.dirty()}else H1.assertNever(X);return{status:Q.value,value:$.data}}_getInvalidInput($){let H=this._getOrReturnCtx($);return T(H,{code:S.invalid_type,expected:P.bigint,received:H.parsedType}),p}gte($,H){return this.setLimit("min",$,!0,y.toString(H))}gt($,H){return this.setLimit("min",$,!1,y.toString(H))}lte($,H){return this.setLimit("max",$,!0,y.toString(H))}lt($,H){return this.setLimit("max",$,!1,y.toString(H))}setLimit($,H,J,Q){return new x0({...this._def,checks:[...this._def.checks,{kind:$,value:H,inclusive:J,message:y.toString(Q)}]})}_addCheck($){return new x0({...this._def,checks:[...this._def.checks,$]})}positive($){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:y.toString($)})}negative($){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:y.toString($)})}nonpositive($){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:y.toString($)})}nonnegative($){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:y.toString($)})}multipleOf($,H){return this._addCheck({kind:"multipleOf",value:$,message:y.toString(H)})}get minValue(){let $=null;for(let H of this._def.checks)if(H.kind==="min"){if($===null||H.value>$)$=H.value}return $}get maxValue(){let $=null;for(let H of this._def.checks)if(H.kind==="max"){if($===null||H.value<$)$=H.value}return $}}x0.create=($)=>{return new x0({checks:[],typeName:C.ZodBigInt,coerce:$?.coerce??!1,...a($)})};class b$ extends e{_parse($){if(this._def.coerce)$.data=Boolean($.data);if(this._getType($)!==P.boolean){let J=this._getOrReturnCtx($);return T(J,{code:S.invalid_type,expected:P.boolean,received:J.parsedType}),p}return M1($.data)}}b$.create=($)=>{return new b$({typeName:C.ZodBoolean,coerce:$?.coerce||!1,...a($)})};class t0 extends e{_parse($){if(this._def.coerce)$.data=new Date($.data);if(this._getType($)!==P.date){let X=this._getOrReturnCtx($);return T(X,{code:S.invalid_type,expected:P.date,received:X.parsedType}),p}if(Number.isNaN($.data.getTime())){let X=this._getOrReturnCtx($);return T(X,{code:S.invalid_date}),p}let J=new O1,Q=void 0;for(let X of this._def.checks)if(X.kind==="min"){if($.data.getTime()<X.value)Q=this._getOrReturnCtx($,Q),T(Q,{code:S.too_small,message:X.message,inclusive:!0,exact:!1,minimum:X.value,type:"date"}),J.dirty()}else if(X.kind==="max"){if($.data.getTime()>X.value)Q=this._getOrReturnCtx($,Q),T(Q,{code:S.too_big,message:X.message,inclusive:!0,exact:!1,maximum:X.value,type:"date"}),J.dirty()}else H1.assertNever(X);return{status:J.value,value:new Date($.data.getTime())}}_addCheck($){return new t0({...this._def,checks:[...this._def.checks,$]})}min($,H){return this._addCheck({kind:"min",value:$.getTime(),message:y.toString(H)})}max($,H){return this._addCheck({kind:"max",value:$.getTime(),message:y.toString(H)})}get minDate(){let $=null;for(let H of this._def.checks)if(H.kind==="min"){if($===null||H.value>$)$=H.value}return $!=null?new Date($):null}get maxDate(){let $=null;for(let H of this._def.checks)if(H.kind==="max"){if($===null||H.value<$)$=H.value}return $!=null?new Date($):null}}t0.create=($)=>{return new t0({checks:[],coerce:$?.coerce||!1,typeName:C.ZodDate,...a($)})};class k4 extends e{_parse($){if(this._getType($)!==P.symbol){let J=this._getOrReturnCtx($);return T(J,{code:S.invalid_type,expected:P.symbol,received:J.parsedType}),p}return M1($.data)}}k4.create=($)=>{return new k4({typeName:C.ZodSymbol,...a($)})};class f$ extends e{_parse($){if(this._getType($)!==P.undefined){let J=this._getOrReturnCtx($);return T(J,{code:S.invalid_type,expected:P.undefined,received:J.parsedType}),p}return M1($.data)}}f$.create=($)=>{return new f$({typeName:C.ZodUndefined,...a($)})};class x$ extends e{_parse($){if(this._getType($)!==P.null){let J=this._getOrReturnCtx($);return T(J,{code:S.invalid_type,expected:P.null,received:J.parsedType}),p}return M1($.data)}}x$.create=($)=>{return new x$({typeName:C.ZodNull,...a($)})};class e0 extends e{constructor(){super(...arguments);this._any=!0}_parse($){return M1($.data)}}e0.create=($)=>{return new e0({typeName:C.ZodAny,...a($)})};class b0 extends e{constructor(){super(...arguments);this._unknown=!0}_parse($){return M1($.data)}}b0.create=($)=>{return new b0({typeName:C.ZodUnknown,...a($)})};class w0 extends e{_parse($){let H=this._getOrReturnCtx($);return T(H,{code:S.invalid_type,expected:P.never,received:H.parsedType}),p}}w0.create=($)=>{return new w0({typeName:C.ZodNever,...a($)})};class h4 extends e{_parse($){if(this._getType($)!==P.undefined){let J=this._getOrReturnCtx($);return T(J,{code:S.invalid_type,expected:P.void,received:J.parsedType}),p}return M1($.data)}}h4.create=($)=>{return new h4({typeName:C.ZodVoid,...a($)})};class s1 extends e{_parse($){let{ctx:H,status:J}=this._processInputParams($),Q=this._def;if(H.parsedType!==P.array)return T(H,{code:S.invalid_type,expected:P.array,received:H.parsedType}),p;if(Q.exactLength!==null){let Y=H.data.length>Q.exactLength.value,W=H.data.length<Q.exactLength.value;if(Y||W)T(H,{code:Y?S.too_big:S.too_small,minimum:W?Q.exactLength.value:void 0,maximum:Y?Q.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:Q.exactLength.message}),J.dirty()}if(Q.minLength!==null){if(H.data.length<Q.minLength.value)T(H,{code:S.too_small,minimum:Q.minLength.value,type:"array",inclusive:!0,exact:!1,message:Q.minLength.message}),J.dirty()}if(Q.maxLength!==null){if(H.data.length>Q.maxLength.value)T(H,{code:S.too_big,maximum:Q.maxLength.value,type:"array",inclusive:!0,exact:!1,message:Q.maxLength.message}),J.dirty()}if(H.common.async)return Promise.all([...H.data].map((Y,W)=>{return Q.type._parseAsync(new r1(H,Y,H.path,W))})).then((Y)=>{return O1.mergeArray(J,Y)});let X=[...H.data].map((Y,W)=>{return Q.type._parseSync(new r1(H,Y,H.path,W))});return O1.mergeArray(J,X)}get element(){return this._def.type}min($,H){return new s1({...this._def,minLength:{value:$,message:y.toString(H)}})}max($,H){return new s1({...this._def,maxLength:{value:$,message:y.toString(H)}})}length($,H){return new s1({...this._def,exactLength:{value:$,message:y.toString(H)}})}nonempty($){return this.min(1,$)}}s1.create=($,H)=>{return new s1({type:$,minLength:null,maxLength:null,exactLength:null,typeName:C.ZodArray,...a(H)})};function I$($){if($ instanceof D1){let H={};for(let J in $.shape){let Q=$.shape[J];H[J]=o1.create(I$(Q))}return new D1({...$._def,shape:()=>H})}else if($ instanceof s1)return new s1({...$._def,type:I$($.element)});else if($ instanceof o1)return o1.create(I$($.unwrap()));else if($ instanceof j0)return j0.create(I$($.unwrap()));else if($ instanceof D0)return D0.create($.items.map((H)=>I$(H)));else return $}class D1 extends e{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let $=this._def.shape(),H=H1.objectKeys($);return this._cached={shape:$,keys:H},this._cached}_parse($){if(this._getType($)!==P.object){let q=this._getOrReturnCtx($);return T(q,{code:S.invalid_type,expected:P.object,received:q.parsedType}),p}let{status:J,ctx:Q}=this._processInputParams($),{shape:X,keys:Y}=this._getCached(),W=[];if(!(this._def.catchall instanceof w0&&this._def.unknownKeys==="strip")){for(let q in Q.data)if(!Y.includes(q))W.push(q)}let G=[];for(let q of Y){let U=X[q],B=Q.data[q];G.push({key:{status:"valid",value:q},value:U._parse(new r1(Q,B,Q.path,q)),alwaysSet:q in Q.data})}if(this._def.catchall instanceof w0){let q=this._def.unknownKeys;if(q==="passthrough")for(let U of W)G.push({key:{status:"valid",value:U},value:{status:"valid",value:Q.data[U]}});else if(q==="strict"){if(W.length>0)T(Q,{code:S.unrecognized_keys,keys:W}),J.dirty()}else if(q==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let q=this._def.catchall;for(let U of W){let B=Q.data[U];G.push({key:{status:"valid",value:U},value:q._parse(new r1(Q,B,Q.path,U)),alwaysSet:U in Q.data})}}if(Q.common.async)return Promise.resolve().then(async()=>{let q=[];for(let U of G){let B=await U.key,w=await U.value;q.push({key:B,value:w,alwaysSet:U.alwaysSet})}return q}).then((q)=>{return O1.mergeObjectSync(J,q)});else return O1.mergeObjectSync(J,G)}get shape(){return this._def.shape()}strict($){return y.errToObj,new D1({...this._def,unknownKeys:"strict",...$!==void 0?{errorMap:(H,J)=>{let Q=this._def.errorMap?.(H,J).message??J.defaultError;if(H.code==="unrecognized_keys")return{message:y.errToObj($).message??Q};return{message:Q}}}:{}})}strip(){return new D1({...this._def,unknownKeys:"strip"})}passthrough(){return new D1({...this._def,unknownKeys:"passthrough"})}extend($){return new D1({...this._def,shape:()=>({...this._def.shape(),...$})})}merge($){return new D1({unknownKeys:$._def.unknownKeys,catchall:$._def.catchall,shape:()=>({...this._def.shape(),...$._def.shape()}),typeName:C.ZodObject})}setKey($,H){return this.augment({[$]:H})}catchall($){return new D1({...this._def,catchall:$})}pick($){let H={};for(let J of H1.objectKeys($))if($[J]&&this.shape[J])H[J]=this.shape[J];return new D1({...this._def,shape:()=>H})}omit($){let H={};for(let J of H1.objectKeys(this.shape))if(!$[J])H[J]=this.shape[J];return new D1({...this._def,shape:()=>H})}deepPartial(){return I$(this)}partial($){let H={};for(let J of H1.objectKeys(this.shape)){let Q=this.shape[J];if($&&!$[J])H[J]=Q;else H[J]=Q.optional()}return new D1({...this._def,shape:()=>H})}required($){let H={};for(let J of H1.objectKeys(this.shape))if($&&!$[J])H[J]=this.shape[J];else{let X=this.shape[J];while(X instanceof o1)X=X._def.innerType;H[J]=X}return new D1({...this._def,shape:()=>H})}keyof(){return FX(H1.objectKeys(this.shape))}}D1.create=($,H)=>{return new D1({shape:()=>$,unknownKeys:"strip",catchall:w0.create(),typeName:C.ZodObject,...a(H)})};D1.strictCreate=($,H)=>{return new D1({shape:()=>$,unknownKeys:"strict",catchall:w0.create(),typeName:C.ZodObject,...a(H)})};D1.lazycreate=($,H)=>{return new D1({shape:$,unknownKeys:"strip",catchall:w0.create(),typeName:C.ZodObject,...a(H)})};class k$ extends e{_parse($){let{ctx:H}=this._processInputParams($),J=this._def.options;function Q(X){for(let W of X)if(W.result.status==="valid")return W.result;for(let W of X)if(W.result.status==="dirty")return H.common.issues.push(...W.ctx.common.issues),W.result;let Y=X.map((W)=>new j1(W.ctx.common.issues));return T(H,{code:S.invalid_union,unionErrors:Y}),p}if(H.common.async)return Promise.all(J.map(async(X)=>{let Y={...H,common:{...H.common,issues:[]},parent:null};return{result:await X._parseAsync({data:H.data,path:H.path,parent:Y}),ctx:Y}})).then(Q);else{let X=void 0,Y=[];for(let G of J){let q={...H,common:{...H.common,issues:[]},parent:null},U=G._parseSync({data:H.data,path:H.path,parent:q});if(U.status==="valid")return U;else if(U.status==="dirty"&&!X)X={result:U,ctx:q};if(q.common.issues.length)Y.push(q.common.issues)}if(X)return H.common.issues.push(...X.ctx.common.issues),X.result;let W=Y.map((G)=>new j1(G));return T(H,{code:S.invalid_union,unionErrors:W}),p}}get options(){return this._def.options}}k$.create=($,H)=>{return new k$({options:$,typeName:C.ZodUnion,...a(H)})};var E0=($)=>{if($ instanceof v$)return E0($.schema);else if($ instanceof a1)return E0($.innerType());else if($ instanceof g$)return[$.value];else if($ instanceof k0)return $.options;else if($ instanceof y$)return H1.objectValues($.enum);else if($ instanceof u$)return E0($._def.innerType);else if($ instanceof f$)return[void 0];else if($ instanceof x$)return[null];else if($ instanceof o1)return[void 0,...E0($.unwrap())];else if($ instanceof j0)return[null,...E0($.unwrap())];else if($ instanceof q2)return E0($.unwrap());else if($ instanceof d$)return E0($.unwrap());else if($ instanceof m$)return E0($._def.innerType);else return[]};class G2 extends e{_parse($){let{ctx:H}=this._processInputParams($);if(H.parsedType!==P.object)return T(H,{code:S.invalid_type,expected:P.object,received:H.parsedType}),p;let J=this.discriminator,Q=H.data[J],X=this.optionsMap.get(Q);if(!X)return T(H,{code:S.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[J]}),p;if(H.common.async)return X._parseAsync({data:H.data,path:H.path,parent:H});else return X._parseSync({data:H.data,path:H.path,parent:H})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create($,H,J){let Q=new Map;for(let X of H){let Y=E0(X.shape[$]);if(!Y.length)throw Error(`A discriminator value for key \`${$}\` could not be extracted from all schema options`);for(let W of Y){if(Q.has(W))throw Error(`Discriminator property ${String($)} has duplicate value ${String(W)}`);Q.set(W,X)}}return new G2({typeName:C.ZodDiscriminatedUnion,discriminator:$,options:H,optionsMap:Q,...a(J)})}}function E5($,H){let J=B0($),Q=B0(H);if($===H)return{valid:!0,data:$};else if(J===P.object&&Q===P.object){let X=H1.objectKeys(H),Y=H1.objectKeys($).filter((G)=>X.indexOf(G)!==-1),W={...$,...H};for(let G of Y){let q=E5($[G],H[G]);if(!q.valid)return{valid:!1};W[G]=q.data}return{valid:!0,data:W}}else if(J===P.array&&Q===P.array){if($.length!==H.length)return{valid:!1};let X=[];for(let Y=0;Y<$.length;Y++){let W=$[Y],G=H[Y],q=E5(W,G);if(!q.valid)return{valid:!1};X.push(q.data)}return{valid:!0,data:X}}else if(J===P.date&&Q===P.date&&+$===+H)return{valid:!0,data:$};else return{valid:!1}}class h$ extends e{_parse($){let{status:H,ctx:J}=this._processInputParams($),Q=(X,Y)=>{if(Y2(X)||Y2(Y))return p;let W=E5(X.value,Y.value);if(!W.valid)return T(J,{code:S.invalid_intersection_types}),p;if(W2(X)||W2(Y))H.dirty();return{status:H.value,value:W.data}};if(J.common.async)return Promise.all([this._def.left._parseAsync({data:J.data,path:J.path,parent:J}),this._def.right._parseAsync({data:J.data,path:J.path,parent:J})]).then(([X,Y])=>Q(X,Y));else return Q(this._def.left._parseSync({data:J.data,path:J.path,parent:J}),this._def.right._parseSync({data:J.data,path:J.path,parent:J}))}}h$.create=($,H,J)=>{return new h$({left:$,right:H,typeName:C.ZodIntersection,...a(J)})};class D0 extends e{_parse($){let{status:H,ctx:J}=this._processInputParams($);if(J.parsedType!==P.array)return T(J,{code:S.invalid_type,expected:P.array,received:J.parsedType}),p;if(J.data.length<this._def.items.length)return T(J,{code:S.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),p;if(!this._def.rest&&J.data.length>this._def.items.length)T(J,{code:S.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),H.dirty();let X=[...J.data].map((Y,W)=>{let G=this._def.items[W]||this._def.rest;if(!G)return null;return G._parse(new r1(J,Y,J.path,W))}).filter((Y)=>!!Y);if(J.common.async)return Promise.all(X).then((Y)=>{return O1.mergeArray(H,Y)});else return O1.mergeArray(H,X)}get items(){return this._def.items}rest($){return new D0({...this._def,rest:$})}}D0.create=($,H)=>{if(!Array.isArray($))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new D0({items:$,typeName:C.ZodTuple,rest:null,...a(H)})};class v4 extends e{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse($){let{status:H,ctx:J}=this._processInputParams($);if(J.parsedType!==P.object)return T(J,{code:S.invalid_type,expected:P.object,received:J.parsedType}),p;let Q=[],X=this._def.keyType,Y=this._def.valueType;for(let W in J.data)Q.push({key:X._parse(new r1(J,W,J.path,W)),value:Y._parse(new r1(J,J.data[W],J.path,W)),alwaysSet:W in J.data});if(J.common.async)return O1.mergeObjectAsync(H,Q);else return O1.mergeObjectSync(H,Q)}get element(){return this._def.valueType}static create($,H,J){if(H instanceof e)return new v4({keyType:$,valueType:H,typeName:C.ZodRecord,...a(J)});return new v4({keyType:i1.create(),valueType:$,typeName:C.ZodRecord,...a(H)})}}class g4 extends e{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse($){let{status:H,ctx:J}=this._processInputParams($);if(J.parsedType!==P.map)return T(J,{code:S.invalid_type,expected:P.map,received:J.parsedType}),p;let Q=this._def.keyType,X=this._def.valueType,Y=[...J.data.entries()].map(([W,G],q)=>{return{key:Q._parse(new r1(J,W,J.path,[q,"key"])),value:X._parse(new r1(J,G,J.path,[q,"value"]))}});if(J.common.async){let W=new Map;return Promise.resolve().then(async()=>{for(let G of Y){let q=await G.key,U=await G.value;if(q.status==="aborted"||U.status==="aborted")return p;if(q.status==="dirty"||U.status==="dirty")H.dirty();W.set(q.value,U.value)}return{status:H.value,value:W}})}else{let W=new Map;for(let G of Y){let{key:q,value:U}=G;if(q.status==="aborted"||U.status==="aborted")return p;if(q.status==="dirty"||U.status==="dirty")H.dirty();W.set(q.value,U.value)}return{status:H.value,value:W}}}}g4.create=($,H,J)=>{return new g4({valueType:H,keyType:$,typeName:C.ZodMap,...a(J)})};class $$ extends e{_parse($){let{status:H,ctx:J}=this._processInputParams($);if(J.parsedType!==P.set)return T(J,{code:S.invalid_type,expected:P.set,received:J.parsedType}),p;let Q=this._def;if(Q.minSize!==null){if(J.data.size<Q.minSize.value)T(J,{code:S.too_small,minimum:Q.minSize.value,type:"set",inclusive:!0,exact:!1,message:Q.minSize.message}),H.dirty()}if(Q.maxSize!==null){if(J.data.size>Q.maxSize.value)T(J,{code:S.too_big,maximum:Q.maxSize.value,type:"set",inclusive:!0,exact:!1,message:Q.maxSize.message}),H.dirty()}let X=this._def.valueType;function Y(G){let q=new Set;for(let U of G){if(U.status==="aborted")return p;if(U.status==="dirty")H.dirty();q.add(U.value)}return{status:H.value,value:q}}let W=[...J.data.values()].map((G,q)=>X._parse(new r1(J,G,J.path,q)));if(J.common.async)return Promise.all(W).then((G)=>Y(G));else return Y(W)}min($,H){return new $$({...this._def,minSize:{value:$,message:y.toString(H)}})}max($,H){return new $$({...this._def,maxSize:{value:$,message:y.toString(H)}})}size($,H){return this.min($,H).max($,H)}nonempty($){return this.min(1,$)}}$$.create=($,H)=>{return new $$({valueType:$,minSize:null,maxSize:null,typeName:C.ZodSet,...a(H)})};class T$ extends e{constructor(){super(...arguments);this.validate=this.implement}_parse($){let{ctx:H}=this._processInputParams($);if(H.parsedType!==P.function)return T(H,{code:S.invalid_type,expected:P.function,received:H.parsedType}),p;function J(W,G){return x4({data:W,path:H.path,errorMaps:[H.common.contextualErrorMap,H.schemaErrorMap,P$(),R0].filter((q)=>!!q),issueData:{code:S.invalid_arguments,argumentsError:G}})}function Q(W,G){return x4({data:W,path:H.path,errorMaps:[H.common.contextualErrorMap,H.schemaErrorMap,P$(),R0].filter((q)=>!!q),issueData:{code:S.invalid_return_type,returnTypeError:G}})}let X={errorMap:H.common.contextualErrorMap},Y=H.data;if(this._def.returns instanceof H$){let W=this;return M1(async function(...G){let q=new j1([]),U=await W._def.args.parseAsync(G,X).catch((_)=>{throw q.addIssue(J(G,_)),q}),B=await Reflect.apply(Y,this,U);return await W._def.returns._def.type.parseAsync(B,X).catch((_)=>{throw q.addIssue(Q(B,_)),q})})}else{let W=this;return M1(function(...G){let q=W._def.args.safeParse(G,X);if(!q.success)throw new j1([J(G,q.error)]);let U=Reflect.apply(Y,this,q.data),B=W._def.returns.safeParse(U,X);if(!B.success)throw new j1([Q(U,B.error)]);return B.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...$){return new T$({...this._def,args:D0.create($).rest(b0.create())})}returns($){return new T$({...this._def,returns:$})}implement($){return this.parse($)}strictImplement($){return this.parse($)}static create($,H,J){return new T$({args:$?$:D0.create([]).rest(b0.create()),returns:H||b0.create(),typeName:C.ZodFunction,...a(J)})}}class v$ extends e{get schema(){return this._def.getter()}_parse($){let{ctx:H}=this._processInputParams($);return this._def.getter()._parse({data:H.data,path:H.path,parent:H})}}v$.create=($,H)=>{return new v$({getter:$,typeName:C.ZodLazy,...a(H)})};class g$ extends e{_parse($){if($.data!==this._def.value){let H=this._getOrReturnCtx($);return T(H,{received:H.data,code:S.invalid_literal,expected:this._def.value}),p}return{status:"valid",value:$.data}}get value(){return this._def.value}}g$.create=($,H)=>{return new g$({value:$,typeName:C.ZodLiteral,...a(H)})};function FX($,H){return new k0({values:$,typeName:C.ZodEnum,...a(H)})}class k0 extends e{_parse($){if(typeof $.data!=="string"){let H=this._getOrReturnCtx($),J=this._def.values;return T(H,{expected:H1.joinValues(J),received:H.parsedType,code:S.invalid_type}),p}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has($.data)){let H=this._getOrReturnCtx($),J=this._def.values;return T(H,{received:H.data,code:S.invalid_enum_value,options:J}),p}return M1($.data)}get options(){return this._def.values}get enum(){let $={};for(let H of this._def.values)$[H]=H;return $}get Values(){let $={};for(let H of this._def.values)$[H]=H;return $}get Enum(){let $={};for(let H of this._def.values)$[H]=H;return $}extract($,H=this._def){return k0.create($,{...this._def,...H})}exclude($,H=this._def){return k0.create(this.options.filter((J)=>!$.includes(J)),{...this._def,...H})}}k0.create=FX;class y$ extends e{_parse($){let H=H1.getValidEnumValues(this._def.values),J=this._getOrReturnCtx($);if(J.parsedType!==P.string&&J.parsedType!==P.number){let Q=H1.objectValues(H);return T(J,{expected:H1.joinValues(Q),received:J.parsedType,code:S.invalid_type}),p}if(!this._cache)this._cache=new Set(H1.getValidEnumValues(this._def.values));if(!this._cache.has($.data)){let Q=H1.objectValues(H);return T(J,{received:J.data,code:S.invalid_enum_value,options:Q}),p}return M1($.data)}get enum(){return this._def.values}}y$.create=($,H)=>{return new y$({values:$,typeName:C.ZodNativeEnum,...a(H)})};class H$ extends e{unwrap(){return this._def.type}_parse($){let{ctx:H}=this._processInputParams($);if(H.parsedType!==P.promise&&H.common.async===!1)return T(H,{code:S.invalid_type,expected:P.promise,received:H.parsedType}),p;let J=H.parsedType===P.promise?H.data:Promise.resolve(H.data);return M1(J.then((Q)=>{return this._def.type.parseAsync(Q,{path:H.path,errorMap:H.common.contextualErrorMap})}))}}H$.create=($,H)=>{return new H$({type:$,typeName:C.ZodPromise,...a(H)})};class a1 extends e{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===C.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse($){let{status:H,ctx:J}=this._processInputParams($),Q=this._def.effect||null,X={addIssue:(Y)=>{if(T(J,Y),Y.fatal)H.abort();else H.dirty()},get path(){return J.path}};if(X.addIssue=X.addIssue.bind(X),Q.type==="preprocess"){let Y=Q.transform(J.data,X);if(J.common.async)return Promise.resolve(Y).then(async(W)=>{if(H.value==="aborted")return p;let G=await this._def.schema._parseAsync({data:W,path:J.path,parent:J});if(G.status==="aborted")return p;if(G.status==="dirty")return a0(G.value);if(H.value==="dirty")return a0(G.value);return G});else{if(H.value==="aborted")return p;let W=this._def.schema._parseSync({data:Y,path:J.path,parent:J});if(W.status==="aborted")return p;if(W.status==="dirty")return a0(W.value);if(H.value==="dirty")return a0(W.value);return W}}if(Q.type==="refinement"){let Y=(W)=>{let G=Q.refinement(W,X);if(J.common.async)return Promise.resolve(G);if(G instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return W};if(J.common.async===!1){let W=this._def.schema._parseSync({data:J.data,path:J.path,parent:J});if(W.status==="aborted")return p;if(W.status==="dirty")H.dirty();return Y(W.value),{status:H.value,value:W.value}}else return this._def.schema._parseAsync({data:J.data,path:J.path,parent:J}).then((W)=>{if(W.status==="aborted")return p;if(W.status==="dirty")H.dirty();return Y(W.value).then(()=>{return{status:H.value,value:W.value}})})}if(Q.type==="transform")if(J.common.async===!1){let Y=this._def.schema._parseSync({data:J.data,path:J.path,parent:J});if(!T0(Y))return p;let W=Q.transform(Y.value,X);if(W instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:H.value,value:W}}else return this._def.schema._parseAsync({data:J.data,path:J.path,parent:J}).then((Y)=>{if(!T0(Y))return p;return Promise.resolve(Q.transform(Y.value,X)).then((W)=>({status:H.value,value:W}))});H1.assertNever(Q)}}a1.create=($,H,J)=>{return new a1({schema:$,typeName:C.ZodEffects,effect:H,...a(J)})};a1.createWithPreprocess=($,H,J)=>{return new a1({schema:H,effect:{type:"preprocess",transform:$},typeName:C.ZodEffects,...a(J)})};class o1 extends e{_parse($){if(this._getType($)===P.undefined)return M1(void 0);return this._def.innerType._parse($)}unwrap(){return this._def.innerType}}o1.create=($,H)=>{return new o1({innerType:$,typeName:C.ZodOptional,...a(H)})};class j0 extends e{_parse($){if(this._getType($)===P.null)return M1(null);return this._def.innerType._parse($)}unwrap(){return this._def.innerType}}j0.create=($,H)=>{return new j0({innerType:$,typeName:C.ZodNullable,...a(H)})};class u$ extends e{_parse($){let{ctx:H}=this._processInputParams($),J=H.data;if(H.parsedType===P.undefined)J=this._def.defaultValue();return this._def.innerType._parse({data:J,path:H.path,parent:H})}removeDefault(){return this._def.innerType}}u$.create=($,H)=>{return new u$({innerType:$,typeName:C.ZodDefault,defaultValue:typeof H.default==="function"?H.default:()=>H.default,...a(H)})};class m$ extends e{_parse($){let{ctx:H}=this._processInputParams($),J={...H,common:{...H.common,issues:[]}},Q=this._def.innerType._parse({data:J.data,path:J.path,parent:{...J}});if(K$(Q))return Q.then((X)=>{return{status:"valid",value:X.status==="valid"?X.value:this._def.catchValue({get error(){return new j1(J.common.issues)},input:J.data})}});else return{status:"valid",value:Q.status==="valid"?Q.value:this._def.catchValue({get error(){return new j1(J.common.issues)},input:J.data})}}removeCatch(){return this._def.innerType}}m$.create=($,H)=>{return new m$({innerType:$,typeName:C.ZodCatch,catchValue:typeof H.catch==="function"?H.catch:()=>H.catch,...a(H)})};class y4 extends e{_parse($){if(this._getType($)!==P.nan){let J=this._getOrReturnCtx($);return T(J,{code:S.invalid_type,expected:P.nan,received:J.parsedType}),p}return{status:"valid",value:$.data}}}y4.create=($)=>{return new y4({typeName:C.ZodNaN,...a($)})};var LR=Symbol("zod_brand");class q2 extends e{_parse($){let{ctx:H}=this._processInputParams($),J=H.data;return this._def.type._parse({data:J,path:H.path,parent:H})}unwrap(){return this._def.type}}class u4 extends e{_parse($){let{status:H,ctx:J}=this._processInputParams($);if(J.common.async)return(async()=>{let X=await this._def.in._parseAsync({data:J.data,path:J.path,parent:J});if(X.status==="aborted")return p;if(X.status==="dirty")return H.dirty(),a0(X.value);else return this._def.out._parseAsync({data:X.value,path:J.path,parent:J})})();else{let Q=this._def.in._parseSync({data:J.data,path:J.path,parent:J});if(Q.status==="aborted")return p;if(Q.status==="dirty")return H.dirty(),{status:"dirty",value:Q.value};else return this._def.out._parseSync({data:Q.value,path:J.path,parent:J})}}static create($,H){return new u4({in:$,out:H,typeName:C.ZodPipeline})}}class d$ extends e{_parse($){let H=this._def.innerType._parse($),J=(Q)=>{if(T0(Q))Q.value=Object.freeze(Q.value);return Q};return K$(H)?H.then((Q)=>J(Q)):J(H)}unwrap(){return this._def.innerType}}d$.create=($,H)=>{return new d$({innerType:$,typeName:C.ZodReadonly,...a(H)})};function wX($,H){let J=typeof $==="function"?$(H):typeof $==="string"?{message:$}:$;return typeof J==="string"?{message:J}:J}function zX($,H={},J){if($)return e0.create().superRefine((Q,X)=>{let Y=$(Q);if(Y instanceof Promise)return Y.then((W)=>{if(!W){let G=wX(H,Q),q=G.fatal??J??!0;X.addIssue({code:"custom",...G,fatal:q})}});if(!Y){let W=wX(H,Q),G=W.fatal??J??!0;X.addIssue({code:"custom",...W,fatal:G})}return});return e0.create()}var MR={object:D1.lazycreate},C;(function($){$.ZodString="ZodString",$.ZodNumber="ZodNumber",$.ZodNaN="ZodNaN",$.ZodBigInt="ZodBigInt",$.ZodBoolean="ZodBoolean",$.ZodDate="ZodDate",$.ZodSymbol="ZodSymbol",$.ZodUndefined="ZodUndefined",$.ZodNull="ZodNull",$.ZodAny="ZodAny",$.ZodUnknown="ZodUnknown",$.ZodNever="ZodNever",$.ZodVoid="ZodVoid",$.ZodArray="ZodArray",$.ZodObject="ZodObject",$.ZodUnion="ZodUnion",$.ZodDiscriminatedUnion="ZodDiscriminatedUnion",$.ZodIntersection="ZodIntersection",$.ZodTuple="ZodTuple",$.ZodRecord="ZodRecord",$.ZodMap="ZodMap",$.ZodSet="ZodSet",$.ZodFunction="ZodFunction",$.ZodLazy="ZodLazy",$.ZodLiteral="ZodLiteral",$.ZodEnum="ZodEnum",$.ZodEffects="ZodEffects",$.ZodNativeEnum="ZodNativeEnum",$.ZodOptional="ZodOptional",$.ZodNullable="ZodNullable",$.ZodDefault="ZodDefault",$.ZodCatch="ZodCatch",$.ZodPromise="ZodPromise",$.ZodBranded="ZodBranded",$.ZodPipeline="ZodPipeline",$.ZodReadonly="ZodReadonly"})(C||(C={}));var SR=($,H={message:`Input not instance of ${$.name}`})=>zX((J)=>J instanceof $,H),NX=i1.create,AX=f0.create,CR=y4.create,PR=x0.create,RX=b$.create,KR=t0.create,IR=k4.create,TR=f$.create,bR=x$.create,fR=e0.create,xR=b0.create,kR=w0.create,hR=h4.create,vR=s1.create,gR=D1.create,yR=D1.strictCreate,uR=k$.create,mR=G2.create,dR=h$.create,cR=D0.create,lR=v4.create,pR=g4.create,nR=$$.create,iR=T$.create,sR=v$.create,oR=g$.create,rR=k0.create,aR=y$.create,tR=H$.create,eR=a1.create,$E=o1.create,HE=j0.create,JE=a1.createWithPreprocess,QE=u4.create,XE=()=>NX().optional(),YE=()=>AX().optional(),WE=()=>RX().optional(),GE={string:($)=>i1.create({...$,coerce:!0}),number:($)=>f0.create({...$,coerce:!0}),boolean:($)=>b$.create({...$,coerce:!0}),bigint:($)=>x0.create({...$,coerce:!0}),date:($)=>t0.create({...$,coerce:!0})};var qE=p;function w1($){if($.target!=="openAi")return{};let H=[...$.basePath,$.definitionPath,$.openAiAnyTypeName];return $.flags.hasReferencedOpenAiAnyType=!0,{$ref:$.$refStrategy==="relative"?X2(H,$.currentPath):H.join("/")}}function EX($,H){let J={type:"array"};if($.type?._def&&$.type?._def?.typeName!==C.ZodAny)J.items=n($.type._def,{...H,currentPath:[...H.currentPath,"items"]});if($.minLength)Y1(J,"minItems",$.minLength.value,$.minLength.message,H);if($.maxLength)Y1(J,"maxItems",$.maxLength.value,$.maxLength.message,H);if($.exactLength)Y1(J,"minItems",$.exactLength.value,$.exactLength.message,H),Y1(J,"maxItems",$.exactLength.value,$.exactLength.message,H);return J}function jX($,H){let J={type:"integer",format:"int64"};if(!$.checks)return J;for(let Q of $.checks)switch(Q.kind){case"min":if(H.target==="jsonSchema7")if(Q.inclusive)Y1(J,"minimum",Q.value,Q.message,H);else Y1(J,"exclusiveMinimum",Q.value,Q.message,H);else{if(!Q.inclusive)J.exclusiveMinimum=!0;Y1(J,"minimum",Q.value,Q.message,H)}break;case"max":if(H.target==="jsonSchema7")if(Q.inclusive)Y1(J,"maximum",Q.value,Q.message,H);else Y1(J,"exclusiveMaximum",Q.value,Q.message,H);else{if(!Q.inclusive)J.exclusiveMaximum=!0;Y1(J,"maximum",Q.value,Q.message,H)}break;case"multipleOf":Y1(J,"multipleOf",Q.value,Q.message,H);break}return J}function OX(){return{type:"boolean"}}function U2($,H){return n($.type._def,H)}var ZX=($,H)=>{return n($.innerType._def,H)};function j5($,H,J){let Q=J??H.dateStrategy;if(Array.isArray(Q))return{anyOf:Q.map((X,Y)=>j5($,H,X))};switch(Q){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return UE($,H)}}var UE=($,H)=>{let J={type:"integer",format:"unix-time"};if(H.target==="openApi3")return J;for(let Q of $.checks)switch(Q.kind){case"min":Y1(J,"minimum",Q.value,Q.message,H);break;case"max":Y1(J,"maximum",Q.value,Q.message,H);break}return J};function LX($,H){return{...n($.innerType._def,H),default:$.defaultValue()}}function MX($,H){return H.effectStrategy==="input"?n($.schema._def,H):w1(H)}function SX($){return{type:"string",enum:Array.from($.values)}}var BE=($)=>{if("type"in $&&$.type==="string")return!1;return"allOf"in $};function CX($,H){let J=[n($.left._def,{...H,currentPath:[...H.currentPath,"allOf","0"]}),n($.right._def,{...H,currentPath:[...H.currentPath,"allOf","1"]})].filter((Y)=>!!Y),Q=H.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,X=[];return J.forEach((Y)=>{if(BE(Y)){if(X.push(...Y.allOf),Y.unevaluatedProperties===void 0)Q=void 0}else{let W=Y;if("additionalProperties"in Y&&Y.additionalProperties===!1){let{additionalProperties:G,...q}=Y;W=q}else Q=void 0;X.push(W)}}),X.length?{allOf:X,...Q}:void 0}function PX($,H){let J=typeof $.value;if(J!=="bigint"&&J!=="number"&&J!=="boolean"&&J!=="string")return{type:Array.isArray($.value)?"array":"object"};if(H.target==="openApi3")return{type:J==="bigint"?"integer":J,enum:[$.value]};return{type:J==="bigint"?"integer":J,const:$.value}}var O5=void 0,t1={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>{if(O5===void 0)O5=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u");return O5},uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function B2($,H){let J={type:"string"};if($.checks)for(let Q of $.checks)switch(Q.kind){case"min":Y1(J,"minLength",typeof J.minLength==="number"?Math.max(J.minLength,Q.value):Q.value,Q.message,H);break;case"max":Y1(J,"maxLength",typeof J.maxLength==="number"?Math.min(J.maxLength,Q.value):Q.value,Q.message,H);break;case"email":switch(H.emailStrategy){case"format:email":e1(J,"email",Q.message,H);break;case"format:idn-email":e1(J,"idn-email",Q.message,H);break;case"pattern:zod":K1(J,t1.email,Q.message,H);break}break;case"url":e1(J,"uri",Q.message,H);break;case"uuid":e1(J,"uuid",Q.message,H);break;case"regex":K1(J,Q.regex,Q.message,H);break;case"cuid":K1(J,t1.cuid,Q.message,H);break;case"cuid2":K1(J,t1.cuid2,Q.message,H);break;case"startsWith":K1(J,RegExp(`^${Z5(Q.value,H)}`),Q.message,H);break;case"endsWith":K1(J,RegExp(`${Z5(Q.value,H)}$`),Q.message,H);break;case"datetime":e1(J,"date-time",Q.message,H);break;case"date":e1(J,"date",Q.message,H);break;case"time":e1(J,"time",Q.message,H);break;case"duration":e1(J,"duration",Q.message,H);break;case"length":Y1(J,"minLength",typeof J.minLength==="number"?Math.max(J.minLength,Q.value):Q.value,Q.message,H),Y1(J,"maxLength",typeof J.maxLength==="number"?Math.min(J.maxLength,Q.value):Q.value,Q.message,H);break;case"includes":{K1(J,RegExp(Z5(Q.value,H)),Q.message,H);break}case"ip":{if(Q.version!=="v6")e1(J,"ipv4",Q.message,H);if(Q.version!=="v4")e1(J,"ipv6",Q.message,H);break}case"base64url":K1(J,t1.base64url,Q.message,H);break;case"jwt":K1(J,t1.jwt,Q.message,H);break;case"cidr":{if(Q.version!=="v6")K1(J,t1.ipv4Cidr,Q.message,H);if(Q.version!=="v4")K1(J,t1.ipv6Cidr,Q.message,H);break}case"emoji":K1(J,t1.emoji(),Q.message,H);break;case"ulid":{K1(J,t1.ulid,Q.message,H);break}case"base64":{switch(H.base64Strategy){case"format:binary":{e1(J,"binary",Q.message,H);break}case"contentEncoding:base64":{Y1(J,"contentEncoding","base64",Q.message,H);break}case"pattern:zod":{K1(J,t1.base64,Q.message,H);break}}break}case"nanoid":K1(J,t1.nanoid,Q.message,H);case"toLowerCase":case"toUpperCase":case"trim":break;default:((X)=>{})(Q)}return J}function Z5($,H){return H.patternStrategy==="escape"?DE($):$}var wE=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function DE($){let H="";for(let J=0;J<$.length;J++){if(!wE.has($[J]))H+="\\";H+=$[J]}return H}function e1($,H,J,Q){if($.format||$.anyOf?.some((X)=>X.format)){if(!$.anyOf)$.anyOf=[];if($.format){if($.anyOf.push({format:$.format,...$.errorMessage&&Q.errorMessages&&{errorMessage:{format:$.errorMessage.format}}}),delete $.format,$.errorMessage){if(delete $.errorMessage.format,Object.keys($.errorMessage).length===0)delete $.errorMessage}}$.anyOf.push({format:H,...J&&Q.errorMessages&&{errorMessage:{format:J}}})}else Y1($,"format",H,J,Q)}function K1($,H,J,Q){if($.pattern||$.allOf?.some((X)=>X.pattern)){if(!$.allOf)$.allOf=[];if($.pattern){if($.allOf.push({pattern:$.pattern,...$.errorMessage&&Q.errorMessages&&{errorMessage:{pattern:$.errorMessage.pattern}}}),delete $.pattern,$.errorMessage){if(delete $.errorMessage.pattern,Object.keys($.errorMessage).length===0)delete $.errorMessage}}$.allOf.push({pattern:KX(H,Q),...J&&Q.errorMessages&&{errorMessage:{pattern:J}}})}else Y1($,"pattern",KX(H,Q),J,Q)}function KX($,H){if(!H.applyRegexFlags||!$.flags)return $.source;let J={i:$.flags.includes("i"),m:$.flags.includes("m"),s:$.flags.includes("s")},Q=J.i?$.source.toLowerCase():$.source,X="",Y=!1,W=!1,G=!1;for(let q=0;q<Q.length;q++){if(Y){X+=Q[q],Y=!1;continue}if(J.i){if(W){if(Q[q].match(/[a-z]/)){if(G)X+=Q[q],X+=`${Q[q-2]}-${Q[q]}`.toUpperCase(),G=!1;else if(Q[q+1]==="-"&&Q[q+2]?.match(/[a-z]/))X+=Q[q],G=!0;else X+=`${Q[q]}${Q[q].toUpperCase()}`;continue}}else if(Q[q].match(/[a-z]/)){X+=`[${Q[q]}${Q[q].toUpperCase()}]`;continue}}if(J.m){if(Q[q]==="^"){X+=`(^|(?<=[\r
|
|
42
|
+
"HS256", "HS384", "HS512", "RS256", "RS384", "RS512", "PS256", "PS384", "PS512", "ES256", "ES384", "ES512" and "none".`,X9="secret must be a string or buffer",e$="key must be a string or a buffer",Vj="key must be a string, a buffer or an object",V7=typeof h1.createPublicKey==="function";if(V7)e$+=" or a KeyObject",X9+="or a KeyObject";function FW($){if($4.isBuffer($))return;if(typeof $==="string")return;if(!V7)throw H0(e$);if(typeof $!=="object")throw H0(e$);if(typeof $.type!=="string")throw H0(e$);if(typeof $.asymmetricKeyType!=="string")throw H0(e$);if(typeof $.export!=="function")throw H0(e$)}function zW($){if($4.isBuffer($))return;if(typeof $==="string")return;if(typeof $==="object")return;throw H0(Vj)}function _j($){if($4.isBuffer($))return;if(typeof $==="string")return $;if(!V7)throw H0(X9);if(typeof $!=="object")throw H0(X9);if($.type!=="secret")throw H0(X9);if(typeof $.export!=="function")throw H0(X9)}function _7($){return $.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function NW($){$=$.toString();var H=4-$.length%4;if(H!==4)for(var J=0;J<H;++J)$+="=";return $.replace(/\-/g,"+").replace(/_/g,"/")}function H0($){var H=[].slice.call(arguments,1),J=VW.format.bind(VW,$).apply(null,H);return TypeError(J)}function Fj($){return $4.isBuffer($)||typeof $==="string"}function Y9($){if(!Fj($))$=JSON.stringify($);return $}function AW($){return function(J,Q){_j(Q),J=Y9(J);var X=h1.createHmac("sha"+$,Q),Y=(X.update(J),X.digest("base64"));return _7(Y)}}var D7,zj="timingSafeEqual"in h1?function(H,J){if(H.byteLength!==J.byteLength)return!1;return h1.timingSafeEqual(H,J)}:function(H,J){if(!D7)D7=DW();return D7(H,J)};function Nj($){return function(J,Q,X){var Y=AW($)(J,X);return zj($4.from(Q),$4.from(Y))}}function RW($){return function(J,Q){zW(Q),J=Y9(J);var X=h1.createSign("RSA-SHA"+$),Y=(X.update(J),X.sign(Q,"base64"));return _7(Y)}}function EW($){return function(J,Q,X){FW(X),J=Y9(J),Q=NW(Q);var Y=h1.createVerify("RSA-SHA"+$);return Y.update(J),Y.verify(X,Q,"base64")}}function Aj($){return function(J,Q){zW(Q),J=Y9(J);var X=h1.createSign("RSA-SHA"+$),Y=(X.update(J),X.sign({key:Q,padding:h1.constants.RSA_PKCS1_PSS_PADDING,saltLength:h1.constants.RSA_PSS_SALTLEN_DIGEST},"base64"));return _7(Y)}}function Rj($){return function(J,Q,X){FW(X),J=Y9(J),Q=NW(Q);var Y=h1.createVerify("RSA-SHA"+$);return Y.update(J),Y.verify({key:X,padding:h1.constants.RSA_PKCS1_PSS_PADDING,saltLength:h1.constants.RSA_PSS_SALTLEN_DIGEST},Q,"base64")}}function Ej($){var H=RW($);return function(){var Q=H.apply(null,arguments);return Q=_W.derToJose(Q,"ES"+$),Q}}function jj($){var H=EW($);return function(Q,X,Y){X=_W.joseToDer(X,"ES"+$).toString("base64");var W=H(Q,X,Y);return W}}function Oj(){return function(){return""}}function Zj(){return function(H,J){return J===""}}jW.exports=function(H){var J={hs:AW,rs:RW,ps:Aj,es:Ej,none:Oj},Q={hs:Nj,rs:EW,ps:Rj,es:jj,none:Zj},X=H.match(/^(RS|PS|ES|HS)(256|384|512)$|^(none)$/i);if(!X)throw H0(Dj,H);var Y=(X[1]||X[3]).toLowerCase(),W=X[2];return{sign:J[Y](W),verify:Q[Y](W)}}});var z7=N((yk,OW)=>{var Lj=require("buffer").Buffer;OW.exports=function(H){if(typeof H==="string")return H;if(typeof H==="number"||Lj.isBuffer(H))return H.toString();return JSON.stringify(H)}});var PW=N((uk,CW)=>{var Mj=t$().Buffer,ZW=U7(),Sj=F7(),Cj=require("stream"),LW=z7(),N7=require("util");function MW($,H){return Mj.from($,H).toString("base64").replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function Pj($,H,J){J=J||"utf8";var Q=MW(LW($),"binary"),X=MW(LW(H),J);return N7.format("%s.%s",Q,X)}function SW($){var{header:H,payload:J}=$,Q=$.secret||$.privateKey,X=$.encoding,Y=Sj(H.alg),W=Pj(H,J,X),G=Y.sign(W,Q);return N7.format("%s.%s",W,G)}function p2($){var H=$.secret||$.privateKey||$.key,J=new ZW(H);this.readable=!0,this.header=$.header,this.encoding=$.encoding,this.secret=this.privateKey=this.key=J,this.payload=new ZW($.payload),this.secret.once("close",function(){if(!this.payload.writable&&this.readable)this.sign()}.bind(this)),this.payload.once("close",function(){if(!this.secret.writable&&this.readable)this.sign()}.bind(this))}N7.inherits(p2,Cj);p2.prototype.sign=function(){try{var H=SW({header:this.header,payload:this.payload.buffer,secret:this.secret.buffer,encoding:this.encoding});return this.emit("done",H),this.emit("data",H),this.emit("end"),this.readable=!1,H}catch(J){this.readable=!1,this.emit("error",J),this.emit("close")}};p2.sign=SW;CW.exports=p2});var gW=N((mk,vW)=>{var IW=t$().Buffer,KW=U7(),Kj=F7(),Ij=require("stream"),TW=z7(),Tj=require("util"),bj=/^[a-zA-Z0-9\-_]+?\.[a-zA-Z0-9\-_]+?\.([a-zA-Z0-9\-_]+)?$/;function fj($){return Object.prototype.toString.call($)==="[object Object]"}function xj($){if(fj($))return $;try{return JSON.parse($)}catch(H){return}}function bW($){var H=$.split(".",1)[0];return xj(IW.from(H,"base64").toString("binary"))}function kj($){return $.split(".",2).join(".")}function fW($){return $.split(".")[2]}function hj($,H){H=H||"utf8";var J=$.split(".")[1];return IW.from(J,"base64").toString(H)}function xW($){return bj.test($)&&!!bW($)}function kW($,H,J){if(!H){var Q=Error("Missing algorithm parameter for jws.verify");throw Q.code="MISSING_ALGORITHM",Q}$=TW($);var X=fW($),Y=kj($),W=Kj(H);return W.verify(Y,X,J)}function hW($,H){if(H=H||{},$=TW($),!xW($))return null;var J=bW($);if(!J)return null;var Q=hj($);if(J.typ==="JWT"||H.json)Q=JSON.parse(Q,H.encoding);return{header:J,payload:Q,signature:fW($)}}function H4($){$=$||{};var H=$.secret||$.publicKey||$.key,J=new KW(H);this.readable=!0,this.algorithm=$.algorithm,this.encoding=$.encoding,this.secret=this.publicKey=this.key=J,this.signature=new KW($.signature),this.secret.once("close",function(){if(!this.signature.writable&&this.readable)this.verify()}.bind(this)),this.signature.once("close",function(){if(!this.secret.writable&&this.readable)this.verify()}.bind(this))}Tj.inherits(H4,Ij);H4.prototype.verify=function(){try{var H=kW(this.signature.buffer,this.algorithm,this.key.buffer),J=hW(this.signature.buffer,this.encoding);return this.emit("done",H,J),this.emit("data",H),this.emit("end"),this.readable=!1,H}catch(Q){this.readable=!1,this.emit("error",Q),this.emit("close")}};H4.decode=hW;H4.isValid=xW;H4.verify=kW;vW.exports=H4});var i2=N((v0)=>{var yW=PW(),n2=gW(),vj=["HS256","HS384","HS512","RS256","RS384","RS512","PS256","PS384","PS512","ES256","ES384","ES512"];v0.ALGORITHMS=vj;v0.sign=yW.sign;v0.verify=n2.verify;v0.decode=n2.decode;v0.isValid=n2.isValid;v0.createSign=function(H){return new yW(H)};v0.createVerify=function(H){return new n2(H)}});var A7=N((ck,uW)=>{var gj=i2();uW.exports=function($,H){H=H||{};var J=gj.decode($,H);if(!J)return null;var Q=J.payload;if(typeof Q==="string")try{var X=JSON.parse(Q);if(X!==null&&typeof X==="object")Q=X}catch(Y){}if(H.complete===!0)return{header:J.header,payload:Q,signature:J.signature};return Q}});var W9=N((lk,mW)=>{var s2=function($,H){if(Error.call(this,$),Error.captureStackTrace)Error.captureStackTrace(this,this.constructor);if(this.name="JsonWebTokenError",this.message=$,H)this.inner=H};s2.prototype=Object.create(Error.prototype);s2.prototype.constructor=s2;mW.exports=s2});var R7=N((pk,cW)=>{var dW=W9(),o2=function($,H){dW.call(this,$),this.name="NotBeforeError",this.date=H};o2.prototype=Object.create(dW.prototype);o2.prototype.constructor=o2;cW.exports=o2});var E7=N((nk,pW)=>{var lW=W9(),r2=function($,H){lW.call(this,$),this.name="TokenExpiredError",this.expiredAt=H};r2.prototype=Object.create(lW.prototype);r2.prototype.constructor=r2;pW.exports=r2});var iW=N((ik,nW)=>{var J4=1000,Q4=J4*60,X4=Q4*60,D$=X4*24,yj=D$*7,uj=D$*365.25;nW.exports=function($,H){H=H||{};var J=typeof $;if(J==="string"&&$.length>0)return mj($);else if(J==="number"&&isFinite($))return H.long?cj($):dj($);throw Error("val is not a non-empty string or a valid number. val="+JSON.stringify($))};function mj($){if($=String($),$.length>100)return;var H=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec($);if(!H)return;var J=parseFloat(H[1]),Q=(H[2]||"ms").toLowerCase();switch(Q){case"years":case"year":case"yrs":case"yr":case"y":return J*uj;case"weeks":case"week":case"w":return J*yj;case"days":case"day":case"d":return J*D$;case"hours":case"hour":case"hrs":case"hr":case"h":return J*X4;case"minutes":case"minute":case"mins":case"min":case"m":return J*Q4;case"seconds":case"second":case"secs":case"sec":case"s":return J*J4;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return J;default:return}}function dj($){var H=Math.abs($);if(H>=D$)return Math.round($/D$)+"d";if(H>=X4)return Math.round($/X4)+"h";if(H>=Q4)return Math.round($/Q4)+"m";if(H>=J4)return Math.round($/J4)+"s";return $+"ms"}function cj($){var H=Math.abs($);if(H>=D$)return a2($,H,D$,"day");if(H>=X4)return a2($,H,X4,"hour");if(H>=Q4)return a2($,H,Q4,"minute");if(H>=J4)return a2($,H,J4,"second");return $+" ms"}function a2($,H,J,Q){var X=H>=J*1.5;return Math.round($/J)+" "+Q+(X?"s":"")}});var j7=N((sk,sW)=>{var lj=iW();sW.exports=function($,H){var J=H||Math.floor(Date.now()/1000);if(typeof $==="string"){var Q=lj($);if(typeof Q>"u")return;return Math.floor(J+Q/1000)}else if(typeof $==="number")return J+$;else return}});var G9=N((ok,oW)=>{var pj=Number.MAX_SAFE_INTEGER||9007199254740991,nj=["major","premajor","minor","preminor","patch","prepatch","prerelease"];oW.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:pj,RELEASE_TYPES:nj,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var q9=N((rk,rW)=>{var ij=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...$)=>console.error("SEMVER",...$):()=>{};rW.exports=ij});var Y4=N((_0,aW)=>{var{MAX_SAFE_COMPONENT_LENGTH:O7,MAX_SAFE_BUILD_LENGTH:sj,MAX_LENGTH:oj}=G9(),rj=q9();_0=aW.exports={};var aj=_0.re=[],tj=_0.safeRe=[],x=_0.src=[],ej=_0.safeSrc=[],k=_0.t={},$O=0,Z7="[a-zA-Z0-9-]",HO=[["\\s",1],["\\d",oj],[Z7,sj]],JO=($)=>{for(let[H,J]of HO)$=$.split(`${H}*`).join(`${H}{0,${J}}`).split(`${H}+`).join(`${H}{1,${J}}`);return $},r=($,H,J)=>{let Q=JO(H),X=$O++;rj($,X,H),k[$]=X,x[X]=H,ej[X]=Q,aj[X]=new RegExp(H,J?"g":void 0),tj[X]=new RegExp(Q,J?"g":void 0)};r("NUMERICIDENTIFIER","0|[1-9]\\d*");r("NUMERICIDENTIFIERLOOSE","\\d+");r("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Z7}*`);r("MAINVERSION",`(${x[k.NUMERICIDENTIFIER]})\\.(${x[k.NUMERICIDENTIFIER]})\\.(${x[k.NUMERICIDENTIFIER]})`);r("MAINVERSIONLOOSE",`(${x[k.NUMERICIDENTIFIERLOOSE]})\\.(${x[k.NUMERICIDENTIFIERLOOSE]})\\.(${x[k.NUMERICIDENTIFIERLOOSE]})`);r("PRERELEASEIDENTIFIER",`(?:${x[k.NONNUMERICIDENTIFIER]}|${x[k.NUMERICIDENTIFIER]})`);r("PRERELEASEIDENTIFIERLOOSE",`(?:${x[k.NONNUMERICIDENTIFIER]}|${x[k.NUMERICIDENTIFIERLOOSE]})`);r("PRERELEASE",`(?:-(${x[k.PRERELEASEIDENTIFIER]}(?:\\.${x[k.PRERELEASEIDENTIFIER]})*))`);r("PRERELEASELOOSE",`(?:-?(${x[k.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${x[k.PRERELEASEIDENTIFIERLOOSE]})*))`);r("BUILDIDENTIFIER",`${Z7}+`);r("BUILD",`(?:\\+(${x[k.BUILDIDENTIFIER]}(?:\\.${x[k.BUILDIDENTIFIER]})*))`);r("FULLPLAIN",`v?${x[k.MAINVERSION]}${x[k.PRERELEASE]}?${x[k.BUILD]}?`);r("FULL",`^${x[k.FULLPLAIN]}$`);r("LOOSEPLAIN",`[v=\\s]*${x[k.MAINVERSIONLOOSE]}${x[k.PRERELEASELOOSE]}?${x[k.BUILD]}?`);r("LOOSE",`^${x[k.LOOSEPLAIN]}$`);r("GTLT","((?:<|>)?=?)");r("XRANGEIDENTIFIERLOOSE",`${x[k.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);r("XRANGEIDENTIFIER",`${x[k.NUMERICIDENTIFIER]}|x|X|\\*`);r("XRANGEPLAIN",`[v=\\s]*(${x[k.XRANGEIDENTIFIER]})(?:\\.(${x[k.XRANGEIDENTIFIER]})(?:\\.(${x[k.XRANGEIDENTIFIER]})(?:${x[k.PRERELEASE]})?${x[k.BUILD]}?)?)?`);r("XRANGEPLAINLOOSE",`[v=\\s]*(${x[k.XRANGEIDENTIFIERLOOSE]})(?:\\.(${x[k.XRANGEIDENTIFIERLOOSE]})(?:\\.(${x[k.XRANGEIDENTIFIERLOOSE]})(?:${x[k.PRERELEASELOOSE]})?${x[k.BUILD]}?)?)?`);r("XRANGE",`^${x[k.GTLT]}\\s*${x[k.XRANGEPLAIN]}$`);r("XRANGELOOSE",`^${x[k.GTLT]}\\s*${x[k.XRANGEPLAINLOOSE]}$`);r("COERCEPLAIN",`(^|[^\\d])(\\d{1,${O7}})(?:\\.(\\d{1,${O7}}))?(?:\\.(\\d{1,${O7}}))?`);r("COERCE",`${x[k.COERCEPLAIN]}(?:$|[^\\d])`);r("COERCEFULL",x[k.COERCEPLAIN]+`(?:${x[k.PRERELEASE]})?(?:${x[k.BUILD]})?(?:$|[^\\d])`);r("COERCERTL",x[k.COERCE],!0);r("COERCERTLFULL",x[k.COERCEFULL],!0);r("LONETILDE","(?:~>?)");r("TILDETRIM",`(\\s*)${x[k.LONETILDE]}\\s+`,!0);_0.tildeTrimReplace="$1~";r("TILDE",`^${x[k.LONETILDE]}${x[k.XRANGEPLAIN]}$`);r("TILDELOOSE",`^${x[k.LONETILDE]}${x[k.XRANGEPLAINLOOSE]}$`);r("LONECARET","(?:\\^)");r("CARETTRIM",`(\\s*)${x[k.LONECARET]}\\s+`,!0);_0.caretTrimReplace="$1^";r("CARET",`^${x[k.LONECARET]}${x[k.XRANGEPLAIN]}$`);r("CARETLOOSE",`^${x[k.LONECARET]}${x[k.XRANGEPLAINLOOSE]}$`);r("COMPARATORLOOSE",`^${x[k.GTLT]}\\s*(${x[k.LOOSEPLAIN]})$|^$`);r("COMPARATOR",`^${x[k.GTLT]}\\s*(${x[k.FULLPLAIN]})$|^$`);r("COMPARATORTRIM",`(\\s*)${x[k.GTLT]}\\s*(${x[k.LOOSEPLAIN]}|${x[k.XRANGEPLAIN]})`,!0);_0.comparatorTrimReplace="$1$2$3";r("HYPHENRANGE",`^\\s*(${x[k.XRANGEPLAIN]})\\s+-\\s+(${x[k.XRANGEPLAIN]})\\s*$`);r("HYPHENRANGELOOSE",`^\\s*(${x[k.XRANGEPLAINLOOSE]})\\s+-\\s+(${x[k.XRANGEPLAINLOOSE]})\\s*$`);r("STAR","(<|>)?=?\\s*\\*");r("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");r("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var t2=N((ak,tW)=>{var QO=Object.freeze({loose:!0}),XO=Object.freeze({}),YO=($)=>{if(!$)return XO;if(typeof $!=="object")return QO;return $};tW.exports=YO});var L7=N((tk,HG)=>{var eW=/^[0-9]+$/,$G=($,H)=>{if(typeof $==="number"&&typeof H==="number")return $===H?0:$<H?-1:1;let J=eW.test($),Q=eW.test(H);if(J&&Q)$=+$,H=+H;return $===H?0:J&&!Q?-1:Q&&!J?1:$<H?-1:1},WO=($,H)=>$G(H,$);HG.exports={compareIdentifiers:$G,rcompareIdentifiers:WO}});var C1=N((ek,QG)=>{var e2=q9(),{MAX_LENGTH:JG,MAX_SAFE_INTEGER:$8}=G9(),{safeRe:H8,t:J8}=Y4(),GO=t2(),{compareIdentifiers:M7}=L7();class J0{constructor($,H){if(H=GO(H),$ instanceof J0)if($.loose===!!H.loose&&$.includePrerelease===!!H.includePrerelease)return $;else $=$.version;else if(typeof $!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof $}".`);if($.length>JG)throw TypeError(`version is longer than ${JG} characters`);e2("SemVer",$,H),this.options=H,this.loose=!!H.loose,this.includePrerelease=!!H.includePrerelease;let J=$.trim().match(H.loose?H8[J8.LOOSE]:H8[J8.FULL]);if(!J)throw TypeError(`Invalid Version: ${$}`);if(this.raw=$,this.major=+J[1],this.minor=+J[2],this.patch=+J[3],this.major>$8||this.major<0)throw TypeError("Invalid major version");if(this.minor>$8||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>$8||this.patch<0)throw TypeError("Invalid patch version");if(!J[4])this.prerelease=[];else this.prerelease=J[4].split(".").map((Q)=>{if(/^[0-9]+$/.test(Q)){let X=+Q;if(X>=0&&X<$8)return X}return Q});this.build=J[5]?J[5].split("."):[],this.format()}format(){if(this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length)this.version+=`-${this.prerelease.join(".")}`;return this.version}toString(){return this.version}compare($){if(e2("SemVer.compare",this.version,this.options,$),!($ instanceof J0)){if(typeof $==="string"&&$===this.version)return 0;$=new J0($,this.options)}if($.version===this.version)return 0;return this.compareMain($)||this.comparePre($)}compareMain($){if(!($ instanceof J0))$=new J0($,this.options);if(this.major<$.major)return-1;if(this.major>$.major)return 1;if(this.minor<$.minor)return-1;if(this.minor>$.minor)return 1;if(this.patch<$.patch)return-1;if(this.patch>$.patch)return 1;return 0}comparePre($){if(!($ instanceof J0))$=new J0($,this.options);if(this.prerelease.length&&!$.prerelease.length)return-1;else if(!this.prerelease.length&&$.prerelease.length)return 1;else if(!this.prerelease.length&&!$.prerelease.length)return 0;let H=0;do{let J=this.prerelease[H],Q=$.prerelease[H];if(e2("prerelease compare",H,J,Q),J===void 0&&Q===void 0)return 0;else if(Q===void 0)return 1;else if(J===void 0)return-1;else if(J===Q)continue;else return M7(J,Q)}while(++H)}compareBuild($){if(!($ instanceof J0))$=new J0($,this.options);let H=0;do{let J=this.build[H],Q=$.build[H];if(e2("build compare",H,J,Q),J===void 0&&Q===void 0)return 0;else if(Q===void 0)return 1;else if(J===void 0)return-1;else if(J===Q)continue;else return M7(J,Q)}while(++H)}inc($,H,J){if($.startsWith("pre")){if(!H&&J===!1)throw Error("invalid increment argument: identifier is empty");if(H){let Q=`-${H}`.match(this.options.loose?H8[J8.PRERELEASELOOSE]:H8[J8.PRERELEASE]);if(!Q||Q[1]!==H)throw Error(`invalid identifier: ${H}`)}}switch($){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",H,J);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",H,J);break;case"prepatch":this.prerelease.length=0,this.inc("patch",H,J),this.inc("pre",H,J);break;case"prerelease":if(this.prerelease.length===0)this.inc("patch",H,J);this.inc("pre",H,J);break;case"release":if(this.prerelease.length===0)throw Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0)this.major++;this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0)this.minor++;this.patch=0,this.prerelease=[];break;case"patch":if(this.prerelease.length===0)this.patch++;this.prerelease=[];break;case"pre":{let Q=Number(J)?1:0;if(this.prerelease.length===0)this.prerelease=[Q];else{let X=this.prerelease.length;while(--X>=0)if(typeof this.prerelease[X]==="number")this.prerelease[X]++,X=-2;if(X===-1){if(H===this.prerelease.join(".")&&J===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(Q)}}if(H){let X=[H,Q];if(J===!1)X=[H];if(M7(this.prerelease[0],H)===0){if(isNaN(this.prerelease[1]))this.prerelease=X}else this.prerelease=X}break}default:throw Error(`invalid increment argument: ${$}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}QG.exports=J0});var V$=N(($h,YG)=>{var XG=C1(),qO=($,H,J=!1)=>{if($ instanceof XG)return $;try{return new XG($,H)}catch(Q){if(!J)return null;throw Q}};YG.exports=qO});var GG=N((Hh,WG)=>{var UO=V$(),BO=($,H)=>{let J=UO($,H);return J?J.version:null};WG.exports=BO});var UG=N((Jh,qG)=>{var wO=V$(),DO=($,H)=>{let J=wO($.trim().replace(/^[=v]+/,""),H);return J?J.version:null};qG.exports=DO});var DG=N((Qh,wG)=>{var BG=C1(),VO=($,H,J,Q,X)=>{if(typeof J==="string")X=Q,Q=J,J=void 0;try{return new BG($ instanceof BG?$.version:$,J).inc(H,Q,X).version}catch(Y){return null}};wG.exports=VO});var FG=N((Xh,_G)=>{var VG=V$(),_O=($,H)=>{let J=VG($,null,!0),Q=VG(H,null,!0),X=J.compare(Q);if(X===0)return null;let Y=X>0,W=Y?J:Q,G=Y?Q:J,q=!!W.prerelease.length;if(!!G.prerelease.length&&!q){if(!G.patch&&!G.minor)return"major";if(G.compareMain(W)===0){if(G.minor&&!G.patch)return"minor";return"patch"}}let B=q?"pre":"";if(J.major!==Q.major)return B+"major";if(J.minor!==Q.minor)return B+"minor";if(J.patch!==Q.patch)return B+"patch";return"prerelease"};_G.exports=_O});var NG=N((Yh,zG)=>{var FO=C1(),zO=($,H)=>new FO($,H).major;zG.exports=zO});var RG=N((Wh,AG)=>{var NO=C1(),AO=($,H)=>new NO($,H).minor;AG.exports=AO});var jG=N((Gh,EG)=>{var RO=C1(),EO=($,H)=>new RO($,H).patch;EG.exports=EO});var ZG=N((qh,OG)=>{var jO=V$(),OO=($,H)=>{let J=jO($,H);return J&&J.prerelease.length?J.prerelease:null};OG.exports=OO});var v1=N((Uh,MG)=>{var LG=C1(),ZO=($,H,J)=>new LG($,J).compare(new LG(H,J));MG.exports=ZO});var CG=N((Bh,SG)=>{var LO=v1(),MO=($,H,J)=>LO(H,$,J);SG.exports=MO});var KG=N((wh,PG)=>{var SO=v1(),CO=($,H)=>SO($,H,!0);PG.exports=CO});var Q8=N((Dh,TG)=>{var IG=C1(),PO=($,H,J)=>{let Q=new IG($,J),X=new IG(H,J);return Q.compare(X)||Q.compareBuild(X)};TG.exports=PO});var fG=N((Vh,bG)=>{var KO=Q8(),IO=($,H)=>$.sort((J,Q)=>KO(J,Q,H));bG.exports=IO});var kG=N((_h,xG)=>{var TO=Q8(),bO=($,H)=>$.sort((J,Q)=>TO(Q,J,H));xG.exports=bO});var U9=N((Fh,hG)=>{var fO=v1(),xO=($,H,J)=>fO($,H,J)>0;hG.exports=xO});var X8=N((zh,vG)=>{var kO=v1(),hO=($,H,J)=>kO($,H,J)<0;vG.exports=hO});var S7=N((Nh,gG)=>{var vO=v1(),gO=($,H,J)=>vO($,H,J)===0;gG.exports=gO});var C7=N((Ah,yG)=>{var yO=v1(),uO=($,H,J)=>yO($,H,J)!==0;yG.exports=uO});var Y8=N((Rh,uG)=>{var mO=v1(),dO=($,H,J)=>mO($,H,J)>=0;uG.exports=dO});var W8=N((Eh,mG)=>{var cO=v1(),lO=($,H,J)=>cO($,H,J)<=0;mG.exports=lO});var P7=N((jh,dG)=>{var pO=S7(),nO=C7(),iO=U9(),sO=Y8(),oO=X8(),rO=W8(),aO=($,H,J,Q)=>{switch(H){case"===":if(typeof $==="object")$=$.version;if(typeof J==="object")J=J.version;return $===J;case"!==":if(typeof $==="object")$=$.version;if(typeof J==="object")J=J.version;return $!==J;case"":case"=":case"==":return pO($,J,Q);case"!=":return nO($,J,Q);case">":return iO($,J,Q);case">=":return sO($,J,Q);case"<":return oO($,J,Q);case"<=":return rO($,J,Q);default:throw TypeError(`Invalid operator: ${H}`)}};dG.exports=aO});var lG=N((Oh,cG)=>{var tO=C1(),eO=V$(),{safeRe:G8,t:q8}=Y4(),$Z=($,H)=>{if($ instanceof tO)return $;if(typeof $==="number")$=String($);if(typeof $!=="string")return null;H=H||{};let J=null;if(!H.rtl)J=$.match(H.includePrerelease?G8[q8.COERCEFULL]:G8[q8.COERCE]);else{let q=H.includePrerelease?G8[q8.COERCERTLFULL]:G8[q8.COERCERTL],U;while((U=q.exec($))&&(!J||J.index+J[0].length!==$.length)){if(!J||U.index+U[0].length!==J.index+J[0].length)J=U;q.lastIndex=U.index+U[1].length+U[2].length}q.lastIndex=-1}if(J===null)return null;let Q=J[2],X=J[3]||"0",Y=J[4]||"0",W=H.includePrerelease&&J[5]?`-${J[5]}`:"",G=H.includePrerelease&&J[6]?`+${J[6]}`:"";return eO(`${Q}.${X}.${Y}${W}${G}`,H)};cG.exports=$Z});var iG=N((Zh,nG)=>{class pG{constructor(){this.max=1000,this.map=new Map}get($){let H=this.map.get($);if(H===void 0)return;else return this.map.delete($),this.map.set($,H),H}delete($){return this.map.delete($)}set($,H){if(!this.delete($)&&H!==void 0){if(this.map.size>=this.max){let Q=this.map.keys().next().value;this.delete(Q)}this.map.set($,H)}return this}}nG.exports=pG});var g1=N((Lh,aG)=>{var HZ=/\s+/g;class B9{constructor($,H){if(H=QZ(H),$ instanceof B9)if($.loose===!!H.loose&&$.includePrerelease===!!H.includePrerelease)return $;else return new B9($.raw,H);if($ instanceof K7)return this.raw=$.value,this.set=[[$]],this.formatted=void 0,this;if(this.options=H,this.loose=!!H.loose,this.includePrerelease=!!H.includePrerelease,this.raw=$.trim().replace(HZ," "),this.set=this.raw.split("||").map((J)=>this.parseRange(J.trim())).filter((J)=>J.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let J=this.set[0];if(this.set=this.set.filter((Q)=>!oG(Q[0])),this.set.length===0)this.set=[J];else if(this.set.length>1){for(let Q of this.set)if(Q.length===1&&BZ(Q[0])){this.set=[Q];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let $=0;$<this.set.length;$++){if($>0)this.formatted+="||";let H=this.set[$];for(let J=0;J<H.length;J++){if(J>0)this.formatted+=" ";this.formatted+=H[J].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange($){let J=((this.options.includePrerelease&&qZ)|(this.options.loose&&UZ))+":"+$,Q=sG.get(J);if(Q)return Q;let X=this.options.loose,Y=X?I1[P1.HYPHENRANGELOOSE]:I1[P1.HYPHENRANGE];$=$.replace(Y,EZ(this.options.includePrerelease)),B1("hyphen replace",$),$=$.replace(I1[P1.COMPARATORTRIM],YZ),B1("comparator trim",$),$=$.replace(I1[P1.TILDETRIM],WZ),B1("tilde trim",$),$=$.replace(I1[P1.CARETTRIM],GZ),B1("caret trim",$);let W=$.split(" ").map((B)=>wZ(B,this.options)).join(" ").split(/\s+/).map((B)=>RZ(B,this.options));if(X)W=W.filter((B)=>{return B1("loose invalid filter",B,this.options),!!B.match(I1[P1.COMPARATORLOOSE])});B1("range list",W);let G=new Map,q=W.map((B)=>new K7(B,this.options));for(let B of q){if(oG(B))return[B];G.set(B.value,B)}if(G.size>1&&G.has(""))G.delete("");let U=[...G.values()];return sG.set(J,U),U}intersects($,H){if(!($ instanceof B9))throw TypeError("a Range is required");return this.set.some((J)=>{return rG(J,H)&&$.set.some((Q)=>{return rG(Q,H)&&J.every((X)=>{return Q.every((Y)=>{return X.intersects(Y,H)})})})})}test($){if(!$)return!1;if(typeof $==="string")try{$=new XZ($,this.options)}catch(H){return!1}for(let H=0;H<this.set.length;H++)if(jZ(this.set[H],$,this.options))return!0;return!1}}aG.exports=B9;var JZ=iG(),sG=new JZ,QZ=t2(),K7=w9(),B1=q9(),XZ=C1(),{safeRe:I1,t:P1,comparatorTrimReplace:YZ,tildeTrimReplace:WZ,caretTrimReplace:GZ}=Y4(),{FLAG_INCLUDE_PRERELEASE:qZ,FLAG_LOOSE:UZ}=G9(),oG=($)=>$.value==="<0.0.0-0",BZ=($)=>$.value==="",rG=($,H)=>{let J=!0,Q=$.slice(),X=Q.pop();while(J&&Q.length)J=Q.every((Y)=>{return X.intersects(Y,H)}),X=Q.pop();return J},wZ=($,H)=>{return $=$.replace(I1[P1.BUILD],""),B1("comp",$,H),$=_Z($,H),B1("caret",$),$=DZ($,H),B1("tildes",$),$=zZ($,H),B1("xrange",$),$=AZ($,H),B1("stars",$),$},T1=($)=>!$||$.toLowerCase()==="x"||$==="*",DZ=($,H)=>{return $.trim().split(/\s+/).map((J)=>VZ(J,H)).join(" ")},VZ=($,H)=>{let J=H.loose?I1[P1.TILDELOOSE]:I1[P1.TILDE];return $.replace(J,(Q,X,Y,W,G)=>{B1("tilde",$,Q,X,Y,W,G);let q;if(T1(X))q="";else if(T1(Y))q=`>=${X}.0.0 <${+X+1}.0.0-0`;else if(T1(W))q=`>=${X}.${Y}.0 <${X}.${+Y+1}.0-0`;else if(G)B1("replaceTilde pr",G),q=`>=${X}.${Y}.${W}-${G} <${X}.${+Y+1}.0-0`;else q=`>=${X}.${Y}.${W} <${X}.${+Y+1}.0-0`;return B1("tilde return",q),q})},_Z=($,H)=>{return $.trim().split(/\s+/).map((J)=>FZ(J,H)).join(" ")},FZ=($,H)=>{B1("caret",$,H);let J=H.loose?I1[P1.CARETLOOSE]:I1[P1.CARET],Q=H.includePrerelease?"-0":"";return $.replace(J,(X,Y,W,G,q)=>{B1("caret",$,X,Y,W,G,q);let U;if(T1(Y))U="";else if(T1(W))U=`>=${Y}.0.0${Q} <${+Y+1}.0.0-0`;else if(T1(G))if(Y==="0")U=`>=${Y}.${W}.0${Q} <${Y}.${+W+1}.0-0`;else U=`>=${Y}.${W}.0${Q} <${+Y+1}.0.0-0`;else if(q)if(B1("replaceCaret pr",q),Y==="0")if(W==="0")U=`>=${Y}.${W}.${G}-${q} <${Y}.${W}.${+G+1}-0`;else U=`>=${Y}.${W}.${G}-${q} <${Y}.${+W+1}.0-0`;else U=`>=${Y}.${W}.${G}-${q} <${+Y+1}.0.0-0`;else if(B1("no pr"),Y==="0")if(W==="0")U=`>=${Y}.${W}.${G}${Q} <${Y}.${W}.${+G+1}-0`;else U=`>=${Y}.${W}.${G}${Q} <${Y}.${+W+1}.0-0`;else U=`>=${Y}.${W}.${G} <${+Y+1}.0.0-0`;return B1("caret return",U),U})},zZ=($,H)=>{return B1("replaceXRanges",$,H),$.split(/\s+/).map((J)=>NZ(J,H)).join(" ")},NZ=($,H)=>{$=$.trim();let J=H.loose?I1[P1.XRANGELOOSE]:I1[P1.XRANGE];return $.replace(J,(Q,X,Y,W,G,q)=>{B1("xRange",$,Q,X,Y,W,G,q);let U=T1(Y),B=U||T1(W),w=B||T1(G),_=w;if(X==="="&&_)X="";if(q=H.includePrerelease?"-0":"",U)if(X===">"||X==="<")Q="<0.0.0-0";else Q="*";else if(X&&_){if(B)W=0;if(G=0,X===">")if(X=">=",B)Y=+Y+1,W=0,G=0;else W=+W+1,G=0;else if(X==="<=")if(X="<",B)Y=+Y+1;else W=+W+1;if(X==="<")q="-0";Q=`${X+Y}.${W}.${G}${q}`}else if(B)Q=`>=${Y}.0.0${q} <${+Y+1}.0.0-0`;else if(w)Q=`>=${Y}.${W}.0${q} <${Y}.${+W+1}.0-0`;return B1("xRange return",Q),Q})},AZ=($,H)=>{return B1("replaceStars",$,H),$.trim().replace(I1[P1.STAR],"")},RZ=($,H)=>{return B1("replaceGTE0",$,H),$.trim().replace(I1[H.includePrerelease?P1.GTE0PRE:P1.GTE0],"")},EZ=($)=>(H,J,Q,X,Y,W,G,q,U,B,w,_)=>{if(T1(Q))J="";else if(T1(X))J=`>=${Q}.0.0${$?"-0":""}`;else if(T1(Y))J=`>=${Q}.${X}.0${$?"-0":""}`;else if(W)J=`>=${J}`;else J=`>=${J}${$?"-0":""}`;if(T1(U))q="";else if(T1(B))q=`<${+U+1}.0.0-0`;else if(T1(w))q=`<${U}.${+B+1}.0-0`;else if(_)q=`<=${U}.${B}.${w}-${_}`;else if($)q=`<${U}.${B}.${+w+1}-0`;else q=`<=${q}`;return`${J} ${q}`.trim()},jZ=($,H,J)=>{for(let Q=0;Q<$.length;Q++)if(!$[Q].test(H))return!1;if(H.prerelease.length&&!J.includePrerelease){for(let Q=0;Q<$.length;Q++){if(B1($[Q].semver),$[Q].semver===K7.ANY)continue;if($[Q].semver.prerelease.length>0){let X=$[Q].semver;if(X.major===H.major&&X.minor===H.minor&&X.patch===H.patch)return!0}}return!1}return!0}});var w9=N((Mh,Qq)=>{var D9=Symbol("SemVer ANY");class U8{static get ANY(){return D9}constructor($,H){if(H=tG(H),$ instanceof U8)if($.loose===!!H.loose)return $;else $=$.value;if($=$.trim().split(/\s+/).join(" "),T7("comparator",$,H),this.options=H,this.loose=!!H.loose,this.parse($),this.semver===D9)this.value="";else this.value=this.operator+this.semver.version;T7("comp",this)}parse($){let H=this.options.loose?eG[$q.COMPARATORLOOSE]:eG[$q.COMPARATOR],J=$.match(H);if(!J)throw TypeError(`Invalid comparator: ${$}`);if(this.operator=J[1]!==void 0?J[1]:"",this.operator==="=")this.operator="";if(!J[2])this.semver=D9;else this.semver=new Hq(J[2],this.options.loose)}toString(){return this.value}test($){if(T7("Comparator.test",$,this.options.loose),this.semver===D9||$===D9)return!0;if(typeof $==="string")try{$=new Hq($,this.options)}catch(H){return!1}return I7($,this.operator,this.semver,this.options)}intersects($,H){if(!($ instanceof U8))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new Jq($.value,H).test(this.value)}else if($.operator===""){if($.value==="")return!0;return new Jq(this.value,H).test($.semver)}if(H=tG(H),H.includePrerelease&&(this.value==="<0.0.0-0"||$.value==="<0.0.0-0"))return!1;if(!H.includePrerelease&&(this.value.startsWith("<0.0.0")||$.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&$.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&$.operator.startsWith("<"))return!0;if(this.semver.version===$.semver.version&&this.operator.includes("=")&&$.operator.includes("="))return!0;if(I7(this.semver,"<",$.semver,H)&&this.operator.startsWith(">")&&$.operator.startsWith("<"))return!0;if(I7(this.semver,">",$.semver,H)&&this.operator.startsWith("<")&&$.operator.startsWith(">"))return!0;return!1}}Qq.exports=U8;var tG=t2(),{safeRe:eG,t:$q}=Y4(),I7=P7(),T7=q9(),Hq=C1(),Jq=g1()});var V9=N((Sh,Xq)=>{var OZ=g1(),ZZ=($,H,J)=>{try{H=new OZ(H,J)}catch(Q){return!1}return H.test($)};Xq.exports=ZZ});var Wq=N((Ch,Yq)=>{var LZ=g1(),MZ=($,H)=>new LZ($,H).set.map((J)=>J.map((Q)=>Q.value).join(" ").trim().split(" "));Yq.exports=MZ});var qq=N((Ph,Gq)=>{var SZ=C1(),CZ=g1(),PZ=($,H,J)=>{let Q=null,X=null,Y=null;try{Y=new CZ(H,J)}catch(W){return null}return $.forEach((W)=>{if(Y.test(W)){if(!Q||X.compare(W)===-1)Q=W,X=new SZ(Q,J)}}),Q};Gq.exports=PZ});var Bq=N((Kh,Uq)=>{var KZ=C1(),IZ=g1(),TZ=($,H,J)=>{let Q=null,X=null,Y=null;try{Y=new IZ(H,J)}catch(W){return null}return $.forEach((W)=>{if(Y.test(W)){if(!Q||X.compare(W)===1)Q=W,X=new KZ(Q,J)}}),Q};Uq.exports=TZ});var Vq=N((Ih,Dq)=>{var b7=C1(),bZ=g1(),wq=U9(),fZ=($,H)=>{$=new bZ($,H);let J=new b7("0.0.0");if($.test(J))return J;if(J=new b7("0.0.0-0"),$.test(J))return J;J=null;for(let Q=0;Q<$.set.length;++Q){let X=$.set[Q],Y=null;if(X.forEach((W)=>{let G=new b7(W.semver.version);switch(W.operator){case">":if(G.prerelease.length===0)G.patch++;else G.prerelease.push(0);G.raw=G.format();case"":case">=":if(!Y||wq(G,Y))Y=G;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${W.operator}`)}}),Y&&(!J||wq(J,Y)))J=Y}if(J&&$.test(J))return J;return null};Dq.exports=fZ});var Fq=N((Th,_q)=>{var xZ=g1(),kZ=($,H)=>{try{return new xZ($,H).range||"*"}catch(J){return null}};_q.exports=kZ});var B8=N((bh,Rq)=>{var hZ=C1(),Aq=w9(),{ANY:vZ}=Aq,gZ=g1(),yZ=V9(),zq=U9(),Nq=X8(),uZ=W8(),mZ=Y8(),dZ=($,H,J,Q)=>{$=new hZ($,Q),H=new gZ(H,Q);let X,Y,W,G,q;switch(J){case">":X=zq,Y=uZ,W=Nq,G=">",q=">=";break;case"<":X=Nq,Y=mZ,W=zq,G="<",q="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(yZ($,H,Q))return!1;for(let U=0;U<H.set.length;++U){let B=H.set[U],w=null,_=null;if(B.forEach((V)=>{if(V.semver===vZ)V=new Aq(">=0.0.0");if(w=w||V,_=_||V,X(V.semver,w.semver,Q))w=V;else if(W(V.semver,_.semver,Q))_=V}),w.operator===G||w.operator===q)return!1;if((!_.operator||_.operator===G)&&Y($,_.semver))return!1;else if(_.operator===q&&W($,_.semver))return!1}return!0};Rq.exports=dZ});var jq=N((fh,Eq)=>{var cZ=B8(),lZ=($,H,J)=>cZ($,H,">",J);Eq.exports=lZ});var Zq=N((xh,Oq)=>{var pZ=B8(),nZ=($,H,J)=>pZ($,H,"<",J);Oq.exports=nZ});var Sq=N((kh,Mq)=>{var Lq=g1(),iZ=($,H,J)=>{return $=new Lq($,J),H=new Lq(H,J),$.intersects(H,J)};Mq.exports=iZ});var Pq=N((hh,Cq)=>{var sZ=V9(),oZ=v1();Cq.exports=($,H,J)=>{let Q=[],X=null,Y=null,W=$.sort((B,w)=>oZ(B,w,J));for(let B of W)if(sZ(B,H,J)){if(Y=B,!X)X=B}else{if(Y)Q.push([X,Y]);Y=null,X=null}if(X)Q.push([X,null]);let G=[];for(let[B,w]of Q)if(B===w)G.push(B);else if(!w&&B===W[0])G.push("*");else if(!w)G.push(`>=${B}`);else if(B===W[0])G.push(`<=${w}`);else G.push(`${B} - ${w}`);let q=G.join(" || "),U=typeof H.raw==="string"?H.raw:String(H);return q.length<U.length?q:H}});var xq=N((vh,fq)=>{var Kq=g1(),x7=w9(),{ANY:f7}=x7,_9=V9(),k7=v1(),rZ=($,H,J={})=>{if($===H)return!0;$=new Kq($,J),H=new Kq(H,J);let Q=!1;$:for(let X of $.set){for(let Y of H.set){let W=tZ(X,Y,J);if(Q=Q||W!==null,W)continue $}if(Q)return!1}return!0},aZ=[new x7(">=0.0.0-0")],Iq=[new x7(">=0.0.0")],tZ=($,H,J)=>{if($===H)return!0;if($.length===1&&$[0].semver===f7)if(H.length===1&&H[0].semver===f7)return!0;else if(J.includePrerelease)$=aZ;else $=Iq;if(H.length===1&&H[0].semver===f7)if(J.includePrerelease)return!0;else H=Iq;let Q=new Set,X,Y;for(let V of $)if(V.operator===">"||V.operator===">=")X=Tq(X,V,J);else if(V.operator==="<"||V.operator==="<=")Y=bq(Y,V,J);else Q.add(V.semver);if(Q.size>1)return null;let W;if(X&&Y){if(W=k7(X.semver,Y.semver,J),W>0)return null;else if(W===0&&(X.operator!==">="||Y.operator!=="<="))return null}for(let V of Q){if(X&&!_9(V,String(X),J))return null;if(Y&&!_9(V,String(Y),J))return null;for(let D of H)if(!_9(V,String(D),J))return!1;return!0}let G,q,U,B,w=Y&&!J.includePrerelease&&Y.semver.prerelease.length?Y.semver:!1,_=X&&!J.includePrerelease&&X.semver.prerelease.length?X.semver:!1;if(w&&w.prerelease.length===1&&Y.operator==="<"&&w.prerelease[0]===0)w=!1;for(let V of H){if(B=B||V.operator===">"||V.operator===">=",U=U||V.operator==="<"||V.operator==="<=",X){if(_){if(V.semver.prerelease&&V.semver.prerelease.length&&V.semver.major===_.major&&V.semver.minor===_.minor&&V.semver.patch===_.patch)_=!1}if(V.operator===">"||V.operator===">="){if(G=Tq(X,V,J),G===V&&G!==X)return!1}else if(X.operator===">="&&!_9(X.semver,String(V),J))return!1}if(Y){if(w){if(V.semver.prerelease&&V.semver.prerelease.length&&V.semver.major===w.major&&V.semver.minor===w.minor&&V.semver.patch===w.patch)w=!1}if(V.operator==="<"||V.operator==="<="){if(q=bq(Y,V,J),q===V&&q!==Y)return!1}else if(Y.operator==="<="&&!_9(Y.semver,String(V),J))return!1}if(!V.operator&&(Y||X)&&W!==0)return!1}if(X&&U&&!Y&&W!==0)return!1;if(Y&&B&&!X&&W!==0)return!1;if(_||w)return!1;return!0},Tq=($,H,J)=>{if(!$)return H;let Q=k7($.semver,H.semver,J);return Q>0?$:Q<0?H:H.operator===">"&&$.operator===">="?H:$},bq=($,H,J)=>{if(!$)return H;let Q=k7($.semver,H.semver,J);return Q<0?$:Q>0?H:H.operator==="<"&&$.operator==="<="?H:$};fq.exports=rZ});var w8=N((gh,vq)=>{var h7=Y4(),kq=G9(),eZ=C1(),hq=L7(),$L=V$(),HL=GG(),JL=UG(),QL=DG(),XL=FG(),YL=NG(),WL=RG(),GL=jG(),qL=ZG(),UL=v1(),BL=CG(),wL=KG(),DL=Q8(),VL=fG(),_L=kG(),FL=U9(),zL=X8(),NL=S7(),AL=C7(),RL=Y8(),EL=W8(),jL=P7(),OL=lG(),ZL=w9(),LL=g1(),ML=V9(),SL=Wq(),CL=qq(),PL=Bq(),KL=Vq(),IL=Fq(),TL=B8(),bL=jq(),fL=Zq(),xL=Sq(),kL=Pq(),hL=xq();vq.exports={parse:$L,valid:HL,clean:JL,inc:QL,diff:XL,major:YL,minor:WL,patch:GL,prerelease:qL,compare:UL,rcompare:BL,compareLoose:wL,compareBuild:DL,sort:VL,rsort:_L,gt:FL,lt:zL,eq:NL,neq:AL,gte:RL,lte:EL,cmp:jL,coerce:OL,Comparator:ZL,Range:LL,satisfies:ML,toComparators:SL,maxSatisfying:CL,minSatisfying:PL,minVersion:KL,validRange:IL,outside:TL,gtr:bL,ltr:fL,intersects:xL,simplifyRange:kL,subset:hL,SemVer:eZ,re:h7.re,src:h7.src,tokens:h7.t,SEMVER_SPEC_VERSION:kq.SEMVER_SPEC_VERSION,RELEASE_TYPES:kq.RELEASE_TYPES,compareIdentifiers:hq.compareIdentifiers,rcompareIdentifiers:hq.rcompareIdentifiers}});var yq=N((yh,gq)=>{var vL=w8();gq.exports=vL.satisfies(process.version,">=15.7.0")});var mq=N((uh,uq)=>{var gL=w8();uq.exports=gL.satisfies(process.version,">=16.9.0")});var v7=N((mh,dq)=>{var yL=yq(),uL=mq(),mL={ec:["ES256","ES384","ES512"],rsa:["RS256","PS256","RS384","PS384","RS512","PS512"],"rsa-pss":["PS256","PS384","PS512"]},dL={ES256:"prime256v1",ES384:"secp384r1",ES512:"secp521r1"};dq.exports=function($,H){if(!$||!H)return;let J=H.asymmetricKeyType;if(!J)return;let Q=mL[J];if(!Q)throw Error(`Unknown key type "${J}".`);if(!Q.includes($))throw Error(`"alg" parameter for "${J}" key type must be one of: ${Q.join(", ")}.`);if(yL)switch(J){case"ec":let X=H.asymmetricKeyDetails.namedCurve,Y=dL[$];if(X!==Y)throw Error(`"alg" parameter "${$}" requires curve "${Y}".`);break;case"rsa-pss":if(uL){let W=parseInt($.slice(-3),10),{hashAlgorithm:G,mgf1HashAlgorithm:q,saltLength:U}=H.asymmetricKeyDetails;if(G!==`sha${W}`||q!==G)throw Error(`Invalid key for this operation, its RSA-PSS parameters do not meet the requirements of "alg" ${$}.`);if(U!==void 0&&U>W>>3)throw Error(`Invalid key for this operation, its RSA-PSS parameter saltLength does not meet the requirements of "alg" ${$}.`)}break}}});var g7=N((dh,cq)=>{var cL=w8();cq.exports=cL.satisfies(process.version,"^6.12.0 || >=8.0.0")});var nq=N((ch,pq)=>{var q1=W9(),lL=R7(),lq=E7(),pL=A7(),nL=j7(),iL=v7(),sL=g7(),oL=i2(),{KeyObject:rL,createSecretKey:aL,createPublicKey:tL}=require("crypto"),y7=["RS256","RS384","RS512"],eL=["ES256","ES384","ES512"],u7=["RS256","RS384","RS512"],$M=["HS256","HS384","HS512"];if(sL)y7.splice(y7.length,0,"PS256","PS384","PS512"),u7.splice(u7.length,0,"PS256","PS384","PS512");pq.exports=function($,H,J,Q){if(typeof J==="function"&&!Q)Q=J,J={};if(!J)J={};J=Object.assign({},J);let X;if(Q)X=Q;else X=function(B,w){if(B)throw B;return w};if(J.clockTimestamp&&typeof J.clockTimestamp!=="number")return X(new q1("clockTimestamp must be a number"));if(J.nonce!==void 0&&(typeof J.nonce!=="string"||J.nonce.trim()===""))return X(new q1("nonce must be a non-empty string"));if(J.allowInvalidAsymmetricKeyTypes!==void 0&&typeof J.allowInvalidAsymmetricKeyTypes!=="boolean")return X(new q1("allowInvalidAsymmetricKeyTypes must be a boolean"));let Y=J.clockTimestamp||Math.floor(Date.now()/1000);if(!$)return X(new q1("jwt must be provided"));if(typeof $!=="string")return X(new q1("jwt must be a string"));let W=$.split(".");if(W.length!==3)return X(new q1("jwt malformed"));let G;try{G=pL($,{complete:!0})}catch(B){return X(B)}if(!G)return X(new q1("invalid token"));let q=G.header,U;if(typeof H==="function"){if(!Q)return X(new q1("verify must be called asynchronous if secret or public key is provided as a callback"));U=H}else U=function(B,w){return w(null,H)};return U(q,function(B,w){if(B)return X(new q1("error in secret or public key callback: "+B.message));let _=W[2].trim()!=="";if(!_&&w)return X(new q1("jwt signature is required"));if(_&&!w)return X(new q1("secret or public key must be provided"));if(!_&&!J.algorithms)return X(new q1('please specify "none" in "algorithms" to verify unsigned tokens'));if(w!=null&&!(w instanceof rL))try{w=tL(w)}catch(A){try{w=aL(typeof w==="string"?Buffer.from(w):w)}catch(E){return X(new q1("secretOrPublicKey is not valid key material"))}}if(!J.algorithms)if(w.type==="secret")J.algorithms=$M;else if(["rsa","rsa-pss"].includes(w.asymmetricKeyType))J.algorithms=u7;else if(w.asymmetricKeyType==="ec")J.algorithms=eL;else J.algorithms=y7;if(J.algorithms.indexOf(G.header.alg)===-1)return X(new q1("invalid algorithm"));if(q.alg.startsWith("HS")&&w.type!=="secret")return X(new q1(`secretOrPublicKey must be a symmetric key when using ${q.alg}`));else if(/^(?:RS|PS|ES)/.test(q.alg)&&w.type!=="public")return X(new q1(`secretOrPublicKey must be an asymmetric key when using ${q.alg}`));if(!J.allowInvalidAsymmetricKeyTypes)try{iL(q.alg,w)}catch(A){return X(A)}let V;try{V=oL.verify($,G.header.alg,w)}catch(A){return X(A)}if(!V)return X(new q1("invalid signature"));let D=G.payload;if(typeof D.nbf<"u"&&!J.ignoreNotBefore){if(typeof D.nbf!=="number")return X(new q1("invalid nbf value"));if(D.nbf>Y+(J.clockTolerance||0))return X(new lL("jwt not active",new Date(D.nbf*1000)))}if(typeof D.exp<"u"&&!J.ignoreExpiration){if(typeof D.exp!=="number")return X(new q1("invalid exp value"));if(Y>=D.exp+(J.clockTolerance||0))return X(new lq("jwt expired",new Date(D.exp*1000)))}if(J.audience){let A=Array.isArray(J.audience)?J.audience:[J.audience];if(!(Array.isArray(D.aud)?D.aud:[D.aud]).some(function(M){return A.some(function(L){return L instanceof RegExp?L.test(M):L===M})}))return X(new q1("jwt audience invalid. expected: "+A.join(" or ")))}if(J.issuer){if(typeof J.issuer==="string"&&D.iss!==J.issuer||Array.isArray(J.issuer)&&J.issuer.indexOf(D.iss)===-1)return X(new q1("jwt issuer invalid. expected: "+J.issuer))}if(J.subject){if(D.sub!==J.subject)return X(new q1("jwt subject invalid. expected: "+J.subject))}if(J.jwtid){if(D.jti!==J.jwtid)return X(new q1("jwt jwtid invalid. expected: "+J.jwtid))}if(J.nonce){if(D.nonce!==J.nonce)return X(new q1("jwt nonce invalid. expected: "+J.nonce))}if(J.maxAge){if(typeof D.iat!=="number")return X(new q1("iat required when maxAge is specified"));let A=nL(J.maxAge,D.iat);if(typeof A>"u")return X(new q1('"maxAge" should be a number of seconds or string representing a timespan eg: "1d", "20h", 60'));if(Y>=A+(J.clockTolerance||0))return X(new lq("maxAge exceeded",new Date(A*1000)))}if(J.complete===!0){let A=G.signature;return X(null,{header:q,payload:D,signature:A})}return X(null,D)})}});var tq=N((lh,aq)=>{var iq=1/0,oq=9007199254740991,HM=179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,sq=NaN,JM="[object Arguments]",QM="[object Function]",XM="[object GeneratorFunction]",YM="[object String]",WM="[object Symbol]",GM=/^\s+|\s+$/g,qM=/^[-+]0x[0-9a-f]+$/i,UM=/^0b[01]+$/i,BM=/^0o[0-7]+$/i,wM=/^(?:0|[1-9]\d*)$/,DM=parseInt;function VM($,H){var J=-1,Q=$?$.length:0,X=Array(Q);while(++J<Q)X[J]=H($[J],J,$);return X}function _M($,H,J,Q){var X=$.length,Y=J+(Q?1:-1);while(Q?Y--:++Y<X)if(H($[Y],Y,$))return Y;return-1}function FM($,H,J){if(H!==H)return _M($,zM,J);var Q=J-1,X=$.length;while(++Q<X)if($[Q]===H)return Q;return-1}function zM($){return $!==$}function NM($,H){var J=-1,Q=Array($);while(++J<$)Q[J]=H(J);return Q}function AM($,H){return VM(H,function(J){return $[J]})}function RM($,H){return function(J){return $(H(J))}}var D8=Object.prototype,d7=D8.hasOwnProperty,V8=D8.toString,EM=D8.propertyIsEnumerable,jM=RM(Object.keys,Object),OM=Math.max;function ZM($,H){var J=rq($)||PM($)?NM($.length,String):[],Q=J.length,X=!!Q;for(var Y in $)if((H||d7.call($,Y))&&!(X&&(Y=="length"||MM(Y,Q))))J.push(Y);return J}function LM($){if(!SM($))return jM($);var H=[];for(var J in Object($))if(d7.call($,J)&&J!="constructor")H.push(J);return H}function MM($,H){return H=H==null?oq:H,!!H&&(typeof $=="number"||wM.test($))&&($>-1&&$%1==0&&$<H)}function SM($){var H=$&&$.constructor,J=typeof H=="function"&&H.prototype||D8;return $===J}function CM($,H,J,Q){$=c7($)?$:gM($),J=J&&!Q?kM(J):0;var X=$.length;if(J<0)J=OM(X+J,0);return bM($)?J<=X&&$.indexOf(H,J)>-1:!!X&&FM($,H,J)>-1}function PM($){return KM($)&&d7.call($,"callee")&&(!EM.call($,"callee")||V8.call($)==JM)}var rq=Array.isArray;function c7($){return $!=null&&TM($.length)&&!IM($)}function KM($){return l7($)&&c7($)}function IM($){var H=m7($)?V8.call($):"";return H==QM||H==XM}function TM($){return typeof $=="number"&&$>-1&&$%1==0&&$<=oq}function m7($){var H=typeof $;return!!$&&(H=="object"||H=="function")}function l7($){return!!$&&typeof $=="object"}function bM($){return typeof $=="string"||!rq($)&&l7($)&&V8.call($)==YM}function fM($){return typeof $=="symbol"||l7($)&&V8.call($)==WM}function xM($){if(!$)return $===0?$:0;if($=hM($),$===iq||$===-iq){var H=$<0?-1:1;return H*HM}return $===$?$:0}function kM($){var H=xM($),J=H%1;return H===H?J?H-J:H:0}function hM($){if(typeof $=="number")return $;if(fM($))return sq;if(m7($)){var H=typeof $.valueOf=="function"?$.valueOf():$;$=m7(H)?H+"":H}if(typeof $!="string")return $===0?$:+$;$=$.replace(GM,"");var J=UM.test($);return J||BM.test($)?DM($.slice(2),J?2:8):qM.test($)?sq:+$}function vM($){return c7($)?ZM($):LM($)}function gM($){return $?AM($,vM($)):[]}aq.exports=CM});var $U=N((ph,eq)=>{var yM="[object Boolean]",uM=Object.prototype,mM=uM.toString;function dM($){return $===!0||$===!1||cM($)&&mM.call($)==yM}function cM($){return!!$&&typeof $=="object"}eq.exports=dM});var YU=N((nh,XU)=>{var HU=1/0,lM=179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,JU=NaN,pM="[object Symbol]",nM=/^\s+|\s+$/g,iM=/^[-+]0x[0-9a-f]+$/i,sM=/^0b[01]+$/i,oM=/^0o[0-7]+$/i,rM=parseInt,aM=Object.prototype,tM=aM.toString;function eM($){return typeof $=="number"&&$==QS($)}function QU($){var H=typeof $;return!!$&&(H=="object"||H=="function")}function $S($){return!!$&&typeof $=="object"}function HS($){return typeof $=="symbol"||$S($)&&tM.call($)==pM}function JS($){if(!$)return $===0?$:0;if($=XS($),$===HU||$===-HU){var H=$<0?-1:1;return H*lM}return $===$?$:0}function QS($){var H=JS($),J=H%1;return H===H?J?H-J:H:0}function XS($){if(typeof $=="number")return $;if(HS($))return JU;if(QU($)){var H=typeof $.valueOf=="function"?$.valueOf():$;$=QU(H)?H+"":H}if(typeof $!="string")return $===0?$:+$;$=$.replace(nM,"");var J=sM.test($);return J||oM.test($)?rM($.slice(2),J?2:8):iM.test($)?JU:+$}XU.exports=eM});var GU=N((ih,WU)=>{var YS="[object Number]",WS=Object.prototype,GS=WS.toString;function qS($){return!!$&&typeof $=="object"}function US($){return typeof $=="number"||qS($)&&GS.call($)==YS}WU.exports=US});var wU=N((sh,BU)=>{var BS="[object Object]";function wS($){var H=!1;if($!=null&&typeof $.toString!="function")try{H=!!($+"")}catch(J){}return H}function DS($,H){return function(J){return $(H(J))}}var VS=Function.prototype,qU=Object.prototype,UU=VS.toString,_S=qU.hasOwnProperty,FS=UU.call(Object),zS=qU.toString,NS=DS(Object.getPrototypeOf,Object);function AS($){return!!$&&typeof $=="object"}function RS($){if(!AS($)||zS.call($)!=BS||wS($))return!1;var H=NS($);if(H===null)return!0;var J=_S.call(H,"constructor")&&H.constructor;return typeof J=="function"&&J instanceof J&&UU.call(J)==FS}BU.exports=RS});var VU=N((oh,DU)=>{var ES="[object String]",jS=Object.prototype,OS=jS.toString,ZS=Array.isArray;function LS($){return!!$&&typeof $=="object"}function MS($){return typeof $=="string"||!ZS($)&&LS($)&&OS.call($)==ES}DU.exports=MS});var AU=N((rh,NU)=>{var SS="Expected a function",_U=1/0,CS=179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,FU=NaN,PS="[object Symbol]",KS=/^\s+|\s+$/g,IS=/^[-+]0x[0-9a-f]+$/i,TS=/^0b[01]+$/i,bS=/^0o[0-7]+$/i,fS=parseInt,xS=Object.prototype,kS=xS.toString;function hS($,H){var J;if(typeof H!="function")throw TypeError(SS);return $=mS($),function(){if(--$>0)J=H.apply(this,arguments);if($<=1)H=void 0;return J}}function vS($){return hS(2,$)}function zU($){var H=typeof $;return!!$&&(H=="object"||H=="function")}function gS($){return!!$&&typeof $=="object"}function yS($){return typeof $=="symbol"||gS($)&&kS.call($)==PS}function uS($){if(!$)return $===0?$:0;if($=dS($),$===_U||$===-_U){var H=$<0?-1:1;return H*CS}return $===$?$:0}function mS($){var H=uS($),J=H%1;return H===H?J?H-J:H:0}function dS($){if(typeof $=="number")return $;if(yS($))return FU;if(zU($)){var H=typeof $.valueOf=="function"?$.valueOf():$;$=zU(H)?H+"":H}if(typeof $!="string")return $===0?$:+$;$=$.replace(KS,"");var J=TS.test($);return J||bS.test($)?fS($.slice(2),J?2:8):IS.test($)?FU:+$}NU.exports=vS});var CU=N((ah,SU)=>{var RU=j7(),cS=g7(),lS=v7(),EU=i2(),pS=tq(),_8=$U(),jU=YU(),p7=GU(),ZU=wU(),g0=VU(),nS=AU(),{KeyObject:iS,createSecretKey:sS,createPrivateKey:oS}=require("crypto"),LU=["RS256","RS384","RS512","ES256","ES384","ES512","HS256","HS384","HS512","none"];if(cS)LU.splice(3,0,"PS256","PS384","PS512");var rS={expiresIn:{isValid:function($){return jU($)||g0($)&&$},message:'"expiresIn" should be a number of seconds or string representing a timespan'},notBefore:{isValid:function($){return jU($)||g0($)&&$},message:'"notBefore" should be a number of seconds or string representing a timespan'},audience:{isValid:function($){return g0($)||Array.isArray($)},message:'"audience" must be a string or array'},algorithm:{isValid:pS.bind(null,LU),message:'"algorithm" must be a valid string enum value'},header:{isValid:ZU,message:'"header" must be an object'},encoding:{isValid:g0,message:'"encoding" must be a string'},issuer:{isValid:g0,message:'"issuer" must be a string'},subject:{isValid:g0,message:'"subject" must be a string'},jwtid:{isValid:g0,message:'"jwtid" must be a string'},noTimestamp:{isValid:_8,message:'"noTimestamp" must be a boolean'},keyid:{isValid:g0,message:'"keyid" must be a string'},mutatePayload:{isValid:_8,message:'"mutatePayload" must be a boolean'},allowInsecureKeySizes:{isValid:_8,message:'"allowInsecureKeySizes" must be a boolean'},allowInvalidAsymmetricKeyTypes:{isValid:_8,message:'"allowInvalidAsymmetricKeyTypes" must be a boolean'}},aS={iat:{isValid:p7,message:'"iat" should be a number of seconds'},exp:{isValid:p7,message:'"exp" should be a number of seconds'},nbf:{isValid:p7,message:'"nbf" should be a number of seconds'}};function MU($,H,J,Q){if(!ZU(J))throw Error('Expected "'+Q+'" to be a plain object.');Object.keys(J).forEach(function(X){let Y=$[X];if(!Y){if(!H)throw Error('"'+X+'" is not allowed in "'+Q+'"');return}if(!Y.isValid(J[X]))throw Error(Y.message)})}function tS($){return MU(rS,!1,$,"options")}function eS($){return MU(aS,!0,$,"payload")}var OU={audience:"aud",issuer:"iss",subject:"sub",jwtid:"jti"},$C=["expiresIn","notBefore","noTimestamp","audience","issuer","subject","jwtid"];SU.exports=function($,H,J,Q){if(typeof J==="function")Q=J,J={};else J=J||{};let X=typeof $==="object"&&!Buffer.isBuffer($),Y=Object.assign({alg:J.algorithm||"HS256",typ:X?"JWT":void 0,kid:J.keyid},J.header);function W(U){if(Q)return Q(U);throw U}if(!H&&J.algorithm!=="none")return W(Error("secretOrPrivateKey must have a value"));if(H!=null&&!(H instanceof iS))try{H=oS(H)}catch(U){try{H=sS(typeof H==="string"?Buffer.from(H):H)}catch(B){return W(Error("secretOrPrivateKey is not valid key material"))}}if(Y.alg.startsWith("HS")&&H.type!=="secret")return W(Error(`secretOrPrivateKey must be a symmetric key when using ${Y.alg}`));else if(/^(?:RS|PS|ES)/.test(Y.alg)){if(H.type!=="private")return W(Error(`secretOrPrivateKey must be an asymmetric key when using ${Y.alg}`));if(!J.allowInsecureKeySizes&&!Y.alg.startsWith("ES")&&H.asymmetricKeyDetails!==void 0&&H.asymmetricKeyDetails.modulusLength<2048)return W(Error(`secretOrPrivateKey has a minimum key size of 2048 bits for ${Y.alg}`))}if(typeof $>"u")return W(Error("payload is required"));else if(X){try{eS($)}catch(U){return W(U)}if(!J.mutatePayload)$=Object.assign({},$)}else{let U=$C.filter(function(B){return typeof J[B]<"u"});if(U.length>0)return W(Error("invalid "+U.join(",")+" option for "+typeof $+" payload"))}if(typeof $.exp<"u"&&typeof J.expiresIn<"u")return W(Error('Bad "options.expiresIn" option the payload already has an "exp" property.'));if(typeof $.nbf<"u"&&typeof J.notBefore<"u")return W(Error('Bad "options.notBefore" option the payload already has an "nbf" property.'));try{tS(J)}catch(U){return W(U)}if(!J.allowInvalidAsymmetricKeyTypes)try{lS(Y.alg,H)}catch(U){return W(U)}let G=$.iat||Math.floor(Date.now()/1000);if(J.noTimestamp)delete $.iat;else if(X)$.iat=G;if(typeof J.notBefore<"u"){try{$.nbf=RU(J.notBefore,G)}catch(U){return W(U)}if(typeof $.nbf>"u")return W(Error('"notBefore" should be a number of seconds or string representing a timespan eg: "1d", "20h", 60'))}if(typeof J.expiresIn<"u"&&typeof $==="object"){try{$.exp=RU(J.expiresIn,G)}catch(U){return W(U)}if(typeof $.exp>"u")return W(Error('"expiresIn" should be a number of seconds or string representing a timespan eg: "1d", "20h", 60'))}Object.keys(OU).forEach(function(U){let B=OU[U];if(typeof J[U]<"u"){if(typeof $[B]<"u")return W(Error('Bad "options.'+U+'" option. The payload already has an "'+B+'" property.'));$[B]=J[U]}});let q=J.encoding||"utf8";if(typeof Q==="function")Q=Q&&nS(Q),EU.createSign({header:Y,privateKey:H,payload:$,encoding:q}).once("error",Q).once("done",function(U){if(!J.allowInsecureKeySizes&&/^(?:RS|PS)/.test(Y.alg)&&U.length<256)return Q(Error(`secretOrPrivateKey has a minimum key size of 2048 bits for ${Y.alg}`));Q(null,U)});else{let U=EU.sign({header:Y,payload:$,secret:H,encoding:q});if(!J.allowInsecureKeySizes&&/^(?:RS|PS)/.test(Y.alg)&&U.length<256)throw Error(`secretOrPrivateKey has a minimum key size of 2048 bits for ${Y.alg}`);return U}}});var KU=N((th,PU)=>{PU.exports={decode:A7(),verify:nq(),sign:CU(),JsonWebTokenError:W9(),NotBeforeError:R7(),TokenExpiredError:E7()}});var GB={};L1(GB,{setGlobalTransactionManager:()=>m1,getGlobalTransactionManager:()=>M0,InMemoryTransactionManager:()=>F$,BaseTransactionManager:()=>Q0});class Q0{activeTransactions=new Map;requestTransactions=new WeakMap;isActive($){return this.activeTransactions.has($.id)}setRollbackOnly($){$.rollbackOnly=!0}createTransactionContext($){let H={id:crypto.randomUUID(),startTime:new Date,isolation:$?.isolation,timeout:$?.timeout,readOnly:$?.readOnly,savepoints:[],rollbackOnly:!1};return this.activeTransactions.set(H.id,H),H}removeTransactionContext($){this.activeTransactions.delete($.id)}getRequestTransaction($){return this.requestTransactions.get($)}setRequestTransaction($,H){this.requestTransactions.set($,H)}clearRequestTransaction($){this.requestTransactions.delete($)}async handleTransactional($,H,J,Q,X){let Y=Reflect.getMetadata("transactional",$,H);if(!Y)return Q.apply($,J);let W=X?this.getRequestTransaction(X):null;switch(Y.propagation||"REQUIRED"){case"REQUIRED":return W?this.executeInExistingTransaction(W,$,J,Q,Y):this.executeInNewTransaction($,J,Q,Y,X);case"REQUIRES_NEW":return this.executeInNewTransaction($,J,Q,Y,X);case"SUPPORTS":return W?this.executeInExistingTransaction(W,$,J,Q,Y):Q.apply($,J);case"NOT_SUPPORTED":return Q.apply($,J);case"MANDATORY":if(!W)throw Error("Transaction is mandatory but no existing transaction found");return this.executeInExistingTransaction(W,$,J,Q,Y);case"NEVER":if(W)throw Error("Transaction is not allowed but existing transaction found");return Q.apply($,J);default:return W?this.executeInExistingTransaction(W,$,J,Q,Y):this.executeInNewTransaction($,J,Q,Y,X)}}async executeInNewTransaction($,H,J,Q,X){let Y=await this.begin(Q);if(X)this.setRequestTransaction(X,Y);try{let W=await J.apply($,H);if(Y.rollbackOnly)throw await this.rollback(Y),Error("Transaction marked for rollback");return await this.commit(Y),W}catch(W){throw await this.rollback(Y),W}finally{if(X)this.clearRequestTransaction(X);this.removeTransactionContext(Y)}}async executeInExistingTransaction($,H,J,Q,X){return this.handleNestedTransaction($,H,J,Q)}async handleNestedTransaction($,H,J,Q){let X=`sp_${Date.now()}_${Math.random().toString(36).substring(2,11)}`;try{return await this.savepoint($,X),await Q.apply(H,J)}catch(Y){throw await this.rollbackToSavepoint($,X),Y}}}function m1($){N8=$}function M0(){if(!N8)N8=new F$;return N8}var F$,N8=null;var d1=Z9(()=>{F$=class F$ extends Q0{transactions=new Map;currentTransactionId=null;async begin($){let H=this.createTransactionContext($);return this.transactions.set(H.id,{operations:[],committed:!1,rolledBack:!1}),this.currentTransactionId=H.id,H}async commit($){let H=this.transactions.get($.id);if(!H)throw Error(`Transaction ${$.id} not found`);if(H.rolledBack)throw Error(`Transaction ${$.id} already rolled back`);if(H.committed=!0,typeof globalThis.mockDatabase?.commitTransaction==="function")globalThis.mockDatabase.commitTransaction($.id);if(this.transactions.delete($.id),this.removeTransactionContext($),this.currentTransactionId===$.id)this.currentTransactionId=null}async rollback($){let H=this.transactions.get($.id);if(!H)throw Error(`Transaction ${$.id} not found`);if(H.rolledBack=!0,typeof globalThis.mockDatabase?.rollbackTransaction==="function")globalThis.mockDatabase.rollbackTransaction($.id);if(this.transactions.delete($.id),this.removeTransactionContext($),this.currentTransactionId===$.id)this.currentTransactionId=null}async savepoint($,H){$.savepoints.push(H);let J=this.transactions.get($.id);if(J)J.savepoints=J.savepoints||[],J.savepoints.push(H)}async rollbackToSavepoint($,H){let J=$.savepoints.indexOf(H);if(J===-1)throw Error(`Savepoint ${H} not found`);$.savepoints=$.savepoints.slice(0,J+1);let Q=this.transactions.get($.id);if(Q&&Q.savepoints)Q.savepoints=Q.savepoints.slice(0,J+1)}}});var tA={};L1(tA,{createSimpleRequestIdMiddleware:()=>G5,createRequestContextMiddleware:()=>W5,createRateLimitMiddleware:()=>N4,createCorsMiddleware:()=>z4,createCompressionMiddleware:()=>A4,createCacheMiddleware:()=>F5,createCacheInvalidationMiddleware:()=>z5});module.exports=l1(tA);function z4($){let{origin:H="*",methods:J=["GET","POST","PUT","DELETE","PATCH","OPTIONS"],allowedHeaders:Q=["Content-Type","Authorization"],exposedHeaders:X=[],credentials:Y=!1,maxAge:W=86400}=$||{};return async(G,q)=>{let U=G.req.header("origin"),B=G.req.method,w=null;if(typeof H==="string")w=H;else if(Array.isArray(H)){if(U&&H.includes(U))w=U}else if(typeof H==="function"){if(U&&H(U))w=U}if(w)G.header("Access-Control-Allow-Origin",w);if(Y)G.header("Access-Control-Allow-Credentials","true");if(X.length>0)G.header("Access-Control-Expose-Headers",X.join(", "));if(B==="OPTIONS")return G.header("Access-Control-Allow-Methods",J.join(", ")),G.header("Access-Control-Allow-Headers",Q.join(", ")),G.header("Access-Control-Max-Age",W.toString()),G.body(null,204);await q()}}function N4($){let{windowMs:H=60000,max:J=100,keyGenerator:Q=(W)=>{return W.req.header("x-forwarded-for")||W.req.header("x-real-ip")||"unknown"}}=$,X=new Map,Y=setInterval(()=>{let W=Date.now();for(let[G,q]of X.entries())if(W>q.resetTime)X.delete(G)},H);if(typeof process<"u"&&process.on)process.on("exit",()=>clearInterval(Y));return async(W,G)=>{let q=Q(W),U=Date.now(),B=X.get(q);if(!B||U>B.resetTime)X.set(q,{count:1,resetTime:U+H}),W.header("X-RateLimit-Limit",J.toString()),W.header("X-RateLimit-Remaining",(J-1).toString()),W.header("X-RateLimit-Reset",new Date(U+H).toISOString()),await G();else if(B.count<J)B.count++,W.header("X-RateLimit-Limit",J.toString()),W.header("X-RateLimit-Remaining",(J-B.count).toString()),W.header("X-RateLimit-Reset",new Date(B.resetTime).toISOString()),await G();else{let w=Math.ceil((B.resetTime-U)/1000);return W.header("X-RateLimit-Limit",J.toString()),W.header("X-RateLimit-Remaining","0"),W.header("X-RateLimit-Reset",new Date(B.resetTime).toISOString()),W.header("Retry-After",w.toString()),W.json({error:"Too Many Requests",message:`Rate limit exceeded. Please try again in ${w} seconds.`,retryAfter:w},429)}}}function A4($){let{threshold:H=1024,level:J=6}=$||{};return async(Q,X)=>{await X();let Y=Q.res;if(!Y)return;let W=Y.headers.get("content-type")||"",G=Y.headers.get("content-length"),q=Q.req.header("accept-encoding")||"";if(!["text/","application/json","application/javascript","application/xml","application/x-www-form-urlencoded"].some((D)=>W.toLowerCase().includes(D)))return;if(G&&parseInt(G)<H)return;if(Y.headers.get("content-encoding"))return;let w=await Y.arrayBuffer();if(w.byteLength<H)return;let _=null,V=null;if(q.includes("br")&&typeof CompressionStream<"u")try{let D=new CompressionStream("deflate"),A=D.writable.getWriter();A.write(new Uint8Array(w)),A.close();let E=D.readable.getReader(),Z=[];while(!0){let{done:v,value:l}=await E.read();if(v)break;Z.push(l)}let M=Z.reduce((v,l)=>v+l.length,0),L=new Uint8Array(M),b=0;for(let v of Z)L.set(v,b),b+=v.length;_=L,V="deflate"}catch(D){_=null}if(!_&&q.includes("gzip")&&typeof CompressionStream<"u")try{let D=new CompressionStream("gzip"),A=D.writable.getWriter();A.write(new Uint8Array(w)),A.close();let E=D.readable.getReader(),Z=[];while(!0){let{done:v,value:l}=await E.read();if(v)break;Z.push(l)}let M=Z.reduce((v,l)=>v+l.length,0),L=new Uint8Array(M),b=0;for(let v of Z)L.set(v,b),b+=v.length;_=L,V="gzip"}catch(D){_=null}if(_&&V&&_.byteLength<w.byteLength){let D=new Headers(Y.headers);return D.set("content-encoding",V),D.set("content-length",_.byteLength.toString()),D.delete("content-length"),new Response(_,{status:Y.status,statusText:Y.statusText,headers:D})}}}var Q5,GX;function sA(){if(!Q5)Q5=jJ(),GX=WX();return{pino:Q5,pinoPretty:GX}}class qX{logger;constructor($){let{pino:H}=sA(),J=!0,Q=$?.pretty!==void 0?$.pretty:!0;this.logger=H({level:$?.level||"debug",transport:Q?{target:"pino-pretty",options:{colorize:!0,translateTime:"SYS:HH:MM:ss",ignore:"pid,hostname",singleLine:!1}}:void 0})}trace($,H){this.logger.trace(H||{},$)}debug($,H){this.logger.debug(H||{},$)}info($,H){this.logger.info(H||{},$)}warn($,H){this.logger.warn(H||{},$)}error($,H,J){this.logger.error({err:H,...J},$)}fatal($,H,J){this.logger.fatal({err:H,...J},$)}child($){return new X5(this.logger.child($))}}class X5{logger;constructor($){this.logger=$}trace($,H){this.logger.trace(H||{},$)}debug($,H){this.logger.debug(H||{},$)}info($,H){this.logger.info(H||{},$)}warn($,H){this.logger.warn(H||{},$)}error($,H,J){this.logger.error({err:H,...J},$)}fatal($,H,J){this.logger.fatal({err:H,...J},$)}child($){return new X5(this.logger.child($))}}function Y5($){return new qX($)}var T4=null;function oA($){return T4=Y5($),T4}function I0(){if(!T4)T4=Y5({pretty:!0,level:"debug"});return T4}function o0($){return I0().child($)}function rA(){return async($,H)=>{let J=o0({context:"request",method:$.req.method,path:$.req.path,ip:$.req.header("x-forwarded-for")||$.req.header("x-real-ip")||"unknown"}),Q=Date.now();J.info("Incoming request");try{await H();let X=Date.now()-Q;J.info("Request completed",{status:$.res.status,duration:`${X}ms`})}catch(X){let Y=Date.now()-Q;throw J.error("Request failed",X,{status:X.status||500,duration:`${Y}ms`}),X}}}function aA(){return async($,H)=>{try{await H()}catch(J){throw o0({context:"error"}).error("Unhandled error",J,{method:$.req.method,path:$.req.path,query:$.req.query(),headers:Object.fromEntries(new Map($.req.raw.headers))}),J}}}function W5($={}){let{timeout:H,logging:J=!0,requestIdGenerator:Q,logHeaders:X=[]}=$;return async(Y,W)=>{let G=Q?.()||Y.req.header("x-request-id")||void 0,q=R4(Y,{requestId:G,timeout:H}),U=J?I0().child({requestId:q.requestId}):null;if(U){let B={method:Y.req.method,path:Y.req.path,url:Y.req.url};if(X.length>0){B.headers={};for(let w of X){let _=Y.req.header(w);if(_)B.headers[w]=_}}U.info("Request started",B)}try{if(Y.header("x-request-id",q.requestId),await W(),U){let B=E4(Y);U.info("Request completed",{status:Y.res.status,duration:`${B}ms`})}}catch(B){if(U){let w=E4(Y);U.error("Request failed",B,{duration:`${w}ms`})}throw B}finally{j4(Y)}}}function G5(){return async($,H)=>{let J=$.req.header("x-request-id")||R4($).requestId;$.header("x-request-id",J);try{await H()}finally{j4($)}}}f4();function F5($){let{ttl:H,key:J,prefix:Q,includeQuery:X=!1,varyByHeaders:Y,condition:W,store:G,onlySuccess:q=!0}=$,U=r0(H);return async(B,w)=>{let _=B.req.method,V=B.req.path,D=B.req.param(),A=X?B.req.query():void 0,E="";if(Y&&Y.length>0)E=`:${Y.map((l)=>`${l}:${B.req.header(l)||""}`).join("|")}`;let Z=f1.generateKey(_,V,D,A,{key:J,prefix:Q,includeQuery:X})+E,M=G||f1.getDefaultStore(),L=await M.get(Z);if(L!==null)return B.header("X-Cache","HIT"),B.json(L);B.header("X-Cache","MISS"),await w();let b=B.res;if(q&&b.status>=300)return;try{let l=await b.clone().json();if(W&&!W(l))return;await M.set(Z,l,U)}catch{}}}function z5($,H){let J=Array.isArray($)?$:[$];return async(Q,X)=>{await X();let Y=H||f1.getDefaultStore();for(let W of J){let G=W,q=Q.req.param();if(q)for(let[U,B]of Object.entries(q))G=G.replace(`{${U}}`,String(B));await Y.deletePattern(G)}}}var NE={};L1(NE,{zodToJsonSchema:()=>V2,ZodToJsonSchemaConverter:()=>O0,OpenAPIGenerator:()=>J$});module.exports=l1(NE);var BX=Symbol("Let zodToJsonSchema decide on which parser to use");var UX={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},wX=($)=>typeof $==="string"?{...UX,name:$}:{...UX,...$};var DX=($)=>{let H=wX($),J=H.name!==void 0?[...H.basePath,H.definitionPath,H.name]:H.basePath;return{...H,flags:{hasReferencedOpenAiAnyType:!1},currentPath:J,propertyPath:void 0,seen:new Map(Object.entries(H.definitions).map(([Q,X])=>[X._def,{def:X._def,path:[...H.basePath,H.definitionPath,Q],jsonSchema:void 0}]))}};function N5($,H,J,Q){if(!Q?.errorMessages)return;if(J)$.errorMessage={...$.errorMessage,[H]:J}}function Y1($,H,J,Q,X){$[H]=J,N5($,H,Q,X)}var X2=($,H)=>{let J=0;for(;J<$.length&&J<H.length;J++)if($[J]!==H[J])break;return[($.length-J).toString(),...H.slice(J)].join("/")};var R={};L1(R,{void:()=>hR,util:()=>H1,unknown:()=>xR,union:()=>uR,undefined:()=>TR,tuple:()=>cR,transformer:()=>eR,symbol:()=>IR,string:()=>jX,strictObject:()=>yR,setErrorMap:()=>HR,set:()=>nR,record:()=>lR,quotelessJson:()=>eA,promise:()=>tR,preprocess:()=>JE,pipeline:()=>QE,ostring:()=>XE,optional:()=>$E,onumber:()=>YE,oboolean:()=>WE,objectUtil:()=>A5,object:()=>gR,number:()=>OX,nullable:()=>HE,null:()=>bR,never:()=>kR,nativeEnum:()=>aR,nan:()=>CR,map:()=>pR,makeIssue:()=>x4,literal:()=>oR,lazy:()=>sR,late:()=>MR,isValid:()=>T0,isDirty:()=>W2,isAsync:()=>K$,isAborted:()=>Y2,intersection:()=>dR,instanceof:()=>SR,getParsedType:()=>B0,getErrorMap:()=>P$,function:()=>iR,enum:()=>rR,effect:()=>eR,discriminatedUnion:()=>mR,defaultErrorMap:()=>R0,datetimeRegex:()=>AX,date:()=>KR,custom:()=>EX,coerce:()=>GE,boolean:()=>ZX,bigint:()=>PR,array:()=>vR,any:()=>fR,addIssueToContext:()=>T,ZodVoid:()=>h4,ZodUnknown:()=>b0,ZodUnion:()=>k$,ZodUndefined:()=>f$,ZodType:()=>e,ZodTuple:()=>D0,ZodTransformer:()=>a1,ZodSymbol:()=>k4,ZodString:()=>i1,ZodSet:()=>$$,ZodSchema:()=>e,ZodRecord:()=>v4,ZodReadonly:()=>d$,ZodPromise:()=>H$,ZodPipeline:()=>u4,ZodParsedType:()=>P,ZodOptional:()=>o1,ZodObject:()=>D1,ZodNumber:()=>f0,ZodNullable:()=>j0,ZodNull:()=>x$,ZodNever:()=>w0,ZodNativeEnum:()=>y$,ZodNaN:()=>y4,ZodMap:()=>g4,ZodLiteral:()=>g$,ZodLazy:()=>v$,ZodIssueCode:()=>S,ZodIntersection:()=>h$,ZodFunction:()=>T$,ZodFirstPartyTypeKind:()=>C,ZodError:()=>j1,ZodEnum:()=>k0,ZodEffects:()=>a1,ZodDiscriminatedUnion:()=>G2,ZodDefault:()=>u$,ZodDate:()=>t0,ZodCatch:()=>m$,ZodBranded:()=>q2,ZodBoolean:()=>b$,ZodBigInt:()=>x0,ZodArray:()=>s1,ZodAny:()=>e0,Schema:()=>e,ParseStatus:()=>O1,OK:()=>M1,NEVER:()=>qE,INVALID:()=>p,EMPTY_PATH:()=>JR,DIRTY:()=>a0,BRAND:()=>LR});var H1;(function($){$.assertEqual=(X)=>{};function H(X){}$.assertIs=H;function J(X){throw Error()}$.assertNever=J,$.arrayToEnum=(X)=>{let Y={};for(let W of X)Y[W]=W;return Y},$.getValidEnumValues=(X)=>{let Y=$.objectKeys(X).filter((G)=>typeof X[X[G]]!=="number"),W={};for(let G of Y)W[G]=X[G];return $.objectValues(W)},$.objectValues=(X)=>{return $.objectKeys(X).map(function(Y){return X[Y]})},$.objectKeys=typeof Object.keys==="function"?(X)=>Object.keys(X):(X)=>{let Y=[];for(let W in X)if(Object.prototype.hasOwnProperty.call(X,W))Y.push(W);return Y},$.find=(X,Y)=>{for(let W of X)if(Y(W))return W;return},$.isInteger=typeof Number.isInteger==="function"?(X)=>Number.isInteger(X):(X)=>typeof X==="number"&&Number.isFinite(X)&&Math.floor(X)===X;function Q(X,Y=" | "){return X.map((W)=>typeof W==="string"?`'${W}'`:W).join(Y)}$.joinValues=Q,$.jsonStringifyReplacer=(X,Y)=>{if(typeof Y==="bigint")return Y.toString();return Y}})(H1||(H1={}));var A5;(function($){$.mergeShapes=(H,J)=>{return{...H,...J}}})(A5||(A5={}));var P=H1.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),B0=($)=>{switch(typeof $){case"undefined":return P.undefined;case"string":return P.string;case"number":return Number.isNaN($)?P.nan:P.number;case"boolean":return P.boolean;case"function":return P.function;case"bigint":return P.bigint;case"symbol":return P.symbol;case"object":if(Array.isArray($))return P.array;if($===null)return P.null;if($.then&&typeof $.then==="function"&&$.catch&&typeof $.catch==="function")return P.promise;if(typeof Map<"u"&&$ instanceof Map)return P.map;if(typeof Set<"u"&&$ instanceof Set)return P.set;if(typeof Date<"u"&&$ instanceof Date)return P.date;return P.object;default:return P.unknown}};var S=H1.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),eA=($)=>{return JSON.stringify($,null,2).replace(/"([^"]+)":/g,"$1:")};class j1 extends Error{get errors(){return this.issues}constructor($){super();this.issues=[],this.addIssue=(J)=>{this.issues=[...this.issues,J]},this.addIssues=(J=[])=>{this.issues=[...this.issues,...J]};let H=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,H);else this.__proto__=H;this.name="ZodError",this.issues=$}format($){let H=$||function(X){return X.message},J={_errors:[]},Q=(X)=>{for(let Y of X.issues)if(Y.code==="invalid_union")Y.unionErrors.map(Q);else if(Y.code==="invalid_return_type")Q(Y.returnTypeError);else if(Y.code==="invalid_arguments")Q(Y.argumentsError);else if(Y.path.length===0)J._errors.push(H(Y));else{let W=J,G=0;while(G<Y.path.length){let q=Y.path[G];if(G!==Y.path.length-1)W[q]=W[q]||{_errors:[]};else W[q]=W[q]||{_errors:[]},W[q]._errors.push(H(Y));W=W[q],G++}}};return Q(this),J}static assert($){if(!($ instanceof j1))throw Error(`Not a ZodError: ${$}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,H1.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten($=(H)=>H.message){let H={},J=[];for(let Q of this.issues)if(Q.path.length>0){let X=Q.path[0];H[X]=H[X]||[],H[X].push($(Q))}else J.push($(Q));return{formErrors:J,fieldErrors:H}}get formErrors(){return this.flatten()}}j1.create=($)=>{return new j1($)};var $R=($,H)=>{let J;switch($.code){case S.invalid_type:if($.received===P.undefined)J="Required";else J=`Expected ${$.expected}, received ${$.received}`;break;case S.invalid_literal:J=`Invalid literal value, expected ${JSON.stringify($.expected,H1.jsonStringifyReplacer)}`;break;case S.unrecognized_keys:J=`Unrecognized key(s) in object: ${H1.joinValues($.keys,", ")}`;break;case S.invalid_union:J="Invalid input";break;case S.invalid_union_discriminator:J=`Invalid discriminator value. Expected ${H1.joinValues($.options)}`;break;case S.invalid_enum_value:J=`Invalid enum value. Expected ${H1.joinValues($.options)}, received '${$.received}'`;break;case S.invalid_arguments:J="Invalid function arguments";break;case S.invalid_return_type:J="Invalid function return type";break;case S.invalid_date:J="Invalid date";break;case S.invalid_string:if(typeof $.validation==="object")if("includes"in $.validation){if(J=`Invalid input: must include "${$.validation.includes}"`,typeof $.validation.position==="number")J=`${J} at one or more positions greater than or equal to ${$.validation.position}`}else if("startsWith"in $.validation)J=`Invalid input: must start with "${$.validation.startsWith}"`;else if("endsWith"in $.validation)J=`Invalid input: must end with "${$.validation.endsWith}"`;else H1.assertNever($.validation);else if($.validation!=="regex")J=`Invalid ${$.validation}`;else J="Invalid";break;case S.too_small:if($.type==="array")J=`Array must contain ${$.exact?"exactly":$.inclusive?"at least":"more than"} ${$.minimum} element(s)`;else if($.type==="string")J=`String must contain ${$.exact?"exactly":$.inclusive?"at least":"over"} ${$.minimum} character(s)`;else if($.type==="number")J=`Number must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${$.minimum}`;else if($.type==="bigint")J=`Number must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${$.minimum}`;else if($.type==="date")J=`Date must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${new Date(Number($.minimum))}`;else J="Invalid input";break;case S.too_big:if($.type==="array")J=`Array must contain ${$.exact?"exactly":$.inclusive?"at most":"less than"} ${$.maximum} element(s)`;else if($.type==="string")J=`String must contain ${$.exact?"exactly":$.inclusive?"at most":"under"} ${$.maximum} character(s)`;else if($.type==="number")J=`Number must be ${$.exact?"exactly":$.inclusive?"less than or equal to":"less than"} ${$.maximum}`;else if($.type==="bigint")J=`BigInt must be ${$.exact?"exactly":$.inclusive?"less than or equal to":"less than"} ${$.maximum}`;else if($.type==="date")J=`Date must be ${$.exact?"exactly":$.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number($.maximum))}`;else J="Invalid input";break;case S.custom:J="Invalid input";break;case S.invalid_intersection_types:J="Intersection results could not be merged";break;case S.not_multiple_of:J=`Number must be a multiple of ${$.multipleOf}`;break;case S.not_finite:J="Number must be finite";break;default:J=H.defaultError,H1.assertNever($)}return{message:J}},R0=$R;var VX=R0;function HR($){VX=$}function P$(){return VX}var x4=($)=>{let{data:H,path:J,errorMaps:Q,issueData:X}=$,Y=[...J,...X.path||[]],W={...X,path:Y};if(X.message!==void 0)return{...X,path:Y,message:X.message};let G="",q=Q.filter((U)=>!!U).slice().reverse();for(let U of q)G=U(W,{data:H,defaultError:G}).message;return{...X,path:Y,message:G}},JR=[];function T($,H){let J=P$(),Q=x4({issueData:H,data:$.data,path:$.path,errorMaps:[$.common.contextualErrorMap,$.schemaErrorMap,J,J===R0?void 0:R0].filter((X)=>!!X)});$.common.issues.push(Q)}class O1{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray($,H){let J=[];for(let Q of H){if(Q.status==="aborted")return p;if(Q.status==="dirty")$.dirty();J.push(Q.value)}return{status:$.value,value:J}}static async mergeObjectAsync($,H){let J=[];for(let Q of H){let X=await Q.key,Y=await Q.value;J.push({key:X,value:Y})}return O1.mergeObjectSync($,J)}static mergeObjectSync($,H){let J={};for(let Q of H){let{key:X,value:Y}=Q;if(X.status==="aborted")return p;if(Y.status==="aborted")return p;if(X.status==="dirty")$.dirty();if(Y.status==="dirty")$.dirty();if(X.value!=="__proto__"&&(typeof Y.value<"u"||Q.alwaysSet))J[X.value]=Y.value}return{status:$.value,value:J}}}var p=Object.freeze({status:"aborted"}),a0=($)=>({status:"dirty",value:$}),M1=($)=>({status:"valid",value:$}),Y2=($)=>$.status==="aborted",W2=($)=>$.status==="dirty",T0=($)=>$.status==="valid",K$=($)=>typeof Promise<"u"&&$ instanceof Promise;var y;(function($){$.errToObj=(H)=>typeof H==="string"?{message:H}:H||{},$.toString=(H)=>typeof H==="string"?H:H?.message})(y||(y={}));class r1{constructor($,H,J,Q){this._cachedPath=[],this.parent=$,this.data=H,this._path=J,this._key=Q}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var _X=($,H)=>{if(T0(H))return{success:!0,data:H.value};else{if(!$.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let J=new j1($.common.issues);return this._error=J,this._error}}}};function a($){if(!$)return{};let{errorMap:H,invalid_type_error:J,required_error:Q,description:X}=$;if(H&&(J||Q))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(H)return{errorMap:H,description:X};return{errorMap:(W,G)=>{let{message:q}=$;if(W.code==="invalid_enum_value")return{message:q??G.defaultError};if(typeof G.data>"u")return{message:q??Q??G.defaultError};if(W.code!=="invalid_type")return{message:G.defaultError};return{message:q??J??G.defaultError}},description:X}}class e{get description(){return this._def.description}_getType($){return B0($.data)}_getOrReturnCtx($,H){return H||{common:$.parent.common,data:$.data,parsedType:B0($.data),schemaErrorMap:this._def.errorMap,path:$.path,parent:$.parent}}_processInputParams($){return{status:new O1,ctx:{common:$.parent.common,data:$.data,parsedType:B0($.data),schemaErrorMap:this._def.errorMap,path:$.path,parent:$.parent}}}_parseSync($){let H=this._parse($);if(K$(H))throw Error("Synchronous parse encountered promise.");return H}_parseAsync($){let H=this._parse($);return Promise.resolve(H)}parse($,H){let J=this.safeParse($,H);if(J.success)return J.data;throw J.error}safeParse($,H){let J={common:{issues:[],async:H?.async??!1,contextualErrorMap:H?.errorMap},path:H?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:B0($)},Q=this._parseSync({data:$,path:J.path,parent:J});return _X(J,Q)}"~validate"($){let H={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:B0($)};if(!this["~standard"].async)try{let J=this._parseSync({data:$,path:[],parent:H});return T0(J)?{value:J.value}:{issues:H.common.issues}}catch(J){if(J?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;H.common={issues:[],async:!0}}return this._parseAsync({data:$,path:[],parent:H}).then((J)=>T0(J)?{value:J.value}:{issues:H.common.issues})}async parseAsync($,H){let J=await this.safeParseAsync($,H);if(J.success)return J.data;throw J.error}async safeParseAsync($,H){let J={common:{issues:[],contextualErrorMap:H?.errorMap,async:!0},path:H?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:B0($)},Q=this._parse({data:$,path:J.path,parent:J}),X=await(K$(Q)?Q:Promise.resolve(Q));return _X(J,X)}refine($,H){let J=(Q)=>{if(typeof H==="string"||typeof H>"u")return{message:H};else if(typeof H==="function")return H(Q);else return H};return this._refinement((Q,X)=>{let Y=$(Q),W=()=>X.addIssue({code:S.custom,...J(Q)});if(typeof Promise<"u"&&Y instanceof Promise)return Y.then((G)=>{if(!G)return W(),!1;else return!0});if(!Y)return W(),!1;else return!0})}refinement($,H){return this._refinement((J,Q)=>{if(!$(J))return Q.addIssue(typeof H==="function"?H(J,Q):H),!1;else return!0})}_refinement($){return new a1({schema:this,typeName:C.ZodEffects,effect:{type:"refinement",refinement:$}})}superRefine($){return this._refinement($)}constructor($){this.spa=this.safeParseAsync,this._def=$,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(H)=>this["~validate"](H)}}optional(){return o1.create(this,this._def)}nullable(){return j0.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return s1.create(this)}promise(){return H$.create(this,this._def)}or($){return k$.create([this,$],this._def)}and($){return h$.create(this,$,this._def)}transform($){return new a1({...a(this._def),schema:this,typeName:C.ZodEffects,effect:{type:"transform",transform:$}})}default($){let H=typeof $==="function"?$:()=>$;return new u$({...a(this._def),innerType:this,defaultValue:H,typeName:C.ZodDefault})}brand(){return new q2({typeName:C.ZodBranded,type:this,...a(this._def)})}catch($){let H=typeof $==="function"?$:()=>$;return new m$({...a(this._def),innerType:this,catchValue:H,typeName:C.ZodCatch})}describe($){return new this.constructor({...this._def,description:$})}pipe($){return u4.create(this,$)}readonly(){return d$.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var QR=/^c[^\s-]{8,}$/i,XR=/^[0-9a-z]+$/,YR=/^[0-9A-HJKMNP-TV-Z]{26}$/i,WR=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,GR=/^[a-z0-9_-]{21}$/i,qR=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,UR=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,BR=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,wR="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",R5,DR=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,VR=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,_R=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,FR=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,zR=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,NR=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,zX="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",AR=new RegExp(`^${zX}$`);function NX($){let H="[0-5]\\d";if($.precision)H=`${H}\\.\\d{${$.precision}}`;else if($.precision==null)H=`${H}(\\.\\d+)?`;let J=$.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${H})${J}`}function RR($){return new RegExp(`^${NX($)}$`)}function AX($){let H=`${zX}T${NX($)}`,J=[];if(J.push($.local?"Z?":"Z"),$.offset)J.push("([+-]\\d{2}:?\\d{2})");return H=`${H}(${J.join("|")})`,new RegExp(`^${H}$`)}function ER($,H){if((H==="v4"||!H)&&DR.test($))return!0;if((H==="v6"||!H)&&_R.test($))return!0;return!1}function jR($,H){if(!qR.test($))return!1;try{let[J]=$.split(".");if(!J)return!1;let Q=J.replace(/-/g,"+").replace(/_/g,"/").padEnd(J.length+(4-J.length%4)%4,"="),X=JSON.parse(atob(Q));if(typeof X!=="object"||X===null)return!1;if("typ"in X&&X?.typ!=="JWT")return!1;if(!X.alg)return!1;if(H&&X.alg!==H)return!1;return!0}catch{return!1}}function OR($,H){if((H==="v4"||!H)&&VR.test($))return!0;if((H==="v6"||!H)&&FR.test($))return!0;return!1}class i1 extends e{_parse($){if(this._def.coerce)$.data=String($.data);if(this._getType($)!==P.string){let X=this._getOrReturnCtx($);return T(X,{code:S.invalid_type,expected:P.string,received:X.parsedType}),p}let J=new O1,Q=void 0;for(let X of this._def.checks)if(X.kind==="min"){if($.data.length<X.value)Q=this._getOrReturnCtx($,Q),T(Q,{code:S.too_small,minimum:X.value,type:"string",inclusive:!0,exact:!1,message:X.message}),J.dirty()}else if(X.kind==="max"){if($.data.length>X.value)Q=this._getOrReturnCtx($,Q),T(Q,{code:S.too_big,maximum:X.value,type:"string",inclusive:!0,exact:!1,message:X.message}),J.dirty()}else if(X.kind==="length"){let Y=$.data.length>X.value,W=$.data.length<X.value;if(Y||W){if(Q=this._getOrReturnCtx($,Q),Y)T(Q,{code:S.too_big,maximum:X.value,type:"string",inclusive:!0,exact:!0,message:X.message});else if(W)T(Q,{code:S.too_small,minimum:X.value,type:"string",inclusive:!0,exact:!0,message:X.message});J.dirty()}}else if(X.kind==="email"){if(!BR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"email",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="emoji"){if(!R5)R5=new RegExp(wR,"u");if(!R5.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"emoji",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="uuid"){if(!WR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"uuid",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="nanoid"){if(!GR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"nanoid",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="cuid"){if(!QR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"cuid",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="cuid2"){if(!XR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"cuid2",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="ulid"){if(!YR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"ulid",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="url")try{new URL($.data)}catch{Q=this._getOrReturnCtx($,Q),T(Q,{validation:"url",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="regex"){if(X.regex.lastIndex=0,!X.regex.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"regex",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="trim")$.data=$.data.trim();else if(X.kind==="includes"){if(!$.data.includes(X.value,X.position))Q=this._getOrReturnCtx($,Q),T(Q,{code:S.invalid_string,validation:{includes:X.value,position:X.position},message:X.message}),J.dirty()}else if(X.kind==="toLowerCase")$.data=$.data.toLowerCase();else if(X.kind==="toUpperCase")$.data=$.data.toUpperCase();else if(X.kind==="startsWith"){if(!$.data.startsWith(X.value))Q=this._getOrReturnCtx($,Q),T(Q,{code:S.invalid_string,validation:{startsWith:X.value},message:X.message}),J.dirty()}else if(X.kind==="endsWith"){if(!$.data.endsWith(X.value))Q=this._getOrReturnCtx($,Q),T(Q,{code:S.invalid_string,validation:{endsWith:X.value},message:X.message}),J.dirty()}else if(X.kind==="datetime"){if(!AX(X).test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{code:S.invalid_string,validation:"datetime",message:X.message}),J.dirty()}else if(X.kind==="date"){if(!AR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{code:S.invalid_string,validation:"date",message:X.message}),J.dirty()}else if(X.kind==="time"){if(!RR(X).test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{code:S.invalid_string,validation:"time",message:X.message}),J.dirty()}else if(X.kind==="duration"){if(!UR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"duration",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="ip"){if(!ER($.data,X.version))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"ip",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="jwt"){if(!jR($.data,X.alg))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"jwt",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="cidr"){if(!OR($.data,X.version))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"cidr",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="base64"){if(!zR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"base64",code:S.invalid_string,message:X.message}),J.dirty()}else if(X.kind==="base64url"){if(!NR.test($.data))Q=this._getOrReturnCtx($,Q),T(Q,{validation:"base64url",code:S.invalid_string,message:X.message}),J.dirty()}else H1.assertNever(X);return{status:J.value,value:$.data}}_regex($,H,J){return this.refinement((Q)=>$.test(Q),{validation:H,code:S.invalid_string,...y.errToObj(J)})}_addCheck($){return new i1({...this._def,checks:[...this._def.checks,$]})}email($){return this._addCheck({kind:"email",...y.errToObj($)})}url($){return this._addCheck({kind:"url",...y.errToObj($)})}emoji($){return this._addCheck({kind:"emoji",...y.errToObj($)})}uuid($){return this._addCheck({kind:"uuid",...y.errToObj($)})}nanoid($){return this._addCheck({kind:"nanoid",...y.errToObj($)})}cuid($){return this._addCheck({kind:"cuid",...y.errToObj($)})}cuid2($){return this._addCheck({kind:"cuid2",...y.errToObj($)})}ulid($){return this._addCheck({kind:"ulid",...y.errToObj($)})}base64($){return this._addCheck({kind:"base64",...y.errToObj($)})}base64url($){return this._addCheck({kind:"base64url",...y.errToObj($)})}jwt($){return this._addCheck({kind:"jwt",...y.errToObj($)})}ip($){return this._addCheck({kind:"ip",...y.errToObj($)})}cidr($){return this._addCheck({kind:"cidr",...y.errToObj($)})}datetime($){if(typeof $==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:$});return this._addCheck({kind:"datetime",precision:typeof $?.precision>"u"?null:$?.precision,offset:$?.offset??!1,local:$?.local??!1,...y.errToObj($?.message)})}date($){return this._addCheck({kind:"date",message:$})}time($){if(typeof $==="string")return this._addCheck({kind:"time",precision:null,message:$});return this._addCheck({kind:"time",precision:typeof $?.precision>"u"?null:$?.precision,...y.errToObj($?.message)})}duration($){return this._addCheck({kind:"duration",...y.errToObj($)})}regex($,H){return this._addCheck({kind:"regex",regex:$,...y.errToObj(H)})}includes($,H){return this._addCheck({kind:"includes",value:$,position:H?.position,...y.errToObj(H?.message)})}startsWith($,H){return this._addCheck({kind:"startsWith",value:$,...y.errToObj(H)})}endsWith($,H){return this._addCheck({kind:"endsWith",value:$,...y.errToObj(H)})}min($,H){return this._addCheck({kind:"min",value:$,...y.errToObj(H)})}max($,H){return this._addCheck({kind:"max",value:$,...y.errToObj(H)})}length($,H){return this._addCheck({kind:"length",value:$,...y.errToObj(H)})}nonempty($){return this.min(1,y.errToObj($))}trim(){return new i1({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new i1({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new i1({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(($)=>$.kind==="datetime")}get isDate(){return!!this._def.checks.find(($)=>$.kind==="date")}get isTime(){return!!this._def.checks.find(($)=>$.kind==="time")}get isDuration(){return!!this._def.checks.find(($)=>$.kind==="duration")}get isEmail(){return!!this._def.checks.find(($)=>$.kind==="email")}get isURL(){return!!this._def.checks.find(($)=>$.kind==="url")}get isEmoji(){return!!this._def.checks.find(($)=>$.kind==="emoji")}get isUUID(){return!!this._def.checks.find(($)=>$.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(($)=>$.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(($)=>$.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(($)=>$.kind==="cuid2")}get isULID(){return!!this._def.checks.find(($)=>$.kind==="ulid")}get isIP(){return!!this._def.checks.find(($)=>$.kind==="ip")}get isCIDR(){return!!this._def.checks.find(($)=>$.kind==="cidr")}get isBase64(){return!!this._def.checks.find(($)=>$.kind==="base64")}get isBase64url(){return!!this._def.checks.find(($)=>$.kind==="base64url")}get minLength(){let $=null;for(let H of this._def.checks)if(H.kind==="min"){if($===null||H.value>$)$=H.value}return $}get maxLength(){let $=null;for(let H of this._def.checks)if(H.kind==="max"){if($===null||H.value<$)$=H.value}return $}}i1.create=($)=>{return new i1({checks:[],typeName:C.ZodString,coerce:$?.coerce??!1,...a($)})};function ZR($,H){let J=($.toString().split(".")[1]||"").length,Q=(H.toString().split(".")[1]||"").length,X=J>Q?J:Q,Y=Number.parseInt($.toFixed(X).replace(".","")),W=Number.parseInt(H.toFixed(X).replace(".",""));return Y%W/10**X}class f0 extends e{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse($){if(this._def.coerce)$.data=Number($.data);if(this._getType($)!==P.number){let X=this._getOrReturnCtx($);return T(X,{code:S.invalid_type,expected:P.number,received:X.parsedType}),p}let J=void 0,Q=new O1;for(let X of this._def.checks)if(X.kind==="int"){if(!H1.isInteger($.data))J=this._getOrReturnCtx($,J),T(J,{code:S.invalid_type,expected:"integer",received:"float",message:X.message}),Q.dirty()}else if(X.kind==="min"){if(X.inclusive?$.data<X.value:$.data<=X.value)J=this._getOrReturnCtx($,J),T(J,{code:S.too_small,minimum:X.value,type:"number",inclusive:X.inclusive,exact:!1,message:X.message}),Q.dirty()}else if(X.kind==="max"){if(X.inclusive?$.data>X.value:$.data>=X.value)J=this._getOrReturnCtx($,J),T(J,{code:S.too_big,maximum:X.value,type:"number",inclusive:X.inclusive,exact:!1,message:X.message}),Q.dirty()}else if(X.kind==="multipleOf"){if(ZR($.data,X.value)!==0)J=this._getOrReturnCtx($,J),T(J,{code:S.not_multiple_of,multipleOf:X.value,message:X.message}),Q.dirty()}else if(X.kind==="finite"){if(!Number.isFinite($.data))J=this._getOrReturnCtx($,J),T(J,{code:S.not_finite,message:X.message}),Q.dirty()}else H1.assertNever(X);return{status:Q.value,value:$.data}}gte($,H){return this.setLimit("min",$,!0,y.toString(H))}gt($,H){return this.setLimit("min",$,!1,y.toString(H))}lte($,H){return this.setLimit("max",$,!0,y.toString(H))}lt($,H){return this.setLimit("max",$,!1,y.toString(H))}setLimit($,H,J,Q){return new f0({...this._def,checks:[...this._def.checks,{kind:$,value:H,inclusive:J,message:y.toString(Q)}]})}_addCheck($){return new f0({...this._def,checks:[...this._def.checks,$]})}int($){return this._addCheck({kind:"int",message:y.toString($)})}positive($){return this._addCheck({kind:"min",value:0,inclusive:!1,message:y.toString($)})}negative($){return this._addCheck({kind:"max",value:0,inclusive:!1,message:y.toString($)})}nonpositive($){return this._addCheck({kind:"max",value:0,inclusive:!0,message:y.toString($)})}nonnegative($){return this._addCheck({kind:"min",value:0,inclusive:!0,message:y.toString($)})}multipleOf($,H){return this._addCheck({kind:"multipleOf",value:$,message:y.toString(H)})}finite($){return this._addCheck({kind:"finite",message:y.toString($)})}safe($){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:y.toString($)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:y.toString($)})}get minValue(){let $=null;for(let H of this._def.checks)if(H.kind==="min"){if($===null||H.value>$)$=H.value}return $}get maxValue(){let $=null;for(let H of this._def.checks)if(H.kind==="max"){if($===null||H.value<$)$=H.value}return $}get isInt(){return!!this._def.checks.find(($)=>$.kind==="int"||$.kind==="multipleOf"&&H1.isInteger($.value))}get isFinite(){let $=null,H=null;for(let J of this._def.checks)if(J.kind==="finite"||J.kind==="int"||J.kind==="multipleOf")return!0;else if(J.kind==="min"){if(H===null||J.value>H)H=J.value}else if(J.kind==="max"){if($===null||J.value<$)$=J.value}return Number.isFinite(H)&&Number.isFinite($)}}f0.create=($)=>{return new f0({checks:[],typeName:C.ZodNumber,coerce:$?.coerce||!1,...a($)})};class x0 extends e{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse($){if(this._def.coerce)try{$.data=BigInt($.data)}catch{return this._getInvalidInput($)}if(this._getType($)!==P.bigint)return this._getInvalidInput($);let J=void 0,Q=new O1;for(let X of this._def.checks)if(X.kind==="min"){if(X.inclusive?$.data<X.value:$.data<=X.value)J=this._getOrReturnCtx($,J),T(J,{code:S.too_small,type:"bigint",minimum:X.value,inclusive:X.inclusive,message:X.message}),Q.dirty()}else if(X.kind==="max"){if(X.inclusive?$.data>X.value:$.data>=X.value)J=this._getOrReturnCtx($,J),T(J,{code:S.too_big,type:"bigint",maximum:X.value,inclusive:X.inclusive,message:X.message}),Q.dirty()}else if(X.kind==="multipleOf"){if($.data%X.value!==BigInt(0))J=this._getOrReturnCtx($,J),T(J,{code:S.not_multiple_of,multipleOf:X.value,message:X.message}),Q.dirty()}else H1.assertNever(X);return{status:Q.value,value:$.data}}_getInvalidInput($){let H=this._getOrReturnCtx($);return T(H,{code:S.invalid_type,expected:P.bigint,received:H.parsedType}),p}gte($,H){return this.setLimit("min",$,!0,y.toString(H))}gt($,H){return this.setLimit("min",$,!1,y.toString(H))}lte($,H){return this.setLimit("max",$,!0,y.toString(H))}lt($,H){return this.setLimit("max",$,!1,y.toString(H))}setLimit($,H,J,Q){return new x0({...this._def,checks:[...this._def.checks,{kind:$,value:H,inclusive:J,message:y.toString(Q)}]})}_addCheck($){return new x0({...this._def,checks:[...this._def.checks,$]})}positive($){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:y.toString($)})}negative($){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:y.toString($)})}nonpositive($){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:y.toString($)})}nonnegative($){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:y.toString($)})}multipleOf($,H){return this._addCheck({kind:"multipleOf",value:$,message:y.toString(H)})}get minValue(){let $=null;for(let H of this._def.checks)if(H.kind==="min"){if($===null||H.value>$)$=H.value}return $}get maxValue(){let $=null;for(let H of this._def.checks)if(H.kind==="max"){if($===null||H.value<$)$=H.value}return $}}x0.create=($)=>{return new x0({checks:[],typeName:C.ZodBigInt,coerce:$?.coerce??!1,...a($)})};class b$ extends e{_parse($){if(this._def.coerce)$.data=Boolean($.data);if(this._getType($)!==P.boolean){let J=this._getOrReturnCtx($);return T(J,{code:S.invalid_type,expected:P.boolean,received:J.parsedType}),p}return M1($.data)}}b$.create=($)=>{return new b$({typeName:C.ZodBoolean,coerce:$?.coerce||!1,...a($)})};class t0 extends e{_parse($){if(this._def.coerce)$.data=new Date($.data);if(this._getType($)!==P.date){let X=this._getOrReturnCtx($);return T(X,{code:S.invalid_type,expected:P.date,received:X.parsedType}),p}if(Number.isNaN($.data.getTime())){let X=this._getOrReturnCtx($);return T(X,{code:S.invalid_date}),p}let J=new O1,Q=void 0;for(let X of this._def.checks)if(X.kind==="min"){if($.data.getTime()<X.value)Q=this._getOrReturnCtx($,Q),T(Q,{code:S.too_small,message:X.message,inclusive:!0,exact:!1,minimum:X.value,type:"date"}),J.dirty()}else if(X.kind==="max"){if($.data.getTime()>X.value)Q=this._getOrReturnCtx($,Q),T(Q,{code:S.too_big,message:X.message,inclusive:!0,exact:!1,maximum:X.value,type:"date"}),J.dirty()}else H1.assertNever(X);return{status:J.value,value:new Date($.data.getTime())}}_addCheck($){return new t0({...this._def,checks:[...this._def.checks,$]})}min($,H){return this._addCheck({kind:"min",value:$.getTime(),message:y.toString(H)})}max($,H){return this._addCheck({kind:"max",value:$.getTime(),message:y.toString(H)})}get minDate(){let $=null;for(let H of this._def.checks)if(H.kind==="min"){if($===null||H.value>$)$=H.value}return $!=null?new Date($):null}get maxDate(){let $=null;for(let H of this._def.checks)if(H.kind==="max"){if($===null||H.value<$)$=H.value}return $!=null?new Date($):null}}t0.create=($)=>{return new t0({checks:[],coerce:$?.coerce||!1,typeName:C.ZodDate,...a($)})};class k4 extends e{_parse($){if(this._getType($)!==P.symbol){let J=this._getOrReturnCtx($);return T(J,{code:S.invalid_type,expected:P.symbol,received:J.parsedType}),p}return M1($.data)}}k4.create=($)=>{return new k4({typeName:C.ZodSymbol,...a($)})};class f$ extends e{_parse($){if(this._getType($)!==P.undefined){let J=this._getOrReturnCtx($);return T(J,{code:S.invalid_type,expected:P.undefined,received:J.parsedType}),p}return M1($.data)}}f$.create=($)=>{return new f$({typeName:C.ZodUndefined,...a($)})};class x$ extends e{_parse($){if(this._getType($)!==P.null){let J=this._getOrReturnCtx($);return T(J,{code:S.invalid_type,expected:P.null,received:J.parsedType}),p}return M1($.data)}}x$.create=($)=>{return new x$({typeName:C.ZodNull,...a($)})};class e0 extends e{constructor(){super(...arguments);this._any=!0}_parse($){return M1($.data)}}e0.create=($)=>{return new e0({typeName:C.ZodAny,...a($)})};class b0 extends e{constructor(){super(...arguments);this._unknown=!0}_parse($){return M1($.data)}}b0.create=($)=>{return new b0({typeName:C.ZodUnknown,...a($)})};class w0 extends e{_parse($){let H=this._getOrReturnCtx($);return T(H,{code:S.invalid_type,expected:P.never,received:H.parsedType}),p}}w0.create=($)=>{return new w0({typeName:C.ZodNever,...a($)})};class h4 extends e{_parse($){if(this._getType($)!==P.undefined){let J=this._getOrReturnCtx($);return T(J,{code:S.invalid_type,expected:P.void,received:J.parsedType}),p}return M1($.data)}}h4.create=($)=>{return new h4({typeName:C.ZodVoid,...a($)})};class s1 extends e{_parse($){let{ctx:H,status:J}=this._processInputParams($),Q=this._def;if(H.parsedType!==P.array)return T(H,{code:S.invalid_type,expected:P.array,received:H.parsedType}),p;if(Q.exactLength!==null){let Y=H.data.length>Q.exactLength.value,W=H.data.length<Q.exactLength.value;if(Y||W)T(H,{code:Y?S.too_big:S.too_small,minimum:W?Q.exactLength.value:void 0,maximum:Y?Q.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:Q.exactLength.message}),J.dirty()}if(Q.minLength!==null){if(H.data.length<Q.minLength.value)T(H,{code:S.too_small,minimum:Q.minLength.value,type:"array",inclusive:!0,exact:!1,message:Q.minLength.message}),J.dirty()}if(Q.maxLength!==null){if(H.data.length>Q.maxLength.value)T(H,{code:S.too_big,maximum:Q.maxLength.value,type:"array",inclusive:!0,exact:!1,message:Q.maxLength.message}),J.dirty()}if(H.common.async)return Promise.all([...H.data].map((Y,W)=>{return Q.type._parseAsync(new r1(H,Y,H.path,W))})).then((Y)=>{return O1.mergeArray(J,Y)});let X=[...H.data].map((Y,W)=>{return Q.type._parseSync(new r1(H,Y,H.path,W))});return O1.mergeArray(J,X)}get element(){return this._def.type}min($,H){return new s1({...this._def,minLength:{value:$,message:y.toString(H)}})}max($,H){return new s1({...this._def,maxLength:{value:$,message:y.toString(H)}})}length($,H){return new s1({...this._def,exactLength:{value:$,message:y.toString(H)}})}nonempty($){return this.min(1,$)}}s1.create=($,H)=>{return new s1({type:$,minLength:null,maxLength:null,exactLength:null,typeName:C.ZodArray,...a(H)})};function I$($){if($ instanceof D1){let H={};for(let J in $.shape){let Q=$.shape[J];H[J]=o1.create(I$(Q))}return new D1({...$._def,shape:()=>H})}else if($ instanceof s1)return new s1({...$._def,type:I$($.element)});else if($ instanceof o1)return o1.create(I$($.unwrap()));else if($ instanceof j0)return j0.create(I$($.unwrap()));else if($ instanceof D0)return D0.create($.items.map((H)=>I$(H)));else return $}class D1 extends e{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let $=this._def.shape(),H=H1.objectKeys($);return this._cached={shape:$,keys:H},this._cached}_parse($){if(this._getType($)!==P.object){let q=this._getOrReturnCtx($);return T(q,{code:S.invalid_type,expected:P.object,received:q.parsedType}),p}let{status:J,ctx:Q}=this._processInputParams($),{shape:X,keys:Y}=this._getCached(),W=[];if(!(this._def.catchall instanceof w0&&this._def.unknownKeys==="strip")){for(let q in Q.data)if(!Y.includes(q))W.push(q)}let G=[];for(let q of Y){let U=X[q],B=Q.data[q];G.push({key:{status:"valid",value:q},value:U._parse(new r1(Q,B,Q.path,q)),alwaysSet:q in Q.data})}if(this._def.catchall instanceof w0){let q=this._def.unknownKeys;if(q==="passthrough")for(let U of W)G.push({key:{status:"valid",value:U},value:{status:"valid",value:Q.data[U]}});else if(q==="strict"){if(W.length>0)T(Q,{code:S.unrecognized_keys,keys:W}),J.dirty()}else if(q==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let q=this._def.catchall;for(let U of W){let B=Q.data[U];G.push({key:{status:"valid",value:U},value:q._parse(new r1(Q,B,Q.path,U)),alwaysSet:U in Q.data})}}if(Q.common.async)return Promise.resolve().then(async()=>{let q=[];for(let U of G){let B=await U.key,w=await U.value;q.push({key:B,value:w,alwaysSet:U.alwaysSet})}return q}).then((q)=>{return O1.mergeObjectSync(J,q)});else return O1.mergeObjectSync(J,G)}get shape(){return this._def.shape()}strict($){return y.errToObj,new D1({...this._def,unknownKeys:"strict",...$!==void 0?{errorMap:(H,J)=>{let Q=this._def.errorMap?.(H,J).message??J.defaultError;if(H.code==="unrecognized_keys")return{message:y.errToObj($).message??Q};return{message:Q}}}:{}})}strip(){return new D1({...this._def,unknownKeys:"strip"})}passthrough(){return new D1({...this._def,unknownKeys:"passthrough"})}extend($){return new D1({...this._def,shape:()=>({...this._def.shape(),...$})})}merge($){return new D1({unknownKeys:$._def.unknownKeys,catchall:$._def.catchall,shape:()=>({...this._def.shape(),...$._def.shape()}),typeName:C.ZodObject})}setKey($,H){return this.augment({[$]:H})}catchall($){return new D1({...this._def,catchall:$})}pick($){let H={};for(let J of H1.objectKeys($))if($[J]&&this.shape[J])H[J]=this.shape[J];return new D1({...this._def,shape:()=>H})}omit($){let H={};for(let J of H1.objectKeys(this.shape))if(!$[J])H[J]=this.shape[J];return new D1({...this._def,shape:()=>H})}deepPartial(){return I$(this)}partial($){let H={};for(let J of H1.objectKeys(this.shape)){let Q=this.shape[J];if($&&!$[J])H[J]=Q;else H[J]=Q.optional()}return new D1({...this._def,shape:()=>H})}required($){let H={};for(let J of H1.objectKeys(this.shape))if($&&!$[J])H[J]=this.shape[J];else{let X=this.shape[J];while(X instanceof o1)X=X._def.innerType;H[J]=X}return new D1({...this._def,shape:()=>H})}keyof(){return RX(H1.objectKeys(this.shape))}}D1.create=($,H)=>{return new D1({shape:()=>$,unknownKeys:"strip",catchall:w0.create(),typeName:C.ZodObject,...a(H)})};D1.strictCreate=($,H)=>{return new D1({shape:()=>$,unknownKeys:"strict",catchall:w0.create(),typeName:C.ZodObject,...a(H)})};D1.lazycreate=($,H)=>{return new D1({shape:$,unknownKeys:"strip",catchall:w0.create(),typeName:C.ZodObject,...a(H)})};class k$ extends e{_parse($){let{ctx:H}=this._processInputParams($),J=this._def.options;function Q(X){for(let W of X)if(W.result.status==="valid")return W.result;for(let W of X)if(W.result.status==="dirty")return H.common.issues.push(...W.ctx.common.issues),W.result;let Y=X.map((W)=>new j1(W.ctx.common.issues));return T(H,{code:S.invalid_union,unionErrors:Y}),p}if(H.common.async)return Promise.all(J.map(async(X)=>{let Y={...H,common:{...H.common,issues:[]},parent:null};return{result:await X._parseAsync({data:H.data,path:H.path,parent:Y}),ctx:Y}})).then(Q);else{let X=void 0,Y=[];for(let G of J){let q={...H,common:{...H.common,issues:[]},parent:null},U=G._parseSync({data:H.data,path:H.path,parent:q});if(U.status==="valid")return U;else if(U.status==="dirty"&&!X)X={result:U,ctx:q};if(q.common.issues.length)Y.push(q.common.issues)}if(X)return H.common.issues.push(...X.ctx.common.issues),X.result;let W=Y.map((G)=>new j1(G));return T(H,{code:S.invalid_union,unionErrors:W}),p}}get options(){return this._def.options}}k$.create=($,H)=>{return new k$({options:$,typeName:C.ZodUnion,...a(H)})};var E0=($)=>{if($ instanceof v$)return E0($.schema);else if($ instanceof a1)return E0($.innerType());else if($ instanceof g$)return[$.value];else if($ instanceof k0)return $.options;else if($ instanceof y$)return H1.objectValues($.enum);else if($ instanceof u$)return E0($._def.innerType);else if($ instanceof f$)return[void 0];else if($ instanceof x$)return[null];else if($ instanceof o1)return[void 0,...E0($.unwrap())];else if($ instanceof j0)return[null,...E0($.unwrap())];else if($ instanceof q2)return E0($.unwrap());else if($ instanceof d$)return E0($.unwrap());else if($ instanceof m$)return E0($._def.innerType);else return[]};class G2 extends e{_parse($){let{ctx:H}=this._processInputParams($);if(H.parsedType!==P.object)return T(H,{code:S.invalid_type,expected:P.object,received:H.parsedType}),p;let J=this.discriminator,Q=H.data[J],X=this.optionsMap.get(Q);if(!X)return T(H,{code:S.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[J]}),p;if(H.common.async)return X._parseAsync({data:H.data,path:H.path,parent:H});else return X._parseSync({data:H.data,path:H.path,parent:H})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create($,H,J){let Q=new Map;for(let X of H){let Y=E0(X.shape[$]);if(!Y.length)throw Error(`A discriminator value for key \`${$}\` could not be extracted from all schema options`);for(let W of Y){if(Q.has(W))throw Error(`Discriminator property ${String($)} has duplicate value ${String(W)}`);Q.set(W,X)}}return new G2({typeName:C.ZodDiscriminatedUnion,discriminator:$,options:H,optionsMap:Q,...a(J)})}}function E5($,H){let J=B0($),Q=B0(H);if($===H)return{valid:!0,data:$};else if(J===P.object&&Q===P.object){let X=H1.objectKeys(H),Y=H1.objectKeys($).filter((G)=>X.indexOf(G)!==-1),W={...$,...H};for(let G of Y){let q=E5($[G],H[G]);if(!q.valid)return{valid:!1};W[G]=q.data}return{valid:!0,data:W}}else if(J===P.array&&Q===P.array){if($.length!==H.length)return{valid:!1};let X=[];for(let Y=0;Y<$.length;Y++){let W=$[Y],G=H[Y],q=E5(W,G);if(!q.valid)return{valid:!1};X.push(q.data)}return{valid:!0,data:X}}else if(J===P.date&&Q===P.date&&+$===+H)return{valid:!0,data:$};else return{valid:!1}}class h$ extends e{_parse($){let{status:H,ctx:J}=this._processInputParams($),Q=(X,Y)=>{if(Y2(X)||Y2(Y))return p;let W=E5(X.value,Y.value);if(!W.valid)return T(J,{code:S.invalid_intersection_types}),p;if(W2(X)||W2(Y))H.dirty();return{status:H.value,value:W.data}};if(J.common.async)return Promise.all([this._def.left._parseAsync({data:J.data,path:J.path,parent:J}),this._def.right._parseAsync({data:J.data,path:J.path,parent:J})]).then(([X,Y])=>Q(X,Y));else return Q(this._def.left._parseSync({data:J.data,path:J.path,parent:J}),this._def.right._parseSync({data:J.data,path:J.path,parent:J}))}}h$.create=($,H,J)=>{return new h$({left:$,right:H,typeName:C.ZodIntersection,...a(J)})};class D0 extends e{_parse($){let{status:H,ctx:J}=this._processInputParams($);if(J.parsedType!==P.array)return T(J,{code:S.invalid_type,expected:P.array,received:J.parsedType}),p;if(J.data.length<this._def.items.length)return T(J,{code:S.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),p;if(!this._def.rest&&J.data.length>this._def.items.length)T(J,{code:S.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),H.dirty();let X=[...J.data].map((Y,W)=>{let G=this._def.items[W]||this._def.rest;if(!G)return null;return G._parse(new r1(J,Y,J.path,W))}).filter((Y)=>!!Y);if(J.common.async)return Promise.all(X).then((Y)=>{return O1.mergeArray(H,Y)});else return O1.mergeArray(H,X)}get items(){return this._def.items}rest($){return new D0({...this._def,rest:$})}}D0.create=($,H)=>{if(!Array.isArray($))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new D0({items:$,typeName:C.ZodTuple,rest:null,...a(H)})};class v4 extends e{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse($){let{status:H,ctx:J}=this._processInputParams($);if(J.parsedType!==P.object)return T(J,{code:S.invalid_type,expected:P.object,received:J.parsedType}),p;let Q=[],X=this._def.keyType,Y=this._def.valueType;for(let W in J.data)Q.push({key:X._parse(new r1(J,W,J.path,W)),value:Y._parse(new r1(J,J.data[W],J.path,W)),alwaysSet:W in J.data});if(J.common.async)return O1.mergeObjectAsync(H,Q);else return O1.mergeObjectSync(H,Q)}get element(){return this._def.valueType}static create($,H,J){if(H instanceof e)return new v4({keyType:$,valueType:H,typeName:C.ZodRecord,...a(J)});return new v4({keyType:i1.create(),valueType:$,typeName:C.ZodRecord,...a(H)})}}class g4 extends e{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse($){let{status:H,ctx:J}=this._processInputParams($);if(J.parsedType!==P.map)return T(J,{code:S.invalid_type,expected:P.map,received:J.parsedType}),p;let Q=this._def.keyType,X=this._def.valueType,Y=[...J.data.entries()].map(([W,G],q)=>{return{key:Q._parse(new r1(J,W,J.path,[q,"key"])),value:X._parse(new r1(J,G,J.path,[q,"value"]))}});if(J.common.async){let W=new Map;return Promise.resolve().then(async()=>{for(let G of Y){let q=await G.key,U=await G.value;if(q.status==="aborted"||U.status==="aborted")return p;if(q.status==="dirty"||U.status==="dirty")H.dirty();W.set(q.value,U.value)}return{status:H.value,value:W}})}else{let W=new Map;for(let G of Y){let{key:q,value:U}=G;if(q.status==="aborted"||U.status==="aborted")return p;if(q.status==="dirty"||U.status==="dirty")H.dirty();W.set(q.value,U.value)}return{status:H.value,value:W}}}}g4.create=($,H,J)=>{return new g4({valueType:H,keyType:$,typeName:C.ZodMap,...a(J)})};class $$ extends e{_parse($){let{status:H,ctx:J}=this._processInputParams($);if(J.parsedType!==P.set)return T(J,{code:S.invalid_type,expected:P.set,received:J.parsedType}),p;let Q=this._def;if(Q.minSize!==null){if(J.data.size<Q.minSize.value)T(J,{code:S.too_small,minimum:Q.minSize.value,type:"set",inclusive:!0,exact:!1,message:Q.minSize.message}),H.dirty()}if(Q.maxSize!==null){if(J.data.size>Q.maxSize.value)T(J,{code:S.too_big,maximum:Q.maxSize.value,type:"set",inclusive:!0,exact:!1,message:Q.maxSize.message}),H.dirty()}let X=this._def.valueType;function Y(G){let q=new Set;for(let U of G){if(U.status==="aborted")return p;if(U.status==="dirty")H.dirty();q.add(U.value)}return{status:H.value,value:q}}let W=[...J.data.values()].map((G,q)=>X._parse(new r1(J,G,J.path,q)));if(J.common.async)return Promise.all(W).then((G)=>Y(G));else return Y(W)}min($,H){return new $$({...this._def,minSize:{value:$,message:y.toString(H)}})}max($,H){return new $$({...this._def,maxSize:{value:$,message:y.toString(H)}})}size($,H){return this.min($,H).max($,H)}nonempty($){return this.min(1,$)}}$$.create=($,H)=>{return new $$({valueType:$,minSize:null,maxSize:null,typeName:C.ZodSet,...a(H)})};class T$ extends e{constructor(){super(...arguments);this.validate=this.implement}_parse($){let{ctx:H}=this._processInputParams($);if(H.parsedType!==P.function)return T(H,{code:S.invalid_type,expected:P.function,received:H.parsedType}),p;function J(W,G){return x4({data:W,path:H.path,errorMaps:[H.common.contextualErrorMap,H.schemaErrorMap,P$(),R0].filter((q)=>!!q),issueData:{code:S.invalid_arguments,argumentsError:G}})}function Q(W,G){return x4({data:W,path:H.path,errorMaps:[H.common.contextualErrorMap,H.schemaErrorMap,P$(),R0].filter((q)=>!!q),issueData:{code:S.invalid_return_type,returnTypeError:G}})}let X={errorMap:H.common.contextualErrorMap},Y=H.data;if(this._def.returns instanceof H$){let W=this;return M1(async function(...G){let q=new j1([]),U=await W._def.args.parseAsync(G,X).catch((_)=>{throw q.addIssue(J(G,_)),q}),B=await Reflect.apply(Y,this,U);return await W._def.returns._def.type.parseAsync(B,X).catch((_)=>{throw q.addIssue(Q(B,_)),q})})}else{let W=this;return M1(function(...G){let q=W._def.args.safeParse(G,X);if(!q.success)throw new j1([J(G,q.error)]);let U=Reflect.apply(Y,this,q.data),B=W._def.returns.safeParse(U,X);if(!B.success)throw new j1([Q(U,B.error)]);return B.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...$){return new T$({...this._def,args:D0.create($).rest(b0.create())})}returns($){return new T$({...this._def,returns:$})}implement($){return this.parse($)}strictImplement($){return this.parse($)}static create($,H,J){return new T$({args:$?$:D0.create([]).rest(b0.create()),returns:H||b0.create(),typeName:C.ZodFunction,...a(J)})}}class v$ extends e{get schema(){return this._def.getter()}_parse($){let{ctx:H}=this._processInputParams($);return this._def.getter()._parse({data:H.data,path:H.path,parent:H})}}v$.create=($,H)=>{return new v$({getter:$,typeName:C.ZodLazy,...a(H)})};class g$ extends e{_parse($){if($.data!==this._def.value){let H=this._getOrReturnCtx($);return T(H,{received:H.data,code:S.invalid_literal,expected:this._def.value}),p}return{status:"valid",value:$.data}}get value(){return this._def.value}}g$.create=($,H)=>{return new g$({value:$,typeName:C.ZodLiteral,...a(H)})};function RX($,H){return new k0({values:$,typeName:C.ZodEnum,...a(H)})}class k0 extends e{_parse($){if(typeof $.data!=="string"){let H=this._getOrReturnCtx($),J=this._def.values;return T(H,{expected:H1.joinValues(J),received:H.parsedType,code:S.invalid_type}),p}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has($.data)){let H=this._getOrReturnCtx($),J=this._def.values;return T(H,{received:H.data,code:S.invalid_enum_value,options:J}),p}return M1($.data)}get options(){return this._def.values}get enum(){let $={};for(let H of this._def.values)$[H]=H;return $}get Values(){let $={};for(let H of this._def.values)$[H]=H;return $}get Enum(){let $={};for(let H of this._def.values)$[H]=H;return $}extract($,H=this._def){return k0.create($,{...this._def,...H})}exclude($,H=this._def){return k0.create(this.options.filter((J)=>!$.includes(J)),{...this._def,...H})}}k0.create=RX;class y$ extends e{_parse($){let H=H1.getValidEnumValues(this._def.values),J=this._getOrReturnCtx($);if(J.parsedType!==P.string&&J.parsedType!==P.number){let Q=H1.objectValues(H);return T(J,{expected:H1.joinValues(Q),received:J.parsedType,code:S.invalid_type}),p}if(!this._cache)this._cache=new Set(H1.getValidEnumValues(this._def.values));if(!this._cache.has($.data)){let Q=H1.objectValues(H);return T(J,{received:J.data,code:S.invalid_enum_value,options:Q}),p}return M1($.data)}get enum(){return this._def.values}}y$.create=($,H)=>{return new y$({values:$,typeName:C.ZodNativeEnum,...a(H)})};class H$ extends e{unwrap(){return this._def.type}_parse($){let{ctx:H}=this._processInputParams($);if(H.parsedType!==P.promise&&H.common.async===!1)return T(H,{code:S.invalid_type,expected:P.promise,received:H.parsedType}),p;let J=H.parsedType===P.promise?H.data:Promise.resolve(H.data);return M1(J.then((Q)=>{return this._def.type.parseAsync(Q,{path:H.path,errorMap:H.common.contextualErrorMap})}))}}H$.create=($,H)=>{return new H$({type:$,typeName:C.ZodPromise,...a(H)})};class a1 extends e{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===C.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse($){let{status:H,ctx:J}=this._processInputParams($),Q=this._def.effect||null,X={addIssue:(Y)=>{if(T(J,Y),Y.fatal)H.abort();else H.dirty()},get path(){return J.path}};if(X.addIssue=X.addIssue.bind(X),Q.type==="preprocess"){let Y=Q.transform(J.data,X);if(J.common.async)return Promise.resolve(Y).then(async(W)=>{if(H.value==="aborted")return p;let G=await this._def.schema._parseAsync({data:W,path:J.path,parent:J});if(G.status==="aborted")return p;if(G.status==="dirty")return a0(G.value);if(H.value==="dirty")return a0(G.value);return G});else{if(H.value==="aborted")return p;let W=this._def.schema._parseSync({data:Y,path:J.path,parent:J});if(W.status==="aborted")return p;if(W.status==="dirty")return a0(W.value);if(H.value==="dirty")return a0(W.value);return W}}if(Q.type==="refinement"){let Y=(W)=>{let G=Q.refinement(W,X);if(J.common.async)return Promise.resolve(G);if(G instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return W};if(J.common.async===!1){let W=this._def.schema._parseSync({data:J.data,path:J.path,parent:J});if(W.status==="aborted")return p;if(W.status==="dirty")H.dirty();return Y(W.value),{status:H.value,value:W.value}}else return this._def.schema._parseAsync({data:J.data,path:J.path,parent:J}).then((W)=>{if(W.status==="aborted")return p;if(W.status==="dirty")H.dirty();return Y(W.value).then(()=>{return{status:H.value,value:W.value}})})}if(Q.type==="transform")if(J.common.async===!1){let Y=this._def.schema._parseSync({data:J.data,path:J.path,parent:J});if(!T0(Y))return p;let W=Q.transform(Y.value,X);if(W instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:H.value,value:W}}else return this._def.schema._parseAsync({data:J.data,path:J.path,parent:J}).then((Y)=>{if(!T0(Y))return p;return Promise.resolve(Q.transform(Y.value,X)).then((W)=>({status:H.value,value:W}))});H1.assertNever(Q)}}a1.create=($,H,J)=>{return new a1({schema:$,typeName:C.ZodEffects,effect:H,...a(J)})};a1.createWithPreprocess=($,H,J)=>{return new a1({schema:H,effect:{type:"preprocess",transform:$},typeName:C.ZodEffects,...a(J)})};class o1 extends e{_parse($){if(this._getType($)===P.undefined)return M1(void 0);return this._def.innerType._parse($)}unwrap(){return this._def.innerType}}o1.create=($,H)=>{return new o1({innerType:$,typeName:C.ZodOptional,...a(H)})};class j0 extends e{_parse($){if(this._getType($)===P.null)return M1(null);return this._def.innerType._parse($)}unwrap(){return this._def.innerType}}j0.create=($,H)=>{return new j0({innerType:$,typeName:C.ZodNullable,...a(H)})};class u$ extends e{_parse($){let{ctx:H}=this._processInputParams($),J=H.data;if(H.parsedType===P.undefined)J=this._def.defaultValue();return this._def.innerType._parse({data:J,path:H.path,parent:H})}removeDefault(){return this._def.innerType}}u$.create=($,H)=>{return new u$({innerType:$,typeName:C.ZodDefault,defaultValue:typeof H.default==="function"?H.default:()=>H.default,...a(H)})};class m$ extends e{_parse($){let{ctx:H}=this._processInputParams($),J={...H,common:{...H.common,issues:[]}},Q=this._def.innerType._parse({data:J.data,path:J.path,parent:{...J}});if(K$(Q))return Q.then((X)=>{return{status:"valid",value:X.status==="valid"?X.value:this._def.catchValue({get error(){return new j1(J.common.issues)},input:J.data})}});else return{status:"valid",value:Q.status==="valid"?Q.value:this._def.catchValue({get error(){return new j1(J.common.issues)},input:J.data})}}removeCatch(){return this._def.innerType}}m$.create=($,H)=>{return new m$({innerType:$,typeName:C.ZodCatch,catchValue:typeof H.catch==="function"?H.catch:()=>H.catch,...a(H)})};class y4 extends e{_parse($){if(this._getType($)!==P.nan){let J=this._getOrReturnCtx($);return T(J,{code:S.invalid_type,expected:P.nan,received:J.parsedType}),p}return{status:"valid",value:$.data}}}y4.create=($)=>{return new y4({typeName:C.ZodNaN,...a($)})};var LR=Symbol("zod_brand");class q2 extends e{_parse($){let{ctx:H}=this._processInputParams($),J=H.data;return this._def.type._parse({data:J,path:H.path,parent:H})}unwrap(){return this._def.type}}class u4 extends e{_parse($){let{status:H,ctx:J}=this._processInputParams($);if(J.common.async)return(async()=>{let X=await this._def.in._parseAsync({data:J.data,path:J.path,parent:J});if(X.status==="aborted")return p;if(X.status==="dirty")return H.dirty(),a0(X.value);else return this._def.out._parseAsync({data:X.value,path:J.path,parent:J})})();else{let Q=this._def.in._parseSync({data:J.data,path:J.path,parent:J});if(Q.status==="aborted")return p;if(Q.status==="dirty")return H.dirty(),{status:"dirty",value:Q.value};else return this._def.out._parseSync({data:Q.value,path:J.path,parent:J})}}static create($,H){return new u4({in:$,out:H,typeName:C.ZodPipeline})}}class d$ extends e{_parse($){let H=this._def.innerType._parse($),J=(Q)=>{if(T0(Q))Q.value=Object.freeze(Q.value);return Q};return K$(H)?H.then((Q)=>J(Q)):J(H)}unwrap(){return this._def.innerType}}d$.create=($,H)=>{return new d$({innerType:$,typeName:C.ZodReadonly,...a(H)})};function FX($,H){let J=typeof $==="function"?$(H):typeof $==="string"?{message:$}:$;return typeof J==="string"?{message:J}:J}function EX($,H={},J){if($)return e0.create().superRefine((Q,X)=>{let Y=$(Q);if(Y instanceof Promise)return Y.then((W)=>{if(!W){let G=FX(H,Q),q=G.fatal??J??!0;X.addIssue({code:"custom",...G,fatal:q})}});if(!Y){let W=FX(H,Q),G=W.fatal??J??!0;X.addIssue({code:"custom",...W,fatal:G})}return});return e0.create()}var MR={object:D1.lazycreate},C;(function($){$.ZodString="ZodString",$.ZodNumber="ZodNumber",$.ZodNaN="ZodNaN",$.ZodBigInt="ZodBigInt",$.ZodBoolean="ZodBoolean",$.ZodDate="ZodDate",$.ZodSymbol="ZodSymbol",$.ZodUndefined="ZodUndefined",$.ZodNull="ZodNull",$.ZodAny="ZodAny",$.ZodUnknown="ZodUnknown",$.ZodNever="ZodNever",$.ZodVoid="ZodVoid",$.ZodArray="ZodArray",$.ZodObject="ZodObject",$.ZodUnion="ZodUnion",$.ZodDiscriminatedUnion="ZodDiscriminatedUnion",$.ZodIntersection="ZodIntersection",$.ZodTuple="ZodTuple",$.ZodRecord="ZodRecord",$.ZodMap="ZodMap",$.ZodSet="ZodSet",$.ZodFunction="ZodFunction",$.ZodLazy="ZodLazy",$.ZodLiteral="ZodLiteral",$.ZodEnum="ZodEnum",$.ZodEffects="ZodEffects",$.ZodNativeEnum="ZodNativeEnum",$.ZodOptional="ZodOptional",$.ZodNullable="ZodNullable",$.ZodDefault="ZodDefault",$.ZodCatch="ZodCatch",$.ZodPromise="ZodPromise",$.ZodBranded="ZodBranded",$.ZodPipeline="ZodPipeline",$.ZodReadonly="ZodReadonly"})(C||(C={}));var SR=($,H={message:`Input not instance of ${$.name}`})=>EX((J)=>J instanceof $,H),jX=i1.create,OX=f0.create,CR=y4.create,PR=x0.create,ZX=b$.create,KR=t0.create,IR=k4.create,TR=f$.create,bR=x$.create,fR=e0.create,xR=b0.create,kR=w0.create,hR=h4.create,vR=s1.create,gR=D1.create,yR=D1.strictCreate,uR=k$.create,mR=G2.create,dR=h$.create,cR=D0.create,lR=v4.create,pR=g4.create,nR=$$.create,iR=T$.create,sR=v$.create,oR=g$.create,rR=k0.create,aR=y$.create,tR=H$.create,eR=a1.create,$E=o1.create,HE=j0.create,JE=a1.createWithPreprocess,QE=u4.create,XE=()=>jX().optional(),YE=()=>OX().optional(),WE=()=>ZX().optional(),GE={string:($)=>i1.create({...$,coerce:!0}),number:($)=>f0.create({...$,coerce:!0}),boolean:($)=>b$.create({...$,coerce:!0}),bigint:($)=>x0.create({...$,coerce:!0}),date:($)=>t0.create({...$,coerce:!0})};var qE=p;function w1($){if($.target!=="openAi")return{};let H=[...$.basePath,$.definitionPath,$.openAiAnyTypeName];return $.flags.hasReferencedOpenAiAnyType=!0,{$ref:$.$refStrategy==="relative"?X2(H,$.currentPath):H.join("/")}}function LX($,H){let J={type:"array"};if($.type?._def&&$.type?._def?.typeName!==C.ZodAny)J.items=n($.type._def,{...H,currentPath:[...H.currentPath,"items"]});if($.minLength)Y1(J,"minItems",$.minLength.value,$.minLength.message,H);if($.maxLength)Y1(J,"maxItems",$.maxLength.value,$.maxLength.message,H);if($.exactLength)Y1(J,"minItems",$.exactLength.value,$.exactLength.message,H),Y1(J,"maxItems",$.exactLength.value,$.exactLength.message,H);return J}function MX($,H){let J={type:"integer",format:"int64"};if(!$.checks)return J;for(let Q of $.checks)switch(Q.kind){case"min":if(H.target==="jsonSchema7")if(Q.inclusive)Y1(J,"minimum",Q.value,Q.message,H);else Y1(J,"exclusiveMinimum",Q.value,Q.message,H);else{if(!Q.inclusive)J.exclusiveMinimum=!0;Y1(J,"minimum",Q.value,Q.message,H)}break;case"max":if(H.target==="jsonSchema7")if(Q.inclusive)Y1(J,"maximum",Q.value,Q.message,H);else Y1(J,"exclusiveMaximum",Q.value,Q.message,H);else{if(!Q.inclusive)J.exclusiveMaximum=!0;Y1(J,"maximum",Q.value,Q.message,H)}break;case"multipleOf":Y1(J,"multipleOf",Q.value,Q.message,H);break}return J}function SX(){return{type:"boolean"}}function U2($,H){return n($.type._def,H)}var CX=($,H)=>{return n($.innerType._def,H)};function j5($,H,J){let Q=J??H.dateStrategy;if(Array.isArray(Q))return{anyOf:Q.map((X,Y)=>j5($,H,X))};switch(Q){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return UE($,H)}}var UE=($,H)=>{let J={type:"integer",format:"unix-time"};if(H.target==="openApi3")return J;for(let Q of $.checks)switch(Q.kind){case"min":Y1(J,"minimum",Q.value,Q.message,H);break;case"max":Y1(J,"maximum",Q.value,Q.message,H);break}return J};function PX($,H){return{...n($.innerType._def,H),default:$.defaultValue()}}function KX($,H){return H.effectStrategy==="input"?n($.schema._def,H):w1(H)}function IX($){return{type:"string",enum:Array.from($.values)}}var BE=($)=>{if("type"in $&&$.type==="string")return!1;return"allOf"in $};function TX($,H){let J=[n($.left._def,{...H,currentPath:[...H.currentPath,"allOf","0"]}),n($.right._def,{...H,currentPath:[...H.currentPath,"allOf","1"]})].filter((Y)=>!!Y),Q=H.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,X=[];return J.forEach((Y)=>{if(BE(Y)){if(X.push(...Y.allOf),Y.unevaluatedProperties===void 0)Q=void 0}else{let W=Y;if("additionalProperties"in Y&&Y.additionalProperties===!1){let{additionalProperties:G,...q}=Y;W=q}else Q=void 0;X.push(W)}}),X.length?{allOf:X,...Q}:void 0}function bX($,H){let J=typeof $.value;if(J!=="bigint"&&J!=="number"&&J!=="boolean"&&J!=="string")return{type:Array.isArray($.value)?"array":"object"};if(H.target==="openApi3")return{type:J==="bigint"?"integer":J,enum:[$.value]};return{type:J==="bigint"?"integer":J,const:$.value}}var O5=void 0,t1={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>{if(O5===void 0)O5=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u");return O5},uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function B2($,H){let J={type:"string"};if($.checks)for(let Q of $.checks)switch(Q.kind){case"min":Y1(J,"minLength",typeof J.minLength==="number"?Math.max(J.minLength,Q.value):Q.value,Q.message,H);break;case"max":Y1(J,"maxLength",typeof J.maxLength==="number"?Math.min(J.maxLength,Q.value):Q.value,Q.message,H);break;case"email":switch(H.emailStrategy){case"format:email":e1(J,"email",Q.message,H);break;case"format:idn-email":e1(J,"idn-email",Q.message,H);break;case"pattern:zod":K1(J,t1.email,Q.message,H);break}break;case"url":e1(J,"uri",Q.message,H);break;case"uuid":e1(J,"uuid",Q.message,H);break;case"regex":K1(J,Q.regex,Q.message,H);break;case"cuid":K1(J,t1.cuid,Q.message,H);break;case"cuid2":K1(J,t1.cuid2,Q.message,H);break;case"startsWith":K1(J,RegExp(`^${Z5(Q.value,H)}`),Q.message,H);break;case"endsWith":K1(J,RegExp(`${Z5(Q.value,H)}$`),Q.message,H);break;case"datetime":e1(J,"date-time",Q.message,H);break;case"date":e1(J,"date",Q.message,H);break;case"time":e1(J,"time",Q.message,H);break;case"duration":e1(J,"duration",Q.message,H);break;case"length":Y1(J,"minLength",typeof J.minLength==="number"?Math.max(J.minLength,Q.value):Q.value,Q.message,H),Y1(J,"maxLength",typeof J.maxLength==="number"?Math.min(J.maxLength,Q.value):Q.value,Q.message,H);break;case"includes":{K1(J,RegExp(Z5(Q.value,H)),Q.message,H);break}case"ip":{if(Q.version!=="v6")e1(J,"ipv4",Q.message,H);if(Q.version!=="v4")e1(J,"ipv6",Q.message,H);break}case"base64url":K1(J,t1.base64url,Q.message,H);break;case"jwt":K1(J,t1.jwt,Q.message,H);break;case"cidr":{if(Q.version!=="v6")K1(J,t1.ipv4Cidr,Q.message,H);if(Q.version!=="v4")K1(J,t1.ipv6Cidr,Q.message,H);break}case"emoji":K1(J,t1.emoji(),Q.message,H);break;case"ulid":{K1(J,t1.ulid,Q.message,H);break}case"base64":{switch(H.base64Strategy){case"format:binary":{e1(J,"binary",Q.message,H);break}case"contentEncoding:base64":{Y1(J,"contentEncoding","base64",Q.message,H);break}case"pattern:zod":{K1(J,t1.base64,Q.message,H);break}}break}case"nanoid":K1(J,t1.nanoid,Q.message,H);case"toLowerCase":case"toUpperCase":case"trim":break;default:((X)=>{})(Q)}return J}function Z5($,H){return H.patternStrategy==="escape"?DE($):$}var wE=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function DE($){let H="";for(let J=0;J<$.length;J++){if(!wE.has($[J]))H+="\\";H+=$[J]}return H}function e1($,H,J,Q){if($.format||$.anyOf?.some((X)=>X.format)){if(!$.anyOf)$.anyOf=[];if($.format){if($.anyOf.push({format:$.format,...$.errorMessage&&Q.errorMessages&&{errorMessage:{format:$.errorMessage.format}}}),delete $.format,$.errorMessage){if(delete $.errorMessage.format,Object.keys($.errorMessage).length===0)delete $.errorMessage}}$.anyOf.push({format:H,...J&&Q.errorMessages&&{errorMessage:{format:J}}})}else Y1($,"format",H,J,Q)}function K1($,H,J,Q){if($.pattern||$.allOf?.some((X)=>X.pattern)){if(!$.allOf)$.allOf=[];if($.pattern){if($.allOf.push({pattern:$.pattern,...$.errorMessage&&Q.errorMessages&&{errorMessage:{pattern:$.errorMessage.pattern}}}),delete $.pattern,$.errorMessage){if(delete $.errorMessage.pattern,Object.keys($.errorMessage).length===0)delete $.errorMessage}}$.allOf.push({pattern:fX(H,Q),...J&&Q.errorMessages&&{errorMessage:{pattern:J}}})}else Y1($,"pattern",fX(H,Q),J,Q)}function fX($,H){if(!H.applyRegexFlags||!$.flags)return $.source;let J={i:$.flags.includes("i"),m:$.flags.includes("m"),s:$.flags.includes("s")},Q=J.i?$.source.toLowerCase():$.source,X="",Y=!1,W=!1,G=!1;for(let q=0;q<Q.length;q++){if(Y){X+=Q[q],Y=!1;continue}if(J.i){if(W){if(Q[q].match(/[a-z]/)){if(G)X+=Q[q],X+=`${Q[q-2]}-${Q[q]}`.toUpperCase(),G=!1;else if(Q[q+1]==="-"&&Q[q+2]?.match(/[a-z]/))X+=Q[q],G=!0;else X+=`${Q[q]}${Q[q].toUpperCase()}`;continue}}else if(Q[q].match(/[a-z]/)){X+=`[${Q[q]}${Q[q].toUpperCase()}]`;continue}}if(J.m){if(Q[q]==="^"){X+=`(^|(?<=[\r
|
|
43
43
|
]))`;continue}else if(Q[q]==="$"){X+=`($|(?=[\r
|
|
44
44
|
]))`;continue}}if(J.s&&Q[q]==="."){X+=W?`${Q[q]}\r
|
|
45
45
|
`:`[${Q[q]}\r
|
|
46
|
-
]`;continue}if(X+=Q[q],Q[q]==="\\")Y=!0;else if(W&&Q[q]==="]")W=!1;else if(!W&&Q[q]==="[")W=!0}try{new RegExp(X)}catch{return console.warn(`Could not convert regex pattern at ${H.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),$.source}return X}function w2($,H){if(H.target==="openAi")console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead.");if(H.target==="openApi3"&&$.keyType?._def.typeName===C.ZodEnum)return{type:"object",required:$.keyType._def.values,properties:$.keyType._def.values.reduce((Q,X)=>({...Q,[X]:n($.valueType._def,{...H,currentPath:[...H.currentPath,"properties",X]})??w1(H)}),{}),additionalProperties:H.rejectedAdditionalProperties};let J={type:"object",additionalProperties:n($.valueType._def,{...H,currentPath:[...H.currentPath,"additionalProperties"]})??H.allowedAdditionalProperties};if(H.target==="openApi3")return J;if($.keyType?._def.typeName===C.ZodString&&$.keyType._def.checks?.length){let{type:Q,...X}=B2($.keyType._def,H);return{...J,propertyNames:X}}else if($.keyType?._def.typeName===C.ZodEnum)return{...J,propertyNames:{enum:$.keyType._def.values}};else if($.keyType?._def.typeName===C.ZodBranded&&$.keyType._def.type._def.typeName===C.ZodString&&$.keyType._def.type._def.checks?.length){let{type:Q,...X}=U2($.keyType._def,H);return{...J,propertyNames:X}}return J}function IX($,H){if(H.mapStrategy==="record")return w2($,H);let J=n($.keyType._def,{...H,currentPath:[...H.currentPath,"items","items","0"]})||w1(H),Q=n($.valueType._def,{...H,currentPath:[...H.currentPath,"items","items","1"]})||w1(H);return{type:"array",maxItems:125,items:{type:"array",items:[J,Q],minItems:2,maxItems:2}}}function TX($){let H=$.values,Q=Object.keys($.values).filter((Y)=>{return typeof H[H[Y]]!=="number"}).map((Y)=>H[Y]),X=Array.from(new Set(Q.map((Y)=>typeof Y)));return{type:X.length===1?X[0]==="string"?"string":"number":["string","number"],enum:Q}}function bX($){return $.target==="openAi"?void 0:{not:w1({...$,currentPath:[...$.currentPath,"not"]})}}function fX($){return $.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var m4={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function kX($,H){if(H.target==="openApi3")return xX($,H);let J=$.options instanceof Map?Array.from($.options.values()):$.options;if(J.every((Q)=>(Q._def.typeName in m4)&&(!Q._def.checks||!Q._def.checks.length))){let Q=J.reduce((X,Y)=>{let W=m4[Y._def.typeName];return W&&!X.includes(W)?[...X,W]:X},[]);return{type:Q.length>1?Q:Q[0]}}else if(J.every((Q)=>Q._def.typeName==="ZodLiteral"&&!Q.description)){let Q=J.reduce((X,Y)=>{let W=typeof Y._def.value;switch(W){case"string":case"number":case"boolean":return[...X,W];case"bigint":return[...X,"integer"];case"object":if(Y._def.value===null)return[...X,"null"];case"symbol":case"undefined":case"function":default:return X}},[]);if(Q.length===J.length){let X=Q.filter((Y,W,G)=>G.indexOf(Y)===W);return{type:X.length>1?X:X[0],enum:J.reduce((Y,W)=>{return Y.includes(W._def.value)?Y:[...Y,W._def.value]},[])}}}else if(J.every((Q)=>Q._def.typeName==="ZodEnum"))return{type:"string",enum:J.reduce((Q,X)=>[...Q,...X._def.values.filter((Y)=>!Q.includes(Y))],[])};return xX($,H)}var xX=($,H)=>{let J=($.options instanceof Map?Array.from($.options.values()):$.options).map((Q,X)=>n(Q._def,{...H,currentPath:[...H.currentPath,"anyOf",`${X}`]})).filter((Q)=>!!Q&&(!H.strictUnions||typeof Q==="object"&&Object.keys(Q).length>0));return J.length?{anyOf:J}:void 0};function hX($,H){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes($.innerType._def.typeName)&&(!$.innerType._def.checks||!$.innerType._def.checks.length)){if(H.target==="openApi3")return{type:m4[$.innerType._def.typeName],nullable:!0};return{type:[m4[$.innerType._def.typeName],"null"]}}if(H.target==="openApi3"){let Q=n($.innerType._def,{...H,currentPath:[...H.currentPath]});if(Q&&"$ref"in Q)return{allOf:[Q],nullable:!0};return Q&&{...Q,nullable:!0}}let J=n($.innerType._def,{...H,currentPath:[...H.currentPath,"anyOf","0"]});return J&&{anyOf:[J,{type:"null"}]}}function vX($,H){let J={type:"number"};if(!$.checks)return J;for(let Q of $.checks)switch(Q.kind){case"int":J.type="integer",N5(J,"type",Q.message,H);break;case"min":if(H.target==="jsonSchema7")if(Q.inclusive)Y1(J,"minimum",Q.value,Q.message,H);else Y1(J,"exclusiveMinimum",Q.value,Q.message,H);else{if(!Q.inclusive)J.exclusiveMinimum=!0;Y1(J,"minimum",Q.value,Q.message,H)}break;case"max":if(H.target==="jsonSchema7")if(Q.inclusive)Y1(J,"maximum",Q.value,Q.message,H);else Y1(J,"exclusiveMaximum",Q.value,Q.message,H);else{if(!Q.inclusive)J.exclusiveMaximum=!0;Y1(J,"maximum",Q.value,Q.message,H)}break;case"multipleOf":Y1(J,"multipleOf",Q.value,Q.message,H);break}return J}function gX($,H){let J=H.target==="openAi",Q={type:"object",properties:{}},X=[],Y=$.shape();for(let G in Y){let q=Y[G];if(q===void 0||q._def===void 0)continue;let U=_E(q);if(U&&J){if(q._def.typeName==="ZodOptional")q=q._def.innerType;if(!q.isNullable())q=q.nullable();U=!1}let B=n(q._def,{...H,currentPath:[...H.currentPath,"properties",G],propertyPath:[...H.currentPath,"properties",G]});if(B===void 0)continue;if(Q.properties[G]=B,!U)X.push(G)}if(X.length)Q.required=X;let W=VE($,H);if(W!==void 0)Q.additionalProperties=W;return Q}function VE($,H){if($.catchall._def.typeName!=="ZodNever")return n($.catchall._def,{...H,currentPath:[...H.currentPath,"additionalProperties"]});switch($.unknownKeys){case"passthrough":return H.allowedAdditionalProperties;case"strict":return H.rejectedAdditionalProperties;case"strip":return H.removeAdditionalStrategy==="strict"?H.allowedAdditionalProperties:H.rejectedAdditionalProperties}}function _E($){try{return $.isOptional()}catch{return!0}}var yX=($,H)=>{if(H.currentPath.toString()===H.propertyPath?.toString())return n($.innerType._def,H);let J=n($.innerType._def,{...H,currentPath:[...H.currentPath,"anyOf","1"]});return J?{anyOf:[{not:w1(H)},J]}:w1(H)};var uX=($,H)=>{if(H.pipeStrategy==="input")return n($.in._def,H);else if(H.pipeStrategy==="output")return n($.out._def,H);let J=n($.in._def,{...H,currentPath:[...H.currentPath,"allOf","0"]}),Q=n($.out._def,{...H,currentPath:[...H.currentPath,"allOf",J?"1":"0"]});return{allOf:[J,Q].filter((X)=>X!==void 0)}};function mX($,H){return n($.type._def,H)}function dX($,H){let Q={type:"array",uniqueItems:!0,items:n($.valueType._def,{...H,currentPath:[...H.currentPath,"items"]})};if($.minSize)Y1(Q,"minItems",$.minSize.value,$.minSize.message,H);if($.maxSize)Y1(Q,"maxItems",$.maxSize.value,$.maxSize.message,H);return Q}function cX($,H){if($.rest)return{type:"array",minItems:$.items.length,items:$.items.map((J,Q)=>n(J._def,{...H,currentPath:[...H.currentPath,"items",`${Q}`]})).reduce((J,Q)=>Q===void 0?J:[...J,Q],[]),additionalItems:n($.rest._def,{...H,currentPath:[...H.currentPath,"additionalItems"]})};else return{type:"array",minItems:$.items.length,maxItems:$.items.length,items:$.items.map((J,Q)=>n(J._def,{...H,currentPath:[...H.currentPath,"items",`${Q}`]})).reduce((J,Q)=>Q===void 0?J:[...J,Q],[])}}function lX($){return{not:w1($)}}function pX($){return w1($)}var nX=($,H)=>{return n($.innerType._def,H)};var iX=($,H,J)=>{switch(H){case C.ZodString:return B2($,J);case C.ZodNumber:return vX($,J);case C.ZodObject:return gX($,J);case C.ZodBigInt:return jX($,J);case C.ZodBoolean:return OX();case C.ZodDate:return j5($,J);case C.ZodUndefined:return lX(J);case C.ZodNull:return fX(J);case C.ZodArray:return EX($,J);case C.ZodUnion:case C.ZodDiscriminatedUnion:return kX($,J);case C.ZodIntersection:return CX($,J);case C.ZodTuple:return cX($,J);case C.ZodRecord:return w2($,J);case C.ZodLiteral:return PX($,J);case C.ZodEnum:return SX($);case C.ZodNativeEnum:return TX($);case C.ZodNullable:return hX($,J);case C.ZodOptional:return yX($,J);case C.ZodMap:return IX($,J);case C.ZodSet:return dX($,J);case C.ZodLazy:return()=>$.getter()._def;case C.ZodPromise:return mX($,J);case C.ZodNaN:case C.ZodNever:return bX(J);case C.ZodEffects:return MX($,J);case C.ZodAny:return w1(J);case C.ZodUnknown:return pX(J);case C.ZodDefault:return LX($,J);case C.ZodBranded:return U2($,J);case C.ZodReadonly:return nX($,J);case C.ZodCatch:return ZX($,J);case C.ZodPipeline:return uX($,J);case C.ZodFunction:case C.ZodVoid:case C.ZodSymbol:return;default:return((Q)=>{return})(H)}};function n($,H,J=!1){let Q=H.seen.get($);if(H.override){let G=H.override?.($,H,Q,J);if(G!==WX)return G}if(Q&&!J){let G=FE(Q,H);if(G!==void 0)return G}let X={def:$,path:H.currentPath,jsonSchema:void 0};H.seen.set($,X);let Y=iX($,$.typeName,H),W=typeof Y==="function"?n(Y(),H):Y;if(W)zE($,H,W);if(H.postProcess){let G=H.postProcess(W,$,H);return X.jsonSchema=W,G}return X.jsonSchema=W,W}var FE=($,H)=>{switch(H.$refStrategy){case"root":return{$ref:$.path.join("/")};case"relative":return{$ref:X2(H.currentPath,$.path)};case"none":case"seen":{if($.path.length<H.currentPath.length&&$.path.every((J,Q)=>H.currentPath[Q]===J))return console.warn(`Recursive reference detected at ${H.currentPath.join("/")}! Defaulting to any`),w1(H);return H.$refStrategy==="seen"?w1(H):void 0}}},zE=($,H,J)=>{if($.description){if(J.description=$.description,H.markdownDescription)J.markdownDescription=$.description}return J};var D2=($,H)=>{let J=qX(H),Q=typeof H==="object"&&H.definitions?Object.entries(H.definitions).reduce((q,[U,B])=>({...q,[U]:n(B._def,{...J,currentPath:[...J.basePath,J.definitionPath,U]},!0)??w1(J)}),{}):void 0,X=typeof H==="string"?H:H?.nameStrategy==="title"?void 0:H?.name,Y=n($._def,X===void 0?J:{...J,currentPath:[...J.basePath,J.definitionPath,X]},!1)??w1(J),W=typeof H==="object"&&H.name!==void 0&&H.nameStrategy==="title"?H.name:void 0;if(W!==void 0)Y.title=W;if(J.flags.hasReferencedOpenAiAnyType){if(!Q)Q={};if(!Q[J.openAiAnyTypeName])Q[J.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:J.$refStrategy==="relative"?"1":[...J.basePath,J.definitionPath,J.openAiAnyTypeName].join("/")}}}let G=X===void 0?Q?{...Y,[J.definitionPath]:Q}:Y:{$ref:[...J.$refStrategy==="relative"?[]:J.basePath,J.definitionPath,X].join("/"),[J.definitionPath]:{...Q,[X]:Y}};if(J.target==="jsonSchema7")G.$schema="http://json-schema.org/draft-07/schema#";else if(J.target==="jsonSchema2019-09"||J.target==="openAi")G.$schema="https://json-schema.org/draft/2019-09/schema#";if(J.target==="openAi"&&(("anyOf"in G)||("oneOf"in G)||("allOf"in G)||("type"in G)&&Array.isArray(G.type)))console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property.");return G};var sX=new WeakMap,oX=0;class O0{spec;generatedSchemas=new Set;constructor($){this.spec=$}convert($,H){try{if(H?.reusable||this.shouldBeReusable($))return this.convertToReusableSchema($,H?.name);return this.convertInline($)}catch(J){return console.warn("Failed to convert Zod schema to JSON Schema:",J),{type:"object"}}}convertInline($){let H=D2($,{target:"openApi3",$refStrategy:"none"});if(H&&typeof H==="object")delete H.$schema;return H}convertToReusableSchema($,H){let J=sX.get($);if(J&&this.generatedSchemas.has(J))return{$ref:`#/components/schemas/${J}`};let Q=H||J||this.generateSchemaName();sX.set($,Q),this.generatedSchemas.add(Q);let X=this.convertInline($);if(!this.spec.components)this.spec.components={schemas:{}};if(!this.spec.components.schemas)this.spec.components.schemas={};return this.spec.components.schemas[Q]=X,{$ref:`#/components/schemas/${Q}`}}shouldBeReusable($){let H=this.convertInline($);if(H.type==="object"&&H.properties)return Object.keys(H.properties).length>2;if(H.type==="array"&&H.items){let J=H.items;if(J.type==="object"&&J.properties)return!0}if(H.anyOf||H.oneOf||H.allOf)return!0;return!1}generateSchemaName(){return`Schema${++oX}`}static resetCounter(){oX=0}}function V2($,H){if(H)return new O0(H).convert($);try{let J=D2($,{target:"openApi3",$refStrategy:"none"});if(J&&typeof J==="object")delete J.$schema;return J}catch(J){return console.warn("Failed to convert Zod schema to JSON Schema:",J),{type:"object"}}}class J${metadata;options;converter;constructor($,H){this.metadata=$;this.options={title:H?.title||"Veloce-TS API",version:H?.version||"1.0.0",description:H?.description||"API built with Veloce-TS",path:H?.path||"/openapi.json",docsPath:H?.docsPath||"/docs",docs:H?.docs!==!1}}generate(){let $=this.metadata.getRoutes(),H={openapi:"3.0.0",info:{title:this.options.title,version:this.options.version,description:this.options.description},paths:{},components:{schemas:{}}};this.converter=new O0(H);for(let J of $)this.addRouteToSpec(H,J);return H}addRouteToSpec($,H){let J=this.convertPathToOpenAPI(H.path),Q=H.method.toLowerCase();if(Q==="all"||Q==="options")return;if(!$.paths[J])$.paths[J]={};let X={summary:H.docs?.summary,description:H.docs?.description,tags:H.docs?.tags||[],deprecated:H.docs?.deprecated||!1,parameters:this.extractParameters(H,$),responses:this.extractResponses(H,$)},Y=this.extractRequestBody(H,$);if(Y)X.requestBody=Y;if(X.parameters.length===0)delete X.parameters;if(X.tags.length===0)delete X.tags;$.paths[J][Q]=X}extractParameters($,H){let J=[];for(let Q of $.parameters)if(Q.type==="query"||Q.type==="param"||Q.type==="header"||Q.type==="cookie"){let X=this.parameterToOpenAPI(Q,$.path,H);if(X)J.push(X)}return J}extractRequestBody($,H){let J=$.parameters.find((Q)=>Q.type==="body");if(!J||!J.schema)return null;return{required:J.required,content:{"application/json":{schema:this.zodToOpenAPISchema(J.schema,H)}}}}extractResponses($,H){let J={};if($.responses&&$.responses.length>0)for(let Q of $.responses)J[Q.statusCode.toString()]={description:Q.description||this.getDefaultResponseDescription(Q.statusCode),content:Q.schema?{"application/json":{schema:this.zodToOpenAPISchema(Q.schema,H)}}:void 0};else J["200"]={description:"Successful response",content:{"application/json":{schema:{type:"object"}}}};if(!J["422"])J["422"]={description:"Validation error",content:{"application/json":{schema:{type:"object",properties:{error:{type:"string"},details:{type:"array",items:{type:"object",properties:{path:{type:"string"},message:{type:"string"},code:{type:"string"}}}}}}}}};return J}convertPathToOpenAPI($){return $.replace(/:([a-zA-Z_][a-zA-Z0-9_]*)/g,"{$1}")}parameterToOpenAPI($,H,J){let Q,X;switch($.type){case"query":Q="query",X=$.name||"query";break;case"param":if(Q="path",$.name)X=$.name;else{let W=H.match(/:([a-zA-Z_][a-zA-Z0-9_]*)/);X=W?W[1]:"id"}break;case"header":Q="header",X=$.name||"X-Custom-Header";break;case"cookie":Q="cookie",X=$.name||"session";break;default:return null}return{name:X,in:Q,required:$.required||Q==="path",schema:$.schema?this.zodToOpenAPISchema($.schema,J):{type:"string"}}}zodToOpenAPISchema($,H){if(!this.converter)this.converter=new O0(H);return this.converter.convert($)}getDefaultResponseDescription($){return{200:"Successful response",201:"Created",204:"No content",400:"Bad request",401:"Unauthorized",403:"Forbidden",404:"Not found",422:"Validation error",500:"Internal server error"}[$]||"Response"}}var AE={};L1(AE,{WebSocketPlugin:()=>p$,OpenAPIPlugin:()=>_2,HealthCheckers:()=>S5,HealthCheckPlugin:()=>N2,GraphQLPlugin:()=>p4});module.exports=l1(AE);class _2{name="openapi";version="1.0.0";options;constructor($){this.options={title:$?.title||"Veloce-TS API",version:$?.version||"1.0.0",description:$?.description||"API built with Veloce-TS",path:$?.path||"/openapi.json",docsPath:$?.docsPath||"/docs",docs:$?.docs!==!1}}async install($){let H=$.getConfig();if(H.title)this.options.title=H.title;if(H.version)this.options.version=H.version;if(H.description)this.options.description=H.description;$.get(this.options.path,{handler:async()=>{return this.generateSpec($)},docs:{summary:"Get OpenAPI specification",description:"Returns the OpenAPI 3.0 specification for this API",tags:["Documentation"]}})}generateSpec($){let H=$.getMetadata();return new J$(H,this.options).generate()}renderSwaggerUI(){return`<!DOCTYPE html>
|
|
46
|
+
]`;continue}if(X+=Q[q],Q[q]==="\\")Y=!0;else if(W&&Q[q]==="]")W=!1;else if(!W&&Q[q]==="[")W=!0}try{new RegExp(X)}catch{return console.warn(`Could not convert regex pattern at ${H.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),$.source}return X}function w2($,H){if(H.target==="openAi")console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead.");if(H.target==="openApi3"&&$.keyType?._def.typeName===C.ZodEnum)return{type:"object",required:$.keyType._def.values,properties:$.keyType._def.values.reduce((Q,X)=>({...Q,[X]:n($.valueType._def,{...H,currentPath:[...H.currentPath,"properties",X]})??w1(H)}),{}),additionalProperties:H.rejectedAdditionalProperties};let J={type:"object",additionalProperties:n($.valueType._def,{...H,currentPath:[...H.currentPath,"additionalProperties"]})??H.allowedAdditionalProperties};if(H.target==="openApi3")return J;if($.keyType?._def.typeName===C.ZodString&&$.keyType._def.checks?.length){let{type:Q,...X}=B2($.keyType._def,H);return{...J,propertyNames:X}}else if($.keyType?._def.typeName===C.ZodEnum)return{...J,propertyNames:{enum:$.keyType._def.values}};else if($.keyType?._def.typeName===C.ZodBranded&&$.keyType._def.type._def.typeName===C.ZodString&&$.keyType._def.type._def.checks?.length){let{type:Q,...X}=U2($.keyType._def,H);return{...J,propertyNames:X}}return J}function xX($,H){if(H.mapStrategy==="record")return w2($,H);let J=n($.keyType._def,{...H,currentPath:[...H.currentPath,"items","items","0"]})||w1(H),Q=n($.valueType._def,{...H,currentPath:[...H.currentPath,"items","items","1"]})||w1(H);return{type:"array",maxItems:125,items:{type:"array",items:[J,Q],minItems:2,maxItems:2}}}function kX($){let H=$.values,Q=Object.keys($.values).filter((Y)=>{return typeof H[H[Y]]!=="number"}).map((Y)=>H[Y]),X=Array.from(new Set(Q.map((Y)=>typeof Y)));return{type:X.length===1?X[0]==="string"?"string":"number":["string","number"],enum:Q}}function hX($){return $.target==="openAi"?void 0:{not:w1({...$,currentPath:[...$.currentPath,"not"]})}}function vX($){return $.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var m4={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function yX($,H){if(H.target==="openApi3")return gX($,H);let J=$.options instanceof Map?Array.from($.options.values()):$.options;if(J.every((Q)=>(Q._def.typeName in m4)&&(!Q._def.checks||!Q._def.checks.length))){let Q=J.reduce((X,Y)=>{let W=m4[Y._def.typeName];return W&&!X.includes(W)?[...X,W]:X},[]);return{type:Q.length>1?Q:Q[0]}}else if(J.every((Q)=>Q._def.typeName==="ZodLiteral"&&!Q.description)){let Q=J.reduce((X,Y)=>{let W=typeof Y._def.value;switch(W){case"string":case"number":case"boolean":return[...X,W];case"bigint":return[...X,"integer"];case"object":if(Y._def.value===null)return[...X,"null"];case"symbol":case"undefined":case"function":default:return X}},[]);if(Q.length===J.length){let X=Q.filter((Y,W,G)=>G.indexOf(Y)===W);return{type:X.length>1?X:X[0],enum:J.reduce((Y,W)=>{return Y.includes(W._def.value)?Y:[...Y,W._def.value]},[])}}}else if(J.every((Q)=>Q._def.typeName==="ZodEnum"))return{type:"string",enum:J.reduce((Q,X)=>[...Q,...X._def.values.filter((Y)=>!Q.includes(Y))],[])};return gX($,H)}var gX=($,H)=>{let J=($.options instanceof Map?Array.from($.options.values()):$.options).map((Q,X)=>n(Q._def,{...H,currentPath:[...H.currentPath,"anyOf",`${X}`]})).filter((Q)=>!!Q&&(!H.strictUnions||typeof Q==="object"&&Object.keys(Q).length>0));return J.length?{anyOf:J}:void 0};function uX($,H){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes($.innerType._def.typeName)&&(!$.innerType._def.checks||!$.innerType._def.checks.length)){if(H.target==="openApi3")return{type:m4[$.innerType._def.typeName],nullable:!0};return{type:[m4[$.innerType._def.typeName],"null"]}}if(H.target==="openApi3"){let Q=n($.innerType._def,{...H,currentPath:[...H.currentPath]});if(Q&&"$ref"in Q)return{allOf:[Q],nullable:!0};return Q&&{...Q,nullable:!0}}let J=n($.innerType._def,{...H,currentPath:[...H.currentPath,"anyOf","0"]});return J&&{anyOf:[J,{type:"null"}]}}function mX($,H){let J={type:"number"};if(!$.checks)return J;for(let Q of $.checks)switch(Q.kind){case"int":J.type="integer",N5(J,"type",Q.message,H);break;case"min":if(H.target==="jsonSchema7")if(Q.inclusive)Y1(J,"minimum",Q.value,Q.message,H);else Y1(J,"exclusiveMinimum",Q.value,Q.message,H);else{if(!Q.inclusive)J.exclusiveMinimum=!0;Y1(J,"minimum",Q.value,Q.message,H)}break;case"max":if(H.target==="jsonSchema7")if(Q.inclusive)Y1(J,"maximum",Q.value,Q.message,H);else Y1(J,"exclusiveMaximum",Q.value,Q.message,H);else{if(!Q.inclusive)J.exclusiveMaximum=!0;Y1(J,"maximum",Q.value,Q.message,H)}break;case"multipleOf":Y1(J,"multipleOf",Q.value,Q.message,H);break}return J}function dX($,H){let J=H.target==="openAi",Q={type:"object",properties:{}},X=[],Y=$.shape();for(let G in Y){let q=Y[G];if(q===void 0||q._def===void 0)continue;let U=_E(q);if(U&&J){if(q._def.typeName==="ZodOptional")q=q._def.innerType;if(!q.isNullable())q=q.nullable();U=!1}let B=n(q._def,{...H,currentPath:[...H.currentPath,"properties",G],propertyPath:[...H.currentPath,"properties",G]});if(B===void 0)continue;if(Q.properties[G]=B,!U)X.push(G)}if(X.length)Q.required=X;let W=VE($,H);if(W!==void 0)Q.additionalProperties=W;return Q}function VE($,H){if($.catchall._def.typeName!=="ZodNever")return n($.catchall._def,{...H,currentPath:[...H.currentPath,"additionalProperties"]});switch($.unknownKeys){case"passthrough":return H.allowedAdditionalProperties;case"strict":return H.rejectedAdditionalProperties;case"strip":return H.removeAdditionalStrategy==="strict"?H.allowedAdditionalProperties:H.rejectedAdditionalProperties}}function _E($){try{return $.isOptional()}catch{return!0}}var cX=($,H)=>{if(H.currentPath.toString()===H.propertyPath?.toString())return n($.innerType._def,H);let J=n($.innerType._def,{...H,currentPath:[...H.currentPath,"anyOf","1"]});return J?{anyOf:[{not:w1(H)},J]}:w1(H)};var lX=($,H)=>{if(H.pipeStrategy==="input")return n($.in._def,H);else if(H.pipeStrategy==="output")return n($.out._def,H);let J=n($.in._def,{...H,currentPath:[...H.currentPath,"allOf","0"]}),Q=n($.out._def,{...H,currentPath:[...H.currentPath,"allOf",J?"1":"0"]});return{allOf:[J,Q].filter((X)=>X!==void 0)}};function pX($,H){return n($.type._def,H)}function nX($,H){let Q={type:"array",uniqueItems:!0,items:n($.valueType._def,{...H,currentPath:[...H.currentPath,"items"]})};if($.minSize)Y1(Q,"minItems",$.minSize.value,$.minSize.message,H);if($.maxSize)Y1(Q,"maxItems",$.maxSize.value,$.maxSize.message,H);return Q}function iX($,H){if($.rest)return{type:"array",minItems:$.items.length,items:$.items.map((J,Q)=>n(J._def,{...H,currentPath:[...H.currentPath,"items",`${Q}`]})).reduce((J,Q)=>Q===void 0?J:[...J,Q],[]),additionalItems:n($.rest._def,{...H,currentPath:[...H.currentPath,"additionalItems"]})};else return{type:"array",minItems:$.items.length,maxItems:$.items.length,items:$.items.map((J,Q)=>n(J._def,{...H,currentPath:[...H.currentPath,"items",`${Q}`]})).reduce((J,Q)=>Q===void 0?J:[...J,Q],[])}}function sX($){return{not:w1($)}}function oX($){return w1($)}var rX=($,H)=>{return n($.innerType._def,H)};var aX=($,H,J)=>{switch(H){case C.ZodString:return B2($,J);case C.ZodNumber:return mX($,J);case C.ZodObject:return dX($,J);case C.ZodBigInt:return MX($,J);case C.ZodBoolean:return SX();case C.ZodDate:return j5($,J);case C.ZodUndefined:return sX(J);case C.ZodNull:return vX(J);case C.ZodArray:return LX($,J);case C.ZodUnion:case C.ZodDiscriminatedUnion:return yX($,J);case C.ZodIntersection:return TX($,J);case C.ZodTuple:return iX($,J);case C.ZodRecord:return w2($,J);case C.ZodLiteral:return bX($,J);case C.ZodEnum:return IX($);case C.ZodNativeEnum:return kX($);case C.ZodNullable:return uX($,J);case C.ZodOptional:return cX($,J);case C.ZodMap:return xX($,J);case C.ZodSet:return nX($,J);case C.ZodLazy:return()=>$.getter()._def;case C.ZodPromise:return pX($,J);case C.ZodNaN:case C.ZodNever:return hX(J);case C.ZodEffects:return KX($,J);case C.ZodAny:return w1(J);case C.ZodUnknown:return oX(J);case C.ZodDefault:return PX($,J);case C.ZodBranded:return U2($,J);case C.ZodReadonly:return rX($,J);case C.ZodCatch:return CX($,J);case C.ZodPipeline:return lX($,J);case C.ZodFunction:case C.ZodVoid:case C.ZodSymbol:return;default:return((Q)=>{return})(H)}};function n($,H,J=!1){let Q=H.seen.get($);if(H.override){let G=H.override?.($,H,Q,J);if(G!==BX)return G}if(Q&&!J){let G=FE(Q,H);if(G!==void 0)return G}let X={def:$,path:H.currentPath,jsonSchema:void 0};H.seen.set($,X);let Y=aX($,$.typeName,H),W=typeof Y==="function"?n(Y(),H):Y;if(W)zE($,H,W);if(H.postProcess){let G=H.postProcess(W,$,H);return X.jsonSchema=W,G}return X.jsonSchema=W,W}var FE=($,H)=>{switch(H.$refStrategy){case"root":return{$ref:$.path.join("/")};case"relative":return{$ref:X2(H.currentPath,$.path)};case"none":case"seen":{if($.path.length<H.currentPath.length&&$.path.every((J,Q)=>H.currentPath[Q]===J))return console.warn(`Recursive reference detected at ${H.currentPath.join("/")}! Defaulting to any`),w1(H);return H.$refStrategy==="seen"?w1(H):void 0}}},zE=($,H,J)=>{if($.description){if(J.description=$.description,H.markdownDescription)J.markdownDescription=$.description}return J};var D2=($,H)=>{let J=DX(H),Q=typeof H==="object"&&H.definitions?Object.entries(H.definitions).reduce((q,[U,B])=>({...q,[U]:n(B._def,{...J,currentPath:[...J.basePath,J.definitionPath,U]},!0)??w1(J)}),{}):void 0,X=typeof H==="string"?H:H?.nameStrategy==="title"?void 0:H?.name,Y=n($._def,X===void 0?J:{...J,currentPath:[...J.basePath,J.definitionPath,X]},!1)??w1(J),W=typeof H==="object"&&H.name!==void 0&&H.nameStrategy==="title"?H.name:void 0;if(W!==void 0)Y.title=W;if(J.flags.hasReferencedOpenAiAnyType){if(!Q)Q={};if(!Q[J.openAiAnyTypeName])Q[J.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:J.$refStrategy==="relative"?"1":[...J.basePath,J.definitionPath,J.openAiAnyTypeName].join("/")}}}let G=X===void 0?Q?{...Y,[J.definitionPath]:Q}:Y:{$ref:[...J.$refStrategy==="relative"?[]:J.basePath,J.definitionPath,X].join("/"),[J.definitionPath]:{...Q,[X]:Y}};if(J.target==="jsonSchema7")G.$schema="http://json-schema.org/draft-07/schema#";else if(J.target==="jsonSchema2019-09"||J.target==="openAi")G.$schema="https://json-schema.org/draft/2019-09/schema#";if(J.target==="openAi"&&(("anyOf"in G)||("oneOf"in G)||("allOf"in G)||("type"in G)&&Array.isArray(G.type)))console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property.");return G};var tX=new WeakMap,eX=0;class O0{spec;generatedSchemas=new Set;constructor($){this.spec=$}convert($,H){try{if(H?.reusable||this.shouldBeReusable($))return this.convertToReusableSchema($,H?.name);return this.convertInline($)}catch(J){return console.warn("Failed to convert Zod schema to JSON Schema:",J),{type:"object"}}}convertInline($){let H=D2($,{target:"openApi3",$refStrategy:"none"});if(H&&typeof H==="object")delete H.$schema;return H}convertToReusableSchema($,H){let J=tX.get($);if(J&&this.generatedSchemas.has(J))return{$ref:`#/components/schemas/${J}`};let Q=H||J||this.generateSchemaName();tX.set($,Q),this.generatedSchemas.add(Q);let X=this.convertInline($);if(!this.spec.components)this.spec.components={schemas:{}};if(!this.spec.components.schemas)this.spec.components.schemas={};return this.spec.components.schemas[Q]=X,{$ref:`#/components/schemas/${Q}`}}shouldBeReusable($){let H=this.convertInline($);if(H.type==="object"&&H.properties)return Object.keys(H.properties).length>2;if(H.type==="array"&&H.items){let J=H.items;if(J.type==="object"&&J.properties)return!0}if(H.anyOf||H.oneOf||H.allOf)return!0;return!1}generateSchemaName(){return`Schema${++eX}`}static resetCounter(){eX=0}}function V2($,H){if(H)return new O0(H).convert($);try{let J=D2($,{target:"openApi3",$refStrategy:"none"});if(J&&typeof J==="object")delete J.$schema;return J}catch(J){return console.warn("Failed to convert Zod schema to JSON Schema:",J),{type:"object"}}}class J${metadata;options;converter;constructor($,H){this.metadata=$;this.options={title:H?.title||"Veloce-TS API",version:H?.version||"1.0.0",description:H?.description||"API built with Veloce-TS",path:H?.path||"/openapi.json",docsPath:H?.docsPath||"/docs",docs:H?.docs!==!1}}generate(){let $=this.metadata.getRoutes(),H={openapi:"3.0.0",info:{title:this.options.title,version:this.options.version,description:this.options.description},paths:{},components:{schemas:{}}};this.converter=new O0(H);for(let J of $)this.addRouteToSpec(H,J);return H}addRouteToSpec($,H){let J=this.convertPathToOpenAPI(H.path),Q=H.method.toLowerCase();if(Q==="all"||Q==="options")return;if(!$.paths[J])$.paths[J]={};let X={summary:H.docs?.summary,description:H.docs?.description,tags:H.docs?.tags||[],deprecated:H.docs?.deprecated||!1,parameters:this.extractParameters(H,$),responses:this.extractResponses(H,$)},Y=this.extractRequestBody(H,$);if(Y)X.requestBody=Y;if(X.parameters.length===0)delete X.parameters;if(X.tags.length===0)delete X.tags;$.paths[J][Q]=X}extractParameters($,H){let J=[];for(let Q of $.parameters)if(Q.type==="query"||Q.type==="param"||Q.type==="header"||Q.type==="cookie"){let X=this.parameterToOpenAPI(Q,$.path,H);if(X)J.push(X)}return J}extractRequestBody($,H){let J=$.parameters.find((Q)=>Q.type==="body");if(!J||!J.schema)return null;return{required:J.required,content:{"application/json":{schema:this.zodToOpenAPISchema(J.schema,H)}}}}extractResponses($,H){let J={};if($.responses&&$.responses.length>0)for(let Q of $.responses)J[Q.statusCode.toString()]={description:Q.description||this.getDefaultResponseDescription(Q.statusCode),content:Q.schema?{"application/json":{schema:this.zodToOpenAPISchema(Q.schema,H)}}:void 0};else J["200"]={description:"Successful response",content:{"application/json":{schema:{type:"object"}}}};if(!J["422"])J["422"]={description:"Validation error",content:{"application/json":{schema:{type:"object",properties:{error:{type:"string"},details:{type:"array",items:{type:"object",properties:{path:{type:"string"},message:{type:"string"},code:{type:"string"}}}}}}}}};return J}convertPathToOpenAPI($){return $.replace(/:([a-zA-Z_][a-zA-Z0-9_]*)/g,"{$1}")}parameterToOpenAPI($,H,J){let Q,X;switch($.type){case"query":Q="query",X=$.name||"query";break;case"param":if(Q="path",$.name)X=$.name;else{let W=H.match(/:([a-zA-Z_][a-zA-Z0-9_]*)/);X=W?W[1]:"id"}break;case"header":Q="header",X=$.name||"X-Custom-Header";break;case"cookie":Q="cookie",X=$.name||"session";break;default:return null}return{name:X,in:Q,required:$.required||Q==="path",schema:$.schema?this.zodToOpenAPISchema($.schema,J):{type:"string"}}}zodToOpenAPISchema($,H){if(!this.converter)this.converter=new O0(H);return this.converter.convert($)}getDefaultResponseDescription($){return{200:"Successful response",201:"Created",204:"No content",400:"Bad request",401:"Unauthorized",403:"Forbidden",404:"Not found",422:"Validation error",500:"Internal server error"}[$]||"Response"}}var AE={};L1(AE,{WebSocketPlugin:()=>p$,OpenAPIPlugin:()=>_2,HealthCheckers:()=>S5,HealthCheckPlugin:()=>N2,GraphQLPlugin:()=>p4});module.exports=l1(AE);class _2{name="openapi";version="1.0.0";options;constructor($){this.options={title:$?.title||"Veloce-TS API",version:$?.version||"1.0.0",description:$?.description||"API built with Veloce-TS",path:$?.path||"/openapi.json",docsPath:$?.docsPath||"/docs",docs:$?.docs!==!1}}async install($){let H=$.getConfig();if(H.title)this.options.title=H.title;if(H.version)this.options.version=H.version;if(H.description)this.options.description=H.description;$.get(this.options.path,{handler:async()=>{return this.generateSpec($)},docs:{summary:"Get OpenAPI specification",description:"Returns the OpenAPI 3.0 specification for this API",tags:["Documentation"]}})}generateSpec($){let H=$.getMetadata();return new J$(H,this.options).generate()}renderSwaggerUI(){return`<!DOCTYPE html>
|
|
47
47
|
<html lang="en">
|
|
48
48
|
<head>
|
|
49
49
|
<meta charset="UTF-8">
|
|
@@ -79,10 +79,10 @@ and limitations under the License.
|
|
|
79
79
|
};
|
|
80
80
|
</script>
|
|
81
81
|
</body>
|
|
82
|
-
</html>`}}class c${manager;id;_ws;constructor($,H,J){this.manager=H;this._ws=$,this.id=J||crypto.randomUUID()}send($){if(!this._ws||this._ws.readyState!==WebSocket.OPEN)return;let H=typeof $==="string"?$:JSON.stringify($);this._ws.send(H)}broadcast($,H){this.manager.broadcast($,H)}join($){this.manager.joinRoom(this.id,$)}leave($){this.manager.leaveRoom(this.id,$)}close($,H){if(this._ws&&this._ws.readyState===WebSocket.OPEN)this._ws.close($,H)}get native(){return this._ws}get isOpen(){return this._ws!==null&&this._ws.readyState===WebSocket.OPEN}_markClosed(){this._ws=null}}class l${connections=new Map;rooms=new Map;connectionsByRoom=new Map;handleConnection($,H){let J=new c$($,this);if(this.connections.set(J.id,J),H.onConnect)this.executeHandler(H,H.onConnect,J);return $.addEventListener("message",async(Q)=>{await this.handleMessage(Q,J,H)}),$.addEventListener("close",()=>{this.handleDisconnect(J,H)}),$.addEventListener("error",(Q)=>{console.error(`WebSocket error for connection ${J.id}:`,Q)}),J}async handleMessage($,H,J){if(!J.onMessage)return;let Q;try{if(Q=typeof $.data==="string"?JSON.parse($.data):$.data,J.messageSchema)Q=await J.messageSchema.parseAsync(Q);await this.executeHandler(J,J.onMessage,H,Q)}catch(X){H.send({error:"Invalid message format",details:X instanceof Error?X.message:"Unknown error"})}}handleDisconnect($,H){if(Array.from(this.connectionsByRoom.entries()).forEach(([J,Q])=>{if(Q.delete($),Q.size===0)this.connectionsByRoom.delete(J)}),Array.from(this.rooms.entries()).forEach(([J,Q])=>{if(Q.delete($.id),Q.size===0)this.rooms.delete(J)}),this.connections.delete($.id),$._markClosed(),H.onDisconnect)this.executeHandler(H,H.onDisconnect,$)}async executeHandler($,H,J,Q){try{let X=new $.target,Y=X[H];if(typeof Y==="function")if(Q!==void 0)await Y.call(X,J,Q);else await Y.call(X,J)}catch(X){console.error(`Error executing WebSocket handler ${H}:`,X)}}broadcast($,H){let J=H?this.getConnectionsInRoom(H):Array.from(this.connections.values()),Q=typeof $==="string"?$:JSON.stringify($);for(let X of J)if(X.isOpen)X.send(Q)}joinRoom($,H){let J=this.connections.get($);if(!J)return;if(!this.rooms.has(H))this.rooms.set(H,new Set);if(this.rooms.get(H).add($),!this.connectionsByRoom.has(H))this.connectionsByRoom.set(H,new Set);this.connectionsByRoom.get(H).add(J)}leaveRoom($,H){let J=this.connections.get($);if(!J)return;let Q=this.rooms.get(H);if(Q){if(Q.delete($),Q.size===0)this.rooms.delete(H)}let X=this.connectionsByRoom.get(H);if(X){if(X.delete(J),X.size===0)this.connectionsByRoom.delete(H)}}getConnectionsInRoom($){let H=this.connectionsByRoom.get($);return H?Array.from(H):[]}getConnection($){return this.connections.get($)}getAllConnections(){return Array.from(this.connections.values())}getConnectionCount(){return this.connections.size}getRooms(){return Array.from(this.rooms.keys())}getRoomSize($){return this.rooms.get($)?.size||0}}class p${name="websocket";version="1.0.0";manager;constructor(){this.manager=new l$}async install($){let J=$.getMetadata().getWebSockets();for(let Q of J)this.registerWebSocket($,Q)}registerWebSocket($,H){$.getHono().get(H.path,async(Q)=>{if(Q.req.header("upgrade")?.toLowerCase()!=="websocket")return Q.text("Expected WebSocket upgrade",426);return this.handleUpgrade(Q,H)})}handleUpgrade($,H){if(typeof Bun<"u")return this.handleBunUpgrade($,H);else if(typeof globalThis.Deno<"u")return this.handleDenoUpgrade($,H);else return this.handleNodeUpgrade($,H)}handleBunUpgrade($,H){if(!$.env?.upgrade?.($.req.raw))return $.text("WebSocket upgrade failed",500);return new Response(null,{status:101})}handleDenoUpgrade($,H){let J=globalThis.Deno,{socket:Q,response:X}=J.upgradeWebSocket($.req.raw);return Q.onopen=()=>{this.manager.handleConnection(Q,H)},X}handleNodeUpgrade($,H){return $.text("WebSocket support requires Bun or Deno runtime",501)}getManager(){return this.manager}broadcast($,H){this.manager.broadcast($,H)}getConnectionCount(){return this.manager.getConnectionCount()}getRooms(){return this.manager.getRooms()}}var rb=F0(Q$()),L5=Symbol("graphql:resolver"),n$=Symbol("graphql:field"),d4=Symbol("graphql:args");function
|
|
82
|
+
</html>`}}class c${manager;id;_ws;constructor($,H,J){this.manager=H;this._ws=$,this.id=J||crypto.randomUUID()}send($){if(!this._ws||this._ws.readyState!==WebSocket.OPEN)return;let H=typeof $==="string"?$:JSON.stringify($);this._ws.send(H)}broadcast($,H){this.manager.broadcast($,H)}join($){this.manager.joinRoom(this.id,$)}leave($){this.manager.leaveRoom(this.id,$)}close($,H){if(this._ws&&this._ws.readyState===WebSocket.OPEN)this._ws.close($,H)}get native(){return this._ws}get isOpen(){return this._ws!==null&&this._ws.readyState===WebSocket.OPEN}_markClosed(){this._ws=null}}class l${connections=new Map;rooms=new Map;connectionsByRoom=new Map;handleConnection($,H){let J=new c$($,this);if(this.connections.set(J.id,J),H.onConnect)this.executeHandler(H,H.onConnect,J);return $.addEventListener("message",async(Q)=>{await this.handleMessage(Q,J,H)}),$.addEventListener("close",()=>{this.handleDisconnect(J,H)}),$.addEventListener("error",(Q)=>{console.error(`WebSocket error for connection ${J.id}:`,Q)}),J}async handleMessage($,H,J){if(!J.onMessage)return;let Q;try{if(Q=typeof $.data==="string"?JSON.parse($.data):$.data,J.messageSchema)Q=await J.messageSchema.parseAsync(Q);await this.executeHandler(J,J.onMessage,H,Q)}catch(X){H.send({error:"Invalid message format",details:X instanceof Error?X.message:"Unknown error"})}}handleDisconnect($,H){if(Array.from(this.connectionsByRoom.entries()).forEach(([J,Q])=>{if(Q.delete($),Q.size===0)this.connectionsByRoom.delete(J)}),Array.from(this.rooms.entries()).forEach(([J,Q])=>{if(Q.delete($.id),Q.size===0)this.rooms.delete(J)}),this.connections.delete($.id),$._markClosed(),H.onDisconnect)this.executeHandler(H,H.onDisconnect,$)}async executeHandler($,H,J,Q){try{let X=new $.target,Y=X[H];if(typeof Y==="function")if(Q!==void 0)await Y.call(X,J,Q);else await Y.call(X,J)}catch(X){console.error(`Error executing WebSocket handler ${H}:`,X)}}broadcast($,H){let J=H?this.getConnectionsInRoom(H):Array.from(this.connections.values()),Q=typeof $==="string"?$:JSON.stringify($);for(let X of J)if(X.isOpen)X.send(Q)}joinRoom($,H){let J=this.connections.get($);if(!J)return;if(!this.rooms.has(H))this.rooms.set(H,new Set);if(this.rooms.get(H).add($),!this.connectionsByRoom.has(H))this.connectionsByRoom.set(H,new Set);this.connectionsByRoom.get(H).add(J)}leaveRoom($,H){let J=this.connections.get($);if(!J)return;let Q=this.rooms.get(H);if(Q){if(Q.delete($),Q.size===0)this.rooms.delete(H)}let X=this.connectionsByRoom.get(H);if(X){if(X.delete(J),X.size===0)this.connectionsByRoom.delete(H)}}getConnectionsInRoom($){let H=this.connectionsByRoom.get($);return H?Array.from(H):[]}getConnection($){return this.connections.get($)}getAllConnections(){return Array.from(this.connections.values())}getConnectionCount(){return this.connections.size}getRooms(){return Array.from(this.rooms.keys())}getRoomSize($){return this.rooms.get($)?.size||0}}class p${name="websocket";version="1.0.0";manager;constructor(){this.manager=new l$}async install($){let J=$.getMetadata().getWebSockets();for(let Q of J)this.registerWebSocket($,Q)}registerWebSocket($,H){$.getHono().get(H.path,async(Q)=>{if(Q.req.header("upgrade")?.toLowerCase()!=="websocket")return Q.text("Expected WebSocket upgrade",426);return this.handleUpgrade(Q,H)})}handleUpgrade($,H){if(typeof Bun<"u")return this.handleBunUpgrade($,H);else if(typeof globalThis.Deno<"u")return this.handleDenoUpgrade($,H);else return this.handleNodeUpgrade($,H)}handleBunUpgrade($,H){if(!$.env?.upgrade?.($.req.raw))return $.text("WebSocket upgrade failed",500);return new Response(null,{status:101})}handleDenoUpgrade($,H){let J=globalThis.Deno,{socket:Q,response:X}=J.upgradeWebSocket($.req.raw);return Q.onopen=()=>{this.manager.handleConnection(Q,H)},X}handleNodeUpgrade($,H){return $.text("WebSocket support requires Bun or Deno runtime",501)}getManager(){return this.manager}broadcast($,H){this.manager.broadcast($,H)}getConnectionCount(){return this.manager.getConnectionCount()}getRooms(){return this.manager.getRooms()}}var rb=F0(Q$()),L5=Symbol("graphql:resolver"),n$=Symbol("graphql:field"),d4=Symbol("graphql:args");function HY($){return(H)=>{let J={target:H,name:$||H.name};Reflect.defineMetadata(L5,J,H)}}function JY($,H){return M5("query",$,H)}function QY($,H){return M5("mutation",$,H)}function XY($,H){return M5("subscription",$,H)}function M5($,H,J){return(Q,X)=>{let Y={target:Q.constructor,propertyKey:X,type:$,name:H||X,description:J?.description,deprecated:J?.deprecated,deprecationReason:J?.deprecationReason},W=Reflect.getMetadata(n$,Q.constructor)||[];W.push(Y),Reflect.defineMetadata(n$,W,Q.constructor),Reflect.defineMetadata(n$,Y,Q,X)}}function YY($,H,J){return(Q,X,Y)=>{if(!X)return;let W=Reflect.getMetadata(d4,Q,X)||[],G={index:Y,name:$,schema:H,description:J?.description,defaultValue:J?.defaultValue,nullable:J?.nullable};W[Y]=G,Reflect.defineMetadata(d4,W,Q,X)}}function WY(){return($,H,J)=>{if(!H)return;let Q=Reflect.getMetadata(d4,$,H)||[],X={index:J,name:"__context__",nullable:!1};Q[J]=X,Reflect.defineMetadata(d4,Q,$,H)}}function GY($){return Reflect.getMetadata(L5,$)}function qY($){return Reflect.getMetadata(n$,$)||[]}function UY($,H){return Reflect.getMetadata(n$,$,H)}function c4($,H){return Reflect.getMetadata(d4,$,H)||[]}function BY($){return Reflect.hasMetadata(L5,$)}function wY($,H){return Reflect.hasMetadata(n$,$,H)}function $0($){let H=$._def.typeName;if(H==="ZodString")return"String";if(H==="ZodNumber"){if($._def.checks?.some((Q)=>Q.kind==="int"))return"Int";return"Float"}if(H==="ZodBoolean")return"Boolean";if(H==="ZodArray")return`[${$0($._def.type)}]`;if(H==="ZodObject")return"JSON";if(H==="ZodOptional")return $0($._def.innerType);if(H==="ZodNullable")return $0($._def.innerType);if(H==="ZodDefault")return $0($._def.innerType);if(H==="ZodEnum")return"String";if(H==="ZodUnion"){let J=$._def.options;if(J&&J.length>0)return $0(J[0])}if(H==="ZodLiteral"){let J=$._def.value;if(typeof J==="string")return"String";if(typeof J==="number")return"Float";if(typeof J==="boolean")return"Boolean"}if(H==="ZodDate")return"String";return"String"}function X$($){let H=$._def.typeName;if(H==="ZodOptional"||H==="ZodNullable")return!0;if(H==="ZodDefault")return X$($._def.innerType);return!1}function F2($){let H=$._def.typeName;if(H==="ZodDefault")return $._def.defaultValue();if(H==="ZodOptional"||H==="ZodNullable"){let J=$._def.innerType;if(J)return F2(J)}return}function DY($,H){if(H._def.typeName!=="ZodObject")throw Error("Schema must be a ZodObject");let Q=H._def.shape(),X=[];for(let[Y,W]of Object.entries(Q)){let G=W,q=$0(G),B=X$(G)?q:`${q}!`;X.push(` ${Y}: ${B}`)}return`type ${$} {
|
|
83
83
|
${X.join(`
|
|
84
84
|
`)}
|
|
85
|
-
}`}function
|
|
85
|
+
}`}function VY($,H){if(H._def.typeName!=="ZodObject")throw Error("Schema must be a ZodObject");let Q=H._def.shape(),X=[];for(let[Y,W]of Object.entries(Q)){let G=W,q=$0(G),U=X$(G),B=F2(G),w=U?q:`${q}!`;if(B!==void 0){let _=JSON.stringify(B);w+=` = ${_}`}X.push(` ${Y}: ${w}`)}return`input ${$} {
|
|
86
86
|
${X.join(`
|
|
87
87
|
`)}
|
|
88
88
|
}`}i$();class h0 extends x1{zodError;constructor($){super(422,"Validation failed");this.zodError=$;this.name="ValidationException"}toJSON(){return{error:"Validation Error",statusCode:this.statusCode,details:this.zodError.errors.map(($)=>({path:$.path.join("."),message:$.message,code:$.code}))}}}class Y${schemaCache=new WeakMap;stats={hits:0,misses:0,validations:0};async validate($,H){this.stats.validations++;try{let J=this.schemaCache.get(H);if(!J)this.stats.misses++,J={schema:H,resultCache:new WeakMap},this.schemaCache.set(H,J);else this.stats.hits++;return await J.schema.parseAsync($)}catch(J){if(J instanceof j1)throw new h0(J);throw J}}validateSync($,H){this.stats.validations++;try{let J=this.schemaCache.get(H);if(!J)this.stats.misses++,J={schema:H,resultCache:new WeakMap},this.schemaCache.set(H,J);else this.stats.hits++;return J.schema.parse($)}catch(J){if(J instanceof j1)throw new h0(J);throw J}}getCacheStats(){let $=this.stats.validations>0?this.stats.hits/this.stats.validations*100:0;return{...this.stats,hitRate:Math.round($*100)/100}}resetStats(){this.stats={hits:0,misses:0,validations:0}}clearCache(){this.schemaCache=new WeakMap,this.resetStats()}}class l4{metadata;container;validationEngine;customTypes=new Map;constructor($,H){this.metadata=$;this.container=H;this.validationEngine=new Y$}build(){let $=this.metadata.getGraphQLResolvers(),H=[],J=[],Q=[],X=[];for(let G of $){let q=this.metadata.getGraphQLFieldsByResolver(G.target);for(let U of q){let B=this.buildFieldDefinition(U);switch(U.type){case"query":H.push(B);break;case"mutation":J.push(B);break;case"subscription":Q.push(B);break}}}let Y="";if(this.customTypes.size>0)Y+=Array.from(this.customTypes.values()).join(`
|
|
@@ -146,8 +146,8 @@ ${X.join(`
|
|
|
146
146
|
</script>
|
|
147
147
|
</body>
|
|
148
148
|
</html>
|
|
149
|
-
`.trim()}getSchema(){return this.schema}}class N2{name="health";version="1.0.0";options;startTime;logger=I0().child({plugin:"health"});constructor($){this.options={path:$?.path||"/health",readyPath:$?.readyPath||"/ready",livePath:$?.livePath||"/live",checks:$?.checks||[]},this.startTime=Date.now()}async install($){$.get(this.options.path,{handler:async(H)=>{return this.handleHealth(H)},docs:{summary:"Health Check",description:"Comprehensive health check endpoint",tags:["Health"]}}),$.get(this.options.readyPath,{handler:async(H)=>{return this.handleReady(H)},docs:{summary:"Readiness Check",description:"Check if the application is ready to serve traffic",tags:["Health"]}}),$.get(this.options.livePath,{handler:async(H)=>{return this.handleLive(H)},docs:{summary:"Liveness Check",description:"Check if the application is alive",tags:["Health"]}}),this.logger.info("Health check endpoints registered",{health:this.options.path,ready:this.options.readyPath,live:this.options.livePath})}async handleHealth($){let H=Date.now()-this.startTime,J={},Q=!0;for(let Y of this.options.checks)try{let W=await Promise.resolve(Y());if(J[Y.name||"unknown"]=W,W.status==="unhealthy")Q=!1}catch(W){let G=W instanceof Error?W.message:"Unknown error";J[Y.name||"unknown"]={status:"unhealthy",message:G},Q=!1}let X={status:Q?"healthy":"unhealthy",timestamp:new Date().toISOString(),uptime:H,checks:Object.keys(J).length>0?J:void 0};return $.json(X,Q?200:503)}async handleReady($){let H=Date.now()-this.startTime,J=this.options.checks.filter((W)=>W.name?.includes("database")||W.name?.includes("cache")||W.name?.includes("ready")),Q=!0,X={};for(let W of J)try{let G=await Promise.resolve(W());if(X[W.name||"unknown"]=G,G.status==="unhealthy")Q=!1}catch(G){Q=!1;let q=G instanceof Error?G.message:"Unknown error";X[W.name||"unknown"]={status:"unhealthy",message:q}}let Y={status:Q?"ready":"not_ready",timestamp:new Date().toISOString(),uptime:H,checks:Object.keys(X).length>0?X:void 0};return $.json(Y,Q?200:503)}handleLive($){let H=Date.now()-this.startTime;return $.json({status:"alive",timestamp:new Date().toISOString(),uptime:H},200)}}var S5={alwaysHealthy(){return{status:"healthy",message:"OK"}},database($){let H=async()=>{try{let J=await Promise.resolve($());return{status:J?"healthy":"unhealthy",message:J?"Database connection OK":"Database connection failed"}}catch(J){return{status:"unhealthy",message:J instanceof Error?J.message:"Database check failed"}}};return H.name="database",H},memory($=512){let H=()=>{if(typeof process>"u"||!process.memoryUsage)return{status:"healthy",message:"Memory check not available"};let Q=process.memoryUsage().heapUsed/1024/1024;return{status:Q<$?"healthy":"unhealthy",message:`Heap usage: ${Q.toFixed(2)}MB / ${$}MB`,heapUsedMB:Q.toFixed(2),maxUsageMB:$}};return H.name="memory",H},disk($=90){let H=()=>{return{status:"healthy",message:"Disk check not implemented (requires additional dependencies)"}};return H.name="disk",H}};var RE={};L1(RE,{WebSocketPlugin:()=>p$,WebSocketManager:()=>l$,WebSocketConnection:()=>c$,WebSocket:()=>zY,OnMessage:()=>AY,OnDisconnect:()=>RY,OnConnect:()=>NY});module.exports=l1(RE);var Ef=F0(Q$());var Af=F0(Q$()),C5=Symbol("route:metadata"),P5=Symbol("controller:metadata"),VY=Symbol("parameter:metadata"),_Y=Symbol("dependency:metadata"),K5=Symbol("websocket:metadata"),FY=Symbol("websocket:handler:metadata"),I5=Symbol("graphql:resolver"),n4=Symbol("graphql:field"),T5=Symbol("auth:metadata"),b5=Symbol("oauth:metadata"),f5=Symbol("roles:metadata"),x5=Symbol("permissions:metadata"),k5=Symbol("minimum-role:metadata"),h5=Symbol("resource-permission:metadata"),v5=Symbol("session:metadata"),g5=Symbol("csrf:metadata");class m{routes=new Map;controllers=new Map;routesByController=new Map;websockets=new Map;graphqlResolvers=new Map;graphqlFields=new Map;registerRoute($){let H=this.getRouteKey($.target,$.propertyKey);if(this.routes.set(H,$),!this.routesByController.has($.target))this.routesByController.set($.target,[]);this.routesByController.get($.target).push($)}registerController($,H){this.controllers.set($,H)}getRoutes(){return Array.from(this.routes.values())}getRoute($,H){let J=this.getRouteKey($,H);return this.routes.get(J)}getRoutesByController($){return this.routesByController.get($)||[]}getController($){return this.controllers.get($)}getControllers(){return new Map(this.controllers)}registerWebSocket($){this.websockets.set($.target,$)}getWebSockets(){return Array.from(this.websockets.values())}getWebSocket($){return this.websockets.get($)}registerGraphQLResolver($){this.graphqlResolvers.set($.target,$)}registerGraphQLField($){let H=this.getRouteKey($.target,$.propertyKey);this.graphqlFields.set(H,$)}getGraphQLResolvers(){return Array.from(this.graphqlResolvers.values())}getGraphQLResolver($){return this.graphqlResolvers.get($)}getGraphQLFields(){return Array.from(this.graphqlFields.values())}getGraphQLFieldsByResolver($){return Array.from(this.graphqlFields.values()).filter((H)=>H.target===$)}clear(){this.routes.clear(),this.controllers.clear(),this.routesByController.clear(),this.websockets.clear(),this.graphqlResolvers.clear(),this.graphqlFields.clear()}getRouteKey($,H){return`${$.name}:${H}`}static defineRoute($,H,J){let Q=this.getRouteMetadata($,H),X={...Q,...J,target:$.constructor,propertyKey:H,middleware:[...Q?.middleware||[],...J.middleware||[]],parameters:J.parameters||Q?.parameters||[],dependencies:J.dependencies||Q?.dependencies||[],responses:J.responses||Q?.responses||[],auth:J.auth||Q?.auth,oauth:J.oauth||Q?.oauth,roles:J.roles||Q?.roles,permissions:J.permissions||Q?.permissions,minimumRole:J.minimumRole||Q?.minimumRole,resourcePermission:J.resourcePermission||Q?.resourcePermission,session:J.session||Q?.session,csrf:J.csrf||Q?.csrf};Reflect.defineMetadata(C5,X,$,H)}static defineParameter($,H,J,Q){let X=this.getParameterMetadata($,H)||[];X[J]=Q,Reflect.defineMetadata(VY,X,$,H);let Y=this.getRouteMetadata($,H);this.defineRoute($,H,{...Y,parameters:X})}static defineDependency($,H,J,Q){let X=this.getDependencyMetadata($,H)||[];X[J]=Q,Reflect.defineMetadata(_Y,X,$,H);let Y=this.getRouteMetadata($,H);this.defineRoute($,H,{...Y,dependencies:X})}static defineController($,H){Reflect.defineMetadata(P5,H,$)}static getRouteMetadata($,H){return Reflect.getMetadata(C5,$,H)}static getParameterMetadata($,H){return Reflect.getMetadata(VY,$,H)}static getDependencyMetadata($,H){return Reflect.getMetadata(_Y,$,H)}static getControllerMetadata($){return Reflect.getMetadata(P5,$)}static hasControllerMetadata($){return Reflect.hasMetadata(P5,$)}static hasRouteMetadata($,H){return Reflect.hasMetadata(C5,$,H)}static getRouteMethods($){let H=$.prototype,J=[],Q=Object.getOwnPropertyNames(H);for(let X of Q){if(X==="constructor")continue;if(this.hasRouteMetadata(H,X))J.push(X)}return J}static defineWebSocket($,H){let Q={...this.getWebSocketMetadata($),...H,target:$};Reflect.defineMetadata(K5,Q,$)}static defineWebSocketHandler($,H,J){let Q=this.getWebSocketMetadata($.constructor)||{};switch(J.type){case"connect":Q.onConnect=H;break;case"message":Q.onMessage=H,Q.messageSchema=J.schema;break;case"disconnect":Q.onDisconnect=H;break}this.defineWebSocket($.constructor,Q),Reflect.defineMetadata(FY,J,$,H)}static getWebSocketMetadata($){return Reflect.getMetadata(K5,$)}static getWebSocketHandlerMetadata($,H){return Reflect.getMetadata(FY,$,H)}static hasWebSocketMetadata($){return Reflect.hasMetadata(K5,$)}static defineGraphQLResolver($,H){Reflect.defineMetadata(I5,H,$)}static defineGraphQLField($,H,J){Reflect.defineMetadata(n4,J,$,H);let Q=this.getGraphQLFieldsMetadata($.constructor)||[];Q.push(J),Reflect.defineMetadata(n4,Q,$.constructor)}static getGraphQLResolverMetadata($){return Reflect.getMetadata(I5,$)}static getGraphQLFieldsMetadata($){return Reflect.getMetadata(n4,$)||[]}static getGraphQLFieldMetadata($,H){return Reflect.getMetadata(n4,$,H)}static hasGraphQLResolverMetadata($){return Reflect.hasMetadata(I5,$)}static hasGraphQLFieldMetadata($,H){return Reflect.hasMetadata(n4,$,H)}static defineAuth($,H,J){Reflect.defineMetadata(T5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,auth:J})}static getAuthMetadata($,H){return Reflect.getMetadata(T5,$,H)}static hasAuthMetadata($,H){return Reflect.hasMetadata(T5,$,H)}static defineOAuth($,H,J){Reflect.defineMetadata(b5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,oauth:J})}static getOAuthMetadata($,H){return Reflect.getMetadata(b5,$,H)}static hasOAuthMetadata($,H){return Reflect.hasMetadata(b5,$,H)}static defineRoles($,H,J){Reflect.defineMetadata(f5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,roles:J})}static definePermissions($,H,J){Reflect.defineMetadata(x5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,permissions:J})}static defineMinimumRole($,H,J){Reflect.defineMetadata(k5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,minimumRole:J})}static getRolesMetadata($,H){return Reflect.getMetadata(f5,$,H)}static getPermissionsMetadata($,H){return Reflect.getMetadata(x5,$,H)}static getMinimumRoleMetadata($,H){return Reflect.getMetadata(k5,$,H)}static hasRolesMetadata($,H){return Reflect.hasMetadata(f5,$,H)}static hasPermissionsMetadata($,H){return Reflect.hasMetadata(x5,$,H)}static hasMinimumRoleMetadata($,H){return Reflect.hasMetadata(k5,$,H)}static defineResourcePermission($,H,J){Reflect.defineMetadata(h5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,resourcePermission:J})}static getResourcePermissionMetadata($,H){return Reflect.getMetadata(h5,$,H)}static hasResourcePermissionMetadata($,H){return Reflect.hasMetadata(h5,$,H)}static defineSession($,H,J){Reflect.defineMetadata(v5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,session:J})}static defineCSRF($,H,J){Reflect.defineMetadata(g5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,csrf:J})}static getSessionMetadata($,H){return Reflect.getMetadata(v5,$,H)}static getCSRFMetadata($,H){return Reflect.getMetadata(g5,$,H)}static hasSessionMetadata($,H){return Reflect.hasMetadata(v5,$,H)}static hasCSRFMetadata($,H){return Reflect.hasMetadata(g5,$,H)}}function zY($){return(H)=>{m.defineWebSocket(H,{path:$})}}function NY(){return($,H)=>{m.defineWebSocketHandler($,H,{type:"connect",method:H})}}function AY($){return(H,J)=>{m.defineWebSocketHandler(H,J,{type:"message",method:J,schema:$})}}function RY(){return($,H)=>{m.defineWebSocketHandler($,H,{type:"disconnect",method:H})}}var EE={};L1(EE,{zodToGraphQLType:()=>$0,zodObjectToGraphQLType:()=>qY,zodObjectToGraphQLInput:()=>UY,isNullable:()=>X$,hasResolverMetadata:()=>WY,hasFieldMetadata:()=>GY,getResolverMetadata:()=>QY,getFieldsMetadata:()=>XY,getFieldMetadata:()=>YY,getDefaultValue:()=>F2,getArgumentsMetadata:()=>c4,Subscription:()=>$Y,Resolver:()=>aX,Mutation:()=>eX,GraphQLSubscription:()=>$Y,GraphQLSchemaBuilder:()=>l4,GraphQLQuery:()=>tX,GraphQLPlugin:()=>p4,GraphQLMutation:()=>eX,GraphQLCtx:()=>JY,GQLSubscription:()=>$Y,GQLQuery:()=>tX,GQLMutation:()=>eX,GQLContext:()=>JY,Arg:()=>HY});module.exports=l1(EE);var jE={};L1(jE,{z:()=>R});module.exports=l1(jE);var dE={};L1(dE,{setupTestApp:()=>J7,mockDependency:()=>H7,createTestClient:()=>v2,createTestApp:()=>h2,clearMocks:()=>Q7,TestClient:()=>s$});module.exports=l1(dE);class s${hono;constructor($){this.hono=$.getHono()}async get($,H){return this.request("GET",$,H)}async post($,H){return this.request("POST",$,H)}async put($,H){return this.request("PUT",$,H)}async delete($,H){return this.request("DELETE",$,H)}async patch($,H){return this.request("PATCH",$,H)}async request($,H,J){let Q=this.buildUrl(H,J?.query),X={method:$,headers:this.buildHeaders(J)};if(J?.body!==void 0)X.body=J.body;else if(J?.json!==void 0)X.body=JSON.stringify(J.json);let Y=await this.hono.request(Q,X),W=await Y.text(),G;try{G=JSON.parse(W)}catch{G=W}return{status:Y.status,headers:Y.headers,body:G,text:W,json:async()=>JSON.parse(W),ok:Y.ok}}buildUrl($,H){if(!H||Object.keys(H).length===0)return $;let J=new URLSearchParams(H).toString();return`${$}?${J}`}buildHeaders($){let H={...$?.headers};if($?.json!==void 0&&!H["Content-Type"])H["Content-Type"]="application/json";return H}}var y5=($,H,J)=>{return(Q,X)=>{let Y=-1;return W(0);async function W(G){if(G<=Y)throw Error("next() called multiple times");Y=G;let q,U=!1,B;if($[G])B=$[G][0][0],Q.req.routeIndex=G;else B=G===$.length&&X||void 0;if(B)try{q=await B(Q,()=>W(G+1))}catch(w){if(w instanceof Error&&H)Q.error=w,q=await H(w,Q),U=!0;else throw w}else if(Q.finalized===!1&&J)q=await J(Q);if(q&&(Q.finalized===!1||U))Q.res=q;return Q}}};var EY=Symbol();var jY=async($,H=Object.create(null))=>{let{all:J=!1,dot:Q=!1}=H,Y=($ instanceof A2?$.raw.headers:$.headers).get("Content-Type");if(Y?.startsWith("multipart/form-data")||Y?.startsWith("application/x-www-form-urlencoded"))return OE($,{all:J,dot:Q});return{}};async function OE($,H){let J=await $.formData();if(J)return ZE(J,H);return{}}function ZE($,H){let J=Object.create(null);if($.forEach((Q,X)=>{if(!(H.all||X.endsWith("[]")))J[X]=Q;else LE(J,X,Q)}),H.dot)Object.entries(J).forEach(([Q,X])=>{if(Q.includes("."))ME(J,Q,X),delete J[Q]});return J}var LE=($,H,J)=>{if($[H]!==void 0)if(Array.isArray($[H]))$[H].push(J);else $[H]=[$[H],J];else if(!H.endsWith("[]"))$[H]=J;else $[H]=[J]},ME=($,H,J)=>{let Q=$,X=H.split(".");X.forEach((Y,W)=>{if(W===X.length-1)Q[Y]=J;else{if(!Q[Y]||typeof Q[Y]!=="object"||Array.isArray(Q[Y])||Q[Y]instanceof File)Q[Y]=Object.create(null);Q=Q[Y]}})};var m5=($)=>{let H=$.split("/");if(H[0]==="")H.shift();return H},OY=($)=>{let{groups:H,path:J}=SE($),Q=m5(J);return CE(Q,H)},SE=($)=>{let H=[];return $=$.replace(/\{[^}]+\}/g,(J,Q)=>{let X=`@${Q}`;return H.push([X,J]),X}),{groups:H,path:$}},CE=($,H)=>{for(let J=H.length-1;J>=0;J--){let[Q]=H[J];for(let X=$.length-1;X>=0;X--)if($[X].includes(Q)){$[X]=$[X].replace(Q,H[J][1]);break}}return $},R2={},ZY=($,H)=>{if($==="*")return"*";let J=$.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);if(J){let Q=`${$}#${H}`;if(!R2[Q])if(J[2])R2[Q]=H&&H[0]!==":"&&H[0]!=="*"?[Q,J[1],new RegExp(`^${J[2]}(?=/${H})`)]:[$,J[1],new RegExp(`^${J[2]}$`)];else R2[Q]=[$,J[1],!0];return R2[Q]}return null},o$=($,H)=>{try{return H($)}catch{return $.replace(/(?:%[0-9A-Fa-f]{2})+/g,(J)=>{try{return H(J)}catch{return J}})}},PE=($)=>o$($,decodeURI),d5=($)=>{let H=$.url,J=H.indexOf("/",H.indexOf(":")+4),Q=J;for(;Q<H.length;Q++){let X=H.charCodeAt(Q);if(X===37){let Y=H.indexOf("?",Q),W=H.slice(J,Y===-1?void 0:Y);return PE(W.includes("%25")?W.replace(/%25/g,"%2525"):W)}else if(X===63)break}return H.slice(J,Q)};var LY=($)=>{let H=d5($);return H.length>1&&H.at(-1)==="/"?H.slice(0,-1):H},W$=($,H,...J)=>{if(J.length)H=W$(H,...J);return`${$?.[0]==="/"?"":"/"}${$}${H==="/"?"":`${$?.at(-1)==="/"?"":"/"}${H?.[0]==="/"?H.slice(1):H}`}`},E2=($)=>{if($.charCodeAt($.length-1)!==63||!$.includes(":"))return null;let H=$.split("/"),J=[],Q="";return H.forEach((X)=>{if(X!==""&&!/\:/.test(X))Q+="/"+X;else if(/\:/.test(X))if(/\?/.test(X)){if(J.length===0&&Q==="")J.push("/");else J.push(Q);let Y=X.replace("?","");Q+="/"+Y,J.push(Q)}else Q+="/"+X}),J.filter((X,Y,W)=>W.indexOf(X)===Y)},u5=($)=>{if(!/[%+]/.test($))return $;if($.indexOf("+")!==-1)$=$.replace(/\+/g," ");return $.indexOf("%")!==-1?o$($,i4):$},MY=($,H,J)=>{let Q;if(!J&&H&&!/[%+]/.test(H)){let W=$.indexOf(`?${H}`,8);if(W===-1)W=$.indexOf(`&${H}`,8);while(W!==-1){let G=$.charCodeAt(W+H.length+1);if(G===61){let q=W+H.length+2,U=$.indexOf("&",q);return u5($.slice(q,U===-1?void 0:U))}else if(G==38||isNaN(G))return"";W=$.indexOf(`&${H}`,W+1)}if(Q=/[%+]/.test($),!Q)return}let X={};Q??=/[%+]/.test($);let Y=$.indexOf("?",8);while(Y!==-1){let W=$.indexOf("&",Y+1),G=$.indexOf("=",Y);if(G>W&&W!==-1)G=-1;let q=$.slice(Y+1,G===-1?W===-1?void 0:W:G);if(Q)q=u5(q);if(Y=W,q==="")continue;let U;if(G===-1)U="";else if(U=$.slice(G+1,W===-1?void 0:W),Q)U=u5(U);if(J){if(!(X[q]&&Array.isArray(X[q])))X[q]=[];X[q].push(U)}else X[q]??=U}return H?X[H]:X},SY=MY,CY=($,H)=>{return MY($,H,!0)},i4=decodeURIComponent;var PY=($)=>o$($,i4),A2=class{raw;#H;#$;routeIndex=0;path;bodyCache={};constructor($,H="/",J=[[]]){this.raw=$,this.path=H,this.#$=J,this.#H={}}param($){return $?this.#J($):this.#Y()}#J($){let H=this.#$[0][this.routeIndex][1][$],J=this.#X(H);return J&&/\%/.test(J)?PY(J):J}#Y(){let $={},H=Object.keys(this.#$[0][this.routeIndex][1]);for(let J of H){let Q=this.#X(this.#$[0][this.routeIndex][1][J]);if(Q!==void 0)$[J]=/\%/.test(Q)?PY(Q):Q}return $}#X($){return this.#$[1]?this.#$[1][$]:$}query($){return SY(this.url,$)}queries($){return CY(this.url,$)}header($){if($)return this.raw.headers.get($)??void 0;let H={};return this.raw.headers.forEach((J,Q)=>{H[Q]=J}),H}async parseBody($){return this.bodyCache.parsedBody??=await jY(this,$)}#Q=($)=>{let{bodyCache:H,raw:J}=this,Q=H[$];if(Q)return Q;let X=Object.keys(H)[0];if(X)return H[X].then((Y)=>{if(X==="json")Y=JSON.stringify(Y);return new Response(Y)[$]()});return H[$]=J[$]()};json(){return this.#Q("text").then(($)=>JSON.parse($))}text(){return this.#Q("text")}arrayBuffer(){return this.#Q("arrayBuffer")}blob(){return this.#Q("blob")}formData(){return this.#Q("formData")}addValidatedData($,H){this.#H[$]=H}valid($){return this.#H[$]}get url(){return this.raw.url}get method(){return this.raw.method}get[EY](){return this.#$}get matchedRoutes(){return this.#$[0].map(([[,$]])=>$)}get routePath(){return this.#$[0].map(([[,$]])=>$)[this.routeIndex].path}};var KY={Stringify:1,BeforeStream:2,Stream:3},KE=($,H)=>{let J=new String($);return J.isEscaped=!0,J.callbacks=H,J};var c5=async($,H,J,Q,X)=>{if(typeof $==="object"&&!($ instanceof String)){if(!($ instanceof Promise))$=$.toString();if($ instanceof Promise)$=await $}let Y=$.callbacks;if(!Y?.length)return Promise.resolve($);if(X)X[0]+=$;else X=[$];let W=Promise.all(Y.map((G)=>G({phase:H,buffer:X,context:Q}))).then((G)=>Promise.all(G.filter(Boolean).map((q)=>c5(q,H,!1,Q,X))).then(()=>X[0]));if(J)return KE(await W,Y);else return W};var IE="text/plain; charset=UTF-8",l5=($,H)=>{return{"Content-Type":$,...H}},IY=class{#H;#$;env={};#J;finalized=!1;error;#Y;#X;#Q;#B;#q;#U;#G;#w;#D;constructor($,H){if(this.#H=$,H)this.#X=H.executionCtx,this.env=H.env,this.#U=H.notFoundHandler,this.#D=H.path,this.#w=H.matchResult}get req(){return this.#$??=new A2(this.#H,this.#D,this.#w),this.#$}get event(){if(this.#X&&"respondWith"in this.#X)return this.#X;else throw Error("This context has no FetchEvent")}get executionCtx(){if(this.#X)return this.#X;else throw Error("This context has no ExecutionContext")}get res(){return this.#Q||=new Response(null,{headers:this.#G??=new Headers})}set res($){if(this.#Q&&$){$=new Response($.body,$);for(let[H,J]of this.#Q.headers.entries()){if(H==="content-type")continue;if(H==="set-cookie"){let Q=this.#Q.headers.getSetCookie();$.headers.delete("set-cookie");for(let X of Q)$.headers.append("set-cookie",X)}else $.headers.set(H,J)}}this.#Q=$,this.finalized=!0}render=(...$)=>{return this.#q??=(H)=>this.html(H),this.#q(...$)};setLayout=($)=>this.#B=$;getLayout=()=>this.#B;setRenderer=($)=>{this.#q=$};header=($,H,J)=>{if(this.finalized)this.#Q=new Response(this.#Q.body,this.#Q);let Q=this.#Q?this.#Q.headers:this.#G??=new Headers;if(H===void 0)Q.delete($);else if(J?.append)Q.append($,H);else Q.set($,H)};status=($)=>{this.#Y=$};set=($,H)=>{this.#J??=new Map,this.#J.set($,H)};get=($)=>{return this.#J?this.#J.get($):void 0};get var(){if(!this.#J)return{};return Object.fromEntries(this.#J)}#W($,H,J){let Q=this.#Q?new Headers(this.#Q.headers):this.#G??new Headers;if(typeof H==="object"&&"headers"in H){let Y=H.headers instanceof Headers?H.headers:new Headers(H.headers);for(let[W,G]of Y)if(W.toLowerCase()==="set-cookie")Q.append(W,G);else Q.set(W,G)}if(J)for(let[Y,W]of Object.entries(J))if(typeof W==="string")Q.set(Y,W);else{Q.delete(Y);for(let G of W)Q.append(Y,G)}let X=typeof H==="number"?H:H?.status??this.#Y;return new Response($,{status:X,headers:Q})}newResponse=(...$)=>this.#W(...$);body=($,H,J)=>this.#W($,H,J);text=($,H,J)=>{return!this.#G&&!this.#Y&&!H&&!J&&!this.finalized?new Response($):this.#W($,H,l5(IE,J))};json=($,H,J)=>{return this.#W(JSON.stringify($),H,l5("application/json",J))};html=($,H,J)=>{let Q=(X)=>this.#W(X,H,l5("text/html; charset=UTF-8",J));return typeof $==="object"?c5($,KY.Stringify,!1,{}).then(Q):Q($)};redirect=($,H)=>{let J=String($);return this.header("Location",!/[^\x00-\xFF]/.test(J)?J:encodeURI(J)),this.newResponse(null,H??302)};notFound=()=>{return this.#U??=()=>new Response,this.#U(this)}};var V1="ALL",TY="all",bY=["get","post","put","delete","options","patch"],j2="Can not add a route since the matcher is already built.",O2=class extends Error{};var fY="__COMPOSED_HANDLER";var TE=($)=>{return $.text("404 Not Found",404)},xY=($,H)=>{if("getResponse"in $){let J=$.getResponse();return H.newResponse(J.body,J)}return console.error($),H.text("Internal Server Error",500)},p5=class{get;post;put;delete;options;patch;all;on;use;router;getPath;_basePath="/";#H="/";routes=[];constructor($={}){[...bY,TY].forEach((X)=>{this[X]=(Y,...W)=>{if(typeof Y==="string")this.#H=Y;else this.#Y(X,this.#H,Y);return W.forEach((G)=>{this.#Y(X,this.#H,G)}),this}}),this.on=(X,Y,...W)=>{for(let G of[Y].flat()){this.#H=G;for(let q of[X].flat())W.map((U)=>{this.#Y(q.toUpperCase(),this.#H,U)})}return this},this.use=(X,...Y)=>{if(typeof X==="string")this.#H=X;else this.#H="*",Y.unshift(X);return Y.forEach((W)=>{this.#Y(V1,this.#H,W)}),this};let{strict:J,...Q}=$;Object.assign(this,Q),this.getPath=J??!0?$.getPath??d5:LY}#$(){let $=new p5({router:this.router,getPath:this.getPath});return $.errorHandler=this.errorHandler,$.#J=this.#J,$.routes=this.routes,$}#J=TE;errorHandler=xY;route($,H){let J=this.basePath($);return H.routes.map((Q)=>{let X;if(H.errorHandler===xY)X=Q.handler;else X=async(Y,W)=>(await y5([],H.errorHandler)(Y,()=>Q.handler(Y,W))).res,X[fY]=Q.handler;J.#Y(Q.method,Q.path,X)}),this}basePath($){let H=this.#$();return H._basePath=W$(this._basePath,$),H}onError=($)=>{return this.errorHandler=$,this};notFound=($)=>{return this.#J=$,this};mount($,H,J){let Q,X;if(J)if(typeof J==="function")X=J;else if(X=J.optionHandler,J.replaceRequest===!1)Q=(G)=>G;else Q=J.replaceRequest;let Y=X?(G)=>{let q=X(G);return Array.isArray(q)?q:[q]}:(G)=>{let q=void 0;try{q=G.executionCtx}catch{}return[G.env,q]};Q||=(()=>{let G=W$(this._basePath,$),q=G==="/"?0:G.length;return(U)=>{let B=new URL(U.url);return B.pathname=B.pathname.slice(q)||"/",new Request(B,U)}})();let W=async(G,q)=>{let U=await H(Q(G.req.raw),...Y(G));if(U)return U;await q()};return this.#Y(V1,W$($,"*"),W),this}#Y($,H,J){$=$.toUpperCase(),H=W$(this._basePath,H);let Q={basePath:this._basePath,path:H,method:$,handler:J};this.router.add($,H,[J,Q]),this.routes.push(Q)}#X($,H){if($ instanceof Error)return this.errorHandler($,H);throw $}#Q($,H,J,Q){if(Q==="HEAD")return(async()=>new Response(null,await this.#Q($,H,J,"GET")))();let X=this.getPath($,{env:J}),Y=this.router.match(Q,X),W=new IY($,{path:X,matchResult:Y,env:J,executionCtx:H,notFoundHandler:this.#J});if(Y[0].length===1){let q;try{q=Y[0][0][0][0](W,async()=>{W.res=await this.#J(W)})}catch(U){return this.#X(U,W)}return q instanceof Promise?q.then((U)=>U||(W.finalized?W.res:this.#J(W))).catch((U)=>this.#X(U,W)):q??this.#J(W)}let G=y5(Y[0],this.errorHandler,this.#J);return(async()=>{try{let q=await G(W);if(!q.finalized)throw Error("Context is not finalized. Did you forget to return a Response object or `await next()`?");return q.res}catch(q){return this.#X(q,W)}})()}fetch=($,...H)=>{return this.#Q($,H[1],H[0],$.method)};request=($,H,J,Q)=>{if($ instanceof Request)return this.fetch(H?new Request($,H):$,J,Q);return $=$.toString(),this.fetch(new Request(/^https?:\/\//.test($)?$:`http://localhost${W$("/",$)}`,H),J,Q)};fire=()=>{addEventListener("fetch",($)=>{$.respondWith(this.#Q($.request,$,void 0,$.request.method))})}};var Z2="[^/]+",s4=".*",o4="(?:|/.*)",G$=Symbol(),bE=new Set(".\\+*[^]$()");function fE($,H){if($.length===1)return H.length===1?$<H?-1:1:-1;if(H.length===1)return 1;if($===s4||$===o4)return 1;else if(H===s4||H===o4)return-1;if($===Z2)return 1;else if(H===Z2)return-1;return $.length===H.length?$<H?-1:1:H.length-$.length}var L2=class{#H;#$;#J=Object.create(null);insert($,H,J,Q,X){if($.length===0){if(this.#H!==void 0)throw G$;if(X)return;this.#H=H;return}let[Y,...W]=$,G=Y==="*"?W.length===0?["","",s4]:["","",Z2]:Y==="/*"?["","",o4]:Y.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/),q;if(G){let U=G[1],B=G[2]||Z2;if(U&&G[2]){if(B===".*")throw G$;if(B=B.replace(/^\((?!\?:)(?=[^)]+\)$)/,"(?:"),/\((?!\?:)/.test(B))throw G$}if(q=this.#J[B],!q){if(Object.keys(this.#J).some((w)=>w!==s4&&w!==o4))throw G$;if(X)return;if(q=this.#J[B]=new L2,U!=="")q.#$=Q.varIndex++}if(!X&&U!=="")J.push([U,q.#$])}else if(q=this.#J[Y],!q){if(Object.keys(this.#J).some((U)=>U.length>1&&U!==s4&&U!==o4))throw G$;if(X)return;q=this.#J[Y]=new L2}q.insert(W,H,J,Q,X)}buildRegExpStr(){let H=Object.keys(this.#J).sort(fE).map((J)=>{let Q=this.#J[J];return(typeof Q.#$==="number"?`(${J})@${Q.#$}`:bE.has(J)?`\\${J}`:J)+Q.buildRegExpStr()});if(typeof this.#H==="number")H.unshift(`#${this.#H}`);if(H.length===0)return"";if(H.length===1)return H[0];return"(?:"+H.join("|")+")"}};var kY=class{#H={varIndex:0};#$=new L2;insert($,H,J){let Q=[],X=[];for(let W=0;;){let G=!1;if($=$.replace(/\{[^}]+\}/g,(q)=>{let U=`@\\${W}`;return X[W]=[U,q],W++,G=!0,U}),!G)break}let Y=$.match(/(?::[^\/]+)|(?:\/\*$)|./g)||[];for(let W=X.length-1;W>=0;W--){let[G]=X[W];for(let q=Y.length-1;q>=0;q--)if(Y[q].indexOf(G)!==-1){Y[q]=Y[q].replace(G,X[W][1]);break}}return this.#$.insert(Y,H,Q,this.#H,J),Q}buildRegExp(){let $=this.#$.buildRegExpStr();if($==="")return[/^$/,[],[]];let H=0,J=[],Q=[];return $=$.replace(/#(\d+)|@(\d+)|\.\*\$/g,(X,Y,W)=>{if(Y!==void 0)return J[++H]=Number(Y),"$()";if(W!==void 0)return Q[Number(W)]=++H,"";return""}),[new RegExp(`^${$}`),J,Q]}};var hY=[],xE=[/^$/,[],Object.create(null)],vY=Object.create(null);function gY($){return vY[$]??=new RegExp($==="*"?"":`^${$.replace(/\/\*$|([.\\+*[^\]$()])/g,(H,J)=>J?`\\${J}`:"(?:|/.*)")}$`)}function kE(){vY=Object.create(null)}function hE($){let H=new kY,J=[];if($.length===0)return xE;let Q=$.map((U)=>[!/\*|\/:/.test(U[0]),...U]).sort(([U,B],[w,_])=>U?1:w?-1:B.length-_.length),X=Object.create(null);for(let U=0,B=-1,w=Q.length;U<w;U++){let[_,V,D]=Q[U];if(_)X[V]=[D.map(([E])=>[E,Object.create(null)]),hY];else B++;let A;try{A=H.insert(V,B,_)}catch(E){throw E===G$?new O2(V):E}if(_)continue;J[B]=D.map(([E,Z])=>{let M=Object.create(null);Z-=1;for(;Z>=0;Z--){let[L,b]=A[Z];M[L]=b}return[E,M]})}let[Y,W,G]=H.buildRegExp();for(let U=0,B=J.length;U<B;U++)for(let w=0,_=J[U].length;w<_;w++){let V=J[U][w]?.[1];if(!V)continue;let D=Object.keys(V);for(let A=0,E=D.length;A<E;A++)V[D[A]]=G[V[D[A]]]}let q=[];for(let U in W)q[U]=J[W[U]];return[Y,q,X]}function r$($,H){if(!$)return;for(let J of Object.keys($).sort((Q,X)=>X.length-Q.length))if(gY(J).test(H))return[...$[J]];return}var n5=class{name="RegExpRouter";#H;#$;constructor(){this.#H={[V1]:Object.create(null)},this.#$={[V1]:Object.create(null)}}add($,H,J){let Q=this.#H,X=this.#$;if(!Q||!X)throw Error(j2);if(!Q[$])[Q,X].forEach((G)=>{G[$]=Object.create(null),Object.keys(G[V1]).forEach((q)=>{G[$][q]=[...G[V1][q]]})});if(H==="/*")H="*";let Y=(H.match(/\/:/g)||[]).length;if(/\*$/.test(H)){let G=gY(H);if($===V1)Object.keys(Q).forEach((q)=>{Q[q][H]||=r$(Q[q],H)||r$(Q[V1],H)||[]});else Q[$][H]||=r$(Q[$],H)||r$(Q[V1],H)||[];Object.keys(Q).forEach((q)=>{if($===V1||$===q)Object.keys(Q[q]).forEach((U)=>{G.test(U)&&Q[q][U].push([J,Y])})}),Object.keys(X).forEach((q)=>{if($===V1||$===q)Object.keys(X[q]).forEach((U)=>G.test(U)&&X[q][U].push([J,Y]))});return}let W=E2(H)||[H];for(let G=0,q=W.length;G<q;G++){let U=W[G];Object.keys(X).forEach((B)=>{if($===V1||$===B)X[B][U]||=[...r$(Q[B],U)||r$(Q[V1],U)||[]],X[B][U].push([J,Y-q+G+1])})}}match($,H){kE();let J=this.#J();return this.match=(Q,X)=>{let Y=J[Q]||J[V1],W=Y[2][X];if(W)return W;let G=X.match(Y[0]);if(!G)return[[],hY];let q=G.indexOf("",1);return[Y[1][q],G]},this.match($,H)}#J(){let $=Object.create(null);return Object.keys(this.#$).concat(Object.keys(this.#H)).forEach((H)=>{$[H]||=this.#Y(H)}),this.#H=this.#$=void 0,$}#Y($){let H=[],J=$===V1;if([this.#H,this.#$].forEach((Q)=>{let X=Q[$]?Object.keys(Q[$]).map((Y)=>[Y,Q[$][Y]]):[];if(X.length!==0)J||=!0,H.push(...X);else if($!==V1)H.push(...Object.keys(Q[V1]).map((Y)=>[Y,Q[V1][Y]]))}),!J)return null;else return hE(H)}};var i5=class{name="SmartRouter";#H=[];#$=[];constructor($){this.#H=$.routers}add($,H,J){if(!this.#$)throw Error(j2);this.#$.push([$,H,J])}match($,H){if(!this.#$)throw Error("Fatal error");let J=this.#H,Q=this.#$,X=J.length,Y=0,W;for(;Y<X;Y++){let G=J[Y];try{for(let q=0,U=Q.length;q<U;q++)G.add(...Q[q]);W=G.match($,H)}catch(q){if(q instanceof O2)continue;throw q}this.match=G.match.bind(G),this.#H=[G],this.#$=void 0;break}if(Y===X)throw Error("Fatal error");return this.name=`SmartRouter + ${this.activeRouter.name}`,W}get activeRouter(){if(this.#$||this.#H.length!==1)throw Error("No active router has been determined yet.");return this.#H[0]}};var r4=Object.create(null),s5=class{#H;#$;#J;#Y=0;#X=r4;constructor($,H,J){if(this.#$=J||Object.create(null),this.#H=[],$&&H){let Q=Object.create(null);Q[$]={handler:H,possibleKeys:[],score:0},this.#H=[Q]}this.#J=[]}insert($,H,J){this.#Y=++this.#Y;let Q=this,X=OY(H),Y=[];for(let W=0,G=X.length;W<G;W++){let q=X[W],U=X[W+1],B=ZY(q,U),w=Array.isArray(B)?B[0]:q;if(w in Q.#$){if(Q=Q.#$[w],B)Y.push(B[1]);continue}if(Q.#$[w]=new s5,B)Q.#J.push(B),Y.push(B[1]);Q=Q.#$[w]}return Q.#H.push({[$]:{handler:J,possibleKeys:Y.filter((W,G,q)=>q.indexOf(W)===G),score:this.#Y}}),Q}#Q($,H,J,Q){let X=[];for(let Y=0,W=$.#H.length;Y<W;Y++){let G=$.#H[Y],q=G[H]||G[V1],U={};if(q!==void 0){if(q.params=Object.create(null),X.push(q),J!==r4||Q&&Q!==r4)for(let B=0,w=q.possibleKeys.length;B<w;B++){let _=q.possibleKeys[B],V=U[q.score];q.params[_]=Q?.[_]&&!V?Q[_]:J[_]??Q?.[_],U[q.score]=!0}}}return X}search($,H){let J=[];this.#X=r4;let X=[this],Y=m5(H),W=[];for(let G=0,q=Y.length;G<q;G++){let U=Y[G],B=G===q-1,w=[];for(let _=0,V=X.length;_<V;_++){let D=X[_],A=D.#$[U];if(A)if(A.#X=D.#X,B){if(A.#$["*"])J.push(...this.#Q(A.#$["*"],$,D.#X));J.push(...this.#Q(A,$,D.#X))}else w.push(A);for(let E=0,Z=D.#J.length;E<Z;E++){let M=D.#J[E],L=D.#X===r4?{}:{...D.#X};if(M==="*"){let d=D.#$["*"];if(d)J.push(...this.#Q(d,$,D.#X)),d.#X=L,w.push(d);continue}let[b,v,l]=M;if(!U&&!(l instanceof RegExp))continue;let i=D.#$[b],J1=Y.slice(G).join("/");if(l instanceof RegExp){let d=l.exec(J1);if(d){if(L[v]=d[0],J.push(...this.#Q(i,$,D.#X,L)),Object.keys(i.#$).length){i.#X=L;let W1=d[0].match(/\//)?.length??0;(W[W1]||=[]).push(i)}continue}}if(l===!0||l.test(U))if(L[v]=U,B){if(J.push(...this.#Q(i,$,L,D.#X)),i.#$["*"])J.push(...this.#Q(i.#$["*"],$,L,D.#X))}else i.#X=L,w.push(i)}}X=w.concat(W.shift()??[])}if(J.length>1)J.sort((G,q)=>{return G.score-q.score});return[J.map(({handler:G,params:q})=>[G,q])]}};var o5=class{name="TrieRouter";#H;constructor(){this.#H=new s5}add($,H,J){let Q=E2(H);if(Q){for(let X=0,Y=Q.length;X<Y;X++)this.#H.insert($,Q[X],J);return}this.#H.insert($,H,J)}match($,H){return this.#H.search($,H)}};var r5=class extends p5{constructor($={}){super($);this.router=$.router??new i5({routers:[new n5,new o5]})}};class a4{singletons=new Map;requestScoped=new WeakMap;providers=new Map;resolutionStack=new Set;providerNameCache=new WeakMap;stats={singletonHits:0,singletonMisses:0,requestHits:0,requestMisses:0,transientCreations:0};register($,H){this.providers.set($,H||{scope:"transient"})}async resolve($,H){let J=this.providers.get($)||{scope:H?.scope||"transient"},Q=H?.scope||J.scope||"transient";if(Q==="singleton"){if(this.singletons.has($))return this.stats.singletonHits++,this.singletons.get($);if(this.stats.singletonMisses++,this.resolutionStack.has($))throw Error(`Circular dependency detected: ${this.buildCircularDependencyMessage($)}`);this.resolutionStack.add($);try{let X=await this.create($,J,H?.context);return this.singletons.set($,X),X}finally{this.resolutionStack.delete($)}}if(Q==="request"&&H?.context){let X=this.requestScoped.get(H.context);if(X?.has($))return this.stats.requestHits++,X.get($);if(this.stats.requestMisses++,!X)X=new Map,this.requestScoped.set(H.context,X);if(this.resolutionStack.has($))throw Error(`Circular dependency detected: ${this.buildCircularDependencyMessage($)}`);this.resolutionStack.add($);try{let Y=await this.create($,J,H.context);return X.set($,Y),Y}finally{this.resolutionStack.delete($)}}if(this.stats.transientCreations++,this.resolutionStack.has($))throw Error(`Circular dependency detected: ${this.buildCircularDependencyMessage($)}`);this.resolutionStack.add($);try{return await this.create($,J,H?.context)}finally{this.resolutionStack.delete($)}}buildCircularDependencyMessage($){let H=Array.from(this.resolutionStack),J=this.getProviderName($);return H.map((X)=>this.getProviderName(X)).join(" -> ")+" -> "+J}async create($,H,J){if(H.factory)return H.factory();if(typeof $==="function")if($.prototype&&$.prototype.constructor===$){let Q=new $;return await this.resolveNestedDependencies(Q,J),Q}else{let Q=$();return Q instanceof Promise?await Q:Q}throw Error("Invalid provider type")}async resolveNestedDependencies($,H){}getProviderName($){if(typeof $==="string")return $;else if(typeof $==="symbol")return $.toString();let H=this.providerNameCache.get($);if(H)return H;let J;if(typeof $==="function")if($.name)J=$.name;else J=$.toString().substring(0,50);else J=String($);if(typeof $==="object"||typeof $==="function")this.providerNameCache.set($,J);return J}clear(){this.singletons.clear(),this.providers.clear(),this.resolutionStack.clear(),this.providerNameCache=new WeakMap,this.resetStats()}clearRequestScope($){this.requestScoped.delete($)}getStats(){let $=this.stats.singletonHits+this.stats.singletonMisses,H=$>0?this.stats.singletonHits/$*100:0,J=this.stats.requestHits+this.stats.requestMisses,Q=J>0?this.stats.requestHits/J*100:0;return{singletonHits:this.stats.singletonHits,singletonMisses:this.stats.singletonMisses,singletonHitRate:Math.round(H*100)/100,requestHits:this.stats.requestHits,requestMisses:this.stats.requestMisses,requestHitRate:Math.round(Q*100)/100,transientCreations:this.stats.transientCreations}}resetStats(){this.stats={singletonHits:0,singletonMisses:0,requestHits:0,requestMisses:0,transientCreations:0}}}var vE=/^[\w!#$%&'*.^`|~+-]+$/,gE=/^[ !#-:<-[\]-~]*$/,a5=($,H)=>{if(H&&$.indexOf(H)===-1)return{};let J=$.trim().split(";"),Q={};for(let X of J){X=X.trim();let Y=X.indexOf("=");if(Y===-1)continue;let W=X.substring(0,Y).trim();if(H&&H!==W||!vE.test(W))continue;let G=X.substring(Y+1).trim();if(G.startsWith('"')&&G.endsWith('"'))G=G.slice(1,-1);if(gE.test(G)){if(Q[W]=G.indexOf("%")!==-1?o$(G,i4):G,H)break}}return Q};var yE=($,H,J={})=>{let Q=`${$}=${H}`;if($.startsWith("__Secure-")&&!J.secure)throw Error("__Secure- Cookie must have Secure attributes");if($.startsWith("__Host-")){if(!J.secure)throw Error("__Host- Cookie must have Secure attributes");if(J.path!=="/")throw Error('__Host- Cookie must have Path attributes with "/"');if(J.domain)throw Error("__Host- Cookie must not have Domain attributes")}if(J&&typeof J.maxAge==="number"&&J.maxAge>=0){if(J.maxAge>34560000)throw Error("Cookies Max-Age SHOULD NOT be greater than 400 days (34560000 seconds) in duration.");Q+=`; Max-Age=${J.maxAge|0}`}if(J.domain&&J.prefix!=="host")Q+=`; Domain=${J.domain}`;if(J.path)Q+=`; Path=${J.path}`;if(J.expires){if(J.expires.getTime()-Date.now()>34560000000)throw Error("Cookies Expires SHOULD NOT be greater than 400 days (34560000 seconds) in the future.");Q+=`; Expires=${J.expires.toUTCString()}`}if(J.httpOnly)Q+="; HttpOnly";if(J.secure)Q+="; Secure";if(J.sameSite)Q+=`; SameSite=${J.sameSite.charAt(0).toUpperCase()+J.sameSite.slice(1)}`;if(J.priority)Q+=`; Priority=${J.priority.charAt(0).toUpperCase()+J.priority.slice(1)}`;if(J.partitioned){if(!J.secure)throw Error("Partitioned Cookie must have Secure attributes");Q+="; Partitioned"}return Q},M2=($,H,J)=>{return H=encodeURIComponent(H),yE($,H,J)};var S2=($,H,J)=>{let Q=$.req.raw.headers.get("Cookie");if(typeof H==="string"){if(!Q)return;let Y=H;if(J==="secure")Y="__Secure-"+H;else if(J==="host")Y="__Host-"+H;return a5(Q,Y)[Y]}if(!Q)return{};return a5(Q)};var uE=($,H,J)=>{let Q;if(J?.prefix==="secure")Q=M2("__Secure-"+$,H,{path:"/",...J,secure:!0});else if(J?.prefix==="host")Q=M2("__Host-"+$,H,{...J,path:"/",secure:!0,domain:void 0});else Q=M2($,H,{path:"/",...J});return Q},C2=($,H,J,Q)=>{let X=uE(H,J,Q);$.header("Set-Cookie",X,{append:!0})};class t5{static json($,H=200,J){return new P2($,H,J)}static html($,H=200){return new K2($,H)}static file($,H){return new T2($,H)}static stream($,H){return new b2($,H)}static redirect($,H=302){return new I2($,H)}}class P2{data;status;headers;constructor($,H=200,J={}){this.data=$;this.status=H;this.headers=J}toHonoResponse($){return $.json(this.data,this.status,this.headers)}}class K2{content;status;constructor($,H=200){this.content=$;this.status=H}toHonoResponse($){return $.html(this.content,this.status)}}class I2{url;status;constructor($,H=302){this.url=$;this.status=H}toHonoResponse($){return $.redirect(this.url,this.status)}}class T2{path;options;constructor($,H){this.path=$;this.options=H}async toHonoResponse($){try{let H=typeof Bun<"u"?Bun.file(this.path):await this.readFileNode(this.path),Q={"Content-Type":this.options?.contentType||this.guessContentType(this.path)};if(this.options?.download||this.options?.filename){let X=this.options?.filename||this.path.split("/").pop()||"download",Y=this.options?.download?"attachment":"inline";Q["Content-Disposition"]=`${Y}; filename="${X}"`}if(typeof Bun<"u"&&H instanceof Blob)return $.body(H,200,Q);else return $.body(H,200,Q)}catch(H){return $.json({error:"File not found",message:H instanceof Error?H.message:"Unknown error"},404)}}async readFileNode($){throw Error("File reading in Node.js requires fs module - use Bun runtime or implement adapter")}guessContentType($){let H=$.split(".").pop()?.toLowerCase();return{html:"text/html",css:"text/css",js:"application/javascript",json:"application/json",png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",svg:"image/svg+xml",pdf:"application/pdf",txt:"text/plain",xml:"application/xml"}[H||""]||"application/octet-stream"}}class b2{stream;options;constructor($,H){this.stream=$;this.options=H}toHonoResponse($){let H={"Content-Type":this.options?.contentType||"application/octet-stream",...this.options?.headers};return $.body(this.stream,200,H)}}class f2{static serialize($,H){if(H===null||H===void 0)return $.body(null,204);if(H instanceof t5)return H;if(H instanceof P2)return H.toHonoResponse($);if(H instanceof K2)return H.toHonoResponse($);if(H instanceof T2)return H.toHonoResponse($);if(H instanceof b2)return H.toHonoResponse($);if(H instanceof I2)return H.toHonoResponse($);if(H&&typeof H.toHonoResponse==="function")return H.toHonoResponse($);return $.json(H)}}class t4{static compile($){let H=this.compilePathRegex($.path),J=this.resolveParameterOrder($.parameters),Q=this.resolveDependencyOrder($.dependencies),X=this.calculateMaxArgumentIndex($.parameters,$.dependencies),Y=this.computeParameterFlags($.parameters);return{...$,pathRegex:H,parameterOrder:J,dependencyOrder:Q,maxArgumentIndex:X,...Y}}static compilePathRegex($){let H=$.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return H=H.replace(/\\\{([^}]+)\\\}/g,"(?<$1>[^/]+)"),H=H.replace(/:([a-zA-Z_][a-zA-Z0-9_]*)/g,"(?<$1>[^/]+)"),H=`^${H}$`,new RegExp(H)}static resolveParameterOrder($){if(!$||$.length===0)return[];return $.map((H)=>H.index).filter((H)=>H!==void 0).sort((H,J)=>H-J)}static resolveDependencyOrder($){if(!$||$.length===0)return[];return $.map((H)=>H.index).filter((H)=>H!==void 0).sort((H,J)=>H-J)}static calculateMaxArgumentIndex($,H){let J=-1;if($&&$.length>0){let Q=Math.max(...$.map((X)=>X.index));J=Math.max(J,Q)}if(H&&H.length>0){let Q=Math.max(...H.map((X)=>X.index));J=Math.max(J,Q)}return J}static computeParameterFlags($){if(!$||$.length===0)return{hasBody:!1,hasQuery:!1,hasParams:!1,hasHeaders:!1,hasCookies:!1,hasDependencies:!1};return{hasBody:$.some((H)=>H.type==="body"),hasQuery:$.some((H)=>H.type==="query"),hasParams:$.some((H)=>H.type==="param"),hasHeaders:$.some((H)=>H.type==="header"),hasCookies:$.some((H)=>H.type==="cookie"),hasDependencies:!1}}static compileAll($){return $.map((H)=>this.compile(H))}}i$();class $9{app;metadata;container;validator;errorHandler;compiledRoutes=new Map;constructor($,H,J,Q,X){this.app=$;this.metadata=H;this.container=J;this.validator=Q;this.errorHandler=X}compile(){let $=this.metadata.getRoutes(),H=t4.compileAll($);for(let J of H){let Q=`${J.target.name}:${J.propertyKey}`;this.compiledRoutes.set(Q,J);let X=this.createHandler(J),Y=this.normalizePath(J.path),W=J.method.toLowerCase();if(J.middleware&&J.middleware.length>0)this.app[W](Y,...J.middleware,X);else this.app[W](Y,X)}}normalizePath($){if(!$.startsWith("/"))$="/"+$;if($=$.replace(/\{([^}]+)\}/g,":$1"),$.length>1&&$.endsWith("/"))$=$.slice(0,-1);return $}createHandler($){return async(H)=>{try{H.set("routeMetadata",$);let J=$.cache,Q=null,X=null;if(J){let{CacheManager:B}=await Promise.resolve().then(() => (f4(),_5)),{parseTTL:w}=await Promise.resolve().then(() => q5);X=B;let _=H.req.param(),V=J.includeQuery?H.req.query():void 0;Q=B.generateKey($.method,$.path,_,V,J);let D=await B.get(Q,J.store);if(D!==null)return H.header("X-Cache","HIT"),this.serializeResponse(H,D);H.header("X-Cache","MISS")}let Y=await this.extractParameters(H,$.parameters),W=await this.resolveDependencies(H,$.dependencies),G=this.mergeArguments(Y,W,$.parameters,$.maxArgumentIndex),q;if($.handler)q=await $.handler(H,...G);else{let B=await this.container.resolve($.target,{scope:"transient",context:H});if(typeof B[$.propertyKey]!=="function")throw Error(`Method ${$.propertyKey} not found on controller ${$.target.name}`);q=await B[$.propertyKey](...G)}if(J&&Q&&X){if(!J.condition||J.condition(q)){let{parseTTL:B}=await Promise.resolve().then(() => q5),w=B(J.ttl);await X.set(Q,q,w,J.store)}}let U=$.cacheInvalidate;if(U&&Array.isArray(U)){if(!X){let{CacheManager:w}=await Promise.resolve().then(() => (f4(),_5));X=w}let B=H.req.param();for(let w of U){let _=w;if(B)for(let[V,D]of Object.entries(B))_=_.replace(`{${V}}`,String(D));await X.invalidate(_)}}return this.serializeResponse(H,q)}catch(J){return await this.handleError(H,J)}}}serializeResponse($,H){return f2.serialize($,H)}getRouteMetadataForContext($){return $.get("routeMetadata")||null}isAuthRequired($){if($.auth?.required)return!0;return $.parameters.some((H)=>H.type==="current-user")}async handleError($,H){return await this.errorHandler.handle(H,$)}async extractParameters($,H){let J=[];for(let Q of H){if(!Q)continue;let X;switch(Q.type){case"body":try{X=await $.req.json()}catch(U){X=null}break;case"query":if(Q.name)X=$.req.query(Q.name);else X=$.req.query();if(Q.schema&&X!==void 0)try{X=Q.schema.parse(X)}catch(U){throw new z2(`Invalid query parameter: ${U}`)}break;case"param":if(Q.name)X=$.req.param(Q.name);else X=$.req.param();break;case"header":if(Q.name)X=$.req.header(Q.name);else{let U={};$.req.raw.headers.forEach((B,w)=>{U[w]=B}),X=U}break;case"cookie":if(Q.name)X=S2($,Q.name);else{let U=$.req.header("cookie");if(U)X=Object.fromEntries(U.split(";").map((B)=>{let[w,..._]=B.trim().split("=");return[w,_.join("=")]}));else X={}}break;case"request":X=$.req;break;case"response":case"context":X=$;break;case"current-user":X=$.get("auth.user")||null;let Y=this.getRouteMetadataForContext($);if(Y&&this.isAuthRequired(Y)){if(!X){let U=$.get("auth.error")||"Authentication required",{AuthenticationException:B}=await Promise.resolve().then(() => (U$(),yY));throw new B(U)}}break;case"token":X=$.get("auth.token")||null;break;case"oauth-user":X=$.get("oauth.user")||null;break;case"oauth-token":X=$.get("oauth.token")||null;break;case"current-session":X=$.get("session")||null;break;case"session-data":let W=$.get("session");if(W&&Q.metadata?.key)X=W.data[Q.metadata.key];else if(W)X=W.data;else X=null;break;case"csrf-token":X=$.get("csrf.token")||null;break;case"filtered-resource":X=$.get("filtered.resource")||null;break;case"filtered-attributes":X=$.get("filtered.attributes")||[];break;case"request-id":let{getRequestId:G}=await Promise.resolve().then(() => K8);X=G($);break;case"abort-signal":let{getAbortSignal:q}=await Promise.resolve().then(() => K8);X=q($);break;default:X=void 0}if(Q.schema)try{X=await this.validator.validate(X,Q.schema)}catch(Y){throw Y}J[Q.index]=X}return J}mergeArguments($,H,J,Q){let Y=J.filter((U)=>U!==void 0&&U.index!==void 0).map((U)=>U.index),W=Y.length>0?Math.max(...Y):-1,G=Q!==void 0&&Q>=0?Q:Math.max(W,$.length-1,H.length-1,0);if(!Number.isFinite(G)||G<0)G=0;let q=Array(G+1);for(let U=0;U<=G;U++)if($[U]!==void 0)q[U]=$[U];else if(H[U]!==void 0)q[U]=H[U];return q}async resolveDependencies($,H){let J=[];for(let Q of H){if(!Q)continue;try{let X=await this.container.resolve(Q.provider,{scope:Q.scope,context:$});J[Q.index]=X}catch(X){throw Error(`Failed to resolve dependency at index ${Q.index}: ${X instanceof Error?X.message:"Unknown error"}`)}}return J}}i$();class H9{customHandler;isDevelopment;constructor($){this.customHandler=$,this.isDevelopment=!0}setCustomHandler($){this.customHandler=$}async handle($,H){if(console.log("ErrorHandler.handle called with:",$.constructor.name,$.message),this.customHandler)try{return await this.customHandler($,H)}catch(J){console.error("Custom error handler failed:",J)}if($ instanceof h0)return console.log("Handling as ValidationException"),this.handleValidationException($,H);if($ instanceof x1)return console.log("Handling as HTTPException"),this.handleHTTPException($,H);return console.log("Handling as generic error"),this.handleGenericError($,H)}handleValidationException($,H){let J=$.toJSON();if(this.isDevelopment)console.error("Validation Error:",{path:H.req.path,method:H.req.method,details:J.details});return H.json(J,$.statusCode)}handleHTTPException($,H){let J=$.toJSON();if($.statusCode>=500)console.error("HTTP Exception:",{name:$.name,statusCode:$.statusCode,message:$.message,path:H.req.path,method:H.req.method,...this.isDevelopment&&$.stack?{stack:$.stack}:{}});else if(this.isDevelopment)console.warn("HTTP Exception:",{name:$.name,statusCode:$.statusCode,message:$.message,path:H.req.path,method:H.req.method});return H.json(J,$.statusCode)}handleGenericError($,H){console.error("Internal Server Error:",{name:$.name,message:$.message,path:H.req.path,method:H.req.method,stack:$.stack});let J={error:"Internal Server Error",statusCode:500};if(this.isDevelopment){if(J.message=$.message,J.name=$.name,$.stack)J.stack=$.stack.split(`
|
|
150
|
-
`).map((Q)=>Q.trim())}else J.message="An unexpected error occurred";return H.json(J,500)}isDevelopmentMode(){return this.isDevelopment}setDevelopmentMode($){this.isDevelopment=$}}class J9{plugins=new Map;installed=new Set;register($){if(this.plugins.has($.name))throw Error(`Plugin "${$.name}" is already registered`);this.plugins.set($.name,$)}async install($){let H=this.resolveInstallOrder();for(let J of H)await this.plugins.get(J).install($),this.installed.add(J)}isInstalled($){return this.installed.has($)}getPlugin($){return this.plugins.get($)}getPluginNames(){return Array.from(this.plugins.keys())}resolveInstallOrder(){let $=new Set,H=new Set,J=[],Q=(X,Y=[])=>{if(H.has(X)){let G=[...Y,X].join(" -> ");throw Error(`Circular dependency detected in plugins: ${G}`)}if($.has(X))return;H.add(X);let W=this.plugins.get(X);if(!W)throw Error(`Plugin "${X}" is not registered`);if(W.dependencies)for(let G of W.dependencies){if(!this.plugins.has(G))throw Error(`Plugin "${X}" depends on "${G}" which is not registered`);Q(G,[...Y,X])}H.delete(X),$.add(X),J.push(X)};for(let X of this.plugins.keys())Q(X);return J}}class B${hono;metadata;container;validator;errorHandler;compiler;pluginManager;config;compiled=!1;globalMiddleware=[];groupPrefix="";constructor($){if(this.config={adapter:"hono",title:"Veloce-TS API",version:"1.0.0",docs:!0,...$},this.hono=new r5,this.metadata=new m,this.container=new a4,this.validator=new Y$,this.errorHandler=new H9,this.pluginManager=new J9,this.compiler=new $9(this.hono,this.metadata,this.container,this.validator,this.errorHandler),this.config.cors)if(this.config.cors===!0)this.useCors();else this.useCors(this.config.cors)}include($){let H=m.getControllerMetadata($);if(H)this.metadata.registerController($,H);let J=m.getRouteMethods($);for(let Q of J){let X=m.getRouteMetadata($.prototype,Q),Y=m.getParameterMetadata($.prototype,Q),W=m.getDependencyMetadata($.prototype,Q);if(X&&X.method&&X.path!==void 0){let G=H?.prefix||"",q=this.normalizePath(G,X.path);this.metadata.registerRoute({target:$,propertyKey:Q,method:X.method,path:q,middleware:[...H?.middleware||[],...X.middleware||[]],parameters:Y||X.parameters||[],dependencies:W||X.dependencies||[],responses:X.responses||[],docs:X.docs})}}}get($,H){this.registerFunctionalRoute("GET",$,H)}post($,H){this.registerFunctionalRoute("POST",$,H)}put($,H){this.registerFunctionalRoute("PUT",$,H)}delete($,H){this.registerFunctionalRoute("DELETE",$,H)}patch($,H){this.registerFunctionalRoute("PATCH",$,H)}route($){return new dY(this,$)}group($,H){let J=this.groupPrefix;this.groupPrefix=this.normalizePath(this.groupPrefix,$),H(),this.groupPrefix=J}registerFunctionalRoute($,H,J){let Q=this.normalizePath(this.groupPrefix,H),X={target:mY,propertyKey:`${$.toLowerCase()}_${Q}`,method:$,path:Q,middleware:J.middleware||[],parameters:this.extractParametersFromSchema(J.schema),dependencies:[],responses:J.responses||[],docs:J.docs,handler:J.handler};this.metadata.registerRoute(X)}extractParametersFromSchema($){let H=[],J=0;if($?.body)H.push({index:J++,type:"body",schema:$.body,required:!0});if($?.query)H.push({index:J++,type:"query",schema:$.query,required:!1});if($?.params)H.push({index:J++,type:"param",schema:$.params,required:!0});if($?.headers)H.push({index:J++,type:"header",schema:$.headers,required:!1});return H}use($){this.globalMiddleware.push($),this.hono.use("*",$)}useCors($){let H=z4($);this.use(H)}useRateLimit($){let H=N4($);this.use(H)}useCompression($){let H=A4($);this.use(H)}usePlugin($){this.pluginManager.register($)}getPluginManager(){return this.pluginManager}onError($){this.errorHandler.setCustomHandler($)}getErrorHandler(){return this.errorHandler}normalizePath(...$){let H=$.filter((J)=>J!=="").join("/").replace(/\/+/g,"/").replace(/\/$/,"");return H.startsWith("/")?H:`/${H}`}getHono(){return this.hono}getMetadata(){return this.metadata}getContainer(){return this.container}getCompiler(){return this.compiler}getConfig(){return this.config}isCompiled(){return this.compiled}markCompiled(){this.compiled=!0}async compile(){if(this.compiled){console.warn("Routes have already been compiled. Skipping compilation.");return}await this.pluginManager.install(this),this.compiler.compile(),this.compiled=!0}serverInstance=null;async listen($,H){if(!this.compiled)await this.compile();let J=this.createAdapter();return this.serverInstance=J.listen($,H),this.setupGracefulShutdown(),this.serverInstance}setupGracefulShutdown(){if(typeof process>"u")return;let $=async(H)=>{let J=I0().child({component:"app"});if(J.info(`Received ${H}, starting graceful shutdown...`),this.serverInstance&&typeof this.serverInstance.close==="function")try{await Promise.resolve(this.serverInstance.close()),J.info("Server closed gracefully")}catch(Q){J.error("Error during shutdown",Q)}process.exit(0)};process.on("SIGTERM",()=>$("SIGTERM")),process.on("SIGINT",()=>$("SIGINT"))}async shutdown(){if(this.serverInstance&&typeof this.serverInstance.close==="function")await Promise.resolve(this.serverInstance.close()),this.serverInstance=null}createAdapter(){let $=this.config.adapter||"hono";switch($){case"hono":{let{HonoAdapter:H}=l1($7);return new H(this.hono)}case"express":{let{ExpressAdapter:H}=l1(uY);return new H(this)}case"native":{let{HonoAdapter:H}=l1($7);return new H(this.hono)}default:throw Error(`Unknown adapter type: ${$}. Supported adapters: 'hono', 'express', 'native'`)}}}class mY{}class dY{app;path;constructor($,H){this.app=$;this.path=H}get($){return this.app.get(this.path,$),this}post($){return this.app.post(this.path,$),this}put($){return this.app.put(this.path,$),this}delete($){return this.app.delete(this.path,$),this}patch($){return this.app.patch(this.path,$),this}}function h2($){let H={docs:!1,cors:!1,...$};return new B$(H)}function H7($,H,J,Q){let X=$.getContainer(),Y=typeof J==="function"?J:()=>J;X.register(H,{scope:Q?.scope||"singleton",factory:Y})}function v2($){return new s$($)}async function J7($,H){let J=h2(H);await $(J),await J.compile();let Q=v2(J);return{app:J,client:Q}}function Q7($){$.getContainer().clear()}var fC={};L1(fC,{zodToJsonSchema:()=>V2,zodToGraphQLType:()=>$0,zodObjectToGraphQLType:()=>qY,zodObjectToGraphQLInput:()=>UY,z:()=>R,withRepositoryMixin:()=>RC,transactionMiddleware:()=>t7,setupTestApp:()=>J7,setSessionData:()=>HB,setRequestMetadata:()=>R3,setRequestContext:()=>P8,setGlobalTransactionManager:()=>m1,setCache:()=>B5,requestLoggingMiddleware:()=>rA,removeSessionData:()=>JB,parseTTL:()=>r0,mockDependency:()=>H7,isSessionAuthenticated:()=>eU,isOAuthAuthenticated:()=>cU,isNullable:()=>X$,isAuthenticated:()=>BC,invalidateCache:()=>D5,initializeRequestContext:()=>R4,initializeLogger:()=>oA,hasResolverMetadata:()=>WY,hasFieldMetadata:()=>GY,globalTransactionEventManager:()=>N$,globalRepositoryRegistry:()=>EC,getUserRoles:()=>i7,getUserPermissions:()=>xU,getTransactionInterceptor:()=>DB,getToken:()=>l7,getSessionUserId:()=>$B,getSessionManager:()=>q4,getSessionData:()=>tU,getResolverMetadata:()=>QY,getRequestMetadata:()=>E3,getRequestId:()=>z3,getRequestDuration:()=>E4,getRequestContext:()=>N0,getRBACManager:()=>fU,getOAuthUser:()=>mU,getOAuthToken:()=>dU,getOAuthProvider:()=>lU,getLogger:()=>I0,getGlobalTransactionManager:()=>M0,getFieldsMetadata:()=>XY,getFieldMetadata:()=>YY,getDefaultValue:()=>F2,getCurrentUser:()=>u0,getCurrentSession:()=>y1,getCache:()=>U5,getCSRFProtection:()=>aU,getAuthError:()=>wC,getArgumentsMetadata:()=>c4,getAbortSignal:()=>N3,generateRequestId:()=>C8,errorLoggingMiddleware:()=>aA,deleteCache:()=>w5,createTypeORMPlugin:()=>EB,createTransactionalProxy:()=>OC,createTransactionPlugin:()=>bC,createTestClient:()=>v2,createTestApp:()=>h2,createSimpleRequestIdMiddleware:()=>G5,createSessionMiddleware:()=>rU,createRequestContextMiddleware:()=>W5,createRedisCacheStore:()=>OB,createRateLimitMiddleware:()=>N4,createRBACMiddleware:()=>n7,createPrismaPlugin:()=>RB,createLogger:()=>Y5,createDefaultRBAC:()=>d7,createCorsMiddleware:()=>z4,createCompressionMiddleware:()=>A4,createChildLogger:()=>o0,createCacheMiddleware:()=>F5,createCacheInvalidationMiddleware:()=>z5,createAuthMiddleware:()=>c7,clearMocks:()=>Q7,clearCache:()=>V5,cleanupRequestContext:()=>j4,checkUserRole:()=>zC,checkUserPermission:()=>NC,abortRequest:()=>A3,ZodToJsonSchemaConverter:()=>O0,WebSocketPlugin:()=>p$,WebSocketManager:()=>l$,WebSocketConnection:()=>c$,WebSocket:()=>zY,VeloceTS:()=>B$,Veloce:()=>B$,ValidationException:()=>h0,ValidationEngine:()=>Y$,UseMiddleware:()=>aE,UnauthorizedException:()=>wY,TypeORMTransactionManager:()=>R9,TypeORMRepository:()=>L0,TypeORMPlugin:()=>j8,TypeORMEntity:()=>jB,TransactionalWithPropagation:()=>z$,Transactional:()=>UB,TransactionTemplate:()=>NB,TransactionService:()=>zB,TransactionPropagationManager:()=>_B,TransactionPropagation:()=>VB,TransactionPlugin:()=>$3,TransactionMetricsListener:()=>R8,TransactionLoggingListener:()=>A8,TransactionInterceptor:()=>d0,TransactionEventType:()=>FB,TransactionEventManager:()=>e7,TokenRevokedException:()=>e5,TokenPayloadSchema:()=>HC,TokenExpiredException:()=>e4,Token:()=>UC,TestClient:()=>s$,Supports:()=>MC,SuperAdminOnly:()=>_C,Subscription:()=>$Y,StreamResponse:()=>b2,SessionManager:()=>s7,SessionGuard:()=>o7,SessionDataSchema:()=>pU,Session:()=>nU,RouterCompiler:()=>$9,Roles:()=>TU,RoleSchema:()=>XC,RoleAssignmentSchema:()=>YC,ResponseSerializer:()=>f2,Response:()=>t5,Resolver:()=>aX,RequiresNew:()=>LC,Required:()=>ZC,RequireRole:()=>p7,RequirePermission:()=>DC,RequireCSRF:()=>oU,RequestId:()=>oY,RepositoryService:()=>QB,RepositoryRegistry:()=>N9,RepositoryFactory:()=>_$,Repository:()=>qB,RefreshRequestSchema:()=>QC,RedisCacheStore:()=>Z8,RedirectResponse:()=>I2,RBACPlugin:()=>kU,RBACManager:()=>W4,RBACGuard:()=>z9,QueryBuilderFactory:()=>XB,QueryBuilder:()=>z8,Query:()=>lY,Put:()=>nE,PrismaZodSchemaGenerator:()=>B4,PrismaTransactionManager:()=>A9,PrismaRepository:()=>Z0,PrismaPlugin:()=>E8,Post:()=>pE,PluginManager:()=>J9,Permissions:()=>bU,PermissionMatcher:()=>G4,PermissionCheckSchema:()=>WC,Patch:()=>sE,Param:()=>pY,PaginationTransformer:()=>WB,PaginationHelper:()=>U4,PaginationBuilder:()=>YB,Paginated:()=>jC,OpenAPIPlugin:()=>_2,OpenAPIGenerator:()=>J$,OnTransactionRollback:()=>TC,OnTransactionCommit:()=>IC,OnTransactionBegin:()=>KC,OnMessage:()=>AY,OnDisconnect:()=>RY,OnConnect:()=>NY,OAuthUserSchema:()=>vU,OAuthUser:()=>yU,OAuthToken:()=>uU,OAuth:()=>gU,NotSupported:()=>SC,NotFoundException:()=>BY,Never:()=>PC,Mutation:()=>eX,MinimumRole:()=>FC,Migration:()=>H3,MetadataRegistry:()=>m,MetadataCompiler:()=>t4,MemoryCacheStore:()=>b4,Mandatory:()=>CC,LoginRequestSchema:()=>JC,JWTProvider:()=>F8,JSONResponse:()=>P2,InvalidTokenException:()=>q$,InMemoryUserProvider:()=>IU,InMemoryTransactionManager:()=>F$,HonoAdapter:()=>x2,HealthCheckers:()=>S5,HealthCheckPlugin:()=>N2,Header:()=>nY,HTTPException:()=>x1,HTMLResponse:()=>K2,GraphQLSubscription:()=>$Y,GraphQLSchemaBuilder:()=>l4,GraphQLQuery:()=>tX,GraphQLPlugin:()=>p4,GraphQLMutation:()=>eX,GraphQLCtx:()=>JY,Get:()=>lE,GenericRepository:()=>AC,GQLSubscription:()=>$Y,GQLQuery:()=>tX,GQLMutation:()=>eX,GQLContext:()=>JY,ForbiddenException:()=>DY,FileResponse:()=>T2,FastAPITS:()=>B$,ExpressAdapter:()=>k2,ErrorHandler:()=>H9,Entity:()=>BB,DrizzleZodSchemaConverter:()=>O8,DrizzleTransactionManager:()=>E9,DrizzleRepository:()=>u1,DrizzlePlugin:()=>J3,Depends:()=>rE,Delete:()=>iE,DefaultQueryOperators:()=>r7,DIContainer:()=>a4,CursorPaginationHelper:()=>a7,CurrentUser:()=>qC,CurrentSession:()=>iU,Ctx:()=>sY,Cookie:()=>iY,Controller:()=>cE,Column:()=>wB,CacheManager:()=>f1,CacheInvalidate:()=>tY,Cache:()=>aY,CSRFToken:()=>sU,Body:()=>cY,BaseTransactionManager:()=>Q0,BaseRepository:()=>m0,BadRequestException:()=>z2,AuthorizationException:()=>S1,AuthenticationException:()=>Z1,AuthService:()=>F9,AuthPlugin:()=>hU,Auth:()=>GC,Arg:()=>HY,ApiResponse:()=>eE,ApiDoc:()=>tE,All:()=>oE,AdminOnly:()=>VC,AbortSignal:()=>rY});module.exports=l1(fC);var oy=F0(Q$());function cE($="",H){return(J)=>{let Q=$.trim();if(Q&&!Q.startsWith("/"))Q="/"+Q;if(Q.endsWith("/"))Q=Q.slice(0,-1);m.defineController(J,{prefix:Q,middleware:H?.middleware||[]})}}function a$($){return(H="")=>{return(J,Q)=>{let X=H.trim();if(X&&!X.startsWith("/"))X="/"+X;let Y=Reflect.getMetadata("route:middleware",J,Q)||[];m.defineRoute(J,Q,{method:$,path:X,middleware:Y,parameters:[],dependencies:[],responses:[]})}}}var lE=a$("GET"),pE=a$("POST"),nE=a$("PUT"),iE=a$("DELETE"),sE=a$("PATCH"),oE=a$("ALL");function cY($){return(H,J,Q)=>{if(!J)return;let X={index:Q,type:"body",schema:$,required:!0};m.defineParameter(H,J,Q,X)}}function lY($){return(H,J,Q)=>{if(!J)return;let X={index:Q,type:"query",required:!1};if(typeof $==="string")X.name=$;else if($)X.schema=$;m.defineParameter(H,J,Q,X)}}function pY($){return(H,J,Q)=>{if(!J)return;let X={index:Q,type:"param",name:$,required:!0};m.defineParameter(H,J,Q,X)}}function nY($){return(H,J,Q)=>{if(!J)return;let X={index:Q,type:"header",name:$,required:!1};m.defineParameter(H,J,Q,X)}}function iY($){return(H,J,Q)=>{if(!J)return;let X={index:Q,type:"cookie",name:$,required:!1};m.defineParameter(H,J,Q,X)}}function sY(){return($,H,J)=>{if(!H)return;let Q={index:J,type:"context",required:!0};m.defineParameter($,H,J,Q)}}function oY(){return($,H,J)=>{if(!H)return;let Q={index:J,type:"request-id",required:!1};m.defineParameter($,H,J,Q)}}function rY(){return($,H,J)=>{if(!H)return;let Q={index:J,type:"abort-signal",required:!1};m.defineParameter($,H,J,Q)}}function rE($,H="request"){return(J,Q,X)=>{if(Q===void 0)throw Error("@Depends decorator can only be used on method parameters, not constructor parameters");m.defineDependency(J,Q,X,{index:X,provider:$,scope:H})}}function aE(...$){return(H,J)=>{let Q=Reflect.getMetadata("route:middleware",H,J)||[];Reflect.defineMetadata("route:middleware",[...Q,...$],H,J)}}function tE($){return(H,J)=>{let Q=m.getRouteMetadata(H,J);m.defineRoute(H,J,{...Q,docs:{...Q?.docs,...$}})}}function eE($){return(H,J)=>{let Q=m.getRouteMetadata(H,J),X=Q?.responses||[],Y=X.findIndex((G)=>G.statusCode===$.statusCode),W;if(Y>=0)W=[...X],W[Y]=$;else W=[...X,$];m.defineRoute(H,J,{...Q,responses:W})}}function aY($){return(H,J)=>{Reflect.defineMetadata("cache:options",$,H,J);let Q=m.getRouteMetadata(H,J);if(Q)m.defineRoute(H,J,{...Q,cache:$})}}function tY($){return(H,J)=>{let Q=Array.isArray($)?$:[$];Reflect.defineMetadata("cache:invalidate",Q,H,J);let X=m.getRouteMetadata(H,J);if(X)m.defineRoute(H,J,{...X,cacheInvalidate:Q})}}i$();U$();var y0=F0(KU());class F8{config;blacklistedTokens=new Set;constructor($){this.config=$;if(!$.secret)throw Error("JWT secret is required")}generateTokens($){let H=Math.floor(Date.now()/1000),J=this.parseExpiration(this.config.expiresIn||"1h"),Q={sub:$.sub,...$,iat:H,exp:H+J,iss:this.config.issuer,aud:this.config.audience},X=y0.sign(Q,this.config.secret,{algorithm:this.config.algorithm||"HS256"}),Y={sub:$.sub,type:"refresh",iat:H,exp:H+this.parseExpiration(this.config.refreshExpiresIn||"7d"),iss:this.config.issuer,aud:this.config.audience},W=y0.sign(Y,this.config.refreshSecret||this.config.secret,{algorithm:this.config.algorithm||"HS256"});return{accessToken:X,refreshToken:W,expiresIn:J}}verifyAccessToken($){if(this.isBlacklisted($))throw Error("Token has been revoked");try{return y0.verify($,this.config.secret,{algorithms:[this.config.algorithm||"HS256"],issuer:this.config.issuer,audience:this.config.audience})}catch(H){if(H instanceof Error)throw Error(`Invalid token: ${H.message}`);throw Error("Invalid token")}}verifyRefreshToken($){if(this.isBlacklisted($))throw Error("Refresh token has been revoked");try{let H=y0.verify($,this.config.refreshSecret||this.config.secret,{algorithms:[this.config.algorithm||"HS256"],issuer:this.config.issuer,audience:this.config.audience});if(H.type!=="refresh")throw Error("Invalid refresh token type");return H}catch(H){if(H instanceof Error)throw Error(`Invalid refresh token: ${H.message}`);throw Error("Invalid refresh token")}}refreshAccessToken($){let H=this.verifyRefreshToken($);return this.blacklistToken($),this.generateTokens({sub:H.sub,...Object.fromEntries(Object.entries(H).filter(([J])=>!["iat","exp","iss","aud","type"].includes(J)))})}decodeToken($){try{return y0.decode($)}catch{return null}}blacklistToken($){this.blacklistedTokens.add($)}isBlacklisted($){return this.blacklistedTokens.has($)}cleanupBlacklist(){let $=Math.floor(Date.now()/1000);for(let H of this.blacklistedTokens){let J=this.decodeToken(H);if(J&&J.exp&&J.exp<$)this.blacklistedTokens.delete(H)}}parseExpiration($){if(typeof $==="number")return $;let H={s:1,m:60,h:3600,d:86400,w:604800},J=$.match(/^(\d+)([smhdw])$/);if(!J)throw Error(`Invalid expiration format: ${$}`);let[,Q,X]=J;return parseInt(Q)*H[X]}}var HC=R.object({sub:R.string(),iat:R.number().optional(),exp:R.number().optional(),iss:R.string().optional(),aud:R.string().optional()}).passthrough(),JC=R.object({username:R.string().min(1),password:R.string().min(1)}),QC=R.object({refreshToken:R.string().min(1)});U$();class F9{config;userProvider;jwtProvider;constructor($,H){this.config=$;this.userProvider=H;this.jwtProvider=new F8($)}async login($,H){let J=await this.userProvider.findByCredentials($,H);if(!J)throw new Z1("Invalid credentials");let Q=this.jwtProvider.generateTokens({sub:J.id,username:J.username,email:J.email,roles:J.roles||[],permissions:J.permissions||[]});return{user:J,tokens:Q}}async refresh($){try{return this.jwtProvider.refreshAccessToken($)}catch(H){throw new q$(H instanceof Error?H.message:"Invalid refresh token")}}async logout($,H){if(this.jwtProvider.blacklistToken($),H)this.jwtProvider.blacklistToken(H)}async verifyToken($){try{let H=this.jwtProvider.verifyAccessToken($),J=await this.userProvider.findById(H.sub);if(!J)throw new Z1("User not found");return J}catch(H){if(H instanceof Error){if(H.message.includes("expired"))throw new e4;throw new q$(H.message)}throw new q$("Token verification failed")}}getUserFromToken($){return this.jwtProvider.verifyAccessToken($)}hasRoles($,H){let J=$.roles||[];return H.every((Q)=>J.includes(Q))}hasPermissions($,H){let J=$.permissions||[];return H.every((Q)=>J.includes(Q))}async register($){let H=await this.userProvider.hashPassword($.password),J={id:crypto.randomUUID(),username:$.username,email:$.email,roles:$.roles||["user"]},Q=this.jwtProvider.generateTokens({sub:J.id,username:J.username,email:J.email,roles:J.roles});return{user:J,tokens:Q}}cleanup(){this.jwtProvider.cleanupBlacklist()}getJWTProvider(){return this.jwtProvider}}class IU{users=new Map;async findByCredentials($,H){for(let[J,Q]of this.users)if(Q.username===$){if(await this.verifyPassword(H,Q.passwordHash)){let{passwordHash:Y,...W}=Q;return W}}return null}async findById($){let H=this.users.get($);if(H){let{passwordHash:J,...Q}=H;return Q}return null}async hashPassword($){return Buffer.from($).toString("base64")}async verifyPassword($,H){return await this.hashPassword($)===H}async createUser($){let H=crypto.randomUUID(),J=await this.hashPassword($.password),Q={id:H,username:$.username,email:$.email,roles:$.roles||["user"],passwordHash:J};this.users.set(H,Q);let{passwordHash:X,...Y}=Q;return Y}}class W4{roles=new Map;hierarchy=new Map;compiledPermissions=new Map;defineRole($){if(this.roles.set($.name,$),$.inherits&&$.inherits.length>0)this.hierarchy.set($.name,$.inherits);this.compiledPermissions.clear()}defineRoles($){for(let H of $)this.defineRole(H)}getRolePermissions($){if(this.compiledPermissions.has($))return Array.from(this.compiledPermissions.get($));let H=new Set;return this.collectPermissions($,H,new Set),this.compiledPermissions.set($,H),Array.from(H)}roleHasPermission($,H){return this.getRolePermissions($).includes(H)}userHasPermission($,H){for(let J of $)if(this.roleHasPermission(J,H))return!0;return!1}userHasRoles($,H){return H.every((J)=>$.includes(J))}userHasAnyRole($,H){return H.some((J)=>$.includes(J))}getRolesWithPermission($){let H=[];for(let J of this.roles.keys())if(this.roleHasPermission(J,$))H.push(J);return H}getRoleHierarchy($){let H=[];return this.collectParentRoles($,H,new Set),H}roleInheritsFrom($,H){return this.getRoleHierarchy($).includes(H)}getAllRoles(){return Array.from(this.roles.values())}getRole($){return this.roles.get($)}roleExists($){return this.roles.has($)}validateRoles($){let H=[],J=[];for(let Q of $)if(this.roleExists(Q))H.push(Q);else J.push(Q);return{valid:H,invalid:J}}getEffectiveRoles($){let H=new Set;for(let J of $)H.add(J),this.getRoleHierarchy(J).forEach((X)=>H.add(X));return Array.from(H)}compareRoleLevels($,H){let J=this.getRole($),Q=this.getRole(H),X=J?.level??0,Y=Q?.level??0;return X-Y}getHighestRoleLevel($){let H=0;for(let J of $){let Q=this.getRole(J);if(Q&&Q.level&&Q.level>H)H=Q.level}return H}collectPermissions($,H,J){if(J.has($))throw Error(`Circular role inheritance detected: ${$}`);J.add($);let Q=this.roles.get($);if(!Q)throw Error(`Role not found: ${$}`);Q.permissions.forEach((Y)=>H.add(Y));let X=this.hierarchy.get($)||[];for(let Y of X)this.collectPermissions(Y,H,new Set(J))}collectParentRoles($,H,J){if(J.has($))return;J.add($);let Q=this.hierarchy.get($)||[];for(let X of Q)H.push(X),this.collectParentRoles(X,H,J)}}function d7(){let $=new W4;return $.defineRoles([{name:"guest",description:"Guest user with minimal permissions",permissions:["read:public"],level:1},{name:"user",description:"Regular authenticated user",permissions:["read:own","write:own","read:public"],inherits:["guest"],level:10},{name:"moderator",description:"Moderator with content management permissions",permissions:["read:all","write:all","moderate:content"],inherits:["user"],level:50},{name:"admin",description:"Administrator with full system access",permissions:["*"],inherits:["moderator"],level:100},{name:"super-admin",description:"Super administrator with unrestricted access",permissions:["*","system:*"],inherits:["admin"],level:1000}]),$}var XC=R.object({name:R.string().min(1),description:R.string().optional(),permissions:R.array(R.string()),inherits:R.array(R.string()).optional(),level:R.number().optional()}),YC=R.object({userId:R.string(),roles:R.array(R.string())}),WC=R.object({userId:R.string(),permission:R.string()});class G4{static matches($,H){if(H==="*")return!0;if(H.endsWith("*")){let J=H.slice(0,-1);return $.startsWith(J)}return $===H}static hasPermission($,H){return $.some((J)=>this.matches(H,J))}static filterByPattern($,H){return $.filter((J)=>this.matches(J,H))}}function GC($){return(H,J)=>{let Q={required:!$?.optional,config:$};m.defineAuth(H,J,Q)}}function qC(){return($,H,J)=>{if(H)m.defineParameter($,H,J,{index:J,type:"current-user",required:!1})}}function UC(){return($,H,J)=>{if(H)m.defineParameter($,H,J,{index:J,type:"token",required:!1})}}function c7($){return async(H,J)=>{let Q=H.req.header("Authorization");if(!Q||!Q.startsWith("Bearer "))H.set("auth.error","Missing or invalid Authorization header"),H.set("auth.authenticated",!1);else{let X=Q.substring(7);try{let Y=$.verifyAccessToken(X);H.set("auth.user",Y),H.set("auth.token",X),H.set("auth.authenticated",!0)}catch(Y){H.set("auth.error",Y instanceof Error?Y.message:"Authentication failed"),H.set("auth.authenticated",!1)}}await J()}}function u0($){return $.get("auth.user")||null}function l7($){return $.get("auth.token")||null}function BC($){return $.get("auth.authenticated")===!0}function wC($){return $.get("auth.error")||null}U$();function TU($){return(H,J)=>{let X={config:Array.isArray($)?{roles:$,requireAll:!1,allowInherited:!0}:{requireAll:!1,allowInherited:!0,...$}};m.defineRoles(H,J,X)}}function bU($){return(H,J)=>{let X={config:Array.isArray($)?{permissions:$,requireAll:!1}:{requireAll:!1,...$}};m.definePermissions(H,J,X)}}function p7($){return TU([$])}function DC($){return bU([$])}function VC(){return p7("admin")}function _C(){return p7("super-admin")}function FC($){return(H,J)=>{m.defineMinimumRole(H,J,{roleName:$})}}function n7($){return async(H,J)=>{H.set("rbac",$),await J()}}class z9{rbac;constructor($){this.rbac=$}checkRoles($,H){let J=u0($);if(!J)throw new S1("Authentication required for role check");let Q=J.roles||[],X=H.allowInherited?this.rbac.getEffectiveRoles(Q):Q,Y;if(H.requireAll)Y=H.roles.every((W)=>X.includes(W));else Y=H.roles.some((W)=>X.includes(W));if(!Y){let W=H.requireAll?"all":"any";throw new S1(`Access denied. Required ${W} of roles: ${H.roles.join(", ")}`)}}checkPermissions($,H){let J=u0($);if(!J)throw new S1("Authentication required for permission check");let Q=J.roles||[],X=new Set;for(let G of Q)this.rbac.getRolePermissions(G).forEach((U)=>X.add(U));let Y=Array.from(X),W;if(H.requireAll)W=H.permissions.every((G)=>G4.hasPermission(Y,G));else W=H.permissions.some((G)=>G4.hasPermission(Y,G));if(!W){let G=H.requireAll?"all":"any";throw new S1(`Access denied. Required ${G} of permissions: ${H.permissions.join(", ")}`)}}checkMinimumRole($,H){let J=u0($);if(!J)throw new S1("Authentication required for role level check");let Q=J.roles||[],X=this.rbac.getHighestRoleLevel(Q),Y=this.rbac.getRole(H);if(!Y)throw Error(`Required role not found: ${H}`);let W=Y.level||0;if(X<W)throw new S1(`Access denied. Minimum role level required: ${H} (level ${W})`)}}function fU($){return $.get("rbac")||null}function i7($){return u0($)?.roles||[]}function xU($){let H=fU($),J=i7($);if(!H)return[];let Q=new Set;for(let X of J)H.getRolePermissions(X).forEach((W)=>Q.add(W));return Array.from(Q)}function zC($,H){return i7($).includes(H)}function NC($,H){let J=xU($);return G4.hasPermission(J,H)}class kU{config;name="rbac";version="1.0.0";dependencies=["auth"];rbac;guard;constructor($={}){this.config=$;if($.rbac)this.rbac=$.rbac;else if($.useDefaults!==!1)this.rbac=d7();else this.rbac=new W4;if($.roles)this.rbac.defineRoles($.roles);this.guard=new z9(this.rbac)}async install($){let H=n7(this.rbac);if($.use(H),$.getContainer().register(W4,{factory:()=>this.rbac,scope:"singleton"}),$.getContainer().register(z9,{factory:()=>this.guard,scope:"singleton"}),this.extendRouterCompiler($),this.config.enableManagementRoutes!==!1)this.addManagementRoutes($)}extendRouterCompiler($){let H=$.compile.bind($);$.compile=async()=>{await H();let J=$.getMetadata().getRoutes();for(let Q of J)if(Q.roles||Q.permissions||Q.minimumRole)this.addRBACGuards($,Q)}}addRBACGuards($,H){}addManagementRoutes($){let H=this.config.routes||{};$.get(H.roles||"/rbac/roles",{handler:(J)=>{let Q=this.rbac.getAllRoles();return J.json({success:!0,roles:Q.map((X)=>({name:X.name,description:X.description,permissions:X.permissions,inherits:X.inherits,level:X.level}))})}}),$.get("/rbac/roles/:roleName",{handler:(J)=>{let Q=J.req.param("roleName"),X=this.rbac.getRole(Q);if(!X)return J.json({error:"Role not found"},404);let Y=this.rbac.getRolePermissions(Q),W=this.rbac.getRoleHierarchy(Q);return J.json({success:!0,role:{...X,effectivePermissions:Y,hierarchy:W}})}}),$.get("/rbac/roles/:roleName/permissions",{handler:(J)=>{let Q=J.req.param("roleName");if(!this.rbac.roleExists(Q))return J.json({error:"Role not found"},404);let X=this.rbac.getRolePermissions(Q);return J.json({success:!0,role:Q,permissions:X})}}),$.post("/rbac/check-permission",{handler:async(J)=>{let Q=await J.req.json(),{roles:X,permission:Y}=Q;if(!Array.isArray(X)||!Y)return J.json({error:"Invalid request body"},400);let W=this.rbac.userHasPermission(X,Y);return J.json({success:!0,hasPermission:W,roles:X,permission:Y})}}),$.post("/rbac/check-roles",{handler:async(J)=>{let Q=await J.req.json(),{userRoles:X,requiredRoles:Y,requireAll:W=!1}=Q;if(!Array.isArray(X)||!Array.isArray(Y))return J.json({error:"Invalid request body"},400);let G=W?this.rbac.userHasRoles(X,Y):this.rbac.userHasAnyRole(X,Y);return J.json({success:!0,hasRoles:G,userRoles:X,requiredRoles:Y,requireAll:W})}}),$.post("/rbac/effective-roles",{handler:async(J)=>{let Q=await J.req.json(),{roles:X}=Q;if(!Array.isArray(X))return J.json({error:"Invalid request body"},400);let Y=this.rbac.getEffectiveRoles(X);return J.json({success:!0,inputRoles:X,effectiveRoles:Y})}}),$.post("/rbac/user-permissions",{handler:async(J)=>{let Q=await J.req.json(),{roles:X}=Q;if(!Array.isArray(X))return J.json({error:"Invalid request body"},400);let Y=new Set;for(let W of X)if(this.rbac.roleExists(W))this.rbac.getRolePermissions(W).forEach((q)=>Y.add(q));return J.json({success:!0,roles:X,permissions:Array.from(Y)})}})}getRBACManager(){return this.rbac}getGuard(){return this.guard}}U$();class hU{config;name="auth";version="1.0.0";authService;constructor($){this.config=$;this.authService=new F9($.jwt,$.userProvider)}async install($){let H=c7(this.authService.getJWTProvider());if($.use(H),$.getContainer().register(F9,{factory:()=>this.authService,scope:"singleton"}),this.config.enableDefaultRoutes!==!1)this.addDefaultRoutes($);this.extendRouterCompiler($)}extendRouterCompiler($){$.use(async(J,Q)=>{J.set("authService",this.authService),await Q()});let H=$.compile.bind($);$.compile=async()=>{await H();let J=$.getHono(),Q=$.getMetadata().getRoutes();for(let X of Q){let Y=m.getAuthMetadata(X.target.prototype,X.propertyKey);if(X.auth?.required||Y?.required){console.log("Adding auth middleware for route:",X.path,X.method);let G=X.auth?.config||Y?.config;J.use(X.path,async(q,U)=>{if(console.log("Auth middleware executing for:",q.req.path,q.req.method,"target:",X.path,X.method),q.req.method!==X.method)return console.log("Method mismatch, skipping auth check"),U();console.log("Checking authentication...");let B=q.get("auth.user"),w=q.get("auth.error");if(!B){let _=w||"Authentication required";throw console.log("No user found, throwing auth exception"),new Z1(_)}if(G?.roles?.length){if(!this.authService.hasRoles(B,G.roles))throw new S1(`Required roles: ${G.roles.join(", ")}`)}if(G?.permissions?.length){if(!this.authService.hasPermissions(B,G.permissions))throw new S1(`Required permissions: ${G.permissions.join(", ")}`)}await U()})}}}}buildPath($){return $.path}pathMatches($,H){let J=$.replace(/:([^/]+)/g,"([^/]+)");return new RegExp(`^${J}$`).test(H)}addDefaultRoutes($){let H=this.config.routes||{};if($.post(H.login||"/auth/login",{handler:async(J)=>{let Q=await J.req.json(),{username:X,password:Y}=Q;try{let W=await this.authService.login(X,Y);return{success:!0,user:W.user,tokens:W.tokens}}catch(W){throw new Z1(W instanceof Error?W.message:"Login failed")}},schema:{body:R.object({username:R.string().min(1),password:R.string().min(1)})}}),$.post(H.refresh||"/auth/refresh",{handler:async(J)=>{let Q=await J.req.json(),{refreshToken:X}=Q;try{return{success:!0,tokens:await this.authService.refresh(X)}}catch(Y){throw new Z1(Y instanceof Error?Y.message:"Token refresh failed")}},schema:{body:R.object({refreshToken:R.string().min(1)})}}),$.post(H.logout||"/auth/logout",{handler:async(J)=>{let Q=l7(J),X=await J.req.json(),{refreshToken:Y}=X;if(Q)await this.authService.logout(Q,Y);return{success:!0,message:"Logged out successfully"}},schema:{body:R.object({refreshToken:R.string().optional()})}}),"createUser"in this.config.userProvider)$.post(H.register||"/auth/register",{handler:async(J)=>{let Q=await J.req.json(),{username:X,password:Y,email:W}=Q;try{let G=await this.authService.register({username:X,password:Y,email:W});return{success:!0,user:G.user,tokens:G.tokens}}catch(G){throw new Z1(G instanceof Error?G.message:"Registration failed")}},schema:{body:R.object({username:R.string().min(1),password:R.string().min(6),email:R.string().email().optional()})}});$.get("/auth/me",{handler:async(J)=>{let Q=u0(J);if(!Q)throw new Z1("Not authenticated");return{success:!0,user:Q}}})}getAuthService(){return this.authService}}var Tv=R.object({code:R.string(),state:R.string(),error:R.string().optional(),error_description:R.string().optional()}),bv=R.object({accessToken:R.string(),refreshToken:R.string().optional(),expiresIn:R.number().optional(),tokenType:R.string(),scope:R.string().optional()}),vU=R.object({id:R.string(),email:R.string().optional(),name:R.string().optional(),username:R.string().optional(),avatar:R.string().optional(),provider:R.string()}).passthrough();function gU($){return(H,J)=>{let Q={provider:$.provider,config:$};m.defineOAuth(H,J,Q)}}function yU(){return($,H,J)=>{if(H)m.defineParameter($,H,J,{index:J,type:"oauth-user",required:!0})}}function uU(){return($,H,J)=>{if(H)m.defineParameter($,H,J,{index:J,type:"oauth-token",required:!0})}}function mU($){return $.get("oauth.user")||null}function dU($){return $.get("oauth.token")||null}function cU($){return $.get("oauth.authenticated")===!0}function lU($){return $.get("oauth.provider")||null}class s7{store;config;constructor($,H){this.store=$;this.config={name:"sessionId",maxAge:86400000,secure:!1,httpOnly:!0,sameSite:"lax",path:"/",rolling:!1,genid:()=>crypto.randomUUID(),...H,domain:H.domain}}async createSession($,H={},J){let Q=this.config.genid(),X=new Date,Y=J?.maxAge||this.config.maxAge,W={id:Q,userId:$,data:H,createdAt:X,updatedAt:X,expiresAt:new Date(X.getTime()+Y),ipAddress:J?.ipAddress,userAgent:J?.userAgent,csrfToken:this.generateCSRFToken()};return await this.store.set(Q,W),W}async getSession($){return await this.store.get($)}async updateSession($,H){let J=await this.store.get($);if(!J)return null;if(J.data={...J.data,...H},J.updatedAt=new Date,this.config.rolling)J.expiresAt=new Date(Date.now()+this.config.maxAge);return await this.store.set($,J),J}async touchSession($){if(this.config.rolling){let H=await this.store.get($);if(H)H.updatedAt=new Date,H.expiresAt=new Date(Date.now()+this.config.maxAge),await this.store.set($,H)}else await this.store.touch($)}async destroySession($){await this.store.destroy($)}async regenerateSession($){let H=await this.store.get($);if(!H)return null;let J=this.config.genid(),Q={...H,id:J,updatedAt:new Date,csrfToken:this.generateCSRFToken()};return await this.store.set(J,Q),await this.store.destroy($),Q}async getUserSessions($){return(await this.store.all()).filter((J)=>J.userId===$)}async destroyUserSessions($){let H=await this.getUserSessions($);for(let J of H)await this.store.destroy(J.id)}validateCSRFToken($,H){return $.csrfToken===H}generateCSRFToken(){return crypto.randomUUID()}getCookieOptions(){let $={maxAge:this.config.maxAge,secure:this.config.secure,httpOnly:this.config.httpOnly,sameSite:this.config.sameSite,path:this.config.path};if(this.config.domain)$.domain=this.config.domain;return $}getConfig(){return{...this.config}}getStore(){return this.store}}var pU=R.object({id:R.string(),userId:R.string(),data:R.record(R.any()),createdAt:R.date(),updatedAt:R.date(),expiresAt:R.date().optional(),ipAddress:R.string().optional(),userAgent:R.string().optional(),csrfToken:R.string().optional()}),vv=R.object({name:R.string().optional(),secret:R.string(),maxAge:R.number().optional(),secure:R.boolean().optional(),httpOnly:R.boolean().optional(),sameSite:R.enum(["strict","lax","none"]).optional(),domain:R.string().optional(),path:R.string().optional(),rolling:R.boolean().optional()}),gv=R.object({userId:R.string(),data:R.record(R.any()).optional(),maxAge:R.number().optional(),ipAddress:R.string().optional(),userAgent:R.string().optional()}),yv=R.object({data:R.record(R.any())});U$();function nU($={}){return(H,J)=>{let Q={config:$};m.defineSession(H,J,Q)}}function iU(){return($,H,J)=>{if(H)m.defineParameter($,H,J,{index:J,type:"current-session",required:!0})}}function sU(){return($,H,J)=>{if(H)m.defineParameter($,H,J,{index:J,type:"csrf-token",required:!0})}}function oU(){return($,H)=>{m.defineCSRF($,H,{required:!0})}}function rU($,H){return async(J,Q)=>{let X=$.getConfig(),Y=S2(J,X.name),W=null;if(Y){if(W=await $.getSession(Y),W)await $.touchSession(Y)}J.set("session",W),J.set("sessionManager",$),J.set("csrfProtection",H),await Q()}}class o7{sessionManager;csrfProtection;constructor($,H){this.sessionManager=$;this.csrfProtection=H}checkSession($,H){let J=y1($);if(H.required&&!J)throw new Z1("Session required");if(J&&H.csrf)this.checkCSRF($,J)}checkCSRF($,H){if(!this.csrfProtection)throw Error("CSRF protection not configured");let J=$.req.header("X-CSRF-Token")||$.req.query("_csrf");if(!J)throw new S1("CSRF token required");if(!this.csrfProtection.validateToken(H.id,J))throw new S1("Invalid CSRF token")}async createSession($,H,J={}){let Q=q4($);if(!Q)throw Error("Session manager not available");let X=$.req.header("X-Forwarded-For")||$.req.header("X-Real-IP")||"unknown",Y=$.req.header("User-Agent")||"unknown",W=await Q.createSession(H,J,{ipAddress:X,userAgent:Y}),G=Q.getCookieOptions();return C2($,Q.getConfig().name,W.id,G),$.set("session",W),W}async updateSession($,H){let J=y1($),Q=q4($);if(!J||!Q)return null;let X=await Q.updateSession(J.id,H);if(X)$.set("session",X);return X}async destroySession($){let H=y1($),J=q4($);if(!H||!J)return;await J.destroySession(H.id);let Q=J.getConfig();if(C2($,Q.name,"",{...J.getCookieOptions(),maxAge:0}),$.set("session",null),this.csrfProtection)this.csrfProtection.removeToken(H.id)}async regenerateSession($){let H=y1($),J=q4($);if(!H||!J)return null;let Q=await J.regenerateSession(H.id);if(Q){let X=J.getCookieOptions();if(C2($,J.getConfig().name,Q.id,X),$.set("session",Q),this.csrfProtection)this.csrfProtection.removeToken(H.id),this.csrfProtection.generateToken(Q.id)}return Q}generateCSRFToken($){let H=y1($);if(!H||!this.csrfProtection)return null;return this.csrfProtection.generateToken(H.id)}}function y1($){return $.get("session")||null}function q4($){return $.get("sessionManager")||null}function aU($){return $.get("csrfProtection")||null}function tU($,H){let J=y1($);if(!J)return null;if(H)return J.data[H];return J.data}function eU($){return y1($)!==null}function $B($){return y1($)?.userId||null}function HB($,H,J){let Q=y1($);if(Q)Q.data[H]=J,$.set("session",Q)}function JB($,H){let J=y1($);if(J&&H in J.data)delete J.data[H],$.set("session",J)}class m0{schema;constructor($){this.schema=$}validate($){if(this.schema)return this.schema.parse($);return $}validatePartial($){if(this.schema)try{return this.schema.parse($)}catch{return $}return $}async createMany($){let H=[];for(let J of $)H.push(await this.create(J));return H}async updateMany($,H){let J=await this.findMany({where:$}),Q=0;for(let X of J){let Y=X.id;if(Y)await this.update(Y,H),Q++}return Q}async deleteMany($){let H=await this.findMany({where:$}),J=0;for(let Q of H){let X=Q.id;if(X&&await this.delete(X))J++}return J}async findPaginated($){let{pagination:H,...J}=$,{page:Q,limit:X}=H,Y=(Q-1)*X,W=await this.count(J.where),G=await this.findMany({...J,pagination:{...H,offset:Y}}),q=Math.ceil(W/X);return{data:G,total:W,page:Q,limit:X,totalPages:q,hasNext:Q<q,hasPrev:Q>1}}async count($){return(await this.findMany({where:$})).length}async exists($){return await this.findOne({where:$})!==null}async withTransaction($){return $(this)}buildWhereClause($){if(!$)return{};return $}buildOrderByClause($){if(!$)return{};if(Array.isArray($))return $.reduce((H,J)=>{return H[J.field]=J.direction,H},{});return{[$.field]:$.direction}}buildPaginationClause($){if(!$)return{};let H={};if($.limit)H.take=$.limit;if($.offset)H.skip=$.offset;return H}}class Z0 extends m0{client;delegate;modelName;constructor($){super($.zodSchema);this.client=$.client,this.delegate=$.delegate,this.modelName=$.model}async create($){let H=this.validatePartial($),J=await this.delegate.create({data:H});return this.validate(J)}async findById($){let H=await this.delegate.findUnique({where:{id:$}});return H?this.validate(H):null}async findOne($){let H=this.buildPrismaFindOptions($),J=await this.delegate.findFirst(H);return J?this.validate(J):null}async findMany($){let H=this.buildPrismaFindOptions($||{});return(await this.delegate.findMany(H)).map((Q)=>this.validate(Q))}async update($,H){let J=this.validatePartial(H),Q=await this.delegate.update({where:{id:$},data:J});return this.validate(Q)}async delete($){try{return await this.delegate.delete({where:{id:$}}),!0}catch(H){return!1}}async createMany($){let H=$.map((Q)=>this.validatePartial(Q));await this.delegate.create({data:H,skipDuplicates:!0});let J=[];for(let Q of H){let X=await this.create(Q);J.push(X)}return J}async updateMany($,H){let J=this.validatePartial(H);return(await this.delegate.updateMany({where:this.buildWhereClause($),data:J})).count}async deleteMany($){return(await this.delegate.deleteMany({where:this.buildWhereClause($)})).count}async count($){return await this.delegate.count({where:$?this.buildWhereClause($):void 0})}async exists($){return await this.delegate.count({where:this.buildWhereClause($),take:1})>0}async findPaginated($){let{pagination:H,...J}=$,{page:Q,limit:X}=H,Y=(Q-1)*X,W=this.buildPrismaFindOptions(J),[G,q]=await Promise.all([this.delegate.count({where:W.where}),this.delegate.findMany({...W,skip:Y,take:X})]),U=q.map((w)=>this.validate(w)),B=Math.ceil(G/X);return{data:U,total:G,page:Q,limit:X,totalPages:B,hasNext:Q<B,hasPrev:Q>1}}async withTransaction($){return await this.client.$transaction(async(H)=>{let J=new this.constructor({client:H,delegate:H[this.modelName.toLowerCase()],model:this.modelName,zodSchema:this.schema});return await $(J)})}buildPrismaFindOptions($){let H={};if($.where)H.where=this.buildWhereClause($.where);if($.orderBy)H.orderBy=this.buildOrderByClause($.orderBy);if($.pagination){let J=this.buildPaginationClause($.pagination);Object.assign(H,J)}if($.include)H.include=$.include.reduce((J,Q)=>{return J[Q]=!0,J},{});if($.select)H.select=$.select.reduce((J,Q)=>{return J[Q]=!0,J},{});return H}buildWhereClause($){let H={};for(let[J,Q]of Object.entries($))if(Q===null||Q===void 0)H[J]=null;else if(typeof Q==="object"&&!Array.isArray(Q))H[J]=Q;else if(Array.isArray(Q))H[J]={in:Q};else H[J]=Q;return H}buildOrderByClause($){if(Array.isArray($))return $.map((H)=>({[H.field]:H.direction}));return{[$.field]:$.direction}}buildPaginationClause($){let H={};if($.limit)H.take=$.limit;if($.offset)H.skip=$.offset;return H}async aggregate($){let H={};if($.where)H.where=this.buildWhereClause($.where);if($._count)H._count=$._count;if($._avg)H._avg=$._avg;if($._sum)H._sum=$._sum;if($._min)H._min=$._min;if($._max)H._max=$._max;return await this.delegate.aggregate(H)}async groupBy($){let H={by:$.by};if($.where)H.where=this.buildWhereClause($.where);if($.having)H.having=this.buildWhereClause($.having);if($.orderBy)H.orderBy=this.buildOrderByClause($.orderBy);if($._count)H._count=$._count;if($._avg)H._avg=$._avg;if($._sum)H._sum=$._sum;if($._min)H._min=$._min;if($._max)H._max=$._max;return await this.delegate.groupBy(H)}}class L0 extends m0{dataSource;repository;entity;constructor($){super($.zodSchema);this.dataSource=$.dataSource,this.repository=$.repository,this.entity=$.entity}async create($){let H=this.validatePartial($),J=this.repository.create(H),Q=await this.repository.save(J);return this.validate(Q)}async findById($){let H=await this.repository.findOneBy({id:$});return H?this.validate(H):null}async findOne($){let H=this.buildTypeORMFindOptions($),J=await this.repository.findOne(H);return J?this.validate(J):null}async findMany($){let H=this.buildTypeORMFindOptions($||{});return(await this.repository.find(H)).map((Q)=>this.validate(Q))}async update($,H){let J=this.validatePartial(H),Q=await this.repository.findOneBy({id:$});if(!Q)throw Error(`Entity with id ${$} not found`);let X=this.repository.merge(Q,J),Y=await this.repository.save(X);return this.validate(Y)}async delete($){return((await this.repository.delete({id:$})).affected||0)>0}async createMany($){let J=$.map((X)=>this.validatePartial(X)).map((X)=>this.repository.create(X));return(await this.repository.save(J)).map((X)=>this.validate(X))}async updateMany($,H){let J=this.validatePartial(H),Q=this.buildWhereClause($);return(await this.repository.update(Q,J)).affected||0}async deleteMany($){let H=this.buildWhereClause($);return(await this.repository.delete(H)).affected||0}async count($){let H=$?{where:this.buildWhereClause($)}:{};return await this.repository.count(H)}async exists($){return await this.repository.count({where:this.buildWhereClause($),take:1})>0}async findPaginated($){let{pagination:H,...J}=$,{page:Q,limit:X}=H,Y=(Q-1)*X,W=this.buildTypeORMFindOptions(J);W.skip=Y,W.take=X;let[G,q]=await this.repository.createQueryBuilder("entity").where(W.where||{}).orderBy(W.order||{}).skip(Y).take(X).getManyAndCount(),U=G.map((w)=>this.validate(w)),B=Math.ceil(q/X);return{data:U,total:q,page:Q,limit:X,totalPages:B,hasNext:Q<B,hasPrev:Q>1}}async withTransaction($){return await this.dataSource.transaction(async(H)=>{let J=H.getRepository?H.getRepository(this.entity):this.repository,Q=new this.constructor({dataSource:this.dataSource,repository:J,entity:this.entity,zodSchema:this.schema});return await $(Q)})}buildTypeORMFindOptions($){let H={};if($.where)H.where=this.buildWhereClause($.where);if($.orderBy)H.order=this.buildOrderByClause($.orderBy);if($.pagination){if($.pagination.limit)H.take=$.pagination.limit;if($.pagination.offset)H.skip=$.pagination.offset}if($.include)H.relations=$.include;if($.select)H.select=$.select.reduce((J,Q)=>{return J[Q]=!0,J},{});return H}buildWhereClause($){let H={};for(let[J,Q]of Object.entries($))if(Q===null||Q===void 0)H[J]=null;else if(typeof Q==="object"&&!Array.isArray(Q))if("gt"in Q)H[J]={$gt:Q.gt};else if("gte"in Q)H[J]={$gte:Q.gte};else if("lt"in Q)H[J]={$lt:Q.lt};else if("lte"in Q)H[J]={$lte:Q.lte};else if("like"in Q)H[J]={$like:Q.like};else if("in"in Q)H[J]={$in:Q.in};else H[J]=Q;else if(Array.isArray(Q))H[J]={$in:Q};else H[J]=Q;return H}buildOrderByClause($){if(Array.isArray($))return $.reduce((H,J)=>{return H[J.field]=J.direction.toUpperCase(),H},{});return{[$.field]:$.direction.toUpperCase()}}createQueryBuilder($){return this.repository.createQueryBuilder($)}async query($,H){return await this.dataSource.manager.query($,H)}async softDelete($){try{if(this.dataSource.getMetadata(this.entity).columns.some((Q)=>Q.propertyName==="deletedAt"))return((await this.repository.update({id:$},{deletedAt:new Date})).affected||0)>0;else return await this.delete($)}catch(H){return!1}}async restore($){try{return((await this.repository.update({id:$},{deletedAt:null})).affected||0)>0}catch(H){return!1}}async findWithRelations($,H){let J=await this.repository.findOne({where:{id:$},relations:H});return J?this.validate(J):null}async bulkInsert($){let H=$.map((X)=>this.validatePartial(X)),Q=this.repository.createQueryBuilder().insert();if(Q)await Q.into(this.entity).values(H).execute();else await this.createMany($)}async upsert($,H){let J=this.validatePartial($);try{let Q=this.repository.create(J),X=await this.repository.save(Q);return this.validate(X)}catch(Q){let X=H.reduce((W,G)=>{if(G in J)W[G]=J[G];return W},{}),Y=await this.repository.findOneBy(X);if(Y){let W=this.repository.merge(Y,J),G=await this.repository.save(W);return this.validate(G)}throw Q}}}class u1 extends m0{database;table;operators;constructor($){super($.zodSchema);this.database=$.database,this.table=$.table,this.operators=this.initializeOperators()}initializeOperators(){return{eq:($,H)=>({type:"eq",column:$,value:H}),ne:($,H)=>({type:"ne",column:$,value:H}),gt:($,H)=>({type:"gt",column:$,value:H}),gte:($,H)=>({type:"gte",column:$,value:H}),lt:($,H)=>({type:"lt",column:$,value:H}),lte:($,H)=>({type:"lte",column:$,value:H}),like:($,H)=>({type:"like",column:$,value:H}),ilike:($,H)=>({type:"ilike",column:$,value:H}),inArray:($,H)=>({type:"in",column:$,values:H}),notInArray:($,H)=>({type:"notIn",column:$,values:H}),isNull:($)=>({type:"isNull",column:$}),isNotNull:($)=>({type:"isNotNull",column:$}),between:($,H,J)=>({type:"between",column:$,min:H,max:J}),and:(...$)=>({type:"and",conditions:$}),or:(...$)=>({type:"or",conditions:$}),not:($)=>({type:"not",condition:$})}}async create($){let H=this.validatePartial($),J=await this.database.insert(this.table).values(H).returning().execute();return this.validate(J[0])}async findById($){let H=this.getPrimaryKeyColumn(),J=await this.database.select().from(this.table).where(this.operators.eq(H,$)).execute();return J.length>0?this.validate(J[0]):null}async findOne($){let H=this.database.select().from(this.table);if($.where)H=H.where(this.buildWhereClause($.where));if($.orderBy)H=H.orderBy(...this.buildOrderByClause($.orderBy));H=H.limit(1);let J=await H.execute();return J.length>0?this.validate(J[0]):null}async findMany($){let H=this.database.select().from(this.table);if($?.where)H=H.where(this.buildWhereClause($.where));if($?.orderBy)H=H.orderBy(...this.buildOrderByClause($.orderBy));if($?.pagination){if($.pagination.limit)H=H.limit($.pagination.limit);if($.pagination.offset)H=H.offset($.pagination.offset)}return(await H.execute()).map((Q)=>this.validate(Q))}async update($,H){let J=this.validatePartial(H),Q=this.getPrimaryKeyColumn(),X=await this.database.update(this.table).set(J).where(this.operators.eq(Q,$)).returning().execute();if(X.length===0)throw Error(`Entity with id ${$} not found`);return this.validate(X[0])}async delete($){let H=this.getPrimaryKeyColumn();return(await this.database.delete(this.table).where(this.operators.eq(H,$)).execute()).rowsAffected>0}async createMany($){let H=$.map((Q)=>this.validatePartial(Q));return(await this.database.insert(this.table).values(H).returning().execute()).map((Q)=>this.validate(Q))}async updateMany($,H){let J=this.validatePartial(H),Q=this.buildWhereClause($);return(await this.database.update(this.table).set(J).where(Q).execute()).rowsAffected}async deleteMany($){let H=this.buildWhereClause($);return(await this.database.delete(this.table).where(H).execute()).rowsAffected}async count($){let H=this.database.select({count:"COUNT(*)"}).from(this.table);if($)H=H.where(this.buildWhereClause($));return(await H.execute())[0]?.count||0}async exists($){return await this.count($)>0}async findPaginated($){let{pagination:H,...J}=$,{page:Q,limit:X}=H,Y=(Q-1)*X,W=this.database.select().from(this.table),G=this.database.select({count:"COUNT(*)"}).from(this.table);if(J.where){let V=this.buildWhereClause(J.where);W=W.where(V),G=G.where(V)}if(J.orderBy)W=W.orderBy(...this.buildOrderByClause(J.orderBy));W=W.limit(X).offset(Y);let[q,U]=await Promise.all([W.execute(),G.execute()]),B=U[0]?.count||0,w=q.map((V)=>this.validate(V)),_=Math.ceil(B/X);return{data:w,total:B,page:Q,limit:X,totalPages:_,hasNext:Q<_,hasPrev:Q>1}}async withTransaction($){return await this.database.transaction(async(H)=>{let J=new this.constructor({database:H,table:this.table,zodSchema:this.schema});return await $(J)})}buildWhereClause($){let H=[];for(let[J,Q]of Object.entries($)){let X=this.getColumn(J);if(Q===null||Q===void 0)H.push(this.operators.isNull(X));else if(typeof Q==="object"&&!Array.isArray(Q))if("gt"in Q)H.push(this.operators.gt(X,Q.gt));else if("gte"in Q)H.push(this.operators.gte(X,Q.gte));else if("lt"in Q)H.push(this.operators.lt(X,Q.lt));else if("lte"in Q)H.push(this.operators.lte(X,Q.lte));else if("like"in Q)H.push(this.operators.like(X,Q.like));else if("ilike"in Q)H.push(this.operators.ilike(X,Q.ilike));else if("in"in Q)H.push(this.operators.inArray(X,Q.in));else if("notIn"in Q)H.push(this.operators.notInArray(X,Q.notIn));else if("between"in Q&&Array.isArray(Q.between)&&Q.between.length===2)H.push(this.operators.between(X,Q.between[0],Q.between[1]));else H.push(this.operators.eq(X,Q));else if(Array.isArray(Q))H.push(this.operators.inArray(X,Q));else H.push(this.operators.eq(X,Q))}return H.length===1?H[0]:this.operators.and(...H)}buildOrderByClause($){if(Array.isArray($))return $.map((J)=>{let Q=this.getColumn(J.field);return J.direction==="desc"?{column:Q,direction:"desc"}:Q});let H=this.getColumn($.field);return $.direction==="desc"?[{column:H,direction:"desc"}]:[H]}getPrimaryKeyColumn(){for(let[$,H]of Object.entries(this.table._.columns))if(H._.isPrimaryKey)return this.table[$];return this.table.id||this.table._.columns.id}getColumn($){return this.table[$]||this.table._.columns[$]}async rawQuery($,H){return await this.database.execute({sql:$,params:H})}async upsert($,H){let J=this.validatePartial($),Q=H.map((Y)=>this.getColumn(Y)),X=await this.database.insert(this.table).values(J).onConflictDoUpdate({target:Q,set:J}).returning().execute();return this.validate(X[0])}async bulkUpsert($,H){let J=$.map((Y)=>this.validatePartial(Y)),Q=H.map((Y)=>this.getColumn(Y));return(await this.database.insert(this.table).values(J).onConflictDoUpdate({target:Q,set:J[0]}).returning().execute()).map((Y)=>this.validate(Y))}async findWithSelect($,H){let J=H.reduce((X,Y)=>{return X[Y]=this.getColumn(Y),X},{}),Q=this.database.select(J).from(this.table);if($.where)Q=Q.where(this.buildWhereClause($.where));if($.orderBy)Q=Q.orderBy(...this.buildOrderByClause($.orderBy));if($.pagination){if($.pagination.limit)Q=Q.limit($.pagination.limit);if($.pagination.offset)Q=Q.offset($.pagination.offset)}return await Q.execute()}async aggregate($){let H={};if($.count)H.count="COUNT(*)";if($.sum)for(let Q of $.sum)H[`sum_${Q}`]=`SUM(${Q})`;if($.avg)for(let Q of $.avg)H[`avg_${Q}`]=`AVG(${Q})`;if($.min)for(let Q of $.min)H[`min_${Q}`]=`MIN(${Q})`;if($.max)for(let Q of $.max)H[`max_${Q}`]=`MAX(${Q})`;let J=this.database.select(H).from(this.table);if($.where)J=J.where(this.buildWhereClause($.where));if($.groupBy){let Q=$.groupBy.map((X)=>this.getColumn(X));J=J.groupBy(...Q)}if($.having)J=J.having(this.buildWhereClause($.having));return await J.execute()}}class _${static instance;constructor(){}static getInstance(){if(!_$.instance)_$.instance=new _$;return _$.instance}createRepository($,H){switch($){case"prisma":return new Z0(H);case"typeorm":return new L0(H);case"drizzle":return new u1(H);default:throw Error(`Unsupported repository type: ${$}`)}}createPrismaRepository($){return new Z0($)}createTypeORMRepository($){return new L0($)}createDrizzleRepository($){return new u1($)}}class N9{repositories=new Map;factory;constructor(){this.factory=_$.getInstance()}register($,H){this.repositories.set($,H)}get($){return this.repositories.get($)}createAndRegister($,H,J){let Q=this.factory.createRepository(H,J);return this.register($,Q),Q}remove($){return this.repositories.delete($)}getNames(){return Array.from(this.repositories.keys())}clear(){this.repositories.clear()}size(){return this.repositories.size}}function AC($,H,J){return(Q,X)=>{let Y={type:"generic-repository",name:$,ormType:H,options:J};Reflect.defineMetadata("inject",Y,Q,X)}}function RC($){return class extends ${repositories=new N9;getRepository(H){return this.repositories.get(H)}createRepository(H,J,Q){return this.repositories.createAndRegister(H,J,Q)}async withRepositories(H,J){let Q=new Map;for(let Y of H){let W=this.repositories.get(Y);if(W)Q.set(Y,W)}let X=Q.values().next().value;if(X&&typeof X.withTransaction==="function")return await X.withTransaction(async()=>{return await J(Q)});return await J(Q)}}}class QB{repositories=new N9;constructor(){this.initializeRepositories()}getRepository($){let H=this.repositories.get($);if(!H)throw Error(`Repository '${$}' not found`);return H}async executeInTransaction($,H){let J=new Map;for(let X of $){let Y=this.repositories.get(X);if(Y)J.set(X,Y)}let Q=J.values().next().value;if(Q&&typeof Q.withTransaction==="function")return await Q.withTransaction(async()=>{return await H(J)});return await H(J)}}var EC=new N9;class z8{executor;operators;selectFields;whereConditions=[];orderByClause;limitCount;offsetCount;groupByFields;havingConditions=[];joins=[];constructor($,H=new r7){this.executor=$;this.operators=H}select($){return this.selectFields=$,this}where($){let H=this.buildFilterCondition($);return this.whereConditions.push(H),this}orderBy($){return this.orderByClause=$,this}limit($){return this.limitCount=$,this}offset($){return this.offsetCount=$,this}groupBy($){return this.groupByFields=$,this}having($){let H=this.buildFilterCondition($);return this.havingConditions.push(H),this}join($,H){return this.joins.push({type:"JOIN",table:$,condition:H}),this}leftJoin($,H){return this.joins.push({type:"LEFT JOIN",table:$,condition:H}),this}rightJoin($,H){return this.joins.push({type:"RIGHT JOIN",table:$,condition:H}),this}innerJoin($,H){return this.joins.push({type:"INNER JOIN",table:$,condition:H}),this}async execute(){let $=this.buildQuery();return await this.executor.execute($)}async first(){let $=this.limitCount;this.limit(1);let H=await this.execute();return this.limitCount=$,H.length>0?H[0]:null}async count(){let $=this.buildCountQuery();return await this.executor.count($)}async exists(){return await this.count()>0}buildFilterCondition($){let H=[];for(let[J,Q]of Object.entries($))if(Q===null||Q===void 0)H.push({type:"isNull",field:J});else if(typeof Q==="object"&&!Array.isArray(Q))for(let[X,Y]of Object.entries(Q))switch(X){case"eq":H.push({type:"eq",field:J,value:Y});break;case"ne":H.push({type:"ne",field:J,value:Y});break;case"gt":H.push({type:"gt",field:J,value:Y});break;case"gte":H.push({type:"gte",field:J,value:Y});break;case"lt":H.push({type:"lt",field:J,value:Y});break;case"lte":H.push({type:"lte",field:J,value:Y});break;case"like":H.push({type:"like",field:J,pattern:Y});break;case"ilike":H.push({type:"ilike",field:J,pattern:Y});break;case"in":H.push({type:"in",field:J,values:Y});break;case"notIn":H.push({type:"notIn",field:J,values:Y});break;case"between":if(Array.isArray(Y)&&Y.length===2)H.push({type:"between",field:J,min:Y[0],max:Y[1]});break}else if(Array.isArray(Q))H.push({type:"in",field:J,values:Q});else H.push({type:"eq",field:J,value:Q});return H.length===1?H[0]:{type:"and",conditions:H}}buildQuery(){return{select:this.selectFields,where:this.whereConditions.length>0?this.whereConditions.length===1?this.whereConditions[0]:{type:"and",conditions:this.whereConditions}:void 0,orderBy:this.orderByClause,limit:this.limitCount,offset:this.offsetCount,groupBy:this.groupByFields,having:this.havingConditions.length>0?this.havingConditions.length===1?this.havingConditions[0]:{type:"and",conditions:this.havingConditions}:void 0,joins:this.joins}}buildCountQuery(){return{select:["COUNT(*) as count"],where:this.whereConditions.length>0?this.whereConditions.length===1?this.whereConditions[0]:{type:"and",conditions:this.whereConditions}:void 0,joins:this.joins}}}class r7{eq($){return{type:"eq",value:$}}ne($){return{type:"ne",value:$}}gt($){return{type:"gt",value:$}}gte($){return{type:"gte",value:$}}lt($){return{type:"lt",value:$}}lte($){return{type:"lte",value:$}}like($){return{type:"like",pattern:$}}ilike($){return{type:"ilike",pattern:$}}in($){return{type:"in",values:$}}notIn($){return{type:"notIn",values:$}}between($,H){return{type:"between",min:$,max:H}}isNull(){return{type:"isNull"}}isNotNull(){return{type:"isNotNull"}}and(...$){return{type:"and",conditions:$}}or(...$){return{type:"or",conditions:$}}not($){return{type:"not",condition:$}}}class XB{static create($){return new z8($)}static createWithOperators($,H){return new z8($,H)}}class U4{static calculateMeta($,H,J){let Q=Math.ceil($/J);return{total:$,page:H,limit:J,totalPages:Q,hasNext:H<Q,hasPrev:H>1,firstPage:1,lastPage:Q}}static calculateOffset($,H){return($-1)*H}static calculatePage($,H){return Math.floor($/H)+1}static validatePagination($,H){if($<1)throw Error("Page must be greater than 0");if(H<1)throw Error("Limit must be greater than 0");if(H>1000)throw Error("Limit cannot exceed 1000")}static createPaginatedResult($,H,J,Q){let X=this.calculateMeta(H,J,Q);return{data:$,total:X.total,page:X.page,limit:X.limit,totalPages:X.totalPages,hasNext:X.hasNext,hasPrev:X.hasPrev}}static extractPaginationFromQuery($){let H=parseInt($.page)||1,J=parseInt($.limit)||10;return this.validatePagination(H,J),{page:H,limit:J}}}class a7{static encodeCursor($){return Buffer.from(JSON.stringify($)).toString("base64")}static decodeCursor($){try{return JSON.parse(Buffer.from($,"base64").toString())}catch(H){throw Error("Invalid cursor format")}}static createCursor($,H="id"){let J=$[H];if(J===void 0||J===null)throw Error(`Cursor field '${H}' not found in entity`);return this.encodeCursor({[H]:J})}static extractCursorValue($,H="id"){return this.decodeCursor($)[H]}static createCursorPaginatedResult($,H,J="id"){let Q=$.length>H,X=!1,Y=Q?$.slice(0,H):$,W,G;if(Y.length>0){if(Q)W=this.createCursor(Y[Y.length-1],J)}return{data:Y,nextCursor:W,prevCursor:G,hasNext:Q,hasPrev:!1,limit:H}}}class YB{baseQuery;options={};constructor($={}){this.baseQuery=$;this.options={...$}}offset($,H){return U4.validatePagination($,H),this.options.pagination={page:$,limit:H,offset:U4.calculateOffset($,H)},this}cursor($,H,J="id"){if(H<1||H>1000)throw Error("Limit must be between 1 and 1000");let Q=a7.extractCursorValue($,J);return this.options.where={...this.options.where,[J]:{gt:Q}},this.options.pagination={limit:H},this}orderBy($,H="asc"){return this.options.orderBy={field:$,direction:H},this}orderByMultiple($){return this.options.orderBy=$.map((H)=>({field:H.field,direction:H.direction})),this}where($){return this.options.where={...this.options.where,...$},this}select($){return this.options.select=$,this}include($){return this.options.include=$,this}build(){return this.options}reset(){return this.options={...this.baseQuery},this}}function jC($=10,H=100){return function(J,Q,X){let Y=X.value;return X.value=async function(...W){let G=W[W.length-1];if(G&&typeof G==="object"&&(("page"in G)||("limit"in G))){let q=G.page||1,U=Math.min(G.limit||$,H);U4.validatePagination(q,U),G.pagination={page:q,limit:U,offset:U4.calculateOffset(q,U)}}return await Y.apply(this,W)},X}}class WB{static toApiResponse($,H){return{data:$.data,meta:{total:$.total,page:$.page,limit:$.limit,totalPages:$.totalPages},links:{first:H?`${H}?page=1&limit=${$.limit}`:null,last:H?`${H}?page=${$.totalPages}&limit=${$.limit}`:null,prev:$.hasPrev&&H?`${H}?page=${$.page-1}&limit=${$.limit}`:null,next:$.hasNext&&H?`${H}?page=${$.page+1}&limit=${$.limit}`:null}}}static toCursorApiResponse($,H){let J={data:$.data,meta:{limit:$.limit,hasNext:$.hasNext,hasPrev:$.hasPrev},cursors:{next:$.nextCursor,prev:$.prevCursor}};if(H)J.links={next:$.nextCursor?`${H}?cursor=${$.nextCursor}&limit=${$.limit}`:null,prev:$.prevCursor?`${H}?cursor=${$.prevCursor}&limit=${$.limit}`:null};return J}}d1();d1();var Eg=F0(Q$());function qB($,H){return(J)=>{let Q={entity:$,connection:H,transactional:!1};Reflect.defineMetadata("repository",Q,J)}}function UB($){return(H,J,Q)=>{let X=Q.value,Y={isolation:$?.isolation||"READ_COMMITTED",timeout:$?.timeout||30000,readOnly:$?.readOnly||!1,propagation:$?.propagation||"REQUIRED"};return Reflect.defineMetadata("transactional",Y,H,J),Q.value=async function(...W){return await M0().handleTransactional(this,J,W,X,W.find((q)=>q&&typeof q==="object"&&q.req&&q.res))},Q}}function BB($){return(H)=>{let J={tableName:$||H.name.toLowerCase()};Reflect.defineMetadata("entity",J,H)}}function wB($){return(H,J)=>{let Q={name:$?.name||J.toString(),type:$?.type||"string",nullable:$?.nullable||!1,unique:$?.unique||!1,primary:$?.primary||!1};Reflect.defineMetadata("column",Q,H,J)}}d1();class d0{static instance;constructor(){}static getInstance(){if(!d0.instance)d0.instance=new d0;return d0.instance}async intercept($,H,J,Q,X){let Y=M0();if(Reflect.getMetadata("transactional",$,H))return await Y.handleTransactional($,H,J,Q,X);return await Q.apply($,J)}createTransactionalProxy($,H){return new Proxy($,{get:(J,Q)=>{let X=J[Q];if(typeof X==="function")return async(...Y)=>{return await this.intercept(J,Q,Y,X.bind(J),H)};return X}})}}function t7(){return async($,H)=>{let J=d0.getInstance();$.set("transactionInterceptor",J),$.set("transactionContext",$),await H()}}function DB($){return $.get("transactionInterceptor")||d0.getInstance()}function OC($,H){return DB($).createTransactionalProxy(H,$)}var VB;((W)=>{W.REQUIRED="REQUIRED";W.REQUIRES_NEW="REQUIRES_NEW";W.SUPPORTS="SUPPORTS";W.NOT_SUPPORTED="NOT_SUPPORTED";W.MANDATORY="MANDATORY";W.NEVER="NEVER"})(VB||={});class _B{shouldStartNewTransaction($,H){switch($){case"REQUIRED":return!H;case"REQUIRES_NEW":return!0;case"SUPPORTS":return!1;case"NOT_SUPPORTED":return!1;case"MANDATORY":if(!H)throw Error("Transaction is mandatory but no existing transaction found");return!1;case"NEVER":if(H)throw Error("Transaction is not allowed but existing transaction found");return!1;default:return!H}}shouldSuspendTransaction($,H){return $==="NOT_SUPPORTED"&&!!H}shouldExecuteInTransaction($,H){switch($){case"REQUIRED":case"REQUIRES_NEW":case"MANDATORY":return!0;case"SUPPORTS":return!!H;case"NOT_SUPPORTED":case"NEVER":return!1;default:return!0}}shouldRollbackForError($,H){if(H.noRollbackFor){for(let J of H.noRollbackFor)if($ instanceof J)return!1}if(H.rollbackFor){for(let J of H.rollbackFor)if($ instanceof J)return!0;return!1}return!0}}function z$($){return(H,J,Q)=>{let X=Q.value,Y={isolation:$?.isolation||"READ_COMMITTED",timeout:$?.timeout||30000,readOnly:$?.readOnly||!1,propagation:$?.propagation||"REQUIRED",rollbackFor:$?.rollbackFor,noRollbackFor:$?.noRollbackFor};return Reflect.defineMetadata("transactional",Y,H,J),Q.value=async function(...W){let{getGlobalTransactionManager:G}=await Promise.resolve().then(() => (d1(),GB));return await G().handleTransactional(this,J,W,X,W.find((U)=>U&&typeof U==="object"&&U.req&&U.res))},Q}}function ZC($){return z$({...$,propagation:"REQUIRED"})}function LC($){return z$({...$,propagation:"REQUIRES_NEW"})}function MC($){return z$({...$,propagation:"SUPPORTS"})}function SC($){return z$({...$,propagation:"NOT_SUPPORTED"})}function CC($){return z$({...$,propagation:"MANDATORY"})}function PC($){return z$({...$,propagation:"NEVER"})}var FB;((B)=>{B.BEFORE_BEGIN="BEFORE_BEGIN";B.AFTER_BEGIN="AFTER_BEGIN";B.BEFORE_COMMIT="BEFORE_COMMIT";B.AFTER_COMMIT="AFTER_COMMIT";B.BEFORE_ROLLBACK="BEFORE_ROLLBACK";B.AFTER_ROLLBACK="AFTER_ROLLBACK";B.BEFORE_SAVEPOINT="BEFORE_SAVEPOINT";B.AFTER_SAVEPOINT="AFTER_SAVEPOINT";B.BEFORE_ROLLBACK_TO_SAVEPOINT="BEFORE_ROLLBACK_TO_SAVEPOINT";B.AFTER_ROLLBACK_TO_SAVEPOINT="AFTER_ROLLBACK_TO_SAVEPOINT"})(FB||={});class e7{listeners=[];beginListeners=[];commitListeners=[];rollbackListeners=[];savepointListeners=[];addListener($){this.listeners.push($)}removeListener($){let H=this.listeners.indexOf($);if(H>-1)this.listeners.splice(H,1)}addBeginListener($){this.beginListeners.push($)}addCommitListener($){this.commitListeners.push($)}addRollbackListener($){this.rollbackListeners.push($)}addSavepointListener($){this.savepointListeners.push($)}async emitEvent($){for(let H of this.listeners)try{await H.onTransactionEvent($)}catch(J){console.error("Error in transaction event listener:",J)}await this.emitSpecificEvent($)}async emitSpecificEvent($){switch($.type){case"BEFORE_BEGIN":for(let H of this.beginListeners)if(H.onBeforeBegin)try{await H.onBeforeBegin($.context)}catch(J){console.error("Error in before begin listener:",J)}break;case"AFTER_BEGIN":for(let H of this.beginListeners)if(H.onAfterBegin)try{await H.onAfterBegin($.context)}catch(J){console.error("Error in after begin listener:",J)}break;case"BEFORE_COMMIT":for(let H of this.commitListeners)if(H.onBeforeCommit)try{await H.onBeforeCommit($.context)}catch(J){console.error("Error in before commit listener:",J)}break;case"AFTER_COMMIT":for(let H of this.commitListeners)if(H.onAfterCommit)try{await H.onAfterCommit($.context)}catch(J){console.error("Error in after commit listener:",J)}break;case"BEFORE_ROLLBACK":for(let H of this.rollbackListeners)if(H.onBeforeRollback)try{await H.onBeforeRollback($.context,$.error)}catch(J){console.error("Error in before rollback listener:",J)}break;case"AFTER_ROLLBACK":for(let H of this.rollbackListeners)if(H.onAfterRollback)try{await H.onAfterRollback($.context,$.error)}catch(J){console.error("Error in after rollback listener:",J)}break;case"BEFORE_SAVEPOINT":for(let H of this.savepointListeners)if(H.onBeforeSavepoint)try{await H.onBeforeSavepoint($.context,$.metadata?.name)}catch(J){console.error("Error in before savepoint listener:",J)}break;case"AFTER_SAVEPOINT":for(let H of this.savepointListeners)if(H.onAfterSavepoint)try{await H.onAfterSavepoint($.context,$.metadata?.name)}catch(J){console.error("Error in after savepoint listener:",J)}break;case"BEFORE_ROLLBACK_TO_SAVEPOINT":for(let H of this.savepointListeners)if(H.onBeforeRollbackToSavepoint)try{await H.onBeforeRollbackToSavepoint($.context,$.metadata?.name)}catch(J){console.error("Error in before rollback to savepoint listener:",J)}break;case"AFTER_ROLLBACK_TO_SAVEPOINT":for(let H of this.savepointListeners)if(H.onAfterRollbackToSavepoint)try{await H.onAfterRollbackToSavepoint($.context,$.metadata?.name)}catch(J){console.error("Error in after rollback to savepoint listener:",J)}break}}clearAllListeners(){this.listeners=[],this.beginListeners=[],this.commitListeners=[],this.rollbackListeners=[],this.savepointListeners=[]}}function KC(){return($,H)=>{Reflect.defineMetadata("transaction-event","begin",$,H)}}function IC(){return($,H)=>{Reflect.defineMetadata("transaction-event","commit",$,H)}}function TC(){return($,H)=>{Reflect.defineMetadata("transaction-event","rollback",$,H)}}class A8{logger;constructor($=console.log){this.logger=$}async onTransactionEvent($){let H=`Transaction ${$.type}: ${$.context.id}`,J={timestamp:$.timestamp,context:{id:$.context.id,startTime:$.context.startTime,isolation:$.context.isolation,timeout:$.context.timeout,readOnly:$.context.readOnly,savepoints:$.context.savepoints,rollbackOnly:$.context.rollbackOnly},metadata:$.metadata,error:$.error?.message};this.logger(H,J)}}class R8{metrics={totalTransactions:0,committedTransactions:0,rolledBackTransactions:0,averageDuration:0,totalDuration:0};async onTransactionEvent($){switch($.type){case"AFTER_BEGIN":this.metrics.totalTransactions++;break;case"AFTER_COMMIT":this.metrics.committedTransactions++,this.updateDuration($.context);break;case"AFTER_ROLLBACK":this.metrics.rolledBackTransactions++,this.updateDuration($.context);break}}updateDuration($){let H=Date.now()-$.startTime.getTime();this.metrics.totalDuration+=H,this.metrics.averageDuration=this.metrics.totalDuration/(this.metrics.committedTransactions+this.metrics.rolledBackTransactions)}getMetrics(){return{...this.metrics}}resetMetrics(){this.metrics={totalTransactions:0,committedTransactions:0,rolledBackTransactions:0,averageDuration:0,totalDuration:0}}}var N$=new e7;d1();class $3{name="transaction";version="1.0.0";config;metricsListener;constructor($){this.config={enableLogging:!0,enableMetrics:!0,defaultIsolation:"READ_COMMITTED",defaultTimeout:30000,...$}}async install($){this.setupTransactionManager(),$.use(t7()),this.setupEventListeners(),this.registerTransactionUtilities($),console.log("✅ Transaction plugin installed successfully")}setupTransactionManager(){if(this.config.customTransactionManager)m1(this.config.customTransactionManager);else m1(new F$)}setupEventListeners(){if(this.config.enableLogging){let $=new A8;N$.addListener($)}if(this.config.enableMetrics)this.metricsListener=new R8,N$.addListener(this.metricsListener)}registerTransactionUtilities($){let H=$.getContainer();class J{}class Q{}class X{}if(H.register(J,{scope:"singleton",factory:()=>N$}),this.metricsListener)H.register(Q,{scope:"singleton",factory:()=>({getMetrics:()=>this.metricsListener.getMetrics(),resetMetrics:()=>this.metricsListener.resetMetrics()})});H.register(X,{scope:"singleton",factory:()=>({executeInTransaction:async(Y)=>{let W=M0(),G=await W.begin();try{let q=await Y();if(G.rollbackOnly)throw await W.rollback(G),Error("Transaction marked for rollback");return await W.commit(G),q}catch(q){throw await W.rollback(G),q}},getCurrentTransaction:()=>{return null},isInTransaction:()=>{return!1}})})}getMetrics(){return this.metricsListener?.getMetrics()}resetMetrics(){this.metricsListener?.resetMetrics()}addEventListener($){N$.addListener($)}removeEventListener($){N$.removeListener($)}}function bC($){return new $3($)}class zB{transactionManager;constructor($){this.transactionManager=$}async executeInTransaction($){let H=await this.transactionManager.begin();try{let J=await $();if(H.rollbackOnly)throw await this.transactionManager.rollback(H),Error("Transaction marked for rollback");return await this.transactionManager.commit(H),J}catch(J){throw await this.transactionManager.rollback(H),J}}async createSavepoint($){}async rollbackToSavepoint($){}setRollbackOnly(){}isInTransaction(){return!1}}class NB{transactionManager;defaultOptions;constructor($,H){this.transactionManager=$;this.defaultOptions=H}async execute($,H){let J={...this.defaultOptions,...H},Q=await this.transactionManager.begin(J);try{let X=await $();if(Q.rollbackOnly)throw await this.transactionManager.rollback(Q),Error("Transaction marked for rollback");return await this.transactionManager.commit(Q),X}catch(X){throw await this.transactionManager.rollback(Q),X}}async executeReadOnly($){return this.execute($,{readOnly:!0})}async executeWithIsolation($,H){return this.execute($,{isolation:H})}}class B4{modelSchemas=new Map;generateModelSchema($){if(this.modelSchemas.has($.name))return this.modelSchemas.get($.name);let H={};for(let Q of $.fields)H[Q.name]=this.generateFieldSchema(Q);let J=R.object(H);return this.modelSchemas.set($.name,J),J}generateFieldSchema($){let H=this.getBaseSchema($.type);if($.isList)H=R.array(H);if($.isOptional)H=H.optional();if($.isUnique)H=H.describe(`Unique field: ${$.name}`);return H}getBaseSchema($){switch($.toLowerCase()){case"string":return R.string();case"int":case"integer":return R.number().int();case"float":case"decimal":return R.number();case"boolean":case"bool":return R.boolean();case"datetime":case"timestamp":return R.date();case"json":return R.record(R.any());case"bytes":return R.instanceof(Buffer);case"bigint":return R.bigint();default:return R.string()}}generateCreateSchema($){let H={};for(let J of $.fields){if(J.isId&&J.hasDefaultValue)continue;if(J.name==="createdAt"||J.name==="updatedAt")continue;H[J.name]=this.generateFieldSchema(J)}return R.object(H)}generateUpdateSchema($){let H={};for(let J of $.fields){if(J.isId)continue;if(J.name==="updatedAt")continue;let Q=this.generateFieldSchema(J);if(!Q.isOptional())Q=Q.optional();H[J.name]=Q}return R.object(H)}static parsePrismaSchema($){let H=[],J=$.split(`
|
|
149
|
+
`.trim()}getSchema(){return this.schema}}class N2{name="health";version="1.0.0";options;startTime;logger=I0().child({plugin:"health"});constructor($){this.options={path:$?.path||"/health",readyPath:$?.readyPath||"/ready",livePath:$?.livePath||"/live",checks:$?.checks||[]},this.startTime=Date.now()}async install($){$.get(this.options.path,{handler:async(H)=>{return this.handleHealth(H)},docs:{summary:"Health Check",description:"Comprehensive health check endpoint",tags:["Health"]}}),$.get(this.options.readyPath,{handler:async(H)=>{return this.handleReady(H)},docs:{summary:"Readiness Check",description:"Check if the application is ready to serve traffic",tags:["Health"]}}),$.get(this.options.livePath,{handler:async(H)=>{return this.handleLive(H)},docs:{summary:"Liveness Check",description:"Check if the application is alive",tags:["Health"]}}),this.logger.info("Health check endpoints registered",{health:this.options.path,ready:this.options.readyPath,live:this.options.livePath})}async handleHealth($){let H=Date.now()-this.startTime,J={},Q=!0;for(let Y of this.options.checks)try{let W=await Promise.resolve(Y());if(J[Y.name||"unknown"]=W,W.status==="unhealthy")Q=!1}catch(W){let G=W instanceof Error?W.message:"Unknown error";J[Y.name||"unknown"]={status:"unhealthy",message:G},Q=!1}let X={status:Q?"healthy":"unhealthy",timestamp:new Date().toISOString(),uptime:H,checks:Object.keys(J).length>0?J:void 0};return $.json(X,Q?200:503)}async handleReady($){let H=Date.now()-this.startTime,J=this.options.checks.filter((W)=>W.name?.includes("database")||W.name?.includes("cache")||W.name?.includes("ready")),Q=!0,X={};for(let W of J)try{let G=await Promise.resolve(W());if(X[W.name||"unknown"]=G,G.status==="unhealthy")Q=!1}catch(G){Q=!1;let q=G instanceof Error?G.message:"Unknown error";X[W.name||"unknown"]={status:"unhealthy",message:q}}let Y={status:Q?"ready":"not_ready",timestamp:new Date().toISOString(),uptime:H,checks:Object.keys(X).length>0?X:void 0};return $.json(Y,Q?200:503)}handleLive($){let H=Date.now()-this.startTime;return $.json({status:"alive",timestamp:new Date().toISOString(),uptime:H},200)}}var S5={alwaysHealthy(){return{status:"healthy",message:"OK"}},database($){let H=async()=>{try{let J=await Promise.resolve($());return{status:J?"healthy":"unhealthy",message:J?"Database connection OK":"Database connection failed"}}catch(J){return{status:"unhealthy",message:J instanceof Error?J.message:"Database check failed"}}};return H.name="database",H},memory($=512){let H=()=>{if(typeof process>"u"||!process.memoryUsage)return{status:"healthy",message:"Memory check not available"};let Q=process.memoryUsage().heapUsed/1024/1024;return{status:Q<$?"healthy":"unhealthy",message:`Heap usage: ${Q.toFixed(2)}MB / ${$}MB`,heapUsedMB:Q.toFixed(2),maxUsageMB:$}};return H.name="memory",H},disk($=90){let H=()=>{return{status:"healthy",message:"Disk check not implemented (requires additional dependencies)"}};return H.name="disk",H}};var RE={};L1(RE,{WebSocketPlugin:()=>p$,WebSocketManager:()=>l$,WebSocketConnection:()=>c$,WebSocket:()=>y5,OnMessage:()=>m5,OnDisconnect:()=>d5,OnConnect:()=>u5});module.exports=l1(RE);var Ef=F0(Q$());var Af=F0(Q$()),C5=Symbol("route:metadata"),P5=Symbol("controller:metadata"),NY=Symbol("parameter:metadata"),AY=Symbol("dependency:metadata"),K5=Symbol("websocket:metadata"),RY=Symbol("websocket:handler:metadata"),I5=Symbol("graphql:resolver"),n4=Symbol("graphql:field"),T5=Symbol("auth:metadata"),b5=Symbol("oauth:metadata"),f5=Symbol("roles:metadata"),x5=Symbol("permissions:metadata"),k5=Symbol("minimum-role:metadata"),h5=Symbol("resource-permission:metadata"),v5=Symbol("session:metadata"),g5=Symbol("csrf:metadata");class m{routes=new Map;controllers=new Map;routesByController=new Map;websockets=new Map;graphqlResolvers=new Map;graphqlFields=new Map;registerRoute($){let H=this.getRouteKey($.target,$.propertyKey);if(this.routes.set(H,$),!this.routesByController.has($.target))this.routesByController.set($.target,[]);this.routesByController.get($.target).push($)}registerController($,H){this.controllers.set($,H)}getRoutes(){return Array.from(this.routes.values())}getRoute($,H){let J=this.getRouteKey($,H);return this.routes.get(J)}getRoutesByController($){return this.routesByController.get($)||[]}getController($){return this.controllers.get($)}getControllers(){return new Map(this.controllers)}registerWebSocket($){this.websockets.set($.target,$)}getWebSockets(){return Array.from(this.websockets.values())}getWebSocket($){return this.websockets.get($)}registerGraphQLResolver($){this.graphqlResolvers.set($.target,$)}registerGraphQLField($){let H=this.getRouteKey($.target,$.propertyKey);this.graphqlFields.set(H,$)}getGraphQLResolvers(){return Array.from(this.graphqlResolvers.values())}getGraphQLResolver($){return this.graphqlResolvers.get($)}getGraphQLFields(){return Array.from(this.graphqlFields.values())}getGraphQLFieldsByResolver($){return Array.from(this.graphqlFields.values()).filter((H)=>H.target===$)}clear(){this.routes.clear(),this.controllers.clear(),this.routesByController.clear(),this.websockets.clear(),this.graphqlResolvers.clear(),this.graphqlFields.clear()}getRouteKey($,H){return`${$.name}:${H}`}static defineRoute($,H,J){let Q=this.getRouteMetadata($,H),X={...Q,...J,target:$.constructor,propertyKey:H,middleware:[...Q?.middleware||[],...J.middleware||[]],parameters:J.parameters||Q?.parameters||[],dependencies:J.dependencies||Q?.dependencies||[],responses:J.responses||Q?.responses||[],auth:J.auth||Q?.auth,oauth:J.oauth||Q?.oauth,roles:J.roles||Q?.roles,permissions:J.permissions||Q?.permissions,minimumRole:J.minimumRole||Q?.minimumRole,resourcePermission:J.resourcePermission||Q?.resourcePermission,session:J.session||Q?.session,csrf:J.csrf||Q?.csrf};Reflect.defineMetadata(C5,X,$,H)}static defineParameter($,H,J,Q){let X=this.getParameterMetadata($,H)||[];X[J]=Q,Reflect.defineMetadata(NY,X,$,H);let Y=this.getRouteMetadata($,H);this.defineRoute($,H,{...Y,parameters:X})}static defineDependency($,H,J,Q){let X=this.getDependencyMetadata($,H)||[];X[J]=Q,Reflect.defineMetadata(AY,X,$,H);let Y=this.getRouteMetadata($,H);this.defineRoute($,H,{...Y,dependencies:X})}static defineController($,H){Reflect.defineMetadata(P5,H,$)}static getRouteMetadata($,H){return Reflect.getMetadata(C5,$,H)}static getParameterMetadata($,H){return Reflect.getMetadata(NY,$,H)}static getDependencyMetadata($,H){return Reflect.getMetadata(AY,$,H)}static getControllerMetadata($){return Reflect.getMetadata(P5,$)}static hasControllerMetadata($){return Reflect.hasMetadata(P5,$)}static hasRouteMetadata($,H){return Reflect.hasMetadata(C5,$,H)}static getRouteMethods($){let H=$.prototype,J=[],Q=Object.getOwnPropertyNames(H);for(let X of Q){if(X==="constructor")continue;if(this.hasRouteMetadata(H,X))J.push(X)}return J}static defineWebSocket($,H){let Q={...this.getWebSocketMetadata($),...H,target:$};Reflect.defineMetadata(K5,Q,$)}static defineWebSocketHandler($,H,J){let Q=this.getWebSocketMetadata($.constructor)||{};switch(J.type){case"connect":Q.onConnect=H;break;case"message":Q.onMessage=H,Q.messageSchema=J.schema;break;case"disconnect":Q.onDisconnect=H;break}this.defineWebSocket($.constructor,Q),Reflect.defineMetadata(RY,J,$,H)}static getWebSocketMetadata($){return Reflect.getMetadata(K5,$)}static getWebSocketHandlerMetadata($,H){return Reflect.getMetadata(RY,$,H)}static hasWebSocketMetadata($){return Reflect.hasMetadata(K5,$)}static defineGraphQLResolver($,H){Reflect.defineMetadata(I5,H,$)}static defineGraphQLField($,H,J){Reflect.defineMetadata(n4,J,$,H);let Q=this.getGraphQLFieldsMetadata($.constructor)||[];Q.push(J),Reflect.defineMetadata(n4,Q,$.constructor)}static getGraphQLResolverMetadata($){return Reflect.getMetadata(I5,$)}static getGraphQLFieldsMetadata($){return Reflect.getMetadata(n4,$)||[]}static getGraphQLFieldMetadata($,H){return Reflect.getMetadata(n4,$,H)}static hasGraphQLResolverMetadata($){return Reflect.hasMetadata(I5,$)}static hasGraphQLFieldMetadata($,H){return Reflect.hasMetadata(n4,$,H)}static defineAuth($,H,J){Reflect.defineMetadata(T5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,auth:J})}static getAuthMetadata($,H){return Reflect.getMetadata(T5,$,H)}static hasAuthMetadata($,H){return Reflect.hasMetadata(T5,$,H)}static defineOAuth($,H,J){Reflect.defineMetadata(b5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,oauth:J})}static getOAuthMetadata($,H){return Reflect.getMetadata(b5,$,H)}static hasOAuthMetadata($,H){return Reflect.hasMetadata(b5,$,H)}static defineRoles($,H,J){Reflect.defineMetadata(f5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,roles:J})}static definePermissions($,H,J){Reflect.defineMetadata(x5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,permissions:J})}static defineMinimumRole($,H,J){Reflect.defineMetadata(k5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,minimumRole:J})}static getRolesMetadata($,H){return Reflect.getMetadata(f5,$,H)}static getPermissionsMetadata($,H){return Reflect.getMetadata(x5,$,H)}static getMinimumRoleMetadata($,H){return Reflect.getMetadata(k5,$,H)}static hasRolesMetadata($,H){return Reflect.hasMetadata(f5,$,H)}static hasPermissionsMetadata($,H){return Reflect.hasMetadata(x5,$,H)}static hasMinimumRoleMetadata($,H){return Reflect.hasMetadata(k5,$,H)}static defineResourcePermission($,H,J){Reflect.defineMetadata(h5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,resourcePermission:J})}static getResourcePermissionMetadata($,H){return Reflect.getMetadata(h5,$,H)}static hasResourcePermissionMetadata($,H){return Reflect.hasMetadata(h5,$,H)}static defineSession($,H,J){Reflect.defineMetadata(v5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,session:J})}static defineCSRF($,H,J){Reflect.defineMetadata(g5,J,$,H);let Q=this.getRouteMetadata($,H);this.defineRoute($,H,{...Q,csrf:J})}static getSessionMetadata($,H){return Reflect.getMetadata(v5,$,H)}static getCSRFMetadata($,H){return Reflect.getMetadata(g5,$,H)}static hasSessionMetadata($,H){return Reflect.hasMetadata(v5,$,H)}static hasCSRFMetadata($,H){return Reflect.hasMetadata(g5,$,H)}}function y5($){return(H)=>{m.defineWebSocket(H,{path:$})}}function u5(){return($,H)=>{m.defineWebSocketHandler($,H,{type:"connect",method:H})}}function m5($){return(H,J)=>{m.defineWebSocketHandler(H,J,{type:"message",method:J,schema:$})}}function d5(){return($,H)=>{m.defineWebSocketHandler($,H,{type:"disconnect",method:H})}}var EE={};L1(EE,{zodToGraphQLType:()=>$0,zodObjectToGraphQLType:()=>DY,zodObjectToGraphQLInput:()=>VY,isNullable:()=>X$,hasResolverMetadata:()=>BY,hasFieldMetadata:()=>wY,getResolverMetadata:()=>GY,getFieldsMetadata:()=>qY,getFieldMetadata:()=>UY,getDefaultValue:()=>F2,getArgumentsMetadata:()=>c4,Subscription:()=>XY,Resolver:()=>HY,Mutation:()=>QY,GraphQLSubscription:()=>XY,GraphQLSchemaBuilder:()=>l4,GraphQLQuery:()=>JY,GraphQLPlugin:()=>p4,GraphQLMutation:()=>QY,GraphQLCtx:()=>WY,GQLSubscription:()=>XY,GQLQuery:()=>JY,GQLMutation:()=>QY,GQLContext:()=>WY,Arg:()=>YY});module.exports=l1(EE);var jE={};L1(jE,{z:()=>R});module.exports=l1(jE);var dE={};L1(dE,{setupTestApp:()=>W7,mockDependency:()=>Y7,createTestClient:()=>v2,createTestApp:()=>h2,clearMocks:()=>G7,TestClient:()=>s$});module.exports=l1(dE);class s${hono;constructor($){this.hono=$.getHono()}async get($,H){return this.request("GET",$,H)}async post($,H){return this.request("POST",$,H)}async put($,H){return this.request("PUT",$,H)}async delete($,H){return this.request("DELETE",$,H)}async patch($,H){return this.request("PATCH",$,H)}async request($,H,J){let Q=this.buildUrl(H,J?.query),X={method:$,headers:this.buildHeaders(J)};if(J?.body!==void 0)X.body=J.body;else if(J?.json!==void 0)X.body=JSON.stringify(J.json);let Y=await this.hono.request(Q,X),W=await Y.text(),G;try{G=JSON.parse(W)}catch{G=W}return{status:Y.status,headers:Y.headers,body:G,text:W,json:async()=>JSON.parse(W),ok:Y.ok}}buildUrl($,H){if(!H||Object.keys(H).length===0)return $;let J=new URLSearchParams(H).toString();return`${$}?${J}`}buildHeaders($){let H={...$?.headers};if($?.json!==void 0&&!H["Content-Type"])H["Content-Type"]="application/json";return H}}var c5=($,H,J)=>{return(Q,X)=>{let Y=-1;return W(0);async function W(G){if(G<=Y)throw Error("next() called multiple times");Y=G;let q,U=!1,B;if($[G])B=$[G][0][0],Q.req.routeIndex=G;else B=G===$.length&&X||void 0;if(B)try{q=await B(Q,()=>W(G+1))}catch(w){if(w instanceof Error&&H)Q.error=w,q=await H(w,Q),U=!0;else throw w}else if(Q.finalized===!1&&J)q=await J(Q);if(q&&(Q.finalized===!1||U))Q.res=q;return Q}}};var EY=Symbol();var jY=async($,H=Object.create(null))=>{let{all:J=!1,dot:Q=!1}=H,Y=($ instanceof A2?$.raw.headers:$.headers).get("Content-Type");if(Y?.startsWith("multipart/form-data")||Y?.startsWith("application/x-www-form-urlencoded"))return OE($,{all:J,dot:Q});return{}};async function OE($,H){let J=await $.formData();if(J)return ZE(J,H);return{}}function ZE($,H){let J=Object.create(null);if($.forEach((Q,X)=>{if(!(H.all||X.endsWith("[]")))J[X]=Q;else LE(J,X,Q)}),H.dot)Object.entries(J).forEach(([Q,X])=>{if(Q.includes("."))ME(J,Q,X),delete J[Q]});return J}var LE=($,H,J)=>{if($[H]!==void 0)if(Array.isArray($[H]))$[H].push(J);else $[H]=[$[H],J];else if(!H.endsWith("[]"))$[H]=J;else $[H]=[J]},ME=($,H,J)=>{let Q=$,X=H.split(".");X.forEach((Y,W)=>{if(W===X.length-1)Q[Y]=J;else{if(!Q[Y]||typeof Q[Y]!=="object"||Array.isArray(Q[Y])||Q[Y]instanceof File)Q[Y]=Object.create(null);Q=Q[Y]}})};var p5=($)=>{let H=$.split("/");if(H[0]==="")H.shift();return H},OY=($)=>{let{groups:H,path:J}=SE($),Q=p5(J);return CE(Q,H)},SE=($)=>{let H=[];return $=$.replace(/\{[^}]+\}/g,(J,Q)=>{let X=`@${Q}`;return H.push([X,J]),X}),{groups:H,path:$}},CE=($,H)=>{for(let J=H.length-1;J>=0;J--){let[Q]=H[J];for(let X=$.length-1;X>=0;X--)if($[X].includes(Q)){$[X]=$[X].replace(Q,H[J][1]);break}}return $},R2={},ZY=($,H)=>{if($==="*")return"*";let J=$.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);if(J){let Q=`${$}#${H}`;if(!R2[Q])if(J[2])R2[Q]=H&&H[0]!==":"&&H[0]!=="*"?[Q,J[1],new RegExp(`^${J[2]}(?=/${H})`)]:[$,J[1],new RegExp(`^${J[2]}$`)];else R2[Q]=[$,J[1],!0];return R2[Q]}return null},o$=($,H)=>{try{return H($)}catch{return $.replace(/(?:%[0-9A-Fa-f]{2})+/g,(J)=>{try{return H(J)}catch{return J}})}},PE=($)=>o$($,decodeURI),n5=($)=>{let H=$.url,J=H.indexOf("/",H.indexOf(":")+4),Q=J;for(;Q<H.length;Q++){let X=H.charCodeAt(Q);if(X===37){let Y=H.indexOf("?",Q),W=H.slice(J,Y===-1?void 0:Y);return PE(W.includes("%25")?W.replace(/%25/g,"%2525"):W)}else if(X===63)break}return H.slice(J,Q)};var LY=($)=>{let H=n5($);return H.length>1&&H.at(-1)==="/"?H.slice(0,-1):H},W$=($,H,...J)=>{if(J.length)H=W$(H,...J);return`${$?.[0]==="/"?"":"/"}${$}${H==="/"?"":`${$?.at(-1)==="/"?"":"/"}${H?.[0]==="/"?H.slice(1):H}`}`},E2=($)=>{if($.charCodeAt($.length-1)!==63||!$.includes(":"))return null;let H=$.split("/"),J=[],Q="";return H.forEach((X)=>{if(X!==""&&!/\:/.test(X))Q+="/"+X;else if(/\:/.test(X))if(/\?/.test(X)){if(J.length===0&&Q==="")J.push("/");else J.push(Q);let Y=X.replace("?","");Q+="/"+Y,J.push(Q)}else Q+="/"+X}),J.filter((X,Y,W)=>W.indexOf(X)===Y)},l5=($)=>{if(!/[%+]/.test($))return $;if($.indexOf("+")!==-1)$=$.replace(/\+/g," ");return $.indexOf("%")!==-1?o$($,i4):$},MY=($,H,J)=>{let Q;if(!J&&H&&!/[%+]/.test(H)){let W=$.indexOf(`?${H}`,8);if(W===-1)W=$.indexOf(`&${H}`,8);while(W!==-1){let G=$.charCodeAt(W+H.length+1);if(G===61){let q=W+H.length+2,U=$.indexOf("&",q);return l5($.slice(q,U===-1?void 0:U))}else if(G==38||isNaN(G))return"";W=$.indexOf(`&${H}`,W+1)}if(Q=/[%+]/.test($),!Q)return}let X={};Q??=/[%+]/.test($);let Y=$.indexOf("?",8);while(Y!==-1){let W=$.indexOf("&",Y+1),G=$.indexOf("=",Y);if(G>W&&W!==-1)G=-1;let q=$.slice(Y+1,G===-1?W===-1?void 0:W:G);if(Q)q=l5(q);if(Y=W,q==="")continue;let U;if(G===-1)U="";else if(U=$.slice(G+1,W===-1?void 0:W),Q)U=l5(U);if(J){if(!(X[q]&&Array.isArray(X[q])))X[q]=[];X[q].push(U)}else X[q]??=U}return H?X[H]:X},SY=MY,CY=($,H)=>{return MY($,H,!0)},i4=decodeURIComponent;var PY=($)=>o$($,i4),A2=class{raw;#H;#$;routeIndex=0;path;bodyCache={};constructor($,H="/",J=[[]]){this.raw=$,this.path=H,this.#$=J,this.#H={}}param($){return $?this.#J($):this.#Y()}#J($){let H=this.#$[0][this.routeIndex][1][$],J=this.#X(H);return J&&/\%/.test(J)?PY(J):J}#Y(){let $={},H=Object.keys(this.#$[0][this.routeIndex][1]);for(let J of H){let Q=this.#X(this.#$[0][this.routeIndex][1][J]);if(Q!==void 0)$[J]=/\%/.test(Q)?PY(Q):Q}return $}#X($){return this.#$[1]?this.#$[1][$]:$}query($){return SY(this.url,$)}queries($){return CY(this.url,$)}header($){if($)return this.raw.headers.get($)??void 0;let H={};return this.raw.headers.forEach((J,Q)=>{H[Q]=J}),H}async parseBody($){return this.bodyCache.parsedBody??=await jY(this,$)}#Q=($)=>{let{bodyCache:H,raw:J}=this,Q=H[$];if(Q)return Q;let X=Object.keys(H)[0];if(X)return H[X].then((Y)=>{if(X==="json")Y=JSON.stringify(Y);return new Response(Y)[$]()});return H[$]=J[$]()};json(){return this.#Q("text").then(($)=>JSON.parse($))}text(){return this.#Q("text")}arrayBuffer(){return this.#Q("arrayBuffer")}blob(){return this.#Q("blob")}formData(){return this.#Q("formData")}addValidatedData($,H){this.#H[$]=H}valid($){return this.#H[$]}get url(){return this.raw.url}get method(){return this.raw.method}get[EY](){return this.#$}get matchedRoutes(){return this.#$[0].map(([[,$]])=>$)}get routePath(){return this.#$[0].map(([[,$]])=>$)[this.routeIndex].path}};var KY={Stringify:1,BeforeStream:2,Stream:3},KE=($,H)=>{let J=new String($);return J.isEscaped=!0,J.callbacks=H,J};var i5=async($,H,J,Q,X)=>{if(typeof $==="object"&&!($ instanceof String)){if(!($ instanceof Promise))$=$.toString();if($ instanceof Promise)$=await $}let Y=$.callbacks;if(!Y?.length)return Promise.resolve($);if(X)X[0]+=$;else X=[$];let W=Promise.all(Y.map((G)=>G({phase:H,buffer:X,context:Q}))).then((G)=>Promise.all(G.filter(Boolean).map((q)=>i5(q,H,!1,Q,X))).then(()=>X[0]));if(J)return KE(await W,Y);else return W};var IE="text/plain; charset=UTF-8",s5=($,H)=>{return{"Content-Type":$,...H}},IY=class{#H;#$;env={};#J;finalized=!1;error;#Y;#X;#Q;#B;#q;#U;#G;#w;#D;constructor($,H){if(this.#H=$,H)this.#X=H.executionCtx,this.env=H.env,this.#U=H.notFoundHandler,this.#D=H.path,this.#w=H.matchResult}get req(){return this.#$??=new A2(this.#H,this.#D,this.#w),this.#$}get event(){if(this.#X&&"respondWith"in this.#X)return this.#X;else throw Error("This context has no FetchEvent")}get executionCtx(){if(this.#X)return this.#X;else throw Error("This context has no ExecutionContext")}get res(){return this.#Q||=new Response(null,{headers:this.#G??=new Headers})}set res($){if(this.#Q&&$){$=new Response($.body,$);for(let[H,J]of this.#Q.headers.entries()){if(H==="content-type")continue;if(H==="set-cookie"){let Q=this.#Q.headers.getSetCookie();$.headers.delete("set-cookie");for(let X of Q)$.headers.append("set-cookie",X)}else $.headers.set(H,J)}}this.#Q=$,this.finalized=!0}render=(...$)=>{return this.#q??=(H)=>this.html(H),this.#q(...$)};setLayout=($)=>this.#B=$;getLayout=()=>this.#B;setRenderer=($)=>{this.#q=$};header=($,H,J)=>{if(this.finalized)this.#Q=new Response(this.#Q.body,this.#Q);let Q=this.#Q?this.#Q.headers:this.#G??=new Headers;if(H===void 0)Q.delete($);else if(J?.append)Q.append($,H);else Q.set($,H)};status=($)=>{this.#Y=$};set=($,H)=>{this.#J??=new Map,this.#J.set($,H)};get=($)=>{return this.#J?this.#J.get($):void 0};get var(){if(!this.#J)return{};return Object.fromEntries(this.#J)}#W($,H,J){let Q=this.#Q?new Headers(this.#Q.headers):this.#G??new Headers;if(typeof H==="object"&&"headers"in H){let Y=H.headers instanceof Headers?H.headers:new Headers(H.headers);for(let[W,G]of Y)if(W.toLowerCase()==="set-cookie")Q.append(W,G);else Q.set(W,G)}if(J)for(let[Y,W]of Object.entries(J))if(typeof W==="string")Q.set(Y,W);else{Q.delete(Y);for(let G of W)Q.append(Y,G)}let X=typeof H==="number"?H:H?.status??this.#Y;return new Response($,{status:X,headers:Q})}newResponse=(...$)=>this.#W(...$);body=($,H,J)=>this.#W($,H,J);text=($,H,J)=>{return!this.#G&&!this.#Y&&!H&&!J&&!this.finalized?new Response($):this.#W($,H,s5(IE,J))};json=($,H,J)=>{return this.#W(JSON.stringify($),H,s5("application/json",J))};html=($,H,J)=>{let Q=(X)=>this.#W(X,H,s5("text/html; charset=UTF-8",J));return typeof $==="object"?i5($,KY.Stringify,!1,{}).then(Q):Q($)};redirect=($,H)=>{let J=String($);return this.header("Location",!/[^\x00-\xFF]/.test(J)?J:encodeURI(J)),this.newResponse(null,H??302)};notFound=()=>{return this.#U??=()=>new Response,this.#U(this)}};var V1="ALL",TY="all",bY=["get","post","put","delete","options","patch"],j2="Can not add a route since the matcher is already built.",O2=class extends Error{};var fY="__COMPOSED_HANDLER";var TE=($)=>{return $.text("404 Not Found",404)},xY=($,H)=>{if("getResponse"in $){let J=$.getResponse();return H.newResponse(J.body,J)}return console.error($),H.text("Internal Server Error",500)},o5=class{get;post;put;delete;options;patch;all;on;use;router;getPath;_basePath="/";#H="/";routes=[];constructor($={}){[...bY,TY].forEach((X)=>{this[X]=(Y,...W)=>{if(typeof Y==="string")this.#H=Y;else this.#Y(X,this.#H,Y);return W.forEach((G)=>{this.#Y(X,this.#H,G)}),this}}),this.on=(X,Y,...W)=>{for(let G of[Y].flat()){this.#H=G;for(let q of[X].flat())W.map((U)=>{this.#Y(q.toUpperCase(),this.#H,U)})}return this},this.use=(X,...Y)=>{if(typeof X==="string")this.#H=X;else this.#H="*",Y.unshift(X);return Y.forEach((W)=>{this.#Y(V1,this.#H,W)}),this};let{strict:J,...Q}=$;Object.assign(this,Q),this.getPath=J??!0?$.getPath??n5:LY}#$(){let $=new o5({router:this.router,getPath:this.getPath});return $.errorHandler=this.errorHandler,$.#J=this.#J,$.routes=this.routes,$}#J=TE;errorHandler=xY;route($,H){let J=this.basePath($);return H.routes.map((Q)=>{let X;if(H.errorHandler===xY)X=Q.handler;else X=async(Y,W)=>(await c5([],H.errorHandler)(Y,()=>Q.handler(Y,W))).res,X[fY]=Q.handler;J.#Y(Q.method,Q.path,X)}),this}basePath($){let H=this.#$();return H._basePath=W$(this._basePath,$),H}onError=($)=>{return this.errorHandler=$,this};notFound=($)=>{return this.#J=$,this};mount($,H,J){let Q,X;if(J)if(typeof J==="function")X=J;else if(X=J.optionHandler,J.replaceRequest===!1)Q=(G)=>G;else Q=J.replaceRequest;let Y=X?(G)=>{let q=X(G);return Array.isArray(q)?q:[q]}:(G)=>{let q=void 0;try{q=G.executionCtx}catch{}return[G.env,q]};Q||=(()=>{let G=W$(this._basePath,$),q=G==="/"?0:G.length;return(U)=>{let B=new URL(U.url);return B.pathname=B.pathname.slice(q)||"/",new Request(B,U)}})();let W=async(G,q)=>{let U=await H(Q(G.req.raw),...Y(G));if(U)return U;await q()};return this.#Y(V1,W$($,"*"),W),this}#Y($,H,J){$=$.toUpperCase(),H=W$(this._basePath,H);let Q={basePath:this._basePath,path:H,method:$,handler:J};this.router.add($,H,[J,Q]),this.routes.push(Q)}#X($,H){if($ instanceof Error)return this.errorHandler($,H);throw $}#Q($,H,J,Q){if(Q==="HEAD")return(async()=>new Response(null,await this.#Q($,H,J,"GET")))();let X=this.getPath($,{env:J}),Y=this.router.match(Q,X),W=new IY($,{path:X,matchResult:Y,env:J,executionCtx:H,notFoundHandler:this.#J});if(Y[0].length===1){let q;try{q=Y[0][0][0][0](W,async()=>{W.res=await this.#J(W)})}catch(U){return this.#X(U,W)}return q instanceof Promise?q.then((U)=>U||(W.finalized?W.res:this.#J(W))).catch((U)=>this.#X(U,W)):q??this.#J(W)}let G=c5(Y[0],this.errorHandler,this.#J);return(async()=>{try{let q=await G(W);if(!q.finalized)throw Error("Context is not finalized. Did you forget to return a Response object or `await next()`?");return q.res}catch(q){return this.#X(q,W)}})()}fetch=($,...H)=>{return this.#Q($,H[1],H[0],$.method)};request=($,H,J,Q)=>{if($ instanceof Request)return this.fetch(H?new Request($,H):$,J,Q);return $=$.toString(),this.fetch(new Request(/^https?:\/\//.test($)?$:`http://localhost${W$("/",$)}`,H),J,Q)};fire=()=>{addEventListener("fetch",($)=>{$.respondWith(this.#Q($.request,$,void 0,$.request.method))})}};var Z2="[^/]+",s4=".*",o4="(?:|/.*)",G$=Symbol(),bE=new Set(".\\+*[^]$()");function fE($,H){if($.length===1)return H.length===1?$<H?-1:1:-1;if(H.length===1)return 1;if($===s4||$===o4)return 1;else if(H===s4||H===o4)return-1;if($===Z2)return 1;else if(H===Z2)return-1;return $.length===H.length?$<H?-1:1:H.length-$.length}var L2=class{#H;#$;#J=Object.create(null);insert($,H,J,Q,X){if($.length===0){if(this.#H!==void 0)throw G$;if(X)return;this.#H=H;return}let[Y,...W]=$,G=Y==="*"?W.length===0?["","",s4]:["","",Z2]:Y==="/*"?["","",o4]:Y.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/),q;if(G){let U=G[1],B=G[2]||Z2;if(U&&G[2]){if(B===".*")throw G$;if(B=B.replace(/^\((?!\?:)(?=[^)]+\)$)/,"(?:"),/\((?!\?:)/.test(B))throw G$}if(q=this.#J[B],!q){if(Object.keys(this.#J).some((w)=>w!==s4&&w!==o4))throw G$;if(X)return;if(q=this.#J[B]=new L2,U!=="")q.#$=Q.varIndex++}if(!X&&U!=="")J.push([U,q.#$])}else if(q=this.#J[Y],!q){if(Object.keys(this.#J).some((U)=>U.length>1&&U!==s4&&U!==o4))throw G$;if(X)return;q=this.#J[Y]=new L2}q.insert(W,H,J,Q,X)}buildRegExpStr(){let H=Object.keys(this.#J).sort(fE).map((J)=>{let Q=this.#J[J];return(typeof Q.#$==="number"?`(${J})@${Q.#$}`:bE.has(J)?`\\${J}`:J)+Q.buildRegExpStr()});if(typeof this.#H==="number")H.unshift(`#${this.#H}`);if(H.length===0)return"";if(H.length===1)return H[0];return"(?:"+H.join("|")+")"}};var kY=class{#H={varIndex:0};#$=new L2;insert($,H,J){let Q=[],X=[];for(let W=0;;){let G=!1;if($=$.replace(/\{[^}]+\}/g,(q)=>{let U=`@\\${W}`;return X[W]=[U,q],W++,G=!0,U}),!G)break}let Y=$.match(/(?::[^\/]+)|(?:\/\*$)|./g)||[];for(let W=X.length-1;W>=0;W--){let[G]=X[W];for(let q=Y.length-1;q>=0;q--)if(Y[q].indexOf(G)!==-1){Y[q]=Y[q].replace(G,X[W][1]);break}}return this.#$.insert(Y,H,Q,this.#H,J),Q}buildRegExp(){let $=this.#$.buildRegExpStr();if($==="")return[/^$/,[],[]];let H=0,J=[],Q=[];return $=$.replace(/#(\d+)|@(\d+)|\.\*\$/g,(X,Y,W)=>{if(Y!==void 0)return J[++H]=Number(Y),"$()";if(W!==void 0)return Q[Number(W)]=++H,"";return""}),[new RegExp(`^${$}`),J,Q]}};var hY=[],xE=[/^$/,[],Object.create(null)],vY=Object.create(null);function gY($){return vY[$]??=new RegExp($==="*"?"":`^${$.replace(/\/\*$|([.\\+*[^\]$()])/g,(H,J)=>J?`\\${J}`:"(?:|/.*)")}$`)}function kE(){vY=Object.create(null)}function hE($){let H=new kY,J=[];if($.length===0)return xE;let Q=$.map((U)=>[!/\*|\/:/.test(U[0]),...U]).sort(([U,B],[w,_])=>U?1:w?-1:B.length-_.length),X=Object.create(null);for(let U=0,B=-1,w=Q.length;U<w;U++){let[_,V,D]=Q[U];if(_)X[V]=[D.map(([E])=>[E,Object.create(null)]),hY];else B++;let A;try{A=H.insert(V,B,_)}catch(E){throw E===G$?new O2(V):E}if(_)continue;J[B]=D.map(([E,Z])=>{let M=Object.create(null);Z-=1;for(;Z>=0;Z--){let[L,b]=A[Z];M[L]=b}return[E,M]})}let[Y,W,G]=H.buildRegExp();for(let U=0,B=J.length;U<B;U++)for(let w=0,_=J[U].length;w<_;w++){let V=J[U][w]?.[1];if(!V)continue;let D=Object.keys(V);for(let A=0,E=D.length;A<E;A++)V[D[A]]=G[V[D[A]]]}let q=[];for(let U in W)q[U]=J[W[U]];return[Y,q,X]}function r$($,H){if(!$)return;for(let J of Object.keys($).sort((Q,X)=>X.length-Q.length))if(gY(J).test(H))return[...$[J]];return}var r5=class{name="RegExpRouter";#H;#$;constructor(){this.#H={[V1]:Object.create(null)},this.#$={[V1]:Object.create(null)}}add($,H,J){let Q=this.#H,X=this.#$;if(!Q||!X)throw Error(j2);if(!Q[$])[Q,X].forEach((G)=>{G[$]=Object.create(null),Object.keys(G[V1]).forEach((q)=>{G[$][q]=[...G[V1][q]]})});if(H==="/*")H="*";let Y=(H.match(/\/:/g)||[]).length;if(/\*$/.test(H)){let G=gY(H);if($===V1)Object.keys(Q).forEach((q)=>{Q[q][H]||=r$(Q[q],H)||r$(Q[V1],H)||[]});else Q[$][H]||=r$(Q[$],H)||r$(Q[V1],H)||[];Object.keys(Q).forEach((q)=>{if($===V1||$===q)Object.keys(Q[q]).forEach((U)=>{G.test(U)&&Q[q][U].push([J,Y])})}),Object.keys(X).forEach((q)=>{if($===V1||$===q)Object.keys(X[q]).forEach((U)=>G.test(U)&&X[q][U].push([J,Y]))});return}let W=E2(H)||[H];for(let G=0,q=W.length;G<q;G++){let U=W[G];Object.keys(X).forEach((B)=>{if($===V1||$===B)X[B][U]||=[...r$(Q[B],U)||r$(Q[V1],U)||[]],X[B][U].push([J,Y-q+G+1])})}}match($,H){kE();let J=this.#J();return this.match=(Q,X)=>{let Y=J[Q]||J[V1],W=Y[2][X];if(W)return W;let G=X.match(Y[0]);if(!G)return[[],hY];let q=G.indexOf("",1);return[Y[1][q],G]},this.match($,H)}#J(){let $=Object.create(null);return Object.keys(this.#$).concat(Object.keys(this.#H)).forEach((H)=>{$[H]||=this.#Y(H)}),this.#H=this.#$=void 0,$}#Y($){let H=[],J=$===V1;if([this.#H,this.#$].forEach((Q)=>{let X=Q[$]?Object.keys(Q[$]).map((Y)=>[Y,Q[$][Y]]):[];if(X.length!==0)J||=!0,H.push(...X);else if($!==V1)H.push(...Object.keys(Q[V1]).map((Y)=>[Y,Q[V1][Y]]))}),!J)return null;else return hE(H)}};var a5=class{name="SmartRouter";#H=[];#$=[];constructor($){this.#H=$.routers}add($,H,J){if(!this.#$)throw Error(j2);this.#$.push([$,H,J])}match($,H){if(!this.#$)throw Error("Fatal error");let J=this.#H,Q=this.#$,X=J.length,Y=0,W;for(;Y<X;Y++){let G=J[Y];try{for(let q=0,U=Q.length;q<U;q++)G.add(...Q[q]);W=G.match($,H)}catch(q){if(q instanceof O2)continue;throw q}this.match=G.match.bind(G),this.#H=[G],this.#$=void 0;break}if(Y===X)throw Error("Fatal error");return this.name=`SmartRouter + ${this.activeRouter.name}`,W}get activeRouter(){if(this.#$||this.#H.length!==1)throw Error("No active router has been determined yet.");return this.#H[0]}};var r4=Object.create(null),t5=class{#H;#$;#J;#Y=0;#X=r4;constructor($,H,J){if(this.#$=J||Object.create(null),this.#H=[],$&&H){let Q=Object.create(null);Q[$]={handler:H,possibleKeys:[],score:0},this.#H=[Q]}this.#J=[]}insert($,H,J){this.#Y=++this.#Y;let Q=this,X=OY(H),Y=[];for(let W=0,G=X.length;W<G;W++){let q=X[W],U=X[W+1],B=ZY(q,U),w=Array.isArray(B)?B[0]:q;if(w in Q.#$){if(Q=Q.#$[w],B)Y.push(B[1]);continue}if(Q.#$[w]=new t5,B)Q.#J.push(B),Y.push(B[1]);Q=Q.#$[w]}return Q.#H.push({[$]:{handler:J,possibleKeys:Y.filter((W,G,q)=>q.indexOf(W)===G),score:this.#Y}}),Q}#Q($,H,J,Q){let X=[];for(let Y=0,W=$.#H.length;Y<W;Y++){let G=$.#H[Y],q=G[H]||G[V1],U={};if(q!==void 0){if(q.params=Object.create(null),X.push(q),J!==r4||Q&&Q!==r4)for(let B=0,w=q.possibleKeys.length;B<w;B++){let _=q.possibleKeys[B],V=U[q.score];q.params[_]=Q?.[_]&&!V?Q[_]:J[_]??Q?.[_],U[q.score]=!0}}}return X}search($,H){let J=[];this.#X=r4;let X=[this],Y=p5(H),W=[];for(let G=0,q=Y.length;G<q;G++){let U=Y[G],B=G===q-1,w=[];for(let _=0,V=X.length;_<V;_++){let D=X[_],A=D.#$[U];if(A)if(A.#X=D.#X,B){if(A.#$["*"])J.push(...this.#Q(A.#$["*"],$,D.#X));J.push(...this.#Q(A,$,D.#X))}else w.push(A);for(let E=0,Z=D.#J.length;E<Z;E++){let M=D.#J[E],L=D.#X===r4?{}:{...D.#X};if(M==="*"){let d=D.#$["*"];if(d)J.push(...this.#Q(d,$,D.#X)),d.#X=L,w.push(d);continue}let[b,v,l]=M;if(!U&&!(l instanceof RegExp))continue;let i=D.#$[b],J1=Y.slice(G).join("/");if(l instanceof RegExp){let d=l.exec(J1);if(d){if(L[v]=d[0],J.push(...this.#Q(i,$,D.#X,L)),Object.keys(i.#$).length){i.#X=L;let W1=d[0].match(/\//)?.length??0;(W[W1]||=[]).push(i)}continue}}if(l===!0||l.test(U))if(L[v]=U,B){if(J.push(...this.#Q(i,$,L,D.#X)),i.#$["*"])J.push(...this.#Q(i.#$["*"],$,L,D.#X))}else i.#X=L,w.push(i)}}X=w.concat(W.shift()??[])}if(J.length>1)J.sort((G,q)=>{return G.score-q.score});return[J.map(({handler:G,params:q})=>[G,q])]}};var e5=class{name="TrieRouter";#H;constructor(){this.#H=new t5}add($,H,J){let Q=E2(H);if(Q){for(let X=0,Y=Q.length;X<Y;X++)this.#H.insert($,Q[X],J);return}this.#H.insert($,H,J)}match($,H){return this.#H.search($,H)}};var $7=class extends o5{constructor($={}){super($);this.router=$.router??new a5({routers:[new r5,new e5]})}};class a4{singletons=new Map;requestScoped=new WeakMap;providers=new Map;resolutionStack=new Set;providerNameCache=new WeakMap;stats={singletonHits:0,singletonMisses:0,requestHits:0,requestMisses:0,transientCreations:0};register($,H){this.providers.set($,H||{scope:"transient"})}async resolve($,H){let J=this.providers.get($)||{scope:H?.scope||"transient"},Q=H?.scope||J.scope||"transient";if(Q==="singleton"){if(this.singletons.has($))return this.stats.singletonHits++,this.singletons.get($);if(this.stats.singletonMisses++,this.resolutionStack.has($))throw Error(`Circular dependency detected: ${this.buildCircularDependencyMessage($)}`);this.resolutionStack.add($);try{let X=await this.create($,J,H?.context);return this.singletons.set($,X),X}finally{this.resolutionStack.delete($)}}if(Q==="request"&&H?.context){let X=this.requestScoped.get(H.context);if(X?.has($))return this.stats.requestHits++,X.get($);if(this.stats.requestMisses++,!X)X=new Map,this.requestScoped.set(H.context,X);if(this.resolutionStack.has($))throw Error(`Circular dependency detected: ${this.buildCircularDependencyMessage($)}`);this.resolutionStack.add($);try{let Y=await this.create($,J,H.context);return X.set($,Y),Y}finally{this.resolutionStack.delete($)}}if(this.stats.transientCreations++,this.resolutionStack.has($))throw Error(`Circular dependency detected: ${this.buildCircularDependencyMessage($)}`);this.resolutionStack.add($);try{return await this.create($,J,H?.context)}finally{this.resolutionStack.delete($)}}buildCircularDependencyMessage($){let H=Array.from(this.resolutionStack),J=this.getProviderName($);return H.map((X)=>this.getProviderName(X)).join(" -> ")+" -> "+J}async create($,H,J){if(H.factory)return H.factory();if(typeof $==="function")if($.prototype&&$.prototype.constructor===$){let Q=new $;return await this.resolveNestedDependencies(Q,J),Q}else{let Q=$();return Q instanceof Promise?await Q:Q}throw Error("Invalid provider type")}async resolveNestedDependencies($,H){}getProviderName($){if(typeof $==="string")return $;else if(typeof $==="symbol")return $.toString();let H=this.providerNameCache.get($);if(H)return H;let J;if(typeof $==="function")if($.name)J=$.name;else J=$.toString().substring(0,50);else J=String($);if(typeof $==="object"||typeof $==="function")this.providerNameCache.set($,J);return J}clear(){this.singletons.clear(),this.providers.clear(),this.resolutionStack.clear(),this.providerNameCache=new WeakMap,this.resetStats()}clearRequestScope($){this.requestScoped.delete($)}getStats(){let $=this.stats.singletonHits+this.stats.singletonMisses,H=$>0?this.stats.singletonHits/$*100:0,J=this.stats.requestHits+this.stats.requestMisses,Q=J>0?this.stats.requestHits/J*100:0;return{singletonHits:this.stats.singletonHits,singletonMisses:this.stats.singletonMisses,singletonHitRate:Math.round(H*100)/100,requestHits:this.stats.requestHits,requestMisses:this.stats.requestMisses,requestHitRate:Math.round(Q*100)/100,transientCreations:this.stats.transientCreations}}resetStats(){this.stats={singletonHits:0,singletonMisses:0,requestHits:0,requestMisses:0,transientCreations:0}}}var vE=/^[\w!#$%&'*.^`|~+-]+$/,gE=/^[ !#-:<-[\]-~]*$/,H7=($,H)=>{if(H&&$.indexOf(H)===-1)return{};let J=$.trim().split(";"),Q={};for(let X of J){X=X.trim();let Y=X.indexOf("=");if(Y===-1)continue;let W=X.substring(0,Y).trim();if(H&&H!==W||!vE.test(W))continue;let G=X.substring(Y+1).trim();if(G.startsWith('"')&&G.endsWith('"'))G=G.slice(1,-1);if(gE.test(G)){if(Q[W]=G.indexOf("%")!==-1?o$(G,i4):G,H)break}}return Q};var yE=($,H,J={})=>{let Q=`${$}=${H}`;if($.startsWith("__Secure-")&&!J.secure)throw Error("__Secure- Cookie must have Secure attributes");if($.startsWith("__Host-")){if(!J.secure)throw Error("__Host- Cookie must have Secure attributes");if(J.path!=="/")throw Error('__Host- Cookie must have Path attributes with "/"');if(J.domain)throw Error("__Host- Cookie must not have Domain attributes")}if(J&&typeof J.maxAge==="number"&&J.maxAge>=0){if(J.maxAge>34560000)throw Error("Cookies Max-Age SHOULD NOT be greater than 400 days (34560000 seconds) in duration.");Q+=`; Max-Age=${J.maxAge|0}`}if(J.domain&&J.prefix!=="host")Q+=`; Domain=${J.domain}`;if(J.path)Q+=`; Path=${J.path}`;if(J.expires){if(J.expires.getTime()-Date.now()>34560000000)throw Error("Cookies Expires SHOULD NOT be greater than 400 days (34560000 seconds) in the future.");Q+=`; Expires=${J.expires.toUTCString()}`}if(J.httpOnly)Q+="; HttpOnly";if(J.secure)Q+="; Secure";if(J.sameSite)Q+=`; SameSite=${J.sameSite.charAt(0).toUpperCase()+J.sameSite.slice(1)}`;if(J.priority)Q+=`; Priority=${J.priority.charAt(0).toUpperCase()+J.priority.slice(1)}`;if(J.partitioned){if(!J.secure)throw Error("Partitioned Cookie must have Secure attributes");Q+="; Partitioned"}return Q},M2=($,H,J)=>{return H=encodeURIComponent(H),yE($,H,J)};var S2=($,H,J)=>{let Q=$.req.raw.headers.get("Cookie");if(typeof H==="string"){if(!Q)return;let Y=H;if(J==="secure")Y="__Secure-"+H;else if(J==="host")Y="__Host-"+H;return H7(Q,Y)[Y]}if(!Q)return{};return H7(Q)};var uE=($,H,J)=>{let Q;if(J?.prefix==="secure")Q=M2("__Secure-"+$,H,{path:"/",...J,secure:!0});else if(J?.prefix==="host")Q=M2("__Host-"+$,H,{...J,path:"/",secure:!0,domain:void 0});else Q=M2($,H,{path:"/",...J});return Q},C2=($,H,J,Q)=>{let X=uE(H,J,Q);$.header("Set-Cookie",X,{append:!0})};class J7{static json($,H=200,J){return new P2($,H,J)}static html($,H=200){return new K2($,H)}static file($,H){return new T2($,H)}static stream($,H){return new b2($,H)}static redirect($,H=302){return new I2($,H)}}class P2{data;status;headers;constructor($,H=200,J={}){this.data=$;this.status=H;this.headers=J}toHonoResponse($){return $.json(this.data,this.status,this.headers)}}class K2{content;status;constructor($,H=200){this.content=$;this.status=H}toHonoResponse($){return $.html(this.content,this.status)}}class I2{url;status;constructor($,H=302){this.url=$;this.status=H}toHonoResponse($){return $.redirect(this.url,this.status)}}class T2{path;options;constructor($,H){this.path=$;this.options=H}async toHonoResponse($){try{let H=typeof Bun<"u"?Bun.file(this.path):await this.readFileNode(this.path),Q={"Content-Type":this.options?.contentType||this.guessContentType(this.path)};if(this.options?.download||this.options?.filename){let X=this.options?.filename||this.path.split("/").pop()||"download",Y=this.options?.download?"attachment":"inline";Q["Content-Disposition"]=`${Y}; filename="${X}"`}if(typeof Bun<"u"&&H instanceof Blob)return $.body(H,200,Q);else return $.body(H,200,Q)}catch(H){return $.json({error:"File not found",message:H instanceof Error?H.message:"Unknown error"},404)}}async readFileNode($){throw Error("File reading in Node.js requires fs module - use Bun runtime or implement adapter")}guessContentType($){let H=$.split(".").pop()?.toLowerCase();return{html:"text/html",css:"text/css",js:"application/javascript",json:"application/json",png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",svg:"image/svg+xml",pdf:"application/pdf",txt:"text/plain",xml:"application/xml"}[H||""]||"application/octet-stream"}}class b2{stream;options;constructor($,H){this.stream=$;this.options=H}toHonoResponse($){let H={"Content-Type":this.options?.contentType||"application/octet-stream",...this.options?.headers};return $.body(this.stream,200,H)}}class f2{static serialize($,H){if(H===null||H===void 0)return $.body(null,204);if(H instanceof J7)return H;if(H instanceof P2)return H.toHonoResponse($);if(H instanceof K2)return H.toHonoResponse($);if(H instanceof T2)return H.toHonoResponse($);if(H instanceof b2)return H.toHonoResponse($);if(H instanceof I2)return H.toHonoResponse($);if(H&&typeof H.toHonoResponse==="function")return H.toHonoResponse($);return $.json(H)}}class t4{static compile($){let H=this.compilePathRegex($.path),J=this.resolveParameterOrder($.parameters),Q=this.resolveDependencyOrder($.dependencies),X=this.calculateMaxArgumentIndex($.parameters,$.dependencies),Y=this.computeParameterFlags($.parameters);return{...$,pathRegex:H,parameterOrder:J,dependencyOrder:Q,maxArgumentIndex:X,...Y}}static compilePathRegex($){let H=$.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return H=H.replace(/\\\{([^}]+)\\\}/g,"(?<$1>[^/]+)"),H=H.replace(/:([a-zA-Z_][a-zA-Z0-9_]*)/g,"(?<$1>[^/]+)"),H=`^${H}$`,new RegExp(H)}static resolveParameterOrder($){if(!$||$.length===0)return[];return $.map((H)=>H.index).filter((H)=>H!==void 0).sort((H,J)=>H-J)}static resolveDependencyOrder($){if(!$||$.length===0)return[];return $.map((H)=>H.index).filter((H)=>H!==void 0).sort((H,J)=>H-J)}static calculateMaxArgumentIndex($,H){let J=-1;if($&&$.length>0){let Q=Math.max(...$.map((X)=>X.index));J=Math.max(J,Q)}if(H&&H.length>0){let Q=Math.max(...H.map((X)=>X.index));J=Math.max(J,Q)}return J}static computeParameterFlags($){if(!$||$.length===0)return{hasBody:!1,hasQuery:!1,hasParams:!1,hasHeaders:!1,hasCookies:!1,hasDependencies:!1};return{hasBody:$.some((H)=>H.type==="body"),hasQuery:$.some((H)=>H.type==="query"),hasParams:$.some((H)=>H.type==="param"),hasHeaders:$.some((H)=>H.type==="header"),hasCookies:$.some((H)=>H.type==="cookie"),hasDependencies:!1}}static compileAll($){return $.map((H)=>this.compile(H))}}i$();class $9{app;metadata;container;validator;errorHandler;compiledRoutes=new Map;constructor($,H,J,Q,X){this.app=$;this.metadata=H;this.container=J;this.validator=Q;this.errorHandler=X}compile(){let $=this.metadata.getRoutes(),H=t4.compileAll($);for(let J of H){let Q=`${J.target.name}:${J.propertyKey}`;this.compiledRoutes.set(Q,J);let X=this.createHandler(J),Y=this.normalizePath(J.path),W=J.method.toLowerCase();if(J.middleware&&J.middleware.length>0)this.app[W](Y,...J.middleware,X);else this.app[W](Y,X)}}normalizePath($){if(!$.startsWith("/"))$="/"+$;if($=$.replace(/\{([^}]+)\}/g,":$1"),$.length>1&&$.endsWith("/"))$=$.slice(0,-1);return $}createHandler($){return async(H)=>{try{H.set("routeMetadata",$);let J=$.cache,Q=null,X=null;if(J){let{CacheManager:B}=await Promise.resolve().then(() => (f4(),_5)),{parseTTL:w}=await Promise.resolve().then(() => q5);X=B;let _=H.req.param(),V=J.includeQuery?H.req.query():void 0;Q=B.generateKey($.method,$.path,_,V,J);let D=await B.get(Q,J.store);if(D!==null)return H.header("X-Cache","HIT"),this.serializeResponse(H,D);H.header("X-Cache","MISS")}let Y=await this.extractParameters(H,$.parameters),W=await this.resolveDependencies(H,$.dependencies),G=this.mergeArguments(Y,W,$.parameters,$.maxArgumentIndex),q;if($.handler)q=await $.handler(H,...G);else{let B=await this.container.resolve($.target,{scope:"transient",context:H});if(typeof B[$.propertyKey]!=="function")throw Error(`Method ${$.propertyKey} not found on controller ${$.target.name}`);q=await B[$.propertyKey](...G)}if(J&&Q&&X){if(!J.condition||J.condition(q)){let{parseTTL:B}=await Promise.resolve().then(() => q5),w=B(J.ttl);await X.set(Q,q,w,J.store)}}let U=$.cacheInvalidate;if(U&&Array.isArray(U)){if(!X){let{CacheManager:w}=await Promise.resolve().then(() => (f4(),_5));X=w}let B=H.req.param();for(let w of U){let _=w;if(B)for(let[V,D]of Object.entries(B))_=_.replace(`{${V}}`,String(D));await X.invalidate(_)}}return this.serializeResponse(H,q)}catch(J){return await this.handleError(H,J)}}}serializeResponse($,H){return f2.serialize($,H)}getRouteMetadataForContext($){return $.get("routeMetadata")||null}isAuthRequired($){if($.auth?.required)return!0;return $.parameters.some((H)=>H.type==="current-user")}async handleError($,H){return await this.errorHandler.handle(H,$)}async extractParameters($,H){let J=[];for(let Q of H){if(!Q)continue;let X;switch(Q.type){case"body":try{X=await $.req.json()}catch(U){X=null}break;case"query":if(Q.name)X=$.req.query(Q.name);else X=$.req.query();if(Q.schema&&X!==void 0)try{X=Q.schema.parse(X)}catch(U){throw new z2(`Invalid query parameter: ${U}`)}break;case"param":if(Q.name)X=$.req.param(Q.name);else X=$.req.param();break;case"header":if(Q.name)X=$.req.header(Q.name);else{let U={};$.req.raw.headers.forEach((B,w)=>{U[w]=B}),X=U}break;case"cookie":if(Q.name)X=S2($,Q.name);else{let U=$.req.header("cookie");if(U)X=Object.fromEntries(U.split(";").map((B)=>{let[w,..._]=B.trim().split("=");return[w,_.join("=")]}));else X={}}break;case"request":X=$.req;break;case"response":case"context":X=$;break;case"current-user":X=$.get("auth.user")||null;let Y=this.getRouteMetadataForContext($);if(Y&&this.isAuthRequired(Y)){if(!X){let U=$.get("auth.error")||"Authentication required",{AuthenticationException:B}=await Promise.resolve().then(() => (U$(),yY));throw new B(U)}}break;case"token":X=$.get("auth.token")||null;break;case"oauth-user":X=$.get("oauth.user")||null;break;case"oauth-token":X=$.get("oauth.token")||null;break;case"current-session":X=$.get("session")||null;break;case"session-data":let W=$.get("session");if(W&&Q.metadata?.key)X=W.data[Q.metadata.key];else if(W)X=W.data;else X=null;break;case"csrf-token":X=$.get("csrf.token")||null;break;case"filtered-resource":X=$.get("filtered.resource")||null;break;case"filtered-attributes":X=$.get("filtered.attributes")||[];break;case"request-id":let{getRequestId:G}=await Promise.resolve().then(() => K8);X=G($);break;case"abort-signal":let{getAbortSignal:q}=await Promise.resolve().then(() => K8);X=q($);break;default:X=void 0}if(Q.schema)try{X=await this.validator.validate(X,Q.schema)}catch(Y){throw Y}J[Q.index]=X}return J}mergeArguments($,H,J,Q){let Y=J.filter((U)=>U!==void 0&&U.index!==void 0).map((U)=>U.index),W=Y.length>0?Math.max(...Y):-1,G=Q!==void 0&&Q>=0?Q:Math.max(W,$.length-1,H.length-1,0);if(!Number.isFinite(G)||G<0)G=0;let q=Array(G+1);for(let U=0;U<=G;U++)if($[U]!==void 0)q[U]=$[U];else if(H[U]!==void 0)q[U]=H[U];return q}async resolveDependencies($,H){let J=[];for(let Q of H){if(!Q)continue;try{let X=await this.container.resolve(Q.provider,{scope:Q.scope,context:$});J[Q.index]=X}catch(X){throw Error(`Failed to resolve dependency at index ${Q.index}: ${X instanceof Error?X.message:"Unknown error"}`)}}return J}}i$();class H9{customHandler;isDevelopment;constructor($){this.customHandler=$,this.isDevelopment=!0}setCustomHandler($){this.customHandler=$}async handle($,H){if(console.log("ErrorHandler.handle called with:",$.constructor.name,$.message),this.customHandler)try{return await this.customHandler($,H)}catch(J){console.error("Custom error handler failed:",J)}if($ instanceof h0)return console.log("Handling as ValidationException"),this.handleValidationException($,H);if($ instanceof x1)return console.log("Handling as HTTPException"),this.handleHTTPException($,H);return console.log("Handling as generic error"),this.handleGenericError($,H)}handleValidationException($,H){let J=$.toJSON();if(this.isDevelopment)console.error("Validation Error:",{path:H.req.path,method:H.req.method,details:J.details});return H.json(J,$.statusCode)}handleHTTPException($,H){let J=$.toJSON();if($.statusCode>=500)console.error("HTTP Exception:",{name:$.name,statusCode:$.statusCode,message:$.message,path:H.req.path,method:H.req.method,...this.isDevelopment&&$.stack?{stack:$.stack}:{}});else if(this.isDevelopment)console.warn("HTTP Exception:",{name:$.name,statusCode:$.statusCode,message:$.message,path:H.req.path,method:H.req.method});return H.json(J,$.statusCode)}handleGenericError($,H){console.error("Internal Server Error:",{name:$.name,message:$.message,path:H.req.path,method:H.req.method,stack:$.stack});let J={error:"Internal Server Error",statusCode:500};if(this.isDevelopment){if(J.message=$.message,J.name=$.name,$.stack)J.stack=$.stack.split(`
|
|
150
|
+
`).map((Q)=>Q.trim())}else J.message="An unexpected error occurred";return H.json(J,500)}isDevelopmentMode(){return this.isDevelopment}setDevelopmentMode($){this.isDevelopment=$}}class J9{plugins=new Map;installed=new Set;register($){if(this.plugins.has($.name))throw Error(`Plugin "${$.name}" is already registered`);this.plugins.set($.name,$)}async install($){let H=this.resolveInstallOrder();for(let J of H)await this.plugins.get(J).install($),this.installed.add(J)}isInstalled($){return this.installed.has($)}getPlugin($){return this.plugins.get($)}getPluginNames(){return Array.from(this.plugins.keys())}resolveInstallOrder(){let $=new Set,H=new Set,J=[],Q=(X,Y=[])=>{if(H.has(X)){let G=[...Y,X].join(" -> ");throw Error(`Circular dependency detected in plugins: ${G}`)}if($.has(X))return;H.add(X);let W=this.plugins.get(X);if(!W)throw Error(`Plugin "${X}" is not registered`);if(W.dependencies)for(let G of W.dependencies){if(!this.plugins.has(G))throw Error(`Plugin "${X}" depends on "${G}" which is not registered`);Q(G,[...Y,X])}H.delete(X),$.add(X),J.push(X)};for(let X of this.plugins.keys())Q(X);return J}}class B${hono;metadata;container;validator;errorHandler;compiler;pluginManager;config;compiled=!1;globalMiddleware=[];groupPrefix="";constructor($){if(this.config={adapter:"hono",title:"Veloce-TS API",version:"1.0.0",docs:!0,...$},this.hono=new $7,this.metadata=new m,this.container=new a4,this.validator=new Y$,this.errorHandler=new H9,this.pluginManager=new J9,this.compiler=new $9(this.hono,this.metadata,this.container,this.validator,this.errorHandler),this.config.cors)if(this.config.cors===!0)this.useCors();else this.useCors(this.config.cors)}include($){let H=m.getControllerMetadata($);if(H)this.metadata.registerController($,H);let J=m.getRouteMethods($);for(let Q of J){let X=m.getRouteMetadata($.prototype,Q),Y=m.getParameterMetadata($.prototype,Q),W=m.getDependencyMetadata($.prototype,Q);if(X&&X.method&&X.path!==void 0){let G=H?.prefix||"",q=this.normalizePath(G,X.path);this.metadata.registerRoute({target:$,propertyKey:Q,method:X.method,path:q,middleware:[...H?.middleware||[],...X.middleware||[]],parameters:Y||X.parameters||[],dependencies:W||X.dependencies||[],responses:X.responses||[],docs:X.docs})}}}get($,H){this.registerFunctionalRoute("GET",$,H)}post($,H){this.registerFunctionalRoute("POST",$,H)}put($,H){this.registerFunctionalRoute("PUT",$,H)}delete($,H){this.registerFunctionalRoute("DELETE",$,H)}patch($,H){this.registerFunctionalRoute("PATCH",$,H)}route($){return new dY(this,$)}group($,H){let J=this.groupPrefix;this.groupPrefix=this.normalizePath(this.groupPrefix,$),H(),this.groupPrefix=J}registerFunctionalRoute($,H,J){let Q=this.normalizePath(this.groupPrefix,H),X={target:mY,propertyKey:`${$.toLowerCase()}_${Q}`,method:$,path:Q,middleware:J.middleware||[],parameters:this.extractParametersFromSchema(J.schema),dependencies:[],responses:J.responses||[],docs:J.docs,handler:J.handler};this.metadata.registerRoute(X)}extractParametersFromSchema($){let H=[],J=0;if($?.body)H.push({index:J++,type:"body",schema:$.body,required:!0});if($?.query)H.push({index:J++,type:"query",schema:$.query,required:!1});if($?.params)H.push({index:J++,type:"param",schema:$.params,required:!0});if($?.headers)H.push({index:J++,type:"header",schema:$.headers,required:!1});return H}use($){this.globalMiddleware.push($),this.hono.use("*",$)}useCors($){let H=z4($);this.use(H)}useRateLimit($){let H=N4($);this.use(H)}useCompression($){let H=A4($);this.use(H)}usePlugin($){this.pluginManager.register($)}getPluginManager(){return this.pluginManager}onError($){this.errorHandler.setCustomHandler($)}getErrorHandler(){return this.errorHandler}normalizePath(...$){let H=$.filter((J)=>J!=="").join("/").replace(/\/+/g,"/").replace(/\/$/,"");return H.startsWith("/")?H:`/${H}`}getHono(){return this.hono}getMetadata(){return this.metadata}getContainer(){return this.container}getCompiler(){return this.compiler}getConfig(){return this.config}isCompiled(){return this.compiled}markCompiled(){this.compiled=!0}async compile(){if(this.compiled){console.warn("Routes have already been compiled. Skipping compilation.");return}await this.pluginManager.install(this),this.compiler.compile(),this.compiled=!0}serverInstance=null;async listen($,H){if(!this.compiled)await this.compile();let J=this.createAdapter();return this.serverInstance=J.listen($,H),this.setupGracefulShutdown(),this.serverInstance}setupGracefulShutdown(){if(typeof process>"u")return;let $=async(H)=>{let J=I0().child({component:"app"});if(J.info(`Received ${H}, starting graceful shutdown...`),this.serverInstance&&typeof this.serverInstance.close==="function")try{await Promise.resolve(this.serverInstance.close()),J.info("Server closed gracefully")}catch(Q){J.error("Error during shutdown",Q)}process.exit(0)};process.on("SIGTERM",()=>$("SIGTERM")),process.on("SIGINT",()=>$("SIGINT"))}async shutdown(){if(this.serverInstance&&typeof this.serverInstance.close==="function")await Promise.resolve(this.serverInstance.close()),this.serverInstance=null}createAdapter(){let $=this.config.adapter||"hono";switch($){case"hono":{let{HonoAdapter:H}=l1(X7);return new H(this.hono)}case"express":{let{ExpressAdapter:H}=l1(uY);return new H(this)}case"native":{let{HonoAdapter:H}=l1(X7);return new H(this.hono)}default:throw Error(`Unknown adapter type: ${$}. Supported adapters: 'hono', 'express', 'native'`)}}}class mY{}class dY{app;path;constructor($,H){this.app=$;this.path=H}get($){return this.app.get(this.path,$),this}post($){return this.app.post(this.path,$),this}put($){return this.app.put(this.path,$),this}delete($){return this.app.delete(this.path,$),this}patch($){return this.app.patch(this.path,$),this}}function h2($){let H={docs:!1,cors:!1,...$};return new B$(H)}function Y7($,H,J,Q){let X=$.getContainer(),Y=typeof J==="function"?J:()=>J;X.register(H,{scope:Q?.scope||"singleton",factory:Y})}function v2($){return new s$($)}async function W7($,H){let J=h2(H);await $(J),await J.compile();let Q=v2(J);return{app:J,client:Q}}function G7($){$.getContainer().clear()}var fC={};L1(fC,{zodToJsonSchema:()=>V2,zodToGraphQLType:()=>$0,zodObjectToGraphQLType:()=>DY,zodObjectToGraphQLInput:()=>VY,z:()=>R,withRepositoryMixin:()=>RC,transactionMiddleware:()=>J3,setupTestApp:()=>W7,setSessionData:()=>HB,setRequestMetadata:()=>Z3,setRequestContext:()=>P8,setGlobalTransactionManager:()=>m1,setCache:()=>B5,requestLoggingMiddleware:()=>rA,removeSessionData:()=>JB,parseTTL:()=>r0,mockDependency:()=>Y7,isSessionAuthenticated:()=>eU,isOAuthAuthenticated:()=>cU,isNullable:()=>X$,isAuthenticated:()=>BC,invalidateCache:()=>D5,initializeRequestContext:()=>R4,initializeLogger:()=>oA,hasResolverMetadata:()=>BY,hasFieldMetadata:()=>wY,globalTransactionEventManager:()=>N$,globalRepositoryRegistry:()=>EC,getUserRoles:()=>a7,getUserPermissions:()=>xU,getTransactionInterceptor:()=>DB,getToken:()=>s7,getSessionUserId:()=>$B,getSessionManager:()=>q4,getSessionData:()=>tU,getResolverMetadata:()=>GY,getRequestMetadata:()=>L3,getRequestId:()=>E3,getRequestDuration:()=>E4,getRequestContext:()=>N0,getRBACManager:()=>fU,getOAuthUser:()=>mU,getOAuthToken:()=>dU,getOAuthProvider:()=>lU,getLogger:()=>I0,getGlobalTransactionManager:()=>M0,getFieldsMetadata:()=>qY,getFieldMetadata:()=>UY,getDefaultValue:()=>F2,getCurrentUser:()=>u0,getCurrentSession:()=>y1,getCache:()=>U5,getCSRFProtection:()=>aU,getAuthError:()=>wC,getArgumentsMetadata:()=>c4,getAbortSignal:()=>j3,generateRequestId:()=>C8,errorLoggingMiddleware:()=>aA,deleteCache:()=>w5,createTypeORMPlugin:()=>EB,createTransactionalProxy:()=>OC,createTransactionPlugin:()=>bC,createTestClient:()=>v2,createTestApp:()=>h2,createSimpleRequestIdMiddleware:()=>G5,createSessionMiddleware:()=>rU,createRequestContextMiddleware:()=>W5,createRedisCacheStore:()=>OB,createRateLimitMiddleware:()=>N4,createRBACMiddleware:()=>r7,createPrismaPlugin:()=>RB,createLogger:()=>Y5,createDefaultRBAC:()=>n7,createCorsMiddleware:()=>z4,createCompressionMiddleware:()=>A4,createChildLogger:()=>o0,createCacheMiddleware:()=>F5,createCacheInvalidationMiddleware:()=>z5,createAuthMiddleware:()=>i7,clearMocks:()=>G7,clearCache:()=>V5,cleanupRequestContext:()=>j4,checkUserRole:()=>zC,checkUserPermission:()=>NC,abortRequest:()=>O3,ZodToJsonSchemaConverter:()=>O0,WebSocketPlugin:()=>p$,WebSocketManager:()=>l$,WebSocketConnection:()=>c$,WebSocket:()=>y5,VeloceTS:()=>B$,Veloce:()=>B$,ValidationException:()=>h0,ValidationEngine:()=>Y$,UseMiddleware:()=>aE,UnauthorizedException:()=>FY,TypeORMTransactionManager:()=>R9,TypeORMRepository:()=>L0,TypeORMPlugin:()=>j8,TypeORMEntity:()=>jB,TransactionalWithPropagation:()=>z$,Transactional:()=>UB,TransactionTemplate:()=>NB,TransactionService:()=>zB,TransactionPropagationManager:()=>_B,TransactionPropagation:()=>VB,TransactionPlugin:()=>X3,TransactionMetricsListener:()=>R8,TransactionLoggingListener:()=>A8,TransactionInterceptor:()=>d0,TransactionEventType:()=>FB,TransactionEventManager:()=>Q3,TokenRevokedException:()=>Q7,TokenPayloadSchema:()=>HC,TokenExpiredException:()=>e4,Token:()=>UC,TestClient:()=>s$,Supports:()=>MC,SuperAdminOnly:()=>_C,Subscription:()=>XY,StreamResponse:()=>b2,SessionManager:()=>t7,SessionGuard:()=>e7,SessionDataSchema:()=>pU,Session:()=>nU,RouterCompiler:()=>$9,Roles:()=>TU,RoleSchema:()=>XC,RoleAssignmentSchema:()=>YC,ResponseSerializer:()=>f2,Response:()=>J7,Resolver:()=>HY,RequiresNew:()=>LC,Required:()=>ZC,RequireRole:()=>o7,RequirePermission:()=>DC,RequireCSRF:()=>oU,RequestId:()=>oY,RepositoryService:()=>QB,RepositoryRegistry:()=>N9,RepositoryFactory:()=>_$,Repository:()=>qB,RefreshRequestSchema:()=>QC,RedisCacheStore:()=>Z8,RedirectResponse:()=>I2,RBACPlugin:()=>kU,RBACManager:()=>W4,RBACGuard:()=>z9,QueryBuilderFactory:()=>XB,QueryBuilder:()=>z8,Query:()=>lY,Put:()=>nE,PrismaZodSchemaGenerator:()=>B4,PrismaTransactionManager:()=>A9,PrismaRepository:()=>Z0,PrismaPlugin:()=>E8,Post:()=>pE,PluginManager:()=>J9,Permissions:()=>bU,PermissionMatcher:()=>G4,PermissionCheckSchema:()=>WC,Patch:()=>sE,Param:()=>pY,PaginationTransformer:()=>WB,PaginationHelper:()=>U4,PaginationBuilder:()=>YB,Paginated:()=>jC,OpenAPIPlugin:()=>_2,OpenAPIGenerator:()=>J$,OnTransactionRollback:()=>TC,OnTransactionCommit:()=>IC,OnTransactionBegin:()=>KC,OnMessage:()=>m5,OnDisconnect:()=>d5,OnConnect:()=>u5,OAuthUserSchema:()=>vU,OAuthUser:()=>yU,OAuthToken:()=>uU,OAuth:()=>gU,NotSupported:()=>SC,NotFoundException:()=>_Y,Never:()=>PC,Mutation:()=>QY,MinimumRole:()=>FC,Migration:()=>Y3,MetadataRegistry:()=>m,MetadataCompiler:()=>t4,MemoryCacheStore:()=>b4,Mandatory:()=>CC,LoginRequestSchema:()=>JC,JWTProvider:()=>F8,JSONResponse:()=>P2,InvalidTokenException:()=>q$,InMemoryUserProvider:()=>IU,InMemoryTransactionManager:()=>F$,HonoAdapter:()=>x2,HealthCheckers:()=>S5,HealthCheckPlugin:()=>N2,Header:()=>nY,HTTPException:()=>x1,HTMLResponse:()=>K2,GraphQLSubscription:()=>XY,GraphQLSchemaBuilder:()=>l4,GraphQLQuery:()=>JY,GraphQLPlugin:()=>p4,GraphQLMutation:()=>QY,GraphQLCtx:()=>WY,Get:()=>lE,GenericRepository:()=>AC,GQLSubscription:()=>XY,GQLQuery:()=>JY,GQLMutation:()=>QY,GQLContext:()=>WY,ForbiddenException:()=>zY,FileResponse:()=>T2,FastAPITS:()=>B$,ExpressAdapter:()=>k2,ErrorHandler:()=>H9,Entity:()=>BB,DrizzleZodSchemaConverter:()=>O8,DrizzleTransactionManager:()=>E9,DrizzleRepository:()=>u1,DrizzlePlugin:()=>W3,Depends:()=>rE,Delete:()=>iE,DefaultQueryOperators:()=>$3,DIContainer:()=>a4,CursorPaginationHelper:()=>H3,CurrentUser:()=>qC,CurrentSession:()=>iU,Ctx:()=>sY,Cookie:()=>iY,Controller:()=>cE,Column:()=>wB,CacheManager:()=>f1,CacheInvalidate:()=>tY,Cache:()=>aY,CSRFToken:()=>sU,Body:()=>cY,BaseTransactionManager:()=>Q0,BaseRepository:()=>m0,BadRequestException:()=>z2,AuthorizationException:()=>S1,AuthenticationException:()=>Z1,AuthService:()=>F9,AuthPlugin:()=>hU,Auth:()=>GC,Arg:()=>YY,ApiResponse:()=>eE,ApiDoc:()=>tE,All:()=>oE,AdminOnly:()=>VC,AbortSignal:()=>rY});module.exports=l1(fC);var oy=F0(Q$());function cE($="",H){return(J)=>{let Q=$.trim();if(Q&&!Q.startsWith("/"))Q="/"+Q;if(Q.endsWith("/"))Q=Q.slice(0,-1);m.defineController(J,{prefix:Q,middleware:H?.middleware||[]})}}function a$($){return(H="")=>{return(J,Q)=>{let X=H.trim();if(X&&!X.startsWith("/"))X="/"+X;let Y=Reflect.getMetadata("route:middleware",J,Q)||[];m.defineRoute(J,Q,{method:$,path:X,middleware:Y,parameters:[],dependencies:[],responses:[]})}}}var lE=a$("GET"),pE=a$("POST"),nE=a$("PUT"),iE=a$("DELETE"),sE=a$("PATCH"),oE=a$("ALL");function cY($){return(H,J,Q)=>{if(!J)return;let X={index:Q,type:"body",schema:$,required:!0};m.defineParameter(H,J,Q,X)}}function lY($){return(H,J,Q)=>{if(!J)return;let X={index:Q,type:"query",required:!1};if(typeof $==="string")X.name=$;else if($)X.schema=$;m.defineParameter(H,J,Q,X)}}function pY($){return(H,J,Q)=>{if(!J)return;let X={index:Q,type:"param",name:$,required:!0};m.defineParameter(H,J,Q,X)}}function nY($){return(H,J,Q)=>{if(!J)return;let X={index:Q,type:"header",name:$,required:!1};m.defineParameter(H,J,Q,X)}}function iY($){return(H,J,Q)=>{if(!J)return;let X={index:Q,type:"cookie",name:$,required:!1};m.defineParameter(H,J,Q,X)}}function sY(){return($,H,J)=>{if(!H)return;let Q={index:J,type:"context",required:!0};m.defineParameter($,H,J,Q)}}function oY(){return($,H,J)=>{if(!H)return;let Q={index:J,type:"request-id",required:!1};m.defineParameter($,H,J,Q)}}function rY(){return($,H,J)=>{if(!H)return;let Q={index:J,type:"abort-signal",required:!1};m.defineParameter($,H,J,Q)}}function rE($,H="request"){return(J,Q,X)=>{if(Q===void 0)throw Error("@Depends decorator can only be used on method parameters, not constructor parameters");m.defineDependency(J,Q,X,{index:X,provider:$,scope:H})}}function aE(...$){return(H,J)=>{let Q=Reflect.getMetadata("route:middleware",H,J)||[];Reflect.defineMetadata("route:middleware",[...Q,...$],H,J)}}function tE($){return(H,J)=>{let Q=m.getRouteMetadata(H,J);m.defineRoute(H,J,{...Q,docs:{...Q?.docs,...$}})}}function eE($){return(H,J)=>{let Q=m.getRouteMetadata(H,J),X=Q?.responses||[],Y=X.findIndex((G)=>G.statusCode===$.statusCode),W;if(Y>=0)W=[...X],W[Y]=$;else W=[...X,$];m.defineRoute(H,J,{...Q,responses:W})}}function aY($){return(H,J)=>{Reflect.defineMetadata("cache:options",$,H,J);let Q=m.getRouteMetadata(H,J);if(Q)m.defineRoute(H,J,{...Q,cache:$})}}function tY($){return(H,J)=>{let Q=Array.isArray($)?$:[$];Reflect.defineMetadata("cache:invalidate",Q,H,J);let X=m.getRouteMetadata(H,J);if(X)m.defineRoute(H,J,{...X,cacheInvalidate:Q})}}i$();U$();var y0=F0(KU());class F8{config;blacklistedTokens=new Set;constructor($){this.config=$;if(!$.secret)throw Error("JWT secret is required")}generateTokens($){let H=Math.floor(Date.now()/1000),J=this.parseExpiration(this.config.expiresIn||"1h"),Q={sub:$.sub,...$,iat:H,exp:H+J,iss:this.config.issuer,aud:this.config.audience},X=y0.sign(Q,this.config.secret,{algorithm:this.config.algorithm||"HS256"}),Y={sub:$.sub,type:"refresh",iat:H,exp:H+this.parseExpiration(this.config.refreshExpiresIn||"7d"),iss:this.config.issuer,aud:this.config.audience},W=y0.sign(Y,this.config.refreshSecret||this.config.secret,{algorithm:this.config.algorithm||"HS256"});return{accessToken:X,refreshToken:W,expiresIn:J}}verifyAccessToken($){if(this.isBlacklisted($))throw Error("Token has been revoked");try{return y0.verify($,this.config.secret,{algorithms:[this.config.algorithm||"HS256"],issuer:this.config.issuer,audience:this.config.audience})}catch(H){if(H instanceof Error)throw Error(`Invalid token: ${H.message}`);throw Error("Invalid token")}}verifyRefreshToken($){if(this.isBlacklisted($))throw Error("Refresh token has been revoked");try{let H=y0.verify($,this.config.refreshSecret||this.config.secret,{algorithms:[this.config.algorithm||"HS256"],issuer:this.config.issuer,audience:this.config.audience});if(H.type!=="refresh")throw Error("Invalid refresh token type");return H}catch(H){if(H instanceof Error)throw Error(`Invalid refresh token: ${H.message}`);throw Error("Invalid refresh token")}}refreshAccessToken($){let H=this.verifyRefreshToken($);return this.blacklistToken($),this.generateTokens({sub:H.sub,...Object.fromEntries(Object.entries(H).filter(([J])=>!["iat","exp","iss","aud","type"].includes(J)))})}decodeToken($){try{return y0.decode($)}catch{return null}}blacklistToken($){this.blacklistedTokens.add($)}isBlacklisted($){return this.blacklistedTokens.has($)}cleanupBlacklist(){let $=Math.floor(Date.now()/1000);for(let H of this.blacklistedTokens){let J=this.decodeToken(H);if(J&&J.exp&&J.exp<$)this.blacklistedTokens.delete(H)}}parseExpiration($){if(typeof $==="number")return $;let H={s:1,m:60,h:3600,d:86400,w:604800},J=$.match(/^(\d+)([smhdw])$/);if(!J)throw Error(`Invalid expiration format: ${$}`);let[,Q,X]=J;return parseInt(Q)*H[X]}}var HC=R.object({sub:R.string(),iat:R.number().optional(),exp:R.number().optional(),iss:R.string().optional(),aud:R.string().optional()}).passthrough(),JC=R.object({username:R.string().min(1),password:R.string().min(1)}),QC=R.object({refreshToken:R.string().min(1)});U$();class F9{config;userProvider;jwtProvider;constructor($,H){this.config=$;this.userProvider=H;this.jwtProvider=new F8($)}async login($,H){let J=await this.userProvider.findByCredentials($,H);if(!J)throw new Z1("Invalid credentials");let Q=this.jwtProvider.generateTokens({sub:J.id,username:J.username,email:J.email,roles:J.roles||[],permissions:J.permissions||[]});return{user:J,tokens:Q}}async refresh($){try{return this.jwtProvider.refreshAccessToken($)}catch(H){throw new q$(H instanceof Error?H.message:"Invalid refresh token")}}async logout($,H){if(this.jwtProvider.blacklistToken($),H)this.jwtProvider.blacklistToken(H)}async verifyToken($){try{let H=this.jwtProvider.verifyAccessToken($),J=await this.userProvider.findById(H.sub);if(!J)throw new Z1("User not found");return J}catch(H){if(H instanceof Error){if(H.message.includes("expired"))throw new e4;throw new q$(H.message)}throw new q$("Token verification failed")}}getUserFromToken($){return this.jwtProvider.verifyAccessToken($)}hasRoles($,H){let J=$.roles||[];return H.every((Q)=>J.includes(Q))}hasPermissions($,H){let J=$.permissions||[];return H.every((Q)=>J.includes(Q))}async register($){let H=await this.userProvider.hashPassword($.password),J={id:crypto.randomUUID(),username:$.username,email:$.email,roles:$.roles||["user"]},Q=this.jwtProvider.generateTokens({sub:J.id,username:J.username,email:J.email,roles:J.roles});return{user:J,tokens:Q}}cleanup(){this.jwtProvider.cleanupBlacklist()}getJWTProvider(){return this.jwtProvider}}class IU{users=new Map;async findByCredentials($,H){for(let[J,Q]of this.users)if(Q.username===$){if(await this.verifyPassword(H,Q.passwordHash)){let{passwordHash:Y,...W}=Q;return W}}return null}async findById($){let H=this.users.get($);if(H){let{passwordHash:J,...Q}=H;return Q}return null}async hashPassword($){return Buffer.from($).toString("base64")}async verifyPassword($,H){return await this.hashPassword($)===H}async createUser($){let H=crypto.randomUUID(),J=await this.hashPassword($.password),Q={id:H,username:$.username,email:$.email,roles:$.roles||["user"],passwordHash:J};this.users.set(H,Q);let{passwordHash:X,...Y}=Q;return Y}}class W4{roles=new Map;hierarchy=new Map;compiledPermissions=new Map;defineRole($){if(this.roles.set($.name,$),$.inherits&&$.inherits.length>0)this.hierarchy.set($.name,$.inherits);this.compiledPermissions.clear()}defineRoles($){for(let H of $)this.defineRole(H)}getRolePermissions($){if(this.compiledPermissions.has($))return Array.from(this.compiledPermissions.get($));let H=new Set;return this.collectPermissions($,H,new Set),this.compiledPermissions.set($,H),Array.from(H)}roleHasPermission($,H){return this.getRolePermissions($).includes(H)}userHasPermission($,H){for(let J of $)if(this.roleHasPermission(J,H))return!0;return!1}userHasRoles($,H){return H.every((J)=>$.includes(J))}userHasAnyRole($,H){return H.some((J)=>$.includes(J))}getRolesWithPermission($){let H=[];for(let J of this.roles.keys())if(this.roleHasPermission(J,$))H.push(J);return H}getRoleHierarchy($){let H=[];return this.collectParentRoles($,H,new Set),H}roleInheritsFrom($,H){return this.getRoleHierarchy($).includes(H)}getAllRoles(){return Array.from(this.roles.values())}getRole($){return this.roles.get($)}roleExists($){return this.roles.has($)}validateRoles($){let H=[],J=[];for(let Q of $)if(this.roleExists(Q))H.push(Q);else J.push(Q);return{valid:H,invalid:J}}getEffectiveRoles($){let H=new Set;for(let J of $)H.add(J),this.getRoleHierarchy(J).forEach((X)=>H.add(X));return Array.from(H)}compareRoleLevels($,H){let J=this.getRole($),Q=this.getRole(H),X=J?.level??0,Y=Q?.level??0;return X-Y}getHighestRoleLevel($){let H=0;for(let J of $){let Q=this.getRole(J);if(Q&&Q.level&&Q.level>H)H=Q.level}return H}collectPermissions($,H,J){if(J.has($))throw Error(`Circular role inheritance detected: ${$}`);J.add($);let Q=this.roles.get($);if(!Q)throw Error(`Role not found: ${$}`);Q.permissions.forEach((Y)=>H.add(Y));let X=this.hierarchy.get($)||[];for(let Y of X)this.collectPermissions(Y,H,new Set(J))}collectParentRoles($,H,J){if(J.has($))return;J.add($);let Q=this.hierarchy.get($)||[];for(let X of Q)H.push(X),this.collectParentRoles(X,H,J)}}function n7(){let $=new W4;return $.defineRoles([{name:"guest",description:"Guest user with minimal permissions",permissions:["read:public"],level:1},{name:"user",description:"Regular authenticated user",permissions:["read:own","write:own","read:public"],inherits:["guest"],level:10},{name:"moderator",description:"Moderator with content management permissions",permissions:["read:all","write:all","moderate:content"],inherits:["user"],level:50},{name:"admin",description:"Administrator with full system access",permissions:["*"],inherits:["moderator"],level:100},{name:"super-admin",description:"Super administrator with unrestricted access",permissions:["*","system:*"],inherits:["admin"],level:1000}]),$}var XC=R.object({name:R.string().min(1),description:R.string().optional(),permissions:R.array(R.string()),inherits:R.array(R.string()).optional(),level:R.number().optional()}),YC=R.object({userId:R.string(),roles:R.array(R.string())}),WC=R.object({userId:R.string(),permission:R.string()});class G4{static matches($,H){if(H==="*")return!0;if(H.endsWith("*")){let J=H.slice(0,-1);return $.startsWith(J)}return $===H}static hasPermission($,H){return $.some((J)=>this.matches(H,J))}static filterByPattern($,H){return $.filter((J)=>this.matches(J,H))}}function GC($){return(H,J)=>{let Q={required:!$?.optional,config:$};m.defineAuth(H,J,Q)}}function qC(){return($,H,J)=>{if(H)m.defineParameter($,H,J,{index:J,type:"current-user",required:!1})}}function UC(){return($,H,J)=>{if(H)m.defineParameter($,H,J,{index:J,type:"token",required:!1})}}function i7($){return async(H,J)=>{let Q=H.req.header("Authorization");if(!Q||!Q.startsWith("Bearer "))H.set("auth.error","Missing or invalid Authorization header"),H.set("auth.authenticated",!1);else{let X=Q.substring(7);try{let Y=$.verifyAccessToken(X);H.set("auth.user",Y),H.set("auth.token",X),H.set("auth.authenticated",!0)}catch(Y){H.set("auth.error",Y instanceof Error?Y.message:"Authentication failed"),H.set("auth.authenticated",!1)}}await J()}}function u0($){return $.get("auth.user")||null}function s7($){return $.get("auth.token")||null}function BC($){return $.get("auth.authenticated")===!0}function wC($){return $.get("auth.error")||null}U$();function TU($){return(H,J)=>{let X={config:Array.isArray($)?{roles:$,requireAll:!1,allowInherited:!0}:{requireAll:!1,allowInherited:!0,...$}};m.defineRoles(H,J,X)}}function bU($){return(H,J)=>{let X={config:Array.isArray($)?{permissions:$,requireAll:!1}:{requireAll:!1,...$}};m.definePermissions(H,J,X)}}function o7($){return TU([$])}function DC($){return bU([$])}function VC(){return o7("admin")}function _C(){return o7("super-admin")}function FC($){return(H,J)=>{m.defineMinimumRole(H,J,{roleName:$})}}function r7($){return async(H,J)=>{H.set("rbac",$),await J()}}class z9{rbac;constructor($){this.rbac=$}checkRoles($,H){let J=u0($);if(!J)throw new S1("Authentication required for role check");let Q=J.roles||[],X=H.allowInherited?this.rbac.getEffectiveRoles(Q):Q,Y;if(H.requireAll)Y=H.roles.every((W)=>X.includes(W));else Y=H.roles.some((W)=>X.includes(W));if(!Y){let W=H.requireAll?"all":"any";throw new S1(`Access denied. Required ${W} of roles: ${H.roles.join(", ")}`)}}checkPermissions($,H){let J=u0($);if(!J)throw new S1("Authentication required for permission check");let Q=J.roles||[],X=new Set;for(let G of Q)this.rbac.getRolePermissions(G).forEach((U)=>X.add(U));let Y=Array.from(X),W;if(H.requireAll)W=H.permissions.every((G)=>G4.hasPermission(Y,G));else W=H.permissions.some((G)=>G4.hasPermission(Y,G));if(!W){let G=H.requireAll?"all":"any";throw new S1(`Access denied. Required ${G} of permissions: ${H.permissions.join(", ")}`)}}checkMinimumRole($,H){let J=u0($);if(!J)throw new S1("Authentication required for role level check");let Q=J.roles||[],X=this.rbac.getHighestRoleLevel(Q),Y=this.rbac.getRole(H);if(!Y)throw Error(`Required role not found: ${H}`);let W=Y.level||0;if(X<W)throw new S1(`Access denied. Minimum role level required: ${H} (level ${W})`)}}function fU($){return $.get("rbac")||null}function a7($){return u0($)?.roles||[]}function xU($){let H=fU($),J=a7($);if(!H)return[];let Q=new Set;for(let X of J)H.getRolePermissions(X).forEach((W)=>Q.add(W));return Array.from(Q)}function zC($,H){return a7($).includes(H)}function NC($,H){let J=xU($);return G4.hasPermission(J,H)}class kU{config;name="rbac";version="1.0.0";dependencies=["auth"];rbac;guard;constructor($={}){this.config=$;if($.rbac)this.rbac=$.rbac;else if($.useDefaults!==!1)this.rbac=n7();else this.rbac=new W4;if($.roles)this.rbac.defineRoles($.roles);this.guard=new z9(this.rbac)}async install($){let H=r7(this.rbac);if($.use(H),$.getContainer().register(W4,{factory:()=>this.rbac,scope:"singleton"}),$.getContainer().register(z9,{factory:()=>this.guard,scope:"singleton"}),this.extendRouterCompiler($),this.config.enableManagementRoutes!==!1)this.addManagementRoutes($)}extendRouterCompiler($){let H=$.compile.bind($);$.compile=async()=>{await H();let J=$.getMetadata().getRoutes();for(let Q of J)if(Q.roles||Q.permissions||Q.minimumRole)this.addRBACGuards($,Q)}}addRBACGuards($,H){}addManagementRoutes($){let H=this.config.routes||{};$.get(H.roles||"/rbac/roles",{handler:(J)=>{let Q=this.rbac.getAllRoles();return J.json({success:!0,roles:Q.map((X)=>({name:X.name,description:X.description,permissions:X.permissions,inherits:X.inherits,level:X.level}))})}}),$.get("/rbac/roles/:roleName",{handler:(J)=>{let Q=J.req.param("roleName"),X=this.rbac.getRole(Q);if(!X)return J.json({error:"Role not found"},404);let Y=this.rbac.getRolePermissions(Q),W=this.rbac.getRoleHierarchy(Q);return J.json({success:!0,role:{...X,effectivePermissions:Y,hierarchy:W}})}}),$.get("/rbac/roles/:roleName/permissions",{handler:(J)=>{let Q=J.req.param("roleName");if(!this.rbac.roleExists(Q))return J.json({error:"Role not found"},404);let X=this.rbac.getRolePermissions(Q);return J.json({success:!0,role:Q,permissions:X})}}),$.post("/rbac/check-permission",{handler:async(J)=>{let Q=await J.req.json(),{roles:X,permission:Y}=Q;if(!Array.isArray(X)||!Y)return J.json({error:"Invalid request body"},400);let W=this.rbac.userHasPermission(X,Y);return J.json({success:!0,hasPermission:W,roles:X,permission:Y})}}),$.post("/rbac/check-roles",{handler:async(J)=>{let Q=await J.req.json(),{userRoles:X,requiredRoles:Y,requireAll:W=!1}=Q;if(!Array.isArray(X)||!Array.isArray(Y))return J.json({error:"Invalid request body"},400);let G=W?this.rbac.userHasRoles(X,Y):this.rbac.userHasAnyRole(X,Y);return J.json({success:!0,hasRoles:G,userRoles:X,requiredRoles:Y,requireAll:W})}}),$.post("/rbac/effective-roles",{handler:async(J)=>{let Q=await J.req.json(),{roles:X}=Q;if(!Array.isArray(X))return J.json({error:"Invalid request body"},400);let Y=this.rbac.getEffectiveRoles(X);return J.json({success:!0,inputRoles:X,effectiveRoles:Y})}}),$.post("/rbac/user-permissions",{handler:async(J)=>{let Q=await J.req.json(),{roles:X}=Q;if(!Array.isArray(X))return J.json({error:"Invalid request body"},400);let Y=new Set;for(let W of X)if(this.rbac.roleExists(W))this.rbac.getRolePermissions(W).forEach((q)=>Y.add(q));return J.json({success:!0,roles:X,permissions:Array.from(Y)})}})}getRBACManager(){return this.rbac}getGuard(){return this.guard}}U$();class hU{config;name="auth";version="1.0.0";authService;constructor($){this.config=$;this.authService=new F9($.jwt,$.userProvider)}async install($){let H=i7(this.authService.getJWTProvider());if($.use(H),$.getContainer().register(F9,{factory:()=>this.authService,scope:"singleton"}),this.config.enableDefaultRoutes!==!1)this.addDefaultRoutes($);this.extendRouterCompiler($)}extendRouterCompiler($){$.use(async(J,Q)=>{J.set("authService",this.authService),await Q()});let H=$.compile.bind($);$.compile=async()=>{await H();let J=$.getHono(),Q=$.getMetadata().getRoutes();for(let X of Q){let Y=m.getAuthMetadata(X.target.prototype,X.propertyKey);if(X.auth?.required||Y?.required){console.log("Adding auth middleware for route:",X.path,X.method);let G=X.auth?.config||Y?.config;J.use(X.path,async(q,U)=>{if(console.log("Auth middleware executing for:",q.req.path,q.req.method,"target:",X.path,X.method),q.req.method!==X.method)return console.log("Method mismatch, skipping auth check"),U();console.log("Checking authentication...");let B=q.get("auth.user"),w=q.get("auth.error");if(!B){let _=w||"Authentication required";throw console.log("No user found, throwing auth exception"),new Z1(_)}if(G?.roles?.length){if(!this.authService.hasRoles(B,G.roles))throw new S1(`Required roles: ${G.roles.join(", ")}`)}if(G?.permissions?.length){if(!this.authService.hasPermissions(B,G.permissions))throw new S1(`Required permissions: ${G.permissions.join(", ")}`)}await U()})}}}}buildPath($){return $.path}pathMatches($,H){let J=$.replace(/:([^/]+)/g,"([^/]+)");return new RegExp(`^${J}$`).test(H)}addDefaultRoutes($){let H=this.config.routes||{};if($.post(H.login||"/auth/login",{handler:async(J)=>{let Q=await J.req.json(),{username:X,password:Y}=Q;try{let W=await this.authService.login(X,Y);return{success:!0,user:W.user,tokens:W.tokens}}catch(W){throw new Z1(W instanceof Error?W.message:"Login failed")}},schema:{body:R.object({username:R.string().min(1),password:R.string().min(1)})}}),$.post(H.refresh||"/auth/refresh",{handler:async(J)=>{let Q=await J.req.json(),{refreshToken:X}=Q;try{return{success:!0,tokens:await this.authService.refresh(X)}}catch(Y){throw new Z1(Y instanceof Error?Y.message:"Token refresh failed")}},schema:{body:R.object({refreshToken:R.string().min(1)})}}),$.post(H.logout||"/auth/logout",{handler:async(J)=>{let Q=s7(J),X=await J.req.json(),{refreshToken:Y}=X;if(Q)await this.authService.logout(Q,Y);return{success:!0,message:"Logged out successfully"}},schema:{body:R.object({refreshToken:R.string().optional()})}}),"createUser"in this.config.userProvider)$.post(H.register||"/auth/register",{handler:async(J)=>{let Q=await J.req.json(),{username:X,password:Y,email:W}=Q;try{let G=await this.authService.register({username:X,password:Y,email:W});return{success:!0,user:G.user,tokens:G.tokens}}catch(G){throw new Z1(G instanceof Error?G.message:"Registration failed")}},schema:{body:R.object({username:R.string().min(1),password:R.string().min(6),email:R.string().email().optional()})}});$.get("/auth/me",{handler:async(J)=>{let Q=u0(J);if(!Q)throw new Z1("Not authenticated");return{success:!0,user:Q}}})}getAuthService(){return this.authService}}var Tv=R.object({code:R.string(),state:R.string(),error:R.string().optional(),error_description:R.string().optional()}),bv=R.object({accessToken:R.string(),refreshToken:R.string().optional(),expiresIn:R.number().optional(),tokenType:R.string(),scope:R.string().optional()}),vU=R.object({id:R.string(),email:R.string().optional(),name:R.string().optional(),username:R.string().optional(),avatar:R.string().optional(),provider:R.string()}).passthrough();function gU($){return(H,J)=>{let Q={provider:$.provider,config:$};m.defineOAuth(H,J,Q)}}function yU(){return($,H,J)=>{if(H)m.defineParameter($,H,J,{index:J,type:"oauth-user",required:!0})}}function uU(){return($,H,J)=>{if(H)m.defineParameter($,H,J,{index:J,type:"oauth-token",required:!0})}}function mU($){return $.get("oauth.user")||null}function dU($){return $.get("oauth.token")||null}function cU($){return $.get("oauth.authenticated")===!0}function lU($){return $.get("oauth.provider")||null}class t7{store;config;constructor($,H){this.store=$;this.config={name:"sessionId",maxAge:86400000,secure:!1,httpOnly:!0,sameSite:"lax",path:"/",rolling:!1,genid:()=>crypto.randomUUID(),...H,domain:H.domain}}async createSession($,H={},J){let Q=this.config.genid(),X=new Date,Y=J?.maxAge||this.config.maxAge,W={id:Q,userId:$,data:H,createdAt:X,updatedAt:X,expiresAt:new Date(X.getTime()+Y),ipAddress:J?.ipAddress,userAgent:J?.userAgent,csrfToken:this.generateCSRFToken()};return await this.store.set(Q,W),W}async getSession($){return await this.store.get($)}async updateSession($,H){let J=await this.store.get($);if(!J)return null;if(J.data={...J.data,...H},J.updatedAt=new Date,this.config.rolling)J.expiresAt=new Date(Date.now()+this.config.maxAge);return await this.store.set($,J),J}async touchSession($){if(this.config.rolling){let H=await this.store.get($);if(H)H.updatedAt=new Date,H.expiresAt=new Date(Date.now()+this.config.maxAge),await this.store.set($,H)}else await this.store.touch($)}async destroySession($){await this.store.destroy($)}async regenerateSession($){let H=await this.store.get($);if(!H)return null;let J=this.config.genid(),Q={...H,id:J,updatedAt:new Date,csrfToken:this.generateCSRFToken()};return await this.store.set(J,Q),await this.store.destroy($),Q}async getUserSessions($){return(await this.store.all()).filter((J)=>J.userId===$)}async destroyUserSessions($){let H=await this.getUserSessions($);for(let J of H)await this.store.destroy(J.id)}validateCSRFToken($,H){return $.csrfToken===H}generateCSRFToken(){return crypto.randomUUID()}getCookieOptions(){let $={maxAge:this.config.maxAge,secure:this.config.secure,httpOnly:this.config.httpOnly,sameSite:this.config.sameSite,path:this.config.path};if(this.config.domain)$.domain=this.config.domain;return $}getConfig(){return{...this.config}}getStore(){return this.store}}var pU=R.object({id:R.string(),userId:R.string(),data:R.record(R.any()),createdAt:R.date(),updatedAt:R.date(),expiresAt:R.date().optional(),ipAddress:R.string().optional(),userAgent:R.string().optional(),csrfToken:R.string().optional()}),vv=R.object({name:R.string().optional(),secret:R.string(),maxAge:R.number().optional(),secure:R.boolean().optional(),httpOnly:R.boolean().optional(),sameSite:R.enum(["strict","lax","none"]).optional(),domain:R.string().optional(),path:R.string().optional(),rolling:R.boolean().optional()}),gv=R.object({userId:R.string(),data:R.record(R.any()).optional(),maxAge:R.number().optional(),ipAddress:R.string().optional(),userAgent:R.string().optional()}),yv=R.object({data:R.record(R.any())});U$();function nU($={}){return(H,J)=>{let Q={config:$};m.defineSession(H,J,Q)}}function iU(){return($,H,J)=>{if(H)m.defineParameter($,H,J,{index:J,type:"current-session",required:!0})}}function sU(){return($,H,J)=>{if(H)m.defineParameter($,H,J,{index:J,type:"csrf-token",required:!0})}}function oU(){return($,H)=>{m.defineCSRF($,H,{required:!0})}}function rU($,H){return async(J,Q)=>{let X=$.getConfig(),Y=S2(J,X.name),W=null;if(Y){if(W=await $.getSession(Y),W)await $.touchSession(Y)}J.set("session",W),J.set("sessionManager",$),J.set("csrfProtection",H),await Q()}}class e7{sessionManager;csrfProtection;constructor($,H){this.sessionManager=$;this.csrfProtection=H}checkSession($,H){let J=y1($);if(H.required&&!J)throw new Z1("Session required");if(J&&H.csrf)this.checkCSRF($,J)}checkCSRF($,H){if(!this.csrfProtection)throw Error("CSRF protection not configured");let J=$.req.header("X-CSRF-Token")||$.req.query("_csrf");if(!J)throw new S1("CSRF token required");if(!this.csrfProtection.validateToken(H.id,J))throw new S1("Invalid CSRF token")}async createSession($,H,J={}){let Q=q4($);if(!Q)throw Error("Session manager not available");let X=$.req.header("X-Forwarded-For")||$.req.header("X-Real-IP")||"unknown",Y=$.req.header("User-Agent")||"unknown",W=await Q.createSession(H,J,{ipAddress:X,userAgent:Y}),G=Q.getCookieOptions();return C2($,Q.getConfig().name,W.id,G),$.set("session",W),W}async updateSession($,H){let J=y1($),Q=q4($);if(!J||!Q)return null;let X=await Q.updateSession(J.id,H);if(X)$.set("session",X);return X}async destroySession($){let H=y1($),J=q4($);if(!H||!J)return;await J.destroySession(H.id);let Q=J.getConfig();if(C2($,Q.name,"",{...J.getCookieOptions(),maxAge:0}),$.set("session",null),this.csrfProtection)this.csrfProtection.removeToken(H.id)}async regenerateSession($){let H=y1($),J=q4($);if(!H||!J)return null;let Q=await J.regenerateSession(H.id);if(Q){let X=J.getCookieOptions();if(C2($,J.getConfig().name,Q.id,X),$.set("session",Q),this.csrfProtection)this.csrfProtection.removeToken(H.id),this.csrfProtection.generateToken(Q.id)}return Q}generateCSRFToken($){let H=y1($);if(!H||!this.csrfProtection)return null;return this.csrfProtection.generateToken(H.id)}}function y1($){return $.get("session")||null}function q4($){return $.get("sessionManager")||null}function aU($){return $.get("csrfProtection")||null}function tU($,H){let J=y1($);if(!J)return null;if(H)return J.data[H];return J.data}function eU($){return y1($)!==null}function $B($){return y1($)?.userId||null}function HB($,H,J){let Q=y1($);if(Q)Q.data[H]=J,$.set("session",Q)}function JB($,H){let J=y1($);if(J&&H in J.data)delete J.data[H],$.set("session",J)}class m0{schema;constructor($){this.schema=$}validate($){if(this.schema)return this.schema.parse($);return $}validatePartial($){if(this.schema)try{return this.schema.parse($)}catch{return $}return $}async createMany($){let H=[];for(let J of $)H.push(await this.create(J));return H}async updateMany($,H){let J=await this.findMany({where:$}),Q=0;for(let X of J){let Y=X.id;if(Y)await this.update(Y,H),Q++}return Q}async deleteMany($){let H=await this.findMany({where:$}),J=0;for(let Q of H){let X=Q.id;if(X&&await this.delete(X))J++}return J}async findPaginated($){let{pagination:H,...J}=$,{page:Q,limit:X}=H,Y=(Q-1)*X,W=await this.count(J.where),G=await this.findMany({...J,pagination:{...H,offset:Y}}),q=Math.ceil(W/X);return{data:G,total:W,page:Q,limit:X,totalPages:q,hasNext:Q<q,hasPrev:Q>1}}async count($){return(await this.findMany({where:$})).length}async exists($){return await this.findOne({where:$})!==null}async withTransaction($){return $(this)}buildWhereClause($){if(!$)return{};return $}buildOrderByClause($){if(!$)return{};if(Array.isArray($))return $.reduce((H,J)=>{return H[J.field]=J.direction,H},{});return{[$.field]:$.direction}}buildPaginationClause($){if(!$)return{};let H={};if($.limit)H.take=$.limit;if($.offset)H.skip=$.offset;return H}}class Z0 extends m0{client;delegate;modelName;constructor($){super($.zodSchema);this.client=$.client,this.delegate=$.delegate,this.modelName=$.model}async create($){let H=this.validatePartial($),J=await this.delegate.create({data:H});return this.validate(J)}async findById($){let H=await this.delegate.findUnique({where:{id:$}});return H?this.validate(H):null}async findOne($){let H=this.buildPrismaFindOptions($),J=await this.delegate.findFirst(H);return J?this.validate(J):null}async findMany($){let H=this.buildPrismaFindOptions($||{});return(await this.delegate.findMany(H)).map((Q)=>this.validate(Q))}async update($,H){let J=this.validatePartial(H),Q=await this.delegate.update({where:{id:$},data:J});return this.validate(Q)}async delete($){try{return await this.delegate.delete({where:{id:$}}),!0}catch(H){return!1}}async createMany($){let H=$.map((Q)=>this.validatePartial(Q));await this.delegate.create({data:H,skipDuplicates:!0});let J=[];for(let Q of H){let X=await this.create(Q);J.push(X)}return J}async updateMany($,H){let J=this.validatePartial(H);return(await this.delegate.updateMany({where:this.buildWhereClause($),data:J})).count}async deleteMany($){return(await this.delegate.deleteMany({where:this.buildWhereClause($)})).count}async count($){return await this.delegate.count({where:$?this.buildWhereClause($):void 0})}async exists($){return await this.delegate.count({where:this.buildWhereClause($),take:1})>0}async findPaginated($){let{pagination:H,...J}=$,{page:Q,limit:X}=H,Y=(Q-1)*X,W=this.buildPrismaFindOptions(J),[G,q]=await Promise.all([this.delegate.count({where:W.where}),this.delegate.findMany({...W,skip:Y,take:X})]),U=q.map((w)=>this.validate(w)),B=Math.ceil(G/X);return{data:U,total:G,page:Q,limit:X,totalPages:B,hasNext:Q<B,hasPrev:Q>1}}async withTransaction($){return await this.client.$transaction(async(H)=>{let J=new this.constructor({client:H,delegate:H[this.modelName.toLowerCase()],model:this.modelName,zodSchema:this.schema});return await $(J)})}buildPrismaFindOptions($){let H={};if($.where)H.where=this.buildWhereClause($.where);if($.orderBy)H.orderBy=this.buildOrderByClause($.orderBy);if($.pagination){let J=this.buildPaginationClause($.pagination);Object.assign(H,J)}if($.include)H.include=$.include.reduce((J,Q)=>{return J[Q]=!0,J},{});if($.select)H.select=$.select.reduce((J,Q)=>{return J[Q]=!0,J},{});return H}buildWhereClause($){let H={};for(let[J,Q]of Object.entries($))if(Q===null||Q===void 0)H[J]=null;else if(typeof Q==="object"&&!Array.isArray(Q))H[J]=Q;else if(Array.isArray(Q))H[J]={in:Q};else H[J]=Q;return H}buildOrderByClause($){if(Array.isArray($))return $.map((H)=>({[H.field]:H.direction}));return{[$.field]:$.direction}}buildPaginationClause($){let H={};if($.limit)H.take=$.limit;if($.offset)H.skip=$.offset;return H}async aggregate($){let H={};if($.where)H.where=this.buildWhereClause($.where);if($._count)H._count=$._count;if($._avg)H._avg=$._avg;if($._sum)H._sum=$._sum;if($._min)H._min=$._min;if($._max)H._max=$._max;return await this.delegate.aggregate(H)}async groupBy($){let H={by:$.by};if($.where)H.where=this.buildWhereClause($.where);if($.having)H.having=this.buildWhereClause($.having);if($.orderBy)H.orderBy=this.buildOrderByClause($.orderBy);if($._count)H._count=$._count;if($._avg)H._avg=$._avg;if($._sum)H._sum=$._sum;if($._min)H._min=$._min;if($._max)H._max=$._max;return await this.delegate.groupBy(H)}}class L0 extends m0{dataSource;repository;entity;constructor($){super($.zodSchema);this.dataSource=$.dataSource,this.repository=$.repository,this.entity=$.entity}async create($){let H=this.validatePartial($),J=this.repository.create(H),Q=await this.repository.save(J);return this.validate(Q)}async findById($){let H=await this.repository.findOneBy({id:$});return H?this.validate(H):null}async findOne($){let H=this.buildTypeORMFindOptions($),J=await this.repository.findOne(H);return J?this.validate(J):null}async findMany($){let H=this.buildTypeORMFindOptions($||{});return(await this.repository.find(H)).map((Q)=>this.validate(Q))}async update($,H){let J=this.validatePartial(H),Q=await this.repository.findOneBy({id:$});if(!Q)throw Error(`Entity with id ${$} not found`);let X=this.repository.merge(Q,J),Y=await this.repository.save(X);return this.validate(Y)}async delete($){return((await this.repository.delete({id:$})).affected||0)>0}async createMany($){let J=$.map((X)=>this.validatePartial(X)).map((X)=>this.repository.create(X));return(await this.repository.save(J)).map((X)=>this.validate(X))}async updateMany($,H){let J=this.validatePartial(H),Q=this.buildWhereClause($);return(await this.repository.update(Q,J)).affected||0}async deleteMany($){let H=this.buildWhereClause($);return(await this.repository.delete(H)).affected||0}async count($){let H=$?{where:this.buildWhereClause($)}:{};return await this.repository.count(H)}async exists($){return await this.repository.count({where:this.buildWhereClause($),take:1})>0}async findPaginated($){let{pagination:H,...J}=$,{page:Q,limit:X}=H,Y=(Q-1)*X,W=this.buildTypeORMFindOptions(J);W.skip=Y,W.take=X;let[G,q]=await this.repository.createQueryBuilder("entity").where(W.where||{}).orderBy(W.order||{}).skip(Y).take(X).getManyAndCount(),U=G.map((w)=>this.validate(w)),B=Math.ceil(q/X);return{data:U,total:q,page:Q,limit:X,totalPages:B,hasNext:Q<B,hasPrev:Q>1}}async withTransaction($){return await this.dataSource.transaction(async(H)=>{let J=H.getRepository?H.getRepository(this.entity):this.repository,Q=new this.constructor({dataSource:this.dataSource,repository:J,entity:this.entity,zodSchema:this.schema});return await $(Q)})}buildTypeORMFindOptions($){let H={};if($.where)H.where=this.buildWhereClause($.where);if($.orderBy)H.order=this.buildOrderByClause($.orderBy);if($.pagination){if($.pagination.limit)H.take=$.pagination.limit;if($.pagination.offset)H.skip=$.pagination.offset}if($.include)H.relations=$.include;if($.select)H.select=$.select.reduce((J,Q)=>{return J[Q]=!0,J},{});return H}buildWhereClause($){let H={};for(let[J,Q]of Object.entries($))if(Q===null||Q===void 0)H[J]=null;else if(typeof Q==="object"&&!Array.isArray(Q))if("gt"in Q)H[J]={$gt:Q.gt};else if("gte"in Q)H[J]={$gte:Q.gte};else if("lt"in Q)H[J]={$lt:Q.lt};else if("lte"in Q)H[J]={$lte:Q.lte};else if("like"in Q)H[J]={$like:Q.like};else if("in"in Q)H[J]={$in:Q.in};else H[J]=Q;else if(Array.isArray(Q))H[J]={$in:Q};else H[J]=Q;return H}buildOrderByClause($){if(Array.isArray($))return $.reduce((H,J)=>{return H[J.field]=J.direction.toUpperCase(),H},{});return{[$.field]:$.direction.toUpperCase()}}createQueryBuilder($){return this.repository.createQueryBuilder($)}async query($,H){return await this.dataSource.manager.query($,H)}async softDelete($){try{if(this.dataSource.getMetadata(this.entity).columns.some((Q)=>Q.propertyName==="deletedAt"))return((await this.repository.update({id:$},{deletedAt:new Date})).affected||0)>0;else return await this.delete($)}catch(H){return!1}}async restore($){try{return((await this.repository.update({id:$},{deletedAt:null})).affected||0)>0}catch(H){return!1}}async findWithRelations($,H){let J=await this.repository.findOne({where:{id:$},relations:H});return J?this.validate(J):null}async bulkInsert($){let H=$.map((X)=>this.validatePartial(X)),Q=this.repository.createQueryBuilder().insert();if(Q)await Q.into(this.entity).values(H).execute();else await this.createMany($)}async upsert($,H){let J=this.validatePartial($);try{let Q=this.repository.create(J),X=await this.repository.save(Q);return this.validate(X)}catch(Q){let X=H.reduce((W,G)=>{if(G in J)W[G]=J[G];return W},{}),Y=await this.repository.findOneBy(X);if(Y){let W=this.repository.merge(Y,J),G=await this.repository.save(W);return this.validate(G)}throw Q}}}class u1 extends m0{database;table;operators;constructor($){super($.zodSchema);this.database=$.database,this.table=$.table,this.operators=this.initializeOperators()}initializeOperators(){return{eq:($,H)=>({type:"eq",column:$,value:H}),ne:($,H)=>({type:"ne",column:$,value:H}),gt:($,H)=>({type:"gt",column:$,value:H}),gte:($,H)=>({type:"gte",column:$,value:H}),lt:($,H)=>({type:"lt",column:$,value:H}),lte:($,H)=>({type:"lte",column:$,value:H}),like:($,H)=>({type:"like",column:$,value:H}),ilike:($,H)=>({type:"ilike",column:$,value:H}),inArray:($,H)=>({type:"in",column:$,values:H}),notInArray:($,H)=>({type:"notIn",column:$,values:H}),isNull:($)=>({type:"isNull",column:$}),isNotNull:($)=>({type:"isNotNull",column:$}),between:($,H,J)=>({type:"between",column:$,min:H,max:J}),and:(...$)=>({type:"and",conditions:$}),or:(...$)=>({type:"or",conditions:$}),not:($)=>({type:"not",condition:$})}}async create($){let H=this.validatePartial($),J=await this.database.insert(this.table).values(H).returning().execute();return this.validate(J[0])}async findById($){let H=this.getPrimaryKeyColumn(),J=await this.database.select().from(this.table).where(this.operators.eq(H,$)).execute();return J.length>0?this.validate(J[0]):null}async findOne($){let H=this.database.select().from(this.table);if($.where)H=H.where(this.buildWhereClause($.where));if($.orderBy)H=H.orderBy(...this.buildOrderByClause($.orderBy));H=H.limit(1);let J=await H.execute();return J.length>0?this.validate(J[0]):null}async findMany($){let H=this.database.select().from(this.table);if($?.where)H=H.where(this.buildWhereClause($.where));if($?.orderBy)H=H.orderBy(...this.buildOrderByClause($.orderBy));if($?.pagination){if($.pagination.limit)H=H.limit($.pagination.limit);if($.pagination.offset)H=H.offset($.pagination.offset)}return(await H.execute()).map((Q)=>this.validate(Q))}async update($,H){let J=this.validatePartial(H),Q=this.getPrimaryKeyColumn(),X=await this.database.update(this.table).set(J).where(this.operators.eq(Q,$)).returning().execute();if(X.length===0)throw Error(`Entity with id ${$} not found`);return this.validate(X[0])}async delete($){let H=this.getPrimaryKeyColumn();return(await this.database.delete(this.table).where(this.operators.eq(H,$)).execute()).rowsAffected>0}async createMany($){let H=$.map((Q)=>this.validatePartial(Q));return(await this.database.insert(this.table).values(H).returning().execute()).map((Q)=>this.validate(Q))}async updateMany($,H){let J=this.validatePartial(H),Q=this.buildWhereClause($);return(await this.database.update(this.table).set(J).where(Q).execute()).rowsAffected}async deleteMany($){let H=this.buildWhereClause($);return(await this.database.delete(this.table).where(H).execute()).rowsAffected}async count($){let H=this.database.select({count:"COUNT(*)"}).from(this.table);if($)H=H.where(this.buildWhereClause($));return(await H.execute())[0]?.count||0}async exists($){return await this.count($)>0}async findPaginated($){let{pagination:H,...J}=$,{page:Q,limit:X}=H,Y=(Q-1)*X,W=this.database.select().from(this.table),G=this.database.select({count:"COUNT(*)"}).from(this.table);if(J.where){let V=this.buildWhereClause(J.where);W=W.where(V),G=G.where(V)}if(J.orderBy)W=W.orderBy(...this.buildOrderByClause(J.orderBy));W=W.limit(X).offset(Y);let[q,U]=await Promise.all([W.execute(),G.execute()]),B=U[0]?.count||0,w=q.map((V)=>this.validate(V)),_=Math.ceil(B/X);return{data:w,total:B,page:Q,limit:X,totalPages:_,hasNext:Q<_,hasPrev:Q>1}}async withTransaction($){return await this.database.transaction(async(H)=>{let J=new this.constructor({database:H,table:this.table,zodSchema:this.schema});return await $(J)})}buildWhereClause($){let H=[];for(let[J,Q]of Object.entries($)){let X=this.getColumn(J);if(Q===null||Q===void 0)H.push(this.operators.isNull(X));else if(typeof Q==="object"&&!Array.isArray(Q))if("gt"in Q)H.push(this.operators.gt(X,Q.gt));else if("gte"in Q)H.push(this.operators.gte(X,Q.gte));else if("lt"in Q)H.push(this.operators.lt(X,Q.lt));else if("lte"in Q)H.push(this.operators.lte(X,Q.lte));else if("like"in Q)H.push(this.operators.like(X,Q.like));else if("ilike"in Q)H.push(this.operators.ilike(X,Q.ilike));else if("in"in Q)H.push(this.operators.inArray(X,Q.in));else if("notIn"in Q)H.push(this.operators.notInArray(X,Q.notIn));else if("between"in Q&&Array.isArray(Q.between)&&Q.between.length===2)H.push(this.operators.between(X,Q.between[0],Q.between[1]));else H.push(this.operators.eq(X,Q));else if(Array.isArray(Q))H.push(this.operators.inArray(X,Q));else H.push(this.operators.eq(X,Q))}return H.length===1?H[0]:this.operators.and(...H)}buildOrderByClause($){if(Array.isArray($))return $.map((J)=>{let Q=this.getColumn(J.field);return J.direction==="desc"?{column:Q,direction:"desc"}:Q});let H=this.getColumn($.field);return $.direction==="desc"?[{column:H,direction:"desc"}]:[H]}getPrimaryKeyColumn(){for(let[$,H]of Object.entries(this.table._.columns))if(H._.isPrimaryKey)return this.table[$];return this.table.id||this.table._.columns.id}getColumn($){return this.table[$]||this.table._.columns[$]}async rawQuery($,H){return await this.database.execute({sql:$,params:H})}async upsert($,H){let J=this.validatePartial($),Q=H.map((Y)=>this.getColumn(Y)),X=await this.database.insert(this.table).values(J).onConflictDoUpdate({target:Q,set:J}).returning().execute();return this.validate(X[0])}async bulkUpsert($,H){let J=$.map((Y)=>this.validatePartial(Y)),Q=H.map((Y)=>this.getColumn(Y));return(await this.database.insert(this.table).values(J).onConflictDoUpdate({target:Q,set:J[0]}).returning().execute()).map((Y)=>this.validate(Y))}async findWithSelect($,H){let J=H.reduce((X,Y)=>{return X[Y]=this.getColumn(Y),X},{}),Q=this.database.select(J).from(this.table);if($.where)Q=Q.where(this.buildWhereClause($.where));if($.orderBy)Q=Q.orderBy(...this.buildOrderByClause($.orderBy));if($.pagination){if($.pagination.limit)Q=Q.limit($.pagination.limit);if($.pagination.offset)Q=Q.offset($.pagination.offset)}return await Q.execute()}async aggregate($){let H={};if($.count)H.count="COUNT(*)";if($.sum)for(let Q of $.sum)H[`sum_${Q}`]=`SUM(${Q})`;if($.avg)for(let Q of $.avg)H[`avg_${Q}`]=`AVG(${Q})`;if($.min)for(let Q of $.min)H[`min_${Q}`]=`MIN(${Q})`;if($.max)for(let Q of $.max)H[`max_${Q}`]=`MAX(${Q})`;let J=this.database.select(H).from(this.table);if($.where)J=J.where(this.buildWhereClause($.where));if($.groupBy){let Q=$.groupBy.map((X)=>this.getColumn(X));J=J.groupBy(...Q)}if($.having)J=J.having(this.buildWhereClause($.having));return await J.execute()}}class _${static instance;constructor(){}static getInstance(){if(!_$.instance)_$.instance=new _$;return _$.instance}createRepository($,H){switch($){case"prisma":return new Z0(H);case"typeorm":return new L0(H);case"drizzle":return new u1(H);default:throw Error(`Unsupported repository type: ${$}`)}}createPrismaRepository($){return new Z0($)}createTypeORMRepository($){return new L0($)}createDrizzleRepository($){return new u1($)}}class N9{repositories=new Map;factory;constructor(){this.factory=_$.getInstance()}register($,H){this.repositories.set($,H)}get($){return this.repositories.get($)}createAndRegister($,H,J){let Q=this.factory.createRepository(H,J);return this.register($,Q),Q}remove($){return this.repositories.delete($)}getNames(){return Array.from(this.repositories.keys())}clear(){this.repositories.clear()}size(){return this.repositories.size}}function AC($,H,J){return(Q,X)=>{let Y={type:"generic-repository",name:$,ormType:H,options:J};Reflect.defineMetadata("inject",Y,Q,X)}}function RC($){return class extends ${repositories=new N9;getRepository(H){return this.repositories.get(H)}createRepository(H,J,Q){return this.repositories.createAndRegister(H,J,Q)}async withRepositories(H,J){let Q=new Map;for(let Y of H){let W=this.repositories.get(Y);if(W)Q.set(Y,W)}let X=Q.values().next().value;if(X&&typeof X.withTransaction==="function")return await X.withTransaction(async()=>{return await J(Q)});return await J(Q)}}}class QB{repositories=new N9;constructor(){this.initializeRepositories()}getRepository($){let H=this.repositories.get($);if(!H)throw Error(`Repository '${$}' not found`);return H}async executeInTransaction($,H){let J=new Map;for(let X of $){let Y=this.repositories.get(X);if(Y)J.set(X,Y)}let Q=J.values().next().value;if(Q&&typeof Q.withTransaction==="function")return await Q.withTransaction(async()=>{return await H(J)});return await H(J)}}var EC=new N9;class z8{executor;operators;selectFields;whereConditions=[];orderByClause;limitCount;offsetCount;groupByFields;havingConditions=[];joins=[];constructor($,H=new $3){this.executor=$;this.operators=H}select($){return this.selectFields=$,this}where($){let H=this.buildFilterCondition($);return this.whereConditions.push(H),this}orderBy($){return this.orderByClause=$,this}limit($){return this.limitCount=$,this}offset($){return this.offsetCount=$,this}groupBy($){return this.groupByFields=$,this}having($){let H=this.buildFilterCondition($);return this.havingConditions.push(H),this}join($,H){return this.joins.push({type:"JOIN",table:$,condition:H}),this}leftJoin($,H){return this.joins.push({type:"LEFT JOIN",table:$,condition:H}),this}rightJoin($,H){return this.joins.push({type:"RIGHT JOIN",table:$,condition:H}),this}innerJoin($,H){return this.joins.push({type:"INNER JOIN",table:$,condition:H}),this}async execute(){let $=this.buildQuery();return await this.executor.execute($)}async first(){let $=this.limitCount;this.limit(1);let H=await this.execute();return this.limitCount=$,H.length>0?H[0]:null}async count(){let $=this.buildCountQuery();return await this.executor.count($)}async exists(){return await this.count()>0}buildFilterCondition($){let H=[];for(let[J,Q]of Object.entries($))if(Q===null||Q===void 0)H.push({type:"isNull",field:J});else if(typeof Q==="object"&&!Array.isArray(Q))for(let[X,Y]of Object.entries(Q))switch(X){case"eq":H.push({type:"eq",field:J,value:Y});break;case"ne":H.push({type:"ne",field:J,value:Y});break;case"gt":H.push({type:"gt",field:J,value:Y});break;case"gte":H.push({type:"gte",field:J,value:Y});break;case"lt":H.push({type:"lt",field:J,value:Y});break;case"lte":H.push({type:"lte",field:J,value:Y});break;case"like":H.push({type:"like",field:J,pattern:Y});break;case"ilike":H.push({type:"ilike",field:J,pattern:Y});break;case"in":H.push({type:"in",field:J,values:Y});break;case"notIn":H.push({type:"notIn",field:J,values:Y});break;case"between":if(Array.isArray(Y)&&Y.length===2)H.push({type:"between",field:J,min:Y[0],max:Y[1]});break}else if(Array.isArray(Q))H.push({type:"in",field:J,values:Q});else H.push({type:"eq",field:J,value:Q});return H.length===1?H[0]:{type:"and",conditions:H}}buildQuery(){return{select:this.selectFields,where:this.whereConditions.length>0?this.whereConditions.length===1?this.whereConditions[0]:{type:"and",conditions:this.whereConditions}:void 0,orderBy:this.orderByClause,limit:this.limitCount,offset:this.offsetCount,groupBy:this.groupByFields,having:this.havingConditions.length>0?this.havingConditions.length===1?this.havingConditions[0]:{type:"and",conditions:this.havingConditions}:void 0,joins:this.joins}}buildCountQuery(){return{select:["COUNT(*) as count"],where:this.whereConditions.length>0?this.whereConditions.length===1?this.whereConditions[0]:{type:"and",conditions:this.whereConditions}:void 0,joins:this.joins}}}class $3{eq($){return{type:"eq",value:$}}ne($){return{type:"ne",value:$}}gt($){return{type:"gt",value:$}}gte($){return{type:"gte",value:$}}lt($){return{type:"lt",value:$}}lte($){return{type:"lte",value:$}}like($){return{type:"like",pattern:$}}ilike($){return{type:"ilike",pattern:$}}in($){return{type:"in",values:$}}notIn($){return{type:"notIn",values:$}}between($,H){return{type:"between",min:$,max:H}}isNull(){return{type:"isNull"}}isNotNull(){return{type:"isNotNull"}}and(...$){return{type:"and",conditions:$}}or(...$){return{type:"or",conditions:$}}not($){return{type:"not",condition:$}}}class XB{static create($){return new z8($)}static createWithOperators($,H){return new z8($,H)}}class U4{static calculateMeta($,H,J){let Q=Math.ceil($/J);return{total:$,page:H,limit:J,totalPages:Q,hasNext:H<Q,hasPrev:H>1,firstPage:1,lastPage:Q}}static calculateOffset($,H){return($-1)*H}static calculatePage($,H){return Math.floor($/H)+1}static validatePagination($,H){if($<1)throw Error("Page must be greater than 0");if(H<1)throw Error("Limit must be greater than 0");if(H>1000)throw Error("Limit cannot exceed 1000")}static createPaginatedResult($,H,J,Q){let X=this.calculateMeta(H,J,Q);return{data:$,total:X.total,page:X.page,limit:X.limit,totalPages:X.totalPages,hasNext:X.hasNext,hasPrev:X.hasPrev}}static extractPaginationFromQuery($){let H=parseInt($.page)||1,J=parseInt($.limit)||10;return this.validatePagination(H,J),{page:H,limit:J}}}class H3{static encodeCursor($){return Buffer.from(JSON.stringify($)).toString("base64")}static decodeCursor($){try{return JSON.parse(Buffer.from($,"base64").toString())}catch(H){throw Error("Invalid cursor format")}}static createCursor($,H="id"){let J=$[H];if(J===void 0||J===null)throw Error(`Cursor field '${H}' not found in entity`);return this.encodeCursor({[H]:J})}static extractCursorValue($,H="id"){return this.decodeCursor($)[H]}static createCursorPaginatedResult($,H,J="id"){let Q=$.length>H,X=!1,Y=Q?$.slice(0,H):$,W,G;if(Y.length>0){if(Q)W=this.createCursor(Y[Y.length-1],J)}return{data:Y,nextCursor:W,prevCursor:G,hasNext:Q,hasPrev:!1,limit:H}}}class YB{baseQuery;options={};constructor($={}){this.baseQuery=$;this.options={...$}}offset($,H){return U4.validatePagination($,H),this.options.pagination={page:$,limit:H,offset:U4.calculateOffset($,H)},this}cursor($,H,J="id"){if(H<1||H>1000)throw Error("Limit must be between 1 and 1000");let Q=H3.extractCursorValue($,J);return this.options.where={...this.options.where,[J]:{gt:Q}},this.options.pagination={limit:H},this}orderBy($,H="asc"){return this.options.orderBy={field:$,direction:H},this}orderByMultiple($){return this.options.orderBy=$.map((H)=>({field:H.field,direction:H.direction})),this}where($){return this.options.where={...this.options.where,...$},this}select($){return this.options.select=$,this}include($){return this.options.include=$,this}build(){return this.options}reset(){return this.options={...this.baseQuery},this}}function jC($=10,H=100){return function(J,Q,X){let Y=X.value;return X.value=async function(...W){let G=W[W.length-1];if(G&&typeof G==="object"&&(("page"in G)||("limit"in G))){let q=G.page||1,U=Math.min(G.limit||$,H);U4.validatePagination(q,U),G.pagination={page:q,limit:U,offset:U4.calculateOffset(q,U)}}return await Y.apply(this,W)},X}}class WB{static toApiResponse($,H){return{data:$.data,meta:{total:$.total,page:$.page,limit:$.limit,totalPages:$.totalPages},links:{first:H?`${H}?page=1&limit=${$.limit}`:null,last:H?`${H}?page=${$.totalPages}&limit=${$.limit}`:null,prev:$.hasPrev&&H?`${H}?page=${$.page-1}&limit=${$.limit}`:null,next:$.hasNext&&H?`${H}?page=${$.page+1}&limit=${$.limit}`:null}}}static toCursorApiResponse($,H){let J={data:$.data,meta:{limit:$.limit,hasNext:$.hasNext,hasPrev:$.hasPrev},cursors:{next:$.nextCursor,prev:$.prevCursor}};if(H)J.links={next:$.nextCursor?`${H}?cursor=${$.nextCursor}&limit=${$.limit}`:null,prev:$.prevCursor?`${H}?cursor=${$.prevCursor}&limit=${$.limit}`:null};return J}}d1();d1();var Eg=F0(Q$());function qB($,H){return(J)=>{let Q={entity:$,connection:H,transactional:!1};Reflect.defineMetadata("repository",Q,J)}}function UB($){return(H,J,Q)=>{let X=Q.value,Y={isolation:$?.isolation||"READ_COMMITTED",timeout:$?.timeout||30000,readOnly:$?.readOnly||!1,propagation:$?.propagation||"REQUIRED"};return Reflect.defineMetadata("transactional",Y,H,J),Q.value=async function(...W){return await M0().handleTransactional(this,J,W,X,W.find((q)=>q&&typeof q==="object"&&q.req&&q.res))},Q}}function BB($){return(H)=>{let J={tableName:$||H.name.toLowerCase()};Reflect.defineMetadata("entity",J,H)}}function wB($){return(H,J)=>{let Q={name:$?.name||J.toString(),type:$?.type||"string",nullable:$?.nullable||!1,unique:$?.unique||!1,primary:$?.primary||!1};Reflect.defineMetadata("column",Q,H,J)}}d1();class d0{static instance;constructor(){}static getInstance(){if(!d0.instance)d0.instance=new d0;return d0.instance}async intercept($,H,J,Q,X){let Y=M0();if(Reflect.getMetadata("transactional",$,H))return await Y.handleTransactional($,H,J,Q,X);return await Q.apply($,J)}createTransactionalProxy($,H){return new Proxy($,{get:(J,Q)=>{let X=J[Q];if(typeof X==="function")return async(...Y)=>{return await this.intercept(J,Q,Y,X.bind(J),H)};return X}})}}function J3(){return async($,H)=>{let J=d0.getInstance();$.set("transactionInterceptor",J),$.set("transactionContext",$),await H()}}function DB($){return $.get("transactionInterceptor")||d0.getInstance()}function OC($,H){return DB($).createTransactionalProxy(H,$)}var VB;((W)=>{W.REQUIRED="REQUIRED";W.REQUIRES_NEW="REQUIRES_NEW";W.SUPPORTS="SUPPORTS";W.NOT_SUPPORTED="NOT_SUPPORTED";W.MANDATORY="MANDATORY";W.NEVER="NEVER"})(VB||={});class _B{shouldStartNewTransaction($,H){switch($){case"REQUIRED":return!H;case"REQUIRES_NEW":return!0;case"SUPPORTS":return!1;case"NOT_SUPPORTED":return!1;case"MANDATORY":if(!H)throw Error("Transaction is mandatory but no existing transaction found");return!1;case"NEVER":if(H)throw Error("Transaction is not allowed but existing transaction found");return!1;default:return!H}}shouldSuspendTransaction($,H){return $==="NOT_SUPPORTED"&&!!H}shouldExecuteInTransaction($,H){switch($){case"REQUIRED":case"REQUIRES_NEW":case"MANDATORY":return!0;case"SUPPORTS":return!!H;case"NOT_SUPPORTED":case"NEVER":return!1;default:return!0}}shouldRollbackForError($,H){if(H.noRollbackFor){for(let J of H.noRollbackFor)if($ instanceof J)return!1}if(H.rollbackFor){for(let J of H.rollbackFor)if($ instanceof J)return!0;return!1}return!0}}function z$($){return(H,J,Q)=>{let X=Q.value,Y={isolation:$?.isolation||"READ_COMMITTED",timeout:$?.timeout||30000,readOnly:$?.readOnly||!1,propagation:$?.propagation||"REQUIRED",rollbackFor:$?.rollbackFor,noRollbackFor:$?.noRollbackFor};return Reflect.defineMetadata("transactional",Y,H,J),Q.value=async function(...W){let{getGlobalTransactionManager:G}=await Promise.resolve().then(() => (d1(),GB));return await G().handleTransactional(this,J,W,X,W.find((U)=>U&&typeof U==="object"&&U.req&&U.res))},Q}}function ZC($){return z$({...$,propagation:"REQUIRED"})}function LC($){return z$({...$,propagation:"REQUIRES_NEW"})}function MC($){return z$({...$,propagation:"SUPPORTS"})}function SC($){return z$({...$,propagation:"NOT_SUPPORTED"})}function CC($){return z$({...$,propagation:"MANDATORY"})}function PC($){return z$({...$,propagation:"NEVER"})}var FB;((B)=>{B.BEFORE_BEGIN="BEFORE_BEGIN";B.AFTER_BEGIN="AFTER_BEGIN";B.BEFORE_COMMIT="BEFORE_COMMIT";B.AFTER_COMMIT="AFTER_COMMIT";B.BEFORE_ROLLBACK="BEFORE_ROLLBACK";B.AFTER_ROLLBACK="AFTER_ROLLBACK";B.BEFORE_SAVEPOINT="BEFORE_SAVEPOINT";B.AFTER_SAVEPOINT="AFTER_SAVEPOINT";B.BEFORE_ROLLBACK_TO_SAVEPOINT="BEFORE_ROLLBACK_TO_SAVEPOINT";B.AFTER_ROLLBACK_TO_SAVEPOINT="AFTER_ROLLBACK_TO_SAVEPOINT"})(FB||={});class Q3{listeners=[];beginListeners=[];commitListeners=[];rollbackListeners=[];savepointListeners=[];addListener($){this.listeners.push($)}removeListener($){let H=this.listeners.indexOf($);if(H>-1)this.listeners.splice(H,1)}addBeginListener($){this.beginListeners.push($)}addCommitListener($){this.commitListeners.push($)}addRollbackListener($){this.rollbackListeners.push($)}addSavepointListener($){this.savepointListeners.push($)}async emitEvent($){for(let H of this.listeners)try{await H.onTransactionEvent($)}catch(J){console.error("Error in transaction event listener:",J)}await this.emitSpecificEvent($)}async emitSpecificEvent($){switch($.type){case"BEFORE_BEGIN":for(let H of this.beginListeners)if(H.onBeforeBegin)try{await H.onBeforeBegin($.context)}catch(J){console.error("Error in before begin listener:",J)}break;case"AFTER_BEGIN":for(let H of this.beginListeners)if(H.onAfterBegin)try{await H.onAfterBegin($.context)}catch(J){console.error("Error in after begin listener:",J)}break;case"BEFORE_COMMIT":for(let H of this.commitListeners)if(H.onBeforeCommit)try{await H.onBeforeCommit($.context)}catch(J){console.error("Error in before commit listener:",J)}break;case"AFTER_COMMIT":for(let H of this.commitListeners)if(H.onAfterCommit)try{await H.onAfterCommit($.context)}catch(J){console.error("Error in after commit listener:",J)}break;case"BEFORE_ROLLBACK":for(let H of this.rollbackListeners)if(H.onBeforeRollback)try{await H.onBeforeRollback($.context,$.error)}catch(J){console.error("Error in before rollback listener:",J)}break;case"AFTER_ROLLBACK":for(let H of this.rollbackListeners)if(H.onAfterRollback)try{await H.onAfterRollback($.context,$.error)}catch(J){console.error("Error in after rollback listener:",J)}break;case"BEFORE_SAVEPOINT":for(let H of this.savepointListeners)if(H.onBeforeSavepoint)try{await H.onBeforeSavepoint($.context,$.metadata?.name)}catch(J){console.error("Error in before savepoint listener:",J)}break;case"AFTER_SAVEPOINT":for(let H of this.savepointListeners)if(H.onAfterSavepoint)try{await H.onAfterSavepoint($.context,$.metadata?.name)}catch(J){console.error("Error in after savepoint listener:",J)}break;case"BEFORE_ROLLBACK_TO_SAVEPOINT":for(let H of this.savepointListeners)if(H.onBeforeRollbackToSavepoint)try{await H.onBeforeRollbackToSavepoint($.context,$.metadata?.name)}catch(J){console.error("Error in before rollback to savepoint listener:",J)}break;case"AFTER_ROLLBACK_TO_SAVEPOINT":for(let H of this.savepointListeners)if(H.onAfterRollbackToSavepoint)try{await H.onAfterRollbackToSavepoint($.context,$.metadata?.name)}catch(J){console.error("Error in after rollback to savepoint listener:",J)}break}}clearAllListeners(){this.listeners=[],this.beginListeners=[],this.commitListeners=[],this.rollbackListeners=[],this.savepointListeners=[]}}function KC(){return($,H)=>{Reflect.defineMetadata("transaction-event","begin",$,H)}}function IC(){return($,H)=>{Reflect.defineMetadata("transaction-event","commit",$,H)}}function TC(){return($,H)=>{Reflect.defineMetadata("transaction-event","rollback",$,H)}}class A8{logger;constructor($=console.log){this.logger=$}async onTransactionEvent($){let H=`Transaction ${$.type}: ${$.context.id}`,J={timestamp:$.timestamp,context:{id:$.context.id,startTime:$.context.startTime,isolation:$.context.isolation,timeout:$.context.timeout,readOnly:$.context.readOnly,savepoints:$.context.savepoints,rollbackOnly:$.context.rollbackOnly},metadata:$.metadata,error:$.error?.message};this.logger(H,J)}}class R8{metrics={totalTransactions:0,committedTransactions:0,rolledBackTransactions:0,averageDuration:0,totalDuration:0};async onTransactionEvent($){switch($.type){case"AFTER_BEGIN":this.metrics.totalTransactions++;break;case"AFTER_COMMIT":this.metrics.committedTransactions++,this.updateDuration($.context);break;case"AFTER_ROLLBACK":this.metrics.rolledBackTransactions++,this.updateDuration($.context);break}}updateDuration($){let H=Date.now()-$.startTime.getTime();this.metrics.totalDuration+=H,this.metrics.averageDuration=this.metrics.totalDuration/(this.metrics.committedTransactions+this.metrics.rolledBackTransactions)}getMetrics(){return{...this.metrics}}resetMetrics(){this.metrics={totalTransactions:0,committedTransactions:0,rolledBackTransactions:0,averageDuration:0,totalDuration:0}}}var N$=new Q3;d1();class X3{name="transaction";version="1.0.0";config;metricsListener;constructor($){this.config={enableLogging:!0,enableMetrics:!0,defaultIsolation:"READ_COMMITTED",defaultTimeout:30000,...$}}async install($){this.setupTransactionManager(),$.use(J3()),this.setupEventListeners(),this.registerTransactionUtilities($),console.log("✅ Transaction plugin installed successfully")}setupTransactionManager(){if(this.config.customTransactionManager)m1(this.config.customTransactionManager);else m1(new F$)}setupEventListeners(){if(this.config.enableLogging){let $=new A8;N$.addListener($)}if(this.config.enableMetrics)this.metricsListener=new R8,N$.addListener(this.metricsListener)}registerTransactionUtilities($){let H=$.getContainer();class J{}class Q{}class X{}if(H.register(J,{scope:"singleton",factory:()=>N$}),this.metricsListener)H.register(Q,{scope:"singleton",factory:()=>({getMetrics:()=>this.metricsListener.getMetrics(),resetMetrics:()=>this.metricsListener.resetMetrics()})});H.register(X,{scope:"singleton",factory:()=>({executeInTransaction:async(Y)=>{let W=M0(),G=await W.begin();try{let q=await Y();if(G.rollbackOnly)throw await W.rollback(G),Error("Transaction marked for rollback");return await W.commit(G),q}catch(q){throw await W.rollback(G),q}},getCurrentTransaction:()=>{return null},isInTransaction:()=>{return!1}})})}getMetrics(){return this.metricsListener?.getMetrics()}resetMetrics(){this.metricsListener?.resetMetrics()}addEventListener($){N$.addListener($)}removeEventListener($){N$.removeListener($)}}function bC($){return new X3($)}class zB{transactionManager;constructor($){this.transactionManager=$}async executeInTransaction($){let H=await this.transactionManager.begin();try{let J=await $();if(H.rollbackOnly)throw await this.transactionManager.rollback(H),Error("Transaction marked for rollback");return await this.transactionManager.commit(H),J}catch(J){throw await this.transactionManager.rollback(H),J}}async createSavepoint($){}async rollbackToSavepoint($){}setRollbackOnly(){}isInTransaction(){return!1}}class NB{transactionManager;defaultOptions;constructor($,H){this.transactionManager=$;this.defaultOptions=H}async execute($,H){let J={...this.defaultOptions,...H},Q=await this.transactionManager.begin(J);try{let X=await $();if(Q.rollbackOnly)throw await this.transactionManager.rollback(Q),Error("Transaction marked for rollback");return await this.transactionManager.commit(Q),X}catch(X){throw await this.transactionManager.rollback(Q),X}}async executeReadOnly($){return this.execute($,{readOnly:!0})}async executeWithIsolation($,H){return this.execute($,{isolation:H})}}class B4{modelSchemas=new Map;generateModelSchema($){if(this.modelSchemas.has($.name))return this.modelSchemas.get($.name);let H={};for(let Q of $.fields)H[Q.name]=this.generateFieldSchema(Q);let J=R.object(H);return this.modelSchemas.set($.name,J),J}generateFieldSchema($){let H=this.getBaseSchema($.type);if($.isList)H=R.array(H);if($.isOptional)H=H.optional();if($.isUnique)H=H.describe(`Unique field: ${$.name}`);return H}getBaseSchema($){switch($.toLowerCase()){case"string":return R.string();case"int":case"integer":return R.number().int();case"float":case"decimal":return R.number();case"boolean":case"bool":return R.boolean();case"datetime":case"timestamp":return R.date();case"json":return R.record(R.any());case"bytes":return R.instanceof(Buffer);case"bigint":return R.bigint();default:return R.string()}}generateCreateSchema($){let H={};for(let J of $.fields){if(J.isId&&J.hasDefaultValue)continue;if(J.name==="createdAt"||J.name==="updatedAt")continue;H[J.name]=this.generateFieldSchema(J)}return R.object(H)}generateUpdateSchema($){let H={};for(let J of $.fields){if(J.isId)continue;if(J.name==="updatedAt")continue;let Q=this.generateFieldSchema(J);if(!Q.isOptional())Q=Q.optional();H[J.name]=Q}return R.object(H)}static parsePrismaSchema($){let H=[],J=$.split(`
|
|
151
151
|
`),Q=null,X=!1;for(let Y of J){let W=Y.trim();if(W.startsWith("model ")){Q={name:W.split(" ")[1],fields:[],relations:[]},X=!0;continue}if(W==="}"&&X&&Q){H.push(Q),Q=null,X=!1;continue}if(X&&Q&&W&&!W.startsWith("//")){let G=this.parseField(W);if(G)Q.fields.push(G)}}return H}static parseField($){let H=$.trim().split(/\s+/);if(H.length<2)return null;let J=H[0],Q=H[1],X=Q.includes("?"),Y=Q.includes("[]"),W=Q.replace("?","").replace("[]",""),G=$.includes("@")?$.split("@").slice(1):[],q=G.some((w)=>w.startsWith("id")),U=G.some((w)=>w.startsWith("unique")),B=G.some((w)=>w.startsWith("default"));return{name:J,type:W,isOptional:X,isList:Y,isId:q,isUnique:U,hasDefaultValue:B}}generateAllSchemas($){return{base:this.generateModelSchema($),create:this.generateCreateSchema($),update:this.generateUpdateSchema($)}}}d1();class A9 extends Q0{client;prismaTransactions=new Map;constructor($){super();this.client=$}async begin($){let H=this.createTransactionContext($);return this.prismaTransactions.set(H.id,{options:$,startTime:H.startTime}),H}async commit($){this.prismaTransactions.delete($.id),this.removeTransactionContext($)}async rollback($){this.prismaTransactions.delete($.id),this.removeTransactionContext($)}async savepoint($,H){$.savepoints.push(H);let J=this.prismaTransactions.get($.id);if(J)J.savepoints=J.savepoints||[],J.savepoints.push(H)}async rollbackToSavepoint($,H){let J=$.savepoints.indexOf(H);if(J===-1)throw Error(`Savepoint ${H} not found`);$.savepoints=$.savepoints.slice(0,J+1);let Q=this.prismaTransactions.get($.id);if(Q&&Q.savepoints)Q.savepoints=Q.savepoints.slice(0,J+1)}async executeInTransaction($,H){let J={};if(H?.timeout)J.timeout=H.timeout;if(H?.isolation){let Q={READ_UNCOMMITTED:"ReadUncommitted",READ_COMMITTED:"ReadCommitted",REPEATABLE_READ:"RepeatableRead",SERIALIZABLE:"Serializable"};J.isolationLevel=Q[H.isolation]}return await this.client.$transaction($,J)}async handleTransactional($,H,J,Q,X){let Y=Reflect.getMetadata("transactional",$,H);if(!Y)return Q.apply($,J);if(X?this.getRequestTransaction(X):null)return Q.apply($,J);return await this.executeInTransaction(async(G)=>{let q=await this.begin(Y);if(X)this.setRequestTransaction(X,q);try{let U=await this.injectTransactionClient($,J,Q,G);if(q.rollbackOnly)throw Error("Transaction marked for rollback");return U}catch(U){throw this.setRollbackOnly(q),U}finally{if(X)this.clearRequestTransaction(X);await this.commit(q)}},Y)}async injectTransactionClient($,H,J,Q){if($.repositories){let X={...$.repositories};try{for(let[Y,W]of Object.entries($.repositories))if(W&&typeof W==="object"&&"client"in W){W.client=Q;let G=W.modelName;if(G&&Q[G.toLowerCase()])W.delegate=Q[G.toLowerCase()]}return await J.apply($,H)}finally{$.repositories=X}}return await J.apply($,H)}createTransactionalRepository($,H){let J=new $(H);if(J&&typeof J==="object"&&"withTransaction"in J){let Q=J.withTransaction;J.withTransaction=async(X)=>{return await this.executeInTransaction(async(Y)=>{let W=new $({...H,client:Y,delegate:Y[H.model.toLowerCase()]});return await X(W)})}}return J}}d1();var w4=F0(require("fs")),AB=F0(require("path"));class E8{name="prisma";version="1.0.0";client;config;schemaGenerator;transactionManager;models=new Map;constructor($,H){this.client=$,this.config={generateZodSchemas:!0,schemaPath:"./prisma/schema.prisma",outputPath:"./src/generated/zod-schemas.ts",...H},this.schemaGenerator=new B4,this.transactionManager=new A9($)}async install($){if(await this.client.$connect(),m1(this.transactionManager),this.config.generateZodSchemas&&this.config.schemaPath)await this.parseAndGenerateSchemas();this.registerRepositoryFactory($),this.registerShutdownHook($),console.log("✅ Prisma plugin installed successfully")}async parseAndGenerateSchemas(){try{if(!w4.default.existsSync(this.config.schemaPath)){console.warn(`⚠️ Prisma schema not found at ${this.config.schemaPath}`);return}let $=w4.default.readFileSync(this.config.schemaPath,"utf-8"),H=B4.parsePrismaSchema($);for(let J of H){this.models.set(J.name,J);let Q=this.schemaGenerator.generateAllSchemas(J);J.zodSchema=Q.base}if(this.config.outputPath)await this.generateZodSchemaFile();console.log(`\uD83D\uDCDD Generated Zod schemas for ${H.length} models`)}catch($){console.error("❌ Failed to parse Prisma schema:",$)}}async generateZodSchemaFile(){let $=AB.default.dirname(this.config.outputPath);if(!w4.default.existsSync($))w4.default.mkdirSync($,{recursive:!0});let H=`// Auto-generated Zod schemas from Prisma schema
|
|
152
152
|
`;H+=`// Do not edit this file manually
|
|
153
153
|
|
|
@@ -162,6 +162,6 @@ ${X.join(`
|
|
|
162
162
|
`,H+=`export type ${J}Create = z.infer<typeof ${J}CreateSchema>;
|
|
163
163
|
`,H+=`export type ${J}Update = z.infer<typeof ${J}UpdateSchema>;
|
|
164
164
|
|
|
165
|
-
`}w4.default.writeFileSync(this.config.outputPath,H)}zodSchemaToString($){return"z.object({})"}registerRepositoryFactory($){let H=$.getContainer();class J{}class Q{}H.register(J,{scope:"singleton",factory:()=>({create:(X,Y)=>{let W=this.client[X.toLowerCase()];if(!W)throw Error(`Model ${X} not found in Prisma client`);return new Z0({client:this.client,delegate:W,model:X,zodSchema:Y})}})}),H.register(Q,{scope:"singleton",factory:()=>this.transactionManager})}registerShutdownHook($){process.on("SIGINT",async()=>{console.log("\uD83D\uDD0C Disconnecting from database..."),await this.client.$disconnect(),process.exit(0)}),process.on("SIGTERM",async()=>{console.log("\uD83D\uDD0C Disconnecting from database..."),await this.client.$disconnect(),process.exit(0)})}getModel($){return this.models.get($)}getModels(){return this.models}createRepository($,H){let J=this.client[$.toLowerCase()];if(!J)throw Error(`Model ${$} not found in Prisma client`);return new Z0({client:this.client,delegate:J,model:$,zodSchema:H})}getClient(){return this.client}getTransactionManager(){return this.transactionManager}}function RB($,H){return new E8($,H)}d1();class R9 extends Q0{dataSource;activeQueryRunners=new Map;constructor($){super();this.dataSource=$}async begin($){let H=this.createTransactionContext($),J=this.dataSource.createQueryRunner();return await J.connect(),await J.startTransaction(),this.activeQueryRunners.set(H.id,J),H}async commit($){let H=this.activeQueryRunners.get($.id);if(!H)throw Error(`Transaction ${$.id} not found`);try{if($.rollbackOnly)await H.rollbackTransaction();else await H.commitTransaction()}finally{await H.release(),this.activeQueryRunners.delete($.id),this.removeTransactionContext($)}}async rollback($){let H=this.activeQueryRunners.get($.id);if(!H)throw Error(`Transaction ${$.id} not found`);try{if(H.isTransactionActive)await H.rollbackTransaction()}finally{await H.release(),this.activeQueryRunners.delete($.id),this.removeTransactionContext($)}}async savepoint($,H){let J=this.activeQueryRunners.get($.id);if(!J)throw Error(`Transaction ${$.id} not found`);await J.manager.query(`SAVEPOINT ${H}`),$.savepoints.push(H)}async rollbackToSavepoint($,H){let J=this.activeQueryRunners.get($.id);if(!J)throw Error(`Transaction ${$.id} not found`);let Q=$.savepoints.indexOf(H);if(Q===-1)throw Error(`Savepoint ${H} not found`);await J.manager.query(`ROLLBACK TO SAVEPOINT ${H}`),$.savepoints=$.savepoints.slice(0,Q+1)}async executeInTransaction($,H){return await this.dataSource.transaction(async(J)=>{return await $(J)})}async handleTransactional($,H,J,Q,X){let Y=Reflect.getMetadata("transactional",$,H);if(!Y)return Q.apply($,J);let W=X?this.getRequestTransaction(X):null;if(W)return this.handleNestedTransaction(W,$,J,Q);return await this.executeInTransaction(async(G)=>{let q=await this.begin(Y);if(X)this.setRequestTransaction(X,q);try{let U=await this.injectTransactionManager($,J,Q,G);if(q.rollbackOnly)throw Error("Transaction marked for rollback");return U}catch(U){throw this.setRollbackOnly(q),U}finally{if(X)this.clearRequestTransaction(X);this.removeTransactionContext(q)}},Y)}async handleNestedTransaction($,H,J,Q){let X=`sp_${Date.now()}_${Math.random().toString(36).substring(2,11)}`;try{return await this.savepoint($,X),await Q.apply(H,J)}catch(Y){throw await this.rollbackToSavepoint($,X),Y}}async injectTransactionManager($,H,J,Q){if($.repositories){let X={...$.repositories};try{for(let[Y,W]of Object.entries($.repositories))if(W&&typeof W==="object"&&"dataSource"in W){let G=W.entity,q=Q.getRepository?Q.getRepository(G):W.repository;$.repositories[Y]=new W.constructor({dataSource:W.dataSource,repository:q,entity:G,zodSchema:W.schema})}return await J.apply($,H)}finally{$.repositories=X}}return await J.apply($,H)}createTransactionalRepository($,H){let J=new $(H);if(J&&typeof J==="object"&&"withTransaction"in J){let Q=J.withTransaction;J.withTransaction=async(X)=>{return await this.executeInTransaction(async(Y)=>{let W=Y.getRepository?Y.getRepository(H.entity):H.repository,G=new $({...H,repository:W});return await X(G)})}}return J}getQueryRunner($){return this.activeQueryRunners.get($.id)}isTransactionActive($){let H=this.activeQueryRunners.get($.id);return H?H.isTransactionActive:!1}getDataSource(){return this.dataSource}}d1();class j8{name="typeorm";version="1.0.0";dataSource;config;transactionManager;entities=new Map;constructor($,H){this.dataSource=$,this.config={synchronize:!1,logging:!1,migrationsRun:!1,dropSchema:!1,cache:!1,...H},this.transactionManager=new R9($)}async install($){if(!this.dataSource.isInitialized)await this.dataSource.initialize();m1(this.transactionManager),this.extractEntityMetadata(),this.registerRepositoryFactory($),this.registerMigrationUtilities($),this.registerShutdownHook($),console.log("✅ TypeORM plugin installed successfully")}extractEntityMetadata(){try{let $=this.dataSource.entityMetadatas||this.dataSource.manager.connection?.entityMetadatas||[];for(let H of $){let J={name:H.name,tableName:H.tableName,columns:H.columns?.map((Q)=>({propertyName:Q.propertyName,type:Q.type,isPrimary:Q.isPrimary,isGenerated:Q.isGenerated,isNullable:Q.isNullable,isUnique:Q.isUnique,length:Q.length,default:Q.default}))||[],relations:H.relations?.map((Q)=>({propertyName:Q.propertyName,type:Q.relationType,target:Q.inverseEntityMetadata?.name||"unknown",inverseSide:Q.inverseSidePropertyPath,joinColumn:Q.joinColumns?.[0]?.databaseName,joinTable:Q.joinTableName}))||[]};this.entities.set(H.name,J)}console.log(`\uD83D\uDCDD Extracted metadata for ${this.entities.size} entities`)}catch($){console.error("❌ Failed to extract entity metadata:",$)}}registerRepositoryFactory($){let H=$.getContainer();class J{}class Q{}class X{}class Y{}H.register(J,{scope:"singleton",factory:()=>({create:(W,G)=>{let q=this.dataSource.getRepository(W);return new L0({dataSource:this.dataSource,repository:q,entity:W,zodSchema:G})}})}),H.register(Q,{scope:"singleton",factory:()=>this.dataSource}),H.register(X,{scope:"request",factory:()=>this.dataSource.manager}),H.register(Y,{scope:"singleton",factory:()=>this.transactionManager})}registerMigrationUtilities($){let H=$.getContainer();class J{}class Q{}H.register(J,{scope:"singleton",factory:()=>({run:async()=>{if(this.config.migrationsRun&&this.dataSource.runMigrations)await this.dataSource.runMigrations(),console.log("✅ Migrations executed successfully")},revert:async()=>{if(this.dataSource.undoLastMigration)await this.dataSource.undoLastMigration(),console.log("✅ Last migration reverted successfully")},generate:async(X)=>{console.log(`\uD83D\uDCDD Generate migration: ${X}`)}})}),H.register(Q,{scope:"singleton",factory:()=>({seed:async(X)=>{for(let Y of X)if(typeof Y.run==="function")await Y.run(this.dataSource);console.log("✅ Database seeded successfully")}})})}registerShutdownHook($){process.on("SIGINT",async()=>{if(console.log("\uD83D\uDD0C Closing database connection..."),this.dataSource.isInitialized)await this.dataSource.destroy();process.exit(0)}),process.on("SIGTERM",async()=>{if(console.log("\uD83D\uDD0C Closing database connection..."),this.dataSource.isInitialized)await this.dataSource.destroy();process.exit(0)})}getEntity($){return this.entities.get($)}getEntities(){return this.entities}createRepository($,H){let J=this.dataSource.getRepository($);return new L0({dataSource:this.dataSource,repository:J,entity:$,zodSchema:H})}getDataSource(){return this.dataSource}getTransactionManager(){return this.transactionManager}async runMigrations(){if(this.dataSource.runMigrations)await this.dataSource.runMigrations(),console.log("✅ Migrations executed successfully");else console.warn("⚠️ Migration support not available")}async revertMigration(){if(this.dataSource.undoLastMigration)await this.dataSource.undoLastMigration(),console.log("✅ Last migration reverted successfully");else console.warn("⚠️ Migration revert not available")}async synchronize(){if(this.config.synchronize&&this.dataSource.synchronize)await this.dataSource.synchronize(),console.log("✅ Database schema synchronized");else console.warn("⚠️ Schema synchronization is disabled or not available")}async dropSchema(){if(this.config.dropSchema&&this.dataSource.dropDatabase)await this.dataSource.dropDatabase(),console.log("✅ Database schema dropped");else console.warn("⚠️ Schema dropping is disabled or not available")}}function EB($,H){return new j8($,H)}class H3{}var Qy=F0(Q$());function jB($){return(H)=>{let J={name:$?.name||H.name,tableName:$?.tableName||H.name.toLowerCase(),schema:$?.schema,database:$?.database,synchronize:$?.synchronize};Reflect.defineMetadata("typeorm:entity",J,H)}}d1();class E9 extends Q0{database;drizzleTransactions=new Map;constructor($){super();this.database=$}async begin($){let H=this.createTransactionContext($);return this.drizzleTransactions.set(H.id,{options:$,startTime:H.startTime}),H}async commit($){this.drizzleTransactions.delete($.id),this.removeTransactionContext($)}async rollback($){this.drizzleTransactions.delete($.id),this.removeTransactionContext($)}async savepoint($,H){$.savepoints.push(H);let J=this.drizzleTransactions.get($.id);if(J)J.savepoints=J.savepoints||[],J.savepoints.push(H)}async rollbackToSavepoint($,H){let J=$.savepoints.indexOf(H);if(J===-1)throw Error(`Savepoint ${H} not found`);$.savepoints=$.savepoints.slice(0,J+1);let Q=this.drizzleTransactions.get($.id);if(Q&&Q.savepoints)Q.savepoints=Q.savepoints.slice(0,J+1)}async executeInTransaction($,H){return await this.database.transaction(async(J)=>{return await $(J)})}async handleTransactional($,H,J,Q,X){let Y=Reflect.getMetadata("transactional",$,H);if(!Y)return Q.apply($,J);if(X?this.getRequestTransaction(X):null)return Q.apply($,J);return await this.executeInTransaction(async(G)=>{let q=await this.begin(Y);if(X)this.setRequestTransaction(X,q);try{let U=await this.injectTransactionDatabase($,J,Q,G);if(q.rollbackOnly)throw Error("Transaction marked for rollback");return U}catch(U){throw this.setRollbackOnly(q),U}finally{if(X)this.clearRequestTransaction(X);await this.commit(q)}},Y)}async injectTransactionDatabase($,H,J,Q){if($.repositories){let X={...$.repositories};try{for(let[Y,W]of Object.entries($.repositories))if(W&&typeof W==="object"&&"database"in W){let{table:G,schema:q}=W;$.repositories[Y]=new W.constructor({database:Q,table:G,zodSchema:q})}return await J.apply($,H)}finally{$.repositories=X}}return await J.apply($,H)}createTransactionalRepository($,H){let J=new $(H);if(J&&typeof J==="object"&&"withTransaction"in J){let Q=J.withTransaction;J.withTransaction=async(X)=>{return await this.executeInTransaction(async(Y)=>{let W=new $({...H,database:Y});return await X(W)})}}return J}async batch($){return await this.executeInTransaction(async(H)=>{let J=[];for(let Q of $){let X=await Q();J.push(X)}return J})}async executeWithRetry($,H={}){let{maxRetries:J=3,retryDelay:Q=1000,retryCondition:X=(W)=>W.code==="SERIALIZATION_FAILURE"||W.code==="DEADLOCK_DETECTED"}=H,Y;for(let W=0;W<=J;W++)try{return await this.executeInTransaction($)}catch(G){if(Y=G,W===J||!X(G))throw G;await new Promise((q)=>setTimeout(q,Q*Math.pow(2,W)))}throw Y}getDatabase(){return this.database}isInTransaction(){return this.drizzleTransactions.size>0}getActiveTransactionCount(){return this.drizzleTransactions.size}}d1();class O8{tableSchemas=new Map;convertTableToZod($){let H=$._.name;if(this.tableSchemas.has(H))return this.tableSchemas.get(H);let J={};for(let[X,Y]of Object.entries($._.columns))J[X]=this.convertColumnToZod(Y);let Q=R.object(J);return this.tableSchemas.set(H,Q),Q}convertColumnToZod($){let H=this.getBaseZodSchema($);if(!$._.notNull)H=H.nullable();if($._.hasDefault||!$._.notNull)H=H.optional();return H}getBaseZodSchema($){let H=$._.dataType.toLowerCase(),J=$._.columnType.toLowerCase();if($._.enumValues&&$._.enumValues.length>0)return R.enum($._.enumValues);switch(J){case"serial":case"bigserial":return R.number().int().positive();case"boolean":return R.boolean();case"date":return R.date();case"timestamp":case"timestamptz":return R.date();case"json":case"jsonb":return R.record(R.any());case"uuid":return R.string().uuid();case"text":case"varchar":case"char":return R.string();case"integer":case"int":case"int4":return R.number().int();case"bigint":case"int8":return R.bigint();case"smallint":case"int2":return R.number().int().min(-32768).max(32767);case"real":case"float4":return R.number();case"double precision":case"float8":return R.number();case"decimal":case"numeric":return R.number();case"bytea":return R.instanceof(Buffer);default:return this.getBaseZodSchemaByDataType(H)}}getBaseZodSchemaByDataType($){switch($){case"string":case"text":return R.string();case"number":case"integer":return R.number();case"boolean":return R.boolean();case"date":return R.date();case"json":return R.record(R.any());case"buffer":return R.instanceof(Buffer);case"bigint":return R.bigint();default:return R.string()}}generateCreateSchema($){let H={};for(let[J,Q]of Object.entries($._.columns)){if(Q._.isPrimaryKey&&Q._.hasDefault)continue;if(Q._.columnType.includes("serial"))continue;H[J]=this.convertColumnToZod(Q)}return R.object(H)}generateUpdateSchema($){let H={};for(let[J,Q]of Object.entries($._.columns)){if(Q._.isPrimaryKey)continue;let X=this.convertColumnToZod(Q);if(!X.isOptional())X=X.optional();H[J]=X}return R.object(H)}extractTableMetadata($){let H=[];for(let[J,Q]of Object.entries($._.columns))H.push({name:J,dataType:Q._.dataType,isPrimaryKey:Q._.isPrimaryKey,isNotNull:Q._.notNull,hasDefault:Q._.hasDefault,isUnique:Q._.isUnique,isAutoIncrement:Q._.columnType.includes("serial"),enumValues:Q._.enumValues});return{name:$._.name,schema:$._.schema,columns:H,relations:[],zodSchema:this.convertTableToZod($)}}generateAllSchemas($){return{base:this.convertTableToZod($),create:this.generateCreateSchema($),update:this.generateUpdateSchema($)}}clearCache(){this.tableSchemas.clear()}getCachedSchema($){return this.tableSchemas.get($)}}class J3{name="drizzle";version="1.0.0";database;config;transactionManager;schemaConverter;tables=new Map;tableMetadata=new Map;logger=o0({component:"DrizzlePlugin"});constructor($,H){this.database=$,this.config={logger:!1,mode:"default",...H},this.transactionManager=new E9($),this.schemaConverter=new O8}async install($){try{if(this.logger.info("Installing Drizzle ORM plugin..."),m1(this.transactionManager),this.logger.debug("Global transaction manager configured"),this.config.schema)this.registerSchema(this.config.schema);this.registerRepositoryFactory($),this.registerDatabaseUtilities($),this.logger.info("✅ Drizzle plugin installed successfully")}catch(H){let J=H instanceof Error?H:Error(String(H));throw this.logger.error("Failed to install Drizzle plugin",J),Error(`Drizzle plugin installation failed: ${J.message}`)}}registerSchema($){let H=0,J=0;for(let[Q,X]of Object.entries($))if(this.isValidDrizzleTable(X))try{this.tables.set(Q,X);let Y=this.schemaConverter.extractTableMetadata(X);this.tableMetadata.set(Q,Y),H++,this.logger.debug(`Registered table: ${Q}`)}catch(Y){let W=Y instanceof Error?Y:Error(String(Y));this.logger.error(`Failed to register table ${Q}`,W,{tableName:Q}),J++}else this.logger.debug(`Skipped invalid table: ${Q}`),J++;this.logger.info(`\uD83D\uDCDD Registered ${H} Drizzle table(s)${J>0?` (${J} skipped)`:""}`)}isValidDrizzleTable($){if(!$||typeof $!=="object")return!1;let H=$;if(!H._||typeof H._!=="object")return!1;if(typeof H._.name!=="string"||H._.name.trim().length===0)return!1;if(!H._.columns||typeof H._.columns!=="object")return!1;if(Object.keys(H._.columns).length===0)return this.logger.warn(`Table ${H._.name} has no columns defined`),!1;return!0}registerRepositoryFactory($){let H=$.getContainer();H.register("DrizzleRepositoryFactory",{scope:"singleton",factory:()=>({create:(J,Q)=>{let X=this.tables.get(J);if(!X)throw Error(`Table ${J} not found in Drizzle schema`);return new u1({database:this.database,table:X,zodSchema:Q||this.tableMetadata.get(J)?.zodSchema})},createFromTable:(J,Q)=>{return new u1({database:this.database,table:J,zodSchema:Q})}})}),H.register("DrizzleDatabase",{scope:"singleton",factory:()=>this.database}),H.register("TransactionManager",{scope:"singleton",factory:()=>this.transactionManager}),H.register("DrizzleSchemaConverter",{scope:"singleton",factory:()=>this.schemaConverter})}registerDatabaseUtilities($){let H=$.getContainer();H.register("QueryBuilder",{scope:"request",factory:()=>({select:(J)=>this.database.select(J),insert:(J)=>this.database.insert(J),update:(J)=>this.database.update(J),delete:(J)=>this.database.delete(J),raw:(J,Q)=>this.database.execute({sql:J,params:Q})})}),H.register("Seeder",{scope:"singleton",factory:()=>({seed:async(J)=>{let Q=o0({component:"Seeder"});try{Q.info(`Running ${J.length} seeder(s)...`),await this.transactionManager.executeInTransaction(async(X)=>{for(let Y of J)if(typeof Y.run==="function")Q.debug(`Running seeder: ${Y.constructor.name}`),await Y.run(X);else Q.warn(`Skipping invalid seeder (no run method): ${Y.constructor.name}`)}),Q.info("✅ Database seeded successfully")}catch(X){let Y=X instanceof Error?X:Error(String(X));throw Q.error("Failed to seed database",Y),Error(`Database seeding failed: ${Y.message}`)}}})})}getTable($){return this.tables.get($)}getTables(){return this.tables}getTableMetadata($){return this.tableMetadata.get($)}getAllTableMetadata(){return this.tableMetadata}createRepository($,H){let J=this.tables.get($);if(!J)throw Error(`Table ${$} not found in Drizzle schema`);return new u1({database:this.database,table:J,zodSchema:H||this.tableMetadata.get($)?.zodSchema})}createRepositoryFromTable($,H){return new u1({database:this.database,table:$,zodSchema:H})}getDatabase(){return this.database}getTransactionManager(){return this.transactionManager}getSchemaConverter(){return this.schemaConverter}addTable($,H){if(!this.isValidDrizzleTable(H))throw Error(`Invalid Drizzle table: ${$}`);this.tables.set($,H);let J=this.schemaConverter.extractTableMetadata(H);this.tableMetadata.set($,J),this.logger.debug(`Added table dynamically: ${$}`)}removeTable($){let H=this.tables.has($);if(this.tables.delete($),this.tableMetadata.delete($),H)this.logger.debug(`Removed table: ${$}`);return H}generateZodSchemas(){let $={};for(let[H,J]of this.tables){let Q=this.schemaConverter.generateAllSchemas(J);$[H]=Q}return $}async executeRaw($,H){try{return this.logger.debug("Executing raw SQL query"),await this.database.execute({sql:$,params:H})}catch(J){let Q=J instanceof Error?J:Error(String(J));throw this.logger.error("Raw SQL query failed",Q),Error(`SQL execution failed: ${Q.message}`)}}async executeInTransaction($){try{return await this.transactionManager.executeInTransaction($)}catch(H){let J=H instanceof Error?H:Error(String(H));throw this.logger.error("Transaction failed",J),H}}}class Z8{client;prefix;constructor($,H={}){this.client=$,this.prefix=H.prefix||"cache:"}async get($){let H=this.getFullKey($),J=await this.client.get(H);if(!J)return null;try{return JSON.parse(J)}catch{return J}}async set($,H,J=0){let Q=this.getFullKey($),X=JSON.stringify(H);if(J>0)await this.client.setex(Q,J,X);else await this.client.set(Q,X)}async delete($){let H=this.getFullKey($);return await this.client.del(H)>0}async has($){let H=this.getFullKey($);return await this.client.exists(H)>0}async clear(){let $=await this.keys("*");if($.length>0)await Promise.all($.map((H)=>this.delete(H)))}async deletePattern($){let H=await this.keys($);if(H.length===0)return 0;return await Promise.all(H.map((J)=>this.delete(J))),H.length}async keys($="*"){let H=this.getFullKey($);return(await this.client.keys(H)).map((Q)=>Q.substring(this.prefix.length))}getFullKey($){return`${this.prefix}${$}`}}function OB($,H){return new Z8($,H)}f4();
|
|
165
|
+
`}w4.default.writeFileSync(this.config.outputPath,H)}zodSchemaToString($){return"z.object({})"}registerRepositoryFactory($){let H=$.getContainer();class J{}class Q{}H.register(J,{scope:"singleton",factory:()=>({create:(X,Y)=>{let W=this.client[X.toLowerCase()];if(!W)throw Error(`Model ${X} not found in Prisma client`);return new Z0({client:this.client,delegate:W,model:X,zodSchema:Y})}})}),H.register(Q,{scope:"singleton",factory:()=>this.transactionManager})}registerShutdownHook($){process.on("SIGINT",async()=>{console.log("\uD83D\uDD0C Disconnecting from database..."),await this.client.$disconnect(),process.exit(0)}),process.on("SIGTERM",async()=>{console.log("\uD83D\uDD0C Disconnecting from database..."),await this.client.$disconnect(),process.exit(0)})}getModel($){return this.models.get($)}getModels(){return this.models}createRepository($,H){let J=this.client[$.toLowerCase()];if(!J)throw Error(`Model ${$} not found in Prisma client`);return new Z0({client:this.client,delegate:J,model:$,zodSchema:H})}getClient(){return this.client}getTransactionManager(){return this.transactionManager}}function RB($,H){return new E8($,H)}d1();class R9 extends Q0{dataSource;activeQueryRunners=new Map;constructor($){super();this.dataSource=$}async begin($){let H=this.createTransactionContext($),J=this.dataSource.createQueryRunner();return await J.connect(),await J.startTransaction(),this.activeQueryRunners.set(H.id,J),H}async commit($){let H=this.activeQueryRunners.get($.id);if(!H)throw Error(`Transaction ${$.id} not found`);try{if($.rollbackOnly)await H.rollbackTransaction();else await H.commitTransaction()}finally{await H.release(),this.activeQueryRunners.delete($.id),this.removeTransactionContext($)}}async rollback($){let H=this.activeQueryRunners.get($.id);if(!H)throw Error(`Transaction ${$.id} not found`);try{if(H.isTransactionActive)await H.rollbackTransaction()}finally{await H.release(),this.activeQueryRunners.delete($.id),this.removeTransactionContext($)}}async savepoint($,H){let J=this.activeQueryRunners.get($.id);if(!J)throw Error(`Transaction ${$.id} not found`);await J.manager.query(`SAVEPOINT ${H}`),$.savepoints.push(H)}async rollbackToSavepoint($,H){let J=this.activeQueryRunners.get($.id);if(!J)throw Error(`Transaction ${$.id} not found`);let Q=$.savepoints.indexOf(H);if(Q===-1)throw Error(`Savepoint ${H} not found`);await J.manager.query(`ROLLBACK TO SAVEPOINT ${H}`),$.savepoints=$.savepoints.slice(0,Q+1)}async executeInTransaction($,H){return await this.dataSource.transaction(async(J)=>{return await $(J)})}async handleTransactional($,H,J,Q,X){let Y=Reflect.getMetadata("transactional",$,H);if(!Y)return Q.apply($,J);let W=X?this.getRequestTransaction(X):null;if(W)return this.handleNestedTransaction(W,$,J,Q);return await this.executeInTransaction(async(G)=>{let q=await this.begin(Y);if(X)this.setRequestTransaction(X,q);try{let U=await this.injectTransactionManager($,J,Q,G);if(q.rollbackOnly)throw Error("Transaction marked for rollback");return U}catch(U){throw this.setRollbackOnly(q),U}finally{if(X)this.clearRequestTransaction(X);this.removeTransactionContext(q)}},Y)}async handleNestedTransaction($,H,J,Q){let X=`sp_${Date.now()}_${Math.random().toString(36).substring(2,11)}`;try{return await this.savepoint($,X),await Q.apply(H,J)}catch(Y){throw await this.rollbackToSavepoint($,X),Y}}async injectTransactionManager($,H,J,Q){if($.repositories){let X={...$.repositories};try{for(let[Y,W]of Object.entries($.repositories))if(W&&typeof W==="object"&&"dataSource"in W){let G=W.entity,q=Q.getRepository?Q.getRepository(G):W.repository;$.repositories[Y]=new W.constructor({dataSource:W.dataSource,repository:q,entity:G,zodSchema:W.schema})}return await J.apply($,H)}finally{$.repositories=X}}return await J.apply($,H)}createTransactionalRepository($,H){let J=new $(H);if(J&&typeof J==="object"&&"withTransaction"in J){let Q=J.withTransaction;J.withTransaction=async(X)=>{return await this.executeInTransaction(async(Y)=>{let W=Y.getRepository?Y.getRepository(H.entity):H.repository,G=new $({...H,repository:W});return await X(G)})}}return J}getQueryRunner($){return this.activeQueryRunners.get($.id)}isTransactionActive($){let H=this.activeQueryRunners.get($.id);return H?H.isTransactionActive:!1}getDataSource(){return this.dataSource}}d1();class j8{name="typeorm";version="1.0.0";dataSource;config;transactionManager;entities=new Map;constructor($,H){this.dataSource=$,this.config={synchronize:!1,logging:!1,migrationsRun:!1,dropSchema:!1,cache:!1,...H},this.transactionManager=new R9($)}async install($){if(!this.dataSource.isInitialized)await this.dataSource.initialize();m1(this.transactionManager),this.extractEntityMetadata(),this.registerRepositoryFactory($),this.registerMigrationUtilities($),this.registerShutdownHook($),console.log("✅ TypeORM plugin installed successfully")}extractEntityMetadata(){try{let $=this.dataSource.entityMetadatas||this.dataSource.manager.connection?.entityMetadatas||[];for(let H of $){let J={name:H.name,tableName:H.tableName,columns:H.columns?.map((Q)=>({propertyName:Q.propertyName,type:Q.type,isPrimary:Q.isPrimary,isGenerated:Q.isGenerated,isNullable:Q.isNullable,isUnique:Q.isUnique,length:Q.length,default:Q.default}))||[],relations:H.relations?.map((Q)=>({propertyName:Q.propertyName,type:Q.relationType,target:Q.inverseEntityMetadata?.name||"unknown",inverseSide:Q.inverseSidePropertyPath,joinColumn:Q.joinColumns?.[0]?.databaseName,joinTable:Q.joinTableName}))||[]};this.entities.set(H.name,J)}console.log(`\uD83D\uDCDD Extracted metadata for ${this.entities.size} entities`)}catch($){console.error("❌ Failed to extract entity metadata:",$)}}registerRepositoryFactory($){let H=$.getContainer();class J{}class Q{}class X{}class Y{}H.register(J,{scope:"singleton",factory:()=>({create:(W,G)=>{let q=this.dataSource.getRepository(W);return new L0({dataSource:this.dataSource,repository:q,entity:W,zodSchema:G})}})}),H.register(Q,{scope:"singleton",factory:()=>this.dataSource}),H.register(X,{scope:"request",factory:()=>this.dataSource.manager}),H.register(Y,{scope:"singleton",factory:()=>this.transactionManager})}registerMigrationUtilities($){let H=$.getContainer();class J{}class Q{}H.register(J,{scope:"singleton",factory:()=>({run:async()=>{if(this.config.migrationsRun&&this.dataSource.runMigrations)await this.dataSource.runMigrations(),console.log("✅ Migrations executed successfully")},revert:async()=>{if(this.dataSource.undoLastMigration)await this.dataSource.undoLastMigration(),console.log("✅ Last migration reverted successfully")},generate:async(X)=>{console.log(`\uD83D\uDCDD Generate migration: ${X}`)}})}),H.register(Q,{scope:"singleton",factory:()=>({seed:async(X)=>{for(let Y of X)if(typeof Y.run==="function")await Y.run(this.dataSource);console.log("✅ Database seeded successfully")}})})}registerShutdownHook($){process.on("SIGINT",async()=>{if(console.log("\uD83D\uDD0C Closing database connection..."),this.dataSource.isInitialized)await this.dataSource.destroy();process.exit(0)}),process.on("SIGTERM",async()=>{if(console.log("\uD83D\uDD0C Closing database connection..."),this.dataSource.isInitialized)await this.dataSource.destroy();process.exit(0)})}getEntity($){return this.entities.get($)}getEntities(){return this.entities}createRepository($,H){let J=this.dataSource.getRepository($);return new L0({dataSource:this.dataSource,repository:J,entity:$,zodSchema:H})}getDataSource(){return this.dataSource}getTransactionManager(){return this.transactionManager}async runMigrations(){if(this.dataSource.runMigrations)await this.dataSource.runMigrations(),console.log("✅ Migrations executed successfully");else console.warn("⚠️ Migration support not available")}async revertMigration(){if(this.dataSource.undoLastMigration)await this.dataSource.undoLastMigration(),console.log("✅ Last migration reverted successfully");else console.warn("⚠️ Migration revert not available")}async synchronize(){if(this.config.synchronize&&this.dataSource.synchronize)await this.dataSource.synchronize(),console.log("✅ Database schema synchronized");else console.warn("⚠️ Schema synchronization is disabled or not available")}async dropSchema(){if(this.config.dropSchema&&this.dataSource.dropDatabase)await this.dataSource.dropDatabase(),console.log("✅ Database schema dropped");else console.warn("⚠️ Schema dropping is disabled or not available")}}function EB($,H){return new j8($,H)}class Y3{}var Qy=F0(Q$());function jB($){return(H)=>{let J={name:$?.name||H.name,tableName:$?.tableName||H.name.toLowerCase(),schema:$?.schema,database:$?.database,synchronize:$?.synchronize};Reflect.defineMetadata("typeorm:entity",J,H)}}d1();class E9 extends Q0{database;drizzleTransactions=new Map;constructor($){super();this.database=$}async begin($){let H=this.createTransactionContext($);return this.drizzleTransactions.set(H.id,{options:$,startTime:H.startTime}),H}async commit($){this.drizzleTransactions.delete($.id),this.removeTransactionContext($)}async rollback($){this.drizzleTransactions.delete($.id),this.removeTransactionContext($)}async savepoint($,H){$.savepoints.push(H);let J=this.drizzleTransactions.get($.id);if(J)J.savepoints=J.savepoints||[],J.savepoints.push(H)}async rollbackToSavepoint($,H){let J=$.savepoints.indexOf(H);if(J===-1)throw Error(`Savepoint ${H} not found`);$.savepoints=$.savepoints.slice(0,J+1);let Q=this.drizzleTransactions.get($.id);if(Q&&Q.savepoints)Q.savepoints=Q.savepoints.slice(0,J+1)}async executeInTransaction($,H){return await this.database.transaction(async(J)=>{return await $(J)})}async handleTransactional($,H,J,Q,X){let Y=Reflect.getMetadata("transactional",$,H);if(!Y)return Q.apply($,J);if(X?this.getRequestTransaction(X):null)return Q.apply($,J);return await this.executeInTransaction(async(G)=>{let q=await this.begin(Y);if(X)this.setRequestTransaction(X,q);try{let U=await this.injectTransactionDatabase($,J,Q,G);if(q.rollbackOnly)throw Error("Transaction marked for rollback");return U}catch(U){throw this.setRollbackOnly(q),U}finally{if(X)this.clearRequestTransaction(X);await this.commit(q)}},Y)}async injectTransactionDatabase($,H,J,Q){if($.repositories){let X={...$.repositories};try{for(let[Y,W]of Object.entries($.repositories))if(W&&typeof W==="object"&&"database"in W){let{table:G,schema:q}=W;$.repositories[Y]=new W.constructor({database:Q,table:G,zodSchema:q})}return await J.apply($,H)}finally{$.repositories=X}}return await J.apply($,H)}createTransactionalRepository($,H){let J=new $(H);if(J&&typeof J==="object"&&"withTransaction"in J){let Q=J.withTransaction;J.withTransaction=async(X)=>{return await this.executeInTransaction(async(Y)=>{let W=new $({...H,database:Y});return await X(W)})}}return J}async batch($){return await this.executeInTransaction(async(H)=>{let J=[];for(let Q of $){let X=await Q();J.push(X)}return J})}async executeWithRetry($,H={}){let{maxRetries:J=3,retryDelay:Q=1000,retryCondition:X=(W)=>W.code==="SERIALIZATION_FAILURE"||W.code==="DEADLOCK_DETECTED"}=H,Y;for(let W=0;W<=J;W++)try{return await this.executeInTransaction($)}catch(G){if(Y=G,W===J||!X(G))throw G;await new Promise((q)=>setTimeout(q,Q*Math.pow(2,W)))}throw Y}getDatabase(){return this.database}isInTransaction(){return this.drizzleTransactions.size>0}getActiveTransactionCount(){return this.drizzleTransactions.size}}d1();class O8{tableSchemas=new Map;convertTableToZod($){let H=$._.name;if(this.tableSchemas.has(H))return this.tableSchemas.get(H);let J={};for(let[X,Y]of Object.entries($._.columns))J[X]=this.convertColumnToZod(Y);let Q=R.object(J);return this.tableSchemas.set(H,Q),Q}convertColumnToZod($){let H=this.getBaseZodSchema($);if(!$._.notNull)H=H.nullable();if($._.hasDefault||!$._.notNull)H=H.optional();return H}getBaseZodSchema($){let H=$._.dataType.toLowerCase(),J=$._.columnType.toLowerCase();if($._.enumValues&&$._.enumValues.length>0)return R.enum($._.enumValues);switch(J){case"serial":case"bigserial":return R.number().int().positive();case"boolean":return R.boolean();case"date":return R.date();case"timestamp":case"timestamptz":return R.date();case"json":case"jsonb":return R.record(R.any());case"uuid":return R.string().uuid();case"text":case"varchar":case"char":return R.string();case"integer":case"int":case"int4":return R.number().int();case"bigint":case"int8":return R.bigint();case"smallint":case"int2":return R.number().int().min(-32768).max(32767);case"real":case"float4":return R.number();case"double precision":case"float8":return R.number();case"decimal":case"numeric":return R.number();case"bytea":return R.instanceof(Buffer);default:return this.getBaseZodSchemaByDataType(H)}}getBaseZodSchemaByDataType($){switch($){case"string":case"text":return R.string();case"number":case"integer":return R.number();case"boolean":return R.boolean();case"date":return R.date();case"json":return R.record(R.any());case"buffer":return R.instanceof(Buffer);case"bigint":return R.bigint();default:return R.string()}}generateCreateSchema($){let H={};for(let[J,Q]of Object.entries($._.columns)){if(Q._.isPrimaryKey&&Q._.hasDefault)continue;if(Q._.columnType.includes("serial"))continue;H[J]=this.convertColumnToZod(Q)}return R.object(H)}generateUpdateSchema($){let H={};for(let[J,Q]of Object.entries($._.columns)){if(Q._.isPrimaryKey)continue;let X=this.convertColumnToZod(Q);if(!X.isOptional())X=X.optional();H[J]=X}return R.object(H)}extractTableMetadata($){let H=[];for(let[J,Q]of Object.entries($._.columns))H.push({name:J,dataType:Q._.dataType,isPrimaryKey:Q._.isPrimaryKey,isNotNull:Q._.notNull,hasDefault:Q._.hasDefault,isUnique:Q._.isUnique,isAutoIncrement:Q._.columnType.includes("serial"),enumValues:Q._.enumValues});return{name:$._.name,schema:$._.schema,columns:H,relations:[],zodSchema:this.convertTableToZod($)}}generateAllSchemas($){return{base:this.convertTableToZod($),create:this.generateCreateSchema($),update:this.generateUpdateSchema($)}}clearCache(){this.tableSchemas.clear()}getCachedSchema($){return this.tableSchemas.get($)}}class W3{name="drizzle";version="1.0.0";database;config;transactionManager;schemaConverter;tables=new Map;tableMetadata=new Map;logger=o0({component:"DrizzlePlugin"});constructor($,H){this.database=$,this.config={logger:!1,mode:"default",...H},this.transactionManager=new E9($),this.schemaConverter=new O8}async install($){try{if(this.logger.info("Installing Drizzle ORM plugin..."),m1(this.transactionManager),this.logger.debug("Global transaction manager configured"),this.config.schema)this.registerSchema(this.config.schema);this.registerRepositoryFactory($),this.registerDatabaseUtilities($),this.logger.info("✅ Drizzle plugin installed successfully")}catch(H){let J=H instanceof Error?H:Error(String(H));throw this.logger.error("Failed to install Drizzle plugin",J),Error(`Drizzle plugin installation failed: ${J.message}`)}}registerSchema($){let H=0,J=0;for(let[Q,X]of Object.entries($))if(this.isValidDrizzleTable(X))try{this.tables.set(Q,X);let Y=this.schemaConverter.extractTableMetadata(X);this.tableMetadata.set(Q,Y),H++,this.logger.debug(`Registered table: ${Q}`)}catch(Y){let W=Y instanceof Error?Y:Error(String(Y));this.logger.error(`Failed to register table ${Q}`,W,{tableName:Q}),J++}else this.logger.debug(`Skipped invalid table: ${Q}`),J++;this.logger.info(`\uD83D\uDCDD Registered ${H} Drizzle table(s)${J>0?` (${J} skipped)`:""}`)}isValidDrizzleTable($){if(!$||typeof $!=="object")return!1;let H=$;if(!H._||typeof H._!=="object")return!1;if(typeof H._.name!=="string"||H._.name.trim().length===0)return!1;if(!H._.columns||typeof H._.columns!=="object")return!1;if(Object.keys(H._.columns).length===0)return this.logger.warn(`Table ${H._.name} has no columns defined`),!1;return!0}registerRepositoryFactory($){let H=$.getContainer();H.register("DrizzleRepositoryFactory",{scope:"singleton",factory:()=>({create:(J,Q)=>{let X=this.tables.get(J);if(!X)throw Error(`Table ${J} not found in Drizzle schema`);return new u1({database:this.database,table:X,zodSchema:Q||this.tableMetadata.get(J)?.zodSchema})},createFromTable:(J,Q)=>{return new u1({database:this.database,table:J,zodSchema:Q})}})}),H.register("DrizzleDatabase",{scope:"singleton",factory:()=>this.database}),H.register("TransactionManager",{scope:"singleton",factory:()=>this.transactionManager}),H.register("DrizzleSchemaConverter",{scope:"singleton",factory:()=>this.schemaConverter})}registerDatabaseUtilities($){let H=$.getContainer();H.register("QueryBuilder",{scope:"request",factory:()=>({select:(J)=>this.database.select(J),insert:(J)=>this.database.insert(J),update:(J)=>this.database.update(J),delete:(J)=>this.database.delete(J),raw:(J,Q)=>this.database.execute({sql:J,params:Q})})}),H.register("Seeder",{scope:"singleton",factory:()=>({seed:async(J)=>{let Q=o0({component:"Seeder"});try{Q.info(`Running ${J.length} seeder(s)...`),await this.transactionManager.executeInTransaction(async(X)=>{for(let Y of J)if(typeof Y.run==="function")Q.debug(`Running seeder: ${Y.constructor.name}`),await Y.run(X);else Q.warn(`Skipping invalid seeder (no run method): ${Y.constructor.name}`)}),Q.info("✅ Database seeded successfully")}catch(X){let Y=X instanceof Error?X:Error(String(X));throw Q.error("Failed to seed database",Y),Error(`Database seeding failed: ${Y.message}`)}}})})}getTable($){return this.tables.get($)}getTables(){return this.tables}getTableMetadata($){return this.tableMetadata.get($)}getAllTableMetadata(){return this.tableMetadata}createRepository($,H){let J=this.tables.get($);if(!J)throw Error(`Table ${$} not found in Drizzle schema`);return new u1({database:this.database,table:J,zodSchema:H||this.tableMetadata.get($)?.zodSchema})}createRepositoryFromTable($,H){return new u1({database:this.database,table:$,zodSchema:H})}getDatabase(){return this.database}getTransactionManager(){return this.transactionManager}getSchemaConverter(){return this.schemaConverter}addTable($,H){if(!this.isValidDrizzleTable(H))throw Error(`Invalid Drizzle table: ${$}`);this.tables.set($,H);let J=this.schemaConverter.extractTableMetadata(H);this.tableMetadata.set($,J),this.logger.debug(`Added table dynamically: ${$}`)}removeTable($){let H=this.tables.has($);if(this.tables.delete($),this.tableMetadata.delete($),H)this.logger.debug(`Removed table: ${$}`);return H}generateZodSchemas(){let $={};for(let[H,J]of this.tables){let Q=this.schemaConverter.generateAllSchemas(J);$[H]=Q}return $}async executeRaw($,H){try{return this.logger.debug("Executing raw SQL query"),await this.database.execute({sql:$,params:H})}catch(J){let Q=J instanceof Error?J:Error(String(J));throw this.logger.error("Raw SQL query failed",Q),Error(`SQL execution failed: ${Q.message}`)}}async executeInTransaction($){try{return await this.transactionManager.executeInTransaction($)}catch(H){let J=H instanceof Error?H:Error(String(H));throw this.logger.error("Transaction failed",J),H}}}class Z8{client;prefix;constructor($,H={}){this.client=$,this.prefix=H.prefix||"cache:"}async get($){let H=this.getFullKey($),J=await this.client.get(H);if(!J)return null;try{return JSON.parse(J)}catch{return J}}async set($,H,J=0){let Q=this.getFullKey($),X=JSON.stringify(H);if(J>0)await this.client.setex(Q,J,X);else await this.client.set(Q,X)}async delete($){let H=this.getFullKey($);return await this.client.del(H)>0}async has($){let H=this.getFullKey($);return await this.client.exists(H)>0}async clear(){let $=await this.keys("*");if($.length>0)await Promise.all($.map((H)=>this.delete(H)))}async deletePattern($){let H=await this.keys($);if(H.length===0)return 0;return await Promise.all(H.map((J)=>this.delete(J))),H.length}async keys($="*"){let H=this.getFullKey($);return(await this.client.keys(H)).map((Q)=>Q.substring(this.prefix.length))}getFullKey($){return`${this.prefix}${$}`}}function OB($,H){return new Z8($,H)}f4();
|
|
166
166
|
|
|
167
|
-
//# debugId=
|
|
167
|
+
//# debugId=9A75D5F8512144A964756E2164756E21
|