/* * This file is part of Stack Wallet. * * Copyright (c) 2023 Cypher Stack * All Rights Reserved. * The code is distributed under GPLv3 license, see LICENSE file for details. * Generated by Cypher Stack on 2023-05-26 * */ import 'package:decimal/decimal.dart'; import '../../../utilities/logger.dart'; class Estimate { final Decimal estimatedAmount; final bool fixedRate; final bool reversed; final String? warningMessage; final String? rateId; final String exchangeProvider; final String? kycRating; Estimate({ required this.estimatedAmount, required this.fixedRate, required this.reversed, this.warningMessage, this.rateId, required this.exchangeProvider, this.kycRating, }); factory Estimate.fromMap( Map map, { required String exchangeProvider, String? kycRating, }) { try { return Estimate( estimatedAmount: Decimal.parse(map["estimatedAmount"] as String), fixedRate: map["fixedRate"] as bool, reversed: map["reversed"] as bool, warningMessage: map["warningMessage"] as String?, rateId: map["rateId"] as String?, exchangeProvider: exchangeProvider, kycRating: kycRating, ); } catch (e, s) { Logging.instance.log("Estimate.fromMap(): $e\n$s", level: LogLevel.Error); rethrow; } } Map toMap() { return { "estimatedAmount": estimatedAmount.toString(), "fixedRate": fixedRate, "reversed": reversed, "warningMessage": warningMessage, "rateId": rateId, "exchangeProvider": exchangeProvider, "kycRating": kycRating, }; } @override String toString() => "Estimate: ${toMap()}"; }