@geekmidas/constructs 10.0.0-alpha.5 → 10.0.0-alpha.51

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 (392) hide show
  1. package/README.md +223 -158
  2. package/dist/{Construct-BD5neF7w.mjs → Construct-BO1X-kt9.mjs} +32 -33
  3. package/dist/Construct-BO1X-kt9.mjs.map +1 -0
  4. package/dist/Construct-BQALFCh2.d.cts +230 -0
  5. package/dist/Construct-BQALFCh2.d.cts.map +1 -0
  6. package/dist/{Construct-CyS3RpTL.cjs → Construct-DmvXceVY.cjs} +52 -47
  7. package/dist/Construct-DmvXceVY.cjs.map +1 -0
  8. package/dist/Construct-QXnl3VqT.d.mts +230 -0
  9. package/dist/Construct-QXnl3VqT.d.mts.map +1 -0
  10. package/dist/{Cron-B2OFsfDM.d.cts → Cron-DI3nKoic.d.cts} +22 -8
  11. package/dist/Cron-DI3nKoic.d.cts.map +1 -0
  12. package/dist/{Cron-CqEbBbwH.d.mts → Cron-uYAHPnp7.d.mts} +22 -8
  13. package/dist/Cron-uYAHPnp7.d.mts.map +1 -0
  14. package/dist/CronBuilder-BoHzlWU_.cjs +121 -0
  15. package/dist/CronBuilder-BoHzlWU_.cjs.map +1 -0
  16. package/dist/CronBuilder-CCgt0wCE.mjs +109 -0
  17. package/dist/CronBuilder-CCgt0wCE.mjs.map +1 -0
  18. package/dist/CronBuilder-DaSUm2Na.d.mts +47 -0
  19. package/dist/CronBuilder-DaSUm2Na.d.mts.map +1 -0
  20. package/dist/CronBuilder-g1lZLWyG.d.cts +47 -0
  21. package/dist/CronBuilder-g1lZLWyG.d.cts.map +1 -0
  22. package/dist/{Endpoint-Dem2XyCu.d.mts → Endpoint-Bm9HjTPc.d.cts} +70 -93
  23. package/dist/Endpoint-Bm9HjTPc.d.cts.map +1 -0
  24. package/dist/{Endpoint-Dij_wOcc.mjs → Endpoint-CQ9RJ7p2.mjs} +130 -109
  25. package/dist/Endpoint-CQ9RJ7p2.mjs.map +1 -0
  26. package/dist/{Endpoint-DrD8a1yH.d.cts → Endpoint-CwM8Rzfs.d.mts} +71 -94
  27. package/dist/Endpoint-CwM8Rzfs.d.mts.map +1 -0
  28. package/dist/{Endpoint-DODn1RhN.cjs → Endpoint-DOi8c_Gy.cjs} +158 -131
  29. package/dist/Endpoint-DOi8c_Gy.cjs.map +1 -0
  30. package/dist/{index-B8g8POkr.d.cts → EndpointFactory-0plFjvb7.d.mts} +64 -134
  31. package/dist/EndpointFactory-0plFjvb7.d.mts.map +1 -0
  32. package/dist/{index-DbKmfl-q.d.mts → EndpointFactory-B6eZ3RDd.d.cts} +64 -134
  33. package/dist/EndpointFactory-B6eZ3RDd.d.cts.map +1 -0
  34. package/dist/{EndpointFactory-BHFMmFkV.cjs → EndpointFactory-Bo9lkMqB.cjs} +75 -110
  35. package/dist/EndpointFactory-Bo9lkMqB.cjs.map +1 -0
  36. package/dist/{EndpointFactory-b4ituq-s.mjs → EndpointFactory-DR1rebok.mjs} +39 -74
  37. package/dist/EndpointFactory-DR1rebok.mjs.map +1 -0
  38. package/dist/Function-DuqGcbOI.d.mts +76 -0
  39. package/dist/Function-DuqGcbOI.d.mts.map +1 -0
  40. package/dist/Function-Pu-1kKZz.d.cts +76 -0
  41. package/dist/Function-Pu-1kKZz.d.cts.map +1 -0
  42. package/dist/{HonoEndpointAdaptor-BM2jbWht.mjs → HonoEndpointAdaptor-BIS0O3M9.mjs} +41 -47
  43. package/dist/HonoEndpointAdaptor-BIS0O3M9.mjs.map +1 -0
  44. package/dist/{HonoEndpointAdaptor-De6IlBZe.cjs → HonoEndpointAdaptor-CMi0MJsF.cjs} +50 -53
  45. package/dist/HonoEndpointAdaptor-CMi0MJsF.cjs.map +1 -0
  46. package/dist/Queue-D5jcw0mu.cjs +109 -0
  47. package/dist/Queue-D5jcw0mu.cjs.map +1 -0
  48. package/dist/{Queue-D7ZuwBhy.d.cts → Queue-DlsHRzUp.d.mts} +48 -48
  49. package/dist/Queue-DlsHRzUp.d.mts.map +1 -0
  50. package/dist/{Queue-gVGfi2Yk.d.mts → Queue-HPyi0e1i.d.cts} +49 -49
  51. package/dist/Queue-HPyi0e1i.d.cts.map +1 -0
  52. package/dist/Queue-hwPN-t31.mjs +104 -0
  53. package/dist/Queue-hwPN-t31.mjs.map +1 -0
  54. package/dist/QueueBuilder-BFQn3OzZ.cjs +135 -0
  55. package/dist/QueueBuilder-BFQn3OzZ.cjs.map +1 -0
  56. package/dist/QueueBuilder-DCuYdjMw.mjs +118 -0
  57. package/dist/QueueBuilder-DCuYdjMw.mjs.map +1 -0
  58. package/dist/QueueBuilder-OSi6LkV9.d.cts +75 -0
  59. package/dist/QueueBuilder-OSi6LkV9.d.cts.map +1 -0
  60. package/dist/QueueBuilder-QHsnVt1P.d.mts +75 -0
  61. package/dist/QueueBuilder-QHsnVt1P.d.mts.map +1 -0
  62. package/dist/{Subscriber-2mEi0ImH.d.cts → Subscriber-Bpp02cGr.d.cts} +29 -20
  63. package/dist/Subscriber-Bpp02cGr.d.cts.map +1 -0
  64. package/dist/{Subscriber-xTJ9ayPN.d.mts → Subscriber-CtN9R48-.d.mts} +29 -20
  65. package/dist/Subscriber-CtN9R48-.d.mts.map +1 -0
  66. package/dist/{SubscriberBuilder-4OPehf2R.cjs → SubscriberBuilder-C2PwqwIl.cjs} +61 -36
  67. package/dist/SubscriberBuilder-C2PwqwIl.cjs.map +1 -0
  68. package/dist/SubscriberBuilder-CuCMFpYW.d.mts +67 -0
  69. package/dist/SubscriberBuilder-CuCMFpYW.d.mts.map +1 -0
  70. package/dist/{SubscriberBuilder-BjkbeT9l.mjs → SubscriberBuilder-DMFk_Ap1.mjs} +50 -24
  71. package/dist/SubscriberBuilder-DMFk_Ap1.mjs.map +1 -0
  72. package/dist/SubscriberBuilder-g3fAVWgs.d.cts +67 -0
  73. package/dist/SubscriberBuilder-g3fAVWgs.d.cts.map +1 -0
  74. package/dist/Topic-CkxOTrMv.cjs +104 -0
  75. package/dist/Topic-CkxOTrMv.cjs.map +1 -0
  76. package/dist/Topic-hPffOsot.mjs +99 -0
  77. package/dist/Topic-hPffOsot.mjs.map +1 -0
  78. package/dist/adaptors/aws.cjs +189 -110
  79. package/dist/adaptors/aws.cjs.map +1 -1
  80. package/dist/adaptors/aws.d.cts +81 -45
  81. package/dist/adaptors/aws.d.cts.map +1 -1
  82. package/dist/adaptors/aws.d.mts +82 -46
  83. package/dist/adaptors/aws.d.mts.map +1 -1
  84. package/dist/adaptors/aws.mjs +161 -85
  85. package/dist/adaptors/aws.mjs.map +1 -1
  86. package/dist/adaptors/hono.cjs +3 -10
  87. package/dist/adaptors/hono.d.cts +7 -16
  88. package/dist/adaptors/hono.d.cts.map +1 -1
  89. package/dist/adaptors/hono.d.mts +8 -17
  90. package/dist/adaptors/hono.d.mts.map +1 -1
  91. package/dist/adaptors/hono.mjs +2 -10
  92. package/dist/adaptors/testing.cjs +704 -90
  93. package/dist/adaptors/testing.cjs.map +1 -1
  94. package/dist/adaptors/testing.d.cts +325 -54
  95. package/dist/adaptors/testing.d.cts.map +1 -1
  96. package/dist/adaptors/testing.d.mts +325 -54
  97. package/dist/adaptors/testing.d.mts.map +1 -1
  98. package/dist/adaptors/testing.mjs +669 -71
  99. package/dist/adaptors/testing.mjs.map +1 -1
  100. package/dist/auth-CIFXNuDk.d.cts +194 -0
  101. package/dist/auth-CIFXNuDk.d.cts.map +1 -0
  102. package/dist/auth-CJ9Ff6Lu.d.mts +194 -0
  103. package/dist/auth-CJ9Ff6Lu.d.mts.map +1 -0
  104. package/dist/auth.cjs +172 -31
  105. package/dist/auth.cjs.map +1 -1
  106. package/dist/auth.d.cts +2 -108
  107. package/dist/auth.d.mts +2 -108
  108. package/dist/auth.mjs +161 -24
  109. package/dist/auth.mjs.map +1 -1
  110. package/dist/{cache-BrRz3fEB.d.mts → cache-CXh6GIgb.d.mts} +3 -6
  111. package/dist/cache-CXh6GIgb.d.mts.map +1 -0
  112. package/dist/{cache-BtZY_tHe.d.cts → cache-DnGDGly3.d.cts} +3 -6
  113. package/dist/cache-DnGDGly3.d.cts.map +1 -0
  114. package/dist/cache.cjs +68 -2
  115. package/dist/cache.cjs.map +1 -0
  116. package/dist/cache.d.cts +1 -2
  117. package/dist/cache.d.mts +1 -2
  118. package/dist/cache.mjs +67 -2
  119. package/dist/cache.mjs.map +1 -0
  120. package/dist/cipher-C1lEFX63.mjs +225 -0
  121. package/dist/cipher-C1lEFX63.mjs.map +1 -0
  122. package/dist/cipher-CVxfwLjk.cjs +332 -0
  123. package/dist/cipher-CVxfwLjk.cjs.map +1 -0
  124. package/dist/{clone-DblgEZZa.mjs → clone-EKNovYHu.mjs} +3 -3
  125. package/dist/clone-EKNovYHu.mjs.map +1 -0
  126. package/dist/{clone-Dy0cR2SZ.cjs → clone-UGJpvQnL.cjs} +7 -8
  127. package/dist/clone-UGJpvQnL.cjs.map +1 -0
  128. package/dist/{construct-interface-D9d4Gm4p.d.cts → construct-interface-B1AfqRl4.d.cts} +42 -11
  129. package/dist/construct-interface-B1AfqRl4.d.cts.map +1 -0
  130. package/dist/{construct-interface-g5GM5pwR.d.mts → construct-interface-DluK3_da.d.mts} +42 -11
  131. package/dist/construct-interface-DluK3_da.d.mts.map +1 -0
  132. package/dist/construct-interface.cjs +113 -7
  133. package/dist/construct-interface.cjs.map +1 -0
  134. package/dist/construct-interface.d.cts +2 -2
  135. package/dist/construct-interface.d.mts +2 -2
  136. package/dist/construct-interface.mjs +106 -2
  137. package/dist/construct-interface.mjs.map +1 -0
  138. package/dist/credential.cjs +63 -16
  139. package/dist/credential.cjs.map +1 -1
  140. package/dist/credential.d.cts +16 -9
  141. package/dist/credential.d.cts.map +1 -1
  142. package/dist/credential.d.mts +16 -9
  143. package/dist/credential.d.mts.map +1 -1
  144. package/dist/credential.mjs +58 -12
  145. package/dist/credential.mjs.map +1 -1
  146. package/dist/crons/index.cjs +68 -10
  147. package/dist/crons/index.cjs.map +1 -1
  148. package/dist/crons/index.d.cts +32 -14
  149. package/dist/crons/index.d.cts.map +1 -1
  150. package/dist/crons/index.d.mts +32 -14
  151. package/dist/crons/index.d.mts.map +1 -1
  152. package/dist/crons/index.mjs +66 -10
  153. package/dist/crons/index.mjs.map +1 -1
  154. package/dist/database/kysely.cjs +40 -15
  155. package/dist/database/kysely.cjs.map +1 -1
  156. package/dist/database/kysely.d.cts +2 -152
  157. package/dist/database/kysely.d.mts +2 -152
  158. package/dist/database/kysely.mjs +28 -5
  159. package/dist/database/kysely.mjs.map +1 -1
  160. package/dist/email.cjs +25 -12
  161. package/dist/email.cjs.map +1 -1
  162. package/dist/email.d.cts +3 -7
  163. package/dist/email.d.cts.map +1 -1
  164. package/dist/email.d.mts +3 -7
  165. package/dist/email.d.mts.map +1 -1
  166. package/dist/email.mjs +16 -3
  167. package/dist/email.mjs.map +1 -1
  168. package/dist/encryption.cjs +96 -0
  169. package/dist/encryption.cjs.map +1 -0
  170. package/dist/encryption.d.cts +117 -0
  171. package/dist/encryption.d.cts.map +1 -0
  172. package/dist/encryption.d.mts +117 -0
  173. package/dist/encryption.d.mts.map +1 -0
  174. package/dist/encryption.mjs +83 -0
  175. package/dist/encryption.mjs.map +1 -0
  176. package/dist/endpoints/index.cjs +8 -10
  177. package/dist/endpoints/index.d.cts +51 -7
  178. package/dist/endpoints/index.d.cts.map +1 -0
  179. package/dist/endpoints/index.d.mts +51 -7
  180. package/dist/endpoints/index.d.mts.map +1 -0
  181. package/dist/endpoints/index.mjs +6 -10
  182. package/dist/external-api-CWY9orcO.d.mts +86 -0
  183. package/dist/external-api-CWY9orcO.d.mts.map +1 -0
  184. package/dist/external-api-D-5WB-sr.d.cts +86 -0
  185. package/dist/external-api-D-5WB-sr.d.cts.map +1 -0
  186. package/dist/external-api.cjs +124 -0
  187. package/dist/external-api.cjs.map +1 -0
  188. package/dist/external-api.d.cts +2 -0
  189. package/dist/external-api.d.mts +2 -0
  190. package/dist/external-api.mjs +121 -0
  191. package/dist/external-api.mjs.map +1 -0
  192. package/dist/file-server.cjs +42 -10
  193. package/dist/file-server.cjs.map +1 -1
  194. package/dist/file-server.d.cts +6 -10
  195. package/dist/file-server.d.cts.map +1 -1
  196. package/dist/file-server.d.mts +6 -10
  197. package/dist/file-server.d.mts.map +1 -1
  198. package/dist/file-server.mjs +34 -2
  199. package/dist/file-server.mjs.map +1 -1
  200. package/dist/functions/index.cjs +2 -6
  201. package/dist/functions/index.d.cts +3 -4
  202. package/dist/functions/index.d.mts +3 -4
  203. package/dist/functions/index.mjs +2 -6
  204. package/dist/{functions-DJJA7VGc.cjs → functions-CbP5ZKma.cjs} +421 -273
  205. package/dist/functions-CbP5ZKma.cjs.map +1 -0
  206. package/dist/{functions-Ck21Uyq0.mjs → functions-Di6n5ltG.mjs} +383 -241
  207. package/dist/functions-Di6n5ltG.mjs.map +1 -0
  208. package/dist/index-BuzRvKOQ.d.cts +115 -0
  209. package/dist/index-BuzRvKOQ.d.cts.map +1 -0
  210. package/dist/index-CTkKOer4.d.mts +115 -0
  211. package/dist/index-CTkKOer4.d.mts.map +1 -0
  212. package/dist/index-CeEtxDmK.d.cts +79 -0
  213. package/dist/index-CeEtxDmK.d.cts.map +1 -0
  214. package/dist/index-CeEtxDmK.d.mts +79 -0
  215. package/dist/index-CeEtxDmK.d.mts.map +1 -0
  216. package/dist/index.cjs +3 -3
  217. package/dist/index.d.cts +4 -4
  218. package/dist/index.d.mts +4 -4
  219. package/dist/index.mjs +2 -3
  220. package/dist/kms-B-Hm3d5r.cjs +85 -0
  221. package/dist/kms-B-Hm3d5r.cjs.map +1 -0
  222. package/dist/kms-BdUlMJEZ.mjs +85 -0
  223. package/dist/kms-BdUlMJEZ.mjs.map +1 -0
  224. package/dist/kysely-Bqov3fwv.d.mts +159 -0
  225. package/dist/kysely-Bqov3fwv.d.mts.map +1 -0
  226. package/dist/kysely-DTnkZsub.d.cts +159 -0
  227. package/dist/kysely-DTnkZsub.d.cts.map +1 -0
  228. package/dist/{lazyAccessors-BoJN3SMd.mjs → lazyAccessors-CFanua0O.mjs} +20 -60
  229. package/dist/lazyAccessors-CFanua0O.mjs.map +1 -0
  230. package/dist/{lazyAccessors-e3j2oE2m.cjs → lazyAccessors-hJKGv8Ay.cjs} +60 -113
  231. package/dist/lazyAccessors-hJKGv8Ay.cjs.map +1 -0
  232. package/dist/mobile-app.cjs +73 -0
  233. package/dist/mobile-app.cjs.map +1 -0
  234. package/dist/mobile-app.d.cts +61 -0
  235. package/dist/mobile-app.d.cts.map +1 -0
  236. package/dist/mobile-app.d.mts +61 -0
  237. package/dist/mobile-app.d.mts.map +1 -0
  238. package/dist/mobile-app.mjs +72 -0
  239. package/dist/mobile-app.mjs.map +1 -0
  240. package/dist/object-storage.cjs +18 -10
  241. package/dist/object-storage.cjs.map +1 -1
  242. package/dist/object-storage.d.cts +3 -7
  243. package/dist/object-storage.d.cts.map +1 -1
  244. package/dist/object-storage.d.mts +3 -7
  245. package/dist/object-storage.d.mts.map +1 -1
  246. package/dist/object-storage.mjs +11 -3
  247. package/dist/object-storage.mjs.map +1 -1
  248. package/dist/{processAudits-Dmts9H_b.mjs → processAudits-BpRlPQMW.mjs} +16 -19
  249. package/dist/processAudits-BpRlPQMW.mjs.map +1 -0
  250. package/dist/{processAudits-CGqttuXm.cjs → processAudits-D_2W5x8k.cjs} +26 -30
  251. package/dist/processAudits-D_2W5x8k.cjs.map +1 -0
  252. package/dist/queue/index.cjs +6 -189
  253. package/dist/queue/index.d.cts +3 -60
  254. package/dist/queue/index.d.mts +3 -60
  255. package/dist/queue/index.mjs +3 -186
  256. package/dist/rest-api.cjs +88 -63
  257. package/dist/rest-api.cjs.map +1 -1
  258. package/dist/rest-api.d.cts +68 -61
  259. package/dist/rest-api.d.cts.map +1 -1
  260. package/dist/rest-api.d.mts +68 -61
  261. package/dist/rest-api.d.mts.map +1 -1
  262. package/dist/rest-api.mjs +80 -55
  263. package/dist/rest-api.mjs.map +1 -1
  264. package/dist/{chunk-DWy1uDak.cjs → rolldown-runtime-y5ARvAq5.cjs} +14 -18
  265. package/dist/site.cjs +34 -9
  266. package/dist/site.cjs.map +1 -1
  267. package/dist/site.d.cts +17 -22
  268. package/dist/site.d.cts.map +1 -1
  269. package/dist/site.d.mts +17 -22
  270. package/dist/site.d.mts.map +1 -1
  271. package/dist/site.mjs +30 -5
  272. package/dist/site.mjs.map +1 -1
  273. package/dist/subscribers/index.cjs +2 -11
  274. package/dist/subscribers/index.d.cts +3 -14
  275. package/dist/subscribers/index.d.mts +3 -14
  276. package/dist/subscribers/index.mjs +2 -11
  277. package/dist/surfaceEnv-CNimK76p.cjs +56 -0
  278. package/dist/surfaceEnv-CNimK76p.cjs.map +1 -0
  279. package/dist/surfaceEnv-wMT5QzgZ.mjs +45 -0
  280. package/dist/surfaceEnv-wMT5QzgZ.mjs.map +1 -0
  281. package/dist/{telemetry-C3L0iS28.d.cts → telemetry-DGcFlVpB.d.cts} +2 -5
  282. package/dist/telemetry-DGcFlVpB.d.cts.map +1 -0
  283. package/dist/{telemetry-D7bVFLGi.d.mts → telemetry-DGcFlVpB.d.mts} +2 -5
  284. package/dist/telemetry-DGcFlVpB.d.mts.map +1 -0
  285. package/dist/topic/index.cjs +3 -137
  286. package/dist/topic/index.d.cts +2 -32
  287. package/dist/topic/index.d.mts +2 -32
  288. package/dist/topic/index.mjs +2 -134
  289. package/dist/{types-BlAkSuGI.d.cts → types-DMuSQeLL.d.cts} +3 -5
  290. package/dist/types-DMuSQeLL.d.cts.map +1 -0
  291. package/dist/{types-aKksMEWL.d.mts → types-DMuSQeLL.d.mts} +3 -5
  292. package/dist/types-DMuSQeLL.d.mts.map +1 -0
  293. package/dist/types.d.cts +1 -1
  294. package/dist/types.d.mts +1 -1
  295. package/dist/types.mjs +1 -0
  296. package/dist/worker.cjs +137 -38
  297. package/dist/worker.cjs.map +1 -1
  298. package/dist/worker.d.cts +113 -44
  299. package/dist/worker.d.cts.map +1 -1
  300. package/dist/worker.d.mts +113 -43
  301. package/dist/worker.d.mts.map +1 -1
  302. package/dist/worker.mjs +132 -33
  303. package/dist/worker.mjs.map +1 -1
  304. package/package.json +81 -41
  305. package/dist/Construct-BD5neF7w.mjs.map +0 -1
  306. package/dist/Construct-C0ijr2qp.d.cts +0 -117
  307. package/dist/Construct-C0ijr2qp.d.cts.map +0 -1
  308. package/dist/Construct-Ct8nalEi.d.mts +0 -117
  309. package/dist/Construct-Ct8nalEi.d.mts.map +0 -1
  310. package/dist/Construct-CyS3RpTL.cjs.map +0 -1
  311. package/dist/Cron-B2OFsfDM.d.cts.map +0 -1
  312. package/dist/Cron-CqEbBbwH.d.mts.map +0 -1
  313. package/dist/CronBuilder-Bg-9h2cc.d.mts +0 -44
  314. package/dist/CronBuilder-Bg-9h2cc.d.mts.map +0 -1
  315. package/dist/CronBuilder-CdibiHNB.mjs +0 -84
  316. package/dist/CronBuilder-CdibiHNB.mjs.map +0 -1
  317. package/dist/CronBuilder-DyUr6nYz.cjs +0 -96
  318. package/dist/CronBuilder-DyUr6nYz.cjs.map +0 -1
  319. package/dist/CronBuilder-LSJMfqnq.d.cts +0 -44
  320. package/dist/CronBuilder-LSJMfqnq.d.cts.map +0 -1
  321. package/dist/Endpoint-DODn1RhN.cjs.map +0 -1
  322. package/dist/Endpoint-Dem2XyCu.d.mts.map +0 -1
  323. package/dist/Endpoint-Dij_wOcc.mjs.map +0 -1
  324. package/dist/Endpoint-DrD8a1yH.d.cts.map +0 -1
  325. package/dist/EndpointFactory-BHFMmFkV.cjs.map +0 -1
  326. package/dist/EndpointFactory-b4ituq-s.mjs.map +0 -1
  327. package/dist/HonoEndpointAdaptor-BM2jbWht.mjs.map +0 -1
  328. package/dist/HonoEndpointAdaptor-De6IlBZe.cjs.map +0 -1
  329. package/dist/Queue-D7ZuwBhy.d.cts.map +0 -1
  330. package/dist/Queue-gVGfi2Yk.d.mts.map +0 -1
  331. package/dist/Subscriber-2mEi0ImH.d.cts.map +0 -1
  332. package/dist/Subscriber-xTJ9ayPN.d.mts.map +0 -1
  333. package/dist/SubscriberBuilder-4OPehf2R.cjs.map +0 -1
  334. package/dist/SubscriberBuilder-BjkbeT9l.mjs.map +0 -1
  335. package/dist/SubscriberBuilder-Dptmo-1A.d.mts +0 -62
  336. package/dist/SubscriberBuilder-Dptmo-1A.d.mts.map +0 -1
  337. package/dist/SubscriberBuilder-waNhzjSM.d.cts +0 -62
  338. package/dist/SubscriberBuilder-waNhzjSM.d.cts.map +0 -1
  339. package/dist/Topic-19QeHBIR.d.cts +0 -91
  340. package/dist/Topic-19QeHBIR.d.cts.map +0 -1
  341. package/dist/Topic-DuFeqkBh.d.mts +0 -91
  342. package/dist/Topic-DuFeqkBh.d.mts.map +0 -1
  343. package/dist/auth.d.cts.map +0 -1
  344. package/dist/auth.d.mts.map +0 -1
  345. package/dist/cache-0ANvRQnD.mjs +0 -51
  346. package/dist/cache-0ANvRQnD.mjs.map +0 -1
  347. package/dist/cache-3WSvAulx.cjs +0 -57
  348. package/dist/cache-3WSvAulx.cjs.map +0 -1
  349. package/dist/cache-BrRz3fEB.d.mts.map +0 -1
  350. package/dist/cache-BtZY_tHe.d.cts.map +0 -1
  351. package/dist/clone-DblgEZZa.mjs.map +0 -1
  352. package/dist/clone-Dy0cR2SZ.cjs.map +0 -1
  353. package/dist/construct-interface-BfjcOD_E.cjs +0 -117
  354. package/dist/construct-interface-BfjcOD_E.cjs.map +0 -1
  355. package/dist/construct-interface-D9d4Gm4p.d.cts.map +0 -1
  356. package/dist/construct-interface-Z4CpS8tK.mjs +0 -81
  357. package/dist/construct-interface-Z4CpS8tK.mjs.map +0 -1
  358. package/dist/construct-interface-g5GM5pwR.d.mts.map +0 -1
  359. package/dist/database/kysely.d.cts.map +0 -1
  360. package/dist/database/kysely.d.mts.map +0 -1
  361. package/dist/functions-Ck21Uyq0.mjs.map +0 -1
  362. package/dist/functions-DJJA7VGc.cjs.map +0 -1
  363. package/dist/index-AIfVzkhi.d.cts +0 -170
  364. package/dist/index-AIfVzkhi.d.cts.map +0 -1
  365. package/dist/index-B8g8POkr.d.cts.map +0 -1
  366. package/dist/index-D3zjrwjr.d.mts +0 -169
  367. package/dist/index-D3zjrwjr.d.mts.map +0 -1
  368. package/dist/index-DbKmfl-q.d.mts.map +0 -1
  369. package/dist/lazyAccessors-BoJN3SMd.mjs.map +0 -1
  370. package/dist/lazyAccessors-e3j2oE2m.cjs.map +0 -1
  371. package/dist/processAudits-CGqttuXm.cjs.map +0 -1
  372. package/dist/processAudits-Dmts9H_b.mjs.map +0 -1
  373. package/dist/queue/index.cjs.map +0 -1
  374. package/dist/queue/index.d.cts.map +0 -1
  375. package/dist/queue/index.d.mts.map +0 -1
  376. package/dist/queue/index.mjs.map +0 -1
  377. package/dist/subscribers/index.cjs.map +0 -1
  378. package/dist/subscribers/index.d.cts.map +0 -1
  379. package/dist/subscribers/index.d.mts.map +0 -1
  380. package/dist/subscribers/index.mjs.map +0 -1
  381. package/dist/surfaceEnv-BFXEms2f.cjs +0 -39
  382. package/dist/surfaceEnv-BFXEms2f.cjs.map +0 -1
  383. package/dist/surfaceEnv-C3Ktahea.mjs +0 -27
  384. package/dist/surfaceEnv-C3Ktahea.mjs.map +0 -1
  385. package/dist/telemetry-C3L0iS28.d.cts.map +0 -1
  386. package/dist/telemetry-D7bVFLGi.d.mts.map +0 -1
  387. package/dist/topic/index.cjs.map +0 -1
  388. package/dist/topic/index.d.cts.map +0 -1
  389. package/dist/topic/index.d.mts.map +0 -1
  390. package/dist/topic/index.mjs.map +0 -1
  391. package/dist/types-BlAkSuGI.d.cts.map +0 -1
  392. package/dist/types-aKksMEWL.d.mts.map +0 -1
@@ -1,22 +1,24 @@
1
- const require_chunk = require('../chunk-DWy1uDak.cjs');
2
- require('../construct-interface-BfjcOD_E.cjs');
3
- require('../Construct-CyS3RpTL.cjs');
4
- const require_functions = require('../functions-DJJA7VGc.cjs');
5
- require('../clone-Dy0cR2SZ.cjs');
6
- const require_Endpoint = require('../Endpoint-DODn1RhN.cjs');
7
- const require_surfaceEnv = require('../surfaceEnv-BFXEms2f.cjs');
8
- const require_lazyAccessors = require('../lazyAccessors-e3j2oE2m.cjs');
9
- const require_processAudits = require('../processAudits-CGqttuXm.cjs');
10
- const __geekmidas_errors = require_chunk.__toESM(require("@geekmidas/errors"));
11
- const __geekmidas_services = require_chunk.__toESM(require("@geekmidas/services"));
12
- const __middy_core = require_chunk.__toESM(require("@middy/core"));
13
- const __geekmidas_audit = require_chunk.__toESM(require("@geekmidas/audit"));
14
- const __geekmidas_audit_kysely = require_chunk.__toESM(require("@geekmidas/audit/kysely"));
15
- const __geekmidas_db_rls = require_chunk.__toESM(require("@geekmidas/db/rls"));
16
- const qs = require_chunk.__toESM(require("qs"));
17
-
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_rolldown_runtime = require("../rolldown-runtime-y5ARvAq5.cjs");
3
+ const require_functions = require("../functions-CbP5ZKma.cjs");
4
+ const require_Endpoint = require("../Endpoint-DOi8c_Gy.cjs");
5
+ const require_surfaceEnv = require("../surfaceEnv-CNimK76p.cjs");
6
+ const require_lazyAccessors = require("../lazyAccessors-hJKGv8Ay.cjs");
7
+ const require_processAudits = require("../processAudits-D_2W5x8k.cjs");
8
+ let _geekmidas_errors = require("@geekmidas/errors");
9
+ let _geekmidas_db_rls = require("@geekmidas/db/rls");
10
+ let _geekmidas_services = require("@geekmidas/services");
11
+ let qs = require("qs");
12
+ qs = require_rolldown_runtime.__toESM(qs, 1);
13
+ let _geekmidas_audit = require("@geekmidas/audit");
14
+ let _middy_core = require("@middy/core");
15
+ _middy_core = require_rolldown_runtime.__toESM(_middy_core, 1);
16
+ let _geekmidas_audit_kysely = require("@geekmidas/audit/kysely");
17
+ let _geekmidas_events_sns = require("@geekmidas/events/sns");
18
18
  //#region src/functions/FunctionExecutionWrapper.ts
19
19
  var FunctionExecutionWrapper = class {
20
+ envParser;
21
+ fn;
20
22
  constructor(envParser, fn) {
21
23
  this.envParser = envParser;
22
24
  this.fn = fn;
@@ -26,25 +28,22 @@ var FunctionExecutionWrapper = class {
26
28
  return this._logger || this.fn.logger;
27
29
  }
28
30
  get serviceDiscovery() {
29
- const serviceDiscovery = __geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
30
- return serviceDiscovery;
31
+ return _geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
31
32
  }
32
33
  getServices() {
33
34
  return this.serviceDiscovery.register(this.fn.services);
34
35
  }
35
36
  async getDatabase() {
36
- if (!this.fn.databaseService) return void 0;
37
- const services = await this.serviceDiscovery.register([this.fn.databaseService]);
38
- return services[this.fn.databaseService.serviceName];
37
+ if (!this.fn.databaseService) return;
38
+ return (await this.serviceDiscovery.register([this.fn.databaseService]))[this.fn.databaseService.serviceName];
39
39
  }
40
40
  /**
41
41
  * Get the audit storage service if configured.
42
42
  * Returns undefined if no auditor storage is configured.
43
43
  */
44
44
  async getAuditStorage() {
45
- if (!this.fn.auditorStorageService) return void 0;
46
- const services = await this.serviceDiscovery.register([this.fn.auditorStorageService]);
47
- return services[this.fn.auditorStorageService.serviceName];
45
+ if (!this.fn.auditorStorageService) return;
46
+ return (await this.serviceDiscovery.register([this.fn.auditorStorageService]))[this.fn.auditorStorageService.serviceName];
48
47
  }
49
48
  /**
50
49
  * Create an auditor instance for the function.
@@ -52,8 +51,8 @@ var FunctionExecutionWrapper = class {
52
51
  */
53
52
  async createAuditor() {
54
53
  const storage = await this.getAuditStorage();
55
- if (!storage) return void 0;
56
- return new __geekmidas_audit.DefaultAuditor({
54
+ if (!storage) return;
55
+ return new _geekmidas_audit.DefaultAuditor({
57
56
  actor: {
58
57
  id: "system",
59
58
  type: "system"
@@ -73,52 +72,45 @@ var FunctionExecutionWrapper = class {
73
72
  async executeWithAudit(handler) {
74
73
  const auditor = await this.createAuditor();
75
74
  const storage = await this.getAuditStorage();
76
- if (!auditor || !storage) {
77
- const db$1 = await this.getDatabase();
78
- return handler({ db: db$1 });
79
- }
75
+ if (!auditor || !storage) return handler({ db: await this.getDatabase() });
80
76
  const storageDb = storage.getDatabase?.();
81
77
  const databaseServiceName = this.fn.databaseService?.serviceName;
82
78
  const auditDbServiceName = this.fn.auditorStorageService?.serviceName;
83
- if (storageDb && databaseServiceName && auditDbServiceName) return (0, __geekmidas_audit_kysely.withAuditableTransaction)(storageDb, auditor, async (trx) => {
84
- const response$1 = await handler({
79
+ if (storageDb && databaseServiceName && auditDbServiceName) return (0, _geekmidas_audit_kysely.withAuditableTransaction)(storageDb, auditor, async (trx) => {
80
+ return await handler({
85
81
  auditor,
86
82
  db: trx
87
83
  });
88
- return response$1;
89
84
  });
90
- const db = await this.getDatabase();
91
85
  const response = await handler({
92
86
  auditor,
93
- db
87
+ db: await this.getDatabase()
94
88
  });
95
89
  await auditor.flush();
96
90
  return response;
97
91
  }
98
92
  async getFunctionInput(event) {
99
- const parsedInput = await require_functions.FunctionBuilder.parseComposableStandardSchema(event, this.fn.input);
100
- return parsedInput;
93
+ return await require_functions.FunctionBuilder.parseComposableStandardSchema(event, this.fn.input);
101
94
  }
102
95
  async publishEvents(response) {
103
- await require_lazyAccessors.publishEvents(this.logger, this.serviceDiscovery, this.fn.events, response, this.fn.publisherService);
96
+ await require_functions.publishEvents(this.logger, this.serviceDiscovery, this.fn.events, response);
104
97
  }
105
98
  async parseComposableStandardSchema(data, schema) {
106
99
  return require_functions.FunctionBuilder.parseComposableStandardSchema(data, schema);
107
100
  }
108
101
  };
109
-
110
102
  //#endregion
111
103
  //#region src/functions/AWSLambdaFunction.ts
112
104
  var AWSLambdaFunction = class extends FunctionExecutionWrapper {
105
+ fn;
113
106
  constructor(envParser, fn) {
114
107
  super(envParser, fn);
115
108
  this.fn = fn;
116
109
  }
117
110
  error() {
118
111
  return { onError: (req) => {
119
- const logger = req.event?.logger || this.fn.logger;
120
- logger.error(req.error || {}, "Error processing function");
121
- throw (0, __geekmidas_errors.wrapError)(req.error);
112
+ (req.event?.logger || this.fn.logger).error(req.error || {}, "Error processing function");
113
+ throw (0, _geekmidas_errors.wrapError)(req.error);
122
114
  } };
123
115
  }
124
116
  baseInput() {
@@ -193,17 +185,16 @@ var AWSLambdaFunction = class extends FunctionExecutionWrapper {
193
185
  db: event.db,
194
186
  auditor: event.auditor
195
187
  });
196
- const output = await this.fn.parseOutput(result);
197
- return output;
188
+ return await this.fn.parseOutput(result);
198
189
  }
199
190
  get handler() {
200
191
  const handler = this._handler.bind(this);
201
- const chain = (0, __middy_core.default)(handler).use(this.loggerMiddleware()).use(this.baseInput()).use(this.error()).use(this.services()).use(this.database()).use(this.auditor()).use(this.input()).use(this.events());
192
+ const chain = (0, _middy_core.default)(handler).use(this.loggerMiddleware()).use(this.baseInput()).use(this.error()).use(this.services()).use(this.database()).use(this.auditor()).use(this.input()).use(this.events());
202
193
  const wrappedHandler = async (event, context) => {
203
194
  const startTime = Date.now();
204
195
  const requestId = context.awsRequestId;
205
196
  const logger = this.fn.logger.child({ requestId });
206
- return (0, __geekmidas_services.runWithRequestContext)({
197
+ return (0, _geekmidas_services.runWithRequestContext)({
207
198
  logger,
208
199
  requestId,
209
200
  startTime
@@ -212,7 +203,6 @@ var AWSLambdaFunction = class extends FunctionExecutionWrapper {
212
203
  return wrappedHandler;
213
204
  }
214
205
  };
215
-
216
206
  //#endregion
217
207
  //#region src/crons/AWSScheduledFunction.ts
218
208
  /**
@@ -246,11 +236,11 @@ var AWSScheduledFunction = class extends AWSLambdaFunction {
246
236
  super(envParser, cron);
247
237
  }
248
238
  };
249
-
250
239
  //#endregion
251
240
  //#region src/endpoints/AmazonApiGatewayEndpointAdaptor.ts
252
- var import_lodash = require_chunk.__toESM(require_Endpoint.require_lodash(), 1);
241
+ var import_lodash_set = /* @__PURE__ */ require_rolldown_runtime.__toESM(require_Endpoint.require_lodash_set(), 1);
253
242
  var AmazonApiGatewayEndpoint = class {
243
+ endpoint;
254
244
  options;
255
245
  /**
256
246
  * The parser this adaptor discovers services with.
@@ -270,7 +260,7 @@ var AmazonApiGatewayEndpoint = class {
270
260
  error() {
271
261
  return { onError: (req) => {
272
262
  (req.event.logger || this.endpoint.logger).error(req.error || {}, "Error processing request");
273
- const wrappedError = (0, __geekmidas_errors.wrapError)(req.error);
263
+ const wrappedError = (0, _geekmidas_errors.wrapError)(req.error);
274
264
  req.response = {
275
265
  statusCode: wrappedError.statusCode,
276
266
  body: wrappedError.body
@@ -288,8 +278,7 @@ var AmazonApiGatewayEndpoint = class {
288
278
  static decodeBody(body, isBase64Encoded, contentType) {
289
279
  if (!body) return void 0;
290
280
  const raw = isBase64Encoded ? Buffer.from(body, "base64").toString("utf-8") : body;
291
- const isJson = !contentType || contentType.toLowerCase().includes("application/json");
292
- if (isJson) return JSON.parse(raw);
281
+ if (!contentType || contentType.toLowerCase().includes("application/json")) return JSON.parse(raw);
293
282
  return raw;
294
283
  }
295
284
  getCookies(e) {
@@ -303,13 +292,13 @@ var AmazonApiGatewayEndpoint = class {
303
292
  const headers = req.event.headers;
304
293
  const header = require_Endpoint.Endpoint.createHeaders(headers);
305
294
  const cookie = this.getCookies(req.event);
306
- (0, import_lodash.default)(req.event, "body", await this.endpoint.parseInput(body, "body"));
307
- (0, import_lodash.default)(req.event, "query", await this.endpoint.parseInput(query, "query"));
308
- (0, import_lodash.default)(req.event, "params", await this.endpoint.parseInput(params, "params"));
309
- (0, import_lodash.default)(req.event, "header", header);
310
- (0, import_lodash.default)(req.event, "cookie", cookie);
295
+ (0, import_lodash_set.default)(req.event, "body", await this.endpoint.parseInput(body, "body"));
296
+ (0, import_lodash_set.default)(req.event, "query", await this.endpoint.parseInput(query, "query"));
297
+ (0, import_lodash_set.default)(req.event, "params", await this.endpoint.parseInput(params, "params"));
298
+ (0, import_lodash_set.default)(req.event, "header", header);
299
+ (0, import_lodash_set.default)(req.event, "cookie", cookie);
311
300
  } catch (error) {
312
- if (error && typeof error === "object" && Array.isArray(error)) throw new __geekmidas_errors.UnprocessableEntityError("Validation failed", error);
301
+ if (error && typeof error === "object" && Array.isArray(error)) throw new _geekmidas_errors.UnprocessableEntityError("Validation failed", error);
313
302
  throw error;
314
303
  }
315
304
  } };
@@ -326,9 +315,8 @@ var AmazonApiGatewayEndpoint = class {
326
315
  }
327
316
  services() {
328
317
  return { before: async (req) => {
329
- const _logger = req.event.logger;
330
- const serviceDiscovery = __geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
331
- const services = await serviceDiscovery.register(this.endpoint.services);
318
+ req.event.logger;
319
+ const services = await _geekmidas_services.ServiceDiscovery.getInstance(this.envParser).register(this.endpoint.services);
332
320
  req.event.services = services;
333
321
  } };
334
322
  }
@@ -339,7 +327,7 @@ var AmazonApiGatewayEndpoint = class {
339
327
  const header = req.event.header;
340
328
  const cookie = req.event.cookie;
341
329
  const session = req.event.session;
342
- const isAuthorized = await this.endpoint.authorize({
330
+ if (!await this.endpoint.authorize({
343
331
  header,
344
332
  cookie,
345
333
  services,
@@ -349,19 +337,17 @@ var AmazonApiGatewayEndpoint = class {
349
337
  body: req.event.body,
350
338
  query: req.event.query,
351
339
  params: req.event.params
352
- });
353
- if (!isAuthorized) {
340
+ })) {
354
341
  logger.warn("Forbidden access attempt");
355
- throw new __geekmidas_errors.ForbiddenError("Forbidden access to the endpoint", "You do not have permission to access this resource.");
342
+ throw new _geekmidas_errors.ForbiddenError("Forbidden access to the endpoint", "You do not have permission to access this resource.");
356
343
  }
357
344
  } };
358
345
  }
359
346
  database() {
360
347
  return { before: async (req) => {
361
348
  if (!this.endpoint.databaseService) return;
362
- const _logger = req.event.logger;
363
- const serviceDiscovery = __geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
364
- const db = await serviceDiscovery.register([this.endpoint.databaseService]).then((s) => s[this.endpoint.databaseService?.serviceName]);
349
+ req.event.logger;
350
+ const db = await _geekmidas_services.ServiceDiscovery.getInstance(this.envParser).register([this.endpoint.databaseService]).then((s) => s[this.endpoint.databaseService?.serviceName]);
365
351
  req.event.db = db;
366
352
  } };
367
353
  }
@@ -386,15 +372,15 @@ var AmazonApiGatewayEndpoint = class {
386
372
  const statusCode = req.response?.statusCode ?? this.endpoint.status;
387
373
  if (require_Endpoint.Endpoint.isSuccessStatus(statusCode)) {
388
374
  const logger = event.logger;
389
- const serviceDiscovery = __geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
390
- await require_lazyAccessors.publishConstructEvents(this.endpoint, response, serviceDiscovery, logger);
375
+ const serviceDiscovery = _geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
376
+ await require_functions.publishConstructEvents(this.endpoint, response, serviceDiscovery, logger);
391
377
  }
392
378
  } };
393
379
  }
394
380
  async _handler(event) {
395
381
  const input = this.endpoint.refineInput(event);
396
382
  const logger = event.logger;
397
- const serviceDiscovery = __geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
383
+ const serviceDiscovery = _geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
398
384
  const auditContext = await require_processAudits.createAuditContext(this.endpoint, serviceDiscovery, logger, {
399
385
  session: event.session,
400
386
  header: event.header,
@@ -412,9 +398,8 @@ var AmazonApiGatewayEndpoint = class {
412
398
  cookie: event.cookie,
413
399
  logger
414
400
  }) : void 0;
415
- const result = await require_processAudits.executeWithAuditTransaction(auditContext, async (auditor) => {
416
- const sameDatabase = auditContext?.storage?.databaseServiceName && auditContext.storage.databaseServiceName === this.endpoint.databaseService?.serviceName;
417
- const baseDb = sameDatabase ? auditor?.getTransaction?.() ?? rawDb : rawDb;
401
+ const { output, metadata } = await require_processAudits.executeWithAuditTransaction(auditContext, async (auditor) => {
402
+ const baseDb = auditContext?.storage?.databaseServiceName && auditContext.storage.databaseServiceName === this.endpoint.databaseService?.serviceName ? auditor?.getTransaction?.() ?? rawDb : rawDb;
418
403
  const executeHandler = async (db) => {
419
404
  const responseBuilder = new require_Endpoint.ResponseBuilder();
420
405
  const response = await this.endpoint.handler({
@@ -428,33 +413,31 @@ var AmazonApiGatewayEndpoint = class {
428
413
  ...input
429
414
  }, responseBuilder);
430
415
  let data = response;
431
- let metadata$1 = responseBuilder.getMetadata();
416
+ let metadata = responseBuilder.getMetadata();
432
417
  if (require_Endpoint.Endpoint.hasMetadata(response)) {
433
418
  data = response.data;
434
- metadata$1 = response.metadata;
419
+ metadata = response.metadata;
435
420
  }
436
- const output$1 = this.endpoint.outputSchema ? await this.endpoint.parseOutput(data) : void 0;
437
421
  return {
438
- output: output$1,
439
- metadata: metadata$1,
422
+ output: this.endpoint.outputSchema ? await this.endpoint.parseOutput(data) : void 0,
423
+ metadata,
440
424
  responseBuilder
441
425
  };
442
426
  };
443
- if (rlsActive && rlsContext && baseDb) return (0, __geekmidas_db_rls.withRlsContext)(baseDb, rlsContext, async (trx) => executeHandler(trx), { prefix: this.endpoint.rlsConfig?.prefix });
427
+ if (rlsActive && rlsContext && baseDb) return (0, _geekmidas_db_rls.withRlsContext)(baseDb, rlsContext, async (trx) => executeHandler(trx), { prefix: this.endpoint.rlsConfig?.prefix });
444
428
  return executeHandler(baseDb);
445
- }, async (result$1, auditor) => {
429
+ }, async (result, auditor) => {
446
430
  if (!audits?.length) return;
447
431
  for (const audit of audits) {
448
- if (audit.when && !audit.when(result$1.output)) continue;
449
- const payload = audit.payload(result$1.output);
450
- const entityId = audit.entityId?.(result$1.output);
432
+ if (audit.when && !audit.when(result.output)) continue;
433
+ const payload = audit.payload(result.output);
434
+ const entityId = audit.entityId?.(result.output);
451
435
  auditor.audit(audit.type, payload, {
452
436
  table: audit.table,
453
437
  entityId
454
438
  });
455
439
  }
456
440
  }, { db: rawDb });
457
- const { output, metadata } = result;
458
441
  const isJsonResponse = this.endpoint.responseType === "application/json";
459
442
  const body = output === void 0 ? void 0 : isJsonResponse ? JSON.stringify(output) : typeof output === "string" ? output : String(output);
460
443
  event.__response = output;
@@ -505,7 +488,7 @@ var AmazonApiGatewayEndpoint = class {
505
488
  }
506
489
  get handler() {
507
490
  const handler = this._handler.bind(this);
508
- let chain = (0, __middy_core.default)(handler).use(this.logger()).use(this.error()).use(this.services()).use(this.input()).use(this.database()).use(this.session()).use(this.authorize()).use(this.events());
491
+ let chain = (0, _middy_core.default)(handler).use(this.logger()).use(this.error()).use(this.services()).use(this.input()).use(this.database()).use(this.session()).use(this.authorize()).use(this.events());
509
492
  const telemetryMiddleware = this.telemetry();
510
493
  if (telemetryMiddleware) chain = chain.use(telemetryMiddleware);
511
494
  if (this.options.telescope?.middleware) chain = chain.use(this.options.telescope.middleware);
@@ -513,7 +496,7 @@ var AmazonApiGatewayEndpoint = class {
513
496
  const startTime = Date.now();
514
497
  const requestId = context.awsRequestId;
515
498
  const logger = this.endpoint.logger.child({ requestId });
516
- return (0, __geekmidas_services.runWithRequestContext)({
499
+ return (0, _geekmidas_services.runWithRequestContext)({
517
500
  logger,
518
501
  requestId,
519
502
  startTime
@@ -522,7 +505,6 @@ var AmazonApiGatewayEndpoint = class {
522
505
  return wrappedHandler;
523
506
  }
524
507
  };
525
-
526
508
  //#endregion
527
509
  //#region src/endpoints/parseQueryParams.ts
528
510
  /**
@@ -543,10 +525,10 @@ function parseQueryParams(queryParams) {
543
525
  }
544
526
  return qs.default.parse(parts.join("&"));
545
527
  }
546
-
547
528
  //#endregion
548
529
  //#region src/endpoints/AmazonApiGatewayV1EndpointAdaptor.ts
549
530
  var AmazonApiGatewayV1Endpoint = class extends AmazonApiGatewayEndpoint {
531
+ endpoint;
550
532
  getInput(e) {
551
533
  const multiValueParams = e.multiValueQueryStringParameters || {};
552
534
  const singleValueParams = e.queryStringParameters || {};
@@ -579,17 +561,16 @@ var AmazonApiGatewayV1Endpoint = class extends AmazonApiGatewayEndpoint {
579
561
  this.endpoint = endpoint;
580
562
  }
581
563
  };
582
-
583
564
  //#endregion
584
565
  //#region src/endpoints/AmazonApiGatewayV2EndpointAdaptor.ts
585
566
  var AmazonApiGatewayV2Endpoint = class extends AmazonApiGatewayEndpoint {
567
+ endpoint;
586
568
  getCookies(e) {
587
569
  return require_lazyAccessors.createApiGatewayCookies(e.cookies, e.headers?.cookie);
588
570
  }
589
571
  getInput(e) {
590
- const raw = AmazonApiGatewayEndpoint.decodeBody(e.body, e.isBase64Encoded, e.headers?.["content-type"]);
591
572
  return {
592
- body: raw,
573
+ body: AmazonApiGatewayEndpoint.decodeBody(e.body, e.isBase64Encoded, e.headers?.["content-type"]),
593
574
  query: qs.default.parse(e.rawQueryString),
594
575
  params: e.pathParameters || {}
595
576
  };
@@ -614,7 +595,6 @@ var AmazonApiGatewayV2Endpoint = class extends AmazonApiGatewayEndpoint {
614
595
  this.endpoint = endpoint;
615
596
  }
616
597
  };
617
-
618
598
  //#endregion
619
599
  //#region src/queue/AWSLambdaQueueAdaptor.ts
620
600
  /**
@@ -629,6 +609,8 @@ var AmazonApiGatewayV2Endpoint = class extends AmazonApiGatewayEndpoint {
629
609
  * retries only those records.
630
610
  */
631
611
  var AWSLambdaQueue = class {
612
+ envParser;
613
+ queue;
632
614
  _services;
633
615
  constructor(envParser, queue) {
634
616
  this.envParser = envParser;
@@ -639,10 +621,16 @@ var AWSLambdaQueue = class {
639
621
  }
640
622
  async getServices() {
641
623
  if (this._services) return this._services;
642
- const serviceDiscovery = __geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
624
+ const serviceDiscovery = _geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
643
625
  this._services = this.queue.services.length > 0 ? await serviceDiscovery.register(this.queue.services) : {};
644
626
  return this._services;
645
627
  }
628
+ /** The queue's database, registered as functions register theirs. */
629
+ async getDatabase() {
630
+ const service = this.queue.databaseService;
631
+ if (!service) return void 0;
632
+ return (await _geekmidas_services.ServiceDiscovery.getInstance(this.envParser).register([service]))[service.serviceName];
633
+ }
646
634
  safeJsonParse(value) {
647
635
  try {
648
636
  return JSON.parse(value);
@@ -668,6 +656,7 @@ var AWSLambdaQueue = class {
668
656
  req: { id: context.awsRequestId }
669
657
  });
670
658
  const services = await this.getServices();
659
+ const db = await this.getDatabase();
671
660
  const schema = this.queue.messageSchema;
672
661
  const batchItemFailures = [];
673
662
  const messages = [];
@@ -695,32 +684,34 @@ var AWSLambdaQueue = class {
695
684
  await this.queue.handler({
696
685
  messages,
697
686
  services,
698
- logger
687
+ logger,
688
+ db
699
689
  });
700
690
  } catch (error) {
701
- logger.error((0, __geekmidas_errors.wrapError)(error), "Queue handler failed; retrying batch");
691
+ logger.error((0, _geekmidas_errors.wrapError)(error), "Queue handler failed; retrying batch");
702
692
  for (const record of event.Records) if (!batchItemFailures.some((f) => f.itemIdentifier === record.messageId)) batchItemFailures.push({ itemIdentifier: record.messageId });
703
693
  }
704
694
  return { batchItemFailures };
705
695
  }
706
696
  get handler() {
707
697
  const handler = this._handler.bind(this);
708
- return async (event, context) => {
698
+ return (async (event, context) => {
709
699
  const startTime = Date.now();
710
700
  const requestId = context.awsRequestId;
711
701
  const logger = this.queue.logger.child({ requestId });
712
- return (0, __geekmidas_services.runWithRequestContext)({
702
+ return (0, _geekmidas_services.runWithRequestContext)({
713
703
  logger,
714
704
  requestId,
715
705
  startTime
716
706
  }, () => handler(event, context));
717
- };
707
+ });
718
708
  }
719
709
  };
720
-
721
710
  //#endregion
722
711
  //#region src/subscribers/AWSLambdaSubscriberAdaptor.ts
723
712
  var AWSLambdaSubscriber = class {
713
+ envParser;
714
+ subscriber;
724
715
  _logger;
725
716
  _services;
726
717
  constructor(envParser, subscriber) {
@@ -733,18 +724,23 @@ var AWSLambdaSubscriber = class {
733
724
  }
734
725
  async getServices() {
735
726
  if (this._services) return this._services;
736
- const serviceDiscovery = __geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
727
+ const serviceDiscovery = _geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
737
728
  if (this.subscriber.services.length > 0) {
738
729
  const registered = await serviceDiscovery.register(this.subscriber.services);
739
730
  this._services = registered;
740
731
  } else this._services = {};
741
732
  return this._services;
742
733
  }
734
+ /** The subscriber's database, registered as functions register theirs. */
735
+ async getDatabase() {
736
+ const service = this.subscriber.databaseService;
737
+ if (!service) return void 0;
738
+ return (await _geekmidas_services.ServiceDiscovery.getInstance(this.envParser).register([service]))[service.serviceName];
739
+ }
743
740
  error() {
744
741
  return { onError: (req) => {
745
- const logger = req.event?.logger || this.subscriber.logger;
746
- logger.error(req.error || {}, "Error processing subscriber");
747
- throw (0, __geekmidas_errors.wrapError)(req.error);
742
+ (req.event?.logger || this.subscriber.logger).error(req.error || {}, "Error processing subscriber");
743
+ throw (0, _geekmidas_errors.wrapError)(req.error);
748
744
  } };
749
745
  }
750
746
  loggerMiddleware() {
@@ -763,11 +759,12 @@ var AWSLambdaSubscriber = class {
763
759
  services() {
764
760
  return { before: async (req) => {
765
761
  req.event.services = await this.getServices();
762
+ req.event.db = await this.getDatabase();
766
763
  } };
767
764
  }
768
765
  parseEvents() {
769
766
  return { before: async (req) => {
770
- const { logger,...e } = req.event;
767
+ const { logger, ...e } = req.event;
771
768
  const rawEvent = e;
772
769
  logger.info({ rawEvent });
773
770
  const events = [];
@@ -855,7 +852,8 @@ var AWSLambdaSubscriber = class {
855
852
  const result = await this.subscriber.handler({
856
853
  events: event.events,
857
854
  services: event.services,
858
- logger: event.logger
855
+ logger: event.logger,
856
+ db: event.db
859
857
  });
860
858
  if (this.subscriber.outputSchema && result) {
861
859
  const validationResult = await this.subscriber.outputSchema["~standard"].validate(result);
@@ -869,12 +867,12 @@ var AWSLambdaSubscriber = class {
869
867
  }
870
868
  get handler() {
871
869
  const handler = this._handler.bind(this);
872
- const chain = (0, __middy_core.default)(handler).use(this.loggerMiddleware()).use(this.parseEvents()).use(this.error()).use(this.services());
870
+ const chain = (0, _middy_core.default)(handler).use(this.loggerMiddleware()).use(this.parseEvents()).use(this.error()).use(this.services());
873
871
  const wrappedHandler = async (event, context) => {
874
872
  const startTime = Date.now();
875
873
  const requestId = context.awsRequestId;
876
874
  const logger = this.subscriber.logger.child({ requestId });
877
- return (0, __geekmidas_services.runWithRequestContext)({
875
+ return (0, _geekmidas_services.runWithRequestContext)({
878
876
  logger,
879
877
  requestId,
880
878
  startTime
@@ -883,7 +881,86 @@ var AWSLambdaSubscriber = class {
883
881
  return wrappedHandler;
884
882
  }
885
883
  };
886
-
884
+ //#endregion
885
+ //#region src/subscribers/SnsPushSubscriberAdaptor.ts
886
+ /**
887
+ * A topic subscriber run by SNS pushing to an HTTP endpoint, rather than by a
888
+ * poller.
889
+ *
890
+ * The notification is handed to {@link AWSLambdaSubscriber} as the Lambda
891
+ * event SNS would have invoked a function with, so the parsing, the services
892
+ * and the error handling are the ones that run deployed on Lambda — the
893
+ * endpoint is only a different way for the event to arrive.
894
+ */
895
+ var SnsPushSubscriberAdaptor = class {
896
+ subscriber;
897
+ options;
898
+ lambda;
899
+ constructor(envParser, subscriber, options) {
900
+ this.subscriber = subscriber;
901
+ this.options = options;
902
+ this.lambda = new AWSLambdaSubscriber(envParser, subscriber);
903
+ }
904
+ async handle(body) {
905
+ const message = body;
906
+ if (typeof message?.Type !== "string" || !message.TopicArn) return refuse(400, "not an SNS message");
907
+ if (message.TopicArn !== this.options.topicArn) return refuse(403, `not subscribed to ${message.TopicArn}`);
908
+ if (this.options.verify) try {
909
+ await (0, _geekmidas_events_sns.verifySnsMessage)(message);
910
+ } catch (error) {
911
+ this.subscriber.logger.warn({
912
+ error,
913
+ topicArn: message.TopicArn
914
+ }, "Refused an SNS message that did not verify");
915
+ return refuse(403, error.name);
916
+ }
917
+ switch (message.Type) {
918
+ case "SubscriptionConfirmation":
919
+ await (0, _geekmidas_events_sns.confirmSnsSubscription)(this.options.emulatorEndpoint && message.SubscribeURL ? {
920
+ ...message,
921
+ SubscribeURL: throughEndpoint(message.SubscribeURL, this.options.emulatorEndpoint)
922
+ } : message);
923
+ this.subscriber.logger.info({ topicArn: message.TopicArn }, "Confirmed SNS subscription");
924
+ return {
925
+ status: 200,
926
+ body: { status: "confirmed" }
927
+ };
928
+ case "Notification": try {
929
+ await this.lambda.handler((0, _geekmidas_events_sns.toSnsEvent)(message), {
930
+ awsRequestId: message.MessageId,
931
+ functionName: this.subscriber.topicName ?? "subscriber"
932
+ }, () => {});
933
+ return {
934
+ status: 200,
935
+ body: { status: "ok" }
936
+ };
937
+ } catch (error) {
938
+ return refuse(500, error.name);
939
+ }
940
+ default: return {
941
+ status: 200,
942
+ body: { status: "ignored" }
943
+ };
944
+ }
945
+ }
946
+ };
947
+ /** `url`, sent to `endpoint`'s origin instead of its own. */
948
+ function throughEndpoint(url, endpoint) {
949
+ const target = new URL(url);
950
+ const origin = new URL(endpoint);
951
+ target.protocol = origin.protocol;
952
+ target.host = origin.host;
953
+ return target.toString();
954
+ }
955
+ function refuse(status, error) {
956
+ return {
957
+ status,
958
+ body: {
959
+ status: "refused",
960
+ error
961
+ }
962
+ };
963
+ }
887
964
  //#endregion
888
965
  exports.AWSLambdaFunction = AWSLambdaFunction;
889
966
  exports.AWSLambdaQueue = AWSLambdaQueue;
@@ -891,4 +968,6 @@ exports.AWSLambdaSubscriber = AWSLambdaSubscriber;
891
968
  exports.AWSScheduledFunction = AWSScheduledFunction;
892
969
  exports.AmazonApiGatewayV1Endpoint = AmazonApiGatewayV1Endpoint;
893
970
  exports.AmazonApiGatewayV2Endpoint = AmazonApiGatewayV2Endpoint;
971
+ exports.SnsPushSubscriberAdaptor = SnsPushSubscriberAdaptor;
972
+
894
973
  //# sourceMappingURL=aws.cjs.map