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 ^