fix(ui): align contextual documentation with headings
Verified with the coordinated workspace changes by devkit full run 2026-09-08T225814-186389-0000-3e3ed7cd (all seven phases passed). This shared UI pass does not mark the individual module reviews complete.
This commit is contained in:
@@ -140,7 +140,9 @@ DOCUMENTATION = (
|
|||||||
id="tasks.workspace-layout",
|
id="tasks.workspace-layout",
|
||||||
title="Tasks workspace actions",
|
title="Tasks workspace actions",
|
||||||
summary="Find collection-wide commands in their consistent workspace position.",
|
summary="Find collection-wide commands in their consistent workspace position.",
|
||||||
body="Reload and Create task use the persistent full-width workspace header at the upper right; Reload sits immediately before creation. Selecting a record, changing filters, or opening an editor does not move these collection-wide commands into the left pane. Search and status filters stay in the task list; completion, ownership, and other task-specific actions remain with the selected task. Existing permissions, disabled-state rules, and unsaved-change guards still apply. Administrators configure authority through the existing permission system; no new permission or automatic operation is introduced.",
|
body="Documentation books sit immediately beside the visible heading or contextual label for "
|
||||||
|
"Tasks, not among operational action buttons. Field help remains beside its label. "
|
||||||
|
"Reload and Create task use the persistent full-width workspace header at the upper right; Reload sits immediately before creation. Selecting a record, changing filters, or opening an editor does not move these collection-wide commands into the left pane. Search and status filters stay in the task list; completion, ownership, and other task-specific actions remain with the selected task. Existing permissions, disabled-state rules, and unsaved-change guards still apply. Administrators configure authority through the existing permission system; no new permission or automatic operation is introduced.",
|
||||||
layer="static",
|
layer="static",
|
||||||
documentation_types=("user", "admin"),
|
documentation_types=("user", "admin"),
|
||||||
audience=("user", "module_admin", "operator"),
|
audience=("user", "module_admin", "operator"),
|
||||||
@@ -148,7 +150,10 @@ DOCUMENTATION = (
|
|||||||
translations={"de": {
|
translations={"de": {
|
||||||
"title": "Aufgaben: Aktionen im Arbeitsbereich",
|
"title": "Aufgaben: Aktionen im Arbeitsbereich",
|
||||||
"summary": "Sammlungsweite Aktionen an ihrer einheitlichen Position im Arbeitsbereich finden.",
|
"summary": "Sammlungsweite Aktionen an ihrer einheitlichen Position im Arbeitsbereich finden.",
|
||||||
"body": "Neu laden und Aufgabe anlegen stehen oben rechts in der dauerhaft sichtbaren, arbeitsbereichsweiten Leiste; Neu laden steht unmittelbar vor dem Anlegen. Auswahl, Filterwechsel und Bearbeitung verschieben diese sammlungsweiten Aktionen nicht in den linken Bereich. Suche und Statusfilter bleiben in der Aufgabenliste; Abschluss, Zuständigkeit und weitere aufgabenspezifische Aktionen bleiben bei der ausgewählten Aufgabe. Bestehende Berechtigungen, Deaktivierungsregeln und der Schutz ungespeicherter Änderungen gelten weiterhin. Administratoren konfigurieren Rechte im bestehenden Berechtigungssystem; es entstehen weder neue Rechte noch automatische Vorgänge.",
|
"body": "Dokumentationsbücher stehen unmittelbar neben der sichtbaren Überschrift oder "
|
||||||
|
"Kontextbezeichnung für Aufgaben, nicht zwischen ausführbaren Aktionsschaltflächen. Feldhilfe "
|
||||||
|
"bleibt neben der Feldbezeichnung. "
|
||||||
|
"Neu laden und Aufgabe anlegen stehen oben rechts in der dauerhaft sichtbaren, arbeitsbereichsweiten Leiste; Neu laden steht unmittelbar vor dem Anlegen. Auswahl, Filterwechsel und Bearbeitung verschieben diese sammlungsweiten Aktionen nicht in den linken Bereich. Suche und Statusfilter bleiben in der Aufgabenliste; Abschluss, Zuständigkeit und weitere aufgabenspezifische Aktionen bleiben bei der ausgewählten Aufgabe. Bestehende Berechtigungen, Deaktivierungsregeln und der Schutz ungespeicherter Änderungen gelten weiterhin. Administratoren konfigurieren Rechte im bestehenden Berechtigungssystem; es entstehen weder neue Rechte noch automatische Vorgänge.",
|
||||||
}},
|
}},
|
||||||
),
|
),
|
||||||
DocumentationTopic(
|
DocumentationTopic(
|
||||||
|
|||||||
@@ -16,7 +16,12 @@ class TasksQuickAccessContractTests(unittest.TestCase):
|
|||||||
topics = get_manifest().documentation
|
topics = get_manifest().documentation
|
||||||
kinds = {topic.metadata.get("kind", "system") for topic in topics}
|
kinds = {topic.metadata.get("kind", "system") for topic in topics}
|
||||||
|
|
||||||
self.assertEqual(3, len(topics))
|
self.assertEqual({
|
||||||
|
"tasks.workspace-layout",
|
||||||
|
"tasks.data-subject-requests",
|
||||||
|
"tasks.quick-access-and-product-area",
|
||||||
|
"tasks.work-inbox",
|
||||||
|
}, {topic.id for topic in topics})
|
||||||
self.assertTrue({"workflow", "reference"}.issubset(kinds))
|
self.assertTrue({"workflow", "reference"}.issubset(kinds))
|
||||||
for topic in topics:
|
for topic in topics:
|
||||||
translation = topic.translations["de"]
|
translation = topic.translations["de"]
|
||||||
|
|||||||
@@ -203,8 +203,8 @@ export default function TasksPage({ settings, auth }: { settings: ApiSettings; a
|
|||||||
variant="detail"
|
variant="detail"
|
||||||
className="tasks-topbar"
|
className="tasks-topbar"
|
||||||
data-help-context-id="tasks.page.detail"
|
data-help-context-id="tasks.page.detail"
|
||||||
contextActions={<span className="tasks-detail-title"><ListChecks size={18} /><strong>{selected?.title ?? "i18n:govoplan-tasks.work_details"}</strong></span>}
|
title={<span className="tasks-detail-title"><ListChecks size={18} aria-hidden="true" /><strong>{selected?.title ?? "i18n:govoplan-tasks.work_details"}</strong></span>}
|
||||||
helpAction={<DocumentationHelpLink reference={DOCUMENTATION} />}
|
titleHelp={<DocumentationHelpLink reference={DOCUMENTATION} />}
|
||||||
primaryActions={selected?.provider_id === "tasks.explicit" && canWrite ? (
|
primaryActions={selected?.provider_id === "tasks.explicit" && canWrite ? (
|
||||||
<TaskPrimaryActions item={selected} busy={busy} onAction={(action) => action === "defer" ? setDeferOpen(true) : void runAction(action)} />
|
<TaskPrimaryActions item={selected} busy={busy} onAction={(action) => action === "defer" ? setDeferOpen(true) : void runAction(action)} />
|
||||||
) : undefined}
|
) : undefined}
|
||||||
|
|||||||
Reference in New Issue
Block a user