@geekmidas/constructs 7.0.1 → 10.0.0-alpha.0

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 (385) hide show
  1. package/README.md +71 -44
  2. package/dist/{AWSScheduledFunction-ysaCsdWx.d.mts → AWSScheduledFunction-BvFvBsBN.d.cts} +10 -5
  3. package/dist/{AWSScheduledFunction-ysaCsdWx.d.mts.map → AWSScheduledFunction-BvFvBsBN.d.cts.map} +1 -1
  4. package/dist/{AWSScheduledFunction-CTIa90EH.d.cts → AWSScheduledFunction-CVccZO-L.d.mts} +10 -5
  5. package/dist/{AWSScheduledFunction-CTIa90EH.d.cts.map → AWSScheduledFunction-CVccZO-L.d.mts.map} +1 -1
  6. package/dist/{AWSScheduledFunction-CufMMhGB.mjs → AWSScheduledFunction-Db1lttJH.mjs} +3 -3
  7. package/dist/{AWSScheduledFunction-CufMMhGB.mjs.map → AWSScheduledFunction-Db1lttJH.mjs.map} +1 -1
  8. package/dist/{AWSScheduledFunction-DbkDr8CA.cjs → AWSScheduledFunction-qu4ieRZR.cjs} +9 -9
  9. package/dist/{AWSScheduledFunction-DbkDr8CA.cjs.map → AWSScheduledFunction-qu4ieRZR.cjs.map} +1 -1
  10. package/dist/{Construct-_1wX7p_Y.d.cts → Construct-B-xc0SE9.d.mts} +27 -5
  11. package/dist/Construct-B-xc0SE9.d.mts.map +1 -0
  12. package/dist/{Construct-r0U2zBwW.mjs → Construct-HmWM6YYu.mjs} +4 -3
  13. package/dist/Construct-HmWM6YYu.mjs.map +1 -0
  14. package/dist/{Construct-DCMuYOox.d.mts → Construct-WhCXIOPV.d.cts} +29 -7
  15. package/dist/Construct-WhCXIOPV.d.cts.map +1 -0
  16. package/dist/{Construct-vXMZJgRp.cjs → Construct-roId57cU.cjs} +7 -43
  17. package/dist/Construct-roId57cU.cjs.map +1 -0
  18. package/dist/{lazyAccessors-DmTG8sQH.cjs → Endpoint-BBkV6l0k.cjs} +869 -1079
  19. package/dist/Endpoint-BBkV6l0k.cjs.map +1 -0
  20. package/dist/{lazyAccessors-DfqZR6C4.mjs → Endpoint-BGwpNEX4.mjs} +840 -1003
  21. package/dist/Endpoint-BGwpNEX4.mjs.map +1 -0
  22. package/dist/{Endpoint-CAzNbDEt.d.cts → Endpoint-BnxZqIX-.d.cts} +53 -4
  23. package/dist/Endpoint-BnxZqIX-.d.cts.map +1 -0
  24. package/dist/{Endpoint-CLPSIl6S.d.mts → Endpoint-ROcXU-eH.d.mts} +55 -6
  25. package/dist/Endpoint-ROcXU-eH.d.mts.map +1 -0
  26. package/dist/EndpointFactory-DYoGLaIT.cjs +850 -0
  27. package/dist/EndpointFactory-DYoGLaIT.cjs.map +1 -0
  28. package/dist/EndpointFactory-Di0X9AWp.mjs +808 -0
  29. package/dist/EndpointFactory-Di0X9AWp.mjs.map +1 -0
  30. package/dist/{HonoEndpointAdaptor-DJDT3PMx.mjs → HonoEndpointAdaptor-DFKIIG2o.mjs} +5 -4
  31. package/dist/HonoEndpointAdaptor-DFKIIG2o.mjs.map +1 -0
  32. package/dist/{HonoEndpointAdaptor-CkJENANP.cjs → HonoEndpointAdaptor-wMsCyMgt.cjs} +24 -23
  33. package/dist/HonoEndpointAdaptor-wMsCyMgt.cjs.map +1 -0
  34. package/dist/{Queue-DaxjwmOQ.d.cts → Queue-D6WeziRD.d.cts} +43 -4
  35. package/dist/Queue-D6WeziRD.d.cts.map +1 -0
  36. package/dist/{Queue-HBDf0fqz.d.mts → Queue-DpUeqdC8.d.mts} +43 -4
  37. package/dist/Queue-DpUeqdC8.d.mts.map +1 -0
  38. package/dist/{Subscriber-B69ngPwl.d.cts → Subscriber-4rBJgDKI.d.mts} +9 -4
  39. package/dist/{Subscriber-B69ngPwl.d.cts.map → Subscriber-4rBJgDKI.d.mts.map} +1 -1
  40. package/dist/{Subscriber-D8Xm-86W.d.mts → Subscriber-DVQowdyj.d.cts} +11 -6
  41. package/dist/Subscriber-DVQowdyj.d.cts.map +1 -0
  42. package/dist/{Topic-C5ZMfveW.d.cts → Topic-Ohx9dvWr.d.cts} +33 -2
  43. package/dist/Topic-Ohx9dvWr.d.cts.map +1 -0
  44. package/dist/{Topic-DT10AqHk.d.mts → Topic-cmy2jOUy.d.mts} +33 -2
  45. package/dist/Topic-cmy2jOUy.d.mts.map +1 -0
  46. package/dist/adaptors/aws.cjs +39 -26
  47. package/dist/adaptors/aws.cjs.map +1 -1
  48. package/dist/adaptors/aws.d.cts +24 -16
  49. package/dist/adaptors/aws.d.cts.map +1 -1
  50. package/dist/adaptors/aws.d.mts +25 -17
  51. package/dist/adaptors/aws.d.mts.map +1 -1
  52. package/dist/adaptors/aws.mjs +26 -14
  53. package/dist/adaptors/aws.mjs.map +1 -1
  54. package/dist/adaptors/hono.cjs +9 -6
  55. package/dist/adaptors/hono.d.cts +7 -6
  56. package/dist/adaptors/hono.d.cts.map +1 -1
  57. package/dist/adaptors/hono.d.mts +8 -7
  58. package/dist/adaptors/hono.d.mts.map +1 -1
  59. package/dist/adaptors/hono.mjs +9 -6
  60. package/dist/adaptors/testing.cjs +18 -14
  61. package/dist/adaptors/testing.cjs.map +1 -1
  62. package/dist/adaptors/testing.d.cts +7 -6
  63. package/dist/adaptors/testing.d.cts.map +1 -1
  64. package/dist/adaptors/testing.d.mts +11 -10
  65. package/dist/adaptors/testing.d.mts.map +1 -1
  66. package/dist/adaptors/testing.mjs +10 -7
  67. package/dist/adaptors/testing.mjs.map +1 -1
  68. package/dist/auth.cjs +165 -0
  69. package/dist/auth.cjs.map +1 -0
  70. package/dist/auth.d.cts +108 -0
  71. package/dist/auth.d.cts.map +1 -0
  72. package/dist/auth.d.mts +108 -0
  73. package/dist/auth.d.mts.map +1 -0
  74. package/dist/auth.mjs +164 -0
  75. package/dist/auth.mjs.map +1 -0
  76. package/dist/cache-0ANvRQnD.mjs +51 -0
  77. package/dist/cache-0ANvRQnD.mjs.map +1 -0
  78. package/dist/cache-3WSvAulx.cjs +57 -0
  79. package/dist/cache-3WSvAulx.cjs.map +1 -0
  80. package/dist/cache-CdQ7OLpR.d.cts +47 -0
  81. package/dist/cache-CdQ7OLpR.d.cts.map +1 -0
  82. package/dist/cache-DYoJFcfd.d.mts +47 -0
  83. package/dist/cache-DYoJFcfd.d.mts.map +1 -0
  84. package/dist/cache.cjs +3 -0
  85. package/dist/cache.d.cts +3 -0
  86. package/dist/cache.d.mts +3 -0
  87. package/dist/cache.mjs +3 -0
  88. package/dist/chunk-DWy1uDak.cjs +39 -0
  89. package/dist/clone-DblgEZZa.mjs +39 -0
  90. package/dist/clone-DblgEZZa.mjs.map +1 -0
  91. package/dist/clone-Dy0cR2SZ.cjs +45 -0
  92. package/dist/clone-Dy0cR2SZ.cjs.map +1 -0
  93. package/dist/construct-interface-BfjcOD_E.cjs +117 -0
  94. package/dist/construct-interface-BfjcOD_E.cjs.map +1 -0
  95. package/dist/construct-interface-BqwRNYA2.d.mts +131 -0
  96. package/dist/construct-interface-BqwRNYA2.d.mts.map +1 -0
  97. package/dist/construct-interface-D2nNkHUN.d.cts +131 -0
  98. package/dist/construct-interface-D2nNkHUN.d.cts.map +1 -0
  99. package/dist/construct-interface-Z4CpS8tK.mjs +81 -0
  100. package/dist/construct-interface-Z4CpS8tK.mjs.map +1 -0
  101. package/dist/construct-interface.cjs +8 -0
  102. package/dist/construct-interface.d.cts +2 -0
  103. package/dist/construct-interface.d.mts +2 -0
  104. package/dist/construct-interface.mjs +3 -0
  105. package/dist/credential.cjs +96 -0
  106. package/dist/credential.cjs.map +1 -0
  107. package/dist/credential.d.cts +61 -0
  108. package/dist/credential.d.cts.map +1 -0
  109. package/dist/credential.d.mts +61 -0
  110. package/dist/credential.d.mts.map +1 -0
  111. package/dist/credential.mjs +94 -0
  112. package/dist/credential.mjs.map +1 -0
  113. package/dist/crons/index.cjs +39 -37
  114. package/dist/crons/index.cjs.map +1 -1
  115. package/dist/crons/index.d.cts +21 -8
  116. package/dist/crons/index.d.cts.map +1 -1
  117. package/dist/crons/index.d.mts +29 -13
  118. package/dist/crons/index.d.mts.map +1 -1
  119. package/dist/crons/index.mjs +37 -36
  120. package/dist/crons/index.mjs.map +1 -1
  121. package/dist/database/kysely.cjs +181 -0
  122. package/dist/database/kysely.cjs.map +1 -0
  123. package/dist/database/kysely.d.cts +152 -0
  124. package/dist/database/kysely.d.cts.map +1 -0
  125. package/dist/database/kysely.d.mts +152 -0
  126. package/dist/database/kysely.d.mts.map +1 -0
  127. package/dist/database/kysely.mjs +180 -0
  128. package/dist/database/kysely.mjs.map +1 -0
  129. package/dist/email.cjs +59 -0
  130. package/dist/email.cjs.map +1 -0
  131. package/dist/email.d.cts +50 -0
  132. package/dist/email.d.cts.map +1 -0
  133. package/dist/email.d.mts +50 -0
  134. package/dist/email.d.mts.map +1 -0
  135. package/dist/email.mjs +58 -0
  136. package/dist/email.mjs.map +1 -0
  137. package/dist/endpoints/index.cjs +21 -747
  138. package/dist/endpoints/index.d.cts +7 -343
  139. package/dist/endpoints/index.d.mts +7 -342
  140. package/dist/endpoints/index.mjs +11 -738
  141. package/dist/file-server.cjs +154 -0
  142. package/dist/file-server.cjs.map +1 -0
  143. package/dist/file-server.d.cts +156 -0
  144. package/dist/file-server.d.cts.map +1 -0
  145. package/dist/file-server.d.mts +156 -0
  146. package/dist/file-server.d.mts.map +1 -0
  147. package/dist/file-server.mjs +152 -0
  148. package/dist/file-server.mjs.map +1 -0
  149. package/dist/functions/index.cjs +4 -2
  150. package/dist/functions/index.d.cts +3 -2
  151. package/dist/functions/index.d.mts +3 -2
  152. package/dist/functions/index.mjs +4 -2
  153. package/dist/{functions-B-qt91O7.mjs → functions-CvT_q7Y4.mjs} +55 -51
  154. package/dist/functions-CvT_q7Y4.mjs.map +1 -0
  155. package/dist/{functions-C8i1kCMM.cjs → functions-DukjG8ov.cjs} +62 -57
  156. package/dist/functions-DukjG8ov.cjs.map +1 -0
  157. package/dist/index-7OcOWe75.d.cts +419 -0
  158. package/dist/index-7OcOWe75.d.cts.map +1 -0
  159. package/dist/index-Bt-F7u8L.d.mts +419 -0
  160. package/dist/index-Bt-F7u8L.d.mts.map +1 -0
  161. package/dist/{index-DP6fqv0I.d.mts → index-CPeqtKgq.d.mts} +48 -19
  162. package/dist/index-CPeqtKgq.d.mts.map +1 -0
  163. package/dist/{index-BGeTScmi.d.cts → index-Dadljnh_.d.cts} +36 -9
  164. package/dist/index-Dadljnh_.d.cts.map +1 -0
  165. package/dist/index.cjs +1 -1
  166. package/dist/index.d.cts +3 -3
  167. package/dist/index.d.mts +3 -3
  168. package/dist/index.mjs +1 -1
  169. package/dist/lazyAccessors-DM6HcXQk.mjs +175 -0
  170. package/dist/lazyAccessors-DM6HcXQk.mjs.map +1 -0
  171. package/dist/lazyAccessors-DrJj8NpA.cjs +223 -0
  172. package/dist/lazyAccessors-DrJj8NpA.cjs.map +1 -0
  173. package/dist/object-storage.cjs +48 -0
  174. package/dist/object-storage.cjs.map +1 -0
  175. package/dist/object-storage.d.cts +36 -0
  176. package/dist/object-storage.d.cts.map +1 -0
  177. package/dist/object-storage.d.mts +36 -0
  178. package/dist/object-storage.d.mts.map +1 -0
  179. package/dist/object-storage.mjs +47 -0
  180. package/dist/object-storage.mjs.map +1 -0
  181. package/dist/{processAudits-CKjjivyz.cjs → processAudits-Bc8rz6Ev.cjs} +3 -3
  182. package/dist/{processAudits-CKjjivyz.cjs.map → processAudits-Bc8rz6Ev.cjs.map} +1 -1
  183. package/dist/{processAudits-ySnizdMG.mjs → processAudits-D89tICM4.mjs} +1 -1
  184. package/dist/{processAudits-ySnizdMG.mjs.map → processAudits-D89tICM4.mjs.map} +1 -1
  185. package/dist/{publisher-BrFOF847.mjs → publisher-CGEo8UKD.mjs} +1 -1
  186. package/dist/{publisher-BrFOF847.mjs.map → publisher-CGEo8UKD.mjs.map} +1 -1
  187. package/dist/{publisher-lFQleddL.cjs → publisher-CqGsXB2X.cjs} +1 -1
  188. package/dist/{publisher-lFQleddL.cjs.map → publisher-CqGsXB2X.cjs.map} +1 -1
  189. package/dist/queue/index.cjs +92 -30
  190. package/dist/queue/index.cjs.map +1 -1
  191. package/dist/queue/index.d.cts +19 -4
  192. package/dist/queue/index.d.cts.map +1 -1
  193. package/dist/queue/index.d.mts +22 -6
  194. package/dist/queue/index.d.mts.map +1 -1
  195. package/dist/queue/index.mjs +90 -29
  196. package/dist/queue/index.mjs.map +1 -1
  197. package/dist/rest-api.cjs +187 -0
  198. package/dist/rest-api.cjs.map +1 -0
  199. package/dist/rest-api.d.cts +221 -0
  200. package/dist/rest-api.d.cts.map +1 -0
  201. package/dist/rest-api.d.mts +221 -0
  202. package/dist/rest-api.d.mts.map +1 -0
  203. package/dist/rest-api.mjs +186 -0
  204. package/dist/rest-api.mjs.map +1 -0
  205. package/dist/site.cjs +48 -0
  206. package/dist/site.cjs.map +1 -0
  207. package/dist/site.d.cts +101 -0
  208. package/dist/site.d.cts.map +1 -0
  209. package/dist/site.d.mts +101 -0
  210. package/dist/site.d.mts.map +1 -0
  211. package/dist/site.mjs +47 -0
  212. package/dist/site.mjs.map +1 -0
  213. package/dist/subscribers/index.cjs +35 -27
  214. package/dist/subscribers/index.cjs.map +1 -1
  215. package/dist/subscribers/index.d.cts +20 -5
  216. package/dist/subscribers/index.d.cts.map +1 -1
  217. package/dist/subscribers/index.d.mts +23 -7
  218. package/dist/subscribers/index.d.mts.map +1 -1
  219. package/dist/subscribers/index.mjs +34 -27
  220. package/dist/subscribers/index.mjs.map +1 -1
  221. package/dist/surfaceEnv-BFXEms2f.cjs +39 -0
  222. package/dist/surfaceEnv-BFXEms2f.cjs.map +1 -0
  223. package/dist/surfaceEnv-C3Ktahea.mjs +27 -0
  224. package/dist/surfaceEnv-C3Ktahea.mjs.map +1 -0
  225. package/dist/{telemetry-3vdxGn4q.d.mts → telemetry-C3L0iS28.d.cts} +2 -2
  226. package/dist/{telemetry-3vdxGn4q.d.mts.map → telemetry-C3L0iS28.d.cts.map} +1 -1
  227. package/dist/{telemetry-Dqx-D3F7.d.cts → telemetry-D7bVFLGi.d.mts} +2 -2
  228. package/dist/{telemetry-Dqx-D3F7.d.cts.map → telemetry-D7bVFLGi.d.mts.map} +1 -1
  229. package/dist/topic/index.cjs +56 -13
  230. package/dist/topic/index.cjs.map +1 -1
  231. package/dist/topic/index.d.cts +2 -2
  232. package/dist/topic/index.d.cts.map +1 -1
  233. package/dist/topic/index.d.mts +2 -2
  234. package/dist/topic/index.d.mts.map +1 -1
  235. package/dist/topic/index.mjs +54 -12
  236. package/dist/topic/index.mjs.map +1 -1
  237. package/dist/{types-BDNGr7pv.d.mts → types-BlAkSuGI.d.cts} +1 -1
  238. package/dist/{types-BDNGr7pv.d.mts.map → types-BlAkSuGI.d.cts.map} +1 -1
  239. package/dist/{types-BdAaYDvd.d.cts → types-aKksMEWL.d.mts} +1 -1
  240. package/dist/{types-BdAaYDvd.d.cts.map → types-aKksMEWL.d.mts.map} +1 -1
  241. package/dist/types.d.cts +1 -1
  242. package/dist/types.d.mts +1 -1
  243. package/package.json +155 -23
  244. package/CHANGELOG.md +0 -366
  245. package/dist/Construct-DCMuYOox.d.mts.map +0 -1
  246. package/dist/Construct-_1wX7p_Y.d.cts.map +0 -1
  247. package/dist/Construct-r0U2zBwW.mjs.map +0 -1
  248. package/dist/Construct-vXMZJgRp.cjs.map +0 -1
  249. package/dist/Endpoint-CAzNbDEt.d.cts.map +0 -1
  250. package/dist/Endpoint-CLPSIl6S.d.mts.map +0 -1
  251. package/dist/HonoEndpointAdaptor-CkJENANP.cjs.map +0 -1
  252. package/dist/HonoEndpointAdaptor-DJDT3PMx.mjs.map +0 -1
  253. package/dist/Queue-DaxjwmOQ.d.cts.map +0 -1
  254. package/dist/Queue-HBDf0fqz.d.mts.map +0 -1
  255. package/dist/Subscriber-D8Xm-86W.d.mts.map +0 -1
  256. package/dist/Topic-C5ZMfveW.d.cts.map +0 -1
  257. package/dist/Topic-DT10AqHk.d.mts.map +0 -1
  258. package/dist/endpoints/index.cjs.map +0 -1
  259. package/dist/endpoints/index.d.cts.map +0 -1
  260. package/dist/endpoints/index.d.mts.map +0 -1
  261. package/dist/endpoints/index.mjs.map +0 -1
  262. package/dist/functions-B-qt91O7.mjs.map +0 -1
  263. package/dist/functions-C8i1kCMM.cjs.map +0 -1
  264. package/dist/index-BGeTScmi.d.cts.map +0 -1
  265. package/dist/index-DP6fqv0I.d.mts.map +0 -1
  266. package/dist/lazyAccessors-DfqZR6C4.mjs.map +0 -1
  267. package/dist/lazyAccessors-DmTG8sQH.cjs.map +0 -1
  268. package/src/Construct.ts +0 -204
  269. package/src/__benchmarks__/build-time-optimization.bench.ts +0 -274
  270. package/src/__benchmarks__/endpoint.bench.ts +0 -494
  271. package/src/__benchmarks__/fixtures.ts +0 -241
  272. package/src/__benchmarks__/hono-adaptor.bench.ts +0 -533
  273. package/src/__benchmarks__/hono-server.bench.ts +0 -249
  274. package/src/__benchmarks__/response-builder.bench.ts +0 -428
  275. package/src/__benchmarks__/strategies/strategy-a-lazy-services.ts +0 -319
  276. package/src/__benchmarks__/strategies/strategy-c-middleware.ts +0 -530
  277. package/src/__benchmarks__/strategies/strategy-d-opt-in-events.ts +0 -567
  278. package/src/__tests__/Construct.environment.spec.ts +0 -704
  279. package/src/__tests__/publisher.setting.spec.ts +0 -508
  280. package/src/__tests__/publisher.spec.ts +0 -452
  281. package/src/adaptors/aws.ts +0 -6
  282. package/src/adaptors/hono.ts +0 -1
  283. package/src/adaptors/testing.ts +0 -11
  284. package/src/crons/AWSScheduledFunction.ts +0 -73
  285. package/src/crons/Cron.ts +0 -149
  286. package/src/crons/CronBuilder.ts +0 -271
  287. package/src/crons/__tests__/AWSScheduledFunction.spec.ts +0 -152
  288. package/src/crons/__tests__/Cron.spec.ts +0 -464
  289. package/src/crons/__tests__/CronBuilder.state-isolation.spec.ts +0 -227
  290. package/src/crons/index.ts +0 -12
  291. package/src/endpoints/AmazonApiGatewayEndpointAdaptor.ts +0 -677
  292. package/src/endpoints/AmazonApiGatewayV1EndpointAdaptor.ts +0 -105
  293. package/src/endpoints/AmazonApiGatewayV2EndpointAdaptor.ts +0 -97
  294. package/src/endpoints/Authorizer.ts +0 -152
  295. package/src/endpoints/Endpoint.ts +0 -1287
  296. package/src/endpoints/EndpointBuilder.ts +0 -758
  297. package/src/endpoints/EndpointFactory.ts +0 -1148
  298. package/src/endpoints/HonoEndpointAdaptor.ts +0 -677
  299. package/src/endpoints/MswEndpointAdaptor.ts +0 -226
  300. package/src/endpoints/TestEndpointAdaptor.ts +0 -422
  301. package/src/endpoints/__tests__/AmazonApiGatewayV1EndpointAdaptor.audits.spec.ts +0 -499
  302. package/src/endpoints/__tests__/AmazonApiGatewayV1EndpointAdaptor.events.spec.ts +0 -560
  303. package/src/endpoints/__tests__/AmazonApiGatewayV1EndpointAdaptor.spec.ts +0 -1304
  304. package/src/endpoints/__tests__/AmazonApiGatewayV2EndpointAdaptor.audits.spec.ts +0 -626
  305. package/src/endpoints/__tests__/AmazonApiGatewayV2EndpointAdaptor.events.spec.ts +0 -732
  306. package/src/endpoints/__tests__/AmazonApiGatewayV2EndpointAdaptor.factory-publisher.spec.ts +0 -296
  307. package/src/endpoints/__tests__/AmazonApiGatewayV2EndpointAdaptor.kysely-audit.integration.spec.ts +0 -951
  308. package/src/endpoints/__tests__/AmazonApiGatewayV2EndpointAdaptor.responseType.spec.ts +0 -111
  309. package/src/endpoints/__tests__/AmazonApiGatewayV2EndpointAdaptor.rls.spec.ts +0 -307
  310. package/src/endpoints/__tests__/AmazonApiGatewayV2EndpointAdaptor.spec.ts +0 -629
  311. package/src/endpoints/__tests__/Authorizer.spec.ts +0 -286
  312. package/src/endpoints/__tests__/Endpoint.cookies.spec.ts +0 -207
  313. package/src/endpoints/__tests__/Endpoint.headers.spec.ts +0 -187
  314. package/src/endpoints/__tests__/Endpoint.manifest.spec.ts +0 -175
  315. package/src/endpoints/__tests__/Endpoint.spec.ts +0 -857
  316. package/src/endpoints/__tests__/EndpointBuilder.audit.spec.ts +0 -448
  317. package/src/endpoints/__tests__/EndpointBuilder.responseType.spec.ts +0 -47
  318. package/src/endpoints/__tests__/EndpointBuilder.spec.ts +0 -523
  319. package/src/endpoints/__tests__/EndpointFactory.authorizers.spec.ts +0 -492
  320. package/src/endpoints/__tests__/EndpointFactory.database-auditor.spec.ts +0 -509
  321. package/src/endpoints/__tests__/EndpointFactory.reference-audit.spec.ts +0 -190
  322. package/src/endpoints/__tests__/EndpointFactory.spec.ts +0 -479
  323. package/src/endpoints/__tests__/EndpointFactory.state-isolation.spec.ts +0 -155
  324. package/src/endpoints/__tests__/HonoEndpointAdaptor.audit-transactions.spec.ts +0 -703
  325. package/src/endpoints/__tests__/HonoEndpointAdaptor.audits.spec.ts +0 -632
  326. package/src/endpoints/__tests__/HonoEndpointAdaptor.events.spec.ts +0 -577
  327. package/src/endpoints/__tests__/HonoEndpointAdaptor.kysely-audit.integration.spec.ts +0 -1067
  328. package/src/endpoints/__tests__/HonoEndpointAdaptor.openapi.spec.ts +0 -317
  329. package/src/endpoints/__tests__/HonoEndpointAdaptor.pgboss-publisher.spec.ts +0 -289
  330. package/src/endpoints/__tests__/HonoEndpointAdaptor.responseType.spec.ts +0 -128
  331. package/src/endpoints/__tests__/HonoEndpointAdaptor.spec.ts +0 -1207
  332. package/src/endpoints/__tests__/MswEndpointAdaptor.spec.ts +0 -211
  333. package/src/endpoints/__tests__/ResponseBuilder.spec.ts +0 -235
  334. package/src/endpoints/__tests__/TestEndpointAdaptor.audits.spec.ts +0 -602
  335. package/src/endpoints/__tests__/TestEndpointAdaptor.spec.ts +0 -1044
  336. package/src/endpoints/__tests__/__snapshots__/HonoEndpointAdaptor.spec.ts.snap +0 -54
  337. package/src/endpoints/__tests__/endpoint-types.test.ts +0 -88
  338. package/src/endpoints/__tests__/helpers.spec.ts +0 -37
  339. package/src/endpoints/__tests__/lazyAccessors.spec.ts +0 -330
  340. package/src/endpoints/__tests__/processAudits.spec.ts +0 -631
  341. package/src/endpoints/audit.ts +0 -87
  342. package/src/endpoints/helpers.ts +0 -98
  343. package/src/endpoints/index.ts +0 -42
  344. package/src/endpoints/lazyAccessors.ts +0 -241
  345. package/src/endpoints/parseHonoQuery.ts +0 -16
  346. package/src/endpoints/parseQueryParams.ts +0 -32
  347. package/src/endpoints/processAudits.ts +0 -371
  348. package/src/endpoints/rls.ts +0 -67
  349. package/src/functions/AWSLambdaFunction.ts +0 -348
  350. package/src/functions/BaseFunctionBuilder.ts +0 -201
  351. package/src/functions/Function.ts +0 -238
  352. package/src/functions/FunctionBuilder.ts +0 -391
  353. package/src/functions/FunctionExecutionWrapper.ts +0 -216
  354. package/src/functions/TestFunctionAdaptor.ts +0 -217
  355. package/src/functions/__tests__/AWSLambdaFunctionAdaptor.spec.ts +0 -513
  356. package/src/functions/__tests__/Function.audits.spec.ts +0 -393
  357. package/src/functions/__tests__/Function.spec.ts +0 -477
  358. package/src/functions/__tests__/FunctionBuilder.state-isolation.spec.ts +0 -207
  359. package/src/functions/__tests__/TestFunctionAdaptor.spec.ts +0 -480
  360. package/src/functions/index.ts +0 -12
  361. package/src/index.ts +0 -23
  362. package/src/publisher.ts +0 -93
  363. package/src/queue/AWSLambdaQueueAdaptor.ts +0 -162
  364. package/src/queue/Queue.ts +0 -128
  365. package/src/queue/QueueBuilder.ts +0 -115
  366. package/src/queue/TestQueueAdaptor.ts +0 -63
  367. package/src/queue/__tests__/QueueBuilder.spec.ts +0 -137
  368. package/src/queue/index.ts +0 -12
  369. package/src/subscribers/AWSLambdaSubscriberAdaptor.ts +0 -342
  370. package/src/subscribers/Subscriber.ts +0 -117
  371. package/src/subscribers/SubscriberBuilder.ts +0 -186
  372. package/src/subscribers/TestSubscriberAdaptor.ts +0 -133
  373. package/src/subscribers/__tests__/AWSLambdaSubscriberAdaptor.spec.ts +0 -1018
  374. package/src/subscribers/__tests__/Subscriber.spec.ts +0 -430
  375. package/src/subscribers/__tests__/TestSubscriberAdaptor.spec.ts +0 -652
  376. package/src/subscribers/index.ts +0 -6
  377. package/src/telemetry.ts +0 -103
  378. package/src/topic/Topic.ts +0 -103
  379. package/src/topic/TopicBuilder.ts +0 -51
  380. package/src/topic/__tests__/TopicBuilder.spec.ts +0 -82
  381. package/src/topic/index.ts +0 -11
  382. package/src/types.ts +0 -13
  383. package/test.ts +0 -91
  384. package/tsconfig.json +0 -9
  385. package/tsdown.config.ts +0 -34
@@ -1,54 +0,0 @@
1
- // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
2
-
3
- exports[`HonoEndpointAdaptor > addRoute > should return 422 for invalid body 1`] = `
4
- [
5
- {
6
- "code": "too_small",
7
- "inclusive": true,
8
- "message": "Too small: expected string to have >=3 characters",
9
- "minimum": 3,
10
- "origin": "string",
11
- "path": [
12
- "name",
13
- ],
14
- },
15
- {
16
- "code": "invalid_type",
17
- "expected": "number",
18
- "message": "Invalid input: expected number, received string",
19
- "path": [
20
- "age",
21
- ],
22
- },
23
- ]
24
- `;
25
-
26
- exports[`HonoEndpointAdaptor > addRoute > should return 422 for invalid path parameters 1`] = `
27
- [
28
- {
29
- "code": "invalid_format",
30
- "format": "uuid",
31
- "message": "Invalid UUID",
32
- "origin": "string",
33
- "path": [
34
- "id",
35
- ],
36
- "pattern": "/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/",
37
- },
38
- ]
39
- `;
40
-
41
- exports[`HonoEndpointAdaptor > addRoute > should return 422 for invalid query parameters 1`] = `
42
- [
43
- {
44
- "code": "invalid_format",
45
- "format": "regex",
46
- "message": "Invalid string: must match pattern /^\\d+$/",
47
- "origin": "string",
48
- "path": [
49
- "page",
50
- ],
51
- "pattern": "/^\\d+$/",
52
- },
53
- ]
54
- `;
@@ -1,88 +0,0 @@
1
- import { describe, expectTypeOf, it } from 'vitest';
2
- import { z } from 'zod';
3
- import { e } from '../EndpointFactory';
4
-
5
- describe('Endpoint type inference', () => {
6
- it('should not include body/params/query when not defined', () => {
7
- const _endpoint = e.get('/test').handle((ctx) => {
8
- expectTypeOf(ctx).toHaveProperty('services');
9
- expectTypeOf(ctx).toHaveProperty('logger');
10
- expectTypeOf(ctx).toHaveProperty('header');
11
- expectTypeOf(ctx).toHaveProperty('session');
12
-
13
- // These should NOT exist
14
- expectTypeOf(ctx).not.toHaveProperty('body');
15
- expectTypeOf(ctx).not.toHaveProperty('params');
16
- expectTypeOf(ctx).not.toHaveProperty('query');
17
-
18
- return { success: true };
19
- });
20
- });
21
-
22
- it('should include body when defined', () => {
23
- const _endpoint = e
24
- .post('/test')
25
- .body(z.object({ name: z.string() }))
26
- .handle((ctx) => {
27
- expectTypeOf(ctx).toHaveProperty('body');
28
- expectTypeOf(ctx.body).toEqualTypeOf<{ name: string }>();
29
-
30
- // These should NOT exist
31
- expectTypeOf(ctx).not.toHaveProperty('params');
32
- expectTypeOf(ctx).not.toHaveProperty('query');
33
-
34
- return { success: true };
35
- });
36
- });
37
-
38
- it('should include params when defined', () => {
39
- const _endpoint = e
40
- .get('/test/:id')
41
- .params(z.object({ id: z.string() }))
42
- .handle((ctx) => {
43
- expectTypeOf(ctx).toHaveProperty('params');
44
- expectTypeOf(ctx.params).toEqualTypeOf<{ id: string }>();
45
-
46
- // These should NOT exist
47
- expectTypeOf(ctx).not.toHaveProperty('body');
48
- expectTypeOf(ctx).not.toHaveProperty('query');
49
-
50
- return { success: true };
51
- });
52
- });
53
-
54
- it('should include query when defined', () => {
55
- const _endpoint = e
56
- .get('/test')
57
- .query(z.object({ filter: z.string() }))
58
- .handle((ctx) => {
59
- expectTypeOf(ctx).toHaveProperty('query');
60
- expectTypeOf(ctx.query).toEqualTypeOf<{ filter: string }>();
61
-
62
- // These should NOT exist
63
- expectTypeOf(ctx).not.toHaveProperty('body');
64
- expectTypeOf(ctx).not.toHaveProperty('params');
65
-
66
- return { success: true };
67
- });
68
- });
69
-
70
- it('should include all properties when all are defined', () => {
71
- const _endpoint = e
72
- .post('/test/:id')
73
- .body(z.object({ name: z.string() }))
74
- .params(z.object({ id: z.string() }))
75
- .query(z.object({ filter: z.string() }))
76
- .handle((ctx) => {
77
- expectTypeOf(ctx).toHaveProperty('body');
78
- expectTypeOf(ctx).toHaveProperty('params');
79
- expectTypeOf(ctx).toHaveProperty('query');
80
-
81
- expectTypeOf(ctx.body).toEqualTypeOf<{ name: string }>();
82
- expectTypeOf(ctx.params).toEqualTypeOf<{ id: string }>();
83
- expectTypeOf(ctx.query).toEqualTypeOf<{ filter: string }>();
84
-
85
- return { success: true };
86
- });
87
- });
88
- });
@@ -1,37 +0,0 @@
1
- import path from 'node:path';
2
- import { describe, expect, it } from 'vitest';
3
- import { getProjectRoot } from '../helpers';
4
-
5
- describe('helpers', () => {
6
- describe('getProjectRoot', () => {
7
- it('should find project root from current directory', async () => {
8
- const cwd = process.cwd();
9
- const root = await getProjectRoot(cwd);
10
- // Should find the toolbox root which has pnpm-lock.yaml
11
- expect(root).toBe(cwd);
12
- });
13
-
14
- it('should find project root from nested directory', async () => {
15
- const cwd = process.cwd();
16
- const nested = path.join(cwd, 'packages', 'constructs', 'src');
17
- const root = await getProjectRoot(nested);
18
- // Should find the toolbox root
19
- expect(root).toBe(cwd);
20
- });
21
-
22
- it('should return root when reaching filesystem root', async () => {
23
- // This tests the base case - when we reach '/', return '/'
24
- const root = await getProjectRoot('/');
25
- expect(root).toBe('/');
26
- });
27
-
28
- it('should handle directory with no lock file', async () => {
29
- // Create a temp directory path that definitely has no lock file
30
- // It should traverse up until it finds one or reaches root
31
- const tempPath = '/tmp/test-no-lock-file-12345';
32
- const root = await getProjectRoot(tempPath);
33
- // Should eventually reach '/' or find a project root
34
- expect(typeof root).toBe('string');
35
- });
36
- });
37
- });
@@ -1,330 +0,0 @@
1
- import { describe, expect, it } from 'vitest';
2
- import {
3
- createApiGatewayCookies,
4
- createApiGatewayHeaders,
5
- createCookieHeaderAccessor,
6
- createNoopCookies,
7
- createNoopHeaders,
8
- createObjectHeaders,
9
- } from '../lazyAccessors';
10
-
11
- describe('lazyAccessors', () => {
12
- describe('createApiGatewayHeaders', () => {
13
- it('should return undefined for single key lookup with null headers', () => {
14
- const header = createApiGatewayHeaders(null);
15
- expect(header('content-type')).toBeUndefined();
16
- });
17
-
18
- it('should return undefined for single key lookup with undefined headers', () => {
19
- const header = createApiGatewayHeaders(undefined);
20
- expect(header('content-type')).toBeUndefined();
21
- });
22
-
23
- it('should return empty object for all headers when headers is null', () => {
24
- const header = createApiGatewayHeaders(null);
25
- expect(header()).toEqual({});
26
- });
27
-
28
- it('should return header value for direct key lookup', () => {
29
- const header = createApiGatewayHeaders({
30
- 'content-type': 'application/json',
31
- authorization: 'Bearer token',
32
- });
33
- expect(header('content-type')).toBe('application/json');
34
- expect(header('authorization')).toBe('Bearer token');
35
- });
36
-
37
- it('should handle case-insensitive lookups', () => {
38
- const header = createApiGatewayHeaders({
39
- 'Content-Type': 'application/json',
40
- });
41
- expect(header('content-type')).toBe('application/json');
42
- expect(header('CONTENT-TYPE')).toBe('application/json');
43
- });
44
-
45
- it('should return all headers normalized to lowercase', () => {
46
- const header = createApiGatewayHeaders({
47
- 'Content-Type': 'application/json',
48
- Authorization: 'Bearer token',
49
- });
50
- const all = header();
51
- expect(all).toEqual({
52
- 'content-type': 'application/json',
53
- authorization: 'Bearer token',
54
- });
55
- });
56
-
57
- it('should cache normalized headers', () => {
58
- const headers = {
59
- 'Content-Type': 'application/json',
60
- };
61
- const header = createApiGatewayHeaders(headers);
62
-
63
- // First call should normalize
64
- const first = header();
65
- // Second call should return cached
66
- const second = header();
67
-
68
- expect(first).toBe(second);
69
- });
70
-
71
- it('should skip undefined header values', () => {
72
- const header = createApiGatewayHeaders({
73
- 'content-type': 'application/json',
74
- 'x-custom': undefined,
75
- });
76
- const all = header();
77
- expect(all).toEqual({
78
- 'content-type': 'application/json',
79
- });
80
- expect(header('x-custom')).toBeUndefined();
81
- });
82
-
83
- it('should handle mixed case lookups with fallback to normalized', () => {
84
- const header = createApiGatewayHeaders({
85
- 'X-Custom-Header': 'value',
86
- });
87
- // Direct lookup fails, fallback to normalized
88
- expect(header('x-custom-header')).toBe('value');
89
- });
90
- });
91
-
92
- describe('createApiGatewayCookies', () => {
93
- it('should parse cookies from array format (API Gateway v2)', () => {
94
- const cookie = createApiGatewayCookies(
95
- ['session=abc123', 'user=john'],
96
- undefined,
97
- );
98
- expect(cookie('session')).toBe('abc123');
99
- expect(cookie('user')).toBe('john');
100
- });
101
-
102
- it('should return all cookies when called without arguments', () => {
103
- const cookie = createApiGatewayCookies(
104
- ['session=abc123', 'user=john'],
105
- undefined,
106
- );
107
- expect(cookie()).toEqual({
108
- session: 'abc123',
109
- user: 'john',
110
- });
111
- });
112
-
113
- it('should fall back to cookie header when cookies array is undefined', () => {
114
- const cookie = createApiGatewayCookies(
115
- undefined,
116
- 'session=abc123; user=john',
117
- );
118
- expect(cookie('session')).toBe('abc123');
119
- expect(cookie('user')).toBe('john');
120
- });
121
-
122
- it('should decode URL-encoded values', () => {
123
- const cookie = createApiGatewayCookies(
124
- ['name=John%20Doe', 'path=%2Fhome'],
125
- undefined,
126
- );
127
- expect(cookie('name')).toBe('John Doe');
128
- expect(cookie('path')).toBe('/home');
129
- });
130
-
131
- it('should decode URL-encoded values from cookie header', () => {
132
- const cookie = createApiGatewayCookies(
133
- undefined,
134
- 'name=John%20Doe; path=%2Fhome',
135
- );
136
- expect(cookie('name')).toBe('John Doe');
137
- expect(cookie('path')).toBe('/home');
138
- });
139
-
140
- it('should return undefined for missing cookie', () => {
141
- const cookie = createApiGatewayCookies(['session=abc123'], undefined);
142
- expect(cookie('missing')).toBeUndefined();
143
- });
144
-
145
- it('should return empty object when no cookies present', () => {
146
- const cookie = createApiGatewayCookies(undefined, undefined);
147
- expect(cookie()).toEqual({});
148
- });
149
-
150
- it('should cache parsed cookies', () => {
151
- const cookie = createApiGatewayCookies(['session=abc123'], undefined);
152
- const first = cookie();
153
- const second = cookie();
154
- expect(first).toBe(second);
155
- });
156
-
157
- it('should skip malformed cookies in array', () => {
158
- const cookie = createApiGatewayCookies(
159
- ['valid=value', 'malformed', '=nokey'],
160
- undefined,
161
- );
162
- expect(cookie()).toEqual({
163
- valid: 'value',
164
- });
165
- });
166
-
167
- it('should skip malformed cookies in header', () => {
168
- const cookie = createApiGatewayCookies(
169
- undefined,
170
- 'valid=value; malformed; =nokey',
171
- );
172
- expect(cookie()).toEqual({
173
- valid: 'value',
174
- });
175
- });
176
- });
177
-
178
- describe('createObjectHeaders', () => {
179
- it('should return header value for direct lookup', () => {
180
- const header = createObjectHeaders({
181
- 'content-type': 'application/json',
182
- });
183
- expect(header('content-type')).toBe('application/json');
184
- });
185
-
186
- it('should handle case-insensitive lookups', () => {
187
- const header = createObjectHeaders({
188
- 'Content-Type': 'application/json',
189
- });
190
- expect(header('content-type')).toBe('application/json');
191
- expect(header('CONTENT-TYPE')).toBe('application/json');
192
- });
193
-
194
- it('should return all headers when called without arguments', () => {
195
- const header = createObjectHeaders({
196
- 'Content-Type': 'application/json',
197
- Authorization: 'Bearer token',
198
- });
199
- expect(header()).toEqual({
200
- 'content-type': 'application/json',
201
- authorization: 'Bearer token',
202
- });
203
- });
204
-
205
- it('should return undefined for missing header', () => {
206
- const header = createObjectHeaders({
207
- 'content-type': 'application/json',
208
- });
209
- expect(header('missing')).toBeUndefined();
210
- });
211
-
212
- it('should return empty object for undefined headers', () => {
213
- const header = createObjectHeaders(undefined);
214
- expect(header()).toEqual({});
215
- });
216
-
217
- it('should return undefined for key lookup with undefined headers', () => {
218
- const header = createObjectHeaders(undefined);
219
- expect(header('content-type')).toBeUndefined();
220
- });
221
-
222
- it('should cache normalized headers', () => {
223
- const header = createObjectHeaders({
224
- 'Content-Type': 'application/json',
225
- });
226
- const first = header();
227
- const second = header();
228
- expect(first).toBe(second);
229
- });
230
-
231
- it('should normalize headers on single key lookup that requires fallback', () => {
232
- const header = createObjectHeaders({
233
- 'X-Custom': 'value',
234
- });
235
- // First lookup triggers normalization
236
- expect(header('x-custom')).toBe('value');
237
- // Subsequent lookups use cached normalized version
238
- expect(header('X-CUSTOM')).toBe('value');
239
- });
240
- });
241
-
242
- describe('createCookieHeaderAccessor', () => {
243
- it('should parse cookies from header string', () => {
244
- const cookie = createCookieHeaderAccessor('session=abc123; user=john');
245
- expect(cookie('session')).toBe('abc123');
246
- expect(cookie('user')).toBe('john');
247
- });
248
-
249
- it('should return all cookies when called without arguments', () => {
250
- const cookie = createCookieHeaderAccessor('session=abc123; user=john');
251
- expect(cookie()).toEqual({
252
- session: 'abc123',
253
- user: 'john',
254
- });
255
- });
256
-
257
- it('should decode URL-encoded values', () => {
258
- const cookie = createCookieHeaderAccessor(
259
- 'name=John%20Doe; path=%2Fhome',
260
- );
261
- expect(cookie('name')).toBe('John Doe');
262
- expect(cookie('path')).toBe('/home');
263
- });
264
-
265
- it('should return undefined for missing cookie', () => {
266
- const cookie = createCookieHeaderAccessor('session=abc123');
267
- expect(cookie('missing')).toBeUndefined();
268
- });
269
-
270
- it('should return empty object for undefined cookie header', () => {
271
- const cookie = createCookieHeaderAccessor(undefined);
272
- expect(cookie()).toEqual({});
273
- });
274
-
275
- it('should cache parsed cookies', () => {
276
- const cookie = createCookieHeaderAccessor('session=abc123');
277
- const first = cookie();
278
- const second = cookie();
279
- expect(first).toBe(second);
280
- });
281
-
282
- it('should skip malformed cookies', () => {
283
- const cookie = createCookieHeaderAccessor(
284
- 'valid=value; malformed; =nokey',
285
- );
286
- expect(cookie()).toEqual({
287
- valid: 'value',
288
- });
289
- });
290
-
291
- it('should handle cookies with equals signs in value', () => {
292
- const cookie = createCookieHeaderAccessor('token=abc=def=ghi');
293
- expect(cookie('token')).toBe('abc=def=ghi');
294
- });
295
-
296
- it('should handle extra whitespace', () => {
297
- const cookie = createCookieHeaderAccessor(
298
- ' session=abc123 ; user=john ',
299
- );
300
- expect(cookie('session')).toBe('abc123');
301
- expect(cookie('user')).toBe('john');
302
- });
303
- });
304
-
305
- describe('createNoopHeaders', () => {
306
- it('should return undefined for any key lookup', () => {
307
- const header = createNoopHeaders();
308
- expect(header('content-type')).toBeUndefined();
309
- expect(header('any-header')).toBeUndefined();
310
- });
311
-
312
- it('should return empty object when called without arguments', () => {
313
- const header = createNoopHeaders();
314
- expect(header()).toEqual({});
315
- });
316
- });
317
-
318
- describe('createNoopCookies', () => {
319
- it('should return undefined for any name lookup', () => {
320
- const cookie = createNoopCookies();
321
- expect(cookie('session')).toBeUndefined();
322
- expect(cookie('any-cookie')).toBeUndefined();
323
- });
324
-
325
- it('should return empty object when called without arguments', () => {
326
- const cookie = createNoopCookies();
327
- expect(cookie()).toEqual({});
328
- });
329
- });
330
- });