@geekmidas/constructs 3.0.6 → 3.0.8
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/CHANGELOG.md +15 -0
- package/dist/{Construct-BXG8cFSm.cjs → Construct-B14miJ6P.cjs} +95 -10
- package/dist/Construct-B14miJ6P.cjs.map +1 -0
- package/dist/{Construct-C2SyofdS.d.mts → Construct-CXqvzglu.d.cts} +11 -6
- package/dist/{Construct-C2SyofdS.d.mts.map → Construct-CXqvzglu.d.cts.map} +1 -1
- package/dist/{Construct-CQ9zV58W.mjs → Construct-CdJY2DJS.mjs} +83 -9
- package/dist/Construct-CdJY2DJS.mjs.map +1 -0
- package/dist/{Construct-CX7HyFfT.d.cts → Construct-D0n7QTaI.d.mts} +13 -8
- package/dist/Construct-D0n7QTaI.d.mts.map +1 -0
- package/dist/{Endpoint-DtFQFL63.d.mts → Endpoint-C991gK3T.d.cts} +133 -30
- package/dist/Endpoint-C991gK3T.d.cts.map +1 -0
- package/dist/{Endpoint-CGdCGJkC.d.cts → Endpoint-CRHpLPV3.d.mts} +133 -30
- package/dist/Endpoint-CRHpLPV3.d.mts.map +1 -0
- package/dist/{HonoEndpointAdaptor-B5fKdLi7.cjs → HonoEndpointAdaptor-BDz1qM4z.cjs} +81 -24
- package/dist/HonoEndpointAdaptor-BDz1qM4z.cjs.map +1 -0
- package/dist/{HonoEndpointAdaptor-DOUODM7n.mjs → HonoEndpointAdaptor-DPBfEPZj.mjs} +64 -7
- package/dist/HonoEndpointAdaptor-DPBfEPZj.mjs.map +1 -0
- package/dist/{Subscriber-1rDE7HuM.d.cts → Subscriber-D8WkA8np.d.cts} +3 -3
- package/dist/{Subscriber-1rDE7HuM.d.cts.map → Subscriber-D8WkA8np.d.cts.map} +1 -1
- package/dist/{Subscriber-BgB3RRxb.d.mts → Subscriber-Tft61-YG.d.mts} +5 -5
- package/dist/Subscriber-Tft61-YG.d.mts.map +1 -0
- package/dist/adaptors/aws.cjs +737 -21
- package/dist/adaptors/aws.cjs.map +1 -0
- package/dist/adaptors/aws.d.cts +221 -17
- package/dist/adaptors/aws.d.cts.map +1 -0
- package/dist/adaptors/aws.d.mts +221 -17
- package/dist/adaptors/aws.d.mts.map +1 -0
- package/dist/adaptors/aws.mjs +734 -18
- package/dist/adaptors/aws.mjs.map +1 -0
- package/dist/adaptors/hono.cjs +5 -12
- package/dist/adaptors/hono.d.cts +52 -10
- package/dist/adaptors/hono.d.cts.map +1 -0
- package/dist/adaptors/hono.d.mts +52 -10
- package/dist/adaptors/hono.d.mts.map +1 -0
- package/dist/adaptors/hono.mjs +5 -12
- package/dist/adaptors/testing.cjs +392 -15
- package/dist/adaptors/testing.cjs.map +1 -0
- package/dist/adaptors/testing.d.cts +177 -13
- package/dist/adaptors/testing.d.cts.map +1 -0
- package/dist/adaptors/testing.d.mts +177 -13
- package/dist/adaptors/testing.d.mts.map +1 -0
- package/dist/adaptors/testing.mjs +389 -14
- package/dist/adaptors/testing.mjs.map +1 -0
- package/dist/crons/index.cjs +82 -10
- package/dist/crons/index.cjs.map +1 -1
- package/dist/crons/index.d.cts +48 -11
- package/dist/crons/index.d.cts.map +1 -1
- package/dist/crons/index.d.mts +45 -11
- package/dist/crons/index.d.mts.map +1 -1
- package/dist/crons/index.mjs +79 -7
- package/dist/crons/index.mjs.map +1 -1
- package/dist/endpoints/index.cjs +717 -23
- package/dist/endpoints/index.cjs.map +1 -1
- package/dist/endpoints/index.d.cts +316 -14
- package/dist/endpoints/index.d.cts.map +1 -1
- package/dist/endpoints/index.d.mts +315 -14
- package/dist/endpoints/index.d.mts.map +1 -1
- package/dist/endpoints/index.mjs +706 -12
- package/dist/endpoints/index.mjs.map +1 -1
- package/dist/functions/index.cjs +5 -8
- package/dist/functions/index.d.cts +2 -5
- package/dist/functions/index.d.mts +2 -5
- package/dist/functions/index.mjs +2 -5
- package/dist/functions-DiaRAdfp.cjs +2893 -0
- package/dist/functions-DiaRAdfp.cjs.map +1 -0
- package/dist/functions-GmSHFbpr.mjs +2864 -0
- package/dist/functions-GmSHFbpr.mjs.map +1 -0
- package/dist/index-Cq4fz8uM.d.mts +132 -0
- package/dist/index-Cq4fz8uM.d.mts.map +1 -0
- package/dist/index-CzIMpK-e.d.cts +135 -0
- package/dist/index-CzIMpK-e.d.cts.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +3 -3
- package/dist/index.d.mts +3 -3
- package/dist/index.mjs +1 -1
- package/dist/lazyAccessors-CJZYs9uM.mjs +1887 -0
- package/dist/lazyAccessors-CJZYs9uM.mjs.map +1 -0
- package/dist/lazyAccessors-DHvDeww0.cjs +1964 -0
- package/dist/lazyAccessors-DHvDeww0.cjs.map +1 -0
- package/dist/processAudits-B0PbJf1Z.mjs +80 -0
- package/dist/processAudits-B0PbJf1Z.mjs.map +1 -0
- package/dist/processAudits-CUko08pi.cjs +92 -0
- package/dist/processAudits-CUko08pi.cjs.map +1 -0
- package/dist/subscribers/index.cjs +77 -6
- package/dist/subscribers/index.cjs.map +1 -1
- package/dist/subscribers/index.d.cts +27 -5
- package/dist/subscribers/index.d.cts.map +1 -1
- package/dist/subscribers/index.d.mts +26 -5
- package/dist/subscribers/index.d.mts.map +1 -1
- package/dist/subscribers/index.mjs +74 -3
- package/dist/subscribers/index.mjs.map +1 -1
- package/dist/{telemetry-BTaiRqPo.d.cts → telemetry-Bt0vK4ma.d.cts} +1 -1
- package/dist/{telemetry-BTaiRqPo.d.cts.map → telemetry-Bt0vK4ma.d.cts.map} +1 -1
- package/dist/{telemetry-C-kNOW3C.d.mts → telemetry-COvVBKBM.d.mts} +1 -1
- package/dist/{telemetry-C-kNOW3C.d.mts.map → telemetry-COvVBKBM.d.mts.map} +1 -1
- package/dist/{types-B5H3piDg.d.cts → types-B8YlI4cx.d.cts} +1 -1
- package/dist/{types-B5H3piDg.d.cts.map → types-B8YlI4cx.d.cts.map} +1 -1
- package/dist/{types-aFmq5cKh.d.mts → types-BA3eK4xj.d.mts} +1 -1
- package/dist/{types-aFmq5cKh.d.mts.map → types-BA3eK4xj.d.mts.map} +1 -1
- package/dist/types.d.cts +1 -1
- package/dist/types.d.mts +1 -1
- package/package.json +18 -13
- package/src/Construct.ts +26 -8
- package/src/__tests__/Construct.environment.spec.ts +123 -0
- package/src/adaptors/testing.ts +7 -0
- package/src/endpoints/MswEndpointAdaptor.ts +226 -0
- package/src/endpoints/__tests__/MswEndpointAdaptor.spec.ts +211 -0
- package/tsdown.config.ts +30 -1
- package/dist/AWSLambdaFunction-BF1gJJjG.d.mts +0 -32
- package/dist/AWSLambdaFunction-BF1gJJjG.d.mts.map +0 -1
- package/dist/AWSLambdaFunction-CPEAl5nZ.cjs +0 -120
- package/dist/AWSLambdaFunction-CPEAl5nZ.cjs.map +0 -1
- package/dist/AWSLambdaFunction-DJiCAPAf.mjs +0 -114
- package/dist/AWSLambdaFunction-DJiCAPAf.mjs.map +0 -1
- package/dist/AWSLambdaFunction-tzqv5XU6.d.cts +0 -32
- package/dist/AWSLambdaFunction-tzqv5XU6.d.cts.map +0 -1
- package/dist/AWSLambdaSubscriberAdaptor-Cj1wjkUP.d.cts +0 -36
- package/dist/AWSLambdaSubscriberAdaptor-Cj1wjkUP.d.cts.map +0 -1
- package/dist/AWSLambdaSubscriberAdaptor-OQvj2lKI.d.mts +0 -36
- package/dist/AWSLambdaSubscriberAdaptor-OQvj2lKI.d.mts.map +0 -1
- package/dist/AWSLambdaSubscriberAdaptor-RKwKYLl1.mjs +0 -172
- package/dist/AWSLambdaSubscriberAdaptor-RKwKYLl1.mjs.map +0 -1
- package/dist/AWSLambdaSubscriberAdaptor-eZ3qoKvK.cjs +0 -178
- package/dist/AWSLambdaSubscriberAdaptor-eZ3qoKvK.cjs.map +0 -1
- package/dist/AmazonApiGatewayEndpointAdaptor-BIltcbAc.cjs +0 -277
- package/dist/AmazonApiGatewayEndpointAdaptor-BIltcbAc.cjs.map +0 -1
- package/dist/AmazonApiGatewayEndpointAdaptor-BpYtYCeW.mjs +0 -271
- package/dist/AmazonApiGatewayEndpointAdaptor-BpYtYCeW.mjs.map +0 -1
- package/dist/AmazonApiGatewayEndpointAdaptor-DqNcQGMf.d.cts +0 -124
- package/dist/AmazonApiGatewayEndpointAdaptor-DqNcQGMf.d.cts.map +0 -1
- package/dist/AmazonApiGatewayEndpointAdaptor-Hi8Pbp2d.d.mts +0 -124
- package/dist/AmazonApiGatewayEndpointAdaptor-Hi8Pbp2d.d.mts.map +0 -1
- package/dist/AmazonApiGatewayV1EndpointAdaptor-CRwyWT6t.mjs +0 -42
- package/dist/AmazonApiGatewayV1EndpointAdaptor-CRwyWT6t.mjs.map +0 -1
- package/dist/AmazonApiGatewayV1EndpointAdaptor-DEETT6Wj.cjs +0 -47
- package/dist/AmazonApiGatewayV1EndpointAdaptor-DEETT6Wj.cjs.map +0 -1
- package/dist/AmazonApiGatewayV1EndpointAdaptor-DcN2fYsv.d.cts +0 -23
- package/dist/AmazonApiGatewayV1EndpointAdaptor-DcN2fYsv.d.cts.map +0 -1
- package/dist/AmazonApiGatewayV1EndpointAdaptor-cpwJzU4W.d.mts +0 -23
- package/dist/AmazonApiGatewayV1EndpointAdaptor-cpwJzU4W.d.mts.map +0 -1
- package/dist/AmazonApiGatewayV2EndpointAdaptor-C2qO8FN6.cjs +0 -48
- package/dist/AmazonApiGatewayV2EndpointAdaptor-C2qO8FN6.cjs.map +0 -1
- package/dist/AmazonApiGatewayV2EndpointAdaptor-Cn9UoRgB.d.cts +0 -22
- package/dist/AmazonApiGatewayV2EndpointAdaptor-Cn9UoRgB.d.cts.map +0 -1
- package/dist/AmazonApiGatewayV2EndpointAdaptor-LzH3hkB-.d.mts +0 -22
- package/dist/AmazonApiGatewayV2EndpointAdaptor-LzH3hkB-.d.mts.map +0 -1
- package/dist/AmazonApiGatewayV2EndpointAdaptor-m9YKI294.mjs +0 -42
- package/dist/AmazonApiGatewayV2EndpointAdaptor-m9YKI294.mjs.map +0 -1
- package/dist/Authorizer-4unKN3Xn.mjs +0 -68
- package/dist/Authorizer-4unKN3Xn.mjs.map +0 -1
- package/dist/Authorizer-DBsrDTuf.d.mts +0 -126
- package/dist/Authorizer-DBsrDTuf.d.mts.map +0 -1
- package/dist/Authorizer-DWtwC8we.d.cts +0 -126
- package/dist/Authorizer-DWtwC8we.d.cts.map +0 -1
- package/dist/Authorizer-Dx57psuM.cjs +0 -92
- package/dist/Authorizer-Dx57psuM.cjs.map +0 -1
- package/dist/BaseFunctionBuilder-C-4hYTfj.d.cts +0 -42
- package/dist/BaseFunctionBuilder-C-4hYTfj.d.cts.map +0 -1
- package/dist/BaseFunctionBuilder-C3rQMoWb.mjs +0 -70
- package/dist/BaseFunctionBuilder-C3rQMoWb.mjs.map +0 -1
- package/dist/BaseFunctionBuilder-CsvFjzA8.d.mts +0 -42
- package/dist/BaseFunctionBuilder-CsvFjzA8.d.mts.map +0 -1
- package/dist/BaseFunctionBuilder-DXf6HK-N.cjs +0 -76
- package/dist/BaseFunctionBuilder-DXf6HK-N.cjs.map +0 -1
- package/dist/Construct-BXG8cFSm.cjs.map +0 -1
- package/dist/Construct-CQ9zV58W.mjs.map +0 -1
- package/dist/Construct-CX7HyFfT.d.cts.map +0 -1
- package/dist/Construct.cjs +0 -6
- package/dist/Construct.d.cts +0 -2
- package/dist/Construct.d.mts +0 -2
- package/dist/Construct.mjs +0 -3
- package/dist/Cron-B3vrGuaD.mjs +0 -20
- package/dist/Cron-B3vrGuaD.mjs.map +0 -1
- package/dist/Cron-BDxW6fYg.d.cts +0 -26
- package/dist/Cron-BDxW6fYg.d.cts.map +0 -1
- package/dist/Cron-CWxjO2Fg.d.mts +0 -26
- package/dist/Cron-CWxjO2Fg.d.mts.map +0 -1
- package/dist/Cron-DEKZg5j4.cjs +0 -25
- package/dist/Cron-DEKZg5j4.cjs.map +0 -1
- package/dist/CronBuilder-BHpY6w3b.cjs +0 -74
- package/dist/CronBuilder-BHpY6w3b.cjs.map +0 -1
- package/dist/CronBuilder-CginrW3H.d.cts +0 -32
- package/dist/CronBuilder-CginrW3H.d.cts.map +0 -1
- package/dist/CronBuilder-DJnXbDGK.d.mts +0 -32
- package/dist/CronBuilder-DJnXbDGK.d.mts.map +0 -1
- package/dist/CronBuilder-VXpyNfp2.mjs +0 -68
- package/dist/CronBuilder-VXpyNfp2.mjs.map +0 -1
- package/dist/Endpoint-BcxvF4F3.cjs +0 -440
- package/dist/Endpoint-BcxvF4F3.cjs.map +0 -1
- package/dist/Endpoint-CGdCGJkC.d.cts.map +0 -1
- package/dist/Endpoint-DtFQFL63.d.mts.map +0 -1
- package/dist/Endpoint-DvY3aqAy.mjs +0 -422
- package/dist/Endpoint-DvY3aqAy.mjs.map +0 -1
- package/dist/EndpointBuilder-CMzbGG2c.mjs +0 -262
- package/dist/EndpointBuilder-CMzbGG2c.mjs.map +0 -1
- package/dist/EndpointBuilder-DIAsH97h.d.mts +0 -146
- package/dist/EndpointBuilder-DIAsH97h.d.mts.map +0 -1
- package/dist/EndpointBuilder-Dzqcm8Yv.d.cts +0 -146
- package/dist/EndpointBuilder-Dzqcm8Yv.d.cts.map +0 -1
- package/dist/EndpointBuilder-QdDf3x87.cjs +0 -268
- package/dist/EndpointBuilder-QdDf3x87.cjs.map +0 -1
- package/dist/EndpointFactory-AsfUsn-v.cjs +0 -393
- package/dist/EndpointFactory-AsfUsn-v.cjs.map +0 -1
- package/dist/EndpointFactory-C1rh407J.d.cts +0 -142
- package/dist/EndpointFactory-C1rh407J.d.cts.map +0 -1
- package/dist/EndpointFactory-CkPaFZA0.mjs +0 -381
- package/dist/EndpointFactory-CkPaFZA0.mjs.map +0 -1
- package/dist/EndpointFactory-pCuCu_1H.d.mts +0 -142
- package/dist/EndpointFactory-pCuCu_1H.d.mts.map +0 -1
- package/dist/Function-CZw1DRQ6.d.mts +0 -76
- package/dist/Function-CZw1DRQ6.d.mts.map +0 -1
- package/dist/Function-CwlB89lS.d.cts +0 -76
- package/dist/Function-CwlB89lS.d.cts.map +0 -1
- package/dist/Function-DgQ_no6B.cjs +0 -84
- package/dist/Function-DgQ_no6B.cjs.map +0 -1
- package/dist/Function-xfQbftdE.mjs +0 -72
- package/dist/Function-xfQbftdE.mjs.map +0 -1
- package/dist/FunctionBuilder-CBeqX18X.mjs +0 -80
- package/dist/FunctionBuilder-CBeqX18X.mjs.map +0 -1
- package/dist/FunctionBuilder-C_xG9As7.cjs +0 -86
- package/dist/FunctionBuilder-C_xG9As7.cjs.map +0 -1
- package/dist/FunctionBuilder-D_7f5MfS.d.cts +0 -40
- package/dist/FunctionBuilder-D_7f5MfS.d.cts.map +0 -1
- package/dist/FunctionBuilder-m5BNA2Ap.d.mts +0 -40
- package/dist/FunctionBuilder-m5BNA2Ap.d.mts.map +0 -1
- package/dist/FunctionExecutionWrapper-B0ZAssiy.mjs +0 -101
- package/dist/FunctionExecutionWrapper-B0ZAssiy.mjs.map +0 -1
- package/dist/FunctionExecutionWrapper-C7yYXIq-.d.mts +0 -50
- package/dist/FunctionExecutionWrapper-C7yYXIq-.d.mts.map +0 -1
- package/dist/FunctionExecutionWrapper-Cg8HjuHL.d.cts +0 -50
- package/dist/FunctionExecutionWrapper-Cg8HjuHL.d.cts.map +0 -1
- package/dist/FunctionExecutionWrapper-KKHP6fDY.cjs +0 -107
- package/dist/FunctionExecutionWrapper-KKHP6fDY.cjs.map +0 -1
- package/dist/HonoEndpointAdaptor-B5fKdLi7.cjs.map +0 -1
- package/dist/HonoEndpointAdaptor-BXga7Jqh.d.mts +0 -50
- package/dist/HonoEndpointAdaptor-BXga7Jqh.d.mts.map +0 -1
- package/dist/HonoEndpointAdaptor-D3IgM-0B.d.cts +0 -50
- package/dist/HonoEndpointAdaptor-D3IgM-0B.d.cts.map +0 -1
- package/dist/HonoEndpointAdaptor-DOUODM7n.mjs.map +0 -1
- package/dist/Subscriber-BEhOdNQi.mjs +0 -28
- package/dist/Subscriber-BEhOdNQi.mjs.map +0 -1
- package/dist/Subscriber-BgB3RRxb.d.mts.map +0 -1
- package/dist/Subscriber-Scz7hrV6.cjs +0 -34
- package/dist/Subscriber-Scz7hrV6.cjs.map +0 -1
- package/dist/SubscriberBuilder-B82h4v-S.cjs +0 -60
- package/dist/SubscriberBuilder-B82h4v-S.cjs.map +0 -1
- package/dist/SubscriberBuilder-B9uva8fZ.d.cts +0 -28
- package/dist/SubscriberBuilder-B9uva8fZ.d.cts.map +0 -1
- package/dist/SubscriberBuilder-DaQkh2Nt.d.mts +0 -28
- package/dist/SubscriberBuilder-DaQkh2Nt.d.mts.map +0 -1
- package/dist/SubscriberBuilder-DlUaG0Ej.mjs +0 -54
- package/dist/SubscriberBuilder-DlUaG0Ej.mjs.map +0 -1
- package/dist/TestEndpointAdaptor-Clz_L8Xj.d.cts +0 -45
- package/dist/TestEndpointAdaptor-Clz_L8Xj.d.cts.map +0 -1
- package/dist/TestEndpointAdaptor-DxXJoBBf.d.mts +0 -45
- package/dist/TestEndpointAdaptor-DxXJoBBf.d.mts.map +0 -1
- package/dist/TestEndpointAdaptor-G2T789bH.mjs +0 -174
- package/dist/TestEndpointAdaptor-G2T789bH.mjs.map +0 -1
- package/dist/TestEndpointAdaptor-YlwOEisx.cjs +0 -180
- package/dist/TestEndpointAdaptor-YlwOEisx.cjs.map +0 -1
- package/dist/TestFunctionAdaptor-BHk2bDOV.d.cts +0 -30
- package/dist/TestFunctionAdaptor-BHk2bDOV.d.cts.map +0 -1
- package/dist/TestFunctionAdaptor-C5CLuR-9.mjs +0 -75
- package/dist/TestFunctionAdaptor-C5CLuR-9.mjs.map +0 -1
- package/dist/TestFunctionAdaptor-CH6-gO_B.cjs +0 -81
- package/dist/TestFunctionAdaptor-CH6-gO_B.cjs.map +0 -1
- package/dist/TestFunctionAdaptor-DzT8GRdR.d.mts +0 -30
- package/dist/TestFunctionAdaptor-DzT8GRdR.d.mts.map +0 -1
- package/dist/TestSubscriberAdaptor-CPEiqSfE.d.mts +0 -26
- package/dist/TestSubscriberAdaptor-CPEiqSfE.d.mts.map +0 -1
- package/dist/TestSubscriberAdaptor-CwP3qNJ4.mjs +0 -51
- package/dist/TestSubscriberAdaptor-CwP3qNJ4.mjs.map +0 -1
- package/dist/TestSubscriberAdaptor-DQk5xzb0.d.cts +0 -26
- package/dist/TestSubscriberAdaptor-DQk5xzb0.d.cts.map +0 -1
- package/dist/TestSubscriberAdaptor-Dgxr_0vL.cjs +0 -57
- package/dist/TestSubscriberAdaptor-Dgxr_0vL.cjs.map +0 -1
- package/dist/chunk-CUT6urMc.cjs +0 -30
- package/dist/crons/Cron.cjs +0 -8
- package/dist/crons/Cron.d.cts +0 -7
- package/dist/crons/Cron.d.mts +0 -7
- package/dist/crons/Cron.mjs +0 -8
- package/dist/crons/CronBuilder.cjs +0 -9
- package/dist/crons/CronBuilder.d.cts +0 -8
- package/dist/crons/CronBuilder.d.mts +0 -8
- package/dist/crons/CronBuilder.mjs +0 -9
- package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.cjs +0 -11
- package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.d.cts +0 -11
- package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.d.mts +0 -11
- package/dist/endpoints/AmazonApiGatewayEndpointAdaptor.mjs +0 -11
- package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.cjs +0 -13
- package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.d.cts +0 -12
- package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.d.mts +0 -12
- package/dist/endpoints/AmazonApiGatewayV1EndpointAdaptor.mjs +0 -13
- package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.cjs +0 -13
- package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.d.cts +0 -12
- package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.d.mts +0 -12
- package/dist/endpoints/AmazonApiGatewayV2EndpointAdaptor.mjs +0 -13
- package/dist/endpoints/Authorizer.cjs +0 -6
- package/dist/endpoints/Authorizer.d.cts +0 -2
- package/dist/endpoints/Authorizer.d.mts +0 -2
- package/dist/endpoints/Authorizer.mjs +0 -3
- package/dist/endpoints/Endpoint.cjs +0 -10
- package/dist/endpoints/Endpoint.d.cts +0 -9
- package/dist/endpoints/Endpoint.d.mts +0 -9
- package/dist/endpoints/Endpoint.mjs +0 -8
- package/dist/endpoints/EndpointBuilder.cjs +0 -11
- package/dist/endpoints/EndpointBuilder.d.cts +0 -10
- package/dist/endpoints/EndpointBuilder.d.mts +0 -10
- package/dist/endpoints/EndpointBuilder.mjs +0 -11
- package/dist/endpoints/EndpointFactory.cjs +0 -13
- package/dist/endpoints/EndpointFactory.d.cts +0 -11
- package/dist/endpoints/EndpointFactory.d.mts +0 -11
- package/dist/endpoints/EndpointFactory.mjs +0 -12
- package/dist/endpoints/HonoEndpointAdaptor.cjs +0 -14
- package/dist/endpoints/HonoEndpointAdaptor.d.cts +0 -10
- package/dist/endpoints/HonoEndpointAdaptor.d.mts +0 -10
- package/dist/endpoints/HonoEndpointAdaptor.mjs +0 -14
- package/dist/endpoints/TestEndpointAdaptor.cjs +0 -12
- package/dist/endpoints/TestEndpointAdaptor.d.cts +0 -10
- package/dist/endpoints/TestEndpointAdaptor.d.mts +0 -10
- package/dist/endpoints/TestEndpointAdaptor.mjs +0 -12
- package/dist/endpoints/audit.cjs +0 -0
- package/dist/endpoints/audit.d.cts +0 -9
- package/dist/endpoints/audit.d.mts +0 -9
- package/dist/endpoints/audit.mjs +0 -0
- package/dist/endpoints/helpers.cjs +0 -10
- package/dist/endpoints/helpers.d.cts +0 -60
- package/dist/endpoints/helpers.d.cts.map +0 -1
- package/dist/endpoints/helpers.d.mts +0 -60
- package/dist/endpoints/helpers.d.mts.map +0 -1
- package/dist/endpoints/helpers.mjs +0 -9
- package/dist/endpoints/lazyAccessors.cjs +0 -10
- package/dist/endpoints/lazyAccessors.d.cts +0 -10
- package/dist/endpoints/lazyAccessors.d.mts +0 -10
- package/dist/endpoints/lazyAccessors.mjs +0 -3
- package/dist/endpoints/parseHonoQuery.cjs +0 -3
- package/dist/endpoints/parseHonoQuery.d.cts +0 -14
- package/dist/endpoints/parseHonoQuery.d.cts.map +0 -1
- package/dist/endpoints/parseHonoQuery.d.mts +0 -14
- package/dist/endpoints/parseHonoQuery.d.mts.map +0 -1
- package/dist/endpoints/parseHonoQuery.mjs +0 -3
- package/dist/endpoints/parseQueryParams.cjs +0 -3
- package/dist/endpoints/parseQueryParams.d.cts +0 -14
- package/dist/endpoints/parseQueryParams.d.cts.map +0 -1
- package/dist/endpoints/parseQueryParams.d.mts +0 -14
- package/dist/endpoints/parseQueryParams.d.mts.map +0 -1
- package/dist/endpoints/parseQueryParams.mjs +0 -3
- package/dist/endpoints/processAudits.cjs +0 -5
- package/dist/endpoints/processAudits.d.cts +0 -95
- package/dist/endpoints/processAudits.d.cts.map +0 -1
- package/dist/endpoints/processAudits.d.mts +0 -95
- package/dist/endpoints/processAudits.d.mts.map +0 -1
- package/dist/endpoints/processAudits.mjs +0 -3
- package/dist/endpoints/rls.cjs +0 -3
- package/dist/endpoints/rls.d.cts +0 -9
- package/dist/endpoints/rls.d.mts +0 -9
- package/dist/endpoints/rls.mjs +0 -3
- package/dist/functions/AWSLambdaFunction.cjs +0 -9
- package/dist/functions/AWSLambdaFunction.d.cts +0 -5
- package/dist/functions/AWSLambdaFunction.d.mts +0 -5
- package/dist/functions/AWSLambdaFunction.mjs +0 -9
- package/dist/functions/BaseFunctionBuilder.cjs +0 -4
- package/dist/functions/BaseFunctionBuilder.d.cts +0 -3
- package/dist/functions/BaseFunctionBuilder.d.mts +0 -3
- package/dist/functions/BaseFunctionBuilder.mjs +0 -4
- package/dist/functions/Function.cjs +0 -5
- package/dist/functions/Function.d.cts +0 -3
- package/dist/functions/Function.d.mts +0 -3
- package/dist/functions/Function.mjs +0 -4
- package/dist/functions/FunctionBuilder.cjs +0 -6
- package/dist/functions/FunctionBuilder.d.cts +0 -5
- package/dist/functions/FunctionBuilder.d.mts +0 -5
- package/dist/functions/FunctionBuilder.mjs +0 -6
- package/dist/functions/FunctionExecutionWrapper.cjs +0 -8
- package/dist/functions/FunctionExecutionWrapper.d.cts +0 -4
- package/dist/functions/FunctionExecutionWrapper.d.mts +0 -4
- package/dist/functions/FunctionExecutionWrapper.mjs +0 -8
- package/dist/functions/TestFunctionAdaptor.cjs +0 -8
- package/dist/functions/TestFunctionAdaptor.d.cts +0 -4
- package/dist/functions/TestFunctionAdaptor.d.mts +0 -4
- package/dist/functions/TestFunctionAdaptor.mjs +0 -8
- package/dist/functions-B1mrMoUH.mjs +0 -8
- package/dist/functions-B1mrMoUH.mjs.map +0 -1
- package/dist/functions-rOD3pXQd.cjs +0 -13
- package/dist/functions-rOD3pXQd.cjs.map +0 -1
- package/dist/helpers-BYyX0qTA.cjs +0 -95
- package/dist/helpers-BYyX0qTA.cjs.map +0 -1
- package/dist/helpers-BtwC2IW8.mjs +0 -83
- package/dist/helpers-BtwC2IW8.mjs.map +0 -1
- package/dist/index-BfeupgMl.d.cts +0 -12
- package/dist/index-BfeupgMl.d.cts.map +0 -1
- package/dist/index-DQo_Csy7.d.mts +0 -12
- package/dist/index-DQo_Csy7.d.mts.map +0 -1
- package/dist/lazyAccessors-BVEtB9lU.cjs +0 -223
- package/dist/lazyAccessors-BVEtB9lU.cjs.map +0 -1
- package/dist/lazyAccessors-Bled3FVc.d.mts +0 -49
- package/dist/lazyAccessors-Bled3FVc.d.mts.map +0 -1
- package/dist/lazyAccessors-C8AF1hNi.d.cts +0 -49
- package/dist/lazyAccessors-C8AF1hNi.d.cts.map +0 -1
- package/dist/lazyAccessors-DM6HcXQk.mjs +0 -175
- package/dist/lazyAccessors-DM6HcXQk.mjs.map +0 -1
- package/dist/parseHonoQuery-BBs8CX-H.cjs +0 -24
- package/dist/parseHonoQuery-BBs8CX-H.cjs.map +0 -1
- package/dist/parseHonoQuery-Cp8CII0P.mjs +0 -18
- package/dist/parseHonoQuery-Cp8CII0P.mjs.map +0 -1
- package/dist/parseQueryParams-B4RK1za3.cjs +0 -31
- package/dist/parseQueryParams-B4RK1za3.cjs.map +0 -1
- package/dist/parseQueryParams-DS3Qmrbd.mjs +0 -25
- package/dist/parseQueryParams-DS3Qmrbd.mjs.map +0 -1
- package/dist/processAudits-CzHkPokQ.cjs +0 -180
- package/dist/processAudits-CzHkPokQ.cjs.map +0 -1
- package/dist/processAudits-Dj8UGqcW.mjs +0 -162
- package/dist/processAudits-Dj8UGqcW.mjs.map +0 -1
- package/dist/publisher-BrzPGnm4.d.cts +0 -16
- package/dist/publisher-BrzPGnm4.d.cts.map +0 -1
- package/dist/publisher-Bw4770Hi.mjs +0 -41
- package/dist/publisher-Bw4770Hi.mjs.map +0 -1
- package/dist/publisher-CP4gpv-4.d.mts +0 -16
- package/dist/publisher-CP4gpv-4.d.mts.map +0 -1
- package/dist/publisher-lFQleddL.cjs +0 -53
- package/dist/publisher-lFQleddL.cjs.map +0 -1
- package/dist/publisher.cjs +0 -4
- package/dist/publisher.d.cts +0 -3
- package/dist/publisher.d.mts +0 -3
- package/dist/publisher.mjs +0 -3
- package/dist/rls-7XXX7DvY.mjs +0 -9
- package/dist/rls-7XXX7DvY.mjs.map +0 -1
- package/dist/rls-DxFqdIA0.cjs +0 -15
- package/dist/rls-DxFqdIA0.cjs.map +0 -1
- package/dist/subscribers/AWSLambdaSubscriberAdaptor.cjs +0 -3
- package/dist/subscribers/AWSLambdaSubscriberAdaptor.d.cts +0 -4
- package/dist/subscribers/AWSLambdaSubscriberAdaptor.d.mts +0 -4
- package/dist/subscribers/AWSLambdaSubscriberAdaptor.mjs +0 -3
- package/dist/subscribers/Subscriber.cjs +0 -4
- package/dist/subscribers/Subscriber.d.cts +0 -3
- package/dist/subscribers/Subscriber.d.mts +0 -3
- package/dist/subscribers/Subscriber.mjs +0 -4
- package/dist/subscribers/SubscriberBuilder.cjs +0 -5
- package/dist/subscribers/SubscriberBuilder.d.cts +0 -4
- package/dist/subscribers/SubscriberBuilder.d.mts +0 -4
- package/dist/subscribers/SubscriberBuilder.mjs +0 -5
- package/dist/subscribers/TestSubscriberAdaptor.cjs +0 -4
- package/dist/subscribers/TestSubscriberAdaptor.d.cts +0 -4
- package/dist/subscribers/TestSubscriberAdaptor.d.mts +0 -4
- package/dist/subscribers/TestSubscriberAdaptor.mjs +0 -4
- package/dist/telemetry.cjs +0 -0
- package/dist/telemetry.d.cts +0 -2
- package/dist/telemetry.d.mts +0 -2
- package/dist/telemetry.mjs +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TestEndpointAdaptor-YlwOEisx.cjs","names":["name: string","value: string","options?: CookieOptions","_endpoint: Endpoint<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\tTOutSchema,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>","EnvironmentParser","endpoint: Endpoint<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\tTOutSchema,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTAuditAction,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>","serviceDiscovery: ServiceDiscovery<any>","ctx: TestRequestAdaptor<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>","UnauthorizedError","auditContext: AuditExecutionContext<TAuditAction> | undefined","actor: AuditActor","DefaultAuditor","ResponseBuilder","metadata","output","result","headers: Record<string, string | string[]>","setCookieValues: string[]","cookie"],"sources":["../src/endpoints/TestEndpointAdaptor.ts"],"sourcesContent":["import type {\n\tAuditActor,\n\tAuditableAction,\n\tAuditStorage,\n} from '@geekmidas/audit';\nimport { DefaultAuditor } from '@geekmidas/audit';\nimport { EnvironmentParser } from '@geekmidas/envkit';\nimport { UnauthorizedError } from '@geekmidas/errors';\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport type {\n\tInferComposableStandardSchema,\n\tInferStandardSchema,\n} from '@geekmidas/schema';\nimport {\n\trunWithRequestContext,\n\ttype Service,\n\tServiceDiscovery,\n\ttype ServiceRecord,\n} from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport { publishConstructEvents } from '../publisher';\nimport type { HttpMethod } from '../types';\nimport type { MappedAudit } from './audit';\nimport {\n\ttype CookieOptions,\n\tEndpoint,\n\ttype EndpointSchemas,\n\tResponseBuilder,\n} from './Endpoint';\nimport {\n\tcreateCookieHeaderAccessor,\n\tcreateObjectHeaders,\n} from './lazyAccessors';\nimport {\n\ttype AuditExecutionContext,\n\texecuteWithAuditTransaction,\n} from './processAudits';\n\nexport type TestHttpResponse<TBody = any> = {\n\tbody: TBody;\n\tstatus: number;\n\theaders: Record<string, string | string[]>;\n};\n\n/**\n * Serializes a cookie into a Set-Cookie header string\n */\nfunction serializeCookie(\n\tname: string,\n\tvalue: string,\n\toptions?: CookieOptions,\n): string {\n\tlet cookieString = `${name}=${value}`;\n\n\tif (options) {\n\t\tif (options.maxAge !== undefined) {\n\t\t\tcookieString += `; Max-Age=${options.maxAge}`;\n\t\t}\n\t\tif (options.expires) {\n\t\t\tcookieString += `; Expires=${options.expires.toUTCString()}`;\n\t\t}\n\t\tif (options.domain) {\n\t\t\tcookieString += `; Domain=${options.domain}`;\n\t\t}\n\t\tif (options.path) {\n\t\t\tcookieString += `; Path=${options.path}`;\n\t\t}\n\t\tif (options.httpOnly) {\n\t\t\tcookieString += '; HttpOnly';\n\t\t}\n\t\tif (options.secure) {\n\t\t\tcookieString += '; Secure';\n\t\t}\n\t\tif (options.sameSite) {\n\t\t\tcookieString += `; SameSite=${options.sameSite}`;\n\t\t}\n\t}\n\n\treturn cookieString;\n}\n\nexport class TestEndpointAdaptor<\n\tTRoute extends string,\n\tTMethod extends HttpMethod,\n\tTInput extends EndpointSchemas = {},\n\tTOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tTSession = unknown,\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = 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> {\n\tstatic getDefaultServiceDiscover<\n\t\tTRoute extends string,\n\t\tTMethod extends HttpMethod,\n\t\tTInput extends EndpointSchemas = {},\n\t\tTOutSchema extends StandardSchemaV1 | undefined = undefined,\n\t\tTServices extends Service[] = [],\n\t\tTLogger extends Logger = Logger,\n\t\tTSession = unknown,\n\t\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\t\tTEventPublisherServiceName extends string = string,\n\t\tTAuditStorage extends AuditStorage | undefined = undefined,\n\t\tTAuditStorageServiceName extends string = string,\n\t\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\t\tstring,\n\t\t\tunknown\n\t\t>,\n\t\tTDatabase = undefined,\n\t\tTDatabaseServiceName extends string = string,\n\t>(\n\t\t_endpoint: Endpoint<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\tTOutSchema,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\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\t\treturn ServiceDiscovery.getInstance(new EnvironmentParser({}));\n\t}\n\tconstructor(\n\t\tprivate readonly endpoint: Endpoint<\n\t\t\tTRoute,\n\t\t\tTMethod,\n\t\t\tTInput,\n\t\t\tTOutSchema,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTSession,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\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\tprivate serviceDiscovery: ServiceDiscovery<any> = TestEndpointAdaptor.getDefaultServiceDiscover(\n\t\t\tendpoint,\n\t\t),\n\t) {}\n\n\tasync fullRequest(\n\t\tctx: TestRequestAdaptor<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>,\n\t): Promise<TestHttpResponse<InferStandardSchema<TOutSchema>>> {\n\t\tconst body = await this.endpoint.parseInput((ctx as any).body, 'body');\n\t\tconst query = await this.endpoint.parseInput((ctx as any).query, 'query');\n\t\tconst params = await this.endpoint.parseInput(\n\t\t\t(ctx as any).params,\n\t\t\t'params',\n\t\t);\n\n\t\t// Lazy accessors - defer parsing until needed\n\t\tconst header = createObjectHeaders(ctx.headers);\n\t\tconst cookie = createCookieHeaderAccessor(ctx.headers.cookie);\n\n\t\t// Request context setup\n\t\tconst startTime = Date.now();\n\t\tconst requestId =\n\t\t\t(ctx as any).requestId ??\n\t\t\tctx.headers['x-request-id'] ??\n\t\t\tcrypto.randomUUID();\n\n\t\tconst logger = this.endpoint.logger.child({\n\t\t\trequestId,\n\t\t\troute: this.endpoint.route,\n\t\t\thost: ctx.headers.host,\n\t\t\tmethod: this.endpoint.method,\n\t\t}) as TLogger;\n\n\t\t// Get database from context for session extraction\n\t\tconst rawDb = (ctx as any).database as TDatabase;\n\n\t\t// Wrap handler execution in request context\n\t\treturn runWithRequestContext({ logger, requestId, startTime }, async () => {\n\t\t\tconst session = await this.endpoint.getSession({\n\t\t\t\tlogger,\n\t\t\t\tservices: ctx.services,\n\t\t\t\theader,\n\t\t\t\tcookie,\n\t\t\t\t...(rawDb !== undefined && { db: rawDb }),\n\t\t\t} as any);\n\n\t\t\t// Check authorization\n\t\t\tconst isAuthorized = await this.endpoint.authorize({\n\t\t\t\theader,\n\t\t\t\tcookie,\n\t\t\t\tservices: ctx.services,\n\t\t\t\tlogger,\n\t\t\t\tsession,\n\t\t\t\t...(rawDb !== undefined && { db: rawDb }),\n\t\t\t\tbody,\n\t\t\t\tquery,\n\t\t\t\tparams,\n\t\t\t} as any);\n\n\t\t\tif (!isAuthorized) {\n\t\t\t\tlogger.warn('Unauthorized access attempt');\n\t\t\t\tthrow new UnauthorizedError(\n\t\t\t\t\t'Unauthorized access to the endpoint',\n\t\t\t\t\t'You do not have permission to access this resource.',\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Create audit context if audit storage is provided\n\t\t\t// The auditorStorage instance is required when endpoint uses .auditor()\n\t\t\tconst auditorStorage = (ctx as any).auditorStorage as TAuditStorage;\n\t\t\tlet auditContext: AuditExecutionContext<TAuditAction> | undefined;\n\n\t\t\tif (auditorStorage) {\n\t\t\t\t// Extract actor if configured\n\t\t\t\tlet actor: AuditActor = { id: 'system', type: 'system' };\n\t\t\t\tif (this.endpoint.actorExtractor) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tactor = await this.endpoint.actorExtractor({\n\t\t\t\t\t\t\tservices: ctx.services as any,\n\t\t\t\t\t\t\tsession,\n\t\t\t\t\t\t\theader,\n\t\t\t\t\t\t\tcookie,\n\t\t\t\t\t\t\tlogger,\n\t\t\t\t\t\t});\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\tlogger.error(error as Error, 'Failed to extract actor for audits');\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst auditor = new DefaultAuditor<TAuditAction>({\n\t\t\t\t\tactor,\n\t\t\t\t\tstorage: auditorStorage as AuditStorage,\n\t\t\t\t\tmetadata: {\n\t\t\t\t\t\tendpoint: this.endpoint.route,\n\t\t\t\t\t\tmethod: this.endpoint.method,\n\t\t\t\t\t},\n\t\t\t\t});\n\n\t\t\t\tauditContext = { auditor, storage: auditorStorage as AuditStorage };\n\t\t\t}\n\n\t\t\t// Warn if declarative audits are configured but no audit storage\n\t\t\tconst audits = this.endpoint.audits as MappedAudit<\n\t\t\t\tTAuditAction,\n\t\t\t\tTOutSchema\n\t\t\t>[];\n\t\t\tif (!auditContext && audits?.length) {\n\t\t\t\tlogger.warn('No auditor storage service available');\n\t\t\t}\n\n\t\t\t// Execute handler with automatic audit transaction support\n\t\t\tconst result = await executeWithAuditTransaction(\n\t\t\t\tauditContext,\n\t\t\t\tasync (auditor) => {\n\t\t\t\t\t// Use audit transaction as db if available (when storage has same database)\n\t\t\t\t\t// For testing, the tester controls whether to use transactional auditing\n\t\t\t\t\tconst trx = auditor?.getTransaction?.();\n\t\t\t\t\tconst db = trx ?? rawDb;\n\n\t\t\t\t\tconst responseBuilder = new ResponseBuilder();\n\t\t\t\t\tconst response = await this.endpoint.handler(\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tbody,\n\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\tparams,\n\t\t\t\t\t\t\tsession,\n\t\t\t\t\t\t\tservices: ctx.services,\n\t\t\t\t\t\t\tlogger,\n\t\t\t\t\t\t\theader,\n\t\t\t\t\t\t\tcookie,\n\t\t\t\t\t\t\tauditor,\n\t\t\t\t\t\t\tdb,\n\t\t\t\t\t\t} as any,\n\t\t\t\t\t\tresponseBuilder,\n\t\t\t\t\t);\n\n\t\t\t\t\t// Check if response has metadata\n\t\t\t\t\tlet data = response;\n\t\t\t\t\tlet metadata = responseBuilder.getMetadata();\n\n\t\t\t\t\tif (Endpoint.hasMetadata(response)) {\n\t\t\t\t\t\tdata = response.data;\n\t\t\t\t\t\tmetadata = response.metadata;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst output = await this.endpoint.parseOutput(data);\n\n\t\t\t\t\treturn { output, metadata, responseBuilder };\n\t\t\t\t},\n\t\t\t\t// Process declarative audits after handler (inside transaction)\n\t\t\t\tasync (result, auditor) => {\n\t\t\t\t\tif (!audits?.length) return;\n\n\t\t\t\t\tfor (const audit of audits) {\n\t\t\t\t\t\tif (audit.when && !audit.when(result.output as any)) {\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst payload = audit.payload(result.output as any);\n\t\t\t\t\t\tconst entityId = audit.entityId?.(result.output as any);\n\t\t\t\t\t\tauditor.audit(audit.type as any, payload as any, {\n\t\t\t\t\t\t\ttable: audit.table,\n\t\t\t\t\t\t\tentityId,\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t// Pass rawDb so storage can reuse existing transactions\n\t\t\t\t{ db: rawDb },\n\t\t\t);\n\n\t\t\tconst { output, metadata } = result;\n\n\t\t\tctx.publisher && (await this.serviceDiscovery.register([ctx.publisher]));\n\t\t\tawait publishConstructEvents(\n\t\t\t\tthis.endpoint,\n\t\t\t\toutput,\n\t\t\t\tthis.serviceDiscovery,\n\t\t\t);\n\n\t\t\t// Convert cookies to Set-Cookie headers\n\t\t\tconst headers: Record<string, string | string[]> = {\n\t\t\t\t...(metadata.headers || {}),\n\t\t\t};\n\n\t\t\tif (metadata.cookies && metadata.cookies.size > 0) {\n\t\t\t\tconst setCookieValues: string[] = [];\n\t\t\t\tfor (const [name, cookie] of metadata.cookies.entries()) {\n\t\t\t\t\tsetCookieValues.push(\n\t\t\t\t\t\tserializeCookie(name, cookie.value, cookie.options),\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\theaders['set-cookie'] = setCookieValues;\n\t\t\t}\n\n\t\t\t// Return HTTP response format\n\t\t\treturn {\n\t\t\t\tbody: output,\n\t\t\t\tstatus: metadata.status || 200,\n\t\t\t\theaders,\n\t\t\t};\n\t\t});\n\t}\n\n\tasync request(\n\t\tctx: TestRequestAdaptor<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName\n\t\t>,\n\t): Promise<InferStandardSchema<TOutSchema>> {\n\t\tconst response = await this.fullRequest(ctx);\n\t\treturn response.body;\n\t}\n}\n\n/**\n * Conditional audit storage requirement - required when TAuditStorage is configured\n */\ntype AuditStorageRequirement<\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n> = TAuditStorage extends undefined\n\t? {}\n\t: {\n\t\t\t/** Audit storage instance - required when endpoint uses .auditor() */\n\t\t\tauditorStorage: TAuditStorage;\n\t\t};\n\n/**\n * Conditional database requirement - required when TDatabase is configured\n */\ntype DatabaseRequirement<TDatabase = undefined> = TDatabase extends undefined\n\t? {}\n\t: {\n\t\t\t/** Database instance - required when endpoint uses .database() */\n\t\t\tdatabase: TDatabase;\n\t\t};\n\nexport type TestRequestAdaptor<\n\tTInput extends EndpointSchemas = {},\n\tTServices extends Service[] = [],\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\t_TAuditStorageServiceName extends string = string,\n\tTDatabase = undefined,\n\t_TDatabaseServiceName extends string = string,\n> = {\n\tservices: ServiceRecord<TServices>;\n\theaders: Record<string, string>;\n\tpublisher?: Service<TEventPublisherServiceName, TEventPublisher>;\n} & InferComposableStandardSchema<TInput> &\n\tAuditStorageRequirement<TAuditStorage> &\n\tDatabaseRequirement<TDatabase>;\n"],"mappings":";;;;;;;;;;;;;;AAgDA,SAAS,gBACRA,MACAC,OACAC,SACS;CACT,IAAI,gBAAgB,EAAE,KAAK,GAAG,MAAM;AAEpC,KAAI,SAAS;AACZ,MAAI,QAAQ,kBACX,kBAAiB,YAAY,QAAQ,OAAO;AAE7C,MAAI,QAAQ,QACX,kBAAiB,YAAY,QAAQ,QAAQ,aAAa,CAAC;AAE5D,MAAI,QAAQ,OACX,kBAAiB,WAAW,QAAQ,OAAO;AAE5C,MAAI,QAAQ,KACX,kBAAiB,SAAS,QAAQ,KAAK;AAExC,MAAI,QAAQ,SACX,iBAAgB;AAEjB,MAAI,QAAQ,OACX,iBAAgB;AAEjB,MAAI,QAAQ,SACX,kBAAiB,aAAa,QAAQ,SAAS;CAEhD;AAED,QAAO;AACP;AAED,IAAa,sBAAb,MAAa,oBAkBX;CACD,OAAO,0BAmBNC,WAgBC;AACD,SAAO,sCAAiB,YAAY,IAAIC,qCAAkB,CAAE,GAAE;CAC9D;CACD,YACkBC,UAgBTC,mBAA0C,oBAAoB,0BACrE,SACA,EACA;EAnBgB;EAgBT;CAGL;CAEJ,MAAM,YACLC,KAU6D;EAC7D,MAAM,OAAO,MAAM,KAAK,SAAS,WAAY,IAAY,MAAM,OAAO;EACtE,MAAM,QAAQ,MAAM,KAAK,SAAS,WAAY,IAAY,OAAO,QAAQ;EACzE,MAAM,SAAS,MAAM,KAAK,SAAS,WACjC,IAAY,QACb,SACA;EAGD,MAAM,SAAS,0CAAoB,IAAI,QAAQ;EAC/C,MAAM,SAAS,iDAA2B,IAAI,QAAQ,OAAO;EAG7D,MAAM,YAAY,KAAK,KAAK;EAC5B,MAAM,YACJ,IAAY,aACb,IAAI,QAAQ,mBACZ,OAAO,YAAY;EAEpB,MAAM,SAAS,KAAK,SAAS,OAAO,MAAM;GACzC;GACA,OAAO,KAAK,SAAS;GACrB,MAAM,IAAI,QAAQ;GAClB,QAAQ,KAAK,SAAS;EACtB,EAAC;EAGF,MAAM,QAAS,IAAY;AAG3B,SAAO,gDAAsB;GAAE;GAAQ;GAAW;EAAW,GAAE,YAAY;GAC1E,MAAM,UAAU,MAAM,KAAK,SAAS,WAAW;IAC9C;IACA,UAAU,IAAI;IACd;IACA;IACA,GAAI,oBAAuB,EAAE,IAAI,MAAO;GACxC,EAAQ;GAGT,MAAM,eAAe,MAAM,KAAK,SAAS,UAAU;IAClD;IACA;IACA,UAAU,IAAI;IACd;IACA;IACA,GAAI,oBAAuB,EAAE,IAAI,MAAO;IACxC;IACA;IACA;GACA,EAAQ;AAET,QAAK,cAAc;AAClB,WAAO,KAAK,8BAA8B;AAC1C,UAAM,IAAIC,qCACT,uCACA;GAED;GAID,MAAM,iBAAkB,IAAY;GACpC,IAAIC;AAEJ,OAAI,gBAAgB;IAEnB,IAAIC,QAAoB;KAAE,IAAI;KAAU,MAAM;IAAU;AACxD,QAAI,KAAK,SAAS,eACjB,KAAI;AACH,aAAQ,MAAM,KAAK,SAAS,eAAe;MAC1C,UAAU,IAAI;MACd;MACA;MACA;MACA;KACA,EAAC;IACF,SAAQ,OAAO;AACf,YAAO,MAAM,OAAgB,qCAAqC;IAClE;IAGF,MAAM,UAAU,IAAIC,iCAA6B;KAChD;KACA,SAAS;KACT,UAAU;MACT,UAAU,KAAK,SAAS;MACxB,QAAQ,KAAK,SAAS;KACtB;IACD;AAED,mBAAe;KAAE;KAAS,SAAS;IAAgC;GACnE;GAGD,MAAM,SAAS,KAAK,SAAS;AAI7B,QAAK,gBAAgB,QAAQ,OAC5B,QAAO,KAAK,uCAAuC;GAIpD,MAAM,SAAS,MAAM,kDACpB,cACA,OAAO,YAAY;IAGlB,MAAM,MAAM,SAAS,kBAAkB;IACvC,MAAM,KAAK,OAAO;IAElB,MAAM,kBAAkB,IAAIC;IAC5B,MAAM,WAAW,MAAM,KAAK,SAAS,QACpC;KACC;KACA;KACA;KACA;KACA,UAAU,IAAI;KACd;KACA;KACA;KACA;KACA;IACA,GACD,gBACA;IAGD,IAAI,OAAO;IACX,IAAIC,aAAW,gBAAgB,aAAa;AAE5C,QAAI,0BAAS,YAAY,SAAS,EAAE;AACnC,YAAO,SAAS;AAChB,kBAAW,SAAS;IACpB;IAED,MAAMC,WAAS,MAAM,KAAK,SAAS,YAAY,KAAK;AAEpD,WAAO;KAAE;KAAQ;KAAU;IAAiB;GAC5C,GAED,OAAOC,UAAQ,YAAY;AAC1B,SAAK,QAAQ,OAAQ;AAErB,SAAK,MAAM,SAAS,QAAQ;AAC3B,SAAI,MAAM,SAAS,MAAM,KAAKA,SAAO,OAAc,CAClD;KAED,MAAM,UAAU,MAAM,QAAQA,SAAO,OAAc;KACnD,MAAM,WAAW,MAAM,WAAWA,SAAO,OAAc;AACvD,aAAQ,MAAM,MAAM,MAAa,SAAgB;MAChD,OAAO,MAAM;MACb;KACA,EAAC;IACF;GACD,GAED,EAAE,IAAI,MAAO,EACb;GAED,MAAM,EAAE,QAAQ,UAAU,GAAG;AAE7B,OAAI,aAAc,MAAM,KAAK,iBAAiB,SAAS,CAAC,IAAI,SAAU,EAAC;AACvE,SAAM,yCACL,KAAK,UACL,QACA,KAAK,iBACL;GAGD,MAAMC,UAA6C,EAClD,GAAI,SAAS,WAAW,CAAE,EAC1B;AAED,OAAI,SAAS,WAAW,SAAS,QAAQ,OAAO,GAAG;IAClD,MAAMC,kBAA4B,CAAE;AACpC,SAAK,MAAM,CAAC,MAAMC,SAAO,IAAI,SAAS,QAAQ,SAAS,CACtD,iBAAgB,KACf,gBAAgB,MAAMA,SAAO,OAAOA,SAAO,QAAQ,CACnD;AAEF,YAAQ,gBAAgB;GACxB;AAGD,UAAO;IACN,MAAM;IACN,QAAQ,SAAS,UAAU;IAC3B;GACA;EACD,EAAC;CACF;CAED,MAAM,QACLX,KAU2C;EAC3C,MAAM,WAAW,MAAM,KAAK,YAAY,IAAI;AAC5C,SAAO,SAAS;CAChB;AACD"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Function } from "./Function-CwlB89lS.cjs";
|
|
2
|
-
import { AuditStorage, AuditableAction, Auditor } from "@geekmidas/audit";
|
|
3
|
-
import { EventPublisher } from "@geekmidas/events";
|
|
4
|
-
import { Logger } from "@geekmidas/logger";
|
|
5
|
-
import { Service, ServiceDiscovery, ServiceRecord } from "@geekmidas/services";
|
|
6
|
-
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
7
|
-
import { ComposableStandardSchema, InferComposableStandardSchema, InferStandardSchema } from "@geekmidas/schema";
|
|
8
|
-
|
|
9
|
-
//#region src/functions/TestFunctionAdaptor.d.ts
|
|
10
|
-
declare class TestFunctionAdaptor<TInput extends ComposableStandardSchema | undefined = undefined, TOutSchema extends StandardSchemaV1 | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, TEventPublisher extends EventPublisher<any> | undefined = undefined, TEventPublisherServiceName extends string = string, TAuditStorage extends AuditStorage | undefined = undefined, TAuditStorageServiceName extends string = string, TDatabase = undefined, TDatabaseServiceName extends string = string, TAuditAction extends AuditableAction<string, unknown> = AuditableAction<string, unknown>> {
|
|
11
|
-
private readonly fn;
|
|
12
|
-
private serviceDiscovery;
|
|
13
|
-
static getDefaultServiceDiscovery<TInput extends ComposableStandardSchema | undefined = undefined, TOutSchema extends StandardSchemaV1 | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, TEventPublisher extends EventPublisher<any> | undefined = undefined, TEventPublisherServiceName extends string = string, TAuditStorage extends AuditStorage | undefined = undefined, TAuditStorageServiceName extends string = string, TDatabase = undefined, TDatabaseServiceName extends string = string, TAuditAction extends AuditableAction<string, unknown> = AuditableAction<string, unknown>>(_fn: Function<TInput, TServices, TLogger, TOutSchema, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction, any>): ServiceDiscovery<any>;
|
|
14
|
-
constructor(fn: Function<TInput, TServices, TLogger, TOutSchema, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction, any>, serviceDiscovery?: ServiceDiscovery<any>);
|
|
15
|
-
invoke(ctx: TestFunctionRequest<TInput, TServices, TEventPublisher, TEventPublisherServiceName, TDatabase, TAuditAction>): Promise<InferStandardSchema<TOutSchema>>;
|
|
16
|
-
}
|
|
17
|
-
type TestFunctionRequest<TInput extends ComposableStandardSchema | undefined = undefined, TServices extends Service[] = [], TEventPublisher extends EventPublisher<any> | undefined = undefined, TEventPublisherServiceName extends string = string, TDatabase = undefined, TAuditAction extends AuditableAction<string, unknown> = AuditableAction<string, unknown>> = {
|
|
18
|
-
input: InferComposableStandardSchema<TInput>;
|
|
19
|
-
services: ServiceRecord<TServices>;
|
|
20
|
-
publisher?: Service<TEventPublisherServiceName, TEventPublisher>;
|
|
21
|
-
db?: TDatabase;
|
|
22
|
-
auditor?: Auditor<TAuditAction>;
|
|
23
|
-
} & InferComposableStandardSchema<{
|
|
24
|
-
input: TInput;
|
|
25
|
-
}>;
|
|
26
|
-
//# sourceMappingURL=TestFunctionAdaptor.d.ts.map
|
|
27
|
-
|
|
28
|
-
//#endregion
|
|
29
|
-
export { TestFunctionAdaptor, TestFunctionRequest };
|
|
30
|
-
//# sourceMappingURL=TestFunctionAdaptor-BHk2bDOV.d.cts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TestFunctionAdaptor-BHk2bDOV.d.cts","names":[],"sources":["../src/functions/TestFunctionAdaptor.ts"],"sourcesContent":[],"mappings":";;;;;;;;;cAqBa,mCACG,qEACI,4DACD,gCACF,SAAS,gCACD,uHAEF,kLAID,mCAAmC;;EAX5C,QAAA,gBAAmB;EAAA,OAAA,0BAAA,CAAA,eAiBf,wBAjBe,GAAA,SAAA,GAAA,SAAA,EAAA,mBAkBX,gBAlBW,GAAA,SAAA,GAAA,SAAA,EAAA,kBAmBZ,OAnBY,EAAA,GAAA,EAAA,EAAA,gBAoBd,MApBc,GAoBL,MApBK,EAAA,wBAqBN,cArBM,CAAA,GAAA,CAAA,GAAA,SAAA,GAAA,SAAA,EAAA,mCAAA,MAAA,GAAA,MAAA,EAAA,sBAuBR,YAvBQ,GAAA,SAAA,GAAA,SAAA,EAAA,iCAAA,MAAA,GAAA,MAAA,EAAA,YAAA,SAAA,EAAA,6BAAA,MAAA,GAAA,MAAA,EAAA,qBA2BT,eA3BS,CAAA,MAAA,EAAA,OAAA,CAAA,GA2B0B,eA3B1B,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA,CAAA,GAAA,EAgCzB,QAhCyB,CAiC7B,MAjC6B,EAkC7B,SAlC6B,EAmC7B,OAnC6B,EAoC7B,UApC6B,EAqC7B,eArC6B,EAsC7B,0BAtC6B,EAuC7B,aAvC6B,EAwC7B,wBAxC6B,EAyC7B,SAzC6B,EA0C7B,oBA1C6B,EA2C7B,YA3C6B,EAAA,GAAA,CAAA,CAAA,EA6C7B,gBA7C6B,CAAA,GAAA,CAAA;EAAA,WAChB,CAAA,EAAA,EAkDO,QAlDP,CAmDb,MAnDa,EAoDb,SApDa,EAqDb,OArDa,EAsDb,UAtDa,EAuDb,eAvDa,EAwDb,0BAxDa,EAyDb,aAzDa,EA0Db,wBA1Da,EA2Db,SA3Da,EA4Db,oBA5Da,EA6Db,YA7Da,EAAA,GAAA,CAAA,EAAA,gBAAA,CAAA,EAgEY,gBAhEZ,CAAA,GAAA,CAAA;EAAwB,MACpB,CAAA,GAAA,EAqEb,mBArEa,CAsEjB,MAtEiB,EAuEjB,SAvEiB,EAwEjB,eAxEiB,EAyEjB,0BAzEiB,EA0EjB,SA1EiB,EA2EjB,YA3EiB,CAAA,CAAA,EA6EhB,OA7EgB,CA6ER,mBA7EQ,CA6EY,UA7EZ,CAAA,CAAA;;AAEH,KA+KL,mBA/KK,CAAA,eAgLD,wBAhLC,GAAA,SAAA,GAAA,SAAA,EAAA,kBAiLE,OAjLF,EAAA,GAAA,EAAA,EAAA,wBAkLQ,cAlLR,CAAA,GAAA,CAAA,GAAA,SAAA,GAAA,SAAA,EAAA,mCAAA,MAAA,GAAA,MAAA,EAAA,YAAA,SAAA,EAAA,qBAqLK,eArLL,CAAA,MAAA,EAAA,OAAA,CAAA,GAqLwC,eArLxC,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA,GAAA;EAAM,KAAG,EA0LlB,6BA1LkB,CA0LY,MA1LZ,CAAA;EAAM,QACP,EA0Ld,aA1Lc,CA0LA,SA1LA,CAAA;EAAc,SAEhB,CAAA,EAyLV,OAzLU,CAyLF,0BAzLE,EAyL0B,eAzL1B,CAAA;EAAY,EAAA,CAIb,EAsLhB,SAtLgB;EAAe,OAAoB,CAAA,EAuL9C,OAvL8C,CAuLtC,YAvLsC,CAAA;CAAe,GAwLpE,6BAlLa,CAAA;EAAwB,KACpB,EAiLsB,MAjLtB;CAAgB,CAAA"}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { publishEvents } from "./publisher-Bw4770Hi.mjs";
|
|
2
|
-
import { FunctionBuilder } from "./FunctionBuilder-CBeqX18X.mjs";
|
|
3
|
-
import { ServiceDiscovery, runWithRequestContext } from "@geekmidas/services";
|
|
4
|
-
import { DefaultAuditor } from "@geekmidas/audit";
|
|
5
|
-
import { EnvironmentParser } from "@geekmidas/envkit";
|
|
6
|
-
|
|
7
|
-
//#region src/functions/TestFunctionAdaptor.ts
|
|
8
|
-
var TestFunctionAdaptor = class TestFunctionAdaptor {
|
|
9
|
-
static getDefaultServiceDiscovery(_fn) {
|
|
10
|
-
return ServiceDiscovery.getInstance(new EnvironmentParser({}));
|
|
11
|
-
}
|
|
12
|
-
constructor(fn, serviceDiscovery = TestFunctionAdaptor.getDefaultServiceDiscovery(fn)) {
|
|
13
|
-
this.fn = fn;
|
|
14
|
-
this.serviceDiscovery = serviceDiscovery;
|
|
15
|
-
}
|
|
16
|
-
async invoke(ctx) {
|
|
17
|
-
const parsedInput = await FunctionBuilder.parseComposableStandardSchema(ctx.input, this.fn.input);
|
|
18
|
-
const logger = this.fn.logger.child({ test: true });
|
|
19
|
-
let services;
|
|
20
|
-
if (ctx.services) services = ctx.services;
|
|
21
|
-
else services = await this.serviceDiscovery.register(this.fn.services);
|
|
22
|
-
let db;
|
|
23
|
-
if ("db" in ctx && ctx.db !== void 0) db = ctx.db;
|
|
24
|
-
else if (this.fn.databaseService) {
|
|
25
|
-
const dbServices = await this.serviceDiscovery.register([this.fn.databaseService]);
|
|
26
|
-
db = dbServices[this.fn.databaseService.serviceName];
|
|
27
|
-
}
|
|
28
|
-
let auditor;
|
|
29
|
-
if ("auditor" in ctx && ctx.auditor !== void 0) auditor = ctx.auditor;
|
|
30
|
-
else if (this.fn.auditorStorageService) {
|
|
31
|
-
const auditServices = await this.serviceDiscovery.register([this.fn.auditorStorageService]);
|
|
32
|
-
const storage = auditServices[this.fn.auditorStorageService.serviceName];
|
|
33
|
-
auditor = new DefaultAuditor({
|
|
34
|
-
actor: {
|
|
35
|
-
id: "system",
|
|
36
|
-
type: "system"
|
|
37
|
-
},
|
|
38
|
-
storage,
|
|
39
|
-
metadata: {
|
|
40
|
-
function: this.fn.type,
|
|
41
|
-
test: true
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
const requestId = `test-${Date.now()}`;
|
|
46
|
-
const startTime = Date.now();
|
|
47
|
-
return runWithRequestContext({
|
|
48
|
-
logger,
|
|
49
|
-
requestId,
|
|
50
|
-
startTime
|
|
51
|
-
}, async () => {
|
|
52
|
-
const response = await this.fn.fn({
|
|
53
|
-
input: parsedInput,
|
|
54
|
-
services,
|
|
55
|
-
logger,
|
|
56
|
-
db,
|
|
57
|
-
auditor
|
|
58
|
-
});
|
|
59
|
-
const output = await this.fn.parseOutput(response);
|
|
60
|
-
if (auditor) {
|
|
61
|
-
const records = auditor.getRecords();
|
|
62
|
-
if (records.length > 0) {
|
|
63
|
-
logger.debug({ auditCount: records.length }, "Flushing function audits");
|
|
64
|
-
await auditor.flush();
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
await publishEvents(logger, this.serviceDiscovery, this.fn.events, output, this.fn.publisherService);
|
|
68
|
-
return output;
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
//#endregion
|
|
74
|
-
export { TestFunctionAdaptor };
|
|
75
|
-
//# sourceMappingURL=TestFunctionAdaptor-C5CLuR-9.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TestFunctionAdaptor-C5CLuR-9.mjs","names":["_fn: Function<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTOutSchema,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction,\n\t\t\tany\n\t\t>","fn: Function<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTOutSchema,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction,\n\t\t\tany\n\t\t>","serviceDiscovery: ServiceDiscovery<any>","ctx: TestFunctionRequest<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTDatabase,\n\t\t\tTAuditAction\n\t\t>","services: ServiceRecord<TServices>","db: TDatabase | undefined","auditor: Auditor<TAuditAction> | undefined"],"sources":["../src/functions/TestFunctionAdaptor.ts"],"sourcesContent":["import type { AuditableAction, Auditor, AuditStorage } from '@geekmidas/audit';\nimport { DefaultAuditor } from '@geekmidas/audit';\nimport { EnvironmentParser } from '@geekmidas/envkit';\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport type {\n\tComposableStandardSchema,\n\tInferComposableStandardSchema,\n\tInferStandardSchema,\n} from '@geekmidas/schema';\nimport {\n\trunWithRequestContext,\n\ttype Service,\n\tServiceDiscovery,\n\ttype ServiceRecord,\n} from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport { publishEvents } from '../publisher';\nimport type { Function } from './Function';\nimport { FunctionBuilder } from './FunctionBuilder';\n\nexport class TestFunctionAdaptor<\n\tTInput extends ComposableStandardSchema | undefined = undefined,\n\tTOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTAuditStorageServiceName extends string = string,\n\tTDatabase = undefined,\n\tTDatabaseServiceName extends string = string,\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n> {\n\tstatic getDefaultServiceDiscovery<\n\t\tTInput extends ComposableStandardSchema | undefined = undefined,\n\t\tTOutSchema extends StandardSchemaV1 | undefined = undefined,\n\t\tTServices extends Service[] = [],\n\t\tTLogger extends Logger = Logger,\n\t\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\t\tTEventPublisherServiceName extends string = string,\n\t\tTAuditStorage extends AuditStorage | undefined = undefined,\n\t\tTAuditStorageServiceName extends string = string,\n\t\tTDatabase = undefined,\n\t\tTDatabaseServiceName extends string = string,\n\t\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\t\tstring,\n\t\t\tunknown\n\t\t>,\n\t>(\n\t\t_fn: Function<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTOutSchema,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction,\n\t\t\tany\n\t\t>,\n\t) {\n\t\treturn ServiceDiscovery.getInstance(new EnvironmentParser({}));\n\t}\n\n\tconstructor(\n\t\tprivate readonly fn: Function<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTOutSchema,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction,\n\t\t\tany\n\t\t>,\n\t\tprivate serviceDiscovery: ServiceDiscovery<any> = TestFunctionAdaptor.getDefaultServiceDiscovery(\n\t\t\tfn,\n\t\t),\n\t) {}\n\n\tasync invoke(\n\t\tctx: TestFunctionRequest<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTDatabase,\n\t\t\tTAuditAction\n\t\t>,\n\t): Promise<InferStandardSchema<TOutSchema>> {\n\t\t// Parse input if schema is provided\n\n\t\tconst parsedInput = await FunctionBuilder.parseComposableStandardSchema(\n\t\t\tctx.input,\n\t\t\tthis.fn.input,\n\t\t);\n\n\t\t// Create logger with context\n\t\tconst logger = this.fn.logger.child({\n\t\t\ttest: true,\n\t\t}) as TLogger;\n\n\t\t// Register services (use provided services or register from function)\n\t\tlet services: ServiceRecord<TServices>;\n\t\tif (ctx.services) {\n\t\t\tservices = ctx.services;\n\t\t} else {\n\t\t\tservices = await this.serviceDiscovery.register(this.fn.services);\n\t\t}\n\n\t\t// Resolve database (use provided db or register from function)\n\t\tlet db: TDatabase | undefined;\n\t\tif ('db' in ctx && ctx.db !== undefined) {\n\t\t\tdb = ctx.db;\n\t\t} else if (this.fn.databaseService) {\n\t\t\tconst dbServices = await this.serviceDiscovery.register([\n\t\t\t\tthis.fn.databaseService,\n\t\t\t]);\n\t\t\tdb = dbServices[\n\t\t\t\tthis.fn.databaseService.serviceName as keyof typeof dbServices\n\t\t\t] as TDatabase;\n\t\t}\n\n\t\t// Resolve auditor (use provided auditor or create from function)\n\t\tlet auditor: Auditor<TAuditAction> | undefined;\n\t\tif ('auditor' in ctx && ctx.auditor !== undefined) {\n\t\t\tauditor = ctx.auditor;\n\t\t} else if (this.fn.auditorStorageService) {\n\t\t\tconst auditServices = await this.serviceDiscovery.register([\n\t\t\t\tthis.fn.auditorStorageService,\n\t\t\t]);\n\t\t\tconst storage = auditServices[\n\t\t\t\tthis.fn.auditorStorageService.serviceName as keyof typeof auditServices\n\t\t\t] as AuditStorage;\n\n\t\t\tauditor = new DefaultAuditor<TAuditAction>({\n\t\t\t\tactor: { id: 'system', type: 'system' },\n\t\t\t\tstorage,\n\t\t\t\tmetadata: {\n\t\t\t\t\tfunction: this.fn.type,\n\t\t\t\t\ttest: true,\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\n\t\t// Wrap execution in request context for service access via context.getLogger()\n\t\tconst requestId = `test-${Date.now()}`;\n\t\tconst startTime = Date.now();\n\n\t\treturn runWithRequestContext({ logger, requestId, startTime }, async () => {\n\t\t\t// Execute the function\n\t\t\tconst response = await this.fn.fn({\n\t\t\t\tinput: parsedInput,\n\t\t\t\tservices,\n\t\t\t\tlogger,\n\t\t\t\tdb,\n\t\t\t\tauditor,\n\t\t\t} as any);\n\n\t\t\t// Parse output if schema is provided\n\t\t\tconst output = await this.fn.parseOutput(response);\n\n\t\t\t// Flush audits if any were recorded\n\t\t\tif (auditor) {\n\t\t\t\tconst records = auditor.getRecords();\n\t\t\t\tif (records.length > 0) {\n\t\t\t\t\tlogger.debug(\n\t\t\t\t\t\t{ auditCount: records.length },\n\t\t\t\t\t\t'Flushing function audits',\n\t\t\t\t\t);\n\t\t\t\t\tawait auditor.flush();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Register publisher service if provided in context\n\n\t\t\tawait publishEvents(\n\t\t\t\tlogger,\n\t\t\t\tthis.serviceDiscovery,\n\t\t\t\tthis.fn.events,\n\t\t\t\toutput,\n\t\t\t\tthis.fn.publisherService,\n\t\t\t);\n\n\t\t\treturn output;\n\t\t}) as Promise<InferStandardSchema<TOutSchema>>;\n\t}\n}\n\nexport type TestFunctionRequest<\n\tTInput extends ComposableStandardSchema | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTDatabase = undefined,\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n> = {\n\tinput: InferComposableStandardSchema<TInput>;\n\tservices: ServiceRecord<TServices>;\n\tpublisher?: Service<TEventPublisherServiceName, TEventPublisher>;\n\tdb?: TDatabase;\n\tauditor?: Auditor<TAuditAction>;\n} & InferComposableStandardSchema<{ input: TInput }>;\n"],"mappings":";;;;;;;AAqBA,IAAa,sBAAb,MAAa,oBAeX;CACD,OAAO,2BAgBNA,KAcC;AACD,SAAO,iBAAiB,YAAY,IAAI,kBAAkB,CAAE,GAAE;CAC9D;CAED,YACkBC,IAcTC,mBAA0C,oBAAoB,2BACrE,GACA,EACA;EAjBgB;EAcT;CAGL;CAEJ,MAAM,OACLC,KAQ2C;EAG3C,MAAM,cAAc,MAAM,gBAAgB,8BACzC,IAAI,OACJ,KAAK,GAAG,MACR;EAGD,MAAM,SAAS,KAAK,GAAG,OAAO,MAAM,EACnC,MAAM,KACN,EAAC;EAGF,IAAIC;AACJ,MAAI,IAAI,SACP,YAAW,IAAI;MAEf,YAAW,MAAM,KAAK,iBAAiB,SAAS,KAAK,GAAG,SAAS;EAIlE,IAAIC;AACJ,MAAI,QAAQ,OAAO,IAAI,cACtB,MAAK,IAAI;WACC,KAAK,GAAG,iBAAiB;GACnC,MAAM,aAAa,MAAM,KAAK,iBAAiB,SAAS,CACvD,KAAK,GAAG,eACR,EAAC;AACF,QAAK,WACJ,KAAK,GAAG,gBAAgB;EAEzB;EAGD,IAAIC;AACJ,MAAI,aAAa,OAAO,IAAI,mBAC3B,WAAU,IAAI;WACJ,KAAK,GAAG,uBAAuB;GACzC,MAAM,gBAAgB,MAAM,KAAK,iBAAiB,SAAS,CAC1D,KAAK,GAAG,qBACR,EAAC;GACF,MAAM,UAAU,cACf,KAAK,GAAG,sBAAsB;AAG/B,aAAU,IAAI,eAA6B;IAC1C,OAAO;KAAE,IAAI;KAAU,MAAM;IAAU;IACvC;IACA,UAAU;KACT,UAAU,KAAK,GAAG;KAClB,MAAM;IACN;GACD;EACD;EAGD,MAAM,aAAa,OAAO,KAAK,KAAK,CAAC;EACrC,MAAM,YAAY,KAAK,KAAK;AAE5B,SAAO,sBAAsB;GAAE;GAAQ;GAAW;EAAW,GAAE,YAAY;GAE1E,MAAM,WAAW,MAAM,KAAK,GAAG,GAAG;IACjC,OAAO;IACP;IACA;IACA;IACA;GACA,EAAQ;GAGT,MAAM,SAAS,MAAM,KAAK,GAAG,YAAY,SAAS;AAGlD,OAAI,SAAS;IACZ,MAAM,UAAU,QAAQ,YAAY;AACpC,QAAI,QAAQ,SAAS,GAAG;AACvB,YAAO,MACN,EAAE,YAAY,QAAQ,OAAQ,GAC9B,2BACA;AACD,WAAM,QAAQ,OAAO;IACrB;GACD;AAID,SAAM,cACL,QACA,KAAK,kBACL,KAAK,GAAG,QACR,QACA,KAAK,GAAG,iBACR;AAED,UAAO;EACP,EAAC;CACF;AACD"}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
const require_chunk = require('./chunk-CUT6urMc.cjs');
|
|
2
|
-
const require_publisher = require('./publisher-lFQleddL.cjs');
|
|
3
|
-
const require_FunctionBuilder = require('./FunctionBuilder-C_xG9As7.cjs');
|
|
4
|
-
const __geekmidas_services = require_chunk.__toESM(require("@geekmidas/services"));
|
|
5
|
-
const __geekmidas_audit = require_chunk.__toESM(require("@geekmidas/audit"));
|
|
6
|
-
const __geekmidas_envkit = require_chunk.__toESM(require("@geekmidas/envkit"));
|
|
7
|
-
|
|
8
|
-
//#region src/functions/TestFunctionAdaptor.ts
|
|
9
|
-
var TestFunctionAdaptor = class TestFunctionAdaptor {
|
|
10
|
-
static getDefaultServiceDiscovery(_fn) {
|
|
11
|
-
return __geekmidas_services.ServiceDiscovery.getInstance(new __geekmidas_envkit.EnvironmentParser({}));
|
|
12
|
-
}
|
|
13
|
-
constructor(fn, serviceDiscovery = TestFunctionAdaptor.getDefaultServiceDiscovery(fn)) {
|
|
14
|
-
this.fn = fn;
|
|
15
|
-
this.serviceDiscovery = serviceDiscovery;
|
|
16
|
-
}
|
|
17
|
-
async invoke(ctx) {
|
|
18
|
-
const parsedInput = await require_FunctionBuilder.FunctionBuilder.parseComposableStandardSchema(ctx.input, this.fn.input);
|
|
19
|
-
const logger = this.fn.logger.child({ test: true });
|
|
20
|
-
let services;
|
|
21
|
-
if (ctx.services) services = ctx.services;
|
|
22
|
-
else services = await this.serviceDiscovery.register(this.fn.services);
|
|
23
|
-
let db;
|
|
24
|
-
if ("db" in ctx && ctx.db !== void 0) db = ctx.db;
|
|
25
|
-
else if (this.fn.databaseService) {
|
|
26
|
-
const dbServices = await this.serviceDiscovery.register([this.fn.databaseService]);
|
|
27
|
-
db = dbServices[this.fn.databaseService.serviceName];
|
|
28
|
-
}
|
|
29
|
-
let auditor;
|
|
30
|
-
if ("auditor" in ctx && ctx.auditor !== void 0) auditor = ctx.auditor;
|
|
31
|
-
else if (this.fn.auditorStorageService) {
|
|
32
|
-
const auditServices = await this.serviceDiscovery.register([this.fn.auditorStorageService]);
|
|
33
|
-
const storage = auditServices[this.fn.auditorStorageService.serviceName];
|
|
34
|
-
auditor = new __geekmidas_audit.DefaultAuditor({
|
|
35
|
-
actor: {
|
|
36
|
-
id: "system",
|
|
37
|
-
type: "system"
|
|
38
|
-
},
|
|
39
|
-
storage,
|
|
40
|
-
metadata: {
|
|
41
|
-
function: this.fn.type,
|
|
42
|
-
test: true
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
const requestId = `test-${Date.now()}`;
|
|
47
|
-
const startTime = Date.now();
|
|
48
|
-
return (0, __geekmidas_services.runWithRequestContext)({
|
|
49
|
-
logger,
|
|
50
|
-
requestId,
|
|
51
|
-
startTime
|
|
52
|
-
}, async () => {
|
|
53
|
-
const response = await this.fn.fn({
|
|
54
|
-
input: parsedInput,
|
|
55
|
-
services,
|
|
56
|
-
logger,
|
|
57
|
-
db,
|
|
58
|
-
auditor
|
|
59
|
-
});
|
|
60
|
-
const output = await this.fn.parseOutput(response);
|
|
61
|
-
if (auditor) {
|
|
62
|
-
const records = auditor.getRecords();
|
|
63
|
-
if (records.length > 0) {
|
|
64
|
-
logger.debug({ auditCount: records.length }, "Flushing function audits");
|
|
65
|
-
await auditor.flush();
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
await require_publisher.publishEvents(logger, this.serviceDiscovery, this.fn.events, output, this.fn.publisherService);
|
|
69
|
-
return output;
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
};
|
|
73
|
-
|
|
74
|
-
//#endregion
|
|
75
|
-
Object.defineProperty(exports, 'TestFunctionAdaptor', {
|
|
76
|
-
enumerable: true,
|
|
77
|
-
get: function () {
|
|
78
|
-
return TestFunctionAdaptor;
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
//# sourceMappingURL=TestFunctionAdaptor-CH6-gO_B.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TestFunctionAdaptor-CH6-gO_B.cjs","names":["_fn: Function<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTOutSchema,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction,\n\t\t\tany\n\t\t>","EnvironmentParser","fn: Function<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTOutSchema,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction,\n\t\t\tany\n\t\t>","serviceDiscovery: ServiceDiscovery<any>","ctx: TestFunctionRequest<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTDatabase,\n\t\t\tTAuditAction\n\t\t>","services: ServiceRecord<TServices>","db: TDatabase | undefined","auditor: Auditor<TAuditAction> | undefined","DefaultAuditor"],"sources":["../src/functions/TestFunctionAdaptor.ts"],"sourcesContent":["import type { AuditableAction, Auditor, AuditStorage } from '@geekmidas/audit';\nimport { DefaultAuditor } from '@geekmidas/audit';\nimport { EnvironmentParser } from '@geekmidas/envkit';\nimport type { EventPublisher } from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport type {\n\tComposableStandardSchema,\n\tInferComposableStandardSchema,\n\tInferStandardSchema,\n} from '@geekmidas/schema';\nimport {\n\trunWithRequestContext,\n\ttype Service,\n\tServiceDiscovery,\n\ttype ServiceRecord,\n} from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport { publishEvents } from '../publisher';\nimport type { Function } from './Function';\nimport { FunctionBuilder } from './FunctionBuilder';\n\nexport class TestFunctionAdaptor<\n\tTInput extends ComposableStandardSchema | undefined = undefined,\n\tTOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTAuditStorage extends AuditStorage | undefined = undefined,\n\tTAuditStorageServiceName extends string = string,\n\tTDatabase = undefined,\n\tTDatabaseServiceName extends string = string,\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n> {\n\tstatic getDefaultServiceDiscovery<\n\t\tTInput extends ComposableStandardSchema | undefined = undefined,\n\t\tTOutSchema extends StandardSchemaV1 | undefined = undefined,\n\t\tTServices extends Service[] = [],\n\t\tTLogger extends Logger = Logger,\n\t\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\t\tTEventPublisherServiceName extends string = string,\n\t\tTAuditStorage extends AuditStorage | undefined = undefined,\n\t\tTAuditStorageServiceName extends string = string,\n\t\tTDatabase = undefined,\n\t\tTDatabaseServiceName extends string = string,\n\t\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\t\tstring,\n\t\t\tunknown\n\t\t>,\n\t>(\n\t\t_fn: Function<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTOutSchema,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction,\n\t\t\tany\n\t\t>,\n\t) {\n\t\treturn ServiceDiscovery.getInstance(new EnvironmentParser({}));\n\t}\n\n\tconstructor(\n\t\tprivate readonly fn: Function<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tTOutSchema,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTAuditStorage,\n\t\t\tTAuditStorageServiceName,\n\t\t\tTDatabase,\n\t\t\tTDatabaseServiceName,\n\t\t\tTAuditAction,\n\t\t\tany\n\t\t>,\n\t\tprivate serviceDiscovery: ServiceDiscovery<any> = TestFunctionAdaptor.getDefaultServiceDiscovery(\n\t\t\tfn,\n\t\t),\n\t) {}\n\n\tasync invoke(\n\t\tctx: TestFunctionRequest<\n\t\t\tTInput,\n\t\t\tTServices,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTDatabase,\n\t\t\tTAuditAction\n\t\t>,\n\t): Promise<InferStandardSchema<TOutSchema>> {\n\t\t// Parse input if schema is provided\n\n\t\tconst parsedInput = await FunctionBuilder.parseComposableStandardSchema(\n\t\t\tctx.input,\n\t\t\tthis.fn.input,\n\t\t);\n\n\t\t// Create logger with context\n\t\tconst logger = this.fn.logger.child({\n\t\t\ttest: true,\n\t\t}) as TLogger;\n\n\t\t// Register services (use provided services or register from function)\n\t\tlet services: ServiceRecord<TServices>;\n\t\tif (ctx.services) {\n\t\t\tservices = ctx.services;\n\t\t} else {\n\t\t\tservices = await this.serviceDiscovery.register(this.fn.services);\n\t\t}\n\n\t\t// Resolve database (use provided db or register from function)\n\t\tlet db: TDatabase | undefined;\n\t\tif ('db' in ctx && ctx.db !== undefined) {\n\t\t\tdb = ctx.db;\n\t\t} else if (this.fn.databaseService) {\n\t\t\tconst dbServices = await this.serviceDiscovery.register([\n\t\t\t\tthis.fn.databaseService,\n\t\t\t]);\n\t\t\tdb = dbServices[\n\t\t\t\tthis.fn.databaseService.serviceName as keyof typeof dbServices\n\t\t\t] as TDatabase;\n\t\t}\n\n\t\t// Resolve auditor (use provided auditor or create from function)\n\t\tlet auditor: Auditor<TAuditAction> | undefined;\n\t\tif ('auditor' in ctx && ctx.auditor !== undefined) {\n\t\t\tauditor = ctx.auditor;\n\t\t} else if (this.fn.auditorStorageService) {\n\t\t\tconst auditServices = await this.serviceDiscovery.register([\n\t\t\t\tthis.fn.auditorStorageService,\n\t\t\t]);\n\t\t\tconst storage = auditServices[\n\t\t\t\tthis.fn.auditorStorageService.serviceName as keyof typeof auditServices\n\t\t\t] as AuditStorage;\n\n\t\t\tauditor = new DefaultAuditor<TAuditAction>({\n\t\t\t\tactor: { id: 'system', type: 'system' },\n\t\t\t\tstorage,\n\t\t\t\tmetadata: {\n\t\t\t\t\tfunction: this.fn.type,\n\t\t\t\t\ttest: true,\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\n\t\t// Wrap execution in request context for service access via context.getLogger()\n\t\tconst requestId = `test-${Date.now()}`;\n\t\tconst startTime = Date.now();\n\n\t\treturn runWithRequestContext({ logger, requestId, startTime }, async () => {\n\t\t\t// Execute the function\n\t\t\tconst response = await this.fn.fn({\n\t\t\t\tinput: parsedInput,\n\t\t\t\tservices,\n\t\t\t\tlogger,\n\t\t\t\tdb,\n\t\t\t\tauditor,\n\t\t\t} as any);\n\n\t\t\t// Parse output if schema is provided\n\t\t\tconst output = await this.fn.parseOutput(response);\n\n\t\t\t// Flush audits if any were recorded\n\t\t\tif (auditor) {\n\t\t\t\tconst records = auditor.getRecords();\n\t\t\t\tif (records.length > 0) {\n\t\t\t\t\tlogger.debug(\n\t\t\t\t\t\t{ auditCount: records.length },\n\t\t\t\t\t\t'Flushing function audits',\n\t\t\t\t\t);\n\t\t\t\t\tawait auditor.flush();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Register publisher service if provided in context\n\n\t\t\tawait publishEvents(\n\t\t\t\tlogger,\n\t\t\t\tthis.serviceDiscovery,\n\t\t\t\tthis.fn.events,\n\t\t\t\toutput,\n\t\t\t\tthis.fn.publisherService,\n\t\t\t);\n\n\t\t\treturn output;\n\t\t}) as Promise<InferStandardSchema<TOutSchema>>;\n\t}\n}\n\nexport type TestFunctionRequest<\n\tTInput extends ComposableStandardSchema | undefined = undefined,\n\tTServices extends Service[] = [],\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTDatabase = undefined,\n\tTAuditAction extends AuditableAction<string, unknown> = AuditableAction<\n\t\tstring,\n\t\tunknown\n\t>,\n> = {\n\tinput: InferComposableStandardSchema<TInput>;\n\tservices: ServiceRecord<TServices>;\n\tpublisher?: Service<TEventPublisherServiceName, TEventPublisher>;\n\tdb?: TDatabase;\n\tauditor?: Auditor<TAuditAction>;\n} & InferComposableStandardSchema<{ input: TInput }>;\n"],"mappings":";;;;;;;;AAqBA,IAAa,sBAAb,MAAa,oBAeX;CACD,OAAO,2BAgBNA,KAcC;AACD,SAAO,sCAAiB,YAAY,IAAIC,qCAAkB,CAAE,GAAE;CAC9D;CAED,YACkBC,IAcTC,mBAA0C,oBAAoB,2BACrE,GACA,EACA;EAjBgB;EAcT;CAGL;CAEJ,MAAM,OACLC,KAQ2C;EAG3C,MAAM,cAAc,MAAM,wCAAgB,8BACzC,IAAI,OACJ,KAAK,GAAG,MACR;EAGD,MAAM,SAAS,KAAK,GAAG,OAAO,MAAM,EACnC,MAAM,KACN,EAAC;EAGF,IAAIC;AACJ,MAAI,IAAI,SACP,YAAW,IAAI;MAEf,YAAW,MAAM,KAAK,iBAAiB,SAAS,KAAK,GAAG,SAAS;EAIlE,IAAIC;AACJ,MAAI,QAAQ,OAAO,IAAI,cACtB,MAAK,IAAI;WACC,KAAK,GAAG,iBAAiB;GACnC,MAAM,aAAa,MAAM,KAAK,iBAAiB,SAAS,CACvD,KAAK,GAAG,eACR,EAAC;AACF,QAAK,WACJ,KAAK,GAAG,gBAAgB;EAEzB;EAGD,IAAIC;AACJ,MAAI,aAAa,OAAO,IAAI,mBAC3B,WAAU,IAAI;WACJ,KAAK,GAAG,uBAAuB;GACzC,MAAM,gBAAgB,MAAM,KAAK,iBAAiB,SAAS,CAC1D,KAAK,GAAG,qBACR,EAAC;GACF,MAAM,UAAU,cACf,KAAK,GAAG,sBAAsB;AAG/B,aAAU,IAAIC,iCAA6B;IAC1C,OAAO;KAAE,IAAI;KAAU,MAAM;IAAU;IACvC;IACA,UAAU;KACT,UAAU,KAAK,GAAG;KAClB,MAAM;IACN;GACD;EACD;EAGD,MAAM,aAAa,OAAO,KAAK,KAAK,CAAC;EACrC,MAAM,YAAY,KAAK,KAAK;AAE5B,SAAO,gDAAsB;GAAE;GAAQ;GAAW;EAAW,GAAE,YAAY;GAE1E,MAAM,WAAW,MAAM,KAAK,GAAG,GAAG;IACjC,OAAO;IACP;IACA;IACA;IACA;GACA,EAAQ;GAGT,MAAM,SAAS,MAAM,KAAK,GAAG,YAAY,SAAS;AAGlD,OAAI,SAAS;IACZ,MAAM,UAAU,QAAQ,YAAY;AACpC,QAAI,QAAQ,SAAS,GAAG;AACvB,YAAO,MACN,EAAE,YAAY,QAAQ,OAAQ,GAC9B,2BACA;AACD,WAAM,QAAQ,OAAO;IACrB;GACD;AAID,SAAM,gCACL,QACA,KAAK,kBACL,KAAK,GAAG,QACR,QACA,KAAK,GAAG,iBACR;AAED,UAAO;EACP,EAAC;CACF;AACD"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Function } from "./Function-CZw1DRQ6.mjs";
|
|
2
|
-
import { Service, ServiceDiscovery, ServiceRecord } from "@geekmidas/services";
|
|
3
|
-
import { AuditStorage, AuditableAction, Auditor } from "@geekmidas/audit";
|
|
4
|
-
import { EventPublisher } from "@geekmidas/events";
|
|
5
|
-
import { Logger } from "@geekmidas/logger";
|
|
6
|
-
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
7
|
-
import { ComposableStandardSchema, InferComposableStandardSchema, InferStandardSchema } from "@geekmidas/schema";
|
|
8
|
-
|
|
9
|
-
//#region src/functions/TestFunctionAdaptor.d.ts
|
|
10
|
-
declare class TestFunctionAdaptor<TInput extends ComposableStandardSchema | undefined = undefined, TOutSchema extends StandardSchemaV1 | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, TEventPublisher extends EventPublisher<any> | undefined = undefined, TEventPublisherServiceName extends string = string, TAuditStorage extends AuditStorage | undefined = undefined, TAuditStorageServiceName extends string = string, TDatabase = undefined, TDatabaseServiceName extends string = string, TAuditAction extends AuditableAction<string, unknown> = AuditableAction<string, unknown>> {
|
|
11
|
-
private readonly fn;
|
|
12
|
-
private serviceDiscovery;
|
|
13
|
-
static getDefaultServiceDiscovery<TInput extends ComposableStandardSchema | undefined = undefined, TOutSchema extends StandardSchemaV1 | undefined = undefined, TServices extends Service[] = [], TLogger extends Logger = Logger, TEventPublisher extends EventPublisher<any> | undefined = undefined, TEventPublisherServiceName extends string = string, TAuditStorage extends AuditStorage | undefined = undefined, TAuditStorageServiceName extends string = string, TDatabase = undefined, TDatabaseServiceName extends string = string, TAuditAction extends AuditableAction<string, unknown> = AuditableAction<string, unknown>>(_fn: Function<TInput, TServices, TLogger, TOutSchema, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction, any>): ServiceDiscovery<any>;
|
|
14
|
-
constructor(fn: Function<TInput, TServices, TLogger, TOutSchema, TEventPublisher, TEventPublisherServiceName, TAuditStorage, TAuditStorageServiceName, TDatabase, TDatabaseServiceName, TAuditAction, any>, serviceDiscovery?: ServiceDiscovery<any>);
|
|
15
|
-
invoke(ctx: TestFunctionRequest<TInput, TServices, TEventPublisher, TEventPublisherServiceName, TDatabase, TAuditAction>): Promise<InferStandardSchema<TOutSchema>>;
|
|
16
|
-
}
|
|
17
|
-
type TestFunctionRequest<TInput extends ComposableStandardSchema | undefined = undefined, TServices extends Service[] = [], TEventPublisher extends EventPublisher<any> | undefined = undefined, TEventPublisherServiceName extends string = string, TDatabase = undefined, TAuditAction extends AuditableAction<string, unknown> = AuditableAction<string, unknown>> = {
|
|
18
|
-
input: InferComposableStandardSchema<TInput>;
|
|
19
|
-
services: ServiceRecord<TServices>;
|
|
20
|
-
publisher?: Service<TEventPublisherServiceName, TEventPublisher>;
|
|
21
|
-
db?: TDatabase;
|
|
22
|
-
auditor?: Auditor<TAuditAction>;
|
|
23
|
-
} & InferComposableStandardSchema<{
|
|
24
|
-
input: TInput;
|
|
25
|
-
}>;
|
|
26
|
-
//# sourceMappingURL=TestFunctionAdaptor.d.ts.map
|
|
27
|
-
|
|
28
|
-
//#endregion
|
|
29
|
-
export { TestFunctionAdaptor, TestFunctionRequest };
|
|
30
|
-
//# sourceMappingURL=TestFunctionAdaptor-DzT8GRdR.d.mts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TestFunctionAdaptor-DzT8GRdR.d.mts","names":[],"sources":["../src/functions/TestFunctionAdaptor.ts"],"sourcesContent":[],"mappings":";;;;;;;;;cAqBa,mCACG,qEACI,4DACD,gCACF,SAAS,gCACD,uHAEF,kLAID,mCAAmC;;EAX5C,QAAA,gBAAmB;EAAA,OAAA,0BAAA,CAAA,eAiBf,wBAjBe,GAAA,SAAA,GAAA,SAAA,EAAA,mBAkBX,gBAlBW,GAAA,SAAA,GAAA,SAAA,EAAA,kBAmBZ,OAnBY,EAAA,GAAA,EAAA,EAAA,gBAoBd,MApBc,GAoBL,MApBK,EAAA,wBAqBN,cArBM,CAAA,GAAA,CAAA,GAAA,SAAA,GAAA,SAAA,EAAA,mCAAA,MAAA,GAAA,MAAA,EAAA,sBAuBR,YAvBQ,GAAA,SAAA,GAAA,SAAA,EAAA,iCAAA,MAAA,GAAA,MAAA,EAAA,YAAA,SAAA,EAAA,6BAAA,MAAA,GAAA,MAAA,EAAA,qBA2BT,eA3BS,CAAA,MAAA,EAAA,OAAA,CAAA,GA2B0B,eA3B1B,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA,CAAA,GAAA,EAgCzB,QAhCyB,CAiC7B,MAjC6B,EAkC7B,SAlC6B,EAmC7B,OAnC6B,EAoC7B,UApC6B,EAqC7B,eArC6B,EAsC7B,0BAtC6B,EAuC7B,aAvC6B,EAwC7B,wBAxC6B,EAyC7B,SAzC6B,EA0C7B,oBA1C6B,EA2C7B,YA3C6B,EAAA,GAAA,CAAA,CAAA,EA6C7B,gBA7C6B,CAAA,GAAA,CAAA;EAAA,WAChB,CAAA,EAAA,EAkDO,QAlDP,CAmDb,MAnDa,EAoDb,SApDa,EAqDb,OArDa,EAsDb,UAtDa,EAuDb,eAvDa,EAwDb,0BAxDa,EAyDb,aAzDa,EA0Db,wBA1Da,EA2Db,SA3Da,EA4Db,oBA5Da,EA6Db,YA7Da,EAAA,GAAA,CAAA,EAAA,gBAAA,CAAA,EAgEY,gBAhEZ,CAAA,GAAA,CAAA;EAAwB,MACpB,CAAA,GAAA,EAqEb,mBArEa,CAsEjB,MAtEiB,EAuEjB,SAvEiB,EAwEjB,eAxEiB,EAyEjB,0BAzEiB,EA0EjB,SA1EiB,EA2EjB,YA3EiB,CAAA,CAAA,EA6EhB,OA7EgB,CA6ER,mBA7EQ,CA6EY,UA7EZ,CAAA,CAAA;;AAEH,KA+KL,mBA/KK,CAAA,eAgLD,wBAhLC,GAAA,SAAA,GAAA,SAAA,EAAA,kBAiLE,OAjLF,EAAA,GAAA,EAAA,EAAA,wBAkLQ,cAlLR,CAAA,GAAA,CAAA,GAAA,SAAA,GAAA,SAAA,EAAA,mCAAA,MAAA,GAAA,MAAA,EAAA,YAAA,SAAA,EAAA,qBAqLK,eArLL,CAAA,MAAA,EAAA,OAAA,CAAA,GAqLwC,eArLxC,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA,GAAA;EAAM,KAAG,EA0LlB,6BA1LkB,CA0LY,MA1LZ,CAAA;EAAM,QACP,EA0Ld,aA1Lc,CA0LA,SA1LA,CAAA;EAAc,SAEhB,CAAA,EAyLV,OAzLU,CAyLF,0BAzLE,EAyL0B,eAzL1B,CAAA;EAAY,EAAA,CAIb,EAsLhB,SAtLgB;EAAe,OAAoB,CAAA,EAuL9C,OAvL8C,CAuLtC,YAvLsC,CAAA;CAAe,GAwLpE,6BAlLa,CAAA;EAAwB,KACpB,EAiLsB,MAjLtB;CAAgB,CAAA"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { Subscriber } from "./Subscriber-BgB3RRxb.mjs";
|
|
2
|
-
import { Service, ServiceDiscovery, ServiceRecord } from "@geekmidas/services";
|
|
3
|
-
import { EventPublisher, ExtractPublisherMessage } from "@geekmidas/events";
|
|
4
|
-
import { Logger } from "@geekmidas/logger";
|
|
5
|
-
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
6
|
-
import { InferStandardSchema } from "@geekmidas/schema";
|
|
7
|
-
|
|
8
|
-
//#region src/subscribers/TestSubscriberAdaptor.d.ts
|
|
9
|
-
type ExtractEventPayloads<TPublisher extends EventPublisher<any> | undefined, TEventTypes extends any[]> = TPublisher extends EventPublisher<any> ? Extract<ExtractPublisherMessage<TPublisher>, {
|
|
10
|
-
type: TEventTypes[number];
|
|
11
|
-
}> : never;
|
|
12
|
-
declare class TestSubscriberAdaptor<TServices extends Service[] = [], TLogger extends Logger = Logger, OutSchema extends StandardSchemaV1 | undefined = undefined, TEventPublisher extends EventPublisher<any> | undefined = undefined, TEventPublisherServiceName extends string = string, TSubscribedEvents extends ExtractPublisherMessage<TEventPublisher>['type'][] = ExtractPublisherMessage<TEventPublisher>['type'][]> {
|
|
13
|
-
private readonly subscriber;
|
|
14
|
-
private serviceDiscovery;
|
|
15
|
-
static getDefaultServiceDiscovery(): ServiceDiscovery<any>;
|
|
16
|
-
constructor(subscriber: Subscriber<TServices, TLogger, OutSchema, TEventPublisher, TEventPublisherServiceName, TSubscribedEvents>, serviceDiscovery?: ServiceDiscovery<any>);
|
|
17
|
-
invoke(request: TestSubscriberRequest<TEventPublisher, TSubscribedEvents, TServices>): Promise<InferStandardSchema<OutSchema>>;
|
|
18
|
-
private filterEvents;
|
|
19
|
-
}
|
|
20
|
-
type TestSubscriberRequest<TEventPublisher extends EventPublisher<any> | undefined = undefined, TSubscribedEvents extends any[] = [], TServices extends Service[] = []> = {
|
|
21
|
-
events: ExtractEventPayloads<TEventPublisher, TSubscribedEvents>[];
|
|
22
|
-
services?: ServiceRecord<TServices>;
|
|
23
|
-
};
|
|
24
|
-
//#endregion
|
|
25
|
-
export { TestSubscriberAdaptor, TestSubscriberRequest };
|
|
26
|
-
//# sourceMappingURL=TestSubscriberAdaptor-CPEiqSfE.d.mts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TestSubscriberAdaptor-CPEiqSfE.d.mts","names":[],"sources":["../src/subscribers/TestSubscriberAdaptor.ts"],"sourcesContent":[],"mappings":";;;;;;;;KAcK,wCACe,8DAEhB,mBAAmB,sBACpB,QAAQ,wBAAwB;EAJ9B,IAAA,EAImD,WAJnD,CAAA,MAAoB,CAAA;CAAA,CAAA,GAAA,KAAA;AACL,cAMP,qBANO,CAAA,kBAOD,OAPC,EAAA,GAAA,EAAA,EAAA,gBAQH,MARG,GAQM,MARN,EAAA,kBASD,gBATC,GAAA,SAAA,GAAA,SAAA,EAAA,wBAUK,cAVL,CAAA,GAAA,CAAA,GAAA,SAAA,GAAA,SAAA,EAAA,mCAAA,MAAA,GAAA,MAAA,EAAA,0BAalB,uBAbkB,CAaM,eAbN,CAAA,CAAA,MAAA,CAAA,EAAA,GAamC,uBAbnC,CAa2D,eAb3D,CAAA,CAAA,MAAA,CAAA,EAAA,CAAA,CAAA;EAAc,iBAE9B,UAAA;EAAU,QAAS,gBAAA;EAAc,OACF,0BAAA,CAAA,CAAA,EAYD,gBAZC,CAAA,GAAA,CAAA;EAAU,WAAlC,CAAA,UAAA,EAiBoB,UAjBpB,CAkBR,SAlBQ,EAmBR,OAnBQ,EAoBR,SApBQ,EAqBR,eArBQ,EAsBR,0BAtBQ,EAuBR,iBAvBQ,CAAA,EAAA,gBAAA,CAAA,EAyBiB,gBAzBjB,CAAA,GAAA,CAAA;EAAuB,MAAsB,CAAA,OAAA,EA6B7C,qBA7B6C,CA8BrD,eA9BqD,EA+BrD,iBA/BqD,EAgCrD,SAhCqD,CAAA,CAAA,EAkCpD,OAlCoD,CAkC5C,mBAlC4C,CAkCxB,SAlCwB,CAAA,CAAA;EAAW,QAAhE,YAAA;AAAO;AAGG,KAwGD,qBAxGsB,CAAA,wBAyGT,cAzGS,CAAA,GAAA,CAAA,GAAA,SAAA,GAAA,SAAA,EAAA,0BAAA,GAAA,EAAA,GAAA,EAAA,EAAA,kBA2Gf,OA3Ge,EAAA,GAAA,EAAA,CAAA,GAAA;EAAA,MAAA,EA6GzB,oBA7GyB,CA6GJ,eA7GI,EA6Ga,iBA7Gb,CAAA,EAAA;EAAA,QACf,CAAA,EA6GP,aA7GO,CA6GO,SA7GP,CAAA;CAAO"}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { publishEvents } from "./publisher-Bw4770Hi.mjs";
|
|
2
|
-
import { ServiceDiscovery, runWithRequestContext } from "@geekmidas/services";
|
|
3
|
-
import { EnvironmentParser } from "@geekmidas/envkit";
|
|
4
|
-
|
|
5
|
-
//#region src/subscribers/TestSubscriberAdaptor.ts
|
|
6
|
-
var TestSubscriberAdaptor = class TestSubscriberAdaptor {
|
|
7
|
-
static getDefaultServiceDiscovery() {
|
|
8
|
-
return ServiceDiscovery.getInstance(new EnvironmentParser({}));
|
|
9
|
-
}
|
|
10
|
-
constructor(subscriber, serviceDiscovery = TestSubscriberAdaptor.getDefaultServiceDiscovery()) {
|
|
11
|
-
this.subscriber = subscriber;
|
|
12
|
-
this.serviceDiscovery = serviceDiscovery;
|
|
13
|
-
}
|
|
14
|
-
async invoke(request) {
|
|
15
|
-
const logger = this.subscriber.logger.child({ test: true });
|
|
16
|
-
let services;
|
|
17
|
-
if (request.services) services = request.services;
|
|
18
|
-
else services = await this.serviceDiscovery.register(this.subscriber.services);
|
|
19
|
-
const filteredEvents = this.filterEvents(request.events);
|
|
20
|
-
if (filteredEvents.length === 0) return { batchItemFailures: [] };
|
|
21
|
-
const requestId = `test-${Date.now()}`;
|
|
22
|
-
const startTime = Date.now();
|
|
23
|
-
return runWithRequestContext({
|
|
24
|
-
logger,
|
|
25
|
-
requestId,
|
|
26
|
-
startTime
|
|
27
|
-
}, async () => {
|
|
28
|
-
const result = await this.subscriber.handler({
|
|
29
|
-
events: filteredEvents,
|
|
30
|
-
services,
|
|
31
|
-
logger
|
|
32
|
-
});
|
|
33
|
-
let output = result;
|
|
34
|
-
if (this.subscriber.outputSchema && result) {
|
|
35
|
-
const validationResult = await this.subscriber.outputSchema["~standard"].validate(result);
|
|
36
|
-
if (validationResult.issues) throw new Error("Subscriber output validation failed");
|
|
37
|
-
output = validationResult.value;
|
|
38
|
-
}
|
|
39
|
-
await publishEvents(logger, this.serviceDiscovery, this.subscriber.events, output, this.subscriber.publisherService);
|
|
40
|
-
return output;
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
filterEvents(events) {
|
|
44
|
-
if (!this.subscriber.subscribedEvents) return events;
|
|
45
|
-
return events.filter((event) => this.subscriber.subscribedEvents.includes(event.type));
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
//#endregion
|
|
50
|
-
export { TestSubscriberAdaptor };
|
|
51
|
-
//# sourceMappingURL=TestSubscriberAdaptor-CwP3qNJ4.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TestSubscriberAdaptor-CwP3qNJ4.mjs","names":["subscriber: Subscriber<\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTSubscribedEvents\n\t\t>","serviceDiscovery: ServiceDiscovery<any>","request: TestSubscriberRequest<\n\t\t\tTEventPublisher,\n\t\t\tTSubscribedEvents,\n\t\t\tTServices\n\t\t>","services: ServiceRecord<TServices>","output: any","events: ExtractEventPayloads<TEventPublisher, TSubscribedEvents>[]","event: any"],"sources":["../src/subscribers/TestSubscriberAdaptor.ts"],"sourcesContent":["import { EnvironmentParser } from '@geekmidas/envkit';\nimport type {\n\tEventPublisher,\n\tExtractPublisherMessage,\n} from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport type { InferStandardSchema } from '@geekmidas/schema';\nimport type { Service, ServiceRecord } from '@geekmidas/services';\nimport { runWithRequestContext, ServiceDiscovery } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport { publishEvents } from '../publisher';\nimport type { Subscriber } from './Subscriber';\n\n// Helper type to extract payload types for subscribed events\ntype ExtractEventPayloads<\n\tTPublisher extends EventPublisher<any> | undefined,\n\tTEventTypes extends any[],\n> = TPublisher extends EventPublisher<any>\n\t? Extract<ExtractPublisherMessage<TPublisher>, { type: TEventTypes[number] }>\n\t: never;\n\nexport class TestSubscriberAdaptor<\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTSubscribedEvents extends\n\t\tExtractPublisherMessage<TEventPublisher>['type'][] = ExtractPublisherMessage<TEventPublisher>['type'][],\n> {\n\tstatic getDefaultServiceDiscovery() {\n\t\treturn ServiceDiscovery.getInstance(new EnvironmentParser({}));\n\t}\n\n\tconstructor(\n\t\tprivate readonly subscriber: Subscriber<\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTSubscribedEvents\n\t\t>,\n\t\tprivate serviceDiscovery: ServiceDiscovery<any> = TestSubscriberAdaptor.getDefaultServiceDiscovery(),\n\t) {}\n\n\tasync invoke(\n\t\trequest: TestSubscriberRequest<\n\t\t\tTEventPublisher,\n\t\t\tTSubscribedEvents,\n\t\t\tTServices\n\t\t>,\n\t): Promise<InferStandardSchema<OutSchema>> {\n\t\t// Create logger with test context\n\t\tconst logger = this.subscriber.logger.child({\n\t\t\ttest: true,\n\t\t}) as TLogger;\n\n\t\t// Resolve services (use provided or auto-register)\n\t\tlet services: ServiceRecord<TServices>;\n\t\tif (request.services) {\n\t\t\tservices = request.services;\n\t\t} else {\n\t\t\tservices = await this.serviceDiscovery.register(this.subscriber.services);\n\t\t}\n\n\t\t// Filter events to only subscribed types\n\t\tconst filteredEvents = this.filterEvents(request.events);\n\n\t\t// Return early if no events after filtering (mirrors AWSLambdaSubscriber)\n\t\tif (filteredEvents.length === 0) {\n\t\t\treturn { batchItemFailures: [] } as any;\n\t\t}\n\n\t\t// Wrap execution in request context for service access via context.getLogger()\n\t\tconst requestId = `test-${Date.now()}`;\n\t\tconst startTime = Date.now();\n\n\t\treturn runWithRequestContext({ logger, requestId, startTime }, async () => {\n\t\t\t// Execute the subscriber handler\n\t\t\tconst result = await this.subscriber.handler({\n\t\t\t\tevents: filteredEvents,\n\t\t\t\tservices,\n\t\t\t\tlogger,\n\t\t\t});\n\n\t\t\t// Validate output if schema is provided\n\t\t\tlet output: any = result;\n\t\t\tif (this.subscriber.outputSchema && result) {\n\t\t\t\tconst validationResult =\n\t\t\t\t\tawait this.subscriber.outputSchema['~standard'].validate(result);\n\n\t\t\t\tif (validationResult.issues) {\n\t\t\t\t\tthrow new Error('Subscriber output validation failed');\n\t\t\t\t}\n\n\t\t\t\toutput = validationResult.value;\n\t\t\t}\n\n\t\t\t// Publish events if configured\n\t\t\tawait publishEvents(\n\t\t\t\tlogger,\n\t\t\t\tthis.serviceDiscovery,\n\t\t\t\tthis.subscriber.events,\n\t\t\t\toutput,\n\t\t\t\tthis.subscriber.publisherService,\n\t\t\t);\n\n\t\t\treturn output;\n\t\t}) as Promise<InferStandardSchema<OutSchema>>;\n\t}\n\n\tprivate filterEvents(\n\t\tevents: ExtractEventPayloads<TEventPublisher, TSubscribedEvents>[],\n\t): ExtractEventPayloads<TEventPublisher, TSubscribedEvents>[] {\n\t\tif (!this.subscriber.subscribedEvents) {\n\t\t\treturn events;\n\t\t}\n\n\t\treturn events.filter((event: any) =>\n\t\t\tthis.subscriber.subscribedEvents!.includes(event.type),\n\t\t);\n\t}\n}\n\nexport type TestSubscriberRequest<\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTSubscribedEvents extends any[] = [],\n\tTServices extends Service[] = [],\n> = {\n\tevents: ExtractEventPayloads<TEventPublisher, TSubscribedEvents>[];\n\tservices?: ServiceRecord<TServices>;\n};\n"],"mappings":";;;;;AAqBA,IAAa,wBAAb,MAAa,sBAQX;CACD,OAAO,6BAA6B;AACnC,SAAO,iBAAiB,YAAY,IAAI,kBAAkB,CAAE,GAAE;CAC9D;CAED,YACkBA,YAQTC,mBAA0C,sBAAsB,4BAA4B,EACnG;EATgB;EAQT;CACL;CAEJ,MAAM,OACLC,SAK0C;EAE1C,MAAM,SAAS,KAAK,WAAW,OAAO,MAAM,EAC3C,MAAM,KACN,EAAC;EAGF,IAAIC;AACJ,MAAI,QAAQ,SACX,YAAW,QAAQ;MAEnB,YAAW,MAAM,KAAK,iBAAiB,SAAS,KAAK,WAAW,SAAS;EAI1E,MAAM,iBAAiB,KAAK,aAAa,QAAQ,OAAO;AAGxD,MAAI,eAAe,WAAW,EAC7B,QAAO,EAAE,mBAAmB,CAAE,EAAE;EAIjC,MAAM,aAAa,OAAO,KAAK,KAAK,CAAC;EACrC,MAAM,YAAY,KAAK,KAAK;AAE5B,SAAO,sBAAsB;GAAE;GAAQ;GAAW;EAAW,GAAE,YAAY;GAE1E,MAAM,SAAS,MAAM,KAAK,WAAW,QAAQ;IAC5C,QAAQ;IACR;IACA;GACA,EAAC;GAGF,IAAIC,SAAc;AAClB,OAAI,KAAK,WAAW,gBAAgB,QAAQ;IAC3C,MAAM,mBACL,MAAM,KAAK,WAAW,aAAa,aAAa,SAAS,OAAO;AAEjE,QAAI,iBAAiB,OACpB,OAAM,IAAI,MAAM;AAGjB,aAAS,iBAAiB;GAC1B;AAGD,SAAM,cACL,QACA,KAAK,kBACL,KAAK,WAAW,QAChB,QACA,KAAK,WAAW,iBAChB;AAED,UAAO;EACP,EAAC;CACF;CAED,AAAQ,aACPC,QAC6D;AAC7D,OAAK,KAAK,WAAW,iBACpB,QAAO;AAGR,SAAO,OAAO,OAAO,CAACC,UACrB,KAAK,WAAW,iBAAkB,SAAS,MAAM,KAAK,CACtD;CACD;AACD"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { Subscriber } from "./Subscriber-1rDE7HuM.cjs";
|
|
2
|
-
import { EventPublisher, ExtractPublisherMessage } from "@geekmidas/events";
|
|
3
|
-
import { Logger } from "@geekmidas/logger";
|
|
4
|
-
import { Service, ServiceDiscovery, ServiceRecord } from "@geekmidas/services";
|
|
5
|
-
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
6
|
-
import { InferStandardSchema } from "@geekmidas/schema";
|
|
7
|
-
|
|
8
|
-
//#region src/subscribers/TestSubscriberAdaptor.d.ts
|
|
9
|
-
type ExtractEventPayloads<TPublisher extends EventPublisher<any> | undefined, TEventTypes extends any[]> = TPublisher extends EventPublisher<any> ? Extract<ExtractPublisherMessage<TPublisher>, {
|
|
10
|
-
type: TEventTypes[number];
|
|
11
|
-
}> : never;
|
|
12
|
-
declare class TestSubscriberAdaptor<TServices extends Service[] = [], TLogger extends Logger = Logger, OutSchema extends StandardSchemaV1 | undefined = undefined, TEventPublisher extends EventPublisher<any> | undefined = undefined, TEventPublisherServiceName extends string = string, TSubscribedEvents extends ExtractPublisherMessage<TEventPublisher>['type'][] = ExtractPublisherMessage<TEventPublisher>['type'][]> {
|
|
13
|
-
private readonly subscriber;
|
|
14
|
-
private serviceDiscovery;
|
|
15
|
-
static getDefaultServiceDiscovery(): ServiceDiscovery<any>;
|
|
16
|
-
constructor(subscriber: Subscriber<TServices, TLogger, OutSchema, TEventPublisher, TEventPublisherServiceName, TSubscribedEvents>, serviceDiscovery?: ServiceDiscovery<any>);
|
|
17
|
-
invoke(request: TestSubscriberRequest<TEventPublisher, TSubscribedEvents, TServices>): Promise<InferStandardSchema<OutSchema>>;
|
|
18
|
-
private filterEvents;
|
|
19
|
-
}
|
|
20
|
-
type TestSubscriberRequest<TEventPublisher extends EventPublisher<any> | undefined = undefined, TSubscribedEvents extends any[] = [], TServices extends Service[] = []> = {
|
|
21
|
-
events: ExtractEventPayloads<TEventPublisher, TSubscribedEvents>[];
|
|
22
|
-
services?: ServiceRecord<TServices>;
|
|
23
|
-
};
|
|
24
|
-
//#endregion
|
|
25
|
-
export { TestSubscriberAdaptor, TestSubscriberRequest };
|
|
26
|
-
//# sourceMappingURL=TestSubscriberAdaptor-DQk5xzb0.d.cts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TestSubscriberAdaptor-DQk5xzb0.d.cts","names":[],"sources":["../src/subscribers/TestSubscriberAdaptor.ts"],"sourcesContent":[],"mappings":";;;;;;;;KAcK,wCACe,8DAEhB,mBAAmB,sBACpB,QAAQ,wBAAwB;EAJ9B,IAAA,EAImD,WAJnD,CAAA,MAAoB,CAAA;CAAA,CAAA,GAAA,KAAA;AACL,cAMP,qBANO,CAAA,kBAOD,OAPC,EAAA,GAAA,EAAA,EAAA,gBAQH,MARG,GAQM,MARN,EAAA,kBASD,gBATC,GAAA,SAAA,GAAA,SAAA,EAAA,wBAUK,cAVL,CAAA,GAAA,CAAA,GAAA,SAAA,GAAA,SAAA,EAAA,mCAAA,MAAA,GAAA,MAAA,EAAA,0BAalB,uBAbkB,CAaM,eAbN,CAAA,CAAA,MAAA,CAAA,EAAA,GAamC,uBAbnC,CAa2D,eAb3D,CAAA,CAAA,MAAA,CAAA,EAAA,CAAA,CAAA;EAAc,iBAE9B,UAAA;EAAU,QAAS,gBAAA;EAAc,OACF,0BAAA,CAAA,CAAA,EAYD,gBAZC,CAAA,GAAA,CAAA;EAAU,WAAlC,CAAA,UAAA,EAiBoB,UAjBpB,CAkBR,SAlBQ,EAmBR,OAnBQ,EAoBR,SApBQ,EAqBR,eArBQ,EAsBR,0BAtBQ,EAuBR,iBAvBQ,CAAA,EAAA,gBAAA,CAAA,EAyBiB,gBAzBjB,CAAA,GAAA,CAAA;EAAuB,MAAsB,CAAA,OAAA,EA6B7C,qBA7B6C,CA8BrD,eA9BqD,EA+BrD,iBA/BqD,EAgCrD,SAhCqD,CAAA,CAAA,EAkCpD,OAlCoD,CAkC5C,mBAlC4C,CAkCxB,SAlCwB,CAAA,CAAA;EAAW,QAAhE,YAAA;AAAO;AAGG,KAwGD,qBAxGsB,CAAA,wBAyGT,cAzGS,CAAA,GAAA,CAAA,GAAA,SAAA,GAAA,SAAA,EAAA,0BAAA,GAAA,EAAA,GAAA,EAAA,EAAA,kBA2Gf,OA3Ge,EAAA,GAAA,EAAA,CAAA,GAAA;EAAA,MAAA,EA6GzB,oBA7GyB,CA6GJ,eA7GI,EA6Ga,iBA7Gb,CAAA,EAAA;EAAA,QACf,CAAA,EA6GP,aA7GO,CA6GO,SA7GP,CAAA;CAAO"}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
const require_chunk = require('./chunk-CUT6urMc.cjs');
|
|
2
|
-
const require_publisher = require('./publisher-lFQleddL.cjs');
|
|
3
|
-
const __geekmidas_services = require_chunk.__toESM(require("@geekmidas/services"));
|
|
4
|
-
const __geekmidas_envkit = require_chunk.__toESM(require("@geekmidas/envkit"));
|
|
5
|
-
|
|
6
|
-
//#region src/subscribers/TestSubscriberAdaptor.ts
|
|
7
|
-
var TestSubscriberAdaptor = class TestSubscriberAdaptor {
|
|
8
|
-
static getDefaultServiceDiscovery() {
|
|
9
|
-
return __geekmidas_services.ServiceDiscovery.getInstance(new __geekmidas_envkit.EnvironmentParser({}));
|
|
10
|
-
}
|
|
11
|
-
constructor(subscriber, serviceDiscovery = TestSubscriberAdaptor.getDefaultServiceDiscovery()) {
|
|
12
|
-
this.subscriber = subscriber;
|
|
13
|
-
this.serviceDiscovery = serviceDiscovery;
|
|
14
|
-
}
|
|
15
|
-
async invoke(request) {
|
|
16
|
-
const logger = this.subscriber.logger.child({ test: true });
|
|
17
|
-
let services;
|
|
18
|
-
if (request.services) services = request.services;
|
|
19
|
-
else services = await this.serviceDiscovery.register(this.subscriber.services);
|
|
20
|
-
const filteredEvents = this.filterEvents(request.events);
|
|
21
|
-
if (filteredEvents.length === 0) return { batchItemFailures: [] };
|
|
22
|
-
const requestId = `test-${Date.now()}`;
|
|
23
|
-
const startTime = Date.now();
|
|
24
|
-
return (0, __geekmidas_services.runWithRequestContext)({
|
|
25
|
-
logger,
|
|
26
|
-
requestId,
|
|
27
|
-
startTime
|
|
28
|
-
}, async () => {
|
|
29
|
-
const result = await this.subscriber.handler({
|
|
30
|
-
events: filteredEvents,
|
|
31
|
-
services,
|
|
32
|
-
logger
|
|
33
|
-
});
|
|
34
|
-
let output = result;
|
|
35
|
-
if (this.subscriber.outputSchema && result) {
|
|
36
|
-
const validationResult = await this.subscriber.outputSchema["~standard"].validate(result);
|
|
37
|
-
if (validationResult.issues) throw new Error("Subscriber output validation failed");
|
|
38
|
-
output = validationResult.value;
|
|
39
|
-
}
|
|
40
|
-
await require_publisher.publishEvents(logger, this.serviceDiscovery, this.subscriber.events, output, this.subscriber.publisherService);
|
|
41
|
-
return output;
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
filterEvents(events) {
|
|
45
|
-
if (!this.subscriber.subscribedEvents) return events;
|
|
46
|
-
return events.filter((event) => this.subscriber.subscribedEvents.includes(event.type));
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
//#endregion
|
|
51
|
-
Object.defineProperty(exports, 'TestSubscriberAdaptor', {
|
|
52
|
-
enumerable: true,
|
|
53
|
-
get: function () {
|
|
54
|
-
return TestSubscriberAdaptor;
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
//# sourceMappingURL=TestSubscriberAdaptor-Dgxr_0vL.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TestSubscriberAdaptor-Dgxr_0vL.cjs","names":["EnvironmentParser","subscriber: Subscriber<\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTSubscribedEvents\n\t\t>","serviceDiscovery: ServiceDiscovery<any>","request: TestSubscriberRequest<\n\t\t\tTEventPublisher,\n\t\t\tTSubscribedEvents,\n\t\t\tTServices\n\t\t>","services: ServiceRecord<TServices>","output: any","events: ExtractEventPayloads<TEventPublisher, TSubscribedEvents>[]","event: any"],"sources":["../src/subscribers/TestSubscriberAdaptor.ts"],"sourcesContent":["import { EnvironmentParser } from '@geekmidas/envkit';\nimport type {\n\tEventPublisher,\n\tExtractPublisherMessage,\n} from '@geekmidas/events';\nimport type { Logger } from '@geekmidas/logger';\nimport type { InferStandardSchema } from '@geekmidas/schema';\nimport type { Service, ServiceRecord } from '@geekmidas/services';\nimport { runWithRequestContext, ServiceDiscovery } from '@geekmidas/services';\nimport type { StandardSchemaV1 } from '@standard-schema/spec';\nimport { publishEvents } from '../publisher';\nimport type { Subscriber } from './Subscriber';\n\n// Helper type to extract payload types for subscribed events\ntype ExtractEventPayloads<\n\tTPublisher extends EventPublisher<any> | undefined,\n\tTEventTypes extends any[],\n> = TPublisher extends EventPublisher<any>\n\t? Extract<ExtractPublisherMessage<TPublisher>, { type: TEventTypes[number] }>\n\t: never;\n\nexport class TestSubscriberAdaptor<\n\tTServices extends Service[] = [],\n\tTLogger extends Logger = Logger,\n\tOutSchema extends StandardSchemaV1 | undefined = undefined,\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTEventPublisherServiceName extends string = string,\n\tTSubscribedEvents extends\n\t\tExtractPublisherMessage<TEventPublisher>['type'][] = ExtractPublisherMessage<TEventPublisher>['type'][],\n> {\n\tstatic getDefaultServiceDiscovery() {\n\t\treturn ServiceDiscovery.getInstance(new EnvironmentParser({}));\n\t}\n\n\tconstructor(\n\t\tprivate readonly subscriber: Subscriber<\n\t\t\tTServices,\n\t\t\tTLogger,\n\t\t\tOutSchema,\n\t\t\tTEventPublisher,\n\t\t\tTEventPublisherServiceName,\n\t\t\tTSubscribedEvents\n\t\t>,\n\t\tprivate serviceDiscovery: ServiceDiscovery<any> = TestSubscriberAdaptor.getDefaultServiceDiscovery(),\n\t) {}\n\n\tasync invoke(\n\t\trequest: TestSubscriberRequest<\n\t\t\tTEventPublisher,\n\t\t\tTSubscribedEvents,\n\t\t\tTServices\n\t\t>,\n\t): Promise<InferStandardSchema<OutSchema>> {\n\t\t// Create logger with test context\n\t\tconst logger = this.subscriber.logger.child({\n\t\t\ttest: true,\n\t\t}) as TLogger;\n\n\t\t// Resolve services (use provided or auto-register)\n\t\tlet services: ServiceRecord<TServices>;\n\t\tif (request.services) {\n\t\t\tservices = request.services;\n\t\t} else {\n\t\t\tservices = await this.serviceDiscovery.register(this.subscriber.services);\n\t\t}\n\n\t\t// Filter events to only subscribed types\n\t\tconst filteredEvents = this.filterEvents(request.events);\n\n\t\t// Return early if no events after filtering (mirrors AWSLambdaSubscriber)\n\t\tif (filteredEvents.length === 0) {\n\t\t\treturn { batchItemFailures: [] } as any;\n\t\t}\n\n\t\t// Wrap execution in request context for service access via context.getLogger()\n\t\tconst requestId = `test-${Date.now()}`;\n\t\tconst startTime = Date.now();\n\n\t\treturn runWithRequestContext({ logger, requestId, startTime }, async () => {\n\t\t\t// Execute the subscriber handler\n\t\t\tconst result = await this.subscriber.handler({\n\t\t\t\tevents: filteredEvents,\n\t\t\t\tservices,\n\t\t\t\tlogger,\n\t\t\t});\n\n\t\t\t// Validate output if schema is provided\n\t\t\tlet output: any = result;\n\t\t\tif (this.subscriber.outputSchema && result) {\n\t\t\t\tconst validationResult =\n\t\t\t\t\tawait this.subscriber.outputSchema['~standard'].validate(result);\n\n\t\t\t\tif (validationResult.issues) {\n\t\t\t\t\tthrow new Error('Subscriber output validation failed');\n\t\t\t\t}\n\n\t\t\t\toutput = validationResult.value;\n\t\t\t}\n\n\t\t\t// Publish events if configured\n\t\t\tawait publishEvents(\n\t\t\t\tlogger,\n\t\t\t\tthis.serviceDiscovery,\n\t\t\t\tthis.subscriber.events,\n\t\t\t\toutput,\n\t\t\t\tthis.subscriber.publisherService,\n\t\t\t);\n\n\t\t\treturn output;\n\t\t}) as Promise<InferStandardSchema<OutSchema>>;\n\t}\n\n\tprivate filterEvents(\n\t\tevents: ExtractEventPayloads<TEventPublisher, TSubscribedEvents>[],\n\t): ExtractEventPayloads<TEventPublisher, TSubscribedEvents>[] {\n\t\tif (!this.subscriber.subscribedEvents) {\n\t\t\treturn events;\n\t\t}\n\n\t\treturn events.filter((event: any) =>\n\t\t\tthis.subscriber.subscribedEvents!.includes(event.type),\n\t\t);\n\t}\n}\n\nexport type TestSubscriberRequest<\n\tTEventPublisher extends EventPublisher<any> | undefined = undefined,\n\tTSubscribedEvents extends any[] = [],\n\tTServices extends Service[] = [],\n> = {\n\tevents: ExtractEventPayloads<TEventPublisher, TSubscribedEvents>[];\n\tservices?: ServiceRecord<TServices>;\n};\n"],"mappings":";;;;;;AAqBA,IAAa,wBAAb,MAAa,sBAQX;CACD,OAAO,6BAA6B;AACnC,SAAO,sCAAiB,YAAY,IAAIA,qCAAkB,CAAE,GAAE;CAC9D;CAED,YACkBC,YAQTC,mBAA0C,sBAAsB,4BAA4B,EACnG;EATgB;EAQT;CACL;CAEJ,MAAM,OACLC,SAK0C;EAE1C,MAAM,SAAS,KAAK,WAAW,OAAO,MAAM,EAC3C,MAAM,KACN,EAAC;EAGF,IAAIC;AACJ,MAAI,QAAQ,SACX,YAAW,QAAQ;MAEnB,YAAW,MAAM,KAAK,iBAAiB,SAAS,KAAK,WAAW,SAAS;EAI1E,MAAM,iBAAiB,KAAK,aAAa,QAAQ,OAAO;AAGxD,MAAI,eAAe,WAAW,EAC7B,QAAO,EAAE,mBAAmB,CAAE,EAAE;EAIjC,MAAM,aAAa,OAAO,KAAK,KAAK,CAAC;EACrC,MAAM,YAAY,KAAK,KAAK;AAE5B,SAAO,gDAAsB;GAAE;GAAQ;GAAW;EAAW,GAAE,YAAY;GAE1E,MAAM,SAAS,MAAM,KAAK,WAAW,QAAQ;IAC5C,QAAQ;IACR;IACA;GACA,EAAC;GAGF,IAAIC,SAAc;AAClB,OAAI,KAAK,WAAW,gBAAgB,QAAQ;IAC3C,MAAM,mBACL,MAAM,KAAK,WAAW,aAAa,aAAa,SAAS,OAAO;AAEjE,QAAI,iBAAiB,OACpB,OAAM,IAAI,MAAM;AAGjB,aAAS,iBAAiB;GAC1B;AAGD,SAAM,gCACL,QACA,KAAK,kBACL,KAAK,WAAW,QAChB,QACA,KAAK,WAAW,iBAChB;AAED,UAAO;EACP,EAAC;CACF;CAED,AAAQ,aACPC,QAC6D;AAC7D,OAAK,KAAK,WAAW,iBACpB,QAAO;AAGR,SAAO,OAAO,OAAO,CAACC,UACrB,KAAK,WAAW,iBAAkB,SAAS,MAAM,KAAK,CACtD;CACD;AACD"}
|
package/dist/chunk-CUT6urMc.cjs
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
//#region rolldown:runtime
|
|
2
|
-
var __create = Object.create;
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __copyProps = (to, from, except, desc) => {
|
|
9
|
-
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
|
|
10
|
-
key = keys[i];
|
|
11
|
-
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
12
|
-
get: ((k) => from[k]).bind(null, key),
|
|
13
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
14
|
-
});
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
19
|
-
value: mod,
|
|
20
|
-
enumerable: true
|
|
21
|
-
}) : target, mod));
|
|
22
|
-
|
|
23
|
-
//#endregion
|
|
24
|
-
|
|
25
|
-
Object.defineProperty(exports, '__toESM', {
|
|
26
|
-
enumerable: true,
|
|
27
|
-
get: function () {
|
|
28
|
-
return __toESM;
|
|
29
|
-
}
|
|
30
|
-
});
|
package/dist/crons/Cron.cjs
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
require('../Construct-BXG8cFSm.cjs');
|
|
2
|
-
require('../BaseFunctionBuilder-DXf6HK-N.cjs');
|
|
3
|
-
require('../Function-DgQ_no6B.cjs');
|
|
4
|
-
require('../FunctionBuilder-C_xG9As7.cjs');
|
|
5
|
-
require('../functions-rOD3pXQd.cjs');
|
|
6
|
-
const require_Cron = require('../Cron-DEKZg5j4.cjs');
|
|
7
|
-
|
|
8
|
-
exports.Cron = require_Cron.Cron;
|
package/dist/crons/Cron.d.cts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import "../Construct-CX7HyFfT.cjs";
|
|
2
|
-
import "../BaseFunctionBuilder-C-4hYTfj.cjs";
|
|
3
|
-
import "../Function-CwlB89lS.cjs";
|
|
4
|
-
import "../FunctionBuilder-D_7f5MfS.cjs";
|
|
5
|
-
import "../index-BfeupgMl.cjs";
|
|
6
|
-
import { Cron, CronExpression, RateExpression, ScheduleExpression } from "../Cron-BDxW6fYg.cjs";
|
|
7
|
-
export { Cron, CronExpression, RateExpression, ScheduleExpression };
|
package/dist/crons/Cron.d.mts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import "../Construct-C2SyofdS.mjs";
|
|
2
|
-
import "../BaseFunctionBuilder-CsvFjzA8.mjs";
|
|
3
|
-
import "../Function-CZw1DRQ6.mjs";
|
|
4
|
-
import "../FunctionBuilder-m5BNA2Ap.mjs";
|
|
5
|
-
import "../index-DQo_Csy7.mjs";
|
|
6
|
-
import { Cron, CronExpression, RateExpression, ScheduleExpression } from "../Cron-CWxjO2Fg.mjs";
|
|
7
|
-
export { Cron, CronExpression, RateExpression, ScheduleExpression };
|
package/dist/crons/Cron.mjs
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import "../Construct-CQ9zV58W.mjs";
|
|
2
|
-
import "../BaseFunctionBuilder-C3rQMoWb.mjs";
|
|
3
|
-
import "../Function-xfQbftdE.mjs";
|
|
4
|
-
import "../FunctionBuilder-CBeqX18X.mjs";
|
|
5
|
-
import "../functions-B1mrMoUH.mjs";
|
|
6
|
-
import { Cron } from "../Cron-B3vrGuaD.mjs";
|
|
7
|
-
|
|
8
|
-
export { Cron };
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
require('../Construct-BXG8cFSm.cjs');
|
|
2
|
-
require('../BaseFunctionBuilder-DXf6HK-N.cjs');
|
|
3
|
-
require('../Function-DgQ_no6B.cjs');
|
|
4
|
-
require('../FunctionBuilder-C_xG9As7.cjs');
|
|
5
|
-
require('../functions-rOD3pXQd.cjs');
|
|
6
|
-
require('../Cron-DEKZg5j4.cjs');
|
|
7
|
-
const require_CronBuilder = require('../CronBuilder-BHpY6w3b.cjs');
|
|
8
|
-
|
|
9
|
-
exports.CronBuilder = require_CronBuilder.CronBuilder;
|