getTopTracks method

Future<List<Track>?> getTopTracks({
  1. int page = 1,
  2. int limit = 50,
})

Implementation

Future<List<Track>?> getTopTracks({int page = 1, int limit = 50}) async {
  final parameters = {'page': page, 'limit': limit};

  final request = Request(
    api: _api,
    method: 'chart.getTopTracks',
    parameters: parameters,
  );

  final response = await request.send(mode: RequestMode.GET);

  final topTrack = response['tracks']['track'];

  return topTrack == null
      ? null
      : List.generate(
          (topTrack as List).length,
          (i) => Track.fromJson(topTrack[i]),
        );
}