kiraku/internal/models/objects.go

71 lines
1.4 KiB
Go

package models
import "time"
type Role struct {
ID string `json:"id"`
Name string `json:"name"`
}
type PersonCredit struct {
Track TrackBrief `json:"track"`
Role Role `json:"role"`
Alias string `json:"alias"`
}
type TrackCredit struct {
Person PersonBrief `json:"person"`
Role Role `json:"role"`
Alias string `json:"alias"`
}
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 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"`
Duration float32 `json:"duration"`
ReleaseDate string `json:"release_date"`
AcquireDatetime time.Time `json:"acquire_datetime"`
ISRC string `json:"isrc"`
}
type Track struct {
TrackBrief
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"`
}