use once_cell::sync::Lazy; use std::collections::HashMap; use musichoard::collection::{ album::{Album, AlbumDate, AlbumId, AlbumMonth}, artist::{Artist, ArtistId, MusicBrainz}, track::{Track, TrackFormat, TrackId, TrackQuality}, Collection, }; pub static COLLECTION: Lazy> = Lazy::new(|| -> Collection { vec![ Artist { id: ArtistId { name: String::from("Аркона"), }, sort: Some(ArtistId{ name: String::from("Arkona") }), musicbrainz: Some(MusicBrainz::new( "https://musicbrainz.org/artist/baad262d-55ef-427a-83c7-f7530964f212", ).unwrap()), properties: HashMap::from([ (String::from("MusicButler"), vec![ String::from("https://www.musicbutler.io/artist-page/283448581"), ]), (String::from("Bandcamp"), vec![ String::from("https://arkonamoscow.bandcamp.com/"), ]), (String::from("Qobuz"), vec![String::from( "https://www.qobuz.com/nl-nl/interpreter/arkona/download-streaming-albums", )]), ]), albums: vec![Album { id: AlbumId { date: AlbumDate{ year: 2011, month: AlbumMonth::None, day: 0, }, title: String::from("Slovo"), }, tracks: vec![ Track { id: TrackId { number: 1, title: String::from("Az’"), }, artist: vec![String::from("Аркона")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 992, }, }, Track { id: TrackId { number: 2, title: String::from("Arkaim"), }, artist: vec![String::from("Аркона")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1061, }, }, Track { id: TrackId { number: 3, title: String::from("Bol’no mne"), }, artist: vec![String::from("Аркона")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1004, }, }, Track { id: TrackId { number: 4, title: String::from("Leshiy"), }, artist: vec![String::from("Аркона")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1077, }, }, Track { id: TrackId { number: 5, title: String::from("Zakliatie"), }, artist: vec![String::from("Аркона")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1041, }, }, Track { id: TrackId { number: 6, title: String::from("Predok"), }, artist: vec![String::from("Аркона")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 756, }, }, Track { id: TrackId { number: 7, title: String::from("Nikogda"), }, artist: vec![String::from("Аркона")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1059, }, }, Track { id: TrackId { number: 8, title: String::from("Tam za tumanami"), }, artist: vec![String::from("Аркона")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1023, }, }, Track { id: TrackId { number: 9, title: String::from("Potomok"), }, artist: vec![String::from("Аркона")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 838, }, }, Track { id: TrackId { number: 10, title: String::from("Slovo"), }, artist: vec![String::from("Аркона")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1028, }, }, Track { id: TrackId { number: 11, title: String::from("Odna"), }, artist: vec![String::from("Аркона")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 991, }, }, Track { id: TrackId { number: 12, title: String::from("Vo moiom sadochke…"), }, artist: vec![String::from("Аркона")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 919, }, }, Track { id: TrackId { number: 13, title: String::from("Stenka na stenku"), }, artist: vec![String::from("Аркона")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1039, }, }, Track { id: TrackId { number: 14, title: String::from("Zimushka"), }, artist: vec![String::from("Аркона")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 974, }, }, ], }], }, Artist { id: ArtistId { name: String::from("Eluveitie"), }, sort: None, musicbrainz: Some(MusicBrainz::new( "https://musicbrainz.org/artist/8000598a-5edb-401c-8e6d-36b167feaf38", ).unwrap()), properties: HashMap::from([ (String::from("MusicButler"), vec![ String::from("https://www.musicbutler.io/artist-page/269358403"), ]), (String::from("Qobuz"), vec![String::from( "https://www.qobuz.com/nl-nl/interpreter/eluveitie/download-streaming-albums", )]), ]), albums: vec![ Album { id: AlbumId { date: AlbumDate{ year: 2004, month: AlbumMonth::None, day: 0, }, title: String::from("Vên [re‐recorded]"), }, tracks: vec![ Track { id: TrackId { number: 1, title: String::from("Verja Urit an Bitus"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 961, }, }, Track { id: TrackId { number: 2, title: String::from("Uis Elveti"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1067, }, }, Track { id: TrackId { number: 3, title: String::from("Ôrô"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 933, }, }, Track { id: TrackId { number: 4, title: String::from("Lament"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1083, }, }, Track { id: TrackId { number: 5, title: String::from("Druid"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1073, }, }, Track { id: TrackId { number: 6, title: String::from("Jêzaïg"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1002, }, }, ], }, Album { id: AlbumId { date: AlbumDate{ year: 2008, month: AlbumMonth::None, day: 0, }, title: String::from("Slania"), }, tracks: vec![ Track { id: TrackId { number: 1, title: String::from("Samon"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 953, }, }, Track { id: TrackId { number: 2, title: String::from("Primordial Breath"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1103, }, }, Track { id: TrackId { number: 3, title: String::from("Inis Mona"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1117, }, }, Track { id: TrackId { number: 4, title: String::from("Gray Sublime Archon"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1092, }, }, Track { id: TrackId { number: 5, title: String::from("Anagantios"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 923, }, }, Track { id: TrackId { number: 6, title: String::from("Bloodstained Ground"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1098, }, }, Track { id: TrackId { number: 7, title: String::from("The Somber Lay"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1068, }, }, Track { id: TrackId { number: 8, title: String::from("Slanias Song"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1098, }, }, Track { id: TrackId { number: 9, title: String::from("Giamonios"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 825, }, }, Track { id: TrackId { number: 10, title: String::from("Tarvos"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1115, }, }, Track { id: TrackId { number: 11, title: String::from("Calling the Rain"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1096, }, }, Track { id: TrackId { number: 12, title: String::from("Elembivos"), }, artist: vec![String::from("Eluveitie")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1059, }, }, ], }, ], }, Artist { id: ArtistId { name: String::from("Frontside"), }, sort: None, musicbrainz: Some(MusicBrainz::new( "https://musicbrainz.org/artist/3a901353-fccd-4afd-ad01-9c03f451b490", ).unwrap()), properties: HashMap::from([ (String::from("MusicButler"), vec![ String::from("https://www.musicbutler.io/artist-page/826588800"), ]), (String::from("Qobuz"), vec![String::from( "https://www.qobuz.com/nl-nl/interpreter/frontside/download-streaming-albums", )]), ]), albums: vec![Album { id: AlbumId { date: AlbumDate{ year: 2001, month: AlbumMonth::None, day: 0, }, title: String::from("…nasze jest królestwo, potęga i chwała na wieki…"), }, tracks: vec![ Track { id: TrackId { number: 1, title: String::from("Intro = Chaos"), }, artist: vec![String::from("Frontside")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1024, }, }, Track { id: TrackId { number: 2, title: String::from("Modlitwa"), }, artist: vec![String::from("Frontside")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1073, }, }, Track { id: TrackId { number: 3, title: String::from("Długa droga z piekła"), }, artist: vec![String::from("Frontside")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1058, }, }, Track { id: TrackId { number: 4, title: String::from("Synowie ognia"), }, artist: vec![String::from("Frontside")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1066, }, }, Track { id: TrackId { number: 5, title: String::from("1902"), }, artist: vec![String::from("Frontside")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1074, }, }, Track { id: TrackId { number: 6, title: String::from("Krew za krew"), }, artist: vec![String::from("Frontside")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1080, }, }, Track { id: TrackId { number: 7, title: String::from("Kulminacja"), }, artist: vec![String::from("Frontside")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 992, }, }, Track { id: TrackId { number: 8, title: String::from("Judasz"), }, artist: vec![String::from("Frontside")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1018, }, }, Track { id: TrackId { number: 9, title: String::from("Więzy"), }, artist: vec![String::from("Frontside")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1077, }, }, Track { id: TrackId { number: 10, title: String::from("Zagubione dusze"), }, artist: vec![String::from("Frontside")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1033, }, }, Track { id: TrackId { number: 11, title: String::from("Linia życia"), }, artist: vec![String::from("Frontside")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 987, }, }, ], }], }, Artist { id: ArtistId { name: String::from("Heaven’s Basement"), }, sort: Some(ArtistId { name: String::from("Heaven’s Basement"), }), musicbrainz: Some(MusicBrainz::new( "https://musicbrainz.org/artist/c2c4d56a-d599-4a18-bd2f-ae644e2198cc", ).unwrap()), properties: HashMap::from([ (String::from("MusicButler"), vec![ String::from("https://www.musicbutler.io/artist-page/291158685"), ]), (String::from("Qobuz"), vec![String::from( "https://www.qobuz.com/nl-nl/interpreter/heaven-s-basement/download-streaming-albums", )]), ]), albums: vec![Album { id: AlbumId { date: AlbumDate{ year: 2011, month: AlbumMonth::None, day: 0, }, title: String::from("Paper Plague"), }, tracks: vec![ Track { id: TrackId { number: 0, title: String::from("Paper Plague"), }, artist: vec![String::from("Heaven’s Basement")], quality: TrackQuality { format: TrackFormat::Mp3, bitrate: 320, }, }, ], }, Album { id: AlbumId { date: AlbumDate{ year: 2011, month: AlbumMonth::None, day: 0, }, title: String::from("Unbreakable"), }, tracks: vec![ Track { id: TrackId { number: 1, title: String::from("Unbreakable"), }, artist: vec![String::from("Heaven’s Basement")], quality: TrackQuality { format: TrackFormat::Mp3, bitrate: 208, }, }, Track { id: TrackId { number: 2, title: String::from("Guilt Trips and Sins"), }, artist: vec![String::from("Heaven’s Basement")], quality: TrackQuality { format: TrackFormat::Mp3, bitrate: 205, }, }, Track { id: TrackId { number: 3, title: String::from("The Long Goodbye"), }, artist: vec![String::from("Heaven’s Basement")], quality: TrackQuality { format: TrackFormat::Mp3, bitrate: 227, }, }, Track { id: TrackId { number: 4, title: String::from("Close Encounters"), }, artist: vec![String::from("Heaven’s Basement")], quality: TrackQuality { format: TrackFormat::Mp3, bitrate: 213, }, }, Track { id: TrackId { number: 5, title: String::from("Paranoia"), }, artist: vec![String::from("Heaven’s Basement")], quality: TrackQuality { format: TrackFormat::Mp3, bitrate: 218, }, }, Track { id: TrackId { number: 6, title: String::from("Let Me Out of Here"), }, artist: vec![String::from("Heaven’s Basement")], quality: TrackQuality { format: TrackFormat::Mp3, bitrate: 207, }, }, Track { id: TrackId { number: 7, title: String::from("Leeches"), }, artist: vec![String::from("Heaven’s Basement")], quality: TrackQuality { format: TrackFormat::Mp3, bitrate: 225, }, }, ], }], }, Artist { id: ArtistId { name: String::from("Metallica"), }, sort: None, musicbrainz: Some(MusicBrainz::new( "https://musicbrainz.org/artist/65f4f0c5-ef9e-490c-aee3-909e7ae6b2ab", ).unwrap()), properties: HashMap::from([ (String::from("MusicButler"), vec![ String::from("https://www.musicbutler.io/artist-page/3996865"), ]), (String::from("Qobuz"), vec![String::from( "https://www.qobuz.com/nl-nl/interpreter/metallica/download-streaming-albums", )]), ]), albums: vec![ Album { id: AlbumId { date: AlbumDate{ year: 1984, month: AlbumMonth::None, day: 0, }, title: String::from("Ride the Lightning"), }, tracks: vec![ Track { id: TrackId { number: 1, title: String::from("Fight Fire with Fire"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 954, }, }, Track { id: TrackId { number: 2, title: String::from("Ride the Lightning"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 951, }, }, Track { id: TrackId { number: 3, title: String::from("For Whom the Bell Tolls"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 889, }, }, Track { id: TrackId { number: 4, title: String::from("Fade to Black"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 939, }, }, Track { id: TrackId { number: 5, title: String::from("Trapped under Ice"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 955, }, }, Track { id: TrackId { number: 6, title: String::from("Escape"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 941, }, }, Track { id: TrackId { number: 7, title: String::from("Creeping Death"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 958, }, }, Track { id: TrackId { number: 8, title: String::from("The Call of Ktulu"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 888, }, }, ], }, Album { id: AlbumId { date: AlbumDate{ year: 1999, month: AlbumMonth::None, day: 0, }, title: String::from("S&M"), }, tracks: vec![ Track { id: TrackId { number: 1, title: String::from("The Ecstasy of Gold"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 875, }, }, Track { id: TrackId { number: 2, title: String::from("The Call of Ktulu"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1030, }, }, Track { id: TrackId { number: 3, title: String::from("Master of Puppets"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1082, }, }, Track { id: TrackId { number: 4, title: String::from("Of Wolf and Man"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1115, }, }, Track { id: TrackId { number: 5, title: String::from("The Thing That Should Not Be"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1029, }, }, Track { id: TrackId { number: 6, title: String::from("Fuel"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1057, }, }, Track { id: TrackId { number: 7, title: String::from("The Memory Remains"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1080, }, }, Track { id: TrackId { number: 8, title: String::from("No Leaf Clover"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1004, }, }, Track { id: TrackId { number: 9, title: String::from("Hero of the Day"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 962, }, }, Track { id: TrackId { number: 10, title: String::from("Devil’s Dance"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1076, }, }, Track { id: TrackId { number: 11, title: String::from("Bleeding Me"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 993, }, }, Track { id: TrackId { number: 12, title: String::from("Nothing Else Matters"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 875, }, }, Track { id: TrackId { number: 13, title: String::from("Until It Sleeps"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1038, }, }, Track { id: TrackId { number: 14, title: String::from("For Whom the Bell Tolls"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1072, }, }, Track { id: TrackId { number: 15, title: String::from("−Human"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1029, }, }, Track { id: TrackId { number: 16, title: String::from("Wherever I May Roam"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1035, }, }, Track { id: TrackId { number: 17, title: String::from("Outlaw Torn"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1042, }, }, Track { id: TrackId { number: 18, title: String::from("Sad but True"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1082, }, }, Track { id: TrackId { number: 19, title: String::from("One"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 1017, }, }, Track { id: TrackId { number: 20, title: String::from("Enter Sandman"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 993, }, }, Track { id: TrackId { number: 21, title: String::from("Battery"), }, artist: vec![String::from("Metallica")], quality: TrackQuality { format: TrackFormat::Flac, bitrate: 967, }, }, ], }, ], }, ] });