"use client"; import { WandSparkles } from "lucide-react"; import { Button } from "@/components/ui/button"; import { useState } from "react"; import { useAi } from "@/hooks/useAi"; import { EnhancedSettings } from "@/types"; import { toast } from "sonner"; export function PromptEnhancer({ prompt, setPrompt, enhancedSettings, }: { prompt: string; setPrompt: (p: string) => void; enhancedSettings: EnhancedSettings; }) { const { model, provider, globalAiLoading } = useAi(); const [loading, setLoading] = useState(false); const enhance = async () => { if (!prompt.trim()) return; try { setLoading(true); const res = await fetch('/api/enhance', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ prompt, model, provider, enhancedSettings }), }); const data = await res.json(); if (!res.ok || !data.ok) throw new Error(data.message || 'Failed to enhance prompt'); setPrompt(data.prompt); toast.success('Prompt enhanced'); } catch (e: any) { toast.error(e?.message || 'Failed to enhance'); } finally { setLoading(false); } }; return ( ); }