import Link from "next/link";
import type { ReactNode } from "react";
export interface NavigationItem {
readonly external: boolean;
readonly href: string;
readonly label: string;
}
export interface SocialLink {
readonly label: string;
readonly url: string;
}
export function SiteHeader({
businessName,
navigation,
}: Readonly<{ businessName: string; navigation: readonly NavigationItem[] }>) {
return (
);
}
export function SiteFooter({
businessName,
socialLinks,
}: Readonly<{ businessName: string; socialLinks: readonly SocialLink[] }>) {
return (
);
}
export function ProductGrid({ children }: Readonly<{ children: ReactNode }>) {
return
{children}
;
}
export function ProductCard({
description,
formattedPrice,
href,
mediaLabel,
name,
}: Readonly<{
description: string;
formattedPrice: string;
href: string;
mediaLabel: string;
name: string;
}>) {
return (
Media placeholder
{name}
{description}
View product
);
}
export function PriceDisplay({ value }: Readonly<{ value: string }>) {
return {value};
}
export function QuantitySelector({
disabled = false,
id,
label = "Quantity",
onChange,
value,
}: Readonly<{
disabled?: boolean;
id: string;
label?: string;
onChange?: (value: number) => void;
value?: number;
}>) {
return (
);
}
export function CartLine({
actions,
details,
formattedPrice,
name,
}: Readonly<{ actions?: ReactNode; details?: ReactNode; formattedPrice: string; name: string }>) {
return (
{actions}
);
}