feat(frontend): PageHeader mit Icon auf allen 13 "Neu"-Formularseiten

Ersetzt die bisherige schlichte CardTitle-Überschrift durch die
gemeinsame PageHeader-Komponente (Icon-Badge im passenden Gradient,
Titel, kurze Beschreibung) auf allen Formularseiten zum Anlegen neuer
Datensätze (Bienenstände, Völker, Königinnen, Aufgaben, Produkte,
Inventar, Schleuderungen, Abfüllungen, Durchsichten, Varroamessungen,
Behandlungen, Fütterungen, Ernten).

Konsistent zum bereits überarbeiteten Look der Listen- und Detailseiten;
die Beschreibungszeile gibt zusätzlich beim Öffnen sofort Kontext, was
die Seite tut – hilfreich für Nutzer, die schnell zwischen vielen
Formularen wechseln.
This commit is contained in:
Nick Szaunig committed 2026-08-24 00:21:41 +02:00
1 parent ebfbd2ef6d
commit e889edd6c5
13 files changed
+123 -80

No files matched your search

@@ -5,6 +5,7 @@ import { useRouter } from "next/navigation";
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
import { createColony } from "@/lib/colonies/api";
import { ColonyType } from "@/lib/colonies/types";
import { Layers } from "lucide-react";
import { fetchApiaries } from "@/lib/apiaries/api";
import { Button } from "@/components/ui/button";
import { Input } from "@/components/ui/input";
@@ -16,12 +17,8 @@ import {
SelectTrigger,
SelectValue,
} from "@/components/ui/select";
import {
Card,
CardContent,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import { PageHeader } from "@/components/page-header";
import { Card, CardContent } from "@/components/ui/card";
const COLONY_TYPES: ColonyType[] = [
"PRODUCTION_COLONY",
@@ -64,11 +61,13 @@ export default function NewColonyPage() {
}
return (
<main className="p-4 sm:p-6">
<main className="flex flex-col gap-4 p-4 sm:p-6">
<PageHeader
icon={Layers}
title="Neues Volk"
description="Erfasse ein neues Volk an einem Bienenstand."
/>
<Card className="max-w-lg">
<CardHeader>
<CardTitle>Neues Volk</CardTitle>
</CardHeader>
<CardContent>
<form className="flex flex-col gap-4" onSubmit={handleSubmit}>
<div className="flex flex-col gap-2">