From 657e7cd3d07392a728930274b9ceabcbeacb6c2c Mon Sep 17 00:00:00 2001 From: Tangem Date: Thu, 8 Feb 2024 17:01:46 +0300 Subject: [PATCH] Updated on 2026-08-14 --- .../presentation/wallet/state2/WalletStateController.kt | 6 +++++- .../wallet/subscribers/BasicTokenListSubscriber.kt | 2 +- .../wallet/subscribers/MultiWalletWarningsSubscriber.kt | 2 +- .../subscribers/SingleWalletNotificationsSubscriber.kt | 2 +- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/state2/WalletStateController.kt b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/state2/WalletStateController.kt index d2e9c06cb8..0ef36a7f4a 100644 --- a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/state2/WalletStateController.kt +++ b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/state2/WalletStateController.kt @@ -42,7 +42,11 @@ internal class WalletStateController @Inject constructor() { mutableUiState.update { getInitialState() } } - fun getWalletIfSelected(walletId: UserWalletId): WalletState? { + fun getWalletState(userWalletId: UserWalletId): WalletState? { + return value.wallets.firstOrNull { it.walletCardState.id == userWalletId } + } + + fun getWalletStateIfSelected(walletId: UserWalletId): WalletState? { val selectedWalletId = getSelectedWalletId() return value.wallets.firstOrNull { diff --git a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/BasicTokenListSubscriber.kt b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/BasicTokenListSubscriber.kt index 379657ed45..ddc8f7fb6a 100644 --- a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/BasicTokenListSubscriber.kt +++ b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/BasicTokenListSubscriber.kt @@ -37,7 +37,7 @@ internal abstract class BasicTokenListSubscriber( return combine( flow = tokenListFlow() .onEach { - val displayedState = stateHolder.getWalletIfSelected(userWallet.walletId) + val displayedState = stateHolder.getWalletStateIfSelected(userWallet.walletId) tokenListAnalyticsSender.send(displayedState, userWallet, it.getOrElse { return@onEach }) } diff --git a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/MultiWalletWarningsSubscriber.kt b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/MultiWalletWarningsSubscriber.kt index 09a4cc324d..152aa30cae 100644 --- a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/MultiWalletWarningsSubscriber.kt +++ b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/MultiWalletWarningsSubscriber.kt @@ -27,7 +27,7 @@ internal class MultiWalletWarningsSubscriber( .conflate() .distinctUntilChanged() .onEach { warnings -> - val displayedState = stateHolder.getWalletIfSelected(userWalletId) + val displayedState = stateHolder.getWalletState(userWalletId) stateHolder.update(SetWarningsTransformer(userWalletId, warnings)) walletWarningsAnalyticsSender.send(displayedState, warnings) diff --git a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/SingleWalletNotificationsSubscriber.kt b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/SingleWalletNotificationsSubscriber.kt index e4b6e2f5e9..edb19f0254 100644 --- a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/SingleWalletNotificationsSubscriber.kt +++ b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/subscribers/SingleWalletNotificationsSubscriber.kt @@ -30,7 +30,7 @@ internal class SingleWalletNotificationsSubscriber( .conflate() .distinctUntilChanged() .onEach { warnings -> - val displayedState = stateHolder.getWalletIfSelected(userWalletId) + val displayedState = stateHolder.getWalletState(userWalletId) stateHolder.update(SetWarningsTransformer(userWalletId, warnings)) walletWarningsAnalyticsSender.send(displayedState, warnings)