diff --git a/lib/exchange/exchange_trade_state.dart b/lib/exchange/exchange_trade_state.dart index 324ae9338..109293bec 100644 --- a/lib/exchange/exchange_trade_state.dart +++ b/lib/exchange/exchange_trade_state.dart @@ -14,7 +14,8 @@ class TradeIsCreatedSuccessfully extends ExchangeTradeState { } class TradeIsCreatedFailure extends ExchangeTradeState { - TradeIsCreatedFailure({@required this.error}); + TradeIsCreatedFailure({@required this.title, @required this.error}); + final String title; final String error; } \ No newline at end of file diff --git a/lib/exchange/xmrto/xmrto_exchange_provider.dart b/lib/exchange/xmrto/xmrto_exchange_provider.dart index c57529823..26adaedef 100644 --- a/lib/exchange/xmrto/xmrto_exchange_provider.dart +++ b/lib/exchange/xmrto/xmrto_exchange_provider.dart @@ -12,6 +12,7 @@ import 'package:cake_wallet/exchange/xmrto/xmrto_trade_request.dart'; import 'package:cake_wallet/exchange/trade_not_created_exeption.dart'; import 'package:cake_wallet/exchange/exchange_provider_description.dart'; import 'package:cake_wallet/exchange/trade_not_found_exeption.dart'; +import 'package:cake_wallet/generated/i18n.dart'; class XMRTOExchangeProvider extends ExchangeProvider { XMRTOExchangeProvider() @@ -90,12 +91,25 @@ class XMRTOExchangeProvider extends ExchangeProvider { Future createTrade({TradeRequest request}) async { final _request = request as XMRTOTradeRequest; final url = originalApiUri + _orderCreateUriSuffix; + final _amount = _request.isBTCRequest + ? _request.receiveAmount + : _request.amount; + + final _amountCurrency = _request.isBTCRequest + ? _request.to.toString() + : _request.from.toString(); + + final pattern = '^([0-9]+([.\,][0-9]{0,8})?|[.\,][0-9]{1,8})\$'; + final isValid = RegExp(pattern).hasMatch(_amount); + + if (!isValid) { + throw TradeNotCreatedException(description, + description: S.current.xmr_to_error_description); + } + final body = { - 'amount': - _request.isBTCRequest ? _request.receiveAmount : _request.amount, - 'amount_currency': _request.isBTCRequest - ? _request.to.toString() - : _request.from.toString(), + 'amount': _amount, + 'amount_currency': _amountCurrency, 'btc_dest_address': _request.address }; final response = await post(url, diff --git a/lib/generated/i18n.dart b/lib/generated/i18n.dart index 4ec6aa3c6..fd0c0f70e 100644 --- a/lib/generated/i18n.dart +++ b/lib/generated/i18n.dart @@ -326,6 +326,8 @@ class S implements WidgetsLocalizations { String get xmr_available_balance => "Available Balance"; String get xmr_full_balance => "Full Balance"; String get xmr_hidden => "Hidden"; + String get xmr_to_error => "XMR.TO error"; + String get xmr_to_error_description => "Invalid amount. Maximum limit 8 digits after the decimal point"; String get yesterday => "Yesterday"; String get you_will_get => "Convert to"; String get you_will_send => "Convert from"; @@ -346,6 +348,7 @@ class S implements WidgetsLocalizations { String min_value(String value, String currency) => "Min: ${value} ${currency}"; String openalias_alert_content(String recipient_name) => "You will be sending funds to\n${recipient_name}"; String powered_by(String title) => "Powered by ${title}"; + String provider_error(String provider) => "${provider} error"; String router_no_route(String name) => "No route defined for ${name}"; String send_address(String cryptoCurrency) => "${cryptoCurrency} address"; String send_priority(String transactionPriority) => "Currently the fee is set at ${transactionPriority} priority.\nTransaction priority can be adjusted in the settings"; @@ -773,6 +776,8 @@ class $de extends S { @override String get seed_language_dutch => "Niederländisch"; @override + String get xmr_to_error => "XMR.TO-Fehler"; + @override String get restore_description_from_seed_keys => "Holen Sie sich Ihr Wallet von Seed / Schlüsseln zurück, die Sie an einem sicheren Ort aufbewahrt haben"; @override String get copy => "Kopieren"; @@ -877,6 +882,8 @@ class $de extends S { @override String get trade_details_id => "ID"; @override + String get xmr_to_error_description => "Ungültiger Betrag. Höchstgrenze 8 Stellen nach dem Dezimalpunkt"; + @override String get trade_state_confirming => "Bestätigung"; @override String get send => "Senden"; @@ -1041,6 +1048,8 @@ class $de extends S { @override String wallet_list_failed_to_remove(String wallet_name, String error) => "Fehler beim Entfernen ${wallet_name} Wallet. ${error}"; @override + String provider_error(String provider) => "${provider} Error"; + @override String copied_key_to_clipboard(String key) => "Kopiert ${key} Zur Zwischenablage"; @override String wallet_list_failed_to_load(String wallet_name, String error) => "Laden fehlgeschlagen ${wallet_name} Wallet. ${error}"; @@ -1459,6 +1468,8 @@ class $hi extends S { @override String get seed_language_dutch => "डच"; @override + String get xmr_to_error => "XMR.TO त्रुटि"; + @override String get restore_description_from_seed_keys => "अपने बटुए को बीज से वापस लें/वे कुंजियाँ जिन्हें आपने सुरक्षित स्थान पर सहेजा है"; @override String get copy => "प्रतिलिपि"; @@ -1563,6 +1574,8 @@ class $hi extends S { @override String get trade_details_id => "आईडी"; @override + String get xmr_to_error_description => "अवैध राशि। दशमलव बिंदु के बाद अधिकतम सीमा 8 अंक"; + @override String get trade_state_confirming => "पुष्टि"; @override String get send => "संदेश"; @@ -1727,6 +1740,8 @@ class $hi extends S { @override String wallet_list_failed_to_remove(String wallet_name, String error) => "निकालने में विफल ${wallet_name} बटुआ. ${error}"; @override + String provider_error(String provider) => "${provider} त्रुटि"; + @override String copied_key_to_clipboard(String key) => "की नकल की ${key} क्लिपबोर्ड पर"; @override String wallet_list_failed_to_load(String wallet_name, String error) => "लोड करने में विफल ${wallet_name} बटुआ. ${error}"; @@ -2145,6 +2160,8 @@ class $ru extends S { @override String get seed_language_dutch => "Нидерландский"; @override + String get xmr_to_error => "Ошибка XMR.TO"; + @override String get restore_description_from_seed_keys => "Вы можете восстановить кошелёк из мнемонической фразы/ключей, которые вы сохранили ранее"; @override String get copy => "Скопировать"; @@ -2249,6 +2266,8 @@ class $ru extends S { @override String get trade_details_id => "ID"; @override + String get xmr_to_error_description => "Недопустимая сумма. Максимум 8 цифр после десятичной точки"; + @override String get trade_state_confirming => "Подтверждение"; @override String get send => "Отправить"; @@ -2413,6 +2432,8 @@ class $ru extends S { @override String wallet_list_failed_to_remove(String wallet_name, String error) => "Ошибка при удалении ${wallet_name} кошелька. ${error}"; @override + String provider_error(String provider) => "${provider} ошибка"; + @override String copied_key_to_clipboard(String key) => "Скопировано ${key} в буфер обмена"; @override String wallet_list_failed_to_load(String wallet_name, String error) => "Ошибка при загрузке ${wallet_name} кошелька. ${error}"; @@ -2831,6 +2852,8 @@ class $ko extends S { @override String get seed_language_dutch => "네덜란드 사람"; @override + String get xmr_to_error => "XMR.TO 오류"; + @override String get restore_description_from_seed_keys => "안전한 장소에 저장 한 종자 / 키로 지갑을 되 찾으십시오."; @override String get copy => "부"; @@ -2935,6 +2958,8 @@ class $ko extends S { @override String get trade_details_id => "ID"; @override + String get xmr_to_error_description => "금액이 잘못되었습니다. 소수점 이하 최대 8 자리"; + @override String get trade_state_confirming => "확인 중"; @override String get send => "보내다"; @@ -3099,6 +3124,8 @@ class $ko extends S { @override String wallet_list_failed_to_remove(String wallet_name, String error) => "제거하지 못했습니다 ${wallet_name} 지갑. ${error}"; @override + String provider_error(String provider) => "${provider} 오류"; + @override String copied_key_to_clipboard(String key) => "복사 ${key} 클립 보드로"; @override String wallet_list_failed_to_load(String wallet_name, String error) => "불러 오지 못했습니다 ${wallet_name} 지갑. ${error}"; @@ -3517,6 +3544,8 @@ class $pt extends S { @override String get seed_language_dutch => "Holandesa"; @override + String get xmr_to_error => "Erro XMR.TO"; + @override String get restore_description_from_seed_keys => "Restaure a sua carteira a partir de sementes/chaves que você salvou em um local seguro"; @override String get copy => "Copiar"; @@ -3621,6 +3650,8 @@ class $pt extends S { @override String get trade_details_id => "ID"; @override + String get xmr_to_error_description => "Montante inválido. Limite máximo de 8 dígitos após o ponto decimal"; + @override String get trade_state_confirming => "Confirmando"; @override String get send => "Enviar"; @@ -3785,6 +3816,8 @@ class $pt extends S { @override String wallet_list_failed_to_remove(String wallet_name, String error) => "Falha ao remover a carteira ${wallet_name}. ${error}"; @override + String provider_error(String provider) => "${provider} erro"; + @override String copied_key_to_clipboard(String key) => "${key} copiada para a área de transferência"; @override String wallet_list_failed_to_load(String wallet_name, String error) => "Falha ao abrir a carteira ${wallet_name}. ${error}"; @@ -4203,6 +4236,8 @@ class $uk extends S { @override String get seed_language_dutch => "Голландська"; @override + String get xmr_to_error => "Помилка XMR.TO"; + @override String get restore_description_from_seed_keys => "Ви можете відновити гаманець з мнемонічної фрази/ключів, які ви зберегли раніше"; @override String get copy => "Скопіювати"; @@ -4307,6 +4342,8 @@ class $uk extends S { @override String get trade_details_id => "ID"; @override + String get xmr_to_error_description => "Неприпустима сума. Максимум 8 цифр після десяткової коми"; + @override String get trade_state_confirming => "Підтвердження"; @override String get send => "Відправити"; @@ -4471,6 +4508,8 @@ class $uk extends S { @override String wallet_list_failed_to_remove(String wallet_name, String error) => "Помилка при видаленні ${wallet_name} гаманця. ${error}"; @override + String provider_error(String provider) => "${provider} помилка"; + @override String copied_key_to_clipboard(String key) => "Скопійовано ${key} в буфер обміну"; @override String wallet_list_failed_to_load(String wallet_name, String error) => "Помилка при завантаженні ${wallet_name} гаманця. ${error}"; @@ -4889,6 +4928,8 @@ class $ja extends S { @override String get seed_language_dutch => "オランダの"; @override + String get xmr_to_error => "XMR.TOエラー"; + @override String get restore_description_from_seed_keys => "安全な場所に保存したシード/キーから財布を取り戻す"; @override String get copy => "コピー"; @@ -4993,6 +5034,8 @@ class $ja extends S { @override String get trade_details_id => "ID"; @override + String get xmr_to_error_description => "金額が無効です。 小数点以下8桁の上限"; + @override String get trade_state_confirming => "確認中"; @override String get send => "送る"; @@ -5157,6 +5200,8 @@ class $ja extends S { @override String wallet_list_failed_to_remove(String wallet_name, String error) => "削除できませんでした ${wallet_name} 財布. ${error}"; @override + String provider_error(String provider) => "${provider} エラー"; + @override String copied_key_to_clipboard(String key) => "コピー済み ${key} クリップボードへ"; @override String wallet_list_failed_to_load(String wallet_name, String error) => "読み込みに失敗しました ${wallet_name} 財布. ${error}"; @@ -5579,6 +5624,8 @@ class $pl extends S { @override String get seed_language_dutch => "Holenderski"; @override + String get xmr_to_error => "Pomyłka XMR.TO"; + @override String get restore_description_from_seed_keys => "Odzyskaj swój portfel z nasion / kluczy, które zapisałeś w bezpiecznym miejscu"; @override String get copy => "Kopiuj"; @@ -5683,6 +5730,8 @@ class $pl extends S { @override String get trade_details_id => "ID"; @override + String get xmr_to_error_description => "Nieprawidłowa kwota. Maksymalny limit 8 cyfr po przecinku"; + @override String get trade_state_confirming => "Potwierdzam"; @override String get send => "Wysłać"; @@ -5847,6 +5896,8 @@ class $pl extends S { @override String wallet_list_failed_to_remove(String wallet_name, String error) => "Nie udało się usunąć ${wallet_name} portfel. ${error}"; @override + String provider_error(String provider) => "${provider} pomyłka"; + @override String copied_key_to_clipboard(String key) => "Skopiowane ${key} do schowka"; @override String wallet_list_failed_to_load(String wallet_name, String error) => "Nie udało się załadować ${wallet_name} portfel. ${error}"; @@ -6265,6 +6316,8 @@ class $es extends S { @override String get seed_language_dutch => "Holandés"; @override + String get xmr_to_error => "Error de XMR.TO"; + @override String get restore_description_from_seed_keys => "Recupere su billetera de las semillas/claves que ha guardado en un lugar seguro"; @override String get copy => "Dupdo"; @@ -6369,6 +6422,8 @@ class $es extends S { @override String get trade_details_id => "ID"; @override + String get xmr_to_error_description => "Monto invalido. Límite máximo de 8 dígitos después del punto decimal"; + @override String get trade_state_confirming => "Confirmando"; @override String get send => "Enviar"; @@ -6533,6 +6588,8 @@ class $es extends S { @override String wallet_list_failed_to_remove(String wallet_name, String error) => "Error al elimina ${wallet_name} billetera. ${error}"; @override + String provider_error(String provider) => "${provider} error"; + @override String copied_key_to_clipboard(String key) => "Copiado ${key} al portapapeles"; @override String wallet_list_failed_to_load(String wallet_name, String error) => "No se pudo cargar ${wallet_name} la billetera. ${error}"; @@ -6951,6 +7008,8 @@ class $nl extends S { @override String get seed_language_dutch => "Nederlands"; @override + String get xmr_to_error => "XMR.TO-fout"; + @override String get restore_description_from_seed_keys => "Ontvang uw portemonnee terug uit seed / keys die u hebt opgeslagen op een veilige plaats"; @override String get copy => "Kopiëren"; @@ -7055,6 +7114,8 @@ class $nl extends S { @override String get trade_details_id => "ID"; @override + String get xmr_to_error_description => "Ongeldige hoeveelheid. Maximaal 8 cijfers achter de komma"; + @override String get trade_state_confirming => "Bevestiging"; @override String get send => "Sturen"; @@ -7219,6 +7280,8 @@ class $nl extends S { @override String wallet_list_failed_to_remove(String wallet_name, String error) => "Verwijderen mislukt ${wallet_name} portemonnee. ${error}"; @override + String provider_error(String provider) => "${provider} fout"; + @override String copied_key_to_clipboard(String key) => "Gekopieerd ${key} naar het klembord"; @override String wallet_list_failed_to_load(String wallet_name, String error) => "Laden mislukt ${wallet_name} portemonnee. ${error}"; @@ -7637,6 +7700,8 @@ class $zh extends S { @override String get seed_language_dutch => "荷蘭人"; @override + String get xmr_to_error => "XMR.TO錯誤"; + @override String get restore_description_from_seed_keys => "从保存到安全地方的种子/钥匙取回钱包"; @override String get copy => "复制"; @@ -7741,6 +7806,8 @@ class $zh extends S { @override String get trade_details_id => "ID"; @override + String get xmr_to_error_description => "無效的金額。 小數點後最多8位數字"; + @override String get trade_state_confirming => "确认中"; @override String get send => "发送"; @@ -7905,6 +7972,8 @@ class $zh extends S { @override String wallet_list_failed_to_remove(String wallet_name, String error) => "删除失败 ${wallet_name} 钱包. ${error}"; @override + String provider_error(String provider) => "${provider} 錯誤"; + @override String copied_key_to_clipboard(String key) => "复制 ${key} 到剪贴板"; @override String wallet_list_failed_to_load(String wallet_name, String error) => "加载失败 ${wallet_name} 钱包. ${error}"; diff --git a/lib/src/screens/exchange/exchange_page.dart b/lib/src/screens/exchange/exchange_page.dart index 693e897be..e3260c91a 100644 --- a/lib/src/screens/exchange/exchange_page.dart +++ b/lib/src/screens/exchange/exchange_page.dart @@ -547,7 +547,7 @@ class ExchangePage extends BasePage { context: context, builder: (BuildContext context) { return AlertWithOneAction( - alertTitle: S.of(context).error, + alertTitle: S.of(context).provider_error(state.title), alertContent: state.error, buttonText: S.of(context).ok, buttonAction: () => Navigator.of(context).pop()); diff --git a/lib/view_model/exchange/exchange_view_model.dart b/lib/view_model/exchange/exchange_view_model.dart index 1b14980dd..e533e1e93 100644 --- a/lib/view_model/exchange/exchange_view_model.dart +++ b/lib/view_model/exchange/exchange_view_model.dart @@ -174,7 +174,7 @@ abstract class ExchangeViewModelBase with Store { return; } - final _amount = double.parse(amount.replaceAll(',', '.')); + final _amount = double.parse(amount.replaceAll(',', '.')) ?? 0; provider .calculateAmount( from: depositCurrency, @@ -247,10 +247,12 @@ abstract class ExchangeViewModelBase with Store { if (limitsState is LimitsLoadedSuccessfully && amount != null) { if (double.parse(amount) < limits.min) { tradeState = TradeIsCreatedFailure( + title: provider.title, error: S.current.error_text_minimal_limit('${provider.description}', '${limits.min}', currency.toString())); } else if (limits.max != null && double.parse(amount) > limits.max) { tradeState = TradeIsCreatedFailure( + title: provider.title, error: S.current.error_text_maximum_limit('${provider.description}', '${limits.max}', currency.toString())); } else { @@ -262,11 +264,14 @@ abstract class ExchangeViewModelBase with Store { await trades.add(trade); tradeState = TradeIsCreatedSuccessfully(trade: trade); } catch (e) { - tradeState = TradeIsCreatedFailure(error: e.toString()); + tradeState = TradeIsCreatedFailure( + title: provider.title, + error: e.toString()); } } } else { tradeState = TradeIsCreatedFailure( + title: provider.title, error: S.current .error_text_limits_loading_failed('${provider.description}')); } diff --git a/res/values/strings_de.arb b/res/values/strings_de.arb index 67d271fd6..eb0a6080b 100644 --- a/res/values/strings_de.arb +++ b/res/values/strings_de.arb @@ -418,6 +418,10 @@ "pre_seed_description" : "Auf der nächsten Seite sehen Sie eine Reihe von 25 Wörtern. Dies ist Ihr einzigartiger und privater Samen und der EINZIGE Weg, um Ihren Geldbeutel im Falle eines Verlusts oder einer Fehlfunktion wiederherzustellen. Es liegt in IHRER Verantwortung, es aufzuschreiben und an einem sicheren Ort außerhalb der Cake Wallet App aufzubewahren.", "pre_seed_button_text" : "Ich verstehe. Zeig mir meinen Samen", + "xmr_to_error" : "XMR.TO-Fehler", + "xmr_to_error_description" : "Ungültiger Betrag. Höchstgrenze 8 Stellen nach dem Dezimalpunkt", + + "provider_error" : "${provider} Error", "use_ssl" : "Verwenden Sie SSL" } \ No newline at end of file diff --git a/res/values/strings_en.arb b/res/values/strings_en.arb index 08a42569d..8a1267236 100644 --- a/res/values/strings_en.arb +++ b/res/values/strings_en.arb @@ -418,6 +418,10 @@ "pre_seed_description" : "On the next page you will see a series of 25 words. This is your unique and private seed and it is the ONLY way to recover your wallet in case of loss or malfunction. It is YOUR responsibility to write it down and store it in a safe place outside of the Cake Wallet app.", "pre_seed_button_text" : "I understand. Show me my seed", + "xmr_to_error" : "XMR.TO error", + "xmr_to_error_description" : "Invalid amount. Maximum limit 8 digits after the decimal point", + + "provider_error" : "${provider} error", "use_ssl" : "Use SSL" } \ No newline at end of file diff --git a/res/values/strings_es.arb b/res/values/strings_es.arb index 425828499..00acdcb0c 100644 --- a/res/values/strings_es.arb +++ b/res/values/strings_es.arb @@ -418,6 +418,10 @@ "pre_seed_description" : "En la página siguiente verá una serie de 25 palabras. Esta es su semilla única y privada y es la ÚNICA forma de recuperar su billetera en caso de pérdida o mal funcionamiento. Es SU responsabilidad escribirlo y guardarlo en un lugar seguro fuera de la aplicación Cake Wallet.", "pre_seed_button_text" : "Entiendo. Muéstrame mi semilla", + "xmr_to_error" : "Error de XMR.TO", + "xmr_to_error_description" : "Monto invalido. Límite máximo de 8 dígitos después del punto decimal", + + "provider_error" : "${provider} error", "use_ssl" : "Utilice SSL" } \ No newline at end of file diff --git a/res/values/strings_hi.arb b/res/values/strings_hi.arb index 2a6182d6b..9a9545c5d 100644 --- a/res/values/strings_hi.arb +++ b/res/values/strings_hi.arb @@ -418,6 +418,10 @@ "pre_seed_description" : "अगले पेज पर आपको 25 शब्दों की एक श्रृंखला दिखाई देगी। यह आपका अद्वितीय और निजी बीज है और नुकसान या खराबी के मामले में अपने बटुए को पुनर्प्राप्त करने का एकमात्र तरीका है। यह आपकी जिम्मेदारी है कि इसे नीचे लिखें और इसे Cake Wallet ऐप के बाहर सुरक्षित स्थान पर संग्रहीत करें।", "pre_seed_button_text" : "मै समझता हुँ। मुझे अपना बीज दिखाओ", + "xmr_to_error" : "XMR.TO त्रुटि", + "xmr_to_error_description" : "अवैध राशि। दशमलव बिंदु के बाद अधिकतम सीमा 8 अंक", + + "provider_error" : "${provider} त्रुटि", "use_ssl" : "उपयोग SSL" } \ No newline at end of file diff --git a/res/values/strings_ja.arb b/res/values/strings_ja.arb index e3d3d7675..cb4b63414 100644 --- a/res/values/strings_ja.arb +++ b/res/values/strings_ja.arb @@ -418,6 +418,10 @@ "pre_seed_description" : "次のページでは、一連の25語が表示されます。 これはあなたのユニークでプライベートなシードであり、紛失や誤動作が発生した場合にウォレットを回復する唯一の方法です。 それを書き留めて、Cake Wallet アプリの外の安全な場所に保管するのはあなたの責任です。", "pre_seed_button_text" : "わかります。 種を見せて", + "xmr_to_error" : "XMR.TOエラー", + "xmr_to_error_description" : "金額が無効です。 小数点以下8桁の上限", + + "provider_error" : "${provider} エラー", "use_ssl" : "SSLを使用する" } \ No newline at end of file diff --git a/res/values/strings_ko.arb b/res/values/strings_ko.arb index 29b2972ca..c14898fd9 100644 --- a/res/values/strings_ko.arb +++ b/res/values/strings_ko.arb @@ -418,6 +418,10 @@ "pre_seed_description" : "다음 페이지에서 25 개의 단어를 볼 수 있습니다. 이것은 귀하의 고유하고 개인적인 시드이며 분실 또는 오작동시 지갑을 복구하는 유일한 방법입니다. 기록해두고 Cake Wallet 앱 외부의 안전한 장소에 보관하는 것은 귀하의 책임입니다.", "pre_seed_button_text" : "이해 했어요. 내 씨앗을 보여줘", + "xmr_to_error" : "XMR.TO 오류", + "xmr_to_error_description" : "금액이 잘못되었습니다. 소수점 이하 최대 8 자리", + + "provider_error" : "${provider} 오류", "use_ssl" : "SSL 사용" } \ No newline at end of file diff --git a/res/values/strings_nl.arb b/res/values/strings_nl.arb index c4bcf0e25..e5093a406 100644 --- a/res/values/strings_nl.arb +++ b/res/values/strings_nl.arb @@ -418,6 +418,10 @@ "pre_seed_description" : "Op de volgende pagina ziet u een reeks van 25 woorden. Dit is uw unieke en persoonlijke zaadje en het is de ENIGE manier om uw portemonnee te herstellen in geval van verlies of storing. Het is JOUW verantwoordelijkheid om het op te schrijven en op een veilige plaats op te slaan buiten de Cake Wallet app.", "pre_seed_button_text" : "Ik begrijp het. Laat me mijn zaad zien", + "xmr_to_error" : "XMR.TO-fout", + "xmr_to_error_description" : "Ongeldige hoeveelheid. Maximaal 8 cijfers achter de komma", + + "provider_error" : "${provider} fout", "use_ssl" : "Gebruik SSL" } \ No newline at end of file diff --git a/res/values/strings_pl.arb b/res/values/strings_pl.arb index 2401fc6b3..e6b098360 100644 --- a/res/values/strings_pl.arb +++ b/res/values/strings_pl.arb @@ -418,6 +418,10 @@ "pre_seed_description" : "Na następnej stronie zobaczysz serię 25 słów. To jest Twoje unikalne i prywatne ziarno i jest to JEDYNY sposób na odzyskanie portfela w przypadku utraty lub awarii. Twoim obowiązkiem jest zapisanie go i przechowywanie w bezpiecznym miejscu poza aplikacją Cake Wallet.", "pre_seed_button_text" : "Rozumiem. Pokaż mi moje nasienie", + "xmr_to_error" : "Pomyłka XMR.TO", + "xmr_to_error_description" : "Nieprawidłowa kwota. Maksymalny limit 8 cyfr po przecinku", + + "provider_error" : "${provider} pomyłka", "use_ssl" : "Użyj SSL" } \ No newline at end of file diff --git a/res/values/strings_pt.arb b/res/values/strings_pt.arb index 8f0841b7f..e82032d7b 100644 --- a/res/values/strings_pt.arb +++ b/res/values/strings_pt.arb @@ -418,6 +418,10 @@ "pre_seed_description" : "Na próxima página, você verá uma série de 25 palavras. Esta é a sua semente única e privada e é a ÚNICA maneira de recuperar sua carteira em caso de perda ou mau funcionamento. É SUA responsabilidade anotá-lo e armazená-lo em um local seguro fora do aplicativo Cake Wallet.", "pre_seed_button_text" : "Compreendo. Me mostre minha semente", + "xmr_to_error" : "Erro XMR.TO", + "xmr_to_error_description" : "Montante inválido. Limite máximo de 8 dígitos após o ponto decimal", + + "provider_error" : "${provider} erro", "use_ssl" : "Use SSL" } diff --git a/res/values/strings_ru.arb b/res/values/strings_ru.arb index 311aa75f2..b78b86ff1 100644 --- a/res/values/strings_ru.arb +++ b/res/values/strings_ru.arb @@ -418,6 +418,10 @@ "pre_seed_description" : "На следующей странице вы увидите серию из 25 слов. Это ваша уникальная и личная мнемоническая фраза, и это ЕДИНСТВЕННЫЙ способ восстановить свой кошелек в случае потери или неисправности. ВАМ необходимо записать ее и хранить в надежном месте вне приложения Cake Wallet.", "pre_seed_button_text" : "Понятно. Покажите мнемоническую фразу", + "xmr_to_error" : "Ошибка XMR.TO", + "xmr_to_error_description" : "Недопустимая сумма. Максимум 8 цифр после десятичной точки", + + "provider_error" : "${provider} ошибка", "use_ssl" : "Использовать SSL" } \ No newline at end of file diff --git a/res/values/strings_uk.arb b/res/values/strings_uk.arb index 36a921a44..be77cd293 100644 --- a/res/values/strings_uk.arb +++ b/res/values/strings_uk.arb @@ -418,6 +418,10 @@ "pre_seed_description" : "На наступній сторінці ви побачите серію з 25 слів. Це ваша унікальна та приватна мнемонічна фраза, і це ЄДИНИЙ спосіб відновити ваш гаманець на випадок втрати або несправності. ВАМ необхідно записати її та зберігати в безпечному місці поза програмою Cake Wallet.", "pre_seed_button_text" : "Зрозуміло. Покажіть мнемонічну фразу", + "xmr_to_error" : "Помилка XMR.TO", + "xmr_to_error_description" : "Неприпустима сума. Максимум 8 цифр після десяткової коми", + + "provider_error" : "${provider} помилка", "use_ssl" : "Використати SSL" } \ No newline at end of file diff --git a/res/values/strings_zh.arb b/res/values/strings_zh.arb index b83408490..ee633aae8 100644 --- a/res/values/strings_zh.arb +++ b/res/values/strings_zh.arb @@ -418,6 +418,10 @@ "pre_seed_description" : "在下一頁上,您將看到一系列25個單詞。 這是您獨特的私人種子,是丟失或出現故障時恢復錢包的唯一方法。 您有責任將其寫下並存儲在Cake Wallet應用程序外部的安全地方。", "pre_seed_button_text" : "我明白。 給我看我的種子", + "xmr_to_error" : "XMR.TO錯誤", + "xmr_to_error_description" : "無效的金額。 小數點後最多8位數字", + + "provider_error" : "${provider} 錯誤", "use_ssl" : "使用SSL" } \ No newline at end of file