Round using AmountShortenerPipe

This commit is contained in:
nymkappa 2022-03-25 11:38:36 +09:00
parent a016d1c071
commit c5837ab9df
No known key found for this signature in database
GPG key ID: E155910B16E8BD04
3 changed files with 7 additions and 7 deletions

View file

@ -17,7 +17,7 @@
<div class="card-text" i18n-ngbTooltip="Transaction fee tooltip" <div class="card-text" i18n-ngbTooltip="Transaction fee tooltip"
ngbTooltip="Average miners' reward per transaction in the past 144 blocks" placement="bottom"> ngbTooltip="Average miners' reward per transaction in the past 144 blocks" placement="bottom">
<div class="fee-text"> <div class="fee-text">
{{ rewardStats.rewardPerTx | amountShortener }} {{ rewardStats.rewardPerTx | amountShortener: 2 }}
<span i18n="shared.sat-vbyte|sat/vB">sats/tx</span> <span i18n="shared.sat-vbyte|sat/vB">sats/tx</span>
</div> </div>
<span class="fiat"> <span class="fiat">
@ -29,7 +29,7 @@
<h5 class="card-title" i18n="mining.average-fee">Average Fee</h5> <h5 class="card-title" i18n="mining.average-fee">Average Fee</h5>
<div class="card-text" i18n-ngbTooltip="Transaction fee tooltip" <div class="card-text" i18n-ngbTooltip="Transaction fee tooltip"
ngbTooltip="Fee paid on average for each transaction in the past 144 blocks" placement="bottom"> ngbTooltip="Fee paid on average for each transaction in the past 144 blocks" placement="bottom">
<div class="fee-text">{{ rewardStats.feePerTx | amountShortener }} <div class="fee-text">{{ rewardStats.feePerTx | amountShortener: 2 }}
<span i18n="shared.sat-vbyte|sat/vB">sats/tx</span> <span i18n="shared.sat-vbyte|sat/vB">sats/tx</span>
</div> </div>
<span class="fiat"> <span class="fiat">

View file

@ -24,11 +24,10 @@ export class RewardStatsComponent implements OnInit {
return this.apiService.getRewardStats$() return this.apiService.getRewardStats$()
.pipe( .pipe(
map((stats) => { map((stats) => {
const precision = 100;
return { return {
totalReward: stats.totalReward, totalReward: stats.totalReward,
rewardPerTx: Math.round((stats.totalReward / stats.totalTx) * precision) / precision, rewardPerTx: stats.totalReward / stats.totalTx,
feePerTx: Math.round((stats.totalFee / stats.totalTx) * precision) / precision, feePerTx: stats.totalFee / stats.totalTx,
}; };
}) })
); );

View file

@ -5,11 +5,12 @@ import { Pipe, PipeTransform } from '@angular/core';
}) })
export class AmountShortenerPipe implements PipeTransform { export class AmountShortenerPipe implements PipeTransform {
transform(num: number, ...args: number[]): unknown { transform(num: number, ...args: number[]): unknown {
const digits = args[0] || 1;
if (num < 1000) { if (num < 1000) {
return num; return num.toFixed(digits);
} }
const digits = args[0] || 1;
const lookup = [ const lookup = [
{ value: 1, symbol: '' }, { value: 1, symbol: '' },
{ value: 1e3, symbol: 'k' }, { value: 1e3, symbol: 'k' },