import { AlertTriangle, Inbox, Loader2 } from "lucide-react"; import { Spinner } from "@/components/primitives"; import { cn } from "@/lib/utils"; export function EmptyState({ title = "Nothing here yet", description, icon, className, }: { title?: string; description?: string; icon?: React.ReactNode; className?: string; }) { return (
{icon ?? }
{title}
{description && (
{description}
)}
); } export function ErrorState({ title = "Couldn't load", error, onRetry, }: { title?: string; error?: unknown; onRetry?: () => void; }) { const msg = error instanceof Error ? error.message : String(error ?? ""); return (
{title}
{msg && (
{msg}
)} {onRetry && ( )}
); } export function LoadingState({ label = "Syncing" }: { label?: string }) { return (
{label}
); } export { Loader2 };