diff --git a/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/confirm/model/SendConfirmModel.kt b/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/confirm/model/SendConfirmModel.kt index cbc35be461..8b0a2cad19 100644 --- a/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/confirm/model/SendConfirmModel.kt +++ b/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/confirm/model/SendConfirmModel.kt @@ -430,7 +430,7 @@ internal class SendConfirmModel @Inject constructor( flow = uiState, flow2 = params.currentRoute, transform = { state, route -> state to route }, - ).filter { it.second is SendRoute.Confirm }.onEach { (state, _) -> + ).filter { it.second is CommonSendRoute.Confirm }.onEach { (state, _) -> val amountUM = state.amountUM as? AmountState.Data val confirmUM = state.confirmUM params.callback.onResult( diff --git a/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/model/SendModel.kt b/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/model/SendModel.kt index a2c5df9f21..06a72af707 100644 --- a/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/model/SendModel.kt +++ b/features/send-v2/impl/src/main/java/com/tangem/features/send/v2/send/model/SendModel.kt @@ -29,14 +29,12 @@ import com.tangem.domain.tokens.model.CryptoCurrencyStatus import com.tangem.domain.wallets.models.UserWallet import com.tangem.domain.wallets.usecase.GetUserWalletUseCase import com.tangem.features.send.v2.api.SendComponent -import com.tangem.features.send.v2.common.NavigationUM import com.tangem.features.send.v2.common.CommonSendRoute import com.tangem.features.send.v2.common.PredefinedValues import com.tangem.features.send.v2.common.ui.state.ConfirmUM import com.tangem.features.send.v2.common.ui.state.NavigationUM import com.tangem.features.send.v2.send.confirm.SendConfirmComponent import com.tangem.features.send.v2.send.confirm.model.SendConfirmAlertFactory -import com.tangem.features.send.v2.send.confirm.ui.state.ConfirmUM import com.tangem.features.send.v2.send.ui.state.SendUM import com.tangem.features.send.v2.subcomponents.amount.SendAmountComponent import com.tangem.features.send.v2.subcomponents.amount.SendAmountUpdateQRTrigger @@ -115,7 +113,7 @@ internal class SendModel @Inject constructor( } override fun onAmountResult(amountUM: AmountState) { - predefinedAmountValue = null // reset predefined amount + resetPredefinedAmount() _uiState.update { it.copy(amountUM = amountUM) } } @@ -124,10 +122,20 @@ internal class SendModel @Inject constructor( } override fun onResult(sendUM: SendUM) { - predefinedAmountValue = null // reset predefined amount + resetPredefinedAmount() _uiState.update { sendUM } } + private fun resetPredefinedAmount() { + // reset predefined amount + val internalPredefinedValues = predefinedValues + predefinedValues = when (internalPredefinedValues) { + is PredefinedValues.Content.Deeplink -> internalPredefinedValues.copy(amount = "") + is PredefinedValues.Content.QrCode -> internalPredefinedValues.copy(amount = "") + PredefinedValues.Empty -> internalPredefinedValues + } + } + private fun initAppCurrency() { modelScope.launch { appCurrency = getSelectedAppCurrencyUseCase.invokeSync().getOrElse { AppCurrency.Default } @@ -236,9 +244,9 @@ internal class SendModel @Inject constructor( val parsedQrCode = parseQrCodeUseCase(address, cryptoCurrency).getOrNull() // Decompose component can be active or inactive depending on its state and navigation stack // If it is in inactive state use parameter to pass value to amount component - val amount = parsedQrCode?.amount?.parseBigDecimal(cryptoCurrency.decimals).orEmpty() + val amount = parsedQrCode?.amount?.parseBigDecimal(cryptoCurrency.decimals) predefinedValues = PredefinedValues.Content.QrCode( - amount = amount, + amount = amount.orEmpty(), address = parsedQrCode?.address.orEmpty(), memo = parsedQrCode?.memo, ) diff --git a/gradle/tangem_dependencies.toml b/gradle/tangem_dependencies.toml index ec47aff56d..bcba22609f 100644 --- a/gradle/tangem_dependencies.toml +++ b/gradle/tangem_dependencies.toml @@ -5,7 +5,7 @@ # https://github.com/tangem/tangem-sdk-android/ # https://github.com/tangem/vico -tangemBlockchainSdk = "develop-1034" +tangemBlockchainSdk = "develop-1040" #tangemBlockchainSdk = "0.0.1" # Keep it! - used for local builds tangemCardSdk = "develop-455" #tangemCardSdk = "0.0.1" # Keep it! - used for local builds ^