'use client' import { useState } from 'react' import { useRouter } from 'next/navigation' import { toast } from 'sonner' import { createForumThread } from '@/lib/actions' const CATEGORIES = [ { value: 'general', label: 'General' }, { value: 'announcements', label: 'Announcements' }, { value: 'projects', label: 'Projects' }, { value: 'help', label: 'Help' }, { value: 'feedback', label: 'Feedback' }, { value: 'off-topic', label: 'Off topic' }, ] export function NewThreadForm() { const router = useRouter() const [title, setTitle] = useState('') const [body, setBody] = useState('') const [category, setCategory] = useState('general') const [saving, setSaving] = useState(false) async function handleSubmit(e: React.FormEvent) { e.preventDefault() if (!title.trim()) return setSaving(true) const result = await createForumThread({ title: title.trim(), body: body.trim() || undefined, category }) setSaving(false) if ('error' in result && result.error) { toast.error(result.error); return } if ('id' in result && result.id) { toast.success('Thread created') router.push(`/forum/${result.id}`) } } return (
) }