@kensio/yulin 1.21.3 → 1.21.5
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/assets/sim-cdk-assets-publisher.d.ts +18 -13
- package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.js +16 -24
- 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/cdk/sim-cdk-cloud-assembly.factory.d.ts +12 -0
- package/dist/service/cloudformation/cdk/sim-cdk-cloud-assembly.factory.js +16 -7
- 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.d.ts +3 -0
- package/dist/service/cloudformation/command/create-stack/create-stack.handler.js +16 -13
- 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.d.ts +6 -0
- package/dist/service/cloudformation/command/update-stack/update-stack.handler.js +15 -16
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-deployer.js +2 -1
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-options-deployed.d.ts +10 -0
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-options-deployed.js +14 -0
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-plan.d.ts +11 -1
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-plan.js +3 -2
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-stack-options.d.ts +5 -8
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-stack-options.js +0 -14
- package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.d.ts +9 -0
- package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.js +2 -0
- package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.d.ts +10 -0
- package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.js +2 -1
- package/dist/service/cloudformation/deploy/sim-cfn-template-file-updater.js +1 -0
- 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-deploy-context.d.ts +47 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-deploy-context.js +46 -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 +53 -20
- package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js +79 -32
- package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts +28 -16
- package/dist/service/cloudformation/stack/sim-cfn-stack.js +60 -32
- package/dist/service/cloudformation/stack/sim-cfn-stack.type.d.ts +21 -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-maker.d.ts +31 -0
- package/dist/service/s3/bucket/sim-s3-bucket-maker.js +41 -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-bucket/create-bucket.handler.d.ts +2 -2
- package/dist/service/s3/command/create-bucket/create-bucket.handler.js +4 -12
- 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 +10 -0
- package/dist/service/s3/sim-s3-commands.js +13 -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 +28 -0
- package/dist/service/s3/sim-s3.js +38 -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 +831 -67
- 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 +8 -2
|
@@ -9,6 +9,10 @@ import { simS3ConditionContext } from "./sim-s3-condition-context.js";
|
|
|
9
9
|
* supplied as the condition keys a Bucket policy is usually written against.
|
|
10
10
|
* An omitted caller is passed through to sim IAM, so Account root fallback
|
|
11
11
|
* stays owned by IAM.
|
|
12
|
+
*
|
|
13
|
+
* The resolved caller is answered rather than discarded, because this is the
|
|
14
|
+
* only point in a request where the principal has been worked out, and an
|
|
15
|
+
* Object event notification has to say who caused it.
|
|
12
16
|
*/
|
|
13
17
|
export function simS3AuthorizeAction(request) {
|
|
14
18
|
const { iam, action, resource, bucket, options } = request;
|
|
@@ -27,4 +31,5 @@ export function simS3AuthorizeAction(request) {
|
|
|
27
31
|
resource,
|
|
28
32
|
});
|
|
29
33
|
}
|
|
34
|
+
return decision.caller;
|
|
30
35
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { SimClock } from "../../../../util/clock/sim-clock.js";
|
|
2
2
|
import { SimS3Object } from "../../object/s3-object.js";
|
|
3
|
+
import type { SimS3ServerSideEncryption } from "../../object/s3-server-side-encryption.js";
|
|
3
4
|
import type { SimCopyObjectCommandInput } from "./copy-object.command.js";
|
|
4
5
|
interface CopyObjectBuilderProperties {
|
|
5
6
|
readonly clock: SimClock;
|
|
@@ -27,7 +28,15 @@ export declare class CopyObjectBuilder {
|
|
|
27
28
|
* its own to carry. An Object uploaded in parts keeps the multipart ETag it
|
|
28
29
|
* was given, and real S3 rewrites a copy of one as a single part. The copy's
|
|
29
30
|
* ETag is therefore the plain digest of its bytes.
|
|
31
|
+
*
|
|
32
|
+
* The storage class and the encryption come from the request and the
|
|
33
|
+
* destination Bucket. Real S3 stores a copy in the default class where the
|
|
34
|
+
* request names none, whatever class the source was in.
|
|
35
|
+
*
|
|
36
|
+
* The tags come from the source unless the request asked to replace them,
|
|
37
|
+
* which is the other way round from the metadata: real S3 copies tags by
|
|
38
|
+
* default and takes `TaggingDirective: REPLACE` to be told otherwise.
|
|
30
39
|
*/
|
|
31
|
-
build(input: SimCopyObjectCommandInput, key: string, source: SimS3Object): SimS3Object;
|
|
40
|
+
build(input: SimCopyObjectCommandInput, key: string, source: SimS3Object, destinationEncryption: SimS3ServerSideEncryption): SimS3Object;
|
|
32
41
|
}
|
|
33
42
|
export {};
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { SimS3Object } from "../../object/s3-object.js";
|
|
2
2
|
import { simS3WriteMetadata } from "../../object/s3-write-metadata.js";
|
|
3
|
+
import { simS3WriteEncryption, simS3WriteStorageClass, } from "../../object/s3-write-storage.js";
|
|
4
|
+
import { simS3WriteTags } from "../../object/s3-write-tagging.js";
|
|
3
5
|
/**
|
|
4
6
|
* Builds the Object a copy stores at its destination.
|
|
5
7
|
*
|
|
@@ -25,15 +27,29 @@ export class CopyObjectBuilder {
|
|
|
25
27
|
* its own to carry. An Object uploaded in parts keeps the multipart ETag it
|
|
26
28
|
* was given, and real S3 rewrites a copy of one as a single part. The copy's
|
|
27
29
|
* ETag is therefore the plain digest of its bytes.
|
|
30
|
+
*
|
|
31
|
+
* The storage class and the encryption come from the request and the
|
|
32
|
+
* destination Bucket. Real S3 stores a copy in the default class where the
|
|
33
|
+
* request names none, whatever class the source was in.
|
|
34
|
+
*
|
|
35
|
+
* The tags come from the source unless the request asked to replace them,
|
|
36
|
+
* which is the other way round from the metadata: real S3 copies tags by
|
|
37
|
+
* default and takes `TaggingDirective: REPLACE` to be told otherwise.
|
|
28
38
|
*/
|
|
29
|
-
build(input, key, source) {
|
|
39
|
+
build(input, key, source, destinationEncryption) {
|
|
40
|
+
const storageClass = simS3WriteStorageClass(input, "CopyObjectCommand");
|
|
30
41
|
return new SimS3Object({
|
|
31
42
|
key,
|
|
32
43
|
body: Buffer.from(source.body),
|
|
33
44
|
metadata: input.MetadataDirective === "REPLACE"
|
|
34
45
|
? simS3WriteMetadata(input)
|
|
35
46
|
: source.metadata,
|
|
47
|
+
tags: input.TaggingDirective === "REPLACE"
|
|
48
|
+
? simS3WriteTags(input, "CopyObjectCommand")
|
|
49
|
+
: source.tags,
|
|
36
50
|
lastModified: this.clock.now(),
|
|
51
|
+
...(storageClass !== undefined && { storageClass }),
|
|
52
|
+
serverSideEncryption: simS3WriteEncryption(input, destinationEncryption, "CopyObjectCommand"),
|
|
37
53
|
});
|
|
38
54
|
}
|
|
39
55
|
}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { SimResponseMetadata } from "../../../aws/metadata/response-metadata.type.js";
|
|
2
2
|
import type { SimS3ObjectWriteMetadata } from "../../object/s3-write-metadata.js";
|
|
3
|
+
import type { SimS3ObjectWriteStorage } from "../../object/s3-write-storage.js";
|
|
4
|
+
import type { SimS3ObjectWriteTagging } from "../../object/s3-write-tagging.js";
|
|
3
5
|
/**
|
|
4
6
|
* Minimal structural sim S3 CopyObject command.
|
|
5
7
|
*/
|
|
@@ -13,12 +15,18 @@ export interface SimCopyObjectCommand {
|
|
|
13
15
|
* apply to the destination Object under `MetadataDirective: REPLACE`. Under
|
|
14
16
|
* the default `COPY` they are ignored, as real S3 ignores them.
|
|
15
17
|
*/
|
|
16
|
-
export interface SimCopyObjectCommandInput extends SimS3ObjectWriteMetadata {
|
|
18
|
+
export interface SimCopyObjectCommandInput extends SimS3ObjectWriteMetadata, SimS3ObjectWriteStorage, SimS3ObjectWriteTagging {
|
|
17
19
|
readonly Bucket?: string | undefined;
|
|
18
20
|
readonly Key?: string | undefined;
|
|
19
21
|
/** The source Object, as `sourceBucket/sourceKey`, URL-encoded. */
|
|
20
22
|
readonly CopySource?: string | undefined;
|
|
21
23
|
readonly MetadataDirective?: string | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* Whether the copy carries the source Object's tags or the request's own.
|
|
26
|
+
* `REPLACE` takes the request's `Tagging`, and anything else leaves the copy
|
|
27
|
+
* carrying what the source carried.
|
|
28
|
+
*/
|
|
29
|
+
readonly TaggingDirective?: string | undefined;
|
|
22
30
|
}
|
|
23
31
|
/**
|
|
24
32
|
* Minimal structural sim S3 CopyObject output.
|
|
@@ -31,6 +39,8 @@ export interface SimCopyObjectCommandInput extends SimS3ObjectWriteMetadata {
|
|
|
31
39
|
export interface SimCopyObjectCommandOutput {
|
|
32
40
|
readonly CopyObjectResult?: SimCopyObjectResult;
|
|
33
41
|
readonly VersionId?: string | undefined;
|
|
42
|
+
/** The encryption S3 stamped on the copy it stored. */
|
|
43
|
+
readonly ServerSideEncryption?: string | undefined;
|
|
34
44
|
readonly $metadata: SimResponseMetadata;
|
|
35
45
|
}
|
|
36
46
|
/**
|
|
@@ -56,7 +56,7 @@ export class CopyObjectCommandHandler {
|
|
|
56
56
|
this.sourceAuthorizer.authorize(source, from.key, options);
|
|
57
57
|
const caller = this.destinationAuthorizer.authorize(destination, key, options);
|
|
58
58
|
const stored = await simS3CopySourceObject(source, from.key);
|
|
59
|
-
const object = this.objectBuilder.build(command.input, key, stored);
|
|
59
|
+
const object = this.objectBuilder.build(command.input, key, stored, destination.getEncryption().algorithm);
|
|
60
60
|
const version = await destination.putObject(object);
|
|
61
61
|
this.notifications.objectCreated({
|
|
62
62
|
bucket: destination,
|
|
@@ -71,6 +71,7 @@ export class CopyObjectCommandHandler {
|
|
|
71
71
|
LastModified: object.lastModified,
|
|
72
72
|
},
|
|
73
73
|
...(version !== undefined && { VersionId: version.versionId }),
|
|
74
|
+
ServerSideEncryption: object.serverSideEncryption,
|
|
74
75
|
$metadata: {},
|
|
75
76
|
};
|
|
76
77
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { CommandHandler } from "../../../../command/command-handler.js";
|
|
2
2
|
import type { SimCreateBucketCommand, SimCreateBucketCommandOutput } from "./create-bucket.command.js";
|
|
3
|
-
import { SimS3Bucket } from "../../bucket/sim-s3-bucket.js";
|
|
3
|
+
import type { SimS3Bucket, SimS3BucketName } from "../../bucket/sim-s3-bucket.js";
|
|
4
4
|
import type { SimS3GlobalRegistry } from "../../sim-s3-global-registry.js";
|
|
5
5
|
import type { SimAwsAccountRegionScope } from "../../../aws/sim-aws-account-region-scope.js";
|
|
6
6
|
import { type BackgroundScheduler } from "../../../../util/background/background.js";
|
|
@@ -8,7 +8,7 @@ import { type SimIamInterServiceAuthZ } from "../../../iam/authorize/sim-iam-int
|
|
|
8
8
|
import type { SimS3RequestOptions } from "../sim-s3-request-options.js";
|
|
9
9
|
interface CreateBucketCommandHandlerProperties {
|
|
10
10
|
readonly accountRegionScope: SimAwsAccountRegionScope;
|
|
11
|
-
readonly buckets: Map<
|
|
11
|
+
readonly buckets: Map<SimS3BucketName, SimS3Bucket>;
|
|
12
12
|
readonly s3GlobalRegistry: SimS3GlobalRegistry;
|
|
13
13
|
readonly iam?: SimIamInterServiceAuthZ;
|
|
14
14
|
readonly background?: BackgroundScheduler;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { SimS3Bucket } from "../../bucket/sim-s3-bucket.js";
|
|
2
1
|
import { assertDefined } from "../../../../util/type-guard/defined.js";
|
|
3
2
|
import { BackgroundTasks, } from "../../../../util/background/background.js";
|
|
4
|
-
import {
|
|
3
|
+
import { SimS3BucketMaker } from "../../bucket/sim-s3-bucket-maker.js";
|
|
5
4
|
import { validateS3BucketName } from "../../bucket/validate/validate-s3-bucket-name.js";
|
|
6
5
|
import { SimIamAllowAllAuth, } from "../../../iam/authorize/sim-iam-inter-service-auth-z.js";
|
|
7
6
|
import { SimIamAccessDenied } from "../../../iam/error/sim-iam.error.js";
|
|
@@ -49,19 +48,12 @@ export class CreateBucketCommandHandler {
|
|
|
49
48
|
resource,
|
|
50
49
|
});
|
|
51
50
|
}
|
|
52
|
-
|
|
51
|
+
new SimS3BucketMaker({
|
|
53
52
|
accountRegionScope: this.accountRegionScope,
|
|
54
53
|
buckets: this.buckets,
|
|
55
54
|
s3GlobalRegistry: this.s3GlobalRegistry,
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
const bucket = new SimS3Bucket({
|
|
59
|
-
bucketName,
|
|
60
|
-
accountRegionScope: this.accountRegionScope,
|
|
61
|
-
clock: this.background,
|
|
62
|
-
});
|
|
63
|
-
this.buckets.set(bucketName, bucket);
|
|
64
|
-
this.s3GlobalRegistry.registerBucket(bucketName, this.accountRegionScope);
|
|
55
|
+
background: this.background,
|
|
56
|
+
}).make(bucketName);
|
|
65
57
|
return {
|
|
66
58
|
BucketArn: resource,
|
|
67
59
|
Location: `/${bucketName}`,
|
package/dist/service/s3/command/create-multipart-upload/create-multipart-upload.command.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { SimResponseMetadata } from "../../../aws/metadata/response-metadata.type.js";
|
|
2
2
|
import type { SimS3ObjectWriteMetadata } from "../../object/s3-write-metadata.js";
|
|
3
|
+
import type { SimS3ObjectWriteStorage } from "../../object/s3-write-storage.js";
|
|
4
|
+
import type { SimS3ObjectWriteTagging } from "../../object/s3-write-tagging.js";
|
|
3
5
|
/**
|
|
4
6
|
* Minimal structural sim S3 CreateMultipartUpload command.
|
|
5
7
|
*/
|
|
@@ -12,7 +14,7 @@ export interface SimCreateMultipartUploadCommand {
|
|
|
12
14
|
* This is the request that says what the Object will be, so it carries the same
|
|
13
15
|
* metadata members a `PutObject` does. None of the Object's bytes arrive here.
|
|
14
16
|
*/
|
|
15
|
-
export interface SimCreateMultipartUploadCommandInput extends SimS3ObjectWriteMetadata {
|
|
17
|
+
export interface SimCreateMultipartUploadCommandInput extends SimS3ObjectWriteMetadata, SimS3ObjectWriteStorage, SimS3ObjectWriteTagging {
|
|
16
18
|
readonly Bucket?: string | undefined;
|
|
17
19
|
readonly Key?: string | undefined;
|
|
18
20
|
}
|
|
@@ -23,6 +25,8 @@ export interface SimCreateMultipartUploadCommandInput extends SimS3ObjectWriteMe
|
|
|
23
25
|
*/
|
|
24
26
|
export interface SimCreateMultipartUploadCommandOutput {
|
|
25
27
|
readonly Bucket?: string;
|
|
28
|
+
/** The encryption S3 will stamp on the Object the upload completes into. */
|
|
29
|
+
readonly ServerSideEncryption?: string | undefined;
|
|
26
30
|
readonly Key?: string;
|
|
27
31
|
readonly UploadId?: string;
|
|
28
32
|
readonly $metadata: SimResponseMetadata;
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { assertDefined } from "../../../../util/type-guard/defined.js";
|
|
2
2
|
import { simS3WriteMetadata } from "../../object/s3-write-metadata.js";
|
|
3
|
+
import { simS3WriteEncryption, simS3WriteStorageClass, } from "../../object/s3-write-storage.js";
|
|
4
|
+
import { simS3WriteTags } from "../../object/s3-write-tagging.js";
|
|
3
5
|
import { SimS3MultipartAccess, } from "../multipart/sim-s3-multipart-access.js";
|
|
4
6
|
/**
|
|
5
7
|
* Simulated S3 CreateMultipartUploadCommand handler.
|
|
@@ -22,15 +24,20 @@ export class CreateMultipartUploadCommandHandler {
|
|
|
22
24
|
assertDefined(Bucket, "CreateMultipartUploadCommand.input.Bucket");
|
|
23
25
|
assertDefined(Key, "CreateMultipartUploadCommand.input.Key");
|
|
24
26
|
const { bucket } = await this.access.reach(Bucket, Key, options);
|
|
27
|
+
const storageClass = simS3WriteStorageClass(command.input, "CreateMultipartUploadCommand");
|
|
25
28
|
const upload = bucket.getMultipartUploads().start({
|
|
26
29
|
key: Key,
|
|
27
30
|
metadata: simS3WriteMetadata(command.input),
|
|
31
|
+
tags: simS3WriteTags(command.input, "CreateMultipartUploadCommand"),
|
|
28
32
|
initiated: this.access.now(),
|
|
33
|
+
...(storageClass !== undefined && { storageClass }),
|
|
34
|
+
serverSideEncryption: simS3WriteEncryption(command.input, bucket.getEncryption().algorithm, "CreateMultipartUploadCommand"),
|
|
29
35
|
});
|
|
30
36
|
return {
|
|
31
37
|
Bucket: bucket.bucketName,
|
|
32
38
|
Key: upload.key,
|
|
33
39
|
UploadId: upload.uploadId,
|
|
40
|
+
ServerSideEncryption: upload.serverSideEncryption,
|
|
34
41
|
$metadata: {},
|
|
35
42
|
};
|
|
36
43
|
}
|
package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.command.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { SimResponseMetadata } from "../../../aws/metadata/response-metadata.type.js";
|
|
2
|
+
/**
|
|
3
|
+
* Minimal structural sim S3 DeleteBucketEncryption command.
|
|
4
|
+
*/
|
|
5
|
+
export interface SimDeleteBucketEncryptionCommand {
|
|
6
|
+
readonly input: SimDeleteBucketEncryptionCommandInput;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Minimal structural sim S3 DeleteBucketEncryption input.
|
|
10
|
+
*/
|
|
11
|
+
export interface SimDeleteBucketEncryptionCommandInput {
|
|
12
|
+
readonly Bucket?: string | undefined;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Minimal structural sim S3 DeleteBucketEncryption output.
|
|
16
|
+
*/
|
|
17
|
+
export interface SimDeleteBucketEncryptionCommandOutput {
|
|
18
|
+
readonly $metadata: SimResponseMetadata;
|
|
19
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.handler.d.ts
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { CommandHandler } from "../../../../command/command-handler.js";
|
|
2
|
+
import { type BackgroundScheduler } from "../../../../util/background/background.js";
|
|
3
|
+
import { type SimIamInterServiceAuthZ } from "../../../iam/authorize/sim-iam-inter-service-auth-z.js";
|
|
4
|
+
import type { SimS3Bucket, SimS3BucketName } from "../../bucket/sim-s3-bucket.js";
|
|
5
|
+
import type { SimS3RequestOptions } from "../sim-s3-request-options.js";
|
|
6
|
+
import type { SimDeleteBucketEncryptionCommand, SimDeleteBucketEncryptionCommandOutput } from "./delete-bucket-encryption.command.js";
|
|
7
|
+
interface DeleteBucketEncryptionHandlerProperties {
|
|
8
|
+
readonly buckets: Map<SimS3BucketName, SimS3Bucket>;
|
|
9
|
+
readonly iam?: SimIamInterServiceAuthZ;
|
|
10
|
+
readonly background?: BackgroundScheduler;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Simulated S3 DeleteBucketEncryptionCommand handler.
|
|
14
|
+
*
|
|
15
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/DeleteBucketEncryptionCommand/
|
|
16
|
+
*/
|
|
17
|
+
export declare class DeleteBucketEncryptionCommandHandler implements CommandHandler<SimDeleteBucketEncryptionCommand, SimDeleteBucketEncryptionCommandOutput> {
|
|
18
|
+
private readonly buckets;
|
|
19
|
+
private readonly authorizer;
|
|
20
|
+
private readonly background;
|
|
21
|
+
constructor(properties: DeleteBucketEncryptionHandlerProperties);
|
|
22
|
+
/**
|
|
23
|
+
* Authorize and put a Bucket back to the encryption every Bucket has.
|
|
24
|
+
*
|
|
25
|
+
* Real S3 leaves the Bucket SSE-S3 encrypted rather than unencrypted, and
|
|
26
|
+
* the request is idempotent, so this reports nothing about what was there.
|
|
27
|
+
*/
|
|
28
|
+
handle(command: SimDeleteBucketEncryptionCommand, options?: SimS3RequestOptions): Promise<SimDeleteBucketEncryptionCommandOutput>;
|
|
29
|
+
}
|
|
30
|
+
export {};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { BackgroundTasks, } from "../../../../util/background/background.js";
|
|
2
|
+
import { assertDefined } from "../../../../util/type-guard/defined.js";
|
|
3
|
+
import { SimIamAllowAllAuth, } from "../../../iam/authorize/sim-iam-inter-service-auth-z.js";
|
|
4
|
+
import { SimS3EncryptionAuthorizer } from "../encryption/sim-s3-encryption-authorizer.js";
|
|
5
|
+
import { requireSimS3Bucket } from "../require-sim-s3-bucket.js";
|
|
6
|
+
/**
|
|
7
|
+
* Simulated S3 DeleteBucketEncryptionCommand handler.
|
|
8
|
+
*
|
|
9
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/DeleteBucketEncryptionCommand/
|
|
10
|
+
*/
|
|
11
|
+
export class DeleteBucketEncryptionCommandHandler {
|
|
12
|
+
buckets;
|
|
13
|
+
authorizer;
|
|
14
|
+
background;
|
|
15
|
+
constructor(properties) {
|
|
16
|
+
const { buckets, iam = new SimIamAllowAllAuth(), background = new BackgroundTasks(), } = properties;
|
|
17
|
+
this.buckets = buckets;
|
|
18
|
+
this.authorizer = new SimS3EncryptionAuthorizer({ iam });
|
|
19
|
+
this.background = background;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Authorize and put a Bucket back to the encryption every Bucket has.
|
|
23
|
+
*
|
|
24
|
+
* Real S3 leaves the Bucket SSE-S3 encrypted rather than unencrypted, and
|
|
25
|
+
* the request is idempotent, so this reports nothing about what was there.
|
|
26
|
+
*/
|
|
27
|
+
async handle(command, options) {
|
|
28
|
+
assertDefined(command.input.Bucket, "DeleteBucketEncryptionCommand.input.Bucket");
|
|
29
|
+
const bucketName = command.input.Bucket;
|
|
30
|
+
const bucket = requireSimS3Bucket(this.buckets, bucketName);
|
|
31
|
+
await this.background.sequence();
|
|
32
|
+
this.authorizer.authorizeWrite(bucket, options);
|
|
33
|
+
bucket.deleteEncryption();
|
|
34
|
+
return {
|
|
35
|
+
$metadata: {},
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { SimResponseMetadata } from "../../../aws/metadata/response-metadata.type.js";
|
|
2
|
+
/**
|
|
3
|
+
* Minimal structural sim S3 DeleteObjectTagging command.
|
|
4
|
+
*/
|
|
5
|
+
export interface SimDeleteObjectTaggingCommand {
|
|
6
|
+
readonly input: SimDeleteObjectTaggingCommandInput;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Minimal structural sim S3 DeleteObjectTagging input.
|
|
10
|
+
*/
|
|
11
|
+
export interface SimDeleteObjectTaggingCommandInput {
|
|
12
|
+
readonly Bucket?: string | undefined;
|
|
13
|
+
readonly Key?: string | undefined;
|
|
14
|
+
/** The version to untag. A request naming none untags the current one. */
|
|
15
|
+
readonly VersionId?: string | undefined;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Minimal structural sim S3 DeleteObjectTagging output.
|
|
19
|
+
*/
|
|
20
|
+
export interface SimDeleteObjectTaggingCommandOutput {
|
|
21
|
+
readonly VersionId?: string | undefined;
|
|
22
|
+
readonly $metadata: SimResponseMetadata;
|
|
23
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { CommandHandler } from "../../../../command/command-handler.js";
|
|
2
|
+
import { type SimS3ObjectTaggingAccessProperties } from "../tagging/sim-s3-object-tagging-access.js";
|
|
3
|
+
import type { SimS3RequestOptions } from "../sim-s3-request-options.js";
|
|
4
|
+
import type { SimDeleteObjectTaggingCommand, SimDeleteObjectTaggingCommandOutput } from "./delete-object-tagging.command.js";
|
|
5
|
+
/**
|
|
6
|
+
* Simulated S3 DeleteObjectTaggingCommand handler.
|
|
7
|
+
*
|
|
8
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/DeleteObjectTaggingCommand/
|
|
9
|
+
*/
|
|
10
|
+
export declare class DeleteObjectTaggingCommandHandler implements CommandHandler<SimDeleteObjectTaggingCommand, SimDeleteObjectTaggingCommandOutput> {
|
|
11
|
+
private readonly access;
|
|
12
|
+
constructor(properties: SimS3ObjectTaggingAccessProperties);
|
|
13
|
+
/**
|
|
14
|
+
* Take every tag off an Object, or off the version the request named.
|
|
15
|
+
*
|
|
16
|
+
* Real S3 removes the whole tag set and answers the same way whether or not
|
|
17
|
+
* the Object was carrying one, so an Object nobody had tagged is not an
|
|
18
|
+
* error. The event is raised either way, because the request is what real S3
|
|
19
|
+
* raises it for.
|
|
20
|
+
*/
|
|
21
|
+
handle(command: SimDeleteObjectTaggingCommand, options?: SimS3RequestOptions): Promise<SimDeleteObjectTaggingCommandOutput>;
|
|
22
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { SimS3ObjectTagSet } from "../../object/s3-object-tags.js";
|
|
2
|
+
import { SimS3ObjectTaggingAccess, } from "../tagging/sim-s3-object-tagging-access.js";
|
|
3
|
+
/**
|
|
4
|
+
* Simulated S3 DeleteObjectTaggingCommand handler.
|
|
5
|
+
*
|
|
6
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/DeleteObjectTaggingCommand/
|
|
7
|
+
*/
|
|
8
|
+
export class DeleteObjectTaggingCommandHandler {
|
|
9
|
+
access;
|
|
10
|
+
constructor(properties) {
|
|
11
|
+
this.access = new SimS3ObjectTaggingAccess(properties);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Take every tag off an Object, or off the version the request named.
|
|
15
|
+
*
|
|
16
|
+
* Real S3 removes the whole tag set and answers the same way whether or not
|
|
17
|
+
* the Object was carrying one, so an Object nobody had tagged is not an
|
|
18
|
+
* error. The event is raised either way, because the request is what real S3
|
|
19
|
+
* raises it for.
|
|
20
|
+
*/
|
|
21
|
+
async handle(command, options) {
|
|
22
|
+
const { bucket, taggable, caller } = await this.access.reach({
|
|
23
|
+
commandName: "DeleteObjectTaggingCommand",
|
|
24
|
+
action: "s3:DeleteObjectTagging",
|
|
25
|
+
input: command.input,
|
|
26
|
+
}, options);
|
|
27
|
+
const object = await taggable.retag(SimS3ObjectTagSet.empty());
|
|
28
|
+
this.access.notifications.objectTagged({
|
|
29
|
+
bucket,
|
|
30
|
+
object,
|
|
31
|
+
caller,
|
|
32
|
+
eventName: "s3:ObjectTagging:Delete",
|
|
33
|
+
versionId: taggable.versionId,
|
|
34
|
+
});
|
|
35
|
+
return {
|
|
36
|
+
...(taggable.versionId !== undefined && {
|
|
37
|
+
VersionId: taggable.versionId,
|
|
38
|
+
}),
|
|
39
|
+
$metadata: {},
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { SimIamInterServiceAuthZ } from "../../../iam/authorize/sim-iam-inter-service-auth-z.js";
|
|
2
|
+
import type { SimS3Bucket } from "../../bucket/sim-s3-bucket.js";
|
|
3
|
+
import type { SimS3RequestOptions } from "../sim-s3-request-options.js";
|
|
4
|
+
interface SimS3EncryptionAuthorizerProperties {
|
|
5
|
+
readonly iam: SimIamInterServiceAuthZ;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Applies IAM authorization to the S3 Bucket encryption commands.
|
|
9
|
+
*
|
|
10
|
+
* Two actions for three commands. Real S3 governs both applying and removing a
|
|
11
|
+
* default encryption configuration with s3:PutEncryptionConfiguration, since
|
|
12
|
+
* removing one is applying the default in its place.
|
|
13
|
+
*/
|
|
14
|
+
export declare class SimS3EncryptionAuthorizer {
|
|
15
|
+
private static readonly readAction;
|
|
16
|
+
private static readonly writeAction;
|
|
17
|
+
private readonly iam;
|
|
18
|
+
constructor(properties: SimS3EncryptionAuthorizerProperties);
|
|
19
|
+
/**
|
|
20
|
+
* Ensure the caller may read the Bucket's default encryption.
|
|
21
|
+
*/
|
|
22
|
+
authorizeRead(bucket: SimS3Bucket, options?: SimS3RequestOptions): void;
|
|
23
|
+
/**
|
|
24
|
+
* Ensure the caller may change the Bucket's default encryption.
|
|
25
|
+
*/
|
|
26
|
+
authorizeWrite(bucket: SimS3Bucket, options?: SimS3RequestOptions): void;
|
|
27
|
+
private authorize;
|
|
28
|
+
}
|
|
29
|
+
export {};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { SimIamAccessDenied } from "../../../iam/error/sim-iam.error.js";
|
|
2
|
+
import { simS3BucketArn } from "../../bucket/sim-s3-bucket-arn.js";
|
|
3
|
+
import { simS3BucketResourcePolicies } from "../authorize/sim-s3-bucket-resource-policies.js";
|
|
4
|
+
import { simS3ConditionContext } from "../authorize/sim-s3-condition-context.js";
|
|
5
|
+
/**
|
|
6
|
+
* Applies IAM authorization to the S3 Bucket encryption commands.
|
|
7
|
+
*
|
|
8
|
+
* Two actions for three commands. Real S3 governs both applying and removing a
|
|
9
|
+
* default encryption configuration with s3:PutEncryptionConfiguration, since
|
|
10
|
+
* removing one is applying the default in its place.
|
|
11
|
+
*/
|
|
12
|
+
export class SimS3EncryptionAuthorizer {
|
|
13
|
+
static readAction = "s3:GetEncryptionConfiguration";
|
|
14
|
+
static writeAction = "s3:PutEncryptionConfiguration";
|
|
15
|
+
iam;
|
|
16
|
+
constructor(properties) {
|
|
17
|
+
this.iam = properties.iam;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Ensure the caller may read the Bucket's default encryption.
|
|
21
|
+
*/
|
|
22
|
+
authorizeRead(bucket, options) {
|
|
23
|
+
this.authorize(SimS3EncryptionAuthorizer.readAction, bucket, options);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Ensure the caller may change the Bucket's default encryption.
|
|
27
|
+
*/
|
|
28
|
+
authorizeWrite(bucket, options) {
|
|
29
|
+
this.authorize(SimS3EncryptionAuthorizer.writeAction, bucket, options);
|
|
30
|
+
}
|
|
31
|
+
authorize(action, bucket, options) {
|
|
32
|
+
const resource = simS3BucketArn(bucket.bucketName);
|
|
33
|
+
const decision = this.iam.authorize({
|
|
34
|
+
action,
|
|
35
|
+
resource,
|
|
36
|
+
caller: options?.caller,
|
|
37
|
+
conditionContext: simS3ConditionContext(options),
|
|
38
|
+
resourcePolicies: simS3BucketResourcePolicies(bucket),
|
|
39
|
+
});
|
|
40
|
+
if (decision.isDenied) {
|
|
41
|
+
throw new SimIamAccessDenied({
|
|
42
|
+
principal: decision.caller.principal,
|
|
43
|
+
reason: decision.denialReason,
|
|
44
|
+
action,
|
|
45
|
+
resource,
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { SimS3BucketCommandState } from "../sim-s3-bucket-command-state.js";
|
|
2
|
+
import type * as simS3Commands from "../sim-s3-command.types.js";
|
|
3
|
+
import type { SimS3RequestOptions } from "../sim-s3-request-options.js";
|
|
4
|
+
/**
|
|
5
|
+
* The default encryption commands of one simulated S3 scope.
|
|
6
|
+
*/
|
|
7
|
+
export declare class SimS3EncryptionCommands {
|
|
8
|
+
private readonly state;
|
|
9
|
+
constructor(state: SimS3BucketCommandState);
|
|
10
|
+
/**
|
|
11
|
+
* Apply a Bucket's default encryption.
|
|
12
|
+
*/
|
|
13
|
+
put(command: simS3Commands.SimPutBucketEncryptionCommand, options?: SimS3RequestOptions): Promise<simS3Commands.SimPutBucketEncryptionCommandOutput>;
|
|
14
|
+
/**
|
|
15
|
+
* Read a Bucket's default encryption.
|
|
16
|
+
*/
|
|
17
|
+
get(command: simS3Commands.SimGetBucketEncryptionCommand, options?: SimS3RequestOptions): Promise<simS3Commands.SimGetBucketEncryptionCommandOutput>;
|
|
18
|
+
/**
|
|
19
|
+
* Put a Bucket back to the encryption every Bucket has.
|
|
20
|
+
*/
|
|
21
|
+
delete(command: simS3Commands.SimDeleteBucketEncryptionCommand, options?: SimS3RequestOptions): Promise<simS3Commands.SimDeleteBucketEncryptionCommandOutput>;
|
|
22
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { DeleteBucketEncryptionCommandHandler } from "../delete-bucket-encryption/delete-bucket-encryption.handler.js";
|
|
2
|
+
import { GetBucketEncryptionCommandHandler } from "../get-bucket-encryption/get-bucket-encryption.handler.js";
|
|
3
|
+
import { PutBucketEncryptionCommandHandler } from "../put-bucket-encryption/put-bucket-encryption.handler.js";
|
|
4
|
+
/**
|
|
5
|
+
* The default encryption commands of one simulated S3 scope.
|
|
6
|
+
*/
|
|
7
|
+
export class SimS3EncryptionCommands {
|
|
8
|
+
state;
|
|
9
|
+
constructor(state) {
|
|
10
|
+
this.state = state;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Apply a Bucket's default encryption.
|
|
14
|
+
*/
|
|
15
|
+
async put(command, options) {
|
|
16
|
+
return await new PutBucketEncryptionCommandHandler(this.state).handle(command, options);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Read a Bucket's default encryption.
|
|
20
|
+
*/
|
|
21
|
+
async get(command, options) {
|
|
22
|
+
return await new GetBucketEncryptionCommandHandler(this.state).handle(command, options);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Put a Bucket back to the encryption every Bucket has.
|
|
26
|
+
*/
|
|
27
|
+
async delete(command, options) {
|
|
28
|
+
return await new DeleteBucketEncryptionCommandHandler(this.state).handle(command, options);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { SimResponseMetadata } from "../../../aws/metadata/response-metadata.type.js";
|
|
2
|
+
import type { SimS3ServerSideEncryptionConfiguration } from "../../bucket/encryption/sim-s3-bucket-encryption.js";
|
|
3
|
+
/**
|
|
4
|
+
* Minimal structural sim S3 GetBucketEncryption command.
|
|
5
|
+
*/
|
|
6
|
+
export interface SimGetBucketEncryptionCommand {
|
|
7
|
+
readonly input: SimGetBucketEncryptionCommandInput;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Minimal structural sim S3 GetBucketEncryption input.
|
|
11
|
+
*/
|
|
12
|
+
export interface SimGetBucketEncryptionCommandInput {
|
|
13
|
+
readonly Bucket?: string | undefined;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Minimal structural sim S3 GetBucketEncryption output.
|
|
17
|
+
*
|
|
18
|
+
* A Bucket nobody has configured answers with the SSE-S3 rule real S3 applies
|
|
19
|
+
* to every Bucket, rather than with an error.
|
|
20
|
+
*/
|
|
21
|
+
export interface SimGetBucketEncryptionCommandOutput {
|
|
22
|
+
readonly ServerSideEncryptionConfiguration?: SimS3ServerSideEncryptionConfiguration;
|
|
23
|
+
readonly $metadata: SimResponseMetadata;
|
|
24
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { CommandHandler } from "../../../../command/command-handler.js";
|
|
2
|
+
import { type BackgroundScheduler } from "../../../../util/background/background.js";
|
|
3
|
+
import { type SimIamInterServiceAuthZ } from "../../../iam/authorize/sim-iam-inter-service-auth-z.js";
|
|
4
|
+
import type { SimS3Bucket, SimS3BucketName } from "../../bucket/sim-s3-bucket.js";
|
|
5
|
+
import type { SimS3RequestOptions } from "../sim-s3-request-options.js";
|
|
6
|
+
import type { SimGetBucketEncryptionCommand, SimGetBucketEncryptionCommandOutput } from "./get-bucket-encryption.command.js";
|
|
7
|
+
interface GetBucketEncryptionHandlerProperties {
|
|
8
|
+
readonly buckets: Map<SimS3BucketName, SimS3Bucket>;
|
|
9
|
+
readonly iam?: SimIamInterServiceAuthZ;
|
|
10
|
+
readonly background?: BackgroundScheduler;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Simulated S3 GetBucketEncryptionCommand handler.
|
|
14
|
+
*
|
|
15
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3/command/GetBucketEncryptionCommand/
|
|
16
|
+
*/
|
|
17
|
+
export declare class GetBucketEncryptionCommandHandler implements CommandHandler<SimGetBucketEncryptionCommand, SimGetBucketEncryptionCommandOutput> {
|
|
18
|
+
private readonly buckets;
|
|
19
|
+
private readonly authorizer;
|
|
20
|
+
private readonly background;
|
|
21
|
+
constructor(properties: GetBucketEncryptionHandlerProperties);
|
|
22
|
+
/**
|
|
23
|
+
* Authorize and report a Bucket's default encryption.
|
|
24
|
+
*
|
|
25
|
+
* A Bucket nobody has configured answers with the SSE-S3 rule rather than an
|
|
26
|
+
* error, which is what real S3 has answered since it began encrypting every
|
|
27
|
+
* Bucket by default.
|
|
28
|
+
*/
|
|
29
|
+
handle(command: SimGetBucketEncryptionCommand, options?: SimS3RequestOptions): Promise<SimGetBucketEncryptionCommandOutput>;
|
|
30
|
+
}
|
|
31
|
+
export {};
|