Updated on 2026-08-14

This commit is contained in:
Tangem 2025-02-24 16:48:14 +04:00
parent 3c8a8474d4
commit 2d28d399ca
4 changed files with 10 additions and 2 deletions

View file

@ -274,7 +274,7 @@ class TokenItemStateConverter(
return PriceChangeConverter.fromBigDecimal(value = this)
}
private fun CryptoCurrencyStatus.Value.isFlickering(): Boolean = getStatusSource() == StatusSource.CACHE
fun CryptoCurrencyStatus.Value.isFlickering(): Boolean = getStatusSource() == StatusSource.CACHE
private fun CryptoCurrencyStatus.Value.getStatusSource(): StatusSource? {
return when (this) {

View file

@ -39,6 +39,7 @@ internal fun TokenFiatAmount(state: TokenFiatAmountState?, isBalanceHidden: Bool
text = state.text.orMaskWithStars(isBalanceHidden),
modifier = modifier,
isAvailable = state.isAvailable,
isFlickering = state.isFlickering,
)
}
is TokenFiatAmountState.Loading -> {

View file

@ -208,7 +208,11 @@ sealed class TokenItemState {
)
}
data class TextContent(val text: String, val isAvailable: Boolean = true) : FiatAmountState()
data class TextContent(
val text: String,
val isAvailable: Boolean = true,
val isFlickering: Boolean = false,
) : FiatAmountState()
data object Loading : FiatAmountState()

View file

@ -3,6 +3,7 @@ package com.tangem.features.onramp.tokenlist.entity.utils
import com.tangem.common.ui.tokens.TokenItemStateConverter
import com.tangem.common.ui.tokens.TokenItemStateConverter.Companion.getFormattedCryptoAmount
import com.tangem.common.ui.tokens.TokenItemStateConverter.Companion.getFormattedFiatAmount
import com.tangem.common.ui.tokens.TokenItemStateConverter.Companion.isFlickering
import com.tangem.core.ui.components.currency.icon.converter.CryptoCurrencyToIconStateConverter
import com.tangem.core.ui.components.token.state.TokenItemState
import com.tangem.core.ui.extensions.stringReference
@ -68,6 +69,7 @@ internal object OnrampTokenItemStateConverterFactory {
-> {
TokenItemState.Subtitle2State.TextContent(
text = status.getFormattedCryptoAmount(includeStaking = false),
isFlickering = status.value.isFlickering(),
)
}
is CryptoCurrencyStatus.Loading,
@ -92,6 +94,7 @@ internal object OnrampTokenItemStateConverterFactory {
TokenItemState.FiatAmountState.TextContent(
text = status.getFormattedFiatAmount(appCurrency = appCurrency, includeStaking = false),
isAvailable = isAvailable,
isFlickering = status.value.isFlickering(),
)
}
is CryptoCurrencyStatus.Unreachable,