search method

Future search({
  1. required String query,
  2. required SearchType type,
  3. int limit = 20,
  4. int offset = 0,
})

Implementation

Future<dynamic> search({
  required String query,
  required SearchType type,
  int limit = 20,
  int offset = 0,
}) async {
  try {
    final response = await _dio.get(
      'search',
      queryParameters: {
        'q': query,
        'type': type.name,
        'limit': limit,
        'offset': offset,
      },
    );

    if (response.statusCode == 200) {
      return response.data;
    }

    print(
      'Spotify API returned ${response.statusCode}: ${response.statusMessage}',
    );
    return null;
  } on DioException catch (e) {
    _logDioError(e);
    return null;
  } catch (e) {
    print('Unexpected error: $e');
    return null;
  }
}