diff --git a/app/src/main/assets/tangem-app-config b/app/src/main/assets/tangem-app-config index a3549d3e15..af8b453fd2 160000 --- a/app/src/main/assets/tangem-app-config +++ b/app/src/main/assets/tangem-app-config @@ -1 +1 @@ -Subproject commit a3549d3e156d3e1929649605798bf0239b4a29a0 +Subproject commit af8b453fd25b29d949c05302ec282511dc2614b8 diff --git a/app/src/main/java/com/tangem/tap/network/exchangeServices/mercuryo/MercuryoBlockchainMapping.kt b/app/src/main/java/com/tangem/tap/network/exchangeServices/mercuryo/MercuryoBlockchainMapping.kt index 8a647aeee9..3c20cb9f8e 100644 --- a/app/src/main/java/com/tangem/tap/network/exchangeServices/mercuryo/MercuryoBlockchainMapping.kt +++ b/app/src/main/java/com/tangem/tap/network/exchangeServices/mercuryo/MercuryoBlockchainMapping.kt @@ -153,6 +153,8 @@ internal val Blockchain.mercuryoNetwork: String? Blockchain.Bitrock, Blockchain.BitrockTestnet -> null Blockchain.Sonic, Blockchain.SonicTestnet -> null Blockchain.ApeChain, Blockchain.ApeChainTestnet -> null + Blockchain.Scroll, Blockchain.ScrollTestnet -> null + Blockchain.ZkLinkNova, Blockchain.ZkLinkNovaTestnet -> null Blockchain.KaspaTestnet -> null } } \ No newline at end of file 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 aa3442e13d..a0f0c7f157 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 @@ -154,5 +154,7 @@ internal val Blockchain.moonPaySupportedCurrency: MoonPaySupportedCurrency? Bitrock, BitrockTestnet -> null Sonic, SonicTestnet -> null ApeChain, ApeChainTestnet -> null + Scroll, ScrollTestnet -> null + ZkLinkNova, ZkLinkNovaTestnet -> null KaspaTestnet -> null } \ No newline at end of file diff --git a/core/config-toggles/src/main/assets/configs/excluded_blockchains_config.json b/core/config-toggles/src/main/assets/configs/excluded_blockchains_config.json index f3fc207299..11acf26497 100644 --- a/core/config-toggles/src/main/assets/configs/excluded_blockchains_config.json +++ b/core/config-toggles/src/main/assets/configs/excluded_blockchains_config.json @@ -26,5 +26,13 @@ { "name": "alephium", "version": "5.21.0" + }, + { + "name": "scroll", + "version": "undefined" + }, + { + "name": "zklink", + "version": "undefined" } ] \ No newline at end of file diff --git a/core/ui/src/main/java/com/tangem/core/ui/extensions/BlockchainIcons.kt b/core/ui/src/main/java/com/tangem/core/ui/extensions/BlockchainIcons.kt index f3a42975bc..44c9a4dd6d 100644 --- a/core/ui/src/main/java/com/tangem/core/ui/extensions/BlockchainIcons.kt +++ b/core/ui/src/main/java/com/tangem/core/ui/extensions/BlockchainIcons.kt @@ -90,6 +90,9 @@ fun getActiveIconRes(blockchainId: String): Int { "bitrock", "bitrock/test" -> R.drawable.img_bitrock_22 "sonic", "sonic/test" -> R.drawable.img_sonic_22 "apechain", "apechain/test" -> R.drawable.img_apecoin_22 + "scroll", "scroll/test" -> R.drawable.ic_alert_24 // FIXME: add icon during full integration + "zklink", "zklink/test" -> R.drawable.img_zklink_22 + "vanar-chain", "vanar-chain/test" -> R.drawable.img_vanar_22 else -> R.drawable.ic_alert_24 } } @@ -178,6 +181,9 @@ fun getActiveIconResByCoinId(coinId: String): Int { "bitrock", "bitrock/test" -> R.drawable.img_bitrock_22 "sonic", "sonic/test" -> R.drawable.img_sonic_22 "apechain", "apechain/test" -> R.drawable.img_apecoin_22 + "scroll", "scroll/test" -> R.drawable.ic_alert_24 // FIXME: add icon during full integration + "zklink", "zklink/test" -> R.drawable.img_zklink_22 + "vanar-chain", "vanar-chain/test" -> R.drawable.img_vanar_22 else -> R.drawable.ic_alert_24 } } @@ -269,6 +275,9 @@ fun getGreyedOutIconRes(blockchainId: String): Int { "bitrock", "bitrock/test" -> R.drawable.ic_bitrock_22 "sonic", "sonic/test" -> R.drawable.ic_sonic_22 "apechain", "apechain/test" -> R.drawable.ic_apecoin_22 + "scroll", "scroll/test" -> R.drawable.ic_alert_24 // FIXME: add icon during full integration + "zklink", "zklink/test" -> R.drawable.ic_zklink_22 + "vanar-chain", "vanar-chain/test" -> R.drawable.ic_vanar_22 else -> R.drawable.ic_alert_24 } } \ No newline at end of file diff --git a/core/ui/src/main/res/drawable/ic_vanar_22.xml b/core/ui/src/main/res/drawable/ic_vanar_22.xml new file mode 100644 index 0000000000..3ddb0cea23 --- /dev/null +++ b/core/ui/src/main/res/drawable/ic_vanar_22.xml @@ -0,0 +1,9 @@ + + + diff --git a/core/ui/src/main/res/drawable/ic_zklink_22.xml b/core/ui/src/main/res/drawable/ic_zklink_22.xml new file mode 100644 index 0000000000..70fb36416d --- /dev/null +++ b/core/ui/src/main/res/drawable/ic_zklink_22.xml @@ -0,0 +1,14 @@ + + + + diff --git a/core/ui/src/main/res/drawable/img_vanar_22.xml b/core/ui/src/main/res/drawable/img_vanar_22.xml new file mode 100644 index 0000000000..7fc4405bcb --- /dev/null +++ b/core/ui/src/main/res/drawable/img_vanar_22.xml @@ -0,0 +1,19 @@ + + + + + + + + diff --git a/core/ui/src/main/res/drawable/img_zklink_22.xml b/core/ui/src/main/res/drawable/img_zklink_22.xml new file mode 100644 index 0000000000..91405830fc --- /dev/null +++ b/core/ui/src/main/res/drawable/img_zklink_22.xml @@ -0,0 +1,24 @@ + + + + + + + + + diff --git a/data/common/src/main/kotlin/com/tangem/data/common/currency/NetworkOperations.kt b/data/common/src/main/kotlin/com/tangem/data/common/currency/NetworkOperations.kt index 31d90fac3f..a0fde030cc 100644 --- a/data/common/src/main/kotlin/com/tangem/data/common/currency/NetworkOperations.kt +++ b/data/common/src/main/kotlin/com/tangem/data/common/currency/NetworkOperations.kt @@ -299,6 +299,8 @@ private fun Blockchain.getSupportedTransactionExtras(): Network.TransactionExtra Blockchain.Bitrock, Blockchain.BitrockTestnet, Blockchain.Sonic, Blockchain.SonicTestnet, Blockchain.ApeChain, Blockchain.ApeChainTestnet, + Blockchain.Scroll, Blockchain.ScrollTestnet, + Blockchain.ZkLinkNova, Blockchain.ZkLinkNovaTestnet, -> Network.TransactionExtrasType.NONE // endregion } diff --git a/domain/legacy/src/main/java/com/tangem/domain/common/configs/Wallet2CardConfig.kt b/domain/legacy/src/main/java/com/tangem/domain/common/configs/Wallet2CardConfig.kt index 79355cd5c6..aa0a5e23e6 100644 --- a/domain/legacy/src/main/java/com/tangem/domain/common/configs/Wallet2CardConfig.kt +++ b/domain/legacy/src/main/java/com/tangem/domain/common/configs/Wallet2CardConfig.kt @@ -201,6 +201,10 @@ data object Wallet2CardConfig : CardConfig { Blockchain.KaspaTestnet -> EllipticCurve.Secp256k1 Blockchain.Alephium -> EllipticCurve.Secp256k1 Blockchain.AlephiumTestnet -> EllipticCurve.Secp256k1 + Blockchain.Scroll -> EllipticCurve.Secp256k1 + Blockchain.ScrollTestnet -> EllipticCurve.Secp256k1 + Blockchain.ZkLinkNova -> EllipticCurve.Secp256k1 + Blockchain.ZkLinkNovaTestnet -> EllipticCurve.Secp256k1 } } } \ No newline at end of file diff --git a/domain/legacy/src/test/java/com/tangem/domain/common/configs/Wallet2CardConfigTest.kt b/domain/legacy/src/test/java/com/tangem/domain/common/configs/Wallet2CardConfigTest.kt index 3faea63878..d80b9be554 100644 --- a/domain/legacy/src/test/java/com/tangem/domain/common/configs/Wallet2CardConfigTest.kt +++ b/domain/legacy/src/test/java/com/tangem/domain/common/configs/Wallet2CardConfigTest.kt @@ -158,6 +158,10 @@ class Wallet2CardConfigTest { Blockchain.KaspaTestnet to EllipticCurve.Secp256k1, Blockchain.Alephium to EllipticCurve.Secp256k1, Blockchain.AlephiumTestnet to EllipticCurve.Secp256k1, + Blockchain.Scroll to EllipticCurve.Secp256k1, + Blockchain.ScrollTestnet to EllipticCurve.Secp256k1, + Blockchain.ZkLinkNova to EllipticCurve.Secp256k1, + Blockchain.ZkLinkNovaTestnet to EllipticCurve.Secp256k1, ) @Test diff --git a/features/swap/domain/src/main/java/com/tangem/feature/swap/domain/SwapInteractorImpl.kt b/features/swap/domain/src/main/java/com/tangem/feature/swap/domain/SwapInteractorImpl.kt index 7cc9ebc2f2..a36223d839 100644 --- a/features/swap/domain/src/main/java/com/tangem/feature/swap/domain/SwapInteractorImpl.kt +++ b/features/swap/domain/src/main/java/com/tangem/feature/swap/domain/SwapInteractorImpl.kt @@ -989,6 +989,8 @@ internal class SwapInteractorImpl @AssistedInject constructor( Bitrock, BitrockTestnet, Sonic, SonicTestnet, ApeChain, ApeChainTestnet, + Scroll, ScrollTestnet, + ZkLinkNova, ZkLinkNovaTestnet, -> Fee.Common(feeAmount) // endregion } diff --git a/gradle/tangem_dependencies.toml b/gradle/tangem_dependencies.toml index 967701e091..b58666bdd9 100644 --- a/gradle/tangem_dependencies.toml +++ b/gradle/tangem_dependencies.toml @@ -1,5 +1,5 @@ [versions] -tangemBlockchainSdk = "develop-957" +tangemBlockchainSdk = "develop-959" #tangemBlockchainSdk = "0.0.1" # Keep it! - used for local builds tangemCardSdk = "develop-434" #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 866170f4c5..dc2f9b8a81 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 @@ -159,6 +159,10 @@ fun Blockchain.Companion.fromNetworkId(networkId: String): Blockchain? { "apechain" -> Blockchain.ApeChain "apechain/test" -> Blockchain.ApeChainTestnet "kaspa/test" -> Blockchain.KaspaTestnet + "scroll" -> Blockchain.Scroll + "scroll/test" -> Blockchain.ScrollTestnet + "zklink" -> Blockchain.ZkLinkNova + "zklink/test" -> Blockchain.ZkLinkNovaTestnet else -> null } } @@ -315,6 +319,10 @@ fun Blockchain.toNetworkId(): String { Blockchain.SonicTestnet -> "sonic/test" Blockchain.ApeChain -> "apechain" Blockchain.ApeChainTestnet -> "apechain/test" + Blockchain.Scroll -> "scroll" + Blockchain.ScrollTestnet -> "scroll/test" + Blockchain.ZkLinkNova -> "zklink" + Blockchain.ZkLinkNovaTestnet -> "zklink/test" } } @@ -415,6 +423,8 @@ fun Blockchain.toCoinId(): String { Blockchain.Bitrock, Blockchain.BitrockTestnet -> "bitrock" Blockchain.Sonic, Blockchain.SonicTestnet -> "sonic-3" Blockchain.ApeChain, Blockchain.ApeChainTestnet -> "apecoin" + Blockchain.Scroll, Blockchain.ScrollTestnet -> "scroll" + Blockchain.ZkLinkNova, Blockchain.ZkLinkNovaTestnet -> "zklink" } }