' Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. ' SPDX-License-Identifier: MIT (For details, see https://github.com/awslabs/aws-icons-for-plantuml/blob/master/LICENSE) ' Dark Mode support ' ################################## ' if $AWS_DARK is not defined, check $PUML_MODE !if (%not(%variable_exists("$AWS_DARK")) && (%variable_exists("$PUML_MODE") && $PUML_MODE == "dark")) !$AWS_DARK = true !endif ' ensure $AWS_DARK is either true or false !if %not(%variable_exists("$AWS_DARK") && ($AWS_DARK == true)) !$AWS_DARK = false !endif ' Colors ' prefer $AWS_ versions, treat AWS_ as deprecated ' ################################## !define AWS_COLOR #232F3E !$AWS_COLOR_SQUID = "#232F3E" !if $AWS_DARK == true !define AWS_BG_COLOR #000000 !$AWS_BG_COLOR = "#000000" !$AWS_FG_COLOR = "#FFFFFF" !$AWS_ARROW_COLOR = "#9BA7B6" !else !define AWS_BG_COLOR #FFFFFF !$AWS_BG_COLOR = "#FFFFFF" !$AWS_FG_COLOR = "#000000" !$AWS_ARROW_COLOR = "#000000" !endif !define AWS_BORDER_COLOR #FF9900 !$AWS_BORDER_COLOR = "#FF9900" !define AWS_SYMBOL_COLOR AWS_COLOR !$AWS_COLOR_GRAY = "#7D8998" ' Customer Enablement; Database; Developer Tools; Satellite !define AWS_COLOR_BLUE #C925D1 !$AWS_COLOR_NEBULA = "#C925D1" ' Cloud Financial Management; Internet of Things; Storage !define AWS_COLOR_GREEN #7AA116 !$AWS_COLOR_ENDOR = "#7AA116" ' Blockchain; Compute; Containers; Media Services; Quantum Technologies !define AWS_COLOR_ORANGE #ED7100 !$AWS_COLOR_SMILE = "#ED7100" ' Application Integration; Management & Governance; VR & AR !define AWS_COLOR_PINK #E7157B !$AWS_COLOR_COSMOS = "#E7157B" ' Analytics; Games; Networking & Content Delivery; Serverless !define AWS_COLOR_PURPLE #8C4FFF !$AWS_COLOR_GALAXY = "#8C4FFF" ' Business Applications; Contact Center; Front-End Web & Mobile; Robotics; Security, Identity & Compliance !define AWS_COLOR_RED #DD344C !$AWS_COLOR_MARS = "#DD344C" ' End User Computing; Machine Learning; Migration & Transfer !define AWS_COLOR_TURQUOISE #01A88D !$AWS_COLOR_ORBIT = "#01A88D" !$AWS_CATEGORY_COLORS = { "analytics": "#8C4FFF", "applicationintegration": "#E7157B", "blockchain": "#ED7100", "businessapplications": "#DD344C", "cloudfinancialmanagement": "#7AA116", "compute": "#ED7100", "contactcenter": "#DD344C", "containers": "#ED7100", "customerenablement": "#C925D1", "database": "#C925D1", "developertools": "#C925D1", "endusercomputing": "#01A88D", "frontendwebmobile": "#DD344C", "games": "#8C4FFF", "general": "#232F3E", "internetofthings": "#7AA116", "machinelearning": "#01A88D", "managementgovernance": "#E7157B", "mediaservices": "#ED7100", "migrationtransfer": "#01A88D", "networkingcontentdelivery": "#8C4FFF", "quantumtechnologies": "#ED7100", "robotics": "#DD344C", "satellite": "#C925D1", "securityidentitycompliance": "#DD344C", "serverless": "#8C4FFF", "storage": "#7AA116" } ' returns color based on AWS icon category name !function $AWSColor($category) !$category = %lower($category) !if %json_key_exists($AWS_CATEGORY_COLORS, $category) !return $AWS_CATEGORY_COLORS[$category] !else !return $AWS_BG_COLOR !endif !endfunction ' Styling / Theme ' ################################## !$THEME = "aws-icons" !define TECHN_FONT_SIZE 12 skinparam defaultTextAlignment Center skinparam PackageTitleAlignment Left skinparam wrapWidth 200 skinparam maxMessageSize 150 skinparam Shadowing false skinparam RoundCorner 0 skinparam BackgroundColor $AWS_BG_COLOR !procedure $AWS_common_skinparam() FontColor $AWS_FG_COLOR BackgroundColor $AWS_BG_COLOR BorderColor $AWS_COLOR_GRAY !endprocedure !procedure $AWS_deployment_skinparam() FontColor $AWS_FG_COLOR BackgroundColor $AWS_BG_COLOR BorderColor $AWS_COLOR_GRAY BorderThickness 1.25 !endprocedure skinparam arrow { Color $AWS_ARROW_COLOR FontColor $AWS_FG_COLOR FontSize 12 } skinparam TitleFontColor $AWS_FG_COLOR skinparam TitleBorderColor transparent skinparam BackgroundColor $AWS_BG_COLOR ' Sequence Diagram skinparam participant { $AWS_common_skinparam() BorderThickness 1.25 Padding 2 } skinparam sequence { ArrowThickness 2 LifeLineBorderColor $AWS_FG_COLOR LifeLineBackgroundColor $AWS_BG_COLOR BoxFontColor $AWS_FG_COLOR BoxBorderColor $AWS_COLOR_GRAY BoxBorderThickness 1.25 BoxBackgroundColor $AWS_BG_COLOR GroupBorderColor $AWS_FG_COLOR GroupFontColor $AWS_FG_COLOR GroupBodyBackgroundColor transparent } skinparam BoxPadding 2 skinparam note { BorderColor $AWS_COLOR_GRAY BorderThickness 1.25 } ' Activity Diagram ' StartColor not working, uses