34 lines
511 B
Go
34 lines
511 B
Go
package svg
|
|
|
|
import "slices"
|
|
|
|
const KeyRegex string = `\{\{\s*(.*?)\s*\}\}`
|
|
|
|
type TemplateData struct {
|
|
Id string
|
|
Name string
|
|
Pages []TemplatePage
|
|
}
|
|
|
|
type TemplatePage struct {
|
|
TemplateId string
|
|
Page int
|
|
TemplateKeys []string
|
|
}
|
|
|
|
var Storage SvgStorage
|
|
|
|
func (d TemplateData) AllKeys() []string {
|
|
keys := make([]string, 0)
|
|
|
|
for _, page := range d.Pages {
|
|
for _, key := range page.TemplateKeys {
|
|
if !slices.Contains(keys, key) {
|
|
keys = append(keys, key)
|
|
}
|
|
}
|
|
}
|
|
|
|
return keys
|
|
}
|