From 328271bc26f6a7f629c12679d41de43509194259 Mon Sep 17 00:00:00 2001 From: Tangem Date: Mon, 25 Mar 2024 15:31:40 +0100 Subject: [PATCH] Updated on 2026-08-14 --- app/src/main/assets/testnet_tokens.json | 40 ++++++++++++++ .../core/ui/extensions/BlockchainIcons.kt | 24 +++++++- core/ui/src/main/res/drawable/ic_manta_22.xml | 10 ++++ .../src/main/res/drawable/ic_moonbeam_22.xml | 48 ++++++++++++++++ .../src/main/res/drawable/ic_polygon_16.xml | 10 ---- .../src/main/res/drawable/ic_polygon_22.xml | 9 +++ .../ui/src/main/res/drawable/ic_zksync_22.xml | 14 +++++ .../ui/src/main/res/drawable/img_manta_22.xml | 30 ++++++++++ .../src/main/res/drawable/img_moonbeam_22.xml | 55 +++++++++++++++++++ .../src/main/res/drawable/img_polygon_22.xml | 26 +++++++-- .../src/main/res/drawable/img_zksync_22.xml | 21 +++++++ .../QuotesUnsupportedCurrenciesIdAdapter.kt | 3 + .../domain/common/extensions/Blockchain.kt | 35 ++++++++---- gradle/dependencies.toml | 2 +- 14 files changed, 297 insertions(+), 30 deletions(-) create mode 100644 core/ui/src/main/res/drawable/ic_manta_22.xml create mode 100644 core/ui/src/main/res/drawable/ic_moonbeam_22.xml delete mode 100644 core/ui/src/main/res/drawable/ic_polygon_16.xml create mode 100644 core/ui/src/main/res/drawable/ic_polygon_22.xml create mode 100644 core/ui/src/main/res/drawable/ic_zksync_22.xml create mode 100644 core/ui/src/main/res/drawable/img_manta_22.xml create mode 100644 core/ui/src/main/res/drawable/img_moonbeam_22.xml create mode 100644 core/ui/src/main/res/drawable/img_zksync_22.xml diff --git a/app/src/main/assets/testnet_tokens.json b/app/src/main/assets/testnet_tokens.json index b638128b34..423202eeda 100644 --- a/app/src/main/assets/testnet_tokens.json +++ b/app/src/main/assets/testnet_tokens.json @@ -638,6 +638,46 @@ "networkId": "pulsechain/test" } ] + }, + { + "id": "zksync-ethereum", + "name": "zkSync", + "symbol": "ETH", + "networks": [ + { + "networkId": "zksync/test" + } + ] + }, + { + "id": "moonbeam", + "name": "Moonbeam", + "symbol": "GLMR", + "networks": [ + { + "networkId": "moonbeam/test" + } + ] + }, + { + "id": "manta-network-ethereum", + "name": "Manta Testnet", + "symbol": "ETH", + "networks": [ + { + "networkId": "manta-network/test" + } + ] + }, + { + "id": "polygon-zkevm-ethereum", + "name": "Polygon zkEvm Testnet", + "symbol": "ETH", + "networks": [ + { + "networkId": "polygon-zkevm/test" + } + ] } ] } 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 0854deb7f8..d7b3fd7f1d 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 @@ -57,6 +57,10 @@ fun getActiveIconRes(blockchainId: String): Int { "aurora", "aurora/test" -> R.drawable.img_aurora_22 "areon", "areon/test" -> R.drawable.img_areon_22 "pls", "pls/test" -> R.drawable.img_pls_22 + "zkSyncEra", "zkSyncEra/test" -> R.drawable.img_zksync_22 + "moonbeam", "moonbeam/test" -> R.drawable.img_moonbeam_22 + "manta", "manta/test" -> R.drawable.img_manta_22 + "polygonZkEVM", "polygonZkEVM/test" -> R.drawable.img_polygon_22 "radiant" -> R.drawable.img_radiant_22 else -> R.drawable.ic_alert_24 } @@ -116,6 +120,10 @@ fun getActiveIconResByNetworkId(networkId: String): Int { "aurora", "aurora/test" -> R.drawable.img_aurora_22 "areon", "areon/test" -> R.drawable.img_areon_22 "pls", "pls/test" -> R.drawable.img_pls_22 + "zksync", "zksync/test" -> R.drawable.img_zksync_22 + "moonbeam", "moonbeam/test" -> R.drawable.img_moonbeam_22 + "manta-network", "manta-network/test" -> R.drawable.img_manta_22 + "polygon-zkevm", "polygon-zkevm/test" -> R.drawable.img_polygon_22 "radiant" -> R.drawable.img_radiant_22 else -> R.drawable.ic_alert_24 } @@ -172,6 +180,10 @@ fun getActiveIconResByCoinId(coinId: String): Int { "aurora-near" -> R.drawable.img_aurora_22 "areon" -> R.drawable.img_areon_22 "pls" -> R.drawable.img_pls_22 + "zksync-ethereum" -> R.drawable.img_zksync_22 + "moonbeam" -> R.drawable.img_moonbeam_22 + "manta-network-ethereum" -> R.drawable.img_manta_22 + "polygon-zkevm-ethereum" -> R.drawable.img_polygon_22 "radiant" -> R.drawable.img_radiant_22 else -> R.drawable.ic_alert_24 } @@ -193,7 +205,7 @@ fun getGreyedOutIconRes(blockchainId: String): Int { "XRP" -> R.drawable.ic_xrp_22 "XLM", "XLM/test" -> R.drawable.ic_stellar_16 "AVALANCHE", "AVALANCHE/test" -> R.drawable.ic_avalanche_22 - "POLYGON", "POLYGON/test" -> R.drawable.ic_polygon_16 + "POLYGON", "POLYGON/test" -> R.drawable.ic_polygon_22 "SOLANA", "SOLANA/test" -> R.drawable.ic_solana_16 "FTM", "FTM/test" -> R.drawable.ic_fantom_22 "BSC", "BSC/test", "BINANCE", "BINANCE/test" -> R.drawable.ic_bsc_16 @@ -231,6 +243,10 @@ fun getGreyedOutIconRes(blockchainId: String): Int { "aurora", "aurora/test" -> R.drawable.ic_aurora_22 "areon", "areon/test" -> R.drawable.ic_areon_22 "pls", "pls/test" -> R.drawable.ic_pls_22 + "zkSyncEra", "zkSyncEra/test" -> R.drawable.ic_zksync_22 + "moonbeam", "moonbeam/test" -> R.drawable.ic_moonbeam_22 + "manta", "manta/test" -> R.drawable.ic_manta_22 + "polygonZkEVM", "polygonZkEVM/test" -> R.drawable.ic_polygon_22 "radiant" -> R.drawable.ic_radiant_22 else -> R.drawable.ic_alert_24 } @@ -253,7 +269,7 @@ fun getGreyedOutIconResByNetworkId(networkId: String): Int { "tezos" -> R.drawable.ic_tezos_16 "xrp", "ripple" -> R.drawable.ic_xrp_22 "stellar", "stellar/test" -> R.drawable.ic_stellar_16 - "polygon-pos", "polygon-pos/test" -> R.drawable.ic_polygon_16 + "polygon-pos", "polygon-pos/test" -> R.drawable.ic_polygon_22 "solana", "solana/test" -> R.drawable.ic_solana_16 "fantom", "fantom/test" -> R.drawable.ic_fantom_22 "dogecoin" -> R.drawable.ic_dogecoin_16 @@ -290,6 +306,10 @@ fun getGreyedOutIconResByNetworkId(networkId: String): Int { "aurora", "aurora/test" -> R.drawable.ic_aurora_22 "areon", "areon/test" -> R.drawable.ic_areon_22 "pls", "pls/test" -> R.drawable.ic_pls_22 + "zksync", "zksync/test" -> R.drawable.ic_zksync_22 + "moonbeam", "moonbeam/test" -> R.drawable.ic_moonbeam_22 + "manta-network", "manta-network/test" -> R.drawable.ic_manta_22 + "polygon-zkevm", "polygon-zkevm/test" -> R.drawable.ic_polygon_22 "radiant" -> R.drawable.ic_radiant_22 else -> R.drawable.ic_alert_24 } diff --git a/core/ui/src/main/res/drawable/ic_manta_22.xml b/core/ui/src/main/res/drawable/ic_manta_22.xml new file mode 100644 index 0000000000..0cdfc8df09 --- /dev/null +++ b/core/ui/src/main/res/drawable/ic_manta_22.xml @@ -0,0 +1,10 @@ + + + diff --git a/core/ui/src/main/res/drawable/ic_moonbeam_22.xml b/core/ui/src/main/res/drawable/ic_moonbeam_22.xml new file mode 100644 index 0000000000..71e2200421 --- /dev/null +++ b/core/ui/src/main/res/drawable/ic_moonbeam_22.xml @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + diff --git a/core/ui/src/main/res/drawable/ic_polygon_16.xml b/core/ui/src/main/res/drawable/ic_polygon_16.xml deleted file mode 100644 index ddc6ff8adf..0000000000 --- a/core/ui/src/main/res/drawable/ic_polygon_16.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - diff --git a/core/ui/src/main/res/drawable/ic_polygon_22.xml b/core/ui/src/main/res/drawable/ic_polygon_22.xml new file mode 100644 index 0000000000..73d1249583 --- /dev/null +++ b/core/ui/src/main/res/drawable/ic_polygon_22.xml @@ -0,0 +1,9 @@ + + + diff --git a/core/ui/src/main/res/drawable/ic_zksync_22.xml b/core/ui/src/main/res/drawable/ic_zksync_22.xml new file mode 100644 index 0000000000..16964a64d6 --- /dev/null +++ b/core/ui/src/main/res/drawable/ic_zksync_22.xml @@ -0,0 +1,14 @@ + + + + diff --git a/core/ui/src/main/res/drawable/img_manta_22.xml b/core/ui/src/main/res/drawable/img_manta_22.xml new file mode 100644 index 0000000000..93200c11c3 --- /dev/null +++ b/core/ui/src/main/res/drawable/img_manta_22.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + diff --git a/core/ui/src/main/res/drawable/img_moonbeam_22.xml b/core/ui/src/main/res/drawable/img_moonbeam_22.xml new file mode 100644 index 0000000000..7c010ab7e4 --- /dev/null +++ b/core/ui/src/main/res/drawable/img_moonbeam_22.xml @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/core/ui/src/main/res/drawable/img_polygon_22.xml b/core/ui/src/main/res/drawable/img_polygon_22.xml index efb2fff8c1..455e3cbe53 100644 --- a/core/ui/src/main/res/drawable/img_polygon_22.xml +++ b/core/ui/src/main/res/drawable/img_polygon_22.xml @@ -1,13 +1,29 @@ + + + android:pathData="M11,0L11,0A11,11 0,0 1,22 11L22,11A11,11 0,0 1,11 22L11,22A11,11 0,0 1,0 11L0,11A11,11 0,0 1,11 0z" + android:fillColor="#F5F0FD"/> + android:pathData="M7.435,8.666C7.694,8.514 8.03,8.514 8.314,8.666L10.328,9.833L11.697,10.594L13.712,11.761C13.97,11.913 14.306,11.913 14.59,11.761L16.192,10.848C16.45,10.696 16.631,10.417 16.631,10.112V8.311C16.631,8.006 16.476,7.727 16.192,7.575L14.616,6.687C14.358,6.535 14.022,6.535 13.738,6.687L12.162,7.575C11.904,7.727 11.723,8.006 11.723,8.311V9.478L10.354,8.691V7.524C10.354,7.22 10.509,6.941 10.793,6.789L13.712,5.114C13.97,4.962 14.306,4.962 14.59,5.114L17.561,6.789C17.845,6.941 18,7.22 18,7.524V10.899C18,11.203 17.845,11.482 17.561,11.634L14.59,13.309C14.332,13.461 13.996,13.461 13.712,13.309L11.697,12.167L10.328,11.38L8.314,10.239C8.055,10.087 7.72,10.087 7.435,10.239L5.86,11.127C5.601,11.279 5.421,11.558 5.421,11.863V13.664C5.421,13.968 5.576,14.247 5.86,14.4L7.435,15.313C7.694,15.465 8.03,15.465 8.314,15.313L9.889,14.425C10.148,14.273 10.328,13.994 10.328,13.689V12.522L11.697,13.309V14.476C11.697,14.78 11.542,15.059 11.258,15.211L8.288,16.886C8.03,17.038 7.694,17.038 7.41,16.886L4.439,15.211C4.181,15.059 4,14.78 4,14.476V11.101C4,10.797 4.155,10.518 4.439,10.366L7.435,8.666Z"> + + + + + + + + + diff --git a/core/ui/src/main/res/drawable/img_zksync_22.xml b/core/ui/src/main/res/drawable/img_zksync_22.xml new file mode 100644 index 0000000000..ffb720dae9 --- /dev/null +++ b/core/ui/src/main/res/drawable/img_zksync_22.xml @@ -0,0 +1,21 @@ + + + + + + + + diff --git a/data/tokens/src/main/kotlin/com/tangem/data/tokens/utils/QuotesUnsupportedCurrenciesIdAdapter.kt b/data/tokens/src/main/kotlin/com/tangem/data/tokens/utils/QuotesUnsupportedCurrenciesIdAdapter.kt index e6d573b353..6b2779299c 100644 --- a/data/tokens/src/main/kotlin/com/tangem/data/tokens/utils/QuotesUnsupportedCurrenciesIdAdapter.kt +++ b/data/tokens/src/main/kotlin/com/tangem/data/tokens/utils/QuotesUnsupportedCurrenciesIdAdapter.kt @@ -51,6 +51,9 @@ internal class QuotesUnsupportedCurrenciesIdAdapter { private val UNSUPPORTED_IDS_WITH_REPLACEMENTS = mapOf( "optimistic-ethereum" to "ethereum", "arbitrum-one" to "ethereum", + "zksync-ethereum" to "ethereum", + "manta-network-ethereum" to "ethereum", + "polygon-zkevm-ethereum" to "ethereum", "aurora-ethereum" to "ethereum", ) } diff --git a/domain/legacy/src/main/java/com/tangem/domain/common/extensions/Blockchain.kt b/domain/legacy/src/main/java/com/tangem/domain/common/extensions/Blockchain.kt index fdbe2e0fac..2f27ff5330 100644 --- a/domain/legacy/src/main/java/com/tangem/domain/common/extensions/Blockchain.kt +++ b/domain/legacy/src/main/java/com/tangem/domain/common/extensions/Blockchain.kt @@ -93,10 +93,16 @@ fun Blockchain.Companion.fromNetworkId(networkId: String): Blockchain? { "areon-network/test" -> Blockchain.AreonTestnet "pulsechain" -> Blockchain.PulseChain "pulsechain/test" -> Blockchain.PulseChainTestnet + "zksync" -> Blockchain.ZkSyncEra + "zksync/test" -> Blockchain.ZkSyncEraTestnet + "moonbeam" -> Blockchain.Moonbeam + "moonbeam/test" -> Blockchain.MoonbeamTestnet + "manta-network" -> Blockchain.Manta + "manta-network/test" -> Blockchain.MantaTestnet + "polygon-zkevm" -> Blockchain.PolygonZkEVM + "polygon-zkevm/test" -> Blockchain.PolygonZkEVMTestnet "nexa" -> Blockchain.Nexa // FIXME - "nexa/testnet" -> Blockchain.NexaTestnet // FIXME - "zksync" -> Blockchain.ZkSyncEra // FIXME - "zksync/testnet" -> Blockchain.ZkSyncEraTestnet // FIXME + "nexa/test" -> Blockchain.NexaTestnet // FIXME "radiant" -> Blockchain.Radiant else -> null } @@ -192,10 +198,16 @@ fun Blockchain.toNetworkId(): String { Blockchain.AreonTestnet -> "areon-network/test" Blockchain.PulseChain -> "pulsechain" Blockchain.PulseChainTestnet -> "pulsechain/test" - Blockchain.ZkSyncEra -> "zksync" // FIXME - Blockchain.ZkSyncEraTestnet -> "zksync/testnet" // FIXME + Blockchain.ZkSyncEra -> "zksync" + Blockchain.ZkSyncEraTestnet -> "zksync/test" + Blockchain.Moonbeam -> "moonbeam" + Blockchain.MoonbeamTestnet -> "moonbeam/test" + Blockchain.Manta -> "manta-network" + Blockchain.MantaTestnet -> "manta-network/test" + Blockchain.PolygonZkEVM -> "polygon-zkevm" + Blockchain.PolygonZkEVMTestnet -> "polygon-zkevm/test" Blockchain.Nexa -> "nexa" // FIXME - Blockchain.NexaTestnet -> "nexa/testnet" // FIXME + Blockchain.NexaTestnet -> "nexa/test" // FIXME Blockchain.Radiant -> "radiant" } } @@ -259,10 +271,11 @@ fun Blockchain.toCoinId(): String { Blockchain.Aurora, Blockchain.AuroraTestnet -> "aurora-ethereum" Blockchain.Areon, Blockchain.AreonTestnet -> "areon-network" Blockchain.PulseChain, Blockchain.PulseChainTestnet -> "pulsechain" - Blockchain.ZkSyncEra -> "zksync" // FIXME - Blockchain.ZkSyncEraTestnet -> "zksync/testnet" // FIXME - Blockchain.Nexa -> "nexa" // FIXME - Blockchain.NexaTestnet -> "nexa/testnet" // FIXME + Blockchain.ZkSyncEra, Blockchain.ZkSyncEraTestnet -> "zksync-ethereum" + Blockchain.Moonbeam, Blockchain.MoonbeamTestnet -> "moonbeam" + Blockchain.Manta, Blockchain.MantaTestnet -> "manta-network-ethereum" + Blockchain.PolygonZkEVM, Blockchain.PolygonZkEVMTestnet -> "polygon-zkevm-ethereum" + Blockchain.Nexa, Blockchain.NexaTestnet -> "nexa" // FIXME Blockchain.Radiant -> "radiant" } } @@ -291,8 +304,6 @@ private const val NODL_AMOUNT_TO_CREATE_ACCOUNT = 1.5 private val excludedBlockchains = listOf( Blockchain.Unknown, Blockchain.Playa3ull, - Blockchain.ZkSyncEra, - Blockchain.ZkSyncEraTestnet, Blockchain.Nexa, Blockchain.NexaTestnet, Blockchain.Radiant, diff --git a/gradle/dependencies.toml b/gradle/dependencies.toml index df3dce1313..059989055e 100644 --- a/gradle/dependencies.toml +++ b/gradle/dependencies.toml @@ -85,7 +85,7 @@ leakcanary = "2.13" # endregion Other libraries # region Tangem -tangemBlockchainSdk = "develop-538" +tangemBlockchainSdk = "develop-539" #tangemBlockchainSdk = "0.0.1" # Keep it! - used for local builds tangemCardSdk = "develop-337" #tangemCardSdk = "0.0.1" # Keep it! - used for local builds ^