fetchPathDetails static method

Future<PathDetails> fetchPathDetails(
  1. String apiKey, {
  2. required String routeId,
  3. String? date,
})

Implementation

static Future<PathDetails> fetchPathDetails(
  String apiKey, {
  required String routeId,
  String? date,
}) async {
  final String host = _buildUrl(
    routeId: routeId,
    date: date,
  );

  final response = await http.get(
    Uri.parse(host),
    headers: {"api_key": apiKey},
  );

  Map<String, dynamic> responseArr = readJson(response.body);

  if (responseArr.isEmpty) return PathDetails.empty();

  if (responseArr[ApiFields.routeId] == null) return PathDetails.empty();

  responseArr[ApiFields.dateTime] = date;

  return PathDetails.fromJson(responseArr);
}