3cd8d98324
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
22 lines
965 B
TypeScript
22 lines
965 B
TypeScript
import type { Metadata } from "next";
|
||
import { notFound } from "next/navigation";
|
||
import { ContactStatementView } from "@/features/contacts/components/contact-statement-view";
|
||
import { getContactStatement } from "@/features/contacts/service";
|
||
import { listInKind } from "@/features/in-kind/service";
|
||
import { tr } from "@/i18n/tr";
|
||
import { requireActiveHousehold } from "@/lib/dal";
|
||
|
||
export const metadata: Metadata = { title: tr.contacts.statement };
|
||
|
||
/** /cari/:id — cari ekstresi (gizli cari yalnızca sahibine; aksi 404). */
|
||
export default async function ContactPage({ params }: PageProps<"/cari/[id]">) {
|
||
const { user, household } = await requireActiveHousehold("viewer");
|
||
const { id } = await params;
|
||
const [data, inKind] = await Promise.all([
|
||
getContactStatement(user.id, household.id, id),
|
||
listInKind(user.id, household.id, id),
|
||
]);
|
||
if (!data) notFound();
|
||
return <ContactStatementView key={id} data={data} inKind={inKind ?? []} />;
|
||
}
|