diff --git a/Sources/justMUSIC/lib/model/Music.dart b/Sources/justMUSIC/lib/model/Music.dart index 1d1e11e..367d6a6 100644 --- a/Sources/justMUSIC/lib/model/Music.dart +++ b/Sources/justMUSIC/lib/model/Music.dart @@ -7,11 +7,12 @@ class Music { String? _previewUrl; DateTime? _date; double? _duration; + bool _explicit = false; List _artists; // Constructor Music(this._id, this._title, this._cover, this._previewUrl, this._date, - this._duration, this._artists); + this._duration, this._explicit, this._artists); //Getters and setters String? get id => _id; @@ -46,6 +47,12 @@ class Music { _duration = value; } + bool get explicit => _explicit; + + set explicit(bool value) { + _explicit = value; + } + List get artists => _artists; set artists(List value) { diff --git a/Sources/justMUSIC/lib/view_model/MusicViewModel.dart b/Sources/justMUSIC/lib/view_model/MusicViewModel.dart index 43417aa..5f0f0eb 100644 --- a/Sources/justMUSIC/lib/view_model/MusicViewModel.dart +++ b/Sources/justMUSIC/lib/view_model/MusicViewModel.dart @@ -34,6 +34,7 @@ class MusicViewModel { responseData['preview_url'], DateTime.parse(responseData['album']['release_date']), responseData['duration_ms'] / 1000, + responseData['explicit'], artists); } else { throw Exception( @@ -57,6 +58,7 @@ class MusicViewModel { track['preview_url'], DateTime.now(), track['duration_ms'] / 1000, + track['explicit'], artists)); } @@ -188,6 +190,7 @@ class MusicViewModel { track['preview_url'], DateTime.now(), track['duration_ms'] / 1000, + track['explicit'], artists)); } diff --git a/Sources/justMUSIC/test/Music_test.dart b/Sources/justMUSIC/test/Music_test.dart index 7855741..baf3aaa 100644 --- a/Sources/justMUSIC/test/Music_test.dart +++ b/Sources/justMUSIC/test/Music_test.dart @@ -7,7 +7,7 @@ Future main() async { Music m = await musicVM.getMusic('295SxdR1DqunCNwd0U767w'); print("id : ${m.id.toString()}, cover : ${m.cover}, title : ${m.title}"); - print("date : ${m.date.toString()}, preview : ${m.previewUrl}, duration : ${m.duration}"); + print("date : ${m.date.toString()}, preview : ${m.previewUrl}, duration : ${m.duration}, explicit : ${m.explicit}"); for (Artist a in m.artists) { print("id : ${a.id}, name : ${a.name}"); } @@ -17,7 +17,7 @@ Future main() async { List musics = await musicVM.getMusicsWithName('Shavkat'); for (Music m in musics) { print("id : ${m.id.toString()}, cover : ${m.cover}, title : ${m.title}"); - print("date : ${m.date.toString()}, preview : ${m.previewUrl}, duration : ${m.duration}"); + print("date : ${m.date.toString()}, preview : ${m.previewUrl}, duration : ${m.duration}, explicit : ${m.explicit}"); for (Artist a in m.artists) { print("id : ${a.id}, name : ${a.name}"); } @@ -28,7 +28,7 @@ Future main() async { List musics2 = await musicVM.getMusicsWithArtistName('jul'); for (Music m in musics2) { print("id : ${m.id.toString()}, cover : ${m.cover}, title : ${m.title}"); - print("date : ${m.date.toString()}, preview : ${m.previewUrl}, duration : ${m.duration}"); + print("date : ${m.date.toString()}, preview : ${m.previewUrl}, duration : ${m.duration}, explicit : ${m.explicit}"); for (Artist a in m.artists) { print("id : ${a.id}, name : ${a.name}"); } @@ -51,7 +51,7 @@ Future main() async { List topMusics = await musicVM.getTopMusicsWithArtistId('3NH8t45zOTqzlZgBvZRjvB'); for (Music m in topMusics) { print("id : ${m.id.toString()}, cover : ${m.cover}, title : ${m.title}"); - print("date : ${m.date.toString()}, preview : ${m.previewUrl}, duration : ${m.duration}"); + print("date : ${m.date.toString()}, preview : ${m.previewUrl}, duration : ${m.duration}, explicit : ${m.explicit}"); for (Artist a in m.artists) { print("id : ${a.id}, name : ${a.name}"); }