From 4a92bb68eea8e27617201277ae312f15ddaef2df Mon Sep 17 00:00:00 2001
From: space-nuko <24979496+space-nuko@users.noreply.github.com>
Date: Thu, 8 Jun 2023 19:33:26 -0500
Subject: [PATCH 1/3] fixes
---
src/lib/components/ComfyQueue.svelte | 4 ++--
.../nodes/actions/ComfySetNodeModeAdvancedAction.ts | 13 +++++++++----
src/lib/widgets/ImageUploadWidget.svelte | 2 +-
3 files changed, 12 insertions(+), 7 deletions(-)
diff --git a/src/lib/components/ComfyQueue.svelte b/src/lib/components/ComfyQueue.svelte
index a9c50a9..0425c79 100644
--- a/src/lib/components/ComfyQueue.svelte
+++ b/src/lib/components/ComfyQueue.svelte
@@ -15,8 +15,8 @@
import { type WorkflowError } from "$lib/stores/workflowState";
import ComfyQueueListDisplay from "./ComfyQueueListDisplay.svelte";
import ComfyQueueGridDisplay from "./ComfyQueueGridDisplay.svelte";
- import { WORKFLOWS_VIEW } from "./ComfyBoxWorkflowsView.svelte";
- import uiQueueState, { type QueueUIEntry } from "$lib/stores/uiQueueState";
+ import { WORKFLOWS_VIEW } from "./ComfyBoxWorkflowsView.svelte";
+ import uiQueueState, { type QueueUIEntry } from "$lib/stores/uiQueueState";
export let app: ComfyApp;
diff --git a/src/lib/nodes/actions/ComfySetNodeModeAdvancedAction.ts b/src/lib/nodes/actions/ComfySetNodeModeAdvancedAction.ts
index 6563c4d..fa18806 100644
--- a/src/lib/nodes/actions/ComfySetNodeModeAdvancedAction.ts
+++ b/src/lib/nodes/actions/ComfySetNodeModeAdvancedAction.ts
@@ -73,10 +73,10 @@ export default class ComfySetNodeModeAdvancedAction extends ComfyGraphNode {
if (hasTag) {
let newMode: NodeMode;
- if (enable && action.enable) {
- newMode = NodeMode.ALWAYS;
+ if (action.enable) {
+ newMode = enable ? NodeMode.ALWAYS : NodeMode.NEVER;
} else {
- newMode = NodeMode.NEVER;
+ newMode = enable ? NodeMode.NEVER : NodeMode.ALWAYS;
}
nodeChanges[node.id] = newMode
}
@@ -88,7 +88,12 @@ export default class ComfySetNodeModeAdvancedAction extends ComfyGraphNode {
const container = entry.dragItem;
const hasTag = container.attrs.tags.indexOf(action.tag) != -1;
if (hasTag) {
- const hidden = !(enable && action.enable)
+ let hidden: boolean;
+ if (action.enable) {
+ hidden = !enable
+ } else {
+ hidden = enable;
+ }
widgetChanges[container.id] = hidden
}
}
diff --git a/src/lib/widgets/ImageUploadWidget.svelte b/src/lib/widgets/ImageUploadWidget.svelte
index 4f9c3cf..8596d03 100644
--- a/src/lib/widgets/ImageUploadWidget.svelte
+++ b/src/lib/widgets/ImageUploadWidget.svelte
@@ -230,7 +230,7 @@
/>
{:else}
- {#if _value && canMask}
+ {#if _value && _value.length > 0 && canMask}
{@const comfyURL = convertComfyOutputToComfyURL(_value[0])}
From 3275777d2f701c3c39a5ea4dac225292e7cdacaf Mon Sep 17 00:00:00 2001
From: space-nuko <24979496+space-nuko@users.noreply.github.com>
Date: Thu, 8 Jun 2023 22:20:45 -0500
Subject: [PATCH 2/3] Don't strip combo value from workflow
---
src/lib/nodes/widgets/ComfyComboNode.ts | 1 -
1 file changed, 1 deletion(-)
diff --git a/src/lib/nodes/widgets/ComfyComboNode.ts b/src/lib/nodes/widgets/ComfyComboNode.ts
index 85ba08b..890ce13 100644
--- a/src/lib/nodes/widgets/ComfyComboNode.ts
+++ b/src/lib/nodes/widgets/ComfyComboNode.ts
@@ -170,7 +170,6 @@ export default class ComfyComboNode extends ComfyWidgetNode
{
super.stripUserState(o);
o.properties.values = []
o.properties.defaultValue = null;
- (o as any).comfyValue = null
}
}
From 334692eb1a0c7d839c741dd2df4d950632c53aa2 Mon Sep 17 00:00:00 2001
From: space-nuko <24979496+space-nuko@users.noreply.github.com>
Date: Mon, 19 Jun 2023 19:21:11 -0500
Subject: [PATCH 3/3] Workflow serialization fix
ensure user data for values in workflow isn't stripped
---
litegraph | 2 +-
src/lib/nodes/widgets/ComfyWidgetNode.ts | 5 -----
src/lib/widgets/GalleryWidget.svelte | 10 ++--------
src/tests/ComfyGraphTests.ts | 23 ++++++++++++++++++++++-
4 files changed, 25 insertions(+), 15 deletions(-)
diff --git a/litegraph b/litegraph
index 7c38fa4..29a7877 160000
--- a/litegraph
+++ b/litegraph
@@ -1 +1 @@
-Subproject commit 7c38fa4aedb33c960806efad6d700ec8ca67649f
+Subproject commit 29a7877f598fe47d39d4531385a3ff6728a81673
diff --git a/src/lib/nodes/widgets/ComfyWidgetNode.ts b/src/lib/nodes/widgets/ComfyWidgetNode.ts
index a0c3c8a..5bb2a83 100644
--- a/src/lib/nodes/widgets/ComfyWidgetNode.ts
+++ b/src/lib/nodes/widgets/ComfyWidgetNode.ts
@@ -357,9 +357,4 @@ export default abstract class ComfyWidgetNode extends ComfyGraphNode {
this.value.set(value);
this.shownOutputProperties = (o as any).shownOutputProperties;
}
-
- override stripUserState(o: SerializedLGraphNode) {
- super.stripUserState(o);
- (o as any).comfyValue = LiteGraph.cloneObject(this.properties.defaultValue);
- }
}
diff --git a/src/lib/widgets/GalleryWidget.svelte b/src/lib/widgets/GalleryWidget.svelte
index 0ce01ee..4e49844 100644
--- a/src/lib/widgets/GalleryWidget.svelte
+++ b/src/lib/widgets/GalleryWidget.svelte
@@ -42,7 +42,7 @@
$: {
previewURL = $queueState.previewURL;
- if (previewURL && $queueState.runningPromptID != null && !$uiState.hidePreviews && node.properties.showPreviews) {
+ if (previewURL && $queueState.runningPromptID && !$uiState.hidePreviews && node.properties.showPreviews) {
const queueEntry = queueState.getQueueEntry($queueState.runningPromptID)
if (queueEntry != null) {
const tags = queueEntry.extraData?.extra_pnginfo?.comfyBoxPrompt?.subgraphs;
@@ -51,12 +51,6 @@
previewImage = img;
})
}
- else {
- previewImage = null;
- }
- }
- else {
- previewImage = null;
}
}
else {
@@ -155,7 +149,7 @@