feat(style): custom colors for default buttons

This commit is contained in:
Anhgelus Morhtuuzh 2024-11-13 11:02:23 +01:00
parent c8ea8d4cd3
commit 7219e5bdf1
No known key found for this signature in database
GPG key ID: CAD341EFA92DDDE5
3 changed files with 21 additions and 4 deletions

16
data.go
View file

@ -29,6 +29,7 @@ type Tag struct {
type Color struct {
Background *BackgroundColor `json:"background"`
Button *ButtonColor `json:"buttons"`
Text string `json:"text"`
}
@ -41,6 +42,13 @@ type BackgroundColor struct {
} `json:"colors"`
}
type ButtonColor struct {
Text string `json:"text"`
TextHover string `json:"text_hover"`
Background string `json:"background"`
BackgroundHover string `json:"background_hover"`
}
type Link struct {
Link string `json:"link"`
Content string `json:"content"`
@ -76,6 +84,14 @@ func (c *Config) GetTextColor() template.CSS {
return template.CSS("--text-color: " + c.Color.Text + ";")
}
func (b *ButtonColor) GetTextColor() template.CSS {
return template.CSS("--text-color: " + b.Text + ";--text-color-hover: " + b.TextHover + ";")
}
func (b *ButtonColor) GetBackground() template.CSS {
return template.CSS("--background: " + b.Background + ";--background-hover: " + b.BackgroundHover + ";")
}
func (l *Link) GetLinkColor() template.CSS {
return template.CSS("--text-color: " + l.TextColor + ";--text-color-hover: " + l.TextColorHover + ";")
}

View file

@ -166,10 +166,11 @@ h4 {
grid-template-columns: repeat(3, 1fr);
margin-top: 2rem;
width: 100%;
gap: 1rem;
column-gap: 1rem;
row-gap: 0.5rem;
@media only screen and (max-width: vars.$bp-little) {
grid-template-columns: 1fr;
gap: 0.5rem;
column-gap: 0.5rem;
align-items: center;
}
& .link {

View file

@ -18,8 +18,8 @@
<a href="{{ .Link }}" style="{{ .GetLinkColor }}">{{ .Content }}</a>
</div>
{{ end }}
<div class="link" style="--background: #000;--background-hover: #333;">
<a href="/tags" style="--text-color: #ddd;--text-color-hover: #fff;">Tags</a>
<div class="link" style="{{ .Color.Button.GetBackground }}">
<a href="/tags" style="{{ .Color.Button.GetTextColor }}">Tags</a>
</div>
</div>
</main>