Migrate bookmarks module to multiplatform

pull/2064/head
lihenggui 1 year ago
parent 6a48d80dec
commit 7b0d1bea22

@ -18,6 +18,7 @@ plugins {
alias(libs.plugins.nowinandroid.cmp.feature)
alias(libs.plugins.nowinandroid.android.library.jacoco)
alias(libs.plugins.roborazzi)
alias(libs.plugins.kotlin.serialization)
}
android {
@ -33,6 +34,7 @@ kotlin {
implementation(compose.ui)
implementation(compose.components.resources)
implementation(compose.components.uiToolingPreview)
implementation(libs.kotlinx.serialization.core)
}
commonTest.dependencies {

@ -67,7 +67,6 @@ import com.google.samples.apps.nowinandroid.core.ui.TrackScreenViewEvent
import com.google.samples.apps.nowinandroid.core.ui.UserNewsResourcePreviewParameterProvider
import com.google.samples.apps.nowinandroid.core.ui.collectAsStateWithLifecycle
import com.google.samples.apps.nowinandroid.core.ui.newsFeed
import me.tatarka.inject.annotations.Inject
import nowinandroid.feature.bookmarks.generated.resources.Res
import nowinandroid.feature.bookmarks.generated.resources.feature_bookmarks_empty_description
import nowinandroid.feature.bookmarks.generated.resources.feature_bookmarks_empty_error
@ -79,14 +78,14 @@ import org.jetbrains.compose.resources.painterResource
import org.jetbrains.compose.resources.stringResource
import org.jetbrains.compose.ui.tooling.preview.Preview
import org.jetbrains.compose.ui.tooling.preview.PreviewParameter
import org.koin.compose.viewmodel.koinViewModel
@Composable
@Inject
internal fun BookmarksRoute(
onTopicClick: (String) -> Unit,
onShowSnackbar: suspend (String, String?) -> Boolean,
modifier: Modifier = Modifier,
viewModel: BookmarksViewModel,
viewModel: BookmarksViewModel = koinViewModel(),
) {
val feedState by viewModel.feedUiState.collectAsStateWithLifecycle()
BookmarksScreen(

@ -32,9 +32,7 @@ import kotlinx.coroutines.flow.map
import kotlinx.coroutines.flow.onStart
import kotlinx.coroutines.flow.stateIn
import kotlinx.coroutines.launch
import me.tatarka.inject.annotations.Inject
@Inject
class BookmarksViewModel(
private val userDataRepository: UserDataRepository,
userNewsResourceRepository: UserNewsResourceRepository,

@ -19,6 +19,7 @@ package com.google.samples.apps.nowinandroid.feature.bookmarks.navigation
import androidx.navigation.NavController
import androidx.navigation.NavGraphBuilder
import androidx.navigation.NavOptions
import androidx.navigation.compose.composable
import com.google.samples.apps.nowinandroid.feature.bookmarks.BookmarksRoute
import kotlinx.serialization.Serializable
@ -31,7 +32,7 @@ fun NavGraphBuilder.bookmarksScreen(
onTopicClick: (String) -> Unit,
onShowSnackbar: suspend (String, String?) -> Boolean,
) {
// composable<BookmarksRoute> {
// BookmarksRoute(onTopicClick, onShowSnackbar, viewModel)
// }
composable<BookmarksRoute> {
BookmarksRoute(onTopicClick, onShowSnackbar)
}
}

Loading…
Cancel
Save