diff --git a/src/types/comfyWorkflow.ts b/src/types/comfyWorkflow.ts index c9a8e9705..ef8176033 100644 --- a/src/types/comfyWorkflow.ts +++ b/src/types/comfyWorkflow.ts @@ -49,14 +49,7 @@ const zVector2 = z.union([ z.tuple([z.number(), z.number()]), ]); -const zWidgetValues = z.union([ - z.array(z.any()), - z.record(z.any()).transform((v) => - Object.keys(v) - .sort((a, b) => Number(a) - Number(b)) - .map((key) => v[key]) - ), -]); +const zWidgetValues = z.union([z.array(z.any()), z.record(z.any())]); const zComfyNode = z .object({ diff --git a/tests-ui/tests/comfyWorkflow.test.ts b/tests-ui/tests/comfyWorkflow.test.ts index 87f74655a..f42f343fb 100644 --- a/tests-ui/tests/comfyWorkflow.test.ts +++ b/tests-ui/tests/comfyWorkflow.test.ts @@ -82,9 +82,10 @@ describe("parseComfyWorkflow", () => { workflow.nodes[0].widgets_values = undefined; await expect(parseComfyWorkflow(JSON.stringify(workflow))).resolves.not.toThrow(); - // Should automatically transform the legacy format object to array. - workflow.nodes[0].widgets_values = {0: "foo", 1: "bar"}; + // The object format of widgets_values is used by VHS nodes to perform + // dynamic widgets display. + workflow.nodes[0].widgets_values = {"foo": "bar"}; const parsedWorkflow = await parseComfyWorkflow(JSON.stringify(workflow)); - expect(parsedWorkflow.nodes[0].widgets_values).toEqual(["foo", "bar"]); + expect(parsedWorkflow.nodes[0].widgets_values).toEqual({"foo": "bar"}); }); });