TrackModel.fromMap constructor

TrackModel.fromMap(
  1. Map<String, dynamic> map
)

Implementation

factory TrackModel.fromMap(Map<String, dynamic> map) {
  return TrackModel(
    id: map['id'] as String,
    name: map['name'] as String,
    album: SimplifiedAlbum.fromMap(map['album'] as Map<String, dynamic>),
    artists: List<SimplifiedArtist>.from(
      (map['artists']).map<SimplifiedArtist>(
        (x) => SimplifiedArtist.fromMap(x as Map<String, dynamic>),
      ),
    ),
    availableMarkets: List<Market>.from(
      (map['available_markets'] as List? ?? []).map<Market>(
        (x) => Market.values.byName(x),
      ),
    ),
    discNumber: map['disc_number'] as int,
    duration: Duration(milliseconds: map['duration_ms']),
    explicit: map['explicit'] as bool,
    isPlayable: map['is_playable'] as bool? ?? true,
    popularity: map['popularity'] as int,
    previewUrl:
        map['preview_url'] != null ? map['preview_url'] as String : null,
    trackNumber: map['track_number'] as int,
  );
}