veloce-ts 0.2.6 → 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.
Files changed (180) hide show
  1. package/CHANGELOG.md +501 -240
  2. package/README.md +141 -1
  3. package/dist/cjs/src/cli/index.js +125 -74
  4. package/dist/cjs/src/cli/index.js.map +4 -4
  5. package/dist/cjs/src/index.js +66 -25
  6. package/dist/cjs/src/index.js.map +112 -10
  7. package/dist/cjs/src/middleware/index.js +28 -2
  8. package/dist/cjs/src/middleware/index.js.map +79 -4
  9. package/dist/cjs/src/plugins/index.js +49 -23
  10. package/dist/cjs/src/plugins/index.js.map +74 -4
  11. package/dist/cjs/src/testing/index.js +30 -4
  12. package/dist/cjs/src/testing/index.js.map +80 -7
  13. package/dist/cjs/src/websocket/index.js +3 -3
  14. package/dist/cjs/src/websocket/index.js.map +1 -1
  15. package/dist/esm/src/cli/index.js +561 -22
  16. package/dist/esm/src/cli/index.js.map +8 -4
  17. package/dist/esm/src/docs/index.js +6 -6
  18. package/dist/esm/src/docs/index.js.map +10 -3
  19. package/dist/esm/src/errors/index.js +3 -2
  20. package/dist/esm/src/errors/index.js.map +7 -3
  21. package/dist/esm/src/graphql/index.js +82 -2
  22. package/dist/esm/src/graphql/index.js.map +18 -3
  23. package/dist/esm/src/index.js +165 -3
  24. package/dist/esm/src/index.js.map +202 -6
  25. package/dist/esm/src/middleware/index.js +28 -2
  26. package/dist/esm/src/middleware/index.js.map +81 -3
  27. package/dist/esm/src/plugins/index.js +113 -3
  28. package/dist/esm/src/plugins/index.js.map +131 -4
  29. package/dist/esm/src/testing/index.js +42 -2
  30. package/dist/esm/src/testing/index.js.map +97 -7
  31. package/dist/esm/src/types/index.js +2 -2
  32. package/dist/esm/src/types/index.js.map +10 -3
  33. package/dist/esm/src/validation/index.js +2 -2
  34. package/dist/esm/src/validation/index.js.map +13 -3
  35. package/dist/esm/src/websocket/index.js +15 -2
  36. package/dist/esm/src/websocket/index.js.map +9 -4
  37. package/dist/types/adapters/base.d.ts +10 -2
  38. package/dist/types/adapters/base.d.ts.map +1 -1
  39. package/dist/types/adapters/hono.d.ts +2 -2
  40. package/dist/types/adapters/hono.d.ts.map +1 -1
  41. package/dist/types/auth/permissions.d.ts +10 -10
  42. package/dist/types/auth/session.d.ts +2 -2
  43. package/dist/types/cache/index.d.ts +9 -0
  44. package/dist/types/cache/index.d.ts.map +1 -0
  45. package/dist/types/cache/manager.d.ts +75 -0
  46. package/dist/types/cache/manager.d.ts.map +1 -0
  47. package/dist/types/cache/memory-store.d.ts +55 -0
  48. package/dist/types/cache/memory-store.d.ts.map +1 -0
  49. package/dist/types/cache/redis-store.d.ts +55 -0
  50. package/dist/types/cache/redis-store.d.ts.map +1 -0
  51. package/dist/types/cache/types.d.ts +92 -0
  52. package/dist/types/cache/types.d.ts.map +1 -0
  53. package/dist/types/cli/commands/new.d.ts.map +1 -1
  54. package/dist/types/context/request-context.d.ts +66 -0
  55. package/dist/types/context/request-context.d.ts.map +1 -0
  56. package/dist/types/core/application.d.ts +11 -0
  57. package/dist/types/core/application.d.ts.map +1 -1
  58. package/dist/types/core/router-compiler.d.ts +1 -1
  59. package/dist/types/core/router-compiler.d.ts.map +1 -1
  60. package/dist/types/decorators/cache.d.ts +56 -0
  61. package/dist/types/decorators/cache.d.ts.map +1 -0
  62. package/dist/types/decorators/params.d.ts +24 -0
  63. package/dist/types/decorators/params.d.ts.map +1 -1
  64. package/dist/types/dependencies/container.d.ts +1 -1
  65. package/dist/types/dependencies/container.d.ts.map +1 -1
  66. package/dist/types/index.d.ts +7 -1
  67. package/dist/types/index.d.ts.map +1 -1
  68. package/dist/types/logging/index.d.ts +10 -0
  69. package/dist/types/logging/index.d.ts.map +1 -0
  70. package/dist/types/logging/logger.d.ts +25 -0
  71. package/dist/types/logging/logger.d.ts.map +1 -0
  72. package/dist/types/logging/middleware.d.ts +15 -0
  73. package/dist/types/logging/middleware.d.ts.map +1 -0
  74. package/dist/types/logging/types.d.ts +22 -0
  75. package/dist/types/logging/types.d.ts.map +1 -0
  76. package/dist/types/middleware/cache.d.ts +54 -0
  77. package/dist/types/middleware/cache.d.ts.map +1 -0
  78. package/dist/types/middleware/index.d.ts +3 -0
  79. package/dist/types/middleware/index.d.ts.map +1 -1
  80. package/dist/types/middleware/request-context.d.ts +55 -0
  81. package/dist/types/middleware/request-context.d.ts.map +1 -0
  82. package/dist/types/orm/base-repository.d.ts +77 -0
  83. package/dist/types/orm/base-repository.d.ts.map +1 -0
  84. package/dist/types/orm/decorators.d.ts +35 -0
  85. package/dist/types/orm/decorators.d.ts.map +1 -0
  86. package/dist/types/orm/drizzle/index.d.ts +6 -0
  87. package/dist/types/orm/drizzle/index.d.ts.map +1 -0
  88. package/dist/types/orm/drizzle/plugin.d.ts +165 -0
  89. package/dist/types/orm/drizzle/plugin.d.ts.map +1 -0
  90. package/dist/types/orm/drizzle/repository.d.ts +61 -0
  91. package/dist/types/orm/drizzle/repository.d.ts.map +1 -0
  92. package/dist/types/orm/drizzle/schema-converter.d.ts +53 -0
  93. package/dist/types/orm/drizzle/schema-converter.d.ts.map +1 -0
  94. package/dist/types/orm/drizzle/transaction-manager.d.ts +58 -0
  95. package/dist/types/orm/drizzle/transaction-manager.d.ts.map +1 -0
  96. package/dist/types/orm/drizzle/types.d.ts +121 -0
  97. package/dist/types/orm/drizzle/types.d.ts.map +1 -0
  98. package/dist/types/orm/index.d.ts +16 -0
  99. package/dist/types/orm/index.d.ts.map +1 -0
  100. package/dist/types/orm/pagination.d.ts +147 -0
  101. package/dist/types/orm/pagination.d.ts.map +1 -0
  102. package/dist/types/orm/prisma/index.d.ts +6 -0
  103. package/dist/types/orm/prisma/index.d.ts.map +1 -0
  104. package/dist/types/orm/prisma/plugin.d.ts +68 -0
  105. package/dist/types/orm/prisma/plugin.d.ts.map +1 -0
  106. package/dist/types/orm/prisma/repository.d.ts +70 -0
  107. package/dist/types/orm/prisma/repository.d.ts.map +1 -0
  108. package/dist/types/orm/prisma/schema-generator.d.ts +45 -0
  109. package/dist/types/orm/prisma/schema-generator.d.ts.map +1 -0
  110. package/dist/types/orm/prisma/transaction-manager.d.ts +32 -0
  111. package/dist/types/orm/prisma/transaction-manager.d.ts.map +1 -0
  112. package/dist/types/orm/prisma/types.d.ts +67 -0
  113. package/dist/types/orm/prisma/types.d.ts.map +1 -0
  114. package/dist/types/orm/query-builder.d.ts +129 -0
  115. package/dist/types/orm/query-builder.d.ts.map +1 -0
  116. package/dist/types/orm/repository-factory.d.ts +130 -0
  117. package/dist/types/orm/repository-factory.d.ts.map +1 -0
  118. package/dist/types/orm/transaction-events.d.ts +122 -0
  119. package/dist/types/orm/transaction-events.d.ts.map +1 -0
  120. package/dist/types/orm/transaction-interceptor.d.ts +30 -0
  121. package/dist/types/orm/transaction-interceptor.d.ts.map +1 -0
  122. package/dist/types/orm/transaction-manager.d.ts +64 -0
  123. package/dist/types/orm/transaction-manager.d.ts.map +1 -0
  124. package/dist/types/orm/transaction-plugin.d.ts +117 -0
  125. package/dist/types/orm/transaction-plugin.d.ts.map +1 -0
  126. package/dist/types/orm/transaction-propagation.d.ts +49 -0
  127. package/dist/types/orm/transaction-propagation.d.ts.map +1 -0
  128. package/dist/types/orm/typeorm/decorators.d.ts +40 -0
  129. package/dist/types/orm/typeorm/decorators.d.ts.map +1 -0
  130. package/dist/types/orm/typeorm/index.d.ts +6 -0
  131. package/dist/types/orm/typeorm/index.d.ts.map +1 -0
  132. package/dist/types/orm/typeorm/plugin.d.ts +100 -0
  133. package/dist/types/orm/typeorm/plugin.d.ts.map +1 -0
  134. package/dist/types/orm/typeorm/repository.d.ts +58 -0
  135. package/dist/types/orm/typeorm/repository.d.ts.map +1 -0
  136. package/dist/types/orm/typeorm/transaction-manager.d.ts +48 -0
  137. package/dist/types/orm/typeorm/transaction-manager.d.ts.map +1 -0
  138. package/dist/types/orm/typeorm/types.d.ts +139 -0
  139. package/dist/types/orm/typeorm/types.d.ts.map +1 -0
  140. package/dist/types/plugins/health.d.ts +75 -0
  141. package/dist/types/plugins/health.d.ts.map +1 -0
  142. package/dist/types/plugins/index.d.ts +2 -0
  143. package/dist/types/plugins/index.d.ts.map +1 -1
  144. package/dist/types/types/index.d.ts +15 -2
  145. package/dist/types/types/index.d.ts.map +1 -1
  146. package/dist/types/websocket/index.d.ts +1 -1
  147. package/dist/types/websocket/index.d.ts.map +1 -1
  148. package/package.json +22 -2
  149. package/dist/esm/chunk-2100y16g.js +0 -5
  150. package/dist/esm/chunk-2100y16g.js.map +0 -10
  151. package/dist/esm/chunk-5q75d71c.js +0 -4
  152. package/dist/esm/chunk-5q75d71c.js.map +0 -16
  153. package/dist/esm/chunk-8dpc6an2.js +0 -7
  154. package/dist/esm/chunk-8dpc6an2.js.map +0 -10
  155. package/dist/esm/chunk-9v7atckx.js +0 -5
  156. package/dist/esm/chunk-9v7atckx.js.map +0 -10
  157. package/dist/esm/chunk-bvstdn0t.js +0 -60
  158. package/dist/esm/chunk-bvstdn0t.js.map +0 -10
  159. package/dist/esm/chunk-ctwpr5gr.js +0 -430
  160. package/dist/esm/chunk-ctwpr5gr.js.map +0 -10
  161. package/dist/esm/chunk-dtw2tbsd.js +0 -5
  162. package/dist/esm/chunk-dtw2tbsd.js.map +0 -12
  163. package/dist/esm/chunk-ef0vfd27.js +0 -72
  164. package/dist/esm/chunk-ef0vfd27.js.map +0 -13
  165. package/dist/esm/chunk-k66rn4fj.js +0 -18
  166. package/dist/esm/chunk-k66rn4fj.js.map +0 -10
  167. package/dist/esm/chunk-mky5qqg0.js +0 -5
  168. package/dist/esm/chunk-mky5qqg0.js.map +0 -10
  169. package/dist/esm/chunk-mznkhz9c.js +0 -5
  170. package/dist/esm/chunk-mznkhz9c.js.map +0 -12
  171. package/dist/esm/chunk-s5z0wb7e.js +0 -5
  172. package/dist/esm/chunk-s5z0wb7e.js.map +0 -10
  173. package/dist/esm/chunk-vh4sxcpe.js +0 -6
  174. package/dist/esm/chunk-vh4sxcpe.js.map +0 -10
  175. package/dist/esm/chunk-xa333k40.js +0 -7
  176. package/dist/esm/chunk-xa333k40.js.map +0 -10
  177. package/dist/esm/chunk-y262e56g.js +0 -5
  178. package/dist/esm/chunk-y262e56g.js.map +0 -9
  179. package/dist/esm/chunk-yq3gf9ts.js +0 -5
  180. package/dist/esm/chunk-yq3gf9ts.js.map +0 -10
@@ -1,4 +1,4 @@
1
- var Gf=Object.create;var{getPrototypeOf:qf,defineProperty:r0,getOwnPropertyNames:c$,getOwnPropertyDescriptor:_f}=Object,u$=Object.prototype.hasOwnProperty;var Bf=($,f,H)=>{H=$!=null?Gf(qf($)):{};let Q=f||!$||!$.__esModule?r0(H,"default",{value:$,enumerable:!0}):H;for(let X of c$($))if(!u$.call(Q,X))r0(Q,X,{get:()=>$[X],enumerable:!0});return Q},n$=new WeakMap,w1=($)=>{var f=n$.get($),H;if(f)return f;if(f=r0({},"__esModule",{value:!0}),$&&typeof $==="object"||typeof $==="function")c$($).map((Q)=>!u$.call(f,Q)&&r0(f,Q,{get:()=>$[Q],enumerable:!(H=_f($,Q))||H.enumerable}));return n$.set($,f),f},zf=($,f)=>()=>(f||$((f={exports:{}}).exports,f),f.exports);var t0=($,f)=>{for(var H in f)r0($,H,{get:f[H],enumerable:!0,configurable:!0,set:(Q)=>f[H]=()=>Q})};var y$=($,f)=>()=>($&&(f=$($=0)),f);var B2=zf(()=>{/*! *****************************************************************************
1
+ var Q3=Object.create;var{getPrototypeOf:J3,defineProperty:m0,getOwnPropertyNames:t9,getOwnPropertyDescriptor:X3}=Object,e9=Object.prototype.hasOwnProperty;var Y3=($,H,Q)=>{Q=$!=null?Q3(J3($)):{};let J=H||!$||!$.__esModule?m0(Q,"default",{value:$,enumerable:!0}):Q;for(let X of t9($))if(!e9.call(J,X))m0(J,X,{get:()=>$[X],enumerable:!0});return J},a9=new WeakMap,V$=($)=>{var H=a9.get($),Q;if(H)return H;if(H=m0({},"__esModule",{value:!0}),$&&typeof $==="object"||typeof $==="function")t9($).map((J)=>!e9.call(H,J)&&m0(H,J,{get:()=>$[J],enumerable:!(Q=X3($,J))||Q.enumerable}));return a9.set($,H),H},b=($,H)=>()=>(H||$((H={exports:{}}).exports,H),H.exports);var y1=($,H)=>{for(var Q in H)m0($,Q,{get:H[Q],enumerable:!0,configurable:!0,set:(J)=>H[Q]=()=>J})};var _2=($,H)=>()=>($&&(H=$($=0)),H);var E8=b(()=>{/*! *****************************************************************************
2
2
  Copyright (C) Microsoft. All rights reserved.
3
3
  Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4
4
  this file except in compliance with the License. You may obtain a copy of the
@@ -11,7 +11,33 @@ MERCHANTABLITY OR NON-INFRINGEMENT.
11
11
 
12
12
  See the Apache Version 2.0 License for specific language governing permissions
13
13
  and limitations under the License.
14
- ***************************************************************************** */var _2;(function($){(function(f){var H=typeof globalThis==="object"?globalThis:typeof global==="object"?global:typeof self==="object"?self:typeof this==="object"?this:Y(),Q=X($);if(typeof H.Reflect<"u")Q=X(H.Reflect,Q);if(f(Q,H),typeof H.Reflect>"u")H.Reflect=$;function X(G,_){return function(S,A){if(Object.defineProperty(G,S,{configurable:!0,writable:!0,value:A}),_)_(S,A)}}function J(){try{return Function("return this;")()}catch(G){}}function W(){try{return(0,eval)("(function() { return this; })()")}catch(G){}}function Y(){return J()||W()}})(function(f,H){var Q=Object.prototype.hasOwnProperty,X=typeof Symbol==="function",J=X&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",W=X&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",Y=typeof Object.create==="function",G={__proto__:[]}instanceof Array,_=!Y&&!G,S={create:Y?function(){return k1(Object.create(null))}:G?function(){return k1({__proto__:null})}:function(){return k1({})},has:_?function(q,B){return Q.call(q,B)}:function(q,B){return B in q},get:_?function(q,B){return Q.call(q,B)?q[B]:void 0}:function(q,B){return q[B]}},A=Object.getPrototypeOf(Function),k=typeof Map==="function"&&typeof Map.prototype.entries==="function"?Map:Qf(),Z=typeof Set==="function"&&typeof Set.prototype.entries==="function"?Set:Xf(),h=typeof WeakMap==="function"?WeakMap:Jf(),T=X?Symbol.for("@reflect-metadata:registry"):void 0,m=$f(),o=ff(m);function e(q,B,z,L){if(!O(z)){if(!P$(q))throw TypeError();if(!n(B))throw TypeError();if(!n(L)&&!O(L)&&!h0(L))throw TypeError();if(h0(L))L=void 0;return z=q0(z),o2(q,B,z,L)}else{if(!P$(q))throw TypeError();if(!K$(B))throw TypeError();return s2(q,B)}}f("decorate",e);function i(q,B){function z(L,F){if(!n(L))throw TypeError();if(!O(F)&&!a2(F))throw TypeError();v$(q,B,L,F)}return z}f("metadata",i);function $0(q,B,z,L){if(!n(z))throw TypeError();if(!O(L))L=q0(L);return v$(q,B,z,L)}f("defineMetadata",$0);function s(q,B,z){if(!n(B))throw TypeError();if(!O(z))z=q0(z);return U$(q,B,z)}f("hasMetadata",s);function t(q,B,z){if(!n(B))throw TypeError();if(!O(z))z=q0(z);return v1(q,B,z)}f("hasOwnMetadata",t);function f0(q,B,z){if(!n(B))throw TypeError();if(!O(z))z=q0(z);return C$(q,B,z)}f("getMetadata",f0);function C1(q,B,z){if(!n(B))throw TypeError();if(!O(z))z=q0(z);return O$(q,B,z)}f("getOwnMetadata",C1);function G0(q,B){if(!n(q))throw TypeError();if(!O(B))B=q0(B);return h$(q,B)}f("getMetadataKeys",G0);function O1(q,B){if(!n(q))throw TypeError();if(!O(B))B=q0(B);return M$(q,B)}f("getOwnMetadataKeys",O1);function A$(q,B,z){if(!n(B))throw TypeError();if(!O(z))z=q0(z);if(!n(B))throw TypeError();if(!O(z))z=q0(z);var L=p0(B,z,!1);if(O(L))return!1;return L.OrdinaryDeleteMetadata(q,B,z)}f("deleteMetadata",A$);function s2(q,B){for(var z=q.length-1;z>=0;--z){var L=q[z],F=L(B);if(!O(F)&&!h0(F)){if(!K$(F))throw TypeError();B=F}}return B}function o2(q,B,z,L){for(var F=q.length-1;F>=0;--F){var c=q[F],y=c(B,z,L);if(!O(y)&&!h0(y)){if(!n(y))throw TypeError();L=y}}return L}function U$(q,B,z){var L=v1(q,B,z);if(L)return!0;var F=M1(B);if(!h0(F))return U$(q,F,z);return!1}function v1(q,B,z){var L=p0(B,z,!1);if(O(L))return!1;return I$(L.OrdinaryHasOwnMetadata(q,B,z))}function C$(q,B,z){var L=v1(q,B,z);if(L)return O$(q,B,z);var F=M1(B);if(!h0(F))return C$(q,F,z);return}function O$(q,B,z){var L=p0(B,z,!1);if(O(L))return;return L.OrdinaryGetOwnMetadata(q,B,z)}function v$(q,B,z,L){var F=p0(z,L,!0);F.OrdinaryDefineOwnMetadata(q,B,z,L)}function h$(q,B){var z=M$(q,B),L=M1(q);if(L===null)return z;var F=h$(L,B);if(F.length<=0)return z;if(z.length<=0)return F;var c=new Z,y=[];for(var I=0,V=z;I<V.length;I++){var R=V[I],E=c.has(R);if(!E)c.add(R),y.push(R)}for(var b=0,K=F;b<K.length;b++){var R=K[b],E=c.has(R);if(!E)c.add(R),y.push(R)}return y}function M$(q,B){var z=p0(q,B,!1);if(!z)return[];return z.OrdinaryOwnMetadataKeys(q,B)}function k$(q){if(q===null)return 1;switch(typeof q){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return q===null?1:6;default:return 6}}function O(q){return q===void 0}function h0(q){return q===null}function d2(q){return typeof q==="symbol"}function n(q){return typeof q==="object"?q!==null:typeof q==="function"}function p2(q,B){switch(k$(q)){case 0:return q;case 1:return q;case 2:return q;case 3:return q;case 4:return q;case 5:return q}var z=B===3?"string":B===5?"number":"default",L=T$(q,J);if(L!==void 0){var F=L.call(q,z);if(n(F))throw TypeError();return F}return r2(q,z==="default"?"number":z)}function r2(q,B){if(B==="string"){var z=q.toString;if(M0(z)){var L=z.call(q);if(!n(L))return L}var F=q.valueOf;if(M0(F)){var L=F.call(q);if(!n(L))return L}}else{var F=q.valueOf;if(M0(F)){var L=F.call(q);if(!n(L))return L}var c=q.toString;if(M0(c)){var L=c.call(q);if(!n(L))return L}}throw TypeError()}function I$(q){return!!q}function t2(q){return""+q}function q0(q){var B=p2(q,3);if(d2(B))return B;return t2(B)}function P$(q){return Array.isArray?Array.isArray(q):q instanceof Object?q instanceof Array:Object.prototype.toString.call(q)==="[object Array]"}function M0(q){return typeof q==="function"}function K$(q){return typeof q==="function"}function a2(q){switch(k$(q)){case 3:return!0;case 4:return!0;default:return!1}}function h1(q,B){return q===B||q!==q&&B!==B}function T$(q,B){var z=q[B];if(z===void 0||z===null)return;if(!M0(z))throw TypeError();return z}function x$(q){var B=T$(q,W);if(!M0(B))throw TypeError();var z=B.call(q);if(!n(z))throw TypeError();return z}function g$(q){return q.value}function l$(q){var B=q.next();return B.done?!1:B}function Z$(q){var B=q.return;if(B)B.call(q)}function M1(q){var B=Object.getPrototypeOf(q);if(typeof q!=="function"||q===A)return B;if(B!==A)return B;var z=q.prototype,L=z&&Object.getPrototypeOf(z);if(L==null||L===Object.prototype)return B;var F=L.constructor;if(typeof F!=="function")return B;if(F===q)return B;return F}function e2(){var q;if(!O(T)&&typeof H.Reflect<"u"&&!(T in H.Reflect)&&typeof H.Reflect.defineMetadata==="function")q=Hf(H.Reflect);var B,z,L,F=new h,c={registerProvider:y,getProvider:V,setProvider:E};return c;function y(b){if(!Object.isExtensible(c))throw Error("Cannot add provider to a frozen registry.");switch(!0){case q===b:break;case O(B):B=b;break;case B===b:break;case O(z):z=b;break;case z===b:break;default:if(L===void 0)L=new Z;L.add(b);break}}function I(b,K){if(!O(B)){if(B.isProviderFor(b,K))return B;if(!O(z)){if(z.isProviderFor(b,K))return B;if(!O(L)){var x=x$(L);while(!0){var u=l$(x);if(!u)return;var H0=g$(u);if(H0.isProviderFor(b,K))return Z$(x),H0}}}}if(!O(q)&&q.isProviderFor(b,K))return q;return}function V(b,K){var x=F.get(b),u;if(!O(x))u=x.get(K);if(!O(u))return u;if(u=I(b,K),!O(u)){if(O(x))x=new k,F.set(b,x);x.set(K,u)}return u}function R(b){if(O(b))throw TypeError();return B===b||z===b||!O(L)&&L.has(b)}function E(b,K,x){if(!R(x))throw Error("Metadata provider not registered.");var u=V(b,K);if(u!==x){if(!O(u))return!1;var H0=F.get(b);if(O(H0))H0=new k,F.set(b,H0);H0.set(K,x)}return!0}}function $f(){var q;if(!O(T)&&n(H.Reflect)&&Object.isExtensible(H.Reflect))q=H.Reflect[T];if(O(q))q=e2();if(!O(T)&&n(H.Reflect)&&Object.isExtensible(H.Reflect))Object.defineProperty(H.Reflect,T,{enumerable:!1,configurable:!1,writable:!1,value:q});return q}function ff(q){var B=new h,z={isProviderFor:function(R,E){var b=B.get(R);if(O(b))return!1;return b.has(E)},OrdinaryDefineOwnMetadata:y,OrdinaryHasOwnMetadata:F,OrdinaryGetOwnMetadata:c,OrdinaryOwnMetadataKeys:I,OrdinaryDeleteMetadata:V};return m.registerProvider(z),z;function L(R,E,b){var K=B.get(R),x=!1;if(O(K)){if(!b)return;K=new k,B.set(R,K),x=!0}var u=K.get(E);if(O(u)){if(!b)return;if(u=new k,K.set(E,u),!q.setProvider(R,E,z)){if(K.delete(E),x)B.delete(R);throw Error("Wrong provider for target.")}}return u}function F(R,E,b){var K=L(E,b,!1);if(O(K))return!1;return I$(K.has(R))}function c(R,E,b){var K=L(E,b,!1);if(O(K))return;return K.get(R)}function y(R,E,b,K){var x=L(b,K,!0);x.set(R,E)}function I(R,E){var b=[],K=L(R,E,!1);if(O(K))return b;var x=K.keys(),u=x$(x),H0=0;while(!0){var m$=l$(u);if(!m$)return b.length=H0,b;var Wf=g$(m$);try{b[H0]=Wf}catch(Yf){try{Z$(u)}finally{throw Yf}}H0++}}function V(R,E,b){var K=L(E,b,!1);if(O(K))return!1;if(!K.delete(R))return!1;if(K.size===0){var x=B.get(E);if(!O(x)){if(x.delete(b),x.size===0)B.delete(x)}}return!0}}function Hf(q){var{defineMetadata:B,hasOwnMetadata:z,getOwnMetadata:L,getOwnMetadataKeys:F,deleteMetadata:c}=q,y=new h,I={isProviderFor:function(V,R){var E=y.get(V);if(!O(E)&&E.has(R))return!0;if(F(V,R).length){if(O(E))E=new Z,y.set(V,E);return E.add(R),!0}return!1},OrdinaryDefineOwnMetadata:B,OrdinaryHasOwnMetadata:z,OrdinaryGetOwnMetadata:L,OrdinaryOwnMetadataKeys:F,OrdinaryDeleteMetadata:c};return I}function p0(q,B,z){var L=m.getProvider(q,B);if(!O(L))return L;if(z){if(m.setProvider(q,B,o))return o;throw Error("Illegal state.")}return}function Qf(){var q={},B=[],z=function(){function I(V,R,E){this._index=0,this._keys=V,this._values=R,this._selector=E}return I.prototype["@@iterator"]=function(){return this},I.prototype[W]=function(){return this},I.prototype.next=function(){var V=this._index;if(V>=0&&V<this._keys.length){var R=this._selector(this._keys[V],this._values[V]);if(V+1>=this._keys.length)this._index=-1,this._keys=B,this._values=B;else this._index++;return{value:R,done:!1}}return{value:void 0,done:!0}},I.prototype.throw=function(V){if(this._index>=0)this._index=-1,this._keys=B,this._values=B;throw V},I.prototype.return=function(V){if(this._index>=0)this._index=-1,this._keys=B,this._values=B;return{value:V,done:!0}},I}(),L=function(){function I(){this._keys=[],this._values=[],this._cacheKey=q,this._cacheIndex=-2}return Object.defineProperty(I.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),I.prototype.has=function(V){return this._find(V,!1)>=0},I.prototype.get=function(V){var R=this._find(V,!1);return R>=0?this._values[R]:void 0},I.prototype.set=function(V,R){var E=this._find(V,!0);return this._values[E]=R,this},I.prototype.delete=function(V){var R=this._find(V,!1);if(R>=0){var E=this._keys.length;for(var b=R+1;b<E;b++)this._keys[b-1]=this._keys[b],this._values[b-1]=this._values[b];if(this._keys.length--,this._values.length--,h1(V,this._cacheKey))this._cacheKey=q,this._cacheIndex=-2;return!0}return!1},I.prototype.clear=function(){this._keys.length=0,this._values.length=0,this._cacheKey=q,this._cacheIndex=-2},I.prototype.keys=function(){return new z(this._keys,this._values,F)},I.prototype.values=function(){return new z(this._keys,this._values,c)},I.prototype.entries=function(){return new z(this._keys,this._values,y)},I.prototype["@@iterator"]=function(){return this.entries()},I.prototype[W]=function(){return this.entries()},I.prototype._find=function(V,R){if(!h1(this._cacheKey,V)){this._cacheIndex=-1;for(var E=0;E<this._keys.length;E++)if(h1(this._keys[E],V)){this._cacheIndex=E;break}}if(this._cacheIndex<0&&R)this._cacheIndex=this._keys.length,this._keys.push(V),this._values.push(void 0);return this._cacheIndex},I}();return L;function F(I,V){return I}function c(I,V){return V}function y(I,V){return[I,V]}}function Xf(){var q=function(){function B(){this._map=new k}return Object.defineProperty(B.prototype,"size",{get:function(){return this._map.size},enumerable:!0,configurable:!0}),B.prototype.has=function(z){return this._map.has(z)},B.prototype.add=function(z){return this._map.set(z,z),this},B.prototype.delete=function(z){return this._map.delete(z)},B.prototype.clear=function(){this._map.clear()},B.prototype.keys=function(){return this._map.keys()},B.prototype.values=function(){return this._map.keys()},B.prototype.entries=function(){return this._map.entries()},B.prototype["@@iterator"]=function(){return this.keys()},B.prototype[W]=function(){return this.keys()},B}();return q}function Jf(){var q=16,B=S.create(),z=L();return function(){function V(){this._key=L()}return V.prototype.has=function(R){var E=F(R,!1);return E!==void 0?S.has(E,this._key):!1},V.prototype.get=function(R){var E=F(R,!1);return E!==void 0?S.get(E,this._key):void 0},V.prototype.set=function(R,E){var b=F(R,!0);return b[this._key]=E,this},V.prototype.delete=function(R){var E=F(R,!1);return E!==void 0?delete E[this._key]:!1},V.prototype.clear=function(){this._key=L()},V}();function L(){var V;do V="@@WeakMap@@"+I();while(S.has(B,V));return B[V]=!0,V}function F(V,R){if(!Q.call(V,z)){if(!R)return;Object.defineProperty(V,z,{value:S.create()})}return V[z]}function c(V,R){for(var E=0;E<R;++E)V[E]=Math.random()*255|0;return V}function y(V){if(typeof Uint8Array==="function"){var R=new Uint8Array(V);if(typeof crypto<"u")crypto.getRandomValues(R);else if(typeof msCrypto<"u")msCrypto.getRandomValues(R);else c(R,V);return R}return c(Array(V),V)}function I(){var V=y(q);V[6]=V[6]&79|64,V[8]=V[8]&191|128;var R="";for(var E=0;E<q;++E){var b=V[E];if(E===4||E===6||E===8)R+="-";if(b<16)R+="0";R+=b.toString(16).toLowerCase()}return R}}function k1(q){return q.__=void 0,delete q.__,q}})})(_2||(_2={}))});var a,If,Pf,Kf,B$;var X1=y$(()=>{a=class a extends Error{statusCode;details;constructor($,f,H){super(f);this.statusCode=$;this.details=H;if(this.name="HTTPException",Error.captureStackTrace)Error.captureStackTrace(this,this.constructor)}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};If=class If extends a{constructor($="Not Found",f){super(404,$,f);this.name="NotFoundException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};Pf=class Pf extends a{constructor($="Unauthorized",f){super(401,$,f);this.name="UnauthorizedException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};Kf=class Kf extends a{constructor($="Forbidden",f){super(403,$,f);this.name="ForbiddenException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};B$=class B$ extends a{constructor($="Bad Request",f){super(400,$,f);this.name="BadRequestException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}}});var D2={};t0(D2,{TokenRevokedException:()=>E2,TokenExpiredException:()=>V2,InvalidTokenException:()=>R2,AuthorizationException:()=>N2,AuthenticationException:()=>J1});var J1,N2,V2,R2,E2;var b2=y$(()=>{X1();J1=class J1 extends a{constructor($="Authentication required"){super(401,$);this.name="AuthenticationException"}toJSON(){return{error:"Authentication Error",message:this.message,statusCode:401}}};N2=class N2 extends a{constructor($="Insufficient permissions"){super(403,$);this.name="AuthorizationException"}toJSON(){return{error:"Authorization Error",message:this.message,statusCode:403}}};V2=class V2 extends J1{constructor($="Token has expired"){super($);this.name="TokenExpiredException"}};R2=class R2 extends J1{constructor($="Invalid token"){super($);this.name="InvalidTokenException"}};E2=class E2 extends J1{constructor($="Token has been revoked"){super($);this.name="TokenRevokedException"}}});var E$={};t0(E$,{HonoAdapter:()=>l2});class l2{hono;name="hono";runtime;constructor($){this.hono=$;this.runtime=s4()}listen($,f){switch(this.runtime){case"bun":return this.listenBun($,f);case"deno":return this.listenDeno($,f);case"node":return this.listenNode($,f);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($,f){let H=Bun.serve({port:$,fetch:this.hono.fetch});if(f)f();return H}listenDeno($,f){let H=new AbortController;return Deno.serve({port:$,signal:H.signal,onListen:f},this.hono.fetch),{port:$,close:()=>H.abort()}}listenNode($,f){try{let{serve:H}=(()=>{throw new Error("Cannot require module "+"@hono/node-server");})();return H({fetch:this.hono.fetch,port:$},f)}catch(H){throw Error("Node.js adapter requires @hono/node-server package. Install it with: npm install @hono/node-server")}}}var s4=()=>{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 m2={};t0(m2,{ExpressAdapter:()=>Z2});class Z2{app;name="express";express;constructor($){this.app=$;try{let f=(()=>{throw new Error("Cannot require module "+"express");})();this.express=f(),this.setupBridge()}catch(f){throw Error("Express adapter requires express package. Install it with: npm install express")}}setupBridge(){let $=this.app.getHono();this.express.use(async(f,H)=>{try{let Q=this.createWebRequest(f),X=await $.fetch(Q);await this.sendExpressResponse(H,X)}catch(Q){H.status(500).json({error:"Internal Server Error",message:Q instanceof Error?Q.message:"Unknown error"})}})}createWebRequest($){let f=$.protocol||"http",H=$.get("host")||"localhost",Q=`${f}://${H}${$.originalUrl||$.url}`,X=new Headers;for(let[W,Y]of Object.entries($.headers))if(typeof Y==="string")X.set(W,Y);else if(Array.isArray(Y))Y.forEach((G)=>X.append(W,G));let J={method:$.method,headers:X};if($.method!=="GET"&&$.method!=="HEAD"){if($.body)J.body=JSON.stringify($.body),X.set("content-type","application/json")}return new Request(Q,J)}async sendExpressResponse($,f){if($.status(f.status),f.headers.forEach((H,Q)=>{$.setHeader(Q,H)}),f.body){let H=f.headers.get("content-type")||"";if(H.includes("application/json")){let Q=await f.json();$.json(Q)}else if(H.includes("text/")){let Q=await f.text();$.send(Q)}else{let Q=await f.arrayBuffer();$.send(Buffer.from(Q))}}else $.end()}listen($,f){return this.express.listen($,f)}getHandler(){return this.express}getExpressApp(){return this.express}}var o4={};t0(o4,{setupTestApp:()=>y2,mockDependency:()=>u2,createTestClient:()=>F$,createTestApp:()=>b$,clearMocks:()=>i2,TestClient:()=>a0});module.exports=w1(o4);class a0{hono;constructor($){this.hono=$.getHono()}async get($,f){return this.request("GET",$,f)}async post($,f){return this.request("POST",$,f)}async put($,f){return this.request("PUT",$,f)}async delete($,f){return this.request("DELETE",$,f)}async patch($,f){return this.request("PATCH",$,f)}async request($,f,H){let Q=this.buildUrl(f,H?.query),X={method:$,headers:this.buildHeaders(H)};if(H?.body!==void 0)X.body=H.body;else if(H?.json!==void 0)X.body=JSON.stringify(H.json);let J=await this.hono.request(Q,X),W=await J.text(),Y;try{Y=JSON.parse(W)}catch{Y=W}return{status:J.status,headers:J.headers,body:Y,text:W,json:async()=>JSON.parse(W),ok:J.ok}}buildUrl($,f){if(!f||Object.keys(f).length===0)return $;let H=new URLSearchParams(f).toString();return`${$}?${H}`}buildHeaders($){let f={...$?.headers};if($?.json!==void 0&&!f["Content-Type"])f["Content-Type"]="application/json";return f}}var I1=($,f,H)=>{return(Q,X)=>{let J=-1;return W(0);async function W(Y){if(Y<=J)throw Error("next() called multiple times");J=Y;let G,_=!1,S;if($[Y])S=$[Y][0][0],Q.req.routeIndex=Y;else S=Y===$.length&&X||void 0;if(S)try{G=await S(Q,()=>W(Y+1))}catch(A){if(A instanceof Error&&f)Q.error=A,G=await f(A,Q),_=!0;else throw A}else if(Q.finalized===!1&&H)G=await H(Q);if(G&&(Q.finalized===!1||_))Q.res=G;return Q}}};var i$=Symbol();var s$=async($,f=Object.create(null))=>{let{all:H=!1,dot:Q=!1}=f,J=($ instanceof j1?$.raw.headers:$.headers).get("Content-Type");if(J?.startsWith("multipart/form-data")||J?.startsWith("application/x-www-form-urlencoded"))return wf($,{all:H,dot:Q});return{}};async function wf($,f){let H=await $.formData();if(H)return jf(H,f);return{}}function jf($,f){let H=Object.create(null);if($.forEach((Q,X)=>{if(!(f.all||X.endsWith("[]")))H[X]=Q;else Lf(H,X,Q)}),f.dot)Object.entries(H).forEach(([Q,X])=>{if(Q.includes("."))Sf(H,Q,X),delete H[Q]});return H}var Lf=($,f,H)=>{if($[f]!==void 0)if(Array.isArray($[f]))$[f].push(H);else $[f]=[$[f],H];else if(!f.endsWith("[]"))$[f]=H;else $[f]=[H]},Sf=($,f,H)=>{let Q=$,X=f.split(".");X.forEach((J,W)=>{if(W===X.length-1)Q[J]=H;else{if(!Q[J]||typeof Q[J]!=="object"||Array.isArray(Q[J])||Q[J]instanceof File)Q[J]=Object.create(null);Q=Q[J]}})};var K1=($)=>{let f=$.split("/");if(f[0]==="")f.shift();return f},o$=($)=>{let{groups:f,path:H}=Nf($),Q=K1(H);return Vf(Q,f)},Nf=($)=>{let f=[];return $=$.replace(/\{[^}]+\}/g,(H,Q)=>{let X=`@${Q}`;return f.push([X,H]),X}),{groups:f,path:$}},Vf=($,f)=>{for(let H=f.length-1;H>=0;H--){let[Q]=f[H];for(let X=$.length-1;X>=0;X--)if($[X].includes(Q)){$[X]=$[X].replace(Q,f[H][1]);break}}return $},L1={},d$=($,f)=>{if($==="*")return"*";let H=$.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);if(H){let Q=`${$}#${f}`;if(!L1[Q])if(H[2])L1[Q]=f&&f[0]!==":"&&f[0]!=="*"?[Q,H[1],new RegExp(`^${H[2]}(?=/${f})`)]:[$,H[1],new RegExp(`^${H[2]}$`)];else L1[Q]=[$,H[1],!0];return L1[Q]}return null},k0=($,f)=>{try{return f($)}catch{return $.replace(/(?:%[0-9A-Fa-f]{2})+/g,(H)=>{try{return f(H)}catch{return H}})}},Rf=($)=>k0($,decodeURI),T1=($)=>{let f=$.url,H=f.indexOf("/",f.indexOf(":")+4),Q=H;for(;Q<f.length;Q++){let X=f.charCodeAt(Q);if(X===37){let J=f.indexOf("?",Q),W=f.slice(H,J===-1?void 0:J);return Rf(W.includes("%25")?W.replace(/%25/g,"%2525"):W)}else if(X===63)break}return f.slice(H,Q)};var p$=($)=>{let f=T1($);return f.length>1&&f.at(-1)==="/"?f.slice(0,-1):f},b0=($,f,...H)=>{if(H.length)f=b0(f,...H);return`${$?.[0]==="/"?"":"/"}${$}${f==="/"?"":`${$?.at(-1)==="/"?"":"/"}${f?.[0]==="/"?f.slice(1):f}`}`},S1=($)=>{if($.charCodeAt($.length-1)!==63||!$.includes(":"))return null;let f=$.split("/"),H=[],Q="";return f.forEach((X)=>{if(X!==""&&!/\:/.test(X))Q+="/"+X;else if(/\:/.test(X))if(/\?/.test(X)){if(H.length===0&&Q==="")H.push("/");else H.push(Q);let J=X.replace("?","");Q+="/"+J,H.push(Q)}else Q+="/"+X}),H.filter((X,J,W)=>W.indexOf(X)===J)},P1=($)=>{if(!/[%+]/.test($))return $;if($.indexOf("+")!==-1)$=$.replace(/\+/g," ");return $.indexOf("%")!==-1?k0($,e0):$},r$=($,f,H)=>{let Q;if(!H&&f&&!/[%+]/.test(f)){let W=$.indexOf(`?${f}`,8);if(W===-1)W=$.indexOf(`&${f}`,8);while(W!==-1){let Y=$.charCodeAt(W+f.length+1);if(Y===61){let G=W+f.length+2,_=$.indexOf("&",G);return P1($.slice(G,_===-1?void 0:_))}else if(Y==38||isNaN(Y))return"";W=$.indexOf(`&${f}`,W+1)}if(Q=/[%+]/.test($),!Q)return}let X={};Q??=/[%+]/.test($);let J=$.indexOf("?",8);while(J!==-1){let W=$.indexOf("&",J+1),Y=$.indexOf("=",J);if(Y>W&&W!==-1)Y=-1;let G=$.slice(J+1,Y===-1?W===-1?void 0:W:Y);if(Q)G=P1(G);if(J=W,G==="")continue;let _;if(Y===-1)_="";else if(_=$.slice(Y+1,W===-1?void 0:W),Q)_=P1(_);if(H){if(!(X[G]&&Array.isArray(X[G])))X[G]=[];X[G].push(_)}else X[G]??=_}return f?X[f]:X},t$=r$,a$=($,f)=>{return r$($,f,!0)},e0=decodeURIComponent;var e$=($)=>k0($,e0),j1=class{raw;#f;#$;routeIndex=0;path;bodyCache={};constructor($,f="/",H=[[]]){this.raw=$,this.path=f,this.#$=H,this.#f={}}param($){return $?this.#H($):this.#J()}#H($){let f=this.#$[0][this.routeIndex][1][$],H=this.#X(f);return H&&/\%/.test(H)?e$(H):H}#J(){let $={},f=Object.keys(this.#$[0][this.routeIndex][1]);for(let H of f){let Q=this.#X(this.#$[0][this.routeIndex][1][H]);if(Q!==void 0)$[H]=/\%/.test(Q)?e$(Q):Q}return $}#X($){return this.#$[1]?this.#$[1][$]:$}query($){return t$(this.url,$)}queries($){return a$(this.url,$)}header($){if($)return this.raw.headers.get($)??void 0;let f={};return this.raw.headers.forEach((H,Q)=>{f[Q]=H}),f}async parseBody($){return this.bodyCache.parsedBody??=await s$(this,$)}#Q=($)=>{let{bodyCache:f,raw:H}=this,Q=f[$];if(Q)return Q;let X=Object.keys(f)[0];if(X)return f[X].then((J)=>{if(X==="json")J=JSON.stringify(J);return new Response(J)[$]()});return f[$]=H[$]()};json(){return this.#Q("text").then(($)=>JSON.parse($))}text(){return this.#Q("text")}arrayBuffer(){return this.#Q("arrayBuffer")}blob(){return this.#Q("blob")}formData(){return this.#Q("formData")}addValidatedData($,f){this.#f[$]=f}valid($){return this.#f[$]}get url(){return this.raw.url}get method(){return this.raw.method}get[i$](){return this.#$}get matchedRoutes(){return this.#$[0].map(([[,$]])=>$)}get routePath(){return this.#$[0].map(([[,$]])=>$)[this.routeIndex].path}};var $2={Stringify:1,BeforeStream:2,Stream:3},Ef=($,f)=>{let H=new String($);return H.isEscaped=!0,H.callbacks=f,H};var x1=async($,f,H,Q,X)=>{if(typeof $==="object"&&!($ instanceof String)){if(!($ instanceof Promise))$=$.toString();if($ instanceof Promise)$=await $}let J=$.callbacks;if(!J?.length)return Promise.resolve($);if(X)X[0]+=$;else X=[$];let W=Promise.all(J.map((Y)=>Y({phase:f,buffer:X,context:Q}))).then((Y)=>Promise.all(Y.filter(Boolean).map((G)=>x1(G,f,!1,Q,X))).then(()=>X[0]));if(H)return Ef(await W,J);else return W};var Df="text/plain; charset=UTF-8",g1=($,f)=>{return{"Content-Type":$,...f}},f2=class{#f;#$;env={};#H;finalized=!1;error;#J;#X;#Q;#_;#G;#q;#Y;#B;#z;constructor($,f){if(this.#f=$,f)this.#X=f.executionCtx,this.env=f.env,this.#q=f.notFoundHandler,this.#z=f.path,this.#B=f.matchResult}get req(){return this.#$??=new j1(this.#f,this.#z,this.#B),this.#$}get event(){if(this.#X&&"respondWith"in this.#X)return this.#X;else throw Error("This context has no FetchEvent")}get executionCtx(){if(this.#X)return this.#X;else throw Error("This context has no ExecutionContext")}get res(){return this.#Q||=new Response(null,{headers:this.#Y??=new Headers})}set res($){if(this.#Q&&$){$=new Response($.body,$);for(let[f,H]of this.#Q.headers.entries()){if(f==="content-type")continue;if(f==="set-cookie"){let Q=this.#Q.headers.getSetCookie();$.headers.delete("set-cookie");for(let X of Q)$.headers.append("set-cookie",X)}else $.headers.set(f,H)}}this.#Q=$,this.finalized=!0}render=(...$)=>{return this.#G??=(f)=>this.html(f),this.#G(...$)};setLayout=($)=>this.#_=$;getLayout=()=>this.#_;setRenderer=($)=>{this.#G=$};header=($,f,H)=>{if(this.finalized)this.#Q=new Response(this.#Q.body,this.#Q);let Q=this.#Q?this.#Q.headers:this.#Y??=new Headers;if(f===void 0)Q.delete($);else if(H?.append)Q.append($,f);else Q.set($,f)};status=($)=>{this.#J=$};set=($,f)=>{this.#H??=new Map,this.#H.set($,f)};get=($)=>{return this.#H?this.#H.get($):void 0};get var(){if(!this.#H)return{};return Object.fromEntries(this.#H)}#W($,f,H){let Q=this.#Q?new Headers(this.#Q.headers):this.#Y??new Headers;if(typeof f==="object"&&"headers"in f){let J=f.headers instanceof Headers?f.headers:new Headers(f.headers);for(let[W,Y]of J)if(W.toLowerCase()==="set-cookie")Q.append(W,Y);else Q.set(W,Y)}if(H)for(let[J,W]of Object.entries(H))if(typeof W==="string")Q.set(J,W);else{Q.delete(J);for(let Y of W)Q.append(J,Y)}let X=typeof f==="number"?f:f?.status??this.#J;return new Response($,{status:X,headers:Q})}newResponse=(...$)=>this.#W(...$);body=($,f,H)=>this.#W($,f,H);text=($,f,H)=>{return!this.#Y&&!this.#J&&!f&&!H&&!this.finalized?new Response($):this.#W($,f,g1(Df,H))};json=($,f,H)=>{return this.#W(JSON.stringify($),f,g1("application/json",H))};html=($,f,H)=>{let Q=(X)=>this.#W(X,f,g1("text/html; charset=UTF-8",H));return typeof $==="object"?x1($,$2.Stringify,!1,{}).then(Q):Q($)};redirect=($,f)=>{let H=String($);return this.header("Location",!/[^\x00-\xFF]/.test(H)?H:encodeURI(H)),this.newResponse(null,f??302)};notFound=()=>{return this.#q??=()=>new Response,this.#q(this)}};var l="ALL",H2="all",Q2=["get","post","put","delete","options","patch"],N1="Can not add a route since the matcher is already built.",V1=class extends Error{};var X2="__COMPOSED_HANDLER";var bf=($)=>{return $.text("404 Not Found",404)},J2=($,f)=>{if("getResponse"in $){let H=$.getResponse();return f.newResponse(H.body,H)}return console.error($),f.text("Internal Server Error",500)},l1=class{get;post;put;delete;options;patch;all;on;use;router;getPath;_basePath="/";#f="/";routes=[];constructor($={}){[...Q2,H2].forEach((X)=>{this[X]=(J,...W)=>{if(typeof J==="string")this.#f=J;else this.#J(X,this.#f,J);return W.forEach((Y)=>{this.#J(X,this.#f,Y)}),this}}),this.on=(X,J,...W)=>{for(let Y of[J].flat()){this.#f=Y;for(let G of[X].flat())W.map((_)=>{this.#J(G.toUpperCase(),this.#f,_)})}return this},this.use=(X,...J)=>{if(typeof X==="string")this.#f=X;else this.#f="*",J.unshift(X);return J.forEach((W)=>{this.#J(l,this.#f,W)}),this};let{strict:H,...Q}=$;Object.assign(this,Q),this.getPath=H??!0?$.getPath??T1:p$}#$(){let $=new l1({router:this.router,getPath:this.getPath});return $.errorHandler=this.errorHandler,$.#H=this.#H,$.routes=this.routes,$}#H=bf;errorHandler=J2;route($,f){let H=this.basePath($);return f.routes.map((Q)=>{let X;if(f.errorHandler===J2)X=Q.handler;else X=async(J,W)=>(await I1([],f.errorHandler)(J,()=>Q.handler(J,W))).res,X[X2]=Q.handler;H.#J(Q.method,Q.path,X)}),this}basePath($){let f=this.#$();return f._basePath=b0(this._basePath,$),f}onError=($)=>{return this.errorHandler=$,this};notFound=($)=>{return this.#H=$,this};mount($,f,H){let Q,X;if(H)if(typeof H==="function")X=H;else if(X=H.optionHandler,H.replaceRequest===!1)Q=(Y)=>Y;else Q=H.replaceRequest;let J=X?(Y)=>{let G=X(Y);return Array.isArray(G)?G:[G]}:(Y)=>{let G=void 0;try{G=Y.executionCtx}catch{}return[Y.env,G]};Q||=(()=>{let Y=b0(this._basePath,$),G=Y==="/"?0:Y.length;return(_)=>{let S=new URL(_.url);return S.pathname=S.pathname.slice(G)||"/",new Request(S,_)}})();let W=async(Y,G)=>{let _=await f(Q(Y.req.raw),...J(Y));if(_)return _;await G()};return this.#J(l,b0($,"*"),W),this}#J($,f,H){$=$.toUpperCase(),f=b0(this._basePath,f);let Q={basePath:this._basePath,path:f,method:$,handler:H};this.router.add($,f,[H,Q]),this.routes.push(Q)}#X($,f){if($ instanceof Error)return this.errorHandler($,f);throw $}#Q($,f,H,Q){if(Q==="HEAD")return(async()=>new Response(null,await this.#Q($,f,H,"GET")))();let X=this.getPath($,{env:H}),J=this.router.match(Q,X),W=new f2($,{path:X,matchResult:J,env:H,executionCtx:f,notFoundHandler:this.#H});if(J[0].length===1){let G;try{G=J[0][0][0][0](W,async()=>{W.res=await this.#H(W)})}catch(_){return this.#X(_,W)}return G instanceof Promise?G.then((_)=>_||(W.finalized?W.res:this.#H(W))).catch((_)=>this.#X(_,W)):G??this.#H(W)}let Y=I1(J[0],this.errorHandler,this.#H);return(async()=>{try{let G=await Y(W);if(!G.finalized)throw Error("Context is not finalized. Did you forget to return a Response object or `await next()`?");return G.res}catch(G){return this.#X(G,W)}})()}fetch=($,...f)=>{return this.#Q($,f[1],f[0],$.method)};request=($,f,H,Q)=>{if($ instanceof Request)return this.fetch(f?new Request($,f):$,H,Q);return $=$.toString(),this.fetch(new Request(/^https?:\/\//.test($)?$:`http://localhost${b0("/",$)}`,f),H,Q)};fire=()=>{addEventListener("fetch",($)=>{$.respondWith(this.#Q($.request,$,void 0,$.request.method))})}};var R1="[^/]+",$1=".*",f1="(?:|/.*)",F0=Symbol(),Ff=new Set(".\\+*[^]$()");function Af($,f){if($.length===1)return f.length===1?$<f?-1:1:-1;if(f.length===1)return 1;if($===$1||$===f1)return 1;else if(f===$1||f===f1)return-1;if($===R1)return 1;else if(f===R1)return-1;return $.length===f.length?$<f?-1:1:f.length-$.length}var E1=class{#f;#$;#H=Object.create(null);insert($,f,H,Q,X){if($.length===0){if(this.#f!==void 0)throw F0;if(X)return;this.#f=f;return}let[J,...W]=$,Y=J==="*"?W.length===0?["","",$1]:["","",R1]:J==="/*"?["","",f1]:J.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/),G;if(Y){let _=Y[1],S=Y[2]||R1;if(_&&Y[2]){if(S===".*")throw F0;if(S=S.replace(/^\((?!\?:)(?=[^)]+\)$)/,"(?:"),/\((?!\?:)/.test(S))throw F0}if(G=this.#H[S],!G){if(Object.keys(this.#H).some((A)=>A!==$1&&A!==f1))throw F0;if(X)return;if(G=this.#H[S]=new E1,_!=="")G.#$=Q.varIndex++}if(!X&&_!=="")H.push([_,G.#$])}else if(G=this.#H[J],!G){if(Object.keys(this.#H).some((_)=>_.length>1&&_!==$1&&_!==f1))throw F0;if(X)return;G=this.#H[J]=new E1}G.insert(W,f,H,Q,X)}buildRegExpStr(){let f=Object.keys(this.#H).sort(Af).map((H)=>{let Q=this.#H[H];return(typeof Q.#$==="number"?`(${H})@${Q.#$}`:Ff.has(H)?`\\${H}`:H)+Q.buildRegExpStr()});if(typeof this.#f==="number")f.unshift(`#${this.#f}`);if(f.length===0)return"";if(f.length===1)return f[0];return"(?:"+f.join("|")+")"}};var W2=class{#f={varIndex:0};#$=new E1;insert($,f,H){let Q=[],X=[];for(let W=0;;){let Y=!1;if($=$.replace(/\{[^}]+\}/g,(G)=>{let _=`@\\${W}`;return X[W]=[_,G],W++,Y=!0,_}),!Y)break}let J=$.match(/(?::[^\/]+)|(?:\/\*$)|./g)||[];for(let W=X.length-1;W>=0;W--){let[Y]=X[W];for(let G=J.length-1;G>=0;G--)if(J[G].indexOf(Y)!==-1){J[G]=J[G].replace(Y,X[W][1]);break}}return this.#$.insert(J,f,Q,this.#f,H),Q}buildRegExp(){let $=this.#$.buildRegExpStr();if($==="")return[/^$/,[],[]];let f=0,H=[],Q=[];return $=$.replace(/#(\d+)|@(\d+)|\.\*\$/g,(X,J,W)=>{if(J!==void 0)return H[++f]=Number(J),"$()";if(W!==void 0)return Q[Number(W)]=++f,"";return""}),[new RegExp(`^${$}`),H,Q]}};var Y2=[],Uf=[/^$/,[],Object.create(null)],G2=Object.create(null);function q2($){return G2[$]??=new RegExp($==="*"?"":`^${$.replace(/\/\*$|([.\\+*[^\]$()])/g,(f,H)=>H?`\\${H}`:"(?:|/.*)")}$`)}function Cf(){G2=Object.create(null)}function Of($){let f=new W2,H=[];if($.length===0)return Uf;let Q=$.map((_)=>[!/\*|\/:/.test(_[0]),..._]).sort(([_,S],[A,k])=>_?1:A?-1:S.length-k.length),X=Object.create(null);for(let _=0,S=-1,A=Q.length;_<A;_++){let[k,Z,h]=Q[_];if(k)X[Z]=[h.map(([m])=>[m,Object.create(null)]),Y2];else S++;let T;try{T=f.insert(Z,S,k)}catch(m){throw m===F0?new V1(Z):m}if(k)continue;H[S]=h.map(([m,o])=>{let e=Object.create(null);o-=1;for(;o>=0;o--){let[i,$0]=T[o];e[i]=$0}return[m,e]})}let[J,W,Y]=f.buildRegExp();for(let _=0,S=H.length;_<S;_++)for(let A=0,k=H[_].length;A<k;A++){let Z=H[_][A]?.[1];if(!Z)continue;let h=Object.keys(Z);for(let T=0,m=h.length;T<m;T++)Z[h[T]]=Y[Z[h[T]]]}let G=[];for(let _ in W)G[_]=H[W[_]];return[J,G,X]}function I0($,f){if(!$)return;for(let H of Object.keys($).sort((Q,X)=>X.length-Q.length))if(q2(H).test(f))return[...$[H]];return}var Z1=class{name="RegExpRouter";#f;#$;constructor(){this.#f={[l]:Object.create(null)},this.#$={[l]:Object.create(null)}}add($,f,H){let Q=this.#f,X=this.#$;if(!Q||!X)throw Error(N1);if(!Q[$])[Q,X].forEach((Y)=>{Y[$]=Object.create(null),Object.keys(Y[l]).forEach((G)=>{Y[$][G]=[...Y[l][G]]})});if(f==="/*")f="*";let J=(f.match(/\/:/g)||[]).length;if(/\*$/.test(f)){let Y=q2(f);if($===l)Object.keys(Q).forEach((G)=>{Q[G][f]||=I0(Q[G],f)||I0(Q[l],f)||[]});else Q[$][f]||=I0(Q[$],f)||I0(Q[l],f)||[];Object.keys(Q).forEach((G)=>{if($===l||$===G)Object.keys(Q[G]).forEach((_)=>{Y.test(_)&&Q[G][_].push([H,J])})}),Object.keys(X).forEach((G)=>{if($===l||$===G)Object.keys(X[G]).forEach((_)=>Y.test(_)&&X[G][_].push([H,J]))});return}let W=S1(f)||[f];for(let Y=0,G=W.length;Y<G;Y++){let _=W[Y];Object.keys(X).forEach((S)=>{if($===l||$===S)X[S][_]||=[...I0(Q[S],_)||I0(Q[l],_)||[]],X[S][_].push([H,J-G+Y+1])})}}match($,f){Cf();let H=this.#H();return this.match=(Q,X)=>{let J=H[Q]||H[l],W=J[2][X];if(W)return W;let Y=X.match(J[0]);if(!Y)return[[],Y2];let G=Y.indexOf("",1);return[J[1][G],Y]},this.match($,f)}#H(){let $=Object.create(null);return Object.keys(this.#$).concat(Object.keys(this.#f)).forEach((f)=>{$[f]||=this.#J(f)}),this.#f=this.#$=void 0,$}#J($){let f=[],H=$===l;if([this.#f,this.#$].forEach((Q)=>{let X=Q[$]?Object.keys(Q[$]).map((J)=>[J,Q[$][J]]):[];if(X.length!==0)H||=!0,f.push(...X);else if($!==l)f.push(...Object.keys(Q[l]).map((J)=>[J,Q[l][J]]))}),!H)return null;else return Of(f)}};var m1=class{name="SmartRouter";#f=[];#$=[];constructor($){this.#f=$.routers}add($,f,H){if(!this.#$)throw Error(N1);this.#$.push([$,f,H])}match($,f){if(!this.#$)throw Error("Fatal error");let H=this.#f,Q=this.#$,X=H.length,J=0,W;for(;J<X;J++){let Y=H[J];try{for(let G=0,_=Q.length;G<_;G++)Y.add(...Q[G]);W=Y.match($,f)}catch(G){if(G instanceof V1)continue;throw G}this.match=Y.match.bind(Y),this.#f=[Y],this.#$=void 0;break}if(J===X)throw Error("Fatal error");return this.name=`SmartRouter + ${this.activeRouter.name}`,W}get activeRouter(){if(this.#$||this.#f.length!==1)throw Error("No active router has been determined yet.");return this.#f[0]}};var H1=Object.create(null),n1=class{#f;#$;#H;#J=0;#X=H1;constructor($,f,H){if(this.#$=H||Object.create(null),this.#f=[],$&&f){let Q=Object.create(null);Q[$]={handler:f,possibleKeys:[],score:0},this.#f=[Q]}this.#H=[]}insert($,f,H){this.#J=++this.#J;let Q=this,X=o$(f),J=[];for(let W=0,Y=X.length;W<Y;W++){let G=X[W],_=X[W+1],S=d$(G,_),A=Array.isArray(S)?S[0]:G;if(A in Q.#$){if(Q=Q.#$[A],S)J.push(S[1]);continue}if(Q.#$[A]=new n1,S)Q.#H.push(S),J.push(S[1]);Q=Q.#$[A]}return Q.#f.push({[$]:{handler:H,possibleKeys:J.filter((W,Y,G)=>G.indexOf(W)===Y),score:this.#J}}),Q}#Q($,f,H,Q){let X=[];for(let J=0,W=$.#f.length;J<W;J++){let Y=$.#f[J],G=Y[f]||Y[l],_={};if(G!==void 0){if(G.params=Object.create(null),X.push(G),H!==H1||Q&&Q!==H1)for(let S=0,A=G.possibleKeys.length;S<A;S++){let k=G.possibleKeys[S],Z=_[G.score];G.params[k]=Q?.[k]&&!Z?Q[k]:H[k]??Q?.[k],_[G.score]=!0}}}return X}search($,f){let H=[];this.#X=H1;let X=[this],J=K1(f),W=[];for(let Y=0,G=J.length;Y<G;Y++){let _=J[Y],S=Y===G-1,A=[];for(let k=0,Z=X.length;k<Z;k++){let h=X[k],T=h.#$[_];if(T)if(T.#X=h.#X,S){if(T.#$["*"])H.push(...this.#Q(T.#$["*"],$,h.#X));H.push(...this.#Q(T,$,h.#X))}else A.push(T);for(let m=0,o=h.#H.length;m<o;m++){let e=h.#H[m],i=h.#X===H1?{}:{...h.#X};if(e==="*"){let G0=h.#$["*"];if(G0)H.push(...this.#Q(G0,$,h.#X)),G0.#X=i,A.push(G0);continue}let[$0,s,t]=e;if(!_&&!(t instanceof RegExp))continue;let f0=h.#$[$0],C1=J.slice(Y).join("/");if(t instanceof RegExp){let G0=t.exec(C1);if(G0){if(i[s]=G0[0],H.push(...this.#Q(f0,$,h.#X,i)),Object.keys(f0.#$).length){f0.#X=i;let O1=G0[0].match(/\//)?.length??0;(W[O1]||=[]).push(f0)}continue}}if(t===!0||t.test(_))if(i[s]=_,S){if(H.push(...this.#Q(f0,$,i,h.#X)),f0.#$["*"])H.push(...this.#Q(f0.#$["*"],$,i,h.#X))}else f0.#X=i,A.push(f0)}}X=A.concat(W.shift()??[])}if(H.length>1)H.sort((Y,G)=>{return Y.score-G.score});return[H.map(({handler:Y,params:G})=>[Y,G])]}};var c1=class{name="TrieRouter";#f;constructor(){this.#f=new n1}add($,f,H){let Q=S1(f);if(Q){for(let X=0,J=Q.length;X<J;X++)this.#f.insert($,Q[X],H);return}this.#f.insert($,f,H)}match($,f){return this.#f.search($,f)}};var u1=class extends l1{constructor($={}){super($);this.router=$.router??new m1({routers:[new Z1,new c1]})}};var J8=Bf(B2()),y1=Symbol("route:metadata"),i1=Symbol("controller:metadata"),z2=Symbol("parameter:metadata"),w2=Symbol("dependency:metadata"),s1=Symbol("websocket:metadata"),j2=Symbol("websocket:handler:metadata"),o1=Symbol("graphql:resolver"),Q1=Symbol("graphql:field"),d1=Symbol("auth:metadata"),p1=Symbol("oauth:metadata"),r1=Symbol("roles:metadata"),t1=Symbol("permissions:metadata"),a1=Symbol("minimum-role:metadata"),e1=Symbol("resource-permission:metadata"),$$=Symbol("session:metadata"),f$=Symbol("csrf:metadata");class S0{routes=new Map;controllers=new Map;routesByController=new Map;websockets=new Map;graphqlResolvers=new Map;graphqlFields=new Map;registerRoute($){let f=this.getRouteKey($.target,$.propertyKey);if(this.routes.set(f,$),!this.routesByController.has($.target))this.routesByController.set($.target,[]);this.routesByController.get($.target).push($)}registerController($,f){this.controllers.set($,f)}getRoutes(){return Array.from(this.routes.values())}getRoute($,f){let H=this.getRouteKey($,f);return this.routes.get(H)}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 f=this.getRouteKey($.target,$.propertyKey);this.graphqlFields.set(f,$)}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((f)=>f.target===$)}clear(){this.routes.clear(),this.controllers.clear(),this.routesByController.clear(),this.websockets.clear(),this.graphqlResolvers.clear(),this.graphqlFields.clear()}getRouteKey($,f){return`${$.name}:${f}`}static defineRoute($,f,H){let Q=this.getRouteMetadata($,f),X={...Q,...H,target:$.constructor,propertyKey:f,middleware:[...Q?.middleware||[],...H.middleware||[]],parameters:H.parameters||Q?.parameters||[],dependencies:H.dependencies||Q?.dependencies||[],responses:H.responses||Q?.responses||[],auth:H.auth||Q?.auth,oauth:H.oauth||Q?.oauth,roles:H.roles||Q?.roles,permissions:H.permissions||Q?.permissions,minimumRole:H.minimumRole||Q?.minimumRole,resourcePermission:H.resourcePermission||Q?.resourcePermission,session:H.session||Q?.session,csrf:H.csrf||Q?.csrf};Reflect.defineMetadata(y1,X,$,f)}static defineParameter($,f,H,Q){let X=this.getParameterMetadata($,f)||[];X[H]=Q,Reflect.defineMetadata(z2,X,$,f);let J=this.getRouteMetadata($,f);this.defineRoute($,f,{...J,parameters:X})}static defineDependency($,f,H,Q){let X=this.getDependencyMetadata($,f)||[];X[H]=Q,Reflect.defineMetadata(w2,X,$,f);let J=this.getRouteMetadata($,f);this.defineRoute($,f,{...J,dependencies:X})}static defineController($,f){Reflect.defineMetadata(i1,f,$)}static getRouteMetadata($,f){return Reflect.getMetadata(y1,$,f)}static getParameterMetadata($,f){return Reflect.getMetadata(z2,$,f)}static getDependencyMetadata($,f){return Reflect.getMetadata(w2,$,f)}static getControllerMetadata($){return Reflect.getMetadata(i1,$)}static hasControllerMetadata($){return Reflect.hasMetadata(i1,$)}static hasRouteMetadata($,f){return Reflect.hasMetadata(y1,$,f)}static getRouteMethods($){let f=$.prototype,H=[],Q=Object.getOwnPropertyNames(f);for(let X of Q){if(X==="constructor")continue;if(this.hasRouteMetadata(f,X))H.push(X)}return H}static defineWebSocket($,f){let Q={...this.getWebSocketMetadata($),...f,target:$};Reflect.defineMetadata(s1,Q,$)}static defineWebSocketHandler($,f,H){let Q=this.getWebSocketMetadata($.constructor)||{};switch(H.type){case"connect":Q.onConnect=f;break;case"message":Q.onMessage=f,Q.messageSchema=H.schema;break;case"disconnect":Q.onDisconnect=f;break}this.defineWebSocket($.constructor,Q),Reflect.defineMetadata(j2,H,$,f)}static getWebSocketMetadata($){return Reflect.getMetadata(s1,$)}static getWebSocketHandlerMetadata($,f){return Reflect.getMetadata(j2,$,f)}static hasWebSocketMetadata($){return Reflect.hasMetadata(s1,$)}static defineGraphQLResolver($,f){Reflect.defineMetadata(o1,f,$)}static defineGraphQLField($,f,H){Reflect.defineMetadata(Q1,H,$,f);let Q=this.getGraphQLFieldsMetadata($.constructor)||[];Q.push(H),Reflect.defineMetadata(Q1,Q,$.constructor)}static getGraphQLResolverMetadata($){return Reflect.getMetadata(o1,$)}static getGraphQLFieldsMetadata($){return Reflect.getMetadata(Q1,$)||[]}static getGraphQLFieldMetadata($,f){return Reflect.getMetadata(Q1,$,f)}static hasGraphQLResolverMetadata($){return Reflect.hasMetadata(o1,$)}static hasGraphQLFieldMetadata($,f){return Reflect.hasMetadata(Q1,$,f)}static defineAuth($,f,H){Reflect.defineMetadata(d1,H,$,f);let Q=this.getRouteMetadata($,f);this.defineRoute($,f,{...Q,auth:H})}static getAuthMetadata($,f){return Reflect.getMetadata(d1,$,f)}static hasAuthMetadata($,f){return Reflect.hasMetadata(d1,$,f)}static defineOAuth($,f,H){Reflect.defineMetadata(p1,H,$,f);let Q=this.getRouteMetadata($,f);this.defineRoute($,f,{...Q,oauth:H})}static getOAuthMetadata($,f){return Reflect.getMetadata(p1,$,f)}static hasOAuthMetadata($,f){return Reflect.hasMetadata(p1,$,f)}static defineRoles($,f,H){Reflect.defineMetadata(r1,H,$,f);let Q=this.getRouteMetadata($,f);this.defineRoute($,f,{...Q,roles:H})}static definePermissions($,f,H){Reflect.defineMetadata(t1,H,$,f);let Q=this.getRouteMetadata($,f);this.defineRoute($,f,{...Q,permissions:H})}static defineMinimumRole($,f,H){Reflect.defineMetadata(a1,H,$,f);let Q=this.getRouteMetadata($,f);this.defineRoute($,f,{...Q,minimumRole:H})}static getRolesMetadata($,f){return Reflect.getMetadata(r1,$,f)}static getPermissionsMetadata($,f){return Reflect.getMetadata(t1,$,f)}static getMinimumRoleMetadata($,f){return Reflect.getMetadata(a1,$,f)}static hasRolesMetadata($,f){return Reflect.hasMetadata(r1,$,f)}static hasPermissionsMetadata($,f){return Reflect.hasMetadata(t1,$,f)}static hasMinimumRoleMetadata($,f){return Reflect.hasMetadata(a1,$,f)}static defineResourcePermission($,f,H){Reflect.defineMetadata(e1,H,$,f);let Q=this.getRouteMetadata($,f);this.defineRoute($,f,{...Q,resourcePermission:H})}static getResourcePermissionMetadata($,f){return Reflect.getMetadata(e1,$,f)}static hasResourcePermissionMetadata($,f){return Reflect.hasMetadata(e1,$,f)}static defineSession($,f,H){Reflect.defineMetadata($$,H,$,f);let Q=this.getRouteMetadata($,f);this.defineRoute($,f,{...Q,session:H})}static defineCSRF($,f,H){Reflect.defineMetadata(f$,H,$,f);let Q=this.getRouteMetadata($,f);this.defineRoute($,f,{...Q,csrf:H})}static getSessionMetadata($,f){return Reflect.getMetadata($$,$,f)}static getCSRFMetadata($,f){return Reflect.getMetadata(f$,$,f)}static hasSessionMetadata($,f){return Reflect.hasMetadata($$,$,f)}static hasCSRFMetadata($,f){return Reflect.hasMetadata(f$,$,f)}}class H${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($,f){this.providers.set($,f||{scope:"transient"})}async resolve($,f){let H=this.providers.get($)||{scope:f?.scope||"transient"},Q=f?.scope||H.scope||"transient";if(Q==="singleton"){if(this.singletons.has($))return this.stats.singletonHits++,this.singletons.get($);if(this.stats.singletonMisses++,this.resolutionStack.has($))throw Error(`Circular dependency detected: ${this.buildCircularDependencyMessage($)}`);this.resolutionStack.add($);try{let X=await this.create($,H,f?.context);return this.singletons.set($,X),X}finally{this.resolutionStack.delete($)}}if(Q==="request"&&f?.context){let X=this.requestScoped.get(f.context);if(X?.has($))return this.stats.requestHits++,X.get($);if(this.stats.requestMisses++,!X)X=new Map,this.requestScoped.set(f.context,X);if(this.resolutionStack.has($))throw Error(`Circular dependency detected: ${this.buildCircularDependencyMessage($)}`);this.resolutionStack.add($);try{let J=await this.create($,H,f.context);return X.set($,J),J}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($,H,f?.context)}finally{this.resolutionStack.delete($)}}buildCircularDependencyMessage($){let f=Array.from(this.resolutionStack),H=this.getProviderName($);return f.map((X)=>this.getProviderName(X)).join(" -> ")+" -> "+H}async create($,f,H){if(f.factory)return f.factory();if(typeof $==="function")if($.prototype&&$.prototype.constructor===$){let Q=new $;return await this.resolveNestedDependencies(Q,H),Q}else{let Q=$();return Q instanceof Promise?await Q:Q}throw Error("Invalid provider type")}async resolveNestedDependencies($,f){}getProviderName($){let f=this.providerNameCache.get($);if(f)return f;let H;if(typeof $==="function")if($.name)H=$.name;else H=$.toString().substring(0,50);else H=String($);return this.providerNameCache.set($,H),H}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,f=$>0?this.stats.singletonHits/$*100:0,H=this.stats.requestHits+this.stats.requestMisses,Q=H>0?this.stats.requestHits/H*100:0;return{singletonHits:this.stats.singletonHits,singletonMisses:this.stats.singletonMisses,singletonHitRate:Math.round(f*100)/100,requestHits:this.stats.requestHits,requestMisses:this.stats.requestMisses,requestHitRate:Math.round(Q*100)/100,transientCreations:this.stats.transientCreations}}resetStats(){this.stats={singletonHits:0,singletonMisses:0,requestHits:0,requestMisses:0,transientCreations:0}}}var vf=/^[\w!#$%&'*.^`|~+-]+$/,hf=/^[ !#-:<-[\]-~]*$/,Q$=($,f)=>{if(f&&$.indexOf(f)===-1)return{};let H=$.trim().split(";"),Q={};for(let X of H){X=X.trim();let J=X.indexOf("=");if(J===-1)continue;let W=X.substring(0,J).trim();if(f&&f!==W||!vf.test(W))continue;let Y=X.substring(J+1).trim();if(Y.startsWith('"')&&Y.endsWith('"'))Y=Y.slice(1,-1);if(hf.test(Y)){if(Q[W]=Y.indexOf("%")!==-1?k0(Y,e0):Y,f)break}}return Q};var Mf=($,f,H={})=>{let Q=`${$}=${f}`;if($.startsWith("__Secure-")&&!H.secure)throw Error("__Secure- Cookie must have Secure attributes");if($.startsWith("__Host-")){if(!H.secure)throw Error("__Host- Cookie must have Secure attributes");if(H.path!=="/")throw Error('__Host- Cookie must have Path attributes with "/"');if(H.domain)throw Error("__Host- Cookie must not have Domain attributes")}if(H&&typeof H.maxAge==="number"&&H.maxAge>=0){if(H.maxAge>34560000)throw Error("Cookies Max-Age SHOULD NOT be greater than 400 days (34560000 seconds) in duration.");Q+=`; Max-Age=${H.maxAge|0}`}if(H.domain&&H.prefix!=="host")Q+=`; Domain=${H.domain}`;if(H.path)Q+=`; Path=${H.path}`;if(H.expires){if(H.expires.getTime()-Date.now()>34560000000)throw Error("Cookies Expires SHOULD NOT be greater than 400 days (34560000 seconds) in the future.");Q+=`; Expires=${H.expires.toUTCString()}`}if(H.httpOnly)Q+="; HttpOnly";if(H.secure)Q+="; Secure";if(H.sameSite)Q+=`; SameSite=${H.sameSite.charAt(0).toUpperCase()+H.sameSite.slice(1)}`;if(H.priority)Q+=`; Priority=${H.priority.charAt(0).toUpperCase()+H.priority.slice(1)}`;if(H.partitioned){if(!H.secure)throw Error("Partitioned Cookie must have Secure attributes");Q+="; Partitioned"}return Q},D1=($,f,H)=>{return f=encodeURIComponent(f),Mf($,f,H)};var L2=($,f,H)=>{let Q=$.req.raw.headers.get("Cookie");if(typeof f==="string"){if(!Q)return;let J=f;if(H==="secure")J="__Secure-"+f;else if(H==="host")J="__Host-"+f;return Q$(Q,J)[J]}if(!Q)return{};return Q$(Q)};var kf=($,f,H)=>{let Q;if(H?.prefix==="secure")Q=D1("__Secure-"+$,f,{path:"/",...H,secure:!0});else if(H?.prefix==="host")Q=D1("__Host-"+$,f,{...H,path:"/",secure:!0,domain:void 0});else Q=D1($,f,{path:"/",...H});return Q},w8=($,f,H,Q)=>{let X=kf(f,H,Q);$.header("Set-Cookie",X,{append:!0})};class S2{static json($,f=200,H){return new X$($,f,H)}static html($,f=200){return new J$($,f)}static file($,f){return new Y$($,f)}static stream($,f){return new G$($,f)}static redirect($,f=302){return new W$($,f)}}class X${data;status;headers;constructor($,f=200,H={}){this.data=$;this.status=f;this.headers=H}toHonoResponse($){return $.json(this.data,this.status,this.headers)}}class J${content;status;constructor($,f=200){this.content=$;this.status=f}toHonoResponse($){return $.html(this.content,this.status)}}class W${url;status;constructor($,f=302){this.url=$;this.status=f}toHonoResponse($){return $.redirect(this.url,this.status)}}class Y${path;options;constructor($,f){this.path=$;this.options=f}async toHonoResponse($){try{let f=typeof Bun<"u"?Bun.file(this.path):await this.readFileNode(this.path),Q={"Content-Type":this.options?.contentType||this.guessContentType(this.path)};if(this.options?.download||this.options?.filename){let X=this.options?.filename||this.path.split("/").pop()||"download",J=this.options?.download?"attachment":"inline";Q["Content-Disposition"]=`${J}; filename="${X}"`}if(typeof Bun<"u"&&f instanceof Blob)return $.body(f,200,Q);else return $.body(f,200,Q)}catch(f){return $.json({error:"File not found",message:f instanceof Error?f.message:"Unknown error"},404)}}async readFileNode($){throw Error("File reading in Node.js requires fs module - use Bun runtime or implement adapter")}guessContentType($){let f=$.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"}[f||""]||"application/octet-stream"}}class G${stream;options;constructor($,f){this.stream=$;this.options=f}toHonoResponse($){let f={"Content-Type":this.options?.contentType||"application/octet-stream",...this.options?.headers};return $.body(this.stream,200,f)}}class q${static serialize($,f){if(f===null||f===void 0)return $.body(null,204);if(f instanceof S2)return f;if(f instanceof X$)return f.toHonoResponse($);if(f instanceof J$)return f.toHonoResponse($);if(f instanceof Y$)return f.toHonoResponse($);if(f instanceof G$)return f.toHonoResponse($);if(f instanceof W$)return f.toHonoResponse($);if(f&&typeof f.toHonoResponse==="function")return f.toHonoResponse($);return $.json(f)}}class _${static compile($){let f=this.compilePathRegex($.path),H=this.resolveParameterOrder($.parameters),Q=this.resolveDependencyOrder($.dependencies),X=this.calculateMaxArgumentIndex($.parameters,$.dependencies),J=this.computeParameterFlags($.parameters);return{...$,pathRegex:f,parameterOrder:H,dependencyOrder:Q,maxArgumentIndex:X,...J}}static compilePathRegex($){let f=$.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return f=f.replace(/\\\{([^}]+)\\\}/g,"(?<$1>[^/]+)"),f=f.replace(/:([a-zA-Z_][a-zA-Z0-9_]*)/g,"(?<$1>[^/]+)"),f=`^${f}$`,new RegExp(f)}static resolveParameterOrder($){if(!$||$.length===0)return[];return $.map((f)=>f.index).filter((f)=>f!==void 0).sort((f,H)=>f-H)}static resolveDependencyOrder($){if(!$||$.length===0)return[];return $.map((f)=>f.index).filter((f)=>f!==void 0).sort((f,H)=>f-H)}static calculateMaxArgumentIndex($,f){let H=-1;if($&&$.length>0){let Q=Math.max(...$.map((X)=>X.index));H=Math.max(H,Q)}if(f&&f.length>0){let Q=Math.max(...f.map((X)=>X.index));H=Math.max(H,Q)}return H}static computeParameterFlags($){if(!$||$.length===0)return{hasBody:!1,hasQuery:!1,hasParams:!1,hasHeaders:!1,hasCookies:!1,hasDependencies:!1};return{hasBody:$.some((f)=>f.type==="body"),hasQuery:$.some((f)=>f.type==="query"),hasParams:$.some((f)=>f.type==="param"),hasHeaders:$.some((f)=>f.type==="header"),hasCookies:$.some((f)=>f.type==="cookie"),hasDependencies:!1}}static compileAll($){return $.map((f)=>this.compile(f))}}X1();class z${app;metadata;container;validator;errorHandler;compiledRoutes=new Map;constructor($,f,H,Q,X){this.app=$;this.metadata=f;this.container=H;this.validator=Q;this.errorHandler=X}compile(){let $=this.metadata.getRoutes(),f=_$.compileAll($);for(let H of f){let Q=`${H.target.name}:${H.propertyKey}`;this.compiledRoutes.set(Q,H);let X=this.createHandler(H),J=this.normalizePath(H.path),W=H.method.toLowerCase();if(H.middleware&&H.middleware.length>0)this.app[W](J,...H.middleware,X);else this.app[W](J,X)}}normalizePath($){if(!$.startsWith("/"))$="/"+$;if($=$.replace(/\{([^}]+)\}/g,":$1"),$.length>1&&$.endsWith("/"))$=$.slice(0,-1);return $}createHandler($){return async(f)=>{try{f.set("routeMetadata",$);let H=await this.extractParameters(f,$.parameters),Q=await this.resolveDependencies(f,$.dependencies),X=this.mergeArguments(H,Q,$.parameters,$.maxArgumentIndex),J;if($.handler)J=await $.handler(f,...X);else{let W=await this.container.resolve($.target,{scope:"transient",context:f});if(typeof W[$.propertyKey]!=="function")throw Error(`Method ${$.propertyKey} not found on controller ${$.target.name}`);J=await W[$.propertyKey](...X)}return this.serializeResponse(f,J)}catch(H){return await this.handleError(f,H)}}}serializeResponse($,f){return q$.serialize($,f)}getRouteMetadataForContext($){return $.get("routeMetadata")||null}isAuthRequired($){if($.auth?.required)return!0;return $.parameters.some((f)=>f.type==="current-user")}async handleError($,f){return await this.errorHandler.handle(f,$)}async extractParameters($,f){let H=[];for(let Q of f){if(!Q)continue;let X;switch(Q.type){case"body":try{X=await $.req.json()}catch(Y){X=null}break;case"query":if(Q.name)X=$.req.query(Q.name);else X=$.req.query();if(Q.schema&&X!==void 0)try{X=Q.schema.parse(X)}catch(Y){throw new B$(`Invalid query parameter: ${Y}`)}break;case"param":if(Q.name)X=$.req.param(Q.name);else X=$.req.param();break;case"header":if(Q.name)X=$.req.header(Q.name);else{let Y={};$.req.raw.headers.forEach((G,_)=>{Y[_]=G}),X=Y}break;case"cookie":if(Q.name)X=L2($,Q.name);else{let Y=$.req.header("cookie");if(Y)X=Object.fromEntries(Y.split(";").map((G)=>{let[_,...S]=G.trim().split("=");return[_,S.join("=")]}));else X={}}break;case"request":X=$.req;break;case"response":case"context":X=$;break;case"current-user":X=$.get("auth.user")||null;let J=this.getRouteMetadataForContext($);if(J&&this.isAuthRequired(J)){if(!X){let Y=$.get("auth.error")||"Authentication required",{AuthenticationException:G}=await Promise.resolve().then(() => (b2(),D2));throw new G(Y)}}break;case"token":X=$.get("auth.token")||null;break;case"oauth-user":X=$.get("oauth.user")||null;break;case"oauth-token":X=$.get("oauth.token")||null;break;case"current-session":X=$.get("session")||null;break;case"session-data":let W=$.get("session");if(W&&Q.metadata?.key)X=W.data[Q.metadata.key];else if(W)X=W.data;else X=null;break;case"csrf-token":X=$.get("csrf.token")||null;break;case"filtered-resource":X=$.get("filtered.resource")||null;break;case"filtered-attributes":X=$.get("filtered.attributes")||[];break;default:X=void 0}if(Q.schema)try{X=await this.validator.validate(X,Q.schema)}catch(J){throw J}H[Q.index]=X}return H}mergeArguments($,f,H,Q){let J=H.filter((_)=>_!==void 0&&_.index!==void 0).map((_)=>_.index),W=J.length>0?Math.max(...J):-1,Y=Q!==void 0&&Q>=0?Q:Math.max(W,$.length-1,f.length-1,0);if(!Number.isFinite(Y)||Y<0)Y=0;let G=Array(Y+1);for(let _=0;_<=Y;_++)if($[_]!==void 0)G[_]=$[_];else if(f[_]!==void 0)G[_]=f[_];return G}async resolveDependencies($,f){let H=[];for(let Q of f){if(!Q)continue;try{let X=await this.container.resolve(Q.provider,{scope:Q.scope,context:$});H[Q.index]=X}catch(X){throw Error(`Failed to resolve dependency at index ${Q.index}: ${X instanceof Error?X.message:"Unknown error"}`)}}return H}}var K2={};t0(K2,{void:()=>R4,util:()=>P,unknown:()=>N4,union:()=>F4,undefined:()=>j4,tuple:()=>C4,transformer:()=>x4,symbol:()=>w4,string:()=>k2,strictObject:()=>b4,setErrorMap:()=>gf,set:()=>h4,record:()=>O4,quotelessJson:()=>Tf,promise:()=>T4,preprocess:()=>Z4,pipeline:()=>m4,ostring:()=>n4,optional:()=>g4,onumber:()=>c4,oboolean:()=>u4,objectUtil:()=>w$,object:()=>D4,number:()=>I2,nullable:()=>l4,null:()=>L4,never:()=>V4,nativeEnum:()=>K4,nan:()=>_4,map:()=>v4,makeIssue:()=>W1,literal:()=>I4,lazy:()=>k4,late:()=>G4,isValid:()=>N0,isDirty:()=>F1,isAsync:()=>K0,isAborted:()=>b1,intersection:()=>U4,instanceof:()=>q4,getParsedType:()=>_0,getErrorMap:()=>P0,function:()=>M4,enum:()=>P4,effect:()=>x4,discriminatedUnion:()=>A4,defaultErrorMap:()=>w0,datetimeRegex:()=>v2,date:()=>z4,custom:()=>M2,coerce:()=>y4,boolean:()=>P2,bigint:()=>B4,array:()=>E4,any:()=>S4,addIssueToContext:()=>N,ZodVoid:()=>G1,ZodUnknown:()=>V0,ZodUnion:()=>m0,ZodUndefined:()=>l0,ZodType:()=>M,ZodTuple:()=>z0,ZodTransformer:()=>Y0,ZodSymbol:()=>Y1,ZodString:()=>Q0,ZodSet:()=>O0,ZodSchema:()=>M,ZodRecord:()=>q1,ZodReadonly:()=>o0,ZodPromise:()=>v0,ZodPipeline:()=>z1,ZodParsedType:()=>j,ZodOptional:()=>J0,ZodObject:()=>g,ZodNumber:()=>R0,ZodNullable:()=>L0,ZodNull:()=>Z0,ZodNever:()=>B0,ZodNativeEnum:()=>y0,ZodNaN:()=>B1,ZodMap:()=>_1,ZodLiteral:()=>u0,ZodLazy:()=>c0,ZodIssueCode:()=>w,ZodIntersection:()=>n0,ZodFunction:()=>x0,ZodFirstPartyTypeKind:()=>C,ZodError:()=>d,ZodEnum:()=>D0,ZodEffects:()=>Y0,ZodDiscriminatedUnion:()=>A1,ZodDefault:()=>i0,ZodDate:()=>U0,ZodCatch:()=>s0,ZodBranded:()=>U1,ZodBoolean:()=>g0,ZodBigInt:()=>E0,ZodArray:()=>X0,ZodAny:()=>C0,Schema:()=>M,ParseStatus:()=>p,OK:()=>r,NEVER:()=>i4,INVALID:()=>U,EMPTY_PATH:()=>lf,DIRTY:()=>A0,BRAND:()=>Y4});var P;(function($){$.assertEqual=(X)=>{};function f(X){}$.assertIs=f;function H(X){throw Error()}$.assertNever=H,$.arrayToEnum=(X)=>{let J={};for(let W of X)J[W]=W;return J},$.getValidEnumValues=(X)=>{let J=$.objectKeys(X).filter((Y)=>typeof X[X[Y]]!=="number"),W={};for(let Y of J)W[Y]=X[Y];return $.objectValues(W)},$.objectValues=(X)=>{return $.objectKeys(X).map(function(J){return X[J]})},$.objectKeys=typeof Object.keys==="function"?(X)=>Object.keys(X):(X)=>{let J=[];for(let W in X)if(Object.prototype.hasOwnProperty.call(X,W))J.push(W);return J},$.find=(X,J)=>{for(let W of X)if(J(W))return W;return},$.isInteger=typeof Number.isInteger==="function"?(X)=>Number.isInteger(X):(X)=>typeof X==="number"&&Number.isFinite(X)&&Math.floor(X)===X;function Q(X,J=" | "){return X.map((W)=>typeof W==="string"?`'${W}'`:W).join(J)}$.joinValues=Q,$.jsonStringifyReplacer=(X,J)=>{if(typeof J==="bigint")return J.toString();return J}})(P||(P={}));var w$;(function($){$.mergeShapes=(f,H)=>{return{...f,...H}}})(w$||(w$={}));var j=P.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),_0=($)=>{switch(typeof $){case"undefined":return j.undefined;case"string":return j.string;case"number":return Number.isNaN($)?j.nan:j.number;case"boolean":return j.boolean;case"function":return j.function;case"bigint":return j.bigint;case"symbol":return j.symbol;case"object":if(Array.isArray($))return j.array;if($===null)return j.null;if($.then&&typeof $.then==="function"&&$.catch&&typeof $.catch==="function")return j.promise;if(typeof Map<"u"&&$ instanceof Map)return j.map;if(typeof Set<"u"&&$ instanceof Set)return j.set;if(typeof Date<"u"&&$ instanceof Date)return j.date;return j.object;default:return j.unknown}};var w=P.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"]),Tf=($)=>{return JSON.stringify($,null,2).replace(/"([^"]+)":/g,"$1:")};class d extends Error{get errors(){return this.issues}constructor($){super();this.issues=[],this.addIssue=(H)=>{this.issues=[...this.issues,H]},this.addIssues=(H=[])=>{this.issues=[...this.issues,...H]};let f=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,f);else this.__proto__=f;this.name="ZodError",this.issues=$}format($){let f=$||function(X){return X.message},H={_errors:[]},Q=(X)=>{for(let J of X.issues)if(J.code==="invalid_union")J.unionErrors.map(Q);else if(J.code==="invalid_return_type")Q(J.returnTypeError);else if(J.code==="invalid_arguments")Q(J.argumentsError);else if(J.path.length===0)H._errors.push(f(J));else{let W=H,Y=0;while(Y<J.path.length){let G=J.path[Y];if(Y!==J.path.length-1)W[G]=W[G]||{_errors:[]};else W[G]=W[G]||{_errors:[]},W[G]._errors.push(f(J));W=W[G],Y++}}};return Q(this),H}static assert($){if(!($ instanceof d))throw Error(`Not a ZodError: ${$}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,P.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten($=(f)=>f.message){let f={},H=[];for(let Q of this.issues)if(Q.path.length>0){let X=Q.path[0];f[X]=f[X]||[],f[X].push($(Q))}else H.push($(Q));return{formErrors:H,fieldErrors:f}}get formErrors(){return this.flatten()}}d.create=($)=>{return new d($)};var xf=($,f)=>{let H;switch($.code){case w.invalid_type:if($.received===j.undefined)H="Required";else H=`Expected ${$.expected}, received ${$.received}`;break;case w.invalid_literal:H=`Invalid literal value, expected ${JSON.stringify($.expected,P.jsonStringifyReplacer)}`;break;case w.unrecognized_keys:H=`Unrecognized key(s) in object: ${P.joinValues($.keys,", ")}`;break;case w.invalid_union:H="Invalid input";break;case w.invalid_union_discriminator:H=`Invalid discriminator value. Expected ${P.joinValues($.options)}`;break;case w.invalid_enum_value:H=`Invalid enum value. Expected ${P.joinValues($.options)}, received '${$.received}'`;break;case w.invalid_arguments:H="Invalid function arguments";break;case w.invalid_return_type:H="Invalid function return type";break;case w.invalid_date:H="Invalid date";break;case w.invalid_string:if(typeof $.validation==="object")if("includes"in $.validation){if(H=`Invalid input: must include "${$.validation.includes}"`,typeof $.validation.position==="number")H=`${H} at one or more positions greater than or equal to ${$.validation.position}`}else if("startsWith"in $.validation)H=`Invalid input: must start with "${$.validation.startsWith}"`;else if("endsWith"in $.validation)H=`Invalid input: must end with "${$.validation.endsWith}"`;else P.assertNever($.validation);else if($.validation!=="regex")H=`Invalid ${$.validation}`;else H="Invalid";break;case w.too_small:if($.type==="array")H=`Array must contain ${$.exact?"exactly":$.inclusive?"at least":"more than"} ${$.minimum} element(s)`;else if($.type==="string")H=`String must contain ${$.exact?"exactly":$.inclusive?"at least":"over"} ${$.minimum} character(s)`;else if($.type==="number")H=`Number must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${$.minimum}`;else if($.type==="bigint")H=`Number must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${$.minimum}`;else if($.type==="date")H=`Date must be ${$.exact?"exactly equal to ":$.inclusive?"greater than or equal to ":"greater than "}${new Date(Number($.minimum))}`;else H="Invalid input";break;case w.too_big:if($.type==="array")H=`Array must contain ${$.exact?"exactly":$.inclusive?"at most":"less than"} ${$.maximum} element(s)`;else if($.type==="string")H=`String must contain ${$.exact?"exactly":$.inclusive?"at most":"under"} ${$.maximum} character(s)`;else if($.type==="number")H=`Number must be ${$.exact?"exactly":$.inclusive?"less than or equal to":"less than"} ${$.maximum}`;else if($.type==="bigint")H=`BigInt must be ${$.exact?"exactly":$.inclusive?"less than or equal to":"less than"} ${$.maximum}`;else if($.type==="date")H=`Date must be ${$.exact?"exactly":$.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number($.maximum))}`;else H="Invalid input";break;case w.custom:H="Invalid input";break;case w.invalid_intersection_types:H="Intersection results could not be merged";break;case w.not_multiple_of:H=`Number must be a multiple of ${$.multipleOf}`;break;case w.not_finite:H="Number must be finite";break;default:H=f.defaultError,P.assertNever($)}return{message:H}},w0=xf;var F2=w0;function gf($){F2=$}function P0(){return F2}var W1=($)=>{let{data:f,path:H,errorMaps:Q,issueData:X}=$,J=[...H,...X.path||[]],W={...X,path:J};if(X.message!==void 0)return{...X,path:J,message:X.message};let Y="",G=Q.filter((_)=>!!_).slice().reverse();for(let _ of G)Y=_(W,{data:f,defaultError:Y}).message;return{...X,path:J,message:Y}},lf=[];function N($,f){let H=P0(),Q=W1({issueData:f,data:$.data,path:$.path,errorMaps:[$.common.contextualErrorMap,$.schemaErrorMap,H,H===w0?void 0:w0].filter((X)=>!!X)});$.common.issues.push(Q)}class p{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray($,f){let H=[];for(let Q of f){if(Q.status==="aborted")return U;if(Q.status==="dirty")$.dirty();H.push(Q.value)}return{status:$.value,value:H}}static async mergeObjectAsync($,f){let H=[];for(let Q of f){let X=await Q.key,J=await Q.value;H.push({key:X,value:J})}return p.mergeObjectSync($,H)}static mergeObjectSync($,f){let H={};for(let Q of f){let{key:X,value:J}=Q;if(X.status==="aborted")return U;if(J.status==="aborted")return U;if(X.status==="dirty")$.dirty();if(J.status==="dirty")$.dirty();if(X.value!=="__proto__"&&(typeof J.value<"u"||Q.alwaysSet))H[X.value]=J.value}return{status:$.value,value:H}}}var U=Object.freeze({status:"aborted"}),A0=($)=>({status:"dirty",value:$}),r=($)=>({status:"valid",value:$}),b1=($)=>$.status==="aborted",F1=($)=>$.status==="dirty",N0=($)=>$.status==="valid",K0=($)=>typeof Promise<"u"&&$ instanceof Promise;var D;(function($){$.errToObj=(f)=>typeof f==="string"?{message:f}:f||{},$.toString=(f)=>typeof f==="string"?f:f?.message})(D||(D={}));class W0{constructor($,f,H,Q){this._cachedPath=[],this.parent=$,this.data=f,this._path=H,this._key=Q}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var A2=($,f)=>{if(N0(f))return{success:!0,data:f.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 H=new d($.common.issues);return this._error=H,this._error}}}};function v($){if(!$)return{};let{errorMap:f,invalid_type_error:H,required_error:Q,description:X}=$;if(f&&(H||Q))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(f)return{errorMap:f,description:X};return{errorMap:(W,Y)=>{let{message:G}=$;if(W.code==="invalid_enum_value")return{message:G??Y.defaultError};if(typeof Y.data>"u")return{message:G??Q??Y.defaultError};if(W.code!=="invalid_type")return{message:Y.defaultError};return{message:G??H??Y.defaultError}},description:X}}class M{get description(){return this._def.description}_getType($){return _0($.data)}_getOrReturnCtx($,f){return f||{common:$.parent.common,data:$.data,parsedType:_0($.data),schemaErrorMap:this._def.errorMap,path:$.path,parent:$.parent}}_processInputParams($){return{status:new p,ctx:{common:$.parent.common,data:$.data,parsedType:_0($.data),schemaErrorMap:this._def.errorMap,path:$.path,parent:$.parent}}}_parseSync($){let f=this._parse($);if(K0(f))throw Error("Synchronous parse encountered promise.");return f}_parseAsync($){let f=this._parse($);return Promise.resolve(f)}parse($,f){let H=this.safeParse($,f);if(H.success)return H.data;throw H.error}safeParse($,f){let H={common:{issues:[],async:f?.async??!1,contextualErrorMap:f?.errorMap},path:f?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:_0($)},Q=this._parseSync({data:$,path:H.path,parent:H});return A2(H,Q)}"~validate"($){let f={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:_0($)};if(!this["~standard"].async)try{let H=this._parseSync({data:$,path:[],parent:f});return N0(H)?{value:H.value}:{issues:f.common.issues}}catch(H){if(H?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;f.common={issues:[],async:!0}}return this._parseAsync({data:$,path:[],parent:f}).then((H)=>N0(H)?{value:H.value}:{issues:f.common.issues})}async parseAsync($,f){let H=await this.safeParseAsync($,f);if(H.success)return H.data;throw H.error}async safeParseAsync($,f){let H={common:{issues:[],contextualErrorMap:f?.errorMap,async:!0},path:f?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:$,parsedType:_0($)},Q=this._parse({data:$,path:H.path,parent:H}),X=await(K0(Q)?Q:Promise.resolve(Q));return A2(H,X)}refine($,f){let H=(Q)=>{if(typeof f==="string"||typeof f>"u")return{message:f};else if(typeof f==="function")return f(Q);else return f};return this._refinement((Q,X)=>{let J=$(Q),W=()=>X.addIssue({code:w.custom,...H(Q)});if(typeof Promise<"u"&&J instanceof Promise)return J.then((Y)=>{if(!Y)return W(),!1;else return!0});if(!J)return W(),!1;else return!0})}refinement($,f){return this._refinement((H,Q)=>{if(!$(H))return Q.addIssue(typeof f==="function"?f(H,Q):f),!1;else return!0})}_refinement($){return new Y0({schema:this,typeName:C.ZodEffects,effect:{type:"refinement",refinement:$}})}superRefine($){return this._refinement($)}constructor($){this.spa=this.safeParseAsync,this._def=$,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(f)=>this["~validate"](f)}}optional(){return J0.create(this,this._def)}nullable(){return L0.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return X0.create(this)}promise(){return v0.create(this,this._def)}or($){return m0.create([this,$],this._def)}and($){return n0.create(this,$,this._def)}transform($){return new Y0({...v(this._def),schema:this,typeName:C.ZodEffects,effect:{type:"transform",transform:$}})}default($){let f=typeof $==="function"?$:()=>$;return new i0({...v(this._def),innerType:this,defaultValue:f,typeName:C.ZodDefault})}brand(){return new U1({typeName:C.ZodBranded,type:this,...v(this._def)})}catch($){let f=typeof $==="function"?$:()=>$;return new s0({...v(this._def),innerType:this,catchValue:f,typeName:C.ZodCatch})}describe($){return new this.constructor({...this._def,description:$})}pipe($){return z1.create(this,$)}readonly(){return o0.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var Zf=/^c[^\s-]{8,}$/i,mf=/^[0-9a-z]+$/,nf=/^[0-9A-HJKMNP-TV-Z]{26}$/i,cf=/^[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,uf=/^[a-z0-9_-]{21}$/i,yf=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,sf=/^[-+]?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)?)??$/,of=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,df="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",j$,pf=/^(?:(?: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])$/,rf=/^(?:(?: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])$/,tf=/^(([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]))$/,af=/^(([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])$/,ef=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,$4=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,C2="((\\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])))",f4=new RegExp(`^${C2}$`);function O2($){let f="[0-5]\\d";if($.precision)f=`${f}\\.\\d{${$.precision}}`;else if($.precision==null)f=`${f}(\\.\\d+)?`;let H=$.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${f})${H}`}function H4($){return new RegExp(`^${O2($)}$`)}function v2($){let f=`${C2}T${O2($)}`,H=[];if(H.push($.local?"Z?":"Z"),$.offset)H.push("([+-]\\d{2}:?\\d{2})");return f=`${f}(${H.join("|")})`,new RegExp(`^${f}$`)}function Q4($,f){if((f==="v4"||!f)&&pf.test($))return!0;if((f==="v6"||!f)&&tf.test($))return!0;return!1}function X4($,f){if(!yf.test($))return!1;try{let[H]=$.split(".");if(!H)return!1;let Q=H.replace(/-/g,"+").replace(/_/g,"/").padEnd(H.length+(4-H.length%4)%4,"="),X=JSON.parse(atob(Q));if(typeof X!=="object"||X===null)return!1;if("typ"in X&&X?.typ!=="JWT")return!1;if(!X.alg)return!1;if(f&&X.alg!==f)return!1;return!0}catch{return!1}}function J4($,f){if((f==="v4"||!f)&&rf.test($))return!0;if((f==="v6"||!f)&&af.test($))return!0;return!1}class Q0 extends M{_parse($){if(this._def.coerce)$.data=String($.data);if(this._getType($)!==j.string){let X=this._getOrReturnCtx($);return N(X,{code:w.invalid_type,expected:j.string,received:X.parsedType}),U}let H=new p,Q=void 0;for(let X of this._def.checks)if(X.kind==="min"){if($.data.length<X.value)Q=this._getOrReturnCtx($,Q),N(Q,{code:w.too_small,minimum:X.value,type:"string",inclusive:!0,exact:!1,message:X.message}),H.dirty()}else if(X.kind==="max"){if($.data.length>X.value)Q=this._getOrReturnCtx($,Q),N(Q,{code:w.too_big,maximum:X.value,type:"string",inclusive:!0,exact:!1,message:X.message}),H.dirty()}else if(X.kind==="length"){let J=$.data.length>X.value,W=$.data.length<X.value;if(J||W){if(Q=this._getOrReturnCtx($,Q),J)N(Q,{code:w.too_big,maximum:X.value,type:"string",inclusive:!0,exact:!0,message:X.message});else if(W)N(Q,{code:w.too_small,minimum:X.value,type:"string",inclusive:!0,exact:!0,message:X.message});H.dirty()}}else if(X.kind==="email"){if(!of.test($.data))Q=this._getOrReturnCtx($,Q),N(Q,{validation:"email",code:w.invalid_string,message:X.message}),H.dirty()}else if(X.kind==="emoji"){if(!j$)j$=new RegExp(df,"u");if(!j$.test($.data))Q=this._getOrReturnCtx($,Q),N(Q,{validation:"emoji",code:w.invalid_string,message:X.message}),H.dirty()}else if(X.kind==="uuid"){if(!cf.test($.data))Q=this._getOrReturnCtx($,Q),N(Q,{validation:"uuid",code:w.invalid_string,message:X.message}),H.dirty()}else if(X.kind==="nanoid"){if(!uf.test($.data))Q=this._getOrReturnCtx($,Q),N(Q,{validation:"nanoid",code:w.invalid_string,message:X.message}),H.dirty()}else if(X.kind==="cuid"){if(!Zf.test($.data))Q=this._getOrReturnCtx($,Q),N(Q,{validation:"cuid",code:w.invalid_string,message:X.message}),H.dirty()}else if(X.kind==="cuid2"){if(!mf.test($.data))Q=this._getOrReturnCtx($,Q),N(Q,{validation:"cuid2",code:w.invalid_string,message:X.message}),H.dirty()}else if(X.kind==="ulid"){if(!nf.test($.data))Q=this._getOrReturnCtx($,Q),N(Q,{validation:"ulid",code:w.invalid_string,message:X.message}),H.dirty()}else if(X.kind==="url")try{new URL($.data)}catch{Q=this._getOrReturnCtx($,Q),N(Q,{validation:"url",code:w.invalid_string,message:X.message}),H.dirty()}else if(X.kind==="regex"){if(X.regex.lastIndex=0,!X.regex.test($.data))Q=this._getOrReturnCtx($,Q),N(Q,{validation:"regex",code:w.invalid_string,message:X.message}),H.dirty()}else if(X.kind==="trim")$.data=$.data.trim();else if(X.kind==="includes"){if(!$.data.includes(X.value,X.position))Q=this._getOrReturnCtx($,Q),N(Q,{code:w.invalid_string,validation:{includes:X.value,position:X.position},message:X.message}),H.dirty()}else if(X.kind==="toLowerCase")$.data=$.data.toLowerCase();else if(X.kind==="toUpperCase")$.data=$.data.toUpperCase();else if(X.kind==="startsWith"){if(!$.data.startsWith(X.value))Q=this._getOrReturnCtx($,Q),N(Q,{code:w.invalid_string,validation:{startsWith:X.value},message:X.message}),H.dirty()}else if(X.kind==="endsWith"){if(!$.data.endsWith(X.value))Q=this._getOrReturnCtx($,Q),N(Q,{code:w.invalid_string,validation:{endsWith:X.value},message:X.message}),H.dirty()}else if(X.kind==="datetime"){if(!v2(X).test($.data))Q=this._getOrReturnCtx($,Q),N(Q,{code:w.invalid_string,validation:"datetime",message:X.message}),H.dirty()}else if(X.kind==="date"){if(!f4.test($.data))Q=this._getOrReturnCtx($,Q),N(Q,{code:w.invalid_string,validation:"date",message:X.message}),H.dirty()}else if(X.kind==="time"){if(!H4(X).test($.data))Q=this._getOrReturnCtx($,Q),N(Q,{code:w.invalid_string,validation:"time",message:X.message}),H.dirty()}else if(X.kind==="duration"){if(!sf.test($.data))Q=this._getOrReturnCtx($,Q),N(Q,{validation:"duration",code:w.invalid_string,message:X.message}),H.dirty()}else if(X.kind==="ip"){if(!Q4($.data,X.version))Q=this._getOrReturnCtx($,Q),N(Q,{validation:"ip",code:w.invalid_string,message:X.message}),H.dirty()}else if(X.kind==="jwt"){if(!X4($.data,X.alg))Q=this._getOrReturnCtx($,Q),N(Q,{validation:"jwt",code:w.invalid_string,message:X.message}),H.dirty()}else if(X.kind==="cidr"){if(!J4($.data,X.version))Q=this._getOrReturnCtx($,Q),N(Q,{validation:"cidr",code:w.invalid_string,message:X.message}),H.dirty()}else if(X.kind==="base64"){if(!ef.test($.data))Q=this._getOrReturnCtx($,Q),N(Q,{validation:"base64",code:w.invalid_string,message:X.message}),H.dirty()}else if(X.kind==="base64url"){if(!$4.test($.data))Q=this._getOrReturnCtx($,Q),N(Q,{validation:"base64url",code:w.invalid_string,message:X.message}),H.dirty()}else P.assertNever(X);return{status:H.value,value:$.data}}_regex($,f,H){return this.refinement((Q)=>$.test(Q),{validation:f,code:w.invalid_string,...D.errToObj(H)})}_addCheck($){return new Q0({...this._def,checks:[...this._def.checks,$]})}email($){return this._addCheck({kind:"email",...D.errToObj($)})}url($){return this._addCheck({kind:"url",...D.errToObj($)})}emoji($){return this._addCheck({kind:"emoji",...D.errToObj($)})}uuid($){return this._addCheck({kind:"uuid",...D.errToObj($)})}nanoid($){return this._addCheck({kind:"nanoid",...D.errToObj($)})}cuid($){return this._addCheck({kind:"cuid",...D.errToObj($)})}cuid2($){return this._addCheck({kind:"cuid2",...D.errToObj($)})}ulid($){return this._addCheck({kind:"ulid",...D.errToObj($)})}base64($){return this._addCheck({kind:"base64",...D.errToObj($)})}base64url($){return this._addCheck({kind:"base64url",...D.errToObj($)})}jwt($){return this._addCheck({kind:"jwt",...D.errToObj($)})}ip($){return this._addCheck({kind:"ip",...D.errToObj($)})}cidr($){return this._addCheck({kind:"cidr",...D.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,...D.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,...D.errToObj($?.message)})}duration($){return this._addCheck({kind:"duration",...D.errToObj($)})}regex($,f){return this._addCheck({kind:"regex",regex:$,...D.errToObj(f)})}includes($,f){return this._addCheck({kind:"includes",value:$,position:f?.position,...D.errToObj(f?.message)})}startsWith($,f){return this._addCheck({kind:"startsWith",value:$,...D.errToObj(f)})}endsWith($,f){return this._addCheck({kind:"endsWith",value:$,...D.errToObj(f)})}min($,f){return this._addCheck({kind:"min",value:$,...D.errToObj(f)})}max($,f){return this._addCheck({kind:"max",value:$,...D.errToObj(f)})}length($,f){return this._addCheck({kind:"length",value:$,...D.errToObj(f)})}nonempty($){return this.min(1,D.errToObj($))}trim(){return new Q0({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new Q0({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new Q0({...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 f of this._def.checks)if(f.kind==="min"){if($===null||f.value>$)$=f.value}return $}get maxLength(){let $=null;for(let f of this._def.checks)if(f.kind==="max"){if($===null||f.value<$)$=f.value}return $}}Q0.create=($)=>{return new Q0({checks:[],typeName:C.ZodString,coerce:$?.coerce??!1,...v($)})};function W4($,f){let H=($.toString().split(".")[1]||"").length,Q=(f.toString().split(".")[1]||"").length,X=H>Q?H:Q,J=Number.parseInt($.toFixed(X).replace(".","")),W=Number.parseInt(f.toFixed(X).replace(".",""));return J%W/10**X}class R0 extends M{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($)!==j.number){let X=this._getOrReturnCtx($);return N(X,{code:w.invalid_type,expected:j.number,received:X.parsedType}),U}let H=void 0,Q=new p;for(let X of this._def.checks)if(X.kind==="int"){if(!P.isInteger($.data))H=this._getOrReturnCtx($,H),N(H,{code:w.invalid_type,expected:"integer",received:"float",message:X.message}),Q.dirty()}else if(X.kind==="min"){if(X.inclusive?$.data<X.value:$.data<=X.value)H=this._getOrReturnCtx($,H),N(H,{code:w.too_small,minimum:X.value,type:"number",inclusive:X.inclusive,exact:!1,message:X.message}),Q.dirty()}else if(X.kind==="max"){if(X.inclusive?$.data>X.value:$.data>=X.value)H=this._getOrReturnCtx($,H),N(H,{code:w.too_big,maximum:X.value,type:"number",inclusive:X.inclusive,exact:!1,message:X.message}),Q.dirty()}else if(X.kind==="multipleOf"){if(W4($.data,X.value)!==0)H=this._getOrReturnCtx($,H),N(H,{code:w.not_multiple_of,multipleOf:X.value,message:X.message}),Q.dirty()}else if(X.kind==="finite"){if(!Number.isFinite($.data))H=this._getOrReturnCtx($,H),N(H,{code:w.not_finite,message:X.message}),Q.dirty()}else P.assertNever(X);return{status:Q.value,value:$.data}}gte($,f){return this.setLimit("min",$,!0,D.toString(f))}gt($,f){return this.setLimit("min",$,!1,D.toString(f))}lte($,f){return this.setLimit("max",$,!0,D.toString(f))}lt($,f){return this.setLimit("max",$,!1,D.toString(f))}setLimit($,f,H,Q){return new R0({...this._def,checks:[...this._def.checks,{kind:$,value:f,inclusive:H,message:D.toString(Q)}]})}_addCheck($){return new R0({...this._def,checks:[...this._def.checks,$]})}int($){return this._addCheck({kind:"int",message:D.toString($)})}positive($){return this._addCheck({kind:"min",value:0,inclusive:!1,message:D.toString($)})}negative($){return this._addCheck({kind:"max",value:0,inclusive:!1,message:D.toString($)})}nonpositive($){return this._addCheck({kind:"max",value:0,inclusive:!0,message:D.toString($)})}nonnegative($){return this._addCheck({kind:"min",value:0,inclusive:!0,message:D.toString($)})}multipleOf($,f){return this._addCheck({kind:"multipleOf",value:$,message:D.toString(f)})}finite($){return this._addCheck({kind:"finite",message:D.toString($)})}safe($){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:D.toString($)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:D.toString($)})}get minValue(){let $=null;for(let f of this._def.checks)if(f.kind==="min"){if($===null||f.value>$)$=f.value}return $}get maxValue(){let $=null;for(let f of this._def.checks)if(f.kind==="max"){if($===null||f.value<$)$=f.value}return $}get isInt(){return!!this._def.checks.find(($)=>$.kind==="int"||$.kind==="multipleOf"&&P.isInteger($.value))}get isFinite(){let $=null,f=null;for(let H of this._def.checks)if(H.kind==="finite"||H.kind==="int"||H.kind==="multipleOf")return!0;else if(H.kind==="min"){if(f===null||H.value>f)f=H.value}else if(H.kind==="max"){if($===null||H.value<$)$=H.value}return Number.isFinite(f)&&Number.isFinite($)}}R0.create=($)=>{return new R0({checks:[],typeName:C.ZodNumber,coerce:$?.coerce||!1,...v($)})};class E0 extends M{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($)!==j.bigint)return this._getInvalidInput($);let H=void 0,Q=new p;for(let X of this._def.checks)if(X.kind==="min"){if(X.inclusive?$.data<X.value:$.data<=X.value)H=this._getOrReturnCtx($,H),N(H,{code:w.too_small,type:"bigint",minimum:X.value,inclusive:X.inclusive,message:X.message}),Q.dirty()}else if(X.kind==="max"){if(X.inclusive?$.data>X.value:$.data>=X.value)H=this._getOrReturnCtx($,H),N(H,{code:w.too_big,type:"bigint",maximum:X.value,inclusive:X.inclusive,message:X.message}),Q.dirty()}else if(X.kind==="multipleOf"){if($.data%X.value!==BigInt(0))H=this._getOrReturnCtx($,H),N(H,{code:w.not_multiple_of,multipleOf:X.value,message:X.message}),Q.dirty()}else P.assertNever(X);return{status:Q.value,value:$.data}}_getInvalidInput($){let f=this._getOrReturnCtx($);return N(f,{code:w.invalid_type,expected:j.bigint,received:f.parsedType}),U}gte($,f){return this.setLimit("min",$,!0,D.toString(f))}gt($,f){return this.setLimit("min",$,!1,D.toString(f))}lte($,f){return this.setLimit("max",$,!0,D.toString(f))}lt($,f){return this.setLimit("max",$,!1,D.toString(f))}setLimit($,f,H,Q){return new E0({...this._def,checks:[...this._def.checks,{kind:$,value:f,inclusive:H,message:D.toString(Q)}]})}_addCheck($){return new E0({...this._def,checks:[...this._def.checks,$]})}positive($){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:D.toString($)})}negative($){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:D.toString($)})}nonpositive($){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:D.toString($)})}nonnegative($){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:D.toString($)})}multipleOf($,f){return this._addCheck({kind:"multipleOf",value:$,message:D.toString(f)})}get minValue(){let $=null;for(let f of this._def.checks)if(f.kind==="min"){if($===null||f.value>$)$=f.value}return $}get maxValue(){let $=null;for(let f of this._def.checks)if(f.kind==="max"){if($===null||f.value<$)$=f.value}return $}}E0.create=($)=>{return new E0({checks:[],typeName:C.ZodBigInt,coerce:$?.coerce??!1,...v($)})};class g0 extends M{_parse($){if(this._def.coerce)$.data=Boolean($.data);if(this._getType($)!==j.boolean){let H=this._getOrReturnCtx($);return N(H,{code:w.invalid_type,expected:j.boolean,received:H.parsedType}),U}return r($.data)}}g0.create=($)=>{return new g0({typeName:C.ZodBoolean,coerce:$?.coerce||!1,...v($)})};class U0 extends M{_parse($){if(this._def.coerce)$.data=new Date($.data);if(this._getType($)!==j.date){let X=this._getOrReturnCtx($);return N(X,{code:w.invalid_type,expected:j.date,received:X.parsedType}),U}if(Number.isNaN($.data.getTime())){let X=this._getOrReturnCtx($);return N(X,{code:w.invalid_date}),U}let H=new p,Q=void 0;for(let X of this._def.checks)if(X.kind==="min"){if($.data.getTime()<X.value)Q=this._getOrReturnCtx($,Q),N(Q,{code:w.too_small,message:X.message,inclusive:!0,exact:!1,minimum:X.value,type:"date"}),H.dirty()}else if(X.kind==="max"){if($.data.getTime()>X.value)Q=this._getOrReturnCtx($,Q),N(Q,{code:w.too_big,message:X.message,inclusive:!0,exact:!1,maximum:X.value,type:"date"}),H.dirty()}else P.assertNever(X);return{status:H.value,value:new Date($.data.getTime())}}_addCheck($){return new U0({...this._def,checks:[...this._def.checks,$]})}min($,f){return this._addCheck({kind:"min",value:$.getTime(),message:D.toString(f)})}max($,f){return this._addCheck({kind:"max",value:$.getTime(),message:D.toString(f)})}get minDate(){let $=null;for(let f of this._def.checks)if(f.kind==="min"){if($===null||f.value>$)$=f.value}return $!=null?new Date($):null}get maxDate(){let $=null;for(let f of this._def.checks)if(f.kind==="max"){if($===null||f.value<$)$=f.value}return $!=null?new Date($):null}}U0.create=($)=>{return new U0({checks:[],coerce:$?.coerce||!1,typeName:C.ZodDate,...v($)})};class Y1 extends M{_parse($){if(this._getType($)!==j.symbol){let H=this._getOrReturnCtx($);return N(H,{code:w.invalid_type,expected:j.symbol,received:H.parsedType}),U}return r($.data)}}Y1.create=($)=>{return new Y1({typeName:C.ZodSymbol,...v($)})};class l0 extends M{_parse($){if(this._getType($)!==j.undefined){let H=this._getOrReturnCtx($);return N(H,{code:w.invalid_type,expected:j.undefined,received:H.parsedType}),U}return r($.data)}}l0.create=($)=>{return new l0({typeName:C.ZodUndefined,...v($)})};class Z0 extends M{_parse($){if(this._getType($)!==j.null){let H=this._getOrReturnCtx($);return N(H,{code:w.invalid_type,expected:j.null,received:H.parsedType}),U}return r($.data)}}Z0.create=($)=>{return new Z0({typeName:C.ZodNull,...v($)})};class C0 extends M{constructor(){super(...arguments);this._any=!0}_parse($){return r($.data)}}C0.create=($)=>{return new C0({typeName:C.ZodAny,...v($)})};class V0 extends M{constructor(){super(...arguments);this._unknown=!0}_parse($){return r($.data)}}V0.create=($)=>{return new V0({typeName:C.ZodUnknown,...v($)})};class B0 extends M{_parse($){let f=this._getOrReturnCtx($);return N(f,{code:w.invalid_type,expected:j.never,received:f.parsedType}),U}}B0.create=($)=>{return new B0({typeName:C.ZodNever,...v($)})};class G1 extends M{_parse($){if(this._getType($)!==j.undefined){let H=this._getOrReturnCtx($);return N(H,{code:w.invalid_type,expected:j.void,received:H.parsedType}),U}return r($.data)}}G1.create=($)=>{return new G1({typeName:C.ZodVoid,...v($)})};class X0 extends M{_parse($){let{ctx:f,status:H}=this._processInputParams($),Q=this._def;if(f.parsedType!==j.array)return N(f,{code:w.invalid_type,expected:j.array,received:f.parsedType}),U;if(Q.exactLength!==null){let J=f.data.length>Q.exactLength.value,W=f.data.length<Q.exactLength.value;if(J||W)N(f,{code:J?w.too_big:w.too_small,minimum:W?Q.exactLength.value:void 0,maximum:J?Q.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:Q.exactLength.message}),H.dirty()}if(Q.minLength!==null){if(f.data.length<Q.minLength.value)N(f,{code:w.too_small,minimum:Q.minLength.value,type:"array",inclusive:!0,exact:!1,message:Q.minLength.message}),H.dirty()}if(Q.maxLength!==null){if(f.data.length>Q.maxLength.value)N(f,{code:w.too_big,maximum:Q.maxLength.value,type:"array",inclusive:!0,exact:!1,message:Q.maxLength.message}),H.dirty()}if(f.common.async)return Promise.all([...f.data].map((J,W)=>{return Q.type._parseAsync(new W0(f,J,f.path,W))})).then((J)=>{return p.mergeArray(H,J)});let X=[...f.data].map((J,W)=>{return Q.type._parseSync(new W0(f,J,f.path,W))});return p.mergeArray(H,X)}get element(){return this._def.type}min($,f){return new X0({...this._def,minLength:{value:$,message:D.toString(f)}})}max($,f){return new X0({...this._def,maxLength:{value:$,message:D.toString(f)}})}length($,f){return new X0({...this._def,exactLength:{value:$,message:D.toString(f)}})}nonempty($){return this.min(1,$)}}X0.create=($,f)=>{return new X0({type:$,minLength:null,maxLength:null,exactLength:null,typeName:C.ZodArray,...v(f)})};function T0($){if($ instanceof g){let f={};for(let H in $.shape){let Q=$.shape[H];f[H]=J0.create(T0(Q))}return new g({...$._def,shape:()=>f})}else if($ instanceof X0)return new X0({...$._def,type:T0($.element)});else if($ instanceof J0)return J0.create(T0($.unwrap()));else if($ instanceof L0)return L0.create(T0($.unwrap()));else if($ instanceof z0)return z0.create($.items.map((f)=>T0(f)));else return $}class g extends M{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(),f=P.objectKeys($);return this._cached={shape:$,keys:f},this._cached}_parse($){if(this._getType($)!==j.object){let G=this._getOrReturnCtx($);return N(G,{code:w.invalid_type,expected:j.object,received:G.parsedType}),U}let{status:H,ctx:Q}=this._processInputParams($),{shape:X,keys:J}=this._getCached(),W=[];if(!(this._def.catchall instanceof B0&&this._def.unknownKeys==="strip")){for(let G in Q.data)if(!J.includes(G))W.push(G)}let Y=[];for(let G of J){let _=X[G],S=Q.data[G];Y.push({key:{status:"valid",value:G},value:_._parse(new W0(Q,S,Q.path,G)),alwaysSet:G in Q.data})}if(this._def.catchall instanceof B0){let G=this._def.unknownKeys;if(G==="passthrough")for(let _ of W)Y.push({key:{status:"valid",value:_},value:{status:"valid",value:Q.data[_]}});else if(G==="strict"){if(W.length>0)N(Q,{code:w.unrecognized_keys,keys:W}),H.dirty()}else if(G==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let G=this._def.catchall;for(let _ of W){let S=Q.data[_];Y.push({key:{status:"valid",value:_},value:G._parse(new W0(Q,S,Q.path,_)),alwaysSet:_ in Q.data})}}if(Q.common.async)return Promise.resolve().then(async()=>{let G=[];for(let _ of Y){let S=await _.key,A=await _.value;G.push({key:S,value:A,alwaysSet:_.alwaysSet})}return G}).then((G)=>{return p.mergeObjectSync(H,G)});else return p.mergeObjectSync(H,Y)}get shape(){return this._def.shape()}strict($){return D.errToObj,new g({...this._def,unknownKeys:"strict",...$!==void 0?{errorMap:(f,H)=>{let Q=this._def.errorMap?.(f,H).message??H.defaultError;if(f.code==="unrecognized_keys")return{message:D.errToObj($).message??Q};return{message:Q}}}:{}})}strip(){return new g({...this._def,unknownKeys:"strip"})}passthrough(){return new g({...this._def,unknownKeys:"passthrough"})}extend($){return new g({...this._def,shape:()=>({...this._def.shape(),...$})})}merge($){return new g({unknownKeys:$._def.unknownKeys,catchall:$._def.catchall,shape:()=>({...this._def.shape(),...$._def.shape()}),typeName:C.ZodObject})}setKey($,f){return this.augment({[$]:f})}catchall($){return new g({...this._def,catchall:$})}pick($){let f={};for(let H of P.objectKeys($))if($[H]&&this.shape[H])f[H]=this.shape[H];return new g({...this._def,shape:()=>f})}omit($){let f={};for(let H of P.objectKeys(this.shape))if(!$[H])f[H]=this.shape[H];return new g({...this._def,shape:()=>f})}deepPartial(){return T0(this)}partial($){let f={};for(let H of P.objectKeys(this.shape)){let Q=this.shape[H];if($&&!$[H])f[H]=Q;else f[H]=Q.optional()}return new g({...this._def,shape:()=>f})}required($){let f={};for(let H of P.objectKeys(this.shape))if($&&!$[H])f[H]=this.shape[H];else{let X=this.shape[H];while(X instanceof J0)X=X._def.innerType;f[H]=X}return new g({...this._def,shape:()=>f})}keyof(){return h2(P.objectKeys(this.shape))}}g.create=($,f)=>{return new g({shape:()=>$,unknownKeys:"strip",catchall:B0.create(),typeName:C.ZodObject,...v(f)})};g.strictCreate=($,f)=>{return new g({shape:()=>$,unknownKeys:"strict",catchall:B0.create(),typeName:C.ZodObject,...v(f)})};g.lazycreate=($,f)=>{return new g({shape:$,unknownKeys:"strip",catchall:B0.create(),typeName:C.ZodObject,...v(f)})};class m0 extends M{_parse($){let{ctx:f}=this._processInputParams($),H=this._def.options;function Q(X){for(let W of X)if(W.result.status==="valid")return W.result;for(let W of X)if(W.result.status==="dirty")return f.common.issues.push(...W.ctx.common.issues),W.result;let J=X.map((W)=>new d(W.ctx.common.issues));return N(f,{code:w.invalid_union,unionErrors:J}),U}if(f.common.async)return Promise.all(H.map(async(X)=>{let J={...f,common:{...f.common,issues:[]},parent:null};return{result:await X._parseAsync({data:f.data,path:f.path,parent:J}),ctx:J}})).then(Q);else{let X=void 0,J=[];for(let Y of H){let G={...f,common:{...f.common,issues:[]},parent:null},_=Y._parseSync({data:f.data,path:f.path,parent:G});if(_.status==="valid")return _;else if(_.status==="dirty"&&!X)X={result:_,ctx:G};if(G.common.issues.length)J.push(G.common.issues)}if(X)return f.common.issues.push(...X.ctx.common.issues),X.result;let W=J.map((Y)=>new d(Y));return N(f,{code:w.invalid_union,unionErrors:W}),U}}get options(){return this._def.options}}m0.create=($,f)=>{return new m0({options:$,typeName:C.ZodUnion,...v(f)})};var j0=($)=>{if($ instanceof c0)return j0($.schema);else if($ instanceof Y0)return j0($.innerType());else if($ instanceof u0)return[$.value];else if($ instanceof D0)return $.options;else if($ instanceof y0)return P.objectValues($.enum);else if($ instanceof i0)return j0($._def.innerType);else if($ instanceof l0)return[void 0];else if($ instanceof Z0)return[null];else if($ instanceof J0)return[void 0,...j0($.unwrap())];else if($ instanceof L0)return[null,...j0($.unwrap())];else if($ instanceof U1)return j0($.unwrap());else if($ instanceof o0)return j0($.unwrap());else if($ instanceof s0)return j0($._def.innerType);else return[]};class A1 extends M{_parse($){let{ctx:f}=this._processInputParams($);if(f.parsedType!==j.object)return N(f,{code:w.invalid_type,expected:j.object,received:f.parsedType}),U;let H=this.discriminator,Q=f.data[H],X=this.optionsMap.get(Q);if(!X)return N(f,{code:w.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[H]}),U;if(f.common.async)return X._parseAsync({data:f.data,path:f.path,parent:f});else return X._parseSync({data:f.data,path:f.path,parent:f})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create($,f,H){let Q=new Map;for(let X of f){let J=j0(X.shape[$]);if(!J.length)throw Error(`A discriminator value for key \`${$}\` could not be extracted from all schema options`);for(let W of J){if(Q.has(W))throw Error(`Discriminator property ${String($)} has duplicate value ${String(W)}`);Q.set(W,X)}}return new A1({typeName:C.ZodDiscriminatedUnion,discriminator:$,options:f,optionsMap:Q,...v(H)})}}function L$($,f){let H=_0($),Q=_0(f);if($===f)return{valid:!0,data:$};else if(H===j.object&&Q===j.object){let X=P.objectKeys(f),J=P.objectKeys($).filter((Y)=>X.indexOf(Y)!==-1),W={...$,...f};for(let Y of J){let G=L$($[Y],f[Y]);if(!G.valid)return{valid:!1};W[Y]=G.data}return{valid:!0,data:W}}else if(H===j.array&&Q===j.array){if($.length!==f.length)return{valid:!1};let X=[];for(let J=0;J<$.length;J++){let W=$[J],Y=f[J],G=L$(W,Y);if(!G.valid)return{valid:!1};X.push(G.data)}return{valid:!0,data:X}}else if(H===j.date&&Q===j.date&&+$===+f)return{valid:!0,data:$};else return{valid:!1}}class n0 extends M{_parse($){let{status:f,ctx:H}=this._processInputParams($),Q=(X,J)=>{if(b1(X)||b1(J))return U;let W=L$(X.value,J.value);if(!W.valid)return N(H,{code:w.invalid_intersection_types}),U;if(F1(X)||F1(J))f.dirty();return{status:f.value,value:W.data}};if(H.common.async)return Promise.all([this._def.left._parseAsync({data:H.data,path:H.path,parent:H}),this._def.right._parseAsync({data:H.data,path:H.path,parent:H})]).then(([X,J])=>Q(X,J));else return Q(this._def.left._parseSync({data:H.data,path:H.path,parent:H}),this._def.right._parseSync({data:H.data,path:H.path,parent:H}))}}n0.create=($,f,H)=>{return new n0({left:$,right:f,typeName:C.ZodIntersection,...v(H)})};class z0 extends M{_parse($){let{status:f,ctx:H}=this._processInputParams($);if(H.parsedType!==j.array)return N(H,{code:w.invalid_type,expected:j.array,received:H.parsedType}),U;if(H.data.length<this._def.items.length)return N(H,{code:w.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),U;if(!this._def.rest&&H.data.length>this._def.items.length)N(H,{code:w.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),f.dirty();let X=[...H.data].map((J,W)=>{let Y=this._def.items[W]||this._def.rest;if(!Y)return null;return Y._parse(new W0(H,J,H.path,W))}).filter((J)=>!!J);if(H.common.async)return Promise.all(X).then((J)=>{return p.mergeArray(f,J)});else return p.mergeArray(f,X)}get items(){return this._def.items}rest($){return new z0({...this._def,rest:$})}}z0.create=($,f)=>{if(!Array.isArray($))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new z0({items:$,typeName:C.ZodTuple,rest:null,...v(f)})};class q1 extends M{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse($){let{status:f,ctx:H}=this._processInputParams($);if(H.parsedType!==j.object)return N(H,{code:w.invalid_type,expected:j.object,received:H.parsedType}),U;let Q=[],X=this._def.keyType,J=this._def.valueType;for(let W in H.data)Q.push({key:X._parse(new W0(H,W,H.path,W)),value:J._parse(new W0(H,H.data[W],H.path,W)),alwaysSet:W in H.data});if(H.common.async)return p.mergeObjectAsync(f,Q);else return p.mergeObjectSync(f,Q)}get element(){return this._def.valueType}static create($,f,H){if(f instanceof M)return new q1({keyType:$,valueType:f,typeName:C.ZodRecord,...v(H)});return new q1({keyType:Q0.create(),valueType:$,typeName:C.ZodRecord,...v(f)})}}class _1 extends M{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse($){let{status:f,ctx:H}=this._processInputParams($);if(H.parsedType!==j.map)return N(H,{code:w.invalid_type,expected:j.map,received:H.parsedType}),U;let Q=this._def.keyType,X=this._def.valueType,J=[...H.data.entries()].map(([W,Y],G)=>{return{key:Q._parse(new W0(H,W,H.path,[G,"key"])),value:X._parse(new W0(H,Y,H.path,[G,"value"]))}});if(H.common.async){let W=new Map;return Promise.resolve().then(async()=>{for(let Y of J){let G=await Y.key,_=await Y.value;if(G.status==="aborted"||_.status==="aborted")return U;if(G.status==="dirty"||_.status==="dirty")f.dirty();W.set(G.value,_.value)}return{status:f.value,value:W}})}else{let W=new Map;for(let Y of J){let{key:G,value:_}=Y;if(G.status==="aborted"||_.status==="aborted")return U;if(G.status==="dirty"||_.status==="dirty")f.dirty();W.set(G.value,_.value)}return{status:f.value,value:W}}}}_1.create=($,f,H)=>{return new _1({valueType:f,keyType:$,typeName:C.ZodMap,...v(H)})};class O0 extends M{_parse($){let{status:f,ctx:H}=this._processInputParams($);if(H.parsedType!==j.set)return N(H,{code:w.invalid_type,expected:j.set,received:H.parsedType}),U;let Q=this._def;if(Q.minSize!==null){if(H.data.size<Q.minSize.value)N(H,{code:w.too_small,minimum:Q.minSize.value,type:"set",inclusive:!0,exact:!1,message:Q.minSize.message}),f.dirty()}if(Q.maxSize!==null){if(H.data.size>Q.maxSize.value)N(H,{code:w.too_big,maximum:Q.maxSize.value,type:"set",inclusive:!0,exact:!1,message:Q.maxSize.message}),f.dirty()}let X=this._def.valueType;function J(Y){let G=new Set;for(let _ of Y){if(_.status==="aborted")return U;if(_.status==="dirty")f.dirty();G.add(_.value)}return{status:f.value,value:G}}let W=[...H.data.values()].map((Y,G)=>X._parse(new W0(H,Y,H.path,G)));if(H.common.async)return Promise.all(W).then((Y)=>J(Y));else return J(W)}min($,f){return new O0({...this._def,minSize:{value:$,message:D.toString(f)}})}max($,f){return new O0({...this._def,maxSize:{value:$,message:D.toString(f)}})}size($,f){return this.min($,f).max($,f)}nonempty($){return this.min(1,$)}}O0.create=($,f)=>{return new O0({valueType:$,minSize:null,maxSize:null,typeName:C.ZodSet,...v(f)})};class x0 extends M{constructor(){super(...arguments);this.validate=this.implement}_parse($){let{ctx:f}=this._processInputParams($);if(f.parsedType!==j.function)return N(f,{code:w.invalid_type,expected:j.function,received:f.parsedType}),U;function H(W,Y){return W1({data:W,path:f.path,errorMaps:[f.common.contextualErrorMap,f.schemaErrorMap,P0(),w0].filter((G)=>!!G),issueData:{code:w.invalid_arguments,argumentsError:Y}})}function Q(W,Y){return W1({data:W,path:f.path,errorMaps:[f.common.contextualErrorMap,f.schemaErrorMap,P0(),w0].filter((G)=>!!G),issueData:{code:w.invalid_return_type,returnTypeError:Y}})}let X={errorMap:f.common.contextualErrorMap},J=f.data;if(this._def.returns instanceof v0){let W=this;return r(async function(...Y){let G=new d([]),_=await W._def.args.parseAsync(Y,X).catch((k)=>{throw G.addIssue(H(Y,k)),G}),S=await Reflect.apply(J,this,_);return await W._def.returns._def.type.parseAsync(S,X).catch((k)=>{throw G.addIssue(Q(S,k)),G})})}else{let W=this;return r(function(...Y){let G=W._def.args.safeParse(Y,X);if(!G.success)throw new d([H(Y,G.error)]);let _=Reflect.apply(J,this,G.data),S=W._def.returns.safeParse(_,X);if(!S.success)throw new d([Q(_,S.error)]);return S.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...$){return new x0({...this._def,args:z0.create($).rest(V0.create())})}returns($){return new x0({...this._def,returns:$})}implement($){return this.parse($)}strictImplement($){return this.parse($)}static create($,f,H){return new x0({args:$?$:z0.create([]).rest(V0.create()),returns:f||V0.create(),typeName:C.ZodFunction,...v(H)})}}class c0 extends M{get schema(){return this._def.getter()}_parse($){let{ctx:f}=this._processInputParams($);return this._def.getter()._parse({data:f.data,path:f.path,parent:f})}}c0.create=($,f)=>{return new c0({getter:$,typeName:C.ZodLazy,...v(f)})};class u0 extends M{_parse($){if($.data!==this._def.value){let f=this._getOrReturnCtx($);return N(f,{received:f.data,code:w.invalid_literal,expected:this._def.value}),U}return{status:"valid",value:$.data}}get value(){return this._def.value}}u0.create=($,f)=>{return new u0({value:$,typeName:C.ZodLiteral,...v(f)})};function h2($,f){return new D0({values:$,typeName:C.ZodEnum,...v(f)})}class D0 extends M{_parse($){if(typeof $.data!=="string"){let f=this._getOrReturnCtx($),H=this._def.values;return N(f,{expected:P.joinValues(H),received:f.parsedType,code:w.invalid_type}),U}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has($.data)){let f=this._getOrReturnCtx($),H=this._def.values;return N(f,{received:f.data,code:w.invalid_enum_value,options:H}),U}return r($.data)}get options(){return this._def.values}get enum(){let $={};for(let f of this._def.values)$[f]=f;return $}get Values(){let $={};for(let f of this._def.values)$[f]=f;return $}get Enum(){let $={};for(let f of this._def.values)$[f]=f;return $}extract($,f=this._def){return D0.create($,{...this._def,...f})}exclude($,f=this._def){return D0.create(this.options.filter((H)=>!$.includes(H)),{...this._def,...f})}}D0.create=h2;class y0 extends M{_parse($){let f=P.getValidEnumValues(this._def.values),H=this._getOrReturnCtx($);if(H.parsedType!==j.string&&H.parsedType!==j.number){let Q=P.objectValues(f);return N(H,{expected:P.joinValues(Q),received:H.parsedType,code:w.invalid_type}),U}if(!this._cache)this._cache=new Set(P.getValidEnumValues(this._def.values));if(!this._cache.has($.data)){let Q=P.objectValues(f);return N(H,{received:H.data,code:w.invalid_enum_value,options:Q}),U}return r($.data)}get enum(){return this._def.values}}y0.create=($,f)=>{return new y0({values:$,typeName:C.ZodNativeEnum,...v(f)})};class v0 extends M{unwrap(){return this._def.type}_parse($){let{ctx:f}=this._processInputParams($);if(f.parsedType!==j.promise&&f.common.async===!1)return N(f,{code:w.invalid_type,expected:j.promise,received:f.parsedType}),U;let H=f.parsedType===j.promise?f.data:Promise.resolve(f.data);return r(H.then((Q)=>{return this._def.type.parseAsync(Q,{path:f.path,errorMap:f.common.contextualErrorMap})}))}}v0.create=($,f)=>{return new v0({type:$,typeName:C.ZodPromise,...v(f)})};class Y0 extends M{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===C.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse($){let{status:f,ctx:H}=this._processInputParams($),Q=this._def.effect||null,X={addIssue:(J)=>{if(N(H,J),J.fatal)f.abort();else f.dirty()},get path(){return H.path}};if(X.addIssue=X.addIssue.bind(X),Q.type==="preprocess"){let J=Q.transform(H.data,X);if(H.common.async)return Promise.resolve(J).then(async(W)=>{if(f.value==="aborted")return U;let Y=await this._def.schema._parseAsync({data:W,path:H.path,parent:H});if(Y.status==="aborted")return U;if(Y.status==="dirty")return A0(Y.value);if(f.value==="dirty")return A0(Y.value);return Y});else{if(f.value==="aborted")return U;let W=this._def.schema._parseSync({data:J,path:H.path,parent:H});if(W.status==="aborted")return U;if(W.status==="dirty")return A0(W.value);if(f.value==="dirty")return A0(W.value);return W}}if(Q.type==="refinement"){let J=(W)=>{let Y=Q.refinement(W,X);if(H.common.async)return Promise.resolve(Y);if(Y instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return W};if(H.common.async===!1){let W=this._def.schema._parseSync({data:H.data,path:H.path,parent:H});if(W.status==="aborted")return U;if(W.status==="dirty")f.dirty();return J(W.value),{status:f.value,value:W.value}}else return this._def.schema._parseAsync({data:H.data,path:H.path,parent:H}).then((W)=>{if(W.status==="aborted")return U;if(W.status==="dirty")f.dirty();return J(W.value).then(()=>{return{status:f.value,value:W.value}})})}if(Q.type==="transform")if(H.common.async===!1){let J=this._def.schema._parseSync({data:H.data,path:H.path,parent:H});if(!N0(J))return U;let W=Q.transform(J.value,X);if(W instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:f.value,value:W}}else return this._def.schema._parseAsync({data:H.data,path:H.path,parent:H}).then((J)=>{if(!N0(J))return U;return Promise.resolve(Q.transform(J.value,X)).then((W)=>({status:f.value,value:W}))});P.assertNever(Q)}}Y0.create=($,f,H)=>{return new Y0({schema:$,typeName:C.ZodEffects,effect:f,...v(H)})};Y0.createWithPreprocess=($,f,H)=>{return new Y0({schema:f,effect:{type:"preprocess",transform:$},typeName:C.ZodEffects,...v(H)})};class J0 extends M{_parse($){if(this._getType($)===j.undefined)return r(void 0);return this._def.innerType._parse($)}unwrap(){return this._def.innerType}}J0.create=($,f)=>{return new J0({innerType:$,typeName:C.ZodOptional,...v(f)})};class L0 extends M{_parse($){if(this._getType($)===j.null)return r(null);return this._def.innerType._parse($)}unwrap(){return this._def.innerType}}L0.create=($,f)=>{return new L0({innerType:$,typeName:C.ZodNullable,...v(f)})};class i0 extends M{_parse($){let{ctx:f}=this._processInputParams($),H=f.data;if(f.parsedType===j.undefined)H=this._def.defaultValue();return this._def.innerType._parse({data:H,path:f.path,parent:f})}removeDefault(){return this._def.innerType}}i0.create=($,f)=>{return new i0({innerType:$,typeName:C.ZodDefault,defaultValue:typeof f.default==="function"?f.default:()=>f.default,...v(f)})};class s0 extends M{_parse($){let{ctx:f}=this._processInputParams($),H={...f,common:{...f.common,issues:[]}},Q=this._def.innerType._parse({data:H.data,path:H.path,parent:{...H}});if(K0(Q))return Q.then((X)=>{return{status:"valid",value:X.status==="valid"?X.value:this._def.catchValue({get error(){return new d(H.common.issues)},input:H.data})}});else return{status:"valid",value:Q.status==="valid"?Q.value:this._def.catchValue({get error(){return new d(H.common.issues)},input:H.data})}}removeCatch(){return this._def.innerType}}s0.create=($,f)=>{return new s0({innerType:$,typeName:C.ZodCatch,catchValue:typeof f.catch==="function"?f.catch:()=>f.catch,...v(f)})};class B1 extends M{_parse($){if(this._getType($)!==j.nan){let H=this._getOrReturnCtx($);return N(H,{code:w.invalid_type,expected:j.nan,received:H.parsedType}),U}return{status:"valid",value:$.data}}}B1.create=($)=>{return new B1({typeName:C.ZodNaN,...v($)})};var Y4=Symbol("zod_brand");class U1 extends M{_parse($){let{ctx:f}=this._processInputParams($),H=f.data;return this._def.type._parse({data:H,path:f.path,parent:f})}unwrap(){return this._def.type}}class z1 extends M{_parse($){let{status:f,ctx:H}=this._processInputParams($);if(H.common.async)return(async()=>{let X=await this._def.in._parseAsync({data:H.data,path:H.path,parent:H});if(X.status==="aborted")return U;if(X.status==="dirty")return f.dirty(),A0(X.value);else return this._def.out._parseAsync({data:X.value,path:H.path,parent:H})})();else{let Q=this._def.in._parseSync({data:H.data,path:H.path,parent:H});if(Q.status==="aborted")return U;if(Q.status==="dirty")return f.dirty(),{status:"dirty",value:Q.value};else return this._def.out._parseSync({data:Q.value,path:H.path,parent:H})}}static create($,f){return new z1({in:$,out:f,typeName:C.ZodPipeline})}}class o0 extends M{_parse($){let f=this._def.innerType._parse($),H=(Q)=>{if(N0(Q))Q.value=Object.freeze(Q.value);return Q};return K0(f)?f.then((Q)=>H(Q)):H(f)}unwrap(){return this._def.innerType}}o0.create=($,f)=>{return new o0({innerType:$,typeName:C.ZodReadonly,...v(f)})};function U2($,f){let H=typeof $==="function"?$(f):typeof $==="string"?{message:$}:$;return typeof H==="string"?{message:H}:H}function M2($,f={},H){if($)return C0.create().superRefine((Q,X)=>{let J=$(Q);if(J instanceof Promise)return J.then((W)=>{if(!W){let Y=U2(f,Q),G=Y.fatal??H??!0;X.addIssue({code:"custom",...Y,fatal:G})}});if(!J){let W=U2(f,Q),Y=W.fatal??H??!0;X.addIssue({code:"custom",...W,fatal:Y})}return});return C0.create()}var G4={object:g.lazycreate},C;(function($){$.ZodString="ZodString",$.ZodNumber="ZodNumber",$.ZodNaN="ZodNaN",$.ZodBigInt="ZodBigInt",$.ZodBoolean="ZodBoolean",$.ZodDate="ZodDate",$.ZodSymbol="ZodSymbol",$.ZodUndefined="ZodUndefined",$.ZodNull="ZodNull",$.ZodAny="ZodAny",$.ZodUnknown="ZodUnknown",$.ZodNever="ZodNever",$.ZodVoid="ZodVoid",$.ZodArray="ZodArray",$.ZodObject="ZodObject",$.ZodUnion="ZodUnion",$.ZodDiscriminatedUnion="ZodDiscriminatedUnion",$.ZodIntersection="ZodIntersection",$.ZodTuple="ZodTuple",$.ZodRecord="ZodRecord",$.ZodMap="ZodMap",$.ZodSet="ZodSet",$.ZodFunction="ZodFunction",$.ZodLazy="ZodLazy",$.ZodLiteral="ZodLiteral",$.ZodEnum="ZodEnum",$.ZodEffects="ZodEffects",$.ZodNativeEnum="ZodNativeEnum",$.ZodOptional="ZodOptional",$.ZodNullable="ZodNullable",$.ZodDefault="ZodDefault",$.ZodCatch="ZodCatch",$.ZodPromise="ZodPromise",$.ZodBranded="ZodBranded",$.ZodPipeline="ZodPipeline",$.ZodReadonly="ZodReadonly"})(C||(C={}));var q4=($,f={message:`Input not instance of ${$.name}`})=>M2((H)=>H instanceof $,f),k2=Q0.create,I2=R0.create,_4=B1.create,B4=E0.create,P2=g0.create,z4=U0.create,w4=Y1.create,j4=l0.create,L4=Z0.create,S4=C0.create,N4=V0.create,V4=B0.create,R4=G1.create,E4=X0.create,D4=g.create,b4=g.strictCreate,F4=m0.create,A4=A1.create,U4=n0.create,C4=z0.create,O4=q1.create,v4=_1.create,h4=O0.create,M4=x0.create,k4=c0.create,I4=u0.create,P4=D0.create,K4=y0.create,T4=v0.create,x4=Y0.create,g4=J0.create,l4=L0.create,Z4=Y0.createWithPreprocess,m4=z1.create,n4=()=>k2().optional(),c4=()=>I2().optional(),u4=()=>P2().optional(),y4={string:($)=>Q0.create({...$,coerce:!0}),number:($)=>R0.create({...$,coerce:!0}),boolean:($)=>g0.create({...$,coerce:!0}),bigint:($)=>E0.create({...$,coerce:!0}),date:($)=>U0.create({...$,coerce:!0})};var i4=U;X1();class d0 extends a{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 S${schemaCache=new WeakMap;stats={hits:0,misses:0,validations:0};async validate($,f){this.stats.validations++;try{let H=this.schemaCache.get(f);if(!H)this.stats.misses++,H={schema:f,resultCache:new WeakMap},this.schemaCache.set(f,H);else this.stats.hits++;return await H.schema.parseAsync($)}catch(H){if(H instanceof d)throw new d0(H);throw H}}validateSync($,f){this.stats.validations++;try{let H=this.schemaCache.get(f);if(!H)this.stats.misses++,H={schema:f,resultCache:new WeakMap},this.schemaCache.set(f,H);else this.stats.hits++;return H.schema.parse($)}catch(H){if(H instanceof d)throw new d0(H);throw H}}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()}}X1();class N${customHandler;isDevelopment;constructor($){this.customHandler=$,this.isDevelopment=!0}setCustomHandler($){this.customHandler=$}async handle($,f){if(console.log("ErrorHandler.handle called with:",$.constructor.name,$.message),this.customHandler)try{return await this.customHandler($,f)}catch(H){console.error("Custom error handler failed:",H)}if($ instanceof d0)return console.log("Handling as ValidationException"),this.handleValidationException($,f);if($ instanceof a)return console.log("Handling as HTTPException"),this.handleHTTPException($,f);return console.log("Handling as generic error"),this.handleGenericError($,f)}handleValidationException($,f){let H=$.toJSON();if(this.isDevelopment)console.error("Validation Error:",{path:f.req.path,method:f.req.method,details:H.details});return f.json(H,$.statusCode)}handleHTTPException($,f){let H=$.toJSON();if($.statusCode>=500)console.error("HTTP Exception:",{name:$.name,statusCode:$.statusCode,message:$.message,path:f.req.path,method:f.req.method,...this.isDevelopment&&$.stack?{stack:$.stack}:{}});else if(this.isDevelopment)console.warn("HTTP Exception:",{name:$.name,statusCode:$.statusCode,message:$.message,path:f.req.path,method:f.req.method});return f.json(H,$.statusCode)}handleGenericError($,f){console.error("Internal Server Error:",{name:$.name,message:$.message,path:f.req.path,method:f.req.method,stack:$.stack});let H={error:"Internal Server Error",statusCode:500};if(this.isDevelopment){if(H.message=$.message,H.name=$.name,$.stack)H.stack=$.stack.split(`
15
- `).map((Q)=>Q.trim())}else H.message="An unexpected error occurred";return f.json(H,500)}isDevelopmentMode(){return this.isDevelopment}setDevelopmentMode($){this.isDevelopment=$}}class V${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 f=this.resolveInstallOrder();for(let H of f)await this.plugins.get(H).install($),this.installed.add(H)}isInstalled($){return this.installed.has($)}getPlugin($){return this.plugins.get($)}getPluginNames(){return Array.from(this.plugins.keys())}resolveInstallOrder(){let $=new Set,f=new Set,H=[],Q=(X,J=[])=>{if(f.has(X)){let Y=[...J,X].join(" -> ");throw Error(`Circular dependency detected in plugins: ${Y}`)}if($.has(X))return;f.add(X);let W=this.plugins.get(X);if(!W)throw Error(`Plugin "${X}" is not registered`);if(W.dependencies)for(let Y of W.dependencies){if(!this.plugins.has(Y))throw Error(`Plugin "${X}" depends on "${Y}" which is not registered`);Q(Y,[...J,X])}f.delete(X),$.add(X),H.push(X)};for(let X of this.plugins.keys())Q(X);return H}}function T2($){let{origin:f="*",methods:H=["GET","POST","PUT","DELETE","PATCH","OPTIONS"],allowedHeaders:Q=["Content-Type","Authorization"],exposedHeaders:X=[],credentials:J=!1,maxAge:W=86400}=$||{};return async(Y,G)=>{let _=Y.req.header("origin"),S=Y.req.method,A=null;if(typeof f==="string")A=f;else if(Array.isArray(f)){if(_&&f.includes(_))A=_}else if(typeof f==="function"){if(_&&f(_))A=_}if(A)Y.header("Access-Control-Allow-Origin",A);if(J)Y.header("Access-Control-Allow-Credentials","true");if(X.length>0)Y.header("Access-Control-Expose-Headers",X.join(", "));if(S==="OPTIONS")return Y.header("Access-Control-Allow-Methods",H.join(", ")),Y.header("Access-Control-Allow-Headers",Q.join(", ")),Y.header("Access-Control-Max-Age",W.toString()),Y.body(null,204);await G()}}function x2($){let{windowMs:f=60000,max:H=100,keyGenerator:Q=(W)=>{return W.req.header("x-forwarded-for")||W.req.header("x-real-ip")||"unknown"}}=$,X=new Map,J=setInterval(()=>{let W=Date.now();for(let[Y,G]of X.entries())if(W>G.resetTime)X.delete(Y)},f);if(typeof process<"u"&&process.on)process.on("exit",()=>clearInterval(J));return async(W,Y)=>{let G=Q(W),_=Date.now(),S=X.get(G);if(!S||_>S.resetTime)X.set(G,{count:1,resetTime:_+f}),W.header("X-RateLimit-Limit",H.toString()),W.header("X-RateLimit-Remaining",(H-1).toString()),W.header("X-RateLimit-Reset",new Date(_+f).toISOString()),await Y();else if(S.count<H)S.count++,W.header("X-RateLimit-Limit",H.toString()),W.header("X-RateLimit-Remaining",(H-S.count).toString()),W.header("X-RateLimit-Reset",new Date(S.resetTime).toISOString()),await Y();else{let A=Math.ceil((S.resetTime-_)/1000);return W.header("X-RateLimit-Limit",H.toString()),W.header("X-RateLimit-Remaining","0"),W.header("X-RateLimit-Reset",new Date(S.resetTime).toISOString()),W.header("Retry-After",A.toString()),W.json({error:"Too Many Requests",message:`Rate limit exceeded. Please try again in ${A} seconds.`,retryAfter:A},429)}}}function g2($){let{threshold:f=1024,level:H=6}=$||{};return async(Q,X)=>{await X();let J=Q.res;if(!J)return;let W=J.headers.get("content-type")||"",Y=J.headers.get("content-length"),G=Q.req.header("accept-encoding")||"";if(!["text/","application/json","application/javascript","application/xml","application/x-www-form-urlencoded"].some((h)=>W.toLowerCase().includes(h)))return;if(Y&&parseInt(Y)<f)return;if(J.headers.get("content-encoding"))return;let A=await J.arrayBuffer();if(A.byteLength<f)return;let k=null,Z=null;if(G.includes("br")&&typeof CompressionStream<"u")try{let h=new CompressionStream("deflate"),T=h.writable.getWriter();T.write(new Uint8Array(A)),T.close();let m=h.readable.getReader(),o=[];while(!0){let{done:s,value:t}=await m.read();if(s)break;o.push(t)}let e=o.reduce((s,t)=>s+t.length,0),i=new Uint8Array(e),$0=0;for(let s of o)i.set(s,$0),$0+=s.length;k=i,Z="deflate"}catch(h){k=null}if(!k&&G.includes("gzip")&&typeof CompressionStream<"u")try{let h=new CompressionStream("gzip"),T=h.writable.getWriter();T.write(new Uint8Array(A)),T.close();let m=h.readable.getReader(),o=[];while(!0){let{done:s,value:t}=await m.read();if(s)break;o.push(t)}let e=o.reduce((s,t)=>s+t.length,0),i=new Uint8Array(e),$0=0;for(let s of o)i.set(s,$0),$0+=s.length;k=i,Z="gzip"}catch(h){k=null}if(k&&Z&&k.byteLength<A.byteLength){let h=new Headers(J.headers);return h.set("content-encoding",Z),h.set("content-length",k.byteLength.toString()),h.delete("content-length"),new Response(k,{status:J.status,statusText:J.statusText,headers:h})}}}class D${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 u1,this.metadata=new S0,this.container=new H$,this.validator=new S$,this.errorHandler=new N$,this.pluginManager=new V$,this.compiler=new z$(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 f=S0.getControllerMetadata($);if(f)this.metadata.registerController($,f);let H=S0.getRouteMethods($);for(let Q of H){let X=S0.getRouteMetadata($.prototype,Q),J=S0.getParameterMetadata($.prototype,Q),W=S0.getDependencyMetadata($.prototype,Q);if(X&&X.method&&X.path!==void 0){let Y=f?.prefix||"",G=this.normalizePath(Y,X.path);this.metadata.registerRoute({target:$,propertyKey:Q,method:X.method,path:G,middleware:[...f?.middleware||[],...X.middleware||[]],parameters:J||X.parameters||[],dependencies:W||X.dependencies||[],responses:X.responses||[],docs:X.docs})}}}get($,f){this.registerFunctionalRoute("GET",$,f)}post($,f){this.registerFunctionalRoute("POST",$,f)}put($,f){this.registerFunctionalRoute("PUT",$,f)}delete($,f){this.registerFunctionalRoute("DELETE",$,f)}patch($,f){this.registerFunctionalRoute("PATCH",$,f)}route($){return new c2(this,$)}group($,f){let H=this.groupPrefix;this.groupPrefix=this.normalizePath(this.groupPrefix,$),f(),this.groupPrefix=H}registerFunctionalRoute($,f,H){let Q=this.normalizePath(this.groupPrefix,f),X={target:n2,propertyKey:`${$.toLowerCase()}_${Q}`,method:$,path:Q,middleware:H.middleware||[],parameters:this.extractParametersFromSchema(H.schema),dependencies:[],responses:H.responses||[],docs:H.docs,handler:H.handler};this.metadata.registerRoute(X)}extractParametersFromSchema($){let f=[],H=0;if($?.body)f.push({index:H++,type:"body",schema:$.body,required:!0});if($?.query)f.push({index:H++,type:"query",schema:$.query,required:!1});if($?.params)f.push({index:H++,type:"param",schema:$.params,required:!0});if($?.headers)f.push({index:H++,type:"header",schema:$.headers,required:!1});return f}use($){this.globalMiddleware.push($),this.hono.use("*",$)}useCors($){let f=T2($);this.use(f)}useRateLimit($){let f=x2($);this.use(f)}useCompression($){let f=g2($);this.use(f)}usePlugin($){this.pluginManager.register($)}getPluginManager(){return this.pluginManager}onError($){this.errorHandler.setCustomHandler($)}getErrorHandler(){return this.errorHandler}normalizePath(...$){let f=$.filter((H)=>H!=="").join("/").replace(/\/+/g,"/").replace(/\/$/,"");return f.startsWith("/")?f:`/${f}`}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}async listen($,f){if(!this.compiled)await this.compile();return this.createAdapter().listen($,f)}createAdapter(){let $=this.config.adapter||"hono";switch($){case"hono":{let{HonoAdapter:f}=w1(E$);return new f(this.hono)}case"express":{let{ExpressAdapter:f}=w1(m2);return new f(this)}case"native":{let{HonoAdapter:f}=w1(E$);return new f(this.hono)}default:throw Error(`Unknown adapter type: ${$}. Supported adapters: 'hono', 'express', 'native'`)}}}class n2{}class c2{app;path;constructor($,f){this.app=$;this.path=f}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 b$($){let f={docs:!1,cors:!1,...$};return new D$(f)}function u2($,f,H,Q){let X=$.getContainer(),J=typeof H==="function"?H:()=>H;X.register(f,{scope:Q?.scope||"singleton",factory:J})}function F$($){return new a0($)}async function y2($,f){let H=b$(f);await $(H),await H.compile();let Q=F$(H);return{app:H,client:Q}}function i2($){$.getContainer().clear()}
14
+ ***************************************************************************** */var F8;(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 z2(Object.create(null))}:q?function(){return z2({__proto__:null})}:function(){return z2({})},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:a5(),D=typeof Set==="function"&&typeof Set.prototype.entries==="function"?Set:t5(),_=typeof WeakMap==="function"?WeakMap:e5(),A=X?Symbol.for("@reflect-metadata:registry"):void 0,R=o5(),M=s5(R);function S(U,V,F,f){if(!d(F)){if(!d9(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(!d9(U))throw TypeError();if(!l9(V))throw TypeError();return t(U,V)}}H("decorate",S);function O(U,V){function F(f,g){if(!X1(f))throw TypeError();if(!d(g)&&!i5(g))throw TypeError();N$(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 N$(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 r(U,V,F){if(!X1(V))throw TypeError();if(!d(F))F=f1(F);return y0(U,V,F)}H("getOwnMetadata",r);function v(U,V){if(!X1(U))throw TypeError();if(!d(V))V=f1(V);return u0(U,V)}H("getMetadataKeys",v);function e(U,V){if(!X1(U))throw TypeError();if(!d(V))V=f1(V);return D$(U,V)}H("getOwnMetadataKeys",e);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=c0(V,F,!1);if(d(f))return!1;return f.OrdinaryDeleteMetadata(U,V,F)}H("deleteMetadata",$1);function t(U,V){for(var F=U.length-1;F>=0;--F){var f=U[F],g=f(V);if(!d(g)&&!z0(g)){if(!l9(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=w2(V);if(!z0(g))return B1(U,g,F);return!1}function w1(U,V,F){var f=c0(V,F,!1);if(d(f))return!1;return m9(f.OrdinaryHasOwnMetadata(U,V,F))}function L1(U,V,F){var f=w1(U,V,F);if(f)return y0(U,V,F);var g=w2(V);if(!z0(g))return L1(U,g,F);return}function y0(U,V,F){var f=c0(V,F,!1);if(d(f))return;return f.OrdinaryGetOwnMetadata(U,V,F)}function N$(U,V,F,f){var g=c0(F,f,!0);g.OrdinaryDefineOwnMetadata(U,V,F,f)}function u0(U,V){var F=D$(U,V),f=w2(U);if(f===null)return F;var g=u0(f,V);if(g.length<=0)return F;if(F.length<=0)return g;var Y1=new D,q1=[];for(var o=0,P=F;o<P.length;o++){var I=P[o],Z=Y1.has(I);if(!Z)Y1.add(I),q1.push(I)}for(var k=0,a=g;k<a.length;k++){var I=a[k],Z=Y1.has(I);if(!Z)Y1.add(I),q1.push(I)}return q1}function D$(U,V){var F=c0(U,V,!1);if(!F)return[];return F.OrdinaryOwnMetadataKeys(U,V)}function c9(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 m5(U){return typeof U==="symbol"}function X1(U){return typeof U==="object"?U!==null:typeof U==="function"}function d5(U,V){switch(c9(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=n9(U,Y);if(f!==void 0){var g=f.call(U,F);if(X1(g))throw TypeError();return g}return l5(U,F==="default"?"number":F)}function l5(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 m9(U){return!!U}function n5(U){return""+U}function f1(U){var V=d5(U,3);if(m5(V))return V;return n5(V)}function d9(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 l9(U){return typeof U==="function"}function i5(U){switch(c9(U)){case 3:return!0;case 4:return!0;default:return!1}}function B2(U,V){return U===V||U!==U&&V!==V}function n9(U,V){var F=U[V];if(F===void 0||F===null)return;if(!_0(F))throw TypeError();return F}function i9(U){var V=n9(U,G);if(!_0(V))throw TypeError();var F=V.call(U);if(!X1(F))throw TypeError();return F}function p9(U){return U.value}function o9(U){var V=U.next();return V.done?!1:V}function s9(U){var V=U.return;if(V)V.call(U)}function w2(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 p5(){var U;if(!d(A)&&typeof Q.Reflect<"u"&&!(A in Q.Reflect)&&typeof Q.Reflect.defineMetadata==="function")U=r5(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 o(k,a){if(!d(V)){if(V.isProviderFor(k,a))return V;if(!d(F)){if(F.isProviderFor(k,a))return V;if(!d(f)){var H1=i9(f);while(!0){var G1=o9(H1);if(!G1)return;var R1=p9(G1);if(R1.isProviderFor(k,a))return s9(H1),R1}}}}if(!d(U)&&U.isProviderFor(k,a))return U;return}function P(k,a){var H1=g.get(k),G1;if(!d(H1))G1=H1.get(a);if(!d(G1))return G1;if(G1=o(k,a),!d(G1)){if(d(H1))H1=new N,g.set(k,H1);H1.set(a,G1)}return G1}function I(k){if(d(k))throw TypeError();return V===k||F===k||!d(f)&&f.has(k)}function Z(k,a,H1){if(!I(H1))throw Error("Metadata provider not registered.");var G1=P(k,a);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(a,H1)}return!0}}function o5(){var U;if(!d(A)&&X1(Q.Reflect)&&Object.isExtensible(Q.Reflect))U=Q.Reflect[A];if(d(U))U=p5();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 s5(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:o,OrdinaryDeleteMetadata:P};return R.registerProvider(F),F;function f(I,Z,k){var a=V.get(I),H1=!1;if(d(a)){if(!k)return;a=new N,V.set(I,a),H1=!0}var G1=a.get(Z);if(d(G1)){if(!k)return;if(G1=new N,a.set(Z,G1),!U.setProvider(I,Z,F)){if(a.delete(Z),H1)V.delete(I);throw Error("Wrong provider for target.")}}return G1}function g(I,Z,k){var a=f(Z,k,!1);if(d(a))return!1;return m9(a.has(I))}function Y1(I,Z,k){var a=f(Z,k,!1);if(d(a))return;return a.get(I)}function q1(I,Z,k,a){var H1=f(k,a,!0);H1.set(I,Z)}function o(I,Z){var k=[],a=f(I,Z,!1);if(d(a))return k;var H1=a.keys(),G1=i9(H1),R1=0;while(!0){var r9=o9(G1);if(!r9)return k.length=R1,k;var $3=p9(r9);try{k[R1]=$3}catch(H3){try{s9(G1)}finally{throw H3}}R1++}}function P(I,Z,k){var a=f(Z,k,!1);if(d(a))return!1;if(!a.delete(I))return!1;if(a.size===0){var H1=V.get(Z);if(!d(H1)){if(H1.delete(k),H1.size===0)V.delete(H1)}}return!0}}function r5(U){var{defineMetadata:V,hasOwnMetadata:F,getOwnMetadata:f,getOwnMetadataKeys:g,deleteMetadata:Y1}=U,q1=new _,o={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 o}function c0(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 a5(){var U={},V=[],F=function(){function o(P,I,Z){this._index=0,this._keys=P,this._values=I,this._selector=Z}return o.prototype["@@iterator"]=function(){return this},o.prototype[G]=function(){return this},o.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}},o.prototype.throw=function(P){if(this._index>=0)this._index=-1,this._keys=V,this._values=V;throw P},o.prototype.return=function(P){if(this._index>=0)this._index=-1,this._keys=V,this._values=V;return{value:P,done:!0}},o}(),f=function(){function o(){this._keys=[],this._values=[],this._cacheKey=U,this._cacheIndex=-2}return Object.defineProperty(o.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),o.prototype.has=function(P){return this._find(P,!1)>=0},o.prototype.get=function(P){var I=this._find(P,!1);return I>=0?this._values[I]:void 0},o.prototype.set=function(P,I){var Z=this._find(P,!0);return this._values[Z]=I,this},o.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--,B2(P,this._cacheKey))this._cacheKey=U,this._cacheIndex=-2;return!0}return!1},o.prototype.clear=function(){this._keys.length=0,this._values.length=0,this._cacheKey=U,this._cacheIndex=-2},o.prototype.keys=function(){return new F(this._keys,this._values,g)},o.prototype.values=function(){return new F(this._keys,this._values,Y1)},o.prototype.entries=function(){return new F(this._keys,this._values,q1)},o.prototype["@@iterator"]=function(){return this.entries()},o.prototype[G]=function(){return this.entries()},o.prototype._find=function(P,I){if(!B2(this._cacheKey,P)){this._cacheIndex=-1;for(var Z=0;Z<this._keys.length;Z++)if(B2(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},o}();return f;function g(o,P){return o}function Y1(o,P){return P}function q1(o,P){return[o,P]}}function t5(){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 e5(){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@@"+o();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 o(){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 z2(U){return U.__=void 0,delete U.__,U}})})(F8||(F8={}))});var D1,L3,f3,C3,i2;var s0=_2(()=>{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}}}};L3=class L3 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}}}};f3=class f3 extends D1{constructor($="Unauthorized",H){super(401,$,H);this.name="UnauthorizedException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};C3=class C3 extends D1{constructor($="Forbidden",H){super(403,$,H);this.name="ForbiddenException"}toJSON(){return{error:this.message,statusCode:this.statusCode,...this.details&&{details:this.details}}}};i2=class i2 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 o2={};y1(o2,{parseTTL:()=>p2});function p2($){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 s2{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 r2={};y1(r2,{setCache:()=>P3,invalidateCache:()=>b3,getCache:()=>K3,deleteCache:()=>T3,clearCache:()=>I3,CacheManager:()=>e1});async function K3($){return await e1.get($)}async function P3($,H,Q){await e1.set($,H,Q)}async function T3($){return await e1.delete($)}async function b3($){return await e1.invalidate($)}async function I3(){await e1.clear()}var e1;var a2=_2(()=>{e1=class e1{static defaultStore=new s2;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?p2(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 T8={};y1(T8,{TokenRevokedException:()=>P8,TokenExpiredException:()=>C8,InvalidTokenException:()=>K8,AuthorizationException:()=>f8,AuthenticationException:()=>r0});var r0,f8,C8,K8,P8;var b8=_2(()=>{s0();r0=class r0 extends D1{constructor($="Authentication required"){super(401,$);this.name="AuthenticationException"}toJSON(){return{error:"Authentication Error",message:this.message,statusCode:401}}};f8=class f8 extends D1{constructor($="Insufficient permissions"){super(403,$);this.name="AuthorizationException"}toJSON(){return{error:"Authorization Error",message:this.message,statusCode:403}}};C8=class C8 extends r0{constructor($="Token has expired"){super($);this.name="TokenExpiredException"}};K8=class K8 extends r0{constructor($="Invalid token"){super($);this.name="InvalidTokenException"}};P8=class P8 extends r0{constructor($="Token has been revoked"){super($);this.name="TokenRevokedException"}}});var t2={};y1(t2,{setRequestMetadata:()=>v3,setRequestContext:()=>Z8,initializeRequestContext:()=>Z3,getRequestMetadata:()=>g3,getRequestId:()=>h3,getRequestDuration:()=>y3,getRequestContext:()=>c1,getAbortSignal:()=>x3,generateRequestId:()=>I8,cleanupRequestContext:()=>u3,abortRequest:()=>k3});function I8(){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 c1($){return $.get("veloce:request-context")||null}function Z8($,H){$.set("veloce:request-context",H)}function Z3($,H){let Q=H?.requestId||I8(),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 Z8($,X),X}function h3($){return c1($)?.requestId||null}function x3($){return c1($)?.abortSignal||null}function k3($){let H=c1($);if(H?.abortController&&!H.abortSignal.aborted)H.abortController.abort()}function v3($,H,Q){let J=c1($);if(J)J.metadata[H]=Q}function g3($,H){return c1($)?.metadata[H]}function y3($){let H=c1($);if(!H)return null;return Date.now()-H.startTime}function u3($){let H=c1($);if(H?.timeoutId)clearTimeout(H.timeoutId)}var W4=b((fU,a8)=>{var X$=($)=>{return $&&typeof $.message==="string"},G4=($)=>{if(!$)return;let H=$.cause;if(typeof H==="function"){let Q=$.cause();return X$(Q)?Q:void 0}else return X$(H)?H:void 0},s8=($,H)=>{if(!X$($))return"";let Q=$.stack||"";if(H.has($))return Q+`
15
+ causes have become circular...`;let J=G4($);if(J)return H.add($),Q+`
16
+ caused by: `+s8(J,H);else return Q},aQ=($)=>s8($,new Set),r8=($,H,Q)=>{if(!X$($))return"";let J=Q?"":$.message||"";if(H.has($))return J+": ...";let X=G4($);if(X){H.add($);let Y=typeof $.cause==="function";return J+(Y?"":": ")+r8(X,H,Y)}else return J},tQ=($)=>r8($,new Set);a8.exports={isErrorLike:X$,getErrorCause:G4,stackWithCauses:aQ,messageWithCauses:tQ}});var q4=b((CU,e8)=>{var eQ=Symbol("circular-ref-tag"),P$=Symbol("pino-raw-err-ref"),t8=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[P$]},set:function($){this[P$]=$}}});Object.defineProperty(t8,P$,{writable:!0,value:{}});e8.exports={pinoErrProto:t8,pinoErrorSymbols:{seen:eQ,rawSymbol:P$}}});var QH=b((KU,HH)=>{HH.exports=w4;var{messageWithCauses:$J,stackWithCauses:HJ,isErrorLike:$H}=W4(),{pinoErrProto:QJ,pinoErrorSymbols:JJ}=q4(),{seen:B4}=JJ,{toString:XJ}=Object.prototype;function w4($){if(!$H($))return $;$[B4]=void 0;let H=Object.create(QJ);if(H.type=XJ.call($.constructor)==="[object Function]"?$.constructor.name:$.name,H.message=$J($),H.stack=HJ($),Array.isArray($.errors))H.aggregateErrors=$.errors.map((Q)=>w4(Q));for(let Q in $)if(H[Q]===void 0){let J=$[Q];if($H(J)){if(Q!=="cause"&&!Object.prototype.hasOwnProperty.call(J,B4))H[Q]=w4(J)}else H[Q]=J}return delete $[B4],H.raw=$,H}});var XH=b((PU,JH)=>{JH.exports=b$;var{isErrorLike:z4}=W4(),{pinoErrProto:YJ,pinoErrorSymbols:GJ}=q4(),{seen:T$}=GJ,{toString:WJ}=Object.prototype;function b$($){if(!z4($))return $;$[T$]=void 0;let H=Object.create(YJ);if(H.type=WJ.call($.constructor)==="[object Function]"?$.constructor.name:$.name,H.message=$.message,H.stack=$.stack,Array.isArray($.errors))H.aggregateErrors=$.errors.map((Q)=>b$(Q));if(z4($.cause)&&!Object.prototype.hasOwnProperty.call($.cause,T$))H.cause=b$($.cause);for(let Q in $)if(H[Q]===void 0){let J=$[Q];if(z4(J)){if(!Object.prototype.hasOwnProperty.call(J,T$))H[Q]=b$(J)}else H[Q]=J}return delete $[T$],H.raw=$,H}});var qH=b((TU,WH)=>{WH.exports={mapHttpRequest:qJ,reqSerializer:GH};var _4=Symbol("pino-raw-req-ref"),YH=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[_4]},set:function($){this[_4]=$}}});Object.defineProperty(YH,_4,{writable:!0,value:{}});function GH($){let H=$.info||$.socket,Q=Object.create(YH);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 qJ($){return{req:GH($)}}});var _H=b((bU,zH)=>{zH.exports={mapHttpResponse:BJ,resSerializer:wH};var U4=Symbol("pino-raw-res-ref"),BH=Object.create({},{statusCode:{enumerable:!0,writable:!0,value:0},headers:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[U4]},set:function($){this[U4]=$}}});Object.defineProperty(BH,U4,{writable:!0,value:{}});function wH($){let H=Object.create(BH);return H.statusCode=$.headersSent?$.statusCode:null,H.headers=$.getHeaders?$.getHeaders():$._headers,H.raw=$,H}function BJ($){return{res:wH($)}}});var D4=b((IU,UH)=>{var N4=QH(),wJ=XH(),I$=qH(),Z$=_H();UH.exports={err:N4,errWithCause:wJ,mapHttpRequest:I$.mapHttpRequest,mapHttpResponse:Z$.mapHttpResponse,req:I$.reqSerializer,res:Z$.resSerializer,wrapErrorSerializer:function(H){if(H===N4)return H;return function(J){return H(N4(J))}},wrapRequestSerializer:function(H){if(H===I$.reqSerializer)return H;return function(J){return H(I$.reqSerializer(J))}},wrapResponseSerializer:function(H){if(H===Z$.resSerializer)return H;return function(J){return H(Z$.resSerializer(J))}}}});var V4=b((ZU,NH)=>{function zJ($,H){return H}NH.exports=function(){let H=Error.prepareStackTrace;Error.prepareStackTrace=zJ;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 EH=b((hU,FH)=>{function R4($){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]=R4($[Q]);return H}if(typeof $==="object"){let H=Object.create(Object.getPrototypeOf($));for(let Q in $)if(Object.prototype.hasOwnProperty.call($,Q))H[Q]=R4($[Q]);return H}return $}function DH($){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 VH($,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 RH($,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 h$=Symbol("PATH_NOT_FOUND");function _J($,H){let Q=$;for(let J of H){if(Q===null||Q===void 0)return h$;if(typeof Q!=="object"||Q===null)return h$;if(!(J in Q))return h$;Q=Q[J]}return Q}function UJ($,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 NJ($,H,Q,J=!1){for(let X of H){let Y=DH(X);if(Y.includes("*"))AH($,Y,Q,X,J);else if(J)RH($,Y);else{let G=_J($,Y);if(G===h$)continue;let W=typeof Q==="function"?Q(G,Y):Q;VH($,Y,W)}}}function AH($,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 DJ($,H,Q,Y,J,X)}function DJ($,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("*"))AH(w,W,typeof Q==="function"?(D,_)=>{let A=[...q.slice(0,z),..._];return Q(D,A)}:Q,X,Y);else if(Y)RH(w,W);else{let N=typeof Q==="function"?Q(UJ(w,W),[...q.slice(0,z),...W]):Q;VH(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 VJ($){if($.length===0)return null;let H=new Map;for(let Q of $){let J=DH(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 RJ($,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 AJ($){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 FJ($){if(!Array.isArray($))throw TypeError("paths must be an array");for(let H of $)AJ(H)}function EJ($={}){let{paths:H=[],censor:Q="[REDACTED]",serialize:J=JSON.stringify,strict:X=!0,remove:Y=!1}=$;FJ(H);let G=VJ(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=RJ(q,G),w=q,z=Q;if(typeof Q==="function")z=Q;if(NJ(B,H,z,Y),J===!1)return B.restore=function(){return R4(w)},B;if(typeof J==="function")return J(B);return JSON.stringify(B)}}FH.exports=EJ});var b0=b((xU,MH)=>{var MJ=Symbol("pino.setLevel"),jJ=Symbol("pino.getLevel"),OJ=Symbol("pino.levelVal"),SJ=Symbol("pino.levelComp"),LJ=Symbol("pino.useLevelLabels"),fJ=Symbol("pino.useOnlyCustomLevels"),CJ=Symbol("pino.mixin"),KJ=Symbol("pino.lsCache"),PJ=Symbol("pino.chindings"),TJ=Symbol("pino.asJson"),bJ=Symbol("pino.write"),IJ=Symbol("pino.redactFmt"),ZJ=Symbol("pino.time"),hJ=Symbol("pino.timeSliceIndex"),xJ=Symbol("pino.stream"),kJ=Symbol("pino.stringify"),vJ=Symbol("pino.stringifySafe"),gJ=Symbol("pino.stringifiers"),yJ=Symbol("pino.end"),uJ=Symbol("pino.formatOpts"),cJ=Symbol("pino.messageKey"),mJ=Symbol("pino.errorKey"),dJ=Symbol("pino.nestedKey"),lJ=Symbol("pino.nestedKeyStr"),nJ=Symbol("pino.mixinMergeStrategy"),iJ=Symbol("pino.msgPrefix"),pJ=Symbol("pino.wildcardFirst"),oJ=Symbol.for("pino.serializers"),sJ=Symbol.for("pino.formatters"),rJ=Symbol.for("pino.hooks"),aJ=Symbol.for("pino.metadata");MH.exports={setLevelSym:MJ,getLevelSym:jJ,levelValSym:OJ,levelCompSym:SJ,useLevelLabelsSym:LJ,mixinSym:CJ,lsCacheSym:KJ,chindingsSym:PJ,asJsonSym:TJ,writeSym:bJ,serializersSym:oJ,redactFmtSym:IJ,timeSym:ZJ,timeSliceIndexSym:hJ,streamSym:xJ,stringifySym:kJ,stringifySafeSym:vJ,stringifiersSym:gJ,endSym:yJ,formatOptsSym:uJ,messageKeySym:cJ,errorKeySym:mJ,nestedKeySym:dJ,wildcardFirstSym:pJ,needsMetadataGsym:aJ,useOnlyCustomLevelsSym:fJ,formattersSym:sJ,hooksSym:rJ,nestedKeyStrSym:lJ,mixinMergeStrategySym:nJ,msgPrefixSym:iJ}});var F4=b((kU,OH)=>{var jH=EH(),{redactFmtSym:tJ,wildcardFirstSym:x$}=b0(),A4=/[^.[\]]+|\[([^[\]]*?)\]/g;function eJ($,H){let{paths:Q,censor:J,remove:X}=$X($),Y=Q.reduce((q,B)=>{A4.lastIndex=0;let w=A4.exec(B),z=A4.exec(B),N=w[1]!==void 0?w[1].replace(/^(?:"|'|`)(.*)(?:"|'|`)$/,"$1"):w[0];if(N==="*")N=x$;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!==x$&&q[N].length===0)q[N].push(...q[x$]||[]);if(N===x$)Object.keys(q).forEach(function(A){if(q[A])q[A].push(_)});return q[N].push(_),q},{}),G={[tJ]:jH({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]=jH({paths:Y[B],censor:w,serialize:H,strict:!1,remove:X})}return q},G)}function $X($){if(Array.isArray($))return $={paths:$,censor:"[Redacted]"},$;let{paths:H,censor:Q="[Redacted]",remove:J}=$;if(Array.isArray(H)===!1)throw Error("pino – redact must contain an array of strings");if(J===!0)Q=void 0;return{paths:H,censor:Q,remove:J}}OH.exports=eJ});var fH=b((vU,LH)=>{var HX=()=>"",QX=()=>`,"time":${Date.now()}`,JX=()=>`,"time":${Math.round(Date.now()/1000)}`,XX=()=>`,"time":"${new Date(Date.now()).toISOString()}"`,YX=1000000n,SH=1000000000n,GX=BigInt(Date.now())*YX,WX=process.hrtime.bigint(),qX=()=>{let $=process.hrtime.bigint()-WX,H=GX+$,Q=H/SH,J=H%SH,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"`};LH.exports={nullTime:HX,epochTime:QX,unixTime:JX,isoTime:XX,isoTimeNano:qX}});var KH=b((gU,CH)=>{function BX($){try{return JSON.stringify($)}catch(H){return'"[Circular]"'}}CH.exports=wX;function wX($,H,Q){var J=Q&&Q.stringify||BX,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 M4=b((yU,E4)=>{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));E4.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());};E4.exports=$}});var S4=b((uU,ZH)=>{var W1=require("fs"),zX=require("events"),_X=require("util").inherits,PH=require("path"),O4=M4(),UX=require("assert"),k$=Buffer.allocUnsafe(0),[NX,DX]=(process.versions.node||"0.0").split(".").map(Number),VX=NX>=22&&DX>=7;function TH($,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(PH.dirname($),{recursive:!0});let Y=W1.openSync($,J,X);Q(null,Y)}catch(Y){throw Q(Y),Y}else if(H.mkdir)W1.mkdir(PH.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=k$,this.write=FX,this.flush=MX,this.flushSync=OX,this._actualWrite=LX,_=()=>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=AX,this.flush=EX,this.flushSync=jX,this._actualWrite=SX,_=()=>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")TH(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{O4(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=j4(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=j4(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,v$(this);else if(this._writing=!1,this.sync){if(!this._asyncDrainScheduled)this._asyncDrainScheduled=!0,process.nextTick(RX,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 j4($,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 RX($){if(!($.listenerCount("drain")>0))return;$._asyncDrainScheduled=!1,$.emit("drain")}_X(O1,zX);function bH($,H){if($.length===0)return k$;if($.length===1)return $[0];return Buffer.concat($,H)}function AX($){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 FX($){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 IH($){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 EX($){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($)IH.call(this,$);if(this._writing)return;if(this._bufs.length===0)this._bufs.push("");this._actualWrite()}function MX($){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($)IH.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)})}),TH(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 v$(this)};function jX(){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=j4($,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;O4(100)}}try{W1.fsyncSync(this.fd)}catch{}}function OX(){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=k$;let $=k$;while(this._bufs.length||$.length){if($.length<=0)$=bH(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;O4(100)}}}O1.prototype.destroy=function(){if(this.destroyed)return;v$(this)};function SX(){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 LX(){let $=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:bH(this._bufs.shift(),this._lens.shift()),this.sync)try{let H=W1.writeSync(this.fd,this._writingBuf);$(null,H)}catch(H){$(H)}else{if(VX)this._writingBuf=Buffer.from(this._writingBuf);W1.write(this.fd,this._writingBuf,$)}}function v$($){if($.fd===-1){$.once("ready",v$.bind(null,$));return}if($._periodicFlushTimer!==void 0)clearInterval($._periodicFlushTimer);$.destroyed=!0,$._bufs=[],$._lens=[],UX(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;ZH.exports=O1});var g$=b((cU,gH)=>{var S1={exit:[],beforeExit:[]},hH={exit:KX,beforeExit:PX},I0;function fX(){if(I0===void 0)I0=new FinalizationRegistry(TX)}function CX($){if(S1[$].length>0)return;process.on($,hH[$])}function xH($){if(S1[$].length>0)return;if(process.removeListener($,hH[$]),S1.exit.length===0&&S1.beforeExit.length===0)I0=void 0}function KX(){kH("exit")}function PX(){kH("beforeExit")}function kH($){for(let H of S1[$]){let Q=H.deref(),J=H.fn;if(Q!==void 0)J(Q,$)}S1[$]=[]}function TX($){for(let H of["exit","beforeExit"]){let Q=S1[H].indexOf($);S1[H].splice(Q,Q+1),xH(H)}}function vH($,H,Q){if(H===void 0)throw Error("the object can't be undefined");CX($);let J=new WeakRef(H);J.fn=Q,fX(),I0.register(H,J),S1[$].push(J)}function bX($,H){vH("exit",$,H)}function IX($,H){vH("beforeExit",$,H)}function ZX($){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!==$}),xH(H)}gH.exports={register:bX,registerBeforeExit:IX,unregister:ZX}});var yH=b((mU,hX)=>{hX.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 cH=b((dU,uH)=>{function xX($,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 kX($,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)}uH.exports={wait:xX,waitDiff:kX}});var dH=b((lU,mH)=>{mH.exports={WRITE_INDEX:4,READ_INDEX:8}});var sH=b((nU,oH)=>{var __dirname="C:\\Users\\mejia\\Desktop\\prueba-real\\fastTS\\node_modules\\thread-stream",{version:vX}=yH(),{EventEmitter:gX}=require("events"),{Worker:yX}=require("worker_threads"),{join:uX}=require("path"),{pathToFileURL:cX}=require("url"),{wait:mX}=cH(),{WRITE_INDEX:N1,READ_INDEX:T1}=dH(),dX=require("buffer"),lX=require("assert"),E=Symbol("kImpl"),nX=dX.constants.MAX_STRING_LENGTH;class u${constructor($){this._value=$}deref(){return this._value}}class f4{register(){}unregister(){}}var iX=process.env.NODE_V8_COVERAGE?f4:global.FinalizationRegistry||f4,pX=process.env.NODE_V8_COVERAGE?u$:global.WeakRef||u$,lH=new iX(($)=>{if($.exited)return;$.terminate()});function oX($,H){let{filename:Q,workerData:J}=H,Y=("__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{})["thread-stream-worker"]||uX(__dirname,"lib","worker.js"),G=new yX(Y,{...H.workerOpts,trackUnmanagedFds:!1,workerData:{filename:Q.indexOf("file://")===0?Q:cX(Q).href,dataBuf:$[E].dataBuf,stateBuf:$[E].stateBuf,workerData:{$context:{threadStreamVersion:vX},...J}}});return G.stream=new u$($),G.on("message",sX),G.on("exit",iH),lH.register($,G),G}function nH($){if(lX(!$[E].sync),$[E].needDrain)$[E].needDrain=!1,$.emit("drain")}function y$($){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)P4($);else if($[E].needDrain)process.nextTick(nH,$);return}let J=$[E].buf.slice(0,Q),X=Buffer.byteLength(J);if(X<=Q)$[E].buf=$[E].buf.slice(Q),c$($,J,y$.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),c$($,J,y$.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),y$($)})}else b1($,Error("overwritten"))}function sX($){let H=this.stream.deref();if(H===void 0){this.exited=!0,this.terminate();return}switch($.code){case"READY":this.stream=new pX(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 iH($){let H=this.stream.deref();if(H===void 0)return;lH.unregister(H),H.worker.exited=!0,H.worker.off("exit",iH),b1(H,$!==0?Error("the worker thread exited"):null)}class pH extends gX{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=oX(this,$),this.on("message",(H,Q)=>{this.worker.postMessage(H,Q)})}write($){if(this[E].destroyed)return C4(this,Error("the worker has exited")),!1;if(this[E].ending)return C4(this,Error("the worker is ending")),!1;if(this[E].flushing&&this[E].buf.length+$.length>=nX)try{L4(this),this[E].flushing=!0}catch(H){return b1(this,H),!1}if(this[E].buf+=$,this[E].sync)try{return L4(this),!0}catch(H){return b1(this,H),!1}if(!this[E].flushing)this[E].flushing=!0,setImmediate(y$,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,P4(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);mX(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;L4(this),K4(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 C4($,H){setImmediate(()=>{$.emit("error",H)})}function b1($,H){if($[E].destroyed)return;if($[E].destroyed=!0,H)$[E].errored=H,C4($,H);if(!$.worker.exited)$.worker.terminate().catch(()=>{}).then(()=>{$[E].closed=!0,$.emit("close")});else setImmediate(()=>{$[E].closed=!0,$.emit("close")})}function c$($,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 P4($){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 L4($){let H=()=>{if($[E].ending)P4($);else if($[E].needDrain)process.nextTick(nH,$)};$[E].flushing=!1;while($[E].buf.length!==0){let Q=Atomics.load($[E].state,N1),J=$[E].data.length-Q;if(J===0){K4($),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),c$($,X,H);else{K4($),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),c$($,X,H)}}}function K4($){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)")}}oH.exports=pH});var I4=b((iU,rH)=>{var __dirname="C:\\Users\\mejia\\Desktop\\prueba-real\\fastTS\\node_modules\\pino\\lib",{createRequire:rX}=require("module"),aX=V4(),{join:T4,isAbsolute:tX,sep:eX}=require("node:path"),$Y=M4(),b4=g$(),HY=sH();function QY($){b4.register($,XY),b4.registerBeforeExit($,YY),$.on("close",function(){b4.unregister($)})}function JY($,H,Q,J){let X=new HY({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)QY(X)}function G(){if(X.closed)return;X.flushSync(),$Y(100),X.end()}return X}function XY($){$.ref(),$.flushSync(),$.end(),$.once("close",function(){$.unref()})}function YY($){$.flushSync()}function GY($){let{pipeline:H,targets:Q,levels:J,dedupe:X,worker:Y={},caller:G=aX(),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"]||T4(__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"]||T4(__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,JY(N(z),q,Y,W);function N(D){if(D=w[D]||D,tX(D)||D.indexOf("file://")===0)return D;if(D==="pino/file")return T4(__dirname,"..","file.js");let _;for(let A of B)try{let R=A==="node:repl"?process.cwd()+eX:A;_=rX(R).resolve(D);break}catch(R){continue}if(!_)throw Error(`unable to determine transport target for "${D}"`);return _}}rH.exports=GY});var l$=b((pU,B6)=>{var WY=require("node:diagnostics_channel"),aH=KH(),{mapHttpRequest:qY,mapHttpResponse:BY}=D4(),h4=S4(),tH=g$(),{lsCacheSym:wY,chindingsSym:J6,writeSym:eH,serializersSym:X6,formatOptsSym:$6,endSym:zY,stringifiersSym:Y6,stringifySym:G6,stringifySafeSym:x4,wildcardFirstSym:W6,nestedKeySym:_Y,formattersSym:q6,messageKeySym:UY,errorKeySym:NY,nestedKeyStrSym:DY,msgPrefixSym:m$}=b0(),{isMainThread:VY}=require("worker_threads"),RY=I4(),H6=WY.tracingChannel("pino_asJson");function Z0(){}function AY($,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=qY(J);else if(typeof J.setHeader==="function")J=BY(J)}let G;if(Y===null&&X.length===0)G=[null];else Y=X.shift(),G=X;if(typeof this[m$]==="string"&&Y!==void 0&&Y!==null)Y=this[m$]+Y;this[eH](J,aH(Y,G,this[$6]),$)}else{let Y=J===void 0?X.shift():J;if(typeof this[m$]==="string"&&Y!==void 0&&Y!==null)Y=this[m$]+Y;this[eH](null,aH(Y,X,this[$6]),$)}}}function Z4($){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 FY($,H,Q,J){if(H6.hasSubscribers===!1)return Q6.call(this,$,H,Q,J);let X={instance:this,arguments};return H6.traceSync(Q6,X,this,$,H,Q,J)}function Q6($,H,Q,J){let X=this[G6],Y=this[x4],G=this[Y6],W=this[zY],q=this[J6],B=this[X6],w=this[q6],z=this[UY],N=this[NY],D=this[wY][Q]+J;D=D+q;let _;if(w.log)$=w.log($);let A=G[W6],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||Z4)(_);break;default:_=(O||X)(_,Y)}if(_===void 0)continue;let T=Z4(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||Z4)(_),M=',"'+z+'":'+_;break;default:_=(S||X)(_,Y),M=',"'+z+'":'+_}}if(this[_Y]&&R)return D+this[DY]+R.slice(1)+"}"+M+W;else return D+R+M+W}function EY($,H){let Q,J=$[J6],X=$[G6],Y=$[x4],G=$[Y6],W=G[W6],q=$[X6],B=$[q6].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 MY($){return $.write!==$.constructor.prototype.write}function d$($){let H=new h4($);if(H.on("error",Q),!$.sync&&VY)tH.register(H,jY),H.on("close",function(){tH.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 jY($,H){if($.destroyed)return;if(H==="beforeExit")$.flush(),$.on("drain",function(){$.end()});else $.flushSync()}function OY($){return function(Q,J,X={},Y){if(typeof X==="string")Y=d$({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=d$({dest:Y})}else if(X instanceof h4||X.writable||X._writableState)Y=X,X={};else if(X.transport){if(X.transport instanceof h4||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=RY({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(!MY(process.stdout))Y=d$({fd:process.stdout.fd||1});else Y=process.stdout;return{opts:X,stream:Y}}}function SY($,H){try{return JSON.stringify($)}catch(Q){try{return(H||this[x4])($)}catch(J){return'"[unable to serialize, circular reference is too complex to analyze]"'}}}function LY($,H,Q){return{level:$,bindings:H,log:Q}}function fY($){let H=Number($);if(typeof $==="string"&&Number.isFinite(H))return H;if($===void 0)return 1;return $}B6.exports={noop:Z0,buildSafeSonicBoom:d$,asChindings:EY,asJson:FY,genLog:AY,createArgsNormalizer:OY,stringify:SY,buildFormatters:LY,normalizeDestFileDescriptor:fY}});var n$=b((oU,w6)=>{var CY={trace:10,debug:20,info:30,warn:40,error:50,fatal:60},KY={ASC:"ASC",DESC:"DESC"};w6.exports={DEFAULT_LEVELS:CY,SORTING_ORDER:KY}});var g4=b((sU,N6)=>{var{lsCacheSym:PY,levelValSym:k4,useOnlyCustomLevelsSym:TY,streamSym:bY,formattersSym:IY,hooksSym:ZY,levelCompSym:z6}=b0(),{noop:hY,genLog:Y0}=l$(),{DEFAULT_LEVELS:I1,SORTING_ORDER:_6}=n$(),U6={fatal:($)=>{let H=Y0(I1.fatal,$);return function(...Q){let J=this[bY];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,$)},v4=Object.keys(I1).reduce(($,H)=>{return $[I1[H]]=H,$},{}),xY=Object.keys(v4).reduce(($,H)=>{return $[H]='{"level":'+Number(H),$},{});function kY($){let H=$[IY].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 $[PY]=J,$}function vY($,H){if(H)return!1;switch($){case"fatal":case"error":case"warn":case"info":case"debug":case"trace":return!0;default:return!1}}function gY($){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[k4],X=this[k4]=Q[$],Y=this[TY],G=this[z6],W=this[ZY].logMethod;for(let q in Q){if(G(Q[q],X)===!1){this[q]=hY;continue}this[q]=vY(q,Y)?U6[q](W):Y0(Q[q],W)}this.emit("level-change",$,X,H[J],J,this)}function yY($){let{levels:H,levelVal:Q}=this;return H&&H.labels?H.labels[Q]:""}function uY($){let{values:H}=this.levels,Q=H[$];return Q!==void 0&&this[z6](Q,this[k4])}function cY($,H,Q){if($===_6.DESC)return H<=Q;return H>=Q}function mY($){if(typeof $==="string")return cY.bind(null,$);return $}function dY($=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:v4,Q),X=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),H?null:I1,$);return{labels:J,values:X}}function lY($,H,Q){if(typeof $==="number"){if(![].concat(Object.keys(H||{}).map((Y)=>H[Y]),Q?[]:Object.keys(v4).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 nY($,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 iY($){if(typeof $==="function")return;if(typeof $==="string"&&Object.values(_6).includes($))return;throw Error('Levels comparison should be one of "ASC", "DESC" or "function" type')}N6.exports={initialLsCache:xY,genLsCache:kY,levelMethods:U6,getLevel:yY,setLevel:gY,isLevelEnabled:uY,mappings:dY,assertNoLevelCollisions:nY,assertDefaultLevelFound:lY,genLevelComparison:mY,assertLevelComparison:iY}});var y4=b((rU,D6)=>{D6.exports={version:"10.1.0"}});var O6=b((aU,j6)=>{var{EventEmitter:pY}=require("node:events"),{lsCacheSym:oY,levelValSym:sY,setLevelSym:c4,getLevelSym:V6,chindingsSym:p$,mixinSym:rY,asJsonSym:A6,writeSym:aY,mixinMergeStrategySym:tY,timeSym:eY,timeSliceIndexSym:$G,streamSym:F6,serializersSym:G0,formattersSym:Y$,errorKeySym:HG,messageKeySym:QG,useOnlyCustomLevelsSym:JG,needsMetadataGsym:XG,redactFmtSym:YG,stringifySym:GG,formatOptsSym:WG,stringifiersSym:qG,msgPrefixSym:m4,hooksSym:BG}=b0(),{getLevel:wG,setLevel:zG,isLevelEnabled:_G,mappings:UG,initialLsCache:NG,genLsCache:DG,assertNoLevelCollisions:VG}=g4(),{asChindings:d4,asJson:RG,buildFormatters:u4,stringify:R6,noop:E6}=l$(),{version:AG}=y4(),FG=F4(),EG=class{},M6={constructor:EG,child:MG,bindings:jG,setBindings:OG,flush:fG,isLevelEnabled:_G,version:AG,get level(){return this[V6]()},set level($){this[c4]($)},get levelVal(){return this[sY]},set levelVal($){throw Error("levelVal is read-only")},get msgPrefix(){return this[m4]},get[Symbol.toStringTag](){return"Pino"},[oY]:NG,[aY]:LG,[A6]:RG,[V6]:wG,[c4]:zG};Object.setPrototypeOf(M6,pY.prototype);j6.exports=function(){return Object.create(M6)};var i$=($)=>$;function MG($,H){if(!$)throw Error("missing bindings for child Pino");let Q=this[G0],J=this[Y$],X=Object.create(this);if(H==null){if(X[Y$].bindings!==i$)X[Y$]=u4(J.level,i$,J.log);if(X[p$]=d4(X,$),this.onChild!==E6)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[Y$]=u4(W||J.level,q||i$,B||J.log)}else X[Y$]=u4(J.level,i$,J.log);if(H.hasOwnProperty("customLevels")===!0)VG(this.levels,H.customLevels),X.levels=UG(H.customLevels,X[JG]),DG(X);if(typeof H.redact==="object"&&H.redact!==null||Array.isArray(H.redact)){X.redact=H.redact;let W=FG(X.redact,R6),q={stringify:W[YG]};X[GG]=R6,X[qG]=W,X[WG]=q}if(typeof H.msgPrefix==="string")X[m4]=(this[m4]||"")+H.msgPrefix;if(X[p$]=d4(X,$),H.level!==void 0&&H.level!==this.level||H.hasOwnProperty("customLevels")){let W=H.level||this.level;X[c4](W)}return this.onChild(X),X}function jG(){let H=`{${this[p$].substr(1)}}`,Q=JSON.parse(H);return delete Q.pid,delete Q.hostname,Q}function OG($){let H=d4(this,$);this[p$]=H}function SG($,H){return Object.assign(H,$)}function LG($,H,Q){let J=this[eY](),X=this[rY],Y=this[HG],G=this[QG],W=this[tY]||SG,q,B=this[BG].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[A6](q,H,Q,J),z=this[F6];if(z[XG]===!0)z.lastLevel=Q,z.lastObj=q,z.lastMsg=H,z.lastTime=J.slice(this[$G]),z.lastLogger=this;z.write(B?B(w):w)}function fG($){if($!=null&&typeof $!=="function")throw Error("callback must be a function");let H=this[F6];if(typeof H.flush==="function")H.flush($||E6);else if($)$()}});var C6=b((p4,f6)=>{var{hasOwnProperty:G$}=Object.prototype,q0=i4();q0.configure=i4;q0.stringify=q0;q0.default=q0;p4.stringify=q0;p4.configure=i4;f6.exports=q0;var CG=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function p1($){if($.length<5000&&!CG.test($))return`"${$}"`;return JSON.stringify($)}function l4($,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 KG=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function n4($){return KG.call($)!==void 0&&$.length!==0}function S6($,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 PG($){if(G$.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 TG($){let H;if(G$.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 bG($,H){let Q;if(G$.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 L6($,H){let Q;if(G$.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 IG($){let H=new Set;for(let Q of $)if(typeof Q==="string"||typeof Q==="number")H.add(String(Q));return H}function ZG($){if(G$.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 i4($){$={...$};let H=ZG($);if(H){if($.bigint===void 0)$.bigint=!1;if(!("circularValue"in $))$.circularValue=Error}let Q=PG($),J=bG($,"bigint"),X=TG($),Y=typeof X==="function"?X:void 0,G=L6($,"maximumDepth"),W=L6($,"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 p1(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+=`
17
+ ${S}`,h=`,
18
+ ${S}`;let t=Math.min(O.length,W),C=0;for(;C<t-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+=`
19
+ ${m}`;return A.pop(),`[${T}]`}let c=Object.keys(O),r=c.length;if(r===0)return"{}";if(G<A.length+1)return'"[Object]"';let v="",e="";if(M!=="")S+=M,h=`,
20
+ ${S}`,v=" ";let $1=Math.min(r,W);if(X&&!n4(O))c=l4(c,Y);A.push(O);for(let t=0;t<$1;t++){let C=c[t],B1=q(C,O,A,R,M,S);if(B1!==void 0)T+=`${e}${p1(C)}:${v}${B1}`,e=h}if(r>W){let t=r-W;T+=`${e}"...":${v}"${W0(t)} not stringified"`,e=h}if(M!==""&&e.length>1)T=`
21
+ ${S}${T}
22
+ ${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 p1(_);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+=`
23
+ ${S}`,h=`,
24
+ ${S}`;let r=Math.min(_.length,W),v=0;for(;v<r-1;v++){let $1=B(String(v),_[v],A,R,M,S);T+=$1!==void 0?$1:"null",T+=h}let e=B(String(v),_[v],A,R,M,S);if(T+=e!==void 0?e:"null",_.length-1>W){let $1=_.length-W-1;T+=`${h}"... ${W0($1)} not stringified"`}if(M!=="")T+=`
25
+ ${O}`;return A.pop(),`[${T}]`}A.push(_);let m="";if(M!=="")S+=M,h=`,
26
+ ${S}`,m=" ";let c="";for(let r of R){let v=B(r,_[r],A,R,M,S);if(v!==void 0)T+=`${c}${p1(r)}:${m}${v}`,c=h}if(M!==""&&c.length>1)T=`
27
+ ${S}${T}
28
+ ${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 p1(_);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=`
29
+ ${M}`,e=`,
30
+ ${M}`,$1=Math.min(_.length,W),t=0;for(;t<$1-1;t++){let B1=w(String(t),_[t],A,R,M);v+=B1!==void 0?B1:"null",v+=e}let C=w(String(t),_[t],A,R,M);if(v+=C!==void 0?C:"null",_.length-1>W){let B1=_.length-W-1;v+=`${e}"... ${W0(B1)} not stringified"`}return v+=`
31
+ ${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=`,
32
+ ${M}`,m="",c="",r=Math.min(T,W);if(n4(_))m+=S6(_,h,W),O=O.slice(_.length),r-=_.length,c=h;if(X)O=l4(O,Y);A.push(_);for(let v=0;v<r;v++){let e=O[v],$1=w(e,_[e],A,R,M);if($1!==void 0)m+=`${c}${p1(e)}: ${$1}`,c=h}if(T>W){let v=T-W;m+=`${c}"...": "${W0(v)} not stringified"`,c=h}if(c!=="")m=`
33
+ ${M}${m}
34
+ ${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 p1(_);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 r=z(String(c),_[c],A);if(R+=r!==void 0?r:"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&&n4(_))R+=S6(_,",",W),S=S.slice(_.length),h-=_.length,T=",";if(X)S=l4(S,Y);A.push(_);for(let m=0;m<h;m++){let c=S[m],r=z(c,_[c],A);if(r!==void 0)R+=`${T}${p1(c)}:${r}`,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,[],IG(_),R,"")}if(R.length!==0)return w("",D,[],R,"")}return z("",D,[])}return N}});var b6=b((tU,T6)=>{var o4=Symbol.for("pino.metadata"),{DEFAULT_LEVELS:P6}=n$(),hG=P6.info;function xG($,H){$=$||[],H=H||{dedupe:!1};let Q=Object.create(P6);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,[o4]:!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=kG(_.length,H.dedupe);gG(M,_.length,H.dedupe);M=vG(M,H.dedupe))if(N=_[M],N.level<=D){if(A!==0&&A!==N.level)break;if(R=N.stream,R[o4]){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=hG;let M={stream:D,level:R,levelVal:void 0,id:++J.lastId};return _.unshift(M),_.sort(K6),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(K6),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,[o4]:!0}}}function K6($,H){return $.level-H.level}function kG($,H){return H?$-1:0}function vG($,H){return H?$-1:$+1}function gG($,H,Q){return Q?$>=0:$<H}T6.exports=xG});var n6=b((eU,V1)=>{var yG=require("node:os"),y6=D4(),uG=V4(),cG=F4(),u6=fH(),mG=O6(),c6=b0(),{configure:dG}=C6(),{assertDefaultLevelFound:lG,mappings:m6,genLsCache:nG,genLevelComparison:iG,assertLevelComparison:pG}=g4(),{DEFAULT_LEVELS:d6,SORTING_ORDER:oG}=n$(),{createArgsNormalizer:sG,asChindings:rG,buildSafeSonicBoom:I6,buildFormatters:aG,stringify:s4,normalizeDestFileDescriptor:Z6,noop:tG}=l$(),{version:eG}=y4(),{chindingsSym:h6,redactFmtSym:$W,serializersSym:x6,timeSym:HW,timeSliceIndexSym:QW,streamSym:JW,stringifySym:k6,stringifySafeSym:r4,stringifiersSym:v6,setLevelSym:XW,endSym:YW,formatOptsSym:GW,messageKeySym:WW,errorKeySym:qW,nestedKeySym:BW,mixinSym:wW,levelCompSym:zW,useOnlyCustomLevelsSym:_W,formattersSym:g6,hooksSym:UW,nestedKeyStrSym:NW,mixinMergeStrategySym:DW,msgPrefixSym:VW}=c6,{epochTime:l6,nullTime:RW}=u6,{pid:AW}=process,FW=yG.hostname(),EW=y6.err,MW={level:"info",levelComparison:oG.ASC,levels:d6,messageKey:"msg",errorKey:"err",nestedKey:null,enabled:!0,base:{pid:AW,hostname:FW},serializers:Object.assign(Object.create(null),{err:EW}),formatters:Object.assign(Object.create(null),{bindings($){return $},level($,H){return{level:H}}}),hooks:{logMethod:void 0,streamWrite:void 0},timestamp:l6,name:void 0,redact:null,customLevels:null,useOnlyCustomLevels:!1,depthLimit:5,edgeLimit:100},jW=sG(MW),OW=Object.assign(Object.create(null),y6);function a4(...$){let H={},{opts:Q,stream:J}=jW(H,uG(),...$);if(Q.level&&typeof Q.level==="string"&&d6[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:r}=Q,v=dG({maximumDepth:h,maximumBreadth:m}),e=aG(O.level,O.bindings,O.log),$1=s4.bind({[r4]:v}),t=X?cG(X,$1):{},C=X?{stringify:t[$W]}:{stringify:$1},B1="}"+(Y?`\r
35
+ `:`
36
+ `),w1=rG.bind(null,{[h6]:"",[x6]:G,[v6]:t,[k6]:s4,[r4]:v,[g6]:e}),L1="";if(z!==null)if(N===void 0)L1=w1(z);else L1=w1(Object.assign({},z,{name:N}));let y0=W instanceof Function?W:W?l6:RW,N$=y0().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(r&&typeof r!=="string")throw Error(`Unknown msgPrefix type "${typeof r}" - expected "string"`);lG(D,_,S);let u0=m6(_,S);if(typeof J.emit==="function")J.emit("message",{code:"PINO_CONFIG",config:{levels:u0,messageKey:q,errorKey:B}});pG(A);let D$=iG(A);return Object.assign(H,{levels:u0,[zW]:D$,[_W]:S,[JW]:J,[HW]:y0,[QW]:N$,[k6]:s4,[r4]:v,[v6]:t,[YW]:B1,[GW]:C,[WW]:q,[qW]:B,[BW]:w,[NW]:w?`,${JSON.stringify(w)}:{`:"",[x6]:G,[wW]:R,[DW]:M,[h6]:L1,[g6]:e,[UW]:T,silent:tG,onChild:c,[VW]:r}),Object.setPrototypeOf(H,mG()),nG(H),H[XW](D),H}V1.exports=a4;V1.exports.destination=($=process.stdout.fd)=>{if(typeof $==="object")return $.dest=Z6($.dest||process.stdout.fd),I6($);else return I6({dest:Z6($),minLength:0})};V1.exports.transport=I4();V1.exports.multistream=b6();V1.exports.levels=m6();V1.exports.stdSerializers=OW;V1.exports.stdTimeFunctions=Object.assign({},u6);V1.exports.symbols=c6;V1.exports.version=eG;V1.exports.default=a4;V1.exports.pino=a4});var e4=b((l)=>{Object.defineProperty(l,"__esModule",{value:!0});var SW=require("tty");function LW($){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 t4=LW(SW),{env:o1={},argv:p6=[],platform:fW=""}=typeof process>"u"?{}:process,CW="NO_COLOR"in o1||p6.includes("--no-color"),KW="FORCE_COLOR"in o1||p6.includes("--color"),PW=fW==="win32",o6=o1.TERM==="dumb",TW=t4&&t4.isatty&&t4.isatty(1)&&o1.TERM&&!o6,bW="CI"in o1&&(("GITHUB_ACTIONS"in o1)||("GITLAB_CI"in o1)||("CIRCLECI"in o1)),s6=!CW&&(KW||PW&&!o6||TW||bW),r6=($,H,Q,J,X=H.substring(0,$)+J,Y=H.substring($+Q.length),G=Y.indexOf(Q))=>X+(G<0?Y:r6(G,Y,Q,J)),IW=($,H,Q,J,X)=>$<0?Q+H+J:Q+r6($,H,J,X)+J,ZW=($,H,Q=$,J=$.length+1)=>(X)=>X||!(X===""||X===void 0)?IW((""+X).indexOf(H,J),X,$,H,Q):"",i=($,H,Q)=>ZW(`\x1B[${$}m`,`\x1B[${H}m`,Q),i6={reset:i(0,0),bold:i(1,22,"\x1B[22m\x1B[1m"),dim:i(2,22,"\x1B[22m\x1B[2m"),italic:i(3,23),underline:i(4,24),inverse:i(7,27),hidden:i(8,28),strikethrough:i(9,29),black:i(30,39),red:i(31,39),green:i(32,39),yellow:i(33,39),blue:i(34,39),magenta:i(35,39),cyan:i(36,39),white:i(37,39),gray:i(90,39),bgBlack:i(40,49),bgRed:i(41,49),bgGreen:i(42,49),bgYellow:i(43,49),bgBlue:i(44,49),bgMagenta:i(45,49),bgCyan:i(46,49),bgWhite:i(47,49),blackBright:i(90,39),redBright:i(91,39),greenBright:i(92,39),yellowBright:i(93,39),blueBright:i(94,39),magentaBright:i(95,39),cyanBright:i(96,39),whiteBright:i(97,39),bgBlackBright:i(100,49),bgRedBright:i(101,49),bgGreenBright:i(102,49),bgYellowBright:i(103,49),bgBlueBright:i(104,49),bgMagentaBright:i(105,49),bgCyanBright:i(106,49),bgWhiteBright:i(107,49)},a6=({useColor:$=s6}={})=>$?i6:Object.keys(i6).reduce((H,Q)=>({...H,[Q]:String}),{}),{reset:hW,bold:xW,dim:kW,italic:vW,underline:gW,inverse:yW,hidden:uW,strikethrough:cW,black:mW,red:dW,green:lW,yellow:nW,blue:iW,magenta:pW,cyan:oW,white:sW,gray:rW,bgBlack:aW,bgRed:tW,bgGreen:eW,bgYellow:$q,bgBlue:Hq,bgMagenta:Qq,bgCyan:Jq,bgWhite:Xq,blackBright:Yq,redBright:Gq,greenBright:Wq,yellowBright:qq,blueBright:Bq,magentaBright:wq,cyanBright:zq,whiteBright:_q,bgBlackBright:Uq,bgRedBright:Nq,bgGreenBright:Dq,bgYellowBright:Vq,bgBlueBright:Rq,bgMagentaBright:Aq,bgCyanBright:Fq,bgWhiteBright:Eq}=a6();l.bgBlack=aW;l.bgBlackBright=Uq;l.bgBlue=Hq;l.bgBlueBright=Rq;l.bgCyan=Jq;l.bgCyanBright=Fq;l.bgGreen=eW;l.bgGreenBright=Dq;l.bgMagenta=Qq;l.bgMagentaBright=Aq;l.bgRed=tW;l.bgRedBright=Nq;l.bgWhite=Xq;l.bgWhiteBright=Eq;l.bgYellow=$q;l.bgYellowBright=Vq;l.black=mW;l.blackBright=Yq;l.blue=iW;l.blueBright=Bq;l.bold=xW;l.createColors=a6;l.cyan=oW;l.cyanBright=zq;l.dim=kW;l.gray=rW;l.green=lW;l.greenBright=Wq;l.hidden=uW;l.inverse=yW;l.isColorSupported=s6;l.italic=vW;l.magenta=pW;l.magentaBright=wq;l.red=dW;l.redBright=Gq;l.reset=hW;l.strikethrough=cW;l.underline=gW;l.white=sW;l.whiteBright=_q;l.yellow=nW;l.yellowBright=qq});var $7=b((HN,e6)=>{e6.exports=t6;function t6($,H){if($&&H)return t6($)(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 H9=b((QN,$9)=>{var H7=$7();$9.exports=H7(o$);$9.exports.strict=H7(Q7);o$.proto=o$(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return o$(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return Q7(this)},configurable:!0})});function o$($){var H=function(){if(H.called)return H.value;return H.called=!0,H.value=$.apply(this,arguments)};return H.called=!1,H}function Q7($){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 Y7=b((JN,X7)=>{var Mq=H9(),jq=function(){},Oq=global.Bare?queueMicrotask:process.nextTick.bind(process),Sq=function($){return $.setHeader&&typeof $.abort==="function"},Lq=function($){return $.stdio&&Array.isArray($.stdio)&&$.stdio.length===3},J7=function($,H,Q){if(typeof H==="function")return J7($,null,H);if(!H)H={};Q=Mq(Q||jq);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(){Oq(_)},_=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(Sq($))if($.on("complete",B),$.on("abort",D),$.req)A();else $.on("request",A);else if(G&&!J)$.on("end",q),$.on("close",q);if(Lq($))$.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)}};X7.exports=J7});var q7=b((XN,W7)=>{var fq=H9(),Cq=Y7(),s$;try{s$=require("fs")}catch($){}var W$=function(){},Kq=typeof process>"u"?!1:/^v?\.0/.test(process.version),r$=function($){return typeof $==="function"},Pq=function($){if(!Kq)return!1;if(!s$)return!1;return($ instanceof(s$.ReadStream||W$)||$ instanceof(s$.WriteStream||W$))&&r$($.close)},Tq=function($){return $.setHeader&&r$($.abort)},bq=function($,H,Q,J){J=fq(J);var X=!1;$.on("close",function(){X=!0}),Cq($,{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,Pq($))return $.close(W$);if(Tq($))return $.abort();if(r$($.destroy))return $.destroy();J(G||Error("stream was destroyed"))}},G7=function($){$()},Iq=function($,H){return $.pipe(H)},Zq=function(){var $=Array.prototype.slice.call(arguments),H=r$($[$.length-1]||W$)&&$.pop()||W$;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 bq(X,G,W,function(q){if(!Q)Q=q;if(q)J.forEach(G7);if(G)return;J.forEach(G7),H(Q)})});return $.reduce(Iq)};W7.exports=Zq});var _7=b((YN,z7)=>{var{Transform:hq}=require("stream"),{StringDecoder:xq}=require("string_decoder"),s1=Symbol("last"),a$=Symbol("decoder");function kq($,H,Q){let J;if(this.overflow){if(J=this[a$].write($).split(this.matcher),J.length===1)return Q();J.shift(),this.overflow=!1}else this[s1]+=this[a$].write($),J=this[s1].split(this.matcher);this[s1]=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[s1].length>this.maxLength,this.overflow&&!this.skipOverflow){Q(Error("maximum buffer reached"));return}Q()}function vq($){if(this[s1]+=this[a$].end(),this[s1])try{w7(this,this.mapper(this[s1]))}catch(H){return $(H)}$()}function w7($,H){if(H!==void 0)$.push(H)}function B7($){return $}function gq($,H,Q){switch($=$||/\r?\n/,H=H||B7,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=B7}Q=Object.assign({},Q),Q.autoDestroy=!0,Q.transform=kq,Q.flush=vq,Q.readableObjectMode=!0;let J=new hq(Q);return J[s1]="",J[a$]=new xq("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}z7.exports=gq});var R7=b((GN,V7)=>{var U7=Symbol.for("pino.metadata"),yq=_7(),{Duplex:uq}=require("stream"),{parentPort:N7,workerData:D7}=require("worker_threads");function cq(){let $,H,Q=new Promise((J,X)=>{$=J,H=X});return Q.resolve=$,Q.reject=H,Q}V7.exports=function(H,Q={}){let J=Q.expectPinoConfig===!0&&D7?.workerData?.pinoWillSendConfig===!0,X=Q.parse==="lines",Y=typeof Q.parseLine==="function"?Q.parseLine:JSON.parse,G=Q.close||mq,W=yq(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[U7])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&&D7?.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[U7]=!0,W.lastTime=0,W.lastLevel=0,W.lastObj=null;if(J){let B={},w=cq();return N7.on("message",function z(N){if(N.code==="PINO_CONFIG")B=N.config,w.resolve(),N7.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 uq.from({writable:W,readable:B});return W}};function mq($,H){process.nextTick(H,$)}});var g1=b((WN,A7)=>{A7.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 t$=b((qN,M7)=>{M7.exports=dq;var{LEVELS:F7,LEVEL_NAMES:E7}=g1();function dq($,H,Q){let J=$?H||F7:Object.assign({},F7,H),X=$?Q||E7:Object.assign({},E7,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 Y9=b((BN,L7)=>{var Z1=($)=>$,e$={default:Z1,60:Z1,50:Z1,40:Z1,30:Z1,20:Z1,10:Z1,message:Z1,greyMessage:Z1,property:Z1},{createColors:j7}=e4(),lq=t$(),B$=j7({useColor:!0}),{white:Q9,bgRed:nq,red:iq,yellow:pq,green:oq,blue:sq,gray:J9,cyan:O7,magenta:S7}=B$,q$={default:Q9,60:nq,50:iq,40:pq,30:oq,20:sq,10:J9,message:O7,greyMessage:J9,property:S7};function rq($){return $.reduce(function(H,[Q,J]){return H[Q]=typeof B$[J]==="function"?B$[J]:Q9,H},{default:Q9,message:O7,greyMessage:J9,property:S7})}function X9($){return function(H,Q,{customLevels:J,customLevelNames:X}={}){let[Y,G]=lq($,J,X)(H);return Object.prototype.hasOwnProperty.call(Q,G)?Q[G](Y):Q.default(Y)}}function aq($){let H=X9($),Q=function(J,X){return H(J,e$,X)};return Q.message=e$.message,Q.greyMessage=e$.greyMessage,Q.property=e$.property,Q.colors=j7({useColor:!1}),Q}function tq($){let H=X9($),Q=function(J,X){return H(J,q$,X)};return Q.message=q$.message,Q.property=q$.property,Q.greyMessage=q$.greyMessage,Q.colors=B$,Q}function eq($,H){let Q=rq($),J=H?Q:Object.assign({},q$,Q),X=X9(H),Y=function(G,W){return X(G,J,W)};return Y.colors=B$,Y.message=Y.message||J.message,Y.property=Y.property||J.property,Y.greyMessage=Y.greyMessage||J.greyMessage,Y}L7.exports=function(H=!1,Q,J){if(H&&Q!==void 0)return eq(Q,J);else if(H)return tq(J);return aq(J)}});var G9=b((wN,f7)=>{f7.exports=function(){}});var K7=b((zN,C7)=>{C7.exports=QB;var{isMainThread:$B}=require("node:worker_threads"),HB=S4(),$2=G9();function QB($){let H=new HB($);if(H.on("error",Q),!$.sync&&$B)JB(H);return H;function Q(J){if(J.code==="EPIPE"){H.write=$2,H.end=$2,H.flushSync=$2,H.destroy=$2;return}H.removeListener("error",Q)}}function JB($){if(global.WeakRef&&global.WeakMap&&global.FinalizationRegistry){let H=g$();H.register($,XB),$.on("close",function(){H.unregister($)})}}function XB($,H){if($.destroyed)return;if(H==="beforeExit")$.flush(),$.on("drain",function(){$.end()});else $.flushSync()}});var H2=b((_N,P7)=>{P7.exports=YB;function YB($){return $ instanceof Date&&!Number.isNaN($.getTime())}});var W9=b((UN,T7)=>{T7.exports=WB;var GB=H2();function WB($){let H=new Date($);if(GB(H))return H;return H=new Date(+$),H}});var Q2=b((NN,b7)=>{b7.exports=qB;function qB($){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((DN,I7)=>{I7.exports=wB;var BB=Q2();function wB($,H){let Q=Array.isArray(H)?H:BB(H);for(let J of Q){if(!Object.prototype.hasOwnProperty.call($,J))return;$=$[J]}return $}});var q9=b((VN,Z7)=>{Z7.exports=UB;var zB=h0(),_B=Q2();function UB($,H){let Q=_B(H),J=Q.pop();if($=zB($,Q),$!==null&&typeof $==="object"&&Object.prototype.hasOwnProperty.call($,J))delete $[J]}});var l7=b((x0)=>{Object.defineProperty(x0,"__esModule",{value:!0});var NB=Function.prototype.toString,B9=Object.create,DB=Object.prototype.toString,VB=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 RB(){return new VB}function AB(){return new WeakMap}var FB=typeof WeakMap<"u"?AB:RB;function z9($){if(!$)return B9(null);var H=$.constructor;if(H===Object)return $===Object.prototype?{}:B9($);if(H&&~NB.call(H).indexOf("[native code]"))try{return new H}catch(Q){}return B9($)}function EB($){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 MB($){return $.flags}var jB=/test/g.flags==="g"?MB:EB;function h7($){var H=DB.call($);return H.substring(8,H.length-1)}function OB($){return $[Symbol.toStringTag]||h7($)}var SB=typeof Symbol<"u"?OB:h7,LB=Object.defineProperty,fB=Object.getOwnPropertyDescriptor,x7=Object.getOwnPropertyNames,_9=Object.getOwnPropertySymbols,k7=Object.prototype,v7=k7.hasOwnProperty,CB=k7.propertyIsEnumerable,g7=typeof _9==="function";function KB($){return x7($).concat(_9($))}var PB=g7?KB:x7;function X2($,H,Q){var J=PB($);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=fB($,G),!W){H[G]=Q.copier($[G],Q);continue}if(!W.get&&!W.set)W.value=Q.copier(W.value,Q);try{LB(H,G,W)}catch(q){H[G]=W.value}}return H}function TB($,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 bB($,H){var Q=new H.Constructor;return H.cache.set($,Q),X2($,Q,H)}function y7($,H){return $.slice(0)}function IB($,H){return $.slice(0,$.size,$.type)}function ZB($,H){return new H.Constructor(y7($.buffer))}function hB($,H){return new H.Constructor($.getTime())}function u7($,H){var Q=new H.Constructor;return H.cache.set($,Q),$.forEach(function(J,X){Q.set(X,H.copier(J,H))}),Q}function xB($,H){return X2($,u7($,H),H)}function kB($,H){var Q=z9(H.prototype);H.cache.set($,Q);for(var J in $)if(v7.call($,J))Q[J]=H.copier($[J],H);return Q}function vB($,H){var Q=z9(H.prototype);H.cache.set($,Q);for(var J in $)if(v7.call($,J))Q[J]=H.copier($[J],H);var X=_9($);for(var Y=0,G=X.length,W=void 0;Y<G;++Y)if(W=X[Y],CB.call($,W))Q[W]=H.copier($[W],H);return Q}var gB=g7?vB:kB;function yB($,H){var Q=z9(H.prototype);return H.cache.set($,Q),X2($,Q,H)}function w9($,H){return new H.Constructor($.valueOf())}function uB($,H){var Q=new H.Constructor($.source,jB($));return Q.lastIndex=$.lastIndex,Q}function J2($,H){return $}function c7($,H){var Q=new H.Constructor;return H.cache.set($,Q),$.forEach(function(J){Q.add(H.copier(J,H))}),Q}function cB($,H){return X2($,c7($,H),H)}var mB=Array.isArray,U9=Object.assign,dB=Object.getPrototypeOf||function($){return $.__proto__},m7={array:TB,arrayBuffer:y7,blob:IB,dataView:ZB,date:hB,error:J2,map:u7,object:gB,regExp:uB,set:c7},lB=U9({},m7,{array:bB,map:xB,object:yB,set:cB});function nB($){return{Arguments:$.object,Array:$.array,ArrayBuffer:$.arrayBuffer,Blob:$.blob,Boolean:w9,DataView:$.dataView,Date:$.date,Error:$.error,Float32Array:$.arrayBuffer,Float64Array:$.arrayBuffer,Int8Array:$.arrayBuffer,Int16Array:$.arrayBuffer,Int32Array:$.arrayBuffer,Map:$.map,Number:w9,Object:$.object,Promise:J2,RegExp:$.regExp,Set:$.set,String:w9,WeakMap:J2,WeakSet:J2,Uint8Array:$.arrayBuffer,Uint8ClampedArray:$.arrayBuffer,Uint16Array:$.arrayBuffer,Uint32Array:$.arrayBuffer,Uint64Array:$.arrayBuffer}}function N9($){var H=U9({},m7,$),Q=nB(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=dB(G),W.Constructor=W.prototype&&W.prototype.constructor,!W.Constructor||W.Constructor===Object)return X(G,W);if(mB(G))return J(G,W);var q=Q[SB(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:FB(),copier:Y,prototype:void 0})}}function d7($){return N9(U9({},lB,$))}var iB=d7({}),pB=N9({});x0.copyStrict=iB;x0.createCopier=N9;x0.createStrictCopier=d7;x0.default=pB});var D9=b((AN,n7)=>{n7.exports=aB;var{createCopier:oB}=l7(),sB=oB({}),rB=q9();function aB({log:$,context:H}){let{ignoreKeys:Q,includeKeys:J}=H,X=sB($);if(J){let Y={};return J.forEach((G)=>{Y[G]=X[G]}),Y}return Q.forEach((Y)=>{rB(X,Y)}),X}});var p7=b((V9,i7)=>{function k0($){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol")k0=function(Q){return typeof Q};else k0=function(Q){return Q&&typeof Symbol==="function"&&Q.constructor===Symbol&&Q!==Symbol.prototype?"symbol":typeof Q};return k0($)}(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"]()},r=function(){return z[R()+"Milliseconds"]()},v=function(){return D?0:z.getTimezoneOffset()},e=function(){return Y(z)},$1=function(){return G(z)},t={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(r(),3)},L:function(){return J(Math.floor(r()/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 e()},WW:function(){return J(e())},N:function(){return $1()}};return N.replace(q,function(C){if(C in t)return t[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"]()},r=function(){return S[D+"Month"]()},v=function(){return S[D+"FullYear"]()},e=function(){return O[D+"Date"]()},$1=function(){return O[D+"Month"]()},t=function(){return O[D+"FullYear"]()};if(m()===w&&h()===z&&T()===N)return R?"Tdy":"Today";else if(v()===w&&r()===z&&c()===N)return R?"Ysd":"Yesterday";else if(t()===w&&$1()===z&&e()===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(k0(B)!=="object")return k0(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 V9>"u"?"undefined":k0(V9))==="object")i7.exports=Q;else $.dateFormat=Q})(void 0)});var R9=b((FN,o7)=>{o7.exports=Qw;var{DATE_FORMAT:tB,DATE_FORMAT_SIMPLE:eB}=g1(),w$=p7(),$w=W9(),Hw=H2();function Qw($,H=!1){if(H===!1)return $;let Q=$w($);if(!Hw(Q))return $;if(H===!0)return w$(Q,eB);let J=H.toUpperCase();if(J==="SYS:STANDARD")return w$(Q,tB);let X=J.substr(0,4);if(X==="SYS:"||X==="UTC:"){if(X==="UTC:")return w$(Q,H);return w$(Q,H.slice(4))}return w$(Q,`UTC:${H}`)}});var A9=b((EN,s7)=>{s7.exports=Jw;function Jw($){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 F9=b((MN,r7)=>{r7.exports=Xw;function Xw($){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 E9=b((jN,a7)=>{a7.exports=Gw;var Yw=h0();function Gw($,H){return $=$.replace(/{if (.*?)}(.*?){end}/g,Q),$=$.replace(/{if (.*?)}/g,""),$=$.replace(/{end}/g,""),$.replace(/\s+/g," ").trim();function Q(J,X,Y){let G=Yw(H,X);if(G&&Y.includes(X))return Y.replace(new RegExp("{"+X+"}","g"),G);else return""}}});var Y2=b((ON,t7)=>{t7.exports=Ww;function Ww($){return Object.prototype.toString.apply($)==="[object Object]"}});var z$=b((SN,e7)=>{e7.exports=qw;function qw({input:$,ident:H=" ",eol:Q=`
37
+ `}){let J=$.split(/\r?\n/);for(let X=1;X<J.length;X+=1)J[X]=H+J[X];return J.join(Q)}});var J5=b((LN,Q5)=>{Q5.exports=_w;var{LEVEL_NAMES:$5}=g1(),H5=Y9(),Bw=F9(),ww=A9(),zw=t$();function _w($){let H=$.crlf?`\r
38
+ `:`
39
+ `,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=Bw($.customLevels),S=ww($.customLevels),O=zw(R,M,S),T;if($.customColors)if(typeof $.customColors==="string")T=$.customColors.split(",").reduce((e,$1)=>{let[t,C]=$1.split(":"),w1=(R?$.customLevels:S[t]!==void 0)?S[t]:$5[t],L1=w1!==void 0?w1:t;return e.push([L1,C]),e},[]);else if(typeof $.customColors==="object")T=Object.keys($.customColors).reduce((e,$1)=>{let[t,C]=[$1,$.customColors[$1]],w1=(R?$.customLevels:S[t]!==void 0)?S[t]:$5[t],L1=w1!==void 0?w1:t;return e.push([L1,C]),e},[]);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,r=H5($.colorize,T,R),v=$.colorizeObjects?r:H5(!1,[],!1);return{EOL:H,IDENT:" ",colorizer:r,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 B5=b((fN,q5)=>{q5.exports=_$;_$.default=_$;_$.stable=G5;_$.stableStringify=G5;var G2="[...]",X5="[Circular]",w0=[],B0=[];function Y5(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function _$($,H,Q,J){if(typeof J>"u")J=Y5();M9($,"",0,[],void 0,0,J);var X;try{if(B0.length===0)X=JSON.stringify($,H,Q);else X=JSON.stringify($,W5(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 v0($,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 M9($,H,Q,J,X,Y,G){Y+=1;var W;if(typeof $==="object"&&$!==null){for(W=0;W<J.length;W++)if(J[W]===$){v0(X5,$,H,X);return}if(typeof G.depthLimit<"u"&&Y>G.depthLimit){v0(G2,$,H,X);return}if(typeof G.edgesLimit<"u"&&Q+1>G.edgesLimit){v0(G2,$,H,X);return}if(J.push($),Array.isArray($))for(W=0;W<$.length;W++)M9($[W],W,W,J,$,Y,G);else{var q=Object.keys($);for(W=0;W<q.length;W++){var B=q[W];M9($[B],B,W,J,$,Y,G)}}J.pop()}}function Uw($,H){if($<H)return-1;if($>H)return 1;return 0}function G5($,H,Q,J){if(typeof J>"u")J=Y5();var X=j9($,"",0,[],void 0,0,J)||$,Y;try{if(B0.length===0)Y=JSON.stringify(X,H,Q);else Y=JSON.stringify(X,W5(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 j9($,H,Q,J,X,Y,G){Y+=1;var W;if(typeof $==="object"&&$!==null){for(W=0;W<J.length;W++)if(J[W]===$){v0(X5,$,H,X);return}try{if(typeof $.toJSON==="function")return}catch(z){return}if(typeof G.depthLimit<"u"&&Y>G.depthLimit){v0(G2,$,H,X);return}if(typeof G.edgesLimit<"u"&&Q+1>G.edgesLimit){v0(G2,$,H,X);return}if(J.push($),Array.isArray($))for(W=0;W<$.length;W++)j9($[W],W,W,J,$,Y,G);else{var q={},B=Object.keys($).sort(Uw);for(W=0;W<B.length;W++){var w=B[W];j9($[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 W5($){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 O9=b((CN,w5)=>{w5.exports=Dw;var Nw=z$();function Dw({keyName:$,lines:H,eol:Q,ident:J}){let X="",Y=Nw({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 W2=b((KN,z5)=>{z5.exports=Fw;var{LOGGER_KEYS:Vw}=g1(),S9=B5(),Rw=z$(),Aw=O9();function Fw({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,Vw);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(S9(D));N+=X,N=N.replace(/\\\\/gi,"\\")}else Object.entries(D).forEach(([A,R])=>{let M=typeof G[A]==="function"?R:S9(R,null,2);if(M===void 0)return;M=M.replace(/\\\\/gi,"\\");let S=Rw({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:S9(R,null,2);if(M===void 0)return;N+=Aw({keyName:A,lines:M,eol:X,ident:Y})}),N}});var L9=b((PN,_5)=>{_5.exports=Sw;var{LOGGER_KEYS:Ew}=g1(),Mw=Y2(),jw=z$(),Ow=W2();function Sw({log:$,context:H}){let{EOL:Q,IDENT:J,errorProps:X,messageKey:Y}=H,G=$.stack,W=jw({input:G,ident:J,eol:Q}),q=`${J}${W}${Q}`;if(X.length>0){let B=Ew.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(Mw($[N])){let D=Ow({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 f9=b((TN,U5)=>{U5.exports=fw;var Lw=h0();function fw({log:$,context:H}){let{colorizer:Q,customLevels:J,customLevelNames:X,levelKey:Y,getLevelLabelData:G}=H,W=H.customPrettifiers?.level,q=Lw($,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 C9=b((bN,D5)=>{D5.exports=Pw;var{LEVELS:Cw}=g1(),N5=h0(),Kw=E9();function Pw({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=Kw(G,$),w=String(B).replace(/{([^{}]+)}/g,function(z,N){let D;if(N===Y&&(D=N5($,X))!==void 0)return(q?J===void 0:J[D]===void 0)?Cw[D]:J[D];return N5($,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 K9=b((IN,V5)=>{V5.exports=Tw;function Tw({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 P9=b((ZN,R5)=>{R5.exports=Iw;var bw=R9();function Iw({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?bw(Y,J):Y;return X?X(G):`[${G}]`}});var F5=b((hN,A5)=>{A5.exports={buildSafeSonicBoom:K7(),createDate:W9(),deleteLogProperty:q9(),filterLog:D9(),formatTime:R9(),getPropertyValue:h0(),handleCustomLevelsNamesOpts:A9(),handleCustomLevelsOpts:F9(),interpretConditionals:E9(),isObject:Y2(),isValidDate:H2(),joinLinesWithIndentation:z$(),noop:G9(),parseFactoryOptions:J5(),prettifyErrorLog:L9(),prettifyError:O9(),prettifyLevel:f9(),prettifyMessage:C9(),prettifyMetadata:K9(),prettifyObject:W2(),prettifyTime:P9(),splitPropertyKey:Q2(),getLevelLabelData:t$()}});var S5=b((xN,g0)=>{var Zw=typeof Buffer<"u",E5=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,M5=/"(?: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 j5($,H,Q){if(Q==null){if(H!==null&&typeof H==="object")Q=H,H=void 0}if(Zw&&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(E5.test($)===!1&&M5.test($)===!1)return J}else if(X!=="ignore"&&Y==="ignore"){if(E5.test($)===!1)return J}else if(M5.test($)===!1)return J;return O5(J,{protoAction:X,constructorAction:Y,safe:Q&&Q.safe})}function O5($,{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 T9($,H,Q){let{stackTraceLimit:J}=Error;Error.stackTraceLimit=0;try{return j5($,H,Q)}finally{Error.stackTraceLimit=J}}function hw($,H){let{stackTraceLimit:Q}=Error;Error.stackTraceLimit=0;try{return j5($,H,{safe:!0})}catch{return}finally{Error.stackTraceLimit=Q}}g0.exports=T9;g0.exports.default=T9;g0.exports.parse=T9;g0.exports.safeParse=hw;g0.exports.scan=O5});var C5=b((kN,f5)=>{f5.exports=iw;var xw=S5(),L5=Y2(),kw=L9(),vw=f9(),gw=C9(),yw=K9(),uw=W2(),cw=P9(),mw=D9(),{LEVELS:dw,LEVEL_KEY:lw,LEVEL_NAMES:b9}=g1(),nw=($)=>{try{return{value:xw.parse($,{protoAction:"remove"})}}catch(H){return{err:H}}};function iw($){let H;if(!L5($)){let W=nw($);if(W.err||!L5(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=b9[this.minimumLevel];if(!q)q=typeof this.minimumLevel==="string"?b9[this.minimumLevel]:b9[dw[this.minimumLevel].toLowerCase()];if(H[this.levelKey===void 0?lw:this.levelKey]<q)return}let Q=gw({log:H,context:this.context});if(this.ignoreKeys||this.includeKeys)H=mw({log:H,context:this.context});let J=vw({log:H,context:{...this.context,...this.context.customProperties}}),X=yw({log:H,context:this.context}),Y=cw({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=kw({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=uw({log:H,skipKeys:W,context:this.context});if(this.singleLine&&!/^\s$/.test(q))G+=" ";G+=q}return G}});var T5=b((vN,r1)=>{var{isColorSupported:K5}=e4(),pw=q7(),{Transform:ow}=require("node:stream"),sw=R7(),rw=Y9(),{ERROR_LIKE_KEYS:P5,LEVEL_KEY:aw,LEVEL_LABEL:tw,MESSAGE_KEY:ew,TIMESTAMP_KEY:$z}=g1(),{buildSafeSonicBoom:Hz,parseFactoryOptions:Qz}=F5(),Jz=C5(),Xz={colorize:K5,colorizeObjects:!0,crlf:!1,customColors:null,customLevels:null,customPrettifiers:{},errorLikeObjectKeys:P5,errorProps:"",hideObject:!1,ignore:"hostname",include:void 0,levelFirst:!1,levelKey:aw,levelLabel:tw,messageFormat:null,messageKey:ew,minimumLevel:void 0,outputStream:process.stdout,singleLine:!1,timestampKey:$z,translateTime:!0,useOnlyCustomProps:!0};function I9($){let H=Qz(Object.assign({},Xz,$));return Jz.bind({...H,context:H})}function q2($={}){let H=I9($),Q;return sw(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||P5,G.config.errorKey])),customLevels:G.config.levels.values}),H=I9($),J.off("message",Y)});let X=new ow({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=Hz({dest:$.destination||1,append:$.append,mkdir:$.mkdir,sync:$.sync});return J.on("unknown",function(Y){Q.write(Y+`
40
+ `)}),pw(J,X,Q),X},{parse:"lines",close(J,X){Q.on("close",()=>{X(J)})}})}r1.exports=q2;r1.exports.build=q2;r1.exports.PinoPretty=q2;r1.exports.prettyFactory=I9;r1.exports.colorizerFactory=rw;r1.exports.isColorSupported=K5;r1.exports.default=q2});var v9={};y1(v9,{HonoAdapter:()=>h5});class h5{hono;name="hono";runtime;constructor($){this.hono=$;this.runtime=Gz()}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 Gz=()=>{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 k5={};y1(k5,{ExpressAdapter:()=>x5});class x5{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}}var Wz={};y1(Wz,{setupTestApp:()=>u5,mockDependency:()=>y5,createTestClient:()=>u9,createTestApp:()=>y9,clearMocks:()=>c5,TestClient:()=>d0});module.exports=V$(Wz);class d0{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 U2=($,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 $8=Symbol();var H8=async($,H=Object.create(null))=>{let{all:Q=!1,dot:J=!1}=H,Y=($ instanceof R$?$.raw.headers:$.headers).get("Content-Type");if(Y?.startsWith("multipart/form-data")||Y?.startsWith("application/x-www-form-urlencoded"))return G3($,{all:Q,dot:J});return{}};async function G3($,H){let Q=await $.formData();if(Q)return W3(Q,H);return{}}function W3($,H){let Q=Object.create(null);if($.forEach((J,X)=>{if(!(H.all||X.endsWith("[]")))Q[X]=J;else q3(Q,X,J)}),H.dot)Object.entries(Q).forEach(([J,X])=>{if(J.includes("."))B3(Q,J,X),delete Q[J]});return Q}var q3=($,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]},B3=($,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 D2=($)=>{let H=$.split("/");if(H[0]==="")H.shift();return H},Q8=($)=>{let{groups:H,path:Q}=w3($),J=D2(Q);return z3(J,H)},w3=($)=>{let H=[];return $=$.replace(/\{[^}]+\}/g,(Q,J)=>{let X=`@${J}`;return H.push([X,Q]),X}),{groups:H,path:$}},z3=($,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 $},A$={},J8=($,H)=>{if($==="*")return"*";let Q=$.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/);if(Q){let J=`${$}#${H}`;if(!A$[J])if(Q[2])A$[J]=H&&H[0]!==":"&&H[0]!=="*"?[J,Q[1],new RegExp(`^${Q[2]}(?=/${H})`)]:[$,Q[1],new RegExp(`^${Q[2]}$`)];else A$[J]=[$,Q[1],!0];return A$[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}})}},_3=($)=>U0($,decodeURI),V2=($)=>{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 _3(G.includes("%25")?G.replace(/%25/g,"%2525"):G)}else if(X===63)break}return H.slice(Q,J)};var X8=($)=>{let H=V2($);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}`}`},F$=($)=>{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)},N2=($)=>{if(!/[%+]/.test($))return $;if($.indexOf("+")!==-1)$=$.replace(/\+/g," ");return $.indexOf("%")!==-1?U0($,l0):$},Y8=($,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 N2($.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=N2(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=N2(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},G8=Y8,W8=($,H)=>{return Y8($,H,!0)},l0=decodeURIComponent;var q8=($)=>U0($,l0),R$=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)?q8(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)?q8(J):J}return $}#X($){return this.#$[1]?this.#$[1][$]:$}query($){return G8(this.url,$)}queries($){return W8(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 H8(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[$8](){return this.#$}get matchedRoutes(){return this.#$[0].map(([[,$]])=>$)}get routePath(){return this.#$[0].map(([[,$]])=>$)[this.routeIndex].path}};var B8={Stringify:1,BeforeStream:2,Stream:3},U3=($,H)=>{let Q=new String($);return Q.isEscaped=!0,Q.callbacks=H,Q};var R2=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)=>R2(q,H,!1,J,X))).then(()=>X[0]));if(Q)return U3(await G,Y);else return G};var N3="text/plain; charset=UTF-8",A2=($,H)=>{return{"Content-Type":$,...H}},w8=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 R$(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,A2(N3,Q))};json=($,H,Q)=>{return this.#G(JSON.stringify($),H,A2("application/json",Q))};html=($,H,Q)=>{let J=(X)=>this.#G(X,H,A2("text/html; charset=UTF-8",Q));return typeof $==="object"?R2($,B8.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",z8="all",_8=["get","post","put","delete","options","patch"],E$="Can not add a route since the matcher is already built.",M$=class extends Error{};var U8="__COMPOSED_HANDLER";var D3=($)=>{return $.text("404 Not Found",404)},N8=($,H)=>{if("getResponse"in $){let Q=$.getResponse();return H.newResponse(Q.body,Q)}return console.error($),H.text("Internal Server Error",500)},F2=class{get;post;put;delete;options;patch;all;on;use;router;getPath;_basePath="/";#H="/";routes=[];constructor($={}){[..._8,z8].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??V2:X8}#$(){let $=new F2({router:this.router,getPath:this.getPath});return $.errorHandler=this.errorHandler,$.#Q=this.#Q,$.routes=this.routes,$}#Q=D3;errorHandler=N8;route($,H){let Q=this.basePath($);return H.routes.map((J)=>{let X;if(H.errorHandler===N8)X=J.handler;else X=async(Y,G)=>(await U2([],H.errorHandler)(Y,()=>J.handler(Y,G))).res,X[U8]=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 w8($,{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=U2(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 j$="[^/]+",n0=".*",i0="(?:|/.*)",t1=Symbol(),V3=new Set(".\\+*[^]$()");function R3($,H){if($.length===1)return H.length===1?$<H?-1:1:-1;if(H.length===1)return 1;if($===n0||$===i0)return 1;else if(H===n0||H===i0)return-1;if($===j$)return 1;else if(H===j$)return-1;return $.length===H.length?$<H?-1:1:H.length-$.length}var O$=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?["","",n0]:["","",j$]:Y==="/*"?["","",i0]:Y.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/),q;if(W){let B=W[1],w=W[2]||j$;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!==n0&&z!==i0))throw t1;if(X)return;if(q=this.#Q[w]=new O$,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!==n0&&B!==i0))throw t1;if(X)return;q=this.#Q[Y]=new O$}q.insert(G,H,Q,J,X)}buildRegExpStr(){let H=Object.keys(this.#Q).sort(R3).map((Q)=>{let J=this.#Q[Q];return(typeof J.#$==="number"?`(${Q})@${J.#$}`:V3.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 D8=class{#H={varIndex:0};#$=new O$;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 V8=[],A3=[/^$/,[],Object.create(null)],R8=Object.create(null);function A8($){return R8[$]??=new RegExp($==="*"?"":`^${$.replace(/\/\*$|([.\\+*[^\]$()])/g,(H,Q)=>Q?`\\${Q}`:"(?:|/.*)")}$`)}function F3(){R8=Object.create(null)}function E3($){let H=new D8,Q=[];if($.length===0)return A3;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)]),V8];else w++;let A;try{A=H.insert(D,w,N)}catch(R){throw R===t1?new M$(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(A8(Q).test(H))return[...$[Q]];return}var E2=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(E$);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=A8(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=F$(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){F3();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[[],V8];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 E3(H)}};var M2=class{name="SmartRouter";#H=[];#$=[];constructor($){this.#H=$.routers}add($,H,Q){if(!this.#$)throw Error(E$);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 M$)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 p0=Object.create(null),j2=class{#H;#$;#Q;#Y=0;#X=p0;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=Q8(H),Y=[];for(let G=0,W=X.length;G<W;G++){let q=X[G],B=X[G+1],w=J8(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 j2,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!==p0||J&&J!==p0)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=p0;let X=[this],Y=D2(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===p0?{}:{..._.#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],r=Y.slice(W).join("/");if(m instanceof RegExp){let v=m.exec(r);if(v){if(O[h]=v[0],Q.push(...this.#J(c,$,_.#X,O)),Object.keys(c.#$).length){c.#X=O;let e=v[0].match(/\//)?.length??0;(G[e]||=[]).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 O2=class{name="TrieRouter";#H;constructor(){this.#H=new j2}add($,H,Q){let J=F$(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 S2=class extends F2{constructor($={}){super($);this.router=$.router??new M2({routers:[new E2,new O2]})}};var F_=Y3(E8()),L2=Symbol("route:metadata"),f2=Symbol("controller:metadata"),M8=Symbol("parameter:metadata"),j8=Symbol("dependency:metadata"),C2=Symbol("websocket:metadata"),O8=Symbol("websocket:handler:metadata"),K2=Symbol("graphql:resolver"),o0=Symbol("graphql:field"),P2=Symbol("auth:metadata"),T2=Symbol("oauth:metadata"),b2=Symbol("roles:metadata"),I2=Symbol("permissions:metadata"),Z2=Symbol("minimum-role:metadata"),h2=Symbol("resource-permission:metadata"),x2=Symbol("session:metadata"),k2=Symbol("csrf:metadata");class u1{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(L2,X,$,H)}static defineParameter($,H,Q,J){let X=this.getParameterMetadata($,H)||[];X[Q]=J,Reflect.defineMetadata(M8,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(j8,X,$,H);let Y=this.getRouteMetadata($,H);this.defineRoute($,H,{...Y,dependencies:X})}static defineController($,H){Reflect.defineMetadata(f2,H,$)}static getRouteMetadata($,H){return Reflect.getMetadata(L2,$,H)}static getParameterMetadata($,H){return Reflect.getMetadata(M8,$,H)}static getDependencyMetadata($,H){return Reflect.getMetadata(j8,$,H)}static getControllerMetadata($){return Reflect.getMetadata(f2,$)}static hasControllerMetadata($){return Reflect.hasMetadata(f2,$)}static hasRouteMetadata($,H){return Reflect.hasMetadata(L2,$,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(C2,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(O8,Q,$,H)}static getWebSocketMetadata($){return Reflect.getMetadata(C2,$)}static getWebSocketHandlerMetadata($,H){return Reflect.getMetadata(O8,$,H)}static hasWebSocketMetadata($){return Reflect.hasMetadata(C2,$)}static defineGraphQLResolver($,H){Reflect.defineMetadata(K2,H,$)}static defineGraphQLField($,H,Q){Reflect.defineMetadata(o0,Q,$,H);let J=this.getGraphQLFieldsMetadata($.constructor)||[];J.push(Q),Reflect.defineMetadata(o0,J,$.constructor)}static getGraphQLResolverMetadata($){return Reflect.getMetadata(K2,$)}static getGraphQLFieldsMetadata($){return Reflect.getMetadata(o0,$)||[]}static getGraphQLFieldMetadata($,H){return Reflect.getMetadata(o0,$,H)}static hasGraphQLResolverMetadata($){return Reflect.hasMetadata(K2,$)}static hasGraphQLFieldMetadata($,H){return Reflect.hasMetadata(o0,$,H)}static defineAuth($,H,Q){Reflect.defineMetadata(P2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,auth:Q})}static getAuthMetadata($,H){return Reflect.getMetadata(P2,$,H)}static hasAuthMetadata($,H){return Reflect.hasMetadata(P2,$,H)}static defineOAuth($,H,Q){Reflect.defineMetadata(T2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,oauth:Q})}static getOAuthMetadata($,H){return Reflect.getMetadata(T2,$,H)}static hasOAuthMetadata($,H){return Reflect.hasMetadata(T2,$,H)}static defineRoles($,H,Q){Reflect.defineMetadata(b2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,roles:Q})}static definePermissions($,H,Q){Reflect.defineMetadata(I2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,permissions:Q})}static defineMinimumRole($,H,Q){Reflect.defineMetadata(Z2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,minimumRole:Q})}static getRolesMetadata($,H){return Reflect.getMetadata(b2,$,H)}static getPermissionsMetadata($,H){return Reflect.getMetadata(I2,$,H)}static getMinimumRoleMetadata($,H){return Reflect.getMetadata(Z2,$,H)}static hasRolesMetadata($,H){return Reflect.hasMetadata(b2,$,H)}static hasPermissionsMetadata($,H){return Reflect.hasMetadata(I2,$,H)}static hasMinimumRoleMetadata($,H){return Reflect.hasMetadata(Z2,$,H)}static defineResourcePermission($,H,Q){Reflect.defineMetadata(h2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,resourcePermission:Q})}static getResourcePermissionMetadata($,H){return Reflect.getMetadata(h2,$,H)}static hasResourcePermissionMetadata($,H){return Reflect.hasMetadata(h2,$,H)}static defineSession($,H,Q){Reflect.defineMetadata(x2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,session:Q})}static defineCSRF($,H,Q){Reflect.defineMetadata(k2,Q,$,H);let J=this.getRouteMetadata($,H);this.defineRoute($,H,{...J,csrf:Q})}static getSessionMetadata($,H){return Reflect.getMetadata(x2,$,H)}static getCSRFMetadata($,H){return Reflect.getMetadata(k2,$,H)}static hasSessionMetadata($,H){return Reflect.hasMetadata(x2,$,H)}static hasCSRFMetadata($,H){return Reflect.hasMetadata(k2,$,H)}}class v2{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 M3=/^[\w!#$%&'*.^`|~+-]+$/,j3=/^[ !#-:<-[\]-~]*$/,g2=($,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||!M3.test(G))continue;let W=X.substring(Y+1).trim();if(W.startsWith('"')&&W.endsWith('"'))W=W.slice(1,-1);if(j3.test(W)){if(J[G]=W.indexOf("%")!==-1?U0(W,l0):W,H)break}}return J};var O3=($,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},S$=($,H,Q)=>{return H=encodeURIComponent(H),O3($,H,Q)};var S8=($,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 g2(J,Y)[Y]}if(!J)return{};return g2(J)};var S3=($,H,Q)=>{let J;if(Q?.prefix==="secure")J=S$("__Secure-"+$,H,{path:"/",...Q,secure:!0});else if(Q?.prefix==="host")J=S$("__Host-"+$,H,{...Q,path:"/",secure:!0,domain:void 0});else J=S$($,H,{path:"/",...Q});return J},C_=($,H,Q,J)=>{let X=S3(H,Q,J);$.header("Set-Cookie",X,{append:!0})};class L8{static json($,H=200,Q){return new y2($,H,Q)}static html($,H=200){return new u2($,H)}static file($,H){return new m2($,H)}static stream($,H){return new d2($,H)}static redirect($,H=302){return new c2($,H)}}class y2{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 u2{content;status;constructor($,H=200){this.content=$;this.status=H}toHonoResponse($){return $.html(this.content,this.status)}}class c2{url;status;constructor($,H=302){this.url=$;this.status=H}toHonoResponse($){return $.redirect(this.url,this.status)}}class m2{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 d2{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 l2{static serialize($,H){if(H===null||H===void 0)return $.body(null,204);if(H instanceof L8)return H;if(H instanceof y2)return H.toHonoResponse($);if(H instanceof u2)return H.toHonoResponse($);if(H instanceof m2)return H.toHonoResponse($);if(H instanceof d2)return H.toHonoResponse($);if(H instanceof c2)return H.toHonoResponse($);if(H&&typeof H.toHonoResponse==="function")return H.toHonoResponse($);return $.json(H)}}class n2{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))}}s0();class e2{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=n2.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(() => (a2(),r2)),{parseTTL:z}=await Promise.resolve().then(() => o2);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(() => o2),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(() => (a2(),r2));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 l2.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 i2(`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=S8($,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(() => (b8(),T8));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(() => t2);X=W($);break;case"abort-signal":let{getAbortSignal:q}=await Promise.resolve().then(() => t2);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 n8={};y1(n8,{void:()=>SQ,util:()=>s,unknown:()=>jQ,union:()=>KQ,undefined:()=>FQ,tuple:()=>bQ,transformer:()=>cQ,symbol:()=>AQ,string:()=>m8,strictObject:()=>CQ,setErrorMap:()=>d3,set:()=>hQ,record:()=>IQ,quotelessJson:()=>c3,promise:()=>uQ,preprocess:()=>lQ,pipeline:()=>nQ,ostring:()=>iQ,optional:()=>mQ,onumber:()=>pQ,oboolean:()=>oQ,objectUtil:()=>$4,object:()=>fQ,number:()=>d8,nullable:()=>dQ,null:()=>EQ,never:()=>OQ,nativeEnum:()=>yQ,nan:()=>DQ,map:()=>ZQ,makeIssue:()=>a0,literal:()=>vQ,lazy:()=>kQ,late:()=>UQ,isValid:()=>m1,isDirty:()=>f$,isAsync:()=>V0,isAborted:()=>L$,intersection:()=>TQ,instanceof:()=>NQ,getParsedType:()=>C1,getErrorMap:()=>D0,function:()=>xQ,enum:()=>gQ,effect:()=>cQ,discriminatedUnion:()=>PQ,defaultErrorMap:()=>x1,datetimeRegex:()=>y8,date:()=>RQ,custom:()=>c8,coerce:()=>sQ,boolean:()=>l8,bigint:()=>VQ,array:()=>LQ,any:()=>MQ,addIssueToContext:()=>K,ZodVoid:()=>e0,ZodUnknown:()=>d1,ZodUnion:()=>j0,ZodUndefined:()=>E0,ZodType:()=>p,ZodTuple:()=>P1,ZodTransformer:()=>j1,ZodSymbol:()=>t0,ZodString:()=>A1,ZodSet:()=>J0,ZodSchema:()=>p,ZodRecord:()=>$$,ZodReadonly:()=>P0,ZodPromise:()=>X0,ZodPipeline:()=>J$,ZodParsedType:()=>L,ZodOptional:()=>E1,ZodObject:()=>Q1,ZodNumber:()=>l1,ZodNullable:()=>v1,ZodNull:()=>M0,ZodNever:()=>K1,ZodNativeEnum:()=>f0,ZodNaN:()=>Q$,ZodMap:()=>H$,ZodLiteral:()=>L0,ZodLazy:()=>S0,ZodIssueCode:()=>j,ZodIntersection:()=>O0,ZodFunction:()=>A0,ZodFirstPartyTypeKind:()=>u,ZodError:()=>z1,ZodEnum:()=>i1,ZodEffects:()=>j1,ZodDiscriminatedUnion:()=>C$,ZodDefault:()=>C0,ZodDate:()=>H0,ZodCatch:()=>K0,ZodBranded:()=>K$,ZodBoolean:()=>F0,ZodBigInt:()=>n1,ZodArray:()=>F1,ZodAny:()=>Q0,Schema:()=>p,ParseStatus:()=>_1,OK:()=>U1,NEVER:()=>rQ,INVALID:()=>y,EMPTY_PATH:()=>l3,DIRTY:()=>$0,BRAND:()=>_Q});var s;(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}})(s||(s={}));var $4;(function($){$.mergeShapes=(H,Q)=>{return{...H,...Q}}})($4||($4={}));var L=s.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=s.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"]),c3=($)=>{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,s.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 m3=($,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,s.jsonStringifyReplacer)}`;break;case j.unrecognized_keys:Q=`Unrecognized key(s) in object: ${s.joinValues($.keys,", ")}`;break;case j.invalid_union:Q="Invalid input";break;case j.invalid_union_discriminator:Q=`Invalid discriminator value. Expected ${s.joinValues($.options)}`;break;case j.invalid_enum_value:Q=`Invalid enum value. Expected ${s.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 s.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,s.assertNever($)}return{message:Q}},x1=m3;var h8=x1;function d3($){h8=$}function D0(){return h8}var a0=($)=>{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}},l3=[];function K($,H){let Q=D0(),J=a0({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:$}),L$=($)=>$.status==="aborted",f$=($)=>$.status==="dirty",m1=($)=>$.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 x8=($,H)=>{if(m1(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 n($){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 p{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 x8(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 m1(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)=>m1(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 x8(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({...n(this._def),schema:this,typeName:u.ZodEffects,effect:{type:"transform",transform:$}})}default($){let H=typeof $==="function"?$:()=>$;return new C0({...n(this._def),innerType:this,defaultValue:H,typeName:u.ZodDefault})}brand(){return new K$({typeName:u.ZodBranded,type:this,...n(this._def)})}catch($){let H=typeof $==="function"?$:()=>$;return new K0({...n(this._def),innerType:this,catchValue:H,typeName:u.ZodCatch})}describe($){return new this.constructor({...this._def,description:$})}pipe($){return J$.create(this,$)}readonly(){return P0.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var n3=/^c[^\s-]{8,}$/i,i3=/^[0-9a-z]+$/,p3=/^[0-9A-HJKMNP-TV-Z]{26}$/i,o3=/^[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,s3=/^[a-z0-9_-]{21}$/i,r3=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,a3=/^[-+]?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)?)??$/,t3=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,e3="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",H4,$Q=/^(?:(?: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])$/,HQ=/^(?:(?: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])$/,QQ=/^(([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]))$/,JQ=/^(([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])$/,XQ=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,YQ=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,v8="((\\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])))",GQ=new RegExp(`^${v8}$`);function g8($){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 WQ($){return new RegExp(`^${g8($)}$`)}function y8($){let H=`${v8}T${g8($)}`,Q=[];if(Q.push($.local?"Z?":"Z"),$.offset)Q.push("([+-]\\d{2}:?\\d{2})");return H=`${H}(${Q.join("|")})`,new RegExp(`^${H}$`)}function qQ($,H){if((H==="v4"||!H)&&$Q.test($))return!0;if((H==="v6"||!H)&&QQ.test($))return!0;return!1}function BQ($,H){if(!r3.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)&&HQ.test($))return!0;if((H==="v6"||!H)&&JQ.test($))return!0;return!1}class A1 extends p{_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(!t3.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(!H4)H4=new RegExp(e3,"u");if(!H4.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(!o3.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(!s3.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(!n3.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(!i3.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(!p3.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(!y8(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(!GQ.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(!WQ(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(!a3.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(!qQ($.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(!BQ($.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(!XQ.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(!YQ.test($.data))J=this._getOrReturnCtx($,J),K(J,{validation:"base64url",code:j.invalid_string,message:X.message}),Q.dirty()}else s.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,...n($)})};function zQ($,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 l1 extends p{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(!s.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(zQ($.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 s.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 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,$]})}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"&&s.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($)}}l1.create=($)=>{return new l1({checks:[],typeName:u.ZodNumber,coerce:$?.coerce||!1,...n($)})};class n1 extends p{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 s.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 n1({...this._def,checks:[...this._def.checks,{kind:$,value:H,inclusive:Q,message:x.toString(J)}]})}_addCheck($){return new n1({...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 $}}n1.create=($)=>{return new n1({checks:[],typeName:u.ZodBigInt,coerce:$?.coerce??!1,...n($)})};class F0 extends p{_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,...n($)})};class H0 extends p{_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 s.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,...n($)})};class t0 extends p{_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)}}t0.create=($)=>{return new t0({typeName:u.ZodSymbol,...n($)})};class E0 extends p{_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,...n($)})};class M0 extends p{_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,...n($)})};class Q0 extends p{constructor(){super(...arguments);this._any=!0}_parse($){return U1($.data)}}Q0.create=($)=>{return new Q0({typeName:u.ZodAny,...n($)})};class d1 extends p{constructor(){super(...arguments);this._unknown=!0}_parse($){return U1($.data)}}d1.create=($)=>{return new d1({typeName:u.ZodUnknown,...n($)})};class K1 extends p{_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,...n($)})};class e0 extends p{_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)}}e0.create=($)=>{return new e0({typeName:u.ZodVoid,...n($)})};class F1 extends p{_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,...n(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 p{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=s.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 s.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 s.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 s.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 s.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 u8(s.objectKeys(this.shape))}}Q1.create=($,H)=>{return new Q1({shape:()=>$,unknownKeys:"strip",catchall:K1.create(),typeName:u.ZodObject,...n(H)})};Q1.strictCreate=($,H)=>{return new Q1({shape:()=>$,unknownKeys:"strict",catchall:K1.create(),typeName:u.ZodObject,...n(H)})};Q1.lazycreate=($,H)=>{return new Q1({shape:$,unknownKeys:"strip",catchall:K1.create(),typeName:u.ZodObject,...n(H)})};class j0 extends p{_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,...n(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 i1)return $.options;else if($ instanceof f0)return s.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 K$)return k1($.unwrap());else if($ instanceof P0)return k1($.unwrap());else if($ instanceof K0)return k1($._def.innerType);else return[]};class C$ extends p{_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 C$({typeName:u.ZodDiscriminatedUnion,discriminator:$,options:H,optionsMap:J,...n(Q)})}}function Q4($,H){let Q=C1($),J=C1(H);if($===H)return{valid:!0,data:$};else if(Q===L.object&&J===L.object){let X=s.objectKeys(H),Y=s.objectKeys($).filter((W)=>X.indexOf(W)!==-1),G={...$,...H};for(let W of Y){let q=Q4($[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=Q4(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 p{_parse($){let{status:H,ctx:Q}=this._processInputParams($),J=(X,Y)=>{if(L$(X)||L$(Y))return y;let G=Q4(X.value,Y.value);if(!G.valid)return K(Q,{code:j.invalid_intersection_types}),y;if(f$(X)||f$(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,...n(Q)})};class P1 extends p{_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,...n(H)})};class $$ extends p{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 p)return new $$({keyType:$,valueType:H,typeName:u.ZodRecord,...n(Q)});return new $$({keyType:A1.create(),valueType:$,typeName:u.ZodRecord,...n(H)})}}class H$ extends p{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}}}}H$.create=($,H,Q)=>{return new H$({valueType:H,keyType:$,typeName:u.ZodMap,...n(Q)})};class J0 extends p{_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,...n(H)})};class A0 extends p{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 a0({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 a0({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(d1.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(d1.create()),returns:H||d1.create(),typeName:u.ZodFunction,...n(Q)})}}class S0 extends p{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,...n(H)})};class L0 extends p{_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,...n(H)})};function u8($,H){return new i1({values:$,typeName:u.ZodEnum,...n(H)})}class i1 extends p{_parse($){if(typeof $.data!=="string"){let H=this._getOrReturnCtx($),Q=this._def.values;return K(H,{expected:s.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 i1.create($,{...this._def,...H})}exclude($,H=this._def){return i1.create(this.options.filter((Q)=>!$.includes(Q)),{...this._def,...H})}}i1.create=u8;class f0 extends p{_parse($){let H=s.getValidEnumValues(this._def.values),Q=this._getOrReturnCtx($);if(Q.parsedType!==L.string&&Q.parsedType!==L.number){let J=s.objectValues(H);return K(Q,{expected:s.joinValues(J),received:Q.parsedType,code:j.invalid_type}),y}if(!this._cache)this._cache=new Set(s.getValidEnumValues(this._def.values));if(!this._cache.has($.data)){let J=s.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,...n(H)})};class X0 extends p{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,...n(H)})};class j1 extends p{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(!m1(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(!m1(Y))return y;return Promise.resolve(J.transform(Y.value,X)).then((G)=>({status:H.value,value:G}))});s.assertNever(J)}}j1.create=($,H,Q)=>{return new j1({schema:$,typeName:u.ZodEffects,effect:H,...n(Q)})};j1.createWithPreprocess=($,H,Q)=>{return new j1({schema:H,effect:{type:"preprocess",transform:$},typeName:u.ZodEffects,...n(Q)})};class E1 extends p{_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,...n(H)})};class v1 extends p{_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,...n(H)})};class C0 extends p{_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,...n(H)})};class K0 extends p{_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,...n(H)})};class Q$ extends p{_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}}}Q$.create=($)=>{return new Q$({typeName:u.ZodNaN,...n($)})};var _Q=Symbol("zod_brand");class K$ extends p{_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 J$ extends p{_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 J$({in:$,out:H,typeName:u.ZodPipeline})}}class P0 extends p{_parse($){let H=this._def.innerType._parse($),Q=(J)=>{if(m1(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,...n(H)})};function k8($,H){let Q=typeof $==="function"?$(H):typeof $==="string"?{message:$}:$;return typeof Q==="string"?{message:Q}:Q}function c8($,H={},Q){if($)return Q0.create().superRefine((J,X)=>{let Y=$(J);if(Y instanceof Promise)return Y.then((G)=>{if(!G){let W=k8(H,J),q=W.fatal??Q??!0;X.addIssue({code:"custom",...W,fatal:q})}});if(!Y){let G=k8(H,J),W=G.fatal??Q??!0;X.addIssue({code:"custom",...G,fatal:W})}return});return Q0.create()}var UQ={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 NQ=($,H={message:`Input not instance of ${$.name}`})=>c8((Q)=>Q instanceof $,H),m8=A1.create,d8=l1.create,DQ=Q$.create,VQ=n1.create,l8=F0.create,RQ=H0.create,AQ=t0.create,FQ=E0.create,EQ=M0.create,MQ=Q0.create,jQ=d1.create,OQ=K1.create,SQ=e0.create,LQ=F1.create,fQ=Q1.create,CQ=Q1.strictCreate,KQ=j0.create,PQ=C$.create,TQ=O0.create,bQ=P1.create,IQ=$$.create,ZQ=H$.create,hQ=J0.create,xQ=A0.create,kQ=S0.create,vQ=L0.create,gQ=i1.create,yQ=f0.create,uQ=X0.create,cQ=j1.create,mQ=E1.create,dQ=v1.create,lQ=j1.createWithPreprocess,nQ=J$.create,iQ=()=>m8().optional(),pQ=()=>d8().optional(),oQ=()=>l8().optional(),sQ={string:($)=>A1.create({...$,coerce:!0}),number:($)=>l1.create({...$,coerce:!0}),boolean:($)=>F0.create({...$,coerce:!0}),bigint:($)=>n1.create({...$,coerce:!0}),date:($)=>H0.create({...$,coerce:!0})};var rQ=y;s0();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 J4{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()}}s0();class X4{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(`
41
+ `).map((J)=>J.trim())}else Q.message="An unexpected error occurred";return H.json(Q,500)}isDevelopmentMode(){return this.isDevelopment}setDevelopmentMode($){this.isDevelopment=$}}class Y4{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 i8($){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 p8($){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 o8($){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 Z9,b5;function Yz(){if(!Z9)Z9=n6(),b5=T5();return{pino:Z9,pinoPretty:b5}}class I5{logger;constructor($){let{pino:H}=Yz(),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 h9(this.logger.child($))}}class h9{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 h9(this.logger.child($))}}function Z5($){return new I5($)}var U$=null;function gN($){return U$=Z5($),U$}function x9(){if(!U$)U$=Z5({pretty:!0,level:"debug"});return U$}function k9($){return x9().child($)}function cN(){return async($,H)=>{let Q=k9({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 mN(){return async($,H)=>{try{await H()}catch(Q){throw k9({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 g9{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 S2,this.metadata=new u1,this.container=new v2,this.validator=new J4,this.errorHandler=new X4,this.pluginManager=new Y4,this.compiler=new e2(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=u1.getControllerMetadata($);if(H)this.metadata.registerController($,H);let Q=u1.getRouteMethods($);for(let J of Q){let X=u1.getRouteMetadata($.prototype,J),Y=u1.getParameterMetadata($.prototype,J),G=u1.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 g5(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:v5,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=i8($);this.use(H)}useRateLimit($){let H=p8($);this.use(H)}useCompression($){let H=o8($);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=x9().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}=V$(v9);return new H(this.hono)}case"express":{let{ExpressAdapter:H}=V$(k5);return new H(this)}case"native":{let{HonoAdapter:H}=V$(v9);return new H(this.hono)}default:throw Error(`Unknown adapter type: ${$}. Supported adapters: 'hono', 'express', 'native'`)}}}class v5{}class g5{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 y9($){let H={docs:!1,cors:!1,...$};return new g9(H)}function y5($,H,Q,J){let X=$.getContainer(),Y=typeof Q==="function"?Q:()=>Q;X.register(H,{scope:J?.scope||"singleton",factory:Y})}function u9($){return new d0($)}async function u5($,H){let Q=y9(H);await $(Q),await Q.compile();let J=u9(Q);return{app:Q,client:J}}function c5($){$.getContainer().clear()}
16
42
 
17
- //# debugId=288216597F43BB5F64756E2164756E21
43
+ //# debugId=1BA36314AB5C20A964756E2164756E21