From 5f42e8061815403f4814e13a429f2215c0307bfe Mon Sep 17 00:00:00 2001 From: Tangem Date: Mon, 1 Jul 2024 22:37:03 +0800 Subject: [PATCH] Updated on 2026-08-14 --- .../tasks/UserWalletIdPreflightReadFilter.kt | 2 +- .../details/ui/resetcard/ResetCardViewModel.kt | 7 ++++--- .../wallet/domain/WalletAdditionalInfoFactory.kt | 15 +++++++++++++++ 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/tangem/tap/domain/tasks/UserWalletIdPreflightReadFilter.kt b/app/src/main/java/com/tangem/tap/domain/tasks/UserWalletIdPreflightReadFilter.kt index b0d2d24119..d0f1c97dda 100644 --- a/app/src/main/java/com/tangem/tap/domain/tasks/UserWalletIdPreflightReadFilter.kt +++ b/app/src/main/java/com/tangem/tap/domain/tasks/UserWalletIdPreflightReadFilter.kt @@ -18,7 +18,7 @@ class UserWalletIdPreflightReadFilter(private val expectedUserWalletId: UserWall override fun onCardRead(card: Card, environment: SessionEnvironment) = Unit override fun onFullCardRead(card: Card, environment: SessionEnvironment) { - val actualUserWalletId = UserWalletIdBuilder.card(card = CardDTO(card)).build() + val actualUserWalletId = UserWalletIdBuilder.card(card = CardDTO(card)).build() ?: return if (expectedUserWalletId != actualUserWalletId) throw TangemSdkError.WalletNotFound() } diff --git a/app/src/main/java/com/tangem/tap/features/details/ui/resetcard/ResetCardViewModel.kt b/app/src/main/java/com/tangem/tap/features/details/ui/resetcard/ResetCardViewModel.kt index fd32427821..07f7857126 100644 --- a/app/src/main/java/com/tangem/tap/features/details/ui/resetcard/ResetCardViewModel.kt +++ b/app/src/main/java/com/tangem/tap/features/details/ui/resetcard/ResetCardViewModel.kt @@ -214,9 +214,10 @@ internal class ResetCardViewModel @Inject constructor( return when (val status = card.backupStatus) { is CardDTO.BackupStatus.Active -> status.cardCount - is CardDTO.BackupStatus.CardLinked -> status.cardCount - is CardDTO.BackupStatus.NoBackup -> 0 - null -> 0 // Multi-currency wallet without backup function. Example, 4.12 + is CardDTO.BackupStatus.CardLinked, + is CardDTO.BackupStatus.NoBackup, + null, + -> 0 } } diff --git a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/domain/WalletAdditionalInfoFactory.kt b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/domain/WalletAdditionalInfoFactory.kt index 1f34e460f2..3c61413f63 100644 --- a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/domain/WalletAdditionalInfoFactory.kt +++ b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/domain/WalletAdditionalInfoFactory.kt @@ -6,6 +6,7 @@ import com.tangem.core.ui.extensions.stringReference import com.tangem.core.ui.extensions.wrappedList import com.tangem.core.ui.utils.BigDecimalFormatter import com.tangem.domain.common.util.cardTypesResolver +import com.tangem.domain.models.scan.CardDTO import com.tangem.domain.wallets.models.UserWallet import com.tangem.feature.wallet.impl.R import com.tangem.feature.wallet.presentation.wallet.state.model.WalletAdditionalInfo @@ -107,4 +108,18 @@ internal object WalletAdditionalInfoFactory { WalletAdditionalInfo(hideable = true, content = TextReference.Str(value = amount.orEmpty())) } } + + private fun UserWallet.getCardsCount(): Int? { + return if (isMultiCurrency) { + when (val status = scanResponse.card.backupStatus) { + is CardDTO.BackupStatus.Active -> status.cardCount + 1 + is CardDTO.BackupStatus.CardLinked, + is CardDTO.BackupStatus.NoBackup, + null, + -> 1 + } + } else { + null + } + } } \ No newline at end of file