Updated on 2026-08-14

This commit is contained in:
Tangem 2023-08-18 17:28:15 +03:00
parent c237a4e50c
commit 3e6691a106
4 changed files with 17 additions and 2 deletions

View file

@ -14,6 +14,7 @@ import com.tangem.blockchain.common.Blockchain
import com.tangem.core.analytics.api.AnalyticsEventHandler
import com.tangem.core.ui.extensions.getActiveIconRes
import com.tangem.domain.common.TapWorkarounds.useOldStyleDerivation
import com.tangem.domain.common.extensions.canHandleBlockchain
import com.tangem.domain.common.extensions.canHandleToken
import com.tangem.domain.common.extensions.fromNetworkId
import com.tangem.domain.common.util.cardTypesResolver
@ -309,7 +310,7 @@ internal class TokensListViewModel @Inject constructor(
toggledNetwork.changeToggleState()
}
} else {
if (isUnsupportedToken(blockchain)) {
if (isUnsupportedBlockchain(blockchain)) {
router.openUnsupportedNetworkAlert(blockchain)
} else {
analyticsSender.sendWhenBlockchainAdded(blockchain)
@ -374,6 +375,15 @@ internal class TokensListViewModel @Inject constructor(
return !canHandleToken
}
private fun isUnsupportedBlockchain(blockchain: Blockchain): Boolean {
val scanResponse = reduxStateHolder.scanResponse
val canHandleToken = scanResponse?.card?.canHandleBlockchain(
blockchain = blockchain,
cardTypesResolver = scanResponse.cardTypesResolver,
) ?: false
return !canHandleToken
}
private companion object {
const val MAIN_NETWORK_LABEL = "MAIN"
}

View file

@ -53,4 +53,8 @@ fun CardDTO.supportedTokens(cardTypesResolver: CardTypesResolver): List<Blockcha
fun CardDTO.canHandleToken(blockchain: Blockchain, cardTypesResolver: CardTypesResolver): Boolean {
return this.supportedTokens(cardTypesResolver).contains(blockchain)
}
fun CardDTO.canHandleBlockchain(blockchain: Blockchain, cardTypesResolver: CardTypesResolver): Boolean {
return this.supportedBlockchains(cardTypesResolver).contains(blockchain)
}

View file

@ -57,6 +57,7 @@ fun WalletManagerFactory.makeWalletManagerForApp(
seedKey = wallet.publicKey,
derivedKey = derivedKey,
derivation = derivationParams,
curve = wallet.curve,
)
}
else -> {

View file

@ -80,7 +80,7 @@ okHttp-prettyLogging = "3.1.0"
# endregion Other libraries
# region Tangem
tangemBlockchainSdk = "release-app_4.10-321"
tangemBlockchainSdk = "release-app_4.10-324"
#tangemBlockchainSdk = "0.0.1" # Keep it! - used for local builds
tangemCardSdk = "release-app_4.10-290"
#tangemCardSdk = "0.0.1" # Keep it! - used for local builds