parseAlbum function

JsonMap parseAlbum(
  1. JsonMap result
)

Parses an album from result.

Implementation

JsonMap parseAlbum(JsonMap result) {
  final subtitleRuns = List<JsonMap>.from(
    (nav(result, ['subtitle', 'runs'], nullIfAbsent: true) ?? []) as List,
  );

  final album = <String, dynamic>{
    'title': nav(result, TITLE_TEXT),
    'artists': [
      for (final x in subtitleRuns)
        if (x.containsKey('navigationEndpoint')) parseIdName(x),
    ],
    'browseId': nav(result, [...TITLE, ...NAVIGATION_BROWSE_ID]),
    'audioPlaylistId': parseAlbumPlaylistIdIfExists(
      nav(result, THUMBNAIL_OVERLAY_NAVIGATION, nullIfAbsent: true) as JsonMap,
    ),
    'thumbnails': nav(result, THUMBNAIL_RENDERER),
    'isExplicit': nav(result, SUBTITLE_BADGE_LABEL, nullIfAbsent: true) != null,
  };

  return parseAlbumSingleSubtitle(result, album);
}