diff --git a/app/src/main/java/com/tangem/tap/features/onboarding/OnboardingHelper.kt b/app/src/main/java/com/tangem/tap/features/onboarding/OnboardingHelper.kt
index 4edb21a332..4030b48f6b 100644
--- a/app/src/main/java/com/tangem/tap/features/onboarding/OnboardingHelper.kt
+++ b/app/src/main/java/com/tangem/tap/features/onboarding/OnboardingHelper.kt
@@ -90,7 +90,7 @@ object OnboardingHelper {
val toggles = store.inject(DaggerGraphState::userWalletsListManagerFeatureToggles)
if (toggles.isGeneralManagerEnabled) {
- store.dispatchWithMain(SaveWalletAction.SaveWalletAfterBackup)
+ store.dispatchWithMain(SaveWalletAction.SaveWalletAfterBackup(hasBackupError))
} else {
store.dispatchWithMain(SaveWalletAction.Save)
}
diff --git a/app/src/main/java/com/tangem/tap/features/saveWallet/redux/SaveWalletAction.kt b/app/src/main/java/com/tangem/tap/features/saveWallet/redux/SaveWalletAction.kt
index b76bdfcac5..ff18f45362 100644
--- a/app/src/main/java/com/tangem/tap/features/saveWallet/redux/SaveWalletAction.kt
+++ b/app/src/main/java/com/tangem/tap/features/saveWallet/redux/SaveWalletAction.kt
@@ -28,5 +28,5 @@ internal sealed interface SaveWalletAction : Action {
data object SaveWalletWasShown : SaveWalletAction
- data object SaveWalletAfterBackup : SaveWalletAction
+ data class SaveWalletAfterBackup(val hasBackupError: Boolean) : SaveWalletAction
}
\ No newline at end of file
diff --git a/app/src/main/java/com/tangem/tap/features/saveWallet/redux/SaveWalletMiddleware.kt b/app/src/main/java/com/tangem/tap/features/saveWallet/redux/SaveWalletMiddleware.kt
index 62fa03d837..67272db72d 100644
--- a/app/src/main/java/com/tangem/tap/features/saveWallet/redux/SaveWalletMiddleware.kt
+++ b/app/src/main/java/com/tangem/tap/features/saveWallet/redux/SaveWalletMiddleware.kt
@@ -52,7 +52,7 @@ internal class SaveWalletMiddleware {
is SaveWalletAction.EnrollBiometrics.Enroll -> enrollBiometrics()
is SaveWalletAction.SaveWalletWasShown -> saveWalletWasShown()
is SaveWalletAction.Dismiss -> dismiss(state)
- is SaveWalletAction.SaveWalletAfterBackup -> saveWalletAfterBackup(state)
+ is SaveWalletAction.SaveWalletAfterBackup -> saveWalletAfterBackup(state, action.hasBackupError)
is SaveWalletAction.Save.Success,
is SaveWalletAction.ProvideBackupInfo,
is SaveWalletAction.CloseError,
@@ -63,12 +63,13 @@ internal class SaveWalletMiddleware {
}
}
- private fun saveWalletAfterBackup(state: SaveWalletState) {
+ private fun saveWalletAfterBackup(state: SaveWalletState, hasBackupError: Boolean) {
scope.launch {
val backupInfo = state.backupInfo ?: error("Backup info is null")
val userWallet = UserWalletBuilder(backupInfo.scanResponse)
.backupCardsIds(state.backupInfo.backupCardsIds)
+ .hasBackupError(hasBackupError)
.build()
.guard {
Timber.e("User wallet not created")
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 d7b3fd7f1d..0a77e69e7e 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
@@ -61,6 +61,10 @@ fun getActiveIconRes(blockchainId: String): Int {
"moonbeam", "moonbeam/test" -> R.drawable.img_moonbeam_22
"manta", "manta/test" -> R.drawable.img_manta_22
"polygonZkEVM", "polygonZkEVM/test" -> R.drawable.img_polygon_22
+ "moonriver", "moonriver/test" -> R.drawable.img_moonriver_22
+ "mantle", "mantle/test" -> R.drawable.img_mantle_22
+ "flare", "flare/test" -> R.drawable.img_flare_22
+ "taraxa", "taraxa/test" -> R.drawable.img_taraxa_22
"radiant" -> R.drawable.img_radiant_22
else -> R.drawable.ic_alert_24
}
@@ -124,6 +128,10 @@ fun getActiveIconResByNetworkId(networkId: String): Int {
"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
+ "moonriver", "moonriver/test" -> R.drawable.img_moonriver_22
+ "mantle", "mantle/test" -> R.drawable.img_mantle_22
+ "flare-network", "flare-network/test" -> R.drawable.img_flare_22
+ "taraxa", "taraxa/test" -> R.drawable.img_taraxa_22
"radiant" -> R.drawable.img_radiant_22
else -> R.drawable.ic_alert_24
}
@@ -184,6 +192,10 @@ fun getActiveIconResByCoinId(coinId: String): Int {
"moonbeam" -> R.drawable.img_moonbeam_22
"manta-network-ethereum" -> R.drawable.img_manta_22
"polygon-zkevm-ethereum" -> R.drawable.img_polygon_22
+ "moonriver" -> R.drawable.img_moonriver_22
+ "mantle" -> R.drawable.img_mantle_22
+ "flare-networks" -> R.drawable.img_flare_22
+ "taraxa" -> R.drawable.img_taraxa_22
"radiant" -> R.drawable.img_radiant_22
else -> R.drawable.ic_alert_24
}
@@ -247,6 +259,10 @@ fun getGreyedOutIconRes(blockchainId: String): Int {
"moonbeam", "moonbeam/test" -> R.drawable.ic_moonbeam_22
"manta", "manta/test" -> R.drawable.ic_manta_22
"polygonZkEVM", "polygonZkEVM/test" -> R.drawable.ic_polygon_22
+ "moonriver", "moonriver/test" -> R.drawable.ic_moonriver_22
+ "mantle", "mantle/test" -> R.drawable.ic_mantle_22
+ "flare", "flare/test" -> R.drawable.ic_flare_22
+ "taraxa", "taraxa/test" -> R.drawable.ic_taraxa_22
"radiant" -> R.drawable.ic_radiant_22
else -> R.drawable.ic_alert_24
}
@@ -310,6 +326,10 @@ fun getGreyedOutIconResByNetworkId(networkId: String): Int {
"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
+ "moonriver", "moonriver/test" -> R.drawable.ic_moonriver_22
+ "mantle", "mantle/test" -> R.drawable.ic_mantle_22
+ "flare-network", "flare-network/test" -> R.drawable.ic_flare_22
+ "taraxa", "taraxa/test" -> R.drawable.ic_taraxa_22
"radiant" -> R.drawable.ic_radiant_22
else -> R.drawable.ic_alert_24
}
diff --git a/core/ui/src/main/res/drawable/ic_flare_22.xml b/core/ui/src/main/res/drawable/ic_flare_22.xml
new file mode 100644
index 0000000000..96c5c7eea9
--- /dev/null
+++ b/core/ui/src/main/res/drawable/ic_flare_22.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/core/ui/src/main/res/drawable/ic_mantle_22.xml b/core/ui/src/main/res/drawable/ic_mantle_22.xml
new file mode 100644
index 0000000000..b53a906acb
--- /dev/null
+++ b/core/ui/src/main/res/drawable/ic_mantle_22.xml
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/core/ui/src/main/res/drawable/ic_moonriver_22.xml b/core/ui/src/main/res/drawable/ic_moonriver_22.xml
new file mode 100644
index 0000000000..0a44cf4e25
--- /dev/null
+++ b/core/ui/src/main/res/drawable/ic_moonriver_22.xml
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/core/ui/src/main/res/drawable/ic_taraxa_22.xml b/core/ui/src/main/res/drawable/ic_taraxa_22.xml
new file mode 100644
index 0000000000..7ee9b27337
--- /dev/null
+++ b/core/ui/src/main/res/drawable/ic_taraxa_22.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/core/ui/src/main/res/drawable/img_flare_22.xml b/core/ui/src/main/res/drawable/img_flare_22.xml
new file mode 100644
index 0000000000..50e0da994b
--- /dev/null
+++ b/core/ui/src/main/res/drawable/img_flare_22.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
diff --git a/core/ui/src/main/res/drawable/img_mantle_22.xml b/core/ui/src/main/res/drawable/img_mantle_22.xml
new file mode 100644
index 0000000000..93dbe6ccb3
--- /dev/null
+++ b/core/ui/src/main/res/drawable/img_mantle_22.xml
@@ -0,0 +1,61 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/core/ui/src/main/res/drawable/img_moonriver_22.xml b/core/ui/src/main/res/drawable/img_moonriver_22.xml
new file mode 100644
index 0000000000..c2ee947935
--- /dev/null
+++ b/core/ui/src/main/res/drawable/img_moonriver_22.xml
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/core/ui/src/main/res/drawable/img_taraxa_22.xml b/core/ui/src/main/res/drawable/img_taraxa_22.xml
new file mode 100644
index 0000000000..3faf5ca9f0
--- /dev/null
+++ b/core/ui/src/main/res/drawable/img_taraxa_22.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
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 2f27ff5330..e3ed6aabed 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
@@ -104,6 +104,14 @@ fun Blockchain.Companion.fromNetworkId(networkId: String): Blockchain? {
"nexa" -> Blockchain.Nexa // FIXME
"nexa/test" -> Blockchain.NexaTestnet // FIXME
"radiant" -> Blockchain.Radiant
+ "moonriver" -> Blockchain.Moonriver
+ "moonriver/test" -> Blockchain.MoonriverTestnet
+ "mantle" -> Blockchain.Mantle
+ "mantle/test" -> Blockchain.MantleTestnet
+ "flare-network" -> Blockchain.Flare
+ "flare-network/test" -> Blockchain.FlareTestnet
+ "taraxa" -> Blockchain.Taraxa
+ "taraxa/test" -> Blockchain.TaraxaTestnet
else -> null
}
}
@@ -209,6 +217,14 @@ fun Blockchain.toNetworkId(): String {
Blockchain.Nexa -> "nexa" // FIXME
Blockchain.NexaTestnet -> "nexa/test" // FIXME
Blockchain.Radiant -> "radiant"
+ Blockchain.Moonriver -> "moonriver"
+ Blockchain.MoonriverTestnet -> "moonriver/test"
+ Blockchain.Mantle -> "mantle"
+ Blockchain.MantleTestnet -> "mantle/test"
+ Blockchain.Flare -> "flare-network"
+ Blockchain.FlareTestnet -> "flare-network/test"
+ Blockchain.Taraxa -> "taraxa"
+ Blockchain.TaraxaTestnet -> "taraxa/test"
}
}
@@ -277,6 +293,10 @@ fun Blockchain.toCoinId(): String {
Blockchain.PolygonZkEVM, Blockchain.PolygonZkEVMTestnet -> "polygon-zkevm-ethereum"
Blockchain.Nexa, Blockchain.NexaTestnet -> "nexa" // FIXME
Blockchain.Radiant -> "radiant"
+ Blockchain.Moonriver, Blockchain.MoonriverTestnet -> "moonriver"
+ Blockchain.Mantle, Blockchain.MantleTestnet -> "mantle"
+ Blockchain.Flare, Blockchain.FlareTestnet -> "flare-networks"
+ Blockchain.Taraxa, Blockchain.TaraxaTestnet -> "taraxa"
}
}