From 09cb8a09061d1a8d748ca456780a54a99e1decf3 Mon Sep 17 00:00:00 2001 From: SayaAndy Date: Tue, 12 Aug 2025 12:46:31 +0700 Subject: fix: rm small gap (upper-right corner) fix: correct overflow in blog catalogue fix: better handling of narrow height in blog catalogue feat: include tag count in blog catalogue feat: select all checkboxes on load when none are selected --- main.go | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) (limited to 'main.go') diff --git a/main.go b/main.go index 7b8bfd3..c85a304 100644 --- a/main.go +++ b/main.go @@ -146,19 +146,26 @@ func main() { pages = []*b2.BlogPage{} } - tagsSet := make(map[string]struct{}) + tagsMap := make(map[string]int) for _, page := range pages { slog.Debug("enlist page for catalogue", slog.Any("page", page), slog.String("endpoint", "/")) for _, tag := range page.Metadata.Tags { - tagsSet[tag] = struct{}{} + tagsMap[tag]++ } } - tagsArray := make([]string, 0, len(tagsSet)) - for tag := range tagsSet { - tagsArray = append(tagsArray, tag) + type Tag struct { + Name string `json:"Name" yaml:"name"` + Count int `json:"Count" yaml:"count"` } - slices.Sort(tagsArray) + + tagsArray := make([]Tag, 0, len(tagsMap)) + for tag, count := range tagsMap { + tagsArray = append(tagsArray, Tag{tag, count}) + } + slices.SortFunc(tagsArray, func(a Tag, b Tag) int { + return strings.Compare(a.Name, b.Name) + }) content, err := tm.Render("blog-catalogue", fiber.Map{ "QuerySort": querySort, -- cgit v1.3.1+13