Skip to content

Commit e11c7b1

Browse files
committed
chore(fc): add success with delay to getting started; use replaceAll instead of push
Signed-off-by: Brandon McAnsh <git@bmcreations.dev>
1 parent 6472f61 commit e11c7b1

2 files changed

Lines changed: 16 additions & 15 deletions

File tree

flipchatApp/src/main/kotlin/xyz/flipchat/app/features/login/LoginScreen.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ data class LoginScreen(val seed: String? = null) : Screen, Parcelable {
3232
LaunchedEffect(vm) {
3333
vm.eventFlow
3434
.filterIsInstance<LoginViewModel.Event.OnAccountCreated>()
35-
.onEach { navigator.push(ScreenRegistry.get(NavScreenProvider.AppHomeScreen())) }
35+
.onEach { navigator.replaceAll(ScreenRegistry.get(NavScreenProvider.AppHomeScreen())) }
3636
.launchIn(this)
3737
}
3838

flipchatApp/src/main/kotlin/xyz/flipchat/app/features/login/LoginViewModel.kt

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package xyz.flipchat.app.features.login
22

33
import androidx.lifecycle.viewModelScope
44
import com.getcode.manager.TopBarManager
5+
import com.getcode.services.utils.onSuccessWithDelay
56
import com.getcode.view.BaseViewModel2
67
import dagger.hilt.android.lifecycle.HiltViewModel
78
import kotlinx.coroutines.flow.filter
@@ -15,6 +16,7 @@ import xyz.flipchat.app.beta.BetaFlag
1516
import xyz.flipchat.app.beta.BetaFlags
1617
import xyz.flipchat.app.features.login.register.onResult
1718
import javax.inject.Inject
19+
import kotlin.time.Duration.Companion.seconds
1820

1921
@HiltViewModel
2022
class LoginViewModel @Inject constructor(
@@ -55,21 +57,20 @@ class LoginViewModel @Inject constructor(
5557

5658
eventFlow
5759
.filterIsInstance<Event.CreateAccount>()
58-
.map { authManager.createAccount() }
59-
.onResult(
60-
onError = {
61-
dispatchEvent(Event.CreateFailed)
62-
TopBarManager.showMessage(
63-
TopBarManager.TopBarMessage(
64-
title = "Create Account Failed",
65-
message = it.message ?: "Something went wrong"
60+
.map {
61+
authManager.createAccount()
62+
.onFailure {
63+
dispatchEvent(Event.CreateFailed)
64+
TopBarManager.showMessage(
65+
TopBarManager.TopBarMessage(
66+
title = "Create Account Failed",
67+
message = it.message ?: "Something went wrong"
68+
)
6669
)
67-
)
68-
},
69-
onSuccess = {
70-
dispatchEvent(Event.OnAccountCreated)
71-
}
72-
)
70+
}.onSuccessWithDelay(2.seconds) {
71+
dispatchEvent(Event.OnAccountCreated)
72+
}
73+
}
7374
.launchIn(viewModelScope)
7475
}
7576

0 commit comments

Comments
 (0)