From 376c14d5598c49af102e65e885b2c8c1c108af84 Mon Sep 17 00:00:00 2001 From: Tangem Date: Tue, 5 Jul 2022 10:48:30 +0400 Subject: [PATCH 1/2] Updated on 2026-08-14 --- .../wallet/redux/OnboardingWalletMiddleware.kt | 7 ++++++- .../tangem/tap/features/wallet/redux/WalletAction.kt | 12 +++++------- .../redux/middlewares/MultiWalletMiddleware.kt | 7 +++---- 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletMiddleware.kt b/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletMiddleware.kt index 88121813ad..1cb8587935 100644 --- a/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletMiddleware.kt +++ b/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletMiddleware.kt @@ -91,7 +91,12 @@ private fun handleWalletAction(action: Action) { BlockchainNetwork(Blockchain.Bitcoin, result.data.card), BlockchainNetwork(Blockchain.Ethereum, result.data.card) ) - store.dispatchOnMain(WalletAction.MultiWallet.SaveCurrencies(blockchainNetworks)) + store.dispatchOnMain( + WalletAction.MultiWallet.SaveCurrencies( + blockchainNetworks = blockchainNetworks, + cardId = result.data.card.cardId + ) + ) onboardingManager.activationStarted(updatedResponse.card.cardId) store.dispatch(OnboardingWalletAction.ProceedBackup) } 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 edc6be9c6e..295d786c94 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 @@ -1,11 +1,7 @@ package com.tangem.tap.features.wallet.redux import android.content.Context -import com.tangem.blockchain.common.Amount -import com.tangem.blockchain.common.Blockchain -import com.tangem.blockchain.common.Token -import com.tangem.blockchain.common.Wallet -import com.tangem.blockchain.common.WalletManager +import com.tangem.blockchain.common.* import com.tangem.blockchain.common.address.AddressType import com.tangem.common.card.Card import com.tangem.tap.common.entities.FiatCurrency @@ -16,8 +12,8 @@ import com.tangem.tap.domain.configurable.warningMessage.WarningMessage import com.tangem.tap.domain.tokens.models.BlockchainNetwork import com.tangem.tap.features.wallet.models.Currency import com.tangem.wallet.R -import java.math.BigDecimal import org.rekotlin.Action +import java.math.BigDecimal sealed class WalletAction : Action { @@ -64,7 +60,9 @@ sealed class WalletAction : Action { MultiWallet() data class AddToken(val token: Token, val blockchain: BlockchainNetwork) : MultiWallet() - data class SaveCurrencies(val blockchainNetworks: List) : MultiWallet() + data class SaveCurrencies( + val blockchainNetworks: List, val cardId: String? = null + ) : MultiWallet() // object FindTokensInUse : MultiWallet() // object FindBlockchainsInUse : MultiWallet() 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 e3af462d5d..8618bb40a6 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 @@ -21,10 +21,10 @@ import com.tangem.tap.features.wallet.redux.WalletState import com.tangem.tap.features.wallet.redux.models.WalletDialog import com.tangem.tap.scope import com.tangem.tap.store -import java.math.BigDecimal import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch import kotlinx.coroutines.withContext +import java.math.BigDecimal class MultiWalletMiddleware { fun handle( @@ -76,9 +76,8 @@ class MultiWalletMiddleware { ) } is WalletAction.MultiWallet.SaveCurrencies -> { - globalState.scanResponse?.card?.cardId?.let { - currenciesRepository.saveCurrencies(it, action.blockchainNetworks) - } + val cardId = action.cardId ?: globalState.scanResponse?.card?.cardId ?: return + currenciesRepository.saveCurrencies(cardId, action.blockchainNetworks) } is WalletAction.MultiWallet.TryToRemoveWallet -> { val walletState = store.state.walletState From 0342b819da2401bb9a685b334aa8fabe774f170c Mon Sep 17 00:00:00 2001 From: Tangem Date: Tue, 5 Jul 2022 10:49:02 +0400 Subject: [PATCH 2/2] Updated on 2026-08-14 --- .../products/wallet/redux/OnboardingWalletMiddleware.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletMiddleware.kt b/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletMiddleware.kt index 1cb8587935..391d65cb96 100644 --- a/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletMiddleware.kt +++ b/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/redux/OnboardingWalletMiddleware.kt @@ -277,7 +277,11 @@ private fun handleBackupAction(appState: () -> AppState?, action: BackupAction) BlockchainNetwork(Blockchain.Bitcoin, result.data), BlockchainNetwork(Blockchain.Ethereum, result.data) ) - store.dispatchOnMain(WalletAction.MultiWallet.SaveCurrencies(blockchainNetworks)) + store.dispatchOnMain( + WalletAction.MultiWallet.SaveCurrencies( + blockchainNetworks = blockchainNetworks, cardId = result.data.cardId + ) + ) if (backupService.currentState == BackupService.State.Finished) { store.dispatchOnMain(BackupAction.FinishBackup) } else {