Updated on 2026-08-14
This commit is contained in:
parent
6e267fc067
commit
8f4a8b18ef
3 changed files with 16 additions and 10 deletions
|
|
@ -24,7 +24,11 @@ data class SwapPairProvider(
|
|||
|
||||
@Json(name = "rateTypes")
|
||||
val rateTypes: List<RateType>,
|
||||
)
|
||||
) {
|
||||
fun hasOnlyFixedRateType(): Boolean {
|
||||
return rateTypes.isNotEmpty() && rateTypes.all { it == RateType.FIXED }
|
||||
}
|
||||
}
|
||||
|
||||
@JsonClass(generateAdapter = false)
|
||||
enum class RateType {
|
||||
|
|
|
|||
|
|
@ -94,9 +94,10 @@ internal class DefaultSwapRepositoryV2 @Inject constructor(
|
|||
currencyStatus.currency.network.backendId == pair.to.network
|
||||
}
|
||||
|
||||
val mappedProviders = pair.providers.mapNotNull {
|
||||
expressProviders[it.providerId]
|
||||
}.filterYieldSupplyProvider(statusFrom)
|
||||
val mappedProviders = pair.providers
|
||||
.filterNot { it.hasOnlyFixedRateType() }
|
||||
.mapNotNull { expressProviders[it.providerId] }
|
||||
.filterYieldSupplyProvider(statusFrom)
|
||||
|
||||
if (statusFrom != null && statusTo != null && mappedProviders.isNotEmpty()) {
|
||||
SwapPairModel(
|
||||
|
|
@ -151,9 +152,10 @@ internal class DefaultSwapRepositoryV2 @Inject constructor(
|
|||
val currencyStatusFrom = createSendWithSwapCryptoCurrencyStatus(statusFromDeferred.await())
|
||||
val currencyStatusTo = createSendWithSwapCryptoCurrencyStatus(statusToDeferred.await())
|
||||
|
||||
val mappedProvider = pair.providers.mapNotNull {
|
||||
mappedProviders[it.providerId]
|
||||
}.filterYieldSupplyProvider(currencyStatusFrom)
|
||||
val mappedProvider = pair.providers
|
||||
.filterNot { it.hasOnlyFixedRateType() }
|
||||
.mapNotNull { mappedProviders[it.providerId] }
|
||||
.filterYieldSupplyProvider(currencyStatusFrom)
|
||||
|
||||
if (currencyStatusFrom != null && currencyStatusTo != null && mappedProvider.isNotEmpty()) {
|
||||
SwapPairModel(
|
||||
|
|
|
|||
|
|
@ -25,9 +25,9 @@ class SwapPairInfoConverter : Converter<SwapPairsWithProviders, PairsWithProvide
|
|||
contractAddress = pair.to.contractAddress,
|
||||
network = pair.to.network,
|
||||
),
|
||||
providers = pair.providers.mapNotNull {
|
||||
convertProvider(it, providersAdditionalMap)
|
||||
},
|
||||
providers = pair.providers
|
||||
.filterNot { it.hasOnlyFixedRateType() }
|
||||
.mapNotNull { convertProvider(it, providersAdditionalMap) },
|
||||
)
|
||||
}
|
||||
return PairsWithProviders(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue