diff --git a/client/src/components/chat-affix/registerMessagingSocketHandlers.js b/client/src/components/chat-affix/registerMessagingSocketHandlers.js index 5b4f34ea1..d0ab4baa5 100644 --- a/client/src/components/chat-affix/registerMessagingSocketHandlers.js +++ b/client/src/components/chat-affix/registerMessagingSocketHandlers.js @@ -337,12 +337,18 @@ export const registerMessagingHandlers = ({ socket, client }) => { const listQueryVariables = { offset: 0 }; const detailsQueryVariables = { conversationId }; - // Refetch conversation list and details + // Check if conversation details exist in the cache + const detailsExist = !!client.cache.readQuery({ + query: GET_CONVERSATION_DETAILS, + variables: detailsQueryVariables + }); + + // Refetch conversation list await client.refetchQueries({ - include: [CONVERSATION_LIST_QUERY, GET_CONVERSATION_DETAILS], + include: [CONVERSATION_LIST_QUERY, ...(detailsExist ? [GET_CONVERSATION_DETAILS] : [])], variables: [ { query: CONVERSATION_LIST_QUERY, variables: listQueryVariables }, - { query: GET_CONVERSATION_DETAILS, variables: detailsQueryVariables } + ...(detailsExist ? [{ query: GET_CONVERSATION_DETAILS, variables: detailsQueryVariables }] : []) ] });