@geekmidas/constructs 10.0.0-alpha.9 → 10.0.0-alpha.91
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 +222 -158
- package/dist/{Construct-BD5neF7w.mjs → Construct-B1vGBPme.mjs} +33 -34
- package/dist/Construct-B1vGBPme.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-DUSXuTHP.cjs} +53 -48
- package/dist/Construct-DUSXuTHP.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-C0Ek1-RA.cjs} +47 -31
- package/dist/CronBuilder-C0Ek1-RA.cjs.map +1 -0
- package/dist/CronBuilder-DaSUm2Na.d.mts +47 -0
- package/dist/CronBuilder-DaSUm2Na.d.mts.map +1 -0
- package/dist/{CronBuilder-CYKT5RiO.mjs → CronBuilder-Dmix_Pen.mjs} +37 -21
- package/dist/CronBuilder-Dmix_Pen.mjs.map +1 -0
- package/dist/CronBuilder-g1lZLWyG.d.cts +47 -0
- package/dist/CronBuilder-g1lZLWyG.d.cts.map +1 -0
- package/dist/{Endpoint-DCQPMdUX.mjs → Endpoint-BG4UJ9oA.mjs} +146 -109
- package/dist/Endpoint-BG4UJ9oA.mjs.map +1 -0
- package/dist/{Endpoint-DcWXE-SZ.cjs → Endpoint-BoUg8ocM.cjs} +174 -131
- package/dist/Endpoint-BoUg8ocM.cjs.map +1 -0
- package/dist/{Endpoint-BjWKinFA.d.mts → Endpoint-Du-NwPX2.d.mts} +83 -91
- package/dist/Endpoint-Du-NwPX2.d.mts.map +1 -0
- package/dist/{Endpoint-dav89W6-.d.cts → Endpoint-aCvBMPoH.d.cts} +82 -90
- package/dist/Endpoint-aCvBMPoH.d.cts.map +1 -0
- package/dist/{EndpointFactory-CjV8F_lJ.mjs → EndpointFactory-BDtsrEvJ.mjs} +57 -76
- package/dist/EndpointFactory-BDtsrEvJ.mjs.map +1 -0
- package/dist/{EndpointFactory-CdWB7wPw.cjs → EndpointFactory-DJ7gXLpR.cjs} +93 -112
- package/dist/EndpointFactory-DJ7gXLpR.cjs.map +1 -0
- package/dist/{index-Bd5FqCoe.d.cts → EndpointFactory-DMYdJCOj.d.mts} +78 -134
- package/dist/EndpointFactory-DMYdJCOj.d.mts.map +1 -0
- package/dist/{index-lAO9egTb.d.mts → EndpointFactory-I7s1co3Y.d.cts} +79 -135
- package/dist/EndpointFactory-I7s1co3Y.d.cts.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-P1ahhZHu.mjs → HonoEndpointAdaptor-PtPlbeKY.mjs} +75 -56
- package/dist/HonoEndpointAdaptor-PtPlbeKY.mjs.map +1 -0
- package/dist/{HonoEndpointAdaptor-DtL9j19R.cjs → HonoEndpointAdaptor-zVzVLJEO.cjs} +83 -61
- package/dist/HonoEndpointAdaptor-zVzVLJEO.cjs.map +1 -0
- package/dist/Queue-A3wfD0it.cjs +109 -0
- package/dist/Queue-A3wfD0it.cjs.map +1 -0
- package/dist/Queue-D6USGS4q.mjs +104 -0
- package/dist/Queue-D6USGS4q.mjs.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/QueueBuilder-BjuF0UBl.cjs +135 -0
- package/dist/QueueBuilder-BjuF0UBl.cjs.map +1 -0
- package/dist/QueueBuilder-Cue73M4t.mjs +118 -0
- package/dist/QueueBuilder-Cue73M4t.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-BjkbeT9l.mjs → SubscriberBuilder-CDy4nHCz.mjs} +50 -24
- package/dist/SubscriberBuilder-CDy4nHCz.mjs.map +1 -0
- package/dist/SubscriberBuilder-CuCMFpYW.d.mts +67 -0
- package/dist/SubscriberBuilder-CuCMFpYW.d.mts.map +1 -0
- package/dist/{SubscriberBuilder-4OPehf2R.cjs → SubscriberBuilder-D_owVoHo.cjs} +61 -36
- package/dist/SubscriberBuilder-D_owVoHo.cjs.map +1 -0
- package/dist/SubscriberBuilder-g3fAVWgs.d.cts +67 -0
- package/dist/SubscriberBuilder-g3fAVWgs.d.cts.map +1 -0
- package/dist/Topic-D74b5cgs.mjs +99 -0
- package/dist/Topic-D74b5cgs.mjs.map +1 -0
- package/dist/Topic-GHxcU8AG.cjs +104 -0
- package/dist/Topic-GHxcU8AG.cjs.map +1 -0
- package/dist/adaptors/aws.cjs +131 -220
- 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 +34 -53
- package/dist/adaptors/aws.d.mts.map +1 -1
- package/dist/adaptors/aws.mjs +102 -193
- 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 +743 -89
- package/dist/adaptors/testing.cjs.map +1 -1
- package/dist/adaptors/testing.d.cts +351 -54
- package/dist/adaptors/testing.d.cts.map +1 -1
- package/dist/adaptors/testing.d.mts +351 -54
- package/dist/adaptors/testing.d.mts.map +1 -1
- package/dist/adaptors/testing.mjs +706 -70
- package/dist/adaptors/testing.mjs.map +1 -1
- package/dist/auth-BMCJN30Y.d.cts +268 -0
- package/dist/auth-BMCJN30Y.d.cts.map +1 -0
- package/dist/auth-CcuceLYo.d.mts +268 -0
- package/dist/auth-CcuceLYo.d.mts.map +1 -0
- package/dist/auth.cjs +301 -33
- 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 +289 -27
- 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 +77 -17
- package/dist/credential.cjs.map +1 -1
- package/dist/credential.d.cts +34 -9
- package/dist/credential.d.cts.map +1 -1
- package/dist/credential.d.mts +34 -9
- package/dist/credential.d.mts.map +1 -1
- package/dist/credential.mjs +71 -13
- package/dist/credential.mjs.map +1 -1
- package/dist/crons/index.cjs +129 -7
- package/dist/crons/index.cjs.map +1 -1
- package/dist/crons/index.d.cts +45 -11
- package/dist/crons/index.d.cts.map +1 -1
- package/dist/crons/index.d.mts +45 -11
- package/dist/crons/index.d.mts.map +1 -1
- package/dist/crons/index.mjs +127 -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-MJ8id87V.d.mts +105 -0
- package/dist/external-api-MJ8id87V.d.mts.map +1 -0
- package/dist/external-api-O107yzZJ.d.cts +105 -0
- package/dist/external-api-O107yzZJ.d.cts.map +1 -0
- package/dist/external-api.cjs +142 -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 +139 -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-14lpEFL4.mjs → functions-BFizikJU.mjs} +376 -238
- package/dist/{functions-14lpEFL4.mjs.map → functions-BFizikJU.mjs.map} +1 -1
- package/dist/{functions-i_la-N5r.cjs → functions-CfzJG9hK.cjs} +414 -264
- package/dist/functions-CfzJG9hK.cjs.map +1 -0
- 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 +27 -4
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +27 -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-Bii4l6eP.mjs +370 -0
- package/dist/kysely-Bii4l6eP.mjs.map +1 -0
- package/dist/kysely-CO_Dk43W.cjs +383 -0
- package/dist/kysely-CO_Dk43W.cjs.map +1 -0
- package/dist/kysely-D0bpzgPs.d.cts +175 -0
- package/dist/kysely-D0bpzgPs.d.cts.map +1 -0
- package/dist/kysely-DUqC3Ie0.d.mts +175 -0
- package/dist/kysely-DUqC3Ie0.d.mts.map +1 -0
- package/dist/{telemetry-C3L0iS28.d.cts → lambdaTelemetry-8vnmVZQ5.d.cts} +3 -6
- package/dist/lambdaTelemetry-8vnmVZQ5.d.cts.map +1 -0
- package/dist/{telemetry-D7bVFLGi.d.mts → lambdaTelemetry-8vnmVZQ5.d.mts} +3 -6
- package/dist/lambdaTelemetry-8vnmVZQ5.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-BRRVVHUB.mjs +131 -0
- package/dist/processAudits-BRRVVHUB.mjs.map +1 -0
- package/dist/processAudits-DasOZjPl.cjs +154 -0
- package/dist/processAudits-DasOZjPl.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 +90 -59
- package/dist/rest-api.cjs.map +1 -1
- package/dist/rest-api.d.cts +70 -42
- package/dist/rest-api.d.cts.map +1 -1
- package/dist/rest-api.d.mts +70 -42
- package/dist/rest-api.d.mts.map +1 -1
- package/dist/rest-api.mjs +82 -51
- package/dist/rest-api.mjs.map +1 -1
- package/dist/{chunk-DWy1uDak.cjs → rolldown-runtime-y5ARvAq5.cjs} +14 -18
- package/dist/runSubscriber-BHvJ8POr.mjs +109 -0
- package/dist/runSubscriber-BHvJ8POr.mjs.map +1 -0
- package/dist/runSubscriber-D8nLXIv1.cjs +126 -0
- package/dist/runSubscriber-D8nLXIv1.cjs.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 +33 -7
- package/dist/site.cjs.map +1 -1
- package/dist/site.d.cts +17 -7
- package/dist/site.d.cts.map +1 -1
- package/dist/site.d.mts +17 -7
- package/dist/site.d.mts.map +1 -1
- package/dist/site.mjs +29 -3
- package/dist/site.mjs.map +1 -1
- package/dist/stages-BSCF19o2.d.cts +56 -0
- package/dist/stages-BSCF19o2.d.cts.map +1 -0
- package/dist/stages-BSCF19o2.d.mts +56 -0
- package/dist/stages-BSCF19o2.d.mts.map +1 -0
- package/dist/subscribers/index.cjs +118 -6
- package/dist/subscribers/index.cjs.map +1 -0
- package/dist/subscribers/index.d.cts +51 -6
- package/dist/subscribers/index.d.cts.map +1 -0
- package/dist/subscribers/index.d.mts +51 -6
- package/dist/subscribers/index.d.mts.map +1 -0
- package/dist/subscribers/index.mjs +115 -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-B48RLjyk.d.cts +40 -0
- package/dist/telemetry-B48RLjyk.d.cts.map +1 -0
- package/dist/telemetry-DRtT1_0A.d.mts +40 -0
- package/dist/telemetry-DRtT1_0A.d.mts.map +1 -0
- package/dist/telemetry.cjs +56 -0
- package/dist/telemetry.cjs.map +1 -0
- package/dist/telemetry.d.cts +2 -0
- package/dist/telemetry.d.mts +2 -0
- package/dist/telemetry.mjs +55 -0
- package/dist/telemetry.mjs.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/tracing-CxaZ98IB.mjs +110 -0
- package/dist/tracing-CxaZ98IB.mjs.map +1 -0
- package/dist/tracing-DPMidF_r.cjs +127 -0
- package/dist/tracing-DPMidF_r.cjs.map +1 -0
- 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 +59 -34
- package/dist/worker.cjs.map +1 -1
- package/dist/worker.d.cts +70 -45
- package/dist/worker.d.cts.map +1 -1
- package/dist/worker.d.mts +70 -44
- package/dist/worker.d.mts.map +1 -1
- package/dist/worker.mjs +54 -29
- package/dist/worker.mjs.map +1 -1
- package/package.json +96 -42
- 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 +0 -92
- package/dist/processAudits-CGqttuXm.cjs.map +0 -1
- package/dist/processAudits-Dmts9H_b.mjs +0 -80
- 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
package/dist/adaptors/aws.cjs
CHANGED
|
@@ -1,22 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
require(
|
|
3
|
-
require(
|
|
4
|
-
const require_functions = require(
|
|
5
|
-
require(
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const require_processAudits = require(
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_rolldown_runtime = require("../rolldown-runtime-y5ARvAq5.cjs");
|
|
3
|
+
const require_tracing = require("../tracing-DPMidF_r.cjs");
|
|
4
|
+
const require_functions = require("../functions-CfzJG9hK.cjs");
|
|
5
|
+
const require_Endpoint = require("../Endpoint-BoUg8ocM.cjs");
|
|
6
|
+
const require_surfaceEnv = require("../surfaceEnv-CNimK76p.cjs");
|
|
7
|
+
const require_lazyAccessors = require("../lazyAccessors-hJKGv8Ay.cjs");
|
|
8
|
+
const require_runSubscriber = require("../runSubscriber-D8nLXIv1.cjs");
|
|
9
|
+
const require_processAudits = require("../processAudits-DasOZjPl.cjs");
|
|
10
|
+
let _geekmidas_events = require("@geekmidas/events");
|
|
11
|
+
let _geekmidas_errors = require("@geekmidas/errors");
|
|
12
|
+
let _geekmidas_services = require("@geekmidas/services");
|
|
13
|
+
let qs = require("qs");
|
|
14
|
+
qs = require_rolldown_runtime.__toESM(qs, 1);
|
|
15
|
+
let _middy_core = require("@middy/core");
|
|
16
|
+
_middy_core = require_rolldown_runtime.__toESM(_middy_core, 1);
|
|
17
|
+
let _geekmidas_audit = require("@geekmidas/audit");
|
|
18
|
+
let _geekmidas_audit_kysely = require("@geekmidas/audit/kysely");
|
|
19
|
+
let _geekmidas_db_rls = require("@geekmidas/db/rls");
|
|
18
20
|
//#region src/functions/FunctionExecutionWrapper.ts
|
|
19
21
|
var FunctionExecutionWrapper = class {
|
|
22
|
+
envParser;
|
|
23
|
+
fn;
|
|
20
24
|
constructor(envParser, fn) {
|
|
21
25
|
this.envParser = envParser;
|
|
22
26
|
this.fn = fn;
|
|
@@ -26,25 +30,22 @@ var FunctionExecutionWrapper = class {
|
|
|
26
30
|
return this._logger || this.fn.logger;
|
|
27
31
|
}
|
|
28
32
|
get serviceDiscovery() {
|
|
29
|
-
|
|
30
|
-
return serviceDiscovery;
|
|
33
|
+
return _geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
|
|
31
34
|
}
|
|
32
35
|
getServices() {
|
|
33
36
|
return this.serviceDiscovery.register(this.fn.services);
|
|
34
37
|
}
|
|
35
38
|
async getDatabase() {
|
|
36
|
-
if (!this.fn.databaseService) return
|
|
37
|
-
|
|
38
|
-
return services[this.fn.databaseService.serviceName];
|
|
39
|
+
if (!this.fn.databaseService) return;
|
|
40
|
+
return (await this.serviceDiscovery.register([this.fn.databaseService]))[this.fn.databaseService.serviceName];
|
|
39
41
|
}
|
|
40
42
|
/**
|
|
41
43
|
* Get the audit storage service if configured.
|
|
42
44
|
* Returns undefined if no auditor storage is configured.
|
|
43
45
|
*/
|
|
44
46
|
async getAuditStorage() {
|
|
45
|
-
if (!this.fn.auditorStorageService) return
|
|
46
|
-
|
|
47
|
-
return services[this.fn.auditorStorageService.serviceName];
|
|
47
|
+
if (!this.fn.auditorStorageService) return;
|
|
48
|
+
return (await this.serviceDiscovery.register([this.fn.auditorStorageService]))[this.fn.auditorStorageService.serviceName];
|
|
48
49
|
}
|
|
49
50
|
/**
|
|
50
51
|
* Create an auditor instance for the function.
|
|
@@ -52,8 +53,8 @@ var FunctionExecutionWrapper = class {
|
|
|
52
53
|
*/
|
|
53
54
|
async createAuditor() {
|
|
54
55
|
const storage = await this.getAuditStorage();
|
|
55
|
-
if (!storage) return
|
|
56
|
-
return new
|
|
56
|
+
if (!storage) return;
|
|
57
|
+
return new _geekmidas_audit.DefaultAuditor({
|
|
57
58
|
actor: {
|
|
58
59
|
id: "system",
|
|
59
60
|
type: "system"
|
|
@@ -73,52 +74,45 @@ var FunctionExecutionWrapper = class {
|
|
|
73
74
|
async executeWithAudit(handler) {
|
|
74
75
|
const auditor = await this.createAuditor();
|
|
75
76
|
const storage = await this.getAuditStorage();
|
|
76
|
-
if (!auditor || !storage) {
|
|
77
|
-
const db$1 = await this.getDatabase();
|
|
78
|
-
return handler({ db: db$1 });
|
|
79
|
-
}
|
|
77
|
+
if (!auditor || !storage) return handler({ db: await this.getDatabase() });
|
|
80
78
|
const storageDb = storage.getDatabase?.();
|
|
81
79
|
const databaseServiceName = this.fn.databaseService?.serviceName;
|
|
82
80
|
const auditDbServiceName = this.fn.auditorStorageService?.serviceName;
|
|
83
|
-
if (storageDb && databaseServiceName && auditDbServiceName) return (0,
|
|
84
|
-
|
|
81
|
+
if (storageDb && databaseServiceName && auditDbServiceName) return (0, _geekmidas_audit_kysely.withAuditableTransaction)(storageDb, auditor, async (trx) => {
|
|
82
|
+
return await handler({
|
|
85
83
|
auditor,
|
|
86
84
|
db: trx
|
|
87
85
|
});
|
|
88
|
-
return response$1;
|
|
89
86
|
});
|
|
90
|
-
const db = await this.getDatabase();
|
|
91
87
|
const response = await handler({
|
|
92
88
|
auditor,
|
|
93
|
-
db
|
|
89
|
+
db: await this.getDatabase()
|
|
94
90
|
});
|
|
95
91
|
await auditor.flush();
|
|
96
92
|
return response;
|
|
97
93
|
}
|
|
98
94
|
async getFunctionInput(event) {
|
|
99
|
-
|
|
100
|
-
return parsedInput;
|
|
95
|
+
return await require_functions.FunctionBuilder.parseComposableStandardSchema(event, this.fn.input);
|
|
101
96
|
}
|
|
102
97
|
async publishEvents(response) {
|
|
103
|
-
await
|
|
98
|
+
await require_functions.publishEvents(this.logger, this.serviceDiscovery, this.fn.events, response);
|
|
104
99
|
}
|
|
105
100
|
async parseComposableStandardSchema(data, schema) {
|
|
106
101
|
return require_functions.FunctionBuilder.parseComposableStandardSchema(data, schema);
|
|
107
102
|
}
|
|
108
103
|
};
|
|
109
|
-
|
|
110
104
|
//#endregion
|
|
111
105
|
//#region src/functions/AWSLambdaFunction.ts
|
|
112
106
|
var AWSLambdaFunction = class extends FunctionExecutionWrapper {
|
|
107
|
+
fn;
|
|
113
108
|
constructor(envParser, fn) {
|
|
114
109
|
super(envParser, fn);
|
|
115
110
|
this.fn = fn;
|
|
116
111
|
}
|
|
117
112
|
error() {
|
|
118
113
|
return { onError: (req) => {
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
throw (0, __geekmidas_errors.wrapError)(req.error);
|
|
114
|
+
(req.event?.logger || this.fn.logger).error(req.error || {}, "Error processing function");
|
|
115
|
+
throw (0, _geekmidas_errors.wrapError)(req.error);
|
|
122
116
|
} };
|
|
123
117
|
}
|
|
124
118
|
baseInput() {
|
|
@@ -133,7 +127,7 @@ var AWSLambdaFunction = class extends FunctionExecutionWrapper {
|
|
|
133
127
|
} else req.event.parsedInput = req.event;
|
|
134
128
|
} catch (error) {
|
|
135
129
|
this.logger.error({
|
|
136
|
-
error,
|
|
130
|
+
err: error,
|
|
137
131
|
event: req.event
|
|
138
132
|
}, "Failed to parse input");
|
|
139
133
|
throw error;
|
|
@@ -193,26 +187,25 @@ var AWSLambdaFunction = class extends FunctionExecutionWrapper {
|
|
|
193
187
|
db: event.db,
|
|
194
188
|
auditor: event.auditor
|
|
195
189
|
});
|
|
196
|
-
|
|
197
|
-
return output;
|
|
190
|
+
return await this.fn.parseOutput(result);
|
|
198
191
|
}
|
|
199
192
|
get handler() {
|
|
200
193
|
const handler = this._handler.bind(this);
|
|
201
|
-
const chain = (0,
|
|
194
|
+
const chain = (0, _middy_core.default)(handler).use(this.loggerMiddleware()).use(this.baseInput()).use(this.error()).use(this.services()).use(this.database()).use(this.auditor()).use(this.input()).use(this.events());
|
|
202
195
|
const wrappedHandler = async (event, context) => {
|
|
203
196
|
const startTime = Date.now();
|
|
204
197
|
const requestId = context.awsRequestId;
|
|
205
198
|
const logger = this.fn.logger.child({ requestId });
|
|
206
|
-
return (0,
|
|
199
|
+
return (0, _geekmidas_services.runWithRequestContext)({
|
|
207
200
|
logger,
|
|
208
201
|
requestId,
|
|
209
|
-
startTime
|
|
202
|
+
startTime,
|
|
203
|
+
operation: context.functionName
|
|
210
204
|
}, () => chain(event, context));
|
|
211
205
|
};
|
|
212
206
|
return wrappedHandler;
|
|
213
207
|
}
|
|
214
208
|
};
|
|
215
|
-
|
|
216
209
|
//#endregion
|
|
217
210
|
//#region src/crons/AWSScheduledFunction.ts
|
|
218
211
|
/**
|
|
@@ -246,11 +239,11 @@ var AWSScheduledFunction = class extends AWSLambdaFunction {
|
|
|
246
239
|
super(envParser, cron);
|
|
247
240
|
}
|
|
248
241
|
};
|
|
249
|
-
|
|
250
242
|
//#endregion
|
|
251
243
|
//#region src/endpoints/AmazonApiGatewayEndpointAdaptor.ts
|
|
252
|
-
var
|
|
244
|
+
var import_lodash_set = /* @__PURE__ */ require_rolldown_runtime.__toESM(require_Endpoint.require_lodash_set(), 1);
|
|
253
245
|
var AmazonApiGatewayEndpoint = class {
|
|
246
|
+
endpoint;
|
|
254
247
|
options;
|
|
255
248
|
/**
|
|
256
249
|
* The parser this adaptor discovers services with.
|
|
@@ -270,7 +263,7 @@ var AmazonApiGatewayEndpoint = class {
|
|
|
270
263
|
error() {
|
|
271
264
|
return { onError: (req) => {
|
|
272
265
|
(req.event.logger || this.endpoint.logger).error(req.error || {}, "Error processing request");
|
|
273
|
-
const wrappedError = (0,
|
|
266
|
+
const wrappedError = (0, _geekmidas_errors.wrapError)(req.error);
|
|
274
267
|
req.response = {
|
|
275
268
|
statusCode: wrappedError.statusCode,
|
|
276
269
|
body: wrappedError.body
|
|
@@ -288,8 +281,7 @@ var AmazonApiGatewayEndpoint = class {
|
|
|
288
281
|
static decodeBody(body, isBase64Encoded, contentType) {
|
|
289
282
|
if (!body) return void 0;
|
|
290
283
|
const raw = isBase64Encoded ? Buffer.from(body, "base64").toString("utf-8") : body;
|
|
291
|
-
|
|
292
|
-
if (isJson) return JSON.parse(raw);
|
|
284
|
+
if (!contentType || contentType.toLowerCase().includes("application/json")) return JSON.parse(raw);
|
|
293
285
|
return raw;
|
|
294
286
|
}
|
|
295
287
|
getCookies(e) {
|
|
@@ -303,13 +295,13 @@ var AmazonApiGatewayEndpoint = class {
|
|
|
303
295
|
const headers = req.event.headers;
|
|
304
296
|
const header = require_Endpoint.Endpoint.createHeaders(headers);
|
|
305
297
|
const cookie = this.getCookies(req.event);
|
|
306
|
-
(0,
|
|
307
|
-
(0,
|
|
308
|
-
(0,
|
|
309
|
-
(0,
|
|
310
|
-
(0,
|
|
298
|
+
(0, import_lodash_set.default)(req.event, "body", await this.endpoint.parseInput(body, "body"));
|
|
299
|
+
(0, import_lodash_set.default)(req.event, "query", await this.endpoint.parseInput(query, "query"));
|
|
300
|
+
(0, import_lodash_set.default)(req.event, "params", await this.endpoint.parseInput(params, "params"));
|
|
301
|
+
(0, import_lodash_set.default)(req.event, "header", header);
|
|
302
|
+
(0, import_lodash_set.default)(req.event, "cookie", cookie);
|
|
311
303
|
} catch (error) {
|
|
312
|
-
if (error && typeof error === "object" && Array.isArray(error)) throw new
|
|
304
|
+
if (error && typeof error === "object" && Array.isArray(error)) throw new _geekmidas_errors.UnprocessableEntityError("Validation failed", error);
|
|
313
305
|
throw error;
|
|
314
306
|
}
|
|
315
307
|
} };
|
|
@@ -326,9 +318,8 @@ var AmazonApiGatewayEndpoint = class {
|
|
|
326
318
|
}
|
|
327
319
|
services() {
|
|
328
320
|
return { before: async (req) => {
|
|
329
|
-
|
|
330
|
-
const
|
|
331
|
-
const services = await serviceDiscovery.register(this.endpoint.services);
|
|
321
|
+
req.event.logger;
|
|
322
|
+
const services = await _geekmidas_services.ServiceDiscovery.getInstance(this.envParser).register(this.endpoint.services);
|
|
332
323
|
req.event.services = services;
|
|
333
324
|
} };
|
|
334
325
|
}
|
|
@@ -339,7 +330,7 @@ var AmazonApiGatewayEndpoint = class {
|
|
|
339
330
|
const header = req.event.header;
|
|
340
331
|
const cookie = req.event.cookie;
|
|
341
332
|
const session = req.event.session;
|
|
342
|
-
|
|
333
|
+
if (!await this.endpoint.authorize({
|
|
343
334
|
header,
|
|
344
335
|
cookie,
|
|
345
336
|
services,
|
|
@@ -349,19 +340,17 @@ var AmazonApiGatewayEndpoint = class {
|
|
|
349
340
|
body: req.event.body,
|
|
350
341
|
query: req.event.query,
|
|
351
342
|
params: req.event.params
|
|
352
|
-
})
|
|
353
|
-
if (!isAuthorized) {
|
|
343
|
+
})) {
|
|
354
344
|
logger.warn("Forbidden access attempt");
|
|
355
|
-
throw new
|
|
345
|
+
throw new _geekmidas_errors.ForbiddenError("Forbidden access to the endpoint", "You do not have permission to access this resource.");
|
|
356
346
|
}
|
|
357
347
|
} };
|
|
358
348
|
}
|
|
359
349
|
database() {
|
|
360
350
|
return { before: async (req) => {
|
|
361
351
|
if (!this.endpoint.databaseService) return;
|
|
362
|
-
|
|
363
|
-
const
|
|
364
|
-
const db = await serviceDiscovery.register([this.endpoint.databaseService]).then((s) => s[this.endpoint.databaseService?.serviceName]);
|
|
352
|
+
req.event.logger;
|
|
353
|
+
const db = await _geekmidas_services.ServiceDiscovery.getInstance(this.envParser).register([this.endpoint.databaseService]).then((s) => s[this.endpoint.databaseService?.serviceName]);
|
|
365
354
|
req.event.db = db;
|
|
366
355
|
} };
|
|
367
356
|
}
|
|
@@ -386,15 +375,15 @@ var AmazonApiGatewayEndpoint = class {
|
|
|
386
375
|
const statusCode = req.response?.statusCode ?? this.endpoint.status;
|
|
387
376
|
if (require_Endpoint.Endpoint.isSuccessStatus(statusCode)) {
|
|
388
377
|
const logger = event.logger;
|
|
389
|
-
const serviceDiscovery =
|
|
390
|
-
await
|
|
378
|
+
const serviceDiscovery = _geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
|
|
379
|
+
await require_functions.publishConstructEvents(this.endpoint, response, serviceDiscovery, logger);
|
|
391
380
|
}
|
|
392
381
|
} };
|
|
393
382
|
}
|
|
394
383
|
async _handler(event) {
|
|
395
384
|
const input = this.endpoint.refineInput(event);
|
|
396
385
|
const logger = event.logger;
|
|
397
|
-
const serviceDiscovery =
|
|
386
|
+
const serviceDiscovery = _geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
|
|
398
387
|
const auditContext = await require_processAudits.createAuditContext(this.endpoint, serviceDiscovery, logger, {
|
|
399
388
|
session: event.session,
|
|
400
389
|
header: event.header,
|
|
@@ -412,9 +401,8 @@ var AmazonApiGatewayEndpoint = class {
|
|
|
412
401
|
cookie: event.cookie,
|
|
413
402
|
logger
|
|
414
403
|
}) : void 0;
|
|
415
|
-
const
|
|
416
|
-
const
|
|
417
|
-
const baseDb = sameDatabase ? auditor?.getTransaction?.() ?? rawDb : rawDb;
|
|
404
|
+
const { output, metadata } = await require_processAudits.executeWithAuditTransaction(auditContext, async (auditor) => {
|
|
405
|
+
const baseDb = auditContext?.storage?.databaseServiceName && auditContext.storage.databaseServiceName === this.endpoint.databaseService?.serviceName ? auditor?.getTransaction?.() ?? rawDb : rawDb;
|
|
418
406
|
const executeHandler = async (db) => {
|
|
419
407
|
const responseBuilder = new require_Endpoint.ResponseBuilder();
|
|
420
408
|
const response = await this.endpoint.handler({
|
|
@@ -428,33 +416,31 @@ var AmazonApiGatewayEndpoint = class {
|
|
|
428
416
|
...input
|
|
429
417
|
}, responseBuilder);
|
|
430
418
|
let data = response;
|
|
431
|
-
let metadata
|
|
419
|
+
let metadata = responseBuilder.getMetadata();
|
|
432
420
|
if (require_Endpoint.Endpoint.hasMetadata(response)) {
|
|
433
421
|
data = response.data;
|
|
434
|
-
metadata
|
|
422
|
+
metadata = response.metadata;
|
|
435
423
|
}
|
|
436
|
-
const output$1 = this.endpoint.outputSchema ? await this.endpoint.parseOutput(data) : void 0;
|
|
437
424
|
return {
|
|
438
|
-
output:
|
|
439
|
-
metadata
|
|
425
|
+
output: this.endpoint.outputSchema ? await this.endpoint.parseOutput(data) : void 0,
|
|
426
|
+
metadata,
|
|
440
427
|
responseBuilder
|
|
441
428
|
};
|
|
442
429
|
};
|
|
443
|
-
if (rlsActive && rlsContext && baseDb) return (0,
|
|
430
|
+
if (rlsActive && rlsContext && baseDb) return (0, _geekmidas_db_rls.withRlsContext)(baseDb, rlsContext, async (trx) => executeHandler(trx), { prefix: this.endpoint.rlsConfig?.prefix });
|
|
444
431
|
return executeHandler(baseDb);
|
|
445
|
-
}, async (result
|
|
432
|
+
}, async (result, auditor) => {
|
|
446
433
|
if (!audits?.length) return;
|
|
447
434
|
for (const audit of audits) {
|
|
448
|
-
if (audit.when && !audit.when(result
|
|
449
|
-
const payload = audit.payload(result
|
|
450
|
-
const entityId = audit.entityId?.(result
|
|
435
|
+
if (audit.when && !audit.when(result.output)) continue;
|
|
436
|
+
const payload = audit.payload(result.output);
|
|
437
|
+
const entityId = audit.entityId?.(result.output);
|
|
451
438
|
auditor.audit(audit.type, payload, {
|
|
452
439
|
table: audit.table,
|
|
453
440
|
entityId
|
|
454
441
|
});
|
|
455
442
|
}
|
|
456
443
|
}, { db: rawDb });
|
|
457
|
-
const { output, metadata } = result;
|
|
458
444
|
const isJsonResponse = this.endpoint.responseType === "application/json";
|
|
459
445
|
const body = output === void 0 ? void 0 : isJsonResponse ? JSON.stringify(output) : typeof output === "string" ? output : String(output);
|
|
460
446
|
event.__response = output;
|
|
@@ -505,7 +491,7 @@ var AmazonApiGatewayEndpoint = class {
|
|
|
505
491
|
}
|
|
506
492
|
get handler() {
|
|
507
493
|
const handler = this._handler.bind(this);
|
|
508
|
-
let chain = (0,
|
|
494
|
+
let chain = (0, _middy_core.default)(handler).use(this.logger()).use(this.error()).use(this.services()).use(this.input()).use(this.database()).use(this.session()).use(this.authorize()).use(this.events());
|
|
509
495
|
const telemetryMiddleware = this.telemetry();
|
|
510
496
|
if (telemetryMiddleware) chain = chain.use(telemetryMiddleware);
|
|
511
497
|
if (this.options.telescope?.middleware) chain = chain.use(this.options.telescope.middleware);
|
|
@@ -513,16 +499,17 @@ var AmazonApiGatewayEndpoint = class {
|
|
|
513
499
|
const startTime = Date.now();
|
|
514
500
|
const requestId = context.awsRequestId;
|
|
515
501
|
const logger = this.endpoint.logger.child({ requestId });
|
|
516
|
-
|
|
502
|
+
const operation = `${this.endpoint.method} ${this.endpoint.route}`;
|
|
503
|
+
return (0, _geekmidas_services.runWithRequestContext)({
|
|
517
504
|
logger,
|
|
518
505
|
requestId,
|
|
519
|
-
startTime
|
|
506
|
+
startTime,
|
|
507
|
+
operation
|
|
520
508
|
}, () => chain(event, context));
|
|
521
509
|
};
|
|
522
510
|
return wrappedHandler;
|
|
523
511
|
}
|
|
524
512
|
};
|
|
525
|
-
|
|
526
513
|
//#endregion
|
|
527
514
|
//#region src/endpoints/parseQueryParams.ts
|
|
528
515
|
/**
|
|
@@ -543,10 +530,10 @@ function parseQueryParams(queryParams) {
|
|
|
543
530
|
}
|
|
544
531
|
return qs.default.parse(parts.join("&"));
|
|
545
532
|
}
|
|
546
|
-
|
|
547
533
|
//#endregion
|
|
548
534
|
//#region src/endpoints/AmazonApiGatewayV1EndpointAdaptor.ts
|
|
549
535
|
var AmazonApiGatewayV1Endpoint = class extends AmazonApiGatewayEndpoint {
|
|
536
|
+
endpoint;
|
|
550
537
|
getInput(e) {
|
|
551
538
|
const multiValueParams = e.multiValueQueryStringParameters || {};
|
|
552
539
|
const singleValueParams = e.queryStringParameters || {};
|
|
@@ -579,17 +566,16 @@ var AmazonApiGatewayV1Endpoint = class extends AmazonApiGatewayEndpoint {
|
|
|
579
566
|
this.endpoint = endpoint;
|
|
580
567
|
}
|
|
581
568
|
};
|
|
582
|
-
|
|
583
569
|
//#endregion
|
|
584
570
|
//#region src/endpoints/AmazonApiGatewayV2EndpointAdaptor.ts
|
|
585
571
|
var AmazonApiGatewayV2Endpoint = class extends AmazonApiGatewayEndpoint {
|
|
572
|
+
endpoint;
|
|
586
573
|
getCookies(e) {
|
|
587
574
|
return require_lazyAccessors.createApiGatewayCookies(e.cookies, e.headers?.cookie);
|
|
588
575
|
}
|
|
589
576
|
getInput(e) {
|
|
590
|
-
const raw = AmazonApiGatewayEndpoint.decodeBody(e.body, e.isBase64Encoded, e.headers?.["content-type"]);
|
|
591
577
|
return {
|
|
592
|
-
body:
|
|
578
|
+
body: AmazonApiGatewayEndpoint.decodeBody(e.body, e.isBase64Encoded, e.headers?.["content-type"]),
|
|
593
579
|
query: qs.default.parse(e.rawQueryString),
|
|
594
580
|
params: e.pathParameters || {}
|
|
595
581
|
};
|
|
@@ -614,7 +600,6 @@ var AmazonApiGatewayV2Endpoint = class extends AmazonApiGatewayEndpoint {
|
|
|
614
600
|
this.endpoint = endpoint;
|
|
615
601
|
}
|
|
616
602
|
};
|
|
617
|
-
|
|
618
603
|
//#endregion
|
|
619
604
|
//#region src/queue/AWSLambdaQueueAdaptor.ts
|
|
620
605
|
/**
|
|
@@ -629,6 +614,8 @@ var AmazonApiGatewayV2Endpoint = class extends AmazonApiGatewayEndpoint {
|
|
|
629
614
|
* retries only those records.
|
|
630
615
|
*/
|
|
631
616
|
var AWSLambdaQueue = class {
|
|
617
|
+
envParser;
|
|
618
|
+
queue;
|
|
632
619
|
_services;
|
|
633
620
|
constructor(envParser, queue) {
|
|
634
621
|
this.envParser = envParser;
|
|
@@ -639,10 +626,16 @@ var AWSLambdaQueue = class {
|
|
|
639
626
|
}
|
|
640
627
|
async getServices() {
|
|
641
628
|
if (this._services) return this._services;
|
|
642
|
-
const serviceDiscovery =
|
|
629
|
+
const serviceDiscovery = _geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
|
|
643
630
|
this._services = this.queue.services.length > 0 ? await serviceDiscovery.register(this.queue.services) : {};
|
|
644
631
|
return this._services;
|
|
645
632
|
}
|
|
633
|
+
/** The queue's database, registered as functions register theirs. */
|
|
634
|
+
async getDatabase() {
|
|
635
|
+
const service = this.queue.databaseService;
|
|
636
|
+
if (!service) return void 0;
|
|
637
|
+
return (await _geekmidas_services.ServiceDiscovery.getInstance(this.envParser).register([service]))[service.serviceName];
|
|
638
|
+
}
|
|
646
639
|
safeJsonParse(value) {
|
|
647
640
|
try {
|
|
648
641
|
return JSON.parse(value);
|
|
@@ -668,6 +661,7 @@ var AWSLambdaQueue = class {
|
|
|
668
661
|
req: { id: context.awsRequestId }
|
|
669
662
|
});
|
|
670
663
|
const services = await this.getServices();
|
|
664
|
+
const db = await this.getDatabase();
|
|
671
665
|
const schema = this.queue.messageSchema;
|
|
672
666
|
const batchItemFailures = [];
|
|
673
667
|
const messages = [];
|
|
@@ -685,7 +679,7 @@ var AWSLambdaQueue = class {
|
|
|
685
679
|
messages.push(validation.value);
|
|
686
680
|
} catch (error) {
|
|
687
681
|
logger.error({
|
|
688
|
-
error,
|
|
682
|
+
err: error,
|
|
689
683
|
messageId: record.messageId
|
|
690
684
|
}, "Failed to parse SQS record");
|
|
691
685
|
batchItemFailures.push({ itemIdentifier: record.messageId });
|
|
@@ -695,34 +689,39 @@ var AWSLambdaQueue = class {
|
|
|
695
689
|
await this.queue.handler({
|
|
696
690
|
messages,
|
|
697
691
|
services,
|
|
698
|
-
logger
|
|
692
|
+
logger,
|
|
693
|
+
db
|
|
699
694
|
});
|
|
700
695
|
} catch (error) {
|
|
701
|
-
logger.error((0,
|
|
696
|
+
logger.error((0, _geekmidas_errors.wrapError)(error), "Queue handler failed; retrying batch");
|
|
702
697
|
for (const record of event.Records) if (!batchItemFailures.some((f) => f.itemIdentifier === record.messageId)) batchItemFailures.push({ itemIdentifier: record.messageId });
|
|
703
698
|
}
|
|
704
699
|
return { batchItemFailures };
|
|
705
700
|
}
|
|
706
701
|
get handler() {
|
|
707
702
|
const handler = this._handler.bind(this);
|
|
708
|
-
return async (event, context) => {
|
|
703
|
+
return (async (event, context) => {
|
|
709
704
|
const startTime = Date.now();
|
|
710
705
|
const requestId = context.awsRequestId;
|
|
711
706
|
const logger = this.queue.logger.child({ requestId });
|
|
712
|
-
return (0,
|
|
707
|
+
return (0, _geekmidas_services.runWithRequestContext)({
|
|
713
708
|
logger,
|
|
714
709
|
requestId,
|
|
715
|
-
startTime
|
|
716
|
-
|
|
717
|
-
|
|
710
|
+
startTime,
|
|
711
|
+
operation: `queue ${this.queue.name}`
|
|
712
|
+
}, () => (0, _geekmidas_events.consumeBatchTraced)({
|
|
713
|
+
system: "aws_sqs",
|
|
714
|
+
destination: this.queue.name
|
|
715
|
+
}, event.Records.map(require_tracing.recordCarrier), () => handler(event, context)));
|
|
716
|
+
});
|
|
718
717
|
}
|
|
719
718
|
};
|
|
720
|
-
|
|
721
719
|
//#endregion
|
|
722
720
|
//#region src/subscribers/AWSLambdaSubscriberAdaptor.ts
|
|
723
721
|
var AWSLambdaSubscriber = class {
|
|
722
|
+
envParser;
|
|
723
|
+
subscriber;
|
|
724
724
|
_logger;
|
|
725
|
-
_services;
|
|
726
725
|
constructor(envParser, subscriber) {
|
|
727
726
|
this.envParser = envParser;
|
|
728
727
|
this.subscriber = subscriber;
|
|
@@ -731,20 +730,10 @@ var AWSLambdaSubscriber = class {
|
|
|
731
730
|
get logger() {
|
|
732
731
|
return this._logger;
|
|
733
732
|
}
|
|
734
|
-
async getServices() {
|
|
735
|
-
if (this._services) return this._services;
|
|
736
|
-
const serviceDiscovery = __geekmidas_services.ServiceDiscovery.getInstance(this.envParser);
|
|
737
|
-
if (this.subscriber.services.length > 0) {
|
|
738
|
-
const registered = await serviceDiscovery.register(this.subscriber.services);
|
|
739
|
-
this._services = registered;
|
|
740
|
-
} else this._services = {};
|
|
741
|
-
return this._services;
|
|
742
|
-
}
|
|
743
733
|
error() {
|
|
744
734
|
return { onError: (req) => {
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
throw (0, __geekmidas_errors.wrapError)(req.error);
|
|
735
|
+
(req.event?.logger || this.subscriber.logger).error(req.error || {}, "Error processing subscriber");
|
|
736
|
+
throw (0, _geekmidas_errors.wrapError)(req.error);
|
|
748
737
|
} };
|
|
749
738
|
}
|
|
750
739
|
loggerMiddleware() {
|
|
@@ -762,128 +751,49 @@ var AWSLambdaSubscriber = class {
|
|
|
762
751
|
}
|
|
763
752
|
services() {
|
|
764
753
|
return { before: async (req) => {
|
|
765
|
-
|
|
754
|
+
const { services, db } = await require_runSubscriber.subscriberContext(this.subscriber, this.envParser);
|
|
755
|
+
req.event.services = services;
|
|
756
|
+
req.event.db = db;
|
|
766
757
|
} };
|
|
767
758
|
}
|
|
768
759
|
parseEvents() {
|
|
769
760
|
return { before: async (req) => {
|
|
770
|
-
const { logger
|
|
771
|
-
const rawEvent = e;
|
|
761
|
+
const { logger, ...rawEvent } = req.event;
|
|
772
762
|
logger.info({ rawEvent });
|
|
773
|
-
|
|
774
|
-
if ("Records" in rawEvent) {
|
|
775
|
-
if (this.isSQSEvent(rawEvent)) for (const record of rawEvent.Records) try {
|
|
776
|
-
const event = this.parseSQSRecord(record);
|
|
777
|
-
if (this.shouldIncludeEvent(event)) events.push(event);
|
|
778
|
-
} catch (error) {
|
|
779
|
-
this.logger.error({
|
|
780
|
-
error,
|
|
781
|
-
record
|
|
782
|
-
}, "Failed to parse SQS record");
|
|
783
|
-
}
|
|
784
|
-
else if (this.isSNSEvent(rawEvent)) for (const record of rawEvent.Records) try {
|
|
785
|
-
const event = this.parseSNSRecord(record);
|
|
786
|
-
if (this.shouldIncludeEvent(event)) events.push(event);
|
|
787
|
-
} catch (error) {
|
|
788
|
-
this.logger.error({
|
|
789
|
-
error,
|
|
790
|
-
record
|
|
791
|
-
}, "Failed to parse SNS record");
|
|
792
|
-
}
|
|
793
|
-
}
|
|
794
|
-
req.event.events = events;
|
|
763
|
+
req.event.events = require_runSubscriber.subscribedEvents(this.subscriber, rawEvent, this.logger);
|
|
795
764
|
} };
|
|
796
765
|
}
|
|
797
|
-
isSQSEvent(event) {
|
|
798
|
-
const firstRecord = event.Records[0];
|
|
799
|
-
return "Records" in event && event.Records.length > 0 && firstRecord !== void 0 && "eventSource" in firstRecord && firstRecord.eventSource === "aws:sqs";
|
|
800
|
-
}
|
|
801
|
-
isSNSEvent(event) {
|
|
802
|
-
const firstRecord = event.Records[0];
|
|
803
|
-
return "Records" in event && event.Records.length > 0 && firstRecord !== void 0 && "EventSource" in firstRecord && firstRecord.EventSource === "aws:sns";
|
|
804
|
-
}
|
|
805
|
-
parseSNSRecord(record) {
|
|
806
|
-
const message = this.safeJsonParse(record.Sns.Message);
|
|
807
|
-
const messageType = record.Sns.MessageAttributes?.type?.Value;
|
|
808
|
-
if (message === null) return messageType ? {
|
|
809
|
-
type: messageType,
|
|
810
|
-
payload: record.Sns.Message
|
|
811
|
-
} : record.Sns.Message;
|
|
812
|
-
const resolvedType = messageType ?? message.type;
|
|
813
|
-
if (message.type) return message;
|
|
814
|
-
return resolvedType ? {
|
|
815
|
-
type: resolvedType,
|
|
816
|
-
payload: message
|
|
817
|
-
} : message;
|
|
818
|
-
}
|
|
819
|
-
parseSQSRecord(record) {
|
|
820
|
-
const body = this.safeJsonParse(record.body);
|
|
821
|
-
if (body === null) return record.body;
|
|
822
|
-
if (body.Type === "Notification" && body.Message) {
|
|
823
|
-
const snsMessage = this.safeJsonParse(body.Message);
|
|
824
|
-
const messageType = body.MessageAttributes?.type?.Value;
|
|
825
|
-
if (snsMessage === null) return messageType ? {
|
|
826
|
-
type: messageType,
|
|
827
|
-
payload: body.Message
|
|
828
|
-
} : body.Message;
|
|
829
|
-
if (snsMessage.type) return snsMessage;
|
|
830
|
-
const resolvedType = messageType ?? snsMessage.type;
|
|
831
|
-
return resolvedType ? {
|
|
832
|
-
type: resolvedType,
|
|
833
|
-
payload: snsMessage
|
|
834
|
-
} : snsMessage;
|
|
835
|
-
}
|
|
836
|
-
return body;
|
|
837
|
-
}
|
|
838
|
-
safeJsonParse(value) {
|
|
839
|
-
try {
|
|
840
|
-
return JSON.parse(value);
|
|
841
|
-
} catch {
|
|
842
|
-
return null;
|
|
843
|
-
}
|
|
844
|
-
}
|
|
845
|
-
shouldIncludeEvent(event) {
|
|
846
|
-
if (typeof event !== "object" || !event?.type) return true;
|
|
847
|
-
if (!this.subscriber.subscribedEvents) return true;
|
|
848
|
-
return this.subscriber.subscribedEvents.includes(event.type);
|
|
849
|
-
}
|
|
850
766
|
async _handler(event) {
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
services: event.services,
|
|
858
|
-
logger: event.logger
|
|
767
|
+
const { events, services, logger, db } = event;
|
|
768
|
+
return require_runSubscriber.runSubscriber(this.subscriber, {
|
|
769
|
+
events,
|
|
770
|
+
services,
|
|
771
|
+
logger,
|
|
772
|
+
db
|
|
859
773
|
});
|
|
860
|
-
if (this.subscriber.outputSchema && result) {
|
|
861
|
-
const validationResult = await this.subscriber.outputSchema["~standard"].validate(result);
|
|
862
|
-
if (validationResult.issues) {
|
|
863
|
-
this.logger.error({ issues: validationResult.issues }, "Subscriber output validation failed");
|
|
864
|
-
throw new Error("Subscriber output validation failed");
|
|
865
|
-
}
|
|
866
|
-
return validationResult.value;
|
|
867
|
-
}
|
|
868
|
-
return result;
|
|
869
774
|
}
|
|
870
775
|
get handler() {
|
|
871
776
|
const handler = this._handler.bind(this);
|
|
872
|
-
const chain = (0,
|
|
777
|
+
const chain = (0, _middy_core.default)(handler).use(this.loggerMiddleware()).use(this.parseEvents()).use(this.error()).use(this.services());
|
|
873
778
|
const wrappedHandler = async (event, context) => {
|
|
874
779
|
const startTime = Date.now();
|
|
875
780
|
const requestId = context.awsRequestId;
|
|
876
781
|
const logger = this.subscriber.logger.child({ requestId });
|
|
877
|
-
|
|
782
|
+
const operation = `subscriber ${this.subscriber.topicName ?? context.functionName}`;
|
|
783
|
+
const records = event?.Records ?? [];
|
|
784
|
+
return (0, _geekmidas_services.runWithRequestContext)({
|
|
878
785
|
logger,
|
|
879
786
|
requestId,
|
|
880
|
-
startTime
|
|
881
|
-
|
|
787
|
+
startTime,
|
|
788
|
+
operation
|
|
789
|
+
}, () => (0, _geekmidas_events.consumeBatchTraced)({
|
|
790
|
+
system: records[0]?.Sns ? "aws_sns" : "aws_sqs",
|
|
791
|
+
destination: this.subscriber.topicName ?? context.functionName
|
|
792
|
+
}, records.map(require_tracing.recordCarrier), () => chain(event, context)));
|
|
882
793
|
};
|
|
883
794
|
return wrappedHandler;
|
|
884
795
|
}
|
|
885
796
|
};
|
|
886
|
-
|
|
887
797
|
//#endregion
|
|
888
798
|
exports.AWSLambdaFunction = AWSLambdaFunction;
|
|
889
799
|
exports.AWSLambdaQueue = AWSLambdaQueue;
|
|
@@ -891,4 +801,5 @@ exports.AWSLambdaSubscriber = AWSLambdaSubscriber;
|
|
|
891
801
|
exports.AWSScheduledFunction = AWSScheduledFunction;
|
|
892
802
|
exports.AmazonApiGatewayV1Endpoint = AmazonApiGatewayV1Endpoint;
|
|
893
803
|
exports.AmazonApiGatewayV2Endpoint = AmazonApiGatewayV2Endpoint;
|
|
804
|
+
|
|
894
805
|
//# sourceMappingURL=aws.cjs.map
|