@geekmidas/constructs 0.0.7 → 0.0.9

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 (284) hide show
  1. package/dist/{AWSLambdaFunction-qA5LqPsv.cjs → AWSLambdaFunction-CMLZ3GaC.cjs} +3 -3
  2. package/dist/{AWSLambdaFunction-qA5LqPsv.cjs.map → AWSLambdaFunction-CMLZ3GaC.cjs.map} +1 -1
  3. package/dist/{AWSLambdaFunction-CANc3Qo2.d.mts → AWSLambdaFunction-D5V3YVqv.d.cts} +5 -5
  4. package/dist/{AWSLambdaFunction-CwagvPG3.d.cts → AWSLambdaFunction-_J0MjixY.d.mts} +5 -5
  5. package/dist/{AWSLambdaFunction-DWIZYsCy.mjs → AWSLambdaFunction-egVcP17n.mjs} +3 -3
  6. package/dist/{AWSLambdaFunction-DWIZYsCy.mjs.map → AWSLambdaFunction-egVcP17n.mjs.map} +1 -1
  7. package/dist/{AWSLambdaSubscriberAdaptor-QKVxR6qh.d.cts → AWSLambdaSubscriberAdaptor-DjG1ME3P.d.mts} +4 -4
  8. package/dist/{AWSLambdaSubscriberAdaptor-C6JYIZxn.d.mts → AWSLambdaSubscriberAdaptor-J_pSz6pu.d.cts} +4 -4
  9. package/dist/{AmazonApiGatewayEndpointAdaptor-BFhJ2Rpz.d.cts → AmazonApiGatewayEndpointAdaptor-BnNd8tCz.d.cts} +2 -2
  10. package/dist/{AmazonApiGatewayEndpointAdaptor-BrB3RfbI.d.mts → AmazonApiGatewayEndpointAdaptor-C-17dUai.d.mts} +2 -2
  11. package/dist/{AmazonApiGatewayEndpointAdaptor-Bmz6Cy1e.mjs → AmazonApiGatewayEndpointAdaptor-CQLjGSJe.mjs} +2 -2
  12. package/dist/{AmazonApiGatewayEndpointAdaptor-Bmz6Cy1e.mjs.map → AmazonApiGatewayEndpointAdaptor-CQLjGSJe.mjs.map} +1 -1
  13. package/dist/{AmazonApiGatewayEndpointAdaptor-B8mozTcG.cjs → AmazonApiGatewayEndpointAdaptor-DPaV_5wG.cjs} +2 -2
  14. package/dist/{AmazonApiGatewayEndpointAdaptor-B8mozTcG.cjs.map → AmazonApiGatewayEndpointAdaptor-DPaV_5wG.cjs.map} +1 -1
  15. package/dist/{AmazonApiGatewayV1EndpointAdaptor-Bd-o8ese.d.cts → AmazonApiGatewayV1EndpointAdaptor-BC-a2tt3.d.cts} +3 -3
  16. package/dist/{AmazonApiGatewayV1EndpointAdaptor-BtNXt0-4.d.mts → AmazonApiGatewayV1EndpointAdaptor-Cjud-a6p.d.mts} +3 -3
  17. package/dist/{AmazonApiGatewayV1EndpointAdaptor-24g3dLn5.mjs → AmazonApiGatewayV1EndpointAdaptor-DEBcyZe0.mjs} +2 -2
  18. package/dist/{AmazonApiGatewayV1EndpointAdaptor-24g3dLn5.mjs.map → AmazonApiGatewayV1EndpointAdaptor-DEBcyZe0.mjs.map} +1 -1
  19. package/dist/{AmazonApiGatewayV1EndpointAdaptor-D4eZ-fx5.cjs → AmazonApiGatewayV1EndpointAdaptor-DkFcSRwT.cjs} +2 -2
  20. package/dist/{AmazonApiGatewayV1EndpointAdaptor-D4eZ-fx5.cjs.map → AmazonApiGatewayV1EndpointAdaptor-DkFcSRwT.cjs.map} +1 -1
  21. package/dist/{AmazonApiGatewayV2EndpointAdaptor-Cc40RThv.mjs → AmazonApiGatewayV2EndpointAdaptor-BB7t7LE2.mjs} +2 -2
  22. package/dist/{AmazonApiGatewayV2EndpointAdaptor-Cc40RThv.mjs.map → AmazonApiGatewayV2EndpointAdaptor-BB7t7LE2.mjs.map} +1 -1
  23. package/dist/{AmazonApiGatewayV2EndpointAdaptor-J6tACl-N.cjs → AmazonApiGatewayV2EndpointAdaptor-BQ21ry6s.cjs} +2 -2
  24. package/dist/{AmazonApiGatewayV2EndpointAdaptor-J6tACl-N.cjs.map → AmazonApiGatewayV2EndpointAdaptor-BQ21ry6s.cjs.map} +1 -1
  25. package/dist/{AmazonApiGatewayV2EndpointAdaptor-DAJdtgek.d.mts → AmazonApiGatewayV2EndpointAdaptor-C31Xcwmc.d.mts} +3 -3
  26. package/dist/{AmazonApiGatewayV2EndpointAdaptor-DX-Uci5w.d.cts → AmazonApiGatewayV2EndpointAdaptor-zNFUPxSY.d.cts} +3 -3
  27. package/dist/Authorizer-Bbk9ziuG.d.mts +29 -0
  28. package/dist/Authorizer-iXsSB600.d.cts +29 -0
  29. package/dist/{BaseFunctionBuilder-DtO4Nwxm.cjs → BaseFunctionBuilder-B-kdtkzI.cjs} +2 -2
  30. package/dist/{BaseFunctionBuilder-DtO4Nwxm.cjs.map → BaseFunctionBuilder-B-kdtkzI.cjs.map} +1 -1
  31. package/dist/{BaseFunctionBuilder-5QCHkchp.d.cts → BaseFunctionBuilder-C4ZJPkIZ.d.cts} +2 -2
  32. package/dist/{BaseFunctionBuilder-Dda7AiID.d.mts → BaseFunctionBuilder-CxBX0arJ.d.mts} +2 -2
  33. package/dist/{BaseFunctionBuilder-BPE9JBbT.mjs → BaseFunctionBuilder-DOhEn5Ce.mjs} +2 -2
  34. package/dist/{BaseFunctionBuilder-BPE9JBbT.mjs.map → BaseFunctionBuilder-DOhEn5Ce.mjs.map} +1 -1
  35. package/dist/{Construct-BbKCIPQm.mjs → Construct-B-O9OBS1.mjs} +4 -2
  36. package/dist/Construct-B-O9OBS1.mjs.map +1 -0
  37. package/dist/{Construct-BSEs6uwW.cjs → Construct-BtfN2fcm.cjs} +4 -2
  38. package/dist/Construct-BtfN2fcm.cjs.map +1 -0
  39. package/dist/{Construct-Bm-PSO2V.d.cts → Construct-ci5u8Xnu.d.cts} +4 -2
  40. package/dist/{Construct-DdyYENBD.d.mts → Construct-zhmcmIdY.d.mts} +4 -2
  41. package/dist/Construct.cjs +1 -1
  42. package/dist/Construct.d.cts +1 -1
  43. package/dist/Construct.d.mts +1 -1
  44. package/dist/Construct.mjs +1 -1
  45. package/dist/{Cron-BxMXmn4t.d.cts → Cron-ByNYsQDH.d.mts} +4 -4
  46. package/dist/{Cron-D6hnZLk7.mjs → Cron-D8DPUXBd.mjs} +5 -5
  47. package/dist/Cron-D8DPUXBd.mjs.map +1 -0
  48. package/dist/{Cron-NDBlJhb3.d.mts → Cron-DkPL-Fms.d.cts} +4 -4
  49. package/dist/{Cron-CmZ6esMM.cjs → Cron-sOrsPuQj.cjs} +5 -5
  50. package/dist/Cron-sOrsPuQj.cjs.map +1 -0
  51. package/dist/{CronBuilder-C6K5AbIO.d.cts → CronBuilder-BknVTWLE.d.mts} +6 -5
  52. package/dist/{CronBuilder-s5x8V8hH.d.mts → CronBuilder-BqTTozUi.d.cts} +6 -5
  53. package/dist/{CronBuilder-Dfv5JguE.mjs → CronBuilder-ChyrDobL.mjs} +10 -5
  54. package/dist/CronBuilder-ChyrDobL.mjs.map +1 -0
  55. package/dist/{CronBuilder-Di7QK8Rt.cjs → CronBuilder-Kvz1GiUp.cjs} +10 -5
  56. package/dist/CronBuilder-Kvz1GiUp.cjs.map +1 -0
  57. package/dist/{Endpoint-COGAflGh.cjs → Endpoint-Bghj0fiL.cjs} +21 -12
  58. package/dist/Endpoint-Bghj0fiL.cjs.map +1 -0
  59. package/dist/{Endpoint-C7jPJzAH.d.mts → Endpoint-C16whGI-.d.mts} +45 -13
  60. package/dist/{Endpoint-DLLZvqoh.mjs → Endpoint-DCJz2VQ_.mjs} +21 -12
  61. package/dist/Endpoint-DCJz2VQ_.mjs.map +1 -0
  62. package/dist/{Endpoint-XUMNAXYy.d.cts → Endpoint-zHPjZ35J.d.cts} +45 -13
  63. package/dist/{EndpointBuilder-t6fVEKBH.d.cts → EndpointBuilder-B5l7zQU1.d.cts} +18 -12
  64. package/dist/{EndpointBuilder-oXO_ka1-.mjs → EndpointBuilder-B6xIAruu.mjs} +28 -5
  65. package/dist/EndpointBuilder-B6xIAruu.mjs.map +1 -0
  66. package/dist/{EndpointBuilder-CFtWQhcv.d.mts → EndpointBuilder-BzqR0xvt.d.mts} +18 -12
  67. package/dist/{EndpointBuilder-FJktpPOu.cjs → EndpointBuilder-i7-4ieP_.cjs} +28 -5
  68. package/dist/EndpointBuilder-i7-4ieP_.cjs.map +1 -0
  69. package/dist/{EndpointFactory-Kk1tpifs.cjs → EndpointFactory-CYTBPu_G.cjs} +41 -10
  70. package/dist/EndpointFactory-CYTBPu_G.cjs.map +1 -0
  71. package/dist/{EndpointFactory-eG8bDhOh.mjs → EndpointFactory-CYuT-nt-.mjs} +41 -10
  72. package/dist/EndpointFactory-CYuT-nt-.mjs.map +1 -0
  73. package/dist/{EndpointFactory-DBRGrXAy.d.mts → EndpointFactory-KkyIOE62.d.cts} +29 -21
  74. package/dist/{EndpointFactory-DInjHvFR.d.cts → EndpointFactory-VnSAdwdv.d.mts} +29 -21
  75. package/dist/{Function-CbO2NZx-.cjs → Function-BCEAZFyL.cjs} +4 -5
  76. package/dist/Function-BCEAZFyL.cjs.map +1 -0
  77. package/dist/{Function-BP58p9Mp.d.cts → Function-BbLYIKLL.d.cts} +3 -4
  78. package/dist/{Function-C5mW-38v.mjs → Function-CmfMIDoS.mjs} +4 -5
  79. package/dist/Function-CmfMIDoS.mjs.map +1 -0
  80. package/dist/{Function-C98H68DW.d.mts → Function-DFRZZCC-.d.mts} +3 -4
  81. package/dist/{FunctionBuilder-DuOeWCAl.cjs → FunctionBuilder-BqivB_cc.cjs} +11 -5
  82. package/dist/FunctionBuilder-BqivB_cc.cjs.map +1 -0
  83. package/dist/{FunctionBuilder-BS1KgxA_.d.cts → FunctionBuilder-DdGjpiFT.d.cts} +6 -4
  84. package/dist/{FunctionBuilder-DBwR7jg7.d.mts → FunctionBuilder-DuktGyZc.d.mts} +6 -4
  85. package/dist/{FunctionBuilder-CosgPmMl.mjs → FunctionBuilder-QvqvEyFa.mjs} +11 -5
  86. package/dist/FunctionBuilder-QvqvEyFa.mjs.map +1 -0
  87. package/dist/{FunctionExecutionWrapper-B0V7V8YS.d.mts → FunctionExecutionWrapper-CAHR74yI.d.mts} +2 -2
  88. package/dist/{FunctionExecutionWrapper-Bx-Dl-2a.d.cts → FunctionExecutionWrapper-CRYi047B.d.cts} +2 -2
  89. package/dist/{FunctionExecutionWrapper-XGrSAAPD.mjs → FunctionExecutionWrapper-JsZIHhcl.mjs} +2 -2
  90. package/dist/{FunctionExecutionWrapper-XGrSAAPD.mjs.map → FunctionExecutionWrapper-JsZIHhcl.mjs.map} +1 -1
  91. package/dist/{FunctionExecutionWrapper-CElXEjPe.cjs → FunctionExecutionWrapper-TJxf9p4v.cjs} +2 -2
  92. package/dist/{FunctionExecutionWrapper-CElXEjPe.cjs.map → FunctionExecutionWrapper-TJxf9p4v.cjs.map} +1 -1
  93. package/dist/{HonoEndpointAdaptor-BlT1rWHV.mjs → HonoEndpointAdaptor-8eYrSFRn.mjs} +33 -16
  94. package/dist/HonoEndpointAdaptor-8eYrSFRn.mjs.map +1 -0
  95. package/dist/{HonoEndpointAdaptor-BrbM9vxd.d.cts → HonoEndpointAdaptor-DAsZoX2a.d.mts} +9 -8
  96. package/dist/{HonoEndpointAdaptor-CxcYKdzT.d.mts → HonoEndpointAdaptor-lYw6EN1Q.d.cts} +7 -6
  97. package/dist/{HonoEndpointAdaptor-Ds433Q8w.cjs → HonoEndpointAdaptor-vWSpXdNp.cjs} +20 -3
  98. package/dist/HonoEndpointAdaptor-vWSpXdNp.cjs.map +1 -0
  99. package/dist/{Subscriber-CSt7EOlT.cjs → Subscriber-BdiqU7da.cjs} +2 -2
  100. package/dist/{Subscriber-CSt7EOlT.cjs.map → Subscriber-BdiqU7da.cjs.map} +1 -1
  101. package/dist/{Subscriber-BoFm12i_.d.cts → Subscriber-Cy28j8MS.d.cts} +2 -2
  102. package/dist/{Subscriber-DkCDcTUL.mjs → Subscriber-bJSqvjdK.mjs} +2 -2
  103. package/dist/{Subscriber-DkCDcTUL.mjs.map → Subscriber-bJSqvjdK.mjs.map} +1 -1
  104. package/dist/{Subscriber-BxH6n8zQ.d.mts → Subscriber-g3IWM1_d.d.mts} +2 -2
  105. package/dist/{SubscriberBuilder-BpSDPzBz.d.mts → SubscriberBuilder-BzK8kc2a.d.cts} +3 -3
  106. package/dist/{SubscriberBuilder-Bn9Hyi28.mjs → SubscriberBuilder-CyCyjT6L.mjs} +2 -2
  107. package/dist/{SubscriberBuilder-Bn9Hyi28.mjs.map → SubscriberBuilder-CyCyjT6L.mjs.map} +1 -1
  108. package/dist/{SubscriberBuilder-RsiOmnwq.cjs → SubscriberBuilder-JTJcIZYy.cjs} +2 -2
  109. package/dist/{SubscriberBuilder-RsiOmnwq.cjs.map → SubscriberBuilder-JTJcIZYy.cjs.map} +1 -1
  110. package/dist/{SubscriberBuilder-DgljKtYu.d.cts → SubscriberBuilder-YjQ7qIpQ.d.mts} +3 -3
  111. package/dist/{TestEndpointAdaptor-Ct4I-gDo.mjs → TestEndpointAdaptor-BevV2LLd.mjs} +2 -2
  112. package/dist/{TestEndpointAdaptor-Ct4I-gDo.mjs.map → TestEndpointAdaptor-BevV2LLd.mjs.map} +1 -1
  113. package/dist/{TestEndpointAdaptor-vboVyJ0w.d.mts → TestEndpointAdaptor-DGWuai69.d.mts} +2 -2
  114. package/dist/{TestEndpointAdaptor-FJUob2W_.cjs → TestEndpointAdaptor-DupnzEnS.cjs} +2 -2
  115. package/dist/{TestEndpointAdaptor-FJUob2W_.cjs.map → TestEndpointAdaptor-DupnzEnS.cjs.map} +1 -1
  116. package/dist/{TestEndpointAdaptor-wwEaVHAt.d.cts → TestEndpointAdaptor-uXliWYjS.d.cts} +2 -2
  117. package/dist/adaptors/aws.cjs +11 -11
  118. package/dist/adaptors/aws.d.cts +14 -13
  119. package/dist/adaptors/aws.d.mts +14 -13
  120. package/dist/adaptors/aws.mjs +11 -11
  121. package/dist/adaptors/hono.cjs +8 -8
  122. package/dist/adaptors/hono.d.cts +8 -7
  123. package/dist/adaptors/hono.d.mts +8 -7
  124. package/dist/adaptors/hono.mjs +8 -8
  125. package/dist/adaptors/testing.cjs +7 -7
  126. package/dist/adaptors/testing.d.cts +8 -7
  127. package/dist/adaptors/testing.d.mts +8 -7
  128. package/dist/adaptors/testing.mjs +7 -7
  129. package/dist/crons/Cron.cjs +6 -6
  130. package/dist/crons/Cron.d.cts +6 -6
  131. package/dist/crons/Cron.d.mts +6 -6
  132. package/dist/crons/Cron.mjs +6 -6
  133. package/dist/crons/CronBuilder.cjs +7 -7
  134. package/dist/crons/CronBuilder.d.cts +7 -7
  135. package/dist/crons/CronBuilder.d.mts +7 -7
  136. package/dist/crons/CronBuilder.mjs +7 -7
  137. package/dist/crons/index.cjs +7 -7
  138. package/dist/crons/index.d.cts +11 -11
  139. package/dist/crons/index.d.mts +11 -11
  140. package/dist/crons/index.mjs +7 -7
  141. package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.cjs +7 -7
  142. package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.d.cts +8 -7
  143. package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.d.mts +8 -7
  144. package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.mjs +7 -7
  145. package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.cjs +8 -8
  146. package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.d.cts +9 -8
  147. package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.d.mts +9 -8
  148. package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.mjs +8 -8
  149. package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.cjs +8 -8
  150. package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.d.cts +9 -8
  151. package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.d.mts +9 -8
  152. package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.mjs +8 -8
  153. package/dist/endpoints/Authorizer.cjs +15 -0
  154. package/dist/endpoints/Authorizer.cjs.map +1 -0
  155. package/dist/endpoints/Authorizer.d.cts +2 -0
  156. package/dist/endpoints/Authorizer.d.mts +2 -0
  157. package/dist/endpoints/Authorizer.mjs +14 -0
  158. package/dist/endpoints/Authorizer.mjs.map +1 -0
  159. package/dist/endpoints/Endpoint.cjs +6 -6
  160. package/dist/endpoints/Endpoint.d.cts +7 -6
  161. package/dist/endpoints/Endpoint.d.mts +7 -6
  162. package/dist/endpoints/Endpoint.mjs +6 -6
  163. package/dist/endpoints/EndpointBuilder.cjs +7 -7
  164. package/dist/endpoints/EndpointBuilder.d.cts +8 -7
  165. package/dist/endpoints/EndpointBuilder.d.mts +8 -7
  166. package/dist/endpoints/EndpointBuilder.mjs +7 -7
  167. package/dist/endpoints/EndpointFactory.cjs +8 -8
  168. package/dist/endpoints/EndpointFactory.d.cts +9 -8
  169. package/dist/endpoints/EndpointFactory.d.mts +9 -8
  170. package/dist/endpoints/EndpointFactory.mjs +8 -8
  171. package/dist/endpoints/HonoEndpointAdaptor.cjs +8 -8
  172. package/dist/endpoints/HonoEndpointAdaptor.d.cts +8 -7
  173. package/dist/endpoints/HonoEndpointAdaptor.d.mts +8 -7
  174. package/dist/endpoints/HonoEndpointAdaptor.mjs +8 -8
  175. package/dist/endpoints/TestEndpointAdaptor.cjs +7 -7
  176. package/dist/endpoints/TestEndpointAdaptor.d.cts +8 -7
  177. package/dist/endpoints/TestEndpointAdaptor.d.mts +8 -7
  178. package/dist/endpoints/TestEndpointAdaptor.mjs +7 -7
  179. package/dist/endpoints/helpers.cjs +7 -7
  180. package/dist/endpoints/helpers.d.cts +7 -6
  181. package/dist/endpoints/helpers.d.mts +7 -6
  182. package/dist/endpoints/helpers.mjs +7 -7
  183. package/dist/endpoints/index.cjs +8 -8
  184. package/dist/endpoints/index.d.cts +11 -10
  185. package/dist/endpoints/index.d.mts +11 -10
  186. package/dist/endpoints/index.mjs +8 -8
  187. package/dist/functions/AWSLambdaFunction.cjs +6 -6
  188. package/dist/functions/AWSLambdaFunction.d.cts +4 -4
  189. package/dist/functions/AWSLambdaFunction.d.mts +4 -4
  190. package/dist/functions/AWSLambdaFunction.mjs +6 -6
  191. package/dist/functions/BaseFunctionBuilder.cjs +2 -2
  192. package/dist/functions/BaseFunctionBuilder.d.cts +2 -2
  193. package/dist/functions/BaseFunctionBuilder.d.mts +2 -2
  194. package/dist/functions/BaseFunctionBuilder.mjs +2 -2
  195. package/dist/functions/Function.cjs +2 -2
  196. package/dist/functions/Function.d.cts +2 -2
  197. package/dist/functions/Function.d.mts +2 -2
  198. package/dist/functions/Function.mjs +2 -2
  199. package/dist/functions/FunctionBuilder.cjs +4 -4
  200. package/dist/functions/FunctionBuilder.d.cts +4 -4
  201. package/dist/functions/FunctionBuilder.d.mts +4 -4
  202. package/dist/functions/FunctionBuilder.mjs +4 -4
  203. package/dist/functions/FunctionExecutionWrapper.cjs +5 -5
  204. package/dist/functions/FunctionExecutionWrapper.d.cts +3 -3
  205. package/dist/functions/FunctionExecutionWrapper.d.mts +3 -3
  206. package/dist/functions/FunctionExecutionWrapper.mjs +5 -5
  207. package/dist/functions/TestFunctionAdaptor.cjs +4 -4
  208. package/dist/functions/TestFunctionAdaptor.d.cts +2 -2
  209. package/dist/functions/TestFunctionAdaptor.d.mts +2 -2
  210. package/dist/functions/TestFunctionAdaptor.mjs +4 -4
  211. package/dist/functions/index.cjs +5 -5
  212. package/dist/functions/index.d.cts +5 -5
  213. package/dist/functions/index.d.mts +5 -5
  214. package/dist/functions/index.mjs +5 -5
  215. package/dist/{functions-DVDb5wEA.cjs → functions-B9mEg9D9.cjs} +2 -2
  216. package/dist/{functions-DVDb5wEA.cjs.map → functions-B9mEg9D9.cjs.map} +1 -1
  217. package/dist/functions-DcQZSOHg.mjs +8 -0
  218. package/dist/{functions-mM-jcphA.mjs.map → functions-DcQZSOHg.mjs.map} +1 -1
  219. package/dist/{helpers-go4jiRvV.cjs → helpers-BJrzAmhb.cjs} +2 -2
  220. package/dist/{helpers-go4jiRvV.cjs.map → helpers-BJrzAmhb.cjs.map} +1 -1
  221. package/dist/{helpers-CM0U-4Vk.mjs → helpers-D_UKinz8.mjs} +2 -2
  222. package/dist/{helpers-CM0U-4Vk.mjs.map → helpers-D_UKinz8.mjs.map} +1 -1
  223. package/dist/index-DQt3pQtF.d.mts +9 -0
  224. package/dist/index-Dq-LQIwK.d.cts +9 -0
  225. package/dist/index.cjs +1 -1
  226. package/dist/index.d.cts +1 -1
  227. package/dist/index.d.mts +1 -1
  228. package/dist/index.mjs +1 -1
  229. package/dist/publisher.d.cts +1 -1
  230. package/dist/publisher.d.mts +1 -1
  231. package/dist/subscribers/AWSLambdaSubscriberAdaptor.d.cts +3 -3
  232. package/dist/subscribers/AWSLambdaSubscriberAdaptor.d.mts +3 -3
  233. package/dist/subscribers/Subscriber.cjs +2 -2
  234. package/dist/subscribers/Subscriber.d.cts +2 -2
  235. package/dist/subscribers/Subscriber.d.mts +2 -2
  236. package/dist/subscribers/Subscriber.mjs +2 -2
  237. package/dist/subscribers/SubscriberBuilder.cjs +3 -3
  238. package/dist/subscribers/SubscriberBuilder.d.cts +3 -3
  239. package/dist/subscribers/SubscriberBuilder.d.mts +3 -3
  240. package/dist/subscribers/SubscriberBuilder.mjs +3 -3
  241. package/dist/subscribers/index.cjs +3 -3
  242. package/dist/subscribers/index.d.cts +3 -3
  243. package/dist/subscribers/index.d.mts +5 -5
  244. package/dist/subscribers/index.mjs +3 -3
  245. package/package.json +5 -5
  246. package/src/Construct.ts +2 -0
  247. package/src/crons/Cron.ts +2 -0
  248. package/src/crons/CronBuilder.ts +8 -0
  249. package/src/crons/__tests__/CronBuilder.state-isolation.spec.ts +227 -0
  250. package/src/endpoints/Authorizer.ts +34 -0
  251. package/src/endpoints/Endpoint.ts +67 -14
  252. package/src/endpoints/EndpointBuilder.ts +79 -12
  253. package/src/endpoints/EndpointFactory.ts +106 -27
  254. package/src/endpoints/HonoEndpointAdaptor.ts +29 -0
  255. package/src/endpoints/__tests__/Endpoint.cookies.spec.ts +85 -0
  256. package/src/endpoints/__tests__/Endpoint.headers.spec.ts +187 -0
  257. package/src/endpoints/__tests__/Endpoint.manifest.spec.ts +176 -0
  258. package/src/endpoints/__tests__/EndpointFactory.authorizers.spec.ts +259 -0
  259. package/src/endpoints/__tests__/EndpointFactory.reference-audit.spec.ts +190 -0
  260. package/src/endpoints/__tests__/EndpointFactory.state-isolation.spec.ts +155 -0
  261. package/src/functions/Function.ts +12 -2
  262. package/src/functions/FunctionBuilder.ts +9 -0
  263. package/src/functions/__tests__/FunctionBuilder.state-isolation.spec.ts +160 -0
  264. package/dist/Construct-BSEs6uwW.cjs.map +0 -1
  265. package/dist/Construct-BbKCIPQm.mjs.map +0 -1
  266. package/dist/Cron-CmZ6esMM.cjs.map +0 -1
  267. package/dist/Cron-D6hnZLk7.mjs.map +0 -1
  268. package/dist/CronBuilder-Dfv5JguE.mjs.map +0 -1
  269. package/dist/CronBuilder-Di7QK8Rt.cjs.map +0 -1
  270. package/dist/Endpoint-COGAflGh.cjs.map +0 -1
  271. package/dist/Endpoint-DLLZvqoh.mjs.map +0 -1
  272. package/dist/EndpointBuilder-FJktpPOu.cjs.map +0 -1
  273. package/dist/EndpointBuilder-oXO_ka1-.mjs.map +0 -1
  274. package/dist/EndpointFactory-Kk1tpifs.cjs.map +0 -1
  275. package/dist/EndpointFactory-eG8bDhOh.mjs.map +0 -1
  276. package/dist/Function-C5mW-38v.mjs.map +0 -1
  277. package/dist/Function-CbO2NZx-.cjs.map +0 -1
  278. package/dist/FunctionBuilder-CosgPmMl.mjs.map +0 -1
  279. package/dist/FunctionBuilder-DuOeWCAl.cjs.map +0 -1
  280. package/dist/HonoEndpointAdaptor-BlT1rWHV.mjs.map +0 -1
  281. package/dist/HonoEndpointAdaptor-Ds433Q8w.cjs.map +0 -1
  282. package/dist/functions-mM-jcphA.mjs +0 -8
  283. package/dist/index-BGr5gFrX.d.cts +0 -9
  284. package/dist/index-YM4W9XUq.d.mts +0 -9
@@ -1,13 +1,14 @@
1
1
  const require_chunk = require('./chunk-CUT6urMc.cjs');
2
- const require_Construct = require('./Construct-BSEs6uwW.cjs');
3
- const require_Function = require('./Function-CbO2NZx-.cjs');
4
- const require_BaseFunctionBuilder = require('./BaseFunctionBuilder-DtO4Nwxm.cjs');
2
+ const require_Construct = require('./Construct-BtfN2fcm.cjs');
3
+ const require_Function = require('./Function-BCEAZFyL.cjs');
4
+ const require_BaseFunctionBuilder = require('./BaseFunctionBuilder-B-kdtkzI.cjs');
5
5
  const lodash_uniqby = require_chunk.__toESM(require("lodash.uniqby"));
6
6
  const __geekmidas_logger_console = require_chunk.__toESM(require("@geekmidas/logger/console"));
7
7
 
8
8
  //#region src/functions/FunctionBuilder.ts
9
9
  const DEFAULT_LOGGER = new __geekmidas_logger_console.ConsoleLogger();
10
10
  var FunctionBuilder = class extends require_BaseFunctionBuilder.BaseFunctionBuilder {
11
+ _memorySize;
11
12
  constructor(type = require_Construct.ConstructType.Function) {
12
13
  super(type);
13
14
  this.type = type;
@@ -16,6 +17,10 @@ var FunctionBuilder = class extends require_BaseFunctionBuilder.BaseFunctionBuil
16
17
  this._timeout = timeout;
17
18
  return this;
18
19
  }
20
+ memorySize(memorySize) {
21
+ this._memorySize = memorySize;
22
+ return this;
23
+ }
19
24
  output(schema) {
20
25
  this.outputSchema = schema;
21
26
  return this;
@@ -37,7 +42,7 @@ var FunctionBuilder = class extends require_BaseFunctionBuilder.BaseFunctionBuil
37
42
  return this;
38
43
  }
39
44
  handle(fn) {
40
- const func = new require_Function.Function(fn, this._timeout, this.type, this.inputSchema, this.outputSchema, this._services, this._logger, this._publisher, this._events);
45
+ const func = new require_Function.Function(fn, this._timeout, this.type, this.inputSchema, this.outputSchema, this._services, this._logger, this._publisher, this._events, this._memorySize);
41
46
  this._services = [];
42
47
  this._logger = DEFAULT_LOGGER;
43
48
  this._events = [];
@@ -45,6 +50,7 @@ var FunctionBuilder = class extends require_BaseFunctionBuilder.BaseFunctionBuil
45
50
  this.inputSchema = void 0;
46
51
  this.outputSchema = void 0;
47
52
  this._timeout = void 0;
53
+ this._memorySize = void 0;
48
54
  return func;
49
55
  }
50
56
  };
@@ -56,4 +62,4 @@ Object.defineProperty(exports, 'FunctionBuilder', {
56
62
  return FunctionBuilder;
57
63
  }
58
64
  });
59
- //# sourceMappingURL=FunctionBuilder-DuOeWCAl.cjs.map
65
+ //# sourceMappingURL=FunctionBuilder-BqivB_cc.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FunctionBuilder-BqivB_cc.cjs","names":["ConsoleLogger","BaseFunctionBuilder","ConstructType","timeout: number","memorySize: number","schema: T","services: T","logger: T","publisher: Service<TName, T>","fn: FunctionHandler<TInput, TServices, TLogger, OutSchema>","Function"],"sources":["../src/functions/FunctionBuilder.ts"],"sourcesContent":["import type { Logger } from '@geekmidas/logger';\nimport { ConsoleLogger } from '@geekmidas/logger/console';\nimport type { Service } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport uniqBy from 'lodash.uniqby';\nimport { ConstructType } from '../Construct';\nimport { BaseFunctionBuilder } from './BaseFunctionBuilder';\nimport { Function, type FunctionHandler } from './Function';\n\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { ComposableStandardSchema } from '@geekmidas/schema';\n\nconst DEFAULT_LOGGER = new ConsoleLogger() as any;\n\nexport class FunctionBuilder<\n TInput extends ComposableStandardSchema,\n OutSchema extends StandardSchemaV1 | undefined = undefined,\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n TEventPublisher extends EventPublisher<any> | undefined = undefined,\n TEventPublisherServiceName extends string = string,\n> extends BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName\n> {\n protected _memorySize?: number;\n\n constructor(public type = ConstructType.Function) {\n super(type);\n }\n\n timeout(timeout: number): this {\n this._timeout = timeout;\n return this;\n }\n\n memorySize(memorySize: number): this {\n this._memorySize = memorySize;\n return this;\n }\n\n output<T extends StandardSchemaV1>(\n schema: T,\n ): FunctionBuilder<\n TInput,\n T,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName\n > {\n this.outputSchema = schema as unknown as OutSchema;\n\n return this as unknown as FunctionBuilder<\n TInput,\n T,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName\n >;\n }\n\n input<T extends ComposableStandardSchema>(\n schema: T,\n ): FunctionBuilder<\n T,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName\n > {\n this.inputSchema = schema as unknown as TInput;\n\n return this as unknown as FunctionBuilder<\n T,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName\n >;\n }\n\n services<T extends Service[]>(\n services: T,\n ): FunctionBuilder<\n TInput,\n OutSchema,\n [...TServices, ...T],\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName\n > {\n this._services = uniqBy(\n [...this._services, ...services],\n (s) => s.serviceName,\n ) as TServices;\n\n return this as unknown as FunctionBuilder<\n TInput,\n OutSchema,\n [...TServices, ...T],\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName\n >;\n }\n\n logger<T extends Logger>(\n logger: T,\n ): FunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n T,\n TEventPublisher,\n TEventPublisherServiceName\n > {\n this._logger = logger as unknown as TLogger;\n\n return this as unknown as FunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n T,\n TEventPublisher,\n TEventPublisherServiceName\n >;\n }\n\n publisher<T extends EventPublisher<any>, TName extends string>(\n publisher: Service<TName, T>,\n ): FunctionBuilder<TInput, OutSchema, TServices, TLogger, T, TName> {\n this._publisher = publisher as unknown as Service<\n TEventPublisherServiceName,\n TEventPublisher\n >;\n\n return this as unknown as FunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n T,\n TName\n >;\n }\n\n handle(\n fn: FunctionHandler<TInput, TServices, TLogger, OutSchema>,\n ): Function<\n TInput,\n TServices,\n TLogger,\n OutSchema,\n FunctionHandler<TInput, TServices, TLogger, OutSchema>,\n TEventPublisher,\n TEventPublisherServiceName\n > {\n const func = new Function(\n fn,\n this._timeout,\n this.type,\n this.inputSchema,\n this.outputSchema,\n this._services,\n this._logger,\n this._publisher,\n this._events,\n this._memorySize,\n );\n\n // Reset builder state after creating the function to prevent pollution\n this._services = [] as Service[] as TServices;\n this._logger = DEFAULT_LOGGER;\n this._events = [];\n this._publisher = undefined;\n this.inputSchema = undefined;\n this.outputSchema = undefined;\n this._timeout = undefined;\n this._memorySize = undefined;\n\n return func;\n }\n}\n"],"mappings":";;;;;;;;AAYA,MAAM,iBAAiB,IAAIA;AAE3B,IAAa,kBAAb,cAOUC,gDAOR;CACA,AAAU;CAEV,YAAmB,OAAOC,gCAAc,UAAU;AAChD,QAAM,KAAK;EADM;CAElB;CAED,QAAQC,SAAuB;AAC7B,OAAK,WAAW;AAChB,SAAO;CACR;CAED,WAAWC,YAA0B;AACnC,OAAK,cAAc;AACnB,SAAO;CACR;CAED,OACEC,QAQA;AACA,OAAK,eAAe;AAEpB,SAAO;CAQR;CAED,MACEA,QAQA;AACA,OAAK,cAAc;AAEnB,SAAO;CAQR;CAED,SACEC,UAQA;AACA,OAAK,YAAY,2BACf,CAAC,GAAG,KAAK,WAAW,GAAG,QAAS,GAChC,CAAC,MAAM,EAAE,YACV;AAED,SAAO;CAQR;CAED,OACEC,QAQA;AACA,OAAK,UAAU;AAEf,SAAO;CAQR;CAED,UACEC,WACkE;AAClE,OAAK,aAAa;AAKlB,SAAO;CAQR;CAED,OACEC,IASA;EACA,MAAM,OAAO,IAAIC,0BACf,IACA,KAAK,UACL,KAAK,MACL,KAAK,aACL,KAAK,cACL,KAAK,WACL,KAAK,SACL,KAAK,YACL,KAAK,SACL,KAAK;AAIP,OAAK,YAAY,CAAE;AACnB,OAAK,UAAU;AACf,OAAK,UAAU,CAAE;AACjB,OAAK;AACL,OAAK;AACL,OAAK;AACL,OAAK;AACL,OAAK;AAEL,SAAO;CACR;AACF"}
@@ -1,6 +1,6 @@
1
- import { ConstructType } from "./Construct-Bm-PSO2V.cjs";
2
- import { Function, FunctionHandler } from "./Function-BP58p9Mp.cjs";
3
- import { BaseFunctionBuilder } from "./BaseFunctionBuilder-5QCHkchp.cjs";
1
+ import { ConstructType } from "./Construct-ci5u8Xnu.cjs";
2
+ import { Function, FunctionHandler } from "./Function-BbLYIKLL.cjs";
3
+ import { BaseFunctionBuilder } from "./BaseFunctionBuilder-C4ZJPkIZ.cjs";
4
4
  import { EventPublisher } from "@geekmidas/events";
5
5
  import { Logger } from "@geekmidas/logger";
6
6
  import { Service } from "@geekmidas/services";
@@ -10,8 +10,10 @@ import { ComposableStandardSchema } from "@geekmidas/schema";
10
10
  //#region src/functions/FunctionBuilder.d.ts
11
11
  declare class FunctionBuilder<TInput extends ComposableStandardSchema, OutSchema extends StandardSchemaV1 | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, TEventPublisher extends EventPublisher<any> | undefined = undefined, TEventPublisherServiceName extends string = string> extends BaseFunctionBuilder<TInput, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName> {
12
12
  type: ConstructType;
13
+ protected _memorySize?: number;
13
14
  constructor(type?: ConstructType);
14
15
  timeout(timeout: number): this;
16
+ memorySize(memorySize: number): this;
15
17
  output<T extends StandardSchemaV1>(schema: T): FunctionBuilder<TInput, T, TServices, TLogger, TEventPublisher, TEventPublisherServiceName>;
16
18
  input<T extends ComposableStandardSchema>(schema: T): FunctionBuilder<T, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName>;
17
19
  services<T extends Service[]>(services: T): FunctionBuilder<TInput, OutSchema, [...TServices, ...T], TLogger, TEventPublisher, TEventPublisherServiceName>;
@@ -21,4 +23,4 @@ declare class FunctionBuilder<TInput extends ComposableStandardSchema, OutSchema
21
23
  }
22
24
  //#endregion
23
25
  export { FunctionBuilder };
24
- //# sourceMappingURL=FunctionBuilder-BS1KgxA_.d.cts.map
26
+ //# sourceMappingURL=FunctionBuilder-DdGjpiFT.d.cts.map
@@ -1,6 +1,6 @@
1
- import { ConstructType } from "./Construct-DdyYENBD.mjs";
2
- import { Function, FunctionHandler } from "./Function-C98H68DW.mjs";
3
- import { BaseFunctionBuilder } from "./BaseFunctionBuilder-Dda7AiID.mjs";
1
+ import { ConstructType } from "./Construct-zhmcmIdY.mjs";
2
+ import { Function, FunctionHandler } from "./Function-DFRZZCC-.mjs";
3
+ import { BaseFunctionBuilder } from "./BaseFunctionBuilder-CxBX0arJ.mjs";
4
4
  import { Service } from "@geekmidas/services";
5
5
  import { EventPublisher } from "@geekmidas/events";
6
6
  import { Logger } from "@geekmidas/logger";
@@ -10,8 +10,10 @@ import { ComposableStandardSchema } from "@geekmidas/schema";
10
10
  //#region src/functions/FunctionBuilder.d.ts
11
11
  declare class FunctionBuilder<TInput extends ComposableStandardSchema, OutSchema extends StandardSchemaV1 | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, TEventPublisher extends EventPublisher<any> | undefined = undefined, TEventPublisherServiceName extends string = string> extends BaseFunctionBuilder<TInput, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName> {
12
12
  type: ConstructType;
13
+ protected _memorySize?: number;
13
14
  constructor(type?: ConstructType);
14
15
  timeout(timeout: number): this;
16
+ memorySize(memorySize: number): this;
15
17
  output<T extends StandardSchemaV1>(schema: T): FunctionBuilder<TInput, T, TServices, TLogger, TEventPublisher, TEventPublisherServiceName>;
16
18
  input<T extends ComposableStandardSchema>(schema: T): FunctionBuilder<T, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName>;
17
19
  services<T extends Service[]>(services: T): FunctionBuilder<TInput, OutSchema, [...TServices, ...T], TLogger, TEventPublisher, TEventPublisherServiceName>;
@@ -21,4 +23,4 @@ declare class FunctionBuilder<TInput extends ComposableStandardSchema, OutSchema
21
23
  }
22
24
  //#endregion
23
25
  export { FunctionBuilder };
24
- //# sourceMappingURL=FunctionBuilder-DBwR7jg7.d.mts.map
26
+ //# sourceMappingURL=FunctionBuilder-DuktGyZc.d.mts.map
@@ -1,12 +1,13 @@
1
- import { ConstructType } from "./Construct-BbKCIPQm.mjs";
2
- import { Function } from "./Function-C5mW-38v.mjs";
3
- import { BaseFunctionBuilder } from "./BaseFunctionBuilder-BPE9JBbT.mjs";
1
+ import { ConstructType } from "./Construct-B-O9OBS1.mjs";
2
+ import { Function } from "./Function-CmfMIDoS.mjs";
3
+ import { BaseFunctionBuilder } from "./BaseFunctionBuilder-DOhEn5Ce.mjs";
4
4
  import uniqBy from "lodash.uniqby";
5
5
  import { ConsoleLogger } from "@geekmidas/logger/console";
6
6
 
7
7
  //#region src/functions/FunctionBuilder.ts
8
8
  const DEFAULT_LOGGER$1 = new ConsoleLogger();
9
9
  var FunctionBuilder = class extends BaseFunctionBuilder {
10
+ _memorySize;
10
11
  constructor(type = ConstructType.Function) {
11
12
  super(type);
12
13
  this.type = type;
@@ -15,6 +16,10 @@ var FunctionBuilder = class extends BaseFunctionBuilder {
15
16
  this._timeout = timeout;
16
17
  return this;
17
18
  }
19
+ memorySize(memorySize) {
20
+ this._memorySize = memorySize;
21
+ return this;
22
+ }
18
23
  output(schema) {
19
24
  this.outputSchema = schema;
20
25
  return this;
@@ -36,7 +41,7 @@ var FunctionBuilder = class extends BaseFunctionBuilder {
36
41
  return this;
37
42
  }
38
43
  handle(fn) {
39
- const func = new Function(fn, this._timeout, this.type, this.inputSchema, this.outputSchema, this._services, this._logger, this._publisher, this._events);
44
+ const func = new Function(fn, this._timeout, this.type, this.inputSchema, this.outputSchema, this._services, this._logger, this._publisher, this._events, this._memorySize);
40
45
  this._services = [];
41
46
  this._logger = DEFAULT_LOGGER$1;
42
47
  this._events = [];
@@ -44,10 +49,11 @@ var FunctionBuilder = class extends BaseFunctionBuilder {
44
49
  this.inputSchema = void 0;
45
50
  this.outputSchema = void 0;
46
51
  this._timeout = void 0;
52
+ this._memorySize = void 0;
47
53
  return func;
48
54
  }
49
55
  };
50
56
 
51
57
  //#endregion
52
58
  export { FunctionBuilder };
53
- //# sourceMappingURL=FunctionBuilder-CosgPmMl.mjs.map
59
+ //# sourceMappingURL=FunctionBuilder-QvqvEyFa.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FunctionBuilder-QvqvEyFa.mjs","names":["DEFAULT_LOGGER","timeout: number","memorySize: number","schema: T","services: T","logger: T","publisher: Service<TName, T>","fn: FunctionHandler<TInput, TServices, TLogger, OutSchema>"],"sources":["../src/functions/FunctionBuilder.ts"],"sourcesContent":["import type { Logger } from '@geekmidas/logger';\nimport { ConsoleLogger } from '@geekmidas/logger/console';\nimport type { Service } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport uniqBy from 'lodash.uniqby';\nimport { ConstructType } from '../Construct';\nimport { BaseFunctionBuilder } from './BaseFunctionBuilder';\nimport { Function, type FunctionHandler } from './Function';\n\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { ComposableStandardSchema } from '@geekmidas/schema';\n\nconst DEFAULT_LOGGER = new ConsoleLogger() as any;\n\nexport class FunctionBuilder<\n TInput extends ComposableStandardSchema,\n OutSchema extends StandardSchemaV1 | undefined = undefined,\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n TEventPublisher extends EventPublisher<any> | undefined = undefined,\n TEventPublisherServiceName extends string = string,\n> extends BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName\n> {\n protected _memorySize?: number;\n\n constructor(public type = ConstructType.Function) {\n super(type);\n }\n\n timeout(timeout: number): this {\n this._timeout = timeout;\n return this;\n }\n\n memorySize(memorySize: number): this {\n this._memorySize = memorySize;\n return this;\n }\n\n output<T extends StandardSchemaV1>(\n schema: T,\n ): FunctionBuilder<\n TInput,\n T,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName\n > {\n this.outputSchema = schema as unknown as OutSchema;\n\n return this as unknown as FunctionBuilder<\n TInput,\n T,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName\n >;\n }\n\n input<T extends ComposableStandardSchema>(\n schema: T,\n ): FunctionBuilder<\n T,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName\n > {\n this.inputSchema = schema as unknown as TInput;\n\n return this as unknown as FunctionBuilder<\n T,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName\n >;\n }\n\n services<T extends Service[]>(\n services: T,\n ): FunctionBuilder<\n TInput,\n OutSchema,\n [...TServices, ...T],\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName\n > {\n this._services = uniqBy(\n [...this._services, ...services],\n (s) => s.serviceName,\n ) as TServices;\n\n return this as unknown as FunctionBuilder<\n TInput,\n OutSchema,\n [...TServices, ...T],\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName\n >;\n }\n\n logger<T extends Logger>(\n logger: T,\n ): FunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n T,\n TEventPublisher,\n TEventPublisherServiceName\n > {\n this._logger = logger as unknown as TLogger;\n\n return this as unknown as FunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n T,\n TEventPublisher,\n TEventPublisherServiceName\n >;\n }\n\n publisher<T extends EventPublisher<any>, TName extends string>(\n publisher: Service<TName, T>,\n ): FunctionBuilder<TInput, OutSchema, TServices, TLogger, T, TName> {\n this._publisher = publisher as unknown as Service<\n TEventPublisherServiceName,\n TEventPublisher\n >;\n\n return this as unknown as FunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n T,\n TName\n >;\n }\n\n handle(\n fn: FunctionHandler<TInput, TServices, TLogger, OutSchema>,\n ): Function<\n TInput,\n TServices,\n TLogger,\n OutSchema,\n FunctionHandler<TInput, TServices, TLogger, OutSchema>,\n TEventPublisher,\n TEventPublisherServiceName\n > {\n const func = new Function(\n fn,\n this._timeout,\n this.type,\n this.inputSchema,\n this.outputSchema,\n this._services,\n this._logger,\n this._publisher,\n this._events,\n this._memorySize,\n );\n\n // Reset builder state after creating the function to prevent pollution\n this._services = [] as Service[] as TServices;\n this._logger = DEFAULT_LOGGER;\n this._events = [];\n this._publisher = undefined;\n this.inputSchema = undefined;\n this.outputSchema = undefined;\n this._timeout = undefined;\n this._memorySize = undefined;\n\n return func;\n }\n}\n"],"mappings":";;;;;;;AAYA,MAAMA,mBAAiB,IAAI;AAE3B,IAAa,kBAAb,cAOU,oBAOR;CACA,AAAU;CAEV,YAAmB,OAAO,cAAc,UAAU;AAChD,QAAM,KAAK;EADM;CAElB;CAED,QAAQC,SAAuB;AAC7B,OAAK,WAAW;AAChB,SAAO;CACR;CAED,WAAWC,YAA0B;AACnC,OAAK,cAAc;AACnB,SAAO;CACR;CAED,OACEC,QAQA;AACA,OAAK,eAAe;AAEpB,SAAO;CAQR;CAED,MACEA,QAQA;AACA,OAAK,cAAc;AAEnB,SAAO;CAQR;CAED,SACEC,UAQA;AACA,OAAK,YAAY,OACf,CAAC,GAAG,KAAK,WAAW,GAAG,QAAS,GAChC,CAAC,MAAM,EAAE,YACV;AAED,SAAO;CAQR;CAED,OACEC,QAQA;AACA,OAAK,UAAU;AAEf,SAAO;CAQR;CAED,UACEC,WACkE;AAClE,OAAK,aAAa;AAKlB,SAAO;CAQR;CAED,OACEC,IASA;EACA,MAAM,OAAO,IAAI,SACf,IACA,KAAK,UACL,KAAK,MACL,KAAK,aACL,KAAK,cACL,KAAK,WACL,KAAK,SACL,KAAK,YACL,KAAK,SACL,KAAK;AAIP,OAAK,YAAY,CAAE;AACnB,OAAK,UAAUP;AACf,OAAK,UAAU,CAAE;AACjB,OAAK;AACL,OAAK;AACL,OAAK;AACL,OAAK;AACL,OAAK;AAEL,SAAO;CACR;AACF"}
@@ -1,4 +1,4 @@
1
- import { Function, FunctionHandler } from "./Function-C98H68DW.mjs";
1
+ import { Function, FunctionHandler } from "./Function-DFRZZCC-.mjs";
2
2
  import { EnvironmentParser } from "@geekmidas/envkit";
3
3
  import { Service, ServiceDiscovery, ServiceRecord } from "@geekmidas/services";
4
4
  import { EventPublisher } from "@geekmidas/events";
@@ -21,4 +21,4 @@ declare abstract class FunctionExecutionWrapper<TInput extends ComposableStandar
21
21
  }
22
22
  //#endregion
23
23
  export { FunctionExecutionWrapper };
24
- //# sourceMappingURL=FunctionExecutionWrapper-B0V7V8YS.d.mts.map
24
+ //# sourceMappingURL=FunctionExecutionWrapper-CAHR74yI.d.mts.map
@@ -1,4 +1,4 @@
1
- import { Function, FunctionHandler } from "./Function-BP58p9Mp.cjs";
1
+ import { Function, FunctionHandler } from "./Function-BbLYIKLL.cjs";
2
2
  import { EventPublisher } from "@geekmidas/events";
3
3
  import { Logger } from "@geekmidas/logger";
4
4
  import { Service, ServiceDiscovery, ServiceRecord } from "@geekmidas/services";
@@ -21,4 +21,4 @@ declare abstract class FunctionExecutionWrapper<TInput extends ComposableStandar
21
21
  }
22
22
  //#endregion
23
23
  export { FunctionExecutionWrapper };
24
- //# sourceMappingURL=FunctionExecutionWrapper-Bx-Dl-2a.d.cts.map
24
+ //# sourceMappingURL=FunctionExecutionWrapper-CRYi047B.d.cts.map
@@ -1,5 +1,5 @@
1
1
  import { publishEvents } from "./publisher-Bw4770Hi.mjs";
2
- import { FunctionBuilder } from "./FunctionBuilder-CosgPmMl.mjs";
2
+ import { FunctionBuilder } from "./FunctionBuilder-QvqvEyFa.mjs";
3
3
  import { ServiceDiscovery } from "@geekmidas/services";
4
4
 
5
5
  //#region src/functions/FunctionExecutionWrapper.ts
@@ -33,4 +33,4 @@ var FunctionExecutionWrapper = class {
33
33
 
34
34
  //#endregion
35
35
  export { FunctionExecutionWrapper };
36
- //# sourceMappingURL=FunctionExecutionWrapper-XGrSAAPD.mjs.map
36
+ //# sourceMappingURL=FunctionExecutionWrapper-JsZIHhcl.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionExecutionWrapper-XGrSAAPD.mjs","names":["envParser: EnvironmentParser<{}>","fn: Function<\n TInput,\n TServices,\n TLogger,\n TOutSchema,\n FunctionHandler<TInput, TServices, TLogger, TOutSchema>,\n TEventPublisher,\n TEventPublisherServiceName\n >","event: TEvent","response: InferStandardSchema<TOutSchema>","data: unknown","schema: T"],"sources":["../src/functions/FunctionExecutionWrapper.ts"],"sourcesContent":["import type { EnvironmentParser } from '@geekmidas/envkit';\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport type {\n ComposableStandardSchema,\n InferComposableStandardSchema,\n InferStandardSchema,\n} from '@geekmidas/schema';\nimport {\n type Service,\n ServiceDiscovery,\n type ServiceRecord,\n} from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport { publishEvents } from '../publisher';\nimport type { Function, FunctionHandler } from './Function';\nimport { FunctionBuilder } from './FunctionBuilder';\n\nexport abstract class FunctionExecutionWrapper<\n TInput extends ComposableStandardSchema | undefined = undefined,\n TOutSchema extends StandardSchemaV1 | undefined = undefined,\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n TEventPublisher extends EventPublisher<any> | undefined = undefined,\n TEventPublisherServiceName extends string = string,\n> {\n constructor(\n protected envParser: EnvironmentParser<{}>,\n protected readonly fn: Function<\n TInput,\n TServices,\n TLogger,\n TOutSchema,\n FunctionHandler<TInput, TServices, TLogger, TOutSchema>,\n TEventPublisher,\n TEventPublisherServiceName\n >,\n ) {}\n\n protected _logger?: TLogger;\n\n get logger(): TLogger {\n return this._logger || this.fn.logger;\n }\n\n get serviceDiscovery(): ServiceDiscovery<ServiceRecord<TServices>, Logger> {\n const serviceDiscovery = ServiceDiscovery.getInstance<\n ServiceRecord<TServices>,\n TLogger\n >(this.logger, this.envParser);\n\n return serviceDiscovery;\n }\n\n getServices(): Promise<ServiceRecord<TServices>> {\n return this.serviceDiscovery.register(this.fn.services);\n }\n\n async getFunctionInput<TEvent>(\n event: TEvent,\n ): Promise<InferComposableStandardSchema<TInput>> {\n const parsedInput = await FunctionBuilder.parseComposableStandardSchema(\n event,\n this.fn.input,\n );\n\n return parsedInput as InferComposableStandardSchema<TInput>;\n }\n\n async publishEvents(response: InferStandardSchema<TOutSchema>) {\n await publishEvents(\n this.logger,\n this.serviceDiscovery,\n this.fn.events,\n response,\n this.fn.publisherService,\n );\n }\n\n async parseComposableStandardSchema<T extends ComposableStandardSchema>(\n data: unknown,\n schema: T,\n ): Promise<InferComposableStandardSchema<T>> {\n return FunctionBuilder.parseComposableStandardSchema(data, schema);\n }\n}\n"],"mappings":";;;;;AAkBA,IAAsB,2BAAtB,MAOE;CACA,YACYA,WACSC,IASnB;EAVU;EACS;CASjB;CAEJ,AAAU;CAEV,IAAI,SAAkB;AACpB,SAAO,KAAK,WAAW,KAAK,GAAG;CAChC;CAED,IAAI,mBAAuE;EACzE,MAAM,mBAAmB,iBAAiB,YAGxC,KAAK,QAAQ,KAAK,UAAU;AAE9B,SAAO;CACR;CAED,cAAiD;AAC/C,SAAO,KAAK,iBAAiB,SAAS,KAAK,GAAG,SAAS;CACxD;CAED,MAAM,iBACJC,OACgD;EAChD,MAAM,cAAc,MAAM,gBAAgB,8BACxC,OACA,KAAK,GAAG,MACT;AAED,SAAO;CACR;CAED,MAAM,cAAcC,UAA2C;AAC7D,QAAM,cACJ,KAAK,QACL,KAAK,kBACL,KAAK,GAAG,QACR,UACA,KAAK,GAAG,iBACT;CACF;CAED,MAAM,8BACJC,MACAC,QAC2C;AAC3C,SAAO,gBAAgB,8BAA8B,MAAM,OAAO;CACnE;AACF"}
1
+ {"version":3,"file":"FunctionExecutionWrapper-JsZIHhcl.mjs","names":["envParser: EnvironmentParser<{}>","fn: Function<\n TInput,\n TServices,\n TLogger,\n TOutSchema,\n FunctionHandler<TInput, TServices, TLogger, TOutSchema>,\n TEventPublisher,\n TEventPublisherServiceName\n >","event: TEvent","response: InferStandardSchema<TOutSchema>","data: unknown","schema: T"],"sources":["../src/functions/FunctionExecutionWrapper.ts"],"sourcesContent":["import type { EnvironmentParser } from '@geekmidas/envkit';\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport type {\n ComposableStandardSchema,\n InferComposableStandardSchema,\n InferStandardSchema,\n} from '@geekmidas/schema';\nimport {\n type Service,\n ServiceDiscovery,\n type ServiceRecord,\n} from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport { publishEvents } from '../publisher';\nimport type { Function, FunctionHandler } from './Function';\nimport { FunctionBuilder } from './FunctionBuilder';\n\nexport abstract class FunctionExecutionWrapper<\n TInput extends ComposableStandardSchema | undefined = undefined,\n TOutSchema extends StandardSchemaV1 | undefined = undefined,\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n TEventPublisher extends EventPublisher<any> | undefined = undefined,\n TEventPublisherServiceName extends string = string,\n> {\n constructor(\n protected envParser: EnvironmentParser<{}>,\n protected readonly fn: Function<\n TInput,\n TServices,\n TLogger,\n TOutSchema,\n FunctionHandler<TInput, TServices, TLogger, TOutSchema>,\n TEventPublisher,\n TEventPublisherServiceName\n >,\n ) {}\n\n protected _logger?: TLogger;\n\n get logger(): TLogger {\n return this._logger || this.fn.logger;\n }\n\n get serviceDiscovery(): ServiceDiscovery<ServiceRecord<TServices>, Logger> {\n const serviceDiscovery = ServiceDiscovery.getInstance<\n ServiceRecord<TServices>,\n TLogger\n >(this.logger, this.envParser);\n\n return serviceDiscovery;\n }\n\n getServices(): Promise<ServiceRecord<TServices>> {\n return this.serviceDiscovery.register(this.fn.services);\n }\n\n async getFunctionInput<TEvent>(\n event: TEvent,\n ): Promise<InferComposableStandardSchema<TInput>> {\n const parsedInput = await FunctionBuilder.parseComposableStandardSchema(\n event,\n this.fn.input,\n );\n\n return parsedInput as InferComposableStandardSchema<TInput>;\n }\n\n async publishEvents(response: InferStandardSchema<TOutSchema>) {\n await publishEvents(\n this.logger,\n this.serviceDiscovery,\n this.fn.events,\n response,\n this.fn.publisherService,\n );\n }\n\n async parseComposableStandardSchema<T extends ComposableStandardSchema>(\n data: unknown,\n schema: T,\n ): Promise<InferComposableStandardSchema<T>> {\n return FunctionBuilder.parseComposableStandardSchema(data, schema);\n }\n}\n"],"mappings":";;;;;AAkBA,IAAsB,2BAAtB,MAOE;CACA,YACYA,WACSC,IASnB;EAVU;EACS;CASjB;CAEJ,AAAU;CAEV,IAAI,SAAkB;AACpB,SAAO,KAAK,WAAW,KAAK,GAAG;CAChC;CAED,IAAI,mBAAuE;EACzE,MAAM,mBAAmB,iBAAiB,YAGxC,KAAK,QAAQ,KAAK,UAAU;AAE9B,SAAO;CACR;CAED,cAAiD;AAC/C,SAAO,KAAK,iBAAiB,SAAS,KAAK,GAAG,SAAS;CACxD;CAED,MAAM,iBACJC,OACgD;EAChD,MAAM,cAAc,MAAM,gBAAgB,8BACxC,OACA,KAAK,GAAG,MACT;AAED,SAAO;CACR;CAED,MAAM,cAAcC,UAA2C;AAC7D,QAAM,cACJ,KAAK,QACL,KAAK,kBACL,KAAK,GAAG,QACR,UACA,KAAK,GAAG,iBACT;CACF;CAED,MAAM,8BACJC,MACAC,QAC2C;AAC3C,SAAO,gBAAgB,8BAA8B,MAAM,OAAO;CACnE;AACF"}
@@ -1,6 +1,6 @@
1
1
  const require_chunk = require('./chunk-CUT6urMc.cjs');
2
2
  const require_publisher = require('./publisher-lFQleddL.cjs');
3
- const require_FunctionBuilder = require('./FunctionBuilder-DuOeWCAl.cjs');
3
+ const require_FunctionBuilder = require('./FunctionBuilder-BqivB_cc.cjs');
4
4
  const __geekmidas_services = require_chunk.__toESM(require("@geekmidas/services"));
5
5
 
6
6
  //#region src/functions/FunctionExecutionWrapper.ts
@@ -39,4 +39,4 @@ Object.defineProperty(exports, 'FunctionExecutionWrapper', {
39
39
  return FunctionExecutionWrapper;
40
40
  }
41
41
  });
42
- //# sourceMappingURL=FunctionExecutionWrapper-CElXEjPe.cjs.map
42
+ //# sourceMappingURL=FunctionExecutionWrapper-TJxf9p4v.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionExecutionWrapper-CElXEjPe.cjs","names":["envParser: EnvironmentParser<{}>","fn: Function<\n TInput,\n TServices,\n TLogger,\n TOutSchema,\n FunctionHandler<TInput, TServices, TLogger, TOutSchema>,\n TEventPublisher,\n TEventPublisherServiceName\n >","event: TEvent","response: InferStandardSchema<TOutSchema>","data: unknown","schema: T"],"sources":["../src/functions/FunctionExecutionWrapper.ts"],"sourcesContent":["import type { EnvironmentParser } from '@geekmidas/envkit';\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport type {\n ComposableStandardSchema,\n InferComposableStandardSchema,\n InferStandardSchema,\n} from '@geekmidas/schema';\nimport {\n type Service,\n ServiceDiscovery,\n type ServiceRecord,\n} from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport { publishEvents } from '../publisher';\nimport type { Function, FunctionHandler } from './Function';\nimport { FunctionBuilder } from './FunctionBuilder';\n\nexport abstract class FunctionExecutionWrapper<\n TInput extends ComposableStandardSchema | undefined = undefined,\n TOutSchema extends StandardSchemaV1 | undefined = undefined,\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n TEventPublisher extends EventPublisher<any> | undefined = undefined,\n TEventPublisherServiceName extends string = string,\n> {\n constructor(\n protected envParser: EnvironmentParser<{}>,\n protected readonly fn: Function<\n TInput,\n TServices,\n TLogger,\n TOutSchema,\n FunctionHandler<TInput, TServices, TLogger, TOutSchema>,\n TEventPublisher,\n TEventPublisherServiceName\n >,\n ) {}\n\n protected _logger?: TLogger;\n\n get logger(): TLogger {\n return this._logger || this.fn.logger;\n }\n\n get serviceDiscovery(): ServiceDiscovery<ServiceRecord<TServices>, Logger> {\n const serviceDiscovery = ServiceDiscovery.getInstance<\n ServiceRecord<TServices>,\n TLogger\n >(this.logger, this.envParser);\n\n return serviceDiscovery;\n }\n\n getServices(): Promise<ServiceRecord<TServices>> {\n return this.serviceDiscovery.register(this.fn.services);\n }\n\n async getFunctionInput<TEvent>(\n event: TEvent,\n ): Promise<InferComposableStandardSchema<TInput>> {\n const parsedInput = await FunctionBuilder.parseComposableStandardSchema(\n event,\n this.fn.input,\n );\n\n return parsedInput as InferComposableStandardSchema<TInput>;\n }\n\n async publishEvents(response: InferStandardSchema<TOutSchema>) {\n await publishEvents(\n this.logger,\n this.serviceDiscovery,\n this.fn.events,\n response,\n this.fn.publisherService,\n );\n }\n\n async parseComposableStandardSchema<T extends ComposableStandardSchema>(\n data: unknown,\n schema: T,\n ): Promise<InferComposableStandardSchema<T>> {\n return FunctionBuilder.parseComposableStandardSchema(data, schema);\n }\n}\n"],"mappings":";;;;;;AAkBA,IAAsB,2BAAtB,MAOE;CACA,YACYA,WACSC,IASnB;EAVU;EACS;CASjB;CAEJ,AAAU;CAEV,IAAI,SAAkB;AACpB,SAAO,KAAK,WAAW,KAAK,GAAG;CAChC;CAED,IAAI,mBAAuE;EACzE,MAAM,mBAAmB,sCAAiB,YAGxC,KAAK,QAAQ,KAAK,UAAU;AAE9B,SAAO;CACR;CAED,cAAiD;AAC/C,SAAO,KAAK,iBAAiB,SAAS,KAAK,GAAG,SAAS;CACxD;CAED,MAAM,iBACJC,OACgD;EAChD,MAAM,cAAc,MAAM,wCAAgB,8BACxC,OACA,KAAK,GAAG,MACT;AAED,SAAO;CACR;CAED,MAAM,cAAcC,UAA2C;AAC7D,QAAM,gCACJ,KAAK,QACL,KAAK,kBACL,KAAK,GAAG,QACR,UACA,KAAK,GAAG,iBACT;CACF;CAED,MAAM,8BACJC,MACAC,QAC2C;AAC3C,SAAO,wCAAgB,8BAA8B,MAAM,OAAO;CACnE;AACF"}
1
+ {"version":3,"file":"FunctionExecutionWrapper-TJxf9p4v.cjs","names":["envParser: EnvironmentParser<{}>","fn: Function<\n TInput,\n TServices,\n TLogger,\n TOutSchema,\n FunctionHandler<TInput, TServices, TLogger, TOutSchema>,\n TEventPublisher,\n TEventPublisherServiceName\n >","event: TEvent","response: InferStandardSchema<TOutSchema>","data: unknown","schema: T"],"sources":["../src/functions/FunctionExecutionWrapper.ts"],"sourcesContent":["import type { EnvironmentParser } from '@geekmidas/envkit';\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport type {\n ComposableStandardSchema,\n InferComposableStandardSchema,\n InferStandardSchema,\n} from '@geekmidas/schema';\nimport {\n type Service,\n ServiceDiscovery,\n type ServiceRecord,\n} from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport { publishEvents } from '../publisher';\nimport type { Function, FunctionHandler } from './Function';\nimport { FunctionBuilder } from './FunctionBuilder';\n\nexport abstract class FunctionExecutionWrapper<\n TInput extends ComposableStandardSchema | undefined = undefined,\n TOutSchema extends StandardSchemaV1 | undefined = undefined,\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n TEventPublisher extends EventPublisher<any> | undefined = undefined,\n TEventPublisherServiceName extends string = string,\n> {\n constructor(\n protected envParser: EnvironmentParser<{}>,\n protected readonly fn: Function<\n TInput,\n TServices,\n TLogger,\n TOutSchema,\n FunctionHandler<TInput, TServices, TLogger, TOutSchema>,\n TEventPublisher,\n TEventPublisherServiceName\n >,\n ) {}\n\n protected _logger?: TLogger;\n\n get logger(): TLogger {\n return this._logger || this.fn.logger;\n }\n\n get serviceDiscovery(): ServiceDiscovery<ServiceRecord<TServices>, Logger> {\n const serviceDiscovery = ServiceDiscovery.getInstance<\n ServiceRecord<TServices>,\n TLogger\n >(this.logger, this.envParser);\n\n return serviceDiscovery;\n }\n\n getServices(): Promise<ServiceRecord<TServices>> {\n return this.serviceDiscovery.register(this.fn.services);\n }\n\n async getFunctionInput<TEvent>(\n event: TEvent,\n ): Promise<InferComposableStandardSchema<TInput>> {\n const parsedInput = await FunctionBuilder.parseComposableStandardSchema(\n event,\n this.fn.input,\n );\n\n return parsedInput as InferComposableStandardSchema<TInput>;\n }\n\n async publishEvents(response: InferStandardSchema<TOutSchema>) {\n await publishEvents(\n this.logger,\n this.serviceDiscovery,\n this.fn.events,\n response,\n this.fn.publisherService,\n );\n }\n\n async parseComposableStandardSchema<T extends ComposableStandardSchema>(\n data: unknown,\n schema: T,\n ): Promise<InferComposableStandardSchema<T>> {\n return FunctionBuilder.parseComposableStandardSchema(data, schema);\n }\n}\n"],"mappings":";;;;;;AAkBA,IAAsB,2BAAtB,MAOE;CACA,YACYA,WACSC,IASnB;EAVU;EACS;CASjB;CAEJ,AAAU;CAEV,IAAI,SAAkB;AACpB,SAAO,KAAK,WAAW,KAAK,GAAG;CAChC;CAED,IAAI,mBAAuE;EACzE,MAAM,mBAAmB,sCAAiB,YAGxC,KAAK,QAAQ,KAAK,UAAU;AAE9B,SAAO;CACR;CAED,cAAiD;AAC/C,SAAO,KAAK,iBAAiB,SAAS,KAAK,GAAG,SAAS;CACxD;CAED,MAAM,iBACJC,OACgD;EAChD,MAAM,cAAc,MAAM,wCAAgB,8BACxC,OACA,KAAK,GAAG,MACT;AAED,SAAO;CACR;CAED,MAAM,cAAcC,UAA2C;AAC7D,QAAM,gCACJ,KAAK,QACL,KAAK,kBACL,KAAK,GAAG,QACR,UACA,KAAK,GAAG,iBACT;CACF;CAED,MAAM,8BACJC,MACAC,QAC2C;AAC3C,SAAO,wCAAgB,8BAA8B,MAAM,OAAO;CACnE;AACF"}
@@ -1,12 +1,14 @@
1
1
  import { publishConstructEvents } from "./publisher-Bw4770Hi.mjs";
2
- import { Endpoint, ResponseBuilder } from "./Endpoint-DLLZvqoh.mjs";
3
- import { getEndpointsFromRoutes } from "./helpers-CM0U-4Vk.mjs";
2
+ import { Endpoint, ResponseBuilder } from "./Endpoint-DCJz2VQ_.mjs";
3
+ import { getEndpointsFromRoutes } from "./helpers-D_UKinz8.mjs";
4
4
  import { parseHonoQuery } from "./parseHonoQuery-znDKBhdE.mjs";
5
5
  import { wrapError } from "@geekmidas/errors";
6
6
  import { ServiceDiscovery } from "@geekmidas/services";
7
7
  import { checkRateLimit, getRateLimitHeaders } from "@geekmidas/rate-limit";
8
8
  import { Hono } from "hono";
9
9
  import { setCookie } from "hono/cookie";
10
+ import { logger } from "hono/logger";
11
+ import { timing } from "hono/timing";
10
12
  import { validator } from "hono/validator";
11
13
 
12
14
  //#region src/endpoints/HonoEndpointAdaptor.ts
@@ -14,6 +16,7 @@ var HonoEndpoint = class HonoEndpoint {
14
16
  constructor(endpoint) {
15
17
  this.endpoint = endpoint;
16
18
  }
19
+ static isDev = process.env.NODE_ENV === "development";
17
20
  static async validate(c, data, schema) {
18
21
  if (!schema) return void 0;
19
22
  const parsed = await Endpoint.validate(schema, data);
@@ -28,17 +31,19 @@ var HonoEndpoint = class HonoEndpoint {
28
31
  await next();
29
32
  const endpoint = c.get("__endpoint");
30
33
  const response = c.get("__response");
31
- const logger = c.get("__logger");
32
- if (Endpoint.isSuccessStatus(c.res.status) && endpoint) await publishConstructEvents(endpoint, response, serviceDiscovery, logger);
34
+ const logger$1 = c.get("__logger");
35
+ if (Endpoint.isSuccessStatus(c.res.status) && endpoint) await publishConstructEvents(endpoint, response, serviceDiscovery, logger$1);
33
36
  });
34
37
  }
35
- static async fromRoutes(routes, envParser, app = new Hono(), logger, cwd = process.cwd(), options) {
38
+ static async fromRoutes(routes, envParser, app = new Hono(), logger$1, cwd = process.cwd(), options) {
36
39
  const endpoints = await getEndpointsFromRoutes(routes, cwd);
37
- const serviceDiscovery = ServiceDiscovery.getInstance(logger, envParser);
40
+ const serviceDiscovery = ServiceDiscovery.getInstance(logger$1, envParser);
38
41
  HonoEndpoint.addRoutes(endpoints, serviceDiscovery, app, options);
39
42
  return app;
40
43
  }
41
44
  static addRoutes(endpoints, serviceDiscovery, app, options) {
45
+ app.use("*", timing());
46
+ if (HonoEndpoint.isDev) app.use("*", logger());
42
47
  const docsPath = options?.docsPath !== false ? options?.docsPath || "/docs" : null;
43
48
  if (docsPath) HonoEndpoint.addDocsRoute(endpoints, app, docsPath, options?.openApiOptions);
44
49
  const sortedEndpoints = endpoints.sort((a, b) => {
@@ -65,7 +70,7 @@ var HonoEndpoint = class HonoEndpoint {
65
70
  const parsedQuery = parseHonoQuery(c);
66
71
  return HonoEndpoint.validate(c, parsedQuery, endpoint.input?.query);
67
72
  }), validator("param", (params, c) => HonoEndpoint.validate(c, params, endpoint.input?.params)), async (c) => {
68
- const logger = endpoint.logger.child({
73
+ const logger$1 = endpoint.logger.child({
69
74
  endpoint: endpoint.fullPath,
70
75
  route: endpoint.route,
71
76
  host: c.header("host"),
@@ -79,7 +84,7 @@ var HonoEndpoint = class HonoEndpoint {
79
84
  const services = await serviceDiscovery.register(endpoint.services);
80
85
  const session = await endpoint.getSession({
81
86
  services,
82
- logger,
87
+ logger: logger$1,
83
88
  header,
84
89
  cookie
85
90
  });
@@ -87,18 +92,18 @@ var HonoEndpoint = class HonoEndpoint {
87
92
  header,
88
93
  cookie,
89
94
  services,
90
- logger,
95
+ logger: logger$1,
91
96
  session
92
97
  });
93
98
  if (!isAuthorized) {
94
- logger.warn("Unauthorized access attempt");
99
+ logger$1.warn("Unauthorized access attempt");
95
100
  return c.json({ error: "Unauthorized" }, 401);
96
101
  }
97
102
  if (endpoint.rateLimit) {
98
103
  const rateLimitInfo = await checkRateLimit(endpoint.rateLimit, {
99
104
  header,
100
105
  services,
101
- logger,
106
+ logger: logger$1,
102
107
  session,
103
108
  path: c.req.path,
104
109
  method: endpoint.method
@@ -109,7 +114,7 @@ var HonoEndpoint = class HonoEndpoint {
109
114
  const responseBuilder = new ResponseBuilder();
110
115
  const response = await endpoint.handler({
111
116
  services,
112
- logger,
117
+ logger: logger$1,
113
118
  body: c.req.valid("json"),
114
119
  query: c.req.valid("query"),
115
120
  params: c.req.valid("param"),
@@ -131,16 +136,28 @@ var HonoEndpoint = class HonoEndpoint {
131
136
  const output = endpoint.outputSchema ? await endpoint.parseOutput(data) : {};
132
137
  c.set("__response", output);
133
138
  c.set("__endpoint", endpoint);
134
- c.set("__logger", logger);
139
+ c.set("__logger", logger$1);
140
+ if (HonoEndpoint.isDev) logger$1.info({
141
+ status,
142
+ body: output
143
+ }, "Outgoing response");
135
144
  return c.json(output, status);
136
145
  } catch (validationError) {
137
- logger.error(validationError, "Output validation failed");
146
+ logger$1.error(validationError, "Output validation failed");
138
147
  const error = wrapError(validationError, 422, "Response validation failed");
148
+ if (HonoEndpoint.isDev) logger$1.info({
149
+ status: error.statusCode,
150
+ body: error
151
+ }, "Outgoing response");
139
152
  return c.json(error, error.statusCode);
140
153
  }
141
154
  } catch (e) {
142
- logger.error(e, "Error processing endpoint request");
155
+ logger$1.error(e, "Error processing endpoint request");
143
156
  const error = wrapError(e, 500, "Internal Server Error");
157
+ if (HonoEndpoint.isDev) logger$1.info({
158
+ status: error.statusCode,
159
+ body: error
160
+ }, "Outgoing response");
144
161
  return c.json(error, error.statusCode);
145
162
  }
146
163
  });
@@ -160,4 +177,4 @@ var HonoEndpoint = class HonoEndpoint {
160
177
 
161
178
  //#endregion
162
179
  export { HonoEndpoint };
163
- //# sourceMappingURL=HonoEndpointAdaptor-BlT1rWHV.mjs.map
180
+ //# sourceMappingURL=HonoEndpointAdaptor-8eYrSFRn.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HonoEndpointAdaptor-8eYrSFRn.mjs","names":["endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >","c: Context<any, string, {}>","data: unknown","schema?: T","serviceDiscovery: ServiceDiscovery<ServiceRecord<TServices>, TLogger>","app: Hono","serviceDiscovery: ServiceDiscovery<any, any>","logger","routes: string[]","envParser: EnvironmentParser<{}>","logger: TLogger","options?: HonoEndpointOptions","endpoints: Endpoint<string, HttpMethod, any, any, TServices, TLogger>[]","validationError: any","e: any","docsPath: string","openApiOptions?: HonoEndpointOptions['openApiOptions']"],"sources":["../src/endpoints/HonoEndpointAdaptor.ts"],"sourcesContent":["import type { EnvironmentParser } from '@geekmidas/envkit';\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport { checkRateLimit, getRateLimitHeaders } from '@geekmidas/rate-limit';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport { type Context, Hono } from 'hono';\nimport { setCookie } from 'hono/cookie';\nimport { logger as honoLogger } from 'hono/logger';\nimport { timing } from 'hono/timing';\nimport { validator } from 'hono/validator';\nimport type { HttpMethod, LowerHttpMethod } from '../types';\nimport {\n Endpoint,\n type EndpointContext,\n type EndpointSchemas,\n ResponseBuilder,\n} from './Endpoint';\nimport { getEndpointsFromRoutes } from './helpers';\nimport { parseHonoQuery } from './parseHonoQuery';\n\nimport { wrapError } from '@geekmidas/errors';\nimport {\n type Service,\n ServiceDiscovery,\n type ServiceRecord,\n} from '@geekmidas/services';\nimport type { ContentfulStatusCode } from 'hono/utils/http-status';\nimport { publishConstructEvents } from '../publisher';\n\nexport interface HonoEndpointOptions {\n /**\n * Path where OpenAPI documentation will be served.\n * Set to false to disable docs route.\n * @default '/docs'\n */\n docsPath?: string | false;\n /**\n * OpenAPI schema options\n */\n openApiOptions?: {\n title?: string;\n version?: string;\n description?: string;\n };\n}\n\nexport class HonoEndpoint<\n TRoute extends string,\n TMethod extends HttpMethod,\n TInput extends EndpointSchemas = {},\n TOutSchema extends StandardSchemaV1 | undefined = undefined,\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n TSession = unknown,\n TEventPublisher extends EventPublisher<any> | undefined = undefined,\n> {\n constructor(\n private readonly endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >,\n ) {}\n\n static isDev = process.env.NODE_ENV === 'development';\n\n static async validate<T extends StandardSchemaV1>(\n c: Context<any, string, {}>,\n data: unknown,\n schema?: T,\n ) {\n if (!schema) {\n return undefined;\n }\n\n const parsed = await Endpoint.validate(schema, data);\n\n if (parsed.issues) {\n return c.json(parsed.issues, 422);\n }\n\n return parsed.value;\n }\n addRoute(\n serviceDiscovery: ServiceDiscovery<ServiceRecord<TServices>, TLogger>,\n app: Hono,\n ): void {\n HonoEndpoint.addRoute(this.endpoint, serviceDiscovery, app);\n }\n\n static applyEventMiddleware(\n app: Hono,\n serviceDiscovery: ServiceDiscovery<any, any>,\n ) {\n app.use(async (c, next) => {\n await next();\n // @ts-ignore\n const endpoint = c.get('__endpoint') as Endpoint<\n any,\n any,\n any,\n any,\n any,\n any,\n any,\n any\n >;\n // @ts-ignore\n const response = c.get('__response') as InferStandardSchema<TOutSchema>;\n // @ts-ignore\n const logger = c.get('__logger') as Logger;\n\n if (Endpoint.isSuccessStatus(c.res.status) && endpoint) {\n await publishConstructEvents<any, any>(\n endpoint,\n response,\n serviceDiscovery,\n logger,\n );\n }\n });\n }\n\n static async fromRoutes<TLogger extends Logger, TServices extends Service[]>(\n routes: string[],\n envParser: EnvironmentParser<{}>,\n app = new Hono(),\n logger: TLogger,\n cwd = process.cwd(),\n options?: HonoEndpointOptions,\n ): Promise<Hono> {\n const endpoints = await getEndpointsFromRoutes<TServices>(routes, cwd);\n const serviceDiscovery = ServiceDiscovery.getInstance<\n ServiceRecord<TServices>,\n TLogger\n >(logger, envParser);\n\n HonoEndpoint.addRoutes(endpoints, serviceDiscovery, app, options);\n\n return app;\n }\n\n static addRoutes<\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n >(\n endpoints: Endpoint<string, HttpMethod, any, any, TServices, TLogger>[],\n serviceDiscovery: ServiceDiscovery<ServiceRecord<TServices>, TLogger>,\n app: Hono,\n options?: HonoEndpointOptions,\n ): void {\n // Add timing middleware (always enabled)\n app.use('*', timing());\n\n // Add logger middleware in development mode\n\n if (HonoEndpoint.isDev) {\n app.use('*', honoLogger());\n }\n\n // Add docs route if not disabled\n const docsPath =\n options?.docsPath !== false ? options?.docsPath || '/docs' : null;\n if (docsPath) {\n HonoEndpoint.addDocsRoute(\n endpoints,\n app,\n docsPath,\n options?.openApiOptions,\n );\n }\n\n // Sort endpoints to ensure static routes come before dynamic ones\n const sortedEndpoints = endpoints.sort((a, b) => {\n const aSegments = a.route.split('/');\n const bSegments = b.route.split('/');\n\n // Compare each segment\n for (let i = 0; i < Math.max(aSegments.length, bSegments.length); i++) {\n const aSegment = aSegments[i] || '';\n const bSegment = bSegments[i] || '';\n\n // If one is dynamic and the other is not, static comes first\n const aIsDynamic = aSegment.startsWith(':');\n const bIsDynamic = bSegment.startsWith(':');\n\n if (!aIsDynamic && bIsDynamic) return -1;\n if (aIsDynamic && !bIsDynamic) return 1;\n\n // If both are the same type, compare alphabetically\n if (aSegment !== bSegment) {\n return aSegment.localeCompare(bSegment);\n }\n }\n\n return 0;\n });\n HonoEndpoint.applyEventMiddleware(app, serviceDiscovery);\n for (const endpoint of sortedEndpoints) {\n HonoEndpoint.addRoute(endpoint, serviceDiscovery, app);\n }\n }\n\n static addRoute<\n TRoute extends string,\n TMethod extends HttpMethod,\n TInput extends EndpointSchemas = {},\n TOutSchema extends StandardSchemaV1 | undefined = undefined,\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n TSession = unknown,\n TEventPublisher extends EventPublisher<any> | undefined = undefined,\n >(\n endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >,\n serviceDiscovery: ServiceDiscovery<ServiceRecord<TServices>, TLogger>,\n app: Hono,\n ): void {\n const { route } = endpoint;\n const method = endpoint.method.toLowerCase() as LowerHttpMethod<TMethod>;\n\n app[method](\n route,\n validator('json', (value, c) =>\n HonoEndpoint.validate(c, value, endpoint.input?.body),\n ),\n validator('query', (_, c) => {\n const parsedQuery = parseHonoQuery(c);\n return HonoEndpoint.validate(c, parsedQuery, endpoint.input?.query);\n }),\n validator('param', (params, c) =>\n HonoEndpoint.validate(c, params, endpoint.input?.params),\n ),\n async (c) => {\n const logger = endpoint.logger.child({\n endpoint: endpoint.fullPath,\n route: endpoint.route,\n host: c.header('host'),\n method: endpoint.method,\n path: c.req.path,\n }) as TLogger;\n\n try {\n const headerValues = c.req.header();\n\n const header = Endpoint.createHeaders(headerValues);\n const cookie = Endpoint.createCookies(headerValues.cookie);\n\n const services = await serviceDiscovery.register(endpoint.services);\n\n const session = await endpoint.getSession({\n services,\n logger,\n header,\n cookie,\n });\n\n const isAuthorized = await endpoint.authorize({\n header,\n cookie,\n services,\n logger,\n session,\n });\n\n if (!isAuthorized) {\n logger.warn('Unauthorized access attempt');\n return c.json({ error: 'Unauthorized' }, 401);\n }\n\n // Check rate limit if configured\n if (endpoint.rateLimit) {\n const rateLimitInfo = await checkRateLimit(endpoint.rateLimit, {\n header,\n services,\n logger,\n session,\n path: c.req.path,\n method: endpoint.method,\n });\n\n // Set rate limit headers\n const rateLimitHeaders = getRateLimitHeaders(\n rateLimitInfo,\n endpoint.rateLimit,\n );\n for (const [key, value] of Object.entries(rateLimitHeaders)) {\n if (value) {\n c.header(key, value);\n }\n }\n }\n\n const responseBuilder = new ResponseBuilder();\n const response = await endpoint.handler(\n {\n services,\n logger,\n body: c.req.valid('json'),\n query: c.req.valid('query'),\n params: c.req.valid('param'),\n session,\n header: Endpoint.createHeaders(headerValues),\n cookie: Endpoint.createCookies(headerValues.cookie),\n } as unknown as EndpointContext<\n TInput,\n TServices,\n TLogger,\n TSession\n >,\n responseBuilder,\n );\n\n // Publish events if configured\n\n // Validate output if schema is defined\n\n try {\n // Check if response has metadata\n let data = response;\n let metadata = responseBuilder.getMetadata();\n let status = endpoint.status as ContentfulStatusCode;\n\n if (Endpoint.hasMetadata(response)) {\n data = response.data;\n metadata = response.metadata;\n }\n\n // Apply response metadata\n if (metadata.status) {\n status = metadata.status as ContentfulStatusCode;\n }\n\n if (metadata.headers) {\n for (const [key, value] of Object.entries(metadata.headers)) {\n c.header(key, value);\n }\n }\n\n if (metadata.cookies) {\n for (const [name, { value, options }] of metadata.cookies) {\n setCookie(c, name, value, options);\n }\n }\n\n const output = endpoint.outputSchema\n ? await endpoint.parseOutput(data)\n : ({} as any);\n // @ts-ignore\n c.set('__response', output);\n // @ts-ignore\n c.set('__endpoint', endpoint);\n // @ts-ignore\n c.set('__logger', logger);\n\n if (HonoEndpoint.isDev) {\n logger.info({ status, body: output }, 'Outgoing response');\n }\n\n return c.json(output, status);\n } catch (validationError: any) {\n logger.error(validationError, 'Output validation failed');\n const error = wrapError(\n validationError,\n 422,\n 'Response validation failed',\n );\n if (HonoEndpoint.isDev) {\n logger.info(\n { status: error.statusCode, body: error },\n 'Outgoing response',\n );\n }\n return c.json(error, error.statusCode as ContentfulStatusCode);\n }\n } catch (e: any) {\n logger.error(e, 'Error processing endpoint request');\n const error = wrapError(e, 500, 'Internal Server Error');\n if (HonoEndpoint.isDev) {\n logger.info(\n { status: error.statusCode, body: error },\n 'Outgoing response',\n );\n }\n return c.json(error, error.statusCode as ContentfulStatusCode);\n }\n },\n );\n }\n\n static addDocsRoute<\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n >(\n endpoints: Endpoint<string, HttpMethod, any, any, TServices, TLogger>[],\n app: Hono,\n docsPath: string,\n openApiOptions?: HonoEndpointOptions['openApiOptions'],\n ): void {\n app.get(docsPath, async (c) => {\n try {\n const openApiSchema = await Endpoint.buildOpenApiSchema(\n endpoints,\n openApiOptions,\n );\n\n return c.json(openApiSchema);\n } catch (error) {\n console.error('Error generating OpenAPI schema:', error);\n return c.json(\n { error: 'Failed to generate OpenAPI documentation' },\n 500,\n );\n }\n });\n }\n}\n"],"mappings":"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"}
@@ -1,12 +1,12 @@
1
- import { HttpMethod } from "./types-Bp9ysFXd.cjs";
2
- import { Endpoint, EndpointSchemas } from "./Endpoint-XUMNAXYy.cjs";
1
+ import { HttpMethod } from "./types-CVq20-fE.mjs";
2
+ import { Endpoint, EndpointSchemas } from "./Endpoint-C16whGI-.mjs";
3
+ import { EnvironmentParser } from "@geekmidas/envkit";
4
+ import { Service, ServiceDiscovery, ServiceRecord } from "@geekmidas/services";
5
+ import { Context, Hono } from "hono";
3
6
  import { EventPublisher } from "@geekmidas/events";
4
7
  import { Logger } from "@geekmidas/logger";
5
- import { Service, ServiceDiscovery, ServiceRecord } from "@geekmidas/services";
6
8
  import { StandardSchemaV1 } from "@standard-schema/spec";
7
- import { EnvironmentParser } from "@geekmidas/envkit";
8
- import * as hono_types2 from "hono/types";
9
- import { Context, Hono } from "hono";
9
+ import * as hono_types5 from "hono/types";
10
10
 
11
11
  //#region src/endpoints/HonoEndpointAdaptor.d.ts
12
12
  interface HonoEndpointOptions {
@@ -28,14 +28,15 @@ interface HonoEndpointOptions {
28
28
  declare class HonoEndpoint<TRoute extends string, TMethod extends HttpMethod, TInput extends EndpointSchemas = {}, TOutSchema extends StandardSchemaV1 | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, TSession = unknown, TEventPublisher extends EventPublisher<any> | undefined = undefined> {
29
29
  private readonly endpoint;
30
30
  constructor(endpoint: Endpoint<TRoute, TMethod, TInput, TOutSchema, TServices, TLogger, TSession, TEventPublisher>);
31
+ static isDev: boolean;
31
32
  static validate<T extends StandardSchemaV1>(c: Context<any, string, {}>, data: unknown, schema?: T): Promise<unknown>;
32
33
  addRoute(serviceDiscovery: ServiceDiscovery<ServiceRecord<TServices>, TLogger>, app: Hono): void;
33
34
  static applyEventMiddleware(app: Hono, serviceDiscovery: ServiceDiscovery<any, any>): void;
34
- static fromRoutes<TLogger extends Logger, TServices extends Service[]>(routes: string[], envParser: EnvironmentParser<{}>, app: Hono<hono_types2.BlankEnv, hono_types2.BlankSchema, "/"> | undefined, logger: TLogger, cwd?: string, options?: HonoEndpointOptions): Promise<Hono>;
35
+ static fromRoutes<TLogger extends Logger, TServices extends Service[]>(routes: string[], envParser: EnvironmentParser<{}>, app: Hono<hono_types5.BlankEnv, hono_types5.BlankSchema, "/"> | undefined, logger: TLogger, cwd?: string, options?: HonoEndpointOptions): Promise<Hono>;
35
36
  static addRoutes<TServices extends Service[] = [], TLogger extends Logger = Logger>(endpoints: Endpoint<string, HttpMethod, any, any, TServices, TLogger>[], serviceDiscovery: ServiceDiscovery<ServiceRecord<TServices>, TLogger>, app: Hono, options?: HonoEndpointOptions): void;
36
37
  static addRoute<TRoute extends string, TMethod extends HttpMethod, TInput extends EndpointSchemas = {}, TOutSchema extends StandardSchemaV1 | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, TSession = unknown, TEventPublisher extends EventPublisher<any> | undefined = undefined>(endpoint: Endpoint<TRoute, TMethod, TInput, TOutSchema, TServices, TLogger, TSession, TEventPublisher>, serviceDiscovery: ServiceDiscovery<ServiceRecord<TServices>, TLogger>, app: Hono): void;
37
38
  static addDocsRoute<TServices extends Service[] = [], TLogger extends Logger = Logger>(endpoints: Endpoint<string, HttpMethod, any, any, TServices, TLogger>[], app: Hono, docsPath: string, openApiOptions?: HonoEndpointOptions['openApiOptions']): void;
38
39
  }
39
40
  //#endregion
40
41
  export { HonoEndpoint, HonoEndpointOptions };
41
- //# sourceMappingURL=HonoEndpointAdaptor-BrbM9vxd.d.cts.map
42
+ //# sourceMappingURL=HonoEndpointAdaptor-DAsZoX2a.d.mts.map
@@ -1,12 +1,12 @@
1
- import { HttpMethod } from "./types-CVq20-fE.mjs";
2
- import { Endpoint, EndpointSchemas } from "./Endpoint-C7jPJzAH.mjs";
3
- import { EnvironmentParser } from "@geekmidas/envkit";
4
- import { Service, ServiceDiscovery, ServiceRecord } from "@geekmidas/services";
5
- import { Context, Hono } from "hono";
1
+ import { HttpMethod } from "./types-Bp9ysFXd.cjs";
2
+ import { Endpoint, EndpointSchemas } from "./Endpoint-zHPjZ35J.cjs";
6
3
  import { EventPublisher } from "@geekmidas/events";
7
4
  import { Logger } from "@geekmidas/logger";
5
+ import { Service, ServiceDiscovery, ServiceRecord } from "@geekmidas/services";
8
6
  import { StandardSchemaV1 } from "@standard-schema/spec";
7
+ import { EnvironmentParser } from "@geekmidas/envkit";
9
8
  import * as hono_types0 from "hono/types";
9
+ import { Context, Hono } from "hono";
10
10
 
11
11
  //#region src/endpoints/HonoEndpointAdaptor.d.ts
12
12
  interface HonoEndpointOptions {
@@ -28,6 +28,7 @@ interface HonoEndpointOptions {
28
28
  declare class HonoEndpoint<TRoute extends string, TMethod extends HttpMethod, TInput extends EndpointSchemas = {}, TOutSchema extends StandardSchemaV1 | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, TSession = unknown, TEventPublisher extends EventPublisher<any> | undefined = undefined> {
29
29
  private readonly endpoint;
30
30
  constructor(endpoint: Endpoint<TRoute, TMethod, TInput, TOutSchema, TServices, TLogger, TSession, TEventPublisher>);
31
+ static isDev: boolean;
31
32
  static validate<T extends StandardSchemaV1>(c: Context<any, string, {}>, data: unknown, schema?: T): Promise<unknown>;
32
33
  addRoute(serviceDiscovery: ServiceDiscovery<ServiceRecord<TServices>, TLogger>, app: Hono): void;
33
34
  static applyEventMiddleware(app: Hono, serviceDiscovery: ServiceDiscovery<any, any>): void;
@@ -38,4 +39,4 @@ declare class HonoEndpoint<TRoute extends string, TMethod extends HttpMethod, TI
38
39
  }
39
40
  //#endregion
40
41
  export { HonoEndpoint, HonoEndpointOptions };
41
- //# sourceMappingURL=HonoEndpointAdaptor-CxcYKdzT.d.mts.map
42
+ //# sourceMappingURL=HonoEndpointAdaptor-lYw6EN1Q.d.cts.map
@@ -1,13 +1,15 @@
1
1
  const require_chunk = require('./chunk-CUT6urMc.cjs');
2
2
  const require_publisher = require('./publisher-lFQleddL.cjs');
3
- const require_Endpoint = require('./Endpoint-COGAflGh.cjs');
4
- const require_helpers = require('./helpers-go4jiRvV.cjs');
3
+ const require_Endpoint = require('./Endpoint-Bghj0fiL.cjs');
4
+ const require_helpers = require('./helpers-BJrzAmhb.cjs');
5
5
  const require_parseHonoQuery = require('./parseHonoQuery-DopC24vB.cjs');
6
6
  const __geekmidas_errors = require_chunk.__toESM(require("@geekmidas/errors"));
7
7
  const __geekmidas_services = require_chunk.__toESM(require("@geekmidas/services"));
8
8
  const __geekmidas_rate_limit = require_chunk.__toESM(require("@geekmidas/rate-limit"));
9
9
  const hono = require_chunk.__toESM(require("hono"));
10
10
  const hono_cookie = require_chunk.__toESM(require("hono/cookie"));
11
+ const hono_logger = require_chunk.__toESM(require("hono/logger"));
12
+ const hono_timing = require_chunk.__toESM(require("hono/timing"));
11
13
  const hono_validator = require_chunk.__toESM(require("hono/validator"));
12
14
 
13
15
  //#region src/endpoints/HonoEndpointAdaptor.ts
@@ -15,6 +17,7 @@ var HonoEndpoint = class HonoEndpoint {
15
17
  constructor(endpoint) {
16
18
  this.endpoint = endpoint;
17
19
  }
20
+ static isDev = process.env.NODE_ENV === "development";
18
21
  static async validate(c, data, schema) {
19
22
  if (!schema) return void 0;
20
23
  const parsed = await require_Endpoint.Endpoint.validate(schema, data);
@@ -40,6 +43,8 @@ var HonoEndpoint = class HonoEndpoint {
40
43
  return app;
41
44
  }
42
45
  static addRoutes(endpoints, serviceDiscovery, app, options) {
46
+ app.use("*", (0, hono_timing.timing)());
47
+ if (HonoEndpoint.isDev) app.use("*", (0, hono_logger.logger)());
43
48
  const docsPath = options?.docsPath !== false ? options?.docsPath || "/docs" : null;
44
49
  if (docsPath) HonoEndpoint.addDocsRoute(endpoints, app, docsPath, options?.openApiOptions);
45
50
  const sortedEndpoints = endpoints.sort((a, b) => {
@@ -133,15 +138,27 @@ var HonoEndpoint = class HonoEndpoint {
133
138
  c.set("__response", output);
134
139
  c.set("__endpoint", endpoint);
135
140
  c.set("__logger", logger);
141
+ if (HonoEndpoint.isDev) logger.info({
142
+ status,
143
+ body: output
144
+ }, "Outgoing response");
136
145
  return c.json(output, status);
137
146
  } catch (validationError) {
138
147
  logger.error(validationError, "Output validation failed");
139
148
  const error = (0, __geekmidas_errors.wrapError)(validationError, 422, "Response validation failed");
149
+ if (HonoEndpoint.isDev) logger.info({
150
+ status: error.statusCode,
151
+ body: error
152
+ }, "Outgoing response");
140
153
  return c.json(error, error.statusCode);
141
154
  }
142
155
  } catch (e) {
143
156
  logger.error(e, "Error processing endpoint request");
144
157
  const error = (0, __geekmidas_errors.wrapError)(e, 500, "Internal Server Error");
158
+ if (HonoEndpoint.isDev) logger.info({
159
+ status: error.statusCode,
160
+ body: error
161
+ }, "Outgoing response");
145
162
  return c.json(error, error.statusCode);
146
163
  }
147
164
  });
@@ -166,4 +183,4 @@ Object.defineProperty(exports, 'HonoEndpoint', {
166
183
  return HonoEndpoint;
167
184
  }
168
185
  });
169
- //# sourceMappingURL=HonoEndpointAdaptor-Ds433Q8w.cjs.map
186
+ //# sourceMappingURL=HonoEndpointAdaptor-vWSpXdNp.cjs.map