TypeScript 97.5%
SQL 1.4%
Python 0.8%
1import * as React from "react";2import type { LucideIcon } from "lucide-react";3import { cn } from "@/lib/utils";45export function EmptyState({6 icon: Icon,7 title,8 description,9 action,10 className,11 compact,12}: {13 icon?: LucideIcon;14 title: string;15 description?: React.ReactNode;16 action?: React.ReactNode;17 className?: string;18 compact?: boolean;19}) {20 return (21 <div className={cn("flex flex-col items-center justify-center text-center rounded-lg border border-dashed border-border bg-bg-subtle/40", compact ? "px-6 py-10" : "px-6 py-16", className)}>22 {Icon ? (23 <div className="mb-4 flex size-10 items-center justify-center rounded-lg border border-border bg-bg shadow-xs">24 <Icon className="size-5 text-fg-muted" aria-hidden />25 </div>26 ) : null}27 <h3 className="text-[15px] font-semibold tracking-tight">{title}</h3>28 {description ? <div className="mt-1.5 max-w-sm text-[13px] text-fg-muted leading-relaxed">{description}</div> : null}29 {action ? <div className="mt-5 flex items-center gap-2">{action}</div> : null}30 </div>31 );32}33