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
|
@@ -1,4 +1,44 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{ka as N}from"../../chunk-6ft6xkhc.js";import{la as qt,ma as vt,na as Mt}from"../../chunk-sz3bj4rp.js";import{qa as dt}from"../../chunk-k4346bxd.js";import{ua as kt}from"../../chunk-g0e0m30h.js";import"../../chunk-nyqav7az.js";import{Sa as Jt}from"../../chunk-gzkpxw50.js";import"../../chunk-b7yr0p26.js";import{Ya as Vt}from"../../chunk-fzj3j2tz.js";import"../../chunk-17vq2krv.js";import{ab as j,bb as Ot,db as lt,eb as x}from"../../chunk-keyvhe4h.js";var _t={};lt(_t,{HonoAdapter:()=>It});class It{hono;name="hono";runtime;constructor(t){this.hono=t;this.runtime=gs()}listen(t,s){switch(this.runtime){case"bun":return this.listenBun(t,s);case"deno":return this.listenDeno(t,s);case"node":return this.listenNode(t,s);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(t,s){let i=Bun.serve({port:t,fetch:this.hono.fetch});if(s)s();return{port:t,close:async()=>{i.stop()},...i}}listenDeno(t,s){let i=new AbortController;return Deno.serve({port:t,signal:i.signal,onListen:s},this.hono.fetch),{port:t,close:async()=>{i.abort()}}}listenNode(t,s){try{let{serve:i}=(()=>{throw new Error("Cannot require module "+"@hono/node-server");})(),n=i({fetch:this.hono.fetch,port:t},s);return{port:t,close:async()=>{return new Promise((f)=>{n.close(()=>f())})},...n}}catch(i){throw Error("Node.js adapter requires @hono/node-server package. Install it with: npm install @hono/node-server")}}}var gs=()=>{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 Yt={};lt(Yt,{ExpressAdapter:()=>Zt});class Zt{app;name="express";express;constructor(t){this.app=t;try{let s=(()=>{throw new Error("Cannot require module "+"express");})();this.express=s(),this.setupBridge()}catch(s){throw Error("Express adapter requires express package. Install it with: npm install express")}}setupBridge(){let t=this.app.getHono();this.express.use(async(s,i)=>{try{let n=this.createWebRequest(s),f=await t.fetch(n);await this.sendExpressResponse(i,f)}catch(n){i.status(500).json({error:"Internal Server Error",message:n instanceof Error?n.message:"Unknown error"})}})}createWebRequest(t){let s=t.protocol||"http",i=t.get("host")||"localhost",n=`${s}://${i}${t.originalUrl||t.url}`,f=new Headers;for(let[c,r]of Object.entries(t.headers))if(typeof r==="string")f.set(c,r);else if(Array.isArray(r))r.forEach((w)=>f.append(c,w));let h={method:t.method,headers:f};if(t.method!=="GET"&&t.method!=="HEAD"){if(t.body)h.body=JSON.stringify(t.body),f.set("content-type","application/json")}return new Request(n,h)}async sendExpressResponse(t,s){if(t.status(s.status),s.headers.forEach((i,n)=>{t.setHeader(n,i)}),s.body){let i=s.headers.get("content-type")||"";if(i.includes("application/json")){let n=await s.json();t.json(n)}else if(i.includes("text/")){let n=await s.text();t.send(n)}else{let n=await s.arrayBuffer();t.send(Buffer.from(n))}}else t.end()}listen(t,s){return this.express.listen(t,s)}getHandler(){return this.express}getExpressApp(){return this.express}}class Q{hono;constructor(t){this.hono=t.getHono()}async get(t,s){return this.request("GET",t,s)}async post(t,s){return this.request("POST",t,s)}async put(t,s){return this.request("PUT",t,s)}async delete(t,s){return this.request("DELETE",t,s)}async patch(t,s){return this.request("PATCH",t,s)}async request(t,s,i){let n=this.buildUrl(s,i?.query),f={method:t,headers:this.buildHeaders(i)};if(i?.body!==void 0)f.body=i.body;else if(i?.json!==void 0)f.body=JSON.stringify(i.json);let h=await this.hono.request(n,f),c=await h.text(),r;try{r=JSON.parse(c)}catch{r=c}return{status:h.status,headers:h.headers,body:r,text:c,json:async()=>JSON.parse(c),ok:h.ok}}buildUrl(t,s){if(!s||Object.keys(s).length===0)return t;let i=new URLSearchParams(s).toString();return`${t}?${i}`}buildHeaders(t){let s={...t?.headers};if(t?.json!==void 0&&!s["Content-Type"])s["Content-Type"]="application/json";return s}}var J=(t,s,i)=>{return(n,f)=>{let h=-1;return c(0);async function c(r){if(r<=h)throw Error("next() called multiple times");h=r;let w,y=!1,e;if(t[r])e=t[r][0][0],n.req.routeIndex=r;else e=r===t.length&&f||void 0;if(e)try{w=await e(n,()=>c(r+1))}catch(P){if(P instanceof Error&&s)n.error=P,w=await s(P,n),y=!0;else throw P}else if(n.finalized===!1&&i)w=await i(n);if(w&&(n.finalized===!1||y))n.res=w;return n}}};var Ht=Symbol();var xt=async(t,s=Object.create(null))=>{let{all:i=!1,dot:n=!1}=s,h=(t instanceof B?t.raw.headers:t.headers).get("Content-Type");if(h?.startsWith("multipart/form-data")||h?.startsWith("application/x-www-form-urlencoded"))return ns(t,{all:i,dot:n});return{}};async function ns(t,s){let i=await t.formData();if(i)return fs(i,s);return{}}function fs(t,s){let i=Object.create(null);if(t.forEach((n,f)=>{if(!(s.all||f.endsWith("[]")))i[f]=n;else hs(i,f,n)}),s.dot)Object.entries(i).forEach(([n,f])=>{if(n.includes("."))rs(i,n,f),delete i[n]});return i}var hs=(t,s,i)=>{if(t[s]!==void 0)if(Array.isArray(t[s]))t[s].push(i);else t[s]=[t[s],i];else if(!s.endsWith("[]"))t[s]=i;else t[s]=[i]},rs=(t,s,i)=>{let n=t,f=s.split(".");f.forEach((h,c)=>{if(c===f.length-1)n[h]=i;else{if(!n[h]||typeof n[h]!=="object"||Array.isArray(n[h])||n[h]instanceof File)n[h]=Object.create(null);n=n[h]}})};var q=(t)=>{let s=t.split("/");if(s[0]==="")s.shift();return s},Ct=(t)=>{let{groups:s,path:i}=cs(t),n=q(i);return ws(n,s)},cs=(t)=>{let s=[];return t=t.replace(/\{[^}]+\}/g,(i,n)=>{let f=`@${n}`;return s.push([f,i]),f}),{groups:s,path:t}},ws=(t,s)=>{for(let i=s.length-1;i>=0;i--){let[n]=s[i];for(let f=t.length-1;f>=0;f--)if(t[f].includes(n)){t[f]=t[f].replace(n,s[i][1]);break}}return t},G={},gt=(t,s)=>{if(t==="*")return"*";let i=t.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);if(i){let n=`${t}#${s}`;if(!G[n])if(i[2])G[n]=s&&s[0]!==":"&&s[0]!=="*"?[n,i[1],new RegExp(`^${i[2]}(?=/${s})`)]:[t,i[1],new RegExp(`^${i[2]}$`)];else G[n]=[t,i[1],!0];return G[n]}return null},A=(t,s)=>{try{return s(t)}catch{return t.replace(/(?:%[0-9A-Fa-f]{2})+/g,(i)=>{try{return s(i)}catch{return i}})}},ys=(t)=>A(t,decodeURI),v=(t)=>{let s=t.url,i=s.indexOf("/",s.indexOf(":")+4),n=i;for(;n<s.length;n++){let f=s.charCodeAt(n);if(f===37){let h=s.indexOf("?",n),c=s.slice(i,h===-1?void 0:h);return ys(c.includes("%25")?c.replace(/%25/g,"%2525"):c)}else if(f===63)break}return s.slice(i,n)};var Dt=(t)=>{let s=v(t);return s.length>1&&s.at(-1)==="/"?s.slice(0,-1):s},g=(t,s,...i)=>{if(i.length)s=g(s,...i);return`${t?.[0]==="/"?"":"/"}${t}${s==="/"?"":`${t?.at(-1)==="/"?"":"/"}${s?.[0]==="/"?s.slice(1):s}`}`},X=(t)=>{if(t.charCodeAt(t.length-1)!==63||!t.includes(":"))return null;let s=t.split("/"),i=[],n="";return s.forEach((f)=>{if(f!==""&&!/\:/.test(f))n+="/"+f;else if(/\:/.test(f))if(/\?/.test(f)){if(i.length===0&&n==="")i.push("/");else i.push(n);let h=f.replace("?","");n+="/"+h,i.push(n)}else n+="/"+f}),i.filter((f,h,c)=>c.indexOf(f)===h)},k=(t)=>{if(!/[%+]/.test(t))return t;if(t.indexOf("+")!==-1)t=t.replace(/\+/g," ");return t.indexOf("%")!==-1?A(t,z):t},jt=(t,s,i)=>{let n;if(!i&&s&&!/[%+]/.test(s)){let c=t.indexOf(`?${s}`,8);if(c===-1)c=t.indexOf(`&${s}`,8);while(c!==-1){let r=t.charCodeAt(c+s.length+1);if(r===61){let w=c+s.length+2,y=t.indexOf("&",w);return k(t.slice(w,y===-1?void 0:y))}else if(r==38||isNaN(r))return"";c=t.indexOf(`&${s}`,c+1)}if(n=/[%+]/.test(t),!n)return}let f={};n??=/[%+]/.test(t);let h=t.indexOf("?",8);while(h!==-1){let c=t.indexOf("&",h+1),r=t.indexOf("=",h);if(r>c&&c!==-1)r=-1;let w=t.slice(h+1,r===-1?c===-1?void 0:c:r);if(n)w=k(w);if(h=c,w==="")continue;let y;if(r===-1)y="";else if(y=t.slice(r+1,c===-1?void 0:c),n)y=k(y);if(i){if(!(f[w]&&Array.isArray(f[w])))f[w]=[];f[w].push(y)}else f[w]??=y}return s?f[s]:f},Nt=jt,Ut=(t,s)=>{return jt(t,s,!0)},z=decodeURIComponent;var At=(t)=>A(t,z),B=class{raw;#s;#t;routeIndex=0;path;bodyCache={};constructor(t,s="/",i=[[]]){this.raw=t,this.path=s,this.#t=i,this.#s={}}param(t){return t?this.#i(t):this.#h()}#i(t){let s=this.#t[0][this.routeIndex][1][t],i=this.#f(s);return i&&/\%/.test(i)?At(i):i}#h(){let t={},s=Object.keys(this.#t[0][this.routeIndex][1]);for(let i of s){let n=this.#f(this.#t[0][this.routeIndex][1][i]);if(n!==void 0)t[i]=/\%/.test(n)?At(n):n}return t}#f(t){return this.#t[1]?this.#t[1][t]:t}query(t){return Nt(this.url,t)}queries(t){return Ut(this.url,t)}header(t){if(t)return this.raw.headers.get(t)??void 0;let s={};return this.raw.headers.forEach((i,n)=>{s[n]=i}),s}async parseBody(t){return this.bodyCache.parsedBody??=await xt(this,t)}#n=(t)=>{let{bodyCache:s,raw:i}=this,n=s[t];if(n)return n;let f=Object.keys(s)[0];if(f)return s[f].then((h)=>{if(f==="json")h=JSON.stringify(h);return new Response(h)[t]()});return s[t]=i[t]()};json(){return this.#n("text").then((t)=>JSON.parse(t))}text(){return this.#n("text")}arrayBuffer(){return this.#n("arrayBuffer")}blob(){return this.#n("blob")}formData(){return this.#n("formData")}addValidatedData(t,s){this.#s[t]=s}valid(t){return this.#s[t]}get url(){return this.raw.url}get method(){return this.raw.method}get[Ht](){return this.#t}get matchedRoutes(){return this.#t[0].map(([[,t]])=>t)}get routePath(){return this.#t[0].map(([[,t]])=>t)[this.routeIndex].path}};var Kt={Stringify:1,BeforeStream:2,Stream:3},es=(t,s)=>{let i=new String(t);return i.isEscaped=!0,i.callbacks=s,i};var M=async(t,s,i,n,f)=>{if(typeof t==="object"&&!(t instanceof String)){if(!(t instanceof Promise))t=t.toString();if(t instanceof Promise)t=await t}let h=t.callbacks;if(!h?.length)return Promise.resolve(t);if(f)f[0]+=t;else f=[t];let c=Promise.all(h.map((r)=>r({phase:s,buffer:f,context:n}))).then((r)=>Promise.all(r.filter(Boolean).map((w)=>M(w,s,!1,n,f))).then(()=>f[0]));if(i)return es(await c,h);else return c};var Ps="text/plain; charset=UTF-8",d=(t,s)=>{return{"Content-Type":t,...s}},Lt=class{#s;#t;env={};#i;finalized=!1;error;#h;#f;#n;#e;#w;#y;#c;#P;#b;constructor(t,s){if(this.#s=t,s)this.#f=s.executionCtx,this.env=s.env,this.#y=s.notFoundHandler,this.#b=s.path,this.#P=s.matchResult}get req(){return this.#t??=new B(this.#s,this.#b,this.#P),this.#t}get event(){if(this.#f&&"respondWith"in this.#f)return this.#f;else throw Error("This context has no FetchEvent")}get executionCtx(){if(this.#f)return this.#f;else throw Error("This context has no ExecutionContext")}get res(){return this.#n||=new Response(null,{headers:this.#c??=new Headers})}set res(t){if(this.#n&&t){t=new Response(t.body,t);for(let[s,i]of this.#n.headers.entries()){if(s==="content-type")continue;if(s==="set-cookie"){let n=this.#n.headers.getSetCookie();t.headers.delete("set-cookie");for(let f of n)t.headers.append("set-cookie",f)}else t.headers.set(s,i)}}this.#n=t,this.finalized=!0}render=(...t)=>{return this.#w??=(s)=>this.html(s),this.#w(...t)};setLayout=(t)=>this.#e=t;getLayout=()=>this.#e;setRenderer=(t)=>{this.#w=t};header=(t,s,i)=>{if(this.finalized)this.#n=new Response(this.#n.body,this.#n);let n=this.#n?this.#n.headers:this.#c??=new Headers;if(s===void 0)n.delete(t);else if(i?.append)n.append(t,s);else n.set(t,s)};status=(t)=>{this.#h=t};set=(t,s)=>{this.#i??=new Map,this.#i.set(t,s)};get=(t)=>{return this.#i?this.#i.get(t):void 0};get var(){if(!this.#i)return{};return Object.fromEntries(this.#i)}#r(t,s,i){let n=this.#n?new Headers(this.#n.headers):this.#c??new Headers;if(typeof s==="object"&&"headers"in s){let h=s.headers instanceof Headers?s.headers:new Headers(s.headers);for(let[c,r]of h)if(c.toLowerCase()==="set-cookie")n.append(c,r);else n.set(c,r)}if(i)for(let[h,c]of Object.entries(i))if(typeof c==="string")n.set(h,c);else{n.delete(h);for(let r of c)n.append(h,r)}let f=typeof s==="number"?s:s?.status??this.#h;return new Response(t,{status:f,headers:n})}newResponse=(...t)=>this.#r(...t);body=(t,s,i)=>this.#r(t,s,i);text=(t,s,i)=>{return!this.#c&&!this.#h&&!s&&!i&&!this.finalized?new Response(t):this.#r(t,s,d(Ps,i))};json=(t,s,i)=>{return this.#r(JSON.stringify(t),s,d("application/json",i))};html=(t,s,i)=>{let n=(f)=>this.#r(f,s,d("text/html; charset=UTF-8",i));return typeof t==="object"?M(t,Kt.Stringify,!1,{}).then(n):n(t)};redirect=(t,s)=>{let i=String(t);return this.header("Location",!/[^\x00-\xFF]/.test(i)?i:encodeURI(i)),this.newResponse(null,s??302)};notFound=()=>{return this.#y??=()=>new Response,this.#y(this)}};var u="ALL",Rt="all",zt=["get","post","put","delete","options","patch"],o="Can not add a route since the matcher is already built.",V=class extends Error{};var Tt="__COMPOSED_HANDLER";var bs=(t)=>{return t.text("404 Not Found",404)},Wt=(t,s)=>{if("getResponse"in t){let i=t.getResponse();return s.newResponse(i.body,i)}return console.error(t),s.text("Internal Server Error",500)},m=class{get;post;put;delete;options;patch;all;on;use;router;getPath;_basePath="/";#s="/";routes=[];constructor(t={}){[...zt,Rt].forEach((f)=>{this[f]=(h,...c)=>{if(typeof h==="string")this.#s=h;else this.#h(f,this.#s,h);return c.forEach((r)=>{this.#h(f,this.#s,r)}),this}}),this.on=(f,h,...c)=>{for(let r of[h].flat()){this.#s=r;for(let w of[f].flat())c.map((y)=>{this.#h(w.toUpperCase(),this.#s,y)})}return this},this.use=(f,...h)=>{if(typeof f==="string")this.#s=f;else this.#s="*",h.unshift(f);return h.forEach((c)=>{this.#h(u,this.#s,c)}),this};let{strict:i,...n}=t;Object.assign(this,n),this.getPath=i??!0?t.getPath??v:Dt}#t(){let t=new m({router:this.router,getPath:this.getPath});return t.errorHandler=this.errorHandler,t.#i=this.#i,t.routes=this.routes,t}#i=bs;errorHandler=Wt;route(t,s){let i=this.basePath(t);return s.routes.map((n)=>{let f;if(s.errorHandler===Wt)f=n.handler;else f=async(h,c)=>(await J([],s.errorHandler)(h,()=>n.handler(h,c))).res,f[Tt]=n.handler;i.#h(n.method,n.path,f)}),this}basePath(t){let s=this.#t();return s._basePath=g(this._basePath,t),s}onError=(t)=>{return this.errorHandler=t,this};notFound=(t)=>{return this.#i=t,this};mount(t,s,i){let n,f;if(i)if(typeof i==="function")f=i;else if(f=i.optionHandler,i.replaceRequest===!1)n=(r)=>r;else n=i.replaceRequest;let h=f?(r)=>{let w=f(r);return Array.isArray(w)?w:[w]}:(r)=>{let w=void 0;try{w=r.executionCtx}catch{}return[r.env,w]};n||=(()=>{let r=g(this._basePath,t),w=r==="/"?0:r.length;return(y)=>{let e=new URL(y.url);return e.pathname=e.pathname.slice(w)||"/",new Request(e,y)}})();let c=async(r,w)=>{let y=await s(n(r.req.raw),...h(r));if(y)return y;await w()};return this.#h(u,g(t,"*"),c),this}#h(t,s,i){t=t.toUpperCase(),s=g(this._basePath,s);let n={basePath:this._basePath,path:s,method:t,handler:i};this.router.add(t,s,[i,n]),this.routes.push(n)}#f(t,s){if(t instanceof Error)return this.errorHandler(t,s);throw t}#n(t,s,i,n){if(n==="HEAD")return(async()=>new Response(null,await this.#n(t,s,i,"GET")))();let f=this.getPath(t,{env:i}),h=this.router.match(n,f),c=new Lt(t,{path:f,matchResult:h,env:i,executionCtx:s,notFoundHandler:this.#i});if(h[0].length===1){let w;try{w=h[0][0][0][0](c,async()=>{c.res=await this.#i(c)})}catch(y){return this.#f(y,c)}return w instanceof Promise?w.then((y)=>y||(c.finalized?c.res:this.#i(c))).catch((y)=>this.#f(y,c)):w??this.#i(c)}let r=J(h[0],this.errorHandler,this.#i);return(async()=>{try{let w=await r(c);if(!w.finalized)throw Error("Context is not finalized. Did you forget to return a Response object or `await next()`?");return w.res}catch(w){return this.#f(w,c)}})()}fetch=(t,...s)=>{return this.#n(t,s[1],s[0],t.method)};request=(t,s,i,n)=>{if(t instanceof Request)return this.fetch(s?new Request(t,s):t,i,n);return t=t.toString(),this.fetch(new Request(/^https?:\/\//.test(t)?t:`http://localhost${g("/",t)}`,s),i,n)};fire=()=>{addEventListener("fetch",(t)=>{t.respondWith(this.#n(t.request,t,void 0,t.request.method))})}};var l="[^/]+",T=".*",W="(?:|/.*)",D=Symbol(),Ss=new Set(".\\+*[^]$()");function us(t,s){if(t.length===1)return s.length===1?t<s?-1:1:-1;if(s.length===1)return 1;if(t===T||t===W)return 1;else if(s===T||s===W)return-1;if(t===l)return 1;else if(s===l)return-1;return t.length===s.length?t<s?-1:1:s.length-t.length}var I=class{#s;#t;#i=Object.create(null);insert(t,s,i,n,f){if(t.length===0){if(this.#s!==void 0)throw D;if(f)return;this.#s=s;return}let[h,...c]=t,r=h==="*"?c.length===0?["","",T]:["","",l]:h==="/*"?["","",W]:h.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/),w;if(r){let y=r[1],e=r[2]||l;if(y&&r[2]){if(e===".*")throw D;if(e=e.replace(/^\((?!\?:)(?=[^)]+\)$)/,"(?:"),/\((?!\?:)/.test(e))throw D}if(w=this.#i[e],!w){if(Object.keys(this.#i).some((P)=>P!==T&&P!==W))throw D;if(f)return;if(w=this.#i[e]=new I,y!=="")w.#t=n.varIndex++}if(!f&&y!=="")i.push([y,w.#t])}else if(w=this.#i[h],!w){if(Object.keys(this.#i).some((y)=>y.length>1&&y!==T&&y!==W))throw D;if(f)return;w=this.#i[h]=new I}w.insert(c,s,i,n,f)}buildRegExpStr(){let s=Object.keys(this.#i).sort(us).map((i)=>{let n=this.#i[i];return(typeof n.#t==="number"?`(${i})@${n.#t}`:Ss.has(i)?`\\${i}`:i)+n.buildRegExpStr()});if(typeof this.#s==="number")s.unshift(`#${this.#s}`);if(s.length===0)return"";if(s.length===1)return s[0];return"(?:"+s.join("|")+")"}};var Ft=class{#s={varIndex:0};#t=new I;insert(t,s,i){let n=[],f=[];for(let c=0;;){let r=!1;if(t=t.replace(/\{[^}]+\}/g,(w)=>{let y=`@\\${c}`;return f[c]=[y,w],c++,r=!0,y}),!r)break}let h=t.match(/(?::[^\/]+)|(?:\/\*$)|./g)||[];for(let c=f.length-1;c>=0;c--){let[r]=f[c];for(let w=h.length-1;w>=0;w--)if(h[w].indexOf(r)!==-1){h[w]=h[w].replace(r,f[c][1]);break}}return this.#t.insert(h,s,n,this.#s,i),n}buildRegExp(){let t=this.#t.buildRegExpStr();if(t==="")return[/^$/,[],[]];let s=0,i=[],n=[];return t=t.replace(/#(\d+)|@(\d+)|\.\*\$/g,(f,h,c)=>{if(h!==void 0)return i[++s]=Number(h),"$()";if(c!==void 0)return n[Number(c)]=++s,"";return""}),[new RegExp(`^${t}`),i,n]}};var Qt=[],_s=[/^$/,[],Object.create(null)],Bt=Object.create(null);function Gt(t){return Bt[t]??=new RegExp(t==="*"?"":`^${t.replace(/\/\*$|([.\\+*[^\]$()])/g,(s,i)=>i?`\\${i}`:"(?:|/.*)")}$`)}function Os(){Bt=Object.create(null)}function $s(t){let s=new Ft,i=[];if(t.length===0)return _s;let n=t.map((y)=>[!/\*|\/:/.test(y[0]),...y]).sort(([y,e],[P,S])=>y?1:P?-1:e.length-S.length),f=Object.create(null);for(let y=0,e=-1,P=n.length;y<P;y++){let[S,_,b]=n[y];if(S)f[_]=[b.map(([$])=>[$,Object.create(null)]),Qt];else e++;let O;try{O=s.insert(_,e,S)}catch($){throw $===D?new V(_):$}if(S)continue;i[e]=b.map(([$,U])=>{let L=Object.create(null);U-=1;for(;U>=0;U--){let[E,Y]=O[U];L[E]=Y}return[$,L]})}let[h,c,r]=s.buildRegExp();for(let y=0,e=i.length;y<e;y++)for(let P=0,S=i[y].length;P<S;P++){let _=i[y][P]?.[1];if(!_)continue;let b=Object.keys(_);for(let O=0,$=b.length;O<$;O++)_[b[O]]=r[_[b[O]]]}let w=[];for(let y in c)w[y]=i[c[y]];return[h,w,f]}function K(t,s){if(!t)return;for(let i of Object.keys(t).sort((n,f)=>f.length-n.length))if(Gt(i).test(s))return[...t[i]];return}var a=class{name="RegExpRouter";#s;#t;constructor(){this.#s={[u]:Object.create(null)},this.#t={[u]:Object.create(null)}}add(t,s,i){let n=this.#s,f=this.#t;if(!n||!f)throw Error(o);if(!n[t])[n,f].forEach((r)=>{r[t]=Object.create(null),Object.keys(r[u]).forEach((w)=>{r[t][w]=[...r[u][w]]})});if(s==="/*")s="*";let h=(s.match(/\/:/g)||[]).length;if(/\*$/.test(s)){let r=Gt(s);if(t===u)Object.keys(n).forEach((w)=>{n[w][s]||=K(n[w],s)||K(n[u],s)||[]});else n[t][s]||=K(n[t],s)||K(n[u],s)||[];Object.keys(n).forEach((w)=>{if(t===u||t===w)Object.keys(n[w]).forEach((y)=>{r.test(y)&&n[w][y].push([i,h])})}),Object.keys(f).forEach((w)=>{if(t===u||t===w)Object.keys(f[w]).forEach((y)=>r.test(y)&&f[w][y].push([i,h]))});return}let c=X(s)||[s];for(let r=0,w=c.length;r<w;r++){let y=c[r];Object.keys(f).forEach((e)=>{if(t===u||t===e)f[e][y]||=[...K(n[e],y)||K(n[u],y)||[]],f[e][y].push([i,h-w+r+1])})}}match(t,s){Os();let i=this.#i();return this.match=(n,f)=>{let h=i[n]||i[u],c=h[2][f];if(c)return c;let r=f.match(h[0]);if(!r)return[[],Qt];let w=r.indexOf("",1);return[h[1][w],r]},this.match(t,s)}#i(){let t=Object.create(null);return Object.keys(this.#t).concat(Object.keys(this.#s)).forEach((s)=>{t[s]||=this.#h(s)}),this.#s=this.#t=void 0,t}#h(t){let s=[],i=t===u;if([this.#s,this.#t].forEach((n)=>{let f=n[t]?Object.keys(n[t]).map((h)=>[h,n[t][h]]):[];if(f.length!==0)i||=!0,s.push(...f);else if(t!==u)s.push(...Object.keys(n[u]).map((h)=>[h,n[u][h]]))}),!i)return null;else return $s(s)}};var p=class{name="SmartRouter";#s=[];#t=[];constructor(t){this.#s=t.routers}add(t,s,i){if(!this.#t)throw Error(o);this.#t.push([t,s,i])}match(t,s){if(!this.#t)throw Error("Fatal error");let i=this.#s,n=this.#t,f=i.length,h=0,c;for(;h<f;h++){let r=i[h];try{for(let w=0,y=n.length;w<y;w++)r.add(...n[w]);c=r.match(t,s)}catch(w){if(w instanceof V)continue;throw w}this.match=r.match.bind(r),this.#s=[r],this.#t=void 0;break}if(h===f)throw Error("Fatal error");return this.name=`SmartRouter + ${this.activeRouter.name}`,c}get activeRouter(){if(this.#t||this.#s.length!==1)throw Error("No active router has been determined yet.");return this.#s[0]}};var F=Object.create(null),tt=class{#s;#t;#i;#h=0;#f=F;constructor(t,s,i){if(this.#t=i||Object.create(null),this.#s=[],t&&s){let n=Object.create(null);n[t]={handler:s,possibleKeys:[],score:0},this.#s=[n]}this.#i=[]}insert(t,s,i){this.#h=++this.#h;let n=this,f=Ct(s),h=[];for(let c=0,r=f.length;c<r;c++){let w=f[c],y=f[c+1],e=gt(w,y),P=Array.isArray(e)?e[0]:w;if(P in n.#t){if(n=n.#t[P],e)h.push(e[1]);continue}if(n.#t[P]=new tt,e)n.#i.push(e),h.push(e[1]);n=n.#t[P]}return n.#s.push({[t]:{handler:i,possibleKeys:h.filter((c,r,w)=>w.indexOf(c)===r),score:this.#h}}),n}#n(t,s,i,n){let f=[];for(let h=0,c=t.#s.length;h<c;h++){let r=t.#s[h],w=r[s]||r[u],y={};if(w!==void 0){if(w.params=Object.create(null),f.push(w),i!==F||n&&n!==F)for(let e=0,P=w.possibleKeys.length;e<P;e++){let S=w.possibleKeys[e],_=y[w.score];w.params[S]=n?.[S]&&!_?n[S]:i[S]??n?.[S],y[w.score]=!0}}}return f}search(t,s){let i=[];this.#f=F;let f=[this],h=q(s),c=[];for(let r=0,w=h.length;r<w;r++){let y=h[r],e=r===w-1,P=[];for(let S=0,_=f.length;S<_;S++){let b=f[S],O=b.#t[y];if(O)if(O.#f=b.#f,e){if(O.#t["*"])i.push(...this.#n(O.#t["*"],t,b.#f));i.push(...this.#n(O,t,b.#f))}else P.push(O);for(let $=0,U=b.#i.length;$<U;$++){let L=b.#i[$],E=b.#f===F?{}:{...b.#f};if(L==="*"){let C=b.#t["*"];if(C)i.push(...this.#n(C,t,b.#f)),C.#f=E,P.push(C);continue}let[Y,Et,R]=L;if(!y&&!(R instanceof RegExp))continue;let H=b.#t[Y],ss=h.slice(r).join("/");if(R instanceof RegExp){let C=R.exec(ss);if(C){if(E[Et]=C[0],i.push(...this.#n(H,t,b.#f,E)),Object.keys(H.#t).length){H.#f=E;let is=C[0].match(/\//)?.length??0;(c[is]||=[]).push(H)}continue}}if(R===!0||R.test(y))if(E[Et]=y,e){if(i.push(...this.#n(H,t,E,b.#f)),H.#t["*"])i.push(...this.#n(H.#t["*"],t,E,b.#f))}else H.#f=E,P.push(H)}}f=P.concat(c.shift()??[])}if(i.length>1)i.sort((r,w)=>{return r.score-w.score});return[i.map(({handler:r,params:w})=>[r,w])]}};var st=class{name="TrieRouter";#s;constructor(){this.#s=new tt}add(t,s,i){let n=X(s);if(n){for(let f=0,h=n.length;f<h;f++)this.#s.insert(t,n[f],i);return}this.#s.insert(t,s,i)}match(t,s){return this.#s.search(t,s)}};var it=class extends m{constructor(t={}){super(t);this.router=t.router??new p({routers:[new a,new st]})}};class nt{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(t,s){this.providers.set(t,s||{scope:"transient"})}async resolve(t,s){let i=this.providers.get(t)||{scope:s?.scope||"transient"},n=s?.scope||i.scope||"transient";if(n==="singleton"){if(this.singletons.has(t))return this.stats.singletonHits++,this.singletons.get(t);if(this.stats.singletonMisses++,this.resolutionStack.has(t))throw Error(`Circular dependency detected: ${this.buildCircularDependencyMessage(t)}`);this.resolutionStack.add(t);try{let f=await this.create(t,i,s?.context);return this.singletons.set(t,f),f}finally{this.resolutionStack.delete(t)}}if(n==="request"&&s?.context){let f=this.requestScoped.get(s.context);if(f?.has(t))return this.stats.requestHits++,f.get(t);if(this.stats.requestMisses++,!f)f=new Map,this.requestScoped.set(s.context,f);if(this.resolutionStack.has(t))throw Error(`Circular dependency detected: ${this.buildCircularDependencyMessage(t)}`);this.resolutionStack.add(t);try{let h=await this.create(t,i,s.context);return f.set(t,h),h}finally{this.resolutionStack.delete(t)}}if(this.stats.transientCreations++,this.resolutionStack.has(t))throw Error(`Circular dependency detected: ${this.buildCircularDependencyMessage(t)}`);this.resolutionStack.add(t);try{return await this.create(t,i,s?.context)}finally{this.resolutionStack.delete(t)}}buildCircularDependencyMessage(t){let s=Array.from(this.resolutionStack),i=this.getProviderName(t);return s.map((f)=>this.getProviderName(f)).join(" -> ")+" -> "+i}async create(t,s,i){if(s.factory)return s.factory();if(typeof t==="function")if(t.prototype&&t.prototype.constructor===t){let n=new t;return await this.resolveNestedDependencies(n,i),n}else{let n=t();return n instanceof Promise?await n:n}throw Error("Invalid provider type")}async resolveNestedDependencies(t,s){}getProviderName(t){if(typeof t==="string")return t;else if(typeof t==="symbol")return t.toString();let s=this.providerNameCache.get(t);if(s)return s;let i;if(typeof t==="function")if(t.name)i=t.name;else i=t.toString().substring(0,50);else i=String(t);if(typeof t==="object"||typeof t==="function")this.providerNameCache.set(t,i);return i}clear(){this.singletons.clear(),this.providers.clear(),this.resolutionStack.clear(),this.providerNameCache=new WeakMap,this.resetStats()}clearRequestScope(t){this.requestScoped.delete(t)}getStats(){let t=this.stats.singletonHits+this.stats.singletonMisses,s=t>0?this.stats.singletonHits/t*100:0,i=this.stats.requestHits+this.stats.requestMisses,n=i>0?this.stats.requestHits/i*100:0;return{singletonHits:this.stats.singletonHits,singletonMisses:this.stats.singletonMisses,singletonHitRate:Math.round(s*100)/100,requestHits:this.stats.requestHits,requestMisses:this.stats.requestMisses,requestHitRate:Math.round(n*100)/100,transientCreations:this.stats.transientCreations}}resetStats(){this.stats={singletonHits:0,singletonMisses:0,requestHits:0,requestMisses:0,transientCreations:0}}}var Es=/^[\w!#$%&'*.^`|~+-]+$/,Hs=/^[ !#-:<-[\]-~]*$/,ft=(t,s)=>{if(s&&t.indexOf(s)===-1)return{};let i=t.trim().split(";"),n={};for(let f of i){f=f.trim();let h=f.indexOf("=");if(h===-1)continue;let c=f.substring(0,h).trim();if(s&&s!==c||!Es.test(c))continue;let r=f.substring(h+1).trim();if(r.startsWith('"')&&r.endsWith('"'))r=r.slice(1,-1);if(Hs.test(r)){if(n[c]=r.indexOf("%")!==-1?A(r,z):r,s)break}}return n};var xs=(t,s,i={})=>{let n=`${t}=${s}`;if(t.startsWith("__Secure-")&&!i.secure)throw Error("__Secure- Cookie must have Secure attributes");if(t.startsWith("__Host-")){if(!i.secure)throw Error("__Host- Cookie must have Secure attributes");if(i.path!=="/")throw Error('__Host- Cookie must have Path attributes with "/"');if(i.domain)throw Error("__Host- Cookie must not have Domain attributes")}if(i&&typeof i.maxAge==="number"&&i.maxAge>=0){if(i.maxAge>34560000)throw Error("Cookies Max-Age SHOULD NOT be greater than 400 days (34560000 seconds) in duration.");n+=`; Max-Age=${i.maxAge|0}`}if(i.domain&&i.prefix!=="host")n+=`; Domain=${i.domain}`;if(i.path)n+=`; Path=${i.path}`;if(i.expires){if(i.expires.getTime()-Date.now()>34560000000)throw Error("Cookies Expires SHOULD NOT be greater than 400 days (34560000 seconds) in the future.");n+=`; Expires=${i.expires.toUTCString()}`}if(i.httpOnly)n+="; HttpOnly";if(i.secure)n+="; Secure";if(i.sameSite)n+=`; SameSite=${i.sameSite.charAt(0).toUpperCase()+i.sameSite.slice(1)}`;if(i.priority)n+=`; Priority=${i.priority.charAt(0).toUpperCase()+i.priority.slice(1)}`;if(i.partitioned){if(!i.secure)throw Error("Partitioned Cookie must have Secure attributes");n+="; Partitioned"}return n},Z=(t,s,i)=>{return s=encodeURIComponent(s),xs(t,s,i)};var Xt=(t,s,i)=>{let n=t.req.raw.headers.get("Cookie");if(typeof s==="string"){if(!n)return;let h=s;if(i==="secure")h="__Secure-"+s;else if(i==="host")h="__Host-"+s;return ft(n,h)[h]}if(!n)return{};return ft(n)};var Cs=(t,s,i)=>{let n;if(i?.prefix==="secure")n=Z("__Secure-"+t,s,{path:"/",...i,secure:!0});else if(i?.prefix==="host")n=Z("__Host-"+t,s,{...i,path:"/",secure:!0,domain:void 0});else n=Z(t,s,{path:"/",...i});return n},li=(t,s,i,n)=>{let f=Cs(s,i,n);t.header("Set-Cookie",f,{append:!0})};class ot{static json(t,s=200,i){return new ht(t,s,i)}static html(t,s=200){return new rt(t,s)}static file(t,s){return new wt(t,s)}static stream(t,s){return new yt(t,s)}static redirect(t,s=302){return new ct(t,s)}}class ht{data;status;headers;constructor(t,s=200,i={}){this.data=t;this.status=s;this.headers=i}toHonoResponse(t){return t.json(this.data,this.status,this.headers)}}class rt{content;status;constructor(t,s=200){this.content=t;this.status=s}toHonoResponse(t){return t.html(this.content,this.status)}}class ct{url;status;constructor(t,s=302){this.url=t;this.status=s}toHonoResponse(t){return t.redirect(this.url,this.status)}}class wt{path;options;constructor(t,s){this.path=t;this.options=s}async toHonoResponse(t){try{let s=typeof Bun<"u"?Bun.file(this.path):await this.readFileNode(this.path),n={"Content-Type":this.options?.contentType||this.guessContentType(this.path)};if(this.options?.download||this.options?.filename){let f=this.options?.filename||this.path.split("/").pop()||"download",h=this.options?.download?"attachment":"inline";n["Content-Disposition"]=`${h}; filename="${f}"`}if(typeof Bun<"u"&&s instanceof Blob)return t.body(s,200,n);else return t.body(s,200,n)}catch(s){return t.json({error:"File not found",message:s instanceof Error?s.message:"Unknown error"},404)}}async readFileNode(t){throw Error("File reading in Node.js requires fs module - use Bun runtime or implement adapter")}guessContentType(t){let s=t.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"}[s||""]||"application/octet-stream"}}class yt{stream;options;constructor(t,s){this.stream=t;this.options=s}toHonoResponse(t){let s={"Content-Type":this.options?.contentType||"application/octet-stream",...this.options?.headers};return t.body(this.stream,200,s)}}class et{static serialize(t,s){if(s===null||s===void 0)return t.body(null,204);if(s instanceof ot)return s;if(s instanceof ht)return s.toHonoResponse(t);if(s instanceof rt)return s.toHonoResponse(t);if(s instanceof wt)return s.toHonoResponse(t);if(s instanceof yt)return s.toHonoResponse(t);if(s instanceof ct)return s.toHonoResponse(t);if(s&&typeof s.toHonoResponse==="function")return s.toHonoResponse(t);return t.json(s)}}class Pt{static compile(t){let s=this.compilePathRegex(t.path),i=this.resolveParameterOrder(t.parameters),n=this.resolveDependencyOrder(t.dependencies),f=this.calculateMaxArgumentIndex(t.parameters,t.dependencies),h=this.computeParameterFlags(t.parameters);return{...t,pathRegex:s,parameterOrder:i,dependencyOrder:n,maxArgumentIndex:f,...h}}static compilePathRegex(t){let s=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return s=s.replace(/\\\{([^}]+)\\\}/g,"(?<$1>[^/]+)"),s=s.replace(/:([a-zA-Z_][a-zA-Z0-9_]*)/g,"(?<$1>[^/]+)"),s=`^${s}$`,new RegExp(s)}static resolveParameterOrder(t){if(!t||t.length===0)return[];return t.map((s)=>s.index).filter((s)=>s!==void 0).sort((s,i)=>s-i)}static resolveDependencyOrder(t){if(!t||t.length===0)return[];return t.map((s)=>s.index).filter((s)=>s!==void 0).sort((s,i)=>s-i)}static calculateMaxArgumentIndex(t,s){let i=-1;if(t&&t.length>0){let n=Math.max(...t.map((f)=>f.index));i=Math.max(i,n)}if(s&&s.length>0){let n=Math.max(...s.map((f)=>f.index));i=Math.max(i,n)}return i}static computeParameterFlags(t){if(!t||t.length===0)return{hasBody:!1,hasQuery:!1,hasParams:!1,hasHeaders:!1,hasCookies:!1,hasDependencies:!1};return{hasBody:t.some((s)=>s.type==="body"),hasQuery:t.some((s)=>s.type==="query"),hasParams:t.some((s)=>s.type==="param"),hasHeaders:t.some((s)=>s.type==="header"),hasCookies:t.some((s)=>s.type==="cookie"),hasDependencies:!1}}static compileAll(t){return t.map((s)=>this.compile(s))}}class bt{app;metadata;container;validator;errorHandler;compiledRoutes=new Map;constructor(t,s,i,n,f){this.app=t;this.metadata=s;this.container=i;this.validator=n;this.errorHandler=f}compile(){let t=this.metadata.getRoutes(),s=Pt.compileAll(t);for(let i of s){let n=`${i.target.name}:${i.propertyKey}`;this.compiledRoutes.set(n,i);let f=this.createHandler(i),h=this.normalizePath(i.path),c=i.method.toLowerCase();if(i.middleware&&i.middleware.length>0)this.app[c](h,...i.middleware,f);else this.app[c](h,f)}}normalizePath(t){if(!t.startsWith("/"))t="/"+t;if(t=t.replace(/\{([^}]+)\}/g,":$1"),t.length>1&&t.endsWith("/"))t=t.slice(0,-1);return t}createHandler(t){return async(s)=>{try{s.set("routeMetadata",t);let i=t.cache,n=null,f=null;if(i){let{CacheManager:e}=await import("../../chunk-b2pdghf7.js"),{parseTTL:P}=await import("../../chunk-79b0bm4k.js");f=e;let S=s.req.param(),_=i.includeQuery?s.req.query():void 0;n=e.generateKey(t.method,t.path,S,_,i);let b=await e.get(n,i.store);if(b!==null)return s.header("X-Cache","HIT"),this.serializeResponse(s,b);s.header("X-Cache","MISS")}let h=await this.extractParameters(s,t.parameters),c=await this.resolveDependencies(s,t.dependencies),r=this.mergeArguments(h,c,t.parameters,t.maxArgumentIndex),w;if(t.handler)w=await t.handler(s,...r);else{let e=await this.container.resolve(t.target,{scope:"transient",context:s});if(typeof e[t.propertyKey]!=="function")throw Error(`Method ${t.propertyKey} not found on controller ${t.target.name}`);w=await e[t.propertyKey](...r)}if(i&&n&&f){if(!i.condition||i.condition(w)){let{parseTTL:e}=await import("../../chunk-79b0bm4k.js"),P=e(i.ttl);await f.set(n,w,P,i.store)}}let y=t.cacheInvalidate;if(y&&Array.isArray(y)){if(!f){let{CacheManager:P}=await import("../../chunk-b2pdghf7.js");f=P}let e=s.req.param();for(let P of y){let S=P;if(e)for(let[_,b]of Object.entries(e))S=S.replace(`{${_}}`,String(b));await f.invalidate(S)}}return this.serializeResponse(s,w)}catch(i){return await this.handleError(s,i)}}}serializeResponse(t,s){return et.serialize(t,s)}getRouteMetadataForContext(t){return t.get("routeMetadata")||null}isAuthRequired(t){if(t.auth?.required)return!0;return t.parameters.some((s)=>s.type==="current-user")}async handleError(t,s){return await this.errorHandler.handle(s,t)}async extractParameters(t,s){let i=[];for(let n of s){if(!n)continue;let f;switch(n.type){case"body":try{f=await t.req.json()}catch(y){f=null}break;case"query":if(n.name)f=t.req.query(n.name);else f=t.req.query();if(n.schema&&f!==void 0)try{f=n.schema.parse(f)}catch(y){throw new Vt(`Invalid query parameter: ${y}`)}break;case"param":if(n.name)f=t.req.param(n.name);else f=t.req.param();break;case"header":if(n.name)f=t.req.header(n.name);else{let y={};t.req.raw.headers.forEach((e,P)=>{y[P]=e}),f=y}break;case"cookie":if(n.name)f=Xt(t,n.name);else{let y=t.req.header("cookie");if(y)f=Object.fromEntries(y.split(";").map((e)=>{let[P,...S]=e.trim().split("=");return[P,S.join("=")]}));else f={}}break;case"request":f=t.req;break;case"response":case"context":f=t;break;case"current-user":f=t.get("auth.user")||null;let h=this.getRouteMetadataForContext(t);if(h&&this.isAuthRequired(h)){if(!f){let y=t.get("auth.error")||"Authentication required",{AuthenticationException:e}=await import("../../chunk-k9p1edmj.js");throw new e(y)}}break;case"token":f=t.get("auth.token")||null;break;case"oauth-user":f=t.get("oauth.user")||null;break;case"oauth-token":f=t.get("oauth.token")||null;break;case"current-session":f=t.get("session")||null;break;case"session-data":let c=t.get("session");if(c&&n.metadata?.key)f=c.data[n.metadata.key];else if(c)f=c.data;else f=null;break;case"csrf-token":f=t.get("csrf.token")||null;break;case"filtered-resource":f=t.get("filtered.resource")||null;break;case"filtered-attributes":f=t.get("filtered.attributes")||[];break;case"request-id":let{getRequestId:r}=await import("../../chunk-sk8amac2.js");f=r(t);break;case"abort-signal":let{getAbortSignal:w}=await import("../../chunk-sk8amac2.js");f=w(t);break;default:f=void 0}if(n.schema)try{f=await this.validator.validate(f,n.schema)}catch(h){throw h}i[n.index]=f}return i}mergeArguments(t,s,i,n){let h=i.filter((y)=>y!==void 0&&y.index!==void 0).map((y)=>y.index),c=h.length>0?Math.max(...h):-1,r=n!==void 0&&n>=0?n:Math.max(c,t.length-1,s.length-1,0);if(!Number.isFinite(r)||r<0)r=0;let w=Array(r+1);for(let y=0;y<=r;y++)if(t[y]!==void 0)w[y]=t[y];else if(s[y]!==void 0)w[y]=s[y];return w}async resolveDependencies(t,s){let i=[];for(let n of s){if(!n)continue;try{let f=await this.container.resolve(n.provider,{scope:n.scope,context:t});i[n.index]=f}catch(f){throw Error(`Failed to resolve dependency at index ${n.index}: ${f instanceof Error?f.message:"Unknown error"}`)}}return i}}class St{plugins=new Map;installed=new Set;register(t){if(this.plugins.has(t.name))throw Error(`Plugin "${t.name}" is already registered`);this.plugins.set(t.name,t)}async install(t){let s=this.resolveInstallOrder();for(let i of s)await this.plugins.get(i).install(t),this.installed.add(i)}isInstalled(t){return this.installed.has(t)}getPlugin(t){return this.plugins.get(t)}getPluginNames(){return Array.from(this.plugins.keys())}resolveInstallOrder(){let t=new Set,s=new Set,i=[],n=(f,h=[])=>{if(s.has(f)){let r=[...h,f].join(" -> ");throw Error(`Circular dependency detected in plugins: ${r}`)}if(t.has(f))return;s.add(f);let c=this.plugins.get(f);if(!c)throw Error(`Plugin "${f}" is not registered`);if(c.dependencies)for(let r of c.dependencies){if(!this.plugins.has(r))throw Error(`Plugin "${f}" depends on "${r}" which is not registered`);n(r,[...h,f])}s.delete(f),t.add(f),i.push(f)};for(let f of this.plugins.keys())n(f);return i}}class $t{hono;metadata;container;validator;errorHandler;compiler;pluginManager;config;compiled=!1;globalMiddleware=[];groupPrefix="";constructor(t){if(this.config={adapter:"hono",title:"Veloce-TS API",version:"1.0.0",docs:!0,...t},this.hono=new it,this.metadata=new N,this.container=new nt,this.validator=new Jt,this.errorHandler=new kt,this.pluginManager=new St,this.compiler=new bt(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(t){let s=N.getControllerMetadata(t);if(s)this.metadata.registerController(t,s);let i=N.getRouteMethods(t);for(let n of i){let f=N.getRouteMetadata(t.prototype,n),h=N.getParameterMetadata(t.prototype,n),c=N.getDependencyMetadata(t.prototype,n);if(f&&f.method&&f.path!==void 0){let r=s?.prefix||"",w=this.normalizePath(r,f.path);this.metadata.registerRoute({target:t,propertyKey:n,method:f.method,path:w,middleware:[...s?.middleware||[],...f.middleware||[]],parameters:h||f.parameters||[],dependencies:c||f.dependencies||[],responses:f.responses||[],docs:f.docs})}}}get(t,s){this.registerFunctionalRoute("GET",t,s)}post(t,s){this.registerFunctionalRoute("POST",t,s)}put(t,s){this.registerFunctionalRoute("PUT",t,s)}delete(t,s){this.registerFunctionalRoute("DELETE",t,s)}patch(t,s){this.registerFunctionalRoute("PATCH",t,s)}route(t){return new at(this,t)}group(t,s){let i=this.groupPrefix;this.groupPrefix=this.normalizePath(this.groupPrefix,t),s(),this.groupPrefix=i}registerFunctionalRoute(t,s,i){let n=this.normalizePath(this.groupPrefix,s),f={target:mt,propertyKey:`${t.toLowerCase()}_${n}`,method:t,path:n,middleware:i.middleware||[],parameters:this.extractParametersFromSchema(i.schema),dependencies:[],responses:i.responses||[],docs:i.docs,handler:i.handler};this.metadata.registerRoute(f)}extractParametersFromSchema(t){let s=[],i=0;if(t?.body)s.push({index:i++,type:"body",schema:t.body,required:!0});if(t?.query)s.push({index:i++,type:"query",schema:t.query,required:!1});if(t?.params)s.push({index:i++,type:"param",schema:t.params,required:!0});if(t?.headers)s.push({index:i++,type:"header",schema:t.headers,required:!1});return s}use(t){this.globalMiddleware.push(t),this.hono.use("*",t)}useCors(t){let s=qt(t);this.use(s)}useRateLimit(t){let s=vt(t);this.use(s)}useCompression(t){let s=Mt(t);this.use(s)}usePlugin(t){this.pluginManager.register(t)}getPluginManager(){return this.pluginManager}onError(t){this.errorHandler.setCustomHandler(t)}getErrorHandler(){return this.errorHandler}normalizePath(...t){let s=t.filter((i)=>i!=="").join("/").replace(/\/+/g,"/").replace(/\/$/,"");return s.startsWith("/")?s:`/${s}`}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(t,s){if(!this.compiled)await this.compile();let i=this.createAdapter();return this.serverInstance=i.listen(t,s),this.setupGracefulShutdown(),this.serverInstance}setupGracefulShutdown(){if(typeof process>"u")return;let t=async(s)=>{let i=dt().child({component:"app"});if(i.info(`Received ${s}, starting graceful shutdown...`),this.serverInstance&&typeof this.serverInstance.close==="function")try{await Promise.resolve(this.serverInstance.close()),i.info("Server closed gracefully")}catch(n){i.error("Error during shutdown",n)}process.exit(0)};process.on("SIGTERM",()=>t("SIGTERM")),process.on("SIGINT",()=>t("SIGINT"))}async shutdown(){if(this.serverInstance&&typeof this.serverInstance.close==="function")await Promise.resolve(this.serverInstance.close()),this.serverInstance=null}createAdapter(){let t=this.config.adapter||"hono";switch(t){case"hono":{let{HonoAdapter:s}=Ot(_t);return new s(this.hono)}case"express":{let{ExpressAdapter:s}=Ot(Yt);return new s(this)}case"native":{let{HonoAdapter:s}=Ot(_t);return new s(this.hono)}default:throw Error(`Unknown adapter type: ${t}. Supported adapters: 'hono', 'express', 'native'`)}}}class mt{}class at{app;path;constructor(t,s){this.app=t;this.path=s}get(t){return this.app.get(this.path,t),this}post(t){return this.app.post(this.path,t),this}put(t){return this.app.put(this.path,t),this}delete(t){return this.app.delete(this.path,t),this}patch(t){return this.app.patch(this.path,t),this}}function pt(t){let s={docs:!1,cors:!1,...t};return new $t(s)}function Ds(t,s,i,n){let f=t.getContainer(),h=typeof i==="function"?i:()=>i;f.register(s,{scope:n?.scope||"singleton",factory:h})}function ts(t){return new Q(t)}async function js(t,s){let i=pt(s);await t(i),await i.compile();let n=ts(i);return{app:i,client:n}}function Ns(t){t.getContainer().clear()}export{js as setupTestApp,Ds as mockDependency,ts as createTestClient,pt as createTestApp,Ns as clearMocks,Q as TestClient};export{nt as Q,Xt as R,li as S,ot as T,ht as U,rt as V,ct as W,wt as X,yt as Y,et as Z,Pt as _,bt as $,St as aa,It as ba,Zt as ca,$t as da,Q as ea,pt as fa,Ds as ga,ts as ha,js as ia,Ns as ja};
|
|
2
|
+
var e5=Object.create;var{getPrototypeOf:$3,defineProperty:c0,getOwnPropertyNames:o9,getOwnPropertyDescriptor:H3}=Object,s9=Object.prototype.hasOwnProperty;var Q3=($,H,Q)=>{Q=$!=null?e5($3($)):{};let J=H||!$||!$.__esModule?c0(Q,"default",{value:$,enumerable:!0}):Q;for(let X of o9($))if(!s9.call(J,X))c0(J,X,{get:()=>$[X],enumerable:!0});return J},p9=new WeakMap,w2=($)=>{var H=p9.get($),Q;if(H)return H;if(H=c0({},"__esModule",{value:!0}),$&&typeof $==="object"||typeof $==="function")o9($).map((J)=>!s9.call(H,J)&&c0(H,J,{get:()=>$[J],enumerable:!(Q=H3($,J))||Q.enumerable}));return p9.set($,H),H},b=($,H)=>()=>(H||$((H={exports:{}}).exports,H),H.exports);var r1=($,H)=>{for(var Q in H)c0($,Q,{get:H[Q],enumerable:!0,configurable:!0,set:(J)=>H[Q]=()=>J})};var z2=($,H)=>()=>($&&(H=$($=0)),H);var e=import.meta.require;var V8=b(()=>{/*! *****************************************************************************
|
|
3
|
+
Copyright (C) Microsoft. All rights reserved.
|
|
4
|
+
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
|
5
|
+
this file except in compliance with the License. You may obtain a copy of the
|
|
6
|
+
License at http://www.apache.org/licenses/LICENSE-2.0
|
|
3
7
|
|
|
4
|
-
|
|
8
|
+
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
9
|
+
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
|
|
10
|
+
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
|
|
11
|
+
MERCHANTABLITY OR NON-INFRINGEMENT.
|
|
12
|
+
|
|
13
|
+
See the Apache Version 2.0 License for specific language governing permissions
|
|
14
|
+
and limitations under the License.
|
|
15
|
+
***************************************************************************** */var D8;(function($){(function(H){var Q=typeof globalThis==="object"?globalThis:typeof global==="object"?global:typeof self==="object"?self:typeof this==="object"?this:W(),J=X($);if(typeof Q.Reflect<"u")J=X(Q.Reflect,J);if(H(J,Q),typeof Q.Reflect>"u")Q.Reflect=$;function X(q,B){return function(w,z){if(Object.defineProperty(q,w,{configurable:!0,writable:!0,value:z}),B)B(w,z)}}function Y(){try{return Function("return this;")()}catch(q){}}function G(){try{return(0,eval)("(function() { return this; })()")}catch(q){}}function W(){return Y()||G()}})(function(H,Q){var J=Object.prototype.hasOwnProperty,X=typeof Symbol==="function",Y=X&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",G=X&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",W=typeof Object.create==="function",q={__proto__:[]}instanceof Array,B=!W&&!q,w={create:W?function(){return B2(Object.create(null))}:q?function(){return B2({__proto__:null})}:function(){return B2({})},has:B?function(U,V){return J.call(U,V)}:function(U,V){return V in U},get:B?function(U,V){return J.call(U,V)?U[V]:void 0}:function(U,V){return U[V]}},z=Object.getPrototypeOf(Function),N=typeof Map==="function"&&typeof Map.prototype.entries==="function"?Map:o5(),D=typeof Set==="function"&&typeof Set.prototype.entries==="function"?Set:s5(),_=typeof WeakMap==="function"?WeakMap:r5(),A=X?Symbol.for("@reflect-metadata:registry"):void 0,R=n5(),M=i5(R);function S(U,V,F,f){if(!d(F)){if(!y9(U))throw TypeError();if(!X1(V))throw TypeError();if(!X1(f)&&!d(f)&&!z0(f))throw TypeError();if(z0(f))f=void 0;return F=f1(F),C(U,V,F,f)}else{if(!y9(U))throw TypeError();if(!u9(V))throw TypeError();return a(U,V)}}H("decorate",S);function O(U,V){function F(f,g){if(!X1(f))throw TypeError();if(!d(g)&&!d5(g))throw TypeError();_$(U,V,f,g)}return F}H("metadata",O);function T(U,V,F,f){if(!X1(F))throw TypeError();if(!d(f))f=f1(f);return _$(U,V,F,f)}H("defineMetadata",T);function h(U,V,F){if(!X1(V))throw TypeError();if(!d(F))F=f1(F);return B1(U,V,F)}H("hasMetadata",h);function m(U,V,F){if(!X1(V))throw TypeError();if(!d(F))F=f1(F);return w1(U,V,F)}H("hasOwnMetadata",m);function c(U,V,F){if(!X1(V))throw TypeError();if(!d(F))F=f1(F);return L1(U,V,F)}H("getMetadata",c);function s(U,V,F){if(!X1(V))throw TypeError();if(!d(F))F=f1(F);return g0(U,V,F)}H("getOwnMetadata",s);function v(U,V){if(!X1(U))throw TypeError();if(!d(V))V=f1(V);return y0(U,V)}H("getMetadataKeys",v);function t(U,V){if(!X1(U))throw TypeError();if(!d(V))V=f1(V);return U$(U,V)}H("getOwnMetadataKeys",t);function $1(U,V,F){if(!X1(V))throw TypeError();if(!d(F))F=f1(F);if(!X1(V))throw TypeError();if(!d(F))F=f1(F);var f=u0(V,F,!1);if(d(f))return!1;return f.OrdinaryDeleteMetadata(U,V,F)}H("deleteMetadata",$1);function a(U,V){for(var F=U.length-1;F>=0;--F){var f=U[F],g=f(V);if(!d(g)&&!z0(g)){if(!u9(g))throw TypeError();V=g}}return V}function C(U,V,F,f){for(var g=U.length-1;g>=0;--g){var Y1=U[g],q1=Y1(V,F,f);if(!d(q1)&&!z0(q1)){if(!X1(q1))throw TypeError();f=q1}}return f}function B1(U,V,F){var f=w1(U,V,F);if(f)return!0;var g=q2(V);if(!z0(g))return B1(U,g,F);return!1}function w1(U,V,F){var f=u0(V,F,!1);if(d(f))return!1;return g9(f.OrdinaryHasOwnMetadata(U,V,F))}function L1(U,V,F){var f=w1(U,V,F);if(f)return g0(U,V,F);var g=q2(V);if(!z0(g))return L1(U,g,F);return}function g0(U,V,F){var f=u0(V,F,!1);if(d(f))return;return f.OrdinaryGetOwnMetadata(U,V,F)}function _$(U,V,F,f){var g=u0(F,f,!0);g.OrdinaryDefineOwnMetadata(U,V,F,f)}function y0(U,V){var F=U$(U,V),f=q2(U);if(f===null)return F;var g=y0(f,V);if(g.length<=0)return F;if(F.length<=0)return g;var Y1=new D,q1=[];for(var p=0,P=F;p<P.length;p++){var I=P[p],Z=Y1.has(I);if(!Z)Y1.add(I),q1.push(I)}for(var k=0,r=g;k<r.length;k++){var I=r[k],Z=Y1.has(I);if(!Z)Y1.add(I),q1.push(I)}return q1}function U$(U,V){var F=u0(U,V,!1);if(!F)return[];return F.OrdinaryOwnMetadataKeys(U,V)}function v9(U){if(U===null)return 1;switch(typeof U){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return U===null?1:6;default:return 6}}function d(U){return U===void 0}function z0(U){return U===null}function y5(U){return typeof U==="symbol"}function X1(U){return typeof U==="object"?U!==null:typeof U==="function"}function u5(U,V){switch(v9(U)){case 0:return U;case 1:return U;case 2:return U;case 3:return U;case 4:return U;case 5:return U}var F=V===3?"string":V===5?"number":"default",f=c9(U,Y);if(f!==void 0){var g=f.call(U,F);if(X1(g))throw TypeError();return g}return c5(U,F==="default"?"number":F)}function c5(U,V){if(V==="string"){var F=U.toString;if(_0(F)){var f=F.call(U);if(!X1(f))return f}var g=U.valueOf;if(_0(g)){var f=g.call(U);if(!X1(f))return f}}else{var g=U.valueOf;if(_0(g)){var f=g.call(U);if(!X1(f))return f}var Y1=U.toString;if(_0(Y1)){var f=Y1.call(U);if(!X1(f))return f}}throw TypeError()}function g9(U){return!!U}function m5(U){return""+U}function f1(U){var V=u5(U,3);if(y5(V))return V;return m5(V)}function y9(U){return Array.isArray?Array.isArray(U):U instanceof Object?U instanceof Array:Object.prototype.toString.call(U)==="[object Array]"}function _0(U){return typeof U==="function"}function u9(U){return typeof U==="function"}function d5(U){switch(v9(U)){case 3:return!0;case 4:return!0;default:return!1}}function W2(U,V){return U===V||U!==U&&V!==V}function c9(U,V){var F=U[V];if(F===void 0||F===null)return;if(!_0(F))throw TypeError();return F}function m9(U){var V=c9(U,G);if(!_0(V))throw TypeError();var F=V.call(U);if(!X1(F))throw TypeError();return F}function d9(U){return U.value}function l9(U){var V=U.next();return V.done?!1:V}function n9(U){var V=U.return;if(V)V.call(U)}function q2(U){var V=Object.getPrototypeOf(U);if(typeof U!=="function"||U===z)return V;if(V!==z)return V;var F=U.prototype,f=F&&Object.getPrototypeOf(F);if(f==null||f===Object.prototype)return V;var g=f.constructor;if(typeof g!=="function")return V;if(g===U)return V;return g}function l5(){var U;if(!d(A)&&typeof Q.Reflect<"u"&&!(A in Q.Reflect)&&typeof Q.Reflect.defineMetadata==="function")U=p5(Q.Reflect);var V,F,f,g=new _,Y1={registerProvider:q1,getProvider:P,setProvider:Z};return Y1;function q1(k){if(!Object.isExtensible(Y1))throw Error("Cannot add provider to a frozen registry.");switch(!0){case U===k:break;case d(V):V=k;break;case V===k:break;case d(F):F=k;break;case F===k:break;default:if(f===void 0)f=new D;f.add(k);break}}function p(k,r){if(!d(V)){if(V.isProviderFor(k,r))return V;if(!d(F)){if(F.isProviderFor(k,r))return V;if(!d(f)){var H1=m9(f);while(!0){var G1=l9(H1);if(!G1)return;var R1=d9(G1);if(R1.isProviderFor(k,r))return n9(H1),R1}}}}if(!d(U)&&U.isProviderFor(k,r))return U;return}function P(k,r){var H1=g.get(k),G1;if(!d(H1))G1=H1.get(r);if(!d(G1))return G1;if(G1=p(k,r),!d(G1)){if(d(H1))H1=new N,g.set(k,H1);H1.set(r,G1)}return G1}function I(k){if(d(k))throw TypeError();return V===k||F===k||!d(f)&&f.has(k)}function Z(k,r,H1){if(!I(H1))throw Error("Metadata provider not registered.");var G1=P(k,r);if(G1!==H1){if(!d(G1))return!1;var R1=g.get(k);if(d(R1))R1=new N,g.set(k,R1);R1.set(r,H1)}return!0}}function n5(){var U;if(!d(A)&&X1(Q.Reflect)&&Object.isExtensible(Q.Reflect))U=Q.Reflect[A];if(d(U))U=l5();if(!d(A)&&X1(Q.Reflect)&&Object.isExtensible(Q.Reflect))Object.defineProperty(Q.Reflect,A,{enumerable:!1,configurable:!1,writable:!1,value:U});return U}function i5(U){var V=new _,F={isProviderFor:function(I,Z){var k=V.get(I);if(d(k))return!1;return k.has(Z)},OrdinaryDefineOwnMetadata:q1,OrdinaryHasOwnMetadata:g,OrdinaryGetOwnMetadata:Y1,OrdinaryOwnMetadataKeys:p,OrdinaryDeleteMetadata:P};return R.registerProvider(F),F;function f(I,Z,k){var r=V.get(I),H1=!1;if(d(r)){if(!k)return;r=new N,V.set(I,r),H1=!0}var G1=r.get(Z);if(d(G1)){if(!k)return;if(G1=new N,r.set(Z,G1),!U.setProvider(I,Z,F)){if(r.delete(Z),H1)V.delete(I);throw Error("Wrong provider for target.")}}return G1}function g(I,Z,k){var r=f(Z,k,!1);if(d(r))return!1;return g9(r.has(I))}function Y1(I,Z,k){var r=f(Z,k,!1);if(d(r))return;return r.get(I)}function q1(I,Z,k,r){var H1=f(k,r,!0);H1.set(I,Z)}function p(I,Z){var k=[],r=f(I,Z,!1);if(d(r))return k;var H1=r.keys(),G1=m9(H1),R1=0;while(!0){var i9=l9(G1);if(!i9)return k.length=R1,k;var a5=d9(i9);try{k[R1]=a5}catch(t5){try{n9(G1)}finally{throw t5}}R1++}}function P(I,Z,k){var r=f(Z,k,!1);if(d(r))return!1;if(!r.delete(I))return!1;if(r.size===0){var H1=V.get(Z);if(!d(H1)){if(H1.delete(k),H1.size===0)V.delete(H1)}}return!0}}function p5(U){var{defineMetadata:V,hasOwnMetadata:F,getOwnMetadata:f,getOwnMetadataKeys:g,deleteMetadata:Y1}=U,q1=new _,p={isProviderFor:function(P,I){var Z=q1.get(P);if(!d(Z)&&Z.has(I))return!0;if(g(P,I).length){if(d(Z))Z=new D,q1.set(P,Z);return Z.add(I),!0}return!1},OrdinaryDefineOwnMetadata:V,OrdinaryHasOwnMetadata:F,OrdinaryGetOwnMetadata:f,OrdinaryOwnMetadataKeys:g,OrdinaryDeleteMetadata:Y1};return p}function u0(U,V,F){var f=R.getProvider(U,V);if(!d(f))return f;if(F){if(R.setProvider(U,V,M))return M;throw Error("Illegal state.")}return}function o5(){var U={},V=[],F=function(){function p(P,I,Z){this._index=0,this._keys=P,this._values=I,this._selector=Z}return p.prototype["@@iterator"]=function(){return this},p.prototype[G]=function(){return this},p.prototype.next=function(){var P=this._index;if(P>=0&&P<this._keys.length){var I=this._selector(this._keys[P],this._values[P]);if(P+1>=this._keys.length)this._index=-1,this._keys=V,this._values=V;else this._index++;return{value:I,done:!1}}return{value:void 0,done:!0}},p.prototype.throw=function(P){if(this._index>=0)this._index=-1,this._keys=V,this._values=V;throw P},p.prototype.return=function(P){if(this._index>=0)this._index=-1,this._keys=V,this._values=V;return{value:P,done:!0}},p}(),f=function(){function p(){this._keys=[],this._values=[],this._cacheKey=U,this._cacheIndex=-2}return Object.defineProperty(p.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),p.prototype.has=function(P){return this._find(P,!1)>=0},p.prototype.get=function(P){var I=this._find(P,!1);return I>=0?this._values[I]:void 0},p.prototype.set=function(P,I){var Z=this._find(P,!0);return this._values[Z]=I,this},p.prototype.delete=function(P){var I=this._find(P,!1);if(I>=0){var Z=this._keys.length;for(var k=I+1;k<Z;k++)this._keys[k-1]=this._keys[k],this._values[k-1]=this._values[k];if(this._keys.length--,this._values.length--,W2(P,this._cacheKey))this._cacheKey=U,this._cacheIndex=-2;return!0}return!1},p.prototype.clear=function(){this._keys.length=0,this._values.length=0,this._cacheKey=U,this._cacheIndex=-2},p.prototype.keys=function(){return new F(this._keys,this._values,g)},p.prototype.values=function(){return new F(this._keys,this._values,Y1)},p.prototype.entries=function(){return new F(this._keys,this._values,q1)},p.prototype["@@iterator"]=function(){return this.entries()},p.prototype[G]=function(){return this.entries()},p.prototype._find=function(P,I){if(!W2(this._cacheKey,P)){this._cacheIndex=-1;for(var Z=0;Z<this._keys.length;Z++)if(W2(this._keys[Z],P)){this._cacheIndex=Z;break}}if(this._cacheIndex<0&&I)this._cacheIndex=this._keys.length,this._keys.push(P),this._values.push(void 0);return this._cacheIndex},p}();return f;function g(p,P){return p}function Y1(p,P){return P}function q1(p,P){return[p,P]}}function s5(){var U=function(){function V(){this._map=new N}return Object.defineProperty(V.prototype,"size",{get:function(){return this._map.size},enumerable:!0,configurable:!0}),V.prototype.has=function(F){return this._map.has(F)},V.prototype.add=function(F){return this._map.set(F,F),this},V.prototype.delete=function(F){return this._map.delete(F)},V.prototype.clear=function(){this._map.clear()},V.prototype.keys=function(){return this._map.keys()},V.prototype.values=function(){return this._map.keys()},V.prototype.entries=function(){return this._map.entries()},V.prototype["@@iterator"]=function(){return this.keys()},V.prototype[G]=function(){return this.keys()},V}();return U}function r5(){var U=16,V=w.create(),F=f();return function(){function P(){this._key=f()}return P.prototype.has=function(I){var Z=g(I,!1);return Z!==void 0?w.has(Z,this._key):!1},P.prototype.get=function(I){var Z=g(I,!1);return Z!==void 0?w.get(Z,this._key):void 0},P.prototype.set=function(I,Z){var k=g(I,!0);return k[this._key]=Z,this},P.prototype.delete=function(I){var Z=g(I,!1);return Z!==void 0?delete Z[this._key]:!1},P.prototype.clear=function(){this._key=f()},P}();function f(){var P;do P="@@WeakMap@@"+p();while(w.has(V,P));return V[P]=!0,P}function g(P,I){if(!J.call(P,F)){if(!I)return;Object.defineProperty(P,F,{value:w.create()})}return P[F]}function Y1(P,I){for(var Z=0;Z<I;++Z)P[Z]=Math.random()*255|0;return P}function q1(P){if(typeof Uint8Array==="function"){var I=new Uint8Array(P);if(typeof crypto<"u")crypto.getRandomValues(I);else if(typeof msCrypto<"u")msCrypto.getRandomValues(I);else Y1(I,P);return I}return Y1(Array(P),P)}function p(){var P=q1(U);P[6]=P[6]&79|64,P[8]=P[8]&191|128;var I="";for(var Z=0;Z<U;++Z){var k=P[Z];if(Z===4||Z===6||Z===8)I+="-";if(k<16)I+="0";I+=k.toString(16).toLowerCase()}return I}}function B2(U){return U.__=void 0,delete U.__,U}})})(D8||(D8={}))});var D1,j3,O3,S3,n2;var p0=z2(()=>{D1=class D1 extends Error{statusCode;details;constructor($,H,Q){super(H);this.statusCode=$;this.details=Q;if(this.name="HTTPException",Error.captureStackTrace)Error.captureStackTrace(this,this.constructor)}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};j3=class j3 extends D1{constructor($="Not Found",H){super(404,$,H);this.name="NotFoundException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};O3=class O3 extends D1{constructor($="Unauthorized",H){super(401,$,H);this.name="UnauthorizedException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};S3=class S3 extends D1{constructor($="Forbidden",H){super(403,$,H);this.name="ForbiddenException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};n2=class n2 extends D1{constructor($="Bad Request",H){super(400,$,H);this.name="BadRequestException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}}});var p2={};r1(p2,{parseTTL:()=>i2});function i2($){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 Q=parseInt(H[1],10),J=H[2];switch(J){case"s":return Q;case"m":return Q*60;case"h":return Q*3600;case"d":return Q*86400;default:throw Error(`Unknown TTL unit: ${J}`)}}class o2{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,Q=0){if(this.cache.size>=this.maxSize&&!this.cache.has($))this.removeOldest();let J=Date.now(),X={data:H,createdAt:J,expiresAt:Q>0?J+Q*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($),Q=0;for(let J of this.cache.keys())if(H.test(J))this.cache.delete(J),Q++;return Q}async keys($){let H=Array.from(this.cache.keys());if(!$)return H;let Q=this.patternToRegex($);return H.filter((J)=>Q.test(J))}getStats(){return{size:this.cache.size,maxSize:this.maxSize}}cleanup(){let $=Date.now();for(let[H,Q]of this.cache.entries())if(Q.expiresAt>0&&$>Q.expiresAt)this.cache.delete(H)}removeOldest(){let $=null,H=1/0;for(let[Q,J]of this.cache.entries())if(J.createdAt<H)H=J.createdAt,$=Q;if($)this.cache.delete($)}patternToRegex($){let Q=$.replace(/[.+?^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*");return new RegExp(`^${Q}$`)}destroy(){if(this.cleanupInterval)clearInterval(this.cleanupInterval)}}var s2={};r1(s2,{setCache:()=>f3,invalidateCache:()=>K3,getCache:()=>L3,deleteCache:()=>C3,clearCache:()=>P3,CacheManager:()=>e1});async function L3($){return await e1.get($)}async function f3($,H,Q){await e1.set($,H,Q)}async function C3($){return await e1.delete($)}async function K3($){return await e1.invalidate($)}async function P3(){await e1.clear()}var e1;var r2=z2(()=>{e1=class e1{static defaultStore=new o2;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,Q,J,X){let Y=[];if(X?.prefix)Y.push(X.prefix);if(X?.key){let G=X.key;if(Q)for(let[W,q]of Object.entries(Q))G=G.replace(`{${W}}`,String(q));Y.push(G)}else if(Y.push($.toLowerCase()),Y.push(H.replace(/\//g,":")),Q&&Object.keys(Q).length>0)Y.push(JSON.stringify(Q));if(X?.includeQuery&&J&&Object.keys(J).length>0){let G=Object.keys(J).sort().reduce((W,q)=>{return W[q]=J[q],W},{});Y.push(JSON.stringify(G))}return Y.join(":")}static async get($,H){return await(H||this.defaultStore).get($)}static async set($,H,Q,J){let X=J||this.defaultStore,Y=Q?i2(Q):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 f8={};r1(f8,{TokenRevokedException:()=>L8,TokenExpiredException:()=>O8,InvalidTokenException:()=>S8,AuthorizationException:()=>j8,AuthenticationException:()=>o0});var o0,j8,O8,S8,L8;var C8=z2(()=>{p0();o0=class o0 extends D1{constructor($="Authentication required"){super(401,$);this.name="AuthenticationException"}toJSON(){return{error:"Authentication Error",message:this.message,statusCode:401}}};j8=class j8 extends D1{constructor($="Insufficient permissions"){super(403,$);this.name="AuthorizationException"}toJSON(){return{error:"Authorization Error",message:this.message,statusCode:403}}};O8=class O8 extends o0{constructor($="Token has expired"){super($);this.name="TokenExpiredException"}};S8=class S8 extends o0{constructor($="Invalid token"){super($);this.name="InvalidTokenException"}};L8=class L8 extends o0{constructor($="Token has been revoked"){super($);this.name="TokenRevokedException"}}});var a2={};r1(a2,{setRequestMetadata:()=>h3,setRequestContext:()=>P8,initializeRequestContext:()=>T3,getRequestMetadata:()=>x3,getRequestId:()=>b3,getRequestDuration:()=>k3,getRequestContext:()=>u1,getAbortSignal:()=>I3,generateRequestId:()=>K8,cleanupRequestContext:()=>v3,abortRequest:()=>Z3});function K8(){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 u1($){return $.get("veloce:request-context")||null}function P8($,H){$.set("veloce:request-context",H)}function T3($,H){let Q=H?.requestId||K8(),J=new AbortController,X={requestId:Q,startTime:Date.now(),abortSignal:J.signal,abortController:J,timeout:H?.timeout,metadata:{}};if(H?.timeout&&H.timeout>0)X.timeoutId=setTimeout(()=>{J.abort()},H.timeout);return P8($,X),X}function b3($){return u1($)?.requestId||null}function I3($){return u1($)?.abortSignal||null}function Z3($){let H=u1($);if(H?.abortController&&!H.abortSignal.aborted)H.abortController.abort()}function h3($,H,Q){let J=u1($);if(J)J.metadata[H]=Q}function x3($,H){return u1($)?.metadata[H]}function k3($){let H=u1($);if(!H)return null;return Date.now()-H.startTime}function v3($){let H=u1($);if(H?.timeoutId)clearTimeout(H.timeoutId)}var G4=b((EN,p8)=>{var Q$=($)=>{return $&&typeof $.message==="string"},Y4=($)=>{if(!$)return;let H=$.cause;if(typeof H==="function"){let Q=$.cause();return Q$(Q)?Q:void 0}else return Q$(H)?H:void 0},n8=($,H)=>{if(!Q$($))return"";let Q=$.stack||"";if(H.has($))return Q+`
|
|
16
|
+
causes have become circular...`;let J=Y4($);if(J)return H.add($),Q+`
|
|
17
|
+
caused by: `+n8(J,H);else return Q},oQ=($)=>n8($,new Set),i8=($,H,Q)=>{if(!Q$($))return"";let J=Q?"":$.message||"";if(H.has($))return J+": ...";let X=Y4($);if(X){H.add($);let Y=typeof $.cause==="function";return J+(Y?"":": ")+i8(X,H,Y)}else return J},sQ=($)=>i8($,new Set);p8.exports={isErrorLike:Q$,getErrorCause:Y4,stackWithCauses:oQ,messageWithCauses:sQ}});var W4=b((MN,s8)=>{var rQ=Symbol("circular-ref-tag"),C$=Symbol("pino-raw-err-ref"),o8=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[C$]},set:function($){this[C$]=$}}});Object.defineProperty(o8,C$,{writable:!0,value:{}});s8.exports={pinoErrProto:o8,pinoErrorSymbols:{seen:rQ,rawSymbol:C$}}});var t8=b((jN,a8)=>{a8.exports=B4;var{messageWithCauses:aQ,stackWithCauses:tQ,isErrorLike:r8}=G4(),{pinoErrProto:eQ,pinoErrorSymbols:$J}=W4(),{seen:q4}=$J,{toString:HJ}=Object.prototype;function B4($){if(!r8($))return $;$[q4]=void 0;let H=Object.create(eQ);if(H.type=HJ.call($.constructor)==="[object Function]"?$.constructor.name:$.name,H.message=aQ($),H.stack=tQ($),Array.isArray($.errors))H.aggregateErrors=$.errors.map((Q)=>B4(Q));for(let Q in $)if(H[Q]===void 0){let J=$[Q];if(r8(J)){if(Q!=="cause"&&!Object.prototype.hasOwnProperty.call(J,q4))H[Q]=B4(J)}else H[Q]=J}return delete $[q4],H.raw=$,H}});var $H=b((ON,e8)=>{e8.exports=P$;var{isErrorLike:w4}=G4(),{pinoErrProto:QJ,pinoErrorSymbols:JJ}=W4(),{seen:K$}=JJ,{toString:XJ}=Object.prototype;function P$($){if(!w4($))return $;$[K$]=void 0;let H=Object.create(QJ);if(H.type=XJ.call($.constructor)==="[object Function]"?$.constructor.name:$.name,H.message=$.message,H.stack=$.stack,Array.isArray($.errors))H.aggregateErrors=$.errors.map((Q)=>P$(Q));if(w4($.cause)&&!Object.prototype.hasOwnProperty.call($.cause,K$))H.cause=P$($.cause);for(let Q in $)if(H[Q]===void 0){let J=$[Q];if(w4(J)){if(!Object.prototype.hasOwnProperty.call(J,K$))H[Q]=P$(J)}else H[Q]=J}return delete $[K$],H.raw=$,H}});var XH=b((SN,JH)=>{JH.exports={mapHttpRequest:YJ,reqSerializer:QH};var z4=Symbol("pino-raw-req-ref"),HH=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[z4]},set:function($){this[z4]=$}}});Object.defineProperty(HH,z4,{writable:!0,value:{}});function QH($){let H=$.info||$.socket,Q=Object.create(HH);if(Q.id=typeof $.id==="function"?$.id():$.id||($.info?$.info.id:void 0),Q.method=$.method,$.originalUrl)Q.url=$.originalUrl;else{let J=$.path;Q.url=typeof J==="string"?J:$.url?$.url.path||$.url:void 0}if($.query)Q.query=$.query;if($.params)Q.params=$.params;return Q.headers=$.headers,Q.remoteAddress=H&&H.remoteAddress,Q.remotePort=H&&H.remotePort,Q.raw=$.raw||$,Q}function YJ($){return{req:QH($)}}});var qH=b((LN,WH)=>{WH.exports={mapHttpResponse:GJ,resSerializer:GH};var _4=Symbol("pino-raw-res-ref"),YH=Object.create({},{statusCode:{enumerable:!0,writable:!0,value:0},headers:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[_4]},set:function($){this[_4]=$}}});Object.defineProperty(YH,_4,{writable:!0,value:{}});function GH($){let H=Object.create(YH);return H.statusCode=$.headersSent?$.statusCode:null,H.headers=$.getHeaders?$.getHeaders():$._headers,H.raw=$,H}function GJ($){return{res:GH($)}}});var N4=b((fN,BH)=>{var U4=t8(),WJ=$H(),T$=XH(),b$=qH();BH.exports={err:U4,errWithCause:WJ,mapHttpRequest:T$.mapHttpRequest,mapHttpResponse:b$.mapHttpResponse,req:T$.reqSerializer,res:b$.resSerializer,wrapErrorSerializer:function(H){if(H===U4)return H;return function(J){return H(U4(J))}},wrapRequestSerializer:function(H){if(H===T$.reqSerializer)return H;return function(J){return H(T$.reqSerializer(J))}},wrapResponseSerializer:function(H){if(H===b$.resSerializer)return H;return function(J){return H(b$.resSerializer(J))}}}});var D4=b((CN,wH)=>{function qJ($,H){return H}wH.exports=function(){let H=Error.prepareStackTrace;Error.prepareStackTrace=qJ;let Q=Error().stack;if(Error.prepareStackTrace=H,!Array.isArray(Q))return;let J=Q.slice(2),X=[];for(let Y of J){if(!Y)continue;X.push(Y.getFileName())}return X}});var VH=b((KN,DH)=>{function V4($){if($===null||typeof $!=="object")return $;if($ instanceof Date)return new Date($.getTime());if($ instanceof Array){let H=[];for(let Q=0;Q<$.length;Q++)H[Q]=V4($[Q]);return H}if(typeof $==="object"){let H=Object.create(Object.getPrototypeOf($));for(let Q in $)if(Object.prototype.hasOwnProperty.call($,Q))H[Q]=V4($[Q]);return H}return $}function zH($){let H=[],Q="",J=!1,X=!1,Y="";for(let G=0;G<$.length;G++){let W=$[G];if(!J&&W==="."){if(Q)H.push(Q),Q=""}else if(W==="["){if(Q)H.push(Q),Q="";J=!0}else if(W==="]"&&J)H.push(Q),Q="",J=!1,X=!1;else if((W==='"'||W==="'")&&J)if(!X)X=!0,Y=W;else if(W===Y)X=!1,Y="";else Q+=W;else Q+=W}if(Q)H.push(Q);return H}function _H($,H,Q){let J=$;for(let Y=0;Y<H.length-1;Y++){let G=H[Y];if(typeof J!=="object"||J===null||!(G in J))return!1;if(typeof J[G]!=="object"||J[G]===null)return!1;J=J[G]}let X=H[H.length-1];if(X==="*"){if(Array.isArray(J))for(let Y=0;Y<J.length;Y++)J[Y]=Q;else if(typeof J==="object"&&J!==null){for(let Y in J)if(Object.prototype.hasOwnProperty.call(J,Y))J[Y]=Q}}else if(typeof J==="object"&&J!==null&&X in J&&Object.prototype.hasOwnProperty.call(J,X))J[X]=Q;return!0}function UH($,H){let Q=$;for(let X=0;X<H.length-1;X++){let Y=H[X];if(typeof Q!=="object"||Q===null||!(Y in Q))return!1;if(typeof Q[Y]!=="object"||Q[Y]===null)return!1;Q=Q[Y]}let J=H[H.length-1];if(J==="*"){if(Array.isArray(Q))for(let X=0;X<Q.length;X++)Q[X]=void 0;else if(typeof Q==="object"&&Q!==null){for(let X in Q)if(Object.prototype.hasOwnProperty.call(Q,X))delete Q[X]}}else if(typeof Q==="object"&&Q!==null&&J in Q&&Object.prototype.hasOwnProperty.call(Q,J))delete Q[J];return!0}var I$=Symbol("PATH_NOT_FOUND");function BJ($,H){let Q=$;for(let J of H){if(Q===null||Q===void 0)return I$;if(typeof Q!=="object"||Q===null)return I$;if(!(J in Q))return I$;Q=Q[J]}return Q}function wJ($,H){let Q=$;for(let J of H){if(Q===null||Q===void 0)return;if(typeof Q!=="object"||Q===null)return;Q=Q[J]}return Q}function zJ($,H,Q,J=!1){for(let X of H){let Y=zH(X);if(Y.includes("*"))NH($,Y,Q,X,J);else if(J)UH($,Y);else{let G=BJ($,Y);if(G===I$)continue;let W=typeof Q==="function"?Q(G,Y):Q;_H($,Y,W)}}}function NH($,H,Q,J,X=!1){let Y=H.indexOf("*");if(Y===H.length-1){let G=H.slice(0,-1),W=$;for(let q of G){if(W===null||W===void 0)return;if(typeof W!=="object"||W===null)return;W=W[q]}if(Array.isArray(W))if(X)for(let q=0;q<W.length;q++)W[q]=void 0;else for(let q=0;q<W.length;q++){let B=[...G,q.toString()],w=typeof Q==="function"?Q(W[q],B):Q;W[q]=w}else if(typeof W==="object"&&W!==null)if(X){let q=[];for(let B in W)if(Object.prototype.hasOwnProperty.call(W,B))q.push(B);for(let B of q)delete W[B]}else for(let q in W){let B=[...G,q],w=typeof Q==="function"?Q(W[q],B):Q;W[q]=w}}else _J($,H,Q,Y,J,X)}function _J($,H,Q,J,X,Y=!1){let G=H.slice(0,J),W=H.slice(J+1),q=[];function B(w,z){if(z===G.length){if(Array.isArray(w))for(let N=0;N<w.length;N++)q[z]=N.toString(),B(w[N],z+1);else if(typeof w==="object"&&w!==null)for(let N in w)q[z]=N,B(w[N],z+1)}else if(z<G.length){let N=G[z];if(w&&typeof w==="object"&&w!==null&&N in w)q[z]=N,B(w[N],z+1)}else if(W.includes("*"))NH(w,W,typeof Q==="function"?(D,_)=>{let A=[...q.slice(0,z),..._];return Q(D,A)}:Q,X,Y);else if(Y)UH(w,W);else{let N=typeof Q==="function"?Q(wJ(w,W),[...q.slice(0,z),...W]):Q;_H(w,W,N)}}if(G.length===0)B($,0);else{let w=$;for(let z=0;z<G.length;z++){let N=G[z];if(w===null||w===void 0)return;if(typeof w!=="object"||w===null)return;w=w[N],q[z]=N}if(w!==null&&w!==void 0)B(w,G.length)}}function UJ($){if($.length===0)return null;let H=new Map;for(let Q of $){let J=zH(Q),X=H;for(let Y=0;Y<J.length;Y++){let G=J[Y];if(!X.has(G))X.set(G,new Map);X=X.get(G)}}return H}function NJ($,H){if(!H)return $;function Q(J,X,Y=0){if(!X||X.size===0)return J;if(J===null||typeof J!=="object")return J;if(J instanceof Date)return new Date(J.getTime());if(Array.isArray(J)){let W=[];for(let q=0;q<J.length;q++){let B=q.toString();if(X.has(B)||X.has("*"))W[q]=Q(J[q],X.get(B)||X.get("*"));else W[q]=J[q]}return W}let G=Object.create(Object.getPrototypeOf(J));for(let W in J)if(Object.prototype.hasOwnProperty.call(J,W))if(X.has(W)||X.has("*"))G[W]=Q(J[W],X.get(W)||X.get("*"));else G[W]=J[W];return G}return Q($,H)}function DJ($){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,Q=!1,J="";for(let X=0;X<$.length;X++){let Y=$[X];if((Y==='"'||Y==="'")&&H>0){if(!Q)Q=!0,J=Y;else if(Y===J)Q=!1,J=""}else if(Y==="["&&!Q)H++;else if(Y==="]"&&!Q){if(H--,H<0)throw Error(`Invalid redaction path (${$})`)}}if(H!==0)throw Error(`Invalid redaction path (${$})`)}function VJ($){if(!Array.isArray($))throw TypeError("paths must be an array");for(let H of $)DJ(H)}function RJ($={}){let{paths:H=[],censor:Q="[REDACTED]",serialize:J=JSON.stringify,strict:X=!0,remove:Y=!1}=$;VJ(H);let G=UJ(H);return function(q){if(X&&(q===null||typeof q!=="object")){if(q===null||q===void 0)return J?J(q):q;if(typeof q!=="object")return J?J(q):q}let B=NJ(q,G),w=q,z=Q;if(typeof Q==="function")z=Q;if(zJ(B,H,z,Y),J===!1)return B.restore=function(){return V4(w)},B;if(typeof J==="function")return J(B);return JSON.stringify(B)}}DH.exports=RJ});var b0=b((PN,RH)=>{var AJ=Symbol("pino.setLevel"),FJ=Symbol("pino.getLevel"),EJ=Symbol("pino.levelVal"),MJ=Symbol("pino.levelComp"),jJ=Symbol("pino.useLevelLabels"),OJ=Symbol("pino.useOnlyCustomLevels"),SJ=Symbol("pino.mixin"),LJ=Symbol("pino.lsCache"),fJ=Symbol("pino.chindings"),CJ=Symbol("pino.asJson"),KJ=Symbol("pino.write"),PJ=Symbol("pino.redactFmt"),TJ=Symbol("pino.time"),bJ=Symbol("pino.timeSliceIndex"),IJ=Symbol("pino.stream"),ZJ=Symbol("pino.stringify"),hJ=Symbol("pino.stringifySafe"),xJ=Symbol("pino.stringifiers"),kJ=Symbol("pino.end"),vJ=Symbol("pino.formatOpts"),gJ=Symbol("pino.messageKey"),yJ=Symbol("pino.errorKey"),uJ=Symbol("pino.nestedKey"),cJ=Symbol("pino.nestedKeyStr"),mJ=Symbol("pino.mixinMergeStrategy"),dJ=Symbol("pino.msgPrefix"),lJ=Symbol("pino.wildcardFirst"),nJ=Symbol.for("pino.serializers"),iJ=Symbol.for("pino.formatters"),pJ=Symbol.for("pino.hooks"),oJ=Symbol.for("pino.metadata");RH.exports={setLevelSym:AJ,getLevelSym:FJ,levelValSym:EJ,levelCompSym:MJ,useLevelLabelsSym:jJ,mixinSym:SJ,lsCacheSym:LJ,chindingsSym:fJ,asJsonSym:CJ,writeSym:KJ,serializersSym:nJ,redactFmtSym:PJ,timeSym:TJ,timeSliceIndexSym:bJ,streamSym:IJ,stringifySym:ZJ,stringifySafeSym:hJ,stringifiersSym:xJ,endSym:kJ,formatOptsSym:vJ,messageKeySym:gJ,errorKeySym:yJ,nestedKeySym:uJ,wildcardFirstSym:lJ,needsMetadataGsym:oJ,useOnlyCustomLevelsSym:OJ,formattersSym:iJ,hooksSym:pJ,nestedKeyStrSym:cJ,mixinMergeStrategySym:mJ,msgPrefixSym:dJ}});var A4=b((TN,FH)=>{var AH=VH(),{redactFmtSym:sJ,wildcardFirstSym:Z$}=b0(),R4=/[^.[\]]+|\[([^[\]]*?)\]/g;function rJ($,H){let{paths:Q,censor:J,remove:X}=aJ($),Y=Q.reduce((q,B)=>{R4.lastIndex=0;let w=R4.exec(B),z=R4.exec(B),N=w[1]!==void 0?w[1].replace(/^(?:"|'|`)(.*)(?:"|'|`)$/,"$1"):w[0];if(N==="*")N=Z$;if(z===null)return q[N]=null,q;if(q[N]===null)return q;let{index:D}=z,_=`${B.substr(D,B.length-1)}`;if(q[N]=q[N]||[],N!==Z$&&q[N].length===0)q[N].push(...q[Z$]||[]);if(N===Z$)Object.keys(q).forEach(function(A){if(q[A])q[A].push(_)});return q[N].push(_),q},{}),G={[sJ]:AH({paths:Q,censor:J,serialize:H,strict:!1,remove:X})},W=(...q)=>{return typeof J==="function"?H(J(...q)):H(J)};return[...Object.keys(Y),...Object.getOwnPropertySymbols(Y)].reduce((q,B)=>{if(Y[B]===null)q[B]=(w)=>W(w,[B]);else{let w=typeof J==="function"?(z,N)=>{return J(z,[B,...N])}:J;q[B]=AH({paths:Y[B],censor:w,serialize:H,strict:!1,remove:X})}return q},G)}function aJ($){if(Array.isArray($))return $={paths:$,censor:"[Redacted]"},$;let{paths:H,censor:Q="[Redacted]",remove:J}=$;if(Array.isArray(H)===!1)throw Error("pino \u2013 redact must contain an array of strings");if(J===!0)Q=void 0;return{paths:H,censor:Q,remove:J}}FH.exports=rJ});var jH=b((bN,MH)=>{var tJ=()=>"",eJ=()=>`,"time":${Date.now()}`,$X=()=>`,"time":${Math.round(Date.now()/1000)}`,HX=()=>`,"time":"${new Date(Date.now()).toISOString()}"`,QX=1000000n,EH=1000000000n,JX=BigInt(Date.now())*QX,XX=process.hrtime.bigint(),YX=()=>{let $=process.hrtime.bigint()-XX,H=JX+$,Q=H/EH,J=H%EH,X=Number(Q*1000n+J/1000000n),Y=new Date(X),G=Y.getUTCFullYear(),W=(Y.getUTCMonth()+1).toString().padStart(2,"0"),q=Y.getUTCDate().toString().padStart(2,"0"),B=Y.getUTCHours().toString().padStart(2,"0"),w=Y.getUTCMinutes().toString().padStart(2,"0"),z=Y.getUTCSeconds().toString().padStart(2,"0");return`,"time":"${G}-${W}-${q}T${B}:${w}:${z}.${J.toString().padStart(9,"0")}Z"`};MH.exports={nullTime:tJ,epochTime:eJ,unixTime:$X,isoTime:HX,isoTimeNano:YX}});var SH=b((IN,OH)=>{function GX($){try{return JSON.stringify($)}catch(H){return'"[Circular]"'}}OH.exports=WX;function WX($,H,Q){var J=Q&&Q.stringify||GX,X=1;if(typeof $==="object"&&$!==null){var Y=H.length+X;if(Y===1)return $;var G=Array(Y);G[0]=J($);for(var W=1;W<Y;W++)G[W]=J(H[W]);return G.join(" ")}if(typeof $!=="string")return $;var q=H.length;if(q===0)return $;var B="",w=1-X,z=-1,N=$&&$.length||0;for(var D=0;D<N;){if($.charCodeAt(D)===37&&D+1<N){switch(z=z>-1?z:0,$.charCodeAt(D+1)){case 100:case 102:if(w>=q)break;if(H[w]==null)break;if(z<D)B+=$.slice(z,D);B+=Number(H[w]),z=D+2,D++;break;case 105:if(w>=q)break;if(H[w]==null)break;if(z<D)B+=$.slice(z,D);B+=Math.floor(Number(H[w])),z=D+2,D++;break;case 79:case 111:case 106:if(w>=q)break;if(H[w]===void 0)break;if(z<D)B+=$.slice(z,D);var _=typeof H[w];if(_==="string"){B+="'"+H[w]+"'",z=D+2,D++;break}if(_==="function"){B+=H[w].name||"<anonymous>",z=D+2,D++;break}B+=J(H[w]),z=D+2,D++;break;case 115:if(w>=q)break;if(z<D)B+=$.slice(z,D);B+=String(H[w]),z=D+2,D++;break;case 37:if(z<D)B+=$.slice(z,D);B+="%",z=D+2,D++,w--;break}++w}++D}if(z===-1)return $;else if(z<N)B+=$.slice(z);return B}});var E4=b((ZN,F4)=>{if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let H=function(Q){if((Q>0&&Q<1/0)===!1){if(typeof Q!=="number"&&typeof Q!=="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(Q))},$=new Int32Array(new SharedArrayBuffer(4));F4.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 J=Date.now()+Number(H);while(J>Date.now());};F4.exports=$}});var O4=b((hN,PH)=>{var W1=e("fs"),qX=e("events"),BX=e("util").inherits,LH=e("path"),j4=E4(),wX=e("assert"),h$=Buffer.allocUnsafe(0),[zX,_X]=(process.versions.node||"0.0").split(".").map(Number),UX=zX>=22&&_X>=7;function fH($,H){H._opening=!0,H._writing=!0,H._asyncDrainScheduled=!1;function Q(Y,G){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 W=H._reopening;if(H.fd=G,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(W)process.nextTick(()=>H.emit("drain"))}let J=H.append?"a":"w",X=H.mode;if(H.sync)try{if(H.mkdir)W1.mkdirSync(LH.dirname($),{recursive:!0});let Y=W1.openSync($,J,X);Q(null,Y)}catch(Y){throw Q(Y),Y}else if(H.mkdir)W1.mkdir(LH.dirname($),{recursive:!0},(Y)=>{if(Y)return Q(Y);W1.open($,J,X,Q)});else W1.open($,J,X,Q)}function O1($){if(!(this instanceof O1))return new O1($);let{fd:H,dest:Q,minLength:J,maxLength:X,maxWrite:Y,periodicFlush:G,sync:W,append:q=!0,mkdir:B,retryEAGAIN:w,fsync:z,contentMode:N,mode:D}=$||{};H=H||Q,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(J||0,16387),this.file=null,this.destroyed=!1,this.minLength=J||0,this.maxLength=X||0,this.maxWrite=Y||16384,this._periodicFlush=G||0,this._periodicFlushTimer=void 0,this.sync=W||!1,this.writable=!0,this._fsync=z||!1,this.append=q||!1,this.mode=D,this.retryEAGAIN=w||(()=>!0),this.mkdir=B||!1;let _,A;if(N==="buffer")this._writingBuf=h$,this.write=VX,this.flush=AX,this.flushSync=EX,this._actualWrite=jX,_=()=>W1.writeSync(this.fd,this._writingBuf),A=()=>W1.write(this.fd,this._writingBuf,this.release);else if(N===void 0||N==="utf8")this._writingBuf="",this.write=DX,this.flush=RX,this.flushSync=FX,this._actualWrite=MX,_=()=>W1.writeSync(this.fd,this._writingBuf,"utf8"),A=()=>W1.write(this.fd,this._writingBuf,"utf8",this.release);else throw Error(`SonicBoom supports "utf8" and "buffer", but passed ${N}`);if(typeof H==="number")this.fd=H,process.nextTick(()=>this.emit("ready"));else if(typeof H==="string")fH(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=(R,M)=>{if(R){if((R.code==="EAGAIN"||R.code==="EBUSY")&&this.retryEAGAIN(R,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{j4(100),this.release(void 0,0)}catch(T){this.release(T)}else setTimeout(A,100);else this._writing=!1,this.emit("error",R);return}this.emit("write",M);let S=M4(this._writingBuf,this._len,M);if(this._len=S.len,this._writingBuf=S.writingBuf,this._writingBuf.length){if(!this.sync){A();return}try{do{let T=_(),h=M4(this._writingBuf,this._len,T);this._len=h.len,this._writingBuf=h.writingBuf}while(this._writingBuf.length)}catch(T){this.release(T);return}}if(this._fsync)W1.fsyncSync(this.fd);let O=this._len;if(this._reopening)this._writing=!1,this._reopening=!1,this.reopen();else if(O>this.minLength)this._actualWrite();else if(this._ending)if(O>0)this._actualWrite();else this._writing=!1,x$(this);else if(this._writing=!1,this.sync){if(!this._asyncDrainScheduled)this._asyncDrainScheduled=!0,process.nextTick(NX,this)}else this.emit("drain")},this.on("newListener",function(R){if(R==="drain")this._asyncDrainScheduled=!1}),this._periodicFlush!==0)this._periodicFlushTimer=setInterval(()=>this.flush(null),this._periodicFlush),this._periodicFlushTimer.unref()}function M4($,H,Q){if(typeof $==="string"&&Buffer.byteLength($)!==Q)Q=Buffer.from($).subarray(0,Q).toString().length;return H=Math.max(H-Q,0),$=$.slice(Q),{writingBuf:$,len:H}}function NX($){if(!($.listenerCount("drain")>0))return;$._asyncDrainScheduled=!1,$.emit("drain")}BX(O1,qX);function CH($,H){if($.length===0)return h$;if($.length===1)return $[0];return Buffer.concat($,H)}function DX($){if(this.destroyed)throw Error("SonicBoom destroyed");let H=this._len+$.length,Q=this._bufs;if(this.maxLength&&H>this.maxLength)return this.emit("drop",$),this._len<this._hwm;if(Q.length===0||Q[Q.length-1].length+$.length>this.maxWrite)Q.push(""+$);else Q[Q.length-1]+=$;if(this._len=H,!this._writing&&this._len>=this.minLength)this._actualWrite();return this._len<this._hwm}function VX($){if(this.destroyed)throw Error("SonicBoom destroyed");let H=this._len+$.length,Q=this._bufs,J=this._lens;if(this.maxLength&&H>this.maxLength)return this.emit("drop",$),this._len<this._hwm;if(Q.length===0||J[J.length-1]+$.length>this.maxWrite)Q.push([$]),J.push($.length);else Q[Q.length-1].push($),J[J.length-1]+=$.length;if(this._len=H,!this._writing&&this._len>=this.minLength)this._actualWrite();return this._len<this._hwm}function KH($){this._flushPending=!0;let H=()=>{if(!this._fsync)try{W1.fsync(this.fd,(J)=>{this._flushPending=!1,$(J)})}catch(J){$(J)}else this._flushPending=!1,$();this.off("error",Q)},Q=(J)=>{this._flushPending=!1,$(J),this.off("drain",H)};this.once("drain",H),this.once("error",Q)}function RX($){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($)KH.call(this,$);if(this._writing)return;if(this._bufs.length===0)this._bufs.push("");this._actualWrite()}function AX($){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($)KH.call(this,$);if(this._writing)return;if(this._bufs.length===0)this._bufs.push([]),this._lens.push(0);this._actualWrite()}O1.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)W1.close(H,(Q)=>{if(Q)return this.emit("error",Q)})}),fH(this.file,this)};O1.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 x$(this)};function FX(){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=W1.writeSync(this.fd,$,"utf8"),Q=M4($,this._len,H);if($=Q.writingBuf,this._len=Q.len,$.length<=0)this._bufs.shift()}catch(H){if((H.code==="EAGAIN"||H.code==="EBUSY")&&!this.retryEAGAIN(H,$.length,this._len-$.length))throw H;j4(100)}}try{W1.fsyncSync(this.fd)}catch{}}function EX(){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=h$;let $=h$;while(this._bufs.length||$.length){if($.length<=0)$=CH(this._bufs[0],this._lens[0]);try{let H=W1.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;j4(100)}}}O1.prototype.destroy=function(){if(this.destroyed)return;x$(this)};function MX(){let $=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let H=W1.writeSync(this.fd,this._writingBuf,"utf8");$(null,H)}catch(H){$(H)}else W1.write(this.fd,this._writingBuf,"utf8",$)}function jX(){let $=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:CH(this._bufs.shift(),this._lens.shift()),this.sync)try{let H=W1.writeSync(this.fd,this._writingBuf);$(null,H)}catch(H){$(H)}else{if(UX)this._writingBuf=Buffer.from(this._writingBuf);W1.write(this.fd,this._writingBuf,$)}}function x$($){if($.fd===-1){$.once("ready",x$.bind(null,$));return}if($._periodicFlushTimer!==void 0)clearInterval($._periodicFlushTimer);$.destroyed=!0,$._bufs=[],$._lens=[],wX(typeof $.fd==="number",`sonic.fd must be a number, got ${typeof $.fd}`);try{W1.fsync($.fd,H)}catch{}function H(){if($.fd!==1&&$.fd!==2)W1.close($.fd,Q);else Q()}function Q(J){if(J){$.emit("error",J);return}if($._ending&&!$._writing)$.emit("finish");$.emit("close")}}O1.SonicBoom=O1;O1.default=O1;PH.exports=O1});var k$=b((xN,hH)=>{var S1={exit:[],beforeExit:[]},TH={exit:LX,beforeExit:fX},I0;function OX(){if(I0===void 0)I0=new FinalizationRegistry(CX)}function SX($){if(S1[$].length>0)return;process.on($,TH[$])}function bH($){if(S1[$].length>0)return;if(process.removeListener($,TH[$]),S1.exit.length===0&&S1.beforeExit.length===0)I0=void 0}function LX(){IH("exit")}function fX(){IH("beforeExit")}function IH($){for(let H of S1[$]){let Q=H.deref(),J=H.fn;if(Q!==void 0)J(Q,$)}S1[$]=[]}function CX($){for(let H of["exit","beforeExit"]){let Q=S1[H].indexOf($);S1[H].splice(Q,Q+1),bH(H)}}function ZH($,H,Q){if(H===void 0)throw Error("the object can't be undefined");SX($);let J=new WeakRef(H);J.fn=Q,OX(),I0.register(H,J),S1[$].push(J)}function KX($,H){ZH("exit",$,H)}function PX($,H){ZH("beforeExit",$,H)}function TX($){if(I0===void 0)return;I0.unregister($);for(let H of["exit","beforeExit"])S1[H]=S1[H].filter((Q)=>{let J=Q.deref();return J&&J!==$}),bH(H)}hH.exports={register:KX,registerBeforeExit:PX,unregister:TX}});var xH=b((kN,bX)=>{bX.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=b((vN,kH)=>{function IX($,H,Q,J,X){let Y=Date.now()+J,G=Atomics.load($,H);if(G===Q){X(null,"ok");return}let W=G,q=(B)=>{if(Date.now()>Y)X(null,"timed-out");else setTimeout(()=>{if(W=G,G=Atomics.load($,H),G===W)q(B>=1000?1000:B*2);else if(G===Q)X(null,"ok");else X(null,"not-equal")},B)};q(1)}function ZX($,H,Q,J,X){let Y=Date.now()+J,G=Atomics.load($,H);if(G!==Q){X(null,"ok");return}let W=(q)=>{if(Date.now()>Y)X(null,"timed-out");else setTimeout(()=>{if(G=Atomics.load($,H),G!==Q)X(null,"ok");else W(q>=1000?1000:q*2)},q)};W(1)}kH.exports={wait:IX,waitDiff:ZX}});var yH=b((gN,gH)=>{gH.exports={WRITE_INDEX:4,READ_INDEX:8}});var nH=b((yN,lH)=>{var __dirname="C:\\Users\\mejia\\Desktop\\prueba-real\\fastTS\\node_modules\\thread-stream",{version:hX}=xH(),{EventEmitter:xX}=e("events"),{Worker:kX}=e("worker_threads"),{join:vX}=e("path"),{pathToFileURL:gX}=e("url"),{wait:yX}=vH(),{WRITE_INDEX:N1,READ_INDEX:T1}=yH(),uX=e("buffer"),cX=e("assert"),E=Symbol("kImpl"),mX=uX.constants.MAX_STRING_LENGTH;class g${constructor($){this._value=$}deref(){return this._value}}class L4{register(){}unregister(){}}var dX=process.env.NODE_V8_COVERAGE?L4:global.FinalizationRegistry||L4,lX=process.env.NODE_V8_COVERAGE?g$:global.WeakRef||g$,uH=new dX(($)=>{if($.exited)return;$.terminate()});function nX($,H){let{filename:Q,workerData:J}=H,Y=("__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{})["thread-stream-worker"]||vX(__dirname,"lib","worker.js"),G=new kX(Y,{...H.workerOpts,trackUnmanagedFds:!1,workerData:{filename:Q.indexOf("file://")===0?Q:gX(Q).href,dataBuf:$[E].dataBuf,stateBuf:$[E].stateBuf,workerData:{$context:{threadStreamVersion:hX},...J}}});return G.stream=new g$($),G.on("message",iX),G.on("exit",mH),uH.register($,G),G}function cH($){if(cX(!$[E].sync),$[E].needDrain)$[E].needDrain=!1,$.emit("drain")}function v$($){let H=Atomics.load($[E].state,N1),Q=$[E].data.length-H;if(Q>0){if($[E].buf.length===0){if($[E].flushing=!1,$[E].ending)K4($);else if($[E].needDrain)process.nextTick(cH,$);return}let J=$[E].buf.slice(0,Q),X=Buffer.byteLength(J);if(X<=Q)$[E].buf=$[E].buf.slice(Q),y$($,J,v$.bind(null,$));else $.flush(()=>{if($.destroyed)return;Atomics.store($[E].state,T1,0),Atomics.store($[E].state,N1,0);while(X>$[E].data.length)Q=Q/2,J=$[E].buf.slice(0,Q),X=Buffer.byteLength(J);$[E].buf=$[E].buf.slice(Q),y$($,J,v$.bind(null,$))})}else if(Q===0){if(H===0&&$[E].buf.length===0)return;$.flush(()=>{Atomics.store($[E].state,T1,0),Atomics.store($[E].state,N1,0),v$($)})}else b1($,Error("overwritten"))}function iX($){let H=this.stream.deref();if(H===void 0){this.exited=!0,this.terminate();return}switch($.code){case"READY":this.stream=new lX(H),H.flush(()=>{H[E].ready=!0,H.emit("ready")});break;case"ERROR":b1(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:b1(H,Error("this should not happen: "+$.code))}}function mH($){let H=this.stream.deref();if(H===void 0)return;uH.unregister(H),H.worker.exited=!0,H.worker.off("exit",mH),b1(H,$!==0?Error("the worker thread exited"):null)}class dH extends xX{constructor($={}){super();if($.bufferSize<4)throw Error("bufferSize must at least fit a 4-byte utf-8 char");this[E]={},this[E].stateBuf=new SharedArrayBuffer(128),this[E].state=new Int32Array(this[E].stateBuf),this[E].dataBuf=new SharedArrayBuffer($.bufferSize||4194304),this[E].data=Buffer.from(this[E].dataBuf),this[E].sync=$.sync||!1,this[E].ending=!1,this[E].ended=!1,this[E].needDrain=!1,this[E].destroyed=!1,this[E].flushing=!1,this[E].ready=!1,this[E].finished=!1,this[E].errored=null,this[E].closed=!1,this[E].buf="",this.worker=nX(this,$),this.on("message",(H,Q)=>{this.worker.postMessage(H,Q)})}write($){if(this[E].destroyed)return f4(this,Error("the worker has exited")),!1;if(this[E].ending)return f4(this,Error("the worker is ending")),!1;if(this[E].flushing&&this[E].buf.length+$.length>=mX)try{S4(this),this[E].flushing=!0}catch(H){return b1(this,H),!1}if(this[E].buf+=$,this[E].sync)try{return S4(this),!0}catch(H){return b1(this,H),!1}if(!this[E].flushing)this[E].flushing=!0,setImmediate(v$,this);return this[E].needDrain=this[E].data.length-this[E].buf.length-Atomics.load(this[E].state,N1)<=0,!this[E].needDrain}end(){if(this[E].destroyed)return;this[E].ending=!0,K4(this)}flush($){if(this[E].destroyed){if(typeof $==="function")process.nextTick($,Error("the worker has exited"));return}let H=Atomics.load(this[E].state,N1);yX(this[E].state,T1,H,1/0,(Q,J)=>{if(Q){b1(this,Q),process.nextTick($,Q);return}if(J==="not-equal"){this.flush($);return}process.nextTick($)})}flushSync(){if(this[E].destroyed)return;S4(this),C4(this)}unref(){this.worker.unref()}ref(){this.worker.ref()}get ready(){return this[E].ready}get destroyed(){return this[E].destroyed}get closed(){return this[E].closed}get writable(){return!this[E].destroyed&&!this[E].ending}get writableEnded(){return this[E].ending}get writableFinished(){return this[E].finished}get writableNeedDrain(){return this[E].needDrain}get writableObjectMode(){return!1}get writableErrored(){return this[E].errored}}function f4($,H){setImmediate(()=>{$.emit("error",H)})}function b1($,H){if($[E].destroyed)return;if($[E].destroyed=!0,H)$[E].errored=H,f4($,H);if(!$.worker.exited)$.worker.terminate().catch(()=>{}).then(()=>{$[E].closed=!0,$.emit("close")});else setImmediate(()=>{$[E].closed=!0,$.emit("close")})}function y$($,H,Q){let J=Atomics.load($[E].state,N1),X=Buffer.byteLength(H);return $[E].data.write(H,J),Atomics.store($[E].state,N1,J+X),Atomics.notify($[E].state,N1),Q(),!0}function K4($){if($[E].ended||!$[E].ending||$[E].flushing)return;$[E].ended=!0;try{$.flushSync();let H=Atomics.load($[E].state,T1);Atomics.store($[E].state,N1,-1),Atomics.notify($[E].state,N1);let Q=0;while(H!==-1){if(Atomics.wait($[E].state,T1,H,1000),H=Atomics.load($[E].state,T1),H===-2){b1($,Error("end() failed"));return}if(++Q===10){b1($,Error("end() took too long (10s)"));return}}process.nextTick(()=>{$[E].finished=!0,$.emit("finish")})}catch(H){b1($,H)}}function S4($){let H=()=>{if($[E].ending)K4($);else if($[E].needDrain)process.nextTick(cH,$)};$[E].flushing=!1;while($[E].buf.length!==0){let Q=Atomics.load($[E].state,N1),J=$[E].data.length-Q;if(J===0){C4($),Atomics.store($[E].state,T1,0),Atomics.store($[E].state,N1,0);continue}else if(J<0)throw Error("overwritten");let X=$[E].buf.slice(0,J),Y=Buffer.byteLength(X);if(Y<=J)$[E].buf=$[E].buf.slice(J),y$($,X,H);else{C4($),Atomics.store($[E].state,T1,0),Atomics.store($[E].state,N1,0);while(Y>$[E].buf.length)J=J/2,X=$[E].buf.slice(0,J),Y=Buffer.byteLength(X);$[E].buf=$[E].buf.slice(J),y$($,X,H)}}}function C4($){if($[E].flushing)throw Error("unable to flush while flushing");let H=Atomics.load($[E].state,N1),Q=0;while(!0){let J=Atomics.load($[E].state,T1);if(J===-2)throw Error("_flushSync failed");if(J!==H)Atomics.wait($[E].state,T1,J,1000);else break;if(++Q===10)throw Error("_flushSync took too long (10s)")}}lH.exports=dH});var b4=b((uN,iH)=>{var __dirname="C:\\Users\\mejia\\Desktop\\prueba-real\\fastTS\\node_modules\\pino\\lib",{createRequire:pX}=e("module"),oX=D4(),{join:P4,isAbsolute:sX,sep:rX}=e("path"),aX=E4(),T4=k$(),tX=nH();function eX($){T4.register($,HY),T4.registerBeforeExit($,QY),$.on("close",function(){T4.unregister($)})}function $Y($,H,Q,J){let X=new tX({filename:$,workerData:H,workerOpts:Q,sync:J});X.on("ready",Y),X.on("close",function(){process.removeListener("exit",G)}),process.on("exit",G);function Y(){if(process.removeListener("exit",G),X.unref(),Q.autoEnd!==!1)eX(X)}function G(){if(X.closed)return;X.flushSync(),aX(100),X.end()}return X}function HY($){$.ref(),$.flushSync(),$.end(),$.once("close",function(){$.unref()})}function QY($){$.flushSync()}function JY($){let{pipeline:H,targets:Q,levels:J,dedupe:X,worker:Y={},caller:G=oX(),sync:W=!1}=$,q={...$.options},B=typeof G==="string"?[G]:G,w="__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{},z=$.target;if(z&&Q)throw Error("only one of target or targets can be specified");if(Q)z=w["pino-worker"]||P4(__dirname,"worker.js"),q.targets=Q.filter((D)=>D.target).map((D)=>{return{...D,target:N(D.target)}}),q.pipelines=Q.filter((D)=>D.pipeline).map((D)=>{return D.pipeline.map((_)=>{return{..._,level:D.level,target:N(_.target)}})});else if(H)z=w["pino-worker"]||P4(__dirname,"worker.js"),q.pipelines=[H.map((D)=>{return{...D,target:N(D.target)}})];if(J)q.levels=J;if(X)q.dedupe=X;return q.pinoWillSendConfig=!0,$Y(N(z),q,Y,W);function N(D){if(D=w[D]||D,sX(D)||D.indexOf("file://")===0)return D;if(D==="pino/file")return P4(__dirname,"..","file.js");let _;for(let A of B)try{let R=A==="node:repl"?process.cwd()+rX:A;_=pX(R).resolve(D);break}catch(R){continue}if(!_)throw Error(`unable to determine transport target for "${D}"`);return _}}iH.exports=JY});var m$=b((cN,Y6)=>{var XY=e("diagnostics_channel"),pH=SH(),{mapHttpRequest:YY,mapHttpResponse:GY}=N4(),Z4=O4(),oH=k$(),{lsCacheSym:WY,chindingsSym:eH,writeSym:sH,serializersSym:$6,formatOptsSym:rH,endSym:qY,stringifiersSym:H6,stringifySym:Q6,stringifySafeSym:h4,wildcardFirstSym:J6,nestedKeySym:BY,formattersSym:X6,messageKeySym:wY,errorKeySym:zY,nestedKeyStrSym:_Y,msgPrefixSym:u$}=b0(),{isMainThread:UY}=e("worker_threads"),NY=b4(),aH=XY.tracingChannel("pino_asJson");function Z0(){}function DY($,H){if(!H)return Q;return function(...X){H.call(this,X,Q,$)};function Q(J,...X){if(typeof J==="object"){let Y=J;if(J!==null){if(J.method&&J.headers&&J.socket)J=YY(J);else if(typeof J.setHeader==="function")J=GY(J)}let G;if(Y===null&&X.length===0)G=[null];else Y=X.shift(),G=X;if(typeof this[u$]==="string"&&Y!==void 0&&Y!==null)Y=this[u$]+Y;this[sH](J,pH(Y,G,this[rH]),$)}else{let Y=J===void 0?X.shift():J;if(typeof this[u$]==="string"&&Y!==void 0&&Y!==null)Y=this[u$]+Y;this[sH](null,pH(Y,X,this[rH]),$)}}}function I4($){let H="",Q=0,J=!1,X=255,Y=$.length;if(Y>100)return JSON.stringify($);for(var G=0;G<Y&&X>=32;G++)if(X=$.charCodeAt(G),X===34||X===92)H+=$.slice(Q,G)+"\\",Q=G,J=!0;if(!J)H=$;else H+=$.slice(Q);return X<32?JSON.stringify($):'"'+H+'"'}function VY($,H,Q,J){if(aH.hasSubscribers===!1)return tH.call(this,$,H,Q,J);let X={instance:this,arguments};return aH.traceSync(tH,X,this,$,H,Q,J)}function tH($,H,Q,J){let X=this[Q6],Y=this[h4],G=this[H6],W=this[qY],q=this[eH],B=this[$6],w=this[X6],z=this[wY],N=this[zY],D=this[WY][Q]+J;D=D+q;let _;if(w.log)$=w.log($);let A=G[J6],R="";for(let S in $)if(_=$[S],Object.prototype.hasOwnProperty.call($,S)&&_!==void 0){if(B[S])_=B[S](_);else if(S===N&&B.err)_=B.err(_);let O=G[S]||A;switch(typeof _){case"undefined":case"function":continue;case"number":if(Number.isFinite(_)===!1)_=null;case"boolean":if(O)_=O(_);break;case"string":_=(O||I4)(_);break;default:_=(O||X)(_,Y)}if(_===void 0)continue;let T=I4(S);R+=","+T+":"+_}let M="";if(H!==void 0){_=B[z]?B[z](H):H;let S=G[z]||A;switch(typeof _){case"function":break;case"number":if(Number.isFinite(_)===!1)_=null;case"boolean":if(S)_=S(_);M=',"'+z+'":'+_;break;case"string":_=(S||I4)(_),M=',"'+z+'":'+_;break;default:_=(S||X)(_,Y),M=',"'+z+'":'+_}}if(this[BY]&&R)return D+this[_Y]+R.slice(1)+"}"+M+W;else return D+R+M+W}function RY($,H){let Q,J=$[eH],X=$[Q6],Y=$[h4],G=$[H6],W=G[J6],q=$[$6],B=$[X6].bindings;H=B(H);for(let w in H)if(Q=H[w],((w.length<5||w!=="level"&&w!=="serializers"&&w!=="formatters"&&w!=="customLevels")&&H.hasOwnProperty(w)&&Q!==void 0)===!0){if(Q=q[w]?q[w](Q):Q,Q=(G[w]||W||X)(Q,Y),Q===void 0)continue;J+=',"'+w+'":'+Q}return J}function AY($){return $.write!==$.constructor.prototype.write}function c$($){let H=new Z4($);if(H.on("error",Q),!$.sync&&UY)oH.register(H,FY),H.on("close",function(){oH.unregister(H)});return H;function Q(J){if(J.code==="EPIPE"){H.write=Z0,H.end=Z0,H.flushSync=Z0,H.destroy=Z0;return}H.removeListener("error",Q),H.emit("error",J)}}function FY($,H){if($.destroyed)return;if(H==="beforeExit")$.flush(),$.on("drain",function(){$.end()});else $.flushSync()}function EY($){return function(Q,J,X={},Y){if(typeof X==="string")Y=c$({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=c$({dest:Y})}else if(X instanceof Z4||X.writable||X._writableState)Y=X,X={};else if(X.transport){if(X.transport instanceof Z4||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=NY({caller:J,...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:G,onChild:W}=X;if(G===!1)X.level="silent";if(!W)X.onChild=Z0;if(!Y)if(!AY(process.stdout))Y=c$({fd:process.stdout.fd||1});else Y=process.stdout;return{opts:X,stream:Y}}}function MY($,H){try{return JSON.stringify($)}catch(Q){try{return(H||this[h4])($)}catch(J){return'"[unable to serialize, circular reference is too complex to analyze]"'}}}function jY($,H,Q){return{level:$,bindings:H,log:Q}}function OY($){let H=Number($);if(typeof $==="string"&&Number.isFinite(H))return H;if($===void 0)return 1;return $}Y6.exports={noop:Z0,buildSafeSonicBoom:c$,asChindings:RY,asJson:VY,genLog:DY,createArgsNormalizer:EY,stringify:MY,buildFormatters:jY,normalizeDestFileDescriptor:OY}});var d$=b((mN,G6)=>{var SY={trace:10,debug:20,info:30,warn:40,error:50,fatal:60},LY={ASC:"ASC",DESC:"DESC"};G6.exports={DEFAULT_LEVELS:SY,SORTING_ORDER:LY}});var v4=b((dN,w6)=>{var{lsCacheSym:fY,levelValSym:x4,useOnlyCustomLevelsSym:CY,streamSym:KY,formattersSym:PY,hooksSym:TY,levelCompSym:W6}=b0(),{noop:bY,genLog:Y0}=m$(),{DEFAULT_LEVELS:I1,SORTING_ORDER:q6}=d$(),B6={fatal:($)=>{let H=Y0(I1.fatal,$);return function(...Q){let J=this[KY];if(H.call(this,...Q),typeof J.flushSync==="function")try{J.flushSync()}catch(X){}}},error:($)=>Y0(I1.error,$),warn:($)=>Y0(I1.warn,$),info:($)=>Y0(I1.info,$),debug:($)=>Y0(I1.debug,$),trace:($)=>Y0(I1.trace,$)},k4=Object.keys(I1).reduce(($,H)=>{return $[I1[H]]=H,$},{}),IY=Object.keys(k4).reduce(($,H)=>{return $[H]='{"level":'+Number(H),$},{});function ZY($){let H=$[PY].level,{labels:Q}=$.levels,J={};for(let X in Q){let Y=H(Q[X],Number(X));J[X]=JSON.stringify(Y).slice(0,-1)}return $[fY]=J,$}function hY($,H){if(H)return!1;switch($){case"fatal":case"error":case"warn":case"info":case"debug":case"trace":return!0;default:return!1}}function xY($){let{labels:H,values:Q}=this.levels;if(typeof $==="number"){if(H[$]===void 0)throw Error("unknown level value"+$);$=H[$]}if(Q[$]===void 0)throw Error("unknown level "+$);let J=this[x4],X=this[x4]=Q[$],Y=this[CY],G=this[W6],W=this[TY].logMethod;for(let q in Q){if(G(Q[q],X)===!1){this[q]=bY;continue}this[q]=hY(q,Y)?B6[q](W):Y0(Q[q],W)}this.emit("level-change",$,X,H[J],J,this)}function kY($){let{levels:H,levelVal:Q}=this;return H&&H.labels?H.labels[Q]:""}function vY($){let{values:H}=this.levels,Q=H[$];return Q!==void 0&&this[W6](Q,this[x4])}function gY($,H,Q){if($===q6.DESC)return H<=Q;return H>=Q}function yY($){if(typeof $==="string")return gY.bind(null,$);return $}function uY($=null,H=!1){let Q=$?Object.keys($).reduce((Y,G)=>{return Y[$[G]]=G,Y},{}):null,J=Object.assign(Object.create(Object.prototype,{Infinity:{value:"silent"}}),H?null:k4,Q),X=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),H?null:I1,$);return{labels:J,values:X}}function cY($,H,Q){if(typeof $==="number"){if(![].concat(Object.keys(H||{}).map((Y)=>H[Y]),Q?[]:Object.keys(k4).map((Y)=>+Y),1/0).includes($))throw Error(`default level:${$} must be included in custom levels`);return}let J=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),Q?null:I1,H);if(!($ in J))throw Error(`default level:${$} must be included in custom levels`)}function mY($,H){let{labels:Q,values:J}=$;for(let X in H){if(X in J)throw Error("levels cannot be overridden");if(H[X]in Q)throw Error("pre-existing level values cannot be used for new levels")}}function dY($){if(typeof $==="function")return;if(typeof $==="string"&&Object.values(q6).includes($))return;throw Error('Levels comparison should be one of "ASC", "DESC" or "function" type')}w6.exports={initialLsCache:IY,genLsCache:ZY,levelMethods:B6,getLevel:kY,setLevel:xY,isLevelEnabled:vY,mappings:uY,assertNoLevelCollisions:mY,assertDefaultLevelFound:cY,genLevelComparison:yY,assertLevelComparison:dY}});var g4=b((lN,z6)=>{z6.exports={version:"10.1.0"}});var F6=b((nN,A6)=>{var{EventEmitter:lY}=e("events"),{lsCacheSym:nY,levelValSym:iY,setLevelSym:u4,getLevelSym:_6,chindingsSym:n$,mixinSym:pY,asJsonSym:N6,writeSym:oY,mixinMergeStrategySym:sY,timeSym:rY,timeSliceIndexSym:aY,streamSym:D6,serializersSym:G0,formattersSym:J$,errorKeySym:tY,messageKeySym:eY,useOnlyCustomLevelsSym:$G,needsMetadataGsym:HG,redactFmtSym:QG,stringifySym:JG,formatOptsSym:XG,stringifiersSym:YG,msgPrefixSym:c4,hooksSym:GG}=b0(),{getLevel:WG,setLevel:qG,isLevelEnabled:BG,mappings:wG,initialLsCache:zG,genLsCache:_G,assertNoLevelCollisions:UG}=v4(),{asChindings:m4,asJson:NG,buildFormatters:y4,stringify:U6,noop:V6}=m$(),{version:DG}=g4(),VG=A4(),RG=class{},R6={constructor:RG,child:AG,bindings:FG,setBindings:EG,flush:OG,isLevelEnabled:BG,version:DG,get level(){return this[_6]()},set level($){this[u4]($)},get levelVal(){return this[iY]},set levelVal($){throw Error("levelVal is read-only")},get msgPrefix(){return this[c4]},get[Symbol.toStringTag](){return"Pino"},[nY]:zG,[oY]:jG,[N6]:NG,[_6]:WG,[u4]:qG};Object.setPrototypeOf(R6,lY.prototype);A6.exports=function(){return Object.create(R6)};var l$=($)=>$;function AG($,H){if(!$)throw Error("missing bindings for child Pino");let Q=this[G0],J=this[J$],X=Object.create(this);if(H==null){if(X[J$].bindings!==l$)X[J$]=y4(J.level,l$,J.log);if(X[n$]=m4(X,$),this.onChild!==V6)this.onChild(X);return X}if(H.hasOwnProperty("serializers")===!0){X[G0]=Object.create(null);for(let B in Q)X[G0][B]=Q[B];let W=Object.getOwnPropertySymbols(Q);for(var Y=0;Y<W.length;Y++){let B=W[Y];X[G0][B]=Q[B]}for(let B in H.serializers)X[G0][B]=H.serializers[B];let q=Object.getOwnPropertySymbols(H.serializers);for(var G=0;G<q.length;G++){let B=q[G];X[G0][B]=H.serializers[B]}}else X[G0]=Q;if(H.hasOwnProperty("formatters")){let{level:W,bindings:q,log:B}=H.formatters;X[J$]=y4(W||J.level,q||l$,B||J.log)}else X[J$]=y4(J.level,l$,J.log);if(H.hasOwnProperty("customLevels")===!0)UG(this.levels,H.customLevels),X.levels=wG(H.customLevels,X[$G]),_G(X);if(typeof H.redact==="object"&&H.redact!==null||Array.isArray(H.redact)){X.redact=H.redact;let W=VG(X.redact,U6),q={stringify:W[QG]};X[JG]=U6,X[YG]=W,X[XG]=q}if(typeof H.msgPrefix==="string")X[c4]=(this[c4]||"")+H.msgPrefix;if(X[n$]=m4(X,$),H.level!==void 0&&H.level!==this.level||H.hasOwnProperty("customLevels")){let W=H.level||this.level;X[u4](W)}return this.onChild(X),X}function FG(){let H=`{${this[n$].substr(1)}}`,Q=JSON.parse(H);return delete Q.pid,delete Q.hostname,Q}function EG($){let H=m4(this,$);this[n$]=H}function MG($,H){return Object.assign(H,$)}function jG($,H,Q){let J=this[rY](),X=this[pY],Y=this[tY],G=this[eY],W=this[sY]||MG,q,B=this[GG].streamWrite;if($===void 0||$===null)q={};else if($ instanceof Error){if(q={[Y]:$},H===void 0)H=$.message}else if(q=$,H===void 0&&$[G]===void 0&&$[Y])H=$[Y].message;if(X)q=W(q,X(q,Q,this));let w=this[N6](q,H,Q,J),z=this[D6];if(z[HG]===!0)z.lastLevel=Q,z.lastObj=q,z.lastMsg=H,z.lastTime=J.slice(this[aY]),z.lastLogger=this;z.write(B?B(w):w)}function OG($){if($!=null&&typeof $!=="function")throw Error("callback must be a function");let H=this[D6];if(typeof H.flush==="function")H.flush($||V6);else if($)$()}});var O6=b((iN,j6)=>{var{hasOwnProperty:X$}=Object.prototype,q0=n4();q0.configure=n4;q0.stringify=q0;q0.default=q0;iN.stringify=q0;iN.configure=n4;j6.exports=q0;var SG=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function i1($){if($.length<5000&&!SG.test($))return`"${$}"`;return JSON.stringify($)}function d4($,H){if($.length>200||H)return $.sort(H);for(let Q=1;Q<$.length;Q++){let J=$[Q],X=Q;while(X!==0&&$[X-1]>J)$[X]=$[X-1],X--;$[X]=J}return $}var LG=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function l4($){return LG.call($)!==void 0&&$.length!==0}function E6($,H,Q){if($.length<Q)Q=$.length;let J=H===","?"":" ",X=`"0":${J}${$[0]}`;for(let Y=1;Y<Q;Y++)X+=`${H}"${Y}":${J}${$[Y]}`;return X}function fG($){if(X$.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 CG($){let H;if(X$.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 KG($,H){let Q;if(X$.call($,H)){if(Q=$[H],typeof Q!=="boolean")throw TypeError(`The "${H}" argument must be of type boolean`)}return Q===void 0?!0:Q}function M6($,H){let Q;if(X$.call($,H)){if(Q=$[H],typeof Q!=="number")throw TypeError(`The "${H}" argument must be of type number`);if(!Number.isInteger(Q))throw TypeError(`The "${H}" argument must be an integer`);if(Q<1)throw RangeError(`The "${H}" argument must be >= 1`)}return Q===void 0?1/0:Q}function W0($){if($===1)return"1 item";return`${$} items`}function PG($){let H=new Set;for(let Q of $)if(typeof Q==="string"||typeof Q==="number")H.add(String(Q));return H}function TG($){if(X$.call($,"strict")){let H=$.strict;if(typeof H!=="boolean")throw TypeError('The "strict" argument must be of type boolean');if(H)return(Q)=>{let J=`Object can not safely be stringified. Received type ${typeof Q}`;if(typeof Q!=="function")J+=` (${Q.toString()})`;throw Error(J)}}}function n4($){$={...$};let H=TG($);if(H){if($.bigint===void 0)$.bigint=!1;if(!("circularValue"in $))$.circularValue=Error}let Q=fG($),J=KG($,"bigint"),X=CG($),Y=typeof X==="function"?X:void 0,G=M6($,"maximumDepth"),W=M6($,"maximumBreadth");function q(D,_,A,R,M,S){let O=_[D];if(typeof O==="object"&&O!==null&&typeof O.toJSON==="function")O=O.toJSON(D);switch(O=R.call(_,D,O),typeof O){case"string":return i1(O);case"object":{if(O===null)return"null";if(A.indexOf(O)!==-1)return Q;let T="",h=",",m=S;if(Array.isArray(O)){if(O.length===0)return"[]";if(G<A.length+1)return'"[Array]"';if(A.push(O),M!=="")S+=M,T+=`
|
|
18
|
+
${S}`,h=`,
|
|
19
|
+
${S}`;let a=Math.min(O.length,W),C=0;for(;C<a-1;C++){let w1=q(String(C),O,A,R,M,S);T+=w1!==void 0?w1:"null",T+=h}let B1=q(String(C),O,A,R,M,S);if(T+=B1!==void 0?B1:"null",O.length-1>W){let w1=O.length-W-1;T+=`${h}"... ${W0(w1)} not stringified"`}if(M!=="")T+=`
|
|
20
|
+
${m}`;return A.pop(),`[${T}]`}let c=Object.keys(O),s=c.length;if(s===0)return"{}";if(G<A.length+1)return'"[Object]"';let v="",t="";if(M!=="")S+=M,h=`,
|
|
21
|
+
${S}`,v=" ";let $1=Math.min(s,W);if(X&&!l4(O))c=d4(c,Y);A.push(O);for(let a=0;a<$1;a++){let C=c[a],B1=q(C,O,A,R,M,S);if(B1!==void 0)T+=`${t}${i1(C)}:${v}${B1}`,t=h}if(s>W){let a=s-W;T+=`${t}"...":${v}"${W0(a)} not stringified"`,t=h}if(M!==""&&t.length>1)T=`
|
|
22
|
+
${S}${T}
|
|
23
|
+
${m}`;return A.pop(),`{${T}}`}case"number":return isFinite(O)?String(O):H?H(O):"null";case"boolean":return O===!0?"true":"false";case"undefined":return;case"bigint":if(J)return String(O);default:return H?H(O):void 0}}function B(D,_,A,R,M,S){if(typeof _==="object"&&_!==null&&typeof _.toJSON==="function")_=_.toJSON(D);switch(typeof _){case"string":return i1(_);case"object":{if(_===null)return"null";if(A.indexOf(_)!==-1)return Q;let O=S,T="",h=",";if(Array.isArray(_)){if(_.length===0)return"[]";if(G<A.length+1)return'"[Array]"';if(A.push(_),M!=="")S+=M,T+=`
|
|
24
|
+
${S}`,h=`,
|
|
25
|
+
${S}`;let s=Math.min(_.length,W),v=0;for(;v<s-1;v++){let $1=B(String(v),_[v],A,R,M,S);T+=$1!==void 0?$1:"null",T+=h}let t=B(String(v),_[v],A,R,M,S);if(T+=t!==void 0?t:"null",_.length-1>W){let $1=_.length-W-1;T+=`${h}"... ${W0($1)} not stringified"`}if(M!=="")T+=`
|
|
26
|
+
${O}`;return A.pop(),`[${T}]`}A.push(_);let m="";if(M!=="")S+=M,h=`,
|
|
27
|
+
${S}`,m=" ";let c="";for(let s of R){let v=B(s,_[s],A,R,M,S);if(v!==void 0)T+=`${c}${i1(s)}:${m}${v}`,c=h}if(M!==""&&c.length>1)T=`
|
|
28
|
+
${S}${T}
|
|
29
|
+
${O}`;return A.pop(),`{${T}}`}case"number":return isFinite(_)?String(_):H?H(_):"null";case"boolean":return _===!0?"true":"false";case"undefined":return;case"bigint":if(J)return String(_);default:return H?H(_):void 0}}function w(D,_,A,R,M){switch(typeof _){case"string":return i1(_);case"object":{if(_===null)return"null";if(typeof _.toJSON==="function"){if(_=_.toJSON(D),typeof _!=="object")return w(D,_,A,R,M);if(_===null)return"null"}if(A.indexOf(_)!==-1)return Q;let S=M;if(Array.isArray(_)){if(_.length===0)return"[]";if(G<A.length+1)return'"[Array]"';A.push(_),M+=R;let v=`
|
|
30
|
+
${M}`,t=`,
|
|
31
|
+
${M}`,$1=Math.min(_.length,W),a=0;for(;a<$1-1;a++){let B1=w(String(a),_[a],A,R,M);v+=B1!==void 0?B1:"null",v+=t}let C=w(String(a),_[a],A,R,M);if(v+=C!==void 0?C:"null",_.length-1>W){let B1=_.length-W-1;v+=`${t}"... ${W0(B1)} not stringified"`}return v+=`
|
|
32
|
+
${S}`,A.pop(),`[${v}]`}let O=Object.keys(_),T=O.length;if(T===0)return"{}";if(G<A.length+1)return'"[Object]"';M+=R;let h=`,
|
|
33
|
+
${M}`,m="",c="",s=Math.min(T,W);if(l4(_))m+=E6(_,h,W),O=O.slice(_.length),s-=_.length,c=h;if(X)O=d4(O,Y);A.push(_);for(let v=0;v<s;v++){let t=O[v],$1=w(t,_[t],A,R,M);if($1!==void 0)m+=`${c}${i1(t)}: ${$1}`,c=h}if(T>W){let v=T-W;m+=`${c}"...": "${W0(v)} not stringified"`,c=h}if(c!=="")m=`
|
|
34
|
+
${M}${m}
|
|
35
|
+
${S}`;return A.pop(),`{${m}}`}case"number":return isFinite(_)?String(_):H?H(_):"null";case"boolean":return _===!0?"true":"false";case"undefined":return;case"bigint":if(J)return String(_);default:return H?H(_):void 0}}function z(D,_,A){switch(typeof _){case"string":return i1(_);case"object":{if(_===null)return"null";if(typeof _.toJSON==="function"){if(_=_.toJSON(D),typeof _!=="object")return z(D,_,A);if(_===null)return"null"}if(A.indexOf(_)!==-1)return Q;let R="",M=_.length!==void 0;if(M&&Array.isArray(_)){if(_.length===0)return"[]";if(G<A.length+1)return'"[Array]"';A.push(_);let m=Math.min(_.length,W),c=0;for(;c<m-1;c++){let v=z(String(c),_[c],A);R+=v!==void 0?v:"null",R+=","}let s=z(String(c),_[c],A);if(R+=s!==void 0?s:"null",_.length-1>W){let v=_.length-W-1;R+=`,"... ${W0(v)} not stringified"`}return A.pop(),`[${R}]`}let S=Object.keys(_),O=S.length;if(O===0)return"{}";if(G<A.length+1)return'"[Object]"';let T="",h=Math.min(O,W);if(M&&l4(_))R+=E6(_,",",W),S=S.slice(_.length),h-=_.length,T=",";if(X)S=d4(S,Y);A.push(_);for(let m=0;m<h;m++){let c=S[m],s=z(c,_[c],A);if(s!==void 0)R+=`${T}${i1(c)}:${s}`,T=","}if(O>W){let m=O-W;R+=`${T}"...":"${W0(m)} not stringified"`}return A.pop(),`{${R}}`}case"number":return isFinite(_)?String(_):H?H(_):"null";case"boolean":return _===!0?"true":"false";case"undefined":return;case"bigint":if(J)return String(_);default:return H?H(_):void 0}}function N(D,_,A){if(arguments.length>1){let R="";if(typeof A==="number")R=" ".repeat(Math.min(A,10));else if(typeof A==="string")R=A.slice(0,10);if(_!=null){if(typeof _==="function")return q("",{"":D},[],_,R,"");if(Array.isArray(_))return B("",D,[],PG(_),R,"")}if(R.length!==0)return w("",D,[],R,"")}return z("",D,[])}return N}});var C6=b((pN,f6)=>{var i4=Symbol.for("pino.metadata"),{DEFAULT_LEVELS:L6}=d$(),ZG=L6.info;function hG($,H){$=$||[],H=H||{dedupe:!1};let Q=Object.create(L6);if(Q.silent=1/0,H.levels&&typeof H.levels==="object")Object.keys(H.levels).forEach((z)=>{Q[z]=H.levels[z]});let J={write:X,add:W,remove:q,emit:Y,flushSync:G,end:B,minLevel:0,lastId:0,streams:[],clone:w,[i4]:!0,streamLevels:Q};if(Array.isArray($))$.forEach(W,J);else W.call(J,$);return $=null,J;function X(z){let N,D=this.lastLevel,{streams:_}=this,A=0,R;for(let M=xG(_.length,H.dedupe);vG(M,_.length,H.dedupe);M=kG(M,H.dedupe))if(N=_[M],N.level<=D){if(A!==0&&A!==N.level)break;if(R=N.stream,R[i4]){let{lastTime:S,lastMsg:O,lastObj:T,lastLogger:h}=this;R.lastLevel=D,R.lastTime=S,R.lastMsg=O,R.lastObj=T,R.lastLogger=h}if(R.write(z),H.dedupe)A=N.level}else if(!H.dedupe)break}function Y(...z){for(let{stream:N}of this.streams)if(typeof N.emit==="function")N.emit(...z)}function G(){for(let{stream:z}of this.streams)if(typeof z.flushSync==="function")z.flushSync()}function W(z){if(!z)return J;let N=typeof z.write==="function"||z.stream,D=z.write?z:z.stream;if(!N)throw Error("stream object needs to implement either StreamEntry or DestinationStream interface");let{streams:_,streamLevels:A}=this,R;if(typeof z.levelVal==="number")R=z.levelVal;else if(typeof z.level==="string")R=A[z.level];else if(typeof z.level==="number")R=z.level;else R=ZG;let M={stream:D,level:R,levelVal:void 0,id:++J.lastId};return _.unshift(M),_.sort(S6),this.minLevel=_[0].level,J}function q(z){let{streams:N}=this,D=N.findIndex((_)=>_.id===z);if(D>=0)N.splice(D,1),N.sort(S6),this.minLevel=N.length>0?N[0].level:-1;return J}function B(){for(let{stream:z}of this.streams){if(typeof z.flushSync==="function")z.flushSync();z.end()}}function w(z){let N=Array(this.streams.length);for(let D=0;D<N.length;D++)N[D]={level:z,stream:this.streams[D].stream};return{write:X,add:W,remove:q,minLevel:z,streams:N,clone:w,emit:Y,flushSync:G,[i4]:!0}}}function S6($,H){return $.level-H.level}function xG($,H){return H?$-1:0}function kG($,H){return H?$-1:$+1}function vG($,H,Q){return Q?$>=0:$<H}f6.exports=hG});var c6=b((oN,V1)=>{var gG=e("os"),x6=N4(),yG=D4(),uG=A4(),k6=jH(),cG=F6(),v6=b0(),{configure:mG}=O6(),{assertDefaultLevelFound:dG,mappings:g6,genLsCache:lG,genLevelComparison:nG,assertLevelComparison:iG}=v4(),{DEFAULT_LEVELS:y6,SORTING_ORDER:pG}=d$(),{createArgsNormalizer:oG,asChindings:sG,buildSafeSonicBoom:K6,buildFormatters:rG,stringify:p4,normalizeDestFileDescriptor:P6,noop:aG}=m$(),{version:tG}=g4(),{chindingsSym:T6,redactFmtSym:eG,serializersSym:b6,timeSym:$W,timeSliceIndexSym:HW,streamSym:QW,stringifySym:I6,stringifySafeSym:o4,stringifiersSym:Z6,setLevelSym:JW,endSym:XW,formatOptsSym:YW,messageKeySym:GW,errorKeySym:WW,nestedKeySym:qW,mixinSym:BW,levelCompSym:wW,useOnlyCustomLevelsSym:zW,formattersSym:h6,hooksSym:_W,nestedKeyStrSym:UW,mixinMergeStrategySym:NW,msgPrefixSym:DW}=v6,{epochTime:u6,nullTime:VW}=k6,{pid:RW}=process,AW=gG.hostname(),FW=x6.err,EW={level:"info",levelComparison:pG.ASC,levels:y6,messageKey:"msg",errorKey:"err",nestedKey:null,enabled:!0,base:{pid:RW,hostname:AW},serializers:Object.assign(Object.create(null),{err:FW}),formatters:Object.assign(Object.create(null),{bindings($){return $},level($,H){return{level:H}}}),hooks:{logMethod:void 0,streamWrite:void 0},timestamp:u6,name:void 0,redact:null,customLevels:null,useOnlyCustomLevels:!1,depthLimit:5,edgeLimit:100},MW=oG(EW),jW=Object.assign(Object.create(null),x6);function s4(...$){let H={},{opts:Q,stream:J}=MW(H,yG(),...$);if(Q.level&&typeof Q.level==="string"&&y6[Q.level.toLowerCase()]!==void 0)Q.level=Q.level.toLowerCase();let{redact:X,crlf:Y,serializers:G,timestamp:W,messageKey:q,errorKey:B,nestedKey:w,base:z,name:N,level:D,customLevels:_,levelComparison:A,mixin:R,mixinMergeStrategy:M,useOnlyCustomLevels:S,formatters:O,hooks:T,depthLimit:h,edgeLimit:m,onChild:c,msgPrefix:s}=Q,v=mG({maximumDepth:h,maximumBreadth:m}),t=rG(O.level,O.bindings,O.log),$1=p4.bind({[o4]:v}),a=X?uG(X,$1):{},C=X?{stringify:a[eG]}:{stringify:$1},B1="}"+(Y?`\r
|
|
36
|
+
`:`
|
|
37
|
+
`),w1=sG.bind(null,{[T6]:"",[b6]:G,[Z6]:a,[I6]:p4,[o4]:v,[h6]:t}),L1="";if(z!==null)if(N===void 0)L1=w1(z);else L1=w1(Object.assign({},z,{name:N}));let g0=W instanceof Function?W:W?u6:VW,_$=g0().indexOf(":")+1;if(S&&!_)throw Error("customLevels is required if useOnlyCustomLevels is set true");if(R&&typeof R!=="function")throw Error(`Unknown mixin type "${typeof R}" - expected "function"`);if(s&&typeof s!=="string")throw Error(`Unknown msgPrefix type "${typeof s}" - expected "string"`);dG(D,_,S);let y0=g6(_,S);if(typeof J.emit==="function")J.emit("message",{code:"PINO_CONFIG",config:{levels:y0,messageKey:q,errorKey:B}});iG(A);let U$=nG(A);return Object.assign(H,{levels:y0,[wW]:U$,[zW]:S,[QW]:J,[$W]:g0,[HW]:_$,[I6]:p4,[o4]:v,[Z6]:a,[XW]:B1,[YW]:C,[GW]:q,[WW]:B,[qW]:w,[UW]:w?`,${JSON.stringify(w)}:{`:"",[b6]:G,[BW]:R,[NW]:M,[T6]:L1,[h6]:t,[_W]:T,silent:aG,onChild:c,[DW]:s}),Object.setPrototypeOf(H,cG()),lG(H),H[JW](D),H}V1.exports=s4;V1.exports.destination=($=process.stdout.fd)=>{if(typeof $==="object")return $.dest=P6($.dest||process.stdout.fd),K6($);else return K6({dest:P6($),minLength:0})};V1.exports.transport=b4();V1.exports.multistream=C6();V1.exports.levels=g6();V1.exports.stdSerializers=jW;V1.exports.stdTimeFunctions=Object.assign({},k6);V1.exports.symbols=v6;V1.exports.version=tG;V1.exports.default=s4;V1.exports.pino=s4});var a4=b((o6)=>{Object.defineProperty(o6,"__esModule",{value:!0});var OW=e("tty");function SW($){if($&&$.__esModule)return $;var H=Object.create(null);if($)Object.keys($).forEach(function(Q){if(Q!=="default"){var J=Object.getOwnPropertyDescriptor($,Q);Object.defineProperty(H,Q,J.get?J:{enumerable:!0,get:function(){return $[Q]}})}});return H.default=$,Object.freeze(H)}var r4=SW(OW),{env:p1={},argv:d6=[],platform:LW=""}=typeof process>"u"?{}:process,fW="NO_COLOR"in p1||d6.includes("--no-color"),CW="FORCE_COLOR"in p1||d6.includes("--color"),KW=LW==="win32",l6=p1.TERM==="dumb",PW=r4&&r4.isatty&&r4.isatty(1)&&p1.TERM&&!l6,TW="CI"in p1&&(("GITHUB_ACTIONS"in p1)||("GITLAB_CI"in p1)||("CIRCLECI"in p1)),n6=!fW&&(CW||KW&&!l6||PW||TW),i6=($,H,Q,J,X=H.substring(0,$)+J,Y=H.substring($+Q.length),G=Y.indexOf(Q))=>X+(G<0?Y:i6(G,Y,Q,J)),bW=($,H,Q,J,X)=>$<0?Q+H+J:Q+i6($,H,J,X)+J,IW=($,H,Q=$,J=$.length+1)=>(X)=>X||!(X===""||X===void 0)?bW((""+X).indexOf(H,J),X,$,H,Q):"",n=($,H,Q)=>IW(`\x1B[${$}m`,`\x1B[${H}m`,Q),m6={reset:n(0,0),bold:n(1,22,"\x1B[22m\x1B[1m"),dim:n(2,22,"\x1B[22m\x1B[2m"),italic:n(3,23),underline:n(4,24),inverse:n(7,27),hidden:n(8,28),strikethrough:n(9,29),black:n(30,39),red:n(31,39),green:n(32,39),yellow:n(33,39),blue:n(34,39),magenta:n(35,39),cyan:n(36,39),white:n(37,39),gray:n(90,39),bgBlack:n(40,49),bgRed:n(41,49),bgGreen:n(42,49),bgYellow:n(43,49),bgBlue:n(44,49),bgMagenta:n(45,49),bgCyan:n(46,49),bgWhite:n(47,49),blackBright:n(90,39),redBright:n(91,39),greenBright:n(92,39),yellowBright:n(93,39),blueBright:n(94,39),magentaBright:n(95,39),cyanBright:n(96,39),whiteBright:n(97,39),bgBlackBright:n(100,49),bgRedBright:n(101,49),bgGreenBright:n(102,49),bgYellowBright:n(103,49),bgBlueBright:n(104,49),bgMagentaBright:n(105,49),bgCyanBright:n(106,49),bgWhiteBright:n(107,49)},p6=({useColor:$=n6}={})=>$?m6:Object.keys(m6).reduce((H,Q)=>({...H,[Q]:String}),{}),{reset:ZW,bold:hW,dim:xW,italic:kW,underline:vW,inverse:gW,hidden:yW,strikethrough:uW,black:cW,red:mW,green:dW,yellow:lW,blue:nW,magenta:iW,cyan:pW,white:oW,gray:sW,bgBlack:rW,bgRed:aW,bgGreen:tW,bgYellow:eW,bgBlue:$q,bgMagenta:Hq,bgCyan:Qq,bgWhite:Jq,blackBright:Xq,redBright:Yq,greenBright:Gq,yellowBright:Wq,blueBright:qq,magentaBright:Bq,cyanBright:wq,whiteBright:zq,bgBlackBright:_q,bgRedBright:Uq,bgGreenBright:Nq,bgYellowBright:Dq,bgBlueBright:Vq,bgMagentaBright:Rq,bgCyanBright:Aq,bgWhiteBright:Fq}=p6();o6.bgBlack=rW;o6.bgBlackBright=_q;o6.bgBlue=$q;o6.bgBlueBright=Vq;o6.bgCyan=Qq;o6.bgCyanBright=Aq;o6.bgGreen=tW;o6.bgGreenBright=Nq;o6.bgMagenta=Hq;o6.bgMagentaBright=Rq;o6.bgRed=aW;o6.bgRedBright=Uq;o6.bgWhite=Jq;o6.bgWhiteBright=Fq;o6.bgYellow=eW;o6.bgYellowBright=Dq;o6.black=cW;o6.blackBright=Xq;o6.blue=nW;o6.blueBright=qq;o6.bold=hW;o6.createColors=p6;o6.cyan=pW;o6.cyanBright=wq;o6.dim=xW;o6.gray=sW;o6.green=dW;o6.greenBright=Gq;o6.hidden=yW;o6.inverse=gW;o6.isColorSupported=n6;o6.italic=kW;o6.magenta=iW;o6.magentaBright=Bq;o6.red=mW;o6.redBright=Yq;o6.reset=ZW;o6.strikethrough=uW;o6.underline=vW;o6.white=oW;o6.whiteBright=zq;o6.yellow=lW;o6.yellowBright=Wq});var a6=b((rN,r6)=>{r6.exports=s6;function s6($,H){if($&&H)return s6($)(H);if(typeof $!=="function")throw TypeError("need wrapper function");return Object.keys($).forEach(function(J){Q[J]=$[J]}),Q;function Q(){var J=Array(arguments.length);for(var X=0;X<J.length;X++)J[X]=arguments[X];var Y=$.apply(this,J),G=J[J.length-1];if(typeof Y==="function"&&Y!==G)Object.keys(G).forEach(function(W){Y[W]=G[W]});return Y}}});var e4=b((aN,t4)=>{var t6=a6();t4.exports=t6(i$);t4.exports.strict=t6(e6);i$.proto=i$(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return i$(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return e6(this)},configurable:!0})});function i$($){var H=function(){if(H.called)return H.value;return H.called=!0,H.value=$.apply(this,arguments)};return H.called=!1,H}function e6($){var H=function(){if(H.called)throw Error(H.onceError);return H.called=!0,H.value=$.apply(this,arguments)},Q=$.name||"Function wrapped with `once`";return H.onceError=Q+" shouldn't be called more than once",H.called=!1,H}});var Q7=b((tN,H7)=>{var BB=e4(),wB=function(){},zB=global.Bare?queueMicrotask:process.nextTick.bind(process),_B=function($){return $.setHeader&&typeof $.abort==="function"},UB=function($){return $.stdio&&Array.isArray($.stdio)&&$.stdio.length===3},$7=function($,H,Q){if(typeof H==="function")return $7($,null,H);if(!H)H={};Q=BB(Q||wB);var{_writableState:J,_readableState:X}=$,Y=H.readable||H.readable!==!1&&$.readable,G=H.writable||H.writable!==!1&&$.writable,W=!1,q=function(){if(!$.writable)B()},B=function(){if(G=!1,!Y)Q.call($)},w=function(){if(Y=!1,!G)Q.call($)},z=function(R){Q.call($,R?Error("exited with error code: "+R):null)},N=function(R){Q.call($,R)},D=function(){zB(_)},_=function(){if(W)return;if(Y&&!(X&&(X.ended&&!X.destroyed)))return Q.call($,Error("premature close"));if(G&&!(J&&(J.ended&&!J.destroyed)))return Q.call($,Error("premature close"))},A=function(){$.req.on("finish",B)};if(_B($))if($.on("complete",B),$.on("abort",D),$.req)A();else $.on("request",A);else if(G&&!J)$.on("end",q),$.on("close",q);if(UB($))$.on("exit",z);if($.on("end",w),$.on("finish",B),H.error!==!1)$.on("error",N);return $.on("close",D),function(){if(W=!0,$.removeListener("complete",B),$.removeListener("abort",D),$.removeListener("request",A),$.req)$.req.removeListener("finish",B);$.removeListener("end",q),$.removeListener("close",q),$.removeListener("finish",B),$.removeListener("exit",z),$.removeListener("end",w),$.removeListener("error",N),$.removeListener("close",D)}};H7.exports=$7});var Y7=b((eN,X7)=>{var NB=e4(),DB=Q7(),p$;try{p$=e("fs")}catch($){}var Y$=function(){},VB=typeof process>"u"?!1:/^v?\.0/.test(process.version),o$=function($){return typeof $==="function"},RB=function($){if(!VB)return!1;if(!p$)return!1;return($ instanceof(p$.ReadStream||Y$)||$ instanceof(p$.WriteStream||Y$))&&o$($.close)},AB=function($){return $.setHeader&&o$($.abort)},FB=function($,H,Q,J){J=NB(J);var X=!1;$.on("close",function(){X=!0}),DB($,{readable:H,writable:Q},function(G){if(G)return J(G);X=!0,J()});var Y=!1;return function(G){if(X)return;if(Y)return;if(Y=!0,RB($))return $.close(Y$);if(AB($))return $.abort();if(o$($.destroy))return $.destroy();J(G||Error("stream was destroyed"))}},J7=function($){$()},EB=function($,H){return $.pipe(H)},MB=function(){var $=Array.prototype.slice.call(arguments),H=o$($[$.length-1]||Y$)&&$.pop()||Y$;if(Array.isArray($[0]))$=$[0];if($.length<2)throw Error("pump requires two streams per minimum");var Q,J=$.map(function(X,Y){var G=Y<$.length-1,W=Y>0;return FB(X,G,W,function(q){if(!Q)Q=q;if(q)J.forEach(J7);if(G)return;J.forEach(J7),H(Q)})});return $.reduce(EB)};X7.exports=MB});var B7=b(($D,q7)=>{var{Transform:jB}=e("stream"),{StringDecoder:OB}=e("string_decoder"),o1=Symbol("last"),s$=Symbol("decoder");function SB($,H,Q){let J;if(this.overflow){if(J=this[s$].write($).split(this.matcher),J.length===1)return Q();J.shift(),this.overflow=!1}else this[o1]+=this[s$].write($),J=this[o1].split(this.matcher);this[o1]=J.pop();for(let X=0;X<J.length;X++)try{W7(this,this.mapper(J[X]))}catch(Y){return Q(Y)}if(this.overflow=this[o1].length>this.maxLength,this.overflow&&!this.skipOverflow){Q(Error("maximum buffer reached"));return}Q()}function LB($){if(this[o1]+=this[s$].end(),this[o1])try{W7(this,this.mapper(this[o1]))}catch(H){return $(H)}$()}function W7($,H){if(H!==void 0)$.push(H)}function G7($){return $}function fB($,H,Q){switch($=$||/\r?\n/,H=H||G7,Q=Q||{},arguments.length){case 1:if(typeof $==="function")H=$,$=/\r?\n/;else if(typeof $==="object"&&!($ instanceof RegExp)&&!$[Symbol.split])Q=$,$=/\r?\n/;break;case 2:if(typeof $==="function")Q=H,H=$,$=/\r?\n/;else if(typeof H==="object")Q=H,H=G7}Q=Object.assign({},Q),Q.autoDestroy=!0,Q.transform=SB,Q.flush=LB,Q.readableObjectMode=!0;let J=new jB(Q);return J[o1]="",J[s$]=new OB("utf8"),J.matcher=$,J.mapper=H,J.maxLength=Q.maxLength,J.skipOverflow=Q.skipOverflow||!1,J.overflow=!1,J._destroy=function(X,Y){this._writableState.errorEmitted=!1,Y(X)},J}q7.exports=fB});var N7=b((HD,U7)=>{var w7=Symbol.for("pino.metadata"),CB=B7(),{Duplex:KB}=e("stream"),{parentPort:z7,workerData:_7}=e("worker_threads");function PB(){let $,H,Q=new Promise((J,X)=>{$=J,H=X});return Q.resolve=$,Q.reject=H,Q}U7.exports=function(H,Q={}){let J=Q.expectPinoConfig===!0&&_7?.workerData?.pinoWillSendConfig===!0,X=Q.parse==="lines",Y=typeof Q.parseLine==="function"?Q.parseLine:JSON.parse,G=Q.close||TB,W=CB(function(B){let w;try{w=Y(B)}catch(z){this.emit("unknown",B,z);return}if(w===null){this.emit("unknown",B,"Null value ignored");return}if(typeof w!=="object")w={data:w,time:Date.now()};if(W[w7])W.lastTime=w.time,W.lastLevel=w.level,W.lastObj=w;if(X)return B;return w},{autoDestroy:!0});if(W._destroy=function(B,w){let z=G(B,w);if(z&&typeof z.then==="function")z.then(w,w)},Q.expectPinoConfig===!0&&_7?.workerData?.pinoWillSendConfig!==!0)setImmediate(()=>{W.emit("error",Error("This transport is not compatible with the current version of pino. Please upgrade pino to the latest version."))});if(Q.metadata!==!1)W[w7]=!0,W.lastTime=0,W.lastLevel=0,W.lastObj=null;if(J){let B={},w=PB();return z7.on("message",function z(N){if(N.code==="PINO_CONFIG")B=N.config,w.resolve(),z7.off("message",z)}),Object.defineProperties(W,{levels:{get(){return B.levels}},messageKey:{get(){return B.messageKey}},errorKey:{get(){return B.errorKey}}}),w.then(q)}return q();function q(){let B=H(W);if(B&&typeof B.catch==="function")B.catch((w)=>{W.destroy(w)}),B=null;else if(Q.enablePipelining&&B)return KB.from({writable:W,readable:B});return W}};function TB($,H){process.nextTick(H,$)}});var g1=b((QD,D7)=>{D7.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 r$=b((JD,A7)=>{A7.exports=bB;var{LEVELS:V7,LEVEL_NAMES:R7}=g1();function bB($,H,Q){let J=$?H||V7:Object.assign({},V7,H),X=$?Q||R7:Object.assign({},R7,Q);return function(Y){let G="default";if(Number.isInteger(+Y))G=Object.prototype.hasOwnProperty.call(J,Y)?Y:G;else G=Object.prototype.hasOwnProperty.call(X,Y.toLowerCase())?X[Y.toLowerCase()]:G;return[J[G],G]}}});var J9=b((XD,j7)=>{var Z1=($)=>$,a$={default:Z1,60:Z1,50:Z1,40:Z1,30:Z1,20:Z1,10:Z1,message:Z1,greyMessage:Z1,property:Z1},{createColors:F7}=a4(),IB=r$(),W$=F7({useColor:!0}),{white:$9,bgRed:ZB,red:hB,yellow:xB,green:kB,blue:vB,gray:H9,cyan:E7,magenta:M7}=W$,G$={default:$9,60:ZB,50:hB,40:xB,30:kB,20:vB,10:H9,message:E7,greyMessage:H9,property:M7};function gB($){return $.reduce(function(H,[Q,J]){return H[Q]=typeof W$[J]==="function"?W$[J]:$9,H},{default:$9,message:E7,greyMessage:H9,property:M7})}function Q9($){return function(H,Q,{customLevels:J,customLevelNames:X}={}){let[Y,G]=IB($,J,X)(H);return Object.prototype.hasOwnProperty.call(Q,G)?Q[G](Y):Q.default(Y)}}function yB($){let H=Q9($),Q=function(J,X){return H(J,a$,X)};return Q.message=a$.message,Q.greyMessage=a$.greyMessage,Q.property=a$.property,Q.colors=F7({useColor:!1}),Q}function uB($){let H=Q9($),Q=function(J,X){return H(J,G$,X)};return Q.message=G$.message,Q.property=G$.property,Q.greyMessage=G$.greyMessage,Q.colors=W$,Q}function cB($,H){let Q=gB($),J=H?Q:Object.assign({},G$,Q),X=Q9(H),Y=function(G,W){return X(G,J,W)};return Y.colors=W$,Y.message=Y.message||J.message,Y.property=Y.property||J.property,Y.greyMessage=Y.greyMessage||J.greyMessage,Y}j7.exports=function(H=!1,Q,J){if(H&&Q!==void 0)return cB(Q,J);else if(H)return uB(J);return yB(J)}});var X9=b((YD,O7)=>{O7.exports=function(){}});var L7=b((GD,S7)=>{S7.exports=lB;var{isMainThread:mB}=e("worker_threads"),dB=O4(),t$=X9();function lB($){let H=new dB($);if(H.on("error",Q),!$.sync&&mB)nB(H);return H;function Q(J){if(J.code==="EPIPE"){H.write=t$,H.end=t$,H.flushSync=t$,H.destroy=t$;return}H.removeListener("error",Q)}}function nB($){if(global.WeakRef&&global.WeakMap&&global.FinalizationRegistry){let H=k$();H.register($,iB),$.on("close",function(){H.unregister($)})}}function iB($,H){if($.destroyed)return;if(H==="beforeExit")$.flush(),$.on("drain",function(){$.end()});else $.flushSync()}});var e$=b((WD,f7)=>{f7.exports=pB;function pB($){return $ instanceof Date&&!Number.isNaN($.getTime())}});var Y9=b((qD,C7)=>{C7.exports=sB;var oB=e$();function sB($){let H=new Date($);if(oB(H))return H;return H=new Date(+$),H}});var $2=b((BD,K7)=>{K7.exports=rB;function rB($){let H=[],Q=!1,J="";for(let X=0;X<$.length;X++){let Y=$.charAt(X);if(Y==="\\"){Q=!0;continue}if(Q){Q=!1,J+=Y;continue}if(Y==="."){H.push(J),J="";continue}J+=Y}if(J.length)H.push(J);return H}});var h0=b((wD,P7)=>{P7.exports=tB;var aB=$2();function tB($,H){let Q=Array.isArray(H)?H:aB(H);for(let J of Q){if(!Object.prototype.hasOwnProperty.call($,J))return;$=$[J]}return $}});var G9=b((zD,T7)=>{T7.exports=Hw;var eB=h0(),$w=$2();function Hw($,H){let Q=$w(H),J=Q.pop();if($=eB($,Q),$!==null&&typeof $==="object"&&Object.prototype.hasOwnProperty.call($,J))delete $[J]}});var m7=b((c7)=>{Object.defineProperty(c7,"__esModule",{value:!0});var Qw=Function.prototype.toString,W9=Object.create,Jw=Object.prototype.toString,Xw=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,Q){this._keys.push(H),this._values.push(Q)},$}();function Yw(){return new Xw}function Gw(){return new WeakMap}var Ww=typeof WeakMap<"u"?Gw:Yw;function B9($){if(!$)return W9(null);var H=$.constructor;if(H===Object)return $===Object.prototype?{}:W9($);if(H&&~Qw.call(H).indexOf("[native code]"))try{return new H}catch(Q){}return W9($)}function qw($){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 Bw($){return $.flags}var ww=/test/g.flags==="g"?Bw:qw;function b7($){var H=Jw.call($);return H.substring(8,H.length-1)}function zw($){return $[Symbol.toStringTag]||b7($)}var _w=typeof Symbol<"u"?zw:b7,Uw=Object.defineProperty,Nw=Object.getOwnPropertyDescriptor,I7=Object.getOwnPropertyNames,w9=Object.getOwnPropertySymbols,Z7=Object.prototype,h7=Z7.hasOwnProperty,Dw=Z7.propertyIsEnumerable,x7=typeof w9==="function";function Vw($){return I7($).concat(w9($))}var Rw=x7?Vw:I7;function Q2($,H,Q){var J=Rw($);for(var X=0,Y=J.length,G=void 0,W=void 0;X<Y;++X){if(G=J[X],G==="callee"||G==="caller")continue;if(W=Nw($,G),!W){H[G]=Q.copier($[G],Q);continue}if(!W.get&&!W.set)W.value=Q.copier(W.value,Q);try{Uw(H,G,W)}catch(q){H[G]=W.value}}return H}function Aw($,H){var Q=new H.Constructor;H.cache.set($,Q);for(var J=0,X=$.length;J<X;++J)Q[J]=H.copier($[J],H);return Q}function Fw($,H){var Q=new H.Constructor;return H.cache.set($,Q),Q2($,Q,H)}function k7($,H){return $.slice(0)}function Ew($,H){return $.slice(0,$.size,$.type)}function Mw($,H){return new H.Constructor(k7($.buffer))}function jw($,H){return new H.Constructor($.getTime())}function v7($,H){var Q=new H.Constructor;return H.cache.set($,Q),$.forEach(function(J,X){Q.set(X,H.copier(J,H))}),Q}function Ow($,H){return Q2($,v7($,H),H)}function Sw($,H){var Q=B9(H.prototype);H.cache.set($,Q);for(var J in $)if(h7.call($,J))Q[J]=H.copier($[J],H);return Q}function Lw($,H){var Q=B9(H.prototype);H.cache.set($,Q);for(var J in $)if(h7.call($,J))Q[J]=H.copier($[J],H);var X=w9($);for(var Y=0,G=X.length,W=void 0;Y<G;++Y)if(W=X[Y],Dw.call($,W))Q[W]=H.copier($[W],H);return Q}var fw=x7?Lw:Sw;function Cw($,H){var Q=B9(H.prototype);return H.cache.set($,Q),Q2($,Q,H)}function q9($,H){return new H.Constructor($.valueOf())}function Kw($,H){var Q=new H.Constructor($.source,ww($));return Q.lastIndex=$.lastIndex,Q}function H2($,H){return $}function g7($,H){var Q=new H.Constructor;return H.cache.set($,Q),$.forEach(function(J){Q.add(H.copier(J,H))}),Q}function Pw($,H){return Q2($,g7($,H),H)}var Tw=Array.isArray,z9=Object.assign,bw=Object.getPrototypeOf||function($){return $.__proto__},y7={array:Aw,arrayBuffer:k7,blob:Ew,dataView:Mw,date:jw,error:H2,map:v7,object:fw,regExp:Kw,set:g7},Iw=z9({},y7,{array:Fw,map:Ow,object:Cw,set:Pw});function Zw($){return{Arguments:$.object,Array:$.array,ArrayBuffer:$.arrayBuffer,Blob:$.blob,Boolean:q9,DataView:$.dataView,Date:$.date,Error:$.error,Float32Array:$.arrayBuffer,Float64Array:$.arrayBuffer,Int8Array:$.arrayBuffer,Int16Array:$.arrayBuffer,Int32Array:$.arrayBuffer,Map:$.map,Number:q9,Object:$.object,Promise:H2,RegExp:$.regExp,Set:$.set,String:q9,WeakMap:H2,WeakSet:H2,Uint8Array:$.arrayBuffer,Uint8ClampedArray:$.arrayBuffer,Uint16Array:$.arrayBuffer,Uint32Array:$.arrayBuffer,Uint64Array:$.arrayBuffer}}function _9($){var H=z9({},y7,$),Q=Zw(H),J=Q.Array,X=Q.Object;function Y(G,W){if(W.prototype=W.Constructor=void 0,!G||typeof G!=="object")return G;if(W.cache.has(G))return W.cache.get(G);if(W.prototype=bw(G),W.Constructor=W.prototype&&W.prototype.constructor,!W.Constructor||W.Constructor===Object)return X(G,W);if(Tw(G))return J(G,W);var q=Q[_w(G)];if(q)return q(G,W);return typeof G.then==="function"?G:X(G,W)}return function(W){return Y(W,{Constructor:void 0,cache:Ww(),copier:Y,prototype:void 0})}}function u7($){return _9(z9({},Iw,$))}var hw=u7({}),xw=_9({});c7.copyStrict=hw;c7.createCopier=_9;c7.createStrictCopier=u7;c7.default=xw});var U9=b((UD,d7)=>{d7.exports=dw;var{createCopier:uw}=m7(),cw=uw({}),mw=G9();function dw({log:$,context:H}){let{ignoreKeys:Q,includeKeys:J}=H,X=cw($);if(J){let Y={};return J.forEach((G)=>{Y[G]=X[G]}),Y}return Q.forEach((Y)=>{mw(X,Y)}),X}});var n7=b((N9,l7)=>{function x0($){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")x0=function(Q){return typeof Q};else x0=function(Q){return Q&&typeof Symbol==="function"&&Q.constructor===Symbol&&Q!==Symbol.prototype?"symbol":typeof Q};return x0($)}(function($){var H=arguments,Q=function(){var q=/d{1,4}|D{3,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|W{1,2}|[LlopSZN]|"[^"]*"|'[^']*'/g,B=/\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,w=/[^-+\dA-Z]/g;return function(z,N,D,_){if(H.length===1&&W(z)==="string"&&!/\d/.test(z))N=z,z=void 0;if(z=z||z===0?z:new Date,!(z instanceof Date))z=new Date(z);if(isNaN(z))throw TypeError("Invalid date");N=String(Q.masks[N]||N||Q.masks.default);var A=N.slice(0,4);if(A==="UTC:"||A==="GMT:"){if(N=N.slice(4),D=!0,A==="GMT:")_=!0}var R=function(){return D?"getUTC":"get"},M=function(){return z[R()+"Date"]()},S=function(){return z[R()+"Day"]()},O=function(){return z[R()+"Month"]()},T=function(){return z[R()+"FullYear"]()},h=function(){return z[R()+"Hours"]()},m=function(){return z[R()+"Minutes"]()},c=function(){return z[R()+"Seconds"]()},s=function(){return z[R()+"Milliseconds"]()},v=function(){return D?0:z.getTimezoneOffset()},t=function(){return Y(z)},$1=function(){return G(z)},a={d:function(){return M()},dd:function(){return J(M())},ddd:function(){return Q.i18n.dayNames[S()]},DDD:function(){return X({y:T(),m:O(),d:M(),_:R(),dayName:Q.i18n.dayNames[S()],short:!0})},dddd:function(){return Q.i18n.dayNames[S()+7]},DDDD:function(){return X({y:T(),m:O(),d:M(),_:R(),dayName:Q.i18n.dayNames[S()+7]})},m:function(){return O()+1},mm:function(){return J(O()+1)},mmm:function(){return Q.i18n.monthNames[O()]},mmmm:function(){return Q.i18n.monthNames[O()+12]},yy:function(){return String(T()).slice(2)},yyyy:function(){return J(T(),4)},h:function(){return h()%12||12},hh:function(){return J(h()%12||12)},H:function(){return h()},HH:function(){return J(h())},M:function(){return m()},MM:function(){return J(m())},s:function(){return c()},ss:function(){return J(c())},l:function(){return J(s(),3)},L:function(){return J(Math.floor(s()/10))},t:function(){return h()<12?Q.i18n.timeNames[0]:Q.i18n.timeNames[1]},tt:function(){return h()<12?Q.i18n.timeNames[2]:Q.i18n.timeNames[3]},T:function(){return h()<12?Q.i18n.timeNames[4]:Q.i18n.timeNames[5]},TT:function(){return h()<12?Q.i18n.timeNames[6]:Q.i18n.timeNames[7]},Z:function(){return _?"GMT":D?"UTC":(String(z).match(B)||[""]).pop().replace(w,"").replace(/GMT\+0000/g,"UTC")},o:function(){return(v()>0?"-":"+")+J(Math.floor(Math.abs(v())/60)*100+Math.abs(v())%60,4)},p:function(){return(v()>0?"-":"+")+J(Math.floor(Math.abs(v())/60),2)+":"+J(Math.floor(Math.abs(v())%60),2)},S:function(){return["th","st","nd","rd"][M()%10>3?0:(M()%100-M()%10!=10)*M()%10]},W:function(){return t()},WW:function(){return J(t())},N:function(){return $1()}};return N.replace(q,function(C){if(C in a)return a[C]();return C.slice(1,C.length-1)})}}();Q.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"},Q.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 J=function(B,w){B=String(B),w=w||2;while(B.length<w)B="0"+B;return B},X=function(B){var{y:w,m:z,d:N,_:D,dayName:_,short:A}=B,R=A===void 0?!1:A,M=new Date,S=new Date;S.setDate(S[D+"Date"]()-1);var O=new Date;O.setDate(O[D+"Date"]()+1);var T=function(){return M[D+"Date"]()},h=function(){return M[D+"Month"]()},m=function(){return M[D+"FullYear"]()},c=function(){return S[D+"Date"]()},s=function(){return S[D+"Month"]()},v=function(){return S[D+"FullYear"]()},t=function(){return O[D+"Date"]()},$1=function(){return O[D+"Month"]()},a=function(){return O[D+"FullYear"]()};if(m()===w&&h()===z&&T()===N)return R?"Tdy":"Today";else if(v()===w&&s()===z&&c()===N)return R?"Ysd":"Yesterday";else if(a()===w&&$1()===z&&t()===N)return R?"Tmw":"Tomorrow";return _},Y=function(B){var w=new Date(B.getFullYear(),B.getMonth(),B.getDate());w.setDate(w.getDate()-(w.getDay()+6)%7+3);var z=new Date(w.getFullYear(),0,4);z.setDate(z.getDate()-(z.getDay()+6)%7+3);var N=w.getTimezoneOffset()-z.getTimezoneOffset();w.setHours(w.getHours()-N);var D=(w-z)/604800000;return 1+Math.floor(D)},G=function(B){var w=B.getDay();if(w===0)w=7;return w},W=function(B){if(B===null)return"null";if(B===void 0)return"undefined";if(x0(B)!=="object")return x0(B);if(Array.isArray(B))return"array";return{}.toString.call(B).slice(8,-1).toLowerCase()};if(typeof define==="function"&&define.amd)define(function(){return Q});else if((typeof N9>"u"?"undefined":x0(N9))==="object")l7.exports=Q;else $.dateFormat=Q})(void 0)});var D9=b((ND,i7)=>{i7.exports=ow;var{DATE_FORMAT:lw,DATE_FORMAT_SIMPLE:nw}=g1(),q$=n7(),iw=Y9(),pw=e$();function ow($,H=!1){if(H===!1)return $;let Q=iw($);if(!pw(Q))return $;if(H===!0)return q$(Q,nw);let J=H.toUpperCase();if(J==="SYS:STANDARD")return q$(Q,lw);let X=J.substr(0,4);if(X==="SYS:"||X==="UTC:"){if(X==="UTC:")return q$(Q,H);return q$(Q,H.slice(4))}return q$(Q,`UTC:${H}`)}});var V9=b((DD,p7)=>{p7.exports=sw;function sw($){if(!$)return{};if(typeof $==="string")return $.split(",").reduce((H,Q,J)=>{let[X,Y=J]=Q.split(":");return H[X.toLowerCase()]=Y,H},{});else if(Object.prototype.toString.call($)==="[object Object]")return Object.keys($).reduce((H,Q)=>{return H[Q.toLowerCase()]=$[Q],H},{});else return{}}});var R9=b((VD,o7)=>{o7.exports=rw;function rw($){if(!$)return{};if(typeof $==="string")return $.split(",").reduce((H,Q,J)=>{let[X,Y=J]=Q.split(":");return H[Y]=X.toUpperCase(),H},{default:"USERLVL"});else if(Object.prototype.toString.call($)==="[object Object]")return Object.keys($).reduce((H,Q)=>{return H[$[Q]]=Q.toUpperCase(),H},{default:"USERLVL"});else return{}}});var A9=b((RD,s7)=>{s7.exports=tw;var aw=h0();function tw($,H){return $=$.replace(/{if (.*?)}(.*?){end}/g,Q),$=$.replace(/{if (.*?)}/g,""),$=$.replace(/{end}/g,""),$.replace(/\s+/g," ").trim();function Q(J,X,Y){let G=aw(H,X);if(G&&Y.includes(X))return Y.replace(new RegExp("{"+X+"}","g"),G);else return""}}});var J2=b((AD,r7)=>{r7.exports=ew;function ew($){return Object.prototype.toString.apply($)==="[object Object]"}});var B$=b((FD,a7)=>{a7.exports=$z;function $z({input:$,ident:H=" ",eol:Q=`
|
|
38
|
+
`}){let J=$.split(/\r?\n/);for(let X=1;X<J.length;X+=1)J[X]=H+J[X];return J.join(Q)}});var H5=b((ED,$5)=>{$5.exports=Xz;var{LEVEL_NAMES:t7}=g1(),e7=J9(),Hz=R9(),Qz=V9(),Jz=r$();function Xz($){let H=$.crlf?`\r
|
|
39
|
+
`:`
|
|
40
|
+
`,Q=" ",{customPrettifiers:J,errorLikeObjectKeys:X,hideObject:Y,levelFirst:G,levelKey:W,levelLabel:q,messageFormat:B,messageKey:w,minimumLevel:z,singleLine:N,timestampKey:D,translateTime:_}=$,A=$.errorProps.split(","),R=typeof $.useOnlyCustomProps==="boolean"?$.useOnlyCustomProps:$.useOnlyCustomProps==="true",M=Hz($.customLevels),S=Qz($.customLevels),O=Jz(R,M,S),T;if($.customColors)if(typeof $.customColors==="string")T=$.customColors.split(",").reduce((t,$1)=>{let[a,C]=$1.split(":"),w1=(R?$.customLevels:S[a]!==void 0)?S[a]:t7[a],L1=w1!==void 0?w1:a;return t.push([L1,C]),t},[]);else if(typeof $.customColors==="object")T=Object.keys($.customColors).reduce((t,$1)=>{let[a,C]=[$1,$.customColors[$1]],w1=(R?$.customLevels:S[a]!==void 0)?S[a]:t7[a],L1=w1!==void 0?w1:a;return t.push([L1,C]),t},[]);else throw Error("options.customColors must be of type string or object.");let h={customLevels:M,customLevelNames:S};if(R===!0&&!$.customLevels)h.customLevels=void 0,h.customLevelNames=void 0;let m=$.include!==void 0?new Set($.include.split(",")):void 0,c=!m&&$.ignore?new Set($.ignore.split(",")):void 0,s=e7($.colorize,T,R),v=$.colorizeObjects?s:e7(!1,[],!1);return{EOL:H,IDENT:" ",colorizer:s,customColors:T,customLevelNames:S,customLevels:M,customPrettifiers:J,customProperties:h,errorLikeObjectKeys:X,errorProps:A,getLevelLabelData:O,hideObject:Y,ignoreKeys:c,includeKeys:m,levelFirst:G,levelKey:W,levelLabel:q,messageFormat:B,messageKey:w,minimumLevel:z,objectColorizer:v,singleLine:N,timestampKey:D,translateTime:_,useOnlyCustomProps:R}}});var W5=b((MD,G5)=>{G5.exports=w$;w$.default=w$;w$.stable=X5;w$.stableStringify=X5;var X2="[...]",Q5="[Circular]",w0=[],B0=[];function J5(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function w$($,H,Q,J){if(typeof J>"u")J=J5();F9($,"",0,[],void 0,0,J);var X;try{if(B0.length===0)X=JSON.stringify($,H,Q);else X=JSON.stringify($,Y5(H),Q)}catch(G){return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{while(w0.length!==0){var Y=w0.pop();if(Y.length===4)Object.defineProperty(Y[0],Y[1],Y[3]);else Y[0][Y[1]]=Y[2]}}return X}function k0($,H,Q,J){var X=Object.getOwnPropertyDescriptor(J,Q);if(X.get!==void 0)if(X.configurable)Object.defineProperty(J,Q,{value:$}),w0.push([J,Q,H,X]);else B0.push([H,Q,$]);else J[Q]=$,w0.push([J,Q,H])}function F9($,H,Q,J,X,Y,G){Y+=1;var W;if(typeof $==="object"&&$!==null){for(W=0;W<J.length;W++)if(J[W]===$){k0(Q5,$,H,X);return}if(typeof G.depthLimit<"u"&&Y>G.depthLimit){k0(X2,$,H,X);return}if(typeof G.edgesLimit<"u"&&Q+1>G.edgesLimit){k0(X2,$,H,X);return}if(J.push($),Array.isArray($))for(W=0;W<$.length;W++)F9($[W],W,W,J,$,Y,G);else{var q=Object.keys($);for(W=0;W<q.length;W++){var B=q[W];F9($[B],B,W,J,$,Y,G)}}J.pop()}}function Yz($,H){if($<H)return-1;if($>H)return 1;return 0}function X5($,H,Q,J){if(typeof J>"u")J=J5();var X=E9($,"",0,[],void 0,0,J)||$,Y;try{if(B0.length===0)Y=JSON.stringify(X,H,Q);else Y=JSON.stringify(X,Y5(H),Q)}catch(W){return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{while(w0.length!==0){var G=w0.pop();if(G.length===4)Object.defineProperty(G[0],G[1],G[3]);else G[0][G[1]]=G[2]}}return Y}function E9($,H,Q,J,X,Y,G){Y+=1;var W;if(typeof $==="object"&&$!==null){for(W=0;W<J.length;W++)if(J[W]===$){k0(Q5,$,H,X);return}try{if(typeof $.toJSON==="function")return}catch(z){return}if(typeof G.depthLimit<"u"&&Y>G.depthLimit){k0(X2,$,H,X);return}if(typeof G.edgesLimit<"u"&&Q+1>G.edgesLimit){k0(X2,$,H,X);return}if(J.push($),Array.isArray($))for(W=0;W<$.length;W++)E9($[W],W,W,J,$,Y,G);else{var q={},B=Object.keys($).sort(Yz);for(W=0;W<B.length;W++){var w=B[W];E9($[w],w,W,J,$,Y,G),q[w]=$[w]}if(typeof X<"u")w0.push([X,H,$]),X[H]=q;else return q}J.pop()}}function Y5($){return $=typeof $<"u"?$:function(H,Q){return Q},function(H,Q){if(B0.length>0)for(var J=0;J<B0.length;J++){var X=B0[J];if(X[1]===H&&X[0]===Q){Q=X[2],B0.splice(J,1);break}}return $.call(this,H,Q)}}});var M9=b((jD,q5)=>{q5.exports=Wz;var Gz=B$();function Wz({keyName:$,lines:H,eol:Q,ident:J}){let X="",Y=Gz({input:H,ident:J,eol:Q}),G=`${J}${$}: ${Y}${Q}`.split(Q);for(let W=0;W<G.length;W+=1){if(W!==0)X+=Q;let q=G[W];if(/^\s*"stack"/.test(q)){let B=/^(\s*"stack":)\s*(".*"),?$/.exec(q);if(B&&B.length===3){let w=/^\s*/.exec(q)[0].length+4,z=" ".repeat(w),N=B[2];X+=B[1]+Q+z+JSON.parse(N).replace(/\n/g,Q+z)}else X+=q}else X+=q}return X}});var Y2=b((OD,B5)=>{B5.exports=zz;var{LOGGER_KEYS:qz}=g1(),j9=W5(),Bz=B$(),wz=M9();function zz({log:$,excludeLoggerKeys:H=!0,skipKeys:Q=[],context:J}){let{EOL:X,IDENT:Y,customPrettifiers:G,errorLikeObjectKeys:W,objectColorizer:q,singleLine:B,colorizer:w}=J,z=[].concat(Q);if(H===!0)Array.prototype.push.apply(z,qz);let N="",{plain:D,errors:_}=Object.entries($).reduce(({plain:A,errors:R},[M,S])=>{if(z.includes(M)===!1){let O=typeof G[M]==="function"?G[M](S,M,$,{colors:w.colors}):S;if(W.includes(M))R[M]=O;else A[M]=O}return{plain:A,errors:R}},{plain:{},errors:{}});if(B){if(Object.keys(D).length>0)N+=q.greyMessage(j9(D));N+=X,N=N.replace(/\\\\/gi,"\\")}else Object.entries(D).forEach(([A,R])=>{let M=typeof G[A]==="function"?R:j9(R,null,2);if(M===void 0)return;M=M.replace(/\\\\/gi,"\\");let S=Bz({input:M,ident:Y,eol:X});N+=`${Y}${q.property(A)}:${S.startsWith(X)?"":" "}${S}${X}`});return Object.entries(_).forEach(([A,R])=>{let M=typeof G[A]==="function"?R:j9(R,null,2);if(M===void 0)return;N+=wz({keyName:A,lines:M,eol:X,ident:Y})}),N}});var O9=b((SD,w5)=>{w5.exports=Vz;var{LOGGER_KEYS:_z}=g1(),Uz=J2(),Nz=B$(),Dz=Y2();function Vz({log:$,context:H}){let{EOL:Q,IDENT:J,errorProps:X,messageKey:Y}=H,G=$.stack,W=Nz({input:G,ident:J,eol:Q}),q=`${J}${W}${Q}`;if(X.length>0){let B=_z.concat(Y,"type","stack"),w;if(X[0]==="*")w=Object.keys($).filter((z)=>B.includes(z)===!1);else w=X.filter((z)=>B.includes(z)===!1);for(let z=0;z<w.length;z+=1){let N=w[z];if(N in $===!1)continue;if(Uz($[N])){let D=Dz({log:$[N],excludeLoggerKeys:!1,context:{...H,IDENT:J+J}});q=`${q}${J}${N}: {${Q}${D}${J}}${Q}`;continue}q=`${q}${J}${N}: ${$[N]}${Q}`}}return q}});var S9=b((LD,z5)=>{z5.exports=Az;var Rz=h0();function Az({log:$,context:H}){let{colorizer:Q,customLevels:J,customLevelNames:X,levelKey:Y,getLevelLabelData:G}=H,W=H.customPrettifiers?.level,q=Rz($,Y);if(q===void 0)return;let B=Q(q,{customLevels:J,customLevelNames:X});if(W){let[w]=G(q);return W(q,Y,$,{label:w,labelColorized:B,colors:Q.colors})}return B}});var L9=b((fD,U5)=>{U5.exports=Mz;var{LEVELS:Fz}=g1(),_5=h0(),Ez=A9();function Mz({log:$,context:H}){let{colorizer:Q,customLevels:J,levelKey:X,levelLabel:Y,messageFormat:G,messageKey:W,useOnlyCustomProps:q}=H;if(G&&typeof G==="string"){let B=Ez(G,$),w=String(B).replace(/{([^{}]+)}/g,function(z,N){let D;if(N===Y&&(D=_5($,X))!==void 0)return(q?J===void 0:J[D]===void 0)?Fz[D]:J[D];return _5($,N)||""});return Q.message(w)}if(G&&typeof G==="function"){let B=G($,W,Y,{colors:Q.colors});return Q.message(B)}if(W in $===!1)return;if(typeof $[W]!=="string"&&typeof $[W]!=="number"&&typeof $[W]!=="boolean")return;return Q.message($[W])}});var f9=b((CD,N5)=>{N5.exports=jz;function jz({log:$,context:H}){let{customPrettifiers:Q,colorizer:J}=H,X="";if($.name||$.pid||$.hostname){if(X+="(",$.name)X+=Q.name?Q.name($.name,"name",$,{colors:J.colors}):$.name;if($.pid){let Y=Q.pid?Q.pid($.pid,"pid",$,{colors:J.colors}):$.pid;if($.name&&$.pid)X+="/"+Y;else X+=Y}if($.hostname){let Y=Q.hostname?Q.hostname($.hostname,"hostname",$,{colors:J.colors}):$.hostname;X+=`${X==="("?"on":" on"} ${Y}`}X+=")"}if($.caller){let Y=Q.caller?Q.caller($.caller,"caller",$,{colors:J.colors}):$.caller;X+=`${X===""?"":" "}<${Y}>`}if(X==="")return;else return X}});var C9=b((KD,D5)=>{D5.exports=Sz;var Oz=D9();function Sz({log:$,context:H}){let{timestampKey:Q,translateTime:J}=H,X=H.customPrettifiers?.time,Y=null;if(Q in $)Y=$[Q];else if("timestamp"in $)Y=$.timestamp;if(Y===null)return;let G=J?Oz(Y,J):Y;return X?X(G):`[${G}]`}});var R5=b((PD,V5)=>{V5.exports={buildSafeSonicBoom:L7(),createDate:Y9(),deleteLogProperty:G9(),filterLog:U9(),formatTime:D9(),getPropertyValue:h0(),handleCustomLevelsNamesOpts:V9(),handleCustomLevelsOpts:R9(),interpretConditionals:A9(),isObject:J2(),isValidDate:e$(),joinLinesWithIndentation:B$(),noop:X9(),parseFactoryOptions:H5(),prettifyErrorLog:O9(),prettifyError:M9(),prettifyLevel:S9(),prettifyMessage:L9(),prettifyMetadata:f9(),prettifyObject:Y2(),prettifyTime:C9(),splitPropertyKey:$2(),getLevelLabelData:r$()}});var j5=b((TD,v0)=>{var Lz=typeof Buffer<"u",A5=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,F5=/"(?: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 E5($,H,Q){if(Q==null){if(H!==null&&typeof H==="object")Q=H,H=void 0}if(Lz&&Buffer.isBuffer($))$=$.toString();if($&&$.charCodeAt(0)===65279)$=$.slice(1);let J=JSON.parse($,H);if(J===null||typeof J!=="object")return J;let X=Q&&Q.protoAction||"error",Y=Q&&Q.constructorAction||"error";if(X==="ignore"&&Y==="ignore")return J;if(X!=="ignore"&&Y!=="ignore"){if(A5.test($)===!1&&F5.test($)===!1)return J}else if(X!=="ignore"&&Y==="ignore"){if(A5.test($)===!1)return J}else if(F5.test($)===!1)return J;return M5(J,{protoAction:X,constructorAction:Y,safe:Q&&Q.safe})}function M5($,{protoAction:H="error",constructorAction:Q="error",safe:J}={}){let X=[$];while(X.length){let Y=X;X=[];for(let G of Y){if(H!=="ignore"&&Object.prototype.hasOwnProperty.call(G,"__proto__")){if(J===!0)return null;else if(H==="error")throw SyntaxError("Object contains forbidden prototype property");delete G.__proto__}if(Q!=="ignore"&&Object.prototype.hasOwnProperty.call(G,"constructor")&&G.constructor!==null&&typeof G.constructor==="object"&&Object.prototype.hasOwnProperty.call(G.constructor,"prototype")){if(J===!0)return null;else if(Q==="error")throw SyntaxError("Object contains forbidden prototype property");delete G.constructor}for(let W in G){let q=G[W];if(q&&typeof q==="object")X.push(q)}}}return $}function K9($,H,Q){let{stackTraceLimit:J}=Error;Error.stackTraceLimit=0;try{return E5($,H,Q)}finally{Error.stackTraceLimit=J}}function fz($,H){let{stackTraceLimit:Q}=Error;Error.stackTraceLimit=0;try{return E5($,H,{safe:!0})}catch{return}finally{Error.stackTraceLimit=Q}}v0.exports=K9;v0.exports.default=K9;v0.exports.parse=K9;v0.exports.safeParse=fz;v0.exports.scan=M5});var L5=b((bD,S5)=>{S5.exports=gz;var Cz=j5(),O5=J2(),Kz=O9(),Pz=S9(),Tz=L9(),bz=f9(),Iz=Y2(),Zz=C9(),hz=U9(),{LEVELS:xz,LEVEL_KEY:kz,LEVEL_NAMES:P9}=g1(),vz=($)=>{try{return{value:Cz.parse($,{protoAction:"remove"})}}catch(H){return{err:H}}};function gz($){let H;if(!O5($)){let W=vz($);if(W.err||!O5(W.value))return $+this.EOL;H=W.value}else H=$;if(this.minimumLevel){let W;if(this.useOnlyCustomProps)W=this.customLevels;else W=this.customLevelNames[this.minimumLevel]!==void 0;let q;if(W)q=this.customLevelNames[this.minimumLevel];else q=P9[this.minimumLevel];if(!q)q=typeof this.minimumLevel==="string"?P9[this.minimumLevel]:P9[xz[this.minimumLevel].toLowerCase()];if(H[this.levelKey===void 0?kz:this.levelKey]<q)return}let Q=Tz({log:H,context:this.context});if(this.ignoreKeys||this.includeKeys)H=hz({log:H,context:this.context});let J=Pz({log:H,context:{...this.context,...this.context.customProperties}}),X=bz({log:H,context:this.context}),Y=Zz({log:H,context:this.context}),G="";if(this.levelFirst&&J)G=`${J}`;if(Y&&G==="")G=`${Y}`;else if(Y)G=`${G} ${Y}`;if(!this.levelFirst&&J)if(G.length>0)G=`${G} ${J}`;else G=J;if(X)if(G.length>0)G=`${G} ${X}:`;else G=X;if(G.endsWith(":")===!1&&G!=="")G+=":";if(Q!==void 0)if(G.length>0)G=`${G} ${Q}`;else G=Q;if(G.length>0&&!this.singleLine)G+=this.EOL;if(H.type==="Error"&&typeof H.stack==="string"){let W=Kz({log:H,context:this.context});if(this.singleLine)G+=this.EOL;G+=W}else if(this.hideObject===!1){let W=[this.messageKey,this.levelKey,this.timestampKey].map((B)=>B.replaceAll(/\\/g,"")).filter((B)=>{return typeof H[B]==="string"||typeof H[B]==="number"||typeof H[B]==="boolean"}),q=Iz({log:H,skipKeys:W,context:this.context});if(this.singleLine&&!/^\s$/.test(q))G+=" ";G+=q}return G}});var K5=b((ID,s1)=>{var{isColorSupported:f5}=a4(),yz=Y7(),{Transform:uz}=e("stream"),cz=N7(),mz=J9(),{ERROR_LIKE_KEYS:C5,LEVEL_KEY:dz,LEVEL_LABEL:lz,MESSAGE_KEY:nz,TIMESTAMP_KEY:iz}=g1(),{buildSafeSonicBoom:pz,parseFactoryOptions:oz}=R5(),sz=L5(),rz={colorize:f5,colorizeObjects:!0,crlf:!1,customColors:null,customLevels:null,customPrettifiers:{},errorLikeObjectKeys:C5,errorProps:"",hideObject:!1,ignore:"hostname",include:void 0,levelFirst:!1,levelKey:dz,levelLabel:lz,messageFormat:null,messageKey:nz,minimumLevel:void 0,outputStream:process.stdout,singleLine:!1,timestampKey:iz,translateTime:!0,useOnlyCustomProps:!0};function T9($){let H=oz(Object.assign({},rz,$));return sz.bind({...H,context:H})}function G2($={}){let H=T9($),Q;return cz(function(J){J.on("message",function Y(G){if(!G||G.code!=="PINO_CONFIG")return;Object.assign($,{messageKey:G.config.messageKey,errorLikeObjectKeys:Array.from(new Set([...$.errorLikeObjectKeys||C5,G.config.errorKey])),customLevels:G.config.levels.values}),H=T9($),J.off("message",Y)});let X=new uz({objectMode:!0,autoDestroy:!0,transform(Y,G,W){let q=H(Y);W(null,q)}});if(typeof $.destination==="object"&&typeof $.destination.write==="function")Q=$.destination;else Q=pz({dest:$.destination||1,append:$.append,mkdir:$.mkdir,sync:$.sync});return J.on("unknown",function(Y){Q.write(Y+`
|
|
41
|
+
`)}),yz(J,X,Q),X},{parse:"lines",close(J,X){Q.on("close",()=>{X(J)})}})}s1.exports=G2;s1.exports.build=G2;s1.exports.PinoPretty=G2;s1.exports.prettyFactory=T9;s1.exports.colorizerFactory=mz;s1.exports.isColorSupported=f5;s1.exports.default=G2});var x9={};r1(x9,{HonoAdapter:()=>I5});class I5{hono;name="hono";runtime;constructor($){this.hono=$;this.runtime=tz()}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 Q=Bun.serve({port:$,fetch:this.hono.fetch});if(H)H();return{port:$,close:async()=>{Q.stop()},...Q}}listenDeno($,H){let Q=new AbortController;return Deno.serve({port:$,signal:Q.signal,onListen:H},this.hono.fetch),{port:$,close:async()=>{Q.abort()}}}listenNode($,H){try{let{serve:Q}=(()=>{throw new Error("Cannot require module "+"@hono/node-server");})(),J=Q({fetch:this.hono.fetch,port:$},H);return{port:$,close:async()=>{return new Promise((X)=>{J.close(()=>X())})},...J}}catch(Q){throw Error("Node.js adapter requires @hono/node-server package. Install it with: npm install @hono/node-server")}}}var tz=()=>{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 h5={};r1(h5,{ExpressAdapter:()=>Z5});class Z5{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,Q)=>{try{let J=this.createWebRequest(H),X=await $.fetch(J);await this.sendExpressResponse(Q,X)}catch(J){Q.status(500).json({error:"Internal Server Error",message:J instanceof Error?J.message:"Unknown error"})}})}createWebRequest($){let H=$.protocol||"http",Q=$.get("host")||"localhost",J=`${H}://${Q}${$.originalUrl||$.url}`,X=new Headers;for(let[G,W]of Object.entries($.headers))if(typeof W==="string")X.set(G,W);else if(Array.isArray(W))W.forEach((q)=>X.append(G,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(J,Y)}async sendExpressResponse($,H){if($.status(H.status),H.headers.forEach((Q,J)=>{$.setHeader(J,Q)}),H.body){let Q=H.headers.get("content-type")||"";if(Q.includes("application/json")){let J=await H.json();$.json(J)}else if(Q.includes("text/")){let J=await H.text();$.send(J)}else{let J=await H.arrayBuffer();$.send(Buffer.from(J))}}else $.end()}listen($,H){return this.express.listen($,H)}getHandler(){return this.express}getExpressApp(){return this.express}}class N${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,Q){let J=this.buildUrl(H,Q?.query),X={method:$,headers:this.buildHeaders(Q)};if(Q?.body!==void 0)X.body=Q.body;else if(Q?.json!==void 0)X.body=JSON.stringify(Q.json);let Y=await this.hono.request(J,X),G=await Y.text(),W;try{W=JSON.parse(G)}catch{W=G}return{status:Y.status,headers:Y.headers,body:W,text:G,json:async()=>JSON.parse(G),ok:Y.ok}}buildUrl($,H){if(!H||Object.keys(H).length===0)return $;let Q=new URLSearchParams(H).toString();return`${$}?${Q}`}buildHeaders($){let H={...$?.headers};if($?.json!==void 0&&!H["Content-Type"])H["Content-Type"]="application/json";return H}}var _2=($,H,Q)=>{return(J,X)=>{let Y=-1;return G(0);async function G(W){if(W<=Y)throw Error("next() called multiple times");Y=W;let q,B=!1,w;if($[W])w=$[W][0][0],J.req.routeIndex=W;else w=W===$.length&&X||void 0;if(w)try{q=await w(J,()=>G(W+1))}catch(z){if(z instanceof Error&&H)J.error=z,q=await H(z,J),B=!0;else throw z}else if(J.finalized===!1&&Q)q=await Q(J);if(q&&(J.finalized===!1||B))J.res=q;return J}}};var r9=Symbol();var a9=async($,H=Object.create(null))=>{let{all:Q=!1,dot:J=!1}=H,Y=($ instanceof D$?$.raw.headers:$.headers).get("Content-Type");if(Y?.startsWith("multipart/form-data")||Y?.startsWith("application/x-www-form-urlencoded"))return J3($,{all:Q,dot:J});return{}};async function J3($,H){let Q=await $.formData();if(Q)return X3(Q,H);return{}}function X3($,H){let Q=Object.create(null);if($.forEach((J,X)=>{if(!(H.all||X.endsWith("[]")))Q[X]=J;else Y3(Q,X,J)}),H.dot)Object.entries(Q).forEach(([J,X])=>{if(J.includes("."))G3(Q,J,X),delete Q[J]});return Q}var Y3=($,H,Q)=>{if($[H]!==void 0)if(Array.isArray($[H]))$[H].push(Q);else $[H]=[$[H],Q];else if(!H.endsWith("[]"))$[H]=Q;else $[H]=[Q]},G3=($,H,Q)=>{let J=$,X=H.split(".");X.forEach((Y,G)=>{if(G===X.length-1)J[Y]=Q;else{if(!J[Y]||typeof J[Y]!=="object"||Array.isArray(J[Y])||J[Y]instanceof File)J[Y]=Object.create(null);J=J[Y]}})};var N2=($)=>{let H=$.split("/");if(H[0]==="")H.shift();return H},t9=($)=>{let{groups:H,path:Q}=W3($),J=N2(Q);return q3(J,H)},W3=($)=>{let H=[];return $=$.replace(/\{[^}]+\}/g,(Q,J)=>{let X=`@${J}`;return H.push([X,Q]),X}),{groups:H,path:$}},q3=($,H)=>{for(let Q=H.length-1;Q>=0;Q--){let[J]=H[Q];for(let X=$.length-1;X>=0;X--)if($[X].includes(J)){$[X]=$[X].replace(J,H[Q][1]);break}}return $},V$={},e9=($,H)=>{if($==="*")return"*";let Q=$.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);if(Q){let J=`${$}#${H}`;if(!V$[J])if(Q[2])V$[J]=H&&H[0]!==":"&&H[0]!=="*"?[J,Q[1],new RegExp(`^${Q[2]}(?=/${H})`)]:[$,Q[1],new RegExp(`^${Q[2]}$`)];else V$[J]=[$,Q[1],!0];return V$[J]}return null},U0=($,H)=>{try{return H($)}catch{return $.replace(/(?:%[0-9A-Fa-f]{2})+/g,(Q)=>{try{return H(Q)}catch{return Q}})}},B3=($)=>U0($,decodeURI),D2=($)=>{let H=$.url,Q=H.indexOf("/",H.indexOf(":")+4),J=Q;for(;J<H.length;J++){let X=H.charCodeAt(J);if(X===37){let Y=H.indexOf("?",J),G=H.slice(Q,Y===-1?void 0:Y);return B3(G.includes("%25")?G.replace(/%25/g,"%2525"):G)}else if(X===63)break}return H.slice(Q,J)};var $8=($)=>{let H=D2($);return H.length>1&&H.at(-1)==="/"?H.slice(0,-1):H},a1=($,H,...Q)=>{if(Q.length)H=a1(H,...Q);return`${$?.[0]==="/"?"":"/"}${$}${H==="/"?"":`${$?.at(-1)==="/"?"":"/"}${H?.[0]==="/"?H.slice(1):H}`}`},R$=($)=>{if($.charCodeAt($.length-1)!==63||!$.includes(":"))return null;let H=$.split("/"),Q=[],J="";return H.forEach((X)=>{if(X!==""&&!/\:/.test(X))J+="/"+X;else if(/\:/.test(X))if(/\?/.test(X)){if(Q.length===0&&J==="")Q.push("/");else Q.push(J);let Y=X.replace("?","");J+="/"+Y,Q.push(J)}else J+="/"+X}),Q.filter((X,Y,G)=>G.indexOf(X)===Y)},U2=($)=>{if(!/[%+]/.test($))return $;if($.indexOf("+")!==-1)$=$.replace(/\+/g," ");return $.indexOf("%")!==-1?U0($,m0):$},H8=($,H,Q)=>{let J;if(!Q&&H&&!/[%+]/.test(H)){let G=$.indexOf(`?${H}`,8);if(G===-1)G=$.indexOf(`&${H}`,8);while(G!==-1){let W=$.charCodeAt(G+H.length+1);if(W===61){let q=G+H.length+2,B=$.indexOf("&",q);return U2($.slice(q,B===-1?void 0:B))}else if(W==38||isNaN(W))return"";G=$.indexOf(`&${H}`,G+1)}if(J=/[%+]/.test($),!J)return}let X={};J??=/[%+]/.test($);let Y=$.indexOf("?",8);while(Y!==-1){let G=$.indexOf("&",Y+1),W=$.indexOf("=",Y);if(W>G&&G!==-1)W=-1;let q=$.slice(Y+1,W===-1?G===-1?void 0:G:W);if(J)q=U2(q);if(Y=G,q==="")continue;let B;if(W===-1)B="";else if(B=$.slice(W+1,G===-1?void 0:G),J)B=U2(B);if(Q){if(!(X[q]&&Array.isArray(X[q])))X[q]=[];X[q].push(B)}else X[q]??=B}return H?X[H]:X},Q8=H8,J8=($,H)=>{return H8($,H,!0)},m0=decodeURIComponent;var X8=($)=>U0($,m0),D$=class{raw;#H;#$;routeIndex=0;path;bodyCache={};constructor($,H="/",Q=[[]]){this.raw=$,this.path=H,this.#$=Q,this.#H={}}param($){return $?this.#Q($):this.#Y()}#Q($){let H=this.#$[0][this.routeIndex][1][$],Q=this.#X(H);return Q&&/\%/.test(Q)?X8(Q):Q}#Y(){let $={},H=Object.keys(this.#$[0][this.routeIndex][1]);for(let Q of H){let J=this.#X(this.#$[0][this.routeIndex][1][Q]);if(J!==void 0)$[Q]=/\%/.test(J)?X8(J):J}return $}#X($){return this.#$[1]?this.#$[1][$]:$}query($){return Q8(this.url,$)}queries($){return J8(this.url,$)}header($){if($)return this.raw.headers.get($)??void 0;let H={};return this.raw.headers.forEach((Q,J)=>{H[J]=Q}),H}async parseBody($){return this.bodyCache.parsedBody??=await a9(this,$)}#J=($)=>{let{bodyCache:H,raw:Q}=this,J=H[$];if(J)return J;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[$]=Q[$]()};json(){return this.#J("text").then(($)=>JSON.parse($))}text(){return this.#J("text")}arrayBuffer(){return this.#J("arrayBuffer")}blob(){return this.#J("blob")}formData(){return this.#J("formData")}addValidatedData($,H){this.#H[$]=H}valid($){return this.#H[$]}get url(){return this.raw.url}get method(){return this.raw.method}get[r9](){return this.#$}get matchedRoutes(){return this.#$[0].map(([[,$]])=>$)}get routePath(){return this.#$[0].map(([[,$]])=>$)[this.routeIndex].path}};var Y8={Stringify:1,BeforeStream:2,Stream:3},w3=($,H)=>{let Q=new String($);return Q.isEscaped=!0,Q.callbacks=H,Q};var V2=async($,H,Q,J,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 G=Promise.all(Y.map((W)=>W({phase:H,buffer:X,context:J}))).then((W)=>Promise.all(W.filter(Boolean).map((q)=>V2(q,H,!1,J,X))).then(()=>X[0]));if(Q)return w3(await G,Y);else return G};var z3="text/plain; charset=UTF-8",R2=($,H)=>{return{"Content-Type":$,...H}},G8=class{#H;#$;env={};#Q;finalized=!1;error;#Y;#X;#J;#w;#q;#B;#W;#z;#_;constructor($,H){if(this.#H=$,H)this.#X=H.executionCtx,this.env=H.env,this.#B=H.notFoundHandler,this.#_=H.path,this.#z=H.matchResult}get req(){return this.#$??=new D$(this.#H,this.#_,this.#z),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.#J||=new Response(null,{headers:this.#W??=new Headers})}set res($){if(this.#J&&$){$=new Response($.body,$);for(let[H,Q]of this.#J.headers.entries()){if(H==="content-type")continue;if(H==="set-cookie"){let J=this.#J.headers.getSetCookie();$.headers.delete("set-cookie");for(let X of J)$.headers.append("set-cookie",X)}else $.headers.set(H,Q)}}this.#J=$,this.finalized=!0}render=(...$)=>{return this.#q??=(H)=>this.html(H),this.#q(...$)};setLayout=($)=>this.#w=$;getLayout=()=>this.#w;setRenderer=($)=>{this.#q=$};header=($,H,Q)=>{if(this.finalized)this.#J=new Response(this.#J.body,this.#J);let J=this.#J?this.#J.headers:this.#W??=new Headers;if(H===void 0)J.delete($);else if(Q?.append)J.append($,H);else J.set($,H)};status=($)=>{this.#Y=$};set=($,H)=>{this.#Q??=new Map,this.#Q.set($,H)};get=($)=>{return this.#Q?this.#Q.get($):void 0};get var(){if(!this.#Q)return{};return Object.fromEntries(this.#Q)}#G($,H,Q){let J=this.#J?new Headers(this.#J.headers):this.#W??new Headers;if(typeof H==="object"&&"headers"in H){let Y=H.headers instanceof Headers?H.headers:new Headers(H.headers);for(let[G,W]of Y)if(G.toLowerCase()==="set-cookie")J.append(G,W);else J.set(G,W)}if(Q)for(let[Y,G]of Object.entries(Q))if(typeof G==="string")J.set(Y,G);else{J.delete(Y);for(let W of G)J.append(Y,W)}let X=typeof H==="number"?H:H?.status??this.#Y;return new Response($,{status:X,headers:J})}newResponse=(...$)=>this.#G(...$);body=($,H,Q)=>this.#G($,H,Q);text=($,H,Q)=>{return!this.#W&&!this.#Y&&!H&&!Q&&!this.finalized?new Response($):this.#G($,H,R2(z3,Q))};json=($,H,Q)=>{return this.#G(JSON.stringify($),H,R2("application/json",Q))};html=($,H,Q)=>{let J=(X)=>this.#G(X,H,R2("text/html; charset=UTF-8",Q));return typeof $==="object"?V2($,Y8.Stringify,!1,{}).then(J):J($)};redirect=($,H)=>{let Q=String($);return this.header("Location",!/[^\x00-\xFF]/.test(Q)?Q:encodeURI(Q)),this.newResponse(null,H??302)};notFound=()=>{return this.#B??=()=>new Response,this.#B(this)}};var J1="ALL",W8="all",q8=["get","post","put","delete","options","patch"],A$="Can not add a route since the matcher is already built.",F$=class extends Error{};var B8="__COMPOSED_HANDLER";var _3=($)=>{return $.text("404 Not Found",404)},w8=($,H)=>{if("getResponse"in $){let Q=$.getResponse();return H.newResponse(Q.body,Q)}return console.error($),H.text("Internal Server Error",500)},A2=class{get;post;put;delete;options;patch;all;on;use;router;getPath;_basePath="/";#H="/";routes=[];constructor($={}){[...q8,W8].forEach((X)=>{this[X]=(Y,...G)=>{if(typeof Y==="string")this.#H=Y;else this.#Y(X,this.#H,Y);return G.forEach((W)=>{this.#Y(X,this.#H,W)}),this}}),this.on=(X,Y,...G)=>{for(let W of[Y].flat()){this.#H=W;for(let q of[X].flat())G.map((B)=>{this.#Y(q.toUpperCase(),this.#H,B)})}return this},this.use=(X,...Y)=>{if(typeof X==="string")this.#H=X;else this.#H="*",Y.unshift(X);return Y.forEach((G)=>{this.#Y(J1,this.#H,G)}),this};let{strict:Q,...J}=$;Object.assign(this,J),this.getPath=Q??!0?$.getPath??D2:$8}#$(){let $=new A2({router:this.router,getPath:this.getPath});return $.errorHandler=this.errorHandler,$.#Q=this.#Q,$.routes=this.routes,$}#Q=_3;errorHandler=w8;route($,H){let Q=this.basePath($);return H.routes.map((J)=>{let X;if(H.errorHandler===w8)X=J.handler;else X=async(Y,G)=>(await _2([],H.errorHandler)(Y,()=>J.handler(Y,G))).res,X[B8]=J.handler;Q.#Y(J.method,J.path,X)}),this}basePath($){let H=this.#$();return H._basePath=a1(this._basePath,$),H}onError=($)=>{return this.errorHandler=$,this};notFound=($)=>{return this.#Q=$,this};mount($,H,Q){let J,X;if(Q)if(typeof Q==="function")X=Q;else if(X=Q.optionHandler,Q.replaceRequest===!1)J=(W)=>W;else J=Q.replaceRequest;let Y=X?(W)=>{let q=X(W);return Array.isArray(q)?q:[q]}:(W)=>{let q=void 0;try{q=W.executionCtx}catch{}return[W.env,q]};J||=(()=>{let W=a1(this._basePath,$),q=W==="/"?0:W.length;return(B)=>{let w=new URL(B.url);return w.pathname=w.pathname.slice(q)||"/",new Request(w,B)}})();let G=async(W,q)=>{let B=await H(J(W.req.raw),...Y(W));if(B)return B;await q()};return this.#Y(J1,a1($,"*"),G),this}#Y($,H,Q){$=$.toUpperCase(),H=a1(this._basePath,H);let J={basePath:this._basePath,path:H,method:$,handler:Q};this.router.add($,H,[Q,J]),this.routes.push(J)}#X($,H){if($ instanceof Error)return this.errorHandler($,H);throw $}#J($,H,Q,J){if(J==="HEAD")return(async()=>new Response(null,await this.#J($,H,Q,"GET")))();let X=this.getPath($,{env:Q}),Y=this.router.match(J,X),G=new G8($,{path:X,matchResult:Y,env:Q,executionCtx:H,notFoundHandler:this.#Q});if(Y[0].length===1){let q;try{q=Y[0][0][0][0](G,async()=>{G.res=await this.#Q(G)})}catch(B){return this.#X(B,G)}return q instanceof Promise?q.then((B)=>B||(G.finalized?G.res:this.#Q(G))).catch((B)=>this.#X(B,G)):q??this.#Q(G)}let W=_2(Y[0],this.errorHandler,this.#Q);return(async()=>{try{let q=await W(G);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,G)}})()}fetch=($,...H)=>{return this.#J($,H[1],H[0],$.method)};request=($,H,Q,J)=>{if($ instanceof Request)return this.fetch(H?new Request($,H):$,Q,J);return $=$.toString(),this.fetch(new Request(/^https?:\/\//.test($)?$:`http://localhost${a1("/",$)}`,H),Q,J)};fire=()=>{addEventListener("fetch",($)=>{$.respondWith(this.#J($.request,$,void 0,$.request.method))})}};var E$="[^/]+",d0=".*",l0="(?:|/.*)",t1=Symbol(),U3=new Set(".\\+*[^]$()");function N3($,H){if($.length===1)return H.length===1?$<H?-1:1:-1;if(H.length===1)return 1;if($===d0||$===l0)return 1;else if(H===d0||H===l0)return-1;if($===E$)return 1;else if(H===E$)return-1;return $.length===H.length?$<H?-1:1:H.length-$.length}var M$=class{#H;#$;#Q=Object.create(null);insert($,H,Q,J,X){if($.length===0){if(this.#H!==void 0)throw t1;if(X)return;this.#H=H;return}let[Y,...G]=$,W=Y==="*"?G.length===0?["","",d0]:["","",E$]:Y==="/*"?["","",l0]:Y.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/),q;if(W){let B=W[1],w=W[2]||E$;if(B&&W[2]){if(w===".*")throw t1;if(w=w.replace(/^\((?!\?:)(?=[^)]+\)$)/,"(?:"),/\((?!\?:)/.test(w))throw t1}if(q=this.#Q[w],!q){if(Object.keys(this.#Q).some((z)=>z!==d0&&z!==l0))throw t1;if(X)return;if(q=this.#Q[w]=new M$,B!=="")q.#$=J.varIndex++}if(!X&&B!=="")Q.push([B,q.#$])}else if(q=this.#Q[Y],!q){if(Object.keys(this.#Q).some((B)=>B.length>1&&B!==d0&&B!==l0))throw t1;if(X)return;q=this.#Q[Y]=new M$}q.insert(G,H,Q,J,X)}buildRegExpStr(){let H=Object.keys(this.#Q).sort(N3).map((Q)=>{let J=this.#Q[Q];return(typeof J.#$==="number"?`(${Q})@${J.#$}`:U3.has(Q)?`\\${Q}`:Q)+J.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 z8=class{#H={varIndex:0};#$=new M$;insert($,H,Q){let J=[],X=[];for(let G=0;;){let W=!1;if($=$.replace(/\{[^}]+\}/g,(q)=>{let B=`@\\${G}`;return X[G]=[B,q],G++,W=!0,B}),!W)break}let Y=$.match(/(?::[^\/]+)|(?:\/\*$)|./g)||[];for(let G=X.length-1;G>=0;G--){let[W]=X[G];for(let q=Y.length-1;q>=0;q--)if(Y[q].indexOf(W)!==-1){Y[q]=Y[q].replace(W,X[G][1]);break}}return this.#$.insert(Y,H,J,this.#H,Q),J}buildRegExp(){let $=this.#$.buildRegExpStr();if($==="")return[/^$/,[],[]];let H=0,Q=[],J=[];return $=$.replace(/#(\d+)|@(\d+)|\.\*\$/g,(X,Y,G)=>{if(Y!==void 0)return Q[++H]=Number(Y),"$()";if(G!==void 0)return J[Number(G)]=++H,"";return""}),[new RegExp(`^${$}`),Q,J]}};var _8=[],D3=[/^$/,[],Object.create(null)],U8=Object.create(null);function N8($){return U8[$]??=new RegExp($==="*"?"":`^${$.replace(/\/\*$|([.\\+*[^\]$()])/g,(H,Q)=>Q?`\\${Q}`:"(?:|/.*)")}$`)}function V3(){U8=Object.create(null)}function R3($){let H=new z8,Q=[];if($.length===0)return D3;let J=$.map((B)=>[!/\*|\/:/.test(B[0]),...B]).sort(([B,w],[z,N])=>B?1:z?-1:w.length-N.length),X=Object.create(null);for(let B=0,w=-1,z=J.length;B<z;B++){let[N,D,_]=J[B];if(N)X[D]=[_.map(([R])=>[R,Object.create(null)]),_8];else w++;let A;try{A=H.insert(D,w,N)}catch(R){throw R===t1?new F$(D):R}if(N)continue;Q[w]=_.map(([R,M])=>{let S=Object.create(null);M-=1;for(;M>=0;M--){let[O,T]=A[M];S[O]=T}return[R,S]})}let[Y,G,W]=H.buildRegExp();for(let B=0,w=Q.length;B<w;B++)for(let z=0,N=Q[B].length;z<N;z++){let D=Q[B][z]?.[1];if(!D)continue;let _=Object.keys(D);for(let A=0,R=_.length;A<R;A++)D[_[A]]=W[D[_[A]]]}let q=[];for(let B in G)q[B]=Q[G[B]];return[Y,q,X]}function N0($,H){if(!$)return;for(let Q of Object.keys($).sort((J,X)=>X.length-J.length))if(N8(Q).test(H))return[...$[Q]];return}var F2=class{name="RegExpRouter";#H;#$;constructor(){this.#H={[J1]:Object.create(null)},this.#$={[J1]:Object.create(null)}}add($,H,Q){let J=this.#H,X=this.#$;if(!J||!X)throw Error(A$);if(!J[$])[J,X].forEach((W)=>{W[$]=Object.create(null),Object.keys(W[J1]).forEach((q)=>{W[$][q]=[...W[J1][q]]})});if(H==="/*")H="*";let Y=(H.match(/\/:/g)||[]).length;if(/\*$/.test(H)){let W=N8(H);if($===J1)Object.keys(J).forEach((q)=>{J[q][H]||=N0(J[q],H)||N0(J[J1],H)||[]});else J[$][H]||=N0(J[$],H)||N0(J[J1],H)||[];Object.keys(J).forEach((q)=>{if($===J1||$===q)Object.keys(J[q]).forEach((B)=>{W.test(B)&&J[q][B].push([Q,Y])})}),Object.keys(X).forEach((q)=>{if($===J1||$===q)Object.keys(X[q]).forEach((B)=>W.test(B)&&X[q][B].push([Q,Y]))});return}let G=R$(H)||[H];for(let W=0,q=G.length;W<q;W++){let B=G[W];Object.keys(X).forEach((w)=>{if($===J1||$===w)X[w][B]||=[...N0(J[w],B)||N0(J[J1],B)||[]],X[w][B].push([Q,Y-q+W+1])})}}match($,H){V3();let Q=this.#Q();return this.match=(J,X)=>{let Y=Q[J]||Q[J1],G=Y[2][X];if(G)return G;let W=X.match(Y[0]);if(!W)return[[],_8];let q=W.indexOf("",1);return[Y[1][q],W]},this.match($,H)}#Q(){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=[],Q=$===J1;if([this.#H,this.#$].forEach((J)=>{let X=J[$]?Object.keys(J[$]).map((Y)=>[Y,J[$][Y]]):[];if(X.length!==0)Q||=!0,H.push(...X);else if($!==J1)H.push(...Object.keys(J[J1]).map((Y)=>[Y,J[J1][Y]]))}),!Q)return null;else return R3(H)}};var E2=class{name="SmartRouter";#H=[];#$=[];constructor($){this.#H=$.routers}add($,H,Q){if(!this.#$)throw Error(A$);this.#$.push([$,H,Q])}match($,H){if(!this.#$)throw Error("Fatal error");let Q=this.#H,J=this.#$,X=Q.length,Y=0,G;for(;Y<X;Y++){let W=Q[Y];try{for(let q=0,B=J.length;q<B;q++)W.add(...J[q]);G=W.match($,H)}catch(q){if(q instanceof F$)continue;throw q}this.match=W.match.bind(W),this.#H=[W],this.#$=void 0;break}if(Y===X)throw Error("Fatal error");return this.name=`SmartRouter + ${this.activeRouter.name}`,G}get activeRouter(){if(this.#$||this.#H.length!==1)throw Error("No active router has been determined yet.");return this.#H[0]}};var n0=Object.create(null),M2=class{#H;#$;#Q;#Y=0;#X=n0;constructor($,H,Q){if(this.#$=Q||Object.create(null),this.#H=[],$&&H){let J=Object.create(null);J[$]={handler:H,possibleKeys:[],score:0},this.#H=[J]}this.#Q=[]}insert($,H,Q){this.#Y=++this.#Y;let J=this,X=t9(H),Y=[];for(let G=0,W=X.length;G<W;G++){let q=X[G],B=X[G+1],w=e9(q,B),z=Array.isArray(w)?w[0]:q;if(z in J.#$){if(J=J.#$[z],w)Y.push(w[1]);continue}if(J.#$[z]=new M2,w)J.#Q.push(w),Y.push(w[1]);J=J.#$[z]}return J.#H.push({[$]:{handler:Q,possibleKeys:Y.filter((G,W,q)=>q.indexOf(G)===W),score:this.#Y}}),J}#J($,H,Q,J){let X=[];for(let Y=0,G=$.#H.length;Y<G;Y++){let W=$.#H[Y],q=W[H]||W[J1],B={};if(q!==void 0){if(q.params=Object.create(null),X.push(q),Q!==n0||J&&J!==n0)for(let w=0,z=q.possibleKeys.length;w<z;w++){let N=q.possibleKeys[w],D=B[q.score];q.params[N]=J?.[N]&&!D?J[N]:Q[N]??J?.[N],B[q.score]=!0}}}return X}search($,H){let Q=[];this.#X=n0;let X=[this],Y=N2(H),G=[];for(let W=0,q=Y.length;W<q;W++){let B=Y[W],w=W===q-1,z=[];for(let N=0,D=X.length;N<D;N++){let _=X[N],A=_.#$[B];if(A)if(A.#X=_.#X,w){if(A.#$["*"])Q.push(...this.#J(A.#$["*"],$,_.#X));Q.push(...this.#J(A,$,_.#X))}else z.push(A);for(let R=0,M=_.#Q.length;R<M;R++){let S=_.#Q[R],O=_.#X===n0?{}:{..._.#X};if(S==="*"){let v=_.#$["*"];if(v)Q.push(...this.#J(v,$,_.#X)),v.#X=O,z.push(v);continue}let[T,h,m]=S;if(!B&&!(m instanceof RegExp))continue;let c=_.#$[T],s=Y.slice(W).join("/");if(m instanceof RegExp){let v=m.exec(s);if(v){if(O[h]=v[0],Q.push(...this.#J(c,$,_.#X,O)),Object.keys(c.#$).length){c.#X=O;let t=v[0].match(/\//)?.length??0;(G[t]||=[]).push(c)}continue}}if(m===!0||m.test(B))if(O[h]=B,w){if(Q.push(...this.#J(c,$,O,_.#X)),c.#$["*"])Q.push(...this.#J(c.#$["*"],$,O,_.#X))}else c.#X=O,z.push(c)}}X=z.concat(G.shift()??[])}if(Q.length>1)Q.sort((W,q)=>{return W.score-q.score});return[Q.map(({handler:W,params:q})=>[W,q])]}};var j2=class{name="TrieRouter";#H;constructor(){this.#H=new M2}add($,H,Q){let J=R$(H);if(J){for(let X=0,Y=J.length;X<Y;X++)this.#H.insert($,J[X],Q);return}this.#H.insert($,H,Q)}match($,H){return this.#H.search($,H)}};var O2=class extends A2{constructor($={}){super($);this.router=$.router??new E2({routers:[new F2,new j2]})}};var UU=Q3(V8(),1),S2=Symbol("route:metadata"),L2=Symbol("controller:metadata"),R8=Symbol("parameter:metadata"),A8=Symbol("dependency:metadata"),f2=Symbol("websocket:metadata"),F8=Symbol("websocket:handler:metadata"),C2=Symbol("graphql:resolver"),i0=Symbol("graphql:field"),K2=Symbol("auth:metadata"),P2=Symbol("oauth:metadata"),T2=Symbol("roles:metadata"),b2=Symbol("permissions:metadata"),I2=Symbol("minimum-role:metadata"),Z2=Symbol("resource-permission:metadata"),h2=Symbol("session:metadata"),x2=Symbol("csrf:metadata");class y1{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 Q=this.getRouteKey($,H);return this.routes.get(Q)}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,Q){let J=this.getRouteMetadata($,H),X={...J,...Q,target:$.constructor,propertyKey:H,middleware:[...J?.middleware||[],...Q.middleware||[]],parameters:Q.parameters||J?.parameters||[],dependencies:Q.dependencies||J?.dependencies||[],responses:Q.responses||J?.responses||[],auth:Q.auth||J?.auth,oauth:Q.oauth||J?.oauth,roles:Q.roles||J?.roles,permissions:Q.permissions||J?.permissions,minimumRole:Q.minimumRole||J?.minimumRole,resourcePermission:Q.resourcePermission||J?.resourcePermission,session:Q.session||J?.session,csrf:Q.csrf||J?.csrf};Reflect.defineMetadata(S2,X,$,H)}static defineParameter($,H,Q,J){let X=this.getParameterMetadata($,H)||[];X[Q]=J,Reflect.defineMetadata(R8,X,$,H);let Y=this.getRouteMetadata($,H);this.defineRoute($,H,{...Y,parameters:X})}static defineDependency($,H,Q,J){let X=this.getDependencyMetadata($,H)||[];X[Q]=J,Reflect.defineMetadata(A8,X,$,H);let Y=this.getRouteMetadata($,H);this.defineRoute($,H,{...Y,dependencies:X})}static defineController($,H){Reflect.defineMetadata(L2,H,$)}static getRouteMetadata($,H){return Reflect.getMetadata(S2,$,H)}static getParameterMetadata($,H){return Reflect.getMetadata(R8,$,H)}static getDependencyMetadata($,H){return Reflect.getMetadata(A8,$,H)}static getControllerMetadata($){return Reflect.getMetadata(L2,$)}static hasControllerMetadata($){return Reflect.hasMetadata(L2,$)}static hasRouteMetadata($,H){return Reflect.hasMetadata(S2,$,H)}static getRouteMethods($){let H=$.prototype,Q=[],J=Object.getOwnPropertyNames(H);for(let X of J){if(X==="constructor")continue;if(this.hasRouteMetadata(H,X))Q.push(X)}return Q}static defineWebSocket($,H){let J={...this.getWebSocketMetadata($),...H,target:$};Reflect.defineMetadata(f2,J,$)}static defineWebSocketHandler($,H,Q){let J=this.getWebSocketMetadata($.constructor)||{};switch(Q.type){case"connect":J.onConnect=H;break;case"message":J.onMessage=H,J.messageSchema=Q.schema;break;case"disconnect":J.onDisconnect=H;break}this.defineWebSocket($.constructor,J),Reflect.defineMetadata(F8,Q,$,H)}static getWebSocketMetadata($){return Reflect.getMetadata(f2,$)}static getWebSocketHandlerMetadata($,H){return Reflect.getMetadata(F8,$,H)}static hasWebSocketMetadata($){return Reflect.hasMetadata(f2,$)}static defineGraphQLResolver($,H){Reflect.defineMetadata(C2,H,$)}static defineGraphQLField($,H,Q){Reflect.defineMetadata(i0,Q,$,H);let J=this.getGraphQLFieldsMetadata($.constructor)||[];J.push(Q),Reflect.defineMetadata(i0,J,$.constructor)}static getGraphQLResolverMetadata($){return Reflect.getMetadata(C2,$)}static getGraphQLFieldsMetadata($){return Reflect.getMetadata(i0,$)||[]}static getGraphQLFieldMetadata($,H){return Reflect.getMetadata(i0,$,H)}static hasGraphQLResolverMetadata($){return Reflect.hasMetadata(C2,$)}static hasGraphQLFieldMetadata($,H){return Reflect.hasMetadata(i0,$,H)}static defineAuth($,H,Q){Reflect.defineMetadata(K2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,auth:Q})}static getAuthMetadata($,H){return Reflect.getMetadata(K2,$,H)}static hasAuthMetadata($,H){return Reflect.hasMetadata(K2,$,H)}static defineOAuth($,H,Q){Reflect.defineMetadata(P2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,oauth:Q})}static getOAuthMetadata($,H){return Reflect.getMetadata(P2,$,H)}static hasOAuthMetadata($,H){return Reflect.hasMetadata(P2,$,H)}static defineRoles($,H,Q){Reflect.defineMetadata(T2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,roles:Q})}static definePermissions($,H,Q){Reflect.defineMetadata(b2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,permissions:Q})}static defineMinimumRole($,H,Q){Reflect.defineMetadata(I2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,minimumRole:Q})}static getRolesMetadata($,H){return Reflect.getMetadata(T2,$,H)}static getPermissionsMetadata($,H){return Reflect.getMetadata(b2,$,H)}static getMinimumRoleMetadata($,H){return Reflect.getMetadata(I2,$,H)}static hasRolesMetadata($,H){return Reflect.hasMetadata(T2,$,H)}static hasPermissionsMetadata($,H){return Reflect.hasMetadata(b2,$,H)}static hasMinimumRoleMetadata($,H){return Reflect.hasMetadata(I2,$,H)}static defineResourcePermission($,H,Q){Reflect.defineMetadata(Z2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,resourcePermission:Q})}static getResourcePermissionMetadata($,H){return Reflect.getMetadata(Z2,$,H)}static hasResourcePermissionMetadata($,H){return Reflect.hasMetadata(Z2,$,H)}static defineSession($,H,Q){Reflect.defineMetadata(h2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,session:Q})}static defineCSRF($,H,Q){Reflect.defineMetadata(x2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,csrf:Q})}static getSessionMetadata($,H){return Reflect.getMetadata(h2,$,H)}static getCSRFMetadata($,H){return Reflect.getMetadata(x2,$,H)}static hasSessionMetadata($,H){return Reflect.hasMetadata(h2,$,H)}static hasCSRFMetadata($,H){return Reflect.hasMetadata(x2,$,H)}}class k2{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 Q=this.providers.get($)||{scope:H?.scope||"transient"},J=H?.scope||Q.scope||"transient";if(J==="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($,Q,H?.context);return this.singletons.set($,X),X}finally{this.resolutionStack.delete($)}}if(J==="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($,Q,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($,Q,H?.context)}finally{this.resolutionStack.delete($)}}buildCircularDependencyMessage($){let H=Array.from(this.resolutionStack),Q=this.getProviderName($);return H.map((X)=>this.getProviderName(X)).join(" -> ")+" -> "+Q}async create($,H,Q){if(H.factory)return H.factory();if(typeof $==="function")if($.prototype&&$.prototype.constructor===$){let J=new $;return await this.resolveNestedDependencies(J,Q),J}else{let J=$();return J instanceof Promise?await J:J}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 Q;if(typeof $==="function")if($.name)Q=$.name;else Q=$.toString().substring(0,50);else Q=String($);if(typeof $==="object"||typeof $==="function")this.providerNameCache.set($,Q);return Q}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,Q=this.stats.requestHits+this.stats.requestMisses,J=Q>0?this.stats.requestHits/Q*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(J*100)/100,transientCreations:this.stats.transientCreations}}resetStats(){this.stats={singletonHits:0,singletonMisses:0,requestHits:0,requestMisses:0,transientCreations:0}}}var A3=/^[\w!#$%&'*.^`|~+-]+$/,F3=/^[ !#-:<-[\]-~]*$/,v2=($,H)=>{if(H&&$.indexOf(H)===-1)return{};let Q=$.trim().split(";"),J={};for(let X of Q){X=X.trim();let Y=X.indexOf("=");if(Y===-1)continue;let G=X.substring(0,Y).trim();if(H&&H!==G||!A3.test(G))continue;let W=X.substring(Y+1).trim();if(W.startsWith('"')&&W.endsWith('"'))W=W.slice(1,-1);if(F3.test(W)){if(J[G]=W.indexOf("%")!==-1?U0(W,m0):W,H)break}}return J};var E3=($,H,Q={})=>{let J=`${$}=${H}`;if($.startsWith("__Secure-")&&!Q.secure)throw Error("__Secure- Cookie must have Secure attributes");if($.startsWith("__Host-")){if(!Q.secure)throw Error("__Host- Cookie must have Secure attributes");if(Q.path!=="/")throw Error('__Host- Cookie must have Path attributes with "/"');if(Q.domain)throw Error("__Host- Cookie must not have Domain attributes")}if(Q&&typeof Q.maxAge==="number"&&Q.maxAge>=0){if(Q.maxAge>34560000)throw Error("Cookies Max-Age SHOULD NOT be greater than 400 days (34560000 seconds) in duration.");J+=`; Max-Age=${Q.maxAge|0}`}if(Q.domain&&Q.prefix!=="host")J+=`; Domain=${Q.domain}`;if(Q.path)J+=`; Path=${Q.path}`;if(Q.expires){if(Q.expires.getTime()-Date.now()>34560000000)throw Error("Cookies Expires SHOULD NOT be greater than 400 days (34560000 seconds) in the future.");J+=`; Expires=${Q.expires.toUTCString()}`}if(Q.httpOnly)J+="; HttpOnly";if(Q.secure)J+="; Secure";if(Q.sameSite)J+=`; SameSite=${Q.sameSite.charAt(0).toUpperCase()+Q.sameSite.slice(1)}`;if(Q.priority)J+=`; Priority=${Q.priority.charAt(0).toUpperCase()+Q.priority.slice(1)}`;if(Q.partitioned){if(!Q.secure)throw Error("Partitioned Cookie must have Secure attributes");J+="; Partitioned"}return J},j$=($,H,Q)=>{return H=encodeURIComponent(H),E3($,H,Q)};var E8=($,H,Q)=>{let J=$.req.raw.headers.get("Cookie");if(typeof H==="string"){if(!J)return;let Y=H;if(Q==="secure")Y="__Secure-"+H;else if(Q==="host")Y="__Host-"+H;return v2(J,Y)[Y]}if(!J)return{};return v2(J)};var M3=($,H,Q)=>{let J;if(Q?.prefix==="secure")J=j$("__Secure-"+$,H,{path:"/",...Q,secure:!0});else if(Q?.prefix==="host")J=j$("__Host-"+$,H,{...Q,path:"/",secure:!0,domain:void 0});else J=j$($,H,{path:"/",...Q});return J},MU=($,H,Q,J)=>{let X=M3(H,Q,J);$.header("Set-Cookie",X,{append:!0})};class M8{static json($,H=200,Q){return new g2($,H,Q)}static html($,H=200){return new y2($,H)}static file($,H){return new c2($,H)}static stream($,H){return new m2($,H)}static redirect($,H=302){return new u2($,H)}}class g2{data;status;headers;constructor($,H=200,Q={}){this.data=$;this.status=H;this.headers=Q}toHonoResponse($){return $.json(this.data,this.status,this.headers)}}class y2{content;status;constructor($,H=200){this.content=$;this.status=H}toHonoResponse($){return $.html(this.content,this.status)}}class u2{url;status;constructor($,H=302){this.url=$;this.status=H}toHonoResponse($){return $.redirect(this.url,this.status)}}class c2{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),J={"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";J["Content-Disposition"]=`${Y}; filename="${X}"`}if(typeof Bun<"u"&&H instanceof Blob)return $.body(H,200,J);else return $.body(H,200,J)}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 m2{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 d2{static serialize($,H){if(H===null||H===void 0)return $.body(null,204);if(H instanceof M8)return H;if(H instanceof g2)return H.toHonoResponse($);if(H instanceof y2)return H.toHonoResponse($);if(H instanceof c2)return H.toHonoResponse($);if(H instanceof m2)return H.toHonoResponse($);if(H instanceof u2)return H.toHonoResponse($);if(H&&typeof H.toHonoResponse==="function")return H.toHonoResponse($);return $.json(H)}}class l2{static compile($){let H=this.compilePathRegex($.path),Q=this.resolveParameterOrder($.parameters),J=this.resolveDependencyOrder($.dependencies),X=this.calculateMaxArgumentIndex($.parameters,$.dependencies),Y=this.computeParameterFlags($.parameters);return{...$,pathRegex:H,parameterOrder:Q,dependencyOrder:J,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,Q)=>H-Q)}static resolveDependencyOrder($){if(!$||$.length===0)return[];return $.map((H)=>H.index).filter((H)=>H!==void 0).sort((H,Q)=>H-Q)}static calculateMaxArgumentIndex($,H){let Q=-1;if($&&$.length>0){let J=Math.max(...$.map((X)=>X.index));Q=Math.max(Q,J)}if(H&&H.length>0){let J=Math.max(...H.map((X)=>X.index));Q=Math.max(Q,J)}return Q}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))}}p0();class t2{app;metadata;container;validator;errorHandler;compiledRoutes=new Map;constructor($,H,Q,J,X){this.app=$;this.metadata=H;this.container=Q;this.validator=J;this.errorHandler=X}compile(){let $=this.metadata.getRoutes(),H=l2.compileAll($);for(let Q of H){let J=`${Q.target.name}:${Q.propertyKey}`;this.compiledRoutes.set(J,Q);let X=this.createHandler(Q),Y=this.normalizePath(Q.path),G=Q.method.toLowerCase();if(Q.middleware&&Q.middleware.length>0)this.app[G](Y,...Q.middleware,X);else this.app[G](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 Q=$.cache,J=null,X=null;if(Q){let{CacheManager:w}=await Promise.resolve().then(() => (r2(),s2)),{parseTTL:z}=await Promise.resolve().then(() => p2);X=w;let N=H.req.param(),D=Q.includeQuery?H.req.query():void 0;J=w.generateKey($.method,$.path,N,D,Q);let _=await w.get(J,Q.store);if(_!==null)return H.header("X-Cache","HIT"),this.serializeResponse(H,_);H.header("X-Cache","MISS")}let Y=await this.extractParameters(H,$.parameters),G=await this.resolveDependencies(H,$.dependencies),W=this.mergeArguments(Y,G,$.parameters,$.maxArgumentIndex),q;if($.handler)q=await $.handler(H,...W);else{let w=await this.container.resolve($.target,{scope:"transient",context:H});if(typeof w[$.propertyKey]!=="function")throw Error(`Method ${$.propertyKey} not found on controller ${$.target.name}`);q=await w[$.propertyKey](...W)}if(Q&&J&&X){if(!Q.condition||Q.condition(q)){let{parseTTL:w}=await Promise.resolve().then(() => p2),z=w(Q.ttl);await X.set(J,q,z,Q.store)}}let B=$.cacheInvalidate;if(B&&Array.isArray(B)){if(!X){let{CacheManager:z}=await Promise.resolve().then(() => (r2(),s2));X=z}let w=H.req.param();for(let z of B){let N=z;if(w)for(let[D,_]of Object.entries(w))N=N.replace(`{${D}}`,String(_));await X.invalidate(N)}}return this.serializeResponse(H,q)}catch(Q){return await this.handleError(H,Q)}}}serializeResponse($,H){return d2.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 Q=[];for(let J of H){if(!J)continue;let X;switch(J.type){case"body":try{X=await $.req.json()}catch(B){X=null}break;case"query":if(J.name)X=$.req.query(J.name);else X=$.req.query();if(J.schema&&X!==void 0)try{X=J.schema.parse(X)}catch(B){throw new n2(`Invalid query parameter: ${B}`)}break;case"param":if(J.name)X=$.req.param(J.name);else X=$.req.param();break;case"header":if(J.name)X=$.req.header(J.name);else{let B={};$.req.raw.headers.forEach((w,z)=>{B[z]=w}),X=B}break;case"cookie":if(J.name)X=E8($,J.name);else{let B=$.req.header("cookie");if(B)X=Object.fromEntries(B.split(";").map((w)=>{let[z,...N]=w.trim().split("=");return[z,N.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 B=$.get("auth.error")||"Authentication required",{AuthenticationException:w}=await Promise.resolve().then(() => (C8(),f8));throw new w(B)}}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 G=$.get("session");if(G&&J.metadata?.key)X=G.data[J.metadata.key];else if(G)X=G.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:W}=await Promise.resolve().then(() => a2);X=W($);break;case"abort-signal":let{getAbortSignal:q}=await Promise.resolve().then(() => a2);X=q($);break;default:X=void 0}if(J.schema)try{X=await this.validator.validate(X,J.schema)}catch(Y){throw Y}Q[J.index]=X}return Q}mergeArguments($,H,Q,J){let Y=Q.filter((B)=>B!==void 0&&B.index!==void 0).map((B)=>B.index),G=Y.length>0?Math.max(...Y):-1,W=J!==void 0&&J>=0?J:Math.max(G,$.length-1,H.length-1,0);if(!Number.isFinite(W)||W<0)W=0;let q=Array(W+1);for(let B=0;B<=W;B++)if($[B]!==void 0)q[B]=$[B];else if(H[B]!==void 0)q[B]=H[B];return q}async resolveDependencies($,H){let Q=[];for(let J of H){if(!J)continue;try{let X=await this.container.resolve(J.provider,{scope:J.scope,context:$});Q[J.index]=X}catch(X){throw Error(`Failed to resolve dependency at index ${J.index}: ${X instanceof Error?X.message:"Unknown error"}`)}}return Q}}var c8={};r1(c8,{void:()=>MQ,util:()=>o,unknown:()=>FQ,union:()=>LQ,undefined:()=>VQ,tuple:()=>KQ,transformer:()=>gQ,symbol:()=>DQ,string:()=>g8,strictObject:()=>SQ,setErrorMap:()=>u3,set:()=>bQ,record:()=>PQ,quotelessJson:()=>g3,promise:()=>vQ,preprocess:()=>cQ,pipeline:()=>mQ,ostring:()=>dQ,optional:()=>yQ,onumber:()=>lQ,oboolean:()=>nQ,objectUtil:()=>e2,object:()=>OQ,number:()=>y8,nullable:()=>uQ,null:()=>RQ,never:()=>EQ,nativeEnum:()=>kQ,nan:()=>_Q,map:()=>TQ,makeIssue:()=>s0,literal:()=>hQ,lazy:()=>ZQ,late:()=>wQ,isValid:()=>c1,isDirty:()=>S$,isAsync:()=>V0,isAborted:()=>O$,intersection:()=>CQ,instanceof:()=>zQ,getParsedType:()=>C1,getErrorMap:()=>D0,function:()=>IQ,enum:()=>xQ,effect:()=>gQ,discriminatedUnion:()=>fQ,defaultErrorMap:()=>x1,datetimeRegex:()=>x8,date:()=>NQ,custom:()=>v8,coerce:()=>iQ,boolean:()=>u8,bigint:()=>UQ,array:()=>jQ,any:()=>AQ,addIssueToContext:()=>K,ZodVoid:()=>a0,ZodUnknown:()=>m1,ZodUnion:()=>j0,ZodUndefined:()=>E0,ZodType:()=>i,ZodTuple:()=>P1,ZodTransformer:()=>j1,ZodSymbol:()=>r0,ZodString:()=>A1,ZodSet:()=>J0,ZodSchema:()=>i,ZodRecord:()=>t0,ZodReadonly:()=>P0,ZodPromise:()=>X0,ZodPipeline:()=>H$,ZodParsedType:()=>L,ZodOptional:()=>E1,ZodObject:()=>Q1,ZodNumber:()=>d1,ZodNullable:()=>v1,ZodNull:()=>M0,ZodNever:()=>K1,ZodNativeEnum:()=>f0,ZodNaN:()=>$$,ZodMap:()=>e0,ZodLiteral:()=>L0,ZodLazy:()=>S0,ZodIssueCode:()=>j,ZodIntersection:()=>O0,ZodFunction:()=>A0,ZodFirstPartyTypeKind:()=>u,ZodError:()=>z1,ZodEnum:()=>n1,ZodEffects:()=>j1,ZodDiscriminatedUnion:()=>L$,ZodDefault:()=>C0,ZodDate:()=>H0,ZodCatch:()=>K0,ZodBranded:()=>f$,ZodBoolean:()=>F0,ZodBigInt:()=>l1,ZodArray:()=>F1,ZodAny:()=>Q0,Schema:()=>i,ParseStatus:()=>_1,OK:()=>U1,NEVER:()=>pQ,INVALID:()=>y,EMPTY_PATH:()=>c3,DIRTY:()=>$0,BRAND:()=>BQ});var o;(function($){$.assertEqual=(X)=>{};function H(X){}$.assertIs=H;function Q(X){throw Error()}$.assertNever=Q,$.arrayToEnum=(X)=>{let Y={};for(let G of X)Y[G]=G;return Y},$.getValidEnumValues=(X)=>{let Y=$.objectKeys(X).filter((W)=>typeof X[X[W]]!=="number"),G={};for(let W of Y)G[W]=X[W];return $.objectValues(G)},$.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 G in X)if(Object.prototype.hasOwnProperty.call(X,G))Y.push(G);return Y},$.find=(X,Y)=>{for(let G of X)if(Y(G))return G;return},$.isInteger=typeof Number.isInteger==="function"?(X)=>Number.isInteger(X):(X)=>typeof X==="number"&&Number.isFinite(X)&&Math.floor(X)===X;function J(X,Y=" | "){return X.map((G)=>typeof G==="string"?`'${G}'`:G).join(Y)}$.joinValues=J,$.jsonStringifyReplacer=(X,Y)=>{if(typeof Y==="bigint")return Y.toString();return Y}})(o||(o={}));var e2;(function($){$.mergeShapes=(H,Q)=>{return{...H,...Q}}})(e2||(e2={}));var L=o.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),C1=($)=>{switch(typeof $){case"undefined":return L.undefined;case"string":return L.string;case"number":return Number.isNaN($)?L.nan:L.number;case"boolean":return L.boolean;case"function":return L.function;case"bigint":return L.bigint;case"symbol":return L.symbol;case"object":if(Array.isArray($))return L.array;if($===null)return L.null;if($.then&&typeof $.then==="function"&&$.catch&&typeof $.catch==="function")return L.promise;if(typeof Map<"u"&&$ instanceof Map)return L.map;if(typeof Set<"u"&&$ instanceof Set)return L.set;if(typeof Date<"u"&&$ instanceof Date)return L.date;return L.object;default:return L.unknown}};var j=o.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"]),g3=($)=>{return JSON.stringify($,null,2).replace(/"([^"]+)":/g,"$1:")};class z1 extends Error{get errors(){return this.issues}constructor($){super();this.issues=[],this.addIssue=(Q)=>{this.issues=[...this.issues,Q]},this.addIssues=(Q=[])=>{this.issues=[...this.issues,...Q]};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},Q={_errors:[]},J=(X)=>{for(let Y of X.issues)if(Y.code==="invalid_union")Y.unionErrors.map(J);else if(Y.code==="invalid_return_type")J(Y.returnTypeError);else if(Y.code==="invalid_arguments")J(Y.argumentsError);else if(Y.path.length===0)Q._errors.push(H(Y));else{let G=Q,W=0;while(W<Y.path.length){let q=Y.path[W];if(W!==Y.path.length-1)G[q]=G[q]||{_errors:[]};else G[q]=G[q]||{_errors:[]},G[q]._errors.push(H(Y));G=G[q],W++}}};return J(this),Q}static assert($){if(!($ instanceof z1))throw Error(`Not a ZodError: ${$}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,o.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten($=(H)=>H.message){let H={},Q=[];for(let J of this.issues)if(J.path.length>0){let X=J.path[0];H[X]=H[X]||[],H[X].push($(J))}else Q.push($(J));return{formErrors:Q,fieldErrors:H}}get formErrors(){return this.flatten()}}z1.create=($)=>{return new z1($)};var y3=($,H)=>{let Q;switch($.code){case j.invalid_type:if($.received===L.undefined)Q="Required";else Q=`Expected ${$.expected}, received ${$.received}`;break;case j.invalid_literal:Q=`Invalid literal value, expected ${JSON.stringify($.expected,o.jsonStringifyReplacer)}`;break;case j.unrecognized_keys:Q=`Unrecognized key(s) in object: ${o.joinValues($.keys,", ")}`;break;case j.invalid_union:Q="Invalid input";break;case j.invalid_union_discriminator:Q=`Invalid discriminator value. Expected ${o.joinValues($.options)}`;break;case j.invalid_enum_value:Q=`Invalid enum value. Expected ${o.joinValues($.options)}, received '${$.received}'`;break;case j.invalid_arguments:Q="Invalid function arguments";break;case j.invalid_return_type:Q="Invalid function return type";break;case j.invalid_date:Q="Invalid date";break;case j.invalid_string:if(typeof $.validation==="object")if("includes"in $.validation){if(Q=`Invalid input: must include "${$.validation.includes}"`,typeof $.validation.position==="number")Q=`${Q} at one or more positions greater than or equal to ${$.validation.position}`}else if("startsWith"in $.validation)Q=`Invalid input: must start with "${$.validation.startsWith}"`;else if("endsWith"in $.validation)Q=`Invalid input: must end with "${$.validation.endsWith}"`;else o.assertNever($.validation);else if($.validation!=="regex")Q=`Invalid ${$.validation}`;else Q="Invalid";break;case j.too_small:if($.type==="array")Q=`Array must contain ${$.exact?"exactly":$.inclusive?"at least":"more than"} ${$.minimum} element(s)`;else if($.type==="string")Q=`String must contain ${$.exact?"exactly":$.inclusive?"at least":"over"} ${$.minimum} character(s)`;else if($.type==="number")Q=`Number must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${$.minimum}`;else if($.type==="bigint")Q=`Number must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${$.minimum}`;else if($.type==="date")Q=`Date must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${new Date(Number($.minimum))}`;else Q="Invalid input";break;case j.too_big:if($.type==="array")Q=`Array must contain ${$.exact?"exactly":$.inclusive?"at most":"less than"} ${$.maximum} element(s)`;else if($.type==="string")Q=`String must contain ${$.exact?"exactly":$.inclusive?"at most":"under"} ${$.maximum} character(s)`;else if($.type==="number")Q=`Number must be ${$.exact?"exactly":$.inclusive?"less than or equal to":"less than"} ${$.maximum}`;else if($.type==="bigint")Q=`BigInt must be ${$.exact?"exactly":$.inclusive?"less than or equal to":"less than"} ${$.maximum}`;else if($.type==="date")Q=`Date must be ${$.exact?"exactly":$.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number($.maximum))}`;else Q="Invalid input";break;case j.custom:Q="Invalid input";break;case j.invalid_intersection_types:Q="Intersection results could not be merged";break;case j.not_multiple_of:Q=`Number must be a multiple of ${$.multipleOf}`;break;case j.not_finite:Q="Number must be finite";break;default:Q=H.defaultError,o.assertNever($)}return{message:Q}},x1=y3;var T8=x1;function u3($){T8=$}function D0(){return T8}var s0=($)=>{let{data:H,path:Q,errorMaps:J,issueData:X}=$,Y=[...Q,...X.path||[]],G={...X,path:Y};if(X.message!==void 0)return{...X,path:Y,message:X.message};let W="",q=J.filter((B)=>!!B).slice().reverse();for(let B of q)W=B(G,{data:H,defaultError:W}).message;return{...X,path:Y,message:W}},c3=[];function K($,H){let Q=D0(),J=s0({issueData:H,data:$.data,path:$.path,errorMaps:[$.common.contextualErrorMap,$.schemaErrorMap,Q,Q===x1?void 0:x1].filter((X)=>!!X)});$.common.issues.push(J)}class _1{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray($,H){let Q=[];for(let J of H){if(J.status==="aborted")return y;if(J.status==="dirty")$.dirty();Q.push(J.value)}return{status:$.value,value:Q}}static async mergeObjectAsync($,H){let Q=[];for(let J of H){let X=await J.key,Y=await J.value;Q.push({key:X,value:Y})}return _1.mergeObjectSync($,Q)}static mergeObjectSync($,H){let Q={};for(let J of H){let{key:X,value:Y}=J;if(X.status==="aborted")return y;if(Y.status==="aborted")return y;if(X.status==="dirty")$.dirty();if(Y.status==="dirty")$.dirty();if(X.value!=="__proto__"&&(typeof Y.value<"u"||J.alwaysSet))Q[X.value]=Y.value}return{status:$.value,value:Q}}}var y=Object.freeze({status:"aborted"}),$0=($)=>({status:"dirty",value:$}),U1=($)=>({status:"valid",value:$}),O$=($)=>$.status==="aborted",S$=($)=>$.status==="dirty",c1=($)=>$.status==="valid",V0=($)=>typeof Promise<"u"&&$ instanceof Promise;var x;(function($){$.errToObj=(H)=>typeof H==="string"?{message:H}:H||{},$.toString=(H)=>typeof H==="string"?H:H?.message})(x||(x={}));class M1{constructor($,H,Q,J){this._cachedPath=[],this.parent=$,this.data=H,this._path=Q,this._key=J}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 b8=($,H)=>{if(c1(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 Q=new z1($.common.issues);return this._error=Q,this._error}}}};function l($){if(!$)return{};let{errorMap:H,invalid_type_error:Q,required_error:J,description:X}=$;if(H&&(Q||J))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:(G,W)=>{let{message:q}=$;if(G.code==="invalid_enum_value")return{message:q??W.defaultError};if(typeof W.data>"u")return{message:q??J??W.defaultError};if(G.code!=="invalid_type")return{message:W.defaultError};return{message:q??Q??W.defaultError}},description:X}}class i{get description(){return this._def.description}_getType($){return C1($.data)}_getOrReturnCtx($,H){return H||{common:$.parent.common,data:$.data,parsedType:C1($.data),schemaErrorMap:this._def.errorMap,path:$.path,parent:$.parent}}_processInputParams($){return{status:new _1,ctx:{common:$.parent.common,data:$.data,parsedType:C1($.data),schemaErrorMap:this._def.errorMap,path:$.path,parent:$.parent}}}_parseSync($){let H=this._parse($);if(V0(H))throw Error("Synchronous parse encountered promise.");return H}_parseAsync($){let H=this._parse($);return Promise.resolve(H)}parse($,H){let Q=this.safeParse($,H);if(Q.success)return Q.data;throw Q.error}safeParse($,H){let Q={common:{issues:[],async:H?.async??!1,contextualErrorMap:H?.errorMap},path:H?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:C1($)},J=this._parseSync({data:$,path:Q.path,parent:Q});return b8(Q,J)}"~validate"($){let H={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:C1($)};if(!this["~standard"].async)try{let Q=this._parseSync({data:$,path:[],parent:H});return c1(Q)?{value:Q.value}:{issues:H.common.issues}}catch(Q){if(Q?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;H.common={issues:[],async:!0}}return this._parseAsync({data:$,path:[],parent:H}).then((Q)=>c1(Q)?{value:Q.value}:{issues:H.common.issues})}async parseAsync($,H){let Q=await this.safeParseAsync($,H);if(Q.success)return Q.data;throw Q.error}async safeParseAsync($,H){let Q={common:{issues:[],contextualErrorMap:H?.errorMap,async:!0},path:H?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:C1($)},J=this._parse({data:$,path:Q.path,parent:Q}),X=await(V0(J)?J:Promise.resolve(J));return b8(Q,X)}refine($,H){let Q=(J)=>{if(typeof H==="string"||typeof H>"u")return{message:H};else if(typeof H==="function")return H(J);else return H};return this._refinement((J,X)=>{let Y=$(J),G=()=>X.addIssue({code:j.custom,...Q(J)});if(typeof Promise<"u"&&Y instanceof Promise)return Y.then((W)=>{if(!W)return G(),!1;else return!0});if(!Y)return G(),!1;else return!0})}refinement($,H){return this._refinement((Q,J)=>{if(!$(Q))return J.addIssue(typeof H==="function"?H(Q,J):H),!1;else return!0})}_refinement($){return new j1({schema:this,typeName:u.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 E1.create(this,this._def)}nullable(){return v1.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return F1.create(this)}promise(){return X0.create(this,this._def)}or($){return j0.create([this,$],this._def)}and($){return O0.create(this,$,this._def)}transform($){return new j1({...l(this._def),schema:this,typeName:u.ZodEffects,effect:{type:"transform",transform:$}})}default($){let H=typeof $==="function"?$:()=>$;return new C0({...l(this._def),innerType:this,defaultValue:H,typeName:u.ZodDefault})}brand(){return new f$({typeName:u.ZodBranded,type:this,...l(this._def)})}catch($){let H=typeof $==="function"?$:()=>$;return new K0({...l(this._def),innerType:this,catchValue:H,typeName:u.ZodCatch})}describe($){return new this.constructor({...this._def,description:$})}pipe($){return H$.create(this,$)}readonly(){return P0.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var m3=/^c[^\s-]{8,}$/i,d3=/^[0-9a-z]+$/,l3=/^[0-9A-HJKMNP-TV-Z]{26}$/i,n3=/^[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,i3=/^[a-z0-9_-]{21}$/i,p3=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,o3=/^[-+]?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)?)??$/,s3=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,r3="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",$4,a3=/^(?:(?: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])$/,t3=/^(?:(?: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])$/,e3=/^(([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]))$/,$Q=/^(([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])$/,HQ=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,QQ=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Z8="((\\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])))",JQ=new RegExp(`^${Z8}$`);function h8($){let H="[0-5]\\d";if($.precision)H=`${H}\\.\\d{${$.precision}}`;else if($.precision==null)H=`${H}(\\.\\d+)?`;let Q=$.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${H})${Q}`}function XQ($){return new RegExp(`^${h8($)}$`)}function x8($){let H=`${Z8}T${h8($)}`,Q=[];if(Q.push($.local?"Z?":"Z"),$.offset)Q.push("([+-]\\d{2}:?\\d{2})");return H=`${H}(${Q.join("|")})`,new RegExp(`^${H}$`)}function YQ($,H){if((H==="v4"||!H)&&a3.test($))return!0;if((H==="v6"||!H)&&e3.test($))return!0;return!1}function GQ($,H){if(!p3.test($))return!1;try{let[Q]=$.split(".");if(!Q)return!1;let J=Q.replace(/-/g,"+").replace(/_/g,"/").padEnd(Q.length+(4-Q.length%4)%4,"="),X=JSON.parse(atob(J));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 WQ($,H){if((H==="v4"||!H)&&t3.test($))return!0;if((H==="v6"||!H)&&$Q.test($))return!0;return!1}class A1 extends i{_parse($){if(this._def.coerce)$.data=String($.data);if(this._getType($)!==L.string){let X=this._getOrReturnCtx($);return K(X,{code:j.invalid_type,expected:L.string,received:X.parsedType}),y}let Q=new _1,J=void 0;for(let X of this._def.checks)if(X.kind==="min"){if($.data.length<X.value)J=this._getOrReturnCtx($,J),K(J,{code:j.too_small,minimum:X.value,type:"string",inclusive:!0,exact:!1,message:X.message}),Q.dirty()}else if(X.kind==="max"){if($.data.length>X.value)J=this._getOrReturnCtx($,J),K(J,{code:j.too_big,maximum:X.value,type:"string",inclusive:!0,exact:!1,message:X.message}),Q.dirty()}else if(X.kind==="length"){let Y=$.data.length>X.value,G=$.data.length<X.value;if(Y||G){if(J=this._getOrReturnCtx($,J),Y)K(J,{code:j.too_big,maximum:X.value,type:"string",inclusive:!0,exact:!0,message:X.message});else if(G)K(J,{code:j.too_small,minimum:X.value,type:"string",inclusive:!0,exact:!0,message:X.message});Q.dirty()}}else if(X.kind==="email"){if(!s3.test($.data))J=this._getOrReturnCtx($,J),K(J,{validation:"email",code:j.invalid_string,message:X.message}),Q.dirty()}else if(X.kind==="emoji"){if(!$4)$4=new RegExp(r3,"u");if(!$4.test($.data))J=this._getOrReturnCtx($,J),K(J,{validation:"emoji",code:j.invalid_string,message:X.message}),Q.dirty()}else if(X.kind==="uuid"){if(!n3.test($.data))J=this._getOrReturnCtx($,J),K(J,{validation:"uuid",code:j.invalid_string,message:X.message}),Q.dirty()}else if(X.kind==="nanoid"){if(!i3.test($.data))J=this._getOrReturnCtx($,J),K(J,{validation:"nanoid",code:j.invalid_string,message:X.message}),Q.dirty()}else if(X.kind==="cuid"){if(!m3.test($.data))J=this._getOrReturnCtx($,J),K(J,{validation:"cuid",code:j.invalid_string,message:X.message}),Q.dirty()}else if(X.kind==="cuid2"){if(!d3.test($.data))J=this._getOrReturnCtx($,J),K(J,{validation:"cuid2",code:j.invalid_string,message:X.message}),Q.dirty()}else if(X.kind==="ulid"){if(!l3.test($.data))J=this._getOrReturnCtx($,J),K(J,{validation:"ulid",code:j.invalid_string,message:X.message}),Q.dirty()}else if(X.kind==="url")try{new URL($.data)}catch{J=this._getOrReturnCtx($,J),K(J,{validation:"url",code:j.invalid_string,message:X.message}),Q.dirty()}else if(X.kind==="regex"){if(X.regex.lastIndex=0,!X.regex.test($.data))J=this._getOrReturnCtx($,J),K(J,{validation:"regex",code:j.invalid_string,message:X.message}),Q.dirty()}else if(X.kind==="trim")$.data=$.data.trim();else if(X.kind==="includes"){if(!$.data.includes(X.value,X.position))J=this._getOrReturnCtx($,J),K(J,{code:j.invalid_string,validation:{includes:X.value,position:X.position},message:X.message}),Q.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))J=this._getOrReturnCtx($,J),K(J,{code:j.invalid_string,validation:{startsWith:X.value},message:X.message}),Q.dirty()}else if(X.kind==="endsWith"){if(!$.data.endsWith(X.value))J=this._getOrReturnCtx($,J),K(J,{code:j.invalid_string,validation:{endsWith:X.value},message:X.message}),Q.dirty()}else if(X.kind==="datetime"){if(!x8(X).test($.data))J=this._getOrReturnCtx($,J),K(J,{code:j.invalid_string,validation:"datetime",message:X.message}),Q.dirty()}else if(X.kind==="date"){if(!JQ.test($.data))J=this._getOrReturnCtx($,J),K(J,{code:j.invalid_string,validation:"date",message:X.message}),Q.dirty()}else if(X.kind==="time"){if(!XQ(X).test($.data))J=this._getOrReturnCtx($,J),K(J,{code:j.invalid_string,validation:"time",message:X.message}),Q.dirty()}else if(X.kind==="duration"){if(!o3.test($.data))J=this._getOrReturnCtx($,J),K(J,{validation:"duration",code:j.invalid_string,message:X.message}),Q.dirty()}else if(X.kind==="ip"){if(!YQ($.data,X.version))J=this._getOrReturnCtx($,J),K(J,{validation:"ip",code:j.invalid_string,message:X.message}),Q.dirty()}else if(X.kind==="jwt"){if(!GQ($.data,X.alg))J=this._getOrReturnCtx($,J),K(J,{validation:"jwt",code:j.invalid_string,message:X.message}),Q.dirty()}else if(X.kind==="cidr"){if(!WQ($.data,X.version))J=this._getOrReturnCtx($,J),K(J,{validation:"cidr",code:j.invalid_string,message:X.message}),Q.dirty()}else if(X.kind==="base64"){if(!HQ.test($.data))J=this._getOrReturnCtx($,J),K(J,{validation:"base64",code:j.invalid_string,message:X.message}),Q.dirty()}else if(X.kind==="base64url"){if(!QQ.test($.data))J=this._getOrReturnCtx($,J),K(J,{validation:"base64url",code:j.invalid_string,message:X.message}),Q.dirty()}else o.assertNever(X);return{status:Q.value,value:$.data}}_regex($,H,Q){return this.refinement((J)=>$.test(J),{validation:H,code:j.invalid_string,...x.errToObj(Q)})}_addCheck($){return new A1({...this._def,checks:[...this._def.checks,$]})}email($){return this._addCheck({kind:"email",...x.errToObj($)})}url($){return this._addCheck({kind:"url",...x.errToObj($)})}emoji($){return this._addCheck({kind:"emoji",...x.errToObj($)})}uuid($){return this._addCheck({kind:"uuid",...x.errToObj($)})}nanoid($){return this._addCheck({kind:"nanoid",...x.errToObj($)})}cuid($){return this._addCheck({kind:"cuid",...x.errToObj($)})}cuid2($){return this._addCheck({kind:"cuid2",...x.errToObj($)})}ulid($){return this._addCheck({kind:"ulid",...x.errToObj($)})}base64($){return this._addCheck({kind:"base64",...x.errToObj($)})}base64url($){return this._addCheck({kind:"base64url",...x.errToObj($)})}jwt($){return this._addCheck({kind:"jwt",...x.errToObj($)})}ip($){return this._addCheck({kind:"ip",...x.errToObj($)})}cidr($){return this._addCheck({kind:"cidr",...x.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,...x.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,...x.errToObj($?.message)})}duration($){return this._addCheck({kind:"duration",...x.errToObj($)})}regex($,H){return this._addCheck({kind:"regex",regex:$,...x.errToObj(H)})}includes($,H){return this._addCheck({kind:"includes",value:$,position:H?.position,...x.errToObj(H?.message)})}startsWith($,H){return this._addCheck({kind:"startsWith",value:$,...x.errToObj(H)})}endsWith($,H){return this._addCheck({kind:"endsWith",value:$,...x.errToObj(H)})}min($,H){return this._addCheck({kind:"min",value:$,...x.errToObj(H)})}max($,H){return this._addCheck({kind:"max",value:$,...x.errToObj(H)})}length($,H){return this._addCheck({kind:"length",value:$,...x.errToObj(H)})}nonempty($){return this.min(1,x.errToObj($))}trim(){return new A1({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new A1({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new A1({...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 $}}A1.create=($)=>{return new A1({checks:[],typeName:u.ZodString,coerce:$?.coerce??!1,...l($)})};function qQ($,H){let Q=($.toString().split(".")[1]||"").length,J=(H.toString().split(".")[1]||"").length,X=Q>J?Q:J,Y=Number.parseInt($.toFixed(X).replace(".","")),G=Number.parseInt(H.toFixed(X).replace(".",""));return Y%G/10**X}class d1 extends i{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($)!==L.number){let X=this._getOrReturnCtx($);return K(X,{code:j.invalid_type,expected:L.number,received:X.parsedType}),y}let Q=void 0,J=new _1;for(let X of this._def.checks)if(X.kind==="int"){if(!o.isInteger($.data))Q=this._getOrReturnCtx($,Q),K(Q,{code:j.invalid_type,expected:"integer",received:"float",message:X.message}),J.dirty()}else if(X.kind==="min"){if(X.inclusive?$.data<X.value:$.data<=X.value)Q=this._getOrReturnCtx($,Q),K(Q,{code:j.too_small,minimum:X.value,type:"number",inclusive:X.inclusive,exact:!1,message:X.message}),J.dirty()}else if(X.kind==="max"){if(X.inclusive?$.data>X.value:$.data>=X.value)Q=this._getOrReturnCtx($,Q),K(Q,{code:j.too_big,maximum:X.value,type:"number",inclusive:X.inclusive,exact:!1,message:X.message}),J.dirty()}else if(X.kind==="multipleOf"){if(qQ($.data,X.value)!==0)Q=this._getOrReturnCtx($,Q),K(Q,{code:j.not_multiple_of,multipleOf:X.value,message:X.message}),J.dirty()}else if(X.kind==="finite"){if(!Number.isFinite($.data))Q=this._getOrReturnCtx($,Q),K(Q,{code:j.not_finite,message:X.message}),J.dirty()}else o.assertNever(X);return{status:J.value,value:$.data}}gte($,H){return this.setLimit("min",$,!0,x.toString(H))}gt($,H){return this.setLimit("min",$,!1,x.toString(H))}lte($,H){return this.setLimit("max",$,!0,x.toString(H))}lt($,H){return this.setLimit("max",$,!1,x.toString(H))}setLimit($,H,Q,J){return new d1({...this._def,checks:[...this._def.checks,{kind:$,value:H,inclusive:Q,message:x.toString(J)}]})}_addCheck($){return new d1({...this._def,checks:[...this._def.checks,$]})}int($){return this._addCheck({kind:"int",message:x.toString($)})}positive($){return this._addCheck({kind:"min",value:0,inclusive:!1,message:x.toString($)})}negative($){return this._addCheck({kind:"max",value:0,inclusive:!1,message:x.toString($)})}nonpositive($){return this._addCheck({kind:"max",value:0,inclusive:!0,message:x.toString($)})}nonnegative($){return this._addCheck({kind:"min",value:0,inclusive:!0,message:x.toString($)})}multipleOf($,H){return this._addCheck({kind:"multipleOf",value:$,message:x.toString(H)})}finite($){return this._addCheck({kind:"finite",message:x.toString($)})}safe($){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:x.toString($)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:x.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"&&o.isInteger($.value))}get isFinite(){let $=null,H=null;for(let Q of this._def.checks)if(Q.kind==="finite"||Q.kind==="int"||Q.kind==="multipleOf")return!0;else if(Q.kind==="min"){if(H===null||Q.value>H)H=Q.value}else if(Q.kind==="max"){if($===null||Q.value<$)$=Q.value}return Number.isFinite(H)&&Number.isFinite($)}}d1.create=($)=>{return new d1({checks:[],typeName:u.ZodNumber,coerce:$?.coerce||!1,...l($)})};class l1 extends i{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($)!==L.bigint)return this._getInvalidInput($);let Q=void 0,J=new _1;for(let X of this._def.checks)if(X.kind==="min"){if(X.inclusive?$.data<X.value:$.data<=X.value)Q=this._getOrReturnCtx($,Q),K(Q,{code:j.too_small,type:"bigint",minimum:X.value,inclusive:X.inclusive,message:X.message}),J.dirty()}else if(X.kind==="max"){if(X.inclusive?$.data>X.value:$.data>=X.value)Q=this._getOrReturnCtx($,Q),K(Q,{code:j.too_big,type:"bigint",maximum:X.value,inclusive:X.inclusive,message:X.message}),J.dirty()}else if(X.kind==="multipleOf"){if($.data%X.value!==BigInt(0))Q=this._getOrReturnCtx($,Q),K(Q,{code:j.not_multiple_of,multipleOf:X.value,message:X.message}),J.dirty()}else o.assertNever(X);return{status:J.value,value:$.data}}_getInvalidInput($){let H=this._getOrReturnCtx($);return K(H,{code:j.invalid_type,expected:L.bigint,received:H.parsedType}),y}gte($,H){return this.setLimit("min",$,!0,x.toString(H))}gt($,H){return this.setLimit("min",$,!1,x.toString(H))}lte($,H){return this.setLimit("max",$,!0,x.toString(H))}lt($,H){return this.setLimit("max",$,!1,x.toString(H))}setLimit($,H,Q,J){return new l1({...this._def,checks:[...this._def.checks,{kind:$,value:H,inclusive:Q,message:x.toString(J)}]})}_addCheck($){return new l1({...this._def,checks:[...this._def.checks,$]})}positive($){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:x.toString($)})}negative($){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:x.toString($)})}nonpositive($){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:x.toString($)})}nonnegative($){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:x.toString($)})}multipleOf($,H){return this._addCheck({kind:"multipleOf",value:$,message:x.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 $}}l1.create=($)=>{return new l1({checks:[],typeName:u.ZodBigInt,coerce:$?.coerce??!1,...l($)})};class F0 extends i{_parse($){if(this._def.coerce)$.data=Boolean($.data);if(this._getType($)!==L.boolean){let Q=this._getOrReturnCtx($);return K(Q,{code:j.invalid_type,expected:L.boolean,received:Q.parsedType}),y}return U1($.data)}}F0.create=($)=>{return new F0({typeName:u.ZodBoolean,coerce:$?.coerce||!1,...l($)})};class H0 extends i{_parse($){if(this._def.coerce)$.data=new Date($.data);if(this._getType($)!==L.date){let X=this._getOrReturnCtx($);return K(X,{code:j.invalid_type,expected:L.date,received:X.parsedType}),y}if(Number.isNaN($.data.getTime())){let X=this._getOrReturnCtx($);return K(X,{code:j.invalid_date}),y}let Q=new _1,J=void 0;for(let X of this._def.checks)if(X.kind==="min"){if($.data.getTime()<X.value)J=this._getOrReturnCtx($,J),K(J,{code:j.too_small,message:X.message,inclusive:!0,exact:!1,minimum:X.value,type:"date"}),Q.dirty()}else if(X.kind==="max"){if($.data.getTime()>X.value)J=this._getOrReturnCtx($,J),K(J,{code:j.too_big,message:X.message,inclusive:!0,exact:!1,maximum:X.value,type:"date"}),Q.dirty()}else o.assertNever(X);return{status:Q.value,value:new Date($.data.getTime())}}_addCheck($){return new H0({...this._def,checks:[...this._def.checks,$]})}min($,H){return this._addCheck({kind:"min",value:$.getTime(),message:x.toString(H)})}max($,H){return this._addCheck({kind:"max",value:$.getTime(),message:x.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}}H0.create=($)=>{return new H0({checks:[],coerce:$?.coerce||!1,typeName:u.ZodDate,...l($)})};class r0 extends i{_parse($){if(this._getType($)!==L.symbol){let Q=this._getOrReturnCtx($);return K(Q,{code:j.invalid_type,expected:L.symbol,received:Q.parsedType}),y}return U1($.data)}}r0.create=($)=>{return new r0({typeName:u.ZodSymbol,...l($)})};class E0 extends i{_parse($){if(this._getType($)!==L.undefined){let Q=this._getOrReturnCtx($);return K(Q,{code:j.invalid_type,expected:L.undefined,received:Q.parsedType}),y}return U1($.data)}}E0.create=($)=>{return new E0({typeName:u.ZodUndefined,...l($)})};class M0 extends i{_parse($){if(this._getType($)!==L.null){let Q=this._getOrReturnCtx($);return K(Q,{code:j.invalid_type,expected:L.null,received:Q.parsedType}),y}return U1($.data)}}M0.create=($)=>{return new M0({typeName:u.ZodNull,...l($)})};class Q0 extends i{constructor(){super(...arguments);this._any=!0}_parse($){return U1($.data)}}Q0.create=($)=>{return new Q0({typeName:u.ZodAny,...l($)})};class m1 extends i{constructor(){super(...arguments);this._unknown=!0}_parse($){return U1($.data)}}m1.create=($)=>{return new m1({typeName:u.ZodUnknown,...l($)})};class K1 extends i{_parse($){let H=this._getOrReturnCtx($);return K(H,{code:j.invalid_type,expected:L.never,received:H.parsedType}),y}}K1.create=($)=>{return new K1({typeName:u.ZodNever,...l($)})};class a0 extends i{_parse($){if(this._getType($)!==L.undefined){let Q=this._getOrReturnCtx($);return K(Q,{code:j.invalid_type,expected:L.void,received:Q.parsedType}),y}return U1($.data)}}a0.create=($)=>{return new a0({typeName:u.ZodVoid,...l($)})};class F1 extends i{_parse($){let{ctx:H,status:Q}=this._processInputParams($),J=this._def;if(H.parsedType!==L.array)return K(H,{code:j.invalid_type,expected:L.array,received:H.parsedType}),y;if(J.exactLength!==null){let Y=H.data.length>J.exactLength.value,G=H.data.length<J.exactLength.value;if(Y||G)K(H,{code:Y?j.too_big:j.too_small,minimum:G?J.exactLength.value:void 0,maximum:Y?J.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:J.exactLength.message}),Q.dirty()}if(J.minLength!==null){if(H.data.length<J.minLength.value)K(H,{code:j.too_small,minimum:J.minLength.value,type:"array",inclusive:!0,exact:!1,message:J.minLength.message}),Q.dirty()}if(J.maxLength!==null){if(H.data.length>J.maxLength.value)K(H,{code:j.too_big,maximum:J.maxLength.value,type:"array",inclusive:!0,exact:!1,message:J.maxLength.message}),Q.dirty()}if(H.common.async)return Promise.all([...H.data].map((Y,G)=>{return J.type._parseAsync(new M1(H,Y,H.path,G))})).then((Y)=>{return _1.mergeArray(Q,Y)});let X=[...H.data].map((Y,G)=>{return J.type._parseSync(new M1(H,Y,H.path,G))});return _1.mergeArray(Q,X)}get element(){return this._def.type}min($,H){return new F1({...this._def,minLength:{value:$,message:x.toString(H)}})}max($,H){return new F1({...this._def,maxLength:{value:$,message:x.toString(H)}})}length($,H){return new F1({...this._def,exactLength:{value:$,message:x.toString(H)}})}nonempty($){return this.min(1,$)}}F1.create=($,H)=>{return new F1({type:$,minLength:null,maxLength:null,exactLength:null,typeName:u.ZodArray,...l(H)})};function R0($){if($ instanceof Q1){let H={};for(let Q in $.shape){let J=$.shape[Q];H[Q]=E1.create(R0(J))}return new Q1({...$._def,shape:()=>H})}else if($ instanceof F1)return new F1({...$._def,type:R0($.element)});else if($ instanceof E1)return E1.create(R0($.unwrap()));else if($ instanceof v1)return v1.create(R0($.unwrap()));else if($ instanceof P1)return P1.create($.items.map((H)=>R0(H)));else return $}class Q1 extends i{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=o.objectKeys($);return this._cached={shape:$,keys:H},this._cached}_parse($){if(this._getType($)!==L.object){let q=this._getOrReturnCtx($);return K(q,{code:j.invalid_type,expected:L.object,received:q.parsedType}),y}let{status:Q,ctx:J}=this._processInputParams($),{shape:X,keys:Y}=this._getCached(),G=[];if(!(this._def.catchall instanceof K1&&this._def.unknownKeys==="strip")){for(let q in J.data)if(!Y.includes(q))G.push(q)}let W=[];for(let q of Y){let B=X[q],w=J.data[q];W.push({key:{status:"valid",value:q},value:B._parse(new M1(J,w,J.path,q)),alwaysSet:q in J.data})}if(this._def.catchall instanceof K1){let q=this._def.unknownKeys;if(q==="passthrough")for(let B of G)W.push({key:{status:"valid",value:B},value:{status:"valid",value:J.data[B]}});else if(q==="strict"){if(G.length>0)K(J,{code:j.unrecognized_keys,keys:G}),Q.dirty()}else if(q==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let q=this._def.catchall;for(let B of G){let w=J.data[B];W.push({key:{status:"valid",value:B},value:q._parse(new M1(J,w,J.path,B)),alwaysSet:B in J.data})}}if(J.common.async)return Promise.resolve().then(async()=>{let q=[];for(let B of W){let w=await B.key,z=await B.value;q.push({key:w,value:z,alwaysSet:B.alwaysSet})}return q}).then((q)=>{return _1.mergeObjectSync(Q,q)});else return _1.mergeObjectSync(Q,W)}get shape(){return this._def.shape()}strict($){return x.errToObj,new Q1({...this._def,unknownKeys:"strict",...$!==void 0?{errorMap:(H,Q)=>{let J=this._def.errorMap?.(H,Q).message??Q.defaultError;if(H.code==="unrecognized_keys")return{message:x.errToObj($).message??J};return{message:J}}}:{}})}strip(){return new Q1({...this._def,unknownKeys:"strip"})}passthrough(){return new Q1({...this._def,unknownKeys:"passthrough"})}extend($){return new Q1({...this._def,shape:()=>({...this._def.shape(),...$})})}merge($){return new Q1({unknownKeys:$._def.unknownKeys,catchall:$._def.catchall,shape:()=>({...this._def.shape(),...$._def.shape()}),typeName:u.ZodObject})}setKey($,H){return this.augment({[$]:H})}catchall($){return new Q1({...this._def,catchall:$})}pick($){let H={};for(let Q of o.objectKeys($))if($[Q]&&this.shape[Q])H[Q]=this.shape[Q];return new Q1({...this._def,shape:()=>H})}omit($){let H={};for(let Q of o.objectKeys(this.shape))if(!$[Q])H[Q]=this.shape[Q];return new Q1({...this._def,shape:()=>H})}deepPartial(){return R0(this)}partial($){let H={};for(let Q of o.objectKeys(this.shape)){let J=this.shape[Q];if($&&!$[Q])H[Q]=J;else H[Q]=J.optional()}return new Q1({...this._def,shape:()=>H})}required($){let H={};for(let Q of o.objectKeys(this.shape))if($&&!$[Q])H[Q]=this.shape[Q];else{let X=this.shape[Q];while(X instanceof E1)X=X._def.innerType;H[Q]=X}return new Q1({...this._def,shape:()=>H})}keyof(){return k8(o.objectKeys(this.shape))}}Q1.create=($,H)=>{return new Q1({shape:()=>$,unknownKeys:"strip",catchall:K1.create(),typeName:u.ZodObject,...l(H)})};Q1.strictCreate=($,H)=>{return new Q1({shape:()=>$,unknownKeys:"strict",catchall:K1.create(),typeName:u.ZodObject,...l(H)})};Q1.lazycreate=($,H)=>{return new Q1({shape:$,unknownKeys:"strip",catchall:K1.create(),typeName:u.ZodObject,...l(H)})};class j0 extends i{_parse($){let{ctx:H}=this._processInputParams($),Q=this._def.options;function J(X){for(let G of X)if(G.result.status==="valid")return G.result;for(let G of X)if(G.result.status==="dirty")return H.common.issues.push(...G.ctx.common.issues),G.result;let Y=X.map((G)=>new z1(G.ctx.common.issues));return K(H,{code:j.invalid_union,unionErrors:Y}),y}if(H.common.async)return Promise.all(Q.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(J);else{let X=void 0,Y=[];for(let W of Q){let q={...H,common:{...H.common,issues:[]},parent:null},B=W._parseSync({data:H.data,path:H.path,parent:q});if(B.status==="valid")return B;else if(B.status==="dirty"&&!X)X={result:B,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 G=Y.map((W)=>new z1(W));return K(H,{code:j.invalid_union,unionErrors:G}),y}}get options(){return this._def.options}}j0.create=($,H)=>{return new j0({options:$,typeName:u.ZodUnion,...l(H)})};var k1=($)=>{if($ instanceof S0)return k1($.schema);else if($ instanceof j1)return k1($.innerType());else if($ instanceof L0)return[$.value];else if($ instanceof n1)return $.options;else if($ instanceof f0)return o.objectValues($.enum);else if($ instanceof C0)return k1($._def.innerType);else if($ instanceof E0)return[void 0];else if($ instanceof M0)return[null];else if($ instanceof E1)return[void 0,...k1($.unwrap())];else if($ instanceof v1)return[null,...k1($.unwrap())];else if($ instanceof f$)return k1($.unwrap());else if($ instanceof P0)return k1($.unwrap());else if($ instanceof K0)return k1($._def.innerType);else return[]};class L$ extends i{_parse($){let{ctx:H}=this._processInputParams($);if(H.parsedType!==L.object)return K(H,{code:j.invalid_type,expected:L.object,received:H.parsedType}),y;let Q=this.discriminator,J=H.data[Q],X=this.optionsMap.get(J);if(!X)return K(H,{code:j.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[Q]}),y;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,Q){let J=new Map;for(let X of H){let Y=k1(X.shape[$]);if(!Y.length)throw Error(`A discriminator value for key \`${$}\` could not be extracted from all schema options`);for(let G of Y){if(J.has(G))throw Error(`Discriminator property ${String($)} has duplicate value ${String(G)}`);J.set(G,X)}}return new L$({typeName:u.ZodDiscriminatedUnion,discriminator:$,options:H,optionsMap:J,...l(Q)})}}function H4($,H){let Q=C1($),J=C1(H);if($===H)return{valid:!0,data:$};else if(Q===L.object&&J===L.object){let X=o.objectKeys(H),Y=o.objectKeys($).filter((W)=>X.indexOf(W)!==-1),G={...$,...H};for(let W of Y){let q=H4($[W],H[W]);if(!q.valid)return{valid:!1};G[W]=q.data}return{valid:!0,data:G}}else if(Q===L.array&&J===L.array){if($.length!==H.length)return{valid:!1};let X=[];for(let Y=0;Y<$.length;Y++){let G=$[Y],W=H[Y],q=H4(G,W);if(!q.valid)return{valid:!1};X.push(q.data)}return{valid:!0,data:X}}else if(Q===L.date&&J===L.date&&+$===+H)return{valid:!0,data:$};else return{valid:!1}}class O0 extends i{_parse($){let{status:H,ctx:Q}=this._processInputParams($),J=(X,Y)=>{if(O$(X)||O$(Y))return y;let G=H4(X.value,Y.value);if(!G.valid)return K(Q,{code:j.invalid_intersection_types}),y;if(S$(X)||S$(Y))H.dirty();return{status:H.value,value:G.data}};if(Q.common.async)return Promise.all([this._def.left._parseAsync({data:Q.data,path:Q.path,parent:Q}),this._def.right._parseAsync({data:Q.data,path:Q.path,parent:Q})]).then(([X,Y])=>J(X,Y));else return J(this._def.left._parseSync({data:Q.data,path:Q.path,parent:Q}),this._def.right._parseSync({data:Q.data,path:Q.path,parent:Q}))}}O0.create=($,H,Q)=>{return new O0({left:$,right:H,typeName:u.ZodIntersection,...l(Q)})};class P1 extends i{_parse($){let{status:H,ctx:Q}=this._processInputParams($);if(Q.parsedType!==L.array)return K(Q,{code:j.invalid_type,expected:L.array,received:Q.parsedType}),y;if(Q.data.length<this._def.items.length)return K(Q,{code:j.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),y;if(!this._def.rest&&Q.data.length>this._def.items.length)K(Q,{code:j.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),H.dirty();let X=[...Q.data].map((Y,G)=>{let W=this._def.items[G]||this._def.rest;if(!W)return null;return W._parse(new M1(Q,Y,Q.path,G))}).filter((Y)=>!!Y);if(Q.common.async)return Promise.all(X).then((Y)=>{return _1.mergeArray(H,Y)});else return _1.mergeArray(H,X)}get items(){return this._def.items}rest($){return new P1({...this._def,rest:$})}}P1.create=($,H)=>{if(!Array.isArray($))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new P1({items:$,typeName:u.ZodTuple,rest:null,...l(H)})};class t0 extends i{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse($){let{status:H,ctx:Q}=this._processInputParams($);if(Q.parsedType!==L.object)return K(Q,{code:j.invalid_type,expected:L.object,received:Q.parsedType}),y;let J=[],X=this._def.keyType,Y=this._def.valueType;for(let G in Q.data)J.push({key:X._parse(new M1(Q,G,Q.path,G)),value:Y._parse(new M1(Q,Q.data[G],Q.path,G)),alwaysSet:G in Q.data});if(Q.common.async)return _1.mergeObjectAsync(H,J);else return _1.mergeObjectSync(H,J)}get element(){return this._def.valueType}static create($,H,Q){if(H instanceof i)return new t0({keyType:$,valueType:H,typeName:u.ZodRecord,...l(Q)});return new t0({keyType:A1.create(),valueType:$,typeName:u.ZodRecord,...l(H)})}}class e0 extends i{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse($){let{status:H,ctx:Q}=this._processInputParams($);if(Q.parsedType!==L.map)return K(Q,{code:j.invalid_type,expected:L.map,received:Q.parsedType}),y;let J=this._def.keyType,X=this._def.valueType,Y=[...Q.data.entries()].map(([G,W],q)=>{return{key:J._parse(new M1(Q,G,Q.path,[q,"key"])),value:X._parse(new M1(Q,W,Q.path,[q,"value"]))}});if(Q.common.async){let G=new Map;return Promise.resolve().then(async()=>{for(let W of Y){let q=await W.key,B=await W.value;if(q.status==="aborted"||B.status==="aborted")return y;if(q.status==="dirty"||B.status==="dirty")H.dirty();G.set(q.value,B.value)}return{status:H.value,value:G}})}else{let G=new Map;for(let W of Y){let{key:q,value:B}=W;if(q.status==="aborted"||B.status==="aborted")return y;if(q.status==="dirty"||B.status==="dirty")H.dirty();G.set(q.value,B.value)}return{status:H.value,value:G}}}}e0.create=($,H,Q)=>{return new e0({valueType:H,keyType:$,typeName:u.ZodMap,...l(Q)})};class J0 extends i{_parse($){let{status:H,ctx:Q}=this._processInputParams($);if(Q.parsedType!==L.set)return K(Q,{code:j.invalid_type,expected:L.set,received:Q.parsedType}),y;let J=this._def;if(J.minSize!==null){if(Q.data.size<J.minSize.value)K(Q,{code:j.too_small,minimum:J.minSize.value,type:"set",inclusive:!0,exact:!1,message:J.minSize.message}),H.dirty()}if(J.maxSize!==null){if(Q.data.size>J.maxSize.value)K(Q,{code:j.too_big,maximum:J.maxSize.value,type:"set",inclusive:!0,exact:!1,message:J.maxSize.message}),H.dirty()}let X=this._def.valueType;function Y(W){let q=new Set;for(let B of W){if(B.status==="aborted")return y;if(B.status==="dirty")H.dirty();q.add(B.value)}return{status:H.value,value:q}}let G=[...Q.data.values()].map((W,q)=>X._parse(new M1(Q,W,Q.path,q)));if(Q.common.async)return Promise.all(G).then((W)=>Y(W));else return Y(G)}min($,H){return new J0({...this._def,minSize:{value:$,message:x.toString(H)}})}max($,H){return new J0({...this._def,maxSize:{value:$,message:x.toString(H)}})}size($,H){return this.min($,H).max($,H)}nonempty($){return this.min(1,$)}}J0.create=($,H)=>{return new J0({valueType:$,minSize:null,maxSize:null,typeName:u.ZodSet,...l(H)})};class A0 extends i{constructor(){super(...arguments);this.validate=this.implement}_parse($){let{ctx:H}=this._processInputParams($);if(H.parsedType!==L.function)return K(H,{code:j.invalid_type,expected:L.function,received:H.parsedType}),y;function Q(G,W){return s0({data:G,path:H.path,errorMaps:[H.common.contextualErrorMap,H.schemaErrorMap,D0(),x1].filter((q)=>!!q),issueData:{code:j.invalid_arguments,argumentsError:W}})}function J(G,W){return s0({data:G,path:H.path,errorMaps:[H.common.contextualErrorMap,H.schemaErrorMap,D0(),x1].filter((q)=>!!q),issueData:{code:j.invalid_return_type,returnTypeError:W}})}let X={errorMap:H.common.contextualErrorMap},Y=H.data;if(this._def.returns instanceof X0){let G=this;return U1(async function(...W){let q=new z1([]),B=await G._def.args.parseAsync(W,X).catch((N)=>{throw q.addIssue(Q(W,N)),q}),w=await Reflect.apply(Y,this,B);return await G._def.returns._def.type.parseAsync(w,X).catch((N)=>{throw q.addIssue(J(w,N)),q})})}else{let G=this;return U1(function(...W){let q=G._def.args.safeParse(W,X);if(!q.success)throw new z1([Q(W,q.error)]);let B=Reflect.apply(Y,this,q.data),w=G._def.returns.safeParse(B,X);if(!w.success)throw new z1([J(B,w.error)]);return w.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...$){return new A0({...this._def,args:P1.create($).rest(m1.create())})}returns($){return new A0({...this._def,returns:$})}implement($){return this.parse($)}strictImplement($){return this.parse($)}static create($,H,Q){return new A0({args:$?$:P1.create([]).rest(m1.create()),returns:H||m1.create(),typeName:u.ZodFunction,...l(Q)})}}class S0 extends i{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})}}S0.create=($,H)=>{return new S0({getter:$,typeName:u.ZodLazy,...l(H)})};class L0 extends i{_parse($){if($.data!==this._def.value){let H=this._getOrReturnCtx($);return K(H,{received:H.data,code:j.invalid_literal,expected:this._def.value}),y}return{status:"valid",value:$.data}}get value(){return this._def.value}}L0.create=($,H)=>{return new L0({value:$,typeName:u.ZodLiteral,...l(H)})};function k8($,H){return new n1({values:$,typeName:u.ZodEnum,...l(H)})}class n1 extends i{_parse($){if(typeof $.data!=="string"){let H=this._getOrReturnCtx($),Q=this._def.values;return K(H,{expected:o.joinValues(Q),received:H.parsedType,code:j.invalid_type}),y}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has($.data)){let H=this._getOrReturnCtx($),Q=this._def.values;return K(H,{received:H.data,code:j.invalid_enum_value,options:Q}),y}return U1($.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 n1.create($,{...this._def,...H})}exclude($,H=this._def){return n1.create(this.options.filter((Q)=>!$.includes(Q)),{...this._def,...H})}}n1.create=k8;class f0 extends i{_parse($){let H=o.getValidEnumValues(this._def.values),Q=this._getOrReturnCtx($);if(Q.parsedType!==L.string&&Q.parsedType!==L.number){let J=o.objectValues(H);return K(Q,{expected:o.joinValues(J),received:Q.parsedType,code:j.invalid_type}),y}if(!this._cache)this._cache=new Set(o.getValidEnumValues(this._def.values));if(!this._cache.has($.data)){let J=o.objectValues(H);return K(Q,{received:Q.data,code:j.invalid_enum_value,options:J}),y}return U1($.data)}get enum(){return this._def.values}}f0.create=($,H)=>{return new f0({values:$,typeName:u.ZodNativeEnum,...l(H)})};class X0 extends i{unwrap(){return this._def.type}_parse($){let{ctx:H}=this._processInputParams($);if(H.parsedType!==L.promise&&H.common.async===!1)return K(H,{code:j.invalid_type,expected:L.promise,received:H.parsedType}),y;let Q=H.parsedType===L.promise?H.data:Promise.resolve(H.data);return U1(Q.then((J)=>{return this._def.type.parseAsync(J,{path:H.path,errorMap:H.common.contextualErrorMap})}))}}X0.create=($,H)=>{return new X0({type:$,typeName:u.ZodPromise,...l(H)})};class j1 extends i{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===u.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse($){let{status:H,ctx:Q}=this._processInputParams($),J=this._def.effect||null,X={addIssue:(Y)=>{if(K(Q,Y),Y.fatal)H.abort();else H.dirty()},get path(){return Q.path}};if(X.addIssue=X.addIssue.bind(X),J.type==="preprocess"){let Y=J.transform(Q.data,X);if(Q.common.async)return Promise.resolve(Y).then(async(G)=>{if(H.value==="aborted")return y;let W=await this._def.schema._parseAsync({data:G,path:Q.path,parent:Q});if(W.status==="aborted")return y;if(W.status==="dirty")return $0(W.value);if(H.value==="dirty")return $0(W.value);return W});else{if(H.value==="aborted")return y;let G=this._def.schema._parseSync({data:Y,path:Q.path,parent:Q});if(G.status==="aborted")return y;if(G.status==="dirty")return $0(G.value);if(H.value==="dirty")return $0(G.value);return G}}if(J.type==="refinement"){let Y=(G)=>{let W=J.refinement(G,X);if(Q.common.async)return Promise.resolve(W);if(W instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return G};if(Q.common.async===!1){let G=this._def.schema._parseSync({data:Q.data,path:Q.path,parent:Q});if(G.status==="aborted")return y;if(G.status==="dirty")H.dirty();return Y(G.value),{status:H.value,value:G.value}}else return this._def.schema._parseAsync({data:Q.data,path:Q.path,parent:Q}).then((G)=>{if(G.status==="aborted")return y;if(G.status==="dirty")H.dirty();return Y(G.value).then(()=>{return{status:H.value,value:G.value}})})}if(J.type==="transform")if(Q.common.async===!1){let Y=this._def.schema._parseSync({data:Q.data,path:Q.path,parent:Q});if(!c1(Y))return y;let G=J.transform(Y.value,X);if(G instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:H.value,value:G}}else return this._def.schema._parseAsync({data:Q.data,path:Q.path,parent:Q}).then((Y)=>{if(!c1(Y))return y;return Promise.resolve(J.transform(Y.value,X)).then((G)=>({status:H.value,value:G}))});o.assertNever(J)}}j1.create=($,H,Q)=>{return new j1({schema:$,typeName:u.ZodEffects,effect:H,...l(Q)})};j1.createWithPreprocess=($,H,Q)=>{return new j1({schema:H,effect:{type:"preprocess",transform:$},typeName:u.ZodEffects,...l(Q)})};class E1 extends i{_parse($){if(this._getType($)===L.undefined)return U1(void 0);return this._def.innerType._parse($)}unwrap(){return this._def.innerType}}E1.create=($,H)=>{return new E1({innerType:$,typeName:u.ZodOptional,...l(H)})};class v1 extends i{_parse($){if(this._getType($)===L.null)return U1(null);return this._def.innerType._parse($)}unwrap(){return this._def.innerType}}v1.create=($,H)=>{return new v1({innerType:$,typeName:u.ZodNullable,...l(H)})};class C0 extends i{_parse($){let{ctx:H}=this._processInputParams($),Q=H.data;if(H.parsedType===L.undefined)Q=this._def.defaultValue();return this._def.innerType._parse({data:Q,path:H.path,parent:H})}removeDefault(){return this._def.innerType}}C0.create=($,H)=>{return new C0({innerType:$,typeName:u.ZodDefault,defaultValue:typeof H.default==="function"?H.default:()=>H.default,...l(H)})};class K0 extends i{_parse($){let{ctx:H}=this._processInputParams($),Q={...H,common:{...H.common,issues:[]}},J=this._def.innerType._parse({data:Q.data,path:Q.path,parent:{...Q}});if(V0(J))return J.then((X)=>{return{status:"valid",value:X.status==="valid"?X.value:this._def.catchValue({get error(){return new z1(Q.common.issues)},input:Q.data})}});else return{status:"valid",value:J.status==="valid"?J.value:this._def.catchValue({get error(){return new z1(Q.common.issues)},input:Q.data})}}removeCatch(){return this._def.innerType}}K0.create=($,H)=>{return new K0({innerType:$,typeName:u.ZodCatch,catchValue:typeof H.catch==="function"?H.catch:()=>H.catch,...l(H)})};class $$ extends i{_parse($){if(this._getType($)!==L.nan){let Q=this._getOrReturnCtx($);return K(Q,{code:j.invalid_type,expected:L.nan,received:Q.parsedType}),y}return{status:"valid",value:$.data}}}$$.create=($)=>{return new $$({typeName:u.ZodNaN,...l($)})};var BQ=Symbol("zod_brand");class f$ extends i{_parse($){let{ctx:H}=this._processInputParams($),Q=H.data;return this._def.type._parse({data:Q,path:H.path,parent:H})}unwrap(){return this._def.type}}class H$ extends i{_parse($){let{status:H,ctx:Q}=this._processInputParams($);if(Q.common.async)return(async()=>{let X=await this._def.in._parseAsync({data:Q.data,path:Q.path,parent:Q});if(X.status==="aborted")return y;if(X.status==="dirty")return H.dirty(),$0(X.value);else return this._def.out._parseAsync({data:X.value,path:Q.path,parent:Q})})();else{let J=this._def.in._parseSync({data:Q.data,path:Q.path,parent:Q});if(J.status==="aborted")return y;if(J.status==="dirty")return H.dirty(),{status:"dirty",value:J.value};else return this._def.out._parseSync({data:J.value,path:Q.path,parent:Q})}}static create($,H){return new H$({in:$,out:H,typeName:u.ZodPipeline})}}class P0 extends i{_parse($){let H=this._def.innerType._parse($),Q=(J)=>{if(c1(J))J.value=Object.freeze(J.value);return J};return V0(H)?H.then((J)=>Q(J)):Q(H)}unwrap(){return this._def.innerType}}P0.create=($,H)=>{return new P0({innerType:$,typeName:u.ZodReadonly,...l(H)})};function I8($,H){let Q=typeof $==="function"?$(H):typeof $==="string"?{message:$}:$;return typeof Q==="string"?{message:Q}:Q}function v8($,H={},Q){if($)return Q0.create().superRefine((J,X)=>{let Y=$(J);if(Y instanceof Promise)return Y.then((G)=>{if(!G){let W=I8(H,J),q=W.fatal??Q??!0;X.addIssue({code:"custom",...W,fatal:q})}});if(!Y){let G=I8(H,J),W=G.fatal??Q??!0;X.addIssue({code:"custom",...G,fatal:W})}return});return Q0.create()}var wQ={object:Q1.lazycreate},u;(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"})(u||(u={}));var zQ=($,H={message:`Input not instance of ${$.name}`})=>v8((Q)=>Q instanceof $,H),g8=A1.create,y8=d1.create,_Q=$$.create,UQ=l1.create,u8=F0.create,NQ=H0.create,DQ=r0.create,VQ=E0.create,RQ=M0.create,AQ=Q0.create,FQ=m1.create,EQ=K1.create,MQ=a0.create,jQ=F1.create,OQ=Q1.create,SQ=Q1.strictCreate,LQ=j0.create,fQ=L$.create,CQ=O0.create,KQ=P1.create,PQ=t0.create,TQ=e0.create,bQ=J0.create,IQ=A0.create,ZQ=S0.create,hQ=L0.create,xQ=n1.create,kQ=f0.create,vQ=X0.create,gQ=j1.create,yQ=E1.create,uQ=v1.create,cQ=j1.createWithPreprocess,mQ=H$.create,dQ=()=>g8().optional(),lQ=()=>y8().optional(),nQ=()=>u8().optional(),iQ={string:($)=>A1.create({...$,coerce:!0}),number:($)=>d1.create({...$,coerce:!0}),boolean:($)=>F0.create({...$,coerce:!0}),bigint:($)=>l1.create({...$,coerce:!0}),date:($)=>H0.create({...$,coerce:!0})};var pQ=y;p0();class T0 extends D1{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 Q4{schemaCache=new WeakMap;stats={hits:0,misses:0,validations:0};async validate($,H){this.stats.validations++;try{let Q=this.schemaCache.get(H);if(!Q)this.stats.misses++,Q={schema:H,resultCache:new WeakMap},this.schemaCache.set(H,Q);else this.stats.hits++;return await Q.schema.parseAsync($)}catch(Q){if(Q instanceof z1)throw new T0(Q);throw Q}}validateSync($,H){this.stats.validations++;try{let Q=this.schemaCache.get(H);if(!Q)this.stats.misses++,Q={schema:H,resultCache:new WeakMap},this.schemaCache.set(H,Q);else this.stats.hits++;return Q.schema.parse($)}catch(Q){if(Q instanceof z1)throw new T0(Q);throw Q}}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()}}p0();class J4{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(Q){console.error("Custom error handler failed:",Q)}if($ instanceof T0)return console.log("Handling as ValidationException"),this.handleValidationException($,H);if($ instanceof D1)return console.log("Handling as HTTPException"),this.handleHTTPException($,H);return console.log("Handling as generic error"),this.handleGenericError($,H)}handleValidationException($,H){let Q=$.toJSON();if(this.isDevelopment)console.error("Validation Error:",{path:H.req.path,method:H.req.method,details:Q.details});return H.json(Q,$.statusCode)}handleHTTPException($,H){let Q=$.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(Q,$.statusCode)}handleGenericError($,H){console.error("Internal Server Error:",{name:$.name,message:$.message,path:H.req.path,method:H.req.method,stack:$.stack});let Q={error:"Internal Server Error",statusCode:500};if(this.isDevelopment){if(Q.message=$.message,Q.name=$.name,$.stack)Q.stack=$.stack.split(`
|
|
42
|
+
`).map((J)=>J.trim())}else Q.message="An unexpected error occurred";return H.json(Q,500)}isDevelopmentMode(){return this.isDevelopment}setDevelopmentMode($){this.isDevelopment=$}}class X4{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 Q of H)await this.plugins.get(Q).install($),this.installed.add(Q)}isInstalled($){return this.installed.has($)}getPlugin($){return this.plugins.get($)}getPluginNames(){return Array.from(this.plugins.keys())}resolveInstallOrder(){let $=new Set,H=new Set,Q=[],J=(X,Y=[])=>{if(H.has(X)){let W=[...Y,X].join(" -> ");throw Error(`Circular dependency detected in plugins: ${W}`)}if($.has(X))return;H.add(X);let G=this.plugins.get(X);if(!G)throw Error(`Plugin "${X}" is not registered`);if(G.dependencies)for(let W of G.dependencies){if(!this.plugins.has(W))throw Error(`Plugin "${X}" depends on "${W}" which is not registered`);J(W,[...Y,X])}H.delete(X),$.add(X),Q.push(X)};for(let X of this.plugins.keys())J(X);return Q}}function m8($){let{origin:H="*",methods:Q=["GET","POST","PUT","DELETE","PATCH","OPTIONS"],allowedHeaders:J=["Content-Type","Authorization"],exposedHeaders:X=[],credentials:Y=!1,maxAge:G=86400}=$||{};return async(W,q)=>{let B=W.req.header("origin"),w=W.req.method,z=null;if(typeof H==="string")z=H;else if(Array.isArray(H)){if(B&&H.includes(B))z=B}else if(typeof H==="function"){if(B&&H(B))z=B}if(z)W.header("Access-Control-Allow-Origin",z);if(Y)W.header("Access-Control-Allow-Credentials","true");if(X.length>0)W.header("Access-Control-Expose-Headers",X.join(", "));if(w==="OPTIONS")return W.header("Access-Control-Allow-Methods",Q.join(", ")),W.header("Access-Control-Allow-Headers",J.join(", ")),W.header("Access-Control-Max-Age",G.toString()),W.body(null,204);await q()}}function d8($){let{windowMs:H=60000,max:Q=100,keyGenerator:J=(G)=>{return G.req.header("x-forwarded-for")||G.req.header("x-real-ip")||"unknown"}}=$,X=new Map,Y=setInterval(()=>{let G=Date.now();for(let[W,q]of X.entries())if(G>q.resetTime)X.delete(W)},H);if(typeof process<"u"&&process.on)process.on("exit",()=>clearInterval(Y));return async(G,W)=>{let q=J(G),B=Date.now(),w=X.get(q);if(!w||B>w.resetTime)X.set(q,{count:1,resetTime:B+H}),G.header("X-RateLimit-Limit",Q.toString()),G.header("X-RateLimit-Remaining",(Q-1).toString()),G.header("X-RateLimit-Reset",new Date(B+H).toISOString()),await W();else if(w.count<Q)w.count++,G.header("X-RateLimit-Limit",Q.toString()),G.header("X-RateLimit-Remaining",(Q-w.count).toString()),G.header("X-RateLimit-Reset",new Date(w.resetTime).toISOString()),await W();else{let z=Math.ceil((w.resetTime-B)/1000);return G.header("X-RateLimit-Limit",Q.toString()),G.header("X-RateLimit-Remaining","0"),G.header("X-RateLimit-Reset",new Date(w.resetTime).toISOString()),G.header("Retry-After",z.toString()),G.json({error:"Too Many Requests",message:`Rate limit exceeded. Please try again in ${z} seconds.`,retryAfter:z},429)}}}function l8($){let{threshold:H=1024,level:Q=6}=$||{};return async(J,X)=>{await X();let Y=J.res;if(!Y)return;let G=Y.headers.get("content-type")||"",W=Y.headers.get("content-length"),q=J.req.header("accept-encoding")||"";if(!["text/","application/json","application/javascript","application/xml","application/x-www-form-urlencoded"].some((_)=>G.toLowerCase().includes(_)))return;if(W&&parseInt(W)<H)return;if(Y.headers.get("content-encoding"))return;let z=await Y.arrayBuffer();if(z.byteLength<H)return;let N=null,D=null;if(q.includes("br")&&typeof CompressionStream<"u")try{let _=new CompressionStream("deflate"),A=_.writable.getWriter();A.write(new Uint8Array(z)),A.close();let R=_.readable.getReader(),M=[];while(!0){let{done:h,value:m}=await R.read();if(h)break;M.push(m)}let S=M.reduce((h,m)=>h+m.length,0),O=new Uint8Array(S),T=0;for(let h of M)O.set(h,T),T+=h.length;N=O,D="deflate"}catch(_){N=null}if(!N&&q.includes("gzip")&&typeof CompressionStream<"u")try{let _=new CompressionStream("gzip"),A=_.writable.getWriter();A.write(new Uint8Array(z)),A.close();let R=_.readable.getReader(),M=[];while(!0){let{done:h,value:m}=await R.read();if(h)break;M.push(m)}let S=M.reduce((h,m)=>h+m.length,0),O=new Uint8Array(S),T=0;for(let h of M)O.set(h,T),T+=h.length;N=O,D="gzip"}catch(_){N=null}if(N&&D&&N.byteLength<z.byteLength){let _=new Headers(Y.headers);return _.set("content-encoding",D),_.set("content-length",N.byteLength.toString()),_.delete("content-length"),new Response(N,{status:Y.status,statusText:Y.statusText,headers:_})}}}var b9,P5;function az(){if(!b9)b9=c6(),P5=K5();return{pino:b9,pinoPretty:P5}}class T5{logger;constructor($){let{pino:H}=az(),Q=!0,J=$?.pretty!==void 0?$.pretty:!0;this.logger=H({level:$?.level||"debug",transport:J?{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,Q){this.logger.error({err:H,...Q},$)}fatal($,H,Q){this.logger.fatal({err:H,...Q},$)}child($){return new I9(this.logger.child($))}}class I9{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,Q){this.logger.error({err:H,...Q},$)}fatal($,H,Q){this.logger.fatal({err:H,...Q},$)}child($){return new I9(this.logger.child($))}}function b5($){return new T5($)}var z$=null;function ZD($){return z$=b5($),z$}function Z9(){if(!z$)z$=b5({pretty:!0,level:"debug"});return z$}function h9($){return Z9().child($)}function kD(){return async($,H)=>{let Q=h9({context:"request",method:$.req.method,path:$.req.path,ip:$.req.header("x-forwarded-for")||$.req.header("x-real-ip")||"unknown"}),J=Date.now();Q.info("Incoming request");try{await H();let X=Date.now()-J;Q.info("Request completed",{status:$.res.status,duration:`${X}ms`})}catch(X){let Y=Date.now()-J;throw Q.error("Request failed",X,{status:X.status||500,duration:`${Y}ms`}),X}}}function vD(){return async($,H)=>{try{await H()}catch(Q){throw h9({context:"error"}).error("Unhandled error",Q,{method:$.req.method,path:$.req.path,query:$.req.query(),headers:Object.fromEntries(new Map($.req.raw.headers))}),Q}}}class k9{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 O2,this.metadata=new y1,this.container=new k2,this.validator=new Q4,this.errorHandler=new J4,this.pluginManager=new X4,this.compiler=new t2(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=y1.getControllerMetadata($);if(H)this.metadata.registerController($,H);let Q=y1.getRouteMethods($);for(let J of Q){let X=y1.getRouteMetadata($.prototype,J),Y=y1.getParameterMetadata($.prototype,J),G=y1.getDependencyMetadata($.prototype,J);if(X&&X.method&&X.path!==void 0){let W=H?.prefix||"",q=this.normalizePath(W,X.path);this.metadata.registerRoute({target:$,propertyKey:J,method:X.method,path:q,middleware:[...H?.middleware||[],...X.middleware||[]],parameters:Y||X.parameters||[],dependencies:G||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 k5(this,$)}group($,H){let Q=this.groupPrefix;this.groupPrefix=this.normalizePath(this.groupPrefix,$),H(),this.groupPrefix=Q}registerFunctionalRoute($,H,Q){let J=this.normalizePath(this.groupPrefix,H),X={target:x5,propertyKey:`${$.toLowerCase()}_${J}`,method:$,path:J,middleware:Q.middleware||[],parameters:this.extractParametersFromSchema(Q.schema),dependencies:[],responses:Q.responses||[],docs:Q.docs,handler:Q.handler};this.metadata.registerRoute(X)}extractParametersFromSchema($){let H=[],Q=0;if($?.body)H.push({index:Q++,type:"body",schema:$.body,required:!0});if($?.query)H.push({index:Q++,type:"query",schema:$.query,required:!1});if($?.params)H.push({index:Q++,type:"param",schema:$.params,required:!0});if($?.headers)H.push({index:Q++,type:"header",schema:$.headers,required:!1});return H}use($){this.globalMiddleware.push($),this.hono.use("*",$)}useCors($){let H=m8($);this.use(H)}useRateLimit($){let H=d8($);this.use(H)}useCompression($){let H=l8($);this.use(H)}usePlugin($){this.pluginManager.register($)}getPluginManager(){return this.pluginManager}onError($){this.errorHandler.setCustomHandler($)}getErrorHandler(){return this.errorHandler}normalizePath(...$){let H=$.filter((Q)=>Q!=="").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 Q=this.createAdapter();return this.serverInstance=Q.listen($,H),this.setupGracefulShutdown(),this.serverInstance}setupGracefulShutdown(){if(typeof process>"u")return;let $=async(H)=>{let Q=Z9().child({component:"app"});if(Q.info(`Received ${H}, starting graceful shutdown...`),this.serverInstance&&typeof this.serverInstance.close==="function")try{await Promise.resolve(this.serverInstance.close()),Q.info("Server closed gracefully")}catch(J){Q.error("Error during shutdown",J)}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}=w2(x9);return new H(this.hono)}case"express":{let{ExpressAdapter:H}=w2(h5);return new H(this)}case"native":{let{HonoAdapter:H}=w2(x9);return new H(this.hono)}default:throw Error(`Unknown adapter type: ${$}. Supported adapters: 'hono', 'express', 'native'`)}}}class x5{}class k5{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 v5($){let H={docs:!1,cors:!1,...$};return new k9(H)}function ez($,H,Q,J){let X=$.getContainer(),Y=typeof Q==="function"?Q:()=>Q;X.register(H,{scope:J?.scope||"singleton",factory:Y})}function g5($){return new N$($)}async function $_($,H){let Q=v5(H);await $(Q),await Q.compile();let J=g5(Q);return{app:Q,client:J}}function H_($){$.getContainer().clear()}export{$_ as setupTestApp,ez as mockDependency,g5 as createTestClient,v5 as createTestApp,H_ as clearMocks,N$ as TestClient};
|
|
43
|
+
|
|
44
|
+
//# debugId=028D82C0EAB0E60264756E2164756E21
|