feat(models): add credits to person and artist model

This commit is contained in:
Masahiko AMANO 2025-01-17 18:10:49 +03:00
parent 6cc65ada63
commit 3aef338b1b

View File

@ -6,6 +6,21 @@ import (
//#region Objects
type Role struct {
ID string `json:"id"`
Name string `json:"name"`
}
type PersonCredit struct {
Track TrackBrief `json:"track"`
Role Role `json:"role"`
}
type TrackCredit struct {
Person PersonBrief `json:"person"`
Role Role `json:"role"`
}
type PersonBrief struct {
ID string `json:"id"`
Name string `json:"name"`
@ -14,19 +29,10 @@ type PersonBrief struct {
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"`
Birthdate string `json:"birthdate"`
Deathdate string `json:"deathdate"`
Credits []PersonCredit `json:"credits"`
Info string `json:"info"`
}
type ArtistBrief struct {
@ -36,7 +42,8 @@ type ArtistBrief struct {
type Artist struct {
ArtistBrief
Info string `json:"info"`
Tracks []TrackBrief `json:"tracks"`
Info string `json:"info"`
}
type TrackBrief struct {
@ -51,9 +58,9 @@ type TrackBrief struct {
type Track struct {
TrackBrief
Credits []Credit `json:"credits"`
Lyrics string `json:"lyrics"`
Info string `json:"info"`
Credits []TrackCredit `json:"credits"`
Lyrics string `json:"lyrics"`
Info string `json:"info"`
}
type Alias struct {