add GomuksEvent model

This commit is contained in:
Henry Hiles 2026-11-03 15:16:38 -05:00
commit b154b4ee2e
Signed by: Henry-Hiles
SSH key fingerprint: SHA256:VKQUdS31Q90KvX7EkKMHMBpUspcmItAh86a+v7PGiIs

View file

@ -17,6 +17,7 @@ import "package:nexus/models/content/name.dart";
import "package:nexus/models/content/topic.dart";
import "package:nexus/models/invited_room.dart";
import "package:nexus/models/room_summary.dart";
import "package:nexus/models/sync_data.dart";
/// Pending invites, newest first.
class InvitesController extends Notifier<IList<RoomSummary>> {
@ -103,6 +104,15 @@ class InvitesController extends Notifier<IList<RoomSummary>> {
.removeWhere((invite) => removed.contains(invite.roomId));
}
void handleSync(SyncData sync) {
if (sync.clearState) state = .new();
update(
sync.invitedRooms,
joinedRooms: sync.rooms.keys.toISet(),
leftRooms: sync.leftRooms,
);
}
void remove(String roomId) =>
state = state.removeWhere((invite) => invite.roomId == roomId);