import type { Metadata } from "next"; import { noIndex } from "@/lib/seo"; import { getShippingTiers } from "@/lib/shipping"; import { getActiveProducts } from "@/lib/data"; import { getBulkDiscountTiers } from "@/lib/bulk-discount"; import { getLocale } from "@/i18n/locale"; import { getDictionary } from "@/i18n/get-dictionary"; import { WarenkorbContent } from "./warenkorb-content"; // Versandstaffeln und Lagerbestand koennen sich im Admin-Bereich jederzeit // aendern — Rendering pro Request statt statischem Build haelt das aktuell. export const dynamic = "force-dynamic"; export async function generateMetadata(): Promise { const t = getDictionary(await getLocale()); // Ein Warenkorb ist pro Besucher verschieden und als Suchtreffer wertlos — // siehe Begruendung in lib/seo.ts, warum robots.ts allein nicht genuegt. return { title: t.cart.title, robots: noIndex }; } export default async function WarenkorbPage() { const [tiers, availableProducts, bulkDiscountTiers] = await Promise.all([ getShippingTiers(), getActiveProducts({ onlyAvailable: true }), getBulkDiscountTiers(), ]); return ( ({ minQuantity: t.minQuantity, maxQuantity: t.maxQuantity, priceCents: t.priceCents, }))} availableProducts={availableProducts} bulkDiscountTiers={bulkDiscountTiers} /> ); }