parseAudioMetadata static method

List<AudioMetadata> parseAudioMetadata(
  1. String? jsonString
)

Implementation

static List<AudioMetadata> parseAudioMetadata(String? jsonString) {
  if (jsonString == null) {
    return [];
  }
  List<dynamic> jsonData = jsonDecode(jsonString);

  return jsonData.map((item) {
    AudioType type = AudioType.track;
    if (item.containsKey("isAudioRecord")) {
      type = (item["isAudioRecord"] == true) ? AudioType.voice : AudioType.track;
    } else if (item.containsKey("type")) {
      type = (item["type"] == "VOICE") ? AudioType.voice : AudioType.track;
    }

    return AudioMetadata(
      title: item["title"] ?? "",
      audioUrl: item["url"] ?? "",
      type: type
    );
  }).toList();
}