From a026d4f74c8186a4b7a5b03d1b489e9655d6c1a1 Mon Sep 17 00:00:00 2001 From: Tommy Chow Date: Wed, 1 Sep 2021 21:20:20 -0400 Subject: [PATCH] Fix channel crash Tag ids are null when a channel just went live. They're now nullable. --- lib/models/channel.dart | 4 +--- lib/models/channel.g.dart | 3 ++- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/lib/models/channel.dart b/lib/models/channel.dart index 36cf72b0..d1115e01 100644 --- a/lib/models/channel.dart +++ b/lib/models/channel.dart @@ -2,8 +2,6 @@ import 'package:json_annotation/json_annotation.dart'; part 'channel.g.dart'; -// ! Seems like when a channel just went live (< 2 min), tagIds are null. Possibly make it optional. - // Twitch Channels (Streams) @JsonSerializable(createToJson: false, fieldRename: FieldRename.snake) class Channel { @@ -19,7 +17,7 @@ class Channel { final String startedAt; final String language; final String thumbnailUrl; - final List tagIds; + final List? tagIds; final bool isMature; const Channel({ diff --git a/lib/models/channel.g.dart b/lib/models/channel.g.dart index 38e7df46..69c3ca24 100644 --- a/lib/models/channel.g.dart +++ b/lib/models/channel.g.dart @@ -20,7 +20,8 @@ Channel _$ChannelFromJson(Map json) { startedAt: json['started_at'] as String, language: json['language'] as String, thumbnailUrl: json['thumbnail_url'] as String, - tagIds: (json['tag_ids'] as List).map((e) => e as String).toList(), + tagIds: + (json['tag_ids'] as List?)?.map((e) => e as String).toList(), isMature: json['is_mature'] as bool, ); }