Updated on 2026-08-14

This commit is contained in:
Tangem 2023-12-25 17:09:56 +02:00
parent 6fe140bb45
commit c170dd95d5
2 changed files with 13 additions and 14 deletions

View file

@ -98,12 +98,8 @@ internal class StateBuilder(
if (uiStateHolder.sendCardData !is SwapCardState.SwapCardData) return uiStateHolder if (uiStateHolder.sendCardData !is SwapCardState.SwapCardData) return uiStateHolder
return uiStateHolder.copy( return uiStateHolder.copy(
sendCardData = SwapCardState.SwapCardData( sendCardData = SwapCardState.SwapCardData(
type = TransactionCardType.ReadOnly( type = requireNotNull(uiStateHolder.sendCardData.type as? TransactionCardType.Inputtable),
headerResId = R.string.exchange_send_view_header, amountTextFieldValue = null,
),
amountTextFieldValue = TextFieldValue(
text = "0",
),
amountEquivalent = "0 ${appCurrencyProvider.invoke().symbol}", amountEquivalent = "0 ${appCurrencyProvider.invoke().symbol}",
token = fromToken, token = fromToken,
tokenIconUrl = uiStateHolder.sendCardData.tokenIconUrl, tokenIconUrl = uiStateHolder.sendCardData.tokenIconUrl,

View file

@ -692,19 +692,22 @@ internal class SwapViewModel @Inject constructor(
private fun onAmountChanged(value: String) { private fun onAmountChanged(value: String) {
val fromToken = dataState.fromCryptoCurrency val fromToken = dataState.fromCryptoCurrency
val toToken = dataState.toCryptoCurrency val toToken = dataState.toCryptoCurrency
if (fromToken != null && toToken != null) { if (fromToken != null) {
val decimals = fromToken.currency.decimals val decimals = fromToken.currency.decimals
val cutValue = cutAmountWithDecimals(decimals, value) val cutValue = cutAmountWithDecimals(decimals, value)
lastAmount.value = cutValue lastAmount.value = cutValue
uiState = uiState =
stateBuilder.updateSwapAmount(uiState, inputNumberFormatter.formatWithThousands(cutValue, decimals)) stateBuilder.updateSwapAmount(uiState, inputNumberFormatter.formatWithThousands(cutValue, decimals))
amountDebouncer.debounce(viewModelScope, DEBOUNCE_AMOUNT_DELAY) {
startLoadingQuotes( if (toToken != null) {
fromToken = fromToken, amountDebouncer.debounce(viewModelScope, DEBOUNCE_AMOUNT_DELAY) {
toToken = toToken, startLoadingQuotes(
amount = lastAmount.value, fromToken = fromToken,
toProvidersList = findSwapProviders(fromToken, toToken), toToken = toToken,
) amount = lastAmount.value,
toProvidersList = findSwapProviders(fromToken, toToken),
)
}
} }
} }
} }