feat: filter artist albums by type, default to album|ep|single

This commit is contained in:
Alexander
2026-05-07 17:22:59 +02:00
parent 80051396d8
commit 35ac167952
7 changed files with 79 additions and 19 deletions
+24 -4
View File
@@ -321,6 +321,7 @@ type GetArtistAlbumsRequest struct {
Limit int32 `protobuf:"varint,2,opt,name=limit,proto3" json:"limit,omitempty"`
Offset int32 `protobuf:"varint,3,opt,name=offset,proto3" json:"offset,omitempty"`
Provider Provider `protobuf:"varint,4,opt,name=provider,proto3,enum=metadata.v1.Provider" json:"provider,omitempty"`
AlbumTypes []string `protobuf:"bytes,5,rep,name=album_types,json=albumTypes,proto3" json:"album_types,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
@@ -383,6 +384,13 @@ func (x *GetArtistAlbumsRequest) GetProvider() Provider {
return Provider_PROVIDER_UNSPECIFIED
}
func (x *GetArtistAlbumsRequest) GetAlbumTypes() []string {
if x != nil {
return x.AlbumTypes
}
return nil
}
type GetTrackRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
// Types that are valid to be assigned to Identifier:
@@ -548,6 +556,7 @@ type SearchAlbumsRequest struct {
Limit int32 `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"`
Offset int32 `protobuf:"varint,4,opt,name=offset,proto3" json:"offset,omitempty"`
Provider Provider `protobuf:"varint,5,opt,name=provider,proto3,enum=metadata.v1.Provider" json:"provider,omitempty"`
AlbumTypes []string `protobuf:"bytes,6,rep,name=album_types,json=albumTypes,proto3" json:"album_types,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
@@ -617,6 +626,13 @@ func (x *SearchAlbumsRequest) GetProvider() Provider {
return Provider_PROVIDER_UNSPECIFIED
}
func (x *SearchAlbumsRequest) GetAlbumTypes() []string {
if x != nil {
return x.AlbumTypes
}
return nil
}
type SyncArtistRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
// Types that are valid to be assigned to Target:
@@ -1808,12 +1824,14 @@ const file_metadata_v1_metadata_proto_rawDesc = "" +
"\bexternal\x18\x02 \x01(\v2\x17.metadata.v1.ExternalIDH\x00R\bexternal\x121\n" +
"\bprovider\x18\x03 \x01(\x0e2\x15.metadata.v1.ProviderR\bproviderB\f\n" +
"\n" +
"identifier\"\x96\x01\n" +
"identifier\"\xb7\x01\n" +
"\x16GetArtistAlbumsRequest\x12\x1b\n" +
"\tartist_id\x18\x01 \x01(\tR\bartistId\x12\x14\n" +
"\x05limit\x18\x02 \x01(\x05R\x05limit\x12\x16\n" +
"\x06offset\x18\x03 \x01(\x05R\x06offset\x121\n" +
"\bprovider\x18\x04 \x01(\x0e2\x15.metadata.v1.ProviderR\bprovider\"\xb1\x01\n" +
"\bprovider\x18\x04 \x01(\x0e2\x15.metadata.v1.ProviderR\bprovider\x12\x1f\n" +
"\valbum_types\x18\x05 \x03(\tR\n" +
"albumTypes\"\xb1\x01\n" +
"\x0fGetTrackRequest\x12\x10\n" +
"\x02id\x18\x01 \x01(\tH\x00R\x02id\x125\n" +
"\bexternal\x18\x02 \x01(\v2\x17.metadata.v1.ExternalIDH\x00R\bexternal\x12\x14\n" +
@@ -1823,13 +1841,15 @@ const file_metadata_v1_metadata_proto_rawDesc = "" +
"identifier\"e\n" +
"\x15GetAlbumTracksRequest\x12\x19\n" +
"\balbum_id\x18\x01 \x01(\tR\aalbumId\x121\n" +
"\bprovider\x18\x02 \x01(\x0e2\x15.metadata.v1.ProviderR\bprovider\"\xa4\x01\n" +
"\bprovider\x18\x02 \x01(\x0e2\x15.metadata.v1.ProviderR\bprovider\"\xc5\x01\n" +
"\x13SearchAlbumsRequest\x12\x14\n" +
"\x05query\x18\x01 \x01(\tR\x05query\x12\x16\n" +
"\x06artist\x18\x02 \x01(\tR\x06artist\x12\x14\n" +
"\x05limit\x18\x03 \x01(\x05R\x05limit\x12\x16\n" +
"\x06offset\x18\x04 \x01(\x05R\x06offset\x121\n" +
"\bprovider\x18\x05 \x01(\x0e2\x15.metadata.v1.ProviderR\bprovider\"\x9d\x01\n" +
"\bprovider\x18\x05 \x01(\x0e2\x15.metadata.v1.ProviderR\bprovider\x12\x1f\n" +
"\valbum_types\x18\x06 \x03(\tR\n" +
"albumTypes\"\x9d\x01\n" +
"\x11SyncArtistRequest\x12\x14\n" +
"\x04name\x18\x01 \x01(\tH\x00R\x04name\x125\n" +
"\bexternal\x18\x02 \x01(\v2\x17.metadata.v1.ExternalIDH\x00R\bexternal\x121\n" +