From 285eb9d213f971afd67d719c05ad4025fc2be378 Mon Sep 17 00:00:00 2001 From: Tangem Date: Sat, 19 Mar 2022 21:47:51 +0300 Subject: [PATCH] Updated on 2026-08-14 --- .../com/tangem/tap/domain/TapWalletManager.kt | 5 ----- .../tap/features/wallet/redux/WalletAction.kt | 2 +- .../middlewares/MultiWalletMiddleware.kt | 6 +++-- .../redux/middlewares/WalletMiddleware.kt | 22 ++++++++----------- 4 files changed, 14 insertions(+), 21 deletions(-) diff --git a/app/src/main/java/com/tangem/tap/domain/TapWalletManager.kt b/app/src/main/java/com/tangem/tap/domain/TapWalletManager.kt index 6b67d9d90f..0298d95b33 100644 --- a/app/src/main/java/com/tangem/tap/domain/TapWalletManager.kt +++ b/app/src/main/java/com/tangem/tap/domain/TapWalletManager.kt @@ -75,11 +75,6 @@ class TapWalletManager { loadFiatRate(fiatCurrency, currencies) } - suspend fun loadFiatRate(fiatCurrency: FiatCurrencyName, currency: Currency) { - val currencies = listOf(currency) - loadFiatRate(fiatCurrency, currencies) - } - suspend fun loadFiatRate(fiatCurrency: FiatCurrencyName, currencies: List) { val results = mutableListOf?>>() currencies.forEach { diff --git a/app/src/main/java/com/tangem/tap/features/wallet/redux/WalletAction.kt b/app/src/main/java/com/tangem/tap/features/wallet/redux/WalletAction.kt index 92aded77cc..d7c9c56390 100644 --- a/app/src/main/java/com/tangem/tap/features/wallet/redux/WalletAction.kt +++ b/app/src/main/java/com/tangem/tap/features/wallet/redux/WalletAction.kt @@ -75,7 +75,7 @@ sealed class WalletAction : Action { } data class LoadFiatRate( - val wallet: Wallet? = null, val currency: Currency? = null, + val wallet: Wallet? = null, val currencyList: List? = null, ) : WalletAction() { data class Success(val fiatRate: Pair) : WalletAction() object Failure : WalletAction() diff --git a/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/MultiWalletMiddleware.kt b/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/MultiWalletMiddleware.kt index 4e5e024bcb..ade8ab52d7 100644 --- a/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/MultiWalletMiddleware.kt +++ b/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/MultiWalletMiddleware.kt @@ -61,7 +61,9 @@ class MultiWalletMiddleware { } } } - store.dispatch(WalletAction.LoadFiatRate(currency = Currency.Blockchain(action.blockchain))) + store.dispatch(WalletAction.LoadFiatRate( + currencyList = listOf(Currency.Blockchain(action.blockchain))) + ) store.dispatch(WalletAction.LoadWallet(action.blockchain) ) } @@ -184,7 +186,7 @@ class MultiWalletMiddleware { store.dispatch(WalletAction.MultiWallet.AddWalletManagers(it)) store.dispatch(WalletAction.MultiWallet.AddBlockchain(blockchain)) } - tokensList.forEach { store.dispatch(WalletAction.LoadFiatRate(currency = Currency.Token(it))) } + store.dispatch(WalletAction.LoadFiatRate(currencyList = tokensList.map { Currency.Token(it) })) walletManager?.apply { addTokens(tokensList) } } scope.launch { diff --git a/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/WalletMiddleware.kt b/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/WalletMiddleware.kt index 7713008b2c..b009981dfb 100644 --- a/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/WalletMiddleware.kt +++ b/app/src/main/java/com/tangem/tap/features/wallet/redux/middlewares/WalletMiddleware.kt @@ -87,23 +87,19 @@ class WalletMiddleware { warningsMiddleware.tryToShowAppRatingWarning(action.wallet) } is WalletAction.LoadFiatRate -> { + val tapWalletManager = globalState.tapWalletManager + val fiatAppCurrency = globalState.appCurrency scope.launch { when { action.wallet != null -> { - globalState.tapWalletManager.loadFiatRate( - globalState.appCurrency, action.wallet - ) + tapWalletManager.loadFiatRate(fiatAppCurrency, action.wallet) } - action.currency != null -> { - globalState.tapWalletManager.loadFiatRate( - globalState.appCurrency, action.currency - ) + action.currencyList != null -> { + tapWalletManager.loadFiatRate(fiatAppCurrency, action.currencyList) } else -> { - globalState.tapWalletManager.loadFiatRate( - fiatCurrency = globalState.appCurrency, - currencies = walletState.walletsData.mapNotNull { it.currency } - ) + val currencyList = walletState.walletsData.map { it.currency } + tapWalletManager.loadFiatRate(fiatAppCurrency, currencyList) } } } @@ -217,12 +213,12 @@ class WalletMiddleware { when (currency) { is Currency.Blockchain -> { val amountToSend = amounts?.find { it.currencySymbol == currency.blockchain.currency } - ?: return WalletAction.Send.ChooseCurrency(amounts) + ?: return WalletAction.Send.ChooseCurrency(amounts) PrepareSendScreen(amountToSend, selectedWalletData.fiatRate, walletManager) } is Currency.Token -> { val amountToSend = amounts?.find { it.currencySymbol == currency.token.symbol } - ?: return WalletAction.Send.ChooseCurrency(amounts) + ?: return WalletAction.Send.ChooseCurrency(amounts) prepareSendActionForToken(amountToSend, state, selectedWalletData, wallet, walletManager) } }