From 3d42713e69b8979f0d02f28ab2cb17f20432341b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rn-Michael=20Miehe?= Date: Sun, 28 Dec 2025 16:48:16 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20rebuild=20previous=20logic,=20no?= =?UTF-8?q?w=20with=20explanation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ui/src/components/bulma/Toast.vue | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/ui/src/components/bulma/Toast.vue b/ui/src/components/bulma/Toast.vue index 5586739..2f60117 100644 --- a/ui/src/components/bulma/Toast.vue +++ b/ui/src/components/bulma/Toast.vue @@ -20,29 +20,27 @@ const emit = defineEmits<{ (event: "handle", handle: HBulmaToast): void; }>(); -const message = useTemplateRef("message"); +const message_div = useTemplateRef("message"); onMounted(() => emit("handle", { show(options: ToastOptions = {}): void { - if (message.value === null) return; + if (message_div.value === null) return; toast({ ...options, single: true, - message: message.value, + message: message_div.value, }); }, hide(): void { - if (message.value === null) return; + // using "toast" detaches "message" from the invisible "div" + // => toast_div is not part of this component! + const toast_div = message_div.value?.parentElement; + const delete_button = toast_div?.querySelector("button.delete"); + if (!(delete_button instanceof HTMLButtonElement)) return; - const toast_div = message.value.parentElement; - if (toast_div === null) return; - - const dbutton = toast_div.querySelector("button.delete"); - if (!(dbutton instanceof HTMLButtonElement)) return; - - dbutton.click(); + delete_button.click(); }, }), );