cast extra id as optional string

This commit is contained in:
Godwin Asuquo 2022-10-18 16:18:55 +03:00
parent 842b120f8f
commit da14f04422

View file

@ -31,8 +31,7 @@ class SimpleSwapExchangeProvider extends ExchangeProvider {
static const apiKey = secrets.simpleSwapApiKey; static const apiKey = secrets.simpleSwapApiKey;
@override @override
ExchangeProviderDescription get description => ExchangeProviderDescription get description => ExchangeProviderDescription.simpleSwap;
ExchangeProviderDescription.simpleSwap;
@override @override
Future<double> calculateAmount( Future<double> calculateAmount(
@ -68,14 +67,13 @@ class SimpleSwapExchangeProvider extends ExchangeProvider {
final uri = Uri.https(apiAuthority, getEstimatePath, <String, String>{'api_key': apiKey}); final uri = Uri.https(apiAuthority, getEstimatePath, <String, String>{'api_key': apiKey});
final response = await get(uri); final response = await get(uri);
return !(response.statusCode == 403); return !(response.statusCode == 403);
} }
@override @override
Future<Trade> createTrade({TradeRequest request, bool isFixedRateMode}) async { Future<Trade> createTrade({TradeRequest request, bool isFixedRateMode}) async {
final _request = request as SimpleSwapRequest; final _request = request as SimpleSwapRequest;
final headers = { final headers = {'Content-Type': 'application/json'};
'Content-Type': 'application/json'};
final params = <String, String>{ final params = <String, String>{
'api_key': apiKey, 'api_key': apiKey,
}; };
@ -106,7 +104,7 @@ class SimpleSwapExchangeProvider extends ExchangeProvider {
final id = responseJSON['id'] as String; final id = responseJSON['id'] as String;
final inputAddress = responseJSON['address_from'] as String; final inputAddress = responseJSON['address_from'] as String;
final settleAddress = responseJSON['user_refund_address'] as String; final settleAddress = responseJSON['user_refund_address'] as String;
final extraId = responseJSON['extra_id_from'] as String; final extraId = responseJSON['extra_id_from'] as String?;
return Trade( return Trade(
id: id, id: id,
provider: description, provider: description,
@ -114,7 +112,7 @@ class SimpleSwapExchangeProvider extends ExchangeProvider {
to: _request.to, to: _request.to,
inputAddress: inputAddress, inputAddress: inputAddress,
refundAddress: settleAddress, refundAddress: settleAddress,
extraId: extraId, extraId: extraId ?? '',
state: TradeState.created, state: TradeState.created,
amount: _request.amount, amount: _request.amount,
createdAt: DateTime.now(), createdAt: DateTime.now(),
@ -147,8 +145,8 @@ class SimpleSwapExchangeProvider extends ExchangeProvider {
} }
final responseJSON = json.decode(response.body) as Map<String, dynamic>; final responseJSON = json.decode(response.body) as Map<String, dynamic>;
final min = responseJSON['min'] != null ? double.tryParse(responseJSON['min'] as String) : null; final min = responseJSON['min'] != null ? double.tryParse(responseJSON['min'] as String) : null;
final max = responseJSON['max'] != null ? double.parse(responseJSON['max'] as String) : null; final max = responseJSON['max'] != null ? double.parse(responseJSON['max'] as String) : null;
return Limits(min: min, max: max); return Limits(min: min, max: max);
} }