@kensio/yulin 1.21.3 → 1.21.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/service/athena/engine/sim-athena-column-types.d.ts +2 -0
- package/dist/service/athena/engine/sim-athena-column-types.js +4 -0
- package/dist/service/athena/engine/sim-athena-delimited-format.d.ts +7 -0
- package/dist/service/athena/engine/sim-athena-delimited-format.js +51 -0
- package/dist/service/athena/engine/sim-athena-engine-result.js +5 -0
- package/dist/service/athena/engine/sim-athena-engine-run.d.ts +22 -2
- package/dist/service/athena/engine/sim-athena-engine-run.js +21 -31
- package/dist/service/athena/engine/sim-athena-loaded-tables.d.ts +10 -0
- package/dist/service/athena/engine/sim-athena-loaded-tables.js +35 -0
- package/dist/service/athena/engine/sim-athena-parquet-module.d.ts +25 -0
- package/dist/service/athena/engine/sim-athena-parquet-module.js +39 -0
- package/dist/service/athena/engine/sim-athena-parquet-records.d.ts +13 -0
- package/dist/service/athena/engine/sim-athena-parquet-records.js +57 -0
- package/dist/service/athena/engine/sim-athena-query-engine.d.ts +23 -5
- package/dist/service/athena/engine/sim-athena-query-engine.js +31 -10
- package/dist/service/athena/engine/sim-athena-record-reader.d.ts +12 -6
- package/dist/service/athena/engine/sim-athena-record-reader.js +28 -53
- package/dist/service/athena/engine/sim-athena-sql-translation.d.ts +15 -9
- package/dist/service/athena/engine/sim-athena-sql-translation.js +25 -13
- package/dist/service/athena/engine/sim-athena-sqlite-values.d.ts +5 -0
- package/dist/service/athena/engine/sim-athena-sqlite-values.js +24 -1
- package/dist/service/athena/engine/sim-athena-table-objects.d.ts +7 -2
- package/dist/service/athena/engine/sim-athena-table-objects.js +8 -4
- package/dist/service/athena/engine/sim-athena-table-rows.js +4 -3
- package/dist/service/athena/engine/sim-athena-turn-down.d.ts +26 -0
- package/dist/service/athena/engine/sim-athena-turn-down.js +43 -0
- package/dist/service/athena/execution/sim-athena-query-completion.d.ts +3 -1
- package/dist/service/athena/execution/sim-athena-query-completion.js +7 -1
- package/dist/service/athena/index.d.ts +1 -1
- package/dist/service/athena/index.js +1 -1
- package/dist/service/athena/result/sim-athena-query-answer.d.ts +12 -0
- package/dist/service/athena/result/sim-athena-query-answer.js +26 -4
- package/dist/service/athena/sim-athena-answered-query.fixture.d.ts +2 -0
- package/dist/service/athena/sim-athena-answered-query.fixture.js +1 -0
- package/dist/service/athena/sim-athena-engine.fixture.d.ts +20 -0
- package/dist/service/athena/sim-athena-engine.fixture.js +34 -0
- package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.d.ts +23 -0
- package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.js +37 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.d.ts +2 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.js +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.d.ts +7 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.js +13 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.d.ts +6 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.js +7 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/notify/sim-cdk-bucket-deploy-notifier.d.ts +50 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/notify/sim-cdk-bucket-deploy-notifier.js +71 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js +6 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/source/sim-cdk-bucket-deploy-source.d.ts +5 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/source/sim-cdk-bucket-deploy-source.js +7 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-arn.d.ts +9 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-arn.js +12 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-changes.d.ts +42 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-changes.js +69 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-commands.d.ts +62 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-commands.js +89 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-execution.d.ts +31 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-execution.js +59 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-failure.d.ts +21 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-failure.js +19 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-input.d.ts +17 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-input.js +18 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack-id.d.ts +18 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack-id.js +13 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack.d.ts +45 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack.js +52 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-type.d.ts +12 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-type.js +21 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.d.ts +54 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.js +49 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.type.d.ts +35 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.type.js +1 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-sets.d.ts +53 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-sets.js +83 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.command.d.ts +32 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.handler.d.ts +38 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.handler.js +80 -0
- package/dist/service/cloudformation/command/create-stack/create-stack.handler.js +12 -12
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.command.d.ts +22 -0
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.handler.d.ts +27 -0
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.handler.js +35 -0
- package/dist/service/cloudformation/command/delete-stack/delete-stack.command.d.ts +6 -0
- package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.d.ts +11 -0
- package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.js +15 -1
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.command.d.ts +48 -0
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.handler.d.ts +23 -0
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.handler.js +52 -0
- package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.d.ts +3 -0
- package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.js +8 -4
- package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.d.ts +18 -6
- package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.js +22 -7
- package/dist/service/cloudformation/command/describe-stacks/sim-cfn-stack-describer.js +1 -1
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.command.d.ts +25 -0
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.handler.d.ts +31 -0
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.handler.js +37 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.command.d.ts +36 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.command.js +1 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.handler.d.ts +26 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.handler.js +39 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-previous-values.d.ts +31 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-previous-values.js +52 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-template.d.ts +22 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-template.js +34 -0
- package/dist/service/cloudformation/command/update-stack/update-stack.command.d.ts +17 -1
- package/dist/service/cloudformation/command/update-stack/update-stack.handler.js +8 -15
- package/dist/service/cloudformation/error/sim-cloudformation.error.d.ts +21 -0
- package/dist/service/cloudformation/error/sim-cloudformation.error.js +25 -0
- package/dist/service/cloudformation/parameters/pseudo/sim-cfn-pseudo-parameters.d.ts +7 -0
- package/dist/service/cloudformation/parameters/pseudo/sim-cfn-pseudo-parameters.js +3 -1
- package/dist/service/cloudformation/parameters/sim-cfn-parameters.d.ts +9 -0
- package/dist/service/cloudformation/parameters/sim-cfn-parameters.js +12 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.d.ts +4 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.js +10 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-retention.d.ts +44 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-retention.js +33 -0
- package/dist/service/cloudformation/resource/sim-cfn-resource-record.d.ts +15 -0
- package/dist/service/cloudformation/resource/sim-cfn-resource-record.js +21 -1
- package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts +9 -7
- package/dist/service/cloudformation/resource/sim-cfn-resource.js +11 -11
- package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts +8 -0
- package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.d.ts +3 -3
- package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.js +3 -3
- package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.d.ts +4 -0
- package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.js +9 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.d.ts +37 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.js +77 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.types.d.ts +51 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.types.js +10 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-authorizers.d.ts +11 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-authorizers.js +34 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-identity.d.ts +21 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-identity.js +31 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-definition.d.ts +14 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-definition.js +1 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-function.d.ts +26 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-function.js +58 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-event-authorization.d.ts +18 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-event-authorization.js +89 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-api-auth.d.ts +15 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-api-auth.js +65 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-jwt-authorizer.d.ts +13 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-jwt-authorizer.js +60 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-lambda-authorizer.d.ts +13 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-lambda-authorizer.js +50 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-prefixes.d.ts +13 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-prefixes.js +30 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-source.d.ts +26 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-source.js +44 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-api-auth.d.ts +15 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-api-auth.js +59 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-cognito-authorizer.d.ts +11 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-cognito-authorizer.js +43 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-lambda-authorizer.d.ts +15 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-lambda-authorizer.js +67 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-template-api-auth.d.ts +26 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-template-api-auth.js +61 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-unsupported-auth.d.ts +18 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-unsupported-auth.js +59 -0
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api-template.factory.js +1 -1
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api.d.ts +4 -0
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api.js +12 -5
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-rest-api-template.factory.js +1 -1
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-rest-api.js +7 -3
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-api-event.js +7 -3
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-cognito-event.d.ts +26 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-cognito-event.js +88 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-declared-event.d.ts +12 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-declared-event.js +1 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-function-events.js +8 -5
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-event.js +23 -1
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-route.d.ts +9 -2
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-route.js +5 -3
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-implicit-http-api.d.ts +6 -1
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-implicit-http-api.js +7 -1
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-triggered-user-pool.d.ts +19 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-triggered-user-pool.js +69 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-template.factory.d.ts +5 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-template.factory.js +3 -1
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-type.d.ts +8 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-type.js +8 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-url.js +1 -4
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function.d.ts +6 -4
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function.js +2 -4
- package/dist/service/cloudformation/sam/sim-cfn-sam-error.d.ts +31 -0
- package/dist/service/cloudformation/sam/sim-cfn-sam-error.js +17 -0
- package/dist/service/cloudformation/sam/sim-cfn-sam-expansion.js +11 -6
- package/dist/service/cloudformation/sdk/sim-cloudformation-sdk-command-router.js +20 -0
- package/dist/service/cloudformation/serve/sim-cloudformation-api.d.ts +4 -3
- package/dist/service/cloudformation/serve/sim-cloudformation-api.js +6 -3
- package/dist/service/cloudformation/serve/sim-cloudformation-change-set-api.d.ts +10 -0
- package/dist/service/cloudformation/serve/sim-cloudformation-change-set-api.js +94 -0
- package/dist/service/cloudformation/sim-cloudformation.d.ts +31 -0
- package/dist/service/cloudformation/sim-cloudformation.js +56 -9
- package/dist/service/cloudformation/stack/resource-map/sim-cfn-stack-resource-map.js +1 -0
- package/dist/service/cloudformation/stack/sim-cfn-deleted-stacks.d.ts +20 -0
- package/dist/service/cloudformation/stack/sim-cfn-deleted-stacks.js +23 -0
- package/dist/service/cloudformation/stack/sim-cfn-deployed-stack.type.d.ts +6 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-id.d.ts +30 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-id.js +24 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts +46 -3
- package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js +67 -6
- package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts +28 -16
- package/dist/service/cloudformation/stack/sim-cfn-stack.js +59 -32
- package/dist/service/cloudformation/stack/sim-cfn-stack.type.d.ts +7 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.d.ts +7 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.js +3 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.d.ts +3 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.js +3 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.d.ts +3 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.js +2 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-retained-logical-ids.d.ts +18 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-retained-logical-ids.js +30 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-guard.d.ts +9 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-guard.js +14 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.d.ts +25 -14
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.js +41 -24
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.d.ts +9 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.js +14 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.js +6 -1
- package/dist/service/cloudformation/template/condition/sim-cfn-condition-expression.d.ts +12 -3
- package/dist/service/cloudformation/template/condition/sim-cfn-condition-expression.js +29 -3
- package/dist/service/cloudformation/template/condition/sim-cfn-output-conditions.d.ts +28 -0
- package/dist/service/cloudformation/template/condition/sim-cfn-output-conditions.js +39 -0
- package/dist/service/cloudformation/template/node/fn/find-in-map/sim-cfn-fn-find-in-map.d.ts +25 -1
- package/dist/service/cloudformation/template/node/fn/find-in-map/sim-cfn-fn-find-in-map.js +43 -11
- package/dist/service/cloudformation/template/parse/fn/find-in-map/sim-cfn-fn-find-in-map-parser.d.ts +7 -0
- package/dist/service/cloudformation/template/parse/fn/find-in-map/sim-cfn-fn-find-in-map-parser.js +29 -3
- package/dist/service/cloudformation/template/sim-cfn-command-template.d.ts +40 -0
- package/dist/service/cloudformation/template/sim-cfn-command-template.js +45 -0
- package/dist/service/cloudformation/template/sim-cfn-template.d.ts +7 -0
- package/dist/service/cloudformation/template/sim-cfn-template.js +15 -1
- package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-request.d.ts +2 -0
- package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-request.js +49 -0
- package/dist/service/cloudfront/origin/custom/sim-cloudfront-custom-origin.js +1 -0
- package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-responses.js +1 -0
- package/dist/service/cognito/serve/page/sim-cognito-provider-page.js +1 -1
- package/dist/service/cognito/user-pool/idp/sim-cognito-attribute-mapping.d.ts +5 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-attribute-mapping.js +17 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-presented-external-user.d.ts +5 -5
- package/dist/service/cognito/user-pool/idp/sim-cognito-presented-external-user.js +24 -8
- package/dist/service/dynamodb/command/query/sim-dynamodb-query-expressions.d.ts +11 -8
- package/dist/service/dynamodb/command/query/sim-dynamodb-query-expressions.js +20 -8
- package/dist/service/dynamodb/command/query/sim-dynamodb-query.js +2 -0
- package/dist/service/dynamodb/command/query/sim-dynamodb-unsimulated-query-input.js +0 -1
- package/dist/service/dynamodb/command/read/sim-dynamodb-read-answer.d.ts +14 -4
- package/dist/service/dynamodb/command/read/sim-dynamodb-read-answer.js +16 -4
- package/dist/service/dynamodb/command/read/sim-dynamodb-table-read.fixture.d.ts +17 -0
- package/dist/service/dynamodb/command/read/sim-dynamodb-table-read.fixture.js +39 -0
- package/dist/service/dynamodb/command/scan/sim-dynamodb-scan-expressions.d.ts +28 -0
- package/dist/service/dynamodb/command/scan/sim-dynamodb-scan-expressions.js +50 -0
- package/dist/service/dynamodb/command/scan/sim-dynamodb-scan.js +12 -5
- package/dist/service/dynamodb/command/scan/sim-dynamodb-unsimulated-scan-input.d.ts +3 -3
- package/dist/service/dynamodb/command/scan/sim-dynamodb-unsimulated-scan-input.js +3 -4
- package/dist/service/dynamodb/expression/filter/sim-dynamodb-filter-expression.d.ts +5 -16
- package/dist/service/dynamodb/expression/filter/sim-dynamodb-filter-expression.js +4 -21
- package/dist/service/dynamodb/expression/projection/sim-dynamodb-projection-expression.d.ts +15 -0
- package/dist/service/dynamodb/expression/projection/sim-dynamodb-projection-expression.js +18 -1
- package/dist/service/dynamodb/expression/projection/sim-dynamodb-projection.d.ts +13 -0
- package/dist/service/dynamodb/expression/projection/sim-dynamodb-projection.js +15 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.js +2 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.js +5 -3
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-cors.d.ts +21 -0
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-cors.js +37 -0
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.js +6 -0
- package/dist/service/lambda/command/create-function/create-function.handler.d.ts +3 -0
- package/dist/service/lambda/command/create-function/create-function.handler.js +5 -1
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.command.d.ts +2 -3
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.handler.js +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.d.ts +6 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.js +10 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.js +2 -6
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.js +1 -0
- package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts +2 -0
- package/dist/service/lambda/command/function-url/function-url-cors-constraints.d.ts +25 -0
- package/dist/service/lambda/command/function-url/function-url-cors-constraints.js +49 -0
- package/dist/service/lambda/command/function-url/function-url-cors-input.d.ts +25 -0
- package/dist/service/lambda/command/function-url/function-url-cors-input.js +57 -0
- package/dist/service/lambda/command/function-url/function-url-input.d.ts +7 -0
- package/dist/service/lambda/command/function-url/function-url-input.js +9 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocation.js +10 -13
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-outcome.js +2 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-handler-attempt.d.ts +13 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-handler-attempt.js +12 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.command.d.ts +2 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.handler.js +1 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-bus.js +1 -1
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-function.js +8 -12
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-queue.js +4 -3
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-send.d.ts +2 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-topic.js +4 -3
- package/dist/service/lambda/destination/sim-aws-lambda-destinations.d.ts +4 -6
- package/dist/service/lambda/destination/sim-aws-lambda-destinations.js +6 -6
- package/dist/service/lambda/destination/sim-lambda-destination-targets.d.ts +3 -0
- package/dist/service/lambda/event-source/poll/kinesis/sim-lambda-kinesis-stream-delivery.js +4 -9
- package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-delivery.js +4 -9
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-outcome.d.ts +22 -3
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-outcome.js +39 -9
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-response.d.ts +7 -6
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-response.js +14 -12
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-checkpoint.d.ts +9 -15
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-checkpoint.js +9 -16
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-progress.d.ts +10 -6
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-progress.js +22 -12
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-record-times.d.ts +23 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-record-times.js +18 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry-backoff.d.ts +12 -13
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry-backoff.js +24 -17
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry.d.ts +64 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry.js +86 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.d.ts +6 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.js +8 -1
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-rules.d.ts +6 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-rules.js +7 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.d.ts +11 -1
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.js +13 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-retry-limits.d.ts +39 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-retry-limits.js +46 -0
- package/dist/service/lambda/event-source/sim-lambda-stream-retry-limits.d.ts +56 -0
- package/dist/service/lambda/event-source/sim-lambda-stream-retry-limits.js +110 -0
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-arn.d.ts +5 -0
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-arn.js +7 -1
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-rules.d.ts +6 -0
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-rules.js +6 -0
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-arn.d.ts +6 -1
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-arn.js +8 -6
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-rules.d.ts +10 -8
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-rules.js +18 -1
- package/dist/service/lambda/function/code/sim-lambda-executable-code.d.ts +8 -2
- package/dist/service/lambda/function/code/sim-lambda-executable-code.js +2 -1
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.d.ts +2 -11
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.js +13 -39
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.d.ts +7 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.js +13 -7
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-handler-lookup.d.ts +23 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-handler-lookup.js +42 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-output-stream.d.ts +12 -4
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-output-stream.js +15 -5
- package/dist/service/lambda/function/invoke/sim-lambda-host-scope.d.ts +7 -0
- package/dist/service/lambda/function/invoke/sim-lambda-host-scope.js +6 -2
- package/dist/service/lambda/function/invoke/sim-lambda-invocation-deadline.d.ts +26 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invocation-deadline.js +84 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invocation.d.ts +44 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invocation.js +44 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.d.ts +6 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.js +1 -2
- package/dist/service/lambda/function/invoke/sim-lambda-process-output.d.ts +6 -1
- package/dist/service/lambda/function/invoke/sim-lambda-process-output.js +19 -6
- package/dist/service/lambda/function/invoke/sim-lambda-timed-out.error.d.ts +15 -0
- package/dist/service/lambda/function/invoke/sim-lambda-timed-out.error.js +18 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clear-timer.d.ts +12 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clear-timer.js +28 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clock-timer.d.ts +46 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clock-timer.js +104 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-host-timers.d.ts +24 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-host-timers.js +27 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-invocation-timers.d.ts +43 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-invocation-timers.js +112 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-process-timers.d.ts +57 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-process-timers.js +79 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-delay.d.ts +10 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-delay.js +15 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-global.d.ts +11 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-global.js +24 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-handle.d.ts +50 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-handle.js +43 -0
- package/dist/service/lambda/function/logging/sim-lambda-function-logging.d.ts +17 -0
- package/dist/service/lambda/function/logging/sim-lambda-function-logging.js +12 -1
- package/dist/service/lambda/function/logging/sim-lambda-output.d.ts +56 -0
- package/dist/service/lambda/function/logging/sim-lambda-output.js +62 -0
- package/dist/service/lambda/function/outbound/sim-lambda-aws-api-outbound.d.ts +8 -0
- package/dist/service/lambda/function/outbound/sim-lambda-aws-api-outbound.js +27 -1
- package/dist/service/lambda/function/sim-lambda-function.d.ts +1 -1
- package/dist/service/lambda/function/sim-lambda-function.js +11 -9
- package/dist/service/lambda/function/sim-lambda-function.type.d.ts +15 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.d.ts +16 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.factory.d.ts +22 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.factory.js +17 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.js +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-factory.d.ts +2 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-factory.js +2 -1
- package/dist/service/lambda/function/url/sim-lambda-function-url-store.d.ts +2 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url.d.ts +16 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url.js +16 -1
- package/dist/service/lambda/index.d.ts +1 -0
- package/dist/service/lambda/index.js +1 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-cors-headers.d.ts +50 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-cors-headers.js +96 -0
- package/dist/service/lambda/serve/sim-lambda-controller.d.ts +14 -0
- package/dist/service/lambda/serve/sim-lambda-controller.js +27 -0
- package/dist/service/lambda/sim-lambda-commands.d.ts +10 -0
- package/dist/service/lambda/sim-lambda-commands.js +11 -0
- package/dist/service/lambda/sim-lambda.d.ts +12 -0
- package/dist/service/lambda/sim-lambda.js +13 -0
- package/dist/service/s3/bucket/encryption/sim-s3-bucket-encryption.d.ts +67 -0
- package/dist/service/s3/bucket/encryption/sim-s3-bucket-encryption.js +69 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.d.ts +4 -31
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.js +7 -6
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.d.ts +5 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.js +8 -4
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-selection.d.ts +1 -14
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-selection.js +16 -8
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-subject.d.ts +41 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-subject.js +1 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.d.ts +14 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.js +32 -2
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition-instant.d.ts +33 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition-instant.js +48 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition.d.ts +16 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition.js +44 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.d.ts +8 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.js +27 -0
- package/dist/service/s3/bucket/notification/sim-s3-notification-event.d.ts +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-notification-event.js +5 -0
- package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-events.js +0 -3
- package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts +3 -0
- package/dist/service/s3/bucket/sim-s3-bucket-access.js +6 -2
- package/dist/service/s3/bucket/sim-s3-bucket-configuration.d.ts +84 -0
- package/dist/service/s3/bucket/sim-s3-bucket-configuration.js +115 -0
- package/dist/service/s3/bucket/sim-s3-bucket-objects.d.ts +10 -0
- package/dist/service/s3/bucket/sim-s3-bucket-objects.js +18 -0
- package/dist/service/s3/bucket/sim-s3-bucket-properties.d.ts +41 -0
- package/dist/service/s3/bucket/sim-s3-bucket-properties.js +1 -0
- package/dist/service/s3/bucket/sim-s3-bucket.d.ts +11 -83
- package/dist/service/s3/bucket/sim-s3-bucket.js +14 -83
- package/dist/service/s3/bucket/sim-s3-public-read.fixture.d.ts +6 -0
- package/dist/service/s3/bucket/sim-s3-public-read.fixture.js +20 -6
- package/dist/service/s3/bucket/tagging/sim-s3-taggable-object.d.ts +58 -0
- package/dist/service/s3/bucket/tagging/sim-s3-taggable-object.js +73 -0
- package/dist/service/s3/bucket/versioning/sim-s3-object-version.d.ts +19 -1
- package/dist/service/s3/bucket/versioning/sim-s3-object-version.js +20 -0
- package/dist/service/s3/cfn/bucket/encryption/sim-cfn-s3-bucket-encryption.d.ts +21 -0
- package/dist/service/s3/cfn/bucket/encryption/sim-cfn-s3-bucket-encryption.js +44 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.js +6 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.d.ts +5 -4
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.js +12 -5
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-filter.d.ts +21 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-filter.js +30 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.js +1 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.d.ts +14 -1
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.js +41 -16
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.d.ts +3 -5
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.js +7 -10
- package/dist/service/s3/command/authorize/sim-s3-authorize-action.d.ts +6 -1
- package/dist/service/s3/command/authorize/sim-s3-authorize-action.js +5 -0
- package/dist/service/s3/command/copy-object/copy-object-builder.d.ts +10 -1
- package/dist/service/s3/command/copy-object/copy-object-builder.js +17 -1
- package/dist/service/s3/command/copy-object/copy-object.command.d.ts +11 -1
- package/dist/service/s3/command/copy-object/copy-object.handler.js +2 -1
- package/dist/service/s3/command/create-multipart-upload/create-multipart-upload.command.d.ts +5 -1
- package/dist/service/s3/command/create-multipart-upload/create-multipart-upload.handler.js +7 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.command.d.ts +19 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.command.js +1 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.handler.d.ts +30 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.handler.js +38 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.command.d.ts +23 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.command.js +1 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.handler.d.ts +22 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.handler.js +42 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-authorizer.d.ts +29 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-authorizer.js +49 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-commands.d.ts +22 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-commands.js +30 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.command.d.ts +24 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.command.js +1 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.handler.d.ts +31 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.handler.js +39 -0
- package/dist/service/s3/command/get-object/get-object-authorizer.d.ts +11 -8
- package/dist/service/s3/command/get-object/get-object-authorizer.js +26 -34
- package/dist/service/s3/command/get-object/get-object-loader.d.ts +7 -3
- package/dist/service/s3/command/get-object/get-object-loader.js +9 -4
- package/dist/service/s3/command/get-object/get-object.command.d.ts +2 -1
- package/dist/service/s3/command/get-object/get-object.handler.d.ts +4 -0
- package/dist/service/s3/command/get-object/get-object.handler.js +13 -7
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.command.d.ts +29 -0
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.command.js +1 -0
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.handler.d.ts +21 -0
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.handler.js +33 -0
- package/dist/service/s3/command/head-object/head-object-loader.js +2 -0
- package/dist/service/s3/command/head-object/head-object.command.d.ts +2 -1
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-rules-validation.js +18 -0
- package/dist/service/s3/command/list-multipart-uploads/list-multipart-uploads.handler.js +1 -2
- package/dist/service/s3/command/list-object-versions/list-object-versions-summaries.js +1 -2
- package/dist/service/s3/command/list-objects/list-objects-page-builder.d.ts +5 -0
- package/dist/service/s3/command/list-objects/list-objects-page-builder.js +11 -6
- package/dist/service/s3/command/list-objects/list-objects.command.d.ts +5 -1
- package/dist/service/s3/command/list-objects/list-objects.handler.js +5 -0
- package/dist/service/s3/command/list-objects-v2/list-objects-v2-page-builder.d.ts +6 -0
- package/dist/service/s3/command/list-objects-v2/list-objects-v2-page-builder.js +11 -5
- package/dist/service/s3/command/list-objects-v2/list-objects-v2.command.d.ts +5 -1
- package/dist/service/s3/command/list-objects-v2/list-objects-v2.handler.js +5 -0
- package/dist/service/s3/command/list-parts/list-parts.handler.js +3 -3
- package/dist/service/s3/command/multipart/sim-s3-multipart-access.js +1 -1
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.command.d.ts +21 -0
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.command.js +1 -0
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.handler.d.ts +31 -0
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.handler.js +41 -0
- package/dist/service/s3/command/put-object/put-object-builder.d.ts +5 -1
- package/dist/service/s3/command/put-object/put-object-builder.js +10 -1
- package/dist/service/s3/command/put-object/put-object.command.d.ts +5 -1
- package/dist/service/s3/command/put-object/put-object.handler.js +2 -1
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.command.d.ts +37 -0
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.command.js +1 -0
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.handler.d.ts +22 -0
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.handler.js +46 -0
- package/dist/service/s3/command/sim-s3-command.types.d.ts +6 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-access.d.ts +61 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-access.js +49 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-authorizer.d.ts +30 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-authorizer.js +27 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-commands.d.ts +26 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-commands.js +34 -0
- package/dist/service/s3/error/sim-s3-upload.error.d.ts +41 -0
- package/dist/service/s3/error/sim-s3-upload.error.js +47 -0
- package/dist/service/s3/error/sim-s3.error.d.ts +22 -34
- package/dist/service/s3/error/sim-s3.error.js +26 -40
- package/dist/service/s3/mount/sim-s3-mount.type.d.ts +10 -0
- package/dist/service/s3/notification/event/sim-s3-event-records.d.ts +3 -2
- package/dist/service/s3/notification/event/sim-s3-event-records.js +5 -3
- package/dist/service/s3/notification/event/sim-s3-object-event-builder.d.ts +33 -8
- package/dist/service/s3/notification/event/sim-s3-object-event-builder.js +23 -9
- package/dist/service/s3/notification/sim-s3-object-notifier.d.ts +5 -1
- package/dist/service/s3/notification/sim-s3-object-notifier.js +6 -0
- package/dist/service/s3/object/s3-key-encoding.d.ts +12 -0
- package/dist/service/s3/object/s3-key-encoding.js +14 -0
- package/dist/service/s3/object/s3-listing-encoding.d.ts +42 -0
- package/dist/service/s3/object/s3-listing-encoding.js +75 -0
- package/dist/service/s3/object/s3-object-response-headers.d.ts +40 -0
- package/dist/service/s3/object/s3-object-response-headers.js +49 -2
- package/dist/service/s3/object/s3-object-storage-report.d.ts +19 -0
- package/dist/service/s3/object/s3-object-storage-report.js +18 -0
- package/dist/service/s3/object/s3-object-summary.d.ts +2 -10
- package/dist/service/s3/object/s3-object-summary.js +1 -10
- package/dist/service/s3/object/s3-object-tags.d.ts +61 -0
- package/dist/service/s3/object/s3-object-tags.js +77 -0
- package/dist/service/s3/object/s3-object.d.ts +49 -0
- package/dist/service/s3/object/s3-object.js +52 -1
- package/dist/service/s3/object/s3-server-side-encryption.d.ts +30 -0
- package/dist/service/s3/object/s3-server-side-encryption.js +42 -0
- package/dist/service/s3/object/s3-storage-class.d.ts +45 -0
- package/dist/service/s3/object/s3-storage-class.js +67 -0
- package/dist/service/s3/object/s3-write-metadata.d.ts +17 -3
- package/dist/service/s3/object/s3-write-metadata.js +43 -0
- package/dist/service/s3/object/s3-write-storage.d.ts +27 -0
- package/dist/service/s3/object/s3-write-storage.js +21 -0
- package/dist/service/s3/object/s3-write-tagging.d.ts +24 -0
- package/dist/service/s3/object/s3-write-tagging.js +19 -0
- package/dist/service/s3/sdk/sim-s3-sdk-bucket-routes.js +12 -0
- package/dist/service/s3/sdk/sim-s3-sdk-command-router.js +2 -0
- package/dist/service/s3/sdk/sim-s3-sdk-object-tagging-routes.d.ts +9 -0
- package/dist/service/s3/sdk/sim-s3-sdk-object-tagging-routes.js +23 -0
- package/dist/service/s3/serve/api/sim-s3-api-bucket-routes.js +22 -0
- package/dist/service/s3/serve/api/sim-s3-api-configuration-output.d.ts +4 -0
- package/dist/service/s3/serve/api/sim-s3-api-configuration-output.js +10 -0
- package/dist/service/s3/serve/api/sim-s3-api-encryption-read.d.ts +7 -0
- package/dist/service/s3/serve/api/sim-s3-api-encryption-read.js +30 -0
- package/dist/service/s3/serve/api/sim-s3-api-head-output.d.ts +4 -2
- package/dist/service/s3/serve/api/sim-s3-api-head-output.js +8 -2
- package/dist/service/s3/serve/api/sim-s3-api-input.d.ts +0 -6
- package/dist/service/s3/serve/api/sim-s3-api-input.js +2 -13
- package/dist/service/s3/serve/api/sim-s3-api-listing.d.ts +5 -0
- package/dist/service/s3/serve/api/sim-s3-api-listing.js +5 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-input.d.ts +16 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-input.js +34 -7
- package/dist/service/s3/serve/api/sim-s3-api-object-output.d.ts +18 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-output.js +21 -2
- package/dist/service/s3/serve/api/sim-s3-api-object-routes.js +22 -1
- package/dist/service/s3/serve/api/sim-s3-api-output.d.ts +5 -1
- package/dist/service/s3/serve/api/sim-s3-api-output.js +16 -5
- package/dist/service/s3/serve/api/sim-s3-api-request.d.ts +6 -5
- package/dist/service/s3/serve/api/sim-s3-api-request.js +55 -11
- package/dist/service/s3/serve/api/sim-s3-api-routes.js +2 -2
- package/dist/service/s3/serve/api/sim-s3-api-tagging-read.d.ts +9 -0
- package/dist/service/s3/serve/api/sim-s3-api-tagging-read.js +14 -0
- package/dist/service/s3/serve/api/sim-s3-api.d.ts +7 -1
- package/dist/service/s3/serve/api/sim-s3-api.js +7 -1
- package/dist/service/s3/serve/sim-s3-rest-controller.d.ts +1 -5
- package/dist/service/s3/serve/sim-s3-rest-controller.js +3 -17
- package/dist/service/s3/serve/sim-s3-rest-object-reader.d.ts +3 -0
- package/dist/service/s3/serve/sim-s3-rest-object-reader.js +8 -1
- package/dist/service/s3/serve/sim-s3-rest-upload.d.ts +20 -0
- package/dist/service/s3/serve/sim-s3-rest-upload.js +30 -0
- package/dist/service/s3/serve/website/sim-s3-website-object-loader.js +1 -0
- package/dist/service/s3/serve/website/sim-s3-website-object.d.ts +2 -0
- package/dist/service/s3/serve/website/sim-s3-website-object.js +3 -0
- package/dist/service/s3/sim-s3-commands.d.ts +4 -0
- package/dist/service/s3/sim-s3-commands.js +6 -0
- package/dist/service/s3/sim-s3-operations.d.ts +11 -4
- package/dist/service/s3/sim-s3-operations.js +17 -4
- package/dist/service/s3/sim-s3-tagging-operations.d.ts +21 -0
- package/dist/service/s3/sim-s3-tagging-operations.js +25 -0
- package/dist/service/s3/sim-s3.d.ts +12 -0
- package/dist/service/s3/sim-s3.js +13 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deleting-storage.d.ts +34 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deleting-storage.js +34 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deletion.d.ts +9 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deletion.js +24 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-storage.d.ts +5 -4
- package/dist/service/s3/storage/filesystem/s3-filesystem-storage.js +5 -3
- package/dist/service/s3/upload/sim-s3-completed-upload.js +5 -1
- package/dist/service/s3/upload/sim-s3-multipart-upload.d.ts +18 -0
- package/dist/service/s3/upload/sim-s3-multipart-upload.js +8 -0
- package/dist/service/s3/upload/sim-s3-multipart-uploads.d.ts +6 -0
- package/dist/service/s3/upload/sim-s3-multipart-uploads.js +5 -0
- package/dist/util/background/background-clock-waits.d.ts +52 -0
- package/dist/util/background/background-clock-waits.js +76 -0
- package/dist/util/background/background-jitter.js +1 -0
- package/dist/util/background/background-pending-tasks.d.ts +55 -0
- package/dist/util/background/background-pending-tasks.js +117 -0
- package/dist/util/background/background-settled-tasks.d.ts +4 -1
- package/dist/util/background/background-settled-tasks.js +4 -1
- package/dist/util/background/background.d.ts +43 -0
- package/dist/util/background/background.js +27 -19
- package/dist/util/background/non-deterministic-background.d.ts +12 -0
- package/dist/util/background/non-deterministic-background.js +24 -20
- package/dist/util/clock/sim-clock-control.js +23 -2
- package/docs/services/apigateway/README.md +3 -1
- package/docs/services/athena/README.md +126 -3
- package/docs/services/cloudformation/README.md +775 -65
- package/docs/services/cognito/README.md +5 -0
- package/docs/services/dynamodb/README.md +86 -11
- package/docs/services/lambda/README.md +603 -39
- package/docs/services/s3/README.md +688 -57
- package/package.json +7 -1
|
@@ -9,6 +9,11 @@ const expressionName = "ProjectionExpression";
|
|
|
9
9
|
*
|
|
10
10
|
* A request with no ProjectionExpression asks for the whole item, so there is
|
|
11
11
|
* nothing to project.
|
|
12
|
+
*
|
|
13
|
+
* This is the form for a request whose projection is its only expression, which
|
|
14
|
+
* is every read that names one item or a list of them. A query or a scan can
|
|
15
|
+
* carry a filter alongside its projection, and reads both against one set of
|
|
16
|
+
* placeholders through `parseSimDynamoDbProjection`.
|
|
12
17
|
*/
|
|
13
18
|
export function readSimDynamoDbProjection(request) {
|
|
14
19
|
const expression = request.ProjectionExpression;
|
|
@@ -17,8 +22,20 @@ export function readSimDynamoDbProjection(request) {
|
|
|
17
22
|
return undefined;
|
|
18
23
|
}
|
|
19
24
|
const parameters = new SimDynamoDbExpressionParameters(request);
|
|
20
|
-
const
|
|
25
|
+
const projection = parseSimDynamoDbProjection(expression, parameters);
|
|
21
26
|
parameters.assertAllUsed();
|
|
27
|
+
return projection;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Read one ProjectionExpression against placeholders that have already been
|
|
31
|
+
* gathered.
|
|
32
|
+
*
|
|
33
|
+
* A query carries a key condition and may carry a filter alongside its
|
|
34
|
+
* projection, and all three draw on the same `ExpressionAttributeNames`, so the
|
|
35
|
+
* placeholders are checked once every expression has been read.
|
|
36
|
+
*/
|
|
37
|
+
export function parseSimDynamoDbProjection(expression, parameters) {
|
|
38
|
+
const paths = projectedPaths(SimDynamoDbExpressionTokens.of(expressionName, expression, "the expression names no attributes, and an expression cannot be empty"), parameters.names);
|
|
22
39
|
return new SimDynamoDbProjection({ expressionName, paths });
|
|
23
40
|
}
|
|
24
41
|
/**
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SimDynamoDbItem } from "../../item/sim-dynamodb-item.js";
|
|
2
|
+
import type { SimDynamoDbReadView } from "../../table/sim-dynamodb-read-view.js";
|
|
2
3
|
import type { SimDynamoDbDocumentPath } from "../sim-dynamodb-document-path.js";
|
|
3
4
|
interface SimDynamoDbProjectionProperties {
|
|
4
5
|
readonly expressionName: string;
|
|
@@ -12,7 +13,19 @@ interface SimDynamoDbProjectionProperties {
|
|
|
12
13
|
*/
|
|
13
14
|
export declare class SimDynamoDbProjection {
|
|
14
15
|
private readonly root;
|
|
16
|
+
private readonly paths;
|
|
15
17
|
constructor(properties: SimDynamoDbProjectionProperties);
|
|
18
|
+
/**
|
|
19
|
+
* Refuse a projection naming an attribute the view being read does not carry.
|
|
20
|
+
*
|
|
21
|
+
* A global secondary index holds only what it projects, so a path outside
|
|
22
|
+
* that would leave the attribute out of every item it answers with. An
|
|
23
|
+
* attribute quietly missing reads as an item that happens not to have it,
|
|
24
|
+
* which is the answer a projection used as an allow-list must never give. A
|
|
25
|
+
* local secondary index fetches from the base table, so any path is nameable
|
|
26
|
+
* there.
|
|
27
|
+
*/
|
|
28
|
+
assertNamesOnlyCarried(view: SimDynamoDbReadView): void;
|
|
16
29
|
/**
|
|
17
30
|
* Cut an item down to what this projection asked for.
|
|
18
31
|
*
|
|
@@ -8,12 +8,27 @@ import { SimDynamoDbProjectionNode } from "./sim-dynamodb-projection-node.js";
|
|
|
8
8
|
*/
|
|
9
9
|
export class SimDynamoDbProjection {
|
|
10
10
|
root;
|
|
11
|
+
paths;
|
|
11
12
|
constructor(properties) {
|
|
12
13
|
this.root = new SimDynamoDbProjectionNode(properties.expressionName);
|
|
14
|
+
this.paths = properties.paths;
|
|
13
15
|
for (const path of properties.paths) {
|
|
14
16
|
this.root.add(path);
|
|
15
17
|
}
|
|
16
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Refuse a projection naming an attribute the view being read does not carry.
|
|
21
|
+
*
|
|
22
|
+
* A global secondary index holds only what it projects, so a path outside
|
|
23
|
+
* that would leave the attribute out of every item it answers with. An
|
|
24
|
+
* attribute quietly missing reads as an item that happens not to have it,
|
|
25
|
+
* which is the answer a projection used as an allow-list must never give. A
|
|
26
|
+
* local secondary index fetches from the base table, so any path is nameable
|
|
27
|
+
* there.
|
|
28
|
+
*/
|
|
29
|
+
assertNamesOnlyCarried(view) {
|
|
30
|
+
view.assertCarriesPaths(this.paths);
|
|
31
|
+
}
|
|
17
32
|
/**
|
|
18
33
|
* Cut an item down to what this projection asked for.
|
|
19
34
|
*
|
|
@@ -38,6 +38,8 @@ export class SimCfnLambdaEventSourceMappingProperties {
|
|
|
38
38
|
BatchSize: this.parser.optionalNumber(this.resource, this.properties["BatchSize"], "BatchSize"),
|
|
39
39
|
Enabled: this.parser.optionalBoolean(this.resource, this.properties["Enabled"], "Enabled"),
|
|
40
40
|
MaximumBatchingWindowInSeconds: this.parser.optionalNumber(this.resource, this.properties["MaximumBatchingWindowInSeconds"], "MaximumBatchingWindowInSeconds"),
|
|
41
|
+
MaximumRetryAttempts: this.parser.optionalNumber(this.resource, this.properties["MaximumRetryAttempts"], "MaximumRetryAttempts"),
|
|
42
|
+
MaximumRecordAgeInSeconds: this.parser.optionalNumber(this.resource, this.properties["MaximumRecordAgeInSeconds"], "MaximumRecordAgeInSeconds"),
|
|
41
43
|
StartingPosition: this.parser.optionalString(this.resource, this.properties["StartingPosition"], "StartingPosition"),
|
|
42
44
|
StartingPositionTimestamp: this.startingPositionTimestamp(),
|
|
43
45
|
FunctionResponseTypes: this.functionResponseTypes(),
|
|
@@ -5,7 +5,9 @@
|
|
|
5
5
|
* unsimulated ones because whether a mapping may carry one is the event
|
|
6
6
|
* source's own rule: a stream has to be given a position and a queue is refused
|
|
7
7
|
* for naming one. That is decided by CreateEventSourceMapping, which knows
|
|
8
|
-
* which source the ARN names, so both are read and passed on.
|
|
8
|
+
* which source the ARN names, so both are read and passed on. The two
|
|
9
|
+
* failed-batch limits are read for the same reason: a stream mapping keeps them
|
|
10
|
+
* and a queue mapping is refused for naming one.
|
|
9
11
|
*/
|
|
10
12
|
const simulatedPropertyNames = new Set([
|
|
11
13
|
"BatchSize",
|
|
@@ -14,6 +16,8 @@ const simulatedPropertyNames = new Set([
|
|
|
14
16
|
"FunctionName",
|
|
15
17
|
"FunctionResponseTypes",
|
|
16
18
|
"MaximumBatchingWindowInSeconds",
|
|
19
|
+
"MaximumRecordAgeInSeconds",
|
|
20
|
+
"MaximumRetryAttempts",
|
|
17
21
|
"StartingPosition",
|
|
18
22
|
"StartingPositionTimestamp",
|
|
19
23
|
]);
|
|
@@ -32,8 +36,6 @@ const unsimulatedPropertyNames = new Set([
|
|
|
32
36
|
"DocumentDBEventSourceConfig",
|
|
33
37
|
"FilterCriteria",
|
|
34
38
|
"KmsKeyArn",
|
|
35
|
-
"MaximumRecordAgeInSeconds",
|
|
36
|
-
"MaximumRetryAttempts",
|
|
37
39
|
"MetricsConfig",
|
|
38
40
|
"ParallelizationFactor",
|
|
39
41
|
"ProvisionedPollerConfig",
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
|
|
2
|
+
import type { SimCfnTemplateValue } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
|
|
3
|
+
import type { SimLambdaFunctionUrlCors } from "../../function/url/sim-lambda-function-url-cors.js";
|
|
4
|
+
import type { SimCfnLambdaPropertyParser } from "../function/sim-cfn-lambda-property-parser.js";
|
|
5
|
+
interface SimCfnLambdaUrlCorsProperties {
|
|
6
|
+
readonly parser: SimCfnLambdaPropertyParser;
|
|
7
|
+
readonly resource: SimCfnResource;
|
|
8
|
+
readonly value: SimCfnTemplateValue | undefined;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Read the `Cors` block of an `AWS::Lambda::Url` Resource.
|
|
12
|
+
*
|
|
13
|
+
* The members go to `CreateFunctionUrlConfig` as they are written. The bounds
|
|
14
|
+
* Lambda puts on them are applied there, once. This reader settles only the
|
|
15
|
+
* template question, whether each property is the shape CloudFormation says it
|
|
16
|
+
* is.
|
|
17
|
+
*
|
|
18
|
+
* https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-url-cors.html
|
|
19
|
+
*/
|
|
20
|
+
export declare function simCfnLambdaUrlCors(properties: SimCfnLambdaUrlCorsProperties): SimLambdaFunctionUrlCors | undefined;
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { isRecord } from "../../../../util/type-guard/record.js";
|
|
2
|
+
/**
|
|
3
|
+
* Read the `Cors` block of an `AWS::Lambda::Url` Resource.
|
|
4
|
+
*
|
|
5
|
+
* The members go to `CreateFunctionUrlConfig` as they are written. The bounds
|
|
6
|
+
* Lambda puts on them are applied there, once. This reader settles only the
|
|
7
|
+
* template question, whether each property is the shape CloudFormation says it
|
|
8
|
+
* is.
|
|
9
|
+
*
|
|
10
|
+
* https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-url-cors.html
|
|
11
|
+
*/
|
|
12
|
+
export function simCfnLambdaUrlCors(properties) {
|
|
13
|
+
const { parser, resource, value } = properties;
|
|
14
|
+
if (value === undefined) {
|
|
15
|
+
return undefined;
|
|
16
|
+
}
|
|
17
|
+
if (!isRecord(value)) {
|
|
18
|
+
throw parser.invalidPropertyError(resource, "Cors", "an object");
|
|
19
|
+
}
|
|
20
|
+
const cors = value;
|
|
21
|
+
// A member the template said nothing about is left out. What the Lambda API
|
|
22
|
+
// reports back is then what the template wrote.
|
|
23
|
+
return withoutAbsentMembers({
|
|
24
|
+
AllowCredentials: parser.optionalBoolean(resource, cors["AllowCredentials"], "Cors.AllowCredentials"),
|
|
25
|
+
AllowHeaders: parser.optionalStringList(resource, cors["AllowHeaders"], "Cors.AllowHeaders"),
|
|
26
|
+
AllowMethods: parser.optionalStringList(resource, cors["AllowMethods"], "Cors.AllowMethods"),
|
|
27
|
+
AllowOrigins: parser.optionalStringList(resource, cors["AllowOrigins"], "Cors.AllowOrigins"),
|
|
28
|
+
ExposeHeaders: parser.optionalStringList(resource, cors["ExposeHeaders"], "Cors.ExposeHeaders"),
|
|
29
|
+
MaxAge: parser.optionalNumber(resource, cors["MaxAge"], "Cors.MaxAge"),
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Drop the members the template did not state.
|
|
34
|
+
*/
|
|
35
|
+
function withoutAbsentMembers(cors) {
|
|
36
|
+
return Object.fromEntries(Object.entries(cors).filter(([, member]) => member !== undefined));
|
|
37
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { assertDefined } from "../../../../util/type-guard/defined.js";
|
|
2
2
|
import { SimCfnLambdaPropertyParser } from "../function/sim-cfn-lambda-property-parser.js";
|
|
3
|
+
import { simCfnLambdaUrlCors } from "./sim-cfn-lambda-url-cors.js";
|
|
3
4
|
import { simCfnLambdaTargetFunctionName } from "../function/sim-cfn-lambda-target-function.js";
|
|
4
5
|
/**
|
|
5
6
|
* Creates simulated Lambda Function URLs from CloudFormation Resources.
|
|
@@ -25,6 +26,11 @@ export class SimCfnLambdaUrlCreator {
|
|
|
25
26
|
FunctionName: functionName,
|
|
26
27
|
AuthType: this.propertyParser.requiredString(resource, properties["AuthType"], "AuthType"),
|
|
27
28
|
InvokeMode: this.propertyParser.optionalString(resource, properties["InvokeMode"], "InvokeMode"),
|
|
29
|
+
Cors: simCfnLambdaUrlCors({
|
|
30
|
+
parser: this.propertyParser,
|
|
31
|
+
resource,
|
|
32
|
+
value: properties["Cors"],
|
|
33
|
+
}),
|
|
28
34
|
},
|
|
29
35
|
}, options);
|
|
30
36
|
const functionUrl = this.lambda.getSimFunctionUrl(functionName);
|
|
@@ -8,6 +8,7 @@ import type { SimLambdaContainerImages } from "../../function/code/image/sim-lam
|
|
|
8
8
|
import type { SimLambdaCodeStore } from "../../function/code/store/sim-lambda-code-store.js";
|
|
9
9
|
import type { SimLambdaVmSdkModuleProvider } from "../../function/code/vm/sdk/sim-lambda-vm-sdk-module-provider.js";
|
|
10
10
|
import type { SimCloudWatchServiceWriter } from "../../../cloudwatch/write/sim-cloudwatch-service-writer.js";
|
|
11
|
+
import type { SimLambdaOutput } from "../../function/logging/sim-lambda-output.js";
|
|
11
12
|
import type { SimLogsServiceWriter } from "../../../logs/write/sim-logs-service-writer.js";
|
|
12
13
|
import type { SimLambdaOutboundHttp } from "../../function/outbound/sim-lambda-outbound-http.js";
|
|
13
14
|
import { SimLambdaEnvironmentConflicts } from "../../function/environment/sim-lambda-environment-conflicts.js";
|
|
@@ -24,6 +25,7 @@ interface CreateFunctionCommandHandlerProperties {
|
|
|
24
25
|
vmSdkModuleProvider?: SimLambdaVmSdkModuleProvider | undefined;
|
|
25
26
|
environmentConflicts?: SimLambdaEnvironmentConflicts;
|
|
26
27
|
logs?: SimLogsServiceWriter | undefined;
|
|
28
|
+
output?: SimLambdaOutput | undefined;
|
|
27
29
|
metrics?: SimCloudWatchServiceWriter | undefined;
|
|
28
30
|
outboundHttp?: SimLambdaOutboundHttp | undefined;
|
|
29
31
|
}
|
|
@@ -44,6 +46,7 @@ export declare class CreateFunctionCommandHandler implements CommandHandler<SimC
|
|
|
44
46
|
private readonly codeResolver;
|
|
45
47
|
private readonly environmentConflicts;
|
|
46
48
|
private readonly logs;
|
|
49
|
+
private readonly output;
|
|
47
50
|
private readonly metrics;
|
|
48
51
|
private readonly outboundHttp;
|
|
49
52
|
constructor(properties: CreateFunctionCommandHandlerProperties);
|
|
@@ -22,10 +22,11 @@ export class CreateFunctionCommandHandler {
|
|
|
22
22
|
codeResolver;
|
|
23
23
|
environmentConflicts;
|
|
24
24
|
logs;
|
|
25
|
+
output;
|
|
25
26
|
metrics;
|
|
26
27
|
outboundHttp;
|
|
27
28
|
constructor(properties) {
|
|
28
|
-
const { accountRegionScope, functions, runAsOwner, iam = new SimIamAllowAllAuth(), background = new BackgroundTasks(), codeStore, containerImages, vmSdkModuleProvider, environmentConflicts = new SimLambdaEnvironmentConflicts(), logs, metrics, outboundHttp, } = properties;
|
|
29
|
+
const { accountRegionScope, functions, runAsOwner, iam = new SimIamAllowAllAuth(), background = new BackgroundTasks(), codeStore, containerImages, vmSdkModuleProvider, environmentConflicts = new SimLambdaEnvironmentConflicts(), logs, output, metrics, outboundHttp, } = properties;
|
|
29
30
|
this.accountRegionScope = accountRegionScope;
|
|
30
31
|
this.functions = functions;
|
|
31
32
|
this.runAsOwner = runAsOwner;
|
|
@@ -42,6 +43,7 @@ export class CreateFunctionCommandHandler {
|
|
|
42
43
|
});
|
|
43
44
|
this.environmentConflicts = environmentConflicts;
|
|
44
45
|
this.logs = logs;
|
|
46
|
+
this.output = output;
|
|
45
47
|
this.metrics = metrics;
|
|
46
48
|
this.outboundHttp = outboundHttp;
|
|
47
49
|
}
|
|
@@ -71,7 +73,9 @@ export class CreateFunctionCommandHandler {
|
|
|
71
73
|
accountRegionScope: this.accountRegionScope,
|
|
72
74
|
runAsOwner: this.runAsOwner,
|
|
73
75
|
clock: this.background,
|
|
76
|
+
background: this.background,
|
|
74
77
|
logs: this.logs,
|
|
78
|
+
output: this.output,
|
|
75
79
|
metrics: this.metrics,
|
|
76
80
|
outboundHttp: this.outboundHttp,
|
|
77
81
|
});
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/lambda/command/CreateFunctionUrlConfigCommand/
|
|
3
3
|
*/
|
|
4
4
|
import type { SimResponseMetadata } from "../../../aws/metadata/response-metadata.type.js";
|
|
5
|
+
import type { SimLambdaFunctionUrlCors } from "../../function/url/sim-lambda-function-url-cors.js";
|
|
5
6
|
import type { SimLambdaFunctionUrlAuthType, SimLambdaFunctionUrlConfiguration, SimLambdaFunctionUrlInvokeMode } from "../../function/url/sim-lambda-function-url.js";
|
|
6
7
|
/**
|
|
7
8
|
* Minimal structural sim Lambda CreateFunctionUrlConfig command.
|
|
@@ -11,14 +12,12 @@ export interface SimCreateFunctionUrlConfigCommand {
|
|
|
11
12
|
}
|
|
12
13
|
/**
|
|
13
14
|
* Minimal structural sim Lambda CreateFunctionUrlConfig input.
|
|
14
|
-
*
|
|
15
|
-
* The Cors block real Lambda accepts here is not simulated, so it is left out
|
|
16
|
-
* rather than accepted and ignored.
|
|
17
15
|
*/
|
|
18
16
|
export interface SimCreateFunctionUrlConfigCommandInput {
|
|
19
17
|
readonly FunctionName?: string | undefined;
|
|
20
18
|
readonly AuthType?: SimLambdaFunctionUrlAuthType | undefined;
|
|
21
19
|
readonly InvokeMode?: SimLambdaFunctionUrlInvokeMode | undefined;
|
|
20
|
+
readonly Cors?: SimLambdaFunctionUrlCors | undefined;
|
|
22
21
|
}
|
|
23
22
|
/**
|
|
24
23
|
* Minimal structural sim Lambda CreateFunctionUrlConfig output.
|
package/dist/service/lambda/command/create-function-url-config/create-function-url-config.handler.js
CHANGED
|
@@ -37,6 +37,7 @@ export class CreateFunctionUrlConfigCommandHandler {
|
|
|
37
37
|
simFunction: this.functions.require(functionName),
|
|
38
38
|
authType: this.inputParser.requireAuthType(command.input.AuthType),
|
|
39
39
|
invokeMode: this.inputParser.parseOptionalInvokeMode(command.input.InvokeMode),
|
|
40
|
+
cors: this.inputParser.parseOptionalCors(command.input.Cors),
|
|
40
41
|
});
|
|
41
42
|
return {
|
|
42
43
|
$metadata: {},
|
package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { SimAwsAccountRegionScope } from "../../../aws/sim-aws-account-region-scope.js";
|
|
2
2
|
import { type SimLambdaEventSourceArn } from "../../event-source/sim-lambda-event-source-arn.js";
|
|
3
3
|
import type { SimLambdaFunctionResponseType } from "../../event-source/sim-lambda-event-source-mapping.js";
|
|
4
|
+
import type { SimLambdaStreamRetryLimits } from "../../event-source/sim-lambda-stream-retry-limits.js";
|
|
4
5
|
import type { SimLambdaEventSourceStart } from "../../event-source/sim-lambda-event-source-starting-position.js";
|
|
5
6
|
import type { SimCreateEventSourceMappingCommandInput } from "./event-source-mapping.command.js";
|
|
6
7
|
/**
|
|
@@ -28,6 +29,11 @@ export declare class SimLambdaEventSourceMappingInput {
|
|
|
28
29
|
readonly start: SimLambdaEventSourceStart | undefined;
|
|
29
30
|
readonly enabled: boolean;
|
|
30
31
|
readonly functionResponseTypes: readonly SimLambdaFunctionResponseType[];
|
|
32
|
+
/**
|
|
33
|
+
* When a failed batch stops being delivered again, for a source that leaves
|
|
34
|
+
* the counting to the mapping.
|
|
35
|
+
*/
|
|
36
|
+
readonly streamRetryLimits: SimLambdaStreamRetryLimits | undefined;
|
|
31
37
|
private constructor();
|
|
32
38
|
/**
|
|
33
39
|
* Read a CreateEventSourceMapping request, refusing what this simulation
|
package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.js
CHANGED
|
@@ -28,6 +28,11 @@ export class SimLambdaEventSourceMappingInput {
|
|
|
28
28
|
start;
|
|
29
29
|
enabled;
|
|
30
30
|
functionResponseTypes;
|
|
31
|
+
/**
|
|
32
|
+
* When a failed batch stops being delivered again, for a source that leaves
|
|
33
|
+
* the counting to the mapping.
|
|
34
|
+
*/
|
|
35
|
+
streamRetryLimits;
|
|
31
36
|
constructor(properties) {
|
|
32
37
|
this.eventSourceArn = properties.eventSourceArn;
|
|
33
38
|
this.functionName = properties.functionName;
|
|
@@ -36,6 +41,7 @@ export class SimLambdaEventSourceMappingInput {
|
|
|
36
41
|
this.start = properties.start;
|
|
37
42
|
this.enabled = properties.enabled;
|
|
38
43
|
this.functionResponseTypes = properties.functionResponseTypes;
|
|
44
|
+
this.streamRetryLimits = properties.streamRetryLimits;
|
|
39
45
|
}
|
|
40
46
|
/**
|
|
41
47
|
* Read a CreateEventSourceMapping request, refusing what this simulation
|
|
@@ -55,6 +61,10 @@ export class SimLambdaEventSourceMappingInput {
|
|
|
55
61
|
}),
|
|
56
62
|
enabled: input.Enabled ?? true,
|
|
57
63
|
functionResponseTypes: functionResponseTypesIn(input),
|
|
64
|
+
streamRetryLimits: eventSourceArn.retryLimitRules.limitsIn({
|
|
65
|
+
maximumRetryAttempts: input.MaximumRetryAttempts,
|
|
66
|
+
maximumRecordAgeInSeconds: input.MaximumRecordAgeInSeconds,
|
|
67
|
+
}),
|
|
58
68
|
});
|
|
59
69
|
}
|
|
60
70
|
}
|
package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.js
CHANGED
|
@@ -17,11 +17,6 @@ const unsimulatedInputs = new Map([
|
|
|
17
17
|
"failure destinations are not simulated, so a stream batch that runs out " +
|
|
18
18
|
"of attempts is discarded rather than sent anywhere",
|
|
19
19
|
],
|
|
20
|
-
[
|
|
21
|
-
"MaximumRetryAttempts",
|
|
22
|
-
"the number of times a stream batch is delivered again is fixed",
|
|
23
|
-
],
|
|
24
|
-
["MaximumRecordAgeInSeconds", "record ages are not simulated"],
|
|
25
20
|
[
|
|
26
21
|
"BisectBatchOnFunctionError",
|
|
27
22
|
"batch bisection is not simulated, so a failing stream batch is retried " +
|
|
@@ -51,7 +46,8 @@ const unsimulatedInputs = new Map([
|
|
|
51
46
|
*
|
|
52
47
|
* `StartingPosition` is not among them, because whether a source has one is the
|
|
53
48
|
* source's own rule: a stream is refused without it and a queue is refused with
|
|
54
|
-
* it.
|
|
49
|
+
* it. The two failed-batch limits are left out for the same reason: a stream
|
|
50
|
+
* mapping keeps them and a queue mapping is refused for naming one.
|
|
55
51
|
*/
|
|
56
52
|
const unsupportedEventSourceInputs = new Set([
|
|
57
53
|
"Topics",
|
package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.js
CHANGED
|
@@ -80,6 +80,7 @@ export class CreateEventSourceMappingCommandHandler {
|
|
|
80
80
|
start: input.start,
|
|
81
81
|
enabled: input.enabled,
|
|
82
82
|
functionResponseTypes: input.functionResponseTypes,
|
|
83
|
+
streamRetryLimits: input.streamRetryLimits,
|
|
83
84
|
createdAt: this.properties.background.now(),
|
|
84
85
|
});
|
|
85
86
|
this.properties.mappings.add(mapping);
|
|
@@ -7,6 +7,7 @@ import type { SimLambdaContainerImages } from "../../function/code/image/sim-lam
|
|
|
7
7
|
import type { SimLambdaCodeStore } from "../../function/code/store/sim-lambda-code-store.js";
|
|
8
8
|
import type { SimLambdaVmSdkModuleProvider } from "../../function/code/vm/sdk/sim-lambda-vm-sdk-module-provider.js";
|
|
9
9
|
import type { SimCloudWatchServiceWriter } from "../../../cloudwatch/write/sim-cloudwatch-service-writer.js";
|
|
10
|
+
import type { SimLambdaOutput } from "../../function/logging/sim-lambda-output.js";
|
|
10
11
|
import type { SimLogsServiceWriter } from "../../../logs/write/sim-logs-service-writer.js";
|
|
11
12
|
import type { SimLambdaOutboundHttp } from "../../function/outbound/sim-lambda-outbound-http.js";
|
|
12
13
|
import type { SimLambdaDestinationTargets } from "../../destination/sim-lambda-destination-targets.js";
|
|
@@ -39,6 +40,7 @@ interface SimLambdaFunctionCommandsProperties {
|
|
|
39
40
|
readonly containerImages?: SimLambdaContainerImages | undefined;
|
|
40
41
|
readonly vmSdkModuleProvider?: SimLambdaVmSdkModuleProvider | undefined;
|
|
41
42
|
readonly logs?: SimLogsServiceWriter | undefined;
|
|
43
|
+
readonly output?: SimLambdaOutput | undefined;
|
|
42
44
|
readonly metrics?: SimCloudWatchServiceWriter | undefined;
|
|
43
45
|
readonly outboundHttp?: SimLambdaOutboundHttp | undefined;
|
|
44
46
|
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* One list member of a `Cors` block and the bounds Lambda puts on it.
|
|
3
|
+
*
|
|
4
|
+
* `AllowMethods` is capped at six characters. That is what leaves `OPTIONS`
|
|
5
|
+
* out of the list a caller may state, since Lambda answers the preflight
|
|
6
|
+
* itself.
|
|
7
|
+
*
|
|
8
|
+
* https://docs.aws.amazon.com/lambda/latest/api/API_Cors.html
|
|
9
|
+
*/
|
|
10
|
+
export interface CorsListConstraint {
|
|
11
|
+
readonly member: "AllowHeaders" | "AllowMethods" | "AllowOrigins" | "ExposeHeaders";
|
|
12
|
+
readonly field: string;
|
|
13
|
+
readonly maxItems: number;
|
|
14
|
+
readonly minLength: number;
|
|
15
|
+
readonly maxLength: number;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* The bounds Lambda publishes for each list member of a `Cors` block.
|
|
19
|
+
*/
|
|
20
|
+
export declare const corsListConstraints: readonly CorsListConstraint[];
|
|
21
|
+
/**
|
|
22
|
+
* The bound a list broke, worded as Lambda words it, or nothing when the list
|
|
23
|
+
* is within every bound.
|
|
24
|
+
*/
|
|
25
|
+
export declare function corsListViolation(values: readonly string[], constraint: CorsListConstraint): string | undefined;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The bounds Lambda publishes for each list member of a `Cors` block.
|
|
3
|
+
*/
|
|
4
|
+
export const corsListConstraints = [
|
|
5
|
+
{
|
|
6
|
+
member: "AllowHeaders",
|
|
7
|
+
field: "cors.allowHeaders",
|
|
8
|
+
maxItems: 100,
|
|
9
|
+
minLength: 0,
|
|
10
|
+
maxLength: 1024,
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
member: "AllowMethods",
|
|
14
|
+
field: "cors.allowMethods",
|
|
15
|
+
maxItems: 6,
|
|
16
|
+
minLength: 0,
|
|
17
|
+
maxLength: 6,
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
member: "AllowOrigins",
|
|
21
|
+
field: "cors.allowOrigins",
|
|
22
|
+
maxItems: 100,
|
|
23
|
+
minLength: 1,
|
|
24
|
+
maxLength: 253,
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
member: "ExposeHeaders",
|
|
28
|
+
field: "cors.exposeHeaders",
|
|
29
|
+
maxItems: 100,
|
|
30
|
+
minLength: 0,
|
|
31
|
+
maxLength: 1024,
|
|
32
|
+
},
|
|
33
|
+
];
|
|
34
|
+
/**
|
|
35
|
+
* The bound a list broke, worded as Lambda words it, or nothing when the list
|
|
36
|
+
* is within every bound.
|
|
37
|
+
*/
|
|
38
|
+
export function corsListViolation(values, constraint) {
|
|
39
|
+
const { maxItems, minLength, maxLength } = constraint;
|
|
40
|
+
if (values.length > maxItems) {
|
|
41
|
+
return `Member must have length less than or equal to ${String(maxItems)}`;
|
|
42
|
+
}
|
|
43
|
+
const outOfRange = values.some((value) => value.length < minLength || value.length > maxLength);
|
|
44
|
+
return outOfRange
|
|
45
|
+
? "Member must satisfy constraint: [Member must have length less than " +
|
|
46
|
+
`or equal to ${String(maxLength)}, Member must have length greater ` +
|
|
47
|
+
`than or equal to ${String(minLength)}]`
|
|
48
|
+
: undefined;
|
|
49
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { SimLambdaFunctionUrlCors } from "../../function/url/sim-lambda-function-url-cors.js";
|
|
2
|
+
/**
|
|
3
|
+
* Validates the `Cors` block of Function URL config command input.
|
|
4
|
+
*
|
|
5
|
+
* Every check here is against a bound real Lambda publishes. A configuration
|
|
6
|
+
* this accepts is one the API would have taken. Nothing else is checked,
|
|
7
|
+
* because a refusal the real service would not make costs a working
|
|
8
|
+
* deployment.
|
|
9
|
+
*
|
|
10
|
+
* The check runs before the Function URL is created or updated, leaving a
|
|
11
|
+
* refused configuration with the URL as it was.
|
|
12
|
+
*/
|
|
13
|
+
export declare class FunctionUrlCorsInputParser {
|
|
14
|
+
/**
|
|
15
|
+
* Parse an optional `Cors` block, which every Function URL config command
|
|
16
|
+
* allows a caller to leave out.
|
|
17
|
+
*/
|
|
18
|
+
parseOptional(cors: SimLambdaFunctionUrlCors | undefined): SimLambdaFunctionUrlCors | undefined;
|
|
19
|
+
private checkMaxAge;
|
|
20
|
+
private maxAgeViolation;
|
|
21
|
+
/**
|
|
22
|
+
* Fail the way Lambda fails a request that broke one bound.
|
|
23
|
+
*/
|
|
24
|
+
private refuse;
|
|
25
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { SimLambdaValidationException } from "../../error/sim-lambda.error.js";
|
|
2
|
+
import { corsListConstraints, corsListViolation, } from "./function-url-cors-constraints.js";
|
|
3
|
+
const maxAgeSeconds = 86_400;
|
|
4
|
+
/**
|
|
5
|
+
* Validates the `Cors` block of Function URL config command input.
|
|
6
|
+
*
|
|
7
|
+
* Every check here is against a bound real Lambda publishes. A configuration
|
|
8
|
+
* this accepts is one the API would have taken. Nothing else is checked,
|
|
9
|
+
* because a refusal the real service would not make costs a working
|
|
10
|
+
* deployment.
|
|
11
|
+
*
|
|
12
|
+
* The check runs before the Function URL is created or updated, leaving a
|
|
13
|
+
* refused configuration with the URL as it was.
|
|
14
|
+
*/
|
|
15
|
+
export class FunctionUrlCorsInputParser {
|
|
16
|
+
/**
|
|
17
|
+
* Parse an optional `Cors` block, which every Function URL config command
|
|
18
|
+
* allows a caller to leave out.
|
|
19
|
+
*/
|
|
20
|
+
parseOptional(cors) {
|
|
21
|
+
if (cors === undefined) {
|
|
22
|
+
return undefined;
|
|
23
|
+
}
|
|
24
|
+
for (const constraint of corsListConstraints) {
|
|
25
|
+
const values = cors[constraint.member];
|
|
26
|
+
if (values !== undefined) {
|
|
27
|
+
this.refuse(`[${values.join(", ")}]`, constraint.field, corsListViolation(values, constraint));
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
this.checkMaxAge(cors.MaxAge);
|
|
31
|
+
return cors;
|
|
32
|
+
}
|
|
33
|
+
checkMaxAge(maxAge) {
|
|
34
|
+
if (maxAge === undefined) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
this.refuse(String(maxAge), "cors.maxAge", this.maxAgeViolation(maxAge));
|
|
38
|
+
}
|
|
39
|
+
maxAgeViolation(maxAge) {
|
|
40
|
+
if (maxAge > maxAgeSeconds) {
|
|
41
|
+
return `Member must have value less than or equal to ${String(maxAgeSeconds)}`;
|
|
42
|
+
}
|
|
43
|
+
return maxAge < 0
|
|
44
|
+
? "Member must have value greater than or equal to 0"
|
|
45
|
+
: undefined;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Fail the way Lambda fails a request that broke one bound.
|
|
49
|
+
*/
|
|
50
|
+
refuse(value, field, violation) {
|
|
51
|
+
if (violation === undefined) {
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
throw new SimLambdaValidationException(`1 validation error detected: Value '${value}' at '${field}' failed ` +
|
|
55
|
+
`to satisfy constraint: ${violation}`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SimLambdaFunctionUrlCors } from "../../function/url/sim-lambda-function-url-cors.js";
|
|
1
2
|
import type { SimLambdaFunctionUrlAuthType, SimLambdaFunctionUrlInvokeMode } from "../../function/url/sim-lambda-function-url.js";
|
|
2
3
|
/**
|
|
3
4
|
* Validates the enumerated values in Function URL config command input.
|
|
@@ -7,6 +8,7 @@ import type { SimLambdaFunctionUrlAuthType, SimLambdaFunctionUrlInvokeMode } fro
|
|
|
7
8
|
* runtime and reported the way real Lambda reports a bad enum member.
|
|
8
9
|
*/
|
|
9
10
|
export declare class FunctionUrlInputParser {
|
|
11
|
+
private readonly corsParser;
|
|
10
12
|
/**
|
|
11
13
|
* Parse a required AuthType, as CreateFunctionUrlConfig requires one.
|
|
12
14
|
*/
|
|
@@ -19,5 +21,10 @@ export declare class FunctionUrlInputParser {
|
|
|
19
21
|
* Parse an optional InvokeMode, which defaults to BUFFERED on real Lambda.
|
|
20
22
|
*/
|
|
21
23
|
parseOptionalInvokeMode(value: string | undefined): SimLambdaFunctionUrlInvokeMode | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* Parse an optional `Cors` block, which every Function URL config command
|
|
26
|
+
* allows a caller to leave out.
|
|
27
|
+
*/
|
|
28
|
+
parseOptionalCors(value: SimLambdaFunctionUrlCors | undefined): SimLambdaFunctionUrlCors | undefined;
|
|
22
29
|
private parseAuthType;
|
|
23
30
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SimLambdaValidationException } from "../../error/sim-lambda.error.js";
|
|
2
|
+
import { FunctionUrlCorsInputParser } from "./function-url-cors-input.js";
|
|
2
3
|
const authTypes = ["NONE", "AWS_IAM"];
|
|
3
4
|
const invokeModes = ["BUFFERED", "RESPONSE_STREAM"];
|
|
4
5
|
/**
|
|
@@ -9,6 +10,7 @@ const invokeModes = ["BUFFERED", "RESPONSE_STREAM"];
|
|
|
9
10
|
* runtime and reported the way real Lambda reports a bad enum member.
|
|
10
11
|
*/
|
|
11
12
|
export class FunctionUrlInputParser {
|
|
13
|
+
corsParser = new FunctionUrlCorsInputParser();
|
|
12
14
|
/**
|
|
13
15
|
* Parse a required AuthType, as CreateFunctionUrlConfig requires one.
|
|
14
16
|
*/
|
|
@@ -39,6 +41,13 @@ export class FunctionUrlInputParser {
|
|
|
39
41
|
}
|
|
40
42
|
return value;
|
|
41
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Parse an optional `Cors` block, which every Function URL config command
|
|
46
|
+
* allows a caller to leave out.
|
|
47
|
+
*/
|
|
48
|
+
parseOptionalCors(value) {
|
|
49
|
+
return this.corsParser.parseOptional(value);
|
|
50
|
+
}
|
|
42
51
|
parseAuthType(value) {
|
|
43
52
|
if (!authTypes.includes(value)) {
|
|
44
53
|
throw new SimLambdaValidationException(`1 validation error detected: Value '${value}' at 'authType' failed to satisfy constraint: Member must satisfy enum value set: [${authTypes.join(", ")}]`);
|