Remove last trace of legacy oldestIndexedBlockTimestamp
				
					
				
			This commit is contained in:
		
							parent
							
								
									e059b9d379
								
							
						
					
					
						commit
						c402422682
					
				@ -89,7 +89,6 @@ class Mining {
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    poolsStatistics['pools'] = poolsStats;
 | 
			
		||||
    poolsStatistics['oldestIndexedBlockTimestamp'] = await BlocksRepository.$oldestBlockTimestamp();
 | 
			
		||||
 | 
			
		||||
    const blockCount: number = await BlocksRepository.$blockCount(null, interval);
 | 
			
		||||
    poolsStatistics['blockCount'] = blockCount;
 | 
			
		||||
 | 
			
		||||
@ -669,14 +669,12 @@ class Routes {
 | 
			
		||||
  public async $getHistoricalBlockFeeRates(req: Request, res: Response) {
 | 
			
		||||
    try {
 | 
			
		||||
      const blockFeeRates = await mining.$getHistoricalBlockFeeRates(req.params.interval);
 | 
			
		||||
      const oldestIndexedBlockTimestamp = await BlocksRepository.$oldestBlockTimestamp();
 | 
			
		||||
      const blockCount = await BlocksRepository.$blockCount(null, null);
 | 
			
		||||
      res.header('Pragma', 'public');
 | 
			
		||||
      res.header('Cache-control', 'public');
 | 
			
		||||
      res.header('X-total-count', blockCount.toString());
 | 
			
		||||
      res.setHeader('Expires', new Date(Date.now() + 1000 * 60).toUTCString());
 | 
			
		||||
      res.json({
 | 
			
		||||
        oldestIndexedBlockTimestamp: oldestIndexedBlockTimestamp,
 | 
			
		||||
        blockFeeRates: blockFeeRates,
 | 
			
		||||
      });
 | 
			
		||||
      res.json(blockFeeRates);
 | 
			
		||||
    } catch (e) {
 | 
			
		||||
      res.status(500).send(e instanceof Error ? e.message : e);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@ -8,34 +8,34 @@
 | 
			
		||||
    </button>
 | 
			
		||||
    <form [formGroup]="radioGroupForm" class="formRadioGroup" *ngIf="(statsObservable$ | async) as stats">
 | 
			
		||||
      <div class="btn-group btn-group-toggle" ngbRadioGroup name="radioBasic" formControlName="dateSpan">
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.availableTimespanDay >= 1">
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.blockCount >= 144">
 | 
			
		||||
          <input ngbButton type="radio" [value]="'24h'" fragment="24h"> 24h
 | 
			
		||||
        </label>
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.availableTimespanDay >= 3">
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.blockCount >= 432">
 | 
			
		||||
          <input ngbButton type="radio" [value]="'3d'" fragment="3d"> 3D
 | 
			
		||||
        </label>
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.availableTimespanDay >= 7">
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.blockCount >= 1008">
 | 
			
		||||
          <input ngbButton type="radio" [value]="'1w'" fragment="1w"> 1W
 | 
			
		||||
        </label>
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.availableTimespanDay >= 30">
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.blockCount >= 4320">
 | 
			
		||||
          <input ngbButton type="radio" [value]="'1m'" fragment="1m"> 1M
 | 
			
		||||
        </label>
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.availableTimespanDay >= 90">
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.blockCount >= 12960">
 | 
			
		||||
          <input ngbButton type="radio" [value]="'3m'" fragment="3m"> 3M
 | 
			
		||||
        </label>
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.availableTimespanDay >= 180">
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.blockCount >= 25920">
 | 
			
		||||
          <input ngbButton type="radio" [value]="'6m'" fragment="6m"> 6M
 | 
			
		||||
        </label>
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.availableTimespanDay >= 365">
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.blockCount >= 52560">
 | 
			
		||||
          <input ngbButton type="radio" [value]="'1y'" fragment="1y"> 1Y
 | 
			
		||||
        </label>
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.availableTimespanDay >= 730">
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.blockCount >= 105120">
 | 
			
		||||
          <input ngbButton type="radio" [value]="'2y'" fragment="2y"> 2Y
 | 
			
		||||
        </label>
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.availableTimespanDay >= 1095">
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.blockCount >= 157680">
 | 
			
		||||
          <input ngbButton type="radio" [value]="'3y'" fragment="3y"> 3Y
 | 
			
		||||
        </label>
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.availableTimespanDay > 1095">
 | 
			
		||||
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="stats.blockCount > 157680">
 | 
			
		||||
          <input ngbButton type="radio" [value]="'all'" fragment="all"> ALL
 | 
			
		||||
        </label>
 | 
			
		||||
      </div>
 | 
			
		||||
 | 
			
		||||
@ -76,7 +76,7 @@ export class BlockFeeRatesGraphComponent implements OnInit {
 | 
			
		||||
          this.isLoading = true;
 | 
			
		||||
          return this.apiService.getHistoricalBlockFeeRates$(timespan)
 | 
			
		||||
            .pipe(
 | 
			
		||||
              tap((data: any) => {
 | 
			
		||||
              tap((response) => {
 | 
			
		||||
                // Group by percentile
 | 
			
		||||
                const seriesData = {
 | 
			
		||||
                  'Min': [],
 | 
			
		||||
@ -87,7 +87,7 @@ export class BlockFeeRatesGraphComponent implements OnInit {
 | 
			
		||||
                  '90th': [],
 | 
			
		||||
                  'Max': []
 | 
			
		||||
                };
 | 
			
		||||
                for (const rate of data.blockFeeRates) {
 | 
			
		||||
                for (const rate of response.body) {
 | 
			
		||||
                  const timestamp = rate.timestamp * 1000;
 | 
			
		||||
                  seriesData['Min'].push([timestamp, rate.avgFee_0, rate.avgHeight]);
 | 
			
		||||
                  seriesData['10th'].push([timestamp, rate.avgFee_10, rate.avgHeight]);
 | 
			
		||||
@ -130,13 +130,9 @@ export class BlockFeeRatesGraphComponent implements OnInit {
 | 
			
		||||
                });
 | 
			
		||||
                this.isLoading = false;
 | 
			
		||||
              }),
 | 
			
		||||
              map((data: any) => {
 | 
			
		||||
                const availableTimespanDay = (
 | 
			
		||||
                  (new Date().getTime() / 1000) - (data.oldestIndexedBlockTimestamp)
 | 
			
		||||
                ) / 3600 / 24;
 | 
			
		||||
 | 
			
		||||
              map((response) => {
 | 
			
		||||
                return {
 | 
			
		||||
                  availableTimespanDay: availableTimespanDay,
 | 
			
		||||
                  blockCount: parseInt(response.headers.get('x-total-count'), 10),
 | 
			
		||||
                };
 | 
			
		||||
              }),
 | 
			
		||||
            );
 | 
			
		||||
 | 
			
		||||
@ -34,10 +34,6 @@ export class DifficultyAdjustmentsTable implements OnInit {
 | 
			
		||||
      .pipe(
 | 
			
		||||
        map((response) => {
 | 
			
		||||
          const data = response.body;
 | 
			
		||||
          const availableTimespanDay = (
 | 
			
		||||
            (new Date().getTime() / 1000) - (data.oldestIndexedBlockTimestamp)
 | 
			
		||||
          ) / 3600 / 24;
 | 
			
		||||
 | 
			
		||||
          const tableData = [];
 | 
			
		||||
          for (let i = data.difficulty.length - 1; i > 0; --i) {
 | 
			
		||||
            const selectedPowerOfTen: any = selectPowerOfTen(data.difficulty[i].difficulty);
 | 
			
		||||
@ -53,7 +49,6 @@ export class DifficultyAdjustmentsTable implements OnInit {
 | 
			
		||||
          this.isLoading = false;
 | 
			
		||||
 | 
			
		||||
          return {
 | 
			
		||||
            availableTimespanDay: availableTimespanDay,
 | 
			
		||||
            difficulty: tableData.slice(0, 6),
 | 
			
		||||
          };
 | 
			
		||||
        }),
 | 
			
		||||
 | 
			
		||||
@ -76,7 +76,6 @@ export interface SinglePoolStats {
 | 
			
		||||
export interface PoolsStats {
 | 
			
		||||
  blockCount: number;
 | 
			
		||||
  lastEstimatedHashrate: number;
 | 
			
		||||
  oldestIndexedBlockTimestamp: number;
 | 
			
		||||
  pools: SinglePoolStats[];
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -189,7 +189,7 @@ export class ApiService {
 | 
			
		||||
  getHistoricalBlockFeeRates$(interval: string | undefined) : Observable<any> {
 | 
			
		||||
    return this.httpClient.get<any[]>(
 | 
			
		||||
      this.apiBaseUrl + this.apiBasePath + `/api/v1/mining/blocks/fee-rates` +
 | 
			
		||||
      (interval !== undefined ? `/${interval}` : '')
 | 
			
		||||
      (interval !== undefined ? `/${interval}` : ''), { observe: 'response' }
 | 
			
		||||
    );
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user