Updated on 2026-08-14
|
|
@ -219,6 +219,7 @@
|
|||
<string name="main_warning_missing_derivation_title">Некоторые адреса отсутствуют</string>
|
||||
<string name="manage_tokens_add">Добавить</string>
|
||||
<string name="manage_tokens_edit">Изменить</string>
|
||||
<string name="notification_subtitle_not_enough_funds">Чтобы отправить транзакцию %1$s, необходимо пополнить баланс %2$s (%3$s) для оплаты комиссии сети</string>
|
||||
<string name="notification_title_not_enough_funds">Невозможно покрыть %1$s комиссию</string>
|
||||
<string name="onboarding_access_code_feature_1_description">Вам необходимо установить единый код доступа для защиты всех ваших карт</string>
|
||||
<string name="onboarding_access_code_feature_1_title">Защита</string>
|
||||
|
|
@ -351,6 +352,8 @@
|
|||
</plurals>
|
||||
<string name="registration_task_alert_message">Пожалуйста, удерживайте карту до завершения операции</string>
|
||||
<string name="reset_card_to_factory_button_title">Сбросить карту</string>
|
||||
<string name="reset_card_to_factory_condition_1">Я понимаю, что после выполнения этого действия у меня больше не будет доступа к текущему кошельку</string>
|
||||
<string name="reset_card_to_factory_condition_2">Я понимаю, что не смогу этой картой восстановить пароль на остальных картах, если я его забуду</string>
|
||||
<string name="reset_card_with_backup_to_factory_message">Сброс к заводским настройкам приведет к полному удалению кошелька с выбранной карты. Вы не сможете восстановить текущий кошелек или использовать данную карту для восстановления кода доступа.</string>
|
||||
<string name="reset_card_without_backup_to_factory_message">Сброс к заводским настройкам приведет к полному удалению кошелька с выбранной карты. Вы не сможете восстановить текущий кошелек.</string>
|
||||
<string name="russian_bank_card_warning_subtitle">У вас есть карта банка другой страны, а также вид на жительство или регистрация вне РФ?</string>
|
||||
|
|
@ -530,6 +533,7 @@
|
|||
<string name="wallet_connect_network_not_found_format">Сеть %s не найдена. Пожалуйста, добавьте её и попробуйте заново.</string>
|
||||
<string name="wallet_connect_no_sessions_message">Нет открытых сессий WalletConnect</string>
|
||||
<string name="wallet_connect_no_sessions_title">Упс. Нет сессий.</string>
|
||||
<string name="wallet_connect_pairing_error">Не удалось создать пару WalletConnect: %1$s</string>
|
||||
<string name="wallet_connect_paste_from_clipboard">Вставить из буфера обмена</string>
|
||||
<string name="wallet_connect_personal_sign_message">Сообщение для %1$s:\n%2$s</string>
|
||||
<string name="wallet_connect_request_session_start">Запрос на открытие сессии для\n%1$s\n\nСЕТЬ: %2$s\n\nURL: %3$s</string>
|
||||
|
|
@ -572,7 +576,10 @@
|
|||
<string name="warning_rate_app_message">Как вам Tangem?</string>
|
||||
<string name="warning_rate_app_title">Один вопрос</string>
|
||||
<string name="warning_signed_tx_previously">Эта карта подписывала транзакции в прошлом</string>
|
||||
<string name="warning_subtitle_network_unreachable">В настоящее время сеть недоступна. Пожалуйста, повторите попытку позже.</string>
|
||||
<string name="warning_subtitle_some_networks_unreachable">Некоторые сети в настоящее время недоступны. Пожалуйста, повторите попытку позже.</string>
|
||||
<string name="warning_testnet_card_message">Это тестовая карта. Не принимайте её в качестве оплаты. Эта карта должна использоваться только в целях тестирования и разработки.</string>
|
||||
<string name="warning_title_some_networks_unreachable">Некоторые сети недоступны</string>
|
||||
<string name="welcome_interrupted_backup_alert_discard">Отказаться</string>
|
||||
<string name="welcome_interrupted_backup_alert_message">Вы не закончили резервное копирование. Хотите продолжить?</string>
|
||||
<string name="welcome_interrupted_backup_alert_resume">Да, возобновить</string>
|
||||
|
|
|
|||
|
|
@ -277,6 +277,7 @@
|
|||
</plurals>
|
||||
<string name="registration_task_alert_message">請持有卡片直至操作完成</string>
|
||||
<string name="reset_card_to_factory_button_title">重置卡片</string>
|
||||
<string name="reset_card_to_factory_condition_1">我了解執行此操作後,我將無法再訪問當前錢包</string>
|
||||
<string name="reset_card_with_backup_to_factory_message">恢復原廠設置將從所選卡中完全刪除錢包。您將無法恢復當前錢包或使用卡恢復訪問密碼</string>
|
||||
<string name="reset_card_without_backup_to_factory_message">恢復原廠設置將從所選卡中完全刪除錢包並將其從應用程序中刪除。您將無法恢復當前錢包</string>
|
||||
<string name="russian_bank_card_warning_title">目前不接受俄羅斯銀行卡</string>
|
||||
|
|
@ -456,6 +457,7 @@
|
|||
<string name="wallet_error_no_account">帳號尚未被創造</string>
|
||||
<string name="wallet_error_unsupported_blockchain">不支持此卡</string>
|
||||
<string name="wallet_error_unsupported_blockchain_subtitle">您的 Tangem 卡是為與不同的應用程序一起工作而設計的。請查看卡片上的名稱和說明,並安裝正確的應用程序</string>
|
||||
<string name="wallet_marketplace_block_title">%s市場價格</string>
|
||||
<string name="wallet_notification_address_copied">地址已復製到剪貼板</string>
|
||||
<string name="wallet_notification_no_internet">無網路</string>
|
||||
<string name="wallet_pending_tx_receiving">接收中</string>
|
||||
|
|
|
|||
|
|
@ -160,13 +160,13 @@
|
|||
<string name="details_manage_security_passcode">Passcode</string>
|
||||
<string name="details_manage_security_passcode_description">Before executing any command entailing a change of the card state, you will have to enter the passcode.</string>
|
||||
<string name="details_referral_title">Referral program</string>
|
||||
<string name="details_row_description_flip_to_hide">Flip your device screen down to quickly hide and show balances</string>
|
||||
<string name="details_row_privacy_policy">Privacy policy</string>
|
||||
<string name="details_row_subtitle_signed_hashes_format">%s hashes</string>
|
||||
<string name="details_row_title_cid">Card ID</string>
|
||||
<string name="details_row_title_create_backup">Link More Cards</string>
|
||||
<string name="details_row_title_currency">App Currency</string>
|
||||
<string name="details_row_title_flip_to_hide">Flip-to-Hide Balances</string>
|
||||
<string name="details_row_description_flip_to_hide">Flip your device screen down to quickly hide and show balances</string>
|
||||
<string name="details_row_title_issuer">Issuer</string>
|
||||
<string name="details_row_title_send_feedback">Send Feedback</string>
|
||||
<string name="details_row_title_signed_hashes">Signed</string>
|
||||
|
|
@ -242,6 +242,7 @@
|
|||
<string name="manage_tokens_unavailable_description">The selected token is currently unavailable for actions within the crypto wallet. But worry not, you can express your interest by upvoting it.</string>
|
||||
<string name="manage_tokens_unavailable_vote">Upvote</string>
|
||||
<string name="manage_tokens_wallet_selector_title">Choose wallet</string>
|
||||
<string name="notification_subtitle_not_enough_funds">To make a %1$s transaction you need to deposit some %2$s (%3$s) to cover the network fee</string>
|
||||
<string name="notification_title_not_enough_funds">Unable to cover %1$s fee</string>
|
||||
<string name="onboarding_access_code_feature_1_description">You have to set up a single access code to protect all your wallets</string>
|
||||
<string name="onboarding_access_code_feature_1_title">Protect</string>
|
||||
|
|
@ -371,7 +372,7 @@
|
|||
</plurals>
|
||||
<string name="registration_task_alert_message">Please hold the card until the operation complete</string>
|
||||
<string name="reset_card_to_factory_button_title">Reset the Card</string>
|
||||
<string name="reset_card_to_factory_condition_1">I realize that I\'ll lose access to my funds on this card after this action.</string>
|
||||
<string name="reset_card_to_factory_condition_1">I understand that after performing this action, I will no longer have access to the current wallet</string>
|
||||
<string name="reset_card_to_factory_condition_2">I realize that I can\'t use this card to recover my access code on the other cards.</string>
|
||||
<string name="reset_card_with_backup_to_factory_message">Factory Reset will completely delete the wallet from the selected card. You will not be able to restore the current wallet or use the card to recover the access code.</string>
|
||||
<string name="reset_card_without_backup_to_factory_message">Factory Reset will completely delete the wallet from the selected card and remove it from the app. You will not be able to restore the current wallet.</string>
|
||||
|
|
@ -475,6 +476,7 @@
|
|||
<item quantity="one">%d token</item>
|
||||
<item quantity="other">%d tokens</item>
|
||||
</plurals>
|
||||
<string name="token_details_choose_address">Choose address</string>
|
||||
<string name="token_details_hide_alert_hide">Hide</string>
|
||||
<string name="token_details_hide_alert_message">You are about to hide this token from the main screen. You can add it back anytime through the manage tokens page.</string>
|
||||
<string name="token_details_hide_alert_title">Hide %s</string>
|
||||
|
|
@ -550,6 +552,7 @@
|
|||
<string name="wallet_connect_network_not_found_format">%s network not found. Please, add it first and try again.</string>
|
||||
<string name="wallet_connect_no_sessions_message">No opened WalletConnect sessions</string>
|
||||
<string name="wallet_connect_no_sessions_title">Ooops. No Sessions.</string>
|
||||
<string name="wallet_connect_pairing_error">Failed to pairing WalletConnect session: %1$s</string>
|
||||
<string name="wallet_connect_paste_from_clipboard">Paste from clipboard</string>
|
||||
<string name="wallet_connect_personal_sign_message">Message for %1$s:\n%2$s</string>
|
||||
<string name="wallet_connect_request_session_start">Request to start a session for\n%1$s\n\nNETWORK: %2$s\n\nURL: %3$s</string>
|
||||
|
|
@ -592,6 +595,7 @@
|
|||
<string name="warning_low_signatures_format">There are only %s signatures available on this card. You must withdraw all of your funds.</string>
|
||||
<string name="warning_rate_app_message">How do you like Tangem?</string>
|
||||
<string name="warning_rate_app_title">One question</string>
|
||||
<string name="warning_rate_app_title_new">Rate the app</string>
|
||||
<string name="warning_signed_tx_previously">This card has signed transactions in the past</string>
|
||||
<string name="warning_subtitle_network_unreachable">Network currently is unreachable. Please try again later.</string>
|
||||
<string name="warning_subtitle_some_networks_unreachable">Some networks currently are unreachable. Please try again later.</string>
|
||||
|
|
@ -609,5 +613,4 @@
|
|||
<string name="welcome_unlock_card">Scan card</string>
|
||||
<string name="welcome_unlock_description">Use %s or scan a card to access the app</string>
|
||||
<string name="welcome_unlock_title">Welcome back!</string>
|
||||
<string name="token_details_choose_address">Choose address</string>
|
||||
</resources>
|
||||
|
|
|
|||
|
|
@ -9,6 +9,8 @@ interface CardTypesResolver {
|
|||
|
||||
fun isTangemWallet(): Boolean
|
||||
|
||||
fun isShibaWallet(): Boolean
|
||||
|
||||
fun isWhiteWallet(): Boolean
|
||||
|
||||
fun isWallet2(): Boolean
|
||||
|
|
|
|||
|
|
@ -25,6 +25,10 @@ internal class TangemCardTypesResolver(
|
|||
card.firmwareVersion >= FirmwareVersion.MultiWalletAvailable
|
||||
}
|
||||
|
||||
override fun isShibaWallet(): Boolean {
|
||||
return card.firmwareVersion.compareTo(FirmwareVersion.KeysImportAvailable) == 0
|
||||
}
|
||||
|
||||
override fun isWhiteWallet(): Boolean {
|
||||
return walletData == null && card.firmwareVersion <= FirmwareVersion.HDWalletAvailable
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,8 +13,9 @@ import com.tangem.feature.wallet.impl.R
|
|||
*/
|
||||
internal object WalletImageResolver {
|
||||
|
||||
private const val DOUBLE_WALLET_SET_BACKUP_COUNT = 2
|
||||
private const val TRIPLE_WALLET_SET_BACKUP_COUNT = 3
|
||||
private const val WALLET_WITHOUT_BACKUP_COUNT = 1
|
||||
private const val WALLET_WITH_ONE_BACKUP_COUNT = 2
|
||||
private const val WALLET_WITH_TWO_BACKUPS_COUNT = 3
|
||||
|
||||
/** Get a specified wallet [userWallet] image */
|
||||
@DrawableRes
|
||||
|
|
@ -22,9 +23,10 @@ internal object WalletImageResolver {
|
|||
val cardTypesResolver = userWallet.scanResponse.cardTypesResolver
|
||||
return when {
|
||||
cardTypesResolver.isWallet2() -> userWallet.resolveWallet2()
|
||||
cardTypesResolver.isTangemWallet() -> R.drawable.ill_wallet_120_106
|
||||
cardTypesResolver.isWhiteWallet() -> R.drawable.ill_old_wallet_120_106
|
||||
cardTypesResolver.isTangemTwins() -> R.drawable.ill_twin_120_106
|
||||
cardTypesResolver.isShibaWallet() -> userWallet.resolveShibaWallet()
|
||||
cardTypesResolver.isTangemWallet() -> userWallet.resolveWallet1()
|
||||
cardTypesResolver.isWhiteWallet() -> R.drawable.ill_wallet_old_white_120_106
|
||||
cardTypesResolver.isTangemTwins() -> R.drawable.ill_twins_120_106
|
||||
cardTypesResolver.isStart2Coin() -> R.drawable.ill_start2coin_120_106
|
||||
cardTypesResolver.isTangemNote() -> resolveNote(blockchain = cardTypesResolver.getBlockchain())
|
||||
cardTypesResolver.isDevKit() -> R.drawable.ill_dev_120_106
|
||||
|
|
@ -33,19 +35,42 @@ internal object WalletImageResolver {
|
|||
}
|
||||
|
||||
private fun UserWallet.resolveWallet2(): Int? {
|
||||
val count = getCardsCount()
|
||||
|
||||
return if (count != null) {
|
||||
return resolveWalletWithBackups { count ->
|
||||
when (count) {
|
||||
DOUBLE_WALLET_SET_BACKUP_COUNT -> R.drawable.ill_wallet2_cards2_120_106
|
||||
TRIPLE_WALLET_SET_BACKUP_COUNT -> R.drawable.ill_wallet2_cards3_120_106
|
||||
WALLET_WITH_ONE_BACKUP_COUNT -> R.drawable.ill_wallet2_cards2_120_106
|
||||
WALLET_WITH_TWO_BACKUPS_COUNT -> R.drawable.ill_wallet2_cards3_120_106
|
||||
else -> null
|
||||
}
|
||||
} else {
|
||||
null
|
||||
}
|
||||
}
|
||||
|
||||
private fun UserWallet.resolveShibaWallet(): Int? {
|
||||
return resolveWalletWithBackups { count ->
|
||||
when (count) {
|
||||
WALLET_WITH_ONE_BACKUP_COUNT -> R.drawable.ill_shiba_card2_120_106
|
||||
WALLET_WITH_TWO_BACKUPS_COUNT -> R.drawable.ill_shiba_card3_120_106
|
||||
else -> null
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun UserWallet.resolveWallet1(): Int? {
|
||||
return resolveWalletWithBackups { count ->
|
||||
when (count) {
|
||||
WALLET_WITHOUT_BACKUP_COUNT -> R.drawable.ill_wallet1_cards1_120_106
|
||||
WALLET_WITH_ONE_BACKUP_COUNT -> R.drawable.ill_wallet1_cards2_120_106
|
||||
WALLET_WITH_TWO_BACKUPS_COUNT -> R.drawable.ill_wallet1_cards3_120_106
|
||||
else -> null
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun UserWallet.resolveWalletWithBackups(resolve: (Int) -> Int?): Int? {
|
||||
val count = getCardsCount()
|
||||
|
||||
return if (count != null) resolve(count) else null
|
||||
}
|
||||
|
||||
private fun resolveNote(blockchain: Blockchain): Int? {
|
||||
return when (blockchain) {
|
||||
Blockchain.Bitcoin -> R.drawable.ill_note_btc_120_106
|
||||
|
|
|
|||
|
|
@ -137,7 +137,7 @@ sealed class WalletNotification(val config: NotificationConfig) {
|
|||
val onCloseClick: () -> Unit,
|
||||
) : WalletNotification(
|
||||
config = NotificationConfig(
|
||||
title = resourceReference(id = R.string.warning_rate_app_title),
|
||||
title = resourceReference(id = R.string.warning_rate_app_title_new),
|
||||
subtitle = resourceReference(id = R.string.warning_rate_app_message),
|
||||
iconResId = R.drawable.ic_star_24,
|
||||
buttonsState = NotificationConfig.ButtonsState.PairButtonsConfig(
|
||||
|
|
|
|||
|
After Width: | Height: | Size: 8.5 KiB |
|
After Width: | Height: | Size: 9.8 KiB |
|
Before Width: | Height: | Size: 92 KiB |
|
After Width: | Height: | Size: 5.6 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 108 KiB |
|
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 84 KiB |