@geekmidas/constructs 10.0.0-alpha.5 → 10.0.0-alpha.50
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-B2OFsfDM.d.cts → Cron-DI3nKoic.d.cts} +22 -8
- package/dist/Cron-DI3nKoic.d.cts.map +1 -0
- package/dist/{Cron-CqEbBbwH.d.mts → Cron-uYAHPnp7.d.mts} +22 -8
- package/dist/Cron-uYAHPnp7.d.mts.map +1 -0
- package/dist/CronBuilder-BoHzlWU_.cjs +121 -0
- package/dist/CronBuilder-BoHzlWU_.cjs.map +1 -0
- package/dist/CronBuilder-CCgt0wCE.mjs +109 -0
- 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-Dem2XyCu.d.mts → Endpoint-BkzU6nn1.d.cts} +70 -93
- package/dist/Endpoint-BkzU6nn1.d.cts.map +1 -0
- package/dist/{Endpoint-DrD8a1yH.d.cts → Endpoint-BpboleFh.d.mts} +71 -94
- package/dist/Endpoint-BpboleFh.d.mts.map +1 -0
- package/dist/{Endpoint-Dij_wOcc.mjs → Endpoint-CQ9RJ7p2.mjs} +130 -109
- package/dist/Endpoint-CQ9RJ7p2.mjs.map +1 -0
- package/dist/{Endpoint-DODn1RhN.cjs → Endpoint-DOi8c_Gy.cjs} +158 -131
- package/dist/Endpoint-DOi8c_Gy.cjs.map +1 -0
- package/dist/{index-B8g8POkr.d.cts → EndpointFactory-BZZOleQT.d.cts} +62 -132
- package/dist/EndpointFactory-BZZOleQT.d.cts.map +1 -0
- package/dist/{EndpointFactory-BHFMmFkV.cjs → EndpointFactory-Bo9lkMqB.cjs} +75 -110
- package/dist/EndpointFactory-Bo9lkMqB.cjs.map +1 -0
- package/dist/{EndpointFactory-b4ituq-s.mjs → EndpointFactory-DR1rebok.mjs} +39 -74
- package/dist/EndpointFactory-DR1rebok.mjs.map +1 -0
- package/dist/{index-DbKmfl-q.d.mts → EndpointFactory-DnNlYflU.d.mts} +63 -133
- package/dist/EndpointFactory-DnNlYflU.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-BM2jbWht.mjs → HonoEndpointAdaptor-BIS0O3M9.mjs} +41 -47
- package/dist/HonoEndpointAdaptor-BIS0O3M9.mjs.map +1 -0
- package/dist/{HonoEndpointAdaptor-De6IlBZe.cjs → HonoEndpointAdaptor-CMi0MJsF.cjs} +50 -53
- package/dist/HonoEndpointAdaptor-CMi0MJsF.cjs.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 +189 -110
- package/dist/adaptors/aws.cjs.map +1 -1
- package/dist/adaptors/aws.d.cts +81 -45
- package/dist/adaptors/aws.d.cts.map +1 -1
- package/dist/adaptors/aws.d.mts +82 -46
- package/dist/adaptors/aws.d.mts.map +1 -1
- package/dist/adaptors/aws.mjs +161 -85
- 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 +704 -90
- 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 +669 -71
- package/dist/adaptors/testing.mjs.map +1 -1
- package/dist/auth-3OAmK42n.d.cts +188 -0
- package/dist/auth-3OAmK42n.d.cts.map +1 -0
- package/dist/auth-BWbiewHa.d.mts +188 -0
- package/dist/auth-BWbiewHa.d.mts.map +1 -0
- package/dist/auth.cjs +171 -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 +160 -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 +68 -10
- package/dist/crons/index.cjs.map +1 -1
- package/dist/crons/index.d.cts +32 -14
- package/dist/crons/index.d.cts.map +1 -1
- package/dist/crons/index.d.mts +32 -14
- package/dist/crons/index.d.mts.map +1 -1
- package/dist/crons/index.mjs +66 -10
- package/dist/crons/index.mjs.map +1 -1
- package/dist/database/kysely.cjs +40 -15
- package/dist/database/kysely.cjs.map +1 -1
- package/dist/database/kysely.d.cts +2 -152
- package/dist/database/kysely.d.mts +2 -152
- package/dist/database/kysely.mjs +28 -5
- package/dist/database/kysely.mjs.map +1 -1
- 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 +2 -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-DJJA7VGc.cjs → functions-CbP5ZKma.cjs} +421 -273
- package/dist/functions-CbP5ZKma.cjs.map +1 -0
- package/dist/{functions-Ck21Uyq0.mjs → functions-Di6n5ltG.mjs} +383 -241
- package/dist/functions-Di6n5ltG.mjs.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 +3 -3
- package/dist/index.d.cts +4 -4
- package/dist/index.d.mts +4 -4
- package/dist/index.mjs +2 -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-Bqov3fwv.d.mts +159 -0
- package/dist/kysely-Bqov3fwv.d.mts.map +1 -0
- package/dist/kysely-DTnkZsub.d.cts +159 -0
- package/dist/kysely-DTnkZsub.d.cts.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 +87 -63
- package/dist/rest-api.cjs.map +1 -1
- package/dist/rest-api.d.cts +62 -61
- package/dist/rest-api.d.cts.map +1 -1
- package/dist/rest-api.d.mts +62 -61
- package/dist/rest-api.d.mts.map +1 -1
- package/dist/rest-api.mjs +79 -55
- package/dist/rest-api.mjs.map +1 -1
- package/dist/{chunk-DWy1uDak.cjs → rolldown-runtime-y5ARvAq5.cjs} +14 -18
- package/dist/site.cjs +33 -9
- package/dist/site.cjs.map +1 -1
- package/dist/site.d.cts +11 -22
- package/dist/site.d.cts.map +1 -1
- package/dist/site.d.mts +11 -22
- package/dist/site.d.mts.map +1 -1
- package/dist/site.mjs +29 -5
- package/dist/site.mjs.map +1 -1
- package/dist/subscribers/index.cjs +2 -11
- package/dist/subscribers/index.d.cts +3 -14
- package/dist/subscribers/index.d.mts +3 -14
- package/dist/subscribers/index.mjs +2 -11
- 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 -32
- package/dist/topic/index.d.mts +2 -32
- 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 +137 -38
- package/dist/worker.cjs.map +1 -1
- package/dist/worker.d.cts +113 -44
- package/dist/worker.d.cts.map +1 -1
- package/dist/worker.d.mts +113 -43
- package/dist/worker.d.mts.map +1 -1
- package/dist/worker.mjs +132 -33
- package/dist/worker.mjs.map +1 -1
- package/package.json +81 -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-B2OFsfDM.d.cts.map +0 -1
- package/dist/Cron-CqEbBbwH.d.mts.map +0 -1
- package/dist/CronBuilder-Bg-9h2cc.d.mts +0 -44
- package/dist/CronBuilder-Bg-9h2cc.d.mts.map +0 -1
- package/dist/CronBuilder-CdibiHNB.mjs +0 -84
- package/dist/CronBuilder-CdibiHNB.mjs.map +0 -1
- package/dist/CronBuilder-DyUr6nYz.cjs +0 -96
- package/dist/CronBuilder-DyUr6nYz.cjs.map +0 -1
- package/dist/CronBuilder-LSJMfqnq.d.cts +0 -44
- package/dist/CronBuilder-LSJMfqnq.d.cts.map +0 -1
- package/dist/Endpoint-DODn1RhN.cjs.map +0 -1
- package/dist/Endpoint-Dem2XyCu.d.mts.map +0 -1
- package/dist/Endpoint-Dij_wOcc.mjs.map +0 -1
- package/dist/Endpoint-DrD8a1yH.d.cts.map +0 -1
- package/dist/EndpointFactory-BHFMmFkV.cjs.map +0 -1
- package/dist/EndpointFactory-b4ituq-s.mjs.map +0 -1
- package/dist/HonoEndpointAdaptor-BM2jbWht.mjs.map +0 -1
- package/dist/HonoEndpointAdaptor-De6IlBZe.cjs.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.d.cts.map +0 -1
- package/dist/database/kysely.d.mts.map +0 -1
- package/dist/functions-Ck21Uyq0.mjs.map +0 -1
- package/dist/functions-DJJA7VGc.cjs.map +0 -1
- package/dist/index-AIfVzkhi.d.cts +0 -170
- package/dist/index-AIfVzkhi.d.cts.map +0 -1
- package/dist/index-B8g8POkr.d.cts.map +0 -1
- package/dist/index-D3zjrwjr.d.mts +0 -169
- package/dist/index-D3zjrwjr.d.mts.map +0 -1
- package/dist/index-DbKmfl-q.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/subscribers/index.cjs.map +0 -1
- package/dist/subscribers/index.d.cts.map +0 -1
- package/dist/subscribers/index.d.mts.map +0 -1
- package/dist/subscribers/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.d.cts.map +0 -1
- package/dist/topic/index.d.mts.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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@geekmidas/constructs",
|
|
3
|
-
"version": "10.0.0-alpha.
|
|
3
|
+
"version": "10.0.0-alpha.50",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -164,6 +164,16 @@
|
|
|
164
164
|
"default": "./dist/cache.cjs"
|
|
165
165
|
}
|
|
166
166
|
},
|
|
167
|
+
"./encryption": {
|
|
168
|
+
"import": {
|
|
169
|
+
"types": "./dist/encryption.d.mts",
|
|
170
|
+
"default": "./dist/encryption.mjs"
|
|
171
|
+
},
|
|
172
|
+
"require": {
|
|
173
|
+
"types": "./dist/encryption.d.cts",
|
|
174
|
+
"default": "./dist/encryption.cjs"
|
|
175
|
+
}
|
|
176
|
+
},
|
|
167
177
|
"./credential": {
|
|
168
178
|
"import": {
|
|
169
179
|
"types": "./dist/credential.d.mts",
|
|
@@ -174,6 +184,16 @@
|
|
|
174
184
|
"default": "./dist/credential.cjs"
|
|
175
185
|
}
|
|
176
186
|
},
|
|
187
|
+
"./external-api": {
|
|
188
|
+
"import": {
|
|
189
|
+
"types": "./dist/external-api.d.mts",
|
|
190
|
+
"default": "./dist/external-api.mjs"
|
|
191
|
+
},
|
|
192
|
+
"require": {
|
|
193
|
+
"types": "./dist/external-api.d.cts",
|
|
194
|
+
"default": "./dist/external-api.cjs"
|
|
195
|
+
}
|
|
196
|
+
},
|
|
177
197
|
"./auth": {
|
|
178
198
|
"import": {
|
|
179
199
|
"types": "./dist/auth.d.mts",
|
|
@@ -204,6 +224,16 @@
|
|
|
204
224
|
"default": "./dist/site.cjs"
|
|
205
225
|
}
|
|
206
226
|
},
|
|
227
|
+
"./mobile-app": {
|
|
228
|
+
"import": {
|
|
229
|
+
"types": "./dist/mobile-app.d.mts",
|
|
230
|
+
"default": "./dist/mobile-app.mjs"
|
|
231
|
+
},
|
|
232
|
+
"require": {
|
|
233
|
+
"types": "./dist/mobile-app.d.cts",
|
|
234
|
+
"default": "./dist/mobile-app.cjs"
|
|
235
|
+
}
|
|
236
|
+
},
|
|
207
237
|
"./worker": {
|
|
208
238
|
"import": {
|
|
209
239
|
"types": "./dist/worker.d.mts",
|
|
@@ -245,15 +275,17 @@
|
|
|
245
275
|
"lodash.uniqby": "~4.7.0",
|
|
246
276
|
"openapi-types": "~12.1.3",
|
|
247
277
|
"qs": "~6.16.0",
|
|
248
|
-
"@geekmidas/envkit": "^10.0.0-alpha.
|
|
249
|
-
"@geekmidas/errors": "^10.0.0-alpha.
|
|
250
|
-
"@geekmidas/events": "^10.0.0-alpha.
|
|
251
|
-
"@geekmidas/logger": "^10.0.0-alpha.
|
|
252
|
-
"@geekmidas/manifest": "^10.0.0-alpha.
|
|
253
|
-
"@geekmidas/schema": "^10.0.0-alpha.
|
|
254
|
-
"@geekmidas/services": "^10.0.0-alpha.
|
|
278
|
+
"@geekmidas/envkit": "^10.0.0-alpha.50",
|
|
279
|
+
"@geekmidas/errors": "^10.0.0-alpha.50",
|
|
280
|
+
"@geekmidas/events": "^10.0.0-alpha.50",
|
|
281
|
+
"@geekmidas/logger": "^10.0.0-alpha.50",
|
|
282
|
+
"@geekmidas/manifest": "^10.0.0-alpha.50",
|
|
283
|
+
"@geekmidas/schema": "^10.0.0-alpha.50",
|
|
284
|
+
"@geekmidas/services": "^10.0.0-alpha.50"
|
|
255
285
|
},
|
|
256
286
|
"devDependencies": {
|
|
287
|
+
"@aws-sdk/client-kms": "~3.1136.0",
|
|
288
|
+
"@better-auth/expo": "~1.7.6",
|
|
257
289
|
"@types/lodash.compact": "~3.0.9",
|
|
258
290
|
"@types/lodash.get": "~4.4.9",
|
|
259
291
|
"@types/lodash.pick": "~4.4.9",
|
|
@@ -261,27 +293,28 @@
|
|
|
261
293
|
"@types/lodash.uniqby": "~4.7.9",
|
|
262
294
|
"@types/pg": "~8.23.1",
|
|
263
295
|
"@types/qs": "~6.15.1",
|
|
264
|
-
"better-auth": "~1.7.
|
|
296
|
+
"better-auth": "~1.7.6",
|
|
265
297
|
"kysely": "~0.29.6",
|
|
266
298
|
"msw": "~2.15.0",
|
|
267
299
|
"pg": "~8.23.0",
|
|
268
300
|
"zod": "~4.6.5",
|
|
269
|
-
"@geekmidas/audit": "^10.0.0-alpha.
|
|
270
|
-
"@geekmidas/auth": "10.0.0-alpha.
|
|
271
|
-
"@geekmidas/cache": "^10.0.0-alpha.
|
|
272
|
-
"@geekmidas/db": "^10.0.0-alpha.
|
|
273
|
-
"@geekmidas/emailkit": "^10.0.0-alpha.
|
|
274
|
-
"@geekmidas/envkit": "^10.0.0-alpha.
|
|
275
|
-
"@geekmidas/errors": "^10.0.0-alpha.
|
|
276
|
-
"@geekmidas/events": "^10.0.0-alpha.
|
|
277
|
-
"@geekmidas/logger": "^10.0.0-alpha.
|
|
278
|
-
"@geekmidas/rate-limit": "^10.0.0-alpha.
|
|
279
|
-
"@geekmidas/schema": "^10.0.0-alpha.
|
|
280
|
-
"@geekmidas/services": "^10.0.0-alpha.
|
|
281
|
-
"@geekmidas/telescope": "10.0.0-alpha.
|
|
282
|
-
"@geekmidas/testkit": "^10.0.0-alpha.
|
|
301
|
+
"@geekmidas/audit": "^10.0.0-alpha.50",
|
|
302
|
+
"@geekmidas/auth": "10.0.0-alpha.50",
|
|
303
|
+
"@geekmidas/cache": "^10.0.0-alpha.50",
|
|
304
|
+
"@geekmidas/db": "^10.0.0-alpha.50",
|
|
305
|
+
"@geekmidas/emailkit": "^10.0.0-alpha.50",
|
|
306
|
+
"@geekmidas/envkit": "^10.0.0-alpha.50",
|
|
307
|
+
"@geekmidas/errors": "^10.0.0-alpha.50",
|
|
308
|
+
"@geekmidas/events": "^10.0.0-alpha.50",
|
|
309
|
+
"@geekmidas/logger": "^10.0.0-alpha.50",
|
|
310
|
+
"@geekmidas/rate-limit": "^10.0.0-alpha.50",
|
|
311
|
+
"@geekmidas/schema": "^10.0.0-alpha.50",
|
|
312
|
+
"@geekmidas/services": "^10.0.0-alpha.50",
|
|
313
|
+
"@geekmidas/telescope": "10.0.0-alpha.50",
|
|
314
|
+
"@geekmidas/testkit": "^10.0.0-alpha.50"
|
|
283
315
|
},
|
|
284
316
|
"peerDependencies": {
|
|
317
|
+
"@aws-sdk/client-kms": ">=3.1136.0",
|
|
285
318
|
"@middy/core": ">=7.9.2",
|
|
286
319
|
"@types/aws-lambda": ">=8.10.163",
|
|
287
320
|
"better-auth": ">=1.7.5",
|
|
@@ -289,16 +322,20 @@
|
|
|
289
322
|
"kysely": "~0.29.6",
|
|
290
323
|
"msw": ">=2.15.0",
|
|
291
324
|
"pg": ">=8.23.0",
|
|
292
|
-
"@geekmidas/audit": "^10.0.0-alpha.
|
|
293
|
-
"@geekmidas/auth": "10.0.0-alpha.
|
|
294
|
-
"@geekmidas/cache": "^10.0.0-alpha.
|
|
295
|
-
"@geekmidas/db": "^10.0.0-alpha.
|
|
296
|
-
"@geekmidas/emailkit": "^10.0.0-alpha.
|
|
297
|
-
"@geekmidas/rate-limit": "^10.0.0-alpha.
|
|
298
|
-
"@geekmidas/storage": "^10.0.0-alpha.
|
|
299
|
-
"@geekmidas/telescope": "10.0.0-alpha.
|
|
325
|
+
"@geekmidas/audit": "^10.0.0-alpha.50",
|
|
326
|
+
"@geekmidas/auth": "10.0.0-alpha.50",
|
|
327
|
+
"@geekmidas/cache": "^10.0.0-alpha.50",
|
|
328
|
+
"@geekmidas/db": "^10.0.0-alpha.50",
|
|
329
|
+
"@geekmidas/emailkit": "^10.0.0-alpha.50",
|
|
330
|
+
"@geekmidas/rate-limit": "^10.0.0-alpha.50",
|
|
331
|
+
"@geekmidas/storage": "^10.0.0-alpha.50",
|
|
332
|
+
"@geekmidas/telescope": "10.0.0-alpha.50",
|
|
333
|
+
"@geekmidas/testkit": "^10.0.0-alpha.50"
|
|
300
334
|
},
|
|
301
335
|
"peerDependenciesMeta": {
|
|
336
|
+
"@aws-sdk/client-kms": {
|
|
337
|
+
"optional": true
|
|
338
|
+
},
|
|
302
339
|
"@geekmidas/audit": {
|
|
303
340
|
"optional": true
|
|
304
341
|
},
|
|
@@ -308,37 +345,40 @@
|
|
|
308
345
|
"@geekmidas/db": {
|
|
309
346
|
"optional": true
|
|
310
347
|
},
|
|
348
|
+
"@geekmidas/emailkit": {
|
|
349
|
+
"optional": true
|
|
350
|
+
},
|
|
311
351
|
"@geekmidas/rate-limit": {
|
|
312
352
|
"optional": true
|
|
313
353
|
},
|
|
314
|
-
"@
|
|
354
|
+
"@geekmidas/storage": {
|
|
315
355
|
"optional": true
|
|
316
356
|
},
|
|
317
|
-
"@
|
|
357
|
+
"@geekmidas/telescope": {
|
|
318
358
|
"optional": true
|
|
319
359
|
},
|
|
320
|
-
"
|
|
360
|
+
"@geekmidas/testkit": {
|
|
321
361
|
"optional": true
|
|
322
362
|
},
|
|
323
|
-
"
|
|
363
|
+
"@middy/core": {
|
|
324
364
|
"optional": true
|
|
325
365
|
},
|
|
326
|
-
"@
|
|
366
|
+
"@types/aws-lambda": {
|
|
327
367
|
"optional": true
|
|
328
368
|
},
|
|
329
|
-
"
|
|
369
|
+
"better-auth": {
|
|
330
370
|
"optional": true
|
|
331
371
|
},
|
|
332
|
-
"
|
|
372
|
+
"hono": {
|
|
333
373
|
"optional": true
|
|
334
374
|
},
|
|
335
|
-
"
|
|
375
|
+
"kysely": {
|
|
336
376
|
"optional": true
|
|
337
377
|
},
|
|
338
|
-
"
|
|
378
|
+
"msw": {
|
|
339
379
|
"optional": true
|
|
340
380
|
},
|
|
341
|
-
"
|
|
381
|
+
"pg": {
|
|
342
382
|
"optional": true
|
|
343
383
|
}
|
|
344
384
|
},
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Construct-BD5neF7w.mjs","names":["compact","snifferContext: ServiceContext","type: ConstructType","logger: TLogger","services: TServices","events: MappedEvent<T, any>[]","publisherService?: Service<TServiceName, T>","outputSchema?: OutSchema","timeout?: number","memorySize?: number","auditorStorageService?: Service<\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditStorage\n\t\t>","constructs: string[]","opts: { markOptional?: boolean }","services: Service[]","service: Service"],"sources":["../../../node_modules/.pnpm/lodash.compact@3.0.1/node_modules/lodash.compact/index.js","../src/Construct.ts"],"sourcesContent":["/**\n * lodash 3.0.1 (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright 2012-2016 The Dojo Foundation <http://dojofoundation.org/>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright 2009-2016 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n * Available under MIT license <https://lodash.com/license>\n */\n\n/**\n * Creates an array with all falsey values removed. The values `false`, `null`,\n * `0`, `\"\"`, `undefined`, and `NaN` are falsey.\n *\n * @static\n * @memberOf _\n * @category Array\n * @param {Array} array The array to compact.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.compact([0, 1, false, 2, '', 3]);\n * // => [1, 2, 3]\n */\nfunction compact(array) {\n var index = -1,\n length = array ? array.length : 0,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nmodule.exports = compact;\n","import type { AuditStorage } from '@geekmidas/audit';\nimport {\n\tSnifferEnvironmentParser,\n\ttype SniffResult,\n\tsniffWithFireAndForget,\n} from '@geekmidas/envkit/sniffer';\nimport type { EventPublisher, MappedEvent } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport type { Service, ServiceContext } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport compact from 'lodash.compact';\n\n// Cache for service environment variables to handle singleton services\n// Stores both the full list and the optional subset so the same sniff result\n// can satisfy both getEnvironment() and getEnvironment({ markOptional: true }).\nconst serviceEnvCache = new Map<\n\tService,\n\t{ envVars: string[]; optionalEnvVars: string[] }\n>();\n\n/**\n * Noop context for environment sniffing.\n * Used when calling service.register() to detect env vars without a real request.\n * Returns dummy values since services should only use context in instance methods,\n * not during registration.\n */\nconst snifferContext: ServiceContext = {\n\tgetLogger() {\n\t\t// Return a noop logger for sniffing - services shouldn't log during registration\n\t\treturn {\n\t\t\tdebug: () => {},\n\t\t\tinfo: () => {},\n\t\t\twarn: () => {},\n\t\t\terror: () => {},\n\t\t\tchild: () => snifferContext.getLogger(),\n\t\t} as unknown as Logger;\n\t},\n\tgetRequestId() {\n\t\treturn 'sniffer-context';\n\t},\n\tgetRequestStartTime() {\n\t\treturn Date.now();\n\t},\n\thasContext() {\n\t\treturn false;\n\t},\n};\n\nexport abstract class Construct<\n\tTLogger extends Logger = Logger,\n\tTServiceName extends string = string,\n\tT extends EventPublisher<any> | undefined = undefined,\n\tOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTAuditStorageServiceName extends string = string,\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTDatabaseServiceName extends string = string,\n\tTDatabase = unknown,\n> {\n\t/** Database service for this construct (used by Endpoint for RLS/audit context) */\n\tpublic databaseService?: Service<TDatabaseServiceName, TDatabase>;\n\n\t/**\n\t * The deploy unit that runs this, by construct id.\n\t *\n\t * What an endpoint's `surface` is to it, and for the same reason: something\n\t * has to say which process a runnable belongs to, and until this existed the\n\t * only thing that said so was the directory its file sat in. Set by the\n\t * factory it was built from — `worker.crons`, `api.endpoints` — so it is\n\t * carried rather than configured.\n\t *\n\t * Undefined for a construct built from a free-standing builder, which is\n\t * still how `c`, `s` and `f` work.\n\t */\n\tpublic owner?: string;\n\n\tconstructor(\n\t\tpublic readonly type: ConstructType,\n\t\tpublic readonly logger: TLogger,\n\t\tpublic readonly services: TServices,\n\t\tpublic readonly events: MappedEvent<T, any>[] = [],\n\t\tpublic readonly publisherService?: Service<TServiceName, T>,\n\t\tpublic outputSchema?: OutSchema,\n\t\tpublic readonly timeout?: number,\n\t\tpublic readonly memorySize?: number,\n\t\tpublic readonly auditorStorageService?: Service<\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditStorage\n\t\t>,\n\t\t/**\n\t\t * The constructs this one declared an edge to, by id.\n\t\t *\n\t\t * What the manifest records. `services` is the same information in the\n\t\t * form a handler runs with — clients, keyed by name — and an id cannot be\n\t\t * recovered from one of those reliably, so both are kept.\n\t\t *\n\t\t * Last in the list because every other parameter is positional and already\n\t\t * spoken for; a new one anywhere else silently rebinds existing callers.\n\t\t */\n\t\tpublic readonly constructs: string[] = [],\n\t) {}\n\n\t/**\n\t * Returns an array of environment variable names required by this construct's services.\n\t * This is determined by running a \"sniffer\" EnvironmentParser through each service's\n\t * register method to track which environment variables are accessed.\n\t *\n\t * Results are cached per service class to handle singleton patterns where\n\t * subsequent register() calls may short-circuit and not access env vars.\n\t *\n\t * @param markOptional - When true, optional vars (those accessed via `.optional()` or\n\t * `.default()`) are suffixed with `?` in the returned array (e.g. `'PORT?'`).\n\t * @returns Promise that resolves to array of environment variable names, sorted alphabetically\n\t *\n\t * @example\n\t * ```typescript\n\t * const endpoint = e\n\t * .services([databaseService, authService])\n\t * .get('/users')\n\t * .handle(async () => []);\n\t *\n\t * await endpoint.getEnvironment(); // ['AUTH_SECRET', 'DATABASE_URL']\n\t * await endpoint.getEnvironment({ markOptional: true }); // ['AUTH_SECRET', 'DATABASE_URL', 'PORT?']\n\t * ```\n\t */\n\tasync getEnvironment(\n\t\topts: { markOptional?: boolean } = {},\n\t): Promise<string[]> {\n\t\tconst { markOptional = false } = opts;\n\t\tconst envVars = new Set<string>();\n\t\tconst optionalVars = new Set<string>();\n\t\tconst services: Service[] = compact([\n\t\t\t...this.services,\n\t\t\tthis.publisherService,\n\t\t\tthis.publisherService,\n\t\t\tthis.auditorStorageService,\n\t\t\tthis.databaseService,\n\t\t]);\n\n\t\ttry {\n\t\t\tfor (const service of services) {\n\t\t\t\t// Check cache first - handles singleton services that short-circuit\n\t\t\t\tif (serviceEnvCache.has(service)) {\n\t\t\t\t\tconst cached = serviceEnvCache.get(service)!;\n\t\t\t\t\tcached.envVars.forEach((v) => envVars.add(v));\n\t\t\t\t\tcached.optionalEnvVars.forEach((v) => optionalVars.add(v));\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\t// Use sniffService to properly handle all error scenarios\n\t\t\t\tconst result = await sniffService(service);\n\n\t\t\t\t// Log any issues for debugging\n\t\t\t\tif (result.error) {\n\t\t\t\t\tthis.logger.warn(\n\t\t\t\t\t\t{ error: result.error.message, service: service.serviceName },\n\t\t\t\t\t\t'Service threw error during env sniffing (env vars still captured)',\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tif (result.unhandledRejections.length > 0) {\n\t\t\t\t\tthis.logger.warn(\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\terrors: result.unhandledRejections.map((e) => e.message),\n\t\t\t\t\t\t\tservice: service.serviceName,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'Fire-and-forget rejections during env sniffing (suppressed)',\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// Cache and collect env vars (both required and optional)\n\t\t\t\tserviceEnvCache.set(service, {\n\t\t\t\t\tenvVars: result.envVars,\n\t\t\t\t\toptionalEnvVars: result.optionalEnvVars,\n\t\t\t\t});\n\t\t\t\tresult.envVars.forEach((v) => envVars.add(v));\n\t\t\t\tresult.optionalEnvVars.forEach((v) => optionalVars.add(v));\n\t\t\t}\n\n\t\t\tconst sorted = Array.from(envVars).sort();\n\t\t\tif (!markOptional || optionalVars.size === 0) return sorted;\n\t\t\treturn sorted.map((v) => (optionalVars.has(v) ? `${v}?` : v));\n\t\t} catch (error) {\n\t\t\tthis.logger.error(\n\t\t\t\t{ error },\n\t\t\t\t'Error determining environment variables for construct',\n\t\t\t);\n\n\t\t\treturn [];\n\t\t}\n\t}\n}\n\nexport enum ConstructType {\n\tCron = 'dev.geekmidas.function.cron',\n\tEndpoint = 'dev.geekmidas.function.endpoint',\n\tFunction = 'dev.geekmidas.function.function',\n\tSubscriber = 'dev.geekmidas.function.subscriber',\n\tQueue = 'dev.geekmidas.function.queue',\n\tTopic = 'dev.geekmidas.resource.topic',\n}\n\n/**\n * Utility to test sniffing a service for environment variables.\n * Useful for debugging services that throw errors during sniffing.\n *\n * @example\n * ```typescript\n * import { sniffService } from '@geekmidas/constructs';\n * import { authService } from './services/AuthService';\n *\n * const result = await sniffService(authService);\n * console.log('Env vars:', result.envVars);\n * console.log('Error:', result.error);\n * ```\n */\nexport async function sniffService(service: Service): Promise<SniffResult> {\n\tconst sniffer = new SnifferEnvironmentParser();\n\n\treturn sniffWithFireAndForget(sniffer, () =>\n\t\tservice.register({\n\t\t\tenvParser: sniffer as any,\n\t\t\tcontext: snifferContext,\n\t\t}),\n\t);\n}\n\n// Export for testing\nexport { snifferContext };\n"],"x_google_ignoreList":[0],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuBA,SAASA,UAAQ,OAAO;EACtB,IAAI,QAAQ,IACR,SAAS,QAAQ,MAAM,SAAS,GAChC,WAAW,GACX,SAAS,CAAE;AAEf,SAAO,EAAE,QAAQ,QAAQ;GACvB,IAAI,QAAQ,MAAM;AAClB,OAAI,MACF,QAAO,cAAc;EAExB;AACD,SAAO;CACR;AAED,QAAO,UAAUA;;;;;;ACvBjB,MAAM,kCAAkB,IAAI;;;;;;;AAW5B,MAAMC,iBAAiC;CACtC,YAAY;AAEX,SAAO;GACN,OAAO,MAAM,CAAE;GACf,MAAM,MAAM,CAAE;GACd,MAAM,MAAM,CAAE;GACd,OAAO,MAAM,CAAE;GACf,OAAO,MAAM,eAAe,WAAW;EACvC;CACD;CACD,eAAe;AACd,SAAO;CACP;CACD,sBAAsB;AACrB,SAAO,KAAK,KAAK;CACjB;CACD,aAAa;AACZ,SAAO;CACP;AACD;AAED,IAAsB,YAAtB,MAUE;;CAED,AAAO;;;;;;;;;;;;;CAcP,AAAO;CAEP,YACiBC,MACAC,QACAC,UACAC,SAAgC,CAAE,GAClCC,kBACTC,cACSC,SACAC,YACAC,uBAcAC,aAAuB,CAAE,GACxC;EAvBe;EACA;EACA;EACA;EACA;EACT;EACS;EACA;EACA;EAcA;CACb;;;;;;;;;;;;;;;;;;;;;;;;CAyBJ,MAAM,eACLC,OAAmC,CAAE,GACjB;EACpB,MAAM,EAAE,eAAe,OAAO,GAAG;EACjC,MAAM,0BAAU,IAAI;EACpB,MAAM,+BAAe,IAAI;EACzB,MAAMC,WAAsB,2BAAQ;GACnC,GAAG,KAAK;GACR,KAAK;GACL,KAAK;GACL,KAAK;GACL,KAAK;EACL,EAAC;AAEF,MAAI;AACH,QAAK,MAAM,WAAW,UAAU;AAE/B,QAAI,gBAAgB,IAAI,QAAQ,EAAE;KACjC,MAAM,SAAS,gBAAgB,IAAI,QAAQ;AAC3C,YAAO,QAAQ,QAAQ,CAAC,MAAM,QAAQ,IAAI,EAAE,CAAC;AAC7C,YAAO,gBAAgB,QAAQ,CAAC,MAAM,aAAa,IAAI,EAAE,CAAC;AAC1D;IACA;IAGD,MAAM,SAAS,MAAM,aAAa,QAAQ;AAG1C,QAAI,OAAO,MACV,MAAK,OAAO,KACX;KAAE,OAAO,OAAO,MAAM;KAAS,SAAS,QAAQ;IAAa,GAC7D,oEACA;AAEF,QAAI,OAAO,oBAAoB,SAAS,EACvC,MAAK,OAAO,KACX;KACC,QAAQ,OAAO,oBAAoB,IAAI,CAAC,MAAM,EAAE,QAAQ;KACxD,SAAS,QAAQ;IACjB,GACD,8DACA;AAIF,oBAAgB,IAAI,SAAS;KAC5B,SAAS,OAAO;KAChB,iBAAiB,OAAO;IACxB,EAAC;AACF,WAAO,QAAQ,QAAQ,CAAC,MAAM,QAAQ,IAAI,EAAE,CAAC;AAC7C,WAAO,gBAAgB,QAAQ,CAAC,MAAM,aAAa,IAAI,EAAE,CAAC;GAC1D;GAED,MAAM,SAAS,MAAM,KAAK,QAAQ,CAAC,MAAM;AACzC,QAAK,gBAAgB,aAAa,SAAS,EAAG,QAAO;AACrD,UAAO,OAAO,IAAI,CAAC,MAAO,aAAa,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAG;EAC7D,SAAQ,OAAO;AACf,QAAK,OAAO,MACX,EAAE,MAAO,GACT,wDACA;AAED,UAAO,CAAE;EACT;CACD;AACD;AAED,IAAY,0DAAL;AACN;AACA;AACA;AACA;AACA;AACA;;AACA;;;;;;;;;;;;;;;AAgBD,eAAsB,aAAaC,SAAwC;CAC1E,MAAM,UAAU,IAAI;AAEpB,QAAO,uBAAuB,SAAS,MACtC,QAAQ,SAAS;EAChB,WAAW;EACX,SAAS;CACT,EAAC,CACF;AACD"}
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
import { EventPublisher, MappedEvent } from "@geekmidas/events";
|
|
2
|
-
import { Logger } from "@geekmidas/logger";
|
|
3
|
-
import { Service, ServiceContext } from "@geekmidas/services";
|
|
4
|
-
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
5
|
-
import { AuditStorage } from "@geekmidas/audit";
|
|
6
|
-
import { SniffResult } from "@geekmidas/envkit/sniffer";
|
|
7
|
-
|
|
8
|
-
//#region src/Construct.d.ts
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Noop context for environment sniffing.
|
|
12
|
-
* Used when calling service.register() to detect env vars without a real request.
|
|
13
|
-
* Returns dummy values since services should only use context in instance methods,
|
|
14
|
-
* not during registration.
|
|
15
|
-
*/
|
|
16
|
-
declare const snifferContext: ServiceContext;
|
|
17
|
-
declare abstract class Construct<TLogger extends Logger = Logger, TServiceName extends string = string, T extends EventPublisher<any> | undefined = undefined, OutSchema extends StandardSchemaV1 | undefined = undefined, TServices extends Service[] = [], TAuditStorageServiceName extends string = string, TAuditStorage extends AuditStorage | undefined = undefined, TDatabaseServiceName extends string = string, TDatabase = unknown> {
|
|
18
|
-
readonly type: ConstructType;
|
|
19
|
-
readonly logger: TLogger;
|
|
20
|
-
readonly services: TServices;
|
|
21
|
-
readonly events: MappedEvent<T, any>[];
|
|
22
|
-
readonly publisherService?: Service<TServiceName, T> | undefined;
|
|
23
|
-
outputSchema?: OutSchema | undefined;
|
|
24
|
-
readonly timeout?: number | undefined;
|
|
25
|
-
readonly memorySize?: number | undefined;
|
|
26
|
-
readonly auditorStorageService?: Service<TAuditStorageServiceName, TAuditStorage> | undefined;
|
|
27
|
-
/**
|
|
28
|
-
* The constructs this one declared an edge to, by id.
|
|
29
|
-
*
|
|
30
|
-
* What the manifest records. `services` is the same information in the
|
|
31
|
-
* form a handler runs with — clients, keyed by name — and an id cannot be
|
|
32
|
-
* recovered from one of those reliably, so both are kept.
|
|
33
|
-
*
|
|
34
|
-
* Last in the list because every other parameter is positional and already
|
|
35
|
-
* spoken for; a new one anywhere else silently rebinds existing callers.
|
|
36
|
-
*/
|
|
37
|
-
readonly constructs: string[];
|
|
38
|
-
/** Database service for this construct (used by Endpoint for RLS/audit context) */
|
|
39
|
-
databaseService?: Service<TDatabaseServiceName, TDatabase>;
|
|
40
|
-
/**
|
|
41
|
-
* The deploy unit that runs this, by construct id.
|
|
42
|
-
*
|
|
43
|
-
* What an endpoint's `surface` is to it, and for the same reason: something
|
|
44
|
-
* has to say which process a runnable belongs to, and until this existed the
|
|
45
|
-
* only thing that said so was the directory its file sat in. Set by the
|
|
46
|
-
* factory it was built from — `worker.crons`, `api.endpoints` — so it is
|
|
47
|
-
* carried rather than configured.
|
|
48
|
-
*
|
|
49
|
-
* Undefined for a construct built from a free-standing builder, which is
|
|
50
|
-
* still how `c`, `s` and `f` work.
|
|
51
|
-
*/
|
|
52
|
-
owner?: string;
|
|
53
|
-
constructor(type: ConstructType, logger: TLogger, services: TServices, events?: MappedEvent<T, any>[], publisherService?: Service<TServiceName, T> | undefined, outputSchema?: OutSchema | undefined, timeout?: number | undefined, memorySize?: number | undefined, auditorStorageService?: Service<TAuditStorageServiceName, TAuditStorage> | undefined,
|
|
54
|
-
/**
|
|
55
|
-
* The constructs this one declared an edge to, by id.
|
|
56
|
-
*
|
|
57
|
-
* What the manifest records. `services` is the same information in the
|
|
58
|
-
* form a handler runs with — clients, keyed by name — and an id cannot be
|
|
59
|
-
* recovered from one of those reliably, so both are kept.
|
|
60
|
-
*
|
|
61
|
-
* Last in the list because every other parameter is positional and already
|
|
62
|
-
* spoken for; a new one anywhere else silently rebinds existing callers.
|
|
63
|
-
*/
|
|
64
|
-
constructs?: string[]);
|
|
65
|
-
/**
|
|
66
|
-
* Returns an array of environment variable names required by this construct's services.
|
|
67
|
-
* This is determined by running a "sniffer" EnvironmentParser through each service's
|
|
68
|
-
* register method to track which environment variables are accessed.
|
|
69
|
-
*
|
|
70
|
-
* Results are cached per service class to handle singleton patterns where
|
|
71
|
-
* subsequent register() calls may short-circuit and not access env vars.
|
|
72
|
-
*
|
|
73
|
-
* @param markOptional - When true, optional vars (those accessed via `.optional()` or
|
|
74
|
-
* `.default()`) are suffixed with `?` in the returned array (e.g. `'PORT?'`).
|
|
75
|
-
* @returns Promise that resolves to array of environment variable names, sorted alphabetically
|
|
76
|
-
*
|
|
77
|
-
* @example
|
|
78
|
-
* ```typescript
|
|
79
|
-
* const endpoint = e
|
|
80
|
-
* .services([databaseService, authService])
|
|
81
|
-
* .get('/users')
|
|
82
|
-
* .handle(async () => []);
|
|
83
|
-
*
|
|
84
|
-
* await endpoint.getEnvironment(); // ['AUTH_SECRET', 'DATABASE_URL']
|
|
85
|
-
* await endpoint.getEnvironment({ markOptional: true }); // ['AUTH_SECRET', 'DATABASE_URL', 'PORT?']
|
|
86
|
-
* ```
|
|
87
|
-
*/
|
|
88
|
-
getEnvironment(opts?: {
|
|
89
|
-
markOptional?: boolean;
|
|
90
|
-
}): Promise<string[]>;
|
|
91
|
-
}
|
|
92
|
-
declare enum ConstructType {
|
|
93
|
-
Cron = "dev.geekmidas.function.cron",
|
|
94
|
-
Endpoint = "dev.geekmidas.function.endpoint",
|
|
95
|
-
Function = "dev.geekmidas.function.function",
|
|
96
|
-
Subscriber = "dev.geekmidas.function.subscriber",
|
|
97
|
-
Queue = "dev.geekmidas.function.queue",
|
|
98
|
-
Topic = "dev.geekmidas.resource.topic",
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Utility to test sniffing a service for environment variables.
|
|
102
|
-
* Useful for debugging services that throw errors during sniffing.
|
|
103
|
-
*
|
|
104
|
-
* @example
|
|
105
|
-
* ```typescript
|
|
106
|
-
* import { sniffService } from '@geekmidas/constructs';
|
|
107
|
-
* import { authService } from './services/AuthService';
|
|
108
|
-
*
|
|
109
|
-
* const result = await sniffService(authService);
|
|
110
|
-
* console.log('Env vars:', result.envVars);
|
|
111
|
-
* console.log('Error:', result.error);
|
|
112
|
-
* ```
|
|
113
|
-
*/
|
|
114
|
-
declare function sniffService(service: Service): Promise<SniffResult>;
|
|
115
|
-
//#endregion
|
|
116
|
-
export { Construct, ConstructType, sniffService, snifferContext };
|
|
117
|
-
//# sourceMappingURL=Construct-C0ijr2qp.d.cts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Construct-C0ijr2qp.d.cts","names":[],"sources":["../src/Construct.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;AAS8D;AAuC9D;;;cAtBM,cAuBoB,EAvBJ,cAuBI;AAEf,uBAHW,SAGX,CAAA,gBAFM,MAEN,GAFe,MAEf,EAAA,qBAAA,MAAA,GAAA,MAAA,EAAA,UAAA,cAAA,CAAA,GAAA,CAAA,GAAA,SAAA,GAAA,SAAA,EAAA,kBACQ,gBADR,GAAA,SAAA,GAAA,SAAA,EAAA,kBAEQ,OAFR,EAAA,GAAA,EAAA,EAAA,iCAAA,MAAA,GAAA,MAAA,EAAA,sBAIY,YAJZ,GAAA,SAAA,GAAA,SAAA,EAAA,6BAAA,MAAA,GAAA,MAAA,EAAA,YAAA,OAAA,CAAA,CAAA;EAAc,SACN,IAAA,EAyBK,aAzBL;EAAgB,SAChB,MAAA,EAyBO,OAzBP;EAAO,SAEH,QAAA,EAwBK,SAxBL;EAAY,SAsBX,MAAA,EAGE,WAHF,CAGc,CAHd,EAAA,GAAA,CAAA,EAAA;EAAa,SACX,gBAAA,CAAA,EAGW,OAHX,CAGmB,YAHnB,EAGiC,CAHjC,CAAA,GAAA,SAAA;EAAO,YACL,CAAA,EAGJ,SAHI,GAAA,SAAA;EAAS,SACC,OAAA,CAAA,EAAA,MAAA,GAAA,SAAA;EAAC,SAAb,UAAA,CAAA,EAAA,MAAA,GAAA,SAAA;EAAW,SACQ,qBAAA,CAAA,EAIH,OAJG,CAK1C,wBAL0C,EAM1C,aAN0C,CAAA,GAAA,SAAA;EAAY;;;;;;;;;;EAJpB,SACX,UAAA,EAAA,MAAA,EAAA;EAAO;EACI,eACC,CAAA,EApBZ,OAoBY,CApBJ,oBAoBI,EApBkB,SAoBlB,CAAA;EAAC;;;;;;;;;AA+C5B;AAiEX;AAuBA;EAAkC,KAAA,CAAA,EAAA,MAAA;EAAA,WAAU,CAAA,IAAA,EA1IpB,aA0IoB,EAAA,MAAA,EAzIlB,OAyIkB,EAAA,QAAA,EAxIhB,SAwIgB,EAAA,MAAA,CAAA,EAvIlB,WAuIkB,CAvIN,CAuIM,EAAA,GAAA,CAAA,EAAA,EAAA,gBAAA,CAAA,EAtIP,OAsIO,CAtIC,YAsID,EAtIe,CAsIf,CAAA,GAAA,SAAA,EAAA,YAAA,CAAA,EArIpB,SAqIoB,GAAA,SAAA,EAAA,OAAA,CAAA,EAAA,MAAA,GAAA,SAAA,EAAA,UAAA,CAAA,EAAA,MAAA,GAAA,SAAA,EAAA,qBAAA,CAAA,EAlIF,OAkIE,CAjIzC,wBAiIyC,EAhIzC,aAgIyC,CAAA,GAAA,SAAA;EAAO;;AAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAxFzD;;aAiEQ,aAAA;;;;;;;;;;;;;;;;;;;;;;iBAuBU,YAAA,UAAsB,UAAU,QAAQ"}
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
import { SniffResult } from "@geekmidas/envkit/sniffer";
|
|
2
|
-
import { Service, ServiceContext } from "@geekmidas/services";
|
|
3
|
-
import { AuditStorage } from "@geekmidas/audit";
|
|
4
|
-
import { EventPublisher, MappedEvent } from "@geekmidas/events";
|
|
5
|
-
import { Logger } from "@geekmidas/logger";
|
|
6
|
-
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
7
|
-
|
|
8
|
-
//#region src/Construct.d.ts
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Noop context for environment sniffing.
|
|
12
|
-
* Used when calling service.register() to detect env vars without a real request.
|
|
13
|
-
* Returns dummy values since services should only use context in instance methods,
|
|
14
|
-
* not during registration.
|
|
15
|
-
*/
|
|
16
|
-
declare const snifferContext: ServiceContext;
|
|
17
|
-
declare abstract class Construct<TLogger extends Logger = Logger, TServiceName extends string = string, T extends EventPublisher<any> | undefined = undefined, OutSchema extends StandardSchemaV1 | undefined = undefined, TServices extends Service[] = [], TAuditStorageServiceName extends string = string, TAuditStorage extends AuditStorage | undefined = undefined, TDatabaseServiceName extends string = string, TDatabase = unknown> {
|
|
18
|
-
readonly type: ConstructType;
|
|
19
|
-
readonly logger: TLogger;
|
|
20
|
-
readonly services: TServices;
|
|
21
|
-
readonly events: MappedEvent<T, any>[];
|
|
22
|
-
readonly publisherService?: Service<TServiceName, T> | undefined;
|
|
23
|
-
outputSchema?: OutSchema | undefined;
|
|
24
|
-
readonly timeout?: number | undefined;
|
|
25
|
-
readonly memorySize?: number | undefined;
|
|
26
|
-
readonly auditorStorageService?: Service<TAuditStorageServiceName, TAuditStorage> | undefined;
|
|
27
|
-
/**
|
|
28
|
-
* The constructs this one declared an edge to, by id.
|
|
29
|
-
*
|
|
30
|
-
* What the manifest records. `services` is the same information in the
|
|
31
|
-
* form a handler runs with — clients, keyed by name — and an id cannot be
|
|
32
|
-
* recovered from one of those reliably, so both are kept.
|
|
33
|
-
*
|
|
34
|
-
* Last in the list because every other parameter is positional and already
|
|
35
|
-
* spoken for; a new one anywhere else silently rebinds existing callers.
|
|
36
|
-
*/
|
|
37
|
-
readonly constructs: string[];
|
|
38
|
-
/** Database service for this construct (used by Endpoint for RLS/audit context) */
|
|
39
|
-
databaseService?: Service<TDatabaseServiceName, TDatabase>;
|
|
40
|
-
/**
|
|
41
|
-
* The deploy unit that runs this, by construct id.
|
|
42
|
-
*
|
|
43
|
-
* What an endpoint's `surface` is to it, and for the same reason: something
|
|
44
|
-
* has to say which process a runnable belongs to, and until this existed the
|
|
45
|
-
* only thing that said so was the directory its file sat in. Set by the
|
|
46
|
-
* factory it was built from — `worker.crons`, `api.endpoints` — so it is
|
|
47
|
-
* carried rather than configured.
|
|
48
|
-
*
|
|
49
|
-
* Undefined for a construct built from a free-standing builder, which is
|
|
50
|
-
* still how `c`, `s` and `f` work.
|
|
51
|
-
*/
|
|
52
|
-
owner?: string;
|
|
53
|
-
constructor(type: ConstructType, logger: TLogger, services: TServices, events?: MappedEvent<T, any>[], publisherService?: Service<TServiceName, T> | undefined, outputSchema?: OutSchema | undefined, timeout?: number | undefined, memorySize?: number | undefined, auditorStorageService?: Service<TAuditStorageServiceName, TAuditStorage> | undefined,
|
|
54
|
-
/**
|
|
55
|
-
* The constructs this one declared an edge to, by id.
|
|
56
|
-
*
|
|
57
|
-
* What the manifest records. `services` is the same information in the
|
|
58
|
-
* form a handler runs with — clients, keyed by name — and an id cannot be
|
|
59
|
-
* recovered from one of those reliably, so both are kept.
|
|
60
|
-
*
|
|
61
|
-
* Last in the list because every other parameter is positional and already
|
|
62
|
-
* spoken for; a new one anywhere else silently rebinds existing callers.
|
|
63
|
-
*/
|
|
64
|
-
constructs?: string[]);
|
|
65
|
-
/**
|
|
66
|
-
* Returns an array of environment variable names required by this construct's services.
|
|
67
|
-
* This is determined by running a "sniffer" EnvironmentParser through each service's
|
|
68
|
-
* register method to track which environment variables are accessed.
|
|
69
|
-
*
|
|
70
|
-
* Results are cached per service class to handle singleton patterns where
|
|
71
|
-
* subsequent register() calls may short-circuit and not access env vars.
|
|
72
|
-
*
|
|
73
|
-
* @param markOptional - When true, optional vars (those accessed via `.optional()` or
|
|
74
|
-
* `.default()`) are suffixed with `?` in the returned array (e.g. `'PORT?'`).
|
|
75
|
-
* @returns Promise that resolves to array of environment variable names, sorted alphabetically
|
|
76
|
-
*
|
|
77
|
-
* @example
|
|
78
|
-
* ```typescript
|
|
79
|
-
* const endpoint = e
|
|
80
|
-
* .services([databaseService, authService])
|
|
81
|
-
* .get('/users')
|
|
82
|
-
* .handle(async () => []);
|
|
83
|
-
*
|
|
84
|
-
* await endpoint.getEnvironment(); // ['AUTH_SECRET', 'DATABASE_URL']
|
|
85
|
-
* await endpoint.getEnvironment({ markOptional: true }); // ['AUTH_SECRET', 'DATABASE_URL', 'PORT?']
|
|
86
|
-
* ```
|
|
87
|
-
*/
|
|
88
|
-
getEnvironment(opts?: {
|
|
89
|
-
markOptional?: boolean;
|
|
90
|
-
}): Promise<string[]>;
|
|
91
|
-
}
|
|
92
|
-
declare enum ConstructType {
|
|
93
|
-
Cron = "dev.geekmidas.function.cron",
|
|
94
|
-
Endpoint = "dev.geekmidas.function.endpoint",
|
|
95
|
-
Function = "dev.geekmidas.function.function",
|
|
96
|
-
Subscriber = "dev.geekmidas.function.subscriber",
|
|
97
|
-
Queue = "dev.geekmidas.function.queue",
|
|
98
|
-
Topic = "dev.geekmidas.resource.topic",
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Utility to test sniffing a service for environment variables.
|
|
102
|
-
* Useful for debugging services that throw errors during sniffing.
|
|
103
|
-
*
|
|
104
|
-
* @example
|
|
105
|
-
* ```typescript
|
|
106
|
-
* import { sniffService } from '@geekmidas/constructs';
|
|
107
|
-
* import { authService } from './services/AuthService';
|
|
108
|
-
*
|
|
109
|
-
* const result = await sniffService(authService);
|
|
110
|
-
* console.log('Env vars:', result.envVars);
|
|
111
|
-
* console.log('Error:', result.error);
|
|
112
|
-
* ```
|
|
113
|
-
*/
|
|
114
|
-
declare function sniffService(service: Service): Promise<SniffResult>;
|
|
115
|
-
//#endregion
|
|
116
|
-
export { Construct, ConstructType, sniffService, snifferContext };
|
|
117
|
-
//# sourceMappingURL=Construct-Ct8nalEi.d.mts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Construct-Ct8nalEi.d.mts","names":[],"sources":["../src/Construct.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;AAS8D;AAuC9D;;;cAtBM,cAuBoB,EAvBJ,cAuBI;AAEf,uBAHW,SAGX,CAAA,gBAFM,MAEN,GAFe,MAEf,EAAA,qBAAA,MAAA,GAAA,MAAA,EAAA,UAAA,cAAA,CAAA,GAAA,CAAA,GAAA,SAAA,GAAA,SAAA,EAAA,kBACQ,gBADR,GAAA,SAAA,GAAA,SAAA,EAAA,kBAEQ,OAFR,EAAA,GAAA,EAAA,EAAA,iCAAA,MAAA,GAAA,MAAA,EAAA,sBAIY,YAJZ,GAAA,SAAA,GAAA,SAAA,EAAA,6BAAA,MAAA,GAAA,MAAA,EAAA,YAAA,OAAA,CAAA,CAAA;EAAc,SACN,IAAA,EAyBK,aAzBL;EAAgB,SAChB,MAAA,EAyBO,OAzBP;EAAO,SAEH,QAAA,EAwBK,SAxBL;EAAY,SAsBX,MAAA,EAGE,WAHF,CAGc,CAHd,EAAA,GAAA,CAAA,EAAA;EAAa,SACX,gBAAA,CAAA,EAGW,OAHX,CAGmB,YAHnB,EAGiC,CAHjC,CAAA,GAAA,SAAA;EAAO,YACL,CAAA,EAGJ,SAHI,GAAA,SAAA;EAAS,SACC,OAAA,CAAA,EAAA,MAAA,GAAA,SAAA;EAAC,SAAb,UAAA,CAAA,EAAA,MAAA,GAAA,SAAA;EAAW,SACQ,qBAAA,CAAA,EAIH,OAJG,CAK1C,wBAL0C,EAM1C,aAN0C,CAAA,GAAA,SAAA;EAAY;;;;;;;;;;EAJpB,SACX,UAAA,EAAA,MAAA,EAAA;EAAO;EACI,eACC,CAAA,EApBZ,OAoBY,CApBJ,oBAoBI,EApBkB,SAoBlB,CAAA;EAAC;;;;;;;;;AA+C5B;AAiEX;AAuBA;EAAkC,KAAA,CAAA,EAAA,MAAA;EAAA,WAAU,CAAA,IAAA,EA1IpB,aA0IoB,EAAA,MAAA,EAzIlB,OAyIkB,EAAA,QAAA,EAxIhB,SAwIgB,EAAA,MAAA,CAAA,EAvIlB,WAuIkB,CAvIN,CAuIM,EAAA,GAAA,CAAA,EAAA,EAAA,gBAAA,CAAA,EAtIP,OAsIO,CAtIC,YAsID,EAtIe,CAsIf,CAAA,GAAA,SAAA,EAAA,YAAA,CAAA,EArIpB,SAqIoB,GAAA,SAAA,EAAA,OAAA,CAAA,EAAA,MAAA,GAAA,SAAA,EAAA,UAAA,CAAA,EAAA,MAAA,GAAA,SAAA,EAAA,qBAAA,CAAA,EAlIF,OAkIE,CAjIzC,wBAiIyC,EAhIzC,aAgIyC,CAAA,GAAA,SAAA;EAAO;;AAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAxFzD;;aAiEQ,aAAA;;;;;;;;;;;;;;;;;;;;;;iBAuBU,YAAA,UAAsB,UAAU,QAAQ"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Construct-CyS3RpTL.cjs","names":["compact","snifferContext: ServiceContext","type: ConstructType","logger: TLogger","services: TServices","events: MappedEvent<T, any>[]","publisherService?: Service<TServiceName, T>","outputSchema?: OutSchema","timeout?: number","memorySize?: number","auditorStorageService?: Service<\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditStorage\n\t\t>","constructs: string[]","opts: { markOptional?: boolean }","services: Service[]","service: Service","SnifferEnvironmentParser"],"sources":["../../../node_modules/.pnpm/lodash.compact@3.0.1/node_modules/lodash.compact/index.js","../src/Construct.ts"],"sourcesContent":["/**\n * lodash 3.0.1 (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright 2012-2016 The Dojo Foundation <http://dojofoundation.org/>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright 2009-2016 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n * Available under MIT license <https://lodash.com/license>\n */\n\n/**\n * Creates an array with all falsey values removed. The values `false`, `null`,\n * `0`, `\"\"`, `undefined`, and `NaN` are falsey.\n *\n * @static\n * @memberOf _\n * @category Array\n * @param {Array} array The array to compact.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.compact([0, 1, false, 2, '', 3]);\n * // => [1, 2, 3]\n */\nfunction compact(array) {\n var index = -1,\n length = array ? array.length : 0,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nmodule.exports = compact;\n","import type { AuditStorage } from '@geekmidas/audit';\nimport {\n\tSnifferEnvironmentParser,\n\ttype SniffResult,\n\tsniffWithFireAndForget,\n} from '@geekmidas/envkit/sniffer';\nimport type { EventPublisher, MappedEvent } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport type { Service, ServiceContext } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport compact from 'lodash.compact';\n\n// Cache for service environment variables to handle singleton services\n// Stores both the full list and the optional subset so the same sniff result\n// can satisfy both getEnvironment() and getEnvironment({ markOptional: true }).\nconst serviceEnvCache = new Map<\n\tService,\n\t{ envVars: string[]; optionalEnvVars: string[] }\n>();\n\n/**\n * Noop context for environment sniffing.\n * Used when calling service.register() to detect env vars without a real request.\n * Returns dummy values since services should only use context in instance methods,\n * not during registration.\n */\nconst snifferContext: ServiceContext = {\n\tgetLogger() {\n\t\t// Return a noop logger for sniffing - services shouldn't log during registration\n\t\treturn {\n\t\t\tdebug: () => {},\n\t\t\tinfo: () => {},\n\t\t\twarn: () => {},\n\t\t\terror: () => {},\n\t\t\tchild: () => snifferContext.getLogger(),\n\t\t} as unknown as Logger;\n\t},\n\tgetRequestId() {\n\t\treturn 'sniffer-context';\n\t},\n\tgetRequestStartTime() {\n\t\treturn Date.now();\n\t},\n\thasContext() {\n\t\treturn false;\n\t},\n};\n\nexport abstract class Construct<\n\tTLogger extends Logger = Logger,\n\tTServiceName extends string = string,\n\tT extends EventPublisher<any> | undefined = undefined,\n\tOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTAuditStorageServiceName extends string = string,\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTDatabaseServiceName extends string = string,\n\tTDatabase = unknown,\n> {\n\t/** Database service for this construct (used by Endpoint for RLS/audit context) */\n\tpublic databaseService?: Service<TDatabaseServiceName, TDatabase>;\n\n\t/**\n\t * The deploy unit that runs this, by construct id.\n\t *\n\t * What an endpoint's `surface` is to it, and for the same reason: something\n\t * has to say which process a runnable belongs to, and until this existed the\n\t * only thing that said so was the directory its file sat in. Set by the\n\t * factory it was built from — `worker.crons`, `api.endpoints` — so it is\n\t * carried rather than configured.\n\t *\n\t * Undefined for a construct built from a free-standing builder, which is\n\t * still how `c`, `s` and `f` work.\n\t */\n\tpublic owner?: string;\n\n\tconstructor(\n\t\tpublic readonly type: ConstructType,\n\t\tpublic readonly logger: TLogger,\n\t\tpublic readonly services: TServices,\n\t\tpublic readonly events: MappedEvent<T, any>[] = [],\n\t\tpublic readonly publisherService?: Service<TServiceName, T>,\n\t\tpublic outputSchema?: OutSchema,\n\t\tpublic readonly timeout?: number,\n\t\tpublic readonly memorySize?: number,\n\t\tpublic readonly auditorStorageService?: Service<\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditStorage\n\t\t>,\n\t\t/**\n\t\t * The constructs this one declared an edge to, by id.\n\t\t *\n\t\t * What the manifest records. `services` is the same information in the\n\t\t * form a handler runs with — clients, keyed by name — and an id cannot be\n\t\t * recovered from one of those reliably, so both are kept.\n\t\t *\n\t\t * Last in the list because every other parameter is positional and already\n\t\t * spoken for; a new one anywhere else silently rebinds existing callers.\n\t\t */\n\t\tpublic readonly constructs: string[] = [],\n\t) {}\n\n\t/**\n\t * Returns an array of environment variable names required by this construct's services.\n\t * This is determined by running a \"sniffer\" EnvironmentParser through each service's\n\t * register method to track which environment variables are accessed.\n\t *\n\t * Results are cached per service class to handle singleton patterns where\n\t * subsequent register() calls may short-circuit and not access env vars.\n\t *\n\t * @param markOptional - When true, optional vars (those accessed via `.optional()` or\n\t * `.default()`) are suffixed with `?` in the returned array (e.g. `'PORT?'`).\n\t * @returns Promise that resolves to array of environment variable names, sorted alphabetically\n\t *\n\t * @example\n\t * ```typescript\n\t * const endpoint = e\n\t * .services([databaseService, authService])\n\t * .get('/users')\n\t * .handle(async () => []);\n\t *\n\t * await endpoint.getEnvironment(); // ['AUTH_SECRET', 'DATABASE_URL']\n\t * await endpoint.getEnvironment({ markOptional: true }); // ['AUTH_SECRET', 'DATABASE_URL', 'PORT?']\n\t * ```\n\t */\n\tasync getEnvironment(\n\t\topts: { markOptional?: boolean } = {},\n\t): Promise<string[]> {\n\t\tconst { markOptional = false } = opts;\n\t\tconst envVars = new Set<string>();\n\t\tconst optionalVars = new Set<string>();\n\t\tconst services: Service[] = compact([\n\t\t\t...this.services,\n\t\t\tthis.publisherService,\n\t\t\tthis.publisherService,\n\t\t\tthis.auditorStorageService,\n\t\t\tthis.databaseService,\n\t\t]);\n\n\t\ttry {\n\t\t\tfor (const service of services) {\n\t\t\t\t// Check cache first - handles singleton services that short-circuit\n\t\t\t\tif (serviceEnvCache.has(service)) {\n\t\t\t\t\tconst cached = serviceEnvCache.get(service)!;\n\t\t\t\t\tcached.envVars.forEach((v) => envVars.add(v));\n\t\t\t\t\tcached.optionalEnvVars.forEach((v) => optionalVars.add(v));\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\t// Use sniffService to properly handle all error scenarios\n\t\t\t\tconst result = await sniffService(service);\n\n\t\t\t\t// Log any issues for debugging\n\t\t\t\tif (result.error) {\n\t\t\t\t\tthis.logger.warn(\n\t\t\t\t\t\t{ error: result.error.message, service: service.serviceName },\n\t\t\t\t\t\t'Service threw error during env sniffing (env vars still captured)',\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tif (result.unhandledRejections.length > 0) {\n\t\t\t\t\tthis.logger.warn(\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\terrors: result.unhandledRejections.map((e) => e.message),\n\t\t\t\t\t\t\tservice: service.serviceName,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'Fire-and-forget rejections during env sniffing (suppressed)',\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// Cache and collect env vars (both required and optional)\n\t\t\t\tserviceEnvCache.set(service, {\n\t\t\t\t\tenvVars: result.envVars,\n\t\t\t\t\toptionalEnvVars: result.optionalEnvVars,\n\t\t\t\t});\n\t\t\t\tresult.envVars.forEach((v) => envVars.add(v));\n\t\t\t\tresult.optionalEnvVars.forEach((v) => optionalVars.add(v));\n\t\t\t}\n\n\t\t\tconst sorted = Array.from(envVars).sort();\n\t\t\tif (!markOptional || optionalVars.size === 0) return sorted;\n\t\t\treturn sorted.map((v) => (optionalVars.has(v) ? `${v}?` : v));\n\t\t} catch (error) {\n\t\t\tthis.logger.error(\n\t\t\t\t{ error },\n\t\t\t\t'Error determining environment variables for construct',\n\t\t\t);\n\n\t\t\treturn [];\n\t\t}\n\t}\n}\n\nexport enum ConstructType {\n\tCron = 'dev.geekmidas.function.cron',\n\tEndpoint = 'dev.geekmidas.function.endpoint',\n\tFunction = 'dev.geekmidas.function.function',\n\tSubscriber = 'dev.geekmidas.function.subscriber',\n\tQueue = 'dev.geekmidas.function.queue',\n\tTopic = 'dev.geekmidas.resource.topic',\n}\n\n/**\n * Utility to test sniffing a service for environment variables.\n * Useful for debugging services that throw errors during sniffing.\n *\n * @example\n * ```typescript\n * import { sniffService } from '@geekmidas/constructs';\n * import { authService } from './services/AuthService';\n *\n * const result = await sniffService(authService);\n * console.log('Env vars:', result.envVars);\n * console.log('Error:', result.error);\n * ```\n */\nexport async function sniffService(service: Service): Promise<SniffResult> {\n\tconst sniffer = new SnifferEnvironmentParser();\n\n\treturn sniffWithFireAndForget(sniffer, () =>\n\t\tservice.register({\n\t\t\tenvParser: sniffer as any,\n\t\t\tcontext: snifferContext,\n\t\t}),\n\t);\n}\n\n// Export for testing\nexport { snifferContext };\n"],"x_google_ignoreList":[0],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Cron-B2OFsfDM.d.cts","names":[],"sources":["../src/crons/Cron.ts"],"sourcesContent":[],"mappings":";;;;;;;;;cAUa,oBACG,oEACG,gCACF,SAAS,0BACP,kEACM,8KAIf,SACT,QACA,WACA,SACA,WACA,iBACA,+CAGA,WACA,sBACA,kCACA,gBAAgB,QAAQ,WAAW,SAAS,WAAW;wBAahC;EAlCX,OAAI,MAAA,CAAA,GAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAuBgB,IAvBhB,CAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,CAAA;EAAA,WAAA,CAAA,EAAA,EAgCX,eAhCW,CAgCK,MAhCL,EAgCa,SAhCb,EAgCwB,OAhCxB,EAgCiC,SAhCjC,EAgC4C,SAhC5C,CAAA,EAAA,OAAA,CAAA,EAAA,MAAA,EAAA,SAAA,CAAA,EAkCO,kBAlCP,GAAA,SAAA,EAAA,KAAA,CAAA,EAmCP,MAnCO,EAAA,YAAA,CAAA,EAoCA,SApCA,EAAA,QAAA,CAAA,EAqCL,SArCK,EAAA,MAAA,CAAA,EAsCN,OAtCM,EAAA,gBAAA,CAAA,EAuCI,OAvCJ,CAuCY,0BAvCZ,EAuCwC,eAvCxC,CAAA,EAAA,MAAA,CAAA,EAAA,GAAA,EAAA,EAAA,UAAA,CAAA,EAAA,MAAA,EAAA,eAAA,CAAA,EA0CG,OA1CH,CA0CW,oBA1CX,EA0CiC,SA1CjC,CAAA;EAAA;;;;EAGe,UACb,CAAA,EAAA,MAAA,EAAA;EAAgB,IACV,QAAA,CAAA,CAAA,EA6DR,kBA7DQ,GAAA,SAAA;;AAMxB,KA4DW,cAAA,GA5DX,QAAA,MAAA,GAAA;KA8DI,UAAA,GA7DJ,GAAA,GAAA,MAAA,GAAA,GAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,KAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,MAAA;KAuEI,QAAA,GAtEJ,GAAA,GAAA,MAAA,GAAA,GAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,KAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,MAAA;KAgFI,OAAA,GA/EJ,GAAA,GAAA,MAAA,GAAA,GAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,KAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,MAAA;KAyFI,SAAA,GAxFJ,GAAA,GAAA,MAAA,GAAA,GAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,KAAA,MAAA,EAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,MAAA;KA6GI,WAAA,GA1GJ,GAAA,GAAA,MAAA,GAAA,GAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,KAAA,MAAA,EAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,MAAA;AACA,KA0HW,cAAA,GA1HX,QA2HQ,UA3HR,IA2HsB,QA3HtB,IA2HkC,OA3HlC,IA2H6C,SA3H7C,IA2H0D,WA3H1D,GAAA;AACA,KA4HW,kBAAA,GAAqB,cA5HhC,GA4HiD,cA5HjD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Cron-CqEbBbwH.d.mts","names":[],"sources":["../src/crons/Cron.ts"],"sourcesContent":[],"mappings":";;;;;;;;;cAUa,oBACG,oEACG,gCACF,SAAS,0BACP,kEACM,8KAIf,SACT,QACA,WACA,SACA,WACA,iBACA,+CAGA,WACA,sBACA,kCACA,gBAAgB,QAAQ,WAAW,SAAS,WAAW;wBAahC;EAlCX,OAAI,MAAA,CAAA,GAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAuBgB,IAvBhB,CAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,CAAA;EAAA,WAAA,CAAA,EAAA,EAgCX,eAhCW,CAgCK,MAhCL,EAgCa,SAhCb,EAgCwB,OAhCxB,EAgCiC,SAhCjC,EAgC4C,SAhC5C,CAAA,EAAA,OAAA,CAAA,EAAA,MAAA,EAAA,SAAA,CAAA,EAkCO,kBAlCP,GAAA,SAAA,EAAA,KAAA,CAAA,EAmCP,MAnCO,EAAA,YAAA,CAAA,EAoCA,SApCA,EAAA,QAAA,CAAA,EAqCL,SArCK,EAAA,MAAA,CAAA,EAsCN,OAtCM,EAAA,gBAAA,CAAA,EAuCI,OAvCJ,CAuCY,0BAvCZ,EAuCwC,eAvCxC,CAAA,EAAA,MAAA,CAAA,EAAA,GAAA,EAAA,EAAA,UAAA,CAAA,EAAA,MAAA,EAAA,eAAA,CAAA,EA0CG,OA1CH,CA0CW,oBA1CX,EA0CiC,SA1CjC,CAAA;EAAA;;;;EAGe,UACb,CAAA,EAAA,MAAA,EAAA;EAAgB,IACV,QAAA,CAAA,CAAA,EA6DR,kBA7DQ,GAAA,SAAA;;AAMxB,KA4DW,cAAA,GA5DX,QAAA,MAAA,GAAA;KA8DI,UAAA,GA7DJ,GAAA,GAAA,MAAA,GAAA,GAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,KAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,MAAA;KAuEI,QAAA,GAtEJ,GAAA,GAAA,MAAA,GAAA,GAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,KAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,MAAA;KAgFI,OAAA,GA/EJ,GAAA,GAAA,MAAA,GAAA,GAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,KAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,MAAA;KAyFI,SAAA,GAxFJ,GAAA,GAAA,MAAA,GAAA,GAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,KAAA,MAAA,EAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,MAAA;KA6GI,WAAA,GA1GJ,GAAA,GAAA,MAAA,GAAA,GAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,KAAA,MAAA,EAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,GAAA,MAAA,IAAA,MAAA,EAAA,GAAA,MAAA;AACA,KA0HW,cAAA,GA1HX,QA2HQ,UA3HR,IA2HsB,QA3HtB,IA2HkC,OA3HlC,IA2H6C,SA3H7C,IA2H0D,WA3H1D,GAAA;AACA,KA4HW,kBAAA,GAAqB,cA5HhC,GA4HiD,cA5HjD"}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { FunctionBuilder, FunctionHandler } from "./index-D3zjrwjr.mjs";
|
|
2
|
-
import { Consumable, ServicesOf } from "./construct-interface-g5GM5pwR.mjs";
|
|
3
|
-
import { Cron, ScheduleExpression } from "./Cron-CqEbBbwH.mjs";
|
|
4
|
-
import { Service } from "@geekmidas/services";
|
|
5
|
-
import { EventPublisher } from "@geekmidas/events";
|
|
6
|
-
import { Logger } from "@geekmidas/logger";
|
|
7
|
-
import { ComposableStandardSchema } from "@geekmidas/schema";
|
|
8
|
-
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
9
|
-
|
|
10
|
-
//#region src/crons/CronBuilder.d.ts
|
|
11
|
-
declare class CronBuilder<TInput extends ComposableStandardSchema, TServices extends Service[], TLogger extends Logger = Logger, OutSchema extends StandardSchemaV1 | undefined = undefined, TEventPublisher extends EventPublisher<any> | undefined = undefined, TEventPublisherServiceName extends string = string, TDatabase = undefined, TDatabaseServiceName extends string = string> extends FunctionBuilder<TInput, OutSchema, TServices, TLogger, TEventPublisher, TEventPublisherServiceName, undefined, string, TDatabase, TDatabaseServiceName> {
|
|
12
|
-
private _schedule?;
|
|
13
|
-
constructor();
|
|
14
|
-
memorySize(memorySize: number): this;
|
|
15
|
-
schedule(_expression: ScheduleExpression): CronBuilder<TInput, TServices, TLogger, OutSchema, TEventPublisher, TEventPublisherServiceName, TDatabase, TDatabaseServiceName>;
|
|
16
|
-
input<T extends ComposableStandardSchema>(schema: T): CronBuilder<T, TServices, TLogger, OutSchema, TEventPublisher, TEventPublisherServiceName, TDatabase, TDatabaseServiceName>;
|
|
17
|
-
output<T extends StandardSchemaV1>(schema: T): CronBuilder<TInput, TServices, TLogger, T, TEventPublisher, TEventPublisherServiceName, TDatabase, TDatabaseServiceName>;
|
|
18
|
-
/**
|
|
19
|
-
* Depend on constructs — a database, a bucket, a mail sender, a queue, a
|
|
20
|
-
* topic.
|
|
21
|
-
*
|
|
22
|
-
* It records the edge and dissolves each construct's client into the
|
|
23
|
-
* handler's service record under the construct's own id, so
|
|
24
|
-
* `.dependsOn([uploads])` is what makes `services.uploads` exist and type.
|
|
25
|
-
*
|
|
26
|
-
* Constructs only. A `Service` does not match the shape, which is what keeps
|
|
27
|
-
* env sniffing confined to `.services()` and the explicit lift.
|
|
28
|
-
*/
|
|
29
|
-
dependsOn<const T extends readonly Consumable[]>(constructs: T): CronBuilder<TInput, [...TServices, ...ServicesOf<T>], TLogger, OutSchema, TEventPublisher, TEventPublisherServiceName, TDatabase, TDatabaseServiceName>;
|
|
30
|
-
services<T extends Service[]>(services: T): CronBuilder<TInput, [...TServices, ...T], TLogger, OutSchema, TEventPublisher, TEventPublisherServiceName, TDatabase, TDatabaseServiceName>;
|
|
31
|
-
logger<T extends Logger>(logger: T): CronBuilder<TInput, TServices, T, OutSchema, TEventPublisher, TEventPublisherServiceName, TDatabase, TDatabaseServiceName>;
|
|
32
|
-
publisher<T extends EventPublisher<any>, TName extends string>(publisher: Service<TName, T>): CronBuilder<TInput, TServices, TLogger, OutSchema, T, TName, TDatabase, TDatabaseServiceName>;
|
|
33
|
-
/**
|
|
34
|
-
* Set the database service for this cron job.
|
|
35
|
-
* The database will be available in the handler context as `db`.
|
|
36
|
-
*/
|
|
37
|
-
database<T, TName extends string>(source: Consumable<TName, T> | Service<TName, T>): CronBuilder<TInput, TServices, TLogger, OutSchema, TEventPublisher, TEventPublisherServiceName, T, TName>;
|
|
38
|
-
handle(fn: FunctionHandler<TInput, TServices, TLogger, OutSchema, TDatabase>): Cron<TInput, TServices, TLogger, OutSchema, TEventPublisher, TEventPublisherServiceName, TDatabase, TDatabaseServiceName>;
|
|
39
|
-
}
|
|
40
|
-
//# sourceMappingURL=CronBuilder.d.ts.map
|
|
41
|
-
|
|
42
|
-
//#endregion
|
|
43
|
-
export { CronBuilder };
|
|
44
|
-
//# sourceMappingURL=CronBuilder-Bg-9h2cc.d.mts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CronBuilder-Bg-9h2cc.d.mts","names":[],"sources":["../src/crons/CronBuilder.ts"],"sourcesContent":[],"mappings":"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"}
|