import { RiHeart3Line as BookHeart, RiBookOpenLine as BookOpen, RiCalendarLine as CalendarRange, RiRestaurantLine as UtensilsCrossed } from "@remixicon/react"; import Link from "next/link"; import type { ReactNode } from "react"; import { buttonStyles } from "@/components/base/buttons/button"; import { ThemeToggle } from "@/components/application/theme/theme-toggle"; import { cx } from "@/utils/cx"; type ActiveNav = "home" | "recipes" | "caydens-corner" | "plan"; export function Logo({ small = false, subtitle }: { small?: boolean; subtitle?: ReactNode }) { return (
Plan my Meals
by{" "} Cayden Codes {subtitle && ( <> ยท {subtitle} )}
); } interface SiteHeaderProps { active?: ActiveNav; subtitle?: ReactNode; rightSlot?: ReactNode; } export function SiteHeader({ active = "home", subtitle, rightSlot }: SiteHeaderProps) { const linkClass = (isCurrent: boolean) => cx( "inline-flex h-9 items-center gap-1.5 rounded-2lg px-2.5 text-body-medium transition-colors duration-150 sm:px-3", isCurrent ? "bg-background-secondary-default text-text-primary" : "text-text-secondary hover:bg-background-secondary-hover hover:text-text-primary", ); return (
{rightSlot}
); }