From 6cec8e92b364dd079391f473c7bceb8fe22eaef6 Mon Sep 17 00:00:00 2001 From: SauceyRed Date: Sun, 13 Jul 2025 04:20:26 +0200 Subject: [PATCH] feat: add handler for removing elements with destroy-on-click class upon clicking anywhere else on the screen --- app.vue | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/app.vue b/app.vue index 686a15e..9aeae9d 100644 --- a/app.vue +++ b/app.vue @@ -25,6 +25,13 @@ onMounted(() => { if (e.target instanceof HTMLElement && e.target.classList.contains("message-text") && e.target.contentEditable) { e.target.contentEditable = "false"; } + const destroyOnClick = document.getElementsByClassName("destroy-on-click"); + for (const element of destroyOnClick) { + const closest = (e.target as HTMLElement).closest(".destroy-on-click"); + if (element != closest) { + unrender(element); + } + } }); document.addEventListener("keyup", (e) => { const messageReply = document.getElementById("message-reply") as HTMLDivElement;