diff --git a/app/src/main/assets/testnet_tokens.json b/app/src/main/assets/testnet_tokens.json index 423202eeda..e10692c072 100644 --- a/app/src/main/assets/testnet_tokens.json +++ b/app/src/main/assets/testnet_tokens.json @@ -678,6 +678,16 @@ "networkId": "polygon-zkevm/test" } ] + }, + { + "id": "base-ethereum", + "name": "Base", + "symbol": "ETH", + "networks": [ + { + "networkId": "base/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 0a77e69e7e..1a95df0142 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 @@ -66,6 +66,7 @@ fun getActiveIconRes(blockchainId: String): Int { "flare", "flare/test" -> R.drawable.img_flare_22 "taraxa", "taraxa/test" -> R.drawable.img_taraxa_22 "radiant" -> R.drawable.img_radiant_22 + "base" -> R.drawable.img_base_22 else -> R.drawable.ic_alert_24 } } @@ -133,6 +134,7 @@ fun getActiveIconResByNetworkId(networkId: String): Int { "flare-network", "flare-network/test" -> R.drawable.img_flare_22 "taraxa", "taraxa/test" -> R.drawable.img_taraxa_22 "radiant" -> R.drawable.img_radiant_22 + "base" -> R.drawable.img_base_22 else -> R.drawable.ic_alert_24 } } @@ -197,6 +199,7 @@ fun getActiveIconResByCoinId(coinId: String): Int { "flare-networks" -> R.drawable.img_flare_22 "taraxa" -> R.drawable.img_taraxa_22 "radiant" -> R.drawable.img_radiant_22 + "base" -> R.drawable.img_base_22 else -> R.drawable.ic_alert_24 } } @@ -264,6 +267,7 @@ fun getGreyedOutIconRes(blockchainId: String): Int { "flare", "flare/test" -> R.drawable.ic_flare_22 "taraxa", "taraxa/test" -> R.drawable.ic_taraxa_22 "radiant" -> R.drawable.ic_radiant_22 + "base", "base/test" -> R.drawable.ic_base_22 else -> R.drawable.ic_alert_24 } } @@ -331,6 +335,7 @@ fun getGreyedOutIconResByNetworkId(networkId: String): Int { "flare-network", "flare-network/test" -> R.drawable.ic_flare_22 "taraxa", "taraxa/test" -> R.drawable.ic_taraxa_22 "radiant" -> R.drawable.ic_radiant_22 + "base", "base/test" -> R.drawable.ic_base_22 else -> R.drawable.ic_alert_24 } } \ No newline at end of file diff --git a/core/ui/src/main/res/drawable/ic_base_22.xml b/core/ui/src/main/res/drawable/ic_base_22.xml new file mode 100644 index 0000000000..7c135649e4 --- /dev/null +++ b/core/ui/src/main/res/drawable/ic_base_22.xml @@ -0,0 +1,18 @@ + + + + + + + + + diff --git a/core/ui/src/main/res/drawable/img_base_22.xml b/core/ui/src/main/res/drawable/img_base_22.xml new file mode 100644 index 0000000000..a426d0c8b2 --- /dev/null +++ b/core/ui/src/main/res/drawable/img_base_22.xml @@ -0,0 +1,16 @@ + + + + + + + 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 6b2779299c..0e69a31330 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 @@ -55,6 +55,7 @@ internal class QuotesUnsupportedCurrenciesIdAdapter { "manta-network-ethereum" to "ethereum", "polygon-zkevm-ethereum" to "ethereum", "aurora-ethereum" to "ethereum", + "base-ethereum" to "ethereum", ) } } \ No newline at end of file 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 e3ed6aabed..d3a65d7373 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 @@ -112,6 +112,8 @@ fun Blockchain.Companion.fromNetworkId(networkId: String): Blockchain? { "flare-network/test" -> Blockchain.FlareTestnet "taraxa" -> Blockchain.Taraxa "taraxa/test" -> Blockchain.TaraxaTestnet + "base" -> Blockchain.Base + "base/test" -> Blockchain.BaseTestnet else -> null } } @@ -225,6 +227,8 @@ fun Blockchain.toNetworkId(): String { Blockchain.FlareTestnet -> "flare-network/test" Blockchain.Taraxa -> "taraxa" Blockchain.TaraxaTestnet -> "taraxa/test" + Blockchain.Base -> "base" + Blockchain.BaseTestnet -> "base/test" } } @@ -297,6 +301,7 @@ fun Blockchain.toCoinId(): String { Blockchain.Mantle, Blockchain.MantleTestnet -> "mantle" Blockchain.Flare, Blockchain.FlareTestnet -> "flare-networks" Blockchain.Taraxa, Blockchain.TaraxaTestnet -> "taraxa" + Blockchain.Base, Blockchain.BaseTestnet -> "base" } } diff --git a/domain/legacy/src/main/java/com/tangem/domain/walletmanager/DefaultWalletManagersFacade.kt b/domain/legacy/src/main/java/com/tangem/domain/walletmanager/DefaultWalletManagersFacade.kt index 276758748b..951d8ff4ef 100644 --- a/domain/legacy/src/main/java/com/tangem/domain/walletmanager/DefaultWalletManagersFacade.kt +++ b/domain/legacy/src/main/java/com/tangem/domain/walletmanager/DefaultWalletManagersFacade.kt @@ -192,7 +192,16 @@ class DefaultWalletManagersFacade( address = walletManager.wallet.address, filterType = when (currency) { is CryptoCurrency.Coin -> TransactionHistoryRequest.FilterType.Coin - is CryptoCurrency.Token -> TransactionHistoryRequest.FilterType.Contract(currency.contractAddress) + is CryptoCurrency.Token -> { + val blockchainToken = Token( + name = currency.name, + symbol = currency.symbol, + contractAddress = currency.contractAddress, + decimals = currency.decimals, + id = currency.id.rawCurrencyId, + ) + TransactionHistoryRequest.FilterType.Contract(blockchainToken) + } }, ) .let(txHistoryStateConverter::convert) @@ -221,7 +230,16 @@ class DefaultWalletManagersFacade( pageSize = pageSize, filterType = when (currency) { is CryptoCurrency.Coin -> TransactionHistoryRequest.FilterType.Coin - is CryptoCurrency.Token -> TransactionHistoryRequest.FilterType.Contract(currency.contractAddress) + is CryptoCurrency.Token -> { + val blockchainToken = Token( + name = currency.name, + symbol = currency.symbol, + contractAddress = currency.contractAddress, + decimals = currency.decimals, + id = currency.id.rawCurrencyId, + ) + TransactionHistoryRequest.FilterType.Contract(blockchainToken) + } }, ), ) diff --git a/gradle/dependencies.toml b/gradle/dependencies.toml index d02fccec51..4995c29d6a 100644 --- a/gradle/dependencies.toml +++ b/gradle/dependencies.toml @@ -85,9 +85,9 @@ leakcanary = "2.13" # endregion Other libraries # region Tangem -tangemBlockchainSdk = "release-app_5.9-580" +tangemBlockchainSdk = "release-app_5.9-582" #tangemBlockchainSdk = "0.0.1" # Keep it! - used for local builds -tangemCardSdk = "release-app_5.9-340" +tangemCardSdk = "release-app_5.9-343" #tangemCardSdk = "0.0.1" # Keep it! - used for local builds ^ # endregion Tangem