Compare commits
2 commits
45e2d3c7c7
...
01a131ed6f
Author | SHA1 | Date | |
---|---|---|---|
01a131ed6f | |||
a7db75ff07 |
25 changed files with 5019 additions and 2680 deletions
|
@ -2,7 +2,7 @@ use std::borrow::Cow;
|
|||
|
||||
use crate::{
|
||||
error::{Error, ExtractionError},
|
||||
model::{ChannelId, MusicAlbum, MusicPlaylist, Paginator},
|
||||
model::{AlbumId, ChannelId, MusicAlbum, MusicPlaylist, Paginator},
|
||||
serializer::MapResult,
|
||||
util::{self, TryRemove},
|
||||
};
|
||||
|
@ -194,22 +194,24 @@ impl MapResponse<MusicAlbum> for response::MusicPlaylist {
|
|||
let year_txt = subtitle_split.try_swap_remove(2).map(|cmp| cmp.to_string());
|
||||
|
||||
let artists_p = subtitle_split.try_swap_remove(1);
|
||||
let (artists, artists_txt) = map_artists(artists_p);
|
||||
let (artists, by_va) = map_artists(artists_p);
|
||||
let album_type_txt = subtitle_split
|
||||
.try_swap_remove(0)
|
||||
.map(|part| part.to_string())
|
||||
.unwrap_or_default();
|
||||
|
||||
let by_va = artists_txt == util::VARIOUS_ARTISTS;
|
||||
let album_type = map_album_type(album_type_txt.as_str(), lang);
|
||||
let year = year_txt.and_then(|txt| util::parse_numeric(&txt).ok());
|
||||
|
||||
let mut mapper = match by_va {
|
||||
true => MusicListMapper::new(lang),
|
||||
false => {
|
||||
MusicListMapper::with_artists(lang, artists.clone(), artists_txt.clone(), false)
|
||||
}
|
||||
};
|
||||
let mut mapper = MusicListMapper::with_album(
|
||||
lang,
|
||||
artists.clone(),
|
||||
by_va,
|
||||
AlbumId {
|
||||
id: id.to_owned(),
|
||||
name: header.title.to_owned(),
|
||||
},
|
||||
);
|
||||
mapper.map_response(shelf.contents);
|
||||
let tracks_res = mapper.conv_items();
|
||||
let mut warnings = tracks_res.warnings;
|
||||
|
@ -228,7 +230,6 @@ impl MapResponse<MusicAlbum> for response::MusicPlaylist {
|
|||
name: header.title,
|
||||
cover: header.thumbnail.into(),
|
||||
artists,
|
||||
artists_txt,
|
||||
album_type,
|
||||
year,
|
||||
by_va,
|
||||
|
|
|
@ -3,8 +3,8 @@ use serde_with::{serde_as, DefaultOnError, VecSkipError};
|
|||
|
||||
use crate::{
|
||||
model::{
|
||||
self, AlbumId, AlbumItem, AlbumType, ArtistItem, ChannelId, FromYtItem, MusicEntityType,
|
||||
MusicItem, MusicPlaylistItem, TrackItem,
|
||||
self, AlbumId, AlbumItem, AlbumType, ArtistId, ArtistItem, ChannelId, FromYtItem,
|
||||
MusicEntityType, MusicItem, MusicPlaylistItem, TrackItem,
|
||||
},
|
||||
param::Language,
|
||||
serializer::{
|
||||
|
@ -194,7 +194,9 @@ pub(crate) struct ContinuationContents {
|
|||
#[derive(Debug)]
|
||||
pub(crate) struct MusicListMapper {
|
||||
lang: Language,
|
||||
o_artists: Option<(Vec<ChannelId>, String)>,
|
||||
/// Artists list + various artists flag
|
||||
artists: Option<(Vec<ArtistId>, bool)>,
|
||||
album: Option<AlbumId>,
|
||||
artist_page: bool,
|
||||
items: Vec<MusicItem>,
|
||||
warnings: Vec<String>,
|
||||
|
@ -212,26 +214,40 @@ impl MusicListMapper {
|
|||
pub fn new(lang: Language) -> Self {
|
||||
Self {
|
||||
lang,
|
||||
o_artists: None,
|
||||
artists: None,
|
||||
album: None,
|
||||
artist_page: false,
|
||||
items: Vec::new(),
|
||||
warnings: Vec::new(),
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
pub fn with_artists(
|
||||
lang: Language,
|
||||
artists: Vec<ChannelId>,
|
||||
artists_txt: String,
|
||||
artists: Vec<ArtistId>,
|
||||
by_va: bool,
|
||||
artist_page: bool,
|
||||
) -> Self {
|
||||
Self {
|
||||
lang,
|
||||
o_artists: Some((artists, artists_txt)),
|
||||
artists: Some((artists, by_va)),
|
||||
album: None,
|
||||
artist_page,
|
||||
items: Vec::new(),
|
||||
warnings: Vec::new(),
|
||||
}
|
||||
}*/
|
||||
|
||||
pub fn with_album(lang: Language, artists: Vec<ArtistId>, by_va: bool, album: AlbumId) -> Self {
|
||||
Self {
|
||||
lang,
|
||||
artists: Some((artists, by_va)),
|
||||
album: Some(album),
|
||||
artist_page: false,
|
||||
items: Vec::new(),
|
||||
warnings: Vec::new(),
|
||||
}
|
||||
}
|
||||
|
||||
fn map_item(&mut self, item: MusicResponseItem) -> Result<MusicEntityType, String> {
|
||||
|
@ -281,7 +297,7 @@ impl MusicListMapper {
|
|||
.map(|st| map_album_type(st.first_str(), self.lang))
|
||||
.unwrap_or_default();
|
||||
|
||||
let (artists, artists_txt) = map_artists(subtitle_p2);
|
||||
let (artists, by_va) = map_artists(subtitle_p2);
|
||||
|
||||
let year = subtitle_p3
|
||||
.and_then(|st| util::parse_numeric(st.first_str()).ok());
|
||||
|
@ -291,9 +307,9 @@ impl MusicListMapper {
|
|||
name: title,
|
||||
cover: item.thumbnail.into(),
|
||||
artists,
|
||||
artists_txt,
|
||||
album_type,
|
||||
year,
|
||||
by_va,
|
||||
}));
|
||||
Ok(MusicEntityType::Album)
|
||||
}
|
||||
|
@ -349,8 +365,10 @@ impl MusicListMapper {
|
|||
let title =
|
||||
title.ok_or_else(|| format!("track {}: could not get title", id))?;
|
||||
|
||||
let is_video =
|
||||
!first_tn.map(|tn| tn.height == tn.width).unwrap_or_default();
|
||||
// Videos have rectangular thumbnails, YTM tracks have square covers
|
||||
// Exception: there are no thumbnails on album items
|
||||
let is_video = self.album.is_none()
|
||||
&& !first_tn.map(|tn| tn.height == tn.width).unwrap_or_default();
|
||||
|
||||
let (artists_p, album_p, duration_p) = match item.flex_column_display_style
|
||||
{
|
||||
|
@ -385,8 +403,8 @@ impl MusicListMapper {
|
|||
.and_then(|p| util::parse_video_length(p.first_str()))
|
||||
.ok_or_else(|| format!("track {}: could not parse duration", id))?;
|
||||
|
||||
// The album field contains the track count for search videos
|
||||
let (album, view_count) = match (item.flex_column_display_style, is_video) {
|
||||
// The album field contains the view count for search videos
|
||||
(FlexColumnDisplayStyle::TwoLines, true) => (
|
||||
None,
|
||||
album_p.and_then(|p| {
|
||||
|
@ -394,29 +412,23 @@ impl MusicListMapper {
|
|||
}),
|
||||
),
|
||||
(_, false) => (
|
||||
album_p.and_then(|p| {
|
||||
p.0.into_iter().find_map(|c| AlbumId::try_from(c).ok())
|
||||
}),
|
||||
album_p
|
||||
.and_then(|p| {
|
||||
p.0.into_iter().find_map(|c| AlbumId::try_from(c).ok())
|
||||
})
|
||||
.or_else(|| self.album.clone()),
|
||||
None,
|
||||
),
|
||||
(FlexColumnDisplayStyle::Default, true) => (None, None),
|
||||
};
|
||||
|
||||
let mut artists_txt =
|
||||
artists_p.as_ref().and_then(TextComponents::to_opt_string);
|
||||
let mut artists = artists_p
|
||||
.map(|p| {
|
||||
p.0.into_iter()
|
||||
.filter_map(|c| ChannelId::try_from(c).ok())
|
||||
.collect::<Vec<_>>()
|
||||
})
|
||||
.unwrap_or_default();
|
||||
let (mut artists, _) = map_artists(artists_p);
|
||||
|
||||
if let Some(a) = &self.o_artists {
|
||||
if artists.is_empty() && artists_txt.is_none() {
|
||||
let xa = a.clone();
|
||||
artists = xa.0;
|
||||
artists_txt = Some(xa.1);
|
||||
// Fall back to the artist given when constructing the mapper.
|
||||
// This is used for extracting artist pages.
|
||||
if let Some(a) = &self.artists {
|
||||
if artists.is_empty() {
|
||||
artists = a.0.clone();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -428,7 +440,6 @@ impl MusicListMapper {
|
|||
duration,
|
||||
cover: item.thumbnail.into(),
|
||||
artists,
|
||||
artists_txt,
|
||||
album,
|
||||
view_count,
|
||||
is_video,
|
||||
|
@ -454,23 +465,18 @@ impl MusicListMapper {
|
|||
let mut year = None;
|
||||
let mut album_type = AlbumType::Single;
|
||||
|
||||
let (artists, artists_txt) =
|
||||
match (subtitle_p1, subtitle_p2, &self.o_artists, self.artist_page) {
|
||||
let (artists, by_va) =
|
||||
match (subtitle_p1, subtitle_p2, &self.artists, self.artist_page) {
|
||||
// "2022" (Artist singles)
|
||||
(Some(year_txt), None, Some((artists, artists_txt)), true) => {
|
||||
(Some(year_txt), None, Some(artists), true) => {
|
||||
year = util::parse_numeric(year_txt.first_str()).ok();
|
||||
(artists.clone(), artists_txt.clone())
|
||||
artists.clone()
|
||||
}
|
||||
// "Album", "2022" (Artist albums)
|
||||
(
|
||||
Some(atype_txt),
|
||||
Some(year_txt),
|
||||
Some((artists, artists_txt)),
|
||||
true,
|
||||
) => {
|
||||
(Some(atype_txt), Some(year_txt), Some(artists), true) => {
|
||||
year = util::parse_numeric(year_txt.first_str()).ok();
|
||||
album_type = map_album_type(atype_txt.first_str(), self.lang);
|
||||
(artists.clone(), artists_txt.clone())
|
||||
artists.clone()
|
||||
}
|
||||
// "Album", <"Oonagh"> (Album variants, new releases)
|
||||
(Some(atype_txt), Some(p2), _, false) => {
|
||||
|
@ -490,9 +496,9 @@ impl MusicListMapper {
|
|||
name: item.title,
|
||||
cover: item.thumbnail_renderer.into(),
|
||||
artists,
|
||||
artists_txt,
|
||||
year,
|
||||
album_type,
|
||||
year,
|
||||
by_va,
|
||||
}));
|
||||
Ok(MusicEntityType::Album)
|
||||
}
|
||||
|
@ -595,21 +601,30 @@ impl MusicListMapper {
|
|||
}
|
||||
}
|
||||
|
||||
pub(crate) fn map_artists(artists_p: Option<TextComponents>) -> (Vec<ChannelId>, String) {
|
||||
let artists_txt = artists_p
|
||||
.as_ref()
|
||||
.map(|p| p.to_string())
|
||||
.unwrap_or_default();
|
||||
pub(crate) fn map_artists(artists_p: Option<TextComponents>) -> (Vec<ArtistId>, bool) {
|
||||
let mut by_va = false;
|
||||
let artists = artists_p
|
||||
.map(|part| {
|
||||
part.0
|
||||
.into_iter()
|
||||
.filter_map(|c| ChannelId::try_from(c).ok())
|
||||
.enumerate()
|
||||
.filter_map(|(i, c)| {
|
||||
let artist = ArtistId::from(c);
|
||||
// Filter out text components with no links that are at
|
||||
// odd positions (conjunctions)
|
||||
if artist.id.is_none() && i % 2 == 1 {
|
||||
None
|
||||
} else if artist.id.is_none() && artist.name == util::VARIOUS_ARTISTS {
|
||||
by_va = true;
|
||||
None
|
||||
} else {
|
||||
Some(artist)
|
||||
}
|
||||
})
|
||||
.collect::<Vec<_>>()
|
||||
})
|
||||
.unwrap_or_default();
|
||||
|
||||
(artists, artists_txt)
|
||||
(artists, by_va)
|
||||
}
|
||||
|
||||
pub(crate) fn map_album_type(txt: &str, lang: Language) -> AlbumType {
|
||||
|
|
|
@ -29,12 +29,11 @@ MusicAlbum(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: "Oonagh",
|
||||
album_type: Album,
|
||||
year: Some(2016),
|
||||
by_va: false,
|
||||
|
@ -45,15 +44,17 @@ MusicAlbum(
|
|||
duration: 216,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(1),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -62,15 +63,17 @@ MusicAlbum(
|
|||
duration: 224,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(2),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -79,15 +82,17 @@ MusicAlbum(
|
|||
duration: 176,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(3),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -96,15 +101,17 @@ MusicAlbum(
|
|||
duration: 215,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(4),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -113,15 +120,17 @@ MusicAlbum(
|
|||
duration: 268,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(5),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -130,15 +139,17 @@ MusicAlbum(
|
|||
duration: 202,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(6),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -147,15 +158,17 @@ MusicAlbum(
|
|||
duration: 185,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(7),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -164,15 +177,17 @@ MusicAlbum(
|
|||
duration: 226,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(8),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -181,15 +196,17 @@ MusicAlbum(
|
|||
duration: 207,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(9),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -198,15 +215,17 @@ MusicAlbum(
|
|||
duration: 211,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(10),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -215,15 +234,17 @@ MusicAlbum(
|
|||
duration: 179,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(11),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -232,15 +253,17 @@ MusicAlbum(
|
|||
duration: 218,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(12),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -249,15 +272,17 @@ MusicAlbum(
|
|||
duration: 277,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(13),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -266,15 +291,17 @@ MusicAlbum(
|
|||
duration: 204,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(14),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -283,15 +310,17 @@ MusicAlbum(
|
|||
duration: 202,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(15),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -300,15 +329,17 @@ MusicAlbum(
|
|||
duration: 222,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(16),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -317,15 +348,17 @@ MusicAlbum(
|
|||
duration: 177,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(17),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -334,15 +367,17 @@ MusicAlbum(
|
|||
duration: 220,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(18),
|
||||
),
|
||||
],
|
||||
|
@ -363,14 +398,14 @@ MusicAlbum(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: "Oonagh",
|
||||
album_type: Album,
|
||||
year: None,
|
||||
by_va: false,
|
||||
),
|
||||
],
|
||||
)
|
||||
|
|
|
@ -29,16 +29,15 @@ MusicAlbum(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCXGYZ-OhdOpPBamHX3K9YRg",
|
||||
ArtistId(
|
||||
id: Some("UCXGYZ-OhdOpPBamHX3K9YRg"),
|
||||
name: "Joel Brandenstein",
|
||||
),
|
||||
ChannelId(
|
||||
id: "UCFTcSVPYRWlDoHisR-ZKwgw",
|
||||
ArtistId(
|
||||
id: Some("UCFTcSVPYRWlDoHisR-ZKwgw"),
|
||||
name: "Vanessa Mai",
|
||||
),
|
||||
],
|
||||
artists_txt: "Joel Brandenstein & Vanessa Mai",
|
||||
album_type: Single,
|
||||
year: Some(2020),
|
||||
by_va: false,
|
||||
|
@ -49,19 +48,21 @@ MusicAlbum(
|
|||
duration: 183,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCXGYZ-OhdOpPBamHX3K9YRg",
|
||||
ArtistId(
|
||||
id: Some("UCXGYZ-OhdOpPBamHX3K9YRg"),
|
||||
name: "Joel Brandenstein",
|
||||
),
|
||||
ChannelId(
|
||||
id: "UCFTcSVPYRWlDoHisR-ZKwgw",
|
||||
ArtistId(
|
||||
id: Some("UCFTcSVPYRWlDoHisR-ZKwgw"),
|
||||
name: "Vanessa Mai",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Joel Brandenstein & Vanessa Mai"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_bHfHGoy7vuv",
|
||||
name: "Der Himmel reißt auf",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(1),
|
||||
),
|
||||
],
|
||||
|
|
|
@ -29,7 +29,6 @@ MusicAlbum(
|
|||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: "Various Artists",
|
||||
album_type: Single,
|
||||
year: Some(2022),
|
||||
by_va: true,
|
||||
|
@ -39,11 +38,18 @@ MusicAlbum(
|
|||
title: "Waka Boom (My Way) (feat. Lee Young Ji)",
|
||||
duration: 274,
|
||||
cover: [],
|
||||
artists: [],
|
||||
artists_txt: Some("HYOLYN"),
|
||||
album: None,
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "HYOLYN",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8QkDeEIawvX",
|
||||
name: "<Queendom2> FINAL",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(1),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -51,11 +57,18 @@ MusicAlbum(
|
|||
title: "AURA",
|
||||
duration: 216,
|
||||
cover: [],
|
||||
artists: [],
|
||||
artists_txt: Some("WJSN"),
|
||||
album: None,
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "WJSN",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8QkDeEIawvX",
|
||||
name: "<Queendom2> FINAL",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(2),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -64,15 +77,17 @@ MusicAlbum(
|
|||
duration: 239,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCAKvDuIX3m1AUdPpDSqV_3w",
|
||||
ArtistId(
|
||||
id: Some("UCAKvDuIX3m1AUdPpDSqV_3w"),
|
||||
name: "Kep1er",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kep1er"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8QkDeEIawvX",
|
||||
name: "<Queendom2> FINAL",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(3),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -80,11 +95,18 @@ MusicAlbum(
|
|||
title: "Red Sun!",
|
||||
duration: 254,
|
||||
cover: [],
|
||||
artists: [],
|
||||
artists_txt: Some("VIVIZ"),
|
||||
album: None,
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "VIVIZ",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8QkDeEIawvX",
|
||||
name: "<Queendom2> FINAL",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(4),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -92,11 +114,18 @@ MusicAlbum(
|
|||
title: "POSE",
|
||||
duration: 187,
|
||||
cover: [],
|
||||
artists: [],
|
||||
artists_txt: Some("LOONA"),
|
||||
album: None,
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "LOONA",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8QkDeEIawvX",
|
||||
name: "<Queendom2> FINAL",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(5),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -104,11 +133,18 @@ MusicAlbum(
|
|||
title: "Whistle",
|
||||
duration: 224,
|
||||
cover: [],
|
||||
artists: [],
|
||||
artists_txt: Some("Brave Girls"),
|
||||
album: None,
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Brave Girls",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8QkDeEIawvX",
|
||||
name: "<Queendom2> FINAL",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(6),
|
||||
),
|
||||
],
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -43,8 +43,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -61,8 +65,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -79,8 +87,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -97,8 +109,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -115,8 +131,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -133,8 +153,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -151,8 +175,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -169,8 +197,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -187,8 +219,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -205,8 +241,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -223,8 +263,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -241,8 +285,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -259,8 +307,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -277,8 +329,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -295,8 +351,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -313,8 +373,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -331,8 +395,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -349,8 +417,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -367,8 +439,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -385,8 +461,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -403,8 +483,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -421,8 +505,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -439,8 +527,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -457,8 +549,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -475,8 +571,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -493,8 +593,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -511,8 +615,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -529,8 +637,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -547,8 +659,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -565,8 +681,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -583,8 +703,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -601,8 +725,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -619,8 +747,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -637,8 +769,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -655,8 +791,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -673,8 +813,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -691,8 +835,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -709,8 +857,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -727,8 +879,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -745,8 +901,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -763,8 +923,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -781,8 +945,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -799,8 +967,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -817,8 +989,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -835,8 +1011,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -853,8 +1033,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -871,8 +1055,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -889,8 +1077,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -907,8 +1099,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -925,8 +1121,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -943,8 +1143,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -961,8 +1165,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -979,8 +1187,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -997,8 +1209,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -1015,8 +1231,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -1033,8 +1253,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -1051,8 +1275,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -1069,8 +1297,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -1087,8 +1319,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -1105,8 +1341,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -1123,8 +1363,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -1141,8 +1385,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -1159,8 +1407,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -1177,8 +1429,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -1195,8 +1451,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
@ -1213,8 +1473,12 @@ MusicPlaylist(
|
|||
height: 225,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Chaosflo44"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Chaosflo44",
|
||||
),
|
||||
],
|
||||
album: None,
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -32,14 +32,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCEdZAdnnKqbaHOlv8nM6OtA",
|
||||
ArtistId(
|
||||
id: Some("UCEdZAdnnKqbaHOlv8nM6OtA"),
|
||||
name: "aespa",
|
||||
),
|
||||
],
|
||||
artists_txt: "aespa",
|
||||
album_type: Single,
|
||||
year: Some(2020),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_pvdHyqvGjbI",
|
||||
|
@ -67,14 +67,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCEdZAdnnKqbaHOlv8nM6OtA",
|
||||
ArtistId(
|
||||
id: Some("UCEdZAdnnKqbaHOlv8nM6OtA"),
|
||||
name: "aespa",
|
||||
),
|
||||
],
|
||||
artists_txt: "aespa",
|
||||
album_type: Album,
|
||||
year: Some(2022),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_CznUTKnATw6",
|
||||
|
@ -102,14 +102,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCZK5n7V2-iPHfUXLV2tDvzw",
|
||||
ArtistId(
|
||||
id: Some("UCZK5n7V2-iPHfUXLV2tDvzw"),
|
||||
name: "Cojack",
|
||||
),
|
||||
],
|
||||
artists_txt: "Cojack",
|
||||
album_type: Single,
|
||||
year: Some(2020),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_Sx4uifBuKyD",
|
||||
|
@ -137,14 +137,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCudOYmRtW3uylYtqY1aAD0A",
|
||||
ArtistId(
|
||||
id: Some("UCudOYmRtW3uylYtqY1aAD0A"),
|
||||
name: "Montana Of 300",
|
||||
),
|
||||
],
|
||||
artists_txt: "Montana Of 300",
|
||||
album_type: Single,
|
||||
year: Some(2020),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_PdIIalyOQXF",
|
||||
|
@ -172,14 +172,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC8whsREta_7Fu-EjRq2Ys-A",
|
||||
ArtistId(
|
||||
id: Some("UC8whsREta_7Fu-EjRq2Ys-A"),
|
||||
name: "Alpha Wolf",
|
||||
),
|
||||
],
|
||||
artists_txt: "Alpha Wolf",
|
||||
album_type: Single,
|
||||
year: Some(2018),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_9KdyuqvufOL",
|
||||
|
@ -207,14 +207,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCRy7ecValgvorRe_8dum9lA",
|
||||
ArtistId(
|
||||
id: Some("UCRy7ecValgvorRe_8dum9lA"),
|
||||
name: "ESKIIMO",
|
||||
),
|
||||
],
|
||||
artists_txt: "ESKIIMO",
|
||||
album_type: Ep,
|
||||
year: Some(2022),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_VDjWCOUvD7s",
|
||||
|
@ -242,14 +242,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCdkNrc_l73BHYKRhDqxBo9w",
|
||||
ArtistId(
|
||||
id: Some("UCdkNrc_l73BHYKRhDqxBo9w"),
|
||||
name: "Black Mamba Man",
|
||||
),
|
||||
],
|
||||
artists_txt: "Black Mamba Man",
|
||||
album_type: Album,
|
||||
year: Some(2017),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_xjJaY8xb2Rw",
|
||||
|
@ -277,14 +277,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCn09cNujyKjEA1NxD5Aj_mQ",
|
||||
ArtistId(
|
||||
id: Some("UCn09cNujyKjEA1NxD5Aj_mQ"),
|
||||
name: "Paride Saraceni",
|
||||
),
|
||||
],
|
||||
artists_txt: "Paride Saraceni",
|
||||
album_type: Single,
|
||||
year: Some(2019),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_CH1VEbx7Lle",
|
||||
|
@ -312,14 +312,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCYAFIwL4uBWQHBrBiohx1vw",
|
||||
ArtistId(
|
||||
id: Some("UCYAFIwL4uBWQHBrBiohx1vw"),
|
||||
name: "Addis Black Mamba",
|
||||
),
|
||||
],
|
||||
artists_txt: "Addis Black Mamba",
|
||||
album_type: Single,
|
||||
year: Some(2019),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_IfiMtX5CnWJ",
|
||||
|
@ -347,22 +347,22 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCs04jfHH78YUziFA52P97LA",
|
||||
ArtistId(
|
||||
id: Some("UCs04jfHH78YUziFA52P97LA"),
|
||||
name: "R. Black Mamba",
|
||||
),
|
||||
ChannelId(
|
||||
id: "UCsOfYy8UlBPRYkC5lgRaatA",
|
||||
ArtistId(
|
||||
id: Some("UCsOfYy8UlBPRYkC5lgRaatA"),
|
||||
name: "Lonzzo",
|
||||
),
|
||||
ChannelId(
|
||||
id: "UCEwg585uC9nBoL8KA7ayjPA",
|
||||
ArtistId(
|
||||
id: Some("UCEwg585uC9nBoL8KA7ayjPA"),
|
||||
name: "24.Gz",
|
||||
),
|
||||
],
|
||||
artists_txt: "R. Black Mamba, Lonzzo & 24.Gz",
|
||||
album_type: Single,
|
||||
year: Some(2022),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_DeCImAQRYMO",
|
||||
|
@ -390,14 +390,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCZwE-b-kzA4pQaCQXwOQnlg",
|
||||
ArtistId(
|
||||
id: Some("UCZwE-b-kzA4pQaCQXwOQnlg"),
|
||||
name: "Seoul Philharmonic Orchestra",
|
||||
),
|
||||
],
|
||||
artists_txt: "Seoul Philharmonic Orchestra",
|
||||
album_type: Single,
|
||||
year: Some(2022),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_vXAHel98vo2",
|
||||
|
@ -425,14 +425,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_SI7sOel-qMTvSe-lGHX8w",
|
||||
ArtistId(
|
||||
id: Some("UC_SI7sOel-qMTvSe-lGHX8w"),
|
||||
name: "Hever Jara",
|
||||
),
|
||||
],
|
||||
artists_txt: "Hever Jara",
|
||||
album_type: Single,
|
||||
year: Some(2018),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_iAemzaCGXuo",
|
||||
|
@ -460,14 +460,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCMZowOoC3u_ntr9o52ekeZw",
|
||||
ArtistId(
|
||||
id: Some("UCMZowOoC3u_ntr9o52ekeZw"),
|
||||
name: "Yung FN",
|
||||
),
|
||||
],
|
||||
artists_txt: "Yung FN",
|
||||
album_type: Single,
|
||||
year: Some(2022),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_CbIA5po2cn4",
|
||||
|
@ -495,14 +495,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCX6v_euBwliDYV2NMTouuSA",
|
||||
ArtistId(
|
||||
id: Some("UCX6v_euBwliDYV2NMTouuSA"),
|
||||
name: "Hobino",
|
||||
),
|
||||
],
|
||||
artists_txt: "Hobino",
|
||||
album_type: Single,
|
||||
year: Some(2022),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_yrsxU7t0h6l",
|
||||
|
@ -530,14 +530,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCAlOD5s3Ro27M61-2Z_UB7w",
|
||||
ArtistId(
|
||||
id: Some("UCAlOD5s3Ro27M61-2Z_UB7w"),
|
||||
name: "Tee See Connection",
|
||||
),
|
||||
],
|
||||
artists_txt: "Tee See Connection",
|
||||
album_type: Single,
|
||||
year: Some(2013),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_fETChb2O2uR",
|
||||
|
@ -565,14 +565,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC77rFNJxH8Y2VwSYp8ZTXHA",
|
||||
ArtistId(
|
||||
id: Some("UC77rFNJxH8Y2VwSYp8ZTXHA"),
|
||||
name: "Franco Vitola",
|
||||
),
|
||||
],
|
||||
artists_txt: "Franco Vitola",
|
||||
album_type: Single,
|
||||
year: Some(2020),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_VcRKLYVgy11",
|
||||
|
@ -600,14 +600,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCxX9tNcQgCBuU56ezupriqg",
|
||||
ArtistId(
|
||||
id: Some("UCxX9tNcQgCBuU56ezupriqg"),
|
||||
name: "Black Mamba",
|
||||
),
|
||||
],
|
||||
artists_txt: "Black Mamba",
|
||||
album_type: Album,
|
||||
year: Some(2011),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_grtT3Ze8U2Z",
|
||||
|
@ -635,14 +635,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC6Y8G45J9Uv2EsLLOatymOw",
|
||||
ArtistId(
|
||||
id: Some("UC6Y8G45J9Uv2EsLLOatymOw"),
|
||||
name: "WookTheCrook",
|
||||
),
|
||||
],
|
||||
artists_txt: "WookTheCrook",
|
||||
album_type: Single,
|
||||
year: Some(2022),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_hXasyBrDJm7",
|
||||
|
@ -670,14 +670,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCaDT20-B3U8h-tPg_VMvntw",
|
||||
ArtistId(
|
||||
id: Some("UCaDT20-B3U8h-tPg_VMvntw"),
|
||||
name: "The Black Mamba",
|
||||
),
|
||||
],
|
||||
artists_txt: "The Black Mamba",
|
||||
album_type: Album,
|
||||
year: Some(2012),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_jDiEDfz09CY",
|
||||
|
@ -705,14 +705,14 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCJq1MEuNM0SidXn5pMqqHBA",
|
||||
ArtistId(
|
||||
id: Some("UCJq1MEuNM0SidXn5pMqqHBA"),
|
||||
name: "Voltage",
|
||||
),
|
||||
],
|
||||
artists_txt: "Voltage",
|
||||
album_type: Single,
|
||||
year: Some(2019),
|
||||
by_va: false,
|
||||
),
|
||||
],
|
||||
ctoken: Some("EoIGEgtibGFjayBtYW1iYRryBUVnV0tBUUlZQVVnVWFnd1FBeEFFRUFrUURoQUtFQVdDQVJoVlEyRjJabUpWTlc0emFEaHZXR2RSUzBkTlZqTkhXbEdDQVJoVlEzbE1XR2hVTWxGU1ZYRlJVbUZUY2tST1RVSmZNMmVDQVJoVlEyZG1SR2RXWVRsbE9EWm1TVTVZYTE5elpWOWxlWGVDQVJoVlEzZGlNekEyT0ZkQ1dYTlJjbkl5WDBSS1pIRlRaWGVDQVJoVlEwZEhWVVkwWHpjMFZuWkxSbmR1Y0ZCRU1FWndPRUdDQVJoVlEyaHBaMVprUkhVM1owTkpZWEJ0ZUZSeGEyZG1RM2VDQVJoVlEyd3laVFpzVXkwdGQzYzNabnBLWVMxV2QxQkJNbWVDQVJoVlF6Z3RhbmxoVkdsSU9VWlViVGRRZG10RllYa3hWVUdDQVJoVlF5MDBOSGRNWm04eldISmplbGROZFdsQ1JWbHJWVUdDQVJoVlEzWnVjVmw1UVdSUGJWRnZVMlpMZEV0SldYVm5NbEdDQVJoVlEyWmlhMFpCTjFSU01tMXhRbU5WVVZCWFZFaDBWWGVDQVJoVlEzcHlkM2RGZUhZeWQxUmFkUzFrVldobU9DMVdUbmVDQVJoVlEySmpNa2xCYmxOTE0zcDBWR0YyVGtkTFJrRk5UWGVDQVJoVlF6UnlSVGRPTW5sR2VrVXdNVVozY1ZwdVdrWm5RVUdDQVJoVlEwRTBORFF4YlZGaGNHazNTbU5RWmpkVVkxOHdSVUdDQVJoVlEzZHBZVjl1ZUc5QlkwRjFiVmgzUmpVeVVHeDFYMmVDQVJoVlF6QlZVMWhDU1VOcmJHbGlhSGxVUkhKaWVHUldMVkdDQVJoVlF6bERMV1pwVG1JM1FWWjJjRGRWZGxKdlEyMTJjMUdDQVJoVlEwZFZkMUJHWVVaMFdVRXRiamRhVERSSFlubHlYM2VDQVJoVlEySkdiRTR5Y0RCT1owbERlbVZYVFRNd1pIQTFaMmMlM0QY8erQLg%3D%3D"),
|
||||
|
|
|
@ -16,12 +16,11 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCEdZAdnnKqbaHOlv8nM6OtA",
|
||||
ArtistId(
|
||||
id: Some("UCEdZAdnnKqbaHOlv8nM6OtA"),
|
||||
name: "aespa",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("aespa"),
|
||||
album: None,
|
||||
view_count: Some(235000000),
|
||||
is_video: true,
|
||||
|
@ -44,12 +43,11 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCEdZAdnnKqbaHOlv8nM6OtA",
|
||||
ArtistId(
|
||||
id: Some("UCEdZAdnnKqbaHOlv8nM6OtA"),
|
||||
name: "aespa",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("aespa"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_OpHWHwyNOuY",
|
||||
name: "Black Mamba",
|
||||
|
@ -75,16 +73,15 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCfCNL5oajlQBAlyjWv1ChVw",
|
||||
ArtistId(
|
||||
id: Some("UCfCNL5oajlQBAlyjWv1ChVw"),
|
||||
name: "Hans Zimmer",
|
||||
),
|
||||
ChannelId(
|
||||
id: "UCvTXGTZf9EvuCAwZOkoR2iQ",
|
||||
ArtistId(
|
||||
id: Some("UCvTXGTZf9EvuCAwZOkoR2iQ"),
|
||||
name: "Lorne Balfe",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Hans Zimmer & Lorne Balfe"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_UmDOhLpDsc0",
|
||||
name: "Megamind (Music from the Motion Picture)",
|
||||
|
@ -110,12 +107,11 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCz6yr3CgFGrrrPDa2asbWMQ",
|
||||
ArtistId(
|
||||
id: Some("UCz6yr3CgFGrrrPDa2asbWMQ"),
|
||||
name: "Bayamon PR Tribe",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Bayamon PR Tribe"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_RV0PGHyGfkp",
|
||||
name: "LISTEN ME",
|
||||
|
@ -136,12 +132,11 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCS_hnpJLQTvBkqALgapi_4g",
|
||||
ArtistId(
|
||||
id: Some("UCS_hnpJLQTvBkqALgapi_4g"),
|
||||
name: "스브스케이팝 X INKIGAYO",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("스브스케이팝 X INKIGAYO"),
|
||||
album: None,
|
||||
view_count: Some(10000000),
|
||||
is_video: true,
|
||||
|
@ -159,12 +154,11 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCEdZAdnnKqbaHOlv8nM6OtA",
|
||||
ArtistId(
|
||||
id: Some("UCEdZAdnnKqbaHOlv8nM6OtA"),
|
||||
name: "aespa",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("aespa"),
|
||||
album: None,
|
||||
view_count: Some(18000000),
|
||||
is_video: true,
|
||||
|
@ -182,12 +176,11 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC5BMQOsAB8hKUyHu9KI6yig",
|
||||
ArtistId(
|
||||
id: Some("UC5BMQOsAB8hKUyHu9KI6yig"),
|
||||
name: "KBS WORLD TV",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("KBS WORLD TV"),
|
||||
album: None,
|
||||
view_count: Some(3200000),
|
||||
is_video: true,
|
||||
|
@ -221,14 +214,14 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCEdZAdnnKqbaHOlv8nM6OtA",
|
||||
ArtistId(
|
||||
id: Some("UCEdZAdnnKqbaHOlv8nM6OtA"),
|
||||
name: "aespa",
|
||||
),
|
||||
],
|
||||
artists_txt: "aespa",
|
||||
album_type: Single,
|
||||
year: Some(2020),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_pvdHyqvGjbI",
|
||||
|
@ -256,14 +249,14 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCEdZAdnnKqbaHOlv8nM6OtA",
|
||||
ArtistId(
|
||||
id: Some("UCEdZAdnnKqbaHOlv8nM6OtA"),
|
||||
name: "aespa",
|
||||
),
|
||||
],
|
||||
artists_txt: "aespa",
|
||||
album_type: Album,
|
||||
year: Some(2022),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_CznUTKnATw6",
|
||||
|
@ -291,14 +284,14 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCZK5n7V2-iPHfUXLV2tDvzw",
|
||||
ArtistId(
|
||||
id: Some("UCZK5n7V2-iPHfUXLV2tDvzw"),
|
||||
name: "Cojack",
|
||||
),
|
||||
],
|
||||
artists_txt: "Cojack",
|
||||
album_type: Single,
|
||||
year: Some(2020),
|
||||
by_va: false,
|
||||
),
|
||||
],
|
||||
artists: [
|
||||
|
|
|
@ -23,12 +23,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCEdZAdnnKqbaHOlv8nM6OtA",
|
||||
ArtistId(
|
||||
id: Some("UCEdZAdnnKqbaHOlv8nM6OtA"),
|
||||
name: "aespa",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("aespa"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_OpHWHwyNOuY",
|
||||
name: "Black Mamba",
|
||||
|
@ -54,16 +53,15 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCfCNL5oajlQBAlyjWv1ChVw",
|
||||
ArtistId(
|
||||
id: Some("UCfCNL5oajlQBAlyjWv1ChVw"),
|
||||
name: "Hans Zimmer",
|
||||
),
|
||||
ChannelId(
|
||||
id: "UCvTXGTZf9EvuCAwZOkoR2iQ",
|
||||
ArtistId(
|
||||
id: Some("UCvTXGTZf9EvuCAwZOkoR2iQ"),
|
||||
name: "Lorne Balfe",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Hans Zimmer & Lorne Balfe"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_UmDOhLpDsc0",
|
||||
name: "Megamind (Music from the Motion Picture)",
|
||||
|
@ -89,12 +87,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCZwE-b-kzA4pQaCQXwOQnlg",
|
||||
ArtistId(
|
||||
id: Some("UCZwE-b-kzA4pQaCQXwOQnlg"),
|
||||
name: "Seoul Philharmonic Orchestra",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Seoul Philharmonic Orchestra"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_DeCImAQRYMO",
|
||||
name: "Black Mamba (Orchestra Version)",
|
||||
|
@ -120,12 +117,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC8whsREta_7Fu-EjRq2Ys-A",
|
||||
ArtistId(
|
||||
id: Some("UC8whsREta_7Fu-EjRq2Ys-A"),
|
||||
name: "Alpha Wolf",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Alpha Wolf"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_PdIIalyOQXF",
|
||||
name: "Black Mamba",
|
||||
|
@ -151,12 +147,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCz6yr3CgFGrrrPDa2asbWMQ",
|
||||
ArtistId(
|
||||
id: Some("UCz6yr3CgFGrrrPDa2asbWMQ"),
|
||||
name: "Bayamon PR Tribe",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Bayamon PR Tribe"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_RV0PGHyGfkp",
|
||||
name: "LISTEN ME",
|
||||
|
@ -182,12 +177,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC7sFWdsZTzfR507dbonTlyQ",
|
||||
ArtistId(
|
||||
id: Some("UC7sFWdsZTzfR507dbonTlyQ"),
|
||||
name: "Jethro Tull",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Jethro Tull"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_uC4NIfLr7VS",
|
||||
name: "J-Tull Dot Com",
|
||||
|
@ -213,12 +207,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCzqRJ5qy_ekVd9jfaAlb7nA",
|
||||
ArtistId(
|
||||
id: Some("UCzqRJ5qy_ekVd9jfaAlb7nA"),
|
||||
name: "FREE FLOW FLAVA",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("FREE FLOW FLAVA"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_4gkEob83yi2",
|
||||
name: "Hidden Tape",
|
||||
|
@ -244,12 +237,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCi8RICptUr15gPmPjEuIEDQ",
|
||||
ArtistId(
|
||||
id: Some("UCi8RICptUr15gPmPjEuIEDQ"),
|
||||
name: "Ashkabad",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Ashkabad"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_SU8gaBGZv2T",
|
||||
name: "Reptile",
|
||||
|
@ -275,12 +267,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCudOYmRtW3uylYtqY1aAD0A",
|
||||
ArtistId(
|
||||
id: Some("UCudOYmRtW3uylYtqY1aAD0A"),
|
||||
name: "Montana Of 300",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Montana Of 300"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_Sx4uifBuKyD",
|
||||
name: "Black Mamba",
|
||||
|
@ -306,12 +297,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCoNSQrGCiSZscyBwQTsMK2g",
|
||||
ArtistId(
|
||||
id: Some("UCoNSQrGCiSZscyBwQTsMK2g"),
|
||||
name: "Dj Zapy & Dj Uragun",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Dj Zapy & Dj Uragun"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nfwzSf4mnx4",
|
||||
name: "Black Mamba",
|
||||
|
@ -337,12 +327,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCkjmrFnxpkxI4cVVwhc_mMw",
|
||||
ArtistId(
|
||||
id: Some("UCkjmrFnxpkxI4cVVwhc_mMw"),
|
||||
name: "Alex Torres y Los Reyes Latinos",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Alex Torres y Los Reyes Latinos"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_9SbptcWbS7a",
|
||||
name: "Elementos",
|
||||
|
@ -367,8 +356,12 @@ MusicSearchFiltered(
|
|||
height: 120,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("C.JERRY"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "C.JERRY",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_0lYy8bzdAWJ",
|
||||
name: "Bleem多维视角",
|
||||
|
@ -394,16 +387,15 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_PI4ScqWXzHuYP2TNqw6vg",
|
||||
ArtistId(
|
||||
id: Some("UC_PI4ScqWXzHuYP2TNqw6vg"),
|
||||
name: "Nerissima Serpe",
|
||||
),
|
||||
ChannelId(
|
||||
id: "UCugPYAOw4Ig_6043IZslywQ",
|
||||
ArtistId(
|
||||
id: Some("UCugPYAOw4Ig_6043IZslywQ"),
|
||||
name: "Fri2",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Nerissima Serpe & Fri2"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_6cqJGhzYwwg",
|
||||
name: "BLCK MAMBA",
|
||||
|
@ -429,12 +421,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCr8Gk2ECkAhRzNWCqKg62bA",
|
||||
ArtistId(
|
||||
id: Some("UCr8Gk2ECkAhRzNWCqKg62bA"),
|
||||
name: "Biodizzy",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Biodizzy"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_11tzMasyq5O",
|
||||
name: "Mathomo Mayo",
|
||||
|
@ -460,12 +451,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC6LdZsjHDoy88JtQnEz4z4A",
|
||||
ArtistId(
|
||||
id: Some("UC6LdZsjHDoy88JtQnEz4z4A"),
|
||||
name: "Mamba Cinco",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Mamba Cinco"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_BBP23Ry1SBL",
|
||||
name: "Told Black",
|
||||
|
@ -491,16 +481,15 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCX1lJbaUf3IEGhNi1_KCEZw",
|
||||
ArtistId(
|
||||
id: Some("UCX1lJbaUf3IEGhNi1_KCEZw"),
|
||||
name: "Vagabond",
|
||||
),
|
||||
ChannelId(
|
||||
id: "UCt4qpUnoWz3aUM5DYDBod0A",
|
||||
ArtistId(
|
||||
id: Some("UCt4qpUnoWz3aUM5DYDBod0A"),
|
||||
name: "Brisk",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Vagabond & Brisk"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_aLZJtqNevjw",
|
||||
name: "Night & Dayz / Black Mamba",
|
||||
|
@ -526,12 +515,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCoJXsT1SzLsZZgg5P0yaVQw",
|
||||
ArtistId(
|
||||
id: Some("UCoJXsT1SzLsZZgg5P0yaVQw"),
|
||||
name: "Ghost Tribe",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Ghost Tribe"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_fzz3cs4IkeX",
|
||||
name: "Black Mamba Jiu Jitsu",
|
||||
|
@ -557,12 +545,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCxoJ3pl32f39kmTvIR_NWOg",
|
||||
ArtistId(
|
||||
id: Some("UCxoJ3pl32f39kmTvIR_NWOg"),
|
||||
name: "Akae Beka",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Akae Beka"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_iuN0lQwEmRp",
|
||||
name: "Kings Dub",
|
||||
|
@ -588,12 +575,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC7RJTtpE3qwbw6-Idq9PTIg",
|
||||
ArtistId(
|
||||
id: Some("UC7RJTtpE3qwbw6-Idq9PTIg"),
|
||||
name: "Shockwave-Sound",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Shockwave-Sound"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_Kg4Ff883GH0",
|
||||
name: "Out on the Road",
|
||||
|
@ -619,12 +605,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCfGf1P_mK274Rp3OKFTgbBQ",
|
||||
ArtistId(
|
||||
id: Some("UCfGf1P_mK274Rp3OKFTgbBQ"),
|
||||
name: "Dubb Bankroll",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Dubb Bankroll"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_VGZMM6pmzrt",
|
||||
name: "Area 51",
|
||||
|
|
|
@ -23,12 +23,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCIh4j8fXWf2U0ro0qnGU8Mg",
|
||||
ArtistId(
|
||||
id: Some("UCIh4j8fXWf2U0ro0qnGU8Mg"),
|
||||
name: "Namika",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Namika"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_RXHxrUFfrvQ",
|
||||
name: "Lieblingsmensch",
|
||||
|
@ -54,12 +53,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCCpID8TTjkkjLCwBybAfHSg",
|
||||
ArtistId(
|
||||
id: Some("UCCpID8TTjkkjLCwBybAfHSg"),
|
||||
name: "Boris Brejcha",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Boris Brejcha"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_VFqQlfPhsFW",
|
||||
name: "Lieblingsmensch",
|
||||
|
@ -85,12 +83,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCMLbHQGqUHeNAqjOL1qXZXg",
|
||||
ArtistId(
|
||||
id: Some("UCMLbHQGqUHeNAqjOL1qXZXg"),
|
||||
name: "Lumbematz",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Lumbematz"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_14GKjCEauSE",
|
||||
name: "Lieblingsmensch",
|
||||
|
@ -116,12 +113,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCCpID8TTjkkjLCwBybAfHSg",
|
||||
ArtistId(
|
||||
id: Some("UCCpID8TTjkkjLCwBybAfHSg"),
|
||||
name: "Boris Brejcha",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Boris Brejcha"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_AlIjxpnBKtn",
|
||||
name: "Lieblingsmensch (Edit)",
|
||||
|
@ -147,12 +143,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCTJBrv8T8AxavAynvB3_DSw",
|
||||
ArtistId(
|
||||
id: Some("UCTJBrv8T8AxavAynvB3_DSw"),
|
||||
name: "Seer",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Seer"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_t2Laj9ENdVn",
|
||||
name: "echt seerisch",
|
||||
|
@ -178,12 +173,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCtoec88rzlhABHeo_4d-H8g",
|
||||
ArtistId(
|
||||
id: Some("UCtoec88rzlhABHeo_4d-H8g"),
|
||||
name: "Dame",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Dame"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_9ILis64aD76",
|
||||
name: "Notiz an mich",
|
||||
|
@ -209,12 +203,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UClOpZVfE5v-fFtM8vqFud-g",
|
||||
ArtistId(
|
||||
id: Some("UClOpZVfE5v-fFtM8vqFud-g"),
|
||||
name: "KIDZ BOP Kids",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("KIDZ BOP Kids"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_vxdAMBsmm1s",
|
||||
name: "KIDZ BOP Ultimate Playlist",
|
||||
|
@ -240,12 +233,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCIh4j8fXWf2U0ro0qnGU8Mg",
|
||||
ArtistId(
|
||||
id: Some("UCIh4j8fXWf2U0ro0qnGU8Mg"),
|
||||
name: "Namika",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Namika"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_V5f8YfHKp2j",
|
||||
name: "Lieblingsmensch",
|
||||
|
@ -271,12 +263,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCvfUKCnUBfsZAVHgF-pYmJg",
|
||||
ArtistId(
|
||||
id: Some("UCvfUKCnUBfsZAVHgF-pYmJg"),
|
||||
name: "Voyce",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Voyce"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_SpT32xAd4YR",
|
||||
name: "Gegenstück EP",
|
||||
|
@ -302,12 +293,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCosvbvqFxbUniyDCUNXN5wA",
|
||||
ArtistId(
|
||||
id: Some("UCosvbvqFxbUniyDCUNXN5wA"),
|
||||
name: "Klaus Hanslbauer",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Klaus Hanslbauer"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_oz9ZiEQcBU4",
|
||||
name: "Lieblingsmensch",
|
||||
|
@ -333,12 +323,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCIh4j8fXWf2U0ro0qnGU8Mg",
|
||||
ArtistId(
|
||||
id: Some("UCIh4j8fXWf2U0ro0qnGU8Mg"),
|
||||
name: "Namika",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Namika"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_V5f8YfHKp2j",
|
||||
name: "Lieblingsmensch",
|
||||
|
@ -364,12 +353,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCk-g5nfpm8Q9gfy7DuU8PZA",
|
||||
ArtistId(
|
||||
id: Some("UCk-g5nfpm8Q9gfy7DuU8PZA"),
|
||||
name: "VVIER",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("VVIER"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_Oc7tpyMz6uE",
|
||||
name: "Zusammen",
|
||||
|
@ -395,12 +383,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCIh4j8fXWf2U0ro0qnGU8Mg",
|
||||
ArtistId(
|
||||
id: Some("UCIh4j8fXWf2U0ro0qnGU8Mg"),
|
||||
name: "Namika",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Namika"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_V5f8YfHKp2j",
|
||||
name: "Lieblingsmensch",
|
||||
|
@ -426,12 +413,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCDBvf2dl0XZQvIKPsrsDprg",
|
||||
ArtistId(
|
||||
id: Some("UCDBvf2dl0XZQvIKPsrsDprg"),
|
||||
name: "Sebó",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Sebó"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_X5boeaZWzPX",
|
||||
name: "Lieblingsmensch",
|
||||
|
@ -457,12 +443,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC2_O7ywkwEh-crQedvyNOYg",
|
||||
ArtistId(
|
||||
id: Some("UC2_O7ywkwEh-crQedvyNOYg"),
|
||||
name: "DIA Herbst",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("DIA Herbst"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8f4SNZ8HDhD",
|
||||
name: "Lieblingsmensch",
|
||||
|
@ -487,8 +472,12 @@ MusicSearchFiltered(
|
|||
height: 120,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Jasmin Bick"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Jasmin Bick",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_6PhWrMAoiO3",
|
||||
name: "Volksmusik Sommer 2017",
|
||||
|
@ -514,12 +503,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCtsMcVBiK9QvtS2LH8Z6M5g",
|
||||
ArtistId(
|
||||
id: Some("UCtsMcVBiK9QvtS2LH8Z6M5g"),
|
||||
name: "Apres Ski",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Apres Ski"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_4HeyZ3um21Q",
|
||||
name: "Ballermann Stars - Après Ski Hits 2016 Party (Die XXL Schlager Party im Karneval und Fasching der Saison 2015 bis 2016)",
|
||||
|
@ -545,12 +533,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC16V9XG1PfOD1E0m6G-s22A",
|
||||
ArtistId(
|
||||
id: Some("UC16V9XG1PfOD1E0m6G-s22A"),
|
||||
name: "Trap Lion Beats",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Trap Lion Beats"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_BVRbZ6muIXJ",
|
||||
name: "25 Trap Beats, Vol. 5",
|
||||
|
@ -575,8 +562,12 @@ MusicSearchFiltered(
|
|||
height: 120,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Eva Florist"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Eva Florist",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_wRHz8l7GRIp",
|
||||
name: "Ballermann Raketen - Die Party Hits für Weihnachten und die Silvester Schlager Fete der Saison 2015 bis 2016",
|
||||
|
@ -602,12 +593,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCIh4j8fXWf2U0ro0qnGU8Mg",
|
||||
ArtistId(
|
||||
id: Some("UCIh4j8fXWf2U0ro0qnGU8Mg"),
|
||||
name: "Namika",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Namika"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_eew4y1xo5Q3",
|
||||
name: "Live @ DELUXE MUSIC SESSION",
|
||||
|
|
|
@ -18,12 +18,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCEdZAdnnKqbaHOlv8nM6OtA",
|
||||
ArtistId(
|
||||
id: Some("UCEdZAdnnKqbaHOlv8nM6OtA"),
|
||||
name: "aespa",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("aespa"),
|
||||
album: None,
|
||||
view_count: Some(235000000),
|
||||
is_video: true,
|
||||
|
@ -41,12 +40,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCyEMqKQPGdj8wKVKt2-agbQ",
|
||||
ArtistId(
|
||||
id: Some("UCyEMqKQPGdj8wKVKt2-agbQ"),
|
||||
name: "Beatport",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Beatport"),
|
||||
album: None,
|
||||
view_count: Some(6400),
|
||||
is_video: true,
|
||||
|
@ -64,12 +62,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC0PlwwXUJihXdol4I9vuE0g",
|
||||
ArtistId(
|
||||
id: Some("UC0PlwwXUJihXdol4I9vuE0g"),
|
||||
name: "PridePKJ",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("PridePKJ"),
|
||||
album: None,
|
||||
view_count: Some(701),
|
||||
is_video: true,
|
||||
|
@ -87,12 +84,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCzP_LIeF9W26F7o03k-Y9CQ",
|
||||
ArtistId(
|
||||
id: Some("UCzP_LIeF9W26F7o03k-Y9CQ"),
|
||||
name: "Seayou Records",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Seayou Records"),
|
||||
album: None,
|
||||
view_count: Some(80000),
|
||||
is_video: true,
|
||||
|
@ -110,12 +106,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCRpjHHu8ivVWs73uxHlWwFA",
|
||||
ArtistId(
|
||||
id: Some("UCRpjHHu8ivVWs73uxHlWwFA"),
|
||||
name: "Eurovision Song Contest",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Eurovision Song Contest"),
|
||||
album: None,
|
||||
view_count: Some(1100000),
|
||||
is_video: true,
|
||||
|
@ -133,12 +128,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCoRXPcv8XK5fAplLbk9PTww",
|
||||
ArtistId(
|
||||
id: Some("UCoRXPcv8XK5fAplLbk9PTww"),
|
||||
name: "THE K-POP",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("THE K-POP"),
|
||||
album: None,
|
||||
view_count: Some(269000),
|
||||
is_video: true,
|
||||
|
@ -156,12 +150,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCsw9NVMkJfbxHTuMUMlk3mw",
|
||||
ArtistId(
|
||||
id: Some("UCsw9NVMkJfbxHTuMUMlk3mw"),
|
||||
name: "Dj Kronos",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Dj Kronos"),
|
||||
album: None,
|
||||
view_count: Some(32000),
|
||||
is_video: true,
|
||||
|
@ -179,12 +172,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCBju0pyQY7EWRvLqMkXcxBw",
|
||||
ArtistId(
|
||||
id: Some("UCBju0pyQY7EWRvLqMkXcxBw"),
|
||||
name: "1O1% MUSIC",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("1O1% MUSIC"),
|
||||
album: None,
|
||||
view_count: Some(179000),
|
||||
is_video: true,
|
||||
|
@ -202,12 +194,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCawCt_6XWaFxZSW5ZKcIMew",
|
||||
ArtistId(
|
||||
id: Some("UCawCt_6XWaFxZSW5ZKcIMew"),
|
||||
name: "MTV ASIA",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("MTV ASIA"),
|
||||
album: None,
|
||||
view_count: Some(69000),
|
||||
is_video: true,
|
||||
|
@ -225,12 +216,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vrqgb3YLoe2MYSJm2aO-A",
|
||||
ArtistId(
|
||||
id: Some("UC_vrqgb3YLoe2MYSJm2aO-A"),
|
||||
name: "K-Series : STORY & MUSIC",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("K-Series : STORY & MUSIC"),
|
||||
album: None,
|
||||
view_count: Some(28000),
|
||||
is_video: true,
|
||||
|
@ -248,12 +238,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC5BMQOsAB8hKUyHu9KI6yig",
|
||||
ArtistId(
|
||||
id: Some("UC5BMQOsAB8hKUyHu9KI6yig"),
|
||||
name: "KBS WORLD TV",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("KBS WORLD TV"),
|
||||
album: None,
|
||||
view_count: Some(1300000),
|
||||
is_video: true,
|
||||
|
@ -271,12 +260,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCoRXPcv8XK5fAplLbk9PTww",
|
||||
ArtistId(
|
||||
id: Some("UCoRXPcv8XK5fAplLbk9PTww"),
|
||||
name: "THE K-POP",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("THE K-POP"),
|
||||
album: None,
|
||||
view_count: Some(3000000),
|
||||
is_video: true,
|
||||
|
@ -294,12 +282,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCaDT20-B3U8h-tPg_VMvntw",
|
||||
ArtistId(
|
||||
id: Some("UCaDT20-B3U8h-tPg_VMvntw"),
|
||||
name: "The Black Mamba",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("The Black Mamba"),
|
||||
album: None,
|
||||
view_count: Some(49000),
|
||||
is_video: true,
|
||||
|
@ -317,12 +304,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCEAgugIw6pHGg7MRlkOU1Dw",
|
||||
ArtistId(
|
||||
id: Some("UCEAgugIw6pHGg7MRlkOU1Dw"),
|
||||
name: "Studio Brussel",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Studio Brussel"),
|
||||
album: None,
|
||||
view_count: Some(29000),
|
||||
is_video: true,
|
||||
|
@ -340,12 +326,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCAj9gLNfM0q3MFhovVmAtBw",
|
||||
ArtistId(
|
||||
id: Some("UCAj9gLNfM0q3MFhovVmAtBw"),
|
||||
name: "Achim Müller",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Achim Müller"),
|
||||
album: None,
|
||||
view_count: Some(823),
|
||||
is_video: true,
|
||||
|
@ -363,12 +348,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCRpjHHu8ivVWs73uxHlWwFA",
|
||||
ArtistId(
|
||||
id: Some("UCRpjHHu8ivVWs73uxHlWwFA"),
|
||||
name: "Eurovision Song Contest",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Eurovision Song Contest"),
|
||||
album: None,
|
||||
view_count: Some(1800000),
|
||||
is_video: true,
|
||||
|
@ -386,12 +370,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCeLPm9yH_a_QH8n6445G-Ow",
|
||||
ArtistId(
|
||||
id: Some("UCeLPm9yH_a_QH8n6445G-Ow"),
|
||||
name: "KBS Kpop",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("KBS Kpop"),
|
||||
album: None,
|
||||
view_count: Some(4400000),
|
||||
is_video: true,
|
||||
|
@ -409,12 +392,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCaDT20-B3U8h-tPg_VMvntw",
|
||||
ArtistId(
|
||||
id: Some("UCaDT20-B3U8h-tPg_VMvntw"),
|
||||
name: "The Black Mamba",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("The Black Mamba"),
|
||||
album: None,
|
||||
view_count: Some(1300),
|
||||
is_video: true,
|
||||
|
@ -432,12 +414,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCEdZAdnnKqbaHOlv8nM6OtA",
|
||||
ArtistId(
|
||||
id: Some("UCEdZAdnnKqbaHOlv8nM6OtA"),
|
||||
name: "aespa",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("aespa"),
|
||||
album: None,
|
||||
view_count: Some(249000000),
|
||||
is_video: true,
|
||||
|
@ -455,12 +436,11 @@ MusicSearchFiltered(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCB-TbzcDawIZVkG229eqnKg",
|
||||
ArtistId(
|
||||
id: Some("UCB-TbzcDawIZVkG229eqnKg"),
|
||||
name: "Sweet & Sour",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Sweet & Sour"),
|
||||
album: None,
|
||||
view_count: Some(15000),
|
||||
is_video: true,
|
||||
|
|
|
@ -21,12 +21,11 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCIh4j8fXWf2U0ro0qnGU8Mg",
|
||||
ArtistId(
|
||||
id: Some("UCIh4j8fXWf2U0ro0qnGU8Mg"),
|
||||
name: "Namika",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Namika"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_RXHxrUFfrvQ",
|
||||
name: "Lieblingsmensch",
|
||||
|
@ -52,12 +51,11 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCCpID8TTjkkjLCwBybAfHSg",
|
||||
ArtistId(
|
||||
id: Some("UCCpID8TTjkkjLCwBybAfHSg"),
|
||||
name: "Boris Brejcha",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Boris Brejcha"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_VFqQlfPhsFW",
|
||||
name: "Lieblingsmensch",
|
||||
|
@ -83,12 +81,11 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCvfUKCnUBfsZAVHgF-pYmJg",
|
||||
ArtistId(
|
||||
id: Some("UCvfUKCnUBfsZAVHgF-pYmJg"),
|
||||
name: "Voyce",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Voyce"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_SpT32xAd4YR",
|
||||
name: "Gegenstück EP",
|
||||
|
@ -109,12 +106,11 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCIh4j8fXWf2U0ro0qnGU8Mg",
|
||||
ArtistId(
|
||||
id: Some("UCIh4j8fXWf2U0ro0qnGU8Mg"),
|
||||
name: "Namika",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Namika"),
|
||||
album: None,
|
||||
view_count: Some(108000000),
|
||||
is_video: true,
|
||||
|
@ -132,12 +128,11 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCgoJMRKimbxB374QjHgE6kA",
|
||||
ArtistId(
|
||||
id: Some("UCgoJMRKimbxB374QjHgE6kA"),
|
||||
name: "jessika adam",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("jessika adam"),
|
||||
album: None,
|
||||
view_count: Some(10000000),
|
||||
is_video: true,
|
||||
|
@ -155,12 +150,11 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCiQjRO2m3dBBlg7sqTaFA_A",
|
||||
ArtistId(
|
||||
id: Some("UCiQjRO2m3dBBlg7sqTaFA_A"),
|
||||
name: "ZockerAlarm",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("ZockerAlarm"),
|
||||
album: None,
|
||||
view_count: Some(56000),
|
||||
is_video: true,
|
||||
|
@ -194,14 +188,14 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCIh4j8fXWf2U0ro0qnGU8Mg",
|
||||
ArtistId(
|
||||
id: Some("UCIh4j8fXWf2U0ro0qnGU8Mg"),
|
||||
name: "Namika",
|
||||
),
|
||||
],
|
||||
artists_txt: "Namika",
|
||||
album_type: Single,
|
||||
year: Some(2015),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_V5f8YfHKp2j",
|
||||
|
@ -229,14 +223,14 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCIh4j8fXWf2U0ro0qnGU8Mg",
|
||||
ArtistId(
|
||||
id: Some("UCIh4j8fXWf2U0ro0qnGU8Mg"),
|
||||
name: "Namika",
|
||||
),
|
||||
],
|
||||
artists_txt: "Namika",
|
||||
album_type: Ep,
|
||||
year: Some(2015),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_AlIjxpnBKtn",
|
||||
|
@ -264,14 +258,14 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCCpID8TTjkkjLCwBybAfHSg",
|
||||
ArtistId(
|
||||
id: Some("UCCpID8TTjkkjLCwBybAfHSg"),
|
||||
name: "Boris Brejcha",
|
||||
),
|
||||
],
|
||||
artists_txt: "Boris Brejcha",
|
||||
album_type: Single,
|
||||
year: Some(2019),
|
||||
by_va: false,
|
||||
),
|
||||
AlbumItem(
|
||||
id: "MPREb_VFqQlfPhsFW",
|
||||
|
@ -299,14 +293,14 @@ MusicSearchResult(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCCpID8TTjkkjLCwBybAfHSg",
|
||||
ArtistId(
|
||||
id: Some("UCCpID8TTjkkjLCwBybAfHSg"),
|
||||
name: "Boris Brejcha",
|
||||
),
|
||||
],
|
||||
artists_txt: "Boris Brejcha",
|
||||
album_type: Single,
|
||||
year: Some(2019),
|
||||
by_va: false,
|
||||
),
|
||||
],
|
||||
artists: [
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -22,12 +22,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCxoJ3pl32f39kmTvIR_NWOg",
|
||||
ArtistId(
|
||||
id: Some("UCxoJ3pl32f39kmTvIR_NWOg"),
|
||||
name: "Akae Beka",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Akae Beka"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_iuN0lQwEmRp",
|
||||
name: "Kings Dub",
|
||||
|
@ -53,12 +52,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCz7CQ4Mn9VChcO5-8j0SZpQ",
|
||||
ArtistId(
|
||||
id: Some("UCz7CQ4Mn9VChcO5-8j0SZpQ"),
|
||||
name: "Stylophonic",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Stylophonic"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_HOsmtxbCHyg",
|
||||
name: "Boom!",
|
||||
|
@ -84,12 +82,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCAlOD5s3Ro27M61-2Z_UB7w",
|
||||
ArtistId(
|
||||
id: Some("UCAlOD5s3Ro27M61-2Z_UB7w"),
|
||||
name: "Tee See Connection",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Tee See Connection"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_yrsxU7t0h6l",
|
||||
name: "Black Mamba",
|
||||
|
@ -115,12 +112,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCJv4icVpfpTaKZcB_Bytxyw",
|
||||
ArtistId(
|
||||
id: Some("UCJv4icVpfpTaKZcB_Bytxyw"),
|
||||
name: "Bravoo Hunnidz",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Bravoo Hunnidz"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_7Bg4fukodPY",
|
||||
name: "Ballin\' Like I\'m Kobe",
|
||||
|
@ -146,12 +142,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC7RJTtpE3qwbw6-Idq9PTIg",
|
||||
ArtistId(
|
||||
id: Some("UC7RJTtpE3qwbw6-Idq9PTIg"),
|
||||
name: "Shockwave-Sound",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Shockwave-Sound"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_Kg4Ff883GH0",
|
||||
name: "Out on the Road",
|
||||
|
@ -177,12 +172,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCh4Y9bvt_6vDq1gQhhT8AdA",
|
||||
ArtistId(
|
||||
id: Some("UCh4Y9bvt_6vDq1gQhhT8AdA"),
|
||||
name: "Solo Da Honcho",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Solo Da Honcho"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_fmNpLFKg4BY",
|
||||
name: "Black Mamba",
|
||||
|
@ -208,12 +202,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCRpi1gBlax4sK3dNNxIxxFg",
|
||||
ArtistId(
|
||||
id: Some("UCRpi1gBlax4sK3dNNxIxxFg"),
|
||||
name: "Black Mamba Official",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Black Mamba Official"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_zMwHYnQRmuP",
|
||||
name: "Born To Fight",
|
||||
|
@ -238,8 +231,12 @@ Paginator(
|
|||
height: 120,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Dollah"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Dollah",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_5mxIz2hChjd",
|
||||
name: "Black Mamba",
|
||||
|
@ -265,12 +262,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCEdZAdnnKqbaHOlv8nM6OtA",
|
||||
ArtistId(
|
||||
id: Some("UCEdZAdnnKqbaHOlv8nM6OtA"),
|
||||
name: "aespa",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("aespa"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_ThKZWN8DQwp",
|
||||
name: "Savage - The 1st Mini Album",
|
||||
|
@ -296,12 +292,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCQSz-Rhz_ew4hUprXww4PAA",
|
||||
ArtistId(
|
||||
id: Some("UCQSz-Rhz_ew4hUprXww4PAA"),
|
||||
name: "Crystal Ignite",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Crystal Ignite"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_E29fqYqQp2V",
|
||||
name: "Black Mamba",
|
||||
|
@ -326,8 +321,12 @@ Paginator(
|
|||
height: 120,
|
||||
),
|
||||
],
|
||||
artists: [],
|
||||
artists_txt: Some("Izhha, yasom, Samu, Ritmo, and Dcibel"),
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Izhha, yasom, Samu, Ritmo, and Dcibel",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_PokIWXXD0EX",
|
||||
name: "Black Mamba",
|
||||
|
@ -353,12 +352,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCuDH6EntL5Qx9YrQCZSFiPg",
|
||||
ArtistId(
|
||||
id: Some("UCuDH6EntL5Qx9YrQCZSFiPg"),
|
||||
name: "Jeroenski",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Jeroenski"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_NjnY9xgK1OH",
|
||||
name: "Urban Vibes (The Underground Sound of House Music, Vol. 9)",
|
||||
|
@ -384,12 +382,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCRpi1gBlax4sK3dNNxIxxFg",
|
||||
ArtistId(
|
||||
id: Some("UCRpi1gBlax4sK3dNNxIxxFg"),
|
||||
name: "Black Mamba Official",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Black Mamba Official"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_TyaTgucQuuW",
|
||||
name: "Soul Surrender",
|
||||
|
@ -415,12 +412,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCdkNrc_l73BHYKRhDqxBo9w",
|
||||
ArtistId(
|
||||
id: Some("UCdkNrc_l73BHYKRhDqxBo9w"),
|
||||
name: "Black Mamba Man",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Black Mamba Man"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_VDjWCOUvD7s",
|
||||
name: "Anti Venom",
|
||||
|
@ -446,12 +442,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCiS97__D2VSNbDMfajnkTkw",
|
||||
ArtistId(
|
||||
id: Some("UCiS97__D2VSNbDMfajnkTkw"),
|
||||
name: "Liapin",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Liapin"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_TQJZCrJZ9cZ",
|
||||
name: "Basila",
|
||||
|
@ -477,20 +472,19 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC3z_UqNGLnKLHfBDONx82zQ",
|
||||
ArtistId(
|
||||
id: Some("UC3z_UqNGLnKLHfBDONx82zQ"),
|
||||
name: "Romane, Stochelo Rosenberg",
|
||||
),
|
||||
ChannelId(
|
||||
id: "UCPrlkPZfsIoN6QG-jDRYQkQ",
|
||||
ArtistId(
|
||||
id: Some("UCPrlkPZfsIoN6QG-jDRYQkQ"),
|
||||
name: "Romane",
|
||||
),
|
||||
ChannelId(
|
||||
id: "UCmsTxLepDwdzr07-ALKUEHw",
|
||||
ArtistId(
|
||||
id: Some("UCmsTxLepDwdzr07-ALKUEHw"),
|
||||
name: "Stochelo Rosenberg",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Romane, Stochelo Rosenberg, Romane & Stochelo Rosenberg"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_RFMbAhqPjqV",
|
||||
name: "Double jeu (Intégrale Romane, vol. 9)",
|
||||
|
@ -516,12 +510,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC2wd_7GTMGiQjIb6wCwnLhQ",
|
||||
ArtistId(
|
||||
id: Some("UC2wd_7GTMGiQjIb6wCwnLhQ"),
|
||||
name: "Hangmen",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Hangmen"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_fEAazqatkfR",
|
||||
name: "Singapore Slingers",
|
||||
|
@ -547,12 +540,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCXQvoNpH-EDGUnCe2ABldDg",
|
||||
ArtistId(
|
||||
id: Some("UCXQvoNpH-EDGUnCe2ABldDg"),
|
||||
name: "Two Tone Club",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Two Tone Club"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_ksEm4DleWYg",
|
||||
name: "Don\'t Look Back",
|
||||
|
@ -578,12 +570,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCPjjr_AvPvEhZ5nnzEACI4w",
|
||||
ArtistId(
|
||||
id: Some("UCPjjr_AvPvEhZ5nnzEACI4w"),
|
||||
name: "Adrian Raso",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Adrian Raso"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_Ws191BQ8IqM",
|
||||
name: "Black Mamba",
|
||||
|
@ -609,12 +600,11 @@ Paginator(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_GZYnrfgYfORwOb2MsuyIg",
|
||||
ArtistId(
|
||||
id: Some("UC_GZYnrfgYfORwOb2MsuyIg"),
|
||||
name: "Tunde",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Tunde"),
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_5VuPA4DLi53",
|
||||
name: "Black Mamba Style",
|
||||
|
|
|
@ -875,15 +875,7 @@ pub struct TrackItem {
|
|||
/// Album cover
|
||||
pub cover: Vec<Thumbnail>,
|
||||
/// Artists of the track
|
||||
///
|
||||
/// **Note:** this field only contains artists that have a link attached
|
||||
/// to them. You may want to use `artists_txt` as a fallback.
|
||||
pub artists: Vec<ChannelId>,
|
||||
/// Full content of the artists column
|
||||
///
|
||||
/// Conjunction words/characters depend on language and fetched page.
|
||||
/// Includes unlinked artists.
|
||||
pub artists_txt: Option<String>,
|
||||
pub artists: Vec<ArtistId>,
|
||||
/// Album of the track
|
||||
pub album: Option<AlbumId>,
|
||||
/// View count
|
||||
|
@ -914,6 +906,14 @@ pub struct ArtistItem {
|
|||
pub subscriber_count: Option<u64>,
|
||||
}
|
||||
|
||||
/// YouTube Music artist identifier
|
||||
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
|
||||
#[non_exhaustive]
|
||||
pub struct ArtistId {
|
||||
pub id: Option<String>,
|
||||
pub name: String,
|
||||
}
|
||||
|
||||
/// YouTube Music album list item
|
||||
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
|
||||
#[non_exhaustive]
|
||||
|
@ -925,16 +925,13 @@ pub struct AlbumItem {
|
|||
/// Album cover
|
||||
pub cover: Vec<Thumbnail>,
|
||||
/// Artists of the album
|
||||
pub artists: Vec<ChannelId>,
|
||||
/// Full content of the artists field
|
||||
///
|
||||
/// Conjunction words/characters depend on language and fetched page.
|
||||
/// Includes unlinked artists.
|
||||
pub artists_txt: String,
|
||||
pub artists: Vec<ArtistId>,
|
||||
/// Album type (Album/Single/EP)
|
||||
pub album_type: AlbumType,
|
||||
/// Release year of the album
|
||||
pub year: Option<u16>,
|
||||
/// Is the album by 'Various artists'?
|
||||
pub by_va: bool,
|
||||
}
|
||||
|
||||
/// YouTube Music playlist list item
|
||||
|
@ -1019,12 +1016,7 @@ pub struct MusicAlbum {
|
|||
/// Album cover
|
||||
pub cover: Vec<Thumbnail>,
|
||||
/// Artists of the album
|
||||
pub artists: Vec<ChannelId>,
|
||||
/// Full content of the artists field
|
||||
///
|
||||
/// Conjunction words/characters depend on language and fetched page.
|
||||
/// Includes unlinked artists.
|
||||
pub artists_txt: String,
|
||||
pub artists: Vec<ArtistId>,
|
||||
/// Album type (Album/Single/EP)
|
||||
pub album_type: AlbumType,
|
||||
/// Release year
|
||||
|
|
|
@ -325,6 +325,39 @@ impl TryFrom<TextComponent> for crate::model::AlbumId {
|
|||
}
|
||||
}
|
||||
|
||||
impl From<TextComponent> for crate::model::ArtistId {
|
||||
fn from(component: TextComponent) -> Self {
|
||||
match component {
|
||||
TextComponent::Browse {
|
||||
text,
|
||||
page_type,
|
||||
browse_id,
|
||||
} => match page_type {
|
||||
PageType::Channel | PageType::Artist => Self {
|
||||
id: Some(browse_id),
|
||||
name: text,
|
||||
},
|
||||
_ => Self {
|
||||
id: None,
|
||||
name: text,
|
||||
},
|
||||
},
|
||||
TextComponent::Video { text, .. } => Self {
|
||||
id: None,
|
||||
name: text,
|
||||
},
|
||||
TextComponent::Web { text, .. } => Self {
|
||||
id: None,
|
||||
name: text,
|
||||
},
|
||||
TextComponent::Text { text } => Self {
|
||||
id: None,
|
||||
name: text,
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl From<TextComponent> for crate::model::richtext::TextComponent {
|
||||
fn from(component: TextComponent) -> Self {
|
||||
match component {
|
||||
|
@ -374,16 +407,6 @@ impl TextComponent {
|
|||
}
|
||||
|
||||
impl TextComponents {
|
||||
/// Return the string representation of all text components
|
||||
/// or [`None`] if there aren't any.
|
||||
pub fn to_opt_string(&self) -> Option<String> {
|
||||
if self.0.is_empty() {
|
||||
None
|
||||
} else {
|
||||
Some(self.to_string())
|
||||
}
|
||||
}
|
||||
|
||||
/// Return the string representation of the first text component
|
||||
pub fn first_str(&self) -> &str {
|
||||
self.0.first().map(|t| t.as_str()).unwrap_or_default()
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -8,12 +8,11 @@ MusicAlbum(
|
|||
name: "Waldbrand",
|
||||
cover: "[cover]",
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCpJyCbFbdTrx0M90HCNBHFQ",
|
||||
ArtistId(
|
||||
id: Some("UCpJyCbFbdTrx0M90HCNBHFQ"),
|
||||
name: "Madeline Juno",
|
||||
),
|
||||
],
|
||||
artists_txt: "Madeline Juno",
|
||||
album_type: Ep,
|
||||
year: Some(2016),
|
||||
by_va: false,
|
||||
|
@ -24,15 +23,17 @@ MusicAlbum(
|
|||
duration: 221,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCpJyCbFbdTrx0M90HCNBHFQ",
|
||||
ArtistId(
|
||||
id: Some("UCpJyCbFbdTrx0M90HCNBHFQ"),
|
||||
name: "Madeline Juno",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Madeline Juno"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_u1I69lSAe5v",
|
||||
name: "Waldbrand",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(1),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -41,15 +42,17 @@ MusicAlbum(
|
|||
duration: 208,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCpJyCbFbdTrx0M90HCNBHFQ",
|
||||
ArtistId(
|
||||
id: Some("UCpJyCbFbdTrx0M90HCNBHFQ"),
|
||||
name: "Madeline Juno",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Madeline Juno"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_u1I69lSAe5v",
|
||||
name: "Waldbrand",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(2),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -58,15 +61,17 @@ MusicAlbum(
|
|||
duration: 223,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCpJyCbFbdTrx0M90HCNBHFQ",
|
||||
ArtistId(
|
||||
id: Some("UCpJyCbFbdTrx0M90HCNBHFQ"),
|
||||
name: "Madeline Juno",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Madeline Juno"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_u1I69lSAe5v",
|
||||
name: "Waldbrand",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(3),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -75,15 +80,17 @@ MusicAlbum(
|
|||
duration: 221,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCpJyCbFbdTrx0M90HCNBHFQ",
|
||||
ArtistId(
|
||||
id: Some("UCpJyCbFbdTrx0M90HCNBHFQ"),
|
||||
name: "Madeline Juno",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Madeline Juno"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_u1I69lSAe5v",
|
||||
name: "Waldbrand",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(4),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -92,15 +99,17 @@ MusicAlbum(
|
|||
duration: 197,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCpJyCbFbdTrx0M90HCNBHFQ",
|
||||
ArtistId(
|
||||
id: Some("UCpJyCbFbdTrx0M90HCNBHFQ"),
|
||||
name: "Madeline Juno",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Madeline Juno"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_u1I69lSAe5v",
|
||||
name: "Waldbrand",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(5),
|
||||
),
|
||||
],
|
||||
|
|
|
@ -8,12 +8,11 @@ MusicAlbum(
|
|||
name: "Märchen enden gut",
|
||||
cover: "[cover]",
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: "Oonagh",
|
||||
album_type: Album,
|
||||
year: Some(2016),
|
||||
by_va: false,
|
||||
|
@ -24,15 +23,17 @@ MusicAlbum(
|
|||
duration: 216,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(1),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -41,15 +42,17 @@ MusicAlbum(
|
|||
duration: 224,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(2),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -58,15 +61,17 @@ MusicAlbum(
|
|||
duration: 176,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(3),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -75,15 +80,17 @@ MusicAlbum(
|
|||
duration: 215,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(4),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -92,15 +99,17 @@ MusicAlbum(
|
|||
duration: 268,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(5),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -109,15 +118,17 @@ MusicAlbum(
|
|||
duration: 202,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(6),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -126,15 +137,17 @@ MusicAlbum(
|
|||
duration: 185,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(7),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -143,15 +156,17 @@ MusicAlbum(
|
|||
duration: 226,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(8),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -160,15 +175,17 @@ MusicAlbum(
|
|||
duration: 207,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(9),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -177,15 +194,17 @@ MusicAlbum(
|
|||
duration: 211,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(10),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -194,15 +213,17 @@ MusicAlbum(
|
|||
duration: 179,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(11),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -211,15 +232,17 @@ MusicAlbum(
|
|||
duration: 218,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(12),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -228,15 +251,17 @@ MusicAlbum(
|
|||
duration: 277,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(13),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -245,15 +270,17 @@ MusicAlbum(
|
|||
duration: 204,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(14),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -262,15 +289,17 @@ MusicAlbum(
|
|||
duration: 202,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(15),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -279,15 +308,17 @@ MusicAlbum(
|
|||
duration: 222,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(16),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -296,15 +327,17 @@ MusicAlbum(
|
|||
duration: 177,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(17),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -313,15 +346,17 @@ MusicAlbum(
|
|||
duration: 220,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Oonagh"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_nlBWQROfvjo",
|
||||
name: "Märchen enden gut",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(18),
|
||||
),
|
||||
],
|
||||
|
@ -342,14 +377,14 @@ MusicAlbum(
|
|||
),
|
||||
],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UC_vmjW5e1xEHhYjY2a0kK1A",
|
||||
ArtistId(
|
||||
id: Some("UC_vmjW5e1xEHhYjY2a0kK1A"),
|
||||
name: "Oonagh",
|
||||
),
|
||||
],
|
||||
artists_txt: "Oonagh",
|
||||
album_type: Album,
|
||||
year: None,
|
||||
by_va: false,
|
||||
),
|
||||
],
|
||||
)
|
||||
|
|
|
@ -8,12 +8,11 @@ MusicAlbum(
|
|||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
cover: "[cover]",
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: "Kingdom Force",
|
||||
album_type: Show,
|
||||
year: Some(2022),
|
||||
by_va: false,
|
||||
|
@ -24,15 +23,17 @@ MusicAlbum(
|
|||
duration: 229,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kingdom Force"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_cwzk8EUwypZ",
|
||||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(1),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -41,15 +42,17 @@ MusicAlbum(
|
|||
duration: 235,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kingdom Force"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_cwzk8EUwypZ",
|
||||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(2),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -58,15 +61,17 @@ MusicAlbum(
|
|||
duration: 197,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kingdom Force"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_cwzk8EUwypZ",
|
||||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(3),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -75,15 +80,17 @@ MusicAlbum(
|
|||
duration: 186,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kingdom Force"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_cwzk8EUwypZ",
|
||||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(4),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -92,15 +99,17 @@ MusicAlbum(
|
|||
duration: 188,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kingdom Force"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_cwzk8EUwypZ",
|
||||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(5),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -109,15 +118,17 @@ MusicAlbum(
|
|||
duration: 205,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kingdom Force"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_cwzk8EUwypZ",
|
||||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(6),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -126,15 +137,17 @@ MusicAlbum(
|
|||
duration: 219,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kingdom Force"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_cwzk8EUwypZ",
|
||||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(7),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -143,15 +156,17 @@ MusicAlbum(
|
|||
duration: 240,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kingdom Force"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_cwzk8EUwypZ",
|
||||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(8),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -160,15 +175,17 @@ MusicAlbum(
|
|||
duration: 239,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kingdom Force"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_cwzk8EUwypZ",
|
||||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(9),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -177,15 +194,17 @@ MusicAlbum(
|
|||
duration: 197,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kingdom Force"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_cwzk8EUwypZ",
|
||||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(10),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -194,15 +213,17 @@ MusicAlbum(
|
|||
duration: 201,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kingdom Force"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_cwzk8EUwypZ",
|
||||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(11),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -211,15 +232,17 @@ MusicAlbum(
|
|||
duration: 187,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kingdom Force"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_cwzk8EUwypZ",
|
||||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(12),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -228,15 +251,17 @@ MusicAlbum(
|
|||
duration: 183,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kingdom Force"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_cwzk8EUwypZ",
|
||||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(13),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -245,15 +270,17 @@ MusicAlbum(
|
|||
duration: 193,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCNoyEM0e2A7WlsBmP2w3avg",
|
||||
ArtistId(
|
||||
id: Some("UCNoyEM0e2A7WlsBmP2w3avg"),
|
||||
name: "Kingdom Force",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kingdom Force"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_cwzk8EUwypZ",
|
||||
name: "Folge 2: Eiszeit (Das Original-Hörspiel zur TV-Serie)",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(14),
|
||||
),
|
||||
],
|
||||
|
|
|
@ -8,16 +8,15 @@ MusicAlbum(
|
|||
name: "Der Himmel reißt auf",
|
||||
cover: "[cover]",
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCXGYZ-OhdOpPBamHX3K9YRg",
|
||||
ArtistId(
|
||||
id: Some("UCXGYZ-OhdOpPBamHX3K9YRg"),
|
||||
name: "Joel Brandenstein",
|
||||
),
|
||||
ChannelId(
|
||||
id: "UCFTcSVPYRWlDoHisR-ZKwgw",
|
||||
ArtistId(
|
||||
id: Some("UCFTcSVPYRWlDoHisR-ZKwgw"),
|
||||
name: "Vanessa Mai",
|
||||
),
|
||||
],
|
||||
artists_txt: "Joel Brandenstein & Vanessa Mai",
|
||||
album_type: Single,
|
||||
year: Some(2020),
|
||||
by_va: false,
|
||||
|
@ -28,19 +27,21 @@ MusicAlbum(
|
|||
duration: 183,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCXGYZ-OhdOpPBamHX3K9YRg",
|
||||
ArtistId(
|
||||
id: Some("UCXGYZ-OhdOpPBamHX3K9YRg"),
|
||||
name: "Joel Brandenstein",
|
||||
),
|
||||
ChannelId(
|
||||
id: "UCFTcSVPYRWlDoHisR-ZKwgw",
|
||||
ArtistId(
|
||||
id: Some("UCFTcSVPYRWlDoHisR-ZKwgw"),
|
||||
name: "Vanessa Mai",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Joel Brandenstein & Vanessa Mai"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_bHfHGoy7vuv",
|
||||
name: "Der Himmel reißt auf",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(1),
|
||||
),
|
||||
],
|
||||
|
|
|
@ -8,7 +8,6 @@ MusicAlbum(
|
|||
name: "<Queendom2> FINAL",
|
||||
cover: "[cover]",
|
||||
artists: [],
|
||||
artists_txt: "Various Artists",
|
||||
album_type: Single,
|
||||
year: Some(2022),
|
||||
by_va: true,
|
||||
|
@ -18,11 +17,18 @@ MusicAlbum(
|
|||
title: "Waka Boom (My Way) (feat. Lee Young Ji)",
|
||||
duration: 274,
|
||||
cover: [],
|
||||
artists: [],
|
||||
artists_txt: Some("HYOLYN"),
|
||||
album: None,
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "HYOLYN",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8QkDeEIawvX",
|
||||
name: "<Queendom2> FINAL",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(1),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -30,11 +36,18 @@ MusicAlbum(
|
|||
title: "AURA",
|
||||
duration: 216,
|
||||
cover: [],
|
||||
artists: [],
|
||||
artists_txt: Some("WJSN"),
|
||||
album: None,
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "WJSN",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8QkDeEIawvX",
|
||||
name: "<Queendom2> FINAL",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(2),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -43,15 +56,17 @@ MusicAlbum(
|
|||
duration: 239,
|
||||
cover: [],
|
||||
artists: [
|
||||
ChannelId(
|
||||
id: "UCAKvDuIX3m1AUdPpDSqV_3w",
|
||||
ArtistId(
|
||||
id: Some("UCAKvDuIX3m1AUdPpDSqV_3w"),
|
||||
name: "Kep1er",
|
||||
),
|
||||
],
|
||||
artists_txt: Some("Kep1er"),
|
||||
album: None,
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8QkDeEIawvX",
|
||||
name: "<Queendom2> FINAL",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(3),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -59,11 +74,18 @@ MusicAlbum(
|
|||
title: "Red Sun!",
|
||||
duration: 254,
|
||||
cover: [],
|
||||
artists: [],
|
||||
artists_txt: Some("VIVIZ"),
|
||||
album: None,
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "VIVIZ",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8QkDeEIawvX",
|
||||
name: "<Queendom2> FINAL",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(4),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -71,11 +93,18 @@ MusicAlbum(
|
|||
title: "POSE",
|
||||
duration: 187,
|
||||
cover: [],
|
||||
artists: [],
|
||||
artists_txt: Some("LOONA"),
|
||||
album: None,
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "LOONA",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8QkDeEIawvX",
|
||||
name: "<Queendom2> FINAL",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(5),
|
||||
),
|
||||
TrackItem(
|
||||
|
@ -83,11 +112,18 @@ MusicAlbum(
|
|||
title: "Whistle",
|
||||
duration: 224,
|
||||
cover: [],
|
||||
artists: [],
|
||||
artists_txt: Some("Brave Girls"),
|
||||
album: None,
|
||||
artists: [
|
||||
ArtistId(
|
||||
id: None,
|
||||
name: "Brave Girls",
|
||||
),
|
||||
],
|
||||
album: Some(AlbumId(
|
||||
id: "MPREb_8QkDeEIawvX",
|
||||
name: "<Queendom2> FINAL",
|
||||
)),
|
||||
view_count: None,
|
||||
is_video: true,
|
||||
is_video: false,
|
||||
track_nr: Some(6),
|
||||
),
|
||||
],
|
||||
|
|
|
@ -1386,10 +1386,13 @@ async fn music_search(#[case] typo: bool) {
|
|||
assert_eq!(track.duration, 230);
|
||||
assert!(!track.cover.is_empty(), "got no cover");
|
||||
|
||||
assert_eq!(track.artists.len(), 1);
|
||||
let track_artist = &track.artists[0];
|
||||
assert_eq!(track_artist.id, "UCEdZAdnnKqbaHOlv8nM6OtA");
|
||||
assert_eq!(
|
||||
track_artist.id.as_ref().unwrap(),
|
||||
"UCEdZAdnnKqbaHOlv8nM6OtA"
|
||||
);
|
||||
assert_eq!(track_artist.name, "aespa");
|
||||
assert_eq!(track.artists_txt.as_ref().unwrap(), "aespa");
|
||||
assert_eq!(track.album, None);
|
||||
assert_gte(track.view_count.unwrap(), 230_000_000, "views");
|
||||
assert!(track.is_video, "got no video");
|
||||
|
@ -1414,10 +1417,13 @@ async fn music_search_tracks(#[case] videos: bool) {
|
|||
assert_eq!(track.is_video, videos);
|
||||
assert_eq!(track.track_nr, None);
|
||||
|
||||
assert_eq!(track.artists.len(), 1);
|
||||
let track_artist = &track.artists[0];
|
||||
assert_eq!(track_artist.id, "UCEdZAdnnKqbaHOlv8nM6OtA");
|
||||
assert_eq!(
|
||||
track_artist.id.as_ref().unwrap(),
|
||||
"UCEdZAdnnKqbaHOlv8nM6OtA"
|
||||
);
|
||||
assert_eq!(track_artist.name, "aespa");
|
||||
assert_eq!(track.artists_txt.as_ref().unwrap(), "aespa");
|
||||
|
||||
if videos {
|
||||
assert_eq!(track.id, "ZeerrnuLi5E");
|
||||
|
@ -1484,10 +1490,10 @@ async fn music_search_albums(
|
|||
let album = &res.items.items[0];
|
||||
assert_eq!(album.name, name);
|
||||
assert_eq!(album.id, id);
|
||||
assert_eq!(album.artists_txt, artist);
|
||||
|
||||
assert_eq!(album.artists.len(), 1);
|
||||
let album_artist = &album.artists[0];
|
||||
assert_eq!(album_artist.id, artist_id);
|
||||
assert_eq!(album_artist.id.as_ref().unwrap(), artist_id);
|
||||
assert_eq!(album_artist.name, artist);
|
||||
|
||||
assert!(!album.cover.is_empty(), "got no cover");
|
||||
|
|
Loading…
Reference in a new issue