@geekmidas/constructs 10.0.0-alpha.6 → 10.0.0-alpha.61
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.
- package/README.md +223 -158
- package/dist/{Construct-BD5neF7w.mjs → Construct-BO1X-kt9.mjs} +32 -33
- package/dist/Construct-BO1X-kt9.mjs.map +1 -0
- package/dist/Construct-BQALFCh2.d.cts +230 -0
- package/dist/Construct-BQALFCh2.d.cts.map +1 -0
- package/dist/{Construct-CyS3RpTL.cjs → Construct-DmvXceVY.cjs} +52 -47
- package/dist/Construct-DmvXceVY.cjs.map +1 -0
- package/dist/Construct-QXnl3VqT.d.mts +230 -0
- package/dist/Construct-QXnl3VqT.d.mts.map +1 -0
- package/dist/{Cron-DmQ8vQ4b.d.cts → Cron-DI3nKoic.d.cts} +15 -9
- package/dist/Cron-DI3nKoic.d.cts.map +1 -0
- package/dist/{Cron-dh4rUgib.d.mts → Cron-uYAHPnp7.d.mts} +15 -9
- package/dist/Cron-uYAHPnp7.d.mts.map +1 -0
- package/dist/{CronBuilder-Da0C0edR.cjs → CronBuilder-BoHzlWU_.cjs} +47 -31
- package/dist/CronBuilder-BoHzlWU_.cjs.map +1 -0
- package/dist/{CronBuilder-CYKT5RiO.mjs → CronBuilder-CCgt0wCE.mjs} +37 -21
- package/dist/CronBuilder-CCgt0wCE.mjs.map +1 -0
- package/dist/CronBuilder-DaSUm2Na.d.mts +47 -0
- package/dist/CronBuilder-DaSUm2Na.d.mts.map +1 -0
- package/dist/CronBuilder-g1lZLWyG.d.cts +47 -0
- package/dist/CronBuilder-g1lZLWyG.d.cts.map +1 -0
- package/dist/{Endpoint-BjWKinFA.d.mts → Endpoint-BJDBZBZu.d.mts} +75 -91
- package/dist/Endpoint-BJDBZBZu.d.mts.map +1 -0
- package/dist/{Endpoint-DCQPMdUX.mjs → Endpoint-CMWWrQ7u.mjs} +140 -109
- package/dist/Endpoint-CMWWrQ7u.mjs.map +1 -0
- package/dist/{Endpoint-dav89W6-.d.cts → Endpoint-DV3jK5sP.d.cts} +74 -90
- package/dist/Endpoint-DV3jK5sP.d.cts.map +1 -0
- package/dist/{Endpoint-DcWXE-SZ.cjs → Endpoint-DfiXTm_v.cjs} +168 -131
- package/dist/Endpoint-DfiXTm_v.cjs.map +1 -0
- package/dist/{EndpointFactory-CjV8F_lJ.mjs → EndpointFactory-7g4Dg6cW.mjs} +41 -75
- package/dist/EndpointFactory-7g4Dg6cW.mjs.map +1 -0
- package/dist/{EndpointFactory-CdWB7wPw.cjs → EndpointFactory-CLxrcS0O.cjs} +77 -111
- package/dist/EndpointFactory-CLxrcS0O.cjs.map +1 -0
- package/dist/{index-Bd5FqCoe.d.cts → EndpointFactory-CLzCLkLt.d.cts} +64 -133
- package/dist/EndpointFactory-CLzCLkLt.d.cts.map +1 -0
- package/dist/{index-lAO9egTb.d.mts → EndpointFactory-gaF4yRpP.d.mts} +65 -134
- package/dist/EndpointFactory-gaF4yRpP.d.mts.map +1 -0
- package/dist/Function-DuqGcbOI.d.mts +76 -0
- package/dist/Function-DuqGcbOI.d.mts.map +1 -0
- package/dist/Function-Pu-1kKZz.d.cts +76 -0
- package/dist/Function-Pu-1kKZz.d.cts.map +1 -0
- package/dist/{HonoEndpointAdaptor-DtL9j19R.cjs → HonoEndpointAdaptor-B22boEAR.cjs} +52 -54
- package/dist/HonoEndpointAdaptor-B22boEAR.cjs.map +1 -0
- package/dist/{HonoEndpointAdaptor-P1ahhZHu.mjs → HonoEndpointAdaptor-vY4JKG8i.mjs} +42 -47
- package/dist/HonoEndpointAdaptor-vY4JKG8i.mjs.map +1 -0
- package/dist/Queue-D5jcw0mu.cjs +109 -0
- package/dist/Queue-D5jcw0mu.cjs.map +1 -0
- package/dist/{Queue-D7ZuwBhy.d.cts → Queue-DlsHRzUp.d.mts} +48 -48
- package/dist/Queue-DlsHRzUp.d.mts.map +1 -0
- package/dist/{Queue-gVGfi2Yk.d.mts → Queue-HPyi0e1i.d.cts} +49 -49
- package/dist/Queue-HPyi0e1i.d.cts.map +1 -0
- package/dist/Queue-hwPN-t31.mjs +104 -0
- package/dist/Queue-hwPN-t31.mjs.map +1 -0
- package/dist/QueueBuilder-BFQn3OzZ.cjs +135 -0
- package/dist/QueueBuilder-BFQn3OzZ.cjs.map +1 -0
- package/dist/QueueBuilder-DCuYdjMw.mjs +118 -0
- package/dist/QueueBuilder-DCuYdjMw.mjs.map +1 -0
- package/dist/QueueBuilder-OSi6LkV9.d.cts +75 -0
- package/dist/QueueBuilder-OSi6LkV9.d.cts.map +1 -0
- package/dist/QueueBuilder-QHsnVt1P.d.mts +75 -0
- package/dist/QueueBuilder-QHsnVt1P.d.mts.map +1 -0
- package/dist/{Subscriber-2mEi0ImH.d.cts → Subscriber-Bpp02cGr.d.cts} +29 -20
- package/dist/Subscriber-Bpp02cGr.d.cts.map +1 -0
- package/dist/{Subscriber-xTJ9ayPN.d.mts → Subscriber-CtN9R48-.d.mts} +29 -20
- package/dist/Subscriber-CtN9R48-.d.mts.map +1 -0
- package/dist/{SubscriberBuilder-4OPehf2R.cjs → SubscriberBuilder-C2PwqwIl.cjs} +61 -36
- package/dist/SubscriberBuilder-C2PwqwIl.cjs.map +1 -0
- package/dist/SubscriberBuilder-CuCMFpYW.d.mts +67 -0
- package/dist/SubscriberBuilder-CuCMFpYW.d.mts.map +1 -0
- package/dist/{SubscriberBuilder-BjkbeT9l.mjs → SubscriberBuilder-DMFk_Ap1.mjs} +50 -24
- package/dist/SubscriberBuilder-DMFk_Ap1.mjs.map +1 -0
- package/dist/SubscriberBuilder-g3fAVWgs.d.cts +67 -0
- package/dist/SubscriberBuilder-g3fAVWgs.d.cts.map +1 -0
- package/dist/Topic-CkxOTrMv.cjs +104 -0
- package/dist/Topic-CkxOTrMv.cjs.map +1 -0
- package/dist/Topic-hPffOsot.mjs +99 -0
- package/dist/Topic-hPffOsot.mjs.map +1 -0
- package/dist/adaptors/aws.cjs +118 -216
- package/dist/adaptors/aws.cjs.map +1 -1
- package/dist/adaptors/aws.d.cts +34 -53
- package/dist/adaptors/aws.d.cts.map +1 -1
- package/dist/adaptors/aws.d.mts +35 -54
- package/dist/adaptors/aws.d.mts.map +1 -1
- package/dist/adaptors/aws.mjs +91 -191
- package/dist/adaptors/aws.mjs.map +1 -1
- package/dist/adaptors/hono.cjs +3 -10
- package/dist/adaptors/hono.d.cts +7 -16
- package/dist/adaptors/hono.d.cts.map +1 -1
- package/dist/adaptors/hono.d.mts +8 -17
- package/dist/adaptors/hono.d.mts.map +1 -1
- package/dist/adaptors/hono.mjs +2 -10
- package/dist/adaptors/testing.cjs +711 -89
- package/dist/adaptors/testing.cjs.map +1 -1
- package/dist/adaptors/testing.d.cts +325 -54
- package/dist/adaptors/testing.d.cts.map +1 -1
- package/dist/adaptors/testing.d.mts +325 -54
- package/dist/adaptors/testing.d.mts.map +1 -1
- package/dist/adaptors/testing.mjs +676 -70
- package/dist/adaptors/testing.mjs.map +1 -1
- package/dist/auth-CIFXNuDk.d.cts +194 -0
- package/dist/auth-CIFXNuDk.d.cts.map +1 -0
- package/dist/auth-CJ9Ff6Lu.d.mts +194 -0
- package/dist/auth-CJ9Ff6Lu.d.mts.map +1 -0
- package/dist/auth.cjs +172 -31
- package/dist/auth.cjs.map +1 -1
- package/dist/auth.d.cts +2 -108
- package/dist/auth.d.mts +2 -108
- package/dist/auth.mjs +161 -24
- package/dist/auth.mjs.map +1 -1
- package/dist/{cache-BrRz3fEB.d.mts → cache-CXh6GIgb.d.mts} +3 -6
- package/dist/cache-CXh6GIgb.d.mts.map +1 -0
- package/dist/{cache-BtZY_tHe.d.cts → cache-DnGDGly3.d.cts} +3 -6
- package/dist/cache-DnGDGly3.d.cts.map +1 -0
- package/dist/cache.cjs +68 -2
- package/dist/cache.cjs.map +1 -0
- package/dist/cache.d.cts +1 -2
- package/dist/cache.d.mts +1 -2
- package/dist/cache.mjs +67 -2
- package/dist/cache.mjs.map +1 -0
- package/dist/cipher-C1lEFX63.mjs +225 -0
- package/dist/cipher-C1lEFX63.mjs.map +1 -0
- package/dist/cipher-CVxfwLjk.cjs +332 -0
- package/dist/cipher-CVxfwLjk.cjs.map +1 -0
- package/dist/{clone-DblgEZZa.mjs → clone-EKNovYHu.mjs} +3 -3
- package/dist/clone-EKNovYHu.mjs.map +1 -0
- package/dist/{clone-Dy0cR2SZ.cjs → clone-UGJpvQnL.cjs} +7 -8
- package/dist/clone-UGJpvQnL.cjs.map +1 -0
- package/dist/{construct-interface-D9d4Gm4p.d.cts → construct-interface-B1AfqRl4.d.cts} +42 -11
- package/dist/construct-interface-B1AfqRl4.d.cts.map +1 -0
- package/dist/{construct-interface-g5GM5pwR.d.mts → construct-interface-DluK3_da.d.mts} +42 -11
- package/dist/construct-interface-DluK3_da.d.mts.map +1 -0
- package/dist/construct-interface.cjs +113 -7
- package/dist/construct-interface.cjs.map +1 -0
- package/dist/construct-interface.d.cts +2 -2
- package/dist/construct-interface.d.mts +2 -2
- package/dist/construct-interface.mjs +106 -2
- package/dist/construct-interface.mjs.map +1 -0
- package/dist/credential.cjs +63 -16
- package/dist/credential.cjs.map +1 -1
- package/dist/credential.d.cts +16 -9
- package/dist/credential.d.cts.map +1 -1
- package/dist/credential.d.mts +16 -9
- package/dist/credential.d.mts.map +1 -1
- package/dist/credential.mjs +58 -12
- package/dist/credential.mjs.map +1 -1
- package/dist/crons/index.cjs +105 -7
- package/dist/crons/index.cjs.map +1 -1
- package/dist/crons/index.d.cts +40 -11
- package/dist/crons/index.d.cts.map +1 -1
- package/dist/crons/index.d.mts +40 -11
- package/dist/crons/index.d.mts.map +1 -1
- package/dist/crons/index.mjs +103 -8
- package/dist/crons/index.mjs.map +1 -1
- package/dist/database/kysely.cjs +4 -181
- package/dist/database/kysely.d.cts +2 -152
- package/dist/database/kysely.d.mts +2 -152
- package/dist/database/kysely.mjs +2 -180
- package/dist/email.cjs +25 -12
- package/dist/email.cjs.map +1 -1
- package/dist/email.d.cts +3 -7
- package/dist/email.d.cts.map +1 -1
- package/dist/email.d.mts +3 -7
- package/dist/email.d.mts.map +1 -1
- package/dist/email.mjs +16 -3
- package/dist/email.mjs.map +1 -1
- package/dist/encryption.cjs +96 -0
- package/dist/encryption.cjs.map +1 -0
- package/dist/encryption.d.cts +117 -0
- package/dist/encryption.d.cts.map +1 -0
- package/dist/encryption.d.mts +117 -0
- package/dist/encryption.d.mts.map +1 -0
- package/dist/encryption.mjs +83 -0
- package/dist/encryption.mjs.map +1 -0
- package/dist/endpoints/index.cjs +8 -10
- package/dist/endpoints/index.d.cts +51 -7
- package/dist/endpoints/index.d.cts.map +1 -0
- package/dist/endpoints/index.d.mts +51 -7
- package/dist/endpoints/index.d.mts.map +1 -0
- package/dist/endpoints/index.mjs +6 -10
- package/dist/external-api-CWY9orcO.d.mts +86 -0
- package/dist/external-api-CWY9orcO.d.mts.map +1 -0
- package/dist/external-api-D-5WB-sr.d.cts +86 -0
- package/dist/external-api-D-5WB-sr.d.cts.map +1 -0
- package/dist/external-api.cjs +124 -0
- package/dist/external-api.cjs.map +1 -0
- package/dist/external-api.d.cts +2 -0
- package/dist/external-api.d.mts +2 -0
- package/dist/external-api.mjs +121 -0
- package/dist/external-api.mjs.map +1 -0
- package/dist/file-server.cjs +42 -10
- package/dist/file-server.cjs.map +1 -1
- package/dist/file-server.d.cts +6 -10
- package/dist/file-server.d.cts.map +1 -1
- package/dist/file-server.d.mts +6 -10
- package/dist/file-server.d.mts.map +1 -1
- package/dist/file-server.mjs +34 -2
- package/dist/file-server.mjs.map +1 -1
- package/dist/functions/index.cjs +3 -6
- package/dist/functions/index.d.cts +3 -4
- package/dist/functions/index.d.mts +3 -4
- package/dist/functions/index.mjs +2 -6
- package/dist/{functions-i_la-N5r.cjs → functions-CbP5ZKma.cjs} +414 -264
- package/dist/functions-CbP5ZKma.cjs.map +1 -0
- package/dist/{functions-14lpEFL4.mjs → functions-Di6n5ltG.mjs} +376 -238
- package/dist/{functions-14lpEFL4.mjs.map → functions-Di6n5ltG.mjs.map} +1 -1
- package/dist/index-BuzRvKOQ.d.cts +115 -0
- package/dist/index-BuzRvKOQ.d.cts.map +1 -0
- package/dist/index-CTkKOer4.d.mts +115 -0
- package/dist/index-CTkKOer4.d.mts.map +1 -0
- package/dist/index-CeEtxDmK.d.cts +79 -0
- package/dist/index-CeEtxDmK.d.cts.map +1 -0
- package/dist/index-CeEtxDmK.d.mts +79 -0
- package/dist/index-CeEtxDmK.d.mts.map +1 -0
- package/dist/index.cjs +6 -3
- package/dist/index.d.cts +26 -4
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +26 -4
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +3 -3
- package/dist/kms-B-Hm3d5r.cjs +85 -0
- package/dist/kms-B-Hm3d5r.cjs.map +1 -0
- package/dist/kms-BdUlMJEZ.mjs +85 -0
- package/dist/kms-BdUlMJEZ.mjs.map +1 -0
- package/dist/kysely-BEm5sDlU.d.cts +173 -0
- package/dist/kysely-BEm5sDlU.d.cts.map +1 -0
- package/dist/kysely-BRzzawr2.cjs +301 -0
- package/dist/kysely-BRzzawr2.cjs.map +1 -0
- package/dist/kysely-BYfM6Zby.mjs +288 -0
- package/dist/kysely-BYfM6Zby.mjs.map +1 -0
- package/dist/kysely-CjuvdXEV.d.mts +173 -0
- package/dist/kysely-CjuvdXEV.d.mts.map +1 -0
- package/dist/{lazyAccessors-BoJN3SMd.mjs → lazyAccessors-CFanua0O.mjs} +20 -60
- package/dist/lazyAccessors-CFanua0O.mjs.map +1 -0
- package/dist/{lazyAccessors-e3j2oE2m.cjs → lazyAccessors-hJKGv8Ay.cjs} +60 -113
- package/dist/lazyAccessors-hJKGv8Ay.cjs.map +1 -0
- package/dist/mobile-app.cjs +73 -0
- package/dist/mobile-app.cjs.map +1 -0
- package/dist/mobile-app.d.cts +61 -0
- package/dist/mobile-app.d.cts.map +1 -0
- package/dist/mobile-app.d.mts +61 -0
- package/dist/mobile-app.d.mts.map +1 -0
- package/dist/mobile-app.mjs +72 -0
- package/dist/mobile-app.mjs.map +1 -0
- package/dist/object-storage.cjs +18 -10
- package/dist/object-storage.cjs.map +1 -1
- package/dist/object-storage.d.cts +3 -7
- package/dist/object-storage.d.cts.map +1 -1
- package/dist/object-storage.d.mts +3 -7
- package/dist/object-storage.d.mts.map +1 -1
- package/dist/object-storage.mjs +11 -3
- package/dist/object-storage.mjs.map +1 -1
- package/dist/{processAudits-Dmts9H_b.mjs → processAudits-BpRlPQMW.mjs} +16 -19
- package/dist/processAudits-BpRlPQMW.mjs.map +1 -0
- package/dist/{processAudits-CGqttuXm.cjs → processAudits-D_2W5x8k.cjs} +26 -30
- package/dist/processAudits-D_2W5x8k.cjs.map +1 -0
- package/dist/queue/index.cjs +6 -189
- package/dist/queue/index.d.cts +3 -60
- package/dist/queue/index.d.mts +3 -60
- package/dist/queue/index.mjs +3 -186
- package/dist/rest-api.cjs +88 -63
- package/dist/rest-api.cjs.map +1 -1
- package/dist/rest-api.d.cts +68 -61
- package/dist/rest-api.d.cts.map +1 -1
- package/dist/rest-api.d.mts +68 -61
- package/dist/rest-api.d.mts.map +1 -1
- package/dist/rest-api.mjs +80 -55
- package/dist/rest-api.mjs.map +1 -1
- package/dist/{chunk-DWy1uDak.cjs → rolldown-runtime-y5ARvAq5.cjs} +14 -18
- package/dist/runSubscriber-BRp9a_qi.cjs +126 -0
- package/dist/runSubscriber-BRp9a_qi.cjs.map +1 -0
- package/dist/runSubscriber-BYEY_bfA.mjs +109 -0
- package/dist/runSubscriber-BYEY_bfA.mjs.map +1 -0
- package/dist/shutdown-BMJmAhSt.cjs +38 -0
- package/dist/shutdown-BMJmAhSt.cjs.map +1 -0
- package/dist/shutdown-C7xa8x9S.mjs +27 -0
- package/dist/shutdown-C7xa8x9S.mjs.map +1 -0
- package/dist/site.cjs +34 -9
- package/dist/site.cjs.map +1 -1
- package/dist/site.d.cts +17 -22
- package/dist/site.d.cts.map +1 -1
- package/dist/site.d.mts +17 -22
- package/dist/site.d.mts.map +1 -1
- package/dist/site.mjs +30 -5
- package/dist/site.mjs.map +1 -1
- package/dist/subscribers/index.cjs +111 -6
- package/dist/subscribers/index.cjs.map +1 -0
- package/dist/subscribers/index.d.cts +50 -6
- package/dist/subscribers/index.d.cts.map +1 -0
- package/dist/subscribers/index.d.mts +50 -6
- package/dist/subscribers/index.d.mts.map +1 -0
- package/dist/subscribers/index.mjs +108 -5
- package/dist/subscribers/index.mjs.map +1 -0
- package/dist/surfaceEnv-CNimK76p.cjs +56 -0
- package/dist/surfaceEnv-CNimK76p.cjs.map +1 -0
- package/dist/surfaceEnv-wMT5QzgZ.mjs +45 -0
- package/dist/surfaceEnv-wMT5QzgZ.mjs.map +1 -0
- package/dist/{telemetry-C3L0iS28.d.cts → telemetry-DGcFlVpB.d.cts} +2 -5
- package/dist/telemetry-DGcFlVpB.d.cts.map +1 -0
- package/dist/{telemetry-D7bVFLGi.d.mts → telemetry-DGcFlVpB.d.mts} +2 -5
- package/dist/telemetry-DGcFlVpB.d.mts.map +1 -0
- package/dist/topic/index.cjs +3 -137
- package/dist/topic/index.d.cts +2 -4
- package/dist/topic/index.d.mts +2 -4
- package/dist/topic/index.mjs +2 -134
- package/dist/{types-BlAkSuGI.d.cts → types-DMuSQeLL.d.cts} +3 -5
- package/dist/types-DMuSQeLL.d.cts.map +1 -0
- package/dist/{types-aKksMEWL.d.mts → types-DMuSQeLL.d.mts} +3 -5
- package/dist/types-DMuSQeLL.d.mts.map +1 -0
- package/dist/types.d.cts +1 -1
- package/dist/types.d.mts +1 -1
- package/dist/types.mjs +1 -0
- package/dist/worker.cjs +58 -34
- package/dist/worker.cjs.map +1 -1
- package/dist/worker.d.cts +63 -45
- package/dist/worker.d.cts.map +1 -1
- package/dist/worker.d.mts +63 -44
- package/dist/worker.d.mts.map +1 -1
- package/dist/worker.mjs +53 -29
- package/dist/worker.mjs.map +1 -1
- package/package.json +82 -41
- package/dist/Construct-BD5neF7w.mjs.map +0 -1
- package/dist/Construct-C0ijr2qp.d.cts +0 -117
- package/dist/Construct-C0ijr2qp.d.cts.map +0 -1
- package/dist/Construct-Ct8nalEi.d.mts +0 -117
- package/dist/Construct-Ct8nalEi.d.mts.map +0 -1
- package/dist/Construct-CyS3RpTL.cjs.map +0 -1
- package/dist/Cron-DmQ8vQ4b.d.cts.map +0 -1
- package/dist/Cron-dh4rUgib.d.mts.map +0 -1
- package/dist/CronBuilder-BquXDbDI.d.cts +0 -44
- package/dist/CronBuilder-BquXDbDI.d.cts.map +0 -1
- package/dist/CronBuilder-CGgY2080.d.mts +0 -44
- package/dist/CronBuilder-CGgY2080.d.mts.map +0 -1
- package/dist/CronBuilder-CYKT5RiO.mjs.map +0 -1
- package/dist/CronBuilder-Da0C0edR.cjs.map +0 -1
- package/dist/Endpoint-BjWKinFA.d.mts.map +0 -1
- package/dist/Endpoint-DCQPMdUX.mjs.map +0 -1
- package/dist/Endpoint-DcWXE-SZ.cjs.map +0 -1
- package/dist/Endpoint-dav89W6-.d.cts.map +0 -1
- package/dist/EndpointFactory-CdWB7wPw.cjs.map +0 -1
- package/dist/EndpointFactory-CjV8F_lJ.mjs.map +0 -1
- package/dist/HonoEndpointAdaptor-DtL9j19R.cjs.map +0 -1
- package/dist/HonoEndpointAdaptor-P1ahhZHu.mjs.map +0 -1
- package/dist/Queue-D7ZuwBhy.d.cts.map +0 -1
- package/dist/Queue-gVGfi2Yk.d.mts.map +0 -1
- package/dist/Subscriber-2mEi0ImH.d.cts.map +0 -1
- package/dist/Subscriber-xTJ9ayPN.d.mts.map +0 -1
- package/dist/SubscriberBuilder-4OPehf2R.cjs.map +0 -1
- package/dist/SubscriberBuilder-BjkbeT9l.mjs.map +0 -1
- package/dist/SubscriberBuilder-Dptmo-1A.d.mts +0 -62
- package/dist/SubscriberBuilder-Dptmo-1A.d.mts.map +0 -1
- package/dist/SubscriberBuilder-waNhzjSM.d.cts +0 -62
- package/dist/SubscriberBuilder-waNhzjSM.d.cts.map +0 -1
- package/dist/Topic-19QeHBIR.d.cts +0 -91
- package/dist/Topic-19QeHBIR.d.cts.map +0 -1
- package/dist/Topic-DuFeqkBh.d.mts +0 -91
- package/dist/Topic-DuFeqkBh.d.mts.map +0 -1
- package/dist/auth.d.cts.map +0 -1
- package/dist/auth.d.mts.map +0 -1
- package/dist/cache-0ANvRQnD.mjs +0 -51
- package/dist/cache-0ANvRQnD.mjs.map +0 -1
- package/dist/cache-3WSvAulx.cjs +0 -57
- package/dist/cache-3WSvAulx.cjs.map +0 -1
- package/dist/cache-BrRz3fEB.d.mts.map +0 -1
- package/dist/cache-BtZY_tHe.d.cts.map +0 -1
- package/dist/clone-DblgEZZa.mjs.map +0 -1
- package/dist/clone-Dy0cR2SZ.cjs.map +0 -1
- package/dist/construct-interface-BfjcOD_E.cjs +0 -117
- package/dist/construct-interface-BfjcOD_E.cjs.map +0 -1
- package/dist/construct-interface-D9d4Gm4p.d.cts.map +0 -1
- package/dist/construct-interface-Z4CpS8tK.mjs +0 -81
- package/dist/construct-interface-Z4CpS8tK.mjs.map +0 -1
- package/dist/construct-interface-g5GM5pwR.d.mts.map +0 -1
- package/dist/database/kysely.cjs.map +0 -1
- package/dist/database/kysely.d.cts.map +0 -1
- package/dist/database/kysely.d.mts.map +0 -1
- package/dist/database/kysely.mjs.map +0 -1
- package/dist/functions-i_la-N5r.cjs.map +0 -1
- package/dist/index-Bd5FqCoe.d.cts.map +0 -1
- package/dist/index-BknhM6Ux.d.mts +0 -31
- package/dist/index-BknhM6Ux.d.mts.map +0 -1
- package/dist/index-CBSfrowv.d.cts +0 -31
- package/dist/index-CBSfrowv.d.cts.map +0 -1
- package/dist/index-D24Xm79M.d.cts +0 -171
- package/dist/index-D24Xm79M.d.cts.map +0 -1
- package/dist/index-_ajboYxK.d.mts +0 -171
- package/dist/index-_ajboYxK.d.mts.map +0 -1
- package/dist/index-lAO9egTb.d.mts.map +0 -1
- package/dist/lazyAccessors-BoJN3SMd.mjs.map +0 -1
- package/dist/lazyAccessors-e3j2oE2m.cjs.map +0 -1
- package/dist/processAudits-CGqttuXm.cjs.map +0 -1
- package/dist/processAudits-Dmts9H_b.mjs.map +0 -1
- package/dist/queue/index.cjs.map +0 -1
- package/dist/queue/index.d.cts.map +0 -1
- package/dist/queue/index.d.mts.map +0 -1
- package/dist/queue/index.mjs.map +0 -1
- package/dist/surfaceEnv-BFXEms2f.cjs +0 -39
- package/dist/surfaceEnv-BFXEms2f.cjs.map +0 -1
- package/dist/surfaceEnv-C3Ktahea.mjs +0 -27
- package/dist/surfaceEnv-C3Ktahea.mjs.map +0 -1
- package/dist/telemetry-C3L0iS28.d.cts.map +0 -1
- package/dist/telemetry-D7bVFLGi.d.mts.map +0 -1
- package/dist/topic/index.cjs.map +0 -1
- package/dist/topic/index.mjs.map +0 -1
- package/dist/types-BlAkSuGI.d.cts.map +0 -1
- package/dist/types-aKksMEWL.d.mts.map +0 -1
|
@@ -1,25 +1,16 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { Service
|
|
8
|
-
import { AuditStorage, AuditableAction, ExtractStorageAuditAction } from "@geekmidas/audit";
|
|
1
|
+
import { t as StandardSchemaV1 } from "./index-CeEtxDmK.mjs";
|
|
2
|
+
import { a as EventFor, c as Topic } from "./Construct-QXnl3VqT.mjs";
|
|
3
|
+
import { c as ServicesOf, r as Consumable } from "./construct-interface-DluK3_da.mjs";
|
|
4
|
+
import { n as BaseFunctionBuilder } from "./index-CTkKOer4.mjs";
|
|
5
|
+
import { t as HttpMethod } from "./types-DMuSQeLL.mjs";
|
|
6
|
+
import { C as Authorizer, O as SecurityScheme, S as MappedAudit, T as BuiltInSecuritySchemeId, _ as RlsBypass, c as EndpointSchemas, f as SessionFn, i as Endpoint, l as EndpointSurface, o as EndpointHandler, p as SuccessStatus, t as AuthorizeFn, v as RlsConfig, x as ActorExtractor } from "./Endpoint-BJDBZBZu.mjs";
|
|
7
|
+
import { Service } from "@geekmidas/services";
|
|
9
8
|
import { RateLimitConfig } from "@geekmidas/rate-limit";
|
|
10
|
-
import {
|
|
11
|
-
import { EventPublisher, MappedEvent } from "@geekmidas/events";
|
|
9
|
+
import { AuditStorage, AuditableAction, ExtractStorageAuditAction } from "@geekmidas/audit";
|
|
12
10
|
import { Logger } from "@geekmidas/logger";
|
|
13
11
|
import { InferStandardSchema } from "@geekmidas/schema";
|
|
14
|
-
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
15
|
-
|
|
16
|
-
//#region src/publisher.d.ts
|
|
17
|
-
declare function publishConstructEvents<T extends EventPublisher<any> | undefined, OutSchema extends StandardSchemaV1 | undefined = undefined, TServiceName extends string = string, TServices extends Service[] = [], TAuditStorageServiceName extends string = string, TAuditStorage extends AuditStorage | undefined = undefined>(construct: Construct<Logger, TServiceName, T, OutSchema, TServices, TAuditStorageServiceName, TAuditStorage>, response: InferStandardSchema<OutSchema>, serviceDiscovery: ServiceDiscovery<any>, logger?: Logger): Promise<void>;
|
|
18
|
-
//# sourceMappingURL=publisher.d.ts.map
|
|
19
|
-
|
|
20
|
-
//#endregion
|
|
21
12
|
//#region src/endpoints/EndpointBuilder.d.ts
|
|
22
|
-
declare class EndpointBuilder<TRoute extends string, TMethod extends HttpMethod, TInput extends EndpointSchemas = {}, TServices extends Service[] = [], TLogger extends Logger = Logger, OutSchema extends StandardSchemaV1 | undefined = undefined, TSession = unknown,
|
|
13
|
+
declare class EndpointBuilder<TRoute extends string, TMethod extends HttpMethod, TInput extends EndpointSchemas = {}, TServices extends Service[] = [], TLogger extends Logger = Logger, OutSchema extends StandardSchemaV1 | undefined = undefined, TSession = unknown, TAuthorizers extends readonly string[] = readonly string[], TAuditStorage extends AuditStorage | undefined = undefined, TAuditStorageServiceName extends string = string, TAuditAction extends AuditableAction<string, unknown> = AuditableAction<string, unknown>, TDatabase = undefined, TDatabaseServiceName extends string = string> extends BaseFunctionBuilder<TInput, OutSchema, TServices, TLogger, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName> {
|
|
23
14
|
readonly route: TRoute;
|
|
24
15
|
readonly method: TMethod;
|
|
25
16
|
protected schemas: TInput;
|
|
@@ -28,7 +19,8 @@ declare class EndpointBuilder<TRoute extends string, TMethod extends HttpMethod,
|
|
|
28
19
|
protected _tags?: string[];
|
|
29
20
|
protected _memorySize?: number;
|
|
30
21
|
protected _responseType: string;
|
|
31
|
-
|
|
22
|
+
/** Set by a factory's `.session()`; absent, the endpoint reads none. */
|
|
23
|
+
_getSession?: SessionFn<TServices, TLogger, TSession, TDatabase>;
|
|
32
24
|
_authorize: AuthorizeFn<TServices, TLogger, TSession, TInput, TDatabase>;
|
|
33
25
|
_rateLimit?: RateLimitConfig;
|
|
34
26
|
_availableAuthorizers: Authorizer[];
|
|
@@ -46,12 +38,26 @@ declare class EndpointBuilder<TRoute extends string, TMethod extends HttpMethod,
|
|
|
46
38
|
_rlsConfig?: RlsConfig<TServices, TSession, TLogger>;
|
|
47
39
|
_rlsBypass?: boolean;
|
|
48
40
|
constructor(route: TRoute, method: TMethod);
|
|
49
|
-
_setPublisher(publisher: Service<TEventPublisherServiceName, TEventPublisher>): void;
|
|
50
41
|
_setAuditorStorage(storage: Service<TAuditStorageServiceName, TAuditStorage>): void;
|
|
51
42
|
_setDatabaseService(service: Service<TDatabaseServiceName, TDatabase>): void;
|
|
52
43
|
description(description: string): this;
|
|
53
44
|
status(status: SuccessStatus): this;
|
|
54
|
-
|
|
45
|
+
/**
|
|
46
|
+
* Publish `event` to `topic` once the handler has succeeded — repeatable,
|
|
47
|
+
* one call per event, to as many topics as the endpoint names. The topic
|
|
48
|
+
* becomes a dependency as with `.dependsOn([topic])`, so `services.<topic>`
|
|
49
|
+
* is there for events the handler decides on itself.
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```ts
|
|
53
|
+
* router.post('/users')
|
|
54
|
+
* .event(users, {
|
|
55
|
+
* type: 'user.created',
|
|
56
|
+
* payload: (user) => ({ userId: user.id, email: user.email }),
|
|
57
|
+
* })
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
event<TTopic extends Topic<any, any>>(topic: TTopic, event: EventFor<TTopic, InferStandardSchema<OutSchema>>): EndpointBuilder<TRoute, TMethod, TInput, [...TServices, TTopic['service']], TLogger, OutSchema, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
55
61
|
tags(tags: string[]): this;
|
|
56
62
|
memorySize(memorySize: number): this;
|
|
57
63
|
/**
|
|
@@ -73,22 +79,21 @@ declare class EndpointBuilder<TRoute extends string, TMethod extends HttpMethod,
|
|
|
73
79
|
* ```
|
|
74
80
|
*/
|
|
75
81
|
responseType(type: string): this;
|
|
76
|
-
publisher<T extends EventPublisher<any>, TName extends string>(publisher: Service<TName, T>): EndpointBuilder<TRoute, TMethod, TInput, TServices, TLogger, OutSchema, TSession, T, TName, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
77
82
|
body<T extends StandardSchemaV1>(schema: T): EndpointBuilder<TRoute, TMethod, Omit<TInput, 'body'> & {
|
|
78
83
|
body: T;
|
|
79
|
-
}, TServices, TLogger, OutSchema, TSession,
|
|
84
|
+
}, TServices, TLogger, OutSchema, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
80
85
|
search<T extends StandardSchemaV1>(schema: T): EndpointBuilder<TRoute, TMethod, Omit<TInput, 'query'> & {
|
|
81
86
|
query: T;
|
|
82
|
-
}, TServices, TLogger, OutSchema, TSession,
|
|
87
|
+
}, TServices, TLogger, OutSchema, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
83
88
|
query<T extends StandardSchemaV1>(schema: T): EndpointBuilder<TRoute, TMethod, Omit<TInput, 'query'> & {
|
|
84
89
|
query: T;
|
|
85
|
-
}, TServices, TLogger, OutSchema, TSession,
|
|
90
|
+
}, TServices, TLogger, OutSchema, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
86
91
|
params<T extends StandardSchemaV1>(schema: T): EndpointBuilder<TRoute, TMethod, Omit<TInput, 'params'> & {
|
|
87
92
|
params: T;
|
|
88
|
-
}, TServices, TLogger, OutSchema, TSession,
|
|
93
|
+
}, TServices, TLogger, OutSchema, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
89
94
|
authorize(fn: AuthorizeFn<TServices, TLogger, TSession, TInput, TDatabase>): this;
|
|
90
95
|
rateLimit(config: RateLimitConfig): this;
|
|
91
|
-
authorizer(name: TAuthorizers[number] | 'none'): EndpointBuilder<TRoute, TMethod, TInput, TServices, TLogger, OutSchema, TSession,
|
|
96
|
+
authorizer(name: TAuthorizers[number] | 'none'): EndpointBuilder<TRoute, TMethod, TInput, TServices, TLogger, OutSchema, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
92
97
|
/**
|
|
93
98
|
* Depend on constructs — a database, a bucket, a mail sender, a queue, a
|
|
94
99
|
* topic.
|
|
@@ -100,21 +105,21 @@ declare class EndpointBuilder<TRoute extends string, TMethod extends HttpMethod,
|
|
|
100
105
|
* Constructs only. A `Service` does not match the shape, which is what keeps
|
|
101
106
|
* env sniffing confined to `.services()` and the explicit lift.
|
|
102
107
|
*/
|
|
103
|
-
dependsOn<const T extends readonly Consumable[]>(constructs: T): EndpointBuilder<TRoute, TMethod, TInput, [...TServices, ...ServicesOf<T>], TLogger, OutSchema, TSession,
|
|
104
|
-
services<T extends Service[]>(services: T): EndpointBuilder<TRoute, TMethod, TInput, [...TServices, ...T], TLogger, OutSchema, TSession,
|
|
105
|
-
logger<T extends Logger>(logger: T): EndpointBuilder<TRoute, TMethod, TInput, TServices, T, OutSchema, TSession,
|
|
106
|
-
output<T extends StandardSchemaV1>(schema: T): EndpointBuilder<TRoute, TMethod, TInput, TServices, TLogger, T, TSession,
|
|
108
|
+
dependsOn<const T extends readonly Consumable[]>(constructs: T): EndpointBuilder<TRoute, TMethod, TInput, [...TServices, ...ServicesOf<T>], TLogger, OutSchema, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
109
|
+
services<T extends Service[]>(services: T): EndpointBuilder<TRoute, TMethod, TInput, [...TServices, ...T], TLogger, OutSchema, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
110
|
+
logger<T extends Logger>(logger: T): EndpointBuilder<TRoute, TMethod, TInput, TServices, T, OutSchema, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
111
|
+
output<T extends StandardSchemaV1>(schema: T): EndpointBuilder<TRoute, TMethod, TInput, TServices, TLogger, T, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
107
112
|
/**
|
|
108
113
|
* Set the auditor storage service for this endpoint.
|
|
109
114
|
* This enables audit functionality and makes `auditor` available in the handler context.
|
|
110
115
|
* The audit action type is automatically inferred from the storage's generic parameter.
|
|
111
116
|
*/
|
|
112
|
-
auditor<T extends AuditStorage<any>, TName extends string>(storage: Service<TName, T>): EndpointBuilder<TRoute, TMethod, TInput, TServices, TLogger, OutSchema, TSession,
|
|
117
|
+
auditor<T extends AuditStorage<any>, TName extends string>(storage: Service<TName, T>): EndpointBuilder<TRoute, TMethod, TInput, TServices, TLogger, OutSchema, TSession, TAuthorizers, T, TName, ExtractStorageAuditAction<T>, TDatabase, TDatabaseServiceName>;
|
|
113
118
|
/**
|
|
114
119
|
* Set the actor extractor function for audit records.
|
|
115
120
|
* The actor is extracted from the request context and attached to all audits.
|
|
116
121
|
*/
|
|
117
|
-
actor(extractor: ActorExtractor<TServices, TSession, TLogger>): EndpointBuilder<TRoute, TMethod, TInput, TServices, TLogger, OutSchema, TSession,
|
|
122
|
+
actor(extractor: ActorExtractor<TServices, TSession, TLogger>): EndpointBuilder<TRoute, TMethod, TInput, TServices, TLogger, OutSchema, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
118
123
|
/**
|
|
119
124
|
* Add declarative audit definitions that are processed after the handler executes.
|
|
120
125
|
* Similar to `.event()` for events, but for audits.
|
|
@@ -148,7 +153,7 @@ declare class EndpointBuilder<TRoute extends string, TMethod extends HttpMethod,
|
|
|
148
153
|
* })
|
|
149
154
|
* ```
|
|
150
155
|
*/
|
|
151
|
-
database<T, TName extends string>(source: Consumable<TName, T> | Service<TName, T>): EndpointBuilder<TRoute, TMethod, TInput, TServices, TLogger, OutSchema, TSession,
|
|
156
|
+
database<T, TName extends string>(source: Consumable<TName, T> | Service<TName, T>): EndpointBuilder<TRoute, TMethod, TInput, TServices, TLogger, OutSchema, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, T, TName>;
|
|
152
157
|
/**
|
|
153
158
|
* Configure RLS (Row-Level Security) context for this endpoint.
|
|
154
159
|
* Pass `false` or `RLS_BYPASS` to explicitly bypass RLS for this endpoint.
|
|
@@ -184,12 +189,11 @@ declare class EndpointBuilder<TRoute extends string, TMethod extends HttpMethod,
|
|
|
184
189
|
*/
|
|
185
190
|
rlsBypass(): this;
|
|
186
191
|
input(_schema: any): any;
|
|
187
|
-
handle(fn: EndpointHandler<TInput, TServices, TLogger, OutSchema, TSession, TDatabase, TAuditStorage, TAuditAction>): Endpoint<TRoute, TMethod, TInput, OutSchema, TServices, TLogger, TSession,
|
|
192
|
+
handle(fn: EndpointHandler<TInput, TServices, TLogger, OutSchema, TSession, TDatabase, TAuditStorage, TAuditAction>): Endpoint<TRoute, TMethod, TInput, OutSchema, TServices, TLogger, TSession, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
188
193
|
}
|
|
189
|
-
//# sourceMappingURL=EndpointBuilder.d.ts.map
|
|
190
194
|
//#endregion
|
|
191
195
|
//#region src/endpoints/EndpointFactory.d.ts
|
|
192
|
-
declare class EndpointFactory<TServices extends Service[] = [], TBasePath extends string = '', TLogger extends Logger = Logger, TSession = unknown,
|
|
196
|
+
declare class EndpointFactory<TServices extends Service[] = [], TBasePath extends string = '', TLogger extends Logger = Logger, TSession = unknown, TAuthorizers extends readonly string[] = readonly string[], TAuditStorage extends AuditStorage<any> | undefined = undefined, TAuditStorageServiceName extends string = string, TAuditAction extends AuditableAction<string, unknown> = ExtractStorageAuditAction<NonNullable<TAuditStorage>>, TDatabase = undefined, TDatabaseServiceName extends string = string, TSecuritySchemes extends Record<string, SecurityScheme> = Record<string, SecurityScheme>, TRlsConfig extends RlsConfig<TServices, TSession, TLogger> | undefined = undefined> {
|
|
193
197
|
private defaultServices;
|
|
194
198
|
/**
|
|
195
199
|
* The constructs `.dependsOn()` was given, kept alongside the services they
|
|
@@ -204,7 +208,6 @@ declare class EndpointFactory<TServices extends Service[] = [], TBasePath extend
|
|
|
204
208
|
private defaultConstructs;
|
|
205
209
|
private basePath;
|
|
206
210
|
private defaultAuthorizeFn?;
|
|
207
|
-
private defaultEventPublisher;
|
|
208
211
|
private defaultSessionExtractor?;
|
|
209
212
|
private defaultLogger;
|
|
210
213
|
/**
|
|
@@ -222,25 +225,9 @@ declare class EndpointFactory<TServices extends Service[] = [], TBasePath extend
|
|
|
222
225
|
private defaultActorExtractor?;
|
|
223
226
|
private customSecuritySchemes;
|
|
224
227
|
private defaultRlsConfig?;
|
|
225
|
-
constructor({
|
|
226
|
-
basePath,
|
|
227
|
-
defaultAuthorizeFn,
|
|
228
|
-
defaultLogger,
|
|
229
|
-
defaultSessionExtractor,
|
|
230
|
-
defaultServices,
|
|
231
|
-
defaultConstructs,
|
|
232
|
-
defaultEventPublisher,
|
|
233
|
-
availableAuthorizers,
|
|
234
|
-
defaultAuthorizerName,
|
|
235
|
-
defaultAuditorStorage,
|
|
236
|
-
defaultDatabaseService,
|
|
237
|
-
defaultActorExtractor,
|
|
238
|
-
customSecuritySchemes,
|
|
239
|
-
defaultRlsConfig,
|
|
240
|
-
surface
|
|
241
|
-
}: EndpointFactoryOptions<TServices, TBasePath, TLogger, TSession, TEventPublisher, TEventPublisherServiceName, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TSecuritySchemes, TRlsConfig>);
|
|
228
|
+
constructor({ basePath, defaultAuthorizeFn, defaultLogger, defaultSessionExtractor, defaultServices, defaultConstructs, availableAuthorizers, defaultAuthorizerName, defaultAuditorStorage, defaultDatabaseService, defaultActorExtractor, customSecuritySchemes, defaultRlsConfig, surface }: EndpointFactoryOptions<TServices, TBasePath, TLogger, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TSecuritySchemes, TRlsConfig>);
|
|
242
229
|
static joinPaths<TBasePath extends string, P extends string>(path: P, basePath?: TBasePath): JoinPaths<TBasePath, P>;
|
|
243
|
-
authorizers<const T extends readonly string[]>(authorizers: T): EndpointFactory<TServices, TBasePath, TLogger, TSession,
|
|
230
|
+
authorizers<const T extends readonly string[]>(authorizers: T): EndpointFactory<TServices, TBasePath, TLogger, TSession, T, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName, TSecuritySchemes, TRlsConfig>;
|
|
244
231
|
/**
|
|
245
232
|
* Define custom security schemes for this factory.
|
|
246
233
|
* These extend the built-in schemes (jwt, bearer, apiKey, oauth2, oidc).
|
|
@@ -257,7 +244,7 @@ declare class EndpointFactory<TServices extends Service[] = [], TBasePath extend
|
|
|
257
244
|
* });
|
|
258
245
|
* ```
|
|
259
246
|
*/
|
|
260
|
-
securitySchemes<T extends Record<string, SecurityScheme>>(schemes: T): EndpointFactory<TServices, TBasePath, TLogger, TSession,
|
|
247
|
+
securitySchemes<T extends Record<string, SecurityScheme>>(schemes: T): EndpointFactory<TServices, TBasePath, TLogger, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName, TSecuritySchemes & T, TRlsConfig>;
|
|
261
248
|
/**
|
|
262
249
|
* Set the default authorizer for all endpoints created from this factory.
|
|
263
250
|
* Individual endpoints can override this by calling `.authorizer()` on the builder.
|
|
@@ -268,9 +255,9 @@ declare class EndpointFactory<TServices extends Service[] = [], TBasePath extend
|
|
|
268
255
|
* - Custom security scheme names defined via `.securitySchemes()`
|
|
269
256
|
* - 'none' to disable authorization
|
|
270
257
|
*/
|
|
271
|
-
authorizer(name: BuiltInSecuritySchemeId | keyof TSecuritySchemes | TAuthorizers[number] | 'none'): EndpointFactory<TServices, TBasePath, TLogger, TSession,
|
|
272
|
-
route<TPath extends string>(path: TPath): EndpointFactory<TServices, JoinPaths<TBasePath, TPath>, TLogger, TSession,
|
|
273
|
-
authorize(fn: AuthorizeFn<TServices, TLogger, TSession, undefined, TDatabase>): EndpointFactory<TServices, TBasePath, TLogger, TSession,
|
|
258
|
+
authorizer(name: BuiltInSecuritySchemeId | keyof TSecuritySchemes | TAuthorizers[number] | 'none'): EndpointFactory<TServices, TBasePath, TLogger, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName, TSecuritySchemes, TRlsConfig>;
|
|
259
|
+
route<TPath extends string>(path: TPath): EndpointFactory<TServices, JoinPaths<TBasePath, TPath>, TLogger, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName, TSecuritySchemes, TRlsConfig>;
|
|
260
|
+
authorize(fn: AuthorizeFn<TServices, TLogger, TSession, undefined, TDatabase>): EndpointFactory<TServices, TBasePath, TLogger, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName, TSecuritySchemes, TRlsConfig>;
|
|
274
261
|
/**
|
|
275
262
|
* Depend on constructs — a database, a bucket, a mail sender, a queue, a
|
|
276
263
|
* topic.
|
|
@@ -282,27 +269,26 @@ declare class EndpointFactory<TServices extends Service[] = [], TBasePath extend
|
|
|
282
269
|
* Constructs only. A `Service` does not match the shape, which is what keeps
|
|
283
270
|
* env sniffing confined to `.services()` and the explicit lift.
|
|
284
271
|
*/
|
|
285
|
-
dependsOn<const S extends readonly Consumable[]>(constructs: S): EndpointFactory<[...ServicesOf<S>, ...TServices], TBasePath, TLogger, TSession,
|
|
286
|
-
services<S extends Service[]>(services: S): EndpointFactory<[...S, ...TServices], TBasePath, TLogger, TSession,
|
|
287
|
-
logger<L extends Logger>(logger: L): EndpointFactory<TServices, TBasePath, L, TSession,
|
|
288
|
-
|
|
289
|
-
session<T>(session: SessionFn<TServices, TLogger, T, TDatabase>): EndpointFactory<TServices, TBasePath, TLogger, T, TEventPublisher, TEventPublisherServiceName, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName, TSecuritySchemes, RlsConfig<TServices, T, TLogger> | undefined>;
|
|
272
|
+
dependsOn<const S extends readonly Consumable[]>(constructs: S): EndpointFactory<[...ServicesOf<S>, ...TServices], TBasePath, TLogger, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName, TSecuritySchemes, RlsConfig<[...ServicesOf<S>, ...TServices], TSession, TLogger> | undefined>;
|
|
273
|
+
services<S extends Service[]>(services: S): EndpointFactory<[...S, ...TServices], TBasePath, TLogger, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName, TSecuritySchemes, RlsConfig<[...S, ...TServices], TSession, TLogger> | undefined>;
|
|
274
|
+
logger<L extends Logger>(logger: L): EndpointFactory<TServices, TBasePath, L, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName, TSecuritySchemes, RlsConfig<TServices, TSession, L> | undefined>;
|
|
275
|
+
session<T>(session: SessionFn<TServices, TLogger, T, TDatabase>): EndpointFactory<TServices, TBasePath, TLogger, T, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName, TSecuritySchemes, RlsConfig<TServices, T, TLogger> | undefined>;
|
|
290
276
|
/**
|
|
291
277
|
* Set the database service for endpoints created from this factory.
|
|
292
278
|
* The database will be available in handler context as `db`.
|
|
293
279
|
*/
|
|
294
|
-
database<T, TName extends string>(source: Consumable<TName, T> | Service<TName, T>): EndpointFactory<TServices, TBasePath, TLogger, TSession,
|
|
280
|
+
database<T, TName extends string>(source: Consumable<TName, T> | Service<TName, T>): EndpointFactory<TServices, TBasePath, TLogger, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, T, TName, TSecuritySchemes, TRlsConfig>;
|
|
295
281
|
/**
|
|
296
282
|
* Set the auditor storage service for endpoints created from this factory.
|
|
297
283
|
* This enables audit functionality and makes `auditor` available in handler context.
|
|
298
284
|
* The audit action type is automatically inferred from the storage's generic parameter.
|
|
299
285
|
*/
|
|
300
|
-
auditor<T extends AuditStorage<any>, TName extends string>(storage: Service<TName, T>): EndpointFactory<TServices, TBasePath, TLogger, TSession,
|
|
286
|
+
auditor<T extends AuditStorage<any>, TName extends string>(storage: Service<TName, T>): EndpointFactory<TServices, TBasePath, TLogger, TSession, TAuthorizers, T, TName, ExtractStorageAuditAction<T>, TDatabase, TDatabaseServiceName, TSecuritySchemes, TRlsConfig>;
|
|
301
287
|
/**
|
|
302
288
|
* Set the actor extractor function for endpoints created from this factory.
|
|
303
289
|
* The actor is extracted from the request context and attached to all audits.
|
|
304
290
|
*/
|
|
305
|
-
actor(extractor: ActorExtractor<TServices, TSession, TLogger>): EndpointFactory<TServices, TBasePath, TLogger, TSession,
|
|
291
|
+
actor(extractor: ActorExtractor<TServices, TSession, TLogger>): EndpointFactory<TServices, TBasePath, TLogger, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName, TSecuritySchemes, TRlsConfig>;
|
|
306
292
|
/**
|
|
307
293
|
* Set the RLS (Row-Level Security) configuration for endpoints created from this factory.
|
|
308
294
|
* This enables automatic PostgreSQL session variable setting for RLS policies.
|
|
@@ -321,18 +307,18 @@ declare class EndpointFactory<TServices extends Service[] = [], TBasePath extend
|
|
|
321
307
|
* });
|
|
322
308
|
* ```
|
|
323
309
|
*/
|
|
324
|
-
rls<TConfig extends RlsConfig<TServices, TSession, TLogger>>(config: TConfig): EndpointFactory<TServices, TBasePath, TLogger, TSession,
|
|
310
|
+
rls<TConfig extends RlsConfig<TServices, TSession, TLogger>>(config: TConfig): EndpointFactory<TServices, TBasePath, TLogger, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName, TSecuritySchemes, TConfig>;
|
|
325
311
|
private createBuilder;
|
|
326
|
-
post<TPath extends string>(path: TPath): EndpointBuilder<RemoveTrailingSlash<TBasePath extends "" ? TPath : TPath extends "" ? TBasePath : TBasePath extends "/" ? TPath extends `/${string}` ? TPath : `/${TPath}` : TBasePath extends `${infer Base}/` ? TPath extends `/${infer Rest}` ? `${Base}/${Rest}` : `${Base}/${TPath}` : TPath extends `/${infer Rest_1}` ? `${TBasePath}/${Rest_1}` : `${TBasePath}/${TPath}`>, "POST", {}, TServices, TLogger, undefined, TSession,
|
|
327
|
-
get<TPath extends string>(path: TPath): EndpointBuilder<RemoveTrailingSlash<TBasePath extends "" ? TPath : TPath extends "" ? TBasePath : TBasePath extends "/" ? TPath extends `/${string}` ? TPath : `/${TPath}` : TBasePath extends `${infer Base}/` ? TPath extends `/${infer Rest}` ? `${Base}/${Rest}` : `${Base}/${TPath}` : TPath extends `/${infer Rest_1}` ? `${TBasePath}/${Rest_1}` : `${TBasePath}/${TPath}`>, "GET", {}, TServices, TLogger, undefined, TSession,
|
|
328
|
-
put<TPath extends string>(path: TPath): EndpointBuilder<RemoveTrailingSlash<TBasePath extends "" ? TPath : TPath extends "" ? TBasePath : TBasePath extends "/" ? TPath extends `/${string}` ? TPath : `/${TPath}` : TBasePath extends `${infer Base}/` ? TPath extends `/${infer Rest}` ? `${Base}/${Rest}` : `${Base}/${TPath}` : TPath extends `/${infer Rest_1}` ? `${TBasePath}/${Rest_1}` : `${TBasePath}/${TPath}`>, "PUT", {}, TServices, TLogger, undefined, TSession,
|
|
329
|
-
delete<TPath extends string>(path: TPath): EndpointBuilder<RemoveTrailingSlash<TBasePath extends "" ? TPath : TPath extends "" ? TBasePath : TBasePath extends "/" ? TPath extends `/${string}` ? TPath : `/${TPath}` : TBasePath extends `${infer Base}/` ? TPath extends `/${infer Rest}` ? `${Base}/${Rest}` : `${Base}/${TPath}` : TPath extends `/${infer Rest_1}` ? `${TBasePath}/${Rest_1}` : `${TBasePath}/${TPath}`>, "DELETE", {}, TServices, TLogger, undefined, TSession,
|
|
330
|
-
patch<TPath extends string>(path: TPath): EndpointBuilder<RemoveTrailingSlash<TBasePath extends "" ? TPath : TPath extends "" ? TBasePath : TBasePath extends "/" ? TPath extends `/${string}` ? TPath : `/${TPath}` : TBasePath extends `${infer Base}/` ? TPath extends `/${infer Rest}` ? `${Base}/${Rest}` : `${Base}/${TPath}` : TPath extends `/${infer Rest_1}` ? `${TBasePath}/${Rest_1}` : `${TBasePath}/${TPath}`>, "PATCH", {}, TServices, TLogger, undefined, TSession,
|
|
331
|
-
options<TPath extends string>(path: TPath): EndpointBuilder<RemoveTrailingSlash<TBasePath extends "" ? TPath : TPath extends "" ? TBasePath : TBasePath extends "/" ? TPath extends `/${string}` ? TPath : `/${TPath}` : TBasePath extends `${infer Base}/` ? TPath extends `/${infer Rest}` ? `${Base}/${Rest}` : `${Base}/${TPath}` : TPath extends `/${infer Rest_1}` ? `${TBasePath}/${Rest_1}` : `${TBasePath}/${TPath}`>, "OPTIONS", {}, TServices, TLogger, undefined, TSession,
|
|
312
|
+
post<TPath extends string>(path: TPath): EndpointBuilder<RemoveTrailingSlash<TBasePath extends "" ? TPath : TPath extends "" ? TBasePath : TBasePath extends "/" ? TPath extends `/${string}` ? TPath : `/${TPath}` : TBasePath extends `${infer Base}/` ? TPath extends `/${infer Rest}` ? `${Base}/${Rest}` : `${Base}/${TPath}` : TPath extends `/${infer Rest_1}` ? `${TBasePath}/${Rest_1}` : `${TBasePath}/${TPath}`>, "POST", {}, TServices, TLogger, undefined, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
313
|
+
get<TPath extends string>(path: TPath): EndpointBuilder<RemoveTrailingSlash<TBasePath extends "" ? TPath : TPath extends "" ? TBasePath : TBasePath extends "/" ? TPath extends `/${string}` ? TPath : `/${TPath}` : TBasePath extends `${infer Base}/` ? TPath extends `/${infer Rest}` ? `${Base}/${Rest}` : `${Base}/${TPath}` : TPath extends `/${infer Rest_1}` ? `${TBasePath}/${Rest_1}` : `${TBasePath}/${TPath}`>, "GET", {}, TServices, TLogger, undefined, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
314
|
+
put<TPath extends string>(path: TPath): EndpointBuilder<RemoveTrailingSlash<TBasePath extends "" ? TPath : TPath extends "" ? TBasePath : TBasePath extends "/" ? TPath extends `/${string}` ? TPath : `/${TPath}` : TBasePath extends `${infer Base}/` ? TPath extends `/${infer Rest}` ? `${Base}/${Rest}` : `${Base}/${TPath}` : TPath extends `/${infer Rest_1}` ? `${TBasePath}/${Rest_1}` : `${TBasePath}/${TPath}`>, "PUT", {}, TServices, TLogger, undefined, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
315
|
+
delete<TPath extends string>(path: TPath): EndpointBuilder<RemoveTrailingSlash<TBasePath extends "" ? TPath : TPath extends "" ? TBasePath : TBasePath extends "/" ? TPath extends `/${string}` ? TPath : `/${TPath}` : TBasePath extends `${infer Base}/` ? TPath extends `/${infer Rest}` ? `${Base}/${Rest}` : `${Base}/${TPath}` : TPath extends `/${infer Rest_1}` ? `${TBasePath}/${Rest_1}` : `${TBasePath}/${TPath}`>, "DELETE", {}, TServices, TLogger, undefined, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
316
|
+
patch<TPath extends string>(path: TPath): EndpointBuilder<RemoveTrailingSlash<TBasePath extends "" ? TPath : TPath extends "" ? TBasePath : TBasePath extends "/" ? TPath extends `/${string}` ? TPath : `/${TPath}` : TBasePath extends `${infer Base}/` ? TPath extends `/${infer Rest}` ? `${Base}/${Rest}` : `${Base}/${TPath}` : TPath extends `/${infer Rest_1}` ? `${TBasePath}/${Rest_1}` : `${TBasePath}/${TPath}`>, "PATCH", {}, TServices, TLogger, undefined, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
317
|
+
options<TPath extends string>(path: TPath): EndpointBuilder<RemoveTrailingSlash<TBasePath extends "" ? TPath : TPath extends "" ? TBasePath : TBasePath extends "/" ? TPath extends `/${string}` ? TPath : `/${TPath}` : TBasePath extends `${infer Base}/` ? TPath extends `/${infer Rest}` ? `${Base}/${Rest}` : `${Base}/${TPath}` : TPath extends `/${infer Rest_1}` ? `${TBasePath}/${Rest_1}` : `${TBasePath}/${TPath}`>, "OPTIONS", {}, TServices, TLogger, undefined, TSession, TAuthorizers, TAuditStorage, TAuditStorageServiceName, TAuditAction, TDatabase, TDatabaseServiceName>;
|
|
332
318
|
}
|
|
333
319
|
type RemoveTrailingSlash<T extends string> = T extends `${infer Rest}/` ? Rest extends '' ? T : Rest : T;
|
|
334
320
|
type JoinPaths<TBasePath extends string, TPath extends string> = RemoveTrailingSlash<TBasePath extends '' ? TPath : TPath extends '' ? TBasePath : TBasePath extends '/' ? TPath extends `/${string}` ? TPath : `/${TPath}` : TBasePath extends `${infer Base}/` ? TPath extends `/${infer Rest}` ? `${Base}/${Rest}` : `${Base}/${TPath}` : TPath extends `/${infer Rest}` ? `${TBasePath}/${Rest}` : `${TBasePath}/${TPath}`>;
|
|
335
|
-
interface EndpointFactoryOptions<TServices extends Service[] = [], TBasePath extends string = '', TLogger extends Logger = Logger, TSession = unknown,
|
|
321
|
+
interface EndpointFactoryOptions<TServices extends Service[] = [], TBasePath extends string = '', TLogger extends Logger = Logger, TSession = unknown, TAuthorizers extends readonly string[] = readonly string[], TAuditStorage extends AuditStorage | undefined = undefined, TAuditStorageServiceName extends string = string, TDatabase = undefined, TDatabaseServiceName extends string = string, TSecuritySchemes extends Record<string, SecurityScheme> = Record<string, SecurityScheme>, TRlsConfig extends RlsConfig<TServices, TSession, TLogger> | undefined = undefined> {
|
|
336
322
|
defaultServices?: TServices;
|
|
337
323
|
/** Construct ids from `.dependsOn()`, carried so a route can declare edges. */
|
|
338
324
|
defaultConstructs?: string[];
|
|
@@ -340,8 +326,6 @@ interface EndpointFactoryOptions<TServices extends Service[] = [], TBasePath ext
|
|
|
340
326
|
defaultAuthorizeFn?: AuthorizeFn<TServices, TLogger, TSession, undefined, TDatabase>;
|
|
341
327
|
defaultLogger?: TLogger;
|
|
342
328
|
defaultSessionExtractor?: SessionFn<TServices, TLogger, TSession, TDatabase>;
|
|
343
|
-
defaultEventPublisher?: Service<TEventPublisherServiceName, TEventPublisher>;
|
|
344
|
-
defaultEvents?: MappedEvent<TEventPublisher, undefined>[];
|
|
345
329
|
availableAuthorizers?: Authorizer[];
|
|
346
330
|
defaultAuthorizerName?: TAuthorizers[number];
|
|
347
331
|
defaultAuditorStorage?: Service<TAuditStorageServiceName, TAuditStorage>;
|
|
@@ -356,64 +340,11 @@ interface EndpointFactoryOptions<TServices extends Service[] = [], TBasePath ext
|
|
|
356
340
|
* endpoint without one has no logger, no env parser and nothing to
|
|
357
341
|
* attribute its traffic to — which was survivable only while `e` existed.
|
|
358
342
|
*
|
|
359
|
-
* Carried through every derived factory, so `api.
|
|
343
|
+
* Carried through every derived factory, so `api.database(db)`
|
|
360
344
|
* still produces endpoints that know which API serves them.
|
|
361
345
|
*/
|
|
362
346
|
surface: EndpointSurface;
|
|
363
347
|
}
|
|
364
|
-
//# sourceMappingURL=EndpointFactory.d.ts.map
|
|
365
|
-
//#endregion
|
|
366
|
-
//#region src/endpoints/lazyAccessors.d.ts
|
|
367
|
-
/**
|
|
368
|
-
* Create a lazy header accessor for Hono.
|
|
369
|
-
* Uses `c.req.header(name)` for single lookups (native, case-insensitive).
|
|
370
|
-
* Only calls `c.req.header()` to get all headers when needed.
|
|
371
|
-
*/
|
|
372
|
-
declare function createHonoHeaders(c: Context): HeaderFn;
|
|
373
|
-
/**
|
|
374
|
-
* Create a lazy cookie accessor for Hono.
|
|
375
|
-
* Uses `getCookie(c, name)` for single lookups (native).
|
|
376
|
-
* Only parses the cookie header when all cookies are requested.
|
|
377
|
-
*/
|
|
378
|
-
declare function createHonoCookies(c: Context): CookieFn;
|
|
379
|
-
/**
|
|
380
|
-
* Create a lazy header accessor for API Gateway events.
|
|
381
|
-
* Handles case-insensitive lookups.
|
|
382
|
-
*/
|
|
383
|
-
declare function createApiGatewayHeaders(headers: Record<string, string | undefined> | null | undefined): HeaderFn;
|
|
384
|
-
/**
|
|
385
|
-
* Create a lazy cookie accessor for API Gateway events.
|
|
386
|
-
* Decodes URL-encoded values to match browser behavior.
|
|
387
|
-
*/
|
|
388
|
-
declare function createApiGatewayCookies(cookies: string[] | undefined, cookieHeader: string | undefined): CookieFn;
|
|
389
|
-
/**
|
|
390
|
-
* Create a lazy header accessor for plain object headers (test adaptor, etc).
|
|
391
|
-
* Headers are already available as an object, just provide lazy access.
|
|
392
|
-
*/
|
|
393
|
-
|
|
394
|
-
/**
|
|
395
|
-
* Create a no-op header accessor (for minimal endpoints that don't use headers).
|
|
396
|
-
*/
|
|
397
|
-
declare function createNoopHeaders(): HeaderFn;
|
|
398
|
-
/**
|
|
399
|
-
* Create a no-op cookie accessor (for minimal endpoints that don't use cookies).
|
|
400
|
-
*/
|
|
401
|
-
declare function createNoopCookies(): CookieFn;
|
|
402
|
-
//# sourceMappingURL=lazyAccessors.d.ts.map
|
|
403
|
-
//#endregion
|
|
404
|
-
//#region src/endpoints/surfaceEnv.d.ts
|
|
405
|
-
/**
|
|
406
|
-
* The default parser, built once.
|
|
407
|
-
*
|
|
408
|
-
* Once because `Credentials` resolves through `globalThis` and decryption is
|
|
409
|
-
* not free, and because two parsers over the same environment are two caches of
|
|
410
|
-
* the same answer.
|
|
411
|
-
*/
|
|
412
|
-
declare function defaultEnvParser(): EnvironmentParser<{}>;
|
|
413
|
-
/** The parser for an endpoint, from its surface or the default. */
|
|
414
|
-
declare function envParserFor(surface: EndpointSurface | undefined): EnvironmentParser<{}>;
|
|
415
|
-
//# sourceMappingURL=surfaceEnv.d.ts.map
|
|
416
|
-
|
|
417
348
|
//#endregion
|
|
418
|
-
export { EndpointBuilder
|
|
419
|
-
//# sourceMappingURL=
|
|
349
|
+
export { EndpointBuilder as n, EndpointFactory as t };
|
|
350
|
+
//# sourceMappingURL=EndpointFactory-gaF4yRpP.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EndpointFactory-gaF4yRpP.d.mts","names":[],"sources":["../src/endpoints/EndpointBuilder.ts","../src/endpoints/EndpointFactory.ts"],"mappings":";;;;;;;;;;;;cAyCa,gBACZ,uBACA,gBAAgB,YAChB,eAAe,sBACf,kBAAkB,gBAClB,gBAAgB,SAAS,QACzB,kBAAkB,0CAClB,oBACA,4DACA,sBAAsB,sCACtB,kDACA,qBAAqB,mCAAmC,kCAIxD,uBACA,sDACS,oBACT,QACA,WACA,WACA,SACA,eACA,0BACA,WACA;WA6BU,OAAO;WACP,QAAQ;YA5BR,SAAS;YACT;YACA,UAAU;YACV;YACA;YACA;;EAEV,cAAc,UAAU,WAAW,SAAS,UAAU;EACtD,YAAY,YAAY,WAAW,SAAS,UAAU,QAAQ;EAE9D,aAAa;EACb,uBAAuB;EACvB,kBAAkB;EAClB,kBAAkB,eAAe,WAAW,UAAU;EACtD,SAAS,YAAY,cAAc;;;;;;;EAOnC,UAAW;EACX,wBAAwB,eAAe;EACvC,aAAa,UAAU,WAAW,UAAU;EAC5C;EAEA,YACU,OAAO,QACP,QAAQ;EAMlB,mBACC,SAAS,QAAQ,0BAA0B;EAM5C,oBAAoB,SAAS,QAAQ,sBAAsB;EAI3D,YAAY;EAIZ,OAAO,QAAQ;;;;;;;;;;;;;;;;EAmBf,MAAM,eAAe,iBACpB,OAAO,QACP,OAAO,SAAS,QAAQ,oBAAoB,cAC1C,gBACF,QACA,SACA,YACI,WAAW,oBACf,SACA,WACA,UACA,cACA,eACA,0BACA,cACA,WACA;EAmBD,KAAK;EAIL,WAAW;;;;;;;;;;;;;;;;;;;EAsBX,aAAa;EAIb,KAAK,UAAU,kBACd,QAAQ,IACN,gBACF,QACA,SACA,KAAK;IAAoB,MAAM;KAC/B,WACA,SACA,WACA,UACA,cACA,eACA,0BACA,cACA,WACA;EAOD,OAAO,UAAU,kBAChB,QAAQ,IACN,gBACF,QACA,SACA,KAAK;IAAqB,OAAO;KACjC,WACA,SACA,WACA,UACA,cACA,eACA,0BACA,cACA,WACA;EAOD,MAAM,UAAU,kBACf,QAAQ,IACN,gBACF,QACA,SACA,KAAK;IAAqB,OAAO;KACjC,WACA,SACA,WACA,UACA,cACA,eACA,0BACA,cACA,WACA;EAKD,OAAO,UAAU,kBAChB,QAAQ,IACN,gBACF,QACA,SACA,KAAK;IAAsB,QAAQ;KACnC,WACA,SACA,WACA,UACA,cACA,eACA,0BACA,cACA,WACA;EAOD,UACC,IAAI,YAAY,WAAW,SAAS,UAAU,QAAQ;EAKvD,UAAU,QAAQ;EAIlB,WACC,MAAM,gCACJ,gBACF,QACA,SACA,QACA,WACA,SACA,WACA,UACA,cACA,eACA,0BACA,cACA,WACA;;;;;;;;;;;;EAkCD,gBAAgB,mBAAmB,cAClC,YAAY,IACV,gBACF,QACA,SACA,YACI,cAAc,WAAW,KAC7B,SACA,WACA,UACA,cACA,eACA,0BACA,cACA,WACA;EAkCD,SAAS,UAAU,WAClB,UAAU,IACR,gBACF,QACA,SACA,YACI,cAAc,IAClB,SACA,WACA,UACA,cACA,eACA,0BACA,cACA,WACA;EAwBD,OAAO,UAAU,QAChB,QAAQ,IACN,gBACF,QACA,SACA,QACA,WACA,GACA,WACA,UACA,cACA,eACA,0BACA,cACA,WACA;EAqBD,OAAO,UAAU,kBAChB,QAAQ,IACN,gBACF,QACA,SACA,QACA,WACA,SACA,GACA,UACA,cACA,eACA,0BACA,cACA,WACA;;;;;;EA0BQ,QAAQ,UAAU,mBAAmB,sBAC7C,SAAS,QAAQ,OAAO,KACtB,gBACF,QACA,SACA,QACA,WACA,SACA,WACA,UACA,cACA,GACA,OACA,0BAA0B,IAC1B,WACA;;;;;EA4BD,MACC,WAAW,eAAe,WAAW,UAAU,WAC7C,gBACF,QACA,SACA,QACA,WACA,SACA,WACA,UACA,cACA,eACA,0BACA,cACA,WACA;;;;;;;;;;;;;;;;;;EAsBD,MAAM,QAAQ,YAAY,cAAc;;;;;;;;;;;;;;;;EAmB/B,SAAS,GAAG,sBACpB,QAAQ,WAAW,OAAO,KAAK,QAAQ,OAAO,KAC5C,gBACF,QACA,SACA,QACA,WACA,SACA,WACA,UACA,cACA,eACA,0BACA,cACA,GACA;;;;;;;;;;;;;;;;;;;;EA6CD,IACC,QAAQ,UAAU,WAAW,UAAU,mBAAmB;;;;;;;;;;;;;;EAyB3D;EAKA,MAAM;EAMN,OACC,IAAI,gBACH,QACA,WACA,SACA,WACA,UACA,WACA,eACA,gBAEC,SACF,QACA,SACA,QACA,WACA,WACA,SACA,UACA,eACA,0BACA,cACA,WACA;;;;cC1rBW,gBACZ,kBAAkB,gBAClB,+BACA,gBAAgB,SAAS,QACzB,oBACA,4DACA,sBAAsB,2CACtB,kDACA,qBAAqB,mCAGjB,0BAA0B,YAAY,iBAC1C,uBACA,8CACA,yBAAyB,eAAe,kBAAkB,eAEzD,iBAED,mBACG,UAAU,WAAW,UAAU;UAG1B;;;;;;;;;;;UAWA;UACA;UACA;UAOA;UAMA;;;;;;;;UAQA;UACA;UACA;UACA;UAGA;UAGA;UACA;UACA;EAER,cACC,UACA,oBACA,eACA,yBAEA,iBACA,mBACA,sBACA,uBACA,uBACA,wBACA,uBACA,uBACA,kBACA,WACE,uBACF,WACA,WACA,SACA,UACA,cACA,eACA,0BACA,WACA,sBACA,kBACA;SAuBM,UAAU,0BAA0B,kBAC1C,MAAM,GACN,WAAU,YACR,UAAU,WAAW;EAmCxB,kBAAkB,6BACjB,aAAa,IACX,gBACF,WACA,WACA,SACA,UACA,GACA,eACA,0BACA,cACA,WACA,sBACA,kBACA;;;;;;;;;;;;;;;;;EAqDD,gBAAgB,UAAU,eAAe,iBACxC,SAAS,IACP,gBACF,WACA,WACA,SACA,UACA,cACA,eACA,0BACA,cACA,WACA,sBACA,mBAAmB,GACnB;;;;;;;;;;;EA8CD,WACC,MACG,gCACM,mBACN,gCAED,gBACF,WACA,WACA,SACA,UACA,cACA,eACA,0BACA,cACA,WACA,sBACA,kBACA;EAkDD,MAAM,sBACL,MAAM,QACJ,gBACF,WACA,UAAU,WAAW,QACrB,SACA,UACA,cACA,eACA,0BACA,cACA,WACA,sBACA,kBACA;EAmCD,UACC,IAAI,YAAY,WAAW,SAAS,qBAAqB,aACvD,gBACF,WACA,WACA,SACA,UACA,cACA,eACA,0BACA,cACA,WACA,sBACA,kBACA;;;;;;;;;;;;EA6CD,gBAAgB,mBAAmB,cAClC,YAAY,IACV,oBACE,WAAW,OAAO,YACtB,WACA,SACA,UACA,cACA,eACA,0BACA,cACA,WACA,sBACA,kBACA,cAAc,WAAW,OAAO,YAAY,UAAU;EA6BvD,SAAS,UAAU,WAClB,UAAU,IACR,oBACE,MAAM,YACV,WACA,SACA,UACA,cACA,eACA,0BACA,cACA,WACA,sBACA,kBACA,cAAc,MAAM,YAAY,UAAU;EA2C3C,OAAO,UAAU,QAChB,QAAQ,IACN,gBACF,WACA,WACA,GACA,UACA,cACA,eACA,0BACA,cACA,WACA,sBACA,kBACA,UAAU,WAAW,UAAU;EAiDhC,QAAQ,GACP,SAAS,UAAU,WAAW,SAAS,GAAG,aACxC,gBACF,WACA,WACA,SACA,GACA,cACA,eACA,0BACA,cACA,WACA,sBACA,kBACA,UAAU,WAAW,GAAG;;;;;EAgDzB,SAAS,GAAG,sBACX,QAAQ,WAAW,OAAO,KAAK,QAAQ,OAAO,KAC5C,gBACF,WACA,WACA,SACA,UACA,cACA,eACA,0BACA,cACA,GACA,OACA,kBACA;;;;;;EAmDD,QAAQ,UAAU,mBAAmB,sBACpC,SAAS,QAAQ,OAAO,KACtB,gBACF,WACA,WACA,SACA,UACA,cACA,GACA,OACA,0BAA0B,IAC1B,WACA,sBACA,kBACA;;;;;EA0CD,MACC,WAAW,eAAe,WAAW,UAAU,WAC7C,gBACF,WACA,WACA,SACA,UACA,cACA,eACA,0BACA,cACA,WACA,sBACA,kBACA;;;;;;;;;;;;;;;;;;;EAmDD,IAAI,gBAAgB,UAAU,WAAW,UAAU,UAClD,QAAQ,UACN,gBACF,WACA,WACA,SACA,UACA,cACA,eACA,0BACA,cACA,WACA,sBACA,kBACA;UAiCO;EA8FR,KAAK,sBAAsB,MAAM,QAAK,gBAAA,oBAAA,uBAAA,QAAA,mBAAA,YAAA,wBAAA,6BAAA,YAAA,UAAA,2BA2CN,UAAI,wBACN,YAAI,QAAA,YAAA,QAAA,UAAA,wBAAA,cAAA,aAAA,cAAA,aAAA,sBAAA,WAAA,oBAAA,UAAA,cAAA,eAAA,0BAAA,cAAA,WAAA;EAxClC,IAAI,sBAAsB,MAAM,QAAK,gBAAA,oBAAA,uBAAA,QAAA,mBAAA,YAAA,wBAAA,6BAAA,YAAA,UAAA,2BAuCL,UAAI,wBACN,YAAI,QAAA,YAAA,QAAA,UAAA,wBAAA,cAAA,aAAA,cAAA,aAAA,qBAAA,WAAA,oBAAA,UAAA,cAAA,eAAA,0BAAA,cAAA,WAAA;EApClC,IAAI,sBAAsB,MAAM,QAAK,gBAAA,oBAAA,uBAAA,QAAA,mBAAA,YAAA,wBAAA,6BAAA,YAAA,UAAA,2BAmCL,UAAI,wBACN,YAAI,QAAA,YAAA,QAAA,UAAA,wBAAA,cAAA,aAAA,cAAA,aAAA,qBAAA,WAAA,oBAAA,UAAA,cAAA,eAAA,0BAAA,cAAA,WAAA;EAhClC,OAAO,sBAAsB,MAAM,QAAK,gBAAA,oBAAA,uBAAA,QAAA,mBAAA,YAAA,wBAAA,6BAAA,YAAA,UAAA,2BA+BR,UAAI,wBACN,YAAI,QAAA,YAAA,QAAA,UAAA,wBAAA,cAAA,aAAA,cAAA,aAAA,wBAAA,WAAA,oBAAA,UAAA,cAAA,eAAA,0BAAA,cAAA,WAAA;EA5BlC,MAAM,sBAAsB,MAAM,QAAK,gBAAA,oBAAA,uBAAA,QAAA,mBAAA,YAAA,wBAAA,6BAAA,YAAA,UAAA,2BA2BP,UAAI,wBACN,YAAI,QAAA,YAAA,QAAA,UAAA,wBAAA,cAAA,aAAA,cAAA,aAAA,uBAAA,WAAA,oBAAA,UAAA,cAAA,eAAA,0BAAA,cAAA,WAAA;EAxBlC,QAAQ,sBAAsB,MAAM,QAAK,gBAAA,oBAAA,uBAAA,QAAA,mBAAA,YAAA,wBAAA,6BAAA,YAAA,UAAA,2BAuBT,UAAI,wBACN,YAAI,QAAA,YAAA,QAAA,UAAA,wBAAA,cAAA,aAAA,cAAA,aAAA,yBAAA,WAAA,oBAAA,UAAA,cAAA,eAAA,0BAAA,cAAA,WAAA;;KAnBvB,oBAAoB,oBAAoB,mBAAmB,UACpE,kBACC,IACA,OACD;KAES,UACX,0BACA,wBACG,oBACH,uBACG,QACA,mBACC,YACA,wBACC,6BACC,YACI,UACL,2BAA2B,UAC1B,wBAAwB,YACpB,QAAQ,YACR,QAAQ,UACZ,wBAAwB,YACpB,aAAa,YACb,aAAa;UAGP,uBAChB,kBAAkB,gBAClB,+BACA,gBAAgB,SAAS,QACzB,oBACA,4DACA,sBAAsB,sCACtB,kDACA,uBACA,8CACA,yBAAyB,eAAe,kBAAkB,eAEzD,iBAED,mBACG,UAAU,WAAW,UAAU;EAGlC,kBAAkB;;EAElB;EACA,WAAW;EACX,qBAAqB,YACpB,WACA,SACA,qBAEA;EAED,gBAAgB;EAChB,0BAA0B,UAAU,WAAW,SAAS,UAAU;EAClE,uBAAuB;EACvB,wBAAwB;EACxB,wBAAwB,QAAQ,0BAA0B;EAC1D,yBAAyB,QAAQ,sBAAsB;EACvD,wBAAwB,eAAe,WAAW,UAAU;EAC5D,wBAAwB;EACxB,mBAAmB;;;;;;;;;;;EAWnB,SAAS"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { t as StandardSchemaV1 } from "./index-CeEtxDmK.mjs";
|
|
2
|
+
import { n as ConstructType, o as TopicEvent, t as Construct } from "./Construct-QXnl3VqT.mjs";
|
|
3
|
+
import { Service, ServiceRecord } from "@geekmidas/services";
|
|
4
|
+
import { AuditStorage, AuditableAction, Auditor } from "@geekmidas/audit";
|
|
5
|
+
import { Logger } from "@geekmidas/logger";
|
|
6
|
+
import { ComposableStandardSchema, InferComposableStandardSchema, InferStandardSchema } from "@geekmidas/schema";
|
|
7
|
+
//#region src/functions/Function.d.ts
|
|
8
|
+
declare class Function<TInput extends ComposableStandardSchema | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, OutSchema extends StandardSchemaV1 | undefined = undefined, 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, OutSchema, TServices, TAuditStorageServiceName, TAuditStorage> {
|
|
9
|
+
readonly fn: Fn;
|
|
10
|
+
input?: TInput | undefined;
|
|
11
|
+
databaseService?: Service<TDatabaseServiceName, TDatabase>;
|
|
12
|
+
__IS_FUNCTION__: boolean;
|
|
13
|
+
static isFunction(obj: any): obj is Function<any, any, any, any, any>;
|
|
14
|
+
/**
|
|
15
|
+
* Validates data against a StandardSchema.
|
|
16
|
+
*
|
|
17
|
+
* @param schema - The StandardSchema to validate against
|
|
18
|
+
* @param data - The data to validate
|
|
19
|
+
* @returns Validation result with value or issues
|
|
20
|
+
*/
|
|
21
|
+
static validate<T extends StandardSchemaV1>(schema: T, data: unknown): Promise<StandardSchemaV1.Result<unknown>> | StandardSchemaV1.Result<unknown>;
|
|
22
|
+
/**
|
|
23
|
+
* Parses and validates data against a schema, throwing an error if validation fails.
|
|
24
|
+
*
|
|
25
|
+
* @param schema - The StandardSchema to validate against
|
|
26
|
+
* @param data - The data to parse and validate
|
|
27
|
+
* @returns The validated data with proper typing
|
|
28
|
+
* @throws {UnprocessableEntityError} When validation fails
|
|
29
|
+
*/
|
|
30
|
+
static parseSchema<T extends StandardSchemaV1>(schema: T, data: unknown): Promise<InferStandardSchema<T>>;
|
|
31
|
+
/**
|
|
32
|
+
* Parses and validates the endpoint output against the output schema.
|
|
33
|
+
*
|
|
34
|
+
* @param output - The raw output data to validate
|
|
35
|
+
* @returns The validated output data
|
|
36
|
+
* @throws {UnprocessableEntityError} When output validation fails
|
|
37
|
+
*/
|
|
38
|
+
parseOutput(output: unknown): Promise<InferStandardSchema<OutSchema>>;
|
|
39
|
+
constructor(fn: Fn, timeout?: number // Default timeout of 30 seconds
|
|
40
|
+
, type?: ConstructType, input?: TInput | undefined, outputSchema?: OutSchema, services?: TServices, logger?: TLogger,
|
|
41
|
+
/** What it publishes once its handler succeeds, each to its own topic. */
|
|
42
|
+
events?: TopicEvent[], memorySize?: number, auditorStorageService?: Service<TAuditStorageServiceName, TAuditStorage>, databaseService?: Service<TDatabaseServiceName, TDatabase>,
|
|
43
|
+
/**
|
|
44
|
+
* The construct ids `.dependsOn()` named — last, so no existing positional
|
|
45
|
+
* argument moves.
|
|
46
|
+
*/
|
|
47
|
+
constructs?: string[]);
|
|
48
|
+
}
|
|
49
|
+
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>;
|
|
50
|
+
/**
|
|
51
|
+
* Conditional type that adds `db` property only when TDatabase is configured.
|
|
52
|
+
*
|
|
53
|
+
* Exported because a queue's and a subscriber's context take `db` the same
|
|
54
|
+
* way, and one definition is what keeps the three from disagreeing.
|
|
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 { FunctionHandler as i, Function as n, FunctionContext as r, DatabaseContext as t };
|
|
76
|
+
//# sourceMappingURL=Function-DuqGcbOI.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Function-DuqGcbOI.d.mts","names":[],"sources":["../src/functions/Function.ts"],"mappings":";;;;;;;cAgDa,SACZ,eAAe,kDACf,kBAAkB,gBAClB,gBAAgB,SAAS,QACzB,kBAAkB,0CAClB,sBAAsB,sCACtB,kDACA,uBACA,8CACA,qBAAqB,mCAAmC,kCAIxD,WAAW,gBACV,QACA,WACA,SACA,WACA,WACA,eACA,gBACG,gBACH,QACA,WACA,SACA,WACA,WACA,eACA,uBAEQ,UACT,SACA,WACA,WACA,0BACA;WAyDiB,IAAI;EAGb,QAAQ;EAQC,kBAAkB,QAAQ,sBAAsB;EAlEjE;SAEO,WAAW,WAAW,OAAO;;;;;;;;SAe7B,SAAS,UAAU,kBAAkB,QAAQ,GAAG,gBAAa,QAAA,iBAAA,mBAAA,iBAAA;;;;;;;;;SAYvD,YAAY,UAAU,kBAClC,QAAQ,GACR,gBACE,QAAQ,oBAAoB;;;;;;;;EAezB,YAAY,kBAAkB,QAAQ,oBAAoB;EAOhE,YACiB,IAAI,IACpB;IACA,OAAM,eACC,QAAQ,oBACf,eAAe,WACf,WAAU,WACV,SAAQ,SAER;;EAAA,SAAQ,cACR,qBACA,wBAAwB,QAAQ,0BAA0B,gBAC1C,kBAAkB,QAAQ,sBAAsB,YAKhE;;;;;EAAA;;KAgBU,gBACX,eAAe,kDACf,kBAAkB,gBAClB,gBAAgB,SAAS,QACzB,kBAAkB,0CAClB,uBACA,sBAAsB,sCACtB,qBAAqB,mCAAmC,qCAKxD,KAAK,gBACJ,QACA,WACA,SACA,WACA,eACA,kBAEG,kBAAkB,mBACpB,oBAAoB,aAAa,QAAQ,oBAAoB,oBACvD;;;;;;;KAQG,gBAAgB,aAAa;EAEpC,IAAI;;;;;KAKJ,eACJ,qBAAqB,mCAAmC,kCAIxD,6BACG;;;;;EAOD,SAAS,QAAQ;;KAGR,gBACX,cAAc,kDACd,kBAAkB,gBAClB,gBAAgB,SAAS,QACzB,uBACA,sBAAsB,sCACtB,qBAAqB,mCAAmC;EAKxD,UAAU,cAAc;EACxB,QAAQ;EACR,OAAO,8BAA8B;IAClC,gBAAgB,aACnB,eAAe,cAAc"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { t as StandardSchemaV1 } from "./index-CeEtxDmK.cjs";
|
|
2
|
+
import { n as ConstructType, o as TopicEvent, t as Construct } from "./Construct-BQALFCh2.cjs";
|
|
3
|
+
import { Logger } from "@geekmidas/logger";
|
|
4
|
+
import { ComposableStandardSchema, InferComposableStandardSchema, InferStandardSchema } from "@geekmidas/schema";
|
|
5
|
+
import { Service, ServiceRecord } from "@geekmidas/services";
|
|
6
|
+
import { AuditStorage, AuditableAction, Auditor } from "@geekmidas/audit";
|
|
7
|
+
//#region src/functions/Function.d.ts
|
|
8
|
+
declare class Function<TInput extends ComposableStandardSchema | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, OutSchema extends StandardSchemaV1 | undefined = undefined, 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, OutSchema, TServices, TAuditStorageServiceName, TAuditStorage> {
|
|
9
|
+
readonly fn: Fn;
|
|
10
|
+
input?: TInput | undefined;
|
|
11
|
+
databaseService?: Service<TDatabaseServiceName, TDatabase>;
|
|
12
|
+
__IS_FUNCTION__: boolean;
|
|
13
|
+
static isFunction(obj: any): obj is Function<any, any, any, any, any>;
|
|
14
|
+
/**
|
|
15
|
+
* Validates data against a StandardSchema.
|
|
16
|
+
*
|
|
17
|
+
* @param schema - The StandardSchema to validate against
|
|
18
|
+
* @param data - The data to validate
|
|
19
|
+
* @returns Validation result with value or issues
|
|
20
|
+
*/
|
|
21
|
+
static validate<T extends StandardSchemaV1>(schema: T, data: unknown): Promise<StandardSchemaV1.Result<unknown>> | StandardSchemaV1.Result<unknown>;
|
|
22
|
+
/**
|
|
23
|
+
* Parses and validates data against a schema, throwing an error if validation fails.
|
|
24
|
+
*
|
|
25
|
+
* @param schema - The StandardSchema to validate against
|
|
26
|
+
* @param data - The data to parse and validate
|
|
27
|
+
* @returns The validated data with proper typing
|
|
28
|
+
* @throws {UnprocessableEntityError} When validation fails
|
|
29
|
+
*/
|
|
30
|
+
static parseSchema<T extends StandardSchemaV1>(schema: T, data: unknown): Promise<InferStandardSchema<T>>;
|
|
31
|
+
/**
|
|
32
|
+
* Parses and validates the endpoint output against the output schema.
|
|
33
|
+
*
|
|
34
|
+
* @param output - The raw output data to validate
|
|
35
|
+
* @returns The validated output data
|
|
36
|
+
* @throws {UnprocessableEntityError} When output validation fails
|
|
37
|
+
*/
|
|
38
|
+
parseOutput(output: unknown): Promise<InferStandardSchema<OutSchema>>;
|
|
39
|
+
constructor(fn: Fn, timeout?: number // Default timeout of 30 seconds
|
|
40
|
+
, type?: ConstructType, input?: TInput | undefined, outputSchema?: OutSchema, services?: TServices, logger?: TLogger,
|
|
41
|
+
/** What it publishes once its handler succeeds, each to its own topic. */
|
|
42
|
+
events?: TopicEvent[], memorySize?: number, auditorStorageService?: Service<TAuditStorageServiceName, TAuditStorage>, databaseService?: Service<TDatabaseServiceName, TDatabase>,
|
|
43
|
+
/**
|
|
44
|
+
* The construct ids `.dependsOn()` named — last, so no existing positional
|
|
45
|
+
* argument moves.
|
|
46
|
+
*/
|
|
47
|
+
constructs?: string[]);
|
|
48
|
+
}
|
|
49
|
+
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>;
|
|
50
|
+
/**
|
|
51
|
+
* Conditional type that adds `db` property only when TDatabase is configured.
|
|
52
|
+
*
|
|
53
|
+
* Exported because a queue's and a subscriber's context take `db` the same
|
|
54
|
+
* way, and one definition is what keeps the three from disagreeing.
|
|
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 { FunctionHandler as i, Function as n, FunctionContext as r, DatabaseContext as t };
|
|
76
|
+
//# sourceMappingURL=Function-Pu-1kKZz.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Function-Pu-1kKZz.d.cts","names":[],"sources":["../src/functions/Function.ts"],"mappings":";;;;;;;cAgDa,SACZ,eAAe,kDACf,kBAAkB,gBAClB,gBAAgB,SAAS,QACzB,kBAAkB,0CAClB,sBAAsB,sCACtB,kDACA,uBACA,8CACA,qBAAqB,mCAAmC,kCAIxD,WAAW,gBACV,QACA,WACA,SACA,WACA,WACA,eACA,gBACG,gBACH,QACA,WACA,SACA,WACA,WACA,eACA,uBAEQ,UACT,SACA,WACA,WACA,0BACA;WAyDiB,IAAI;EAGb,QAAQ;EAQC,kBAAkB,QAAQ,sBAAsB;EAlEjE;SAEO,WAAW,WAAW,OAAO;;;;;;;;SAe7B,SAAS,UAAU,kBAAkB,QAAQ,GAAG,gBAAa,QAAA,iBAAA,mBAAA,iBAAA;;;;;;;;;SAYvD,YAAY,UAAU,kBAClC,QAAQ,GACR,gBACE,QAAQ,oBAAoB;;;;;;;;EAezB,YAAY,kBAAkB,QAAQ,oBAAoB;EAOhE,YACiB,IAAI,IACpB;IACA,OAAM,eACC,QAAQ,oBACf,eAAe,WACf,WAAU,WACV,SAAQ,SAER;;EAAA,SAAQ,cACR,qBACA,wBAAwB,QAAQ,0BAA0B,gBAC1C,kBAAkB,QAAQ,sBAAsB,YAKhE;;;;;EAAA;;KAgBU,gBACX,eAAe,kDACf,kBAAkB,gBAClB,gBAAgB,SAAS,QACzB,kBAAkB,0CAClB,uBACA,sBAAsB,sCACtB,qBAAqB,mCAAmC,qCAKxD,KAAK,gBACJ,QACA,WACA,SACA,WACA,eACA,kBAEG,kBAAkB,mBACpB,oBAAoB,aAAa,QAAQ,oBAAoB,oBACvD;;;;;;;KAQG,gBAAgB,aAAa;EAEpC,IAAI;;;;;KAKJ,eACJ,qBAAqB,mCAAmC,kCAIxD,6BACG;;;;;EAOD,SAAS,QAAQ;;KAGR,gBACX,cAAc,kDACd,kBAAkB,gBAClB,gBAAgB,SAAS,QACzB,uBACA,sBAAsB,sCACtB,qBAAqB,mCAAmC;EAKxD,UAAU,cAAc;EACxB,QAAQ;EACR,OAAO,8BAA8B;IAClC,gBAAgB,aACnB,eAAe,cAAc"}
|