From 8e3bdacae10209e30760db06d33b0c839e462fc3 Mon Sep 17 00:00:00 2001 From: Tangem Date: Mon, 23 Dec 2024 18:31:26 +0300 Subject: [PATCH] Updated on 2026-08-14 --- core/res/src/main/res/values-fr/strings.xml | 1 + core/res/src/main/res/values-ru/strings.xml | 4 +++- core/res/src/main/res/values/strings.xml | 2 ++ .../tokens/model/warnings/CryptoCurrencyWarning.kt | 2 ++ .../tangem/domain/tokens/GetCurrencyWarningsUseCase.kt | 10 ++++++++++ .../TokenDetailsNotificationsAnalyticsSender.kt | 1 + .../state/components/TokenDetailsNotification.kt | 5 +++++ .../state/factory/TokenDetailsNotificationConverter.kt | 1 + .../main/java/com/tangem/lib/crypto/BlockchainUtils.kt | 5 +++++ 9 files changed, 30 insertions(+), 1 deletion(-) diff --git a/core/res/src/main/res/values-fr/strings.xml b/core/res/src/main/res/values-fr/strings.xml index 4972952622..e6647acb4d 100644 --- a/core/res/src/main/res/values-fr/strings.xml +++ b/core/res/src/main/res/values-fr/strings.xml @@ -580,6 +580,7 @@ Cartes identiques Code d\'accès Disponible avec %s + L\'achat de crypto-monnaies sur Tangem est assuré par des fournisseurs tiers selon leurs conditions. Recherche par pays Indisponible Autres devises diff --git a/core/res/src/main/res/values-ru/strings.xml b/core/res/src/main/res/values-ru/strings.xml index 4bd80de49f..f63d0d3e28 100644 --- a/core/res/src/main/res/values-ru/strings.xml +++ b/core/res/src/main/res/values-ru/strings.xml @@ -51,6 +51,8 @@ Больше не показывать Понятно Балансы скрыты + Согласно информации от разработчиков сети, токены Kaspa находятся в режиме бета. Следите за обновлениями! + Бета режим Пожалуйста, отсканируйте карту или кольцо Пожалуйста, попробуйте снова через 30 секунд или отсканируйте карту или кольцо Слишком много попыток @@ -227,7 +229,7 @@ Не выбрано Сеть Сеть - Вы можете добавить токен в ручную, если он не поддерживается Tangem + Вы можете добавить токен вручную, если он не поддерживается Tangem Например, USDC Символ Символ токена diff --git a/core/res/src/main/res/values/strings.xml b/core/res/src/main/res/values/strings.xml index ede0aab5f3..537be90651 100644 --- a/core/res/src/main/res/values/strings.xml +++ b/core/res/src/main/res/values/strings.xml @@ -51,6 +51,8 @@ Don\'t show again Got it Balances are hidden + According to the blockchain developers, Kaspa tokens are currently in beta. Stay tuned for updates! + Beta Mode Please scan the card or ring Please try again in 30 seconds or scan the card or ring Too many attempts diff --git a/domain/tokens/models/src/main/java/com/tangem/domain/tokens/model/warnings/CryptoCurrencyWarning.kt b/domain/tokens/models/src/main/java/com/tangem/domain/tokens/model/warnings/CryptoCurrencyWarning.kt index 4c4473250c..ccd2264205 100644 --- a/domain/tokens/models/src/main/java/com/tangem/domain/tokens/model/warnings/CryptoCurrencyWarning.kt +++ b/domain/tokens/models/src/main/java/com/tangem/domain/tokens/model/warnings/CryptoCurrencyWarning.kt @@ -57,4 +57,6 @@ sealed class CryptoCurrencyWarning { val amount: BigDecimal, val maxAmount: BigDecimal?, ) : CryptoCurrencyWarning() + + data object TokensInBetaWarning : CryptoCurrencyWarning() } \ No newline at end of file diff --git a/domain/tokens/src/main/kotlin/com/tangem/domain/tokens/GetCurrencyWarningsUseCase.kt b/domain/tokens/src/main/kotlin/com/tangem/domain/tokens/GetCurrencyWarningsUseCase.kt index 3e54e19951..325bba0998 100644 --- a/domain/tokens/src/main/kotlin/com/tangem/domain/tokens/GetCurrencyWarningsUseCase.kt +++ b/domain/tokens/src/main/kotlin/com/tangem/domain/tokens/GetCurrencyWarningsUseCase.kt @@ -173,6 +173,7 @@ class GetCurrencyWarningsUseCase( when { tokenStatus != null && coinStatus != null -> { buildList { + getIsBetaTokensWarning(tokenStatus.currency)?.let(::add) getFeeWarning( userWalletId = userWalletId, coinStatus = coinStatus, @@ -219,6 +220,15 @@ class GetCurrencyWarningsUseCase( } } + private fun getIsBetaTokensWarning(currency: CryptoCurrency): CryptoCurrencyWarning? { + val isTokenBetaFunctionality = BlockchainUtils.isTokenBetaFunctionality(currency.network.id.value) + return if (isTokenBetaFunctionality) { + CryptoCurrencyWarning.TokensInBetaWarning + } else { + null + } + } + private suspend fun constructTokenBalanceNotEnoughWarning( userWalletId: UserWalletId, tokenStatus: CryptoCurrencyStatus, diff --git a/features/tokendetails/impl/src/main/kotlin/com/tangem/feature/tokendetails/presentation/tokendetails/analytics/TokenDetailsNotificationsAnalyticsSender.kt b/features/tokendetails/impl/src/main/kotlin/com/tangem/feature/tokendetails/presentation/tokendetails/analytics/TokenDetailsNotificationsAnalyticsSender.kt index 414b838b91..8e3ed14b1c 100644 --- a/features/tokendetails/impl/src/main/kotlin/com/tangem/feature/tokendetails/presentation/tokendetails/analytics/TokenDetailsNotificationsAnalyticsSender.kt +++ b/features/tokendetails/impl/src/main/kotlin/com/tangem/feature/tokendetails/presentation/tokendetails/analytics/TokenDetailsNotificationsAnalyticsSender.kt @@ -53,6 +53,7 @@ internal class TokenDetailsNotificationsAnalyticsSender( is TokenDetailsNotification.HederaAssociateWarning, is TokenDetailsNotification.KoinosMana, is TokenDetailsNotification.MigrationMaticToPol, + is TokenDetailsNotification.TokensInBeta, -> null } } diff --git a/features/tokendetails/impl/src/main/kotlin/com/tangem/feature/tokendetails/presentation/tokendetails/state/components/TokenDetailsNotification.kt b/features/tokendetails/impl/src/main/kotlin/com/tangem/feature/tokendetails/presentation/tokendetails/state/components/TokenDetailsNotification.kt index 86db0a1bf3..abc78abbec 100644 --- a/features/tokendetails/impl/src/main/kotlin/com/tangem/feature/tokendetails/presentation/tokendetails/state/components/TokenDetailsNotification.kt +++ b/features/tokendetails/impl/src/main/kotlin/com/tangem/feature/tokendetails/presentation/tokendetails/state/components/TokenDetailsNotification.kt @@ -229,4 +229,9 @@ internal sealed class TokenDetailsNotification(val config: NotificationConfig) { title = resourceReference(id = R.string.warning_matic_migration_title), subtitle = resourceReference(id = R.string.warning_matic_migration_message), ) + + data object TokensInBeta : Warning( + title = resourceReference(id = R.string.beta_mode_warning_title), + subtitle = resourceReference(id = R.string.beta_mode_warning_message), + ) } \ No newline at end of file diff --git a/features/tokendetails/impl/src/main/kotlin/com/tangem/feature/tokendetails/presentation/tokendetails/state/factory/TokenDetailsNotificationConverter.kt b/features/tokendetails/impl/src/main/kotlin/com/tangem/feature/tokendetails/presentation/tokendetails/state/factory/TokenDetailsNotificationConverter.kt index b1435ae301..1c0e9869ad 100644 --- a/features/tokendetails/impl/src/main/kotlin/com/tangem/feature/tokendetails/presentation/tokendetails/state/factory/TokenDetailsNotificationConverter.kt +++ b/features/tokendetails/impl/src/main/kotlin/com/tangem/feature/tokendetails/presentation/tokendetails/state/factory/TokenDetailsNotificationConverter.kt @@ -135,6 +135,7 @@ internal class TokenDetailsNotificationConverter( }, ) is CryptoCurrencyWarning.MigrationMaticToPol -> MigrationMaticToPol + is CryptoCurrencyWarning.TokensInBetaWarning -> TokensInBeta } } diff --git a/libs/crypto/src/main/java/com/tangem/lib/crypto/BlockchainUtils.kt b/libs/crypto/src/main/java/com/tangem/lib/crypto/BlockchainUtils.kt index 80b0af4a35..5e1a12c171 100644 --- a/libs/crypto/src/main/java/com/tangem/lib/crypto/BlockchainUtils.kt +++ b/libs/crypto/src/main/java/com/tangem/lib/crypto/BlockchainUtils.kt @@ -141,4 +141,9 @@ object BlockchainUtils { private fun getNetworkNameWithoutTestnet(blockchain: Blockchain): String { return blockchain.getNetworkName().replace(oldValue = " Testnet", newValue = "") } + + fun isTokenBetaFunctionality(blockchainId: String): Boolean { + val blockchain = Blockchain.fromId(blockchainId) + return blockchain == Blockchain.Kaspa + } } \ No newline at end of file