diff --git a/src/lib/components/ComfyApp.ts b/src/lib/components/ComfyApp.ts index 7a78573..d611768 100644 --- a/src/lib/components/ComfyApp.ts +++ b/src/lib/components/ComfyApp.ts @@ -390,6 +390,11 @@ export default class ComfyApp { } saveStateToLocalStorage() { + if (this.activeWorkflow == null) { + notify("No active workflow!", { type: "error" }) + return; + } + try { uiState.update(s => { s.isSavingToLocalStorage = true; return s; }) const savedWorkflow = this.serialize(); @@ -738,6 +743,11 @@ export default class ComfyApp { } querySave() { + if (this.activeWorkflow == null) { + notify("No active workflow!", { type: "error" }) + return; + } + const promptFilename = get(configState).promptForWorkflowName; let filename = "workflow.json"; @@ -931,7 +941,13 @@ export default class ComfyApp { /** * Refresh combo list on whole nodes */ - async refreshComboInNodes(workflow: ComfyWorkflow, flashUI: boolean = false) { + async refreshComboInNodes(workflow?: ComfyWorkflow, flashUI: boolean = false) { + workflow ||= this.activeWorkflow; + if (workflow == null) { + notify("No active workflow!", { type: "error" }) + return + } + const defs = await this.api.getNodeDefs(); const isComfyComboNode = (node: LGraphNode): node is ComfyComboNode => { diff --git a/src/lib/components/ComfyWorkflowsView.svelte b/src/lib/components/ComfyWorkflowsView.svelte index 8604dcc..92fee8d 100644 --- a/src/lib/components/ComfyWorkflowsView.svelte +++ b/src/lib/components/ComfyWorkflowsView.svelte @@ -41,7 +41,7 @@ } async function doRefreshCombos() { - await app.refreshComboInNodes(true) + await app.refreshComboInNodes(undefined, true) } function refreshView(event?: Event) { @@ -120,14 +120,11 @@ } function doSave(): void { - if (!app?.lGraph) - return; - app.querySave() } function doLoad(): void { - if (!app?.lGraph || !fileInput) + if (!fileInput) return; fileInput.click(); @@ -139,9 +136,6 @@ } function doSaveLocal(): void { - if (!app?.lGraph) - return; - app.saveStateToLocalStorage(); } @@ -184,22 +178,11 @@