Client/lib/model/chatList/chatListProps.dart
2025-01-23 22:41:22 +01:00

29 lines
755 B
Dart

import 'package:flutter_app_badge/flutter_app_badge.dart';
import '../../api/apiResponse.dart';
import '../../api/marianumcloud/talk/room/getRoomCache.dart';
import '../../api/marianumcloud/talk/room/getRoomResponse.dart';
import '../dataHolder.dart';
class ChatListProps extends DataHolder {
GetRoomResponse? _getRoomResponse;
GetRoomResponse get getRoomsResponse => _getRoomResponse!;
@override
List<ApiResponse?> properties() => [_getRoomResponse];
@override
void run({renew}) {
GetRoomCache(
renew: renew,
onUpdate: (GetRoomResponse data) => {
_getRoomResponse = data,
notifyListeners(),
FlutterAppBadge.count(data.data.map((e) => e.unreadMessages).reduce((a, b) => a+b))
}
);
}
}