"use client"; import { useState } from "react"; import { Video, RefreshCw } from "lucide-react"; import { Button } from "@/components/ui/button"; import { Textarea } from "@/components/ui/textarea"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { toast } from "sonner"; import { apiFetch } from "./types"; interface Props { onGenerated: () => void; } export default function VideosTab({ onGenerated }: Props) { const [userPrompt, setUserPrompt] = useState(""); const [loading, setLoading] = useState(false); const handleGenerateVideo = async () => { if (!userPrompt.trim()) { toast.error("Describe el video"); return; } setLoading(true); try { const result = await apiFetch("/generate/video", { method: "POST", body: JSON.stringify({ prompt: userPrompt }), }); if (result.success) { toast.success("Video generado"); onGenerated(); } else toast.error(result.error); } catch { toast.error("Error"); } finally { setLoading(false); } }; return (