@incdevco/framework
Version:
node.js lambda framework
1 lines • 38.6 kB
JSON
{"filter":false,"title":"stack.json","tooltip":"/stack/main/stack.json","undoManager":{"mark":97,"position":97,"stack":[[{"start":{"row":0,"column":0},"end":{"row":340,"column":1},"action":"insert","lines":["{"," \"AWSTemplateFormatVersion\": \"2010-09-09\","," \"Description\": \"Template to create all resources for each Client.\","," \"Parameters\": {"," \"ApiFunctionS3ObjectVersion\": {"," \"Type\": \"String\""," },"," \"AssetsBucket\": {"," \"Type\": \"String\""," },"," \"CertificateArn\": {"," \"Type\": \"String\""," },"," \"ClientId\": {"," \"Type\": \"String\""," },"," \"CognitoSyncFunctionS3ObjectVersion\": {"," \"Type\": \"String\""," },"," \"BucketListenerFunctionS3ObjectVersion\": {"," \"Type\": \"String\""," },"," \"DomainName\": {"," \"Type\": \"String\""," },"," \"Stage\": {"," \"Type\": \"String\""," },"," \"TableStreamListenerFunctionS3ObjectVersion\": {"," \"Type\": \"String\""," },"," \"Timestamp\": {"," \"Type\": \"String\""," },"," \"WebHooksFunctionS3ObjectVersion\": {"," \"Type\": \"String\""," }"," },"," \"Conditions\": {"," \"IsProduction\": {\"Fn::Equals\": [{\"Ref\": \"Stage\"}, \"production\"]}"," },"," \"Mappings\": {},"," \"Resources\": {"," \"ApiStack\": {"," \"Type\": \"AWS::CloudFormation::Stack\","," \"Properties\": {"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Parameters\": {"," \"ApiFunctionS3ObjectVersion\": {\"Ref\": \"ApiFunctionS3ObjectVersion\"},"," \"AssetsBucket\": {\"Ref\": \"AssetsBucket\"},"," \"CertificateArn\": {\"Ref\": \"CertificateArn\"},"," \"ClientId\": {\"Ref\": \"ClientId\"},"," \"DomainName\": {\"Fn::If\": ["," \"IsProduction\", "," {\"Ref\": \"DomainName\"}, "," {\"Fn::Join\": [\"\", ["," \"development.\","," {\"Ref\": \"DomainName\"}"," ]]}"," ]},"," \"HostedZoneId\": {\"Ref\": \"HostedZone\"},"," \"Stage\": {\"Ref\": \"Stage\"},"," \"Timestamp\": {\"Ref\": \"Timestamp\"}"," },"," \"TemplateURL\": {\"Fn::Join\": [\"\", ["," \"https://s3-\","," {\"Ref\": \"AWS::Region\"},"," \".amazonaws.com/\","," {\"Fn::ImportValue\": \"AssetsBucket\"},"," \"/cloud-formation-templates/client/api/stack.json\""," ]]}"," }"," },"," \"ApiFunctionEnvironment\": {"," \"Type\": \"Custom::LambdaEnvironment\","," \"Properties\": {"," \"ServiceToken\": {\"Fn::ImportValue\": \"CustomCFResourceFunctionArn\"},"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Options\": {"," \"FunctionName\": {\"Fn::GetAtt\": [\"ApiStack\", \"Outputs.FunctionName\"]},"," \"Environment\": {"," \"Variables\": {"," \"ACTIVE_CONVERSATION_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.ActiveConversationTable\"]},"," \"CONVERSATION_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.ConversationTable\"]},"," \"CUSTOMER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerTable\"]},"," \"CUSTOMER_BY_EMAIL_ADDRESS_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerByEmailAddressTable\"]},"," \"CUSTOMER_BY_PHONE_NUMBER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerByPhoneNumberTable\"]},"," \"EVENT_LOG_DELIVERY_STREAM_NAME\": {\"Fn::GetAtt\": [\"EventLogStack\", \"Outputs.DeliveryStreamName\"]},"," \"ISSUE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.IssueTable\"]},"," \"QUEUE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.QueueTable\"]},"," \"REPRESENTATIVE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.RepresentativeTable\"]},"," \"REQUEST_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.RequestTable\"]},"," \"USER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.UserTable\"]}"," }"," }"," }"," }"," },"," \"DataStack\": {"," \"Type\": \"AWS::CloudFormation::Stack\","," \"Properties\": {"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Parameters\": {"," \"AssetsBucket\": {\"Ref\": \"AssetsBucket\"},"," \"S3ObjectVersion\": {\"Ref\": \"TableStreamListenerFunctionS3ObjectVersion\"}"," },"," \"TemplateURL\": {\"Fn::Join\": [\"\", ["," \"https://s3-\","," {\"Ref\": \"AWS::Region\"},"," \".amazonaws.com/\","," {\"Fn::ImportValue\": \"AssetsBucket\"},"," \"/cloud-formation-templates/client/data/stack.json\""," ]]}"," }"," },"," \"EventLogStack\": {"," \"Type\": \"AWS::CloudFormation::Stack\","," \"Properties\": {"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Parameters\": {"," \"Stage\": {\"Ref\": \"Stage\"}"," },"," \"TemplateURL\": {\"Fn::Join\": [\"\", ["," \"https://s3-\","," {\"Ref\": \"AWS::Region\"},"," \".amazonaws.com/\","," {\"Fn::ImportValue\": \"AssetsBucket\"},"," \"/cloud-formation-templates/client/event-log/stack.json\""," ]]}"," }"," },"," \"HostedZone\": {"," \"Type\": \"AWS::Route53::HostedZone\","," \"Properties\": {"," \"Name\": {\"Fn::Join\": [\"\", ["," {\"Fn::If\": [\"IsProduction\", \"\", \"development.\"]},"," {\"Ref\": \"DomainName\"}"," ]]}"," }"," },"," \"LoggingStack\": {"," \"Type\": \"AWS::CloudFormation::Stack\","," \"Properties\": {"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Parameters\": {"," \"S3ObjectVersion\": {\"Ref\": \"BucketListenerFunctionS3ObjectVersion\"},"," \"AssetsBucket\": {\"Ref\": \"AssetsBucket\"}"," },"," \"TemplateURL\": {\"Fn::Join\": [\"\", ["," \"https://s3-\","," {\"Ref\": \"AWS::Region\"},"," \".amazonaws.com/\","," {\"Fn::ImportValue\": \"AssetsBucket\"},"," \"/cloud-formation-templates/client/logging/stack.json\""," ]]}"," }"," },"," \"LoggingBucketListenerFunctionEnvironment\": {"," \"Type\": \"Custom::LambdaEnvironment\","," \"Properties\": {"," \"ServiceToken\": {\"Fn::ImportValue\": \"CustomCFResourceFunctionArn\"},"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Options\": {"," \"FunctionName\": {\"Fn::GetAtt\": [\"LoggingStack\", \"Outputs.BucketListenerFunctionName\"]},"," \"Environment\": {"," \"Variables\": {"," \"EVENT_LOG_DELIVERY_STREAM_NAME\": {\"Fn::GetAtt\": [\"EventLogStack\", \"Outputs.DeliveryStreamName\"]}"," }"," }"," }"," }"," },"," \"TableStreamListenerFunctionEnvironment\": {"," \"Type\": \"Custom::LambdaEnvironment\","," \"Properties\": {"," \"ServiceToken\": {\"Fn::ImportValue\": \"CustomCFResourceFunctionArn\"},"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Options\": {"," \"FunctionName\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.TableStreamListenerFunctionName\"]},"," \"Environment\": {"," \"Variables\": {"," \"ACTIVE_CONVERSATION_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.ActiveConversationTable\"]},"," \"CONVERSATION_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.ConversationTable\"]},"," \"CUSTOMER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerTable\"]},"," \"CUSTOMER_BY_EMAIL_ADDRESS_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerByEmailAddressTable\"]},"," \"CUSTOMER_BY_PHONE_NUMBER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerByPhoneNumberTable\"]},"," \"EVENT_LOG_DELIVERY_STREAM_NAME\": {\"Fn::GetAtt\": [\"EventLogStack\", \"Outputs.DeliveryStreamName\"]},"," \"ISSUE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.IssueTable\"]},"," \"QUEUE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.QueueTable\"]},"," \"REPRESENTATIVE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.RepresentativeTable\"]},"," \"REQUEST_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.RequestTable\"]}"," }"," }"," }"," }"," },"," \"UsagePlan\": {"," \"Type\": \"AWS::ApiGateway::UsagePlan\","," \"Properties\": {"," \"ApiStages\": ["," {"," \"ApiId\": {\"Fn::GetAtt\": [\"ApiStack\", \"Outputs.RestApiId\"]},"," \"Stage\": {\"Ref\": \"Stage\"}"," }"," ],"," \"Description\": \"client usage plan\""," }"," },"," \"UserStack\": {"," \"Type\": \"AWS::CloudFormation::Stack\","," \"Properties\": {"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Parameters\": {"," \"AssetsS3Bucket\": {\"Fn::ImportValue\": \"AssetsBucket\"},"," \"RestApiId\": {\"Fn::GetAtt\": [\"ApiStack\", \"Outputs.RestApiId\"]},"," \"S3ObjectVersion\": {\"Ref\": \"CognitoSyncFunctionS3ObjectVersion\"},"," \"Stage\": {\"Ref\": \"Stage\"}"," },"," \"TemplateURL\": {\"Fn::Join\": [\"\", ["," \"https://s3-\","," {\"Ref\": \"AWS::Region\"},"," \".amazonaws.com/\","," {\"Fn::ImportValue\": \"AssetsBucket\"},"," \"/cloud-formation-templates/client/user/stack.json\""," ]]}"," }"," },"," \"WebClientStack\": {"," \"Type\": \"AWS::CloudFormation::Stack\","," \"Properties\": {"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Parameters\": {"," \"CertificateArn\": {\"Ref\": \"CertificateArn\"},"," \"DomainName\": {\"Ref\": \"DomainName\"},"," \"HostedZoneId\": {\"Ref\": \"HostedZone\"},"," \"LoggingBucketDomainName\": {\"Fn::GetAtt\": [\"LoggingStack\", \"Outputs.BucketDomainName\"]},"," \"LoggingBucket\": {\"Fn::GetAtt\": [\"LoggingStack\", \"Outputs.BucketName\"]},"," \"Stage\": {\"Ref\": \"Stage\"},"," \"UsagePlanId\": {\"Ref\": \"UsagePlan\"}"," },"," \"TemplateURL\": {\"Fn::Join\": [\"\", ["," \"https://s3-\","," {\"Ref\": \"AWS::Region\"},"," \".amazonaws.com/\","," {\"Fn::ImportValue\": \"AssetsBucket\"},"," \"/cloud-formation-templates/client/web-client/stack.json\""," ]]}"," }"," },"," \"WebHookStack\": {"," \"Type\": \"AWS::CloudFormation::Stack\","," \"DependsOn\": ["," \"ApiStack\""," ],"," \"Properties\": {"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Parameters\": {"," \"AssetsBucket\": {\"Ref\": \"AssetsBucket\"},"," \"CertificateArn\": {\"Ref\": \"CertificateArn\"},"," \"ClientId\": {\"Ref\": \"ClientId\"},"," \"DomainName\": {\"Fn::If\": ["," \"IsProduction\", "," {\"Ref\": \"DomainName\"}, "," {\"Fn::Join\": [\"\", ["," \"development.\","," {\"Ref\": \"DomainName\"}"," ]]}"," ]},"," \"FunctionS3ObjectVersion\": {\"Ref\": \"WebHooksFunctionS3ObjectVersion\"},"," \"HostedZoneId\": {\"Ref\": \"HostedZone\"},"," \"Stage\": {\"Ref\": \"Stage\"},"," \"Timestamp\": {\"Ref\": \"Timestamp\"}"," },"," \"TemplateURL\": {\"Fn::Join\": [\"\", ["," \"https://s3-\","," {\"Ref\": \"AWS::Region\"},"," \".amazonaws.com/\","," {\"Fn::ImportValue\": \"AssetsBucket\"},"," \"/cloud-formation-templates/client/web-hook/stack.json\""," ]]}"," }"," },"," \"WebHookFunctionEnvironment\": {"," \"Type\": \"Custom::LambdaEnvironment\","," \"Properties\": {"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"ServiceToken\": {\"Fn::ImportValue\": \"CustomCFResourceFunctionArn\"},"," \"Options\": {"," \"FunctionName\": {\"Fn::GetAtt\": [\"WebHookStack\", \"Outputs.FunctionName\"]},"," \"Environment\": {"," \"Variables\": {"," \"ACTIVE_CONVERSATION_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.ActiveConversationTable\"]},"," \"CONVERSATION_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.ConversationTable\"]},"," \"CUSTOMER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerTable\"]},"," \"CUSTOMER_BY_EMAIL_ADDRESS_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerByEmailAddressTable\"]},"," \"CUSTOMER_BY_PHONE_NUMBER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerByPhoneNumberTable\"]},"," \"EVENT_LOG_DELIVERY_STREAM_NAME\": {\"Fn::GetAtt\": [\"EventLogStack\", \"Outputs.DeliveryStreamName\"]},"," \"ISSUE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.IssueTable\"]},"," \"QUEUE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.QueueTable\"]},"," \"REPRESENTATIVE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.RepresentativeTable\"]},"," \"REQUEST_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.RequestTable\"]},"," \"USER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.UserTable\"]}"," }"," }"," }"," }"," }"," },"," \"Outputs\": {"," \"AdministrationClientApiKey\": {"," \"Value\": {\"Fn::GetAtt\": [\"WebClientStack\", \"Outputs.AdministrationClientApiKey\"]}"," },"," \"AdministrationClientBucket\": {"," \"Value\": {\"Fn::GetAtt\": [\"WebClientStack\", \"Outputs.AdministrationClientBucket\"]}"," },"," \"AdministrationClientUrl\": {"," \"Value\": {\"Fn::GetAtt\": [\"WebClientStack\", \"Outputs.AdministrationClientUrl\"]}"," },"," \"ApiEndpoint\": {"," \"Value\": {\"Fn::GetAtt\": [\"ApiStack\", \"Outputs.Endpoint\"]}"," },"," \"Region\": {"," \"Value\": {\"Ref\": \"AWS::Region\"}"," },"," \"CognitoIdentityPoolId\": {"," \"Value\": {\"Fn::GetAtt\": [\"UserStack\", \"Outputs.IdentityPoolId\"]}"," },"," \"CognitoIdentityPoolRegion\": {"," \"Value\": {\"Ref\": \"AWS::Region\"}"," },"," \"RepresentativesClientApiKey\": {"," \"Value\": {\"Fn::GetAtt\": [\"WebClientStack\", \"Outputs.RepresentativesClientApiKey\"]}"," },"," \"RepresentativesClientBucket\": {"," \"Value\": {\"Fn::GetAtt\": [\"WebClientStack\", \"Outputs.RepresentativesClientBucket\"]}"," },"," \"RepresentativesClientUrl\": {"," \"Value\": {\"Fn::GetAtt\": [\"WebClientStack\", \"Outputs.RepresentativesClientUrl\"]}"," }"," }","}"],"id":1}],[{"start":{"row":4,"column":4},"end":{"row":7,"column":4},"action":"remove","lines":["\"ApiFunctionS3ObjectVersion\": {"," \"Type\": \"String\""," },"," "],"id":2}],[{"start":{"row":10,"column":4},"end":{"row":19,"column":4},"action":"remove","lines":["\"ClientId\": {"," \"Type\": \"String\""," },"," \"CognitoSyncFunctionS3ObjectVersion\": {"," \"Type\": \"String\""," },"," \"BucketListenerFunctionS3ObjectVersion\": {"," \"Type\": \"String\""," },"," "],"id":3}],[{"start":{"row":16,"column":4},"end":{"row":19,"column":4},"action":"remove","lines":["\"TableStreamListenerFunctionS3ObjectVersion\": {"," \"Type\": \"String\""," },"," "],"id":4}],[{"start":{"row":18,"column":5},"end":{"row":21,"column":5},"action":"remove","lines":[","," \"WebHooksFunctionS3ObjectVersion\": {"," \"Type\": \"String\""," }"],"id":5}],[{"start":{"row":25,"column":4},"end":{"row":113,"column":4},"action":"remove","lines":["\"ApiStack\": {"," \"Type\": \"AWS::CloudFormation::Stack\","," \"Properties\": {"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Parameters\": {"," \"ApiFunctionS3ObjectVersion\": {\"Ref\": \"ApiFunctionS3ObjectVersion\"},"," \"AssetsBucket\": {\"Ref\": \"AssetsBucket\"},"," \"CertificateArn\": {\"Ref\": \"CertificateArn\"},"," \"ClientId\": {\"Ref\": \"ClientId\"},"," \"DomainName\": {\"Fn::If\": ["," \"IsProduction\", "," {\"Ref\": \"DomainName\"}, "," {\"Fn::Join\": [\"\", ["," \"development.\","," {\"Ref\": \"DomainName\"}"," ]]}"," ]},"," \"HostedZoneId\": {\"Ref\": \"HostedZone\"},"," \"Stage\": {\"Ref\": \"Stage\"},"," \"Timestamp\": {\"Ref\": \"Timestamp\"}"," },"," \"TemplateURL\": {\"Fn::Join\": [\"\", ["," \"https://s3-\","," {\"Ref\": \"AWS::Region\"},"," \".amazonaws.com/\","," {\"Fn::ImportValue\": \"AssetsBucket\"},"," \"/cloud-formation-templates/client/api/stack.json\""," ]]}"," }"," },"," \"ApiFunctionEnvironment\": {"," \"Type\": \"Custom::LambdaEnvironment\","," \"Properties\": {"," \"ServiceToken\": {\"Fn::ImportValue\": \"CustomCFResourceFunctionArn\"},"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Options\": {"," \"FunctionName\": {\"Fn::GetAtt\": [\"ApiStack\", \"Outputs.FunctionName\"]},"," \"Environment\": {"," \"Variables\": {"," \"ACTIVE_CONVERSATION_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.ActiveConversationTable\"]},"," \"CONVERSATION_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.ConversationTable\"]},"," \"CUSTOMER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerTable\"]},"," \"CUSTOMER_BY_EMAIL_ADDRESS_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerByEmailAddressTable\"]},"," \"CUSTOMER_BY_PHONE_NUMBER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerByPhoneNumberTable\"]},"," \"EVENT_LOG_DELIVERY_STREAM_NAME\": {\"Fn::GetAtt\": [\"EventLogStack\", \"Outputs.DeliveryStreamName\"]},"," \"ISSUE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.IssueTable\"]},"," \"QUEUE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.QueueTable\"]},"," \"REPRESENTATIVE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.RepresentativeTable\"]},"," \"REQUEST_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.RequestTable\"]},"," \"USER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.UserTable\"]}"," }"," }"," }"," }"," },"," \"DataStack\": {"," \"Type\": \"AWS::CloudFormation::Stack\","," \"Properties\": {"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Parameters\": {"," \"AssetsBucket\": {\"Ref\": \"AssetsBucket\"},"," \"S3ObjectVersion\": {\"Ref\": \"TableStreamListenerFunctionS3ObjectVersion\"}"," },"," \"TemplateURL\": {\"Fn::Join\": [\"\", ["," \"https://s3-\","," {\"Ref\": \"AWS::Region\"},"," \".amazonaws.com/\","," {\"Fn::ImportValue\": \"AssetsBucket\"},"," \"/cloud-formation-templates/client/data/stack.json\""," ]]}"," }"," },"," \"EventLogStack\": {"," \"Type\": \"AWS::CloudFormation::Stack\","," \"Properties\": {"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Parameters\": {"," \"Stage\": {\"Ref\": \"Stage\"}"," },"," \"TemplateURL\": {\"Fn::Join\": [\"\", ["," \"https://s3-\","," {\"Ref\": \"AWS::Region\"},"," \".amazonaws.com/\","," {\"Fn::ImportValue\": \"AssetsBucket\"},"," \"/cloud-formation-templates/client/event-log/stack.json\""," ]]}"," }"," },"," "]}],[{"start":{"row":51,"column":4},"end":{"row":90,"column":4},"action":"remove","lines":["\"LoggingBucketListenerFunctionEnvironment\": {"," \"Type\": \"Custom::LambdaEnvironment\","," \"Properties\": {"," \"ServiceToken\": {\"Fn::ImportValue\": \"CustomCFResourceFunctionArn\"},"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Options\": {"," \"FunctionName\": {\"Fn::GetAtt\": [\"LoggingStack\", \"Outputs.BucketListenerFunctionName\"]},"," \"Environment\": {"," \"Variables\": {"," \"EVENT_LOG_DELIVERY_STREAM_NAME\": {\"Fn::GetAtt\": [\"EventLogStack\", \"Outputs.DeliveryStreamName\"]}"," }"," }"," }"," }"," },"," \"TableStreamListenerFunctionEnvironment\": {"," \"Type\": \"Custom::LambdaEnvironment\","," \"Properties\": {"," \"ServiceToken\": {\"Fn::ImportValue\": \"CustomCFResourceFunctionArn\"},"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Options\": {"," \"FunctionName\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.TableStreamListenerFunctionName\"]},"," \"Environment\": {"," \"Variables\": {"," \"ACTIVE_CONVERSATION_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.ActiveConversationTable\"]},"," \"CONVERSATION_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.ConversationTable\"]},"," \"CUSTOMER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerTable\"]},"," \"CUSTOMER_BY_EMAIL_ADDRESS_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerByEmailAddressTable\"]},"," \"CUSTOMER_BY_PHONE_NUMBER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerByPhoneNumberTable\"]},"," \"EVENT_LOG_DELIVERY_STREAM_NAME\": {\"Fn::GetAtt\": [\"EventLogStack\", \"Outputs.DeliveryStreamName\"]},"," \"ISSUE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.IssueTable\"]},"," \"QUEUE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.QueueTable\"]},"," \"REPRESENTATIVE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.RepresentativeTable\"]},"," \"REQUEST_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.RequestTable\"]}"," }"," }"," }"," }"," },"," "]}],[{"start":{"row":51,"column":4},"end":{"row":63,"column":4},"action":"remove","lines":["\"UsagePlan\": {"," \"Type\": \"AWS::ApiGateway::UsagePlan\","," \"Properties\": {"," \"ApiStages\": ["," {"," \"ApiId\": {\"Fn::GetAtt\": [\"ApiStack\", \"Outputs.RestApiId\"]},"," \"Stage\": {\"Ref\": \"Stage\"}"," }"," ],"," \"Description\": \"client usage plan\""," }"," },"," "]}],[{"start":{"row":92,"column":4},"end":{"row":149,"column":5},"action":"remove","lines":["\"WebHookStack\": {"," \"Type\": \"AWS::CloudFormation::Stack\","," \"DependsOn\": ["," \"ApiStack\""," ],"," \"Properties\": {"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"Parameters\": {"," \"AssetsBucket\": {\"Ref\": \"AssetsBucket\"},"," \"CertificateArn\": {\"Ref\": \"CertificateArn\"},"," \"ClientId\": {\"Ref\": \"ClientId\"},"," \"DomainName\": {\"Fn::If\": ["," \"IsProduction\", "," {\"Ref\": \"DomainName\"}, "," {\"Fn::Join\": [\"\", ["," \"development.\","," {\"Ref\": \"DomainName\"}"," ]]}"," ]},"," \"FunctionS3ObjectVersion\": {\"Ref\": \"WebHooksFunctionS3ObjectVersion\"},"," \"HostedZoneId\": {\"Ref\": \"HostedZone\"},"," \"Stage\": {\"Ref\": \"Stage\"},"," \"Timestamp\": {\"Ref\": \"Timestamp\"}"," },"," \"TemplateURL\": {\"Fn::Join\": [\"\", ["," \"https://s3-\","," {\"Ref\": \"AWS::Region\"},"," \".amazonaws.com/\","," {\"Fn::ImportValue\": \"AssetsBucket\"},"," \"/cloud-formation-templates/client/web-hook/stack.json\""," ]]}"," }"," },"," \"WebHookFunctionEnvironment\": {"," \"Type\": \"Custom::LambdaEnvironment\","," \"Properties\": {"," \"NotificationARNs\": {\"Ref\": \"AWS::NotificationARNs\"},"," \"ServiceToken\": {\"Fn::ImportValue\": \"CustomCFResourceFunctionArn\"},"," \"Options\": {"," \"FunctionName\": {\"Fn::GetAtt\": [\"WebHookStack\", \"Outputs.FunctionName\"]},"," \"Environment\": {"," \"Variables\": {"," \"ACTIVE_CONVERSATION_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.ActiveConversationTable\"]},"," \"CONVERSATION_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.ConversationTable\"]},"," \"CUSTOMER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerTable\"]},"," \"CUSTOMER_BY_EMAIL_ADDRESS_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerByEmailAddressTable\"]},"," \"CUSTOMER_BY_PHONE_NUMBER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.CustomerByPhoneNumberTable\"]},"," \"EVENT_LOG_DELIVERY_STREAM_NAME\": {\"Fn::GetAtt\": [\"EventLogStack\", \"Outputs.DeliveryStreamName\"]},"," \"ISSUE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.IssueTable\"]},"," \"QUEUE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.QueueTable\"]},"," \"REPRESENTATIVE_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.RepresentativeTable\"]},"," \"REQUEST_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.RequestTable\"]},"," \"USER_TABLE_NAME\": {\"Fn::GetAtt\": [\"DataStack\", \"Outputs.UserTable\"]}"," }"," }"," }"," }"," }"]}],[{"start":{"row":92,"column":2},"end":{"row":92,"column":4},"action":"remove","lines":[" "],"id":10}],[{"start":{"row":92,"column":0},"end":{"row":92,"column":2},"action":"remove","lines":[" "],"id":11}],[{"start":{"row":91,"column":6},"end":{"row":92,"column":0},"action":"remove","lines":["",""],"id":12}],[{"start":{"row":91,"column":5},"end":{"row":91,"column":6},"action":"remove","lines":[","],"id":13}],[{"start":{"row":94,"column":4},"end":{"row":106,"column":4},"action":"remove","lines":["\"AdministrationClientApiKey\": {"," \"Value\": {\"Fn::GetAtt\": [\"WebClientStack\", \"Outputs.AdministrationClientApiKey\"]}"," },"," \"AdministrationClientBucket\": {"," \"Value\": {\"Fn::GetAtt\": [\"WebClientStack\", \"Outputs.AdministrationClientBucket\"]}"," },"," \"AdministrationClientUrl\": {"," \"Value\": {\"Fn::GetAtt\": [\"WebClientStack\", \"Outputs.AdministrationClientUrl\"]}"," },"," \"ApiEndpoint\": {"," \"Value\": {\"Fn::GetAtt\": [\"ApiStack\", \"Outputs.Endpoint\"]}"," },"," "],"id":14}],[{"start":{"row":103,"column":5},"end":{"row":103,"column":20},"action":"remove","lines":["Representatives"],"id":15},{"start":{"row":103,"column":5},"end":{"row":103,"column":6},"action":"insert","lines":["W"]}],[{"start":{"row":103,"column":6},"end":{"row":103,"column":7},"action":"insert","lines":["w"],"id":16}],[{"start":{"row":103,"column":7},"end":{"row":103,"column":8},"action":"insert","lines":["w"],"id":17}],[{"start":{"row":106,"column":5},"end":{"row":106,"column":20},"action":"remove","lines":["Representatives"],"id":18},{"start":{"row":106,"column":5},"end":{"row":106,"column":8},"action":"insert","lines":["Www"]}],[{"start":{"row":109,"column":5},"end":{"row":109,"column":20},"action":"remove","lines":["Representatives"],"id":19},{"start":{"row":109,"column":5},"end":{"row":109,"column":8},"action":"insert","lines":["Www"]}],[{"start":{"row":104,"column":58},"end":{"row":104,"column":73},"action":"remove","lines":["Representatives"],"id":20},{"start":{"row":104,"column":58},"end":{"row":104,"column":61},"action":"insert","lines":["Www"]}],[{"start":{"row":107,"column":58},"end":{"row":107,"column":73},"action":"remove","lines":["Representatives"],"id":21},{"start":{"row":107,"column":58},"end":{"row":107,"column":61},"action":"insert","lines":["Www"]}],[{"start":{"row":110,"column":58},"end":{"row":110,"column":73},"action":"remove","lines":["Representatives"],"id":22},{"start":{"row":110,"column":58},"end":{"row":110,"column":61},"action":"insert","lines":["Www"]}],[{"start":{"row":39,"column":10},"end":{"row":40,"column":10},"action":"remove","lines":["\"S3ObjectVersion\": {\"Ref\": \"BucketListenerFunctionS3ObjectVersion\"},"," "],"id":23}],[{"start":{"row":46,"column":38},"end":{"row":46,"column":44},"action":"remove","lines":["client"],"id":24},{"start":{"row":46,"column":38},"end":{"row":46,"column":39},"action":"insert","lines":["m"]}],[{"start":{"row":46,"column":39},"end":{"row":46,"column":40},"action":"insert","lines":["a"],"id":25}],[{"start":{"row":46,"column":40},"end":{"row":46,"column":41},"action":"insert","lines":["i"],"id":26}],[{"start":{"row":46,"column":41},"end":{"row":46,"column":42},"action":"insert","lines":["n"],"id":27}],[{"start":{"row":56,"column":10},"end":{"row":57,"column":10},"action":"remove","lines":["\"RestApiId\": {\"Fn::GetAtt\": [\"ApiStack\", \"Outputs.RestApiId\"]},"," "],"id":28}],[{"start":{"row":56,"column":10},"end":{"row":57,"column":10},"action":"remove","lines":["\"S3ObjectVersion\": {\"Ref\": \"CognitoSyncFunctionS3ObjectVersion\"},"," "],"id":29}],[{"start":{"row":63,"column":38},"end":{"row":63,"column":44},"action":"remove","lines":["client"],"id":30},{"start":{"row":63,"column":38},"end":{"row":63,"column":39},"action":"insert","lines":["m"]}],[{"start":{"row":63,"column":39},"end":{"row":63,"column":40},"action":"insert","lines":["a"],"id":31}],[{"start":{"row":63,"column":40},"end":{"row":63,"column":41},"action":"insert","lines":["i"],"id":32}],[{"start":{"row":63,"column":41},"end":{"row":63,"column":42},"action":"insert","lines":["n"],"id":33}],[{"start":{"row":77,"column":36},"end":{"row":78,"column":45},"action":"remove","lines":[""," \"UsagePlanId\": {\"Ref\": \"UsagePlan\"}"],"id":34}],[{"start":{"row":77,"column":35},"end":{"row":77,"column":36},"action":"remove","lines":[","],"id":35}],[{"start":{"row":84,"column":38},"end":{"row":84,"column":44},"action":"remove","lines":["client"],"id":36},{"start":{"row":84,"column":38},"end":{"row":84,"column":39},"action":"insert","lines":["m"]}],[{"start":{"row":84,"column":39},"end":{"row":84,"column":40},"action":"insert","lines":["a"],"id":37}],[{"start":{"row":84,"column":40},"end":{"row":84,"column":41},"action":"insert","lines":["i"],"id":38}],[{"start":{"row":84,"column":41},"end":{"row":84,"column":42},"action":"insert","lines":["n"],"id":39}],[{"start":{"row":56,"column":10},"end":{"row":57,"column":0},"action":"insert","lines":["",""],"id":40},{"start":{"row":57,"column":0},"end":{"row":57,"column":10},"action":"insert","lines":[" "]}],[{"start":{"row":56,"column":10},"end":{"row":56,"column":12},"action":"insert","lines":["\"\""],"id":41}],[{"start":{"row":56,"column":11},"end":{"row":56,"column":12},"action":"insert","lines":["G"],"id":42}],[{"start":{"row":56,"column":12},"end":{"row":56,"column":13},"action":"insert","lines":["o"],"id":43}],[{"start":{"row":56,"column":13},"end":{"row":56,"column":14},"action":"insert","lines":["o"],"id":44}],[{"start":{"row":56,"column":14},"end":{"row":56,"column":15},"action":"insert","lines":["G"],"id":45}],[{"start":{"row":56,"column":14},"end":{"row":56,"column":15},"action":"remove","lines":["G"],"id":46}],[{"start":{"row":56,"column":14},"end":{"row":56,"column":15},"action":"insert","lines":["g"],"id":47}],[{"start":{"row":56,"column":11},"end":{"row":56,"column":15},"action":"remove","lines":["Goog"],"id":48},{"start":{"row":56,"column":11},"end":{"row":56,"column":25},"action":"insert","lines":["GoogleClientId"]}],[{"start":{"row":56,"column":26},"end":{"row":56,"column":27},"action":"insert","lines":[" "],"id":49}],[{"start":{"row":56,"column":26},"end":{"row":56,"column":27},"action":"remove","lines":[" "],"id":50}],[{"start":{"row":56,"column":26},"end":{"row":56,"column":27},"action":"insert","lines":[" "],"id":51}],[{"start":{"row":56,"column":27},"end":{"row":56,"column":28},"action":"insert","lines":[":"],"id":52}],[{"start":{"row":56,"column":27},"end":{"row":56,"column":28},"action":"remove","lines":[":"],"id":53}],[{"start":{"row":56,"column":26},"end":{"row":56,"column":27},"action":"remove","lines":[" "],"id":54}],[{"start":{"row":56,"column":26},"end":{"row":56,"column":27},"action":"insert","lines":[":"],"id":55}],[{"start":{"row":56,"column":27},"end":{"row":56,"column":28},"action":"insert","lines":[" "],"id":56}],[{"start":{"row":56,"column":28},"end":{"row":56,"column":29},"action":"insert","lines":["{"],"id":57}],[{"start":{"row":56,"column":29},"end":{"row":56,"column":30},"action":"insert","lines":["}"],"id":58}],[{"start":{"row":56,"column":30},"end":{"row":56,"column":31},"action":"insert","lines":[","],"id":59}],[{"start":{"row":56,"column":29},"end":{"row":56,"column":31},"action":"insert","lines":["\"\""],"id":60}],[{"start":{"row":56,"column":30},"end":{"row":56,"column":31},"action":"insert","lines":["R"],"id":61}],[{"start":{"row":56,"column":31},"end":{"row":56,"column":32},"action":"insert","lines":["e"],"id":62}],[{"start":{"row":56,"column":32},"end":{"row":56,"column":33},"action":"insert","lines":["f"],"id":63}],[{"start":{"row":56,"column":34},"end":{"row":56,"column":35},"action":"insert","lines":[":"],"id":64}],[{"start":{"row":56,"column":35},"end":{"row":56,"column":36},"action":"insert","lines":[" "],"id":65}],[{"start":{"row":56,"column":36},"end":{"row":56,"column":38},"action":"insert","lines":["\"\""],"id":66}],[{"start":{"row":56,"column":37},"end":{"row":56,"column":38},"action":"insert","lines":["G"],"id":67}],[{"start":{"row":56,"column":38},"end":{"row":56,"column":39},"action":"insert","lines":["o"],"id":68}],[{"start":{"row":56,"column":39},"end":{"row":56,"column":40},"action":"insert","lines":["o"],"id":69}],[{"start":{"row":56,"column":40},"end":{"row":56,"column":41},"action":"insert","lines":["g"],"id":70}],[{"start":{"row":56,"column":37},"end":{"row":56,"column":41},"action":"remove","lines":["Goog"],"id":71},{"start":{"row":56,"column":37},"end":{"row":56,"column":51},"action":"insert","lines":["GoogleClientId"]}],[{"start":{"row":12,"column":6},"end":{"row":13,"column":0},"action":"insert","lines":["",""],"id":72},{"start":{"row":13,"column":0},"end":{"row":13,"column":4},"action":"insert","lines":[" "]}],[{"start":{"row":13,"column":4},"end":{"row":13,"column":6},"action":"insert","lines":["\"\""],"id":73}],[{"start":{"row":13,"column":5},"end":{"row":13,"column":6},"action":"insert","lines":["G"],"id":74}],[{"start":{"row":13,"column":6},"end":{"row":13,"column":7},"action":"insert","lines":["o"],"id":75}],[{"start":{"row":13,"column":7},"end":{"row":13,"column":8},"action":"insert","lines":["o"],"id":76}],[{"start":{"row":13,"column":8},"end":{"row":13,"column":9},"action":"insert","lines":["g"],"id":77}],[{"start":{"row":13,"column":5},"end":{"row":13,"column":9},"action":"remove","lines":["Goog"],"id":78},{"start":{"row":13,"column":5},"end":{"row":13,"column":19},"action":"insert","lines":["GoogleClientId"]}],[{"start":{"row":13,"column":20},"end":{"row":13,"column":21},"action":"insert","lines":[":"],"id":79}],[{"start":{"row":13,"column":21},"end":{"row":13,"column":22},"action":"insert","lines":[" "],"id":80}],[{"start":{"row":13,"column":22},"end":{"row":13,"column":23},"action":"insert","lines":["{"],"id":81}],[{"start":{"row":13,"column":23},"end":{"row":13,"column":24},"action":"insert","lines":["}"],"id":82}],[{"start":{"row":13,"column":24},"end":{"row":13,"column":25},"action":"insert","lines":[","],"id":83}],[{"start":{"row":13,"column":23},"end":{"row":15,"column":4},"action":"insert","lines":[""," "," "],"id":84}],[{"start":{"row":14,"column":6},"end":{"row":14,"column":8},"action":"insert","lines":["\"\""],"id":85}],[{"start":{"row":14,"column":7},"end":{"row":14,"column":8},"action":"insert","lines":["T"],"id":86}],[{"start":{"row":14,"column":8},"end":{"row":14,"column":9},"action":"insert","lines":["y"],"id":87}],[{"start":{"row":14,"column":9},"end":{"row":14,"column":10},"action":"insert","lines":["p"],"id":88}],[{"start":{"row":14,"column":10},"end":{"row":14,"column":11},"action":"insert","lines":["e"],"id":89}],[{"start":{"row":14,"column":12},"end":{"row":14,"column":13},"action":"insert","lines":[":"],"id":90}],[{"start":{"row":14,"column":13},"end":{"row":14,"column":14},"action":"insert","lines":[" "],"id":91}],[{"start":{"row":14,"column":14},"end":{"row":14,"column":16},"action":"insert","lines":["\"\""],"id":92}],[{"start":{"row":14,"column":15},"end":{"row":14,"column":16},"action":"insert","lines":["S"],"id":93}],[{"start":{"row":14,"column":16},"end":{"row":14,"column":17},"action":"insert","lines":["t"],"id":94}],[{"start":{"row":14,"column":17},"end":{"row":14,"column":18},"action":"insert","lines":["r"],"id":95}],[{"start":{"row":14,"column":18},"end":{"row":14,"column":19},"action":"insert","lines":["i"],"id":96}],[{"start":{"row":14,"column":19},"end":{"row":14,"column":20},"action":"insert","lines":["n"],"id":97}],[{"start":{"row":14,"column":20},"end":{"row":14,"column":21},"action":"insert","lines":["g"],"id":98}]]},"ace":{"folds":[{"start":{"row":28,"column":19},"end":{"row":36,"column":4},"placeholder":"..."},{"start":{"row":37,"column":21},"end":{"row":52,"column":4},"placeholder":"..."},{"start":{"row":71,"column":23},"end":{"row":91,"column":4},"placeholder":"..."}],"scrolltop":79,"scrollleft":0,"selection":{"start":{"row":14,"column":21},"end":{"row":14,"column":21},"isBackwards":false},"options":{"guessTabSize":true,"useWrapMode":false,"wrapToView":true},"firstLineState":{"row":2,"state":"start","mode":"ace/mode/json"}},"timestamp":1498427317297,"hash":"946c23d1375fad9930964f82789f5147d9c931bc"}