AudioAnalysisReport.fromJson constructor

AudioAnalysisReport.fromJson(
  1. Map<String, dynamic> json
)

Implementation

factory AudioAnalysisReport.fromJson(Map<String, dynamic> json) {
  // wrong: json['wrong'] != null
  //     ? Map<String, List<int>>.from(json["wrong"])
  //     : null,
  // missed: json['missed'] != null
  //     ? Map<String, List<int>>.from(json["missed"])
  //     : null,
  // extra: json['extra'] != null
  //     ? Map<String, List<int>>.from(json["extra"])
  //     : null,
  // Map<String, Map<String, List<int>>>? parseRunpodJobOutput(dynamic map) {
  //   if (map == null) return null;
  //   return (map as Map<String, dynamic>).map(
  //     (key, value) => MapEntry(
  //       key,
  //       (value as Map<String, dynamic>).map(
  //         (k, v) => MapEntry(k, List<int>.from(v)),
  //       ),
  //     ),
  //   );
  // }

  // Map<String, List<int>>? parseMapListInt(dynamic map) {
  //   if (map == null) return null;
  //   return Map<String, List<int>>.from(map);
  // }

  Map<String, List<int>>? parseMapListInt(dynamic map) {
    if (map == null) return null;
    return (map as Map<String, dynamic>).map(
      (k, v) => MapEntry(k, List<int>.from(v)),
    );
  }

  print("JSON :: $json");
  print(json["runpodJobOutput"]);
  final runpod = jsonDecode(json["runpodJobOutput"]) as Map<String, dynamic>?;

  print(runpod);
  return AudioAnalysisReport(
      status: json['status'] as String,
      requestID: json['requestID'] as String,
      extra: runpod != null ? parseMapListInt(runpod["extra"]) : {},
      missed: runpod != null ? parseMapListInt(runpod["missed"]) : {},
      wrong: runpod != null ? parseMapListInt(runpod["wrong"]) : {},
      );
}