Merge pull request #133 from cake-tech/CAKE-143-implement-newexchange-alert

Cake 143 implement newexchange alert
This commit is contained in:
M
2020-11-04 00:08:07 +02:00
15 changed files with 88 additions and 25 deletions
+23
View File
@@ -95,6 +95,7 @@ class S implements WidgetsLocalizations {
String get exchange_new_template => "New template";
String get exchange_result_write_down_ID => "*Please copy or write down your ID shown above.";
String get exchange_result_write_down_trade_id => "Please copy or write down the trade ID to continue.";
String get exchange_sync_alert_content => "Please wait until your wallet is synchronized";
String get expired => "Expired";
String get faq => "FAQ";
String get fetching => "Fetching";
@@ -669,6 +670,8 @@ class $de extends S {
@override
String get restore_bitcoin_title_from_keys => "Aus WIF wiederherstellen";
@override
String get exchange_sync_alert_content => "Bitte warten Sie, bis Ihre Brieftasche synchronisiert ist";
@override
String get scan_qr_code => "Scannen Sie den QR-Code, um die Adresse zu erhalten";
@override
String get trade_state_paid => "Bezahlt";
@@ -1335,6 +1338,8 @@ class $hi extends S {
@override
String get restore_bitcoin_title_from_keys => "WIF से पुनर्स्थापित करें";
@override
String get exchange_sync_alert_content => "कृपया प्रतीक्षा करें जब तक आपका बटुआ सिंक्रनाइज़ नहीं किया जाता है";
@override
String get scan_qr_code => "पता प्राप्त करने के लिए QR कोड स्कैन करें";
@override
String get trade_state_paid => "भुगतान किया है";
@@ -2001,6 +2006,8 @@ class $ru extends S {
@override
String get restore_bitcoin_title_from_keys => "Восстановить с помощью WIF";
@override
String get exchange_sync_alert_content => "Подождите, пока ваш кошелек синхронизируется";
@override
String get scan_qr_code => "Отсканируйте QR-код для получения адреса";
@override
String get trade_state_paid => "Оплаченная";
@@ -2667,6 +2674,8 @@ class $ko extends S {
@override
String get restore_bitcoin_title_from_keys => "WIF에서 복원";
@override
String get exchange_sync_alert_content => "지갑이 동기화 될 때까지 기다리십시오";
@override
String get scan_qr_code => "QR 코드를 스캔하여 주소를 얻습니다.";
@override
String get trade_state_paid => "유료";
@@ -3333,6 +3342,8 @@ class $pt extends S {
@override
String get restore_bitcoin_title_from_keys => "Restaurar de WIF";
@override
String get exchange_sync_alert_content => "Por favor, espere até que sua carteira seja sincronizada";
@override
String get scan_qr_code => "Digitalize o código QR para obter o endereço";
@override
String get trade_state_paid => "Paga";
@@ -3999,6 +4010,8 @@ class $uk extends S {
@override
String get restore_bitcoin_title_from_keys => "Відновити за допомогою WIF";
@override
String get exchange_sync_alert_content => "Зачекайте, поки ваш гаманець не синхронізується";
@override
String get scan_qr_code => "Скануйте QR-код для одержання адреси";
@override
String get trade_state_paid => "Оплачена";
@@ -4665,6 +4678,8 @@ class $ja extends S {
@override
String get restore_bitcoin_title_from_keys => "WIFから復元";
@override
String get exchange_sync_alert_content => "ウォレットが同期されるまでお待ちください";
@override
String get scan_qr_code => "QRコードをスキャンして住所を取得します";
@override
String get trade_state_paid => "有料";
@@ -5335,6 +5350,8 @@ class $pl extends S {
@override
String get restore_bitcoin_title_from_keys => "Przywróć z WIF";
@override
String get exchange_sync_alert_content => "Poczekaj, aż portfel zostanie zsynchronizowany";
@override
String get scan_qr_code => "Zeskanuj kod QR, aby uzyskać adres";
@override
String get trade_state_paid => "Płatny";
@@ -6001,6 +6018,8 @@ class $es extends S {
@override
String get restore_bitcoin_title_from_keys => "Restaurar desde WIF";
@override
String get exchange_sync_alert_content => "Espere hasta que su billetera esté sincronizada";
@override
String get scan_qr_code => "Escanee el código QR para obtener la dirección";
@override
String get trade_state_paid => "Pagado";
@@ -6667,6 +6686,8 @@ class $nl extends S {
@override
String get restore_bitcoin_title_from_keys => "Herstel van WIF";
@override
String get exchange_sync_alert_content => "Wacht tot uw portemonnee is gesynchroniseerd";
@override
String get scan_qr_code => "Scan de QR-code om het adres te krijgen";
@override
String get trade_state_paid => "Betaald";
@@ -7333,6 +7354,8 @@ class $zh extends S {
@override
String get restore_bitcoin_title_from_keys => "從WIF還原";
@override
String get exchange_sync_alert_content => "請等待,直到您的錢包同步";
@override
String get scan_qr_code => "掃描二維碼獲取地址";
@override
String get trade_state_paid => "已付费";
+25 -13
View File
@@ -1,4 +1,5 @@
import 'dart:ui';
import 'package:cake_wallet/entities/sync_status.dart';
import 'package:dotted_border/dotted_border.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
@@ -394,19 +395,30 @@ class ExchangePage extends BasePage {
}),
),
Observer(
builder: (_) => LoadingPrimaryButton(
text: S.of(context).exchange,
onPressed: () {
if (_formKey.currentState.validate()) {
exchangeViewModel.createTrade();
}
},
color:
Theme.of(context).accentTextTheme.body2.color,
textColor: Colors.white,
isLoading: exchangeViewModel.tradeState
is TradeIsCreating,
)),
builder: (_) => LoadingPrimaryButton(
text: S.of(context).exchange,
onPressed: () {
if (_formKey.currentState.validate()) {
if ((exchangeViewModel.depositCurrency == CryptoCurrency.xmr)
&&(!(exchangeViewModel.status is SyncedSyncStatus))) {
showPopUp<void>(
context: context,
builder: (BuildContext context) {
return AlertWithOneAction(
alertTitle: S.of(context).exchange,
alertContent: S.of(context).exchange_sync_alert_content,
buttonText: S.of(context).ok,
buttonAction: () => Navigator.of(context).pop());
});
} else {
exchangeViewModel.createTrade();
}
}
},
color: Theme.of(context).accentTextTheme.body2.color,
textColor: Colors.white,
isLoading: exchangeViewModel.tradeState
is TradeIsCreating)),
]),
)),
));
@@ -1,5 +1,6 @@
import 'package:cake_wallet/core/wallet_base.dart';
import 'package:cake_wallet/entities/crypto_currency.dart';
import 'package:cake_wallet/entities/sync_status.dart';
import 'package:cake_wallet/entities/wallet_type.dart';
import 'package:cake_wallet/exchange/exchange_provider.dart';
import 'package:cake_wallet/exchange/limits.dart';
@@ -100,6 +101,9 @@ abstract class ExchangeViewModelBase with Store {
NumberFormat _cryptoNumberFormat;
@computed
SyncStatus get status => wallet.syncStatus;
@computed
ObservableList<ExchangeTemplate> get templates =>
_exchangeTemplateStore.templates;