From a795254f45a85ef60b33e5c13c077e2c9eedc33f Mon Sep 17 00:00:00 2001 From: Marc Kelechava Date: Mon, 19 Jan 2026 15:26:30 -0800 Subject: [PATCH] PrintPage Block - add parameters in advanced settings and enable debugging (#4491) --- .../nodes/PrintPageNode/PrintPageNode.tsx | 15 ++- .../editor/nodes/PrintPageNode/types.ts | 2 + .../editor/panels/WorkflowParametersPanel.tsx | 6 +- .../workflows/editor/workflowEditorUtils.ts | 3 + .../routes/workflows/types/workflowTypes.ts | 1 + .../workflows/types/workflowYamlTypes.ts | 1 + skyvern/forge/sdk/workflow/models/block.py | 122 +++++++++--------- .../workflow/workflow_definition_converter.py | 2 + skyvern/schemas/workflows.py | 1 + 9 files changed, 91 insertions(+), 62 deletions(-) diff --git a/skyvern-frontend/src/routes/workflows/editor/nodes/PrintPageNode/PrintPageNode.tsx b/skyvern-frontend/src/routes/workflows/editor/nodes/PrintPageNode/PrintPageNode.tsx index a9a7a17c..33305f21 100644 --- a/skyvern-frontend/src/routes/workflows/editor/nodes/PrintPageNode/PrintPageNode.tsx +++ b/skyvern-frontend/src/routes/workflows/editor/nodes/PrintPageNode/PrintPageNode.tsx @@ -1,6 +1,6 @@ import { HelpTooltip } from "@/components/HelpTooltip"; import { Label } from "@/components/ui/label"; -import { Handle, NodeProps, Position } from "@xyflow/react"; +import { Handle, NodeProps, Position, useNodes, useEdges } from "@xyflow/react"; import type { PrintPageNode } from "./types"; import { Input } from "@/components/ui/input"; import { Switch } from "@/components/ui/switch"; @@ -24,6 +24,9 @@ import { useParams } from "react-router-dom"; import { statusIsRunningOrQueued } from "@/routes/tasks/types"; import { useWorkflowRunQuery } from "@/routes/workflows/hooks/useWorkflowRunQuery"; import { useUpdate } from "@/routes/workflows/editor/useUpdate"; +import { ParametersMultiSelect } from "../TaskNode/ParametersMultiSelect"; +import { AppNode } from ".."; +import { getAvailableOutputParameterKeys } from "../../workflowEditorUtils"; function PrintPageNode({ id, data }: NodeProps) { const { editable, label } = data; @@ -36,6 +39,9 @@ function PrintPageNode({ id, data }: NodeProps) { const thisBlockIsPlaying = workflowRunIsRunningOrQueued && thisBlockIsTargetted; + const nodes = useNodes(); + const edges = useEdges(); + const outputParameterKeys = getAvailableOutputParameterKeys(nodes, edges, id); const update = useUpdate({ id, editable }); return ( @@ -126,6 +132,13 @@ function PrintPageNode({ id, data }: NodeProps) {
+ { + update({ parameterKeys }); + }} + />