diff --git a/packages/dashboard/app/components/WorkflowNodeEditor.tsx b/packages/dashboard/app/components/WorkflowNodeEditor.tsx index c975265a58..77d03c33cb 100644 --- a/packages/dashboard/app/components/WorkflowNodeEditor.tsx +++ b/packages/dashboard/app/components/WorkflowNodeEditor.tsx @@ -14,6 +14,7 @@ import { type Node as FlowNode, type Edge as FlowEdge, } from "@xyflow/react"; +import { createPortal } from "react-dom"; import { useTranslation } from "react-i18next"; import { X, Plus, Trash2, Save, MessageSquare, Terminal, Shield, GitMerge, Loader2, HelpCircle, PauseCircle, Split, Merge, Repeat, ClipboardCheck, ListChecks, Code2, Bell, LayoutGrid, Workflow, Download, Upload, ChevronDown, ChevronRight, ChevronLeft, Library, Sparkles, Maximize2, Minimize2 } from "lucide-react"; import type { WorkflowDefinition, WorkflowIrColumn, TraitViolation, WorkflowStepTemplate } from "@fusion/core"; @@ -2123,9 +2124,42 @@ function InnerEditor({ }, [overrideColumnBinding, agents.length, projectId, addToast]); const overlayProps = useOverlayDismiss(requestClose); + const promptFullscreenOverlay = + isPromptExpanded && (selectedNode?.data.kind === "prompt" || selectedNode?.data.kind === "gate") + ? createPortal( +
+
+ {t("workflowEditor.editingPrompt", "Editing Prompt")} + +
+