@kensio/yulin 0.12.0 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -24
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/serve/controller/sim-aws-service-controller-container.d.ts +6 -2
- package/dist/serve/controller/sim-aws-service-controller-container.d.ts.map +1 -1
- package/dist/serve/controller/sim-aws-service-controller-container.js +4 -2
- package/dist/serve/controller/sim-aws-service-controller-container.js.map +1 -1
- package/dist/serve/http/sim-aws-http.d.ts +5 -2
- package/dist/serve/http/sim-aws-http.d.ts.map +1 -1
- package/dist/serve/http/sim-aws-http.js +3 -4
- package/dist/serve/http/sim-aws-http.js.map +1 -1
- package/dist/serve/http/sim-aws-local-server.d.ts +10 -3
- package/dist/serve/http/sim-aws-local-server.d.ts.map +1 -1
- package/dist/serve/http/sim-aws-local-server.js +7 -7
- package/dist/serve/http/sim-aws-local-server.js.map +1 -1
- package/dist/serve/http/sim-aws-local-url.d.ts +6 -1
- package/dist/serve/http/sim-aws-local-url.d.ts.map +1 -1
- package/dist/serve/http/sim-aws-local-url.js +4 -4
- package/dist/serve/http/sim-aws-local-url.js.map +1 -1
- package/dist/service/aws/arn.d.ts +1 -1
- package/dist/service/aws/arn.d.ts.map +1 -1
- package/dist/service/aws/arn.js +1 -1
- package/dist/service/aws/arn.js.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.d.ts +23 -9
- package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.js +23 -8
- package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
- package/dist/service/aws/sim-aws-account.d.ts +23 -9
- package/dist/service/aws/sim-aws-account.d.ts.map +1 -1
- package/dist/service/aws/sim-aws-account.js +21 -9
- package/dist/service/aws/sim-aws-account.js.map +1 -1
- package/dist/service/aws/sim-aws-region.d.ts +23 -9
- package/dist/service/aws/sim-aws-region.d.ts.map +1 -1
- package/dist/service/aws/sim-aws-region.js +21 -9
- package/dist/service/aws/sim-aws-region.js.map +1 -1
- package/dist/service/aws/sim-aws.d.ts +49 -30
- package/dist/service/aws/sim-aws.d.ts.map +1 -1
- package/dist/service/aws/sim-aws.js +92 -42
- package/dist/service/aws/sim-aws.js.map +1 -1
- package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.d.ts +5 -0
- package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.d.ts.map +1 -1
- package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.js.map +1 -1
- package/dist/service/cloudfront/cff/adapter/sim-cff-event-adapter.d.ts +36 -0
- package/dist/service/cloudfront/cff/adapter/sim-cff-event-adapter.d.ts.map +1 -0
- package/dist/service/cloudfront/cff/adapter/sim-cff-event-adapter.js +177 -0
- package/dist/service/cloudfront/cff/adapter/sim-cff-event-adapter.js.map +1 -0
- package/dist/service/cloudfront/cff/function-code-input/cff-function-code-input.d.ts +38 -0
- package/dist/service/cloudfront/cff/function-code-input/cff-function-code-input.d.ts.map +1 -0
- package/dist/service/cloudfront/cff/function-code-input/cff-function-code-input.js +69 -0
- package/dist/service/cloudfront/cff/function-code-input/cff-function-code-input.js.map +1 -0
- package/dist/service/cloudfront/cff/sim-cloudfront-function.d.ts +48 -0
- package/dist/service/cloudfront/cff/sim-cloudfront-function.d.ts.map +1 -0
- package/dist/service/cloudfront/cff/sim-cloudfront-function.js +66 -0
- package/dist/service/cloudfront/cff/sim-cloudfront-function.js.map +1 -0
- package/dist/service/cloudfront/command/create-distribution/create-distribution.cmd.d.ts +100 -0
- package/dist/service/cloudfront/command/create-distribution/create-distribution.cmd.d.ts.map +1 -0
- package/dist/service/cloudfront/command/create-distribution/create-distribution.cmd.js +2 -0
- package/dist/service/cloudfront/command/create-distribution/create-distribution.cmd.js.map +1 -0
- package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.d.ts +16 -12
- package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.d.ts.map +1 -1
- package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js +23 -78
- package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js.map +1 -1
- package/dist/service/cloudfront/command/create-function/create-function.cmd.d.ts +43 -0
- package/dist/service/cloudfront/command/create-function/create-function.cmd.d.ts.map +1 -0
- package/dist/service/cloudfront/command/create-function/create-function.cmd.js +5 -0
- package/dist/service/cloudfront/command/create-function/create-function.cmd.js.map +1 -0
- package/dist/service/cloudfront/command/create-function/create-function.handler.d.ts +28 -0
- package/dist/service/cloudfront/command/create-function/create-function.handler.d.ts.map +1 -0
- package/dist/service/cloudfront/command/create-function/create-function.handler.js +49 -0
- package/dist/service/cloudfront/command/create-function/create-function.handler.js.map +1 -0
- package/dist/service/cloudfront/command/get-distribution/get-distribution.cmd.d.ts +29 -0
- package/dist/service/cloudfront/command/get-distribution/get-distribution.cmd.d.ts.map +1 -0
- package/dist/service/cloudfront/command/get-distribution/get-distribution.cmd.js +2 -0
- package/dist/service/cloudfront/command/get-distribution/get-distribution.cmd.js.map +1 -0
- package/dist/service/cloudfront/command/get-distribution/get-distribution.handler.d.ts +21 -0
- package/dist/service/cloudfront/command/get-distribution/get-distribution.handler.d.ts.map +1 -0
- package/dist/service/cloudfront/command/get-distribution/get-distribution.handler.js +40 -0
- package/dist/service/cloudfront/command/get-distribution/get-distribution.handler.js.map +1 -0
- package/dist/service/cloudfront/controller/sim-cloudfront-controller.d.ts +20 -4
- package/dist/service/cloudfront/controller/sim-cloudfront-controller.d.ts.map +1 -1
- package/dist/service/cloudfront/controller/sim-cloudfront-controller.js +52 -7
- package/dist/service/cloudfront/controller/sim-cloudfront-controller.js.map +1 -1
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-behavior-configurator.d.ts +21 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-behavior-configurator.d.ts.map +1 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-behavior-configurator.js +90 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-behavior-configurator.js.map +1 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-distribution-configurator.d.ts +17 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-distribution-configurator.d.ts.map +1 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-distribution-configurator.js +28 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-distribution-configurator.js.map +1 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.d.ts +15 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.d.ts.map +1 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.js +26 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-origin-configurator.js.map +1 -0
- package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts +23 -1
- package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts.map +1 -1
- package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js +23 -1
- package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js.map +1 -1
- package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts +21 -0
- package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts.map +1 -0
- package/dist/service/cloudfront/error/sim-cloudfront.error.js +20 -0
- package/dist/service/cloudfront/error/sim-cloudfront.error.js.map +1 -0
- package/dist/service/cloudfront/factory/cloudfront-functions.factory.d.ts +15 -2
- package/dist/service/cloudfront/factory/cloudfront-functions.factory.d.ts.map +1 -1
- package/dist/service/cloudfront/factory/cloudfront-functions.factory.js +22 -12
- package/dist/service/cloudfront/factory/cloudfront-functions.factory.js.map +1 -1
- package/dist/service/cloudfront/index.d.ts +1 -0
- package/dist/service/cloudfront/index.d.ts.map +1 -1
- package/dist/service/cloudfront/index.js +1 -0
- package/dist/service/cloudfront/index.js.map +1 -1
- package/dist/service/cloudfront/origin/sim-cloudfront-s3-origin.d.ts +7 -4
- package/dist/service/cloudfront/origin/sim-cloudfront-s3-origin.d.ts.map +1 -1
- package/dist/service/cloudfront/origin/sim-cloudfront-s3-origin.js +5 -5
- package/dist/service/cloudfront/origin/sim-cloudfront-s3-origin.js.map +1 -1
- package/dist/service/cloudfront/resolver/sim-cloud-front-behavior-resolver.js +2 -2
- package/dist/service/cloudfront/resolver/sim-cloud-front-behavior-resolver.js.map +1 -1
- package/dist/service/cloudfront/resolver/sim-cloudfront-path-pattern.d.ts +6 -2
- package/dist/service/cloudfront/resolver/sim-cloudfront-path-pattern.d.ts.map +1 -1
- package/dist/service/cloudfront/resolver/sim-cloudfront-path-pattern.js +3 -3
- package/dist/service/cloudfront/resolver/sim-cloudfront-path-pattern.js.map +1 -1
- package/dist/service/cloudfront/router/sim-cloud-front-distro-router.d.ts +24 -2
- package/dist/service/cloudfront/router/sim-cloud-front-distro-router.d.ts.map +1 -1
- package/dist/service/cloudfront/router/sim-cloud-front-distro-router.js +61 -10
- package/dist/service/cloudfront/router/sim-cloud-front-distro-router.js.map +1 -1
- package/dist/service/cloudfront/sim-cloud-front-registry.d.ts +8 -0
- package/dist/service/cloudfront/sim-cloud-front-registry.d.ts.map +1 -1
- package/dist/service/cloudfront/sim-cloud-front-registry.js +12 -0
- package/dist/service/cloudfront/sim-cloud-front-registry.js.map +1 -1
- package/dist/service/cloudfront/sim-cloudfront.d.ts +34 -4
- package/dist/service/cloudfront/sim-cloudfront.d.ts.map +1 -1
- package/dist/service/cloudfront/sim-cloudfront.js +55 -3
- package/dist/service/cloudfront/sim-cloudfront.js.map +1 -1
- package/dist/service/cloudfront/typings/cloudfront-functions.namespace.d.ts +22 -3
- package/dist/service/cloudfront/typings/cloudfront-functions.namespace.d.ts.map +1 -1
- package/dist/service/dynamodb/command/create-table/create-table.cmd.d.ts +61 -0
- package/dist/service/dynamodb/command/create-table/create-table.cmd.d.ts.map +1 -0
- package/dist/service/dynamodb/command/create-table/create-table.cmd.js +2 -0
- package/dist/service/dynamodb/command/create-table/create-table.cmd.js.map +1 -0
- package/dist/service/dynamodb/command/create-table/create-table.handler.d.ts +10 -4
- package/dist/service/dynamodb/command/create-table/create-table.handler.d.ts.map +1 -1
- package/dist/service/dynamodb/command/create-table/create-table.handler.js +12 -11
- package/dist/service/dynamodb/command/create-table/create-table.handler.js.map +1 -1
- package/dist/service/dynamodb/command/describe-table/describe-table.cmd.d.ts +21 -0
- package/dist/service/dynamodb/command/describe-table/describe-table.cmd.d.ts.map +1 -0
- package/dist/service/dynamodb/command/describe-table/describe-table.cmd.js +2 -0
- package/dist/service/dynamodb/command/describe-table/describe-table.cmd.js.map +1 -0
- package/dist/service/dynamodb/command/describe-table/describe-table.handler.d.ts +8 -4
- package/dist/service/dynamodb/command/describe-table/describe-table.handler.d.ts.map +1 -1
- package/dist/service/dynamodb/command/describe-table/describe-table.handler.js +5 -7
- package/dist/service/dynamodb/command/describe-table/describe-table.handler.js.map +1 -1
- package/dist/service/dynamodb/command/list-tables/list-tables.cmd.d.ts +22 -0
- package/dist/service/dynamodb/command/list-tables/list-tables.cmd.d.ts.map +1 -0
- package/dist/service/dynamodb/command/list-tables/list-tables.cmd.js +2 -0
- package/dist/service/dynamodb/command/list-tables/list-tables.cmd.js.map +1 -0
- package/dist/service/dynamodb/command/list-tables/list-tables.handler.d.ts +8 -4
- package/dist/service/dynamodb/command/list-tables/list-tables.handler.d.ts.map +1 -1
- package/dist/service/dynamodb/command/list-tables/list-tables.handler.js +3 -2
- package/dist/service/dynamodb/command/list-tables/list-tables.handler.js.map +1 -1
- package/dist/service/dynamodb/command/put-item/put-item.cmd.d.ts +135 -0
- package/dist/service/dynamodb/command/put-item/put-item.cmd.d.ts.map +1 -0
- package/dist/service/dynamodb/command/put-item/put-item.cmd.js +2 -0
- package/dist/service/dynamodb/command/put-item/put-item.cmd.js.map +1 -0
- package/dist/service/dynamodb/command/put-item/put-item.handler.d.ts +8 -4
- package/dist/service/dynamodb/command/put-item/put-item.handler.d.ts.map +1 -1
- package/dist/service/dynamodb/command/put-item/put-item.handler.js +4 -7
- package/dist/service/dynamodb/command/put-item/put-item.handler.js.map +1 -1
- package/dist/service/dynamodb/error/dynamodb.error.d.ts +28 -0
- package/dist/service/dynamodb/error/dynamodb.error.d.ts.map +1 -0
- package/dist/service/dynamodb/error/dynamodb.error.js +29 -0
- package/dist/service/dynamodb/error/dynamodb.error.js.map +1 -0
- package/dist/service/dynamodb/index.d.ts +0 -1
- package/dist/service/dynamodb/index.d.ts.map +1 -1
- package/dist/service/dynamodb/index.js +0 -1
- package/dist/service/dynamodb/index.js.map +1 -1
- package/dist/service/dynamodb/item/dynamodb-item-attribute.d.ts +3 -3
- package/dist/service/dynamodb/item/dynamodb-item-attribute.d.ts.map +1 -1
- package/dist/service/dynamodb/item/dynamodb-item-attribute.js +10 -10
- package/dist/service/dynamodb/item/dynamodb-item-attribute.js.map +1 -1
- package/dist/service/dynamodb/item/dynamodb-item.d.ts +3 -3
- package/dist/service/dynamodb/item/dynamodb-item.d.ts.map +1 -1
- package/dist/service/dynamodb/item/dynamodb-item.js.map +1 -1
- package/dist/service/dynamodb/sim-dynamodb.d.ts +15 -7
- package/dist/service/dynamodb/sim-dynamodb.d.ts.map +1 -1
- package/dist/service/dynamodb/sim-dynamodb.js +11 -6
- package/dist/service/dynamodb/sim-dynamodb.js.map +1 -1
- package/dist/service/dynamodb/table/dynamodb-key-schema.d.ts +9 -15
- package/dist/service/dynamodb/table/dynamodb-key-schema.d.ts.map +1 -1
- package/dist/service/dynamodb/table/dynamodb-key-schema.js +29 -35
- package/dist/service/dynamodb/table/dynamodb-key-schema.js.map +1 -1
- package/dist/service/dynamodb/table/dynamodb-table.d.ts +14 -8
- package/dist/service/dynamodb/table/dynamodb-table.d.ts.map +1 -1
- package/dist/service/dynamodb/table/dynamodb-table.js +9 -7
- package/dist/service/dynamodb/table/dynamodb-table.js.map +1 -1
- package/dist/service/s3/bucket/sim-s3-bucket.d.ts +9 -6
- package/dist/service/s3/bucket/sim-s3-bucket.d.ts.map +1 -1
- package/dist/service/s3/bucket/sim-s3-bucket.js +4 -5
- package/dist/service/s3/bucket/sim-s3-bucket.js.map +1 -1
- package/dist/service/s3/bucket/website/s3-bucket-website.d.ts +2 -2
- package/dist/service/s3/bucket/website/s3-bucket-website.d.ts.map +1 -1
- package/dist/service/s3/bucket/website/s3-bucket-website.js.map +1 -1
- package/dist/service/s3/command/create-bucket/create-bucket.cmd.d.ts +21 -0
- package/dist/service/s3/command/create-bucket/create-bucket.cmd.d.ts.map +1 -0
- package/dist/service/s3/command/create-bucket/create-bucket.cmd.js +2 -0
- package/dist/service/s3/command/create-bucket/create-bucket.cmd.js.map +1 -0
- package/dist/service/s3/command/create-bucket/create-bucket.handler.d.ts +10 -4
- package/dist/service/s3/command/create-bucket/create-bucket.handler.d.ts.map +1 -1
- package/dist/service/s3/command/create-bucket/create-bucket.handler.js +12 -18
- package/dist/service/s3/command/create-bucket/create-bucket.handler.js.map +1 -1
- package/dist/service/s3/command/get-object/get-object.cmd.d.ts +23 -0
- package/dist/service/s3/command/get-object/get-object.cmd.d.ts.map +1 -0
- package/dist/service/s3/command/get-object/get-object.cmd.js +2 -0
- package/dist/service/s3/command/get-object/get-object.cmd.js.map +1 -0
- package/dist/service/s3/command/get-object/get-object.handler.d.ts +8 -4
- package/dist/service/s3/command/get-object/get-object.handler.d.ts.map +1 -1
- package/dist/service/s3/command/get-object/get-object.handler.js +5 -11
- package/dist/service/s3/command/get-object/get-object.handler.js.map +1 -1
- package/dist/service/s3/command/list-buckets/list-buckets.cmd.d.ts +30 -0
- package/dist/service/s3/command/list-buckets/list-buckets.cmd.d.ts.map +1 -0
- package/dist/service/s3/command/list-buckets/list-buckets.cmd.js +2 -0
- package/dist/service/s3/command/list-buckets/list-buckets.cmd.js.map +1 -0
- package/dist/service/s3/command/list-buckets/list-buckets.handler.d.ts +8 -4
- package/dist/service/s3/command/list-buckets/list-buckets.handler.d.ts.map +1 -1
- package/dist/service/s3/command/list-buckets/list-buckets.handler.js +2 -2
- package/dist/service/s3/command/list-buckets/list-buckets.handler.js.map +1 -1
- package/dist/service/s3/command/list-objects/list-objects.cmd.d.ts +36 -0
- package/dist/service/s3/command/list-objects/list-objects.cmd.d.ts.map +1 -0
- package/dist/service/s3/command/list-objects/list-objects.cmd.js +2 -0
- package/dist/service/s3/command/list-objects/list-objects.cmd.js.map +1 -0
- package/dist/service/s3/command/list-objects/list-objects.handler.d.ts +8 -4
- package/dist/service/s3/command/list-objects/list-objects.handler.d.ts.map +1 -1
- package/dist/service/s3/command/list-objects/list-objects.handler.js +4 -7
- package/dist/service/s3/command/list-objects/list-objects.handler.js.map +1 -1
- package/dist/service/s3/command/put-bucket-website/put-bucket-website.cmd.d.ts +72 -0
- package/dist/service/s3/command/put-bucket-website/put-bucket-website.cmd.d.ts.map +1 -0
- package/dist/service/s3/command/put-bucket-website/put-bucket-website.cmd.js +2 -0
- package/dist/service/s3/command/put-bucket-website/put-bucket-website.cmd.js.map +1 -0
- package/dist/service/s3/command/put-bucket-website/put-bucket-website.handler.d.ts +8 -4
- package/dist/service/s3/command/put-bucket-website/put-bucket-website.handler.d.ts.map +1 -1
- package/dist/service/s3/command/put-bucket-website/put-bucket-website.handler.js +4 -7
- package/dist/service/s3/command/put-bucket-website/put-bucket-website.handler.js.map +1 -1
- package/dist/service/s3/command/put-object/put-object.cmd.d.ts +30 -0
- package/dist/service/s3/command/put-object/put-object.cmd.d.ts.map +1 -0
- package/dist/service/s3/command/put-object/put-object.cmd.js +2 -0
- package/dist/service/s3/command/put-object/put-object.cmd.js.map +1 -0
- package/dist/service/s3/command/put-object/put-object.handler.d.ts +8 -4
- package/dist/service/s3/command/put-object/put-object.handler.d.ts.map +1 -1
- package/dist/service/s3/command/put-object/put-object.handler.js +9 -8
- package/dist/service/s3/command/put-object/put-object.handler.js.map +1 -1
- package/dist/service/s3/error/s3.error.d.ts +42 -0
- package/dist/service/s3/error/s3.error.d.ts.map +1 -0
- package/dist/service/s3/error/s3.error.js +47 -0
- package/dist/service/s3/error/s3.error.js.map +1 -0
- package/dist/service/s3/index.d.ts +0 -1
- package/dist/service/s3/index.d.ts.map +1 -1
- package/dist/service/s3/index.js +0 -1
- package/dist/service/s3/index.js.map +1 -1
- package/dist/service/s3/object/s3-object.d.ts +7 -1
- package/dist/service/s3/object/s3-object.d.ts.map +1 -1
- package/dist/service/s3/object/s3-object.js +2 -1
- package/dist/service/s3/object/s3-object.js.map +1 -1
- package/dist/service/s3/serve/sim-s3-controller.d.ts +6 -3
- package/dist/service/s3/serve/sim-s3-controller.d.ts.map +1 -1
- package/dist/service/s3/serve/sim-s3-controller.js +4 -2
- package/dist/service/s3/serve/sim-s3-controller.js.map +1 -1
- package/dist/service/s3/serve/sim-s3-req-router.d.ts +6 -3
- package/dist/service/s3/serve/sim-s3-req-router.d.ts.map +1 -1
- package/dist/service/s3/serve/sim-s3-req-router.js +5 -3
- package/dist/service/s3/serve/sim-s3-req-router.js.map +1 -1
- package/dist/service/s3/sim-s3.d.ts +19 -9
- package/dist/service/s3/sim-s3.d.ts.map +1 -1
- package/dist/service/s3/sim-s3.js +16 -9
- package/dist/service/s3/sim-s3.js.map +1 -1
- package/dist/service/s3/storage/s3-filesystem-storage.d.ts +6 -1
- package/dist/service/s3/storage/s3-filesystem-storage.d.ts.map +1 -1
- package/dist/service/s3/storage/s3-filesystem-storage.js +10 -6
- package/dist/service/s3/storage/s3-filesystem-storage.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +11 -26
|
@@ -11,34 +11,34 @@ export class DynamoDBItemAttribute {
|
|
|
11
11
|
* instance.
|
|
12
12
|
*/
|
|
13
13
|
static fromAttributeValue(value) {
|
|
14
|
-
if (
|
|
14
|
+
if ("BOOL" in value) {
|
|
15
15
|
return new DynamoDBItemAttribute(value.BOOL);
|
|
16
16
|
}
|
|
17
|
-
if (
|
|
17
|
+
if ("NULL" in value) {
|
|
18
18
|
return new DynamoDBItemAttribute(null);
|
|
19
19
|
}
|
|
20
|
-
if (
|
|
20
|
+
if ("S" in value) {
|
|
21
21
|
return new DynamoDBItemAttribute(value.S);
|
|
22
22
|
}
|
|
23
|
-
if (
|
|
23
|
+
if ("N" in value) {
|
|
24
24
|
return new DynamoDBItemAttribute(Number(value.N));
|
|
25
25
|
}
|
|
26
|
-
if (
|
|
26
|
+
if ("B" in value) {
|
|
27
27
|
return new DynamoDBItemAttribute(value.B);
|
|
28
28
|
}
|
|
29
|
-
if (
|
|
29
|
+
if ("SS" in value) {
|
|
30
30
|
return new DynamoDBItemAttribute(new Set(value.SS));
|
|
31
31
|
}
|
|
32
|
-
if (
|
|
32
|
+
if ("NS" in value) {
|
|
33
33
|
return new DynamoDBItemAttribute(new Set(value.NS.map(Number)));
|
|
34
34
|
}
|
|
35
|
-
if (
|
|
35
|
+
if ("BS" in value) {
|
|
36
36
|
return new DynamoDBItemAttribute(new Set(value.BS));
|
|
37
37
|
}
|
|
38
|
-
if (
|
|
38
|
+
if ("L" in value) {
|
|
39
39
|
return new DynamoDBItemAttribute(value.L.map((el) => DynamoDBItemAttribute.fromAttributeValue(el).value));
|
|
40
40
|
}
|
|
41
|
-
if (
|
|
41
|
+
if ("M" in value) {
|
|
42
42
|
return new DynamoDBItemAttribute(Object.fromEntries(Object.entries(value.M).map(([key, val]) => [
|
|
43
43
|
key,
|
|
44
44
|
DynamoDBItemAttribute.fromAttributeValue(val).value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamodb-item-attribute.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/item/dynamodb-item-attribute.ts"],"names":[],"mappings":"AAcA;;GAEG;AACH,MAAM,OAAO,qBAAqB;IACX;IAArB,YAAqB,KAAuB;QAAvB,UAAK,GAAL,KAAK,CAAkB;IAAG,CAAC;IAEhD;;;OAGG;IACH,MAAM,CAAC,kBAAkB,
|
|
1
|
+
{"version":3,"file":"dynamodb-item-attribute.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/item/dynamodb-item-attribute.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { AttributeValue } from "@aws-sdk/client-dynamodb";
|
|
2
1
|
import { DynamoDBItemAttribute } from "./dynamodb-item-attribute.js";
|
|
2
|
+
import type { SimDynamoDbAttributeValue } from "../command/put-item/put-item.cmd.js";
|
|
3
3
|
/**
|
|
4
4
|
* A single Item in a DynamoDB Table.
|
|
5
5
|
*/
|
|
@@ -9,10 +9,10 @@ export declare class DynamoDbItem {
|
|
|
9
9
|
/**
|
|
10
10
|
* Convert an AttributeValue structure to a DynamoDbItem instance.
|
|
11
11
|
*/
|
|
12
|
-
static fromAttributeValues(attributeValues: Record<string,
|
|
12
|
+
static fromAttributeValues(attributeValues: Record<string, SimDynamoDbAttributeValue>): DynamoDbItem;
|
|
13
13
|
/**
|
|
14
14
|
* Convert this DynamoDbItem to an AttributeValue structure.
|
|
15
15
|
*/
|
|
16
|
-
toAttributeValues(): Record<string,
|
|
16
|
+
toAttributeValues(): Record<string, SimDynamoDbAttributeValue>;
|
|
17
17
|
}
|
|
18
18
|
//# sourceMappingURL=dynamodb-item.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamodb-item.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/item/dynamodb-item.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"dynamodb-item.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/item/dynamodb-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAErF;;GAEG;AACH,qBAAa,YAAY;IAErB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC;gBAAjD,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAM;IAGjE;;OAEG;IACH,MAAM,CAAC,mBAAmB,CACxB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,GACzD,YAAY;IAWf;;OAEG;IACH,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC;CAQ/D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamodb-item.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/item/dynamodb-item.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dynamodb-item.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/item/dynamodb-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAGrE;;GAEG;AACH,MAAM,OAAO,YAAY;IAEZ;IADX,YACW,aAAoD,EAAE;QAAtD,eAAU,GAAV,UAAU,CAA4C;IAC9D,CAAC;IAEJ;;OAEG;IACH,MAAM,CAAC,mBAAmB,CACxB,eAA0D;QAE1D,OAAO,IAAI,YAAY,CACrB,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;YACpD,GAAG;YACH,qBAAqB,CAAC,kBAAkB,CAAC,KAAK,CAAC;SAChD,CAAC,CACH,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;YACpD,GAAG;YACH,KAAK,CAAC,gBAAgB,EAAE;SACzB,CAAC,CACH,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1,29 +1,37 @@
|
|
|
1
|
-
import type { CreateTableCommand, CreateTableOutput, DescribeTableCommand, DescribeTableOutput, ListTablesCommand, ListTablesOutput, PutItemCommand, PutItemCommandOutput } from "@aws-sdk/client-dynamodb";
|
|
2
1
|
import { type BackgroundScheduler } from "../../util/background/background.js";
|
|
3
2
|
import { type SimAwsAccountRegionScope } from "../aws/sim-aws-account-region-scope.js";
|
|
3
|
+
import type { SimCreateTableCommand, SimCreateTableCommandOutput } from "./command/create-table/create-table.cmd.js";
|
|
4
|
+
import type { SimPutItemCommand, SimPutItemCommandOutput } from "./command/put-item/put-item.cmd.js";
|
|
5
|
+
import type { SimListTablesCommand, SimListTablesCommandOutput } from "./command/list-tables/list-tables.cmd.js";
|
|
6
|
+
import type { SimDescribeTableCommand, SimDescribeTableCommandOutput } from "./command/describe-table/describe-table.cmd.js";
|
|
7
|
+
interface SimDynamoDbProps {
|
|
8
|
+
readonly accountRegionScope?: SimAwsAccountRegionScope;
|
|
9
|
+
readonly background?: BackgroundScheduler;
|
|
10
|
+
}
|
|
4
11
|
/**
|
|
5
12
|
* Simulated DynamoDB. Handles SDK commands. Emulates AWS behaviour and state.
|
|
6
13
|
*/
|
|
7
14
|
export declare class SimDynamoDb {
|
|
15
|
+
private readonly tables;
|
|
8
16
|
private readonly accountRegionScope;
|
|
9
17
|
private readonly background;
|
|
10
|
-
|
|
11
|
-
constructor(accountRegionScope?: SimAwsAccountRegionScope, background?: BackgroundScheduler);
|
|
18
|
+
constructor(props?: SimDynamoDbProps);
|
|
12
19
|
/**
|
|
13
20
|
* Handle a Create Table Command from the SDK.
|
|
14
21
|
*/
|
|
15
|
-
createTable(cmd:
|
|
22
|
+
createTable(cmd: SimCreateTableCommand): Promise<SimCreateTableCommandOutput>;
|
|
16
23
|
/**
|
|
17
24
|
* Handle a List Tables Command from the SDK.
|
|
18
25
|
*/
|
|
19
|
-
listTables(cmd:
|
|
26
|
+
listTables(cmd: SimListTablesCommand): Promise<SimListTablesCommandOutput>;
|
|
20
27
|
/**
|
|
21
28
|
* Handle a Describe Table Command from the SDK.
|
|
22
29
|
*/
|
|
23
|
-
describeTable(cmd:
|
|
30
|
+
describeTable(cmd: SimDescribeTableCommand): Promise<SimDescribeTableCommandOutput>;
|
|
24
31
|
/**
|
|
25
32
|
* Handle a Put Item Command from the SDK.
|
|
26
33
|
*/
|
|
27
|
-
putItem(cmd:
|
|
34
|
+
putItem(cmd: SimPutItemCommand): Promise<SimPutItemCommandOutput>;
|
|
28
35
|
}
|
|
36
|
+
export {};
|
|
29
37
|
//# sourceMappingURL=sim-dynamodb.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-dynamodb.d.ts","sourceRoot":"","sources":["../../../src/service/dynamodb/sim-dynamodb.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sim-dynamodb.d.ts","sourceRoot":"","sources":["../../../src/service/dynamodb/sim-dynamodb.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,qCAAqC,CAAC;AAI7C,OAAO,EACL,KAAK,wBAAwB,EAE9B,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EACV,qBAAqB,EACrB,2BAA2B,EAC5B,MAAM,4CAA4C,CAAC;AACpD,OAAO,KAAK,EACV,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EACV,oBAAoB,EACpB,0BAA0B,EAC3B,MAAM,0CAA0C,CAAC;AAClD,OAAO,KAAK,EACV,uBAAuB,EACvB,6BAA6B,EAC9B,MAAM,gDAAgD,CAAC;AAExD,UAAU,gBAAgB;IACxB,QAAQ,CAAC,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IACvD,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkD;IAEzE,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAC9D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;gBAErC,KAAK,GAAE,gBAAqB;IAUxC;;OAEG;IACG,WAAW,CACf,GAAG,EAAE,qBAAqB,GACzB,OAAO,CAAC,2BAA2B,CAAC;IASvC;;OAEG;IACG,UAAU,CACd,GAAG,EAAE,oBAAoB,GACxB,OAAO,CAAC,0BAA0B,CAAC;IAKtC;;OAEG;IACG,aAAa,CACjB,GAAG,EAAE,uBAAuB,GAC3B,OAAO,CAAC,6BAA6B,CAAC;IAKzC;;OAEG;IACG,OAAO,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAAC,uBAAuB,CAAC;CAIxE"}
|
|
@@ -8,10 +8,11 @@ import { simAwsAccountRegionScopeFactory, } from "../aws/sim-aws-account-region-
|
|
|
8
8
|
* Simulated DynamoDB. Handles SDK commands. Emulates AWS behaviour and state.
|
|
9
9
|
*/
|
|
10
10
|
export class SimDynamoDb {
|
|
11
|
+
tables = new Map();
|
|
11
12
|
accountRegionScope;
|
|
12
13
|
background;
|
|
13
|
-
|
|
14
|
-
|
|
14
|
+
constructor(props = {}) {
|
|
15
|
+
const { accountRegionScope = simAwsAccountRegionScopeFactory.make(), background = new BackgroundTasks(), } = props;
|
|
15
16
|
this.accountRegionScope = accountRegionScope;
|
|
16
17
|
this.background = background;
|
|
17
18
|
}
|
|
@@ -19,28 +20,32 @@ export class SimDynamoDb {
|
|
|
19
20
|
* Handle a Create Table Command from the SDK.
|
|
20
21
|
*/
|
|
21
22
|
async createTable(cmd) {
|
|
22
|
-
const handler = new CreateTableCommandHandler(
|
|
23
|
+
const handler = new CreateTableCommandHandler({
|
|
24
|
+
accountRegionScope: this.accountRegionScope,
|
|
25
|
+
tables: this.tables,
|
|
26
|
+
background: this.background,
|
|
27
|
+
});
|
|
23
28
|
return await handler.handle(cmd);
|
|
24
29
|
}
|
|
25
30
|
/**
|
|
26
31
|
* Handle a List Tables Command from the SDK.
|
|
27
32
|
*/
|
|
28
33
|
async listTables(cmd) {
|
|
29
|
-
const handler = new ListTablesCommandHandler(this.tables);
|
|
34
|
+
const handler = new ListTablesCommandHandler({ tables: this.tables });
|
|
30
35
|
return await handler.handle(cmd);
|
|
31
36
|
}
|
|
32
37
|
/**
|
|
33
38
|
* Handle a Describe Table Command from the SDK.
|
|
34
39
|
*/
|
|
35
40
|
async describeTable(cmd) {
|
|
36
|
-
const handler = new DescribeTableCommandHandler(this.tables);
|
|
41
|
+
const handler = new DescribeTableCommandHandler({ tables: this.tables });
|
|
37
42
|
return await handler.handle(cmd);
|
|
38
43
|
}
|
|
39
44
|
/**
|
|
40
45
|
* Handle a Put Item Command from the SDK.
|
|
41
46
|
*/
|
|
42
47
|
async putItem(cmd) {
|
|
43
|
-
const handler = new PutItemCommandHandler(this.tables);
|
|
48
|
+
const handler = new PutItemCommandHandler({ tables: this.tables });
|
|
44
49
|
return await handler.handle(cmd);
|
|
45
50
|
}
|
|
46
51
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-dynamodb.js","sourceRoot":"","sources":["../../../src/service/dynamodb/sim-dynamodb.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sim-dynamodb.js","sourceRoot":"","sources":["../../../src/service/dynamodb/sim-dynamodb.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,yBAAyB,EAAE,MAAM,gDAAgD,CAAC;AAC3F,OAAO,EAEL,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,EAAE,2BAA2B,EAAE,MAAM,oDAAoD,CAAC;AACjG,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAC/E,OAAO,EAEL,+BAA+B,GAChC,MAAM,wCAAwC,CAAC;AAuBhD;;GAEG;AACH,MAAM,OAAO,WAAW;IACL,MAAM,GAAG,IAAI,GAAG,EAAuC,CAAC;IAExD,kBAAkB,CAA2B;IAC7C,UAAU,CAAsB;IAEjD,YAAY,QAA0B,EAAE;QACtC,MAAM,EACJ,kBAAkB,GAAG,+BAA+B,CAAC,IAAI,EAAE,EAC3D,UAAU,GAAG,IAAI,eAAe,EAAE,GACnC,GAAG,KAAK,CAAC;QAEV,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CACf,GAA0B;QAE1B,MAAM,OAAO,GAAG,IAAI,yBAAyB,CAAC;YAC5C,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CACd,GAAyB;QAEzB,MAAM,OAAO,GAAG,IAAI,wBAAwB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACtE,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CACjB,GAA4B;QAE5B,MAAM,OAAO,GAAG,IAAI,2BAA2B,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACzE,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,GAAsB;QAClC,MAAM,OAAO,GAAG,IAAI,qBAAqB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACnE,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;CACF"}
|
|
@@ -1,22 +1,16 @@
|
|
|
1
|
-
import type { CreateTableInput, KeyType } from "@aws-sdk/client-dynamodb";
|
|
2
|
-
import type { DynamoDbItem } from "../item/dynamodb-item.js";
|
|
3
1
|
import type { DynamoDBAttrType } from "../item/dynamodb-item-attribute.js";
|
|
4
|
-
type
|
|
2
|
+
import type { DynamoDbItem } from "../item/dynamodb-item.js";
|
|
3
|
+
import type { SimCreateTableCommandInput } from "../command/create-table/create-table.cmd.js";
|
|
4
|
+
type DynamoDbKey = number | string;
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_KeySchemaElement.html
|
|
6
|
+
* Simulated DynamoDB table key schema.
|
|
9
7
|
*/
|
|
10
8
|
export declare class DynamoDbKeySchema {
|
|
11
|
-
readonly
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
AttributeName: string;
|
|
17
|
-
KeyType: KeyType;
|
|
18
|
-
};
|
|
19
|
-
constructor(createTableInput: Pick<CreateTableInput, "KeySchema">);
|
|
9
|
+
private readonly hashKeyAttributeName;
|
|
10
|
+
private readonly rangeKeyAttributeName;
|
|
11
|
+
constructor(createTableInput: SimCreateTableCommandInput);
|
|
12
|
+
private requiredKeySchemaElement;
|
|
13
|
+
private keySchemaElement;
|
|
20
14
|
/**
|
|
21
15
|
* Make a primary key string for an item based on this key schema.
|
|
22
16
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamodb-key-schema.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/table/dynamodb-key-schema.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dynamodb-key-schema.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/table/dynamodb-key-schema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EACV,0BAA0B,EAG3B,MAAM,6CAA6C,CAAC;AAErD,KAAK,WAAW,GAAG,MAAM,GAAG,MAAM,CAAC;AAOnC;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IAC9C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAqB;gBAE/C,gBAAgB,EAAE,0BAA0B;IAQxD,OAAO,CAAC,wBAAwB;IAWhC,OAAO,CAAC,gBAAgB;IAaxB;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM;IAmCvC;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,GAAG,KAAK,IAAI,WAAW;CAGvE"}
|
|
@@ -1,53 +1,47 @@
|
|
|
1
1
|
import { assertDefined } from "../../../util/defined/defined.js";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_KeySchemaElement.html
|
|
3
|
+
* Simulated DynamoDB table key schema.
|
|
6
4
|
*/
|
|
7
5
|
export class DynamoDbKeySchema {
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
hashKeyAttributeName;
|
|
7
|
+
rangeKeyAttributeName;
|
|
10
8
|
constructor(createTableInput) {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
assertDefined(sortKeyElement.AttributeName, "Sort Key AttributeName");
|
|
25
|
-
assertDefined(sortKeyElement.KeyType, "Sort Key KeyType");
|
|
26
|
-
this.sortKey = {
|
|
27
|
-
AttributeName: sortKeyElement.AttributeName,
|
|
28
|
-
KeyType: sortKeyElement.KeyType,
|
|
29
|
-
};
|
|
9
|
+
const hashKey = this.requiredKeySchemaElement(createTableInput, "HASH");
|
|
10
|
+
this.hashKeyAttributeName = hashKey.AttributeName;
|
|
11
|
+
const rangeKey = this.keySchemaElement(createTableInput, "RANGE");
|
|
12
|
+
this.rangeKeyAttributeName = rangeKey?.AttributeName;
|
|
13
|
+
}
|
|
14
|
+
requiredKeySchemaElement(createTableInput, keyType) {
|
|
15
|
+
const keySchemaElement = this.keySchemaElement(createTableInput, keyType);
|
|
16
|
+
assertDefined(keySchemaElement, `DynamoDB Table ${keyType} key schema`);
|
|
17
|
+
return keySchemaElement;
|
|
18
|
+
}
|
|
19
|
+
keySchemaElement(createTableInput, keyType) {
|
|
20
|
+
return createTableInput.KeySchema?.find((keySchemaElement) => keySchemaElement.KeyType === keyType &&
|
|
21
|
+
keySchemaElement.AttributeName !== undefined);
|
|
30
22
|
}
|
|
31
23
|
/**
|
|
32
24
|
* Make a primary key string for an item based on this key schema.
|
|
33
25
|
*/
|
|
34
26
|
makeItemKey(item) {
|
|
35
|
-
const partitionKeyAttr = item.attributes[this.
|
|
36
|
-
assertDefined(partitionKeyAttr, `DynamoDB Item partition key ${this.
|
|
27
|
+
const partitionKeyAttr = item.attributes[this.hashKeyAttributeName];
|
|
28
|
+
assertDefined(partitionKeyAttr, `DynamoDB Item partition key ${this.hashKeyAttributeName}`);
|
|
37
29
|
const partitionKey = partitionKeyAttr.value;
|
|
38
30
|
if (!DynamoDbKeySchema.canBeDynamoDbKey(partitionKey)) {
|
|
39
|
-
throw new TypeError(`DynamoDB Item partition key ${this.
|
|
31
|
+
throw new TypeError(`DynamoDB Item partition key ${this.hashKeyAttributeName} must be string or number`);
|
|
40
32
|
}
|
|
41
|
-
const keyParts = {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
33
|
+
const keyParts = {
|
|
34
|
+
[this.hashKeyAttributeName]: partitionKey,
|
|
35
|
+
};
|
|
36
|
+
if (this.rangeKeyAttributeName !== undefined) {
|
|
37
|
+
const sortKeyAttr = item.attributes[this.rangeKeyAttributeName];
|
|
38
|
+
if (sortKeyAttr === undefined) {
|
|
39
|
+
throw new TypeError(`DynamoDB Item sort key ${this.rangeKeyAttributeName} is undefined`);
|
|
46
40
|
}
|
|
47
|
-
if (!DynamoDbKeySchema.canBeDynamoDbKey(
|
|
48
|
-
throw new TypeError(`DynamoDB Item sort key ${this.
|
|
41
|
+
if (!DynamoDbKeySchema.canBeDynamoDbKey(sortKeyAttr.value)) {
|
|
42
|
+
throw new TypeError(`DynamoDB Item sort key ${this.rangeKeyAttributeName} must be string or number`);
|
|
49
43
|
}
|
|
50
|
-
keyParts[this.
|
|
44
|
+
keyParts[this.rangeKeyAttributeName] = sortKeyAttr.value;
|
|
51
45
|
}
|
|
52
46
|
return JSON.stringify(keyParts);
|
|
53
47
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamodb-key-schema.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/table/dynamodb-key-schema.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dynamodb-key-schema.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/table/dynamodb-key-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAgBjE;;GAEG;AACH,MAAM,OAAO,iBAAiB;IACX,oBAAoB,CAAS;IAC7B,qBAAqB,CAAqB;IAE3D,YAAY,gBAA4C;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;QACxE,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC;QAElD,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QAClE,IAAI,CAAC,qBAAqB,GAAG,QAAQ,EAAE,aAAa,CAAC;IACvD,CAAC;IAEO,wBAAwB,CAC9B,gBAA4C,EAC5C,OAA2B;QAE3B,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QAE1E,aAAa,CAAC,gBAAgB,EAAE,kBAAkB,OAAO,aAAa,CAAC,CAAC;QAExE,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAEO,gBAAgB,CACtB,gBAA4C,EAC5C,OAA2B;QAE3B,OAAO,gBAAgB,CAAC,SAAS,EAAE,IAAI,CACrC,CACE,gBAAgB,EACyC,EAAE,CAC3D,gBAAgB,CAAC,OAAO,KAAK,OAAO;YACpC,gBAAgB,CAAC,aAAa,KAAK,SAAS,CAC/C,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,IAAkB;QAC5B,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACpE,aAAa,CACX,gBAAgB,EAChB,+BAA+B,IAAI,CAAC,oBAAoB,EAAE,CAC3D,CAAC;QACF,MAAM,YAAY,GAAG,gBAAgB,CAAC,KAAK,CAAC;QAC5C,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,SAAS,CACjB,+BAA+B,IAAI,CAAC,oBAAoB,2BAA2B,CACpF,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAgC;YAC5C,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,YAAY;SAC1C,CAAC;QAEF,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAChE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC9B,MAAM,IAAI,SAAS,CACjB,0BAA0B,IAAI,CAAC,qBAAqB,eAAe,CACpE,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3D,MAAM,IAAI,SAAS,CACjB,0BAA0B,IAAI,CAAC,qBAAqB,2BAA2B,CAChF,CAAC;YACJ,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC;QAC3D,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,KAAuB;QAC7C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC;IAChE,CAAC;CACF"}
|
|
@@ -1,21 +1,26 @@
|
|
|
1
1
|
import type { Brand } from "../../../util/brand.type.js";
|
|
2
|
-
import type { CreateTableCommand, TableStatus } from "@aws-sdk/client-dynamodb";
|
|
3
|
-
import type { DynamoDbItem } from "../item/dynamodb-item.js";
|
|
4
|
-
import type { BackgroundScheduler } from "../../../util/background/background.js";
|
|
5
2
|
import { type SimArn, type SimArnComponents } from "../../aws/arn.js";
|
|
3
|
+
import type { DynamoDbItem } from "../item/dynamodb-item.js";
|
|
4
|
+
import { type BackgroundScheduler } from "../../../util/background/background.js";
|
|
5
|
+
import type { SimCreateTableCommand, SimDynamoDbTableStatus } from "../command/create-table/create-table.cmd.js";
|
|
6
6
|
export type DynamoDbTableName = Brand<string, "DynamoDbTableName">;
|
|
7
|
+
interface SimDynamoDbTableProps {
|
|
8
|
+
readonly createCommand: SimCreateTableCommand;
|
|
9
|
+
readonly arn?: SimArn;
|
|
10
|
+
readonly background?: BackgroundScheduler;
|
|
11
|
+
}
|
|
7
12
|
/**
|
|
8
13
|
* Simulated DynamoDB Table.
|
|
9
14
|
*/
|
|
10
15
|
export declare class SimDynamoDbTable {
|
|
11
|
-
readonly simArn: SimArn;
|
|
12
|
-
private readonly background;
|
|
13
16
|
readonly creationDateTime: Date;
|
|
14
17
|
readonly tableName: DynamoDbTableName;
|
|
18
|
+
readonly arn: SimArn;
|
|
19
|
+
private readonly background;
|
|
15
20
|
private readonly _keySchema;
|
|
16
21
|
private _status;
|
|
17
22
|
private readonly items;
|
|
18
|
-
constructor(
|
|
23
|
+
constructor(props: SimDynamoDbTableProps);
|
|
19
24
|
/**
|
|
20
25
|
* Simulate the table entering ACTIVE status.
|
|
21
26
|
*/
|
|
@@ -23,14 +28,15 @@ export declare class SimDynamoDbTable {
|
|
|
23
28
|
/**
|
|
24
29
|
* Get the current table status.
|
|
25
30
|
*/
|
|
26
|
-
get status():
|
|
31
|
+
get status(): SimDynamoDbTableStatus;
|
|
27
32
|
/**
|
|
28
33
|
* Put an item into the table.
|
|
29
34
|
*/
|
|
30
35
|
putItem(item: DynamoDbItem): Promise<void>;
|
|
31
36
|
}
|
|
32
37
|
/**
|
|
33
|
-
* Generate a fake
|
|
38
|
+
* Generate a fake simulated DynamoDB Table ARN.
|
|
34
39
|
*/
|
|
35
40
|
export declare function makeSimDynamoDbTableArn(overrides?: Exclude<Partial<SimArnComponents>, "service" | "resourceType">): SimArn;
|
|
41
|
+
export {};
|
|
36
42
|
//# sourceMappingURL=dynamodb-table.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamodb-table.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/table/dynamodb-table.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"dynamodb-table.d.ts","sourceRoot":"","sources":["../../../../src/service/dynamodb/table/dynamodb-table.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAEL,KAAK,MAAM,EACX,KAAK,gBAAgB,EACtB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EACV,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,6CAA6C,CAAC;AAErD,MAAM,MAAM,iBAAiB,GAAG,KAAK,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;AAEnE,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,aAAa,EAAE,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AAED;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,SAAgB,gBAAgB,EAAE,IAAI,CAAC;IAEvC,SAAgB,SAAS,EAAE,iBAAiB,CAAC;IAC7C,SAAgB,GAAG,EAAE,MAAM,CAAC;IAE5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IACjD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,OAAO,CAAsC;IAErD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmC;gBAE7C,KAAK,EAAE,qBAAqB;IA0BxC;;OAEG;IACH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAKzB;;OAEG;IACH,IAAW,MAAM,IAAI,sBAAsB,CAE1C;IAED;;OAEG;IACI,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;CAQlD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,SAAS,GAAG,cAAc,CAAC,GACzE,MAAM,CAMR"}
|
|
@@ -1,19 +1,21 @@
|
|
|
1
|
-
import { DynamoDbKeySchema } from "./dynamodb-key-schema.js";
|
|
2
|
-
import { assertDefined } from "../../../util/defined/defined.js";
|
|
3
1
|
import { makeSimArn, } from "../../aws/arn.js";
|
|
2
|
+
import { assertDefined } from "../../../util/defined/defined.js";
|
|
3
|
+
import { DynamoDbKeySchema } from "./dynamodb-key-schema.js";
|
|
4
|
+
import { BackgroundTasks, } from "../../../util/background/background.js";
|
|
4
5
|
/**
|
|
5
6
|
* Simulated DynamoDB Table.
|
|
6
7
|
*/
|
|
7
8
|
export class SimDynamoDbTable {
|
|
8
|
-
simArn;
|
|
9
|
-
background;
|
|
10
9
|
creationDateTime;
|
|
11
10
|
tableName;
|
|
11
|
+
arn;
|
|
12
|
+
background;
|
|
12
13
|
_keySchema;
|
|
13
14
|
_status = "CREATING";
|
|
14
15
|
items = new Map();
|
|
15
|
-
constructor(
|
|
16
|
-
|
|
16
|
+
constructor(props) {
|
|
17
|
+
const { createCommand, arn = makeSimDynamoDbTableArn(), background = new BackgroundTasks(), } = props;
|
|
18
|
+
this.arn = arn;
|
|
17
19
|
this.background = background;
|
|
18
20
|
assertDefined(createCommand.input.TableName, "createCommand.input.TableName");
|
|
19
21
|
this.tableName = createCommand.input.TableName;
|
|
@@ -50,7 +52,7 @@ export class SimDynamoDbTable {
|
|
|
50
52
|
}
|
|
51
53
|
}
|
|
52
54
|
/**
|
|
53
|
-
* Generate a fake
|
|
55
|
+
* Generate a fake simulated DynamoDB Table ARN.
|
|
54
56
|
*/
|
|
55
57
|
export function makeSimDynamoDbTableArn(overrides) {
|
|
56
58
|
return makeSimArn({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamodb-table.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/table/dynamodb-table.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dynamodb-table.js","sourceRoot":"","sources":["../../../../src/service/dynamodb/table/dynamodb-table.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,GAGX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,EAEL,eAAe,GAChB,MAAM,wCAAwC,CAAC;AAchD;;GAEG;AACH,MAAM,OAAO,gBAAgB;IACX,gBAAgB,CAAO;IAEvB,SAAS,CAAoB;IAC7B,GAAG,CAAS;IAEX,UAAU,CAAsB;IAChC,UAAU,CAAoB;IACvC,OAAO,GAA2B,UAAU,CAAC;IAEpC,KAAK,GAAG,IAAI,GAAG,EAAwB,CAAC;IAEzD,YAAY,KAA4B;QACtC,MAAM,EACJ,aAAa,EACb,GAAG,GAAG,uBAAuB,EAAE,EAC/B,UAAU,GAAG,IAAI,eAAe,EAAE,GACnC,GAAG,KAAK,CAAC;QAEV,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAE7B,aAAa,CACX,aAAa,CAAC,KAAK,CAAC,SAAS,EAC7B,+BAA+B,CAChC,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,SAA8B,CAAC;QACpE,IAAI,CAAC,gBAAgB,GAAG,IAAI,IAAI,EAAE,CAAC;QAEnC,IACE,aAAa,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS;YAC3C,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAC1C,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;QACxB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACI,OAAO,CAAC,IAAkB;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE;YAC5B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAChC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,SAA0E;IAE1E,OAAO,UAAU,CAAC;QAChB,OAAO,EAAE,UAAU;QACnB,YAAY,EAAE,OAAO;QACrB,GAAG,SAAS;KACb,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -4,19 +4,21 @@ import type { SimS3Object } from "../object/s3-object.js";
|
|
|
4
4
|
import { S3BucketWebsite } from "./website/s3-bucket-website.js";
|
|
5
5
|
import { type SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
|
|
6
6
|
export type SimS3BucketName = Brand<string, "SimS3BucketName">;
|
|
7
|
+
interface SimS3BucketProps {
|
|
8
|
+
readonly bucketName: SimS3BucketName | string;
|
|
9
|
+
readonly accountRegionScope?: SimAwsAccountRegionScope;
|
|
10
|
+
readonly storage?: SimS3BucketStorage;
|
|
11
|
+
readonly website?: S3BucketWebsite;
|
|
12
|
+
}
|
|
7
13
|
/**
|
|
8
14
|
* Simulated S3 Bucket.
|
|
9
15
|
*/
|
|
10
16
|
export declare class SimS3Bucket {
|
|
17
|
+
readonly bucketName: SimS3BucketName;
|
|
11
18
|
private readonly accountRegionScope;
|
|
12
19
|
private storage;
|
|
13
20
|
private website;
|
|
14
|
-
|
|
15
|
-
constructor(createCommand: {
|
|
16
|
-
input: {
|
|
17
|
-
Bucket: string | undefined;
|
|
18
|
-
};
|
|
19
|
-
}, accountRegionScope?: SimAwsAccountRegionScope, storage?: SimS3BucketStorage, website?: S3BucketWebsite);
|
|
21
|
+
constructor(props: SimS3BucketProps);
|
|
20
22
|
/**
|
|
21
23
|
* Put a simulated S3 Object into storage.
|
|
22
24
|
*/
|
|
@@ -46,4 +48,5 @@ export declare class SimS3Bucket {
|
|
|
46
48
|
*/
|
|
47
49
|
getWebsiteUrl(): URL;
|
|
48
50
|
}
|
|
51
|
+
export {};
|
|
49
52
|
//# sourceMappingURL=sim-s3-bucket.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-s3-bucket.d.ts","sourceRoot":"","sources":["../../../../src/service/s3/bucket/sim-s3-bucket.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sim-s3-bucket.d.ts","sourceRoot":"","sources":["../../../../src/service/s3/bucket/sim-s3-bucket.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EACL,KAAK,wBAAwB,EAE9B,MAAM,2CAA2C,CAAC;AAEnD,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;AAE/D,UAAU,gBAAgB;IACxB,QAAQ,CAAC,UAAU,EAAE,eAAe,GAAG,MAAM,CAAC;IAC9C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IACvD,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC;CACpC;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,SAAgB,UAAU,EAAE,eAAe,CAAC;IAC5C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAC9D,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,OAAO,CAAkB;gBAErB,KAAK,EAAE,gBAAgB;IAcnC;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAInD;;OAEG;IACG,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAI9D;;OAEG;IACG,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAI1D;;OAEG;IACH,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAOtD;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAIhD;;OAEG;IACH,UAAU,IAAI,eAAe;IAI7B;;OAEG;IACH,aAAa,IAAI,GAAG;CAUrB"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { assertDefined } from "../../../util/defined/defined.js";
|
|
2
1
|
import { MemoryS3BucketStorage } from "../storage/s3-memory-storage.js";
|
|
3
2
|
import { S3BucketWebsite } from "./website/s3-bucket-website.js";
|
|
4
3
|
import { simAwsLocalConf } from "../../../serve/http/sim-aws-local.conf.js";
|
|
@@ -7,16 +6,16 @@ import { simAwsAccountRegionScopeFactory, } from "../../aws/sim-aws-account-regi
|
|
|
7
6
|
* Simulated S3 Bucket.
|
|
8
7
|
*/
|
|
9
8
|
export class SimS3Bucket {
|
|
9
|
+
bucketName;
|
|
10
10
|
accountRegionScope;
|
|
11
11
|
storage;
|
|
12
12
|
website;
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
constructor(props) {
|
|
14
|
+
const { bucketName, accountRegionScope = simAwsAccountRegionScopeFactory.make(), storage = new MemoryS3BucketStorage(), website = new S3BucketWebsite(), } = props;
|
|
15
|
+
this.bucketName = bucketName;
|
|
15
16
|
this.accountRegionScope = accountRegionScope;
|
|
16
17
|
this.storage = storage;
|
|
17
18
|
this.website = website;
|
|
18
|
-
assertDefined(createCommand.input.Bucket, "createCommand.input.Bucket");
|
|
19
|
-
this.bucketName = createCommand.input.Bucket;
|
|
20
19
|
}
|
|
21
20
|
/**
|
|
22
21
|
* Put a simulated S3 Object into storage.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-s3-bucket.js","sourceRoot":"","sources":["../../../../src/service/s3/bucket/sim-s3-bucket.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sim-s3-bucket.js","sourceRoot":"","sources":["../../../../src/service/s3/bucket/sim-s3-bucket.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAEL,+BAA+B,GAChC,MAAM,2CAA2C,CAAC;AAWnD;;GAEG;AACH,MAAM,OAAO,WAAW;IACN,UAAU,CAAkB;IAC3B,kBAAkB,CAA2B;IACtD,OAAO,CAAqB;IAC5B,OAAO,CAAkB;IAEjC,YAAY,KAAuB;QACjC,MAAM,EACJ,UAAU,EACV,kBAAkB,GAAG,+BAA+B,CAAC,IAAI,EAAE,EAC3D,OAAO,GAAG,IAAI,qBAAqB,EAAE,EACrC,OAAO,GAAG,IAAI,eAAe,EAAE,GAChC,GAAG,KAAK,CAAC;QAEV,IAAI,CAAC,UAAU,GAAG,UAA6B,CAAC;QAChD,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,MAAmB;QACjC,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,GAAW;QACzB,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,MAAe;QAC/B,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,mBAAmB,CAAC,OAA2B;QAC7C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,OAAwB;QACvC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,aAAa;QACX,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CACb,2DAA2D,IAAI,CAAC,UAAU,EAAE,CAC7E,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,GAAG,CACZ,UAAU,IAAI,CAAC,UAAU,eAAe,IAAI,CAAC,kBAAkB,CAAC,UAAU,IAAI,eAAe,CAAC,QAAQ,GAAG,CAC1G,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { SimS3WebsiteConfiguration } from "../../command/put-bucket-website/put-bucket-website.cmd.js";
|
|
2
2
|
/**
|
|
3
3
|
* Static website configuration for simulated S3 bucket.
|
|
4
4
|
*
|
|
@@ -6,7 +6,7 @@ import type { WebsiteConfiguration } from "@aws-sdk/client-s3";
|
|
|
6
6
|
*/
|
|
7
7
|
export declare class S3BucketWebsite {
|
|
8
8
|
private readonly websiteConfiguration;
|
|
9
|
-
constructor(websiteConfiguration?:
|
|
9
|
+
constructor(websiteConfiguration?: SimS3WebsiteConfiguration);
|
|
10
10
|
/**
|
|
11
11
|
* Is static website hosting enabled for this simulated S3 bucket?
|
|
12
12
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3-bucket-website.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/website/s3-bucket-website.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"s3-bucket-website.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/website/s3-bucket-website.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,yBAAyB,EAG1B,MAAM,4DAA4D,CAAC;AAEpE;;;;GAIG;AACH,qBAAa,eAAe;IAExB,OAAO,CAAC,QAAQ,CAAC,oBAAoB;gBAApB,oBAAoB,GAAE,yBAA8B;IAGvE;;OAEG;IACH,cAAc,IAAI,OAAO;IASzB;;OAEG;IACH,oBAAoB,IAAI,OAAO;IAM/B;;OAEG;IACH,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAkB9C;;;OAGG;IACH,gCAAgC,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAcvE;;OAEG;IACH,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,QAAQ;IAa7C;;OAEG;IACH,gBAAgB,IAAI,MAAM,GAAG,SAAS;IAItC;;;OAGG;IACH,0BAA0B,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,QAAQ;IA0BjE,OAAO,CAAC,kBAAkB;IAwB1B,OAAO,CAAC,gBAAgB;IAgCxB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,qBAAqB;CAO9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3-bucket-website.js","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/website/s3-bucket-website.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"s3-bucket-website.js","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/website/s3-bucket-website.ts"],"names":[],"mappings":"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"}
|