Remove direct calls of cw_bitcoin BitcoinTransactionPriority from SendViewModel and SettingsViewModel. Add bitcoinTransactionPriorityWithLabel to bitcoin facade. (#574)

mkyq committed Oct 28, 2022 at 18:09 UTC 52aabee658f8a1298c4dba98dba9b2597c56ece7
4 files changed +7 -4
lib/bitcoin/cw_bitcoin.dart
+4
@@ -112,6 +112,10 @@ class CWBitcoin extends Bitcoin {
112 int formatterStringDoubleToBitcoinAmount(String amount)
113 => stringDoubleToBitcoinAmount(amount);
114
115 + @override
116 + String bitcoinTransactionPriorityWithLabel(TransactionPriority priority, int rate)
117 + => (priority as BitcoinTransactionPriority).labelWithRate(rate);
118 +
119 @override
120 List<Unspent> getUnspents(Object wallet) {
121 final bitcoinWallet = wallet as ElectrumWallet;
lib/view_model/send/send_view_model.dart
+1 -2
@@ -1,7 +1,6 @@
1 import 'package:cake_wallet/entities/balance_display_mode.dart';
2 import 'package:cake_wallet/entities/transaction_description.dart';
3 import 'package:cake_wallet/view_model/dashboard/balance_view_model.dart';
4 -import 'package:cw_bitcoin/bitcoin_transaction_priority.dart';
4 import 'package:cw_core/transaction_priority.dart';
5 import 'package:cake_wallet/view_model/send/output.dart';
6 import 'package:cake_wallet/view_model/send/send_template_view_model.dart';
@@ -276,7 +275,7 @@ abstract class SendViewModelBase with Store {
275
276 if (isElectrumWallet) {
277 final rate = bitcoin!.getFeeRate(wallet, _priority);
279 - return '${(priority as BitcoinTransactionPriority).labelWithRate(rate)}';
278 + return bitcoin!.bitcoinTransactionPriorityWithLabel(_priority, rate);
279 }
280
281 return priority.toString();
lib/view_model/settings/settings_view_model.dart
+1 -2
@@ -1,7 +1,6 @@
1 import 'package:cake_wallet/entities/language_service.dart';
2 import 'package:cake_wallet/store/yat/yat_store.dart';
3 import 'package:cake_wallet/view_model/settings/choices_list_item.dart';
4 -import 'package:cw_bitcoin/bitcoin_transaction_priority.dart';
4 import 'package:flutter/cupertino.dart';
5 import 'package:mobx/mobx.dart';
6 import 'package:package_info/package_info.dart';
@@ -137,7 +136,7 @@ abstract class SettingsViewModelBase with Store {
136 if (wallet.type == WalletType.bitcoin
137 || wallet.type == WalletType.litecoin) {
138 final rate = bitcoin!.getFeeRate(wallet, _priority);
140 - return '${(priority as BitcoinTransactionPriority).labelWithRate(rate)}';
139 + return bitcoin!.bitcoinTransactionPriorityWithLabel(_priority, rate);
140 }
141
142 return priority.toString();
tool/configure.dart
+1
@@ -86,6 +86,7 @@ abstract class Bitcoin {
86 String formatterBitcoinAmountToString({required int amount});
87 double formatterBitcoinAmountToDouble({required int amount});
88 int formatterStringDoubleToBitcoinAmount(String amount);
89 + String bitcoinTransactionPriorityWithLabel(TransactionPriority priority, int rate);
90
91 List<Unspent> getUnspents(Object wallet);
92 void updateUnspents(Object wallet);