aggregate events

This commit is contained in:
Henry Hiles 2025-12-23 18:11:33 -05:00
commit 29d050d40b
No known key found for this signature in database
4 changed files with 41 additions and 42 deletions

View file

@ -30,18 +30,17 @@ class RoomChatController extends AsyncNotifier<ChatController> {
),
);
} else {
final message = await event.toMessage();
final message = await event.toMessage(includeEdits: true);
if (event.relationshipType == RelationshipTypes.edit) {
final controller = await future;
final oldMessage = controller.messages.firstWhereOrNull(
(element) => element.id == event.relationshipEventId,
);
if (oldMessage == null || message == null) return;
return await updateMessage(oldMessage, message);
}
if (message != null) {
if (event.relationshipType == RelationshipTypes.edit) {
final controller = await future;
final oldMessage = controller.messages.firstWhereOrNull(
(element) => element.id == event.relationshipEventId,
);
if (oldMessage == null) return;
await updateMessage(oldMessage, message);
} else {
await insertMessage(message);
}
return await insertMessage(message);
}
}
}).cancel,