package com.monika.orangesky
import androidx.compose.runtime.*
import androidx.navigation.compose.NavHost
import androidx.navigation.compose.composable
import androidx.navigation.compose.rememberNavController
sealed class Screen(val route: String) {
data object Login : Screen("login")
data object Register : Screen("register")
data object Home : Screen("home")
}
@Composable
fun AppNavigation() {
val navController = rememberNavController()
NavHost(
navController = navController,
startDestination = Screen.Login.route
) {
composable(Screen.Login.route) {
LoginScreen(
onLogin = {
navController.navigate(Screen.Home.route) {
popUpTo(Screen.Login.route) {
inclusive = true
}
}
},
onRegister = {
navController.navigate(Screen.Register.route)
}
)
}
composable(Screen.Register.route) {
RegisterScreen(
onRegistered = {
navController.navigate(Screen.Home.route) {
popUpTo(Screen.Register.route) {
inclusive = true
}
}
},
onBack = {
navController.popBackStack()
}
)
}
composable(Screen.Home.route) {
HomeScreen()
}
}
}