"use client"; import { useState } from "react"; import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs"; import { DSLEditor } from "@/components/workflows/dsl-editor"; import { VisualWorkflowBuilder } from "@/components/workflows/visual-builder"; import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; import { Textarea } from "@/components/ui/textarea"; import { Card } from "@/components/ui/card"; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from "@/components/ui/select"; import { workflowApi } from "@/lib/api/workflows"; import { WorkflowType } from "@/types/workflow"; import { useRouter } from "next/navigation"; import { Loader2 } from "lucide-react"; export default function NewWorkflowPage() { const router = useRouter(); const [saving, setSaving] = useState(false); const [workflowData, setWorkflowData] = useState({ workflowName: "", description: "", workflowType: "CORRESPONDENCE" as WorkflowType, dslDefinition: 'name: New Workflow\nversion: 1.0\nsteps: []', }); const handleSave = async () => { setSaving(true); try { await workflowApi.createWorkflow(workflowData); router.push("/admin/workflows"); } catch (error) { console.error("Failed to create workflow", error); alert("Failed to create workflow"); } finally { setSaving(false); } }; return (