@geekmidas/constructs 3.0.7 → 3.0.8

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 (459) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/{Construct-BXG8cFSm.cjs → Construct-B14miJ6P.cjs} +95 -10
  3. package/dist/Construct-B14miJ6P.cjs.map +1 -0
  4. package/dist/{Construct-BjpXFNxy.d.mts → Construct-CXqvzglu.d.cts} +11 -6
  5. package/dist/{Construct-BjpXFNxy.d.mts.map → Construct-CXqvzglu.d.cts.map} +1 -1
  6. package/dist/{Construct-CQ9zV58W.mjs → Construct-CdJY2DJS.mjs} +83 -9
  7. package/dist/Construct-CdJY2DJS.mjs.map +1 -0
  8. package/dist/{Construct-CX7HyFfT.d.cts → Construct-D0n7QTaI.d.mts} +13 -8
  9. package/dist/Construct-D0n7QTaI.d.mts.map +1 -0
  10. package/dist/{Endpoint-CGdCGJkC.d.cts → Endpoint-C991gK3T.d.cts} +130 -27
  11. package/dist/Endpoint-C991gK3T.d.cts.map +1 -0
  12. package/dist/{Endpoint-BET0JSZK.d.mts → Endpoint-CRHpLPV3.d.mts} +130 -27
  13. package/dist/Endpoint-CRHpLPV3.d.mts.map +1 -0
  14. package/dist/{HonoEndpointAdaptor-B5fKdLi7.cjs → HonoEndpointAdaptor-BDz1qM4z.cjs} +81 -24
  15. package/dist/HonoEndpointAdaptor-BDz1qM4z.cjs.map +1 -0
  16. package/dist/{HonoEndpointAdaptor-DOUODM7n.mjs → HonoEndpointAdaptor-DPBfEPZj.mjs} +64 -7
  17. package/dist/HonoEndpointAdaptor-DPBfEPZj.mjs.map +1 -0
  18. package/dist/{Subscriber-1rDE7HuM.d.cts → Subscriber-D8WkA8np.d.cts} +3 -3
  19. package/dist/{Subscriber-1rDE7HuM.d.cts.map → Subscriber-D8WkA8np.d.cts.map} +1 -1
  20. package/dist/{Subscriber-9ObcUdcC.d.mts → Subscriber-Tft61-YG.d.mts} +5 -5
  21. package/dist/Subscriber-Tft61-YG.d.mts.map +1 -0
  22. package/dist/adaptors/aws.cjs +737 -21
  23. package/dist/adaptors/aws.cjs.map +1 -0
  24. package/dist/adaptors/aws.d.cts +221 -17
  25. package/dist/adaptors/aws.d.cts.map +1 -0
  26. package/dist/adaptors/aws.d.mts +221 -17
  27. package/dist/adaptors/aws.d.mts.map +1 -0
  28. package/dist/adaptors/aws.mjs +734 -18
  29. package/dist/adaptors/aws.mjs.map +1 -0
  30. package/dist/adaptors/hono.cjs +5 -12
  31. package/dist/adaptors/hono.d.cts +52 -10
  32. package/dist/adaptors/hono.d.cts.map +1 -0
  33. package/dist/adaptors/hono.d.mts +52 -10
  34. package/dist/adaptors/hono.d.mts.map +1 -0
  35. package/dist/adaptors/hono.mjs +5 -12
  36. package/dist/adaptors/testing.cjs +392 -21
  37. package/dist/adaptors/testing.cjs.map +1 -0
  38. package/dist/adaptors/testing.d.cts +177 -14
  39. package/dist/adaptors/testing.d.cts.map +1 -0
  40. package/dist/adaptors/testing.d.mts +177 -14
  41. package/dist/adaptors/testing.d.mts.map +1 -0
  42. package/dist/adaptors/testing.mjs +388 -17
  43. package/dist/adaptors/testing.mjs.map +1 -0
  44. package/dist/crons/index.cjs +82 -10
  45. package/dist/crons/index.cjs.map +1 -1
  46. package/dist/crons/index.d.cts +48 -11
  47. package/dist/crons/index.d.cts.map +1 -1
  48. package/dist/crons/index.d.mts +45 -11
  49. package/dist/crons/index.d.mts.map +1 -1
  50. package/dist/crons/index.mjs +79 -7
  51. package/dist/crons/index.mjs.map +1 -1
  52. package/dist/endpoints/index.cjs +717 -23
  53. package/dist/endpoints/index.cjs.map +1 -1
  54. package/dist/endpoints/index.d.cts +316 -14
  55. package/dist/endpoints/index.d.cts.map +1 -1
  56. package/dist/endpoints/index.d.mts +315 -14
  57. package/dist/endpoints/index.d.mts.map +1 -1
  58. package/dist/endpoints/index.mjs +706 -12
  59. package/dist/endpoints/index.mjs.map +1 -1
  60. package/dist/functions/index.cjs +5 -8
  61. package/dist/functions/index.d.cts +2 -5
  62. package/dist/functions/index.d.mts +2 -5
  63. package/dist/functions/index.mjs +2 -5
  64. package/dist/functions-DiaRAdfp.cjs +2893 -0
  65. package/dist/functions-DiaRAdfp.cjs.map +1 -0
  66. package/dist/functions-GmSHFbpr.mjs +2864 -0
  67. package/dist/functions-GmSHFbpr.mjs.map +1 -0
  68. package/dist/index-Cq4fz8uM.d.mts +132 -0
  69. package/dist/index-Cq4fz8uM.d.mts.map +1 -0
  70. package/dist/index-CzIMpK-e.d.cts +135 -0
  71. package/dist/index-CzIMpK-e.d.cts.map +1 -0
  72. package/dist/index.cjs +1 -1
  73. package/dist/index.d.cts +3 -3
  74. package/dist/index.d.mts +3 -3
  75. package/dist/index.mjs +1 -1
  76. package/dist/lazyAccessors-CJZYs9uM.mjs +1887 -0
  77. package/dist/lazyAccessors-CJZYs9uM.mjs.map +1 -0
  78. package/dist/lazyAccessors-DHvDeww0.cjs +1964 -0
  79. package/dist/lazyAccessors-DHvDeww0.cjs.map +1 -0
  80. package/dist/processAudits-B0PbJf1Z.mjs +80 -0
  81. package/dist/processAudits-B0PbJf1Z.mjs.map +1 -0
  82. package/dist/processAudits-CUko08pi.cjs +92 -0
  83. package/dist/processAudits-CUko08pi.cjs.map +1 -0
  84. package/dist/subscribers/index.cjs +77 -6
  85. package/dist/subscribers/index.cjs.map +1 -1
  86. package/dist/subscribers/index.d.cts +27 -5
  87. package/dist/subscribers/index.d.cts.map +1 -1
  88. package/dist/subscribers/index.d.mts +26 -5
  89. package/dist/subscribers/index.d.mts.map +1 -1
  90. package/dist/subscribers/index.mjs +74 -3
  91. package/dist/subscribers/index.mjs.map +1 -1
  92. package/dist/{telemetry-BTaiRqPo.d.cts → telemetry-Bt0vK4ma.d.cts} +1 -1
  93. package/dist/{telemetry-BJo1gcV1.d.mts.map → telemetry-Bt0vK4ma.d.cts.map} +1 -1
  94. package/dist/{telemetry-BJo1gcV1.d.mts → telemetry-COvVBKBM.d.mts} +1 -1
  95. package/dist/{telemetry-BTaiRqPo.d.cts.map → telemetry-COvVBKBM.d.mts.map} +1 -1
  96. package/dist/{types-B5H3piDg.d.cts → types-B8YlI4cx.d.cts} +1 -1
  97. package/dist/{types-B5H3piDg.d.cts.map → types-B8YlI4cx.d.cts.map} +1 -1
  98. package/dist/{types-BqPOdHEm.d.mts → types-BA3eK4xj.d.mts} +1 -1
  99. package/dist/{types-BqPOdHEm.d.mts.map → types-BA3eK4xj.d.mts.map} +1 -1
  100. package/dist/types.d.cts +1 -1
  101. package/dist/types.d.mts +1 -1
  102. package/package.json +9 -9
  103. package/src/Construct.ts +26 -8
  104. package/src/__tests__/Construct.environment.spec.ts +123 -0
  105. package/src/endpoints/__tests__/MswEndpointAdaptor.spec.ts +1 -9
  106. package/tsdown.config.ts +30 -1
  107. package/dist/AWSLambdaFunction-CC8gMZhz.d.mts +0 -32
  108. package/dist/AWSLambdaFunction-CC8gMZhz.d.mts.map +0 -1
  109. package/dist/AWSLambdaFunction-CPEAl5nZ.cjs +0 -120
  110. package/dist/AWSLambdaFunction-CPEAl5nZ.cjs.map +0 -1
  111. package/dist/AWSLambdaFunction-DJiCAPAf.mjs +0 -114
  112. package/dist/AWSLambdaFunction-DJiCAPAf.mjs.map +0 -1
  113. package/dist/AWSLambdaFunction-tzqv5XU6.d.cts +0 -32
  114. package/dist/AWSLambdaFunction-tzqv5XU6.d.cts.map +0 -1
  115. package/dist/AWSLambdaSubscriberAdaptor-Cj1wjkUP.d.cts +0 -36
  116. package/dist/AWSLambdaSubscriberAdaptor-Cj1wjkUP.d.cts.map +0 -1
  117. package/dist/AWSLambdaSubscriberAdaptor-Cmx9OQGG.d.mts +0 -36
  118. package/dist/AWSLambdaSubscriberAdaptor-Cmx9OQGG.d.mts.map +0 -1
  119. package/dist/AWSLambdaSubscriberAdaptor-RKwKYLl1.mjs +0 -172
  120. package/dist/AWSLambdaSubscriberAdaptor-RKwKYLl1.mjs.map +0 -1
  121. package/dist/AWSLambdaSubscriberAdaptor-eZ3qoKvK.cjs +0 -178
  122. package/dist/AWSLambdaSubscriberAdaptor-eZ3qoKvK.cjs.map +0 -1
  123. package/dist/AmazonApiGatewayEndpointAdaptor-BIltcbAc.cjs +0 -277
  124. package/dist/AmazonApiGatewayEndpointAdaptor-BIltcbAc.cjs.map +0 -1
  125. package/dist/AmazonApiGatewayEndpointAdaptor-BpYtYCeW.mjs +0 -271
  126. package/dist/AmazonApiGatewayEndpointAdaptor-BpYtYCeW.mjs.map +0 -1
  127. package/dist/AmazonApiGatewayEndpointAdaptor-DA0rS_1Y.d.mts +0 -124
  128. package/dist/AmazonApiGatewayEndpointAdaptor-DA0rS_1Y.d.mts.map +0 -1
  129. package/dist/AmazonApiGatewayEndpointAdaptor-DqNcQGMf.d.cts +0 -124
  130. package/dist/AmazonApiGatewayEndpointAdaptor-DqNcQGMf.d.cts.map +0 -1
  131. package/dist/AmazonApiGatewayV1EndpointAdaptor-C7rJzNvG.d.mts +0 -23
  132. package/dist/AmazonApiGatewayV1EndpointAdaptor-C7rJzNvG.d.mts.map +0 -1
  133. package/dist/AmazonApiGatewayV1EndpointAdaptor-CRwyWT6t.mjs +0 -42
  134. package/dist/AmazonApiGatewayV1EndpointAdaptor-CRwyWT6t.mjs.map +0 -1
  135. package/dist/AmazonApiGatewayV1EndpointAdaptor-DEETT6Wj.cjs +0 -47
  136. package/dist/AmazonApiGatewayV1EndpointAdaptor-DEETT6Wj.cjs.map +0 -1
  137. package/dist/AmazonApiGatewayV1EndpointAdaptor-DcN2fYsv.d.cts +0 -23
  138. package/dist/AmazonApiGatewayV1EndpointAdaptor-DcN2fYsv.d.cts.map +0 -1
  139. package/dist/AmazonApiGatewayV2EndpointAdaptor-C2qO8FN6.cjs +0 -48
  140. package/dist/AmazonApiGatewayV2EndpointAdaptor-C2qO8FN6.cjs.map +0 -1
  141. package/dist/AmazonApiGatewayV2EndpointAdaptor-Cn9UoRgB.d.cts +0 -22
  142. package/dist/AmazonApiGatewayV2EndpointAdaptor-Cn9UoRgB.d.cts.map +0 -1
  143. package/dist/AmazonApiGatewayV2EndpointAdaptor-d7NP-bZX.d.mts +0 -22
  144. package/dist/AmazonApiGatewayV2EndpointAdaptor-d7NP-bZX.d.mts.map +0 -1
  145. package/dist/AmazonApiGatewayV2EndpointAdaptor-m9YKI294.mjs +0 -42
  146. package/dist/AmazonApiGatewayV2EndpointAdaptor-m9YKI294.mjs.map +0 -1
  147. package/dist/Authorizer-BZ1LcZFt.cjs +0 -92
  148. package/dist/Authorizer-BZ1LcZFt.cjs.map +0 -1
  149. package/dist/Authorizer-C5_FC_Rq.d.mts +0 -126
  150. package/dist/Authorizer-C5_FC_Rq.d.mts.map +0 -1
  151. package/dist/Authorizer-CZpg1Jqk.mjs +0 -68
  152. package/dist/Authorizer-CZpg1Jqk.mjs.map +0 -1
  153. package/dist/Authorizer-DWtwC8we.d.cts +0 -126
  154. package/dist/Authorizer-DWtwC8we.d.cts.map +0 -1
  155. package/dist/BaseFunctionBuilder-C-4hYTfj.d.cts +0 -42
  156. package/dist/BaseFunctionBuilder-C-4hYTfj.d.cts.map +0 -1
  157. package/dist/BaseFunctionBuilder-C3rQMoWb.mjs +0 -70
  158. package/dist/BaseFunctionBuilder-C3rQMoWb.mjs.map +0 -1
  159. package/dist/BaseFunctionBuilder-DXf6HK-N.cjs +0 -76
  160. package/dist/BaseFunctionBuilder-DXf6HK-N.cjs.map +0 -1
  161. package/dist/BaseFunctionBuilder-Q5qIlF-F.d.mts +0 -42
  162. package/dist/BaseFunctionBuilder-Q5qIlF-F.d.mts.map +0 -1
  163. package/dist/Construct-BXG8cFSm.cjs.map +0 -1
  164. package/dist/Construct-CQ9zV58W.mjs.map +0 -1
  165. package/dist/Construct-CX7HyFfT.d.cts.map +0 -1
  166. package/dist/Construct.cjs +0 -6
  167. package/dist/Construct.d.cts +0 -2
  168. package/dist/Construct.d.mts +0 -2
  169. package/dist/Construct.mjs +0 -3
  170. package/dist/Cron-BljK1gsV.d.mts +0 -26
  171. package/dist/Cron-BljK1gsV.d.mts.map +0 -1
  172. package/dist/Cron-C1vyfJ8B.cjs +0 -25
  173. package/dist/Cron-C1vyfJ8B.cjs.map +0 -1
  174. package/dist/Cron-CjWQEad0.mjs +0 -20
  175. package/dist/Cron-CjWQEad0.mjs.map +0 -1
  176. package/dist/Cron-CllHkk3z.d.cts +0 -26
  177. package/dist/Cron-CllHkk3z.d.cts.map +0 -1
  178. package/dist/CronBuilder-CAJFtnmZ.mjs +0 -68
  179. package/dist/CronBuilder-CAJFtnmZ.mjs.map +0 -1
  180. package/dist/CronBuilder-CG54f9LM.d.mts +0 -32
  181. package/dist/CronBuilder-CG54f9LM.d.mts.map +0 -1
  182. package/dist/CronBuilder-CSMd02lu.cjs +0 -74
  183. package/dist/CronBuilder-CSMd02lu.cjs.map +0 -1
  184. package/dist/CronBuilder-i23l40xs.d.cts +0 -32
  185. package/dist/CronBuilder-i23l40xs.d.cts.map +0 -1
  186. package/dist/Endpoint-BET0JSZK.d.mts.map +0 -1
  187. package/dist/Endpoint-BcxvF4F3.cjs +0 -440
  188. package/dist/Endpoint-BcxvF4F3.cjs.map +0 -1
  189. package/dist/Endpoint-CGdCGJkC.d.cts.map +0 -1
  190. package/dist/Endpoint-DvY3aqAy.mjs +0 -422
  191. package/dist/Endpoint-DvY3aqAy.mjs.map +0 -1
  192. package/dist/EndpointBuilder-6kdrQyIh.d.mts +0 -146
  193. package/dist/EndpointBuilder-6kdrQyIh.d.mts.map +0 -1
  194. package/dist/EndpointBuilder-CSwIguiR.d.cts +0 -146
  195. package/dist/EndpointBuilder-CSwIguiR.d.cts.map +0 -1
  196. package/dist/EndpointBuilder-EptJojG9.cjs +0 -268
  197. package/dist/EndpointBuilder-EptJojG9.cjs.map +0 -1
  198. package/dist/EndpointBuilder-iDpnACRb.mjs +0 -262
  199. package/dist/EndpointBuilder-iDpnACRb.mjs.map +0 -1
  200. package/dist/EndpointFactory-CBagQW5j.d.mts +0 -142
  201. package/dist/EndpointFactory-CBagQW5j.d.mts.map +0 -1
  202. package/dist/EndpointFactory-D2QxeaAh.cjs +0 -393
  203. package/dist/EndpointFactory-D2QxeaAh.cjs.map +0 -1
  204. package/dist/EndpointFactory-DQYSH8XK.d.cts +0 -142
  205. package/dist/EndpointFactory-DQYSH8XK.d.cts.map +0 -1
  206. package/dist/EndpointFactory-wgcqWod-.mjs +0 -381
  207. package/dist/EndpointFactory-wgcqWod-.mjs.map +0 -1
  208. package/dist/Function-CwlB89lS.d.cts +0 -76
  209. package/dist/Function-CwlB89lS.d.cts.map +0 -1
  210. package/dist/Function-D74HrBnX.d.mts +0 -76
  211. package/dist/Function-D74HrBnX.d.mts.map +0 -1
  212. package/dist/Function-DgQ_no6B.cjs +0 -84
  213. package/dist/Function-DgQ_no6B.cjs.map +0 -1
  214. package/dist/Function-xfQbftdE.mjs +0 -72
  215. package/dist/Function-xfQbftdE.mjs.map +0 -1
  216. package/dist/FunctionBuilder-CBeqX18X.mjs +0 -80
  217. package/dist/FunctionBuilder-CBeqX18X.mjs.map +0 -1
  218. package/dist/FunctionBuilder-C_qPxC8g.d.mts +0 -40
  219. package/dist/FunctionBuilder-C_qPxC8g.d.mts.map +0 -1
  220. package/dist/FunctionBuilder-C_xG9As7.cjs +0 -86
  221. package/dist/FunctionBuilder-C_xG9As7.cjs.map +0 -1
  222. package/dist/FunctionBuilder-D_7f5MfS.d.cts +0 -40
  223. package/dist/FunctionBuilder-D_7f5MfS.d.cts.map +0 -1
  224. package/dist/FunctionExecutionWrapper-B0ZAssiy.mjs +0 -101
  225. package/dist/FunctionExecutionWrapper-B0ZAssiy.mjs.map +0 -1
  226. package/dist/FunctionExecutionWrapper-Cg8HjuHL.d.cts +0 -50
  227. package/dist/FunctionExecutionWrapper-Cg8HjuHL.d.cts.map +0 -1
  228. package/dist/FunctionExecutionWrapper-KKHP6fDY.cjs +0 -107
  229. package/dist/FunctionExecutionWrapper-KKHP6fDY.cjs.map +0 -1
  230. package/dist/FunctionExecutionWrapper-xbTmBARx.d.mts +0 -50
  231. package/dist/FunctionExecutionWrapper-xbTmBARx.d.mts.map +0 -1
  232. package/dist/HonoEndpointAdaptor-B5fKdLi7.cjs.map +0 -1
  233. package/dist/HonoEndpointAdaptor-C2deTEwW.d.mts +0 -50
  234. package/dist/HonoEndpointAdaptor-C2deTEwW.d.mts.map +0 -1
  235. package/dist/HonoEndpointAdaptor-D3IgM-0B.d.cts +0 -50
  236. package/dist/HonoEndpointAdaptor-D3IgM-0B.d.cts.map +0 -1
  237. package/dist/HonoEndpointAdaptor-DOUODM7n.mjs.map +0 -1
  238. package/dist/MswEndpointAdaptor-B41INCc7.mjs +0 -108
  239. package/dist/MswEndpointAdaptor-B41INCc7.mjs.map +0 -1
  240. package/dist/MswEndpointAdaptor-CA_fu6Wx.cjs +0 -120
  241. package/dist/MswEndpointAdaptor-CA_fu6Wx.cjs.map +0 -1
  242. package/dist/MswEndpointAdaptor-CXgYbOxw.d.mts +0 -101
  243. package/dist/MswEndpointAdaptor-CXgYbOxw.d.mts.map +0 -1
  244. package/dist/MswEndpointAdaptor-CsYvrQeB.d.cts +0 -101
  245. package/dist/MswEndpointAdaptor-CsYvrQeB.d.cts.map +0 -1
  246. package/dist/Subscriber-9ObcUdcC.d.mts.map +0 -1
  247. package/dist/Subscriber-BH76wgkL.mjs +0 -28
  248. package/dist/Subscriber-BH76wgkL.mjs.map +0 -1
  249. package/dist/Subscriber-BgspJeS4.cjs +0 -34
  250. package/dist/Subscriber-BgspJeS4.cjs.map +0 -1
  251. package/dist/SubscriberBuilder-B4md5wzs.mjs +0 -54
  252. package/dist/SubscriberBuilder-B4md5wzs.mjs.map +0 -1
  253. package/dist/SubscriberBuilder-Be7WBbCL.d.cts +0 -28
  254. package/dist/SubscriberBuilder-Be7WBbCL.d.cts.map +0 -1
  255. package/dist/SubscriberBuilder-BtL22ZJ9.cjs +0 -60
  256. package/dist/SubscriberBuilder-BtL22ZJ9.cjs.map +0 -1
  257. package/dist/SubscriberBuilder-DsfIkgTF.d.mts +0 -28
  258. package/dist/SubscriberBuilder-DsfIkgTF.d.mts.map +0 -1
  259. package/dist/TestEndpointAdaptor-BFmgf7Fn.mjs +0 -174
  260. package/dist/TestEndpointAdaptor-BFmgf7Fn.mjs.map +0 -1
  261. package/dist/TestEndpointAdaptor-C79Z-QS4.d.mts +0 -45
  262. package/dist/TestEndpointAdaptor-C79Z-QS4.d.mts.map +0 -1
  263. package/dist/TestEndpointAdaptor-DYLDyAAC.cjs +0 -180
  264. package/dist/TestEndpointAdaptor-DYLDyAAC.cjs.map +0 -1
  265. package/dist/TestEndpointAdaptor-pM8yskbb.d.cts +0 -45
  266. package/dist/TestEndpointAdaptor-pM8yskbb.d.cts.map +0 -1
  267. package/dist/TestFunctionAdaptor-B859kIeb.cjs +0 -81
  268. package/dist/TestFunctionAdaptor-B859kIeb.cjs.map +0 -1
  269. package/dist/TestFunctionAdaptor-C0A-VqnM.d.mts +0 -30
  270. package/dist/TestFunctionAdaptor-C0A-VqnM.d.mts.map +0 -1
  271. package/dist/TestFunctionAdaptor-CqdSlhx1.mjs +0 -75
  272. package/dist/TestFunctionAdaptor-CqdSlhx1.mjs.map +0 -1
  273. package/dist/TestFunctionAdaptor-Dbq55dKP.d.cts +0 -30
  274. package/dist/TestFunctionAdaptor-Dbq55dKP.d.cts.map +0 -1
  275. package/dist/TestSubscriberAdaptor-BEyCFP9G.d.mts +0 -26
  276. package/dist/TestSubscriberAdaptor-BEyCFP9G.d.mts.map +0 -1
  277. package/dist/TestSubscriberAdaptor-BknOLRQw.d.cts +0 -26
  278. package/dist/TestSubscriberAdaptor-BknOLRQw.d.cts.map +0 -1
  279. package/dist/TestSubscriberAdaptor-CCcviuKa.mjs +0 -51
  280. package/dist/TestSubscriberAdaptor-CCcviuKa.mjs.map +0 -1
  281. package/dist/TestSubscriberAdaptor-_69o1d0f.cjs +0 -57
  282. package/dist/TestSubscriberAdaptor-_69o1d0f.cjs.map +0 -1
  283. package/dist/chunk-CUT6urMc.cjs +0 -30
  284. package/dist/crons/Cron.cjs +0 -8
  285. package/dist/crons/Cron.d.cts +0 -7
  286. package/dist/crons/Cron.d.mts +0 -7
  287. package/dist/crons/Cron.mjs +0 -8
  288. package/dist/crons/CronBuilder.cjs +0 -9
  289. package/dist/crons/CronBuilder.d.cts +0 -8
  290. package/dist/crons/CronBuilder.d.mts +0 -8
  291. package/dist/crons/CronBuilder.mjs +0 -9
  292. package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.cjs +0 -11
  293. package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.d.cts +0 -11
  294. package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.d.mts +0 -11
  295. package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.mjs +0 -11
  296. package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.cjs +0 -13
  297. package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.d.cts +0 -12
  298. package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.d.mts +0 -12
  299. package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.mjs +0 -13
  300. package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.cjs +0 -13
  301. package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.d.cts +0 -12
  302. package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.d.mts +0 -12
  303. package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.mjs +0 -13
  304. package/dist/endpoints/Authorizer.cjs +0 -6
  305. package/dist/endpoints/Authorizer.d.cts +0 -2
  306. package/dist/endpoints/Authorizer.d.mts +0 -2
  307. package/dist/endpoints/Authorizer.mjs +0 -3
  308. package/dist/endpoints/Endpoint.cjs +0 -10
  309. package/dist/endpoints/Endpoint.d.cts +0 -9
  310. package/dist/endpoints/Endpoint.d.mts +0 -9
  311. package/dist/endpoints/Endpoint.mjs +0 -8
  312. package/dist/endpoints/EndpointBuilder.cjs +0 -11
  313. package/dist/endpoints/EndpointBuilder.d.cts +0 -10
  314. package/dist/endpoints/EndpointBuilder.d.mts +0 -10
  315. package/dist/endpoints/EndpointBuilder.mjs +0 -11
  316. package/dist/endpoints/EndpointFactory.cjs +0 -13
  317. package/dist/endpoints/EndpointFactory.d.cts +0 -11
  318. package/dist/endpoints/EndpointFactory.d.mts +0 -11
  319. package/dist/endpoints/EndpointFactory.mjs +0 -12
  320. package/dist/endpoints/HonoEndpointAdaptor.cjs +0 -14
  321. package/dist/endpoints/HonoEndpointAdaptor.d.cts +0 -10
  322. package/dist/endpoints/HonoEndpointAdaptor.d.mts +0 -10
  323. package/dist/endpoints/HonoEndpointAdaptor.mjs +0 -14
  324. package/dist/endpoints/MswEndpointAdaptor.cjs +0 -16
  325. package/dist/endpoints/MswEndpointAdaptor.d.cts +0 -10
  326. package/dist/endpoints/MswEndpointAdaptor.d.mts +0 -10
  327. package/dist/endpoints/MswEndpointAdaptor.mjs +0 -15
  328. package/dist/endpoints/TestEndpointAdaptor.cjs +0 -12
  329. package/dist/endpoints/TestEndpointAdaptor.d.cts +0 -10
  330. package/dist/endpoints/TestEndpointAdaptor.d.mts +0 -10
  331. package/dist/endpoints/TestEndpointAdaptor.mjs +0 -12
  332. package/dist/endpoints/audit.cjs +0 -0
  333. package/dist/endpoints/audit.d.cts +0 -9
  334. package/dist/endpoints/audit.d.mts +0 -9
  335. package/dist/endpoints/audit.mjs +0 -0
  336. package/dist/endpoints/helpers.cjs +0 -10
  337. package/dist/endpoints/helpers.d.cts +0 -60
  338. package/dist/endpoints/helpers.d.cts.map +0 -1
  339. package/dist/endpoints/helpers.d.mts +0 -60
  340. package/dist/endpoints/helpers.d.mts.map +0 -1
  341. package/dist/endpoints/helpers.mjs +0 -9
  342. package/dist/endpoints/lazyAccessors.cjs +0 -10
  343. package/dist/endpoints/lazyAccessors.d.cts +0 -10
  344. package/dist/endpoints/lazyAccessors.d.mts +0 -10
  345. package/dist/endpoints/lazyAccessors.mjs +0 -3
  346. package/dist/endpoints/parseHonoQuery.cjs +0 -3
  347. package/dist/endpoints/parseHonoQuery.d.cts +0 -14
  348. package/dist/endpoints/parseHonoQuery.d.cts.map +0 -1
  349. package/dist/endpoints/parseHonoQuery.d.mts +0 -14
  350. package/dist/endpoints/parseHonoQuery.d.mts.map +0 -1
  351. package/dist/endpoints/parseHonoQuery.mjs +0 -3
  352. package/dist/endpoints/parseQueryParams.cjs +0 -3
  353. package/dist/endpoints/parseQueryParams.d.cts +0 -14
  354. package/dist/endpoints/parseQueryParams.d.cts.map +0 -1
  355. package/dist/endpoints/parseQueryParams.d.mts +0 -14
  356. package/dist/endpoints/parseQueryParams.d.mts.map +0 -1
  357. package/dist/endpoints/parseQueryParams.mjs +0 -3
  358. package/dist/endpoints/processAudits.cjs +0 -5
  359. package/dist/endpoints/processAudits.d.cts +0 -95
  360. package/dist/endpoints/processAudits.d.cts.map +0 -1
  361. package/dist/endpoints/processAudits.d.mts +0 -95
  362. package/dist/endpoints/processAudits.d.mts.map +0 -1
  363. package/dist/endpoints/processAudits.mjs +0 -3
  364. package/dist/endpoints/rls.cjs +0 -3
  365. package/dist/endpoints/rls.d.cts +0 -9
  366. package/dist/endpoints/rls.d.mts +0 -9
  367. package/dist/endpoints/rls.mjs +0 -3
  368. package/dist/functions/AWSLambdaFunction.cjs +0 -9
  369. package/dist/functions/AWSLambdaFunction.d.cts +0 -5
  370. package/dist/functions/AWSLambdaFunction.d.mts +0 -5
  371. package/dist/functions/AWSLambdaFunction.mjs +0 -9
  372. package/dist/functions/BaseFunctionBuilder.cjs +0 -4
  373. package/dist/functions/BaseFunctionBuilder.d.cts +0 -3
  374. package/dist/functions/BaseFunctionBuilder.d.mts +0 -3
  375. package/dist/functions/BaseFunctionBuilder.mjs +0 -4
  376. package/dist/functions/Function.cjs +0 -5
  377. package/dist/functions/Function.d.cts +0 -3
  378. package/dist/functions/Function.d.mts +0 -3
  379. package/dist/functions/Function.mjs +0 -4
  380. package/dist/functions/FunctionBuilder.cjs +0 -6
  381. package/dist/functions/FunctionBuilder.d.cts +0 -5
  382. package/dist/functions/FunctionBuilder.d.mts +0 -5
  383. package/dist/functions/FunctionBuilder.mjs +0 -6
  384. package/dist/functions/FunctionExecutionWrapper.cjs +0 -8
  385. package/dist/functions/FunctionExecutionWrapper.d.cts +0 -4
  386. package/dist/functions/FunctionExecutionWrapper.d.mts +0 -4
  387. package/dist/functions/FunctionExecutionWrapper.mjs +0 -8
  388. package/dist/functions/TestFunctionAdaptor.cjs +0 -8
  389. package/dist/functions/TestFunctionAdaptor.d.cts +0 -4
  390. package/dist/functions/TestFunctionAdaptor.d.mts +0 -4
  391. package/dist/functions/TestFunctionAdaptor.mjs +0 -8
  392. package/dist/functions-B1mrMoUH.mjs +0 -8
  393. package/dist/functions-B1mrMoUH.mjs.map +0 -1
  394. package/dist/functions-rOD3pXQd.cjs +0 -13
  395. package/dist/functions-rOD3pXQd.cjs.map +0 -1
  396. package/dist/helpers-BYyX0qTA.cjs +0 -95
  397. package/dist/helpers-BYyX0qTA.cjs.map +0 -1
  398. package/dist/helpers-BtwC2IW8.mjs +0 -83
  399. package/dist/helpers-BtwC2IW8.mjs.map +0 -1
  400. package/dist/index-BfeupgMl.d.cts +0 -12
  401. package/dist/index-BfeupgMl.d.cts.map +0 -1
  402. package/dist/index-Cg2UDz1r.d.mts +0 -12
  403. package/dist/index-Cg2UDz1r.d.mts.map +0 -1
  404. package/dist/lazyAccessors-BVEtB9lU.cjs +0 -223
  405. package/dist/lazyAccessors-BVEtB9lU.cjs.map +0 -1
  406. package/dist/lazyAccessors-Bxy5DBp4.d.cts +0 -49
  407. package/dist/lazyAccessors-Bxy5DBp4.d.cts.map +0 -1
  408. package/dist/lazyAccessors-CWFdtzSR.d.mts +0 -49
  409. package/dist/lazyAccessors-CWFdtzSR.d.mts.map +0 -1
  410. package/dist/lazyAccessors-DM6HcXQk.mjs +0 -175
  411. package/dist/lazyAccessors-DM6HcXQk.mjs.map +0 -1
  412. package/dist/parseHonoQuery-BBs8CX-H.cjs +0 -24
  413. package/dist/parseHonoQuery-BBs8CX-H.cjs.map +0 -1
  414. package/dist/parseHonoQuery-Cp8CII0P.mjs +0 -18
  415. package/dist/parseHonoQuery-Cp8CII0P.mjs.map +0 -1
  416. package/dist/parseQueryParams-B4RK1za3.cjs +0 -31
  417. package/dist/parseQueryParams-B4RK1za3.cjs.map +0 -1
  418. package/dist/parseQueryParams-DS3Qmrbd.mjs +0 -25
  419. package/dist/parseQueryParams-DS3Qmrbd.mjs.map +0 -1
  420. package/dist/processAudits-CzHkPokQ.cjs +0 -180
  421. package/dist/processAudits-CzHkPokQ.cjs.map +0 -1
  422. package/dist/processAudits-Dj8UGqcW.mjs +0 -162
  423. package/dist/processAudits-Dj8UGqcW.mjs.map +0 -1
  424. package/dist/publisher-BUDHcaz3.d.cts +0 -16
  425. package/dist/publisher-BUDHcaz3.d.cts.map +0 -1
  426. package/dist/publisher-Bw4770Hi.mjs +0 -41
  427. package/dist/publisher-Bw4770Hi.mjs.map +0 -1
  428. package/dist/publisher-DXglijK_.d.mts +0 -16
  429. package/dist/publisher-DXglijK_.d.mts.map +0 -1
  430. package/dist/publisher-lFQleddL.cjs +0 -53
  431. package/dist/publisher-lFQleddL.cjs.map +0 -1
  432. package/dist/publisher.cjs +0 -4
  433. package/dist/publisher.d.cts +0 -3
  434. package/dist/publisher.d.mts +0 -3
  435. package/dist/publisher.mjs +0 -3
  436. package/dist/rls-C0r4UKVm.mjs +0 -9
  437. package/dist/rls-C0r4UKVm.mjs.map +0 -1
  438. package/dist/rls-Cfb6w-tQ.cjs +0 -15
  439. package/dist/rls-Cfb6w-tQ.cjs.map +0 -1
  440. package/dist/subscribers/AWSLambdaSubscriberAdaptor.cjs +0 -3
  441. package/dist/subscribers/AWSLambdaSubscriberAdaptor.d.cts +0 -4
  442. package/dist/subscribers/AWSLambdaSubscriberAdaptor.d.mts +0 -4
  443. package/dist/subscribers/AWSLambdaSubscriberAdaptor.mjs +0 -3
  444. package/dist/subscribers/Subscriber.cjs +0 -4
  445. package/dist/subscribers/Subscriber.d.cts +0 -3
  446. package/dist/subscribers/Subscriber.d.mts +0 -3
  447. package/dist/subscribers/Subscriber.mjs +0 -4
  448. package/dist/subscribers/SubscriberBuilder.cjs +0 -5
  449. package/dist/subscribers/SubscriberBuilder.d.cts +0 -4
  450. package/dist/subscribers/SubscriberBuilder.d.mts +0 -4
  451. package/dist/subscribers/SubscriberBuilder.mjs +0 -5
  452. package/dist/subscribers/TestSubscriberAdaptor.cjs +0 -4
  453. package/dist/subscribers/TestSubscriberAdaptor.d.cts +0 -4
  454. package/dist/subscribers/TestSubscriberAdaptor.d.mts +0 -4
  455. package/dist/subscribers/TestSubscriberAdaptor.mjs +0 -4
  456. package/dist/telemetry.cjs +0 -0
  457. package/dist/telemetry.d.cts +0 -2
  458. package/dist/telemetry.d.mts +0 -2
  459. package/dist/telemetry.mjs +0 -0
@@ -1,76 +0,0 @@
1
- import { Construct, ConstructType } from "./Construct-BjpXFNxy.mjs";
2
- import { Service, ServiceRecord } from "@geekmidas/services";
3
- import { AuditStorage, AuditableAction, Auditor } from "@geekmidas/audit";
4
- import { EventPublisher, MappedEvent } from "@geekmidas/events";
5
- import { Logger } from "@geekmidas/logger";
6
- import { StandardSchemaV1 } from "@standard-schema/spec";
7
- import { ComposableStandardSchema, InferComposableStandardSchema, InferStandardSchema } from "@geekmidas/schema";
8
-
9
- //#region src/functions/Function.d.ts
10
- declare class FunctionFactory<TServices extends Service[] = [], TLogger extends Logger = Logger> {
11
- private defaultLogger;
12
- private defaultServices;
13
- constructor(defaultServices: TServices, defaultLogger?: TLogger);
14
- services<S extends Service[]>(services: S): FunctionFactory<[...S, ...TServices], TLogger>;
15
- logger<L extends Logger>(logger: L): FunctionFactory<TServices, L>;
16
- }
17
- declare class Function<TInput extends ComposableStandardSchema | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, OutSchema extends StandardSchemaV1 | undefined = undefined, TEventPublisher extends EventPublisher<any> | undefined = undefined, TEventPublisherServiceName extends string = string, TAuditStorage extends AuditStorage | undefined = undefined, TAuditStorageServiceName extends string = string, TDatabase = undefined, TDatabaseServiceName extends string = string, TAuditAction extends AuditableAction<string, unknown> = AuditableAction<string, unknown>, Fn extends FunctionHandler<TInput, TServices, TLogger, OutSchema, TDatabase, TAuditStorage, TAuditAction> = FunctionHandler<TInput, TServices, TLogger, OutSchema, TDatabase, TAuditStorage, TAuditAction>> extends Construct<TLogger, TEventPublisherServiceName, TEventPublisher, OutSchema, TServices, TAuditStorageServiceName, TAuditStorage> {
18
- readonly fn: Fn;
19
- input?: TInput | undefined;
20
- databaseService?: Service<TDatabaseServiceName, TDatabase> | undefined;
21
- __IS_FUNCTION__: boolean;
22
- static isFunction(obj: any): obj is Function<any, any, any, any, any>;
23
- /**
24
- * Validates data against a StandardSchema.
25
- *
26
- * @param schema - The StandardSchema to validate against
27
- * @param data - The data to validate
28
- * @returns Validation result with value or issues
29
- */
30
- static validate<T extends StandardSchemaV1>(schema: T, data: unknown): StandardSchemaV1.Result<unknown> | Promise<StandardSchemaV1.Result<unknown>>;
31
- /**
32
- * Parses and validates data against a schema, throwing an error if validation fails.
33
- *
34
- * @param schema - The StandardSchema to validate against
35
- * @param data - The data to parse and validate
36
- * @returns The validated data with proper typing
37
- * @throws {UnprocessableEntityError} When validation fails
38
- */
39
- static parseSchema<T extends StandardSchemaV1>(schema: T, data: unknown): Promise<InferStandardSchema<T>>;
40
- /**
41
- * Parses and validates the endpoint output against the output schema.
42
- *
43
- * @param output - The raw output data to validate
44
- * @returns The validated output data
45
- * @throws {UnprocessableEntityError} When output validation fails
46
- */
47
- parseOutput(output: unknown): Promise<InferStandardSchema<OutSchema>>;
48
- constructor(fn: Fn, timeout?: number,
49
- // Default timeout of 30 seconds
50
- type?: ConstructType, input?: TInput | undefined, outputSchema?: OutSchema, services?: TServices, logger?: TLogger, publisherService?: Service<TEventPublisherServiceName, TEventPublisher>, events?: MappedEvent<TEventPublisher, OutSchema>[], memorySize?: number, auditorStorageService?: Service<TAuditStorageServiceName, TAuditStorage>, databaseService?: Service<TDatabaseServiceName, TDatabase> | undefined);
51
- }
52
- type FunctionHandler<TInput extends ComposableStandardSchema | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, OutSchema extends StandardSchemaV1 | undefined = undefined, TDatabase = undefined, TAuditStorage extends AuditStorage | undefined = undefined, TAuditAction extends AuditableAction<string, unknown> = AuditableAction<string, unknown>> = (ctx: FunctionContext<TInput, TServices, TLogger, TDatabase, TAuditStorage, TAuditAction>) => OutSchema extends StandardSchemaV1 ? InferStandardSchema<OutSchema> | Promise<InferStandardSchema<OutSchema>> : any | Promise<any>;
53
- /**
54
- * Conditional type that adds `db` property only when TDatabase is configured.
55
- */
56
- type DatabaseContext<TDatabase> = TDatabase extends undefined ? {} : {
57
- db: TDatabase;
58
- };
59
- /**
60
- * Conditional auditor context - only present when audit storage is configured.
61
- */
62
- type AuditorContext<TAuditAction extends AuditableAction<string, unknown> = AuditableAction<string, unknown>, TAuditStorage = undefined> = TAuditStorage extends undefined ? {} : {
63
- /**
64
- * Auditor instance for recording audit events.
65
- * Only present when audit storage is configured on the function.
66
- */
67
- auditor: Auditor<TAuditAction>;
68
- };
69
- type FunctionContext<Input extends ComposableStandardSchema | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, TDatabase = undefined, TAuditStorage extends AuditStorage | undefined = undefined, TAuditAction extends AuditableAction<string, unknown> = AuditableAction<string, unknown>> = {
70
- services: ServiceRecord<TServices>;
71
- logger: TLogger;
72
- input: InferComposableStandardSchema<Input>;
73
- } & DatabaseContext<TDatabase> & AuditorContext<TAuditAction, TAuditStorage>;
74
- //#endregion
75
- export { Function, FunctionContext, FunctionFactory, FunctionHandler };
76
- //# sourceMappingURL=Function-D74HrBnX.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Function-D74HrBnX.d.mts","names":[],"sources":["../src/functions/Function.ts"],"sourcesContent":[],"mappings":"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"}
@@ -1,84 +0,0 @@
1
- const require_chunk = require('./chunk-CUT6urMc.cjs');
2
- const require_Construct = require('./Construct-BXG8cFSm.cjs');
3
- const __geekmidas_logger_console = require_chunk.__toESM(require("@geekmidas/logger/console"));
4
- const __geekmidas_errors = require_chunk.__toESM(require("@geekmidas/errors"));
5
- const __geekmidas_schema_parser = require_chunk.__toESM(require("@geekmidas/schema/parser"));
6
- const lodash_uniqby = require_chunk.__toESM(require("lodash.uniqby"));
7
-
8
- //#region src/functions/Function.ts
9
- const DEFAULT_LOGGER = new __geekmidas_logger_console.ConsoleLogger();
10
- var FunctionFactory = class FunctionFactory {
11
- defaultServices;
12
- constructor(defaultServices, defaultLogger = DEFAULT_LOGGER) {
13
- this.defaultLogger = defaultLogger;
14
- this.defaultServices = (0, lodash_uniqby.default)(defaultServices, (s) => s.serviceName);
15
- }
16
- services(services) {
17
- return new FunctionFactory([...services, ...this.defaultServices], this.defaultLogger);
18
- }
19
- logger(logger) {
20
- return new FunctionFactory(this.defaultServices, logger);
21
- }
22
- };
23
- var Function = class Function extends require_Construct.Construct {
24
- __IS_FUNCTION__ = true;
25
- static isFunction(obj) {
26
- return Boolean(obj && obj.__IS_FUNCTION__ === true && obj.type === require_Construct.ConstructType.Function);
27
- }
28
- /**
29
- * Validates data against a StandardSchema.
30
- *
31
- * @param schema - The StandardSchema to validate against
32
- * @param data - The data to validate
33
- * @returns Validation result with value or issues
34
- */
35
- static validate(schema, data) {
36
- return schema["~standard"].validate(data);
37
- }
38
- /**
39
- * Parses and validates data against a schema, throwing an error if validation fails.
40
- *
41
- * @param schema - The StandardSchema to validate against
42
- * @param data - The data to parse and validate
43
- * @returns The validated data with proper typing
44
- * @throws {UnprocessableEntityError} When validation fails
45
- */
46
- static async parseSchema(schema, data) {
47
- try {
48
- return await (0, __geekmidas_schema_parser.parseSchema)(schema, data);
49
- } catch (issues) {
50
- throw new __geekmidas_errors.UnprocessableEntityError("Validation failed", issues);
51
- }
52
- }
53
- /**
54
- * Parses and validates the endpoint output against the output schema.
55
- *
56
- * @param output - The raw output data to validate
57
- * @returns The validated output data
58
- * @throws {UnprocessableEntityError} When output validation fails
59
- */
60
- async parseOutput(output) {
61
- return Function.parseSchema(this.outputSchema, output);
62
- }
63
- constructor(fn, timeout = 3e4, type = require_Construct.ConstructType.Function, input, outputSchema, services = [], logger = DEFAULT_LOGGER, publisherService, events = [], memorySize, auditorStorageService, databaseService) {
64
- super(type, logger, services, events, publisherService, outputSchema, timeout, memorySize, auditorStorageService);
65
- this.fn = fn;
66
- this.input = input;
67
- this.databaseService = databaseService;
68
- }
69
- };
70
-
71
- //#endregion
72
- Object.defineProperty(exports, 'Function', {
73
- enumerable: true,
74
- get: function () {
75
- return Function;
76
- }
77
- });
78
- Object.defineProperty(exports, 'FunctionFactory', {
79
- enumerable: true,
80
- get: function () {
81
- return FunctionFactory;
82
- }
83
- });
84
- //# sourceMappingURL=Function-DgQ_no6B.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Function-DgQ_no6B.cjs","names":["ConsoleLogger","defaultServices: TServices","defaultLogger: TLogger","services: S","logger: L","Construct","obj: any","ConstructType","schema: T","data: unknown","UnprocessableEntityError","output: unknown","fn: Fn","type: ConstructType","input?: TInput","outputSchema?: OutSchema","services: TServices","logger: TLogger","publisherService?: Service<TEventPublisherServiceName, TEventPublisher>","events: MappedEvent<TEventPublisher, OutSchema>[]","memorySize?: number","auditorStorageService?: Service<TAuditStorageServiceName, TAuditStorage>","databaseService?: Service<TDatabaseServiceName, TDatabase>"],"sources":["../src/functions/Function.ts"],"sourcesContent":["import type { AuditableAction, Auditor, AuditStorage } from '@geekmidas/audit';\nimport { UnprocessableEntityError } from '@geekmidas/errors';\nimport type { EventPublisher, MappedEvent } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport { ConsoleLogger } from '@geekmidas/logger/console';\nimport type {\n\tComposableStandardSchema,\n\tInferComposableStandardSchema,\n\tInferStandardSchema,\n} from '@geekmidas/schema';\nimport { parseSchema } from '@geekmidas/schema/parser';\nimport type { Service, ServiceRecord } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport uniqBy from 'lodash.uniqby';\nimport { Construct, ConstructType } from '../Construct';\n\nconst DEFAULT_LOGGER = new ConsoleLogger() as any;\n\nexport class FunctionFactory<\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n> {\n\tprivate defaultServices: TServices;\n\tconstructor(\n\t\tdefaultServices: TServices,\n\t\tprivate defaultLogger: TLogger = DEFAULT_LOGGER,\n\t) {\n\t\t// Initialize default services\n\t\tthis.defaultServices = uniqBy(\n\t\t\tdefaultServices,\n\t\t\t(s) => s.serviceName,\n\t\t) as TServices;\n\t}\n\n\t// Create a new factory with services\n\tservices<S extends Service[]>(\n\t\tservices: S,\n\t): FunctionFactory<[...S, ...TServices], TLogger> {\n\t\treturn new FunctionFactory<[...S, ...TServices], TLogger>(\n\t\t\t[...services, ...this.defaultServices],\n\t\t\tthis.defaultLogger,\n\t\t);\n\t}\n\n\tlogger<L extends Logger>(logger: L): FunctionFactory<TServices, L> {\n\t\treturn new FunctionFactory<TServices, L>(this.defaultServices, logger);\n\t}\n}\n\nexport class Function<\n\tTInput extends ComposableStandardSchema | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTAuditStorageServiceName extends string = string,\n\tTDatabase = undefined,\n\tTDatabaseServiceName extends string = string,\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n\tFn extends FunctionHandler<\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTDatabase,\n\t\tTAuditStorage,\n\t\tTAuditAction\n\t> = FunctionHandler<\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTDatabase,\n\t\tTAuditStorage,\n\t\tTAuditAction\n\t>,\n> extends Construct<\n\tTLogger,\n\tTEventPublisherServiceName,\n\tTEventPublisher,\n\tOutSchema,\n\tTServices,\n\tTAuditStorageServiceName,\n\tTAuditStorage\n> {\n\t__IS_FUNCTION__ = true;\n\n\tstatic isFunction(obj: any): obj is Function<any, any, any, any, any> {\n\t\treturn Boolean(\n\t\t\tobj &&\n\t\t\t\tobj.__IS_FUNCTION__ === true &&\n\t\t\t\tobj.type === ConstructType.Function,\n\t\t);\n\t}\n\n\t/**\n\t * Validates data against a StandardSchema.\n\t *\n\t * @param schema - The StandardSchema to validate against\n\t * @param data - The data to validate\n\t * @returns Validation result with value or issues\n\t */\n\tstatic validate<T extends StandardSchemaV1>(schema: T, data: unknown) {\n\t\treturn schema['~standard'].validate(data);\n\t}\n\n\t/**\n\t * Parses and validates data against a schema, throwing an error if validation fails.\n\t *\n\t * @param schema - The StandardSchema to validate against\n\t * @param data - The data to parse and validate\n\t * @returns The validated data with proper typing\n\t * @throws {UnprocessableEntityError} When validation fails\n\t */\n\tstatic async parseSchema<T extends StandardSchemaV1>(\n\t\tschema: T,\n\t\tdata: unknown,\n\t): Promise<InferStandardSchema<T>> {\n\t\ttry {\n\t\t\treturn await parseSchema(schema, data);\n\t\t} catch (issues) {\n\t\t\tthrow new UnprocessableEntityError('Validation failed', issues);\n\t\t}\n\t}\n\n\t/**\n\t * Parses and validates the endpoint output against the output schema.\n\t *\n\t * @param output - The raw output data to validate\n\t * @returns The validated output data\n\t * @throws {UnprocessableEntityError} When output validation fails\n\t */\n\tasync parseOutput(output: unknown): Promise<InferStandardSchema<OutSchema>> {\n\t\treturn Function.parseSchema(\n\t\t\tthis.outputSchema as StandardSchemaV1,\n\t\t\toutput,\n\t\t) as Promise<InferStandardSchema<OutSchema>>;\n\t}\n\n\tconstructor(\n\t\tpublic readonly fn: Fn,\n\t\ttimeout = 30000, // Default timeout of 30 seconds\n\t\ttype: ConstructType = ConstructType.Function,\n\t\tpublic input?: TInput,\n\t\toutputSchema?: OutSchema,\n\t\tservices: TServices = [] as unknown as TServices,\n\t\tlogger: TLogger = DEFAULT_LOGGER,\n\t\tpublisherService?: Service<TEventPublisherServiceName, TEventPublisher>,\n\t\tevents: MappedEvent<TEventPublisher, OutSchema>[] = [],\n\t\tmemorySize?: number,\n\t\tauditorStorageService?: Service<TAuditStorageServiceName, TAuditStorage>,\n\t\tpublic override databaseService?: Service<TDatabaseServiceName, TDatabase>,\n\t) {\n\t\tsuper(\n\t\t\ttype,\n\t\t\tlogger,\n\t\t\tservices,\n\t\t\tevents,\n\t\t\tpublisherService,\n\t\t\toutputSchema,\n\t\t\ttimeout,\n\t\t\tmemorySize,\n\t\t\tauditorStorageService,\n\t\t);\n\t}\n}\n\nexport type FunctionHandler<\n\tTInput extends ComposableStandardSchema | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTDatabase = undefined,\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n> = (\n\tctx: FunctionContext<\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tTDatabase,\n\t\tTAuditStorage,\n\t\tTAuditAction\n\t>,\n) => OutSchema extends StandardSchemaV1\n\t? InferStandardSchema<OutSchema> | Promise<InferStandardSchema<OutSchema>>\n\t: any | Promise<any>;\n\n/**\n * Conditional type that adds `db` property only when TDatabase is configured.\n */\ntype DatabaseContext<TDatabase> = TDatabase extends undefined\n\t? {}\n\t: { db: TDatabase };\n\n/**\n * Conditional auditor context - only present when audit storage is configured.\n */\ntype AuditorContext<\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n\tTAuditStorage = undefined,\n> = TAuditStorage extends undefined\n\t? {}\n\t: {\n\t\t\t/**\n\t\t\t * Auditor instance for recording audit events.\n\t\t\t * Only present when audit storage is configured on the function.\n\t\t\t */\n\t\t\tauditor: Auditor<TAuditAction>;\n\t\t};\n\nexport type FunctionContext<\n\tInput extends ComposableStandardSchema | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tTDatabase = undefined,\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n> = {\n\tservices: ServiceRecord<TServices>;\n\tlogger: TLogger;\n\tinput: InferComposableStandardSchema<Input>;\n} & DatabaseContext<TDatabase> &\n\tAuditorContext<TAuditAction, TAuditStorage>;\n"],"mappings":";;;;;;;;AAgBA,MAAM,iBAAiB,IAAIA;AAE3B,IAAa,kBAAb,MAAa,gBAGX;CACD,AAAQ;CACR,YACCC,iBACQC,gBAAyB,gBAChC;EADO;AAGR,OAAK,kBAAkB,2BACtB,iBACA,CAAC,MAAM,EAAE,YACT;CACD;CAGD,SACCC,UACiD;AACjD,SAAO,IAAI,gBACV,CAAC,GAAG,UAAU,GAAG,KAAK,eAAgB,GACtC,KAAK;CAEN;CAED,OAAyBC,QAA0C;AAClE,SAAO,IAAI,gBAA8B,KAAK,iBAAiB;CAC/D;AACD;AAED,IAAa,WAAb,MAAa,iBAgCHC,4BAQR;CACD,kBAAkB;CAElB,OAAO,WAAWC,KAAoD;AACrE,SAAO,QACN,OACC,IAAI,oBAAoB,QACxB,IAAI,SAASC,gCAAc,SAC5B;CACD;;;;;;;;CASD,OAAO,SAAqCC,QAAWC,MAAe;AACrE,SAAO,OAAO,aAAa,SAAS,KAAK;CACzC;;;;;;;;;CAUD,aAAa,YACZD,QACAC,MACkC;AAClC,MAAI;AACH,UAAO,MAAM,2CAAY,QAAQ,KAAK;EACtC,SAAQ,QAAQ;AAChB,SAAM,IAAIC,4CAAyB,qBAAqB;EACxD;CACD;;;;;;;;CASD,MAAM,YAAYC,QAA0D;AAC3E,SAAO,SAAS,YACf,KAAK,cACL,OACA;CACD;CAED,YACiBC,IAChB,UAAU,KACVC,OAAsBN,gCAAc,UAC7BO,OACPC,cACAC,WAAsB,CAAE,GACxBC,SAAkB,gBAClBC,kBACAC,SAAoD,CAAE,GACtDC,YACAC,uBACgBC,iBACf;AACD,QACC,MACA,QACA,UACA,QACA,kBACA,cACA,SACA,YACA,sBACA;EAvBe;EAGT;EAQS;CAahB;AACD"}
@@ -1,72 +0,0 @@
1
- import { Construct, ConstructType } from "./Construct-CQ9zV58W.mjs";
2
- import { ConsoleLogger } from "@geekmidas/logger/console";
3
- import { UnprocessableEntityError } from "@geekmidas/errors";
4
- import { parseSchema } from "@geekmidas/schema/parser";
5
- import uniqBy from "lodash.uniqby";
6
-
7
- //#region src/functions/Function.ts
8
- const DEFAULT_LOGGER$1 = new ConsoleLogger();
9
- var FunctionFactory = class FunctionFactory {
10
- defaultServices;
11
- constructor(defaultServices, defaultLogger = DEFAULT_LOGGER$1) {
12
- this.defaultLogger = defaultLogger;
13
- this.defaultServices = uniqBy(defaultServices, (s) => s.serviceName);
14
- }
15
- services(services) {
16
- return new FunctionFactory([...services, ...this.defaultServices], this.defaultLogger);
17
- }
18
- logger(logger) {
19
- return new FunctionFactory(this.defaultServices, logger);
20
- }
21
- };
22
- var Function = class Function extends Construct {
23
- __IS_FUNCTION__ = true;
24
- static isFunction(obj) {
25
- return Boolean(obj && obj.__IS_FUNCTION__ === true && obj.type === ConstructType.Function);
26
- }
27
- /**
28
- * Validates data against a StandardSchema.
29
- *
30
- * @param schema - The StandardSchema to validate against
31
- * @param data - The data to validate
32
- * @returns Validation result with value or issues
33
- */
34
- static validate(schema, data) {
35
- return schema["~standard"].validate(data);
36
- }
37
- /**
38
- * Parses and validates data against a schema, throwing an error if validation fails.
39
- *
40
- * @param schema - The StandardSchema to validate against
41
- * @param data - The data to parse and validate
42
- * @returns The validated data with proper typing
43
- * @throws {UnprocessableEntityError} When validation fails
44
- */
45
- static async parseSchema(schema, data) {
46
- try {
47
- return await parseSchema(schema, data);
48
- } catch (issues) {
49
- throw new UnprocessableEntityError("Validation failed", issues);
50
- }
51
- }
52
- /**
53
- * Parses and validates the endpoint output against the output schema.
54
- *
55
- * @param output - The raw output data to validate
56
- * @returns The validated output data
57
- * @throws {UnprocessableEntityError} When output validation fails
58
- */
59
- async parseOutput(output) {
60
- return Function.parseSchema(this.outputSchema, output);
61
- }
62
- constructor(fn, timeout = 3e4, type = ConstructType.Function, input, outputSchema, services = [], logger = DEFAULT_LOGGER$1, publisherService, events = [], memorySize, auditorStorageService, databaseService) {
63
- super(type, logger, services, events, publisherService, outputSchema, timeout, memorySize, auditorStorageService);
64
- this.fn = fn;
65
- this.input = input;
66
- this.databaseService = databaseService;
67
- }
68
- };
69
-
70
- //#endregion
71
- export { Function, FunctionFactory };
72
- //# sourceMappingURL=Function-xfQbftdE.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Function-xfQbftdE.mjs","names":["DEFAULT_LOGGER","defaultServices: TServices","defaultLogger: TLogger","services: S","logger: L","obj: any","schema: T","data: unknown","output: unknown","fn: Fn","type: ConstructType","input?: TInput","outputSchema?: OutSchema","services: TServices","logger: TLogger","publisherService?: Service<TEventPublisherServiceName, TEventPublisher>","events: MappedEvent<TEventPublisher, OutSchema>[]","memorySize?: number","auditorStorageService?: Service<TAuditStorageServiceName, TAuditStorage>","databaseService?: Service<TDatabaseServiceName, TDatabase>"],"sources":["../src/functions/Function.ts"],"sourcesContent":["import type { AuditableAction, Auditor, AuditStorage } from '@geekmidas/audit';\nimport { UnprocessableEntityError } from '@geekmidas/errors';\nimport type { EventPublisher, MappedEvent } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport { ConsoleLogger } from '@geekmidas/logger/console';\nimport type {\n\tComposableStandardSchema,\n\tInferComposableStandardSchema,\n\tInferStandardSchema,\n} from '@geekmidas/schema';\nimport { parseSchema } from '@geekmidas/schema/parser';\nimport type { Service, ServiceRecord } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport uniqBy from 'lodash.uniqby';\nimport { Construct, ConstructType } from '../Construct';\n\nconst DEFAULT_LOGGER = new ConsoleLogger() as any;\n\nexport class FunctionFactory<\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n> {\n\tprivate defaultServices: TServices;\n\tconstructor(\n\t\tdefaultServices: TServices,\n\t\tprivate defaultLogger: TLogger = DEFAULT_LOGGER,\n\t) {\n\t\t// Initialize default services\n\t\tthis.defaultServices = uniqBy(\n\t\t\tdefaultServices,\n\t\t\t(s) => s.serviceName,\n\t\t) as TServices;\n\t}\n\n\t// Create a new factory with services\n\tservices<S extends Service[]>(\n\t\tservices: S,\n\t): FunctionFactory<[...S, ...TServices], TLogger> {\n\t\treturn new FunctionFactory<[...S, ...TServices], TLogger>(\n\t\t\t[...services, ...this.defaultServices],\n\t\t\tthis.defaultLogger,\n\t\t);\n\t}\n\n\tlogger<L extends Logger>(logger: L): FunctionFactory<TServices, L> {\n\t\treturn new FunctionFactory<TServices, L>(this.defaultServices, logger);\n\t}\n}\n\nexport class Function<\n\tTInput extends ComposableStandardSchema | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTAuditStorageServiceName extends string = string,\n\tTDatabase = undefined,\n\tTDatabaseServiceName extends string = string,\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n\tFn extends FunctionHandler<\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTDatabase,\n\t\tTAuditStorage,\n\t\tTAuditAction\n\t> = FunctionHandler<\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTDatabase,\n\t\tTAuditStorage,\n\t\tTAuditAction\n\t>,\n> extends Construct<\n\tTLogger,\n\tTEventPublisherServiceName,\n\tTEventPublisher,\n\tOutSchema,\n\tTServices,\n\tTAuditStorageServiceName,\n\tTAuditStorage\n> {\n\t__IS_FUNCTION__ = true;\n\n\tstatic isFunction(obj: any): obj is Function<any, any, any, any, any> {\n\t\treturn Boolean(\n\t\t\tobj &&\n\t\t\t\tobj.__IS_FUNCTION__ === true &&\n\t\t\t\tobj.type === ConstructType.Function,\n\t\t);\n\t}\n\n\t/**\n\t * Validates data against a StandardSchema.\n\t *\n\t * @param schema - The StandardSchema to validate against\n\t * @param data - The data to validate\n\t * @returns Validation result with value or issues\n\t */\n\tstatic validate<T extends StandardSchemaV1>(schema: T, data: unknown) {\n\t\treturn schema['~standard'].validate(data);\n\t}\n\n\t/**\n\t * Parses and validates data against a schema, throwing an error if validation fails.\n\t *\n\t * @param schema - The StandardSchema to validate against\n\t * @param data - The data to parse and validate\n\t * @returns The validated data with proper typing\n\t * @throws {UnprocessableEntityError} When validation fails\n\t */\n\tstatic async parseSchema<T extends StandardSchemaV1>(\n\t\tschema: T,\n\t\tdata: unknown,\n\t): Promise<InferStandardSchema<T>> {\n\t\ttry {\n\t\t\treturn await parseSchema(schema, data);\n\t\t} catch (issues) {\n\t\t\tthrow new UnprocessableEntityError('Validation failed', issues);\n\t\t}\n\t}\n\n\t/**\n\t * Parses and validates the endpoint output against the output schema.\n\t *\n\t * @param output - The raw output data to validate\n\t * @returns The validated output data\n\t * @throws {UnprocessableEntityError} When output validation fails\n\t */\n\tasync parseOutput(output: unknown): Promise<InferStandardSchema<OutSchema>> {\n\t\treturn Function.parseSchema(\n\t\t\tthis.outputSchema as StandardSchemaV1,\n\t\t\toutput,\n\t\t) as Promise<InferStandardSchema<OutSchema>>;\n\t}\n\n\tconstructor(\n\t\tpublic readonly fn: Fn,\n\t\ttimeout = 30000, // Default timeout of 30 seconds\n\t\ttype: ConstructType = ConstructType.Function,\n\t\tpublic input?: TInput,\n\t\toutputSchema?: OutSchema,\n\t\tservices: TServices = [] as unknown as TServices,\n\t\tlogger: TLogger = DEFAULT_LOGGER,\n\t\tpublisherService?: Service<TEventPublisherServiceName, TEventPublisher>,\n\t\tevents: MappedEvent<TEventPublisher, OutSchema>[] = [],\n\t\tmemorySize?: number,\n\t\tauditorStorageService?: Service<TAuditStorageServiceName, TAuditStorage>,\n\t\tpublic override databaseService?: Service<TDatabaseServiceName, TDatabase>,\n\t) {\n\t\tsuper(\n\t\t\ttype,\n\t\t\tlogger,\n\t\t\tservices,\n\t\t\tevents,\n\t\t\tpublisherService,\n\t\t\toutputSchema,\n\t\t\ttimeout,\n\t\t\tmemorySize,\n\t\t\tauditorStorageService,\n\t\t);\n\t}\n}\n\nexport type FunctionHandler<\n\tTInput extends ComposableStandardSchema | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTDatabase = undefined,\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n> = (\n\tctx: FunctionContext<\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tTDatabase,\n\t\tTAuditStorage,\n\t\tTAuditAction\n\t>,\n) => OutSchema extends StandardSchemaV1\n\t? InferStandardSchema<OutSchema> | Promise<InferStandardSchema<OutSchema>>\n\t: any | Promise<any>;\n\n/**\n * Conditional type that adds `db` property only when TDatabase is configured.\n */\ntype DatabaseContext<TDatabase> = TDatabase extends undefined\n\t? {}\n\t: { db: TDatabase };\n\n/**\n * Conditional auditor context - only present when audit storage is configured.\n */\ntype AuditorContext<\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n\tTAuditStorage = undefined,\n> = TAuditStorage extends undefined\n\t? {}\n\t: {\n\t\t\t/**\n\t\t\t * Auditor instance for recording audit events.\n\t\t\t * Only present when audit storage is configured on the function.\n\t\t\t */\n\t\t\tauditor: Auditor<TAuditAction>;\n\t\t};\n\nexport type FunctionContext<\n\tInput extends ComposableStandardSchema | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tTDatabase = undefined,\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n> = {\n\tservices: ServiceRecord<TServices>;\n\tlogger: TLogger;\n\tinput: InferComposableStandardSchema<Input>;\n} & DatabaseContext<TDatabase> &\n\tAuditorContext<TAuditAction, TAuditStorage>;\n"],"mappings":";;;;;;;AAgBA,MAAMA,mBAAiB,IAAI;AAE3B,IAAa,kBAAb,MAAa,gBAGX;CACD,AAAQ;CACR,YACCC,iBACQC,gBAAyBF,kBAChC;EADO;AAGR,OAAK,kBAAkB,OACtB,iBACA,CAAC,MAAM,EAAE,YACT;CACD;CAGD,SACCG,UACiD;AACjD,SAAO,IAAI,gBACV,CAAC,GAAG,UAAU,GAAG,KAAK,eAAgB,GACtC,KAAK;CAEN;CAED,OAAyBC,QAA0C;AAClE,SAAO,IAAI,gBAA8B,KAAK,iBAAiB;CAC/D;AACD;AAED,IAAa,WAAb,MAAa,iBAgCH,UAQR;CACD,kBAAkB;CAElB,OAAO,WAAWC,KAAoD;AACrE,SAAO,QACN,OACC,IAAI,oBAAoB,QACxB,IAAI,SAAS,cAAc,SAC5B;CACD;;;;;;;;CASD,OAAO,SAAqCC,QAAWC,MAAe;AACrE,SAAO,OAAO,aAAa,SAAS,KAAK;CACzC;;;;;;;;;CAUD,aAAa,YACZD,QACAC,MACkC;AAClC,MAAI;AACH,UAAO,MAAM,YAAY,QAAQ,KAAK;EACtC,SAAQ,QAAQ;AAChB,SAAM,IAAI,yBAAyB,qBAAqB;EACxD;CACD;;;;;;;;CASD,MAAM,YAAYC,QAA0D;AAC3E,SAAO,SAAS,YACf,KAAK,cACL,OACA;CACD;CAED,YACiBC,IAChB,UAAU,KACVC,OAAsB,cAAc,UAC7BC,OACPC,cACAC,WAAsB,CAAE,GACxBC,SAAkBd,kBAClBe,kBACAC,SAAoD,CAAE,GACtDC,YACAC,uBACgBC,iBACf;AACD,QACC,MACA,QACA,UACA,QACA,kBACA,cACA,SACA,YACA,sBACA;EAvBe;EAGT;EAQS;CAahB;AACD"}
@@ -1,80 +0,0 @@
1
- import { ConstructType } from "./Construct-CQ9zV58W.mjs";
2
- import { BaseFunctionBuilder } from "./BaseFunctionBuilder-C3rQMoWb.mjs";
3
- import { Function } from "./Function-xfQbftdE.mjs";
4
- import { ConsoleLogger } from "@geekmidas/logger/console";
5
- import uniqBy from "lodash.uniqby";
6
-
7
- //#region src/functions/FunctionBuilder.ts
8
- const DEFAULT_LOGGER$1 = new ConsoleLogger();
9
- var FunctionBuilder = class extends BaseFunctionBuilder {
10
- _memorySize;
11
- constructor(type = ConstructType.Function) {
12
- super(type);
13
- this.type = type;
14
- }
15
- timeout(timeout) {
16
- this._timeout = timeout;
17
- return this;
18
- }
19
- memorySize(memorySize) {
20
- this._memorySize = memorySize;
21
- return this;
22
- }
23
- output(schema) {
24
- this.outputSchema = schema;
25
- return this;
26
- }
27
- input(schema) {
28
- this.inputSchema = schema;
29
- return this;
30
- }
31
- services(services) {
32
- this._services = uniqBy([...this._services, ...services], (s) => s.serviceName);
33
- return this;
34
- }
35
- logger(logger) {
36
- this._logger = logger;
37
- return this;
38
- }
39
- publisher(publisher) {
40
- this._publisher = publisher;
41
- return this;
42
- }
43
- auditor(storage) {
44
- this._auditorStorage = storage;
45
- return this;
46
- }
47
- /**
48
- * Set the audit action types for this function.
49
- * This provides type-safety for the auditor in the handler context.
50
- */
51
- actions() {
52
- return this;
53
- }
54
- /**
55
- * Set the database service for this function.
56
- * The database will be available in the handler context as `db`.
57
- */
58
- database(service) {
59
- this._databaseService = service;
60
- return this;
61
- }
62
- handle(fn) {
63
- const func = new Function(fn, this._timeout, this.type, this.inputSchema, this.outputSchema, this._services, this._logger, this._publisher, this._events, this._memorySize, this._auditorStorage, this._databaseService);
64
- this._services = [];
65
- this._logger = DEFAULT_LOGGER$1;
66
- this._events = [];
67
- this._publisher = void 0;
68
- this._auditorStorage = void 0;
69
- this._databaseService = void 0;
70
- this.inputSchema = void 0;
71
- this.outputSchema = void 0;
72
- this._timeout = void 0;
73
- this._memorySize = void 0;
74
- return func;
75
- }
76
- };
77
-
78
- //#endregion
79
- export { FunctionBuilder };
80
- //# sourceMappingURL=FunctionBuilder-CBeqX18X.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FunctionBuilder-CBeqX18X.mjs","names":["DEFAULT_LOGGER","timeout: number","memorySize: number","schema: T","services: T","logger: T","publisher: Service<TName, T>","storage: Service<TName, T>","service: Service<TName, T>","fn: FunctionHandler<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTDatabase,\n\t\t\tTAuditStorage,\n\t\t\tTAuditAction\n\t\t>"],"sources":["../src/functions/FunctionBuilder.ts"],"sourcesContent":["import type { AuditableAction, AuditStorage } from '@geekmidas/audit';\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport { ConsoleLogger } from '@geekmidas/logger/console';\nimport type { ComposableStandardSchema } from '@geekmidas/schema';\nimport type { Service } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport uniqBy from 'lodash.uniqby';\nimport { ConstructType } from '../Construct';\nimport { BaseFunctionBuilder } from './BaseFunctionBuilder';\nimport { Function, type FunctionHandler } from './Function';\n\nconst DEFAULT_LOGGER = new ConsoleLogger() as any;\n\nexport class FunctionBuilder<\n\tTInput extends ComposableStandardSchema,\n\tOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTAuditStorageServiceName extends string = string,\n\tTDatabase = undefined,\n\tTDatabaseServiceName extends string = string,\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n> extends BaseFunctionBuilder<\n\tTInput,\n\tOutSchema,\n\tTServices,\n\tTLogger,\n\tTEventPublisher,\n\tTEventPublisherServiceName,\n\tTAuditStorage,\n\tTAuditStorageServiceName,\n\tTDatabase,\n\tTDatabaseServiceName\n> {\n\tprotected _memorySize?: number;\n\n\tconstructor(public override type = ConstructType.Function) {\n\t\tsuper(type);\n\t}\n\n\toverride timeout(timeout: number): this {\n\t\tthis._timeout = timeout;\n\t\treturn this;\n\t}\n\n\tmemorySize(memorySize: number): this {\n\t\tthis._memorySize = memorySize;\n\t\treturn this;\n\t}\n\n\toutput<T extends StandardSchemaV1>(\n\t\tschema: T,\n\t): FunctionBuilder<\n\t\tTInput,\n\t\tT,\n\t\tTServices,\n\t\tTLogger,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTAuditAction\n\t> {\n\t\tthis.outputSchema = schema as unknown as OutSchema;\n\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tTInput,\n\t\t\tT,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction\n\t\t>;\n\t}\n\n\tinput<T extends ComposableStandardSchema>(\n\t\tschema: T,\n\t): FunctionBuilder<\n\t\tT,\n\t\tOutSchema,\n\t\tTServices,\n\t\tTLogger,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTAuditAction\n\t> {\n\t\tthis.inputSchema = schema as unknown as TInput;\n\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tT,\n\t\t\tOutSchema,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction\n\t\t>;\n\t}\n\n\tservices<T extends Service[]>(\n\t\tservices: T,\n\t): FunctionBuilder<\n\t\tTInput,\n\t\tOutSchema,\n\t\t[...TServices, ...T],\n\t\tTLogger,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTAuditAction\n\t> {\n\t\tthis._services = uniqBy(\n\t\t\t[...this._services, ...services],\n\t\t\t(s) => s.serviceName,\n\t\t) as TServices;\n\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tTInput,\n\t\t\tOutSchema,\n\t\t\t[...TServices, ...T],\n\t\t\tTLogger,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction\n\t\t>;\n\t}\n\n\tlogger<T extends Logger>(\n\t\tlogger: T,\n\t): FunctionBuilder<\n\t\tTInput,\n\t\tOutSchema,\n\t\tTServices,\n\t\tT,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTAuditAction\n\t> {\n\t\tthis._logger = logger as unknown as TLogger;\n\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tTInput,\n\t\t\tOutSchema,\n\t\t\tTServices,\n\t\t\tT,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction\n\t\t>;\n\t}\n\n\toverride publisher<T extends EventPublisher<any>, TName extends string>(\n\t\tpublisher: Service<TName, T>,\n\t): FunctionBuilder<\n\t\tTInput,\n\t\tOutSchema,\n\t\tTServices,\n\t\tTLogger,\n\t\tT,\n\t\tTName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTAuditAction\n\t> {\n\t\tthis._publisher = publisher as unknown as Service<\n\t\t\tTEventPublisherServiceName,\n\t\t\tTEventPublisher\n\t\t>;\n\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tTInput,\n\t\t\tOutSchema,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tT,\n\t\t\tTName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction\n\t\t>;\n\t}\n\n\toverride auditor<T extends AuditStorage, TName extends string>(\n\t\tstorage: Service<TName, T>,\n\t): FunctionBuilder<\n\t\tTInput,\n\t\tOutSchema,\n\t\tTServices,\n\t\tTLogger,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tT,\n\t\tTName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTAuditAction\n\t> {\n\t\tthis._auditorStorage = storage as unknown as Service<\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditStorage\n\t\t>;\n\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tTInput,\n\t\t\tOutSchema,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tT,\n\t\t\tTName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction\n\t\t>;\n\t}\n\n\t/**\n\t * Set the audit action types for this function.\n\t * This provides type-safety for the auditor in the handler context.\n\t */\n\tactions<T extends AuditableAction<string, unknown>>(): FunctionBuilder<\n\t\tTInput,\n\t\tOutSchema,\n\t\tTServices,\n\t\tTLogger,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tT\n\t> {\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tTInput,\n\t\t\tOutSchema,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tT\n\t\t>;\n\t}\n\n\t/**\n\t * Set the database service for this function.\n\t * The database will be available in the handler context as `db`.\n\t */\n\toverride database<T, TName extends string>(\n\t\tservice: Service<TName, T>,\n\t): FunctionBuilder<\n\t\tTInput,\n\t\tOutSchema,\n\t\tTServices,\n\t\tTLogger,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tT,\n\t\tTName,\n\t\tTAuditAction\n\t> {\n\t\tthis._databaseService = service as unknown as Service<\n\t\t\tTDatabaseServiceName,\n\t\t\tTDatabase\n\t\t>;\n\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tTInput,\n\t\t\tOutSchema,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tT,\n\t\t\tTName,\n\t\t\tTAuditAction\n\t\t>;\n\t}\n\n\thandle(\n\t\tfn: FunctionHandler<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTDatabase,\n\t\t\tTAuditStorage,\n\t\t\tTAuditAction\n\t\t>,\n\t): Function<\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTAuditAction,\n\t\tFunctionHandler<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTDatabase,\n\t\t\tTAuditStorage,\n\t\t\tTAuditAction\n\t\t>\n\t> {\n\t\tconst func = new Function(\n\t\t\tfn,\n\t\t\tthis._timeout,\n\t\t\tthis.type,\n\t\t\tthis.inputSchema,\n\t\t\tthis.outputSchema,\n\t\t\tthis._services,\n\t\t\tthis._logger,\n\t\t\tthis._publisher,\n\t\t\tthis._events,\n\t\t\tthis._memorySize,\n\t\t\tthis._auditorStorage,\n\t\t\tthis._databaseService,\n\t\t);\n\n\t\t// Reset builder state after creating the function to prevent pollution\n\t\tthis._services = [] as Service[] as TServices;\n\t\tthis._logger = DEFAULT_LOGGER;\n\t\tthis._events = [];\n\t\tthis._publisher = undefined;\n\t\tthis._auditorStorage = undefined;\n\t\tthis._databaseService = undefined;\n\t\tthis.inputSchema = undefined;\n\t\tthis.outputSchema = undefined;\n\t\tthis._timeout = undefined;\n\t\tthis._memorySize = undefined;\n\n\t\treturn func;\n\t}\n}\n"],"mappings":";;;;;;;AAYA,MAAMA,mBAAiB,IAAI;AAE3B,IAAa,kBAAb,cAeU,oBAWR;CACD,AAAU;CAEV,YAA4B,OAAO,cAAc,UAAU;AAC1D,QAAM,KAAK;EADgB;CAE3B;CAED,AAAS,QAAQC,SAAuB;AACvC,OAAK,WAAW;AAChB,SAAO;CACP;CAED,WAAWC,YAA0B;AACpC,OAAK,cAAc;AACnB,SAAO;CACP;CAED,OACCC,QAaC;AACD,OAAK,eAAe;AAEpB,SAAO;CAaP;CAED,MACCA,QAaC;AACD,OAAK,cAAc;AAEnB,SAAO;CAaP;CAED,SACCC,UAaC;AACD,OAAK,YAAY,OAChB,CAAC,GAAG,KAAK,WAAW,GAAG,QAAS,GAChC,CAAC,MAAM,EAAE,YACT;AAED,SAAO;CAaP;CAED,OACCC,QAaC;AACD,OAAK,UAAU;AAEf,SAAO;CAaP;CAED,AAAS,UACRC,WAaC;AACD,OAAK,aAAa;AAKlB,SAAO;CAaP;CAED,AAAS,QACRC,SAaC;AACD,OAAK,kBAAkB;AAKvB,SAAO;CAaP;;;;;CAMD,UAYE;AACD,SAAO;CAaP;;;;;CAMD,AAAS,SACRC,SAaC;AACD,OAAK,mBAAmB;AAKxB,SAAO;CAaP;CAED,OACCC,IA8BC;EACD,MAAM,OAAO,IAAI,SAChB,IACA,KAAK,UACL,KAAK,MACL,KAAK,aACL,KAAK,cACL,KAAK,WACL,KAAK,SACL,KAAK,YACL,KAAK,SACL,KAAK,aACL,KAAK,iBACL,KAAK;AAIN,OAAK,YAAY,CAAE;AACnB,OAAK,UAAUT;AACf,OAAK,UAAU,CAAE;AACjB,OAAK;AACL,OAAK;AACL,OAAK;AACL,OAAK;AACL,OAAK;AACL,OAAK;AACL,OAAK;AAEL,SAAO;CACP;AACD"}
@@ -1,40 +0,0 @@
1
- import { ConstructType } from "./Construct-BjpXFNxy.mjs";
2
- import { BaseFunctionBuilder } from "./BaseFunctionBuilder-Q5qIlF-F.mjs";
3
- import { Function, FunctionHandler } from "./Function-D74HrBnX.mjs";
4
- import { Service } from "@geekmidas/services";
5
- import { AuditStorage, AuditableAction } from "@geekmidas/audit";
6
- import { EventPublisher } from "@geekmidas/events";
7
- import { Logger } from "@geekmidas/logger";
8
- import { StandardSchemaV1 } from "@standard-schema/spec";
9
- import { ComposableStandardSchema } from "@geekmidas/schema";
10
-
11
- //#region src/functions/FunctionBuilder.d.ts
12
- declare class FunctionBuilder<TInput extends ComposableStandardSchema, OutSchema extends StandardSchemaV1 | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, TEventPublisher extends EventPublisher<any> | undefined = undefined, TEventPublisherServiceName extends string = string, TAuditStorage extends AuditStorage | undefined = undefined, TAuditStorageServiceName extends string = string, TDatabase = undefined, TDatabaseServiceName extends string = string, TAuditAction extends AuditableAction<string, unknown> = AuditableAction<string, unknown>> extends BaseFunctionBuilder<TInput, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName> {
13
- type: ConstructType;
14
- protected _memorySize?: number;
15
- constructor(type?: ConstructType);
16
- timeout(timeout: number): this;
17
- memorySize(memorySize: number): this;
18
- output<T extends StandardSchemaV1>(schema: T): FunctionBuilder<TInput, T, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction>;
19
- input<T extends ComposableStandardSchema>(schema: T): FunctionBuilder<T, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction>;
20
- services<T extends Service[]>(services: T): FunctionBuilder<TInput, OutSchema, [...TServices, ...T], TLogger, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction>;
21
- logger<T extends Logger>(logger: T): FunctionBuilder<TInput, OutSchema, TServices, T, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction>;
22
- publisher<T extends EventPublisher<any>, TName extends string>(publisher: Service<TName, T>): FunctionBuilder<TInput, OutSchema, TServices, TLogger, T, TName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction>;
23
- auditor<T extends AuditStorage, TName extends string>(storage: Service<TName, T>): FunctionBuilder<TInput, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, T, TName, TDatabase, TDatabaseServiceName, TAuditAction>;
24
- /**
25
- * Set the audit action types for this function.
26
- * This provides type-safety for the auditor in the handler context.
27
- */
28
- actions<T extends AuditableAction<string, unknown>>(): FunctionBuilder<TInput, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, T>;
29
- /**
30
- * Set the database service for this function.
31
- * The database will be available in the handler context as `db`.
32
- */
33
- database<T, TName extends string>(service: Service<TName, T>): FunctionBuilder<TInput, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, T, TName, TAuditAction>;
34
- handle(fn: FunctionHandler<TInput, TServices, TLogger, OutSchema, TDatabase, TAuditStorage, TAuditAction>): Function<TInput, TServices, TLogger, OutSchema, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction, FunctionHandler<TInput, TServices, TLogger, OutSchema, TDatabase, TAuditStorage, TAuditAction>>;
35
- }
36
- //# sourceMappingURL=FunctionBuilder.d.ts.map
37
-
38
- //#endregion
39
- export { FunctionBuilder };
40
- //# sourceMappingURL=FunctionBuilder-C_qPxC8g.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FunctionBuilder-C_qPxC8g.d.mts","names":[],"sources":["../src/functions/FunctionBuilder.ts"],"sourcesContent":[],"mappings":"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"}
@@ -1,86 +0,0 @@
1
- const require_chunk = require('./chunk-CUT6urMc.cjs');
2
- const require_Construct = require('./Construct-BXG8cFSm.cjs');
3
- const require_BaseFunctionBuilder = require('./BaseFunctionBuilder-DXf6HK-N.cjs');
4
- const require_Function = require('./Function-DgQ_no6B.cjs');
5
- const __geekmidas_logger_console = require_chunk.__toESM(require("@geekmidas/logger/console"));
6
- const lodash_uniqby = require_chunk.__toESM(require("lodash.uniqby"));
7
-
8
- //#region src/functions/FunctionBuilder.ts
9
- const DEFAULT_LOGGER = new __geekmidas_logger_console.ConsoleLogger();
10
- var FunctionBuilder = class extends require_BaseFunctionBuilder.BaseFunctionBuilder {
11
- _memorySize;
12
- constructor(type = require_Construct.ConstructType.Function) {
13
- super(type);
14
- this.type = type;
15
- }
16
- timeout(timeout) {
17
- this._timeout = timeout;
18
- return this;
19
- }
20
- memorySize(memorySize) {
21
- this._memorySize = memorySize;
22
- return this;
23
- }
24
- output(schema) {
25
- this.outputSchema = schema;
26
- return this;
27
- }
28
- input(schema) {
29
- this.inputSchema = schema;
30
- return this;
31
- }
32
- services(services) {
33
- this._services = (0, lodash_uniqby.default)([...this._services, ...services], (s) => s.serviceName);
34
- return this;
35
- }
36
- logger(logger) {
37
- this._logger = logger;
38
- return this;
39
- }
40
- publisher(publisher) {
41
- this._publisher = publisher;
42
- return this;
43
- }
44
- auditor(storage) {
45
- this._auditorStorage = storage;
46
- return this;
47
- }
48
- /**
49
- * Set the audit action types for this function.
50
- * This provides type-safety for the auditor in the handler context.
51
- */
52
- actions() {
53
- return this;
54
- }
55
- /**
56
- * Set the database service for this function.
57
- * The database will be available in the handler context as `db`.
58
- */
59
- database(service) {
60
- this._databaseService = service;
61
- return this;
62
- }
63
- handle(fn) {
64
- const func = new require_Function.Function(fn, this._timeout, this.type, this.inputSchema, this.outputSchema, this._services, this._logger, this._publisher, this._events, this._memorySize, this._auditorStorage, this._databaseService);
65
- this._services = [];
66
- this._logger = DEFAULT_LOGGER;
67
- this._events = [];
68
- this._publisher = void 0;
69
- this._auditorStorage = void 0;
70
- this._databaseService = void 0;
71
- this.inputSchema = void 0;
72
- this.outputSchema = void 0;
73
- this._timeout = void 0;
74
- this._memorySize = void 0;
75
- return func;
76
- }
77
- };
78
-
79
- //#endregion
80
- Object.defineProperty(exports, 'FunctionBuilder', {
81
- enumerable: true,
82
- get: function () {
83
- return FunctionBuilder;
84
- }
85
- });
86
- //# sourceMappingURL=FunctionBuilder-C_xG9As7.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FunctionBuilder-C_xG9As7.cjs","names":["ConsoleLogger","BaseFunctionBuilder","ConstructType","timeout: number","memorySize: number","schema: T","services: T","logger: T","publisher: Service<TName, T>","storage: Service<TName, T>","service: Service<TName, T>","fn: FunctionHandler<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTDatabase,\n\t\t\tTAuditStorage,\n\t\t\tTAuditAction\n\t\t>","Function"],"sources":["../src/functions/FunctionBuilder.ts"],"sourcesContent":["import type { AuditableAction, AuditStorage } from '@geekmidas/audit';\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport { ConsoleLogger } from '@geekmidas/logger/console';\nimport type { ComposableStandardSchema } from '@geekmidas/schema';\nimport type { Service } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport uniqBy from 'lodash.uniqby';\nimport { ConstructType } from '../Construct';\nimport { BaseFunctionBuilder } from './BaseFunctionBuilder';\nimport { Function, type FunctionHandler } from './Function';\n\nconst DEFAULT_LOGGER = new ConsoleLogger() as any;\n\nexport class FunctionBuilder<\n\tTInput extends ComposableStandardSchema,\n\tOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTAuditStorageServiceName extends string = string,\n\tTDatabase = undefined,\n\tTDatabaseServiceName extends string = string,\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n> extends BaseFunctionBuilder<\n\tTInput,\n\tOutSchema,\n\tTServices,\n\tTLogger,\n\tTEventPublisher,\n\tTEventPublisherServiceName,\n\tTAuditStorage,\n\tTAuditStorageServiceName,\n\tTDatabase,\n\tTDatabaseServiceName\n> {\n\tprotected _memorySize?: number;\n\n\tconstructor(public override type = ConstructType.Function) {\n\t\tsuper(type);\n\t}\n\n\toverride timeout(timeout: number): this {\n\t\tthis._timeout = timeout;\n\t\treturn this;\n\t}\n\n\tmemorySize(memorySize: number): this {\n\t\tthis._memorySize = memorySize;\n\t\treturn this;\n\t}\n\n\toutput<T extends StandardSchemaV1>(\n\t\tschema: T,\n\t): FunctionBuilder<\n\t\tTInput,\n\t\tT,\n\t\tTServices,\n\t\tTLogger,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTAuditAction\n\t> {\n\t\tthis.outputSchema = schema as unknown as OutSchema;\n\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tTInput,\n\t\t\tT,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction\n\t\t>;\n\t}\n\n\tinput<T extends ComposableStandardSchema>(\n\t\tschema: T,\n\t): FunctionBuilder<\n\t\tT,\n\t\tOutSchema,\n\t\tTServices,\n\t\tTLogger,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTAuditAction\n\t> {\n\t\tthis.inputSchema = schema as unknown as TInput;\n\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tT,\n\t\t\tOutSchema,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction\n\t\t>;\n\t}\n\n\tservices<T extends Service[]>(\n\t\tservices: T,\n\t): FunctionBuilder<\n\t\tTInput,\n\t\tOutSchema,\n\t\t[...TServices, ...T],\n\t\tTLogger,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTAuditAction\n\t> {\n\t\tthis._services = uniqBy(\n\t\t\t[...this._services, ...services],\n\t\t\t(s) => s.serviceName,\n\t\t) as TServices;\n\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tTInput,\n\t\t\tOutSchema,\n\t\t\t[...TServices, ...T],\n\t\t\tTLogger,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction\n\t\t>;\n\t}\n\n\tlogger<T extends Logger>(\n\t\tlogger: T,\n\t): FunctionBuilder<\n\t\tTInput,\n\t\tOutSchema,\n\t\tTServices,\n\t\tT,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTAuditAction\n\t> {\n\t\tthis._logger = logger as unknown as TLogger;\n\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tTInput,\n\t\t\tOutSchema,\n\t\t\tTServices,\n\t\t\tT,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction\n\t\t>;\n\t}\n\n\toverride publisher<T extends EventPublisher<any>, TName extends string>(\n\t\tpublisher: Service<TName, T>,\n\t): FunctionBuilder<\n\t\tTInput,\n\t\tOutSchema,\n\t\tTServices,\n\t\tTLogger,\n\t\tT,\n\t\tTName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTAuditAction\n\t> {\n\t\tthis._publisher = publisher as unknown as Service<\n\t\t\tTEventPublisherServiceName,\n\t\t\tTEventPublisher\n\t\t>;\n\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tTInput,\n\t\t\tOutSchema,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tT,\n\t\t\tTName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction\n\t\t>;\n\t}\n\n\toverride auditor<T extends AuditStorage, TName extends string>(\n\t\tstorage: Service<TName, T>,\n\t): FunctionBuilder<\n\t\tTInput,\n\t\tOutSchema,\n\t\tTServices,\n\t\tTLogger,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tT,\n\t\tTName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTAuditAction\n\t> {\n\t\tthis._auditorStorage = storage as unknown as Service<\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditStorage\n\t\t>;\n\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tTInput,\n\t\t\tOutSchema,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tT,\n\t\t\tTName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction\n\t\t>;\n\t}\n\n\t/**\n\t * Set the audit action types for this function.\n\t * This provides type-safety for the auditor in the handler context.\n\t */\n\tactions<T extends AuditableAction<string, unknown>>(): FunctionBuilder<\n\t\tTInput,\n\t\tOutSchema,\n\t\tTServices,\n\t\tTLogger,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tT\n\t> {\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tTInput,\n\t\t\tOutSchema,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tT\n\t\t>;\n\t}\n\n\t/**\n\t * Set the database service for this function.\n\t * The database will be available in the handler context as `db`.\n\t */\n\toverride database<T, TName extends string>(\n\t\tservice: Service<TName, T>,\n\t): FunctionBuilder<\n\t\tTInput,\n\t\tOutSchema,\n\t\tTServices,\n\t\tTLogger,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tT,\n\t\tTName,\n\t\tTAuditAction\n\t> {\n\t\tthis._databaseService = service as unknown as Service<\n\t\t\tTDatabaseServiceName,\n\t\t\tTDatabase\n\t\t>;\n\n\t\treturn this as unknown as FunctionBuilder<\n\t\t\tTInput,\n\t\t\tOutSchema,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tT,\n\t\t\tTName,\n\t\t\tTAuditAction\n\t\t>;\n\t}\n\n\thandle(\n\t\tfn: FunctionHandler<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTDatabase,\n\t\t\tTAuditStorage,\n\t\t\tTAuditAction\n\t\t>,\n\t): Function<\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTAuditAction,\n\t\tFunctionHandler<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTDatabase,\n\t\t\tTAuditStorage,\n\t\t\tTAuditAction\n\t\t>\n\t> {\n\t\tconst func = new Function(\n\t\t\tfn,\n\t\t\tthis._timeout,\n\t\t\tthis.type,\n\t\t\tthis.inputSchema,\n\t\t\tthis.outputSchema,\n\t\t\tthis._services,\n\t\t\tthis._logger,\n\t\t\tthis._publisher,\n\t\t\tthis._events,\n\t\t\tthis._memorySize,\n\t\t\tthis._auditorStorage,\n\t\t\tthis._databaseService,\n\t\t);\n\n\t\t// Reset builder state after creating the function to prevent pollution\n\t\tthis._services = [] as Service[] as TServices;\n\t\tthis._logger = DEFAULT_LOGGER;\n\t\tthis._events = [];\n\t\tthis._publisher = undefined;\n\t\tthis._auditorStorage = undefined;\n\t\tthis._databaseService = undefined;\n\t\tthis.inputSchema = undefined;\n\t\tthis.outputSchema = undefined;\n\t\tthis._timeout = undefined;\n\t\tthis._memorySize = undefined;\n\n\t\treturn func;\n\t}\n}\n"],"mappings":";;;;;;;;AAYA,MAAM,iBAAiB,IAAIA;AAE3B,IAAa,kBAAb,cAeUC,gDAWR;CACD,AAAU;CAEV,YAA4B,OAAOC,gCAAc,UAAU;AAC1D,QAAM,KAAK;EADgB;CAE3B;CAED,AAAS,QAAQC,SAAuB;AACvC,OAAK,WAAW;AAChB,SAAO;CACP;CAED,WAAWC,YAA0B;AACpC,OAAK,cAAc;AACnB,SAAO;CACP;CAED,OACCC,QAaC;AACD,OAAK,eAAe;AAEpB,SAAO;CAaP;CAED,MACCA,QAaC;AACD,OAAK,cAAc;AAEnB,SAAO;CAaP;CAED,SACCC,UAaC;AACD,OAAK,YAAY,2BAChB,CAAC,GAAG,KAAK,WAAW,GAAG,QAAS,GAChC,CAAC,MAAM,EAAE,YACT;AAED,SAAO;CAaP;CAED,OACCC,QAaC;AACD,OAAK,UAAU;AAEf,SAAO;CAaP;CAED,AAAS,UACRC,WAaC;AACD,OAAK,aAAa;AAKlB,SAAO;CAaP;CAED,AAAS,QACRC,SAaC;AACD,OAAK,kBAAkB;AAKvB,SAAO;CAaP;;;;;CAMD,UAYE;AACD,SAAO;CAaP;;;;;CAMD,AAAS,SACRC,SAaC;AACD,OAAK,mBAAmB;AAKxB,SAAO;CAaP;CAED,OACCC,IA8BC;EACD,MAAM,OAAO,IAAIC,0BAChB,IACA,KAAK,UACL,KAAK,MACL,KAAK,aACL,KAAK,cACL,KAAK,WACL,KAAK,SACL,KAAK,YACL,KAAK,SACL,KAAK,aACL,KAAK,iBACL,KAAK;AAIN,OAAK,YAAY,CAAE;AACnB,OAAK,UAAU;AACf,OAAK,UAAU,CAAE;AACjB,OAAK;AACL,OAAK;AACL,OAAK;AACL,OAAK;AACL,OAAK;AACL,OAAK;AACL,OAAK;AAEL,SAAO;CACP;AACD"}
@@ -1,40 +0,0 @@
1
- import { ConstructType } from "./Construct-CX7HyFfT.cjs";
2
- import { BaseFunctionBuilder } from "./BaseFunctionBuilder-C-4hYTfj.cjs";
3
- import { Function, FunctionHandler } from "./Function-CwlB89lS.cjs";
4
- import { AuditStorage, AuditableAction } from "@geekmidas/audit";
5
- import { EventPublisher } from "@geekmidas/events";
6
- import { Logger } from "@geekmidas/logger";
7
- import { Service } from "@geekmidas/services";
8
- import { StandardSchemaV1 } from "@standard-schema/spec";
9
- import { ComposableStandardSchema } from "@geekmidas/schema";
10
-
11
- //#region src/functions/FunctionBuilder.d.ts
12
- declare class FunctionBuilder<TInput extends ComposableStandardSchema, OutSchema extends StandardSchemaV1 | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, TEventPublisher extends EventPublisher<any> | undefined = undefined, TEventPublisherServiceName extends string = string, TAuditStorage extends AuditStorage | undefined = undefined, TAuditStorageServiceName extends string = string, TDatabase = undefined, TDatabaseServiceName extends string = string, TAuditAction extends AuditableAction<string, unknown> = AuditableAction<string, unknown>> extends BaseFunctionBuilder<TInput, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName> {
13
- type: ConstructType;
14
- protected _memorySize?: number;
15
- constructor(type?: ConstructType);
16
- timeout(timeout: number): this;
17
- memorySize(memorySize: number): this;
18
- output<T extends StandardSchemaV1>(schema: T): FunctionBuilder<TInput, T, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction>;
19
- input<T extends ComposableStandardSchema>(schema: T): FunctionBuilder<T, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction>;
20
- services<T extends Service[]>(services: T): FunctionBuilder<TInput, OutSchema, [...TServices, ...T], TLogger, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction>;
21
- logger<T extends Logger>(logger: T): FunctionBuilder<TInput, OutSchema, TServices, T, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction>;
22
- publisher<T extends EventPublisher<any>, TName extends string>(publisher: Service<TName, T>): FunctionBuilder<TInput, OutSchema, TServices, TLogger, T, TName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction>;
23
- auditor<T extends AuditStorage, TName extends string>(storage: Service<TName, T>): FunctionBuilder<TInput, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, T, TName, TDatabase, TDatabaseServiceName, TAuditAction>;
24
- /**
25
- * Set the audit action types for this function.
26
- * This provides type-safety for the auditor in the handler context.
27
- */
28
- actions<T extends AuditableAction<string, unknown>>(): FunctionBuilder<TInput, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, T>;
29
- /**
30
- * Set the database service for this function.
31
- * The database will be available in the handler context as `db`.
32
- */
33
- database<T, TName extends string>(service: Service<TName, T>): FunctionBuilder<TInput, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, T, TName, TAuditAction>;
34
- handle(fn: FunctionHandler<TInput, TServices, TLogger, OutSchema, TDatabase, TAuditStorage, TAuditAction>): Function<TInput, TServices, TLogger, OutSchema, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction, FunctionHandler<TInput, TServices, TLogger, OutSchema, TDatabase, TAuditStorage, TAuditAction>>;
35
- }
36
- //# sourceMappingURL=FunctionBuilder.d.ts.map
37
-
38
- //#endregion
39
- export { FunctionBuilder };
40
- //# sourceMappingURL=FunctionBuilder-D_7f5MfS.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FunctionBuilder-D_7f5MfS.d.cts","names":[],"sources":["../src/functions/FunctionBuilder.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;cAca,+BACG,4CACG,4DACA,gCACF,SAAS,gCACD,uHAEF,kLAID,mCAAmC,0CAI/C,oBACT,QACA,WACA,WACA,SACA,iBACA,4BACA,eACA,0BACA,WACA;QAIgC;EA7BpB,UAAA,WAAe,CAAA,EAAA,MAAA;EAAA,WAAA,CAAA,IAAA,CAAA,EA6BK,aA7BL;EAAA,OACZ,CAAA,OAAA,EAAA,MAAA,CAAA,EAAA,IAAA;EAAwB,UACrB,CAAA,UAAA,EAAA,MAAA,CAAA,EAAA,IAAA;EAAgB,MAChB,CAAA,UAwCD,gBAxCC,CAAA,CAAA,MAAA,EAyCT,CAzCS,CAAA,EA0Cf,eA1Ce,CA2CjB,MA3CiB,EA4CjB,CA5CiB,EA6CjB,SA7CiB,EA8CjB,OA9CiB,EA+CjB,eA/CiB,EAgDjB,0BAhDiB,EAiDjB,aAjDiB,EAkDjB,wBAlDiB,EAmDjB,SAnDiB,EAoDjB,oBApDiB,EAqDjB,YArDiB,CAAA;EAAO,KACT,CAAA,UAuEA,wBAvEA,CAAA,CAAA,MAAA,EAwEP,CAxEO,CAAA,EAyEb,eAzEa,CA0Ef,CA1Ee,EA2Ef,SA3Ee,EA4Ef,SA5Ee,EA6Ef,OA7Ee,EA8Ef,eA9Ee,EA+Ef,0BA/Ee,EAgFf,aAhFe,EAiFf,wBAjFe,EAkFf,SAlFe,EAmFf,oBAnFe,EAoFf,YApFe,CAAA;EAAM,QAAG,CAAA,UAuGN,OAvGM,EAAA,CAAA,CAAA,QAAA,EAwGd,CAxGc,CAAA,EAyGtB,eAzGsB,CA0GxB,MA1GwB,EA2GxB,SA3GwB,EAAA,CACD,GA2GnB,SA3GmB,EAEF,GAyGH,CAzGG,CAAY,EA0GjC,OAtGoB,EAuGpB,eAvGoB,EAwGpB,0BAxGoB,EAyGpB,aAzGoB,EA0GpB,wBA1GoB,EA2GpB,SA3GoB,EA4GpB,oBA5GoB,EA6GpB,YA7GoB,CAAA;EAAe,MAAoB,CAAA,UAmIvC,MAnIuC,CAAA,CAAA,MAAA,EAoI/C,CApI+C,CAAA,EAqIrD,eArIqD,CAsIvD,MAtIuD,EAuIvD,SAvIuD,EAwIvD,SAxIuD,EAyIvD,CAzIuD,EA0IvD,eA1IuD,EA2IvD,0BA3IuD,EA4IvD,aA5IuD,EA6IvD,wBA7IuD,EA8IvD,SA9IuD,EA+IvD,oBA/IuD,EAgJvD,YAhJuD,CAAA;EAAe,SAKvE,CAAA,UA8J6B,cA9J7B,CAAA,GAAA,CAAA,EAAA,cAAA,MAAA,CAAA,CAAA,SAAA,EA+JY,OA/JZ,CA+JoB,KA/JpB,EA+J2B,CA/J3B,CAAA,CAAA,EAgKG,eAhKH,CAiKC,MAjKD,EAkKC,SAlKD,EAmKC,SAnKD,EAoKC,OApKD,EAqKC,CArKD,EAsKC,KAtKD,EAuKC,aAvKD,EAwKC,wBAxKD,EAyKC,SAzKD,EA0KC,oBA1KD,EA2KC,YA3KD,CAAA;EAAM,OACN,CAAA,UAgM2B,YAhM3B,EAAA,cAAA,MAAA,CAAA,CAAA,OAAA,EAiMU,OAjMV,CAiMkB,KAjMlB,EAiMyB,CAjMzB,CAAA,CAAA,EAkMG,eAlMH,CAmMC,MAnMD,EAoMC,SApMD,EAqMC,SArMD,EAsMC,OAtMD,EAuMC,eAvMD,EAwMC,0BAxMD,EAyMC,CAzMD,EA0MC,KA1MD,EA2MC,SA3MD,EA4MC,oBA5MD,EA6MC,YA7MD,CAAA;EAAS;;;;EAIiB,OAC1B,CAAA,UAkOkB,eAlOlB,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA,CAAA,CAAA,EAkOuD,eAlOvD,CAmOC,MAnOD,EAoOC,SApOD,EAqOC,SArOD,EAsOC,OAtOD,EAuOC,eAvOD,EAwOC,0BAxOD,EAyOC,aAzOD,EA0OC,wBA1OD,EA2OC,SA3OD,EA4OC,oBA5OD,EA6OC,CA7OD,CAAA;EAAa;;;;EAOmB,QAAA,CAAA,CAAA,EAAA,cAAA,MAAA,CAAA,CAAA,OAAA,EA4PtB,OA5PsB,CA4Pd,KA5Pc,EA4PP,CA5PO,CAAA,CAAA,EA6P7B,eA7P6B,CA8P/B,MA9P+B,EA+P/B,SA/P+B,EAgQ/B,SAhQ+B,EAiQ/B,OAjQ+B,EAkQ/B,eAlQ+B,EAmQ/B,0BAnQ+B,EAoQ/B,aApQ+B,EAqQ/B,wBArQ+B,EAsQ/B,CAtQ+B,EAuQ/B,KAvQ+B,EAwQ/B,YAxQ+B,CAAA;EAAyB,MAcxC,CAAA,EAAA,EAiRZ,eAjRY,CAkRf,MAlRe,EAmRf,SAnRe,EAoRf,OApRe,EAqRf,SArRe,EAsRf,SAtRe,EAuRf,aAvRe,EAwRf,YAxRe,CAAA,CAAA,EA0Rd,QA1Rc,CA2RhB,MA3RgB,EA4RhB,SA5RgB,EA6RhB,OA7RgB,EA8RhB,SA9RgB,EA+RhB,eA/RgB,EAgShB,0BAhSgB,EAiShB,aAjSgB,EAkShB,wBAlSgB,EAmShB,SAnSgB,EAoShB,oBApSgB,EAqShB,YArSgB,EAsShB,eAtSgB,CAuSf,MAvSe,EAwSf,SAxSe,EAySf,OAzSe,EA0Sf,SA1Se,EA2Sf,SA3Se,EA4Sf,aA5Se,EA6Sf,YA7Se,CAAA,CAAA"}