CWA-169 | fixed limits for ethereum in MorphTokenExchangeProvider

Oleksandr Sobol committed Feb 7, 2020 at 12:06 UTC d6cf32c764836ae07dc08c4a853f4a46b9ac8bb7
1 file changed +18 -10
lib/src/domain/exchange/morphtoken/morphtoken_exchange_provider.dart
+18 -10
@@ -90,26 +90,34 @@ class MorphTokenExchangeProvider extends ExchangeProvider {
90 final responseJSON = json.decode(response.body) as Map<String, dynamic>;
91
92 final min = responseJSON['input']['limits']['min'] as int;
93 - final max = responseJSON['input']['limits']['max'] as int;
94 - double minDouble;
95 - double maxDouble;
93 + int max;
94 + double ethMax;
95 +
96 + if (from == CryptoCurrency.eth) {
97 + ethMax = responseJSON['input']['limits']['max'] as double;
98 + } else {
99 + max = responseJSON['input']['limits']['max'] as int;
100 + }
101 +
102 + double minFormatted;
103 + double maxFormatted;
104
105 switch (from) {
106 case CryptoCurrency.xmr:
99 - minDouble = moneroAmountToDouble(amount: min);
100 - maxDouble = moneroAmountToDouble(amount: max);
107 + minFormatted = moneroAmountToDouble(amount: min);
108 + maxFormatted = moneroAmountToDouble(amount: max);
109 break;
110 case CryptoCurrency.eth:
103 - minDouble = min/ethereumAmountDivider;
104 - maxDouble = max/ethereumAmountDivider;
111 + minFormatted = min/ethereumAmountDivider;
112 + maxFormatted = ethMax/ethereumAmountDivider;
113 break;
114 default:
107 - minDouble = min/defaultAmountDivider;
108 - maxDouble = max/defaultAmountDivider;
115 + minFormatted = min/defaultAmountDivider;
116 + maxFormatted = max/defaultAmountDivider;
117 break;
118 }
119
112 - return Limits(min: minDouble, max: maxDouble);
120 + return Limits(min: minFormatted, max: maxFormatted);
121 }
122
123 @override