diff --git a/data/onramp/src/main/java/com/tangem/data/onramp/DefaultHotCryptoRepository.kt b/data/onramp/src/main/java/com/tangem/data/onramp/DefaultHotCryptoRepository.kt index 37f078c19b..1844c1e6c5 100644 --- a/data/onramp/src/main/java/com/tangem/data/onramp/DefaultHotCryptoRepository.kt +++ b/data/onramp/src/main/java/com/tangem/data/onramp/DefaultHotCryptoRepository.kt @@ -2,6 +2,8 @@ package com.tangem.data.onramp import com.tangem.blockchain.common.Blockchain import com.tangem.blockchainsdk.utils.ExcludedBlockchains +import com.tangem.blockchainsdk.utils.NEW_POLYGON_NAME +import com.tangem.blockchainsdk.utils.OLD_POLYGON_NAME import com.tangem.blockchainsdk.utils.fromNetworkId import com.tangem.core.analytics.api.AnalyticsEventHandler import com.tangem.core.analytics.models.event.MainScreenAnalyticsEvent @@ -141,9 +143,11 @@ internal class DefaultHotCryptoRepository( val (userWallet, tokens) = walletWithTokens return copy( - tokens = this.tokens.filter { hotToken -> - !tokens.hasAlreadyAdded(hotToken) && userWallet.canHandleHotCrypto(hotToken) - }, + tokens = this.tokens + .filter { hotToken -> + !tokens.hasAlreadyAdded(hotToken) && userWallet.canHandleHotCrypto(hotToken) + } + .applyTokensIdMigrations(), ) } @@ -154,6 +158,16 @@ internal class DefaultHotCryptoRepository( } } + private fun List.applyTokensIdMigrations(): List { + return this.map { + if (it.id == OLD_POLYGON_NAME) { + it.copy(id = NEW_POLYGON_NAME) + } else { + it + } + } + } + // TODO: [REDACTED_JIRA] private fun UserWallet.canHandleHotCrypto(hotToken: HotCryptoResponse.Token): Boolean { val isToken = hotToken.contractAddress != null && hotToken.decimalCount != null