diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index b460cf581a..4422e037f9 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -7,7 +7,6 @@ android:name="android.hardware.nfc" android:required="true" /> - @@ -131,18 +130,6 @@ - - - - - - - - R.drawable.ic_tron_round Blockchain.Gnosis -> R.drawable.ic_gnosis_round Blockchain.Polkadot, Blockchain.PolkadotTestnet -> R.drawable.ic_polkadot_round + Blockchain.Kusama -> R.drawable.ic_kusama_round Blockchain.Optimism, Blockchain.OptimismTestnet -> R.drawable.ic_optimism Blockchain.Dash -> R.drawable.ic_dash else -> R.drawable.ic_tangem_logo @@ -59,6 +60,7 @@ fun Blockchain.getGreyedOutIconRes(): Int { Blockchain.Tron, Blockchain.TronTestnet -> R.drawable.ic_tron_no_color Blockchain.Gnosis -> R.drawable.ic_gnosis_no_color Blockchain.Polkadot, Blockchain.PolkadotTestnet -> R.drawable.ic_polkadot_no_color + Blockchain.Kusama -> R.drawable.ic_kusama_no_color Blockchain.Optimism, Blockchain.OptimismTestnet -> R.drawable.ic_optimism_no_color Blockchain.Dash -> R.drawable.ic_dash_no_color else -> R.drawable.ic_tangem_logo diff --git a/app/src/main/java/com/tangem/tap/features/wallet/models/WalletWarning.kt b/app/src/main/java/com/tangem/tap/features/wallet/models/WalletWarning.kt index eb6c8caf49..3b80a95845 100644 --- a/app/src/main/java/com/tangem/tap/features/wallet/models/WalletWarning.kt +++ b/app/src/main/java/com/tangem/tap/features/wallet/models/WalletWarning.kt @@ -5,8 +5,7 @@ sealed class WalletWarning( ) { data class ExistentialDeposit( val currencyName: String, - val currencySymbols: String, - val existentialDepositString: String, + val edStringValueWithSymbol: String, ) : WalletWarning(1) object TransactionInProgress : WalletWarning(10) diff --git a/app/src/main/java/com/tangem/tap/features/wallet/redux/WalletState.kt b/app/src/main/java/com/tangem/tap/features/wallet/redux/WalletState.kt index 933ca823bc..6219fea552 100644 --- a/app/src/main/java/com/tangem/tap/features/wallet/redux/WalletState.kt +++ b/app/src/main/java/com/tangem/tap/features/wallet/redux/WalletState.kt @@ -360,8 +360,7 @@ data class WalletData( if (existentialDepositString != null) { val warning = WalletWarning.ExistentialDeposit( currencyName = currency.currencyName, - currencySymbols = currency.currencySymbol, - existentialDepositString = existentialDepositString, + edStringValueWithSymbol = "$existentialDepositString ${currency.currencySymbol}", ) walletWarnings.add(warning) } diff --git a/app/src/main/java/com/tangem/tap/features/wallet/ui/WalletWarningConverter.kt b/app/src/main/java/com/tangem/tap/features/wallet/ui/WalletWarningConverter.kt index 6d34bbbf1f..624d34da3e 100644 --- a/app/src/main/java/com/tangem/tap/features/wallet/ui/WalletWarningConverter.kt +++ b/app/src/main/java/com/tangem/tap/features/wallet/ui/WalletWarningConverter.kt @@ -18,7 +18,7 @@ class WalletWarningConverter( is WalletWarning.ExistentialDeposit -> { context.getString( R.string.warning_existential_deposit_message, - message.currencyName, message.currencySymbols, message.existentialDepositString, + message.currencyName, message.edStringValueWithSymbol, ) } is WalletWarning.BalanceNotEnoughForFee -> { diff --git a/app/src/main/java/com/tangem/tap/features/wallet/ui/wallet/SingleWalletView.kt b/app/src/main/java/com/tangem/tap/features/wallet/ui/wallet/SingleWalletView.kt index ef8d0b746b..a0126391a3 100644 --- a/app/src/main/java/com/tangem/tap/features/wallet/ui/wallet/SingleWalletView.kt +++ b/app/src/main/java/com/tangem/tap/features/wallet/ui/wallet/SingleWalletView.kt @@ -6,6 +6,7 @@ import androidx.recyclerview.widget.LinearLayoutManager import com.tangem.domain.common.TwinCardNumber import com.tangem.tap.common.extensions.beginDelayedTransition import com.tangem.tap.common.extensions.fitChipsByGroupWidth +import com.tangem.tap.common.extensions.getQuantityString import com.tangem.tap.common.extensions.hide import com.tangem.tap.common.extensions.show import com.tangem.tap.features.onboarding.products.twins.redux.TwinCardsState @@ -86,11 +87,7 @@ class SingleWalletView : WalletView() { private fun setupTwinCards(twinCardsState: TwinCardsState?, binding: FragmentWalletBinding) = with(binding) { twinCardsState?.cardNumber?.let { cardNumber -> tvTwinCardNumber.show() - val number = when (cardNumber) { - TwinCardNumber.First -> 1 - TwinCardNumber.Second -> 2 - } - tvTwinCardNumber.text = fragment?.getString(R.string.wallet_twins_chip_format, number, 2) + tvTwinCardNumber.text = tvTwinCardNumber.getQuantityString(R.plurals.card_label_card_count, 2) } if (twinCardsState?.cardNumber == null) { tvTwinCardNumber.hide() diff --git a/app/src/main/java/com/tangem/tap/network/exchangeServices/mercuryo/MercuryoService.kt b/app/src/main/java/com/tangem/tap/network/exchangeServices/mercuryo/MercuryoService.kt index dec1f05bae..35cc636808 100644 --- a/app/src/main/java/com/tangem/tap/network/exchangeServices/mercuryo/MercuryoService.kt +++ b/app/src/main/java/com/tangem/tap/network/exchangeServices/mercuryo/MercuryoService.kt @@ -76,7 +76,12 @@ class MercuryoService( if (!isBuyAllowed()) return false // blockchains which cant be defined by mercuryo service - val unsupportedBlockchains = listOf(Blockchain.Unknown, Blockchain.Binance, Blockchain.Arbitrum) + val unsupportedBlockchains = listOf( + Blockchain.Unknown, + Blockchain.Binance, + Blockchain.Arbitrum, + Blockchain.Optimism, + ) val blockchain = currency.blockchain return when (currency) { diff --git a/app/src/main/res/values-de/strings_blockchain.xml b/app/src/main/res/values-de/strings_blockchain.xml index 5cb1360d71..66998f875e 100644 --- a/app/src/main/res/values-de/strings_blockchain.xml +++ b/app/src/main/res/values-de/strings_blockchain.xml @@ -18,10 +18,6 @@ Der Gesamtbetrag geht über die Bilanz hinaus Die Gebühr geht über die Bilanz hinaus Minimum balance is %s - Memo - Tag - Invalid Memo. It won\'t be added to the transaction - Invalid Tag. It won\'t be added to the transaction - %s network has a concept of Existential Deposit. If your account drops below %s %s it will be deactivated and any remaining funds will be destroyed. + %s network has a concept of Existential Deposit. If your account drops below %s it will be deactivated and any remaining funds will be destroyed. Destination account is not active. Send %s or more to activate the account. \ No newline at end of file diff --git a/app/src/main/res/values-de/strings_final.xml b/app/src/main/res/values-de/strings_final.xml index 08c0072255..9f28bceb75 100644 --- a/app/src/main/res/values-de/strings_final.xml +++ b/app/src/main/res/values-de/strings_final.xml @@ -89,4 +89,8 @@ Scan your card To access all the networks you need to scan the card Failed to establish WalletConnect session + Memo + Tag + Invalid Memo. It won\'t be added to the transaction. + Invalid Tag. It won\'t be added to the transaction. \ No newline at end of file diff --git a/app/src/main/res/values-fr/strings_blockchain.xml b/app/src/main/res/values-fr/strings_blockchain.xml index 5bbb85c2f3..197f42551c 100644 --- a/app/src/main/res/values-fr/strings_blockchain.xml +++ b/app/src/main/res/values-fr/strings_blockchain.xml @@ -18,10 +18,6 @@ Réduire de %s XTZ Non, envoyer toute la somme Minimum balance is %s - Memo - Tag - Invalid Memo. It won\'t be added to the transaction - Invalid Tag. It won\'t be added to the transaction - %s network has a concept of Existential Deposit. If your account drops below %s %s it will be deactivated and any remaining funds will be destroyed. + %s network has a concept of Existential Deposit. If your account drops below %s it will be deactivated and any remaining funds will be destroyed. Destination account is not active. Send %s or more to activate the account. \ No newline at end of file diff --git a/app/src/main/res/values-fr/strings_final.xml b/app/src/main/res/values-fr/strings_final.xml index 16105d506d..727f9b8a7b 100644 --- a/app/src/main/res/values-fr/strings_final.xml +++ b/app/src/main/res/values-fr/strings_final.xml @@ -89,4 +89,8 @@ Scan your card To access all the networks you need to scan the card Failed to establish WalletConnect session + Memo + Tag + Invalid Memo. It won\'t be added to the transaction. + Invalid Tag. It won\'t be added to the transaction. \ No newline at end of file diff --git a/app/src/main/res/values-it/strings_blockchain.xml b/app/src/main/res/values-it/strings_blockchain.xml index 775778dbb0..92df7b9703 100644 --- a/app/src/main/res/values-it/strings_blockchain.xml +++ b/app/src/main/res/values-it/strings_blockchain.xml @@ -18,10 +18,6 @@ Riduci di %s XTZ No, invia l\'intero importo Minimum balance is %s - Memo - Tag - Invalid Memo. It won\'t be added to the transaction - Invalid Tag. It won\'t be added to the transaction - %s network has a concept of Existential Deposit. If your account drops below %s %s it will be deactivated and any remaining funds will be destroyed. + %s network has a concept of Existential Deposit. If your account drops below %s it will be deactivated and any remaining funds will be destroyed. Destination account is not active. Send %s or more to activate the account. \ No newline at end of file diff --git a/app/src/main/res/values-it/strings_final.xml b/app/src/main/res/values-it/strings_final.xml index 16105d506d..727f9b8a7b 100644 --- a/app/src/main/res/values-it/strings_final.xml +++ b/app/src/main/res/values-it/strings_final.xml @@ -89,4 +89,8 @@ Scan your card To access all the networks you need to scan the card Failed to establish WalletConnect session + Memo + Tag + Invalid Memo. It won\'t be added to the transaction. + Invalid Tag. It won\'t be added to the transaction. \ No newline at end of file diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index ca3e7e93f1..38ee22a3ca 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -129,7 +129,6 @@ Tangem Twin Один кошелек. Две карты. Одна, которую Вы держите в руках, и вторая карта с номером #%s - Карта %1d из %2d Пересоздать Twin кошелек Условия использования карты Tangem Twin diff --git a/app/src/main/res/values-ru/strings_blockchain.xml b/app/src/main/res/values-ru/strings_blockchain.xml index 61a4c91467..9ccdfd276e 100644 --- a/app/src/main/res/values-ru/strings_blockchain.xml +++ b/app/src/main/res/values-ru/strings_blockchain.xml @@ -18,5 +18,6 @@ Уменьшить на %s XTZ Нет, отправить все Минимальный баланс: %s + Сеть %s использует концепцию экзистенциального депозита. Если баланс вашего счета опустится ниже %s, он будет деактивирован, а все оставшиеся средства будут уничтожены. Аккаунт получателя не активирован. Отправьте %s или более для активации аккаунта. \ No newline at end of file diff --git a/app/src/main/res/values-ru/strings_final.xml b/app/src/main/res/values-ru/strings_final.xml index 225d7eb8cb..a3e89b432b 100644 --- a/app/src/main/res/values-ru/strings_final.xml +++ b/app/src/main/res/values-ru/strings_final.xml @@ -97,12 +97,12 @@ Сброс к заводским настройкам Сброс к заводским настройкам приведет к полному удалению кошелька с выбранной карты. Вы не сможете восстановить текущий кошелек или использовать эту карту для восстановления кода доступа. Выберите сеть + Отсканируйте карту + Чтобы получить доступ ко всем сетям, вам необходимо отсканировать карту Memo Tag Недопустимый Memo. Он не будет добавлен в транзакцию. Недопустимый Tag. Он не будет добавлен в транзакцию. Сеть %s использует концепцию экзистенциального депозита. Если баланс вашего счета опустится ниже %s %s, он будет деактивирован, а все оставшиеся средства будут уничтожены. - Отсканируйте карту - Чтобы получить доступ ко всем сетям, вам необходимо отсканировать карту Не удалось установить сессию WalletConnect diff --git a/app/src/main/res/values-v29/zendesk_styles.xml b/app/src/main/res/values-v29/zendesk_styles.xml index 628e83211a..764f632e87 100644 --- a/app/src/main/res/values-v29/zendesk_styles.xml +++ b/app/src/main/res/values-v29/zendesk_styles.xml @@ -1,7 +1,6 @@ - - diff --git a/app/src/main/res/values/strings_blockchain.xml b/app/src/main/res/values/strings_blockchain.xml index 6a496314b1..8014c2a199 100644 --- a/app/src/main/res/values/strings_blockchain.xml +++ b/app/src/main/res/values/strings_blockchain.xml @@ -18,10 +18,6 @@ Reduce by %s XTZ No, send all Minimum balance is %s - Memo - Tag - Invalid Memo. It won\'t be added to the transaction - Invalid Tag. It won\'t be added to the transaction - %s network has a concept of Existential Deposit. If your account drops below %s %s it will be deactivated and any remaining funds will be destroyed. + %s network has a concept of Existential Deposit. If your account drops below %s it will be deactivated and any remaining funds will be destroyed. Destination account is not active. Send %s or more to activate the account. \ No newline at end of file diff --git a/app/src/main/res/values/strings_final.xml b/app/src/main/res/values/strings_final.xml index bfa90d2130..a6d05a641e 100644 --- a/app/src/main/res/values/strings_final.xml +++ b/app/src/main/res/values/strings_final.xml @@ -102,4 +102,8 @@ Scan your card To access all the networks you need to scan the card Failed to establish WalletConnect session + Memo + Tag + Invalid Memo. It won\'t be added to the transaction. + Invalid Tag. It won\'t be added to the transaction. diff --git a/app/src/main/res/values/strings_untranslated.xml b/app/src/main/res/values/strings_untranslated.xml index afdc44412f..8d6c5017af 100644 --- a/app/src/main/res/values/strings_untranslated.xml +++ b/app/src/main/res/values/strings_untranslated.xml @@ -16,8 +16,6 @@ One wallet. Two cards. This one that you are holding in your hands and the other one with number #%s. - Card %1d of %2d - Re-create twin wallet Card terms of use diff --git a/app/src/main/res/values/zendesk_styles.xml b/app/src/main/res/values/zendesk_styles.xml index ebb4fcab6b..2513114d19 100644 --- a/app/src/main/res/values/zendesk_styles.xml +++ b/app/src/main/res/values/zendesk_styles.xml @@ -1,6 +1,9 @@ - diff --git a/domain/src/main/java/com/tangem/domain/features/addCustomToken/AddCustomTokenService.kt b/domain/src/main/java/com/tangem/domain/features/addCustomToken/AddCustomTokenService.kt index 502452e476..a502ae5041 100644 --- a/domain/src/main/java/com/tangem/domain/features/addCustomToken/AddCustomTokenService.kt +++ b/domain/src/main/java/com/tangem/domain/features/addCustomToken/AddCustomTokenService.kt @@ -26,7 +26,7 @@ class AddCustomTokenService( result.data.coins.forEach { coin -> val networksWithTheSameAddress = coin.networks .filter { it.contractAddress != null || it.decimalCount != null } - .filter { it.contractAddress == contractAddress } + .filter { it.contractAddress?.equals(contractAddress, ignoreCase = true) == true } .filter { supportedTokenNetworkIds.contains(it.networkId) } if (networksWithTheSameAddress.isNotEmpty()) { val newToken = coin.copy(networks = networksWithTheSameAddress) @@ -45,6 +45,5 @@ class AddCustomTokenService( private fun selectNetworksForSearch(networkId: String?): String { return networkId ?: supportedTokenNetworkIds.joinToString(",") - } } \ No newline at end of file