Updated on 2026-08-14
This commit is contained in:
parent
44cae7ffd8
commit
68a1fede86
2 changed files with 11 additions and 4 deletions
|
|
@ -153,10 +153,15 @@ internal class DefaultSwapComponent @AssistedInject constructor(
|
|||
val feePaidCryptoCurrency by remember { derivedStateOf { dataState.feePaidCryptoCurrency } }
|
||||
val shouldHideBlock by remember {
|
||||
derivedStateOf {
|
||||
dataState.amount?.parseBigDecimalOrNull().isNullOrZero() ||
|
||||
model.uiState.isInsufficientFunds ||
|
||||
dataState.selectedProvider == null ||
|
||||
dataState.getCurrentLoadedSwapState()?.permissionState !is PermissionDataState.Empty
|
||||
val isAmountEmptyOrZero = dataState.amount?.parseBigDecimalOrNull().isNullOrZero()
|
||||
val isInsufficientFunds = model.uiState.isInsufficientFunds
|
||||
val isProviderMissing = dataState.selectedProvider == null
|
||||
val loadedState = dataState.getCurrentLoadedSwapState()
|
||||
val isPermissionNotReady = loadedState?.permissionState !is PermissionDataState.Empty
|
||||
val isInTransferMode = dataState.currentTransferState != null
|
||||
val isSwapNotReady = !isInTransferMode && (isProviderMissing || isPermissionNotReady)
|
||||
|
||||
isAmountEmptyOrZero || isInsufficientFunds || isSwapNotReady
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -597,6 +597,7 @@ internal class SwapModel @Inject constructor(
|
|||
fromTokenAmount = lastAmount.value,
|
||||
)
|
||||
if (isUpdatedToTransferMode) return
|
||||
dataState = dataState.copy(currentTransferState = null)
|
||||
modelScope.launch {
|
||||
uiState = stateBuilder.createInitialLoadingState(
|
||||
uiStateHolder = uiState,
|
||||
|
|
@ -1078,6 +1079,7 @@ internal class SwapModel @Inject constructor(
|
|||
emptyAmountState = state,
|
||||
fromSwapCurrencyStatus = fromSwapCurrencyStatus,
|
||||
)
|
||||
dataState = dataState.copy(amount = "0")
|
||||
}
|
||||
|
||||
private fun setupErrorUiState(provider: SwapProvider, state: SwapState.SwapError) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue