refactor(navigation): Improve semantic markup and logging in NavGraph
This commit is contained in:
@@ -38,6 +38,7 @@ import timber.log.Timber
|
|||||||
// [RELATION: Function('NavGraph') -> [CALLS] -> Function('rememberNavController')]
|
// [RELATION: Function('NavGraph') -> [CALLS] -> Function('rememberNavController')]
|
||||||
// [RELATION: Function('NavGraph') -> [CALLS] -> Function('currentBackStackEntryAsState')]
|
// [RELATION: Function('NavGraph') -> [CALLS] -> Function('currentBackStackEntryAsState')]
|
||||||
// [RELATION: Function('NavGraph') -> [CALLS] -> Function('remember')]
|
// [RELATION: Function('NavGraph') -> [CALLS] -> Function('remember')]
|
||||||
|
// [RELATION: Function('NavGraph') -> [CALLS] -> Function('hiltViewModel')]
|
||||||
// [RELATION: Function('NavGraph') -> [CREATES_INSTANCE_OF] -> Class('NavigationActions')]
|
// [RELATION: Function('NavGraph') -> [CREATES_INSTANCE_OF] -> Class('NavigationActions')]
|
||||||
// [RELATION: Function('NavGraph') -> [CALLS] -> Function('NavHost')]
|
// [RELATION: Function('NavGraph') -> [CALLS] -> Function('NavHost')]
|
||||||
// [RELATION: Function('NavGraph') -> [CALLS] -> Function('composable')]
|
// [RELATION: Function('NavGraph') -> [CALLS] -> Function('composable')]
|
||||||
@@ -75,7 +76,7 @@ fun NavGraph(navController: NavHostController = rememberNavController()) {
|
|||||||
navController = navController,
|
navController = navController,
|
||||||
startDestination = Screen.Setup.route,
|
startDestination = Screen.Setup.route,
|
||||||
) {
|
) {
|
||||||
// [COMPOSABLE_SETUP]
|
// [ENTITY: Composable('Screen.Setup.route')]
|
||||||
composable(route = Screen.Setup.route) {
|
composable(route = Screen.Setup.route) {
|
||||||
SetupScreen(onSetupComplete = {
|
SetupScreen(onSetupComplete = {
|
||||||
navController.navigate(Screen.Dashboard.route) {
|
navController.navigate(Screen.Dashboard.route) {
|
||||||
@@ -83,27 +84,30 @@ fun NavGraph(navController: NavHostController = rememberNavController()) {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
// [COMPOSABLE_DASHBOARD]
|
// [END_ENTITY: Composable('Screen.Setup.route')]
|
||||||
|
// [ENTITY: Composable('Screen.Dashboard.route')]
|
||||||
composable(route = Screen.Dashboard.route) {
|
composable(route = Screen.Dashboard.route) {
|
||||||
DashboardScreen(
|
DashboardScreen(
|
||||||
currentRoute = currentRoute,
|
currentRoute = currentRoute,
|
||||||
navigationActions = navigationActions,
|
navigationActions = navigationActions,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
// [COMPOSABLE_INVENTORY_LIST]
|
// [END_ENTITY: Composable('Screen.Dashboard.route')]
|
||||||
|
// [ENTITY: Composable('Screen.InventoryList.route')]
|
||||||
composable(route = Screen.InventoryList.route) { backStackEntry ->
|
composable(route = Screen.InventoryList.route) { backStackEntry ->
|
||||||
val viewModel: InventoryListViewModel = hiltViewModel(backStackEntry)
|
val viewModel: InventoryListViewModel = hiltViewModel(backStackEntry)
|
||||||
InventoryListScreen(
|
InventoryListScreen(
|
||||||
onItemClick = { item ->
|
onItemClick = { item ->
|
||||||
// TODO: Navigate to item details
|
// TODO: Navigate to item details
|
||||||
Timber.d("Item clicked: ${item.name}")
|
Timber.i("[UI] Item clicked: ${item.name}")
|
||||||
},
|
},
|
||||||
onNavigateBack = {
|
onNavigateBack = {
|
||||||
navController.popBackStack()
|
navController.popBackStack()
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
// [COMPOSABLE_ITEM_DETAILS]
|
// [END_ENTITY: Composable('Screen.InventoryList.route')]
|
||||||
|
// [ENTITY: Composable('Screen.ItemDetails.route')]
|
||||||
composable(route = Screen.ItemDetails.route) { backStackEntry ->
|
composable(route = Screen.ItemDetails.route) { backStackEntry ->
|
||||||
val viewModel: ItemDetailsViewModel = hiltViewModel(backStackEntry)
|
val viewModel: ItemDetailsViewModel = hiltViewModel(backStackEntry)
|
||||||
ItemDetailsScreen(
|
ItemDetailsScreen(
|
||||||
@@ -112,11 +116,12 @@ fun NavGraph(navController: NavHostController = rememberNavController()) {
|
|||||||
},
|
},
|
||||||
onEditClick = { itemId ->
|
onEditClick = { itemId ->
|
||||||
// TODO: Navigate to item edit screen
|
// TODO: Navigate to item edit screen
|
||||||
Timber.d("Edit item clicked: $itemId")
|
Timber.i("[UI] Edit item clicked: $itemId")
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
// [COMPOSABLE_ITEM_EDIT]
|
// [END_ENTITY: Composable('Screen.ItemDetails.route')]
|
||||||
|
// [ENTITY: Composable('Screen.ItemEdit.route')]
|
||||||
composable(route = Screen.ItemEdit.route) { backStackEntry ->
|
composable(route = Screen.ItemEdit.route) { backStackEntry ->
|
||||||
val viewModel: ItemEditViewModel = hiltViewModel(backStackEntry)
|
val viewModel: ItemEditViewModel = hiltViewModel(backStackEntry)
|
||||||
ItemEditScreen(
|
ItemEditScreen(
|
||||||
@@ -125,7 +130,8 @@ fun NavGraph(navController: NavHostController = rememberNavController()) {
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
// [COMPOSABLE_LABELS_LIST]
|
// [END_ENTITY: Composable('Screen.ItemEdit.route')]
|
||||||
|
// [ENTITY: Composable('Screen.LabelsList.route')]
|
||||||
composable(Screen.LabelsList.route) { backStackEntry ->
|
composable(Screen.LabelsList.route) { backStackEntry ->
|
||||||
val viewModel: LabelsListViewModel = hiltViewModel(backStackEntry)
|
val viewModel: LabelsListViewModel = hiltViewModel(backStackEntry)
|
||||||
val uiState by viewModel.uiState.collectAsState()
|
val uiState by viewModel.uiState.collectAsState()
|
||||||
@@ -134,18 +140,19 @@ fun NavGraph(navController: NavHostController = rememberNavController()) {
|
|||||||
uiState = uiState,
|
uiState = uiState,
|
||||||
onLabelClick = { label ->
|
onLabelClick = { label ->
|
||||||
// TODO: Implement navigation to label details screen
|
// TODO: Implement navigation to label details screen
|
||||||
Timber.d("Label clicked: ${label.name}")
|
Timber.i("[UI] Label clicked: ${label.name}")
|
||||||
},
|
},
|
||||||
onAddClick = {
|
onAddClick = {
|
||||||
// TODO: Implement navigation to add new label screen
|
// TODO: Implement navigation to add new label screen
|
||||||
Timber.d("Add new label clicked")
|
Timber.i("[UI] Add new label clicked")
|
||||||
},
|
},
|
||||||
onNavigateBack = {
|
onNavigateBack = {
|
||||||
navController.popBackStack()
|
navController.popBackStack()
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
// [COMPOSABLE_LOCATIONS_LIST]
|
// [END_ENTITY: Composable('Screen.LabelsList.route')]
|
||||||
|
// [ENTITY: Composable('Screen.LocationsList.route')]
|
||||||
composable(route = Screen.LocationsList.route) {
|
composable(route = Screen.LocationsList.route) {
|
||||||
LocationsListScreen(
|
LocationsListScreen(
|
||||||
currentRoute = currentRoute,
|
currentRoute = currentRoute,
|
||||||
@@ -159,14 +166,16 @@ fun NavGraph(navController: NavHostController = rememberNavController()) {
|
|||||||
},
|
},
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
// [COMPOSABLE_LOCATION_EDIT]
|
// [END_ENTITY: Composable('Screen.LocationsList.route')]
|
||||||
|
// [ENTITY: Composable('Screen.LocationEdit.route')]
|
||||||
composable(route = Screen.LocationEdit.route) { backStackEntry ->
|
composable(route = Screen.LocationEdit.route) { backStackEntry ->
|
||||||
val locationId = backStackEntry.arguments?.getString("locationId")
|
val locationId = backStackEntry.arguments?.getString("locationId")
|
||||||
LocationEditScreen(
|
LocationEditScreen(
|
||||||
locationId = locationId,
|
locationId = locationId,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
// [COMPOSABLE_SEARCH]
|
// [END_ENTITY: Composable('Screen.LocationEdit.route')]
|
||||||
|
// [ENTITY: Composable('Screen.Search.route')]
|
||||||
composable(route = Screen.Search.route) { backStackEntry ->
|
composable(route = Screen.Search.route) { backStackEntry ->
|
||||||
val viewModel: SearchViewModel = hiltViewModel(backStackEntry)
|
val viewModel: SearchViewModel = hiltViewModel(backStackEntry)
|
||||||
SearchScreen(
|
SearchScreen(
|
||||||
@@ -175,10 +184,11 @@ fun NavGraph(navController: NavHostController = rememberNavController()) {
|
|||||||
},
|
},
|
||||||
onItemClick = { item ->
|
onItemClick = { item ->
|
||||||
// TODO: Navigate to item details
|
// TODO: Navigate to item details
|
||||||
Timber.d("Search result item clicked: ${item.name}")
|
Timber.i("[UI] Search result item clicked: ${item.name}")
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
// [END_ENTITY: Composable('Screen.Search.route')]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// [END_ENTITY: Function('NavGraph')]
|
// [END_ENTITY: Function('NavGraph')]
|
||||||
|
|||||||
Reference in New Issue
Block a user