diff --git a/webapp/components/Chat/Chat.vue b/webapp/components/Chat/Chat.vue index d333deecc9..63cf045e85 100644 --- a/webapp/components/Chat/Chat.vue +++ b/webapp/components/Chat/Chat.vue @@ -353,7 +353,9 @@ export default { async sendMessage(message) { try { - await this.$apollo.mutate({ + const { + data: { CreateMessage: createdMessage }, + } = await this.$apollo.mutate({ mutation: createMessageMutation(), variables: { roomId: message.roomId, @@ -362,7 +364,7 @@ export default { }) const roomIndex = this.rooms.findIndex((r) => r.id === message.roomId) const changedRoom = { ...this.rooms[roomIndex] } - changedRoom.lastMessage = message + changedRoom.lastMessage = createdMessage changedRoom.lastMessage.content = changedRoom.lastMessage.content.trim().substring(0, 30) this.rooms[roomIndex] = changedRoom } catch (error) { diff --git a/webapp/graphql/Messages.js b/webapp/graphql/Messages.js index e6292c5098..cb5d37df91 100644 --- a/webapp/graphql/Messages.js +++ b/webapp/graphql/Messages.js @@ -4,8 +4,23 @@ export const createMessageMutation = () => { return gql` mutation ($roomId: ID!, $content: String!) { CreateMessage(roomId: $roomId, content: $content) { + #_id id + indexId content + senderId + author { + id + } + username + avatar + date + room { + id + } + saved + distributed + seen } } ` @@ -26,6 +41,9 @@ export const messageQuery = () => { username avatar date + room { + id + } saved distributed seen