From aa9872b039d9f872267b0f2dba60bdede3b45b14 Mon Sep 17 00:00:00 2001 From: dudagervasio <49364808+dudagervasio@users.noreply.github.com> Date: Thu, 15 Jun 2023 21:45:24 -0300 Subject: [PATCH] fix: Fixed In Memory Store: contacts.upsert handle (#144) --- src/Store/make-in-memory-store.ts | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/Store/make-in-memory-store.ts b/src/Store/make-in-memory-store.ts index a83da87..0268959 100644 --- a/src/Store/make-in-memory-store.ts +++ b/src/Store/make-in-memory-store.ts @@ -146,11 +146,13 @@ export default ( logger.debug({ chatsAdded }, 'synced chats') const oldContacts = contactsUpsert(newContacts) - for(const jid of oldContacts) { - delete contacts[jid] + if(isLatest) { + for(const jid of oldContacts) { + delete contacts[jid] + } } - logger.debug({ deletedContacts: oldContacts.size, newContacts }, 'synced contacts') + logger.debug({ deletedContacts: isLatest ? oldContacts.size : 0, newContacts }, 'synced contacts') for(const msg of newMessages) { const jid = msg.key.remoteJid! @@ -161,6 +163,10 @@ export default ( logger.debug({ messages: newMessages.length }, 'synced messages') }) + ev.on('contacts.upsert', contacts => { + contactsUpsert(contacts) + }) + ev.on('contacts.update', updates => { for(const update of updates) { if(contacts[update.id!]) {