chore: integriere Turnier-Wizard und ZNS-Importer in Veranstaltungsscreen, implementiere Profil-Onboarding und aktualisiere Modulabhängigkeiten

Signed-off-by: StefanMoCoAt <stefan.mo.co@gmail.com>
This commit is contained in:
2026-04-21 10:42:43 +02:00
parent 01bf440f21
commit 1a295c18c8
12 changed files with 508 additions and 96 deletions
@@ -27,11 +27,14 @@ import at.mocode.frontend.features.pferde.presentation.PferdeScreen
import at.mocode.frontend.features.pferde.presentation.PferdeViewModel
import at.mocode.frontend.features.ping.presentation.PingScreen
import at.mocode.frontend.features.ping.presentation.PingViewModel
import at.mocode.frontend.features.profile.presentation.ProfileOnboardingWizard
import at.mocode.frontend.features.profile.presentation.ProfileScreen
import at.mocode.frontend.features.profile.presentation.ProfileViewModel
import at.mocode.frontend.features.reiter.presentation.ReiterScreen
import at.mocode.frontend.features.reiter.presentation.ReiterViewModel
import at.mocode.frontend.features.turnier.presentation.TurnierDetailScreen
import at.mocode.frontend.features.turnier.presentation.TurnierWizard
import at.mocode.frontend.features.turnier.presentation.TurnierWizardViewModel
import at.mocode.frontend.features.veranstalter.presentation.VeranstaltungKonfigScreen
import at.mocode.frontend.features.verein.presentation.VereinScreen
import at.mocode.frontend.features.verein.presentation.VereinViewModel
@@ -41,7 +44,6 @@ import at.mocode.frontend.shell.desktop.screens.management.VeranstalterDetail
import at.mocode.frontend.shell.desktop.screens.management.VeranstalterVerwaltungScreen
import at.mocode.frontend.shell.desktop.screens.nennung.NennungsEingangScreen
import at.mocode.frontend.shell.desktop.screens.veranstaltung.details.VeranstaltungProfilScreen
import at.mocode.frontend.shell.desktop.screens.veranstaltung.wizards.TurnierWizard
import at.mocode.frontend.shell.desktop.screens.veranstaltung.wizards.VeranstalterAnlegenWizard
import at.mocode.veranstaltung.feature.presentation.AdminUebersichtScreen
import at.mocode.veranstaltung.feature.presentation.VeranstaltungDetailScreen
@@ -281,22 +283,13 @@ fun DesktopContentArea(
is AppScreen.TurnierNeu -> {
val evtId = currentScreen.veranstaltungId
val parent = at.mocode.frontend.shell.desktop.data.Store.vereine.firstOrNull { v ->
at.mocode.frontend.shell.desktop.data.Store.eventsFor(v.id).any { it.id == evtId }
}
if (parent == null) {
InvalidContextNotice(
message = "Veranstaltung (ID=$evtId) nicht gefunden.",
onBack = onBack
)
} else {
TurnierWizard(
veranstalterId = parent.id,
veranstaltungId = evtId,
onBack = onBack,
onSaved = { _ -> onBack() }
)
}
val viewModel = koinViewModel<TurnierWizardViewModel>()
TurnierWizard(
viewModel = viewModel,
veranstaltungId = evtId,
onBack = onBack,
onFinish = { onBack() }
)
}
is AppScreen.Billing -> {
@@ -329,6 +322,14 @@ fun DesktopContentArea(
ProfileScreen(viewModel = viewModel)
}
is AppScreen.ProfileOnboarding -> {
val viewModel = koinViewModel<ProfileViewModel>()
ProfileOnboardingWizard(
viewModel = viewModel,
onFinish = { onNavigate(AppScreen.Dashboard) }
)
}
is AppScreen.Home, is AppScreen.Dashboard -> {
AdminUebersichtScreen(
onVeranstalterAuswahl = { onNavigate(AppScreen.VeranstalterAuswahl) },