2022-07-16 10:44:05 +02:00
|
|
|
<div class="full-container h-100">
|
|
|
|
|
|
|
|
<div class="card-header">
|
2022-07-16 23:12:16 +02:00
|
|
|
<div class="d-flex d-md-block align-items-baseline" style="margin-bottom: -5px">
|
|
|
|
<span i18n="lightning.nodes-per-isp">Lightning nodes per ISP</span>
|
2022-07-16 21:43:16 +02:00
|
|
|
<button class="btn p-0 pl-2" style="margin: 0 0 4px 0px" (click)="onSaveChart()">
|
|
|
|
<fa-icon [icon]="['fas', 'download']" [fixedWidth]="true"></fa-icon>
|
|
|
|
</button>
|
|
|
|
</div>
|
2022-07-27 15:33:25 +02:00
|
|
|
<small class="d-block" style="color: #ffffff66; min-height: 25px" i18n="lightning.tor-nodes-excluded">
|
|
|
|
<span *ngIf="!(showTorObservable$ | async)">(Tor nodes excluded)</span>
|
|
|
|
</small>
|
2022-07-16 10:44:05 +02:00
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="container pb-lg-0 bottom-padding">
|
|
|
|
<div class="pb-lg-5" *ngIf="nodesPerAsObservable$ | async">
|
|
|
|
<div class="chart w-100" echarts [initOpts]="chartInitOptions" [options]="chartOptions"
|
|
|
|
(chartInit)="onChartInit($event)">
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="text-center loadingGraphs" *ngIf="isLoading">
|
|
|
|
<div class="spinner-border text-light"></div>
|
|
|
|
</div>
|
|
|
|
|
2022-07-27 13:20:54 +02:00
|
|
|
<div class="d-flex toggle">
|
|
|
|
<app-toggle [textLeft]="'Show Tor'" [textRight]="" (toggleStatusChanged)="onTorToggleStatusChanged($event)"></app-toggle>
|
|
|
|
<app-toggle [textLeft]="'Nodes'" [textRight]="'Capacity'" (toggleStatusChanged)="onGroupToggleStatusChanged($event)"></app-toggle>
|
|
|
|
</div>
|
|
|
|
|
2022-07-17 11:17:48 +02:00
|
|
|
<table class="table table-borderless text-center m-auto" style="max-width: 900px">
|
2022-07-16 10:44:05 +02:00
|
|
|
<thead>
|
|
|
|
<tr>
|
2022-07-17 11:17:48 +02:00
|
|
|
<th class="rank text-left pl-0" i18n="mining.rank">Rank</th>
|
|
|
|
<th class="name text-left" i18n="lightning.isp">ISP</th>
|
|
|
|
<th class="share text-right" i18n="lightning.share">Share</th>
|
|
|
|
<th class="nodes text-right" i18n="lightning.nodes-count">Nodes</th>
|
|
|
|
<th class="capacity text-right pr-0" i18n="lightning.capacity">Capacity</th>
|
2022-07-16 10:44:05 +02:00
|
|
|
</tr>
|
|
|
|
</thead>
|
|
|
|
<tbody [attr.data-cy]="'pools-table'" *ngIf="(nodesPerAsObservable$ | async) as asList">
|
|
|
|
<tr *ngFor="let asEntry of asList">
|
2022-07-17 11:17:48 +02:00
|
|
|
<td class="rank text-left pl-0">{{ asEntry.rank }}</td>
|
2022-07-27 13:20:54 +02:00
|
|
|
<td class="name text-left text-truncate">
|
|
|
|
<a *ngIf="asEntry.ispId" [routerLink]="[('/lightning/nodes/isp/' + asEntry.ispId) | relativeUrl]">{{ asEntry.name }}</a>
|
|
|
|
<span *ngIf="!asEntry.ispId">{{ asEntry.name }}</span>
|
2022-07-17 22:57:29 +02:00
|
|
|
</td>
|
2022-07-17 11:17:48 +02:00
|
|
|
<td class="share text-right">{{ asEntry.share }}%</td>
|
|
|
|
<td class="nodes text-right">{{ asEntry.count }}</td>
|
|
|
|
<td class="capacity text-right pr-0"><app-amount [satoshis]="asEntry.capacity" [digitsInfo]="'1.2-2'" [noFiat]="true"></app-amount></td>
|
2022-07-16 10:44:05 +02:00
|
|
|
</tr>
|
|
|
|
</tbody>
|
|
|
|
</table>
|
|
|
|
</div>
|
|
|
|
|
2022-07-17 11:17:48 +02:00
|
|
|
</div>
|