CAKE-20 | fixed address validators of the base exchange widget
Oleksandr Sobol committed
Jul 31, 2020 at 21:47 UTC
861a2840ce4fdc031931392fd1b4075a4ce3d27f
3 files changed
+11
-23
lib/src/screens/dashboard/dashboard_page.dart
+1
-3
@@ -20,9 +20,7 @@ class DashboardPage extends BasePage {
20
DashboardPage({
21
@required this.walletViewModel,
22
@required this.addressListViewModel,
23
- }) {
24
- walletViewModel.pageViewStore.setCurrentPage(1);
25
- }
23
+ });
24
25
@override
26
Color get backgroundLightColor => PaletteDark.backgroundColor;
lib/src/screens/exchange/widgets/base_exchange_widget.dart
+10
-4
@@ -20,6 +20,8 @@ import 'package:cake_wallet/src/widgets/scollable_with_bottom_section.dart';
20
import 'package:cake_wallet/src/widgets/top_panel.dart';
21
import 'package:cake_wallet/src/widgets/alert_with_one_action.dart';
22
import 'package:cake_wallet/view_model/exchange/exchange_view_model.dart';
23
+import 'package:cake_wallet/core/address_validator.dart';
24
+import 'package:cake_wallet/core/amount_validator.dart';
25
26
class BaseExchangeWidget extends StatefulWidget {
27
BaseExchangeWidget({
@@ -112,8 +114,10 @@ class BaseExchangeWidgetState extends State<BaseExchangeWidget> {
114
imageArrow: arrowBottomPurple,
115
currencyButtonColor: PaletteDark.wildVioletBlue,
116
addressButtonsColor: PaletteDark.moderateBlue,
115
- currencyValueValidator: exchangeViewModel.amountValidator,
116
- addressTextFieldValidator: exchangeViewModel.addressValidator,
117
+ currencyValueValidator: AmountValidator(
118
+ type: exchangeViewModel.wallet.type),
119
+ addressTextFieldValidator: AddressValidator(
120
+ type: exchangeViewModel.depositCurrency),
121
),
122
)
123
),
@@ -138,8 +142,10 @@ class BaseExchangeWidgetState extends State<BaseExchangeWidget> {
142
imageArrow: arrowBottomCakeGreen,
143
currencyButtonColor: PaletteDark.darkNightBlue,
144
addressButtonsColor: PaletteDark.moderateBlue,
141
- currencyValueValidator: exchangeViewModel.amountValidator,
142
- addressTextFieldValidator: exchangeViewModel.addressValidator,
145
+ currencyValueValidator: AmountValidator(
146
+ type: exchangeViewModel.wallet.type),
147
+ addressTextFieldValidator: AddressValidator(
148
+ type: exchangeViewModel.receiveCurrency),
149
)),
150
)
151
],
lib/view_model/exchange/exchange_view_model.dart
-16
@@ -1,7 +1,3 @@
1
-import 'package:cake_wallet/core/address_validator.dart';
2
-import 'package:cake_wallet/core/amount_validator.dart';
3
-import 'package:cake_wallet/core/template_validator.dart';
4
-import 'package:cake_wallet/core/validator.dart';
1
import 'package:cake_wallet/core/wallet_base.dart';
2
import 'package:cake_wallet/src/domain/common/crypto_currency.dart';
3
import 'package:cake_wallet/src/domain/exchange/exchange_provider.dart';
@@ -91,22 +87,10 @@ abstract class ExchangeViewModelBase with Store {
87
@observable
88
bool isReceiveAddressEnabled;
89
94
- @observable
95
- bool isValid;
96
-
97
- @observable
98
- String errorMessage;
99
-
90
Limits limits;
91
92
NumberFormat _cryptoNumberFormat;
93
104
- Validator get amountValidator => AmountValidator(type: wallet.type);
105
-
106
- Validator get addressValidator => AddressValidator(type: wallet.currency);
107
-
108
- Validator get templateValidator => TemplateValidator();
109
-
94
@computed
95
ObservableList<ExchangeTemplate> get templates =>
96
exchangeTemplateStore.templates;