getFilteredCharacters method

Future<List<Character>> getFilteredCharacters({
  1. String? name,
  2. String? status,
  3. String? gender,
})

Implementation

Future<List<Character>> getFilteredCharacters(
    {String? name, String? status, String? gender}) async {
  var params = "?";

  if (name != null) {
    params += "name=$name&";
  }
  if (status != null) {
    params += "status=$status&";
  }

  if (gender != null) {
    params += "gender=$gender&";
  }

  List<Character> characters = [];
  var char = await get<Map<String, dynamic>>(
    method: Methods.character,
    params: params,
  );
  for (var value in (char?.data?["results"] ?? [])) {
    characters.add(Character.fromMap(value));
  }
  return characters;
}