@kensio/yulin 1.19.2 → 1.19.3
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 +12 -0
- package/dist/serve/http/local-server/sim-aws-local-server.d.ts +31 -0
- package/dist/serve/http/local-server/sim-aws-local-server.d.ts.map +1 -1
- package/dist/serve/http/local-server/sim-aws-local-server.js +15 -1
- package/dist/serve/http/local-server/sim-aws-local-server.js.map +1 -1
- package/dist/serve/index.d.ts +1 -0
- package/dist/serve/index.d.ts.map +1 -1
- package/dist/serve/index.js.map +1 -1
- package/dist/serve/message/sim-local-message-logging.d.ts +39 -0
- package/dist/serve/message/sim-local-message-logging.d.ts.map +1 -0
- package/dist/serve/message/sim-local-message-logging.js +45 -0
- package/dist/serve/message/sim-local-message-logging.js.map +1 -0
- package/dist/serve/message/sim-message-log-console.d.ts +43 -0
- package/dist/serve/message/sim-message-log-console.d.ts.map +1 -0
- package/dist/serve/message/sim-message-log-console.js +71 -0
- package/dist/serve/message/sim-message-log-console.js.map +1 -0
- package/dist/serve/message/sim-message-logging.d.ts +42 -0
- package/dist/serve/message/sim-message-logging.d.ts.map +1 -0
- package/dist/serve/message/sim-message-logging.js +31 -0
- package/dist/serve/message/sim-message-logging.js.map +1 -0
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.d.ts +3 -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 +12 -1
- package/dist/service/aws/factory/sim-aws-account-region-service-builder.js.map +1 -1
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts +9 -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 +10 -0
- package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
- package/dist/service/aws/message/sim-aws-logged-message.d.ts +46 -0
- package/dist/service/aws/message/sim-aws-logged-message.d.ts.map +1 -0
- package/dist/service/aws/message/sim-aws-logged-message.js +2 -0
- package/dist/service/aws/message/sim-aws-logged-message.js.map +1 -0
- package/dist/service/aws/message/sim-aws-message-log.d.ts +40 -0
- package/dist/service/aws/message/sim-aws-message-log.d.ts.map +1 -0
- package/dist/service/aws/message/sim-aws-message-log.js +40 -0
- package/dist/service/aws/message/sim-aws-message-log.js.map +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-notifications/property/sim-cdk-bucket-notification-properties.d.ts +4 -3
- package/dist/service/cloudformation/cdk/s3/bucket-notifications/property/sim-cdk-bucket-notification-properties.d.ts.map +1 -1
- package/dist/service/cloudformation/cdk/s3/bucket-notifications/property/sim-cdk-bucket-notification-properties.js +4 -3
- package/dist/service/cloudformation/cdk/s3/bucket-notifications/property/sim-cdk-bucket-notification-properties.js.map +1 -1
- package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.d.ts +5 -0
- package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.d.ts.map +1 -1
- package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.js +5 -0
- package/dist/service/cloudformation/cdk/s3/bucket-notifications/sim-cdk-bucket-notifications.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/ses/sim-ses-cfn-value-adapter.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/cfn/ses/sim-ses-cfn-value-adapter.js +8 -0
- package/dist/service/cloudformation/resource/cfn/ses/sim-ses-cfn-value-adapter.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/ses/sim-ses-configuration-set-cfn.d.ts +30 -0
- package/dist/service/cloudformation/resource/cfn/ses/sim-ses-configuration-set-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/ses/sim-ses-configuration-set-cfn.js +29 -0
- package/dist/service/cloudformation/resource/cfn/ses/sim-ses-configuration-set-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/ses/sim-ses-identity-cfn.js +1 -1
- package/dist/service/cloudformation/resource/cfn/ses/sim-ses-identity-cfn.js.map +1 -1
- package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-properties.d.ts.map +1 -1
- package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-properties.js +2 -0
- package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-properties.js.map +1 -1
- package/dist/service/cognito/cfn/sim-cfn-cognito-property-parser.d.ts +7 -0
- package/dist/service/cognito/cfn/sim-cfn-cognito-property-parser.d.ts.map +1 -1
- package/dist/service/cognito/cfn/sim-cfn-cognito-property-parser.js +14 -0
- package/dist/service/cognito/cfn/sim-cfn-cognito-property-parser.js.map +1 -1
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-properties.d.ts.map +1 -1
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-properties.js +10 -0
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-properties.js.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-available-challenges.d.ts.map +1 -1
- package/dist/service/cognito/command/auth/sim-cognito-available-challenges.js +7 -6
- package/dist/service/cognito/command/auth/sim-cognito-available-challenges.js.map +1 -1
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.d.ts +20 -0
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.d.ts.map +1 -1
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.js +24 -4
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.js.map +1 -1
- package/dist/service/cognito/command/sim-cognito-commands.d.ts +4 -0
- package/dist/service/cognito/command/sim-cognito-commands.d.ts.map +1 -1
- package/dist/service/cognito/command/sim-cognito-commands.js +8 -2
- package/dist/service/cognito/command/sim-cognito-commands.js.map +1 -1
- package/dist/service/cognito/command/sim-cognito-unsimulated-input.d.ts +9 -0
- package/dist/service/cognito/command/sim-cognito-unsimulated-input.d.ts.map +1 -1
- package/dist/service/cognito/command/sim-cognito-unsimulated-input.js +13 -3
- package/dist/service/cognito/command/sim-cognito-unsimulated-input.js.map +1 -1
- package/dist/service/cognito/command/user/sim-cognito-user-mfa-commands.d.ts.map +1 -1
- package/dist/service/cognito/command/user/sim-cognito-user-mfa-commands.js +2 -1
- package/dist/service/cognito/command/user/sim-cognito-user-mfa-commands.js.map +1 -1
- package/dist/service/cognito/command/user/user-mfa.command.d.ts +4 -3
- package/dist/service/cognito/command/user/user-mfa.command.d.ts.map +1 -1
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-messaging.d.ts +22 -8
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-messaging.d.ts.map +1 -1
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-messaging.js +24 -11
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-messaging.js.map +1 -1
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-mfa-commands.d.ts +3 -3
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-mfa-commands.d.ts.map +1 -1
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-mfa-commands.js +5 -4
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-mfa-commands.js.map +1 -1
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.d.ts +6 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.d.ts.map +1 -1
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.js +7 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.js.map +1 -1
- package/dist/service/cognito/command/user-pool/user-pool-mfa.command.d.ts +7 -6
- package/dist/service/cognito/command/user-pool/user-pool-mfa.command.d.ts.map +1 -1
- package/dist/service/cognito/command/user-pool/user-pool.command.d.ts +4 -2
- package/dist/service/cognito/command/user-pool/user-pool.command.d.ts.map +1 -1
- package/dist/service/cognito/error/sim-cognito.error.d.ts +23 -0
- package/dist/service/cognito/error/sim-cognito.error.d.ts.map +1 -1
- package/dist/service/cognito/error/sim-cognito.error.js +27 -0
- package/dist/service/cognito/error/sim-cognito.error.js.map +1 -1
- package/dist/service/cognito/index.d.ts +4 -0
- package/dist/service/cognito/index.d.ts.map +1 -1
- package/dist/service/cognito/index.js +4 -0
- package/dist/service/cognito/index.js.map +1 -1
- package/dist/service/cognito/sim-cognito-identity-provider.d.ts +14 -0
- package/dist/service/cognito/sim-cognito-identity-provider.d.ts.map +1 -1
- package/dist/service/cognito/sim-cognito-identity-provider.js +5 -1
- package/dist/service/cognito/sim-cognito-identity-provider.js.map +1 -1
- package/dist/service/cognito/user-pool/message/sim-aws-cognito-email-senders.d.ts +42 -0
- package/dist/service/cognito/user-pool/message/sim-aws-cognito-email-senders.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/message/sim-aws-cognito-email-senders.js +84 -0
- package/dist/service/cognito/user-pool/message/sim-aws-cognito-email-senders.js.map +1 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration-reader.d.ts +31 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration-reader.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration-reader.js +72 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration-reader.js.map +1 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration.d.ts +85 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration.js +117 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-configuration.js.map +1 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-senders.d.ts +73 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-senders.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-senders.js +23 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-senders.js.map +1 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-source-arn.d.ts +39 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-source-arn.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-source-arn.js +33 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-email-source-arn.js.map +1 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-pool-email-delivery.d.ts +41 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-pool-email-delivery.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-pool-email-delivery.js +66 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-pool-email-delivery.js.map +1 -0
- package/dist/service/cognito/user-pool/message/sim-cognito-pool-messenger.d.ts +19 -4
- package/dist/service/cognito/user-pool/message/sim-cognito-pool-messenger.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/message/sim-cognito-pool-messenger.js +30 -8
- package/dist/service/cognito/user-pool/message/sim-cognito-pool-messenger.js.map +1 -1
- package/dist/service/cognito/user-pool/message/sim-cognito-sent-message.d.ts +9 -3
- package/dist/service/cognito/user-pool/message/sim-cognito-sent-message.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/message/sim-cognito-sent-message.js +9 -3
- package/dist/service/cognito/user-pool/message/sim-cognito-sent-message.js.map +1 -1
- package/dist/service/cognito/user-pool/mfa/sim-cognito-user-pool-mfa.d.ts +2 -3
- package/dist/service/cognito/user-pool/mfa/sim-cognito-user-pool-mfa.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/mfa/sim-cognito-user-pool-mfa.js.map +1 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-arn.d.ts +4 -2
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-arn.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-arn.js +2 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-arn.js.map +1 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-settings.d.ts +13 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-settings.d.ts.map +1 -1
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-settings.js +7 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-settings.js.map +1 -1
- package/dist/service/iam/index.d.ts +1 -0
- package/dist/service/iam/index.d.ts.map +1 -1
- package/dist/service/iam/index.js.map +1 -1
- package/dist/service/ses/account/sim-ses-account.d.ts +22 -0
- package/dist/service/ses/account/sim-ses-account.d.ts.map +1 -1
- package/dist/service/ses/account/sim-ses-account.js +31 -0
- package/dist/service/ses/account/sim-ses-account.js.map +1 -1
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-creator.d.ts +30 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-creator.d.ts.map +1 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-creator.js +47 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-creator.js.map +1 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-option-groups.d.ts +23 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-option-groups.d.ts.map +1 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-option-groups.js +52 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-option-groups.js.map +1 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-properties.d.ts +39 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-properties.d.ts.map +1 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-properties.js +71 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-properties.js.map +1 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-unsimulated-properties.d.ts +17 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-unsimulated-properties.d.ts.map +1 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-unsimulated-properties.js +34 -0
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-unsimulated-properties.js.map +1 -0
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-creator.d.ts +5 -0
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-creator.d.ts.map +1 -1
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-creator.js +7 -0
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-creator.js.map +1 -1
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-properties.d.ts +13 -8
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-properties.d.ts.map +1 -1
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-properties.js +29 -14
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-properties.js.map +1 -1
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-settings.d.ts +18 -0
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-settings.d.ts.map +1 -0
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-settings.js +77 -0
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-settings.js.map +1 -0
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-values.d.ts +25 -0
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-values.d.ts.map +1 -0
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-values.js +49 -0
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-values.js.map +1 -0
- package/dist/service/ses/cfn/sim-cfn-ses-property-scalars.d.ts +25 -0
- package/dist/service/ses/cfn/sim-cfn-ses-property-scalars.d.ts.map +1 -0
- package/dist/service/ses/cfn/sim-cfn-ses-property-scalars.js +69 -0
- package/dist/service/ses/cfn/sim-cfn-ses-property-scalars.js.map +1 -0
- package/dist/service/ses/cfn/sim-cfn-ses-resource-types.d.ts +2 -0
- package/dist/service/ses/cfn/sim-cfn-ses-resource-types.d.ts.map +1 -1
- package/dist/service/ses/cfn/sim-cfn-ses-resource-types.js +2 -0
- package/dist/service/ses/cfn/sim-cfn-ses-resource-types.js.map +1 -1
- package/dist/service/ses/cfn/sim-ses-cfn-resource-factory.d.ts +3 -2
- package/dist/service/ses/cfn/sim-ses-cfn-resource-factory.d.ts.map +1 -1
- package/dist/service/ses/cfn/sim-ses-cfn-resource-factory.js +43 -40
- package/dist/service/ses/cfn/sim-ses-cfn-resource-factory.js.map +1 -1
- package/dist/service/ses/command/account/account.command.d.ts +22 -0
- package/dist/service/ses/command/account/account.command.d.ts.map +1 -1
- package/dist/service/ses/command/account/sim-ses-account-commands.d.ts +12 -4
- package/dist/service/ses/command/account/sim-ses-account-commands.d.ts.map +1 -1
- package/dist/service/ses/command/account/sim-ses-account-commands.js +16 -3
- package/dist/service/ses/command/account/sim-ses-account-commands.js.map +1 -1
- package/dist/service/ses/command/account/sim-ses-account-report.d.ts +3 -0
- package/dist/service/ses/command/account/sim-ses-account-report.d.ts.map +1 -1
- package/dist/service/ses/command/account/sim-ses-account-report.js +4 -0
- package/dist/service/ses/command/account/sim-ses-account-report.js.map +1 -1
- package/dist/service/ses/command/authorize/sim-ses-authorizer.d.ts +8 -0
- package/dist/service/ses/command/authorize/sim-ses-authorizer.d.ts.map +1 -1
- package/dist/service/ses/command/authorize/sim-ses-authorizer.js +11 -1
- package/dist/service/ses/command/authorize/sim-ses-authorizer.js.map +1 -1
- package/dist/service/ses/command/configuration-set/configuration-set.command.d.ts +100 -0
- package/dist/service/ses/command/configuration-set/configuration-set.command.d.ts.map +1 -0
- package/dist/service/ses/command/configuration-set/configuration-set.command.js +2 -0
- package/dist/service/ses/command/configuration-set/configuration-set.command.js.map +1 -0
- package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-commands.d.ts +55 -0
- package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-commands.d.ts.map +1 -0
- package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-commands.js +105 -0
- package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-commands.js.map +1 -0
- package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-options.d.ts +11 -0
- package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-options.d.ts.map +1 -0
- package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-options.js +83 -0
- package/dist/service/ses/command/configuration-set/sim-ses-configuration-set-options.js.map +1 -0
- package/dist/service/ses/command/configuration-set/sim-ses-unsimulated-configuration-set-input.d.ts +12 -0
- package/dist/service/ses/command/configuration-set/sim-ses-unsimulated-configuration-set-input.d.ts.map +1 -0
- package/dist/service/ses/command/configuration-set/sim-ses-unsimulated-configuration-set-input.js +27 -0
- package/dist/service/ses/command/configuration-set/sim-ses-unsimulated-configuration-set-input.js.map +1 -0
- package/dist/service/ses/command/identity/identity.command.d.ts +55 -2
- package/dist/service/ses/command/identity/identity.command.d.ts.map +1 -1
- package/dist/service/ses/command/identity/sim-ses-identity-attributes.d.ts +29 -0
- package/dist/service/ses/command/identity/sim-ses-identity-attributes.d.ts.map +1 -0
- package/dist/service/ses/command/identity/sim-ses-identity-attributes.js +60 -0
- package/dist/service/ses/command/identity/sim-ses-identity-attributes.js.map +1 -0
- package/dist/service/ses/command/identity/sim-ses-identity-commands.d.ts +6 -1
- package/dist/service/ses/command/identity/sim-ses-identity-commands.d.ts.map +1 -1
- package/dist/service/ses/command/identity/sim-ses-identity-commands.js +12 -12
- package/dist/service/ses/command/identity/sim-ses-identity-commands.js.map +1 -1
- package/dist/service/ses/command/identity/sim-ses-identity-input-settings.d.ts +16 -0
- package/dist/service/ses/command/identity/sim-ses-identity-input-settings.d.ts.map +1 -0
- package/dist/service/ses/command/identity/sim-ses-identity-input-settings.js +57 -0
- package/dist/service/ses/command/identity/sim-ses-identity-input-settings.js.map +1 -0
- package/dist/service/ses/command/send/sim-ses-send-email.d.ts +6 -0
- package/dist/service/ses/command/send/sim-ses-send-email.d.ts.map +1 -1
- package/dist/service/ses/command/send/sim-ses-send-email.js +7 -0
- package/dist/service/ses/command/send/sim-ses-send-email.js.map +1 -1
- package/dist/service/ses/command/send/sim-ses-service-send.d.ts +68 -0
- package/dist/service/ses/command/send/sim-ses-service-send.d.ts.map +1 -0
- package/dist/service/ses/command/send/sim-ses-service-send.js +69 -0
- package/dist/service/ses/command/send/sim-ses-service-send.js.map +1 -0
- package/dist/service/ses/command/send/sim-ses-suppression-check.d.ts +31 -0
- package/dist/service/ses/command/send/sim-ses-suppression-check.d.ts.map +1 -0
- package/dist/service/ses/command/send/sim-ses-suppression-check.js +37 -0
- package/dist/service/ses/command/send/sim-ses-suppression-check.js.map +1 -0
- package/dist/service/ses/command/send/sim-ses-verified-identities.d.ts +8 -0
- package/dist/service/ses/command/send/sim-ses-verified-identities.d.ts.map +1 -1
- package/dist/service/ses/command/send/sim-ses-verified-identities.js +15 -2
- package/dist/service/ses/command/send/sim-ses-verified-identities.js.map +1 -1
- package/dist/service/ses/command/sim-ses-command.types.d.ts +4 -2
- package/dist/service/ses/command/sim-ses-command.types.d.ts.map +1 -1
- package/dist/service/ses/command/suppression/sim-ses-suppression-commands.d.ts +44 -0
- package/dist/service/ses/command/suppression/sim-ses-suppression-commands.d.ts.map +1 -0
- package/dist/service/ses/command/suppression/sim-ses-suppression-commands.js +79 -0
- package/dist/service/ses/command/suppression/sim-ses-suppression-commands.js.map +1 -0
- package/dist/service/ses/command/suppression/sim-ses-suppression-listing.d.ts +15 -0
- package/dist/service/ses/command/suppression/sim-ses-suppression-listing.d.ts.map +1 -0
- package/dist/service/ses/command/suppression/sim-ses-suppression-listing.js +29 -0
- package/dist/service/ses/command/suppression/sim-ses-suppression-listing.js.map +1 -0
- package/dist/service/ses/command/suppression/sim-ses-unsimulated-suppression-input.d.ts +9 -0
- package/dist/service/ses/command/suppression/sim-ses-unsimulated-suppression-input.d.ts.map +1 -0
- package/dist/service/ses/command/suppression/sim-ses-unsimulated-suppression-input.js +16 -0
- package/dist/service/ses/command/suppression/sim-ses-unsimulated-suppression-input.js.map +1 -0
- package/dist/service/ses/command/suppression/suppression.command.d.ts +90 -0
- package/dist/service/ses/command/suppression/suppression.command.d.ts.map +1 -0
- package/dist/service/ses/command/suppression/suppression.command.js +2 -0
- package/dist/service/ses/command/suppression/suppression.command.js.map +1 -0
- package/dist/service/ses/configuration-set/sim-ses-configuration-set-store.d.ts +44 -0
- package/dist/service/ses/configuration-set/sim-ses-configuration-set-store.d.ts.map +1 -0
- package/dist/service/ses/configuration-set/sim-ses-configuration-set-store.js +91 -0
- package/dist/service/ses/configuration-set/sim-ses-configuration-set-store.js.map +1 -0
- package/dist/service/ses/configuration-set/sim-ses-configuration-set.d.ts +75 -0
- package/dist/service/ses/configuration-set/sim-ses-configuration-set.d.ts.map +1 -0
- package/dist/service/ses/configuration-set/sim-ses-configuration-set.js +44 -0
- package/dist/service/ses/configuration-set/sim-ses-configuration-set.js.map +1 -0
- package/dist/service/ses/email/sim-ses-sent-email.d.ts +29 -0
- package/dist/service/ses/email/sim-ses-sent-email.d.ts.map +1 -1
- package/dist/service/ses/email/sim-ses-sent-email.js +21 -0
- package/dist/service/ses/email/sim-ses-sent-email.js.map +1 -1
- package/dist/service/ses/identity/sim-ses-dkim-tokens.d.ts.map +1 -0
- package/dist/service/ses/identity/sim-ses-dkim-tokens.js.map +1 -0
- package/dist/service/ses/identity/sim-ses-identity-name.d.ts +5 -0
- package/dist/service/ses/identity/sim-ses-identity-name.d.ts.map +1 -1
- package/dist/service/ses/identity/sim-ses-identity-name.js +5 -1
- package/dist/service/ses/identity/sim-ses-identity-name.js.map +1 -1
- package/dist/service/ses/identity/sim-ses-identity-settings.d.ts +64 -0
- package/dist/service/ses/identity/sim-ses-identity-settings.d.ts.map +1 -0
- package/dist/service/ses/identity/sim-ses-identity-settings.js +21 -0
- package/dist/service/ses/identity/sim-ses-identity-settings.js.map +1 -0
- package/dist/service/ses/identity/sim-ses-identity-store.d.ts +2 -1
- package/dist/service/ses/identity/sim-ses-identity-store.d.ts.map +1 -1
- package/dist/service/ses/identity/sim-ses-identity-store.js +2 -1
- package/dist/service/ses/identity/sim-ses-identity-store.js.map +1 -1
- package/dist/service/ses/identity/sim-ses-identity.d.ts +38 -0
- package/dist/service/ses/identity/sim-ses-identity.d.ts.map +1 -1
- package/dist/service/ses/identity/sim-ses-identity.js +54 -0
- package/dist/service/ses/identity/sim-ses-identity.js.map +1 -1
- package/dist/service/ses/index.d.ts +10 -3
- package/dist/service/ses/index.d.ts.map +1 -1
- package/dist/service/ses/index.js +7 -1
- package/dist/service/ses/index.js.map +1 -1
- package/dist/service/ses/sdk/sim-ses-sdk-command-router.d.ts.map +1 -1
- package/dist/service/ses/sdk/sim-ses-sdk-command-router.js +36 -0
- package/dist/service/ses/sdk/sim-ses-sdk-command-router.js.map +1 -1
- package/dist/service/ses/sim-ses-arn.d.ts +7 -0
- package/dist/service/ses/sim-ses-arn.d.ts.map +1 -1
- package/dist/service/ses/sim-ses-arn.js +9 -0
- package/dist/service/ses/sim-ses-arn.js.map +1 -1
- package/dist/service/ses/sim-ses-commands.d.ts +14 -0
- package/dist/service/ses/sim-ses-commands.d.ts.map +1 -1
- package/dist/service/ses/sim-ses-commands.js +47 -5
- package/dist/service/ses/sim-ses-commands.js.map +1 -1
- package/dist/service/ses/sim-ses-configuration-sets.d.ts +47 -0
- package/dist/service/ses/sim-ses-configuration-sets.d.ts.map +1 -0
- package/dist/service/ses/sim-ses-configuration-sets.js +60 -0
- package/dist/service/ses/sim-ses-configuration-sets.js.map +1 -0
- package/dist/service/ses/sim-ses-suppression.d.ts +52 -0
- package/dist/service/ses/sim-ses-suppression.d.ts.map +1 -0
- package/dist/service/ses/sim-ses-suppression.js +63 -0
- package/dist/service/ses/sim-ses-suppression.js.map +1 -0
- package/dist/service/ses/sim-ses-v2.d.ts +14 -1
- package/dist/service/ses/sim-ses-v2.d.ts.map +1 -1
- package/dist/service/ses/sim-ses-v2.js +48 -35
- package/dist/service/ses/sim-ses-v2.js.map +1 -1
- package/dist/service/ses/suppression/sim-ses-suppressed-destination.d.ts +24 -0
- package/dist/service/ses/suppression/sim-ses-suppressed-destination.d.ts.map +1 -0
- package/dist/service/ses/suppression/sim-ses-suppressed-destination.js +21 -0
- package/dist/service/ses/suppression/sim-ses-suppressed-destination.js.map +1 -0
- package/dist/service/ses/suppression/sim-ses-suppression-address.d.ts +9 -0
- package/dist/service/ses/suppression/sim-ses-suppression-address.d.ts.map +1 -0
- package/dist/service/ses/suppression/sim-ses-suppression-address.js +21 -0
- package/dist/service/ses/suppression/sim-ses-suppression-address.js.map +1 -0
- package/dist/service/ses/suppression/sim-ses-suppression-list.d.ts +57 -0
- package/dist/service/ses/suppression/sim-ses-suppression-list.d.ts.map +1 -0
- package/dist/service/ses/suppression/sim-ses-suppression-list.js +82 -0
- package/dist/service/ses/suppression/sim-ses-suppression-list.js.map +1 -0
- package/dist/service/ses/suppression/sim-ses-suppression-reason.d.ts +20 -0
- package/dist/service/ses/suppression/sim-ses-suppression-reason.d.ts.map +1 -0
- package/dist/service/ses/suppression/sim-ses-suppression-reason.js +24 -0
- package/dist/service/ses/suppression/sim-ses-suppression-reason.js.map +1 -0
- package/dist/service/sns/command/sim-sns-commands.d.ts +2 -0
- package/dist/service/sns/command/sim-sns-commands.d.ts.map +1 -1
- package/dist/service/sns/command/sim-sns-commands.js +4 -1
- package/dist/service/sns/command/sim-sns-commands.js.map +1 -1
- package/dist/service/sns/sim-sns.d.ts +7 -0
- package/dist/service/sns/sim-sns.d.ts.map +1 -1
- package/dist/service/sns/sim-sns.js +3 -1
- package/dist/service/sns/sim-sns.js.map +1 -1
- package/dist/service/sns/sms/sim-sns-sent-sms-store.d.ts +13 -0
- package/dist/service/sns/sms/sim-sns-sent-sms-store.d.ts.map +1 -1
- package/dist/service/sns/sms/sim-sns-sent-sms-store.js +15 -0
- package/dist/service/sns/sms/sim-sns-sent-sms-store.js.map +1 -1
- package/dist/terraform/index.d.ts +6 -0
- package/dist/terraform/index.d.ts.map +1 -0
- package/dist/terraform/index.js +2 -0
- package/dist/terraform/index.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-cloudwatch-dimensions.d.ts +20 -0
- package/dist/terraform/map/sim-tf-map-cloudwatch-dimensions.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-cloudwatch-dimensions.js +36 -0
- package/dist/terraform/map/sim-tf-map-cloudwatch-dimensions.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-cloudwatch.d.ts +12 -0
- package/dist/terraform/map/sim-tf-map-cloudwatch.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-cloudwatch.js +69 -0
- package/dist/terraform/map/sim-tf-map-cloudwatch.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-cognito-client.d.ts +15 -0
- package/dist/terraform/map/sim-tf-map-cognito-client.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-cognito-client.js +37 -0
- package/dist/terraform/map/sim-tf-map-cognito-client.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-cognito-pool.d.ts +26 -0
- package/dist/terraform/map/sim-tf-map-cognito-pool.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-cognito-pool.js +70 -0
- package/dist/terraform/map/sim-tf-map-cognito-pool.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-cognito.d.ts +13 -0
- package/dist/terraform/map/sim-tf-map-cognito.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-cognito.js +39 -0
- package/dist/terraform/map/sim-tf-map-cognito.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-dynamodb-keys.d.ts +31 -0
- package/dist/terraform/map/sim-tf-map-dynamodb-keys.d.ts.map +1 -0
- package/dist/{service/cloudformation/terraform/sim-tf-map-dynamodb.js → terraform/map/sim-tf-map-dynamodb-keys.js} +27 -30
- package/dist/terraform/map/sim-tf-map-dynamodb-keys.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-dynamodb.d.ts +5 -0
- package/dist/terraform/map/sim-tf-map-dynamodb.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-dynamodb.js +31 -0
- package/dist/terraform/map/sim-tf-map-dynamodb.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-ecr.d.ts +12 -0
- package/dist/terraform/map/sim-tf-map-ecr.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-ecr.js +34 -0
- package/dist/terraform/map/sim-tf-map-ecr.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-events.d.ts +24 -0
- package/dist/terraform/map/sim-tf-map-events.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-events.js +151 -0
- package/dist/terraform/map/sim-tf-map-events.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-http-api-routes.d.ts +10 -0
- package/dist/terraform/map/sim-tf-map-http-api-routes.d.ts.map +1 -0
- package/dist/{service/cloudformation/terraform/sim-tf-map-http-api-route.js → terraform/map/sim-tf-map-http-api-routes.js} +19 -3
- package/dist/terraform/map/sim-tf-map-http-api-routes.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-http-api.d.ts +7 -0
- package/dist/terraform/map/sim-tf-map-http-api.d.ts.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-http-api.js +3 -17
- package/dist/terraform/map/sim-tf-map-http-api.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-iam-policy.d.ts +32 -0
- package/dist/terraform/map/sim-tf-map-iam-policy.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-iam-policy.js +85 -0
- package/dist/terraform/map/sim-tf-map-iam-policy.js.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-iam.d.ts +2 -4
- package/dist/terraform/map/sim-tf-map-iam.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-iam.js +37 -0
- package/dist/terraform/map/sim-tf-map-iam.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-kms.d.ts +25 -0
- package/dist/terraform/map/sim-tf-map-kms.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-kms.js +75 -0
- package/dist/terraform/map/sim-tf-map-kms.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-lambda-environment.d.ts +20 -0
- package/dist/terraform/map/sim-tf-map-lambda-environment.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-lambda-environment.js +52 -0
- package/dist/terraform/map/sim-tf-map-lambda-environment.js.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-lambda.d.ts +2 -2
- package/dist/terraform/map/sim-tf-map-lambda.d.ts.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-lambda.js +19 -36
- package/dist/terraform/map/sim-tf-map-lambda.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-logs.d.ts +12 -0
- package/dist/terraform/map/sim-tf-map-logs.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-logs.js +22 -0
- package/dist/terraform/map/sim-tf-map-logs.js.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-s3-folds.d.ts +1 -1
- package/dist/terraform/map/sim-tf-map-s3-folds.d.ts.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-s3-folds.js +2 -3
- package/dist/terraform/map/sim-tf-map-s3-folds.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-s3-lifecycle.d.ts +4 -0
- package/dist/terraform/map/sim-tf-map-s3-lifecycle.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-s3-lifecycle.js +92 -0
- package/dist/terraform/map/sim-tf-map-s3-lifecycle.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-s3-notification-destinations.d.ts +5 -0
- package/dist/terraform/map/sim-tf-map-s3-notification-destinations.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-s3-notification-destinations.js +30 -0
- package/dist/terraform/map/sim-tf-map-s3-notification-destinations.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-s3-notification-filter.d.ts +12 -0
- package/dist/terraform/map/sim-tf-map-s3-notification-filter.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-s3-notification-filter.js +21 -0
- package/dist/terraform/map/sim-tf-map-s3-notification-filter.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-s3-notification.d.ts +50 -0
- package/dist/terraform/map/sim-tf-map-s3-notification.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-s3-notification.js +80 -0
- package/dist/terraform/map/sim-tf-map-s3-notification.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-s3-rules.d.ts +7 -0
- package/dist/terraform/map/sim-tf-map-s3-rules.d.ts.map +1 -0
- package/dist/{service/cloudformation/terraform/sim-tf-map-s3-encryption.js → terraform/map/sim-tf-map-s3-rules.js} +20 -3
- package/dist/terraform/map/sim-tf-map-s3-rules.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-s3.d.ts +5 -0
- package/dist/terraform/map/sim-tf-map-s3.d.ts.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-s3.js +1 -1
- package/dist/terraform/map/sim-tf-map-s3.js.map +1 -0
- package/dist/{service/cloudformation/terraform/sim-tf-map-config.d.ts → terraform/map/sim-tf-map-secretsmanager.d.ts} +3 -5
- package/dist/terraform/map/sim-tf-map-secretsmanager.d.ts.map +1 -0
- package/dist/{service/cloudformation/terraform/sim-tf-map-config.js → terraform/map/sim-tf-map-secretsmanager.js} +2 -14
- package/dist/terraform/map/sim-tf-map-secretsmanager.js.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-sns.d.ts +2 -2
- package/dist/terraform/map/sim-tf-map-sns.d.ts.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform/map}/sim-tf-map-sns.js +1 -1
- package/dist/terraform/map/sim-tf-map-sns.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-sqs-redrive.d.ts +32 -0
- package/dist/terraform/map/sim-tf-map-sqs-redrive.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-sqs-redrive.js +68 -0
- package/dist/terraform/map/sim-tf-map-sqs-redrive.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-sqs.d.ts +11 -0
- package/dist/terraform/map/sim-tf-map-sqs.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-sqs.js +26 -0
- package/dist/terraform/map/sim-tf-map-sqs.js.map +1 -0
- package/dist/terraform/map/sim-tf-map-ssm.d.ts +13 -0
- package/dist/terraform/map/sim-tf-map-ssm.d.ts.map +1 -0
- package/dist/terraform/map/sim-tf-map-ssm.js +24 -0
- package/dist/terraform/map/sim-tf-map-ssm.js.map +1 -0
- package/dist/terraform/sim-tf-adapter.d.ts +80 -0
- package/dist/terraform/sim-tf-adapter.d.ts.map +1 -0
- package/dist/terraform/sim-tf-adapter.js +44 -0
- package/dist/terraform/sim-tf-adapter.js.map +1 -0
- package/dist/terraform/sim-tf-attribute-reads.d.ts.map +1 -0
- package/dist/terraform/sim-tf-attribute-reads.js.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform}/sim-tf-attributes.d.ts +13 -4
- package/dist/terraform/sim-tf-attributes.d.ts.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform}/sim-tf-attributes.js +1 -1
- package/dist/terraform/sim-tf-attributes.js.map +1 -0
- package/dist/terraform/sim-tf-declare.d.ts +37 -0
- package/dist/terraform/sim-tf-declare.d.ts.map +1 -0
- package/dist/{service/cloudformation/terraform/sim-tf-template-graph.js → terraform/sim-tf-declare.js} +35 -23
- package/dist/terraform/sim-tf-declare.js.map +1 -0
- package/dist/terraform/sim-tf-fold.d.ts +26 -0
- package/dist/terraform/sim-tf-fold.d.ts.map +1 -0
- package/dist/terraform/sim-tf-fold.js +72 -0
- package/dist/terraform/sim-tf-fold.js.map +1 -0
- package/dist/terraform/sim-tf-import.d.ts +31 -0
- package/dist/terraform/sim-tf-import.d.ts.map +1 -0
- package/dist/terraform/sim-tf-import.js +38 -0
- package/dist/terraform/sim-tf-import.js.map +1 -0
- package/dist/terraform/sim-tf-logical-id.d.ts +27 -0
- package/dist/terraform/sim-tf-logical-id.d.ts.map +1 -0
- package/dist/terraform/sim-tf-logical-id.js +83 -0
- package/dist/terraform/sim-tf-logical-id.js.map +1 -0
- package/dist/terraform/sim-tf-mapping.type.d.ts +73 -0
- package/dist/terraform/sim-tf-mapping.type.d.ts.map +1 -0
- package/dist/terraform/sim-tf-mapping.type.js.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform}/sim-tf-module-outputs.d.ts +1 -9
- package/dist/terraform/sim-tf-module-outputs.d.ts.map +1 -0
- package/dist/terraform/sim-tf-module-outputs.js +33 -0
- package/dist/terraform/sim-tf-module-outputs.js.map +1 -0
- package/dist/terraform/sim-tf-nested-attributes.d.ts +33 -0
- package/dist/terraform/sim-tf-nested-attributes.d.ts.map +1 -0
- package/dist/terraform/sim-tf-nested-attributes.js +97 -0
- package/dist/terraform/sim-tf-nested-attributes.js.map +1 -0
- package/dist/terraform/sim-tf-override.type.d.ts +36 -0
- package/dist/terraform/sim-tf-override.type.d.ts.map +1 -0
- package/dist/terraform/sim-tf-override.type.js +2 -0
- package/dist/terraform/sim-tf-override.type.js.map +1 -0
- package/dist/terraform/sim-tf-overrides.d.ts +21 -0
- package/dist/terraform/sim-tf-overrides.d.ts.map +1 -0
- package/dist/terraform/sim-tf-overrides.js +40 -0
- package/dist/terraform/sim-tf-overrides.js.map +1 -0
- package/dist/terraform/sim-tf-plan-file.d.ts +23 -0
- package/dist/terraform/sim-tf-plan-file.d.ts.map +1 -0
- package/dist/terraform/sim-tf-plan-file.js +58 -0
- package/dist/terraform/sim-tf-plan-file.js.map +1 -0
- package/dist/terraform/sim-tf-plan-resources.d.ts +18 -0
- package/dist/terraform/sim-tf-plan-resources.d.ts.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform}/sim-tf-plan-resources.js +18 -10
- package/dist/terraform/sim-tf-plan-resources.js.map +1 -0
- package/dist/terraform/sim-tf-plan-sections.d.ts +31 -0
- package/dist/terraform/sim-tf-plan-sections.d.ts.map +1 -0
- package/dist/terraform/sim-tf-plan-sections.js +60 -0
- package/dist/terraform/sim-tf-plan-sections.js.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform}/sim-tf-plan.type.d.ts +5 -1
- package/dist/terraform/sim-tf-plan.type.d.ts.map +1 -0
- package/dist/terraform/sim-tf-plan.type.js.map +1 -0
- package/dist/terraform/sim-tf-reference-address.d.ts +52 -0
- package/dist/terraform/sim-tf-reference-address.d.ts.map +1 -0
- package/dist/terraform/sim-tf-reference-address.js +102 -0
- package/dist/terraform/sim-tf-reference-address.js.map +1 -0
- package/dist/terraform/sim-tf-reference.d.ts +82 -0
- package/dist/terraform/sim-tf-reference.d.ts.map +1 -0
- package/dist/terraform/sim-tf-reference.js +153 -0
- package/dist/terraform/sim-tf-reference.js.map +1 -0
- package/dist/terraform/sim-tf-referenced.d.ts +18 -0
- package/dist/terraform/sim-tf-referenced.d.ts.map +1 -0
- package/dist/terraform/sim-tf-referenced.js +40 -0
- package/dist/terraform/sim-tf-referenced.js.map +1 -0
- package/dist/terraform/sim-tf-refusal.d.ts +23 -0
- package/dist/terraform/sim-tf-refusal.d.ts.map +1 -0
- package/dist/terraform/sim-tf-refusal.js +44 -0
- package/dist/terraform/sim-tf-refusal.js.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform}/sim-tf-registry.d.ts +2 -1
- package/dist/terraform/sim-tf-registry.d.ts.map +1 -0
- package/dist/terraform/sim-tf-registry.js +67 -0
- package/dist/terraform/sim-tf-registry.js.map +1 -0
- package/dist/terraform/sim-tf-report.d.ts +21 -0
- package/dist/terraform/sim-tf-report.d.ts.map +1 -0
- package/dist/terraform/sim-tf-report.js +57 -0
- package/dist/terraform/sim-tf-report.js.map +1 -0
- package/dist/{service/cloudformation/terraform → terraform}/sim-tf-report.type.d.ts +10 -4
- package/dist/terraform/sim-tf-report.type.d.ts.map +1 -0
- package/dist/terraform/sim-tf-report.type.js.map +1 -0
- package/dist/{service/cloudformation/terraform/sim-tf-plan-resources.d.ts → terraform/sim-tf-resource.type.d.ts} +6 -12
- package/dist/terraform/sim-tf-resource.type.d.ts.map +1 -0
- package/dist/terraform/sim-tf-resource.type.js +3 -0
- package/dist/terraform/sim-tf-resource.type.js.map +1 -0
- package/dist/terraform/sim-tf-settle.d.ts +36 -0
- package/dist/terraform/sim-tf-settle.d.ts.map +1 -0
- package/dist/terraform/sim-tf-settle.js +63 -0
- package/dist/terraform/sim-tf-settle.js.map +1 -0
- package/dist/util/filesystem/test-terraform-project.d.ts +11 -0
- package/dist/util/filesystem/test-terraform-project.d.ts.map +1 -1
- package/dist/util/filesystem/test-terraform-project.js +30 -1
- package/dist/util/filesystem/test-terraform-project.js.map +1 -1
- package/package.json +5 -1
- package/dist/service/cloudformation/resource/cfn/ses/sim-ses-dkim-tokens.d.ts.map +0 -1
- package/dist/service/cloudformation/resource/cfn/ses/sim-ses-dkim-tokens.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-attribute-reads.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-attribute-reads.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-attributes.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-attributes.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-config.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-config.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-dynamodb.d.ts +0 -15
- package/dist/service/cloudformation/terraform/sim-tf-map-dynamodb.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-dynamodb.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-http-api-route.d.ts +0 -5
- package/dist/service/cloudformation/terraform/sim-tf-map-http-api-route.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-http-api-route.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-http-api.d.ts +0 -12
- package/dist/service/cloudformation/terraform/sim-tf-map-http-api.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-http-api.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-iam.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-iam.js +0 -80
- package/dist/service/cloudformation/terraform/sim-tf-map-iam.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-lambda.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-lambda.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-s3-cors.d.ts +0 -5
- package/dist/service/cloudformation/terraform/sim-tf-map-s3-cors.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-s3-cors.js +0 -12
- package/dist/service/cloudformation/terraform/sim-tf-map-s3-cors.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-s3-encryption.d.ts +0 -5
- package/dist/service/cloudformation/terraform/sim-tf-map-s3-encryption.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-s3-encryption.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-s3-folds.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-s3-folds.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-s3.d.ts +0 -5
- package/dist/service/cloudformation/terraform/sim-tf-map-s3.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-s3.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-sns.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-sns.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-sqs.d.ts +0 -5
- package/dist/service/cloudformation/terraform/sim-tf-map-sqs.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-map-sqs.js +0 -56
- package/dist/service/cloudformation/terraform/sim-tf-map-sqs.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-mapping.type.d.ts +0 -41
- package/dist/service/cloudformation/terraform/sim-tf-mapping.type.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-mapping.type.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-module-outputs.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-module-outputs.js +0 -63
- package/dist/service/cloudformation/terraform/sim-tf-module-outputs.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-plan-index.d.ts +0 -26
- package/dist/service/cloudformation/terraform/sim-tf-plan-index.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-plan-index.js +0 -45
- package/dist/service/cloudformation/terraform/sim-tf-plan-index.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-plan-resources.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-plan-resources.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-plan.type.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-plan.type.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-reference-address.d.ts +0 -27
- package/dist/service/cloudformation/terraform/sim-tf-reference-address.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-reference-address.js +0 -58
- package/dist/service/cloudformation/terraform/sim-tf-reference-address.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-reference.d.ts +0 -64
- package/dist/service/cloudformation/terraform/sim-tf-reference.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-reference.js +0 -122
- package/dist/service/cloudformation/terraform/sim-tf-reference.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-registry.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-registry.js +0 -40
- package/dist/service/cloudformation/terraform/sim-tf-registry.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-report.type.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-report.type.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-folds.d.ts +0 -20
- package/dist/service/cloudformation/terraform/sim-tf-template-folds.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-folds.js +0 -28
- package/dist/service/cloudformation/terraform/sim-tf-template-folds.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-graph.d.ts +0 -29
- package/dist/service/cloudformation/terraform/sim-tf-template-graph.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-graph.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-mappings.d.ts +0 -23
- package/dist/service/cloudformation/terraform/sim-tf-template-mappings.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-mappings.js +0 -72
- package/dist/service/cloudformation/terraform/sim-tf-template-mappings.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-merge.d.ts +0 -21
- package/dist/service/cloudformation/terraform/sim-tf-template-merge.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-merge.js +0 -33
- package/dist/service/cloudformation/terraform/sim-tf-template-merge.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-prune.d.ts +0 -21
- package/dist/service/cloudformation/terraform/sim-tf-template-prune.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-prune.js +0 -51
- package/dist/service/cloudformation/terraform/sim-tf-template-prune.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-pruned.d.ts +0 -18
- package/dist/service/cloudformation/terraform/sim-tf-template-pruned.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-pruned.js +0 -23
- package/dist/service/cloudformation/terraform/sim-tf-template-pruned.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-references.d.ts +0 -10
- package/dist/service/cloudformation/terraform/sim-tf-template-references.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-references.js +0 -39
- package/dist/service/cloudformation/terraform/sim-tf-template-references.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-resolver.d.ts +0 -12
- package/dist/service/cloudformation/terraform/sim-tf-template-resolver.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template-resolver.js +0 -17
- package/dist/service/cloudformation/terraform/sim-tf-template-resolver.js.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template.d.ts +0 -26
- package/dist/service/cloudformation/terraform/sim-tf-template.d.ts.map +0 -1
- package/dist/service/cloudformation/terraform/sim-tf-template.js +0 -54
- package/dist/service/cloudformation/terraform/sim-tf-template.js.map +0 -1
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-unsimulated-properties.d.ts +0 -17
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-unsimulated-properties.d.ts.map +0 -1
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-unsimulated-properties.js +0 -48
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-unsimulated-properties.js.map +0 -1
- package/dist/service/ses/command/identity/sim-ses-unsimulated-identity-input.d.ts +0 -12
- package/dist/service/ses/command/identity/sim-ses-unsimulated-identity-input.d.ts.map +0 -1
- package/dist/service/ses/command/identity/sim-ses-unsimulated-identity-input.js +0 -26
- package/dist/service/ses/command/identity/sim-ses-unsimulated-identity-input.js.map +0 -1
- /package/dist/service/{cloudformation/resource/cfn/ses → ses/identity}/sim-ses-dkim-tokens.d.ts +0 -0
- /package/dist/service/{cloudformation/resource/cfn/ses → ses/identity}/sim-ses-dkim-tokens.js +0 -0
- /package/dist/{service/cloudformation/terraform → terraform}/sim-tf-attribute-reads.d.ts +0 -0
- /package/dist/{service/cloudformation/terraform → terraform}/sim-tf-attribute-reads.js +0 -0
- /package/dist/{service/cloudformation/terraform → terraform}/sim-tf-mapping.type.js +0 -0
- /package/dist/{service/cloudformation/terraform → terraform}/sim-tf-plan.type.js +0 -0
- /package/dist/{service/cloudformation/terraform → terraform}/sim-tf-report.type.js +0 -0
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Reading a plan means reading records whose keys come from the document
|
|
3
|
+
* rather than from this code, so the object-injection rule fires on every
|
|
4
|
+
* lookup. The records are parsed JSON with no prototype of their own.
|
|
5
|
+
*/
|
|
6
|
+
// oxlint-disable security/detect-object-injection
|
|
7
|
+
import { isRecord } from "../../util/type-guard/record.js";
|
|
8
|
+
import { block, field, } from "../sim-tf-attributes.js";
|
|
9
|
+
/**
|
|
10
|
+
* The environment variables a simulated function runs with.
|
|
11
|
+
*
|
|
12
|
+
* A map holding one reference to a resource of the same plan is unknown in its
|
|
13
|
+
* entirety, and the variable names go with it, so a deployment can supply the
|
|
14
|
+
* map against the function name the plan carries. What the plan resolved wins
|
|
15
|
+
* over what was supplied, variable by variable, which is what makes a
|
|
16
|
+
* configuration that later resolves the map stop needing the override.
|
|
17
|
+
*/
|
|
18
|
+
export function lambdaEnvironment(context) {
|
|
19
|
+
const supplied = context.overrides.environment(field(context.resource.values, "function_name"));
|
|
20
|
+
const variables = { ...supplied, ...plannedVariables(context) };
|
|
21
|
+
if (Object.keys(variables).length > 0) {
|
|
22
|
+
return { property: { Variables: variables }, lost: [] };
|
|
23
|
+
}
|
|
24
|
+
return {
|
|
25
|
+
property: undefined,
|
|
26
|
+
lost: collapsed(context) ? ["environment.variables"] : [],
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
/** The variables the plan itself resolved, which is usually none of them. */
|
|
30
|
+
function plannedVariables(context) {
|
|
31
|
+
const environment = block(context, "environment");
|
|
32
|
+
const variables = environment && field(environment, "variables");
|
|
33
|
+
return isRecord(variables) ? variables : {};
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Whether Terraform marked the whole variables map unknown.
|
|
37
|
+
*
|
|
38
|
+
* A function declaring no environment at all has lost nothing. One whose map
|
|
39
|
+
* collapsed has lost names this cannot know, which is the case an override is
|
|
40
|
+
* for.
|
|
41
|
+
*
|
|
42
|
+
* The map goes whole or not at all. Terraform 1.15.8 against AWS provider
|
|
43
|
+
* 5.100.0 writes `"variables": true` for a map holding one literal and one
|
|
44
|
+
* reference to a resource of the same plan, so there is no per-variable form
|
|
45
|
+
* of this to read.
|
|
46
|
+
*/
|
|
47
|
+
function collapsed(context) {
|
|
48
|
+
const declared = field(context.resource.unknown, "environment");
|
|
49
|
+
const entries = Array.isArray(declared) ? declared : [];
|
|
50
|
+
return isRecord(entries[0]) && field(entries[0], "variables") === true;
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=sim-tf-map-lambda-environment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-lambda-environment.js","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-lambda-environment.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,kDAAkD;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAE3D,OAAO,EACL,KAAK,EACL,KAAK,GAEN,MAAM,yBAAyB,CAAC;AAUjC;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAAgC;IAEhC,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,WAAW,CAC5C,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC,CAChD,CAAC;IACF,MAAM,SAAS,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;IAEhE,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAC1D,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,SAAS;QACnB,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,EAAE;KAC1D,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,SAAS,gBAAgB,CACvB,OAAgC;IAEhC,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,WAAW,IAAI,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAEjE,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAE,SAAoC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1E,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,SAAS,CAAC,OAAgC;IACjD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAChE,MAAM,OAAO,GAAuB,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAE5E,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,KAAK,IAAI,CAAC;AACzE,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { type TerraformMappingContext } from "
|
|
2
|
-
import type { TerraformMappedResource } from "
|
|
1
|
+
import { type TerraformMappingContext } from "../sim-tf-attributes.js";
|
|
2
|
+
import type { TerraformMappedResource } from "../sim-tf-mapping.type.js";
|
|
3
3
|
/**
|
|
4
4
|
* A function, minus its code.
|
|
5
5
|
*
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-lambda.d.ts","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-lambda.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEzE;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,uBAAuB,GAC/B,uBAAuB,CAiCzB;AAED,2CAA2C;AAC3C,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,uBAAuB,GAC/B,uBAAuB,CAWzB;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,uBAAuB,GAC/B,uBAAuB,CAWzB"}
|
|
@@ -1,11 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
* rather than from this code, so the object-injection rule fires on every
|
|
4
|
-
* lookup. The records are parsed JSON with no prototype of their own.
|
|
5
|
-
*/
|
|
6
|
-
// oxlint-disable security/detect-object-injection
|
|
7
|
-
import { isRecord } from "../../../util/type-guard/record.js";
|
|
8
|
-
import { block, field, properties, renamed, tags, templateValue, } from "./sim-tf-attributes.js";
|
|
1
|
+
import { properties, renamed, tags, } from "../sim-tf-attributes.js";
|
|
2
|
+
import { lambdaEnvironment } from "./sim-tf-map-lambda-environment.js";
|
|
9
3
|
/**
|
|
10
4
|
* A function, minus its code.
|
|
11
5
|
*
|
|
@@ -15,7 +9,7 @@ import { block, field, properties, renamed, tags, templateValue, } from "./sim-t
|
|
|
15
9
|
* template carries.
|
|
16
10
|
*/
|
|
17
11
|
export function lambdaFunction(context) {
|
|
18
|
-
const
|
|
12
|
+
const environment = lambdaEnvironment(context);
|
|
19
13
|
return {
|
|
20
14
|
Type: "AWS::Lambda::Function",
|
|
21
15
|
Properties: {
|
|
@@ -28,38 +22,25 @@ export function lambdaFunction(context) {
|
|
|
28
22
|
MemorySize: "memory_size",
|
|
29
23
|
}),
|
|
30
24
|
...properties({
|
|
31
|
-
Environment:
|
|
25
|
+
Environment: environment.property,
|
|
32
26
|
Tags: tags(context),
|
|
33
27
|
}),
|
|
34
28
|
},
|
|
35
|
-
|
|
29
|
+
/*
|
|
30
|
+
* The code is always lost, since a plan points at a zip, an S3 object or
|
|
31
|
+
* an image. The environment joins it only where the plan collapsed the
|
|
32
|
+
* variables map and no override supplied one.
|
|
33
|
+
*/
|
|
34
|
+
lost: ["code", ...environment.lost],
|
|
35
|
+
/*
|
|
36
|
+
* A function whose execution role the plan does not create, such as one
|
|
37
|
+
* read out of a data source, has no role for the template to name. Sim
|
|
38
|
+
* Lambda refuses a function without one, so the function is left out and
|
|
39
|
+
* recorded rather than failing the Stack around it.
|
|
40
|
+
*/
|
|
41
|
+
requires: ["Role"],
|
|
36
42
|
};
|
|
37
43
|
}
|
|
38
|
-
function environmentVariables(context) {
|
|
39
|
-
const environment = block(context, "environment");
|
|
40
|
-
const variables = environment && field(environment, "variables");
|
|
41
|
-
if (!isRecord(variables)) {
|
|
42
|
-
return undefined;
|
|
43
|
-
}
|
|
44
|
-
const value = templateValue(variables);
|
|
45
|
-
return value;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* What the mapping could not carry.
|
|
49
|
-
*
|
|
50
|
-
* The code is always one. The environment variables are another whenever any
|
|
51
|
-
* value in the map names a resource of the same plan, because Terraform marks
|
|
52
|
-
* the whole map unknown and the variable names go with it.
|
|
53
|
-
*/
|
|
54
|
-
function lost(context, variables) {
|
|
55
|
-
const declared = field(context.resource.unknown, "environment");
|
|
56
|
-
const entries = Array.isArray(declared) ? declared : [];
|
|
57
|
-
const first = entries[0];
|
|
58
|
-
const collapsed = isRecord(first) &&
|
|
59
|
-
field(first, "variables") === true &&
|
|
60
|
-
variables === undefined;
|
|
61
|
-
return collapsed ? ["code", "environment.variables"] : ["code"];
|
|
62
|
-
}
|
|
63
44
|
/** One permission to invoke a function. */
|
|
64
45
|
export function lambdaPermission(context) {
|
|
65
46
|
return {
|
|
@@ -70,6 +51,7 @@ export function lambdaPermission(context) {
|
|
|
70
51
|
Principal: "principal",
|
|
71
52
|
SourceArn: "source_arn",
|
|
72
53
|
}),
|
|
54
|
+
requires: ["FunctionName", "Action", "Principal"],
|
|
73
55
|
};
|
|
74
56
|
}
|
|
75
57
|
/**
|
|
@@ -85,6 +67,7 @@ export function lambdaEventSourceMapping(context) {
|
|
|
85
67
|
BatchSize: "batch_size",
|
|
86
68
|
Enabled: "enabled",
|
|
87
69
|
}),
|
|
70
|
+
requires: ["EventSourceArn", "FunctionName"],
|
|
88
71
|
};
|
|
89
72
|
}
|
|
90
73
|
//# sourceMappingURL=sim-tf-map-lambda.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-lambda.js","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-lambda.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,OAAO,EACP,IAAI,GAEL,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAGvE;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAgC;IAEhC,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAE/C,OAAO;QACL,IAAI,EAAE,uBAAuB;QAC7B,UAAU,EAAE;YACV,GAAG,OAAO,CAAC,OAAO,EAAE;gBAClB,YAAY,EAAE,eAAe;gBAC7B,OAAO,EAAE,SAAS;gBAClB,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,SAAS;gBAClB,UAAU,EAAE,aAAa;aAC1B,CAAC;YACF,GAAG,UAAU,CAAC;gBACZ,WAAW,EAAE,WAAW,CAAC,QAAQ;gBACjC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC;aACpB,CAAC;SACH;QACD;;;;WAIG;QACH,IAAI,EAAE,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC;QACnC;;;;;WAKG;QACH,QAAQ,EAAE,CAAC,MAAM,CAAC;KACnB,CAAC;AACJ,CAAC;AAED,2CAA2C;AAC3C,MAAM,UAAU,gBAAgB,CAC9B,OAAgC;IAEhC,OAAO;QACL,IAAI,EAAE,yBAAyB;QAC/B,UAAU,EAAE,OAAO,CAAC,OAAO,EAAE;YAC3B,YAAY,EAAE,eAAe;YAC7B,MAAM,EAAE,QAAQ;YAChB,SAAS,EAAE,WAAW;YACtB,SAAS,EAAE,YAAY;SACxB,CAAC;QACF,QAAQ,EAAE,CAAC,cAAc,EAAE,QAAQ,EAAE,WAAW,CAAC;KAClD,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAAgC;IAEhC,OAAO;QACL,IAAI,EAAE,iCAAiC;QACvC,UAAU,EAAE,OAAO,CAAC,OAAO,EAAE;YAC3B,cAAc,EAAE,kBAAkB;YAClC,YAAY,EAAE,eAAe;YAC7B,SAAS,EAAE,YAAY;YACvB,OAAO,EAAE,SAAS;SACnB,CAAC;QACF,QAAQ,EAAE,CAAC,gBAAgB,EAAE,cAAc,CAAC;KAC7C,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type TerraformMappingContext } from "../sim-tf-attributes.js";
|
|
2
|
+
import type { TerraformMappedResource } from "../sim-tf-mapping.type.js";
|
|
3
|
+
/**
|
|
4
|
+
* A log group.
|
|
5
|
+
*
|
|
6
|
+
* Terraform spells "never expire" as a retention of zero, and simulated
|
|
7
|
+
* CloudWatch Logs refuses a `RetentionInDays` of zero the way real
|
|
8
|
+
* CloudFormation does. A group configured to keep its logs forever is one
|
|
9
|
+
* declaring no retention at all.
|
|
10
|
+
*/
|
|
11
|
+
export declare function logGroup(context: TerraformMappingContext): TerraformMappedResource;
|
|
12
|
+
//# sourceMappingURL=sim-tf-map-logs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-logs.d.ts","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-logs.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEzE;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CACtB,OAAO,EAAE,uBAAuB,GAC/B,uBAAuB,CAYzB"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { attribute, properties, renamed, } from "../sim-tf-attributes.js";
|
|
2
|
+
/**
|
|
3
|
+
* A log group.
|
|
4
|
+
*
|
|
5
|
+
* Terraform spells "never expire" as a retention of zero, and simulated
|
|
6
|
+
* CloudWatch Logs refuses a `RetentionInDays` of zero the way real
|
|
7
|
+
* CloudFormation does. A group configured to keep its logs forever is one
|
|
8
|
+
* declaring no retention at all.
|
|
9
|
+
*/
|
|
10
|
+
export function logGroup(context) {
|
|
11
|
+
const retention = attribute(context, "retention_in_days");
|
|
12
|
+
return {
|
|
13
|
+
Type: "AWS::Logs::LogGroup",
|
|
14
|
+
Properties: {
|
|
15
|
+
...renamed(context, { LogGroupName: "name" }),
|
|
16
|
+
...properties({
|
|
17
|
+
RetentionInDays: retention === 0 ? undefined : retention,
|
|
18
|
+
}),
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=sim-tf-map-logs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-logs.js","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-logs.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,UAAU,EACV,OAAO,GAER,MAAM,yBAAyB,CAAC;AAGjC;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CACtB,OAAgC;IAEhC,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;IAE1D,OAAO;QACL,IAAI,EAAE,qBAAqB;QAC3B,UAAU,EAAE;YACV,GAAG,OAAO,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;YAC7C,GAAG,UAAU,CAAC;gBACZ,eAAe,EAAE,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;aACzD,CAAC;SACH;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-s3-folds.d.ts","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-s3-folds.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAGvE;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAkBjE,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { block, field, renamed, } from "
|
|
2
|
-
import { cors } from "./sim-tf-map-s3-
|
|
3
|
-
import { encryption } from "./sim-tf-map-s3-encryption.js";
|
|
1
|
+
import { block, field, renamed, } from "../sim-tf-attributes.js";
|
|
2
|
+
import { cors, encryption } from "./sim-tf-map-s3-rules.js";
|
|
4
3
|
/**
|
|
5
4
|
* The `aws_s3_bucket_*` resources that configure a bucket declared elsewhere.
|
|
6
5
|
*
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-s3-folds.js","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-s3-folds.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,KAAK,EACL,KAAK,EACL,OAAO,GAER,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE5D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GACxB,IAAI,GAAG,CAAC;IACN;QACE,0BAA0B;QAC1B,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE;KACtD;IACD;QACE,mCAAmC;QACnC,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE;KACxD;IACD;QACE,kCAAkC;QAClC,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE;KAChD;IACD;QACE,oDAAoD;QACpD,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE;KACtD;CACF,CAAC,CAAC;AAEL,SAAS,UAAU,CACjB,OAAgC;IAEhC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,EAAE,0BAA0B,CAAC,CAAC;IAE9D,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,KAAK,SAAS,CAAC;IAE1D,OAAO;QACL,uBAAuB,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,EAAE;KACvE,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CACnB,OAAgC;IAEhC,OAAO;QACL,8BAA8B,EAAE,OAAO,CAAC,OAAO,EAAE;YAC/C,eAAe,EAAE,mBAAmB;YACpC,iBAAiB,EAAE,qBAAqB;YACxC,gBAAgB,EAAE,oBAAoB;YACtC,qBAAqB,EAAE,yBAAyB;SACjD,CAAC;KACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { TerraformResourceFold } from "../sim-tf-mapping.type.js";
|
|
2
|
+
/** The resource that configures a bucket's lifecycle rules. */
|
|
3
|
+
export declare const s3LifecycleFolds: ReadonlyMap<string, TerraformResourceFold>;
|
|
4
|
+
//# sourceMappingURL=sim-tf-map-s3-lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-s3-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-s3-lifecycle.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAEvE,+DAA+D;AAC/D,eAAO,MAAM,gBAAgB,EAAE,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAMpE,CAAC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* The bucket lifecycle configuration, which the provider declares as a
|
|
3
|
+
* resource of its own and CloudFormation carries on the bucket.
|
|
4
|
+
*
|
|
5
|
+
* Simulated S3 expires and transitions nothing, and records the whole
|
|
6
|
+
* `LifecycleConfiguration` property against the Resource as one it does not act
|
|
7
|
+
* on. The rules are carried across so that record names what the bucket was
|
|
8
|
+
* asked for, rather than the resource being skipped and the configuration
|
|
9
|
+
* disappearing from the report.
|
|
10
|
+
*
|
|
11
|
+
* Reading a plan means reading records whose keys come from the document
|
|
12
|
+
* rather than from this code, so the object-injection rule fires on every
|
|
13
|
+
* lookup. The records are parsed JSON with no prototype of their own.
|
|
14
|
+
*/
|
|
15
|
+
// oxlint-disable security/detect-object-injection
|
|
16
|
+
import { isRecord } from "../../util/type-guard/record.js";
|
|
17
|
+
import { blocks, field, properties, } from "../sim-tf-attributes.js";
|
|
18
|
+
/** The resource that configures a bucket's lifecycle rules. */
|
|
19
|
+
export const s3LifecycleFolds = new Map([
|
|
20
|
+
[
|
|
21
|
+
"aws_s3_bucket_lifecycle_configuration",
|
|
22
|
+
{ parentAttribute: "bucket", properties: bucketLifecycle },
|
|
23
|
+
],
|
|
24
|
+
]);
|
|
25
|
+
/** The lifecycle rules a bucket is deployed with. */
|
|
26
|
+
function bucketLifecycle(context) {
|
|
27
|
+
const rules = blocks(context, "rule").map((rule) => lifecycleRule(rule));
|
|
28
|
+
return rules.length === 0 ? {} : { LifecycleConfiguration: { Rules: rules } };
|
|
29
|
+
}
|
|
30
|
+
function lifecycleRule(rule) {
|
|
31
|
+
const expiration = firstBlock(rule, "expiration");
|
|
32
|
+
const noncurrent = firstBlock(rule, "noncurrent_version_expiration");
|
|
33
|
+
const abortAfter = number(firstBlock(rule, "abort_incomplete_multipart_upload"), "days_after_initiation");
|
|
34
|
+
return properties({
|
|
35
|
+
Id: text(rule, "id"),
|
|
36
|
+
Status: text(rule, "status"),
|
|
37
|
+
Prefix: text(rule, "prefix") ?? filterPrefix(rule),
|
|
38
|
+
ExpirationInDays: number(expiration, "days"),
|
|
39
|
+
ExpirationDate: text(expiration, "date"),
|
|
40
|
+
NoncurrentVersionExpirationInDays: number(noncurrent, "noncurrent_days"),
|
|
41
|
+
AbortIncompleteMultipartUpload: abortAfter === undefined
|
|
42
|
+
? undefined
|
|
43
|
+
: { DaysAfterInitiation: abortAfter },
|
|
44
|
+
Transitions: transitions(rule),
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* The prefix a rule matches on, where it was written as a filter.
|
|
49
|
+
*
|
|
50
|
+
* The provider takes a prefix either as the rule's own deprecated attribute or
|
|
51
|
+
* inside a `filter` block, and CloudFormation has the one `Prefix`.
|
|
52
|
+
*/
|
|
53
|
+
function filterPrefix(rule) {
|
|
54
|
+
return text(firstBlock(rule, "filter"), "prefix");
|
|
55
|
+
}
|
|
56
|
+
/** The storage class changes a rule asks for, as CloudFormation lists them. */
|
|
57
|
+
function transitions(rule) {
|
|
58
|
+
const declared = field(rule, "transition");
|
|
59
|
+
const entries = (Array.isArray(declared) ? declared : [])
|
|
60
|
+
.filter((entry) => isRecord(entry))
|
|
61
|
+
.map((entry) => properties({
|
|
62
|
+
StorageClass: text(entry, "storage_class"),
|
|
63
|
+
TransitionInDays: number(entry, "days"),
|
|
64
|
+
TransitionDate: text(entry, "date"),
|
|
65
|
+
}));
|
|
66
|
+
return entries.length === 0 ? undefined : entries;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* One entry of a nested block, which the plan represents as a list even where
|
|
70
|
+
* the schema allows only one.
|
|
71
|
+
*/
|
|
72
|
+
function firstBlock(record, key) {
|
|
73
|
+
const declared = record === undefined ? undefined : field(record, key);
|
|
74
|
+
const [first] = Array.isArray(declared) ? declared : [];
|
|
75
|
+
return isRecord(first) ? first : undefined;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* A string field of a block, where the provider wrote one.
|
|
79
|
+
*
|
|
80
|
+
* An absent optional string inside a nested block arrives as an empty string
|
|
81
|
+
* rather than as null, and a rule carrying an empty `Prefix` matches every
|
|
82
|
+
* object rather than none.
|
|
83
|
+
*/
|
|
84
|
+
function text(record, key) {
|
|
85
|
+
const value = record === undefined ? undefined : field(record, key);
|
|
86
|
+
return typeof value === "string" && value.length > 0 ? value : undefined;
|
|
87
|
+
}
|
|
88
|
+
function number(record, key) {
|
|
89
|
+
const value = record === undefined ? undefined : field(record, key);
|
|
90
|
+
return typeof value === "number" ? value : undefined;
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=sim-tf-map-s3-lifecycle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-s3-lifecycle.js","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-s3-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,kDAAkD;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAE3D,OAAO,EACL,MAAM,EACN,KAAK,EACL,UAAU,GAEX,MAAM,yBAAyB,CAAC;AAGjC,+DAA+D;AAC/D,MAAM,CAAC,MAAM,gBAAgB,GAC3B,IAAI,GAAG,CAAC;IACN;QACE,uCAAuC;QACvC,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,EAAE;KAC3D;CACF,CAAC,CAAC;AAEL,qDAAqD;AACrD,SAAS,eAAe,CACtB,OAAgC;IAEhC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IAEzE,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;AAChF,CAAC;AAED,SAAS,aAAa,CAAC,IAA6B;IAClD,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,EAAE,+BAA+B,CAAC,CAAC;IACrE,MAAM,UAAU,GAAG,MAAM,CACvB,UAAU,CAAC,IAAI,EAAE,mCAAmC,CAAC,EACrD,uBAAuB,CACxB,CAAC;IAEF,OAAO,UAAU,CAAC;QAChB,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC;QACpB,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;QAC5B,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC;QAClD,gBAAgB,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC;QAC5C,cAAc,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;QACxC,iCAAiC,EAAE,MAAM,CAAC,UAAU,EAAE,iBAAiB,CAAC;QACxE,8BAA8B,EAC5B,UAAU,KAAK,SAAS;YACtB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,EAAE,mBAAmB,EAAE,UAAU,EAAE;QACzC,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC;KAC/B,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,IAA6B;IACjD,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;AACpD,CAAC;AAED,+EAA+E;AAC/E,SAAS,WAAW,CAClB,IAA6B;IAE7B,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;SACtD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SAClC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACb,UAAU,CAAC;QACT,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,eAAe,CAAC;QAC1C,gBAAgB,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC;QACvC,cAAc,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC;KACpC,CAAC,CACH,CAAC;IAEJ,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;AACpD,CAAC;AAED;;;GAGG;AACH,SAAS,UAAU,CACjB,MAA2C,EAC3C,GAAW;IAEX,MAAM,QAAQ,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACvE,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAE,QAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;IAEvE,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7C,CAAC;AAED;;;;;;GAMG;AACH,SAAS,IAAI,CACX,MAA2C,EAC3C,GAAW;IAEX,MAAM,KAAK,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEpE,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3E,CAAC;AAED,SAAS,MAAM,CACb,MAA2C,EAC3C,GAAW;IAEX,MAAM,KAAK,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEpE,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { SimCfnTemplateValue } from "../../service/cloudformation/template/value/sim-cfn-template-value.js";
|
|
2
|
+
import { type TerraformMappingContext } from "../sim-tf-attributes.js";
|
|
3
|
+
/** Every destination the bucket sends to, grouped by the service it names. */
|
|
4
|
+
export declare function notificationConfiguration(context: TerraformMappingContext): SimCfnTemplateValue | undefined;
|
|
5
|
+
//# sourceMappingURL=sim-tf-map-s3-notification-destinations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-s3-notification-destinations.d.ts","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-s3-notification-destinations.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uEAAuE,CAAC;AACjH,OAAO,EAIL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAC;AAWjC,8EAA8E;AAC9E,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,uBAAuB,GAC/B,mBAAmB,GAAG,SAAS,CAWjC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { blocks, field, properties, } from "../sim-tf-attributes.js";
|
|
2
|
+
import { blockAttribute } from "../sim-tf-nested-attributes.js";
|
|
3
|
+
import { notificationDestinations, } from "./sim-tf-map-s3-notification.js";
|
|
4
|
+
import { notificationKeyFilter, notificationText, } from "./sim-tf-map-s3-notification-filter.js";
|
|
5
|
+
/** Every destination the bucket sends to, grouped by the service it names. */
|
|
6
|
+
export function notificationConfiguration(context) {
|
|
7
|
+
const configuration = properties(Object.fromEntries(notificationDestinations.map((destination) => [
|
|
8
|
+
destination.property,
|
|
9
|
+
entries(context, destination),
|
|
10
|
+
])));
|
|
11
|
+
return Object.keys(configuration).length === 0 ? undefined : configuration;
|
|
12
|
+
}
|
|
13
|
+
/** One destination's entries, each naming the events it wants. */
|
|
14
|
+
function entries(context, destination) {
|
|
15
|
+
const declared = blocks(context, destination.block).flatMap((entry, index) => {
|
|
16
|
+
const arn = blockAttribute(context, destination.block, index, destination.destination);
|
|
17
|
+
return arn === undefined
|
|
18
|
+
? []
|
|
19
|
+
: [
|
|
20
|
+
properties({
|
|
21
|
+
Id: notificationText(entry, "id"),
|
|
22
|
+
[destination.arn]: arn,
|
|
23
|
+
Events: field(entry, "events"),
|
|
24
|
+
Filter: notificationKeyFilter(entry),
|
|
25
|
+
}),
|
|
26
|
+
];
|
|
27
|
+
});
|
|
28
|
+
return declared.length === 0 ? undefined : declared;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=sim-tf-map-s3-notification-destinations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-s3-notification-destinations.js","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-s3-notification-destinations.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,MAAM,EACN,KAAK,EACL,UAAU,GAEX,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EACL,wBAAwB,GAEzB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,wCAAwC,CAAC;AAEhD,8EAA8E;AAC9E,MAAM,UAAU,yBAAyB,CACvC,OAAgC;IAEhC,MAAM,aAAa,GAAG,UAAU,CAC9B,MAAM,CAAC,WAAW,CAChB,wBAAwB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;QAC5C,WAAW,CAAC,QAAQ;QACpB,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC;KAC9B,CAAC,CACH,CACF,CAAC;IAEF,OAAO,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC;AAC7E,CAAC;AAED,kEAAkE;AAClE,SAAS,OAAO,CACd,OAAgC,EAChC,WAAoC;IAEpC,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,OAAO,CACzD,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACf,MAAM,GAAG,GAAG,cAAc,CACxB,OAAO,EACP,WAAW,CAAC,KAAK,EACjB,KAAK,EACL,WAAW,CAAC,WAAW,CACxB,CAAC;QAEF,OAAO,GAAG,KAAK,SAAS;YACtB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE,UAAU,CAAC;oBACT,EAAE,EAAE,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC;oBACjC,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,GAAG;oBACtB,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAwB;oBACrD,MAAM,EAAE,qBAAqB,CAAC,KAAK,CAAC;iBACrC,CAAC;aACH,CAAC;IACR,CAAC,CACF,CAAC;IAEF,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;AACtD,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { SimCfnTemplateValue } from "../../service/cloudformation/template/value/sim-cfn-template-value.js";
|
|
2
|
+
/**
|
|
3
|
+
* The object key filter, from the prefix and suffix Terraform states apart.
|
|
4
|
+
*
|
|
5
|
+
* An absent optional string inside a nested block arrives as an empty string
|
|
6
|
+
* rather than as null, and a rule matching the empty prefix matches every
|
|
7
|
+
* object, which is what a filter is written to stop.
|
|
8
|
+
*/
|
|
9
|
+
export declare function notificationKeyFilter(entry: Record<string, unknown>): SimCfnTemplateValue | undefined;
|
|
10
|
+
/** A string field of a block, where the provider wrote anything in it. */
|
|
11
|
+
export declare function notificationText(entry: Record<string, unknown>, key: string): string | undefined;
|
|
12
|
+
//# sourceMappingURL=sim-tf-map-s3-notification-filter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-s3-notification-filter.d.ts","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-s3-notification-filter.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uEAAuE,CAAC;AAGjH;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,mBAAmB,GAAG,SAAS,CASjC;AAED,0EAA0E;AAC1E,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,GAAG,EAAE,MAAM,GACV,MAAM,GAAG,SAAS,CAIpB"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { field } from "../sim-tf-attributes.js";
|
|
2
|
+
/**
|
|
3
|
+
* The object key filter, from the prefix and suffix Terraform states apart.
|
|
4
|
+
*
|
|
5
|
+
* An absent optional string inside a nested block arrives as an empty string
|
|
6
|
+
* rather than as null, and a rule matching the empty prefix matches every
|
|
7
|
+
* object, which is what a filter is written to stop.
|
|
8
|
+
*/
|
|
9
|
+
export function notificationKeyFilter(entry) {
|
|
10
|
+
const rules = [
|
|
11
|
+
{ Name: "prefix", Value: notificationText(entry, "filter_prefix") },
|
|
12
|
+
{ Name: "suffix", Value: notificationText(entry, "filter_suffix") },
|
|
13
|
+
].filter((rule) => rule.Value !== undefined);
|
|
14
|
+
return rules.length === 0 ? undefined : { Key: { FilterRules: rules } };
|
|
15
|
+
}
|
|
16
|
+
/** A string field of a block, where the provider wrote anything in it. */
|
|
17
|
+
export function notificationText(entry, key) {
|
|
18
|
+
const value = field(entry, key);
|
|
19
|
+
return typeof value === "string" && value.length > 0 ? value : undefined;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=sim-tf-map-s3-notification-filter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-s3-notification-filter.js","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-s3-notification-filter.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAEhD;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAA8B;IAE9B,MAAM,KAAK,GAAG;QACZ,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,gBAAgB,CAAC,KAAK,EAAE,eAAe,CAAC,EAAE;QACnE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,gBAAgB,CAAC,KAAK,EAAE,eAAe,CAAC,EAAE;KACpE,CAAC,MAAM,CACN,CAAC,IAAI,EAA2C,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAC5E,CAAC;IAEF,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC;AAC1E,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,gBAAgB,CAC9B,KAA8B,EAC9B,GAAW;IAEX,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAEhC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3E,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { type TerraformMappingContext } from "../sim-tf-attributes.js";
|
|
2
|
+
import type { TerraformMappedResource } from "../sim-tf-mapping.type.js";
|
|
3
|
+
/**
|
|
4
|
+
* The three destination blocks, and what the request calls each of them.
|
|
5
|
+
*
|
|
6
|
+
* `destination` is the Terraform attribute holding the ARN, and `arn` is the
|
|
7
|
+
* key it is written under, which repeats the service's name on all three.
|
|
8
|
+
*/
|
|
9
|
+
export declare const notificationDestinations: readonly [{
|
|
10
|
+
readonly block: "lambda_function";
|
|
11
|
+
readonly destination: "lambda_function_arn";
|
|
12
|
+
readonly property: "LambdaFunctionConfigurations";
|
|
13
|
+
readonly arn: "LambdaFunctionArn";
|
|
14
|
+
}, {
|
|
15
|
+
readonly block: "queue";
|
|
16
|
+
readonly destination: "queue_arn";
|
|
17
|
+
readonly property: "QueueConfigurations";
|
|
18
|
+
readonly arn: "QueueArn";
|
|
19
|
+
}, {
|
|
20
|
+
readonly block: "topic";
|
|
21
|
+
readonly destination: "topic_arn";
|
|
22
|
+
readonly property: "TopicConfigurations";
|
|
23
|
+
readonly arn: "TopicArn";
|
|
24
|
+
}];
|
|
25
|
+
export interface NotificationDestination {
|
|
26
|
+
readonly block: string;
|
|
27
|
+
readonly destination: string;
|
|
28
|
+
readonly property: string;
|
|
29
|
+
readonly arn: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* The notification configuration a bucket is deployed with.
|
|
33
|
+
*
|
|
34
|
+
* This is a Resource of its own rather than a bucket property, for the reason
|
|
35
|
+
* CDK gives it one as well. A function's `AWS::Lambda::Permission` names the
|
|
36
|
+
* bucket whose events it admits, so a bucket naming the function back is a
|
|
37
|
+
* circular dependency CloudFormation refuses. Terraform declares the same three
|
|
38
|
+
* resources and has no cycle, because the notification sits between them, and
|
|
39
|
+
* `Custom::S3BucketNotifications` is that resource here. Simulated
|
|
40
|
+
* CloudFormation applies one with a single
|
|
41
|
+
* PutBucketNotificationConfiguration call, after everything the plan declared
|
|
42
|
+
* it to come after.
|
|
43
|
+
*
|
|
44
|
+
* The Resource carries the SDK request shape rather than the CloudFormation
|
|
45
|
+
* one, which is what CDK's own provider function is handed, and it is the
|
|
46
|
+
* closer of the two to what Terraform writes: a list of events per destination
|
|
47
|
+
* rather than one configuration per event.
|
|
48
|
+
*/
|
|
49
|
+
export declare function bucketNotification(context: TerraformMappingContext): TerraformMappedResource;
|
|
50
|
+
//# sourceMappingURL=sim-tf-map-s3-notification.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-s3-notification.d.ts","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-s3-notification.ts"],"names":[],"mappings":"AAIA,OAAO,EAKL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAIzE;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB;aAEjC,KAAK,EAAE,iBAAiB;aACxB,WAAW,EAAE,qBAAqB;aAClC,QAAQ,EAAE,8BAA8B;aACxC,GAAG,EAAE,mBAAmB;;aAGxB,KAAK,EAAE,OAAO;aACd,WAAW,EAAE,WAAW;aACxB,QAAQ,EAAE,qBAAqB;aAC/B,GAAG,EAAE,UAAU;;aAGf,KAAK,EAAE,OAAO;aACd,WAAW,EAAE,WAAW;aACxB,QAAQ,EAAE,qBAAqB;aAC/B,GAAG,EAAE,UAAU;EAET,CAAC;AAEX,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,uBAAuB,GAC/B,uBAAuB,CAUzB"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Where a bucket sends its events, which the provider declares as a resource
|
|
3
|
+
* of its own.
|
|
4
|
+
*/
|
|
5
|
+
import { attribute, blocks, field, properties, } from "../sim-tf-attributes.js";
|
|
6
|
+
import { blockAttribute } from "../sim-tf-nested-attributes.js";
|
|
7
|
+
import { notificationConfiguration } from "./sim-tf-map-s3-notification-destinations.js";
|
|
8
|
+
/**
|
|
9
|
+
* The three destination blocks, and what the request calls each of them.
|
|
10
|
+
*
|
|
11
|
+
* `destination` is the Terraform attribute holding the ARN, and `arn` is the
|
|
12
|
+
* key it is written under, which repeats the service's name on all three.
|
|
13
|
+
*/
|
|
14
|
+
export const notificationDestinations = [
|
|
15
|
+
{
|
|
16
|
+
block: "lambda_function",
|
|
17
|
+
destination: "lambda_function_arn",
|
|
18
|
+
property: "LambdaFunctionConfigurations",
|
|
19
|
+
arn: "LambdaFunctionArn",
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
block: "queue",
|
|
23
|
+
destination: "queue_arn",
|
|
24
|
+
property: "QueueConfigurations",
|
|
25
|
+
arn: "QueueArn",
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
block: "topic",
|
|
29
|
+
destination: "topic_arn",
|
|
30
|
+
property: "TopicConfigurations",
|
|
31
|
+
arn: "TopicArn",
|
|
32
|
+
},
|
|
33
|
+
];
|
|
34
|
+
/**
|
|
35
|
+
* The notification configuration a bucket is deployed with.
|
|
36
|
+
*
|
|
37
|
+
* This is a Resource of its own rather than a bucket property, for the reason
|
|
38
|
+
* CDK gives it one as well. A function's `AWS::Lambda::Permission` names the
|
|
39
|
+
* bucket whose events it admits, so a bucket naming the function back is a
|
|
40
|
+
* circular dependency CloudFormation refuses. Terraform declares the same three
|
|
41
|
+
* resources and has no cycle, because the notification sits between them, and
|
|
42
|
+
* `Custom::S3BucketNotifications` is that resource here. Simulated
|
|
43
|
+
* CloudFormation applies one with a single
|
|
44
|
+
* PutBucketNotificationConfiguration call, after everything the plan declared
|
|
45
|
+
* it to come after.
|
|
46
|
+
*
|
|
47
|
+
* The Resource carries the SDK request shape rather than the CloudFormation
|
|
48
|
+
* one, which is what CDK's own provider function is handed, and it is the
|
|
49
|
+
* closer of the two to what Terraform writes: a list of events per destination
|
|
50
|
+
* rather than one configuration per event.
|
|
51
|
+
*/
|
|
52
|
+
export function bucketNotification(context) {
|
|
53
|
+
return {
|
|
54
|
+
Type: "Custom::S3BucketNotifications",
|
|
55
|
+
Properties: properties({
|
|
56
|
+
BucketName: attribute(context, "bucket"),
|
|
57
|
+
NotificationConfiguration: notificationConfiguration(context),
|
|
58
|
+
}),
|
|
59
|
+
requires: ["BucketName", "NotificationConfiguration"],
|
|
60
|
+
lost: notificationLost(context),
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* What the notification configuration could not carry across.
|
|
65
|
+
*
|
|
66
|
+
* A destination whose ARN the plan left unresolvable is dropped, since a
|
|
67
|
+
* configuration naming nothing would raise its events at nothing. EventBridge
|
|
68
|
+
* delivery is dropped too: simulated S3 refuses an `EventBridgeConfiguration`
|
|
69
|
+
* by name rather than accepting one it would never deliver through.
|
|
70
|
+
*/
|
|
71
|
+
function notificationLost(context) {
|
|
72
|
+
const dropped = notificationDestinations.filter((destination) => blocks(context, destination.block).some((_, index) => blockAttribute(context, destination.block, index, destination.destination) === undefined));
|
|
73
|
+
return [
|
|
74
|
+
...dropped.map((destination) => destination.block),
|
|
75
|
+
...(field(context.resource.values, "eventbridge") === true
|
|
76
|
+
? ["eventbridge"]
|
|
77
|
+
: []),
|
|
78
|
+
];
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=sim-tf-map-s3-notification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-s3-notification.js","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-s3-notification.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,SAAS,EACT,MAAM,EACN,KAAK,EACL,UAAU,GAEX,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,8CAA8C,CAAC;AAEzF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC;QACE,KAAK,EAAE,iBAAiB;QACxB,WAAW,EAAE,qBAAqB;QAClC,QAAQ,EAAE,8BAA8B;QACxC,GAAG,EAAE,mBAAmB;KACzB;IACD;QACE,KAAK,EAAE,OAAO;QACd,WAAW,EAAE,WAAW;QACxB,QAAQ,EAAE,qBAAqB;QAC/B,GAAG,EAAE,UAAU;KAChB;IACD;QACE,KAAK,EAAE,OAAO;QACd,WAAW,EAAE,WAAW;QACxB,QAAQ,EAAE,qBAAqB;QAC/B,GAAG,EAAE,UAAU;KAChB;CACO,CAAC;AASX;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAgC;IAEhC,OAAO;QACL,IAAI,EAAE,+BAA+B;QACrC,UAAU,EAAE,UAAU,CAAC;YACrB,UAAU,EAAE,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC;YACxC,yBAAyB,EAAE,yBAAyB,CAAC,OAAO,CAAC;SAC9D,CAAC;QACF,QAAQ,EAAE,CAAC,YAAY,EAAE,2BAA2B,CAAC;QACrD,IAAI,EAAE,gBAAgB,CAAC,OAAO,CAAC;KAChC,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,gBAAgB,CAAC,OAAgC;IACxD,MAAM,OAAO,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAC9D,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,CACrC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CACX,cAAc,CACZ,OAAO,EACP,WAAW,CAAC,KAAK,EACjB,KAAK,EACL,WAAW,CAAC,WAAW,CACxB,KAAK,SAAS,CAClB,CACF,CAAC;IAEF,OAAO;QACL,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC;QAClD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,KAAK,IAAI;YACxD,CAAC,CAAC,CAAC,aAAa,CAAC;YACjB,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { SimCfnTemplateValue } from "../../service/cloudformation/template/value/sim-cfn-template-value.js";
|
|
2
|
+
import { type TerraformMappingContext } from "../sim-tf-attributes.js";
|
|
3
|
+
/** The CORS rules a bucket answers browser requests under. */
|
|
4
|
+
export declare function cors(context: TerraformMappingContext): Record<string, SimCfnTemplateValue>;
|
|
5
|
+
/** The default encryption a bucket applies, as CloudFormation declares it. */
|
|
6
|
+
export declare function encryption(context: TerraformMappingContext): Record<string, SimCfnTemplateValue>;
|
|
7
|
+
//# sourceMappingURL=sim-tf-map-s3-rules.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-map-s3-rules.d.ts","sourceRoot":"","sources":["../../../src/terraform/map/sim-tf-map-s3-rules.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uEAAuE,CAAC;AACjH,OAAO,EAIL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAC;AAEjC,8DAA8D;AAC9D,wBAAgB,IAAI,CAClB,OAAO,EAAE,uBAAuB,GAC/B,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAWrC;AAED,8EAA8E;AAC9E,wBAAgB,UAAU,CACxB,OAAO,EAAE,uBAAuB,GAC/B,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAQrC"}
|
|
@@ -1,11 +1,28 @@
|
|
|
1
1
|
/*
|
|
2
|
+
* The two bucket sections that are lists of rules rather than flat settings.
|
|
3
|
+
*
|
|
4
|
+
* Versioning and the public access block are renames. CORS and default
|
|
5
|
+
* encryption arrive as repeating Terraform blocks and CloudFormation holds
|
|
6
|
+
* each as a list of rules under a wrapper of its own, so both are rebuilt
|
|
7
|
+
* rather than carried across.
|
|
8
|
+
*
|
|
2
9
|
* Reading a plan means reading records whose keys come from the document
|
|
3
10
|
* rather than from this code, so the object-injection rule fires on every
|
|
4
11
|
* lookup. The records are parsed JSON with no prototype of their own.
|
|
5
12
|
*/
|
|
6
13
|
// oxlint-disable security/detect-object-injection
|
|
7
|
-
import { isRecord } from "
|
|
8
|
-
import { blocks, field, properties, } from "
|
|
14
|
+
import { isRecord } from "../../util/type-guard/record.js";
|
|
15
|
+
import { blocks, field, properties, } from "../sim-tf-attributes.js";
|
|
16
|
+
/** The CORS rules a bucket answers browser requests under. */
|
|
17
|
+
export function cors(context) {
|
|
18
|
+
const rules = blocks(context, "cors_rule").map((rule) => properties({
|
|
19
|
+
AllowedHeaders: field(rule, "allowed_headers"),
|
|
20
|
+
AllowedMethods: field(rule, "allowed_methods"),
|
|
21
|
+
AllowedOrigins: field(rule, "allowed_origins"),
|
|
22
|
+
MaxAge: field(rule, "max_age_seconds"),
|
|
23
|
+
}));
|
|
24
|
+
return { CorsConfiguration: { CorsRules: rules } };
|
|
25
|
+
}
|
|
9
26
|
/** The default encryption a bucket applies, as CloudFormation declares it. */
|
|
10
27
|
export function encryption(context) {
|
|
11
28
|
return {
|
|
@@ -29,4 +46,4 @@ function encryptionRule(rule) {
|
|
|
29
46
|
}),
|
|
30
47
|
};
|
|
31
48
|
}
|
|
32
|
-
//# sourceMappingURL=sim-tf-map-s3-
|
|
49
|
+
//# sourceMappingURL=sim-tf-map-s3-rules.js.map
|