fix: Update unread_messages count in WhatsApp inboxes (#6154)

* fix: Update unread_count from backend instead of computing on the frontend

* Fix spec

* Remove status indicator on private notifications

* CodeClimate fix

* CodeClimate
This commit is contained in:
Pranav Raj S
2022-12-30 13:13:33 -08:00
parent cf48610f2f
commit 69bed3e08d
4 changed files with 9 additions and 2 deletions

View File

@@ -186,7 +186,7 @@ export default {
return `https://www.instagram.com/stories/${storySender}/${storyId}`;
},
showStatusIndicators() {
if ((this.isOutgoing || this.isTemplate) && !this.private) {
if ((this.isOutgoing || this.isTemplate) && !this.isPrivate) {
return true;
}
return false;

View File

@@ -108,6 +108,8 @@ export const mutations = {
} else {
chat.messages.push(message);
chat.timestamp = message.created_at;
const { conversation: { unread_count: unreadCount = 0 } = {} } = message;
chat.unread_count = unreadCount;
if (selectedChatId === conversationId) {
window.bus.$emit(BUS_EVENTS.SCROLL_TO_MESSAGE);
}

View File

@@ -103,6 +103,7 @@ describe('#mutations', () => {
created_at: 1602256198,
},
],
unread_count: 0,
timestamp: 1602256198,
},
]);
@@ -130,6 +131,7 @@ describe('#mutations', () => {
created_at: 1602256198,
},
],
unread_count: 0,
timestamp: 1602256198,
},
]);

View File

@@ -104,7 +104,10 @@ class Message < ApplicationRecord
created_at: created_at.to_i,
message_type: message_type_before_type_cast,
conversation_id: conversation.display_id,
conversation: { assignee_id: conversation.assignee_id }
conversation: {
assignee_id: conversation.assignee_id,
unread_count: conversation.unread_incoming_messages.count
}
)
data.merge!(echo_id: echo_id) if echo_id.present?
validate_instagram_story if instagram_story_mention?