[SSP] Zustellpunktverwaltung als React-SPA umsetzen [L]
Release-Version: SSP 1.5.0
Warum?
Für die Entwicklung einiger geplanter SSP-Features hat sich die Java Thymeleaf-Templating-Engine als suboptimal erwiesen. Gerade dynamische Funktionalität, die Javascript benötigt, ist schwerer zu entwickeln und zu maintainen.
Daher soll die Zustellpunktverwaltung möglichst weit ins Frontend gezogen werden. Hierzu soll das fertige Destination-Objekt aus der Submission API bereits via Javascript im Browser in einer SPA erzeugt werden. Das vereinfacht die Vorab-Fehlerprüfung im Browser und zukünftige Anpassungen (z.B. #177 (closed)) und dient als Vorbereitung auf #345 (closed).
Relevante Links und Bemerkungen
Falls sinnvoll und insgesamt zeitsparend kann dieses Issue gemeinsam mit Issue #177 (closed) bearbeitet werden.
Zu klären
-
Kann/sollte in diesem Kontext bereits die FJD-Components-Library genutzt werden?
Out-of-scope
- OAuth-Umstellung
- Client-Verwaltung
- Authentifizierung gegenüber dem Backend via Session-Cookie -> #442 (closed)
- Prüfungen, die im SSP-Backend durchgeführt werden -> #442 (closed)
Akzeptanzkriterien
-
Es existiert ein neues Repo mit SPA. -
Es gibt CI, die die SPA baut.(build schlägt wegen nexus.fjd.de Auth-Abhängigkeit fehl) -
Im SSP-Frontend werden Beschränkungen für einzelne Felder (Textlänge, Format von Mail-Adressen etc.) via <input>
-Tag/JS gemäß JSON-Schema aus der Submission API geprüft. -
Bei der Anlage und Verwaltung von Zustellpunkten werden bei auftretenden Fehlern aussagekräftige Felermeldungen mit (verlinktem) Lösungsansatz angezeigt. Dies beinhaltelt mindestens die folgenden Punkte (Hinweis: Eine Prüfung der muss nicht zwingend direkt im SSP erfolgen, sondern könnte, wenn sinnvoll, ggf. auch anhand der Rückmeldung der Submission API erfolgen): -
Pflichtfelder sind nicht ausgefüllt (Hinweis: required
-Tag im<input>
-Element ausreichend) -
Ungültige Mail-Adresse (-> <input type="email">
) -
Keine Metadatenschema-Version ausgewählt -
Verschlüsselungs- und Signaturschlüssel entsprechen nicht dem JWK-Format -
URN der Verwaltungsleistung ungültig (-> <input pattern="...">
in Kombination mit Erklärtext, wie URN aufgebaut ist) -
Region (ARS) ungültig (-> <input pattern="...">
in Kombination mit Erklärtext, wie ARS aufgebaut ist) -
URI des Fachdatenschema ungültig oder falsches Format (-> <input pattern="...">
in Kombination mit Erklärtext, wie URI aufgebaut ist -> Link zur Doku!)
-
-
Das Destination-Objekt wird beim "speichern" via console.log
ausgegeben. -
Neu: Im Self-Service-Portal sollen aufgrund von Datenschutz-Aspekten kein externes CSS, JS und keine externen Fonts eingebunden werden.
Durchführungsplan (vom Entwickler bei Storyplanung auszufüllen)
-
Lizensierung der FJD-Componentent-Library klären -
NextJs basiertes SPA Repo aufziehen -
Technischer Durchstich zur Verwendung der neu generierten Komponenten in altem Thymeleaf Tech Stack -
CI bereitstellen -
Definition of Done wurde geprüft
Edited by Michael Miera