MutableNavigationGraph

@Serializable
data class MutableNavigationGraph(val route: String, val startDestination: StartDestination? = null, val navigatables: List<Navigatable>, val nestedGraphs: List<NavigationGraph>, val layout: @Composable (@Composable () -> Unit) -> Unit? = null, val interceptDefinition: InterceptDefinition? = null, val entryDefinition: EntryDefinition? = null, val navigatableIntercepts: NavigatableInterceptMap = emptyMap()) : NavigationGraph(source)

Constructors

Link copied to clipboard
constructor(route: String, startDestination: StartDestination? = null, navigatables: List<Navigatable>, nestedGraphs: List<NavigationGraph>, layout: @Composable (@Composable () -> Unit) -> Unit? = null, interceptDefinition: InterceptDefinition? = null, entryDefinition: EntryDefinition? = null, navigatableIntercepts: NavigatableInterceptMap = emptyMap())

Properties

Link copied to clipboard
@Transient
open override val entryDefinition: EntryDefinition? = null

Dynamic entry-point resolver; overrides startDestination when present.

Link copied to clipboard
@Transient
open override val interceptDefinition: InterceptDefinition? = null

Guard evaluated before entering any route within this graph.

Link copied to clipboard
@Transient
open override val layout: @Composable (@Composable () -> Unit) -> Unit? = null

Optional shared layout wrapper applied to every screen inside this graph.

Link copied to clipboard
@Transient
open override val navigatableIntercepts: NavigatableInterceptMap

Intercept definitions for navigatables registered directly inside an intercept { } block rather than inside a nested named graph. These navigatables land in the parent graph's navigatables list but must still be guarded by the intercept.

Link copied to clipboard
open override val navigatables: List<Navigatable>

Direct children of this graph.

Link copied to clipboard
open override val nestedGraphs: List<NavigationGraph>

Sub-graphs owned by this graph.

Link copied to clipboard
open override val route: String
Link copied to clipboard
open override val startDestination: StartDestination? = null

The default destination shown when navigating to this graph without a specific target.

Functions

Link copied to clipboard

Returns the graph that directly owns a navigatable with the given route, searching recursively through nestedGraphs.

Link copied to clipboard

Returns the nested graph with the given graphId, searching recursively.

Link copied to clipboard

Returns a flat map of route → Navigatable for this graph and all nested graphs.

Link copied to clipboard
open fun resolveStartScreen(graphDefinitions: Map<String, NavigationGraph>): Navigatable?

Resolves the initial Navigatable for this graph, following StartDestination.GraphReference chains through graphDefinitions.