mirror of
https://github.com/librespot-org/librespot.git
synced 2025-10-03 09:49:31 +02:00

* update protobuf definitions * add additionally required proto files * update version.rs * adjust code to protobuf changes * fix formatting * apply suggestions, improve errors
179 lines
4 KiB
Protocol Buffer
179 lines
4 KiB
Protocol Buffer
// Extracted from: Spotify 1.2.52.442 (windows)
|
|
|
|
syntax = "proto3";
|
|
|
|
package spotify.your_library.proto;
|
|
|
|
import "policy/supported_link_types_in_playlists.proto";
|
|
|
|
option optimize_for = CODE_SIZE;
|
|
|
|
message YourLibraryEntityInfo {
|
|
enum Pinnable {
|
|
YES = 0;
|
|
NO_IN_FOLDER = 1;
|
|
}
|
|
|
|
string name = 2;
|
|
string uri = 3;
|
|
string group_label = 5;
|
|
string image_uri = 6;
|
|
bool pinned = 7;
|
|
Pinnable pinnable = 8;
|
|
Offline.Availability offline_availability = 9;
|
|
int64 add_time = 11;
|
|
int64 last_played = 12;
|
|
bool has_curated_items = 13;
|
|
}
|
|
|
|
message Offline {
|
|
enum Availability {
|
|
UNKNOWN = 0;
|
|
NO = 1;
|
|
YES = 2;
|
|
DOWNLOADING = 3;
|
|
WAITING = 4;
|
|
}
|
|
|
|
}
|
|
|
|
message YourLibraryAlbumExtraInfo {
|
|
enum Type {
|
|
ALBUM = 0;
|
|
SINGLE = 1;
|
|
COMPILATION = 2;
|
|
EP = 3;
|
|
}
|
|
|
|
string artist_name = 1;
|
|
string artist_uri = 2;
|
|
Type type = 3;
|
|
bool is_premium_only = 4;
|
|
bool new_release = 5;
|
|
}
|
|
|
|
message YourLibraryArtistExtraInfo {
|
|
bool has_liked_tracks_or_albums = 1;
|
|
}
|
|
|
|
message NumberOfItemsForLinkType {
|
|
playlist.cosmos.proto.LinkType link_type = 1;
|
|
int32 num_items = 2;
|
|
}
|
|
|
|
message YourLibraryPlaylistFolderInfo {
|
|
string uri = 1;
|
|
string name = 2;
|
|
}
|
|
|
|
message YourLibraryPlaylistExtraInfo {
|
|
string creator_name = 1;
|
|
string creator_uri = 8;
|
|
bool is_loading = 5;
|
|
bool can_view = 6;
|
|
bool can_add = 9;
|
|
string row_id = 7;
|
|
string made_for_name = 10;
|
|
string made_for_uri = 11;
|
|
repeated NumberOfItemsForLinkType number_of_items_per_link_type = 12;
|
|
bool owned_by_self = 13;
|
|
YourLibraryPlaylistFolderInfo from_folder = 14;
|
|
string name_prefix = 15;
|
|
}
|
|
|
|
message YourLibraryShowExtraInfo {
|
|
string creator_name = 1;
|
|
int64 publish_date = 4;
|
|
bool is_music_and_talk = 5;
|
|
int32 number_of_downloaded_episodes = 6;
|
|
}
|
|
|
|
message YourLibraryFolderExtraInfo {
|
|
int32 number_of_playlists = 2;
|
|
int32 number_of_folders = 3;
|
|
string row_id = 4;
|
|
repeated YourLibraryDecoratedEntity entity = 5;
|
|
}
|
|
|
|
message YourLibraryLikedSongsExtraInfo {
|
|
int32 number_of_songs = 3;
|
|
}
|
|
|
|
message YourLibraryYourEpisodesExtraInfo {
|
|
int32 number_of_downloaded_episodes = 4;
|
|
}
|
|
|
|
message YourLibraryNewEpisodesExtraInfo {
|
|
int64 publish_date = 1;
|
|
}
|
|
|
|
message YourLibraryLocalFilesExtraInfo {
|
|
int32 number_of_files = 1;
|
|
}
|
|
|
|
message YourLibraryBookExtraInfo {
|
|
enum Access {
|
|
OPEN = 0;
|
|
LOCKED = 1;
|
|
CAPPED = 2;
|
|
}
|
|
|
|
enum State {
|
|
NOT_STARTED = 0;
|
|
IN_PROGRESS = 1;
|
|
FINISHED = 2;
|
|
}
|
|
|
|
string author_name = 1;
|
|
Access access = 2;
|
|
int64 milliseconds_left = 3;
|
|
int32 percent_done = 4;
|
|
State state = 5;
|
|
}
|
|
|
|
message YourLibraryCachedFilesExtraInfo {
|
|
int32 number_of_items = 1;
|
|
int32 duration_in_seconds = 2;
|
|
}
|
|
|
|
message YourLibraryPreReleaseExtraInfo {
|
|
enum Type {
|
|
ALBUM = 0;
|
|
BOOK = 1;
|
|
}
|
|
|
|
string artist_name = 1;
|
|
string artist_uri = 2;
|
|
Type type = 3;
|
|
YourLibraryAlbumExtraInfo.Type album_type = 4;
|
|
}
|
|
|
|
message YourLibraryEventExtraInfo {
|
|
string location_name = 1;
|
|
int64 start_time = 2;
|
|
string city_name = 3;
|
|
}
|
|
|
|
message YourLibraryAuthorExtraInfo {
|
|
}
|
|
|
|
message YourLibraryDecoratedEntity {
|
|
YourLibraryEntityInfo entity_info = 1;
|
|
oneof entity {
|
|
YourLibraryAlbumExtraInfo album = 2;
|
|
YourLibraryArtistExtraInfo artist = 3;
|
|
YourLibraryPlaylistExtraInfo playlist = 4;
|
|
YourLibraryShowExtraInfo show = 5;
|
|
YourLibraryFolderExtraInfo folder = 6;
|
|
YourLibraryLikedSongsExtraInfo liked_songs = 8;
|
|
YourLibraryYourEpisodesExtraInfo your_episodes = 9;
|
|
YourLibraryNewEpisodesExtraInfo new_episodes = 10;
|
|
YourLibraryLocalFilesExtraInfo local_files = 11;
|
|
YourLibraryBookExtraInfo book = 12;
|
|
YourLibraryCachedFilesExtraInfo cached_files = 13;
|
|
YourLibraryPreReleaseExtraInfo prerelease = 15;
|
|
YourLibraryEventExtraInfo event = 16;
|
|
YourLibraryAuthorExtraInfo author = 17;
|
|
}
|
|
}
|
|
|