From fd44c69cd6d03022655dfb0b7afca359a680e52d Mon Sep 17 00:00:00 2001 From: Brieuc Dubois <git@bhasher.com> Date: Fri, 8 Nov 2024 17:36:08 +0200 Subject: [PATCH] Fix #117 --- .../lib/components/sessions/message.svelte | 43 ++++++++++--------- frontend/src/lib/types/message.ts | 5 ++- 2 files changed, 26 insertions(+), 22 deletions(-) diff --git a/frontend/src/lib/components/sessions/message.svelte b/frontend/src/lib/components/sessions/message.svelte index bf252035..13f3a405 100644 --- a/frontend/src/lib/components/sessions/message.svelte +++ b/frontend/src/lib/components/sessions/message.svelte @@ -227,29 +227,9 @@ <Icon src={Check} class="w-4 inline" /> {displayedTime} {#if message.edited} - <button class="italic cursor-help" on:click={historyModal.showModal()}> + <button class="italic cursor-help" on:click={() => historyModal.showModal()}> {$t('chatbox.edited')} </button> - <dialog bind:this={historyModal} class="modal"> - <div class="modal-box"> - <h3 class="text-xl">{$t('chatbox.history')}</h3> - <div> - {#each $messageVersions as version} - <div class="flex justify-between items-center border-b border-gray-300 py-1"> - <div> - {version.content} - </div> - <div class="whitespace-nowrap">{displayTime(version.date)}</div> - </div> - {/each} - </div> - <div class="modal-action"> - <form method="dialog"> - <button class="btn btn-primary">{$t('button.close')}</button> - </form> - </div> - </div> - </dialog> {/if} </div> </div> @@ -268,3 +248,24 @@ <ChatBubble /> </button> </div> + +<dialog bind:this={historyModal} class="modal"> + <div class="modal-box"> + <h3 class="text-xl">{$t('chatbox.history')}</h3> + <div> + {#each $messageVersions as version} + <div class="flex justify-between items-center border-b border-gray-300 py-1"> + <div> + {version.content} + </div> + <div class="whitespace-nowrap">{displayTime(version.date)}</div> + </div> + {/each} + </div> + <div class="modal-action"> + <form method="dialog"> + <button class="btn btn-primary">{$t('button.close')}</button> + </form> + </div> + </div> +</dialog> diff --git a/frontend/src/lib/types/message.ts b/frontend/src/lib/types/message.ts index 2da26f4a..5be48624 100644 --- a/frontend/src/lib/types/message.ts +++ b/frontend/src/lib/types/message.ts @@ -83,9 +83,12 @@ export default class Message { } async localUpdate(content: string, force: boolean = false): Promise<boolean> { + if (!force) { + this._versions.update((v) => [...v, { content: content, date: new Date() }]); + this._edited = true; + } this._content = content; this.feedbacks.set([]); - if (!force) this._edited = true; return true; } -- GitLab