Coverage Summary for Class: BudgetNavGraphKt (com.georgeci.moneysurfer.feature.budget)

Class Method, % Branch, % Line, % Instruction, %
BudgetNavGraphKt 0% (0/9) 0% (0/2) 0% (0/22) 0% (0/261)
BudgetNavGraphKt$budgetNavGraph$1$1$3$1 0% (0/1) 0% (0/1) 0% (0/8)
BudgetNavGraphKt$budgetNavGraph$1$2$2$1 0% (0/1) 0% (0/1) 0% (0/8)
BudgetNavGraphKt$budgetNavGraph$1$2$3$1 0% (0/1) 0% (0/1) 0% (0/8)
BudgetNavGraphKt$budgetNavGraph$lambda$0$$inlined$entry$default$1 0% (0/1)
BudgetNavGraphKt$budgetNavGraph$lambda$0$$inlined$entry$default$2 0% (0/1)
BudgetNavGraphKt$budgetNavGraph$lambda$0$$inlined$entry$default$3 0% (0/1)
BudgetNavGraphKt$budgetNavGraph$lambda$0$$inlined$entry$default$4 0% (0/1)
BudgetNavGraphKt$budgetNavGraph$lambda$0$$inlined$entry$default$5 0% (0/1)
BudgetNavGraphKt$budgetNavGraph$lambda$0$$inlined$entry$default$6 0% (0/1)
Total 0% (0/18) 0% (0/2) 0% (0/25) 0% (0/285)


 package com.georgeci.moneysurfer.feature.budget
 
 import androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi
 import com.georgeci.moneysurfer.domain.primitives.BudgetId
 import com.georgeci.moneysurfer.feature.budget.details.BudgetDetailsScreen
 import com.georgeci.moneysurfer.feature.budget.edit.BudgetEditScreen
 import com.georgeci.moneysurfer.feature.budget.list.BudgetsScreen
 import com.georgeci.moneysurfer.navigation.FeatureNavGraph
 import com.georgeci.moneysurfer.navigation.NavDetailPlaceholder
 import com.georgeci.moneysurfer.navigation.Route
 import com.georgeci.moneysurfer.navigation.SurferPaneSceneStrategy
 
 @OptIn(ExperimentalMaterial3AdaptiveApi::class)
 val budgetNavGraph: FeatureNavGraph = { navigator ->
     entry<Route.Budgets>(
         metadata = SurferPaneSceneStrategy.listPane(detailPlaceholder = { NavDetailPlaceholder() }),
     ) {
         BudgetsScreen(
             onNavigateBack = { navigator.pop() },
             onNavigateToBudgetCreation = { navigator.push(Route.BudgetCreation()) },
             onNavigateToBudgetDetails = { budgetId ->
                 navigator.push(Route.BudgetDetails(budgetId = budgetId.value))
             },
         )
     }
 
     entry<Route.BudgetDetails>(
         metadata = SurferPaneSceneStrategy.detailPane(),
     ) { key ->
         BudgetDetailsScreen(
             budgetId = BudgetId(key.budgetId),
             onNavigateBack = { navigator.pop() },
             onNavigateToBudgetEdit = { budgetId ->
                 navigator.push(Route.BudgetCreation(budgetId = budgetId.value))
             },
             onNavigateToTransactionDetails = { transactionId ->
                 navigator.push(Route.TransactionDetails(transactionId.value))
             },
         )
     }
 
     entry<Route.BudgetCreation>(
         metadata = SurferPaneSceneStrategy.detailPane(),
     ) { key ->
         BudgetEditScreen(
             budgetId = key.budgetId?.let(::BudgetId),
             onNavigateBack = { navigator.pop() },
         )
     }
 }