import { cn } from "../../lib/utils"; export interface SpinnerProps { /** Visual size of the spinner */ size?: "sm" | "md" | "lg"; /** Additional Tailwind classes — use `text-{color}` to tint */ className?: string; } const sizeMap: Record, string> = { sm: "h-4 w-4", md: "h-6 w-6", lg: "h-10 w-10 border-4", }; /** * @example * // Default (medium, brand blue) * * * // Large, white (inside a dark button) * * * // Small, inline * */ export function Spinner({ size = "md", className }: SpinnerProps) { return ( ); } /** Full-page loading overlay */ export function PageLoader({ message = "Loading…" }: { message?: string }) { return (

{message}

); } /** Inline loading row — for card/section loading states */ export function InlineLoader({ message = "Loading…" }: { message?: string }) { return (
{message}
); }