Skip to content

Releases: wattnpapa/erfassungsbogen

2026.825.631

Choose a tag to compare

@github-actions github-actions released this 25 Aug 06:39
E2E-Szenario auf den neuen Handscanner-Hinweis ziehen

Der alte Bild-Hinweis ist im umgebauten Fehlerbildschirm aufgegangen;
geprüft wird jetzt die Handscanner-Überschrift samt Lebenszeichen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

2026.819.1839

Choose a tag to compare

@github-actions github-actions released this 19 Aug 18:48
NATO-Zeitstempel im PDF-Dateinamen

Zwei PDFs derselben Einheit überschrieben sich beim Herunterladen
gegenseitig, und dem Dateinamen war nicht anzusehen, welchen Stand er
trägt. Der Dateiname trägt jetzt die Meldezeit als DTG ohne
Zonenbuchstaben, zwischen Präfix und Einheitsnamen:

  eeb-102035aug26_Feuerwehr_Region_Hannover_Hannover_Trupp_...pdf

Das Sammel-PDF eines Einsatzes bekommt denselben Stempel. Die
Beispielbögen behalten ihren festen Dateinamen aus examples/.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

2026.819.1835

Choose a tag to compare

@github-actions github-actions released this 19 Aug 18:48
Oldenburg-XLSX: keine Gesamtspalte, breite Datumsspalten

Die Gesamtspalte AL wiederholte nur Fü + Ufü + He und fällt weg; das Blatt
endet jetzt auf AK. Die sechs Datumsspalten bekommen Breite 16.5, weil
"14.05.2026 08:30" in der Standardbreite als "########" erscheint — und genau
das landete beim Kopieren in der Zwischenablage. Die Breiten stehen dafür
nicht mehr als festes XML im Blatt, sondern je Spalte in der Spaltenliste.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

2026.817.1327

Choose a tag to compare

@github-actions github-actions released this 17 Aug 13:36
Landingpages tragen die Handschrift der App

Die Content-Seiten unter public/ waren fachlich präzise, aber visuell
in einer anderen Welt gebaut als die App. Sechs Durchgänge aus einer
Design-Kritik (29/40 Nielsen), alle generatorseitig und idempotent:

- Typografie: Schriftleiter auf die App-Werte (0.8125…1.75rem), acht
  Zwischengrade entfallen; Überschriften in --text statt in der
  Kennfarbe (Gewichts-Regel); Archivo lokal aus public/schrift/.
- Handlung: statt einem Knopf je Seite nun drei, dazu ein Abschnitt
  zur Datenhoheit; Trefferfläche aus --ziel-basis (43 → 44 px).
- Barrierefreiheit: 15 Rollbereiche mit role="region" und Label
  (Rollbereich-Regel); tote Bundesländer schraffiert statt vierter
  Grauton — der Unterschied trägt auch im Schwarzweißdruck.
- Struktur: 101 FAQ-Aufklapper mit Druckregel und unverändertem
  FAQPage-Schema; Sprungmenü in der Anleitung; Kurzliste statt
  Doppel-Tabelle unter der Karte; Fußzeile in vier Gruppen;
  Kopfnav mobil 116 → 45 px.
- Bild: figure.foto ohne festen 260-px-Beschnitt — die Fahrzeuge
  stehen wieder ganz im Bild; text-wrap: balance an der h1.

Nebenbei behoben: vier gegenläufige Schriftgrade in drei Generatoren
und zwei Generatoren, die fremde Blöcke zerstörend neu zusammenbauten
(content-laender hätte die Aufklapper-Hülle auf 12 Länderseiten
gelöscht). Alle acht Generatoren laufen jetzt in beliebiger
Reihenfolge; 1496 Tests grün.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

2026.817.740

Choose a tag to compare

@github-actions github-actions released this 17 Aug 07:49
Landesflagge auf jeder Katastrophenschutz-Länderseite

Wie das Organisationslogo auf den Trägerseiten steht jetzt oben rechts das
Landessymbol — bewusst die Flagge, nicht das Wappen: Wappen sind
Hoheitszeichen und für Private grundsätzlich genehmigungspflichtig
(Wappengesetze der Länder, § 124 OWiG), die Landesflagge darf dagegen
jedermann unverändert wiedergeben. Das trägt auch Niedersachsen,
Rheinland-Pfalz und das Saarland, deren Flaggen das Wappen enthalten.

figure.flagge setzt darum nur die Breite und lässt die Höhe automatisch —
das Seitenverhältnis einer Flagge darf nicht verändert werden. Der Rahmen
der figure-Grundregel bleibt, sonst franst Weiß (Sachsen, Thüringen,
Berlin) auf dem hellgrauen Seitengrund aus.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

2026.816.1854

Choose a tag to compare

@github-actions github-actions released this 16 Aug 19:02
Nav-Generator schreibt den Zweittext-Wert statt Rohgrau

content-nav.mts setzte .kopfnav-links a weiterhin auf #444, während
content-stil.mts denselben Wert anschließend auf --text-2 (#5c6478)
zog. Beide Generatoren haben sich damit bei jedem Lauf gegenseitig
überschrieben — je nach Reihenfolge stand mal der eine, mal der andere
Wert in den Seiten.

Jetzt erzeugt die Nav-Quelle direkt den Zielwert; ein zweiter Lauf
beider Skripte ändert nichts mehr.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

2026.816.1852

Choose a tag to compare

@github-actions github-actions released this 16 Aug 19:00
Anklickbare Deutschlandkarte auf den Katastrophenschutz-Seiten

Die zwölf Länderseiten waren bisher nur über eine Buttonliste, eine
Tabelle und die Kopfnavigation erreichbar — alles Textlisten. Wer wissen
will, ob das Nachbarland eine Vorlage hat, sucht darin nach einem Namen,
statt hinzuschauen. Die Karte macht denselben Bestand räumlich lesbar:
weiß und anklickbar sind die Länder mit eigener Seite, grau die vier
ohne, blau das Land der jeweiligen Seite.

Als Skript statt vierzehn Handkopien: scripts/content-laenderkarte.mts
arbeitet wie content-nav.mts über markierte Blöcke und erzeugt die
Geometrie bei jedem Lauf neu aus scripts/quellen/karte-bundeslaender.svg
(Wikimedia Commons, CC BY-SA 2.0 DE, in der Bildunterschrift genannt).
Die Quellkarte wiegt 105 kB und zeichnet jede Grenze auf Hundertstel
genau — bei 22 rem Anzeigebreite unsichtbar. Douglas-Peucker mit
Toleranz 1,2 und das Weglassen von Inseln unter 10 Flächeneinheiten
lassen davon 18 kB übrig; eine Länderseite wächst so von 19 kB auf
38 kB.

Für Tastatur und Screenreader ist das SVG ausgeblendet: Jede Seite nennt
dieselben Ziele daneben als Text — Liste, Tabelle oder Absatz —, und ein
zweiter, stummer Durchlauf durch zwölf Links wäre dort nur Ballast. Die
Anker tragen href und xlink:href, damit auch ältere WebViews auf
Einsatz-Tablets den Flächen folgen. Kein Laufzeit-JavaScript, die Karte
funktioniert offline und im Ausdruck.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

2026.816.1848

Choose a tag to compare

@github-actions github-actions released this 16 Aug 18:55
Landingpages: WebP, Trefferflächen, Sprunglink und Null-Radius

Setzt die verbleibenden Befunde des Seiten-Audits um.

Bildgewicht: Zu jedem Foto und Bildschirmfoto entsteht über
scripts/bilder-webp.mts eine WebP-Fassung, die als <source> vor das
bestehende <img> rückt; das JPEG/PNG bleibt als Fallback stehen.
4,71 MB → 3,06 MB (−35 %). Mehr ist nicht drin: Die Commons-Fotos sind
bereits gut komprimiert und mit höchstens 960 px nicht überdimensioniert
— verkleinern hieße Retina-Verlust.

Trefferflächen: Die Nav-Links waren 19,7 px hoch und verfehlten die
24 px aus WCAG 2.5.8. Die Ausnahme für Links im Fließtext greift bei
einer Linkreihe nicht. Mit senkrechtem Polster jetzt 28,6 px, die
Untermenü-Einträge 30,9 px.

Sprunglink: Ohne ihn tabbt man auf jeder Seite durch Logo und acht
Nav-Einträge, bevor der Text beginnt (WCAG 2.4.1). <main> bekommt dafür
id="inhalt".

Ausrichtung: Der Kopf war 60 rem breit über einer 44 rem breiten
Textspalte — zwei linke Kanten auf einer durchgehend linksbündigen
Seite. Jetzt beide 44 rem; die sieben Hauptlinks passen weiterhin in
eine Zeile.

Null-Radius-Regel: scripts/content-stil.mts zieht die in DESIGN.md
geregelten Werte nach, die als Rohwerte in den Seiten-Stylesheets
lagen. 36 Radien auf 0 (Knopf und Untermenüs), 101 Rohgrauwerte (#555,
#444) auf --text-2. Der Schatten am Untermenü bleibt — die
Flach-im-Stand-Regel lässt ihn für echte Overlays zu —, trägt aber nun
den dokumentierten Dropdown-Wert.

Bewusst unverändert: die Systemschrift. Archivo stünde in DESIGN.md,
kostet auf einer Landingpage aber einen blockierenden Font-Download.
Ebenso die mobile Navigation: Einklappen bräuchte JavaScript, und diese
Seiten sollen ohne Laufzeit-JS funktionieren.

Gemessen im Browser: keine Kontrastfehler, kein Radius ungleich 0, kein
Überlauf bei 375 px, Sprunglink per Tabulator geprüft.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

2026.816.1842

Choose a tag to compare

@github-actions github-actions released this 16 Aug 18:49
Typprüfung der Content-Seiten-Tests wieder grün

Beide Stellen greifen auf Regex-Gruppen zu, die unter
noUncheckedIndexedAccess als `string | undefined` gelten.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

2026.816.1830

Choose a tag to compare

@github-actions github-actions released this 16 Aug 18:38
Erklärenden Startseitentext auf den Browser-Erststart beschränken

Der Text unter dem Arbeitsbereich wendet sich an Erstbesucher und an
Suchmaschinen. In der installierten Fassung ist die Frage „was ist das
hier?" beantwortet, und sobald Entwurf, Vorlagen oder Einsätze auf dem
Gerät liegen, ist die Startseite Arbeitsfläche statt Prospekt.

Neue Weiche imWebBrowser() (Capacitor-Brücke bzw. file://) entscheidet
zusammen mit dem Erststart, ob React den Block zeichnet; eine Frühweiche
in index.html blendet ihn in den App-Fassungen schon vor dem Mount aus,
damit er beim Start nicht kurz aufblitzt. Im ausgelieferten HTML steht
er unverändert — für Crawler ändert sich nichts.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>