feat!: wip pronoun entry rework
This commit is contained in:
parent
68939f5e10
commit
7669595586
12 changed files with 1348 additions and 93 deletions
68
backend/db/entries.go
Normal file
68
backend/db/entries.go
Normal file
|
@ -0,0 +1,68 @@
|
|||
package db
|
||||
|
||||
import "codeberg.org/u1f320/pronouns.cc/backend/db/queries"
|
||||
|
||||
type WordStatus int
|
||||
|
||||
const (
|
||||
StatusUnknown WordStatus = 0
|
||||
StatusFavourite WordStatus = 1
|
||||
StatusOkay WordStatus = 2
|
||||
StatusJokingly WordStatus = 3
|
||||
StatusFriendsOnly WordStatus = 4
|
||||
StatusAvoid WordStatus = 5
|
||||
wordStatusMax WordStatus = 6
|
||||
)
|
||||
|
||||
type FieldEntry struct {
|
||||
Value string `json:"value"`
|
||||
Status WordStatus `json:"status"`
|
||||
}
|
||||
|
||||
type PronounEntry struct {
|
||||
Pronouns string `json:"pronouns"`
|
||||
DisplayText *string `json:"display_text"`
|
||||
Status WordStatus `json:"status"`
|
||||
}
|
||||
|
||||
func dbEntriesToFieldEntries(entries []queries.FieldEntry) []FieldEntry {
|
||||
out := make([]FieldEntry, len(entries))
|
||||
for i := range entries {
|
||||
out[i] = FieldEntry{
|
||||
*entries[i].Value, WordStatus(*entries[i].Status),
|
||||
}
|
||||
}
|
||||
return out
|
||||
}
|
||||
|
||||
func dbPronounEntriesToPronounEntries(entries []queries.PronounEntry) []PronounEntry {
|
||||
out := make([]PronounEntry, len(entries))
|
||||
for i := range entries {
|
||||
out[i] = PronounEntry{
|
||||
*entries[i].Value, entries[i].DisplayValue, WordStatus(*entries[i].Status),
|
||||
}
|
||||
}
|
||||
return out
|
||||
}
|
||||
|
||||
func entriesToDBEntries(entries []FieldEntry) []queries.FieldEntry {
|
||||
out := make([]queries.FieldEntry, len(entries))
|
||||
for i := range entries {
|
||||
status := int32(entries[i].Status)
|
||||
out[i] = queries.FieldEntry{
|
||||
&entries[i].Value, &status,
|
||||
}
|
||||
}
|
||||
return out
|
||||
}
|
||||
|
||||
func pronounEntriesToDBEntries(entries []PronounEntry) []queries.PronounEntry {
|
||||
out := make([]queries.PronounEntry, len(entries))
|
||||
for i := range entries {
|
||||
status := int32(entries[i].Status)
|
||||
out[i] = queries.PronounEntry{
|
||||
&entries[i].Pronouns, entries[i].DisplayText, &status,
|
||||
}
|
||||
}
|
||||
return out
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue