From bbacda44f8cd1629d311ce0242fd01124fe4c876 Mon Sep 17 00:00:00 2001 From: Anhgelus Morhtuuzh Date: Sat, 9 Nov 2024 23:53:27 +0100 Subject: feat(style): custom colors --- data.go | 34 ++++++++++++++++++++++++---------- 1 file changed, 24 insertions(+), 10 deletions(-) (limited to 'data.go') diff --git a/data.go b/data.go index 59f1593..7ac825b 100644 --- a/data.go +++ b/data.go @@ -6,11 +6,11 @@ import ( ) type Data struct { - Image string `json:"image"` - Description string `json:"description"` - Person *Person `json:"person"` - BackgroundColor *BackgroundColor `json:"background_color"` - Links []*Link `json:"links"` + Image string `json:"image"` + Description string `json:"description"` + Person *Person `json:"person"` + Color *Color `json:"colors"` + Links []*Link `json:"links"` } type Person struct { @@ -19,6 +19,11 @@ type Person struct { Image string `json:"image"` } +type Color struct { + Background *BackgroundColor `json:"background"` + Text string `json:"text"` +} + type BackgroundColor struct { Type string `json:"type"` Angle uint `json:"angle"` @@ -29,13 +34,14 @@ type BackgroundColor struct { } type Link struct { - Link string `json:"link"` - Content string `json:"content"` - Color string `json:"color"` + Link string `json:"link"` + Content string `json:"content"` + Color string `json:"color"` + TextColor string `json:"text_color"` } func (d *Data) GetBackground() template.CSS { - bg := d.BackgroundColor + bg := d.Color.Background css := "background: " + bg.Type + "-gradient(" if bg.Type == "linear" { css += strconv.Itoa(int(bg.Angle)) + "deg," @@ -46,6 +52,14 @@ func (d *Data) GetBackground() template.CSS { return template.CSS(css[:len(css)-1] + ");") } +func (d *Data) GetTextColor() template.CSS { + return template.CSS("color: " + d.Color.Text + ";") +} + +func (l *Link) GetLinkColor() template.CSS { + return template.CSS("color: " + l.TextColor + ";") +} + func (l *Link) GetBackground() template.CSS { - return template.CSS("background: " + l.Color) + return template.CSS("background: " + l.Color + ";") } -- cgit v1.2.3