Handle coinbase transactions no longer has undefined fee.
This commit is contained in:
parent
9d8c1184ab
commit
9980414969
@ -76,7 +76,7 @@ class Blocks {
|
|||||||
block.coinbaseTx = this.stripCoinbaseTransaction(transactions[0]);
|
block.coinbaseTx = this.stripCoinbaseTransaction(transactions[0]);
|
||||||
transactions.sort((a, b) => b.feePerVsize - a.feePerVsize);
|
transactions.sort((a, b) => b.feePerVsize - a.feePerVsize);
|
||||||
block.medianFee = transactions.length > 1 ? Common.median(transactions.map((tx) => tx.feePerVsize)) : 0;
|
block.medianFee = transactions.length > 1 ? Common.median(transactions.map((tx) => tx.feePerVsize)) : 0;
|
||||||
block.feeRange = transactions.length > 1 ? Common.getFeesInRange(transactions, 8, 1) : [0, 0];
|
block.feeRange = transactions.length > 1 ? Common.getFeesInRange(transactions.slice(0, transactions.length - 2), 8) : [0, 0];
|
||||||
|
|
||||||
this.blocks.push(block);
|
this.blocks.push(block);
|
||||||
if (this.blocks.length > config.KEEP_BLOCK_AMOUNT) {
|
if (this.blocks.length > config.KEEP_BLOCK_AMOUNT) {
|
||||||
|
@ -12,7 +12,7 @@ export class Common {
|
|||||||
return medianNr;
|
return medianNr;
|
||||||
}
|
}
|
||||||
|
|
||||||
static getFeesInRange(transactions: TransactionExtended[], rangeLength: number, lastindex = 0) {
|
static getFeesInRange(transactions: TransactionExtended[], rangeLength: number) {
|
||||||
const arr = [transactions[transactions.length - 1].feePerVsize];
|
const arr = [transactions[transactions.length - 1].feePerVsize];
|
||||||
const chunk = 1 / (rangeLength - 1);
|
const chunk = 1 / (rangeLength - 1);
|
||||||
let itemsToAdd = rangeLength - 2;
|
let itemsToAdd = rangeLength - 2;
|
||||||
@ -22,7 +22,7 @@ export class Common {
|
|||||||
itemsToAdd--;
|
itemsToAdd--;
|
||||||
}
|
}
|
||||||
|
|
||||||
arr.push(transactions[lastindex].feePerVsize);
|
arr.push(transactions[0].feePerVsize);
|
||||||
return arr;
|
return arr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -77,7 +77,7 @@ class Mempool {
|
|||||||
const transaction: Transaction = await bitcoinApi.getRawTransaction(txId);
|
const transaction: Transaction = await bitcoinApi.getRawTransaction(txId);
|
||||||
return Object.assign({
|
return Object.assign({
|
||||||
vsize: transaction.weight / 4,
|
vsize: transaction.weight / 4,
|
||||||
feePerVsize: transaction.fee / (transaction.weight / 4),
|
feePerVsize: (transaction.fee || 0) / (transaction.weight / 4),
|
||||||
firstSeen: Math.round((new Date().getTime() / 1000)),
|
firstSeen: Math.round((new Date().getTime() / 1000)),
|
||||||
}, transaction);
|
}, transaction);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
|
@ -74,6 +74,9 @@ export class TransactionComponent implements OnInit, OnDestroy {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
this.tx = tx;
|
this.tx = tx;
|
||||||
|
if (tx.fee === undefined) {
|
||||||
|
this.tx.fee = 0;
|
||||||
|
}
|
||||||
this.isLoadingTx = false;
|
this.isLoadingTx = false;
|
||||||
this.error = undefined;
|
this.error = undefined;
|
||||||
this.waitingForTransaction = false;
|
this.waitingForTransaction = false;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user