fix Electrum transaction updates (#953)

Serhii committed Jun 14, 2023 at 23:53 UTC f88e150cd18d4d89ed135c79f59e7c3988185756
1 file changed +3 -15
cw_bitcoin/lib/electrum_transaction_history.dart
+3 -15
@@ -35,7 +35,7 @@ abstract class ElectrumTransactionHistoryBase
35
36 @override
37 void addMany(Map<String, ElectrumTransactionInfo> transactions) =>
38 - transactions.forEach((_, tx) => _updateOrInsert(tx));
38 + transactions.forEach((_, tx) => _update(tx));
39
40 @override
41 Future<void> save() async {
@@ -74,7 +74,7 @@ abstract class ElectrumTransactionHistoryBase
74
75 if (val is Map<String, dynamic>) {
76 final tx = ElectrumTransactionInfo.fromJson(val, walletInfo.type);
77 - _updateOrInsert(tx);
77 + _update(tx);
78 }
79 });
80
@@ -84,18 +84,6 @@ abstract class ElectrumTransactionHistoryBase
84 }
85 }
86
87 - void _updateOrInsert(ElectrumTransactionInfo transaction) {
88 -
89 - if (transactions[transaction.id] == null) {
87 + void _update(ElectrumTransactionInfo transaction) =>
88 transactions[transaction.id] = transaction;
91 - } else {
92 - final originalTx = transactions[transaction.id];
93 - originalTx?.confirmations = transaction.confirmations;
94 - originalTx?.amount = transaction.amount;
95 - originalTx?.height = transaction.height;
96 - originalTx?.date ??= transaction.date;
97 - originalTx?.isPending = transaction.isPending;
98 - originalTx?.direction = transaction.direction;
99 - }
100 - }
89 }