import { CalendarRange, CheckSquare, FolderGit2, NotebookPen, Plus } from "lucide-react"; import { ActivityDayGroups } from "@/components/ActivityRow"; import type { Kennzahlen } from "@/lib/review"; import type { ReviewDay } from "@/types"; /** * Der Wochenrueckblick. * * Bewusst eine Server-Komponente: es gibt nichts zu bedienen, alles steht * beim Rendern fest. Das spart dem Browser den ganzen Verlauf als JavaScript. * * Die Tage kommen fertig gebuendelt und in der richtigen Reihenfolge – die * Zuordnung "welcher Kalendertag" haengt an der Zeitzone und gehoert * deshalb auf den Server. */ export function WeeklyReview({ tage, kennzahlen, istDieseWoche, }: { tage: ReviewDay[]; /** Fertig gezaehlt vom Server – die Anzeige rechnet nichts nach. */ kennzahlen: Kennzahlen; istDieseWoche: boolean; }) { const { gesamt, projekte, erledigt, neueAufgaben, notizen } = kennzahlen; if (gesamt === 0) { return (

{istDieseWoche ? "Diese Woche war es still" : "In dieser Woche ist nichts passiert"}

{istDieseWoche ? "Sobald du Aufgaben abhakst, Notizen schreibst oder etwas gepusht wird, steht es hier." : "Vielleicht lohnt ein Blick auf eine frühere Woche."}

); } return (
{/* Kennzahlen */}
{notizen > 0 ? (

Dazu {notizen} {notizen === 1 ? "neue Notiz" : "neue Notizen"}.

) : null} {/* Verlauf nach Tagen – dieselbe Darstellung wie in der Zeitleiste. */}
); } function Kennzahl({ label, wert, icon: Icon, color, }: { label: string; wert: number; icon: typeof CalendarRange; color: string; }) { return (
); }