From 789b5546f199694053f2815333d87b6c1dff0fdc Mon Sep 17 00:00:00 2001 From: Tangem Date: Tue, 9 Jun 2026 17:10:09 +0400 Subject: [PATCH] Updated on 2026-08-14 --- .../exchangeServices/moonpay/MoonpayBlockchainMapping.kt | 1 + .../com/tangem/common/ui/extensions/BlockchainIcons.kt | 2 ++ .../tangem/common/ui/extensions/BlockchainIconsTest.kt | 8 ++++++-- .../com/tangem/data/common/network/NetworkFactory.kt | 1 + .../data/onramp/legacy/MercuryoBlockchainMapping.kt | 1 + .../com/tangem/domain/card/common/extensions/CardSdk.kt | 4 +++- .../com/tangem/domain/card/configs/Wallet2CardConfig.kt | 2 ++ .../tangem/domain/card/configs/Wallet2CardConfigTest.kt | 2 ++ gradle/tangem_dependencies.toml | 2 +- .../java/com/tangem/blockchainsdk/utils/Blockchain.kt | 5 +++++ .../tangem/lib/crypto/derivation/AccountNodeRecognizer.kt | 2 ++ 11 files changed, 26 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/tangem/tap/network/exchangeServices/moonpay/MoonpayBlockchainMapping.kt b/app/src/main/java/com/tangem/tap/network/exchangeServices/moonpay/MoonpayBlockchainMapping.kt index 1ff346fa44..3a6c3d45c0 100644 --- a/app/src/main/java/com/tangem/tap/network/exchangeServices/moonpay/MoonpayBlockchainMapping.kt +++ b/app/src/main/java/com/tangem/tap/network/exchangeServices/moonpay/MoonpayBlockchainMapping.kt @@ -163,5 +163,6 @@ internal val Blockchain.moonPaySupportedCurrency: MoonPaySupportedCurrency? Linea, LineaTestnet -> null ArbitrumNova -> null Plasma, PlasmaTestnet -> null + SeiEvm, SeiEvmTestnet -> null Monad, MonadTestnet -> null } \ No newline at end of file diff --git a/common/ui/src/main/java/com/tangem/common/ui/extensions/BlockchainIcons.kt b/common/ui/src/main/java/com/tangem/common/ui/extensions/BlockchainIcons.kt index 4b128eff63..a8bd621e00 100644 --- a/common/ui/src/main/java/com/tangem/common/ui/extensions/BlockchainIcons.kt +++ b/common/ui/src/main/java/com/tangem/common/ui/extensions/BlockchainIcons.kt @@ -225,6 +225,8 @@ private fun iconSetOf(blockchain: Blockchain): IconSet? = when (blockchain) { -> IconSet(active = R.drawable.img_scroll_22, greyedOut = R.drawable.ic_scroll_22) Blockchain.Sei, Blockchain.SeiTestnet, + Blockchain.SeiEvm, + Blockchain.SeiEvmTestnet, -> IconSet(active = R.drawable.img_sei_22, greyedOut = R.drawable.ic_sei_22) Blockchain.Shibarium, Blockchain.ShibariumTestnet, diff --git a/common/ui/src/test/kotlin/com/tangem/common/ui/extensions/BlockchainIconsTest.kt b/common/ui/src/test/kotlin/com/tangem/common/ui/extensions/BlockchainIconsTest.kt index 016c6ac306..8801424c6a 100644 --- a/common/ui/src/test/kotlin/com/tangem/common/ui/extensions/BlockchainIconsTest.kt +++ b/common/ui/src/test/kotlin/com/tangem/common/ui/extensions/BlockchainIconsTest.kt @@ -106,7 +106,9 @@ internal class BlockchainIconsTest { Blockchain.Radiant -> R.drawable.img_radiant_22 Blockchain.Ravencoin, Blockchain.RavencoinTestnet -> R.drawable.img_ravencoin_22 Blockchain.Scroll, Blockchain.ScrollTestnet -> R.drawable.img_scroll_22 - Blockchain.Sei, Blockchain.SeiTestnet -> R.drawable.img_sei_22 + Blockchain.Sei, Blockchain.SeiTestnet, + Blockchain.SeiEvm, Blockchain.SeiEvmTestnet, + -> R.drawable.img_sei_22 Blockchain.Shibarium, Blockchain.ShibariumTestnet -> R.drawable.img_shibarium_22 Blockchain.Solana, Blockchain.SolanaTestnet -> R.drawable.img_solana_22 Blockchain.Sonic, Blockchain.SonicTestnet -> R.drawable.img_sonic_22 @@ -226,7 +228,9 @@ internal class BlockchainIconsTest { Blockchain.Radiant -> R.drawable.ic_radiant_22 Blockchain.Ravencoin, Blockchain.RavencoinTestnet -> R.drawable.ic_ravencoin_22 Blockchain.Scroll, Blockchain.ScrollTestnet -> R.drawable.ic_scroll_22 - Blockchain.Sei, Blockchain.SeiTestnet -> R.drawable.ic_sei_22 + Blockchain.Sei, Blockchain.SeiTestnet, + Blockchain.SeiEvm, Blockchain.SeiEvmTestnet, + -> R.drawable.ic_sei_22 Blockchain.Shibarium, Blockchain.ShibariumTestnet -> R.drawable.ic_shibarium_22 Blockchain.Solana, Blockchain.SolanaTestnet -> R.drawable.ic_solana_16 Blockchain.Sonic, Blockchain.SonicTestnet -> R.drawable.ic_sonic_22 diff --git a/data/common/src/main/kotlin/com/tangem/data/common/network/NetworkFactory.kt b/data/common/src/main/kotlin/com/tangem/data/common/network/NetworkFactory.kt index 4d9c4d9cdc..948e3b63c9 100644 --- a/data/common/src/main/kotlin/com/tangem/data/common/network/NetworkFactory.kt +++ b/data/common/src/main/kotlin/com/tangem/data/common/network/NetworkFactory.kt @@ -375,6 +375,7 @@ class NetworkFactory @Inject constructor( Blockchain.Linea, Blockchain.LineaTestnet, Blockchain.ArbitrumNova, Blockchain.Plasma, Blockchain.PlasmaTestnet, + Blockchain.SeiEvm, Blockchain.SeiEvmTestnet, Blockchain.Monad, Blockchain.MonadTestnet, -> Network.TransactionExtrasType.NONE // endregion diff --git a/data/onramp/src/main/java/com/tangem/data/onramp/legacy/MercuryoBlockchainMapping.kt b/data/onramp/src/main/java/com/tangem/data/onramp/legacy/MercuryoBlockchainMapping.kt index c1bf85879a..1f7d0d2c90 100644 --- a/data/onramp/src/main/java/com/tangem/data/onramp/legacy/MercuryoBlockchainMapping.kt +++ b/data/onramp/src/main/java/com/tangem/data/onramp/legacy/MercuryoBlockchainMapping.kt @@ -163,6 +163,7 @@ public val Blockchain.mercuryoNetwork: String? Blockchain.Linea, Blockchain.LineaTestnet -> null Blockchain.ArbitrumNova -> null Blockchain.Plasma, Blockchain.PlasmaTestnet -> null + Blockchain.SeiEvm, Blockchain.SeiEvmTestnet -> null Blockchain.Monad, Blockchain.MonadTestnet -> null } } \ No newline at end of file diff --git a/domain/card/src/main/kotlin/com/tangem/domain/card/common/extensions/CardSdk.kt b/domain/card/src/main/kotlin/com/tangem/domain/card/common/extensions/CardSdk.kt index 4be35ce782..399cebd023 100644 --- a/domain/card/src/main/kotlin/com/tangem/domain/card/common/extensions/CardSdk.kt +++ b/domain/card/src/main/kotlin/com/tangem/domain/card/common/extensions/CardSdk.kt @@ -65,7 +65,9 @@ fun CardDTO.supportedBlockchains( */ private fun CardDTO.isBlockchainUnsupported(blockchain: Blockchain): Boolean { return when (blockchain) { - Blockchain.Quai, Blockchain.QuaiTestnet -> { + Blockchain.Quai, Blockchain.QuaiTestnet, + Blockchain.SeiEvm, Blockchain.SeiEvmTestnet, + -> { firmwareVersion <= FirmwareVersion.HDWalletAvailable } else -> false diff --git a/domain/card/src/main/kotlin/com/tangem/domain/card/configs/Wallet2CardConfig.kt b/domain/card/src/main/kotlin/com/tangem/domain/card/configs/Wallet2CardConfig.kt index a545214f6f..549b8b6f2b 100644 --- a/domain/card/src/main/kotlin/com/tangem/domain/card/configs/Wallet2CardConfig.kt +++ b/domain/card/src/main/kotlin/com/tangem/domain/card/configs/Wallet2CardConfig.kt @@ -217,6 +217,8 @@ data object Wallet2CardConfig : CardConfig { Blockchain.ArbitrumNova -> EllipticCurve.Secp256k1 Blockchain.Plasma -> EllipticCurve.Secp256k1 Blockchain.PlasmaTestnet -> EllipticCurve.Secp256k1 + Blockchain.SeiEvm -> EllipticCurve.Secp256k1 + Blockchain.SeiEvmTestnet -> EllipticCurve.Secp256k1 Blockchain.Monad -> EllipticCurve.Secp256k1 Blockchain.MonadTestnet -> EllipticCurve.Secp256k1 } diff --git a/domain/card/src/test/java/com/tangem/domain/card/configs/Wallet2CardConfigTest.kt b/domain/card/src/test/java/com/tangem/domain/card/configs/Wallet2CardConfigTest.kt index 9ef3985637..7a0123ec08 100644 --- a/domain/card/src/test/java/com/tangem/domain/card/configs/Wallet2CardConfigTest.kt +++ b/domain/card/src/test/java/com/tangem/domain/card/configs/Wallet2CardConfigTest.kt @@ -173,6 +173,8 @@ class Wallet2CardConfigTest { Blockchain.ArbitrumNova to EllipticCurve.Secp256k1, Blockchain.Plasma to EllipticCurve.Secp256k1, Blockchain.PlasmaTestnet to EllipticCurve.Secp256k1, + Blockchain.SeiEvm to EllipticCurve.Secp256k1, + Blockchain.SeiEvmTestnet to EllipticCurve.Secp256k1, Blockchain.Monad to EllipticCurve.Secp256k1, Blockchain.MonadTestnet to EllipticCurve.Secp256k1, ) diff --git a/gradle/tangem_dependencies.toml b/gradle/tangem_dependencies.toml index 962be99d3f..ad8fd0d062 100644 --- a/gradle/tangem_dependencies.toml +++ b/gradle/tangem_dependencies.toml @@ -5,7 +5,7 @@ # https://github.com/tangem/tangem-sdk-android/ # https://github.com/tangem/vico -tangemBlockchainSdk = "releases-5.38-1551" +tangemBlockchainSdk = "releases-5.38-1560" #tangemBlockchainSdk = "0.0.1" # Keep it! - used for local builds tangemCardSdk = "releases-5.38-615" #tangemCardSdk = "0.0.1" # Keep it! - used for local builds ^ diff --git a/libs/blockchain-sdk/src/main/java/com/tangem/blockchainsdk/utils/Blockchain.kt b/libs/blockchain-sdk/src/main/java/com/tangem/blockchainsdk/utils/Blockchain.kt index 216070afad..e708b13dda 100644 --- a/libs/blockchain-sdk/src/main/java/com/tangem/blockchainsdk/utils/Blockchain.kt +++ b/libs/blockchain-sdk/src/main/java/com/tangem/blockchainsdk/utils/Blockchain.kt @@ -174,6 +174,8 @@ fun Blockchain.Companion.fromNetworkId(networkId: String): Blockchain? { "arbitrum-nova" -> Blockchain.ArbitrumNova "plasma" -> Blockchain.Plasma "plasma/test" -> Blockchain.PlasmaTestnet + "sei-v2" -> Blockchain.SeiEvm + "sei-v2/test" -> Blockchain.SeiEvmTestnet "monad" -> Blockchain.Monad "monad/test" -> Blockchain.MonadTestnet else -> null @@ -347,6 +349,8 @@ fun Blockchain.toNetworkId(): String { Blockchain.ArbitrumNova -> "arbitrum-nova" Blockchain.Plasma -> "plasma" Blockchain.PlasmaTestnet -> "plasma/test" + Blockchain.SeiEvm -> "sei-v2" + Blockchain.SeiEvmTestnet -> "sei-v2/test" Blockchain.Monad -> "monad" Blockchain.MonadTestnet -> "monad/test" } @@ -457,6 +461,7 @@ fun Blockchain.toCoinId(): String { Blockchain.Linea, Blockchain.LineaTestnet -> "linea-ethereum" Blockchain.ArbitrumNova -> "arbitrum-nova-ethereum" Blockchain.Plasma, Blockchain.PlasmaTestnet -> "plasma" + Blockchain.SeiEvm, Blockchain.SeiEvmTestnet -> "sei-v2" Blockchain.Monad, Blockchain.MonadTestnet -> "monad" } } diff --git a/libs/crypto/src/main/java/com/tangem/lib/crypto/derivation/AccountNodeRecognizer.kt b/libs/crypto/src/main/java/com/tangem/lib/crypto/derivation/AccountNodeRecognizer.kt index 026215cd7c..f5579d8077 100644 --- a/libs/crypto/src/main/java/com/tangem/lib/crypto/derivation/AccountNodeRecognizer.kt +++ b/libs/crypto/src/main/java/com/tangem/lib/crypto/derivation/AccountNodeRecognizer.kt @@ -177,6 +177,7 @@ class AccountNodeRecognizer(private val blockchain: Blockchain) { Blockchain.ArbitrumNova, Blockchain.Quai, Blockchain.Plasma, + Blockchain.SeiEvm, Blockchain.Monad, -> true Blockchain.Nexa, // unsupported network @@ -253,6 +254,7 @@ class AccountNodeRecognizer(private val blockchain: Blockchain) { Blockchain.QuaiTestnet, Blockchain.LineaTestnet, Blockchain.PlasmaTestnet, + Blockchain.SeiEvmTestnet, Blockchain.MonadTestnet, -> false // endregion