Updated on 2026-08-14
This commit is contained in:
parent
a52c9cb106
commit
4cac26e628
4 changed files with 10 additions and 6 deletions
|
|
@ -51,6 +51,7 @@ import com.tangem.utils.coroutines.CoroutineDispatcherProvider
|
|||
import com.tangem.utils.coroutines.Debouncer
|
||||
import com.tangem.utils.coroutines.PeriodicTask
|
||||
import com.tangem.utils.coroutines.SingleTaskScheduler
|
||||
import com.tangem.utils.extensions.isZero
|
||||
import com.tangem.utils.extensions.orZero
|
||||
import com.tangem.utils.transformer.update
|
||||
import kotlinx.coroutines.async
|
||||
|
|
@ -481,6 +482,8 @@ internal class SwapAmountModel @Inject constructor(
|
|||
|
||||
val fromAmountValue = fromAmount?.amountTextField?.cryptoAmount?.value ?: return
|
||||
|
||||
if (fromAmountValue.isZero()) return
|
||||
|
||||
val swapGroups = state.swapCurrencies.getGroupWithDirection(state.swapDirection)
|
||||
|
||||
uiState.transformerUpdate(SwapQuoteLoadingStateTransformer)
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ internal class SwapAmountSetQuotesTransformer(
|
|||
|
||||
val sortedQuotes = quotes.sortedWith(SwapQuotesComparator)
|
||||
val bestQuote = findBestQuote(quotes) ?: SwapQuoteUM.Empty
|
||||
val selectedQuote = if (isSilentReload) {
|
||||
val selectedQuote = if (isSilentReload && prevState.selectedQuote !is SwapQuoteUM.Loading) {
|
||||
prevState.selectedQuote
|
||||
} else {
|
||||
(bestQuote as? SwapQuoteUM.Content)?.copy(diffPercent = DifferencePercent.Best) ?: bestQuote
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ internal object SwapQuoteLoadingStateTransformer : Transformer<SwapAmountUM> {
|
|||
}
|
||||
return prevState.copy(
|
||||
selectedQuote = SwapQuoteUM.Loading,
|
||||
isPrimaryButtonEnabled = false,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
@ -240,12 +240,12 @@ private fun SwapAmountInfo(
|
|||
SwapAmountInfoMain(amountFieldUM = amountFieldUM)
|
||||
SpacerWMax()
|
||||
AnimatedContent(
|
||||
amountUM,
|
||||
) { wrappedAmountUM ->
|
||||
if (wrappedAmountUM is SwapAmountUM.Content) {
|
||||
amountFieldUM,
|
||||
) { wrappedFieldAmountUM ->
|
||||
if (amountUM is SwapAmountUM.Content) {
|
||||
SwapAmountInfoExtra(
|
||||
amountUM = wrappedAmountUM,
|
||||
amountFieldUM = amountFieldUM,
|
||||
amountUM = amountUM,
|
||||
amountFieldUM = wrappedFieldAmountUM,
|
||||
onMaxAmountClick = onMaxAmountClick,
|
||||
onSelectTokenClick = onSelectTokenClick,
|
||||
)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue