Files
kiraku/internal/models/models.go
T

72 lines
1.4 KiB
Go

package models
import (
"time"
)
//#region Objects
type PersonBrief struct {
ID string `json:"id"`
Name string `json:"name"`
SortName string `json:"sortName"`
}
type Person struct {
PersonBrief
Birthdate string `json:"birthdate"`
Deathdate string `json:"deathdate"`
Info string `json:"info"`
}
type Role struct {
ID string `json:"id"`
Name string `json:"name"`
}
type Credit struct {
Person PersonBrief `json:"person"`
Role Role `json:"role"`
}
type ArtistBrief struct {
ID string `json:"id"`
Name string `json:"name"`
}
type Artist struct {
ArtistBrief
Info string `json:"info"`
}
type TrackBrief struct {
ID string `json:"id"`
Name string `json:"name"`
Artists []ArtistBrief `json:"artists"`
Duration float32 `json:"duration"`
ReleaseDate string `json:"release_date"`
AcquireDatetime time.Time `json:"acquire_datetime"`
ISRC string `json:"isrc"`
}
type Track struct {
TrackBrief
Credits []Credit `json:"credits"`
Lyrics string `json:"lyrics"`
Info string `json:"info"`
}
type Alias struct {
ID string `json:"id"`
TrackID string `json:"track_id"`
Name string `json:"name"`
Artist string `json:"artist"`
}
type Kiroku struct {
Alias Alias `json:"alias"`
Datetime time.Time `json:"datetime"`
}
//#endregion Objects