From 45229675f2fad1ee98e8b73644e128d19862d45d Mon Sep 17 00:00:00 2001 From: Tangem Date: Mon, 9 Oct 2023 10:43:48 +0300 Subject: [PATCH] Updated on 2026-08-14 --- .../repository/DefaultCurrenciesRepository.kt | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/data/tokens/src/main/kotlin/com/tangem/data/tokens/repository/DefaultCurrenciesRepository.kt b/data/tokens/src/main/kotlin/com/tangem/data/tokens/repository/DefaultCurrenciesRepository.kt index 1e2a48616d..aa3d99f8a1 100644 --- a/data/tokens/src/main/kotlin/com/tangem/data/tokens/repository/DefaultCurrenciesRepository.kt +++ b/data/tokens/src/main/kotlin/com/tangem/data/tokens/repository/DefaultCurrenciesRepository.kt @@ -280,7 +280,7 @@ internal class DefaultCurrenciesRepository( ) userTokensStore.store(userWallet.walletId, response) - fetchUserMarketCoinsByIds(userWalletId, response) + fetchExchangeableUserMarketCoinsByIds(userWalletId, response) } private suspend fun storeAndPushTokens(userWalletId: UserWalletId, response: UserTokensResponse) { @@ -288,10 +288,15 @@ internal class DefaultCurrenciesRepository( tangemTechApi.saveUserTokens(userWalletId.stringValue, response) } - private suspend fun fetchUserMarketCoinsByIds(userWalletId: UserWalletId, userTokens: UserTokensResponse) { + private suspend fun fetchExchangeableUserMarketCoinsByIds( + userWalletId: UserWalletId, + userTokens: UserTokensResponse, + ) { try { - val networkIds = userTokens.tokens.joinToString(separator = ",") { it.networkId } - val response = tangemTechApi.getCoins(networkIds = networkIds) + val networkIds = userTokens.tokens + .distinctBy { it.networkId } + .joinToString(separator = ",") { it.networkId } + val response = tangemTechApi.getCoins(networkIds = networkIds, exchangeable = true) userMarketCoinsStore.store(userWalletId, response) } catch (e: Throwable) {