Updated on 2026-08-14

This commit is contained in:
Tangem 2025-09-02 16:52:24 +05:00
parent 78698a0fe7
commit b623a457d9

View file

@ -17,11 +17,7 @@ import com.tangem.datasource.di.NetworkMoshi
import com.tangem.datasource.exchangeservice.swap.ExpressUtils
import com.tangem.datasource.local.preferences.AppPreferencesStore
import com.tangem.domain.express.ExpressRepository
import com.tangem.domain.express.models.ExpressError
import com.tangem.domain.express.models.ExpressOperationType
import com.tangem.domain.express.models.ExpressProvider
import com.tangem.domain.express.models.ExpressProviderType
import com.tangem.domain.express.models.ExpressRateType
import com.tangem.domain.express.models.*
import com.tangem.domain.models.currency.CryptoCurrency
import com.tangem.domain.models.currency.CryptoCurrencyStatus
import com.tangem.domain.models.network.NetworkStatus
@ -97,13 +93,15 @@ internal class DefaultSwapRepositoryV2 @Inject constructor(
it.currency.network.backendId == pair.to.network
}
if (statusFrom != null && statusTo != null) {
val mappedProviders = pair.providers.mapNotNull {
mappedProviders[it.providerId]
}
if (statusFrom != null && statusTo != null && mappedProviders.isNotEmpty()) {
SwapPairModel(
from = statusFrom,
to = statusTo,
providers = pair.providers.mapNotNull {
mappedProviders[it.providerId]
},
providers = mappedProviders,
)
} else {
null
@ -152,13 +150,15 @@ internal class DefaultSwapRepositoryV2 @Inject constructor(
val currencyStatusFrom = createSendWithSwapCryptoCurrencyStatus(statusFromDeferred.await())
val currencyStatusTo = createSendWithSwapCryptoCurrencyStatus(statusToDeferred.await())
if (currencyStatusFrom != null && currencyStatusTo != null) {
val mappedProvider = pair.providers.mapNotNull {
mappedProviders[it.providerId]
}
if (currencyStatusFrom != null && currencyStatusTo != null && mappedProvider.isNotEmpty()) {
SwapPairModel(
from = currencyStatusFrom,
to = currencyStatusTo,
providers = pair.providers.mapNotNull {
mappedProviders[it.providerId]
},
providers = mappedProvider,
)
} else {
null