Files
EvoBGP/apps/web/src/components/blocks/empty-state-11/components/empty-state.tsx
T
Denozordec a3f3ffd672
CI / changes (push) Successful in 10s
CI / commitlint (push) Has been skipped
CI / openapi (push) Has been skipped
CI / web (push) Successful in 52s
CI / go (push) Has been skipped
CI / bird2 (push) Has been skipped
CI / release (push) Successful in 4m7s
refactor: integrate PanelCard and enhance dashboard components for improved layout
Refactored multiple dashboard components to utilize the new PanelCard for better organization and presentation. Updated the DashboardFramePanel, DashboardQuickLinks, and DashboardOperationsBreakdown components to streamline layouts and enhance user experience. Removed deprecated components and improved loading states in various sections, ensuring a cohesive interface throughout the application.
2026-07-09 21:39:20 +07:00

58 lines
2.0 KiB
TypeScript

import { IconStack } from "@/components/reui/icon-stack"
import { Button } from "@evobgp/ui/components/button"
import { Card, CardContent } from "@evobgp/ui/components/card"
import {
Empty,
EmptyDescription,
EmptyHeader,
EmptyMedia,
EmptyTitle,
} from "@evobgp/ui/components/empty"
import { RouteIcon } from "lucide-react"
export function EmptyState() {
return (
<div className="flex w-full max-w-4xl flex-col gap-4">
{/* Heading */}
<div className="flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between">
<div className="flex flex-col gap-1">
<h2 className="text-xl font-semibold tracking-tight">
Routing Signals
</h2>
<p className="text-muted-foreground text-sm">
Shape incoming work before it reaches the roadmap.
</p>
</div>
<Button type="button" size="sm" className="w-full sm:w-auto">
Add signal
</Button>
</div>
{/* Card */}
<Card className="bg-muted min-h-[330px] p-0 shadow-none">
<CardContent className="flex min-h-[330px] items-center justify-center p-6 sm:p-10">
<Empty className="max-w-md gap-5 bg-transparent p-0">
<EmptyHeader className="items-center gap-5 text-center">
<EmptyMedia className="mb-0">
<IconStack aria-hidden="true">
<RouteIcon strokeWidth="1.9" aria-hidden="true" />
</IconStack>
</EmptyMedia>
<div className="flex flex-col items-center gap-2">
<EmptyTitle className="text-base font-semibold tracking-tight">
Create signals to route new work
</EmptyTitle>
<EmptyDescription className="max-w-sm text-sm/relaxed">
Define signals so every intake item starts with context.
</EmptyDescription>
</div>
</EmptyHeader>
</Empty>
</CardContent>
</Card>
</div>
)
}