diff --git a/app/src/main/assets/testnet_tokens.json b/app/src/main/assets/testnet_tokens.json index 380e985b29..816f6e1849 100644 --- a/app/src/main/assets/testnet_tokens.json +++ b/app/src/main/assets/testnet_tokens.json @@ -12,6 +12,16 @@ } ] }, + { + "id" : "kaspa", + "symbol" : "KAS", + "name" : "Kaspa", + "networks" : [ + { + "networkId" : "kaspa/test" + } + ] + }, { "id" : "Dai Stablecoin-DAI", "symbol" : "DAI", 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 c177292cea..36253c766a 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 @@ -151,5 +151,6 @@ internal val Blockchain.mercuryoNetwork: String? Blockchain.Bitrock, Blockchain.BitrockTestnet -> null Blockchain.Sonic, Blockchain.SonicTestnet -> null Blockchain.ApeChain, Blockchain.ApeChainTestnet -> 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 a3d9000b47..cba4b03533 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 @@ -152,4 +152,5 @@ internal val Blockchain.moonPaySupportedCurrency: MoonPaySupportedCurrency? Bitrock, BitrockTestnet -> null Sonic, SonicTestnet -> null ApeChain, ApeChainTestnet -> null + KaspaTestnet -> null } \ 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 c0571b8065..b9eaf3f95f 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 @@ -32,7 +32,7 @@ fun getActiveIconRes(blockchainId: String): Int { "Kusama" -> R.drawable.img_kusama_22 "OPTIMISM", "OPTIMISM/test" -> R.drawable.img_optimism_22 "DASH" -> R.drawable.img_dash_22 - "KAS" -> R.drawable.img_kaspa_22 + "KAS", "KAS/test" -> R.drawable.img_kaspa_22 "The-Open-Network", "The-Open-Network/test" -> R.drawable.img_ton_22 "KAVA", "KAVA/test" -> R.drawable.img_kava_22 "ravencoin", "ravencoin/test" -> R.drawable.img_ravencoin_22 @@ -122,7 +122,7 @@ fun getActiveIconResByCoinId(coinId: String): Int { "ethereumfair", "dischain" -> R.drawable.img_dischain_22 "kusama" -> R.drawable.img_kusama_22 "dash" -> R.drawable.img_dash_22 - "kaspa" -> R.drawable.img_kaspa_22 + "kaspa", "kaspa/test" -> R.drawable.img_kaspa_22 "ton" -> R.drawable.img_ton_22 "kava" -> R.drawable.img_kava_22 "ravencoin" -> R.drawable.img_ravencoin_22 @@ -209,7 +209,7 @@ fun getGreyedOutIconRes(blockchainId: String): Int { "Kusama" -> R.drawable.ic_kusama_16 "OPTIMISM", "OPTIMISM/test" -> R.drawable.ic_optimism_22 "DASH" -> R.drawable.ic_dash_22 - "KAS" -> R.drawable.ic_kaspa_22 + "KAS", "KAS/test" -> R.drawable.ic_kaspa_22 "The-Open-Network", "The-Open-Network/test" -> R.drawable.ic_ton_22 "KAVA", "KAVA/test" -> R.drawable.ic_kava_22 "ravencoin", "ravencoin/test" -> R.drawable.ic_ravencoin_22 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 ccf75203ca..650c2cd0bd 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 @@ -214,6 +214,7 @@ private fun Blockchain.getSupportedTransactionExtras(): Network.TransactionExtra Blockchain.EthereumPow, Blockchain.EthereumPowTestnet, Blockchain.Kaspa, + Blockchain.KaspaTestnet, Blockchain.Telos, Blockchain.TelosTestnet, Blockchain.TONTestnet, diff --git a/data/manage-tokens/src/main/kotlin/com/tangem/data/managetokens/utils/ManagedCryptoCurrencyFactory.kt b/data/manage-tokens/src/main/kotlin/com/tangem/data/managetokens/utils/ManagedCryptoCurrencyFactory.kt index 98ccc3e720..770cecd7a1 100644 --- a/data/manage-tokens/src/main/kotlin/com/tangem/data/managetokens/utils/ManagedCryptoCurrencyFactory.kt +++ b/data/manage-tokens/src/main/kotlin/com/tangem/data/managetokens/utils/ManagedCryptoCurrencyFactory.kt @@ -66,7 +66,7 @@ internal class ManagedCryptoCurrencyFactory( createSource( networkId = network.id, contractAddress = network.address, - decimals = network.decimalCount ?: return@mapNotNull null, + decimals = network.decimalCount, scanResponse = scanResponse, ) } ?: emptyList(), 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 6da98d7aa9..590450cffe 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 @@ -198,6 +198,7 @@ data object Wallet2CardConfig : CardConfig { Blockchain.SonicTestnet -> EllipticCurve.Secp256k1 Blockchain.ApeChain -> EllipticCurve.Secp256k1 Blockchain.ApeChainTestnet -> EllipticCurve.Secp256k1 + Blockchain.KaspaTestnet -> 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 dc94df361a..7a18c5dcdc 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 @@ -155,6 +155,7 @@ class Wallet2CardConfigTest { Blockchain.SonicTestnet to EllipticCurve.Secp256k1, Blockchain.ApeChain to EllipticCurve.Secp256k1, Blockchain.ApeChainTestnet to EllipticCurve.Secp256k1, + Blockchain.KaspaTestnet 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 c9b35f5336..fd725db999 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 @@ -904,6 +904,7 @@ internal class SwapInteractorImpl @AssistedInject constructor( EthereumPow, EthereumPowTestnet, Kaspa, + KaspaTestnet, Telos, TelosTestnet, TON, diff --git a/gradle/dependencies.toml b/gradle/dependencies.toml index e27db46828..050ee1f616 100644 --- a/gradle/dependencies.toml +++ b/gradle/dependencies.toml @@ -89,7 +89,7 @@ markdownComposeView = "0.5.4" # endregion Other libraries # region Tangem -tangemBlockchainSdk = "develop-940" +tangemBlockchainSdk = "develop-942" #tangemBlockchainSdk = "0.0.1" # Keep it! - used for local builds tangemCardSdk = "develop-432" #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 e3e4cb47b3..71d4e4cd4c 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 @@ -156,6 +156,7 @@ fun Blockchain.Companion.fromNetworkId(networkId: String): Blockchain? { "sonic/test" -> Blockchain.SonicTestnet "apechain" -> Blockchain.ApeChain "apechain/test" -> Blockchain.ApeChainTestnet + "kaspa/test" -> Blockchain.KaspaTestnet else -> null } } @@ -208,6 +209,7 @@ fun Blockchain.toNetworkId(): String { Blockchain.OptimismTestnet -> "optimistic-ethereum/test" Blockchain.Dash -> "dash" Blockchain.Kaspa -> "kaspa" + Blockchain.KaspaTestnet -> "kaspa/test" Blockchain.TON -> "the-open-network" Blockchain.TONTestnet -> "the-open-network/test" Blockchain.Kava -> "kava" @@ -344,7 +346,7 @@ fun Blockchain.toCoinId(): String { Blockchain.Kusama -> "kusama" Blockchain.Optimism, Blockchain.OptimismTestnet -> "optimistic-ethereum" Blockchain.Dash -> "dash" - Blockchain.Kaspa -> "kaspa" + Blockchain.Kaspa, Blockchain.KaspaTestnet -> "kaspa" Blockchain.TON, Blockchain.TONTestnet -> "the-open-network" Blockchain.Kava, Blockchain.KavaTestnet -> "kava" Blockchain.Ravencoin, Blockchain.RavencoinTestnet -> "ravencoin"