From 6b4ea6ea3f566d7253ce7524c32b99728f6902a8 Mon Sep 17 00:00:00 2001 From: Leo Vasanko Date: Sun, 24 Aug 2025 10:24:28 -0600 Subject: [PATCH] Restore cancel-create event functionality lost in cleanup. --- src/components/EventDialog.vue | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/components/EventDialog.vue b/src/components/EventDialog.vue index a3b2a5b..cd4f60c 100644 --- a/src/components/EventDialog.vue +++ b/src/components/EventDialog.vue @@ -353,13 +353,6 @@ function openEditDialog(payload) { function closeDialog() { showDialog.value = false - if (unsavedCreateId.value && !eventSaved.value) { - if (calendarStore.events?.has(unsavedCreateId.value)) { - calendarStore.deleteEvent(unsavedCreateId.value) - } - } - editingEventId.value = null - unsavedCreateId.value = null } function updateEventInStore() { @@ -417,6 +410,17 @@ onUnmounted(() => { watch([recurrenceEnabled, recurrenceInterval, recurrenceFrequency], () => { if (editingEventId.value && showDialog.value) updateEventInStore() }) +watch(showDialog, (val, oldVal) => { + if (oldVal && !val) { + if (dialogMode.value === 'create' && unsavedCreateId.value && !eventSaved.value) { + if (calendarStore.events?.has(unsavedCreateId.value)) { + calendarStore.deleteEvent(unsavedCreateId.value) + } + } + editingEventId.value = null + unsavedCreateId.value = null + } +}) watch( recurrenceWeekdays, () => { @@ -428,6 +432,7 @@ watch( defineExpose({ openCreateDialog, openEditDialog, + closeDialog, }) const isRepeatingEdit = computed(