Define semantic page action layouts

This commit is contained in:
2026-08-19 13:33:51 +02:00
parent 5a2e99f496
commit c042244da8
18 changed files with 306 additions and 10 deletions
+15 -9
View File
@@ -1,7 +1,7 @@
import { useMemo, useState } from "react";
import { FileText, GitBranch, Inbox, Search, ShieldCheck } from "lucide-react";
import { useLocation } from "react-router";
import ActionToolbar, { ToolbarGroup } from "../src/components/ActionToolbar";
import ActionToolbar from "../src/components/ActionToolbar";
import Button from "../src/components/Button";
import Card from "../src/components/Card";
import ContentGrid, { FormGrid } from "../src/components/ContentGrid";
@@ -18,6 +18,7 @@ import FormSection from "../src/components/FormSection";
import MetricCard from "../src/components/MetricCard";
import MetricGrid from "../src/components/MetricGrid";
import PageLayout from "../src/components/PageLayout";
import PageActionBar from "../src/components/PageActionBar";
import SelectionList, { SelectionListItem, SelectionListItemContent } from "../src/components/SelectionList";
import StatePanel from "../src/components/StatePanel";
import WorkspaceFrame from "../src/components/WorkspaceFrame";
@@ -43,14 +44,19 @@ export default function ConformanceApp() {
>
<section className="conformance-section" aria-labelledby="actions-heading">
<h2 id="actions-heading">Aktionen, Filter und Status</h2>
<ActionToolbar surface="subtle" justify="between" aria-label="Vorgangsaktionen">
<ToolbarGroup>
<Button variant="primary">Änderungen speichern</Button>
<Button>Vorschau öffnen</Button>
<Button variant="ghost">Verwerfen</Button>
</ToolbarGroup>
<Button variant="danger" disabledReason="Nur die federführende Stelle darf diesen Vorgang endgültig löschen.">Löschen</Button>
</ActionToolbar>
<PageActionBar
variant="editor"
label="Bearbeitungsaktionen"
reloadAction={<Button variant="ghost">Neu laden</Button>}
contextActions={(
<>
<Button>Vorschau öffnen</Button>
<Button variant="danger" disabledReason="Nur die federführende Stelle darf diesen Vorgang endgültig löschen.">Löschen</Button>
</>
)}
discardAction={<Button variant="ghost">Verwerfen</Button>}
saveAction={<Button variant="primary">Änderungen speichern</Button>}
/>
<FilterBar surface="control" aria-label="Vorgangsliste filtern">
<label>Suche<input type="search" placeholder="Aktenzeichen oder verantwortliche Stelle" /></label>
<label>Status<select defaultValue="open"><option value="open">Offen</option><option value="done">Abgeschlossen</option></select></label>