@geekmidas/constructs 0.3.2 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{AWSLambdaFunction-C54a1doJ.mjs → AWSLambdaFunction-BMTaCrG9.mjs} +6 -6
- package/dist/AWSLambdaFunction-BMTaCrG9.mjs.map +1 -0
- package/dist/{AWSLambdaFunction-BdebRMUh.d.mts → AWSLambdaFunction-BfLF5vNa.d.cts} +6 -6
- package/dist/AWSLambdaFunction-BfLF5vNa.d.cts.map +1 -0
- package/dist/{AWSLambdaFunction-EPGY4s7i.cjs → AWSLambdaFunction-C1gRqLO7.cjs} +6 -6
- package/dist/AWSLambdaFunction-C1gRqLO7.cjs.map +1 -0
- package/dist/{AWSLambdaFunction-D0tEOTXQ.d.cts → AWSLambdaFunction-K94K8JU2.d.mts} +6 -6
- package/dist/AWSLambdaFunction-K94K8JU2.d.mts.map +1 -0
- package/dist/{AWSLambdaSubscriberAdaptor-Dx-Ks1Jp.d.cts → AWSLambdaSubscriberAdaptor-B2Gk3fgx.d.cts} +2 -2
- package/dist/AWSLambdaSubscriberAdaptor-B2Gk3fgx.d.cts.map +1 -0
- package/dist/{AWSLambdaSubscriberAdaptor-BLfO612H.mjs → AWSLambdaSubscriberAdaptor-BD3FwGUb.mjs} +3 -3
- package/dist/AWSLambdaSubscriberAdaptor-BD3FwGUb.mjs.map +1 -0
- package/dist/{AWSLambdaSubscriberAdaptor-BNcYYZ-P.cjs → AWSLambdaSubscriberAdaptor-DQDnt1Xk.cjs} +3 -3
- package/dist/AWSLambdaSubscriberAdaptor-DQDnt1Xk.cjs.map +1 -0
- package/dist/{AWSLambdaSubscriberAdaptor-DrFAvHOp.d.mts → AWSLambdaSubscriberAdaptor-QuMFwltJ.d.mts} +2 -2
- package/dist/AWSLambdaSubscriberAdaptor-QuMFwltJ.d.mts.map +1 -0
- package/dist/{AmazonApiGatewayEndpointAdaptor-BT9JXihC.mjs → AmazonApiGatewayEndpointAdaptor-B4gLJ2dx.mjs} +56 -14
- package/dist/AmazonApiGatewayEndpointAdaptor-B4gLJ2dx.mjs.map +1 -0
- package/dist/{AmazonApiGatewayEndpointAdaptor-DLqnYQ4E.d.cts → AmazonApiGatewayEndpointAdaptor-C987ZCsM.d.cts} +51 -5
- package/dist/AmazonApiGatewayEndpointAdaptor-C987ZCsM.d.cts.map +1 -0
- package/dist/{AmazonApiGatewayEndpointAdaptor-DNFvvdmW.cjs → AmazonApiGatewayEndpointAdaptor-CwRKMRr_.cjs} +55 -13
- package/dist/AmazonApiGatewayEndpointAdaptor-CwRKMRr_.cjs.map +1 -0
- package/dist/{AmazonApiGatewayEndpointAdaptor-qlKXuZxy.d.mts → AmazonApiGatewayEndpointAdaptor-DpPfO6Vj.d.mts} +52 -6
- package/dist/AmazonApiGatewayEndpointAdaptor-DpPfO6Vj.d.mts.map +1 -0
- package/dist/{AmazonApiGatewayV1EndpointAdaptor-Ccl8B8kG.cjs → AmazonApiGatewayV1EndpointAdaptor-BeZMu5DZ.cjs} +4 -4
- package/dist/AmazonApiGatewayV1EndpointAdaptor-BeZMu5DZ.cjs.map +1 -0
- package/dist/{AmazonApiGatewayV1EndpointAdaptor-MRUxs3Xi.d.mts → AmazonApiGatewayV1EndpointAdaptor-DI_5kdqw.d.mts} +5 -5
- package/dist/AmazonApiGatewayV1EndpointAdaptor-DI_5kdqw.d.mts.map +1 -0
- package/dist/{AmazonApiGatewayV1EndpointAdaptor-DyUaJIhB.d.cts → AmazonApiGatewayV1EndpointAdaptor-DkGMOpoB.d.cts} +4 -4
- package/dist/AmazonApiGatewayV1EndpointAdaptor-DkGMOpoB.d.cts.map +1 -0
- package/dist/{AmazonApiGatewayV1EndpointAdaptor-CShQI8Gk.mjs → AmazonApiGatewayV1EndpointAdaptor-VccB6FKp.mjs} +4 -4
- package/dist/AmazonApiGatewayV1EndpointAdaptor-VccB6FKp.mjs.map +1 -0
- package/dist/{AmazonApiGatewayV2EndpointAdaptor-M1-w0U5R.d.cts → AmazonApiGatewayV2EndpointAdaptor-BtBnMJS_.d.cts} +4 -6
- package/dist/AmazonApiGatewayV2EndpointAdaptor-BtBnMJS_.d.cts.map +1 -0
- package/dist/{AmazonApiGatewayV2EndpointAdaptor-D8-0Aab4.cjs → AmazonApiGatewayV2EndpointAdaptor-BwsL9Gia.cjs} +4 -4
- package/dist/AmazonApiGatewayV2EndpointAdaptor-BwsL9Gia.cjs.map +1 -0
- package/dist/{AmazonApiGatewayV2EndpointAdaptor-lCRzGE4q.mjs → AmazonApiGatewayV2EndpointAdaptor-CljxmUfz.mjs} +4 -4
- package/dist/AmazonApiGatewayV2EndpointAdaptor-CljxmUfz.mjs.map +1 -0
- package/dist/{AmazonApiGatewayV2EndpointAdaptor-fuLM6M9k.d.mts → AmazonApiGatewayV2EndpointAdaptor-DnCoqlvw.d.mts} +5 -7
- package/dist/AmazonApiGatewayV2EndpointAdaptor-DnCoqlvw.d.mts.map +1 -0
- package/dist/{Authorizer-C0ge_tc8.cjs → Authorizer-BXxBee2P.cjs} +1 -1
- package/dist/Authorizer-BXxBee2P.cjs.map +1 -0
- package/dist/{Authorizer-r9U3y_ms.mjs → Authorizer-BgjU8-z6.mjs} +1 -1
- package/dist/Authorizer-BgjU8-z6.mjs.map +1 -0
- package/dist/{Authorizer-gWxYsGEp.d.mts → Authorizer-DCcYOx3h.d.mts} +1 -1
- package/dist/Authorizer-DCcYOx3h.d.mts.map +1 -0
- package/dist/{Authorizer-B-btowNd.d.cts → Authorizer-DWtwC8we.d.cts} +1 -1
- package/dist/Authorizer-DWtwC8we.d.cts.map +1 -0
- package/dist/{BaseFunctionBuilder-BAtutR6q.d.cts → BaseFunctionBuilder-BqZCqIeU.d.mts} +3 -3
- package/dist/BaseFunctionBuilder-BqZCqIeU.d.mts.map +1 -0
- package/dist/{BaseFunctionBuilder-DRY419e7.d.mts → BaseFunctionBuilder-CcK691ni.d.cts} +3 -3
- package/dist/BaseFunctionBuilder-CcK691ni.d.cts.map +1 -0
- package/dist/{BaseFunctionBuilder-Czi1Jwza.mjs → BaseFunctionBuilder-Dsqe6pnn.mjs} +2 -2
- package/dist/BaseFunctionBuilder-Dsqe6pnn.mjs.map +1 -0
- package/dist/{BaseFunctionBuilder-MYG3C9ug.cjs → BaseFunctionBuilder-Z0XwrKB5.cjs} +2 -2
- package/dist/BaseFunctionBuilder-Z0XwrKB5.cjs.map +1 -0
- package/dist/Construct-BNDLJJfD.mjs +150 -0
- package/dist/Construct-BNDLJJfD.mjs.map +1 -0
- package/dist/{Construct-Ba5cMxib.cjs → Construct-CPrCF8NK.cjs} +93 -9
- package/dist/Construct-CPrCF8NK.cjs.map +1 -0
- package/dist/{Construct-C4rPE67v.d.cts → Construct-Dl0l2d8d.d.cts} +30 -4
- package/dist/Construct-Dl0l2d8d.d.cts.map +1 -0
- package/dist/{Construct-XrijZFFh.d.mts → Construct-E8QPyHh4.d.mts} +30 -4
- package/dist/Construct-E8QPyHh4.d.mts.map +1 -0
- package/dist/Construct.cjs +4 -2
- package/dist/Construct.d.cts +2 -2
- package/dist/Construct.d.mts +2 -2
- package/dist/Construct.mjs +2 -2
- package/dist/{Cron-CGF4YAfM.cjs → Cron-BmPNTLla.cjs} +3 -3
- package/dist/Cron-BmPNTLla.cjs.map +1 -0
- package/dist/{Cron-BxhGs5up.mjs → Cron-BpJONaFv.mjs} +3 -3
- package/dist/Cron-BpJONaFv.mjs.map +1 -0
- package/dist/{Cron-bDLcTvV5.d.cts → Cron-CnmLLh3E.d.mts} +3 -3
- package/dist/Cron-CnmLLh3E.d.mts.map +1 -0
- package/dist/{Cron-cdjlSKNp.d.mts → Cron-DufAeHry.d.cts} +3 -3
- package/dist/Cron-DufAeHry.d.cts.map +1 -0
- package/dist/{CronBuilder-d2jh-IB2.mjs → CronBuilder-02HSIHJr.mjs} +4 -4
- package/dist/CronBuilder-02HSIHJr.mjs.map +1 -0
- package/dist/{CronBuilder-CcxKRtVP.cjs → CronBuilder-DC2zUS8a.cjs} +4 -4
- package/dist/CronBuilder-DC2zUS8a.cjs.map +1 -0
- package/dist/{CronBuilder-BC4m5-p1.d.mts → CronBuilder-anUSbMxb.d.mts} +4 -4
- package/dist/CronBuilder-anUSbMxb.d.mts.map +1 -0
- package/dist/{CronBuilder-DKVXyE0Q.d.cts → CronBuilder-fyqf_X8n.d.cts} +4 -4
- package/dist/CronBuilder-fyqf_X8n.d.cts.map +1 -0
- package/dist/{Endpoint-BVGZXFyV.cjs → Endpoint-BCWVbi8l.cjs} +6 -6
- package/dist/Endpoint-BCWVbi8l.cjs.map +1 -0
- package/dist/{Endpoint-BPv9_-m_.d.cts → Endpoint-BlcHiGNx.d.cts} +3 -3
- package/dist/Endpoint-BlcHiGNx.d.cts.map +1 -0
- package/dist/{Endpoint-BdwG75G_.d.mts → Endpoint-DEHuy46S.d.mts} +4 -4
- package/dist/Endpoint-DEHuy46S.d.mts.map +1 -0
- package/dist/{Endpoint-CuOEswxJ.mjs → Endpoint-ygxv2Ia6.mjs} +6 -6
- package/dist/Endpoint-ygxv2Ia6.mjs.map +1 -0
- package/dist/{EndpointBuilder-DIy_m1bu.d.cts → EndpointBuilder-DPLAUHqg.d.cts} +4 -4
- package/dist/EndpointBuilder-DPLAUHqg.d.cts.map +1 -0
- package/dist/{EndpointBuilder-B3az942t.d.mts → EndpointBuilder-DaeCeneF.d.mts} +5 -5
- package/dist/EndpointBuilder-DaeCeneF.d.mts.map +1 -0
- package/dist/{EndpointBuilder-Cgj1P_ra.cjs → EndpointBuilder-J5D67Y6a.cjs} +6 -6
- package/dist/EndpointBuilder-J5D67Y6a.cjs.map +1 -0
- package/dist/{EndpointBuilder-DnCB1h1j.mjs → EndpointBuilder-tn4zqoyw.mjs} +6 -6
- package/dist/EndpointBuilder-tn4zqoyw.mjs.map +1 -0
- package/dist/{EndpointFactory-CbdxPCIH.mjs → EndpointFactory-CIUZTTAF.mjs} +7 -7
- package/dist/EndpointFactory-CIUZTTAF.mjs.map +1 -0
- package/dist/{EndpointFactory-CyPbm3AD.d.cts → EndpointFactory-CiKcb5PX.d.cts} +4 -4
- package/dist/EndpointFactory-CiKcb5PX.d.cts.map +1 -0
- package/dist/{EndpointFactory-C-0nE6Jg.d.mts → EndpointFactory-DufM0t2z.d.mts} +4 -4
- package/dist/EndpointFactory-DufM0t2z.d.mts.map +1 -0
- package/dist/{EndpointFactory-CYj6BYok.cjs → EndpointFactory-d5uwWFkK.cjs} +7 -7
- package/dist/EndpointFactory-d5uwWFkK.cjs.map +1 -0
- package/dist/{Function-DDZb1525.cjs → Function-2qWSZqYB.cjs} +3 -3
- package/dist/Function-2qWSZqYB.cjs.map +1 -0
- package/dist/{Function-Cf7f_kCz.d.cts → Function-CbEohg13.d.cts} +3 -3
- package/dist/Function-CbEohg13.d.cts.map +1 -0
- package/dist/{Function-BVHqIDp9.mjs → Function-CdF1HmFu.mjs} +3 -3
- package/dist/Function-CdF1HmFu.mjs.map +1 -0
- package/dist/{Function-DN2G6OT5.d.mts → Function-EjIOLxlh.d.mts} +3 -3
- package/dist/Function-EjIOLxlh.d.mts.map +1 -0
- package/dist/{FunctionBuilder-DswJ-9sD.cjs → FunctionBuilder-B-pbgm09.cjs} +4 -4
- package/dist/FunctionBuilder-B-pbgm09.cjs.map +1 -0
- package/dist/{FunctionBuilder-CJBzzXL3.d.cts → FunctionBuilder-CX3ooNdq.d.cts} +4 -4
- package/dist/FunctionBuilder-CX3ooNdq.d.cts.map +1 -0
- package/dist/{FunctionBuilder-Cxx8D2na.d.mts → FunctionBuilder-D11ytDyy.d.mts} +4 -4
- package/dist/FunctionBuilder-D11ytDyy.d.mts.map +1 -0
- package/dist/{FunctionBuilder-CrDYgfiI.mjs → FunctionBuilder-DaWVthAJ.mjs} +4 -4
- package/dist/FunctionBuilder-DaWVthAJ.mjs.map +1 -0
- package/dist/{FunctionExecutionWrapper-DF260Aaj.d.mts → FunctionExecutionWrapper-BJcRjH9Z.d.cts} +5 -5
- package/dist/FunctionExecutionWrapper-BJcRjH9Z.d.cts.map +1 -0
- package/dist/{FunctionExecutionWrapper-BYI2bGTL.cjs → FunctionExecutionWrapper-C6ChBNHs.cjs} +3 -3
- package/dist/FunctionExecutionWrapper-C6ChBNHs.cjs.map +1 -0
- package/dist/{FunctionExecutionWrapper-Qy8bmgFR.d.cts → FunctionExecutionWrapper-D3RNjGIR.d.mts} +5 -5
- package/dist/FunctionExecutionWrapper-D3RNjGIR.d.mts.map +1 -0
- package/dist/{FunctionExecutionWrapper-CLDh7Z2_.mjs → FunctionExecutionWrapper-Dj3pmXaN.mjs} +3 -3
- package/dist/FunctionExecutionWrapper-Dj3pmXaN.mjs.map +1 -0
- package/dist/{HonoEndpointAdaptor-BaPlUhz0.d.mts → HonoEndpointAdaptor-CKP6nrG2.d.mts} +11 -6
- package/dist/HonoEndpointAdaptor-CKP6nrG2.d.mts.map +1 -0
- package/dist/HonoEndpointAdaptor-Cc8Rnp9G.mjs +251 -0
- package/dist/HonoEndpointAdaptor-Cc8Rnp9G.mjs.map +1 -0
- package/dist/{HonoEndpointAdaptor-YcRHYALH.d.cts → HonoEndpointAdaptor-hrrvyfw9.d.cts} +10 -5
- package/dist/HonoEndpointAdaptor-hrrvyfw9.d.cts.map +1 -0
- package/dist/HonoEndpointAdaptor-xGnDZa3a.cjs +257 -0
- package/dist/HonoEndpointAdaptor-xGnDZa3a.cjs.map +1 -0
- package/dist/{Subscriber-COYMSevD.d.cts → Subscriber-BBcIOkhW.d.cts} +2 -2
- package/dist/Subscriber-BBcIOkhW.d.cts.map +1 -0
- package/dist/{Subscriber-ikctpU3I.d.mts → Subscriber-BpTAXvbM.d.mts} +2 -2
- package/dist/Subscriber-BpTAXvbM.d.mts.map +1 -0
- package/dist/{Subscriber-BiHjVXtM.cjs → Subscriber-CL4iYm01.cjs} +2 -2
- package/dist/Subscriber-CL4iYm01.cjs.map +1 -0
- package/dist/{Subscriber-BmPf9GFb.mjs → Subscriber-CZ8Smwd2.mjs} +2 -2
- package/dist/Subscriber-CZ8Smwd2.mjs.map +1 -0
- package/dist/{SubscriberBuilder-DJPEeYDJ.mjs → SubscriberBuilder-CxQg3TTm.mjs} +2 -2
- package/dist/SubscriberBuilder-CxQg3TTm.mjs.map +1 -0
- package/dist/{SubscriberBuilder-Cp1C-xtT.cjs → SubscriberBuilder-D0OS3hd7.cjs} +2 -2
- package/dist/SubscriberBuilder-D0OS3hd7.cjs.map +1 -0
- package/dist/{SubscriberBuilder-D_9zzllj.d.mts → SubscriberBuilder-D7IgufwB.d.cts} +3 -3
- package/dist/SubscriberBuilder-D7IgufwB.d.cts.map +1 -0
- package/dist/{SubscriberBuilder-ivHAGIVi.d.cts → SubscriberBuilder-DOFBbWLt.d.mts} +3 -3
- package/dist/SubscriberBuilder-DOFBbWLt.d.mts.map +1 -0
- package/dist/{TestEndpointAdaptor-DB7bREhS.d.mts → TestEndpointAdaptor-BnJusjf7.d.mts} +4 -4
- package/dist/TestEndpointAdaptor-BnJusjf7.d.mts.map +1 -0
- package/dist/TestEndpointAdaptor-CPL8ru6q.mjs +170 -0
- package/dist/TestEndpointAdaptor-CPL8ru6q.mjs.map +1 -0
- package/dist/TestEndpointAdaptor-Ca4K26_d.cjs +176 -0
- package/dist/TestEndpointAdaptor-Ca4K26_d.cjs.map +1 -0
- package/dist/{TestEndpointAdaptor-C10xBI--.d.cts → TestEndpointAdaptor-EPPTjntv.d.cts} +3 -3
- package/dist/TestEndpointAdaptor-EPPTjntv.d.cts.map +1 -0
- package/dist/adaptors/aws.cjs +12 -12
- package/dist/adaptors/aws.d.cts +15 -14
- package/dist/adaptors/aws.d.mts +16 -15
- package/dist/adaptors/aws.mjs +12 -12
- package/dist/adaptors/hono.cjs +10 -9
- package/dist/adaptors/hono.d.cts +8 -8
- package/dist/adaptors/hono.d.mts +9 -9
- package/dist/adaptors/hono.mjs +10 -9
- package/dist/adaptors/testing.cjs +8 -7
- package/dist/adaptors/testing.d.cts +8 -8
- package/dist/adaptors/testing.d.mts +9 -9
- package/dist/adaptors/testing.mjs +8 -7
- package/dist/crons/Cron.cjs +6 -6
- package/dist/crons/Cron.d.cts +6 -6
- package/dist/crons/Cron.d.mts +6 -6
- package/dist/crons/Cron.mjs +6 -6
- package/dist/crons/CronBuilder.cjs +7 -7
- package/dist/crons/CronBuilder.d.cts +7 -7
- package/dist/crons/CronBuilder.d.mts +7 -7
- package/dist/crons/CronBuilder.mjs +7 -7
- package/dist/crons/index.cjs +7 -7
- package/dist/crons/index.cjs.map +1 -1
- package/dist/crons/index.d.cts +11 -11
- package/dist/crons/index.d.mts +7 -7
- package/dist/crons/index.mjs +7 -7
- package/dist/crons/index.mjs.map +1 -1
- package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.cjs +7 -7
- package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.d.cts +10 -9
- package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.d.mts +11 -10
- package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.mjs +7 -7
- package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.cjs +8 -8
- package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.d.cts +10 -9
- package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.d.mts +11 -10
- package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.mjs +8 -8
- package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.cjs +8 -8
- package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.d.cts +11 -10
- package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.d.mts +12 -11
- package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.mjs +8 -8
- package/dist/endpoints/Authorizer.cjs +1 -1
- package/dist/endpoints/Authorizer.d.cts +1 -1
- package/dist/endpoints/Authorizer.d.mts +1 -1
- package/dist/endpoints/Authorizer.mjs +1 -1
- package/dist/endpoints/Endpoint.cjs +6 -6
- package/dist/endpoints/Endpoint.d.cts +7 -7
- package/dist/endpoints/Endpoint.d.mts +8 -8
- package/dist/endpoints/Endpoint.mjs +6 -6
- package/dist/endpoints/EndpointBuilder.cjs +9 -9
- package/dist/endpoints/EndpointBuilder.d.cts +8 -8
- package/dist/endpoints/EndpointBuilder.d.mts +9 -9
- package/dist/endpoints/EndpointBuilder.mjs +9 -9
- package/dist/endpoints/EndpointFactory.cjs +10 -10
- package/dist/endpoints/EndpointFactory.d.cts +9 -9
- package/dist/endpoints/EndpointFactory.d.mts +10 -10
- package/dist/endpoints/EndpointFactory.mjs +10 -10
- package/dist/endpoints/HonoEndpointAdaptor.cjs +10 -9
- package/dist/endpoints/HonoEndpointAdaptor.d.cts +8 -8
- package/dist/endpoints/HonoEndpointAdaptor.d.mts +9 -9
- package/dist/endpoints/HonoEndpointAdaptor.mjs +10 -9
- package/dist/endpoints/TestEndpointAdaptor.cjs +8 -7
- package/dist/endpoints/TestEndpointAdaptor.d.cts +8 -8
- package/dist/endpoints/TestEndpointAdaptor.d.mts +9 -9
- package/dist/endpoints/TestEndpointAdaptor.mjs +8 -7
- package/dist/endpoints/audit.d.cts +7 -7
- package/dist/endpoints/audit.d.mts +8 -8
- package/dist/endpoints/helpers.cjs +7 -7
- package/dist/endpoints/helpers.d.cts +7 -7
- package/dist/endpoints/helpers.d.cts.map +1 -1
- package/dist/endpoints/helpers.d.mts +8 -8
- package/dist/endpoints/helpers.d.mts.map +1 -1
- package/dist/endpoints/helpers.mjs +7 -7
- package/dist/endpoints/index.cjs +20 -10
- package/dist/endpoints/index.cjs.map +1 -1
- package/dist/endpoints/index.d.cts +14 -12
- package/dist/endpoints/index.d.cts.map +1 -1
- package/dist/endpoints/index.d.mts +15 -13
- package/dist/endpoints/index.d.mts.map +1 -1
- package/dist/endpoints/index.mjs +13 -11
- package/dist/endpoints/index.mjs.map +1 -1
- package/dist/endpoints/lazyAccessors.cjs +10 -0
- package/dist/endpoints/lazyAccessors.d.cts +10 -0
- package/dist/endpoints/lazyAccessors.d.mts +10 -0
- package/dist/endpoints/lazyAccessors.mjs +3 -0
- package/dist/endpoints/parseHonoQuery.cjs +1 -1
- package/dist/endpoints/parseHonoQuery.mjs +1 -1
- package/dist/endpoints/parseQueryParams.d.cts.map +1 -1
- package/dist/endpoints/parseQueryParams.d.mts.map +1 -1
- package/dist/endpoints/processAudits.d.cts +7 -7
- package/dist/endpoints/processAudits.d.cts.map +1 -1
- package/dist/endpoints/processAudits.d.mts +8 -8
- package/dist/endpoints/processAudits.d.mts.map +1 -1
- package/dist/endpoints/rls.cjs +1 -1
- package/dist/endpoints/rls.d.cts +7 -7
- package/dist/endpoints/rls.d.mts +8 -8
- package/dist/endpoints/rls.mjs +1 -1
- package/dist/functions/AWSLambdaFunction.cjs +6 -6
- package/dist/functions/AWSLambdaFunction.d.cts +4 -4
- package/dist/functions/AWSLambdaFunction.d.mts +4 -4
- package/dist/functions/AWSLambdaFunction.mjs +6 -6
- package/dist/functions/BaseFunctionBuilder.cjs +2 -2
- package/dist/functions/BaseFunctionBuilder.d.cts +2 -2
- package/dist/functions/BaseFunctionBuilder.d.mts +2 -2
- package/dist/functions/BaseFunctionBuilder.mjs +2 -2
- package/dist/functions/Function.cjs +2 -2
- package/dist/functions/Function.d.cts +2 -2
- package/dist/functions/Function.d.mts +2 -2
- package/dist/functions/Function.mjs +2 -2
- package/dist/functions/FunctionBuilder.cjs +4 -4
- package/dist/functions/FunctionBuilder.d.cts +4 -4
- package/dist/functions/FunctionBuilder.d.mts +4 -4
- package/dist/functions/FunctionBuilder.mjs +4 -4
- package/dist/functions/FunctionExecutionWrapper.cjs +5 -5
- package/dist/functions/FunctionExecutionWrapper.d.cts +3 -3
- package/dist/functions/FunctionExecutionWrapper.d.mts +3 -3
- package/dist/functions/FunctionExecutionWrapper.mjs +5 -5
- package/dist/functions/TestFunctionAdaptor.cjs +7 -7
- package/dist/functions/TestFunctionAdaptor.cjs.map +1 -1
- package/dist/functions/TestFunctionAdaptor.d.cts +3 -3
- package/dist/functions/TestFunctionAdaptor.d.cts.map +1 -1
- package/dist/functions/TestFunctionAdaptor.d.mts +3 -3
- package/dist/functions/TestFunctionAdaptor.d.mts.map +1 -1
- package/dist/functions/TestFunctionAdaptor.mjs +7 -7
- package/dist/functions/TestFunctionAdaptor.mjs.map +1 -1
- package/dist/functions/index.cjs +5 -5
- package/dist/functions/index.d.cts +5 -5
- package/dist/functions/index.d.mts +5 -5
- package/dist/functions/index.mjs +5 -5
- package/dist/{functions-fTid0RMK.cjs → functions-CUEv5NC3.cjs} +2 -2
- package/dist/functions-CUEv5NC3.cjs.map +1 -0
- package/dist/functions-DOYBrb7n.mjs +8 -0
- package/dist/functions-DOYBrb7n.mjs.map +1 -0
- package/dist/{helpers-ByRTDO_m.mjs → helpers-Dl1eszfi.mjs} +2 -2
- package/dist/helpers-Dl1eszfi.mjs.map +1 -0
- package/dist/{helpers-BcP1tXAi.cjs → helpers-QMdfdnvU.cjs} +2 -2
- package/dist/helpers-QMdfdnvU.cjs.map +1 -0
- package/dist/{index-BWzGIj06.d.mts → index-BrGtMlpJ.d.cts} +2 -2
- package/dist/index-BrGtMlpJ.d.cts.map +1 -0
- package/dist/index-Dn4py3Db.d.mts +12 -0
- package/dist/index-Dn4py3Db.d.mts.map +1 -0
- package/dist/index.cjs +4 -2
- package/dist/index.d.cts +3 -2
- package/dist/index.d.mts +4 -3
- package/dist/index.mjs +2 -2
- package/dist/lazyAccessors-B-Jgkg2o.mjs +175 -0
- package/dist/lazyAccessors-B-Jgkg2o.mjs.map +1 -0
- package/dist/lazyAccessors-B8Hhras9.cjs +223 -0
- package/dist/lazyAccessors-B8Hhras9.cjs.map +1 -0
- package/dist/lazyAccessors-BFAj2-S4.d.mts +49 -0
- package/dist/lazyAccessors-BFAj2-S4.d.mts.map +1 -0
- package/dist/lazyAccessors-knaNZuTN.d.cts +49 -0
- package/dist/lazyAccessors-knaNZuTN.d.cts.map +1 -0
- package/dist/{parseHonoQuery-CZC5_97v.cjs → parseHonoQuery-D4MhxTRc.cjs} +1 -1
- package/dist/parseHonoQuery-D4MhxTRc.cjs.map +1 -0
- package/dist/{parseHonoQuery-DDgIkTO4.mjs → parseHonoQuery-DpK3sGPc.mjs} +1 -1
- package/dist/parseHonoQuery-DpK3sGPc.mjs.map +1 -0
- package/dist/parseQueryParams-BSNkjmZ9.cjs.map +1 -1
- package/dist/parseQueryParams-UMTRnRrW.mjs.map +1 -1
- package/dist/processAudits-CzHkPokQ.cjs.map +1 -1
- package/dist/processAudits-Dj8UGqcW.mjs.map +1 -1
- package/dist/publisher-BXG9YiRi.d.mts +16 -0
- package/dist/publisher-BXG9YiRi.d.mts.map +1 -0
- package/dist/publisher-Bw4770Hi.mjs.map +1 -1
- package/dist/publisher-D9ngDXg3.d.cts +16 -0
- package/dist/publisher-D9ngDXg3.d.cts.map +1 -0
- package/dist/publisher-lFQleddL.cjs.map +1 -1
- package/dist/publisher.d.cts +3 -16
- package/dist/publisher.d.mts +3 -16
- package/dist/{rls-CmJ7bRsz.cjs → rls-BrywnrQb.cjs} +1 -1
- package/dist/{rls-CmJ7bRsz.cjs.map → rls-BrywnrQb.cjs.map} +1 -1
- package/dist/{rls-Bf3FRwto.mjs → rls-C0cWOnk4.mjs} +1 -1
- package/dist/{rls-Bf3FRwto.mjs.map → rls-C0cWOnk4.mjs.map} +1 -1
- 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.cjs +2 -2
- package/dist/subscribers/Subscriber.d.cts +2 -2
- package/dist/subscribers/Subscriber.d.mts +2 -2
- package/dist/subscribers/Subscriber.mjs +2 -2
- package/dist/subscribers/SubscriberBuilder.cjs +3 -3
- package/dist/subscribers/SubscriberBuilder.d.cts +3 -3
- package/dist/subscribers/SubscriberBuilder.d.mts +3 -3
- package/dist/subscribers/SubscriberBuilder.mjs +3 -3
- package/dist/subscribers/index.cjs +3 -3
- package/dist/subscribers/index.cjs.map +1 -1
- package/dist/subscribers/index.d.cts +5 -5
- package/dist/subscribers/index.d.cts.map +1 -1
- package/dist/subscribers/index.d.mts +5 -5
- package/dist/subscribers/index.d.mts.map +1 -1
- package/dist/subscribers/index.mjs +3 -3
- package/dist/subscribers/index.mjs.map +1 -1
- package/dist/telemetry-BTaiRqPo.d.cts +95 -0
- package/dist/telemetry-BTaiRqPo.d.cts.map +1 -0
- package/dist/telemetry-yAHf5yDs.d.mts +95 -0
- package/dist/telemetry-yAHf5yDs.d.mts.map +1 -0
- package/dist/telemetry.cjs +0 -0
- package/dist/telemetry.d.cts +2 -0
- package/dist/telemetry.d.mts +2 -0
- package/dist/telemetry.mjs +0 -0
- package/dist/types-B5H3piDg.d.cts.map +1 -1
- package/dist/{types-DdIlpxAd.d.mts → types-Dw-iLd3Y.d.mts} +1 -1
- package/dist/types-Dw-iLd3Y.d.mts.map +1 -0
- package/dist/types.d.mts +1 -1
- package/package.json +19 -18
- package/src/Construct.ts +189 -94
- package/src/__benchmarks__/build-time-optimization.bench.ts +274 -0
- package/src/__benchmarks__/endpoint.bench.ts +375 -375
- package/src/__benchmarks__/fixtures.ts +241 -0
- package/src/__benchmarks__/hono-adaptor.bench.ts +533 -0
- package/src/__benchmarks__/hono-server.bench.ts +206 -206
- package/src/__benchmarks__/response-builder.bench.ts +428 -0
- package/src/__benchmarks__/strategies/strategy-a-lazy-services.ts +319 -0
- package/src/__benchmarks__/strategies/strategy-c-middleware.ts +530 -0
- package/src/__benchmarks__/strategies/strategy-d-opt-in-events.ts +567 -0
- package/src/__tests__/Construct.environment.spec.ts +572 -351
- package/src/__tests__/publisher.setting.spec.ts +496 -499
- package/src/__tests__/publisher.spec.ts +440 -442
- package/src/crons/Cron.ts +117 -117
- package/src/crons/CronBuilder.ts +237 -238
- package/src/crons/__tests__/Cron.spec.ts +448 -448
- package/src/crons/__tests__/CronBuilder.state-isolation.spec.ts +214 -214
- package/src/crons/index.ts +4 -4
- package/src/endpoints/AmazonApiGatewayEndpointAdaptor.ts +571 -463
- package/src/endpoints/AmazonApiGatewayV1EndpointAdaptor.ts +86 -86
- package/src/endpoints/AmazonApiGatewayV2EndpointAdaptor.ts +85 -81
- package/src/endpoints/Authorizer.ts +100 -100
- package/src/endpoints/Endpoint.ts +921 -937
- package/src/endpoints/EndpointBuilder.ts +703 -703
- package/src/endpoints/EndpointFactory.ts +1054 -1056
- package/src/endpoints/HonoEndpointAdaptor.ts +621 -548
- package/src/endpoints/TestEndpointAdaptor.ts +372 -353
- package/src/endpoints/__tests__/AmazonApiGatewayV1EndpointAdaptor.audits.spec.ts +499 -0
- package/src/endpoints/__tests__/AmazonApiGatewayV1EndpointAdaptor.events.spec.ts +541 -542
- package/src/endpoints/__tests__/AmazonApiGatewayV1EndpointAdaptor.spec.ts +1172 -1174
- package/src/endpoints/__tests__/AmazonApiGatewayV2EndpointAdaptor.audits.spec.ts +599 -599
- package/src/endpoints/__tests__/AmazonApiGatewayV2EndpointAdaptor.events.spec.ts +710 -710
- package/src/endpoints/__tests__/AmazonApiGatewayV2EndpointAdaptor.factory-publisher.spec.ts +280 -280
- package/src/endpoints/__tests__/AmazonApiGatewayV2EndpointAdaptor.kysely-audit.integration.spec.ts +924 -730
- package/src/endpoints/__tests__/AmazonApiGatewayV2EndpointAdaptor.rls.spec.ts +307 -0
- package/src/endpoints/__tests__/AmazonApiGatewayV2EndpointAdaptor.spec.ts +408 -408
- package/src/endpoints/__tests__/Authorizer.spec.ts +286 -0
- package/src/endpoints/__tests__/Endpoint.cookies.spec.ts +162 -162
- package/src/endpoints/__tests__/Endpoint.headers.spec.ts +182 -182
- package/src/endpoints/__tests__/Endpoint.manifest.spec.ts +158 -159
- package/src/endpoints/__tests__/Endpoint.spec.ts +819 -822
- package/src/endpoints/__tests__/EndpointBuilder.audit.spec.ts +427 -427
- package/src/endpoints/__tests__/EndpointBuilder.spec.ts +478 -478
- package/src/endpoints/__tests__/EndpointFactory.authorizers.spec.ts +426 -426
- package/src/endpoints/__tests__/EndpointFactory.database-auditor.spec.ts +501 -501
- package/src/endpoints/__tests__/EndpointFactory.reference-audit.spec.ts +177 -177
- package/src/endpoints/__tests__/EndpointFactory.spec.ts +471 -471
- package/src/endpoints/__tests__/EndpointFactory.state-isolation.spec.ts +143 -143
- package/src/endpoints/__tests__/HonoEndpointAdaptor.audit-transactions.spec.ts +663 -663
- package/src/endpoints/__tests__/HonoEndpointAdaptor.audits.spec.ts +608 -608
- package/src/endpoints/__tests__/HonoEndpointAdaptor.events.spec.ts +561 -561
- package/src/endpoints/__tests__/HonoEndpointAdaptor.kysely-audit.integration.spec.ts +1036 -1036
- package/src/endpoints/__tests__/HonoEndpointAdaptor.openapi.spec.ts +278 -278
- package/src/endpoints/__tests__/HonoEndpointAdaptor.spec.ts +1093 -1093
- package/src/endpoints/__tests__/ResponseBuilder.spec.ts +230 -230
- package/src/endpoints/__tests__/TestEndpointAdaptor.audits.spec.ts +569 -569
- package/src/endpoints/__tests__/TestEndpointAdaptor.spec.ts +841 -841
- package/src/endpoints/__tests__/endpoint-types.test.ts +68 -68
- package/src/endpoints/__tests__/helpers.spec.ts +37 -0
- package/src/endpoints/__tests__/lazyAccessors.spec.ts +330 -0
- package/src/endpoints/__tests__/processAudits.spec.ts +631 -0
- package/src/endpoints/audit.ts +51 -51
- package/src/endpoints/helpers.ts +34 -35
- package/src/endpoints/index.ts +33 -23
- package/src/endpoints/lazyAccessors.ts +241 -0
- package/src/endpoints/parseHonoQuery.ts +41 -41
- package/src/endpoints/parseQueryParams.ts +36 -36
- package/src/endpoints/processAudits.ts +269 -269
- package/src/endpoints/rls.ts +16 -16
- package/src/functions/AWSLambdaFunction.ts +294 -295
- package/src/functions/BaseFunctionBuilder.ts +185 -185
- package/src/functions/Function.ts +190 -190
- package/src/functions/FunctionBuilder.ts +353 -353
- package/src/functions/FunctionExecutionWrapper.ts +199 -200
- package/src/functions/TestFunctionAdaptor.ts +191 -191
- package/src/functions/__tests__/AWSLambdaFunctionAdaptor.spec.ts +424 -424
- package/src/functions/__tests__/Function.audits.spec.ts +364 -364
- package/src/functions/__tests__/Function.spec.ts +453 -454
- package/src/functions/__tests__/FunctionBuilder.state-isolation.spec.ts +179 -179
- package/src/functions/__tests__/TestFunctionAdaptor.spec.ts +369 -369
- package/src/functions/index.ts +6 -4
- package/src/index.ts +18 -9
- package/src/publisher.ts +71 -72
- package/src/subscribers/AWSLambdaSubscriberAdaptor.ts +244 -248
- package/src/subscribers/Subscriber.ts +82 -84
- package/src/subscribers/SubscriberBuilder.ts +129 -129
- package/src/subscribers/__tests__/AWSLambdaSubscriberAdaptor.spec.ts +589 -589
- package/src/subscribers/__tests__/Subscriber.spec.ts +402 -404
- package/src/subscribers/index.ts +1 -0
- package/src/telemetry.ts +103 -0
- package/src/types.ts +7 -7
- package/test.ts +58 -59
- package/dist/AWSLambdaFunction-BdebRMUh.d.mts.map +0 -1
- package/dist/AWSLambdaFunction-C54a1doJ.mjs.map +0 -1
- package/dist/AWSLambdaFunction-D0tEOTXQ.d.cts.map +0 -1
- package/dist/AWSLambdaFunction-EPGY4s7i.cjs.map +0 -1
- package/dist/AWSLambdaSubscriberAdaptor-BLfO612H.mjs.map +0 -1
- package/dist/AWSLambdaSubscriberAdaptor-BNcYYZ-P.cjs.map +0 -1
- package/dist/AWSLambdaSubscriberAdaptor-DrFAvHOp.d.mts.map +0 -1
- package/dist/AWSLambdaSubscriberAdaptor-Dx-Ks1Jp.d.cts.map +0 -1
- package/dist/AmazonApiGatewayEndpointAdaptor-BT9JXihC.mjs.map +0 -1
- package/dist/AmazonApiGatewayEndpointAdaptor-DLqnYQ4E.d.cts.map +0 -1
- package/dist/AmazonApiGatewayEndpointAdaptor-DNFvvdmW.cjs.map +0 -1
- package/dist/AmazonApiGatewayEndpointAdaptor-qlKXuZxy.d.mts.map +0 -1
- package/dist/AmazonApiGatewayV1EndpointAdaptor-CShQI8Gk.mjs.map +0 -1
- package/dist/AmazonApiGatewayV1EndpointAdaptor-Ccl8B8kG.cjs.map +0 -1
- package/dist/AmazonApiGatewayV1EndpointAdaptor-DyUaJIhB.d.cts.map +0 -1
- package/dist/AmazonApiGatewayV1EndpointAdaptor-MRUxs3Xi.d.mts.map +0 -1
- package/dist/AmazonApiGatewayV2EndpointAdaptor-D8-0Aab4.cjs.map +0 -1
- package/dist/AmazonApiGatewayV2EndpointAdaptor-M1-w0U5R.d.cts.map +0 -1
- package/dist/AmazonApiGatewayV2EndpointAdaptor-fuLM6M9k.d.mts.map +0 -1
- package/dist/AmazonApiGatewayV2EndpointAdaptor-lCRzGE4q.mjs.map +0 -1
- package/dist/Authorizer-B-btowNd.d.cts.map +0 -1
- package/dist/Authorizer-C0ge_tc8.cjs.map +0 -1
- package/dist/Authorizer-gWxYsGEp.d.mts.map +0 -1
- package/dist/Authorizer-r9U3y_ms.mjs.map +0 -1
- package/dist/BaseFunctionBuilder-BAtutR6q.d.cts.map +0 -1
- package/dist/BaseFunctionBuilder-Czi1Jwza.mjs.map +0 -1
- package/dist/BaseFunctionBuilder-DRY419e7.d.mts.map +0 -1
- package/dist/BaseFunctionBuilder-MYG3C9ug.cjs.map +0 -1
- package/dist/Construct-Ba5cMxib.cjs.map +0 -1
- package/dist/Construct-C4rPE67v.d.cts.map +0 -1
- package/dist/Construct-DdyGHuag.mjs +0 -78
- package/dist/Construct-DdyGHuag.mjs.map +0 -1
- package/dist/Construct-XrijZFFh.d.mts.map +0 -1
- package/dist/Cron-BxhGs5up.mjs.map +0 -1
- package/dist/Cron-CGF4YAfM.cjs.map +0 -1
- package/dist/Cron-bDLcTvV5.d.cts.map +0 -1
- package/dist/Cron-cdjlSKNp.d.mts.map +0 -1
- package/dist/CronBuilder-BC4m5-p1.d.mts.map +0 -1
- package/dist/CronBuilder-CcxKRtVP.cjs.map +0 -1
- package/dist/CronBuilder-DKVXyE0Q.d.cts.map +0 -1
- package/dist/CronBuilder-d2jh-IB2.mjs.map +0 -1
- package/dist/Endpoint-BPv9_-m_.d.cts.map +0 -1
- package/dist/Endpoint-BVGZXFyV.cjs.map +0 -1
- package/dist/Endpoint-BdwG75G_.d.mts.map +0 -1
- package/dist/Endpoint-CuOEswxJ.mjs.map +0 -1
- package/dist/EndpointBuilder-B3az942t.d.mts.map +0 -1
- package/dist/EndpointBuilder-Cgj1P_ra.cjs.map +0 -1
- package/dist/EndpointBuilder-DIy_m1bu.d.cts.map +0 -1
- package/dist/EndpointBuilder-DnCB1h1j.mjs.map +0 -1
- package/dist/EndpointFactory-C-0nE6Jg.d.mts.map +0 -1
- package/dist/EndpointFactory-CYj6BYok.cjs.map +0 -1
- package/dist/EndpointFactory-CbdxPCIH.mjs.map +0 -1
- package/dist/EndpointFactory-CyPbm3AD.d.cts.map +0 -1
- package/dist/Function-BVHqIDp9.mjs.map +0 -1
- package/dist/Function-Cf7f_kCz.d.cts.map +0 -1
- package/dist/Function-DDZb1525.cjs.map +0 -1
- package/dist/Function-DN2G6OT5.d.mts.map +0 -1
- package/dist/FunctionBuilder-CJBzzXL3.d.cts.map +0 -1
- package/dist/FunctionBuilder-CrDYgfiI.mjs.map +0 -1
- package/dist/FunctionBuilder-Cxx8D2na.d.mts.map +0 -1
- package/dist/FunctionBuilder-DswJ-9sD.cjs.map +0 -1
- package/dist/FunctionExecutionWrapper-BYI2bGTL.cjs.map +0 -1
- package/dist/FunctionExecutionWrapper-CLDh7Z2_.mjs.map +0 -1
- package/dist/FunctionExecutionWrapper-DF260Aaj.d.mts.map +0 -1
- package/dist/FunctionExecutionWrapper-Qy8bmgFR.d.cts.map +0 -1
- package/dist/HonoEndpointAdaptor-BaPlUhz0.d.mts.map +0 -1
- package/dist/HonoEndpointAdaptor-CQe2FqMR.cjs +0 -234
- package/dist/HonoEndpointAdaptor-CQe2FqMR.cjs.map +0 -1
- package/dist/HonoEndpointAdaptor-Ce-2HBxn.mjs +0 -228
- package/dist/HonoEndpointAdaptor-Ce-2HBxn.mjs.map +0 -1
- package/dist/HonoEndpointAdaptor-YcRHYALH.d.cts.map +0 -1
- package/dist/Subscriber-BiHjVXtM.cjs.map +0 -1
- package/dist/Subscriber-BmPf9GFb.mjs.map +0 -1
- package/dist/Subscriber-COYMSevD.d.cts.map +0 -1
- package/dist/Subscriber-ikctpU3I.d.mts.map +0 -1
- package/dist/SubscriberBuilder-Cp1C-xtT.cjs.map +0 -1
- package/dist/SubscriberBuilder-DJPEeYDJ.mjs.map +0 -1
- package/dist/SubscriberBuilder-D_9zzllj.d.mts.map +0 -1
- package/dist/SubscriberBuilder-ivHAGIVi.d.cts.map +0 -1
- package/dist/TestEndpointAdaptor-C10xBI--.d.cts.map +0 -1
- package/dist/TestEndpointAdaptor-DB7bREhS.d.mts.map +0 -1
- package/dist/TestEndpointAdaptor-DJgik2Wj.mjs +0 -160
- package/dist/TestEndpointAdaptor-DJgik2Wj.mjs.map +0 -1
- package/dist/TestEndpointAdaptor-ZbtQiuHE.cjs +0 -166
- package/dist/TestEndpointAdaptor-ZbtQiuHE.cjs.map +0 -1
- package/dist/functions-C6EK1xL6.mjs +0 -8
- package/dist/functions-C6EK1xL6.mjs.map +0 -1
- package/dist/functions-fTid0RMK.cjs.map +0 -1
- package/dist/helpers-BcP1tXAi.cjs.map +0 -1
- package/dist/helpers-ByRTDO_m.mjs.map +0 -1
- package/dist/index-BWzGIj06.d.mts.map +0 -1
- package/dist/index-DmFozqLd.d.cts +0 -12
- package/dist/index-DmFozqLd.d.cts.map +0 -1
- package/dist/parseHonoQuery-CZC5_97v.cjs.map +0 -1
- package/dist/parseHonoQuery-DDgIkTO4.mjs.map +0 -1
- package/dist/publisher.d.cts.map +0 -1
- package/dist/publisher.d.mts.map +0 -1
- package/dist/types-DdIlpxAd.d.mts.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { HttpMethod } from "./types-B5H3piDg.cjs";
|
|
2
|
-
import { BaseFunctionBuilder } from "./BaseFunctionBuilder-
|
|
3
|
-
import { Authorizer, SecurityScheme } from "./Authorizer-
|
|
4
|
-
import { ActorExtractor, AuthorizeFn, Endpoint, EndpointHandler, EndpointSchemas, MappedAudit, RlsBypass, RlsConfig, SessionFn, SuccessStatus } from "./Endpoint-
|
|
2
|
+
import { BaseFunctionBuilder } from "./BaseFunctionBuilder-CcK691ni.cjs";
|
|
3
|
+
import { Authorizer, SecurityScheme } from "./Authorizer-DWtwC8we.cjs";
|
|
4
|
+
import { ActorExtractor, AuthorizeFn, Endpoint, EndpointHandler, EndpointSchemas, MappedAudit, RlsBypass, RlsConfig, SessionFn, SuccessStatus } from "./Endpoint-BlcHiGNx.cjs";
|
|
5
5
|
import { AuditStorage, AuditableAction, ExtractStorageAuditAction } from "@geekmidas/audit";
|
|
6
6
|
import { EventPublisher, MappedEvent } from "@geekmidas/events";
|
|
7
7
|
import { Logger } from "@geekmidas/logger";
|
|
@@ -142,4 +142,4 @@ declare class EndpointBuilder<TRoute extends string, TMethod extends HttpMethod,
|
|
|
142
142
|
|
|
143
143
|
//#endregion
|
|
144
144
|
export { EndpointBuilder };
|
|
145
|
-
//# sourceMappingURL=EndpointBuilder-
|
|
145
|
+
//# sourceMappingURL=EndpointBuilder-DPLAUHqg.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EndpointBuilder-DPLAUHqg.d.cts","names":[],"sources":["../src/endpoints/EndpointBuilder.ts"],"sourcesContent":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { HttpMethod } from "./types-
|
|
2
|
-
import { BaseFunctionBuilder } from "./BaseFunctionBuilder-
|
|
3
|
-
import { Authorizer, SecurityScheme } from "./Authorizer-
|
|
4
|
-
import { ActorExtractor, AuthorizeFn, Endpoint, EndpointHandler, EndpointSchemas, MappedAudit, RlsBypass, RlsConfig, SessionFn, SuccessStatus } from "./Endpoint-
|
|
1
|
+
import { HttpMethod } from "./types-Dw-iLd3Y.mjs";
|
|
2
|
+
import { BaseFunctionBuilder } from "./BaseFunctionBuilder-BqZCqIeU.mjs";
|
|
3
|
+
import { Authorizer, SecurityScheme } from "./Authorizer-DCcYOx3h.mjs";
|
|
4
|
+
import { ActorExtractor, AuthorizeFn, Endpoint, EndpointHandler, EndpointSchemas, MappedAudit, RlsBypass, RlsConfig, SessionFn, SuccessStatus } from "./Endpoint-DEHuy46S.mjs";
|
|
5
5
|
import { Service } from "@geekmidas/services";
|
|
6
6
|
import { AuditStorage, AuditableAction, ExtractStorageAuditAction } from "@geekmidas/audit";
|
|
7
7
|
import { RateLimitConfig } from "@geekmidas/rate-limit";
|
|
@@ -142,4 +142,4 @@ declare class EndpointBuilder<TRoute extends string, TMethod extends HttpMethod,
|
|
|
142
142
|
|
|
143
143
|
//#endregion
|
|
144
144
|
export { EndpointBuilder };
|
|
145
|
-
//# sourceMappingURL=EndpointBuilder-
|
|
145
|
+
//# sourceMappingURL=EndpointBuilder-DaeCeneF.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EndpointBuilder-DaeCeneF.d.mts","names":[],"sources":["../src/endpoints/EndpointBuilder.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;;;AA2B4B,cAAf,eAAe,CAAA,eAAA,MAAA,EAAA,gBAEX,UAFW,EAAA,eAGZ,eAHY,GAAA,CAAA,CAAA,EAAA,kBAIT,OAJS,EAAA,GAAA,EAAA,EAAA,gBAKX,MALW,GAKF,MALE,EAAA,kBAMT,gBANS,GAAA,SAAA,GAAA,SAAA,EAAA,WAAA,OAAA,EAAA,wBAQH,cARG,CAAA,GAAA,CAAA,GAAA,SAAA,GAAA,SAAA,EAAA,mCAAA,MAAA,GAAA,MAAA,EAAA,qBAAA,SAAA,MAAA,EAAA,GAAA,SAAA,MAAA,EAAA,EAAA,sBAWL,YAXK,GAAA,SAAA,GAAA,SAAA,EAAA,iCAAA,MAAA,GAAA,MAAA,EAAA,qBAaN,eAbM,CAAA,MAAA,EAAA,OAAA,CAAA,GAa6B,eAb7B,CAAA,MAAA,EAAA,OAAA,CAAA,EAAA,YAAA,SAAA,EAAA,6BAAA,MAAA,GAAA,MAAA,CAAA,SAmBlB,mBAnBkB,CAoB3B,MApB2B,EAqB3B,SArB2B,EAsB3B,SAtB2B,EAuB3B,OAvB2B,EAwB3B,eAxB2B,EAyB3B,0BAzB2B,EA0B3B,aA1B2B,EA2B3B,wBA3B2B,EA4B3B,SA5B2B,EA6B3B,oBA7B2B,CAAA,CAAA;EAAA,SAEX,KAAA,EA+CC,MA/CD;EAAU,SACX,MAAA,EA+CG,OA/CH;EAAe,UACZ,OAAA,EA2BC,MA3BD;EAAO,UACT,YAAA,CAAA,EAAA,MAAA;EAAM,UAAG,OAAA,CAAA,EA4BL,aA5BK;EAAM,UACb,KAAA,CAAA,EAAA,MAAA,EAAA;EAAgB,UAEV,WAAA,CAAA,EAAA,MAAA;EAAc,WAGhB,EAyBT,SAzBS,CAyBC,SAzBD,EAyBY,OAzBZ,EAyBqB,QAzBrB,EAyB+B,SAzB/B,CAAA;EAAY,UAEb,EAyBT,WAzBS,CAyBG,SAzBH,EAyBc,OAzBd,EAyBuB,QAzBvB,CAAA;EAAe,UAAoB,CAAA,EA0B3C,eA1B2C;EAAe,qBAOvE,EAoBuB,UApBvB,EAAA;EAAM,eACN,CAAA,EAoBkB,YApBlB,CAAA,MAAA,CAAA;EAAS,eACT,CAAA,EAoBkB,cApBlB,CAoBiC,SApBjC,EAoB4C,QApB5C,EAoBsD,OApBtD,CAAA;EAAS,OACT,EAoBS,WApBT,CAoBqB,YApBrB,EAoBmC,SApBnC,CAAA,EAAA;EAAO,sBACP,EAoBwB,MApBxB,CAAA,MAAA,EAoBuC,cApBvC,CAAA;EAAe,UACf,CAAA,EAoBa,SApBb,CAoBuB,SApBvB,EAoBkC,QApBlC,EAoB4C,OApB5C,CAAA;EAA0B,UAC1B,CAAA,EAAA,OAAA;EAAa,WACb,CAAA,KAAA,EAsBiB,MAtBjB,EAAA,MAAA,EAuBkB,OAvBlB;EAAwB,aACxB,CAAA,SAAA,EA6BY,OA7BZ,CA6BoB,0BA7BpB,EA6BgD,eA7BhD,CAAA,CAAA,EAAA,IAAA;EAAS,kBACT,CAAA,OAAA,EAmCU,OAnCV,CAmCkB,wBAnClB,EAmC4C,aAnC5C,CAAA,CAAA,EAAA,IAAA;EAAoB,mBAoBH,CAAA,OAAA,EAqBY,OArBZ,CAqBoB,oBArBpB,EAqB0C,SArB1C,CAAA,CAAA,EAAA,IAAA;EAAM,WACL,CAAA,WAAA,EAAA,MAAA,CAAA,EAAA,IAAA;EAAO,MAnBN,CAAA,MAAA,EAgDJ,aAhDI,CAAA,EAAA,IAAA;EAAM,KAEL,CAAA,eAmDU,WAnDV,CAmDsB,eAnDtB,EAmDuC,SAnDvC,CAAA,CAAA,CAAA,KAAA,EAoDZ,MApDY,CAAA,EAAA,IAAA;EAAa,IAGV,CAAA,IAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA;EAAS,UAAE,CAAA,UAAA,EAAA,MAAA,CAAA,EAAA,IAAA;EAAO,SAAE,CAAA,UAiEd,cAjEc,CAAA,GAAA,CAAA,EAAA,cAAA,MAAA,CAAA,CAAA,SAAA,EAkE/B,OAlE+B,CAkEvB,KAlEuB,EAkEhB,CAlEgB,CAAA,CAAA,EAmExC,eAnEwC,CAoE1C,MApE0C,EAqE1C,OArE0C,EAsE1C,MAtE0C,EAuE1C,SAvE0C,EAwE1C,OAxE0C,EAyE1C,SAzE0C,EA0E1C,QA1E0C,EA2E1C,CA3E0C,EA4E1C,KA5E0C,EA6E1C,YA7E0C,EA8E1C,aA9E0C,EA+E1C,wBA/E0C,EAgF1C,YAhF0C,EAiF1C,SAjF0C,EAkF1C,oBAlF0C,CAAA;EAAQ,IAAE,CAAA,UA4GtC,gBA5GsC,CAAA,CAAA,MAAA,EA6G5C,CA7G4C,CAAA,EA8GlD,eA9GkD,CA+GpD,MA/GoD,EAgHpD,OAhHoD,EAiHpD,IAjHoD,CAiH/C,MAjH+C,EAAA,MAAA,CAAA,GAAA;IAAxC,IAAA,EAiHmB,CAjHnB;EAAS,CAAA,EAkHrB,SAhHuB,EAiHvB,OAjHuB,EAkHvB,SAlHuB,EAmHvB,QAnHuB,EAoHvB,eApHuB,EAqHvB,0BArHuB,EAsHvB,YAtHuB,EAuHvB,aAvHuB,EAwHvB,wBAxHuB,EAyHvB,YAzHuB,EA0HvB,SA1HuB,EA2HvB,oBA3HuB,CAAA;EAAS,MAAE,CAAA,UAkIlB,gBAlIkB,CAAA,CAAA,MAAA,EAmI1B,CAnI0B,CAAA,EAoIhC,eApIgC,CAqIlC,MArIkC,EAsIlC,OAtIkC,EAuIlC,IAvIkC,CAuI7B,MAvI6B,EAAA,OAAA,CAAA,GAAA;IAAS,KAAA,EAuIV,CAvIU;EAAQ,CAAA,EAwInD,SAxIW,EAyIX,OAzIW,EA0IX,SA1IW,EA2IX,QA3IW,EA4IX,eA5IW,EA6IX,0BA7IW,EA8IX,YA9IW,EA+IX,aA/IW,EAgJX,wBAhJW,EAiJX,YAjJW,EAkJX,SAlJW,EAmJX,oBAnJW,CAAA;EAAW,KACV,CAAA,UAyJG,gBAzJH,CAAA,CAAA,MAAA,EA0JJ,CA1JI,CAAA,EA2JV,eA3JU,CA4JZ,MA5JY,EA6JZ,OA7JY,EA8JZ,IA9JY,CA8JP,MA9JO,EAAA,OAAA,CAAA,GAAA;IACU,KAAA,EA6JW,CA7JX;EAAU,CAAA,EA8JhC,SA7JiB,EA8JjB,OA9JiB,EA+JjB,SA/JiB,EAgKjB,QAhKiB,EAiKjB,eAjKiB,EAkKjB,0BAlKiB,EAmKjB,YAnKiB,EAoKjB,aApKiB,EAqKjB,wBArKiB,EAsKjB,YAtKiB,EAuKjB,SAvKiB,EAwKjB,oBAxKiB,CAAA;EAAY,MACG,CAAA,UA4KhB,gBA5KgB,CAAA,CAAA,MAAA,EA6KxB,CA7KwB,CAAA,EA8K9B,eA9K8B,CA+KhC,MA/KgC,EAgLhC,OAhLgC,EAiLhC,IAjLgC,CAiL3B,MAjL2B,EAAA,QAAA,CAAA,GAAA;IAAW,MAAA,EAiLR,CAjLQ;EAAQ,CAAA,EAkLnD,SAlLqD,EAmLrD,OAnLqD,EAoLrD,SApLqD,EAqLrD,QArLqD,EAsLrD,eAtLqD,EAuLrD,0BAvLqD,EAwLrD,YAxLqD,EAyLrD,aAzLqD,EA0LrD,wBA1LqD,EA2LrD,YA3LqD,EA4LrD,SA5LqD,EA6LrD,oBA7LqD,CAAA;EAAO,SAA3C,CAAA,MAAA,EAoMA,eApMA,CAAA,EAAA,IAAA;EAAc,UACX,CAAA,IAAA,EAyMd,YAzMc,CAAA,MAAA,CAAA,GAAA,MAAA,CAAA,EA0MlB,eA1MkB,CA2MpB,MA3MoB,EA4MpB,OA5MoB,EA6MpB,MA7MoB,EA8MpB,SA9MoB,EA+MpB,OA/MoB,EAgNpB,SAhNoB,EAiNpB,QAjNoB,EAkNpB,eAlNoB,EAmNpB,0BAnNoB,EAoNpB,YApNoB,EAqNpB,aArNoB,EAsNpB,wBAtNoB,EAuNpB,YAvNoB,EAwNpB,SAxNoB,EAyNpB,oBAzNoB,CAAA;EAAY,QAAE,CAAA,UAiPhB,OAjPgB,EAAA,CAAA,CAAA,QAAA,EAkPxB,CAlPwB,CAAA,EAmPhC,eAnPgC,CAoPlC,MApPkC,EAqPlC,OArPkC,EAsPlC,MAtPkC,EAAA,CAA1B,GAuPJ,SAvPI,EAC8B,GAsPpB,CAtPoB,CAAc,EAuPpD,OAvPuB,EAwPvB,SAxPuB,EAyPvB,QAzPuB,EA0PvB,eA1PuB,EA2PvB,0BA3PuB,EA4PvB,YA5PuB,EA6PvB,aA7PuB,EA8PvB,wBA9PuB,EA+PvB,YA/PuB,EAgQvB,SAhQuB,EAiQvB,oBAjQuB,CAAA;EAAM,MACP,CAAA,UA0RN,MA1RM,CAAA,CAAA,MAAA,EA2Rd,CA3Rc,CAAA,EA4RpB,eA5RoB,CA6RtB,MA7RsB,EA8RtB,OA9RsB,EA+RtB,MA/RsB,EAgStB,SAhSsB,EAiStB,CAjSsB,EAkStB,SAlSsB,EAmStB,QAnSsB,EAoStB,eApSsB,EAqStB,0BArSsB,EAsStB,YAtSsB,EAuStB,aAvSsB,EAwStB,wBAxSsB,EAyStB,YAzSsB,EA0StB,SA1SsB,EA2StB,oBA3SsB,CAAA;EAAS,MAAE,CAAA,UAkUjB,gBAlUiB,CAAA,CAAA,MAAA,EAmUzB,CAnUyB,CAAA,EAoU/B,eApU+B,CAqUjC,MArUiC,EAsUjC,OAtUiC,EAuUjC,MAvUiC,EAwUjC,SAxUiC,EAyUjC,OAzUiC,EA0UjC,CA1UiC,EA2UjC,QA3UiC,EA4UjC,eA5UiC,EA6UjC,0BA7UiC,EA8UjC,YA9UiC,EA+UjC,aA/UiC,EAgVjC,wBAhViC,EAiVjC,YAjViC,EAkVjC,SAlViC,EAmVjC,oBAnViC,CAAA;EAAQ;;;;;EAYI,OAAE,CAAA,UAmWrB,YAnWqB,CAAA,GAAA,CAAA,EAAA,cAAA,MAAA,CAAA,CAAA,OAAA,EAoWtC,OApWsC,CAoW9B,KApW8B,EAoWvB,CApWuB,CAAA,CAAA,EAqW7C,eArW6C,CAsW/C,MAtW+C,EAuW/C,OAvW+C,EAwW/C,MAxW+C,EAyW/C,SAzW+C,EA0W/C,OA1W+C,EA2W/C,SA3W+C,EA4W/C,QA5W+C,EA6W/C,eA7W+C,EA8W/C,0BA9W+C,EA+W/C,YA/W+C,EAgX/C,CAhX+C,EAiX/C,KAjX+C,EAkX/C,yBAlX+C,CAkXrB,CAlXqB,CAAA,EAmX/C,SAnX+C,EAoX/C,oBApX+C,CAAA;EAAe;;;;EAO9C,KAMoB,CAAA,SAAA,EAsYzB,cAtYyB,CAsYV,SAtYU,EAsYC,QAtYD,EAsYW,OAtYX,CAAA,CAAA,EAuYlC,eAvYkC,CAwYpC,MAxYoC,EAyYpC,OAzYoC,EA0YpC,MA1YoC,EA2YpC,SA3YoC,EA4YpC,OA5YoC,EA6YpC,SA7YoC,EA8YpC,QA9YoC,EA+YpC,eA/YoC,EAgZpC,0BAhZoC,EAiZpC,YAjZoC,EAkZpC,aAlZoC,EAmZpC,wBAnZoC,EAoZpC,YApZoC,EAqZpC,SArZoC,EAsZpC,oBAtZoC,CAAA;EAAoB;;;;;;;;;;;;;;;;;EAuC/C,KACT,CAAA,MAAA,EAqYa,WArYb,CAqYyB,YArYzB,EAqYuC,SArYvC,CAAA,EAAA,CAAA,EAAA,IAAA;EAAQ;;;;;;;;;;;;;;;EAuCJ,QAA2B,CAAA,CAAA,EAAA,cAAA,MAAA,CAAA,CAAA,OAAA,EAmXtB,OAnXsB,CAmXd,KAnXc,EAmXP,CAnXO,CAAA,CAAA,EAoX7B,eApX6B,CAqX/B,MArX+B,EAsX/B,OAtX+B,EAuX/B,MAvX+B,EAwX/B,SAxX+B,EAyX/B,OAzX+B,EA0X/B,SA1X+B,EA2X/B,QA3X+B,EA4X/B,eA5X+B,EA6X/B,0BA7X+B,EA8X/B,YA9X+B,EA+X/B,aA/X+B,EAgY/B,wBAhY+B,EAiY/B,YAjY+B,EAkY/B,CAlY+B,EAmY/B,KAnY+B,CAAA;EAAC;;;;;;;;;;;;;;;;;;;EAwB5B,GAA6B,CAAA,MAAA,EAyZzB,SAzZyB,CAyZf,SAzZe,EAyZJ,QAzZI,EAyZM,OAzZN,CAAA,GAAA,KAAA,GAyZyB,SAzZzB,CAAA,EAAA,IAAA;EAAC;;;;;;;;;;;;;EAHjB,SAsBF,CAAA,CAAA,EAAA,IAAA;EAAgB,KACvB,CAAA,OAAA,EAAA,GAAA,CAAA,EAAA,GAAA;EAAC,MAET,CAAA,EAAA,EA0aI,eA1aJ,CA2aC,MA3aD,EA4aC,SA5aD,EA6aC,OA7aD,EA8aC,SA9aD,EA+aC,QA/aD,EAgbC,SAhbD,EAibC,aAjbD,EAkbC,YAlbD,CAAA,CAAA,EAobE,QApbF,CAqbA,MArbA,EAsbA,OAtbA,EAubA,MAvbA,EAwbA,SAxbA,EAybA,SAzbA,EA0bA,OA1bA,EA2bA,QA3bA,EA4bA,eA5bA,EA6bA,0BA7bA,EA8bA,aA9bA,EA+bA,wBA/bA,EAgcA,YAhcA,EAicA,SAjcA,EAkcA,oBAlcA,CAAA"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
const require_chunk = require('./chunk-CUT6urMc.cjs');
|
|
2
|
-
const require_Construct = require('./Construct-
|
|
3
|
-
const require_BaseFunctionBuilder = require('./BaseFunctionBuilder-
|
|
4
|
-
const require_Endpoint = require('./Endpoint-
|
|
5
|
-
const require_Authorizer = require('./Authorizer-
|
|
6
|
-
const require_rls = require('./rls-
|
|
2
|
+
const require_Construct = require('./Construct-CPrCF8NK.cjs');
|
|
3
|
+
const require_BaseFunctionBuilder = require('./BaseFunctionBuilder-Z0XwrKB5.cjs');
|
|
4
|
+
const require_Endpoint = require('./Endpoint-BCWVbi8l.cjs');
|
|
5
|
+
const require_Authorizer = require('./Authorizer-BXxBee2P.cjs');
|
|
6
|
+
const require_rls = require('./rls-BrywnrQb.cjs');
|
|
7
7
|
const lodash_uniqby = require_chunk.__toESM(require("lodash.uniqby"));
|
|
8
8
|
|
|
9
9
|
//#region src/endpoints/EndpointBuilder.ts
|
|
@@ -261,4 +261,4 @@ Object.defineProperty(exports, 'EndpointBuilder', {
|
|
|
261
261
|
return EndpointBuilder;
|
|
262
262
|
}
|
|
263
263
|
});
|
|
264
|
-
//# sourceMappingURL=EndpointBuilder-
|
|
264
|
+
//# sourceMappingURL=EndpointBuilder-J5D67Y6a.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EndpointBuilder-J5D67Y6a.cjs","names":["BaseFunctionBuilder","route: TRoute","method: TMethod","ConstructType","publisher: Service<TEventPublisherServiceName, TEventPublisher>","storage: Service<TAuditStorageServiceName, TAuditStorage>","service: Service<TDatabaseServiceName, TDatabase>","description: string","status: SuccessStatus","event: TEvent","tags: string[]","memorySize: number","publisher: Service<TName, T>","schema: T","config: RateLimitConfig","name: TAuthorizers[number] | 'none'","services: T","logger: T","storage: Service<TName, T>","extractor: ActorExtractor<TServices, TSession, TLogger>","audits: MappedAudit<TAuditAction, OutSchema>[]","service: Service<TName, T>","config: RlsConfig<TServices, TSession, TLogger> | false | RlsBypass","RLS_BYPASS","_schema: any","fn: EndpointHandler<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTSession,\n\t\t\tTDatabase,\n\t\t\tTAuditStorage,\n\t\t\tTAuditAction\n\t\t>","authorizer: Authorizer | undefined","Endpoint"],"sources":["../src/endpoints/EndpointBuilder.ts"],"sourcesContent":["import type {\n\tAuditableAction,\n\tAuditStorage,\n\tExtractStorageAuditAction,\n} from '@geekmidas/audit';\nimport type { EventPublisher, MappedEvent } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport type { RateLimitConfig } from '@geekmidas/rate-limit';\nimport type { Service } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport uniqBy from 'lodash.uniqby';\nimport { ConstructType } from '../Construct';\nimport { BaseFunctionBuilder } from '../functions';\nimport type { HttpMethod } from '../types';\nimport type { Authorizer, SecurityScheme } from './Authorizer';\nimport { getSecurityScheme } from './Authorizer';\nimport type { ActorExtractor, MappedAudit } from './audit';\nimport type {\n\tAuthorizeFn,\n\tEndpointHandler,\n\tSessionFn,\n\tSuccessStatus,\n} from './Endpoint';\nimport { Endpoint, type EndpointSchemas } from './Endpoint';\nimport type { RlsBypass, RlsConfig } from './rls';\nimport { RLS_BYPASS } from './rls';\n\nexport class EndpointBuilder<\n\tTRoute extends string,\n\tTMethod extends HttpMethod,\n\tTInput extends EndpointSchemas = {},\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTSession = unknown,\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTAuthorizers extends readonly string[] = readonly string[],\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTAuditStorageServiceName extends string = string,\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n\tTDatabase = undefined,\n\tTDatabaseServiceName extends string = string,\n> extends BaseFunctionBuilder<\n\tTInput,\n\tOutSchema,\n\tTServices,\n\tTLogger,\n\tTEventPublisher,\n\tTEventPublisherServiceName,\n\tTAuditStorage,\n\tTAuditStorageServiceName,\n\tTDatabase,\n\tTDatabaseServiceName\n> {\n\tprotected schemas: TInput = {} as TInput;\n\tprotected _description?: string;\n\tprotected _status?: SuccessStatus;\n\tprotected _tags?: string[];\n\tprotected _memorySize?: number;\n\t_getSession: SessionFn<TServices, TLogger, TSession, TDatabase> = () =>\n\t\t({}) as TSession;\n\t_authorize: AuthorizeFn<TServices, TLogger, TSession> = () => true;\n\t_rateLimit?: RateLimitConfig;\n\t_availableAuthorizers: Authorizer[] = [];\n\t_authorizerName?: TAuthorizers[number];\n\t_actorExtractor?: ActorExtractor<TServices, TSession, TLogger>;\n\t_audits: MappedAudit<TAuditAction, OutSchema>[] = [];\n\t_customSecuritySchemes: Record<string, SecurityScheme> = {};\n\t_rlsConfig?: RlsConfig<TServices, TSession, TLogger>;\n\t_rlsBypass?: boolean;\n\n\tconstructor(\n\t\treadonly route: TRoute,\n\t\treadonly method: TMethod,\n\t) {\n\t\tsuper(ConstructType.Endpoint);\n\t}\n\n\t// Internal setter for EndpointFactory to set default publisher\n\t_setPublisher(\n\t\tpublisher: Service<TEventPublisherServiceName, TEventPublisher>,\n\t) {\n\t\tthis._publisher = publisher;\n\t}\n\n\t// Internal setter for EndpointFactory to set default auditor storage\n\t_setAuditorStorage(\n\t\tstorage: Service<TAuditStorageServiceName, TAuditStorage>,\n\t) {\n\t\tthis._auditorStorage = storage;\n\t}\n\n\t// Internal setter for EndpointFactory to set default database service\n\t_setDatabaseService(service: Service<TDatabaseServiceName, TDatabase>) {\n\t\tthis._databaseService = service;\n\t}\n\n\tdescription(description: string): this {\n\t\tthis._description = description;\n\t\treturn this;\n\t}\n\n\tstatus(status: SuccessStatus): this {\n\t\tthis._status = status;\n\t\treturn this;\n\t}\n\n\toverride event<TEvent extends MappedEvent<TEventPublisher, OutSchema>>(\n\t\tevent: TEvent,\n\t): this {\n\t\tthis._events.push(event);\n\t\treturn this;\n\t}\n\n\ttags(tags: string[]): this {\n\t\tthis._tags = tags;\n\t\treturn this;\n\t}\n\n\tmemorySize(memorySize: number): this {\n\t\tthis._memorySize = memorySize;\n\t\treturn this;\n\t}\n\n\toverride publisher<T extends EventPublisher<any>, TName extends string>(\n\t\tpublisher: Service<TName, T>,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tT,\n\t\tTName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis._publisher = publisher as unknown as Service<\n\t\t\tTEventPublisherServiceName,\n\t\t\tTEventPublisher\n\t\t>;\n\n\t\treturn this as unknown as EndpointBuilder<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTSession,\n\t\t\tT,\n\t\t\tTName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>;\n\t}\n\n\tbody<T extends StandardSchemaV1>(\n\t\tschema: T,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tOmit<TInput, 'body'> & { body: T },\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis.schemas.body = schema as unknown as T;\n\t\t// @ts-expect-error\n\t\treturn this;\n\t}\n\n\tsearch<T extends StandardSchemaV1>(\n\t\tschema: T,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tOmit<TInput, 'query'> & { query: T },\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis.schemas.query = schema as unknown as T;\n\t\t// @ts-expect-error\n\t\treturn this;\n\t}\n\n\tquery<T extends StandardSchemaV1>(\n\t\tschema: T,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tOmit<TInput, 'query'> & { query: T },\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\treturn this.search(schema);\n\t}\n\n\tparams<T extends StandardSchemaV1>(\n\t\tschema: T,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tOmit<TInput, 'params'> & { params: T },\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis.schemas.params = schema as unknown as T;\n\t\t// @ts-expect-error\n\t\treturn this;\n\t}\n\n\trateLimit(config: RateLimitConfig): this {\n\t\tthis._rateLimit = config;\n\t\treturn this;\n\t}\n\n\tauthorizer(\n\t\tname: TAuthorizers[number] | 'none',\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\t// Special case: 'none' explicitly marks endpoint as having no authorizer\n\t\tif (name === 'none') {\n\t\t\tthis._authorizerName = undefined;\n\t\t\treturn this;\n\t\t}\n\n\t\t// Validate that the authorizer exists in available authorizers\n\t\tconst authorizerExists = this._availableAuthorizers.some(\n\t\t\t(a) => a.name === name,\n\t\t);\n\t\tif (!authorizerExists && this._availableAuthorizers.length > 0) {\n\t\t\tconst available = this._availableAuthorizers\n\t\t\t\t.map((a) => a.name)\n\t\t\t\t.join(', ');\n\t\t\tthrow new Error(\n\t\t\t\t`Authorizer \"${name as string}\" not found in available authorizers: ${available}`,\n\t\t\t);\n\t\t}\n\t\tthis._authorizerName = name;\n\t\treturn this;\n\t}\n\n\tservices<T extends Service[]>(\n\t\tservices: T,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\t[...TServices, ...T],\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis._services = uniqBy(\n\t\t\t[...this._services, ...services],\n\t\t\t(s) => s.serviceName,\n\t\t) as TServices;\n\n\t\treturn this as unknown as EndpointBuilder<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\t[...TServices, ...T],\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>;\n\t}\n\n\tlogger<T extends Logger>(\n\t\tlogger: T,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tTServices,\n\t\tT,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis._logger = logger as unknown as TLogger;\n\n\t\treturn this as unknown as EndpointBuilder<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tT,\n\t\t\tOutSchema,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>;\n\t}\n\n\toutput<T extends StandardSchemaV1>(\n\t\tschema: T,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tT,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis.outputSchema = schema as unknown as OutSchema;\n\n\t\treturn this as unknown as EndpointBuilder<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tT,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>;\n\t}\n\n\t/**\n\t * Set the auditor storage service for this endpoint.\n\t * This enables audit functionality and makes `auditor` available in the handler context.\n\t * The audit action type is automatically inferred from the storage's generic parameter.\n\t */\n\toverride auditor<T extends AuditStorage<any>, TName extends string>(\n\t\tstorage: Service<TName, T>,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tT,\n\t\tTName,\n\t\tExtractStorageAuditAction<T>,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis._auditorStorage = storage as unknown as Service<\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditStorage\n\t\t>;\n\n\t\treturn this as unknown as EndpointBuilder<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tT,\n\t\t\tTName,\n\t\t\tExtractStorageAuditAction<T>,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>;\n\t}\n\n\t/**\n\t * Set the actor extractor function for audit records.\n\t * The actor is extracted from the request context and attached to all audits.\n\t */\n\tactor(\n\t\textractor: ActorExtractor<TServices, TSession, TLogger>,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis._actorExtractor = extractor;\n\t\treturn this;\n\t}\n\n\t/**\n\t * Add declarative audit definitions that are processed after the handler executes.\n\t * Similar to `.event()` for events, but for audits.\n\t *\n\t * @example\n\t * ```typescript\n\t * .audit<AppAuditAction>([\n\t * {\n\t * type: 'user.created',\n\t * payload: (response) => ({ userId: response.id, email: response.email }),\n\t * when: (response) => response.active,\n\t * entityId: (response) => response.id,\n\t * table: 'users',\n\t * },\n\t * ])\n\t * ```\n\t */\n\taudit(audits: MappedAudit<TAuditAction, OutSchema>[]): this {\n\t\tthis._audits = audits;\n\t\treturn this;\n\t}\n\n\t/**\n\t * Set the database service for this endpoint.\n\t * The database will be available in the handler context as `db`.\n\t * When audit storage is configured and uses the same database,\n\t * `db` will automatically be the transaction for ACID compliance.\n\t *\n\t * @example\n\t * ```typescript\n\t * .database(databaseService)\n\t * .handle(async ({ db }) => {\n\t * // db is the raw database or transaction (when auditor uses same db)\n\t * return await db.selectFrom('users').selectAll().execute();\n\t * })\n\t * ```\n\t */\n\toverride database<T, TName extends string>(\n\t\tservice: Service<TName, T>,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tT,\n\t\tTName\n\t> {\n\t\tthis._databaseService = service as unknown as Service<\n\t\t\tTDatabaseServiceName,\n\t\t\tTDatabase\n\t\t>;\n\n\t\treturn this as unknown as EndpointBuilder<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tT,\n\t\t\tTName\n\t\t>;\n\t}\n\n\t/**\n\t * Configure RLS (Row-Level Security) context for this endpoint.\n\t * Pass `false` or `RLS_BYPASS` to explicitly bypass RLS for this endpoint.\n\t *\n\t * @example\n\t * ```typescript\n\t * // Custom RLS config for this endpoint\n\t * .rls({\n\t * extractor: ({ session }) => ({\n\t * user_id: session.userId,\n\t * tenant_id: session.tenantId,\n\t * }),\n\t * prefix: 'app',\n\t * })\n\t *\n\t * // Bypass RLS (for admin endpoints)\n\t * .rls(false)\n\t * ```\n\t */\n\trls(\n\t\tconfig: RlsConfig<TServices, TSession, TLogger> | false | RlsBypass,\n\t): this {\n\t\tif (config === false || config === RLS_BYPASS) {\n\t\t\tthis._rlsBypass = true;\n\t\t\tthis._rlsConfig = undefined;\n\t\t} else {\n\t\t\tthis._rlsConfig = config;\n\t\t\tthis._rlsBypass = false;\n\t\t}\n\t\treturn this;\n\t}\n\n\t/**\n\t * Explicitly bypass RLS for this endpoint.\n\t * Useful for admin operations that need unrestricted database access.\n\t *\n\t * @example\n\t * ```typescript\n\t * .rlsBypass()\n\t * .handle(async ({ db }) => {\n\t * // Full access, no RLS filtering\n\t * return db.selectFrom('orders').selectAll().execute();\n\t * })\n\t * ```\n\t */\n\trlsBypass(): this {\n\t\tthis._rlsBypass = true;\n\t\tthis._rlsConfig = undefined;\n\t\treturn this;\n\t}\n\n\t// EndpointBuilder doesn't have a generic input method - it uses body, query, params instead\n\tinput(_schema: any): any {\n\t\tthrow new Error(\n\t\t\t'EndpointBuilder does not support generic input. Use body(), query(), or params() instead.',\n\t\t);\n\t}\n\n\thandle(\n\t\tfn: EndpointHandler<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTSession,\n\t\t\tTDatabase,\n\t\t\tTAuditStorage,\n\t\t\tTAuditAction\n\t\t>,\n\t): Endpoint<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tOutSchema,\n\t\tTServices,\n\t\tTLogger,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\t// Find authorizer metadata if name is set\n\t\t// If the authorizer name is set but not in availableAuthorizers, create a simple authorizer object\n\t\tlet authorizer: Authorizer | undefined;\n\t\tif (this._authorizerName) {\n\t\t\tconst existingAuthorizer = this._availableAuthorizers.find(\n\t\t\t\t(a) => a.name === this._authorizerName,\n\t\t\t);\n\n\t\t\tif (existingAuthorizer) {\n\t\t\t\tauthorizer = existingAuthorizer;\n\t\t\t} else {\n\t\t\t\t// Create authorizer with security scheme if available (built-in or custom)\n\t\t\t\tconst securityScheme = getSecurityScheme(\n\t\t\t\t\tthis._authorizerName as string,\n\t\t\t\t\tthis._customSecuritySchemes,\n\t\t\t\t);\n\t\t\t\tauthorizer = {\n\t\t\t\t\tname: this._authorizerName as string,\n\t\t\t\t\tsecurityScheme,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\treturn new Endpoint({\n\t\t\tfn,\n\t\t\tmethod: this.method,\n\t\t\troute: this.route,\n\t\t\tdescription: this._description,\n\t\t\ttags: this._tags,\n\t\t\tinput: this.schemas,\n\t\t\toutput: this.outputSchema,\n\t\t\tservices: this._services,\n\t\t\tlogger: this._logger,\n\t\t\ttimeout: this._timeout,\n\t\t\tmemorySize: this._memorySize,\n\t\t\tauthorize: this._authorize,\n\t\t\tstatus: this._status,\n\t\t\tgetSession: this._getSession,\n\t\t\trateLimit: this._rateLimit,\n\t\t\tpublisherService: this._publisher,\n\t\t\tevents: this._events,\n\t\t\tauthorizer,\n\t\t\tauditorStorageService: this._auditorStorage,\n\t\t\tactorExtractor: this._actorExtractor,\n\t\t\taudits: this._audits,\n\t\t\tdatabaseService: this._databaseService,\n\t\t\trlsConfig: this._rlsConfig,\n\t\t\trlsBypass: this._rlsBypass,\n\t\t});\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { ConstructType } from "./Construct-
|
|
2
|
-
import { BaseFunctionBuilder } from "./BaseFunctionBuilder-
|
|
3
|
-
import { Endpoint } from "./Endpoint-
|
|
4
|
-
import { getSecurityScheme } from "./Authorizer-
|
|
5
|
-
import { RLS_BYPASS } from "./rls-
|
|
1
|
+
import { ConstructType } from "./Construct-BNDLJJfD.mjs";
|
|
2
|
+
import { BaseFunctionBuilder } from "./BaseFunctionBuilder-Dsqe6pnn.mjs";
|
|
3
|
+
import { Endpoint } from "./Endpoint-ygxv2Ia6.mjs";
|
|
4
|
+
import { getSecurityScheme } from "./Authorizer-BgjU8-z6.mjs";
|
|
5
|
+
import { RLS_BYPASS } from "./rls-C0cWOnk4.mjs";
|
|
6
6
|
import uniqBy from "lodash.uniqby";
|
|
7
7
|
|
|
8
8
|
//#region src/endpoints/EndpointBuilder.ts
|
|
@@ -255,4 +255,4 @@ var EndpointBuilder = class extends BaseFunctionBuilder {
|
|
|
255
255
|
|
|
256
256
|
//#endregion
|
|
257
257
|
export { EndpointBuilder };
|
|
258
|
-
//# sourceMappingURL=EndpointBuilder-
|
|
258
|
+
//# sourceMappingURL=EndpointBuilder-tn4zqoyw.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EndpointBuilder-tn4zqoyw.mjs","names":["route: TRoute","method: TMethod","publisher: Service<TEventPublisherServiceName, TEventPublisher>","storage: Service<TAuditStorageServiceName, TAuditStorage>","service: Service<TDatabaseServiceName, TDatabase>","description: string","status: SuccessStatus","event: TEvent","tags: string[]","memorySize: number","publisher: Service<TName, T>","schema: T","config: RateLimitConfig","name: TAuthorizers[number] | 'none'","services: T","logger: T","storage: Service<TName, T>","extractor: ActorExtractor<TServices, TSession, TLogger>","audits: MappedAudit<TAuditAction, OutSchema>[]","service: Service<TName, T>","config: RlsConfig<TServices, TSession, TLogger> | false | RlsBypass","_schema: any","fn: EndpointHandler<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTSession,\n\t\t\tTDatabase,\n\t\t\tTAuditStorage,\n\t\t\tTAuditAction\n\t\t>","authorizer: Authorizer | undefined"],"sources":["../src/endpoints/EndpointBuilder.ts"],"sourcesContent":["import type {\n\tAuditableAction,\n\tAuditStorage,\n\tExtractStorageAuditAction,\n} from '@geekmidas/audit';\nimport type { EventPublisher, MappedEvent } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport type { RateLimitConfig } from '@geekmidas/rate-limit';\nimport type { Service } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport uniqBy from 'lodash.uniqby';\nimport { ConstructType } from '../Construct';\nimport { BaseFunctionBuilder } from '../functions';\nimport type { HttpMethod } from '../types';\nimport type { Authorizer, SecurityScheme } from './Authorizer';\nimport { getSecurityScheme } from './Authorizer';\nimport type { ActorExtractor, MappedAudit } from './audit';\nimport type {\n\tAuthorizeFn,\n\tEndpointHandler,\n\tSessionFn,\n\tSuccessStatus,\n} from './Endpoint';\nimport { Endpoint, type EndpointSchemas } from './Endpoint';\nimport type { RlsBypass, RlsConfig } from './rls';\nimport { RLS_BYPASS } from './rls';\n\nexport class EndpointBuilder<\n\tTRoute extends string,\n\tTMethod extends HttpMethod,\n\tTInput extends EndpointSchemas = {},\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTSession = unknown,\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTAuthorizers extends readonly string[] = readonly string[],\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTAuditStorageServiceName extends string = string,\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n\tTDatabase = undefined,\n\tTDatabaseServiceName extends string = string,\n> extends BaseFunctionBuilder<\n\tTInput,\n\tOutSchema,\n\tTServices,\n\tTLogger,\n\tTEventPublisher,\n\tTEventPublisherServiceName,\n\tTAuditStorage,\n\tTAuditStorageServiceName,\n\tTDatabase,\n\tTDatabaseServiceName\n> {\n\tprotected schemas: TInput = {} as TInput;\n\tprotected _description?: string;\n\tprotected _status?: SuccessStatus;\n\tprotected _tags?: string[];\n\tprotected _memorySize?: number;\n\t_getSession: SessionFn<TServices, TLogger, TSession, TDatabase> = () =>\n\t\t({}) as TSession;\n\t_authorize: AuthorizeFn<TServices, TLogger, TSession> = () => true;\n\t_rateLimit?: RateLimitConfig;\n\t_availableAuthorizers: Authorizer[] = [];\n\t_authorizerName?: TAuthorizers[number];\n\t_actorExtractor?: ActorExtractor<TServices, TSession, TLogger>;\n\t_audits: MappedAudit<TAuditAction, OutSchema>[] = [];\n\t_customSecuritySchemes: Record<string, SecurityScheme> = {};\n\t_rlsConfig?: RlsConfig<TServices, TSession, TLogger>;\n\t_rlsBypass?: boolean;\n\n\tconstructor(\n\t\treadonly route: TRoute,\n\t\treadonly method: TMethod,\n\t) {\n\t\tsuper(ConstructType.Endpoint);\n\t}\n\n\t// Internal setter for EndpointFactory to set default publisher\n\t_setPublisher(\n\t\tpublisher: Service<TEventPublisherServiceName, TEventPublisher>,\n\t) {\n\t\tthis._publisher = publisher;\n\t}\n\n\t// Internal setter for EndpointFactory to set default auditor storage\n\t_setAuditorStorage(\n\t\tstorage: Service<TAuditStorageServiceName, TAuditStorage>,\n\t) {\n\t\tthis._auditorStorage = storage;\n\t}\n\n\t// Internal setter for EndpointFactory to set default database service\n\t_setDatabaseService(service: Service<TDatabaseServiceName, TDatabase>) {\n\t\tthis._databaseService = service;\n\t}\n\n\tdescription(description: string): this {\n\t\tthis._description = description;\n\t\treturn this;\n\t}\n\n\tstatus(status: SuccessStatus): this {\n\t\tthis._status = status;\n\t\treturn this;\n\t}\n\n\toverride event<TEvent extends MappedEvent<TEventPublisher, OutSchema>>(\n\t\tevent: TEvent,\n\t): this {\n\t\tthis._events.push(event);\n\t\treturn this;\n\t}\n\n\ttags(tags: string[]): this {\n\t\tthis._tags = tags;\n\t\treturn this;\n\t}\n\n\tmemorySize(memorySize: number): this {\n\t\tthis._memorySize = memorySize;\n\t\treturn this;\n\t}\n\n\toverride publisher<T extends EventPublisher<any>, TName extends string>(\n\t\tpublisher: Service<TName, T>,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tT,\n\t\tTName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis._publisher = publisher as unknown as Service<\n\t\t\tTEventPublisherServiceName,\n\t\t\tTEventPublisher\n\t\t>;\n\n\t\treturn this as unknown as EndpointBuilder<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTSession,\n\t\t\tT,\n\t\t\tTName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>;\n\t}\n\n\tbody<T extends StandardSchemaV1>(\n\t\tschema: T,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tOmit<TInput, 'body'> & { body: T },\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis.schemas.body = schema as unknown as T;\n\t\t// @ts-expect-error\n\t\treturn this;\n\t}\n\n\tsearch<T extends StandardSchemaV1>(\n\t\tschema: T,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tOmit<TInput, 'query'> & { query: T },\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis.schemas.query = schema as unknown as T;\n\t\t// @ts-expect-error\n\t\treturn this;\n\t}\n\n\tquery<T extends StandardSchemaV1>(\n\t\tschema: T,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tOmit<TInput, 'query'> & { query: T },\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\treturn this.search(schema);\n\t}\n\n\tparams<T extends StandardSchemaV1>(\n\t\tschema: T,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tOmit<TInput, 'params'> & { params: T },\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis.schemas.params = schema as unknown as T;\n\t\t// @ts-expect-error\n\t\treturn this;\n\t}\n\n\trateLimit(config: RateLimitConfig): this {\n\t\tthis._rateLimit = config;\n\t\treturn this;\n\t}\n\n\tauthorizer(\n\t\tname: TAuthorizers[number] | 'none',\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\t// Special case: 'none' explicitly marks endpoint as having no authorizer\n\t\tif (name === 'none') {\n\t\t\tthis._authorizerName = undefined;\n\t\t\treturn this;\n\t\t}\n\n\t\t// Validate that the authorizer exists in available authorizers\n\t\tconst authorizerExists = this._availableAuthorizers.some(\n\t\t\t(a) => a.name === name,\n\t\t);\n\t\tif (!authorizerExists && this._availableAuthorizers.length > 0) {\n\t\t\tconst available = this._availableAuthorizers\n\t\t\t\t.map((a) => a.name)\n\t\t\t\t.join(', ');\n\t\t\tthrow new Error(\n\t\t\t\t`Authorizer \"${name as string}\" not found in available authorizers: ${available}`,\n\t\t\t);\n\t\t}\n\t\tthis._authorizerName = name;\n\t\treturn this;\n\t}\n\n\tservices<T extends Service[]>(\n\t\tservices: T,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\t[...TServices, ...T],\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis._services = uniqBy(\n\t\t\t[...this._services, ...services],\n\t\t\t(s) => s.serviceName,\n\t\t) as TServices;\n\n\t\treturn this as unknown as EndpointBuilder<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\t[...TServices, ...T],\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>;\n\t}\n\n\tlogger<T extends Logger>(\n\t\tlogger: T,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tTServices,\n\t\tT,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis._logger = logger as unknown as TLogger;\n\n\t\treturn this as unknown as EndpointBuilder<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tT,\n\t\t\tOutSchema,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>;\n\t}\n\n\toutput<T extends StandardSchemaV1>(\n\t\tschema: T,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tT,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis.outputSchema = schema as unknown as OutSchema;\n\n\t\treturn this as unknown as EndpointBuilder<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tT,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>;\n\t}\n\n\t/**\n\t * Set the auditor storage service for this endpoint.\n\t * This enables audit functionality and makes `auditor` available in the handler context.\n\t * The audit action type is automatically inferred from the storage's generic parameter.\n\t */\n\toverride auditor<T extends AuditStorage<any>, TName extends string>(\n\t\tstorage: Service<TName, T>,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tT,\n\t\tTName,\n\t\tExtractStorageAuditAction<T>,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis._auditorStorage = storage as unknown as Service<\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditStorage\n\t\t>;\n\n\t\treturn this as unknown as EndpointBuilder<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tT,\n\t\t\tTName,\n\t\t\tExtractStorageAuditAction<T>,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>;\n\t}\n\n\t/**\n\t * Set the actor extractor function for audit records.\n\t * The actor is extracted from the request context and attached to all audits.\n\t */\n\tactor(\n\t\textractor: ActorExtractor<TServices, TSession, TLogger>,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tthis._actorExtractor = extractor;\n\t\treturn this;\n\t}\n\n\t/**\n\t * Add declarative audit definitions that are processed after the handler executes.\n\t * Similar to `.event()` for events, but for audits.\n\t *\n\t * @example\n\t * ```typescript\n\t * .audit<AppAuditAction>([\n\t * {\n\t * type: 'user.created',\n\t * payload: (response) => ({ userId: response.id, email: response.email }),\n\t * when: (response) => response.active,\n\t * entityId: (response) => response.id,\n\t * table: 'users',\n\t * },\n\t * ])\n\t * ```\n\t */\n\taudit(audits: MappedAudit<TAuditAction, OutSchema>[]): this {\n\t\tthis._audits = audits;\n\t\treturn this;\n\t}\n\n\t/**\n\t * Set the database service for this endpoint.\n\t * The database will be available in the handler context as `db`.\n\t * When audit storage is configured and uses the same database,\n\t * `db` will automatically be the transaction for ACID compliance.\n\t *\n\t * @example\n\t * ```typescript\n\t * .database(databaseService)\n\t * .handle(async ({ db }) => {\n\t * // db is the raw database or transaction (when auditor uses same db)\n\t * return await db.selectFrom('users').selectAll().execute();\n\t * })\n\t * ```\n\t */\n\toverride database<T, TName extends string>(\n\t\tservice: Service<TName, T>,\n\t): EndpointBuilder<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tTServices,\n\t\tTLogger,\n\t\tOutSchema,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tT,\n\t\tTName\n\t> {\n\t\tthis._databaseService = service as unknown as Service<\n\t\t\tTDatabaseServiceName,\n\t\t\tTDatabase\n\t\t>;\n\n\t\treturn this as unknown as EndpointBuilder<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tT,\n\t\t\tTName\n\t\t>;\n\t}\n\n\t/**\n\t * Configure RLS (Row-Level Security) context for this endpoint.\n\t * Pass `false` or `RLS_BYPASS` to explicitly bypass RLS for this endpoint.\n\t *\n\t * @example\n\t * ```typescript\n\t * // Custom RLS config for this endpoint\n\t * .rls({\n\t * extractor: ({ session }) => ({\n\t * user_id: session.userId,\n\t * tenant_id: session.tenantId,\n\t * }),\n\t * prefix: 'app',\n\t * })\n\t *\n\t * // Bypass RLS (for admin endpoints)\n\t * .rls(false)\n\t * ```\n\t */\n\trls(\n\t\tconfig: RlsConfig<TServices, TSession, TLogger> | false | RlsBypass,\n\t): this {\n\t\tif (config === false || config === RLS_BYPASS) {\n\t\t\tthis._rlsBypass = true;\n\t\t\tthis._rlsConfig = undefined;\n\t\t} else {\n\t\t\tthis._rlsConfig = config;\n\t\t\tthis._rlsBypass = false;\n\t\t}\n\t\treturn this;\n\t}\n\n\t/**\n\t * Explicitly bypass RLS for this endpoint.\n\t * Useful for admin operations that need unrestricted database access.\n\t *\n\t * @example\n\t * ```typescript\n\t * .rlsBypass()\n\t * .handle(async ({ db }) => {\n\t * // Full access, no RLS filtering\n\t * return db.selectFrom('orders').selectAll().execute();\n\t * })\n\t * ```\n\t */\n\trlsBypass(): this {\n\t\tthis._rlsBypass = true;\n\t\tthis._rlsConfig = undefined;\n\t\treturn this;\n\t}\n\n\t// EndpointBuilder doesn't have a generic input method - it uses body, query, params instead\n\tinput(_schema: any): any {\n\t\tthrow new Error(\n\t\t\t'EndpointBuilder does not support generic input. Use body(), query(), or params() instead.',\n\t\t);\n\t}\n\n\thandle(\n\t\tfn: EndpointHandler<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTSession,\n\t\t\tTDatabase,\n\t\t\tTAuditStorage,\n\t\t\tTAuditAction\n\t\t>,\n\t): Endpoint<\n\t\tTRoute,\n\t\tTMethod,\n\t\tTInput,\n\t\tOutSchema,\n\t\tTServices,\n\t\tTLogger,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\t// Find authorizer metadata if name is set\n\t\t// If the authorizer name is set but not in availableAuthorizers, create a simple authorizer object\n\t\tlet authorizer: Authorizer | undefined;\n\t\tif (this._authorizerName) {\n\t\t\tconst existingAuthorizer = this._availableAuthorizers.find(\n\t\t\t\t(a) => a.name === this._authorizerName,\n\t\t\t);\n\n\t\t\tif (existingAuthorizer) {\n\t\t\t\tauthorizer = existingAuthorizer;\n\t\t\t} else {\n\t\t\t\t// Create authorizer with security scheme if available (built-in or custom)\n\t\t\t\tconst securityScheme = getSecurityScheme(\n\t\t\t\t\tthis._authorizerName as string,\n\t\t\t\t\tthis._customSecuritySchemes,\n\t\t\t\t);\n\t\t\t\tauthorizer = {\n\t\t\t\t\tname: this._authorizerName as string,\n\t\t\t\t\tsecurityScheme,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\treturn new Endpoint({\n\t\t\tfn,\n\t\t\tmethod: this.method,\n\t\t\troute: this.route,\n\t\t\tdescription: this._description,\n\t\t\ttags: this._tags,\n\t\t\tinput: this.schemas,\n\t\t\toutput: this.outputSchema,\n\t\t\tservices: this._services,\n\t\t\tlogger: this._logger,\n\t\t\ttimeout: this._timeout,\n\t\t\tmemorySize: this._memorySize,\n\t\t\tauthorize: this._authorize,\n\t\t\tstatus: this._status,\n\t\t\tgetSession: this._getSession,\n\t\t\trateLimit: this._rateLimit,\n\t\t\tpublisherService: this._publisher,\n\t\t\tevents: this._events,\n\t\t\tauthorizer,\n\t\t\tauditorStorageService: this._auditorStorage,\n\t\t\tactorExtractor: this._actorExtractor,\n\t\t\taudits: this._audits,\n\t\t\tdatabaseService: this._databaseService,\n\t\t\trlsConfig: this._rlsConfig,\n\t\t\trlsBypass: this._rlsBypass,\n\t\t});\n\t}\n}\n"],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { EndpointBuilder } from "./EndpointBuilder-
|
|
1
|
+
import { EndpointBuilder } from "./EndpointBuilder-tn4zqoyw.mjs";
|
|
2
2
|
import { ConsoleLogger } from "@geekmidas/logger/console";
|
|
3
3
|
import uniqBy from "lodash.uniqby";
|
|
4
4
|
|
|
5
5
|
//#region src/endpoints/EndpointFactory.ts
|
|
6
6
|
const DEFAULT_LOGGER$1 = new ConsoleLogger();
|
|
7
7
|
var EndpointFactory = class EndpointFactory {
|
|
8
|
-
defaultServices;
|
|
8
|
+
defaultServices = [];
|
|
9
9
|
basePath = "";
|
|
10
10
|
defaultAuthorizeFn;
|
|
11
11
|
defaultEventPublisher;
|
|
@@ -35,12 +35,12 @@ var EndpointFactory = class EndpointFactory {
|
|
|
35
35
|
}
|
|
36
36
|
static joinPaths(path, basePath = "") {
|
|
37
37
|
if (!basePath && !path) return "/";
|
|
38
|
-
if (!basePath) return path.startsWith("/") ? path :
|
|
39
|
-
if (!path) return basePath.startsWith("/") ? basePath :
|
|
38
|
+
if (!basePath) return path.startsWith("/") ? path : `/${path}`;
|
|
39
|
+
if (!path) return basePath.startsWith("/") ? basePath : `/${basePath}`;
|
|
40
40
|
const base = basePath.endsWith("/") ? basePath.slice(0, -1) : basePath;
|
|
41
|
-
const segment = path.startsWith("/") ? path :
|
|
41
|
+
const segment = path.startsWith("/") ? path : `/${path}`;
|
|
42
42
|
let result = base + segment;
|
|
43
|
-
if (!result.startsWith("/")) result =
|
|
43
|
+
if (!result.startsWith("/")) result = `/${result}`;
|
|
44
44
|
result = result.replace(/^\/+/g, "/");
|
|
45
45
|
if (result.length > 1 && result.endsWith("/")) result = result.slice(0, -1);
|
|
46
46
|
return result;
|
|
@@ -374,4 +374,4 @@ const e = new EndpointFactory();
|
|
|
374
374
|
|
|
375
375
|
//#endregion
|
|
376
376
|
export { EndpointFactory, e };
|
|
377
|
-
//# sourceMappingURL=EndpointFactory-
|
|
377
|
+
//# sourceMappingURL=EndpointFactory-CIUZTTAF.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EndpointFactory-CIUZTTAF.mjs","names":["DEFAULT_LOGGER","path: P","basePath: TBasePath","authorizers: T","schemes: T","name:\n\t\t\t| BuiltInSecuritySchemeId\n\t\t\t| keyof TSecuritySchemes\n\t\t\t| TAuthorizers[number]\n\t\t\t| 'none'","path: TPath","fn: AuthorizeFn<TServices, TLogger, TSession>","services: S","logger: L","publisher: Service<TServiceName, T>","session: SessionFn<TServices, TLogger, T, TDatabase>","service: Service<TName, T>","storage: Service<TName, T>","extractor: ActorExtractor<TServices, TSession, TLogger>","config: TConfig","method: TMethod"],"sources":["../src/endpoints/EndpointFactory.ts"],"sourcesContent":["import type {\n\tAuditableAction,\n\tAuditStorage,\n\tExtractStorageAuditAction,\n} from '@geekmidas/audit';\nimport type { EventPublisher, MappedEvent } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport { ConsoleLogger } from '@geekmidas/logger/console';\nimport type { Service } from '@geekmidas/services';\nimport uniqBy from 'lodash.uniqby';\nimport type { HttpMethod } from '../types';\nimport type {\n\tAuthorizer,\n\tBuiltInSecuritySchemeId,\n\tSecurityScheme,\n} from './Authorizer';\nimport type { ActorExtractor } from './audit';\nimport type { AuthorizeFn, SessionFn } from './Endpoint';\nimport { EndpointBuilder } from './EndpointBuilder';\nimport type { RlsConfig } from './rls';\n\n// Re-export SecurityScheme to make the type portable in declaration files\nexport type { SecurityScheme } from './Authorizer';\n\nconst DEFAULT_LOGGER = new ConsoleLogger() as any;\n\nexport class EndpointFactory<\n\tTServices extends Service[] = [],\n\tTBasePath extends string = '',\n\tTLogger extends Logger = Logger,\n\tTSession = unknown,\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTAuthorizers extends readonly string[] = readonly string[],\n\tTAuditStorage extends AuditStorage<any> | undefined = undefined,\n\tTAuditStorageServiceName extends string = string,\n\tTAuditAction extends AuditableAction<\n\t\tstring,\n\t\tunknown\n\t> = ExtractStorageAuditAction<NonNullable<TAuditStorage>>,\n\tTDatabase = undefined,\n\tTDatabaseServiceName extends string = string,\n\tTSecuritySchemes extends Record<string, SecurityScheme> = Record<\n\t\tstring,\n\t\tSecurityScheme\n\t>,\n\tTRlsConfig extends\n\t\t| RlsConfig<TServices, TSession, TLogger>\n\t\t| undefined = undefined,\n> {\n\tprivate defaultServices: TServices = [] as unknown as TServices;\n\tprivate basePath: TBasePath = '' as TBasePath;\n\tprivate defaultAuthorizeFn?: AuthorizeFn<TServices, TLogger, TSession>;\n\tprivate defaultEventPublisher:\n\t\t| Service<TEventPublisherServiceName, TEventPublisher>\n\t\t| undefined;\n\tprivate defaultSessionExtractor?: SessionFn<\n\t\tTServices,\n\t\tTLogger,\n\t\tTSession,\n\t\tTDatabase\n\t>;\n\tprivate defaultLogger: TLogger = DEFAULT_LOGGER;\n\tprivate availableAuthorizers: Authorizer[] = [];\n\tprivate defaultAuthorizerName?: TAuthorizers[number];\n\tprivate defaultAuditorStorage:\n\t\t| Service<TAuditStorageServiceName, TAuditStorage>\n\t\t| undefined;\n\tprivate defaultDatabaseService:\n\t\t| Service<TDatabaseServiceName, TDatabase>\n\t\t| undefined;\n\tprivate defaultActorExtractor?: ActorExtractor<TServices, TSession, TLogger>;\n\tprivate customSecuritySchemes: TSecuritySchemes = {} as TSecuritySchemes;\n\tprivate defaultRlsConfig?: TRlsConfig;\n\n\tconstructor({\n\t\tbasePath,\n\t\tdefaultAuthorizeFn,\n\t\tdefaultLogger,\n\t\tdefaultSessionExtractor,\n\t\t// @ts-expect-error\n\t\tdefaultServices = [] as TServices,\n\t\tdefaultEventPublisher,\n\t\tavailableAuthorizers = [],\n\t\tdefaultAuthorizerName,\n\t\tdefaultAuditorStorage,\n\t\tdefaultDatabaseService,\n\t\tdefaultActorExtractor,\n\t\tcustomSecuritySchemes = {} as TSecuritySchemes,\n\t\tdefaultRlsConfig,\n\t}: EndpointFactoryOptions<\n\t\tTServices,\n\t\tTBasePath,\n\t\tTLogger,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTSecuritySchemes,\n\t\tTRlsConfig\n\t> = {}) {\n\t\t// Initialize default services\n\t\tthis.defaultServices = uniqBy(\n\t\t\tdefaultServices,\n\t\t\t(s) => s.serviceName,\n\t\t) as TServices;\n\n\t\tthis.basePath = basePath || ('' as TBasePath);\n\t\tthis.defaultAuthorizeFn = defaultAuthorizeFn;\n\t\tthis.defaultLogger = defaultLogger || (DEFAULT_LOGGER as TLogger);\n\t\tthis.defaultSessionExtractor = defaultSessionExtractor;\n\t\tthis.defaultEventPublisher = defaultEventPublisher;\n\t\tthis.availableAuthorizers = availableAuthorizers;\n\t\tthis.defaultAuthorizerName = defaultAuthorizerName;\n\t\tthis.defaultAuditorStorage = defaultAuditorStorage;\n\t\tthis.defaultDatabaseService = defaultDatabaseService;\n\t\tthis.defaultActorExtractor = defaultActorExtractor;\n\t\tthis.customSecuritySchemes = customSecuritySchemes;\n\t\tthis.defaultRlsConfig = defaultRlsConfig;\n\t}\n\n\tstatic joinPaths<TBasePath extends string, P extends string>(\n\t\tpath: P,\n\t\tbasePath: TBasePath = '' as TBasePath,\n\t): JoinPaths<TBasePath, P> {\n\t\t// Handle empty cases\n\t\tif (!basePath && !path) return '/' as JoinPaths<TBasePath, P>;\n\t\tif (!basePath)\n\t\t\treturn (path.startsWith('/') ? path : `/${path}`) as JoinPaths<\n\t\t\t\tTBasePath,\n\t\t\t\tP\n\t\t\t>;\n\t\tif (!path)\n\t\t\treturn (\n\t\t\t\tbasePath.startsWith('/') ? basePath : `/${basePath}`\n\t\t\t) as JoinPaths<TBasePath, P>;\n\n\t\tconst base = basePath.endsWith('/') ? basePath.slice(0, -1) : basePath;\n\t\tconst segment = path.startsWith('/') ? path : `/${path}`;\n\n\t\tlet result = base + segment;\n\n\t\t// Ensure leading slash\n\t\tif (!result.startsWith('/')) {\n\t\t\tresult = `/${result}`;\n\t\t}\n\n\t\t// Normalize multiple slashes (except in the middle of the path where they might be intentional)\n\t\tresult = result.replace(/^\\/+/g, '/');\n\n\t\t// Remove trailing slash unless it's the root path \"/\"\n\t\tif (result.length > 1 && result.endsWith('/')) {\n\t\t\tresult = result.slice(0, -1);\n\t\t}\n\n\t\treturn result as JoinPaths<TBasePath, P>;\n\t}\n\n\t// Configure available authorizers\n\tauthorizers<const T extends readonly string[]>(\n\t\tauthorizers: T,\n\t): EndpointFactory<\n\t\tTServices,\n\t\tTBasePath,\n\t\tTLogger,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tT,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTSecuritySchemes,\n\t\tTRlsConfig\n\t> {\n\t\tconst authorizerConfigs = authorizers.map((name) => ({\n\t\t\tname,\n\t\t}));\n\t\treturn new EndpointFactory<\n\t\t\tTServices,\n\t\t\tTBasePath,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tT,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTSecuritySchemes,\n\t\t\tTRlsConfig\n\t\t>({\n\t\t\tdefaultServices: this.defaultServices,\n\t\t\tbasePath: this.basePath,\n\t\t\tdefaultAuthorizeFn: this.defaultAuthorizeFn,\n\t\t\tdefaultLogger: this.defaultLogger,\n\t\t\tdefaultSessionExtractor: this.defaultSessionExtractor,\n\t\t\tdefaultEventPublisher: this.defaultEventPublisher,\n\t\t\tavailableAuthorizers: authorizerConfigs,\n\t\t\tdefaultAuthorizerName: this.defaultAuthorizerName,\n\t\t\tdefaultAuditorStorage: this.defaultAuditorStorage,\n\t\t\tdefaultDatabaseService: this.defaultDatabaseService,\n\t\t\tdefaultActorExtractor: this.defaultActorExtractor,\n\t\t\tcustomSecuritySchemes: this.customSecuritySchemes,\n\t\t\tdefaultRlsConfig: this.defaultRlsConfig,\n\t\t});\n\t}\n\n\t/**\n\t * Define custom security schemes for this factory.\n\t * These extend the built-in schemes (jwt, bearer, apiKey, oauth2, oidc).\n\t *\n\t * @example\n\t * ```typescript\n\t * const router = e.securitySchemes({\n\t * awsIamSigV4: {\n\t * type: 'apiKey',\n\t * in: 'header',\n\t * name: 'Authorization',\n\t * 'x-amazon-apigateway-authtype': 'awsSigv4',\n\t * },\n\t * });\n\t * ```\n\t */\n\tsecuritySchemes<T extends Record<string, SecurityScheme>>(\n\t\tschemes: T,\n\t): EndpointFactory<\n\t\tTServices,\n\t\tTBasePath,\n\t\tTLogger,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTSecuritySchemes & T,\n\t\tTRlsConfig\n\t> {\n\t\treturn new EndpointFactory<\n\t\t\tTServices,\n\t\t\tTBasePath,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTSecuritySchemes & T,\n\t\t\tTRlsConfig\n\t\t>({\n\t\t\tdefaultServices: this.defaultServices,\n\t\t\tbasePath: this.basePath,\n\t\t\tdefaultAuthorizeFn: this.defaultAuthorizeFn,\n\t\t\tdefaultLogger: this.defaultLogger,\n\t\t\tdefaultSessionExtractor: this.defaultSessionExtractor,\n\t\t\tdefaultEventPublisher: this.defaultEventPublisher,\n\t\t\tavailableAuthorizers: this.availableAuthorizers,\n\t\t\tdefaultAuthorizerName: this.defaultAuthorizerName,\n\t\t\tdefaultAuditorStorage: this.defaultAuditorStorage,\n\t\t\tdefaultDatabaseService: this.defaultDatabaseService,\n\t\t\tdefaultActorExtractor: this.defaultActorExtractor,\n\t\t\tcustomSecuritySchemes: {\n\t\t\t\t...this.customSecuritySchemes,\n\t\t\t\t...schemes,\n\t\t\t} as TSecuritySchemes & T,\n\t\t\tdefaultRlsConfig: this.defaultRlsConfig,\n\t\t});\n\t}\n\n\t/**\n\t * Set the default authorizer for all endpoints created from this factory.\n\t * Individual endpoints can override this by calling `.authorizer()` on the builder.\n\t * Use `'none'` to explicitly disable authorization for all endpoints.\n\t *\n\t * Accepts:\n\t * - Built-in security scheme names: 'jwt', 'bearer', 'apiKey', 'oauth2', 'oidc'\n\t * - Custom security scheme names defined via `.securitySchemes()`\n\t * - 'none' to disable authorization\n\t */\n\tauthorizer(\n\t\tname:\n\t\t\t| BuiltInSecuritySchemeId\n\t\t\t| keyof TSecuritySchemes\n\t\t\t| TAuthorizers[number]\n\t\t\t| 'none',\n\t): EndpointFactory<\n\t\tTServices,\n\t\tTBasePath,\n\t\tTLogger,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTSecuritySchemes,\n\t\tTRlsConfig\n\t> {\n\t\t// Validate that the authorizer exists in available authorizers (if authorizers() was called)\n\t\tif (name !== 'none' && this.availableAuthorizers.length > 0) {\n\t\t\tconst authorizerExists = this.availableAuthorizers.some(\n\t\t\t\t(a) => a.name === name,\n\t\t\t);\n\t\t\tif (!authorizerExists) {\n\t\t\t\tconst available = this.availableAuthorizers\n\t\t\t\t\t.map((a) => a.name)\n\t\t\t\t\t.join(', ');\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Authorizer \"${name as string}\" not found in available authorizers: ${available}`,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\treturn new EndpointFactory<\n\t\t\tTServices,\n\t\t\tTBasePath,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTSecuritySchemes,\n\t\t\tTRlsConfig\n\t\t>({\n\t\t\tdefaultServices: this.defaultServices,\n\t\t\tbasePath: this.basePath,\n\t\t\tdefaultAuthorizeFn: this.defaultAuthorizeFn,\n\t\t\tdefaultLogger: this.defaultLogger,\n\t\t\tdefaultSessionExtractor: this.defaultSessionExtractor,\n\t\t\tdefaultEventPublisher: this.defaultEventPublisher,\n\t\t\tavailableAuthorizers: this.availableAuthorizers,\n\t\t\tdefaultAuthorizerName:\n\t\t\t\tname === 'none' ? undefined : (name as TAuthorizers[number]),\n\t\t\tdefaultAuditorStorage: this.defaultAuditorStorage,\n\t\t\tdefaultDatabaseService: this.defaultDatabaseService,\n\t\t\tdefaultActorExtractor: this.defaultActorExtractor,\n\t\t\tcustomSecuritySchemes: this.customSecuritySchemes,\n\t\t\tdefaultRlsConfig: this.defaultRlsConfig,\n\t\t});\n\t}\n\n\t// Create a sub-router with a path prefix\n\troute<TPath extends string>(\n\t\tpath: TPath,\n\t): EndpointFactory<\n\t\tTServices,\n\t\tJoinPaths<TBasePath, TPath>,\n\t\tTLogger,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTSecuritySchemes,\n\t\tTRlsConfig\n\t> {\n\t\tconst newBasePath = EndpointFactory.joinPaths(path, this.basePath);\n\t\treturn new EndpointFactory<\n\t\t\tTServices,\n\t\t\tJoinPaths<TBasePath, TPath>,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTSecuritySchemes,\n\t\t\tTRlsConfig\n\t\t>({\n\t\t\tdefaultServices: this.defaultServices,\n\t\t\tbasePath: newBasePath,\n\t\t\tdefaultAuthorizeFn: this.defaultAuthorizeFn,\n\t\t\tdefaultLogger: this.defaultLogger,\n\t\t\tdefaultSessionExtractor: this.defaultSessionExtractor,\n\t\t\tdefaultEventPublisher: this.defaultEventPublisher,\n\t\t\tavailableAuthorizers: this.availableAuthorizers,\n\t\t\tdefaultAuthorizerName: this.defaultAuthorizerName,\n\t\t\tdefaultAuditorStorage: this.defaultAuditorStorage,\n\t\t\tdefaultDatabaseService: this.defaultDatabaseService,\n\t\t\tdefaultActorExtractor: this.defaultActorExtractor,\n\t\t\tcustomSecuritySchemes: this.customSecuritySchemes,\n\t\t\tdefaultRlsConfig: this.defaultRlsConfig,\n\t\t});\n\t}\n\n\t// Create a new factory with authorization\n\tauthorize(\n\t\tfn: AuthorizeFn<TServices, TLogger, TSession>,\n\t): EndpointFactory<\n\t\tTServices,\n\t\tTBasePath,\n\t\tTLogger,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTSecuritySchemes,\n\t\tTRlsConfig\n\t> {\n\t\treturn new EndpointFactory<\n\t\t\tTServices,\n\t\t\tTBasePath,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTSecuritySchemes,\n\t\t\tTRlsConfig\n\t\t>({\n\t\t\tdefaultServices: this.defaultServices,\n\t\t\tbasePath: this.basePath,\n\t\t\tdefaultAuthorizeFn: fn,\n\t\t\tdefaultLogger: this.defaultLogger,\n\t\t\tdefaultSessionExtractor: this.defaultSessionExtractor,\n\t\t\tdefaultEventPublisher: this.defaultEventPublisher,\n\t\t\tavailableAuthorizers: this.availableAuthorizers,\n\t\t\tdefaultAuthorizerName: this.defaultAuthorizerName,\n\t\t\tdefaultAuditorStorage: this.defaultAuditorStorage,\n\t\t\tdefaultDatabaseService: this.defaultDatabaseService,\n\t\t\tdefaultActorExtractor: this.defaultActorExtractor,\n\t\t\tcustomSecuritySchemes: this.customSecuritySchemes,\n\t\t\tdefaultRlsConfig: this.defaultRlsConfig,\n\t\t});\n\t}\n\n\t// Create a new factory with services\n\tservices<S extends Service[]>(\n\t\tservices: S,\n\t): EndpointFactory<\n\t\t[...S, ...TServices],\n\t\tTBasePath,\n\t\tTLogger,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTSecuritySchemes,\n\t\tundefined // Reset RLS config when services change - user should call .rls() after .services()\n\t> {\n\t\treturn new EndpointFactory<\n\t\t\t[...S, ...TServices],\n\t\t\tTBasePath,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTSecuritySchemes,\n\t\t\tundefined\n\t\t>({\n\t\t\tdefaultServices: [...services, ...this.defaultServices],\n\t\t\tbasePath: this.basePath,\n\t\t\tdefaultAuthorizeFn: this.defaultAuthorizeFn as unknown as AuthorizeFn<\n\t\t\t\t[...S, ...TServices],\n\t\t\t\tTLogger,\n\t\t\t\tTSession\n\t\t\t>,\n\t\t\tdefaultLogger: this.defaultLogger,\n\t\t\tdefaultSessionExtractor: this.defaultSessionExtractor as unknown as\n\t\t\t\t| SessionFn<[...S, ...TServices], TLogger, TSession, TDatabase>\n\t\t\t\t| undefined,\n\t\t\tdefaultEventPublisher: this.defaultEventPublisher,\n\t\t\tavailableAuthorizers: this.availableAuthorizers,\n\t\t\tdefaultAuthorizerName: this.defaultAuthorizerName,\n\t\t\tdefaultAuditorStorage: this.defaultAuditorStorage,\n\t\t\tdefaultDatabaseService: this.defaultDatabaseService,\n\t\t\tdefaultActorExtractor: this.defaultActorExtractor as unknown as\n\t\t\t\t| ActorExtractor<[...S, ...TServices], TSession, TLogger>\n\t\t\t\t| undefined,\n\t\t\tcustomSecuritySchemes: this.customSecuritySchemes,\n\t\t\t// Reset RLS config when services change since it depends on TServices\n\t\t\tdefaultRlsConfig: undefined,\n\t\t});\n\t}\n\n\tlogger<L extends Logger>(\n\t\tlogger: L,\n\t): EndpointFactory<\n\t\tTServices,\n\t\tTBasePath,\n\t\tL,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTSecuritySchemes,\n\t\tundefined // Reset RLS config when logger type changes - user should call .rls() after .logger()\n\t> {\n\t\treturn new EndpointFactory<\n\t\t\tTServices,\n\t\t\tTBasePath,\n\t\t\tL,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTSecuritySchemes,\n\t\t\tundefined\n\t\t>({\n\t\t\tdefaultServices: this.defaultServices,\n\t\t\tbasePath: this.basePath,\n\t\t\tdefaultAuthorizeFn: this.defaultAuthorizeFn as unknown as AuthorizeFn<\n\t\t\t\tTServices,\n\t\t\t\tL,\n\t\t\t\tTSession\n\t\t\t>,\n\t\t\tdefaultLogger: logger,\n\t\t\tdefaultSessionExtractor: this\n\t\t\t\t.defaultSessionExtractor as unknown as SessionFn<\n\t\t\t\tTServices,\n\t\t\t\tL,\n\t\t\t\tTSession\n\t\t\t>,\n\t\t\tdefaultEventPublisher: this.defaultEventPublisher,\n\t\t\tavailableAuthorizers: this.availableAuthorizers,\n\t\t\tdefaultAuthorizerName: this.defaultAuthorizerName,\n\t\t\tdefaultAuditorStorage: this.defaultAuditorStorage,\n\t\t\tdefaultDatabaseService: this.defaultDatabaseService,\n\t\t\tdefaultActorExtractor: this\n\t\t\t\t.defaultActorExtractor as unknown as ActorExtractor<\n\t\t\t\tTServices,\n\t\t\t\tTSession,\n\t\t\t\tL\n\t\t\t>,\n\t\t\tcustomSecuritySchemes: this.customSecuritySchemes,\n\t\t\t// Reset RLS config when logger type changes since it depends on TLogger\n\t\t\tdefaultRlsConfig: undefined,\n\t\t});\n\t}\n\n\tpublisher<\n\t\tT extends EventPublisher<any>,\n\t\tTServiceName extends string = string,\n\t>(\n\t\tpublisher: Service<TServiceName, T>,\n\t): EndpointFactory<\n\t\tTServices,\n\t\tTBasePath,\n\t\tTLogger,\n\t\tTSession,\n\t\tT,\n\t\tTServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTSecuritySchemes,\n\t\tTRlsConfig\n\t> {\n\t\treturn new EndpointFactory<\n\t\t\tTServices,\n\t\t\tTBasePath,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tT,\n\t\t\tTServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTSecuritySchemes,\n\t\t\tTRlsConfig\n\t\t>({\n\t\t\tdefaultServices: this.defaultServices,\n\t\t\tbasePath: this.basePath,\n\t\t\tdefaultAuthorizeFn: this.defaultAuthorizeFn,\n\t\t\tdefaultLogger: this.defaultLogger,\n\t\t\tdefaultSessionExtractor: this.defaultSessionExtractor,\n\t\t\tdefaultEventPublisher: publisher,\n\t\t\tavailableAuthorizers: this.availableAuthorizers,\n\t\t\tdefaultAuthorizerName: this.defaultAuthorizerName,\n\t\t\tdefaultAuditorStorage: this.defaultAuditorStorage,\n\t\t\tdefaultDatabaseService: this.defaultDatabaseService,\n\t\t\tdefaultActorExtractor: this.defaultActorExtractor,\n\t\t\tcustomSecuritySchemes: this.customSecuritySchemes,\n\t\t\tdefaultRlsConfig: this.defaultRlsConfig,\n\t\t});\n\t}\n\n\tsession<T>(\n\t\tsession: SessionFn<TServices, TLogger, T, TDatabase>,\n\t): EndpointFactory<\n\t\tTServices,\n\t\tTBasePath,\n\t\tTLogger,\n\t\tT,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTSecuritySchemes,\n\t\tundefined // Reset RLS config when session type changes - user should call .rls() after .session()\n\t> {\n\t\treturn new EndpointFactory<\n\t\t\tTServices,\n\t\t\tTBasePath,\n\t\t\tTLogger,\n\t\t\tT,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTSecuritySchemes,\n\t\t\tundefined\n\t\t>({\n\t\t\tdefaultServices: this.defaultServices,\n\t\t\tbasePath: this.basePath,\n\t\t\tdefaultAuthorizeFn: this.defaultAuthorizeFn as unknown as AuthorizeFn<\n\t\t\t\tTServices,\n\t\t\t\tTLogger,\n\t\t\t\tT\n\t\t\t>,\n\t\t\tdefaultLogger: this.defaultLogger,\n\t\t\tdefaultSessionExtractor: session,\n\t\t\tdefaultEventPublisher: this.defaultEventPublisher,\n\t\t\tavailableAuthorizers: this.availableAuthorizers,\n\t\t\tdefaultAuthorizerName: this.defaultAuthorizerName,\n\t\t\tdefaultAuditorStorage: this.defaultAuditorStorage,\n\t\t\tdefaultDatabaseService: this.defaultDatabaseService,\n\t\t\tdefaultActorExtractor: this\n\t\t\t\t.defaultActorExtractor as unknown as ActorExtractor<\n\t\t\t\tTServices,\n\t\t\t\tT,\n\t\t\t\tTLogger\n\t\t\t>,\n\t\t\tcustomSecuritySchemes: this.customSecuritySchemes,\n\t\t\t// Reset RLS config when session type changes since it depends on TSession\n\t\t\tdefaultRlsConfig: undefined,\n\t\t});\n\t}\n\n\t/**\n\t * Set the database service for endpoints created from this factory.\n\t * The database will be available in handler context as `db`.\n\t */\n\tdatabase<T, TName extends string>(\n\t\tservice: Service<TName, T>,\n\t): EndpointFactory<\n\t\tTServices,\n\t\tTBasePath,\n\t\tTLogger,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tT,\n\t\tTName,\n\t\tTSecuritySchemes,\n\t\tTRlsConfig\n\t> {\n\t\treturn new EndpointFactory<\n\t\t\tTServices,\n\t\t\tTBasePath,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tT,\n\t\t\tTName,\n\t\t\tTSecuritySchemes,\n\t\t\tTRlsConfig\n\t\t>({\n\t\t\tdefaultServices: this.defaultServices,\n\t\t\tbasePath: this.basePath,\n\t\t\tdefaultAuthorizeFn: this.defaultAuthorizeFn,\n\t\t\tdefaultLogger: this.defaultLogger,\n\t\t\t// Reset session extractor when database changes - user should call .session() after .database()\n\t\t\t// to get proper type inference for the new database type\n\t\t\tdefaultSessionExtractor: this.defaultSessionExtractor as unknown as\n\t\t\t\t| SessionFn<TServices, TLogger, TSession, T>\n\t\t\t\t| undefined,\n\t\t\tdefaultEventPublisher: this.defaultEventPublisher,\n\t\t\tavailableAuthorizers: this.availableAuthorizers,\n\t\t\tdefaultAuthorizerName: this.defaultAuthorizerName,\n\t\t\tdefaultAuditorStorage: this.defaultAuditorStorage,\n\t\t\tdefaultDatabaseService: service,\n\t\t\tcustomSecuritySchemes: this.customSecuritySchemes,\n\t\t\tdefaultRlsConfig: this.defaultRlsConfig,\n\t\t});\n\t}\n\n\t/**\n\t * Set the auditor storage service for endpoints created from this factory.\n\t * This enables audit functionality and makes `auditor` available in handler context.\n\t * The audit action type is automatically inferred from the storage's generic parameter.\n\t */\n\tauditor<T extends AuditStorage<any>, TName extends string>(\n\t\tstorage: Service<TName, T>,\n\t): EndpointFactory<\n\t\tTServices,\n\t\tTBasePath,\n\t\tTLogger,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tT,\n\t\tTName,\n\t\tExtractStorageAuditAction<T>,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTSecuritySchemes,\n\t\tTRlsConfig\n\t> {\n\t\treturn new EndpointFactory<\n\t\t\tTServices,\n\t\t\tTBasePath,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tT,\n\t\t\tTName,\n\t\t\tExtractStorageAuditAction<T>,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTSecuritySchemes,\n\t\t\tTRlsConfig\n\t\t>({\n\t\t\tdefaultServices: this.defaultServices,\n\t\t\tbasePath: this.basePath,\n\t\t\tdefaultAuthorizeFn: this.defaultAuthorizeFn,\n\t\t\tdefaultLogger: this.defaultLogger,\n\t\t\tdefaultSessionExtractor: this.defaultSessionExtractor,\n\t\t\tdefaultEventPublisher: this.defaultEventPublisher,\n\t\t\tavailableAuthorizers: this.availableAuthorizers,\n\t\t\tdefaultAuthorizerName: this.defaultAuthorizerName,\n\t\t\tdefaultAuditorStorage: storage,\n\t\t\tdefaultDatabaseService: this.defaultDatabaseService,\n\t\t\tdefaultActorExtractor: this\n\t\t\t\t.defaultActorExtractor as unknown as ActorExtractor<\n\t\t\t\tTServices,\n\t\t\t\tTSession,\n\t\t\t\tTLogger\n\t\t\t>,\n\t\t\tcustomSecuritySchemes: this.customSecuritySchemes,\n\t\t\tdefaultRlsConfig: this.defaultRlsConfig,\n\t\t});\n\t}\n\n\t/**\n\t * Set the actor extractor function for endpoints created from this factory.\n\t * The actor is extracted from the request context and attached to all audits.\n\t */\n\tactor(\n\t\textractor: ActorExtractor<TServices, TSession, TLogger>,\n\t): EndpointFactory<\n\t\tTServices,\n\t\tTBasePath,\n\t\tTLogger,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTSecuritySchemes,\n\t\tTRlsConfig\n\t> {\n\t\treturn new EndpointFactory<\n\t\t\tTServices,\n\t\t\tTBasePath,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTSecuritySchemes,\n\t\t\tTRlsConfig\n\t\t>({\n\t\t\tdefaultServices: this.defaultServices,\n\t\t\tbasePath: this.basePath,\n\t\t\tdefaultAuthorizeFn: this.defaultAuthorizeFn,\n\t\t\tdefaultLogger: this.defaultLogger,\n\t\t\tdefaultSessionExtractor: this.defaultSessionExtractor,\n\t\t\tdefaultEventPublisher: this.defaultEventPublisher,\n\t\t\tavailableAuthorizers: this.availableAuthorizers,\n\t\t\tdefaultAuthorizerName: this.defaultAuthorizerName,\n\t\t\tdefaultAuditorStorage: this.defaultAuditorStorage,\n\t\t\tdefaultDatabaseService: this.defaultDatabaseService,\n\t\t\tdefaultActorExtractor: extractor,\n\t\t\tcustomSecuritySchemes: this.customSecuritySchemes,\n\t\t\tdefaultRlsConfig: this.defaultRlsConfig,\n\t\t});\n\t}\n\n\t/**\n\t * Set the RLS (Row-Level Security) configuration for endpoints created from this factory.\n\t * This enables automatic PostgreSQL session variable setting for RLS policies.\n\t *\n\t * @example\n\t * ```typescript\n\t * const api = new EndpointFactory()\n\t * .database(databaseService)\n\t * .session(extractSession)\n\t * .rls({\n\t * extractor: ({ session }) => ({\n\t * user_id: session.userId,\n\t * tenant_id: session.tenantId,\n\t * }),\n\t * prefix: 'app',\n\t * });\n\t * ```\n\t */\n\trls<TConfig extends RlsConfig<TServices, TSession, TLogger>>(\n\t\tconfig: TConfig,\n\t): EndpointFactory<\n\t\tTServices,\n\t\tTBasePath,\n\t\tTLogger,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName,\n\t\tTSecuritySchemes,\n\t\tTConfig\n\t> {\n\t\treturn new EndpointFactory<\n\t\t\tTServices,\n\t\t\tTBasePath,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTSecuritySchemes,\n\t\t\tTConfig\n\t\t>({\n\t\t\tdefaultServices: this.defaultServices,\n\t\t\tbasePath: this.basePath,\n\t\t\tdefaultAuthorizeFn: this.defaultAuthorizeFn,\n\t\t\tdefaultLogger: this.defaultLogger,\n\t\t\tdefaultSessionExtractor: this.defaultSessionExtractor,\n\t\t\tdefaultEventPublisher: this.defaultEventPublisher,\n\t\t\tavailableAuthorizers: this.availableAuthorizers,\n\t\t\tdefaultAuthorizerName: this.defaultAuthorizerName,\n\t\t\tdefaultAuditorStorage: this.defaultAuditorStorage,\n\t\t\tdefaultDatabaseService: this.defaultDatabaseService,\n\t\t\tdefaultActorExtractor: this.defaultActorExtractor,\n\t\t\tcustomSecuritySchemes: this.customSecuritySchemes,\n\t\t\tdefaultRlsConfig: config,\n\t\t});\n\t}\n\n\tprivate createBuilder<TMethod extends HttpMethod, TPath extends string>(\n\t\tmethod: TMethod,\n\t\tpath: TPath,\n\t): EndpointBuilder<\n\t\tJoinPaths<TBasePath, TPath>,\n\t\tTMethod,\n\t\t{},\n\t\tTServices,\n\t\tTLogger,\n\t\tundefined,\n\t\tTSession,\n\t\tTEventPublisher,\n\t\tTEventPublisherServiceName,\n\t\tTAuthorizers,\n\t\tTAuditStorage,\n\t\tTAuditStorageServiceName,\n\t\tTAuditAction,\n\t\tTDatabase,\n\t\tTDatabaseServiceName\n\t> {\n\t\tconst fullPath = EndpointFactory.joinPaths(path, this.basePath);\n\t\tconst builder = new EndpointBuilder<\n\t\t\tJoinPaths<TBasePath, TPath>,\n\t\t\tTMethod,\n\t\t\t{},\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tundefined,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuthorizers,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>(fullPath, method);\n\n\t\tif (this.defaultAuthorizeFn) {\n\t\t\tbuilder._authorize = this.defaultAuthorizeFn;\n\t\t}\n\t\tif (this.defaultServices.length) {\n\t\t\t// Create a copy to avoid sharing references between builders\n\t\t\tbuilder._services = [...this.defaultServices] as TServices;\n\t\t}\n\n\t\tif (this.defaultLogger) {\n\t\t\tbuilder._logger = this.defaultLogger as TLogger;\n\t\t}\n\n\t\tif (this.defaultSessionExtractor) {\n\t\t\tbuilder._getSession = this.defaultSessionExtractor as SessionFn<\n\t\t\t\tTServices,\n\t\t\t\tTLogger,\n\t\t\t\tTSession\n\t\t\t>;\n\t\t}\n\n\t\tif (this.defaultEventPublisher) {\n\t\t\tbuilder._setPublisher(this.defaultEventPublisher);\n\t\t}\n\n\t\t// Set available authorizers and default\n\t\tbuilder._availableAuthorizers = this.availableAuthorizers;\n\t\tif (this.defaultAuthorizerName) {\n\t\t\tbuilder._authorizerName = this.defaultAuthorizerName;\n\t\t}\n\n\t\t// Set auditor storage if configured\n\t\tif (this.defaultAuditorStorage) {\n\t\t\tbuilder._setAuditorStorage(this.defaultAuditorStorage as any);\n\t\t}\n\n\t\t// Set database service if configured\n\t\tif (this.defaultDatabaseService) {\n\t\t\tbuilder._setDatabaseService(this.defaultDatabaseService as any);\n\t\t}\n\n\t\t// Set actor extractor if configured\n\t\tif (this.defaultActorExtractor) {\n\t\t\tbuilder._actorExtractor = this.defaultActorExtractor;\n\t\t}\n\n\t\t// Set custom security schemes\n\t\tbuilder._customSecuritySchemes = this.customSecuritySchemes;\n\n\t\t// Set RLS config if configured\n\t\tif (this.defaultRlsConfig) {\n\t\t\tbuilder._rlsConfig = this.defaultRlsConfig as any;\n\t\t}\n\n\t\treturn builder;\n\t}\n\n\tpost<TPath extends string>(path: TPath) {\n\t\treturn this.createBuilder('POST', path);\n\t}\n\n\tget<TPath extends string>(path: TPath) {\n\t\treturn this.createBuilder('GET', path);\n\t}\n\n\tput<TPath extends string>(path: TPath) {\n\t\treturn this.createBuilder('PUT', path);\n\t}\n\n\tdelete<TPath extends string>(path: TPath) {\n\t\treturn this.createBuilder('DELETE', path);\n\t}\n\n\tpatch<TPath extends string>(path: TPath) {\n\t\treturn this.createBuilder('PATCH', path);\n\t}\n\n\toptions<TPath extends string>(path: TPath) {\n\t\treturn this.createBuilder('OPTIONS', path);\n\t}\n}\n\nexport type RemoveTrailingSlash<T extends string> = T extends `${infer Rest}/`\n\t? Rest extends ''\n\t\t? T // Keep \"/\" as is\n\t\t: Rest\n\t: T;\n\nexport type JoinPaths<\n\tTBasePath extends string,\n\tTPath extends string,\n> = RemoveTrailingSlash<\n\tTBasePath extends ''\n\t\t? TPath\n\t\t: TPath extends ''\n\t\t\t? TBasePath\n\t\t\t: TBasePath extends '/'\n\t\t\t\t? TPath extends `/${string}`\n\t\t\t\t\t? TPath\n\t\t\t\t\t: `/${TPath}`\n\t\t\t\t: TBasePath extends `${infer Base}/`\n\t\t\t\t\t? TPath extends `/${infer Rest}`\n\t\t\t\t\t\t? `${Base}/${Rest}`\n\t\t\t\t\t\t: `${Base}/${TPath}`\n\t\t\t\t\t: TPath extends `/${infer Rest}`\n\t\t\t\t\t\t? `${TBasePath}/${Rest}`\n\t\t\t\t\t\t: `${TBasePath}/${TPath}`\n>;\n\nexport interface EndpointFactoryOptions<\n\tTServices extends Service[] = [],\n\tTBasePath extends string = '',\n\tTLogger extends Logger = Logger,\n\tTSession = unknown,\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTAuthorizers extends readonly string[] = readonly string[],\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTAuditStorageServiceName extends string = string,\n\tTDatabase = undefined,\n\tTDatabaseServiceName extends string = string,\n\tTSecuritySchemes extends Record<string, SecurityScheme> = Record<\n\t\tstring,\n\t\tSecurityScheme\n\t>,\n\tTRlsConfig extends\n\t\t| RlsConfig<TServices, TSession, TLogger>\n\t\t| undefined = undefined,\n> {\n\tdefaultServices?: TServices;\n\tbasePath?: TBasePath;\n\tdefaultAuthorizeFn?: AuthorizeFn<TServices, TLogger, TSession>;\n\tdefaultLogger?: TLogger;\n\tdefaultSessionExtractor?: SessionFn<TServices, TLogger, TSession, TDatabase>;\n\tdefaultEventPublisher?: Service<TEventPublisherServiceName, TEventPublisher>;\n\tdefaultEvents?: MappedEvent<TEventPublisher, undefined>[];\n\tavailableAuthorizers?: Authorizer[];\n\tdefaultAuthorizerName?: TAuthorizers[number];\n\tdefaultAuditorStorage?: Service<TAuditStorageServiceName, TAuditStorage>;\n\tdefaultDatabaseService?: Service<TDatabaseServiceName, TDatabase>;\n\tdefaultActorExtractor?: ActorExtractor<TServices, TSession, TLogger>;\n\tcustomSecuritySchemes?: TSecuritySchemes;\n\tdefaultRlsConfig?: TRlsConfig;\n}\n\nexport const e = new EndpointFactory();\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Authorizer, BuiltInSecuritySchemeId, SecurityScheme } from "./Authorizer-
|
|
2
|
-
import { ActorExtractor, AuthorizeFn, RlsConfig, SessionFn } from "./Endpoint-
|
|
3
|
-
import { EndpointBuilder } from "./EndpointBuilder-
|
|
1
|
+
import { Authorizer, BuiltInSecuritySchemeId, SecurityScheme } from "./Authorizer-DWtwC8we.cjs";
|
|
2
|
+
import { ActorExtractor, AuthorizeFn, RlsConfig, SessionFn } from "./Endpoint-BlcHiGNx.cjs";
|
|
3
|
+
import { EndpointBuilder } from "./EndpointBuilder-DPLAUHqg.cjs";
|
|
4
4
|
import { AuditStorage, AuditableAction, ExtractStorageAuditAction } from "@geekmidas/audit";
|
|
5
5
|
import { EventPublisher, MappedEvent } from "@geekmidas/events";
|
|
6
6
|
import { Logger } from "@geekmidas/logger";
|
|
@@ -139,4 +139,4 @@ declare const e: EndpointFactory<[], "", Logger, unknown, undefined, string, rea
|
|
|
139
139
|
|
|
140
140
|
//#endregion
|
|
141
141
|
export { EndpointFactory, EndpointFactoryOptions, JoinPaths, RemoveTrailingSlash, e };
|
|
142
|
-
//# sourceMappingURL=EndpointFactory-
|
|
142
|
+
//# sourceMappingURL=EndpointFactory-CiKcb5PX.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EndpointFactory-CiKcb5PX.d.cts","names":[],"sources":["../src/endpoints/EndpointFactory.ts"],"sourcesContent":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Authorizer, BuiltInSecuritySchemeId, SecurityScheme } from "./Authorizer-
|
|
2
|
-
import { ActorExtractor, AuthorizeFn, RlsConfig, SessionFn } from "./Endpoint-
|
|
3
|
-
import { EndpointBuilder } from "./EndpointBuilder-
|
|
1
|
+
import { Authorizer, BuiltInSecuritySchemeId, SecurityScheme } from "./Authorizer-DCcYOx3h.mjs";
|
|
2
|
+
import { ActorExtractor, AuthorizeFn, RlsConfig, SessionFn } from "./Endpoint-DEHuy46S.mjs";
|
|
3
|
+
import { EndpointBuilder } from "./EndpointBuilder-DaeCeneF.mjs";
|
|
4
4
|
import { Service } from "@geekmidas/services";
|
|
5
5
|
import { AuditStorage, AuditableAction, ExtractStorageAuditAction } from "@geekmidas/audit";
|
|
6
6
|
import { EventPublisher, MappedEvent } from "@geekmidas/events";
|
|
@@ -139,4 +139,4 @@ declare const e: EndpointFactory<[], "", Logger, unknown, undefined, string, rea
|
|
|
139
139
|
|
|
140
140
|
//#endregion
|
|
141
141
|
export { EndpointFactory, EndpointFactoryOptions, JoinPaths, RemoveTrailingSlash, e };
|
|
142
|
-
//# sourceMappingURL=EndpointFactory-
|
|
142
|
+
//# sourceMappingURL=EndpointFactory-DufM0t2z.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EndpointFactory-DufM0t2z.d.mts","names":[],"sources":["../src/endpoints/EndpointFactory.ts"],"sourcesContent":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
const require_chunk = require('./chunk-CUT6urMc.cjs');
|
|
2
|
-
const require_EndpointBuilder = require('./EndpointBuilder-
|
|
2
|
+
const require_EndpointBuilder = require('./EndpointBuilder-J5D67Y6a.cjs');
|
|
3
3
|
const __geekmidas_logger_console = require_chunk.__toESM(require("@geekmidas/logger/console"));
|
|
4
4
|
const lodash_uniqby = require_chunk.__toESM(require("lodash.uniqby"));
|
|
5
5
|
|
|
6
6
|
//#region src/endpoints/EndpointFactory.ts
|
|
7
7
|
const DEFAULT_LOGGER = new __geekmidas_logger_console.ConsoleLogger();
|
|
8
8
|
var EndpointFactory = class EndpointFactory {
|
|
9
|
-
defaultServices;
|
|
9
|
+
defaultServices = [];
|
|
10
10
|
basePath = "";
|
|
11
11
|
defaultAuthorizeFn;
|
|
12
12
|
defaultEventPublisher;
|
|
@@ -36,12 +36,12 @@ var EndpointFactory = class EndpointFactory {
|
|
|
36
36
|
}
|
|
37
37
|
static joinPaths(path, basePath = "") {
|
|
38
38
|
if (!basePath && !path) return "/";
|
|
39
|
-
if (!basePath) return path.startsWith("/") ? path :
|
|
40
|
-
if (!path) return basePath.startsWith("/") ? basePath :
|
|
39
|
+
if (!basePath) return path.startsWith("/") ? path : `/${path}`;
|
|
40
|
+
if (!path) return basePath.startsWith("/") ? basePath : `/${basePath}`;
|
|
41
41
|
const base = basePath.endsWith("/") ? basePath.slice(0, -1) : basePath;
|
|
42
|
-
const segment = path.startsWith("/") ? path :
|
|
42
|
+
const segment = path.startsWith("/") ? path : `/${path}`;
|
|
43
43
|
let result = base + segment;
|
|
44
|
-
if (!result.startsWith("/")) result =
|
|
44
|
+
if (!result.startsWith("/")) result = `/${result}`;
|
|
45
45
|
result = result.replace(/^\/+/g, "/");
|
|
46
46
|
if (result.length > 1 && result.endsWith("/")) result = result.slice(0, -1);
|
|
47
47
|
return result;
|
|
@@ -386,4 +386,4 @@ Object.defineProperty(exports, 'e', {
|
|
|
386
386
|
return e;
|
|
387
387
|
}
|
|
388
388
|
});
|
|
389
|
-
//# sourceMappingURL=EndpointFactory-
|
|
389
|
+
//# sourceMappingURL=EndpointFactory-d5uwWFkK.cjs.map
|