feature: Improve episode status indicators (#229)

Co-authored-by: PartyDonut <PartyDonut@users.noreply.github.com>
This commit is contained in:
PartyDonut 2025-02-16 12:07:03 +01:00 committed by GitHub
parent a34f8fe2f4
commit 492857a8ad
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 37 additions and 13 deletions

View file

@ -20,7 +20,25 @@ import 'package:fladder/util/string_extensions.dart';
part 'episode_model.mapper.dart';
enum EpisodeStatus { available, unaired, missing }
enum EpisodeStatus {
available,
unaired,
missing;
const EpisodeStatus();
Color get color => switch (this) {
EpisodeStatus.available => Colors.lightGreenAccent,
EpisodeStatus.unaired => Colors.indigoAccent,
EpisodeStatus.missing => Colors.redAccent,
};
String label(BuildContext context) => switch (this) {
EpisodeStatus.available => context.localized.episodeAvailable,
EpisodeStatus.unaired => context.localized.episodeUnaired,
EpisodeStatus.missing => context.localized.episodeMissing,
};
}
@MappableClass()
class EpisodeModel extends ItemStreamModel with EpisodeModelMappable {