59 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<div [class]="widget === false ? 'full-container' : ''">
 | 
						|
 | 
						|
  <div class="card-header mb-0 mb-lg-4" [style]="widget ? 'display:none' : ''">
 | 
						|
    <form [formGroup]="radioGroupForm" class="formRadioGroup" *ngIf="(hashrateObservable$ | async) as hashrates">
 | 
						|
      <div class="btn-group btn-group-toggle" ngbRadioGroup name="radioBasic" formControlName="dateSpan">
 | 
						|
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="hashrates.availableTimespanDay >= 90">
 | 
						|
          <input ngbButton type="radio" [value]="'3m'"> 3M
 | 
						|
        </label>
 | 
						|
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="hashrates.availableTimespanDay >= 180">
 | 
						|
          <input ngbButton type="radio" [value]="'6m'"> 6M
 | 
						|
        </label>
 | 
						|
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="hashrates.availableTimespanDay >= 365">
 | 
						|
          <input ngbButton type="radio" [value]="'1y'"> 1Y
 | 
						|
        </label>
 | 
						|
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="hashrates.availableTimespanDay >= 730">
 | 
						|
          <input ngbButton type="radio" [value]="'2y'"> 2Y
 | 
						|
        </label>
 | 
						|
        <label ngbButtonLabel class="btn-primary btn-sm" *ngIf="hashrates.availableTimespanDay >= 1095">
 | 
						|
          <input ngbButton type="radio" [value]="'3y'"> 3Y
 | 
						|
        </label>
 | 
						|
        <label ngbButtonLabel class="btn-primary btn-sm">
 | 
						|
          <input ngbButton type="radio" [value]="'all'"> ALL
 | 
						|
        </label>
 | 
						|
      </div>
 | 
						|
    </form>
 | 
						|
  </div>
 | 
						|
 | 
						|
  <div *ngIf="hashrateObservable$ | async" [class]="!widget ? 'chart' : 'chart-widget'"
 | 
						|
    echarts [initOpts]="chartInitOptions" [options]="chartOptions"></div>
 | 
						|
  <div class="text-center loadingGraphs" *ngIf="isLoading">
 | 
						|
    <div class="spinner-border text-light"></div>
 | 
						|
  </div>
 | 
						|
  
 | 
						|
  <div class="mt-3" *ngIf="!widget">
 | 
						|
    <table class="table table-borderless table-sm text-center">
 | 
						|
      <thead>
 | 
						|
        <tr>
 | 
						|
          <th i18n="mining.rank">Block</th>
 | 
						|
          <th class="d-none d-md-block" i18n="block.timestamp">Timestamp</th>
 | 
						|
          <th i18n="mining.adjusted">Adjusted</th>
 | 
						|
          <th i18n="mining.difficulty">Difficulty</th>
 | 
						|
          <th i18n="mining.change">Change</th>
 | 
						|
        </tr>
 | 
						|
      </thead>
 | 
						|
      <tbody *ngIf="(hashrateObservable$ | async) as data">
 | 
						|
        <tr *ngFor="let diffChange of data.difficulty">
 | 
						|
          <td><a [routerLink]="['/block' | relativeUrl, diffChange.height]">{{ diffChange.height }}</a></td>
 | 
						|
          <td class="d-none d-md-block">‎{{ diffChange.timestamp * 1000 | date:'yyyy-MM-dd HH:mm' }}</td>
 | 
						|
          <td><app-time-since [time]="diffChange.timestamp" [fastRender]="true"></app-time-since></td>
 | 
						|
          <td class="d-none d-md-block">{{ formatNumber(diffChange.difficulty, locale, '1.2-2') }}</td>
 | 
						|
          <td class="d-block d-md-none">{{ diffChange.difficultyShorten }}</td>
 | 
						|
          <td [style]="diffChange.change >= 0 ? 'color: #42B747' : 'color: #B74242'">{{ formatNumber(diffChange.change, locale, '1.2-2') }}%</td>
 | 
						|
        </tr>
 | 
						|
      </tbody>
 | 
						|
    </table>
 | 
						|
  </div>
 | 
						|
 | 
						|
</div>
 |