-
- Top 100 nodes connectivity ranking
-
-
+
+
+
Liquidity Ranking
+
+
+
+
- |
- Alias |
- Channels |
- Liquidity |
- First seen |
- Last update |
- Location |
+ Alias |
+ Channels |
+ Capacity |
+ {{ currency$ | async }} |
+ First seen |
+ Last update |
+ Location |
-
-
-
- {{ i + 1 }}
+ |
+
+
+
|
-
- {{ node.alias }}
+ |
+ {{ node.channels ? (node.channels | number) : '~' }}
|
-
- {{ node.channels | number }}
- |
-
+ |
|
-
+ |
+
+ |
+
|
-
+ |
|
-
+ |
|
-
+
-
-
-
-
-
- |
-
-
- |
-
-
- |
-
-
- |
-
-
- |
-
-
- |
-
-
- |
-
-
-
+
+
+
+
+
-
\ No newline at end of file
+
+
diff --git a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.scss b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.scss
index 59151f6b2..a42599d69 100644
--- a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.scss
+++ b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.scss
@@ -1,91 +1,54 @@
.container-xl {
max-width: 1400px;
- padding-bottom: 100px;
- @media (min-width: 960px) {
- padding-left: 50px;
- padding-right: 50px;
- }
+}
+.container-xl.widget {
+ padding-right: 0px;
+ padding-left: 0px;
+ padding-bottom: 0px;
}
-.table td, .table th {
- padding: 0.5rem;
+tr, td, th {
+ border: 0px;
+ padding-top: 0.65rem !important;
+ padding-bottom: 0.7rem !important;
}
-.full .rank {
- width: 5%;
-}
-.widget .rank {
- @media (min-width: 960px) {
- width: 13%;
- }
- @media (max-width: 960px) {
- padding-left: 0px;
- padding-right: 0px;
- }
+.clear-link {
+ color: white;
}
-.full .alias {
- width: 20%;
+.pool {
+ width: 15%;
+ @media (max-width: 576px) {
+ width: 75%;
+ }
overflow: hidden;
text-overflow: ellipsis;
- max-width: 350px;
- @media (max-width: 960px) {
- width: 40%;
- max-width: 500px;
- }
+ white-space: nowrap;
+ max-width: 160px;
}
-.widget .alias {
- width: 60%;
- overflow: hidden;
+.pool-name {
+ display: inline-block;
+ vertical-align: text-top;
text-overflow: ellipsis;
- max-width: 350px;
- @media (max-width: 960px) {
- max-width: 175px;
- }
+ overflow: hidden;
+}
+.pool.widget {
+ width: 45%;
}
-.full .capacity {
+.liquidity {
width: 10%;
- @media (max-width: 960px) {
- width: 30%;
- }
-}
-.widget .capacity {
- width: 32%;
- @media (max-width: 960px) {
- padding-left: 0px;
- padding-right: 0px;
+ @media (max-width: 576px) {
+ width: 25%;
}
}
-.full .channels {
- width: 15%;
- padding-right: 50px;
- @media (max-width: 960px) {
- display: none;
+.geolocation {
+ @media (min-width: 768px) and (max-width: 991px) {
+ display: none !important;
}
-}
-
-.full .timestamp-first {
- width: 10%;
- @media (max-width: 960px) {
- display: none;
- }
-}
-
-.full .timestamp-update {
- width: 10%;
- @media (max-width: 960px) {
- display: none;
- }
-}
-
-.full .location {
- width: 15%;
- @media (max-width: 960px) {
- width: 30%;
- }
- @media (max-width: 600px) {
- display: none;
+ @media (max-width: 575px) {
+ display: none !important;
}
}
\ No newline at end of file
diff --git a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.ts b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.ts
index 2c88e4bae..ce6436ce3 100644
--- a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.ts
+++ b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.ts
@@ -1,7 +1,7 @@
import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';
import { map, Observable } from 'rxjs';
+import { StateService } from 'src/app/services/state.service';
import { INodesRanking, ITopNodesPerChannels } from '../../../interfaces/node-api.interface';
-import { isMobile } from '../../../shared/common.utils';
import { GeolocationData } from '../../../shared/components/geolocation/geolocation.component';
import { LightningApiService } from '../../lightning-api.service';
@@ -17,13 +17,17 @@ export class TopNodesPerChannels implements OnInit {
topNodesPerChannels$: Observable
;
skeletonRows: number[] = [];
+ currency$: Observable;
constructor(
private apiService: LightningApiService,
+ private stateService: StateService,
) {}
ngOnInit(): void {
- for (let i = 1; i <= (this.widget ? (isMobile() ? 8 : 7) : 100); ++i) {
+ this.currency$ = this.stateService.fiatCurrency$;
+
+ for (let i = 1; i <= (this.widget ? 6 : 100); ++i) {
this.skeletonRows.push(i);
}
@@ -44,7 +48,15 @@ export class TopNodesPerChannels implements OnInit {
} else {
this.topNodesPerChannels$ = this.nodes$.pipe(
map((ranking) => {
- return ranking.topByChannels.slice(0, isMobile() ? 8 : 7);
+ for (const i in ranking.topByChannels) {
+ ranking.topByChannels[i].geolocation = {
+ country: ranking.topByChannels[i].country?.en,
+ city: ranking.topByChannels[i].city?.en,
+ subdivision: ranking.topByChannels[i].subdivision?.en,
+ iso: ranking.topByChannels[i].iso_code,
+ };
+ }
+ return ranking.topByChannels.slice(0, 6);
})
);
}