Bereichs-Karten aus dem Dashboard entfernen
ci / quality (push) Failing after 34s
ci / build (push) Has been skipped
deploy / deploy (push) Successful in 45s

Die Bereiche (Entwicklung/Vertrieb/Marketing/Allgemein) raus aus dem
Dashboard. AmpelDot + Ampel-Typ wurden dadurch ungenutzt, ebenfalls
entfernt.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
dejanandClaude Opus 4.8 committed 2026-06-06 20:32:31 +02:00
1 parent 1b186d8be6
commit 77cb36cd72
1 file changed
-38
-38
View File
@@ -9,8 +9,6 @@ import { MODUS_META, type ProjectModus } from '../lib/project-meta';
import { AlertTriangle } from 'lucide-react';
import { clsx } from 'clsx';
type Ampel = 'green' | 'amber' | 'red' | 'grey';
export function DashboardRoute() {
const q = trpc.dashboard.overview.useQuery();
const today = trpc.dayEntry.today.useQuery();
@@ -48,32 +46,6 @@ export function DashboardRoute() {
)}
</header>
<section aria-labelledby="bereiche-heading">
<h2 id="bereiche-heading" className="sr-only">
Bereiche
</h2>
<div className="grid grid-cols-1 gap-4 md:grid-cols-3">
{q.data.areas.map((a) => (
<Link key={a.id} to={`/bereich/${a.slug}`} className="contents">
<Card.Root className="cursor-pointer hover:shadow-[var(--shadow-md)] transition-shadow">
<Card.Body className="flex flex-col gap-2">
<div className="flex items-center justify-between">
<h3 className="text-lg font-semibold">{a.name}</h3>
<AmpelDot ampel={a.ampel as Ampel} />
</div>
<div className="flex gap-3 text-xs text-[var(--color-ink-muted)]">
<span>{a.counts.green} grün</span>
<span>{a.counts.amber} gelb</span>
<span>{a.counts.red} rot</span>
{a.counts.grey > 0 && <span>{a.counts.grey} ohne Status</span>}
</div>
</Card.Body>
</Card.Root>
</Link>
))}
</div>
</section>
{q.data.showstoppers.length > 0 && (
<section>
<Card.Root className="border-[var(--color-ampel-red-fg)]">
@@ -283,16 +255,6 @@ export function DashboardRoute() {
);
}
function AmpelDot({ ampel }: { ampel: Ampel }) {
const colorClass = {
green: 'bg-[var(--color-ampel-green-fg)]',
amber: 'bg-[var(--color-ampel-amber-fg)]',
red: 'bg-[var(--color-ampel-red-fg)]',
grey: 'bg-[var(--color-ink-faint)]',
}[ampel];
return <span className={clsx('inline-block h-3 w-3 rounded-full', colorClass)} aria-hidden />;
}
function AmpelBadge({ ampel }: { ampel: 'green' | 'amber' | 'red' }) {
const cls = {
green: 'bg-[var(--color-ampel-green-bg)] text-[var(--color-ampel-green-fg)]',