@geekmidas/constructs 0.3.0 → 0.3.1
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/dist/{AWSLambdaFunction-D9RZhm0N.d.mts → AWSLambdaFunction-BdebRMUh.d.mts} +5 -3
- package/dist/AWSLambdaFunction-BdebRMUh.d.mts.map +1 -0
- package/dist/AWSLambdaFunction-C54a1doJ.mjs.map +1 -1
- package/dist/{AWSLambdaFunction-gpqm7UBb.d.cts → AWSLambdaFunction-D0tEOTXQ.d.cts} +5 -3
- package/dist/AWSLambdaFunction-D0tEOTXQ.d.cts.map +1 -0
- package/dist/AWSLambdaFunction-EPGY4s7i.cjs.map +1 -1
- package/dist/{AWSLambdaSubscriberAdaptor-CyFh7MN8.mjs → AWSLambdaSubscriberAdaptor-BLfO612H.mjs} +5 -3
- package/dist/{AWSLambdaSubscriberAdaptor-CyFh7MN8.mjs.map → AWSLambdaSubscriberAdaptor-BLfO612H.mjs.map} +1 -1
- package/dist/{AWSLambdaSubscriberAdaptor-Dum5bkw3.cjs → AWSLambdaSubscriberAdaptor-BNcYYZ-P.cjs} +5 -3
- package/dist/{AWSLambdaSubscriberAdaptor-Dum5bkw3.cjs.map → AWSLambdaSubscriberAdaptor-BNcYYZ-P.cjs.map} +1 -1
- package/dist/{AWSLambdaSubscriberAdaptor-C0aZBU64.d.mts → AWSLambdaSubscriberAdaptor-DrFAvHOp.d.mts} +4 -2
- package/dist/AWSLambdaSubscriberAdaptor-DrFAvHOp.d.mts.map +1 -0
- package/dist/{AWSLambdaSubscriberAdaptor-DT8icDRf.d.cts → AWSLambdaSubscriberAdaptor-Dx-Ks1Jp.d.cts} +4 -2
- package/dist/AWSLambdaSubscriberAdaptor-Dx-Ks1Jp.d.cts.map +1 -0
- package/dist/{AmazonApiGatewayEndpointAdaptor-CbJqLU6I.d.cts → AmazonApiGatewayEndpointAdaptor-DLqnYQ4E.d.cts} +5 -3
- package/dist/AmazonApiGatewayEndpointAdaptor-DLqnYQ4E.d.cts.map +1 -0
- package/dist/{AmazonApiGatewayEndpointAdaptor-DC3N7zY_.d.mts → AmazonApiGatewayEndpointAdaptor-qlKXuZxy.d.mts} +5 -3
- package/dist/AmazonApiGatewayEndpointAdaptor-qlKXuZxy.d.mts.map +1 -0
- package/dist/{AmazonApiGatewayV1EndpointAdaptor-BbkfC1dk.mjs → AmazonApiGatewayV1EndpointAdaptor-CShQI8Gk.mjs} +2 -2
- package/dist/AmazonApiGatewayV1EndpointAdaptor-CShQI8Gk.mjs.map +1 -0
- package/dist/{AmazonApiGatewayV1EndpointAdaptor-BiNzaAxD.cjs → AmazonApiGatewayV1EndpointAdaptor-Ccl8B8kG.cjs} +2 -2
- package/dist/AmazonApiGatewayV1EndpointAdaptor-Ccl8B8kG.cjs.map +1 -0
- package/dist/{AmazonApiGatewayV1EndpointAdaptor-BVxgQ-7J.d.mts → AmazonApiGatewayV1EndpointAdaptor-DyUaJIhB.d.cts} +8 -6
- package/dist/AmazonApiGatewayV1EndpointAdaptor-DyUaJIhB.d.cts.map +1 -0
- package/dist/{AmazonApiGatewayV1EndpointAdaptor-CVwJ5k16.d.cts → AmazonApiGatewayV1EndpointAdaptor-MRUxs3Xi.d.mts} +8 -6
- package/dist/AmazonApiGatewayV1EndpointAdaptor-MRUxs3Xi.d.mts.map +1 -0
- package/dist/{AmazonApiGatewayV2EndpointAdaptor-DZclCykB.cjs → AmazonApiGatewayV2EndpointAdaptor-D8-0Aab4.cjs} +2 -2
- package/dist/AmazonApiGatewayV2EndpointAdaptor-D8-0Aab4.cjs.map +1 -0
- package/dist/{AmazonApiGatewayV2EndpointAdaptor-1oBZdQH3.d.cts → AmazonApiGatewayV2EndpointAdaptor-M1-w0U5R.d.cts} +6 -4
- package/dist/AmazonApiGatewayV2EndpointAdaptor-M1-w0U5R.d.cts.map +1 -0
- package/dist/{AmazonApiGatewayV2EndpointAdaptor-C3H8Hpv7.d.mts → AmazonApiGatewayV2EndpointAdaptor-fuLM6M9k.d.mts} +6 -4
- package/dist/AmazonApiGatewayV2EndpointAdaptor-fuLM6M9k.d.mts.map +1 -0
- package/dist/{AmazonApiGatewayV2EndpointAdaptor-jRrQrIdm.mjs → AmazonApiGatewayV2EndpointAdaptor-lCRzGE4q.mjs} +2 -2
- package/dist/AmazonApiGatewayV2EndpointAdaptor-lCRzGE4q.mjs.map +1 -0
- package/dist/{Authorizer-CpSUMTIs.d.cts → Authorizer-B-btowNd.d.cts} +2 -1
- package/dist/Authorizer-B-btowNd.d.cts.map +1 -0
- package/dist/{Authorizer-Cpx59w_q.d.mts → Authorizer-gWxYsGEp.d.mts} +2 -1
- package/dist/Authorizer-gWxYsGEp.d.mts.map +1 -0
- package/dist/{BaseFunctionBuilder-CoV7J45W.d.mts → BaseFunctionBuilder-BAtutR6q.d.cts} +5 -3
- package/dist/BaseFunctionBuilder-BAtutR6q.d.cts.map +1 -0
- package/dist/{BaseFunctionBuilder-DaQA0uKE.d.cts → BaseFunctionBuilder-DRY419e7.d.mts} +5 -3
- package/dist/BaseFunctionBuilder-DRY419e7.d.mts.map +1 -0
- package/dist/{Construct-Dkd8Kvc9.d.cts → Construct-C4rPE67v.d.cts} +8 -7
- package/dist/Construct-C4rPE67v.d.cts.map +1 -0
- package/dist/{Construct-jBKqb-Zi.d.mts → Construct-XrijZFFh.d.mts} +8 -7
- package/dist/Construct-XrijZFFh.d.mts.map +1 -0
- package/dist/Construct.d.cts +1 -1
- package/dist/Construct.d.mts +1 -1
- package/dist/{Cron-7VPR2cNR.d.cts → Cron-bDLcTvV5.d.cts} +4 -4
- package/dist/Cron-bDLcTvV5.d.cts.map +1 -0
- package/dist/{Cron-JZkp_fHy.d.mts → Cron-cdjlSKNp.d.mts} +4 -4
- package/dist/Cron-cdjlSKNp.d.mts.map +1 -0
- package/dist/{CronBuilder-290th4zF.d.cts → CronBuilder-BC4m5-p1.d.mts} +7 -5
- package/dist/CronBuilder-BC4m5-p1.d.mts.map +1 -0
- package/dist/CronBuilder-CcxKRtVP.cjs.map +1 -1
- package/dist/{CronBuilder-BmFDO0Dm.d.mts → CronBuilder-DKVXyE0Q.d.cts} +7 -5
- package/dist/CronBuilder-DKVXyE0Q.d.cts.map +1 -0
- package/dist/CronBuilder-d2jh-IB2.mjs.map +1 -1
- package/dist/{Endpoint-C5djXyae.d.mts → Endpoint-BPv9_-m_.d.cts} +9 -7
- package/dist/Endpoint-BPv9_-m_.d.cts.map +1 -0
- package/dist/{Endpoint-CC2RGjkl.d.cts → Endpoint-BdwG75G_.d.mts} +9 -7
- package/dist/Endpoint-BdwG75G_.d.mts.map +1 -0
- package/dist/{EndpointBuilder-CD8LkBda.d.mts → EndpointBuilder-B3az942t.d.mts} +7 -5
- package/dist/EndpointBuilder-B3az942t.d.mts.map +1 -0
- package/dist/EndpointBuilder-Cgj1P_ra.cjs.map +1 -1
- package/dist/{EndpointBuilder-vXk6eIJk.d.cts → EndpointBuilder-DIy_m1bu.d.cts} +7 -5
- package/dist/EndpointBuilder-DIy_m1bu.d.cts.map +1 -0
- package/dist/EndpointBuilder-DnCB1h1j.mjs.map +1 -1
- package/dist/{EndpointFactory-jAkQxWRj.d.mts → EndpointFactory-C-0nE6Jg.d.mts} +6 -4
- package/dist/EndpointFactory-C-0nE6Jg.d.mts.map +1 -0
- package/dist/{EndpointFactory-D8I4NNCo.d.cts → EndpointFactory-CyPbm3AD.d.cts} +6 -4
- package/dist/EndpointFactory-CyPbm3AD.d.cts.map +1 -0
- package/dist/{Function-DHD1V9QW.d.cts → Function-Cf7f_kCz.d.cts} +5 -5
- package/dist/Function-Cf7f_kCz.d.cts.map +1 -0
- package/dist/{Function-Vh1t-Qjj.d.mts → Function-DN2G6OT5.d.mts} +5 -5
- package/dist/Function-DN2G6OT5.d.mts.map +1 -0
- package/dist/{FunctionBuilder-3jsoFffg.d.mts → FunctionBuilder-CJBzzXL3.d.cts} +7 -5
- package/dist/FunctionBuilder-CJBzzXL3.d.cts.map +1 -0
- package/dist/FunctionBuilder-CrDYgfiI.mjs.map +1 -1
- package/dist/{FunctionBuilder-FV6r3I7X.d.cts → FunctionBuilder-Cxx8D2na.d.mts} +7 -5
- package/dist/FunctionBuilder-Cxx8D2na.d.mts.map +1 -0
- package/dist/FunctionBuilder-DswJ-9sD.cjs.map +1 -1
- package/dist/{FunctionExecutionWrapper-CI3CaoCo.d.mts → FunctionExecutionWrapper-DF260Aaj.d.mts} +4 -2
- package/dist/FunctionExecutionWrapper-DF260Aaj.d.mts.map +1 -0
- package/dist/{FunctionExecutionWrapper-DYt3C8b9.d.cts → FunctionExecutionWrapper-Qy8bmgFR.d.cts} +4 -2
- package/dist/FunctionExecutionWrapper-Qy8bmgFR.d.cts.map +1 -0
- package/dist/{HonoEndpointAdaptor-Bx9Y1bCZ.d.cts → HonoEndpointAdaptor-Bqm6SEuP.d.cts} +7 -5
- package/dist/HonoEndpointAdaptor-Bqm6SEuP.d.cts.map +1 -0
- package/dist/{HonoEndpointAdaptor-e6l9eVDU.cjs → HonoEndpointAdaptor-CQe2FqMR.cjs} +2 -2
- package/dist/{HonoEndpointAdaptor-e6l9eVDU.cjs.map → HonoEndpointAdaptor-CQe2FqMR.cjs.map} +1 -1
- package/dist/{HonoEndpointAdaptor-kb1ByjUL.d.mts → HonoEndpointAdaptor-CRe-ij5f.d.mts} +7 -5
- package/dist/HonoEndpointAdaptor-CRe-ij5f.d.mts.map +1 -0
- package/dist/{HonoEndpointAdaptor-NLlQk5iU.mjs → HonoEndpointAdaptor-Ce-2HBxn.mjs} +2 -2
- package/dist/{HonoEndpointAdaptor-NLlQk5iU.mjs.map → HonoEndpointAdaptor-Ce-2HBxn.mjs.map} +1 -1
- package/dist/Subscriber-BiHjVXtM.cjs.map +1 -1
- package/dist/Subscriber-BmPf9GFb.mjs.map +1 -1
- package/dist/{Subscriber-DMSzvO_J.d.cts → Subscriber-COYMSevD.d.cts} +6 -6
- package/dist/Subscriber-COYMSevD.d.cts.map +1 -0
- package/dist/{Subscriber-aNr1qkxR.d.mts → Subscriber-ikctpU3I.d.mts} +6 -6
- package/dist/Subscriber-ikctpU3I.d.mts.map +1 -0
- package/dist/{SubscriberBuilder-BxJM3Hz_.d.cts → SubscriberBuilder-D_9zzllj.d.mts} +5 -3
- package/dist/SubscriberBuilder-D_9zzllj.d.mts.map +1 -0
- package/dist/{SubscriberBuilder-CWS4tdbp.d.mts → SubscriberBuilder-ivHAGIVi.d.cts} +5 -3
- package/dist/SubscriberBuilder-ivHAGIVi.d.cts.map +1 -0
- package/dist/{TestEndpointAdaptor-oq5mfglM.mjs → TestEndpointAdaptor-BXTofAKc.mjs} +16 -1
- package/dist/TestEndpointAdaptor-BXTofAKc.mjs.map +1 -0
- package/dist/{TestEndpointAdaptor-5-unBV8O.d.mts → TestEndpointAdaptor-C10xBI--.d.cts} +4 -4
- package/dist/TestEndpointAdaptor-C10xBI--.d.cts.map +1 -0
- package/dist/{TestEndpointAdaptor-opEisC30.cjs → TestEndpointAdaptor-D9IwhIYg.cjs} +16 -1
- package/dist/TestEndpointAdaptor-D9IwhIYg.cjs.map +1 -0
- package/dist/{TestEndpointAdaptor-Bm0UjDtV.d.cts → TestEndpointAdaptor-DB7bREhS.d.mts} +4 -4
- package/dist/TestEndpointAdaptor-DB7bREhS.d.mts.map +1 -0
- package/dist/adaptors/aws.cjs +4 -4
- package/dist/adaptors/aws.d.cts +15 -15
- package/dist/adaptors/aws.d.mts +15 -15
- package/dist/adaptors/aws.mjs +4 -4
- package/dist/adaptors/hono.cjs +2 -2
- package/dist/adaptors/hono.d.cts +9 -9
- package/dist/adaptors/hono.d.mts +9 -9
- package/dist/adaptors/hono.mjs +2 -2
- package/dist/adaptors/testing.cjs +1 -1
- package/dist/adaptors/testing.d.cts +9 -9
- package/dist/adaptors/testing.d.mts +9 -9
- package/dist/adaptors/testing.mjs +1 -1
- package/dist/crons/Cron.d.cts +6 -6
- package/dist/crons/Cron.d.mts +6 -6
- package/dist/crons/CronBuilder.d.cts +7 -7
- package/dist/crons/CronBuilder.d.mts +7 -7
- package/dist/crons/index.d.cts +9 -7
- package/dist/crons/index.d.cts.map +1 -0
- package/dist/crons/index.d.mts +9 -7
- package/dist/crons/index.d.mts.map +1 -0
- package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.d.cts +9 -9
- package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.d.mts +9 -9
- package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.cjs +2 -2
- package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.d.cts +10 -10
- package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.d.mts +10 -10
- package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.mjs +2 -2
- package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.cjs +2 -2
- package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.d.cts +10 -10
- package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.d.mts +10 -10
- package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.mjs +2 -2
- package/dist/endpoints/Authorizer.d.cts +1 -1
- package/dist/endpoints/Authorizer.d.mts +1 -1
- package/dist/endpoints/Endpoint.d.cts +8 -8
- package/dist/endpoints/Endpoint.d.mts +8 -8
- package/dist/endpoints/EndpointBuilder.d.cts +9 -9
- package/dist/endpoints/EndpointBuilder.d.mts +9 -9
- package/dist/endpoints/EndpointFactory.d.cts +10 -10
- package/dist/endpoints/EndpointFactory.d.mts +10 -10
- package/dist/endpoints/HonoEndpointAdaptor.cjs +2 -2
- package/dist/endpoints/HonoEndpointAdaptor.d.cts +9 -9
- package/dist/endpoints/HonoEndpointAdaptor.d.mts +9 -9
- package/dist/endpoints/HonoEndpointAdaptor.mjs +2 -2
- package/dist/endpoints/TestEndpointAdaptor.cjs +1 -1
- package/dist/endpoints/TestEndpointAdaptor.d.cts +9 -9
- package/dist/endpoints/TestEndpointAdaptor.d.mts +9 -9
- package/dist/endpoints/TestEndpointAdaptor.mjs +1 -1
- package/dist/endpoints/audit.d.cts +8 -8
- package/dist/endpoints/audit.d.mts +8 -8
- package/dist/endpoints/helpers.d.cts +9 -8
- package/dist/endpoints/helpers.d.cts.map +1 -0
- package/dist/endpoints/helpers.d.mts +9 -8
- package/dist/endpoints/helpers.d.mts.map +1 -0
- package/dist/endpoints/index.d.cts +14 -12
- package/dist/endpoints/index.d.cts.map +1 -0
- package/dist/endpoints/index.d.mts +12 -10
- package/dist/endpoints/index.d.mts.map +1 -0
- package/dist/endpoints/parseHonoQuery.cjs +1 -1
- package/dist/endpoints/parseHonoQuery.d.cts +2 -0
- package/dist/endpoints/parseHonoQuery.d.cts.map +1 -0
- package/dist/endpoints/parseHonoQuery.d.mts +2 -0
- package/dist/endpoints/parseHonoQuery.d.mts.map +1 -0
- package/dist/endpoints/parseHonoQuery.mjs +1 -1
- package/dist/endpoints/parseQueryParams.cjs +1 -1
- package/dist/endpoints/parseQueryParams.d.cts +1 -0
- package/dist/endpoints/parseQueryParams.d.cts.map +1 -0
- package/dist/endpoints/parseQueryParams.d.mts +1 -0
- package/dist/endpoints/parseQueryParams.d.mts.map +1 -0
- package/dist/endpoints/parseQueryParams.mjs +1 -1
- package/dist/endpoints/processAudits.d.cts +10 -8
- package/dist/endpoints/processAudits.d.cts.map +1 -0
- package/dist/endpoints/processAudits.d.mts +10 -8
- package/dist/endpoints/processAudits.d.mts.map +1 -0
- package/dist/endpoints/rls.d.cts +8 -8
- package/dist/endpoints/rls.d.mts +8 -8
- package/dist/functions/AWSLambdaFunction.d.cts +4 -4
- package/dist/functions/AWSLambdaFunction.d.mts +4 -4
- package/dist/functions/BaseFunctionBuilder.d.cts +2 -2
- package/dist/functions/BaseFunctionBuilder.d.mts +2 -2
- package/dist/functions/Function.d.cts +2 -2
- package/dist/functions/Function.d.mts +2 -2
- package/dist/functions/FunctionBuilder.d.cts +4 -4
- package/dist/functions/FunctionBuilder.d.mts +4 -4
- package/dist/functions/FunctionExecutionWrapper.d.cts +3 -3
- package/dist/functions/FunctionExecutionWrapper.d.mts +3 -3
- package/dist/functions/TestFunctionAdaptor.d.cts +4 -2
- package/dist/functions/TestFunctionAdaptor.d.cts.map +1 -0
- package/dist/functions/TestFunctionAdaptor.d.mts +4 -2
- package/dist/functions/TestFunctionAdaptor.d.mts.map +1 -0
- package/dist/functions/index.d.cts +5 -5
- package/dist/functions/index.d.mts +5 -5
- package/dist/{index-CFyaRrck.d.mts → index-BWzGIj06.d.mts} +4 -2
- package/dist/index-BWzGIj06.d.mts.map +1 -0
- package/dist/index-SI4V0XwK.d.cts +12 -0
- package/dist/index-SI4V0XwK.d.cts.map +1 -0
- package/dist/index.d.cts +2 -2
- package/dist/index.d.mts +2 -2
- package/dist/{parseHonoQuery-CT8Cvin-.cjs → parseHonoQuery-CZC5_97v.cjs} +3 -1
- package/dist/parseHonoQuery-CZC5_97v.cjs.map +1 -0
- package/dist/{parseHonoQuery-CwFKw2ua.mjs → parseHonoQuery-DDgIkTO4.mjs} +3 -1
- package/dist/parseHonoQuery-DDgIkTO4.mjs.map +1 -0
- package/dist/{parseQueryParams-CwvXXwkW.cjs → parseQueryParams-BSNkjmZ9.cjs} +3 -1
- package/dist/parseQueryParams-BSNkjmZ9.cjs.map +1 -0
- package/dist/{parseQueryParams-CHINupbZ.mjs → parseQueryParams-UMTRnRrW.mjs} +3 -1
- package/dist/parseQueryParams-UMTRnRrW.mjs.map +1 -0
- package/dist/publisher.d.cts +4 -2
- package/dist/publisher.d.cts.map +1 -0
- package/dist/publisher.d.mts +4 -2
- package/dist/publisher.d.mts.map +1 -0
- package/dist/subscribers/AWSLambdaSubscriberAdaptor.cjs +1 -1
- package/dist/subscribers/AWSLambdaSubscriberAdaptor.d.cts +3 -3
- package/dist/subscribers/AWSLambdaSubscriberAdaptor.d.mts +3 -3
- package/dist/subscribers/AWSLambdaSubscriberAdaptor.mjs +1 -1
- package/dist/subscribers/Subscriber.d.cts +2 -2
- package/dist/subscribers/Subscriber.d.mts +2 -2
- package/dist/subscribers/SubscriberBuilder.d.cts +3 -3
- package/dist/subscribers/SubscriberBuilder.d.mts +3 -3
- package/dist/subscribers/index.d.cts +5 -3
- package/dist/subscribers/index.d.cts.map +1 -0
- package/dist/subscribers/index.d.mts +5 -3
- package/dist/subscribers/index.d.mts.map +1 -0
- package/dist/{types-Bp9ysFXd.d.cts → types-B5H3piDg.d.cts} +3 -1
- package/dist/types-B5H3piDg.d.cts.map +1 -0
- package/dist/{types-CScirkHt.d.mts → types-DdIlpxAd.d.mts} +3 -1
- package/dist/types-DdIlpxAd.d.mts.map +1 -0
- package/dist/types.d.cts +1 -1
- package/dist/types.d.mts +1 -1
- package/package.json +7 -7
- package/src/crons/CronBuilder.ts +8 -8
- package/src/endpoints/AmazonApiGatewayV1EndpointAdaptor.ts +4 -4
- package/src/endpoints/AmazonApiGatewayV2EndpointAdaptor.ts +4 -4
- package/src/endpoints/EndpointBuilder.ts +4 -4
- package/src/endpoints/TestEndpointAdaptor.ts +18 -0
- package/src/endpoints/parseHonoQuery.ts +2 -0
- package/src/endpoints/parseQueryParams.ts +2 -0
- package/src/functions/AWSLambdaFunction.ts +1 -1
- package/src/functions/FunctionBuilder.ts +5 -5
- package/src/subscribers/AWSLambdaSubscriberAdaptor.ts +8 -4
- package/src/subscribers/Subscriber.ts +5 -5
- package/tsconfig.json +9 -0
- package/dist/AmazonApiGatewayV1EndpointAdaptor-BbkfC1dk.mjs.map +0 -1
- package/dist/AmazonApiGatewayV1EndpointAdaptor-BiNzaAxD.cjs.map +0 -1
- package/dist/AmazonApiGatewayV2EndpointAdaptor-DZclCykB.cjs.map +0 -1
- package/dist/AmazonApiGatewayV2EndpointAdaptor-jRrQrIdm.mjs.map +0 -1
- package/dist/TestEndpointAdaptor-opEisC30.cjs.map +0 -1
- package/dist/TestEndpointAdaptor-oq5mfglM.mjs.map +0 -1
- package/dist/index-CqH4_Ieb.d.cts +0 -10
- package/dist/parseHonoQuery-CT8Cvin-.cjs.map +0 -1
- package/dist/parseHonoQuery-CwFKw2ua.mjs.map +0 -1
- package/dist/parseQueryParams-CHINupbZ.mjs.map +0 -1
- package/dist/parseQueryParams-CwvXXwkW.cjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseQueryParams-BSNkjmZ9.cjs","names":["queryParams: Record<string, string | string[] | undefined> | null","result: Record<string, any>"],"sources":["../src/endpoints/parseQueryParams.ts"],"sourcesContent":["/**\n * Parse query parameters from a flat object into a nested structure\n * Handles arrays (multiple values with same key) and objects (dot notation)\n *\n * @example\n * parseQueryParams({ 'tags': ['a', 'b'], 'filter.name': 'john' })\n * // Returns: { tags: ['a', 'b'], filter: { name: 'john' } }\n */\nexport function parseQueryParams(\n queryParams: Record<string, string | string[] | undefined> | null,\n): Record<string, any> {\n if (!queryParams) {\n return {};\n }\n\n const result: Record<string, any> = {};\n\n for (const [key, value] of Object.entries(queryParams)) {\n if (value === undefined) {\n continue;\n }\n\n // Check if the key contains dot notation\n if (key.includes('.')) {\n const parts = key.split('.');\n let current = result;\n\n // Navigate/create the nested structure\n for (let i = 0; i < parts.length - 1; i++) {\n const part = parts[i];\n if (!part) continue;\n if (\n !current[part] ||\n typeof current[part] !== 'object' ||\n Array.isArray(current[part])\n ) {\n current[part] = {};\n }\n current = current[part];\n }\n\n // Set the final value\n const lastPart = parts[parts.length - 1];\n if (!lastPart) continue;\n current[lastPart] = value;\n } else {\n // Simple key, just assign the value\n result[key] = value;\n }\n }\n\n return result;\n}\n"],"mappings":";;;;;;;;;;AAQA,SAAgB,iBACdA,aACqB;AACrB,MAAK,YACH,QAAO,CAAE;CAGX,MAAMC,SAA8B,CAAE;AAEtC,MAAK,MAAM,CAAC,KAAK,MAAM,IAAI,OAAO,QAAQ,YAAY,EAAE;AACtD,MAAI,iBACF;AAIF,MAAI,IAAI,SAAS,IAAI,EAAE;GACrB,MAAM,QAAQ,IAAI,MAAM,IAAI;GAC5B,IAAI,UAAU;AAGd,QAAK,IAAI,IAAI,GAAG,IAAI,MAAM,SAAS,GAAG,KAAK;IACzC,MAAM,OAAO,MAAM;AACnB,SAAK,KAAM;AACX,SACG,QAAQ,gBACF,QAAQ,UAAU,YACzB,MAAM,QAAQ,QAAQ,MAAM,CAE5B,SAAQ,QAAQ,CAAE;AAEpB,cAAU,QAAQ;GACnB;GAGD,MAAM,WAAW,MAAM,MAAM,SAAS;AACtC,QAAK,SAAU;AACf,WAAQ,YAAY;EACrB,MAEC,QAAO,OAAO;CAEjB;AAED,QAAO;AACR"}
|
|
@@ -17,10 +17,12 @@ function parseQueryParams(queryParams) {
|
|
|
17
17
|
let current = result;
|
|
18
18
|
for (let i = 0; i < parts.length - 1; i++) {
|
|
19
19
|
const part = parts[i];
|
|
20
|
+
if (!part) continue;
|
|
20
21
|
if (!current[part] || typeof current[part] !== "object" || Array.isArray(current[part])) current[part] = {};
|
|
21
22
|
current = current[part];
|
|
22
23
|
}
|
|
23
24
|
const lastPart = parts[parts.length - 1];
|
|
25
|
+
if (!lastPart) continue;
|
|
24
26
|
current[lastPart] = value;
|
|
25
27
|
} else result[key] = value;
|
|
26
28
|
}
|
|
@@ -29,4 +31,4 @@ function parseQueryParams(queryParams) {
|
|
|
29
31
|
|
|
30
32
|
//#endregion
|
|
31
33
|
export { parseQueryParams };
|
|
32
|
-
//# sourceMappingURL=parseQueryParams-
|
|
34
|
+
//# sourceMappingURL=parseQueryParams-UMTRnRrW.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseQueryParams-UMTRnRrW.mjs","names":["queryParams: Record<string, string | string[] | undefined> | null","result: Record<string, any>"],"sources":["../src/endpoints/parseQueryParams.ts"],"sourcesContent":["/**\n * Parse query parameters from a flat object into a nested structure\n * Handles arrays (multiple values with same key) and objects (dot notation)\n *\n * @example\n * parseQueryParams({ 'tags': ['a', 'b'], 'filter.name': 'john' })\n * // Returns: { tags: ['a', 'b'], filter: { name: 'john' } }\n */\nexport function parseQueryParams(\n queryParams: Record<string, string | string[] | undefined> | null,\n): Record<string, any> {\n if (!queryParams) {\n return {};\n }\n\n const result: Record<string, any> = {};\n\n for (const [key, value] of Object.entries(queryParams)) {\n if (value === undefined) {\n continue;\n }\n\n // Check if the key contains dot notation\n if (key.includes('.')) {\n const parts = key.split('.');\n let current = result;\n\n // Navigate/create the nested structure\n for (let i = 0; i < parts.length - 1; i++) {\n const part = parts[i];\n if (!part) continue;\n if (\n !current[part] ||\n typeof current[part] !== 'object' ||\n Array.isArray(current[part])\n ) {\n current[part] = {};\n }\n current = current[part];\n }\n\n // Set the final value\n const lastPart = parts[parts.length - 1];\n if (!lastPart) continue;\n current[lastPart] = value;\n } else {\n // Simple key, just assign the value\n result[key] = value;\n }\n }\n\n return result;\n}\n"],"mappings":";;;;;;;;;AAQA,SAAgB,iBACdA,aACqB;AACrB,MAAK,YACH,QAAO,CAAE;CAGX,MAAMC,SAA8B,CAAE;AAEtC,MAAK,MAAM,CAAC,KAAK,MAAM,IAAI,OAAO,QAAQ,YAAY,EAAE;AACtD,MAAI,iBACF;AAIF,MAAI,IAAI,SAAS,IAAI,EAAE;GACrB,MAAM,QAAQ,IAAI,MAAM,IAAI;GAC5B,IAAI,UAAU;AAGd,QAAK,IAAI,IAAI,GAAG,IAAI,MAAM,SAAS,GAAG,KAAK;IACzC,MAAM,OAAO,MAAM;AACnB,SAAK,KAAM;AACX,SACG,QAAQ,gBACF,QAAQ,UAAU,YACzB,MAAM,QAAQ,QAAQ,MAAM,CAE5B,SAAQ,QAAQ,CAAE;AAEpB,cAAU,QAAQ;GACnB;GAGD,MAAM,WAAW,MAAM,MAAM,SAAS;AACtC,QAAK,SAAU;AACf,WAAQ,YAAY;EACrB,MAEC,QAAO,OAAO;CAEjB;AAED,QAAO;AACR"}
|
package/dist/publisher.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Construct } from "./Construct-
|
|
1
|
+
import { Construct } from "./Construct-C4rPE67v.cjs";
|
|
2
2
|
import { AuditStorage } from "@geekmidas/audit";
|
|
3
3
|
import { EventPublisher, MappedEvent } from "@geekmidas/events";
|
|
4
4
|
import { Logger } from "@geekmidas/logger";
|
|
@@ -7,8 +7,10 @@ import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
|
7
7
|
import { InferStandardSchema } from "@geekmidas/schema";
|
|
8
8
|
|
|
9
9
|
//#region src/publisher.d.ts
|
|
10
|
-
declare function publishEvents<T extends EventPublisher<any> | undefined, OutSchema extends StandardSchemaV1 | undefined = undefined, TServiceName extends string = string, TPublisherService extends Service<TServiceName, T> | undefined = undefined>(logger: Logger, serviceDiscovery: ServiceDiscovery<any, any>, ev: MappedEvent<T, OutSchema>[], response: InferStandardSchema<OutSchema>, publisherService: TPublisherService): Promise<void>;
|
|
10
|
+
declare function publishEvents<T extends EventPublisher<any> | undefined, OutSchema extends StandardSchemaV1 | undefined = undefined, TServiceName extends string = string, TPublisherService extends Service<TServiceName, T> | undefined = undefined>(logger: Logger, serviceDiscovery: ServiceDiscovery<any, any>, ev: MappedEvent<T, OutSchema>[] | undefined, response: InferStandardSchema<OutSchema>, publisherService: TPublisherService): Promise<void>;
|
|
11
11
|
declare function publishConstructEvents<T extends EventPublisher<any> | undefined, OutSchema extends StandardSchemaV1 | undefined = undefined, TServiceName extends string = string, TServices extends Service[] = [], TAuditStorageServiceName extends string = string, TAuditStorage extends AuditStorage | undefined = undefined>(construct: Construct<Logger, TServiceName, T, OutSchema, TServices, TAuditStorageServiceName, TAuditStorage>, response: InferStandardSchema<OutSchema>, serviceDiscovery: ServiceDiscovery<any, any>, logger?: Logger): Promise<void>;
|
|
12
|
+
//# sourceMappingURL=publisher.d.ts.map
|
|
13
|
+
|
|
12
14
|
//#endregion
|
|
13
15
|
export { publishConstructEvents, publishEvents };
|
|
14
16
|
//# sourceMappingURL=publisher.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publisher.d.cts","names":[],"sources":["../src/publisher.ts"],"sourcesContent":[],"mappings":";;;;;;;;;iBASsB,wBACV,mDACQ,0GAEQ,QAAQ,cAAc,oCAExC,0BACU,gCACd,YAAY,GAAG,oCACT,oBAAoB,8BACZ,oBAAiB;iBA8Cf,iCACV,mDACQ,kGAEA,wFAEI,iDAEX,UACT,QACA,cACA,GACA,WACA,WACA,0BACA,0BAEQ,oBAAoB,8BACZ,qCACV,SAAyB;AA3EnC"}
|
package/dist/publisher.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Construct } from "./Construct-
|
|
1
|
+
import { Construct } from "./Construct-XrijZFFh.mjs";
|
|
2
2
|
import { Service, ServiceDiscovery } from "@geekmidas/services";
|
|
3
3
|
import { AuditStorage } from "@geekmidas/audit";
|
|
4
4
|
import { EventPublisher, MappedEvent } from "@geekmidas/events";
|
|
@@ -7,8 +7,10 @@ import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
|
7
7
|
import { InferStandardSchema } from "@geekmidas/schema";
|
|
8
8
|
|
|
9
9
|
//#region src/publisher.d.ts
|
|
10
|
-
declare function publishEvents<T extends EventPublisher<any> | undefined, OutSchema extends StandardSchemaV1 | undefined = undefined, TServiceName extends string = string, TPublisherService extends Service<TServiceName, T> | undefined = undefined>(logger: Logger, serviceDiscovery: ServiceDiscovery<any, any>, ev: MappedEvent<T, OutSchema>[], response: InferStandardSchema<OutSchema>, publisherService: TPublisherService): Promise<void>;
|
|
10
|
+
declare function publishEvents<T extends EventPublisher<any> | undefined, OutSchema extends StandardSchemaV1 | undefined = undefined, TServiceName extends string = string, TPublisherService extends Service<TServiceName, T> | undefined = undefined>(logger: Logger, serviceDiscovery: ServiceDiscovery<any, any>, ev: MappedEvent<T, OutSchema>[] | undefined, response: InferStandardSchema<OutSchema>, publisherService: TPublisherService): Promise<void>;
|
|
11
11
|
declare function publishConstructEvents<T extends EventPublisher<any> | undefined, OutSchema extends StandardSchemaV1 | undefined = undefined, TServiceName extends string = string, TServices extends Service[] = [], TAuditStorageServiceName extends string = string, TAuditStorage extends AuditStorage | undefined = undefined>(construct: Construct<Logger, TServiceName, T, OutSchema, TServices, TAuditStorageServiceName, TAuditStorage>, response: InferStandardSchema<OutSchema>, serviceDiscovery: ServiceDiscovery<any, any>, logger?: Logger): Promise<void>;
|
|
12
|
+
//# sourceMappingURL=publisher.d.ts.map
|
|
13
|
+
|
|
12
14
|
//#endregion
|
|
13
15
|
export { publishConstructEvents, publishEvents };
|
|
14
16
|
//# sourceMappingURL=publisher.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publisher.d.mts","names":[],"sources":["../src/publisher.ts"],"sourcesContent":[],"mappings":";;;;;;;;;iBASsB,wBACV,mDACQ,0GAEQ,QAAQ,cAAc,oCAExC,0BACU,gCACd,YAAY,GAAG,oCACT,oBAAoB,8BACZ,oBAAiB;iBA8Cf,iCACV,mDACQ,kGAEA,wFAEI,iDAEX,UACT,QACA,cACA,GACA,WACA,WACA,0BACA,0BAEQ,oBAAoB,8BACZ,qCACV,SAAyB;AA3EnC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
const require_AWSLambdaSubscriberAdaptor = require('../AWSLambdaSubscriberAdaptor-
|
|
1
|
+
const require_AWSLambdaSubscriberAdaptor = require('../AWSLambdaSubscriberAdaptor-BNcYYZ-P.cjs');
|
|
2
2
|
|
|
3
3
|
exports.AWSLambdaSubscriber = require_AWSLambdaSubscriberAdaptor.AWSLambdaSubscriber;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../Construct-
|
|
2
|
-
import "../Subscriber-
|
|
3
|
-
import { AWSLambdaHandler, AWSLambdaSubscriber } from "../AWSLambdaSubscriberAdaptor-
|
|
1
|
+
import "../Construct-C4rPE67v.cjs";
|
|
2
|
+
import "../Subscriber-COYMSevD.cjs";
|
|
3
|
+
import { AWSLambdaHandler, AWSLambdaSubscriber } from "../AWSLambdaSubscriberAdaptor-Dx-Ks1Jp.cjs";
|
|
4
4
|
export { AWSLambdaHandler, AWSLambdaSubscriber };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../Construct-
|
|
2
|
-
import "../Subscriber-
|
|
3
|
-
import { AWSLambdaHandler, AWSLambdaSubscriber } from "../AWSLambdaSubscriberAdaptor-
|
|
1
|
+
import "../Construct-XrijZFFh.mjs";
|
|
2
|
+
import "../Subscriber-ikctpU3I.mjs";
|
|
3
|
+
import { AWSLambdaHandler, AWSLambdaSubscriber } from "../AWSLambdaSubscriberAdaptor-DrFAvHOp.mjs";
|
|
4
4
|
export { AWSLambdaHandler, AWSLambdaSubscriber };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import "../Construct-
|
|
2
|
-
import { Subscriber, SubscriberContext, SubscriberHandler } from "../Subscriber-
|
|
1
|
+
import "../Construct-C4rPE67v.cjs";
|
|
2
|
+
import { Subscriber, SubscriberContext, SubscriberHandler } from "../Subscriber-COYMSevD.cjs";
|
|
3
3
|
export { Subscriber, SubscriberContext, SubscriberHandler };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import "../Construct-
|
|
2
|
-
import { Subscriber, SubscriberContext, SubscriberHandler } from "../Subscriber-
|
|
1
|
+
import "../Construct-XrijZFFh.mjs";
|
|
2
|
+
import { Subscriber, SubscriberContext, SubscriberHandler } from "../Subscriber-ikctpU3I.mjs";
|
|
3
3
|
export { Subscriber, SubscriberContext, SubscriberHandler };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../Construct-
|
|
2
|
-
import "../Subscriber-
|
|
3
|
-
import { SubscriberBuilder } from "../SubscriberBuilder-
|
|
1
|
+
import "../Construct-C4rPE67v.cjs";
|
|
2
|
+
import "../Subscriber-COYMSevD.cjs";
|
|
3
|
+
import { SubscriberBuilder } from "../SubscriberBuilder-ivHAGIVi.cjs";
|
|
4
4
|
export { SubscriberBuilder };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "../Construct-
|
|
2
|
-
import "../Subscriber-
|
|
3
|
-
import { SubscriberBuilder } from "../SubscriberBuilder-
|
|
1
|
+
import "../Construct-XrijZFFh.mjs";
|
|
2
|
+
import "../Subscriber-ikctpU3I.mjs";
|
|
3
|
+
import { SubscriberBuilder } from "../SubscriberBuilder-D_9zzllj.mjs";
|
|
4
4
|
export { SubscriberBuilder };
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import "../Construct-
|
|
2
|
-
import { Subscriber } from "../Subscriber-
|
|
3
|
-
import { SubscriberBuilder } from "../SubscriberBuilder-
|
|
1
|
+
import "../Construct-C4rPE67v.cjs";
|
|
2
|
+
import { Subscriber } from "../Subscriber-COYMSevD.cjs";
|
|
3
|
+
import { SubscriberBuilder } from "../SubscriberBuilder-ivHAGIVi.cjs";
|
|
4
4
|
import * as _geekmidas_logger10 from "@geekmidas/logger";
|
|
5
5
|
|
|
6
6
|
//#region src/subscribers/index.d.ts
|
|
7
7
|
declare const s: SubscriberBuilder<[], _geekmidas_logger10.Logger, undefined, undefined, string, []>;
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
9
|
+
|
|
8
10
|
//#endregion
|
|
9
11
|
export { Subscriber, SubscriberBuilder, s };
|
|
10
12
|
//# sourceMappingURL=index.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../../src/subscribers/index.ts"],"sourcesContent":[],"mappings":";;;;;;cAIa,GAAC,sBAA0B,mBAAA,CAA1B,MAAA"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import "../Construct-
|
|
2
|
-
import { Subscriber } from "../Subscriber-
|
|
3
|
-
import { SubscriberBuilder } from "../SubscriberBuilder-
|
|
1
|
+
import "../Construct-XrijZFFh.mjs";
|
|
2
|
+
import { Subscriber } from "../Subscriber-ikctpU3I.mjs";
|
|
3
|
+
import { SubscriberBuilder } from "../SubscriberBuilder-D_9zzllj.mjs";
|
|
4
4
|
import * as _geekmidas_logger10 from "@geekmidas/logger";
|
|
5
5
|
|
|
6
6
|
//#region src/subscribers/index.d.ts
|
|
7
7
|
declare const s: SubscriberBuilder<[], _geekmidas_logger10.Logger, undefined, undefined, string, []>;
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
9
|
+
|
|
8
10
|
//#endregion
|
|
9
11
|
export { Subscriber, SubscriberBuilder, s };
|
|
10
12
|
//# sourceMappingURL=index.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../../src/subscribers/index.ts"],"sourcesContent":[],"mappings":";;;;;;cAIa,GAAC,sBAA0B,mBAAA,CAA1B,MAAA"}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
type RemoveUndefined<T> = { [K in keyof T as T[K] extends undefined ? never : K]: T[K] };
|
|
3
3
|
type HttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS';
|
|
4
4
|
type LowerHttpMethod<T extends HttpMethod> = Lowercase<T>;
|
|
5
|
+
//# sourceMappingURL=types.d.ts.map
|
|
6
|
+
|
|
5
7
|
//#endregion
|
|
6
8
|
export { HttpMethod, LowerHttpMethod, RemoveUndefined };
|
|
7
|
-
//# sourceMappingURL=types-
|
|
9
|
+
//# sourceMappingURL=types-B5H3piDg.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types-B5H3piDg.d.cts","names":[],"sources":["../src/types.ts"],"sourcesContent":[],"mappings":";KAAY,6BAAA,MACE,CADF,IACO,CADQ,CACN,CADM,CAAA,SAAA,SAAA,GAAA,KAAA,GACyB,CADzB,GAC6B,CAD7B,CAC+B,CAD/B,CAAA,EAAA;AACb,KAGF,UAAA,GAHE,KAAA,GAAA,MAAA,GAAA,KAAA,GAAA,OAAA,GAAA,QAAA,GAAA,SAAA;AAAK,KAWP,eAXO,CAAA,UAWmB,UAXnB,CAAA,GAWiC,SAXjC,CAW2C,CAX3C,CAAA"}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
type RemoveUndefined<T> = { [K in keyof T as T[K] extends undefined ? never : K]: T[K] };
|
|
3
3
|
type HttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS';
|
|
4
4
|
type LowerHttpMethod<T extends HttpMethod> = Lowercase<T>;
|
|
5
|
+
//# sourceMappingURL=types.d.ts.map
|
|
6
|
+
|
|
5
7
|
//#endregion
|
|
6
8
|
export { HttpMethod, LowerHttpMethod, RemoveUndefined };
|
|
7
|
-
//# sourceMappingURL=types-
|
|
9
|
+
//# sourceMappingURL=types-DdIlpxAd.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types-DdIlpxAd.d.mts","names":[],"sources":["../src/types.ts"],"sourcesContent":[],"mappings":";KAAY,6BAAA,MACE,CADF,IACO,CADQ,CACN,CADM,CAAA,SAAA,SAAA,GAAA,KAAA,GACyB,CADzB,GAC6B,CAD7B,CAC+B,CAD/B,CAAA,EAAA;AACb,KAGF,UAAA,GAHE,KAAA,GAAA,MAAA,GAAA,KAAA,GAAA,OAAA,GAAA,QAAA,GAAA,SAAA;AAAK,KAWP,eAXO,CAAA,UAWmB,UAXnB,CAAA,GAWiC,SAXjC,CAW2C,CAX3C,CAAA"}
|
package/dist/types.d.cts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { HttpMethod, LowerHttpMethod, RemoveUndefined } from "./types-
|
|
1
|
+
import { HttpMethod, LowerHttpMethod, RemoveUndefined } from "./types-B5H3piDg.cjs";
|
|
2
2
|
export { HttpMethod, LowerHttpMethod, RemoveUndefined };
|
package/dist/types.d.mts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { HttpMethod, LowerHttpMethod, RemoveUndefined } from "./types-
|
|
1
|
+
import { HttpMethod, LowerHttpMethod, RemoveUndefined } from "./types-DdIlpxAd.mjs";
|
|
2
2
|
export { HttpMethod, LowerHttpMethod, RemoveUndefined };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@geekmidas/constructs",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -82,12 +82,12 @@
|
|
|
82
82
|
"@geekmidas/db": "^0.2.0",
|
|
83
83
|
"@geekmidas/envkit": "^0.2.0",
|
|
84
84
|
"@geekmidas/errors": "^0.1.0",
|
|
85
|
-
"@geekmidas/logger": "^0.3.0",
|
|
86
|
-
"@geekmidas/rate-limit": "^0.2.0",
|
|
87
85
|
"@geekmidas/events": "^0.1.0",
|
|
86
|
+
"@geekmidas/rate-limit": "^0.2.0",
|
|
88
87
|
"@geekmidas/services": "^0.1.0",
|
|
89
|
-
"@geekmidas/
|
|
90
|
-
"@geekmidas/schema": "^0.1.0"
|
|
88
|
+
"@geekmidas/logger": "^0.3.0",
|
|
89
|
+
"@geekmidas/schema": "^0.1.0",
|
|
90
|
+
"@geekmidas/testkit": "^0.4.0"
|
|
91
91
|
},
|
|
92
92
|
"peerDependencies": {
|
|
93
93
|
"@middy/core": ">=6.3.1",
|
|
@@ -97,11 +97,11 @@
|
|
|
97
97
|
"@geekmidas/cache": "^0.1.0",
|
|
98
98
|
"@geekmidas/db": "^0.2.0",
|
|
99
99
|
"@geekmidas/envkit": "^0.2.0",
|
|
100
|
-
"@geekmidas/events": "^0.1.0",
|
|
101
100
|
"@geekmidas/errors": "^0.1.0",
|
|
101
|
+
"@geekmidas/events": "^0.1.0",
|
|
102
102
|
"@geekmidas/logger": "^0.3.0",
|
|
103
|
-
"@geekmidas/schema": "^0.1.0",
|
|
104
103
|
"@geekmidas/rate-limit": "^0.2.0",
|
|
104
|
+
"@geekmidas/schema": "^0.1.0",
|
|
105
105
|
"@geekmidas/services": "^0.1.0"
|
|
106
106
|
},
|
|
107
107
|
"peerDependenciesMeta": {
|
package/src/crons/CronBuilder.ts
CHANGED
|
@@ -39,7 +39,7 @@ export class CronBuilder<
|
|
|
39
39
|
super(ConstructType.Cron);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
memorySize(memorySize: number): this {
|
|
42
|
+
override memorySize(memorySize: number): this {
|
|
43
43
|
this._memorySize = memorySize;
|
|
44
44
|
return this;
|
|
45
45
|
}
|
|
@@ -60,7 +60,7 @@ export class CronBuilder<
|
|
|
60
60
|
return this;
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
input<T extends ComposableStandardSchema>(
|
|
63
|
+
override input<T extends ComposableStandardSchema>(
|
|
64
64
|
schema: T,
|
|
65
65
|
): CronBuilder<
|
|
66
66
|
T,
|
|
@@ -86,7 +86,7 @@ export class CronBuilder<
|
|
|
86
86
|
>;
|
|
87
87
|
}
|
|
88
88
|
|
|
89
|
-
output<T extends StandardSchemaV1>(
|
|
89
|
+
override output<T extends StandardSchemaV1>(
|
|
90
90
|
schema: T,
|
|
91
91
|
): CronBuilder<
|
|
92
92
|
TInput,
|
|
@@ -112,7 +112,7 @@ export class CronBuilder<
|
|
|
112
112
|
>;
|
|
113
113
|
}
|
|
114
114
|
|
|
115
|
-
services<T extends Service[]>(
|
|
115
|
+
override services<T extends Service[]>(
|
|
116
116
|
services: T,
|
|
117
117
|
): CronBuilder<
|
|
118
118
|
TInput,
|
|
@@ -141,7 +141,7 @@ export class CronBuilder<
|
|
|
141
141
|
>;
|
|
142
142
|
}
|
|
143
143
|
|
|
144
|
-
logger<T extends Logger>(
|
|
144
|
+
override logger<T extends Logger>(
|
|
145
145
|
logger: T,
|
|
146
146
|
): CronBuilder<
|
|
147
147
|
TInput,
|
|
@@ -167,7 +167,7 @@ export class CronBuilder<
|
|
|
167
167
|
>;
|
|
168
168
|
}
|
|
169
169
|
|
|
170
|
-
publisher<T extends EventPublisher<any>, TName extends string>(
|
|
170
|
+
override publisher<T extends EventPublisher<any>, TName extends string>(
|
|
171
171
|
publisher: Service<TName, T>,
|
|
172
172
|
): CronBuilder<
|
|
173
173
|
TInput,
|
|
@@ -200,7 +200,7 @@ export class CronBuilder<
|
|
|
200
200
|
* Set the database service for this cron job.
|
|
201
201
|
* The database will be available in the handler context as `db`.
|
|
202
202
|
*/
|
|
203
|
-
database<T, TName extends string>(
|
|
203
|
+
override database<T, TName extends string>(
|
|
204
204
|
service: Service<TName, T>,
|
|
205
205
|
): CronBuilder<
|
|
206
206
|
TInput,
|
|
@@ -229,7 +229,7 @@ export class CronBuilder<
|
|
|
229
229
|
>;
|
|
230
230
|
}
|
|
231
231
|
|
|
232
|
-
handle(
|
|
232
|
+
override handle(
|
|
233
233
|
fn: FunctionHandler<TInput, TServices, TLogger, OutSchema, TDatabase>,
|
|
234
234
|
): Cron<
|
|
235
235
|
TInput,
|
|
@@ -37,7 +37,7 @@ export class AmazonApiGatewayV1Endpoint<
|
|
|
37
37
|
TSession,
|
|
38
38
|
TEventPublisher
|
|
39
39
|
> {
|
|
40
|
-
getInput(e: APIGatewayProxyEvent): GetInputResponse {
|
|
40
|
+
override getInput(e: APIGatewayProxyEvent): GetInputResponse {
|
|
41
41
|
// For arrays, AWS API Gateway V1 provides multiValueQueryStringParameters
|
|
42
42
|
const multiValueParams = e.multiValueQueryStringParameters || {};
|
|
43
43
|
const singleValueParams = e.queryStringParameters || {};
|
|
@@ -65,7 +65,7 @@ export class AmazonApiGatewayV1Endpoint<
|
|
|
65
65
|
params: e.pathParameters || {},
|
|
66
66
|
};
|
|
67
67
|
}
|
|
68
|
-
getLoggerContext(
|
|
68
|
+
override getLoggerContext(
|
|
69
69
|
data: APIGatewayProxyEvent,
|
|
70
70
|
context: Context,
|
|
71
71
|
): LoggerContext {
|
|
@@ -84,8 +84,8 @@ export class AmazonApiGatewayV1Endpoint<
|
|
|
84
84
|
};
|
|
85
85
|
}
|
|
86
86
|
constructor(
|
|
87
|
-
protected envParser: EnvironmentParser<{}>,
|
|
88
|
-
protected readonly endpoint: Endpoint<
|
|
87
|
+
protected override envParser: EnvironmentParser<{}>,
|
|
88
|
+
protected override readonly endpoint: Endpoint<
|
|
89
89
|
TRoute,
|
|
90
90
|
TMethod,
|
|
91
91
|
TInput,
|
|
@@ -36,7 +36,7 @@ export class AmazonApiGatewayV2Endpoint<
|
|
|
36
36
|
TSession,
|
|
37
37
|
TEventPublisher
|
|
38
38
|
> {
|
|
39
|
-
getInput(e: APIGatewayProxyEventV2): GetInputResponse {
|
|
39
|
+
override getInput(e: APIGatewayProxyEventV2): GetInputResponse {
|
|
40
40
|
// API Gateway V2 handles arrays as comma-separated values
|
|
41
41
|
const queryParams = e.queryStringParameters || {};
|
|
42
42
|
const processedParams: Record<string, string | string[]> = {};
|
|
@@ -59,7 +59,7 @@ export class AmazonApiGatewayV2Endpoint<
|
|
|
59
59
|
params: e.pathParameters || {},
|
|
60
60
|
};
|
|
61
61
|
}
|
|
62
|
-
getLoggerContext(
|
|
62
|
+
override getLoggerContext(
|
|
63
63
|
event: APIGatewayProxyEventV2,
|
|
64
64
|
context: Context,
|
|
65
65
|
): LoggerContext {
|
|
@@ -78,8 +78,8 @@ export class AmazonApiGatewayV2Endpoint<
|
|
|
78
78
|
};
|
|
79
79
|
}
|
|
80
80
|
constructor(
|
|
81
|
-
protected envParser: EnvironmentParser<{}>,
|
|
82
|
-
protected readonly endpoint: Endpoint<
|
|
81
|
+
protected override envParser: EnvironmentParser<{}>,
|
|
82
|
+
protected override readonly endpoint: Endpoint<
|
|
83
83
|
TRoute,
|
|
84
84
|
TMethod,
|
|
85
85
|
TInput,
|
|
@@ -109,7 +109,7 @@ export class EndpointBuilder<
|
|
|
109
109
|
return this;
|
|
110
110
|
}
|
|
111
111
|
|
|
112
|
-
event<TEvent extends MappedEvent<TEventPublisher, OutSchema>>(
|
|
112
|
+
override event<TEvent extends MappedEvent<TEventPublisher, OutSchema>>(
|
|
113
113
|
event: TEvent,
|
|
114
114
|
): this {
|
|
115
115
|
this._events.push(event);
|
|
@@ -126,7 +126,7 @@ export class EndpointBuilder<
|
|
|
126
126
|
return this;
|
|
127
127
|
}
|
|
128
128
|
|
|
129
|
-
publisher<T extends EventPublisher<any>, TName extends string>(
|
|
129
|
+
override publisher<T extends EventPublisher<any>, TName extends string>(
|
|
130
130
|
publisher: Service<TName, T>,
|
|
131
131
|
): EndpointBuilder<
|
|
132
132
|
TRoute,
|
|
@@ -437,7 +437,7 @@ export class EndpointBuilder<
|
|
|
437
437
|
* This enables audit functionality and makes `auditor` available in the handler context.
|
|
438
438
|
* The audit action type is automatically inferred from the storage's generic parameter.
|
|
439
439
|
*/
|
|
440
|
-
auditor<T extends AuditStorage<any>, TName extends string>(
|
|
440
|
+
override auditor<T extends AuditStorage<any>, TName extends string>(
|
|
441
441
|
storage: Service<TName, T>,
|
|
442
442
|
): EndpointBuilder<
|
|
443
443
|
TRoute,
|
|
@@ -544,7 +544,7 @@ export class EndpointBuilder<
|
|
|
544
544
|
* })
|
|
545
545
|
* ```
|
|
546
546
|
*/
|
|
547
|
-
database<T, TName extends string>(
|
|
547
|
+
override database<T, TName extends string>(
|
|
548
548
|
service: Service<TName, T>,
|
|
549
549
|
): EndpointBuilder<
|
|
550
550
|
TRoute,
|
|
@@ -195,6 +195,24 @@ export class TestEndpointAdaptor<
|
|
|
195
195
|
...(rawDb !== undefined && { db: rawDb }),
|
|
196
196
|
} as any);
|
|
197
197
|
|
|
198
|
+
// Check authorization
|
|
199
|
+
const isAuthorized = await this.endpoint.authorize({
|
|
200
|
+
header,
|
|
201
|
+
cookie,
|
|
202
|
+
services: ctx.services,
|
|
203
|
+
logger,
|
|
204
|
+
session,
|
|
205
|
+
});
|
|
206
|
+
|
|
207
|
+
if (!isAuthorized) {
|
|
208
|
+
logger.warn('Unauthorized access attempt');
|
|
209
|
+
return {
|
|
210
|
+
body: { error: 'Unauthorized' } as any,
|
|
211
|
+
status: 401,
|
|
212
|
+
headers: {},
|
|
213
|
+
};
|
|
214
|
+
}
|
|
215
|
+
|
|
198
216
|
// Create audit context if audit storage is provided
|
|
199
217
|
// The auditorStorage instance is required when endpoint uses .auditor()
|
|
200
218
|
const auditorStorage = (ctx as any).auditorStorage as TAuditStorage;
|
|
@@ -18,6 +18,7 @@ export function parseHonoQuery(c: Context): Record<string, any> {
|
|
|
18
18
|
// Navigate/create the nested structure
|
|
19
19
|
for (let i = 0; i < parts.length - 1; i++) {
|
|
20
20
|
const part = parts[i];
|
|
21
|
+
if (!part) continue;
|
|
21
22
|
if (
|
|
22
23
|
!current[part] ||
|
|
23
24
|
typeof current[part] !== 'object' ||
|
|
@@ -30,6 +31,7 @@ export function parseHonoQuery(c: Context): Record<string, any> {
|
|
|
30
31
|
|
|
31
32
|
// Set the final value, checking for arrays in nested keys
|
|
32
33
|
const lastPart = parts[parts.length - 1];
|
|
34
|
+
if (!lastPart) continue;
|
|
33
35
|
const multipleValues = c.req.queries(key);
|
|
34
36
|
if (multipleValues && multipleValues.length > 1) {
|
|
35
37
|
current[lastPart] = multipleValues;
|
|
@@ -28,6 +28,7 @@ export function parseQueryParams(
|
|
|
28
28
|
// Navigate/create the nested structure
|
|
29
29
|
for (let i = 0; i < parts.length - 1; i++) {
|
|
30
30
|
const part = parts[i];
|
|
31
|
+
if (!part) continue;
|
|
31
32
|
if (
|
|
32
33
|
!current[part] ||
|
|
33
34
|
typeof current[part] !== 'object' ||
|
|
@@ -40,6 +41,7 @@ export function parseQueryParams(
|
|
|
40
41
|
|
|
41
42
|
// Set the final value
|
|
42
43
|
const lastPart = parts[parts.length - 1];
|
|
44
|
+
if (!lastPart) continue;
|
|
43
45
|
current[lastPart] = value;
|
|
44
46
|
} else {
|
|
45
47
|
// Simple key, just assign the value
|
|
@@ -41,11 +41,11 @@ export class FunctionBuilder<
|
|
|
41
41
|
> {
|
|
42
42
|
protected _memorySize?: number;
|
|
43
43
|
|
|
44
|
-
constructor(public type = ConstructType.Function) {
|
|
44
|
+
constructor(public override type = ConstructType.Function) {
|
|
45
45
|
super(type);
|
|
46
46
|
}
|
|
47
47
|
|
|
48
|
-
timeout(timeout: number): this {
|
|
48
|
+
override timeout(timeout: number): this {
|
|
49
49
|
this._timeout = timeout;
|
|
50
50
|
return this;
|
|
51
51
|
}
|
|
@@ -186,7 +186,7 @@ export class FunctionBuilder<
|
|
|
186
186
|
>;
|
|
187
187
|
}
|
|
188
188
|
|
|
189
|
-
publisher<T extends EventPublisher<any>, TName extends string>(
|
|
189
|
+
override publisher<T extends EventPublisher<any>, TName extends string>(
|
|
190
190
|
publisher: Service<TName, T>,
|
|
191
191
|
): FunctionBuilder<
|
|
192
192
|
TInput,
|
|
@@ -221,7 +221,7 @@ export class FunctionBuilder<
|
|
|
221
221
|
>;
|
|
222
222
|
}
|
|
223
223
|
|
|
224
|
-
auditor<T extends AuditStorage, TName extends string>(
|
|
224
|
+
override auditor<T extends AuditStorage, TName extends string>(
|
|
225
225
|
storage: Service<TName, T>,
|
|
226
226
|
): FunctionBuilder<
|
|
227
227
|
TInput,
|
|
@@ -292,7 +292,7 @@ export class FunctionBuilder<
|
|
|
292
292
|
* Set the database service for this function.
|
|
293
293
|
* The database will be available in the handler context as `db`.
|
|
294
294
|
*/
|
|
295
|
-
database<T, TName extends string>(
|
|
295
|
+
override database<T, TName extends string>(
|
|
296
296
|
service: Service<TName, T>,
|
|
297
297
|
): FunctionBuilder<
|
|
298
298
|
TInput,
|
|
@@ -177,20 +177,24 @@ export class AWSLambdaSubscriber<
|
|
|
177
177
|
}
|
|
178
178
|
|
|
179
179
|
private isSQSEvent(event: SQSEvent | SNSEvent): event is SQSEvent {
|
|
180
|
+
const firstRecord = event.Records[0];
|
|
180
181
|
return (
|
|
181
182
|
'Records' in event &&
|
|
182
183
|
event.Records.length > 0 &&
|
|
183
|
-
|
|
184
|
-
|
|
184
|
+
firstRecord !== undefined &&
|
|
185
|
+
'eventSource' in firstRecord &&
|
|
186
|
+
firstRecord.eventSource === 'aws:sqs'
|
|
185
187
|
);
|
|
186
188
|
}
|
|
187
189
|
|
|
188
190
|
private isSNSEvent(event: SQSEvent | SNSEvent): event is SNSEvent {
|
|
191
|
+
const firstRecord = event.Records[0];
|
|
189
192
|
return (
|
|
190
193
|
'Records' in event &&
|
|
191
194
|
event.Records.length > 0 &&
|
|
192
|
-
|
|
193
|
-
|
|
195
|
+
firstRecord !== undefined &&
|
|
196
|
+
'EventSource' in firstRecord &&
|
|
197
|
+
firstRecord.EventSource === 'aws:sns'
|
|
194
198
|
);
|
|
195
199
|
}
|
|
196
200
|
|
|
@@ -56,12 +56,12 @@ export class Subscriber<
|
|
|
56
56
|
TLogger,
|
|
57
57
|
OutSchema
|
|
58
58
|
>,
|
|
59
|
-
public readonly timeout: number = 30000,
|
|
59
|
+
public override readonly timeout: number = 30000,
|
|
60
60
|
protected _subscribedEvents?: TSubscribedEvents,
|
|
61
|
-
public readonly outputSchema?: OutSchema,
|
|
62
|
-
public readonly services: TServices = [] as unknown as TServices,
|
|
63
|
-
public readonly logger: TLogger = DEFAULT_LOGGER as TLogger,
|
|
64
|
-
public readonly publisherService?: Service<
|
|
61
|
+
public override readonly outputSchema?: OutSchema,
|
|
62
|
+
public override readonly services: TServices = [] as unknown as TServices,
|
|
63
|
+
public override readonly logger: TLogger = DEFAULT_LOGGER as TLogger,
|
|
64
|
+
public override readonly publisherService?: Service<
|
|
65
65
|
TEventPublisherServiceName,
|
|
66
66
|
TEventPublisher
|
|
67
67
|
>,
|
package/tsconfig.json
ADDED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AmazonApiGatewayV1EndpointAdaptor-BbkfC1dk.mjs","names":["e: APIGatewayProxyEvent","mergedParams: Record<string, string | string[]>","data: APIGatewayProxyEvent","context: Context","envParser: EnvironmentParser<{}>","endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >"],"sources":["../src/endpoints/AmazonApiGatewayV1EndpointAdaptor.ts"],"sourcesContent":["import type { Logger } from '@geekmidas/logger';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport type { HttpMethod } from '../types';\nimport type { Endpoint, EndpointSchemas } from './Endpoint';\n\nimport type { EnvironmentParser } from '@geekmidas/envkit';\nimport type { APIGatewayProxyEvent, Context } from 'aws-lambda';\n\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Service } from '@geekmidas/services';\nimport {\n AmazonApiGatewayEndpoint,\n type AmazonApiGatewayV1EndpointHandler,\n type GetInputResponse,\n type LoggerContext,\n} from './AmazonApiGatewayEndpointAdaptor';\nimport { parseQueryParams } from './parseQueryParams';\n\nexport class AmazonApiGatewayV1Endpoint<\n TRoute extends string,\n TMethod extends HttpMethod,\n TInput extends EndpointSchemas = {},\n TOutSchema extends StandardSchemaV1 | undefined = undefined,\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n TSession = unknown,\n TEventPublisher extends EventPublisher<any> | undefined = undefined,\n> extends AmazonApiGatewayEndpoint<\n AmazonApiGatewayV1EndpointHandler,\n APIGatewayProxyEvent,\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n> {\n getInput(e: APIGatewayProxyEvent): GetInputResponse {\n // For arrays, AWS API Gateway V1 provides multiValueQueryStringParameters\n const multiValueParams = e.multiValueQueryStringParameters || {};\n const singleValueParams = e.queryStringParameters || {};\n\n // Merge single and multi-value parameters\n const mergedParams: Record<string, string | string[]> = {};\n\n // Add single value parameters\n for (const [key, value] of Object.entries(singleValueParams)) {\n if (value !== undefined) {\n mergedParams[key] = value;\n }\n }\n\n // Override with multi-value parameters where applicable\n for (const [key, values] of Object.entries(multiValueParams)) {\n if (values && values.length > 1) {\n mergedParams[key] = values;\n }\n }\n\n return {\n body: e.body ? JSON.parse(e.body) : undefined,\n query: parseQueryParams(mergedParams),\n params: e.pathParameters || {},\n };\n }\n getLoggerContext(\n data: APIGatewayProxyEvent,\n context: Context,\n ): LoggerContext {\n return {\n fn: {\n name: context.functionName,\n version: context.functionVersion,\n },\n req: {\n id: data.requestContext.requestId,\n awsRequestId: context.awsRequestId,\n ip: data.requestContext.identity.sourceIp,\n userAgent: data.requestContext.identity.userAgent || undefined,\n path: data.requestContext.path,\n },\n };\n }\n constructor(\n protected envParser: EnvironmentParser<{}>,\n protected readonly endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >,\n ) {\n super(envParser, endpoint);\n }\n}\n"],"mappings":";;;;AAkBA,IAAa,6BAAb,cASU,yBAWR;CACA,SAASA,GAA2C;EAElD,MAAM,mBAAmB,EAAE,mCAAmC,CAAE;EAChE,MAAM,oBAAoB,EAAE,yBAAyB,CAAE;EAGvD,MAAMC,eAAkD,CAAE;AAG1D,OAAK,MAAM,CAAC,KAAK,MAAM,IAAI,OAAO,QAAQ,kBAAkB,CAC1D,KAAI,iBACF,cAAa,OAAO;AAKxB,OAAK,MAAM,CAAC,KAAK,OAAO,IAAI,OAAO,QAAQ,iBAAiB,CAC1D,KAAI,UAAU,OAAO,SAAS,EAC5B,cAAa,OAAO;AAIxB,SAAO;GACL,MAAM,EAAE,OAAO,KAAK,MAAM,EAAE,KAAK;GACjC,OAAO,iBAAiB,aAAa;GACrC,QAAQ,EAAE,kBAAkB,CAAE;EAC/B;CACF;CACD,iBACEC,MACAC,SACe;AACf,SAAO;GACL,IAAI;IACF,MAAM,QAAQ;IACd,SAAS,QAAQ;GAClB;GACD,KAAK;IACH,IAAI,KAAK,eAAe;IACxB,cAAc,QAAQ;IACtB,IAAI,KAAK,eAAe,SAAS;IACjC,WAAW,KAAK,eAAe,SAAS;IACxC,MAAM,KAAK,eAAe;GAC3B;EACF;CACF;CACD,YACYC,WACSC,UAUnB;AACA,QAAM,WAAW,SAAS;EAZhB;EACS;CAYpB;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AmazonApiGatewayV1EndpointAdaptor-BiNzaAxD.cjs","names":["AmazonApiGatewayEndpoint","e: APIGatewayProxyEvent","mergedParams: Record<string, string | string[]>","data: APIGatewayProxyEvent","context: Context","envParser: EnvironmentParser<{}>","endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >"],"sources":["../src/endpoints/AmazonApiGatewayV1EndpointAdaptor.ts"],"sourcesContent":["import type { Logger } from '@geekmidas/logger';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport type { HttpMethod } from '../types';\nimport type { Endpoint, EndpointSchemas } from './Endpoint';\n\nimport type { EnvironmentParser } from '@geekmidas/envkit';\nimport type { APIGatewayProxyEvent, Context } from 'aws-lambda';\n\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Service } from '@geekmidas/services';\nimport {\n AmazonApiGatewayEndpoint,\n type AmazonApiGatewayV1EndpointHandler,\n type GetInputResponse,\n type LoggerContext,\n} from './AmazonApiGatewayEndpointAdaptor';\nimport { parseQueryParams } from './parseQueryParams';\n\nexport class AmazonApiGatewayV1Endpoint<\n TRoute extends string,\n TMethod extends HttpMethod,\n TInput extends EndpointSchemas = {},\n TOutSchema extends StandardSchemaV1 | undefined = undefined,\n TServices extends Service[] = [],\n TLogger extends Logger = Logger,\n TSession = unknown,\n TEventPublisher extends EventPublisher<any> | undefined = undefined,\n> extends AmazonApiGatewayEndpoint<\n AmazonApiGatewayV1EndpointHandler,\n APIGatewayProxyEvent,\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n> {\n getInput(e: APIGatewayProxyEvent): GetInputResponse {\n // For arrays, AWS API Gateway V1 provides multiValueQueryStringParameters\n const multiValueParams = e.multiValueQueryStringParameters || {};\n const singleValueParams = e.queryStringParameters || {};\n\n // Merge single and multi-value parameters\n const mergedParams: Record<string, string | string[]> = {};\n\n // Add single value parameters\n for (const [key, value] of Object.entries(singleValueParams)) {\n if (value !== undefined) {\n mergedParams[key] = value;\n }\n }\n\n // Override with multi-value parameters where applicable\n for (const [key, values] of Object.entries(multiValueParams)) {\n if (values && values.length > 1) {\n mergedParams[key] = values;\n }\n }\n\n return {\n body: e.body ? JSON.parse(e.body) : undefined,\n query: parseQueryParams(mergedParams),\n params: e.pathParameters || {},\n };\n }\n getLoggerContext(\n data: APIGatewayProxyEvent,\n context: Context,\n ): LoggerContext {\n return {\n fn: {\n name: context.functionName,\n version: context.functionVersion,\n },\n req: {\n id: data.requestContext.requestId,\n awsRequestId: context.awsRequestId,\n ip: data.requestContext.identity.sourceIp,\n userAgent: data.requestContext.identity.userAgent || undefined,\n path: data.requestContext.path,\n },\n };\n }\n constructor(\n protected envParser: EnvironmentParser<{}>,\n protected readonly endpoint: Endpoint<\n TRoute,\n TMethod,\n TInput,\n TOutSchema,\n TServices,\n TLogger,\n TSession,\n TEventPublisher\n >,\n ) {\n super(envParser, endpoint);\n }\n}\n"],"mappings":";;;;AAkBA,IAAa,6BAAb,cASUA,iEAWR;CACA,SAASC,GAA2C;EAElD,MAAM,mBAAmB,EAAE,mCAAmC,CAAE;EAChE,MAAM,oBAAoB,EAAE,yBAAyB,CAAE;EAGvD,MAAMC,eAAkD,CAAE;AAG1D,OAAK,MAAM,CAAC,KAAK,MAAM,IAAI,OAAO,QAAQ,kBAAkB,CAC1D,KAAI,iBACF,cAAa,OAAO;AAKxB,OAAK,MAAM,CAAC,KAAK,OAAO,IAAI,OAAO,QAAQ,iBAAiB,CAC1D,KAAI,UAAU,OAAO,SAAS,EAC5B,cAAa,OAAO;AAIxB,SAAO;GACL,MAAM,EAAE,OAAO,KAAK,MAAM,EAAE,KAAK;GACjC,OAAO,0CAAiB,aAAa;GACrC,QAAQ,EAAE,kBAAkB,CAAE;EAC/B;CACF;CACD,iBACEC,MACAC,SACe;AACf,SAAO;GACL,IAAI;IACF,MAAM,QAAQ;IACd,SAAS,QAAQ;GAClB;GACD,KAAK;IACH,IAAI,KAAK,eAAe;IACxB,cAAc,QAAQ;IACtB,IAAI,KAAK,eAAe,SAAS;IACjC,WAAW,KAAK,eAAe,SAAS;IACxC,MAAM,KAAK,eAAe;GAC3B;EACF;CACF;CACD,YACYC,WACSC,UAUnB;AACA,QAAM,WAAW,SAAS;EAZhB;EACS;CAYpB;AACF"}
|