'use client' import { useState, useActionState } from 'react' import { useFormStatus } from 'react-dom' import { useRouter } from 'next/navigation' import { Button } from '@/components/ui/button' import { Textarea } from '@/components/ui/textarea' import { Dialog, DialogContent, DialogHeader, DialogTitle, } from '@/components/ui/dialog' import { createSprintAction } from '@/actions/sprints' interface StartSprintButtonProps { productId: string } function SubmitButton() { const { pending } = useFormStatus() return ( ) } export function StartSprintButton({ productId }: StartSprintButtonProps) { const [open, setOpen] = useState(false) const router = useRouter() const [state, formAction] = useActionState( async (_prev: unknown, fd: FormData) => { const result = await createSprintAction(_prev, fd) if (result.success) { setOpen(false) router.push(`/products/${productId}/sprint`) } return result }, undefined ) const globalError = typeof state?.error === 'string' ? state.error : undefined return ( <> Nieuwe Sprint starten