@kensio/yulin 1.17.0 → 1.17.1
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/acm/certificate/register-sim-acm-certificate.d.ts +41 -0
- package/dist/service/acm/certificate/register-sim-acm-certificate.d.ts.map +1 -0
- package/dist/service/acm/certificate/register-sim-acm-certificate.js +60 -0
- package/dist/service/acm/certificate/register-sim-acm-certificate.js.map +1 -0
- package/dist/service/acm/command/request-certificate/request-certificate.handler.d.ts +9 -0
- package/dist/service/acm/command/request-certificate/request-certificate.handler.d.ts.map +1 -1
- package/dist/service/acm/command/request-certificate/request-certificate.handler.js +18 -1
- package/dist/service/acm/command/request-certificate/request-certificate.handler.js.map +1 -1
- package/dist/service/acm/sim-acm.d.ts +15 -0
- package/dist/service/acm/sim-acm.d.ts.map +1 -1
- package/dist/service/acm/sim-acm.js +21 -0
- package/dist/service/acm/sim-acm.js.map +1 -1
- package/dist/service/cloudformation/cdk/sim-cdk-assembly-selection.d.ts +4 -0
- package/dist/service/cloudformation/cdk/sim-cdk-assembly-selection.d.ts.map +1 -1
- package/dist/service/cloudformation/cdk/sim-cdk-assembly-selection.js +7 -2
- package/dist/service/cloudformation/cdk/sim-cdk-assembly-selection.js.map +1 -1
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-deployer.d.ts +1 -1
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-deployer.d.ts.map +1 -1
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-deployer.js +6 -4
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-deployer.js.map +1 -1
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-plan.d.ts +4 -0
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-plan.d.ts.map +1 -1
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-plan.js.map +1 -1
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-stack-options.d.ts +25 -2
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-stack-options.d.ts.map +1 -1
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-stack-options.js +13 -0
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-stack-options.js.map +1 -1
- package/dist/service/cloudformation/index.d.ts +1 -1
- package/dist/service/cloudformation/index.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-cfn-value-adapter.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-cfn-value-adapter.js +4 -0
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-cfn-value-adapter.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-user-cfn.d.ts +28 -0
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-user-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-user-cfn.js +33 -0
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-user-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.d.ts +6 -0
- package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.js +3 -0
- package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.js.map +1 -1
- package/dist/service/cloudformation/resource/sim-cfn-resource-record.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/sim-cfn-resource-record.js +1 -0
- package/dist/service/cloudformation/resource/sim-cfn-resource-record.js.map +1 -1
- package/dist/service/cloudformation/template/dynamic/make-sim-cfn-dynamic-references.d.ts +1 -0
- package/dist/service/cloudformation/template/dynamic/make-sim-cfn-dynamic-references.d.ts.map +1 -1
- package/dist/service/cloudformation/template/dynamic/make-sim-cfn-dynamic-references.js +2 -1
- package/dist/service/cloudformation/template/dynamic/make-sim-cfn-dynamic-references.js.map +1 -1
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-reference-resolvers.d.ts.map +1 -1
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-reference-resolvers.js +4 -0
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-reference-resolvers.js.map +1 -1
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-reference.type.d.ts +19 -1
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-reference.type.d.ts.map +1 -1
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-references.d.ts +6 -0
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-references.d.ts.map +1 -1
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-references.js +9 -3
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-references.js.map +1 -1
- package/dist/service/cloudfront/command/create-function/create-function-code-size.d.ts +23 -0
- package/dist/service/cloudfront/command/create-function/create-function-code-size.d.ts.map +1 -0
- package/dist/service/cloudfront/command/create-function/create-function-code-size.js +33 -0
- package/dist/service/cloudfront/command/create-function/create-function-code-size.js.map +1 -0
- package/dist/service/cloudfront/command/create-function/create-function.handler.d.ts.map +1 -1
- package/dist/service/cloudfront/command/create-function/create-function.handler.js +2 -0
- package/dist/service/cloudfront/command/create-function/create-function.handler.js.map +1 -1
- package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts +11 -0
- package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts.map +1 -1
- package/dist/service/cloudfront/error/sim-cloudfront.error.js +13 -0
- package/dist/service/cloudfront/error/sim-cloudfront.error.js.map +1 -1
- package/dist/service/cloudfront/index.d.ts +1 -1
- package/dist/service/cloudfront/index.d.ts.map +1 -1
- package/dist/service/cloudfront/index.js +1 -1
- package/dist/service/cloudfront/index.js.map +1 -1
- package/dist/service/cognito/command/sim-cognito-commands.d.ts +6 -0
- package/dist/service/cognito/command/sim-cognito-commands.d.ts.map +1 -1
- package/dist/service/cognito/command/sim-cognito-commands.js +22 -6
- package/dist/service/cognito/command/sim-cognito-commands.js.map +1 -1
- package/dist/service/cognito/error/sim-cognito.error.d.ts +22 -0
- package/dist/service/cognito/error/sim-cognito.error.d.ts.map +1 -1
- package/dist/service/cognito/error/sim-cognito.error.js +26 -0
- package/dist/service/cognito/error/sim-cognito.error.js.map +1 -1
- package/dist/service/cognito/index.d.ts +2 -1
- package/dist/service/cognito/index.d.ts.map +1 -1
- package/dist/service/cognito/index.js +1 -1
- package/dist/service/cognito/index.js.map +1 -1
- package/dist/service/cognito/sim-cognito-identity-provider.d.ts +24 -0
- package/dist/service/cognito/sim-cognito-identity-provider.d.ts.map +1 -1
- package/dist/service/cognito/sim-cognito-identity-provider.js +26 -0
- package/dist/service/cognito/sim-cognito-identity-provider.js.map +1 -1
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-factory.d.ts +9 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-factory.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-factory.js +2 -2
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-factory.js.map +1 -1
- package/dist/service/cognito/user-pool/register-sim-cognito-user-pool-client.d.ts +22 -0
- package/dist/service/cognito/user-pool/register-sim-cognito-user-pool-client.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/register-sim-cognito-user-pool-client.js +36 -0
- package/dist/service/cognito/user-pool/register-sim-cognito-user-pool-client.js.map +1 -0
- package/dist/service/cognito/user-pool/register-sim-cognito-user-pool.d.ts +25 -0
- package/dist/service/cognito/user-pool/register-sim-cognito-user-pool.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/register-sim-cognito-user-pool.js +30 -0
- package/dist/service/cognito/user-pool/register-sim-cognito-user-pool.js.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-registration.types.d.ts +40 -0
- package/dist/service/cognito/user-pool/sim-cognito-registration.types.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-registration.types.js +2 -0
- package/dist/service/cognito/user-pool/sim-cognito-registration.types.js.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-registrations.d.ts +34 -0
- package/dist/service/cognito/user-pool/sim-cognito-registrations.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-registrations.js +28 -0
- package/dist/service/cognito/user-pool/sim-cognito-registrations.js.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-factory.d.ts +9 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-factory.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-factory.js +3 -2
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-factory.js.map +1 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-id.d.ts +9 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-id.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-id.js +18 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-id.js.map +1 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-store.d.ts +8 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-store.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-store.js +15 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-store.js.map +1 -1
- package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-attacher.d.ts +40 -0
- package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-attacher.d.ts.map +1 -0
- package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-attacher.js +65 -0
- package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-attacher.js.map +1 -0
- package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-creator.d.ts +1 -0
- package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-creator.d.ts.map +1 -1
- package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-creator.js +5 -0
- package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-creator.js.map +1 -1
- package/dist/service/iam/cfn/policy/sim-cfn-iam-policy-creator.d.ts +11 -20
- package/dist/service/iam/cfn/policy/sim-cfn-iam-policy-creator.d.ts.map +1 -1
- package/dist/service/iam/cfn/policy/sim-cfn-iam-policy-creator.js +29 -61
- package/dist/service/iam/cfn/policy/sim-cfn-iam-policy-creator.js.map +1 -1
- package/dist/service/iam/cfn/policy/sim-cfn-iam-policy-properties-parser.d.ts +38 -0
- package/dist/service/iam/cfn/policy/sim-cfn-iam-policy-properties-parser.d.ts.map +1 -0
- package/dist/service/iam/cfn/policy/sim-cfn-iam-policy-properties-parser.js +79 -0
- package/dist/service/iam/cfn/policy/sim-cfn-iam-policy-properties-parser.js.map +1 -0
- package/dist/service/iam/cfn/role/sim-cfn-iam-role-properties-parser.d.ts +2 -2
- package/dist/service/iam/cfn/role/sim-cfn-iam-role-properties-parser.d.ts.map +1 -1
- package/dist/service/iam/cfn/role/sim-cfn-iam-role-properties-parser.js +4 -2
- package/dist/service/iam/cfn/role/sim-cfn-iam-role-properties-parser.js.map +1 -1
- package/dist/service/iam/cfn/sim-cfn-iam-policies-parser.d.ts +35 -0
- package/dist/service/iam/cfn/sim-cfn-iam-policies-parser.d.ts.map +1 -0
- package/dist/service/iam/cfn/{role/sim-cfn-iam-role-policies-parser.js → sim-cfn-iam-policies-parser.js} +17 -12
- package/dist/service/iam/cfn/sim-cfn-iam-policies-parser.js.map +1 -0
- package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.d.ts +11 -0
- package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.d.ts.map +1 -1
- package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.js +25 -0
- package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.js.map +1 -1
- package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.d.ts +1 -0
- package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.d.ts.map +1 -1
- package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.js +6 -0
- package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.js.map +1 -1
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-creator.d.ts +28 -0
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-creator.d.ts.map +1 -0
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-creator.js +67 -0
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-creator.js.map +1 -0
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-deleter.d.ts +26 -0
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-deleter.d.ts.map +1 -0
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-deleter.js +29 -0
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-deleter.js.map +1 -0
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-properties-parser.d.ts +38 -0
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-properties-parser.d.ts.map +1 -0
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-properties-parser.js +80 -0
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-properties-parser.js.map +1 -0
- package/dist/service/iam/command/sim-iam-command.types.d.ts +3 -0
- package/dist/service/iam/command/sim-iam-command.types.d.ts.map +1 -1
- package/dist/service/iam/command/user/attach-user-policy/attach-user-policy.command.d.ts +9 -0
- package/dist/service/iam/command/user/attach-user-policy/attach-user-policy.command.d.ts.map +1 -0
- package/dist/service/iam/command/user/attach-user-policy/attach-user-policy.command.js +2 -0
- package/dist/service/iam/command/user/attach-user-policy/attach-user-policy.command.js.map +1 -0
- package/dist/service/iam/command/user/attach-user-policy/attach-user-policy.handler.d.ts +30 -0
- package/dist/service/iam/command/user/attach-user-policy/attach-user-policy.handler.d.ts.map +1 -0
- package/dist/service/iam/command/user/attach-user-policy/attach-user-policy.handler.js +44 -0
- package/dist/service/iam/command/user/attach-user-policy/attach-user-policy.handler.js.map +1 -0
- package/dist/service/iam/command/user/create-login-profile/create-login-profile.command.d.ts +16 -0
- package/dist/service/iam/command/user/create-login-profile/create-login-profile.command.d.ts.map +1 -0
- package/dist/service/iam/command/user/create-login-profile/create-login-profile.command.js +2 -0
- package/dist/service/iam/command/user/create-login-profile/create-login-profile.command.js.map +1 -0
- package/dist/service/iam/command/user/create-login-profile/create-login-profile.handler.d.ts +32 -0
- package/dist/service/iam/command/user/create-login-profile/create-login-profile.handler.d.ts.map +1 -0
- package/dist/service/iam/command/user/create-login-profile/create-login-profile.handler.js +59 -0
- package/dist/service/iam/command/user/create-login-profile/create-login-profile.handler.js.map +1 -0
- package/dist/service/iam/command/user/create-user/create-user-record-factory.d.ts.map +1 -1
- package/dist/service/iam/command/user/create-user/create-user-record-factory.js +1 -0
- package/dist/service/iam/command/user/create-user/create-user-record-factory.js.map +1 -1
- package/dist/service/iam/command/user/delete-user/delete-user.command.d.ts +19 -0
- package/dist/service/iam/command/user/delete-user/delete-user.command.d.ts.map +1 -0
- package/dist/service/iam/command/user/delete-user/delete-user.command.js +2 -0
- package/dist/service/iam/command/user/delete-user/delete-user.command.js.map +1 -0
- package/dist/service/iam/command/user/delete-user/delete-user.handler.d.ts +34 -0
- package/dist/service/iam/command/user/delete-user/delete-user.handler.d.ts.map +1 -0
- package/dist/service/iam/command/user/delete-user/delete-user.handler.js +51 -0
- package/dist/service/iam/command/user/delete-user/delete-user.handler.js.map +1 -0
- package/dist/service/iam/command/user/sim-iam-user-command-handlers.d.ts +15 -0
- package/dist/service/iam/command/user/sim-iam-user-command-handlers.d.ts.map +1 -1
- package/dist/service/iam/command/user/sim-iam-user-command-handlers.js +36 -0
- package/dist/service/iam/command/user/sim-iam-user-command-handlers.js.map +1 -1
- package/dist/service/iam/sdk/sim-iam-sdk-command-router.d.ts.map +1 -1
- package/dist/service/iam/sdk/sim-iam-sdk-command-router.js +12 -0
- package/dist/service/iam/sdk/sim-iam-sdk-command-router.js.map +1 -1
- package/dist/service/iam/sim-iam.d.ts +12 -0
- package/dist/service/iam/sim-iam.d.ts.map +1 -1
- package/dist/service/iam/sim-iam.js +18 -0
- package/dist/service/iam/sim-iam.js.map +1 -1
- package/dist/service/iam/user/sim-iam-user-login-profile.d.ts +14 -0
- package/dist/service/iam/user/sim-iam-user-login-profile.d.ts.map +1 -0
- package/dist/service/iam/user/sim-iam-user-login-profile.js +2 -0
- package/dist/service/iam/user/sim-iam-user-login-profile.js.map +1 -0
- package/dist/service/iam/user/sim-iam-user.d.ts +8 -0
- package/dist/service/iam/user/sim-iam-user.d.ts.map +1 -1
- package/dist/service/lambda/function/code/sim-lambda-executable-code.d.ts +6 -5
- package/dist/service/lambda/function/code/sim-lambda-executable-code.d.ts.map +1 -1
- package/dist/service/lambda/function/code/sim-lambda-executable-code.js +7 -6
- package/dist/service/lambda/function/code/sim-lambda-executable-code.js.map +1 -1
- package/dist/service/lambda/function/invoke/sim-lambda-host-scope.d.ts +11 -3
- package/dist/service/lambda/function/invoke/sim-lambda-host-scope.d.ts.map +1 -1
- package/dist/service/lambda/function/invoke/sim-lambda-host-scope.js +13 -7
- package/dist/service/lambda/function/invoke/sim-lambda-host-scope.js.map +1 -1
- package/dist/service/lambda/function/invoke/sim-lambda-process-output.d.ts +104 -0
- package/dist/service/lambda/function/invoke/sim-lambda-process-output.d.ts.map +1 -0
- package/dist/service/lambda/function/invoke/sim-lambda-process-output.js +133 -0
- package/dist/service/lambda/function/invoke/sim-lambda-process-output.js.map +1 -0
- package/dist/service/lambda/function/logging/sim-lambda-function-logging.d.ts +10 -0
- package/dist/service/lambda/function/logging/sim-lambda-function-logging.d.ts.map +1 -1
- package/dist/service/lambda/function/logging/sim-lambda-function-logging.js +11 -0
- package/dist/service/lambda/function/logging/sim-lambda-function-logging.js.map +1 -1
- package/dist/service/lambda/function/sim-lambda-function.d.ts +2 -1
- package/dist/service/lambda/function/sim-lambda-function.d.ts.map +1 -1
- package/dist/service/lambda/function/sim-lambda-function.js +5 -2
- package/dist/service/lambda/function/sim-lambda-function.js.map +1 -1
- package/dist/service/s3/command/get-object/get-object-loader.d.ts +5 -3
- package/dist/service/s3/command/get-object/get-object-loader.d.ts.map +1 -1
- package/dist/service/s3/command/get-object/get-object-loader.js +19 -4
- package/dist/service/s3/command/get-object/get-object-loader.js.map +1 -1
- package/dist/service/s3/command/get-object/get-object.command.d.ts +13 -0
- package/dist/service/s3/command/get-object/get-object.command.d.ts.map +1 -1
- package/dist/service/s3/command/get-object/get-object.handler.d.ts +3 -0
- 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 +4 -1
- package/dist/service/s3/command/get-object/get-object.handler.js.map +1 -1
- package/dist/service/s3/error/sim-s3.error.d.ts +13 -0
- package/dist/service/s3/error/sim-s3.error.d.ts.map +1 -1
- package/dist/service/s3/error/sim-s3.error.js +15 -0
- package/dist/service/s3/error/sim-s3.error.js.map +1 -1
- package/dist/service/s3/object/s3-object-range.d.ts +26 -0
- package/dist/service/s3/object/s3-object-range.d.ts.map +1 -0
- package/dist/service/s3/object/s3-object-range.js +89 -0
- package/dist/service/s3/object/s3-object-range.js.map +1 -0
- package/dist/service/s3/object/s3-object-response-headers.d.ts +7 -1
- package/dist/service/s3/object/s3-object-response-headers.d.ts.map +1 -1
- package/dist/service/s3/object/s3-object-response-headers.js +5 -1
- package/dist/service/s3/object/s3-object-response-headers.js.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-input.d.ts +0 -14
- package/dist/service/s3/serve/api/sim-s3-api-input.d.ts.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-input.js +0 -29
- package/dist/service/s3/serve/api/sim-s3-api-input.js.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-input.d.ts +27 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-input.d.ts.map +1 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-input.js +47 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-input.js.map +1 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-output.d.ts +5 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-output.d.ts.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-output.js +8 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-output.js.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-routes.d.ts.map +1 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-routes.js +2 -2
- package/dist/service/s3/serve/api/sim-s3-api-object-routes.js.map +1 -1
- package/dist/service/s3/serve/sim-s3-rest-object-reader.d.ts +5 -0
- package/dist/service/s3/serve/sim-s3-rest-object-reader.d.ts.map +1 -1
- package/dist/service/s3/serve/sim-s3-rest-object-reader.js +20 -3
- package/dist/service/s3/serve/sim-s3-rest-object-reader.js.map +1 -1
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-dynamic-reference-resolver.d.ts +0 -7
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-dynamic-reference-resolver.d.ts.map +1 -1
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-dynamic-reference-resolver.js +7 -41
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-dynamic-reference-resolver.js.map +1 -1
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-reference-body.d.ts +14 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-reference-body.d.ts.map +1 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-reference-body.js +26 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-reference-body.js.map +1 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-reference-stand-in.d.ts +11 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-reference-stand-in.d.ts.map +1 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-reference-stand-in.js +16 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-reference-stand-in.js.map +1 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-secure-dynamic-reference-resolver.d.ts +40 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-secure-dynamic-reference-resolver.d.ts.map +1 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-secure-dynamic-reference-resolver.js +67 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-secure-dynamic-reference-resolver.js.map +1 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-secure-reference-properties.d.ts +8 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-secure-reference-properties.d.ts.map +1 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-secure-reference-properties.js +61 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-secure-reference-properties.js.map +1 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-secure-refusals.d.ts +19 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-secure-refusals.d.ts.map +1 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-secure-refusals.js +37 -0
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-secure-refusals.js.map +1 -0
- package/dist/service/ssm/sim-ssm.d.ts +5 -0
- package/dist/service/ssm/sim-ssm.d.ts.map +1 -1
- package/dist/service/ssm/sim-ssm.js +7 -0
- package/dist/service/ssm/sim-ssm.js.map +1 -1
- package/package.json +1 -1
- package/dist/service/iam/cfn/role/sim-cfn-iam-role-policies-parser.d.ts +0 -25
- package/dist/service/iam/cfn/role/sim-cfn-iam-role-policies-parser.d.ts.map +0 -1
- package/dist/service/iam/cfn/role/sim-cfn-iam-role-policies-parser.js.map +0 -1
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { SimS3InvalidRange } from "../error/sim-s3.error.js";
|
|
2
|
+
/**
|
|
3
|
+
* A single range of bytes, the only form S3 answers.
|
|
4
|
+
*
|
|
5
|
+
* A request for several ranges at once does not match, and neither does one
|
|
6
|
+
* counted in anything but bytes, so both fall through to being read as no
|
|
7
|
+
* range at all.
|
|
8
|
+
*/
|
|
9
|
+
const byteRange = /^\d*-\d*$/;
|
|
10
|
+
const byteUnit = "bytes=";
|
|
11
|
+
/**
|
|
12
|
+
* Resolve the `Range` of a read against the Object it was sent for.
|
|
13
|
+
*
|
|
14
|
+
* `undefined` means the whole Object, and covers both a read that asked for no
|
|
15
|
+
* range and one whose `Range` S3 does not answer. HTTP has an unsatisfiable
|
|
16
|
+
* range refused and an unreadable one ignored, and S3 follows it. A range S3
|
|
17
|
+
* cannot make sense of leaves the response as it would have been without it.
|
|
18
|
+
* A range naming bytes the Object does not hold is refused outright.
|
|
19
|
+
*
|
|
20
|
+
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
|
|
21
|
+
*/
|
|
22
|
+
export function simS3ReadObjectRange(header, size) {
|
|
23
|
+
const stated = header?.trim() ?? "";
|
|
24
|
+
const spec = stated.startsWith(byteUnit) ? stated.slice(byteUnit.length) : "";
|
|
25
|
+
if (!byteRange.test(spec)) {
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
const dash = spec.indexOf("-");
|
|
29
|
+
const from = spec.slice(0, dash);
|
|
30
|
+
const to = spec.slice(dash + 1);
|
|
31
|
+
if (from === "") {
|
|
32
|
+
return suffixRange(to, size, stated);
|
|
33
|
+
}
|
|
34
|
+
return offsetRange(Number(from), to, size, stated);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* How a response describes the bytes it carries. It names them by offset, and
|
|
38
|
+
* gives the size of the Object they came from.
|
|
39
|
+
*/
|
|
40
|
+
export function simS3ContentRange(range, size) {
|
|
41
|
+
return `bytes ${range.start}-${range.end}/${size}`;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* The last so many bytes of an Object, which is what a read states when it
|
|
45
|
+
* knows how much it wants and not where the Object ends.
|
|
46
|
+
*/
|
|
47
|
+
function suffixRange(suffix, size, header) {
|
|
48
|
+
// `bytes=-` says neither where to start nor how much to read.
|
|
49
|
+
if (suffix === "") {
|
|
50
|
+
return undefined;
|
|
51
|
+
}
|
|
52
|
+
const length = Number(suffix);
|
|
53
|
+
// A suffix longer than the Object is the whole of it, so the only ones with
|
|
54
|
+
// nothing to answer are a suffix of no bytes and any suffix of an Object of
|
|
55
|
+
// no bytes.
|
|
56
|
+
if (length === 0 || size === 0) {
|
|
57
|
+
throw unsatisfiable(header, size);
|
|
58
|
+
}
|
|
59
|
+
return { start: Math.max(0, size - length), end: size - 1 };
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* A range stated as where to start reading, and where to stop if the read is
|
|
63
|
+
* not to run to the end of the Object.
|
|
64
|
+
*/
|
|
65
|
+
function offsetRange(start, to, size, header) {
|
|
66
|
+
const statedEnd = to === "" ? undefined : Number(to);
|
|
67
|
+
// A range ending before it begins is one no response could carry, so it is
|
|
68
|
+
// read as no range rather than refused.
|
|
69
|
+
if (statedEnd !== undefined && statedEnd < start) {
|
|
70
|
+
return undefined;
|
|
71
|
+
}
|
|
72
|
+
if (start >= size) {
|
|
73
|
+
throw unsatisfiable(header, size);
|
|
74
|
+
}
|
|
75
|
+
// A read may ask for more than is there, and gets what there is. A client
|
|
76
|
+
// reading a file in fixed-size pieces asks for a whole piece at the end.
|
|
77
|
+
return { start, end: Math.min(statedEnd ?? size - 1, size - 1) };
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Refuse a range of bytes the Object does not hold.
|
|
81
|
+
*
|
|
82
|
+
* `InvalidRange` is the code real S3 answers with, and 416 the status, so a
|
|
83
|
+
* client reads why it has to ask again for something else.
|
|
84
|
+
*/
|
|
85
|
+
function unsatisfiable(header, size) {
|
|
86
|
+
return new SimS3InvalidRange(`The requested range is not satisfiable. ${header} names bytes ` +
|
|
87
|
+
`an S3 Object of ${size} bytes does not hold`);
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=s3-object-range.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"s3-object-range.js","sourceRoot":"","sources":["../../../../src/service/s3/object/s3-object-range.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,11 @@ export interface SimS3ObjectResponseDescription {
|
|
|
10
10
|
readonly etag?: string | undefined;
|
|
11
11
|
/** When S3 last wrote the Object. */
|
|
12
12
|
readonly lastModified?: Date | undefined;
|
|
13
|
+
/**
|
|
14
|
+
* Which bytes of the Object are being served, for a read that asked for some
|
|
15
|
+
* of them rather than all of them.
|
|
16
|
+
*/
|
|
17
|
+
readonly contentRange?: string | undefined;
|
|
13
18
|
}
|
|
14
19
|
/**
|
|
15
20
|
* The headers S3 sets on a read from what it was told when the Object was
|
|
@@ -23,7 +28,8 @@ export interface SimS3ObjectResponseDescription {
|
|
|
23
28
|
*
|
|
24
29
|
* `ETag` and `Last-Modified` are not metadata but facts about the stored bytes,
|
|
25
30
|
* and are what makes a conditional request or a content-hash comparison
|
|
26
|
-
* possible over HTTP.
|
|
31
|
+
* possible over HTTP. `Content-Range` is a fact about the response rather than
|
|
32
|
+
* the Object. It says which of the Object's bytes the ones being sent are.
|
|
27
33
|
*
|
|
28
34
|
* Every path that serves an Object goes through here, so they agree on what
|
|
29
35
|
* reading one looks like.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3-object-response-headers.d.ts","sourceRoot":"","sources":["../../../../src/service/s3/object/s3-object-response-headers.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,mEAAmE;IACnE,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC;IACjE,qDAAqD;IACrD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,uDAAuD;IACvD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,qCAAqC;IACrC,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"s3-object-response-headers.d.ts","sourceRoot":"","sources":["../../../../src/service/s3/object/s3-object-response-headers.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,mEAAmE;IACnE,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC;IACjE,qDAAqD;IACrD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,uDAAuD;IACvD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,qCAAqC;IACrC,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;IACzC;;;OAGG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5C;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,8BAA8B,GAC1C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA0BxB"}
|
|
@@ -11,7 +11,8 @@ import { simS3SystemMetadataHeaders } from "./s3-system-metadata.js";
|
|
|
11
11
|
*
|
|
12
12
|
* `ETag` and `Last-Modified` are not metadata but facts about the stored bytes,
|
|
13
13
|
* and are what makes a conditional request or a content-hash comparison
|
|
14
|
-
* possible over HTTP.
|
|
14
|
+
* possible over HTTP. `Content-Range` is a fact about the response rather than
|
|
15
|
+
* the Object. It says which of the Object's bytes the ones being sent are.
|
|
15
16
|
*
|
|
16
17
|
* Every path that serves an Object goes through here, so they agree on what
|
|
17
18
|
* reading one looks like.
|
|
@@ -34,6 +35,9 @@ export function simS3ObjectResponseHeaders(description) {
|
|
|
34
35
|
if (description.lastModified !== undefined) {
|
|
35
36
|
headers["last-modified"] = description.lastModified.toUTCString();
|
|
36
37
|
}
|
|
38
|
+
if (description.contentRange !== undefined) {
|
|
39
|
+
headers["content-range"] = description.contentRange;
|
|
40
|
+
}
|
|
37
41
|
return headers;
|
|
38
42
|
}
|
|
39
43
|
//# sourceMappingURL=s3-object-response-headers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3-object-response-headers.js","sourceRoot":"","sources":["../../../../src/service/s3/object/s3-object-response-headers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"s3-object-response-headers.js","sourceRoot":"","sources":["../../../../src/service/s3/object/s3-object-response-headers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAqBrE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,0BAA0B,CACxC,WAA2C;IAE3C,MAAM,OAAO,GAA2B;QACtC,gBAAgB,EAAE,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC;KACjD,CAAC;IAEF,KAAK,MAAM,MAAM,IAAI,0BAA0B,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAElD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACnC,OAAO,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC;IACrC,CAAC;IAED,IAAI,WAAW,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QAC3C,OAAO,CAAC,eAAe,CAAC,GAAG,WAAW,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IACpE,CAAC;IAED,IAAI,WAAW,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QAC3C,OAAO,CAAC,eAAe,CAAC,GAAG,WAAW,CAAC,YAAY,CAAC;IACtD,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -3,25 +3,11 @@ import type { SimS3ApiRequest } from "./sim-s3-api-request.js";
|
|
|
3
3
|
* The input of an operation naming only a Bucket, which most of them are.
|
|
4
4
|
*/
|
|
5
5
|
export declare function bucketInput(request: SimS3ApiRequest): object;
|
|
6
|
-
/**
|
|
7
|
-
* The input of an operation naming one Object.
|
|
8
|
-
*/
|
|
9
|
-
export declare function objectInput(request: SimS3ApiRequest): object;
|
|
10
6
|
/**
|
|
11
7
|
* The input of an operation that names a Bucket and reads its body into one
|
|
12
8
|
* member, which every configuration write does.
|
|
13
9
|
*/
|
|
14
10
|
export declare function bucketBodyInput<T>(request: SimS3ApiRequest, member: string, read: (body: string) => T): object;
|
|
15
|
-
/**
|
|
16
|
-
* The input of an upload, which carries its bytes and the headers describing
|
|
17
|
-
* them.
|
|
18
|
-
*/
|
|
19
|
-
export declare function putObjectInput(request: SimS3ApiRequest): object;
|
|
20
|
-
/**
|
|
21
|
-
* The input of a request that describes an Object without carrying its bytes,
|
|
22
|
-
* which is what starting a multipart upload is.
|
|
23
|
-
*/
|
|
24
|
-
export declare function createMultipartUploadInput(request: SimS3ApiRequest): object;
|
|
25
11
|
/**
|
|
26
12
|
* Reading the members of an S3 operation input out of a request.
|
|
27
13
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-s3-api-input.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/serve/api/sim-s3-api-input.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAE5D;AAED
|
|
1
|
+
{"version":3,"file":"sim-s3-api-input.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/serve/api/sim-s3-api-input.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAE5D;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAC/B,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,CAAC,GACxB,MAAM,CAER;AAED;;;;;GAKG;AAEH;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAMjE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAQnE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAOjE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC,CAWA;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GAAG,IAAI,GACnB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAExB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GAAG,IAAI,GACnB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQxB;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAE7C"}
|
|
@@ -4,12 +4,6 @@
|
|
|
4
4
|
export function bucketInput(request) {
|
|
5
5
|
return { Bucket: request.bucketName };
|
|
6
6
|
}
|
|
7
|
-
/**
|
|
8
|
-
* The input of an operation naming one Object.
|
|
9
|
-
*/
|
|
10
|
-
export function objectInput(request) {
|
|
11
|
-
return { Bucket: request.bucketName, Key: request.objectKey };
|
|
12
|
-
}
|
|
13
7
|
/**
|
|
14
8
|
* The input of an operation that names a Bucket and reads its body into one
|
|
15
9
|
* member, which every configuration write does.
|
|
@@ -17,29 +11,6 @@ export function objectInput(request) {
|
|
|
17
11
|
export function bucketBodyInput(request, member, read) {
|
|
18
12
|
return { Bucket: request.bucketName, [member]: read(utf8(request.body)) };
|
|
19
13
|
}
|
|
20
|
-
/**
|
|
21
|
-
* The input of an upload, which carries its bytes and the headers describing
|
|
22
|
-
* them.
|
|
23
|
-
*/
|
|
24
|
-
export function putObjectInput(request) {
|
|
25
|
-
return { ...createMultipartUploadInput(request), Body: request.body };
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* The input of a request that describes an Object without carrying its bytes,
|
|
29
|
-
* which is what starting a multipart upload is.
|
|
30
|
-
*/
|
|
31
|
-
export function createMultipartUploadInput(request) {
|
|
32
|
-
return {
|
|
33
|
-
Bucket: request.bucketName,
|
|
34
|
-
Key: request.objectKey,
|
|
35
|
-
...optional("ContentType", request.headers.get("content-type")),
|
|
36
|
-
...optional("CacheControl", request.headers.get("cache-control")),
|
|
37
|
-
...optional("ContentDisposition", request.headers.get("content-disposition")),
|
|
38
|
-
...optional("ContentEncoding", request.headers.get("content-encoding")),
|
|
39
|
-
...optional("ContentLanguage", request.headers.get("content-language")),
|
|
40
|
-
...simS3UserMetadata(request.headers),
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
14
|
/**
|
|
44
15
|
* Reading the members of an S3 operation input out of a request.
|
|
45
16
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-s3-api-input.js","sourceRoot":"","sources":["../../../../../src/service/s3/serve/api/sim-s3-api-input.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,OAAwB;IAClD,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;AACxC,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"sim-s3-api-input.js","sourceRoot":"","sources":["../../../../../src/service/s3/serve/api/sim-s3-api-input.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { SimS3ApiRequest } from "./sim-s3-api-request.js";
|
|
2
|
+
/**
|
|
3
|
+
* Reading the Object operations' inputs out of a request.
|
|
4
|
+
*
|
|
5
|
+
* S3 puts an Object's key in the path and everything said about its bytes in
|
|
6
|
+
* the headers, so these read the two together where a Bucket operation reads
|
|
7
|
+
* the query string or the body.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* The input of an operation naming one Object.
|
|
11
|
+
*/
|
|
12
|
+
export declare function objectInput(request: SimS3ApiRequest): object;
|
|
13
|
+
/**
|
|
14
|
+
* The input of a read, which can ask for part of an Object.
|
|
15
|
+
*/
|
|
16
|
+
export declare function getObjectInput(request: SimS3ApiRequest): object;
|
|
17
|
+
/**
|
|
18
|
+
* The input of an upload, which carries its bytes and the headers describing
|
|
19
|
+
* them.
|
|
20
|
+
*/
|
|
21
|
+
export declare function putObjectInput(request: SimS3ApiRequest): object;
|
|
22
|
+
/**
|
|
23
|
+
* The input of a request that describes an Object without carrying its bytes,
|
|
24
|
+
* which is what starting a multipart upload is.
|
|
25
|
+
*/
|
|
26
|
+
export declare function createMultipartUploadInput(request: SimS3ApiRequest): object;
|
|
27
|
+
//# sourceMappingURL=sim-s3-api-object-input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-api-object-input.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/serve/api/sim-s3-api-object-input.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D;;;;;;GAMG;AAEH;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAE5D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAK/D;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAE/D;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAc3E"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { optional, simS3UserMetadata } from "./sim-s3-api-input.js";
|
|
2
|
+
/**
|
|
3
|
+
* Reading the Object operations' inputs out of a request.
|
|
4
|
+
*
|
|
5
|
+
* S3 puts an Object's key in the path and everything said about its bytes in
|
|
6
|
+
* the headers, so these read the two together where a Bucket operation reads
|
|
7
|
+
* the query string or the body.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* The input of an operation naming one Object.
|
|
11
|
+
*/
|
|
12
|
+
export function objectInput(request) {
|
|
13
|
+
return { Bucket: request.bucketName, Key: request.objectKey };
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* The input of a read, which can ask for part of an Object.
|
|
17
|
+
*/
|
|
18
|
+
export function getObjectInput(request) {
|
|
19
|
+
return {
|
|
20
|
+
...objectInput(request),
|
|
21
|
+
...optional("Range", request.headers.get("range")),
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* The input of an upload, which carries its bytes and the headers describing
|
|
26
|
+
* them.
|
|
27
|
+
*/
|
|
28
|
+
export function putObjectInput(request) {
|
|
29
|
+
return { ...createMultipartUploadInput(request), Body: request.body };
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* The input of a request that describes an Object without carrying its bytes,
|
|
33
|
+
* which is what starting a multipart upload is.
|
|
34
|
+
*/
|
|
35
|
+
export function createMultipartUploadInput(request) {
|
|
36
|
+
return {
|
|
37
|
+
Bucket: request.bucketName,
|
|
38
|
+
Key: request.objectKey,
|
|
39
|
+
...optional("ContentType", request.headers.get("content-type")),
|
|
40
|
+
...optional("CacheControl", request.headers.get("cache-control")),
|
|
41
|
+
...optional("ContentDisposition", request.headers.get("content-disposition")),
|
|
42
|
+
...optional("ContentEncoding", request.headers.get("content-encoding")),
|
|
43
|
+
...optional("ContentLanguage", request.headers.get("content-language")),
|
|
44
|
+
...simS3UserMetadata(request.headers),
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=sim-s3-api-object-input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-api-object-input.js","sourceRoot":"","sources":["../../../../../src/service/s3/serve/api/sim-s3-api-object-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAGpE;;;;;;GAMG;AAEH;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,OAAwB;IAClD,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,GAAG,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAAwB;IACrD,OAAO;QACL,GAAG,WAAW,CAAC,OAAO,CAAC;QACvB,GAAG,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;KACnD,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,OAAwB;IACrD,OAAO,EAAE,GAAG,0BAA0B,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;AACxE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,0BAA0B,CAAC,OAAwB;IACjE,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,UAAU;QAC1B,GAAG,EAAE,OAAO,CAAC,SAAS;QACtB,GAAG,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC/D,GAAG,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACjE,GAAG,QAAQ,CACT,oBAAoB,EACpB,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAC3C;QACD,GAAG,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACvE,GAAG,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACvE,GAAG,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC;KACtC,CAAC;AACJ,CAAC"}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Answer a read with the Object itself, headers and all.
|
|
3
|
+
*
|
|
4
|
+
* A read that asked for part of the Object is answered `206 Partial Content`
|
|
5
|
+
* and says which part it carries, because a client reading a large Object in
|
|
6
|
+
* pieces at once writes each response at the offset it asked for, and a `200`
|
|
7
|
+
* carrying the whole Object would be written over its neighbours.
|
|
3
8
|
*/
|
|
4
9
|
export declare function simS3GetObjectResponse(output: Record<string, unknown>): Promise<Response>;
|
|
5
10
|
//# sourceMappingURL=sim-s3-api-object-output.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-s3-api-object-output.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/serve/api/sim-s3-api-object-output.ts"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"sim-s3-api-object-output.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/serve/api/sim-s3-api-object-output.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,QAAQ,CAAC,CAcnB"}
|
|
@@ -1,16 +1,23 @@
|
|
|
1
1
|
import { simS3ObjectResponseHeaders } from "../../object/s3-object-response-headers.js";
|
|
2
2
|
/**
|
|
3
3
|
* Answer a read with the Object itself, headers and all.
|
|
4
|
+
*
|
|
5
|
+
* A read that asked for part of the Object is answered `206 Partial Content`
|
|
6
|
+
* and says which part it carries, because a client reading a large Object in
|
|
7
|
+
* pieces at once writes each response at the offset it asked for, and a `200`
|
|
8
|
+
* carrying the whole Object would be written over its neighbours.
|
|
4
9
|
*/
|
|
5
10
|
export async function simS3GetObjectResponse(output) {
|
|
6
11
|
const body = await objectBodyBytes(output["Body"]);
|
|
12
|
+
const contentRange = output["ContentRange"];
|
|
7
13
|
return new Response(body, {
|
|
8
|
-
status: 200,
|
|
14
|
+
status: contentRange === undefined ? 200 : 206,
|
|
9
15
|
headers: simS3ObjectResponseHeaders({
|
|
10
16
|
metadata: output["Metadata"],
|
|
11
17
|
bodyLength: body.length,
|
|
12
18
|
etag: output["ETag"],
|
|
13
19
|
lastModified: output["LastModified"],
|
|
20
|
+
contentRange,
|
|
14
21
|
}),
|
|
15
22
|
});
|
|
16
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-s3-api-object-output.js","sourceRoot":"","sources":["../../../../../src/service/s3/serve/api/sim-s3-api-object-output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AAExF
|
|
1
|
+
{"version":3,"file":"sim-s3-api-object-output.js","sourceRoot":"","sources":["../../../../../src/service/s3/serve/api/sim-s3-api-object-output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AAExF;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,MAA+B;IAE/B,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACnD,MAAM,YAAY,GAAG,MAAM,CAAC,cAAc,CAAuB,CAAC;IAElE,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE;QACxB,MAAM,EAAE,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;QAC9C,OAAO,EAAE,0BAA0B,CAAC;YAClC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAuC;YAClE,UAAU,EAAE,IAAI,CAAC,MAAM;YACvB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAuB;YAC1C,YAAY,EAAE,MAAM,CAAC,cAAc,CAAqB;YACxD,YAAY;SACb,CAAC;KACH,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,eAAe,CAAC,IAAa;IAC1C,2DAA2D;IAC3D,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QACxC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAiC,EAAE,CAAC;QAC5D,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-s3-api-object-routes.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/serve/api/sim-s3-api-object-routes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sim-s3-api-object-routes.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/serve/api/sim-s3-api-object-routes.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,aAAa,EA4DxD,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createMultipartUploadInput, objectInput, putObjectInput, } from "./sim-s3-api-input.js";
|
|
1
|
+
import { createMultipartUploadInput, getObjectInput, objectInput, putObjectInput, } from "./sim-s3-api-object-input.js";
|
|
2
2
|
import { completeMultipartUploadInput, uploadInput, uploadPartInput, } from "./sim-s3-api-multipart-input.js";
|
|
3
3
|
/**
|
|
4
4
|
* The Object-level S3 operations this endpoint serves.
|
|
@@ -14,7 +14,7 @@ export const simS3ObjectApiRoutes = [
|
|
|
14
14
|
method: "GET",
|
|
15
15
|
target: "object",
|
|
16
16
|
commandName: "GetObjectCommand",
|
|
17
|
-
input:
|
|
17
|
+
input: getObjectInput,
|
|
18
18
|
},
|
|
19
19
|
{
|
|
20
20
|
method: "GET",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-s3-api-object-routes.js","sourceRoot":"","sources":["../../../../../src/service/s3/serve/api/sim-s3-api-object-routes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,WAAW,EACX,cAAc,GACf,MAAM,
|
|
1
|
+
{"version":3,"file":"sim-s3-api-object-routes.js","sourceRoot":"","sources":["../../../../../src/service/s3/serve/api/sim-s3-api-object-routes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,cAAc,EACd,WAAW,EACX,cAAc,GACf,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,4BAA4B,EAC5B,WAAW,EACX,eAAe,GAChB,MAAM,iCAAiC,CAAC;AAGzC;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAA6B;IAC5D;QACE,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,mBAAmB;QAChC,KAAK,EAAE,WAAW;KACnB;IACD;QACE,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,kBAAkB;QAC/B,KAAK,EAAE,cAAc;KACtB;IACD;QACE,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,UAAU;QACvB,WAAW,EAAE,kBAAkB;QAC/B,KAAK,EAAE,WAAW;KACnB;IACD;QACE,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,8BAA8B;QAC3C,KAAK,EAAE,0BAA0B;KAClC;IACD;QACE,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,UAAU;QACvB,WAAW,EAAE,gCAAgC;QAC7C,KAAK,EAAE,4BAA4B;KACpC;IACD;QACE,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,UAAU;QACvB,WAAW,EAAE,mBAAmB;QAChC,KAAK,EAAE,eAAe;KACvB;IACD;QACE,MAAM,EAAE,KAAK;QACb,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,kBAAkB;QAC/B,KAAK,EAAE,cAAc;KACtB;IACD;QACE,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,UAAU;QACvB,WAAW,EAAE,6BAA6B;QAC1C,KAAK,EAAE,WAAW;KACnB;IACD;QACE,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,qBAAqB;QAClC,KAAK,EAAE,WAAW;KACnB;CACF,CAAC"}
|
|
@@ -7,6 +7,11 @@ import type { SimAwsServiceRequest } from "../../../serve/controller/sim-service
|
|
|
7
7
|
* The two share everything but the body, because a `HEAD` is a `GET` whose
|
|
8
8
|
* response real S3 stops short of sending, so they are read the same way here
|
|
9
9
|
* and differ only in what comes back.
|
|
10
|
+
*
|
|
11
|
+
* A `GET` may ask for part of the Object, and is answered with that part and
|
|
12
|
+
* `206 Partial Content`. A `HEAD` may not. Simulated S3 describes the whole
|
|
13
|
+
* Object however it is asked about, and HeadObject does the same for an
|
|
14
|
+
* in-process caller.
|
|
10
15
|
*/
|
|
11
16
|
export declare class SimS3RestObjectReader {
|
|
12
17
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-s3-rest-object-reader.d.ts","sourceRoot":"","sources":["../../../../src/service/s3/serve/sim-s3-rest-object-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAC;AAGhG
|
|
1
|
+
{"version":3,"file":"sim-s3-rest-object-reader.d.ts","sourceRoot":"","sources":["../../../../src/service/s3/serve/sim-s3-rest-object-reader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAC;AAGhG;;;;;;;;;;;GAWG;AACH,qBAAa,qBAAqB;IAChC;;OAEG;IACG,IAAI,CACR,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,oBAAoB,EAC3B,cAAc,EAAE,oBAAoB,GACnC,OAAO,CAAC,QAAQ,CAAC,CAgCnB;CACF"}
|
|
@@ -5,24 +5,41 @@ import { simS3ObjectResponseHeaders } from "../object/s3-object-response-headers
|
|
|
5
5
|
* The two share everything but the body, because a `HEAD` is a `GET` whose
|
|
6
6
|
* response real S3 stops short of sending, so they are read the same way here
|
|
7
7
|
* and differ only in what comes back.
|
|
8
|
+
*
|
|
9
|
+
* A `GET` may ask for part of the Object, and is answered with that part and
|
|
10
|
+
* `206 Partial Content`. A `HEAD` may not. Simulated S3 describes the whole
|
|
11
|
+
* Object however it is asked about, and HeadObject does the same for an
|
|
12
|
+
* in-process caller.
|
|
8
13
|
*/
|
|
9
14
|
export class SimS3RestObjectReader {
|
|
10
15
|
/**
|
|
11
16
|
* Read an Object as the principal the boundary resolved.
|
|
12
17
|
*/
|
|
13
18
|
async read(simS3, route, serviceRequest) {
|
|
14
|
-
const
|
|
19
|
+
const { request } = serviceRequest;
|
|
20
|
+
const head = request.method === "HEAD";
|
|
21
|
+
const output = await simS3.getObject({
|
|
22
|
+
input: {
|
|
23
|
+
Bucket: route.bucket.bucketName,
|
|
24
|
+
Key: route.objectKey,
|
|
25
|
+
Range: head ? undefined : (request.headers.get("range") ?? undefined),
|
|
26
|
+
},
|
|
27
|
+
}, { caller: serviceRequest.caller.toCaller() });
|
|
15
28
|
const body = await bodyBytes(output.Body);
|
|
16
29
|
const headers = simS3ObjectResponseHeaders({
|
|
17
30
|
metadata: output.Metadata,
|
|
18
31
|
bodyLength: body.length,
|
|
19
32
|
etag: output.ETag,
|
|
20
33
|
lastModified: output.LastModified,
|
|
34
|
+
contentRange: output.ContentRange,
|
|
21
35
|
});
|
|
22
|
-
if (
|
|
36
|
+
if (head) {
|
|
23
37
|
return new Response(undefined, { status: 200, headers });
|
|
24
38
|
}
|
|
25
|
-
return new Response(body, {
|
|
39
|
+
return new Response(body, {
|
|
40
|
+
status: output.ContentRange === undefined ? 200 : 206,
|
|
41
|
+
headers,
|
|
42
|
+
});
|
|
26
43
|
}
|
|
27
44
|
}
|
|
28
45
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-s3-rest-object-reader.js","sourceRoot":"","sources":["../../../../src/service/s3/serve/sim-s3-rest-object-reader.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAErF
|
|
1
|
+
{"version":3,"file":"sim-s3-rest-object-reader.js","sourceRoot":"","sources":["../../../../src/service/s3/serve/sim-s3-rest-object-reader.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAErF;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,qBAAqB;IAChC;;OAEG;IACH,KAAK,CAAC,IAAI,CACR,KAAY,EACZ,KAA2B,EAC3B,cAAoC;QAEpC,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC;QACnC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC;QAEvC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,SAAS,CAClC;YACE,KAAK,EAAE;gBACL,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU;gBAC/B,GAAG,EAAE,KAAK,CAAC,SAAS;gBACpB,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC;aACtE;SACF,EACD,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAC7C,CAAC;QAEF,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,0BAA0B,CAAC;YACzC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,UAAU,EAAE,IAAI,CAAC,MAAM;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,YAAY,EAAE,MAAM,CAAC,YAAY;SAClC,CAAC,CAAC;QAEH,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,IAAI,QAAQ,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE;YACxB,MAAM,EAAE,MAAM,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;YACrD,OAAO;SACR,CAAC,CAAC;IACL,CAAC;CACF;AAED;;GAEG;AACH,KAAK,UAAU,SAAS,CACtB,IAAsE;IAEtE,2DAA2D;IAC3D,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAmB,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -27,13 +27,6 @@ export declare class SimCfnSsmDynamicReferenceResolver implements SimCfnDynamicR
|
|
|
27
27
|
* Read the version the reference selects, or the current one.
|
|
28
28
|
*/
|
|
29
29
|
private parameterValue;
|
|
30
|
-
/**
|
|
31
|
-
* The value a reference Parameter Store could not answer resolves to.
|
|
32
|
-
*
|
|
33
|
-
* The shape follows CDK, which fills an unresolved context lookup with
|
|
34
|
-
* `dummy-value-for-<name>`. A test reading one back sees where it came from.
|
|
35
|
-
*/
|
|
36
|
-
private standIn;
|
|
37
30
|
}
|
|
38
31
|
export {};
|
|
39
32
|
//# sourceMappingURL=sim-cfn-ssm-dynamic-reference-resolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-cfn-ssm-dynamic-reference-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/service/ssm/cfn/dynamic/sim-cfn-ssm-dynamic-reference-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,gCAAgC,EAChC,8BAA8B,EAC/B,MAAM,4EAA4E,CAAC;AAGpF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"sim-cfn-ssm-dynamic-reference-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/service/ssm/cfn/dynamic/sim-cfn-ssm-dynamic-reference-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,gCAAgC,EAChC,8BAA8B,EAC/B,MAAM,4EAA4E,CAAC;AAGpF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAI/C,UAAU,2CAA2C;IACnD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,iCAAkC,YAAW,8BAA8B;IACtF,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,YAAY,UAAU,EAAE,2CAA2C,EAElE;IAED;;OAEG;IACH,OAAO,CAAC,SAAS,EAAE,sBAAsB,GAAG,gCAAgC,CAiC3E;IAED;;OAEG;IACH,OAAO,CAAC,cAAc;CAyBvB"}
|
|
@@ -1,27 +1,6 @@
|
|
|
1
1
|
import { SimSsmParameterVersionNotFound } from "../../error/sim-ssm.error.js";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
/** The version selector, which CloudFormation documents as an integer. */
|
|
5
|
-
const ssmReferenceVersion = /^\d+$/;
|
|
6
|
-
/**
|
|
7
|
-
* Read a reference body as a parameter name and an optional version.
|
|
8
|
-
*
|
|
9
|
-
* A parameter name holds no colon, so the last one always opens the version.
|
|
10
|
-
*/
|
|
11
|
-
function parseSsmReferenceBody(body) {
|
|
12
|
-
const colon = body.lastIndexOf(":");
|
|
13
|
-
if (colon === -1) {
|
|
14
|
-
return ssmReferenceName.test(body)
|
|
15
|
-
? { name: body, version: undefined }
|
|
16
|
-
: undefined;
|
|
17
|
-
}
|
|
18
|
-
const name = body.slice(0, colon);
|
|
19
|
-
const version = body.slice(colon + 1);
|
|
20
|
-
if (!ssmReferenceName.test(name) || !ssmReferenceVersion.test(version)) {
|
|
21
|
-
return undefined;
|
|
22
|
-
}
|
|
23
|
-
return { name, version };
|
|
24
|
-
}
|
|
2
|
+
import { parseSimCfnSsmReferenceBody } from "./sim-cfn-ssm-reference-body.js";
|
|
3
|
+
import { simCfnSsmReferenceStandIn } from "./sim-cfn-ssm-reference-stand-in.js";
|
|
25
4
|
/**
|
|
26
5
|
* Answers `{{resolve:ssm:...}}` references from the simulated Parameter Store.
|
|
27
6
|
*
|
|
@@ -44,18 +23,18 @@ export class SimCfnSsmDynamicReferenceResolver {
|
|
|
44
23
|
* Resolve one reference to the parameter value it names.
|
|
45
24
|
*/
|
|
46
25
|
resolve(reference) {
|
|
47
|
-
const parsed =
|
|
26
|
+
const parsed = parseSimCfnSsmReferenceBody(reference.body);
|
|
48
27
|
if (parsed === undefined) {
|
|
49
|
-
return
|
|
28
|
+
return simCfnSsmReferenceStandIn(reference, reference.body, `which is not the parameter name, optionally followed by an integer ` +
|
|
50
29
|
`version, that an ssm dynamic reference takes`);
|
|
51
30
|
}
|
|
52
31
|
const { name, version } = parsed;
|
|
53
32
|
const parameter = this.ssm.findParameter(name);
|
|
54
33
|
if (parameter === undefined) {
|
|
55
|
-
return
|
|
34
|
+
return simCfnSsmReferenceStandIn(reference, name, `and simulated Parameter Store holds no parameter '${name}'`);
|
|
56
35
|
}
|
|
57
36
|
if (parameter.type.value === "SecureString") {
|
|
58
|
-
return
|
|
37
|
+
return simCfnSsmReferenceStandIn(reference, name, `and '${name}' is a SecureString, which real CloudFormation reads ` +
|
|
59
38
|
`through an ssm-secure reference`);
|
|
60
39
|
}
|
|
61
40
|
return this.parameterValue(reference, parameter, name, version);
|
|
@@ -75,21 +54,8 @@ export class SimCfnSsmDynamicReferenceResolver {
|
|
|
75
54
|
if (!(error instanceof SimSsmParameterVersionNotFound)) {
|
|
76
55
|
throw error;
|
|
77
56
|
}
|
|
78
|
-
return
|
|
57
|
+
return simCfnSsmReferenceStandIn(reference, name, `and '${name}' has no version ${version}`);
|
|
79
58
|
}
|
|
80
59
|
}
|
|
81
|
-
/**
|
|
82
|
-
* The value a reference Parameter Store could not answer resolves to.
|
|
83
|
-
*
|
|
84
|
-
* The shape follows CDK, which fills an unresolved context lookup with
|
|
85
|
-
* `dummy-value-for-<name>`. A test reading one back sees where it came from.
|
|
86
|
-
*/
|
|
87
|
-
standIn(reference, name, reason) {
|
|
88
|
-
return {
|
|
89
|
-
value: `dummy-value-for-${name}`,
|
|
90
|
-
reason: `holds ${reference.text}, ${reason}, so the Resource is created ` +
|
|
91
|
-
`with a stand-in value`,
|
|
92
|
-
};
|
|
93
|
-
}
|
|
94
60
|
}
|
|
95
61
|
//# sourceMappingURL=sim-cfn-ssm-dynamic-reference-resolver.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-cfn-ssm-dynamic-reference-resolver.js","sourceRoot":"","sources":["../../../../../src/service/ssm/cfn/dynamic/sim-cfn-ssm-dynamic-reference-resolver.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"sim-cfn-ssm-dynamic-reference-resolver.js","sourceRoot":"","sources":["../../../../../src/service/ssm/cfn/dynamic/sim-cfn-ssm-dynamic-reference-resolver.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAG9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAMhF;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,iCAAiC;IAC3B,GAAG,CAAS;IAE7B,YAAY,UAAuD;QACjE,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,SAAiC;QACvC,MAAM,MAAM,GAAG,2BAA2B,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAE3D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,yBAAyB,CAC9B,SAAS,EACT,SAAS,CAAC,IAAI,EACd,qEAAqE;gBACnE,8CAA8C,CACjD,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAE/C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,OAAO,yBAAyB,CAC9B,SAAS,EACT,IAAI,EACJ,qDAAqD,IAAI,GAAG,CAC7D,CAAC;QACJ,CAAC;QAED,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,KAAK,cAAc,EAAE,CAAC;YAC5C,OAAO,yBAAyB,CAC9B,SAAS,EACT,IAAI,EACJ,QAAQ,IAAI,uDAAuD;gBACjE,iCAAiC,CACpC,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACK,cAAc,CACpB,SAAiC,EACjC,SAA0B,EAC1B,IAAY,EACZ,OAA2B;QAE3B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACzD,CAAC;QAED,IAAI,CAAC;YACH,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAC3E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,wEAAwE;YACxE,IAAI,CAAC,CAAC,KAAK,YAAY,8BAA8B,CAAC,EAAE,CAAC;gBACvD,MAAM,KAAK,CAAC;YACd,CAAC;YAED,OAAO,yBAAyB,CAC9B,SAAS,EACT,IAAI,EACJ,QAAQ,IAAI,oBAAoB,OAAO,EAAE,CAC1C,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** A reference body read as the parameter name and the version after it. */
|
|
2
|
+
export interface SimCfnSsmReferenceBody {
|
|
3
|
+
readonly name: string;
|
|
4
|
+
readonly version: string | undefined;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Read a reference body as a parameter name and an optional version.
|
|
8
|
+
*
|
|
9
|
+
* A parameter name holds no colon, so the last one always opens the version.
|
|
10
|
+
* `ssm` and `ssm-secure` references take the same body, and read it the same
|
|
11
|
+
* way.
|
|
12
|
+
*/
|
|
13
|
+
export declare function parseSimCfnSsmReferenceBody(body: string): SimCfnSsmReferenceBody | undefined;
|
|
14
|
+
//# sourceMappingURL=sim-cfn-ssm-reference-body.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-ssm-reference-body.d.ts","sourceRoot":"","sources":["../../../../../src/service/ssm/cfn/dynamic/sim-cfn-ssm-reference-body.ts"],"names":[],"mappings":"AAMA,4EAA4E;AAC5E,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;CACtC;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,GACX,sBAAsB,GAAG,SAAS,CAiBpC"}
|