@geekmidas/constructs 0.2.4 → 0.3.1

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 (373) hide show
  1. package/dist/{AWSLambdaFunction-gpqm7UBb.d.cts → AWSLambdaFunction-BdebRMUh.d.mts} +7 -5
  2. package/dist/AWSLambdaFunction-BdebRMUh.d.mts.map +1 -0
  3. package/dist/{AWSLambdaFunction-H65WfXLt.mjs → AWSLambdaFunction-C54a1doJ.mjs} +3 -3
  4. package/dist/AWSLambdaFunction-C54a1doJ.mjs.map +1 -0
  5. package/dist/{AWSLambdaFunction-D9RZhm0N.d.mts → AWSLambdaFunction-D0tEOTXQ.d.cts} +7 -5
  6. package/dist/AWSLambdaFunction-D0tEOTXQ.d.cts.map +1 -0
  7. package/dist/{AWSLambdaFunction-C-fuCLA3.cjs → AWSLambdaFunction-EPGY4s7i.cjs} +3 -3
  8. package/dist/AWSLambdaFunction-EPGY4s7i.cjs.map +1 -0
  9. package/dist/{AWSLambdaSubscriberAdaptor-CyFh7MN8.mjs → AWSLambdaSubscriberAdaptor-BLfO612H.mjs} +5 -3
  10. package/dist/{AWSLambdaSubscriberAdaptor-CyFh7MN8.mjs.map → AWSLambdaSubscriberAdaptor-BLfO612H.mjs.map} +1 -1
  11. package/dist/{AWSLambdaSubscriberAdaptor-Dum5bkw3.cjs → AWSLambdaSubscriberAdaptor-BNcYYZ-P.cjs} +5 -3
  12. package/dist/{AWSLambdaSubscriberAdaptor-Dum5bkw3.cjs.map → AWSLambdaSubscriberAdaptor-BNcYYZ-P.cjs.map} +1 -1
  13. package/dist/{AWSLambdaSubscriberAdaptor-C0aZBU64.d.mts → AWSLambdaSubscriberAdaptor-DrFAvHOp.d.mts} +4 -2
  14. package/dist/AWSLambdaSubscriberAdaptor-DrFAvHOp.d.mts.map +1 -0
  15. package/dist/{AWSLambdaSubscriberAdaptor-DT8icDRf.d.cts → AWSLambdaSubscriberAdaptor-Dx-Ks1Jp.d.cts} +4 -2
  16. package/dist/AWSLambdaSubscriberAdaptor-Dx-Ks1Jp.d.cts.map +1 -0
  17. package/dist/{AmazonApiGatewayEndpointAdaptor-pEWzF2uY.mjs → AmazonApiGatewayEndpointAdaptor-BT9JXihC.mjs} +2 -2
  18. package/dist/{AmazonApiGatewayEndpointAdaptor-pEWzF2uY.mjs.map → AmazonApiGatewayEndpointAdaptor-BT9JXihC.mjs.map} +1 -1
  19. package/dist/{AmazonApiGatewayEndpointAdaptor-CbJqLU6I.d.cts → AmazonApiGatewayEndpointAdaptor-DLqnYQ4E.d.cts} +5 -3
  20. package/dist/AmazonApiGatewayEndpointAdaptor-DLqnYQ4E.d.cts.map +1 -0
  21. package/dist/{AmazonApiGatewayEndpointAdaptor-Bk6ssx3K.cjs → AmazonApiGatewayEndpointAdaptor-DNFvvdmW.cjs} +2 -2
  22. package/dist/{AmazonApiGatewayEndpointAdaptor-Bk6ssx3K.cjs.map → AmazonApiGatewayEndpointAdaptor-DNFvvdmW.cjs.map} +1 -1
  23. package/dist/{AmazonApiGatewayEndpointAdaptor-DC3N7zY_.d.mts → AmazonApiGatewayEndpointAdaptor-qlKXuZxy.d.mts} +5 -3
  24. package/dist/AmazonApiGatewayEndpointAdaptor-qlKXuZxy.d.mts.map +1 -0
  25. package/dist/{AmazonApiGatewayV1EndpointAdaptor-MJpRbIaQ.mjs → AmazonApiGatewayV1EndpointAdaptor-CShQI8Gk.mjs} +3 -3
  26. package/dist/AmazonApiGatewayV1EndpointAdaptor-CShQI8Gk.mjs.map +1 -0
  27. package/dist/{AmazonApiGatewayV1EndpointAdaptor-uBp_4zLf.cjs → AmazonApiGatewayV1EndpointAdaptor-Ccl8B8kG.cjs} +3 -3
  28. package/dist/AmazonApiGatewayV1EndpointAdaptor-Ccl8B8kG.cjs.map +1 -0
  29. package/dist/{AmazonApiGatewayV1EndpointAdaptor-BVxgQ-7J.d.mts → AmazonApiGatewayV1EndpointAdaptor-DyUaJIhB.d.cts} +8 -6
  30. package/dist/AmazonApiGatewayV1EndpointAdaptor-DyUaJIhB.d.cts.map +1 -0
  31. package/dist/{AmazonApiGatewayV1EndpointAdaptor-CVwJ5k16.d.cts → AmazonApiGatewayV1EndpointAdaptor-MRUxs3Xi.d.mts} +8 -6
  32. package/dist/AmazonApiGatewayV1EndpointAdaptor-MRUxs3Xi.d.mts.map +1 -0
  33. package/dist/{AmazonApiGatewayV2EndpointAdaptor-I1W23Nvn.cjs → AmazonApiGatewayV2EndpointAdaptor-D8-0Aab4.cjs} +3 -3
  34. package/dist/AmazonApiGatewayV2EndpointAdaptor-D8-0Aab4.cjs.map +1 -0
  35. package/dist/{AmazonApiGatewayV2EndpointAdaptor-1oBZdQH3.d.cts → AmazonApiGatewayV2EndpointAdaptor-M1-w0U5R.d.cts} +6 -4
  36. package/dist/AmazonApiGatewayV2EndpointAdaptor-M1-w0U5R.d.cts.map +1 -0
  37. package/dist/{AmazonApiGatewayV2EndpointAdaptor-C3H8Hpv7.d.mts → AmazonApiGatewayV2EndpointAdaptor-fuLM6M9k.d.mts} +6 -4
  38. package/dist/AmazonApiGatewayV2EndpointAdaptor-fuLM6M9k.d.mts.map +1 -0
  39. package/dist/{AmazonApiGatewayV2EndpointAdaptor-ChO8BlDz.mjs → AmazonApiGatewayV2EndpointAdaptor-lCRzGE4q.mjs} +3 -3
  40. package/dist/AmazonApiGatewayV2EndpointAdaptor-lCRzGE4q.mjs.map +1 -0
  41. package/dist/{Authorizer-CpSUMTIs.d.cts → Authorizer-B-btowNd.d.cts} +2 -1
  42. package/dist/Authorizer-B-btowNd.d.cts.map +1 -0
  43. package/dist/{Authorizer-Cpx59w_q.d.mts → Authorizer-gWxYsGEp.d.mts} +2 -1
  44. package/dist/Authorizer-gWxYsGEp.d.mts.map +1 -0
  45. package/dist/{BaseFunctionBuilder-CoV7J45W.d.mts → BaseFunctionBuilder-BAtutR6q.d.cts} +5 -3
  46. package/dist/BaseFunctionBuilder-BAtutR6q.d.cts.map +1 -0
  47. package/dist/{BaseFunctionBuilder-B5gkW0Kt.mjs → BaseFunctionBuilder-Czi1Jwza.mjs} +2 -2
  48. package/dist/{BaseFunctionBuilder-B5gkW0Kt.mjs.map → BaseFunctionBuilder-Czi1Jwza.mjs.map} +1 -1
  49. package/dist/{BaseFunctionBuilder-DaQA0uKE.d.cts → BaseFunctionBuilder-DRY419e7.d.mts} +5 -3
  50. package/dist/BaseFunctionBuilder-DRY419e7.d.mts.map +1 -0
  51. package/dist/{BaseFunctionBuilder-C5Se7pdL.cjs → BaseFunctionBuilder-MYG3C9ug.cjs} +2 -2
  52. package/dist/{BaseFunctionBuilder-C5Se7pdL.cjs.map → BaseFunctionBuilder-MYG3C9ug.cjs.map} +1 -1
  53. package/dist/{Construct-BYSPikVm.cjs → Construct-Ba5cMxib.cjs} +2 -2
  54. package/dist/{Construct-BYSPikVm.cjs.map → Construct-Ba5cMxib.cjs.map} +1 -1
  55. package/dist/{Construct-Dkd8Kvc9.d.cts → Construct-C4rPE67v.d.cts} +8 -7
  56. package/dist/Construct-C4rPE67v.d.cts.map +1 -0
  57. package/dist/{Construct-LWeB1rSQ.mjs → Construct-DdyGHuag.mjs} +2 -2
  58. package/dist/{Construct-LWeB1rSQ.mjs.map → Construct-DdyGHuag.mjs.map} +1 -1
  59. package/dist/{Construct-jBKqb-Zi.d.mts → Construct-XrijZFFh.d.mts} +8 -7
  60. package/dist/Construct-XrijZFFh.d.mts.map +1 -0
  61. package/dist/Construct.cjs +1 -1
  62. package/dist/Construct.d.cts +1 -1
  63. package/dist/Construct.d.mts +1 -1
  64. package/dist/Construct.mjs +1 -1
  65. package/dist/{Cron-Dy_HW2Vv.mjs → Cron-BxhGs5up.mjs} +3 -3
  66. package/dist/{Cron-Dy_HW2Vv.mjs.map → Cron-BxhGs5up.mjs.map} +1 -1
  67. package/dist/{Cron-Bi3QOge_.cjs → Cron-CGF4YAfM.cjs} +3 -3
  68. package/dist/{Cron-Bi3QOge_.cjs.map → Cron-CGF4YAfM.cjs.map} +1 -1
  69. package/dist/{Cron-7VPR2cNR.d.cts → Cron-bDLcTvV5.d.cts} +4 -4
  70. package/dist/Cron-bDLcTvV5.d.cts.map +1 -0
  71. package/dist/{Cron-JZkp_fHy.d.mts → Cron-cdjlSKNp.d.mts} +4 -4
  72. package/dist/Cron-cdjlSKNp.d.mts.map +1 -0
  73. package/dist/{CronBuilder-290th4zF.d.cts → CronBuilder-BC4m5-p1.d.mts} +7 -5
  74. package/dist/CronBuilder-BC4m5-p1.d.mts.map +1 -0
  75. package/dist/{CronBuilder-Dv_w7Yri.cjs → CronBuilder-CcxKRtVP.cjs} +4 -4
  76. package/dist/CronBuilder-CcxKRtVP.cjs.map +1 -0
  77. package/dist/{CronBuilder-BmFDO0Dm.d.mts → CronBuilder-DKVXyE0Q.d.cts} +7 -5
  78. package/dist/CronBuilder-DKVXyE0Q.d.cts.map +1 -0
  79. package/dist/{CronBuilder-Bl3A2Zp4.mjs → CronBuilder-d2jh-IB2.mjs} +4 -4
  80. package/dist/CronBuilder-d2jh-IB2.mjs.map +1 -0
  81. package/dist/{Endpoint-CC2RGjkl.d.cts → Endpoint-BPv9_-m_.d.cts} +6 -4
  82. package/dist/Endpoint-BPv9_-m_.d.cts.map +1 -0
  83. package/dist/{Endpoint-BJo9Hhwm.cjs → Endpoint-BVGZXFyV.cjs} +3 -3
  84. package/dist/{Endpoint-BJo9Hhwm.cjs.map → Endpoint-BVGZXFyV.cjs.map} +1 -1
  85. package/dist/{Endpoint-C5djXyae.d.mts → Endpoint-BdwG75G_.d.mts} +6 -4
  86. package/dist/Endpoint-BdwG75G_.d.mts.map +1 -0
  87. package/dist/{Endpoint-B70_KKhu.mjs → Endpoint-CuOEswxJ.mjs} +3 -3
  88. package/dist/{Endpoint-B70_KKhu.mjs.map → Endpoint-CuOEswxJ.mjs.map} +1 -1
  89. package/dist/{EndpointBuilder-CD8LkBda.d.mts → EndpointBuilder-B3az942t.d.mts} +7 -5
  90. package/dist/EndpointBuilder-B3az942t.d.mts.map +1 -0
  91. package/dist/{EndpointBuilder-DeswNQdG.cjs → EndpointBuilder-Cgj1P_ra.cjs} +4 -4
  92. package/dist/EndpointBuilder-Cgj1P_ra.cjs.map +1 -0
  93. package/dist/{EndpointBuilder-vXk6eIJk.d.cts → EndpointBuilder-DIy_m1bu.d.cts} +7 -5
  94. package/dist/EndpointBuilder-DIy_m1bu.d.cts.map +1 -0
  95. package/dist/{EndpointBuilder-FyyoFTJ5.mjs → EndpointBuilder-DnCB1h1j.mjs} +4 -4
  96. package/dist/EndpointBuilder-DnCB1h1j.mjs.map +1 -0
  97. package/dist/{EndpointFactory-jAkQxWRj.d.mts → EndpointFactory-C-0nE6Jg.d.mts} +6 -4
  98. package/dist/EndpointFactory-C-0nE6Jg.d.mts.map +1 -0
  99. package/dist/{EndpointFactory-eZc-XpNm.cjs → EndpointFactory-CYj6BYok.cjs} +2 -2
  100. package/dist/{EndpointFactory-eZc-XpNm.cjs.map → EndpointFactory-CYj6BYok.cjs.map} +1 -1
  101. package/dist/{EndpointFactory-CAneQs06.mjs → EndpointFactory-CbdxPCIH.mjs} +2 -2
  102. package/dist/{EndpointFactory-CAneQs06.mjs.map → EndpointFactory-CbdxPCIH.mjs.map} +1 -1
  103. package/dist/{EndpointFactory-D8I4NNCo.d.cts → EndpointFactory-CyPbm3AD.d.cts} +6 -4
  104. package/dist/EndpointFactory-CyPbm3AD.d.cts.map +1 -0
  105. package/dist/{Function-DfKsM5Kx.mjs → Function-BVHqIDp9.mjs} +2 -2
  106. package/dist/{Function-DfKsM5Kx.mjs.map → Function-BVHqIDp9.mjs.map} +1 -1
  107. package/dist/{Function-DHD1V9QW.d.cts → Function-Cf7f_kCz.d.cts} +5 -5
  108. package/dist/Function-Cf7f_kCz.d.cts.map +1 -0
  109. package/dist/{Function-DagDbeXo.cjs → Function-DDZb1525.cjs} +2 -2
  110. package/dist/{Function-DagDbeXo.cjs.map → Function-DDZb1525.cjs.map} +1 -1
  111. package/dist/{Function-Vh1t-Qjj.d.mts → Function-DN2G6OT5.d.mts} +5 -5
  112. package/dist/Function-DN2G6OT5.d.mts.map +1 -0
  113. package/dist/{FunctionBuilder-3jsoFffg.d.mts → FunctionBuilder-CJBzzXL3.d.cts} +7 -5
  114. package/dist/FunctionBuilder-CJBzzXL3.d.cts.map +1 -0
  115. package/dist/{FunctionBuilder-CVT7bG2o.mjs → FunctionBuilder-CrDYgfiI.mjs} +4 -4
  116. package/dist/FunctionBuilder-CrDYgfiI.mjs.map +1 -0
  117. package/dist/{FunctionBuilder-FV6r3I7X.d.cts → FunctionBuilder-Cxx8D2na.d.mts} +7 -5
  118. package/dist/FunctionBuilder-Cxx8D2na.d.mts.map +1 -0
  119. package/dist/{FunctionBuilder-DXvG_XD-.cjs → FunctionBuilder-DswJ-9sD.cjs} +4 -4
  120. package/dist/FunctionBuilder-DswJ-9sD.cjs.map +1 -0
  121. package/dist/{FunctionExecutionWrapper-DkNycmOh.cjs → FunctionExecutionWrapper-BYI2bGTL.cjs} +2 -2
  122. package/dist/{FunctionExecutionWrapper-DkNycmOh.cjs.map → FunctionExecutionWrapper-BYI2bGTL.cjs.map} +1 -1
  123. package/dist/{FunctionExecutionWrapper-Bubnr0zA.mjs → FunctionExecutionWrapper-CLDh7Z2_.mjs} +2 -2
  124. package/dist/{FunctionExecutionWrapper-Bubnr0zA.mjs.map → FunctionExecutionWrapper-CLDh7Z2_.mjs.map} +1 -1
  125. package/dist/{FunctionExecutionWrapper-CI3CaoCo.d.mts → FunctionExecutionWrapper-DF260Aaj.d.mts} +4 -2
  126. package/dist/FunctionExecutionWrapper-DF260Aaj.d.mts.map +1 -0
  127. package/dist/{FunctionExecutionWrapper-DYt3C8b9.d.cts → FunctionExecutionWrapper-Qy8bmgFR.d.cts} +4 -2
  128. package/dist/FunctionExecutionWrapper-Qy8bmgFR.d.cts.map +1 -0
  129. package/dist/{HonoEndpointAdaptor-BusUWu1w.d.cts → HonoEndpointAdaptor-Bqm6SEuP.d.cts} +8 -6
  130. package/dist/HonoEndpointAdaptor-Bqm6SEuP.d.cts.map +1 -0
  131. package/dist/{HonoEndpointAdaptor-DodwLM0-.cjs → HonoEndpointAdaptor-CQe2FqMR.cjs} +5 -6
  132. package/dist/{HonoEndpointAdaptor-DodwLM0-.cjs.map → HonoEndpointAdaptor-CQe2FqMR.cjs.map} +1 -1
  133. package/dist/{HonoEndpointAdaptor-g8xxh3tS.d.mts → HonoEndpointAdaptor-CRe-ij5f.d.mts} +8 -6
  134. package/dist/HonoEndpointAdaptor-CRe-ij5f.d.mts.map +1 -0
  135. package/dist/{HonoEndpointAdaptor-CcvXzoYV.mjs → HonoEndpointAdaptor-Ce-2HBxn.mjs} +5 -6
  136. package/dist/{HonoEndpointAdaptor-CcvXzoYV.mjs.map → HonoEndpointAdaptor-Ce-2HBxn.mjs.map} +1 -1
  137. package/dist/{Subscriber-DOt3svUC.cjs → Subscriber-BiHjVXtM.cjs} +2 -2
  138. package/dist/Subscriber-BiHjVXtM.cjs.map +1 -0
  139. package/dist/{Subscriber-kCHbH2fZ.mjs → Subscriber-BmPf9GFb.mjs} +2 -2
  140. package/dist/Subscriber-BmPf9GFb.mjs.map +1 -0
  141. package/dist/{Subscriber-DMSzvO_J.d.cts → Subscriber-COYMSevD.d.cts} +6 -6
  142. package/dist/Subscriber-COYMSevD.d.cts.map +1 -0
  143. package/dist/{Subscriber-aNr1qkxR.d.mts → Subscriber-ikctpU3I.d.mts} +6 -6
  144. package/dist/Subscriber-ikctpU3I.d.mts.map +1 -0
  145. package/dist/{SubscriberBuilder-Cj2u9k5Q.cjs → SubscriberBuilder-Cp1C-xtT.cjs} +2 -2
  146. package/dist/{SubscriberBuilder-Cj2u9k5Q.cjs.map → SubscriberBuilder-Cp1C-xtT.cjs.map} +1 -1
  147. package/dist/{SubscriberBuilder-DmxMU89X.mjs → SubscriberBuilder-DJPEeYDJ.mjs} +2 -2
  148. package/dist/{SubscriberBuilder-DmxMU89X.mjs.map → SubscriberBuilder-DJPEeYDJ.mjs.map} +1 -1
  149. package/dist/{SubscriberBuilder-BxJM3Hz_.d.cts → SubscriberBuilder-D_9zzllj.d.mts} +5 -3
  150. package/dist/SubscriberBuilder-D_9zzllj.d.mts.map +1 -0
  151. package/dist/{SubscriberBuilder-CWS4tdbp.d.mts → SubscriberBuilder-ivHAGIVi.d.cts} +5 -3
  152. package/dist/SubscriberBuilder-ivHAGIVi.d.cts.map +1 -0
  153. package/dist/{TestEndpointAdaptor-1pPixE6y.mjs → TestEndpointAdaptor-BXTofAKc.mjs} +17 -2
  154. package/dist/TestEndpointAdaptor-BXTofAKc.mjs.map +1 -0
  155. package/dist/{TestEndpointAdaptor-5-unBV8O.d.mts → TestEndpointAdaptor-C10xBI--.d.cts} +4 -4
  156. package/dist/TestEndpointAdaptor-C10xBI--.d.cts.map +1 -0
  157. package/dist/{TestEndpointAdaptor-wA-fmq4v.cjs → TestEndpointAdaptor-D9IwhIYg.cjs} +17 -2
  158. package/dist/TestEndpointAdaptor-D9IwhIYg.cjs.map +1 -0
  159. package/dist/{TestEndpointAdaptor-Bm0UjDtV.d.cts → TestEndpointAdaptor-DB7bREhS.d.mts} +4 -4
  160. package/dist/TestEndpointAdaptor-DB7bREhS.d.mts.map +1 -0
  161. package/dist/adaptors/aws.cjs +13 -13
  162. package/dist/adaptors/aws.d.cts +15 -15
  163. package/dist/adaptors/aws.d.mts +15 -15
  164. package/dist/adaptors/aws.mjs +13 -13
  165. package/dist/adaptors/hono.cjs +9 -9
  166. package/dist/adaptors/hono.d.cts +9 -9
  167. package/dist/adaptors/hono.d.mts +9 -9
  168. package/dist/adaptors/hono.mjs +9 -9
  169. package/dist/adaptors/testing.cjs +7 -7
  170. package/dist/adaptors/testing.d.cts +9 -9
  171. package/dist/adaptors/testing.d.mts +9 -9
  172. package/dist/adaptors/testing.mjs +7 -7
  173. package/dist/crons/Cron.cjs +6 -6
  174. package/dist/crons/Cron.d.cts +6 -6
  175. package/dist/crons/Cron.d.mts +6 -6
  176. package/dist/crons/Cron.mjs +6 -6
  177. package/dist/crons/CronBuilder.cjs +7 -7
  178. package/dist/crons/CronBuilder.d.cts +7 -7
  179. package/dist/crons/CronBuilder.d.mts +7 -7
  180. package/dist/crons/CronBuilder.mjs +7 -7
  181. package/dist/crons/index.cjs +7 -7
  182. package/dist/crons/index.d.cts +9 -7
  183. package/dist/crons/index.d.cts.map +1 -0
  184. package/dist/crons/index.d.mts +13 -11
  185. package/dist/crons/index.d.mts.map +1 -0
  186. package/dist/crons/index.mjs +7 -7
  187. package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.cjs +7 -7
  188. package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.d.cts +9 -9
  189. package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.d.mts +9 -9
  190. package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.mjs +7 -7
  191. package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.cjs +9 -9
  192. package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.d.cts +10 -10
  193. package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.d.mts +10 -10
  194. package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.mjs +9 -9
  195. package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.cjs +9 -9
  196. package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.d.cts +10 -10
  197. package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.d.mts +10 -10
  198. package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.mjs +9 -9
  199. package/dist/endpoints/Authorizer.d.cts +1 -1
  200. package/dist/endpoints/Authorizer.d.mts +1 -1
  201. package/dist/endpoints/Endpoint.cjs +6 -6
  202. package/dist/endpoints/Endpoint.d.cts +8 -8
  203. package/dist/endpoints/Endpoint.d.mts +8 -8
  204. package/dist/endpoints/Endpoint.mjs +6 -6
  205. package/dist/endpoints/EndpointBuilder.cjs +7 -7
  206. package/dist/endpoints/EndpointBuilder.d.cts +9 -9
  207. package/dist/endpoints/EndpointBuilder.d.mts +9 -9
  208. package/dist/endpoints/EndpointBuilder.mjs +7 -7
  209. package/dist/endpoints/EndpointFactory.cjs +8 -8
  210. package/dist/endpoints/EndpointFactory.d.cts +10 -10
  211. package/dist/endpoints/EndpointFactory.d.mts +10 -10
  212. package/dist/endpoints/EndpointFactory.mjs +8 -8
  213. package/dist/endpoints/HonoEndpointAdaptor.cjs +9 -9
  214. package/dist/endpoints/HonoEndpointAdaptor.d.cts +9 -9
  215. package/dist/endpoints/HonoEndpointAdaptor.d.mts +9 -9
  216. package/dist/endpoints/HonoEndpointAdaptor.mjs +9 -9
  217. package/dist/endpoints/TestEndpointAdaptor.cjs +7 -7
  218. package/dist/endpoints/TestEndpointAdaptor.d.cts +9 -9
  219. package/dist/endpoints/TestEndpointAdaptor.d.mts +9 -9
  220. package/dist/endpoints/TestEndpointAdaptor.mjs +7 -7
  221. package/dist/endpoints/audit.d.cts +8 -8
  222. package/dist/endpoints/audit.d.mts +8 -8
  223. package/dist/endpoints/helpers.cjs +7 -7
  224. package/dist/endpoints/helpers.d.cts +9 -8
  225. package/dist/endpoints/helpers.d.cts.map +1 -0
  226. package/dist/endpoints/helpers.d.mts +9 -8
  227. package/dist/endpoints/helpers.d.mts.map +1 -0
  228. package/dist/endpoints/helpers.mjs +7 -7
  229. package/dist/endpoints/index.cjs +8 -8
  230. package/dist/endpoints/index.d.cts +14 -12
  231. package/dist/endpoints/index.d.cts.map +1 -0
  232. package/dist/endpoints/index.d.mts +14 -12
  233. package/dist/endpoints/index.d.mts.map +1 -0
  234. package/dist/endpoints/index.mjs +8 -8
  235. package/dist/endpoints/parseHonoQuery.cjs +1 -1
  236. package/dist/endpoints/parseHonoQuery.d.cts +2 -0
  237. package/dist/endpoints/parseHonoQuery.d.cts.map +1 -0
  238. package/dist/endpoints/parseHonoQuery.d.mts +2 -0
  239. package/dist/endpoints/parseHonoQuery.d.mts.map +1 -0
  240. package/dist/endpoints/parseHonoQuery.mjs +1 -1
  241. package/dist/endpoints/parseQueryParams.cjs +1 -1
  242. package/dist/endpoints/parseQueryParams.d.cts +1 -0
  243. package/dist/endpoints/parseQueryParams.d.cts.map +1 -0
  244. package/dist/endpoints/parseQueryParams.d.mts +1 -0
  245. package/dist/endpoints/parseQueryParams.d.mts.map +1 -0
  246. package/dist/endpoints/parseQueryParams.mjs +1 -1
  247. package/dist/endpoints/processAudits.d.cts +10 -8
  248. package/dist/endpoints/processAudits.d.cts.map +1 -0
  249. package/dist/endpoints/processAudits.d.mts +10 -8
  250. package/dist/endpoints/processAudits.d.mts.map +1 -0
  251. package/dist/endpoints/rls.d.cts +8 -8
  252. package/dist/endpoints/rls.d.mts +8 -8
  253. package/dist/functions/AWSLambdaFunction.cjs +6 -6
  254. package/dist/functions/AWSLambdaFunction.d.cts +4 -4
  255. package/dist/functions/AWSLambdaFunction.d.mts +4 -4
  256. package/dist/functions/AWSLambdaFunction.mjs +6 -6
  257. package/dist/functions/BaseFunctionBuilder.cjs +2 -2
  258. package/dist/functions/BaseFunctionBuilder.d.cts +2 -2
  259. package/dist/functions/BaseFunctionBuilder.d.mts +2 -2
  260. package/dist/functions/BaseFunctionBuilder.mjs +2 -2
  261. package/dist/functions/Function.cjs +2 -2
  262. package/dist/functions/Function.d.cts +2 -2
  263. package/dist/functions/Function.d.mts +2 -2
  264. package/dist/functions/Function.mjs +2 -2
  265. package/dist/functions/FunctionBuilder.cjs +4 -4
  266. package/dist/functions/FunctionBuilder.d.cts +4 -4
  267. package/dist/functions/FunctionBuilder.d.mts +4 -4
  268. package/dist/functions/FunctionBuilder.mjs +4 -4
  269. package/dist/functions/FunctionExecutionWrapper.cjs +5 -5
  270. package/dist/functions/FunctionExecutionWrapper.d.cts +3 -3
  271. package/dist/functions/FunctionExecutionWrapper.d.mts +3 -3
  272. package/dist/functions/FunctionExecutionWrapper.mjs +5 -5
  273. package/dist/functions/TestFunctionAdaptor.cjs +4 -4
  274. package/dist/functions/TestFunctionAdaptor.d.cts +4 -2
  275. package/dist/functions/TestFunctionAdaptor.d.cts.map +1 -0
  276. package/dist/functions/TestFunctionAdaptor.d.mts +4 -2
  277. package/dist/functions/TestFunctionAdaptor.d.mts.map +1 -0
  278. package/dist/functions/TestFunctionAdaptor.mjs +4 -4
  279. package/dist/functions/index.cjs +5 -5
  280. package/dist/functions/index.d.cts +5 -5
  281. package/dist/functions/index.d.mts +5 -5
  282. package/dist/functions/index.mjs +5 -5
  283. package/dist/functions-C6EK1xL6.mjs +8 -0
  284. package/dist/{functions-JhRsNoAZ.mjs.map → functions-C6EK1xL6.mjs.map} +1 -1
  285. package/dist/{functions-FCb-wWFC.cjs → functions-fTid0RMK.cjs} +2 -2
  286. package/dist/{functions-FCb-wWFC.cjs.map → functions-fTid0RMK.cjs.map} +1 -1
  287. package/dist/{helpers-DxxSpLfw.cjs → helpers-BcP1tXAi.cjs} +2 -2
  288. package/dist/{helpers-DxxSpLfw.cjs.map → helpers-BcP1tXAi.cjs.map} +1 -1
  289. package/dist/{helpers-C3B2lVrM.mjs → helpers-ByRTDO_m.mjs} +2 -2
  290. package/dist/{helpers-C3B2lVrM.mjs.map → helpers-ByRTDO_m.mjs.map} +1 -1
  291. package/dist/{index-CFyaRrck.d.mts → index-BWzGIj06.d.mts} +4 -2
  292. package/dist/index-BWzGIj06.d.mts.map +1 -0
  293. package/dist/index-SI4V0XwK.d.cts +12 -0
  294. package/dist/index-SI4V0XwK.d.cts.map +1 -0
  295. package/dist/index.cjs +1 -1
  296. package/dist/index.d.cts +2 -2
  297. package/dist/index.d.mts +2 -2
  298. package/dist/index.mjs +1 -1
  299. package/dist/{parseHonoQuery-CT8Cvin-.cjs → parseHonoQuery-CZC5_97v.cjs} +3 -1
  300. package/dist/parseHonoQuery-CZC5_97v.cjs.map +1 -0
  301. package/dist/{parseHonoQuery-CwFKw2ua.mjs → parseHonoQuery-DDgIkTO4.mjs} +3 -1
  302. package/dist/parseHonoQuery-DDgIkTO4.mjs.map +1 -0
  303. package/dist/{parseQueryParams-CwvXXwkW.cjs → parseQueryParams-BSNkjmZ9.cjs} +3 -1
  304. package/dist/parseQueryParams-BSNkjmZ9.cjs.map +1 -0
  305. package/dist/{parseQueryParams-CHINupbZ.mjs → parseQueryParams-UMTRnRrW.mjs} +3 -1
  306. package/dist/parseQueryParams-UMTRnRrW.mjs.map +1 -0
  307. package/dist/publisher.d.cts +4 -2
  308. package/dist/publisher.d.cts.map +1 -0
  309. package/dist/publisher.d.mts +4 -2
  310. package/dist/publisher.d.mts.map +1 -0
  311. package/dist/subscribers/AWSLambdaSubscriberAdaptor.cjs +1 -1
  312. package/dist/subscribers/AWSLambdaSubscriberAdaptor.d.cts +3 -3
  313. package/dist/subscribers/AWSLambdaSubscriberAdaptor.d.mts +3 -3
  314. package/dist/subscribers/AWSLambdaSubscriberAdaptor.mjs +1 -1
  315. package/dist/subscribers/Subscriber.cjs +2 -2
  316. package/dist/subscribers/Subscriber.d.cts +2 -2
  317. package/dist/subscribers/Subscriber.d.mts +2 -2
  318. package/dist/subscribers/Subscriber.mjs +2 -2
  319. package/dist/subscribers/SubscriberBuilder.cjs +3 -3
  320. package/dist/subscribers/SubscriberBuilder.d.cts +3 -3
  321. package/dist/subscribers/SubscriberBuilder.d.mts +3 -3
  322. package/dist/subscribers/SubscriberBuilder.mjs +3 -3
  323. package/dist/subscribers/index.cjs +3 -3
  324. package/dist/subscribers/index.d.cts +7 -5
  325. package/dist/subscribers/index.d.cts.map +1 -0
  326. package/dist/subscribers/index.d.mts +5 -3
  327. package/dist/subscribers/index.d.mts.map +1 -0
  328. package/dist/subscribers/index.mjs +3 -3
  329. package/dist/{types-Bp9ysFXd.d.cts → types-B5H3piDg.d.cts} +3 -1
  330. package/dist/types-B5H3piDg.d.cts.map +1 -0
  331. package/dist/{types-CScirkHt.d.mts → types-DdIlpxAd.d.mts} +3 -1
  332. package/dist/types-DdIlpxAd.d.mts.map +1 -0
  333. package/dist/types.d.cts +1 -1
  334. package/dist/types.d.mts +1 -1
  335. package/package.json +64 -13
  336. package/src/Construct.ts +3 -3
  337. package/src/__benchmarks__/endpoint.bench.ts +494 -0
  338. package/src/__benchmarks__/hono-server.bench.ts +249 -0
  339. package/src/crons/CronBuilder.ts +8 -8
  340. package/src/endpoints/AmazonApiGatewayV1EndpointAdaptor.ts +4 -4
  341. package/src/endpoints/AmazonApiGatewayV2EndpointAdaptor.ts +4 -4
  342. package/src/endpoints/EndpointBuilder.ts +4 -4
  343. package/src/endpoints/HonoEndpointAdaptor.ts +1 -2
  344. package/src/endpoints/TestEndpointAdaptor.ts +18 -0
  345. package/src/endpoints/parseHonoQuery.ts +2 -0
  346. package/src/endpoints/parseQueryParams.ts +2 -0
  347. package/src/functions/AWSLambdaFunction.ts +1 -1
  348. package/src/functions/FunctionBuilder.ts +5 -5
  349. package/src/subscribers/AWSLambdaSubscriberAdaptor.ts +8 -4
  350. package/src/subscribers/Subscriber.ts +5 -5
  351. package/tsconfig.json +9 -0
  352. package/dist/AWSLambdaFunction-C-fuCLA3.cjs.map +0 -1
  353. package/dist/AWSLambdaFunction-H65WfXLt.mjs.map +0 -1
  354. package/dist/AmazonApiGatewayV1EndpointAdaptor-MJpRbIaQ.mjs.map +0 -1
  355. package/dist/AmazonApiGatewayV1EndpointAdaptor-uBp_4zLf.cjs.map +0 -1
  356. package/dist/AmazonApiGatewayV2EndpointAdaptor-ChO8BlDz.mjs.map +0 -1
  357. package/dist/AmazonApiGatewayV2EndpointAdaptor-I1W23Nvn.cjs.map +0 -1
  358. package/dist/CronBuilder-Bl3A2Zp4.mjs.map +0 -1
  359. package/dist/CronBuilder-Dv_w7Yri.cjs.map +0 -1
  360. package/dist/EndpointBuilder-DeswNQdG.cjs.map +0 -1
  361. package/dist/EndpointBuilder-FyyoFTJ5.mjs.map +0 -1
  362. package/dist/FunctionBuilder-CVT7bG2o.mjs.map +0 -1
  363. package/dist/FunctionBuilder-DXvG_XD-.cjs.map +0 -1
  364. package/dist/Subscriber-DOt3svUC.cjs.map +0 -1
  365. package/dist/Subscriber-kCHbH2fZ.mjs.map +0 -1
  366. package/dist/TestEndpointAdaptor-1pPixE6y.mjs.map +0 -1
  367. package/dist/TestEndpointAdaptor-wA-fmq4v.cjs.map +0 -1
  368. package/dist/functions-JhRsNoAZ.mjs +0 -8
  369. package/dist/index-CqH4_Ieb.d.cts +0 -10
  370. package/dist/parseHonoQuery-CT8Cvin-.cjs.map +0 -1
  371. package/dist/parseHonoQuery-CwFKw2ua.mjs.map +0 -1
  372. package/dist/parseQueryParams-CHINupbZ.mjs.map +0 -1
  373. package/dist/parseQueryParams-CwvXXwkW.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AmazonApiGatewayEndpointAdaptor-Bk6ssx3K.cjs","names":["envParser: EnvironmentParser<{}>","endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher,\n TEventPublisherServiceName,\n TAuditStorage,\n TAuditStorageServiceName,\n TAuditAction\n >","UnprocessableEntityError","UnauthorizedError","event: Event<TEvent, TInput, TServices, TLogger, TSession>","db: any","ResponseBuilder","metadata","output","trx: any","result","lambdaResponse: AmazonApiGatewayEndpointHandlerResponse","setCookieHeaders: string[]"],"sources":["../src/endpoints/AmazonApiGatewayEndpointAdaptor.ts"],"sourcesContent":["import type { AuditStorage, AuditableAction } from '@geekmidas/audit';\nimport { withRlsContext } from '@geekmidas/db/rls';\nimport type { Logger } from '@geekmidas/logger';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport type { HttpMethod } from '../types';\nimport { Endpoint, type EndpointSchemas, ResponseBuilder } from './Endpoint';\n\nimport type { EnvironmentParser } from '@geekmidas/envkit';\nimport middy, { type MiddlewareObj } from '@middy/core';\nimport type {\n APIGatewayProxyEvent,\n APIGatewayProxyEventV2,\n Context,\n} from 'aws-lambda';\nimport set from 'lodash.set';\n\nimport {\n UnauthorizedError,\n UnprocessableEntityError,\n wrapError,\n} from '@geekmidas/errors';\nimport type { EventPublisher } from '@geekmidas/events';\nimport {\n type Service,\n ServiceDiscovery,\n type ServiceRecord,\n} from '@geekmidas/services';\n\nimport type {\n InferComposableStandardSchema,\n InferStandardSchema,\n} from '@geekmidas/schema';\nimport { publishConstructEvents } from '../publisher';\nimport type { CookieFn, HeaderFn } from './Endpoint';\nimport type { MappedAudit } from './audit';\nimport {\n createAuditContext,\n executeWithAuditTransaction,\n} from './processAudits';\n\n// Helper function to publish events\n\nexport abstract class AmazonApiGatewayEndpoint<\n THandler extends\n | AmazonApiGatewayV1EndpointHandler\n | AmazonApiGatewayV2EndpointHandler,\n TEvent extends HandlerEvent<THandler>,\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 TEventPublisherServiceName extends string = string,\n TAuditStorage extends AuditStorage | undefined = undefined,\n TAuditStorageServiceName extends string = string,\n TAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n string,\n unknown\n >,\n> {\n constructor(\n protected envParser: EnvironmentParser<{}>,\n protected readonly endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher,\n TEventPublisherServiceName,\n TAuditStorage,\n TAuditStorageServiceName,\n TAuditAction\n >,\n ) {}\n\n private error(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n onError: (req) => {\n (req.event.logger || this.endpoint.logger).error(\n req.error || {},\n 'Error processing request',\n );\n const wrappedError = wrapError(req.error);\n\n // Set the response with the proper status code from the HttpError\n req.response = {\n statusCode: wrappedError.statusCode,\n body: wrappedError.body,\n };\n },\n };\n }\n abstract getInput(e: TEvent): GetInputResponse;\n\n private input(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n before: async (req) => {\n try {\n const { body, query, params } = this.getInput(req.event);\n const headers = req.event.headers as Record<string, string>;\n const header = Endpoint.createHeaders(headers);\n const cookie = Endpoint.createCookies(headers.cookie);\n\n set(req.event, 'body', await this.endpoint.parseInput(body, 'body'));\n\n set(\n req.event,\n 'query',\n await this.endpoint.parseInput(query, 'query'),\n );\n set(\n req.event,\n 'params',\n await this.endpoint.parseInput(params, 'params'),\n );\n set(req.event, 'header', header);\n set(req.event, 'cookie', cookie);\n } catch (error) {\n // Convert validation errors to 422 Unprocessable Entity\n if (error && typeof error === 'object' && Array.isArray(error)) {\n throw new UnprocessableEntityError('Validation failed', error);\n }\n throw error;\n }\n },\n };\n }\n\n abstract getLoggerContext(data: TEvent, context: Context): LoggerContext;\n\n private logger(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n before: (req) => {\n req.event.logger = this.endpoint.logger.child({\n route: this.endpoint.route,\n host: req.event.headers?.host,\n method: this.endpoint.method,\n ...this.getLoggerContext(req.event, req.context),\n }) as TLogger;\n },\n };\n }\n private services(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n before: async (req) => {\n const logger = req.event.logger as TLogger;\n const serviceDiscovery = ServiceDiscovery.getInstance<\n ServiceRecord<TServices>,\n TLogger\n >(logger, this.envParser);\n\n const services = await serviceDiscovery.register(\n this.endpoint.services,\n );\n\n req.event.services = services;\n },\n };\n }\n\n private authorize(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n before: async (req) => {\n const logger = req.event.logger as TLogger;\n const services = req.event.services;\n const header = req.event.header;\n const cookie = req.event.cookie;\n const session = req.event.session as TSession;\n\n const isAuthorized = await this.endpoint.authorize({\n header,\n cookie,\n services,\n logger,\n session,\n });\n\n if (!isAuthorized) {\n logger.warn('Unauthorized access attempt');\n throw new UnauthorizedError(\n 'Unauthorized access to the endpoint',\n 'You do not have permission to access this resource.',\n );\n }\n },\n };\n }\n\n private database(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n before: async (req) => {\n if (!this.endpoint.databaseService) {\n return;\n }\n\n const logger = req.event.logger as TLogger;\n const serviceDiscovery = ServiceDiscovery.getInstance<\n ServiceRecord<TServices>,\n TLogger\n >(logger, this.envParser);\n\n const db = await serviceDiscovery\n .register([this.endpoint.databaseService])\n .then(\n (s) =>\n s[this.endpoint.databaseService!.serviceName as keyof typeof s],\n );\n\n (req.event as any).db = db;\n },\n };\n }\n\n private session(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n before: async (req) => {\n const logger = req.event.logger as TLogger;\n const services = req.event.services;\n const db = (req.event as any).db;\n req.event.session = (await this.endpoint.getSession({\n logger,\n services,\n header: req.event.header,\n cookie: req.event.cookie,\n ...(db !== undefined && { db }),\n } as any)) as TSession;\n },\n };\n }\n\n private events(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n after: async (req) => {\n const event = req.event;\n const response = (event as any)\n .__response as InferStandardSchema<TOutSchema>;\n const statusCode = req.response?.statusCode ?? this.endpoint.status;\n\n // Only publish events on successful responses (2xx status codes)\n // Note: Audits are processed inside the handler's transaction\n if (Endpoint.isSuccessStatus(statusCode)) {\n const logger = event.logger as TLogger;\n const serviceDiscovery = ServiceDiscovery.getInstance<\n ServiceRecord<TServices>,\n TLogger\n >(logger, this.envParser);\n\n // Publish events\n await publishConstructEvents(\n this.endpoint,\n response,\n serviceDiscovery,\n logger,\n );\n }\n },\n };\n }\n\n private async _handler(\n event: Event<TEvent, TInput, TServices, TLogger, TSession>,\n ) {\n const input = this.endpoint.refineInput(event);\n const logger = event.logger as TLogger;\n const serviceDiscovery = ServiceDiscovery.getInstance<\n ServiceRecord<TServices>,\n TLogger\n >(logger, this.envParser);\n\n // Create audit context if audit storage is configured\n const auditContext = await createAuditContext(\n this.endpoint,\n serviceDiscovery,\n logger,\n {\n session: event.session,\n header: event.header,\n cookie: event.cookie,\n services: event.services as Record<string, unknown>,\n },\n );\n\n // Warn if declarative audits are configured but no audit storage\n const audits = this.endpoint.audits as MappedAudit<\n TAuditAction,\n TOutSchema\n >[];\n if (!auditContext && audits?.length) {\n logger.warn('No auditor storage service available');\n }\n\n // Get pre-resolved database from middleware\n const rawDb = (event as any).db;\n\n // Extract RLS context if configured and not bypassed\n const rlsActive =\n this.endpoint.rlsConfig &&\n !this.endpoint.rlsBypass &&\n rawDb !== undefined;\n const rlsContext = rlsActive\n ? await this.endpoint.rlsConfig!.extractor({\n services: event.services as ServiceRecord<TServices>,\n session: event.session,\n header: event.header,\n cookie: event.cookie,\n logger,\n })\n : undefined;\n\n // Execute handler with automatic audit transaction support\n const result = await executeWithAuditTransaction(\n auditContext,\n async (auditor) => {\n // Use audit transaction as db only if the storage uses the same database service\n const sameDatabase =\n auditContext?.storage?.databaseServiceName &&\n auditContext.storage.databaseServiceName ===\n this.endpoint.databaseService?.serviceName;\n const baseDb = sameDatabase\n ? (auditor?.getTransaction?.() ?? rawDb)\n : rawDb;\n\n // Helper to execute handler with given db\n const executeHandler = async (db: any) => {\n const responseBuilder = new ResponseBuilder();\n const response = await this.endpoint.handler(\n {\n header: event.header,\n cookie: event.cookie,\n logger: event.logger,\n services: event.services,\n session: event.session,\n auditor,\n db,\n ...input,\n } as any,\n responseBuilder,\n );\n\n // Check if response has metadata\n let data = response;\n let metadata = responseBuilder.getMetadata();\n\n if (Endpoint.hasMetadata(response)) {\n data = response.data;\n metadata = response.metadata;\n }\n\n const output = this.endpoint.outputSchema\n ? await this.endpoint.parseOutput(data)\n : undefined;\n\n return { output, metadata, responseBuilder };\n };\n\n // If RLS is active, wrap handler with RLS context\n if (rlsActive && rlsContext && baseDb) {\n return withRlsContext(\n baseDb,\n rlsContext,\n async (trx: any) => executeHandler(trx),\n { prefix: this.endpoint.rlsConfig!.prefix },\n );\n }\n\n return executeHandler(baseDb);\n },\n // Process declarative audits after handler (inside transaction)\n async (result, auditor) => {\n if (!audits?.length) return;\n\n for (const audit of audits) {\n if (audit.when && !audit.when(result.output as any)) {\n continue;\n }\n const payload = audit.payload(result.output as any);\n const entityId = audit.entityId?.(result.output as any);\n auditor.audit(audit.type as any, payload as any, {\n table: audit.table,\n entityId,\n });\n }\n },\n // Pass rawDb so storage can reuse existing transactions\n { db: rawDb },\n );\n\n const { output, metadata } = result;\n const body = output !== undefined ? JSON.stringify(output) : undefined;\n\n // Store response for middleware access\n (event as any).__response = output;\n\n // Build response with metadata\n const lambdaResponse: AmazonApiGatewayEndpointHandlerResponse = {\n statusCode: metadata.status ?? this.endpoint.status,\n body,\n };\n\n // Add custom headers\n if (metadata.headers && Object.keys(metadata.headers).length > 0) {\n lambdaResponse.headers = { ...metadata.headers };\n }\n\n // Format cookies as Set-Cookie headers\n if (metadata.cookies && metadata.cookies.size > 0) {\n const setCookieHeaders: string[] = [];\n for (const [name, { value, options }] of metadata.cookies) {\n setCookieHeaders.push(\n Endpoint.formatCookieHeader(name, value, options),\n );\n }\n\n if (setCookieHeaders.length > 0) {\n lambdaResponse.multiValueHeaders = {\n ...lambdaResponse.multiValueHeaders,\n 'Set-Cookie': setCookieHeaders,\n };\n }\n }\n\n return lambdaResponse;\n }\n\n get handler() {\n const handler = this._handler.bind(this);\n return middy(handler)\n .use(this.logger())\n .use(this.error())\n .use(this.services())\n .use(this.input())\n .use(this.database())\n .use(this.session())\n .use(this.authorize())\n .use(this.events()) as unknown as THandler;\n }\n}\n\nexport type Event<\n TEvent extends APIGatewayProxyEvent | APIGatewayProxyEventV2,\n TInput extends EndpointSchemas = {},\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n TSession = unknown,\n> = {\n services: ServiceRecord<TServices>;\n logger: TLogger;\n header: HeaderFn;\n cookie: CookieFn;\n session: TSession;\n} & TEvent &\n InferComposableStandardSchema<TInput>;\n\ntype Middleware<\n TEvent extends APIGatewayProxyEvent | APIGatewayProxyEventV2,\n TInput extends EndpointSchemas = {},\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n TSession = unknown,\n> = MiddlewareObj<Event<TEvent, TInput, TServices, TLogger, TSession>>;\n\nexport type AmazonApiGatewayEndpointHandlerResponse = {\n statusCode: number;\n body: string | undefined;\n headers?: Record<string, string>;\n multiValueHeaders?: Record<string, string[]>;\n};\n\nexport type LoggerContext = {\n fn: {\n name: string;\n version: string;\n };\n req: {\n id: string | undefined;\n awsRequestId: string;\n path: string;\n ip: string | undefined;\n userAgent: string | undefined;\n };\n};\n\nexport type GetInputResponse = {\n body: any;\n query: any;\n params: any;\n};\n\nexport type AmazonApiGatewayV1EndpointHandler = (\n event: APIGatewayProxyEvent,\n context: Context,\n) => Promise<AmazonApiGatewayEndpointHandlerResponse>;\n\nexport type AmazonApiGatewayV2EndpointHandler = (\n event: APIGatewayProxyEventV2,\n context: Context,\n) => Promise<AmazonApiGatewayEndpointHandlerResponse>;\n\nexport type HandlerEvent<T extends Function> = T extends (\n event: infer E,\n context: Context,\n) => any\n ? E\n : never;\n"],"mappings":"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"}
1
+ {"version":3,"file":"AmazonApiGatewayEndpointAdaptor-DNFvvdmW.cjs","names":["envParser: EnvironmentParser<{}>","endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher,\n TEventPublisherServiceName,\n TAuditStorage,\n TAuditStorageServiceName,\n TAuditAction\n >","UnprocessableEntityError","UnauthorizedError","event: Event<TEvent, TInput, TServices, TLogger, TSession>","db: any","ResponseBuilder","metadata","output","trx: any","result","lambdaResponse: AmazonApiGatewayEndpointHandlerResponse","setCookieHeaders: string[]"],"sources":["../src/endpoints/AmazonApiGatewayEndpointAdaptor.ts"],"sourcesContent":["import type { AuditStorage, AuditableAction } from '@geekmidas/audit';\nimport { withRlsContext } from '@geekmidas/db/rls';\nimport type { Logger } from '@geekmidas/logger';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport type { HttpMethod } from '../types';\nimport { Endpoint, type EndpointSchemas, ResponseBuilder } from './Endpoint';\n\nimport type { EnvironmentParser } from '@geekmidas/envkit';\nimport middy, { type MiddlewareObj } from '@middy/core';\nimport type {\n APIGatewayProxyEvent,\n APIGatewayProxyEventV2,\n Context,\n} from 'aws-lambda';\nimport set from 'lodash.set';\n\nimport {\n UnauthorizedError,\n UnprocessableEntityError,\n wrapError,\n} from '@geekmidas/errors';\nimport type { EventPublisher } from '@geekmidas/events';\nimport {\n type Service,\n ServiceDiscovery,\n type ServiceRecord,\n} from '@geekmidas/services';\n\nimport type {\n InferComposableStandardSchema,\n InferStandardSchema,\n} from '@geekmidas/schema';\nimport { publishConstructEvents } from '../publisher';\nimport type { CookieFn, HeaderFn } from './Endpoint';\nimport type { MappedAudit } from './audit';\nimport {\n createAuditContext,\n executeWithAuditTransaction,\n} from './processAudits';\n\n// Helper function to publish events\n\nexport abstract class AmazonApiGatewayEndpoint<\n THandler extends\n | AmazonApiGatewayV1EndpointHandler\n | AmazonApiGatewayV2EndpointHandler,\n TEvent extends HandlerEvent<THandler>,\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 TEventPublisherServiceName extends string = string,\n TAuditStorage extends AuditStorage | undefined = undefined,\n TAuditStorageServiceName extends string = string,\n TAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n string,\n unknown\n >,\n> {\n constructor(\n protected envParser: EnvironmentParser<{}>,\n protected readonly endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher,\n TEventPublisherServiceName,\n TAuditStorage,\n TAuditStorageServiceName,\n TAuditAction\n >,\n ) {}\n\n private error(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n onError: (req) => {\n (req.event.logger || this.endpoint.logger).error(\n req.error || {},\n 'Error processing request',\n );\n const wrappedError = wrapError(req.error);\n\n // Set the response with the proper status code from the HttpError\n req.response = {\n statusCode: wrappedError.statusCode,\n body: wrappedError.body,\n };\n },\n };\n }\n abstract getInput(e: TEvent): GetInputResponse;\n\n private input(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n before: async (req) => {\n try {\n const { body, query, params } = this.getInput(req.event);\n const headers = req.event.headers as Record<string, string>;\n const header = Endpoint.createHeaders(headers);\n const cookie = Endpoint.createCookies(headers.cookie);\n\n set(req.event, 'body', await this.endpoint.parseInput(body, 'body'));\n\n set(\n req.event,\n 'query',\n await this.endpoint.parseInput(query, 'query'),\n );\n set(\n req.event,\n 'params',\n await this.endpoint.parseInput(params, 'params'),\n );\n set(req.event, 'header', header);\n set(req.event, 'cookie', cookie);\n } catch (error) {\n // Convert validation errors to 422 Unprocessable Entity\n if (error && typeof error === 'object' && Array.isArray(error)) {\n throw new UnprocessableEntityError('Validation failed', error);\n }\n throw error;\n }\n },\n };\n }\n\n abstract getLoggerContext(data: TEvent, context: Context): LoggerContext;\n\n private logger(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n before: (req) => {\n req.event.logger = this.endpoint.logger.child({\n route: this.endpoint.route,\n host: req.event.headers?.host,\n method: this.endpoint.method,\n ...this.getLoggerContext(req.event, req.context),\n }) as TLogger;\n },\n };\n }\n private services(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n before: async (req) => {\n const logger = req.event.logger as TLogger;\n const serviceDiscovery = ServiceDiscovery.getInstance<\n ServiceRecord<TServices>,\n TLogger\n >(logger, this.envParser);\n\n const services = await serviceDiscovery.register(\n this.endpoint.services,\n );\n\n req.event.services = services;\n },\n };\n }\n\n private authorize(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n before: async (req) => {\n const logger = req.event.logger as TLogger;\n const services = req.event.services;\n const header = req.event.header;\n const cookie = req.event.cookie;\n const session = req.event.session as TSession;\n\n const isAuthorized = await this.endpoint.authorize({\n header,\n cookie,\n services,\n logger,\n session,\n });\n\n if (!isAuthorized) {\n logger.warn('Unauthorized access attempt');\n throw new UnauthorizedError(\n 'Unauthorized access to the endpoint',\n 'You do not have permission to access this resource.',\n );\n }\n },\n };\n }\n\n private database(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n before: async (req) => {\n if (!this.endpoint.databaseService) {\n return;\n }\n\n const logger = req.event.logger as TLogger;\n const serviceDiscovery = ServiceDiscovery.getInstance<\n ServiceRecord<TServices>,\n TLogger\n >(logger, this.envParser);\n\n const db = await serviceDiscovery\n .register([this.endpoint.databaseService])\n .then(\n (s) =>\n s[this.endpoint.databaseService!.serviceName as keyof typeof s],\n );\n\n (req.event as any).db = db;\n },\n };\n }\n\n private session(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n before: async (req) => {\n const logger = req.event.logger as TLogger;\n const services = req.event.services;\n const db = (req.event as any).db;\n req.event.session = (await this.endpoint.getSession({\n logger,\n services,\n header: req.event.header,\n cookie: req.event.cookie,\n ...(db !== undefined && { db }),\n } as any)) as TSession;\n },\n };\n }\n\n private events(): Middleware<TEvent, TInput, TServices, TLogger> {\n return {\n after: async (req) => {\n const event = req.event;\n const response = (event as any)\n .__response as InferStandardSchema<TOutSchema>;\n const statusCode = req.response?.statusCode ?? this.endpoint.status;\n\n // Only publish events on successful responses (2xx status codes)\n // Note: Audits are processed inside the handler's transaction\n if (Endpoint.isSuccessStatus(statusCode)) {\n const logger = event.logger as TLogger;\n const serviceDiscovery = ServiceDiscovery.getInstance<\n ServiceRecord<TServices>,\n TLogger\n >(logger, this.envParser);\n\n // Publish events\n await publishConstructEvents(\n this.endpoint,\n response,\n serviceDiscovery,\n logger,\n );\n }\n },\n };\n }\n\n private async _handler(\n event: Event<TEvent, TInput, TServices, TLogger, TSession>,\n ) {\n const input = this.endpoint.refineInput(event);\n const logger = event.logger as TLogger;\n const serviceDiscovery = ServiceDiscovery.getInstance<\n ServiceRecord<TServices>,\n TLogger\n >(logger, this.envParser);\n\n // Create audit context if audit storage is configured\n const auditContext = await createAuditContext(\n this.endpoint,\n serviceDiscovery,\n logger,\n {\n session: event.session,\n header: event.header,\n cookie: event.cookie,\n services: event.services as Record<string, unknown>,\n },\n );\n\n // Warn if declarative audits are configured but no audit storage\n const audits = this.endpoint.audits as MappedAudit<\n TAuditAction,\n TOutSchema\n >[];\n if (!auditContext && audits?.length) {\n logger.warn('No auditor storage service available');\n }\n\n // Get pre-resolved database from middleware\n const rawDb = (event as any).db;\n\n // Extract RLS context if configured and not bypassed\n const rlsActive =\n this.endpoint.rlsConfig &&\n !this.endpoint.rlsBypass &&\n rawDb !== undefined;\n const rlsContext = rlsActive\n ? await this.endpoint.rlsConfig!.extractor({\n services: event.services as ServiceRecord<TServices>,\n session: event.session,\n header: event.header,\n cookie: event.cookie,\n logger,\n })\n : undefined;\n\n // Execute handler with automatic audit transaction support\n const result = await executeWithAuditTransaction(\n auditContext,\n async (auditor) => {\n // Use audit transaction as db only if the storage uses the same database service\n const sameDatabase =\n auditContext?.storage?.databaseServiceName &&\n auditContext.storage.databaseServiceName ===\n this.endpoint.databaseService?.serviceName;\n const baseDb = sameDatabase\n ? (auditor?.getTransaction?.() ?? rawDb)\n : rawDb;\n\n // Helper to execute handler with given db\n const executeHandler = async (db: any) => {\n const responseBuilder = new ResponseBuilder();\n const response = await this.endpoint.handler(\n {\n header: event.header,\n cookie: event.cookie,\n logger: event.logger,\n services: event.services,\n session: event.session,\n auditor,\n db,\n ...input,\n } as any,\n responseBuilder,\n );\n\n // Check if response has metadata\n let data = response;\n let metadata = responseBuilder.getMetadata();\n\n if (Endpoint.hasMetadata(response)) {\n data = response.data;\n metadata = response.metadata;\n }\n\n const output = this.endpoint.outputSchema\n ? await this.endpoint.parseOutput(data)\n : undefined;\n\n return { output, metadata, responseBuilder };\n };\n\n // If RLS is active, wrap handler with RLS context\n if (rlsActive && rlsContext && baseDb) {\n return withRlsContext(\n baseDb,\n rlsContext,\n async (trx: any) => executeHandler(trx),\n { prefix: this.endpoint.rlsConfig!.prefix },\n );\n }\n\n return executeHandler(baseDb);\n },\n // Process declarative audits after handler (inside transaction)\n async (result, auditor) => {\n if (!audits?.length) return;\n\n for (const audit of audits) {\n if (audit.when && !audit.when(result.output as any)) {\n continue;\n }\n const payload = audit.payload(result.output as any);\n const entityId = audit.entityId?.(result.output as any);\n auditor.audit(audit.type as any, payload as any, {\n table: audit.table,\n entityId,\n });\n }\n },\n // Pass rawDb so storage can reuse existing transactions\n { db: rawDb },\n );\n\n const { output, metadata } = result;\n const body = output !== undefined ? JSON.stringify(output) : undefined;\n\n // Store response for middleware access\n (event as any).__response = output;\n\n // Build response with metadata\n const lambdaResponse: AmazonApiGatewayEndpointHandlerResponse = {\n statusCode: metadata.status ?? this.endpoint.status,\n body,\n };\n\n // Add custom headers\n if (metadata.headers && Object.keys(metadata.headers).length > 0) {\n lambdaResponse.headers = { ...metadata.headers };\n }\n\n // Format cookies as Set-Cookie headers\n if (metadata.cookies && metadata.cookies.size > 0) {\n const setCookieHeaders: string[] = [];\n for (const [name, { value, options }] of metadata.cookies) {\n setCookieHeaders.push(\n Endpoint.formatCookieHeader(name, value, options),\n );\n }\n\n if (setCookieHeaders.length > 0) {\n lambdaResponse.multiValueHeaders = {\n ...lambdaResponse.multiValueHeaders,\n 'Set-Cookie': setCookieHeaders,\n };\n }\n }\n\n return lambdaResponse;\n }\n\n get handler() {\n const handler = this._handler.bind(this);\n return middy(handler)\n .use(this.logger())\n .use(this.error())\n .use(this.services())\n .use(this.input())\n .use(this.database())\n .use(this.session())\n .use(this.authorize())\n .use(this.events()) as unknown as THandler;\n }\n}\n\nexport type Event<\n TEvent extends APIGatewayProxyEvent | APIGatewayProxyEventV2,\n TInput extends EndpointSchemas = {},\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n TSession = unknown,\n> = {\n services: ServiceRecord<TServices>;\n logger: TLogger;\n header: HeaderFn;\n cookie: CookieFn;\n session: TSession;\n} & TEvent &\n InferComposableStandardSchema<TInput>;\n\ntype Middleware<\n TEvent extends APIGatewayProxyEvent | APIGatewayProxyEventV2,\n TInput extends EndpointSchemas = {},\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n TSession = unknown,\n> = MiddlewareObj<Event<TEvent, TInput, TServices, TLogger, TSession>>;\n\nexport type AmazonApiGatewayEndpointHandlerResponse = {\n statusCode: number;\n body: string | undefined;\n headers?: Record<string, string>;\n multiValueHeaders?: Record<string, string[]>;\n};\n\nexport type LoggerContext = {\n fn: {\n name: string;\n version: string;\n };\n req: {\n id: string | undefined;\n awsRequestId: string;\n path: string;\n ip: string | undefined;\n userAgent: string | undefined;\n };\n};\n\nexport type GetInputResponse = {\n body: any;\n query: any;\n params: any;\n};\n\nexport type AmazonApiGatewayV1EndpointHandler = (\n event: APIGatewayProxyEvent,\n context: Context,\n) => Promise<AmazonApiGatewayEndpointHandlerResponse>;\n\nexport type AmazonApiGatewayV2EndpointHandler = (\n event: APIGatewayProxyEventV2,\n context: Context,\n) => Promise<AmazonApiGatewayEndpointHandlerResponse>;\n\nexport type HandlerEvent<T extends Function> = T extends (\n event: infer E,\n context: Context,\n) => any\n ? E\n : never;\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { HttpMethod } from "./types-CScirkHt.mjs";
2
- import { CookieFn, Endpoint, EndpointSchemas, HeaderFn } from "./Endpoint-C5djXyae.mjs";
1
+ import { HttpMethod } from "./types-DdIlpxAd.mjs";
2
+ import { CookieFn, Endpoint, EndpointSchemas, HeaderFn } from "./Endpoint-BdwG75G_.mjs";
3
3
  import { Service, ServiceRecord } from "@geekmidas/services";
4
4
  import { AuditStorage, AuditableAction } from "@geekmidas/audit";
5
5
  import { EnvironmentParser } from "@geekmidas/envkit";
@@ -61,6 +61,8 @@ type GetInputResponse = {
61
61
  type AmazonApiGatewayV1EndpointHandler = (event: APIGatewayProxyEvent, context: Context) => Promise<AmazonApiGatewayEndpointHandlerResponse>;
62
62
  type AmazonApiGatewayV2EndpointHandler = (event: APIGatewayProxyEventV2, context: Context) => Promise<AmazonApiGatewayEndpointHandlerResponse>;
63
63
  type HandlerEvent<T extends Function> = T extends ((event: infer E, context: Context) => any) ? E : never;
64
+ //# sourceMappingURL=AmazonApiGatewayEndpointAdaptor.d.ts.map
65
+
64
66
  //#endregion
65
67
  export { AmazonApiGatewayEndpoint, AmazonApiGatewayEndpointHandlerResponse, AmazonApiGatewayV1EndpointHandler, AmazonApiGatewayV2EndpointHandler, Event, GetInputResponse, HandlerEvent, LoggerContext };
66
- //# sourceMappingURL=AmazonApiGatewayEndpointAdaptor-DC3N7zY_.d.mts.map
68
+ //# sourceMappingURL=AmazonApiGatewayEndpointAdaptor-qlKXuZxy.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AmazonApiGatewayEndpointAdaptor-qlKXuZxy.d.mts","names":[],"sources":["../src/endpoints/AmazonApiGatewayEndpointAdaptor.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;;uBA0CsB,0CAEhB,oCACA,kDACW,aAAa,kDAEZ,2BACD,yCACI,4DACD,gCACF,SAAS,oDAED,uHAEF,6GAED,mCAAmC;EAhBpC,UAAA,SAAA,EAsBG,iBAtBqB,CAAA,CAAA,CAAA,CAAA;EAAA,mBAAA,QAAA,EAuBb,QAvBa,CAwBxC,MAxBwC,EAyBxC,OAzBwC,EA0BxC,MA1BwC,EA2BxC,UA3BwC,EA4BxC,SA5BwC,EA6BxC,OA7BwC,EA8BxC,QA9BwC,EA+BxC,eA/BwC,EAgCxC,0BAhCwC,EAiCxC,aAjCwC,EAkCxC,wBAlCwC,EAmCxC,YAnCwC,CAAA;EAAA,WAExC,CAAA,SAAA,EAoBmB,iBApBnB,CAAA,CAAA,CAAA,CAAA,EAAA,QAAA,EAqB2B,QArB3B,CAsBA,MAtBA,EAuBA,OAvBA,EAwBA,MAxBA,EAyBA,UAzBA,EA0BA,SA1BA,EA2BA,OA3BA,EA4BA,QA5BA,EA6BA,eA7BA,EA8BA,0BA9BA,EA+BA,aA/BA,EAgCA,wBAhCA,EAiCA,YAjCA,CAAA;EAAiC,QACjC,KAAA;EAAiC,SACT,QAAA,CAAA,CAAA,EAoDP,MApDO,CAAA,EAoDE,gBApDF;EAAQ,QAArB,KAAA;EAAY,SAEX,gBAAA,CAAA,IAAA,EAsFgB,MAtFhB,EAAA,OAAA,EAsFiC,OAtFjC,CAAA,EAsF2C,aAtF3C;EAAU,QACX,MAAA;EAAe,QACX,QAAA;EAAgB,QACjB,SAAA;EAAO,QACT,QAAA;EAAM,QAAG,OAAA;EAAM,QAEP,MAAA;EAAc,QAEhB,QAAA;EAAY,IAEb,OAAA,CAAA,CAAA,EA8XiB,QA9XjB;;AAME,KA4Xb,KA5Xa,CAAA,eA6XR,oBA7XQ,GA6Xe,sBA7Xf,EAAA,eA8XR,eA9XQ,GAAA,CAAA,CAAA,EAAA,kBA+XL,OA/XK,EAAA,GAAA,EAAA,EAAA,gBAgYP,MAhYO,GAgYE,MAhYF,EAAA,WAAA,OAAA,CAAA,GAAA;EAAiB,QAEpC,EAiYM,aAjYN,CAiYoB,SAjYpB,CAAA;EAAM,MACN,EAiYI,OAjYJ;EAAO,MACP,EAiYI,QAjYJ;EAAM,MACN,EAiYI,QAjYJ;EAAU,OACV,EAiYK,QAjYL;CAAS,GAkYX,MAjYE,GAkYJ,6BAlYI,CAkY0B,MAlY1B,CAAA;AACA,KA2YM,uCAAA,GA3YN;EAAQ,UACR,EAAA,MAAA;EAAe,IACf,EAAA,MAAA,GAAA,SAAA;EAA0B,OAC1B,CAAA,EA2YM,MA3YN,CAAA,MAAA,EAAA,MAAA,CAAA;EAAa,iBACb,CAAA,EA2YgB,MA3YhB,CAAA,MAAA,EAAA,MAAA,EAAA,CAAA;CAAwB;AAXG,KAyZrB,aAAA,GAzZqB;EAAQ,EAAA,EADhB;IAEnB,IAAA,EAAA,MAAA;IACA,OAAA,EAAA,MAAA;EAAO,CAAA;EACD,GACN,EAAA;IACA,EAAA,EAAA,MAAA,GAAA,SAAA;IACA,YAAA,EAAA,MAAA;IACA,IAAA,EAAA,MAAA;IACA,EAAA,EAAA,MAAA,GAAA,SAAA;IACA,SAAA,EAAA,MAAA,GAAA,SAAA;EAA0B,CAAA;CACb;AAEb,KA2ZM,gBAAA,GA3ZN;EAAY,IAZe,EAAA,GAAA;EAAQ,KAiClB,EAAA,GAAA;EAAM,MAAG,EAAA,GAAA;CAAgB;AAoCG,KAwWvC,iCAAA,GAxWuC,CAAA,KAAA,EAyW1C,oBAzW0C,EAAA,OAAA,EA0WxC,OA1WwC,EAAA,GA2W9C,OA3W8C,CA2WtC,uCA3WsC,CAAA;AAAU,KA6WjD,iCAAA,GA7WiD,CAAA,KAAA,EA8WpD,sBA9WoD,EAAA,OAAA,EA+WlD,OA/WkD,EAAA,GAgXxD,OAhXwD,CAgXhD,uCAhXgD,CAAA;AAkTrB,KAgE5B,YAhE4B,CAAA,UAgEL,QAhEK,CAAA,GAgEO,CAhEP,UAAA,CAAA,KAAA,EAAA,KAAA,EAAA,EAAA,OAAA,EAkE7B,OAlE6B,EAAA,GAAA,GAAA,IAoEpC,CApEoC,GAAA,KAAA;AAAQ"}
@@ -1,5 +1,5 @@
1
- import { AmazonApiGatewayEndpoint } from "./AmazonApiGatewayEndpointAdaptor-pEWzF2uY.mjs";
2
- import { parseQueryParams } from "./parseQueryParams-CHINupbZ.mjs";
1
+ import { AmazonApiGatewayEndpoint } from "./AmazonApiGatewayEndpointAdaptor-BT9JXihC.mjs";
2
+ import { parseQueryParams } from "./parseQueryParams-UMTRnRrW.mjs";
3
3
 
4
4
  //#region src/endpoints/AmazonApiGatewayV1EndpointAdaptor.ts
5
5
  var AmazonApiGatewayV1Endpoint = class extends AmazonApiGatewayEndpoint {
@@ -39,4 +39,4 @@ var AmazonApiGatewayV1Endpoint = class extends AmazonApiGatewayEndpoint {
39
39
 
40
40
  //#endregion
41
41
  export { AmazonApiGatewayV1Endpoint };
42
- //# sourceMappingURL=AmazonApiGatewayV1EndpointAdaptor-MJpRbIaQ.mjs.map
42
+ //# sourceMappingURL=AmazonApiGatewayV1EndpointAdaptor-CShQI8Gk.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AmazonApiGatewayV1EndpointAdaptor-CShQI8Gk.mjs","names":["e: APIGatewayProxyEvent","mergedParams: Record<string, string | string[]>","data: APIGatewayProxyEvent","context: Context","envParser: EnvironmentParser<{}>","endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >"],"sources":["../src/endpoints/AmazonApiGatewayV1EndpointAdaptor.ts"],"sourcesContent":["import type { Logger } from '@geekmidas/logger';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport type { HttpMethod } from '../types';\nimport type { Endpoint, EndpointSchemas } from './Endpoint';\n\nimport type { EnvironmentParser } from '@geekmidas/envkit';\nimport type { APIGatewayProxyEvent, Context } from 'aws-lambda';\n\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Service } from '@geekmidas/services';\nimport {\n AmazonApiGatewayEndpoint,\n type AmazonApiGatewayV1EndpointHandler,\n type GetInputResponse,\n type LoggerContext,\n} from './AmazonApiGatewayEndpointAdaptor';\nimport { parseQueryParams } from './parseQueryParams';\n\nexport class AmazonApiGatewayV1Endpoint<\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> extends AmazonApiGatewayEndpoint<\n AmazonApiGatewayV1EndpointHandler,\n APIGatewayProxyEvent,\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n> {\n override getInput(e: APIGatewayProxyEvent): GetInputResponse {\n // For arrays, AWS API Gateway V1 provides multiValueQueryStringParameters\n const multiValueParams = e.multiValueQueryStringParameters || {};\n const singleValueParams = e.queryStringParameters || {};\n\n // Merge single and multi-value parameters\n const mergedParams: Record<string, string | string[]> = {};\n\n // Add single value parameters\n for (const [key, value] of Object.entries(singleValueParams)) {\n if (value !== undefined) {\n mergedParams[key] = value;\n }\n }\n\n // Override with multi-value parameters where applicable\n for (const [key, values] of Object.entries(multiValueParams)) {\n if (values && values.length > 1) {\n mergedParams[key] = values;\n }\n }\n\n return {\n body: e.body ? JSON.parse(e.body) : undefined,\n query: parseQueryParams(mergedParams),\n params: e.pathParameters || {},\n };\n }\n override getLoggerContext(\n data: APIGatewayProxyEvent,\n context: Context,\n ): LoggerContext {\n return {\n fn: {\n name: context.functionName,\n version: context.functionVersion,\n },\n req: {\n id: data.requestContext.requestId,\n awsRequestId: context.awsRequestId,\n ip: data.requestContext.identity.sourceIp,\n userAgent: data.requestContext.identity.userAgent || undefined,\n path: data.requestContext.path,\n },\n };\n }\n constructor(\n protected override envParser: EnvironmentParser<{}>,\n protected override readonly endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >,\n ) {\n super(envParser, endpoint);\n }\n}\n"],"mappings":";;;;AAkBA,IAAa,6BAAb,cASU,yBAWR;CACA,AAAS,SAASA,GAA2C;EAE3D,MAAM,mBAAmB,EAAE,mCAAmC,CAAE;EAChE,MAAM,oBAAoB,EAAE,yBAAyB,CAAE;EAGvD,MAAMC,eAAkD,CAAE;AAG1D,OAAK,MAAM,CAAC,KAAK,MAAM,IAAI,OAAO,QAAQ,kBAAkB,CAC1D,KAAI,iBACF,cAAa,OAAO;AAKxB,OAAK,MAAM,CAAC,KAAK,OAAO,IAAI,OAAO,QAAQ,iBAAiB,CAC1D,KAAI,UAAU,OAAO,SAAS,EAC5B,cAAa,OAAO;AAIxB,SAAO;GACL,MAAM,EAAE,OAAO,KAAK,MAAM,EAAE,KAAK;GACjC,OAAO,iBAAiB,aAAa;GACrC,QAAQ,EAAE,kBAAkB,CAAE;EAC/B;CACF;CACD,AAAS,iBACPC,MACAC,SACe;AACf,SAAO;GACL,IAAI;IACF,MAAM,QAAQ;IACd,SAAS,QAAQ;GAClB;GACD,KAAK;IACH,IAAI,KAAK,eAAe;IACxB,cAAc,QAAQ;IACtB,IAAI,KAAK,eAAe,SAAS;IACjC,WAAW,KAAK,eAAe,SAAS;IACxC,MAAM,KAAK,eAAe;GAC3B;EACF;CACF;CACD,YACqBC,WACSC,UAU5B;AACA,QAAM,WAAW,SAAS;EAZP;EACS;CAY7B;AACF"}
@@ -1,5 +1,5 @@
1
- const require_AmazonApiGatewayEndpointAdaptor = require('./AmazonApiGatewayEndpointAdaptor-Bk6ssx3K.cjs');
2
- const require_parseQueryParams = require('./parseQueryParams-CwvXXwkW.cjs');
1
+ const require_AmazonApiGatewayEndpointAdaptor = require('./AmazonApiGatewayEndpointAdaptor-DNFvvdmW.cjs');
2
+ const require_parseQueryParams = require('./parseQueryParams-BSNkjmZ9.cjs');
3
3
 
4
4
  //#region src/endpoints/AmazonApiGatewayV1EndpointAdaptor.ts
5
5
  var AmazonApiGatewayV1Endpoint = class extends require_AmazonApiGatewayEndpointAdaptor.AmazonApiGatewayEndpoint {
@@ -44,4 +44,4 @@ Object.defineProperty(exports, 'AmazonApiGatewayV1Endpoint', {
44
44
  return AmazonApiGatewayV1Endpoint;
45
45
  }
46
46
  });
47
- //# sourceMappingURL=AmazonApiGatewayV1EndpointAdaptor-uBp_4zLf.cjs.map
47
+ //# sourceMappingURL=AmazonApiGatewayV1EndpointAdaptor-Ccl8B8kG.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AmazonApiGatewayV1EndpointAdaptor-Ccl8B8kG.cjs","names":["AmazonApiGatewayEndpoint","e: APIGatewayProxyEvent","mergedParams: Record<string, string | string[]>","data: APIGatewayProxyEvent","context: Context","envParser: EnvironmentParser<{}>","endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >"],"sources":["../src/endpoints/AmazonApiGatewayV1EndpointAdaptor.ts"],"sourcesContent":["import type { Logger } from '@geekmidas/logger';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport type { HttpMethod } from '../types';\nimport type { Endpoint, EndpointSchemas } from './Endpoint';\n\nimport type { EnvironmentParser } from '@geekmidas/envkit';\nimport type { APIGatewayProxyEvent, Context } from 'aws-lambda';\n\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Service } from '@geekmidas/services';\nimport {\n AmazonApiGatewayEndpoint,\n type AmazonApiGatewayV1EndpointHandler,\n type GetInputResponse,\n type LoggerContext,\n} from './AmazonApiGatewayEndpointAdaptor';\nimport { parseQueryParams } from './parseQueryParams';\n\nexport class AmazonApiGatewayV1Endpoint<\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> extends AmazonApiGatewayEndpoint<\n AmazonApiGatewayV1EndpointHandler,\n APIGatewayProxyEvent,\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n> {\n override getInput(e: APIGatewayProxyEvent): GetInputResponse {\n // For arrays, AWS API Gateway V1 provides multiValueQueryStringParameters\n const multiValueParams = e.multiValueQueryStringParameters || {};\n const singleValueParams = e.queryStringParameters || {};\n\n // Merge single and multi-value parameters\n const mergedParams: Record<string, string | string[]> = {};\n\n // Add single value parameters\n for (const [key, value] of Object.entries(singleValueParams)) {\n if (value !== undefined) {\n mergedParams[key] = value;\n }\n }\n\n // Override with multi-value parameters where applicable\n for (const [key, values] of Object.entries(multiValueParams)) {\n if (values && values.length > 1) {\n mergedParams[key] = values;\n }\n }\n\n return {\n body: e.body ? JSON.parse(e.body) : undefined,\n query: parseQueryParams(mergedParams),\n params: e.pathParameters || {},\n };\n }\n override getLoggerContext(\n data: APIGatewayProxyEvent,\n context: Context,\n ): LoggerContext {\n return {\n fn: {\n name: context.functionName,\n version: context.functionVersion,\n },\n req: {\n id: data.requestContext.requestId,\n awsRequestId: context.awsRequestId,\n ip: data.requestContext.identity.sourceIp,\n userAgent: data.requestContext.identity.userAgent || undefined,\n path: data.requestContext.path,\n },\n };\n }\n constructor(\n protected override envParser: EnvironmentParser<{}>,\n protected override readonly endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >,\n ) {\n super(envParser, endpoint);\n }\n}\n"],"mappings":";;;;AAkBA,IAAa,6BAAb,cASUA,iEAWR;CACA,AAAS,SAASC,GAA2C;EAE3D,MAAM,mBAAmB,EAAE,mCAAmC,CAAE;EAChE,MAAM,oBAAoB,EAAE,yBAAyB,CAAE;EAGvD,MAAMC,eAAkD,CAAE;AAG1D,OAAK,MAAM,CAAC,KAAK,MAAM,IAAI,OAAO,QAAQ,kBAAkB,CAC1D,KAAI,iBACF,cAAa,OAAO;AAKxB,OAAK,MAAM,CAAC,KAAK,OAAO,IAAI,OAAO,QAAQ,iBAAiB,CAC1D,KAAI,UAAU,OAAO,SAAS,EAC5B,cAAa,OAAO;AAIxB,SAAO;GACL,MAAM,EAAE,OAAO,KAAK,MAAM,EAAE,KAAK;GACjC,OAAO,0CAAiB,aAAa;GACrC,QAAQ,EAAE,kBAAkB,CAAE;EAC/B;CACF;CACD,AAAS,iBACPC,MACAC,SACe;AACf,SAAO;GACL,IAAI;IACF,MAAM,QAAQ;IACd,SAAS,QAAQ;GAClB;GACD,KAAK;IACH,IAAI,KAAK,eAAe;IACxB,cAAc,QAAQ;IACtB,IAAI,KAAK,eAAe,SAAS;IACjC,WAAW,KAAK,eAAe,SAAS;IACxC,MAAM,KAAK,eAAe;GAC3B;EACF;CACF;CACD,YACqBC,WACSC,UAU5B;AACA,QAAM,WAAW,SAAS;EAZP;EACS;CAY7B;AACF"}
@@ -1,11 +1,11 @@
1
- import { HttpMethod } from "./types-CScirkHt.mjs";
2
- import { Endpoint, EndpointSchemas } from "./Endpoint-C5djXyae.mjs";
3
- import { AmazonApiGatewayEndpoint, AmazonApiGatewayV1EndpointHandler, GetInputResponse, LoggerContext } from "./AmazonApiGatewayEndpointAdaptor-DC3N7zY_.mjs";
4
- import { Service } from "@geekmidas/services";
5
- import { EnvironmentParser } from "@geekmidas/envkit";
1
+ import { HttpMethod } from "./types-B5H3piDg.cjs";
2
+ import { Endpoint, EndpointSchemas } from "./Endpoint-BPv9_-m_.cjs";
3
+ import { AmazonApiGatewayEndpoint, AmazonApiGatewayV1EndpointHandler, GetInputResponse, LoggerContext } from "./AmazonApiGatewayEndpointAdaptor-DLqnYQ4E.cjs";
6
4
  import { EventPublisher } from "@geekmidas/events";
7
5
  import { Logger } from "@geekmidas/logger";
6
+ import { Service } from "@geekmidas/services";
8
7
  import { StandardSchemaV1 } from "@standard-schema/spec";
8
+ import { EnvironmentParser } from "@geekmidas/envkit";
9
9
  import { APIGatewayProxyEvent, Context } from "aws-lambda";
10
10
 
11
11
  //#region src/endpoints/AmazonApiGatewayV1EndpointAdaptor.d.ts
@@ -16,6 +16,8 @@ declare class AmazonApiGatewayV1Endpoint<TRoute extends string, TMethod extends
16
16
  getLoggerContext(data: APIGatewayProxyEvent, context: Context): LoggerContext;
17
17
  constructor(envParser: EnvironmentParser<{}>, endpoint: Endpoint<TRoute, TMethod, TInput, TOutSchema, TServices, TLogger, TSession, TEventPublisher>);
18
18
  }
19
+ //# sourceMappingURL=AmazonApiGatewayV1EndpointAdaptor.d.ts.map
20
+
19
21
  //#endregion
20
22
  export { AmazonApiGatewayV1Endpoint };
21
- //# sourceMappingURL=AmazonApiGatewayV1EndpointAdaptor-BVxgQ-7J.d.mts.map
23
+ //# sourceMappingURL=AmazonApiGatewayV1EndpointAdaptor-DyUaJIhB.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AmazonApiGatewayV1EndpointAdaptor-DyUaJIhB.d.cts","names":[],"sources":["../src/endpoints/AmazonApiGatewayV1EndpointAdaptor.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;cAkBa,kEAEK,2BACD,yCACI,4DACD,gCACF,SAAS,oDAED,qDAChB,yBACR,mCACA,sBACA,QACA,SACA,QACA,YACA,WACA,SACA,UACA;uBAiDgC;EApErB,mBAAA,QAAA,EAqE6B,QArEH,CAsEjC,MAtEiC,EAuEjC,OAvEiC,EAwEjC,MAxEiC,EAyEjC,UAzEiC,EA0EjC,SA1EiC,EA2EjC,OA3EiC,EA4EjC,QA5EiC,EA6EjC,eA7EiC,CAAA;EAAA,QAAA,CAAA,CAAA,EAqBhB,oBArBgB,CAAA,EAqBO,gBArBP;EAAA,gBAErB,CAAA,IAAA,EAgDR,oBAhDQ,EAAA,OAAA,EAiDL,OAjDK,CAAA,EAkDb,aAlDa;EAAU,WACX,CAAA,SAAA,EAiEiB,iBAjEjB,CAAA,CAAA,CAAA,CAAA,EAAA,QAAA,EAkEyB,QAlEzB,CAmEX,MAnEW,EAoEX,OApEW,EAqEX,MArEW,EAsEX,UAtEW,EAuEX,SAvEW,EAwEX,OAxEW,EAyEX,QAzEW,EA0EX,eA1EW,CAAA"}
@@ -1,11 +1,11 @@
1
- import { HttpMethod } from "./types-Bp9ysFXd.cjs";
2
- import { Endpoint, EndpointSchemas } from "./Endpoint-CC2RGjkl.cjs";
3
- import { AmazonApiGatewayEndpoint, AmazonApiGatewayV1EndpointHandler, GetInputResponse, LoggerContext } from "./AmazonApiGatewayEndpointAdaptor-CbJqLU6I.cjs";
1
+ import { HttpMethod } from "./types-DdIlpxAd.mjs";
2
+ import { Endpoint, EndpointSchemas } from "./Endpoint-BdwG75G_.mjs";
3
+ import { AmazonApiGatewayEndpoint, AmazonApiGatewayV1EndpointHandler, GetInputResponse, LoggerContext } from "./AmazonApiGatewayEndpointAdaptor-qlKXuZxy.mjs";
4
+ import { Service } from "@geekmidas/services";
5
+ import { EnvironmentParser } from "@geekmidas/envkit";
4
6
  import { EventPublisher } from "@geekmidas/events";
5
7
  import { Logger } from "@geekmidas/logger";
6
- import { Service } from "@geekmidas/services";
7
8
  import { StandardSchemaV1 } from "@standard-schema/spec";
8
- import { EnvironmentParser } from "@geekmidas/envkit";
9
9
  import { APIGatewayProxyEvent, Context } from "aws-lambda";
10
10
 
11
11
  //#region src/endpoints/AmazonApiGatewayV1EndpointAdaptor.d.ts
@@ -16,6 +16,8 @@ declare class AmazonApiGatewayV1Endpoint<TRoute extends string, TMethod extends
16
16
  getLoggerContext(data: APIGatewayProxyEvent, context: Context): LoggerContext;
17
17
  constructor(envParser: EnvironmentParser<{}>, endpoint: Endpoint<TRoute, TMethod, TInput, TOutSchema, TServices, TLogger, TSession, TEventPublisher>);
18
18
  }
19
+ //# sourceMappingURL=AmazonApiGatewayV1EndpointAdaptor.d.ts.map
20
+
19
21
  //#endregion
20
22
  export { AmazonApiGatewayV1Endpoint };
21
- //# sourceMappingURL=AmazonApiGatewayV1EndpointAdaptor-CVwJ5k16.d.cts.map
23
+ //# sourceMappingURL=AmazonApiGatewayV1EndpointAdaptor-MRUxs3Xi.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AmazonApiGatewayV1EndpointAdaptor-MRUxs3Xi.d.mts","names":[],"sources":["../src/endpoints/AmazonApiGatewayV1EndpointAdaptor.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;cAkBa,kEAEK,2BACD,yCACI,4DACD,gCACF,SAAS,oDAED,qDAChB,yBACR,mCACA,sBACA,QACA,SACA,QACA,YACA,WACA,SACA,UACA;uBAiDgC;EApErB,mBAAA,QAAA,EAqE6B,QArEH,CAsEjC,MAtEiC,EAuEjC,OAvEiC,EAwEjC,MAxEiC,EAyEjC,UAzEiC,EA0EjC,SA1EiC,EA2EjC,OA3EiC,EA4EjC,QA5EiC,EA6EjC,eA7EiC,CAAA;EAAA,QAAA,CAAA,CAAA,EAqBhB,oBArBgB,CAAA,EAqBO,gBArBP;EAAA,gBAErB,CAAA,IAAA,EAgDR,oBAhDQ,EAAA,OAAA,EAiDL,OAjDK,CAAA,EAkDb,aAlDa;EAAU,WACX,CAAA,SAAA,EAiEiB,iBAjEjB,CAAA,CAAA,CAAA,CAAA,EAAA,QAAA,EAkEyB,QAlEzB,CAmEX,MAnEW,EAoEX,OApEW,EAqEX,MArEW,EAsEX,UAtEW,EAuEX,SAvEW,EAwEX,OAxEW,EAyEX,QAzEW,EA0EX,eA1EW,CAAA"}
@@ -1,5 +1,5 @@
1
- const require_AmazonApiGatewayEndpointAdaptor = require('./AmazonApiGatewayEndpointAdaptor-Bk6ssx3K.cjs');
2
- const require_parseQueryParams = require('./parseQueryParams-CwvXXwkW.cjs');
1
+ const require_AmazonApiGatewayEndpointAdaptor = require('./AmazonApiGatewayEndpointAdaptor-DNFvvdmW.cjs');
2
+ const require_parseQueryParams = require('./parseQueryParams-BSNkjmZ9.cjs');
3
3
 
4
4
  //#region src/endpoints/AmazonApiGatewayV2EndpointAdaptor.ts
5
5
  var AmazonApiGatewayV2Endpoint = class extends require_AmazonApiGatewayEndpointAdaptor.AmazonApiGatewayEndpoint {
@@ -43,4 +43,4 @@ Object.defineProperty(exports, 'AmazonApiGatewayV2Endpoint', {
43
43
  return AmazonApiGatewayV2Endpoint;
44
44
  }
45
45
  });
46
- //# sourceMappingURL=AmazonApiGatewayV2EndpointAdaptor-I1W23Nvn.cjs.map
46
+ //# sourceMappingURL=AmazonApiGatewayV2EndpointAdaptor-D8-0Aab4.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AmazonApiGatewayV2EndpointAdaptor-D8-0Aab4.cjs","names":["AmazonApiGatewayEndpoint","e: APIGatewayProxyEventV2","processedParams: Record<string, string | string[]>","event: APIGatewayProxyEventV2","context: Context","envParser: EnvironmentParser<{}>","endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >"],"sources":["../src/endpoints/AmazonApiGatewayV2EndpointAdaptor.ts"],"sourcesContent":["import type { Logger } from '@geekmidas/logger';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport type { HttpMethod } from '../types';\nimport type { Endpoint, EndpointSchemas } from './Endpoint';\n\nimport type { EnvironmentParser } from '@geekmidas/envkit';\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Service } from '@geekmidas/services';\nimport type { APIGatewayProxyEventV2, Context } from 'aws-lambda';\nimport {\n AmazonApiGatewayEndpoint,\n type AmazonApiGatewayV2EndpointHandler,\n type GetInputResponse,\n type LoggerContext,\n} from './AmazonApiGatewayEndpointAdaptor';\nimport { parseQueryParams } from './parseQueryParams';\n\nexport class AmazonApiGatewayV2Endpoint<\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> extends AmazonApiGatewayEndpoint<\n AmazonApiGatewayV2EndpointHandler,\n APIGatewayProxyEventV2,\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n> {\n override getInput(e: APIGatewayProxyEventV2): GetInputResponse {\n // API Gateway V2 handles arrays as comma-separated values\n const queryParams = e.queryStringParameters || {};\n const processedParams: Record<string, string | string[]> = {};\n\n for (const [key, value] of Object.entries(queryParams)) {\n if (value !== undefined) {\n // Check if value contains comma and could be an array\n // Be careful not to split values that legitimately contain commas\n if (value.includes(',') && !value.includes('\"')) {\n processedParams[key] = value.split(',').map((v) => v.trim());\n } else {\n processedParams[key] = value;\n }\n }\n }\n\n return {\n body: e.body ? JSON.parse(e.body) : undefined,\n query: parseQueryParams(processedParams),\n params: e.pathParameters || {},\n };\n }\n override getLoggerContext(\n event: APIGatewayProxyEventV2,\n context: Context,\n ): LoggerContext {\n return {\n fn: {\n name: context.functionName,\n version: context.functionVersion,\n },\n req: {\n id: event.requestContext.requestId,\n awsRequestId: context.awsRequestId,\n ip: event.requestContext.http.sourceIp,\n userAgent: event.requestContext.http.userAgent || undefined,\n path: event.requestContext.http.path,\n },\n };\n }\n constructor(\n protected override envParser: EnvironmentParser<{}>,\n protected override readonly endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >,\n ) {\n super(envParser, endpoint);\n }\n}\n"],"mappings":";;;;AAiBA,IAAa,6BAAb,cASUA,iEAWR;CACA,AAAS,SAASC,GAA6C;EAE7D,MAAM,cAAc,EAAE,yBAAyB,CAAE;EACjD,MAAMC,kBAAqD,CAAE;AAE7D,OAAK,MAAM,CAAC,KAAK,MAAM,IAAI,OAAO,QAAQ,YAAY,CACpD,KAAI,iBAGF,KAAI,MAAM,SAAS,IAAI,KAAK,MAAM,SAAS,KAAI,CAC7C,iBAAgB,OAAO,MAAM,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;MAE5D,iBAAgB,OAAO;AAK7B,SAAO;GACL,MAAM,EAAE,OAAO,KAAK,MAAM,EAAE,KAAK;GACjC,OAAO,0CAAiB,gBAAgB;GACxC,QAAQ,EAAE,kBAAkB,CAAE;EAC/B;CACF;CACD,AAAS,iBACPC,OACAC,SACe;AACf,SAAO;GACL,IAAI;IACF,MAAM,QAAQ;IACd,SAAS,QAAQ;GAClB;GACD,KAAK;IACH,IAAI,MAAM,eAAe;IACzB,cAAc,QAAQ;IACtB,IAAI,MAAM,eAAe,KAAK;IAC9B,WAAW,MAAM,eAAe,KAAK;IACrC,MAAM,MAAM,eAAe,KAAK;GACjC;EACF;CACF;CACD,YACqBC,WACSC,UAU5B;AACA,QAAM,WAAW,SAAS;EAZP;EACS;CAY7B;AACF"}
@@ -1,6 +1,6 @@
1
- import { HttpMethod } from "./types-Bp9ysFXd.cjs";
2
- import { Endpoint, EndpointSchemas } from "./Endpoint-CC2RGjkl.cjs";
3
- import { AmazonApiGatewayEndpoint, AmazonApiGatewayV2EndpointHandler, GetInputResponse, LoggerContext } from "./AmazonApiGatewayEndpointAdaptor-CbJqLU6I.cjs";
1
+ import { HttpMethod } from "./types-B5H3piDg.cjs";
2
+ import { Endpoint, EndpointSchemas } from "./Endpoint-BPv9_-m_.cjs";
3
+ import { AmazonApiGatewayEndpoint, AmazonApiGatewayV2EndpointHandler, GetInputResponse, LoggerContext } from "./AmazonApiGatewayEndpointAdaptor-DLqnYQ4E.cjs";
4
4
  import { EventPublisher } from "@geekmidas/events";
5
5
  import { Logger } from "@geekmidas/logger";
6
6
  import { Service } from "@geekmidas/services";
@@ -16,6 +16,8 @@ declare class AmazonApiGatewayV2Endpoint<TRoute extends string, TMethod extends
16
16
  getLoggerContext(event: APIGatewayProxyEventV2, context: Context): LoggerContext;
17
17
  constructor(envParser: EnvironmentParser<{}>, endpoint: Endpoint<TRoute, TMethod, TInput, TOutSchema, TServices, TLogger, TSession, TEventPublisher>);
18
18
  }
19
+ //# sourceMappingURL=AmazonApiGatewayV2EndpointAdaptor.d.ts.map
20
+
19
21
  //#endregion
20
22
  export { AmazonApiGatewayV2Endpoint };
21
- //# sourceMappingURL=AmazonApiGatewayV2EndpointAdaptor-1oBZdQH3.d.cts.map
23
+ //# sourceMappingURL=AmazonApiGatewayV2EndpointAdaptor-M1-w0U5R.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AmazonApiGatewayV2EndpointAdaptor-M1-w0U5R.d.cts","names":[],"sources":["../src/endpoints/AmazonApiGatewayV2EndpointAdaptor.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;cAiBa,kEAEK,2BACD,yCACI,4DACD,gCACF,SAAS,oDAED,qDAChB,yBACR,mCACA,wBACA,QACA,SACA,QACA,YACA,WACA,SACA,UACA;uBA4CgC;EA/DrB,mBAAA,QAAA,EAgE6B,QAhEH,CAiEjC,MAjEiC,EAkEjC,OAlEiC,EAmEjC,MAnEiC,EAoEjC,UApEiC,EAqEjC,SArEiC,EAsEjC,OAtEiC,EAuEjC,QAvEiC,EAwEjC,eAxEiC,CAAA;EAAA,QAAA,CAAA,CAAA,EAqBhB,sBArBgB,CAAA,EAqBS,gBArBT;EAAA,gBAErB,CAAA,KAAA,EA2CP,sBA3CO,EAAA,OAAA,EA4CL,OA5CK,CAAA,EA6Cb,aA7Ca;EAAU,WACX,CAAA,SAAA,EA4DiB,iBA5DjB,CAAA,CAAA,CAAA,CAAA,EAAA,QAAA,EA6DyB,QA7DzB,CA8DX,MA9DW,EA+DX,OA/DW,EAgEX,MAhEW,EAiEX,UAjEW,EAkEX,SAlEW,EAmEX,OAnEW,EAoEX,QApEW,EAqEX,eArEW,CAAA"}
@@ -1,6 +1,6 @@
1
- import { HttpMethod } from "./types-CScirkHt.mjs";
2
- import { Endpoint, EndpointSchemas } from "./Endpoint-C5djXyae.mjs";
3
- import { AmazonApiGatewayEndpoint, AmazonApiGatewayV2EndpointHandler, GetInputResponse, LoggerContext } from "./AmazonApiGatewayEndpointAdaptor-DC3N7zY_.mjs";
1
+ import { HttpMethod } from "./types-DdIlpxAd.mjs";
2
+ import { Endpoint, EndpointSchemas } from "./Endpoint-BdwG75G_.mjs";
3
+ import { AmazonApiGatewayEndpoint, AmazonApiGatewayV2EndpointHandler, GetInputResponse, LoggerContext } from "./AmazonApiGatewayEndpointAdaptor-qlKXuZxy.mjs";
4
4
  import { Service } from "@geekmidas/services";
5
5
  import { EnvironmentParser } from "@geekmidas/envkit";
6
6
  import { EventPublisher } from "@geekmidas/events";
@@ -16,6 +16,8 @@ declare class AmazonApiGatewayV2Endpoint<TRoute extends string, TMethod extends
16
16
  getLoggerContext(event: APIGatewayProxyEventV2, context: Context): LoggerContext;
17
17
  constructor(envParser: EnvironmentParser<{}>, endpoint: Endpoint<TRoute, TMethod, TInput, TOutSchema, TServices, TLogger, TSession, TEventPublisher>);
18
18
  }
19
+ //# sourceMappingURL=AmazonApiGatewayV2EndpointAdaptor.d.ts.map
20
+
19
21
  //#endregion
20
22
  export { AmazonApiGatewayV2Endpoint };
21
- //# sourceMappingURL=AmazonApiGatewayV2EndpointAdaptor-C3H8Hpv7.d.mts.map
23
+ //# sourceMappingURL=AmazonApiGatewayV2EndpointAdaptor-fuLM6M9k.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AmazonApiGatewayV2EndpointAdaptor-fuLM6M9k.d.mts","names":[],"sources":["../src/endpoints/AmazonApiGatewayV2EndpointAdaptor.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;cAiBa,kEAEK,2BACD,yCACI,4DACD,gCACF,SAAS,oDAED,qDAChB,yBACR,mCACA,wBACA,QACA,SACA,QACA,YACA,WACA,SACA,UACA;uBA4CgC;EA/DrB,mBAAA,QAAA,EAgE6B,QAhEH,CAiEjC,MAjEiC,EAkEjC,OAlEiC,EAmEjC,MAnEiC,EAoEjC,UApEiC,EAqEjC,SArEiC,EAsEjC,OAtEiC,EAuEjC,QAvEiC,EAwEjC,eAxEiC,CAAA;EAAA,QAAA,CAAA,CAAA,EAqBhB,sBArBgB,CAAA,EAqBS,gBArBT;EAAA,gBAErB,CAAA,KAAA,EA2CP,sBA3CO,EAAA,OAAA,EA4CL,OA5CK,CAAA,EA6Cb,aA7Ca;EAAU,WACX,CAAA,SAAA,EA4DiB,iBA5DjB,CAAA,CAAA,CAAA,CAAA,EAAA,QAAA,EA6DyB,QA7DzB,CA8DX,MA9DW,EA+DX,OA/DW,EAgEX,MAhEW,EAiEX,UAjEW,EAkEX,SAlEW,EAmEX,OAnEW,EAoEX,QApEW,EAqEX,eArEW,CAAA"}
@@ -1,5 +1,5 @@
1
- import { AmazonApiGatewayEndpoint } from "./AmazonApiGatewayEndpointAdaptor-pEWzF2uY.mjs";
2
- import { parseQueryParams } from "./parseQueryParams-CHINupbZ.mjs";
1
+ import { AmazonApiGatewayEndpoint } from "./AmazonApiGatewayEndpointAdaptor-BT9JXihC.mjs";
2
+ import { parseQueryParams } from "./parseQueryParams-UMTRnRrW.mjs";
3
3
 
4
4
  //#region src/endpoints/AmazonApiGatewayV2EndpointAdaptor.ts
5
5
  var AmazonApiGatewayV2Endpoint = class extends AmazonApiGatewayEndpoint {
@@ -38,4 +38,4 @@ var AmazonApiGatewayV2Endpoint = class extends AmazonApiGatewayEndpoint {
38
38
 
39
39
  //#endregion
40
40
  export { AmazonApiGatewayV2Endpoint };
41
- //# sourceMappingURL=AmazonApiGatewayV2EndpointAdaptor-ChO8BlDz.mjs.map
41
+ //# sourceMappingURL=AmazonApiGatewayV2EndpointAdaptor-lCRzGE4q.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AmazonApiGatewayV2EndpointAdaptor-lCRzGE4q.mjs","names":["e: APIGatewayProxyEventV2","processedParams: Record<string, string | string[]>","event: APIGatewayProxyEventV2","context: Context","envParser: EnvironmentParser<{}>","endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >"],"sources":["../src/endpoints/AmazonApiGatewayV2EndpointAdaptor.ts"],"sourcesContent":["import type { Logger } from '@geekmidas/logger';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport type { HttpMethod } from '../types';\nimport type { Endpoint, EndpointSchemas } from './Endpoint';\n\nimport type { EnvironmentParser } from '@geekmidas/envkit';\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Service } from '@geekmidas/services';\nimport type { APIGatewayProxyEventV2, Context } from 'aws-lambda';\nimport {\n AmazonApiGatewayEndpoint,\n type AmazonApiGatewayV2EndpointHandler,\n type GetInputResponse,\n type LoggerContext,\n} from './AmazonApiGatewayEndpointAdaptor';\nimport { parseQueryParams } from './parseQueryParams';\n\nexport class AmazonApiGatewayV2Endpoint<\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> extends AmazonApiGatewayEndpoint<\n AmazonApiGatewayV2EndpointHandler,\n APIGatewayProxyEventV2,\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n> {\n override getInput(e: APIGatewayProxyEventV2): GetInputResponse {\n // API Gateway V2 handles arrays as comma-separated values\n const queryParams = e.queryStringParameters || {};\n const processedParams: Record<string, string | string[]> = {};\n\n for (const [key, value] of Object.entries(queryParams)) {\n if (value !== undefined) {\n // Check if value contains comma and could be an array\n // Be careful not to split values that legitimately contain commas\n if (value.includes(',') && !value.includes('\"')) {\n processedParams[key] = value.split(',').map((v) => v.trim());\n } else {\n processedParams[key] = value;\n }\n }\n }\n\n return {\n body: e.body ? JSON.parse(e.body) : undefined,\n query: parseQueryParams(processedParams),\n params: e.pathParameters || {},\n };\n }\n override getLoggerContext(\n event: APIGatewayProxyEventV2,\n context: Context,\n ): LoggerContext {\n return {\n fn: {\n name: context.functionName,\n version: context.functionVersion,\n },\n req: {\n id: event.requestContext.requestId,\n awsRequestId: context.awsRequestId,\n ip: event.requestContext.http.sourceIp,\n userAgent: event.requestContext.http.userAgent || undefined,\n path: event.requestContext.http.path,\n },\n };\n }\n constructor(\n protected override envParser: EnvironmentParser<{}>,\n protected override readonly endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >,\n ) {\n super(envParser, endpoint);\n }\n}\n"],"mappings":";;;;AAiBA,IAAa,6BAAb,cASU,yBAWR;CACA,AAAS,SAASA,GAA6C;EAE7D,MAAM,cAAc,EAAE,yBAAyB,CAAE;EACjD,MAAMC,kBAAqD,CAAE;AAE7D,OAAK,MAAM,CAAC,KAAK,MAAM,IAAI,OAAO,QAAQ,YAAY,CACpD,KAAI,iBAGF,KAAI,MAAM,SAAS,IAAI,KAAK,MAAM,SAAS,KAAI,CAC7C,iBAAgB,OAAO,MAAM,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;MAE5D,iBAAgB,OAAO;AAK7B,SAAO;GACL,MAAM,EAAE,OAAO,KAAK,MAAM,EAAE,KAAK;GACjC,OAAO,iBAAiB,gBAAgB;GACxC,QAAQ,EAAE,kBAAkB,CAAE;EAC/B;CACF;CACD,AAAS,iBACPC,OACAC,SACe;AACf,SAAO;GACL,IAAI;IACF,MAAM,QAAQ;IACd,SAAS,QAAQ;GAClB;GACD,KAAK;IACH,IAAI,MAAM,eAAe;IACzB,cAAc,QAAQ;IACtB,IAAI,MAAM,eAAe,KAAK;IAC9B,WAAW,MAAM,eAAe,KAAK;IACrC,MAAM,MAAM,eAAe,KAAK;GACjC;EACF;CACF;CACD,YACqBC,WACSC,UAU5B;AACA,QAAM,WAAW,SAAS;EAZP;EACS;CAY7B;AACF"}
@@ -120,6 +120,7 @@ declare function isBuiltInSecurityScheme(name: string): name is BuiltInSecurityS
120
120
  * Get a security scheme by name (built-in or custom)
121
121
  */
122
122
  declare function getSecurityScheme(name: string, customSchemes?: Record<string, SecurityScheme>): SecurityScheme | undefined;
123
+ //# sourceMappingURL=Authorizer.d.ts.map
123
124
  //#endregion
124
125
  export { Authorizer, BUILT_IN_SECURITY_SCHEMES, BuiltInSecuritySchemeId, OAuthFlow, OAuthFlows, SecurityScheme, createAuthorizer, getSecurityScheme, isBuiltInSecurityScheme };
125
- //# sourceMappingURL=Authorizer-CpSUMTIs.d.cts.map
126
+ //# sourceMappingURL=Authorizer-B-btowNd.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Authorizer-B-btowNd.d.cts","names":[],"sources":["../src/endpoints/Authorizer.ts"],"sourcesContent":[],"mappings":";;AAIA;AAwBA;;AACa,UAzBI,cAAA,CAyBJ;EAAS;EACA,IACA,EAAA,QAAA,GAAA,MAAA,GAAA,WAAA,GAAA,QAAA,GAAA,eAAA;EAAS;EACA,WAAA,CAAA,EAAA,MAAA;EAGd;EAWJ,IAAA,CAAA,EAAA,MAAA;EAsCD;EAKK,EAAA,CAAA,EAAA,OAAA,GAAU,QAAA,GAAA,QAAA;EAAA;EAAA,MAQR,CAAA,EAAA,MAAA;EAAc;EAed,YAAA,CAAA,EAAA,MAAA;EAMH;EAAgB,KAAA,CAAA,EApGtB,UAoGsB;EAAA;EAEL,gBAAf,CAAA,EAAA,MAAA;EAAI;EACH,CAAA,GAAA,EAAA,KAAA,MAAA,EAAA,CAAA,EAAA,OAAA;AAUb;AASA;;;AAEkB,UAlHD,UAAA,CAkHC;EAAM,QACrB,CAAA,EAlHU,SAkHV;EAAc,QAAA,CAAA,EAjHJ,SAiHI;sBAhHK;sBACA;;UAGL,SAAA;;;;UAIP;;;;;;cAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAsCD,uBAAA,gBAAuC;;;;UAKlC,UAAA;;;;;;;;mBAQE;;;;;;;;;;;;;;;aAeN;;;;;iBAMG,gBAAA,yBAEJ,KAAK,sBACd;;;;iBAUa,uBAAA,wBAEL;;;;iBAOK,iBAAA,+BAEE,eAAe,kBAC9B"}
@@ -120,6 +120,7 @@ declare function isBuiltInSecurityScheme(name: string): name is BuiltInSecurityS
120
120
  * Get a security scheme by name (built-in or custom)
121
121
  */
122
122
  declare function getSecurityScheme(name: string, customSchemes?: Record<string, SecurityScheme>): SecurityScheme | undefined;
123
+ //# sourceMappingURL=Authorizer.d.ts.map
123
124
  //#endregion
124
125
  export { Authorizer, BUILT_IN_SECURITY_SCHEMES, BuiltInSecuritySchemeId, OAuthFlow, OAuthFlows, SecurityScheme, createAuthorizer, getSecurityScheme, isBuiltInSecurityScheme };
125
- //# sourceMappingURL=Authorizer-Cpx59w_q.d.mts.map
126
+ //# sourceMappingURL=Authorizer-gWxYsGEp.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Authorizer-gWxYsGEp.d.mts","names":[],"sources":["../src/endpoints/Authorizer.ts"],"sourcesContent":[],"mappings":";;AAIA;AAwBA;;AACa,UAzBI,cAAA,CAyBJ;EAAS;EACA,IACA,EAAA,QAAA,GAAA,MAAA,GAAA,WAAA,GAAA,QAAA,GAAA,eAAA;EAAS;EACA,WAAA,CAAA,EAAA,MAAA;EAGd;EAWJ,IAAA,CAAA,EAAA,MAAA;EAsCD;EAKK,EAAA,CAAA,EAAA,OAAA,GAAU,QAAA,GAAA,QAAA;EAAA;EAAA,MAQR,CAAA,EAAA,MAAA;EAAc;EAed,YAAA,CAAA,EAAA,MAAA;EAMH;EAAgB,KAAA,CAAA,EApGtB,UAoGsB;EAAA;EAEL,gBAAf,CAAA,EAAA,MAAA;EAAI;EACH,CAAA,GAAA,EAAA,KAAA,MAAA,EAAA,CAAA,EAAA,OAAA;AAUb;AASA;;;AAEkB,UAlHD,UAAA,CAkHC;EAAM,QACrB,CAAA,EAlHU,SAkHV;EAAc,QAAA,CAAA,EAjHJ,SAiHI;sBAhHK;sBACA;;UAGL,SAAA;;;;UAIP;;;;;;cAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAsCD,uBAAA,gBAAuC;;;;UAKlC,UAAA;;;;;;;;mBAQE;;;;;;;;;;;;;;;aAeN;;;;;iBAMG,gBAAA,yBAEJ,KAAK,sBACd;;;;iBAUa,uBAAA,wBAEL;;;;iBAOK,iBAAA,+BAEE,eAAe,kBAC9B"}
@@ -1,8 +1,8 @@
1
- import { ConstructType } from "./Construct-jBKqb-Zi.mjs";
2
- import { Service } from "@geekmidas/services";
1
+ import { ConstructType } from "./Construct-C4rPE67v.cjs";
3
2
  import { AuditStorage } from "@geekmidas/audit";
4
3
  import { EventPublisher, MappedEvent } from "@geekmidas/events";
5
4
  import { Logger } from "@geekmidas/logger";
5
+ import { Service } from "@geekmidas/services";
6
6
  import { StandardSchemaV1 } from "@standard-schema/spec";
7
7
  import { ComposableStandardSchema, InferComposableStandardSchema } from "@geekmidas/schema";
8
8
 
@@ -35,6 +35,8 @@ declare abstract class BaseFunctionBuilder<TInput extends ComposableStandardSche
35
35
  */
36
36
  database<T, TName extends string>(service: Service<TName, T>): BaseFunctionBuilder<TInput, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, T, TName>;
37
37
  }
38
+ //# sourceMappingURL=BaseFunctionBuilder.d.ts.map
39
+
38
40
  //#endregion
39
41
  export { BaseFunctionBuilder };
40
- //# sourceMappingURL=BaseFunctionBuilder-CoV7J45W.d.mts.map
42
+ //# sourceMappingURL=BaseFunctionBuilder-BAtutR6q.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseFunctionBuilder-BAtutR6q.d.cts","names":[],"sources":["../src/functions/BaseFunctionBuilder.ts"],"sourcesContent":[],"mappings":";;;;;;;;;uBAesB,mCACL,4CACG,4DACA,gCACF,SAAS,gCACD,uHAEF;QAsDC;EA7DH,UAAA,WAAA,CAAmB,EAYf,MAZe;EAAA,UAAA,YAAA,CAAA,EAad,SAbc;EAAA,UACxB,QAAA,CAAA,EAAA,MAAA;EAAwB,SACrB,EAcA,SAdA;EAAgB,OAChB,EAcF,OAdE;EAAO,UACT,OAAA,EAeG,WAfH,CAee,eAff,EAegC,SAfhC,CAAA,EAAA;EAAM,UAAG,UAAA,CAAA,EAgBF,OAhBE,CAgBM,0BAhBN,EAgBkC,eAhBlC,CAAA;EAAM,UACP,eAAA,CAAA,EAgBI,OAhBJ,CAgBY,wBAhBZ,EAgBsC,aAhBtC,CAAA;EAAc,UAEhB,gBAAA,CAAA,EAeO,OAfP,CAee,oBAff,EAeqC,SAfrC,CAAA;EAAY,OAsDX,kBAAA,CAAA,CAAA,EAAA,OAAA,CAAA,EAAA,CAAA,IArCqB,gBAqCrB;EAAA,OAjDC,6BAAA,CAAA,UAmBZ,wBAnBY,GAAA,SAAA,CAAA,CAAA,IAAA,EAAA,OAAA,EAAA,MAAA,EAoBC,CApBD,CAAA,EAoBK,OApBL,CAoBa,6BApBb,CAoB2C,CApB3C,CAAA,CAAA;EAAM,WACL,CAAA,IAAA,CAAA,EAgDF,aAhDE;EAAS,SAGhB,QAAA,CAAA,UA+CU,OA/CV,EAAA,CAAA,CAAA,QAAA,EA+C+B,CA/C/B,CAAA,EAAA,GAAA;EAAS,SACX,MAAA,CAAA,UAgDU,MAhDV,CAAA,CAAA,MAAA,EAgD0B,CAhD1B,CAAA,EAAA,GAAA;EAAO,OAEQ,CAAA,OAAA,EAAA,MAAA,CAAA,EAAA,IAAA;EAAe,SAAE,MAAA,CAAA,UAqDtB,gBArDsB,CAAA,CAAA,MAAA,EAqDI,CArDJ,CAAA,EAAA,GAAA;EAAS,SAAtC,KAAA,CAAA,UAuDM,wBAvDN,CAAA,CAAA,MAAA,EAuDwC,CAvDxC,CAAA,EAAA,GAAA;EAAW,KACC,CAAA,eAwDV,WAxDU,CAwDE,eAxDF,EAwDmB,SAxDnB,CAAA,CAAA,CAAA,KAAA,EAyDtB,MAzDsB,CAAA,EAAA,IAAA;EAA0B,SAAE,CAAA,UA+DvC,cA/DuC,CAAA,GAAA,CAAA,EAAA,cAAA,MAAA,CAAA,CAAA,SAAA,EAgE9C,OAhE8C,CAgEtC,KAhEsC,EAgE/B,CAhE+B,CAAA,CAAA,EAiExD,mBAjEwD,CAkEzD,MAlEyD,EAmEzD,SAnEyD,EAoEzD,SApEyD,EAqEzD,OArEyD,EAsEzD,CAtEyD,EAuEzD,KAvEyD,EAwEzD,aAxEyD,EAyEzD,wBAzEyD,EA0EzD,SA1EyD,EA2EzD,oBA3EyD,CAAA;EAAe,OAAnD,CAAA,UAgGL,YAhGK,EAAA,cAAA,MAAA,CAAA,CAAA,OAAA,EAiGZ,OAjGY,CAiGJ,KAjGI,EAiGG,CAjGH,CAAA,CAAA,EAkGpB,mBAlGoB,CAmGrB,MAnGqB,EAoGrB,SApGqB,EAqGrB,SArGqB,EAsGrB,OAtGqB,EAuGrB,eAvGqB,EAwGrB,0BAxGqB,EAyGrB,CAzGqB,EA0GrB,KA1GqB,EA2GrB,SA3GqB,EA4GrB,oBA5GqB,CAAA;EAAO;;;;EAE2B,QAAE,CAAA,CAAA,EAAA,cAAA,MAAA,CAAA,CAAA,OAAA,EAoIhD,OApIgD,CAoIxC,KApIwC,EAoIjC,CApIiC,CAAA,CAAA,EAqIxD,mBArIwD,CAsIzD,MAtIyD,EAuIzD,SAvIyD,EAwIzD,SAxIyD,EAyIzD,OAzIyD,EA0IzD,eA1IyD,EA2IzD,0BA3IyD,EA4IzD,aA5IyD,EA6IzD,wBA7IyD,EA8IzD,CA9IyD,EA+IzD,KA/IyD,CAAA"}
@@ -1,4 +1,4 @@
1
- import { ConstructType } from "./Construct-LWeB1rSQ.mjs";
1
+ import { ConstructType } from "./Construct-DdyGHuag.mjs";
2
2
  import { ConsoleLogger } from "@geekmidas/logger/console";
3
3
  import get from "lodash.get";
4
4
 
@@ -67,4 +67,4 @@ var BaseFunctionBuilder = class BaseFunctionBuilder {
67
67
 
68
68
  //#endregion
69
69
  export { BaseFunctionBuilder };
70
- //# sourceMappingURL=BaseFunctionBuilder-B5gkW0Kt.mjs.map
70
+ //# sourceMappingURL=BaseFunctionBuilder-Czi1Jwza.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseFunctionBuilder-B5gkW0Kt.mjs","names":["DEFAULT_LOGGER","s: unknown","data: unknown","schema: T","result: any","timeout: number","event: TEvent","publisher: Service<TName, T>","storage: Service<TName, T>","service: Service<TName, T>"],"sources":["../src/functions/BaseFunctionBuilder.ts"],"sourcesContent":["import type { AuditStorage } from '@geekmidas/audit';\nimport type { EventPublisher, MappedEvent } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport { ConsoleLogger } from '@geekmidas/logger/console';\nimport type {\n ComposableStandardSchema,\n InferComposableStandardSchema,\n} from '@geekmidas/schema';\nimport type { Service } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport get from 'lodash.get';\nimport { ConstructType } from '../Construct';\n\nconst DEFAULT_LOGGER = new ConsoleLogger() as any;\n\nexport abstract class BaseFunctionBuilder<\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 TAuditStorage extends AuditStorage | undefined = undefined,\n TAuditStorageServiceName extends string = string,\n TDatabase = undefined,\n TDatabaseServiceName extends string = string,\n> {\n protected inputSchema?: TInput;\n protected outputSchema?: OutSchema;\n protected _timeout?: number;\n\n public _services: TServices = [] as Service[] as TServices;\n public _logger: TLogger = DEFAULT_LOGGER;\n\n protected _events: MappedEvent<TEventPublisher, OutSchema>[] = [];\n protected _publisher?: Service<TEventPublisherServiceName, TEventPublisher>;\n protected _auditorStorage?: Service<TAuditStorageServiceName, TAuditStorage>;\n protected _databaseService?: Service<TDatabaseServiceName, TDatabase>;\n\n static isStandardSchemaV1(s: unknown): s is StandardSchemaV1 {\n const schema = (s as StandardSchemaV1)['~standard'];\n\n return schema && typeof schema.validate === 'function';\n }\n\n static async parseComposableStandardSchema<\n T extends ComposableStandardSchema | undefined,\n >(data: unknown, schema: T): Promise<InferComposableStandardSchema<T>> {\n if (BaseFunctionBuilder.isStandardSchemaV1(schema)) {\n const validated = await schema['~standard'].validate(data);\n\n if (validated.issues) {\n throw validated.issues;\n }\n\n return validated.value as InferComposableStandardSchema<T>;\n }\n\n const result: any = {};\n for (const key in schema) {\n const item = schema[key];\n if (BaseFunctionBuilder.isStandardSchemaV1(item)) {\n const value = get(data, key);\n const validated = await item['~standard'].validate(value);\n\n if (validated.issues) {\n throw validated.issues;\n }\n\n result[key] = validated.value;\n }\n }\n\n return result as InferComposableStandardSchema<T>;\n }\n\n constructor(public type = ConstructType.Function) {}\n\n abstract services<T extends Service[]>(services: T): any;\n\n abstract logger<T extends Logger>(logger: T): any;\n\n timeout(timeout: number): this {\n this._timeout = timeout;\n return this;\n }\n\n abstract output<T extends StandardSchemaV1>(schema: T): any;\n\n abstract input<T extends ComposableStandardSchema>(schema: T): any;\n\n event<TEvent extends MappedEvent<TEventPublisher, OutSchema>>(\n event: TEvent,\n ): this {\n this._events.push(event);\n return this;\n }\n\n publisher<T extends EventPublisher<any>, TName extends string>(\n publisher: Service<TName, T>,\n ): BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n T,\n TName,\n TAuditStorage,\n TAuditStorageServiceName,\n TDatabase,\n TDatabaseServiceName\n > {\n this._publisher = publisher as unknown as Service<\n TEventPublisherServiceName,\n TEventPublisher\n >;\n\n return this as unknown as BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n T,\n TName,\n TAuditStorage,\n TAuditStorageServiceName,\n TDatabase,\n TDatabaseServiceName\n >;\n }\n\n auditor<T extends AuditStorage, TName extends string>(\n storage: Service<TName, T>,\n ): BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n T,\n TName,\n TDatabase,\n TDatabaseServiceName\n > {\n this._auditorStorage = storage as unknown as Service<\n TAuditStorageServiceName,\n TAuditStorage\n >;\n\n return this as unknown as BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n T,\n TName,\n TDatabase,\n TDatabaseServiceName\n >;\n }\n\n /**\n * Set the database service for this function.\n * The database will be available in the handler context as `db`.\n */\n database<T, TName extends string>(\n service: Service<TName, T>,\n ): BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n TAuditStorage,\n TAuditStorageServiceName,\n T,\n TName\n > {\n this._databaseService = service as unknown as Service<\n TDatabaseServiceName,\n TDatabase\n >;\n\n return this as unknown as BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n TAuditStorage,\n TAuditStorageServiceName,\n T,\n TName\n >;\n }\n}\n"],"mappings":";;;;;AAaA,MAAMA,mBAAiB,IAAI;AAE3B,IAAsB,sBAAtB,MAAsB,oBAWpB;CACA,AAAU;CACV,AAAU;CACV,AAAU;CAEV,AAAO,YAAuB,CAAE;CAChC,AAAO,UAAmBA;CAE1B,AAAU,UAAqD,CAAE;CACjE,AAAU;CACV,AAAU;CACV,AAAU;CAEV,OAAO,mBAAmBC,GAAmC;EAC3D,MAAM,SAAU,EAAuB;AAEvC,SAAO,iBAAiB,OAAO,aAAa;CAC7C;CAED,aAAa,8BAEXC,MAAeC,QAAsD;AACrE,MAAI,oBAAoB,mBAAmB,OAAO,EAAE;GAClD,MAAM,YAAY,MAAM,OAAO,aAAa,SAAS,KAAK;AAE1D,OAAI,UAAU,OACZ,OAAM,UAAU;AAGlB,UAAO,UAAU;EAClB;EAED,MAAMC,SAAc,CAAE;AACtB,OAAK,MAAM,OAAO,QAAQ;GACxB,MAAM,OAAO,OAAO;AACpB,OAAI,oBAAoB,mBAAmB,KAAK,EAAE;IAChD,MAAM,QAAQ,IAAI,MAAM,IAAI;IAC5B,MAAM,YAAY,MAAM,KAAK,aAAa,SAAS,MAAM;AAEzD,QAAI,UAAU,OACZ,OAAM,UAAU;AAGlB,WAAO,OAAO,UAAU;GACzB;EACF;AAED,SAAO;CACR;CAED,YAAmB,OAAO,cAAc,UAAU;EAA/B;CAAiC;CAMpD,QAAQC,SAAuB;AAC7B,OAAK,WAAW;AAChB,SAAO;CACR;CAMD,MACEC,OACM;AACN,OAAK,QAAQ,KAAK,MAAM;AACxB,SAAO;CACR;CAED,UACEC,WAYA;AACA,OAAK,aAAa;AAKlB,SAAO;CAYR;CAED,QACEC,SAYA;AACA,OAAK,kBAAkB;AAKvB,SAAO;CAYR;;;;;CAMD,SACEC,SAYA;AACA,OAAK,mBAAmB;AAKxB,SAAO;CAYR;AACF"}
1
+ {"version":3,"file":"BaseFunctionBuilder-Czi1Jwza.mjs","names":["DEFAULT_LOGGER","s: unknown","data: unknown","schema: T","result: any","timeout: number","event: TEvent","publisher: Service<TName, T>","storage: Service<TName, T>","service: Service<TName, T>"],"sources":["../src/functions/BaseFunctionBuilder.ts"],"sourcesContent":["import type { AuditStorage } from '@geekmidas/audit';\nimport type { EventPublisher, MappedEvent } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport { ConsoleLogger } from '@geekmidas/logger/console';\nimport type {\n ComposableStandardSchema,\n InferComposableStandardSchema,\n} from '@geekmidas/schema';\nimport type { Service } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport get from 'lodash.get';\nimport { ConstructType } from '../Construct';\n\nconst DEFAULT_LOGGER = new ConsoleLogger() as any;\n\nexport abstract class BaseFunctionBuilder<\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 TAuditStorage extends AuditStorage | undefined = undefined,\n TAuditStorageServiceName extends string = string,\n TDatabase = undefined,\n TDatabaseServiceName extends string = string,\n> {\n protected inputSchema?: TInput;\n protected outputSchema?: OutSchema;\n protected _timeout?: number;\n\n public _services: TServices = [] as Service[] as TServices;\n public _logger: TLogger = DEFAULT_LOGGER;\n\n protected _events: MappedEvent<TEventPublisher, OutSchema>[] = [];\n protected _publisher?: Service<TEventPublisherServiceName, TEventPublisher>;\n protected _auditorStorage?: Service<TAuditStorageServiceName, TAuditStorage>;\n protected _databaseService?: Service<TDatabaseServiceName, TDatabase>;\n\n static isStandardSchemaV1(s: unknown): s is StandardSchemaV1 {\n const schema = (s as StandardSchemaV1)['~standard'];\n\n return schema && typeof schema.validate === 'function';\n }\n\n static async parseComposableStandardSchema<\n T extends ComposableStandardSchema | undefined,\n >(data: unknown, schema: T): Promise<InferComposableStandardSchema<T>> {\n if (BaseFunctionBuilder.isStandardSchemaV1(schema)) {\n const validated = await schema['~standard'].validate(data);\n\n if (validated.issues) {\n throw validated.issues;\n }\n\n return validated.value as InferComposableStandardSchema<T>;\n }\n\n const result: any = {};\n for (const key in schema) {\n const item = schema[key];\n if (BaseFunctionBuilder.isStandardSchemaV1(item)) {\n const value = get(data, key);\n const validated = await item['~standard'].validate(value);\n\n if (validated.issues) {\n throw validated.issues;\n }\n\n result[key] = validated.value;\n }\n }\n\n return result as InferComposableStandardSchema<T>;\n }\n\n constructor(public type = ConstructType.Function) {}\n\n abstract services<T extends Service[]>(services: T): any;\n\n abstract logger<T extends Logger>(logger: T): any;\n\n timeout(timeout: number): this {\n this._timeout = timeout;\n return this;\n }\n\n abstract output<T extends StandardSchemaV1>(schema: T): any;\n\n abstract input<T extends ComposableStandardSchema>(schema: T): any;\n\n event<TEvent extends MappedEvent<TEventPublisher, OutSchema>>(\n event: TEvent,\n ): this {\n this._events.push(event);\n return this;\n }\n\n publisher<T extends EventPublisher<any>, TName extends string>(\n publisher: Service<TName, T>,\n ): BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n T,\n TName,\n TAuditStorage,\n TAuditStorageServiceName,\n TDatabase,\n TDatabaseServiceName\n > {\n this._publisher = publisher as unknown as Service<\n TEventPublisherServiceName,\n TEventPublisher\n >;\n\n return this as unknown as BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n T,\n TName,\n TAuditStorage,\n TAuditStorageServiceName,\n TDatabase,\n TDatabaseServiceName\n >;\n }\n\n auditor<T extends AuditStorage, TName extends string>(\n storage: Service<TName, T>,\n ): BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n T,\n TName,\n TDatabase,\n TDatabaseServiceName\n > {\n this._auditorStorage = storage as unknown as Service<\n TAuditStorageServiceName,\n TAuditStorage\n >;\n\n return this as unknown as BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n T,\n TName,\n TDatabase,\n TDatabaseServiceName\n >;\n }\n\n /**\n * Set the database service for this function.\n * The database will be available in the handler context as `db`.\n */\n database<T, TName extends string>(\n service: Service<TName, T>,\n ): BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n TAuditStorage,\n TAuditStorageServiceName,\n T,\n TName\n > {\n this._databaseService = service as unknown as Service<\n TDatabaseServiceName,\n TDatabase\n >;\n\n return this as unknown as BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n TAuditStorage,\n TAuditStorageServiceName,\n T,\n TName\n >;\n }\n}\n"],"mappings":";;;;;AAaA,MAAMA,mBAAiB,IAAI;AAE3B,IAAsB,sBAAtB,MAAsB,oBAWpB;CACA,AAAU;CACV,AAAU;CACV,AAAU;CAEV,AAAO,YAAuB,CAAE;CAChC,AAAO,UAAmBA;CAE1B,AAAU,UAAqD,CAAE;CACjE,AAAU;CACV,AAAU;CACV,AAAU;CAEV,OAAO,mBAAmBC,GAAmC;EAC3D,MAAM,SAAU,EAAuB;AAEvC,SAAO,iBAAiB,OAAO,aAAa;CAC7C;CAED,aAAa,8BAEXC,MAAeC,QAAsD;AACrE,MAAI,oBAAoB,mBAAmB,OAAO,EAAE;GAClD,MAAM,YAAY,MAAM,OAAO,aAAa,SAAS,KAAK;AAE1D,OAAI,UAAU,OACZ,OAAM,UAAU;AAGlB,UAAO,UAAU;EAClB;EAED,MAAMC,SAAc,CAAE;AACtB,OAAK,MAAM,OAAO,QAAQ;GACxB,MAAM,OAAO,OAAO;AACpB,OAAI,oBAAoB,mBAAmB,KAAK,EAAE;IAChD,MAAM,QAAQ,IAAI,MAAM,IAAI;IAC5B,MAAM,YAAY,MAAM,KAAK,aAAa,SAAS,MAAM;AAEzD,QAAI,UAAU,OACZ,OAAM,UAAU;AAGlB,WAAO,OAAO,UAAU;GACzB;EACF;AAED,SAAO;CACR;CAED,YAAmB,OAAO,cAAc,UAAU;EAA/B;CAAiC;CAMpD,QAAQC,SAAuB;AAC7B,OAAK,WAAW;AAChB,SAAO;CACR;CAMD,MACEC,OACM;AACN,OAAK,QAAQ,KAAK,MAAM;AACxB,SAAO;CACR;CAED,UACEC,WAYA;AACA,OAAK,aAAa;AAKlB,SAAO;CAYR;CAED,QACEC,SAYA;AACA,OAAK,kBAAkB;AAKvB,SAAO;CAYR;;;;;CAMD,SACEC,SAYA;AACA,OAAK,mBAAmB;AAKxB,SAAO;CAYR;AACF"}
@@ -1,8 +1,8 @@
1
- import { ConstructType } from "./Construct-Dkd8Kvc9.cjs";
1
+ import { ConstructType } from "./Construct-XrijZFFh.mjs";
2
+ import { Service } from "@geekmidas/services";
2
3
  import { AuditStorage } from "@geekmidas/audit";
3
4
  import { EventPublisher, MappedEvent } from "@geekmidas/events";
4
5
  import { Logger } from "@geekmidas/logger";
5
- import { Service } from "@geekmidas/services";
6
6
  import { StandardSchemaV1 } from "@standard-schema/spec";
7
7
  import { ComposableStandardSchema, InferComposableStandardSchema } from "@geekmidas/schema";
8
8
 
@@ -35,6 +35,8 @@ declare abstract class BaseFunctionBuilder<TInput extends ComposableStandardSche
35
35
  */
36
36
  database<T, TName extends string>(service: Service<TName, T>): BaseFunctionBuilder<TInput, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, T, TName>;
37
37
  }
38
+ //# sourceMappingURL=BaseFunctionBuilder.d.ts.map
39
+
38
40
  //#endregion
39
41
  export { BaseFunctionBuilder };
40
- //# sourceMappingURL=BaseFunctionBuilder-DaQA0uKE.d.cts.map
42
+ //# sourceMappingURL=BaseFunctionBuilder-DRY419e7.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseFunctionBuilder-DRY419e7.d.mts","names":[],"sources":["../src/functions/BaseFunctionBuilder.ts"],"sourcesContent":[],"mappings":";;;;;;;;;uBAesB,mCACL,4CACG,4DACA,gCACF,SAAS,gCACD,uHAEF;QAsDC;EA7DH,UAAA,WAAA,CAAmB,EAYf,MAZe;EAAA,UAAA,YAAA,CAAA,EAad,SAbc;EAAA,UACxB,QAAA,CAAA,EAAA,MAAA;EAAwB,SACrB,EAcA,SAdA;EAAgB,OAChB,EAcF,OAdE;EAAO,UACT,OAAA,EAeG,WAfH,CAee,eAff,EAegC,SAfhC,CAAA,EAAA;EAAM,UAAG,UAAA,CAAA,EAgBF,OAhBE,CAgBM,0BAhBN,EAgBkC,eAhBlC,CAAA;EAAM,UACP,eAAA,CAAA,EAgBI,OAhBJ,CAgBY,wBAhBZ,EAgBsC,aAhBtC,CAAA;EAAc,UAEhB,gBAAA,CAAA,EAeO,OAfP,CAee,oBAff,EAeqC,SAfrC,CAAA;EAAY,OAsDX,kBAAA,CAAA,CAAA,EAAA,OAAA,CAAA,EAAA,CAAA,IArCqB,gBAqCrB;EAAA,OAjDC,6BAAA,CAAA,UAmBZ,wBAnBY,GAAA,SAAA,CAAA,CAAA,IAAA,EAAA,OAAA,EAAA,MAAA,EAoBC,CApBD,CAAA,EAoBK,OApBL,CAoBa,6BApBb,CAoB2C,CApB3C,CAAA,CAAA;EAAM,WACL,CAAA,IAAA,CAAA,EAgDF,aAhDE;EAAS,SAGhB,QAAA,CAAA,UA+CU,OA/CV,EAAA,CAAA,CAAA,QAAA,EA+C+B,CA/C/B,CAAA,EAAA,GAAA;EAAS,SACX,MAAA,CAAA,UAgDU,MAhDV,CAAA,CAAA,MAAA,EAgD0B,CAhD1B,CAAA,EAAA,GAAA;EAAO,OAEQ,CAAA,OAAA,EAAA,MAAA,CAAA,EAAA,IAAA;EAAe,SAAE,MAAA,CAAA,UAqDtB,gBArDsB,CAAA,CAAA,MAAA,EAqDI,CArDJ,CAAA,EAAA,GAAA;EAAS,SAAtC,KAAA,CAAA,UAuDM,wBAvDN,CAAA,CAAA,MAAA,EAuDwC,CAvDxC,CAAA,EAAA,GAAA;EAAW,KACC,CAAA,eAwDV,WAxDU,CAwDE,eAxDF,EAwDmB,SAxDnB,CAAA,CAAA,CAAA,KAAA,EAyDtB,MAzDsB,CAAA,EAAA,IAAA;EAA0B,SAAE,CAAA,UA+DvC,cA/DuC,CAAA,GAAA,CAAA,EAAA,cAAA,MAAA,CAAA,CAAA,SAAA,EAgE9C,OAhE8C,CAgEtC,KAhEsC,EAgE/B,CAhE+B,CAAA,CAAA,EAiExD,mBAjEwD,CAkEzD,MAlEyD,EAmEzD,SAnEyD,EAoEzD,SApEyD,EAqEzD,OArEyD,EAsEzD,CAtEyD,EAuEzD,KAvEyD,EAwEzD,aAxEyD,EAyEzD,wBAzEyD,EA0EzD,SA1EyD,EA2EzD,oBA3EyD,CAAA;EAAe,OAAnD,CAAA,UAgGL,YAhGK,EAAA,cAAA,MAAA,CAAA,CAAA,OAAA,EAiGZ,OAjGY,CAiGJ,KAjGI,EAiGG,CAjGH,CAAA,CAAA,EAkGpB,mBAlGoB,CAmGrB,MAnGqB,EAoGrB,SApGqB,EAqGrB,SArGqB,EAsGrB,OAtGqB,EAuGrB,eAvGqB,EAwGrB,0BAxGqB,EAyGrB,CAzGqB,EA0GrB,KA1GqB,EA2GrB,SA3GqB,EA4GrB,oBA5GqB,CAAA;EAAO;;;;EAE2B,QAAE,CAAA,CAAA,EAAA,cAAA,MAAA,CAAA,CAAA,OAAA,EAoIhD,OApIgD,CAoIxC,KApIwC,EAoIjC,CApIiC,CAAA,CAAA,EAqIxD,mBArIwD,CAsIzD,MAtIyD,EAuIzD,SAvIyD,EAwIzD,SAxIyD,EAyIzD,OAzIyD,EA0IzD,eA1IyD,EA2IzD,0BA3IyD,EA4IzD,aA5IyD,EA6IzD,wBA7IyD,EA8IzD,CA9IyD,EA+IzD,KA/IyD,CAAA"}
@@ -1,5 +1,5 @@
1
1
  const require_chunk = require('./chunk-CUT6urMc.cjs');
2
- const require_Construct = require('./Construct-BYSPikVm.cjs');
2
+ const require_Construct = require('./Construct-Ba5cMxib.cjs');
3
3
  const __geekmidas_logger_console = require_chunk.__toESM(require("@geekmidas/logger/console"));
4
4
  const lodash_get = require_chunk.__toESM(require("lodash.get"));
5
5
 
@@ -73,4 +73,4 @@ Object.defineProperty(exports, 'BaseFunctionBuilder', {
73
73
  return BaseFunctionBuilder;
74
74
  }
75
75
  });
76
- //# sourceMappingURL=BaseFunctionBuilder-C5Se7pdL.cjs.map
76
+ //# sourceMappingURL=BaseFunctionBuilder-MYG3C9ug.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseFunctionBuilder-C5Se7pdL.cjs","names":["ConsoleLogger","s: unknown","data: unknown","schema: T","result: any","ConstructType","timeout: number","event: TEvent","publisher: Service<TName, T>","storage: Service<TName, T>","service: Service<TName, T>"],"sources":["../src/functions/BaseFunctionBuilder.ts"],"sourcesContent":["import type { AuditStorage } from '@geekmidas/audit';\nimport type { EventPublisher, MappedEvent } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport { ConsoleLogger } from '@geekmidas/logger/console';\nimport type {\n ComposableStandardSchema,\n InferComposableStandardSchema,\n} from '@geekmidas/schema';\nimport type { Service } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport get from 'lodash.get';\nimport { ConstructType } from '../Construct';\n\nconst DEFAULT_LOGGER = new ConsoleLogger() as any;\n\nexport abstract class BaseFunctionBuilder<\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 TAuditStorage extends AuditStorage | undefined = undefined,\n TAuditStorageServiceName extends string = string,\n TDatabase = undefined,\n TDatabaseServiceName extends string = string,\n> {\n protected inputSchema?: TInput;\n protected outputSchema?: OutSchema;\n protected _timeout?: number;\n\n public _services: TServices = [] as Service[] as TServices;\n public _logger: TLogger = DEFAULT_LOGGER;\n\n protected _events: MappedEvent<TEventPublisher, OutSchema>[] = [];\n protected _publisher?: Service<TEventPublisherServiceName, TEventPublisher>;\n protected _auditorStorage?: Service<TAuditStorageServiceName, TAuditStorage>;\n protected _databaseService?: Service<TDatabaseServiceName, TDatabase>;\n\n static isStandardSchemaV1(s: unknown): s is StandardSchemaV1 {\n const schema = (s as StandardSchemaV1)['~standard'];\n\n return schema && typeof schema.validate === 'function';\n }\n\n static async parseComposableStandardSchema<\n T extends ComposableStandardSchema | undefined,\n >(data: unknown, schema: T): Promise<InferComposableStandardSchema<T>> {\n if (BaseFunctionBuilder.isStandardSchemaV1(schema)) {\n const validated = await schema['~standard'].validate(data);\n\n if (validated.issues) {\n throw validated.issues;\n }\n\n return validated.value as InferComposableStandardSchema<T>;\n }\n\n const result: any = {};\n for (const key in schema) {\n const item = schema[key];\n if (BaseFunctionBuilder.isStandardSchemaV1(item)) {\n const value = get(data, key);\n const validated = await item['~standard'].validate(value);\n\n if (validated.issues) {\n throw validated.issues;\n }\n\n result[key] = validated.value;\n }\n }\n\n return result as InferComposableStandardSchema<T>;\n }\n\n constructor(public type = ConstructType.Function) {}\n\n abstract services<T extends Service[]>(services: T): any;\n\n abstract logger<T extends Logger>(logger: T): any;\n\n timeout(timeout: number): this {\n this._timeout = timeout;\n return this;\n }\n\n abstract output<T extends StandardSchemaV1>(schema: T): any;\n\n abstract input<T extends ComposableStandardSchema>(schema: T): any;\n\n event<TEvent extends MappedEvent<TEventPublisher, OutSchema>>(\n event: TEvent,\n ): this {\n this._events.push(event);\n return this;\n }\n\n publisher<T extends EventPublisher<any>, TName extends string>(\n publisher: Service<TName, T>,\n ): BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n T,\n TName,\n TAuditStorage,\n TAuditStorageServiceName,\n TDatabase,\n TDatabaseServiceName\n > {\n this._publisher = publisher as unknown as Service<\n TEventPublisherServiceName,\n TEventPublisher\n >;\n\n return this as unknown as BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n T,\n TName,\n TAuditStorage,\n TAuditStorageServiceName,\n TDatabase,\n TDatabaseServiceName\n >;\n }\n\n auditor<T extends AuditStorage, TName extends string>(\n storage: Service<TName, T>,\n ): BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n T,\n TName,\n TDatabase,\n TDatabaseServiceName\n > {\n this._auditorStorage = storage as unknown as Service<\n TAuditStorageServiceName,\n TAuditStorage\n >;\n\n return this as unknown as BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n T,\n TName,\n TDatabase,\n TDatabaseServiceName\n >;\n }\n\n /**\n * Set the database service for this function.\n * The database will be available in the handler context as `db`.\n */\n database<T, TName extends string>(\n service: Service<TName, T>,\n ): BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n TAuditStorage,\n TAuditStorageServiceName,\n T,\n TName\n > {\n this._databaseService = service as unknown as Service<\n TDatabaseServiceName,\n TDatabase\n >;\n\n return this as unknown as BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n TAuditStorage,\n TAuditStorageServiceName,\n T,\n TName\n >;\n }\n}\n"],"mappings":";;;;;;AAaA,MAAM,iBAAiB,IAAIA;AAE3B,IAAsB,sBAAtB,MAAsB,oBAWpB;CACA,AAAU;CACV,AAAU;CACV,AAAU;CAEV,AAAO,YAAuB,CAAE;CAChC,AAAO,UAAmB;CAE1B,AAAU,UAAqD,CAAE;CACjE,AAAU;CACV,AAAU;CACV,AAAU;CAEV,OAAO,mBAAmBC,GAAmC;EAC3D,MAAM,SAAU,EAAuB;AAEvC,SAAO,iBAAiB,OAAO,aAAa;CAC7C;CAED,aAAa,8BAEXC,MAAeC,QAAsD;AACrE,MAAI,oBAAoB,mBAAmB,OAAO,EAAE;GAClD,MAAM,YAAY,MAAM,OAAO,aAAa,SAAS,KAAK;AAE1D,OAAI,UAAU,OACZ,OAAM,UAAU;AAGlB,UAAO,UAAU;EAClB;EAED,MAAMC,SAAc,CAAE;AACtB,OAAK,MAAM,OAAO,QAAQ;GACxB,MAAM,OAAO,OAAO;AACpB,OAAI,oBAAoB,mBAAmB,KAAK,EAAE;IAChD,MAAM,QAAQ,wBAAI,MAAM,IAAI;IAC5B,MAAM,YAAY,MAAM,KAAK,aAAa,SAAS,MAAM;AAEzD,QAAI,UAAU,OACZ,OAAM,UAAU;AAGlB,WAAO,OAAO,UAAU;GACzB;EACF;AAED,SAAO;CACR;CAED,YAAmB,OAAOC,gCAAc,UAAU;EAA/B;CAAiC;CAMpD,QAAQC,SAAuB;AAC7B,OAAK,WAAW;AAChB,SAAO;CACR;CAMD,MACEC,OACM;AACN,OAAK,QAAQ,KAAK,MAAM;AACxB,SAAO;CACR;CAED,UACEC,WAYA;AACA,OAAK,aAAa;AAKlB,SAAO;CAYR;CAED,QACEC,SAYA;AACA,OAAK,kBAAkB;AAKvB,SAAO;CAYR;;;;;CAMD,SACEC,SAYA;AACA,OAAK,mBAAmB;AAKxB,SAAO;CAYR;AACF"}
1
+ {"version":3,"file":"BaseFunctionBuilder-MYG3C9ug.cjs","names":["ConsoleLogger","s: unknown","data: unknown","schema: T","result: any","ConstructType","timeout: number","event: TEvent","publisher: Service<TName, T>","storage: Service<TName, T>","service: Service<TName, T>"],"sources":["../src/functions/BaseFunctionBuilder.ts"],"sourcesContent":["import type { AuditStorage } from '@geekmidas/audit';\nimport type { EventPublisher, MappedEvent } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport { ConsoleLogger } from '@geekmidas/logger/console';\nimport type {\n ComposableStandardSchema,\n InferComposableStandardSchema,\n} from '@geekmidas/schema';\nimport type { Service } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport get from 'lodash.get';\nimport { ConstructType } from '../Construct';\n\nconst DEFAULT_LOGGER = new ConsoleLogger() as any;\n\nexport abstract class BaseFunctionBuilder<\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 TAuditStorage extends AuditStorage | undefined = undefined,\n TAuditStorageServiceName extends string = string,\n TDatabase = undefined,\n TDatabaseServiceName extends string = string,\n> {\n protected inputSchema?: TInput;\n protected outputSchema?: OutSchema;\n protected _timeout?: number;\n\n public _services: TServices = [] as Service[] as TServices;\n public _logger: TLogger = DEFAULT_LOGGER;\n\n protected _events: MappedEvent<TEventPublisher, OutSchema>[] = [];\n protected _publisher?: Service<TEventPublisherServiceName, TEventPublisher>;\n protected _auditorStorage?: Service<TAuditStorageServiceName, TAuditStorage>;\n protected _databaseService?: Service<TDatabaseServiceName, TDatabase>;\n\n static isStandardSchemaV1(s: unknown): s is StandardSchemaV1 {\n const schema = (s as StandardSchemaV1)['~standard'];\n\n return schema && typeof schema.validate === 'function';\n }\n\n static async parseComposableStandardSchema<\n T extends ComposableStandardSchema | undefined,\n >(data: unknown, schema: T): Promise<InferComposableStandardSchema<T>> {\n if (BaseFunctionBuilder.isStandardSchemaV1(schema)) {\n const validated = await schema['~standard'].validate(data);\n\n if (validated.issues) {\n throw validated.issues;\n }\n\n return validated.value as InferComposableStandardSchema<T>;\n }\n\n const result: any = {};\n for (const key in schema) {\n const item = schema[key];\n if (BaseFunctionBuilder.isStandardSchemaV1(item)) {\n const value = get(data, key);\n const validated = await item['~standard'].validate(value);\n\n if (validated.issues) {\n throw validated.issues;\n }\n\n result[key] = validated.value;\n }\n }\n\n return result as InferComposableStandardSchema<T>;\n }\n\n constructor(public type = ConstructType.Function) {}\n\n abstract services<T extends Service[]>(services: T): any;\n\n abstract logger<T extends Logger>(logger: T): any;\n\n timeout(timeout: number): this {\n this._timeout = timeout;\n return this;\n }\n\n abstract output<T extends StandardSchemaV1>(schema: T): any;\n\n abstract input<T extends ComposableStandardSchema>(schema: T): any;\n\n event<TEvent extends MappedEvent<TEventPublisher, OutSchema>>(\n event: TEvent,\n ): this {\n this._events.push(event);\n return this;\n }\n\n publisher<T extends EventPublisher<any>, TName extends string>(\n publisher: Service<TName, T>,\n ): BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n T,\n TName,\n TAuditStorage,\n TAuditStorageServiceName,\n TDatabase,\n TDatabaseServiceName\n > {\n this._publisher = publisher as unknown as Service<\n TEventPublisherServiceName,\n TEventPublisher\n >;\n\n return this as unknown as BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n T,\n TName,\n TAuditStorage,\n TAuditStorageServiceName,\n TDatabase,\n TDatabaseServiceName\n >;\n }\n\n auditor<T extends AuditStorage, TName extends string>(\n storage: Service<TName, T>,\n ): BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n T,\n TName,\n TDatabase,\n TDatabaseServiceName\n > {\n this._auditorStorage = storage as unknown as Service<\n TAuditStorageServiceName,\n TAuditStorage\n >;\n\n return this as unknown as BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n T,\n TName,\n TDatabase,\n TDatabaseServiceName\n >;\n }\n\n /**\n * Set the database service for this function.\n * The database will be available in the handler context as `db`.\n */\n database<T, TName extends string>(\n service: Service<TName, T>,\n ): BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n TAuditStorage,\n TAuditStorageServiceName,\n T,\n TName\n > {\n this._databaseService = service as unknown as Service<\n TDatabaseServiceName,\n TDatabase\n >;\n\n return this as unknown as BaseFunctionBuilder<\n TInput,\n OutSchema,\n TServices,\n TLogger,\n TEventPublisher,\n TEventPublisherServiceName,\n TAuditStorage,\n TAuditStorageServiceName,\n T,\n TName\n >;\n }\n}\n"],"mappings":";;;;;;AAaA,MAAM,iBAAiB,IAAIA;AAE3B,IAAsB,sBAAtB,MAAsB,oBAWpB;CACA,AAAU;CACV,AAAU;CACV,AAAU;CAEV,AAAO,YAAuB,CAAE;CAChC,AAAO,UAAmB;CAE1B,AAAU,UAAqD,CAAE;CACjE,AAAU;CACV,AAAU;CACV,AAAU;CAEV,OAAO,mBAAmBC,GAAmC;EAC3D,MAAM,SAAU,EAAuB;AAEvC,SAAO,iBAAiB,OAAO,aAAa;CAC7C;CAED,aAAa,8BAEXC,MAAeC,QAAsD;AACrE,MAAI,oBAAoB,mBAAmB,OAAO,EAAE;GAClD,MAAM,YAAY,MAAM,OAAO,aAAa,SAAS,KAAK;AAE1D,OAAI,UAAU,OACZ,OAAM,UAAU;AAGlB,UAAO,UAAU;EAClB;EAED,MAAMC,SAAc,CAAE;AACtB,OAAK,MAAM,OAAO,QAAQ;GACxB,MAAM,OAAO,OAAO;AACpB,OAAI,oBAAoB,mBAAmB,KAAK,EAAE;IAChD,MAAM,QAAQ,wBAAI,MAAM,IAAI;IAC5B,MAAM,YAAY,MAAM,KAAK,aAAa,SAAS,MAAM;AAEzD,QAAI,UAAU,OACZ,OAAM,UAAU;AAGlB,WAAO,OAAO,UAAU;GACzB;EACF;AAED,SAAO;CACR;CAED,YAAmB,OAAOC,gCAAc,UAAU;EAA/B;CAAiC;CAMpD,QAAQC,SAAuB;AAC7B,OAAK,WAAW;AAChB,SAAO;CACR;CAMD,MACEC,OACM;AACN,OAAK,QAAQ,KAAK,MAAM;AACxB,SAAO;CACR;CAED,UACEC,WAYA;AACA,OAAK,aAAa;AAKlB,SAAO;CAYR;CAED,QACEC,SAYA;AACA,OAAK,kBAAkB;AAKvB,SAAO;CAYR;;;;;CAMD,SACEC,SAYA;AACA,OAAK,mBAAmB;AAKxB,SAAO;CAYR;AACF"}
@@ -61,7 +61,7 @@ var Construct = class {
61
61
  }
62
62
  return Array.from(envVars).sort();
63
63
  } catch (error) {
64
- console.error("Error determining environment variables for construct:", error);
64
+ this.logger.error({ error }, "Error determining environment variables for construct");
65
65
  return [];
66
66
  }
67
67
  }
@@ -87,4 +87,4 @@ Object.defineProperty(exports, 'ConstructType', {
87
87
  return ConstructType;
88
88
  }
89
89
  });
90
- //# sourceMappingURL=Construct-BYSPikVm.cjs.map
90
+ //# sourceMappingURL=Construct-Ba5cMxib.cjs.map