From 24a386c766cf3485caa1da73d5eaee91e3bd6701 Mon Sep 17 00:00:00 2001 From: Christian Byrne Date: Tue, 12 Aug 2025 12:27:04 -0700 Subject: [PATCH] fix: add cleanup for graphChanged listener in useWorkflowPersistence (#4947) --- src/composables/useWorkflowPersistence.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/composables/useWorkflowPersistence.ts b/src/composables/useWorkflowPersistence.ts index e0178a139..f5527fdd7 100644 --- a/src/composables/useWorkflowPersistence.ts +++ b/src/composables/useWorkflowPersistence.ts @@ -1,3 +1,4 @@ +import { tryOnScopeDispose } from '@vueuse/core' import { computed, watch } from 'vue' import { api } from '@/scripts/api' @@ -88,6 +89,11 @@ export function useWorkflowPersistence() { ) api.addEventListener('graphChanged', persistCurrentWorkflow) + // Clean up event listener when component unmounts + tryOnScopeDispose(() => { + api.removeEventListener('graphChanged', persistCurrentWorkflow) + }) + // Restore workflow tabs states const openWorkflows = computed(() => workflowStore.openWorkflows) const activeWorkflow = computed(() => workflowStore.activeWorkflow)