Estimated fee rates.

This commit is contained in:
M
2021-02-13 00:38:34 +02:00
parent b1047fb3cf
commit 35aabcd248
12 changed files with 252 additions and 168 deletions
@@ -6,12 +6,14 @@ class PickerListItem<ItemType> extends SettingsListItem {
{@required String title,
@required this.selectedItem,
@required this.items,
this.displayItem,
void Function(ItemType item) onItemSelected})
: _onItemSelected = onItemSelected,
super(title);
final ItemType Function() selectedItem;
final List<ItemType> items;
final String Function(ItemType item) displayItem;
final void Function(ItemType item) _onItemSelected;
void onItemSelected(dynamic item) {
@@ -1,4 +1,5 @@
import 'package:cake_wallet/bitcoin/bitcoin_transaction_priority.dart';
import 'package:cake_wallet/bitcoin/bitcoin_wallet.dart';
import 'package:cake_wallet/entities/balance.dart';
import 'package:cake_wallet/entities/transaction_priority.dart';
import 'package:cake_wallet/themes/theme_base.dart';
@@ -74,6 +75,16 @@ abstract class SettingsViewModelBase with Store {
PickerListItem(
title: S.current.settings_fee_priority,
items: priorityForWalletType(wallet.type),
displayItem: (dynamic priority) {
final _priority = priority as TransactionPriority;
if (wallet is BitcoinWallet) {
final rate = wallet.feeRate(_priority);
return '${priority.toString()} ($rate sat/byte)';
}
return priority.toString();
},
selectedItem: () => transactionPriority,
onItemSelected: (TransactionPriority priority) =>
_settingsStore.priority[wallet.type] = priority),