import { Link, useLoaderData, useNavigate } from "react-router"; import { requireUser } from "@/session.server"; import prisma from "@/lib/prisma"; import { CompanyForm } from "@/components/company/company-form"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { ChevronLeft } from "lucide-react"; export async function loader({ request, params }: { request: Request; params: { id: string } }) { const user = await requireUser(request); const company = await prisma.company.findFirst({ where: { id: params.id, userId: user.id }, }); if (!company) throw new Response("Not Found", { status: 404 }); return { company }; } export default function EditCompanyPage() { const { company } = useLoaderData(); const navigate = useNavigate(); async function handleSubmit(data: Record) { const res = await fetch(`/api/companies/${company.id}`, { method: "PUT", headers: { "Content-Type": "application/json" }, body: JSON.stringify(data), }); if (res.ok) navigate(`/companies/${company.id}`); } return (
Zurück zum Mandanten

Mandant bearbeiten

Mandantendaten } onSubmit={handleSubmit} submitLabel="Änderungen speichern" />
); }