@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
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import type { SimIamPolicyDocument } from "../../iam/policy/sim-iam-policy.js";
|
|
2
|
+
import { SimS3BucketEncryption } from "./encryption/sim-s3-bucket-encryption.js";
|
|
3
|
+
import { SimS3NotificationConfiguration } from "./notification/sim-s3-notification-configuration.js";
|
|
4
|
+
import { SimS3PublicAccessBlock } from "./public-access/sim-s3-public-access-block.js";
|
|
5
|
+
import type { SimS3BucketProperties } from "./sim-s3-bucket-properties.js";
|
|
6
|
+
import { SimS3BucketWebsite } from "./website/sim-s3-bucket-website.js";
|
|
7
|
+
/**
|
|
8
|
+
* How one simulated S3 Bucket is configured.
|
|
9
|
+
*
|
|
10
|
+
* These are the five configurations a Bucket holds one of rather than a list
|
|
11
|
+
* of, and each is replaced whole by the request that sets it. None of them says
|
|
12
|
+
* anything about what the Bucket stores, which is why they sit apart from the
|
|
13
|
+
* Objects, the versions and the uploads.
|
|
14
|
+
*
|
|
15
|
+
* `SimS3Bucket` extends this, so a caller reaches all of them on the Bucket
|
|
16
|
+
* itself. The lifecycle configuration is the exception and stays with the
|
|
17
|
+
* Objects, because every read of one applies it.
|
|
18
|
+
*/
|
|
19
|
+
export declare abstract class SimS3BucketConfiguration {
|
|
20
|
+
private website;
|
|
21
|
+
private policy;
|
|
22
|
+
private publicAccessBlock;
|
|
23
|
+
private notifications;
|
|
24
|
+
private encryption;
|
|
25
|
+
protected constructor(properties: SimS3BucketProperties);
|
|
26
|
+
/**
|
|
27
|
+
* Configure static website hosting for this simulated S3 Bucket.
|
|
28
|
+
*/
|
|
29
|
+
configureWebsite(website: SimS3BucketWebsite): void;
|
|
30
|
+
/**
|
|
31
|
+
* Get static website configuration for this simulated S3 Bucket.
|
|
32
|
+
*/
|
|
33
|
+
getWebsite(): SimS3BucketWebsite;
|
|
34
|
+
/**
|
|
35
|
+
* Configure the Bucket resource policy.
|
|
36
|
+
*/
|
|
37
|
+
configurePolicy(policy: SimIamPolicyDocument): void;
|
|
38
|
+
/**
|
|
39
|
+
* Get the Bucket resource policy.
|
|
40
|
+
*/
|
|
41
|
+
getPolicy(): SimIamPolicyDocument | undefined;
|
|
42
|
+
/**
|
|
43
|
+
* Remove the Bucket resource policy.
|
|
44
|
+
*
|
|
45
|
+
* Real S3 DeleteBucketPolicy is idempotent, so this reports nothing about
|
|
46
|
+
* whether there was a policy to remove.
|
|
47
|
+
*/
|
|
48
|
+
deletePolicy(): void;
|
|
49
|
+
/**
|
|
50
|
+
* Replace this Bucket's Block Public Access settings.
|
|
51
|
+
*/
|
|
52
|
+
configurePublicAccessBlock(publicAccessBlock: SimS3PublicAccessBlock): void;
|
|
53
|
+
/**
|
|
54
|
+
* Get this Bucket's Block Public Access settings.
|
|
55
|
+
*/
|
|
56
|
+
getPublicAccessBlock(): SimS3PublicAccessBlock;
|
|
57
|
+
/**
|
|
58
|
+
* Remove this Bucket's Block Public Access settings.
|
|
59
|
+
*
|
|
60
|
+
* Removing the configuration returns the Bucket to the all-enabled state a
|
|
61
|
+
* new Bucket starts in, rather than leaving it unprotected.
|
|
62
|
+
*/
|
|
63
|
+
deletePublicAccessBlock(): void;
|
|
64
|
+
/**
|
|
65
|
+
* Replace this Bucket's event notification configuration.
|
|
66
|
+
*
|
|
67
|
+
* Real S3 holds one configuration per Bucket rather than a list of them, so
|
|
68
|
+
* this replaces what was there instead of adding to it.
|
|
69
|
+
*/
|
|
70
|
+
configureNotifications(notifications: SimS3NotificationConfiguration): void;
|
|
71
|
+
/** Get this Bucket's event notification configuration. */
|
|
72
|
+
getNotifications(): SimS3NotificationConfiguration;
|
|
73
|
+
/** Replace this Bucket's default encryption configuration. */
|
|
74
|
+
configureEncryption(encryption: SimS3BucketEncryption): void;
|
|
75
|
+
/** Get this Bucket's default encryption configuration. */
|
|
76
|
+
getEncryption(): SimS3BucketEncryption;
|
|
77
|
+
/**
|
|
78
|
+
* Put this Bucket back to the encryption every Bucket has.
|
|
79
|
+
*
|
|
80
|
+
* Real S3 DeleteBucketEncryption leaves the Bucket SSE-S3 encrypted rather
|
|
81
|
+
* than unencrypted, because there is no such thing as an unencrypted Bucket.
|
|
82
|
+
*/
|
|
83
|
+
deleteEncryption(): void;
|
|
84
|
+
}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { SimS3BucketEncryption } from "./encryption/sim-s3-bucket-encryption.js";
|
|
2
|
+
import { SimS3NotificationConfiguration } from "./notification/sim-s3-notification-configuration.js";
|
|
3
|
+
import { SimS3PublicAccessBlock } from "./public-access/sim-s3-public-access-block.js";
|
|
4
|
+
import { SimS3BucketWebsite } from "./website/sim-s3-bucket-website.js";
|
|
5
|
+
/**
|
|
6
|
+
* How one simulated S3 Bucket is configured.
|
|
7
|
+
*
|
|
8
|
+
* These are the five configurations a Bucket holds one of rather than a list
|
|
9
|
+
* of, and each is replaced whole by the request that sets it. None of them says
|
|
10
|
+
* anything about what the Bucket stores, which is why they sit apart from the
|
|
11
|
+
* Objects, the versions and the uploads.
|
|
12
|
+
*
|
|
13
|
+
* `SimS3Bucket` extends this, so a caller reaches all of them on the Bucket
|
|
14
|
+
* itself. The lifecycle configuration is the exception and stays with the
|
|
15
|
+
* Objects, because every read of one applies it.
|
|
16
|
+
*/
|
|
17
|
+
export class SimS3BucketConfiguration {
|
|
18
|
+
website;
|
|
19
|
+
policy;
|
|
20
|
+
publicAccessBlock;
|
|
21
|
+
notifications;
|
|
22
|
+
encryption;
|
|
23
|
+
constructor(properties) {
|
|
24
|
+
const { website = new SimS3BucketWebsite(), publicAccessBlock = SimS3PublicAccessBlock.blockingAll(), notifications = SimS3NotificationConfiguration.empty(), encryption = SimS3BucketEncryption.default(), } = properties;
|
|
25
|
+
this.website = website;
|
|
26
|
+
this.policy = properties.policy;
|
|
27
|
+
this.publicAccessBlock = publicAccessBlock;
|
|
28
|
+
this.notifications = notifications;
|
|
29
|
+
this.encryption = encryption;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Configure static website hosting for this simulated S3 Bucket.
|
|
33
|
+
*/
|
|
34
|
+
configureWebsite(website) {
|
|
35
|
+
this.website = website;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Get static website configuration for this simulated S3 Bucket.
|
|
39
|
+
*/
|
|
40
|
+
getWebsite() {
|
|
41
|
+
return this.website;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Configure the Bucket resource policy.
|
|
45
|
+
*/
|
|
46
|
+
configurePolicy(policy) {
|
|
47
|
+
this.policy = policy;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Get the Bucket resource policy.
|
|
51
|
+
*/
|
|
52
|
+
getPolicy() {
|
|
53
|
+
return this.policy;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Remove the Bucket resource policy.
|
|
57
|
+
*
|
|
58
|
+
* Real S3 DeleteBucketPolicy is idempotent, so this reports nothing about
|
|
59
|
+
* whether there was a policy to remove.
|
|
60
|
+
*/
|
|
61
|
+
deletePolicy() {
|
|
62
|
+
this.policy = undefined;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Replace this Bucket's Block Public Access settings.
|
|
66
|
+
*/
|
|
67
|
+
configurePublicAccessBlock(publicAccessBlock) {
|
|
68
|
+
this.publicAccessBlock = publicAccessBlock;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Get this Bucket's Block Public Access settings.
|
|
72
|
+
*/
|
|
73
|
+
getPublicAccessBlock() {
|
|
74
|
+
return this.publicAccessBlock;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Remove this Bucket's Block Public Access settings.
|
|
78
|
+
*
|
|
79
|
+
* Removing the configuration returns the Bucket to the all-enabled state a
|
|
80
|
+
* new Bucket starts in, rather than leaving it unprotected.
|
|
81
|
+
*/
|
|
82
|
+
deletePublicAccessBlock() {
|
|
83
|
+
this.publicAccessBlock = SimS3PublicAccessBlock.blockingAll();
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Replace this Bucket's event notification configuration.
|
|
87
|
+
*
|
|
88
|
+
* Real S3 holds one configuration per Bucket rather than a list of them, so
|
|
89
|
+
* this replaces what was there instead of adding to it.
|
|
90
|
+
*/
|
|
91
|
+
configureNotifications(notifications) {
|
|
92
|
+
this.notifications = notifications;
|
|
93
|
+
}
|
|
94
|
+
/** Get this Bucket's event notification configuration. */
|
|
95
|
+
getNotifications() {
|
|
96
|
+
return this.notifications;
|
|
97
|
+
}
|
|
98
|
+
/** Replace this Bucket's default encryption configuration. */
|
|
99
|
+
configureEncryption(encryption) {
|
|
100
|
+
this.encryption = encryption;
|
|
101
|
+
}
|
|
102
|
+
/** Get this Bucket's default encryption configuration. */
|
|
103
|
+
getEncryption() {
|
|
104
|
+
return this.encryption;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Put this Bucket back to the encryption every Bucket has.
|
|
108
|
+
*
|
|
109
|
+
* Real S3 DeleteBucketEncryption leaves the Bucket SSE-S3 encrypted rather
|
|
110
|
+
* than unencrypted, because there is no such thing as an unencrypted Bucket.
|
|
111
|
+
*/
|
|
112
|
+
deleteEncryption() {
|
|
113
|
+
this.encryption = SimS3BucketEncryption.default();
|
|
114
|
+
}
|
|
115
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { BackgroundScheduler } from "../../../util/background/background.js";
|
|
2
|
+
import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
|
|
3
|
+
import { SimS3Bucket, type SimS3BucketName } from "./sim-s3-bucket.js";
|
|
4
|
+
import type { SimS3GlobalRegistry } from "../sim-s3-global-registry.js";
|
|
5
|
+
interface SimS3BucketMakerProperties {
|
|
6
|
+
readonly accountRegionScope: SimAwsAccountRegionScope;
|
|
7
|
+
readonly buckets: Map<SimS3BucketName, SimS3Bucket>;
|
|
8
|
+
readonly s3GlobalRegistry: SimS3GlobalRegistry;
|
|
9
|
+
readonly background: BackgroundScheduler;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Puts a Bucket into a simulated S3 scope, once something has decided it may
|
|
13
|
+
* be there.
|
|
14
|
+
*
|
|
15
|
+
* `CreateBucketCommand` decides that by authorizing the caller. A Bucket real
|
|
16
|
+
* AWS provisions outside the deployment being simulated, such as the CDK
|
|
17
|
+
* bootstrap staging Bucket, has no caller to authorize and comes through
|
|
18
|
+
* `SimS3.makeSimBucket` instead. Both arrive at the same Bucket registered in
|
|
19
|
+
* the same two places, because the name check and the registration are here
|
|
20
|
+
* rather than in the command handler.
|
|
21
|
+
*/
|
|
22
|
+
export declare class SimS3BucketMaker {
|
|
23
|
+
private readonly properties;
|
|
24
|
+
constructor(properties: SimS3BucketMakerProperties);
|
|
25
|
+
/**
|
|
26
|
+
* Make a Bucket of the given name, reporting a name this scope cannot take
|
|
27
|
+
* the way `CreateBucketCommand` reports it.
|
|
28
|
+
*/
|
|
29
|
+
make(bucketName: string): SimS3Bucket;
|
|
30
|
+
}
|
|
31
|
+
export {};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { SimS3BucketNameAvailability } from "./name-availability/sim-s3-bucket-name-availability.js";
|
|
2
|
+
import { validateS3BucketName } from "./validate/validate-s3-bucket-name.js";
|
|
3
|
+
import { SimS3Bucket } from "./sim-s3-bucket.js";
|
|
4
|
+
/**
|
|
5
|
+
* Puts a Bucket into a simulated S3 scope, once something has decided it may
|
|
6
|
+
* be there.
|
|
7
|
+
*
|
|
8
|
+
* `CreateBucketCommand` decides that by authorizing the caller. A Bucket real
|
|
9
|
+
* AWS provisions outside the deployment being simulated, such as the CDK
|
|
10
|
+
* bootstrap staging Bucket, has no caller to authorize and comes through
|
|
11
|
+
* `SimS3.makeSimBucket` instead. Both arrive at the same Bucket registered in
|
|
12
|
+
* the same two places, because the name check and the registration are here
|
|
13
|
+
* rather than in the command handler.
|
|
14
|
+
*/
|
|
15
|
+
export class SimS3BucketMaker {
|
|
16
|
+
properties;
|
|
17
|
+
constructor(properties) {
|
|
18
|
+
this.properties = properties;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Make a Bucket of the given name, reporting a name this scope cannot take
|
|
22
|
+
* the way `CreateBucketCommand` reports it.
|
|
23
|
+
*/
|
|
24
|
+
make(bucketName) {
|
|
25
|
+
const { accountRegionScope, buckets, s3GlobalRegistry, background } = this.properties;
|
|
26
|
+
validateS3BucketName(bucketName);
|
|
27
|
+
new SimS3BucketNameAvailability({
|
|
28
|
+
accountRegionScope,
|
|
29
|
+
buckets,
|
|
30
|
+
s3GlobalRegistry,
|
|
31
|
+
}).ensureCanCreateBucketNamed(bucketName);
|
|
32
|
+
const bucket = new SimS3Bucket({
|
|
33
|
+
bucketName,
|
|
34
|
+
accountRegionScope,
|
|
35
|
+
clock: background,
|
|
36
|
+
});
|
|
37
|
+
buckets.set(bucketName, bucket);
|
|
38
|
+
s3GlobalRegistry.registerBucket(bucketName, accountRegionScope);
|
|
39
|
+
return bucket;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
@@ -5,6 +5,7 @@ import { SimS3MultipartUploads } from "../upload/sim-s3-multipart-uploads.js";
|
|
|
5
5
|
import { SimS3BucketObjectLock } from "./lock/sim-s3-bucket-object-lock.js";
|
|
6
6
|
import { SimS3LifecycleConfiguration } from "./lifecycle/sim-s3-lifecycle-configuration.js";
|
|
7
7
|
import { SimS3ObjectDeletion } from "./sim-s3-object-deletion.js";
|
|
8
|
+
import { SimS3TaggableObject } from "./tagging/sim-s3-taggable-object.js";
|
|
8
9
|
import type { SimS3BucketVersioning } from "./versioning/sim-s3-bucket-versioning.js";
|
|
9
10
|
import { SimS3BucketVersions } from "./versioning/sim-s3-bucket-versions.js";
|
|
10
11
|
import type { SimS3ObjectVersion } from "./versioning/sim-s3-object-version.js";
|
|
@@ -64,6 +65,15 @@ export declare class SimS3BucketObjects {
|
|
|
64
65
|
* Lock is holding never gets that far.
|
|
65
66
|
*/
|
|
66
67
|
deleteVersion(key: string, versionId: string, bypassGovernance?: boolean): Promise<SimS3ObjectVersion | undefined>;
|
|
68
|
+
/**
|
|
69
|
+
* The Object a tagging request names, ready to be read or retagged.
|
|
70
|
+
*
|
|
71
|
+
* A request naming a version acts on that version, and one naming none acts
|
|
72
|
+
* on whatever a plain read of the key answers with. The read happens either
|
|
73
|
+
* way, because it is what applies the Bucket's rules, and a request naming a
|
|
74
|
+
* version has no more effect on the Bucket than any other read of it.
|
|
75
|
+
*/
|
|
76
|
+
taggable(key: string, versionId: string | undefined): Promise<SimS3TaggableObject>;
|
|
67
77
|
/**
|
|
68
78
|
* The versions this Bucket keeps, with whatever the rules have expired gone.
|
|
69
79
|
*
|
|
@@ -4,6 +4,7 @@ import { SimS3LifecycleConfiguration } from "./lifecycle/sim-s3-lifecycle-config
|
|
|
4
4
|
import { SimS3NoncurrentSweep } from "./lifecycle/sim-s3-noncurrent-sweep.js";
|
|
5
5
|
import { SimS3LifecycleSweep } from "./lifecycle/sim-s3-lifecycle-sweep.js";
|
|
6
6
|
import { SimS3ObjectDeletion } from "./sim-s3-object-deletion.js";
|
|
7
|
+
import { SimS3TaggableObject } from "./tagging/sim-s3-taggable-object.js";
|
|
7
8
|
import { SimS3BucketVersions } from "./versioning/sim-s3-bucket-versions.js";
|
|
8
9
|
/**
|
|
9
10
|
* What one simulated S3 Bucket stores, and what time does to it.
|
|
@@ -80,6 +81,23 @@ export class SimS3BucketObjects {
|
|
|
80
81
|
this.objectLock.assertDeletable(this.versions.find(key, versionId), this.clock.now(), bypassGovernance);
|
|
81
82
|
return await this.versions.deleteVersion(this.storage, key, versionId);
|
|
82
83
|
}
|
|
84
|
+
/**
|
|
85
|
+
* The Object a tagging request names, ready to be read or retagged.
|
|
86
|
+
*
|
|
87
|
+
* A request naming a version acts on that version, and one naming none acts
|
|
88
|
+
* on whatever a plain read of the key answers with. The read happens either
|
|
89
|
+
* way, because it is what applies the Bucket's rules, and a request naming a
|
|
90
|
+
* version has no more effect on the Bucket than any other read of it.
|
|
91
|
+
*/
|
|
92
|
+
async taggable(key, versionId) {
|
|
93
|
+
return SimS3TaggableObject.named({
|
|
94
|
+
storage: this.storage,
|
|
95
|
+
versions: this.sweptVersions(),
|
|
96
|
+
key,
|
|
97
|
+
versionId,
|
|
98
|
+
stored: await this.get(key),
|
|
99
|
+
});
|
|
100
|
+
}
|
|
83
101
|
/**
|
|
84
102
|
* The versions this Bucket keeps, with whatever the rules have expired gone.
|
|
85
103
|
*
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
|
|
2
|
+
import type { SimClock } from "../../../util/clock/sim-clock.js";
|
|
3
|
+
import type { SimIamPolicyDocument } from "../../iam/policy/sim-iam-policy.js";
|
|
4
|
+
import type { SimS3BucketStorage } from "../storage/s3-bucket-storage.js";
|
|
5
|
+
import type { SimS3BucketEncryption } from "./encryption/sim-s3-bucket-encryption.js";
|
|
6
|
+
import type { SimS3LifecycleConfiguration } from "./lifecycle/sim-s3-lifecycle-configuration.js";
|
|
7
|
+
import type { SimS3NotificationConfiguration } from "./notification/sim-s3-notification-configuration.js";
|
|
8
|
+
import type { SimS3PublicAccessBlock } from "./public-access/sim-s3-public-access-block.js";
|
|
9
|
+
import type { SimS3BucketName } from "./sim-s3-bucket.js";
|
|
10
|
+
import type { SimS3BucketWebsite } from "./website/sim-s3-bucket-website.js";
|
|
11
|
+
/**
|
|
12
|
+
* What a simulated S3 Bucket is made of.
|
|
13
|
+
*
|
|
14
|
+
* Every one of these has a default, apart from the name. A Bucket made by
|
|
15
|
+
* CreateBucket states only its name and its scope, and the configuration
|
|
16
|
+
* properties are what a Bucket built directly in a test starts out with.
|
|
17
|
+
*/
|
|
18
|
+
export interface SimS3BucketProperties {
|
|
19
|
+
readonly bucketName: SimS3BucketName | string;
|
|
20
|
+
readonly accountRegionScope?: SimAwsAccountRegionScope;
|
|
21
|
+
readonly storage?: SimS3BucketStorage;
|
|
22
|
+
readonly website?: SimS3BucketWebsite;
|
|
23
|
+
readonly policy?: SimIamPolicyDocument | undefined;
|
|
24
|
+
readonly publicAccessBlock?: SimS3PublicAccessBlock;
|
|
25
|
+
readonly notifications?: SimS3NotificationConfiguration;
|
|
26
|
+
readonly lifecycle?: SimS3LifecycleConfiguration;
|
|
27
|
+
readonly encryption?: SimS3BucketEncryption;
|
|
28
|
+
/**
|
|
29
|
+
* The simulation's sense of time, which is what a lifecycle rule is measured
|
|
30
|
+
* against. A Bucket made outside a simulated environment has none to be
|
|
31
|
+
* given, and runs on the host clock.
|
|
32
|
+
*/
|
|
33
|
+
readonly clock?: SimClock;
|
|
34
|
+
/**
|
|
35
|
+
* When the Bucket came into being, in simulated time.
|
|
36
|
+
*
|
|
37
|
+
* Real S3 reports this on every Bucket a listing returns, and the `aws` CLI
|
|
38
|
+
* reads it from each entry, so a Bucket without one cannot be listed.
|
|
39
|
+
*/
|
|
40
|
+
readonly creationDate?: Date;
|
|
41
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,57 +1,28 @@
|
|
|
1
1
|
import type { Brand } from "../../../util/brand.type.js";
|
|
2
|
-
import { type SimClock } from "../../../util/clock/sim-clock.js";
|
|
3
2
|
import type { SimS3BucketStorage } from "../storage/s3-bucket-storage.js";
|
|
4
3
|
import type { SimS3Object } from "../object/s3-object.js";
|
|
5
4
|
import type { SimS3ObjectDeletion } from "./sim-s3-object-deletion.js";
|
|
5
|
+
import type { SimS3TaggableObject } from "./tagging/sim-s3-taggable-object.js";
|
|
6
6
|
import type { SimS3BucketObjectLock } from "./lock/sim-s3-bucket-object-lock.js";
|
|
7
7
|
import type { SimS3BucketVersioning } from "./versioning/sim-s3-bucket-versioning.js";
|
|
8
8
|
import type { SimS3BucketVersions } from "./versioning/sim-s3-bucket-versions.js";
|
|
9
9
|
import type { SimS3ObjectVersion } from "./versioning/sim-s3-object-version.js";
|
|
10
|
-
import { SimS3BucketWebsite } from "./website/sim-s3-bucket-website.js";
|
|
11
|
-
import { SimS3PublicAccessBlock } from "./public-access/sim-s3-public-access-block.js";
|
|
12
|
-
import { SimS3NotificationConfiguration } from "./notification/sim-s3-notification-configuration.js";
|
|
13
10
|
import { SimS3LifecycleConfiguration } from "./lifecycle/sim-s3-lifecycle-configuration.js";
|
|
14
11
|
import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
|
|
15
|
-
import
|
|
12
|
+
import { SimS3BucketConfiguration } from "./sim-s3-bucket-configuration.js";
|
|
16
13
|
import { SimS3BucketSystemMetadata } from "./sim-s3-bucket-system-metadata.js";
|
|
17
14
|
import type { SimS3MultipartUploads } from "../upload/sim-s3-multipart-uploads.js";
|
|
15
|
+
import type { SimS3BucketProperties } from "./sim-s3-bucket-properties.js";
|
|
18
16
|
export type SimS3BucketName = Brand<string, "SimS3BucketName">;
|
|
19
|
-
interface SimS3BucketProperties {
|
|
20
|
-
readonly bucketName: SimS3BucketName | string;
|
|
21
|
-
readonly accountRegionScope?: SimAwsAccountRegionScope;
|
|
22
|
-
readonly storage?: SimS3BucketStorage;
|
|
23
|
-
readonly website?: SimS3BucketWebsite;
|
|
24
|
-
readonly policy?: SimIamPolicyDocument | undefined;
|
|
25
|
-
readonly publicAccessBlock?: SimS3PublicAccessBlock;
|
|
26
|
-
readonly notifications?: SimS3NotificationConfiguration;
|
|
27
|
-
readonly lifecycle?: SimS3LifecycleConfiguration;
|
|
28
|
-
/**
|
|
29
|
-
* The simulation's sense of time, which is what a lifecycle rule is measured
|
|
30
|
-
* against. A Bucket made outside a simulated environment has none to be
|
|
31
|
-
* given, and runs on the host clock.
|
|
32
|
-
*/
|
|
33
|
-
readonly clock?: SimClock;
|
|
34
|
-
/**
|
|
35
|
-
* When the Bucket came into being, in simulated time.
|
|
36
|
-
*
|
|
37
|
-
* Real S3 reports this on every Bucket a listing returns, and the `aws` CLI
|
|
38
|
-
* reads it from each entry, so a Bucket without one cannot be listed.
|
|
39
|
-
*/
|
|
40
|
-
readonly creationDate?: Date;
|
|
41
|
-
}
|
|
42
17
|
/**
|
|
43
18
|
* Simulated S3 Bucket.
|
|
44
19
|
*/
|
|
45
|
-
export declare class SimS3Bucket {
|
|
20
|
+
export declare class SimS3Bucket extends SimS3BucketConfiguration {
|
|
46
21
|
readonly bucketName: SimS3BucketName;
|
|
47
22
|
readonly creationDate: Date;
|
|
48
23
|
private readonly accountRegionScope;
|
|
49
24
|
private readonly systemMetadata;
|
|
50
25
|
private readonly objects;
|
|
51
|
-
private website;
|
|
52
|
-
private policy;
|
|
53
|
-
private publicAccessBlock;
|
|
54
|
-
private notifications;
|
|
55
26
|
constructor(properties: SimS3BucketProperties);
|
|
56
27
|
/** Put an Object into storage, answering the version it was given, if any. */
|
|
57
28
|
putObject(object: SimS3Object): Promise<SimS3ObjectVersion | undefined>;
|
|
@@ -75,6 +46,13 @@ export declare class SimS3Bucket {
|
|
|
75
46
|
* refuses the removal of a version it is holding.
|
|
76
47
|
*/
|
|
77
48
|
deleteObjectVersion(key: string, versionId: string, bypassGovernance?: boolean): Promise<SimS3ObjectVersion | undefined>;
|
|
49
|
+
/**
|
|
50
|
+
* The Object a tagging request names, ready to be read or retagged.
|
|
51
|
+
*
|
|
52
|
+
* A request naming no version acts on whatever a plain read of the key
|
|
53
|
+
* answers with, which is what real S3 does.
|
|
54
|
+
*/
|
|
55
|
+
taggableObject(key: string, versionId?: string): Promise<SimS3TaggableObject>;
|
|
78
56
|
/** The versions this Bucket keeps, and whether it keeps any. */
|
|
79
57
|
getVersions(): SimS3BucketVersions;
|
|
80
58
|
/** How this Bucket is locked, and what that does to a write and a delete. */
|
|
@@ -100,55 +78,6 @@ export declare class SimS3Bucket {
|
|
|
100
78
|
* those Objects is served with the headers they had.
|
|
101
79
|
*/
|
|
102
80
|
getDeclaredSystemMetadata(): SimS3BucketSystemMetadata;
|
|
103
|
-
/**
|
|
104
|
-
* Configure static website hosting for this simulated S3 Bucket.
|
|
105
|
-
*/
|
|
106
|
-
configureWebsite(website: SimS3BucketWebsite): void;
|
|
107
|
-
/**
|
|
108
|
-
* Get static website configuration for this simulated S3 Bucket.
|
|
109
|
-
*/
|
|
110
|
-
getWebsite(): SimS3BucketWebsite;
|
|
111
|
-
/**
|
|
112
|
-
* Configure the Bucket resource policy.
|
|
113
|
-
*/
|
|
114
|
-
configurePolicy(policy: SimIamPolicyDocument): void;
|
|
115
|
-
/**
|
|
116
|
-
* Get the Bucket resource policy.
|
|
117
|
-
*/
|
|
118
|
-
getPolicy(): SimIamPolicyDocument | undefined;
|
|
119
|
-
/**
|
|
120
|
-
* Remove the Bucket resource policy.
|
|
121
|
-
*
|
|
122
|
-
* Real S3 DeleteBucketPolicy is idempotent, so this reports nothing about
|
|
123
|
-
* whether there was a policy to remove.
|
|
124
|
-
*/
|
|
125
|
-
deletePolicy(): void;
|
|
126
|
-
/**
|
|
127
|
-
* Replace this Bucket's Block Public Access settings.
|
|
128
|
-
*/
|
|
129
|
-
configurePublicAccessBlock(publicAccessBlock: SimS3PublicAccessBlock): void;
|
|
130
|
-
/**
|
|
131
|
-
* Get this Bucket's Block Public Access settings.
|
|
132
|
-
*/
|
|
133
|
-
getPublicAccessBlock(): SimS3PublicAccessBlock;
|
|
134
|
-
/**
|
|
135
|
-
* Remove this Bucket's Block Public Access settings.
|
|
136
|
-
*
|
|
137
|
-
* Removing the configuration returns the Bucket to the all-enabled state a
|
|
138
|
-
* new Bucket starts in, rather than leaving it unprotected.
|
|
139
|
-
*/
|
|
140
|
-
deletePublicAccessBlock(): void;
|
|
141
|
-
/**
|
|
142
|
-
* Replace this Bucket's event notification configuration.
|
|
143
|
-
*
|
|
144
|
-
* Real S3 holds one configuration per Bucket rather than a list of them, so
|
|
145
|
-
* this replaces what was there instead of adding to it.
|
|
146
|
-
*/
|
|
147
|
-
configureNotifications(notifications: SimS3NotificationConfiguration): void;
|
|
148
|
-
/**
|
|
149
|
-
* Get this Bucket's event notification configuration.
|
|
150
|
-
*/
|
|
151
|
-
getNotifications(): SimS3NotificationConfiguration;
|
|
152
81
|
/**
|
|
153
82
|
* Replace this Bucket's lifecycle configuration.
|
|
154
83
|
*
|
|
@@ -176,4 +105,3 @@ export declare class SimS3Bucket {
|
|
|
176
105
|
*/
|
|
177
106
|
getWebsiteUrl(): URL;
|
|
178
107
|
}
|
|
179
|
-
export {};
|
|
@@ -1,37 +1,28 @@
|
|
|
1
1
|
import { SimRealClock } from "../../../util/clock/sim-clock.js";
|
|
2
2
|
import { MemoryS3BucketStorage } from "../storage/s3-memory-storage.js";
|
|
3
3
|
import { SimS3BucketObjects } from "./sim-s3-bucket-objects.js";
|
|
4
|
-
import { SimS3BucketWebsite } from "./website/sim-s3-bucket-website.js";
|
|
5
|
-
import { SimS3PublicAccessBlock } from "./public-access/sim-s3-public-access-block.js";
|
|
6
|
-
import { SimS3NotificationConfiguration } from "./notification/sim-s3-notification-configuration.js";
|
|
7
4
|
import { SimS3LifecycleConfiguration } from "./lifecycle/sim-s3-lifecycle-configuration.js";
|
|
8
5
|
import { simS3BucketWebsiteUrl } from "./website/sim-s3-bucket-website-url.js";
|
|
9
6
|
import { validateS3BucketName } from "./validate/validate-s3-bucket-name.js";
|
|
10
7
|
import { simAwsAccountRegionScopeFactory } from "../../aws/sim-aws-account-region-scope.factory.js";
|
|
8
|
+
import { SimS3BucketConfiguration } from "./sim-s3-bucket-configuration.js";
|
|
11
9
|
import { SimS3BucketSystemMetadata } from "./sim-s3-bucket-system-metadata.js";
|
|
12
10
|
/**
|
|
13
11
|
* Simulated S3 Bucket.
|
|
14
12
|
*/
|
|
15
|
-
export class SimS3Bucket {
|
|
13
|
+
export class SimS3Bucket extends SimS3BucketConfiguration {
|
|
16
14
|
bucketName;
|
|
17
15
|
creationDate;
|
|
18
16
|
accountRegionScope;
|
|
19
17
|
systemMetadata = new SimS3BucketSystemMetadata();
|
|
20
18
|
objects;
|
|
21
|
-
website;
|
|
22
|
-
policy;
|
|
23
|
-
publicAccessBlock;
|
|
24
|
-
notifications;
|
|
25
19
|
constructor(properties) {
|
|
26
|
-
|
|
20
|
+
super(properties);
|
|
21
|
+
const { bucketName, accountRegionScope = simAwsAccountRegionScopeFactory.make(), storage = new MemoryS3BucketStorage(), lifecycle = SimS3LifecycleConfiguration.empty(), clock = new SimRealClock(), creationDate = clock.now(), } = properties;
|
|
27
22
|
validateS3BucketName(bucketName);
|
|
28
23
|
this.bucketName = bucketName;
|
|
29
24
|
this.accountRegionScope = accountRegionScope;
|
|
30
25
|
this.objects = new SimS3BucketObjects({ storage, lifecycle, clock });
|
|
31
|
-
this.website = website;
|
|
32
|
-
this.policy = policy;
|
|
33
|
-
this.publicAccessBlock = publicAccessBlock;
|
|
34
|
-
this.notifications = notifications;
|
|
35
26
|
this.creationDate = creationDate;
|
|
36
27
|
}
|
|
37
28
|
/** Put an Object into storage, answering the version it was given, if any. */
|
|
@@ -66,6 +57,15 @@ export class SimS3Bucket {
|
|
|
66
57
|
async deleteObjectVersion(key, versionId, bypassGovernance = false) {
|
|
67
58
|
return await this.objects.deleteVersion(key, versionId, bypassGovernance);
|
|
68
59
|
}
|
|
60
|
+
/**
|
|
61
|
+
* The Object a tagging request names, ready to be read or retagged.
|
|
62
|
+
*
|
|
63
|
+
* A request naming no version acts on whatever a plain read of the key
|
|
64
|
+
* answers with, which is what real S3 does.
|
|
65
|
+
*/
|
|
66
|
+
async taggableObject(key, versionId) {
|
|
67
|
+
return await this.objects.taggable(key, versionId);
|
|
68
|
+
}
|
|
69
69
|
/** The versions this Bucket keeps, and whether it keeps any. */
|
|
70
70
|
getVersions() {
|
|
71
71
|
return this.objects.sweptVersions();
|
|
@@ -103,75 +103,6 @@ export class SimS3Bucket {
|
|
|
103
103
|
getDeclaredSystemMetadata() {
|
|
104
104
|
return this.systemMetadata;
|
|
105
105
|
}
|
|
106
|
-
/**
|
|
107
|
-
* Configure static website hosting for this simulated S3 Bucket.
|
|
108
|
-
*/
|
|
109
|
-
configureWebsite(website) {
|
|
110
|
-
this.website = website;
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Get static website configuration for this simulated S3 Bucket.
|
|
114
|
-
*/
|
|
115
|
-
getWebsite() {
|
|
116
|
-
return this.website;
|
|
117
|
-
}
|
|
118
|
-
/**
|
|
119
|
-
* Configure the Bucket resource policy.
|
|
120
|
-
*/
|
|
121
|
-
configurePolicy(policy) {
|
|
122
|
-
this.policy = policy;
|
|
123
|
-
}
|
|
124
|
-
/**
|
|
125
|
-
* Get the Bucket resource policy.
|
|
126
|
-
*/
|
|
127
|
-
getPolicy() {
|
|
128
|
-
return this.policy;
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* Remove the Bucket resource policy.
|
|
132
|
-
*
|
|
133
|
-
* Real S3 DeleteBucketPolicy is idempotent, so this reports nothing about
|
|
134
|
-
* whether there was a policy to remove.
|
|
135
|
-
*/
|
|
136
|
-
deletePolicy() {
|
|
137
|
-
this.policy = undefined;
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* Replace this Bucket's Block Public Access settings.
|
|
141
|
-
*/
|
|
142
|
-
configurePublicAccessBlock(publicAccessBlock) {
|
|
143
|
-
this.publicAccessBlock = publicAccessBlock;
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* Get this Bucket's Block Public Access settings.
|
|
147
|
-
*/
|
|
148
|
-
getPublicAccessBlock() {
|
|
149
|
-
return this.publicAccessBlock;
|
|
150
|
-
}
|
|
151
|
-
/**
|
|
152
|
-
* Remove this Bucket's Block Public Access settings.
|
|
153
|
-
*
|
|
154
|
-
* Removing the configuration returns the Bucket to the all-enabled state a
|
|
155
|
-
* new Bucket starts in, rather than leaving it unprotected.
|
|
156
|
-
*/
|
|
157
|
-
deletePublicAccessBlock() {
|
|
158
|
-
this.publicAccessBlock = SimS3PublicAccessBlock.blockingAll();
|
|
159
|
-
}
|
|
160
|
-
/**
|
|
161
|
-
* Replace this Bucket's event notification configuration.
|
|
162
|
-
*
|
|
163
|
-
* Real S3 holds one configuration per Bucket rather than a list of them, so
|
|
164
|
-
* this replaces what was there instead of adding to it.
|
|
165
|
-
*/
|
|
166
|
-
configureNotifications(notifications) {
|
|
167
|
-
this.notifications = notifications;
|
|
168
|
-
}
|
|
169
|
-
/**
|
|
170
|
-
* Get this Bucket's event notification configuration.
|
|
171
|
-
*/
|
|
172
|
-
getNotifications() {
|
|
173
|
-
return this.notifications;
|
|
174
|
-
}
|
|
175
106
|
/**
|
|
176
107
|
* Replace this Bucket's lifecycle configuration.
|
|
177
108
|
*
|
|
@@ -206,6 +137,6 @@ export class SimS3Bucket {
|
|
|
206
137
|
* Get the simulated S3 static website URL for this Bucket.
|
|
207
138
|
*/
|
|
208
139
|
getWebsiteUrl() {
|
|
209
|
-
return simS3BucketWebsiteUrl(this.bucketName, this.accountRegionScope, this.
|
|
140
|
+
return simS3BucketWebsiteUrl(this.bucketName, this.accountRegionScope, this.getWebsite());
|
|
210
141
|
}
|
|
211
142
|
}
|
|
@@ -12,5 +12,11 @@ import type { SimS3 } from "../sim-s3.js";
|
|
|
12
12
|
* issues exactly the two commands a real deployment issues rather than reaching
|
|
13
13
|
* around them, so a test using it exercises the same path a user's own setup
|
|
14
14
|
* would.
|
|
15
|
+
*
|
|
16
|
+
* The policy grants listing alongside the read. Real S3 admits that a key is
|
|
17
|
+
* missing only to a reader holding `s3:ListBucket`, and answers 403 to a
|
|
18
|
+
* reader holding the Object read alone. A site with its own error document, a
|
|
19
|
+
* folder redirect or a custom 404 error response grants both permissions for
|
|
20
|
+
* that reason.
|
|
15
21
|
*/
|
|
16
22
|
export declare function grantPublicObjectRead(simS3: SimS3, bucketName: string): Promise<void>;
|