import { cn } from '../../lib/utils.js';
/** Standard page title + optional description + right-aligned actions. */
export function PageHeader({ title, description, actions, className }) {
return (
{title}
{description &&
{description}
}
{actions &&
{actions}
}
);
}
/** Dashboard metric tile. */
export function StatCard({ label, value, hint, icon: Icon, tone = 'primary', className }) {
const toneClass =
tone === 'success'
? 'text-success'
: tone === 'warning'
? 'text-warning'
: tone === 'danger'
? 'text-danger'
: 'text-primary';
return (
{label}
{Icon && }
{value}
{hint &&
{hint}
}
);
}
/** Empty / zero-state placeholder for lists and tables. */
export function EmptyState({ icon: Icon, title, description, action, className }) {
return (
{Icon && (
)}
{title}
{description &&
{description}
}
{action}
);
}