From d6cf32c764836ae07dc08c4a853f4a46b9ac8bb7 Mon Sep 17 00:00:00 2001 From: Oleksandr Sobol Date: Fri, 7 Feb 2020 12:06:13 +0200 Subject: [PATCH] CWA-169 | fixed limits for ethereum in MorphTokenExchangeProvider --- .../morphtoken_exchange_provider.dart | 28 ++++++++++++------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/lib/src/domain/exchange/morphtoken/morphtoken_exchange_provider.dart b/lib/src/domain/exchange/morphtoken/morphtoken_exchange_provider.dart index b18782ad..b609d18e 100644 --- a/lib/src/domain/exchange/morphtoken/morphtoken_exchange_provider.dart +++ b/lib/src/domain/exchange/morphtoken/morphtoken_exchange_provider.dart @@ -90,26 +90,34 @@ class MorphTokenExchangeProvider extends ExchangeProvider { final responseJSON = json.decode(response.body) as Map; final min = responseJSON['input']['limits']['min'] as int; - final max = responseJSON['input']['limits']['max'] as int; - double minDouble; - double maxDouble; + int max; + double ethMax; + + if (from == CryptoCurrency.eth) { + ethMax = responseJSON['input']['limits']['max'] as double; + } else { + max = responseJSON['input']['limits']['max'] as int; + } + + double minFormatted; + double maxFormatted; switch (from) { case CryptoCurrency.xmr: - minDouble = moneroAmountToDouble(amount: min); - maxDouble = moneroAmountToDouble(amount: max); + minFormatted = moneroAmountToDouble(amount: min); + maxFormatted = moneroAmountToDouble(amount: max); break; case CryptoCurrency.eth: - minDouble = min/ethereumAmountDivider; - maxDouble = max/ethereumAmountDivider; + minFormatted = min/ethereumAmountDivider; + maxFormatted = ethMax/ethereumAmountDivider; break; default: - minDouble = min/defaultAmountDivider; - maxDouble = max/defaultAmountDivider; + minFormatted = min/defaultAmountDivider; + maxFormatted = max/defaultAmountDivider; break; } - return Limits(min: minDouble, max: maxDouble); + return Limits(min: minFormatted, max: maxFormatted); } @override