Gedankenstriche durch Bindestriche ersetzt
Prüfung / Lint, Typen, Tests (push) Canceled after 0s
Prüfung / Images bauen (pdf) (push) Canceled after 0s
Prüfung / Images bauen (web) (push) Canceled after 0s
Prüfung / Images bauen (worker) (push) Canceled after 0s
Images / bauen (pdf, docker/pdf.Dockerfile) (push) Canceled after 0s
Images / bauen (web, docker/web.Dockerfile) (push) Canceled after 0s
Images / bauen (worker, docker/worker.Dockerfile) (push) Canceled after 0s

375 Vorkommen in 210 Dateien. Betrifft Kommentare, Oberflaechentexte und die
README; an keiner Stelle Bedeutung, nur Zeichensetzung.
This commit is contained in:
Harlekin
2026-09-04 08:54:52 +02:00
parent 38be773636
commit e0b03ea336
210 changed files with 368 additions and 368 deletions
@@ -90,7 +90,7 @@ export function CaseActions({
</button>
</div>
{/* Welche Zustände von hier aus erreichbar sind, ergibt sich aus dem
Lebenszyklus — aus einem Entwurf führt nur „Offen" heraus. Ohne
Lebenszyklus - aus einem Entwurf führt nur „Offen" heraus. Ohne
diesen Satz sieht die kurze Auswahl aus wie ein Fehler. */}
<p className="mt-1.5 max-w-sm text-2xs text-text-dim">
{caseText.statusHints[nextStatus] ?? caseText.statusChangeHint}
@@ -113,7 +113,7 @@ export function Participants({
))}
</PanelSelect>
<PanelSelect value={target} onChange={setTarget} label={participantText.person}>
<option value="">—</option>
<option value="">-</option>
<optgroup label={participantText.pickUser}>
{members.map((member) => (
<option key={member.id} value={`user:${member.id}`}>
@@ -7,7 +7,7 @@ import { toggleWatchAction } from '../actions'
/**
* Akte beobachten.
*
* Sofortiges Umschalten, der Server bestätigt nur — misslingt es, springt der
* Sofortiges Umschalten, der Server bestätigt nur - misslingt es, springt der
* Zustand zurück. Beobachten ist umkehrbar und harmlos, dafür braucht es
* keinen Wartezustand. Siehe docs/09-performance-und-ux.md.
*/
@@ -2,7 +2,7 @@ import { Skeleton, SkeletonLine } from '@/components/Skeleton'
/**
* Skelett statt Spinner: die Struktur steht sofort, die Daten fallen hinein.
* Ohne diese Grenze wartet die Navigation stumm, bis der Server fertig ist —
* Ohne diese Grenze wartet die Navigation stumm, bis der Server fertig ist -
* man klickt und es passiert scheinbar nichts. Siehe docs/09-performance-und-ux.md.
*/
export default function Loading() {
@@ -15,7 +15,7 @@ export const dynamic = 'force-dynamic'
*
* Für die Abteilungsleitung ist das die Ansicht, mit der sie im Zweifel prüft,
* ob an einer Akte nachträglich gedreht wurde. Sichtbar für alle, die die Akte
* lesen dürfen — nicht nur für die Leitung. Das ist der ganze Sinn der Sache.
* lesen dürfen - nicht nur für die Leitung. Das ist der ganze Sinn der Sache.
*/
export default async function ChangesPage({
params,
@@ -2,7 +2,7 @@ import { Skeleton, SkeletonLine } from '@/components/Skeleton'
/**
* Skelett statt Spinner: die Struktur steht sofort, die Daten fallen hinein.
* Ohne diese Grenze wartet die Navigation stumm, bis der Server fertig ist —
* Ohne diese Grenze wartet die Navigation stumm, bis der Server fertig ist -
* man klickt und es passiert scheinbar nichts. Siehe docs/09-performance-und-ux.md.
*/
export default function Loading() {
@@ -2,7 +2,7 @@ import { Skeleton, SkeletonLine } from '@/components/Skeleton'
/**
* Skelett statt Spinner: die Struktur steht sofort, die Daten fallen hinein.
* Ohne diese Grenze wartet die Navigation stumm, bis der Server fertig ist —
* Ohne diese Grenze wartet die Navigation stumm, bis der Server fertig ist -
* man klickt und es passiert scheinbar nichts. Siehe docs/09-performance-und-ux.md.
*/
export default function Loading() {
@@ -2,7 +2,7 @@ import { Skeleton, SkeletonLine } from '@/components/Skeleton'
/**
* Skelett statt Spinner: die Struktur steht sofort, die Daten fallen hinein.
* Ohne diese Grenze wartet die Navigation stumm, bis der Server fertig ist —
* Ohne diese Grenze wartet die Navigation stumm, bis der Server fertig ist -
* man klickt und es passiert scheinbar nichts. Siehe docs/09-performance-und-ux.md.
*/
export default function Loading() {
+2 -2
View File
@@ -20,12 +20,12 @@ export const dynamic = 'force-dynamic'
* Die Akte ist in Reiter geteilt, und zwar in **eigene Seiten**, nicht in
* umgeschaltete Blöcke: nur so wird der Code getrennt geladen. Die Fallakte
* war die dichteste Seite der Anwendung und hatte das Bündelbudget aus
* docs/09-performance-und-ux.md aufgebraucht — Beteiligte, Verknüpfungen,
* docs/09-performance-und-ux.md aufgebraucht - Beteiligte, Verknüpfungen,
* Dokumente und Anhänge lagen mit auf der Seite, obwohl man sie selten
* gleichzeitig braucht.
*
* Fachlich passt der Schnitt ohnehin: die drei Ebenen aus
* docs/05-akten-und-vorlagen.md — Kopfdaten, Abschnitte, Verlauf — bleiben
* docs/05-akten-und-vorlagen.md - Kopfdaten, Abschnitte, Verlauf - bleiben
* zusammen, das Umfeld der Akte bekommt seinen eigenen Platz.
*/
export default async function CaseLayout({
+1 -1
View File
@@ -185,7 +185,7 @@ async function ChatBlock({
/**
* Der Reiter „Akte": die drei Ebenen aus docs/05-akten-und-vorlagen.md, die
* zusammengehören — Abschnitte als Sachstand, Verlauf als Chronologie, dazu
* zusammengehören - Abschnitte als Sachstand, Verlauf als Chronologie, dazu
* der formlose Aktenchat. Kopfdaten und Reiterleiste stehen im Layout.
*/
export default async function CasePage({
@@ -51,7 +51,7 @@ export async function saveSectionAction(
/**
* Mehrere Abschnitte in einem Zug.
*
* Jedes Feld wird einzeln geschrieben und einzeln beantwortet — Abschnitte
* Jedes Feld wird einzeln geschrieben und einzeln beantwortet - Abschnitte
* sind einzeln versioniert, und ein zwischenzeitlich geändertes Feld soll die
* übrigen nicht aufhalten. Wäre das eine Transaktion, blockierte ein einziger
* fremder Eingriff das ganze Blatt.