Skip to content

Commit b8857e0

Browse files
committed
fix: readBy not sent when editing a message
1 parent 9874b6d commit b8857e0

File tree

2 files changed

+15
-3
lines changed

2 files changed

+15
-3
lines changed

projects/stream-chat-angular/src/lib/channel.service.spec.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1365,6 +1365,8 @@ describe('ChannelService', () => {
13651365

13661366
it('should update message', () => {
13671367
const message = mockMessage();
1368+
// @ts-expect-error
1369+
delete message.readBy;
13681370
void service.updateMessage(message);
13691371

13701372
expect(mockChatClient.updateMessage).toHaveBeenCalledWith(message);
@@ -1408,11 +1410,14 @@ describe('ChannelService', () => {
14081410
);
14091411
});
14101412

1411-
it('should remove translation object before updating message', () => {
1413+
it('should remove translation object and readyBy before updating message', () => {
14121414
const message = mockMessage();
1415+
// @ts-expect-error
1416+
delete message.readBy;
14131417
void service.updateMessage({
14141418
...message,
14151419
i18n: { en_text: 'Translation', language: 'en' },
1420+
readBy: [],
14161421
});
14171422

14181423
expect(mockChatClient.updateMessage).toHaveBeenCalledWith(message);

projects/stream-chat-angular/src/lib/channel.service.ts

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -891,10 +891,17 @@ export class ChannelService<
891891
* @param message Mesage to be updated
892892
*/
893893
async updateMessage(message: StreamMessage<T>) {
894-
let messageToUpdate = { ...message };
894+
let messageToUpdate = {
895+
...message,
896+
};
895897
delete messageToUpdate.i18n;
896898
if (this.beforeUpdateMessage) {
897-
messageToUpdate = await this.beforeUpdateMessage(messageToUpdate);
899+
messageToUpdate = await this.beforeUpdateMessage(
900+
messageToUpdate as StreamMessage
901+
);
902+
}
903+
if (messageToUpdate.readBy) {
904+
delete (messageToUpdate as Omit<StreamMessage<T>, 'readBy'>).readBy;
898905
}
899906
if (message.moderation_details) {
900907
return this.resendMessage(message);

0 commit comments

Comments
 (0)