Matthew Stobbs
9c35be1fcf
- made multiple components for reuse in templ - going to start on actual data displaying templates
25 lines
571 B
Plaintext
25 lines
571 B
Plaintext
package components
|
|
|
|
import "fmt"
|
|
|
|
type InfoBoxConfig struct {
|
|
ColourClass string
|
|
InFlex bool
|
|
FlexBasis string
|
|
}
|
|
|
|
templ InfoBox(ibc InfoBoxConfig, title string, child templ.Component) {
|
|
<div class={
|
|
"infobox",
|
|
fmt.Sprintf("bg-%s-900", ibc.ColourClass),
|
|
fmt.Sprintf("text-%s-100", ibc.ColourClass),
|
|
fmt.Sprintf("shadow-%s-900", ibc.ColourClass),
|
|
fmt.Sprintf("divide-%s-800", ibc.ColourClass),
|
|
fmt.Sprintf("border-%s-800", ibc.ColourClass),
|
|
templ.KV(ibc.FlexBasis, ibc.InFlex),
|
|
}>
|
|
<h3 class="text-xl font-semibold">{ title }</h3>
|
|
@child
|
|
</div>
|
|
}
|