"use client"; import { useTransition } from "react"; import { useRouter } from "next/navigation"; import { Loader2, Save } from "lucide-react"; import { toast } from "sonner"; import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; import { updateMyContact } from "../actions"; type ContactFormProps = { contact: { phone: string | null; street: string | null; postalCode: string | null; city: string | null; }; }; export function ContactForm({ contact }: ContactFormProps) { const router = useRouter(); const [isPending, startTransition] = useTransition(); function handleSubmit(formData: FormData) { startTransition(async () => { const result = await updateMyContact({ phone: String(formData.get("phone") ?? ""), street: String(formData.get("street") ?? ""), postalCode: String(formData.get("postalCode") ?? ""), city: String(formData.get("city") ?? ""), }); if (result.error) { toast.error(result.error); return; } toast.success("Kontaktdaten gespeichert."); router.refresh(); }); } return (
); }