@kensio/yulin 1.21.2 → 1.21.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/service/athena/engine/sim-athena-column-types.d.ts +2 -0
- package/dist/service/athena/engine/sim-athena-column-types.js +4 -0
- package/dist/service/athena/engine/sim-athena-delimited-format.d.ts +7 -0
- package/dist/service/athena/engine/sim-athena-delimited-format.js +51 -0
- package/dist/service/athena/engine/sim-athena-engine-result.js +5 -0
- package/dist/service/athena/engine/sim-athena-engine-run.d.ts +22 -2
- package/dist/service/athena/engine/sim-athena-engine-run.js +21 -31
- package/dist/service/athena/engine/sim-athena-loaded-tables.d.ts +10 -0
- package/dist/service/athena/engine/sim-athena-loaded-tables.js +35 -0
- package/dist/service/athena/engine/sim-athena-parquet-module.d.ts +25 -0
- package/dist/service/athena/engine/sim-athena-parquet-module.js +39 -0
- package/dist/service/athena/engine/sim-athena-parquet-records.d.ts +13 -0
- package/dist/service/athena/engine/sim-athena-parquet-records.js +57 -0
- package/dist/service/athena/engine/sim-athena-query-engine.d.ts +23 -5
- package/dist/service/athena/engine/sim-athena-query-engine.js +31 -10
- package/dist/service/athena/engine/sim-athena-record-reader.d.ts +12 -6
- package/dist/service/athena/engine/sim-athena-record-reader.js +28 -53
- package/dist/service/athena/engine/sim-athena-sql-translation.d.ts +15 -9
- package/dist/service/athena/engine/sim-athena-sql-translation.js +25 -13
- package/dist/service/athena/engine/sim-athena-sqlite-values.d.ts +5 -0
- package/dist/service/athena/engine/sim-athena-sqlite-values.js +24 -1
- package/dist/service/athena/engine/sim-athena-table-objects.d.ts +7 -2
- package/dist/service/athena/engine/sim-athena-table-objects.js +8 -4
- package/dist/service/athena/engine/sim-athena-table-rows.js +4 -3
- package/dist/service/athena/engine/sim-athena-turn-down.d.ts +26 -0
- package/dist/service/athena/engine/sim-athena-turn-down.js +43 -0
- package/dist/service/athena/execution/sim-athena-query-completion.d.ts +3 -1
- package/dist/service/athena/execution/sim-athena-query-completion.js +7 -1
- package/dist/service/athena/index.d.ts +1 -1
- package/dist/service/athena/index.js +1 -1
- package/dist/service/athena/result/sim-athena-query-answer.d.ts +12 -0
- package/dist/service/athena/result/sim-athena-query-answer.js +26 -4
- package/dist/service/athena/sim-athena-answered-query.fixture.d.ts +2 -0
- package/dist/service/athena/sim-athena-answered-query.fixture.js +1 -0
- package/dist/service/athena/sim-athena-engine.fixture.d.ts +20 -0
- package/dist/service/athena/sim-athena-engine.fixture.js +34 -0
- package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.d.ts +23 -0
- package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.js +37 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.d.ts +2 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.js +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.d.ts +7 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.js +13 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.d.ts +6 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.js +7 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/notify/sim-cdk-bucket-deploy-notifier.d.ts +50 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/notify/sim-cdk-bucket-deploy-notifier.js +71 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js +6 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/source/sim-cdk-bucket-deploy-source.d.ts +5 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/source/sim-cdk-bucket-deploy-source.js +7 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-arn.d.ts +9 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-arn.js +12 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-changes.d.ts +42 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-changes.js +69 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-commands.d.ts +62 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-commands.js +89 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-execution.d.ts +31 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-execution.js +59 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-failure.d.ts +21 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-failure.js +19 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-input.d.ts +17 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-input.js +18 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack-id.d.ts +18 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack-id.js +13 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack.d.ts +45 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack.js +52 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-type.d.ts +12 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-type.js +21 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.d.ts +54 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.js +49 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.type.d.ts +35 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.type.js +1 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-sets.d.ts +53 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-sets.js +83 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.command.d.ts +32 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.handler.d.ts +38 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.handler.js +80 -0
- package/dist/service/cloudformation/command/create-stack/create-stack.handler.js +12 -12
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.command.d.ts +22 -0
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.handler.d.ts +27 -0
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.handler.js +35 -0
- package/dist/service/cloudformation/command/delete-stack/delete-stack.command.d.ts +6 -0
- package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.d.ts +11 -0
- package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.js +15 -1
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.command.d.ts +48 -0
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.handler.d.ts +23 -0
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.handler.js +52 -0
- package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.d.ts +3 -0
- package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.js +8 -4
- package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.d.ts +18 -6
- package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.js +22 -7
- package/dist/service/cloudformation/command/describe-stacks/sim-cfn-stack-describer.js +1 -1
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.command.d.ts +25 -0
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.handler.d.ts +31 -0
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.handler.js +37 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.command.d.ts +36 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.command.js +1 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.handler.d.ts +26 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.handler.js +39 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-previous-values.d.ts +31 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-previous-values.js +52 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-template.d.ts +22 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-template.js +34 -0
- package/dist/service/cloudformation/command/update-stack/update-stack.command.d.ts +17 -1
- package/dist/service/cloudformation/command/update-stack/update-stack.handler.js +8 -15
- package/dist/service/cloudformation/error/sim-cloudformation.error.d.ts +21 -0
- package/dist/service/cloudformation/error/sim-cloudformation.error.js +25 -0
- package/dist/service/cloudformation/parameters/pseudo/sim-cfn-pseudo-parameters.d.ts +7 -0
- package/dist/service/cloudformation/parameters/pseudo/sim-cfn-pseudo-parameters.js +3 -1
- package/dist/service/cloudformation/parameters/sim-cfn-parameters.d.ts +9 -0
- package/dist/service/cloudformation/parameters/sim-cfn-parameters.js +12 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.d.ts +4 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.js +10 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-retention.d.ts +44 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-retention.js +33 -0
- package/dist/service/cloudformation/resource/factory/sim-cfn-resource-factory.type.d.ts +9 -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 +19 -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/resource/update/sim-cfn-resource-update-validator.d.ts +26 -0
- package/dist/service/cloudformation/resource/update/sim-cfn-resource-update-validator.js +55 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.d.ts +37 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.js +77 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.types.d.ts +51 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.types.js +10 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-authorizers.d.ts +11 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-authorizers.js +34 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-identity.d.ts +21 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-identity.js +31 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-definition.d.ts +14 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-definition.js +1 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-function.d.ts +26 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-function.js +58 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-event-authorization.d.ts +18 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-event-authorization.js +89 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-api-auth.d.ts +15 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-api-auth.js +65 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-jwt-authorizer.d.ts +13 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-jwt-authorizer.js +60 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-lambda-authorizer.d.ts +13 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-lambda-authorizer.js +50 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-prefixes.d.ts +13 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-prefixes.js +30 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-source.d.ts +26 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-source.js +44 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-api-auth.d.ts +15 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-api-auth.js +59 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-cognito-authorizer.d.ts +11 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-cognito-authorizer.js +43 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-lambda-authorizer.d.ts +15 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-lambda-authorizer.js +67 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-template-api-auth.d.ts +26 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-template-api-auth.js +61 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-unsupported-auth.d.ts +18 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-unsupported-auth.js +59 -0
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api-template.factory.js +1 -1
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api.d.ts +4 -0
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api.js +12 -5
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-rest-api-template.factory.js +1 -1
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-rest-api.js +7 -3
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-api-event.js +7 -3
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-cognito-event.d.ts +26 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-cognito-event.js +88 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-declared-event.d.ts +12 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-declared-event.js +1 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-function-events.js +8 -5
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-event.js +23 -1
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-route.d.ts +9 -2
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-route.js +5 -3
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-implicit-http-api.d.ts +6 -1
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-implicit-http-api.js +7 -1
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-triggered-user-pool.d.ts +19 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-triggered-user-pool.js +69 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-template.factory.d.ts +5 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-template.factory.js +3 -1
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-type.d.ts +8 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-type.js +8 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-url.js +1 -4
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function.d.ts +6 -4
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function.js +2 -4
- package/dist/service/cloudformation/sam/sim-cfn-sam-error.d.ts +31 -0
- package/dist/service/cloudformation/sam/sim-cfn-sam-error.js +17 -0
- package/dist/service/cloudformation/sam/sim-cfn-sam-expansion.js +11 -6
- package/dist/service/cloudformation/sdk/sim-cloudformation-sdk-command-router.js +20 -0
- package/dist/service/cloudformation/serve/sim-cloudformation-api.d.ts +4 -3
- package/dist/service/cloudformation/serve/sim-cloudformation-api.js +6 -3
- package/dist/service/cloudformation/serve/sim-cloudformation-change-set-api.d.ts +10 -0
- package/dist/service/cloudformation/serve/sim-cloudformation-change-set-api.js +94 -0
- package/dist/service/cloudformation/sim-cloudformation.d.ts +31 -0
- package/dist/service/cloudformation/sim-cloudformation.js +56 -9
- package/dist/service/cloudformation/stack/resource-map/sim-cfn-stack-resource-map.js +1 -0
- package/dist/service/cloudformation/stack/sim-cfn-deleted-stacks.d.ts +20 -0
- package/dist/service/cloudformation/stack/sim-cfn-deleted-stacks.js +23 -0
- package/dist/service/cloudformation/stack/sim-cfn-deployed-stack.type.d.ts +6 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-id.d.ts +30 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-id.js +24 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts +51 -3
- package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js +84 -6
- package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts +28 -16
- package/dist/service/cloudformation/stack/sim-cfn-stack.js +59 -32
- package/dist/service/cloudformation/stack/sim-cfn-stack.type.d.ts +7 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.d.ts +7 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.js +3 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.d.ts +3 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.js +3 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.d.ts +3 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.js +2 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-retained-logical-ids.d.ts +18 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-retained-logical-ids.js +30 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-guard.d.ts +9 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-guard.js +14 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.d.ts +25 -14
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.js +41 -24
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.d.ts +16 -1
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.js +27 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.js +7 -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/cfn/sim-cfn-dynamodb-resource-factory.d.ts +5 -0
- package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.js +15 -0
- package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-update-validator.d.ts +24 -0
- package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-update-validator.js +38 -0
- 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/dynamodb/table/sim-dynamodb-index-update.js +1 -2
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.js +2 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.js +5 -3
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-cors.d.ts +21 -0
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-cors.js +37 -0
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.js +6 -0
- package/dist/service/lambda/command/create-function/create-function.handler.d.ts +3 -0
- package/dist/service/lambda/command/create-function/create-function.handler.js +5 -1
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.command.d.ts +2 -3
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.handler.js +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.d.ts +6 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.js +10 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.js +2 -6
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.js +1 -0
- package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts +2 -0
- package/dist/service/lambda/command/function-url/function-url-cors-constraints.d.ts +25 -0
- package/dist/service/lambda/command/function-url/function-url-cors-constraints.js +49 -0
- package/dist/service/lambda/command/function-url/function-url-cors-input.d.ts +25 -0
- package/dist/service/lambda/command/function-url/function-url-cors-input.js +57 -0
- package/dist/service/lambda/command/function-url/function-url-input.d.ts +7 -0
- package/dist/service/lambda/command/function-url/function-url-input.js +9 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocation.js +10 -13
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-outcome.js +2 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-handler-attempt.d.ts +13 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-handler-attempt.js +12 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.command.d.ts +2 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.handler.js +1 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-bus.js +1 -1
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-function.js +8 -12
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-queue.js +4 -3
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-send.d.ts +2 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-topic.js +4 -3
- package/dist/service/lambda/destination/sim-aws-lambda-destinations.d.ts +4 -6
- package/dist/service/lambda/destination/sim-aws-lambda-destinations.js +6 -6
- package/dist/service/lambda/destination/sim-lambda-destination-targets.d.ts +3 -0
- package/dist/service/lambda/event-source/poll/kinesis/sim-lambda-kinesis-stream-delivery.js +4 -9
- package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-delivery.js +4 -9
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-outcome.d.ts +22 -3
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-outcome.js +39 -9
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-response.d.ts +7 -6
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-response.js +14 -12
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-checkpoint.d.ts +9 -15
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-checkpoint.js +9 -16
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-progress.d.ts +10 -6
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-progress.js +22 -12
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-record-times.d.ts +23 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-record-times.js +18 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry-backoff.d.ts +12 -13
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry-backoff.js +24 -17
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry.d.ts +64 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry.js +86 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.d.ts +6 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.js +8 -1
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-rules.d.ts +6 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-rules.js +7 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.d.ts +11 -1
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.js +13 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-retry-limits.d.ts +39 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-retry-limits.js +46 -0
- package/dist/service/lambda/event-source/sim-lambda-stream-retry-limits.d.ts +56 -0
- package/dist/service/lambda/event-source/sim-lambda-stream-retry-limits.js +110 -0
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-arn.d.ts +5 -0
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-arn.js +7 -1
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-rules.d.ts +6 -0
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-rules.js +6 -0
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-arn.d.ts +6 -1
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-arn.js +8 -6
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-rules.d.ts +10 -8
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-rules.js +18 -1
- package/dist/service/lambda/function/code/sim-lambda-executable-code.d.ts +8 -2
- package/dist/service/lambda/function/code/sim-lambda-executable-code.js +2 -1
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.d.ts +2 -11
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.js +13 -39
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.d.ts +7 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.js +13 -7
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-handler-lookup.d.ts +23 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-handler-lookup.js +42 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-output-stream.d.ts +12 -4
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-output-stream.js +15 -5
- package/dist/service/lambda/function/invoke/sim-lambda-host-scope.d.ts +7 -0
- package/dist/service/lambda/function/invoke/sim-lambda-host-scope.js +6 -2
- package/dist/service/lambda/function/invoke/sim-lambda-invocation-deadline.d.ts +26 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invocation-deadline.js +84 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invocation.d.ts +44 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invocation.js +44 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.d.ts +6 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.js +1 -2
- package/dist/service/lambda/function/invoke/sim-lambda-process-output.d.ts +6 -1
- package/dist/service/lambda/function/invoke/sim-lambda-process-output.js +19 -6
- package/dist/service/lambda/function/invoke/sim-lambda-timed-out.error.d.ts +15 -0
- package/dist/service/lambda/function/invoke/sim-lambda-timed-out.error.js +18 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clear-timer.d.ts +12 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clear-timer.js +28 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clock-timer.d.ts +46 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clock-timer.js +104 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-host-timers.d.ts +24 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-host-timers.js +27 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-invocation-timers.d.ts +43 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-invocation-timers.js +112 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-process-timers.d.ts +57 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-process-timers.js +79 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-delay.d.ts +10 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-delay.js +15 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-global.d.ts +11 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-global.js +24 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-handle.d.ts +50 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-handle.js +43 -0
- package/dist/service/lambda/function/logging/sim-lambda-function-logging.d.ts +17 -0
- package/dist/service/lambda/function/logging/sim-lambda-function-logging.js +12 -1
- package/dist/service/lambda/function/logging/sim-lambda-output.d.ts +56 -0
- package/dist/service/lambda/function/logging/sim-lambda-output.js +62 -0
- package/dist/service/lambda/function/outbound/sim-lambda-aws-api-outbound.d.ts +8 -0
- package/dist/service/lambda/function/outbound/sim-lambda-aws-api-outbound.js +27 -1
- package/dist/service/lambda/function/sim-lambda-function.d.ts +1 -1
- package/dist/service/lambda/function/sim-lambda-function.js +11 -9
- package/dist/service/lambda/function/sim-lambda-function.type.d.ts +15 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.d.ts +16 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.factory.d.ts +22 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.factory.js +17 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.js +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-factory.d.ts +2 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-factory.js +2 -1
- package/dist/service/lambda/function/url/sim-lambda-function-url-store.d.ts +2 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url.d.ts +16 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url.js +16 -1
- package/dist/service/lambda/index.d.ts +1 -0
- package/dist/service/lambda/index.js +1 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-cors-headers.d.ts +50 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-cors-headers.js +96 -0
- package/dist/service/lambda/serve/sim-lambda-controller.d.ts +14 -0
- package/dist/service/lambda/serve/sim-lambda-controller.js +27 -0
- package/dist/service/lambda/sim-lambda-commands.d.ts +10 -0
- package/dist/service/lambda/sim-lambda-commands.js +11 -0
- package/dist/service/lambda/sim-lambda.d.ts +12 -0
- package/dist/service/lambda/sim-lambda.js +13 -0
- package/dist/service/s3/bucket/encryption/sim-s3-bucket-encryption.d.ts +67 -0
- package/dist/service/s3/bucket/encryption/sim-s3-bucket-encryption.js +69 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.d.ts +4 -31
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.js +7 -6
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.d.ts +5 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.js +8 -4
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-selection.d.ts +1 -14
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-selection.js +16 -8
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-subject.d.ts +41 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-subject.js +1 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.d.ts +14 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.js +32 -2
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition-instant.d.ts +33 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition-instant.js +48 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition.d.ts +16 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition.js +44 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.d.ts +8 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.js +27 -0
- package/dist/service/s3/bucket/notification/sim-s3-notification-event.d.ts +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-notification-event.js +5 -0
- package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-events.js +0 -3
- package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts +3 -0
- package/dist/service/s3/bucket/sim-s3-bucket-access.js +6 -2
- package/dist/service/s3/bucket/sim-s3-bucket-configuration.d.ts +84 -0
- package/dist/service/s3/bucket/sim-s3-bucket-configuration.js +115 -0
- package/dist/service/s3/bucket/sim-s3-bucket-objects.d.ts +10 -0
- package/dist/service/s3/bucket/sim-s3-bucket-objects.js +18 -0
- package/dist/service/s3/bucket/sim-s3-bucket-properties.d.ts +41 -0
- package/dist/service/s3/bucket/sim-s3-bucket-properties.js +1 -0
- package/dist/service/s3/bucket/sim-s3-bucket.d.ts +11 -83
- package/dist/service/s3/bucket/sim-s3-bucket.js +14 -83
- package/dist/service/s3/bucket/sim-s3-public-read.fixture.d.ts +6 -0
- package/dist/service/s3/bucket/sim-s3-public-read.fixture.js +20 -6
- package/dist/service/s3/bucket/tagging/sim-s3-taggable-object.d.ts +58 -0
- package/dist/service/s3/bucket/tagging/sim-s3-taggable-object.js +73 -0
- package/dist/service/s3/bucket/versioning/sim-s3-object-version.d.ts +19 -1
- package/dist/service/s3/bucket/versioning/sim-s3-object-version.js +20 -0
- package/dist/service/s3/cfn/bucket/encryption/sim-cfn-s3-bucket-encryption.d.ts +21 -0
- package/dist/service/s3/cfn/bucket/encryption/sim-cfn-s3-bucket-encryption.js +44 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.js +6 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.d.ts +5 -4
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.js +12 -5
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-filter.d.ts +21 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-filter.js +30 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.js +1 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.d.ts +14 -1
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.js +41 -16
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.d.ts +3 -5
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.js +7 -10
- package/dist/service/s3/command/authorize/sim-s3-authorize-action.d.ts +6 -1
- package/dist/service/s3/command/authorize/sim-s3-authorize-action.js +5 -0
- package/dist/service/s3/command/copy-object/copy-object-builder.d.ts +10 -1
- package/dist/service/s3/command/copy-object/copy-object-builder.js +17 -1
- package/dist/service/s3/command/copy-object/copy-object.command.d.ts +11 -1
- package/dist/service/s3/command/copy-object/copy-object.handler.js +2 -1
- package/dist/service/s3/command/create-multipart-upload/create-multipart-upload.command.d.ts +5 -1
- package/dist/service/s3/command/create-multipart-upload/create-multipart-upload.handler.js +7 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.command.d.ts +19 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.command.js +1 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.handler.d.ts +30 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.handler.js +38 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.command.d.ts +23 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.command.js +1 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.handler.d.ts +22 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.handler.js +42 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-authorizer.d.ts +29 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-authorizer.js +49 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-commands.d.ts +22 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-commands.js +30 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.command.d.ts +24 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.command.js +1 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.handler.d.ts +31 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.handler.js +39 -0
- package/dist/service/s3/command/get-object/get-object-authorizer.d.ts +11 -8
- package/dist/service/s3/command/get-object/get-object-authorizer.js +26 -34
- package/dist/service/s3/command/get-object/get-object-loader.d.ts +7 -3
- package/dist/service/s3/command/get-object/get-object-loader.js +9 -4
- package/dist/service/s3/command/get-object/get-object.command.d.ts +2 -1
- package/dist/service/s3/command/get-object/get-object.handler.d.ts +4 -0
- package/dist/service/s3/command/get-object/get-object.handler.js +13 -7
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.command.d.ts +29 -0
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.command.js +1 -0
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.handler.d.ts +21 -0
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.handler.js +33 -0
- package/dist/service/s3/command/head-object/head-object-loader.js +2 -0
- package/dist/service/s3/command/head-object/head-object.command.d.ts +2 -1
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-rules-validation.js +18 -0
- package/dist/service/s3/command/list-multipart-uploads/list-multipart-uploads.handler.js +1 -2
- package/dist/service/s3/command/list-object-versions/list-object-versions-summaries.js +1 -2
- package/dist/service/s3/command/list-objects/list-objects-page-builder.d.ts +5 -0
- package/dist/service/s3/command/list-objects/list-objects-page-builder.js +11 -6
- package/dist/service/s3/command/list-objects/list-objects.command.d.ts +5 -1
- package/dist/service/s3/command/list-objects/list-objects.handler.js +5 -0
- package/dist/service/s3/command/list-objects-v2/list-objects-v2-page-builder.d.ts +6 -0
- package/dist/service/s3/command/list-objects-v2/list-objects-v2-page-builder.js +11 -5
- package/dist/service/s3/command/list-objects-v2/list-objects-v2.command.d.ts +5 -1
- package/dist/service/s3/command/list-objects-v2/list-objects-v2.handler.js +5 -0
- package/dist/service/s3/command/list-parts/list-parts.handler.js +3 -3
- package/dist/service/s3/command/multipart/sim-s3-multipart-access.js +1 -1
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.command.d.ts +21 -0
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.command.js +1 -0
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.handler.d.ts +31 -0
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.handler.js +41 -0
- package/dist/service/s3/command/put-object/put-object-builder.d.ts +5 -1
- package/dist/service/s3/command/put-object/put-object-builder.js +10 -1
- package/dist/service/s3/command/put-object/put-object.command.d.ts +5 -1
- package/dist/service/s3/command/put-object/put-object.handler.js +2 -1
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.command.d.ts +37 -0
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.command.js +1 -0
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.handler.d.ts +22 -0
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.handler.js +46 -0
- package/dist/service/s3/command/sim-s3-command.types.d.ts +6 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-access.d.ts +61 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-access.js +49 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-authorizer.d.ts +30 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-authorizer.js +27 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-commands.d.ts +26 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-commands.js +34 -0
- package/dist/service/s3/error/sim-s3-upload.error.d.ts +41 -0
- package/dist/service/s3/error/sim-s3-upload.error.js +47 -0
- package/dist/service/s3/error/sim-s3.error.d.ts +22 -34
- package/dist/service/s3/error/sim-s3.error.js +26 -40
- package/dist/service/s3/mount/sim-s3-mount.type.d.ts +10 -0
- package/dist/service/s3/notification/event/sim-s3-event-records.d.ts +3 -2
- package/dist/service/s3/notification/event/sim-s3-event-records.js +5 -3
- package/dist/service/s3/notification/event/sim-s3-object-event-builder.d.ts +33 -8
- package/dist/service/s3/notification/event/sim-s3-object-event-builder.js +23 -9
- package/dist/service/s3/notification/sim-s3-object-notifier.d.ts +5 -1
- package/dist/service/s3/notification/sim-s3-object-notifier.js +6 -0
- package/dist/service/s3/object/s3-key-encoding.d.ts +12 -0
- package/dist/service/s3/object/s3-key-encoding.js +14 -0
- package/dist/service/s3/object/s3-listing-encoding.d.ts +42 -0
- package/dist/service/s3/object/s3-listing-encoding.js +75 -0
- package/dist/service/s3/object/s3-object-response-headers.d.ts +40 -0
- package/dist/service/s3/object/s3-object-response-headers.js +49 -2
- package/dist/service/s3/object/s3-object-storage-report.d.ts +19 -0
- package/dist/service/s3/object/s3-object-storage-report.js +18 -0
- package/dist/service/s3/object/s3-object-summary.d.ts +2 -10
- package/dist/service/s3/object/s3-object-summary.js +1 -10
- package/dist/service/s3/object/s3-object-tags.d.ts +61 -0
- package/dist/service/s3/object/s3-object-tags.js +77 -0
- package/dist/service/s3/object/s3-object.d.ts +49 -0
- package/dist/service/s3/object/s3-object.js +52 -1
- package/dist/service/s3/object/s3-server-side-encryption.d.ts +30 -0
- package/dist/service/s3/object/s3-server-side-encryption.js +42 -0
- package/dist/service/s3/object/s3-storage-class.d.ts +45 -0
- package/dist/service/s3/object/s3-storage-class.js +67 -0
- package/dist/service/s3/object/s3-write-metadata.d.ts +17 -3
- package/dist/service/s3/object/s3-write-metadata.js +43 -0
- package/dist/service/s3/object/s3-write-storage.d.ts +27 -0
- package/dist/service/s3/object/s3-write-storage.js +21 -0
- package/dist/service/s3/object/s3-write-tagging.d.ts +24 -0
- package/dist/service/s3/object/s3-write-tagging.js +19 -0
- package/dist/service/s3/sdk/sim-s3-sdk-bucket-routes.js +12 -0
- package/dist/service/s3/sdk/sim-s3-sdk-command-router.js +2 -0
- package/dist/service/s3/sdk/sim-s3-sdk-object-tagging-routes.d.ts +9 -0
- package/dist/service/s3/sdk/sim-s3-sdk-object-tagging-routes.js +23 -0
- package/dist/service/s3/serve/api/sim-s3-api-bucket-routes.js +22 -0
- package/dist/service/s3/serve/api/sim-s3-api-configuration-output.d.ts +4 -0
- package/dist/service/s3/serve/api/sim-s3-api-configuration-output.js +10 -0
- package/dist/service/s3/serve/api/sim-s3-api-encryption-read.d.ts +7 -0
- package/dist/service/s3/serve/api/sim-s3-api-encryption-read.js +30 -0
- package/dist/service/s3/serve/api/sim-s3-api-head-output.d.ts +4 -2
- package/dist/service/s3/serve/api/sim-s3-api-head-output.js +8 -2
- package/dist/service/s3/serve/api/sim-s3-api-input.d.ts +0 -6
- package/dist/service/s3/serve/api/sim-s3-api-input.js +2 -13
- package/dist/service/s3/serve/api/sim-s3-api-listing.d.ts +5 -0
- package/dist/service/s3/serve/api/sim-s3-api-listing.js +5 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-input.d.ts +16 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-input.js +34 -7
- package/dist/service/s3/serve/api/sim-s3-api-object-output.d.ts +18 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-output.js +21 -2
- package/dist/service/s3/serve/api/sim-s3-api-object-routes.js +22 -1
- package/dist/service/s3/serve/api/sim-s3-api-output.d.ts +5 -1
- package/dist/service/s3/serve/api/sim-s3-api-output.js +16 -5
- package/dist/service/s3/serve/api/sim-s3-api-request.d.ts +6 -5
- package/dist/service/s3/serve/api/sim-s3-api-request.js +55 -11
- package/dist/service/s3/serve/api/sim-s3-api-routes.js +2 -2
- package/dist/service/s3/serve/api/sim-s3-api-tagging-read.d.ts +9 -0
- package/dist/service/s3/serve/api/sim-s3-api-tagging-read.js +14 -0
- package/dist/service/s3/serve/api/sim-s3-api.d.ts +7 -1
- package/dist/service/s3/serve/api/sim-s3-api.js +7 -1
- package/dist/service/s3/serve/sim-s3-rest-controller.d.ts +1 -5
- package/dist/service/s3/serve/sim-s3-rest-controller.js +3 -17
- package/dist/service/s3/serve/sim-s3-rest-object-reader.d.ts +3 -0
- package/dist/service/s3/serve/sim-s3-rest-object-reader.js +8 -1
- package/dist/service/s3/serve/sim-s3-rest-upload.d.ts +20 -0
- package/dist/service/s3/serve/sim-s3-rest-upload.js +30 -0
- package/dist/service/s3/serve/website/sim-s3-website-object-loader.js +1 -0
- package/dist/service/s3/serve/website/sim-s3-website-object.d.ts +2 -0
- package/dist/service/s3/serve/website/sim-s3-website-object.js +3 -0
- package/dist/service/s3/sim-s3-commands.d.ts +4 -0
- package/dist/service/s3/sim-s3-commands.js +6 -0
- package/dist/service/s3/sim-s3-operations.d.ts +11 -4
- package/dist/service/s3/sim-s3-operations.js +17 -4
- package/dist/service/s3/sim-s3-tagging-operations.d.ts +21 -0
- package/dist/service/s3/sim-s3-tagging-operations.js +25 -0
- package/dist/service/s3/sim-s3.d.ts +12 -0
- package/dist/service/s3/sim-s3.js +13 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deleting-storage.d.ts +34 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deleting-storage.js +34 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deletion.d.ts +9 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deletion.js +24 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-storage.d.ts +5 -4
- package/dist/service/s3/storage/filesystem/s3-filesystem-storage.js +5 -3
- package/dist/service/s3/upload/sim-s3-completed-upload.js +5 -1
- package/dist/service/s3/upload/sim-s3-multipart-upload.d.ts +18 -0
- package/dist/service/s3/upload/sim-s3-multipart-upload.js +8 -0
- package/dist/service/s3/upload/sim-s3-multipart-uploads.d.ts +6 -0
- package/dist/service/s3/upload/sim-s3-multipart-uploads.js +5 -0
- package/dist/util/background/background-clock-waits.d.ts +52 -0
- package/dist/util/background/background-clock-waits.js +76 -0
- package/dist/util/background/background-jitter.js +1 -0
- package/dist/util/background/background-pending-tasks.d.ts +55 -0
- package/dist/util/background/background-pending-tasks.js +117 -0
- package/dist/util/background/background-settled-tasks.d.ts +4 -1
- package/dist/util/background/background-settled-tasks.js +4 -1
- package/dist/util/background/background.d.ts +43 -0
- package/dist/util/background/background.js +27 -19
- package/dist/util/background/non-deterministic-background.d.ts +12 -0
- package/dist/util/background/non-deterministic-background.js +24 -20
- package/dist/util/clock/sim-clock-control.js +23 -2
- package/docs/services/apigateway/README.md +3 -1
- package/docs/services/athena/README.md +126 -3
- package/docs/services/cloudformation/README.md +775 -65
- package/docs/services/cognito/README.md +5 -0
- package/docs/services/dynamodb/README.md +86 -11
- package/docs/services/lambda/README.md +603 -39
- package/docs/services/s3/README.md +688 -57
- package/package.json +8 -2
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { SimAws } from "../../aws/sim-aws.js";
|
|
2
|
+
import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
|
|
3
|
+
import type { SimCloudFormationStackName } from "../stack/sim-cfn-stack.type.js";
|
|
4
|
+
import type { SimCfnExports } from "../export/sim-cfn-exports.js";
|
|
5
|
+
import type { SimCloudFormationParameterInput } from "../parameters/sim-cfn-parameters.type.js";
|
|
6
|
+
import { type CfnTemplateBodyRecord, SimCfnTemplate } from "./sim-cfn-template.js";
|
|
7
|
+
interface SimCfnCommandTemplateContext {
|
|
8
|
+
readonly simAws: SimAws;
|
|
9
|
+
readonly accountRegionScope: SimAwsAccountRegionScope;
|
|
10
|
+
readonly stackName: SimCloudFormationStackName;
|
|
11
|
+
/** The ID of the Stack the template is for, where the Stack has one yet. */
|
|
12
|
+
readonly stackId?: string | undefined;
|
|
13
|
+
/** The command input the template's Parameter values are read from. */
|
|
14
|
+
readonly input: SimCloudFormationParameterInput;
|
|
15
|
+
readonly exports?: SimCfnExports | undefined;
|
|
16
|
+
}
|
|
17
|
+
interface SimCfnCommandTemplateProperties extends SimCfnCommandTemplateContext {
|
|
18
|
+
readonly templateBody: string;
|
|
19
|
+
}
|
|
20
|
+
interface SimCfnHeldTemplateProperties extends SimCfnCommandTemplateContext {
|
|
21
|
+
/** The parsed template the Stack is already deployed from. */
|
|
22
|
+
readonly template: CfnTemplateBodyRecord;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* The template a Stack command was sent, parsed against its Parameter values.
|
|
26
|
+
*
|
|
27
|
+
* A Parameter of type `AWS::SSM::Parameter::Value` reads simulated Parameter
|
|
28
|
+
* Store, so parsing needs the simulation the command arrived at as well as the
|
|
29
|
+
* body it carried.
|
|
30
|
+
*/
|
|
31
|
+
export declare function simCfnCommandTemplate(properties: SimCfnCommandTemplateProperties): SimCfnTemplate;
|
|
32
|
+
/**
|
|
33
|
+
* The template a Stack already holds, read against new Parameter values.
|
|
34
|
+
*
|
|
35
|
+
* What `UsePreviousTemplate` updates from. The Stack holds the template parsed
|
|
36
|
+
* rather than as a body, so this takes the parsed one straight back rather than
|
|
37
|
+
* putting it through the parsing and SAM expansion it has already been through.
|
|
38
|
+
*/
|
|
39
|
+
export declare function simCfnHeldTemplate(properties: SimCfnHeldTemplateProperties): SimCfnTemplate;
|
|
40
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { SimCfnParameters } from "../parameters/sim-cfn-parameters.js";
|
|
2
|
+
import { makeSimCfnParameterStore } from "../parameters/store/sim-cfn-parameter-store.js";
|
|
3
|
+
import { SimCfnTemplate, } from "./sim-cfn-template.js";
|
|
4
|
+
/**
|
|
5
|
+
* The template a Stack command was sent, parsed against its Parameter values.
|
|
6
|
+
*
|
|
7
|
+
* A Parameter of type `AWS::SSM::Parameter::Value` reads simulated Parameter
|
|
8
|
+
* Store, so parsing needs the simulation the command arrived at as well as the
|
|
9
|
+
* body it carried.
|
|
10
|
+
*/
|
|
11
|
+
export function simCfnCommandTemplate(properties) {
|
|
12
|
+
const { stackName, stackId, accountRegionScope, exports } = properties;
|
|
13
|
+
return SimCfnTemplate.fromTemplateBody(properties.templateBody, {
|
|
14
|
+
stackName,
|
|
15
|
+
stackId,
|
|
16
|
+
parameters: commandParameters(properties),
|
|
17
|
+
accountRegionScope,
|
|
18
|
+
exports,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* The template a Stack already holds, read against new Parameter values.
|
|
23
|
+
*
|
|
24
|
+
* What `UsePreviousTemplate` updates from. The Stack holds the template parsed
|
|
25
|
+
* rather than as a body, so this takes the parsed one straight back rather than
|
|
26
|
+
* putting it through the parsing and SAM expansion it has already been through.
|
|
27
|
+
*/
|
|
28
|
+
export function simCfnHeldTemplate(properties) {
|
|
29
|
+
const { template, stackName, stackId, accountRegionScope, exports } = properties;
|
|
30
|
+
return new SimCfnTemplate({
|
|
31
|
+
template,
|
|
32
|
+
stackName,
|
|
33
|
+
stackId,
|
|
34
|
+
parameters: commandParameters(properties),
|
|
35
|
+
accountRegionScope,
|
|
36
|
+
exports,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
function commandParameters(properties) {
|
|
40
|
+
const { simAws, accountRegionScope, stackName } = properties;
|
|
41
|
+
return SimCfnParameters.fromInput(properties.input, {
|
|
42
|
+
stackName,
|
|
43
|
+
parameterStore: makeSimCfnParameterStore({ simAws, accountRegionScope }),
|
|
44
|
+
});
|
|
45
|
+
}
|
|
@@ -31,11 +31,13 @@ interface SimCfnTemplateProperties {
|
|
|
31
31
|
readonly template: CfnTemplateBodyRecord;
|
|
32
32
|
readonly parameters?: SimCfnParameters | undefined;
|
|
33
33
|
readonly stackName?: string | undefined;
|
|
34
|
+
readonly stackId?: string | undefined;
|
|
34
35
|
readonly accountRegionScope?: SimAwsAccountRegionScope | undefined;
|
|
35
36
|
readonly exports?: SimCfnExports | undefined;
|
|
36
37
|
}
|
|
37
38
|
interface SimCfnTemplateFromBodyProperties {
|
|
38
39
|
readonly stackName?: string | undefined;
|
|
40
|
+
readonly stackId?: string | undefined;
|
|
39
41
|
readonly parameters?: SimCfnParameters | undefined;
|
|
40
42
|
readonly accountRegionScope?: SimAwsAccountRegionScope | undefined;
|
|
41
43
|
readonly exports?: SimCfnExports | undefined;
|
|
@@ -48,6 +50,8 @@ interface SimCfnTemplateFromBodyProperties {
|
|
|
48
50
|
export declare class SimCfnTemplate {
|
|
49
51
|
readonly template: CfnTemplateBodyRecord;
|
|
50
52
|
readonly stackName: string | undefined;
|
|
53
|
+
/** The unique ID of the Stack this template is being deployed as. */
|
|
54
|
+
readonly stackId: string | undefined;
|
|
51
55
|
readonly parameters: SimCfnParameters;
|
|
52
56
|
/** The export names a Stack deployed from this template can import. */
|
|
53
57
|
readonly exports: SimCfnExports | undefined;
|
|
@@ -81,6 +85,9 @@ export declare class SimCfnTemplate {
|
|
|
81
85
|
*
|
|
82
86
|
* Resource-backed intrinsic functions are left unresolved here because
|
|
83
87
|
* Outputs are resolved after Resource creation.
|
|
88
|
+
*
|
|
89
|
+
* An Output whose `Condition` attribute is false is left out entirely, so it
|
|
90
|
+
* never reaches the Stack's Outputs and publishes no export.
|
|
84
91
|
*/
|
|
85
92
|
outputTemplates(): SimCfnOutputTemplateRecord[];
|
|
86
93
|
/**
|
|
@@ -5,6 +5,7 @@ import { SimCfnTemplateBodyValidator } from "./sim-cfn-template-body-validator.j
|
|
|
5
5
|
import { parseSimCfnTemplateBody } from "./sim-cfn-template-body-parse.js";
|
|
6
6
|
import { SimCfnPseudoParameters } from "../parameters/pseudo/sim-cfn-pseudo-parameters.js";
|
|
7
7
|
import { SimCfnConditionEvaluator } from "./condition/sim-cfn-condition-evaluator.js";
|
|
8
|
+
import { SimCfnOutputConditions } from "./condition/sim-cfn-output-conditions.js";
|
|
8
9
|
import { SimCfnResourceConditions } from "./condition/sim-cfn-resource-conditions.js";
|
|
9
10
|
import { samExpandedTemplate } from "../sam/sim-cfn-sam-expansion.js";
|
|
10
11
|
/**
|
|
@@ -15,15 +16,18 @@ import { samExpandedTemplate } from "../sam/sim-cfn-sam-expansion.js";
|
|
|
15
16
|
export class SimCfnTemplate {
|
|
16
17
|
template;
|
|
17
18
|
stackName;
|
|
19
|
+
/** The unique ID of the Stack this template is being deployed as. */
|
|
20
|
+
stackId;
|
|
18
21
|
parameters;
|
|
19
22
|
/** The export names a Stack deployed from this template can import. */
|
|
20
23
|
exports;
|
|
21
24
|
accountRegionScope;
|
|
22
25
|
evaluatedConditions;
|
|
23
26
|
constructor(properties) {
|
|
24
|
-
const { template, parameters, stackName, accountRegionScope, exports } = properties;
|
|
27
|
+
const { template, parameters, stackName, stackId, accountRegionScope, exports, } = properties;
|
|
25
28
|
this.template = template;
|
|
26
29
|
this.stackName = stackName;
|
|
30
|
+
this.stackId = stackId;
|
|
27
31
|
this.accountRegionScope = accountRegionScope;
|
|
28
32
|
this.exports = exports;
|
|
29
33
|
const validator = new SimCfnTemplateBodyValidator({ template, stackName });
|
|
@@ -49,6 +53,7 @@ export class SimCfnTemplate {
|
|
|
49
53
|
template: samExpandedTemplate(template),
|
|
50
54
|
parameters: properties.parameters,
|
|
51
55
|
stackName: properties.stackName,
|
|
56
|
+
stackId: properties.stackId,
|
|
52
57
|
accountRegionScope: properties.accountRegionScope,
|
|
53
58
|
exports: properties.exports,
|
|
54
59
|
});
|
|
@@ -86,13 +91,21 @@ export class SimCfnTemplate {
|
|
|
86
91
|
*
|
|
87
92
|
* Resource-backed intrinsic functions are left unresolved here because
|
|
88
93
|
* Outputs are resolved after Resource creation.
|
|
94
|
+
*
|
|
95
|
+
* An Output whose `Condition` attribute is false is left out entirely, so it
|
|
96
|
+
* never reaches the Stack's Outputs and publishes no export.
|
|
89
97
|
*/
|
|
90
98
|
outputTemplates() {
|
|
91
99
|
const valueResolver = this.valueResolver();
|
|
100
|
+
const outputConditions = new SimCfnOutputConditions({
|
|
101
|
+
conditions: this.conditions(),
|
|
102
|
+
stackName: this.stackName,
|
|
103
|
+
});
|
|
92
104
|
return Object.entries(this.template.Outputs ?? {})
|
|
93
105
|
.filter((entry) => {
|
|
94
106
|
return isRecord(entry[1]);
|
|
95
107
|
})
|
|
108
|
+
.filter(([outputKey, outputTemplate]) => !outputConditions.excludes(outputKey, outputTemplate))
|
|
96
109
|
.map(([outputKey, outputTemplate]) => ({
|
|
97
110
|
outputKey,
|
|
98
111
|
template: valueResolver.resolveRecordFor(`Sim CloudFormation Output ${outputKey}`, outputTemplate),
|
|
@@ -107,6 +120,7 @@ export class SimCfnTemplate {
|
|
|
107
120
|
return new SimCfnPseudoParameters({
|
|
108
121
|
accountRegionScope: this.accountRegionScope,
|
|
109
122
|
stackName: this.stackName,
|
|
123
|
+
stackId: this.stackId,
|
|
110
124
|
});
|
|
111
125
|
}
|
|
112
126
|
/**
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import type { SimCloudFrontBehavior } from "../../behaviour/sim-cloud-front-behavior.js";
|
|
1
2
|
import type { SimCfForwardedToOrigin } from "../../origin-request-policy/sim-cf-forwarded-to-origin.js";
|
|
2
3
|
interface SimCfCustomOriginRequestProperties {
|
|
3
4
|
readonly domainName: string;
|
|
4
5
|
readonly originPath: string;
|
|
5
6
|
readonly request: Request;
|
|
7
|
+
readonly viewerProtocolPolicy?: SimCloudFrontBehavior["viewerProtocolPolicy"] | undefined;
|
|
6
8
|
/**
|
|
7
9
|
* What the Behavior's cache policy and origin request policy carry to the
|
|
8
10
|
* Origin between them.
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SimAwsLocalUrl } from "../../../../serve/http/url/sim-aws-local-url.js";
|
|
2
|
+
import { isSimAwsLocalRequest, simAwsRequestHostname, } from "../../../../serve/http/url/sim-aws-request-hostname.js";
|
|
2
3
|
import { stripSimAwsControlHeaders } from "../../../iam/request/sim-aws-control-headers.js";
|
|
3
4
|
import { simCfForwardedOriginHeaders, simCfForwardedOriginSearch, } from "./sim-cf-custom-origin-forwarding.js";
|
|
4
5
|
/**
|
|
@@ -23,6 +24,7 @@ export function simCfCustomOriginRequest(properties) {
|
|
|
23
24
|
originUrl.pathname = originRequestPath(properties.originPath, viewerUrl.pathname);
|
|
24
25
|
originUrl.search = simCfForwardedOriginSearch(viewerUrl.search, forwarded);
|
|
25
26
|
const headers = simCfForwardedOriginHeaders(request.headers, forwarded);
|
|
27
|
+
applyAwsFacingViewerOrigin(headers, request, properties.viewerProtocolPolicy);
|
|
26
28
|
headers.set("host", originUrl.host);
|
|
27
29
|
// Who the Origin request is from is the Origin's business, not the viewer's,
|
|
28
30
|
// so a viewer's own control headers are dropped before the Origin's are
|
|
@@ -51,6 +53,53 @@ export function simCfCustomOriginRequest(properties) {
|
|
|
51
53
|
signal: request.signal,
|
|
52
54
|
});
|
|
53
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* Replace the local same-origin value a browser sends with the origin the
|
|
58
|
+
* viewer would use against CloudFront.
|
|
59
|
+
*
|
|
60
|
+
* https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/RequestAndResponseBehaviorCustomOrigin.html
|
|
61
|
+
*/
|
|
62
|
+
function applyAwsFacingViewerOrigin(headers, viewerRequest, viewerProtocolPolicy) {
|
|
63
|
+
const value = headers.get("origin");
|
|
64
|
+
if (value === null || !isSimAwsLocalRequest(viewerRequest)) {
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
const origin = originUrl(value);
|
|
68
|
+
if (origin === undefined || origin.origin !== viewerOrigin(viewerRequest)) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
origin.hostname = simAwsRequestHostname(viewerRequest);
|
|
72
|
+
origin.port = "";
|
|
73
|
+
if (viewerProtocolPolicy === "redirect-to-https" ||
|
|
74
|
+
viewerProtocolPolicy === "https-only") {
|
|
75
|
+
origin.protocol = "https:";
|
|
76
|
+
}
|
|
77
|
+
headers.set("origin", origin.origin);
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* The local origin the viewer used, including the Host header when it differs
|
|
81
|
+
* from the Request URL.
|
|
82
|
+
*/
|
|
83
|
+
function viewerOrigin(request) {
|
|
84
|
+
const url = new URL(request.url);
|
|
85
|
+
const host = request.headers.get("host");
|
|
86
|
+
if (host !== null) {
|
|
87
|
+
url.host = host;
|
|
88
|
+
}
|
|
89
|
+
return url.origin;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Read a serialized Origin without rejecting the request when it is `null` or
|
|
93
|
+
* malformed. CloudFront forwards those values unchanged.
|
|
94
|
+
*/
|
|
95
|
+
function originUrl(value) {
|
|
96
|
+
try {
|
|
97
|
+
return new URL(value);
|
|
98
|
+
}
|
|
99
|
+
catch {
|
|
100
|
+
return undefined;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
54
103
|
/**
|
|
55
104
|
* Prefix the Origin path to the request path, as CloudFront does.
|
|
56
105
|
*/
|
|
@@ -60,6 +60,7 @@ export class SimCloudFrontCustomOrigin {
|
|
|
60
60
|
domainName: this.domainName,
|
|
61
61
|
originPath: this.originPath,
|
|
62
62
|
request: request.req,
|
|
63
|
+
viewerProtocolPolicy: request.behavior.viewerProtocolPolicy,
|
|
63
64
|
forwarded: simCfBehaviorForwardedToOrigin(request.behavior, this.policies),
|
|
64
65
|
customHeaders: this.customHeaders,
|
|
65
66
|
signingHeaders: this.signer.forRequest(request),
|
|
@@ -21,6 +21,7 @@ export class SimCfS3OriginResponses {
|
|
|
21
21
|
foundObject(object, request) {
|
|
22
22
|
const headers = simS3ObjectResponseHeaders({
|
|
23
23
|
metadata: object.metadata.values,
|
|
24
|
+
userMetadata: object.metadata.userDefined,
|
|
24
25
|
bodyLength: object.body.length,
|
|
25
26
|
etag: simS3QuotedETag(object.etag),
|
|
26
27
|
lastModified: object.lastModified,
|
|
@@ -44,7 +44,7 @@ export class SimCognitoProviderPage {
|
|
|
44
44
|
*/
|
|
45
45
|
claimFields(provider) {
|
|
46
46
|
return simCognitoMappedClaimNames(provider)
|
|
47
|
-
.map((claimName) => this.markup.field(`${simCognitoClaimFieldPrefix}${claimName}`, `${claimName} claim`, "text", simCognitoDefaultClaim(claimName)))
|
|
47
|
+
.map((claimName) => this.markup.field(`${simCognitoClaimFieldPrefix}${claimName}`, `${claimName} claim`, "text", simCognitoDefaultClaim(provider, claimName)))
|
|
48
48
|
.join("");
|
|
49
49
|
}
|
|
50
50
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { SimCognitoAttributeDataTypeValue } from "../schema/sim-cognito-attribute-data-type.js";
|
|
1
2
|
import type { SimCognitoUserPoolSchema } from "../schema/sim-cognito-user-pool-schema.js";
|
|
2
3
|
import type { SimCognitoAttributeType } from "../user/sim-cognito-user-attributes.js";
|
|
3
4
|
import type { SimCognitoExternalUser } from "./sim-cognito-external-user.js";
|
|
@@ -25,6 +26,10 @@ export declare class SimCognitoAttributeMapping {
|
|
|
25
26
|
* This mapping as a described provider reports it.
|
|
26
27
|
*/
|
|
27
28
|
toOutput(): SimCognitoAttributeMappingType;
|
|
29
|
+
/**
|
|
30
|
+
* The pool attribute types one provider claim is mapped onto.
|
|
31
|
+
*/
|
|
32
|
+
dataTypesForClaim(claimName: string): readonly SimCognitoAttributeDataTypeValue[];
|
|
28
33
|
/**
|
|
29
34
|
* The attributes an external user's claims map onto.
|
|
30
35
|
*/
|
|
@@ -20,6 +20,23 @@ export class SimCognitoAttributeMapping {
|
|
|
20
20
|
toOutput() {
|
|
21
21
|
return { ...this.mapping };
|
|
22
22
|
}
|
|
23
|
+
/**
|
|
24
|
+
* The pool attribute types one provider claim is mapped onto.
|
|
25
|
+
*/
|
|
26
|
+
dataTypesForClaim(claimName) {
|
|
27
|
+
return Object.entries(this.mapping).flatMap(([attributeName, mappedClaimName]) => {
|
|
28
|
+
if (mappedClaimName !== claimName) {
|
|
29
|
+
return [];
|
|
30
|
+
}
|
|
31
|
+
const attribute = this.schema.find(attributeName);
|
|
32
|
+
return attribute === undefined
|
|
33
|
+
? []
|
|
34
|
+
: [
|
|
35
|
+
attribute.toOutput()
|
|
36
|
+
.AttributeDataType,
|
|
37
|
+
];
|
|
38
|
+
});
|
|
39
|
+
}
|
|
23
40
|
/**
|
|
24
41
|
* The attributes an external user's claims map onto.
|
|
25
42
|
*/
|
|
@@ -16,13 +16,13 @@ export declare const simCognitoClaimFieldPrefix = "claim_";
|
|
|
16
16
|
*/
|
|
17
17
|
export declare function simCognitoMappedClaimNames(provider: SimCognitoUserPoolIdentityProvider): readonly string[];
|
|
18
18
|
/**
|
|
19
|
-
* What one claim field is pre-filled with, so
|
|
20
|
-
*
|
|
19
|
+
* What one claim field is pre-filled with, so the page signs a user in when
|
|
20
|
+
* nobody edits it.
|
|
21
21
|
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
22
|
+
* The pool attribute type decides the shape. A string claim whose name refers
|
|
23
|
+
* to an email address uses the reserved address.
|
|
24
24
|
*/
|
|
25
|
-
export declare function simCognitoDefaultClaim(claimName: string): string;
|
|
25
|
+
export declare function simCognitoDefaultClaim(provider: SimCognitoUserPoolIdentityProvider, claimName: string): string;
|
|
26
26
|
/**
|
|
27
27
|
* The subject the page pre-fills, which says on its face where it came from.
|
|
28
28
|
*/
|
|
@@ -28,16 +28,32 @@ export function simCognitoMappedClaimNames(provider) {
|
|
|
28
28
|
return [...new Set(Object.values(provider.attributeMapping.toOutput()))];
|
|
29
29
|
}
|
|
30
30
|
/**
|
|
31
|
-
* What one claim field is pre-filled with, so
|
|
32
|
-
*
|
|
31
|
+
* What one claim field is pre-filled with, so the page signs a user in when
|
|
32
|
+
* nobody edits it.
|
|
33
33
|
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
34
|
+
* The pool attribute type decides the shape. A string claim whose name refers
|
|
35
|
+
* to an email address uses the reserved address.
|
|
36
36
|
*/
|
|
37
|
-
export function simCognitoDefaultClaim(claimName) {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
37
|
+
export function simCognitoDefaultClaim(provider, claimName) {
|
|
38
|
+
const dataType = provider.attributeMapping
|
|
39
|
+
.dataTypesForClaim(claimName)
|
|
40
|
+
.find((mappedType) => mappedType !== "String") ?? "String";
|
|
41
|
+
switch (dataType) {
|
|
42
|
+
case "Boolean": {
|
|
43
|
+
return "true";
|
|
44
|
+
}
|
|
45
|
+
case "DateTime": {
|
|
46
|
+
return "1970-01-01T00:00:00.000Z";
|
|
47
|
+
}
|
|
48
|
+
case "Number": {
|
|
49
|
+
return "0";
|
|
50
|
+
}
|
|
51
|
+
case "String": {
|
|
52
|
+
return claimName.toLowerCase().includes("email")
|
|
53
|
+
? defaultAddress
|
|
54
|
+
: defaultClaimValue;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
41
57
|
}
|
|
42
58
|
/**
|
|
43
59
|
* The subject the page pre-fills, which says on its face where it came from.
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { SimCfnServiceResourceFactory } from "../../cloudformation/resource/factory/sim-cfn-resource-factory.type.js";
|
|
2
2
|
import type { SimCfnResource, SimCloudFormationResourceCreateContext, SimCloudFormationResourceDeleteContext } from "../../cloudformation/resource/sim-cfn-resource.js";
|
|
3
|
+
import type { SimCloudFormationResourceUpdateContext } from "../../cloudformation/resource/sim-cfn-resource.type.js";
|
|
3
4
|
import type { SimDynamoDb } from "../sim-dynamodb.js";
|
|
4
5
|
interface SimDynamoDbCfnResourceFactoryProperties {
|
|
5
6
|
readonly dynamoDb: SimDynamoDb;
|
|
@@ -26,5 +27,9 @@ export declare class SimDynamoDbCfnResourceFactory implements SimCfnServiceResou
|
|
|
26
27
|
* Delete a simulated DynamoDB resource created from a CloudFormation Resource.
|
|
27
28
|
*/
|
|
28
29
|
delete(resourceTypeName: string, resource: SimCfnResource, context: SimCloudFormationResourceDeleteContext): Promise<void>;
|
|
30
|
+
/**
|
|
31
|
+
* Validate a DynamoDB Resource replacement before its table is deleted.
|
|
32
|
+
*/
|
|
33
|
+
assertUpdateAllowed(resourceTypeName: string, current: SimCfnResource, updated: SimCfnResource, context: SimCloudFormationResourceUpdateContext): void;
|
|
29
34
|
}
|
|
30
35
|
export {};
|
|
@@ -2,6 +2,7 @@ import { simCfnResourceCallerOptions } from "../../cloudformation/resource/calle
|
|
|
2
2
|
import { SimCfnDynamoDbGlobalTableCreator } from "./global-table/sim-cfn-dynamodb-global-table-creator.js";
|
|
3
3
|
import { SimCfnDynamoDbTableCreator } from "./table/sim-cfn-dynamodb-table-creator.js";
|
|
4
4
|
import { SimCfnDynamoDbResourceDeleter } from "./sim-cfn-dynamodb-resource-deleter.js";
|
|
5
|
+
import { SimCfnDynamoDbTableUpdateValidator } from "./table/sim-cfn-dynamodb-table-update-validator.js";
|
|
5
6
|
/**
|
|
6
7
|
* CloudFormation Resource factory for simulated DynamoDB resources.
|
|
7
8
|
*/
|
|
@@ -50,4 +51,18 @@ export class SimDynamoDbCfnResourceFactory {
|
|
|
50
51
|
async delete(resourceTypeName, resource, context) {
|
|
51
52
|
await this.deleter.delete(resourceTypeName, resource, simCfnResourceCallerOptions(context.caller));
|
|
52
53
|
}
|
|
54
|
+
/**
|
|
55
|
+
* Validate a DynamoDB Resource replacement before its table is deleted.
|
|
56
|
+
*/
|
|
57
|
+
assertUpdateAllowed(resourceTypeName, current, updated, context) {
|
|
58
|
+
if (resourceTypeName !== "Table") {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
new SimCfnDynamoDbTableUpdateValidator({
|
|
62
|
+
currentResource: current,
|
|
63
|
+
updatedResource: updated,
|
|
64
|
+
currentProperties: context.currentResolvedProperties,
|
|
65
|
+
updatedProperties: context.updatedResolvedProperties,
|
|
66
|
+
}).assertAllowed();
|
|
67
|
+
}
|
|
53
68
|
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
|
|
2
|
+
import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
|
|
3
|
+
interface SimCfnDynamoDbTableUpdateValidatorProperties {
|
|
4
|
+
readonly currentResource: SimCfnResource;
|
|
5
|
+
readonly updatedResource: SimCfnResource;
|
|
6
|
+
readonly currentProperties: SimCfnTemplateValueRecord;
|
|
7
|
+
readonly updatedProperties: SimCfnTemplateValueRecord;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Validates constraints that apply when CloudFormation updates a table.
|
|
11
|
+
*/
|
|
12
|
+
export declare class SimCfnDynamoDbTableUpdateValidator {
|
|
13
|
+
private readonly properties;
|
|
14
|
+
constructor(properties: SimCfnDynamoDbTableUpdateValidatorProperties);
|
|
15
|
+
/**
|
|
16
|
+
* Refuse a template diff that asks DynamoDB for too many index operations.
|
|
17
|
+
*
|
|
18
|
+
* https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html
|
|
19
|
+
*/
|
|
20
|
+
assertAllowed(): void;
|
|
21
|
+
private tableProperties;
|
|
22
|
+
private indexUpdates;
|
|
23
|
+
}
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { readSimDynamoDbIndexName } from "../../secondary-index/sim-dynamodb-index-name.js";
|
|
2
|
+
import { SimDynamoDbIndexUpdate } from "../../table/sim-dynamodb-index-update.js";
|
|
3
|
+
import { SimCfnDynamoDbTableProperties } from "./sim-cfn-dynamodb-table-properties.js";
|
|
4
|
+
/**
|
|
5
|
+
* Validates constraints that apply when CloudFormation updates a table.
|
|
6
|
+
*/
|
|
7
|
+
export class SimCfnDynamoDbTableUpdateValidator {
|
|
8
|
+
properties;
|
|
9
|
+
constructor(properties) {
|
|
10
|
+
this.properties = properties;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Refuse a template diff that asks DynamoDB for too many index operations.
|
|
14
|
+
*
|
|
15
|
+
* https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html
|
|
16
|
+
*/
|
|
17
|
+
assertAllowed() {
|
|
18
|
+
const { currentResource, updatedResource } = this.properties;
|
|
19
|
+
const current = this.tableProperties(currentResource, this.properties.currentProperties).globalSecondaryIndexes();
|
|
20
|
+
const updated = this.tableProperties(updatedResource, this.properties.updatedProperties).globalSecondaryIndexes();
|
|
21
|
+
SimDynamoDbIndexUpdate.fromInput(this.indexUpdates(current, updated));
|
|
22
|
+
}
|
|
23
|
+
tableProperties(resource, properties) {
|
|
24
|
+
return new SimCfnDynamoDbTableProperties({ resource, properties });
|
|
25
|
+
}
|
|
26
|
+
indexUpdates(current, updated) {
|
|
27
|
+
const currentNames = new Set(current.map((index) => readSimDynamoDbIndexName(index.IndexName)));
|
|
28
|
+
const updatedNames = new Set(updated.map((index) => readSimDynamoDbIndexName(index.IndexName)));
|
|
29
|
+
return [
|
|
30
|
+
...updated
|
|
31
|
+
.filter((index) => !currentNames.has(readSimDynamoDbIndexName(index.IndexName)))
|
|
32
|
+
.map((index) => ({ Create: index })),
|
|
33
|
+
...current
|
|
34
|
+
.filter((index) => !updatedNames.has(readSimDynamoDbIndexName(index.IndexName)))
|
|
35
|
+
.map((index) => ({ Delete: { IndexName: index.IndexName } })),
|
|
36
|
+
];
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -1,23 +1,26 @@
|
|
|
1
1
|
import type { SimDynamoDbFilter } from "../../expression/filter/sim-dynamodb-filter.js";
|
|
2
2
|
import type { SimDynamoDbKeyConditionTerms } from "../../expression/key-condition/sim-dynamodb-key-condition-terms.js";
|
|
3
|
+
import type { SimDynamoDbProjection } from "../../expression/projection/sim-dynamodb-projection.js";
|
|
3
4
|
import type { SimQueryCommandInput } from "./query.command.js";
|
|
4
5
|
/**
|
|
5
|
-
* What a query's expressions say, once
|
|
6
|
+
* What a query's expressions say, once all three have been read.
|
|
6
7
|
*/
|
|
7
8
|
export interface SimDynamoDbQueryExpressions {
|
|
8
9
|
readonly terms: SimDynamoDbKeyConditionTerms;
|
|
9
10
|
readonly filter: SimDynamoDbFilter | undefined;
|
|
11
|
+
readonly projection: SimDynamoDbProjection | undefined;
|
|
10
12
|
}
|
|
11
13
|
/**
|
|
12
|
-
* Read
|
|
14
|
+
* Read every expression of a query against one set of placeholders.
|
|
13
15
|
*
|
|
14
16
|
* `ExpressionAttributeNames` and `ExpressionAttributeValues` are shared between
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
+
* the key condition, the filter and the projection, so they are checked once
|
|
18
|
+
* all three have been read. A placeholder used by any one of them counts as
|
|
19
|
+
* used, and one used by none is refused.
|
|
17
20
|
*
|
|
18
|
-
*
|
|
19
|
-
* refuse is refused whether or not the table is there. What is left is
|
|
20
|
-
* that needs the key schema, which each of them is held to once the
|
|
21
|
-
* been found.
|
|
21
|
+
* All three are read before the table is reached, so an expression DynamoDB
|
|
22
|
+
* would refuse is refused whether or not the table is there. What is left is
|
|
23
|
+
* the part that needs the key schema, which each of them is held to once the
|
|
24
|
+
* table has been found.
|
|
22
25
|
*/
|
|
23
26
|
export declare function readSimDynamoDbQueryExpressions(input: SimQueryCommandInput): SimDynamoDbQueryExpressions;
|
|
@@ -1,24 +1,27 @@
|
|
|
1
1
|
import { parseSimDynamoDbFilter } from "../../expression/filter/sim-dynamodb-filter-expression.js";
|
|
2
2
|
import { readSimDynamoDbKeyCondition } from "../../expression/key-condition/sim-dynamodb-key-condition-expression.js";
|
|
3
|
+
import { parseSimDynamoDbProjection } from "../../expression/projection/sim-dynamodb-projection-expression.js";
|
|
3
4
|
import { SimDynamoDbExpressionParameters } from "../../expression/sim-dynamodb-expression-parameters.js";
|
|
4
5
|
/**
|
|
5
|
-
* Read
|
|
6
|
+
* Read every expression of a query against one set of placeholders.
|
|
6
7
|
*
|
|
7
8
|
* `ExpressionAttributeNames` and `ExpressionAttributeValues` are shared between
|
|
8
|
-
*
|
|
9
|
-
*
|
|
9
|
+
* the key condition, the filter and the projection, so they are checked once
|
|
10
|
+
* all three have been read. A placeholder used by any one of them counts as
|
|
11
|
+
* used, and one used by none is refused.
|
|
10
12
|
*
|
|
11
|
-
*
|
|
12
|
-
* refuse is refused whether or not the table is there. What is left is
|
|
13
|
-
* that needs the key schema, which each of them is held to once the
|
|
14
|
-
* been found.
|
|
13
|
+
* All three are read before the table is reached, so an expression DynamoDB
|
|
14
|
+
* would refuse is refused whether or not the table is there. What is left is
|
|
15
|
+
* the part that needs the key schema, which each of them is held to once the
|
|
16
|
+
* table has been found.
|
|
15
17
|
*/
|
|
16
18
|
export function readSimDynamoDbQueryExpressions(input) {
|
|
17
19
|
const parameters = new SimDynamoDbExpressionParameters(input);
|
|
18
20
|
const terms = readSimDynamoDbKeyCondition(input, parameters);
|
|
19
21
|
const filter = filterIn(input.FilterExpression, parameters);
|
|
22
|
+
const projection = projectionIn(input.ProjectionExpression, parameters);
|
|
20
23
|
parameters.assertAllUsed();
|
|
21
|
-
return { terms, filter };
|
|
24
|
+
return { terms, filter, projection };
|
|
22
25
|
}
|
|
23
26
|
/**
|
|
24
27
|
* Read the filter a query drops read items by, if it names one.
|
|
@@ -29,3 +32,12 @@ function filterIn(expression, parameters) {
|
|
|
29
32
|
}
|
|
30
33
|
return parseSimDynamoDbFilter(expression, parameters);
|
|
31
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* Read the parts of an item a query answers with, if it names them.
|
|
37
|
+
*/
|
|
38
|
+
function projectionIn(expression, parameters) {
|
|
39
|
+
if (expression === undefined) {
|
|
40
|
+
return undefined;
|
|
41
|
+
}
|
|
42
|
+
return parseSimDynamoDbProjection(expression, parameters);
|
|
43
|
+
}
|
|
@@ -46,6 +46,7 @@ export class SimDynamoDbQuery {
|
|
|
46
46
|
// waits for the view the same way the key condition does.
|
|
47
47
|
expressions.filter?.assertNamesNoKeyAttribute(view.keySchema);
|
|
48
48
|
expressions.filter?.assertNamesOnlyCarried(view);
|
|
49
|
+
expressions.projection?.assertNamesOnlyCarried(view);
|
|
49
50
|
// The token names an item of the collection being read, so it can only be
|
|
50
51
|
// checked once that collection is known.
|
|
51
52
|
const after = readSimDynamoDbQueryStartKey({
|
|
@@ -65,6 +66,7 @@ export class SimDynamoDbQuery {
|
|
|
65
66
|
...new SimDynamoDbReadAnswer({
|
|
66
67
|
page,
|
|
67
68
|
filter: expressions.filter,
|
|
69
|
+
projection: expressions.projection,
|
|
68
70
|
select,
|
|
69
71
|
view,
|
|
70
72
|
}).fields(),
|
|
@@ -9,7 +9,6 @@ import { SimDynamoDbUnsimulatedInput } from "../item/sim-dynamodb-unsimulated-in
|
|
|
9
9
|
*/
|
|
10
10
|
export function refuseUnsimulatedQueryInput(input) {
|
|
11
11
|
const unsimulated = new SimDynamoDbUnsimulatedInput("Query");
|
|
12
|
-
unsimulated.refuse(input.ProjectionExpression !== undefined, "ProjectionExpression", "answering with whole items where part of them was asked for");
|
|
13
12
|
unsimulated.refuse((input.AttributesToGet ?? []).length > 0, "AttributesToGet", "answering with whole items where part of them was asked for");
|
|
14
13
|
unsimulated.refuseNamed(input.KeyConditions, "KeyConditions", "reading a key condition written the way KeyConditionExpression replaced");
|
|
15
14
|
unsimulated.refuseNamed(input.QueryFilter, "QueryFilter", "answering with the items a legacy filter would have dropped");
|