diff --git a/skyvern-frontend/src/components/ModelSelector.tsx b/skyvern-frontend/src/components/ModelSelector.tsx index 73677d7b..e4d2847d 100644 --- a/skyvern-frontend/src/components/ModelSelector.tsx +++ b/skyvern-frontend/src/components/ModelSelector.tsx @@ -15,12 +15,18 @@ import { WorkflowModel } from "@/routes/workflows/types/workflowTypes"; type Props = { className?: string; + clearable?: boolean; value: WorkflowModel | null; // -- onChange: (value: WorkflowModel | null) => void; }; -function ModelSelector({ value, onChange, className }: Props) { +function ModelSelector({ + clearable = true, + value, + onChange, + className, +}: Props) { const credentialGetter = useCredentialGetter(); const { data: availableModels } = useQuery({ @@ -39,24 +45,44 @@ function ModelSelector({ value, onChange, className }: Props) { - +
+ + {value && clearable && ( + <> +
); } diff --git a/skyvern-frontend/src/routes/workflows/editor/nodes/StartNode/StartNode.tsx b/skyvern-frontend/src/routes/workflows/editor/nodes/StartNode/StartNode.tsx index a6ba6956..e1fbfac4 100644 --- a/skyvern-frontend/src/routes/workflows/editor/nodes/StartNode/StartNode.tsx +++ b/skyvern-frontend/src/routes/workflows/editor/nodes/StartNode/StartNode.tsx @@ -14,17 +14,11 @@ import { Label } from "@/components/ui/label"; import { HelpTooltip } from "@/components/HelpTooltip"; import { Input } from "@/components/ui/input"; import { ProxySelector } from "@/components/ProxySelector"; -import { - Select, - SelectTrigger, - SelectValue, - SelectContent, - SelectItem, -} from "@/components/ui/select"; import { useCredentialGetter } from "@/hooks/useCredentialGetter"; import { Switch } from "@/components/ui/switch"; import { Separator } from "@/components/ui/separator"; import { ModelsResponse } from "@/api/types"; +import { ModelSelector } from "@/components/ModelSelector"; function StartNode({ id, data }: NodeProps) { const credentialGetter = useCredentialGetter(); @@ -83,27 +77,13 @@ function StartNode({ id, data }: NodeProps) {
-
- - -
- + />
diff --git a/skyvern-frontend/src/routes/workflows/editor/nodes/StartNode/types.ts b/skyvern-frontend/src/routes/workflows/editor/nodes/StartNode/types.ts index b931e097..11f54be4 100644 --- a/skyvern-frontend/src/routes/workflows/editor/nodes/StartNode/types.ts +++ b/skyvern-frontend/src/routes/workflows/editor/nodes/StartNode/types.ts @@ -8,7 +8,7 @@ export type WorkflowStartNodeData = { webhookCallbackUrl: string; proxyLocation: ProxyLocation; persistBrowserSession: boolean; - model: WorkflowModel; + model: WorkflowModel | null; editable: boolean; }; diff --git a/skyvern-frontend/src/routes/workflows/editor/workflowEditorUtils.ts b/skyvern-frontend/src/routes/workflows/editor/workflowEditorUtils.ts index c3efcbe8..09d1ace7 100644 --- a/skyvern-frontend/src/routes/workflows/editor/workflowEditorUtils.ts +++ b/skyvern-frontend/src/routes/workflows/editor/workflowEditorUtils.ts @@ -100,7 +100,6 @@ import { taskv2NodeDefaultData } from "./nodes/Taskv2Node/types"; import { urlNodeDefaultData } from "./nodes/URLNode/types"; import { fileUploadNodeDefaultData } from "./nodes/FileUploadNode/types"; export const NEW_NODE_LABEL_PREFIX = "block_"; -const DEFAULT_MODEL = { model: "Skyvern Optimized" }; function layoutUtil( nodes: Array, @@ -662,7 +661,7 @@ function getElements( persistBrowserSession: settings.persistBrowserSession, proxyLocation: settings.proxyLocation ?? ProxyLocation.Residential, webhookCallbackUrl: settings.webhookCallbackUrl ?? "", - model: settings.model ?? DEFAULT_MODEL, + model: settings.model, editable, }), ); @@ -1322,7 +1321,7 @@ function getWorkflowSettings(nodes: Array): WorkflowSettings { persistBrowserSession: false, proxyLocation: ProxyLocation.Residential, webhookCallbackUrl: null, - model: DEFAULT_MODEL, + model: null, }; const startNodes = nodes.filter(isStartNode); const startNodeWithWorkflowSettings = startNodes.find(