From cf935b400acf8aceb69d34f93858b3ed69b79d77 Mon Sep 17 00:00:00 2001 From: marlon-erler Date: Thu, 11 Jul 2024 02:15:02 +0200 Subject: [PATCH] remove deleted objects from outbox --- dist/index.js | 14 ++++++++++---- src/Model/chatModel.ts | 2 ++ src/Views/Chat/itemDetailModal.tsx | 2 +- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/dist/index.js b/dist/index.js index e035d128..3b44a238 100644 --- a/dist/index.js +++ b/dist/index.js @@ -595,16 +595,22 @@ const messageString = JSON.stringify(chatMessage); UDN.sendMessage(chatMessage.channel, messageString); this.outbox.remove(chatMessage); + if (chatMessage.messageObject) + this.objectOutbox.remove(chatMessage.messageObject.id); }; // objects - async addObjectAndSend(object) { + addObjectAndSend(object) { this.objects.set(object.id, object); - await this.sendObject(object); + this.sendObject(object); } - async sendObject(object) { + sendObject(object) { this.objectOutbox.set(object.id, object); this.sendMessagesInOutbox(); } + deleteObject(object) { + this.objects.remove(object.id); + this.objectOutbox.remove(object.id); + } // channel setChannel = () => { if (this.cannotSetChannel.value == true) return; @@ -1133,7 +1139,7 @@ closeModal(); } function deleteAndClose() { - chat.objects.remove(object.id); + chat.deleteObject(object); closeModal(); } const editingTitle = new State(object.title); diff --git a/src/Model/chatModel.ts b/src/Model/chatModel.ts index 2a8e3d28..5b71ee8f 100644 --- a/src/Model/chatModel.ts +++ b/src/Model/chatModel.ts @@ -267,6 +267,8 @@ export class Chat { UDN.sendMessage(chatMessage.channel, messageString); this.outbox.remove(chatMessage); + if (chatMessage.messageObject) + this.objectOutbox.remove(chatMessage.messageObject.id); }; // objects diff --git a/src/Views/Chat/itemDetailModal.tsx b/src/Views/Chat/itemDetailModal.tsx index 66b9bd4e..23448303 100644 --- a/src/Views/Chat/itemDetailModal.tsx +++ b/src/Views/Chat/itemDetailModal.tsx @@ -21,7 +21,7 @@ export function ItemDetailModal( } function deleteAndClose() { - chat.objects.remove(object.id); + chat.deleteObject(object); closeModal(); }