mirror of
https://github.com/Such-Software/hash-wallet.git
synced 2026-10-18 05:51:34 +02:00
fix Electrum transaction updates (#953)
This commit is contained in:
@@ -35,7 +35,7 @@ abstract class ElectrumTransactionHistoryBase
|
||||
|
||||
@override
|
||||
void addMany(Map<String, ElectrumTransactionInfo> transactions) =>
|
||||
transactions.forEach((_, tx) => _updateOrInsert(tx));
|
||||
transactions.forEach((_, tx) => _update(tx));
|
||||
|
||||
@override
|
||||
Future<void> save() async {
|
||||
@@ -74,7 +74,7 @@ abstract class ElectrumTransactionHistoryBase
|
||||
|
||||
if (val is Map<String, dynamic>) {
|
||||
final tx = ElectrumTransactionInfo.fromJson(val, walletInfo.type);
|
||||
_updateOrInsert(tx);
|
||||
_update(tx);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -84,18 +84,6 @@ abstract class ElectrumTransactionHistoryBase
|
||||
}
|
||||
}
|
||||
|
||||
void _updateOrInsert(ElectrumTransactionInfo transaction) {
|
||||
|
||||
if (transactions[transaction.id] == null) {
|
||||
void _update(ElectrumTransactionInfo transaction) =>
|
||||
transactions[transaction.id] = transaction;
|
||||
} else {
|
||||
final originalTx = transactions[transaction.id];
|
||||
originalTx?.confirmations = transaction.confirmations;
|
||||
originalTx?.amount = transaction.amount;
|
||||
originalTx?.height = transaction.height;
|
||||
originalTx?.date ??= transaction.date;
|
||||
originalTx?.isPending = transaction.isPending;
|
||||
originalTx?.direction = transaction.direction;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user