Updated on 2026-08-14

This commit is contained in:
Tangem 2024-07-12 16:30:49 +02:00
parent 0391e50dc8
commit cb36d5cf25
28 changed files with 78 additions and 61 deletions

View file

@ -11,7 +11,7 @@ import androidx.compose.ui.text.style.TextOverflow
import com.tangem.core.ui.components.RectangleShimmer
import com.tangem.core.ui.res.TangemTheme
import com.tangem.feature.wallet.impl.R
import com.tangem.utils.Strings
import com.tangem.utils.StringsSigns
import com.tangem.feature.wallet.presentation.common.state.TokenItemState.CryptoAmountState as TokenCryptoAmountState
@Composable
@ -23,7 +23,7 @@ internal fun TokenCryptoAmount(
when (state) {
is TokenCryptoAmountState.Content -> {
CryptoAmountText(
amount = if (isBalanceHidden) Strings.STARS else state.text,
amount = if (isBalanceHidden) StringsSigns.STARS else state.text,
modifier = modifier,
)
}

View file

@ -9,7 +9,7 @@ import androidx.compose.ui.composed
import androidx.compose.ui.text.style.TextOverflow
import com.tangem.core.ui.components.RectangleShimmer
import com.tangem.core.ui.res.TangemTheme
import com.tangem.utils.Strings
import com.tangem.utils.StringsSigns
import com.tangem.feature.wallet.presentation.common.state.TokenItemState.FiatAmountState as TokenFiatAmountState
@Composable
@ -17,7 +17,7 @@ internal fun TokenFiatAmount(state: TokenFiatAmountState?, isBalanceHidden: Bool
when (state) {
is TokenFiatAmountState.Content -> {
FiatAmountText(
text = if (isBalanceHidden) Strings.STARS else state.text,
text = if (isBalanceHidden) StringsSigns.STARS else state.text,
modifier,
)
}

View file

@ -18,7 +18,7 @@ import com.tangem.core.ui.components.SpacerW6
import com.tangem.core.ui.components.marketprice.PriceChangeType
import com.tangem.core.ui.res.TangemTheme
import com.tangem.feature.wallet.impl.R
import com.tangem.feature.wallet.presentation.common.state.TokenItemState
import com.tangem.utils.StringsSigns.DASH_SIGN
import com.tangem.feature.wallet.presentation.common.state.TokenItemState.CryptoPriceState as TokenPriceChangeState
@Composable
@ -33,7 +33,7 @@ internal fun TokenPrice(state: TokenPriceChangeState?, modifier: Modifier = Modi
)
}
is TokenPriceChangeState.Unknown -> {
PriceText(text = TokenItemState.UNKNOWN_AMOUNT_SIGN, modifier = modifier)
PriceText(text = DASH_SIGN, modifier = modifier)
}
is TokenPriceChangeState.Loading -> {
RectangleShimmer(modifier = modifier.placeholderSize(), radius = TangemTheme.dimens.radius4)
@ -104,7 +104,7 @@ private fun PriceChangeIcon(type: PriceChangeType) {
private fun PriceChangeText(type: PriceChangeType?, text: String?, modifier: Modifier = Modifier) {
AnimatedContent(targetState = text, modifier = modifier, label = "Update the price change's text") { animatedText ->
Text(
text = animatedText ?: TokenItemState.UNKNOWN_AMOUNT_SIGN,
text = animatedText ?: DASH_SIGN,
color = when (type) {
PriceChangeType.UP -> TangemTheme.colors.text.accent
PriceChangeType.DOWN -> TangemTheme.colors.text.warning

View file

@ -161,8 +161,4 @@ internal sealed class TokenItemState {
object Locked : CryptoPriceState()
}
companion object {
const val UNKNOWN_AMOUNT_SIGN = ""
}
}

View file

@ -4,7 +4,8 @@ import androidx.annotation.DrawableRes
import androidx.compose.runtime.Immutable
import com.tangem.core.ui.extensions.TextReference
import com.tangem.domain.wallets.models.UserWalletId
import com.tangem.utils.Strings
import com.tangem.utils.StringsSigns
import com.tangem.utils.StringsSigns.DASH_SIGN
/** Wallet card state */
@Immutable
@ -123,7 +124,7 @@ internal sealed interface WalletCardState {
}
companion object {
val HIDDEN_BALANCE_TEXT by lazy { TextReference.Str(value = Strings.STARS) }
val EMPTY_BALANCE_TEXT by lazy { TextReference.Str(value = "") }
val HIDDEN_BALANCE_TEXT by lazy { TextReference.Str(value = StringsSigns.STARS) }
val EMPTY_BALANCE_TEXT by lazy { TextReference.Str(value = DASH_SIGN) }
}
}

View file

@ -10,6 +10,7 @@ import com.tangem.domain.tokens.model.CryptoCurrencyStatus
import com.tangem.feature.wallet.presentation.common.state.TokenItemState
import com.tangem.feature.wallet.presentation.wallet.viewmodels.intents.WalletClickIntents
import com.tangem.utils.Provider
import com.tangem.utils.StringsSigns.DASH_SIGN
import com.tangem.utils.converter.Converter
import com.tangem.utils.extensions.orZero
import java.math.BigDecimal
@ -64,7 +65,7 @@ internal class TokenItemStateConverter(
private fun CryptoCurrencyStatus.getFormattedAmount(): String {
val yieldBalance = (value.yieldBalance as? YieldBalance.Data)?.getTotalStakingBalance().orZero()
val amount = value.amount?.plus(yieldBalance) ?: return TokenItemState.UNKNOWN_AMOUNT_SIGN
val amount = value.amount?.plus(yieldBalance) ?: return DASH_SIGN
return BigDecimalFormatter.formatCryptoAmount(amount, currency.symbol, currency.decimals)
}
@ -72,7 +73,7 @@ internal class TokenItemStateConverter(
private fun CryptoCurrencyStatus.getFormattedFiatAmount(): String {
val yieldBalance = (value.yieldBalance as? YieldBalance.Data)?.getTotalStakingBalance().orZero()
val fiatYieldBalance = value.fiatRate?.times(yieldBalance).orZero()
val fiatAmount = value.fiatAmount?.plus(fiatYieldBalance) ?: return TokenItemState.UNKNOWN_AMOUNT_SIGN
val fiatAmount = value.fiatAmount?.plus(fiatYieldBalance) ?: return DASH_SIGN
val appCurrency = appCurrencyProvider()
return BigDecimalFormatter.formatFiatAmount(fiatAmount, appCurrency.code, appCurrency.symbol)

View file

@ -9,6 +9,8 @@ import com.tangem.core.ui.utils.toTimeFormat
import com.tangem.domain.txhistory.models.TxHistoryItem
import com.tangem.feature.wallet.impl.R
import com.tangem.feature.wallet.presentation.wallet.viewmodels.intents.WalletClickIntents
import com.tangem.utils.StringsSigns.MINUS
import com.tangem.utils.StringsSigns.PLUS
import com.tangem.utils.converter.Converter
import com.tangem.utils.toBriefAddressFormat
import com.tangem.utils.toFormattedCurrencyString
@ -96,7 +98,7 @@ internal class TxHistoryItemStateConverter(
private fun TxHistoryItem.getAmount(): String {
val prefix = when (status) {
TxHistoryItem.TransactionStatus.Failed -> ""
else -> if (isOutgoing) "-" else "+"
else -> if (isOutgoing) MINUS else PLUS
}
return prefix + amount.toFormattedCurrencyString(currency = symbol, decimals = decimals)
}

View file

@ -9,7 +9,7 @@ import com.tangem.domain.visa.model.VisaCurrency
import com.tangem.domain.visa.model.VisaTxHistoryItem
import com.tangem.feature.wallet.impl.R
import com.tangem.feature.wallet.presentation.wallet.viewmodels.intents.VisaWalletIntents
import com.tangem.utils.Strings
import com.tangem.utils.StringsSigns
import com.tangem.utils.converter.Converter
import org.joda.time.DateTimeZone
@ -21,7 +21,7 @@ internal class VisaTxHistoryItemStateConverter(
override fun convert(value: VisaTxHistoryItem): TransactionState {
val localDate = value.date.withZone(DateTimeZone.getDefault())
val time = DateTimeFormatters.formatDate(localDate, DateTimeFormatters.timeFormatter)
val subtitle = "$time ${Strings.DOT} ${value.status.capitalize()}"
val subtitle = "$time ${StringsSigns.DOT} ${value.status.capitalize()}"
return TransactionState.Content(
txHash = value.id,

View file

@ -53,7 +53,7 @@ import com.tangem.core.ui.res.TangemThemePreview
import com.tangem.feature.wallet.impl.R
import com.tangem.feature.wallet.presentation.common.WalletPreviewData
import com.tangem.feature.wallet.presentation.wallet.state.model.WalletCardState
import com.tangem.utils.Strings
import com.tangem.utils.StringsSigns
private const val HALF_OF_ITEM_WIDTH = 0.5
@ -291,7 +291,7 @@ private fun Balance(state: WalletCardState, isBalanceHidden: Boolean, modifier:
when (walletCardState) {
is WalletCardState.Content -> {
ResizableText(
text = if (isBalanceHidden) Strings.STARS else walletCardState.balance,
text = if (isBalanceHidden) StringsSigns.STARS else walletCardState.balance,
fontSizeRange = FontSizeRange(min = 16.sp, max = TangemTheme.typography.h2.fontSize),
modifier = Modifier.defaultMinSize(minHeight = TangemTheme.dimens.size32),
color = TangemTheme.colors.text.primary1,