refactoring:
Ein neues Kotlin-Multiplattform-Mitgliedermodul wurde bereitgestellt, das clientseitige API-Aufrufe, Benutzeroberfläche und Navigation in die Host-Anwendung integriert. Der Build wurde durch die Entkopplung von Backend-Mitgliedermodulen stabilisiert, und alle Tests wurden erfolgreich abgeschlossen. Die Client-Funktionen erfolgen über REST-Aufrufe an das Gateway; die Backend-Integration wird in einer späteren Phase implementiert.
This commit is contained in:
@@ -77,6 +77,7 @@ kotlin {
|
||||
implementation(project(":clients:shared:common-ui"))
|
||||
implementation(project(":clients:shared:navigation"))
|
||||
implementation(project(":clients:ping-feature"))
|
||||
implementation(project(":clients:members-feature"))
|
||||
|
||||
// Compose Multiplatform
|
||||
implementation(compose.runtime)
|
||||
|
||||
@@ -3,6 +3,9 @@ import androidx.compose.runtime.*
|
||||
import androidx.compose.foundation.layout.*
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.unit.dp
|
||||
import at.mocode.clients.membersfeature.ProfileScreen
|
||||
import at.mocode.clients.membersfeature.ProfileViewModel
|
||||
import at.mocode.clients.shared.navigation.AppScreen
|
||||
|
||||
@Composable
|
||||
fun MainApp() {
|
||||
@@ -11,13 +14,20 @@ fun MainApp() {
|
||||
modifier = Modifier.fillMaxSize(),
|
||||
color = MaterialTheme.colorScheme.background
|
||||
) {
|
||||
DevelopmentScreen()
|
||||
var currentScreen by remember { mutableStateOf<AppScreen>(AppScreen.Home) }
|
||||
|
||||
when (currentScreen) {
|
||||
is AppScreen.Home -> DevelopmentScreen(onOpenProfile = { currentScreen = AppScreen.Profile })
|
||||
is AppScreen.Login -> DevelopmentScreen(onOpenProfile = { currentScreen = AppScreen.Profile })
|
||||
is AppScreen.Ping -> DevelopmentScreen(onOpenProfile = { currentScreen = AppScreen.Profile })
|
||||
is AppScreen.Profile -> ProfileScreen(viewModel = remember { ProfileViewModel() })
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun DevelopmentScreen() {
|
||||
fun DevelopmentScreen(onOpenProfile: () -> Unit) {
|
||||
Column(
|
||||
modifier = Modifier
|
||||
.fillMaxSize()
|
||||
@@ -47,6 +57,9 @@ fun DevelopmentScreen() {
|
||||
Button(onClick = { testStatus = "Testing Ping Service..." }) {
|
||||
Text("Test Ping Service")
|
||||
}
|
||||
Button(onClick = onOpenProfile) {
|
||||
Text("Open Profile")
|
||||
}
|
||||
}
|
||||
|
||||
Text("Status: $testStatus")
|
||||
|
||||
Reference in New Issue
Block a user