@kensio/yulin 1.8.0 → 1.10.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 +25 -0
- package/dist/sdk/router/resolve-sim-sdk-command-router.d.ts.map +1 -1
- package/dist/sdk/router/resolve-sim-sdk-command-router.js +3 -0
- package/dist/sdk/router/resolve-sim-sdk-command-router.js.map +1 -1
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts +17 -0
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.js +37 -42
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.js.map +1 -1
- package/dist/service/aws/factory/sim-aws-s3-notification-destinations.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-s3-notification-destinations.js +5 -0
- package/dist/service/aws/factory/sim-aws-s3-notification-destinations.js.map +1 -1
- package/dist/service/aws/factory/sim-aws-scoped-service-properties.d.ts +18 -0
- package/dist/service/aws/factory/sim-aws-scoped-service-properties.d.ts.map +1 -0
- package/dist/service/aws/factory/sim-aws-scoped-service-properties.js +2 -0
- package/dist/service/aws/factory/sim-aws-scoped-service-properties.js.map +1 -0
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts +3 -0
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-service-factory.js +4 -0
- package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.d.ts +5 -0
- package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.js +6 -0
- package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
- package/dist/service/aws/sim-aws-service-accessors.d.ts +3 -0
- package/dist/service/aws/sim-aws-service-accessors.d.ts.map +1 -1
- package/dist/service/aws/sim-aws-service-accessors.js +4 -0
- package/dist/service/aws/sim-aws-service-accessors.js.map +1 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.d.ts +36 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.d.ts.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.js +64 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.js.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.d.ts +31 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.d.ts.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.js +42 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.js.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-files.d.ts +13 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-files.d.ts.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-files.js +68 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-files.js.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.d.ts +30 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.d.ts.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.js +35 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.js.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/filter/sim-cdk-bucket-deploy-filter.d.ts +27 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/filter/sim-cdk-bucket-deploy-filter.d.ts.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/filter/sim-cdk-bucket-deploy-filter.js +76 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/filter/sim-cdk-bucket-deploy-filter.js.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-properties.d.ts +24 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-properties.d.ts.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-properties.js +46 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-properties.js.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.d.ts +42 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.d.ts.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.js +96 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/property/sim-cdk-bucket-deploy-values.js.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.d.ts +1 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.d.ts.map +1 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js +10 -35
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js.map +1 -1
- package/dist/service/cloudformation/cdk/s3/bucket-notifications/configuration/sim-cdk-bucket-notification-configuration.d.ts +2 -0
- package/dist/service/cloudformation/cdk/s3/bucket-notifications/configuration/sim-cdk-bucket-notification-configuration.d.ts.map +1 -1
- package/dist/service/cloudformation/cdk/s3/bucket-notifications/configuration/sim-cdk-bucket-notification-configuration.js +15 -1
- package/dist/service/cloudformation/cdk/s3/bucket-notifications/configuration/sim-cdk-bucket-notification-configuration.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.js +8 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-rh-policy-cfn.d.ts +25 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-rh-policy-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-rh-policy-cfn.js +32 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-rh-policy-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js +2 -0
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/sns/sim-sns-cfn-value-adapter.d.ts +11 -0
- package/dist/service/cloudformation/resource/cfn/sns/sim-sns-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sns/sim-sns-cfn-value-adapter.js +24 -0
- package/dist/service/cloudformation/resource/cfn/sns/sim-sns-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sns/sim-sns-subscription-cfn.d.ts +27 -0
- package/dist/service/cloudformation/resource/cfn/sns/sim-sns-subscription-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sns/sim-sns-subscription-cfn.js +29 -0
- package/dist/service/cloudformation/resource/cfn/sns/sim-sns-subscription-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sns/sim-sns-topic-cfn.d.ts +30 -0
- package/dist/service/cloudformation/resource/cfn/sns/sim-sns-topic-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sns/sim-sns-topic-cfn.js +39 -0
- package/dist/service/cloudformation/resource/cfn/sns/sim-sns-topic-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.js +4 -0
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-factories.js.map +1 -1
- package/dist/service/cloudfront/behaviour/sim-cloud-front-behavior.d.ts +4 -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/cfn/response-headers-policy/sim-cfn-cf-rh-policy-config.d.ts +38 -0
- package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-config.d.ts.map +1 -0
- package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-config.js +127 -0
- package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-config.js.map +1 -0
- package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-creator.d.ts +25 -0
- package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-creator.d.ts.map +1 -0
- package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-creator.js +33 -0
- package/dist/service/cloudfront/cfn/response-headers-policy/sim-cfn-cf-rh-policy-creator.js.map +1 -0
- package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts +1 -0
- package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts.map +1 -1
- package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js +11 -0
- package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js.map +1 -1
- package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts +1 -0
- package/dist/service/cloudfront/command/create-distribution/create-distribution.command.d.ts.map +1 -1
- package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.d.ts +3 -0
- package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.d.ts.map +1 -1
- package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js +3 -0
- package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js.map +1 -1
- package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.d.ts +19 -0
- package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.d.ts.map +1 -0
- package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.js +31 -0
- package/dist/service/cloudfront/controller/response-headers/sim-cf-response-headers-applicator.js.map +1 -0
- package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.d.ts +4 -8
- package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.d.ts.map +1 -1
- package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.js +16 -19
- package/dist/service/cloudfront/controller/sim-cloudfront-request-pipeline.js.map +1 -1
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-behavior-configurator.js +3 -0
- package/dist/service/cloudfront/distribution/configurator/sim-cloud-front-behavior-configurator.js.map +1 -1
- package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts +19 -0
- package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts.map +1 -1
- package/dist/service/cloudfront/error/sim-cloudfront.error.js +23 -0
- package/dist/service/cloudfront/error/sim-cloudfront.error.js.map +1 -1
- package/dist/service/cloudfront/origin/s3/sim-cloudfront-s3-origin.d.ts.map +1 -1
- package/dist/service/cloudfront/origin/s3/sim-cloudfront-s3-origin.js +2 -5
- package/dist/service/cloudfront/origin/s3/sim-cloudfront-s3-origin.js.map +1 -1
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-header.d.ts +25 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-header.d.ts.map +1 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-header.js +30 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-header.js.map +1 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.d.ts +29 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.d.ts.map +1 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.js +40 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy-registry.js.map +1 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.d.ts +35 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.d.ts.map +1 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.js +44 -0
- package/dist/service/cloudfront/response-headers-policy/sim-cf-response-headers-policy.js.map +1 -0
- package/dist/service/cloudfront/sim-cloudfront.d.ts +18 -0
- package/dist/service/cloudfront/sim-cloudfront.d.ts.map +1 -1
- package/dist/service/cloudfront/sim-cloudfront.js +24 -0
- package/dist/service/cloudfront/sim-cloudfront.js.map +1 -1
- package/dist/service/route53/cfn/record-set/apply/sim-cfn-r53-record-set-applicator.d.ts.map +1 -1
- package/dist/service/route53/cfn/record-set/apply/sim-cfn-r53-record-set-applicator.js +4 -1
- package/dist/service/route53/cfn/record-set/apply/sim-cfn-r53-record-set-applicator.js.map +1 -1
- package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-looked-up-zone.d.ts +39 -0
- package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-looked-up-zone.d.ts.map +1 -0
- package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-looked-up-zone.js +46 -0
- package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-looked-up-zone.js.map +1 -0
- package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-rec-set-zone-resolver.d.ts +2 -0
- package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-rec-set-zone-resolver.d.ts.map +1 -1
- package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-rec-set-zone-resolver.js +17 -1
- package/dist/service/route53/cfn/record-set/resolve/sim-cfn-r53-rec-set-zone-resolver.js.map +1 -1
- package/dist/service/route53/hosted-zone/register-sim-route53-hosted-zone.d.ts +6 -0
- package/dist/service/route53/hosted-zone/register-sim-route53-hosted-zone.d.ts.map +1 -1
- package/dist/service/route53/hosted-zone/register-sim-route53-hosted-zone.js +1 -0
- package/dist/service/route53/hosted-zone/register-sim-route53-hosted-zone.js.map +1 -1
- package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.d.ts +23 -10
- package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.d.ts.map +1 -1
- package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.js +32 -45
- package/dist/service/route53/hosted-zone/sim-route53-hosted-zone.js.map +1 -1
- package/dist/service/route53/hosted-zone/sim-route53-zone-name-widening.d.ts +16 -0
- package/dist/service/route53/hosted-zone/sim-route53-zone-name-widening.d.ts.map +1 -0
- package/dist/service/route53/hosted-zone/sim-route53-zone-name-widening.js +35 -0
- package/dist/service/route53/hosted-zone/sim-route53-zone-name-widening.js.map +1 -0
- package/dist/service/route53/hosted-zone/sim-route53-zone-synchronization.d.ts +23 -0
- package/dist/service/route53/hosted-zone/sim-route53-zone-synchronization.d.ts.map +1 -0
- package/dist/service/route53/hosted-zone/sim-route53-zone-synchronization.js +43 -0
- package/dist/service/route53/hosted-zone/sim-route53-zone-synchronization.js.map +1 -0
- package/dist/service/route53/sim-route53.d.ts +1 -1
- package/dist/service/route53/sim-route53.d.ts.map +1 -1
- package/dist/service/route53/sim-route53.js +1 -1
- package/dist/service/route53/sim-route53.js.map +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-notification-configuration-reader.d.ts.map +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-notification-configuration-reader.js +2 -0
- package/dist/service/s3/bucket/notification/sim-s3-notification-configuration-reader.js.map +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-notification-configuration.d.ts +3 -0
- package/dist/service/s3/bucket/notification/sim-s3-notification-configuration.d.ts.map +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-notification-configuration.js +10 -1
- package/dist/service/s3/bucket/notification/sim-s3-notification-configuration.js.map +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-topic-notification.d.ts +21 -0
- package/dist/service/s3/bucket/notification/sim-s3-topic-notification.d.ts.map +1 -0
- package/dist/service/s3/bucket/notification/sim-s3-topic-notification.js +24 -0
- package/dist/service/s3/bucket/notification/sim-s3-topic-notification.js.map +1 -0
- package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-destinations.d.ts +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-destinations.d.ts.map +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-destinations.js +3 -3
- package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-destinations.js.map +1 -1
- package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts.map +1 -1
- package/dist/service/s3/bucket/sim-s3-bucket-access.js +6 -1
- package/dist/service/s3/bucket/sim-s3-bucket-access.js.map +1 -1
- package/dist/service/s3/cfn/bucket/notification/sim-cfn-s3-bucket-notification-configuration.d.ts +9 -6
- package/dist/service/s3/cfn/bucket/notification/sim-cfn-s3-bucket-notification-configuration.d.ts.map +1 -1
- package/dist/service/s3/cfn/bucket/notification/sim-cfn-s3-bucket-notification-configuration.js +32 -7
- package/dist/service/s3/cfn/bucket/notification/sim-cfn-s3-bucket-notification-configuration.js.map +1 -1
- package/dist/service/s3/command/get-bucket-notification-configuration/get-bucket-notification-configuration.command.d.ts +2 -1
- package/dist/service/s3/command/get-bucket-notification-configuration/get-bucket-notification-configuration.command.d.ts.map +1 -1
- package/dist/service/s3/command/put-bucket-notification-configuration/put-bucket-notification-configuration.command.d.ts +10 -1
- package/dist/service/s3/command/put-bucket-notification-configuration/put-bucket-notification-configuration.command.d.ts.map +1 -1
- package/dist/service/s3/command/put-object/put-object-builder.d.ts +13 -4
- package/dist/service/s3/command/put-object/put-object-builder.d.ts.map +1 -1
- package/dist/service/s3/command/put-object/put-object-builder.js +27 -10
- package/dist/service/s3/command/put-object/put-object-builder.js.map +1 -1
- package/dist/service/s3/command/put-object/put-object.command.d.ts +11 -0
- package/dist/service/s3/command/put-object/put-object.command.d.ts.map +1 -1
- package/dist/service/s3/mount/sim-s3-mount.type.d.ts +12 -0
- package/dist/service/s3/mount/sim-s3-mount.type.d.ts.map +1 -1
- package/dist/service/s3/notification/destination/sim-s3-notification-destination.d.ts +1 -1
- package/dist/service/s3/notification/destination/sim-s3-notification-destination.d.ts.map +1 -1
- package/dist/service/s3/notification/destination/sim-s3-service-notification-destinations.d.ts +2 -0
- package/dist/service/s3/notification/destination/sim-s3-service-notification-destinations.d.ts.map +1 -1
- package/dist/service/s3/notification/destination/sim-s3-service-notification-destinations.js +5 -0
- package/dist/service/s3/notification/destination/sim-s3-service-notification-destinations.js.map +1 -1
- package/dist/service/s3/notification/destination/sns/sim-aws-s3-notification-topics.d.ts +38 -0
- package/dist/service/s3/notification/destination/sns/sim-aws-s3-notification-topics.d.ts.map +1 -0
- package/dist/service/s3/notification/destination/sns/sim-aws-s3-notification-topics.js +50 -0
- package/dist/service/s3/notification/destination/sns/sim-aws-s3-notification-topics.js.map +1 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic-arn.d.ts +31 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic-arn.d.ts.map +1 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic-arn.js +48 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic-arn.js.map +1 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic.d.ts +43 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic.d.ts.map +1 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic.js +71 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic.js.map +1 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-notification-topics.d.ts +22 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-notification-topics.d.ts.map +1 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-notification-topics.js +2 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-notification-topics.js.map +1 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-sns-notification-destination.d.ts +40 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-sns-notification-destination.d.ts.map +1 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-sns-notification-destination.js +51 -0
- package/dist/service/s3/notification/destination/sns/sim-s3-sns-notification-destination.js.map +1 -0
- package/dist/service/s3/object/s3-object-response-headers.d.ts +17 -0
- package/dist/service/s3/object/s3-object-response-headers.d.ts.map +1 -0
- package/dist/service/s3/object/s3-object-response-headers.js +29 -0
- package/dist/service/s3/object/s3-object-response-headers.js.map +1 -0
- package/dist/service/s3/object/s3-system-metadata.d.ts +32 -0
- package/dist/service/s3/object/s3-system-metadata.d.ts.map +1 -0
- package/dist/service/s3/object/s3-system-metadata.js +35 -0
- package/dist/service/s3/object/s3-system-metadata.js.map +1 -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 +2 -5
- package/dist/service/s3/serve/sim-s3-rest-object-reader.js.map +1 -1
- package/dist/service/s3/serve/website/sim-s3-website-object-loader.js +1 -1
- package/dist/service/s3/serve/website/sim-s3-website-object-loader.js.map +1 -1
- package/dist/service/s3/serve/website/sim-s3-website-object.d.ts +3 -4
- package/dist/service/s3/serve/website/sim-s3-website-object.d.ts.map +1 -1
- package/dist/service/s3/serve/website/sim-s3-website-object.js +6 -11
- package/dist/service/s3/serve/website/sim-s3-website-object.js.map +1 -1
- package/dist/service/s3/storage/filesystem/s3-filesystem-allowed.d.ts +36 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-allowed.d.ts.map +1 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-allowed.js +73 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-allowed.js.map +1 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-object-metadata.d.ts.map +1 -1
- package/dist/service/s3/storage/filesystem/s3-filesystem-object-metadata.js +5 -6
- package/dist/service/s3/storage/filesystem/s3-filesystem-object-metadata.js.map +1 -1
- package/dist/service/s3/storage/filesystem/s3-filesystem-safety.d.ts +2 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-safety.d.ts.map +1 -1
- package/dist/service/s3/storage/filesystem/s3-filesystem-safety.js +7 -41
- package/dist/service/s3/storage/filesystem/s3-filesystem-safety.js.map +1 -1
- package/dist/service/s3/storage/filesystem/s3-filesystem-storage.d.ts +1 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-storage.d.ts.map +1 -1
- package/dist/service/s3/storage/filesystem/s3-filesystem-storage.js +1 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-storage.js.map +1 -1
- package/dist/service/sns/cfn/sim-cfn-sns-attribute-value.d.ts +15 -0
- package/dist/service/sns/cfn/sim-cfn-sns-attribute-value.d.ts.map +1 -0
- package/dist/service/sns/cfn/sim-cfn-sns-attribute-value.js +23 -0
- package/dist/service/sns/cfn/sim-cfn-sns-attribute-value.js.map +1 -0
- package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.d.ts +38 -0
- package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.d.ts.map +1 -0
- package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.js +73 -0
- package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.js.map +1 -0
- package/dist/service/sns/cfn/sim-cfn-sns-resource-error.d.ts +24 -0
- package/dist/service/sns/cfn/sim-cfn-sns-resource-error.d.ts.map +1 -0
- package/dist/service/sns/cfn/sim-cfn-sns-resource-error.js +39 -0
- package/dist/service/sns/cfn/sim-cfn-sns-resource-error.js.map +1 -0
- package/dist/service/sns/cfn/sim-cfn-sns-resource-types.d.ts +11 -0
- package/dist/service/sns/cfn/sim-cfn-sns-resource-types.d.ts.map +1 -0
- package/dist/service/sns/cfn/sim-cfn-sns-resource-types.js +11 -0
- package/dist/service/sns/cfn/sim-cfn-sns-resource-types.js.map +1 -0
- package/dist/service/sns/cfn/sim-sns-cfn-resource-factory.d.ts +31 -0
- package/dist/service/sns/cfn/sim-sns-cfn-resource-factory.d.ts.map +1 -0
- package/dist/service/sns/cfn/sim-sns-cfn-resource-factory.js +54 -0
- package/dist/service/sns/cfn/sim-sns-cfn-resource-factory.js.map +1 -0
- package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.d.ts +26 -0
- package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.d.ts.map +1 -0
- package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.js +37 -0
- package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.js.map +1 -0
- package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.d.ts +47 -0
- package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.d.ts.map +1 -0
- package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.js +88 -0
- package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-properties.js.map +1 -0
- package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.d.ts +36 -0
- package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.d.ts.map +1 -0
- package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.js +55 -0
- package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-property-names.js.map +1 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-inline-subscriptions.d.ts +23 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-inline-subscriptions.d.ts.map +1 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-inline-subscriptions.js +49 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-inline-subscriptions.js.map +1 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.d.ts +34 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.d.ts.map +1 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.js +60 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.js.map +1 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-name.d.ts +22 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-name.d.ts.map +1 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-name.js +27 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-name.js.map +1 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-properties.d.ts +58 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-properties.d.ts.map +1 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-properties.js +93 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-properties.js.map +1 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-property-names.d.ts +31 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-property-names.d.ts.map +1 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-property-names.js +52 -0
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-property-names.js.map +1 -0
- package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.d.ts +34 -0
- package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.d.ts.map +1 -0
- package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.js +58 -0
- package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.js.map +1 -0
- package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-properties.d.ts +20 -0
- package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-properties.d.ts.map +1 -0
- package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-properties.js +44 -0
- package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-properties.js.map +1 -0
- package/dist/service/sns/command/authorize/sim-sns-authorizer.d.ts +58 -0
- package/dist/service/sns/command/authorize/sim-sns-authorizer.d.ts.map +1 -0
- package/dist/service/sns/command/authorize/sim-sns-authorizer.js +83 -0
- package/dist/service/sns/command/authorize/sim-sns-authorizer.js.map +1 -0
- package/dist/service/sns/command/authorize/sim-sns-condition-context.d.ts +13 -0
- package/dist/service/sns/command/authorize/sim-sns-condition-context.d.ts.map +1 -0
- package/dist/service/sns/command/authorize/sim-sns-condition-context.js +21 -0
- package/dist/service/sns/command/authorize/sim-sns-condition-context.js.map +1 -0
- package/dist/service/sns/command/authorize/sim-sns-service-publish-authorizer.d.ts +41 -0
- package/dist/service/sns/command/authorize/sim-sns-service-publish-authorizer.d.ts.map +1 -0
- package/dist/service/sns/command/authorize/sim-sns-service-publish-authorizer.js +40 -0
- package/dist/service/sns/command/authorize/sim-sns-service-publish-authorizer.js.map +1 -0
- package/dist/service/sns/command/authorize/sim-sns-topic-resource-policies.d.ts +12 -0
- package/dist/service/sns/command/authorize/sim-sns-topic-resource-policies.d.ts.map +1 -0
- package/dist/service/sns/command/authorize/sim-sns-topic-resource-policies.js +25 -0
- package/dist/service/sns/command/authorize/sim-sns-topic-resource-policies.js.map +1 -0
- package/dist/service/sns/command/publish/publish.command.d.ts +70 -0
- package/dist/service/sns/command/publish/publish.command.d.ts.map +1 -0
- package/dist/service/sns/command/publish/publish.command.js +2 -0
- package/dist/service/sns/command/publish/publish.command.js.map +1 -0
- package/dist/service/sns/command/publish/sim-sns-batch-entries.d.ts +52 -0
- package/dist/service/sns/command/publish/sim-sns-batch-entries.d.ts.map +1 -0
- package/dist/service/sns/command/publish/sim-sns-batch-entries.js +85 -0
- package/dist/service/sns/command/publish/sim-sns-batch-entries.js.map +1 -0
- package/dist/service/sns/command/publish/sim-sns-publish-commands.d.ts +53 -0
- package/dist/service/sns/command/publish/sim-sns-publish-commands.d.ts.map +1 -0
- package/dist/service/sns/command/publish/sim-sns-publish-commands.js +83 -0
- package/dist/service/sns/command/publish/sim-sns-publish-commands.js.map +1 -0
- package/dist/service/sns/command/publish/sim-sns-publish-input.d.ts +23 -0
- package/dist/service/sns/command/publish/sim-sns-publish-input.d.ts.map +1 -0
- package/dist/service/sns/command/publish/sim-sns-publish-input.js +47 -0
- package/dist/service/sns/command/publish/sim-sns-publish-input.js.map +1 -0
- package/dist/service/sns/command/sim-sns-command.types.d.ts +7 -0
- package/dist/service/sns/command/sim-sns-command.types.d.ts.map +1 -0
- package/dist/service/sns/command/sim-sns-command.types.js +2 -0
- package/dist/service/sns/command/sim-sns-command.types.js.map +1 -0
- package/dist/service/sns/command/sim-sns-commands.d.ts +45 -0
- package/dist/service/sns/command/sim-sns-commands.d.ts.map +1 -0
- package/dist/service/sns/command/sim-sns-commands.js +83 -0
- package/dist/service/sns/command/sim-sns-commands.js.map +1 -0
- package/dist/service/sns/command/sim-sns-page.d.ts +19 -0
- package/dist/service/sns/command/sim-sns-page.d.ts.map +1 -0
- package/dist/service/sns/command/sim-sns-page.js +51 -0
- package/dist/service/sns/command/sim-sns-page.js.map +1 -0
- package/dist/service/sns/command/sim-sns-request-options.d.ts +47 -0
- package/dist/service/sns/command/sim-sns-request-options.d.ts.map +1 -0
- package/dist/service/sns/command/sim-sns-request-options.js +19 -0
- package/dist/service/sns/command/sim-sns-request-options.js.map +1 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-access.d.ts +42 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-access.d.ts.map +1 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-access.js +57 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-access.js.map +1 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-attribute-commands.d.ts +31 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-attribute-commands.d.ts.map +1 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-attribute-commands.js +44 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-attribute-commands.js.map +1 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-commands.d.ts +50 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-commands.d.ts.map +1 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-commands.js +73 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-commands.js.map +1 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-listings.d.ts +34 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-listings.d.ts.map +1 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-listings.js +57 -0
- package/dist/service/sns/command/subscription/sim-sns-subscription-listings.js.map +1 -0
- package/dist/service/sns/command/subscription/subscription.command.d.ts +118 -0
- package/dist/service/sns/command/subscription/subscription.command.d.ts.map +1 -0
- package/dist/service/sns/command/subscription/subscription.command.js +2 -0
- package/dist/service/sns/command/subscription/subscription.command.js.map +1 -0
- package/dist/service/sns/command/topic/sim-sns-create-topic.d.ts +41 -0
- package/dist/service/sns/command/topic/sim-sns-create-topic.d.ts.map +1 -0
- package/dist/service/sns/command/topic/sim-sns-create-topic.js +54 -0
- package/dist/service/sns/command/topic/sim-sns-create-topic.js.map +1 -0
- package/dist/service/sns/command/topic/sim-sns-request-topic-name.d.ts +11 -0
- package/dist/service/sns/command/topic/sim-sns-request-topic-name.d.ts.map +1 -0
- package/dist/service/sns/command/topic/sim-sns-request-topic-name.js +28 -0
- package/dist/service/sns/command/topic/sim-sns-request-topic-name.js.map +1 -0
- package/dist/service/sns/command/topic/sim-sns-topic-access.d.ts +76 -0
- package/dist/service/sns/command/topic/sim-sns-topic-access.d.ts.map +1 -0
- package/dist/service/sns/command/topic/sim-sns-topic-access.js +81 -0
- package/dist/service/sns/command/topic/sim-sns-topic-access.js.map +1 -0
- package/dist/service/sns/command/topic/sim-sns-topic-attribute-commands.d.ts +36 -0
- package/dist/service/sns/command/topic/sim-sns-topic-attribute-commands.d.ts.map +1 -0
- package/dist/service/sns/command/topic/sim-sns-topic-attribute-commands.js +47 -0
- package/dist/service/sns/command/topic/sim-sns-topic-attribute-commands.js.map +1 -0
- package/dist/service/sns/command/topic/sim-sns-topic-commands.d.ts +42 -0
- package/dist/service/sns/command/topic/sim-sns-topic-commands.d.ts.map +1 -0
- package/dist/service/sns/command/topic/sim-sns-topic-commands.js +51 -0
- package/dist/service/sns/command/topic/sim-sns-topic-commands.js.map +1 -0
- package/dist/service/sns/command/topic/sim-sns-unsimulated-topic-input.d.ts +11 -0
- package/dist/service/sns/command/topic/sim-sns-unsimulated-topic-input.d.ts.map +1 -0
- package/dist/service/sns/command/topic/sim-sns-unsimulated-topic-input.js +20 -0
- package/dist/service/sns/command/topic/sim-sns-unsimulated-topic-input.js.map +1 -0
- package/dist/service/sns/command/topic/topic.command.d.ts +95 -0
- package/dist/service/sns/command/topic/topic.command.d.ts.map +1 -0
- package/dist/service/sns/command/topic/topic.command.js +2 -0
- package/dist/service/sns/command/topic/topic.command.js.map +1 -0
- package/dist/service/sns/delivery/lambda/sim-aws-sns-delivery-functions.d.ts +27 -0
- package/dist/service/sns/delivery/lambda/sim-aws-sns-delivery-functions.d.ts.map +1 -0
- package/dist/service/sns/delivery/lambda/sim-aws-sns-delivery-functions.js +31 -0
- package/dist/service/sns/delivery/lambda/sim-aws-sns-delivery-functions.js.map +1 -0
- package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.d.ts +31 -0
- package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.d.ts.map +1 -0
- package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.js +62 -0
- package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.js.map +1 -0
- package/dist/service/sns/delivery/lambda/sim-sns-lambda-event.d.ts +10 -0
- package/dist/service/sns/delivery/lambda/sim-sns-lambda-event.d.ts.map +1 -0
- package/dist/service/sns/delivery/lambda/sim-sns-lambda-event.js +53 -0
- package/dist/service/sns/delivery/lambda/sim-sns-lambda-event.js.map +1 -0
- package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.d.ts +17 -0
- package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.d.ts.map +1 -0
- package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.js +21 -0
- package/dist/service/sns/delivery/sim-aws-sns-delivery-endpoints.js.map +1 -0
- package/dist/service/sns/delivery/sim-sns-canonical-message.d.ts +32 -0
- package/dist/service/sns/delivery/sim-sns-canonical-message.d.ts.map +1 -0
- package/dist/service/sns/delivery/sim-sns-canonical-message.js +24 -0
- package/dist/service/sns/delivery/sim-sns-canonical-message.js.map +1 -0
- package/dist/service/sns/delivery/sim-sns-delivery-failures.d.ts +60 -0
- package/dist/service/sns/delivery/sim-sns-delivery-failures.d.ts.map +1 -0
- package/dist/service/sns/delivery/sim-sns-delivery-failures.js +84 -0
- package/dist/service/sns/delivery/sim-sns-delivery-failures.js.map +1 -0
- package/dist/service/sns/delivery/sim-sns-delivery-request.d.ts +28 -0
- package/dist/service/sns/delivery/sim-sns-delivery-request.d.ts.map +1 -0
- package/dist/service/sns/delivery/sim-sns-delivery-request.js +34 -0
- package/dist/service/sns/delivery/sim-sns-delivery-request.js.map +1 -0
- package/dist/service/sns/delivery/sim-sns-delivery.d.ts +55 -0
- package/dist/service/sns/delivery/sim-sns-delivery.d.ts.map +1 -0
- package/dist/service/sns/delivery/sim-sns-delivery.js +18 -0
- package/dist/service/sns/delivery/sim-sns-delivery.js.map +1 -0
- package/dist/service/sns/delivery/sim-sns-envelope.d.ts +26 -0
- package/dist/service/sns/delivery/sim-sns-envelope.d.ts.map +1 -0
- package/dist/service/sns/delivery/sim-sns-envelope.js +41 -0
- package/dist/service/sns/delivery/sim-sns-envelope.js.map +1 -0
- package/dist/service/sns/delivery/sim-sns-fan-out.d.ts +53 -0
- package/dist/service/sns/delivery/sim-sns-fan-out.d.ts.map +1 -0
- package/dist/service/sns/delivery/sim-sns-fan-out.js +69 -0
- package/dist/service/sns/delivery/sim-sns-fan-out.js.map +1 -0
- package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.d.ts +17 -0
- package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.d.ts.map +1 -0
- package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.js +23 -0
- package/dist/service/sns/delivery/sim-sns-no-delivery-endpoints.js.map +1 -0
- package/dist/service/sns/delivery/sim-sns-notification.d.ts +57 -0
- package/dist/service/sns/delivery/sim-sns-notification.d.ts.map +1 -0
- package/dist/service/sns/delivery/sim-sns-notification.js +64 -0
- package/dist/service/sns/delivery/sim-sns-notification.js.map +1 -0
- package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.d.ts +32 -0
- package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.d.ts.map +1 -0
- package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.js +22 -0
- package/dist/service/sns/delivery/sim-sns-protocol-delivery-endpoints.js.map +1 -0
- package/dist/service/sns/delivery/sqs/sim-aws-sns-delivery-queues.d.ts +29 -0
- package/dist/service/sns/delivery/sqs/sim-aws-sns-delivery-queues.d.ts.map +1 -0
- package/dist/service/sns/delivery/sqs/sim-aws-sns-delivery-queues.js +33 -0
- package/dist/service/sns/delivery/sqs/sim-aws-sns-delivery-queues.js.map +1 -0
- package/dist/service/sns/delivery/sqs/sim-sns-delivery-queue.d.ts +31 -0
- package/dist/service/sns/delivery/sqs/sim-sns-delivery-queue.d.ts.map +1 -0
- package/dist/service/sns/delivery/sqs/sim-sns-delivery-queue.js +63 -0
- package/dist/service/sns/delivery/sqs/sim-sns-delivery-queue.js.map +1 -0
- package/dist/service/sns/delivery/sqs/sim-sns-queue-message.d.ts +24 -0
- package/dist/service/sns/delivery/sqs/sim-sns-queue-message.d.ts.map +1 -0
- package/dist/service/sns/delivery/sqs/sim-sns-queue-message.js +38 -0
- package/dist/service/sns/delivery/sqs/sim-sns-queue-message.js.map +1 -0
- package/dist/service/sns/error/sim-sns-delivery.error.d.ts +13 -0
- package/dist/service/sns/error/sim-sns-delivery.error.d.ts.map +1 -0
- package/dist/service/sns/error/sim-sns-delivery.error.js +13 -0
- package/dist/service/sns/error/sim-sns-delivery.error.js.map +1 -0
- package/dist/service/sns/error/sim-sns.error.d.ts +107 -0
- package/dist/service/sns/error/sim-sns.error.d.ts.map +1 -0
- package/dist/service/sns/error/sim-sns.error.js +124 -0
- package/dist/service/sns/error/sim-sns.error.js.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-anything-but-match.d.ts +30 -0
- package/dist/service/sns/filter/match/sim-sns-anything-but-match.d.ts.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-anything-but-match.js +82 -0
- package/dist/service/sns/filter/match/sim-sns-anything-but-match.js.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-equals-ignore-case-match.d.ts +24 -0
- package/dist/service/sns/filter/match/sim-sns-equals-ignore-case-match.d.ts.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-equals-ignore-case-match.js +30 -0
- package/dist/service/sns/filter/match/sim-sns-equals-ignore-case-match.js.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-exact-match.d.ts +22 -0
- package/dist/service/sns/filter/match/sim-sns-exact-match.d.ts.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-exact-match.js +49 -0
- package/dist/service/sns/filter/match/sim-sns-exact-match.js.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-exists-match.d.ts +27 -0
- package/dist/service/sns/filter/match/sim-sns-exists-match.d.ts.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-exists-match.js +38 -0
- package/dist/service/sns/filter/match/sim-sns-exists-match.js.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-filter-match.d.ts +24 -0
- package/dist/service/sns/filter/match/sim-sns-filter-match.d.ts.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-filter-match.js +19 -0
- package/dist/service/sns/filter/match/sim-sns-filter-match.js.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-numeric-match.d.ts +48 -0
- package/dist/service/sns/filter/match/sim-sns-numeric-match.d.ts.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-numeric-match.js +107 -0
- package/dist/service/sns/filter/match/sim-sns-numeric-match.js.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-prefix-match.d.ts +26 -0
- package/dist/service/sns/filter/match/sim-sns-prefix-match.d.ts.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-prefix-match.js +32 -0
- package/dist/service/sns/filter/match/sim-sns-prefix-match.js.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-suffix-match.d.ts +23 -0
- package/dist/service/sns/filter/match/sim-sns-suffix-match.d.ts.map +1 -0
- package/dist/service/sns/filter/match/sim-sns-suffix-match.js +29 -0
- package/dist/service/sns/filter/match/sim-sns-suffix-match.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-attribute-subject.d.ts +31 -0
- package/dist/service/sns/filter/sim-sns-attribute-subject.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-attribute-subject.js +85 -0
- package/dist/service/sns/filter/sim-sns-attribute-subject.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-body-subject.d.ts +30 -0
- package/dist/service/sns/filter/sim-sns-body-subject.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-body-subject.js +67 -0
- package/dist/service/sns/filter/sim-sns-body-subject.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-any-rule.d.ts +21 -0
- package/dist/service/sns/filter/sim-sns-filter-any-rule.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-any-rule.js +23 -0
- package/dist/service/sns/filter/sim-sns-filter-any-rule.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-key-rule.d.ts +28 -0
- package/dist/service/sns/filter/sim-sns-filter-key-rule.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-key-rule.js +48 -0
- package/dist/service/sns/filter/sim-sns-filter-key-rule.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-matches.d.ts +9 -0
- package/dist/service/sns/filter/sim-sns-filter-matches.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-matches.js +40 -0
- package/dist/service/sns/filter/sim-sns-filter-matches.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-operators.d.ts +22 -0
- package/dist/service/sns/filter/sim-sns-filter-operators.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-operators.js +50 -0
- package/dist/service/sns/filter/sim-sns-filter-operators.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-or-eligibility.d.ts +17 -0
- package/dist/service/sns/filter/sim-sns-filter-or-eligibility.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-or-eligibility.js +47 -0
- package/dist/service/sns/filter/sim-sns-filter-or-eligibility.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-policy-scope.d.ts +36 -0
- package/dist/service/sns/filter/sim-sns-filter-policy-scope.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-policy-scope.js +67 -0
- package/dist/service/sns/filter/sim-sns-filter-policy-scope.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-policy.d.ts +48 -0
- package/dist/service/sns/filter/sim-sns-filter-policy.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-policy.js +84 -0
- package/dist/service/sns/filter/sim-sns-filter-policy.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-refusals.d.ts +38 -0
- package/dist/service/sns/filter/sim-sns-filter-refusals.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-refusals.js +53 -0
- package/dist/service/sns/filter/sim-sns-filter-refusals.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-rule.d.ts +15 -0
- package/dist/service/sns/filter/sim-sns-filter-rule.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-rule.js +2 -0
- package/dist/service/sns/filter/sim-sns-filter-rule.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-rules.d.ts +27 -0
- package/dist/service/sns/filter/sim-sns-filter-rules.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-rules.js +66 -0
- package/dist/service/sns/filter/sim-sns-filter-rules.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-subject.d.ts +31 -0
- package/dist/service/sns/filter/sim-sns-filter-subject.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-subject.js +2 -0
- package/dist/service/sns/filter/sim-sns-filter-subject.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-value.d.ts +45 -0
- package/dist/service/sns/filter/sim-sns-filter-value.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-filter-value.js +83 -0
- package/dist/service/sns/filter/sim-sns-filter-value.js.map +1 -0
- package/dist/service/sns/filter/sim-sns-json-filter-values.d.ts +12 -0
- package/dist/service/sns/filter/sim-sns-json-filter-values.d.ts.map +1 -0
- package/dist/service/sns/filter/sim-sns-json-filter-values.js +25 -0
- package/dist/service/sns/filter/sim-sns-json-filter-values.js.map +1 -0
- package/dist/service/sns/index.d.ts +33 -0
- package/dist/service/sns/index.d.ts.map +1 -0
- package/dist/service/sns/index.js +29 -0
- package/dist/service/sns/index.js.map +1 -0
- package/dist/service/sns/message/sim-sns-message-attribute-rules.d.ts +23 -0
- package/dist/service/sns/message/sim-sns-message-attribute-rules.d.ts.map +1 -0
- package/dist/service/sns/message/sim-sns-message-attribute-rules.js +74 -0
- package/dist/service/sns/message/sim-sns-message-attribute-rules.js.map +1 -0
- package/dist/service/sns/message/sim-sns-message-attribute-value.d.ts +15 -0
- package/dist/service/sns/message/sim-sns-message-attribute-value.d.ts.map +1 -0
- package/dist/service/sns/message/sim-sns-message-attribute-value.js +2 -0
- package/dist/service/sns/message/sim-sns-message-attribute-value.js.map +1 -0
- package/dist/service/sns/message/sim-sns-message-attribute.d.ts +55 -0
- package/dist/service/sns/message/sim-sns-message-attribute.d.ts.map +1 -0
- package/dist/service/sns/message/sim-sns-message-attribute.js +78 -0
- package/dist/service/sns/message/sim-sns-message-attribute.js.map +1 -0
- package/dist/service/sns/message/sim-sns-message-attributes.d.ts +71 -0
- package/dist/service/sns/message/sim-sns-message-attributes.d.ts.map +1 -0
- package/dist/service/sns/message/sim-sns-message-attributes.js +80 -0
- package/dist/service/sns/message/sim-sns-message-attributes.js.map +1 -0
- package/dist/service/sns/message/sim-sns-message-body.d.ts +17 -0
- package/dist/service/sns/message/sim-sns-message-body.d.ts.map +1 -0
- package/dist/service/sns/message/sim-sns-message-body.js +26 -0
- package/dist/service/sns/message/sim-sns-message-body.js.map +1 -0
- package/dist/service/sns/message/sim-sns-message-subject.d.ts +27 -0
- package/dist/service/sns/message/sim-sns-message-subject.d.ts.map +1 -0
- package/dist/service/sns/message/sim-sns-message-subject.js +74 -0
- package/dist/service/sns/message/sim-sns-message-subject.js.map +1 -0
- package/dist/service/sns/message/sim-sns-published-message.d.ts +55 -0
- package/dist/service/sns/message/sim-sns-published-message.d.ts.map +1 -0
- package/dist/service/sns/message/sim-sns-published-message.js +69 -0
- package/dist/service/sns/message/sim-sns-published-message.js.map +1 -0
- package/dist/service/sns/sdk/sim-sns-sdk-command-router.d.ts +18 -0
- package/dist/service/sns/sdk/sim-sns-sdk-command-router.d.ts.map +1 -0
- package/dist/service/sns/sdk/sim-sns-sdk-command-router.js +76 -0
- package/dist/service/sns/sdk/sim-sns-sdk-command-router.js.map +1 -0
- package/dist/service/sns/signature/sim-sns-certificate.d.ts +30 -0
- package/dist/service/sns/signature/sim-sns-certificate.d.ts.map +1 -0
- package/dist/service/sns/signature/sim-sns-certificate.js +110 -0
- package/dist/service/sns/signature/sim-sns-certificate.js.map +1 -0
- package/dist/service/sns/signature/sim-sns-der.d.ts +40 -0
- package/dist/service/sns/signature/sim-sns-der.d.ts.map +1 -0
- package/dist/service/sns/signature/sim-sns-der.js +64 -0
- package/dist/service/sns/signature/sim-sns-der.js.map +1 -0
- package/dist/service/sns/signature/sim-sns-host.d.ts +28 -0
- package/dist/service/sns/signature/sim-sns-host.d.ts.map +1 -0
- package/dist/service/sns/signature/sim-sns-host.js +33 -0
- package/dist/service/sns/signature/sim-sns-host.js.map +1 -0
- package/dist/service/sns/signature/sim-sns-message-signer.d.ts +51 -0
- package/dist/service/sns/signature/sim-sns-message-signer.d.ts.map +1 -0
- package/dist/service/sns/signature/sim-sns-message-signer.js +60 -0
- package/dist/service/sns/signature/sim-sns-message-signer.js.map +1 -0
- package/dist/service/sns/signature/sim-sns-signing-key.d.ts +34 -0
- package/dist/service/sns/signature/sim-sns-signing-key.d.ts.map +1 -0
- package/dist/service/sns/signature/sim-sns-signing-key.js +69 -0
- package/dist/service/sns/signature/sim-sns-signing-key.js.map +1 -0
- package/dist/service/sns/sim-sns.d.ts +139 -0
- package/dist/service/sns/sim-sns.d.ts.map +1 -0
- package/dist/service/sns/sim-sns.js +188 -0
- package/dist/service/sns/sim-sns.js.map +1 -0
- package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.d.ts +31 -0
- package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.d.ts.map +1 -0
- package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.js +54 -0
- package/dist/service/sns/subscription/sim-sns-function-endpoint-arn.js.map +1 -0
- package/dist/service/sns/subscription/sim-sns-queue-endpoint-arn.d.ts +30 -0
- package/dist/service/sns/subscription/sim-sns-queue-endpoint-arn.d.ts.map +1 -0
- package/dist/service/sns/subscription/sim-sns-queue-endpoint-arn.js +78 -0
- package/dist/service/sns/subscription/sim-sns-queue-endpoint-arn.js.map +1 -0
- package/dist/service/sns/subscription/sim-sns-requested-subscription-attributes.d.ts +28 -0
- package/dist/service/sns/subscription/sim-sns-requested-subscription-attributes.d.ts.map +1 -0
- package/dist/service/sns/subscription/sim-sns-requested-subscription-attributes.js +43 -0
- package/dist/service/sns/subscription/sim-sns-requested-subscription-attributes.js.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription-arn.d.ts +43 -0
- package/dist/service/sns/subscription/sim-sns-subscription-arn.d.ts.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription-arn.js +70 -0
- package/dist/service/sns/subscription/sim-sns-subscription-arn.js.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription-attribute-changes.d.ts +20 -0
- package/dist/service/sns/subscription/sim-sns-subscription-attribute-changes.d.ts.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription-attribute-changes.js +52 -0
- package/dist/service/sns/subscription/sim-sns-subscription-attribute-changes.js.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription-attribute-names.d.ts +26 -0
- package/dist/service/sns/subscription/sim-sns-subscription-attribute-names.d.ts.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription-attribute-names.js +64 -0
- package/dist/service/sns/subscription/sim-sns-subscription-attribute-names.js.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription-attributes.d.ts +47 -0
- package/dist/service/sns/subscription/sim-sns-subscription-attributes.d.ts.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription-attributes.js +67 -0
- package/dist/service/sns/subscription/sim-sns-subscription-attributes.js.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription-endpoint.d.ts +26 -0
- package/dist/service/sns/subscription/sim-sns-subscription-endpoint.d.ts.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription-endpoint.js +21 -0
- package/dist/service/sns/subscription/sim-sns-subscription-endpoint.js.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription-protocol.d.ts +33 -0
- package/dist/service/sns/subscription/sim-sns-subscription-protocol.d.ts.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription-protocol.js +63 -0
- package/dist/service/sns/subscription/sim-sns-subscription-protocol.js.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription-store.d.ts +71 -0
- package/dist/service/sns/subscription/sim-sns-subscription-store.d.ts.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription-store.js +88 -0
- package/dist/service/sns/subscription/sim-sns-subscription-store.js.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription.d.ts +72 -0
- package/dist/service/sns/subscription/sim-sns-subscription.d.ts.map +1 -0
- package/dist/service/sns/subscription/sim-sns-subscription.js +116 -0
- package/dist/service/sns/subscription/sim-sns-subscription.js.map +1 -0
- package/dist/service/sns/topic/sim-sns-topic-arn.d.ts +52 -0
- package/dist/service/sns/topic/sim-sns-topic-arn.d.ts.map +1 -0
- package/dist/service/sns/topic/sim-sns-topic-arn.js +71 -0
- package/dist/service/sns/topic/sim-sns-topic-arn.js.map +1 -0
- package/dist/service/sns/topic/sim-sns-topic-attribute-names.d.ts +19 -0
- package/dist/service/sns/topic/sim-sns-topic-attribute-names.d.ts.map +1 -0
- package/dist/service/sns/topic/sim-sns-topic-attribute-names.js +79 -0
- package/dist/service/sns/topic/sim-sns-topic-attribute-names.js.map +1 -0
- package/dist/service/sns/topic/sim-sns-topic-attributes.d.ts +56 -0
- package/dist/service/sns/topic/sim-sns-topic-attributes.d.ts.map +1 -0
- package/dist/service/sns/topic/sim-sns-topic-attributes.js +85 -0
- package/dist/service/sns/topic/sim-sns-topic-attributes.js.map +1 -0
- package/dist/service/sns/topic/sim-sns-topic-name.d.ts +21 -0
- package/dist/service/sns/topic/sim-sns-topic-name.d.ts.map +1 -0
- package/dist/service/sns/topic/sim-sns-topic-name.js +48 -0
- package/dist/service/sns/topic/sim-sns-topic-name.js.map +1 -0
- package/dist/service/sns/topic/sim-sns-topic-policy.d.ts +23 -0
- package/dist/service/sns/topic/sim-sns-topic-policy.d.ts.map +1 -0
- package/dist/service/sns/topic/sim-sns-topic-policy.js +59 -0
- package/dist/service/sns/topic/sim-sns-topic-policy.js.map +1 -0
- package/dist/service/sns/topic/sim-sns-topic-store.d.ts +35 -0
- package/dist/service/sns/topic/sim-sns-topic-store.d.ts.map +1 -0
- package/dist/service/sns/topic/sim-sns-topic-store.js +50 -0
- package/dist/service/sns/topic/sim-sns-topic-store.js.map +1 -0
- package/dist/service/sns/topic/sim-sns-topic.d.ts +48 -0
- package/dist/service/sns/topic/sim-sns-topic.d.ts.map +1 -0
- package/dist/service/sns/topic/sim-sns-topic.js +80 -0
- package/dist/service/sns/topic/sim-sns-topic.js.map +1 -0
- package/dist/service/sqs/command/authorize/sim-sqs-authorizer.d.ts +3 -6
- package/dist/service/sqs/command/authorize/sim-sqs-authorizer.d.ts.map +1 -1
- package/dist/service/sqs/command/authorize/sim-sqs-authorizer.js +13 -7
- package/dist/service/sqs/command/authorize/sim-sqs-authorizer.js.map +1 -1
- package/dist/service/sqs/index.d.ts +1 -1
- package/dist/service/sqs/index.d.ts.map +1 -1
- package/dist/service/sqs/index.js +1 -1
- package/dist/service/sqs/index.js.map +1 -1
- package/dist/service/sqs/queue/sim-sqs-queue-arn.d.ts +0 -7
- package/dist/service/sqs/queue/sim-sqs-queue-arn.d.ts.map +1 -1
- package/dist/service/sqs/queue/sim-sqs-queue-arn.js +0 -9
- package/dist/service/sqs/queue/sim-sqs-queue-arn.js.map +1 -1
- package/dist/service/sqs/sim-sqs.js +1 -1
- package/dist/service/sqs/sim-sqs.js.map +1 -1
- package/package.json +7 -1
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { SimSnsInvalidParameterException, SimSnsNotFoundException, } from "../../error/sim-sns.error.js";
|
|
2
|
+
import { parseSnsSubscriptionArn } from "../../subscription/sim-sns-subscription-arn.js";
|
|
3
|
+
/**
|
|
4
|
+
* How a request reaches the subscription it names by ARN.
|
|
5
|
+
*
|
|
6
|
+
* The action is authorized before the subscription is looked for, which is the
|
|
7
|
+
* other way round from a topic. Real SNS gives `Unsubscribe`,
|
|
8
|
+
* `GetSubscriptionAttributes` and `SetSubscriptionAttributes` no resource type
|
|
9
|
+
* at all, so IAM evaluates them against `*` and no topic policy takes part in
|
|
10
|
+
* the decision. Nothing about the subscription can change the answer, so
|
|
11
|
+
* nothing has to be found first.
|
|
12
|
+
*/
|
|
13
|
+
export class SimSnsSubscriptionAccess {
|
|
14
|
+
subscriptions;
|
|
15
|
+
topicAccess;
|
|
16
|
+
accountRegionScope;
|
|
17
|
+
constructor(properties) {
|
|
18
|
+
this.subscriptions = properties.subscriptions;
|
|
19
|
+
this.topicAccess = properties.topicAccess;
|
|
20
|
+
this.accountRegionScope = properties.accountRegionScope;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Resolve the subscription a request names by ARN, authorizing the action
|
|
24
|
+
* first.
|
|
25
|
+
*/
|
|
26
|
+
requireByArn(action, subscriptionArn, options) {
|
|
27
|
+
this.topicAccess.authorizeAnyTopic(action, options);
|
|
28
|
+
return this.subscriptions.require(this.scopedArn(subscriptionArn));
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Read the subscription ARN a request carries, refusing one this scope could
|
|
32
|
+
* not own.
|
|
33
|
+
*
|
|
34
|
+
* A subscription ARN is the topic's with an id on the end, so it names an
|
|
35
|
+
* Account and a Region the same way a topic ARN does, and one naming another
|
|
36
|
+
* scope reaches nothing here rather than being looked up locally by its id.
|
|
37
|
+
*/
|
|
38
|
+
scopedArn(subscriptionArn) {
|
|
39
|
+
if (subscriptionArn === undefined || subscriptionArn === "") {
|
|
40
|
+
throw new SimSnsInvalidParameterException("Invalid parameter: SubscriptionArn is required");
|
|
41
|
+
}
|
|
42
|
+
const parts = parseSnsSubscriptionArn(subscriptionArn);
|
|
43
|
+
if (parts === undefined) {
|
|
44
|
+
throw new SimSnsInvalidParameterException(`Invalid parameter: SubscriptionArn Reason: ${subscriptionArn} is ` +
|
|
45
|
+
`not a subscription ARN, which is ` +
|
|
46
|
+
`arn:aws:sns:<region>:<account-id>:<topic-name>:<subscription-id>`);
|
|
47
|
+
}
|
|
48
|
+
const { accountId, regionName } = this.accountRegionScope;
|
|
49
|
+
if (parts.accountId !== accountId || parts.regionName !== regionName) {
|
|
50
|
+
throw new SimSnsNotFoundException(`Subscription does not exist: ${subscriptionArn} names Account ` +
|
|
51
|
+
`${parts.accountId} in ${parts.regionName}, and this simulated SNS ` +
|
|
52
|
+
`is Account ${accountId} in ${regionName}`);
|
|
53
|
+
}
|
|
54
|
+
return subscriptionArn;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=sim-sns-subscription-access.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sns-subscription-access.js","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/sim-sns-subscription-access.ts"],"names":[],"mappings":"AACA,OAAO,EACL,+BAA+B,EAC/B,uBAAuB,GACxB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AAWzF;;;;;;;;;GASG;AACH,MAAM,OAAO,wBAAwB;IAClB,aAAa,CAA0B;IACvC,WAAW,CAAoB;IAC/B,kBAAkB,CAA2B;IAE9D,YAAY,UAA8C;QACxD,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;QAC1C,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAC1D,CAAC;IAED;;;OAGG;IACH,YAAY,CACV,MAAc,EACd,eAAmC,EACnC,OAA8B;QAE9B,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAEpD,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;OAOG;IACK,SAAS,CAAC,eAAmC;QACnD,IAAI,eAAe,KAAK,SAAS,IAAI,eAAe,KAAK,EAAE,EAAE,CAAC;YAC5D,MAAM,IAAI,+BAA+B,CACvC,gDAAgD,CACjD,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,uBAAuB,CAAC,eAAe,CAAC,CAAC;QAEvD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,+BAA+B,CACvC,8CAA8C,eAAe,MAAM;gBACjE,mCAAmC;gBACnC,kEAAkE,CACrE,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC;QAE1D,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YACrE,MAAM,IAAI,uBAAuB,CAC/B,gCAAgC,eAAe,iBAAiB;gBAC9D,GAAG,KAAK,CAAC,SAAS,OAAO,KAAK,CAAC,UAAU,2BAA2B;gBACpE,cAAc,SAAS,OAAO,UAAU,EAAE,CAC7C,CAAC;QACJ,CAAC;QAED,OAAO,eAAe,CAAC;IACzB,CAAC;CACF"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { SimSnsRequestOptions } from "../sim-sns-request-options.js";
|
|
2
|
+
import type { SimSnsSubscriptionAccess } from "./sim-sns-subscription-access.js";
|
|
3
|
+
import type { SimGetSubscriptionAttributesCommand, SimGetSubscriptionAttributesCommandOutput, SimSetSubscriptionAttributesCommand, SimSetSubscriptionAttributesCommandOutput } from "./subscription.command.js";
|
|
4
|
+
interface SimSnsSubscriptionAttributeCommandsProperties {
|
|
5
|
+
readonly access: SimSnsSubscriptionAccess;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* The commands that read and change the attributes of a subscription.
|
|
9
|
+
*/
|
|
10
|
+
export declare class SimSnsSubscriptionAttributeCommands {
|
|
11
|
+
private readonly access;
|
|
12
|
+
constructor(properties: SimSnsSubscriptionAttributeCommandsProperties);
|
|
13
|
+
/**
|
|
14
|
+
* Read every attribute of a subscription.
|
|
15
|
+
*
|
|
16
|
+
* The request names no attributes, so everything the subscription has comes
|
|
17
|
+
* back. An attribute real SNS reports and this simulation does not hold is
|
|
18
|
+
* left out rather than invented.
|
|
19
|
+
*/
|
|
20
|
+
getSubscriptionAttributes(command: SimGetSubscriptionAttributesCommand, options?: SimSnsRequestOptions): SimGetSubscriptionAttributesCommandOutput;
|
|
21
|
+
/**
|
|
22
|
+
* Change one attribute of a subscription.
|
|
23
|
+
*
|
|
24
|
+
* Real SNS sets one attribute per request rather than a map of them, which is
|
|
25
|
+
* why the request carries a name and a value instead of an `Attributes`
|
|
26
|
+
* object.
|
|
27
|
+
*/
|
|
28
|
+
setSubscriptionAttributes(command: SimSetSubscriptionAttributesCommand, options?: SimSnsRequestOptions): SimSetSubscriptionAttributesCommandOutput;
|
|
29
|
+
}
|
|
30
|
+
export {};
|
|
31
|
+
//# sourceMappingURL=sim-sns-subscription-attribute-commands.d.ts.map
|
package/dist/service/sns/command/subscription/sim-sns-subscription-attribute-commands.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sns-subscription-attribute-commands.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/sim-sns-subscription-attribute-commands.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AACjF,OAAO,KAAK,EACV,mCAAmC,EACnC,yCAAyC,EACzC,mCAAmC,EACnC,yCAAyC,EAC1C,MAAM,2BAA2B,CAAC;AAEnC,UAAU,6CAA6C;IACrD,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;CAC3C;AAED;;GAEG;AACH,qBAAa,mCAAmC;IAC9C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2B;IAElD,YAAY,UAAU,EAAE,6CAA6C,EAEpE;IAED;;;;;;OAMG;IACH,yBAAyB,CACvB,OAAO,EAAE,mCAAmC,EAC5C,OAAO,CAAC,EAAE,oBAAoB,GAC7B,yCAAyC,CAQ3C;IAED;;;;;;OAMG;IACH,yBAAyB,CACvB,OAAO,EAAE,mCAAmC,EAC5C,OAAO,CAAC,EAAE,oBAAoB,GAC7B,yCAAyC,CAuB3C;CACF"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { SimSnsInvalidParameterException } from "../../error/sim-sns.error.js";
|
|
2
|
+
/**
|
|
3
|
+
* The commands that read and change the attributes of a subscription.
|
|
4
|
+
*/
|
|
5
|
+
export class SimSnsSubscriptionAttributeCommands {
|
|
6
|
+
access;
|
|
7
|
+
constructor(properties) {
|
|
8
|
+
this.access = properties.access;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Read every attribute of a subscription.
|
|
12
|
+
*
|
|
13
|
+
* The request names no attributes, so everything the subscription has comes
|
|
14
|
+
* back. An attribute real SNS reports and this simulation does not hold is
|
|
15
|
+
* left out rather than invented.
|
|
16
|
+
*/
|
|
17
|
+
getSubscriptionAttributes(command, options) {
|
|
18
|
+
const subscription = this.access.requireByArn("sns:GetSubscriptionAttributes", command.input.SubscriptionArn, options);
|
|
19
|
+
return { $metadata: {}, Attributes: subscription.reportedAttributes() };
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Change one attribute of a subscription.
|
|
23
|
+
*
|
|
24
|
+
* Real SNS sets one attribute per request rather than a map of them, which is
|
|
25
|
+
* why the request carries a name and a value instead of an `Attributes`
|
|
26
|
+
* object.
|
|
27
|
+
*/
|
|
28
|
+
setSubscriptionAttributes(command, options) {
|
|
29
|
+
const subscription = this.access.requireByArn("sns:SetSubscriptionAttributes", command.input.SubscriptionArn, options);
|
|
30
|
+
const name = command.input.AttributeName;
|
|
31
|
+
if (name === undefined || name === "") {
|
|
32
|
+
throw new SimSnsInvalidParameterException("Invalid parameter: AttributeName is required");
|
|
33
|
+
}
|
|
34
|
+
// An absent value is how SNS is told to clear an attribute, so it reaches
|
|
35
|
+
// the subscription as an empty string rather than being left out of the
|
|
36
|
+
// request. RawMessageDelivery has no empty value, so clearing that one is
|
|
37
|
+
// refused by the attribute itself.
|
|
38
|
+
subscription.applyAttributes({
|
|
39
|
+
[name]: command.input.AttributeValue ?? "",
|
|
40
|
+
});
|
|
41
|
+
return { $metadata: {} };
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=sim-sns-subscription-attribute-commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sns-subscription-attribute-commands.js","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/sim-sns-subscription-attribute-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,8BAA8B,CAAC;AAc/E;;GAEG;AACH,MAAM,OAAO,mCAAmC;IAC7B,MAAM,CAA2B;IAElD,YAAY,UAAyD;QACnE,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAClC,CAAC;IAED;;;;;;OAMG;IACH,yBAAyB,CACvB,OAA4C,EAC5C,OAA8B;QAE9B,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAC3C,+BAA+B,EAC/B,OAAO,CAAC,KAAK,CAAC,eAAe,EAC7B,OAAO,CACR,CAAC;QAEF,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,YAAY,CAAC,kBAAkB,EAAE,EAAE,CAAC;IAC1E,CAAC;IAED;;;;;;OAMG;IACH,yBAAyB,CACvB,OAA4C,EAC5C,OAA8B;QAE9B,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAC3C,+BAA+B,EAC/B,OAAO,CAAC,KAAK,CAAC,eAAe,EAC7B,OAAO,CACR,CAAC;QACF,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC;QAEzC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,+BAA+B,CACvC,8CAA8C,CAC/C,CAAC;QACJ,CAAC;QAED,0EAA0E;QAC1E,wEAAwE;QACxE,0EAA0E;QAC1E,mCAAmC;QACnC,YAAY,CAAC,eAAe,CAAC;YAC3B,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,cAAc,IAAI,EAAE;SAC3C,CAAC,CAAC;QAEH,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IAC3B,CAAC;CACF"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { SimSnsSubscriptionStore } from "../../subscription/sim-sns-subscription-store.js";
|
|
2
|
+
import type { SimSnsRequestOptions } from "../sim-sns-request-options.js";
|
|
3
|
+
import type { SimSnsTopicAccess } from "../topic/sim-sns-topic-access.js";
|
|
4
|
+
import type { SimSnsSubscriptionAccess } from "./sim-sns-subscription-access.js";
|
|
5
|
+
import type { SimSubscribeCommand, SimSubscribeCommandOutput, SimUnsubscribeCommand, SimUnsubscribeCommandOutput } from "./subscription.command.js";
|
|
6
|
+
interface SimSnsSubscriptionCommandsProperties {
|
|
7
|
+
readonly subscriptions: SimSnsSubscriptionStore;
|
|
8
|
+
readonly topicAccess: SimSnsTopicAccess;
|
|
9
|
+
readonly subscriptionAccess: SimSnsSubscriptionAccess;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* The commands that create and remove subscriptions.
|
|
13
|
+
*/
|
|
14
|
+
export declare class SimSnsSubscriptionCommands {
|
|
15
|
+
private readonly subscriptions;
|
|
16
|
+
private readonly topicAccess;
|
|
17
|
+
private readonly subscriptionAccess;
|
|
18
|
+
constructor(properties: SimSnsSubscriptionCommandsProperties);
|
|
19
|
+
/**
|
|
20
|
+
* Subscribe an endpoint to a topic.
|
|
21
|
+
*
|
|
22
|
+
* The subscription comes back confirmed, with an ARN rather than the `pending
|
|
23
|
+
* confirmation` a protocol needing a confirmation token answers with. Real
|
|
24
|
+
* SNS confirms an `sqs` and a `lambda` subscription itself, and those are the
|
|
25
|
+
* protocols simulated.
|
|
26
|
+
*/
|
|
27
|
+
subscribe(command: SimSubscribeCommand, options?: SimSnsRequestOptions): SimSubscribeCommandOutput;
|
|
28
|
+
/**
|
|
29
|
+
* Remove a subscription, so nothing more is delivered to its endpoint.
|
|
30
|
+
*
|
|
31
|
+
* An ARN naming no subscription is refused rather than quietly succeeding.
|
|
32
|
+
* Real SNS documents `NotFoundException` for this command, and a silent
|
|
33
|
+
* success would let a test unsubscribe the wrong ARN and believe it had
|
|
34
|
+
* stopped a delivery.
|
|
35
|
+
*/
|
|
36
|
+
unsubscribe(command: SimUnsubscribeCommand, options?: SimSnsRequestOptions): SimUnsubscribeCommandOutput;
|
|
37
|
+
/**
|
|
38
|
+
* The subscription this request would duplicate, if there is one.
|
|
39
|
+
*
|
|
40
|
+
* Real SNS answers a repeated Subscribe for the same topic, protocol and
|
|
41
|
+
* endpoint with the subscription that is already there rather than making a
|
|
42
|
+
* second one, so the same endpoint receives one copy of a published message
|
|
43
|
+
* however many times it subscribed. The attributes the repeated request
|
|
44
|
+
* carries are not applied, which is how a repeated `CreateTopic` treats its
|
|
45
|
+
* attributes too.
|
|
46
|
+
*/
|
|
47
|
+
private existingLike;
|
|
48
|
+
}
|
|
49
|
+
export {};
|
|
50
|
+
//# sourceMappingURL=sim-sns-subscription-commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sns-subscription-commands.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/sim-sns-subscription-commands.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAEhG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AACjF,OAAO,KAAK,EACV,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,2BAA2B,EAC5B,MAAM,2BAA2B,CAAC;AAEnC,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,aAAa,EAAE,uBAAuB,CAAC;IAChD,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;IACxC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;CACvD;AAED;;GAEG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0B;IACxD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAE9D,YAAY,UAAU,EAAE,oCAAoC,EAI3D;IAED;;;;;;;OAOG;IACH,SAAS,CACP,OAAO,EAAE,mBAAmB,EAC5B,OAAO,CAAC,EAAE,oBAAoB,GAC7B,yBAAyB,CA8B3B;IAED;;;;;;;OAOG;IACH,WAAW,CACT,OAAO,EAAE,qBAAqB,EAC9B,OAAO,CAAC,EAAE,oBAAoB,GAC7B,2BAA2B,CAU7B;IAED;;;;;;;;;OASG;IACH,OAAO,CAAC,YAAY;CAQrB"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { SimSnsSubscription } from "../../subscription/sim-sns-subscription.js";
|
|
2
|
+
import { SimSnsSubscriptionAttributes } from "../../subscription/sim-sns-subscription-attributes.js";
|
|
3
|
+
import { requireSimSnsProtocol } from "../../subscription/sim-sns-subscription-protocol.js";
|
|
4
|
+
/**
|
|
5
|
+
* The commands that create and remove subscriptions.
|
|
6
|
+
*/
|
|
7
|
+
export class SimSnsSubscriptionCommands {
|
|
8
|
+
subscriptions;
|
|
9
|
+
topicAccess;
|
|
10
|
+
subscriptionAccess;
|
|
11
|
+
constructor(properties) {
|
|
12
|
+
this.subscriptions = properties.subscriptions;
|
|
13
|
+
this.topicAccess = properties.topicAccess;
|
|
14
|
+
this.subscriptionAccess = properties.subscriptionAccess;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Subscribe an endpoint to a topic.
|
|
18
|
+
*
|
|
19
|
+
* The subscription comes back confirmed, with an ARN rather than the `pending
|
|
20
|
+
* confirmation` a protocol needing a confirmation token answers with. Real
|
|
21
|
+
* SNS confirms an `sqs` and a `lambda` subscription itself, and those are the
|
|
22
|
+
* protocols simulated.
|
|
23
|
+
*/
|
|
24
|
+
subscribe(command, options) {
|
|
25
|
+
const { topic, caller } = this.topicAccess.requireByArnForCaller("sns:Subscribe", command.input.TopicArn, options);
|
|
26
|
+
// The attributes are read whether or not they end up applied, so a
|
|
27
|
+
// repeated Subscribe carrying one this simulation will not take is still
|
|
28
|
+
// refused for it.
|
|
29
|
+
const attributes = SimSnsSubscriptionAttributes.defaults().with(command.input.Attributes ?? {});
|
|
30
|
+
const subscription = SimSnsSubscription.of({
|
|
31
|
+
topicArn: topic.arn.value,
|
|
32
|
+
topicName: topic.name.value,
|
|
33
|
+
protocol: requireSimSnsProtocol(command.input.Protocol),
|
|
34
|
+
endpoint: command.input.Endpoint,
|
|
35
|
+
owner: caller.accountId ?? topic.owner,
|
|
36
|
+
attributes,
|
|
37
|
+
});
|
|
38
|
+
const existing = this.existingLike(topic, subscription);
|
|
39
|
+
if (existing !== undefined) {
|
|
40
|
+
return { $metadata: {}, SubscriptionArn: existing.arn.value };
|
|
41
|
+
}
|
|
42
|
+
this.subscriptions.add(subscription);
|
|
43
|
+
return { $metadata: {}, SubscriptionArn: subscription.arn.value };
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Remove a subscription, so nothing more is delivered to its endpoint.
|
|
47
|
+
*
|
|
48
|
+
* An ARN naming no subscription is refused rather than quietly succeeding.
|
|
49
|
+
* Real SNS documents `NotFoundException` for this command, and a silent
|
|
50
|
+
* success would let a test unsubscribe the wrong ARN and believe it had
|
|
51
|
+
* stopped a delivery.
|
|
52
|
+
*/
|
|
53
|
+
unsubscribe(command, options) {
|
|
54
|
+
this.subscriptions.remove(this.subscriptionAccess.requireByArn("sns:Unsubscribe", command.input.SubscriptionArn, options));
|
|
55
|
+
return { $metadata: {} };
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* The subscription this request would duplicate, if there is one.
|
|
59
|
+
*
|
|
60
|
+
* Real SNS answers a repeated Subscribe for the same topic, protocol and
|
|
61
|
+
* endpoint with the subscription that is already there rather than making a
|
|
62
|
+
* second one, so the same endpoint receives one copy of a published message
|
|
63
|
+
* however many times it subscribed. The attributes the repeated request
|
|
64
|
+
* carries are not applied, which is how a repeated `CreateTopic` treats its
|
|
65
|
+
* attributes too.
|
|
66
|
+
*/
|
|
67
|
+
existingLike(topic, subscription) {
|
|
68
|
+
return this.subscriptions
|
|
69
|
+
.forTopic(topic.name.value)
|
|
70
|
+
.find((held) => held.repeats(subscription));
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=sim-sns-subscription-commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sns-subscription-commands.js","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/sim-sns-subscription-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,MAAM,uDAAuD,CAAC;AACrG,OAAO,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAC;AAmB5F;;GAEG;AACH,MAAM,OAAO,0BAA0B;IACpB,aAAa,CAA0B;IACvC,WAAW,CAAoB;IAC/B,kBAAkB,CAA2B;IAE9D,YAAY,UAAgD;QAC1D,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;QAC1C,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAC1D,CAAC;IAED;;;;;;;OAOG;IACH,SAAS,CACP,OAA4B,EAC5B,OAA8B;QAE9B,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAC9D,eAAe,EACf,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,CACR,CAAC;QAEF,mEAAmE;QACnE,yEAAyE;QACzE,kBAAkB;QAClB,MAAM,UAAU,GAAG,4BAA4B,CAAC,QAAQ,EAAE,CAAC,IAAI,CAC7D,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAC/B,CAAC;QACF,MAAM,YAAY,GAAG,kBAAkB,CAAC,EAAE,CAAC;YACzC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK;YACzB,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;YAC3B,QAAQ,EAAE,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;YACvD,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ;YAChC,KAAK,EAAE,MAAM,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK;YACtC,UAAU;SACX,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAExD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,eAAe,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QAChE,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAErC,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,eAAe,EAAE,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;IACpE,CAAC;IAED;;;;;;;OAOG;IACH,WAAW,CACT,OAA8B,EAC9B,OAA8B;QAE9B,IAAI,CAAC,aAAa,CAAC,MAAM,CACvB,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAClC,iBAAiB,EACjB,OAAO,CAAC,KAAK,CAAC,eAAe,EAC7B,OAAO,CACR,CACF,CAAC;QAEF,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IAC3B,CAAC;IAED;;;;;;;;;OASG;IACK,YAAY,CAClB,KAAkB,EAClB,YAAgC;QAEhC,OAAO,IAAI,CAAC,aAAa;aACtB,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;aAC1B,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;IAChD,CAAC;CACF"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { SimSnsSubscriptionStore } from "../../subscription/sim-sns-subscription-store.js";
|
|
2
|
+
import type { SimSnsRequestOptions } from "../sim-sns-request-options.js";
|
|
3
|
+
import type { SimSnsTopicAccess } from "../topic/sim-sns-topic-access.js";
|
|
4
|
+
import type { SimListSubscriptionsByTopicCommand, SimListSubscriptionsByTopicCommandOutput, SimListSubscriptionsCommand, SimListSubscriptionsCommandOutput } from "./subscription.command.js";
|
|
5
|
+
interface SimSnsSubscriptionListingsProperties {
|
|
6
|
+
readonly subscriptions: SimSnsSubscriptionStore;
|
|
7
|
+
readonly topicAccess: SimSnsTopicAccess;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* The commands that list subscriptions.
|
|
11
|
+
*/
|
|
12
|
+
export declare class SimSnsSubscriptionListings {
|
|
13
|
+
private readonly subscriptions;
|
|
14
|
+
private readonly topicAccess;
|
|
15
|
+
constructor(properties: SimSnsSubscriptionListingsProperties);
|
|
16
|
+
/**
|
|
17
|
+
* List every subscription in this scope, oldest first.
|
|
18
|
+
*
|
|
19
|
+
* Real SNS gives this action no resource type, so it authorizes against `*`
|
|
20
|
+
* the way `ListTopics` does: a policy naming a topic ARN allows no listing,
|
|
21
|
+
* and the list is not filtered by what the caller can reach.
|
|
22
|
+
*/
|
|
23
|
+
listSubscriptions(command: SimListSubscriptionsCommand, options?: SimSnsRequestOptions): SimListSubscriptionsCommandOutput;
|
|
24
|
+
/**
|
|
25
|
+
* List the subscriptions of one topic, oldest first.
|
|
26
|
+
*
|
|
27
|
+
* This one does name a topic, so it authorizes against the topic's ARN and
|
|
28
|
+
* the topic's own policy takes part in the decision.
|
|
29
|
+
*/
|
|
30
|
+
listSubscriptionsByTopic(command: SimListSubscriptionsByTopicCommand, options?: SimSnsRequestOptions): SimListSubscriptionsByTopicCommandOutput;
|
|
31
|
+
private page;
|
|
32
|
+
}
|
|
33
|
+
export {};
|
|
34
|
+
//# sourceMappingURL=sim-sns-subscription-listings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sns-subscription-listings.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/sim-sns-subscription-listings.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kDAAkD,CAAC;AAEhG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,KAAK,EACV,kCAAkC,EAClC,wCAAwC,EACxC,2BAA2B,EAC3B,iCAAiC,EAElC,MAAM,2BAA2B,CAAC;AAkBnC,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,aAAa,EAAE,uBAAuB,CAAC;IAChD,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;CACzC;AAED;;GAEG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0B;IACxD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAEhD,YAAY,UAAU,EAAE,oCAAoC,EAG3D;IAED;;;;;;OAMG;IACH,iBAAiB,CACf,OAAO,EAAE,2BAA2B,EACpC,OAAO,CAAC,EAAE,oBAAoB,GAC7B,iCAAiC,CAInC;IAED;;;;;OAKG;IACH,wBAAwB,CACtB,OAAO,EAAE,kCAAkC,EAC3C,OAAO,CAAC,EAAE,oBAAoB,GAC7B,wCAAwC,CAW1C;IAED,OAAO,CAAC,IAAI;CAYb"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { SimSnsPage } from "../sim-sns-page.js";
|
|
2
|
+
/**
|
|
3
|
+
* One subscription as a listing reports it.
|
|
4
|
+
*
|
|
5
|
+
* A listing carries everything about a subscription but its attributes, which
|
|
6
|
+
* is why `GetSubscriptionAttributes` exists at all.
|
|
7
|
+
*/
|
|
8
|
+
function listed(subscription) {
|
|
9
|
+
return {
|
|
10
|
+
SubscriptionArn: subscription.arn.value,
|
|
11
|
+
Owner: subscription.owner,
|
|
12
|
+
Protocol: subscription.protocol,
|
|
13
|
+
Endpoint: subscription.endpoint.value,
|
|
14
|
+
TopicArn: subscription.topicArn,
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* The commands that list subscriptions.
|
|
19
|
+
*/
|
|
20
|
+
export class SimSnsSubscriptionListings {
|
|
21
|
+
subscriptions;
|
|
22
|
+
topicAccess;
|
|
23
|
+
constructor(properties) {
|
|
24
|
+
this.subscriptions = properties.subscriptions;
|
|
25
|
+
this.topicAccess = properties.topicAccess;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* List every subscription in this scope, oldest first.
|
|
29
|
+
*
|
|
30
|
+
* Real SNS gives this action no resource type, so it authorizes against `*`
|
|
31
|
+
* the way `ListTopics` does: a policy naming a topic ARN allows no listing,
|
|
32
|
+
* and the list is not filtered by what the caller can reach.
|
|
33
|
+
*/
|
|
34
|
+
listSubscriptions(command, options) {
|
|
35
|
+
this.topicAccess.authorizeAnyTopic("sns:ListSubscriptions", options);
|
|
36
|
+
return this.page(this.subscriptions.all, command.input.NextToken);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* List the subscriptions of one topic, oldest first.
|
|
40
|
+
*
|
|
41
|
+
* This one does name a topic, so it authorizes against the topic's ARN and
|
|
42
|
+
* the topic's own policy takes part in the decision.
|
|
43
|
+
*/
|
|
44
|
+
listSubscriptionsByTopic(command, options) {
|
|
45
|
+
const topic = this.topicAccess.requireByArn("sns:ListSubscriptionsByTopic", command.input.TopicArn, options);
|
|
46
|
+
return this.page(this.subscriptions.forTopic(topic.name.value), command.input.NextToken);
|
|
47
|
+
}
|
|
48
|
+
page(listing, nextToken) {
|
|
49
|
+
const page = new SimSnsPage(listing, nextToken);
|
|
50
|
+
return {
|
|
51
|
+
$metadata: {},
|
|
52
|
+
Subscriptions: page.items.map((subscription) => listed(subscription)),
|
|
53
|
+
NextToken: page.nextToken,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=sim-sns-subscription-listings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sns-subscription-listings.js","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/sim-sns-subscription-listings.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAWhD;;;;;GAKG;AACH,SAAS,MAAM,CAAC,YAAgC;IAC9C,OAAO;QACL,eAAe,EAAE,YAAY,CAAC,GAAG,CAAC,KAAK;QACvC,KAAK,EAAE,YAAY,CAAC,KAAK;QACzB,QAAQ,EAAE,YAAY,CAAC,QAAQ;QAC/B,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,KAAK;QACrC,QAAQ,EAAE,YAAY,CAAC,QAAQ;KAChC,CAAC;AACJ,CAAC;AAOD;;GAEG;AACH,MAAM,OAAO,0BAA0B;IACpB,aAAa,CAA0B;IACvC,WAAW,CAAoB;IAEhD,YAAY,UAAgD;QAC1D,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;IAC5C,CAAC;IAED;;;;;;OAMG;IACH,iBAAiB,CACf,OAAoC,EACpC,OAA8B;QAE9B,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;QAErE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACpE,CAAC;IAED;;;;;OAKG;IACH,wBAAwB,CACtB,OAA2C,EAC3C,OAA8B;QAE9B,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CACzC,8BAA8B,EAC9B,OAAO,CAAC,KAAK,CAAC,QAAQ,EACtB,OAAO,CACR,CAAC;QAEF,OAAO,IAAI,CAAC,IAAI,CACd,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAC7C,OAAO,CAAC,KAAK,CAAC,SAAS,CACxB,CAAC;IACJ,CAAC;IAEO,IAAI,CACV,OAAsC,EACtC,SAA6B;QAE7B,MAAM,IAAI,GAAG,IAAI,UAAU,CAAqB,OAAO,EAAE,SAAS,CAAC,CAAC;QAEpE,OAAO;YACL,SAAS,EAAE,EAAE;YACb,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACrE,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import type { SimResponseMetadata } from "../../../aws/metadata/response-metadata.type.js";
|
|
2
|
+
import type { SimSnsSubscriptionAttributeInput } from "../../subscription/sim-sns-subscription-attributes.js";
|
|
3
|
+
/**
|
|
4
|
+
* One subscription in a listing response.
|
|
5
|
+
*/
|
|
6
|
+
export interface SimSnsListedSubscription {
|
|
7
|
+
readonly SubscriptionArn: string;
|
|
8
|
+
readonly Owner: string;
|
|
9
|
+
readonly Protocol: string;
|
|
10
|
+
readonly Endpoint: string;
|
|
11
|
+
readonly TopicArn: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Minimal structural sim SNS Subscribe command.
|
|
15
|
+
*
|
|
16
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/sns/command/SubscribeCommand/
|
|
17
|
+
*/
|
|
18
|
+
export interface SimSubscribeCommand {
|
|
19
|
+
readonly input: SimSubscribeCommandInput;
|
|
20
|
+
}
|
|
21
|
+
export interface SimSubscribeCommandInput {
|
|
22
|
+
readonly TopicArn?: string | undefined;
|
|
23
|
+
readonly Protocol?: string | undefined;
|
|
24
|
+
readonly Endpoint?: string | undefined;
|
|
25
|
+
readonly Attributes?: SimSnsSubscriptionAttributeInput | undefined;
|
|
26
|
+
/**
|
|
27
|
+
* Whether the response carries the subscription ARN before the subscription
|
|
28
|
+
* is confirmed.
|
|
29
|
+
*
|
|
30
|
+
* It changes nothing here. The only protocol simulated is the one real SNS
|
|
31
|
+
* confirms itself, so a subscription is confirmed as soon as it exists and
|
|
32
|
+
* its ARN comes back either way.
|
|
33
|
+
*/
|
|
34
|
+
readonly ReturnSubscriptionArn?: boolean | undefined;
|
|
35
|
+
}
|
|
36
|
+
export interface SimSubscribeCommandOutput {
|
|
37
|
+
readonly SubscriptionArn?: string | undefined;
|
|
38
|
+
readonly $metadata: SimResponseMetadata;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Minimal structural sim SNS Unsubscribe command.
|
|
42
|
+
*
|
|
43
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/sns/command/UnsubscribeCommand/
|
|
44
|
+
*/
|
|
45
|
+
export interface SimUnsubscribeCommand {
|
|
46
|
+
readonly input: SimUnsubscribeCommandInput;
|
|
47
|
+
}
|
|
48
|
+
export interface SimUnsubscribeCommandInput {
|
|
49
|
+
readonly SubscriptionArn?: string | undefined;
|
|
50
|
+
}
|
|
51
|
+
export interface SimUnsubscribeCommandOutput {
|
|
52
|
+
readonly $metadata: SimResponseMetadata;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Minimal structural sim SNS ListSubscriptions command.
|
|
56
|
+
*
|
|
57
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/sns/command/ListSubscriptionsCommand/
|
|
58
|
+
*/
|
|
59
|
+
export interface SimListSubscriptionsCommand {
|
|
60
|
+
readonly input: SimListSubscriptionsCommandInput;
|
|
61
|
+
}
|
|
62
|
+
export interface SimListSubscriptionsCommandInput {
|
|
63
|
+
readonly NextToken?: string | undefined;
|
|
64
|
+
}
|
|
65
|
+
export interface SimListSubscriptionsCommandOutput {
|
|
66
|
+
readonly Subscriptions?: readonly SimSnsListedSubscription[] | undefined;
|
|
67
|
+
readonly NextToken?: string | undefined;
|
|
68
|
+
readonly $metadata: SimResponseMetadata;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Minimal structural sim SNS ListSubscriptionsByTopic command.
|
|
72
|
+
*
|
|
73
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/sns/command/ListSubscriptionsByTopicCommand/
|
|
74
|
+
*/
|
|
75
|
+
export interface SimListSubscriptionsByTopicCommand {
|
|
76
|
+
readonly input: SimListSubscriptionsByTopicCommandInput;
|
|
77
|
+
}
|
|
78
|
+
export interface SimListSubscriptionsByTopicCommandInput {
|
|
79
|
+
readonly TopicArn?: string | undefined;
|
|
80
|
+
readonly NextToken?: string | undefined;
|
|
81
|
+
}
|
|
82
|
+
export interface SimListSubscriptionsByTopicCommandOutput {
|
|
83
|
+
readonly Subscriptions?: readonly SimSnsListedSubscription[] | undefined;
|
|
84
|
+
readonly NextToken?: string | undefined;
|
|
85
|
+
readonly $metadata: SimResponseMetadata;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Minimal structural sim SNS GetSubscriptionAttributes command.
|
|
89
|
+
*
|
|
90
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/sns/command/GetSubscriptionAttributesCommand/
|
|
91
|
+
*/
|
|
92
|
+
export interface SimGetSubscriptionAttributesCommand {
|
|
93
|
+
readonly input: SimGetSubscriptionAttributesCommandInput;
|
|
94
|
+
}
|
|
95
|
+
export interface SimGetSubscriptionAttributesCommandInput {
|
|
96
|
+
readonly SubscriptionArn?: string | undefined;
|
|
97
|
+
}
|
|
98
|
+
export interface SimGetSubscriptionAttributesCommandOutput {
|
|
99
|
+
readonly Attributes?: Record<string, string> | undefined;
|
|
100
|
+
readonly $metadata: SimResponseMetadata;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Minimal structural sim SNS SetSubscriptionAttributes command.
|
|
104
|
+
*
|
|
105
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/sns/command/SetSubscriptionAttributesCommand/
|
|
106
|
+
*/
|
|
107
|
+
export interface SimSetSubscriptionAttributesCommand {
|
|
108
|
+
readonly input: SimSetSubscriptionAttributesCommandInput;
|
|
109
|
+
}
|
|
110
|
+
export interface SimSetSubscriptionAttributesCommandInput {
|
|
111
|
+
readonly SubscriptionArn?: string | undefined;
|
|
112
|
+
readonly AttributeName?: string | undefined;
|
|
113
|
+
readonly AttributeValue?: string | undefined;
|
|
114
|
+
}
|
|
115
|
+
export interface SimSetSubscriptionAttributesCommandOutput {
|
|
116
|
+
readonly $metadata: SimResponseMetadata;
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=subscription.command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subscription.command.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/subscription.command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAC3F,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,uDAAuD,CAAC;AAE9G;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,wBAAwB,CAAC;CAC1C;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,gCAAgC,GAAG,SAAS,CAAC;IAEnE;;;;;;;OAOG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACtD;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;CACzC;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,KAAK,EAAE,0BAA0B,CAAC;CAC5C;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/C;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;CACzC;AAED;;;;GAIG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,EAAE,gCAAgC,CAAC;CAClD;AAED,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AAED,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,wBAAwB,EAAE,GAAG,SAAS,CAAC;IACzE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;CACzC;AAED;;;;GAIG;AACH,MAAM,WAAW,kCAAkC;IACjD,QAAQ,CAAC,KAAK,EAAE,uCAAuC,CAAC;CACzD;AAED,MAAM,WAAW,uCAAuC;IACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AAED,MAAM,WAAW,wCAAwC;IACvD,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,wBAAwB,EAAE,GAAG,SAAS,CAAC;IACzE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;CACzC;AAED;;;;GAIG;AACH,MAAM,WAAW,mCAAmC;IAClD,QAAQ,CAAC,KAAK,EAAE,wCAAwC,CAAC;CAC1D;AAED,MAAM,WAAW,wCAAwC;IACvD,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/C;AAED,MAAM,WAAW,yCAAyC;IACxD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IACzD,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;CACzC;AAED;;;;GAIG;AACH,MAAM,WAAW,mCAAmC;IAClD,QAAQ,CAAC,KAAK,EAAE,wCAAwC,CAAC;CAC1D;AAED,MAAM,WAAW,wCAAwC;IACvD,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9C;AAED,MAAM,WAAW,yCAAyC;IACxD,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;CACzC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subscription.command.js","sourceRoot":"","sources":["../../../../../src/service/sns/command/subscription/subscription.command.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { SimAwsAccountRegionScope } from "../../../aws/sim-aws-account-region-scope.js";
|
|
2
|
+
import type { SimSnsTopicStore } from "../../topic/sim-sns-topic-store.js";
|
|
3
|
+
import type { SimSnsRequestOptions } from "../sim-sns-request-options.js";
|
|
4
|
+
import type { SimSnsTopicAccess } from "./sim-sns-topic-access.js";
|
|
5
|
+
import type { SimCreateTopicCommand, SimCreateTopicCommandOutput } from "./topic.command.js";
|
|
6
|
+
interface SimSnsCreateTopicProperties {
|
|
7
|
+
readonly topics: SimSnsTopicStore;
|
|
8
|
+
readonly access: SimSnsTopicAccess;
|
|
9
|
+
readonly accountRegionScope: SimAwsAccountRegionScope;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* The CreateTopic command.
|
|
13
|
+
*
|
|
14
|
+
* Real SNS treats it as idempotent and leaves the existing topic alone: a
|
|
15
|
+
* request for a name already taken answers with that topic's ARN without
|
|
16
|
+
* applying the attributes it carries. That differs from SQS, which compares the
|
|
17
|
+
* attributes and fails when they differ, and it is what makes a deployment
|
|
18
|
+
* which creates its own topic safe to run twice.
|
|
19
|
+
*/
|
|
20
|
+
export declare class SimSnsCreateTopic {
|
|
21
|
+
private readonly topics;
|
|
22
|
+
private readonly access;
|
|
23
|
+
private readonly accountRegionScope;
|
|
24
|
+
constructor(properties: SimSnsCreateTopicProperties);
|
|
25
|
+
/**
|
|
26
|
+
* Create a topic, or answer with the existing one of that name.
|
|
27
|
+
*
|
|
28
|
+
* The attributes are read before the existing topic is looked for, so a
|
|
29
|
+
* request naming one this simulation will not take is refused whether or not
|
|
30
|
+
* the topic is already there. Reading them and then dropping them would leave
|
|
31
|
+
* a repeated create quietly accepting an attribute the first one was refused
|
|
32
|
+
* for.
|
|
33
|
+
*/
|
|
34
|
+
handle(command: SimCreateTopicCommand, options?: SimSnsRequestOptions): SimCreateTopicCommandOutput;
|
|
35
|
+
/**
|
|
36
|
+
* Create the topic itself, once the name is known to be free.
|
|
37
|
+
*/
|
|
38
|
+
private created;
|
|
39
|
+
}
|
|
40
|
+
export {};
|
|
41
|
+
//# sourceMappingURL=sim-sns-create-topic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sns-create-topic.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/command/topic/sim-sns-create-topic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAI7F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,OAAO,KAAK,EACV,qBAAqB,EACrB,2BAA2B,EAC5B,MAAM,oBAAoB,CAAC;AAE5B,UAAU,2BAA2B;IACnC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;CACvD;AAED;;;;;;;;GAQG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmB;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;IAC3C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAE9D,YAAY,UAAU,EAAE,2BAA2B,EAIlD;IAED;;;;;;;;OAQG;IACH,MAAM,CACJ,OAAO,EAAE,qBAAqB,EAC9B,OAAO,CAAC,EAAE,oBAAoB,GAC7B,2BAA2B,CAgB7B;IAED;;OAEG;IACH,OAAO,CAAC,OAAO;CAchB"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { SimSnsTopic } from "../../topic/sim-sns-topic.js";
|
|
2
|
+
import { SimSnsTopicAttributes } from "../../topic/sim-sns-topic-attributes.js";
|
|
3
|
+
import { SimSnsTopicName } from "../../topic/sim-sns-topic-name.js";
|
|
4
|
+
import { refuseUnsimulatedTopicInput } from "./sim-sns-unsimulated-topic-input.js";
|
|
5
|
+
/**
|
|
6
|
+
* The CreateTopic command.
|
|
7
|
+
*
|
|
8
|
+
* Real SNS treats it as idempotent and leaves the existing topic alone: a
|
|
9
|
+
* request for a name already taken answers with that topic's ARN without
|
|
10
|
+
* applying the attributes it carries. That differs from SQS, which compares the
|
|
11
|
+
* attributes and fails when they differ, and it is what makes a deployment
|
|
12
|
+
* which creates its own topic safe to run twice.
|
|
13
|
+
*/
|
|
14
|
+
export class SimSnsCreateTopic {
|
|
15
|
+
topics;
|
|
16
|
+
access;
|
|
17
|
+
accountRegionScope;
|
|
18
|
+
constructor(properties) {
|
|
19
|
+
this.topics = properties.topics;
|
|
20
|
+
this.access = properties.access;
|
|
21
|
+
this.accountRegionScope = properties.accountRegionScope;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Create a topic, or answer with the existing one of that name.
|
|
25
|
+
*
|
|
26
|
+
* The attributes are read before the existing topic is looked for, so a
|
|
27
|
+
* request naming one this simulation will not take is refused whether or not
|
|
28
|
+
* the topic is already there. Reading them and then dropping them would leave
|
|
29
|
+
* a repeated create quietly accepting an attribute the first one was refused
|
|
30
|
+
* for.
|
|
31
|
+
*/
|
|
32
|
+
handle(command, options) {
|
|
33
|
+
const input = command.input;
|
|
34
|
+
refuseUnsimulatedTopicInput(input);
|
|
35
|
+
const name = SimSnsTopicName.required(input.Name);
|
|
36
|
+
const attributes = SimSnsTopicAttributes.defaults().with(input.Attributes ?? {});
|
|
37
|
+
this.access.authorizeName("sns:CreateTopic", name.value, options);
|
|
38
|
+
const topic = this.topics.find(name.value) ?? this.created(name, attributes);
|
|
39
|
+
return { $metadata: {}, TopicArn: topic.arn.value };
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Create the topic itself, once the name is known to be free.
|
|
43
|
+
*/
|
|
44
|
+
created(name, attributes) {
|
|
45
|
+
const topic = new SimSnsTopic({
|
|
46
|
+
name,
|
|
47
|
+
accountRegionScope: this.accountRegionScope,
|
|
48
|
+
attributes,
|
|
49
|
+
});
|
|
50
|
+
this.topics.add(topic);
|
|
51
|
+
return topic;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=sim-sns-create-topic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sns-create-topic.js","sourceRoot":"","sources":["../../../../../src/service/sns/command/topic/sim-sns-create-topic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAIpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AAYnF;;;;;;;;GAQG;AACH,MAAM,OAAO,iBAAiB;IACX,MAAM,CAAmB;IACzB,MAAM,CAAoB;IAC1B,kBAAkB,CAA2B;IAE9D,YAAY,UAAuC;QACjD,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,kBAAkB,CAAC;IAC1D,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CACJ,OAA8B,EAC9B,OAA8B;QAE9B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAE5B,2BAA2B,CAAC,KAAK,CAAC,CAAC;QAEnC,MAAM,IAAI,GAAG,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,qBAAqB,CAAC,QAAQ,EAAE,CAAC,IAAI,CACtD,KAAK,CAAC,UAAU,IAAI,EAAE,CACvB,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,iBAAiB,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAElE,MAAM,KAAK,GACT,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAEjE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;IACtD,CAAC;IAED;;OAEG;IACK,OAAO,CACb,IAAqB,EACrB,UAAiC;QAEjC,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC;YAC5B,IAAI;YACJ,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,UAAU;SACX,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAEvB,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { SimAwsAccountRegionScope } from "../../../aws/sim-aws-account-region-scope.js";
|
|
2
|
+
/**
|
|
3
|
+
* Read the topic name out of the ARN a request carries.
|
|
4
|
+
*
|
|
5
|
+
* An ARN naming another Account or Region reaches nothing, rather than having
|
|
6
|
+
* its name read out and looked up locally. A topic ARN is scoped, and treating
|
|
7
|
+
* a foreign one as local would let a test pass while the real call crossed an
|
|
8
|
+
* Account boundary it has no permission for.
|
|
9
|
+
*/
|
|
10
|
+
export declare function simSnsRequestTopicName(topicArn: string | undefined, scope: SimAwsAccountRegionScope): string;
|
|
11
|
+
//# sourceMappingURL=sim-sns-request-topic-name.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-sns-request-topic-name.d.ts","sourceRoot":"","sources":["../../../../../src/service/sns/command/topic/sim-sns-request-topic-name.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAO7F;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,KAAK,EAAE,wBAAwB,GAC9B,MAAM,CA4BR"}
|