@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,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How a Terraform reference string is read, before anything is looked up.
|
|
3
|
+
*
|
|
4
|
+
* A reference is text the configuration wrote, and two things about that text
|
|
5
|
+
* have to be settled before a resource can be found behind it. Which of the
|
|
6
|
+
* forms Terraform lists is the one to follow, and what the reference means
|
|
7
|
+
* from outside the module that wrote it.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* References ordered longest first.
|
|
11
|
+
*
|
|
12
|
+
* Terraform lists the attribute form and the bare resource form of one
|
|
13
|
+
* reference. The attribute form is longer, and it is the one that resolves to
|
|
14
|
+
* the value being read rather than to the resource as a whole.
|
|
15
|
+
*/
|
|
16
|
+
export function longestFirst(references) {
|
|
17
|
+
return references.toSorted((a, b) => b.length - a.length);
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Scopes that name something other than a resource of the same module.
|
|
21
|
+
*
|
|
22
|
+
* A reference under one of these is resolved by Terraform rather than by an
|
|
23
|
+
* address lookup, and prefixing it with the module path would invent an
|
|
24
|
+
* address no resource has.
|
|
25
|
+
*/
|
|
26
|
+
const unqualifiedScopes = [
|
|
27
|
+
"var.",
|
|
28
|
+
"local.",
|
|
29
|
+
"each.",
|
|
30
|
+
"count.",
|
|
31
|
+
"self.",
|
|
32
|
+
"data.",
|
|
33
|
+
"path.",
|
|
34
|
+
"terraform.",
|
|
35
|
+
];
|
|
36
|
+
/**
|
|
37
|
+
* An address split on the dots between its segments.
|
|
38
|
+
*
|
|
39
|
+
* A `count` or `for_each` key can hold anything, including a dot, so the dots
|
|
40
|
+
* inside a bracketed key are not separators. `module.hosts["a.example.com"]`
|
|
41
|
+
* is two segments rather than four.
|
|
42
|
+
*/
|
|
43
|
+
export function addressSegments(address) {
|
|
44
|
+
const segments = [];
|
|
45
|
+
let current = "";
|
|
46
|
+
let bracketed = false;
|
|
47
|
+
for (const character of address) {
|
|
48
|
+
if (character === "[") {
|
|
49
|
+
bracketed = true;
|
|
50
|
+
}
|
|
51
|
+
else if (character === "]") {
|
|
52
|
+
bracketed = false;
|
|
53
|
+
}
|
|
54
|
+
if (character === "." && !bracketed) {
|
|
55
|
+
segments.push(current);
|
|
56
|
+
current = "";
|
|
57
|
+
continue;
|
|
58
|
+
}
|
|
59
|
+
current += character;
|
|
60
|
+
}
|
|
61
|
+
return [...segments, current];
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* The module instance path a module output was read through.
|
|
65
|
+
*
|
|
66
|
+
* `module.workers["blue"].module.queue.queue_arn` is the output `queue_arn` of
|
|
67
|
+
* the call `queue` inside the instance `workers["blue"]`. The output's own
|
|
68
|
+
* references are relative to that path, keys and all, where the index the
|
|
69
|
+
* output was found in is keyed by call name alone.
|
|
70
|
+
*/
|
|
71
|
+
export function moduleOutputPath(qualified) {
|
|
72
|
+
return addressSegments(qualified)
|
|
73
|
+
.slice(0, -1)
|
|
74
|
+
.filter((_, position) => position % 2 === 1);
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* A reference with every `count` and `for_each` key taken out of it.
|
|
78
|
+
*
|
|
79
|
+
* A module declares its outputs once however many instances of the call there
|
|
80
|
+
* are, so the output index is keyed by call path. A reference made from inside
|
|
81
|
+
* one instance carries that instance's key, and this is what it is looked up
|
|
82
|
+
* by.
|
|
83
|
+
*/
|
|
84
|
+
export function withoutInstanceKeys(reference) {
|
|
85
|
+
return reference.replaceAll(/\[[^\]]*\]/gu, "");
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* A module-relative reference turned into a plan-wide address.
|
|
89
|
+
*
|
|
90
|
+
* References inside a module name their own module's resources without the
|
|
91
|
+
* module prefix that `planned_values` puts on them. A reference to another
|
|
92
|
+
* module's output is qualified the same way, because the output index is keyed
|
|
93
|
+
* by the full call path and a nested call would otherwise miss it.
|
|
94
|
+
*/
|
|
95
|
+
export function qualifiedReference(reference, modulePath) {
|
|
96
|
+
if (modulePath.length === 0 ||
|
|
97
|
+
unqualifiedScopes.some((scope) => reference.startsWith(scope))) {
|
|
98
|
+
return reference;
|
|
99
|
+
}
|
|
100
|
+
return `${modulePath.map((call) => `module.${call}`).join(".")}.${reference}`;
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=sim-tf-reference-address.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-reference-address.js","sourceRoot":"","sources":["../../src/terraform/sim-tf-reference-address.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,UAA6B;IACxD,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,iBAAiB,GAAG;IACxB,MAAM;IACN,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,OAAO;IACP,OAAO;IACP,OAAO;IACP,YAAY;CACb,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,OAAe;IAC7C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,KAAK,MAAM,SAAS,IAAI,OAAO,EAAE,CAAC;QAChC,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;YACtB,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;aAAM,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;YAC7B,SAAS,GAAG,KAAK,CAAC;QACpB,CAAC;QAED,IAAI,SAAS,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YACpC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,OAAO,GAAG,EAAE,CAAC;YACb,SAAS;QACX,CAAC;QAED,OAAO,IAAI,SAAS,CAAC;IACvB,CAAC;IAED,OAAO,CAAC,GAAG,QAAQ,EAAE,OAAO,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAiB;IAChD,OAAO,eAAe,CAAC,SAAS,CAAC;SAC9B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SACZ,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAAC,SAAiB;IACnD,OAAO,SAAS,CAAC,UAAU,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAChC,SAAiB,EACjB,UAA6B;IAE7B,IACE,UAAU,CAAC,MAAM,KAAK,CAAC;QACvB,iBAAiB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAC9D,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,EAAE,CAAC;AAChF,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import type { SimCfnTemplateValue } from "../service/cloudformation/template/value/sim-cfn-template-value.js";
|
|
2
|
+
import type { TerraformResource } from "./sim-tf-resource.type.js";
|
|
3
|
+
/**
|
|
4
|
+
* Resolves a Terraform reference against the resources a template declares.
|
|
5
|
+
*
|
|
6
|
+
* A reference is an address optionally followed by the attribute being read.
|
|
7
|
+
* Terraform lists both forms for the same reference, so the longest address
|
|
8
|
+
* matching a resource wins and what is left over is the attribute.
|
|
9
|
+
*
|
|
10
|
+
* The resources given are the ones the template will hold, rather than every
|
|
11
|
+
* resource of the plan. A reference to a resource the template does not
|
|
12
|
+
* declare resolves to nothing, so no property can come out of this naming a
|
|
13
|
+
* logical ID that is not there.
|
|
14
|
+
*/
|
|
15
|
+
export declare class TerraformReferenceResolver {
|
|
16
|
+
private readonly byAddress;
|
|
17
|
+
private readonly moduleOutputs;
|
|
18
|
+
private readonly logicalIds;
|
|
19
|
+
constructor(resources: readonly TerraformResource[], moduleOutputs?: ReadonlyMap<string, readonly string[]>);
|
|
20
|
+
/** The logical ID the template declares one address under. */
|
|
21
|
+
logicalId(address: string): string;
|
|
22
|
+
/**
|
|
23
|
+
* The resource at one address, for a caller that needs the resource rather
|
|
24
|
+
* than a value read off it. A mapping reading a name out of the resource its
|
|
25
|
+
* own attribute refers to is what wants this.
|
|
26
|
+
*/
|
|
27
|
+
resource(address: string): TerraformResource | undefined;
|
|
28
|
+
/**
|
|
29
|
+
* The CloudFormation value one reference stands for.
|
|
30
|
+
*
|
|
31
|
+
* A reference to a resource the template does not declare returns undefined,
|
|
32
|
+
* and so does one whose attribute has no entry in the read table. The caller
|
|
33
|
+
* decides what an unresolvable reference means for the Resource holding it.
|
|
34
|
+
*/
|
|
35
|
+
resolve(reference: string, modulePath: readonly string[]): SimCfnTemplateValue | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* The address of the resource one reference names.
|
|
38
|
+
*
|
|
39
|
+
* A fold needs the resource a reference points at rather than the value read
|
|
40
|
+
* off it, because it is merging properties into that resource's template,
|
|
41
|
+
* and so does the ordering pass.
|
|
42
|
+
*/
|
|
43
|
+
targetAddress(reference: string, modulePath: readonly string[]): string | undefined;
|
|
44
|
+
/**
|
|
45
|
+
* The attribute a reference reads off the resource behind it.
|
|
46
|
+
*
|
|
47
|
+
* A reference naming a resource address and nothing else names no attribute,
|
|
48
|
+
* and is the resource itself. A reference through a module output names the
|
|
49
|
+
* output rather than the attribute, and the output's own expression says
|
|
50
|
+
* which attribute that is.
|
|
51
|
+
*/
|
|
52
|
+
private attributeName;
|
|
53
|
+
private target;
|
|
54
|
+
/**
|
|
55
|
+
* The module output one reference names.
|
|
56
|
+
*
|
|
57
|
+
* The index is keyed by module call path, since a module declares its
|
|
58
|
+
* outputs once however many instances of the call there are. A reference
|
|
59
|
+
* made from inside one instance carries that instance's key, so the key
|
|
60
|
+
* comes off when the qualified form finds nothing.
|
|
61
|
+
*/
|
|
62
|
+
private moduleOutput;
|
|
63
|
+
/**
|
|
64
|
+
* The resource a module output leads to.
|
|
65
|
+
*
|
|
66
|
+
* The output's own expression names it, in terms of the module declaring the
|
|
67
|
+
* output, so following one is resolving that expression again one module
|
|
68
|
+
* down. An output built out of several resources returns the first that
|
|
69
|
+
* resolves, and the depth limit stops a module whose outputs refer to each
|
|
70
|
+
* other from looping.
|
|
71
|
+
*/
|
|
72
|
+
private throughModuleOutput;
|
|
73
|
+
/**
|
|
74
|
+
* The resource whose address is the longest prefix of this reference.
|
|
75
|
+
*
|
|
76
|
+
* `aws_iam_role.processor.arn` has to find `aws_iam_role.processor` and leave
|
|
77
|
+
* `arn` behind, and a `for_each` instance address carries a bracketed key
|
|
78
|
+
* that is part of the address rather than an attribute.
|
|
79
|
+
*/
|
|
80
|
+
private longestMatch;
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=sim-tf-reference.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-reference.d.ts","sourceRoot":"","sources":["../../src/terraform/sim-tf-reference.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oEAAoE,CAAC;AAC9G,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAUnE;;;;;;;;;;;GAWG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyC;IACnE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAyC;IACvE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IAEjD,YACE,SAAS,EAAE,SAAS,iBAAiB,EAAE,EACvC,aAAa,GAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAa,EAOlE;IAED,8DAA8D;IACvD,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExC;IAED;;;;OAIG;IACI,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAE9D;IAED;;;;;;OAMG;IACI,OAAO,CACZ,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,mBAAmB,GAAG,SAAS,CAuBjC;IAED;;;;;;OAMG;IACI,aAAa,CAClB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,MAAM,GAAG,SAAS,CAEpB;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,MAAM;IAId;;;;;;;OAOG;IACH,OAAO,CAAC,YAAY;IAOpB;;;;;;;;OAQG;IACH,OAAO,CAAC,mBAAmB;IA6B3B;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;CAerB"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
import { terraformAttributeReads } from "./sim-tf-attribute-reads.js";
|
|
2
|
+
import { TerraformLogicalIds } from "./sim-tf-logical-id.js";
|
|
3
|
+
import { longestFirst, moduleOutputPath, qualifiedReference, withoutInstanceKeys, } from "./sim-tf-reference-address.js";
|
|
4
|
+
/**
|
|
5
|
+
* Resolves a Terraform reference against the resources a template declares.
|
|
6
|
+
*
|
|
7
|
+
* A reference is an address optionally followed by the attribute being read.
|
|
8
|
+
* Terraform lists both forms for the same reference, so the longest address
|
|
9
|
+
* matching a resource wins and what is left over is the attribute.
|
|
10
|
+
*
|
|
11
|
+
* The resources given are the ones the template will hold, rather than every
|
|
12
|
+
* resource of the plan. A reference to a resource the template does not
|
|
13
|
+
* declare resolves to nothing, so no property can come out of this naming a
|
|
14
|
+
* logical ID that is not there.
|
|
15
|
+
*/
|
|
16
|
+
export class TerraformReferenceResolver {
|
|
17
|
+
byAddress;
|
|
18
|
+
moduleOutputs;
|
|
19
|
+
logicalIds;
|
|
20
|
+
constructor(resources, moduleOutputs = new Map()) {
|
|
21
|
+
this.byAddress = new Map(resources.map((resource) => [resource.address, resource]));
|
|
22
|
+
this.moduleOutputs = moduleOutputs;
|
|
23
|
+
this.logicalIds = new TerraformLogicalIds(this.byAddress.keys());
|
|
24
|
+
}
|
|
25
|
+
/** The logical ID the template declares one address under. */
|
|
26
|
+
logicalId(address) {
|
|
27
|
+
return this.logicalIds.of(address);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* The resource at one address, for a caller that needs the resource rather
|
|
31
|
+
* than a value read off it. A mapping reading a name out of the resource its
|
|
32
|
+
* own attribute refers to is what wants this.
|
|
33
|
+
*/
|
|
34
|
+
resource(address) {
|
|
35
|
+
return this.byAddress.get(address);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* The CloudFormation value one reference stands for.
|
|
39
|
+
*
|
|
40
|
+
* A reference to a resource the template does not declare returns undefined,
|
|
41
|
+
* and so does one whose attribute has no entry in the read table. The caller
|
|
42
|
+
* decides what an unresolvable reference means for the Resource holding it.
|
|
43
|
+
*/
|
|
44
|
+
resolve(reference, modulePath) {
|
|
45
|
+
const qualified = qualifiedReference(reference, modulePath);
|
|
46
|
+
const target = this.target(qualified);
|
|
47
|
+
if (target === undefined) {
|
|
48
|
+
return undefined;
|
|
49
|
+
}
|
|
50
|
+
const attribute = this.attributeName(qualified, target.address);
|
|
51
|
+
const read = attribute === undefined
|
|
52
|
+
? "Ref"
|
|
53
|
+
: terraformAttributeReads.get(`${target.type}.${attribute}`);
|
|
54
|
+
if (read === undefined) {
|
|
55
|
+
return undefined;
|
|
56
|
+
}
|
|
57
|
+
const logicalId = this.logicalId(target.address);
|
|
58
|
+
return read === "Ref"
|
|
59
|
+
? { Ref: logicalId }
|
|
60
|
+
: { "Fn::GetAtt": [logicalId, read] };
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* The address of the resource one reference names.
|
|
64
|
+
*
|
|
65
|
+
* A fold needs the resource a reference points at rather than the value read
|
|
66
|
+
* off it, because it is merging properties into that resource's template,
|
|
67
|
+
* and so does the ordering pass.
|
|
68
|
+
*/
|
|
69
|
+
targetAddress(reference, modulePath) {
|
|
70
|
+
return this.target(qualifiedReference(reference, modulePath))?.address;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* The attribute a reference reads off the resource behind it.
|
|
74
|
+
*
|
|
75
|
+
* A reference naming a resource address and nothing else names no attribute,
|
|
76
|
+
* and is the resource itself. A reference through a module output names the
|
|
77
|
+
* output rather than the attribute, and the output's own expression says
|
|
78
|
+
* which attribute that is.
|
|
79
|
+
*/
|
|
80
|
+
attributeName(qualified, address) {
|
|
81
|
+
if (qualified === address) {
|
|
82
|
+
return undefined;
|
|
83
|
+
}
|
|
84
|
+
if (qualified.startsWith(`${address}.`)) {
|
|
85
|
+
return qualified.slice(address.length + 1);
|
|
86
|
+
}
|
|
87
|
+
const [longest] = longestFirst(this.moduleOutput(qualified) ?? []);
|
|
88
|
+
return longest?.split(".").pop();
|
|
89
|
+
}
|
|
90
|
+
target(qualified) {
|
|
91
|
+
return this.longestMatch(qualified) ?? this.throughModuleOutput(qualified);
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* The module output one reference names.
|
|
95
|
+
*
|
|
96
|
+
* The index is keyed by module call path, since a module declares its
|
|
97
|
+
* outputs once however many instances of the call there are. A reference
|
|
98
|
+
* made from inside one instance carries that instance's key, so the key
|
|
99
|
+
* comes off when the qualified form finds nothing.
|
|
100
|
+
*/
|
|
101
|
+
moduleOutput(qualified) {
|
|
102
|
+
return (this.moduleOutputs.get(qualified) ??
|
|
103
|
+
this.moduleOutputs.get(withoutInstanceKeys(qualified)));
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* The resource a module output leads to.
|
|
107
|
+
*
|
|
108
|
+
* The output's own expression names it, in terms of the module declaring the
|
|
109
|
+
* output, so following one is resolving that expression again one module
|
|
110
|
+
* down. An output built out of several resources returns the first that
|
|
111
|
+
* resolves, and the depth limit stops a module whose outputs refer to each
|
|
112
|
+
* other from looping.
|
|
113
|
+
*/
|
|
114
|
+
throughModuleOutput(qualified, depth = 0) {
|
|
115
|
+
const output = this.moduleOutput(qualified);
|
|
116
|
+
if (output === undefined || depth > 8) {
|
|
117
|
+
return undefined;
|
|
118
|
+
}
|
|
119
|
+
// The path the output was read through rather than the one it was
|
|
120
|
+
// declared under, so an output reached inside a `for_each` instance
|
|
121
|
+
// follows its own instance's resources.
|
|
122
|
+
const instance = moduleOutputPath(qualified);
|
|
123
|
+
for (const reference of longestFirst(output)) {
|
|
124
|
+
const nested = qualifiedReference(reference, instance);
|
|
125
|
+
const target = this.longestMatch(nested) ??
|
|
126
|
+
this.throughModuleOutput(nested, depth + 1);
|
|
127
|
+
if (target !== undefined) {
|
|
128
|
+
return target;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return undefined;
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* The resource whose address is the longest prefix of this reference.
|
|
135
|
+
*
|
|
136
|
+
* `aws_iam_role.processor.arn` has to find `aws_iam_role.processor` and leave
|
|
137
|
+
* `arn` behind, and a `for_each` instance address carries a bracketed key
|
|
138
|
+
* that is part of the address rather than an attribute.
|
|
139
|
+
*/
|
|
140
|
+
longestMatch(qualified) {
|
|
141
|
+
let best;
|
|
142
|
+
for (const [address, resource] of this.byAddress) {
|
|
143
|
+
if (qualified !== address && !qualified.startsWith(`${address}.`)) {
|
|
144
|
+
continue;
|
|
145
|
+
}
|
|
146
|
+
if (best === undefined || address.length > best.address.length) {
|
|
147
|
+
best = resource;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
return best;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
//# sourceMappingURL=sim-tf-reference.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-reference.js","sourceRoot":"","sources":["../../src/terraform/sim-tf-reference.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { TerraformResource } from "./sim-tf-resource.type.js";
|
|
2
|
+
import type { TerraformReferenceResolver } from "./sim-tf-reference.js";
|
|
3
|
+
/**
|
|
4
|
+
* The resource one attribute of a resource refers to.
|
|
5
|
+
*
|
|
6
|
+
* A fold reads the resource it configures this way, because its parent
|
|
7
|
+
* attribute holds a reference rather than a value. A bucket or a role being
|
|
8
|
+
* created by the same plan has no name until it exists, so the reference is
|
|
9
|
+
* all there is to go on.
|
|
10
|
+
*
|
|
11
|
+
* Terraform lists both the attribute form and the bare resource form of one
|
|
12
|
+
* reference, and both lead to the same resource, so the first that resolves
|
|
13
|
+
* wins.
|
|
14
|
+
*/
|
|
15
|
+
export declare function terraformReferencedResource(resource: TerraformResource, key: string, resolver: TerraformReferenceResolver): TerraformResource | undefined;
|
|
16
|
+
/** The address of the resource one attribute refers to. */
|
|
17
|
+
export declare function terraformReferencedAddress(resource: TerraformResource, key: string, resolver: TerraformReferenceResolver): string | undefined;
|
|
18
|
+
//# sourceMappingURL=sim-tf-referenced.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-referenced.d.ts","sourceRoot":"","sources":["../../src/terraform/sim-tf-referenced.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAGxE;;;;;;;;;;;GAWG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,iBAAiB,EAC3B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,0BAA0B,GACnC,iBAAiB,GAAG,SAAS,CAI/B;AAED,2DAA2D;AAC3D,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,iBAAiB,EAC3B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,0BAA0B,GACnC,MAAM,GAAG,SAAS,CAoBpB"}
|
|
@@ -0,0 +1,40 @@
|
|
|
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 { longestFirst } from "./sim-tf-reference-address.js";
|
|
9
|
+
/**
|
|
10
|
+
* The resource one attribute of a resource refers to.
|
|
11
|
+
*
|
|
12
|
+
* A fold reads the resource it configures this way, because its parent
|
|
13
|
+
* attribute holds a reference rather than a value. A bucket or a role being
|
|
14
|
+
* created by the same plan has no name until it exists, so the reference is
|
|
15
|
+
* all there is to go on.
|
|
16
|
+
*
|
|
17
|
+
* Terraform lists both the attribute form and the bare resource form of one
|
|
18
|
+
* reference, and both lead to the same resource, so the first that resolves
|
|
19
|
+
* wins.
|
|
20
|
+
*/
|
|
21
|
+
export function terraformReferencedResource(resource, key, resolver) {
|
|
22
|
+
const address = terraformReferencedAddress(resource, key, resolver);
|
|
23
|
+
return address === undefined ? undefined : resolver.resource(address);
|
|
24
|
+
}
|
|
25
|
+
/** The address of the resource one attribute refers to. */
|
|
26
|
+
export function terraformReferencedAddress(resource, key, resolver) {
|
|
27
|
+
const expression = resource.expressions[key];
|
|
28
|
+
if (!isRecord(expression)) {
|
|
29
|
+
return undefined;
|
|
30
|
+
}
|
|
31
|
+
const references = longestFirst(expression.references ?? []);
|
|
32
|
+
for (const reference of references) {
|
|
33
|
+
const address = resolver.targetAddress(reference, resource.modulePath);
|
|
34
|
+
if (address !== undefined) {
|
|
35
|
+
return address;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return undefined;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=sim-tf-referenced.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-referenced.js","sourceRoot":"","sources":["../../src/terraform/sim-tf-referenced.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,kDAAkD;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAIxD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,2BAA2B,CACzC,QAA2B,EAC3B,GAAW,EACX,QAAoC;IAEpC,MAAM,OAAO,GAAG,0BAA0B,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAEpE,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AACxE,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,0BAA0B,CACxC,QAA2B,EAC3B,GAAW,EACX,QAAoC;IAEpC,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAE7C,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,UAAU,GAAG,YAAY,CAC5B,UAAkC,CAAC,UAAU,IAAI,EAAE,CACrD,CAAC;IAEF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;QAEvE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,OAAO,CAAC;QACjB,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { TerraformResource } from "./sim-tf-resource.type.js";
|
|
2
|
+
import type { TerraformBuildContext } from "./sim-tf-attributes.js";
|
|
3
|
+
import type { TerraformDeclaration } from "./sim-tf-mapping.type.js";
|
|
4
|
+
import type { TerraformSkipReason } from "./sim-tf-report.type.js";
|
|
5
|
+
/**
|
|
6
|
+
* Why the Resource a mapping builds is one the service would not accept.
|
|
7
|
+
*
|
|
8
|
+
* A plan can leave a value the service requires unresolvable, and a Resource
|
|
9
|
+
* built without it fails and takes the Stack's other Resources with it. The
|
|
10
|
+
* mapping names those properties under `requires`, and names under `refused`
|
|
11
|
+
* the case where every property is there and the service will not take one of
|
|
12
|
+
* the values. Either way the resource is left out of the template rather than
|
|
13
|
+
* deployed into a failure.
|
|
14
|
+
*/
|
|
15
|
+
export declare function terraformRefusal(declaration: TerraformDeclaration, build: TerraformBuildContext, unresolved: TerraformSkipReason): TerraformSkipReason | undefined;
|
|
16
|
+
/**
|
|
17
|
+
* The properties a mapping declares as required and could not fill.
|
|
18
|
+
*
|
|
19
|
+
* A resource with no mapping at all has none. It is refused for the type
|
|
20
|
+
* before any value is read, and there is no mapping to ask what it needed.
|
|
21
|
+
*/
|
|
22
|
+
export declare function terraformMissingProperties(resource: TerraformResource, build: TerraformBuildContext): readonly string[];
|
|
23
|
+
//# sourceMappingURL=sim-tf-refusal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-refusal.d.ts","sourceRoot":"","sources":["../../src/terraform/sim-tf-refusal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAEpE,OAAO,KAAK,EACV,oBAAoB,EAErB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEnE;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,oBAAoB,EACjC,KAAK,EAAE,qBAAqB,EAC5B,UAAU,EAAE,mBAAmB,GAC9B,mBAAmB,GAAG,SAAS,CAQjC;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,EAAE,qBAAqB,GAC3B,SAAS,MAAM,EAAE,CAMnB"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { terraformResourceMappings } from "./sim-tf-registry.js";
|
|
2
|
+
/**
|
|
3
|
+
* Why the Resource a mapping builds is one the service would not accept.
|
|
4
|
+
*
|
|
5
|
+
* A plan can leave a value the service requires unresolvable, and a Resource
|
|
6
|
+
* built without it fails and takes the Stack's other Resources with it. The
|
|
7
|
+
* mapping names those properties under `requires`, and names under `refused`
|
|
8
|
+
* the case where every property is there and the service will not take one of
|
|
9
|
+
* the values. Either way the resource is left out of the template rather than
|
|
10
|
+
* deployed into a failure.
|
|
11
|
+
*/
|
|
12
|
+
export function terraformRefusal(declaration, build, unresolved) {
|
|
13
|
+
const built = builtResource(declaration, build);
|
|
14
|
+
if (built.refused !== undefined) {
|
|
15
|
+
return built.refused;
|
|
16
|
+
}
|
|
17
|
+
return missing(built).length === 0 ? undefined : unresolved;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* The properties a mapping declares as required and could not fill.
|
|
21
|
+
*
|
|
22
|
+
* A resource with no mapping at all has none. It is refused for the type
|
|
23
|
+
* before any value is read, and there is no mapping to ask what it needed.
|
|
24
|
+
*/
|
|
25
|
+
export function terraformMissingProperties(resource, build) {
|
|
26
|
+
const mapping = terraformResourceMappings.get(resource.type);
|
|
27
|
+
return mapping === undefined
|
|
28
|
+
? []
|
|
29
|
+
: missing(builtResource({ resource, mapping }, build));
|
|
30
|
+
}
|
|
31
|
+
/** The Resource one declaration's mapping builds, against this plan. */
|
|
32
|
+
function builtResource(declaration, build) {
|
|
33
|
+
return declaration.mapping({
|
|
34
|
+
resource: declaration.resource,
|
|
35
|
+
resolver: build.resolver,
|
|
36
|
+
overrides: build.overrides,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
function missing(built) {
|
|
40
|
+
return (built.requires ?? []).filter(
|
|
41
|
+
// oxlint-disable-next-line security/detect-object-injection
|
|
42
|
+
(name) => built.Properties[name] === undefined);
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=sim-tf-refusal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-refusal.js","sourceRoot":"","sources":["../../src/terraform/sim-tf-refusal.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAOjE;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAC9B,WAAiC,EACjC,KAA4B,EAC5B,UAA+B;IAE/B,MAAM,KAAK,GAAG,aAAa,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAEhD,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC,OAAO,CAAC;IACvB,CAAC;IAED,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;AAC9D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CACxC,QAA2B,EAC3B,KAA4B;IAE5B,MAAM,OAAO,GAAG,yBAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE7D,OAAO,OAAO,KAAK,SAAS;QAC1B,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,wEAAwE;AACxE,SAAS,aAAa,CACpB,WAAiC,EACjC,KAA4B;IAE5B,OAAO,WAAW,CAAC,OAAO,CAAC;QACzB,QAAQ,EAAE,WAAW,CAAC,QAAQ;QAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,SAAS,OAAO,CAAC,KAA8B;IAC7C,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM;IAClC,4DAA4D;IAC5D,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,SAAS,CAC/C,CAAC;AACJ,CAAC"}
|
|
@@ -3,7 +3,8 @@ import type { TerraformResourceFold, TerraformResourceMapping } from "./sim-tf-m
|
|
|
3
3
|
* The Terraform resource types this import turns into CloudFormation Resources.
|
|
4
4
|
*
|
|
5
5
|
* A type with no entry is recorded as skipped, which is what the stack already
|
|
6
|
-
* does with a CloudFormation Resource type no simulated service models.
|
|
6
|
+
* does with a CloudFormation Resource type no simulated service models. The
|
|
7
|
+
* set grows a service at a time.
|
|
7
8
|
*/
|
|
8
9
|
export declare const terraformResourceMappings: ReadonlyMap<string, TerraformResourceMapping>;
|
|
9
10
|
/**
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-registry.d.ts","sourceRoot":"","sources":["../../src/terraform/sim-tf-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAiClC;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,EAAE,WAAW,CACjD,MAAM,EACN,wBAAwB,CA0BxB,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,WAAW,CAC9C,MAAM,EACN,qBAAqB,CAQrB,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { metricAlarm } from "./map/sim-tf-map-cloudwatch.js";
|
|
2
|
+
import { cognitoUserPool } from "./map/sim-tf-map-cognito.js";
|
|
3
|
+
import { cognitoUserPoolClient } from "./map/sim-tf-map-cognito-client.js";
|
|
4
|
+
import { dynamodbTable } from "./map/sim-tf-map-dynamodb.js";
|
|
5
|
+
import { ecrRepository } from "./map/sim-tf-map-ecr.js";
|
|
6
|
+
import { eventRule, eventTargetFolds } from "./map/sim-tf-map-events.js";
|
|
7
|
+
import { httpApi, httpApiStage } from "./map/sim-tf-map-http-api.js";
|
|
8
|
+
import { httpApiIntegration, httpApiRoute, } from "./map/sim-tf-map-http-api-routes.js";
|
|
9
|
+
import { iamRole, iamRoleFolds } from "./map/sim-tf-map-iam.js";
|
|
10
|
+
import { kmsAlias, kmsKey } from "./map/sim-tf-map-kms.js";
|
|
11
|
+
import { lambdaEventSourceMapping, lambdaFunction, lambdaPermission, } from "./map/sim-tf-map-lambda.js";
|
|
12
|
+
import { logGroup } from "./map/sim-tf-map-logs.js";
|
|
13
|
+
import { s3Bucket } from "./map/sim-tf-map-s3.js";
|
|
14
|
+
import { s3BucketFolds } from "./map/sim-tf-map-s3-folds.js";
|
|
15
|
+
import { s3LifecycleFolds } from "./map/sim-tf-map-s3-lifecycle.js";
|
|
16
|
+
import { bucketNotification } from "./map/sim-tf-map-s3-notification.js";
|
|
17
|
+
import { secretsManagerFolds, secretsManagerSecret, } from "./map/sim-tf-map-secretsmanager.js";
|
|
18
|
+
import { snsSubscription, snsTopic } from "./map/sim-tf-map-sns.js";
|
|
19
|
+
import { sqsQueue } from "./map/sim-tf-map-sqs.js";
|
|
20
|
+
import { sqsRedriveFolds } from "./map/sim-tf-map-sqs-redrive.js";
|
|
21
|
+
import { ssmParameter } from "./map/sim-tf-map-ssm.js";
|
|
22
|
+
/**
|
|
23
|
+
* The Terraform resource types this import turns into CloudFormation Resources.
|
|
24
|
+
*
|
|
25
|
+
* A type with no entry is recorded as skipped, which is what the stack already
|
|
26
|
+
* does with a CloudFormation Resource type no simulated service models. The
|
|
27
|
+
* set grows a service at a time.
|
|
28
|
+
*/
|
|
29
|
+
export const terraformResourceMappings = new Map([
|
|
30
|
+
["aws_apigatewayv2_api", httpApi],
|
|
31
|
+
["aws_apigatewayv2_integration", httpApiIntegration],
|
|
32
|
+
["aws_apigatewayv2_route", httpApiRoute],
|
|
33
|
+
["aws_apigatewayv2_stage", httpApiStage],
|
|
34
|
+
["aws_cloudwatch_event_rule", eventRule],
|
|
35
|
+
["aws_cloudwatch_log_group", logGroup],
|
|
36
|
+
["aws_cloudwatch_metric_alarm", metricAlarm],
|
|
37
|
+
["aws_cognito_user_pool", cognitoUserPool],
|
|
38
|
+
["aws_cognito_user_pool_client", cognitoUserPoolClient],
|
|
39
|
+
["aws_dynamodb_table", dynamodbTable],
|
|
40
|
+
["aws_ecr_repository", ecrRepository],
|
|
41
|
+
["aws_iam_role", iamRole],
|
|
42
|
+
["aws_kms_alias", kmsAlias],
|
|
43
|
+
["aws_kms_key", kmsKey],
|
|
44
|
+
["aws_lambda_event_source_mapping", lambdaEventSourceMapping],
|
|
45
|
+
["aws_lambda_function", lambdaFunction],
|
|
46
|
+
["aws_lambda_permission", lambdaPermission],
|
|
47
|
+
["aws_s3_bucket", s3Bucket],
|
|
48
|
+
["aws_s3_bucket_notification", bucketNotification],
|
|
49
|
+
["aws_secretsmanager_secret", secretsManagerSecret],
|
|
50
|
+
["aws_sns_topic", snsTopic],
|
|
51
|
+
["aws_sns_topic_subscription", snsSubscription],
|
|
52
|
+
["aws_sqs_queue", sqsQueue],
|
|
53
|
+
["aws_ssm_parameter", ssmParameter],
|
|
54
|
+
]);
|
|
55
|
+
/**
|
|
56
|
+
* The Terraform resource types that configure another resource rather than
|
|
57
|
+
* creating one of their own.
|
|
58
|
+
*/
|
|
59
|
+
export const terraformResourceFolds = new Map([
|
|
60
|
+
...s3BucketFolds,
|
|
61
|
+
...s3LifecycleFolds,
|
|
62
|
+
...iamRoleFolds,
|
|
63
|
+
...secretsManagerFolds,
|
|
64
|
+
...eventTargetFolds,
|
|
65
|
+
...sqsRedriveFolds,
|
|
66
|
+
]);
|
|
67
|
+
//# sourceMappingURL=sim-tf-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-registry.js","sourceRoot":"","sources":["../../src/terraform/sim-tf-registry.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EACL,kBAAkB,EAClB,YAAY,GACb,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EACL,wBAAwB,EACxB,cAAc,EACd,gBAAgB,GACjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EACL,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAGlC,IAAI,GAAG,CAAC;IACV,CAAC,sBAAsB,EAAE,OAAO,CAAC;IACjC,CAAC,8BAA8B,EAAE,kBAAkB,CAAC;IACpD,CAAC,wBAAwB,EAAE,YAAY,CAAC;IACxC,CAAC,wBAAwB,EAAE,YAAY,CAAC;IACxC,CAAC,2BAA2B,EAAE,SAAS,CAAC;IACxC,CAAC,0BAA0B,EAAE,QAAQ,CAAC;IACtC,CAAC,6BAA6B,EAAE,WAAW,CAAC;IAC5C,CAAC,uBAAuB,EAAE,eAAe,CAAC;IAC1C,CAAC,8BAA8B,EAAE,qBAAqB,CAAC;IACvD,CAAC,oBAAoB,EAAE,aAAa,CAAC;IACrC,CAAC,oBAAoB,EAAE,aAAa,CAAC;IACrC,CAAC,cAAc,EAAE,OAAO,CAAC;IACzB,CAAC,eAAe,EAAE,QAAQ,CAAC;IAC3B,CAAC,aAAa,EAAE,MAAM,CAAC;IACvB,CAAC,iCAAiC,EAAE,wBAAwB,CAAC;IAC7D,CAAC,qBAAqB,EAAE,cAAc,CAAC;IACvC,CAAC,uBAAuB,EAAE,gBAAgB,CAAC;IAC3C,CAAC,eAAe,EAAE,QAAQ,CAAC;IAC3B,CAAC,4BAA4B,EAAE,kBAAkB,CAAC;IAClD,CAAC,2BAA2B,EAAE,oBAAoB,CAAC;IACnD,CAAC,eAAe,EAAE,QAAQ,CAAC;IAC3B,CAAC,4BAA4B,EAAE,eAAe,CAAC;IAC/C,CAAC,eAAe,EAAE,QAAQ,CAAC;IAC3B,CAAC,mBAAmB,EAAE,YAAY,CAAC;CACpC,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAG/B,IAAI,GAAG,CAAC;IACV,GAAG,aAAa;IAChB,GAAG,gBAAgB;IACnB,GAAG,YAAY;IACf,GAAG,mBAAmB;IACtB,GAAG,gBAAgB;IACnB,GAAG,eAAe;CACnB,CAAC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { TerraformResource } from "./sim-tf-resource.type.js";
|
|
2
|
+
import type { TerraformSettledPlan } from "./sim-tf-settle.js";
|
|
3
|
+
import type { TerraformDeclaredResources } from "./sim-tf-declare.js";
|
|
4
|
+
import type { TerraformFoldedResources } from "./sim-tf-fold.js";
|
|
5
|
+
import type { TerraformImportReport } from "./sim-tf-report.type.js";
|
|
6
|
+
export interface TerraformImportPasses {
|
|
7
|
+
readonly resources: readonly TerraformResource[];
|
|
8
|
+
readonly settled: TerraformSettledPlan;
|
|
9
|
+
readonly declared: TerraformDeclaredResources;
|
|
10
|
+
readonly folded: TerraformFoldedResources;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* What an import did with every resource of the plan.
|
|
14
|
+
*
|
|
15
|
+
* Each resource is in exactly one of mapped, folded and skipped, so the three
|
|
16
|
+
* add up to the plan's managed resource count. That is what makes the mapped
|
|
17
|
+
* fraction a fraction of something, and what a reader checks the report
|
|
18
|
+
* against the configuration with.
|
|
19
|
+
*/
|
|
20
|
+
export declare function terraformImportReport(passes: TerraformImportPasses): TerraformImportReport;
|
|
21
|
+
//# sourceMappingURL=sim-tf-report.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-tf-report.d.ts","sourceRoot":"","sources":["../../src/terraform/sim-tf-report.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,KAAK,EACV,qBAAqB,EAGtB,MAAM,yBAAyB,CAAC;AAEjC,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,SAAS,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACjD,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,0BAA0B,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;CAC3C;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,qBAAqB,GAC5B,qBAAqB,CAcvB"}
|