parseSingle function

JsonMap parseSingle(
  1. JsonMap result
)

Parses a single from result.

Implementation

JsonMap parseSingle(JsonMap result) {
  final JsonMap realResult;
  if (result.containsKey(MTRIR)) {
    realResult = nav(result, [MTRIR]) as JsonMap;
  } else {
    realResult = result;
  }
  return {
    'title': nav(realResult, TITLE_TEXT),
    'type': nav(realResult, SUBTITLE, nullIfAbsent: true),
    'year': nav(realResult, SUBTITLE2, nullIfAbsent: true),
    'browseId': nav(realResult, [...TITLE, ...NAVIGATION_BROWSE_ID]),
    'audioPlaylistId': parseAlbumPlaylistIdIfExists(
      nav(realResult, THUMBNAIL_OVERLAY_NAVIGATION, nullIfAbsent: true)
          as JsonMap?,
    ),
    'artists':
        List<JsonMap>.from(
              (nav(realResult, ['subtitle', 'runs'], nullIfAbsent: true) ?? [])
                  as List,
            ) // TODO should nullIfAbsent be true?
            .where((x) => x.containsKey('navigationEndpoint'))
            .map((x) => parseIdName(x as JsonMap?))
            .toList(),
    'thumbnails': nav(realResult, THUMBNAIL_RENDERER),
  };
}