Files
MABEA/frontend/src/pages/kontrolle/StatusBadge.tsx
T
patrickandClaude Sonnet 5 f6084e2d5a
CI / backend-tests (push) Successful in 53s
CI / frontend-build (push) Successful in 34s
Refactor: große Dateien in kleinere Module/Komponenten aufgeteilt
Explizite Vorgabe: keine wachsenden Monolith-Dateien. AdminPage.tsx (349
Zeilen) in pages/admin/{Standort,Material,Objekt}Section.tsx aufgeteilt,
KontrollPage.tsx (277 Zeilen) in pages/kontrolle/{useKontrolle,
PositionCard,StatusBadge,types} aufgeteilt, services/kontrolle.py (332
Zeilen) in ein Package (lifecycle/erfassung/exceptions) aufgeteilt -
öffentliche API bleibt über __init__.py unverändert re-exportiert, kein
bestehender Import musste angepasst werden. Reines Refactoring, keine
Verhaltensänderung.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L85hmKbvX7Cqkq47KnQhFt
2026-09-04 00:45:18 +02:00

15 lines
639 B
TypeScript

import type { PositionStatus } from "./types";
const KONFIGURATION: Record<PositionStatus, { text: string; klasse: string }> = {
unbestaetigt: { text: "offen", klasse: "badge-neutral" },
wartet: { text: "nicht gespeichert", klasse: "badge-warning" },
wird_uebertragen: { text: "wird übertragen…", klasse: "badge-warning" },
gespeichert: { text: "gespeichert", klasse: "badge-success" },
fehler: { text: "Fehler", klasse: "badge-danger" },
};
export function StatusBadge({ status }: { status: PositionStatus }) {
const { text, klasse } = KONFIGURATION[status];
return <span className={`badge ${klasse}`}>{text}</span>;
}