From 181a2b7f637b6db8c06afb6081c068a0381bb397 Mon Sep 17 00:00:00 2001 From: Sahil Kumar Date: Fri, 25 Mar 2022 15:31:40 +0530 Subject: [PATCH] fix(llc): Remove old thread reactions before saving new Signed-off-by: xsahil03x --- .../stream_chat/lib/src/db/chat_persistence_client.dart | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/stream_chat/lib/src/db/chat_persistence_client.dart b/packages/stream_chat/lib/src/db/chat_persistence_client.dart index 4e10dae3..2dfb7cd7 100644 --- a/packages/stream_chat/lib/src/db/chat_persistence_client.dart +++ b/packages/stream_chat/lib/src/db/chat_persistence_client.dart @@ -203,6 +203,12 @@ abstract class ChatPersistenceClient { Map> threads, ) async { final messages = threads.values.expand((it) => it).toList(); + + // Removing old reactions before saving the new + final oldReactions = messages.map((it) => it.id).toList(); + await deleteReactionsByMessageId(oldReactions); + + // Adding new reactions and users data final reactions = messages.expand(_expandReactions).toList(); final users = messages.map((it) => it.user).withNullifyer.toList();