- Remove tw-animate-css import + dead src/components/ui shadcn tree - Convert 7 orphaned components (moderation, analysis, guild-selector, voice/activity-timeline, shared/empty+error) to new primitives - Add missing moderation/view.tsx; analysis uses SearchPanel directly - globals.css now uses new signal-driven ops-console tokens - tsc --noEmit clean, next build green (11 routes), local smoke 200
25 lines
709 B
TypeScript
25 lines
709 B
TypeScript
import { AlertCircle, RefreshCw } from "lucide-react";
|
|
import { Button } from "@/components/primitives/button";
|
|
|
|
interface ErrorStateProps {
|
|
message: string;
|
|
onRetry?: () => void;
|
|
}
|
|
|
|
export function ErrorState({ message, onRetry }: ErrorStateProps) {
|
|
return (
|
|
<div className="flex flex-col items-center justify-center py-20 text-center">
|
|
<AlertCircle className="size-10 text-[var(--color-vermilion)] mb-3" />
|
|
<p className="text-sm text-[var(--color-ink-soft)] mb-4 max-w-sm">
|
|
{message}
|
|
</p>
|
|
{onRetry && (
|
|
<Button variant="outline" onClick={onRetry}>
|
|
<RefreshCw className="size-4 mr-2" />
|
|
Retry
|
|
</Button>
|
|
)}
|
|
</div>
|
|
);
|
|
}
|