1
0
mirror of https://github.com/octoleo/plantuml.git synced 2024-12-27 20:45:15 +00:00
plantuml/themes/puml-theme-cerulean.puml
2021-11-12 17:28:21 -08:00

553 lines
9.2 KiB
Plaintext

''
'' Cerulean theme based off of the bootstrap theme of the same name
'' https://bootswatch.com/cerulean/
''
'' Author: Brett Schwarz
'' Copyright (c) 2019 by Brett Schwarz
!$THEME = "cerulean"
!if %not(%variable_exists("$BGCOLOR"))
!$BGCOLOR = "transparent"
!endif
skinparam backgroundColor $BGCOLOR
skinparam useBetaStyle false
''
'' Colors taken from the css file of the BS theme
''
!$BLUE = "#033C73"
!$INDIGO = "#6610F2"
!$PURPLE = "#6F42C1"
!$PINK = "#E83E8C"
!$RED = "#C71C22"
!$ORANGE = "#FD7E14"
!$YELLOW = "#DD5600"
!$GREEN = "#73A839"
!$TEAL = "#20C997"
!$CYAN = "#2FA4E7"
!$WHITE = "#FFF"
!$GRAY_DARK = "#343A40"
!$GRAY = "#868E96"
!$PRIMARY = "#2FA4E7"
!$SECONDARY = "#E9ECEF"
!$SUCCESS = "#73A839"
!$INFO = "#033C73"
!$WARNING = "#DD5600"
!$DANGER = "#C71C22"
!$LIGHT = "#F8F9FA"
!$DARK = "#343A40"
'' *_LIGHT = tint (lighter) of the main color of 80%
'' where TINT is calculated by clr + (255-clr) * tint_factor
'' *_DARK = shade (darker) of the main color of 80%
'' and SHADE is calculated by clr * (1 - shade_factor)
''
!$FGCOLOR = $DARK
!$PRIMARY_LIGHT = "#59B6EC"
!$PRIMARY_DARK = "#2683B9"
!$PRIMARY_TEXT = $WHITE
!$SECONDARY_LIGHT = "#EDF0F2"
!$SECONDARY_DARK = "#BABDBF"
!$SECONDARY_TEXT = $DARK
!$INFO_LIGHT = "#35638F"
!$INFO_DARK = "#02305C"
!$INFO_TEXT = $WHITE
!$SUCCESS_LIGHT = "#8FB961"
!$SUCCESS_DARK = "#5C862E"
!$SUCCESS_TEXT = $WHITE
!$WARNING_LIGHT = "#E47833"
!$WARNING_DARK = "#B14500"
!$WARNING_TEXT = $WHITE
!$DANGER_LIGHT = "#D2494E"
!$DANGER_DARK = "#9F161B"
!$DANGER_TEXT = $WHITE
!procedure $success($msg)
<font color=$SUCCESS><b>$msg
!endprocedure
!procedure $failure($msg)
<font color=$DANGER><b>$msg
!endprocedure
!procedure $warning($msg)
<font color=$WARNING><b>$msg
!endprocedure
!procedure $primary_scheme()
FontColor $PRIMARY_TEXT
BorderColor $PRIMARY
BackgroundColor $PRIMARY_LIGHT-$PRIMARY
!endprocedure
''
'' Style settings
''
<style>
root {
BackgroundColor $BGCOLOR
FontColor $PRIMARY_TEXT
HyperLinkColor $ORANGE
LineColor $PRIMARY_DARK
LineThickness 1
Margin 10
Padding 6
Shadowing 0.0
}
node {
Padding 15
roundcorner 20
BackgroundColor $PRIMARY-$PRIMARY_DARK
}
caption {
LineThickness 0
}
footer {
LineThickness 0
}
groupHeader {
BackgroundColor $SECONDARY
FontColor $INFO
FontStyle bold
}
header {
LineThickness 0
}
referenceHeader {
BackgroundColor $BGCOLOR
FontColor $DARK
FontStyle bold
}
separator {
BackgroundColor $FGCOLOR
FontColor $BGCOLOR
FontStyle bold
}
title {
FontSize 20
BorderRoundCorner 8
BorderThickness 1
BackgroundColor $SECONDARY_LIGHT-$SECONDARY
FontColor $PRIMARY
BorderColor $SECONDARY
}
nwdiagDiagram {
network {
$primary_scheme()
LineColor $PRIMARY
LineThickness 1.0
FontColor $PRIMARY_DARK
}
server {
$primary_scheme()
}
arrow {
FontColor $PRIMARY_DARK
LineColor $PRIMARY_DARK
}
group {
BackGroundColor $LIGHT
LineColor $LIGHT_DARK
LineThickness 2.0
Margin 5
Padding 5
}
}
ganttDiagram {
task {
$primary_scheme()
LineColor $PRIMARY
Margin 10
Padding 6
}
note {
FontColor $INFO_TEXT
LineColor $INFO_DARK
BackGroundColor $INFO
}
separator {
LineColor $SECONDARY
BackGroundColor $SECONDARY-$SECONDARY_DARK
FontColor $SECONDARY_TEXT
}
milestone {
FontColor $INFO
FontSize 16
FontStyle italic
BackGroundColor $SECONDARY
LineColor $SECONDARY_DARK
}
timeline {
BackgroundColor $SECONDARY
FontColor $SECONDARY_TEXT
}
closed {
BackgroundColor $WARNING_DARK
FontColor $WARNING_TEXT
}
}
</style>
''
'' Global Default Values
''
skinparam defaultFontName "Verdana"
skinparam defaultFontSize 12
skinparam dpi 100
skinparam shadowing false
skinparam roundcorner 8
skinparam ParticipantPadding 40
skinparam BoxPadding 40
skinparam Padding 5
skinparam ArrowColor $GRAY
skinparam stereotype {
CBackgroundColor $SECONDARY_LIGHT
CBorderColor $SECONDARY_DARK
ABackgroundColor $SUCCESS_LIGHT
ABorderColor $SUCCESS_DARK
IBackgroundColor $DANGER_LIGHT
IBorderColor $DANGER_DARK
EBackgroundColor $WARNING_LIGHT
EBorderColor $WARNING_DARK
NBackgroundColor $INFO_LIGHT
NBorderColor $INFO_DARK
}
skinparam title {
FontColor $PRIMARY
BorderColor $SECONDARY_DARK
FontSize 20
BorderRoundCorner 8
BorderThickness 1
BackgroundColor $SECONDARY_LIGHT-$SECONDARY
}
skinparam legend {
BackgroundColor $SECONDARY
BorderColor $SECONDARY_DARK
FontColor $DARK
}
!startsub swimlane
skinparam swimlane {
BorderColor $INFO
BorderThickness 2
TitleBackgroundColor $SECONDARY_LIGHT-$SECONDARY
TitleFontColor $PRIMARY
}
!endsub
!startsub activity
skinparam activity {
$primary_scheme()
BarColor $SUCCESS
StartColor $INFO
EndColor $INFO
''
DiamondBackgroundColor $WHITE-$SECONDARY_LIGHT
DiamondBorderColor $SECONDARY_DARK
DiamondFontColor $SECONDARY_TEXT
}
!endsub
!startsub participant
skinparam participant {
$primary_scheme()
ParticipantBorderThickness 2
}
!endsub
!startsub actor
skinparam actor {
$primary_scheme()
FontColor $DARK
}
!endsub
!startsub arrow
skinparam arrow {
Thickness 3
Color $PRIMARY
FontColor $FGCOLOR
}
!endsub
!startsub sequence
skinparam sequence {
BorderColor $PRIMARY
' For some reason sequence title font color does not pick up from global
TitleFontColor $PRIMARY
BackgroundColor $BGCOLOR
StartColor $PRIMARY
EndColor $PRIMARY
''
BoxBackgroundColor $LIGHT
BoxBorderColor $GRAY
BoxFontColor $DARK
''
DelayFontColor $DARK
''
LifeLineBorderColor $SECONDARY_DARK
LifeLineBorderThickness 2
LifeLineBackgroundColor $SECONDARY_LIGHT
''
GroupBorderColor $GRAY
GroupFontColor $DARK
GroupHeaderFontColor $INFO
''
DividerBackgroundColor $WHITE-$LIGHT
DividerBorderColor $GRAY
DividerBorderThickness 2
DividerFontColor $DARK
''
ReferenceBackgroundColor $BGCOLOR
ReferenceBorderColor $GRAY
ReferenceFontColor $DARK
ReferenceHeaderFontColor $INFO
''
StereotypeFontColor $PRIMARY_TEXT
}
!endsub
!startsub partition
skinparam partition {
BorderColor $PRIMARY
FontColor $PRIMARY
BackgroundColor $BGCOLOR
}
!endsub
!startsub collections
skinparam collections {
$primary_scheme()
}
!endsub
!startsub control
skinparam control {
$primary_scheme()
FontColor $DARK
}
!endsub
!startsub entity
skinparam entity {
$primary_scheme()
FontColor $DARK
}
!endsub
!startsub boundary
skinparam boundary {
$primary_scheme()
FontColor $DARK
}
!endsub
!startsub agent
skinparam agent {
BackgroundColor #orange
BorderColor #999999
FontColor #333333
}
!endsub
!startsub note
skinparam note {
BorderThickness 1
BackgroundColor $INFO_LIGHT-$INFO
BorderColor $INFO
FontColor $WHITE
}
!endsub
!startsub artifact
skinparam artifact {
BackgroundColor $WHITE-$LIGHT
BorderColor $SECONDARY_DARK
FontColor $SECONDARY_TEXT
}
!endsub
!startsub component
skinparam component {
$primary_scheme()
}
!endsub
!startsub interface
skinparam interface {
BackgroundColor $DANGER_LIGHT
BorderColor $DANGER
FontColor $DARK
}
!endsub
!startsub storage
skinparam storage {
BackgroundColor $WARNING_LIGHT-$WARNING
BorderColor $WARNING
FontColor $WARNING_TEXT
}
!endsub
!startsub node
skinparam node {
BackgroundColor $SECONDARY_LIGHT-$SECONDARY
BorderColor $SECONDARY
FontColor $SECONDARY_TEXT
}
!endsub
!startsub cloud
skinparam cloud {
BackgroundColor #F2FCFE-#eeeeee
BorderColor #F2FCFE
FontColor $PRIMARY
}
!endsub
!startsub database
skinparam database {
$primary_scheme()
FontColor $DARK
}
!endsub
!startsub class
skinparam class {
$primary_scheme()
HeaderBackgroundColor $PRIMARY-$PRIMARY_DARK
StereotypeFontColor $DARK
BorderThickness 1
AttributeFontColor $LIGHT
AttributeFontSize 11
}
!endsub
!startsub object
skinparam object {
$primary_scheme()
StereotypeFontColor $DARK
BorderThickness 1
AttributeFontColor $SECONDARY_TEXT
AttributeFontSize 11
}
!endsub
!startsub usecase
skinparam usecase {
$primary_scheme()
BorderThickness 2
StereotypeFontColor $PRIMARY
}
!endsub
!startsub rectangle
skinparam rectangle {
FontColor $PRIMARY
BorderColor $PRIMARY_LIGHT
BackgroundColor $BGCOLOR
BorderThickness 2
StereotypeFontColor $PRIMARY
}
!endsub
!startsub package
skinparam package {
FontColor $PRIMARY
BorderColor $PRIMARY_LIGHT
BackgroundColor $BGCOLOR
BorderThickness 2
}
!endsub
!startsub folder
skinparam folder {
BackgroundColor $WHITE-$SECONDARY_LIGHT
BorderColor $WARNING
FontColor $WARNING
BorderThickness 2
}
!endsub
!startsub frame
skinparam frame {
BackgroundColor $WHITE-$SECONDARY_LIGHT
BorderColor $INFO
FontColor $INFO
BorderThickness 2
}
!endsub
!startsub state
skinparam state {
$primary_scheme()
BorderColor $PRIMARY_DARK
StartColor $INFO
EndColor $INFO
AttributeFontColor $SECONDARY_TEXT
AttributeFontSize 11
}
!endsub
!startsub queue
skinparam queue {
$primary_scheme()
}
!endsub
!startsub card
skinparam card {
BackgroundColor $INFO_LIGHT-$INFO
BorderColor $INFO
FontColor $INFO_TEXT
}
!endsub
!startsub file
skinparam file {
BackgroundColor $SECONDARY_LIGHT-$SECONDARY
BorderColor $INFO
FontColor $GRAY
}
!endsub
!startsub stack
skinparam stack {
$primary_scheme()
}
!endsub