Switch success rate for total vsize on acceleration dashboard

This commit is contained in:
Mononaut 2024-04-10 06:40:49 +00:00
parent 80c7754e48
commit e263f94765
No known key found for this signature in database
GPG Key ID: A3F058E41374C04E
3 changed files with 24 additions and 7 deletions

View File

@ -17,10 +17,10 @@
</div>
</div>
<div class="item">
<h5 class="card-title" i18n="accelerator.success-rate">Success Rate</h5>
<h5 class="card-title" i18n="accelerator.total-vsize">Total vSize</h5>
<div class="card-text">
<div>{{ stats.successRate.toFixed(2) }} %</div>
<div class="symbol" i18n="accelerator.mined-next-block">mined</div>
<div [innerHTML]="'&lrm;' + (stats.totalVsize | vbytes: 2)"></div>
<div class="symbol">{{ (stats.totalVsize / (1_000_000 * blocksInPeriod) * 100).toFixed(2) }}% <span i18n="accelerator.percent-of-blocks"> of blocks</span></div>
</div>
</div>
</div>

View File

@ -6,6 +6,7 @@ export type AccelerationStats = {
totalRequested: number;
totalBidBoost: number;
successRate: number;
totalVsize: number;
}
@Component({
@ -17,16 +18,32 @@ export type AccelerationStats = {
export class AccelerationStatsComponent implements OnInit, OnChanges {
@Input() timespan: '3d' | '1w' | '1m' = '1w';
accelerationStats$: Observable<AccelerationStats>;
blocksInPeriod: number = 7 * 144;
constructor(
private servicesApiService: ServicesApiServices
) { }
ngOnInit(): void {
this.accelerationStats$ = this.servicesApiService.getAccelerationStats$({ timeframe: this.timespan });
this.updateStats();
}
ngOnChanges(): void {
this.updateStats();
}
updateStats(): void {
this.accelerationStats$ = this.servicesApiService.getAccelerationStats$({ timeframe: this.timespan });
switch (this.timespan) {
case '3d':
this.blocksInPeriod = 3 * 144;
break;
case '1w':
this.blocksInPeriod = 7 * 144;
break;
case '1m':
this.blocksInPeriod = 30 * 144;
break;
}
}
}

View File

@ -17,10 +17,10 @@
</div>
</div>
<div class="item">
<h5 class="card-title" i18n="accelerator.total-vsize">Total Vsize</h5>
<h5 class="card-title" i18n="accelerator.total-vsize">Total vSize</h5>
<div class="card-text">
<div [innerHTML]="'&lrm;' + (stats.totalVsize * 4 | vbytes: 2)"></div>
<div class="symbol">{{ (stats.totalVsize / 1_000_000 * 100).toFixed(2) }}% <span i18n="accelerator.percent-of-next-block"> of next block</span></div>
<div [innerHTML]="'&lrm;' + (stats.totalVsize | vbytes: 2)"></div>
<div class="symbol">{{ (stats.totalVsize / 1_000_000 * 100).toFixed(2) }}% <span i18n="accelerator.percent-of-block"> of block</span></div>
</div>
</div>
</div>