Updated on 2026-08-14

This commit is contained in:
Tangem 2023-10-06 15:53:02 +03:00
parent caa4d036dc
commit 7a2847ed17
3 changed files with 33 additions and 13 deletions

View file

@ -26,6 +26,7 @@ internal class WalletSingleCurrencyLoadedBalanceConverter(
private val currentStateProvider: Provider<WalletState>,
private val appCurrencyProvider: Provider<AppCurrency>,
private val currentWalletProvider: Provider<UserWallet>,
private val isBalanceHiddenProvider: Provider<Boolean>,
private val currencyStatusErrorConverter: CurrencyStatusErrorConverter,
) : Converter<Either<CurrencyStatusError, CryptoCurrencyStatus>, WalletState> {
@ -86,19 +87,35 @@ internal class WalletSingleCurrencyLoadedBalanceConverter(
is CryptoCurrencyStatus.NoQuote,
is CryptoCurrencyStatus.Loaded,
-> {
WalletCardState.Content(
id = selectedWallet.id,
title = selectedWallet.title,
additionalInfo = WalletAdditionalInfoFactory.resolve(
wallet = currentWalletProvider(),
currencyAmount = status.amount,
),
imageResId = selectedWallet.imageResId,
onRenameClick = selectedWallet.onRenameClick,
onDeleteClick = selectedWallet.onDeleteClick,
balance = formatFiatAmount(status = status, appCurrency = appCurrencyProvider()),
cardCount = currentWalletProvider().getCardsCount(),
)
if (isBalanceHiddenProvider()) {
WalletCardState.HiddenContent(
id = selectedWallet.id,
title = selectedWallet.title,
additionalInfo = WalletAdditionalInfoFactory.resolve(
wallet = currentWalletProvider(),
currencyAmount = status.amount,
),
imageResId = selectedWallet.imageResId,
onRenameClick = selectedWallet.onRenameClick,
onDeleteClick = selectedWallet.onDeleteClick,
balance = formatFiatAmount(status = status, appCurrency = appCurrencyProvider()),
cardCount = currentWalletProvider().getCardsCount(),
)
} else {
WalletCardState.Content(
id = selectedWallet.id,
title = selectedWallet.title,
additionalInfo = WalletAdditionalInfoFactory.resolve(
wallet = currentWalletProvider(),
currencyAmount = status.amount,
),
imageResId = selectedWallet.imageResId,
onRenameClick = selectedWallet.onRenameClick,
onDeleteClick = selectedWallet.onDeleteClick,
balance = formatFiatAmount(status = status, appCurrency = appCurrencyProvider()),
cardCount = currentWalletProvider().getCardsCount(),
)
}
}
is CryptoCurrencyStatus.Loading -> {
WalletCardState.Loading(

View file

@ -106,6 +106,7 @@ internal class WalletStateFactory(
currentStateProvider = currentStateProvider,
appCurrencyProvider = appCurrencyProvider,
currentWalletProvider = currentWalletProvider,
isBalanceHiddenProvider = isBalanceHiddenProvider,
currencyStatusErrorConverter = currencyStatusErrorConverter,
)
}

View file

@ -51,6 +51,7 @@ internal class HiddenStateConverter(
}.toImmutableList(),
),
tokensListState = updatedTokensList,
isBalanceHidden = value
)
}
@ -61,6 +62,7 @@ internal class HiddenStateConverter(
walletHiddenBalanceStateConverter.updateHiddenState(it, value)
}.toImmutableList(),
),
isBalanceHidden = value
)
}