- Breadcrumb component: reusable nav with items array (label+href)
- DeadlineTrafficLights: buttons → Links to /fristen?status={filter}
- CaseOverviewGrid: static metrics → clickable Links to /cases?status={filter}
- UpcomingTimeline: items → clickable Links to /fristen/{id} or /termine/{id}
with case number links and hover chevron
- QuickActions: swap CalDAV Sync for "Neuer Termin" → /termine/neu,
fix "Frist eintragen" → /fristen/neu
- AISummaryCard: add RefreshCw button with spinning animation
- RecentActivityList: new component showing recent case events
- DeadlineList: accept initialStatus prop, add this_week/ok filters
- fristen/page.tsx: read searchParams.status for initial filter
- Add breadcrumbs to dashboard, fristen, cases, termine pages
- Add RecentActivity type, update DashboardData type
54 lines
1.3 KiB
TypeScript
54 lines
1.3 KiB
TypeScript
"use client";
|
|
|
|
import Link from "next/link";
|
|
import { FolderPlus, Clock, Sparkles, CalendarPlus } from "lucide-react";
|
|
|
|
const actions = [
|
|
{
|
|
label: "Neue Akte",
|
|
href: "/cases/new",
|
|
icon: FolderPlus,
|
|
color: "text-blue-600 bg-blue-50 hover:bg-blue-100",
|
|
},
|
|
{
|
|
label: "Frist eintragen",
|
|
href: "/fristen/neu",
|
|
icon: Clock,
|
|
color: "text-amber-600 bg-amber-50 hover:bg-amber-100",
|
|
},
|
|
{
|
|
label: "Neuer Termin",
|
|
href: "/termine/neu",
|
|
icon: CalendarPlus,
|
|
color: "text-emerald-600 bg-emerald-50 hover:bg-emerald-100",
|
|
},
|
|
{
|
|
label: "AI Analyse",
|
|
href: "/ai/extract",
|
|
icon: Sparkles,
|
|
color: "text-violet-600 bg-violet-50 hover:bg-violet-100",
|
|
},
|
|
];
|
|
|
|
export function QuickActions() {
|
|
return (
|
|
<div className="rounded-xl border border-neutral-200 bg-white p-5">
|
|
<h2 className="text-sm font-semibold text-neutral-900">
|
|
Schnellzugriff
|
|
</h2>
|
|
<div className="mt-3 grid grid-cols-2 gap-2">
|
|
{actions.map((action) => (
|
|
<Link
|
|
key={action.label}
|
|
href={action.href}
|
|
className={`flex items-center gap-2 rounded-lg px-3 py-2.5 text-sm font-medium transition-colors ${action.color}`}
|
|
>
|
|
<action.icon className="h-4 w-4" />
|
|
{action.label}
|
|
</Link>
|
|
))}
|
|
</div>
|
|
</div>
|
|
);
|
|
}
|