34 lines
2.0 KiB
Markdown
34 lines
2.0 KiB
Markdown
# Journal-Eintrag: Architektur-Cleanup Veranstalter-Feature
|
|
|
|
**Datum:** 20. April 2026
|
|
**Agent:** 🏗️ [Lead Architect] & 👷 [Backend Developer]
|
|
|
|
## Zielsetzung
|
|
Vollständige Umsetzung der Plug-and-Play Architektur (ADR-0024) für das `veranstalter-feature` sowie die Konsolidierung der Screens in der Desktop-Shell.
|
|
|
|
## Durchgeführte Änderungen
|
|
|
|
### 1. ViewModel-Hoisting (Entkopplung von Koin)
|
|
- **VeranstalterAuswahlScreen**: Der Screen erhält sein ViewModel nun als Parameter. Die direkte Injektion via `koinInject()` wurde entfernt. Dies erhöht die Testbarkeit und Unabhängigkeit der Komponente.
|
|
- **VeranstalterDetailScreen**: Ebenfalls auf ViewModel-Hoisting umgestellt.
|
|
|
|
### 2. Einführung des VeranstalterDetailViewModel
|
|
- Ein neues `VeranstalterDetailViewModel` wurde erstellt, um die Logik und den Zustand der Detailansicht zu verwalten.
|
|
- Die Abhängigkeit vom veralteten `FakeVeranstaltungStore` wurde durch die Integration in das ViewModel-UDF-Pattern (State/Intent) ersetzt.
|
|
- Registrierung der neuen ViewModels (`VeranstalterViewModel`, `VeranstalterDetailViewModel`) im `VeranstalterModule` via Koin `factory`.
|
|
|
|
### 3. Shell-Konsolidierung (Altlasten-Entfernung)
|
|
- Die manuell in der Desktop-Shell (`VeranstalterScreens.kt`) gepflegten Screens wurden durch saubere Delegates ersetzt, welche die modernisierten Komponenten aus dem Feature-Modul einbinden.
|
|
- Der direkte Zugriff auf den alten `Store` in der Shell wurde eliminiert.
|
|
|
|
### 4. Preview-Aktualisierung
|
|
- Die `ScreenPreviews.kt` in der Desktop-Shell wurden an die neuen Konstruktoren angepasst.
|
|
- Mock-Repositories wurden implementiert, um funktionsfähige Previews ohne aktiven Koin-Container zu ermöglichen.
|
|
|
|
## Verifizierung
|
|
- Erfolgreicher Gradle-Build: `:frontend:shells:meldestelle-desktop:compileKotlinJvm`.
|
|
- Manuelle Code-Prüfung auf Einhaltung der ADR-0024 Kriterien.
|
|
|
|
## Status
|
|
🟢 **Abgeschlossen.** Das Veranstalter-Management ist nun vollständig architektonisch bereinigt und folgt dem Plug-and-Play Design.
|