import type { ReactNode } from 'react' import type { LucideIcon } from 'lucide-react' import { EmptyState } from '@/components/empty-state' import { Badge } from '@/components/reui/badge' import { Frame, FrameHeader, FramePanel, FrameTitle, } from '@/components/reui/frame' import { IconTile } from '@/components/reui/icon-tile' import { cn } from '@cfdm/ui/lib/utils' /** * Sibling Frame columns for dashboard attention queue. * Preview: https://reui.io/preview/base/dashboard-1 · https://reui.io/preview/base/stats-12 * Docs: https://reui.io/docs/components/base/frame · https://reui.io/docs/components/base/icon-tile */ export interface AttentionQueueColumn { id: string title: string icon: LucideIcon iconClassName?: string count: number countVariant?: 'destructive' | 'warning' | 'secondary' | 'destructive-light' | 'warning-light' emptyTitle: string emptyDescription: string emptyAction?: ReactNode children: ReactNode } interface AttentionQueueProps { columns: AttentionQueueColumn[] className?: string } const DEFAULT_ICON_CLASS = 'text-muted-foreground [&_svg]:text-current' export function AttentionQueue({ columns, className }: AttentionQueueProps) { return (