Skip to content

Commit 7d62d97

Browse files
committed
Update project
1 parent dfaa806 commit 7d62d97

File tree

9 files changed

+167
-0
lines changed

9 files changed

+167
-0
lines changed

core/navigation/build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ kotlin {
1919
}
2020
val desktopMain by getting
2121
desktopMain.dependencies {
22+
api(libs.bundles.compose.navigation.common)
2223
api(libs.bundles.precompose.desktop)
2324
}
2425
}

desktopApp/src/jvmMain/kotlin/org/michaelbel/movies/MainWindowContent.kt

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,4 +53,38 @@ internal fun MainWindowContent() {
5353
navigateBack = navHostController::popBackStack
5454
)
5555
}
56+
57+
/*val navHostController: NavHostController = rememberNavController()
58+
androidx.navigation.compose.NavHost(
59+
navController = navHostController,
60+
startDestination = "feed"
61+
) {
62+
authGraph(
63+
navigateBack = navHostController::popBackStack
64+
)
65+
accountGraph(
66+
navigateBack = navHostController::popBackStack
67+
)
68+
feedGraph(
69+
navigateToSearch = navHostController::navigateToSearch,
70+
navigateToAuth = navHostController::navigateToAuth,
71+
navigateToAccount = navHostController::navigateToAccount,
72+
navigateToSettings = navHostController::navigateToSettings,
73+
navigateToDetails = navHostController::navigateToDetails
74+
)
75+
detailsGraph(
76+
navigateBack = navHostController::popBackStack,
77+
navigateToGallery = navHostController::navigateToGallery
78+
)
79+
galleryGraph(
80+
navigateBack = navHostController::popBackStack
81+
)
82+
searchGraph(
83+
navigateBack = navHostController::popBackStack,
84+
navigateToDetails = navHostController::navigateToDetails,
85+
)
86+
settingsGraph(
87+
navigateBack = navHostController::popBackStack
88+
)
89+
}*/
5690
}

feature/account/src/desktopMain/kotlin/org/michaelbel/movies/account/AccountNavigation.kt

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
package org.michaelbel.movies.account
22

3+
import androidx.navigation.NavController
4+
import androidx.navigation.NavGraphBuilder
5+
import androidx.navigation.compose.dialog
36
import moe.tlaster.precompose.navigation.Navigator
47
import moe.tlaster.precompose.navigation.RouteBuilder
58
import org.michaelbel.movies.account.ui.AccountRoute
@@ -18,4 +21,20 @@ fun RouteBuilder.accountGraph(
1821
onBackClick = navigateBack
1922
)
2023
}
24+
}
25+
26+
fun NavController.navigateToAccount() {
27+
navigate(AccountDestination.route)
28+
}
29+
30+
fun NavGraphBuilder.accountGraph(
31+
navigateBack: () -> Unit
32+
) {
33+
dialog(
34+
route = AccountDestination.route
35+
) {
36+
AccountRoute(
37+
onBackClick = navigateBack
38+
)
39+
}
2140
}

feature/auth/src/desktopMain/kotlin/org/michaelbel/movies/auth/AuthNavigation.kt

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
package org.michaelbel.movies.auth
22

3+
import androidx.navigation.NavController
4+
import androidx.navigation.NavGraphBuilder
5+
import androidx.navigation.compose.dialog
36
import moe.tlaster.precompose.navigation.Navigator
47
import moe.tlaster.precompose.navigation.RouteBuilder
58
import org.michaelbel.movies.auth.ui.AuthRoute
@@ -18,4 +21,20 @@ fun RouteBuilder.authGraph(
1821
onBackClick = navigateBack
1922
)
2023
}
24+
}
25+
26+
fun NavController.navigateToAuth() {
27+
navigate(AuthDestination.route)
28+
}
29+
30+
fun NavGraphBuilder.authGraph(
31+
navigateBack: () -> Unit
32+
) {
33+
dialog(
34+
route = AuthDestination.route,
35+
) {
36+
AuthRoute(
37+
onBackClick = navigateBack
38+
)
39+
}
2140
}

feature/details/src/desktopMain/kotlin/org/michaelbel/movies/details/DetailsNavigation.kt

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
package org.michaelbel.movies.details
22

33
import androidx.compose.material.Text
4+
import androidx.navigation.NavController
5+
import androidx.navigation.NavGraphBuilder
6+
import androidx.navigation.compose.composable
47
import moe.tlaster.precompose.navigation.Navigator
58
import moe.tlaster.precompose.navigation.RouteBuilder
69

@@ -17,4 +20,19 @@ fun RouteBuilder.detailsGraph(
1720
) {
1821
Text("details")
1922
}
23+
}
24+
25+
fun NavController.navigateToDetails(movieList: String, movieId: Int) {
26+
navigate("movie?movieList=$movieList&movieId=$movieId")
27+
}
28+
29+
fun NavGraphBuilder.detailsGraph(
30+
navigateBack: () -> Unit,
31+
navigateToGallery: (Int) -> Unit
32+
) {
33+
composable(
34+
route = DetailsDestination.route
35+
) {
36+
Text("details")
37+
}
2038
}

feature/feed/src/desktopMain/kotlin/org/michaelbel/movies/feed/FeedNavigation.kt

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package org.michaelbel.movies.feed
22

3+
import androidx.navigation.NavGraphBuilder
4+
import androidx.navigation.compose.composable
35
import moe.tlaster.precompose.navigation.RouteBuilder
46
import org.michaelbel.movies.feed.ui.FeedRoute
57

@@ -24,4 +26,24 @@ fun RouteBuilder.feedGraph(
2426
onNavigateToDetails = navigateToDetails
2527
)
2628
}
29+
}
30+
31+
fun NavGraphBuilder.feedGraph(
32+
navigateToSearch: () -> Unit,
33+
navigateToAuth: () -> Unit,
34+
navigateToAccount: () -> Unit,
35+
navigateToSettings: () -> Unit,
36+
navigateToDetails: (String, Int) -> Unit
37+
) {
38+
composable(
39+
route = FeedDestination.route
40+
) {
41+
FeedRoute(
42+
onNavigateToSearch = navigateToSearch,
43+
onNavigateToAccount = navigateToAccount,
44+
onNavigateToAuth = navigateToAuth,
45+
onNavigateToSettings = navigateToSettings,
46+
onNavigateToDetails = navigateToDetails
47+
)
48+
}
2749
}

feature/gallery/src/desktopMain/kotlin/org/michaelbel/movies/gallery/GalleryNavigation.kt

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
package org.michaelbel.movies.gallery
22

33
import androidx.compose.material.Text
4+
import androidx.navigation.NavController
5+
import androidx.navigation.NavGraphBuilder
6+
import androidx.navigation.compose.composable
47
import moe.tlaster.precompose.navigation.Navigator
58
import moe.tlaster.precompose.navigation.RouteBuilder
69

@@ -16,4 +19,18 @@ fun RouteBuilder.galleryGraph(
1619
) {
1720
Text("gallery")
1821
}
22+
}
23+
24+
fun NavController.navigateToGallery(movieId: Int) {
25+
navigate("gallery/$movieId")
26+
}
27+
28+
fun NavGraphBuilder.galleryGraph(
29+
navigateBack: () -> Unit,
30+
) {
31+
composable(
32+
route = GalleryDestination.route
33+
) {
34+
Text("gallery")
35+
}
1936
}

feature/search/src/desktopMain/kotlin/org/michaelbel/movies/search/SearchNavigation.kt

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
package org.michaelbel.movies.search
22

33
import androidx.compose.material.Text
4+
import androidx.navigation.NavController
5+
import androidx.navigation.NavGraphBuilder
6+
import androidx.navigation.compose.composable
47
import moe.tlaster.precompose.navigation.Navigator
58
import moe.tlaster.precompose.navigation.RouteBuilder
69

@@ -17,4 +20,19 @@ fun RouteBuilder.searchGraph(
1720
) {
1821
Text("Feed")
1922
}
23+
}
24+
25+
fun NavController.navigateToSearch() {
26+
navigate(SearchDestination.route)
27+
}
28+
29+
fun NavGraphBuilder.searchGraph(
30+
navigateBack: () -> Unit,
31+
navigateToDetails: (String, Int) -> Unit,
32+
) {
33+
composable(
34+
route = SearchDestination.route
35+
) {
36+
Text("Feed")
37+
}
2038
}

feature/settings/src/desktopMain/kotlin/org/michaelbel/movies/settings/SettingsNavigation.kt

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
package org.michaelbel.movies.settings
22

3+
import androidx.navigation.NavController
4+
import androidx.navigation.NavGraphBuilder
5+
import androidx.navigation.compose.composable
36
import moe.tlaster.precompose.navigation.Navigator
47
import moe.tlaster.precompose.navigation.RouteBuilder
58
import org.michaelbel.movies.settings.ui.SettingsRoute
@@ -18,4 +21,20 @@ fun RouteBuilder.settingsGraph(
1821
onBackClick = navigateBack
1922
)
2023
}
24+
}
25+
26+
fun NavController.navigateToSettings() {
27+
navigate(SettingsDestination.route)
28+
}
29+
30+
fun NavGraphBuilder.settingsGraph(
31+
navigateBack: () -> Unit
32+
) {
33+
composable(
34+
route = SettingsDestination.route
35+
) {
36+
SettingsRoute(
37+
onBackClick = navigateBack
38+
)
39+
}
2140
}

0 commit comments

Comments
 (0)