@kensio/yulin 0.43.0 → 0.44.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/sdk/router/resolve-sim-sdk-command-router.d.ts.map +1 -1
- package/dist/sdk/router/resolve-sim-sdk-command-router.js +3 -0
- package/dist/sdk/router/resolve-sim-sdk-command-router.js.map +1 -1
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts +11 -0
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.js +19 -0
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.js.map +1 -1
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts +3 -0
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-service-factory.js +4 -0
- package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.d.ts +5 -0
- package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.js +6 -0
- package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
- package/dist/service/aws/sim-aws.d.ts +3 -0
- package/dist/service/aws/sim-aws.d.ts.map +1 -1
- package/dist/service/aws/sim-aws.js +4 -0
- package/dist/service/aws/sim-aws.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.js +8 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-event-source-mapping-cfn.d.ts +28 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-event-source-mapping-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-event-source-mapping-cfn.js +33 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-event-source-mapping-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js +2 -0
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-cfn-value-adapter.js +13 -0
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-queue-cfn.d.ts +28 -0
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-queue-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-queue-cfn.js +40 -0
- package/dist/service/cloudformation/resource/cfn/sqs/sim-sqs-queue-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.js +3 -0
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.js.map +1 -1
- package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts +3 -0
- package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/sim-cfn-resource.js +4 -1
- package/dist/service/cloudformation/resource/sim-cfn-resource.js.map +1 -1
- package/dist/service/cloudformation/stack/resource-map/sim-cfn-stack-resource-map.d.ts.map +1 -1
- package/dist/service/cloudformation/stack/resource-map/sim-cfn-stack-resource-map.js +1 -0
- package/dist/service/cloudformation/stack/resource-map/sim-cfn-stack-resource-map.js.map +1 -1
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-creator.d.ts +26 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-creator.d.ts.map +1 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-creator.js +33 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-creator.js.map +1 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.d.ts +28 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.d.ts.map +1 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.js +38 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.js.map +1 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.d.ts +17 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.d.ts.map +1 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.js +71 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.js.map +1 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.d.ts +4 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.d.ts.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.js +12 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.js.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.d.ts +5 -6
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.d.ts.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.js +7 -13
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.js.map +1 -1
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts +1 -0
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts.map +1 -1
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js +8 -0
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js.map +1 -1
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.d.ts +25 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.d.ts.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.js +55 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.js.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.d.ts +6 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.d.ts.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.js +64 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.js.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-values.d.ts +17 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-values.d.ts.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-values.js +47 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-values.js.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.d.ts +53 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.js +77 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.js.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping-access.d.ts +41 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping-access.d.ts.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping-access.js +51 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping-access.js.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping.command.d.ts +91 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping.command.d.ts.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping.command.js +8 -0
- package/dist/service/lambda/command/event-source-mapping/event-source-mapping.command.js.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/sim-lambda-event-source-mapping-commands.d.ts +60 -0
- package/dist/service/lambda/command/event-source-mapping/sim-lambda-event-source-mapping-commands.d.ts.map +1 -0
- package/dist/service/lambda/command/event-source-mapping/sim-lambda-event-source-mapping-commands.js +89 -0
- package/dist/service/lambda/command/event-source-mapping/sim-lambda-event-source-mapping-commands.js.map +1 -0
- package/dist/service/lambda/command/sim-lambda-command.types.d.ts +1 -0
- package/dist/service/lambda/command/sim-lambda-command.types.d.ts.map +1 -1
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-delivery.d.ts +27 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-delivery.d.ts.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-delivery.js +32 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-delivery.js.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poll-schedule.d.ts +40 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poll-schedule.d.ts.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poll-schedule.js +55 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poll-schedule.js.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poller.d.ts +85 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poller.d.ts.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poller.js +136 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-event-source-poller.js.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-batch-response.d.ts +49 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-batch-response.d.ts.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-batch-response.js +97 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-batch-response.js.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-event.d.ts +56 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-event.d.ts.map +1 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-event.js +55 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-sqs-event.js.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queue-service.d.ts +49 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queue-service.d.ts.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queue-service.js +2 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queue-service.js.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queues.d.ts +118 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queues.d.ts.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queues.js +49 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-event-source-queues.js.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.d.ts +32 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.d.ts.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.js +52 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.js.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queue-attributes.d.ts +29 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queue-attributes.d.ts.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queue-attributes.js +49 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queue-attributes.js.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queues.d.ts +57 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queues.d.ts.map +1 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queues.js +89 -0
- package/dist/service/lambda/event-source/queue/sim-sqs-event-source-queues.js.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping-store.d.ts +46 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping-store.d.ts.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping-store.js +57 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping-store.js.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.d.ts +101 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.d.ts.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.js +93 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.js.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-pollers.d.ts +37 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-pollers.d.ts.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-pollers.js +44 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-pollers.js.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-role-permissions.d.ts +23 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-role-permissions.d.ts.map +1 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-role-permissions.js +46 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-role-permissions.js.map +1 -0
- package/dist/service/lambda/function/sim-lambda-function-name.d.ts +10 -0
- package/dist/service/lambda/function/sim-lambda-function-name.d.ts.map +1 -0
- package/dist/service/lambda/function/sim-lambda-function-name.js +18 -0
- package/dist/service/lambda/function/sim-lambda-function-name.js.map +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-lookup.d.ts +4 -0
- package/dist/service/lambda/function/url/sim-lambda-function-lookup.d.ts.map +1 -1
- package/dist/service/lambda/function/url/sim-lambda-function-lookup.js +6 -0
- package/dist/service/lambda/function/url/sim-lambda-function-lookup.js.map +1 -1
- package/dist/service/lambda/index.d.ts +1 -0
- package/dist/service/lambda/index.d.ts.map +1 -1
- package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.d.ts.map +1 -1
- package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.js +16 -0
- package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.js.map +1 -1
- package/dist/service/lambda/sim-lambda-commands.d.ts +51 -0
- package/dist/service/lambda/sim-lambda-commands.d.ts.map +1 -0
- package/dist/service/lambda/sim-lambda-commands.js +84 -0
- package/dist/service/lambda/sim-lambda-commands.js.map +1 -0
- package/dist/service/lambda/sim-lambda.d.ts +35 -39
- package/dist/service/lambda/sim-lambda.d.ts.map +1 -1
- package/dist/service/lambda/sim-lambda.js +47 -65
- package/dist/service/lambda/sim-lambda.js.map +1 -1
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-creator.d.ts +25 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-creator.d.ts.map +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-creator.js +33 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-creator.js.map +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-name.d.ts +45 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-name.d.ts.map +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-name.js +67 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-name.js.map +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.d.ts +44 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.d.ts.map +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.js +72 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-properties.js.map +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.d.ts +47 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.d.ts.map +1 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.js +122 -0
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-property-rules.js.map +1 -0
- package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.d.ts +24 -0
- package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.d.ts.map +1 -0
- package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.js +29 -0
- package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.js.map +1 -0
- package/dist/service/sqs/command/authorize/sim-sqs-authorizer.d.ts +41 -0
- package/dist/service/sqs/command/authorize/sim-sqs-authorizer.d.ts.map +1 -0
- package/dist/service/sqs/command/authorize/sim-sqs-authorizer.js +51 -0
- package/dist/service/sqs/command/authorize/sim-sqs-authorizer.js.map +1 -0
- package/dist/service/sqs/command/message/consume.command.d.ts +61 -0
- package/dist/service/sqs/command/message/consume.command.d.ts.map +1 -0
- package/dist/service/sqs/command/message/consume.command.js +2 -0
- package/dist/service/sqs/command/message/consume.command.js.map +1 -0
- package/dist/service/sqs/command/message/receive.command.d.ts +40 -0
- package/dist/service/sqs/command/message/receive.command.d.ts.map +1 -0
- package/dist/service/sqs/command/message/receive.command.js +2 -0
- package/dist/service/sqs/command/message/receive.command.js.map +1 -0
- package/dist/service/sqs/command/message/send.command.d.ts +80 -0
- package/dist/service/sqs/command/message/send.command.d.ts.map +1 -0
- package/dist/service/sqs/command/message/send.command.js +2 -0
- package/dist/service/sqs/command/message/send.command.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-batch-entries.d.ts +39 -0
- package/dist/service/sqs/command/message/sim-sqs-batch-entries.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-batch-entries.js +67 -0
- package/dist/service/sqs/command/message/sim-sqs-batch-entries.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-change-message-visibility.d.ts +31 -0
- package/dist/service/sqs/command/message/sim-sqs-change-message-visibility.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-change-message-visibility.js +51 -0
- package/dist/service/sqs/command/message/sim-sqs-change-message-visibility.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-delete-message-commands.d.ts +38 -0
- package/dist/service/sqs/command/message/sim-sqs-delete-message-commands.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-delete-message-commands.js +58 -0
- package/dist/service/sqs/command/message/sim-sqs-delete-message-commands.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-message-handles.d.ts +28 -0
- package/dist/service/sqs/command/message/sim-sqs-message-handles.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-message-handles.js +36 -0
- package/dist/service/sqs/command/message/sim-sqs-message-handles.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-limits.d.ts +27 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-limits.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-limits.js +70 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-limits.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-message.d.ts +32 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-message.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-message.js +33 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-message.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-request.d.ts +33 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-request.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-request.js +55 -0
- package/dist/service/sqs/command/message/sim-sqs-receive-request.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-received-message-view.d.ts +25 -0
- package/dist/service/sqs/command/message/sim-sqs-received-message-view.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-received-message-view.js +38 -0
- package/dist/service/sqs/command/message/sim-sqs-received-message-view.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-send-message-commands.d.ts +32 -0
- package/dist/service/sqs/command/message/sim-sqs-send-message-commands.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-send-message-commands.js +56 -0
- package/dist/service/sqs/command/message/sim-sqs-send-message-commands.js.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-sent-message.d.ts +18 -0
- package/dist/service/sqs/command/message/sim-sqs-sent-message.d.ts.map +1 -0
- package/dist/service/sqs/command/message/sim-sqs-sent-message.js +37 -0
- package/dist/service/sqs/command/message/sim-sqs-sent-message.js.map +1 -0
- package/dist/service/sqs/command/queue/queue.command.d.ts +114 -0
- package/dist/service/sqs/command/queue/queue.command.d.ts.map +1 -0
- package/dist/service/sqs/command/queue/queue.command.js +2 -0
- package/dist/service/sqs/command/queue/queue.command.js.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-create-queue.d.ts +51 -0
- package/dist/service/sqs/command/queue/sim-sqs-create-queue.d.ts.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-create-queue.js +70 -0
- package/dist/service/sqs/command/queue/sim-sqs-create-queue.js.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-access.d.ts +63 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-access.d.ts.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-access.js +98 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-access.js.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-attribute-commands.d.ts +45 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-attribute-commands.d.ts.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-attribute-commands.js +74 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-attribute-commands.js.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-commands.d.ts +47 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-commands.d.ts.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-commands.js +55 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-commands.js.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-page.d.ts +27 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-page.d.ts.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-page.js +54 -0
- package/dist/service/sqs/command/queue/sim-sqs-queue-page.js.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-unsimulated-queue-input.d.ts +18 -0
- package/dist/service/sqs/command/queue/sim-sqs-unsimulated-queue-input.d.ts.map +1 -0
- package/dist/service/sqs/command/queue/sim-sqs-unsimulated-queue-input.js +27 -0
- package/dist/service/sqs/command/queue/sim-sqs-unsimulated-queue-input.js.map +1 -0
- package/dist/service/sqs/command/sim-sqs-command.types.d.ts +8 -0
- package/dist/service/sqs/command/sim-sqs-command.types.d.ts.map +1 -0
- package/dist/service/sqs/command/sim-sqs-command.types.js +2 -0
- package/dist/service/sqs/command/sim-sqs-command.types.js.map +1 -0
- package/dist/service/sqs/error/sim-sqs.error.d.ts +162 -0
- package/dist/service/sqs/error/sim-sqs.error.d.ts.map +1 -0
- package/dist/service/sqs/error/sim-sqs.error.js +191 -0
- package/dist/service/sqs/error/sim-sqs.error.js.map +1 -0
- package/dist/service/sqs/index.d.ts +14 -0
- package/dist/service/sqs/index.d.ts.map +1 -0
- package/dist/service/sqs/index.js +13 -0
- package/dist/service/sqs/index.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-payload.d.ts +56 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-payload.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-payload.js +42 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-payload.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-rules.d.ts +23 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-rules.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-rules.js +68 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-rules.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-value.d.ts +17 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-value.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-value.js +2 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute-value.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute.d.ts +29 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute.js +56 -0
- package/dist/service/sqs/message/sim-sqs-message-attribute.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attributes.d.ts +44 -0
- package/dist/service/sqs/message/sim-sqs-message-attributes.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-attributes.js +93 -0
- package/dist/service/sqs/message/sim-sqs-message-attributes.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-body.d.ts +18 -0
- package/dist/service/sqs/message/sim-sqs-message-body.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-body.js +66 -0
- package/dist/service/sqs/message/sim-sqs-message-body.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-store.d.ts +74 -0
- package/dist/service/sqs/message/sim-sqs-message-store.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-store.js +99 -0
- package/dist/service/sqs/message/sim-sqs-message-store.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-system-attributes.d.ts +28 -0
- package/dist/service/sqs/message/sim-sqs-message-system-attributes.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-system-attributes.js +75 -0
- package/dist/service/sqs/message/sim-sqs-message-system-attributes.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-visibility.d.ts +56 -0
- package/dist/service/sqs/message/sim-sqs-message-visibility.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-visibility.js +79 -0
- package/dist/service/sqs/message/sim-sqs-message-visibility.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-writer.d.ts +41 -0
- package/dist/service/sqs/message/sim-sqs-message-writer.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message-writer.js +56 -0
- package/dist/service/sqs/message/sim-sqs-message-writer.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message.d.ts +96 -0
- package/dist/service/sqs/message/sim-sqs-message.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-message.js +136 -0
- package/dist/service/sqs/message/sim-sqs-message.js.map +1 -0
- package/dist/service/sqs/message/sim-sqs-receipt-handle.d.ts +10 -0
- package/dist/service/sqs/message/sim-sqs-receipt-handle.d.ts.map +1 -0
- package/dist/service/sqs/message/sim-sqs-receipt-handle.js +14 -0
- package/dist/service/sqs/message/sim-sqs-receipt-handle.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-dead-letter-targets.d.ts +51 -0
- package/dist/service/sqs/queue/sim-sqs-dead-letter-targets.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-dead-letter-targets.js +62 -0
- package/dist/service/sqs/queue/sim-sqs-dead-letter-targets.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-deleted-queue-names.d.ts +20 -0
- package/dist/service/sqs/queue/sim-sqs-deleted-queue-names.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-deleted-queue-names.js +42 -0
- package/dist/service/sqs/queue/sim-sqs-deleted-queue-names.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-activity.d.ts +65 -0
- package/dist/service/sqs/queue/sim-sqs-queue-activity.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-activity.js +57 -0
- package/dist/service/sqs/queue/sim-sqs-queue-activity.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-arn.d.ts +41 -0
- package/dist/service/sqs/queue/sim-sqs-queue-arn.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-arn.js +47 -0
- package/dist/service/sqs/queue/sim-sqs-queue-arn.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-names.d.ts +27 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-names.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-names.js +83 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-names.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-numbers.d.ts +34 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-numbers.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-numbers.js +93 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-numbers.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-specs.d.ts +20 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-specs.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-specs.js +37 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attribute-specs.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attributes.d.ts +60 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attributes.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attributes.js +96 -0
- package/dist/service/sqs/queue/sim-sqs-queue-attributes.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-name.d.ts +21 -0
- package/dist/service/sqs/queue/sim-sqs-queue-name.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-name.js +47 -0
- package/dist/service/sqs/queue/sim-sqs-queue-name.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-report.d.ts +22 -0
- package/dist/service/sqs/queue/sim-sqs-queue-report.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-report.js +29 -0
- package/dist/service/sqs/queue/sim-sqs-queue-report.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-store.d.ts +60 -0
- package/dist/service/sqs/queue/sim-sqs-queue-store.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-store.js +87 -0
- package/dist/service/sqs/queue/sim-sqs-queue-store.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-url.d.ts +24 -0
- package/dist/service/sqs/queue/sim-sqs-queue-url.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue-url.js +36 -0
- package/dist/service/sqs/queue/sim-sqs-queue-url.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue.d.ts +130 -0
- package/dist/service/sqs/queue/sim-sqs-queue.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-queue.js +188 -0
- package/dist/service/sqs/queue/sim-sqs-queue.js.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-redrive-policy.d.ts +30 -0
- package/dist/service/sqs/queue/sim-sqs-redrive-policy.d.ts.map +1 -0
- package/dist/service/sqs/queue/sim-sqs-redrive-policy.js +118 -0
- package/dist/service/sqs/queue/sim-sqs-redrive-policy.js.map +1 -0
- package/dist/service/sqs/sdk/sim-sqs-sdk-command-router.d.ts +18 -0
- package/dist/service/sqs/sdk/sim-sqs-sdk-command-router.d.ts.map +1 -0
- package/dist/service/sqs/sdk/sim-sqs-sdk-command-router.js +76 -0
- package/dist/service/sqs/sdk/sim-sqs-sdk-command-router.js.map +1 -0
- package/dist/service/sqs/sim-sqs.d.ts +119 -0
- package/dist/service/sqs/sim-sqs.d.ts.map +1 -0
- package/dist/service/sqs/sim-sqs.js +213 -0
- package/dist/service/sqs/sim-sqs.js.map +1 -0
- package/package.json +6 -1
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { isRecord } from "../../../../util/type-guard/record.js";
|
|
2
|
+
/**
|
|
3
|
+
* What became of one batch handed to a function.
|
|
4
|
+
*
|
|
5
|
+
* A batch is either deleted from the queue or left on it to become visible
|
|
6
|
+
* again. Partial batch responses split it, which is the only reason this is a
|
|
7
|
+
* pair of lists rather than a yes or no.
|
|
8
|
+
*/
|
|
9
|
+
export class SimLambdaSqsBatchOutcome {
|
|
10
|
+
handled;
|
|
11
|
+
returned;
|
|
12
|
+
constructor(handled, returned) {
|
|
13
|
+
this.handled = handled;
|
|
14
|
+
this.returned = returned;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* The receipt handles of the messages to delete from the queue.
|
|
18
|
+
*/
|
|
19
|
+
get handledReceiptHandles() {
|
|
20
|
+
return this.handled.map((message) => message.ReceiptHandle);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Whether anything was left on the queue to be delivered again.
|
|
24
|
+
*/
|
|
25
|
+
get hasReturnedMessages() {
|
|
26
|
+
return this.returned.length > 0;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Reads what a function said about the batch it was given.
|
|
31
|
+
*
|
|
32
|
+
* A function that returns normally has handled the whole batch, unless the
|
|
33
|
+
* mapping was told to expect a batch item failure report and the function sent
|
|
34
|
+
* one. A report naming an id that was not in the batch returns the whole batch,
|
|
35
|
+
* as on real Lambda: the alternative is to guess which messages the function
|
|
36
|
+
* meant, and guessing wrong loses a message.
|
|
37
|
+
*/
|
|
38
|
+
export class SimLambdaSqsBatchResponse {
|
|
39
|
+
reportsBatchItemFailures;
|
|
40
|
+
constructor(reportsBatchItemFailures) {
|
|
41
|
+
this.reportsBatchItemFailures = reportsBatchItemFailures;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* What became of a batch the function returned from.
|
|
45
|
+
*/
|
|
46
|
+
handled(messages, result) {
|
|
47
|
+
const failedIds = this.reportedFailureIds(result);
|
|
48
|
+
if (failedIds === undefined) {
|
|
49
|
+
return new SimLambdaSqsBatchOutcome(messages, []);
|
|
50
|
+
}
|
|
51
|
+
if (!this.namesBatchMessages(failedIds, messages)) {
|
|
52
|
+
return this.failed(messages);
|
|
53
|
+
}
|
|
54
|
+
return new SimLambdaSqsBatchOutcome(messages.filter((message) => !failedIds.includes(message.MessageId)), messages.filter((message) => failedIds.includes(message.MessageId)));
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* What becomes of a batch the function threw on: the whole of it goes back.
|
|
58
|
+
*/
|
|
59
|
+
failed(messages) {
|
|
60
|
+
return new SimLambdaSqsBatchOutcome([], messages);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* The message ids a batch item failure report names, or undefined when the
|
|
64
|
+
* function reported none.
|
|
65
|
+
*/
|
|
66
|
+
reportedFailureIds(result) {
|
|
67
|
+
if (!this.reportsBatchItemFailures || !isRecord(result)) {
|
|
68
|
+
return undefined;
|
|
69
|
+
}
|
|
70
|
+
const reported = result["batchItemFailures"];
|
|
71
|
+
if (!Array.isArray(reported) || reported.length === 0) {
|
|
72
|
+
return undefined;
|
|
73
|
+
}
|
|
74
|
+
return reported.map((failure) => itemIdentifier(failure));
|
|
75
|
+
}
|
|
76
|
+
namesBatchMessages(failedIds, messages) {
|
|
77
|
+
return failedIds.every((failedId) => messages.some((message) => message.MessageId === failedId));
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* The message id one reported failure names.
|
|
82
|
+
*
|
|
83
|
+
* An entry naming nothing is reported as an empty id, which no message has, so
|
|
84
|
+
* the whole batch goes back. That is what real Lambda does with a malformed
|
|
85
|
+
* report rather than dropping the entry.
|
|
86
|
+
*/
|
|
87
|
+
function itemIdentifier(failure) {
|
|
88
|
+
if (!isRecord(failure)) {
|
|
89
|
+
return "";
|
|
90
|
+
}
|
|
91
|
+
const identifier = failure["itemIdentifier"];
|
|
92
|
+
if (typeof identifier !== "string") {
|
|
93
|
+
return "";
|
|
94
|
+
}
|
|
95
|
+
return identifier;
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=sim-lambda-sqs-batch-response.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-lambda-sqs-batch-response.js","sourceRoot":"","sources":["../../../../../src/service/lambda/event-source/poll/sim-lambda-sqs-batch-response.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { SimLambdaEventSourceMessage } from "../queue/sim-lambda-event-source-queues.js";
|
|
2
|
+
import type { SimLambdaSqsEventSourceArn } from "../queue/sim-lambda-sqs-event-source-arn.js";
|
|
3
|
+
/**
|
|
4
|
+
* One message attribute as an SQS event record carries it.
|
|
5
|
+
*
|
|
6
|
+
* The list values are always there and always empty, as they are on real AWS:
|
|
7
|
+
* SQS accepts the list data types in a request and reports nothing for them.
|
|
8
|
+
*/
|
|
9
|
+
export interface SimLambdaSqsEventMessageAttribute {
|
|
10
|
+
readonly stringValue?: string | undefined;
|
|
11
|
+
readonly binaryValue?: string | undefined;
|
|
12
|
+
readonly stringListValues: readonly string[];
|
|
13
|
+
readonly binaryListValues: readonly string[];
|
|
14
|
+
readonly dataType: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* One message as an SQS event record.
|
|
18
|
+
*
|
|
19
|
+
* https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html
|
|
20
|
+
*/
|
|
21
|
+
export interface SimLambdaSqsEventRecord {
|
|
22
|
+
readonly messageId: string;
|
|
23
|
+
readonly receiptHandle: string;
|
|
24
|
+
readonly body: string;
|
|
25
|
+
readonly attributes: Record<string, string>;
|
|
26
|
+
readonly messageAttributes: Record<string, SimLambdaSqsEventMessageAttribute>;
|
|
27
|
+
readonly md5OfBody: string;
|
|
28
|
+
readonly eventSource: "aws:sqs";
|
|
29
|
+
readonly eventSourceARN: string;
|
|
30
|
+
readonly awsRegion: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* The event an SQS event source mapping invokes a function with.
|
|
34
|
+
*/
|
|
35
|
+
export interface SimLambdaSqsEvent {
|
|
36
|
+
readonly Records: readonly SimLambdaSqsEventRecord[];
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Builds the SQS event for one batch of polled messages.
|
|
40
|
+
*
|
|
41
|
+
* The event is what the function code sees, so it is built in the event's own
|
|
42
|
+
* naming rather than the queue's: lower-case record fields, the message system
|
|
43
|
+
* attributes flattened into `attributes`, and binary attribute values base64
|
|
44
|
+
* encoded as they cross into JSON.
|
|
45
|
+
*/
|
|
46
|
+
export declare class SimLambdaSqsEventBuilder {
|
|
47
|
+
private readonly eventSourceArn;
|
|
48
|
+
constructor(eventSourceArn: SimLambdaSqsEventSourceArn);
|
|
49
|
+
/**
|
|
50
|
+
* The event for a batch of messages.
|
|
51
|
+
*/
|
|
52
|
+
of(messages: readonly SimLambdaEventSourceMessage[]): SimLambdaSqsEvent;
|
|
53
|
+
private record;
|
|
54
|
+
private messageAttributes;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=sim-lambda-sqs-event.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-lambda-sqs-event.d.ts","sourceRoot":"","sources":["../../../../../src/service/lambda/event-source/poll/sim-lambda-sqs-event.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAE5B,MAAM,4CAA4C,CAAC;AACpD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AAE9F;;;;;GAKG;AACH,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,iCAAiC,CAAC,CAAC;IAC9E,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,OAAO,EAAE,SAAS,uBAAuB,EAAE,CAAC;CACtD;AAED;;;;;;;GAOG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6B;IAE5D,YAAY,cAAc,EAAE,0BAA0B,EAErD;IAED;;OAEG;IACH,EAAE,CAAC,QAAQ,EAAE,SAAS,2BAA2B,EAAE,GAAG,iBAAiB,CAEtE;IAED,OAAO,CAAC,MAAM;IAgBd,OAAO,CAAC,iBAAiB;CAU1B"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builds the SQS event for one batch of polled messages.
|
|
3
|
+
*
|
|
4
|
+
* The event is what the function code sees, so it is built in the event's own
|
|
5
|
+
* naming rather than the queue's: lower-case record fields, the message system
|
|
6
|
+
* attributes flattened into `attributes`, and binary attribute values base64
|
|
7
|
+
* encoded as they cross into JSON.
|
|
8
|
+
*/
|
|
9
|
+
export class SimLambdaSqsEventBuilder {
|
|
10
|
+
eventSourceArn;
|
|
11
|
+
constructor(eventSourceArn) {
|
|
12
|
+
this.eventSourceArn = eventSourceArn;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* The event for a batch of messages.
|
|
16
|
+
*/
|
|
17
|
+
of(messages) {
|
|
18
|
+
return { Records: messages.map((message) => this.record(message)) };
|
|
19
|
+
}
|
|
20
|
+
record(message) {
|
|
21
|
+
return {
|
|
22
|
+
messageId: message.MessageId,
|
|
23
|
+
receiptHandle: message.ReceiptHandle,
|
|
24
|
+
body: message.Body,
|
|
25
|
+
attributes: { ...message.Attributes },
|
|
26
|
+
messageAttributes: this.messageAttributes(message),
|
|
27
|
+
md5OfBody: message.MD5OfBody,
|
|
28
|
+
eventSource: "aws:sqs",
|
|
29
|
+
eventSourceARN: this.eventSourceArn.value,
|
|
30
|
+
awsRegion: this.eventSourceArn.regionName,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
messageAttributes(message) {
|
|
34
|
+
return Object.fromEntries(Object.entries(message.MessageAttributes ?? {}).map(([name, value]) => [
|
|
35
|
+
name,
|
|
36
|
+
eventMessageAttribute(value),
|
|
37
|
+
]));
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
function eventMessageAttribute(attribute) {
|
|
41
|
+
return {
|
|
42
|
+
stringValue: attribute.StringValue,
|
|
43
|
+
binaryValue: base64Of(attribute.BinaryValue),
|
|
44
|
+
stringListValues: [],
|
|
45
|
+
binaryListValues: [],
|
|
46
|
+
dataType: attribute.DataType ?? "String",
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
function base64Of(value) {
|
|
50
|
+
if (value === undefined) {
|
|
51
|
+
return undefined;
|
|
52
|
+
}
|
|
53
|
+
return Buffer.from(value).toString("base64");
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=sim-lambda-sqs-event.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-lambda-sqs-event.js","sourceRoot":"","sources":["../../../../../src/service/lambda/event-source/poll/sim-lambda-sqs-event.ts"],"names":[],"mappings":"AA4CA;;;;;;;GAOG;AACH,MAAM,OAAO,wBAAwB;IAClB,cAAc,CAA6B;IAE5D,YAAY,cAA0C;QACpD,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,EAAE,CAAC,QAAgD;QACjD,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;IACtE,CAAC;IAEO,MAAM,CACZ,OAAoC;QAEpC,OAAO;YACL,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE;YACrC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;YAClD,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,WAAW,EAAE,SAAS;YACtB,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK;YACzC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,UAAU;SAC1C,CAAC;IACJ,CAAC;IAEO,iBAAiB,CACvB,OAAoC;QAEpC,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;YACrE,IAAI;YACJ,qBAAqB,CAAC,KAAK,CAAC;SAC7B,CAAC,CACH,CAAC;IACJ,CAAC;CACF;AAED,SAAS,qBAAqB,CAC5B,SAA+C;IAE/C,OAAO;QACL,WAAW,EAAE,SAAS,CAAC,WAAW;QAClC,WAAW,EAAE,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC;QAC5C,gBAAgB,EAAE,EAAE;QACpB,gBAAgB,EAAE,EAAE;QACpB,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,QAAQ;KACzC,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAA6B;IAC7C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAC/C,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
|
|
2
|
+
import type { SimLambdaEventSourceMessage, SimLambdaEventSourceQueueWatcher } from "./sim-lambda-event-source-queues.js";
|
|
3
|
+
interface QueueCommandOptions {
|
|
4
|
+
readonly caller: SimAwsCaller;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* The narrow slice of simulated SQS that event source polling needs.
|
|
8
|
+
* SimSqs structurally implements this interface.
|
|
9
|
+
*/
|
|
10
|
+
export interface SimLambdaEventSourceQueueService {
|
|
11
|
+
getQueueAttributes(command: {
|
|
12
|
+
input: {
|
|
13
|
+
QueueUrl: string;
|
|
14
|
+
AttributeNames: readonly string[];
|
|
15
|
+
};
|
|
16
|
+
}, options?: QueueCommandOptions): Promise<{
|
|
17
|
+
Attributes?: Record<string, string> | undefined;
|
|
18
|
+
}>;
|
|
19
|
+
receiveMessage(command: {
|
|
20
|
+
input: {
|
|
21
|
+
QueueUrl: string;
|
|
22
|
+
MaxNumberOfMessages: number;
|
|
23
|
+
MessageSystemAttributeNames: readonly string[];
|
|
24
|
+
MessageAttributeNames: readonly string[];
|
|
25
|
+
};
|
|
26
|
+
}, options?: QueueCommandOptions): Promise<{
|
|
27
|
+
Messages?: readonly SimLambdaEventSourceMessage[] | undefined;
|
|
28
|
+
}>;
|
|
29
|
+
deleteMessageBatch(command: {
|
|
30
|
+
input: {
|
|
31
|
+
QueueUrl: string;
|
|
32
|
+
Entries: readonly {
|
|
33
|
+
Id: string;
|
|
34
|
+
ReceiptHandle: string;
|
|
35
|
+
}[];
|
|
36
|
+
};
|
|
37
|
+
}, options?: QueueCommandOptions): Promise<unknown>;
|
|
38
|
+
queueActivity(): SimLambdaEventSourceQueueActivity;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* The part of simulated SQS that says when a message has arrived on a queue.
|
|
42
|
+
*/
|
|
43
|
+
export interface SimLambdaEventSourceQueueActivity {
|
|
44
|
+
nextAvailability(queueArn: string): Date | undefined;
|
|
45
|
+
watch(queueArn: string, watcher: SimLambdaEventSourceQueueWatcher): void;
|
|
46
|
+
unwatch(queueArn: string, watcher: SimLambdaEventSourceQueueWatcher): void;
|
|
47
|
+
}
|
|
48
|
+
export {};
|
|
49
|
+
//# sourceMappingURL=sim-lambda-event-source-queue-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-lambda-event-source-queue-service.d.ts","sourceRoot":"","sources":["../../../../../src/service/lambda/event-source/queue/sim-lambda-event-source-queue-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EACV,2BAA2B,EAC3B,gCAAgC,EACjC,MAAM,qCAAqC,CAAC;AAE7C,UAAU,mBAAmB;IAC3B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;CAC/B;AAED;;;GAGG;AACH,MAAM,WAAW,gCAAgC;IAC/C,kBAAkB,CAChB,OAAO,EAAE;QACP,KAAK,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAA;SAAE,CAAC;KAChE,EACD,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC;IAEhE,cAAc,CACZ,OAAO,EAAE;QACP,KAAK,EAAE;YACL,QAAQ,EAAE,MAAM,CAAC;YACjB,mBAAmB,EAAE,MAAM,CAAC;YAC5B,2BAA2B,EAAE,SAAS,MAAM,EAAE,CAAC;YAC/C,qBAAqB,EAAE,SAAS,MAAM,EAAE,CAAC;SAC1C,CAAC;KACH,EACD,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC;QAAE,QAAQ,CAAC,EAAE,SAAS,2BAA2B,EAAE,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC;IAE9E,kBAAkB,CAChB,OAAO,EAAE;QACP,KAAK,EAAE;YACL,QAAQ,EAAE,MAAM,CAAC;YACjB,OAAO,EAAE,SAAS;gBAAE,EAAE,EAAE,MAAM,CAAC;gBAAC,aAAa,EAAE,MAAM,CAAA;aAAE,EAAE,CAAC;SAC3D,CAAC;KACH,EACD,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpB,aAAa,IAAI,iCAAiC,CAAC;CACpD;AAED;;GAEG;AACH,MAAM,WAAW,iCAAiC;IAChD,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACrD,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,gCAAgC,GAAG,IAAI,CAAC;IACzE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,gCAAgC,GAAG,IAAI,CAAC;CAC5E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-lambda-event-source-queue-service.js","sourceRoot":"","sources":["../../../../../src/service/lambda/event-source/queue/sim-lambda-event-source-queue-service.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
|
|
2
|
+
/**
|
|
3
|
+
* One message attribute as a queue reports it.
|
|
4
|
+
*/
|
|
5
|
+
export interface SimLambdaEventSourceMessageAttribute {
|
|
6
|
+
readonly DataType?: string | undefined;
|
|
7
|
+
readonly StringValue?: string | undefined;
|
|
8
|
+
readonly BinaryValue?: Uint8Array | undefined;
|
|
9
|
+
readonly StringListValues?: readonly string[] | undefined;
|
|
10
|
+
readonly BinaryListValues?: readonly Uint8Array[] | undefined;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* One message as a queue hands it to a poller.
|
|
14
|
+
*
|
|
15
|
+
* These are the queue's own field names rather than the event's: what the
|
|
16
|
+
* poller receives is a message, and turning it into an SQS event record is the
|
|
17
|
+
* event builder's job.
|
|
18
|
+
*/
|
|
19
|
+
export interface SimLambdaEventSourceMessage {
|
|
20
|
+
readonly MessageId: string;
|
|
21
|
+
readonly ReceiptHandle: string;
|
|
22
|
+
readonly MD5OfBody: string;
|
|
23
|
+
readonly Body: string;
|
|
24
|
+
readonly Attributes?: Record<string, string> | undefined;
|
|
25
|
+
readonly MessageAttributes?: Record<string, SimLambdaEventSourceMessageAttribute> | undefined;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* A poller's request to the queue it polls, made as the function's execution
|
|
29
|
+
* role so simulated IAM applies to it as it does on real Lambda.
|
|
30
|
+
*/
|
|
31
|
+
export interface SimLambdaEventSourceQueueRequest {
|
|
32
|
+
readonly queueArn: string;
|
|
33
|
+
readonly caller: SimAwsCaller;
|
|
34
|
+
}
|
|
35
|
+
export interface SimLambdaEventSourceReceiveRequest extends SimLambdaEventSourceQueueRequest {
|
|
36
|
+
readonly batchSize: number;
|
|
37
|
+
}
|
|
38
|
+
export interface SimLambdaEventSourceDeleteRequest extends SimLambdaEventSourceQueueRequest {
|
|
39
|
+
readonly receiptHandles: readonly string[];
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Something watching a queue on a poller's behalf.
|
|
43
|
+
*/
|
|
44
|
+
export interface SimLambdaEventSourceQueueWatcher {
|
|
45
|
+
messageAvailable(availableFrom: Date): void;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* The queues a simulated Lambda event source mapping polls.
|
|
49
|
+
*
|
|
50
|
+
* This is the narrow slice of simulated SQS that polling needs, kept as an
|
|
51
|
+
* interface so Lambda depends on what it does with a queue rather than on the
|
|
52
|
+
* SQS service object. Every operation carries the caller, because polling on
|
|
53
|
+
* real Lambda is done with the function's execution role and is refused when
|
|
54
|
+
* that role has no permission for it.
|
|
55
|
+
*/
|
|
56
|
+
export interface SimLambdaEventSourceQueues {
|
|
57
|
+
/**
|
|
58
|
+
* How long a received message stays hidden, and by asking, whether the queue
|
|
59
|
+
* is there to be polled at all.
|
|
60
|
+
*/
|
|
61
|
+
visibilityTimeoutSeconds(request: SimLambdaEventSourceQueueRequest): Promise<number>;
|
|
62
|
+
/**
|
|
63
|
+
* Take up to a batch of messages off the queue.
|
|
64
|
+
*/
|
|
65
|
+
receive(request: SimLambdaEventSourceReceiveRequest): Promise<readonly SimLambdaEventSourceMessage[]>;
|
|
66
|
+
/**
|
|
67
|
+
* Delete the messages a batch has been handled successfully.
|
|
68
|
+
*/
|
|
69
|
+
deleteMessages(request: SimLambdaEventSourceDeleteRequest): Promise<void>;
|
|
70
|
+
/**
|
|
71
|
+
* When the earliest message the queue cannot hand out yet becomes
|
|
72
|
+
* receivable, or nothing when it holds no such message.
|
|
73
|
+
*
|
|
74
|
+
* A poll that found nothing asks this, because a queue whose messages are all
|
|
75
|
+
* in flight or delayed has nothing to announce when they come back.
|
|
76
|
+
*/
|
|
77
|
+
nextAvailability(queueArn: string): Date | undefined;
|
|
78
|
+
/**
|
|
79
|
+
* Watch a queue for messages arriving on it.
|
|
80
|
+
*/
|
|
81
|
+
watch(queueArn: string, watcher: SimLambdaEventSourceQueueWatcher): void;
|
|
82
|
+
/**
|
|
83
|
+
* Stop watching a queue.
|
|
84
|
+
*/
|
|
85
|
+
unwatch(queueArn: string, watcher: SimLambdaEventSourceQueueWatcher): void;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Event source queues used when no simulated SQS is wired up, such as for a
|
|
89
|
+
* standalone SimLambda constructed outside SimAws.
|
|
90
|
+
*/
|
|
91
|
+
export declare class SimLambdaNoEventSourceQueues implements SimLambdaEventSourceQueues {
|
|
92
|
+
/**
|
|
93
|
+
* Refuse to look at a queue, explaining how to reach one.
|
|
94
|
+
*/
|
|
95
|
+
visibilityTimeoutSeconds(request: SimLambdaEventSourceQueueRequest): Promise<number>;
|
|
96
|
+
/**
|
|
97
|
+
* Refuse to poll, explaining how to reach a queue.
|
|
98
|
+
*/
|
|
99
|
+
receive(request: SimLambdaEventSourceReceiveRequest): Promise<readonly SimLambdaEventSourceMessage[]>;
|
|
100
|
+
/**
|
|
101
|
+
* Refuse to delete, explaining how to reach a queue.
|
|
102
|
+
*/
|
|
103
|
+
deleteMessages(request: SimLambdaEventSourceDeleteRequest): Promise<void>;
|
|
104
|
+
/**
|
|
105
|
+
* Answer with nothing: there is no queue to look at.
|
|
106
|
+
*/
|
|
107
|
+
nextAvailability(): Date | undefined;
|
|
108
|
+
/**
|
|
109
|
+
* Watch nothing: there is no queue to watch.
|
|
110
|
+
*/
|
|
111
|
+
watch(): void;
|
|
112
|
+
/**
|
|
113
|
+
* Stop watching nothing.
|
|
114
|
+
*/
|
|
115
|
+
unwatch(): void;
|
|
116
|
+
private noQueues;
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=sim-lambda-event-source-queues.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-lambda-event-source-queues.d.ts","sourceRoot":"","sources":["../../../../../src/service/lambda/event-source/queue/sim-lambda-event-source-queues.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { SimLambdaError } from "../../error/sim-lambda.error.js";
|
|
2
|
+
/**
|
|
3
|
+
* Event source queues used when no simulated SQS is wired up, such as for a
|
|
4
|
+
* standalone SimLambda constructed outside SimAws.
|
|
5
|
+
*/
|
|
6
|
+
export class SimLambdaNoEventSourceQueues {
|
|
7
|
+
/**
|
|
8
|
+
* Refuse to look at a queue, explaining how to reach one.
|
|
9
|
+
*/
|
|
10
|
+
visibilityTimeoutSeconds(request) {
|
|
11
|
+
return Promise.reject(this.noQueues(request.queueArn));
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Refuse to poll, explaining how to reach a queue.
|
|
15
|
+
*/
|
|
16
|
+
receive(request) {
|
|
17
|
+
return Promise.reject(this.noQueues(request.queueArn));
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Refuse to delete, explaining how to reach a queue.
|
|
21
|
+
*/
|
|
22
|
+
deleteMessages(request) {
|
|
23
|
+
return Promise.reject(this.noQueues(request.queueArn));
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Answer with nothing: there is no queue to look at.
|
|
27
|
+
*/
|
|
28
|
+
nextAvailability() {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Watch nothing: there is no queue to watch.
|
|
33
|
+
*/
|
|
34
|
+
watch() {
|
|
35
|
+
//
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Stop watching nothing.
|
|
39
|
+
*/
|
|
40
|
+
unwatch() {
|
|
41
|
+
//
|
|
42
|
+
}
|
|
43
|
+
noQueues(queueArn) {
|
|
44
|
+
return new SimLambdaError(`Cannot poll ${queueArn}: this SimLambda has no simulated SQS to poll. ` +
|
|
45
|
+
"Create the event source mapping through SimAws, or construct " +
|
|
46
|
+
"SimLambda with eventSourceQueues.");
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=sim-lambda-event-source-queues.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-lambda-event-source-queues.js","sourceRoot":"","sources":["../../../../../src/service/lambda/event-source/queue/sim-lambda-event-source-queues.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAwGjE;;;GAGG;AACH,MAAM,OAAO,4BAA4B;IACvC;;OAEG;IACH,wBAAwB,CACtB,OAAyC;QAEzC,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,OAAO,CACL,OAA2C;QAE3C,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,OAA0C;QACvD,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO;IACT,CAAC;IAED;;OAEG;IACH,KAAK;QACH,EAAE;IACJ,CAAC;IAED;;OAEG;IACH,OAAO;QACL,EAAE;IACJ,CAAC;IAEO,QAAQ,CAAC,QAAgB;QAC/B,OAAO,IAAI,cAAc,CACvB,eAAe,QAAQ,iDAAiD;YACtE,+DAA+D;YAC/D,mCAAmC,CACtC,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The queue ARN an event source mapping is created for.
|
|
3
|
+
*
|
|
4
|
+
* A queue ARN has no resource type separator in it, so it is parsed here rather
|
|
5
|
+
* than by the shared ARN reader. Both halves of what a poller needs come out of
|
|
6
|
+
* it: the URL requests name the queue by, and the Region the event records
|
|
7
|
+
* report.
|
|
8
|
+
*/
|
|
9
|
+
export declare class SimLambdaSqsEventSourceArn {
|
|
10
|
+
readonly value: string;
|
|
11
|
+
readonly regionName: string;
|
|
12
|
+
readonly accountId: string;
|
|
13
|
+
readonly queueName: string;
|
|
14
|
+
private constructor();
|
|
15
|
+
/**
|
|
16
|
+
* Read an event source ARN, refusing one that names no simulated event
|
|
17
|
+
* source.
|
|
18
|
+
*
|
|
19
|
+
* SQS queues are the only event source this simulation polls, so an ARN for
|
|
20
|
+
* any other one is refused rather than accepted and never delivered from.
|
|
21
|
+
*/
|
|
22
|
+
static of(eventSourceArn: string): SimLambdaSqsEventSourceArn;
|
|
23
|
+
/**
|
|
24
|
+
* The URL SQS requests name this queue by.
|
|
25
|
+
*/
|
|
26
|
+
get queueUrl(): string;
|
|
27
|
+
/**
|
|
28
|
+
* Whether this queue is in an Account and Region.
|
|
29
|
+
*/
|
|
30
|
+
isIn(accountId: string, regionName: string): boolean;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=sim-lambda-sqs-event-source-arn.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-lambda-sqs-event-source-arn.d.ts","sourceRoot":"","sources":["../../../../../src/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.ts"],"names":[],"mappings":"AAKA;;;;;;;GAOG;AACH,qBAAa,0BAA0B;IACrC,SAAgB,KAAK,EAAE,MAAM,CAAC;IAC9B,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,SAAS,EAAE,MAAM,CAAC;IAElC,OAAO,eAKN;IAED;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,GAAG,0BAA0B,CAY5D;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAKrB;IAED;;OAEG;IACH,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAEnD;CACF"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { SimLambdaInvalidParameterValueException } from "../../error/sim-lambda.error.js";
|
|
2
|
+
const queueArnPattern = /^arn:aws:sqs:(?<region>[a-z0-9-]+):(?<account>\d{12}):(?<name>[\w-]{1,80})$/u;
|
|
3
|
+
/**
|
|
4
|
+
* The queue ARN an event source mapping is created for.
|
|
5
|
+
*
|
|
6
|
+
* A queue ARN has no resource type separator in it, so it is parsed here rather
|
|
7
|
+
* than by the shared ARN reader. Both halves of what a poller needs come out of
|
|
8
|
+
* it: the URL requests name the queue by, and the Region the event records
|
|
9
|
+
* report.
|
|
10
|
+
*/
|
|
11
|
+
export class SimLambdaSqsEventSourceArn {
|
|
12
|
+
value;
|
|
13
|
+
regionName;
|
|
14
|
+
accountId;
|
|
15
|
+
queueName;
|
|
16
|
+
constructor(value, parts) {
|
|
17
|
+
this.value = value;
|
|
18
|
+
this.regionName = parts["region"] ?? "";
|
|
19
|
+
this.accountId = parts["account"] ?? "";
|
|
20
|
+
this.queueName = parts["name"] ?? "";
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Read an event source ARN, refusing one that names no simulated event
|
|
24
|
+
* source.
|
|
25
|
+
*
|
|
26
|
+
* SQS queues are the only event source this simulation polls, so an ARN for
|
|
27
|
+
* any other one is refused rather than accepted and never delivered from.
|
|
28
|
+
*/
|
|
29
|
+
static of(eventSourceArn) {
|
|
30
|
+
const parts = queueArnPattern.exec(eventSourceArn)?.groups;
|
|
31
|
+
if (parts === undefined) {
|
|
32
|
+
throw new SimLambdaInvalidParameterValueException(`EventSourceArn ${eventSourceArn} is not an SQS queue ARN. SQS queues ` +
|
|
33
|
+
"are the only simulated Lambda event source, and a queue ARN is " +
|
|
34
|
+
"arn:aws:sqs:<region>:<account-id>:<queue-name>");
|
|
35
|
+
}
|
|
36
|
+
return new this(eventSourceArn, parts);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* The URL SQS requests name this queue by.
|
|
40
|
+
*/
|
|
41
|
+
get queueUrl() {
|
|
42
|
+
return (`https://sqs.${this.regionName}.amazonaws.com/` +
|
|
43
|
+
`${this.accountId}/${this.queueName}`);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Whether this queue is in an Account and Region.
|
|
47
|
+
*/
|
|
48
|
+
isIn(accountId, regionName) {
|
|
49
|
+
return this.accountId === accountId && this.regionName === regionName;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=sim-lambda-sqs-event-source-arn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-lambda-sqs-event-source-arn.js","sourceRoot":"","sources":["../../../../../src/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uCAAuC,EAAE,MAAM,iCAAiC,CAAC;AAE1F,MAAM,eAAe,GACnB,8EAA8E,CAAC;AAEjF;;;;;;;GAOG;AACH,MAAM,OAAO,0BAA0B;IACrB,KAAK,CAAS;IACd,UAAU,CAAS;IACnB,SAAS,CAAS;IAClB,SAAS,CAAS;IAElC,YAAoB,KAAa,EAAE,KAA6B;QAC9D,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IACvC,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,CAAC,cAAsB;QAC9B,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;QAE3D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,uCAAuC,CAC/C,kBAAkB,cAAc,uCAAuC;gBACrE,iEAAiE;gBACjE,gDAAgD,CACnD,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,OAAO,CACL,eAAe,IAAI,CAAC,UAAU,iBAAiB;YAC/C,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,EAAE,CACtC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,SAAiB,EAAE,UAAkB;QACxC,OAAO,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC;IACxE,CAAC;CACF"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { SimLambdaEventSourceQueueRequest } from "./sim-lambda-event-source-queues.js";
|
|
2
|
+
import type { SimLambdaEventSourceQueueService } from "./sim-lambda-event-source-queue-service.js";
|
|
3
|
+
interface SimSqsEventSourceQueueAttributesProperties {
|
|
4
|
+
readonly sqs: SimLambdaEventSourceQueueService;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* What a poller reads about the queue it polls.
|
|
8
|
+
*
|
|
9
|
+
* Only the visibility timeout, which is how long a returned batch stays hidden
|
|
10
|
+
* before it is delivered again. Asking for it is also how a mapping finds out
|
|
11
|
+
* the queue is there at all, which is why real Lambda wants
|
|
12
|
+
* `sqs:GetQueueAttributes` on a queue it is asked to poll.
|
|
13
|
+
*/
|
|
14
|
+
export declare class SimSqsEventSourceQueueAttributes {
|
|
15
|
+
private readonly sqs;
|
|
16
|
+
constructor(properties: SimSqsEventSourceQueueAttributesProperties);
|
|
17
|
+
/**
|
|
18
|
+
* How long a received message stays hidden, as the queue reports it.
|
|
19
|
+
*/
|
|
20
|
+
visibilityTimeoutSeconds(request: SimLambdaEventSourceQueueRequest): Promise<number>;
|
|
21
|
+
/**
|
|
22
|
+
* Read a queue's attributes as the execution role, reporting a queue that is
|
|
23
|
+
* not there the way real Lambda reports an event source it cannot reach.
|
|
24
|
+
*/
|
|
25
|
+
private read;
|
|
26
|
+
private queueLookupError;
|
|
27
|
+
}
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=sim-sqs-event-source-queue-attributes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-event-source-queue-attributes.d.ts","sourceRoot":"","sources":["../../../../../src/service/lambda/event-source/queue/sim-sqs-event-source-queue-attributes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,qCAAqC,CAAC;AAC5F,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,4CAA4C,CAAC;AAKnG,UAAU,0CAA0C;IAClD,QAAQ,CAAC,GAAG,EAAE,gCAAgC,CAAC;CAChD;AAED;;;;;;;GAOG;AACH,qBAAa,gCAAgC;IAC3C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAmC;IAEvD,YAAY,UAAU,EAAE,0CAA0C,EAEjE;IAED;;OAEG;IACG,wBAAwB,CAC5B,OAAO,EAAE,gCAAgC,GACxC,OAAO,CAAC,MAAM,CAAC,CAMjB;IAED;;;OAGG;YACW,IAAI;IAoBlB,OAAO,CAAC,gBAAgB;CAUzB"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { SimLambdaInvalidParameterValueException } from "../../error/sim-lambda.error.js";
|
|
2
|
+
import { SimLambdaSqsEventSourceArn } from "./sim-lambda-sqs-event-source-arn.js";
|
|
3
|
+
const defaultVisibilityTimeoutSeconds = 30;
|
|
4
|
+
/**
|
|
5
|
+
* What a poller reads about the queue it polls.
|
|
6
|
+
*
|
|
7
|
+
* Only the visibility timeout, which is how long a returned batch stays hidden
|
|
8
|
+
* before it is delivered again. Asking for it is also how a mapping finds out
|
|
9
|
+
* the queue is there at all, which is why real Lambda wants
|
|
10
|
+
* `sqs:GetQueueAttributes` on a queue it is asked to poll.
|
|
11
|
+
*/
|
|
12
|
+
export class SimSqsEventSourceQueueAttributes {
|
|
13
|
+
sqs;
|
|
14
|
+
constructor(properties) {
|
|
15
|
+
this.sqs = properties.sqs;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* How long a received message stays hidden, as the queue reports it.
|
|
19
|
+
*/
|
|
20
|
+
async visibilityTimeoutSeconds(request) {
|
|
21
|
+
const attributes = await this.read(request);
|
|
22
|
+
return Number(attributes["VisibilityTimeout"] ?? defaultVisibilityTimeoutSeconds);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Read a queue's attributes as the execution role, reporting a queue that is
|
|
26
|
+
* not there the way real Lambda reports an event source it cannot reach.
|
|
27
|
+
*/
|
|
28
|
+
async read(request) {
|
|
29
|
+
try {
|
|
30
|
+
const output = await this.sqs.getQueueAttributes({
|
|
31
|
+
input: {
|
|
32
|
+
QueueUrl: SimLambdaSqsEventSourceArn.of(request.queueArn).queueUrl,
|
|
33
|
+
AttributeNames: ["VisibilityTimeout"],
|
|
34
|
+
},
|
|
35
|
+
}, { caller: request.caller });
|
|
36
|
+
return output.Attributes ?? {};
|
|
37
|
+
}
|
|
38
|
+
catch (error) {
|
|
39
|
+
throw this.queueLookupError(error, request.queueArn);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
queueLookupError(error, queueArn) {
|
|
43
|
+
if (error instanceof Error && error.name === "QueueDoesNotExist") {
|
|
44
|
+
return new SimLambdaInvalidParameterValueException(`The event source ${queueArn} does not exist`, { cause: error });
|
|
45
|
+
}
|
|
46
|
+
return error;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=sim-sqs-event-source-queue-attributes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sqs-event-source-queue-attributes.js","sourceRoot":"","sources":["../../../../../src/service/lambda/event-source/queue/sim-sqs-event-source-queue-attributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uCAAuC,EAAE,MAAM,iCAAiC,CAAC;AAG1F,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAElF,MAAM,+BAA+B,GAAG,EAAE,CAAC;AAM3C;;;;;;;GAOG;AACH,MAAM,OAAO,gCAAgC;IAC1B,GAAG,CAAmC;IAEvD,YAAY,UAAsD;QAChE,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,wBAAwB,CAC5B,OAAyC;QAEzC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5C,OAAO,MAAM,CACX,UAAU,CAAC,mBAAmB,CAAC,IAAI,+BAA+B,CACnE,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,IAAI,CAChB,OAAyC;QAEzC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAC9C;gBACE,KAAK,EAAE;oBACL,QAAQ,EAAE,0BAA0B,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ;oBAClE,cAAc,EAAE,CAAC,mBAAmB,CAAC;iBACtC;aACF,EACD,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAC3B,CAAC;YAEF,OAAO,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAEO,gBAAgB,CAAC,KAAc,EAAE,QAAgB;QACvD,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACjE,OAAO,IAAI,uCAAuC,CAChD,oBAAoB,QAAQ,iBAAiB,EAC7C,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;QACJ,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
|