diff --git a/core/res/src/main/res/values-ru/strings.xml b/core/res/src/main/res/values-ru/strings.xml index 7804c88500..fbfba50e2f 100644 --- a/core/res/src/main/res/values-ru/strings.xml +++ b/core/res/src/main/res/values-ru/strings.xml @@ -219,6 +219,7 @@ Некоторые адреса отсутствуют Добавить Изменить + Чтобы отправить транзакцию %1$s, необходимо пополнить баланс %2$s (%3$s) для оплаты комиссии сети Невозможно покрыть %1$s комиссию Вам необходимо установить единый код доступа для защиты всех ваших карт Защита @@ -351,6 +352,8 @@ Пожалуйста, удерживайте карту до завершения операции Сбросить карту + Я понимаю, что после выполнения этого действия у меня больше не будет доступа к текущему кошельку + Я понимаю, что не смогу этой картой восстановить пароль на остальных картах, если я его забуду Сброс к заводским настройкам приведет к полному удалению кошелька с выбранной карты. Вы не сможете восстановить текущий кошелек или использовать данную карту для восстановления кода доступа. Сброс к заводским настройкам приведет к полному удалению кошелька с выбранной карты. Вы не сможете восстановить текущий кошелек. У вас есть карта банка другой страны, а также вид на жительство или регистрация вне РФ? @@ -530,6 +533,7 @@ Сеть %s не найдена. Пожалуйста, добавьте её и попробуйте заново. Нет открытых сессий WalletConnect Упс. Нет сессий. + Не удалось создать пару WalletConnect: %1$s Вставить из буфера обмена Сообщение для %1$s:\n%2$s Запрос на открытие сессии для\n%1$s\n\nСЕТЬ: %2$s\n\nURL: %3$s @@ -572,7 +576,10 @@ Как вам Tangem? Один вопрос Эта карта подписывала транзакции в прошлом + В настоящее время сеть недоступна. Пожалуйста, повторите попытку позже. + Некоторые сети в настоящее время недоступны. Пожалуйста, повторите попытку позже. Это тестовая карта. Не принимайте её в качестве оплаты. Эта карта должна использоваться только в целях тестирования и разработки. + Некоторые сети недоступны Отказаться Вы не закончили резервное копирование. Хотите продолжить? Да, возобновить diff --git a/core/res/src/main/res/values-zh-rTW/strings.xml b/core/res/src/main/res/values-zh-rTW/strings.xml index 01a2c72b3e..0b5c40a739 100644 --- a/core/res/src/main/res/values-zh-rTW/strings.xml +++ b/core/res/src/main/res/values-zh-rTW/strings.xml @@ -277,6 +277,7 @@ 請持有卡片直至操作完成 重置卡片 + 我了解執行此操作後,我將無法再訪問當前錢包 恢復原廠設置將從所選卡中完全刪除錢包。您將無法恢復當前錢包或使用卡恢復訪問密碼 恢復原廠設置將從所選卡中完全刪除錢包並將其從應用程序中刪除。您將無法恢復當前錢包 目前不接受俄羅斯銀行卡 @@ -456,6 +457,7 @@ 帳號尚未被創造 不支持此卡 您的 Tangem 卡是為與不同的應用程序一起工作而設計的。請查看卡片上的名稱和說明,並安裝正確的應用程序 + %s市場價格 地址已復製到剪貼板 無網路 接收中 diff --git a/core/res/src/main/res/values/strings.xml b/core/res/src/main/res/values/strings.xml index 784650d7a8..f6e5c92913 100644 --- a/core/res/src/main/res/values/strings.xml +++ b/core/res/src/main/res/values/strings.xml @@ -160,13 +160,13 @@ Passcode Before executing any command entailing a change of the card state, you will have to enter the passcode. Referral program + Flip your device screen down to quickly hide and show balances Privacy policy %s hashes Card ID Link More Cards App Currency Flip-to-Hide Balances - Flip your device screen down to quickly hide and show balances Issuer Send Feedback Signed @@ -242,6 +242,7 @@ The selected token is currently unavailable for actions within the crypto wallet. But worry not, you can express your interest by upvoting it. Upvote Choose wallet + To make a %1$s transaction you need to deposit some %2$s (%3$s) to cover the network fee Unable to cover %1$s fee You have to set up a single access code to protect all your wallets Protect @@ -371,7 +372,7 @@ Please hold the card until the operation complete Reset the Card - I realize that I\'ll lose access to my funds on this card after this action. + I understand that after performing this action, I will no longer have access to the current wallet I realize that I can\'t use this card to recover my access code on the other cards. 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. 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. @@ -475,6 +476,7 @@ %d token %d tokens + Choose address Hide You are about to hide this token from the main screen. You can add it back anytime through the manage tokens page. Hide %s @@ -550,6 +552,7 @@ %s network not found. Please, add it first and try again. No opened WalletConnect sessions Ooops. No Sessions. + Failed to pairing WalletConnect session: %1$s Paste from clipboard Message for %1$s:\n%2$s Request to start a session for\n%1$s\n\nNETWORK: %2$s\n\nURL: %3$s @@ -592,6 +595,7 @@ There are only %s signatures available on this card. You must withdraw all of your funds. How do you like Tangem? One question + Rate the app This card has signed transactions in the past Network currently is unreachable. Please try again later. Some networks currently are unreachable. Please try again later. @@ -609,5 +613,4 @@ Scan card Use %s or scan a card to access the app Welcome back! - Choose address diff --git a/domain/legacy/src/main/java/com/tangem/domain/common/CardTypesResolver.kt b/domain/legacy/src/main/java/com/tangem/domain/common/CardTypesResolver.kt index c8dd146a5e..55153e8edc 100644 --- a/domain/legacy/src/main/java/com/tangem/domain/common/CardTypesResolver.kt +++ b/domain/legacy/src/main/java/com/tangem/domain/common/CardTypesResolver.kt @@ -9,6 +9,8 @@ interface CardTypesResolver { fun isTangemWallet(): Boolean + fun isShibaWallet(): Boolean + fun isWhiteWallet(): Boolean fun isWallet2(): Boolean diff --git a/domain/legacy/src/main/java/com/tangem/domain/common/TangemCardTypesResolver.kt b/domain/legacy/src/main/java/com/tangem/domain/common/TangemCardTypesResolver.kt index 65550e62f4..2a4baa2814 100644 --- a/domain/legacy/src/main/java/com/tangem/domain/common/TangemCardTypesResolver.kt +++ b/domain/legacy/src/main/java/com/tangem/domain/common/TangemCardTypesResolver.kt @@ -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 } diff --git a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/domain/WalletImageResolver.kt b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/domain/WalletImageResolver.kt index c262b71ea3..b9c019e84d 100644 --- a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/domain/WalletImageResolver.kt +++ b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/domain/WalletImageResolver.kt @@ -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 diff --git a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/state/components/WalletNotification.kt b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/state/components/WalletNotification.kt index 3e8335d4bd..5a2120d0e3 100644 --- a/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/state/components/WalletNotification.kt +++ b/features/wallet/impl/src/main/java/com/tangem/feature/wallet/presentation/wallet/state/components/WalletNotification.kt @@ -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( diff --git a/features/wallet/impl/src/main/res/drawable/ill_shiba_card2_120_106.webp b/features/wallet/impl/src/main/res/drawable/ill_shiba_card2_120_106.webp new file mode 100644 index 0000000000..4bb9688be5 Binary files /dev/null and b/features/wallet/impl/src/main/res/drawable/ill_shiba_card2_120_106.webp differ diff --git a/features/wallet/impl/src/main/res/drawable/ill_shiba_card3_120_106.webp b/features/wallet/impl/src/main/res/drawable/ill_shiba_card3_120_106.webp new file mode 100644 index 0000000000..e774f1b087 Binary files /dev/null and b/features/wallet/impl/src/main/res/drawable/ill_shiba_card3_120_106.webp differ diff --git a/features/wallet/impl/src/main/res/drawable/ill_twin_120_106.webp b/features/wallet/impl/src/main/res/drawable/ill_twin_120_106.webp deleted file mode 100644 index c70a8526de..0000000000 Binary files a/features/wallet/impl/src/main/res/drawable/ill_twin_120_106.webp and /dev/null differ diff --git a/features/wallet/impl/src/main/res/drawable/ill_twins_120_106.webp b/features/wallet/impl/src/main/res/drawable/ill_twins_120_106.webp new file mode 100644 index 0000000000..58e2196ccf Binary files /dev/null and b/features/wallet/impl/src/main/res/drawable/ill_twins_120_106.webp differ diff --git a/features/wallet/impl/src/main/res/drawable/ill_wallet1_cards1_120_106.webp b/features/wallet/impl/src/main/res/drawable/ill_wallet1_cards1_120_106.webp new file mode 100644 index 0000000000..afd5f31fda Binary files /dev/null and b/features/wallet/impl/src/main/res/drawable/ill_wallet1_cards1_120_106.webp differ diff --git a/features/wallet/impl/src/main/res/drawable/ill_wallet1_cards2_120_106.webp b/features/wallet/impl/src/main/res/drawable/ill_wallet1_cards2_120_106.webp new file mode 100644 index 0000000000..93f451d3e8 Binary files /dev/null and b/features/wallet/impl/src/main/res/drawable/ill_wallet1_cards2_120_106.webp differ diff --git a/features/wallet/impl/src/main/res/drawable/ill_wallet1_cards3_120_106.webp b/features/wallet/impl/src/main/res/drawable/ill_wallet1_cards3_120_106.webp new file mode 100644 index 0000000000..ae1f21e142 Binary files /dev/null and b/features/wallet/impl/src/main/res/drawable/ill_wallet1_cards3_120_106.webp differ diff --git a/features/wallet/impl/src/main/res/drawable/ill_wallet_120_106.webp b/features/wallet/impl/src/main/res/drawable/ill_wallet_120_106.webp deleted file mode 100644 index 890ad12eae..0000000000 Binary files a/features/wallet/impl/src/main/res/drawable/ill_wallet_120_106.webp and /dev/null differ diff --git a/features/wallet/impl/src/main/res/drawable/ill_old_wallet_120_106.webp b/features/wallet/impl/src/main/res/drawable/ill_wallet_old_white_120_106.webp similarity index 100% rename from features/wallet/impl/src/main/res/drawable/ill_old_wallet_120_106.webp rename to features/wallet/impl/src/main/res/drawable/ill_wallet_old_white_120_106.webp