Suggestion.fromJson constructor

Suggestion.fromJson({
  1. required Map<String, dynamic> json,
})

Implementation

factory Suggestion.fromJson({required Map<String, dynamic> json}) {
  final votedUserIds = json['voted_user_ids'] as List<dynamic>?;
  final notifyUserIds = json['notify_user_ids'] as List<dynamic>?;

  return Suggestion(
    id: json['suggestion_id'].toString(),
    title: json['title'],
    description: json['description'],
    labels: (json['labels'] as List<dynamic>)
        .cast<String>()
        .map(SuggestionLabel.fromName)
        .toList(),
    images: (json['images'] as List<dynamic>).cast<String>(),
    authorId: json['author_id'],
    isAnonymous: json['is_anonymous'],
    creationTime: fromDateTime(json['creation_time']),
    status: SuggestionStatus.fromName(json['status']),
    votedUserIds: votedUserIds?.cast<String>().toSet() ?? {},
    notifyUserIds: notifyUserIds?.cast<String>().toSet() ?? {},
  );
}