From d2174eede2ffa08edf00d2199ae5d5f7f44770da Mon Sep 17 00:00:00 2001 From: "gpt-engineer-app[bot]" <159125892+gpt-engineer-app[bot]@users.noreply.github.com> Date: Fri, 7 Nov 2025 19:35:20 +0000 Subject: [PATCH] Create agent modal Implement modal for creating agents with name and AI model fields. Upon creation, the user is redirected to the agent details page. The modal now only includes the necessary fields and navigation logic. --- src/components/agents/CreateAgentDialog.tsx | 81 +++++++++------------ 1 file changed, 35 insertions(+), 46 deletions(-) diff --git a/src/components/agents/CreateAgentDialog.tsx b/src/components/agents/CreateAgentDialog.tsx index 1263aa1..c2f06e3 100644 --- a/src/components/agents/CreateAgentDialog.tsx +++ b/src/components/agents/CreateAgentDialog.tsx @@ -1,4 +1,5 @@ import { useState } from "react"; +import { useNavigate } from "react-router-dom"; import { Dialog, DialogContent, @@ -16,6 +17,7 @@ import { SelectTrigger, SelectValue, } from "@/components/ui/select"; +import { useToast } from "@/hooks/use-toast"; interface CreateAgentDialogProps { open: boolean; @@ -23,19 +25,37 @@ interface CreateAgentDialogProps { } export function CreateAgentDialog({ open, onOpenChange }: CreateAgentDialogProps) { + const navigate = useNavigate(); + const { toast } = useToast(); const [name, setName] = useState(""); - const [status, setStatus] = useState<"active" | "inactive">("active"); - const [selectedPrompt, setSelectedPrompt] = useState(""); const [selectedModel, setSelectedModel] = useState(""); - const handleSave = () => { - console.log("Salvando agente:", { name, status, selectedPrompt, selectedModel }); - // Implementar lógica de salvar no backend + const aiModels = [ + { value: "google/gemini-2.5-pro", label: "Google Gemini 2.5 Pro" }, + { value: "google/gemini-2.5-flash", label: "Google Gemini 2.5 Flash" }, + { value: "google/gemini-2.5-flash-lite", label: "Google Gemini 2.5 Flash Lite" }, + { value: "openai/gpt-5", label: "OpenAI GPT-5" }, + { value: "openai/gpt-5-mini", label: "OpenAI GPT-5 Mini" }, + { value: "openai/gpt-5-nano", label: "OpenAI GPT-5 Nano" }, + ]; + + const handleCreate = () => { + // TODO: Implementar criação no backend + const newAgentId = Math.floor(Math.random() * 10000); // Gerar ID temporário + console.log("Criando agente:", { name, model: selectedModel }); + + toast({ + title: "Agente criado", + description: "O agente foi criado com sucesso.", + }); + onOpenChange(false); + + // Navegar para a tela de detalhes do novo agente + navigate(`/agents/${newAgentId}`); + // Reset form setName(""); - setStatus("active"); - setSelectedPrompt(""); setSelectedModel(""); }; @@ -45,7 +65,7 @@ export function CreateAgentDialog({ open, onOpenChange }: CreateAgentDialogProps Criar Novo Agente - Configure o agente selecionando um prompt e modelo de IA + Preencha os dados básicos do agente. Você poderá configurar o system prompt na próxima tela. @@ -60,35 +80,6 @@ export function CreateAgentDialog({ open, onOpenChange }: CreateAgentDialogProps /> -
- - -
- -
- - -
-
@@ -112,8 +101,8 @@ export function CreateAgentDialog({ open, onOpenChange }: CreateAgentDialogProps Cancelar