Updated on 2026-08-14

This commit is contained in:
Tangem 2025-11-13 10:01:29 +01:00
parent a36580c661
commit cbc3be4561
5 changed files with 99 additions and 14 deletions

View file

@ -1385,12 +1385,14 @@
<string name="tangempay_card_details_open_wallet_button">Google Wallet öffnen</string>
<string name="tangempay_card_details_open_wallet_notification_subtitle">Richte Tangem Pay mit wenigen Klicks ein und bezahlen mit Google Pay.</string>
<string name="tangempay_card_details_open_wallet_notification_title">Karte zu Google Pay hinzufügen</string>
<string name="tangempay_card_details_open_wallet_notification_title_apple">Karte zu Apple Pay hinzufügen</string>
<string name="tangempay_card_details_open_wallet_step_1">Google Wallet öffnen</string>
<string name="tangempay_card_details_open_wallet_step_2">Tippe auf „Karte hinzufügen“.</string>
<string name="tangempay_card_details_open_wallet_step_3">Gebe die Kartendaten manuell ein</string>
<string name="tangempay_card_details_open_wallet_step_4">Verifiziere die Karte mit dem Einmalpasswort (OPT), das an Dein Gerät gesendet wird.</string>
<string name="tangempay_card_details_open_wallet_step_5">Alles erledigt! Deine Karte ist einsatzbereit.</string>
<string name="tangempay_card_details_open_wallet_title">Karte zu Google Pay hinzufügen</string>
<string name="tangempay_card_details_open_wallet_title_apple">Karte zu Apple Pay hinzufügen</string>
<string name="tangempay_card_details_receive_description">Teile Deine Adresse mit oder zeig den QR-Code.</string>
<string name="tangempay_card_details_receive_error_description">Es wurden technische Probleme festgestellt. Bitte versuche es später erneut oder kontaktiere den Support.</string>
<string name="tangempay_card_details_receive_error_title">Empfangen ist jetzt nicht verfügbar</string>

View file

@ -1484,7 +1484,7 @@
<string name="yield_module_earn_sheet_high_fee_description">Les frais de réseau sont actuellement trop élevés pour permettre l\'exécution des prêts. Les fonds seront versés dès qu\'ils auront baissé à %1$s ou moins.</string>
<string name="yield_module_earn_sheet_my_funds_title">Mes fonds</string>
<string name="yield_module_earn_sheet_provider_description">Vos %1$s sont désormais déposés chez Aave et rapportent des intérêts. Vous détenez %2$s tokens, ce qui représente votre solde et augmente au fil du temps. Lorsque vous déposez davantage de fonds, ceux-ci sont fournis à Aave afin de rapporter des intérêts, moins les frais de transaction.</string>
<string name="yield_module_earn_sheet_title">Gagner</string>
<string name="yield_module_earn_sheet_title">Mode Rendement</string>
<string name="yield_module_earn_sheet_total_earnings_title">Total des gains</string>
<string name="yield_module_earn_sheet_transfers_title">Transferts vers Aave</string>
<string name="yield_module_explore_sheet_explore_aave_button_title">Découvrez Aave</string>
@ -1500,7 +1500,7 @@
<string name="yield_module_fee_policy_tangem_service_fee_title">Tangem prélève également des frais de service de 15% sur les revenus générés.</string>
<string name="yield_module_high_fee_error">Vos fonds seront automatiquement transférés vers Aave dès que les frais de réseau seront moins élevés ou que votre solde atteindra le montant minimum requis.</string>
<string name="yield_module_historical_returns">Rendements historiques</string>
<string name="yield_module_main_view_approve_notification_description">L\'autorisation pour votre token en mode Yield a été révoquée. Ouvrez le token pour accorder à nouveau l\'autorisation.</string>
<string name="yield_module_main_view_approve_notification_description">L\'autorisation pour votre token en mode Rendement a été révoquée. Ouvrez le token pour accorder à nouveau l\'autorisation.</string>
<string name="yield_module_main_view_approve_notification_title">Approbations de tokens nécessaires</string>
<string name="yield_module_network_fee_unreachable_notification_description">Vérifiez votre connexion réseau.</string>
<string name="yield_module_network_fee_unreachable_notification_title">Informations sur les frais de réseau inaccessibles</string>
@ -1535,12 +1535,12 @@
<string name="yield_module_token_details_earn_notification_apy">APY</string>
<string name="yield_module_token_details_earn_notification_description">Les intérêts sont cumulés automatiquement.</string>
<string name="yield_module_token_details_earn_notification_earning_on_your_balance_subtitle">Les intérêts sont cumulés automatiquement.</string>
<string name="yield_module_token_details_earn_notification_earning_on_your_balance_title">Mode de rendement</string>
<string name="yield_module_token_details_earn_notification_earning_on_your_balance_title">Mode Rendement</string>
<string name="yield_module_token_details_earn_notification_processing">Traitement de votre dépôt</string>
<string name="yield_module_token_details_earn_notification_title">Mode Rendement</string>
<string name="yield_module_transfer_mode_automatic">Automatique</string>
<string name="yield_module_unable_to_cover_fee_description">Déposez %1$s %2$s pour couvrir les frais de réseau liés aux transactions.</string>
<string name="yield_module_unable_to_cover_fee_title">Impossible de couvrir les frais %s</string>
<string name="yield_module_unavailable_subtitle">Le service d\'intérêt n\'est pas disponible pour le moment. Veuillez réessayer plus tard.</string>
<string name="yield_module_unavailable_title">Gains indisponibles</string>
<string name="yield_module_unavailable_subtitle">Le mode rendement n\'est pas disponible pour le moment. Veuillez réessayer plus tard.</string>
<string name="yield_module_unavailable_title">Le mode Rendement est indisponible</string>
</resources>

View file

@ -269,7 +269,7 @@
<string name="common_free">無料</string>
<string name="common_from">送信元</string>
<string name="common_generate_addresses">アドレスを同期する</string>
<string name="common_get_started">もっと詳しく</string>
<string name="common_get_started">はじめる</string>
<string name="common_get_token">トークンを取得</string>
<string name="common_go_to_provider">プロバイダーへ移動</string>
<string name="common_go_to_token">トークンへ移動</string>
@ -370,6 +370,7 @@
<string name="currency_subtitle_expanded">利用可能なネットワーク</string>
<string name="custom_token_another_account_dialog_description">このトークンの導出パスが%1$sの導出パスと一致しています。トークンはこのアカウントに追加されます。</string>
<string name="custom_token_another_account_dialog_title">導出パスは別のアカウントに属します。</string>
<string name="custom_token_another_account_snackbar_text">トークンが%1$sアカウントに追加されました</string>
<string name="custom_token_contract_address_input_title">コントラクトアドレス</string>
<string name="custom_token_creation_error_invalid_contract_address">コントラクトアドレスが無効です</string>
<string name="custom_token_creation_error_network_not_selected">ネットワークを選択してください</string>
@ -1337,6 +1338,7 @@
<string name="swapping_token_list_title">トークンを選択</string>
<string name="swapping_token_not_available">利用不可</string>
<string name="tangem_pay_card_frozen">カードが凍結されています</string>
<string name="tangem_pay_card_payment">カード決済</string>
<string name="tangem_pay_deposit">入金</string>
<string name="tangem_pay_dispute">異議申し立て</string>
<string name="tangem_pay_explore_transaction">取引を表示</string>
@ -1351,6 +1353,7 @@
<string name="tangem_pay_status_completed">完了</string>
<string name="tangem_pay_status_declined">拒否</string>
<string name="tangem_pay_status_pending">保留中</string>
<string name="tangem_pay_terms_fees_limits">利用規約・手数料・利用制限</string>
<string name="tangem_pay_transaction_declined_notification_text">銀行がこの取引リクエストを拒否しました。</string>
<string name="tangem_pay_transaction_fee_notification_text">この手数料は、送金処理にかかるコストをカバーするためのものです。</string>
<string name="tangem_pay_unfreeze_card_alert_body">資金は引き続き使用できます。いつでも一時停止できます。</string>
@ -1360,25 +1363,36 @@
<string name="tangem_pay_withdrawal">出金</string>
<string name="tangempay_card_details_add_funds">資金を追加</string>
<string name="tangempay_card_details_add_funds_subtitle">入金オプション</string>
<string name="tangempay_card_details_card_number">カード番号</string>
<string name="tangempay_card_details_change_pin">PINを変更する</string>
<string name="tangempay_card_details_change_pin_success_description">カードは支払いの準備が整いました。</string>
<string name="tangempay_card_details_change_pin_success_title">PINコードを作成しました</string>
<string name="tangempay_card_details_cvc">CVC</string>
<string name="tangempay_card_details_error_text">データの読み込みに失敗しました。しばらくしてからもう一度お試しください。</string>
<string name="tangempay_card_details_expiry">有効期限</string>
<string name="tangempay_card_details_freeze_card">カードの一時停止</string>
<string name="tangempay_card_details_hide_details">詳細を隠す</string>
<string name="tangempay_card_details_hide_text">非表示</string>
<string name="tangempay_card_details_open_wallet_button">Googleウォレットを開く</string>
<string name="tangempay_card_details_open_wallet_notification_subtitle">数回タップするだけでTangem Payの設定完了。Google Payですぐに支払いを始めましょう。</string>
<string name="tangempay_card_details_open_wallet_notification_title">Google Payにカードを追加する</string>
<string name="tangempay_card_details_open_wallet_notification_title_apple">Apple Payにカードを追加する</string>
<string name="tangempay_card_details_open_wallet_step_1">Googleウォレットを開く</string>
<string name="tangempay_card_details_open_wallet_step_1.5_apple">右上の「+」ボタンをタップ</string>
<string name="tangempay_card_details_open_wallet_step_1_apple_open">開く</string>
<string name="tangempay_card_details_open_wallet_step_1_apple_wallet">Apple Wallet</string>
<string name="tangempay_card_details_open_wallet_step_2">「カードを追加」をタップします</string>
<string name="tangempay_card_details_open_wallet_step_2_apple">「デビットカードまたはクレジットカード」をタップ</string>
<string name="tangempay_card_details_open_wallet_step_3">カードの詳細を手動で入力してください</string>
<string name="tangempay_card_details_open_wallet_step_4">お使いの端末に送信されたワンタイムパスワードOTPでカードを認証してください。</string>
<string name="tangempay_card_details_open_wallet_step_5">準備完了!カードはすぐに使用できます。</string>
<string name="tangempay_card_details_open_wallet_title">Google Payにカードを追加する</string>
<string name="tangempay_card_details_open_wallet_title_apple">Apple Payにカードを追加する</string>
<string name="tangempay_card_details_receive_description">アドレスを共有するか、QRコードを表示してください。</string>
<string name="tangempay_card_details_receive_error_description">技術的な問題が検出されました。しばらくしてからもう一度お試しいただくか、サポートにお問い合わせください。</string>
<string name="tangempay_card_details_receive_error_title">現在、受け取りは利用できません</string>
<string name="tangempay_card_details_reveal_text">表示</string>
<string name="tangempay_card_details_show_details">詳細を表示</string>
<string name="tangempay_card_details_swap_description">ポートフォリオ内のあらゆる資産をカードと交換</string>
<string name="tangempay_card_details_title">カードの詳細</string>
<string name="tangempay_card_details_unfreeze_card">カードの一時停止を解除</string>
@ -1387,13 +1401,15 @@
<string name="tangempay_kyc_in_progress_notification_button">ステータスを表示</string>
<string name="tangempay_kyc_in_progress_notification_title">Tangem PayのKYC手続き進行中</string>
<string name="tangempay_onboarding_get_card_button_text">カードをGET</string>
<string name="tangempay_onboarding_pay_description">ウォレットに追加して、どこでもスマートフォンで支払いができます。</string>
<string name="tangempay_onboarding_pay_title">Apple Pay &amp; Google Pay</string>
<string name="tangempay_onboarding_purchases_description">USDC残高を使用して、毎日のお買い物をシームレスに支払います</string>
<string name="tangempay_onboarding_purchases_title">日常の買い物</string>
<string name="tangempay_onboarding_security_description">カードの詳細は保護されており、アプリ内で完全に制御できます。</string>
<string name="tangempay_onboarding_security_title">内蔵セキュリティ</string>
<string name="tangempay_onboarding_pay_description">どこでも暗号資産を使える</string>
<string name="tangempay_onboarding_pay_title">Apple PayとGoogle Payに対応したデジタルカード付き</string>
<string name="tangempay_onboarding_purchases_description">購入時に追加手数料はかかりません</string>
<string name="tangempay_onboarding_purchases_title">余計な費用なしで、表示金額のみを支払う</string>
<string name="tangempay_onboarding_security_description">あなたの住所や資産を開示することなく、個別の支払い用アカウントが作成されます。</string>
<string name="tangempay_onboarding_security_title">他に類を見ないプライバシー</string>
<string name="tangempay_onboarding_title">無料のCryptoカード\nを数分で入手しましょう</string>
<string name="tangempay_service_unavailable_description">技術的な問題を修正しています。後でもう一度お試しください。</string>
<string name="tangempay_service_unavailable_title">サービスは一時的に利用できません</string>
<string name="tangempay_title">Tangem Pay</string>
<string name="this_is_my_wallet_title">これは私のウォレットです</string>
<string name="toast_balances_hidden">残高非表示</string>
@ -1808,7 +1824,7 @@
<string name="yield_module_alert_description">利息モードを有効にすると、このアドレスへの今後のすべての入金はAaveに送られます。ただし、資金の管理は引き続き自由に行えます。</string>
<string name="yield_module_alert_title">%sはAaveに供給されています</string>
<string name="yield_module_amount_not_transfered_to_aave_title">Aaveへの%1$s %2$sの供給は保留中です</string>
<string name="yield_module_approve_needed_notification_cta">承認する</string>
<string name="yield_module_approve_needed_notification_cta">承認</string>
<string name="yield_module_approve_needed_notification_description">トークンの承認は取り消されました。サービス機能を再開するには、再度承認を行ってください。</string>
<string name="yield_module_approve_needed_notification_title">承認が必要</string>
<string name="yield_module_approve_sheet_fee_note">手数料が差し引かれ、あなたの資産は再び貸し出されます。</string>

View file

@ -54,6 +54,8 @@
<string name="account_unsaved_dialog_message_create">Are you sure you want to discard new account?</string>
<string name="account_unsaved_dialog_message_edit">Are you sure you want to discard edits?</string>
<string name="account_unsaved_dialog_title">Unsaved Changes</string>
<string name="accounts_migration_alert_message">Some custom tokens were moved from “%1$s” to “%2$s” as their derivation belongs to that account.</string>
<string name="accounts_migration_alert_title">Some custom tokens were moved</string>
<string name="action_buttons_buy_empty_search_message">Cant find your token? Go to the Market section on the main page and add it to your portfolio for purchase</string>
<string name="action_buttons_sell_empty_search_message">Cant find your token? Go to the Market section on the main page and add it to your portfolio for selling.</string>
<string name="action_buttons_sell_navigation_bar_title">Sell</string>
@ -274,7 +276,7 @@
<string name="common_free">Free</string>
<string name="common_from">From</string>
<string name="common_generate_addresses">Synchronize addresses</string>
<string name="common_get_started">Learn more</string>
<string name="common_get_started">Get started</string>
<string name="common_get_token">Get token</string>
<string name="common_go_to_provider">Go to provider</string>
<string name="common_go_to_token">Go to token</string>
@ -1361,6 +1363,7 @@
<string name="swapping_token_list_title">Choose token</string>
<string name="swapping_token_not_available">not available</string>
<string name="tangem_pay_card_frozen">Card frozen</string>
<string name="tangem_pay_card_payment">Card payment</string>
<string name="tangem_pay_deposit">Deposit</string>
<string name="tangem_pay_dispute">Dispute</string>
<string name="tangem_pay_explore_transaction">Explore transaction</string>
@ -1372,6 +1375,7 @@
<string name="tangem_pay_freeze_card_freeze">Freeze</string>
<string name="tangem_pay_freeze_card_success">Your card is frozen.</string>
<string name="tangem_pay_get_help">Get Help</string>
<string name="tangem_pay_other">Other</string>
<string name="tangem_pay_status_completed">Completed</string>
<string name="tangem_pay_status_declined">Declined</string>
<string name="tangem_pay_status_pending">Pending</string>
@ -1385,25 +1389,36 @@
<string name="tangem_pay_withdrawal">Withdrawal</string>
<string name="tangempay_card_details_add_funds">Add funds</string>
<string name="tangempay_card_details_add_funds_subtitle">Top-up options</string>
<string name="tangempay_card_details_card_number">Card Number</string>
<string name="tangempay_card_details_change_pin">Change PIN</string>
<string name="tangempay_card_details_change_pin_success_description">The card is fully ready for payments.</string>
<string name="tangempay_card_details_change_pin_success_title">PIN code created</string>
<string name="tangempay_card_details_cvc">CVC</string>
<string name="tangempay_card_details_error_text">Failed to load data. Try again later.</string>
<string name="tangempay_card_details_expiry">Expiry</string>
<string name="tangempay_card_details_freeze_card">Freeze Card</string>
<string name="tangempay_card_details_hide_details">Hide details</string>
<string name="tangempay_card_details_hide_text">Hide</string>
<string name="tangempay_card_details_open_wallet_button">Open Google Wallet</string>
<string name="tangempay_card_details_open_wallet_notification_subtitle">Set up Tangem Pay in a few taps and start paying with Google Pay.</string>
<string name="tangempay_card_details_open_wallet_notification_title">Add your card to Google Pay</string>
<string name="tangempay_card_details_open_wallet_notification_title_apple">Add your card to Apple Pay</string>
<string name="tangempay_card_details_open_wallet_step_1">Open Google Wallet</string>
<string name="tangempay_card_details_open_wallet_step_1.5_apple">Tap “+” button on the top right</string>
<string name="tangempay_card_details_open_wallet_step_1_apple_open">Open</string>
<string name="tangempay_card_details_open_wallet_step_1_apple_wallet">Apple Wallet</string>
<string name="tangempay_card_details_open_wallet_step_2">Tap “Add a card”</string>
<string name="tangempay_card_details_open_wallet_step_2_apple">Tap “Debit or Credit Card”</string>
<string name="tangempay_card_details_open_wallet_step_3">Enter the card details manually</string>
<string name="tangempay_card_details_open_wallet_step_4">Verify card using the OTP sent to your device.</string>
<string name="tangempay_card_details_open_wallet_step_5">All set! Your card is ready to use.</string>
<string name="tangempay_card_details_open_wallet_title">Add card to Google Pay</string>
<string name="tangempay_card_details_open_wallet_title_apple">Add card to Apple Pay</string>
<string name="tangempay_card_details_receive_description">Share your address or show QR-code</string>
<string name="tangempay_card_details_receive_error_description">Technical issues detected. Please try again later or contact support.</string>
<string name="tangempay_card_details_receive_error_title">Receive unavailable now</string>
<string name="tangempay_card_details_reveal_text">Reveal</string>
<string name="tangempay_card_details_show_details">Show details</string>
<string name="tangempay_card_details_swap_description">Swap any asset in your portfolio for card</string>
<string name="tangempay_card_details_title">Card details</string>
<string name="tangempay_card_details_unfreeze_card">Unfreeze Card</string>
@ -1419,6 +1434,8 @@
<string name="tangempay_onboarding_security_description">A separate payment account will be created without disclosing your addresses and assets</string>
<string name="tangempay_onboarding_security_title">Unrivaled privacy</string>
<string name="tangempay_onboarding_title">Get your free Crypto Card\nin minutes</string>
<string name="tangempay_service_unavailable_description">Were fixing a technical issue. Please try again later.</string>
<string name="tangempay_service_unavailable_title">Service temporarily unavailable</string>
<string name="tangempay_title">Tangem Pay</string>
<string name="this_is_my_wallet_title">This is my wallet</string>
<string name="toast_balances_hidden">Balances hidden</string>

View file

@ -258,6 +258,56 @@ class GetOnrampAllOffersUseCaseTest {
}
}
@Test
fun `should use largest required amount for TooBig errors`() = runTest {
val paymentMethod = createMockPaymentMethod("card", "Card", PaymentMethodType.CARD)
val provider1 = createMockProvider("provider1", "Provider 1")
val provider2 = createMockProvider("provider2", "Provider 2")
val provider3 = createMockProvider("provider3", "Provider 3")
val quotes = listOf(
createMockAmountErrorQuote(
paymentMethod = paymentMethod,
provider = provider1,
requiredAmount = BigDecimal("150.0"),
isMinAmountError = false,
),
createMockAmountErrorQuote(
paymentMethod = paymentMethod,
provider = provider2,
requiredAmount = BigDecimal("75.0"),
isMinAmountError = false,
),
createMockAmountErrorQuote(
paymentMethod = paymentMethod,
provider = provider3,
requiredAmount = BigDecimal("300.0"),
isMinAmountError = false,
),
)
coEvery { onrampRepository.getQuotes() } returns flowOf(quotes)
coEvery { settingsRepository.isGooglePayAvailability() } returns false
val result = useCase(userWalletId, cryptoCurrencyId)
result.collect { either ->
Truth.assertThat(either.isRight()).isTrue()
either.fold(
ifLeft = { error -> Truth.assertThat(error).isNull() },
ifRight = { offers ->
Truth.assertThat(offers).hasSize(1)
val cardGroup = offers.first()
Truth.assertThat(cardGroup.offers).hasSize(3)
Truth.assertThat(
cardGroup.methodStatus,
).isEqualTo(PaymentMethodStatus.Unavailable.MaxAmount(BigDecimal("300.0")))
},
)
}
}
@Test
fun `should not include Error quotes in groups`() = runTest {
val paymentMethod = createMockPaymentMethod("card", "Card", PaymentMethodType.CARD)