Package dev.burnoo.cokoin.navigation

Functions

getNavController
Link copied to clipboard
@Composable
fun getNavController(): NavHostController

Gets current NavHostController instance from the closest parent KoinNav

getNavViewModel
Link copied to clipboard
@Composable
inline fun <T : ViewModel> getNavViewModel(qualifier: Qualifier? = null, noinline state: BundleDefinition = emptyState(), noinline parameters: ParametersDefinition? = null): T

Gets ViewModel from Koin using root NavBackStackEntry as ViewModelStoreOwner. Needs to be called inside KoinNav or KoinNavHost.

KoinNav
Link copied to clipboard
@Composable
fun KoinNav(navController: NavHostController, content: @Composable () -> Unit)

Composable wrapper to store NavHostController. Should be used to wrap NavHost. getNavViewModel and getNavController works in the Composable content.

KoinNavHost
Link copied to clipboard
@Composable
fun KoinNavHost(navController: NavHostController, graph: NavGraph, modifier: Modifier = Modifier)
@Composable
fun KoinNavHost(navController: NavHostController, startDestination: String, modifier: Modifier = Modifier, route: String? = null, builder: NavGraphBuilder.() -> Unit)

Short for wrapping NavHost with KoinNav. Parameters: the same as NavHost.