aves/lib/model/entry/extensions/favourites.dart
Thibault Deckers 5784607130 refactor
2023-03-14 20:31:18 +01:00

26 lines
586 B
Dart

import 'package:aves/model/entry/entry.dart';
import 'package:aves/model/favourites.dart';
extension ExtraAvesEntryFav on AvesEntry {
bool get isFavourite => favourites.isFavourite(this);
Future<void> toggleFavourite() async {
if (isFavourite) {
await removeFromFavourites();
} else {
await addToFavourites();
}
}
Future<void> addToFavourites() async {
if (!isFavourite) {
await favourites.add({this});
}
}
Future<void> removeFromFavourites() async {
if (isFavourite) {
await favourites.removeEntries({this});
}
}
}