From 52aabee658f8a1298c4dba98dba9b2597c56ece7 Mon Sep 17 00:00:00 2001 From: mkyq <53115730+mkyq@users.noreply.github.com> Date: Fri, 28 Oct 2022 18:09:27 -0400 Subject: [PATCH] Remove direct calls of cw_bitcoin BitcoinTransactionPriority from SendViewModel and SettingsViewModel. Add bitcoinTransactionPriorityWithLabel to bitcoin facade. (#574) --- lib/bitcoin/cw_bitcoin.dart | 4 ++++ lib/view_model/send/send_view_model.dart | 3 +-- lib/view_model/settings/settings_view_model.dart | 3 +-- tool/configure.dart | 1 + 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/lib/bitcoin/cw_bitcoin.dart b/lib/bitcoin/cw_bitcoin.dart index 9d5484b79..ff6fd7531 100644 --- a/lib/bitcoin/cw_bitcoin.dart +++ b/lib/bitcoin/cw_bitcoin.dart @@ -112,6 +112,10 @@ class CWBitcoin extends Bitcoin { int formatterStringDoubleToBitcoinAmount(String amount) => stringDoubleToBitcoinAmount(amount); + @override + String bitcoinTransactionPriorityWithLabel(TransactionPriority priority, int rate) + => (priority as BitcoinTransactionPriority).labelWithRate(rate); + @override List getUnspents(Object wallet) { final bitcoinWallet = wallet as ElectrumWallet; diff --git a/lib/view_model/send/send_view_model.dart b/lib/view_model/send/send_view_model.dart index b6bac59e0..cdef6faba 100644 --- a/lib/view_model/send/send_view_model.dart +++ b/lib/view_model/send/send_view_model.dart @@ -1,7 +1,6 @@ import 'package:cake_wallet/entities/balance_display_mode.dart'; import 'package:cake_wallet/entities/transaction_description.dart'; import 'package:cake_wallet/view_model/dashboard/balance_view_model.dart'; -import 'package:cw_bitcoin/bitcoin_transaction_priority.dart'; import 'package:cw_core/transaction_priority.dart'; import 'package:cake_wallet/view_model/send/output.dart'; import 'package:cake_wallet/view_model/send/send_template_view_model.dart'; @@ -276,7 +275,7 @@ abstract class SendViewModelBase with Store { if (isElectrumWallet) { final rate = bitcoin!.getFeeRate(wallet, _priority); - return '${(priority as BitcoinTransactionPriority).labelWithRate(rate)}'; + return bitcoin!.bitcoinTransactionPriorityWithLabel(_priority, rate); } return priority.toString(); diff --git a/lib/view_model/settings/settings_view_model.dart b/lib/view_model/settings/settings_view_model.dart index c3ca2e3b9..96b2e7bdd 100644 --- a/lib/view_model/settings/settings_view_model.dart +++ b/lib/view_model/settings/settings_view_model.dart @@ -1,7 +1,6 @@ import 'package:cake_wallet/entities/language_service.dart'; import 'package:cake_wallet/store/yat/yat_store.dart'; import 'package:cake_wallet/view_model/settings/choices_list_item.dart'; -import 'package:cw_bitcoin/bitcoin_transaction_priority.dart'; import 'package:flutter/cupertino.dart'; import 'package:mobx/mobx.dart'; import 'package:package_info/package_info.dart'; @@ -137,7 +136,7 @@ abstract class SettingsViewModelBase with Store { if (wallet.type == WalletType.bitcoin || wallet.type == WalletType.litecoin) { final rate = bitcoin!.getFeeRate(wallet, _priority); - return '${(priority as BitcoinTransactionPriority).labelWithRate(rate)}'; + return bitcoin!.bitcoinTransactionPriorityWithLabel(_priority, rate); } return priority.toString(); diff --git a/tool/configure.dart b/tool/configure.dart index 3b2414192..ca8d3c9fb 100644 --- a/tool/configure.dart +++ b/tool/configure.dart @@ -86,6 +86,7 @@ abstract class Bitcoin { String formatterBitcoinAmountToString({required int amount}); double formatterBitcoinAmountToDouble({required int amount}); int formatterStringDoubleToBitcoinAmount(String amount); + String bitcoinTransactionPriorityWithLabel(TransactionPriority priority, int rate); List getUnspents(Object wallet); void updateUnspents(Object wallet);