Documentation
¶
Overview ¶
d2themes defines themes to make d2 diagrams pretty Color codes: darkest (N1) -> lightest (N7)
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var CoolNeutral = Neutral{
N1: "#0A0F25",
N2: "#676C7E",
N3: "#9499AB",
N4: "#CFD2DD",
N5: "#DEE1EB",
N6: "#EEF1F8",
N7: "#FFFFFF",
}
View Source
var DarkMauveNeutral = Neutral{
N1: "#CDD6F4",
N2: "#BAC2DE",
N3: "#A6ADC8",
N4: "#585B70",
N5: "#45475A",
N6: "#313244",
N7: "#1E1E2E",
}
View Source
var DarkNeutral = Neutral{
N1: "#F4F6FA",
N2: "#BBBEC9",
N3: "#868A96",
N4: "#676D7D",
N5: "#3A3D49",
N6: "#191C28",
N7: "#000410",
}
View Source
var WarmNeutral = Neutral{
N1: "#170206",
N2: "#535152",
N3: "#787777",
N4: "#CCCACA",
N5: "#DFDCDC",
N6: "#ECEBEB",
N7: "#FFFFFF",
}
Functions ¶
func ResolveThemeColor ¶
func ShapeTheme ¶
Types ¶
type ColorPalette ¶
type ColorPalette struct {
Neutrals Neutral `json:"neutrals"`
// Base Colors: used for containers
B1 string `json:"b1"`
B2 string `json:"b2"`
B3 string `json:"b3"`
B4 string `json:"b4"`
B5 string `json:"b5"`
B6 string `json:"b6"`
// Alternative colors A
AA2 string `json:"aa2"`
AA4 string `json:"aa4"`
AA5 string `json:"aa5"`
// Alternative colors B
AB4 string `json:"ab4"`
AB5 string `json:"ab5"`
}
type PatternOverlay ¶
type PatternOverlay struct {
// contains filtered or unexported fields
}
func NewPatternOverlay ¶
func NewPatternOverlay(el *ThemableElement, pattern string) *PatternOverlay
func (*PatternOverlay) Render ¶
func (o *PatternOverlay) Render() (string, error)
type SpecialRules ¶
type ThemableElement ¶
type ThemableElement struct {
X float64
X1 float64
X2 float64
Y float64
Y1 float64
Y2 float64
Width float64
Height float64
R float64
Rx float64
Ry float64
Cx float64
Cy float64
D string
Mask string
Points string
Transform string
Href string
Xmlns string
Fill string
Stroke string
StrokeDashArray string
BackgroundColor string
Color string
ClassName string
Style string
Attributes string
Content string
ClipPath string
FillPattern string
// contains filtered or unexported fields
}
ThemableElement is a helper class for creating new XML elements. This should be preferred over formatting and must be used whenever Fill, Stroke, BackgroundColor or Color contains a color from a theme. i.e. N[1-7] | B[1-6] | AA[245] | AB[45]
func NewThemableElement ¶
func NewThemableElement(tag string) *ThemableElement
func (*ThemableElement) Copy ¶
func (el *ThemableElement) Copy() *ThemableElement
func (*ThemableElement) Render ¶
func (el *ThemableElement) Render() string
func (*ThemableElement) SetMaskUrl ¶
func (el *ThemableElement) SetMaskUrl(url string)
func (*ThemableElement) SetTranslate ¶
func (el *ThemableElement) SetTranslate(x, y float64)
type ThemableSketchOverlay ¶
type ThemableSketchOverlay struct {
// contains filtered or unexported fields
}
func NewThemableSketchOverlay ¶
func NewThemableSketchOverlay(el *ThemableElement, fill string) *ThemableSketchOverlay
func (*ThemableSketchOverlay) Render ¶
func (o *ThemableSketchOverlay) Render() (string, error)
TODO we can just call el.Copy() to prevent that WARNING: Do not reuse the element afterwards as this function changes the Class property
type Theme ¶
type Theme struct {
ID int64 `json:"id"`
Name string `json:"name"`
Colors ColorPalette `json:"colors"`
SpecialRules SpecialRules `json:"specialRules,omitempty"`
}
Source Files
¶
Click to show internal directories.
Click to hide internal directories.