48 lines
819 B
Go
48 lines
819 B
Go
|
|
package attributes
|
||
|
|
|
||
|
|
import "slices"
|
||
|
|
|
||
|
|
type Global struct {
|
||
|
|
// TODO: Global attributes at
|
||
|
|
// https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Global_attributes
|
||
|
|
// https://html.spec.whatwg.org/multipage/dom.html#global-attributes
|
||
|
|
|
||
|
|
class []string
|
||
|
|
lang string
|
||
|
|
id string
|
||
|
|
}
|
||
|
|
|
||
|
|
func (g Global) Class() []string {
|
||
|
|
return g.class
|
||
|
|
}
|
||
|
|
|
||
|
|
func (g *Global) SetClass(class []string) {
|
||
|
|
g.class = class
|
||
|
|
}
|
||
|
|
|
||
|
|
func (g *Global) AddClass(class string) {
|
||
|
|
g.class = append(g.class, class)
|
||
|
|
}
|
||
|
|
|
||
|
|
func (g *Global) DelClass(class string) {
|
||
|
|
g.class = slices.DeleteFunc(g.class, func(c string) bool {
|
||
|
|
return c == class
|
||
|
|
})
|
||
|
|
}
|
||
|
|
|
||
|
|
func (g *Global) Lang() string {
|
||
|
|
return g.lang
|
||
|
|
}
|
||
|
|
|
||
|
|
func (g *Global) SetLang(lang string) {
|
||
|
|
g.lang = lang
|
||
|
|
}
|
||
|
|
|
||
|
|
func (g Global) ID() string {
|
||
|
|
return g.id
|
||
|
|
}
|
||
|
|
|
||
|
|
func (g *Global) SetID(id string) {
|
||
|
|
g.id = id
|
||
|
|
}
|