vanity-tester-backend-go/cmd/vanity-tester-backend/parser.go
2025-01-08 23:52:14 -03:00

85 lines
1.7 KiB
Go

package main
import "encoding/json"
type _Chatterino struct {
Badges []struct {
Name string `json:"name"`
Url string `json:"url"`
Users []string `json:"users"`
} `json:"badges"`
}
type _FrankerFz struct {
Badges []struct {
Name string `json:"name"`
Url string `json:"url"`
Users []string `json:"users"`
} `json:"badges"`
}
type _SevenTv struct {
Badges []struct {
Name string `json:"name"`
Url string `json:"url"`
Users []string `json:"users"`
} `json:"badges"`
Paints []struct {
}
}
type Format struct {
Chatterino _Chatterino `json:"chatterino"`
SevenTv _SevenTv `json:"7tv"`
Ffz _FrankerFz `json:"ffz"`
}
func parseChatterino(format *Format) {
chatterino := &Chatterino{}
chatterino.getBadges()
for _, badge := range chatterino.Badges {
format.Chatterino.Badges = append(format.Chatterino.Badges, struct {
Name string `json:"name"`
Url string `json:"url"`
Users []string `json:"users"`
}{
Name: badge.Tooltip,
Url: badge.Image3,
Users: badge.Users,
})
}
}
func parseSevenTv(format *Format) {
sevenTv := &Chatterino{}
sevenTv.getBadges()
for _, badge := range sevenTv.Badges {
format.Chatterino.Badges = append(format.Chatterino.Badges, struct {
Name string `json:"name"`
Url string `json:"url"`
Users []string `json:"users"`
}{
Name: badge.Tooltip,
Url: badge.Image3,
Users: badge.Users,
})
}
}
func parseAllBadges() string {
format := &Format{}
parseChatterino(format)
json, _ := json.Marshal(format)
return string(json)
// bttv := &Bttv{}
// ffz := &FrankerFz{}
// chatterino := &Chatterino{}
// chatty := &Chatty{}
// homies := &Homies{}
// ptv := &PurpleTV{}
}