'use client' import { Card, CardContent } from '@/components/ui/card' import { Button } from '@/components/ui/button' import { Input } from '@/components/ui/input' import { Label } from '@/components/ui/label' import { Settings } from 'lucide-react' import { useState } from 'react' interface SetupField { key: string label: string type?: 'number' | 'text' placeholder?: string } interface SetupPromptProps { title: string description: string fields: SetupField[] onSave: (values: Record) => Promise } export default function SetupPrompt({ title, description, fields, onSave }: SetupPromptProps) { const [values, setValues] = useState>({}) const [isSaving, setIsSaving] = useState(false) const handleSubmit = async (e: React.FormEvent) => { e.preventDefault() setIsSaving(true) try { await onSave(values) } finally { setIsSaving(false) } } const allFilled = fields.every(f => values[f.key]?.trim()) return (

{title}

{description}

{fields.map(field => (
setValues(prev => ({ ...prev, [field.key]: e.target.value }))} />
))}
) }