From 327d1a6ebdb9a8bd60f7c30cb35494759c6f5e57 Mon Sep 17 00:00:00 2001 From: garrettmills Date: Sat, 10 Apr 2021 22:36:26 -0500 Subject: [PATCH] Fix transaction deletion --- src/app/units/rtdb/Transaction.ts | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/app/units/rtdb/Transaction.ts b/src/app/units/rtdb/Transaction.ts index 1a25161..600af6a 100644 --- a/src/app/units/rtdb/Transaction.ts +++ b/src/app/units/rtdb/Transaction.ts @@ -63,15 +63,17 @@ export class Transaction extends Unit { */ public async up() { this.firebase.ref('transaction').on('value', snapshot => { - if ( !Array.isArray(snapshot.val()) || snapshot.val().length < 2 ) return; - let newSnapshot = [...snapshot.val()] - for ( const left of snapshot.val() ) { - for ( const right of snapshot.val() ) { + for ( const leftKey in snapshot.val() ) { + const left = snapshot.val()[leftKey] + + for ( const rightKey in snapshot.val() ) { + const right = snapshot.val()[rightKey] + this.compare(left, right).then(match => { if ( match ) { this.blockchain.submitTransactions([left, right]) - this.firebase.ref('transaction').child(left.key).remove() - this.firebase.ref('transaction').child(right.key).remove() + this.firebase.ref('transaction').child(leftKey).remove() + this.firebase.ref('transaction').child(rightKey).remove() } }) }