import React from "react"; import { DashboardBreadcrumbs } from "~/components/navigation/dashboard-breadcrumbs"; interface PageHeaderProps { title: string; description?: string; children?: React.ReactNode; // For action buttons or other header content className?: string; variant?: "default" | "gradient" | "large" | "large-gradient"; titleClassName?: string; } export function PageHeader({ title, description, children, className = "", variant = "default", titleClassName, }: PageHeaderProps) { const getTitleClasses = () => { const baseClasses = "font-bold"; switch (variant) { case "gradient": return `${baseClasses} text-3xl text-foreground`; case "large": return `${baseClasses} text-4xl text-foreground`; case "large-gradient": return `${baseClasses} text-4xl text-foreground`; default: return `${baseClasses} text-3xl text-foreground`; } }; const getDescriptionSpacing = () => { return variant === "large" || variant === "large-gradient" ? "mt-2" : "mt-1"; }; return (
{variant === "large-gradient" || variant === "gradient" ? (
{/* UPDATED: flex-col on mobile to prevent squishing, row on sm+ */}

{title}

{description && (

{description}

)}
{children && (
{children}
)}
) : ( <> {/* UPDATED: flex-col on mobile to prevent squishing, row on sm+ */}

{title}

{description && (

{description}

)}
{children && (
{children}
)}
)}
); } // Convenience wrapper for dashboard page with larger gradient title export function DashboardPageHeader({ title, description, children, className = "", }: Omit) { return ( {children} ); }