feat(ui): add reusable components for FIGMA-based UI system

- Implemented new reusable components including Label, Input, InputOTP, HoverCard, Popover, Pagination, NavigationMenu, Menubar, ScrollArea, Resizable, RadioGroup, and Progress under `docs/06_Frontend/FIGMA/src/app/components/ui/`.
- Enhanced structural organization to improve scalability and maintainability.
- Updated `settings.gradle.kts` to include the new module `frontend:features:nennung-feature`.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
This commit is contained in:
2026-03-21 13:40:37 +01:00
parent 575ef18034
commit 439551951b
84 changed files with 8898 additions and 3 deletions
@@ -74,6 +74,7 @@ fun MainApp() {
is AppScreen.Dashboard -> DashboardScreen(
authTokenManager = authTokenManager,
onNennungOeffnen = { navigationPort.navigateToScreen(AppScreen.Nennung) },
onLogout = {
authTokenManager.clearToken()
if (currentPlatform() == PlatformType.DESKTOP) {
@@ -145,6 +146,7 @@ fun MainApp() {
}
}
is AppScreen.Nennung -> NennungScreenContent()
is AppScreen.Profile -> AuthStatusScreen(
authTokenManager = authTokenManager,
onNavigateToLogin = {
@@ -412,7 +414,8 @@ private fun FeatureCard(number: String, title: String, body: String) {
private fun DashboardScreen(
authTokenManager: AuthTokenManager,
onLogout: () -> Unit,
onCreateTournament: () -> Unit
onCreateTournament: () -> Unit,
onNennungOeffnen: () -> Unit = {},
) {
val authState by authTokenManager.authState.collectAsState()
val scrollState = rememberScrollState()
@@ -474,6 +477,15 @@ private fun DashboardScreen(
if (isDesktop && isAdmin) {
// DESKTOP VIEW - STEUERUNGSZENTRALE FÜR DEN ADMIN (DICH)
// Neues Turnier anlegen Button
Button(
onClick = onNennungOeffnen,
modifier = Modifier.fillMaxWidth().height(64.dp)
) {
Text(
text = "📋 Nennungs-Maske öffnen",
style = MaterialTheme.typography.titleMedium
)
}
OutlinedButton(
onClick = onCreateTournament,
modifier = Modifier.fillMaxWidth().height(64.dp)