fix events leak

This commit is contained in:
2026-08-03 21:52:57 +03:00
parent 0963829543
commit dd657f83d0
@@ -8,13 +8,14 @@ import com.arkivanov.decompose.router.webhistory.WebNavigation
import com.arkivanov.decompose.router.webhistory.WebNavigationOwner
import com.arkivanov.essenty.lifecycle.coroutines.repeatOnLifecycle
import kotlinx.coroutines.flow.collect
import kotlinx.coroutines.flow.flatMapLatest
import kotlinx.coroutines.flow.flowOf
import kotlinx.coroutines.flow.map
import kotlinx.coroutines.launch
import kotlinx.serialization.KSerializer
import org.koin.core.Koin
import org.koin.core.annotation.Factory
import ru.shadowsparky.http.domain.TokenStorage
import ru.shadowsparky.http.domain.hasAccount
import ru.shadowsparky.ui.nav.RootComponent
import ru.shadowsparky.updater.presentation.UpdateComponentFactory
import ru.shadowsparky.vbox.shared.di.factory.ImageLoaderProvider
@@ -48,9 +49,13 @@ class VBoxRootComponent(
init {
scope.launch {
repeatOnLifecycle {
if (tokenStorage.hasAccount()) {
remoteEventListener.event.collect()
tokenStorage.token.flatMapLatest {
if (it != null) {
remoteEventListener.event
} else {
flowOf()
}
}.collect()
}
}
scope.launch {