getFileInfos static method

Future<List<FileInfo>?> getFileInfos(
  1. String category,
  2. List<String> versionIds
)

Implementation

static Future<List<FileInfo>?> getFileInfos(
    String category, List<String> versionIds) async {
  if (category.isEmpty || versionIds.isEmpty) {
    return null;
  }

  String apiUrl =
      "${Preferences.prefs?.getString("BaseUrl")}/api/fileInfo/batch?";

  var headers = await BaseApi.getRefreshedHeaders();

  Uri uri = Uri.parse(apiUrl).replace(
    queryParameters: {
      "ids": versionIds,
      "category": category,
    },
  );

  var response = await http.get(uri, headers: headers);

  if (response.statusCode == 200 && response.body.isNotEmpty) {
    List<dynamic> jsonResponse = json.decode(response.body);
    return jsonResponse
        .map((fileInfoJson) => FileInfo.fromJson(fileInfoJson))
        .toList();
  } else {
    return null;
  }
}