From 1fc6e13bf87667a217c8f4c9bcf44a0bbb7480b4 Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Mon, 13 Feb 2023 18:01:15 +0900 Subject: [PATCH 001/130] Fix node socket parsing with LND --- backend/src/api/common.ts | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/backend/src/api/common.ts b/backend/src/api/common.ts index 954c1a17d..9560bc0bf 100644 --- a/backend/src/api/common.ts +++ b/backend/src/api/common.ts @@ -244,7 +244,11 @@ export class Common { static findSocketNetwork(addr: string): {network: string | null, url: string} { let network: string | null = null; - let url = addr.split('://')[1]; + let url: string = addr; + + if (config.LIGHTNING.BACKEND === 'cln') { + url = addr.split('://')[1]; + } if (!url) { return { @@ -261,7 +265,7 @@ export class Common { } } else if (addr.indexOf('i2p') !== -1) { network = 'i2p'; - } else if (addr.indexOf('ipv4') !== -1) { + } else if (addr.indexOf('ipv4') !== -1 || (config.LIGHTNING.BACKEND === 'lnd' && isIP(url.split(':')[0]) === 4)) { const ipv = isIP(url.split(':')[0]); if (ipv === 4) { network = 'ipv4'; @@ -271,7 +275,7 @@ export class Common { url: addr, }; } - } else if (addr.indexOf('ipv6') !== -1) { + } else if (addr.indexOf('ipv6') !== -1 || (config.LIGHTNING.BACKEND === 'lnd' && url.indexOf(']:'))) { url = url.split('[')[1].split(']')[0]; const ipv = isIP(url); if (ipv === 6) { From 59f08247ef4b9c8ed317f5a1ac85a95c0b1db3c1 Mon Sep 17 00:00:00 2001 From: Mononaut Date: Fri, 17 Feb 2023 18:58:05 -0600 Subject: [PATCH 002/130] Reduce data sent to mempool block 7 subscription --- backend/src/api/mempool-blocks.ts | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/backend/src/api/mempool-blocks.ts b/backend/src/api/mempool-blocks.ts index 0df125d55..3c2feb0e2 100644 --- a/backend/src/api/mempool-blocks.ts +++ b/backend/src/api/mempool-blocks.ts @@ -97,14 +97,14 @@ class MempoolBlocks { blockSize += tx.size; transactions.push(tx); } else { - mempoolBlocks.push(this.dataToMempoolBlocks(transactions, blockSize, blockWeight, mempoolBlocks.length)); + mempoolBlocks.push(this.dataToMempoolBlocks(transactions, mempoolBlocks.length)); blockWeight = tx.weight; blockSize = tx.size; transactions = [tx]; } }); if (transactions.length) { - mempoolBlocks.push(this.dataToMempoolBlocks(transactions, blockSize, blockWeight, mempoolBlocks.length)); + mempoolBlocks.push(this.dataToMempoolBlocks(transactions, mempoolBlocks.length)); } return mempoolBlocks; @@ -281,7 +281,7 @@ class MempoolBlocks { const mempoolBlocks = blocks.map((transactions, blockIndex) => { return this.dataToMempoolBlocks(transactions.map(tx => { return mempool[tx.txid] || null; - }).filter(tx => !!tx), undefined, undefined, blockIndex); + }).filter(tx => !!tx), blockIndex); }); if (saveResults) { @@ -293,18 +293,17 @@ class MempoolBlocks { return mempoolBlocks; } - private dataToMempoolBlocks(transactions: TransactionExtended[], - blockSize: number | undefined, blockWeight: number | undefined, blocksIndex: number): MempoolBlockWithTransactions { - let totalSize = blockSize || 0; - let totalWeight = blockWeight || 0; - if (blockSize === undefined && blockWeight === undefined) { - totalSize = 0; - totalWeight = 0; - transactions.forEach(tx => { - totalSize += tx.size; - totalWeight += tx.weight; - }); - } + private dataToMempoolBlocks(transactions: TransactionExtended[], blocksIndex: number): MempoolBlockWithTransactions { + let totalSize = 0; + let totalWeight = 0; + const fitTransactions: TransactionExtended[] = []; + transactions.forEach(tx => { + totalSize += tx.size; + totalWeight += tx.weight; + if ((totalWeight + tx.weight) <= config.MEMPOOL.BLOCK_WEIGHT_UNITS * 1.2) { + fitTransactions.push(tx); + } + }); let rangeLength = 4; if (blocksIndex === 0) { rangeLength = 8; @@ -322,7 +321,7 @@ class MempoolBlocks { medianFee: Common.percentile(transactions.map((tx) => tx.effectiveFeePerVsize), config.MEMPOOL.RECOMMENDED_FEE_PERCENTILE), feeRange: Common.getFeesInRange(transactions, rangeLength), transactionIds: transactions.map((tx) => tx.txid), - transactions: transactions.map((tx) => Common.stripTransaction(tx)), + transactions: fitTransactions.map((tx) => Common.stripTransaction(tx)), }; } } From 51ac04f20716f7bd2269125941d33ddcfe892674 Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Thu, 23 Feb 2023 18:19:47 +0900 Subject: [PATCH 003/130] Fix design for node liquidity ranking --- .../tx-bowtie-graph.component.ts | 10 +- .../lightning-dashboard.component.html | 2 +- .../top-nodes-per-capacity.component.html | 91 ++++++------- .../top-nodes-per-capacity.component.scss | 121 ++++++++---------- .../top-nodes-per-capacity.component.ts | 20 ++- .../top-nodes-per-channels.component.ts | 4 +- 6 files changed, 110 insertions(+), 138 deletions(-) diff --git a/frontend/src/app/components/tx-bowtie-graph/tx-bowtie-graph.component.ts b/frontend/src/app/components/tx-bowtie-graph/tx-bowtie-graph.component.ts index cd1fc6855..49d97dd40 100644 --- a/frontend/src/app/components/tx-bowtie-graph/tx-bowtie-graph.component.ts +++ b/frontend/src/app/components/tx-bowtie-graph/tx-bowtie-graph.component.ts @@ -196,8 +196,8 @@ export class TxBowtieGraphComponent implements OnInit, OnChanges { this.outputs = this.initLines('out', voutWithFee, totalValue, this.maxStrands); this.middle = { - path: `M ${(this.width / 2) - this.midWidth} ${(this.height / 2) + 0.25} L ${(this.width / 2) + this.midWidth} ${(this.height / 2) + 0.25}`, - style: `stroke-width: ${this.combinedWeight + 0.5}; stroke: ${this.gradient[1]}` + path: `M ${(this.width / 2) - this.midWidth} ${(this.height / 2) + 0.5} L ${(this.width / 2) + this.midWidth} ${(this.height / 2) + 0.5}`, + style: `stroke-width: ${this.combinedWeight + 1}; stroke: ${this.gradient[1]}` }; this.hasLine = this.inputs.reduce((line, put) => line || !put.zeroValue, false) @@ -254,7 +254,7 @@ export class TxBowtieGraphComponent implements OnInit, OnChanges { const lineParams = weights.map((w, i) => { return { weight: w, - thickness: xputs[i].value === 0 ? this.zeroValueThickness : Math.min(this.combinedWeight + 0.5, Math.max(this.minWeight - 1, w) + 1), + thickness: xputs[i].value === 0 ? this.zeroValueThickness : Math.max(this.minWeight - 1, w) + 1, offset: 0, innerY: 0, outerY: 0, @@ -266,7 +266,7 @@ export class TxBowtieGraphComponent implements OnInit, OnChanges { // bounds of the middle segment const innerTop = (this.height / 2) - (this.combinedWeight / 2); - const innerBottom = innerTop + this.combinedWeight + 0.5; + const innerBottom = innerTop + this.combinedWeight; // tracks the visual bottom of the endpoints of the previous line let lastOuter = 0; let lastInner = innerTop; @@ -291,7 +291,7 @@ export class TxBowtieGraphComponent implements OnInit, OnChanges { // set the vertical position of the (center of the) outer side of the line line.outerY = lastOuter + (line.thickness / 2); - line.innerY = Math.min(innerBottom - (line.thickness / 2), Math.max(innerTop + (line.thickness / 2), lastInner + (line.weight / 2))); + line.innerY = Math.min(innerBottom + (line.thickness / 2), Math.max(innerTop + (line.thickness / 2), lastInner + (line.weight / 2))); // special case to center single input/outputs if (xputs.length === 1) { diff --git a/frontend/src/app/lightning/lightning-dashboard/lightning-dashboard.component.html b/frontend/src/app/lightning/lightning-dashboard/lightning-dashboard.component.html index c12565d6d..c00a4be58 100644 --- a/frontend/src/app/lightning/lightning-dashboard/lightning-dashboard.component.html +++ b/frontend/src/app/lightning/lightning-dashboard/lightning-dashboard.component.html @@ -55,7 +55,7 @@ -
+
diff --git a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss index 59151f6b2..d177a8b01 100644 --- a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss +++ b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss @@ -1,91 +1,70 @@ +.spinner-border { + height: 25px; + width: 25px; + margin-top: 13px; +} + .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; +} +.container-xl.legacy { + max-width: 1140px; } -.table td, .table th { - padding: 0.5rem; +.container { + max-width: 100%; } -.full .rank { - width: 5%; -} -.widget .rank { - @media (min-width: 960px) { - width: 13%; - } - @media (max-width: 960px) { - padding-left: 0px; - padding-right: 0px; - } +tr, td, th { + border: 0px; + padding-top: 0.65rem !important; + padding-bottom: 0.7rem !important; } -.full .alias { - width: 20%; +.clear-link { + color: white; +} + +.disabled { + pointer-events: none; + opacity: 0.5; +} + +.progress { + background-color: #2d3348; +} + +.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; } -.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 { +.fiat { width: 15%; - padding-right: 50px; - @media (max-width: 960px) { - display: none; - } + font-family: monospace; + font-size: 14px; } - -.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; - } -} \ No newline at end of file diff --git a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts index 766e7f090..489ba9b21 100644 --- a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts +++ b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts @@ -1,5 +1,6 @@ -import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core'; -import { map, Observable } from 'rxjs'; +import { ChangeDetectionStrategy, Component, Input, OnDestroy, OnInit } from '@angular/core'; +import { map, Observable, Subscription } from 'rxjs'; +import { StateService } from 'src/app/services/state.service'; import { INodesRanking, ITopNodesPerCapacity } from '../../../interfaces/node-api.interface'; import { SeoService } from '../../../services/seo.service'; import { isMobile } from '../../../shared/common.utils'; @@ -12,24 +13,31 @@ import { LightningApiService } from '../../lightning-api.service'; styleUrls: ['./top-nodes-per-capacity.component.scss'], changeDetection: ChangeDetectionStrategy.OnPush, }) -export class TopNodesPerCapacity implements OnInit { +export class TopNodesPerCapacity implements OnInit, OnDestroy { @Input() nodes$: Observable; @Input() widget: boolean = false; topNodesPerCapacity$: Observable; skeletonRows: number[] = []; + currency$: Observable; constructor( private apiService: LightningApiService, - private seoService: SeoService + private seoService: SeoService, + private stateService: StateService, ) {} + ngOnDestroy(): void { + } + ngOnInit(): void { + this.currency$ = this.stateService.fiatCurrency$; + if (!this.widget) { this.seoService.setTitle($localize`:@@2d9883d230a47fbbb2ec969e32a186597ea27405:Liquidity Ranking`); } - for (let i = 1; i <= (this.widget ? (isMobile() ? 8 : 7) : 100); ++i) { + for (let i = 1; i <= (this.widget ? 6 : 100); ++i) { this.skeletonRows.push(i); } @@ -50,7 +58,7 @@ export class TopNodesPerCapacity implements OnInit { } else { this.topNodesPerCapacity$ = this.nodes$.pipe( map((ranking) => { - return ranking.topByCapacity.slice(0, isMobile() ? 8 : 7); + return ranking.topByCapacity.slice(0, 6); }) ); } 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..ac67787e6 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 @@ -23,7 +23,7 @@ export class TopNodesPerChannels implements OnInit { ) {} ngOnInit(): void { - for (let i = 1; i <= (this.widget ? (isMobile() ? 8 : 7) : 100); ++i) { + for (let i = 1; i <= (this.widget ? (isMobile() ? 8 : 6) : 100); ++i) { this.skeletonRows.push(i); } @@ -44,7 +44,7 @@ export class TopNodesPerChannels implements OnInit { } else { this.topNodesPerChannels$ = this.nodes$.pipe( map((ranking) => { - return ranking.topByChannels.slice(0, isMobile() ? 8 : 7); + return ranking.topByChannels.slice(0, isMobile() ? 8 : 6); }) ); } From 50c3f834840239ed3520e2fafb43592559796e12 Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Thu, 23 Feb 2023 18:36:13 +0900 Subject: [PATCH 004/130] Fix design for node channels ranking --- .../lightning-dashboard.component.html | 2 +- .../top-nodes-per-capacity.component.scss | 22 ----- .../top-nodes-per-capacity.component.ts | 10 +- .../top-nodes-per-channels.component.html | 89 +++++++---------- .../top-nodes-per-channels.component.scss | 99 ++++++------------- .../top-nodes-per-channels.component.ts | 5 + 6 files changed, 74 insertions(+), 153 deletions(-) diff --git a/frontend/src/app/lightning/lightning-dashboard/lightning-dashboard.component.html b/frontend/src/app/lightning/lightning-dashboard/lightning-dashboard.component.html index c00a4be58..b73d21bcd 100644 --- a/frontend/src/app/lightning/lightning-dashboard/lightning-dashboard.component.html +++ b/frontend/src/app/lightning/lightning-dashboard/lightning-dashboard.component.html @@ -69,7 +69,7 @@
-
+
diff --git a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss index d177a8b01..b7ed8cf04 100644 --- a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss +++ b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss @@ -1,9 +1,3 @@ -.spinner-border { - height: 25px; - width: 25px; - margin-top: 13px; -} - .container-xl { max-width: 1400px; } @@ -12,13 +6,6 @@ padding-left: 0px; padding-bottom: 0px; } -.container-xl.legacy { - max-width: 1140px; -} - -.container { - max-width: 100%; -} tr, td, th { border: 0px; @@ -30,15 +17,6 @@ tr, td, th { color: white; } -.disabled { - pointer-events: none; - opacity: 0.5; -} - -.progress { - background-color: #2d3348; -} - .pool { width: 15%; @media (max-width: 576px) { diff --git a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts index 489ba9b21..4925256c0 100644 --- a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts +++ b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts @@ -1,9 +1,8 @@ -import { ChangeDetectionStrategy, Component, Input, OnDestroy, OnInit } from '@angular/core'; -import { map, Observable, Subscription } from 'rxjs'; +import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core'; +import { map, Observable } from 'rxjs'; import { StateService } from 'src/app/services/state.service'; import { INodesRanking, ITopNodesPerCapacity } from '../../../interfaces/node-api.interface'; import { SeoService } from '../../../services/seo.service'; -import { isMobile } from '../../../shared/common.utils'; import { GeolocationData } from '../../../shared/components/geolocation/geolocation.component'; import { LightningApiService } from '../../lightning-api.service'; @@ -13,7 +12,7 @@ import { LightningApiService } from '../../lightning-api.service'; styleUrls: ['./top-nodes-per-capacity.component.scss'], changeDetection: ChangeDetectionStrategy.OnPush, }) -export class TopNodesPerCapacity implements OnInit, OnDestroy { +export class TopNodesPerCapacity implements OnInit { @Input() nodes$: Observable; @Input() widget: boolean = false; @@ -27,9 +26,6 @@ export class TopNodesPerCapacity implements OnInit, OnDestroy { private stateService: StateService, ) {} - ngOnDestroy(): void { - } - ngOnInit(): void { this.currency$ = this.stateService.fiatCurrency$; diff --git a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html index 7d02e510f..ccb6a48fe 100644 --- a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html +++ b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html @@ -1,71 +1,56 @@ -
-

- Top 100 nodes connectivity ranking -

-
+ +
+

Liquidity Ranking

+ +
+ +
- - - - - - + + + + + + - - - + + - - - - + - - - + - - - - - - - - - - - - -
AliasChannelsLiquidityFirst seenLast updateLocationChannelsCapacity{{ currency$ | async }}First seenLast updateLocation
- {{ i + 1 }} +
+ - {{ node.alias }} - + {{ 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..b7ed8cf04 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,48 @@ .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; } -.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 { +.fiat { width: 15%; - padding-right: 50px; - @media (max-width: 960px) { - display: none; - } + font-family: monospace; + font-size: 14px; } - -.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; - } -} \ 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 ac67787e6..f1740e5bc 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,5 +1,6 @@ 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'; @@ -17,12 +18,16 @@ export class TopNodesPerChannels implements OnInit { topNodesPerChannels$: Observable; skeletonRows: number[] = []; + currency$: Observable; constructor( private apiService: LightningApiService, + private stateService: StateService, ) {} ngOnInit(): void { + this.currency$ = this.stateService.fiatCurrency$; + for (let i = 1; i <= (this.widget ? (isMobile() ? 8 : 6) : 100); ++i) { this.skeletonRows.push(i); } From 7e913e4d34f417fb16248abad85cea4a30c160ee Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Thu, 23 Feb 2023 18:57:55 +0900 Subject: [PATCH 005/130] Show geolocation in node channels ranking widget --- backend/src/api/explorer/nodes.api.ts | 20 +++++++++++++++---- .../top-nodes-per-channels.component.html | 6 +++--- .../top-nodes-per-channels.component.scss | 3 +++ .../top-nodes-per-channels.component.ts | 13 ++++++++++-- 4 files changed, 33 insertions(+), 9 deletions(-) diff --git a/backend/src/api/explorer/nodes.api.ts b/backend/src/api/explorer/nodes.api.ts index b3f83faa6..6d1d8aa0a 100644 --- a/backend/src/api/explorer/nodes.api.ts +++ b/backend/src/api/explorer/nodes.api.ts @@ -228,7 +228,7 @@ class NodesApi { nodes.capacity FROM nodes ORDER BY capacity DESC - LIMIT 100 + LIMIT 6 `; [rows] = await DB.query(query); @@ -269,14 +269,26 @@ class NodesApi { let query: string; if (full === false) { query = ` - SELECT nodes.public_key as publicKey, IF(nodes.alias = '', SUBSTRING(nodes.public_key, 1, 20), alias) as alias, - nodes.channels + SELECT + nodes.public_key as publicKey, + IF(nodes.alias = '', SUBSTRING(nodes.public_key, 1, 20), alias) as alias, + nodes.channels, + geo_names_city.names as city, geo_names_country.names as country, + geo_names_iso.names as iso_code, geo_names_subdivision.names as subdivision FROM nodes + LEFT JOIN geo_names geo_names_country ON geo_names_country.id = nodes.country_id AND geo_names_country.type = 'country' + LEFT JOIN geo_names geo_names_city ON geo_names_city.id = nodes.city_id AND geo_names_city.type = 'city' + LEFT JOIN geo_names geo_names_iso ON geo_names_iso.id = nodes.country_id AND geo_names_iso.type = 'country_iso_code' + LEFT JOIN geo_names geo_names_subdivision on geo_names_subdivision.id = nodes.subdivision_id AND geo_names_subdivision.type = 'division' ORDER BY channels DESC - LIMIT 100; + LIMIT 6; `; [rows] = await DB.query(query); + for (let i = 0; i < rows.length; ++i) { + rows[i].country = JSON.parse(rows[i].country); + rows[i].city = JSON.parse(rows[i].city); + } } else { query = ` SELECT nodes.public_key AS publicKey, IF(nodes.alias = '', SUBSTRING(nodes.public_key, 1, 20), alias) as alias, diff --git a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html index ccb6a48fe..538cae1c2 100644 --- a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html +++ b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html @@ -8,13 +8,13 @@
- + - + @@ -40,7 +40,7 @@ - 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 b7ed8cf04..ffde7c479 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 @@ -33,6 +33,9 @@ tr, td, th { text-overflow: ellipsis; overflow: hidden; } +.pool.widget { + width: 45%; +} .liquidity { width: 10%; 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 f1740e5bc..79a6eb28f 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 @@ -28,7 +28,7 @@ export class TopNodesPerChannels implements OnInit { ngOnInit(): void { this.currency$ = this.stateService.fiatCurrency$; - for (let i = 1; i <= (this.widget ? (isMobile() ? 8 : 6) : 100); ++i) { + for (let i = 1; i <= (this.widget ? 6 : 100); ++i) { this.skeletonRows.push(i); } @@ -49,7 +49,16 @@ export class TopNodesPerChannels implements OnInit { } else { this.topNodesPerChannels$ = this.nodes$.pipe( map((ranking) => { - return ranking.topByChannels.slice(0, isMobile() ? 8 : 6); + 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, + }; + console.log(ranking.topByChannels[i].geolocation); + } + return ranking.topByChannels; }) ); } From a26dc977ba0783bc6beb492741c2f1a007531e4e Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Fri, 24 Feb 2023 14:20:16 +0900 Subject: [PATCH 006/130] Hide new columns when screen width is too small --- .../top-nodes-per-capacity.component.html | 4 ++-- .../top-nodes-per-capacity.component.scss | 3 +++ .../top-nodes-per-channels.component.html | 6 +++--- .../top-nodes-per-channels.component.scss | 10 +++++----- 4 files changed, 13 insertions(+), 10 deletions(-) diff --git a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html index a9e30705e..3efbc8594 100644 --- a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html +++ b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html @@ -10,7 +10,7 @@ - + @@ -28,7 +28,7 @@ - - + @@ -26,7 +26,7 @@ - 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 ffde7c479..eba9afee9 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 @@ -44,8 +44,8 @@ tr, td, th { } } -.fiat { - width: 15%; - font-family: monospace; - font-size: 14px; -} +.geolocation { + @media (max-width: 991px) { + display: none !important; + } +} \ No newline at end of file From 7cee6df369533475c5ace2f043b25082f07115af Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Fri, 24 Feb 2023 17:47:33 +0900 Subject: [PATCH 007/130] Remove console.log --- .../top-nodes-per-channels/top-nodes-per-channels.component.ts | 1 - 1 file changed, 1 deletion(-) 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 79a6eb28f..cd5796664 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 @@ -56,7 +56,6 @@ export class TopNodesPerChannels implements OnInit { subdivision: ranking.topByChannels[i].subdivision?.en, iso: ranking.topByChannels[i].iso_code, }; - console.log(ranking.topByChannels[i].geolocation); } return ranking.topByChannels; }) From 98e709b739ab95bad3f78358549393f3c1441a85 Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Fri, 24 Feb 2023 17:49:06 +0900 Subject: [PATCH 008/130] Remove monospace from fiat amount --- .../top-nodes-per-capacity.component.scss | 2 -- .../top-nodes-per-channels/top-nodes-per-channels.component.ts | 1 - 2 files changed, 3 deletions(-) diff --git a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss index 452122d8e..787f64f30 100644 --- a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss +++ b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss @@ -43,8 +43,6 @@ tr, td, th { .fiat { width: 15%; - font-family: monospace; - font-size: 14px; @media (max-width: 991px) { display: none !important; } 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 cd5796664..62f461c6c 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 @@ -2,7 +2,6 @@ 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'; From 92862939dace11804d366e48607b2ede15c49a29 Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Fri, 24 Feb 2023 20:25:28 +0900 Subject: [PATCH 009/130] Make sure we don't show more than 6 rows in channel ranking widget --- .../top-nodes-per-channels/top-nodes-per-channels.component.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 62f461c6c..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 @@ -56,7 +56,7 @@ export class TopNodesPerChannels implements OnInit { iso: ranking.topByChannels[i].iso_code, }; } - return ranking.topByChannels; + return ranking.topByChannels.slice(0, 6); }) ); } From 80e0ef8970d39617008c45487dfb91f099cf02fd Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Sat, 25 Feb 2023 13:20:49 +0900 Subject: [PATCH 010/130] Improve responsiveness on single column layout --- .../top-nodes-per-capacity.component.scss | 9 ++++++--- .../top-nodes-per-channels.component.scss | 5 ++++- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss index 787f64f30..3547c447f 100644 --- a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss +++ b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss @@ -19,7 +19,7 @@ tr, td, th { .pool { width: 15%; - @media (max-width: 576px) { + @media (max-width: 575px) { width: 75%; } overflow: hidden; @@ -36,14 +36,17 @@ tr, td, th { .liquidity { width: 10%; - @media (max-width: 576px) { + @media (max-width: 575px) { width: 25%; } } .fiat { width: 15%; - @media (max-width: 991px) { + @media (min-width: 768px) and (max-width: 991px) { + display: none !important; + } + @media (max-width: 575px) { display: none !important; } } 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 eba9afee9..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 @@ -45,7 +45,10 @@ tr, td, th { } .geolocation { - @media (max-width: 991px) { + @media (min-width: 768px) and (max-width: 991px) { + display: none !important; + } + @media (max-width: 575px) { display: none !important; } } \ No newline at end of file From 6d1e6a92ad5b120ea0c41a8709fec66872cf20ac Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Mon, 13 Feb 2023 14:23:32 +0900 Subject: [PATCH 011/130] [LND] Nullify zeroed timestamps --- backend/src/api/common.ts | 5 ++++- backend/src/api/database-migration.ts | 7 ++++++- backend/src/api/explorer/channels.api.ts | 11 +++++++++++ backend/src/api/explorer/nodes.api.ts | 5 +++++ backend/src/api/lightning/lightning-api.interface.ts | 6 +++--- backend/src/tasks/lightning/network-sync.service.ts | 2 +- 6 files changed, 30 insertions(+), 6 deletions(-) diff --git a/backend/src/api/common.ts b/backend/src/api/common.ts index 954c1a17d..77597eb0c 100644 --- a/backend/src/api/common.ts +++ b/backend/src/api/common.ts @@ -237,7 +237,10 @@ export class Common { ].join('x'); } - static utcDateToMysql(date?: number): string { + static utcDateToMysql(date?: number | null): string | null { + if (date === null) { + return null; + } const d = new Date((date || 0) * 1000); return d.toISOString().split('T')[0] + ' ' + d.toTimeString().split(' ')[0]; } diff --git a/backend/src/api/database-migration.ts b/backend/src/api/database-migration.ts index 3140ea358..401fb0b2c 100644 --- a/backend/src/api/database-migration.ts +++ b/backend/src/api/database-migration.ts @@ -7,7 +7,7 @@ import cpfpRepository from '../repositories/CpfpRepository'; import { RowDataPacket } from 'mysql2'; class DatabaseMigration { - private static currentVersion = 56; + private static currentVersion = 57; private queryTimeout = 3600_000; private statisticsAddedIndexed = false; private uniqueLogs: string[] = []; @@ -500,6 +500,11 @@ class DatabaseMigration { this.uniqueLog(logger.notice, '`pools` table has been truncated`'); await this.updateToSchemaVersion(56); } + + if (databaseSchemaVersion < 57) { + await this.$executeQuery(`ALTER TABLE nodes MODIFY updated_at datetime NULL`); + await this.updateToSchemaVersion(57); + } } /** diff --git a/backend/src/api/explorer/channels.api.ts b/backend/src/api/explorer/channels.api.ts index 8314b3345..00d146770 100644 --- a/backend/src/api/explorer/channels.api.ts +++ b/backend/src/api/explorer/channels.api.ts @@ -559,6 +559,17 @@ class ChannelsApi { const policy1: Partial = channel.node1_policy || {}; const policy2: Partial = channel.node2_policy || {}; + // https://github.com/mempool/mempool/issues/3006 + if ((channel.last_update ?? 0) < 1514736061) { // January 1st 2018 + channel.last_update = null; + } + if ((policy1.last_update ?? 0) < 1514736061) { // January 1st 2018 + policy1.last_update = null; + } + if ((policy2.last_update ?? 0) < 1514736061) { // January 1st 2018 + policy2.last_update = null; + } + const query = `INSERT INTO channels ( id, diff --git a/backend/src/api/explorer/nodes.api.ts b/backend/src/api/explorer/nodes.api.ts index b3f83faa6..9e57e7802 100644 --- a/backend/src/api/explorer/nodes.api.ts +++ b/backend/src/api/explorer/nodes.api.ts @@ -630,6 +630,11 @@ class NodesApi { */ public async $saveNode(node: ILightningApi.Node): Promise { try { + // https://github.com/mempool/mempool/issues/3006 + if ((node.last_update ?? 0) < 1514736061) { // January 1st 2018 + node.last_update = null; + } + const sockets = (node.addresses?.map(a => a.addr).join(',')) ?? ''; const query = `INSERT INTO nodes( public_key, diff --git a/backend/src/api/lightning/lightning-api.interface.ts b/backend/src/api/lightning/lightning-api.interface.ts index 453e2fffc..cd5cb973d 100644 --- a/backend/src/api/lightning/lightning-api.interface.ts +++ b/backend/src/api/lightning/lightning-api.interface.ts @@ -21,7 +21,7 @@ export namespace ILightningApi { export interface Channel { channel_id: string; chan_point: string; - last_update: number; + last_update: number | null; node1_pub: string; node2_pub: string; capacity: string; @@ -36,11 +36,11 @@ export namespace ILightningApi { fee_rate_milli_msat: string; disabled: boolean; max_htlc_msat: string; - last_update: number; + last_update: number | null; } export interface Node { - last_update: number; + last_update: number | null; pub_key: string; alias: string; addresses: { diff --git a/backend/src/tasks/lightning/network-sync.service.ts b/backend/src/tasks/lightning/network-sync.service.ts index fdef7ecae..3e5ae1366 100644 --- a/backend/src/tasks/lightning/network-sync.service.ts +++ b/backend/src/tasks/lightning/network-sync.service.ts @@ -72,7 +72,7 @@ class NetworkSyncService { const graphNodesPubkeys: string[] = []; for (const node of nodes) { const latestUpdated = await channelsApi.$getLatestChannelUpdateForNode(node.pub_key); - node.last_update = Math.max(node.last_update, latestUpdated); + node.last_update = Math.max(node.last_update ?? 0, latestUpdated); await nodesApi.$saveNode(node); graphNodesPubkeys.push(node.pub_key); From b7425dc339f60e66fd3e71a8bbc240d0178ece95 Mon Sep 17 00:00:00 2001 From: hunicus <93150691+hunicus@users.noreply.github.com> Date: Fri, 24 Feb 2023 02:24:51 -0500 Subject: [PATCH 012/130] Add anchor links for about page sections --- .../app/components/about/about.component.html | 16 ++++++++-------- .../app/components/about/about.component.scss | 2 ++ .../src/app/components/about/about.component.ts | 14 +++++++++++++- 3 files changed, 23 insertions(+), 9 deletions(-) diff --git a/frontend/src/app/components/about/about.component.html b/frontend/src/app/components/about/about.component.html index 876bec028..a79797f9c 100644 --- a/frontend/src/app/components/about/about.component.html +++ b/frontend/src/app/components/about/about.component.html @@ -25,7 +25,7 @@ -
+

Enterprise Sponsors 🚀

-
+

Community Sponsors ❀

@@ -187,7 +187,7 @@
-
+ -
+

Community Alliances

-
+

Project Translators

@@ -311,7 +311,7 @@ -
+

Project Contributors

@@ -323,7 +323,7 @@
-
+

Project Members

@@ -336,7 +336,7 @@
-
+

Project Maintainers

diff --git a/frontend/src/app/components/about/about.component.scss b/frontend/src/app/components/about/about.component.scss index 8390ce0ba..ae60e052e 100644 --- a/frontend/src/app/components/about/about.component.scss +++ b/frontend/src/app/components/about/about.component.scss @@ -46,6 +46,7 @@ .maintainers { margin-top: 68px; margin-bottom: 68px; + scroll-margin: 30px; } .maintainers { @@ -117,6 +118,7 @@ .project-translators, .community-integrations-sponsor, .maintainers { + scroll-margin: 30px; .wrapper { display: inline-block; a { diff --git a/frontend/src/app/components/about/about.component.ts b/frontend/src/app/components/about/about.component.ts index d26efb411..33c6ac5a2 100644 --- a/frontend/src/app/components/about/about.component.ts +++ b/frontend/src/app/components/about/about.component.ts @@ -5,7 +5,7 @@ import { StateService } from '../../services/state.service'; import { Observable } from 'rxjs'; import { ApiService } from '../../services/api.service'; import { IBackendInfo } from '../../interfaces/websocket.interface'; -import { Router } from '@angular/router'; +import { Router, ActivatedRoute } from '@angular/router'; import { map } from 'rxjs/operators'; import { ITranslators } from '../../interfaces/node-api.interface'; @@ -31,6 +31,7 @@ export class AboutComponent implements OnInit { public stateService: StateService, private apiService: ApiService, private router: Router, + private route: ActivatedRoute, @Inject(LOCALE_ID) public locale: string, ) { } @@ -60,6 +61,17 @@ export class AboutComponent implements OnInit { }) ); } + + ngAfterViewInit() { + const that = this; + setTimeout( () => { + if( this.route.snapshot.fragment ) { + if (document.getElementById( this.route.snapshot.fragment )) { + document.getElementById( this.route.snapshot.fragment ).scrollIntoView({behavior: "smooth", block: "center"}); + } + } + }, 1 ); + } sponsor(): void { if (this.officialMempoolSpace && this.stateService.env.BASE_MODULE === 'mempool') { From 32733a30230ef8bea9c8d6afc97883f157d690a0 Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Sun, 26 Feb 2023 11:30:12 +0900 Subject: [PATCH 013/130] When we re-index blocks due to mining pools change, wipe the nodejs backend cache --- backend/src/api/disk-cache.ts | 1 + backend/src/api/pools-parser.ts | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/backend/src/api/disk-cache.ts b/backend/src/api/disk-cache.ts index a75fd43cc..e466982ad 100644 --- a/backend/src/api/disk-cache.ts +++ b/backend/src/api/disk-cache.ts @@ -62,6 +62,7 @@ class DiskCache { } wipeCache() { + logger.notice(`Wipping nodejs backend cache/cache*.json files`); fs.unlinkSync(DiskCache.FILE_NAME); for (let i = 1; i < DiskCache.CHUNK_FILES; i++) { fs.unlinkSync(DiskCache.FILE_NAMES.replace('{number}', i.toString())); diff --git a/backend/src/api/pools-parser.ts b/backend/src/api/pools-parser.ts index 4e67ce98b..d1705b829 100644 --- a/backend/src/api/pools-parser.ts +++ b/backend/src/api/pools-parser.ts @@ -3,6 +3,7 @@ import logger from '../logger'; import config from '../config'; import PoolsRepository from '../repositories/PoolsRepository'; import { PoolTag } from '../mempool.interfaces'; +import diskCache from './disk-cache'; class PoolsParser { miningPools: any[] = []; @@ -139,6 +140,10 @@ class PoolsParser { WHERE pool_id = ?`, [pool.id] ); + + // We also need to wipe the backend cache to make sure we don't serve blocks with + // the wrong mining pool (usually happen with unknown blocks) + diskCache.wipeCache(); } private async $deleteUnknownBlocks(): Promise { @@ -149,6 +154,10 @@ class PoolsParser { WHERE pool_id = ? AND height >= 130635`, [unknownPool[0].id] ); + + // We also need to wipe the backend cache to make sure we don't serve blocks with + // the wrong mining pool (usually happen with unknown blocks) + diskCache.wipeCache(); } } From 9a4a5ad94e0f1eed983de118a1f9ced4719dc5f5 Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Sun, 26 Feb 2023 11:37:57 +0900 Subject: [PATCH 014/130] Silence ENOENT exception when we wipe the nodejs backend cache --- backend/src/api/disk-cache.ts | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/backend/src/api/disk-cache.ts b/backend/src/api/disk-cache.ts index e466982ad..c6af20e29 100644 --- a/backend/src/api/disk-cache.ts +++ b/backend/src/api/disk-cache.ts @@ -63,9 +63,23 @@ class DiskCache { wipeCache() { logger.notice(`Wipping nodejs backend cache/cache*.json files`); - fs.unlinkSync(DiskCache.FILE_NAME); + try { + fs.unlinkSync(DiskCache.FILE_NAME); + } catch (e: any) { + if (e?.code !== 'ENOENT') { + logger.err(`Cannot wipe cache file ${DiskCache.FILE_NAME}. Exception ${JSON.stringify(e)}`); + } + } + for (let i = 1; i < DiskCache.CHUNK_FILES; i++) { - fs.unlinkSync(DiskCache.FILE_NAMES.replace('{number}', i.toString())); + const filename = DiskCache.FILE_NAMES.replace('{number}', i.toString()); + try { + fs.unlinkSync(filename); + } catch (e: any) { + if (e?.code !== 'ENOENT') { + logger.err(`Cannot wipe cache file ${filename}. Exception ${JSON.stringify(e)}`); + } + } } } From 0ce4c5fa4d8bd55280d97262668f9ea8e3940d6e Mon Sep 17 00:00:00 2001 From: Felipe Knorr Kuhn <100320+knorrium@users.noreply.github.com> Date: Sun, 26 Feb 2023 08:23:44 -0800 Subject: [PATCH 015/130] Run Cypress tests on master after merging --- .github/workflows/cypress.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/cypress.yml b/.github/workflows/cypress.yml index e8f6d1df1..2cff7b73a 100644 --- a/.github/workflows/cypress.yml +++ b/.github/workflows/cypress.yml @@ -3,6 +3,9 @@ name: Cypress Tests on: pull_request: types: [opened, review_requested, synchronize] + push: + branches: + - master jobs: cypress: if: "!contains(github.event.pull_request.labels.*.name, 'ops') && !contains(github.head_ref, 'ops/')" From 4cc0f9b5c74d15bf09514aec6d0c951235b83b3d Mon Sep 17 00:00:00 2001 From: Felipe Knorr Kuhn <100320+knorrium@users.noreply.github.com> Date: Sun, 26 Feb 2023 09:16:33 -0800 Subject: [PATCH 016/130] Reorder triggers --- .github/workflows/cypress.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/cypress.yml b/.github/workflows/cypress.yml index 2cff7b73a..8c720917e 100644 --- a/.github/workflows/cypress.yml +++ b/.github/workflows/cypress.yml @@ -1,11 +1,11 @@ name: Cypress Tests on: + push: + branches: [master] pull_request: types: [opened, review_requested, synchronize] - push: - branches: - - master + jobs: cypress: if: "!contains(github.event.pull_request.labels.*.name, 'ops') && !contains(github.head_ref, 'ops/')" From 5792dee553f03c632fc5888a35490a27e772b281 Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Mon, 27 Feb 2023 10:47:04 +0900 Subject: [PATCH 017/130] Use bitcoinApiFactory when we don't need verbose blocks or confirmation number --- backend/src/api/blocks.ts | 14 ++++++-------- backend/src/api/chain-tips.ts | 4 ++-- backend/src/api/mining/mining.ts | 14 ++++++++------ 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/backend/src/api/blocks.ts b/backend/src/api/blocks.ts index 204419496..068184949 100644 --- a/backend/src/api/blocks.ts +++ b/backend/src/api/blocks.ts @@ -479,7 +479,7 @@ class Blocks { loadingIndicators.setProgress('block-indexing', progress, false); } const blockHash = await bitcoinApi.$getBlockHash(blockHeight); - const block = BitcoinApi.convertBlock(await bitcoinClient.getBlock(blockHash)); + const block: IEsploraApi.Block = await bitcoinApi.$getBlock(blockHash); const transactions = await this.$getTransactionsExtended(blockHash, block.height, true, true); const blockExtended = await this.$getBlockExtended(block, transactions); @@ -527,13 +527,13 @@ class Blocks { if (blockchainInfo.blocks === blockchainInfo.headers) { const heightDiff = blockHeightTip % 2016; const blockHash = await bitcoinApi.$getBlockHash(blockHeightTip - heightDiff); - const block = BitcoinApi.convertBlock(await bitcoinClient.getBlock(blockHash)); + const block: IEsploraApi.Block = await bitcoinApi.$getBlock(blockHash); this.lastDifficultyAdjustmentTime = block.timestamp; this.currentDifficulty = block.difficulty; if (blockHeightTip >= 2016) { const previousPeriodBlockHash = await bitcoinApi.$getBlockHash(blockHeightTip - heightDiff - 2016); - const previousPeriodBlock = await bitcoinClient.getBlock(previousPeriodBlockHash) + const previousPeriodBlock: IEsploraApi.Block = await bitcoinApi.$getBlock(previousPeriodBlockHash); this.previousDifficultyRetarget = (block.difficulty - previousPeriodBlock.difficulty) / previousPeriodBlock.difficulty * 100; logger.debug(`Initial difficulty adjustment data set.`); } @@ -657,7 +657,7 @@ class Blocks { } const blockHash = await bitcoinApi.$getBlockHash(height); - const block = BitcoinApi.convertBlock(await bitcoinClient.getBlock(blockHash)); + const block: IEsploraApi.Block = await bitcoinApi.$getBlock(blockHash); const transactions = await this.$getTransactionsExtended(blockHash, block.height, true); const blockExtended = await this.$getBlockExtended(block, transactions); @@ -681,7 +681,7 @@ class Blocks { // Block has already been indexed if (Common.indexingEnabled()) { const dbBlock = await blocksRepository.$getBlockByHash(hash); - if (dbBlock != null) { + if (dbBlock !== null) { return prepareBlock(dbBlock); } } @@ -691,10 +691,8 @@ class Blocks { return await bitcoinApi.$getBlock(hash); } - let block = await bitcoinClient.getBlock(hash); - block = prepareBlock(block); - // Bitcoin network, add our custom data on top + const block: IEsploraApi.Block = await bitcoinApi.$getBlock(hash); const transactions = await this.$getTransactionsExtended(hash, block.height, true); const blockExtended = await this.$getBlockExtended(block, transactions); if (Common.indexingEnabled()) { diff --git a/backend/src/api/chain-tips.ts b/backend/src/api/chain-tips.ts index 3384ebb19..46a06f703 100644 --- a/backend/src/api/chain-tips.ts +++ b/backend/src/api/chain-tips.ts @@ -1,5 +1,5 @@ -import logger from "../logger"; -import bitcoinClient from "./bitcoin/bitcoin-client"; +import logger from '../logger'; +import bitcoinClient from './bitcoin/bitcoin-client'; export interface ChainTip { height: number; diff --git a/backend/src/api/mining/mining.ts b/backend/src/api/mining/mining.ts index f33a68dcb..e9b569485 100644 --- a/backend/src/api/mining/mining.ts +++ b/backend/src/api/mining/mining.ts @@ -11,6 +11,8 @@ import DifficultyAdjustmentsRepository from '../../repositories/DifficultyAdjust import config from '../../config'; import BlocksAuditsRepository from '../../repositories/BlocksAuditsRepository'; import PricesRepository from '../../repositories/PricesRepository'; +import bitcoinApiFactory from '../bitcoin/bitcoin-api-factory'; +import { IEsploraApi } from '../bitcoin/esplora-api.interface'; class Mining { blocksPriceIndexingRunning = false; @@ -189,8 +191,8 @@ class Mining { try { const oldestConsecutiveBlockTimestamp = 1000 * (await BlocksRepository.$getOldestConsecutiveBlock()).timestamp; - const genesisBlock = await bitcoinClient.getBlock(await bitcoinClient.getBlockHash(0)); - const genesisTimestamp = genesisBlock.time * 1000; + const genesisBlock: IEsploraApi.Block = await bitcoinApiFactory.$getBlock(await bitcoinClient.getBlockHash(0)); + const genesisTimestamp = genesisBlock.timestamp * 1000; const indexedTimestamp = await HashratesRepository.$getWeeklyHashrateTimestamps(); const hashrates: any[] = []; @@ -292,8 +294,8 @@ class Mining { const oldestConsecutiveBlockTimestamp = 1000 * (await BlocksRepository.$getOldestConsecutiveBlock()).timestamp; try { - const genesisBlock = await bitcoinClient.getBlock(await bitcoinClient.getBlockHash(0)); - const genesisTimestamp = genesisBlock.time * 1000; + const genesisBlock: IEsploraApi.Block = await bitcoinApiFactory.$getBlock(await bitcoinClient.getBlockHash(0)); + const genesisTimestamp = genesisBlock.timestamp * 1000; const indexedTimestamp = (await HashratesRepository.$getRawNetworkDailyHashrate(null)).map(hashrate => hashrate.timestamp); const lastMidnight = this.getDateMidnight(new Date()); let toTimestamp = Math.round(lastMidnight.getTime()); @@ -394,13 +396,13 @@ class Mining { } const blocks: any = await BlocksRepository.$getBlocksDifficulty(); - const genesisBlock = await bitcoinClient.getBlock(await bitcoinClient.getBlockHash(0)); + const genesisBlock: IEsploraApi.Block = await bitcoinApiFactory.$getBlock(await bitcoinClient.getBlockHash(0)); let currentDifficulty = genesisBlock.difficulty; let totalIndexed = 0; if (config.MEMPOOL.INDEXING_BLOCKS_AMOUNT === -1 && indexedHeights[0] !== true) { await DifficultyAdjustmentsRepository.$saveAdjustments({ - time: genesisBlock.time, + time: genesisBlock.timestamp, height: 0, difficulty: currentDifficulty, adjustment: 0.0, From 0aff276a5c8d9eb5d1f8688836d95a0427e4bb73 Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Mon, 27 Feb 2023 18:00:00 +0900 Subject: [PATCH 018/130] Enforce BlockExtended use for block indexing - Unify /api/v1/block(s) API(s) response format --- .../src/api/bitcoin/bitcoin-api.interface.ts | 31 +++ backend/src/api/bitcoin/bitcoin-api.ts | 2 +- .../src/api/bitcoin/esplora-api.interface.ts | 2 +- backend/src/api/blocks.ts | 224 +++++++++--------- backend/src/api/chain-tips.ts | 6 +- backend/src/api/pools-parser.ts | 2 + backend/src/index.ts | 9 +- backend/src/mempool.interfaces.ts | 69 +++--- backend/src/repositories/BlocksRepository.ts | 206 +++++++++++----- backend/src/repositories/PoolsRepository.ts | 6 +- backend/src/utils/blocks-utils.ts | 33 --- .../src/app/interfaces/node-api.interface.ts | 1 - 12 files changed, 352 insertions(+), 239 deletions(-) delete mode 100644 backend/src/utils/blocks-utils.ts diff --git a/backend/src/api/bitcoin/bitcoin-api.interface.ts b/backend/src/api/bitcoin/bitcoin-api.interface.ts index 54d666794..3afc22897 100644 --- a/backend/src/api/bitcoin/bitcoin-api.interface.ts +++ b/backend/src/api/bitcoin/bitcoin-api.interface.ts @@ -172,4 +172,35 @@ export namespace IBitcoinApi { } } + export interface BlockStats { + "avgfee": number; + "avgfeerate": number; + "avgtxsize": number; + "blockhash": string; + "feerate_percentiles": [number, number, number, number, number]; + "height": number; + "ins": number; + "maxfee": number; + "maxfeerate": number; + "maxtxsize": number; + "medianfee": number; + "mediantime": number; + "mediantxsize": number; + "minfee": number; + "minfeerate": number; + "mintxsize": number; + "outs": number; + "subsidy": number; + "swtotal_size": number; + "swtotal_weight": number; + "swtxs": number; + "time": number; + "total_out": number; + "total_size": number; + "total_weight": number; + "totalfee": number; + "txs": number; + "utxo_increase": number; + "utxo_size_inc": number; + } } diff --git a/backend/src/api/bitcoin/bitcoin-api.ts b/backend/src/api/bitcoin/bitcoin-api.ts index 117245ef8..e20fe9e34 100644 --- a/backend/src/api/bitcoin/bitcoin-api.ts +++ b/backend/src/api/bitcoin/bitcoin-api.ts @@ -28,7 +28,7 @@ class BitcoinApi implements AbstractBitcoinApi { size: block.size, weight: block.weight, previousblockhash: block.previousblockhash, - medianTime: block.mediantime, + mediantime: block.mediantime, }; } diff --git a/backend/src/api/bitcoin/esplora-api.interface.ts b/backend/src/api/bitcoin/esplora-api.interface.ts index eaf6476f4..6d50bddfd 100644 --- a/backend/src/api/bitcoin/esplora-api.interface.ts +++ b/backend/src/api/bitcoin/esplora-api.interface.ts @@ -88,7 +88,7 @@ export namespace IEsploraApi { size: number; weight: number; previousblockhash: string; - medianTime?: number; + mediantime: number; } export interface Address { diff --git a/backend/src/api/blocks.ts b/backend/src/api/blocks.ts index 068184949..75d1ec300 100644 --- a/backend/src/api/blocks.ts +++ b/backend/src/api/blocks.ts @@ -2,7 +2,7 @@ import config from '../config'; import bitcoinApi from './bitcoin/bitcoin-api-factory'; import logger from '../logger'; import memPool from './mempool'; -import { BlockExtended, BlockSummary, PoolTag, TransactionExtended, TransactionStripped, TransactionMinerInfo } from '../mempool.interfaces'; +import { BlockExtended, BlockExtension, BlockSummary, PoolTag, TransactionExtended, TransactionStripped, TransactionMinerInfo } from '../mempool.interfaces'; import { Common } from './common'; import diskCache from './disk-cache'; import transactionUtils from './transaction-utils'; @@ -13,7 +13,6 @@ import poolsRepository from '../repositories/PoolsRepository'; import blocksRepository from '../repositories/BlocksRepository'; import loadingIndicators from './loading-indicators'; import BitcoinApi from './bitcoin/bitcoin-api'; -import { prepareBlock } from '../utils/blocks-utils'; import BlocksRepository from '../repositories/BlocksRepository'; import HashratesRepository from '../repositories/HashratesRepository'; import indexer from '../indexer'; @@ -143,7 +142,7 @@ class Blocks { * @param block * @returns BlockSummary */ - private summarizeBlock(block: IBitcoinApi.VerboseBlock): BlockSummary { + public summarizeBlock(block: IBitcoinApi.VerboseBlock): BlockSummary { const stripped = block.tx.map((tx) => { return { txid: tx.txid, @@ -166,80 +165,81 @@ class Blocks { * @returns BlockExtended */ private async $getBlockExtended(block: IEsploraApi.Block, transactions: TransactionExtended[]): Promise { - const blk: BlockExtended = Object.assign({ extras: {} }, block); - blk.extras.reward = transactions[0].vout.reduce((acc, curr) => acc + curr.value, 0); - blk.extras.coinbaseTx = transactionUtils.stripCoinbaseTransaction(transactions[0]); - blk.extras.coinbaseRaw = blk.extras.coinbaseTx.vin[0].scriptsig; - blk.extras.usd = priceUpdater.latestPrices.USD; - blk.extras.medianTimestamp = block.medianTime; - blk.extras.orphans = chainTips.getOrphanedBlocksAtHeight(blk.height); + const coinbaseTx = transactionUtils.stripCoinbaseTransaction(transactions[0]); + + const blk: Partial = Object.assign({}, block); + const extras: Partial = {}; + + extras.reward = transactions[0].vout.reduce((acc, curr) => acc + curr.value, 0); + extras.coinbaseRaw = coinbaseTx.vin[0].scriptsig; + extras.orphans = chainTips.getOrphanedBlocksAtHeight(blk.height); if (block.height === 0) { - blk.extras.medianFee = 0; // 50th percentiles - blk.extras.feeRange = [0, 0, 0, 0, 0, 0, 0]; - blk.extras.totalFees = 0; - blk.extras.avgFee = 0; - blk.extras.avgFeeRate = 0; - blk.extras.utxoSetChange = 0; - blk.extras.avgTxSize = 0; - blk.extras.totalInputs = 0; - blk.extras.totalOutputs = 1; - blk.extras.totalOutputAmt = 0; - blk.extras.segwitTotalTxs = 0; - blk.extras.segwitTotalSize = 0; - blk.extras.segwitTotalWeight = 0; + extras.medianFee = 0; // 50th percentiles + extras.feeRange = [0, 0, 0, 0, 0, 0, 0]; + extras.totalFees = 0; + extras.avgFee = 0; + extras.avgFeeRate = 0; + extras.utxoSetChange = 0; + extras.avgTxSize = 0; + extras.totalInputs = 0; + extras.totalOutputs = 1; + extras.totalOutputAmt = 0; + extras.segwitTotalTxs = 0; + extras.segwitTotalSize = 0; + extras.segwitTotalWeight = 0; } else { - const stats = await bitcoinClient.getBlockStats(block.id); - blk.extras.medianFee = stats.feerate_percentiles[2]; // 50th percentiles - blk.extras.feeRange = [stats.minfeerate, stats.feerate_percentiles, stats.maxfeerate].flat(); - blk.extras.totalFees = stats.totalfee; - blk.extras.avgFee = stats.avgfee; - blk.extras.avgFeeRate = stats.avgfeerate; - blk.extras.utxoSetChange = stats.utxo_increase; - blk.extras.avgTxSize = Math.round(stats.total_size / stats.txs * 100) * 0.01; - blk.extras.totalInputs = stats.ins; - blk.extras.totalOutputs = stats.outs; - blk.extras.totalOutputAmt = stats.total_out; - blk.extras.segwitTotalTxs = stats.swtxs; - blk.extras.segwitTotalSize = stats.swtotal_size; - blk.extras.segwitTotalWeight = stats.swtotal_weight; + const stats: IBitcoinApi.BlockStats = await bitcoinClient.getBlockStats(block.id); + extras.medianFee = stats.feerate_percentiles[2]; // 50th percentiles + extras.feeRange = [stats.minfeerate, stats.feerate_percentiles, stats.maxfeerate].flat(); + extras.totalFees = stats.totalfee; + extras.avgFee = stats.avgfee; + extras.avgFeeRate = stats.avgfeerate; + extras.utxoSetChange = stats.utxo_increase; + extras.avgTxSize = Math.round(stats.total_size / stats.txs * 100) * 0.01; + extras.totalInputs = stats.ins; + extras.totalOutputs = stats.outs; + extras.totalOutputAmt = stats.total_out; + extras.segwitTotalTxs = stats.swtxs; + extras.segwitTotalSize = stats.swtotal_size; + extras.segwitTotalWeight = stats.swtotal_weight; } if (Common.blocksSummariesIndexingEnabled()) { - blk.extras.feePercentiles = await BlocksSummariesRepository.$getFeePercentilesByBlockId(block.id); - if (blk.extras.feePercentiles !== null) { - blk.extras.medianFeeAmt = blk.extras.feePercentiles[3]; + extras.feePercentiles = await BlocksSummariesRepository.$getFeePercentilesByBlockId(block.id); + if (extras.feePercentiles !== null) { + extras.medianFeeAmt = extras.feePercentiles[3]; } } - blk.extras.virtualSize = block.weight / 4.0; - if (blk.extras.coinbaseTx.vout.length > 0) { - blk.extras.coinbaseAddress = blk.extras.coinbaseTx.vout[0].scriptpubkey_address ?? null; - blk.extras.coinbaseSignature = blk.extras.coinbaseTx.vout[0].scriptpubkey_asm ?? null; - blk.extras.coinbaseSignatureAscii = transactionUtils.hex2ascii(blk.extras.coinbaseTx.vin[0].scriptsig) ?? null; + extras.virtualSize = block.weight / 4.0; + if (coinbaseTx?.vout.length > 0) { + extras.coinbaseAddress = coinbaseTx.vout[0].scriptpubkey_address ?? null; + extras.coinbaseSignature = coinbaseTx.vout[0].scriptpubkey_asm ?? null; + extras.coinbaseSignatureAscii = transactionUtils.hex2ascii(coinbaseTx.vin[0].scriptsig) ?? null; } else { - blk.extras.coinbaseAddress = null; - blk.extras.coinbaseSignature = null; - blk.extras.coinbaseSignatureAscii = null; + extras.coinbaseAddress = null; + extras.coinbaseSignature = null; + extras.coinbaseSignatureAscii = null; } const header = await bitcoinClient.getBlockHeader(block.id, false); - blk.extras.header = header; + extras.header = header; const coinStatsIndex = indexer.isCoreIndexReady('coinstatsindex'); if (coinStatsIndex !== null && coinStatsIndex.best_block_height >= block.height) { const txoutset = await bitcoinClient.getTxoutSetinfo('none', block.height); - blk.extras.utxoSetSize = txoutset.txouts, - blk.extras.totalInputAmt = Math.round(txoutset.block_info.prevout_spent * 100000000); + extras.utxoSetSize = txoutset.txouts, + extras.totalInputAmt = Math.round(txoutset.block_info.prevout_spent * 100000000); } else { - blk.extras.utxoSetSize = null; - blk.extras.totalInputAmt = null; + extras.utxoSetSize = null; + extras.totalInputAmt = null; } if (['mainnet', 'testnet', 'signet'].includes(config.MEMPOOL.NETWORK)) { let pool: PoolTag; - if (blk.extras?.coinbaseTx !== undefined) { - pool = await this.$findBlockMiner(blk.extras?.coinbaseTx); + if (coinbaseTx !== undefined) { + pool = await this.$findBlockMiner(coinbaseTx); } else { if (config.DATABASE.ENABLED === true) { pool = await poolsRepository.$getUnknownPool(); @@ -252,22 +252,24 @@ class Blocks { logger.warn(`Cannot assign pool to block ${blk.height} and 'unknown' pool does not exist. ` + `Check your "pools" table entries`); } else { - blk.extras.pool = { - id: pool.id, + extras.pool = { + id: pool.uniqueId, name: pool.name, slug: pool.slug, }; } + extras.matchRate = null; if (config.MEMPOOL.AUDIT) { const auditScore = await BlocksAuditsRepository.$getBlockAuditScore(block.id); if (auditScore != null) { - blk.extras.matchRate = auditScore.matchRate; + extras.matchRate = auditScore.matchRate; } } } - return blk; + blk.extras = extras; + return blk; } /** @@ -293,15 +295,18 @@ class Blocks { } else { pools = poolsParser.miningPools; } + for (let i = 0; i < pools.length; ++i) { if (address !== undefined) { - const addresses: string[] = JSON.parse(pools[i].addresses); + const addresses: string[] = typeof pools[i].addresses === 'string' ? + JSON.parse(pools[i].addresses) : pools[i].addresses; if (addresses.indexOf(address) !== -1) { return pools[i]; } } - const regexes: string[] = JSON.parse(pools[i].regexes); + const regexes: string[] = typeof pools[i].regexes === 'string' ? + JSON.parse(pools[i].regexes) : pools[i].regexes; for (let y = 0; y < regexes.length; ++y) { const regex = new RegExp(regexes[y], 'i'); const match = asciiScriptSig.match(regex); @@ -652,7 +657,7 @@ class Blocks { if (Common.indexingEnabled()) { const dbBlock = await blocksRepository.$getBlockByHeight(height); if (dbBlock !== null) { - return prepareBlock(dbBlock); + return dbBlock; } } @@ -665,11 +670,11 @@ class Blocks { await blocksRepository.$saveBlockInDatabase(blockExtended); } - return prepareBlock(blockExtended); + return blockExtended; } /** - * Index a block by hash if it's missing from the database. Returns the block after indexing + * Get one block by its hash */ public async $getBlock(hash: string): Promise { // Check the memory cache @@ -678,29 +683,14 @@ class Blocks { return blockByHash; } - // Block has already been indexed - if (Common.indexingEnabled()) { - const dbBlock = await blocksRepository.$getBlockByHash(hash); - if (dbBlock !== null) { - return prepareBlock(dbBlock); - } - } - - // Not Bitcoin network, return the block as it + // Not Bitcoin network, return the block as it from the bitcoin backend if (['mainnet', 'testnet', 'signet'].includes(config.MEMPOOL.NETWORK) === false) { return await bitcoinApi.$getBlock(hash); } // Bitcoin network, add our custom data on top const block: IEsploraApi.Block = await bitcoinApi.$getBlock(hash); - const transactions = await this.$getTransactionsExtended(hash, block.height, true); - const blockExtended = await this.$getBlockExtended(block, transactions); - if (Common.indexingEnabled()) { - delete(blockExtended['coinbaseTx']); - await blocksRepository.$saveBlockInDatabase(blockExtended); - } - - return blockExtended; + return await this.$indexBlock(block.height); } public async $getStrippedBlockTransactions(hash: string, skipMemoryCache = false, @@ -734,6 +724,18 @@ class Blocks { return summary.transactions; } + /** + * Get 15 blocks + * + * Internally this function uses two methods to get the blocks, and + * the method is automatically selected: + * - Using previous block hash links + * - Using block height + * + * @param fromHeight + * @param limit + * @returns + */ public async $getBlocks(fromHeight?: number, limit: number = 15): Promise { let currentHeight = fromHeight !== undefined ? fromHeight : this.currentBlockHeight; if (currentHeight > this.currentBlockHeight) { @@ -759,11 +761,14 @@ class Blocks { for (let i = 0; i < limit && currentHeight >= 0; i++) { let block = this.getBlocks().find((b) => b.height === currentHeight); if (block) { + // Using the memory cache (find by height) returnBlocks.push(block); } else if (Common.indexingEnabled()) { + // Using indexing (find by height, index on the fly, save in database) block = await this.$indexBlock(currentHeight); returnBlocks.push(block); - } else if (nextHash != null) { + } else if (nextHash !== null) { + // Without indexing, query block on the fly using bitoin backend, follow previous hash links block = await this.$indexBlock(currentHeight); nextHash = block.previousblockhash; returnBlocks.push(block); @@ -788,7 +793,7 @@ class Blocks { const blocks: any[] = []; while (fromHeight <= toHeight) { - let block: any = await blocksRepository.$getBlockByHeight(fromHeight); + let block: BlockExtended | null = await blocksRepository.$getBlockByHeight(fromHeight); if (!block) { await this.$indexBlock(fromHeight); block = await blocksRepository.$getBlockByHeight(fromHeight); @@ -801,11 +806,11 @@ class Blocks { const cleanBlock: any = { height: block.height ?? null, hash: block.id ?? null, - timestamp: block.blockTimestamp ?? null, - median_timestamp: block.medianTime ?? null, + timestamp: block.timestamp ?? null, + median_timestamp: block.mediantime ?? null, previous_block_hash: block.previousblockhash ?? null, difficulty: block.difficulty ?? null, - header: block.header ?? null, + header: block.extras.header ?? null, version: block.version ?? null, bits: block.bits ?? null, nonce: block.nonce ?? null, @@ -813,29 +818,30 @@ class Blocks { weight: block.weight ?? null, tx_count: block.tx_count ?? null, merkle_root: block.merkle_root ?? null, - reward: block.reward ?? null, - total_fee_amt: block.fees ?? null, - avg_fee_amt: block.avg_fee ?? null, - median_fee_amt: block.median_fee_amt ?? null, - fee_amt_percentiles: block.fee_percentiles ?? null, - avg_fee_rate: block.avg_fee_rate ?? null, - median_fee_rate: block.median_fee ?? null, - fee_rate_percentiles: block.fee_span ?? null, - total_inputs: block.total_inputs ?? null, - total_input_amt: block.total_input_amt ?? null, - total_outputs: block.total_outputs ?? null, - total_output_amt: block.total_output_amt ?? null, - segwit_total_txs: block.segwit_total_txs ?? null, - segwit_total_size: block.segwit_total_size ?? null, - segwit_total_weight: block.segwit_total_weight ?? null, - avg_tx_size: block.avg_tx_size ?? null, - utxoset_change: block.utxoset_change ?? null, - utxoset_size: block.utxoset_size ?? null, - coinbase_raw: block.coinbase_raw ?? null, - coinbase_address: block.coinbase_address ?? null, - coinbase_signature: block.coinbase_signature ?? null, - coinbase_signature_ascii: block.coinbase_signature_ascii ?? null, - pool_slug: block.pool_slug ?? null, + reward: block.extras.reward ?? null, + total_fee_amt: block.extras.totalFees ?? null, + avg_fee_amt: block.extras.avgFee ?? null, + median_fee_amt: block.extras.medianFeeAmt ?? null, + fee_amt_percentiles: block.extras.feePercentiles ?? null, + avg_fee_rate: block.extras.avgFeeRate ?? null, + median_fee_rate: block.extras.medianFee ?? null, + fee_rate_percentiles: block.extras.feeRange ?? null, + total_inputs: block.extras.totalInputs ?? null, + total_input_amt: block.extras.totalInputAmt ?? null, + total_outputs: block.extras.totalOutputs ?? null, + total_output_amt: block.extras.totalOutputAmt ?? null, + segwit_total_txs: block.extras.segwitTotalTxs ?? null, + segwit_total_size: block.extras.segwitTotalSize ?? null, + segwit_total_weight: block.extras.segwitTotalWeight ?? null, + avg_tx_size: block.extras.avgTxSize ?? null, + utxoset_change: block.extras.utxoSetChange ?? null, + utxoset_size: block.extras.utxoSetSize ?? null, + coinbase_raw: block.extras.coinbaseRaw ?? null, + coinbase_address: block.extras.coinbaseAddress ?? null, + coinbase_signature: block.extras.coinbaseSignature ?? null, + coinbase_signature_ascii: block.extras.coinbaseSignatureAscii ?? null, + pool_slug: block.extras.pool.slug ?? null, + pool_id: block.extras.pool.id ?? null, }; if (Common.blocksSummariesIndexingEnabled() && cleanBlock.fee_amt_percentiles === null) { diff --git a/backend/src/api/chain-tips.ts b/backend/src/api/chain-tips.ts index 46a06f703..b68b0b281 100644 --- a/backend/src/api/chain-tips.ts +++ b/backend/src/api/chain-tips.ts @@ -43,7 +43,11 @@ class ChainTips { } } - public getOrphanedBlocksAtHeight(height: number): OrphanedBlock[] { + public getOrphanedBlocksAtHeight(height: number | undefined): OrphanedBlock[] { + if (height === undefined) { + return []; + } + const orphans: OrphanedBlock[] = []; for (const block of this.orphanedBlocks) { if (block.height === height) { diff --git a/backend/src/api/pools-parser.ts b/backend/src/api/pools-parser.ts index b34dcb7b8..0f009cd1d 100644 --- a/backend/src/api/pools-parser.ts +++ b/backend/src/api/pools-parser.ts @@ -7,6 +7,7 @@ import { PoolTag } from '../mempool.interfaces'; class PoolsParser { miningPools: any[] = []; unknownPool: any = { + 'id': 0, 'name': 'Unknown', 'link': 'https://learnmeabitcoin.com/technical/coinbase-transaction', 'regexes': '[]', @@ -26,6 +27,7 @@ class PoolsParser { public setMiningPools(pools): void { for (const pool of pools) { pool.regexes = pool.tags; + pool.slug = pool.name.replace(/[^a-z0-9]/gi, '').toLowerCase(); delete(pool.tags); } this.miningPools = pools; diff --git a/backend/src/index.ts b/backend/src/index.ts index 6f259a2bd..7207ae7a8 100644 --- a/backend/src/index.ts +++ b/backend/src/index.ts @@ -179,7 +179,14 @@ class Server { setTimeout(this.runMainUpdateLoop.bind(this), config.MEMPOOL.POLL_RATE_MS); this.currentBackendRetryInterval = 5; } catch (e: any) { - const loggerMsg = `runMainLoop error: ${(e instanceof Error ? e.message : e)}. Retrying in ${this.currentBackendRetryInterval} sec.`; + let loggerMsg = `Exception in runMainUpdateLoop(). Retrying in ${this.currentBackendRetryInterval} sec.`; + loggerMsg += ` Reason: ${(e instanceof Error ? e.message : e)}.`; + if (e?.stack) { + loggerMsg += ` Stack trace: ${e.stack}`; + } + // When we get a first Exception, only `logger.debug` it and retry after 5 seconds + // From the second Exception, `logger.warn` the Exception and increase the retry delay + // Maximum retry delay is 60 seconds if (this.currentBackendRetryInterval > 5) { logger.warn(loggerMsg); mempool.setOutOfSync(); diff --git a/backend/src/mempool.interfaces.ts b/backend/src/mempool.interfaces.ts index cb95be98a..a7937e01d 100644 --- a/backend/src/mempool.interfaces.ts +++ b/backend/src/mempool.interfaces.ts @@ -1,9 +1,10 @@ import { IEsploraApi } from './api/bitcoin/esplora-api.interface'; import { OrphanedBlock } from './api/chain-tips'; -import { HeapNode } from "./utils/pairing-heap"; +import { HeapNode } from './utils/pairing-heap'; export interface PoolTag { - id: number; // mysql row id + id: number; + uniqueId: number; name: string; link: string; regexes: string; // JSON array @@ -147,44 +148,44 @@ export interface TransactionStripped { } export interface BlockExtension { - totalFees?: number; - medianFee?: number; - feeRange?: number[]; - reward?: number; - coinbaseTx?: TransactionMinerInfo; - matchRate?: number; - pool?: { - id: number; + totalFees: number; + medianFee: number; // median fee rate + feeRange: number[]; // fee rate percentiles + reward: number; + matchRate: number | null; + pool: { + id: number; // Note - This is the `unique_id`, not to mix with the auto increment `id` name: string; slug: string; }; - avgFee?: number; - avgFeeRate?: number; - coinbaseRaw?: string; - usd?: number | null; - medianTimestamp?: number; - blockTime?: number; - orphans?: OrphanedBlock[] | null; - coinbaseAddress?: string | null; - coinbaseSignature?: string | null; - coinbaseSignatureAscii?: string | null; - virtualSize?: number; - avgTxSize?: number; - totalInputs?: number; - totalOutputs?: number; - totalOutputAmt?: number; - medianFeeAmt?: number | null; - feePercentiles?: number[] | null, - segwitTotalTxs?: number; - segwitTotalSize?: number; - segwitTotalWeight?: number; - header?: string; - utxoSetChange?: number; + avgFee: number; + avgFeeRate: number; + coinbaseRaw: string; + orphans: OrphanedBlock[] | null; + coinbaseAddress: string | null; + coinbaseSignature: string | null; + coinbaseSignatureAscii: string | null; + virtualSize: number; + avgTxSize: number; + totalInputs: number; + totalOutputs: number; + totalOutputAmt: number; + medianFeeAmt: number | null; // median fee in sats + feePercentiles: number[] | null, // fee percentiles in sats + segwitTotalTxs: number; + segwitTotalSize: number; + segwitTotalWeight: number; + header: string; + utxoSetChange: number; // Requires coinstatsindex, will be set to NULL otherwise - utxoSetSize?: number | null; - totalInputAmt?: number | null; + utxoSetSize: number | null; + totalInputAmt: number | null; } +/** + * Note: Everything that is added in here will be automatically returned through + * /api/v1/block and /api/v1/blocks APIs + */ export interface BlockExtended extends IEsploraApi.Block { extras: BlockExtension; } diff --git a/backend/src/repositories/BlocksRepository.ts b/backend/src/repositories/BlocksRepository.ts index c7edb97cb..ac12b3430 100644 --- a/backend/src/repositories/BlocksRepository.ts +++ b/backend/src/repositories/BlocksRepository.ts @@ -1,8 +1,7 @@ -import { BlockExtended, BlockPrice } from '../mempool.interfaces'; +import { BlockExtended, BlockExtension, BlockPrice } from '../mempool.interfaces'; import DB from '../database'; import logger from '../logger'; import { Common } from '../api/common'; -import { prepareBlock } from '../utils/blocks-utils'; import PoolsRepository from './PoolsRepository'; import HashratesRepository from './HashratesRepository'; import { escape } from 'mysql2'; @@ -10,6 +9,50 @@ import BlocksSummariesRepository from './BlocksSummariesRepository'; import DifficultyAdjustmentsRepository from './DifficultyAdjustmentsRepository'; import bitcoinClient from '../api/bitcoin/bitcoin-client'; import config from '../config'; +import chainTips from '../api/chain-tips'; +import blocks from '../api/blocks'; + +const BLOCK_DB_FIELDS = ` + blocks.hash AS id, + blocks.height, + blocks.version, + UNIX_TIMESTAMP(blocks.blockTimestamp) AS timestamp, + blocks.bits, + blocks.nonce, + blocks.difficulty, + blocks.merkle_root, + blocks.tx_count, + blocks.size, + blocks.weight, + blocks.previous_block_hash AS previousblockhash, + UNIX_TIMESTAMP(blocks.median_timestamp) AS mediantime, + blocks.fees AS totalFees, + blocks.median_fee AS medianFee, + blocks.fee_span AS feeRange, + blocks.reward, + pools.unique_id AS poolId, + pools.name AS poolName, + pools.slug AS poolSlug, + blocks.avg_fee AS avgFee, + blocks.avg_fee_rate AS avgFeeRate, + blocks.coinbase_raw AS coinbaseRaw, + blocks.coinbase_address AS coinbaseAddress, + blocks.coinbase_signature AS coinbaseSignature, + blocks.coinbase_signature_ascii AS coinbaseSignatureAscii, + blocks.avg_tx_size AS avgTxSize, + blocks.total_inputs AS totalInputs, + blocks.total_outputs AS totalOutputs, + blocks.total_output_amt AS totalOutputAmt, + blocks.median_fee_amt AS medianFeeAmt, + blocks.fee_percentiles AS feePercentiles, + blocks.segwit_total_txs AS segwitTotalTxs, + blocks.segwit_total_size AS segwitTotalSize, + blocks.segwit_total_weight AS segwitTotalWeight, + blocks.header, + blocks.utxoset_change AS utxoSetChange, + blocks.utxoset_size AS utxoSetSize, + blocks.total_input_amt AS totalInputAmts +`; class BlocksRepository { /** @@ -44,6 +87,11 @@ class BlocksRepository { ?, ? )`; + const poolDbId = await PoolsRepository.$getPoolByUniqueId(block.extras.pool.id); + if (!poolDbId) { + throw Error(`Could not find a mining pool with the unique_id = ${block.extras.pool.id}. This error should never be printed.`); + } + const params: any[] = [ block.height, block.id, @@ -53,7 +101,7 @@ class BlocksRepository { block.tx_count, block.extras.coinbaseRaw, block.difficulty, - block.extras.pool?.id, // Should always be set to something + poolDbId.id, block.extras.totalFees, JSON.stringify(block.extras.feeRange), block.extras.medianFee, @@ -65,7 +113,7 @@ class BlocksRepository { block.previousblockhash, block.extras.avgFee, block.extras.avgFeeRate, - block.extras.medianTimestamp, + block.mediantime, block.extras.header, block.extras.coinbaseAddress, truncatedCoinbaseSignature, @@ -87,9 +135,9 @@ class BlocksRepository { await DB.query(query, params); } catch (e: any) { if (e.errno === 1062) { // ER_DUP_ENTRY - This scenario is possible upon node backend restart - logger.debug(`$saveBlockInDatabase() - Block ${block.height} has already been indexed, ignoring`); + logger.debug(`$saveBlockInDatabase() - Block ${block.height} has already been indexed, ignoring`, logger.tags.mining); } else { - logger.err('Cannot save indexed block into db. Reason: ' + (e instanceof Error ? e.message : e)); + logger.err('Cannot save indexed block into db. Reason: ' + (e instanceof Error ? e.message : e), logger.tags.mining); throw e; } } @@ -307,34 +355,17 @@ class BlocksRepository { /** * Get blocks mined by a specific mining pool */ - public async $getBlocksByPool(slug: string, startHeight?: number): Promise { + public async $getBlocksByPool(slug: string, startHeight?: number): Promise { const pool = await PoolsRepository.$getPool(slug); if (!pool) { throw new Error('This mining pool does not exist ' + escape(slug)); } const params: any[] = []; - let query = ` SELECT - blocks.height, - hash as id, - UNIX_TIMESTAMP(blocks.blockTimestamp) as blockTimestamp, - size, - weight, - tx_count, - coinbase_raw, - difficulty, - fees, - fee_span, - median_fee, - reward, - version, - bits, - nonce, - merkle_root, - previous_block_hash as previousblockhash, - avg_fee, - avg_fee_rate + let query = ` + SELECT ${BLOCK_DB_FIELDS} FROM blocks + JOIN pools ON blocks.pool_id = pools.id WHERE pool_id = ?`; params.push(pool.id); @@ -347,11 +378,11 @@ class BlocksRepository { LIMIT 10`; try { - const [rows] = await DB.query(query, params); + const [rows]: any[] = await DB.query(query, params); const blocks: BlockExtended[] = []; - for (const block of rows) { - blocks.push(prepareBlock(block)); + for (const block of rows) { + blocks.push(await this.formatDbBlockIntoExtendedBlock(block)); } return blocks; @@ -364,32 +395,21 @@ class BlocksRepository { /** * Get one block by height */ - public async $getBlockByHeight(height: number): Promise { + public async $getBlockByHeight(height: number): Promise { try { - const [rows]: any[] = await DB.query(`SELECT - blocks.*, - hash as id, - UNIX_TIMESTAMP(blocks.blockTimestamp) as blockTimestamp, - UNIX_TIMESTAMP(blocks.median_timestamp) as medianTime, - pools.id as pool_id, - pools.name as pool_name, - pools.link as pool_link, - pools.slug as pool_slug, - pools.addresses as pool_addresses, - pools.regexes as pool_regexes, - previous_block_hash as previousblockhash + const [rows]: any[] = await DB.query(` + SELECT ${BLOCK_DB_FIELDS} FROM blocks JOIN pools ON blocks.pool_id = pools.id - WHERE blocks.height = ${height} - `); + WHERE blocks.height = ?`, + [height] + ); if (rows.length <= 0) { return null; } - rows[0].fee_span = JSON.parse(rows[0].fee_span); - rows[0].fee_percentiles = JSON.parse(rows[0].fee_percentiles); - return rows[0]; + return await this.formatDbBlockIntoExtendedBlock(rows[0]); } catch (e) { logger.err(`Cannot get indexed block ${height}. Reason: ` + (e instanceof Error ? e.message : e)); throw e; @@ -402,10 +422,7 @@ class BlocksRepository { public async $getBlockByHash(hash: string): Promise { try { const query = ` - SELECT *, blocks.height, UNIX_TIMESTAMP(blocks.blockTimestamp) as blockTimestamp, hash as id, - pools.id as pool_id, pools.name as pool_name, pools.link as pool_link, pools.slug as pool_slug, - pools.addresses as pool_addresses, pools.regexes as pool_regexes, - previous_block_hash as previousblockhash + SELECT ${BLOCK_DB_FIELDS} FROM blocks JOIN pools ON blocks.pool_id = pools.id WHERE hash = ?; @@ -415,9 +432,8 @@ class BlocksRepository { if (rows.length <= 0) { return null; } - - rows[0].fee_span = JSON.parse(rows[0].fee_span); - return rows[0]; + + return await this.formatDbBlockIntoExtendedBlock(rows[0]); } catch (e) { logger.err(`Cannot get indexed block ${hash}. Reason: ` + (e instanceof Error ? e.message : e)); throw e; @@ -833,6 +849,86 @@ class BlocksRepository { throw e; } } + + /** + * Convert a mysql row block into a BlockExtended. Note that you + * must provide the correct field into dbBlk object param + * + * @param dbBlk + */ + private async formatDbBlockIntoExtendedBlock(dbBlk: any): Promise { + const blk: Partial = {}; + const extras: Partial = {}; + + // IEsploraApi.Block + blk.id = dbBlk.id; + blk.height = dbBlk.height; + blk.version = dbBlk.version; + blk.timestamp = dbBlk.timestamp; + blk.bits = dbBlk.bits; + blk.nonce = dbBlk.nonce; + blk.difficulty = dbBlk.difficulty; + blk.merkle_root = dbBlk.merkle_root; + blk.tx_count = dbBlk.tx_count; + blk.size = dbBlk.size; + blk.weight = dbBlk.weight; + blk.previousblockhash = dbBlk.previousblockhash; + blk.mediantime = dbBlk.mediantime; + + // BlockExtension + extras.totalFees = dbBlk.totalFees; + extras.medianFee = dbBlk.medianFee; + extras.feeRange = JSON.parse(dbBlk.feeRange); + extras.reward = dbBlk.reward; + extras.pool = { + id: dbBlk.poolId, + name: dbBlk.poolName, + slug: dbBlk.poolSlug, + }; + extras.avgFee = dbBlk.avgFee; + extras.avgFeeRate = dbBlk.avgFeeRate; + extras.coinbaseRaw = dbBlk.coinbaseRaw; + extras.coinbaseAddress = dbBlk.coinbaseAddress; + extras.coinbaseSignature = dbBlk.coinbaseSignature; + extras.coinbaseSignatureAscii = dbBlk.coinbaseSignatureAscii; + extras.avgTxSize = dbBlk.avgTxSize; + extras.totalInputs = dbBlk.totalInputs; + extras.totalOutputs = dbBlk.totalOutputs; + extras.totalOutputAmt = dbBlk.totalOutputAmt; + extras.medianFeeAmt = dbBlk.medianFeeAmt; + extras.feePercentiles = JSON.parse(dbBlk.feePercentiles); + extras.segwitTotalTxs = dbBlk.segwitTotalTxs; + extras.segwitTotalSize = dbBlk.segwitTotalSize; + extras.segwitTotalWeight = dbBlk.segwitTotalWeight; + extras.header = dbBlk.header, + extras.utxoSetChange = dbBlk.utxoSetChange; + extras.utxoSetSize = dbBlk.utxoSetSize; + extras.totalInputAmt = dbBlk.totalInputAmt; + extras.virtualSize = dbBlk.weight / 4.0; + + // Re-org can happen after indexing so we need to always get the + // latest state from core + extras.orphans = chainTips.getOrphanedBlocksAtHeight(dbBlk.height); + + // If we're missing block summary related field, check if we can populate them on the fly now + if (Common.blocksSummariesIndexingEnabled() && + (extras.medianFeeAmt === null || extras.feePercentiles === null)) + { + extras.feePercentiles = await BlocksSummariesRepository.$getFeePercentilesByBlockId(dbBlk.id); + if (extras.feePercentiles === null) { + const block = await bitcoinClient.getBlock(dbBlk.id, 2); + const summary = blocks.summarizeBlock(block); + await BlocksSummariesRepository.$saveSummary({ height: block.height, mined: summary }); + extras.feePercentiles = await BlocksSummariesRepository.$getFeePercentilesByBlockId(dbBlk.id); + } + if (extras.feePercentiles !== null) { + extras.medianFeeAmt = extras.feePercentiles[3]; + } + } + + blk.extras = extras; + return blk; + } } export default new BlocksRepository(); diff --git a/backend/src/repositories/PoolsRepository.ts b/backend/src/repositories/PoolsRepository.ts index 236955d65..293fd5e39 100644 --- a/backend/src/repositories/PoolsRepository.ts +++ b/backend/src/repositories/PoolsRepository.ts @@ -10,7 +10,7 @@ class PoolsRepository { * Get all pools tagging info */ public async $getPools(): Promise { - const [rows] = await DB.query('SELECT id, name, addresses, regexes, slug FROM pools;'); + const [rows] = await DB.query('SELECT id, unique_id as uniqueId, name, addresses, regexes, slug FROM pools'); return rows; } @@ -18,10 +18,10 @@ class PoolsRepository { * Get unknown pool tagging info */ public async $getUnknownPool(): Promise { - let [rows]: any[] = await DB.query('SELECT id, name, slug FROM pools where name = "Unknown"'); + let [rows]: any[] = await DB.query('SELECT id, unique_id as uniqueId, name, slug FROM pools where name = "Unknown"'); if (rows && rows.length === 0 && config.DATABASE.ENABLED) { await poolsParser.$insertUnknownPool(); - [rows] = await DB.query('SELECT id, name, slug FROM pools where name = "Unknown"'); + [rows] = await DB.query('SELECT id, unique_id as uniqueId, name, slug FROM pools where name = "Unknown"'); } return rows[0]; } diff --git a/backend/src/utils/blocks-utils.ts b/backend/src/utils/blocks-utils.ts deleted file mode 100644 index 43a2fc964..000000000 --- a/backend/src/utils/blocks-utils.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { BlockExtended } from '../mempool.interfaces'; - -export function prepareBlock(block: any): BlockExtended { - return { - id: block.id ?? block.hash, // hash for indexed block - timestamp: block.timestamp ?? block.time ?? block.blockTimestamp, // blockTimestamp for indexed block - height: block.height, - version: block.version, - bits: (typeof block.bits === 'string' ? parseInt(block.bits, 16): block.bits), - nonce: block.nonce, - difficulty: block.difficulty, - merkle_root: block.merkle_root ?? block.merkleroot, - tx_count: block.tx_count ?? block.nTx, - size: block.size, - weight: block.weight, - previousblockhash: block.previousblockhash, - extras: { - coinbaseRaw: block.coinbase_raw ?? block.extras?.coinbaseRaw, - medianFee: block.medianFee ?? block.median_fee ?? block.extras?.medianFee, - feeRange: block.feeRange ?? block?.extras?.feeRange ?? block.fee_span, - reward: block.reward ?? block?.extras?.reward, - totalFees: block.totalFees ?? block?.fees ?? block?.extras?.totalFees, - avgFee: block?.extras?.avgFee ?? block.avg_fee, - avgFeeRate: block?.avgFeeRate ?? block.avg_fee_rate, - pool: block?.extras?.pool ?? (block?.pool_id ? { - id: block.pool_id, - name: block.pool_name, - slug: block.pool_slug, - } : undefined), - usd: block?.extras?.usd ?? block.usd ?? null, - } - }; -} diff --git a/frontend/src/app/interfaces/node-api.interface.ts b/frontend/src/app/interfaces/node-api.interface.ts index 8fa30a723..7ed32a9de 100644 --- a/frontend/src/app/interfaces/node-api.interface.ts +++ b/frontend/src/app/interfaces/node-api.interface.ts @@ -114,7 +114,6 @@ export interface BlockExtension { medianFee?: number; feeRange?: number[]; reward?: number; - coinbaseTx?: Transaction; coinbaseRaw?: string; matchRate?: number; pool?: { From 01d699e454648a97a4f374e120f3276666691461 Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Mon, 27 Feb 2023 18:39:02 +0900 Subject: [PATCH 019/130] Add missing match rate to the block returned from the database --- backend/src/repositories/BlocksRepository.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/backend/src/repositories/BlocksRepository.ts b/backend/src/repositories/BlocksRepository.ts index ac12b3430..9cd31bbab 100644 --- a/backend/src/repositories/BlocksRepository.ts +++ b/backend/src/repositories/BlocksRepository.ts @@ -11,6 +11,7 @@ import bitcoinClient from '../api/bitcoin/bitcoin-client'; import config from '../config'; import chainTips from '../api/chain-tips'; import blocks from '../api/blocks'; +import BlocksAuditsRepository from './BlocksAuditsRepository'; const BLOCK_DB_FIELDS = ` blocks.hash AS id, @@ -910,6 +911,15 @@ class BlocksRepository { // latest state from core extras.orphans = chainTips.getOrphanedBlocksAtHeight(dbBlk.height); + // Match rate is not part of the blocks table, but it is part of APIs so we must include it + extras.matchRate = null; + if (config.MEMPOOL.AUDIT) { + const auditScore = await BlocksAuditsRepository.$getBlockAuditScore(dbBlk.id); + if (auditScore != null) { + extras.matchRate = auditScore.matchRate; + } + } + // If we're missing block summary related field, check if we can populate them on the fly now if (Common.blocksSummariesIndexingEnabled() && (extras.medianFeeAmt === null || extras.feePercentiles === null)) From 76ae9d4ccba76ba8d8a854d9ce39474185bf273a Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Mon, 27 Feb 2023 19:06:46 +0900 Subject: [PATCH 020/130] Wipe the disk cache since we have a new block structure --- backend/src/api/disk-cache.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/src/api/disk-cache.ts b/backend/src/api/disk-cache.ts index a75fd43cc..2a53e7b9b 100644 --- a/backend/src/api/disk-cache.ts +++ b/backend/src/api/disk-cache.ts @@ -9,7 +9,7 @@ import { TransactionExtended } from '../mempool.interfaces'; import { Common } from './common'; class DiskCache { - private cacheSchemaVersion = 2; + private cacheSchemaVersion = 3; private static FILE_NAME = config.MEMPOOL.CACHE_DIR + '/cache.json'; private static FILE_NAMES = config.MEMPOOL.CACHE_DIR + '/cache{number}.json'; From 174758bdd9effd92bf6bd2e57cf77738da862b51 Mon Sep 17 00:00:00 2001 From: hunicus <93150691+hunicus@users.noreply.github.com> Date: Tue, 28 Feb 2023 00:20:30 -0500 Subject: [PATCH 021/130] Specify networks in lightning network graph labels --- .../nodes-networks-chart.component.ts | 58 +++++++++---------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/frontend/src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts b/frontend/src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts index 0ff9f4af1..e257864fa 100644 --- a/frontend/src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts +++ b/frontend/src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts @@ -161,28 +161,7 @@ export class NodesNetworksChartComponent implements OnInit { { zlevel: 1, yAxisIndex: 0, - name: $localize`Reachable on Clearnet Only`, - showSymbol: false, - symbol: 'none', - data: data.clearnet_nodes, - type: 'line', - lineStyle: { - width: 2, - }, - areaStyle: { - opacity: 0.5, - }, - stack: 'Total', - color: new graphic.LinearGradient(0, 0.75, 0, 1, [ - { offset: 0, color: '#FFB300' }, - { offset: 1, color: '#FFB300AA' }, - ]), - smooth: false, - }, - { - zlevel: 1, - yAxisIndex: 0, - name: $localize`Reachable on Clearnet and Darknet`, + name: $localize`Clearnet and Darknet`, showSymbol: false, symbol: 'none', data: data.clearnet_tor_nodes, @@ -203,7 +182,28 @@ export class NodesNetworksChartComponent implements OnInit { { zlevel: 1, yAxisIndex: 0, - name: $localize`Reachable on Darknet Only`, + name: $localize`Clearnet (IPv4, IPv6)`, + showSymbol: false, + symbol: 'none', + data: data.clearnet_nodes, + type: 'line', + lineStyle: { + width: 2, + }, + areaStyle: { + opacity: 0.5, + }, + stack: 'Total', + color: new graphic.LinearGradient(0, 0.75, 0, 1, [ + { offset: 0, color: '#FFB300' }, + { offset: 1, color: '#FFB300AA' }, + ]), + smooth: false, + }, + { + zlevel: 1, + yAxisIndex: 0, + name: $localize`Darknet Only (Tor, I2P, cjdns)`, showSymbol: false, symbol: 'none', data: data.tor_nodes, @@ -284,7 +284,7 @@ export class NodesNetworksChartComponent implements OnInit { padding: 10, data: [ { - name: $localize`Reachable on Darknet Only`, + name: $localize`Darknet Only (Tor, I2P, cjdns)`, inactiveColor: 'rgb(110, 112, 121)', textStyle: { color: 'white', @@ -292,7 +292,7 @@ export class NodesNetworksChartComponent implements OnInit { icon: 'roundRect', }, { - name: $localize`Reachable on Clearnet and Darknet`, + name: $localize`Clearnet (IPv4, IPv6)`, inactiveColor: 'rgb(110, 112, 121)', textStyle: { color: 'white', @@ -300,7 +300,7 @@ export class NodesNetworksChartComponent implements OnInit { icon: 'roundRect', }, { - name: $localize`Reachable on Clearnet Only`, + name: $localize`Clearnet and Darknet`, inactiveColor: 'rgb(110, 112, 121)', textStyle: { color: 'white', @@ -317,9 +317,9 @@ export class NodesNetworksChartComponent implements OnInit { }, ], selected: this.widget ? undefined : JSON.parse(this.storageService.getValue('nodes_networks_legend')) ?? { - '$localize`Reachable on Darknet Only`': true, - '$localize`Reachable on Clearnet Only`': true, - '$localize`Reachable on Clearnet and Darknet`': true, + '$localize`Darknet Only (Tor, I2P, cjdns)`': true, + '$localize`Clearnet (IPv4, IPv6)`': true, + '$localize`Clearnet and Darknet`': true, '$localize`:@@e5d8bb389c702588877f039d72178f219453a72d:Unknown`': true, } }, From 4bdad54bb20a81ab81b8f8a558a50dba6852dc89 Mon Sep 17 00:00:00 2001 From: hunicus <93150691+hunicus@users.noreply.github.com> Date: Tue, 28 Feb 2023 04:54:31 -0500 Subject: [PATCH 022/130] Link api rate limit note to /enterprise --- frontend/src/app/docs/api-docs/api-docs.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/app/docs/api-docs/api-docs.component.html b/frontend/src/app/docs/api-docs/api-docs.component.html index 47332abc3..8c8d6ac36 100644 --- a/frontend/src/app/docs/api-docs/api-docs.component.html +++ b/frontend/src/app/docs/api-docs/api-docs.component.html @@ -39,7 +39,7 @@

Below is a reference for the {{ network.val === '' ? 'Bitcoin' : network.val.charAt(0).toUpperCase() + network.val.slice(1) }} REST API service.

-

Note that we enforce rate limits. If you exceed these limits, you will get a polite error encouraging you to run your own Mempool instance. If you repeatedly exceed the limits, you may be banned from accessing the service altogether.

+

Note that we enforce rate limits. If you exceed these limits, you will get an HTTP 429 error. If you repeatedly exceed the limits, you may be banned from accessing the service altogether. Consider an enterprise sponsorship if you need higher API limits.

{{ item.title }}

From 73b90fcd250fc19568ad29e16a5f86f024756c6f Mon Sep 17 00:00:00 2001 From: hunicus <93150691+hunicus@users.noreply.github.com> Date: Fri, 24 Feb 2023 09:44:15 -0500 Subject: [PATCH 023/130] Add skeleton for blocks-bulk endpoint --- .../src/app/docs/api-docs/api-docs-data.ts | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/frontend/src/app/docs/api-docs/api-docs-data.ts b/frontend/src/app/docs/api-docs/api-docs-data.ts index a6e8e418f..2c3bbc06b 100644 --- a/frontend/src/app/docs/api-docs/api-docs-data.ts +++ b/frontend/src/app/docs/api-docs/api-docs-data.ts @@ -2907,6 +2907,54 @@ export const restApiDocsData = [ } }, ... +]` + }, + codeSampleLiquid: emptyCodeSample, + codeSampleLiquidTestnet: emptyCodeSample, + codeSampleBisq: emptyCodeSample, + } + } + }, + { + type: "endpoint", + category: "blocks", + httpRequestMethod: "GET", + fragment: "get-blocks-bulk", + title: "GET Blocks (Bulk)", + description: { + default: "Returns details on the range of blocks between :minHeight and :maxHeight, inclusive, up to 100 blocks. If :maxHeight is not specified, :maxHeight defaults to the current tip." + }, + urlString: "/v1/blocks-bulk/:minHeight[/:maxHeight]", + showConditions: bitcoinNetworks, + showJsExamples: showJsExamplesDefaultFalse, + codeExample: { + default: { + codeTemplate: { + curl: `/api/v1/blocks-bulk/%{1}/%{2}`, + commonJS: ``, + }, + codeSampleMainnet: { + esModule: [], + commonJS: [], + curl: [730000, 730100], + response: `[ + +]`, + }, + codeSampleTestnet: { + esModule: ['2091187'], + commonJS: ['2091187'], + curl: ['2091187'], + response: `[ + +]` + }, + codeSampleSignet: { + esModule: ['53783'], + commonJS: ['53783'], + curl: ['53783'], + response: `[ + ]` }, codeSampleLiquid: emptyCodeSample, From f057b07021ef7e678dbf929d2b1ee2275adb5afe Mon Sep 17 00:00:00 2001 From: hunicus <93150691+hunicus@users.noreply.github.com> Date: Sat, 25 Feb 2023 02:26:06 -0500 Subject: [PATCH 024/130] Add note for special availability Indicating that api endpoint is only available for enterprise sponsors. --- .../src/app/docs/api-docs/api-docs-data.ts | 1 + .../app/docs/api-docs/api-docs.component.html | 2 ++ .../app/docs/api-docs/api-docs.component.scss | 22 +++++++++++++++++++ frontend/src/app/shared/shared.module.ts | 3 ++- 4 files changed, 27 insertions(+), 1 deletion(-) diff --git a/frontend/src/app/docs/api-docs/api-docs-data.ts b/frontend/src/app/docs/api-docs/api-docs-data.ts index 2c3bbc06b..525e19320 100644 --- a/frontend/src/app/docs/api-docs/api-docs-data.ts +++ b/frontend/src/app/docs/api-docs/api-docs-data.ts @@ -2927,6 +2927,7 @@ export const restApiDocsData = [ urlString: "/v1/blocks-bulk/:minHeight[/:maxHeight]", showConditions: bitcoinNetworks, showJsExamples: showJsExamplesDefaultFalse, + specialAvailability: { enterprise: true }, codeExample: { default: { codeTemplate: { diff --git a/frontend/src/app/docs/api-docs/api-docs.component.html b/frontend/src/app/docs/api-docs/api-docs.component.html index 47332abc3..4687fe0b2 100644 --- a/frontend/src/app/docs/api-docs/api-docs.component.html +++ b/frontend/src/app/docs/api-docs/api-docs.component.html @@ -46,6 +46,8 @@
AliasAlias Channels Capacity {{ currency$ | async }} First seen Last updateLocationLocation
+
Alias Liquidity{{ currency$ | async }}{{ currency$ | async }} Channels First seen Last update + diff --git a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss index b7ed8cf04..452122d8e 100644 --- a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss +++ b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.scss @@ -45,4 +45,7 @@ tr, td, th { width: 15%; font-family: monospace; font-size: 14px; + @media (max-width: 991px) { + display: none !important; + } } diff --git a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html index 538cae1c2..4bab712a8 100644 --- a/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html +++ b/frontend/src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html @@ -14,7 +14,7 @@ {{ currency$ | async }} First seen Last updateLocationLocation
- {{ node.channels | number }} + {{ node.channels ? (node.channels | number) : '~' }} @@ -40,7 +40,7 @@ +

This endpoint is available to enterprise sponsors.

+

This endpoint is only supported on official mempool.space instances.

Endpoint
diff --git a/frontend/src/app/docs/api-docs/api-docs.component.scss b/frontend/src/app/docs/api-docs/api-docs.component.scss index 92e78bc55..231871db6 100644 --- a/frontend/src/app/docs/api-docs/api-docs.component.scss +++ b/frontend/src/app/docs/api-docs/api-docs.component.scss @@ -284,6 +284,28 @@ h3 { margin-bottom: 0; } +.special-availability { + padding: 16px; + margin-bottom: 15px; + background-color: #1d1f31; +} + +.special-availability table tr td:first-child { + padding-right: 10px; +} + +.special-availability.enterprise fa-icon { + color: #ffc107; +} + +.special-availability.mempoolspace fa-icon { + color: #1bd8f4; +} + +.special-availability p { + margin: 0; +} + @media (max-width: 992px) { h3 { diff --git a/frontend/src/app/shared/shared.module.ts b/frontend/src/app/shared/shared.module.ts index fd257db85..46d831309 100644 --- a/frontend/src/app/shared/shared.module.ts +++ b/frontend/src/app/shared/shared.module.ts @@ -4,7 +4,7 @@ import { NgbCollapseModule, NgbTypeaheadModule } from '@ng-bootstrap/ng-bootstra import { FontAwesomeModule, FaIconLibrary } from '@fortawesome/angular-fontawesome'; import { faFilter, faAngleDown, faAngleUp, faAngleRight, faAngleLeft, faBolt, faChartArea, faCogs, faCubes, faHammer, faDatabase, faExchangeAlt, faInfoCircle, faLink, faList, faSearch, faCaretUp, faCaretDown, faTachometerAlt, faThList, faTint, faTv, faAngleDoubleDown, faSortUp, faAngleDoubleUp, faChevronDown, - faFileAlt, faRedoAlt, faArrowAltCircleRight, faExternalLinkAlt, faBook, faListUl, faDownload, faQrcode, faArrowRightArrowLeft, faArrowsRotate, faCircleLeft } from '@fortawesome/free-solid-svg-icons'; + faFileAlt, faRedoAlt, faArrowAltCircleRight, faExternalLinkAlt, faBook, faListUl, faDownload, faQrcode, faArrowRightArrowLeft, faArrowsRotate, faCircleLeft, faStar } from '@fortawesome/free-solid-svg-icons'; import { InfiniteScrollModule } from 'ngx-infinite-scroll'; import { MasterPageComponent } from '../components/master-page/master-page.component'; import { PreviewTitleComponent } from '../components/master-page-preview/preview-title.component'; @@ -309,5 +309,6 @@ export class SharedModule { library.addIcons(faQrcode); library.addIcons(faArrowRightArrowLeft); library.addIcons(faExchangeAlt); + library.addIcons(faStar); } } From 852513500af5b5fd94415fe6bc842982acf53c3d Mon Sep 17 00:00:00 2001 From: hunicus <93150691+hunicus@users.noreply.github.com> Date: Sun, 26 Feb 2023 03:12:41 -0500 Subject: [PATCH 025/130] Add example responses for blocks-bulk --- .../src/app/docs/api-docs/api-docs-data.ts | 185 +++++++++++++++++- 1 file changed, 175 insertions(+), 10 deletions(-) diff --git a/frontend/src/app/docs/api-docs/api-docs-data.ts b/frontend/src/app/docs/api-docs/api-docs-data.ts index 525e19320..d3d50fe79 100644 --- a/frontend/src/app/docs/api-docs/api-docs-data.ts +++ b/frontend/src/app/docs/api-docs/api-docs-data.ts @@ -2937,25 +2937,190 @@ export const restApiDocsData = [ codeSampleMainnet: { esModule: [], commonJS: [], - curl: [730000, 730100], + curl: [100000,100000], response: `[ - + { + "height": 100000, + "hash": "000000000003ba27aa200b1cecaad478d2b00432346c3f1f3986da1afd33e506", + "timestamp": 1293623863, + "median_timestamp": 1293622620, + "previous_block_hash": "000000000002d01c1fccc21636b607dfd930d31d01c3a62104612a1719011250", + "difficulty": 14484.1623612254, + "header": "0100000050120119172a610421a6c3011dd330d9df07b63616c2cc1f1cd00200000000006657a9252aacd5c0b2940996ecff952228c3067cc38d4885efb5a4ac4247e9f337221b4d4c86041b0f2b5710", + "version": 1, + "bits": 453281356, + "nonce": 274148111, + "size": 957, + "weight": 3828, + "tx_count": 4, + "merkle_root": "f3e94742aca4b5ef85488dc37c06c3282295ffec960994b2c0d5ac2a25a95766", + "reward": 5000000000, + "total_fee_amt": 0, + "avg_fee_amt": 0, + "median_fee_amt": 0, + "fee_amt_percentiles": { + "min": 0, + "perc_10": 0, + "perc_25": 0, + "perc_50": 0, + "perc_75": 0, + "perc_90": 0, + "max": 0 + }, + "avg_fee_rate": 0, + "median_fee_rate": 0, + "fee_rate_percentiles": { + "min": 0, + "perc_10": 0, + "perc_25": 0, + "perc_50": 0, + "perc_75": 0, + "perc_90": 0, + "max": 0 + }, + "total_inputs": 3, + "total_input_amt": 5301000000, + "total_outputs": 6, + "total_output_amt": 5301000000, + "segwit_total_txs": 0, + "segwit_total_size": 0, + "segwit_total_weight": 0, + "avg_tx_size": 185.25, + "utxoset_change": 3, + "utxoset_size": 71888, + "coinbase_raw": "044c86041b020602", + "coinbase_address": null, + "coinbase_signature": "OP_PUSHBYTES_65 041b0e8c2567c12536aa13357b79a073dc4444acb83c4ec7a0e2f99dd7457516c5817242da796924ca4e99947d087fedf9ce467cb9f7c6287078f801df276fdf84 OP_CHECKSIG", + "coinbase_signature_ascii": "\u0004Lïżœ\u0004\u001b\u0002\u0006\u0002", + "pool_slug": "unknown", + "orphans": [] + } ]`, }, codeSampleTestnet: { - esModule: ['2091187'], - commonJS: ['2091187'], - curl: ['2091187'], + esModule: [], + commonJS: [], + curl: [100000,100000], response: `[ - + { + "height": 100000, + "hash": "00000000009e2958c15ff9290d571bf9459e93b19765c6801ddeccadbb160a1e", + "timestamp": 1376123972, + "median_timestamp": 1677396660, + "previous_block_hash": "000000004956cc2edd1a8caa05eacfa3c69f4c490bfc9ace820257834115ab35", + "difficulty": 271.7576739288896, + "header": "0200000035ab154183570282ce9afc0b494c9fc6a3cfea05aa8c1add2ecc56490000000038ba3d78e4500a5a7570dbe61960398add4410d278b21cd9708e6d9743f374d544fc055227f1001c29c1ea3b", + "version": 2, + "bits": 469823783, + "nonce": 1005240617, + "size": 221, + "weight": 884, + "tx_count": 1, + "merkle_root": "d574f343976d8e70d91cb278d21044dd8a396019e6db70755a0a50e4783dba38", + "reward": 5000000000, + "total_fee_amt": 0, + "avg_fee_amt": 0, + "median_fee_amt": 0, + "fee_amt_percentiles": { + "min": 0, + "perc_10": 0, + "perc_25": 0, + "perc_50": 0, + "perc_75": 0, + "perc_90": 0, + "max": 0 + }, + "avg_fee_rate": 0, + "median_fee_rate": 0, + "fee_rate_percentiles": { + "min": 0, + "perc_10": 0, + "perc_25": 0, + "perc_50": 0, + "perc_75": 0, + "perc_90": 0, + "max": 0 + }, + "total_inputs": 0, + "total_input_amt": null, + "total_outputs": 1, + "total_output_amt": 0, + "segwit_total_txs": 0, + "segwit_total_size": 0, + "segwit_total_weight": 0, + "avg_tx_size": 0, + "utxoset_change": 1, + "utxoset_size": null, + "coinbase_raw": "03a08601000427f1001c046a510100522cfabe6d6d0000000000000000000068692066726f6d20706f6f6c7365727665726aac1eeeed88", + "coinbase_address": "mtkbaiLiUH3fvGJeSzuN3kUgmJzqinLejJ", + "coinbase_signature": "OP_DUP OP_HASH160 OP_PUSHBYTES_20 912e2b234f941f30b18afbb4fa46171214bf66c8 OP_EQUALVERIFY OP_CHECKSIG", + "coinbase_signature_ascii": "\u0003 ïżœ\u0001\u0000\u0004'ñ\u0000\u001c\u0004jQ\u0001\u0000R,ĂșŸmm\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000hi from poolserverjÂŹ\u001eĂźĂ­ïżœ", + "pool_slug": "unknown", + "orphans": [] + } ]` }, codeSampleSignet: { - esModule: ['53783'], - commonJS: ['53783'], - curl: ['53783'], + esModule: [], + commonJS: [], + curl: [100000,100000], response: `[ - + { + "height": 100000, + "hash": "0000008753108390007b3f5c26e5d924191567e147876b84489b0c0cf133a0bf", + "timestamp": 1658421183, + "median_timestamp": 1658418056, + "previous_block_hash": "000000b962a13c3dd3f81917bc8646a0c98224adcd5124026d4fdfcb76a76d30", + "difficulty": 0.002781447610743506, + "header": "00000020306da776cbdf4f6d022451cdad2482c9a04686bc1719f8d33d3ca162b90000001367fb15320ebb1932fd589f8f38866b692ca8a4ad6100a4bc732d212916d0efbf7fd9628567011e47662d00", + "version": 536870912, + "bits": 503408517, + "nonce": 2975303, + "size": 343, + "weight": 1264, + "tx_count": 1, + "merkle_root": "efd01629212d73bca40061ada4a82c696b86388f9f58fd3219bb0e3215fb6713", + "reward": 5000000000, + "total_fee_amt": 0, + "avg_fee_amt": 0, + "median_fee_amt": 0, + "fee_amt_percentiles": { + "min": 0, + "perc_10": 0, + "perc_25": 0, + "perc_50": 0, + "perc_75": 0, + "perc_90": 0, + "max": 0 + }, + "avg_fee_rate": 0, + "median_fee_rate": 0, + "fee_rate_percentiles": { + "min": 0, + "perc_10": 0, + "perc_25": 0, + "perc_50": 0, + "perc_75": 0, + "perc_90": 0, + "max": 0 + }, + "total_inputs": 0, + "total_input_amt": null, + "total_outputs": 2, + "total_output_amt": 0, + "segwit_total_txs": 0, + "segwit_total_size": 0, + "segwit_total_weight": 0, + "avg_tx_size": 0, + "utxoset_change": 2, + "utxoset_size": null, + "coinbase_raw": "03a08601", + "coinbase_address": "tb1psfjl80vk0yp3agcq6ylueas29rau00mfq90mhejerpgccg33xhasd9gjyd", + "coinbase_signature": "OP_PUSHNUM_1 OP_PUSHBYTES_32 8265f3bd9679031ea300d13fccf60a28fbc7bf69015fbbe65918518c223135fb", + "coinbase_signature_ascii": "\u0003 ïżœ\u0001", + "pool_slug": "unknown", + "orphans": [] + } ]` }, codeSampleLiquid: emptyCodeSample, From 54f7e59978bd839baae9490ddd26a13a1f9cabf0 Mon Sep 17 00:00:00 2001 From: hunicus <93150691+hunicus@users.noreply.github.com> Date: Tue, 28 Feb 2023 04:15:45 -0500 Subject: [PATCH 026/130] Correct number of blocks returned for bulk-blocks --- frontend/src/app/docs/api-docs/api-docs-data.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/frontend/src/app/docs/api-docs/api-docs-data.ts b/frontend/src/app/docs/api-docs/api-docs-data.ts index d3d50fe79..62d031613 100644 --- a/frontend/src/app/docs/api-docs/api-docs-data.ts +++ b/frontend/src/app/docs/api-docs/api-docs-data.ts @@ -2922,12 +2922,11 @@ export const restApiDocsData = [ fragment: "get-blocks-bulk", title: "GET Blocks (Bulk)", description: { - default: "Returns details on the range of blocks between :minHeight and :maxHeight, inclusive, up to 100 blocks. If :maxHeight is not specified, :maxHeight defaults to the current tip." + default: "

Returns details on the range of blocks between :minHeight and :maxHeight, inclusive, up to 10 blocks. If :maxHeight is not specified, it defaults to the current tip.

To return data for more than 10 blocks, consider becoming an enterprise sponsor.

" }, urlString: "/v1/blocks-bulk/:minHeight[/:maxHeight]", showConditions: bitcoinNetworks, showJsExamples: showJsExamplesDefaultFalse, - specialAvailability: { enterprise: true }, codeExample: { default: { codeTemplate: { From 7e093d912b8422595eff2bbf8c54ee40f04d01d1 Mon Sep 17 00:00:00 2001 From: hunicus <93150691+hunicus@users.noreply.github.com> Date: Tue, 28 Feb 2023 04:39:32 -0500 Subject: [PATCH 027/130] Remove special availability note mechanism --- .../app/docs/api-docs/api-docs.component.html | 2 -- .../app/docs/api-docs/api-docs.component.scss | 22 ------------------- frontend/src/app/shared/shared.module.ts | 3 +-- 3 files changed, 1 insertion(+), 26 deletions(-) diff --git a/frontend/src/app/docs/api-docs/api-docs.component.html b/frontend/src/app/docs/api-docs/api-docs.component.html index 4687fe0b2..47332abc3 100644 --- a/frontend/src/app/docs/api-docs/api-docs.component.html +++ b/frontend/src/app/docs/api-docs/api-docs.component.html @@ -46,8 +46,6 @@
{{ item.title }} {{ item.category }}
-

This endpoint is available to enterprise sponsors.

-

This endpoint is only supported on official mempool.space instances.

Endpoint
diff --git a/frontend/src/app/docs/api-docs/api-docs.component.scss b/frontend/src/app/docs/api-docs/api-docs.component.scss index 231871db6..92e78bc55 100644 --- a/frontend/src/app/docs/api-docs/api-docs.component.scss +++ b/frontend/src/app/docs/api-docs/api-docs.component.scss @@ -284,28 +284,6 @@ h3 { margin-bottom: 0; } -.special-availability { - padding: 16px; - margin-bottom: 15px; - background-color: #1d1f31; -} - -.special-availability table tr td:first-child { - padding-right: 10px; -} - -.special-availability.enterprise fa-icon { - color: #ffc107; -} - -.special-availability.mempoolspace fa-icon { - color: #1bd8f4; -} - -.special-availability p { - margin: 0; -} - @media (max-width: 992px) { h3 { diff --git a/frontend/src/app/shared/shared.module.ts b/frontend/src/app/shared/shared.module.ts index 46d831309..fd257db85 100644 --- a/frontend/src/app/shared/shared.module.ts +++ b/frontend/src/app/shared/shared.module.ts @@ -4,7 +4,7 @@ import { NgbCollapseModule, NgbTypeaheadModule } from '@ng-bootstrap/ng-bootstra import { FontAwesomeModule, FaIconLibrary } from '@fortawesome/angular-fontawesome'; import { faFilter, faAngleDown, faAngleUp, faAngleRight, faAngleLeft, faBolt, faChartArea, faCogs, faCubes, faHammer, faDatabase, faExchangeAlt, faInfoCircle, faLink, faList, faSearch, faCaretUp, faCaretDown, faTachometerAlt, faThList, faTint, faTv, faAngleDoubleDown, faSortUp, faAngleDoubleUp, faChevronDown, - faFileAlt, faRedoAlt, faArrowAltCircleRight, faExternalLinkAlt, faBook, faListUl, faDownload, faQrcode, faArrowRightArrowLeft, faArrowsRotate, faCircleLeft, faStar } from '@fortawesome/free-solid-svg-icons'; + faFileAlt, faRedoAlt, faArrowAltCircleRight, faExternalLinkAlt, faBook, faListUl, faDownload, faQrcode, faArrowRightArrowLeft, faArrowsRotate, faCircleLeft } from '@fortawesome/free-solid-svg-icons'; import { InfiniteScrollModule } from 'ngx-infinite-scroll'; import { MasterPageComponent } from '../components/master-page/master-page.component'; import { PreviewTitleComponent } from '../components/master-page-preview/preview-title.component'; @@ -309,6 +309,5 @@ export class SharedModule { library.addIcons(faQrcode); library.addIcons(faArrowRightArrowLeft); library.addIcons(faExchangeAlt); - library.addIcons(faStar); } } From f09a2aab241da0c8018b614db44d880537645103 Mon Sep 17 00:00:00 2001 From: Mononaut Date: Tue, 28 Feb 2023 21:30:20 -0600 Subject: [PATCH 028/130] Reset scrolling blockchain cache when network changes --- frontend/src/app/services/cache.service.ts | 25 +++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/frontend/src/app/services/cache.service.ts b/frontend/src/app/services/cache.service.ts index 15ef99859..5eefd6e0a 100644 --- a/frontend/src/app/services/cache.service.ts +++ b/frontend/src/app/services/cache.service.ts @@ -17,6 +17,7 @@ export class CacheService { txCache: { [txid: string]: Transaction } = {}; + network: string; blockCache: { [height: number]: BlockExtended } = {}; blockLoading: { [height: number]: boolean } = {}; copiesInBlockQueue: { [height: number]: number } = {}; @@ -33,6 +34,10 @@ export class CacheService { this.stateService.chainTip$.subscribe((height) => { this.tip = height; }); + this.stateService.networkChanged$.subscribe((network) => { + this.network = network; + this.resetBlockCache(); + }); } setTxCache(transactions) { @@ -68,15 +73,17 @@ export class CacheService { } catch (e) { console.log("failed to load blocks: ", e.message); } - for (let i = 0; i < chunkSize; i++) { - delete this.blockLoading[maxHeight - i]; - } if (result && result.length) { result.forEach(block => { - this.addBlockToCache(block); - this.loadedBlocks$.next(block); + if (this.blockLoading[block.height]) { + this.addBlockToCache(block); + this.loadedBlocks$.next(block); + } }); } + for (let i = 0; i < chunkSize; i++) { + delete this.blockLoading[maxHeight - i]; + } this.clearBlocks(); } else { this.bumpBlockPriority(height); @@ -104,6 +111,14 @@ export class CacheService { } } + // remove all blocks from the cache + resetBlockCache() { + this.blockCache = {}; + this.blockLoading = {}; + this.copiesInBlockQueue = {}; + this.blockPriorities = []; + } + getCachedBlock(height) { return this.blockCache[height]; } From af2e3cb42a33a873c24e54cbe6f89de7464f608f Mon Sep 17 00:00:00 2001 From: Mononaut Date: Tue, 28 Feb 2023 21:36:16 -0600 Subject: [PATCH 029/130] Center-align blockchain after resetting scroll --- frontend/src/app/components/start/start.component.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/frontend/src/app/components/start/start.component.ts b/frontend/src/app/components/start/start.component.ts index c7b8a83bc..0855cad05 100644 --- a/frontend/src/app/components/start/start.component.ts +++ b/frontend/src/app/components/start/start.component.ts @@ -267,6 +267,7 @@ export class StartComponent implements OnInit, OnDestroy { resetScroll(): void { this.scrollToBlock(this.chainTip); + this.blockchainContainer.nativeElement.scrollLeft = 0; } getPageIndexOf(height: number): number { From a67656389ea75f591b90f9164b717d7629038a66 Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Wed, 1 Mar 2023 13:50:15 +0900 Subject: [PATCH 030/130] Fix chain divergence detection upon new block (use the new interface) --- backend/src/api/blocks.ts | 14 +++++++------- backend/src/repositories/BlocksRepository.ts | 11 +++++++++-- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/backend/src/api/blocks.ts b/backend/src/api/blocks.ts index 75d1ec300..12eb3b693 100644 --- a/backend/src/api/blocks.ts +++ b/backend/src/api/blocks.ts @@ -570,18 +570,18 @@ class Blocks { if (Common.indexingEnabled()) { if (!fastForwarded) { const lastBlock = await blocksRepository.$getBlockByHeight(blockExtended.height - 1); - if (lastBlock !== null && blockExtended.previousblockhash !== lastBlock['hash']) { - logger.warn(`Chain divergence detected at block ${lastBlock['height']}, re-indexing most recent data`); + if (lastBlock !== null && blockExtended.previousblockhash !== lastBlock.id) { + logger.warn(`Chain divergence detected at block ${lastBlock.height}, re-indexing most recent data`); // We assume there won't be a reorg with more than 10 block depth - await BlocksRepository.$deleteBlocksFrom(lastBlock['height'] - 10); + await BlocksRepository.$deleteBlocksFrom(lastBlock.height - 10); await HashratesRepository.$deleteLastEntries(); - await BlocksSummariesRepository.$deleteBlocksFrom(lastBlock['height'] - 10); - await cpfpRepository.$deleteClustersFrom(lastBlock['height'] - 10); + await BlocksSummariesRepository.$deleteBlocksFrom(lastBlock.height - 10); + await cpfpRepository.$deleteClustersFrom(lastBlock.height - 10); for (let i = 10; i >= 0; --i) { - const newBlock = await this.$indexBlock(lastBlock['height'] - i); + const newBlock = await this.$indexBlock(lastBlock.height - i); await this.$getStrippedBlockTransactions(newBlock.id, true, true); if (config.MEMPOOL.CPFP_INDEXING) { - await this.$indexCPFP(newBlock.id, lastBlock['height'] - i); + await this.$indexCPFP(newBlock.id, lastBlock.height - i); } } await mining.$indexDifficultyAdjustments(); diff --git a/backend/src/repositories/BlocksRepository.ts b/backend/src/repositories/BlocksRepository.ts index 9cd31bbab..80df1ac92 100644 --- a/backend/src/repositories/BlocksRepository.ts +++ b/backend/src/repositories/BlocksRepository.ts @@ -525,8 +525,15 @@ class BlocksRepository { public async $validateChain(): Promise { try { const start = new Date().getTime(); - const [blocks]: any[] = await DB.query(`SELECT height, hash, previous_block_hash, - UNIX_TIMESTAMP(blockTimestamp) as timestamp FROM blocks ORDER BY height`); + const [blocks]: any[] = await DB.query(` + SELECT + height, + hash, + previous_block_hash, + UNIX_TIMESTAMP(blockTimestamp) AS timestamp + FROM blocks + ORDER BY height + `); let partialMsg = false; let idx = 1; From 8aebcf3e570ecd5aad90218c906a45ba9584baea Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Sat, 25 Feb 2023 11:28:44 +0900 Subject: [PATCH 031/130] Remove mining db stats - replaced by runtime state variable --- backend/src/api/database-migration.ts | 12 +++++++++- backend/src/api/mining/mining.ts | 24 +++++++++---------- backend/src/index.ts | 3 --- backend/src/indexer.ts | 12 ---------- .../src/repositories/HashratesRepository.ts | 23 ++++-------------- 5 files changed, 28 insertions(+), 46 deletions(-) diff --git a/backend/src/api/database-migration.ts b/backend/src/api/database-migration.ts index f4801deb6..6216e7f2b 100644 --- a/backend/src/api/database-migration.ts +++ b/backend/src/api/database-migration.ts @@ -7,7 +7,7 @@ import cpfpRepository from '../repositories/CpfpRepository'; import { RowDataPacket } from 'mysql2'; class DatabaseMigration { - private static currentVersion = 57; + private static currentVersion = 58; private queryTimeout = 3600_000; private statisticsAddedIndexed = false; private uniqueLogs: string[] = []; @@ -505,6 +505,11 @@ class DatabaseMigration { await this.$executeQuery(`ALTER TABLE nodes MODIFY updated_at datetime NULL`); await this.updateToSchemaVersion(57); } + + if (databaseSchemaVersion < 58) { + // We only run some migration queries for this version + await this.updateToSchemaVersion(58); + } } /** @@ -632,6 +637,11 @@ class DatabaseMigration { queries.push(`INSERT INTO state(name, number, string) VALUES ('last_weekly_hashrates_indexing', 0, NULL)`); } + if (version < 55) { + queries.push(`DELETE FROM state WHERE name = 'last_hashrates_indexing'`); + queries.push(`DELETE FROM state WHERE name = 'last_weekly_hashrates_indexing'`); + } + return queries; } diff --git a/backend/src/api/mining/mining.ts b/backend/src/api/mining/mining.ts index f33a68dcb..347752f99 100644 --- a/backend/src/api/mining/mining.ts +++ b/backend/src/api/mining/mining.ts @@ -13,10 +13,9 @@ import BlocksAuditsRepository from '../../repositories/BlocksAuditsRepository'; import PricesRepository from '../../repositories/PricesRepository'; class Mining { - blocksPriceIndexingRunning = false; - - constructor() { - } + private blocksPriceIndexingRunning = false; + public lastHashrateIndexingDate: number | null = null; + public lastWeeklyHashrateIndexingDate: number | null = null; /** * Get historical block predictions match rate @@ -176,13 +175,14 @@ class Mining { */ public async $generatePoolHashrateHistory(): Promise { const now = new Date(); - const lastestRunDate = await HashratesRepository.$getLatestRun('last_weekly_hashrates_indexing'); // Run only if: - // * lastestRunDate is set to 0 (node backend restart, reorg) + // * this.lastWeeklyHashrateIndexingDate is set to null (node backend restart, reorg) // * we started a new week (around Monday midnight) - const runIndexing = lastestRunDate === 0 || now.getUTCDay() === 1 && lastestRunDate !== now.getUTCDate(); + const runIndexing = this.lastWeeklyHashrateIndexingDate === null || + now.getUTCDay() === 1 && this.lastWeeklyHashrateIndexingDate !== now.getUTCDate(); if (!runIndexing) { + logger.debug(`Pool hashrate history indexing is up to date, nothing to do`, logger.tags.mining); return; } @@ -264,7 +264,7 @@ class Mining { ++indexedThisRun; ++totalIndexed; } - await HashratesRepository.$setLatestRun('last_weekly_hashrates_indexing', new Date().getUTCDate()); + this.lastWeeklyHashrateIndexingDate = new Date().getUTCDate(); if (newlyIndexed > 0) { logger.notice(`Weekly mining pools hashrates indexing completed: indexed ${newlyIndexed}`, logger.tags.mining); } else { @@ -283,9 +283,9 @@ class Mining { */ public async $generateNetworkHashrateHistory(): Promise { // We only run this once a day around midnight - const latestRunDate = await HashratesRepository.$getLatestRun('last_hashrates_indexing'); - const now = new Date().getUTCDate(); - if (now === latestRunDate) { + const today = new Date().getUTCDate(); + if (today === this.lastHashrateIndexingDate) { + logger.debug(`Network hashrate history indexing is up to date, nothing to do`, logger.tags.mining); return; } @@ -369,7 +369,7 @@ class Mining { newlyIndexed += hashrates.length; await HashratesRepository.$saveHashrates(hashrates); - await HashratesRepository.$setLatestRun('last_hashrates_indexing', new Date().getUTCDate()); + this.lastHashrateIndexingDate = new Date().getUTCDate(); if (newlyIndexed > 0) { logger.notice(`Daily network hashrate indexing completed: indexed ${newlyIndexed} days`, logger.tags.mining); } else { diff --git a/backend/src/index.ts b/backend/src/index.ts index 6f259a2bd..05c2ffa83 100644 --- a/backend/src/index.ts +++ b/backend/src/index.ts @@ -87,9 +87,6 @@ class Server { await databaseMigration.$blocksReindexingTruncate(); } await databaseMigration.$initializeOrMigrateDatabase(); - if (Common.indexingEnabled()) { - await indexer.$resetHashratesIndexingState(); - } } catch (e) { throw new Error(e instanceof Error ? e.message : 'Error'); } diff --git a/backend/src/indexer.ts b/backend/src/indexer.ts index 41c8024e0..1665e443f 100644 --- a/backend/src/indexer.ts +++ b/backend/src/indexer.ts @@ -3,7 +3,6 @@ import blocks from './api/blocks'; import mempool from './api/mempool'; import mining from './api/mining/mining'; import logger from './logger'; -import HashratesRepository from './repositories/HashratesRepository'; import bitcoinClient from './api/bitcoin/bitcoin-client'; import priceUpdater from './tasks/price-updater'; import PricesRepository from './repositories/PricesRepository'; @@ -131,7 +130,6 @@ class Indexer { this.runSingleTask('blocksPrices'); await mining.$indexDifficultyAdjustments(); - await this.$resetHashratesIndexingState(); // TODO - Remove this as it's not efficient await mining.$generateNetworkHashrateHistory(); await mining.$generatePoolHashrateHistory(); await blocks.$generateBlocksSummariesDatabase(); @@ -150,16 +148,6 @@ class Indexer { logger.debug(`Indexing completed. Next run planned at ${new Date(new Date().getTime() + runEvery).toUTCString()}`); setTimeout(() => this.reindex(), runEvery); } - - async $resetHashratesIndexingState(): Promise { - try { - await HashratesRepository.$setLatestRun('last_hashrates_indexing', 0); - await HashratesRepository.$setLatestRun('last_weekly_hashrates_indexing', 0); - } catch (e) { - logger.err(`Cannot reset hashrate indexing timestamps. Reason: ` + (e instanceof Error ? e.message : e)); - throw e; - } - } } export default new Indexer(); diff --git a/backend/src/repositories/HashratesRepository.ts b/backend/src/repositories/HashratesRepository.ts index e5a193477..c380e87d9 100644 --- a/backend/src/repositories/HashratesRepository.ts +++ b/backend/src/repositories/HashratesRepository.ts @@ -1,5 +1,6 @@ import { escape } from 'mysql2'; import { Common } from '../api/common'; +import mining from '../api/mining/mining'; import DB from '../database'; import logger from '../logger'; import PoolsRepository from './PoolsRepository'; @@ -177,20 +178,6 @@ class HashratesRepository { } } - /** - * Set latest run timestamp - */ - public async $setLatestRun(key: string, val: number) { - const query = `UPDATE state SET number = ? WHERE name = ?`; - - try { - await DB.query(query, [val, key]); - } catch (e) { - logger.err(`Cannot set last indexing run for ${key}. Reason: ` + (e instanceof Error ? e.message : e)); - throw e; - } - } - /** * Get latest run timestamp */ @@ -222,8 +209,8 @@ class HashratesRepository { await DB.query(`DELETE FROM hashrates WHERE hashrate_timestamp = ?`, [row.timestamp]); } // Re-run the hashrate indexing to fill up missing data - await this.$setLatestRun('last_hashrates_indexing', 0); - await this.$setLatestRun('last_weekly_hashrates_indexing', 0); + mining.lastHashrateIndexingDate = null; + mining.lastWeeklyHashrateIndexingDate = null; } catch (e) { logger.err('Cannot delete latest hashrates data points. Reason: ' + (e instanceof Error ? e.message : e)); } @@ -238,8 +225,8 @@ class HashratesRepository { try { await DB.query(`DELETE FROM hashrates WHERE hashrate_timestamp >= FROM_UNIXTIME(?)`, [timestamp]); // Re-run the hashrate indexing to fill up missing data - await this.$setLatestRun('last_hashrates_indexing', 0); - await this.$setLatestRun('last_weekly_hashrates_indexing', 0); + mining.lastHashrateIndexingDate = null; + mining.lastWeeklyHashrateIndexingDate = null; } catch (e) { logger.err('Cannot delete latest hashrates data points. Reason: ' + (e instanceof Error ? e.message : e)); } From 87d678e268c7f5dfed8df4060d7c2048ea156116 Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Wed, 1 Mar 2023 16:52:24 +0900 Subject: [PATCH 032/130] Run ln forensics last --- backend/src/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/src/index.ts b/backend/src/index.ts index 6f259a2bd..0ef107b76 100644 --- a/backend/src/index.ts +++ b/backend/src/index.ts @@ -199,8 +199,8 @@ class Server { try { await fundingTxFetcher.$init(); await networkSyncService.$startService(); - await forensicsService.$startService(); await lightningStatsUpdater.$startService(); + await forensicsService.$startService(); } catch(e) { logger.err(`Nodejs lightning backend crashed. Restarting in 1 minute. Reason: ${(e instanceof Error ? e.message : e)}`); await Common.sleep$(1000 * 60); From d5342a4e9aaa944aa19ebf53b6fc1e0639527532 Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Wed, 1 Mar 2023 17:26:53 +0900 Subject: [PATCH 033/130] Add frontend config flag to toggle historical price fetching --- docker/frontend/entrypoint.sh | 2 ++ frontend/mempool-frontend-config.sample.json | 3 ++- frontend/src/app/services/price.service.ts | 2 +- frontend/src/app/services/state.service.ts | 2 ++ 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/docker/frontend/entrypoint.sh b/docker/frontend/entrypoint.sh index 18cb782e9..45d852c45 100644 --- a/docker/frontend/entrypoint.sh +++ b/docker/frontend/entrypoint.sh @@ -35,6 +35,7 @@ __AUDIT__=${AUDIT:=false} __MAINNET_BLOCK_AUDIT_START_HEIGHT__=${MAINNET_BLOCK_AUDIT_START_HEIGHT:=0} __TESTNET_BLOCK_AUDIT_START_HEIGHT__=${TESTNET_BLOCK_AUDIT_START_HEIGHT:=0} __SIGNET_BLOCK_AUDIT_START_HEIGHT__=${SIGNET_BLOCK_AUDIT_START_HEIGHT:=0} +__HISTORICAL_PRICE__=${HISTORICAL_PRICE:=true} # Export as environment variables to be used by envsubst export __TESTNET_ENABLED__ @@ -60,6 +61,7 @@ export __AUDIT__ export __MAINNET_BLOCK_AUDIT_START_HEIGHT__ export __TESTNET_BLOCK_AUDIT_START_HEIGHT__ export __SIGNET_BLOCK_AUDIT_START_HEIGHT__ +export __HISTORICAL_PRICE__ folder=$(find /var/www/mempool -name "config.js" | xargs dirname) echo ${folder} diff --git a/frontend/mempool-frontend-config.sample.json b/frontend/mempool-frontend-config.sample.json index 9035315a4..084cbd0ef 100644 --- a/frontend/mempool-frontend-config.sample.json +++ b/frontend/mempool-frontend-config.sample.json @@ -21,5 +21,6 @@ "MAINNET_BLOCK_AUDIT_START_HEIGHT": 0, "TESTNET_BLOCK_AUDIT_START_HEIGHT": 0, "SIGNET_BLOCK_AUDIT_START_HEIGHT": 0, - "LIGHTNING": false + "LIGHTNING": false, + "HISTORICAL_PRICE": true } diff --git a/frontend/src/app/services/price.service.ts b/frontend/src/app/services/price.service.ts index e3ec93c8b..93c4ce449 100644 --- a/frontend/src/app/services/price.service.ts +++ b/frontend/src/app/services/price.service.ts @@ -70,7 +70,7 @@ export class PriceService { } getBlockPrice$(blockTimestamp: number, singlePrice = false): Observable { - if (this.stateService.env.BASE_MODULE !== 'mempool') { + if (this.stateService.env.BASE_MODULE !== 'mempool' || !this.stateService.env.HISTORICAL_PRICE) { return of(undefined); } diff --git a/frontend/src/app/services/state.service.ts b/frontend/src/app/services/state.service.ts index 33de7823d..c56a5e79e 100644 --- a/frontend/src/app/services/state.service.ts +++ b/frontend/src/app/services/state.service.ts @@ -43,6 +43,7 @@ export interface Env { MAINNET_BLOCK_AUDIT_START_HEIGHT: number; TESTNET_BLOCK_AUDIT_START_HEIGHT: number; SIGNET_BLOCK_AUDIT_START_HEIGHT: number; + HISTORICAL_PRICE: boolean; } const defaultEnv: Env = { @@ -72,6 +73,7 @@ const defaultEnv: Env = { 'MAINNET_BLOCK_AUDIT_START_HEIGHT': 0, 'TESTNET_BLOCK_AUDIT_START_HEIGHT': 0, 'SIGNET_BLOCK_AUDIT_START_HEIGHT': 0, + 'HISTORICAL_PRICE': true, }; @Injectable({ From 9c5a9f2eba71abab75086d41f64cacb6a87edfff Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Wed, 1 Mar 2023 17:33:37 +0900 Subject: [PATCH 034/130] Only run migration 57 if bitcoin --- backend/src/api/database-migration.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/src/api/database-migration.ts b/backend/src/api/database-migration.ts index f4801deb6..d40637e74 100644 --- a/backend/src/api/database-migration.ts +++ b/backend/src/api/database-migration.ts @@ -501,7 +501,7 @@ class DatabaseMigration { await this.updateToSchemaVersion(56); } - if (databaseSchemaVersion < 57) { + if (databaseSchemaVersion < 57 && isBitcoin === true) { await this.$executeQuery(`ALTER TABLE nodes MODIFY updated_at datetime NULL`); await this.updateToSchemaVersion(57); } From 9043d23a03753d42359de28674495e8c11a8e431 Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Wed, 1 Mar 2023 19:11:03 +0900 Subject: [PATCH 035/130] Ignore negative USD prices --- backend/src/repositories/PricesRepository.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/src/repositories/PricesRepository.ts b/backend/src/repositories/PricesRepository.ts index 83336eaff..6493735ee 100644 --- a/backend/src/repositories/PricesRepository.ts +++ b/backend/src/repositories/PricesRepository.ts @@ -40,7 +40,7 @@ export const MAX_PRICES = { class PricesRepository { public async $savePrices(time: number, prices: IConversionRates): Promise { - if (prices.USD === 0) { + if (prices.USD === -1) { // Some historical price entries have no USD prices, so we just ignore them to avoid future UX issues // As of today there are only 4 (on 2013-09-05, 2013-0909, 2013-09-12 and 2013-09-26) so that's fine return; From 3265b32a5688ba77f94b5cda995666ba27fc06e5 Mon Sep 17 00:00:00 2001 From: softsimon Date: Wed, 1 Mar 2023 19:14:54 +0900 Subject: [PATCH 036/130] Pull from transifex 1/3 --- frontend/src/locale/messages.fr.xlf | 688 +++++++++++++++++++--------- frontend/src/locale/messages.mk.xlf | 649 +++++++++++++++++--------- frontend/src/locale/messages.vi.xlf | 688 +++++++++++++++++++--------- 3 files changed, 1340 insertions(+), 685 deletions(-) diff --git a/frontend/src/locale/messages.fr.xlf b/frontend/src/locale/messages.fr.xlf index 61342d809..476dd8cfe 100644 --- a/frontend/src/locale/messages.fr.xlf +++ b/frontend/src/locale/messages.fr.xlf @@ -11,6 +11,7 @@ Slide of + Diapositive de node_modules/src/carousel/carousel.ts 175,181 @@ -147,6 +148,7 @@ + node_modules/src/progressbar/progressbar.ts 30,33 @@ -357,11 +359,11 @@ src/app/components/block/block.component.html - 290,291 + 310,311 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 26,27 + 46,47 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -382,11 +384,11 @@ src/app/components/block/block.component.html - 291,292 + 311,312 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 27,28 + 47,48 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -424,7 +426,7 @@ src/app/components/block/block.component.html - 40,41 + 38,39 block.hash @@ -449,7 +451,7 @@ src/app/components/block/block.component.html - 44,46 + 42,44 src/app/components/blocks-list/blocks-list.component.html @@ -592,11 +594,11 @@ src/app/components/master-page/master-page.component.html - 49,51 + 48,50 src/app/components/pool-ranking/pool-ranking.component.html - 94,96 + 94,95 @@ -775,14 +777,22 @@ src/app/components/about/about.component.html 385,389 + + src/app/components/mining-dashboard/mining-dashboard.component.html + 88 + src/app/dashboard/dashboard.component.html - 150,152 + 157,159 src/app/docs/docs/docs.component.html 51 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 97 + Terms of Service shared.terms-of-service @@ -793,14 +803,22 @@ src/app/bisq/bisq-main-dashboard/bisq-main-dashboard.component.html 113,120 + + src/app/components/mining-dashboard/mining-dashboard.component.html + 90 + src/app/dashboard/dashboard.component.html - 152,154 + 159,161 src/app/docs/docs/docs.component.html 53 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 99 + Privacy Policy shared.privacy-policy @@ -988,7 +1006,7 @@ src/app/dashboard/dashboard.component.html - 124,125 + 124,126 @@ -1036,7 +1054,7 @@ src/app/components/transaction/transaction.component.html - 158,160 + 152,154 src/app/components/transactions-list/transactions-list.component.html @@ -1052,11 +1070,11 @@ src/app/components/block/block.component.html - 246,247 + 252,253 src/app/components/transaction/transaction.component.html - 288,290 + 282,284 transaction.version @@ -1106,7 +1124,7 @@ src/app/components/transactions-list/transactions-list.component.html - 294,295 + 296,297 Transaction singular confirmation count shared.confirmation-count.singular @@ -1128,7 +1146,7 @@ src/app/components/transactions-list/transactions-list.component.html - 295,296 + 297,298 Transaction plural confirmation count shared.confirmation-count.plural @@ -1140,10 +1158,6 @@ src/app/bisq/bisq-transaction/bisq-transaction.component.html 43,45 - - src/app/components/transaction/transaction.component.html - 65,67 - Transaction included in block transaction.included-in-block @@ -1156,11 +1170,11 @@ src/app/components/transaction/transaction.component.html - 77,80 + 71,74 src/app/components/transaction/transaction.component.html - 135,138 + 129,132 Transaction features transaction.features @@ -1188,11 +1202,11 @@ src/app/components/transaction/transaction.component.html - 262,267 + 256,261 src/app/components/transaction/transaction.component.html - 406,412 + 400,406 transaction.details @@ -1209,11 +1223,11 @@ src/app/components/transaction/transaction.component.html - 249,253 + 243,247 src/app/components/transaction/transaction.component.html - 377,383 + 371,377 Transaction inputs and outputs transaction.inputs-and-outputs @@ -1231,7 +1245,7 @@ src/app/components/transaction/transaction.component.ts - 241,240 + 244,243 @@ -1251,7 +1265,7 @@ src/app/components/transaction/transaction.component.html - 159,160 + 153,154 src/app/dashboard/dashboard.component.html @@ -1267,7 +1281,7 @@ src/app/components/transaction/transaction.component.html - 72,73 + 66,67 Transaction Confirmed state transaction.confirmed @@ -1530,7 +1544,7 @@ src/app/components/master-page/master-page.component.html - 58,61 + 57,60 @@ -1567,7 +1581,7 @@ src/app/components/amount/amount.component.html - 6,9 + 18,21 src/app/components/asset-circulation/asset-circulation.component.html @@ -1583,7 +1597,7 @@ src/app/components/transactions-list/transactions-list.component.html - 302,304 + 304,306 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -1666,7 +1680,7 @@ src/app/components/assets/assets.component.html - 29,31 + 31,33 src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html @@ -1888,7 +1902,7 @@ src/app/components/assets/assets.component.html - 30,31 + 32,33 Asset ticker header @@ -1901,7 +1915,7 @@ src/app/components/assets/assets.component.html - 31,34 + 33,36 Asset Issuer Domain header @@ -1914,7 +1928,7 @@ src/app/components/assets/assets.component.html - 32,36 + 34,38 Asset ID header @@ -1923,7 +1937,7 @@ Erreur lors du chargement des donnĂ©es des actifs. src/app/components/assets/assets.component.html - 48,53 + 50,55 Asset data load error @@ -2047,7 +2061,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 161 + 165 @@ -2063,7 +2077,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 163 + 167 @@ -2075,7 +2089,7 @@ src/app/components/block-fees-graph/block-fees-graph.component.ts - 62 + 67 src/app/components/graphs/graphs.component.html @@ -2088,15 +2102,15 @@ Indexage des blocs src/app/components/block-fees-graph/block-fees-graph.component.ts - 110,105 + 116,111 src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 108,103 + 113,108 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 115,110 + 116,111 src/app/components/hashrate-chart/hashrate-chart.component.ts @@ -2121,6 +2135,7 @@ not available + pas disponible src/app/components/block-overview-graph/block-overview-graph.component.html 5 @@ -2140,7 +2155,7 @@ src/app/components/transaction/transaction.component.html - 476 + 472 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -2166,11 +2181,11 @@ src/app/components/transaction/transaction.component.html - 476,477 + 472 src/app/components/transactions-list/transactions-list.component.html - 286,287 + 288 sat shared.sat @@ -2184,11 +2199,11 @@ src/app/components/transaction/transaction.component.html - 161,165 + 155,159 src/app/components/transaction/transaction.component.html - 479,481 + 475,477 src/app/lightning/channel/channel-box/channel-box.component.html @@ -2200,7 +2215,7 @@ src/app/lightning/channels-list/channels-list.component.html - 38,39 + 41,42 Transaction fee rate transaction.fee-rate @@ -2218,19 +2233,19 @@ src/app/components/block/block.component.html - 125,128 + 124,127 src/app/components/block/block.component.html - 129 + 128,130 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 12,14 + 19,22 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 15,17 + 30,33 src/app/components/fees-box/fees-box.component.html @@ -2270,27 +2285,27 @@ src/app/components/transaction/transaction.component.html - 173,174 + 167,168 src/app/components/transaction/transaction.component.html - 184,185 + 178,179 src/app/components/transaction/transaction.component.html - 195,196 + 189,190 src/app/components/transaction/transaction.component.html - 481,484 + 477,480 src/app/components/transaction/transaction.component.html - 492,494 + 488,490 src/app/components/transactions-list/transactions-list.component.html - 286 + 286,287 src/app/dashboard/dashboard.component.html @@ -2298,7 +2313,7 @@ src/app/dashboard/dashboard.component.html - 204,208 + 213,217 sat/vB shared.sat-vbyte @@ -2312,17 +2327,18 @@ src/app/components/transaction/transaction.component.html - 160,162 + 154,156 src/app/components/transaction/transaction.component.html - 274,277 + 268,271 Transaction Virtual Size transaction.vsize Audit status + État de l'audit src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 36 @@ -2331,6 +2347,7 @@ Match + Correspond src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 38 @@ -2339,6 +2356,7 @@ Removed + SupprimĂ©e src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 39 @@ -2347,6 +2365,7 @@ Marginal fee rate + Taux de frais marginal src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 40 @@ -2359,6 +2378,7 @@ Recently broadcasted + RĂ©cemment envoyĂ©e src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 41 @@ -2424,7 +2444,7 @@ src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 60 + 65 src/app/components/graphs/graphs.component.html @@ -2454,15 +2474,15 @@ Taille src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 180,179 + 184,183 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 226,224 + 239,237 src/app/components/block/block.component.html - 50,52 + 48,50 src/app/components/blocks-list/blocks-list.component.html @@ -2486,7 +2506,7 @@ src/app/components/transaction/transaction.component.html - 270,272 + 264,266 src/app/dashboard/dashboard.component.html @@ -2498,11 +2518,11 @@ Poids src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 188,187 + 192,191 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 257,254 + 270,267 src/app/components/block/block-preview.component.html @@ -2510,11 +2530,23 @@ src/app/components/block/block.component.html - 54,56 + 52,54 src/app/components/transaction/transaction.component.html - 278,280 + 272,274 + + + + Size per weight + Taille par poids + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 200,199 + + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 282,279 @@ -2530,15 +2562,6 @@ shared.block-title - - - - - src/app/components/block/block-preview.component.html - 11,12 - - shared.block-title - Median fee Frais mĂ©dian @@ -2548,7 +2571,7 @@ src/app/components/block/block.component.html - 128,129 + 127,128 src/app/components/mempool-block/mempool-block.component.html @@ -2565,11 +2588,11 @@ src/app/components/block/block.component.html - 133,135 + 138,140 src/app/components/block/block.component.html - 159,162 + 164,167 src/app/components/mempool-block/mempool-block.component.html @@ -2587,7 +2610,7 @@ src/app/components/block/block.component.html - 168,170 + 173,175 block.miner @@ -2600,7 +2623,7 @@ src/app/components/block/block.component.ts - 227 + 242 @@ -2625,25 +2648,42 @@ Previous Block - - Block health + + Health + SantĂ© src/app/components/block/block.component.html - 58,61 + 56 - block.health + + src/app/components/blocks-list/blocks-list.component.html + 18,19 + + + src/app/components/blocks-list/blocks-list.component.html + 18,19 + + latest-blocks.health Unknown Inconnue src/app/components/block/block.component.html - 69,72 + 67,70 src/app/components/blocks-list/blocks-list.component.html 60,63 + + src/app/components/pool-ranking/pool-ranking.component.html + 121,124 + + + src/app/lightning/channel/closing-type/closing-type.component.ts + 32 + src/app/lightning/node/node.component.html 52,55 @@ -2667,7 +2707,7 @@ L'envergure des frais src/app/components/block/block.component.html - 124,125 + 123,124 src/app/components/mempool-block/mempool-block.component.html @@ -2680,7 +2720,7 @@ BasĂ© sur une transaction segwit standard de 140 vBytes src/app/components/block/block.component.html - 129,131 + 131,136 src/app/components/fees-box/fees-box.component.html @@ -2704,49 +2744,66 @@ Transaction fee tooltip - - Subsidy + fees: - Subvention + frais: + + Subsidy + fees + Subvention + frais src/app/components/block/block.component.html - 148,151 + 153,156 src/app/components/block/block.component.html - 163,167 + 168,172 Total subsidy and fees in a block block.subsidy-and-fees - - Projected + + Expected + Attendu src/app/components/block/block.component.html - 210,212 + 216 - block.projected + block.expected + + + beta + bĂȘta + + src/app/components/block/block.component.html + 216,217 + + + src/app/components/block/block.component.html + 222,224 + + beta Actual + RĂ©el src/app/components/block/block.component.html - 212,216 + 218,222 block.actual - - Projected Block + + Expected Block + Bloc attendu src/app/components/block/block.component.html - 216,218 + 222 - block.projected-block + block.expected-block Actual Block + Bloc rĂ©el src/app/components/block/block.component.html - 225,227 + 231 block.actual-block @@ -2755,7 +2812,7 @@ Bits src/app/components/block/block.component.html - 250,252 + 256,258 block.bits @@ -2764,7 +2821,7 @@ racine de Merkle src/app/components/block/block.component.html - 254,256 + 260,262 block.merkle-root @@ -2773,7 +2830,7 @@ DifficultĂ© src/app/components/block/block.component.html - 265,268 + 271,274 src/app/components/difficulty-adjustments-table/difficulty-adjustments-table.component.html @@ -2802,7 +2859,7 @@ Nonce src/app/components/block/block.component.html - 269,271 + 275,277 block.nonce @@ -2811,20 +2868,30 @@ Hex d'en-tĂȘte de bloc src/app/components/block/block.component.html - 273,274 + 279,280 block.header + + Audit + Audit + + src/app/components/block/block.component.html + 297,301 + + Toggle Audit + block.toggle-audit + Details DĂ©tails src/app/components/block/block.component.html - 284,288 + 304,308 src/app/components/transaction/transaction.component.html - 254,259 + 248,253 src/app/lightning/channel/channel.component.html @@ -2846,11 +2913,11 @@ Une erreur est survenue lors du chargement. src/app/components/block/block.component.html - 303,305 + 323,325 src/app/components/block/block.component.html - 339,343 + 362,366 src/app/lightning/channel/channel-preview.component.html @@ -2872,9 +2939,10 @@ Why is this block empty? + Pourquoi ce bloc est-il vide ? src/app/components/block/block.component.html - 361,367 + 384,390 block.empty-block-explanation @@ -2920,18 +2988,6 @@ latest-blocks.mined - - Health - - src/app/components/blocks-list/blocks-list.component.html - 18,19 - - - src/app/components/blocks-list/blocks-list.component.html - 18,19 - - latest-blocks.health - Reward RĂ©compense @@ -2995,7 +3051,7 @@ src/app/dashboard/dashboard.component.html - 210,214 + 219,223 dashboard.txs @@ -3234,7 +3290,7 @@ src/app/dashboard/dashboard.component.html - 237,238 + 246,247 dashboard.incoming-transactions @@ -3247,7 +3303,7 @@ src/app/dashboard/dashboard.component.html - 240,243 + 249,252 dashboard.backend-is-synchronizing @@ -3260,7 +3316,7 @@ src/app/dashboard/dashboard.component.html - 245,250 + 254,259 vB/s shared.vbytes-per-second @@ -3274,7 +3330,7 @@ src/app/dashboard/dashboard.component.html - 208,209 + 217,218 Unconfirmed count dashboard.unconfirmed @@ -3531,7 +3587,7 @@ src/app/components/master-page/master-page.component.html - 52,54 + 51,53 src/app/components/statistics/statistics.component.ts @@ -3557,7 +3613,7 @@ Explorateur Lightning src/app/components/master-page/master-page.component.html - 44,45 + 44,47 src/app/lightning/lightning-dashboard/lightning-dashboard.component.ts @@ -3565,21 +3621,12 @@ master-page.lightning - - beta - bĂȘta - - src/app/components/master-page/master-page.component.html - 45,48 - - beta - Documentation Documentation src/app/components/master-page/master-page.component.html - 55,57 + 54,56 src/app/docs/docs/docs.component.html @@ -3659,6 +3706,32 @@ dashboard.adjustments + + Broadcast Transaction + Émettre une transaction + + src/app/components/mining-dashboard/mining-dashboard.component.html + 92 + + + src/app/components/push-transaction/push-transaction.component.html + 2 + + + src/app/components/push-transaction/push-transaction.component.html + 8 + + + src/app/dashboard/dashboard.component.html + 161,169 + + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 102 + + Broadcast Transaction + shared.broadcast-transaction + Pools luck (1 week) Chance des pools (1 semaine) @@ -3726,7 +3799,7 @@ src/app/components/pool-ranking/pool-ranking.component.html - 136,138 + 152,154 master-page.blocks @@ -3756,12 +3829,25 @@ mining.rank + + Avg Health + SantĂ© moyenne + + src/app/components/pool-ranking/pool-ranking.component.html + 96,97 + + + src/app/components/pool-ranking/pool-ranking.component.html + 96,98 + + latest-blocks.avg_health + Empty blocks Bloc vides src/app/components/pool-ranking/pool-ranking.component.html - 95,98 + 97,100 mining.empty-blocks @@ -3770,7 +3856,7 @@ Tous les mineurs src/app/components/pool-ranking/pool-ranking.component.html - 113,114 + 129,130 mining.all-miners @@ -3779,7 +3865,7 @@ Chance des pools src/app/components/pool-ranking/pool-ranking.component.html - 130,132 + 146,148 mining.miners-luck @@ -3788,7 +3874,7 @@ Nombre de pool src/app/components/pool-ranking/pool-ranking.component.html - 142,144 + 158,160 mining.miners-count @@ -3797,7 +3883,7 @@ Pool de minage src/app/components/pool-ranking/pool-ranking.component.ts - 57 + 58 @@ -4024,24 +4110,6 @@ latest-blocks.coinbasetag - - Broadcast Transaction - Émettre une transaction - - src/app/components/push-transaction/push-transaction.component.html - 2 - - - src/app/components/push-transaction/push-transaction.component.html - 8 - - - src/app/dashboard/dashboard.component.html - 154,161 - - Broadcast Transaction - shared.broadcast-transaction - Transaction hex Transaction hex @@ -4051,7 +4119,7 @@ src/app/components/transaction/transaction.component.html - 296,297 + 290,291 transaction.hex @@ -4083,6 +4151,7 @@ Avg Block Fees + Frais de bloc moyens src/app/components/reward-stats/reward-stats.component.html 17 @@ -4095,6 +4164,7 @@ Average fees per block in the past 144 blocks + Frais moyens par bloc au cours des 144 derniers blocs src/app/components/reward-stats/reward-stats.component.html 18,20 @@ -4103,6 +4173,7 @@ BTC/block + BTC/bloc src/app/components/reward-stats/reward-stats.component.html 21,24 @@ -4112,6 +4183,7 @@ Avg Tx Fee + Frais Tx Moy src/app/components/reward-stats/reward-stats.component.html 30 @@ -4172,6 +4244,78 @@ search-form.search-title + + Bitcoin Block Height + Hauteur de bloc Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 3 + + search.bitcoin-block-height + + + Bitcoin Transaction + Transaction Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 9 + + search.bitcoin-transaction + + + Bitcoin Address + Adresse Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 15 + + search.bitcoin-address + + + Bitcoin Block + Bloc de Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 21 + + search.bitcoin-block + + + Bitcoin Addresses + Adresses Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 27 + + search.bitcoin-addresses + + + Lightning Nodes + Noeuds Lightning + + src/app/components/search-form/search-results/search-results.component.html + 35 + + search.lightning-nodes + + + Lightning Channels + Canaux Lightning + + src/app/components/search-form/search-results/search-results.component.html + 43 + + search.lightning-channels + + + Go to "" + Aller Ă  &quot;&quot; + + src/app/components/search-form/search-results/search-results.component.html + 52 + + search.go-to + Mempool by vBytes (sat/vByte) Mempool par vBytes (sat/vByte) @@ -4429,6 +4573,7 @@ This transaction replaced: + Cette transaction a remplacé : src/app/components/transaction/transaction.component.html 10,12 @@ -4438,6 +4583,7 @@ Replaced + RemplacĂ©e src/app/components/transaction/transaction.component.html 36,39 @@ -4454,7 +4600,7 @@ src/app/components/transactions-list/transactions-list.component.html - 298,301 + 300,303 Transaction unconfirmed state transaction.unconfirmed @@ -4464,7 +4610,7 @@ Vu pour la premiĂšre fois src/app/components/transaction/transaction.component.html - 108,109 + 102,103 src/app/lightning/node/node.component.html @@ -4498,7 +4644,7 @@ HAP src/app/components/transaction/transaction.component.html - 115,116 + 109,110 Transaction ETA transaction.eta @@ -4508,7 +4654,7 @@ Dans plusieurs heures (ou plus) src/app/components/transaction/transaction.component.html - 121,124 + 115,118 Transaction ETA in several hours or more transaction.eta.in-several-hours @@ -4518,11 +4664,11 @@ Descendant src/app/components/transaction/transaction.component.html - 168,170 + 162,164 src/app/components/transaction/transaction.component.html - 179,181 + 173,175 Descendant transaction.descendant @@ -4532,7 +4678,7 @@ AncĂȘtre src/app/components/transaction/transaction.component.html - 190,192 + 184,186 Transaction Ancestor transaction.ancestor @@ -4542,11 +4688,11 @@ Flux src/app/components/transaction/transaction.component.html - 208,211 + 202,205 src/app/components/transaction/transaction.component.html - 346,350 + 340,344 Transaction flow transaction.flow @@ -4556,7 +4702,7 @@ Masquer le diagramme src/app/components/transaction/transaction.component.html - 211,216 + 205,210 hide-diagram @@ -4565,7 +4711,7 @@ Montrer plus src/app/components/transaction/transaction.component.html - 231,233 + 225,227 src/app/components/transactions-list/transactions-list.component.html @@ -4582,7 +4728,7 @@ Montrer moins src/app/components/transaction/transaction.component.html - 233,239 + 227,233 src/app/components/transactions-list/transactions-list.component.html @@ -4595,7 +4741,7 @@ Afficher le diagramme src/app/components/transaction/transaction.component.html - 253,254 + 247,248 show-diagram @@ -4604,7 +4750,7 @@ Temps de verrouillage src/app/components/transaction/transaction.component.html - 292,294 + 286,288 transaction.locktime @@ -4613,7 +4759,7 @@ Transaction introuvable. src/app/components/transaction/transaction.component.html - 455,456 + 449,450 transaction.error.transaction-not-found @@ -4622,7 +4768,7 @@ Veuillez patienter pendant que nous attendons qu'elle apparaisse dans le mempool src/app/components/transaction/transaction.component.html - 456,461 + 450,455 transaction.error.waiting-for-it-to-appear @@ -4631,7 +4777,7 @@ Taux de frais effectif src/app/components/transaction/transaction.component.html - 489,492 + 485,488 Effective transaction fee rate transaction.effective-fee-rate @@ -4777,17 +4923,19 @@ Show more inputs to reveal fee data + Afficher plus d'entrĂ©es pour rĂ©vĂ©ler les donnĂ©es de frais src/app/components/transactions-list/transactions-list.component.html - 288,291 + 290,293 transactions-list.load-to-reveal-fee-info remaining + restantes src/app/components/transactions-list/transactions-list.component.html - 330,331 + 332,333 x-remaining @@ -4935,6 +5083,7 @@ This transaction does not use Taproot + Cette transaction n'utilise pas Taproot src/app/components/tx-features/tx-features.component.html 18 @@ -5037,21 +5186,12 @@ dashboard.latest-transactions - - USD - USD - - src/app/dashboard/dashboard.component.html - 126,127 - - dashboard.latest-transactions.USD - Minimum fee Frais minimums src/app/dashboard/dashboard.component.html - 201,202 + 210,211 Minimum mempool fee dashboard.minimum-fee @@ -5061,7 +5201,7 @@ PurgĂ©es src/app/dashboard/dashboard.component.html - 202,203 + 211,212 Purgin below fee dashboard.purging @@ -5071,7 +5211,7 @@ MĂ©moire utilisĂ©e src/app/dashboard/dashboard.component.html - 214,215 + 223,224 Memory usage dashboard.memory-usage @@ -5081,16 +5221,25 @@ L-BTC en circulation src/app/dashboard/dashboard.component.html - 228,230 + 237,239 dashboard.lbtc-pegs-in-circulation + + mempool.space merely provides data about the Bitcoin network. It cannot help you with retrieving funds, confirming your transaction quicker, etc. + mempool.space fournit simplement des donnĂ©es sur le rĂ©seau Bitcoin. Il ne peut pas vous aider Ă  rĂ©cupĂ©rer des fonds, Ă  confirmer vos transactions plus rapidement, etc. + + src/app/docs/api-docs/api-docs.component.html + 13 + + faq.big-disclaimer + REST API service Service d'API REST src/app/docs/api-docs/api-docs.component.html - 39,40 + 41,42 api-docs.title @@ -5099,11 +5248,11 @@ Point de terminaison src/app/docs/api-docs/api-docs.component.html - 48,49 + 50,51 src/app/docs/api-docs/api-docs.component.html - 102,105 + 104,107 Api docs endpoint @@ -5112,11 +5261,11 @@ Description src/app/docs/api-docs/api-docs.component.html - 67,68 + 69,70 src/app/docs/api-docs/api-docs.component.html - 106,107 + 108,109 @@ -5124,7 +5273,7 @@ Pousser par dĂ©faut : action: 'want', data: ['blocks', ...] pour exprimer ce que vous voulez pousser. Disponible: blocks, mempool-blocks, live-2h-chart, et stats.Pousse les transactions liĂ©es Ă  l'adresse : 'track-address': '3PbJ...bF9B' pour recevoir toutes les nouvelles transactions contenant cette adresse en entrĂ©e ou en sortie. Renvoie un tableau de transactions. address-transactions pour les nouvelles transactions mempool, et block-transactions pour les nouvelles transactions confirmĂ©es en bloc. src/app/docs/api-docs/api-docs.component.html - 107,108 + 109,110 api-docs.websocket.websocket @@ -5297,12 +5446,13 @@ src/app/lightning/channels-list/channels-list.component.html - 120,121 + 123,124 lightning.x-channels Starting balance + Solde de dĂ©part src/app/lightning/channel/channel-close-box/channel-close-box.component.html 6 @@ -5312,6 +5462,7 @@ Closing balance + Solde de clĂŽture src/app/lightning/channel/channel-close-box/channel-close-box.component.html 12 @@ -5341,7 +5492,7 @@ src/app/lightning/channels-list/channels-list.component.html - 65,66 + 68,69 status.inactive @@ -5358,7 +5509,7 @@ src/app/lightning/channels-list/channels-list.component.html - 66,68 + 69,71 status.active @@ -5379,7 +5530,7 @@ src/app/lightning/channels-list/channels-list.component.html - 68,70 + 71,73 status.closed @@ -5409,7 +5560,7 @@ src/app/lightning/channels-list/channels-list.component.html - 40,43 + 43,46 src/app/lightning/node-statistics/node-statistics.component.html @@ -5417,7 +5568,7 @@ src/app/lightning/node-statistics/node-statistics.component.html - 47,50 + 46,49 src/app/lightning/nodes-list/nodes-list.component.html @@ -5525,12 +5676,13 @@ src/app/lightning/channels-list/channels-list.component.html - 39,40 + 42,43 lightning.closing_date Closed by + FermĂ©e par src/app/lightning/channel/channel.component.html 52,54 @@ -5563,6 +5715,30 @@ 37 + + Mutually closed + Mutuellement fermĂ© + + src/app/lightning/channel/closing-type/closing-type.component.ts + 20 + + + + Force closed + Fermeture ForcĂ©e + + src/app/lightning/channel/closing-type/closing-type.component.ts + 24 + + + + Force closed with penalty + Fermeture forcĂ©e avec pĂ©nalitĂ© + + src/app/lightning/channel/closing-type/closing-type.component.ts + 28 + + Open Ouvert @@ -5577,7 +5753,7 @@ Aucun canal Ă  afficher src/app/lightning/channels-list/channels-list.component.html - 29,35 + 29,37 lightning.empty-channels-list @@ -5586,7 +5762,7 @@ Alias src/app/lightning/channels-list/channels-list.component.html - 35,37 + 38,40 src/app/lightning/group/group.component.html @@ -5623,7 +5799,7 @@ Statut src/app/lightning/channels-list/channels-list.component.html - 37,38 + 40,41 status @@ -5632,7 +5808,7 @@ ID du canal src/app/lightning/channels-list/channels-list.component.html - 41,45 + 44,48 channels.id @@ -5641,11 +5817,11 @@ sats src/app/lightning/channels-list/channels-list.component.html - 60,64 + 63,67 src/app/lightning/channels-list/channels-list.component.html - 84,88 + 87,91 src/app/lightning/channels-statistics/channels-statistics.component.html @@ -5689,6 +5865,24 @@ shared.sats + + avg + moy. + + src/app/lightning/channels-statistics/channels-statistics.component.html + 3,5 + + statistics.average-small + + + med + med. + + src/app/lightning/channels-statistics/channels-statistics.component.html + 6,9 + + statistics.median-small + Avg Capacity CapacitĂ© moy @@ -5817,11 +6011,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 17,18 + 16,17 src/app/lightning/node-statistics/node-statistics.component.html - 54,57 + 53,56 src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html @@ -5891,11 +6085,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 29,30 + 28,29 src/app/lightning/node-statistics/node-statistics.component.html - 61,64 + 60,63 src/app/lightning/nodes-list/nodes-list.component.html @@ -6052,12 +6246,37 @@ Fee distribution + RĂ©partition des frais src/app/lightning/node-fee-chart/node-fee-chart.component.html 2 lightning.node-fee-distribution + + Outgoing Fees + Frais de sortie + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 170 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 208 + + + + Incoming Fees + Frais entrants + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 178 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 222 + + Percentage change past week Variation sur une semaine @@ -6067,11 +6286,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 18,20 + 17,19 src/app/lightning/node-statistics/node-statistics.component.html - 30,32 + 29,31 mining.percentage-change-last-week @@ -6147,6 +6366,7 @@ Avg channel distance + Distance moyenne des canaux src/app/lightning/node/node.component.html 56,57 @@ -6186,6 +6406,7 @@ Liquidity ad + Annonce de liquiditĂ© src/app/lightning/node/node.component.html 138,141 @@ -6194,6 +6415,7 @@ Lease fee rate + Taux de frais de location src/app/lightning/node/node.component.html 144,147 @@ -6203,6 +6425,7 @@ Lease base fee + Frais de base de location src/app/lightning/node/node.component.html 152,154 @@ -6211,6 +6434,7 @@ Funding weight + Poids du financement src/app/lightning/node/node.component.html 158,159 @@ -6219,6 +6443,7 @@ Channel fee rate + Taux de frais de canal src/app/lightning/node/node.component.html 168,171 @@ -6228,6 +6453,7 @@ Channel base fee + Frais de base du canal src/app/lightning/node/node.component.html 176,178 @@ -6236,6 +6462,7 @@ Compact lease + Location compacte src/app/lightning/node/node.component.html 188,190 @@ -6244,6 +6471,7 @@ TLV extension records + Enregistrements d'extension TLV src/app/lightning/node/node.component.html 199,202 @@ -6310,7 +6538,7 @@ Aucune donnĂ©e de gĂ©olocalisation disponible src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts - 218,213 + 219,214 @@ -6324,6 +6552,7 @@ Indexing in progress + Indexation en cours src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 121,116 @@ -6591,6 +6820,7 @@ Active nodes + NƓuds actifs src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 14,18 diff --git a/frontend/src/locale/messages.mk.xlf b/frontend/src/locale/messages.mk.xlf index 61ffc6a69..8747463ee 100644 --- a/frontend/src/locale/messages.mk.xlf +++ b/frontend/src/locale/messages.mk.xlf @@ -11,6 +11,7 @@ Slide of + ХлајЎ of node_modules/src/carousel/carousel.ts 175,181 @@ -147,6 +148,7 @@ + node_modules/src/progressbar/progressbar.ts 30,33 @@ -355,11 +357,11 @@ src/app/components/block/block.component.html - 290,291 + 310,311 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 26,27 + 46,47 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -380,11 +382,11 @@ src/app/components/block/block.component.html - 291,292 + 311,312 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 27,28 + 47,48 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -422,7 +424,7 @@ src/app/components/block/block.component.html - 40,41 + 38,39 block.hash @@ -447,7 +449,7 @@ src/app/components/block/block.component.html - 44,46 + 42,44 src/app/components/blocks-list/blocks-list.component.html @@ -590,11 +592,11 @@ src/app/components/master-page/master-page.component.html - 49,51 + 48,50 src/app/components/pool-ranking/pool-ranking.component.html - 94,96 + 94,95 @@ -735,6 +737,7 @@ View more » + ВоЮо ĐżĐŸĐČĐ”ŃœĐ” » src/app/bisq/bisq-main-dashboard/bisq-main-dashboard.component.html 92,97 @@ -772,14 +775,22 @@ src/app/components/about/about.component.html 385,389 + + src/app/components/mining-dashboard/mining-dashboard.component.html + 88 + src/app/dashboard/dashboard.component.html - 150,152 + 157,159 src/app/docs/docs/docs.component.html 51 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 97 + Terms of Service shared.terms-of-service @@ -790,14 +801,22 @@ src/app/bisq/bisq-main-dashboard/bisq-main-dashboard.component.html 113,120 + + src/app/components/mining-dashboard/mining-dashboard.component.html + 90 + src/app/dashboard/dashboard.component.html - 152,154 + 159,161 src/app/docs/docs/docs.component.html 53 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 99 + Privacy Policy shared.privacy-policy @@ -985,7 +1004,7 @@ src/app/dashboard/dashboard.component.html - 124,125 + 124,126 @@ -1033,7 +1052,7 @@ src/app/components/transaction/transaction.component.html - 158,160 + 152,154 src/app/components/transactions-list/transactions-list.component.html @@ -1049,11 +1068,11 @@ src/app/components/block/block.component.html - 246,247 + 252,253 src/app/components/transaction/transaction.component.html - 288,290 + 282,284 transaction.version @@ -1103,7 +1122,7 @@ src/app/components/transactions-list/transactions-list.component.html - 294,295 + 296,297 Transaction singular confirmation count shared.confirmation-count.singular @@ -1125,7 +1144,7 @@ src/app/components/transactions-list/transactions-list.component.html - 295,296 + 297,298 Transaction plural confirmation count shared.confirmation-count.plural @@ -1137,10 +1156,6 @@ src/app/bisq/bisq-transaction/bisq-transaction.component.html 43,45 - - src/app/components/transaction/transaction.component.html - 65,67 - Transaction included in block transaction.included-in-block @@ -1153,11 +1168,11 @@ src/app/components/transaction/transaction.component.html - 77,80 + 71,74 src/app/components/transaction/transaction.component.html - 135,138 + 129,132 Transaction features transaction.features @@ -1185,11 +1200,11 @@ src/app/components/transaction/transaction.component.html - 262,267 + 256,261 src/app/components/transaction/transaction.component.html - 406,412 + 400,406 transaction.details @@ -1206,11 +1221,11 @@ src/app/components/transaction/transaction.component.html - 249,253 + 243,247 src/app/components/transaction/transaction.component.html - 377,383 + 371,377 Transaction inputs and outputs transaction.inputs-and-outputs @@ -1228,7 +1243,7 @@ src/app/components/transaction/transaction.component.ts - 241,240 + 244,243 @@ -1248,7 +1263,7 @@ src/app/components/transaction/transaction.component.html - 159,160 + 153,154 src/app/dashboard/dashboard.component.html @@ -1264,7 +1279,7 @@ src/app/components/transaction/transaction.component.html - 72,73 + 66,67 Transaction Confirmed state transaction.confirmed @@ -1457,6 +1472,7 @@ Community Integrations + Đ˜ĐœŃ‚Đ”ĐłŃ€Đ°Ń†ĐžĐž ĐŸĐŽ Đ·Đ°Đ”ĐŽĐœĐžŃ†Đ°Ń‚Đ° src/app/components/about/about.component.html 191,193 @@ -1474,6 +1490,7 @@ Project Translators + ĐŸŃ€Đ”ĐČДЎуĐČачо src/app/components/about/about.component.html 301,303 @@ -1524,11 +1541,12 @@ src/app/components/master-page/master-page.component.html - 58,61 + 57,60 Multisig of + Multisig ĐŸĐŽ src/app/components/address-labels/address-labels.component.ts 107 @@ -1560,7 +1578,7 @@ src/app/components/amount/amount.component.html - 6,9 + 18,21 src/app/components/asset-circulation/asset-circulation.component.html @@ -1576,7 +1594,7 @@ src/app/components/transactions-list/transactions-list.component.html - 302,304 + 304,306 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -1602,6 +1620,7 @@ of transaction + ĐŸĐŽ Ń‚Ń€Đ°ĐœŃĐ°Đșцоја src/app/components/address/address.component.html 59 @@ -1610,6 +1629,7 @@ of transactions + ĐŸĐŽ Ń‚Ń€Đ°ĐœŃĐ°Đșцоо src/app/components/address/address.component.html 60 @@ -1656,7 +1676,7 @@ src/app/components/assets/assets.component.html - 29,31 + 31,33 src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html @@ -1784,6 +1804,7 @@ Group of assets + Група ĐœĐ° асДтО src/app/components/assets/asset-group/asset-group.component.html 8,9 @@ -1816,6 +1837,7 @@ Featured + ĐŸŃ€ĐŸĐŒĐŸĐČĐžŃ€Đ°Đœ src/app/components/assets/assets-nav/assets-nav.component.html 9 @@ -1823,6 +1845,7 @@ All + ХОтД src/app/components/assets/assets-nav/assets-nav.component.html 13 @@ -1875,7 +1898,7 @@ src/app/components/assets/assets.component.html - 30,31 + 32,33 Asset ticker header @@ -1888,7 +1911,7 @@ src/app/components/assets/assets.component.html - 31,34 + 33,36 Asset Issuer Domain header @@ -1901,7 +1924,7 @@ src/app/components/assets/assets.component.html - 32,36 + 34,38 Asset ID header @@ -1910,7 +1933,7 @@ Đ“Ń€Đ”ŃˆĐșа ĐČĐŸ ĐČчотуĐČĐ°ŃšĐ”Ń‚ĐŸ ĐœĐ° ĐżĐŸĐŽĐ°Ń‚ĐŸŃ†ĐžŃ‚Đ” за срДЎстĐČата. src/app/components/assets/assets.component.html - 48,53 + 50,55 Asset data load error @@ -2022,6 +2045,7 @@ At block: + Đ’ĐŸ Đ±Đ»ĐŸĐș: src/app/components/block-fee-rates-graph/block-fee-rates-graph.component.ts 188 @@ -2032,11 +2056,12 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 161 + 165 Around block: + ОĐșĐŸĐ»Ńƒ Đ±Đ»ĐŸĐș: src/app/components/block-fee-rates-graph/block-fee-rates-graph.component.ts 190 @@ -2047,7 +2072,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 163 + 167 @@ -2058,7 +2083,7 @@ src/app/components/block-fees-graph/block-fees-graph.component.ts - 62 + 67 src/app/components/graphs/graphs.component.html @@ -2070,15 +2095,15 @@ Indexing blocks src/app/components/block-fees-graph/block-fees-graph.component.ts - 110,105 + 116,111 src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 108,103 + 113,108 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 115,110 + 116,111 src/app/components/hashrate-chart/hashrate-chart.component.ts @@ -2103,6 +2128,7 @@ not available + ĐœĐ” Đ” ĐŽĐŸŃŃ‚Đ°ĐżĐœĐŸ src/app/components/block-overview-graph/block-overview-graph.component.html 5 @@ -2122,7 +2148,7 @@ src/app/components/transaction/transaction.component.html - 476 + 472 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -2148,11 +2174,11 @@ src/app/components/transaction/transaction.component.html - 476,477 + 472 src/app/components/transactions-list/transactions-list.component.html - 286,287 + 288 sat shared.sat @@ -2166,11 +2192,11 @@ src/app/components/transaction/transaction.component.html - 161,165 + 155,159 src/app/components/transaction/transaction.component.html - 479,481 + 475,477 src/app/lightning/channel/channel-box/channel-box.component.html @@ -2182,7 +2208,7 @@ src/app/lightning/channels-list/channels-list.component.html - 38,39 + 41,42 Transaction fee rate transaction.fee-rate @@ -2200,19 +2226,19 @@ src/app/components/block/block.component.html - 125,128 + 124,127 src/app/components/block/block.component.html - 129 + 128,130 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 12,14 + 19,22 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 15,17 + 30,33 src/app/components/fees-box/fees-box.component.html @@ -2252,27 +2278,27 @@ src/app/components/transaction/transaction.component.html - 173,174 + 167,168 src/app/components/transaction/transaction.component.html - 184,185 + 178,179 src/app/components/transaction/transaction.component.html - 195,196 + 189,190 src/app/components/transaction/transaction.component.html - 481,484 + 477,480 src/app/components/transaction/transaction.component.html - 492,494 + 488,490 src/app/components/transactions-list/transactions-list.component.html - 286 + 286,287 src/app/dashboard/dashboard.component.html @@ -2280,7 +2306,7 @@ src/app/dashboard/dashboard.component.html - 204,208 + 213,217 sat/vB shared.sat-vbyte @@ -2294,11 +2320,11 @@ src/app/components/transaction/transaction.component.html - 160,162 + 154,156 src/app/components/transaction/transaction.component.html - 274,277 + 268,271 Transaction Virtual Size transaction.vsize @@ -2321,6 +2347,7 @@ Removed + ĐžĐŽŃŃ‚Ń€Đ°ĐœĐ”Ń‚ĐŸ src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 39 @@ -2349,6 +2376,7 @@ Added + Đ”ĐŸĐŽĐ°ĐŽĐ”ĐœĐŸ src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 42 @@ -2401,7 +2429,7 @@ src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 60 + 65 src/app/components/graphs/graphs.component.html @@ -2430,15 +2458,15 @@ Đ“ĐŸĐ»Đ”ĐŒĐžĐœĐ° src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 180,179 + 184,183 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 226,224 + 239,237 src/app/components/block/block.component.html - 50,52 + 48,50 src/app/components/blocks-list/blocks-list.component.html @@ -2462,7 +2490,7 @@ src/app/components/transaction/transaction.component.html - 270,272 + 264,266 src/app/dashboard/dashboard.component.html @@ -2474,11 +2502,11 @@ ĐąĐ”Đ¶ĐžĐœĐ° src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 188,187 + 192,191 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 257,254 + 270,267 src/app/components/block/block-preview.component.html @@ -2486,11 +2514,22 @@ src/app/components/block/block.component.html - 54,56 + 52,54 src/app/components/transaction/transaction.component.html - 278,280 + 272,274 + + + + Size per weight + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 200,199 + + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 282,279 @@ -2505,14 +2544,6 @@ shared.block-title - - - - src/app/components/block/block-preview.component.html - 11,12 - - shared.block-title - Median fee ĐĄŃ€Đ”ĐŽĐœĐ° ĐżŃ€ĐŸĐČОзОја @@ -2522,7 +2553,7 @@ src/app/components/block/block.component.html - 128,129 + 127,128 src/app/components/mempool-block/mempool-block.component.html @@ -2539,11 +2570,11 @@ src/app/components/block/block.component.html - 133,135 + 138,140 src/app/components/block/block.component.html - 159,162 + 164,167 src/app/components/mempool-block/mempool-block.component.html @@ -2561,7 +2592,7 @@ src/app/components/block/block.component.html - 168,170 + 173,175 block.miner @@ -2574,7 +2605,7 @@ src/app/components/block/block.component.ts - 227 + 242 @@ -2599,24 +2630,40 @@ Previous Block - - Block health + + Health src/app/components/block/block.component.html - 58,61 + 56 - block.health + + src/app/components/blocks-list/blocks-list.component.html + 18,19 + + + src/app/components/blocks-list/blocks-list.component.html + 18,19 + + latest-blocks.health Unknown src/app/components/block/block.component.html - 69,72 + 67,70 src/app/components/blocks-list/blocks-list.component.html 60,63 + + src/app/components/pool-ranking/pool-ranking.component.html + 121,124 + + + src/app/lightning/channel/closing-type/closing-type.component.ts + 32 + src/app/lightning/node/node.component.html 52,55 @@ -2640,7 +2687,7 @@ ОспДг ĐœĐ° ĐżŃ€ĐŸĐČОзОО src/app/components/block/block.component.html - 124,125 + 123,124 src/app/components/mempool-block/mempool-block.component.html @@ -2653,7 +2700,7 @@ Đ‘Đ°Đ·ĐžŃ€Đ°ĐœĐŸ ĐœĐ° ĐżŃ€ĐŸŃĐ”Ń‡ĐœĐ° segwit Ń‚Ń€Đ°ĐœŃĐ°Đșцоја ĐŸĐŽ 140 vBytes src/app/components/block/block.component.html - 129,131 + 131,136 src/app/components/fees-box/fees-box.component.html @@ -2677,49 +2724,61 @@ Transaction fee tooltip - - Subsidy + fees: - НаграЮа + ĐżŃ€ĐŸĐČОзОја: + + Subsidy + fees src/app/components/block/block.component.html - 148,151 + 153,156 src/app/components/block/block.component.html - 163,167 + 168,172 Total subsidy and fees in a block block.subsidy-and-fees - - Projected + + Expected src/app/components/block/block.component.html - 210,212 + 216 - block.projected + block.expected + + + beta + бДта + + src/app/components/block/block.component.html + 216,217 + + + src/app/components/block/block.component.html + 222,224 + + beta Actual src/app/components/block/block.component.html - 212,216 + 218,222 block.actual - - Projected Block + + Expected Block src/app/components/block/block.component.html - 216,218 + 222 - block.projected-block + block.expected-block Actual Block src/app/components/block/block.component.html - 225,227 + 231 block.actual-block @@ -2728,7 +2787,7 @@ Đ‘ĐžŃ‚ĐŸĐČĐž src/app/components/block/block.component.html - 250,252 + 256,258 block.bits @@ -2737,7 +2796,7 @@ Merkle root src/app/components/block/block.component.html - 254,256 + 260,262 block.merkle-root @@ -2746,7 +2805,7 @@ ĐĄĐ»ĐŸĐ¶Đ”ĐœĐŸŃŃ‚ src/app/components/block/block.component.html - 265,268 + 271,274 src/app/components/difficulty-adjustments-table/difficulty-adjustments-table.component.html @@ -2775,7 +2834,7 @@ Nonce src/app/components/block/block.component.html - 269,271 + 275,277 block.nonce @@ -2784,20 +2843,29 @@ ЄДĐșс ĐŸĐŽ заглаĐČĐžĐ”Ń‚ĐŸ ĐœĐ° Đ±Đ»ĐŸĐșĐŸŃ‚ src/app/components/block/block.component.html - 273,274 + 279,280 block.header + + Audit + + src/app/components/block/block.component.html + 297,301 + + Toggle Audit + block.toggle-audit + Details ДДталО src/app/components/block/block.component.html - 284,288 + 304,308 src/app/components/transaction/transaction.component.html - 254,259 + 248,253 src/app/lightning/channel/channel.component.html @@ -2818,11 +2886,11 @@ Error loading data. src/app/components/block/block.component.html - 303,305 + 323,325 src/app/components/block/block.component.html - 339,343 + 362,366 src/app/lightning/channel/channel-preview.component.html @@ -2846,7 +2914,7 @@ Why is this block empty? src/app/components/block/block.component.html - 361,367 + 384,390 block.empty-block-explanation @@ -2891,18 +2959,6 @@ latest-blocks.mined - - Health - - src/app/components/blocks-list/blocks-list.component.html - 18,19 - - - src/app/components/blocks-list/blocks-list.component.html - 18,19 - - latest-blocks.health - Reward @@ -2964,7 +3020,7 @@ src/app/dashboard/dashboard.component.html - 210,214 + 219,223 dashboard.txs @@ -3190,7 +3246,7 @@ src/app/dashboard/dashboard.component.html - 237,238 + 246,247 dashboard.incoming-transactions @@ -3203,7 +3259,7 @@ src/app/dashboard/dashboard.component.html - 240,243 + 249,252 dashboard.backend-is-synchronizing @@ -3216,7 +3272,7 @@ src/app/dashboard/dashboard.component.html - 245,250 + 254,259 vB/s shared.vbytes-per-second @@ -3230,7 +3286,7 @@ src/app/dashboard/dashboard.component.html - 208,209 + 217,218 Unconfirmed count dashboard.unconfirmed @@ -3470,7 +3526,7 @@ src/app/components/master-page/master-page.component.html - 52,54 + 51,53 src/app/components/statistics/statistics.component.ts @@ -3494,7 +3550,7 @@ Lightning Explorer src/app/components/master-page/master-page.component.html - 44,45 + 44,47 src/app/lightning/lightning-dashboard/lightning-dashboard.component.ts @@ -3502,20 +3558,12 @@ master-page.lightning - - beta - - src/app/components/master-page/master-page.component.html - 45,48 - - beta - Documentation Đ”ĐŸĐșŃƒĐŒĐ”ĐœŃ‚Đ°Ń†ĐžŃ˜Đ° src/app/components/master-page/master-page.component.html - 55,57 + 54,56 src/app/docs/docs/docs.component.html @@ -3592,6 +3640,32 @@ dashboard.adjustments + + Broadcast Transaction + Đ•ĐŒĐžŃ‚ĐžŃ€Đ°Ń˜ ја ĐąŃ€Đ°ĐœŃĐ°Đșцојата + + src/app/components/mining-dashboard/mining-dashboard.component.html + 92 + + + src/app/components/push-transaction/push-transaction.component.html + 2 + + + src/app/components/push-transaction/push-transaction.component.html + 8 + + + src/app/dashboard/dashboard.component.html + 161,169 + + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 102 + + Broadcast Transaction + shared.broadcast-transaction + Pools luck (1 week) @@ -3652,7 +3726,7 @@ src/app/components/pool-ranking/pool-ranking.component.html - 136,138 + 152,154 master-page.blocks @@ -3680,11 +3754,23 @@ mining.rank + + Avg Health + + src/app/components/pool-ranking/pool-ranking.component.html + 96,97 + + + src/app/components/pool-ranking/pool-ranking.component.html + 96,98 + + latest-blocks.avg_health + Empty blocks src/app/components/pool-ranking/pool-ranking.component.html - 95,98 + 97,100 mining.empty-blocks @@ -3692,7 +3778,7 @@ All miners src/app/components/pool-ranking/pool-ranking.component.html - 113,114 + 129,130 mining.all-miners @@ -3700,7 +3786,7 @@ Pools Luck (1w) src/app/components/pool-ranking/pool-ranking.component.html - 130,132 + 146,148 mining.miners-luck @@ -3708,7 +3794,7 @@ Pools Count (1w) src/app/components/pool-ranking/pool-ranking.component.html - 142,144 + 158,160 mining.miners-count @@ -3716,7 +3802,7 @@ Mining Pools src/app/components/pool-ranking/pool-ranking.component.ts - 57 + 58 @@ -3930,24 +4016,6 @@ latest-blocks.coinbasetag - - Broadcast Transaction - Đ•ĐŒĐžŃ‚ĐžŃ€Đ°Ń˜ ја ĐąŃ€Đ°ĐœŃĐ°Đșцојата - - src/app/components/push-transaction/push-transaction.component.html - 2 - - - src/app/components/push-transaction/push-transaction.component.html - 8 - - - src/app/dashboard/dashboard.component.html - 154,161 - - Broadcast Transaction - shared.broadcast-transaction - Transaction hex @@ -3956,7 +4024,7 @@ src/app/components/transaction/transaction.component.html - 296,297 + 290,291 transaction.hex @@ -4071,6 +4139,70 @@ search-form.search-title + + Bitcoin Block Height + + src/app/components/search-form/search-results/search-results.component.html + 3 + + search.bitcoin-block-height + + + Bitcoin Transaction + + src/app/components/search-form/search-results/search-results.component.html + 9 + + search.bitcoin-transaction + + + Bitcoin Address + + src/app/components/search-form/search-results/search-results.component.html + 15 + + search.bitcoin-address + + + Bitcoin Block + + src/app/components/search-form/search-results/search-results.component.html + 21 + + search.bitcoin-block + + + Bitcoin Addresses + + src/app/components/search-form/search-results/search-results.component.html + 27 + + search.bitcoin-addresses + + + Lightning Nodes + + src/app/components/search-form/search-results/search-results.component.html + 35 + + search.lightning-nodes + + + Lightning Channels + + src/app/components/search-form/search-results/search-results.component.html + 43 + + search.lightning-channels + + + Go to "" + + src/app/components/search-form/search-results/search-results.component.html + 52 + + search.go-to + Mempool by vBytes (sat/vByte) Mempool проĐșĐ°Đ¶Đ°Đœ ĐżĐŸ vBytes (sat/vByte) @@ -4353,7 +4485,7 @@ src/app/components/transactions-list/transactions-list.component.html - 298,301 + 300,303 Transaction unconfirmed state transaction.unconfirmed @@ -4363,7 +4495,7 @@ ĐŸŃ€Đ°Ń‚Đ”ĐœĐ° src/app/components/transaction/transaction.component.html - 108,109 + 102,103 src/app/lightning/node/node.component.html @@ -4397,7 +4529,7 @@ ĐŸĐŸŃ‚ĐČŃ€ĐŽĐ”ĐœĐ° src/app/components/transaction/transaction.component.html - 115,116 + 109,110 Transaction ETA transaction.eta @@ -4407,7 +4539,7 @@ За ĐœĐ”ĐșĐŸĐ»Đșу часа (ОлО ĐżĐŸĐČĐ”ŃœĐ”) src/app/components/transaction/transaction.component.html - 121,124 + 115,118 Transaction ETA in several hours or more transaction.eta.in-several-hours @@ -4417,11 +4549,11 @@ ĐĐ°ŃĐ»Đ”ĐŽĐœĐžĐș src/app/components/transaction/transaction.component.html - 168,170 + 162,164 src/app/components/transaction/transaction.component.html - 179,181 + 173,175 Descendant transaction.descendant @@ -4431,7 +4563,7 @@ ĐŸŃ€Đ”Ń‚Ń…ĐŸĐŽĐœĐžĐș src/app/components/transaction/transaction.component.html - 190,192 + 184,186 Transaction Ancestor transaction.ancestor @@ -4440,11 +4572,11 @@ Flow src/app/components/transaction/transaction.component.html - 208,211 + 202,205 src/app/components/transaction/transaction.component.html - 346,350 + 340,344 Transaction flow transaction.flow @@ -4453,7 +4585,7 @@ Hide diagram src/app/components/transaction/transaction.component.html - 211,216 + 205,210 hide-diagram @@ -4461,7 +4593,7 @@ Show more src/app/components/transaction/transaction.component.html - 231,233 + 225,227 src/app/components/transactions-list/transactions-list.component.html @@ -4477,7 +4609,7 @@ Show less src/app/components/transaction/transaction.component.html - 233,239 + 227,233 src/app/components/transactions-list/transactions-list.component.html @@ -4489,7 +4621,7 @@ Show diagram src/app/components/transaction/transaction.component.html - 253,254 + 247,248 show-diagram @@ -4498,7 +4630,7 @@ Locktime src/app/components/transaction/transaction.component.html - 292,294 + 286,288 transaction.locktime @@ -4507,7 +4639,7 @@ ĐąŃ€Đ°ĐœŃĐ°Đșцојата ĐœĐ” Đ” ĐżŃ€ĐŸĐœĐ°Ń˜ĐŽĐ”ĐœĐ° src/app/components/transaction/transaction.component.html - 455,456 + 449,450 transaction.error.transaction-not-found @@ -4516,7 +4648,7 @@ ĐĄĐ” чДĐșа Ўа сД ĐżĐŸŃ˜Đ°ĐČĐž ĐČĐŸ mempool-ĐŸŃ‚... src/app/components/transaction/transaction.component.html - 456,461 + 450,455 transaction.error.waiting-for-it-to-appear @@ -4525,7 +4657,7 @@ ЕфДĐșтоĐČĐœĐ° ĐżŃ€ĐŸŃ„ĐžĐ·ĐžŃ˜Đ° src/app/components/transaction/transaction.component.html - 489,492 + 485,488 Effective transaction fee rate transaction.effective-fee-rate @@ -4672,7 +4804,7 @@ Show more inputs to reveal fee data src/app/components/transactions-list/transactions-list.component.html - 288,291 + 290,293 transactions-list.load-to-reveal-fee-info @@ -4680,7 +4812,7 @@ remaining src/app/components/transactions-list/transactions-list.component.html - 330,331 + 332,333 x-remaining @@ -4918,21 +5050,12 @@ dashboard.latest-transactions - - USD - ĐČĐŸ USD - - src/app/dashboard/dashboard.component.html - 126,127 - - dashboard.latest-transactions.USD - Minimum fee ĐœĐžĐœĐžĐŒŃƒĐŒ src/app/dashboard/dashboard.component.html - 201,202 + 210,211 Minimum mempool fee dashboard.minimum-fee @@ -4942,7 +5065,7 @@ ОтфрлањД src/app/dashboard/dashboard.component.html - 202,203 + 211,212 Purgin below fee dashboard.purging @@ -4952,7 +5075,7 @@ ИсĐșĐŸŃ€ĐžŃŃ‚Đ”ĐœĐ° ĐŒĐ”ĐŒĐŸŃ€ĐžŃ˜Đ° src/app/dashboard/dashboard.component.html - 214,215 + 223,224 Memory usage dashboard.memory-usage @@ -4962,15 +5085,23 @@ L-BTC ĐČĐŸ цорĐșŃƒĐ»Đ°Ń†ĐžŃ˜Đ° src/app/dashboard/dashboard.component.html - 228,230 + 237,239 dashboard.lbtc-pegs-in-circulation + + mempool.space merely provides data about the Bitcoin network. It cannot help you with retrieving funds, confirming your transaction quicker, etc. + + src/app/docs/api-docs/api-docs.component.html + 13 + + faq.big-disclaimer + REST API service src/app/docs/api-docs/api-docs.component.html - 39,40 + 41,42 api-docs.title @@ -4979,11 +5110,11 @@ Endpoint src/app/docs/api-docs/api-docs.component.html - 48,49 + 50,51 src/app/docs/api-docs/api-docs.component.html - 102,105 + 104,107 Api docs endpoint @@ -4992,11 +5123,11 @@ Опос src/app/docs/api-docs/api-docs.component.html - 67,68 + 69,70 src/app/docs/api-docs/api-docs.component.html - 106,107 + 108,109 @@ -5004,7 +5135,7 @@ ĐžĐ±Ń˜Đ°ĐČуĐČањД: action: 'want', data: ['blocks', ...] за Ўа ŃĐżĐ”Ń†ĐžŃ„ĐžŃ€Đ°Ńˆ ŃˆŃ‚ĐŸ Ўа бОЎД ĐŸĐ±Ń˜Đ°ĐČĐ”ĐœĐŸ. Đ”ĐŸŃŃ‚Đ°ĐżĐœĐž ĐżĐŸĐ»ĐžŃšĐ°: blocks, mempool-blocks, live-2h-chart, Đž stats.ĐžĐ±Ń˜Đ°ĐČĐž Ń‚Ń€Đ°ĐœŃĐ°Đșцоо ĐżĐŸĐČŃ€Đ·Đ°ĐœĐž ŃĐŸ аЎрДсса: 'track-address': '3PbJ...bF9B' за Ўа гО ĐŽĐŸĐ±ĐžĐ”Ńˆ сОтД ĐœĐŸĐČĐž Ń‚Ń€Đ°ĐœŃĐ°Đșцоо ŃˆŃ‚ĐŸ ја ŃĐŸĐŽŃ€Đ¶Đ°Ń‚ таа аЎрДса ĐșаĐșĐŸ ĐČлДз ОлО ОзлДз. Враќа ĐœĐžĐ·Đ° ĐŸĐŽ Ń‚Ń€Đ°ĐœŃŃĐ°Đșцоо. address-transactions за ĐœĐŸĐČĐž Ń‚Ń€Đ°ĐœŃĐ°Đșцоо ĐČĐŸ mempool-ĐŸŃ‚, Đž block-transactions за ĐżĐŸĐČŃ€ĐŽĐ”ĐœĐž Ń‚Ń€Đ°ĐœŃĐ°Đșцоо ĐČĐŸ ĐœĐ°Ń˜ĐœĐŸĐČĐžĐŸŃ‚ Đ±Đ»ĐŸĐș. src/app/docs/api-docs/api-docs.component.html - 107,108 + 109,110 api-docs.websocket.websocket @@ -5166,7 +5297,7 @@ src/app/lightning/channels-list/channels-list.component.html - 120,121 + 123,124 lightning.x-channels @@ -5208,7 +5339,7 @@ src/app/lightning/channels-list/channels-list.component.html - 65,66 + 68,69 status.inactive @@ -5224,7 +5355,7 @@ src/app/lightning/channels-list/channels-list.component.html - 66,68 + 69,71 status.active @@ -5244,7 +5375,7 @@ src/app/lightning/channels-list/channels-list.component.html - 68,70 + 71,73 status.closed @@ -5272,7 +5403,7 @@ src/app/lightning/channels-list/channels-list.component.html - 40,43 + 43,46 src/app/lightning/node-statistics/node-statistics.component.html @@ -5280,7 +5411,7 @@ src/app/lightning/node-statistics/node-statistics.component.html - 47,50 + 46,49 src/app/lightning/nodes-list/nodes-list.component.html @@ -5384,7 +5515,7 @@ src/app/lightning/channels-list/channels-list.component.html - 39,40 + 42,43 lightning.closing_date @@ -5419,6 +5550,27 @@ 37 + + Mutually closed + + src/app/lightning/channel/closing-type/closing-type.component.ts + 20 + + + + Force closed + + src/app/lightning/channel/closing-type/closing-type.component.ts + 24 + + + + Force closed with penalty + + src/app/lightning/channel/closing-type/closing-type.component.ts + 28 + + Open @@ -5431,7 +5583,7 @@ No channels to display src/app/lightning/channels-list/channels-list.component.html - 29,35 + 29,37 lightning.empty-channels-list @@ -5439,7 +5591,7 @@ Alias src/app/lightning/channels-list/channels-list.component.html - 35,37 + 38,40 src/app/lightning/group/group.component.html @@ -5475,7 +5627,7 @@ Status src/app/lightning/channels-list/channels-list.component.html - 37,38 + 40,41 status @@ -5483,7 +5635,7 @@ Channel ID src/app/lightning/channels-list/channels-list.component.html - 41,45 + 44,48 channels.id @@ -5491,11 +5643,11 @@ sats src/app/lightning/channels-list/channels-list.component.html - 60,64 + 63,67 src/app/lightning/channels-list/channels-list.component.html - 84,88 + 87,91 src/app/lightning/channels-statistics/channels-statistics.component.html @@ -5539,6 +5691,22 @@ shared.sats + + avg + + src/app/lightning/channels-statistics/channels-statistics.component.html + 3,5 + + statistics.average-small + + + med + + src/app/lightning/channels-statistics/channels-statistics.component.html + 6,9 + + statistics.median-small + Avg Capacity @@ -5655,11 +5823,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 17,18 + 16,17 src/app/lightning/node-statistics/node-statistics.component.html - 54,57 + 53,56 src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html @@ -5727,11 +5895,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 29,30 + 28,29 src/app/lightning/node-statistics/node-statistics.component.html - 61,64 + 60,63 src/app/lightning/nodes-list/nodes-list.component.html @@ -5887,6 +6055,28 @@ lightning.node-fee-distribution + + Outgoing Fees + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 170 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 208 + + + + Incoming Fees + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 178 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 222 + + Percentage change past week @@ -5895,11 +6085,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 18,20 + 17,19 src/app/lightning/node-statistics/node-statistics.component.html - 30,32 + 29,31 mining.percentage-change-last-week @@ -6123,7 +6313,7 @@ No geolocation data available src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts - 218,213 + 219,214 @@ -6285,6 +6475,7 @@ Tor Capacity + КапацОтДт ĐœĐ° Tor src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html 20,22 @@ -6379,6 +6570,7 @@ Active nodes + АĐșтоĐČĐœĐž ĐœĐŸĐŽĐŸĐČĐž src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 14,18 @@ -6418,6 +6610,7 @@ Oldest nodes + Најстаро ĐœĐŸĐŽĐŸĐČĐž src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.html 36 @@ -6426,6 +6619,7 @@ Top lightning nodes + ĐąĐŸĐż lightning ĐœĐŸĐŽĐŸĐČĐž src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.ts 22 @@ -6433,6 +6627,7 @@ Indexing in progress + Đ˜ĐœĐŽĐ”ĐșŃĐžŃ€Đ°ŃšĐ”Ń‚ĐŸ Đ” ĐČĐŸ ĐżŃ€ĐŸĐłŃ€Đ”Ń src/app/lightning/statistics-chart/lightning-statistics-chart.component.html 52,55 diff --git a/frontend/src/locale/messages.vi.xlf b/frontend/src/locale/messages.vi.xlf index 4af52e030..41e5e9281 100644 --- a/frontend/src/locale/messages.vi.xlf +++ b/frontend/src/locale/messages.vi.xlf @@ -11,6 +11,7 @@ Slide of + Slide of node_modules/src/carousel/carousel.ts 175,181 @@ -147,6 +148,7 @@ + node_modules/src/progressbar/progressbar.ts 30,33 @@ -357,11 +359,11 @@ src/app/components/block/block.component.html - 290,291 + 310,311 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 26,27 + 46,47 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -382,11 +384,11 @@ src/app/components/block/block.component.html - 291,292 + 311,312 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 27,28 + 47,48 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -424,7 +426,7 @@ src/app/components/block/block.component.html - 40,41 + 38,39 block.hash @@ -449,7 +451,7 @@ src/app/components/block/block.component.html - 44,46 + 42,44 src/app/components/blocks-list/blocks-list.component.html @@ -592,11 +594,11 @@ src/app/components/master-page/master-page.component.html - 49,51 + 48,50 src/app/components/pool-ranking/pool-ranking.component.html - 94,96 + 94,95 @@ -775,14 +777,22 @@ src/app/components/about/about.component.html 385,389 + + src/app/components/mining-dashboard/mining-dashboard.component.html + 88 + src/app/dashboard/dashboard.component.html - 150,152 + 157,159 src/app/docs/docs/docs.component.html 51 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 97 + Terms of Service shared.terms-of-service @@ -793,14 +803,22 @@ src/app/bisq/bisq-main-dashboard/bisq-main-dashboard.component.html 113,120 + + src/app/components/mining-dashboard/mining-dashboard.component.html + 90 + src/app/dashboard/dashboard.component.html - 152,154 + 159,161 src/app/docs/docs/docs.component.html 53 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 99 + Privacy Policy shared.privacy-policy @@ -988,7 +1006,7 @@ src/app/dashboard/dashboard.component.html - 124,125 + 124,126 @@ -1036,7 +1054,7 @@ src/app/components/transaction/transaction.component.html - 158,160 + 152,154 src/app/components/transactions-list/transactions-list.component.html @@ -1052,11 +1070,11 @@ src/app/components/block/block.component.html - 246,247 + 252,253 src/app/components/transaction/transaction.component.html - 288,290 + 282,284 transaction.version @@ -1106,7 +1124,7 @@ src/app/components/transactions-list/transactions-list.component.html - 294,295 + 296,297 Transaction singular confirmation count shared.confirmation-count.singular @@ -1128,7 +1146,7 @@ src/app/components/transactions-list/transactions-list.component.html - 295,296 + 297,298 Transaction plural confirmation count shared.confirmation-count.plural @@ -1140,10 +1158,6 @@ src/app/bisq/bisq-transaction/bisq-transaction.component.html 43,45 - - src/app/components/transaction/transaction.component.html - 65,67 - Transaction included in block transaction.included-in-block @@ -1156,11 +1170,11 @@ src/app/components/transaction/transaction.component.html - 77,80 + 71,74 src/app/components/transaction/transaction.component.html - 135,138 + 129,132 Transaction features transaction.features @@ -1188,11 +1202,11 @@ src/app/components/transaction/transaction.component.html - 262,267 + 256,261 src/app/components/transaction/transaction.component.html - 406,412 + 400,406 transaction.details @@ -1209,11 +1223,11 @@ src/app/components/transaction/transaction.component.html - 249,253 + 243,247 src/app/components/transaction/transaction.component.html - 377,383 + 371,377 Transaction inputs and outputs transaction.inputs-and-outputs @@ -1231,7 +1245,7 @@ src/app/components/transaction/transaction.component.ts - 241,240 + 244,243 @@ -1251,7 +1265,7 @@ src/app/components/transaction/transaction.component.html - 159,160 + 153,154 src/app/dashboard/dashboard.component.html @@ -1267,7 +1281,7 @@ src/app/components/transaction/transaction.component.html - 72,73 + 66,67 Transaction Confirmed state transaction.confirmed @@ -1530,7 +1544,7 @@ src/app/components/master-page/master-page.component.html - 58,61 + 57,60 @@ -1567,7 +1581,7 @@ src/app/components/amount/amount.component.html - 6,9 + 18,21 src/app/components/asset-circulation/asset-circulation.component.html @@ -1583,7 +1597,7 @@ src/app/components/transactions-list/transactions-list.component.html - 302,304 + 304,306 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -1666,7 +1680,7 @@ src/app/components/assets/assets.component.html - 29,31 + 31,33 src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html @@ -1888,7 +1902,7 @@ src/app/components/assets/assets.component.html - 30,31 + 32,33 Asset ticker header @@ -1901,7 +1915,7 @@ src/app/components/assets/assets.component.html - 31,34 + 33,36 Asset Issuer Domain header @@ -1914,7 +1928,7 @@ src/app/components/assets/assets.component.html - 32,36 + 34,38 Asset ID header @@ -1923,7 +1937,7 @@ Lỗi khi táșŁi dữ liệu tĂ i sáșŁn. src/app/components/assets/assets.component.html - 48,53 + 50,55 Asset data load error @@ -2047,7 +2061,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 161 + 165 @@ -2063,7 +2077,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 163 + 167 @@ -2075,7 +2089,7 @@ src/app/components/block-fees-graph/block-fees-graph.component.ts - 62 + 67 src/app/components/graphs/graphs.component.html @@ -2088,15 +2102,15 @@ Láș­p chỉ mỄc khối src/app/components/block-fees-graph/block-fees-graph.component.ts - 110,105 + 116,111 src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 108,103 + 113,108 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 115,110 + 116,111 src/app/components/hashrate-chart/hashrate-chart.component.ts @@ -2121,6 +2135,7 @@ not available + khĂŽng cĂł sáș”n src/app/components/block-overview-graph/block-overview-graph.component.html 5 @@ -2140,7 +2155,7 @@ src/app/components/transaction/transaction.component.html - 476 + 472 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -2166,11 +2181,11 @@ src/app/components/transaction/transaction.component.html - 476,477 + 472 src/app/components/transactions-list/transactions-list.component.html - 286,287 + 288 sat shared.sat @@ -2184,11 +2199,11 @@ src/app/components/transaction/transaction.component.html - 161,165 + 155,159 src/app/components/transaction/transaction.component.html - 479,481 + 475,477 src/app/lightning/channel/channel-box/channel-box.component.html @@ -2200,7 +2215,7 @@ src/app/lightning/channels-list/channels-list.component.html - 38,39 + 41,42 Transaction fee rate transaction.fee-rate @@ -2218,19 +2233,19 @@ src/app/components/block/block.component.html - 125,128 + 124,127 src/app/components/block/block.component.html - 129 + 128,130 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 12,14 + 19,22 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 15,17 + 30,33 src/app/components/fees-box/fees-box.component.html @@ -2270,27 +2285,27 @@ src/app/components/transaction/transaction.component.html - 173,174 + 167,168 src/app/components/transaction/transaction.component.html - 184,185 + 178,179 src/app/components/transaction/transaction.component.html - 195,196 + 189,190 src/app/components/transaction/transaction.component.html - 481,484 + 477,480 src/app/components/transaction/transaction.component.html - 492,494 + 488,490 src/app/components/transactions-list/transactions-list.component.html - 286 + 286,287 src/app/dashboard/dashboard.component.html @@ -2298,7 +2313,7 @@ src/app/dashboard/dashboard.component.html - 204,208 + 213,217 sat/vB shared.sat-vbyte @@ -2312,17 +2327,18 @@ src/app/components/transaction/transaction.component.html - 160,162 + 154,156 src/app/components/transaction/transaction.component.html - 274,277 + 268,271 Transaction Virtual Size transaction.vsize Audit status + TráșĄng thĂĄi kiểm tra src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 36 @@ -2331,6 +2347,7 @@ Match + Khớp src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 38 @@ -2339,6 +2356,7 @@ Removed + Đã xoĂĄ src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 39 @@ -2347,6 +2365,7 @@ Marginal fee rate + Tá»· lệ phĂ­ cáș­n biĂȘn src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 40 @@ -2359,6 +2378,7 @@ Recently broadcasted + Truyền phĂĄt gáș§n đñy src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 41 @@ -2424,7 +2444,7 @@ src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 60 + 65 src/app/components/graphs/graphs.component.html @@ -2454,15 +2474,15 @@ KĂ­ch thước src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 180,179 + 184,183 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 226,224 + 239,237 src/app/components/block/block.component.html - 50,52 + 48,50 src/app/components/blocks-list/blocks-list.component.html @@ -2486,7 +2506,7 @@ src/app/components/transaction/transaction.component.html - 270,272 + 264,266 src/app/dashboard/dashboard.component.html @@ -2498,11 +2518,11 @@ Khối lÆ°á»Łng src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 188,187 + 192,191 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 257,254 + 270,267 src/app/components/block/block-preview.component.html @@ -2510,11 +2530,23 @@ src/app/components/block/block.component.html - 54,56 + 52,54 src/app/components/transaction/transaction.component.html - 278,280 + 272,274 + + + + Size per weight + KĂ­ch thước mỗi trọng lÆ°á»Łng + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 200,199 + + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 282,279 @@ -2530,15 +2562,6 @@ shared.block-title - - - - - src/app/components/block/block-preview.component.html - 11,12 - - shared.block-title - Median fee PhĂ­ trung bĂŹnh @@ -2548,7 +2571,7 @@ src/app/components/block/block.component.html - 128,129 + 127,128 src/app/components/mempool-block/mempool-block.component.html @@ -2565,11 +2588,11 @@ src/app/components/block/block.component.html - 133,135 + 138,140 src/app/components/block/block.component.html - 159,162 + 164,167 src/app/components/mempool-block/mempool-block.component.html @@ -2587,7 +2610,7 @@ src/app/components/block/block.component.html - 168,170 + 173,175 block.miner @@ -2600,7 +2623,7 @@ src/app/components/block/block.component.ts - 227 + 242 @@ -2625,25 +2648,42 @@ Previous Block - - Block health + + Health + Sức khỏe src/app/components/block/block.component.html - 58,61 + 56 - block.health + + src/app/components/blocks-list/blocks-list.component.html + 18,19 + + + src/app/components/blocks-list/blocks-list.component.html + 18,19 + + latest-blocks.health Unknown khĂŽng xĂĄc định src/app/components/block/block.component.html - 69,72 + 67,70 src/app/components/blocks-list/blocks-list.component.html 60,63 + + src/app/components/pool-ranking/pool-ranking.component.html + 121,124 + + + src/app/lightning/channel/closing-type/closing-type.component.ts + 32 + src/app/lightning/node/node.component.html 52,55 @@ -2667,7 +2707,7 @@ KhoáșŁng phĂ­ src/app/components/block/block.component.html - 124,125 + 123,124 src/app/components/mempool-block/mempool-block.component.html @@ -2680,7 +2720,7 @@ Dá»±a trĂȘn giao dịch segwit gốc trung bĂŹnh lĂ  140 vBytes src/app/components/block/block.component.html - 129,131 + 131,136 src/app/components/fees-box/fees-box.component.html @@ -2704,49 +2744,66 @@ Transaction fee tooltip - - Subsidy + fees: - Trợ cáș„p + phĂ­: + + Subsidy + fees + Trợ cáș„p + phĂ­ src/app/components/block/block.component.html - 148,151 + 153,156 src/app/components/block/block.component.html - 163,167 + 168,172 Total subsidy and fees in a block block.subsidy-and-fees - - Projected + + Expected + Dá»± kiáșżn src/app/components/block/block.component.html - 210,212 + 216 - block.projected + block.expected + + + beta + báșŁn beta + + src/app/components/block/block.component.html + 216,217 + + + src/app/components/block/block.component.html + 222,224 + + beta Actual + Thá»±c táșż src/app/components/block/block.component.html - 212,216 + 218,222 block.actual - - Projected Block + + Expected Block + Khối dá»± kiáșżn src/app/components/block/block.component.html - 216,218 + 222 - block.projected-block + block.expected-block Actual Block + Khối thá»±c táșż src/app/components/block/block.component.html - 225,227 + 231 block.actual-block @@ -2755,7 +2812,7 @@ Bits src/app/components/block/block.component.html - 250,252 + 256,258 block.bits @@ -2764,7 +2821,7 @@ Merkle root src/app/components/block/block.component.html - 254,256 + 260,262 block.merkle-root @@ -2773,7 +2830,7 @@ Độ khĂł src/app/components/block/block.component.html - 265,268 + 271,274 src/app/components/difficulty-adjustments-table/difficulty-adjustments-table.component.html @@ -2802,7 +2859,7 @@ Nonce src/app/components/block/block.component.html - 269,271 + 275,277 block.nonce @@ -2811,20 +2868,30 @@ Khối tiĂȘu đề Hex src/app/components/block/block.component.html - 273,274 + 279,280 block.header + + Audit + Kiểm tra + + src/app/components/block/block.component.html + 297,301 + + Toggle Audit + block.toggle-audit + Details Chi tiáșżt src/app/components/block/block.component.html - 284,288 + 304,308 src/app/components/transaction/transaction.component.html - 254,259 + 248,253 src/app/lightning/channel/channel.component.html @@ -2846,11 +2913,11 @@ Lỗi trong lĂșc táșŁi dữ liệu. src/app/components/block/block.component.html - 303,305 + 323,325 src/app/components/block/block.component.html - 339,343 + 362,366 src/app/lightning/channel/channel-preview.component.html @@ -2872,9 +2939,10 @@ Why is this block empty? + TáșĄi sao khối nĂ y trống? src/app/components/block/block.component.html - 361,367 + 384,390 block.empty-block-explanation @@ -2920,18 +2988,6 @@ latest-blocks.mined - - Health - - src/app/components/blocks-list/blocks-list.component.html - 18,19 - - - src/app/components/blocks-list/blocks-list.component.html - 18,19 - - latest-blocks.health - Reward Pháș§n thưởng @@ -2995,7 +3051,7 @@ src/app/dashboard/dashboard.component.html - 210,214 + 219,223 dashboard.txs @@ -3234,7 +3290,7 @@ src/app/dashboard/dashboard.component.html - 237,238 + 246,247 dashboard.incoming-transactions @@ -3247,7 +3303,7 @@ src/app/dashboard/dashboard.component.html - 240,243 + 249,252 dashboard.backend-is-synchronizing @@ -3260,7 +3316,7 @@ src/app/dashboard/dashboard.component.html - 245,250 + 254,259 vB/s shared.vbytes-per-second @@ -3274,7 +3330,7 @@ src/app/dashboard/dashboard.component.html - 208,209 + 217,218 Unconfirmed count dashboard.unconfirmed @@ -3531,7 +3587,7 @@ src/app/components/master-page/master-page.component.html - 52,54 + 51,53 src/app/components/statistics/statistics.component.ts @@ -3557,7 +3613,7 @@ TrĂŹnh duyệt Lightning src/app/components/master-page/master-page.component.html - 44,45 + 44,47 src/app/lightning/lightning-dashboard/lightning-dashboard.component.ts @@ -3565,21 +3621,12 @@ master-page.lightning - - beta - báșŁn beta - - src/app/components/master-page/master-page.component.html - 45,48 - - beta - Documentation TĂ i liệu src/app/components/master-page/master-page.component.html - 55,57 + 54,56 src/app/docs/docs/docs.component.html @@ -3659,6 +3706,32 @@ dashboard.adjustments + + Broadcast Transaction + Truyền táșŁi Giao dịch + + src/app/components/mining-dashboard/mining-dashboard.component.html + 92 + + + src/app/components/push-transaction/push-transaction.component.html + 2 + + + src/app/components/push-transaction/push-transaction.component.html + 8 + + + src/app/dashboard/dashboard.component.html + 161,169 + + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 102 + + Broadcast Transaction + shared.broadcast-transaction + Pools luck (1 week) Pools luck (1 tuáș§n) @@ -3726,7 +3799,7 @@ src/app/components/pool-ranking/pool-ranking.component.html - 136,138 + 152,154 master-page.blocks @@ -3756,12 +3829,25 @@ mining.rank + + Avg Health + Sức khỏe trung bĂŹnh + + src/app/components/pool-ranking/pool-ranking.component.html + 96,97 + + + src/app/components/pool-ranking/pool-ranking.component.html + 96,98 + + latest-blocks.avg_health + Empty blocks CĂĄc khối trống src/app/components/pool-ranking/pool-ranking.component.html - 95,98 + 97,100 mining.empty-blocks @@ -3770,7 +3856,7 @@ Táș„t cáșŁ thợ đào src/app/components/pool-ranking/pool-ranking.component.html - 113,114 + 129,130 mining.all-miners @@ -3779,7 +3865,7 @@ Pool Luck (1 tuáș§n) src/app/components/pool-ranking/pool-ranking.component.html - 130,132 + 146,148 mining.miners-luck @@ -3788,7 +3874,7 @@ Số lÆ°á»Łng Pool (1 tuáș§n) src/app/components/pool-ranking/pool-ranking.component.html - 142,144 + 158,160 mining.miners-count @@ -3797,7 +3883,7 @@ Pool đào src/app/components/pool-ranking/pool-ranking.component.ts - 57 + 58 @@ -4024,24 +4110,6 @@ latest-blocks.coinbasetag - - Broadcast Transaction - Truyền táșŁi Giao dịch - - src/app/components/push-transaction/push-transaction.component.html - 2 - - - src/app/components/push-transaction/push-transaction.component.html - 8 - - - src/app/dashboard/dashboard.component.html - 154,161 - - Broadcast Transaction - shared.broadcast-transaction - Transaction hex Hex giao dịch @@ -4051,7 +4119,7 @@ src/app/components/transaction/transaction.component.html - 296,297 + 290,291 transaction.hex @@ -4083,6 +4151,7 @@ Avg Block Fees + PhĂ­ khối trung bĂŹnh src/app/components/reward-stats/reward-stats.component.html 17 @@ -4095,6 +4164,7 @@ Average fees per block in the past 144 blocks + PhĂ­ trung bĂŹnh cho mỗi khối trong 144 khối vừa qua src/app/components/reward-stats/reward-stats.component.html 18,20 @@ -4103,6 +4173,7 @@ BTC/block + BTC/khối src/app/components/reward-stats/reward-stats.component.html 21,24 @@ -4112,6 +4183,7 @@ Avg Tx Fee + PhĂ­ giao dịch trung bĂŹnh src/app/components/reward-stats/reward-stats.component.html 30 @@ -4172,6 +4244,78 @@ search-form.search-title + + Bitcoin Block Height + Chiều cao khối Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 3 + + search.bitcoin-block-height + + + Bitcoin Transaction + Giao dịch Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 9 + + search.bitcoin-transaction + + + Bitcoin Address + Địa chỉ Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 15 + + search.bitcoin-address + + + Bitcoin Block + Khối Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 21 + + search.bitcoin-block + + + Bitcoin Addresses + Địa chỉ Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 27 + + search.bitcoin-addresses + + + Lightning Nodes + NĂșt Lightning + + src/app/components/search-form/search-results/search-results.component.html + 35 + + search.lightning-nodes + + + Lightning Channels + KĂȘnh Lightning + + src/app/components/search-form/search-results/search-results.component.html + 43 + + search.lightning-channels + + + Go to "" + Tới &quot; &quot; + + src/app/components/search-form/search-results/search-results.component.html + 52 + + search.go-to + Mempool by vBytes (sat/vByte) Mempool theo vBytes (sat / vByte) @@ -4429,6 +4573,7 @@ This transaction replaced: + Giao dịch nĂ y đã thay tháșż: src/app/components/transaction/transaction.component.html 10,12 @@ -4438,6 +4583,7 @@ Replaced + Đã thay tháșż src/app/components/transaction/transaction.component.html 36,39 @@ -4454,7 +4600,7 @@ src/app/components/transactions-list/transactions-list.component.html - 298,301 + 300,303 Transaction unconfirmed state transaction.unconfirmed @@ -4464,7 +4610,7 @@ Láș§n đáș§u tháș„y src/app/components/transaction/transaction.component.html - 108,109 + 102,103 src/app/lightning/node/node.component.html @@ -4498,7 +4644,7 @@ Thời gian dá»± kiáșżn src/app/components/transaction/transaction.component.html - 115,116 + 109,110 Transaction ETA transaction.eta @@ -4508,7 +4654,7 @@ Trong vĂ i giờ (hoáș·c hÆĄn) src/app/components/transaction/transaction.component.html - 121,124 + 115,118 Transaction ETA in several hours or more transaction.eta.in-several-hours @@ -4518,11 +4664,11 @@ Descendant src/app/components/transaction/transaction.component.html - 168,170 + 162,164 src/app/components/transaction/transaction.component.html - 179,181 + 173,175 Descendant transaction.descendant @@ -4532,7 +4678,7 @@ Ancestor src/app/components/transaction/transaction.component.html - 190,192 + 184,186 Transaction Ancestor transaction.ancestor @@ -4542,11 +4688,11 @@ lưu lÆ°á»Łng src/app/components/transaction/transaction.component.html - 208,211 + 202,205 src/app/components/transaction/transaction.component.html - 346,350 + 340,344 Transaction flow transaction.flow @@ -4556,7 +4702,7 @@ áșšn sÆĄ đồ src/app/components/transaction/transaction.component.html - 211,216 + 205,210 hide-diagram @@ -4565,7 +4711,7 @@ Hiển thị nhiều hÆĄn src/app/components/transaction/transaction.component.html - 231,233 + 225,227 src/app/components/transactions-list/transactions-list.component.html @@ -4582,7 +4728,7 @@ Hiển thị Ă­t hÆĄn src/app/components/transaction/transaction.component.html - 233,239 + 227,233 src/app/components/transactions-list/transactions-list.component.html @@ -4595,7 +4741,7 @@ Hiển thị sÆĄ đồ src/app/components/transaction/transaction.component.html - 253,254 + 247,248 show-diagram @@ -4604,7 +4750,7 @@ Thời gian khĂła src/app/components/transaction/transaction.component.html - 292,294 + 286,288 transaction.locktime @@ -4613,7 +4759,7 @@ KhĂŽng tĂŹm tháș„y giao dịch. src/app/components/transaction/transaction.component.html - 455,456 + 449,450 transaction.error.transaction-not-found @@ -4622,7 +4768,7 @@ Đang đợi nĂł xuáș„t hiện trong mempool ... src/app/components/transaction/transaction.component.html - 456,461 + 450,455 transaction.error.waiting-for-it-to-appear @@ -4631,7 +4777,7 @@ Tá»· lệ phĂ­ hiệu quáșŁ src/app/components/transaction/transaction.component.html - 489,492 + 485,488 Effective transaction fee rate transaction.effective-fee-rate @@ -4777,17 +4923,19 @@ Show more inputs to reveal fee data + Hiển thị thĂȘm đáș§u vĂ o để tiáșżt lộ dữ liệu phĂ­ src/app/components/transactions-list/transactions-list.component.html - 288,291 + 290,293 transactions-list.load-to-reveal-fee-info remaining + cĂČn láșĄi src/app/components/transactions-list/transactions-list.component.html - 330,331 + 332,333 x-remaining @@ -4935,6 +5083,7 @@ This transaction does not use Taproot + Giao dịch nĂ y khĂŽng sá»­ dỄng Taproot src/app/components/tx-features/tx-features.component.html 18 @@ -5037,21 +5186,12 @@ dashboard.latest-transactions - - USD - USD - - src/app/dashboard/dashboard.component.html - 126,127 - - dashboard.latest-transactions.USD - Minimum fee PhĂ­ tối thiểu src/app/dashboard/dashboard.component.html - 201,202 + 210,211 Minimum mempool fee dashboard.minimum-fee @@ -5061,7 +5201,7 @@ Thanh lọc src/app/dashboard/dashboard.component.html - 202,203 + 211,212 Purgin below fee dashboard.purging @@ -5071,7 +5211,7 @@ Sá»­ dỄng bộ nhớ src/app/dashboard/dashboard.component.html - 214,215 + 223,224 Memory usage dashboard.memory-usage @@ -5081,16 +5221,25 @@ L-BTC đang lưu hĂ nh src/app/dashboard/dashboard.component.html - 228,230 + 237,239 dashboard.lbtc-pegs-in-circulation + + mempool.space merely provides data about the Bitcoin network. It cannot help you with retrieving funds, confirming your transaction quicker, etc. + mempool.space chỉ cung cáș„p dữ liệu về máșĄng Bitcoin. Trang khĂŽng thể giĂșp báșĄn láș„y tiền, xĂĄc nháș­n giao dịch cá»§a báșĄn nhanh hÆĄn, v.v. + + src/app/docs/api-docs/api-docs.component.html + 13 + + faq.big-disclaimer + REST API service Dịch vỄ REST API src/app/docs/api-docs/api-docs.component.html - 39,40 + 41,42 api-docs.title @@ -5099,11 +5248,11 @@ Điểm cuối src/app/docs/api-docs/api-docs.component.html - 48,49 + 50,51 src/app/docs/api-docs/api-docs.component.html - 102,105 + 104,107 Api docs endpoint @@ -5112,11 +5261,11 @@ Sá»± miĂȘu táșŁ src/app/docs/api-docs/api-docs.component.html - 67,68 + 69,70 src/app/docs/api-docs/api-docs.component.html - 106,107 + 108,109 @@ -5124,7 +5273,7 @@ Push máș·c định: hĂ nh động: 'want', dữ liệu: ['blocks', ...] để thể hiện những gĂŹ báșĄn muốn đáș©y. CĂł sáș”n: khối , mempool-khối , live-2h-chart c195a641ez0c195ez0. Đáș©y cĂĄc giao dịch liĂȘn quan đáșżn địa chỉ: 'track-address': '3PbJ ... bF9B' a0c95ez0 đáș§u vĂ o để nháș­n cĂĄc giao dịch đáș§u vĂ o a0c95ez0 a0c95ez0 đó để nháș­n địa chỉ đáș§u vĂ o lĂ  all95ez0. TráșŁ về một máșŁng cĂĄc giao dịch. địa chỉ-giao dịch cho cĂĄc giao dịch mempool mới vĂ  giao dịch khối cho cĂĄc giao dịch Ä‘Æ°á»Łc xĂĄc nháș­n khối mới. src/app/docs/api-docs/api-docs.component.html - 107,108 + 109,110 api-docs.websocket.websocket @@ -5297,12 +5446,13 @@ src/app/lightning/channels-list/channels-list.component.html - 120,121 + 123,124 lightning.x-channels Starting balance + Số dư báșŻt đáș§u src/app/lightning/channel/channel-close-box/channel-close-box.component.html 6 @@ -5312,6 +5462,7 @@ Closing balance + Số dư káșżt thĂșc src/app/lightning/channel/channel-close-box/channel-close-box.component.html 12 @@ -5341,7 +5492,7 @@ src/app/lightning/channels-list/channels-list.component.html - 65,66 + 68,69 status.inactive @@ -5358,7 +5509,7 @@ src/app/lightning/channels-list/channels-list.component.html - 66,68 + 69,71 status.active @@ -5379,7 +5530,7 @@ src/app/lightning/channels-list/channels-list.component.html - 68,70 + 71,73 status.closed @@ -5409,7 +5560,7 @@ src/app/lightning/channels-list/channels-list.component.html - 40,43 + 43,46 src/app/lightning/node-statistics/node-statistics.component.html @@ -5417,7 +5568,7 @@ src/app/lightning/node-statistics/node-statistics.component.html - 47,50 + 46,49 src/app/lightning/nodes-list/nodes-list.component.html @@ -5525,12 +5676,13 @@ src/app/lightning/channels-list/channels-list.component.html - 39,40 + 42,43 lightning.closing_date Closed by + Đóng bởi src/app/lightning/channel/channel.component.html 52,54 @@ -5563,6 +5715,30 @@ 37 + + Mutually closed + Đóng láș«n nhau + + src/app/lightning/channel/closing-type/closing-type.component.ts + 20 + + + + Force closed + Buộc đóng + + src/app/lightning/channel/closing-type/closing-type.component.ts + 24 + + + + Force closed with penalty + BáșŻt buộc đóng với khoáșŁn pháșĄt + + src/app/lightning/channel/closing-type/closing-type.component.ts + 28 + + Open Mở @@ -5577,7 +5753,7 @@ KhĂŽng cĂł kĂȘnh nĂ o để hiển thị src/app/lightning/channels-list/channels-list.component.html - 29,35 + 29,37 lightning.empty-channels-list @@ -5586,7 +5762,7 @@ TĂȘn riĂȘng src/app/lightning/channels-list/channels-list.component.html - 35,37 + 38,40 src/app/lightning/group/group.component.html @@ -5623,7 +5799,7 @@ TráșĄng thĂĄi src/app/lightning/channels-list/channels-list.component.html - 37,38 + 40,41 status @@ -5632,7 +5808,7 @@ ID kĂȘnh src/app/lightning/channels-list/channels-list.component.html - 41,45 + 44,48 channels.id @@ -5641,11 +5817,11 @@ satoshi src/app/lightning/channels-list/channels-list.component.html - 60,64 + 63,67 src/app/lightning/channels-list/channels-list.component.html - 84,88 + 87,91 src/app/lightning/channels-statistics/channels-statistics.component.html @@ -5689,6 +5865,24 @@ shared.sats + + avg + trung bĂŹnh + + src/app/lightning/channels-statistics/channels-statistics.component.html + 3,5 + + statistics.average-small + + + med + trung vị + + src/app/lightning/channels-statistics/channels-statistics.component.html + 6,9 + + statistics.median-small + Avg Capacity CĂŽng suáș„t trung bĂŹnh @@ -5817,11 +6011,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 17,18 + 16,17 src/app/lightning/node-statistics/node-statistics.component.html - 54,57 + 53,56 src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html @@ -5891,11 +6085,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 29,30 + 28,29 src/app/lightning/node-statistics/node-statistics.component.html - 61,64 + 60,63 src/app/lightning/nodes-list/nodes-list.component.html @@ -6052,12 +6246,37 @@ Fee distribution + PhĂąn bổ phĂ­ src/app/lightning/node-fee-chart/node-fee-chart.component.html 2 lightning.node-fee-distribution + + Outgoing Fees + PhĂ­ đáș§u ra + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 170 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 208 + + + + Incoming Fees + PhĂ­ đáș§u vĂ o + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 178 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 222 + + Percentage change past week Pháș§n trăm thay đổi trong tuáș§n trước @@ -6067,11 +6286,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 18,20 + 17,19 src/app/lightning/node-statistics/node-statistics.component.html - 30,32 + 29,31 mining.percentage-change-last-week @@ -6147,6 +6366,7 @@ Avg channel distance + KhoáșŁng cĂĄch kĂȘnh trung bĂŹnh src/app/lightning/node/node.component.html 56,57 @@ -6186,6 +6406,7 @@ Liquidity ad + QuáșŁng cĂĄo thanh khoáșŁn src/app/lightning/node/node.component.html 138,141 @@ -6194,6 +6415,7 @@ Lease fee rate + GiĂĄ thuĂȘ src/app/lightning/node/node.component.html 144,147 @@ -6203,6 +6425,7 @@ Lease base fee + PhĂ­ thuĂȘ cÆĄ sở src/app/lightning/node/node.component.html 152,154 @@ -6211,6 +6434,7 @@ Funding weight + Trọng lÆ°á»Łng nguồn quá»č src/app/lightning/node/node.component.html 158,159 @@ -6219,6 +6443,7 @@ Channel fee rate + PhĂ­ kĂȘnh src/app/lightning/node/node.component.html 168,171 @@ -6228,6 +6453,7 @@ Channel base fee + PhĂ­ kĂȘnh cÆĄ sở src/app/lightning/node/node.component.html 176,178 @@ -6236,6 +6462,7 @@ Compact lease + ThuĂȘ gĂłi nhỏ src/app/lightning/node/node.component.html 188,190 @@ -6244,6 +6471,7 @@ TLV extension records + Hồ sÆĄ gia háșĄn TLV src/app/lightning/node/node.component.html 199,202 @@ -6310,7 +6538,7 @@ KhĂŽng cĂł sáș”n dữ liệu vị trĂ­ địa lĂœ src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts - 218,213 + 219,214 @@ -6324,6 +6552,7 @@ Indexing in progress + Đang láș­p chỉ mỄc src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 121,116 @@ -6591,6 +6820,7 @@ Active nodes + CĂĄc nĂșt hoáșĄt động src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 14,18 From 2309a769cd470456ce7802e91d1013cbf00bdc8c Mon Sep 17 00:00:00 2001 From: Mononaut Date: Wed, 1 Mar 2023 11:30:33 -0600 Subject: [PATCH 037/130] Don't try to fetch cpfp if database disabled --- backend/src/api/bitcoin/bitcoin.routes.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/backend/src/api/bitcoin/bitcoin.routes.ts b/backend/src/api/bitcoin/bitcoin.routes.ts index 78d027663..2fc497650 100644 --- a/backend/src/api/bitcoin/bitcoin.routes.ts +++ b/backend/src/api/bitcoin/bitcoin.routes.ts @@ -217,7 +217,15 @@ class BitcoinRoutes { res.json(cpfpInfo); return; } else { - const cpfpInfo = await transactionRepository.$getCpfpInfo(req.params.txId); + let cpfpInfo; + if (config.DATABASE.ENABLED) { + cpfpInfo = await transactionRepository.$getCpfpInfo(req.params.txId); + } else { + res.json({ + ancestors: [] + }); + return; + } if (cpfpInfo) { res.json(cpfpInfo); return; From be4bd691eec804092b263ec51cb7377dce30b12e Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Thu, 2 Mar 2023 10:08:40 +0900 Subject: [PATCH 038/130] Remove useless code --- backend/src/api/blocks.ts | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/backend/src/api/blocks.ts b/backend/src/api/blocks.ts index 12eb3b693..aa33f1ff7 100644 --- a/backend/src/api/blocks.ts +++ b/backend/src/api/blocks.ts @@ -748,30 +748,15 @@ class Blocks { return returnBlocks; } - // Check if block height exist in local cache to skip the hash lookup - const blockByHeight = this.getBlocks().find((b) => b.height === currentHeight); - let startFromHash: string | null = null; - if (blockByHeight) { - startFromHash = blockByHeight.id; - } else if (!Common.indexingEnabled()) { - startFromHash = await bitcoinApi.$getBlockHash(currentHeight); - } - - let nextHash = startFromHash; for (let i = 0; i < limit && currentHeight >= 0; i++) { let block = this.getBlocks().find((b) => b.height === currentHeight); if (block) { // Using the memory cache (find by height) returnBlocks.push(block); - } else if (Common.indexingEnabled()) { + } else { // Using indexing (find by height, index on the fly, save in database) block = await this.$indexBlock(currentHeight); returnBlocks.push(block); - } else if (nextHash !== null) { - // Without indexing, query block on the fly using bitoin backend, follow previous hash links - block = await this.$indexBlock(currentHeight); - nextHash = block.previousblockhash; - returnBlocks.push(block); } currentHeight--; } From 5129116fe452f68b4d23a04abe68ea6ec968718a Mon Sep 17 00:00:00 2001 From: nymkappa <1612910616@pm.me> Date: Thu, 2 Mar 2023 10:45:14 +0900 Subject: [PATCH 039/130] Don't run CI on "review_requested" event --- .github/workflows/cypress.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cypress.yml b/.github/workflows/cypress.yml index 8c720917e..bc66678d4 100644 --- a/.github/workflows/cypress.yml +++ b/.github/workflows/cypress.yml @@ -4,7 +4,7 @@ on: push: branches: [master] pull_request: - types: [opened, review_requested, synchronize] + types: [opened, synchronize] jobs: cypress: From ec0d8b7c485ce923ccea9393d9099b986a462aca Mon Sep 17 00:00:00 2001 From: wiz Date: Thu, 2 Mar 2023 19:30:02 +0900 Subject: [PATCH 040/130] ops: Remove fork repos from upgrade script --- production/mempool-build-all | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/production/mempool-build-all b/production/mempool-build-all index aa764da7d..b45c0edc6 100755 --- a/production/mempool-build-all +++ b/production/mempool-build-all @@ -38,7 +38,7 @@ update_repo() cd "$HOME/${site}" || exit 1 git fetch origin || exit 1 - for remote in origin hunicus mononaut;do + for remote in origin;do git remote add "${remote}" "https://github.com/${remote}/mempool" >/dev/null 2>&1 git fetch "${remote}" || exit 1 done From 7b01286ed270b7646e591e02f40ad4e755e3d658 Mon Sep 17 00:00:00 2001 From: softsimon Date: Thu, 2 Mar 2023 21:50:09 +0900 Subject: [PATCH 041/130] Run the go to anchor whenever data is loaded --- .../app/components/about/about.component.ts | 38 ++++++++++++------- 1 file changed, 24 insertions(+), 14 deletions(-) diff --git a/frontend/src/app/components/about/about.component.ts b/frontend/src/app/components/about/about.component.ts index 33c6ac5a2..0f71645d6 100644 --- a/frontend/src/app/components/about/about.component.ts +++ b/frontend/src/app/components/about/about.component.ts @@ -6,8 +6,9 @@ import { Observable } from 'rxjs'; import { ApiService } from '../../services/api.service'; import { IBackendInfo } from '../../interfaces/websocket.interface'; import { Router, ActivatedRoute } from '@angular/router'; -import { map } from 'rxjs/operators'; +import { map, tap } from 'rxjs/operators'; import { ITranslators } from '../../interfaces/node-api.interface'; +import { DOCUMENT } from '@angular/common'; @Component({ selector: 'app-about', @@ -33,6 +34,7 @@ export class AboutComponent implements OnInit { private router: Router, private route: ActivatedRoute, @Inject(LOCALE_ID) public locale: string, + @Inject(DOCUMENT) private document: Document, ) { } ngOnInit() { @@ -40,17 +42,21 @@ export class AboutComponent implements OnInit { this.seoService.setTitle($localize`:@@004b222ff9ef9dd4771b777950ca1d0e4cd4348a:About`); this.websocketService.want(['blocks']); - this.sponsors$ = this.apiService.getDonation$(); + this.sponsors$ = this.apiService.getDonation$() + .pipe( + tap(() => this.goToAnchor()) + ); this.translators$ = this.apiService.getTranslators$() .pipe( map((translators) => { for (const t in translators) { if (translators[t] === '') { - delete translators[t] + delete translators[t]; } } return translators; - }) + }), + tap(() => this.goToAnchor()) ); this.allContributors$ = this.apiService.getContributor$().pipe( map((contributors) => { @@ -58,20 +64,24 @@ export class AboutComponent implements OnInit { regular: contributors.filter((user) => !user.core_constributor), core: contributors.filter((user) => user.core_constributor), }; - }) + }), + tap(() => this.goToAnchor()) ); } - ngAfterViewInit() { - const that = this; - setTimeout( () => { - if( this.route.snapshot.fragment ) { - if (document.getElementById( this.route.snapshot.fragment )) { - document.getElementById( this.route.snapshot.fragment ).scrollIntoView({behavior: "smooth", block: "center"}); - } + ngAfterViewInit() { + this.goToAnchor(); + } + + goToAnchor() { + setTimeout(() => { + if (this.route.snapshot.fragment) { + if (this.document.getElementById(this.route.snapshot.fragment)) { + this.document.getElementById(this.route.snapshot.fragment).scrollIntoView({behavior: 'smooth'}); } - }, 1 ); - } + } + }, 1); + } sponsor(): void { if (this.officialMempoolSpace && this.stateService.env.BASE_MODULE === 'mempool') { From a54684ad7491c01d98916b91da2e0c8c6c8c059a Mon Sep 17 00:00:00 2001 From: hunicus <93150691+hunicus@users.noreply.github.com> Date: Thu, 2 Mar 2023 07:51:30 -0500 Subject: [PATCH 042/130] Add promo video to about page --- .../app/components/about/about.component.html | 23 +++++++++--------- .../app/components/about/about.component.scss | 9 +++++++ frontend/src/resources/mempool-promo.jpg | Bin 0 -> 47149 bytes frontend/sync-assets.js | 10 ++++++-- 4 files changed, 29 insertions(+), 13 deletions(-) create mode 100644 frontend/src/resources/mempool-promo.jpg diff --git a/frontend/src/app/components/about/about.component.html b/frontend/src/app/components/about/about.component.html index 03323b6ed..05167f7bb 100644 --- a/frontend/src/app/components/about/about.component.html +++ b/frontend/src/app/components/about/about.component.html @@ -13,17 +13,7 @@

Our mempool and blockchain explorer for the Bitcoin community, focusing on the transaction fee market and multi-layer ecosystem, completely self-hosted without any trusted third-parties.

- +

Enterprise Sponsors 🚀

@@ -383,6 +373,17 @@ - +

Enterprise Sponsors 🚀

diff --git a/frontend/src/app/components/about/about.component.scss b/frontend/src/app/components/about/about.component.scss index d50c09027..694c113f2 100644 --- a/frontend/src/app/components/about/about.component.scss +++ b/frontend/src/app/components/about/about.component.scss @@ -35,7 +35,9 @@ } video { - margin-top: 48px; + width: 640px; + max-width: 90%; + margin-top: 30px; } .social-icons { From bc2d8dd7c3ab912ec886b896e8bb148f5e907862 Mon Sep 17 00:00:00 2001 From: wiz Date: Thu, 2 Mar 2023 22:42:56 +0900 Subject: [PATCH 044/130] Add mempool promo video (via YouTube) in README --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index cde9b5adb..6e3652a78 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # The Mempool Open Source Projectℱ [![mempool](https://img.shields.io/endpoint?url=https://dashboard.cypress.io/badge/simple/ry4br7/master&style=flat-square)](https://dashboard.cypress.io/projects/ry4br7/runs) +[![mempool promo video](https://raw.githubusercontent.com/mempool/mempool-promo/master/promo.jpg)](https://youtu.be/hFIF61INmQs) + Mempool is the fully-featured mempool visualizer, explorer, and API service running at [mempool.space](https://mempool.space/). It is an open-source project developed and operated for the benefit of the Bitcoin community, with a focus on the emerging transaction fee market that is evolving Bitcoin into a multi-layer ecosystem. From 210843916e9c2292680cbbf5837abea47e3434e5 Mon Sep 17 00:00:00 2001 From: wiz Date: Thu, 2 Mar 2023 22:45:51 +0900 Subject: [PATCH 045/130] Add mempool promo video (via GitHub) in README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6e3652a78..d2f9f9382 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # The Mempool Open Source Projectℱ [![mempool](https://img.shields.io/endpoint?url=https://dashboard.cypress.io/badge/simple/ry4br7/master&style=flat-square)](https://dashboard.cypress.io/projects/ry4br7/runs) -[![mempool promo video](https://raw.githubusercontent.com/mempool/mempool-promo/master/promo.jpg)](https://youtu.be/hFIF61INmQs) +https://user-images.githubusercontent.com/232186/222445818-234aa6c9-c233-4c52-b3f0-e32b8232893b.mp4 Mempool is the fully-featured mempool visualizer, explorer, and API service running at [mempool.space](https://mempool.space/). From 4f689885e63bc93e7f8e6d04ef468e596a47c184 Mon Sep 17 00:00:00 2001 From: hunicus <93150691+hunicus@users.noreply.github.com> Date: Thu, 2 Mar 2023 23:02:35 +0900 Subject: [PATCH 046/130] Remove margin from about video --- frontend/src/app/components/about/about.component.scss | 2 +- frontend/sync-assets.js | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/frontend/src/app/components/about/about.component.scss b/frontend/src/app/components/about/about.component.scss index 694c113f2..35df3fc46 100644 --- a/frontend/src/app/components/about/about.component.scss +++ b/frontend/src/app/components/about/about.component.scss @@ -37,7 +37,7 @@ video { width: 640px; max-width: 90%; - margin-top: 30px; + margin-top: 0; } .social-icons { diff --git a/frontend/sync-assets.js b/frontend/sync-assets.js index c1941a771..a39d913c8 100644 --- a/frontend/sync-assets.js +++ b/frontend/sync-assets.js @@ -92,8 +92,9 @@ console.log('Downloading testnet assets'); download(PATH + 'assets-testnet.json', testnetAssetsJsonUrl); console.log('Downloading testnet assets minimal'); download(PATH + 'assets-testnet.minimal.json', testnetAssetsMinimalJsonUrl); -console.log('Downloading promo video'); -if (!fs.existsSync(promoVideo)) +if (!fs.existsSync(promoVideo)) { + console.log('Downloading promo video'); download(promoVideo, promoVideoUrl); +} console.log('Downloading mining pool logos'); downloadMiningPoolLogos(); From 89d9c1d78d354c00da9903f9474e6231e53bf1d4 Mon Sep 17 00:00:00 2001 From: hunicus <93150691+hunicus@users.noreply.github.com> Date: Thu, 2 Mar 2023 23:38:47 +0900 Subject: [PATCH 047/130] Only show electrum tab on desktop --- frontend/src/app/docs/docs/docs.component.html | 2 +- frontend/src/app/docs/docs/docs.component.scss | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/frontend/src/app/docs/docs/docs.component.html b/frontend/src/app/docs/docs/docs.component.html index b0c51ad16..cf3bdb070 100644 --- a/frontend/src/app/docs/docs/docs.component.html +++ b/frontend/src/app/docs/docs/docs.component.html @@ -32,7 +32,7 @@ -
  • +
  • diff --git a/frontend/src/app/components/mempool-blocks/mempool-blocks.component.html b/frontend/src/app/components/mempool-blocks/mempool-blocks.component.html index 9e70c6e74..692f7d863 100644 --- a/frontend/src/app/components/mempool-blocks/mempool-blocks.component.html +++ b/frontend/src/app/components/mempool-blocks/mempool-blocks.component.html @@ -23,10 +23,10 @@
    - + - +
    diff --git a/frontend/src/app/components/pool/pool.component.html b/frontend/src/app/components/pool/pool.component.html index 53982ca86..0ae32ccb8 100644 --- a/frontend/src/app/components/pool/pool.component.html +++ b/frontend/src/app/components/pool/pool.component.html @@ -227,7 +227,7 @@ ‎{{ block.timestamp * 1000 | date:'yyyy-MM-dd HH:mm' }} - + diff --git a/frontend/src/app/components/time-since/time-since.component.ts b/frontend/src/app/components/time-since/time-since.component.ts deleted file mode 100644 index c8941a665..000000000 --- a/frontend/src/app/components/time-since/time-since.component.ts +++ /dev/null @@ -1,98 +0,0 @@ -import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, Input, ChangeDetectorRef, OnChanges } from '@angular/core'; -import { StateService } from '../../services/state.service'; -import { dates } from '../../shared/i18n/dates'; - -@Component({ - selector: 'app-time-since', - template: `{{ text }}`, - changeDetection: ChangeDetectionStrategy.OnPush -}) -export class TimeSinceComponent implements OnInit, OnChanges, OnDestroy { - interval: number; - text: string; - intervals = {}; - - @Input() time: number; - @Input() dateString: number; - @Input() fastRender = false; - - constructor( - private ref: ChangeDetectorRef, - private stateService: StateService, - ) { - this.intervals = { - year: 31536000, - month: 2592000, - week: 604800, - day: 86400, - hour: 3600, - minute: 60, - second: 1 - }; - } - - ngOnInit() { - if (!this.stateService.isBrowser) { - this.text = this.calculate(); - this.ref.markForCheck(); - return; - } - this.interval = window.setInterval(() => { - this.text = this.calculate(); - this.ref.markForCheck(); - }, 1000 * (this.fastRender ? 1 : 60)); - } - - ngOnChanges() { - this.text = this.calculate(); - this.ref.markForCheck(); - } - - ngOnDestroy() { - clearInterval(this.interval); - } - - calculate() { - let date: Date; - if (this.dateString) { - date = new Date(this.dateString) - } else { - date = new Date(this.time * 1000); - } - const seconds = Math.floor((+new Date() - +date) / 1000); - if (seconds < 60) { - return $localize`:@@date-base.just-now:Just now`; - } - let counter: number; - for (const i in this.intervals) { - if (this.intervals.hasOwnProperty(i)) { - counter = Math.floor(seconds / this.intervals[i]); - const dateStrings = dates(counter); - if (counter > 0) { - if (counter === 1) { - switch (i) { // singular (1 day) - case 'year': return $localize`:@@time-since:${dateStrings.i18nYear}:DATE: ago`; break; - case 'month': return $localize`:@@time-since:${dateStrings.i18nMonth}:DATE: ago`; break; - case 'week': return $localize`:@@time-since:${dateStrings.i18nWeek}:DATE: ago`; break; - case 'day': return $localize`:@@time-since:${dateStrings.i18nDay}:DATE: ago`; break; - case 'hour': return $localize`:@@time-since:${dateStrings.i18nHour}:DATE: ago`; break; - case 'minute': return $localize`:@@time-since:${dateStrings.i18nMinute}:DATE: ago`; break; - case 'second': return $localize`:@@time-since:${dateStrings.i18nSecond}:DATE: ago`; break; - } - } else { - switch (i) { // plural (2 days) - case 'year': return $localize`:@@time-since:${dateStrings.i18nYears}:DATE: ago`; break; - case 'month': return $localize`:@@time-since:${dateStrings.i18nMonths}:DATE: ago`; break; - case 'week': return $localize`:@@time-since:${dateStrings.i18nWeeks}:DATE: ago`; break; - case 'day': return $localize`:@@time-since:${dateStrings.i18nDays}:DATE: ago`; break; - case 'hour': return $localize`:@@time-since:${dateStrings.i18nHours}:DATE: ago`; break; - case 'minute': return $localize`:@@time-since:${dateStrings.i18nMinutes}:DATE: ago`; break; - case 'second': return $localize`:@@time-since:${dateStrings.i18nSeconds}:DATE: ago`; break; - } - } - } - } - } - } - -} diff --git a/frontend/src/app/components/time-span/time-span.component.ts b/frontend/src/app/components/time-span/time-span.component.ts deleted file mode 100644 index 03a438164..000000000 --- a/frontend/src/app/components/time-span/time-span.component.ts +++ /dev/null @@ -1,91 +0,0 @@ -import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, Input, ChangeDetectorRef, OnChanges } from '@angular/core'; -import { StateService } from '../../services/state.service'; -import { dates } from '../../shared/i18n/dates'; - -@Component({ - selector: 'app-time-span', - template: `{{ text }}`, - changeDetection: ChangeDetectionStrategy.OnPush -}) -export class TimeSpanComponent implements OnInit, OnChanges, OnDestroy { - interval: number; - text: string; - intervals = {}; - - @Input() time: number; - @Input() fastRender = false; - - constructor( - private ref: ChangeDetectorRef, - private stateService: StateService, - ) { - this.intervals = { - year: 31536000, - month: 2592000, - week: 604800, - day: 86400, - hour: 3600, - minute: 60, - second: 1 - }; - } - - ngOnInit() { - if (!this.stateService.isBrowser) { - this.text = this.calculate(); - this.ref.markForCheck(); - return; - } - this.interval = window.setInterval(() => { - this.text = this.calculate(); - this.ref.markForCheck(); - }, 1000 * (this.fastRender ? 1 : 60)); - } - - ngOnChanges() { - this.text = this.calculate(); - this.ref.markForCheck(); - } - - ngOnDestroy() { - clearInterval(this.interval); - } - - calculate() { - const seconds = Math.floor(this.time); - if (seconds < 60) { - return $localize`:@@date-base.just-now:Just now`; - } - let counter: number; - for (const i in this.intervals) { - if (this.intervals.hasOwnProperty(i)) { - counter = Math.floor(seconds / this.intervals[i]); - const dateStrings = dates(counter); - if (counter > 0) { - if (counter === 1) { - switch (i) { // singular (1 day) - case 'year': return $localize`:@@time-span:After ${dateStrings.i18nYear}:DATE:`; break; - case 'month': return $localize`:@@time-span:After ${dateStrings.i18nMonth}:DATE:`; break; - case 'week': return $localize`:@@time-span:After ${dateStrings.i18nWeek}:DATE:`; break; - case 'day': return $localize`:@@time-span:After ${dateStrings.i18nDay}:DATE:`; break; - case 'hour': return $localize`:@@time-span:After ${dateStrings.i18nHour}:DATE:`; break; - case 'minute': return $localize`:@@time-span:After ${dateStrings.i18nMinute}:DATE:`; break; - case 'second': return $localize`:@@time-span:After ${dateStrings.i18nSecond}:DATE:`; break; - } - } else { - switch (i) { // plural (2 days) - case 'year': return $localize`:@@time-span:After ${dateStrings.i18nYears}:DATE:`; break; - case 'month': return $localize`:@@time-span:After ${dateStrings.i18nMonths}:DATE:`; break; - case 'week': return $localize`:@@time-span:After ${dateStrings.i18nWeeks}:DATE:`; break; - case 'day': return $localize`:@@time-span:After ${dateStrings.i18nDays}:DATE:`; break; - case 'hour': return $localize`:@@time-span:After ${dateStrings.i18nHours}:DATE:`; break; - case 'minute': return $localize`:@@time-span:After ${dateStrings.i18nMinutes}:DATE:`; break; - case 'second': return $localize`:@@time-span:After ${dateStrings.i18nSeconds}:DATE:`; break; - } - } - } - } - } - } - -} diff --git a/frontend/src/app/components/time-until/time-until.component.ts b/frontend/src/app/components/time-until/time-until.component.ts deleted file mode 100644 index 2b370b4ac..000000000 --- a/frontend/src/app/components/time-until/time-until.component.ts +++ /dev/null @@ -1,104 +0,0 @@ -import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, Input, ChangeDetectorRef, OnChanges } from '@angular/core'; -import { StateService } from '../../services/state.service'; -import { dates } from '../../shared/i18n/dates'; - -@Component({ - selector: 'app-time-until', - template: `{{ text }}`, - changeDetection: ChangeDetectionStrategy.OnPush -}) -export class TimeUntilComponent implements OnInit, OnChanges, OnDestroy { - interval: number; - text: string; - intervals = {}; - - @Input() time: number; - @Input() fastRender = false; - @Input() fixedRender = false; - @Input() forceFloorOnTimeIntervals: string[]; - - constructor( - private ref: ChangeDetectorRef, - private stateService: StateService, - ) { - this.intervals = { - year: 31536000, - month: 2592000, - week: 604800, - day: 86400, - hour: 3600, - minute: 60, - second: 1 - }; - } - - ngOnInit() { - if(this.fixedRender){ - this.text = this.calculate(); - return; - } - - if (!this.stateService.isBrowser) { - this.text = this.calculate(); - this.ref.markForCheck(); - return; - } - this.interval = window.setInterval(() => { - this.text = this.calculate(); - this.ref.markForCheck(); - }, 1000 * (this.fastRender ? 1 : 60)); - } - - ngOnChanges() { - this.text = this.calculate(); - this.ref.markForCheck(); - } - - ngOnDestroy() { - clearInterval(this.interval); - } - - calculate() { - const seconds = (+new Date(this.time) - +new Date()) / 1000; - - if (seconds < 60) { - const dateStrings = dates(1); - return $localize`:@@time-until:In ~${dateStrings.i18nMinute}:DATE:`; - } - let counter: number; - for (const i in this.intervals) { - if (this.intervals.hasOwnProperty(i)) { - if (this.forceFloorOnTimeIntervals && this.forceFloorOnTimeIntervals.indexOf(i) > -1) { - counter = Math.floor(seconds / this.intervals[i]); - } else { - counter = Math.round(seconds / this.intervals[i]); - } - const dateStrings = dates(counter); - if (counter > 0) { - if (counter === 1) { - switch (i) { // singular (In ~1 day) - case 'year': return $localize`:@@time-until:In ~${dateStrings.i18nYear}:DATE:`; break; - case 'month': return $localize`:@@time-until:In ~${dateStrings.i18nMonth}:DATE:`; break; - case 'week': return $localize`:@@time-until:In ~${dateStrings.i18nWeek}:DATE:`; break; - case 'day': return $localize`:@@time-until:In ~${dateStrings.i18nDay}:DATE:`; break; - case 'hour': return $localize`:@@time-until:In ~${dateStrings.i18nHour}:DATE:`; break; - case 'minute': return $localize`:@@time-until:In ~${dateStrings.i18nMinute}:DATE:`; - case 'second': return $localize`:@@time-until:In ~${dateStrings.i18nSecond}:DATE:`; - } - } else { - switch (i) { // plural (In ~2 days) - case 'year': return $localize`:@@time-until:In ~${dateStrings.i18nYears}:DATE:`; break; - case 'month': return $localize`:@@time-until:In ~${dateStrings.i18nMonths}:DATE:`; break; - case 'week': return $localize`:@@time-until:In ~${dateStrings.i18nWeeks}:DATE:`; break; - case 'day': return $localize`:@@time-until:In ~${dateStrings.i18nDays}:DATE:`; break; - case 'hour': return $localize`:@@time-until:In ~${dateStrings.i18nHours}:DATE:`; break; - case 'minute': return $localize`:@@time-until:In ~${dateStrings.i18nMinutes}:DATE:`; break; - case 'second': return $localize`:@@time-until:In ~${dateStrings.i18nSeconds}:DATE:`; break; - } - } - } - } - } - } - -} diff --git a/frontend/src/app/components/time/time.component.ts b/frontend/src/app/components/time/time.component.ts new file mode 100644 index 000000000..f46583fba --- /dev/null +++ b/frontend/src/app/components/time/time.component.ts @@ -0,0 +1,108 @@ +import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, Input, ChangeDetectorRef, OnChanges } from '@angular/core'; +import { StateService } from '../../services/state.service'; +import { dates } from '../../shared/i18n/dates'; + +@Component({ + selector: 'app-time', + template: `{{ text }}`, + changeDetection: ChangeDetectionStrategy.OnPush +}) +export class TimeComponent implements OnInit, OnChanges, OnDestroy { + interval: number; + text: string; + intervals = {}; + + @Input() time: number; + @Input() dateString: number; + @Input() kind: 'plain' | 'since' | 'until' | 'span' = 'plain'; + @Input() fastRender = false; + @Input() fixedRender = false; + @Input() relative = false; + @Input() forceFloorOnTimeIntervals: string[]; + + constructor( + private ref: ChangeDetectorRef, + private stateService: StateService, + ) { + this.intervals = { + Year: 31536000, + Month: 2592000, + Week: 604800, + Day: 86400, + Hour: 3600, + Minute: 60, + Second: 1 + }; + } + + ngOnInit() { + if(this.fixedRender){ + this.text = this.calculate(); + return; + } + if (!this.stateService.isBrowser) { + this.text = this.calculate(); + this.ref.markForCheck(); + return; + } + this.interval = window.setInterval(() => { + this.text = this.calculate(); + this.ref.markForCheck(); + }, 1000 * (this.fastRender ? 1 : 60)); + } + + ngOnChanges() { + this.text = this.calculate(); + this.ref.markForCheck(); + } + + ngOnDestroy() { + clearInterval(this.interval); + } + + calculate() { + let seconds: number; + switch (this.kind) { + case 'since': + seconds = Math.floor((+new Date() - +new Date(this.dateString || this.time * 1000)) / 1000); + break; + case 'until': + seconds = (+new Date(this.time) - +new Date()) / 1000; + break; + default: + seconds = Math.floor(this.time); + } + + if (seconds < 60) { + if (this.relative || this.kind === 'since') { + return $localize`:@@date-base.just-now:Just now`; + } else if (this.kind === 'until') { + seconds = 60; + } + } + + let counter: number; + for (const i in this.intervals) { + if (this.kind !== 'until' || this.forceFloorOnTimeIntervals && this.forceFloorOnTimeIntervals.indexOf(i.toLowerCase()) > -1) { + counter = Math.floor(seconds / this.intervals[i]); + } else { + counter = Math.round(seconds / this.intervals[i]); + } + const dateStrings = dates(counter); + if (counter > 0) { + const dateStringKey = `i18n${i}${counter === 1 ? '' : 's'}`; + switch (this.kind) { + case 'since': + return $localize`:@@time-since:${dateStrings[dateStringKey]}:DATE: ago`; + case 'until': + return $localize`:@@time-until:In ~${dateStrings[dateStringKey]}:DATE:`; + case 'span': + return $localize`:@@time-span:After ${dateStrings[dateStringKey]}:DATE:`; + default: + return dateStrings[dateStringKey]; + } + } + } + } + +} diff --git a/frontend/src/app/components/transaction/transaction.component.html b/frontend/src/app/components/transaction/transaction.component.html index 07234f7bc..455c74c99 100644 --- a/frontend/src/app/components/transaction/transaction.component.html +++ b/frontend/src/app/components/transaction/transaction.component.html @@ -57,14 +57,14 @@ ‎{{ tx.status.block_time * 1000 | date:'yyyy-MM-dd HH:mm' }}
    - () + ()
    Confirmed - + @@ -100,7 +100,7 @@ First seen - +
    @@ -116,10 +116,10 @@ - + - + diff --git a/frontend/src/app/components/transactions-list/transactions-list.component.html b/frontend/src/app/components/transactions-list/transactions-list.component.html index e5280d572..cb54e1870 100644 --- a/frontend/src/app/components/transactions-list/transactions-list.component.html +++ b/frontend/src/app/components/transactions-list/transactions-list.component.html @@ -6,7 +6,7 @@
    ‎{{ tx.status.block_time * 1000 | date:'yyyy-MM-dd HH:mm' }} - +
    diff --git a/frontend/src/app/dashboard/dashboard.component.html b/frontend/src/app/dashboard/dashboard.component.html index 7c3caccad..add846e24 100644 --- a/frontend/src/app/dashboard/dashboard.component.html +++ b/frontend/src/app/dashboard/dashboard.component.html @@ -93,7 +93,7 @@ {{ block.height }} - + ‎{{ seconds * 1000 | date: customFormat ?? 'yyyy-MM-dd HH:mm' }}
    - () + ()
    diff --git a/frontend/src/app/shared/shared.module.ts b/frontend/src/app/shared/shared.module.ts index fd257db85..52b469836 100644 --- a/frontend/src/app/shared/shared.module.ts +++ b/frontend/src/app/shared/shared.module.ts @@ -25,8 +25,7 @@ import { BytesPipe } from './pipes/bytes-pipe/bytes.pipe'; import { WuBytesPipe } from './pipes/bytes-pipe/wubytes.pipe'; import { FiatCurrencyPipe } from './pipes/fiat-currency.pipe'; import { BlockchainComponent } from '../components/blockchain/blockchain.component'; -import { TimeSinceComponent } from '../components/time-since/time-since.component'; -import { TimeUntilComponent } from '../components/time-until/time-until.component'; +import { TimeComponent } from '../components/time/time.component'; import { ClipboardComponent } from '../components/clipboard/clipboard.component'; import { QrcodeComponent } from '../components/qrcode/qrcode.component'; import { FiatComponent } from '../fiat/fiat.component'; @@ -53,7 +52,6 @@ import { AddressComponent } from '../components/address/address.component'; import { SearchFormComponent } from '../components/search-form/search-form.component'; import { AddressLabelsComponent } from '../components/address-labels/address-labels.component'; import { FooterComponent } from '../components/footer/footer.component'; -import { TimeSpanComponent } from '../components/time-span/time-span.component'; import { AssetComponent } from '../components/asset/asset.component'; import { AssetsComponent } from '../components/assets/assets.component'; import { AssetsNavComponent } from '../components/assets/assets-nav/assets-nav.component'; @@ -88,8 +86,7 @@ import { GeolocationComponent } from '../shared/components/geolocation/geolocati @NgModule({ declarations: [ ClipboardComponent, - TimeSinceComponent, - TimeUntilComponent, + TimeComponent, QrcodeComponent, FiatComponent, TxFeaturesComponent, @@ -129,7 +126,6 @@ import { GeolocationComponent } from '../shared/components/geolocation/geolocati TransactionsListComponent, AddressComponent, SearchFormComponent, - TimeSpanComponent, AddressLabelsComponent, FooterComponent, AssetComponent, @@ -195,8 +191,7 @@ import { GeolocationComponent } from '../shared/components/geolocation/geolocati NgbCollapseModule, InfiniteScrollModule, FontAwesomeModule, - TimeSinceComponent, - TimeUntilComponent, + TimeComponent, ClipboardComponent, QrcodeComponent, FiatComponent, @@ -232,7 +227,6 @@ import { GeolocationComponent } from '../shared/components/geolocation/geolocati TransactionsListComponent, AddressComponent, SearchFormComponent, - TimeSpanComponent, AddressLabelsComponent, FooterComponent, AssetComponent, From 7f78fefb210bae04797edcfbfd1582bf32de1484 Mon Sep 17 00:00:00 2001 From: Mononaut Date: Sun, 5 Mar 2023 21:09:22 -0600 Subject: [PATCH 087/130] revert time localization strings --- .../src/app/components/time/time.component.ts | 108 +++++++++++++++--- 1 file changed, 95 insertions(+), 13 deletions(-) diff --git a/frontend/src/app/components/time/time.component.ts b/frontend/src/app/components/time/time.component.ts index f46583fba..4cc76975e 100644 --- a/frontend/src/app/components/time/time.component.ts +++ b/frontend/src/app/components/time/time.component.ts @@ -25,13 +25,13 @@ export class TimeComponent implements OnInit, OnChanges, OnDestroy { private stateService: StateService, ) { this.intervals = { - Year: 31536000, - Month: 2592000, - Week: 604800, - Day: 86400, - Hour: 3600, - Minute: 60, - Second: 1 + year: 31536000, + month: 2592000, + week: 604800, + day: 86400, + hour: 3600, + minute: 60, + second: 1 }; } @@ -83,23 +83,105 @@ export class TimeComponent implements OnInit, OnChanges, OnDestroy { let counter: number; for (const i in this.intervals) { - if (this.kind !== 'until' || this.forceFloorOnTimeIntervals && this.forceFloorOnTimeIntervals.indexOf(i.toLowerCase()) > -1) { + if (this.kind !== 'until' || this.forceFloorOnTimeIntervals && this.forceFloorOnTimeIntervals.indexOf(i) > -1) { counter = Math.floor(seconds / this.intervals[i]); } else { counter = Math.round(seconds / this.intervals[i]); } const dateStrings = dates(counter); if (counter > 0) { - const dateStringKey = `i18n${i}${counter === 1 ? '' : 's'}`; switch (this.kind) { case 'since': - return $localize`:@@time-since:${dateStrings[dateStringKey]}:DATE: ago`; + if (counter === 1) { + switch (i) { // singular (1 day) + case 'year': return $localize`:@@time-since:${dateStrings.i18nYear}:DATE: ago`; break; + case 'month': return $localize`:@@time-since:${dateStrings.i18nMonth}:DATE: ago`; break; + case 'week': return $localize`:@@time-since:${dateStrings.i18nWeek}:DATE: ago`; break; + case 'day': return $localize`:@@time-since:${dateStrings.i18nDay}:DATE: ago`; break; + case 'hour': return $localize`:@@time-since:${dateStrings.i18nHour}:DATE: ago`; break; + case 'minute': return $localize`:@@time-since:${dateStrings.i18nMinute}:DATE: ago`; break; + case 'second': return $localize`:@@time-since:${dateStrings.i18nSecond}:DATE: ago`; break; + } + } else { + switch (i) { // plural (2 days) + case 'year': return $localize`:@@time-since:${dateStrings.i18nYears}:DATE: ago`; break; + case 'month': return $localize`:@@time-since:${dateStrings.i18nMonths}:DATE: ago`; break; + case 'week': return $localize`:@@time-since:${dateStrings.i18nWeeks}:DATE: ago`; break; + case 'day': return $localize`:@@time-since:${dateStrings.i18nDays}:DATE: ago`; break; + case 'hour': return $localize`:@@time-since:${dateStrings.i18nHours}:DATE: ago`; break; + case 'minute': return $localize`:@@time-since:${dateStrings.i18nMinutes}:DATE: ago`; break; + case 'second': return $localize`:@@time-since:${dateStrings.i18nSeconds}:DATE: ago`; break; + } + } + break; case 'until': - return $localize`:@@time-until:In ~${dateStrings[dateStringKey]}:DATE:`; + if (counter === 1) { + switch (i) { // singular (In ~1 day) + case 'year': return $localize`:@@time-until:In ~${dateStrings.i18nYear}:DATE:`; break; + case 'month': return $localize`:@@time-until:In ~${dateStrings.i18nMonth}:DATE:`; break; + case 'week': return $localize`:@@time-until:In ~${dateStrings.i18nWeek}:DATE:`; break; + case 'day': return $localize`:@@time-until:In ~${dateStrings.i18nDay}:DATE:`; break; + case 'hour': return $localize`:@@time-until:In ~${dateStrings.i18nHour}:DATE:`; break; + case 'minute': return $localize`:@@time-until:In ~${dateStrings.i18nMinute}:DATE:`; + case 'second': return $localize`:@@time-until:In ~${dateStrings.i18nSecond}:DATE:`; + } + } else { + switch (i) { // plural (In ~2 days) + case 'year': return $localize`:@@time-until:In ~${dateStrings.i18nYears}:DATE:`; break; + case 'month': return $localize`:@@time-until:In ~${dateStrings.i18nMonths}:DATE:`; break; + case 'week': return $localize`:@@time-until:In ~${dateStrings.i18nWeeks}:DATE:`; break; + case 'day': return $localize`:@@time-until:In ~${dateStrings.i18nDays}:DATE:`; break; + case 'hour': return $localize`:@@time-until:In ~${dateStrings.i18nHours}:DATE:`; break; + case 'minute': return $localize`:@@time-until:In ~${dateStrings.i18nMinutes}:DATE:`; break; + case 'second': return $localize`:@@time-until:In ~${dateStrings.i18nSeconds}:DATE:`; break; + } + } + break; case 'span': - return $localize`:@@time-span:After ${dateStrings[dateStringKey]}:DATE:`; + if (counter === 1) { + switch (i) { // singular (1 day) + case 'year': return $localize`:@@time-span:After ${dateStrings.i18nYear}:DATE:`; break; + case 'month': return $localize`:@@time-span:After ${dateStrings.i18nMonth}:DATE:`; break; + case 'week': return $localize`:@@time-span:After ${dateStrings.i18nWeek}:DATE:`; break; + case 'day': return $localize`:@@time-span:After ${dateStrings.i18nDay}:DATE:`; break; + case 'hour': return $localize`:@@time-span:After ${dateStrings.i18nHour}:DATE:`; break; + case 'minute': return $localize`:@@time-span:After ${dateStrings.i18nMinute}:DATE:`; break; + case 'second': return $localize`:@@time-span:After ${dateStrings.i18nSecond}:DATE:`; break; + } + } else { + switch (i) { // plural (2 days) + case 'year': return $localize`:@@time-span:After ${dateStrings.i18nYears}:DATE:`; break; + case 'month': return $localize`:@@time-span:After ${dateStrings.i18nMonths}:DATE:`; break; + case 'week': return $localize`:@@time-span:After ${dateStrings.i18nWeeks}:DATE:`; break; + case 'day': return $localize`:@@time-span:After ${dateStrings.i18nDays}:DATE:`; break; + case 'hour': return $localize`:@@time-span:After ${dateStrings.i18nHours}:DATE:`; break; + case 'minute': return $localize`:@@time-span:After ${dateStrings.i18nMinutes}:DATE:`; break; + case 'second': return $localize`:@@time-span:After ${dateStrings.i18nSeconds}:DATE:`; break; + } + } + break; default: - return dateStrings[dateStringKey]; + if (counter === 1) { + switch (i) { // singular (1 day) + case 'year': return dateStrings.i18nYear; break; + case 'month': return dateStrings.i18nMonth; break; + case 'week': return dateStrings.i18nWeek; break; + case 'day': return dateStrings.i18nDay; break; + case 'hour': return dateStrings.i18nHour; break; + case 'minute': return dateStrings.i18nMinute; break; + case 'second': return dateStrings.i18nSecond; break; + } + } else { + switch (i) { // plural (2 days) + case 'year': return dateStrings.i18nYears; break; + case 'month': return dateStrings.i18nMonths; break; + case 'week': return dateStrings.i18nWeeks; break; + case 'day': return dateStrings.i18nDays; break; + case 'hour': return dateStrings.i18nHours; break; + case 'minute': return dateStrings.i18nMinutes; break; + case 'second': return dateStrings.i18nSeconds; break; + } + } } } } From 182cb1669531df2d19324fd68d54c92b5e7adf7d Mon Sep 17 00:00:00 2001 From: Mononaut Date: Mon, 6 Mar 2023 00:02:21 -0600 Subject: [PATCH 088/130] Fix unnecessary cpfp 404 responses --- backend/src/api/bitcoin/bitcoin.routes.ts | 11 +++++------ backend/src/api/mining/mining-routes.ts | 2 +- .../transaction/transaction.component.html | 3 ++- .../transaction/transaction.component.ts | 3 +++ .../transactions-list.component.ts | 13 ++++++++++--- .../tx-bowtie-graph/tx-bowtie-graph.component.ts | 15 ++++++++++++--- 6 files changed, 33 insertions(+), 14 deletions(-) diff --git a/backend/src/api/bitcoin/bitcoin.routes.ts b/backend/src/api/bitcoin/bitcoin.routes.ts index 2d5077bc4..c6323d041 100644 --- a/backend/src/api/bitcoin/bitcoin.routes.ts +++ b/backend/src/api/bitcoin/bitcoin.routes.ts @@ -220,18 +220,17 @@ class BitcoinRoutes { let cpfpInfo; if (config.DATABASE.ENABLED) { cpfpInfo = await transactionRepository.$getCpfpInfo(req.params.txId); + } + if (cpfpInfo) { + res.json(cpfpInfo); + return; } else { res.json({ ancestors: [] }); return; } - if (cpfpInfo) { - res.json(cpfpInfo); - return; - } } - res.status(404).send(`Transaction has no CPFP info available.`); } private getBackendInfo(req: Request, res: Response) { @@ -652,7 +651,7 @@ class BitcoinRoutes { if (result) { res.json(result); } else { - res.status(404).send('not found'); + res.status(204).send(); } } catch (e) { res.status(500).send(e instanceof Error ? e.message : e); diff --git a/backend/src/api/mining/mining-routes.ts b/backend/src/api/mining/mining-routes.ts index f7f392068..0198f9ab4 100644 --- a/backend/src/api/mining/mining-routes.ts +++ b/backend/src/api/mining/mining-routes.ts @@ -263,7 +263,7 @@ class MiningRoutes { const audit = await BlocksAuditsRepository.$getBlockAudit(req.params.hash); if (!audit) { - res.status(404).send(`This block has not been audited.`); + res.status(204).send(`This block has not been audited.`); return; } diff --git a/frontend/src/app/components/transaction/transaction.component.html b/frontend/src/app/components/transaction/transaction.component.html index 455c74c99..0cd4a86c2 100644 --- a/frontend/src/app/components/transaction/transaction.component.html +++ b/frontend/src/app/components/transaction/transaction.component.html @@ -210,6 +210,7 @@
    - +

    Details

    diff --git a/frontend/src/app/components/transaction/transaction.component.ts b/frontend/src/app/components/transaction/transaction.component.ts index 4fedc3912..d41ba4b63 100644 --- a/frontend/src/app/components/transaction/transaction.component.ts +++ b/frontend/src/app/components/transaction/transaction.component.ts @@ -57,6 +57,7 @@ export class TransactionComponent implements OnInit, AfterViewInit, OnDestroy { fetchCpfp$ = new Subject(); fetchRbfHistory$ = new Subject(); fetchCachedTx$ = new Subject(); + isCached: boolean = false; now = new Date().getTime(); timeAvg$: Observable; liquidUnblinding = new LiquidUnblinding(); @@ -196,6 +197,7 @@ export class TransactionComponent implements OnInit, AfterViewInit, OnDestroy { } this.tx = tx; + this.isCached = true; if (tx.fee === undefined) { this.tx.fee = 0; } @@ -289,6 +291,7 @@ export class TransactionComponent implements OnInit, AfterViewInit, OnDestroy { } this.tx = tx; + this.isCached = false; if (tx.fee === undefined) { this.tx.fee = 0; } diff --git a/frontend/src/app/components/transactions-list/transactions-list.component.ts b/frontend/src/app/components/transactions-list/transactions-list.component.ts index c720d5960..afda646d7 100644 --- a/frontend/src/app/components/transactions-list/transactions-list.component.ts +++ b/frontend/src/app/components/transactions-list/transactions-list.component.ts @@ -1,7 +1,7 @@ import { Component, OnInit, Input, ChangeDetectionStrategy, OnChanges, Output, EventEmitter, ChangeDetectorRef } from '@angular/core'; import { StateService } from '../../services/state.service'; import { CacheService } from '../../services/cache.service'; -import { Observable, ReplaySubject, BehaviorSubject, merge, Subscription } from 'rxjs'; +import { Observable, ReplaySubject, BehaviorSubject, merge, Subscription, of } from 'rxjs'; import { Outspend, Transaction, Vin, Vout } from '../../interfaces/electrs.interface'; import { ElectrsApiService } from '../../services/electrs-api.service'; import { environment } from '../../../environments/environment'; @@ -23,6 +23,7 @@ export class TransactionsListComponent implements OnInit, OnChanges { showMoreIncrement = 1000; @Input() transactions: Transaction[]; + @Input() cached: boolean = false; @Input() showConfirmations = false; @Input() transactionPage = false; @Input() errorUnblinded = false; @@ -67,7 +68,13 @@ export class TransactionsListComponent implements OnInit, OnChanges { this.outspendsSubscription = merge( this.refreshOutspends$ .pipe( - switchMap((txIds) => this.apiService.getOutspendsBatched$(txIds)), + switchMap((txIds) => { + if (!this.cached) { + return this.apiService.getOutspendsBatched$(txIds); + } else { + return of([]); + } + }), tap((outspends: Outspend[][]) => { if (!this.transactions) { return; @@ -155,7 +162,7 @@ export class TransactionsListComponent implements OnInit, OnChanges { ).subscribe(); }); const txIds = this.transactions.filter((tx) => !tx._outspends).map((tx) => tx.txid); - if (txIds.length) { + if (txIds.length && !this.cached) { this.refreshOutspends$.next(txIds); } if (this.stateService.env.LIGHTNING) { diff --git a/frontend/src/app/components/tx-bowtie-graph/tx-bowtie-graph.component.ts b/frontend/src/app/components/tx-bowtie-graph/tx-bowtie-graph.component.ts index 6be475243..1c5ee5391 100644 --- a/frontend/src/app/components/tx-bowtie-graph/tx-bowtie-graph.component.ts +++ b/frontend/src/app/components/tx-bowtie-graph/tx-bowtie-graph.component.ts @@ -2,7 +2,7 @@ import { Component, OnInit, Input, OnChanges, HostListener, Inject, LOCALE_ID } import { StateService } from '../../services/state.service'; import { Outspend, Transaction } from '../../interfaces/electrs.interface'; import { Router } from '@angular/router'; -import { ReplaySubject, merge, Subscription } from 'rxjs'; +import { ReplaySubject, merge, Subscription, of } from 'rxjs'; import { tap, switchMap } from 'rxjs/operators'; import { ApiService } from '../../services/api.service'; import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe'; @@ -40,6 +40,7 @@ interface Xput { export class TxBowtieGraphComponent implements OnInit, OnChanges { @Input() tx: Transaction; @Input() network: string; + @Input() cached: boolean = false; @Input() width = 1200; @Input() height = 600; @Input() lineLimit = 250; @@ -107,7 +108,13 @@ export class TxBowtieGraphComponent implements OnInit, OnChanges { this.outspendsSubscription = merge( this.refreshOutspends$ .pipe( - switchMap((txid) => this.apiService.getOutspendsBatched$([txid])), + switchMap((txid) => { + if (!this.cached) { + return this.apiService.getOutspendsBatched$([txid]); + } else { + return of(null); + } + }), tap((outspends: Outspend[][]) => { if (!this.tx || !outspends || !outspends.length) { return; @@ -132,7 +139,9 @@ export class TxBowtieGraphComponent implements OnInit, OnChanges { ngOnChanges(): void { this.initGraph(); - this.refreshOutspends$.next(this.tx.txid); + if (!this.cached) { + this.refreshOutspends$.next(this.tx.txid); + } } initGraph(): void { From 43b2fe2f9a503958a692f3ba1cf8d9f74521419d Mon Sep 17 00:00:00 2001 From: Mononaut Date: Mon, 6 Mar 2023 00:19:12 -0600 Subject: [PATCH 089/130] don't cache tx data for rbf replacements --- frontend/src/app/components/transaction/transaction.component.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/frontend/src/app/components/transaction/transaction.component.ts b/frontend/src/app/components/transaction/transaction.component.ts index 4fedc3912..b416dce04 100644 --- a/frontend/src/app/components/transaction/transaction.component.ts +++ b/frontend/src/app/components/transaction/transaction.component.ts @@ -362,7 +362,6 @@ export class TransactionComponent implements OnInit, AfterViewInit, OnDestroy { this.waitingForTransaction = false; } this.rbfTransaction = rbfTransaction; - this.cacheService.setTxCache([this.rbfTransaction]); this.replaced = true; if (rbfTransaction && !this.tx) { this.fetchCachedTx$.next(this.txId); From 5a5ebe843567fee662ab8e16c07b4fe32affa38f Mon Sep 17 00:00:00 2001 From: softsimon Date: Mon, 6 Mar 2023 16:16:52 +0900 Subject: [PATCH 090/130] Remove fiat plus space fixes #3240 --- frontend/src/app/components/amount/amount.component.html | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/frontend/src/app/components/amount/amount.component.html b/frontend/src/app/components/amount/amount.component.html index 27fd59110..29f61ca41 100644 --- a/frontend/src/app/components/amount/amount.component.html +++ b/frontend/src/app/components/amount/amount.component.html @@ -1,7 +1,6 @@ - {{ addPlus && satoshis >= 0 ? '+' : '' }} - {{ + {{ addPlus && satoshis >= 0 ? '+' : '' }}{{ ( (blockConversion.price[currency] > -1 ? blockConversion.price[currency] : null) ?? (blockConversion.price['USD'] > -1 ? blockConversion.price['USD'] * blockConversion.exchangeRates['USD' + currency] : null) ?? 0 @@ -9,8 +8,7 @@ }} - {{ addPlus && satoshis >= 0 ? '+' : '' }} - {{ (conversions[currency] > -1 ? conversions[currency] : 0) * satoshis / 100000000 | fiatCurrency : digitsInfo : currency }} + {{ addPlus && satoshis >= 0 ? '+' : '' }}{{ (conversions[currency] > -1 ? conversions[currency] : 0) * satoshis / 100000000 | fiatCurrency : digitsInfo : currency }} From fb71136daef38f142bb60eb2965379a4946d0f72 Mon Sep 17 00:00:00 2001 From: softsimon Date: Tue, 7 Mar 2023 11:11:02 +0900 Subject: [PATCH 091/130] Pull from transifex --- frontend/src/locale/messages.de.xlf | 191 +++-- frontend/src/locale/messages.es.xlf | 709 +++++++++++------- frontend/src/locale/messages.fr.xlf | 191 +++-- frontend/src/locale/messages.ja.xlf | 711 +++++++++++------- frontend/src/locale/messages.ka.xlf | 1070 ++++++++++++++++++--------- frontend/src/locale/messages.ko.xlf | 833 +++++++++++++-------- frontend/src/locale/messages.lt.xlf | 914 ++++++++++++++--------- frontend/src/locale/messages.sv.xlf | 707 +++++++++++------- 8 files changed, 3236 insertions(+), 2090 deletions(-) diff --git a/frontend/src/locale/messages.de.xlf b/frontend/src/locale/messages.de.xlf index e22f0c7db..c09016a1e 100644 --- a/frontend/src/locale/messages.de.xlf +++ b/frontend/src/locale/messages.de.xlf @@ -775,7 +775,7 @@ src/app/components/about/about.component.html - 385,389 + 375,378 src/app/components/mining-dashboard/mining-dashboard.component.html @@ -1452,7 +1452,7 @@ Unser Mempool- und Blockchain-Explorer fĂŒr die Bitcoin-Community, der sich auf den Markt fĂŒr TransaktionsgebĂŒhren und das mehrschichtige Ökosystem konzentriert und vollstĂ€ndig selbst gehostet wird, ohne vertrauenswĂŒrdige Drittanbieter. src/app/components/about/about.component.html - 13,17 + 13,16 @@ -1460,7 +1460,7 @@ Unternehmenssponsoren src/app/components/about/about.component.html - 29,32 + 19,22 about.sponsors.enterprise.withRocket @@ -1469,7 +1469,7 @@ Community-Sponsoren ❀ src/app/components/about/about.component.html - 177,180 + 167,170 about.sponsors.withHeart @@ -1478,7 +1478,7 @@ Community Integrationen src/app/components/about/about.component.html - 191,193 + 181,183 about.community-integrations @@ -1487,7 +1487,7 @@ Community-Allianzen src/app/components/about/about.component.html - 285,287 + 275,277 about.alliances @@ -1496,7 +1496,7 @@ ProjektĂŒbersetzer src/app/components/about/about.component.html - 301,303 + 291,293 about.translators @@ -1505,7 +1505,7 @@ Projektmitwirkende src/app/components/about/about.component.html - 315,317 + 305,307 about.contributors @@ -1514,7 +1514,7 @@ Projektmitglieder src/app/components/about/about.component.html - 327,329 + 317,319 about.project_members @@ -1523,7 +1523,7 @@ Projektbetreuer src/app/components/about/about.component.html - 340,342 + 330,332 about.maintainers @@ -1532,7 +1532,7 @@ Über src/app/components/about/about.component.ts - 39 + 42 src/app/components/bisq-master-page/bisq-master-page.component.html @@ -1581,7 +1581,7 @@ src/app/components/amount/amount.component.html - 18,21 + 20,23 src/app/components/asset-circulation/asset-circulation.component.html @@ -2686,11 +2686,11 @@ src/app/lightning/node/node.component.html - 52,55 + 55,58 src/app/lightning/node/node.component.html - 96,100 + 99,103 src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts @@ -2895,15 +2895,15 @@ src/app/lightning/channel/channel.component.html - 86,88 + 93,95 src/app/lightning/channel/channel.component.html - 96,98 + 103,105 src/app/lightning/node/node.component.html - 218,222 + 221,225 Transaction Details transaction.details @@ -2923,10 +2923,6 @@ src/app/lightning/channel/channel-preview.component.html 70,75 - - src/app/lightning/channel/channel.component.html - 109,115 - src/app/lightning/node/node-preview.component.html 66,69 @@ -4614,7 +4610,7 @@ src/app/lightning/node/node.component.html - 67,70 + 70,73 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -4630,11 +4626,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 13,15 + 15,16 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 13,15 + 15,16 Transaction first seen transaction.first-seen @@ -5370,7 +5366,7 @@ src/app/lightning/node/node.component.html - 180,182 + 183,185 shared.m-sats @@ -5488,7 +5484,7 @@ src/app/lightning/channel/channel.component.html - 11,12 + 13,14 src/app/lightning/channels-list/channels-list.component.html @@ -5505,7 +5501,7 @@ src/app/lightning/channel/channel.component.html - 12,13 + 14,15 src/app/lightning/channels-list/channels-list.component.html @@ -5522,7 +5518,7 @@ src/app/lightning/channel/channel.component.html - 13,14 + 15,16 src/app/lightning/channels-list/channels-list.component.html @@ -5543,7 +5539,7 @@ src/app/lightning/channel/channel.component.html - 29,30 + 36,37 lightning.created @@ -5556,7 +5552,7 @@ src/app/lightning/channel/channel.component.html - 48,49 + 55,56 src/app/lightning/channels-list/channels-list.component.html @@ -5590,6 +5586,10 @@ src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 60,62 + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 13,14 + src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts 202,201 @@ -5626,11 +5626,11 @@ Lightning-Kanal src/app/lightning/channel/channel.component.html - 2,5 + 4,7 src/app/lightning/channel/channel.component.html - 117,119 + 116,118 lightning.channel @@ -5639,11 +5639,11 @@ Letzte Aktualisierung src/app/lightning/channel/channel.component.html - 33,34 + 40,41 src/app/lightning/node/node.component.html - 73,75 + 76,78 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -5659,11 +5659,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 14,15 + 16,17 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 14,15 + 16,17 lightning.last-update @@ -5672,7 +5672,7 @@ Schließdatum src/app/lightning/channel/channel.component.html - 37,38 + 44,45 src/app/lightning/channels-list/channels-list.component.html @@ -5685,7 +5685,7 @@ Geschlossen von src/app/lightning/channel/channel.component.html - 52,54 + 59,61 lightning.closed_by @@ -5694,7 +5694,7 @@ Öffnende Transaktion src/app/lightning/channel/channel.component.html - 84,85 + 91,92 lightning.opening-transaction @@ -5703,7 +5703,7 @@ Schließende Transaktion src/app/lightning/channel/channel.component.html - 93,95 + 100,102 lightning.closing-transaction @@ -5786,11 +5786,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 10,11 + 11,12 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 10,12 + 11,13 lightning.alias @@ -6064,10 +6064,6 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 11,12 - - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html 12,13 lightning.liquidity @@ -6121,11 +6117,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 12,13 + 14,15 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 11,12 + 12,13 src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts @@ -6163,7 +6159,7 @@ src/app/lightning/node/node.component.html - 47,49 + 50,52 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -6179,11 +6175,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 15,17 + 17,20 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 15,17 + 17,20 lightning.location @@ -6221,9 +6217,17 @@ src/app/lightning/lightning-dashboard/lightning-dashboard.component.html 62 + + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html + 4,9 + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts - 29 + 33 + + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 4,9 src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.html @@ -6303,11 +6307,11 @@ src/app/lightning/node/node.component.html - 2,4 + 4,6 src/app/lightning/node/node.component.html - 260,262 + 263,265 lightning.node @@ -6320,7 +6324,7 @@ src/app/lightning/node/node.component.html - 27,30 + 30,33 lightning.active-capacity @@ -6333,7 +6337,7 @@ src/app/lightning/node/node.component.html - 34,38 + 37,41 lightning.active-channels @@ -6346,21 +6350,12 @@ country - - No node found for public key "" - Keinen Node gefunden fĂŒr Public-Key &quot;&quot; - - src/app/lightning/node/node.component.html - 17,19 - - lightning.node-not-found - Average channel size Durchschnittliche KanalgrĂ¶ĂŸe src/app/lightning/node/node.component.html - 40,43 + 43,46 lightning.active-channels-avg @@ -6369,7 +6364,7 @@ Durchschn. Kanalentfernung src/app/lightning/node/node.component.html - 56,57 + 59,60 lightning.avg-distance @@ -6378,7 +6373,7 @@ Farbe src/app/lightning/node/node.component.html - 79,81 + 82,84 lightning.color @@ -6387,7 +6382,7 @@ ISP src/app/lightning/node/node.component.html - 86,87 + 89,90 src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html @@ -6400,7 +6395,7 @@ Ausschließlich auf Tor src/app/lightning/node/node.component.html - 93,95 + 96,98 tor @@ -6409,7 +6404,7 @@ LiquiditĂ€tswerbung src/app/lightning/node/node.component.html - 138,141 + 141,144 node.liquidity-ad @@ -6418,7 +6413,7 @@ Lease GebĂŒhrensatz src/app/lightning/node/node.component.html - 144,147 + 147,150 Liquidity ad lease fee rate liquidity-ad.lease-fee-rate @@ -6428,7 +6423,7 @@ Lease BasisgebĂŒhr src/app/lightning/node/node.component.html - 152,154 + 155,157 liquidity-ad.lease-base-fee @@ -6437,7 +6432,7 @@ Finanzierungsgewicht src/app/lightning/node/node.component.html - 158,159 + 161,162 liquidity-ad.funding-weight @@ -6446,7 +6441,7 @@ Kanal-GebĂŒhrenrate src/app/lightning/node/node.component.html - 168,171 + 171,174 Liquidity ad channel fee rate liquidity-ad.channel-fee-rate @@ -6456,7 +6451,7 @@ Kanal-BasisgebĂŒhr src/app/lightning/node/node.component.html - 176,178 + 179,181 liquidity-ad.channel-base-fee @@ -6465,7 +6460,7 @@ Compact_lease src/app/lightning/node/node.component.html - 188,190 + 191,193 liquidity-ad.compact-lease @@ -6474,7 +6469,7 @@ LV Erweiterungs-DatensĂ€tze src/app/lightning/node/node.component.html - 199,202 + 202,205 node.tlv.records @@ -6483,7 +6478,7 @@ Offene KanĂ€le src/app/lightning/node/node.component.html - 240,243 + 243,246 lightning.open-channels @@ -6492,7 +6487,7 @@ Geschlossene KanĂ€le src/app/lightning/node/node.component.html - 244,247 + 247,250 lightning.open-channels @@ -6562,9 +6557,9 @@ 112,107 - - Reachable on Clearnet Only - Nur im Klarnetz erreichbar + + Clearnet and Darknet + Clearnet und Darknet src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 164,161 @@ -6574,9 +6569,9 @@ 303,302 - - Reachable on Clearnet and Darknet - Im Klarnetz und Darknet erreichbar + + Clearnet Only (IPv4, IPv6) + Nur Clearnet (IPv4, IPv6) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 185,182 @@ -6586,9 +6581,9 @@ 295,294 - - Reachable on Darknet Only - Nur im Darknet erreichbar + + Darknet Only (Tor, I2P, cjdns) + Nur Darknet (Tor, I2P, cjdns) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 206,203 @@ -6844,24 +6839,6 @@ 27 - - Top 100 nodes liquidity ranking - Top 100 Nodes nach LiquiditĂ€t - - src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 3,7 - - lightning.top-100-liquidity - - - Top 100 nodes connectivity ranking - Top 100 Nodes nach Anbindung - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 3,7 - - lightning.top-100-connectivity - Oldest nodes Älteste Nodes diff --git a/frontend/src/locale/messages.es.xlf b/frontend/src/locale/messages.es.xlf index 064f3dd8b..5bb69bfd9 100644 --- a/frontend/src/locale/messages.es.xlf +++ b/frontend/src/locale/messages.es.xlf @@ -359,11 +359,11 @@ src/app/components/block/block.component.html - 303,304 + 310,311 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 26,27 + 46,47 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -384,11 +384,11 @@ src/app/components/block/block.component.html - 304,305 + 311,312 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 27,28 + 47,48 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -406,7 +406,7 @@ Block - B loque + Bloque src/app/bisq/bisq-block/bisq-block.component.html 4 @@ -598,7 +598,7 @@ src/app/components/pool-ranking/pool-ranking.component.html - 94,96 + 94,95 @@ -775,16 +775,24 @@ src/app/components/about/about.component.html - 385,389 + 375,378 + + + src/app/components/mining-dashboard/mining-dashboard.component.html + 88 src/app/dashboard/dashboard.component.html - 150,152 + 157,159 src/app/docs/docs/docs.component.html 51 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 97 + Terms of Service shared.terms-of-service @@ -795,14 +803,22 @@ src/app/bisq/bisq-main-dashboard/bisq-main-dashboard.component.html 113,120 + + src/app/components/mining-dashboard/mining-dashboard.component.html + 90 + src/app/dashboard/dashboard.component.html - 152,154 + 159,161 src/app/docs/docs/docs.component.html 53 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 99 + Privacy Policy shared.privacy-policy @@ -990,7 +1006,7 @@ src/app/dashboard/dashboard.component.html - 124,125 + 124,126 @@ -1038,7 +1054,7 @@ src/app/components/transaction/transaction.component.html - 158,160 + 152,154 src/app/components/transactions-list/transactions-list.component.html @@ -1054,11 +1070,11 @@ src/app/components/block/block.component.html - 245,246 + 252,253 src/app/components/transaction/transaction.component.html - 288,290 + 282,284 transaction.version @@ -1108,7 +1124,7 @@ src/app/components/transactions-list/transactions-list.component.html - 294,295 + 296,297 Transaction singular confirmation count shared.confirmation-count.singular @@ -1130,7 +1146,7 @@ src/app/components/transactions-list/transactions-list.component.html - 295,296 + 297,298 Transaction plural confirmation count shared.confirmation-count.plural @@ -1142,10 +1158,6 @@ src/app/bisq/bisq-transaction/bisq-transaction.component.html 43,45 - - src/app/components/transaction/transaction.component.html - 65,67 - Transaction included in block transaction.included-in-block @@ -1158,11 +1170,11 @@ src/app/components/transaction/transaction.component.html - 77,80 + 71,74 src/app/components/transaction/transaction.component.html - 135,138 + 129,132 Transaction features transaction.features @@ -1190,11 +1202,11 @@ src/app/components/transaction/transaction.component.html - 262,267 + 256,261 src/app/components/transaction/transaction.component.html - 406,412 + 400,406 transaction.details @@ -1211,11 +1223,11 @@ src/app/components/transaction/transaction.component.html - 249,253 + 243,247 src/app/components/transaction/transaction.component.html - 377,383 + 371,377 Transaction inputs and outputs transaction.inputs-and-outputs @@ -1233,7 +1245,7 @@ src/app/components/transaction/transaction.component.ts - 241,240 + 244,243 @@ -1253,7 +1265,7 @@ src/app/components/transaction/transaction.component.html - 159,160 + 153,154 src/app/dashboard/dashboard.component.html @@ -1269,7 +1281,7 @@ src/app/components/transaction/transaction.component.html - 72,73 + 66,67 Transaction Confirmed state transaction.confirmed @@ -1440,7 +1452,7 @@ Nuestro explorador de bloques y mempool para la comunidad Bitcoin, con foco en las tasas de mercado de transacciones y el ecosistema multicapa, completamente auto-hosteado sin terceras partes de confianza. src/app/components/about/about.component.html - 13,17 + 13,16 @@ -1448,7 +1460,7 @@ Empresas patrocinadoras 🚀 src/app/components/about/about.component.html - 29,32 + 19,22 about.sponsors.enterprise.withRocket @@ -1457,7 +1469,7 @@ Patrocinadores de la comunidad ❀ src/app/components/about/about.component.html - 177,180 + 167,170 about.sponsors.withHeart @@ -1466,7 +1478,7 @@ Integraciones de la comunidad src/app/components/about/about.component.html - 191,193 + 181,183 about.community-integrations @@ -1475,7 +1487,7 @@ Alianzas de la comunidad src/app/components/about/about.component.html - 285,287 + 275,277 about.alliances @@ -1484,7 +1496,7 @@ Traductores del proyecto src/app/components/about/about.component.html - 301,303 + 291,293 about.translators @@ -1493,7 +1505,7 @@ Contribuyentes al proyecto src/app/components/about/about.component.html - 315,317 + 305,307 about.contributors @@ -1502,7 +1514,7 @@ Miembros del proyecto src/app/components/about/about.component.html - 327,329 + 317,319 about.project_members @@ -1511,7 +1523,7 @@ Mantenedores del proyecto src/app/components/about/about.component.html - 340,342 + 330,332 about.maintainers @@ -1520,7 +1532,7 @@ Sobre nosotros src/app/components/about/about.component.ts - 39 + 42 src/app/components/bisq-master-page/bisq-master-page.component.html @@ -1569,7 +1581,7 @@ src/app/components/amount/amount.component.html - 6,9 + 20,23 src/app/components/asset-circulation/asset-circulation.component.html @@ -1585,7 +1597,7 @@ src/app/components/transactions-list/transactions-list.component.html - 302,304 + 304,306 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -2049,7 +2061,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 161 + 165 @@ -2065,7 +2077,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 163 + 167 @@ -2077,7 +2089,7 @@ src/app/components/block-fees-graph/block-fees-graph.component.ts - 62 + 67 src/app/components/graphs/graphs.component.html @@ -2090,15 +2102,15 @@ Indexando bloques src/app/components/block-fees-graph/block-fees-graph.component.ts - 110,105 + 116,111 src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 108,103 + 113,108 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 115,110 + 116,111 src/app/components/hashrate-chart/hashrate-chart.component.ts @@ -2143,7 +2155,7 @@ src/app/components/transaction/transaction.component.html - 478 + 472 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -2169,11 +2181,11 @@ src/app/components/transaction/transaction.component.html - 478,479 + 472 src/app/components/transactions-list/transactions-list.component.html - 286,287 + 288 sat shared.sat @@ -2187,11 +2199,11 @@ src/app/components/transaction/transaction.component.html - 161,165 + 155,159 src/app/components/transaction/transaction.component.html - 481,483 + 475,477 src/app/lightning/channel/channel-box/channel-box.component.html @@ -2221,19 +2233,19 @@ src/app/components/block/block.component.html - 123,126 + 124,127 src/app/components/block/block.component.html - 127 + 128,130 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 12,14 + 19,22 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 15,17 + 30,33 src/app/components/fees-box/fees-box.component.html @@ -2273,27 +2285,27 @@ src/app/components/transaction/transaction.component.html - 173,174 + 167,168 src/app/components/transaction/transaction.component.html - 184,185 + 178,179 src/app/components/transaction/transaction.component.html - 195,196 + 189,190 src/app/components/transaction/transaction.component.html - 483,486 + 477,480 src/app/components/transaction/transaction.component.html - 494,496 + 488,490 src/app/components/transactions-list/transactions-list.component.html - 286 + 286,287 src/app/dashboard/dashboard.component.html @@ -2301,7 +2313,7 @@ src/app/dashboard/dashboard.component.html - 206,210 + 213,217 sat/vB shared.sat-vbyte @@ -2315,11 +2327,11 @@ src/app/components/transaction/transaction.component.html - 160,162 + 154,156 src/app/components/transaction/transaction.component.html - 274,277 + 268,271 Transaction Virtual Size transaction.vsize @@ -2432,7 +2444,7 @@ src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 60 + 65 src/app/components/graphs/graphs.component.html @@ -2462,11 +2474,11 @@ Tamaño src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 180,179 + 184,183 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 226,224 + 239,237 src/app/components/block/block.component.html @@ -2494,7 +2506,7 @@ src/app/components/transaction/transaction.component.html - 270,272 + 264,266 src/app/dashboard/dashboard.component.html @@ -2506,11 +2518,11 @@ Peso src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 188,187 + 192,191 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 257,254 + 270,267 src/app/components/block/block-preview.component.html @@ -2522,7 +2534,19 @@ src/app/components/transaction/transaction.component.html - 278,280 + 272,274 + + + + Size per weight + tamaño por peso + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 200,199 + + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 282,279 @@ -2538,15 +2562,6 @@ shared.block-title - - - - - src/app/components/block/block-preview.component.html - 11,12 - - shared.block-title - Median fee Tasa mediana @@ -2556,7 +2571,7 @@ src/app/components/block/block.component.html - 126,127 + 127,128 src/app/components/mempool-block/mempool-block.component.html @@ -2573,11 +2588,11 @@ src/app/components/block/block.component.html - 131,133 + 138,140 src/app/components/block/block.component.html - 157,160 + 164,167 src/app/components/mempool-block/mempool-block.component.html @@ -2595,7 +2610,7 @@ src/app/components/block/block.component.html - 166,168 + 173,175 block.miner @@ -2608,7 +2623,7 @@ src/app/components/block/block.component.ts - 234 + 242 @@ -2662,12 +2677,20 @@ 60,63 - src/app/lightning/node/node.component.html - 52,55 + src/app/components/pool-ranking/pool-ranking.component.html + 121,124 + + + src/app/lightning/channel/closing-type/closing-type.component.ts + 32 src/app/lightning/node/node.component.html - 96,100 + 55,58 + + + src/app/lightning/node/node.component.html + 99,103 src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts @@ -2684,7 +2707,7 @@ Rango de tasas src/app/components/block/block.component.html - 122,123 + 123,124 src/app/components/mempool-block/mempool-block.component.html @@ -2697,7 +2720,7 @@ Basado en el promedio de 140 vBytes de las transacciones segwit nativas src/app/components/block/block.component.html - 127,129 + 131,136 src/app/components/fees-box/fees-box.component.html @@ -2721,16 +2744,16 @@ Transaction fee tooltip - - Subsidy + fees: - Subsidio + tasas: + + Subsidy + fees + Subsidio + gastos src/app/components/block/block.component.html - 146,149 + 153,156 src/app/components/block/block.component.html - 161,165 + 168,172 Total subsidy and fees in a block block.subsidy-and-fees @@ -2740,7 +2763,7 @@ Esperado src/app/components/block/block.component.html - 209 + 216 block.expected @@ -2749,11 +2772,11 @@ beta src/app/components/block/block.component.html - 209,210 + 216,217 src/app/components/block/block.component.html - 215,217 + 222,224 beta @@ -2762,7 +2785,7 @@ Actua src/app/components/block/block.component.html - 211,215 + 218,222 block.actual @@ -2771,7 +2794,7 @@ Bloque esperado src/app/components/block/block.component.html - 215 + 222 block.expected-block @@ -2780,7 +2803,7 @@ Bloque real src/app/components/block/block.component.html - 224 + 231 block.actual-block @@ -2789,7 +2812,7 @@ Bits src/app/components/block/block.component.html - 249,251 + 256,258 block.bits @@ -2798,7 +2821,7 @@ RaĂ­z de Merkle src/app/components/block/block.component.html - 253,255 + 260,262 block.merkle-root @@ -2807,7 +2830,7 @@ Dificultad src/app/components/block/block.component.html - 264,267 + 271,274 src/app/components/difficulty-adjustments-table/difficulty-adjustments-table.component.html @@ -2836,7 +2859,7 @@ Nonce src/app/components/block/block.component.html - 268,270 + 275,277 block.nonce @@ -2845,7 +2868,7 @@ Block Header Hex src/app/components/block/block.component.html - 272,273 + 279,280 block.header @@ -2854,7 +2877,7 @@ AuditorĂ­a src/app/components/block/block.component.html - 290,294 + 297,301 Toggle Audit block.toggle-audit @@ -2864,23 +2887,23 @@ Detalles src/app/components/block/block.component.html - 297,301 + 304,308 src/app/components/transaction/transaction.component.html - 254,259 + 248,253 src/app/lightning/channel/channel.component.html - 86,88 + 93,95 src/app/lightning/channel/channel.component.html - 96,98 + 103,105 src/app/lightning/node/node.component.html - 218,222 + 221,225 Transaction Details transaction.details @@ -2890,20 +2913,16 @@ Error cargando datos src/app/components/block/block.component.html - 316,318 + 323,325 src/app/components/block/block.component.html - 355,359 + 362,366 src/app/lightning/channel/channel-preview.component.html 70,75 - - src/app/lightning/channel/channel.component.html - 109,115 - src/app/lightning/node/node-preview.component.html 66,69 @@ -2919,7 +2938,7 @@ Por quĂ© estĂĄ este bloque vacĂ­o? src/app/components/block/block.component.html - 377,383 + 384,390 block.empty-block-explanation @@ -3028,7 +3047,7 @@ src/app/dashboard/dashboard.component.html - 212,216 + 219,223 dashboard.txs @@ -3267,7 +3286,7 @@ src/app/dashboard/dashboard.component.html - 239,240 + 246,247 dashboard.incoming-transactions @@ -3280,7 +3299,7 @@ src/app/dashboard/dashboard.component.html - 242,245 + 249,252 dashboard.backend-is-synchronizing @@ -3293,7 +3312,7 @@ src/app/dashboard/dashboard.component.html - 247,252 + 254,259 vB/s shared.vbytes-per-second @@ -3307,7 +3326,7 @@ src/app/dashboard/dashboard.component.html - 210,211 + 217,218 Unconfirmed count dashboard.unconfirmed @@ -3683,6 +3702,32 @@ dashboard.adjustments + + Broadcast Transaction + Transmitir transacciĂłn + + src/app/components/mining-dashboard/mining-dashboard.component.html + 92 + + + src/app/components/push-transaction/push-transaction.component.html + 2 + + + src/app/components/push-transaction/push-transaction.component.html + 8 + + + src/app/dashboard/dashboard.component.html + 161,169 + + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 102 + + Broadcast Transaction + shared.broadcast-transaction + Pools luck (1 week) Suerte de las pools (1 semana) @@ -3750,7 +3795,7 @@ src/app/components/pool-ranking/pool-ranking.component.html - 136,138 + 152,154 master-page.blocks @@ -3780,12 +3825,25 @@ mining.rank + + Avg Health + El promedio de salud + + src/app/components/pool-ranking/pool-ranking.component.html + 96,97 + + + src/app/components/pool-ranking/pool-ranking.component.html + 96,98 + + latest-blocks.avg_health + Empty blocks Bloques vacĂ­os src/app/components/pool-ranking/pool-ranking.component.html - 95,98 + 97,100 mining.empty-blocks @@ -3794,7 +3852,7 @@ Todos los mineros src/app/components/pool-ranking/pool-ranking.component.html - 113,114 + 129,130 mining.all-miners @@ -3803,7 +3861,7 @@ Suerte de pools (7 dĂ­as) src/app/components/pool-ranking/pool-ranking.component.html - 130,132 + 146,148 mining.miners-luck @@ -3812,7 +3870,7 @@ Conteo de pools (7 dĂ­as) src/app/components/pool-ranking/pool-ranking.component.html - 142,144 + 158,160 mining.miners-count @@ -3821,7 +3879,7 @@ Pools de minado src/app/components/pool-ranking/pool-ranking.component.ts - 57 + 58 @@ -4011,8 +4069,7 @@ 24h - 24h - + 24h src/app/components/pool/pool.component.html 147 @@ -4049,24 +4106,6 @@ latest-blocks.coinbasetag - - Broadcast Transaction - Transmitir transacciĂłn - - src/app/components/push-transaction/push-transaction.component.html - 2 - - - src/app/components/push-transaction/push-transaction.component.html - 8 - - - src/app/dashboard/dashboard.component.html - 154,162 - - Broadcast Transaction - shared.broadcast-transaction - Transaction hex TransacciĂłn en hex @@ -4076,7 +4115,7 @@ src/app/components/transaction/transaction.component.html - 296,297 + 290,291 transaction.hex @@ -4201,6 +4240,78 @@ search-form.search-title + + Bitcoin Block Height + Altura del bloque de Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 3 + + search.bitcoin-block-height + + + Bitcoin Transaction + TransacciĂłn de Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 9 + + search.bitcoin-transaction + + + Bitcoin Address + DirecciĂłn de Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 15 + + search.bitcoin-address + + + Bitcoin Block + Bloque de Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 21 + + search.bitcoin-block + + + Bitcoin Addresses + Direcciones de Bitcoin + + src/app/components/search-form/search-results/search-results.component.html + 27 + + search.bitcoin-addresses + + + Lightning Nodes + Nodos de lightning + + src/app/components/search-form/search-results/search-results.component.html + 35 + + search.lightning-nodes + + + Lightning Channels + Canales de lightning + + src/app/components/search-form/search-results/search-results.component.html + 43 + + search.lightning-channels + + + Go to "" + Ir a &quot;&quot; + + src/app/components/search-form/search-results/search-results.component.html + 52 + + search.go-to + Mempool by vBytes (sat/vByte) Mempool en vBytes (sat/vByte) @@ -4485,7 +4596,7 @@ src/app/components/transactions-list/transactions-list.component.html - 298,301 + 300,303 Transaction unconfirmed state transaction.unconfirmed @@ -4495,11 +4606,11 @@ Visto por primera vez src/app/components/transaction/transaction.component.html - 108,109 + 102,103 src/app/lightning/node/node.component.html - 67,70 + 70,73 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -4515,11 +4626,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 13,15 + 15,16 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 13,15 + 15,16 Transaction first seen transaction.first-seen @@ -4529,7 +4640,7 @@ Tiempo esparado de llegada src/app/components/transaction/transaction.component.html - 115,116 + 109,110 Transaction ETA transaction.eta @@ -4539,7 +4650,7 @@ En unas cuantas horas (o mĂĄs) src/app/components/transaction/transaction.component.html - 121,124 + 115,118 Transaction ETA in several hours or more transaction.eta.in-several-hours @@ -4549,11 +4660,11 @@ Descendiente src/app/components/transaction/transaction.component.html - 168,170 + 162,164 src/app/components/transaction/transaction.component.html - 179,181 + 173,175 Descendant transaction.descendant @@ -4563,7 +4674,7 @@ Ancestro src/app/components/transaction/transaction.component.html - 190,192 + 184,186 Transaction Ancestor transaction.ancestor @@ -4573,11 +4684,11 @@ Flujo src/app/components/transaction/transaction.component.html - 208,211 + 202,205 src/app/components/transaction/transaction.component.html - 346,350 + 340,344 Transaction flow transaction.flow @@ -4587,7 +4698,7 @@ Esconder diagrama src/app/components/transaction/transaction.component.html - 211,216 + 205,210 hide-diagram @@ -4596,7 +4707,7 @@ Mostrar mĂĄs src/app/components/transaction/transaction.component.html - 231,233 + 225,227 src/app/components/transactions-list/transactions-list.component.html @@ -4613,7 +4724,7 @@ Mostras menos src/app/components/transaction/transaction.component.html - 233,239 + 227,233 src/app/components/transactions-list/transactions-list.component.html @@ -4626,7 +4737,7 @@ Mostrar diagrama src/app/components/transaction/transaction.component.html - 253,254 + 247,248 show-diagram @@ -4635,7 +4746,7 @@ Tiempo de bloque src/app/components/transaction/transaction.component.html - 292,294 + 286,288 transaction.locktime @@ -4644,7 +4755,7 @@ TransacciĂłn no encontrada src/app/components/transaction/transaction.component.html - 455,456 + 449,450 transaction.error.transaction-not-found @@ -4653,7 +4764,7 @@ Esperando a que aparezca en la mempool... src/app/components/transaction/transaction.component.html - 456,461 + 450,455 transaction.error.waiting-for-it-to-appear @@ -4662,7 +4773,7 @@ Ratio de tasa efectiva src/app/components/transaction/transaction.component.html - 491,494 + 485,488 Effective transaction fee rate transaction.effective-fee-rate @@ -4811,7 +4922,7 @@ Mostrar mĂĄs inputs para revelar datos de tasa src/app/components/transactions-list/transactions-list.component.html - 288,291 + 290,293 transactions-list.load-to-reveal-fee-info @@ -4820,7 +4931,7 @@ restantes src/app/components/transactions-list/transactions-list.component.html - 330,331 + 332,333 x-remaining @@ -5071,21 +5182,12 @@ dashboard.latest-transactions - - USD - USD - - src/app/dashboard/dashboard.component.html - 126,127 - - dashboard.latest-transactions.USD - Minimum fee Tarifa mĂ­nima src/app/dashboard/dashboard.component.html - 203,204 + 210,211 Minimum mempool fee dashboard.minimum-fee @@ -5095,7 +5197,7 @@ Purga src/app/dashboard/dashboard.component.html - 204,205 + 211,212 Purgin below fee dashboard.purging @@ -5105,7 +5207,7 @@ Uso de memoria src/app/dashboard/dashboard.component.html - 216,217 + 223,224 Memory usage dashboard.memory-usage @@ -5115,10 +5217,19 @@ L-BTC en circulaciĂłn src/app/dashboard/dashboard.component.html - 230,232 + 237,239 dashboard.lbtc-pegs-in-circulation + + mempool.space merely provides data about the Bitcoin network. It cannot help you with retrieving funds, confirming your transaction quicker, etc. + memepool.space simplemente proporciona datos sobre la red Bitcoin. No puede ayudarle a recuperar fondos, confirmar su transacciĂłn mĂĄs rĂĄpdio, etc. + + src/app/docs/api-docs/api-docs.component.html + 13 + + faq.big-disclaimer + REST API service servicio REST API @@ -5255,7 +5366,7 @@ src/app/lightning/node/node.component.html - 180,182 + 183,185 shared.m-sats @@ -5373,7 +5484,7 @@ src/app/lightning/channel/channel.component.html - 11,12 + 13,14 src/app/lightning/channels-list/channels-list.component.html @@ -5390,7 +5501,7 @@ src/app/lightning/channel/channel.component.html - 12,13 + 14,15 src/app/lightning/channels-list/channels-list.component.html @@ -5407,7 +5518,7 @@ src/app/lightning/channel/channel.component.html - 13,14 + 15,16 src/app/lightning/channels-list/channels-list.component.html @@ -5428,7 +5539,7 @@ src/app/lightning/channel/channel.component.html - 29,30 + 36,37 lightning.created @@ -5441,7 +5552,7 @@ src/app/lightning/channel/channel.component.html - 48,49 + 55,56 src/app/lightning/channels-list/channels-list.component.html @@ -5453,7 +5564,7 @@ src/app/lightning/node-statistics/node-statistics.component.html - 47,50 + 46,49 src/app/lightning/nodes-list/nodes-list.component.html @@ -5475,6 +5586,10 @@ src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 60,62 + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 13,14 + src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts 202,201 @@ -5511,11 +5626,11 @@ Canal lightning src/app/lightning/channel/channel.component.html - 2,5 + 4,7 src/app/lightning/channel/channel.component.html - 117,119 + 116,118 lightning.channel @@ -5524,11 +5639,11 @@ Última actualizaciĂłn src/app/lightning/channel/channel.component.html - 33,34 + 40,41 src/app/lightning/node/node.component.html - 73,75 + 76,78 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -5544,11 +5659,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 14,15 + 16,17 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 14,15 + 16,17 lightning.last-update @@ -5557,7 +5672,7 @@ Fecha de cierre src/app/lightning/channel/channel.component.html - 37,38 + 44,45 src/app/lightning/channels-list/channels-list.component.html @@ -5570,7 +5685,7 @@ Cerrado por src/app/lightning/channel/channel.component.html - 52,54 + 59,61 lightning.closed_by @@ -5579,7 +5694,7 @@ TransacciĂłn de apertura src/app/lightning/channel/channel.component.html - 84,85 + 91,92 lightning.opening-transaction @@ -5588,7 +5703,7 @@ TransacciĂłn de cierre src/app/lightning/channel/channel.component.html - 93,95 + 100,102 lightning.closing-transaction @@ -5600,6 +5715,30 @@ 37 + + Mutually closed + Cerrado mutuamente + + src/app/lightning/channel/closing-type/closing-type.component.ts + 20 + + + + Force closed + Forzar cierre + + src/app/lightning/channel/closing-type/closing-type.component.ts + 24 + + + + Force closed with penalty + Fuerza cerrada con sanciĂłn + + src/app/lightning/channel/closing-type/closing-type.component.ts + 28 + + Open Abierto @@ -5647,11 +5786,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 10,11 + 11,12 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 10,12 + 11,13 lightning.alias @@ -5726,6 +5865,24 @@ shared.sats + + avg + El promedio + + src/app/lightning/channels-statistics/channels-statistics.component.html + 3,5 + + statistics.average-small + + + med + Media + + src/app/lightning/channels-statistics/channels-statistics.component.html + 6,9 + + statistics.median-small + Avg Capacity Capacidad media @@ -5854,11 +6011,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 17,18 + 16,17 src/app/lightning/node-statistics/node-statistics.component.html - 54,57 + 53,56 src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html @@ -5907,10 +6064,6 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 11,12 - - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html 12,13 lightning.liquidity @@ -5928,11 +6081,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 29,30 + 28,29 src/app/lightning/node-statistics/node-statistics.component.html - 61,64 + 60,63 src/app/lightning/nodes-list/nodes-list.component.html @@ -5964,11 +6117,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 12,13 + 14,15 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 11,12 + 12,13 src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts @@ -6006,7 +6159,7 @@ src/app/lightning/node/node.component.html - 47,49 + 50,52 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -6022,11 +6175,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 15,17 + 17,20 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 15,17 + 17,20 lightning.location @@ -6064,9 +6217,17 @@ src/app/lightning/lightning-dashboard/lightning-dashboard.component.html 62 + + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html + 4,9 + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts - 29 + 33 + + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 4,9 src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.html @@ -6096,6 +6257,30 @@ lightning.node-fee-distribution + + Outgoing Fees + Gastos de salida + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 170 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 208 + + + + Incoming Fees + Gastos de entrada + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 178 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 222 + + Percentage change past week Cambio de porcentaje en la Ășltima semana @@ -6105,11 +6290,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 18,20 + 17,19 src/app/lightning/node-statistics/node-statistics.component.html - 30,32 + 29,31 mining.percentage-change-last-week @@ -6122,11 +6307,11 @@ src/app/lightning/node/node.component.html - 2,4 + 4,6 src/app/lightning/node/node.component.html - 260,262 + 263,265 lightning.node @@ -6139,7 +6324,7 @@ src/app/lightning/node/node.component.html - 27,30 + 30,33 lightning.active-capacity @@ -6152,7 +6337,7 @@ src/app/lightning/node/node.component.html - 34,38 + 37,41 lightning.active-channels @@ -6165,21 +6350,12 @@ country - - No node found for public key "" - No se encontrĂł un nodo para la clave pĂșblica &quot;&quot; - - src/app/lightning/node/node.component.html - 17,19 - - lightning.node-not-found - Average channel size Tamaño medio del canal src/app/lightning/node/node.component.html - 40,43 + 43,46 lightning.active-channels-avg @@ -6188,7 +6364,7 @@ Distancia media del canal src/app/lightning/node/node.component.html - 56,57 + 59,60 lightning.avg-distance @@ -6197,7 +6373,7 @@ Color src/app/lightning/node/node.component.html - 79,81 + 82,84 lightning.color @@ -6206,7 +6382,7 @@ ISP src/app/lightning/node/node.component.html - 86,87 + 89,90 src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html @@ -6219,7 +6395,7 @@ Exclusivamente en Tor src/app/lightning/node/node.component.html - 93,95 + 96,98 tor @@ -6228,7 +6404,7 @@ Liquidez ad src/app/lightning/node/node.component.html - 138,141 + 141,144 node.liquidity-ad @@ -6237,7 +6413,7 @@ Ratio de tasa de alquiler src/app/lightning/node/node.component.html - 144,147 + 147,150 Liquidity ad lease fee rate liquidity-ad.lease-fee-rate @@ -6247,7 +6423,7 @@ Tasa base de alquiler src/app/lightning/node/node.component.html - 152,154 + 155,157 liquidity-ad.lease-base-fee @@ -6256,7 +6432,7 @@ Peso de financiamiento src/app/lightning/node/node.component.html - 158,159 + 161,162 liquidity-ad.funding-weight @@ -6265,7 +6441,7 @@ Ratio de tasa de canal src/app/lightning/node/node.component.html - 168,171 + 171,174 Liquidity ad channel fee rate liquidity-ad.channel-fee-rate @@ -6275,7 +6451,7 @@ Tasa base del canal src/app/lightning/node/node.component.html - 176,178 + 179,181 liquidity-ad.channel-base-fee @@ -6284,7 +6460,7 @@ Alquiler compacto src/app/lightning/node/node.component.html - 188,190 + 191,193 liquidity-ad.compact-lease @@ -6293,7 +6469,7 @@ Registros de extensiĂłn TLV src/app/lightning/node/node.component.html - 199,202 + 202,205 node.tlv.records @@ -6302,7 +6478,7 @@ Canales abiertos src/app/lightning/node/node.component.html - 240,243 + 243,246 lightning.open-channels @@ -6311,7 +6487,7 @@ Canales cerrados src/app/lightning/node/node.component.html - 244,247 + 247,250 lightning.open-channels @@ -6357,7 +6533,7 @@ No hay datos de geolocalizaciĂłn disponibles src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts - 218,213 + 219,214 @@ -6381,9 +6557,8 @@ 112,107 - - Reachable on Clearnet Only - Accesible solo en Clearnet + + Clearnet and Darknet src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 164,161 @@ -6393,9 +6568,8 @@ 303,302 - - Reachable on Clearnet and Darknet - Accesible en Clearnet y Darknet + + Clearnet Only (IPv4, IPv6) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 185,182 @@ -6405,9 +6579,8 @@ 295,294 - - Reachable on Darknet Only - Accesible solo en Darknet + + Darknet Only (Tor, I2P, cjdns) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 206,203 @@ -6663,24 +6836,6 @@ 27 - - Top 100 nodes liquidity ranking - Principales 100 nodos segĂșn liquidez - - src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 3,7 - - lightning.top-100-liquidity - - - Top 100 nodes connectivity ranking - Principales 100 nodos segĂșn conectividad - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 3,7 - - lightning.top-100-connectivity - Oldest nodes Nodos mĂĄs antiguos diff --git a/frontend/src/locale/messages.fr.xlf b/frontend/src/locale/messages.fr.xlf index 476dd8cfe..ccb541bdd 100644 --- a/frontend/src/locale/messages.fr.xlf +++ b/frontend/src/locale/messages.fr.xlf @@ -775,7 +775,7 @@ src/app/components/about/about.component.html - 385,389 + 375,378 src/app/components/mining-dashboard/mining-dashboard.component.html @@ -1452,7 +1452,7 @@ Notre explorateur mempool et blockchain pour la communautĂ© Bitcoin, axĂ© sur le marchĂ© des frais de transaction et l'Ă©cosystĂšme multicouche, entiĂšrement auto-hĂ©bergĂ© sans aucun tiers de confiance. src/app/components/about/about.component.html - 13,17 + 13,16 @@ -1460,7 +1460,7 @@ Entreprises sponsors 🚀 src/app/components/about/about.component.html - 29,32 + 19,22 about.sponsors.enterprise.withRocket @@ -1469,7 +1469,7 @@ Sponsors de la communautĂ© ❀ src/app/components/about/about.component.html - 177,180 + 167,170 about.sponsors.withHeart @@ -1478,7 +1478,7 @@ IntĂ©grations communautaires src/app/components/about/about.component.html - 191,193 + 181,183 about.community-integrations @@ -1487,7 +1487,7 @@ Alliances communautaires src/app/components/about/about.component.html - 285,287 + 275,277 about.alliances @@ -1496,7 +1496,7 @@ Traducteurs src/app/components/about/about.component.html - 301,303 + 291,293 about.translators @@ -1505,7 +1505,7 @@ Contributeurs au projet src/app/components/about/about.component.html - 315,317 + 305,307 about.contributors @@ -1514,7 +1514,7 @@ Membres du projet src/app/components/about/about.component.html - 327,329 + 317,319 about.project_members @@ -1523,7 +1523,7 @@ Mainteneurs de projet src/app/components/about/about.component.html - 340,342 + 330,332 about.maintainers @@ -1532,7 +1532,7 @@ A propos src/app/components/about/about.component.ts - 39 + 42 src/app/components/bisq-master-page/bisq-master-page.component.html @@ -1581,7 +1581,7 @@ src/app/components/amount/amount.component.html - 18,21 + 20,23 src/app/components/asset-circulation/asset-circulation.component.html @@ -2686,11 +2686,11 @@ src/app/lightning/node/node.component.html - 52,55 + 55,58 src/app/lightning/node/node.component.html - 96,100 + 99,103 src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts @@ -2895,15 +2895,15 @@ src/app/lightning/channel/channel.component.html - 86,88 + 93,95 src/app/lightning/channel/channel.component.html - 96,98 + 103,105 src/app/lightning/node/node.component.html - 218,222 + 221,225 Transaction Details transaction.details @@ -2923,10 +2923,6 @@ src/app/lightning/channel/channel-preview.component.html 70,75 - - src/app/lightning/channel/channel.component.html - 109,115 - src/app/lightning/node/node-preview.component.html 66,69 @@ -4614,7 +4610,7 @@ src/app/lightning/node/node.component.html - 67,70 + 70,73 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -4630,11 +4626,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 13,15 + 15,16 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 13,15 + 15,16 Transaction first seen transaction.first-seen @@ -5370,7 +5366,7 @@ src/app/lightning/node/node.component.html - 180,182 + 183,185 shared.m-sats @@ -5488,7 +5484,7 @@ src/app/lightning/channel/channel.component.html - 11,12 + 13,14 src/app/lightning/channels-list/channels-list.component.html @@ -5505,7 +5501,7 @@ src/app/lightning/channel/channel.component.html - 12,13 + 14,15 src/app/lightning/channels-list/channels-list.component.html @@ -5522,7 +5518,7 @@ src/app/lightning/channel/channel.component.html - 13,14 + 15,16 src/app/lightning/channels-list/channels-list.component.html @@ -5543,7 +5539,7 @@ src/app/lightning/channel/channel.component.html - 29,30 + 36,37 lightning.created @@ -5556,7 +5552,7 @@ src/app/lightning/channel/channel.component.html - 48,49 + 55,56 src/app/lightning/channels-list/channels-list.component.html @@ -5590,6 +5586,10 @@ src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 60,62 + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 13,14 + src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts 202,201 @@ -5626,11 +5626,11 @@ Canal Lightning src/app/lightning/channel/channel.component.html - 2,5 + 4,7 src/app/lightning/channel/channel.component.html - 117,119 + 116,118 lightning.channel @@ -5639,11 +5639,11 @@ DerniĂšre mise Ă  jour src/app/lightning/channel/channel.component.html - 33,34 + 40,41 src/app/lightning/node/node.component.html - 73,75 + 76,78 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -5659,11 +5659,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 14,15 + 16,17 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 14,15 + 16,17 lightning.last-update @@ -5672,7 +5672,7 @@ Date de clĂŽture src/app/lightning/channel/channel.component.html - 37,38 + 44,45 src/app/lightning/channels-list/channels-list.component.html @@ -5685,7 +5685,7 @@ FermĂ©e par src/app/lightning/channel/channel.component.html - 52,54 + 59,61 lightning.closed_by @@ -5694,7 +5694,7 @@ Transaction d'ouverture src/app/lightning/channel/channel.component.html - 84,85 + 91,92 lightning.opening-transaction @@ -5703,7 +5703,7 @@ Transaction de clĂŽture src/app/lightning/channel/channel.component.html - 93,95 + 100,102 lightning.closing-transaction @@ -5786,11 +5786,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 10,11 + 11,12 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 10,12 + 11,13 lightning.alias @@ -6064,10 +6064,6 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 11,12 - - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html 12,13 lightning.liquidity @@ -6121,11 +6117,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 12,13 + 14,15 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 11,12 + 12,13 src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts @@ -6163,7 +6159,7 @@ src/app/lightning/node/node.component.html - 47,49 + 50,52 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -6179,11 +6175,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 15,17 + 17,20 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 15,17 + 17,20 lightning.location @@ -6221,9 +6217,17 @@ src/app/lightning/lightning-dashboard/lightning-dashboard.component.html 62 + + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html + 4,9 + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts - 29 + 33 + + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 4,9 src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.html @@ -6303,11 +6307,11 @@ src/app/lightning/node/node.component.html - 2,4 + 4,6 src/app/lightning/node/node.component.html - 260,262 + 263,265 lightning.node @@ -6320,7 +6324,7 @@ src/app/lightning/node/node.component.html - 27,30 + 30,33 lightning.active-capacity @@ -6333,7 +6337,7 @@ src/app/lightning/node/node.component.html - 34,38 + 37,41 lightning.active-channels @@ -6346,21 +6350,12 @@ country - - No node found for public key "" - Aucun nƓud trouvĂ© pour la clĂ© publique &quot; &quot; - - src/app/lightning/node/node.component.html - 17,19 - - lightning.node-not-found - Average channel size Taille moyenne du canal src/app/lightning/node/node.component.html - 40,43 + 43,46 lightning.active-channels-avg @@ -6369,7 +6364,7 @@ Distance moyenne des canaux src/app/lightning/node/node.component.html - 56,57 + 59,60 lightning.avg-distance @@ -6378,7 +6373,7 @@ Couleur src/app/lightning/node/node.component.html - 79,81 + 82,84 lightning.color @@ -6387,7 +6382,7 @@ FAI src/app/lightning/node/node.component.html - 86,87 + 89,90 src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html @@ -6400,7 +6395,7 @@ Exclusivement sur Tor src/app/lightning/node/node.component.html - 93,95 + 96,98 tor @@ -6409,7 +6404,7 @@ Annonce de liquiditĂ© src/app/lightning/node/node.component.html - 138,141 + 141,144 node.liquidity-ad @@ -6418,7 +6413,7 @@ Taux de frais de location src/app/lightning/node/node.component.html - 144,147 + 147,150 Liquidity ad lease fee rate liquidity-ad.lease-fee-rate @@ -6428,7 +6423,7 @@ Frais de base de location src/app/lightning/node/node.component.html - 152,154 + 155,157 liquidity-ad.lease-base-fee @@ -6437,7 +6432,7 @@ Poids du financement src/app/lightning/node/node.component.html - 158,159 + 161,162 liquidity-ad.funding-weight @@ -6446,7 +6441,7 @@ Taux de frais de canal src/app/lightning/node/node.component.html - 168,171 + 171,174 Liquidity ad channel fee rate liquidity-ad.channel-fee-rate @@ -6456,7 +6451,7 @@ Frais de base du canal src/app/lightning/node/node.component.html - 176,178 + 179,181 liquidity-ad.channel-base-fee @@ -6465,7 +6460,7 @@ Location compacte src/app/lightning/node/node.component.html - 188,190 + 191,193 liquidity-ad.compact-lease @@ -6474,7 +6469,7 @@ Enregistrements d'extension TLV src/app/lightning/node/node.component.html - 199,202 + 202,205 node.tlv.records @@ -6483,7 +6478,7 @@ Canaux ouverts src/app/lightning/node/node.component.html - 240,243 + 243,246 lightning.open-channels @@ -6492,7 +6487,7 @@ Canaux fermĂ©s src/app/lightning/node/node.component.html - 244,247 + 247,250 lightning.open-channels @@ -6562,9 +6557,9 @@ 112,107 - - Reachable on Clearnet Only - Accessible uniquement sur Clearnet + + Clearnet and Darknet + Clearnet et Darknet src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 164,161 @@ -6574,9 +6569,9 @@ 303,302 - - Reachable on Clearnet and Darknet - Accessible sur Clearnet et Darknet + + Clearnet Only (IPv4, IPv6) + Clearnet seulement (IPv4, IPv6) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 185,182 @@ -6586,9 +6581,9 @@ 295,294 - - Reachable on Darknet Only - Accessible uniquement sur Darknet + + Darknet Only (Tor, I2P, cjdns) + Darknet seulement (Tor, I2P, cjdns) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 206,203 @@ -6844,24 +6839,6 @@ 27 - - Top 100 nodes liquidity ranking - Classement des 100 meilleurs nƓuds par liquiditĂ© - - src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 3,7 - - lightning.top-100-liquidity - - - Top 100 nodes connectivity ranking - Classement des 100 meilleurs nƓuds par connectivitĂ© - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 3,7 - - lightning.top-100-connectivity - Oldest nodes NƓuds les plus anciens diff --git a/frontend/src/locale/messages.ja.xlf b/frontend/src/locale/messages.ja.xlf index 7c68dd849..84b541b9a 100644 --- a/frontend/src/locale/messages.ja.xlf +++ b/frontend/src/locale/messages.ja.xlf @@ -359,11 +359,11 @@ src/app/components/block/block.component.html - 303,304 + 310,311 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 26,27 + 46,47 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -384,11 +384,11 @@ src/app/components/block/block.component.html - 304,305 + 311,312 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 27,28 + 47,48 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -598,7 +598,7 @@ src/app/components/pool-ranking/pool-ranking.component.html - 94,96 + 94,95 @@ -775,16 +775,24 @@ src/app/components/about/about.component.html - 385,389 + 375,378 + + + src/app/components/mining-dashboard/mining-dashboard.component.html + 88 src/app/dashboard/dashboard.component.html - 150,152 + 157,159 src/app/docs/docs/docs.component.html 51 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 97 + Terms of Service shared.terms-of-service @@ -795,14 +803,22 @@ src/app/bisq/bisq-main-dashboard/bisq-main-dashboard.component.html 113,120 + + src/app/components/mining-dashboard/mining-dashboard.component.html + 90 + src/app/dashboard/dashboard.component.html - 152,154 + 159,161 src/app/docs/docs/docs.component.html 53 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 99 + Privacy Policy shared.privacy-policy @@ -990,7 +1006,7 @@ src/app/dashboard/dashboard.component.html - 124,125 + 124,126 @@ -1038,7 +1054,7 @@ src/app/components/transaction/transaction.component.html - 158,160 + 152,154 src/app/components/transactions-list/transactions-list.component.html @@ -1054,11 +1070,11 @@ src/app/components/block/block.component.html - 245,246 + 252,253 src/app/components/transaction/transaction.component.html - 288,290 + 282,284 transaction.version @@ -1108,7 +1124,7 @@ src/app/components/transactions-list/transactions-list.component.html - 294,295 + 296,297 Transaction singular confirmation count shared.confirmation-count.singular @@ -1130,7 +1146,7 @@ src/app/components/transactions-list/transactions-list.component.html - 295,296 + 297,298 Transaction plural confirmation count shared.confirmation-count.plural @@ -1142,10 +1158,6 @@ src/app/bisq/bisq-transaction/bisq-transaction.component.html 43,45 - - src/app/components/transaction/transaction.component.html - 65,67 - Transaction included in block transaction.included-in-block @@ -1158,11 +1170,11 @@ src/app/components/transaction/transaction.component.html - 77,80 + 71,74 src/app/components/transaction/transaction.component.html - 135,138 + 129,132 Transaction features transaction.features @@ -1190,11 +1202,11 @@ src/app/components/transaction/transaction.component.html - 262,267 + 256,261 src/app/components/transaction/transaction.component.html - 406,412 + 400,406 transaction.details @@ -1211,11 +1223,11 @@ src/app/components/transaction/transaction.component.html - 249,253 + 243,247 src/app/components/transaction/transaction.component.html - 377,383 + 371,377 Transaction inputs and outputs transaction.inputs-and-outputs @@ -1233,7 +1245,7 @@ src/app/components/transaction/transaction.component.ts - 241,240 + 244,243 @@ -1253,7 +1265,7 @@ src/app/components/transaction/transaction.component.html - 159,160 + 153,154 src/app/dashboard/dashboard.component.html @@ -1269,7 +1281,7 @@ src/app/components/transaction/transaction.component.html - 72,73 + 66,67 Transaction Confirmed state transaction.confirmed @@ -1440,7 +1452,7 @@ ăƒ“ăƒƒăƒˆă‚łă‚€ăƒłă‚łăƒŸăƒ„ăƒ‹ăƒ†ă‚ŁăƒŒăźăŸă‚ăźă€æ–°èˆˆăƒˆăƒ©ăƒłă‚¶ă‚Żă‚·ăƒ§ăƒłæ‰‹æ•°æ–™ćž‚ć Žă«äž­ćżƒă™ă‚‹ăƒĄăƒąăƒȘăƒŒăƒ—ăƒŒăƒ«ăšăƒ–ăƒ­ăƒƒă‚Żăƒă‚§ăƒŒăƒłă‚šă‚­ă‚čăƒ—ăƒ­ăƒŒăƒ©ă§ă™ă€‚ è‡Șćź…ă‚”ăƒŒăƒă«çźĄç†ă§ăă‚‹äžŠă€äżĄé Œă™ăčăçŹŹäž‰è€…ăŒäžćż…èŠă§ă™ă€‚ src/app/components/about/about.component.html - 13,17 + 13,16 @@ -1448,7 +1460,7 @@ äŒæ„­ăźă‚čăƒăƒłă‚”ăƒŒ 🚀 src/app/components/about/about.component.html - 29,32 + 19,22 about.sponsors.enterprise.withRocket @@ -1457,7 +1469,7 @@ ă‚łăƒŸăƒ„ăƒ‹ăƒ†ă‚ŁăƒŒăźă‚čăƒăƒłă‚”ăƒŒâ€ïž src/app/components/about/about.component.html - 177,180 + 167,170 about.sponsors.withHeart @@ -1466,7 +1478,7 @@ ă‚łăƒŸăƒ„ăƒ‹ăƒ†ă‚ŁăƒŒăźç”±ćˆ src/app/components/about/about.component.html - 191,193 + 181,183 about.community-integrations @@ -1475,7 +1487,7 @@ ă‚łăƒŸăƒ„ăƒ‹ăƒ†ă‚ŁăƒŒăźææș src/app/components/about/about.component.html - 285,287 + 275,277 about.alliances @@ -1484,7 +1496,7 @@ ăƒ—ăƒ­ă‚žă‚§ă‚Żăƒˆçż»èšłè€… src/app/components/about/about.component.html - 301,303 + 291,293 about.translators @@ -1493,7 +1505,7 @@ プロゾェクトèČąçŒźè€… src/app/components/about/about.component.html - 315,317 + 305,307 about.contributors @@ -1502,7 +1514,7 @@ ăƒ—ăƒ­ă‚žă‚§ă‚ŻăƒˆăƒĄăƒłăƒăƒŒ src/app/components/about/about.component.html - 327,329 + 317,319 about.project_members @@ -1511,7 +1523,7 @@ ăƒ—ăƒ­ă‚žă‚§ă‚ŻăƒˆăƒĄăƒłăƒ†ăƒŠăƒŒ src/app/components/about/about.component.html - 340,342 + 330,332 about.maintainers @@ -1520,7 +1532,7 @@ こぼケプăƒȘに぀いお src/app/components/about/about.component.ts - 39 + 42 src/app/components/bisq-master-page/bisq-master-page.component.html @@ -1537,7 +1549,7 @@ Multisig of - ă«ăźăƒžăƒ«ăƒă‚·ă‚° + / ăźăƒžăƒ«ăƒă‚·ă‚° src/app/components/address-labels/address-labels.component.ts 107 @@ -1569,7 +1581,7 @@ src/app/components/amount/amount.component.html - 6,9 + 20,23 src/app/components/asset-circulation/asset-circulation.component.html @@ -1585,7 +1597,7 @@ src/app/components/transactions-list/transactions-list.component.html - 302,304 + 304,306 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -2049,7 +2061,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 161 + 165 @@ -2065,7 +2077,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 163 + 167 @@ -2077,7 +2089,7 @@ src/app/components/block-fees-graph/block-fees-graph.component.ts - 62 + 67 src/app/components/graphs/graphs.component.html @@ -2090,15 +2102,15 @@ ăƒ–ăƒ­ăƒƒă‚ŻçŽąćŒ•ä»˜ă‘äž­ src/app/components/block-fees-graph/block-fees-graph.component.ts - 110,105 + 116,111 src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 108,103 + 113,108 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 115,110 + 116,111 src/app/components/hashrate-chart/hashrate-chart.component.ts @@ -2143,7 +2155,7 @@ src/app/components/transaction/transaction.component.html - 478 + 472 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -2169,11 +2181,11 @@ src/app/components/transaction/transaction.component.html - 478,479 + 472 src/app/components/transactions-list/transactions-list.component.html - 286,287 + 288 sat shared.sat @@ -2187,11 +2199,11 @@ src/app/components/transaction/transaction.component.html - 161,165 + 155,159 src/app/components/transaction/transaction.component.html - 481,483 + 475,477 src/app/lightning/channel/channel-box/channel-box.component.html @@ -2221,19 +2233,19 @@ src/app/components/block/block.component.html - 123,126 + 124,127 src/app/components/block/block.component.html - 127 + 128,130 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 12,14 + 19,22 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 15,17 + 30,33 src/app/components/fees-box/fees-box.component.html @@ -2273,27 +2285,27 @@ src/app/components/transaction/transaction.component.html - 173,174 + 167,168 src/app/components/transaction/transaction.component.html - 184,185 + 178,179 src/app/components/transaction/transaction.component.html - 195,196 + 189,190 src/app/components/transaction/transaction.component.html - 483,486 + 477,480 src/app/components/transaction/transaction.component.html - 494,496 + 488,490 src/app/components/transactions-list/transactions-list.component.html - 286 + 286,287 src/app/dashboard/dashboard.component.html @@ -2301,7 +2313,7 @@ src/app/dashboard/dashboard.component.html - 206,210 + 213,217 sat/vB shared.sat-vbyte @@ -2315,11 +2327,11 @@ src/app/components/transaction/transaction.component.html - 160,162 + 154,156 src/app/components/transaction/transaction.component.html - 274,277 + 268,271 Transaction Virtual Size transaction.vsize @@ -2432,7 +2444,7 @@ src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 60 + 65 src/app/components/graphs/graphs.component.html @@ -2462,11 +2474,11 @@ ゔむă‚ș src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 180,179 + 184,183 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 226,224 + 239,237 src/app/components/block/block.component.html @@ -2494,7 +2506,7 @@ src/app/components/transaction/transaction.component.html - 270,272 + 264,266 src/app/dashboard/dashboard.component.html @@ -2506,11 +2518,11 @@ 重み src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 188,187 + 192,191 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 257,254 + 270,267 src/app/components/block/block-preview.component.html @@ -2522,7 +2534,19 @@ src/app/components/transaction/transaction.component.html - 278,280 + 272,274 + + + + Size per weight + ă‚Šă‚§ă‚€ăƒˆă‚ăŸă‚Šăźă‚”ă‚€ă‚ș + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 200,199 + + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 282,279 @@ -2538,15 +2562,6 @@ shared.block-title - - - - - src/app/components/block/block-preview.component.html - 11,12 - - shared.block-title - Median fee æ–™é‡‘ăźäž­ć€źć€€ @@ -2556,7 +2571,7 @@ src/app/components/block/block.component.html - 126,127 + 127,128 src/app/components/mempool-block/mempool-block.component.html @@ -2573,11 +2588,11 @@ src/app/components/block/block.component.html - 131,133 + 138,140 src/app/components/block/block.component.html - 157,160 + 164,167 src/app/components/mempool-block/mempool-block.component.html @@ -2595,7 +2610,7 @@ src/app/components/block/block.component.html - 166,168 + 173,175 block.miner @@ -2608,7 +2623,7 @@ src/app/components/block/block.component.ts - 234 + 242 @@ -2662,12 +2677,20 @@ 60,63 - src/app/lightning/node/node.component.html - 52,55 + src/app/components/pool-ranking/pool-ranking.component.html + 121,124 + + + src/app/lightning/channel/closing-type/closing-type.component.ts + 32 src/app/lightning/node/node.component.html - 96,100 + 55,58 + + + src/app/lightning/node/node.component.html + 99,103 src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts @@ -2684,7 +2707,7 @@ 料金ă‚čパン src/app/components/block/block.component.html - 122,123 + 123,124 src/app/components/mempool-block/mempool-block.component.html @@ -2697,7 +2720,7 @@ 140vBytesたćčłć‡ăƒă‚€ăƒ†ă‚Łăƒ–segwităƒˆăƒ©ăƒłă‚¶ă‚Żă‚·ăƒ§ăƒłă«ćŸșă„ă src/app/components/block/block.component.html - 127,129 + 131,136 src/app/components/fees-box/fees-box.component.html @@ -2721,16 +2744,16 @@ Transaction fee tooltip - - Subsidy + fees: - èŁœćŠ©é‡‘+手数料 + + Subsidy + fees + èŁœćŠ©é‡‘+手数料 src/app/components/block/block.component.html - 146,149 + 153,156 src/app/components/block/block.component.html - 161,165 + 168,172 Total subsidy and fees in a block block.subsidy-and-fees @@ -2740,7 +2763,7 @@ äșˆćźš src/app/components/block/block.component.html - 209 + 216 block.expected @@ -2749,11 +2772,11 @@ ăƒ™ăƒŒă‚ż src/app/components/block/block.component.html - 209,210 + 216,217 src/app/components/block/block.component.html - 215,217 + 222,224 beta @@ -2762,7 +2785,7 @@ 漟 src/app/components/block/block.component.html - 211,215 + 218,222 block.actual @@ -2771,7 +2794,7 @@ äșˆćźšăƒ–ăƒ­ăƒƒă‚Ż src/app/components/block/block.component.html - 215 + 222 block.expected-block @@ -2780,7 +2803,7 @@ 漟ブロック src/app/components/block/block.component.html - 224 + 231 block.actual-block @@ -2789,7 +2812,7 @@ ビット src/app/components/block/block.component.html - 249,251 + 256,258 block.bits @@ -2798,7 +2821,7 @@ ăƒžăƒŒă‚Żăƒ«ăƒ»ăƒ«ăƒŒăƒˆ src/app/components/block/block.component.html - 253,255 + 260,262 block.merkle-root @@ -2807,7 +2830,7 @@ é›Łæ˜“ćșŠ src/app/components/block/block.component.html - 264,267 + 271,274 src/app/components/difficulty-adjustments-table/difficulty-adjustments-table.component.html @@ -2836,7 +2859,7 @@ ノンă‚č src/app/components/block/block.component.html - 268,270 + 275,277 block.nonce @@ -2845,7 +2868,7 @@ ăƒ–ăƒ­ăƒƒă‚Żăƒ˜ăƒƒăƒ€ăƒŒăź16é€Č怀 src/app/components/block/block.component.html - 272,273 + 279,280 block.header @@ -2854,7 +2877,7 @@ ç›ŁæŸ» src/app/components/block/block.component.html - 290,294 + 297,301 Toggle Audit block.toggle-audit @@ -2864,23 +2887,23 @@ è©łçŽ° src/app/components/block/block.component.html - 297,301 + 304,308 src/app/components/transaction/transaction.component.html - 254,259 + 248,253 src/app/lightning/channel/channel.component.html - 86,88 + 93,95 src/app/lightning/channel/channel.component.html - 96,98 + 103,105 src/app/lightning/node/node.component.html - 218,222 + 221,225 Transaction Details transaction.details @@ -2890,20 +2913,16 @@ ăƒ‡ăƒŒă‚żèȘ­ăżèŸŒăżäž­ă«ă‚šăƒ©ăƒŒăŒç™șç”Ÿă—ăŸă—ăŸă€‚ src/app/components/block/block.component.html - 316,318 + 323,325 src/app/components/block/block.component.html - 355,359 + 362,366 src/app/lightning/channel/channel-preview.component.html 70,75 - - src/app/lightning/channel/channel.component.html - 109,115 - src/app/lightning/node/node-preview.component.html 66,69 @@ -2919,7 +2938,7 @@ こぼブロックはăȘぜç©șă§ă™ă‹ïŒŸ src/app/components/block/block.component.html - 377,383 + 384,390 block.empty-block-explanation @@ -3028,7 +3047,7 @@ src/app/dashboard/dashboard.component.html - 212,216 + 219,223 dashboard.txs @@ -3267,7 +3286,7 @@ src/app/dashboard/dashboard.component.html - 239,240 + 246,247 dashboard.incoming-transactions @@ -3280,7 +3299,7 @@ src/app/dashboard/dashboard.component.html - 242,245 + 249,252 dashboard.backend-is-synchronizing @@ -3293,7 +3312,7 @@ src/app/dashboard/dashboard.component.html - 247,252 + 254,259 vB/s shared.vbytes-per-second @@ -3307,7 +3326,7 @@ src/app/dashboard/dashboard.component.html - 210,211 + 217,218 Unconfirmed count dashboard.unconfirmed @@ -3683,6 +3702,32 @@ dashboard.adjustments + + Broadcast Transaction + ăƒ–ăƒ­ăƒŒăƒ‰ă‚­ăƒŁă‚čăƒˆăƒˆăƒ©ăƒłă‚¶ă‚Żă‚·ăƒ§ăƒł + + src/app/components/mining-dashboard/mining-dashboard.component.html + 92 + + + src/app/components/push-transaction/push-transaction.component.html + 2 + + + src/app/components/push-transaction/push-transaction.component.html + 8 + + + src/app/dashboard/dashboard.component.html + 161,169 + + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 102 + + Broadcast Transaction + shared.broadcast-transaction + Pools luck (1 week) ăƒ—ăƒŒăƒ«é‹ïŒˆ1週間 @@ -3750,7 +3795,7 @@ src/app/components/pool-ranking/pool-ranking.component.html - 136,138 + 152,154 master-page.blocks @@ -3780,12 +3825,25 @@ mining.rank + + Avg Health + ćčłć‡ć„ć…šæ€§ + + src/app/components/pool-ranking/pool-ranking.component.html + 96,97 + + + src/app/components/pool-ranking/pool-ranking.component.html + 96,98 + + latest-blocks.avg_health + Empty blocks ç©șブロック src/app/components/pool-ranking/pool-ranking.component.html - 95,98 + 97,100 mining.empty-blocks @@ -3794,7 +3852,7 @@ すăčăŠăźăƒžă‚€ăƒŠăƒŒ src/app/components/pool-ranking/pool-ranking.component.html - 113,114 + 129,130 mining.all-miners @@ -3803,7 +3861,7 @@ ăƒ—ăƒŒăƒ«ăźé‹(1週間) src/app/components/pool-ranking/pool-ranking.component.html - 130,132 + 146,148 mining.miners-luck @@ -3812,7 +3870,7 @@ ăƒ—ăƒŒăƒ«æ•°(1週間) src/app/components/pool-ranking/pool-ranking.component.html - 142,144 + 158,160 mining.miners-count @@ -3821,7 +3879,7 @@ ăƒžă‚€ăƒ‹ăƒłă‚°ăƒ—ăƒŒăƒ« src/app/components/pool-ranking/pool-ranking.component.ts - 57 + 58 @@ -4048,24 +4106,6 @@ latest-blocks.coinbasetag - - Broadcast Transaction - ăƒ–ăƒ­ăƒŒăƒ‰ă‚­ăƒŁă‚čăƒˆăƒˆăƒ©ăƒłă‚¶ă‚Żă‚·ăƒ§ăƒł - - src/app/components/push-transaction/push-transaction.component.html - 2 - - - src/app/components/push-transaction/push-transaction.component.html - 8 - - - src/app/dashboard/dashboard.component.html - 154,162 - - Broadcast Transaction - shared.broadcast-transaction - Transaction hex ăƒˆăƒ©ăƒłă‚¶ă‚Żă‚·ăƒ§ăƒłăź16é€Č怀 @@ -4075,7 +4115,7 @@ src/app/components/transaction/transaction.component.html - 296,297 + 290,291 transaction.hex @@ -4200,6 +4240,78 @@ search-form.search-title + + Bitcoin Block Height + ăƒ“ăƒƒăƒˆă‚łă‚€ăƒłăƒ–ăƒ­ăƒƒă‚Żé«˜ + + src/app/components/search-form/search-results/search-results.component.html + 3 + + search.bitcoin-block-height + + + Bitcoin Transaction + ăƒ“ăƒƒăƒˆă‚łă‚€ăƒłăƒˆăƒ©ăƒłă‚¶ă‚Żă‚·ăƒ§ăƒł + + src/app/components/search-form/search-results/search-results.component.html + 9 + + search.bitcoin-transaction + + + Bitcoin Address + ăƒ“ăƒƒăƒˆă‚łă‚€ăƒłă‚ąăƒ‰ăƒŹă‚č + + src/app/components/search-form/search-results/search-results.component.html + 15 + + search.bitcoin-address + + + Bitcoin Block + ăƒ“ăƒƒăƒˆă‚łă‚€ăƒłăƒ–ăƒ­ăƒƒă‚Ż + + src/app/components/search-form/search-results/search-results.component.html + 21 + + search.bitcoin-block + + + Bitcoin Addresses + ăƒ“ăƒƒăƒˆă‚łă‚€ăƒłă‚ąăƒ‰ăƒŹă‚č + + src/app/components/search-form/search-results/search-results.component.html + 27 + + search.bitcoin-addresses + + + Lightning Nodes + ăƒ©ă‚€ăƒˆăƒ‹ăƒłă‚°ăƒŽăƒŒăƒ‰ + + src/app/components/search-form/search-results/search-results.component.html + 35 + + search.lightning-nodes + + + Lightning Channels + ăƒ©ă‚€ăƒˆăƒ‹ăƒłă‚°ăƒăƒŁăƒłăƒăƒ« + + src/app/components/search-form/search-results/search-results.component.html + 43 + + search.lightning-channels + + + Go to "" + &quot;&quot;ぞ + + src/app/components/search-form/search-results/search-results.component.html + 52 + + search.go-to + Mempool by vBytes (sat/vByte) vByteć˜äœăźMempool/vByte @@ -4484,7 +4596,7 @@ src/app/components/transactions-list/transactions-list.component.html - 298,301 + 300,303 Transaction unconfirmed state transaction.unconfirmed @@ -4494,11 +4606,11 @@ æœ€ćˆă«èŠ‹ăŸ src/app/components/transaction/transaction.component.html - 108,109 + 102,103 src/app/lightning/node/node.component.html - 67,70 + 70,73 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -4514,11 +4626,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 13,15 + 15,16 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 13,15 + 15,16 Transaction first seen transaction.first-seen @@ -4528,7 +4640,7 @@ ETA src/app/components/transaction/transaction.component.html - 115,116 + 109,110 Transaction ETA transaction.eta @@ -4538,7 +4650,7 @@ æ•°æ™‚é–“ïŒˆăŸăŸăŻăă‚Œä»„äžŠïŒ‰ src/app/components/transaction/transaction.component.html - 121,124 + 115,118 Transaction ETA in several hours or more transaction.eta.in-several-hours @@ -4548,11 +4660,11 @@ Descendant src/app/components/transaction/transaction.component.html - 168,170 + 162,164 src/app/components/transaction/transaction.component.html - 179,181 + 173,175 Descendant transaction.descendant @@ -4562,7 +4674,7 @@ Ancestor src/app/components/transaction/transaction.component.html - 190,192 + 184,186 Transaction Ancestor transaction.ancestor @@ -4572,11 +4684,11 @@ æ”ă‚Œ src/app/components/transaction/transaction.component.html - 208,211 + 202,205 src/app/components/transaction/transaction.component.html - 346,350 + 340,344 Transaction flow transaction.flow @@ -4586,7 +4698,7 @@ ć›łèĄšă‚’éžèĄšç€ș src/app/components/transaction/transaction.component.html - 211,216 + 205,210 hide-diagram @@ -4595,7 +4707,7 @@ è©łçŽ°ă‚’èĄšç€ș src/app/components/transaction/transaction.component.html - 231,233 + 225,227 src/app/components/transactions-list/transactions-list.component.html @@ -4612,7 +4724,7 @@ è©łçŽ°ă‚’éžèĄšç€ș src/app/components/transaction/transaction.component.html - 233,239 + 227,233 src/app/components/transactions-list/transactions-list.component.html @@ -4625,7 +4737,7 @@ ć›łèĄšă‚’èĄšç€ș src/app/components/transaction/transaction.component.html - 253,254 + 247,248 show-diagram @@ -4634,7 +4746,7 @@ ăƒ­ăƒƒă‚Żă‚żă‚€ăƒ  src/app/components/transaction/transaction.component.html - 292,294 + 286,288 transaction.locktime @@ -4643,7 +4755,7 @@ ăƒˆăƒ©ăƒłă‚¶ă‚Żă‚·ăƒ§ăƒłăŒèŠ‹ă€ă‹ă‚ŠăŸă›ă‚“ă€‚ src/app/components/transaction/transaction.component.html - 455,456 + 449,450 transaction.error.transaction-not-found @@ -4652,7 +4764,7 @@ mempoolă«èĄšç€șă•ă‚Œă‚‹ăźă‚’ćŸ…ăŁăŠă„ăŸă™... src/app/components/transaction/transaction.component.html - 456,461 + 450,455 transaction.error.waiting-for-it-to-appear @@ -4661,7 +4773,7 @@ 漟ćŠčæ‰‹æ•°æ–™ăƒŹăƒŒăƒˆ src/app/components/transaction/transaction.component.html - 491,494 + 485,488 Effective transaction fee rate transaction.effective-fee-rate @@ -4810,7 +4922,7 @@ æ‰‹æ•°æ–™ăƒ‡ăƒŒă‚żă‚’èŠ‹ă‚‹ă«ăŻă‚‚ăŁăšă‚€ăƒłăƒ—ăƒƒăƒˆă‚’èĄšç€șする src/app/components/transactions-list/transactions-list.component.html - 288,291 + 290,293 transactions-list.load-to-reveal-fee-info @@ -4819,7 +4931,7 @@ æź‹ă‚Š src/app/components/transactions-list/transactions-list.component.html - 330,331 + 332,333 x-remaining @@ -5070,21 +5182,12 @@ dashboard.latest-transactions - - USD - ç±łăƒ‰ăƒ« - - src/app/dashboard/dashboard.component.html - 126,127 - - dashboard.latest-transactions.USD - Minimum fee 最䜎料金 src/app/dashboard/dashboard.component.html - 203,204 + 210,211 Minimum mempool fee dashboard.minimum-fee @@ -5094,7 +5197,7 @@ 扊陀䞭 src/app/dashboard/dashboard.component.html - 204,205 + 211,212 Purgin below fee dashboard.purging @@ -5104,7 +5207,7 @@ ュヹăƒȘäœżç”šé‡ src/app/dashboard/dashboard.component.html - 216,217 + 223,224 Memory usage dashboard.memory-usage @@ -5114,10 +5217,19 @@ æ”é€šă—ăŠă„ă‚‹L-BTC src/app/dashboard/dashboard.component.html - 230,232 + 237,239 dashboard.lbtc-pegs-in-circulation + + mempool.space merely provides data about the Bitcoin network. It cannot help you with retrieving funds, confirming your transaction quicker, etc. + mempool.spaceăŻć˜ă«ăƒ“ăƒƒăƒˆă‚łă‚€ăƒłăƒăƒƒăƒˆăƒŻăƒŒă‚Żăźăƒ‡ăƒŒă‚żă‚’æäŸ›ă™ă‚‹ă‚”ăƒŒăƒ“ă‚čです。 èł‡é‡‘ăźć›žćŽă‚„ăƒˆăƒ©ăƒłă‚¶ă‚Żă‚·ăƒ§ăƒłăźèż…é€ŸăȘæ‰żèȘăȘă©ăźć•éĄŒă«ă€ă„ăŠăŻăŠæ‰‹äŒă„ă§ăăŸă›ă‚“ă€‚ + + src/app/docs/api-docs/api-docs.component.html + 13 + + faq.big-disclaimer + REST API service REST API @@ -5254,7 +5366,7 @@ src/app/lightning/node/node.component.html - 180,182 + 183,185 shared.m-sats @@ -5372,7 +5484,7 @@ src/app/lightning/channel/channel.component.html - 11,12 + 13,14 src/app/lightning/channels-list/channels-list.component.html @@ -5389,7 +5501,7 @@ src/app/lightning/channel/channel.component.html - 12,13 + 14,15 src/app/lightning/channels-list/channels-list.component.html @@ -5406,7 +5518,7 @@ src/app/lightning/channel/channel.component.html - 13,14 + 15,16 src/app/lightning/channels-list/channels-list.component.html @@ -5427,7 +5539,7 @@ src/app/lightning/channel/channel.component.html - 29,30 + 36,37 lightning.created @@ -5440,7 +5552,7 @@ src/app/lightning/channel/channel.component.html - 48,49 + 55,56 src/app/lightning/channels-list/channels-list.component.html @@ -5452,7 +5564,7 @@ src/app/lightning/node-statistics/node-statistics.component.html - 47,50 + 46,49 src/app/lightning/nodes-list/nodes-list.component.html @@ -5474,6 +5586,10 @@ src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 60,62 + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 13,14 + src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts 202,201 @@ -5510,11 +5626,11 @@ ăƒ©ă‚€ăƒˆăƒ‹ăƒłă‚°ăƒăƒŁăƒłăƒăƒ« src/app/lightning/channel/channel.component.html - 2,5 + 4,7 src/app/lightning/channel/channel.component.html - 117,119 + 116,118 lightning.channel @@ -5523,11 +5639,11 @@ 最甂曎新 src/app/lightning/channel/channel.component.html - 33,34 + 40,41 src/app/lightning/node/node.component.html - 73,75 + 76,78 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -5543,11 +5659,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 14,15 + 16,17 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 14,15 + 16,17 lightning.last-update @@ -5556,7 +5672,7 @@ 閉鎖時間 src/app/lightning/channel/channel.component.html - 37,38 + 44,45 src/app/lightning/channels-list/channels-list.component.html @@ -5569,7 +5685,7 @@ 閉鎖したæ–č src/app/lightning/channel/channel.component.html - 52,54 + 59,61 lightning.closed_by @@ -5578,7 +5694,7 @@ æœ€ćˆăƒˆăƒ©ăƒłă‚¶ă‚Żă‚·ăƒ§ăƒł src/app/lightning/channel/channel.component.html - 84,85 + 91,92 lightning.opening-transaction @@ -5587,7 +5703,7 @@ æœ€ç”‚ăƒˆăƒ©ăƒłă‚¶ă‚Żă‚·ăƒ§ăƒł src/app/lightning/channel/channel.component.html - 93,95 + 100,102 lightning.closing-transaction @@ -5599,6 +5715,30 @@ 37 + + Mutually closed + 盾äș’ćˆæ„ă‚Żăƒ­ăƒŒă‚ș + + src/app/lightning/channel/closing-type/closing-type.component.ts + 20 + + + + Force closed + ćŒ·ćˆ¶ă‚Żăƒ­ăƒŒă‚ș + + src/app/lightning/channel/closing-type/closing-type.component.ts + 24 + + + + Force closed with penalty + çœ°é‡‘ä»˜ăćŒ·ćˆ¶ă‚Żăƒ­ăƒŒă‚ș + + src/app/lightning/channel/closing-type/closing-type.component.ts + 28 + + Open 開く @@ -5646,11 +5786,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 10,11 + 11,12 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 10,12 + 11,13 lightning.alias @@ -5725,6 +5865,24 @@ shared.sats + + avg + ćčłć‡ + + src/app/lightning/channels-statistics/channels-statistics.component.html + 3,5 + + statistics.average-small + + + med + 䞭怟怀 + + src/app/lightning/channels-statistics/channels-statistics.component.html + 6,9 + + statistics.median-small + Avg Capacity ćčłć‡ćźč量 @@ -5853,11 +6011,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 17,18 + 16,17 src/app/lightning/node-statistics/node-statistics.component.html - 54,57 + 53,56 src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html @@ -5906,10 +6064,6 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 11,12 - - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html 12,13 lightning.liquidity @@ -5927,11 +6081,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 29,30 + 28,29 src/app/lightning/node-statistics/node-statistics.component.html - 61,64 + 60,63 src/app/lightning/nodes-list/nodes-list.component.html @@ -5963,11 +6117,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 12,13 + 14,15 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 11,12 + 12,13 src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts @@ -6005,7 +6159,7 @@ src/app/lightning/node/node.component.html - 47,49 + 50,52 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -6021,11 +6175,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 15,17 + 17,20 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 15,17 + 17,20 lightning.location @@ -6063,9 +6217,17 @@ src/app/lightning/lightning-dashboard/lightning-dashboard.component.html 62 + + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html + 4,9 + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts - 29 + 33 + + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 4,9 src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.html @@ -6095,6 +6257,30 @@ lightning.node-fee-distribution + + Outgoing Fees + ć€–ć‘ăæ‰‹æ•°æ–™ + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 170 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 208 + + + + Incoming Fees + ć†…ć‘ăæ‰‹æ•°æ–™ + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 178 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 222 + + Percentage change past week こぼ1é€±é–“ăźăƒ‘ăƒŒă‚»ăƒłăƒˆć€‰ćŒ– @@ -6104,11 +6290,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 18,20 + 17,19 src/app/lightning/node-statistics/node-statistics.component.html - 30,32 + 29,31 mining.percentage-change-last-week @@ -6121,11 +6307,11 @@ src/app/lightning/node/node.component.html - 2,4 + 4,6 src/app/lightning/node/node.component.html - 260,262 + 263,265 lightning.node @@ -6138,7 +6324,7 @@ src/app/lightning/node/node.component.html - 27,30 + 30,33 lightning.active-capacity @@ -6151,7 +6337,7 @@ src/app/lightning/node/node.component.html - 34,38 + 37,41 lightning.active-channels @@ -6164,21 +6350,12 @@ country - - No node found for public key "" - ć…Źé–‹ă‚­ăƒŒ&quot;&quot;ăźăƒŽăƒŒăƒ‰ăŻèŠ‹ă€ă‹ă‚ŠăŸă›ă‚“ă§ă—ăŸ - - src/app/lightning/node/node.component.html - 17,19 - - lightning.node-not-found - Average channel size ćčłć‡ăƒăƒŁăƒłăƒăƒ«ă‚”ă‚€ă‚ș src/app/lightning/node/node.component.html - 40,43 + 43,46 lightning.active-channels-avg @@ -6187,7 +6364,7 @@ ćčłć‡ăƒăƒŁăƒłăƒăƒ«è·é›ą src/app/lightning/node/node.component.html - 56,57 + 59,60 lightning.avg-distance @@ -6196,7 +6373,7 @@ è‰Č src/app/lightning/node/node.component.html - 79,81 + 82,84 lightning.color @@ -6205,7 +6382,7 @@ ăƒ—ăƒ­ăƒă‚€ăƒ€ăƒŒ src/app/lightning/node/node.component.html - 86,87 + 89,90 src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html @@ -6218,7 +6395,7 @@ Tor氂甹 src/app/lightning/node/node.component.html - 93,95 + 96,98 tor @@ -6227,7 +6404,7 @@ æ”ć‹•æ€§èŠè«‹ăźćșƒć‘Š src/app/lightning/node/node.component.html - 138,141 + 141,144 node.liquidity-ad @@ -6236,7 +6413,7 @@ ăƒȘăƒŒă‚迉‹æ•°æ–™ăƒŹăƒŒăƒˆ src/app/lightning/node/node.component.html - 144,147 + 147,150 Liquidity ad lease fee rate liquidity-ad.lease-fee-rate @@ -6246,16 +6423,16 @@ ăƒȘăƒŒă‚čćŸșæœŹæ‰‹æ•°æ–™ src/app/lightning/node/node.component.html - 152,154 + 155,157 liquidity-ad.lease-base-fee Funding weight - èł‡é‡‘ăźé‡ăż + èł‡é‡‘ăźă‚Šă‚§ă‚€ăƒˆ src/app/lightning/node/node.component.html - 158,159 + 161,162 liquidity-ad.funding-weight @@ -6264,7 +6441,7 @@ ăƒăƒŁăƒłăƒăƒ«æ‰‹æ•°æ–™ăƒŹăƒŒăƒˆ src/app/lightning/node/node.component.html - 168,171 + 171,174 Liquidity ad channel fee rate liquidity-ad.channel-fee-rate @@ -6274,7 +6451,7 @@ ăƒăƒŁăƒłăƒăƒ«ćŸșæœŹæ‰‹æ•°æ–™ src/app/lightning/node/node.component.html - 176,178 + 179,181 liquidity-ad.channel-base-fee @@ -6283,7 +6460,7 @@ Compact lease src/app/lightning/node/node.component.html - 188,190 + 191,193 liquidity-ad.compact-lease @@ -6292,7 +6469,7 @@ TLV extension records src/app/lightning/node/node.component.html - 199,202 + 202,205 node.tlv.records @@ -6301,7 +6478,7 @@ é–‹ă„ăŸăƒăƒŁăƒłăƒăƒ« src/app/lightning/node/node.component.html - 240,243 + 243,246 lightning.open-channels @@ -6310,7 +6487,7 @@ é–‰ă˜ăŸăƒăƒŁăƒłăƒăƒ« src/app/lightning/node/node.component.html - 244,247 + 247,250 lightning.open-channels @@ -6356,7 +6533,7 @@ ćœ°ç†äœçœźæƒ…ć ±ăƒ‡ăƒŒă‚żăŻă‚ă‚ŠăŸă›ă‚“ src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts - 218,213 + 219,214 @@ -6380,9 +6557,9 @@ 112,107 - - Reachable on Clearnet Only - é€æ˜Žăƒăƒƒăƒˆăźăżă‹ă‚‰æŽ„ç¶šćŻèƒœ + + Clearnet and Darknet + é€æ˜Žăƒăƒƒăƒˆăšăƒ€ăƒŒă‚Żăƒăƒƒăƒˆ src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 164,161 @@ -6392,9 +6569,9 @@ 303,302 - - Reachable on Clearnet and Darknet - é€æ˜Žăƒăƒƒăƒˆăšăƒ€ăƒŒă‚ŻăƒăƒƒăƒˆäžĄæ–čă‹ă‚‰æŽ„ç¶šćŻèƒœ + + Clearnet Only (IPv4, IPv6) + é€æ˜Žăƒăƒƒăƒˆăźăż (IPv4, IPv6) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 185,182 @@ -6404,9 +6581,9 @@ 295,294 - - Reachable on Darknet Only - ăƒ€ăƒŒă‚Żăƒăƒƒăƒˆăźăżă‹ă‚‰æŽ„ç¶šćŻèƒœ + + Darknet Only (Tor, I2P, cjdns) + ăƒ€ăƒŒă‚Żăƒăƒƒăƒˆăźăż (Tor, I2P, cjdns) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 206,203 @@ -6662,24 +6839,6 @@ 27 - - Top 100 nodes liquidity ranking - ăƒŽăƒŒăƒ‰æ”ć‹•æ€§äžŠäœ100怋 - - src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 3,7 - - lightning.top-100-liquidity - - - Top 100 nodes connectivity ranking - ăƒŽăƒŒăƒ‰æŽ„ç¶šæ•°äžŠäœ100怋 - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 3,7 - - lightning.top-100-connectivity - Oldest nodes ć€ă„ăƒŽăƒŒăƒ‰ diff --git a/frontend/src/locale/messages.ka.xlf b/frontend/src/locale/messages.ka.xlf index c142776da..cc0d90a08 100644 --- a/frontend/src/locale/messages.ka.xlf +++ b/frontend/src/locale/messages.ka.xlf @@ -11,6 +11,7 @@ Slide of + სლაიდი -დან node_modules/src/carousel/carousel.ts 175,181 @@ -147,6 +148,7 @@ + node_modules/src/progressbar/progressbar.ts 30,33 @@ -357,11 +359,11 @@ src/app/components/block/block.component.html - 290,291 + 310,311 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 26,27 + 46,47 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -382,11 +384,11 @@ src/app/components/block/block.component.html - 291,292 + 311,312 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 27,28 + 47,48 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -424,7 +426,7 @@ src/app/components/block/block.component.html - 40,41 + 38,39 block.hash @@ -449,7 +451,7 @@ src/app/components/block/block.component.html - 44,46 + 42,44 src/app/components/blocks-list/blocks-list.component.html @@ -592,11 +594,11 @@ src/app/components/master-page/master-page.component.html - 49,51 + 48,50 src/app/components/pool-ranking/pool-ranking.component.html - 94,96 + 94,95 @@ -773,16 +775,24 @@ src/app/components/about/about.component.html - 385,389 + 375,378 + + + src/app/components/mining-dashboard/mining-dashboard.component.html + 88 src/app/dashboard/dashboard.component.html - 150,152 + 157,159 src/app/docs/docs/docs.component.html 51 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 97 + Terms of Service shared.terms-of-service @@ -793,14 +803,22 @@ src/app/bisq/bisq-main-dashboard/bisq-main-dashboard.component.html 113,120 + + src/app/components/mining-dashboard/mining-dashboard.component.html + 90 + src/app/dashboard/dashboard.component.html - 152,154 + 159,161 src/app/docs/docs/docs.component.html 53 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 99 + Privacy Policy shared.privacy-policy @@ -988,7 +1006,7 @@ src/app/dashboard/dashboard.component.html - 124,125 + 124,126 @@ -1036,7 +1054,7 @@ src/app/components/transaction/transaction.component.html - 158,160 + 152,154 src/app/components/transactions-list/transactions-list.component.html @@ -1052,11 +1070,11 @@ src/app/components/block/block.component.html - 246,247 + 252,253 src/app/components/transaction/transaction.component.html - 288,290 + 282,284 transaction.version @@ -1106,7 +1124,7 @@ src/app/components/transactions-list/transactions-list.component.html - 294,295 + 296,297 Transaction singular confirmation count shared.confirmation-count.singular @@ -1128,7 +1146,7 @@ src/app/components/transactions-list/transactions-list.component.html - 295,296 + 297,298 Transaction plural confirmation count shared.confirmation-count.plural @@ -1140,10 +1158,6 @@ src/app/bisq/bisq-transaction/bisq-transaction.component.html 43,45 - - src/app/components/transaction/transaction.component.html - 65,67 - Transaction included in block transaction.included-in-block @@ -1156,11 +1170,11 @@ src/app/components/transaction/transaction.component.html - 77,80 + 71,74 src/app/components/transaction/transaction.component.html - 135,138 + 129,132 Transaction features transaction.features @@ -1188,11 +1202,11 @@ src/app/components/transaction/transaction.component.html - 262,267 + 256,261 src/app/components/transaction/transaction.component.html - 406,412 + 400,406 transaction.details @@ -1209,11 +1223,11 @@ src/app/components/transaction/transaction.component.html - 249,253 + 243,247 src/app/components/transaction/transaction.component.html - 377,383 + 371,377 Transaction inputs and outputs transaction.inputs-and-outputs @@ -1231,7 +1245,7 @@ src/app/components/transaction/transaction.component.ts - 241,240 + 244,243 @@ -1251,7 +1265,7 @@ src/app/components/transaction/transaction.component.html - 159,160 + 153,154 src/app/dashboard/dashboard.component.html @@ -1267,7 +1281,7 @@ src/app/components/transaction/transaction.component.html - 72,73 + 66,67 Transaction Confirmed state transaction.confirmed @@ -1438,7 +1452,7 @@ ბიჱკოინ mempool ი და ბლოჄჩეინ áƒ”áƒ„áƒĄáƒžáƒšáƒáƒ áƒ”áƒ áƒ˜ ბიჱკოინ community-სთვის, áƒ€áƒáƒ™áƒŁáƒĄáƒ˜áƒ áƒ”áƒ‘áƒŁáƒšáƒ˜ საკომისიოზე და მრავალ ჹრიან ბიჱკოინ ეკოსისჱემაზე, სრულიად თვით რეალიზებული მესამე პირთა დაყდრნობის გარეჹე src/app/components/about/about.component.html - 13,17 + 13,16 @@ -1446,7 +1460,7 @@ კორპორაჱიული სპონსორები src/app/components/about/about.component.html - 29,32 + 19,22 about.sponsors.enterprise.withRocket @@ -1455,15 +1469,16 @@ კერძო სპონსორები ❀ src/app/components/about/about.component.html - 177,180 + 167,170 about.sponsors.withHeart Community Integrations + მოჼალისეების ინჱეგრაáƒȘიები src/app/components/about/about.component.html - 191,193 + 181,183 about.community-integrations @@ -1472,7 +1487,7 @@ ალიანსი src/app/components/about/about.component.html - 285,287 + 275,277 about.alliances @@ -1481,7 +1496,7 @@ მთარგმნელები src/app/components/about/about.component.html - 301,303 + 291,293 about.translators @@ -1490,7 +1505,7 @@ მოჼალისეები src/app/components/about/about.component.html - 315,317 + 305,307 about.contributors @@ -1499,7 +1514,7 @@ áƒžáƒ áƒáƒ”áƒ„áƒąáƒ˜áƒĄ წევრები src/app/components/about/about.component.html - 327,329 + 317,319 about.project_members @@ -1508,7 +1523,7 @@ áƒžáƒ áƒáƒ”áƒ„áƒąáƒ˜áƒĄ ლემჄმნელები src/app/components/about/about.component.html - 340,342 + 330,332 about.maintainers @@ -1517,7 +1532,7 @@ áƒ©áƒ•áƒ”áƒœáƒĄ ჹესაჼებ src/app/components/about/about.component.ts - 39 + 42 src/app/components/bisq-master-page/bisq-master-page.component.html @@ -1529,11 +1544,12 @@ src/app/components/master-page/master-page.component.html - 58,61 + 57,60 Multisig of + Multisig -დან src/app/components/address-labels/address-labels.component.ts 107 @@ -1565,7 +1581,7 @@ src/app/components/amount/amount.component.html - 6,9 + 20,23 src/app/components/asset-circulation/asset-circulation.component.html @@ -1581,7 +1597,7 @@ src/app/components/transactions-list/transactions-list.component.html - 302,304 + 304,306 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -1664,7 +1680,7 @@ src/app/components/assets/assets.component.html - 29,31 + 31,33 src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html @@ -1886,7 +1902,7 @@ src/app/components/assets/assets.component.html - 30,31 + 32,33 Asset ticker header @@ -1899,7 +1915,7 @@ src/app/components/assets/assets.component.html - 31,34 + 33,36 Asset Issuer Domain header @@ -1912,7 +1928,7 @@ src/app/components/assets/assets.component.html - 32,36 + 34,38 Asset ID header @@ -1921,7 +1937,7 @@ áƒ„áƒáƒ˜áƒœáƒ”áƒ‘áƒ˜áƒĄ მონაáƒȘემების áƒ›áƒáƒ«áƒ”áƒ‘áƒ•áƒœáƒ˜áƒĄáƒáƒĄ მოჼდა ჹეáƒȘდომა. src/app/components/assets/assets.component.html - 48,53 + 50,55 Asset data load error @@ -2034,6 +2050,7 @@ At block: + ბლოკჹი: src/app/components/block-fee-rates-graph/block-fee-rates-graph.component.ts 188 @@ -2044,11 +2061,12 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 161 + 165 Around block: + ბლოკჹი: src/app/components/block-fee-rates-graph/block-fee-rates-graph.component.ts 190 @@ -2059,7 +2077,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 163 + 167 @@ -2071,7 +2089,7 @@ src/app/components/block-fees-graph/block-fees-graph.component.ts - 62 + 67 src/app/components/graphs/graphs.component.html @@ -2084,15 +2102,15 @@ ბლოკის áƒ˜áƒœáƒ“áƒ”áƒ„áƒĄáƒ˜áƒ áƒ”áƒ‘áƒ src/app/components/block-fees-graph/block-fees-graph.component.ts - 110,105 + 116,111 src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 108,103 + 113,108 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 115,110 + 116,111 src/app/components/hashrate-chart/hashrate-chart.component.ts @@ -2117,6 +2135,7 @@ not available + მიუწვდომელია src/app/components/block-overview-graph/block-overview-graph.component.html 5 @@ -2136,7 +2155,7 @@ src/app/components/transaction/transaction.component.html - 476 + 472 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -2162,11 +2181,11 @@ src/app/components/transaction/transaction.component.html - 476,477 + 472 src/app/components/transactions-list/transactions-list.component.html - 286,287 + 288 sat shared.sat @@ -2180,11 +2199,11 @@ src/app/components/transaction/transaction.component.html - 161,165 + 155,159 src/app/components/transaction/transaction.component.html - 479,481 + 475,477 src/app/lightning/channel/channel-box/channel-box.component.html @@ -2196,7 +2215,7 @@ src/app/lightning/channels-list/channels-list.component.html - 38,39 + 41,42 Transaction fee rate transaction.fee-rate @@ -2214,19 +2233,19 @@ src/app/components/block/block.component.html - 125,128 + 124,127 src/app/components/block/block.component.html - 129 + 128,130 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 12,14 + 19,22 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 15,17 + 30,33 src/app/components/fees-box/fees-box.component.html @@ -2266,27 +2285,27 @@ src/app/components/transaction/transaction.component.html - 173,174 + 167,168 src/app/components/transaction/transaction.component.html - 184,185 + 178,179 src/app/components/transaction/transaction.component.html - 195,196 + 189,190 src/app/components/transaction/transaction.component.html - 481,484 + 477,480 src/app/components/transaction/transaction.component.html - 492,494 + 488,490 src/app/components/transactions-list/transactions-list.component.html - 286 + 286,287 src/app/dashboard/dashboard.component.html @@ -2294,7 +2313,7 @@ src/app/dashboard/dashboard.component.html - 204,208 + 213,217 sat/vB shared.sat-vbyte @@ -2308,17 +2327,18 @@ src/app/components/transaction/transaction.component.html - 160,162 + 154,156 src/app/components/transaction/transaction.component.html - 274,277 + 268,271 Transaction Virtual Size transaction.vsize Audit status + აუდიჱის ქჹაჹუქი src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 36 @@ -2327,6 +2347,7 @@ Match + დამთჼვევა src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 38 @@ -2335,6 +2356,7 @@ Removed + ამოჩებულია src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 39 @@ -2343,6 +2365,7 @@ Marginal fee rate + განსაზჩვრული საკომისიო src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 40 @@ -2355,6 +2378,7 @@ Recently broadcasted + ბოლოს მიჩებული src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 41 @@ -2363,6 +2387,7 @@ Added + დამაჱებულია src/app/components/block-overview-tooltip/block-overview-tooltip.component.html 42 @@ -2371,6 +2396,7 @@ Block Prediction Accuracy + ბლოკის წინასწარმეჱყველების სიზუსჱე src/app/components/block-prediction-graph/block-prediction-graph.component.html 6,8 @@ -2387,6 +2413,7 @@ No data to display yet. Try again later. + მონაáƒȘემების ჩვენება ჯერ არ არიქ áƒšáƒ”áƒĄáƒáƒ«áƒšáƒ”áƒ‘áƒ”áƒšáƒ˜. áțოგვიანებით ქáƒȘადეთ. src/app/components/block-prediction-graph/block-prediction-graph.component.ts 108,103 @@ -2402,6 +2429,7 @@ Match rate + დამთჼვევის მაჩვენებელი src/app/components/block-prediction-graph/block-prediction-graph.component.ts 189,187 @@ -2416,7 +2444,7 @@ src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 60 + 65 src/app/components/graphs/graphs.component.html @@ -2446,15 +2474,15 @@ ზომა src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 180,179 + 184,183 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 226,224 + 239,237 src/app/components/block/block.component.html - 50,52 + 48,50 src/app/components/blocks-list/blocks-list.component.html @@ -2478,7 +2506,7 @@ src/app/components/transaction/transaction.component.html - 270,272 + 264,266 src/app/dashboard/dashboard.component.html @@ -2490,11 +2518,11 @@ წონა src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 188,187 + 192,191 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 257,254 + 270,267 src/app/components/block/block-preview.component.html @@ -2502,15 +2530,28 @@ src/app/components/block/block.component.html - 54,56 + 52,54 src/app/components/transaction/transaction.component.html - 278,280 + 272,274 + + + + Size per weight + ზომა მოáƒȘემულ რაოდენობაზე + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 200,199 + + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 282,279 Block + ბლოკი src/app/components/block/block-preview.component.html 3,7 @@ -2521,14 +2562,6 @@ shared.block-title - - - - src/app/components/block/block-preview.component.html - 11,12 - - shared.block-title - Median fee საჹუალო საკომისიო @@ -2538,7 +2571,7 @@ src/app/components/block/block.component.html - 128,129 + 127,128 src/app/components/mempool-block/mempool-block.component.html @@ -2555,11 +2588,11 @@ src/app/components/block/block.component.html - 133,135 + 138,140 src/app/components/block/block.component.html - 159,162 + 164,167 src/app/components/mempool-block/mempool-block.component.html @@ -2577,7 +2610,7 @@ src/app/components/block/block.component.html - 168,170 + 173,175 block.miner @@ -2590,7 +2623,7 @@ src/app/components/block/block.component.ts - 227 + 242 @@ -2615,31 +2648,49 @@ Previous Block - - Block health + + Health + ჯანმრთელობა src/app/components/block/block.component.html - 58,61 + 56 - block.health + + src/app/components/blocks-list/blocks-list.component.html + 18,19 + + + src/app/components/blocks-list/blocks-list.component.html + 18,19 + + latest-blocks.health Unknown + უáƒȘნობი src/app/components/block/block.component.html - 69,72 + 67,70 src/app/components/blocks-list/blocks-list.component.html 60,63 - src/app/lightning/node/node.component.html - 52,55 + src/app/components/pool-ranking/pool-ranking.component.html + 121,124 + + + src/app/lightning/channel/closing-type/closing-type.component.ts + 32 src/app/lightning/node/node.component.html - 96,100 + 55,58 + + + src/app/lightning/node/node.component.html + 99,103 src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts @@ -2656,7 +2707,7 @@ საკომისიოს დიაპაზონი src/app/components/block/block.component.html - 124,125 + 123,124 src/app/components/mempool-block/mempool-block.component.html @@ -2669,7 +2720,7 @@ გამომდინარე საჹუალო native segwit 140 vByte áƒąáƒ áƒáƒœáƒĄáƒáƒ„áƒȘიიდან src/app/components/block/block.component.html - 129,131 + 131,136 src/app/components/fees-box/fees-box.component.html @@ -2693,49 +2744,66 @@ Transaction fee tooltip - - Subsidy + fees: - სუბსიდია + საკომისიო: + + Subsidy + fees + სუბსიდია და საკომისიო src/app/components/block/block.component.html - 148,151 + 153,156 src/app/components/block/block.component.html - 163,167 + 168,172 Total subsidy and fees in a block block.subsidy-and-fees - - Projected + + Expected + მოსალოდნელი src/app/components/block/block.component.html - 210,212 + 216 - block.projected + block.expected + + + beta + ბეჱა + + src/app/components/block/block.component.html + 216,217 + + + src/app/components/block/block.component.html + 222,224 + + beta Actual + მიმდინარე src/app/components/block/block.component.html - 212,216 + 218,222 block.actual - - Projected Block + + Expected Block + მოსალოდნელი ბლოკი src/app/components/block/block.component.html - 216,218 + 222 - block.projected-block + block.expected-block Actual Block + მიმდინარე ბლოკი src/app/components/block/block.component.html - 225,227 + 231 block.actual-block @@ -2744,7 +2812,7 @@ Bits src/app/components/block/block.component.html - 250,252 + 256,258 block.bits @@ -2753,7 +2821,7 @@ Merkle root src/app/components/block/block.component.html - 254,256 + 260,262 block.merkle-root @@ -2762,7 +2830,7 @@ სირთულე src/app/components/block/block.component.html - 265,268 + 271,274 src/app/components/difficulty-adjustments-table/difficulty-adjustments-table.component.html @@ -2791,7 +2859,7 @@ Nonce src/app/components/block/block.component.html - 269,271 + 275,277 block.nonce @@ -2800,32 +2868,42 @@ Block Header Hex src/app/components/block/block.component.html - 273,274 + 279,280 block.header + + Audit + აუდიჱი + + src/app/components/block/block.component.html + 297,301 + + Toggle Audit + block.toggle-audit + Details დეჱალები src/app/components/block/block.component.html - 284,288 + 304,308 src/app/components/transaction/transaction.component.html - 254,259 + 248,253 src/app/lightning/channel/channel.component.html - 86,88 + 93,95 src/app/lightning/channel/channel.component.html - 96,98 + 103,105 src/app/lightning/node/node.component.html - 218,222 + 221,225 Transaction Details transaction.details @@ -2835,20 +2913,16 @@ მოჼდა ჹეáƒȘდომა src/app/components/block/block.component.html - 303,305 + 323,325 src/app/components/block/block.component.html - 339,343 + 362,366 src/app/lightning/channel/channel-preview.component.html 70,75 - - src/app/lightning/channel/channel.component.html - 109,115 - src/app/lightning/node/node-preview.component.html 66,69 @@ -2861,9 +2935,10 @@ Why is this block empty? + რაჱომ არიქ ეს ბლოკი áƒȘარიელი? src/app/components/block/block.component.html - 361,367 + 384,390 block.empty-block-explanation @@ -2909,18 +2984,6 @@ latest-blocks.mined - - Health - - src/app/components/blocks-list/blocks-list.component.html - 18,19 - - - src/app/components/blocks-list/blocks-list.component.html - 18,19 - - latest-blocks.health - Reward ანაზჩაურება @@ -2984,7 +3047,7 @@ src/app/dashboard/dashboard.component.html - 210,214 + 219,223 dashboard.txs @@ -3150,6 +3213,7 @@ Usually places your transaction in between the second and third mempool blocks + თჄვენი áƒąáƒ áƒáƒœáƒĄáƒáƒ„áƒȘია წესით ჼვდება მეორე და მესამე mempool იქ ბლოკებს ჹორის src/app/components/fees-box/fees-box.component.html 8,9 @@ -3171,6 +3235,7 @@ Usually places your transaction in between the first and second mempool blocks + თჄვენი áƒąáƒ áƒáƒœáƒĄáƒáƒ„áƒȘია წესით ჼვდება პირველ და მემორე mempool იქ ბლოკებს ჹორის src/app/components/fees-box/fees-box.component.html 9,10 @@ -3221,7 +3286,7 @@ src/app/dashboard/dashboard.component.html - 237,238 + 246,247 dashboard.incoming-transactions @@ -3234,7 +3299,7 @@ src/app/dashboard/dashboard.component.html - 240,243 + 249,252 dashboard.backend-is-synchronizing @@ -3247,7 +3312,7 @@ src/app/dashboard/dashboard.component.html - 245,250 + 254,259 vB/s shared.vbytes-per-second @@ -3261,7 +3326,7 @@ src/app/dashboard/dashboard.component.html - 208,209 + 217,218 Unconfirmed count dashboard.unconfirmed @@ -3313,6 +3378,7 @@ Hashrate & Difficulty + ჰაჹრეიჱი და სირთულე src/app/components/graphs/graphs.component.html 15,16 @@ -3321,6 +3387,7 @@ Lightning + Lightning src/app/components/graphs/graphs.component.html 31 @@ -3329,6 +3396,7 @@ Lightning Nodes Per Network + Lightning ნოდა ყოველ ნეთვორჄზე src/app/components/graphs/graphs.component.html 34 @@ -3349,6 +3417,7 @@ Lightning Network Capacity + Lightning იქ áƒšáƒ”áƒĄáƒáƒ«áƒšáƒ”áƒ‘áƒšáƒáƒ‘áƒ src/app/components/graphs/graphs.component.html 36 @@ -3369,6 +3438,7 @@ Lightning Nodes Per ISP + Lightning Nodes Per ISP src/app/components/graphs/graphs.component.html 38 @@ -3381,6 +3451,7 @@ Lightning Nodes Per Country + Lightning იქ ნოდა áƒ„áƒ•áƒ”áƒ§áƒœáƒ”áƒ‘áƒ˜áƒĄ მიჼედვით src/app/components/graphs/graphs.component.html 40 @@ -3397,6 +3468,7 @@ Lightning Nodes World Map + Lightning იქ ნოდები áƒ›áƒĄáƒáƒ€áƒšáƒ˜áƒáƒĄ áƒ áƒŁáƒ„áƒáƒ–áƒ” src/app/components/graphs/graphs.component.html 42 @@ -3413,6 +3485,7 @@ Lightning Nodes Channels World Map + Lightning იქ ნოდის ჩანელები áƒ›áƒĄáƒáƒ€áƒšáƒ˜áƒ áƒ áƒŁáƒ„áƒáƒ–áƒ” src/app/components/graphs/graphs.component.html 44 @@ -3467,6 +3540,7 @@ Hashrate (MA) + ჰაჹრეიჱი src/app/components/hashrate-chart/hashrate-chart.component.ts 292,291 @@ -3509,7 +3583,7 @@ src/app/components/master-page/master-page.component.html - 52,54 + 51,53 src/app/components/statistics/statistics.component.ts @@ -3532,9 +3606,10 @@ Lightning Explorer + Lightning áƒ”áƒ„áƒĄáƒžáƒšáƒáƒ áƒ”áƒ áƒ˜ src/app/components/master-page/master-page.component.html - 44,45 + 44,47 src/app/lightning/lightning-dashboard/lightning-dashboard.component.ts @@ -3542,20 +3617,12 @@ master-page.lightning - - beta - - src/app/components/master-page/master-page.component.html - 45,48 - - beta - Documentation დოკუმენჱაáƒȘია src/app/components/master-page/master-page.component.html - 55,57 + 54,56 src/app/docs/docs/docs.component.html @@ -3635,8 +3702,35 @@ dashboard.adjustments + + Broadcast Transaction + Broadcast Transaction + + src/app/components/mining-dashboard/mining-dashboard.component.html + 92 + + + src/app/components/push-transaction/push-transaction.component.html + 2 + + + src/app/components/push-transaction/push-transaction.component.html + 8 + + + src/app/dashboard/dashboard.component.html + 161,169 + + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 102 + + Broadcast Transaction + shared.broadcast-transaction + Pools luck (1 week) + pool იქ იჩბალი (1კვ.) src/app/components/pool-ranking/pool-ranking.component.html 9 @@ -3645,6 +3739,7 @@ Pools luck + pool იქ იჩბალი src/app/components/pool-ranking/pool-ranking.component.html 9,11 @@ -3653,6 +3748,7 @@ The overall luck of all mining pools over the past week. A luck bigger than 100% means the average block time for the current epoch is less than 10 minutes. + ყველა მაინინგ Pool-იქ საერთო იჩბალი გასული კვირის განმავლობაჹი. 100%-ზე მეჱი მაჩვენებელი ნიჹნავს, რომ მიმდინარე áƒ”áƒžáƒáƒ„áƒ˜áƒĄáƒ—áƒ•áƒ˜áƒĄ ბლოკების საჹუალო დრო 10 წუთზე ნაკლები იყო. src/app/components/pool-ranking/pool-ranking.component.html 11,15 @@ -3661,6 +3757,7 @@ Pools count (1w) + pool იქ რაოდენობა (1კვ.) src/app/components/pool-ranking/pool-ranking.component.html 17 @@ -3669,6 +3766,7 @@ Pools count + pool იქ რაოდენობა src/app/components/pool-ranking/pool-ranking.component.html 17,19 @@ -3677,6 +3775,7 @@ How many unique pools found at least one block over the past week. + რამდენმა უნიკალურმა Pool-მა მოიპოვა მინიმუმ ერთი ბლოკი გასული კვირის განმავლობაჹი. src/app/components/pool-ranking/pool-ranking.component.html 19,23 @@ -3696,12 +3795,13 @@ src/app/components/pool-ranking/pool-ranking.component.html - 136,138 + 152,154 master-page.blocks The number of blocks found over the past week. + გასული კვირის განმავლობაჹი მოპოვებული ბლოკების რაოდენობა. src/app/components/pool-ranking/pool-ranking.component.html 27,31 @@ -3725,12 +3825,25 @@ mining.rank + + Avg Health + საჹუალო ჯანმრთელობა + + src/app/components/pool-ranking/pool-ranking.component.html + 96,97 + + + src/app/components/pool-ranking/pool-ranking.component.html + 96,98 + + latest-blocks.avg_health + Empty blocks áƒȘარიელი ბლოკი src/app/components/pool-ranking/pool-ranking.component.html - 95,98 + 97,100 mining.empty-blocks @@ -3739,7 +3852,7 @@ ყველა მაინერი src/app/components/pool-ranking/pool-ranking.component.html - 113,114 + 129,130 mining.all-miners @@ -3748,7 +3861,7 @@ pool იქ გამართლება (1კვ) src/app/components/pool-ranking/pool-ranking.component.html - 130,132 + 146,148 mining.miners-luck @@ -3757,7 +3870,7 @@ pool იქ რაოდენობა (1კვ) src/app/components/pool-ranking/pool-ranking.component.html - 142,144 + 158,160 mining.miners-count @@ -3766,7 +3879,7 @@ მაინინგ pool ები src/app/components/pool-ranking/pool-ranking.component.ts - 57 + 58 @@ -3783,6 +3896,7 @@ mining pool + მაინინგ Pool ი src/app/components/pool/pool-preview.component.html 3,5 @@ -3992,24 +4106,6 @@ latest-blocks.coinbasetag - - Broadcast Transaction - Broadcast Transaction - - src/app/components/push-transaction/push-transaction.component.html - 2 - - - src/app/components/push-transaction/push-transaction.component.html - 8 - - - src/app/dashboard/dashboard.component.html - 154,161 - - Broadcast Transaction - shared.broadcast-transaction - Transaction hex Transaction hex @@ -4019,7 +4115,7 @@ src/app/components/transaction/transaction.component.html - 296,297 + 290,291 transaction.hex @@ -4051,6 +4147,7 @@ Avg Block Fees + საჹუალო ბლოკის საკომისიო src/app/components/reward-stats/reward-stats.component.html 17 @@ -4063,6 +4160,7 @@ Average fees per block in the past 144 blocks + საჹუალო ბლოკის საკომისიო ბოლო 144 ბლოკზე src/app/components/reward-stats/reward-stats.component.html 18,20 @@ -4071,6 +4169,7 @@ BTC/block + BTC/block src/app/components/reward-stats/reward-stats.component.html 21,24 @@ -4080,6 +4179,7 @@ Avg Tx Fee + ქალ. áƒąáƒ áƒáƒœáƒĄáƒáƒ„áƒȘიიქ საკ. src/app/components/reward-stats/reward-stats.component.html 30 @@ -4124,6 +4224,7 @@ Explore the full Bitcoin ecosystem + გაიáƒȘანი ბიჱკოინის მთლიანი ეკოსისჱემა src/app/components/search-form/search-form.component.html 4,5 @@ -4139,6 +4240,78 @@ search-form.search-title + + Bitcoin Block Height + ბიჱკოინის ბლოკის სიმაჩლე + + src/app/components/search-form/search-results/search-results.component.html + 3 + + search.bitcoin-block-height + + + Bitcoin Transaction + ბიჱკოინის áƒąáƒ áƒáƒœáƒ–áƒáƒ„áƒȘია + + src/app/components/search-form/search-results/search-results.component.html + 9 + + search.bitcoin-transaction + + + Bitcoin Address + ბიჱკოინის მისამართი + + src/app/components/search-form/search-results/search-results.component.html + 15 + + search.bitcoin-address + + + Bitcoin Block + ბიჱკოინის ბლოკი + + src/app/components/search-form/search-results/search-results.component.html + 21 + + search.bitcoin-block + + + Bitcoin Addresses + ბიჱკოინის მისამართები + + src/app/components/search-form/search-results/search-results.component.html + 27 + + search.bitcoin-addresses + + + Lightning Nodes + Lightning ნოდა + + src/app/components/search-form/search-results/search-results.component.html + 35 + + search.lightning-nodes + + + Lightning Channels + Lightning ჩანელი + + src/app/components/search-form/search-results/search-results.component.html + 43 + + search.lightning-channels + + + Go to "" + Go to &quot;&quot; + + src/app/components/search-form/search-results/search-results.component.html + 52 + + search.go-to + Mempool by vBytes (sat/vByte) მემპული vBytes (ქაჹ/vByte) მიჼედვით @@ -4396,6 +4569,7 @@ This transaction replaced: + ამ áƒąáƒ áƒáƒœáƒ–áƒáƒ„áƒȘიამ ჩაანაáƒȘვლა: src/app/components/transaction/transaction.component.html 10,12 @@ -4405,6 +4579,7 @@ Replaced + ჩაანაáƒȘვლა src/app/components/transaction/transaction.component.html 36,39 @@ -4421,7 +4596,7 @@ src/app/components/transactions-list/transactions-list.component.html - 298,301 + 300,303 Transaction unconfirmed state transaction.unconfirmed @@ -4431,11 +4606,11 @@ პირველი src/app/components/transaction/transaction.component.html - 108,109 + 102,103 src/app/lightning/node/node.component.html - 67,70 + 70,73 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -4451,11 +4626,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 13,15 + 15,16 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 13,15 + 15,16 Transaction first seen transaction.first-seen @@ -4465,7 +4640,7 @@ სავარაუდო ლოდინის დრო src/app/components/transaction/transaction.component.html - 115,116 + 109,110 Transaction ETA transaction.eta @@ -4475,7 +4650,7 @@ რამდენიმე საათჹი (ან მეჱი) src/app/components/transaction/transaction.component.html - 121,124 + 115,118 Transaction ETA in several hours or more transaction.eta.in-several-hours @@ -4485,11 +4660,11 @@ კლებადი src/app/components/transaction/transaction.component.html - 168,170 + 162,164 src/app/components/transaction/transaction.component.html - 179,181 + 173,175 Descendant transaction.descendant @@ -4499,37 +4674,40 @@ ჹთამომავალი src/app/components/transaction/transaction.component.html - 190,192 + 184,186 Transaction Ancestor transaction.ancestor Flow + Flow src/app/components/transaction/transaction.component.html - 208,211 + 202,205 src/app/components/transaction/transaction.component.html - 346,350 + 340,344 Transaction flow transaction.flow Hide diagram + დიაგრამის დამალვა src/app/components/transaction/transaction.component.html - 211,216 + 205,210 hide-diagram Show more + მეჱის ჩვენება src/app/components/transaction/transaction.component.html - 231,233 + 225,227 src/app/components/transactions-list/transactions-list.component.html @@ -4543,9 +4721,10 @@ Show less + ნაკლების ჩვენება src/app/components/transaction/transaction.component.html - 233,239 + 227,233 src/app/components/transactions-list/transactions-list.component.html @@ -4555,9 +4734,10 @@ Show diagram + დიაგრამის ჩვენება src/app/components/transaction/transaction.component.html - 253,254 + 247,248 show-diagram @@ -4566,7 +4746,7 @@ Locktime src/app/components/transaction/transaction.component.html - 292,294 + 286,288 transaction.locktime @@ -4575,7 +4755,7 @@ áƒąáƒ áƒáƒœáƒĄáƒáƒ„áƒȘია ვერ მოიძებნა. src/app/components/transaction/transaction.component.html - 455,456 + 449,450 transaction.error.transaction-not-found @@ -4584,7 +4764,7 @@ დაელოდეთ mempool-ლი რომ áƒ’áƒáƒ›áƒáƒ©áƒœáƒ“áƒ”áƒĄ... src/app/components/transaction/transaction.component.html - 456,461 + 450,455 transaction.error.waiting-for-it-to-appear @@ -4593,7 +4773,7 @@ áƒ”áƒ€áƒ”áƒ„áƒąáƒŁáƒ áƒ˜ საკომისიო src/app/components/transaction/transaction.component.html - 489,492 + 485,488 Effective transaction fee rate transaction.effective-fee-rate @@ -4739,22 +4919,25 @@ Show more inputs to reveal fee data + მეჱი input-იქ ჩვენება, საკომისიოს დაჱადან src/app/components/transactions-list/transactions-list.component.html - 288,291 + 290,293 transactions-list.load-to-reveal-fee-info remaining + დარჩენილია src/app/components/transactions-list/transactions-list.component.html - 330,331 + 332,333 x-remaining other inputs + სჼვა input ები src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html 12 @@ -4763,6 +4946,7 @@ other outputs + სჼვა input ები src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html 13 @@ -4771,6 +4955,7 @@ Input + Input src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html 42 @@ -4783,6 +4968,7 @@ Output + Output src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html 43 @@ -4795,6 +4981,7 @@ This transaction saved % on fees by using native SegWit + ამ áƒąáƒ áƒáƒœáƒ–áƒáƒ„áƒȘიამ დაზოგა % საკომისიო SegWit-იქ გამოყენებით src/app/components/tx-features/tx-features.component.html 2 @@ -4821,6 +5008,7 @@ This transaction saved % on fees by using SegWit and could save % more by fully upgrading to native SegWit + ამ áƒąáƒ áƒáƒœáƒ–áƒáƒ„áƒȘიამ დაზოგა % საკომისიო SegWit-იქ გამოყენებით და ლეიძლება დაზოგოს % მეჱი native SegWit-ზე სრულად განაჼლებით. src/app/components/tx-features/tx-features.component.html 4 @@ -4829,6 +5017,7 @@ This transaction could save % on fees by upgrading to native SegWit or % by upgrading to SegWit-P2SH + ამ áƒąáƒ áƒáƒœáƒ–áƒáƒ„áƒȘიაქ áƒšáƒ”áƒŁáƒ«áƒšáƒ˜áƒ დაზოგოს % საკომისიოებზე, გაaნაჼლეთ native SegWit-იან % SegWit-P2SH-ზე გადაიყვანეთ src/app/components/tx-features/tx-features.component.html 6 @@ -4837,6 +5026,7 @@ This transaction uses Taproot and thereby saved at least % on fees + ეს áƒąáƒ áƒáƒœáƒ–áƒáƒ„áƒȘია იყენებს Taproot-ქ და ამით ზოგავს მინიმუმ % საკომისიოზე src/app/components/tx-features/tx-features.component.html 12 @@ -4845,6 +5035,7 @@ Taproot + Taproot src/app/components/tx-features/tx-features.component.html 12 @@ -4870,6 +5061,7 @@ This transaction uses Taproot and already saved at least % on fees, but could save an additional % by fully using Taproot + ეს áƒąáƒ áƒáƒœáƒ–áƒáƒ„áƒȘია იყენებს Taproot-ქ და უკვე დაზოგილია მინიმუმ % საკომისიოებზე, მაგრამ ლეიძლება დაზოგოს დამაჱებითი % Taproot-იქ სრულად გამოყენებით src/app/components/tx-features/tx-features.component.html 14 @@ -4878,6 +5070,7 @@ This transaction could save % on fees by using Taproot + ამ áƒąáƒ áƒáƒœáƒ–áƒáƒ„áƒȘიაქ áƒšáƒ”áƒŁáƒ«áƒšáƒ˜áƒ დაზოგოს % საკომისიოზე Taproot-იქ გამოყენებით src/app/components/tx-features/tx-features.component.html 16 @@ -4886,6 +5079,7 @@ This transaction does not use Taproot + ეს áƒąáƒ áƒáƒœáƒ–áƒáƒ„áƒȘია არ იყენებს Taproot-ქ src/app/components/tx-features/tx-features.component.html 18 @@ -4903,6 +5097,7 @@ This transaction supports Replace-By-Fee (RBF) allowing fee bumping + ეს áƒąáƒ áƒáƒœáƒ–áƒáƒ„áƒȘია მჼარს უჭერს Replace-by-Fee (RBF), რომელიáƒȘ იძლევა საკომისიოს ჹეკუმჹვის საჹუალებას src/app/components/tx-features/tx-features.component.html 28 @@ -4987,21 +5182,12 @@ dashboard.latest-transactions - - USD - დოლარი - - src/app/dashboard/dashboard.component.html - 126,127 - - dashboard.latest-transactions.USD - Minimum fee მინ. საკომისიო src/app/dashboard/dashboard.component.html - 201,202 + 210,211 Minimum mempool fee dashboard.minimum-fee @@ -5011,7 +5197,7 @@ წაჹლა src/app/dashboard/dashboard.component.html - 202,203 + 211,212 Purgin below fee dashboard.purging @@ -5021,7 +5207,7 @@ მეჼსიერება src/app/dashboard/dashboard.component.html - 214,215 + 223,224 Memory usage dashboard.memory-usage @@ -5031,15 +5217,25 @@ L-BTC ბრუნვაჹი src/app/dashboard/dashboard.component.html - 228,230 + 237,239 dashboard.lbtc-pegs-in-circulation - - REST API service + + mempool.space merely provides data about the Bitcoin network. It cannot help you with retrieving funds, confirming your transaction quicker, etc. + mempool.space უბრალოდ გვაწვდით მონაáƒȘემებს ბიჱკოინის áƒ„áƒĄáƒ”áƒšáƒ˜áƒĄ ჹესაჼებ. იქ ვერ დაგეჼმარებათ áƒ€áƒ˜áƒœáƒáƒœáƒĄáƒ”áƒ‘áƒ˜áƒĄ მოძიებალი, თჄვენი áƒąáƒ áƒáƒœáƒ–áƒáƒ„áƒȘიიქ áƒŁáƒ€áƒ áƒ áƒĄáƒŹáƒ áƒáƒ€áƒáƒ“ დადასჱურებაჹი და ა.ლ. src/app/docs/api-docs/api-docs.component.html - 39,40 + 13 + + faq.big-disclaimer + + + REST API service + REST API service + + src/app/docs/api-docs/api-docs.component.html + 41,42 api-docs.title @@ -5048,11 +5244,11 @@ დასასრული src/app/docs/api-docs/api-docs.component.html - 48,49 + 50,51 src/app/docs/api-docs/api-docs.component.html - 102,105 + 104,107 Api docs endpoint @@ -5061,11 +5257,11 @@ აჩწერა src/app/docs/api-docs/api-docs.component.html - 67,68 + 69,70 src/app/docs/api-docs/api-docs.component.html - 106,107 + 108,109 @@ -5073,7 +5269,7 @@ Default push: action: 'want', data: ['blocks', ...] to express what you want pushed. Available: blocks, mempool-blocks, live-2h-chart, and stats.Push transactions related to address: 'track-address': '3PbJ...bF9B' to receive all new transactions containing that address as input or output. Returns an array of transactions. address-transactions for new mempool transactions, and block-transactions for new block confirmed transactions. src/app/docs/api-docs/api-docs.component.html - 107,108 + 109,110 api-docs.websocket.websocket @@ -5142,6 +5338,7 @@ Base fee + საბაზისო საკომისიო src/app/lightning/channel/channel-box/channel-box.component.html 29 @@ -5154,6 +5351,7 @@ mSats + mSats src/app/lightning/channel/channel-box/channel-box.component.html 35 @@ -5168,12 +5366,13 @@ src/app/lightning/node/node.component.html - 180,182 + 183,185 shared.m-sats This channel supports zero base fee routing + ეს ჩანელი მჼარს უჭერს zero base fee როუჱინგს src/app/lightning/channel/channel-box/channel-box.component.html 44 @@ -5182,6 +5381,7 @@ Zero base fee + Zero base fee src/app/lightning/channel/channel-box/channel-box.component.html 45 @@ -5190,6 +5390,7 @@ This channel does not support zero base fee routing + ეს ჩანელი არ უჭერს მჼარს zero base fee როუჱინგს src/app/lightning/channel/channel-box/channel-box.component.html 50 @@ -5198,6 +5399,7 @@ Non-zero base fee + Non-zero base fee src/app/lightning/channel/channel-box/channel-box.component.html 51 @@ -5206,6 +5408,7 @@ Min HTLC + Min HTLC src/app/lightning/channel/channel-box/channel-box.component.html 57 @@ -5214,6 +5417,7 @@ Max HTLC + Max HTLC src/app/lightning/channel/channel-box/channel-box.component.html 63 @@ -5222,6 +5426,7 @@ Timelock delta + Timelock delta src/app/lightning/channel/channel-box/channel-box.component.html 69 @@ -5230,18 +5435,20 @@ channels + ჩანელები src/app/lightning/channel/channel-box/channel-box.component.html 79 src/app/lightning/channels-list/channels-list.component.html - 120,121 + 123,124 lightning.x-channels Starting balance + ქა჏ყიქი ბალანსი src/app/lightning/channel/channel-close-box/channel-close-box.component.html 6 @@ -5251,6 +5458,7 @@ Closing balance + საბოლოო ბალანსი src/app/lightning/channel/channel-close-box/channel-close-box.component.html 12 @@ -5260,6 +5468,7 @@ lightning channel + lightning channel src/app/lightning/channel/channel-preview.component.html 3,5 @@ -5268,81 +5477,86 @@ Inactive + არააჄჹიური src/app/lightning/channel/channel-preview.component.html 10,11 - - src/app/lightning/channel/channel.component.html - 11,12 - - - src/app/lightning/channels-list/channels-list.component.html - 65,66 - - status.inactive - - - Active - - src/app/lightning/channel/channel-preview.component.html - 11,12 - - - src/app/lightning/channel/channel.component.html - 12,13 - - - src/app/lightning/channels-list/channels-list.component.html - 66,68 - - status.active - - - Closed - - src/app/lightning/channel/channel-preview.component.html - 12,14 - src/app/lightning/channel/channel.component.html 13,14 + + src/app/lightning/channels-list/channels-list.component.html + 68,69 + + status.inactive + + + Active + აჄჹიური + + src/app/lightning/channel/channel-preview.component.html + 11,12 + + + src/app/lightning/channel/channel.component.html + 14,15 + + + src/app/lightning/channels-list/channels-list.component.html + 69,71 + + status.active + + + Closed + დაჼურული + + src/app/lightning/channel/channel-preview.component.html + 12,14 + + + src/app/lightning/channel/channel.component.html + 15,16 + src/app/lightning/channels-list/channels-list.component.html 8,13 src/app/lightning/channels-list/channels-list.component.html - 68,70 + 71,73 status.closed Created + ლეჄმნილია src/app/lightning/channel/channel-preview.component.html 23,26 src/app/lightning/channel/channel.component.html - 29,30 + 36,37 lightning.created Capacity + ჱევადობა src/app/lightning/channel/channel-preview.component.html 27,28 src/app/lightning/channel/channel.component.html - 48,49 + 55,56 src/app/lightning/channels-list/channels-list.component.html - 40,43 + 43,46 src/app/lightning/node-statistics/node-statistics.component.html @@ -5350,7 +5564,7 @@ src/app/lightning/node-statistics/node-statistics.component.html - 47,50 + 46,49 src/app/lightning/nodes-list/nodes-list.component.html @@ -5372,6 +5586,10 @@ src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 60,62 + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 13,14 + src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts 202,201 @@ -5384,6 +5602,7 @@ ppm + ppm src/app/lightning/channel/channel-preview.component.html 34,35 @@ -5404,25 +5623,27 @@ Lightning channel + Lightning channel-ი src/app/lightning/channel/channel.component.html - 2,5 + 4,7 src/app/lightning/channel/channel.component.html - 117,119 + 116,118 lightning.channel Last update + áȑოლო განაჼლება src/app/lightning/channel/channel.component.html - 33,34 + 40,41 src/app/lightning/node/node.component.html - 73,75 + 76,78 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -5438,59 +5659,89 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 14,15 + 16,17 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 14,15 + 16,17 lightning.last-update Closing date + ბოლო თარიჩი src/app/lightning/channel/channel.component.html - 37,38 + 44,45 src/app/lightning/channels-list/channels-list.component.html - 39,40 + 42,43 lightning.closing_date Closed by + დაიჼურა src/app/lightning/channel/channel.component.html - 52,54 + 59,61 lightning.closed_by Opening transaction + პირველი áƒąáƒ áƒáƒœáƒ–áƒáƒ„áƒȘია src/app/lightning/channel/channel.component.html - 84,85 + 91,92 lightning.opening-transaction Closing transaction + საბოლოო áƒąáƒ áƒáƒœáƒĄáƒáƒ„áƒȘია src/app/lightning/channel/channel.component.html - 93,95 + 100,102 lightning.closing-transaction Channel: + ჩანელი: src/app/lightning/channel/channel.component.ts 37 + + Mutually closed + თანაბრად დაჼურული + + src/app/lightning/channel/closing-type/closing-type.component.ts + 20 + + + + Force closed + ჩარევით დაჼურული + + src/app/lightning/channel/closing-type/closing-type.component.ts + 24 + + + + Force closed with penalty + ჩარევით დაჼურული ჯარიმით + + src/app/lightning/channel/closing-type/closing-type.component.ts + 28 + + Open + გაჼსნა src/app/lightning/channels-list/channels-list.component.html 5,7 @@ -5499,17 +5750,19 @@ No channels to display + არჼები არ არიქ ნაჩვენები src/app/lightning/channels-list/channels-list.component.html - 29,35 + 29,37 lightning.empty-channels-list Alias + Alias src/app/lightning/channels-list/channels-list.component.html - 35,37 + 38,40 src/app/lightning/group/group.component.html @@ -5533,39 +5786,42 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 10,11 + 11,12 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 10,12 + 11,13 lightning.alias Status + ქჹაჹუქი src/app/lightning/channels-list/channels-list.component.html - 37,38 + 40,41 status Channel ID + áƒ©áƒáƒœáƒ”áƒšáƒ˜áƒĄ ID src/app/lightning/channels-list/channels-list.component.html - 41,45 + 44,48 channels.id sats + sats src/app/lightning/channels-list/channels-list.component.html - 60,64 + 63,67 src/app/lightning/channels-list/channels-list.component.html - 84,88 + 87,91 src/app/lightning/channels-statistics/channels-statistics.component.html @@ -5609,8 +5865,27 @@ shared.sats + + avg + ქალ. + + src/app/lightning/channels-statistics/channels-statistics.component.html + 3,5 + + statistics.average-small + + + med + მედ. + + src/app/lightning/channels-statistics/channels-statistics.component.html + 6,9 + + statistics.median-small + Avg Capacity + ქალ. áƒĄáƒ˜áƒ›áƒ«áƒšáƒáƒ•áƒ áƒ” src/app/lightning/channels-statistics/channels-statistics.component.html 13,15 @@ -5623,6 +5898,7 @@ Avg Fee Rate + საჹუალო საკომისიო src/app/lightning/channels-statistics/channels-statistics.component.html 26,28 @@ -5635,6 +5911,7 @@ The average fee rate charged by routing nodes, ignoring fee rates > 0.5% or 5000ppm + როუჱინგის áƒ™áƒ•áƒáƒœáƒ«áƒ”áƒ‘áƒ˜áƒĄ მიერ დაწესებული საჹუალო საკომისიოს განაკვეთი, საკომისიოს განაკვეთი რომელიáƒȘ > 0.5% ან 5000ppm -ზე არ ითვალისწინებს src/app/lightning/channels-statistics/channels-statistics.component.html 28,30 @@ -5643,6 +5920,7 @@ Avg Base Fee + საჹუალო საბაზისო საკომისიო src/app/lightning/channels-statistics/channels-statistics.component.html 41,43 @@ -5655,6 +5933,7 @@ The average base fee charged by routing nodes, ignoring base fees > 5000ppm + საჹუალო საბაზისო საკომისიო დაწესებული როუჱინგის კვაჹირების მიერ, საბაზისო გადასაჼადების არ ითვალისწინებს > 5000ppm ზე მეჱია. src/app/lightning/channels-statistics/channels-statistics.component.html 43,45 @@ -5663,6 +5942,7 @@ Med Capacity + მედ. áƒĄáƒ˜áƒ›áƒ«áƒšáƒáƒ•áƒ áƒ” src/app/lightning/channels-statistics/channels-statistics.component.html 59,61 @@ -5671,6 +5951,7 @@ Med Fee Rate + მედ. საკომისიო src/app/lightning/channels-statistics/channels-statistics.component.html 72,74 @@ -5679,6 +5960,7 @@ The median fee rate charged by routing nodes, ignoring fee rates > 0.5% or 5000ppm + მედ. საკომისიო როუჱინგის კავჹირის გამოყენებით, არ ითვალისწინებს > 0.5% ან 5000ppm -ქ src/app/lightning/channels-statistics/channels-statistics.component.html 74,76 @@ -5687,6 +5969,7 @@ Med Base Fee + მედ. საბაზისო საკომისიო src/app/lightning/channels-statistics/channels-statistics.component.html 87,89 @@ -5695,6 +5978,7 @@ The median base fee charged by routing nodes, ignoring base fees > 5000ppm + მედ. საბაზისო საკომისიო როუჱინგის კავჹირის მიჼედვით, არ ითვალისწინებს საბაზისო საკომისიოს > 5000ppm src/app/lightning/channels-statistics/channels-statistics.component.html 89,91 @@ -5703,6 +5987,7 @@ Lightning node group + Lightning ნოდ áƒŻáƒ’áƒŁáƒ€áƒ˜ src/app/lightning/group/group-preview.component.html 3,5 @@ -5715,6 +6000,7 @@ Nodes + ნოდა src/app/lightning/group/group-preview.component.html 25,29 @@ -5725,11 +6011,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 17,18 + 16,17 src/app/lightning/node-statistics/node-statistics.component.html - 54,57 + 53,56 src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html @@ -5751,6 +6037,7 @@ Liquidity + ლიკვიდურობა src/app/lightning/group/group-preview.component.html 29,31 @@ -5777,16 +6064,13 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 11,12 - - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html 12,13 lightning.liquidity Channels + ჩანელი src/app/lightning/group/group-preview.component.html 40,43 @@ -5797,11 +6081,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 29,30 + 28,29 src/app/lightning/node-statistics/node-statistics.component.html - 61,64 + 60,63 src/app/lightning/nodes-list/nodes-list.component.html @@ -5833,11 +6117,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 12,13 + 14,15 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 11,12 + 12,13 src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts @@ -5847,6 +6131,7 @@ Average size + საჹუალო ზომა src/app/lightning/group/group-preview.component.html 44,46 @@ -5859,6 +6144,7 @@ Location + ლოკაáƒȘია src/app/lightning/group/group.component.html 74,77 @@ -5873,7 +6159,7 @@ src/app/lightning/node/node.component.html - 47,49 + 50,52 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -5889,16 +6175,17 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 15,17 + 17,20 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 15,17 + 17,20 lightning.location Network Statistics + áƒ„áƒĄáƒ”áƒšáƒ˜áƒĄ სჱაჱისჱიკა src/app/lightning/lightning-dashboard/lightning-dashboard.component.html 10 @@ -5907,6 +6194,7 @@ Channels Statistics + áƒ©áƒáƒœáƒ”áƒšáƒ˜áƒĄ სჱაჱისჱიკა src/app/lightning/lightning-dashboard/lightning-dashboard.component.html 24 @@ -5915,6 +6203,7 @@ Lightning Network History + Lightning áƒ„áƒĄáƒ”áƒšáƒ˜áƒĄ ისჱორია src/app/lightning/lightning-dashboard/lightning-dashboard.component.html 49 @@ -5923,13 +6212,22 @@ Liquidity Ranking + ლიკვიდურობის რეიჱინგი src/app/lightning/lightning-dashboard/lightning-dashboard.component.html 62 + + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html + 4,9 + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts - 29 + 33 + + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 4,9 src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.html @@ -5939,6 +6237,7 @@ Connectivity Ranking + კავჹირის რეიჱინგი src/app/lightning/lightning-dashboard/lightning-dashboard.component.html 76 @@ -5951,113 +6250,139 @@ Fee distribution + საკომისიოს განაწილება src/app/lightning/node-fee-chart/node-fee-chart.component.html 2 lightning.node-fee-distribution + + Outgoing Fees + გამავალი საკომისიო + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 170 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 208 + + + + Incoming Fees + ჹემომავალი საკომისიოები + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 178 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 222 + + Percentage change past week + პროáƒȘენჱული áƒȘვლილება გასულ კვირას src/app/lightning/node-statistics/node-statistics.component.html 5,7 src/app/lightning/node-statistics/node-statistics.component.html - 18,20 + 17,19 src/app/lightning/node-statistics/node-statistics.component.html - 30,32 + 29,31 mining.percentage-change-last-week Lightning node + Lightning ნოდა src/app/lightning/node/node-preview.component.html 3,5 src/app/lightning/node/node.component.html - 2,4 + 4,6 src/app/lightning/node/node.component.html - 260,262 + 263,265 lightning.node Active capacity + საჹუალო áƒĄáƒ˜áƒ›áƒ«áƒšáƒáƒ•áƒ áƒ” src/app/lightning/node/node-preview.component.html 20,22 src/app/lightning/node/node.component.html - 27,30 + 30,33 lightning.active-capacity Active channels + აჄჹიური ჩანელი src/app/lightning/node/node-preview.component.html 26,30 src/app/lightning/node/node.component.html - 34,38 + 37,41 lightning.active-channels Country + Ⴤვეყანა src/app/lightning/node/node-preview.component.html 44,47 country - - No node found for public key "" - - src/app/lightning/node/node.component.html - 17,19 - - lightning.node-not-found - Average channel size + არჟიქ საჹუალო ზომა src/app/lightning/node/node.component.html - 40,43 + 43,46 lightning.active-channels-avg Avg channel distance + არჟიქ საჹუალო მანძილი src/app/lightning/node/node.component.html - 56,57 + 59,60 lightning.avg-distance Color + Ⴠერი src/app/lightning/node/node.component.html - 79,81 + 82,84 lightning.color ISP + ISP src/app/lightning/node/node.component.html - 86,87 + 89,90 src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html @@ -6067,96 +6392,108 @@ Exclusively on Tor + áƒ”áƒ„áƒĄáƒ™áƒšáƒŁáƒ–áƒ˜áƒŁáƒ áƒáƒ“ Tor-ზე src/app/lightning/node/node.component.html - 93,95 + 96,98 tor Liquidity ad + Liquidity ad src/app/lightning/node/node.component.html - 138,141 + 141,144 node.liquidity-ad Lease fee rate + იჯარიქ საკომისიო src/app/lightning/node/node.component.html - 144,147 + 147,150 Liquidity ad lease fee rate liquidity-ad.lease-fee-rate Lease base fee + იჯარიქ საბაზისო საკომისიო src/app/lightning/node/node.component.html - 152,154 + 155,157 liquidity-ad.lease-base-fee Funding weight + áƒ“áƒáƒ€áƒ˜áƒœáƒáƒœáƒĄáƒ”áƒ‘áƒ˜áƒĄ განაკვეთი src/app/lightning/node/node.component.html - 158,159 + 161,162 liquidity-ad.funding-weight Channel fee rate + áƒ©áƒáƒœáƒ”áƒšáƒ˜áƒĄ საკომისიო src/app/lightning/node/node.component.html - 168,171 + 171,174 Liquidity ad channel fee rate liquidity-ad.channel-fee-rate Channel base fee + áƒ©áƒáƒœáƒ”áƒšáƒ˜áƒĄ საბაზისო საკომისიო src/app/lightning/node/node.component.html - 176,178 + 179,181 liquidity-ad.channel-base-fee Compact lease + áƒ™áƒáƒ›áƒžáƒáƒ„áƒąáƒŁáƒ áƒ˜ იჯარა src/app/lightning/node/node.component.html - 188,190 + 191,193 liquidity-ad.compact-lease TLV extension records + TLV áƒ©áƒáƒœáƒáƒŹáƒ”áƒ áƒ”áƒ‘áƒ˜ src/app/lightning/node/node.component.html - 199,202 + 202,205 node.tlv.records Open channels + áƒ©áƒáƒœáƒ”áƒšáƒ˜áƒĄ გაჼსნა src/app/lightning/node/node.component.html - 240,243 + 243,246 lightning.open-channels Closed channels + áƒ©áƒáƒœáƒ”áƒšáƒ˜áƒĄ დაჼურვა src/app/lightning/node/node.component.html - 244,247 + 247,250 lightning.open-channels Node: + ნოდა: src/app/lightning/node/node.component.ts 60 @@ -6164,6 +6501,7 @@ (Tor nodes excluded) + (Tor nodes excluded) src/app/lightning/nodes-channels-map/nodes-channels-map.component.html 8,11 @@ -6184,6 +6522,7 @@ Lightning Nodes Channels World Map + Lightning ნოდების ჩანელები áƒ›áƒĄáƒáƒ€áƒšáƒ˜áƒ áƒ áƒŁáƒ„áƒáƒ–áƒ” src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts 69 @@ -6191,13 +6530,15 @@ No geolocation data available + გეოლოკაáƒȘიიქ მონაáƒȘემები მიუწვდომელია src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts - 218,213 + 219,214 Active channels map + აჄჹირუი ჩანელები áƒ áƒŁáƒ„áƒáƒ–áƒ” src/app/lightning/nodes-channels/node-channels.component.html 2,3 @@ -6206,6 +6547,7 @@ Indexing in progress + áƒ˜áƒœáƒ“áƒ”áƒ„áƒĄáƒ˜áƒ áƒ”áƒ‘áƒ მუჹავდება src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 121,116 @@ -6215,8 +6557,9 @@ 112,107 - - Reachable on Clearnet Only + + Clearnet and Darknet + Clearnet ი და Darknet ი src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 164,161 @@ -6226,8 +6569,9 @@ 303,302 - - Reachable on Clearnet and Darknet + + Clearnet Only (IPv4, IPv6) + Clearnet Only (IPv4, IPv6) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 185,182 @@ -6237,8 +6581,9 @@ 295,294 - - Reachable on Darknet Only + + Darknet Only (Tor, I2P, cjdns) + Darknet Only (Tor, I2P, cjdns) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 206,203 @@ -6250,6 +6595,7 @@ Share + გაზიარება src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html 29,31 @@ -6262,6 +6608,7 @@ nodes + ნოდა src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.ts 103,102 @@ -6277,6 +6624,7 @@ BTC capacity + BTC áƒĄáƒ˜áƒ›áƒ«áƒšáƒáƒ•áƒ áƒ” src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.ts 104,102 @@ -6284,6 +6632,7 @@ Lightning nodes in + Lightning ნოდა ლი src/app/lightning/nodes-per-country/nodes-per-country.component.html 3,4 @@ -6292,6 +6641,7 @@ ISP Count + ISP Count src/app/lightning/nodes-per-country/nodes-per-country.component.html 34,38 @@ -6300,6 +6650,7 @@ Top ISP + Top ISP src/app/lightning/nodes-per-country/nodes-per-country.component.html 38,40 @@ -6308,6 +6659,7 @@ Lightning nodes in + Lightning ნოდები ლი src/app/lightning/nodes-per-country/nodes-per-country.component.ts 35 @@ -6315,6 +6667,7 @@ Clearnet Capacity + Clearnet áƒĄáƒ˜áƒ›áƒ«áƒšáƒáƒ•áƒ áƒ” src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html 6,8 @@ -6327,6 +6680,7 @@ How much liquidity is running on nodes advertising at least one clearnet IP address + რამდენი ლიკვიდურობა არიქ კვაჹირზე, რომლებიáƒȘ იყენებენ მინიმუმ ერთი წმინდა IP მისამართს src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html 8,9 @@ -6335,6 +6689,7 @@ Unknown Capacity + უáƒȘნობი áƒĄáƒ˜áƒ›áƒ«áƒšáƒáƒ•áƒ áƒ” src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html 13,15 @@ -6347,6 +6702,7 @@ How much liquidity is running on nodes which ISP was not identifiable + რამდენად ლიკვიდურია კავჹირი, რომელთა áƒ˜áƒ“áƒ”áƒœáƒąáƒ˜áƒ€áƒ˜áƒȘირებაáƒȘ ISP არ იყო src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html 15,16 @@ -6355,6 +6711,7 @@ Tor Capacity + Tor áƒĄáƒ˜áƒ›áƒ«áƒšáƒáƒ•áƒ áƒ” src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html 20,22 @@ -6367,6 +6724,7 @@ How much liquidity is running on nodes advertising only Tor addresses + რამდენად ლიკვიდურია მჼოლოდ Tor-იქ მისამართებზე ნოდები src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html 22,23 @@ -6375,6 +6733,7 @@ Top 100 ISPs hosting LN nodes + Top 100 ISPs hosting LN nodes src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html 31,33 @@ -6383,6 +6742,7 @@ BTC + BTC src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.ts 158,156 @@ -6394,6 +6754,7 @@ Lightning ISP + Lightning ISP src/app/lightning/nodes-per-isp/nodes-per-isp-preview.component.html 3,5 @@ -6402,6 +6763,7 @@ Top country + ჱოპ Ⴤვეყანა src/app/lightning/nodes-per-isp/nodes-per-isp-preview.component.html 39,41 @@ -6414,6 +6776,7 @@ Top node + ჱოპ ნოდა src/app/lightning/nodes-per-isp/nodes-per-isp-preview.component.html 45,48 @@ -6422,6 +6785,7 @@ Lightning nodes on ISP: [AS] + Lightning nodes on ISP: [AS] src/app/lightning/nodes-per-isp/nodes-per-isp-preview.component.ts 44 @@ -6433,6 +6797,7 @@ Lightning nodes on ISP: + Lightning nodes on ISP: src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 2,4 @@ -6441,6 +6806,7 @@ ASN + ASN src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 11,14 @@ -6449,6 +6815,7 @@ Active nodes + აჄჹიური ნოდა src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 14,18 @@ -6457,6 +6824,7 @@ Top 100 oldest lightning nodes + ჱოპ 100 ყველაზე ძველი ნოდა src/app/lightning/nodes-ranking/oldest-nodes/oldest-nodes.component.html 3,7 @@ -6465,29 +6833,15 @@ Oldest lightning nodes + ყველაზე ძველი lightning ნოდები src/app/lightning/nodes-ranking/oldest-nodes/oldest-nodes.component.ts 27 - - Top 100 nodes liquidity ranking - - src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 3,7 - - lightning.top-100-liquidity - - - Top 100 nodes connectivity ranking - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 3,7 - - lightning.top-100-connectivity - Oldest nodes + ყველაზე ძველი ნოდები src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.html 36 @@ -6496,6 +6850,7 @@ Top lightning nodes + ჱოპ lightning ნოდები src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.ts 22 @@ -6503,6 +6858,7 @@ Indexing in progress + áƒ˜áƒœáƒ“áƒ”áƒ„áƒĄáƒáƒȘია მიმდინარეობს src/app/lightning/statistics-chart/lightning-statistics-chart.component.html 52,55 diff --git a/frontend/src/locale/messages.ko.xlf b/frontend/src/locale/messages.ko.xlf index 2930ca097..1d2be3910 100644 --- a/frontend/src/locale/messages.ko.xlf +++ b/frontend/src/locale/messages.ko.xlf @@ -11,6 +11,7 @@ Slide of + ìŠŹëŒìŽë“œ / node_modules/src/carousel/carousel.ts 175,181 @@ -147,6 +148,7 @@ + node_modules/src/progressbar/progressbar.ts 30,33 @@ -357,11 +359,11 @@ src/app/components/block/block.component.html - 290,291 + 310,311 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 26,27 + 46,47 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -382,11 +384,11 @@ src/app/components/block/block.component.html - 291,292 + 311,312 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 27,28 + 47,48 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -424,7 +426,7 @@ src/app/components/block/block.component.html - 40,41 + 38,39 block.hash @@ -449,7 +451,7 @@ src/app/components/block/block.component.html - 44,46 + 42,44 src/app/components/blocks-list/blocks-list.component.html @@ -592,11 +594,11 @@ src/app/components/master-page/master-page.component.html - 49,51 + 48,50 src/app/components/pool-ranking/pool-ranking.component.html - 94,96 + 94,95 @@ -773,16 +775,24 @@ src/app/components/about/about.component.html - 385,389 + 375,378 + + + src/app/components/mining-dashboard/mining-dashboard.component.html + 88 src/app/dashboard/dashboard.component.html - 150,152 + 157,159 src/app/docs/docs/docs.component.html 51 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 97 + Terms of Service shared.terms-of-service @@ -793,14 +803,22 @@ src/app/bisq/bisq-main-dashboard/bisq-main-dashboard.component.html 113,120 + + src/app/components/mining-dashboard/mining-dashboard.component.html + 90 + src/app/dashboard/dashboard.component.html - 152,154 + 159,161 src/app/docs/docs/docs.component.html 53 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 99 + Privacy Policy shared.privacy-policy @@ -988,7 +1006,7 @@ src/app/dashboard/dashboard.component.html - 124,125 + 124,126 @@ -1036,7 +1054,7 @@ src/app/components/transaction/transaction.component.html - 158,160 + 152,154 src/app/components/transactions-list/transactions-list.component.html @@ -1052,11 +1070,11 @@ src/app/components/block/block.component.html - 246,247 + 252,253 src/app/components/transaction/transaction.component.html - 288,290 + 282,284 transaction.version @@ -1106,7 +1124,7 @@ src/app/components/transactions-list/transactions-list.component.html - 294,295 + 296,297 Transaction singular confirmation count shared.confirmation-count.singular @@ -1128,7 +1146,7 @@ src/app/components/transactions-list/transactions-list.component.html - 295,296 + 297,298 Transaction plural confirmation count shared.confirmation-count.plural @@ -1140,10 +1158,6 @@ src/app/bisq/bisq-transaction/bisq-transaction.component.html 43,45 - - src/app/components/transaction/transaction.component.html - 65,67 - Transaction included in block transaction.included-in-block @@ -1156,11 +1170,11 @@ src/app/components/transaction/transaction.component.html - 77,80 + 71,74 src/app/components/transaction/transaction.component.html - 135,138 + 129,132 Transaction features transaction.features @@ -1188,11 +1202,11 @@ src/app/components/transaction/transaction.component.html - 262,267 + 256,261 src/app/components/transaction/transaction.component.html - 406,412 + 400,406 transaction.details @@ -1209,11 +1223,11 @@ src/app/components/transaction/transaction.component.html - 249,253 + 243,247 src/app/components/transaction/transaction.component.html - 377,383 + 371,377 Transaction inputs and outputs transaction.inputs-and-outputs @@ -1231,7 +1245,7 @@ src/app/components/transaction/transaction.component.ts - 241,240 + 244,243 @@ -1251,7 +1265,7 @@ src/app/components/transaction/transaction.component.html - 159,160 + 153,154 src/app/dashboard/dashboard.component.html @@ -1267,7 +1281,7 @@ src/app/components/transaction/transaction.component.html - 72,73 + 66,67 Transaction Confirmed state transaction.confirmed @@ -1438,7 +1452,7 @@ ëč„튞윔읞 ì»€ëź€ë‹ˆí‹°ë„Œ 위한 멀풀 및 뾔록ìČŽìž 탐색Ʞ는 튞랜잭션 ìˆ˜ìˆ˜ëŁŒ ì‹œìž„êłŒ ë‹€êł„ìž” ìƒíƒœêł„ì— 쀑점을 ë‘êł  있윌며 제3자 없읎 자ìČŽ í˜žìŠ€íŒ…í•˜êł  있슔니닀. src/app/components/about/about.component.html - 13,17 + 13,16 @@ -1446,7 +1460,7 @@ êž°ì—… ìŠ€í°ì„œđŸš€ src/app/components/about/about.component.html - 29,32 + 19,22 about.sponsors.enterprise.withRocket @@ -1455,7 +1469,7 @@ ì»€ëź€ë‹ˆí‹° 슀폰서❀ src/app/components/about/about.component.html - 177,180 + 167,170 about.sponsors.withHeart @@ -1463,7 +1477,7 @@ Community Integrations src/app/components/about/about.component.html - 191,193 + 181,183 about.community-integrations @@ -1472,7 +1486,7 @@ ì»€ëź€ë‹ˆí‹° 연합 src/app/components/about/about.component.html - 285,287 + 275,277 about.alliances @@ -1481,7 +1495,7 @@ í”„ëĄœì íŠž ëČˆì—­ìž src/app/components/about/about.component.html - 301,303 + 291,293 about.translators @@ -1490,7 +1504,7 @@ í”„ëĄœì íŠž ì°žì—Źìž ëȘ©ëĄ src/app/components/about/about.component.html - 315,317 + 305,307 about.contributors @@ -1499,7 +1513,7 @@ í”„ëĄœì íŠž ë©€ëȄ듀 src/app/components/about/about.component.html - 327,329 + 317,319 about.project_members @@ -1508,7 +1522,7 @@ í”„ëĄœì íŠž êŽ€ëŠŹìž ëȘ©ëĄ src/app/components/about/about.component.html - 340,342 + 330,332 about.maintainers @@ -1517,7 +1531,7 @@ ëŒ€í•˜ì—Ź src/app/components/about/about.component.ts - 39 + 42 src/app/components/bisq-master-page/bisq-master-page.component.html @@ -1529,11 +1543,12 @@ src/app/components/master-page/master-page.component.html - 58,61 + 57,60 Multisig of + 닀쀑서ëȘ… / src/app/components/address-labels/address-labels.component.ts 107 @@ -1565,7 +1580,7 @@ src/app/components/amount/amount.component.html - 6,9 + 20,23 src/app/components/asset-circulation/asset-circulation.component.html @@ -1581,7 +1596,7 @@ src/app/components/transactions-list/transactions-list.component.html - 302,304 + 304,306 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -1664,7 +1679,7 @@ src/app/components/assets/assets.component.html - 29,31 + 31,33 src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html @@ -1886,7 +1901,7 @@ src/app/components/assets/assets.component.html - 30,31 + 32,33 Asset ticker header @@ -1899,7 +1914,7 @@ src/app/components/assets/assets.component.html - 31,34 + 33,36 Asset Issuer Domain header @@ -1912,7 +1927,7 @@ src/app/components/assets/assets.component.html - 32,36 + 34,38 Asset ID header @@ -1921,7 +1936,7 @@ 자산 데읎터 ëĄœë”© 싀팚 src/app/components/assets/assets.component.html - 48,53 + 50,55 Asset data load error @@ -2034,6 +2049,7 @@ At block: + 뾔록: src/app/components/block-fee-rates-graph/block-fee-rates-graph.component.ts 188 @@ -2044,11 +2060,12 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 161 + 165 Around block: + 대랔 뾔록: src/app/components/block-fee-rates-graph/block-fee-rates-graph.component.ts 190 @@ -2059,7 +2076,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 163 + 167 @@ -2071,7 +2088,7 @@ src/app/components/block-fees-graph/block-fees-graph.component.ts - 62 + 67 src/app/components/graphs/graphs.component.html @@ -2084,15 +2101,15 @@ 뾔록 읞덱싱 쀑 src/app/components/block-fees-graph/block-fees-graph.component.ts - 110,105 + 116,111 src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 108,103 + 113,108 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 115,110 + 116,111 src/app/components/hashrate-chart/hashrate-chart.component.ts @@ -2136,7 +2153,7 @@ src/app/components/transaction/transaction.component.html - 476 + 472 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -2162,11 +2179,11 @@ src/app/components/transaction/transaction.component.html - 476,477 + 472 src/app/components/transactions-list/transactions-list.component.html - 286,287 + 288 sat shared.sat @@ -2180,11 +2197,11 @@ src/app/components/transaction/transaction.component.html - 161,165 + 155,159 src/app/components/transaction/transaction.component.html - 479,481 + 475,477 src/app/lightning/channel/channel-box/channel-box.component.html @@ -2196,7 +2213,7 @@ src/app/lightning/channels-list/channels-list.component.html - 38,39 + 41,42 Transaction fee rate transaction.fee-rate @@ -2214,19 +2231,19 @@ src/app/components/block/block.component.html - 125,128 + 124,127 src/app/components/block/block.component.html - 129 + 128,130 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 12,14 + 19,22 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 15,17 + 30,33 src/app/components/fees-box/fees-box.component.html @@ -2266,27 +2283,27 @@ src/app/components/transaction/transaction.component.html - 173,174 + 167,168 src/app/components/transaction/transaction.component.html - 184,185 + 178,179 src/app/components/transaction/transaction.component.html - 195,196 + 189,190 src/app/components/transaction/transaction.component.html - 481,484 + 477,480 src/app/components/transaction/transaction.component.html - 492,494 + 488,490 src/app/components/transactions-list/transactions-list.component.html - 286 + 286,287 src/app/dashboard/dashboard.component.html @@ -2294,7 +2311,7 @@ src/app/dashboard/dashboard.component.html - 204,208 + 213,217 sat/vB shared.sat-vbyte @@ -2308,11 +2325,11 @@ src/app/components/transaction/transaction.component.html - 160,162 + 154,156 src/app/components/transaction/transaction.component.html - 274,277 + 268,271 Transaction Virtual Size transaction.vsize @@ -2416,7 +2433,7 @@ src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 60 + 65 src/app/components/graphs/graphs.component.html @@ -2446,15 +2463,15 @@ ì‚ŹìŽìŠˆ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 180,179 + 184,183 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 226,224 + 239,237 src/app/components/block/block.component.html - 50,52 + 48,50 src/app/components/blocks-list/blocks-list.component.html @@ -2478,7 +2495,7 @@ src/app/components/transaction/transaction.component.html - 270,272 + 264,266 src/app/dashboard/dashboard.component.html @@ -2490,11 +2507,11 @@ 돎êȌ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 188,187 + 192,191 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 257,254 + 270,267 src/app/components/block/block-preview.component.html @@ -2502,15 +2519,27 @@ src/app/components/block/block.component.html - 54,56 + 52,54 src/app/components/transaction/transaction.component.html - 278,280 + 272,274 + + + + Size per weight + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 200,199 + + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 282,279 Block + 뾔록 src/app/components/block/block-preview.component.html 3,7 @@ -2521,14 +2550,6 @@ shared.block-title - - - - src/app/components/block/block-preview.component.html - 11,12 - - shared.block-title - Median fee 평균 ìˆ˜ìˆ˜ëŁŒ @@ -2538,7 +2559,7 @@ src/app/components/block/block.component.html - 128,129 + 127,128 src/app/components/mempool-block/mempool-block.component.html @@ -2555,11 +2576,11 @@ src/app/components/block/block.component.html - 133,135 + 138,140 src/app/components/block/block.component.html - 159,162 + 164,167 src/app/components/mempool-block/mempool-block.component.html @@ -2577,7 +2598,7 @@ src/app/components/block/block.component.html - 168,170 + 173,175 block.miner @@ -2590,7 +2611,7 @@ src/app/components/block/block.component.ts - 227 + 242 @@ -2615,31 +2636,47 @@ Previous Block - - Block health + + Health src/app/components/block/block.component.html - 58,61 + 56 - block.health + + src/app/components/blocks-list/blocks-list.component.html + 18,19 + + + src/app/components/blocks-list/blocks-list.component.html + 18,19 + + latest-blocks.health Unknown src/app/components/block/block.component.html - 69,72 + 67,70 src/app/components/blocks-list/blocks-list.component.html 60,63 - src/app/lightning/node/node.component.html - 52,55 + src/app/components/pool-ranking/pool-ranking.component.html + 121,124 + + + src/app/lightning/channel/closing-type/closing-type.component.ts + 32 src/app/lightning/node/node.component.html - 96,100 + 55,58 + + + src/app/lightning/node/node.component.html + 99,103 src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts @@ -2656,7 +2693,7 @@ ìˆ˜ìˆ˜ëŁŒ ëČ”ìœ„ src/app/components/block/block.component.html - 124,125 + 123,124 src/app/components/mempool-block/mempool-block.component.html @@ -2669,7 +2706,7 @@ 평균 native segwit 튞랜잭션의 140 vBytes Ʞ쀀 src/app/components/block/block.component.html - 129,131 + 131,136 src/app/components/fees-box/fees-box.component.html @@ -2693,49 +2730,62 @@ Transaction fee tooltip - - Subsidy + fees: - 채ꔎ된 양 + ìˆ˜ìˆ˜ëŁŒ: + + Subsidy + fees src/app/components/block/block.component.html - 148,151 + 153,156 src/app/components/block/block.component.html - 163,167 + 168,172 Total subsidy and fees in a block block.subsidy-and-fees - - Projected + + Expected src/app/components/block/block.component.html - 210,212 + 216 - block.projected + block.expected + + + beta + + src/app/components/block/block.component.html + 216,217 + + + src/app/components/block/block.component.html + 222,224 + + beta Actual src/app/components/block/block.component.html - 212,216 + 218,222 block.actual - - Projected Block + + Expected Block + 예상된 뾔록 src/app/components/block/block.component.html - 216,218 + 222 - block.projected-block + block.expected-block Actual Block + 싀제 뾔록 src/app/components/block/block.component.html - 225,227 + 231 block.actual-block @@ -2744,7 +2794,7 @@ ëč„튞 src/app/components/block/block.component.html - 250,252 + 256,258 block.bits @@ -2753,7 +2803,7 @@ 뚞큎 룹튾 src/app/components/block/block.component.html - 254,256 + 260,262 block.merkle-root @@ -2762,7 +2812,7 @@ 난읎도 src/app/components/block/block.component.html - 265,268 + 271,274 src/app/components/difficulty-adjustments-table/difficulty-adjustments-table.component.html @@ -2791,7 +2841,7 @@ 임시값 src/app/components/block/block.component.html - 269,271 + 275,277 block.nonce @@ -2800,32 +2850,41 @@ ëž”ëĄí—€ë” 16진수 src/app/components/block/block.component.html - 273,274 + 279,280 block.header + + Audit + + src/app/components/block/block.component.html + 297,301 + + Toggle Audit + block.toggle-audit + Details 자섞히 src/app/components/block/block.component.html - 284,288 + 304,308 src/app/components/transaction/transaction.component.html - 254,259 + 248,253 src/app/lightning/channel/channel.component.html - 86,88 + 93,95 src/app/lightning/channel/channel.component.html - 96,98 + 103,105 src/app/lightning/node/node.component.html - 218,222 + 221,225 Transaction Details transaction.details @@ -2835,20 +2894,16 @@ 데읎터 ë¶ˆëŸŹì˜€êž° 싀팚. src/app/components/block/block.component.html - 303,305 + 323,325 src/app/components/block/block.component.html - 339,343 + 362,366 src/app/lightning/channel/channel-preview.component.html 70,75 - - src/app/lightning/channel/channel.component.html - 109,115 - src/app/lightning/node/node-preview.component.html 66,69 @@ -2861,9 +2916,10 @@ Why is this block empty? + 읎 ëž”ëĄì€ 왜 튞랜잭션읎 없나요? src/app/components/block/block.component.html - 361,367 + 384,390 block.empty-block-explanation @@ -2909,18 +2965,6 @@ latest-blocks.mined - - Health - - src/app/components/blocks-list/blocks-list.component.html - 18,19 - - - src/app/components/blocks-list/blocks-list.component.html - 18,19 - - latest-blocks.health - Reward ëłŽìƒ @@ -2984,7 +3028,7 @@ src/app/dashboard/dashboard.component.html - 210,214 + 219,223 dashboard.txs @@ -3221,7 +3265,7 @@ src/app/dashboard/dashboard.component.html - 237,238 + 246,247 dashboard.incoming-transactions @@ -3234,7 +3278,7 @@ src/app/dashboard/dashboard.component.html - 240,243 + 249,252 dashboard.backend-is-synchronizing @@ -3247,7 +3291,7 @@ src/app/dashboard/dashboard.component.html - 245,250 + 254,259 vB/s shared.vbytes-per-second @@ -3261,7 +3305,7 @@ src/app/dashboard/dashboard.component.html - 208,209 + 217,218 Unconfirmed count dashboard.unconfirmed @@ -3321,6 +3365,7 @@ Lightning + 띌읎튞닝 src/app/components/graphs/graphs.component.html 31 @@ -3329,6 +3374,7 @@ Lightning Nodes Per Network + ë„€íŠžì›ŒíŹë‹č 띌읎튞닝 녾드 src/app/components/graphs/graphs.component.html 34 @@ -3509,7 +3555,7 @@ src/app/components/master-page/master-page.component.html - 52,54 + 51,53 src/app/components/statistics/statistics.component.ts @@ -3534,7 +3580,7 @@ Lightning Explorer src/app/components/master-page/master-page.component.html - 44,45 + 44,47 src/app/lightning/lightning-dashboard/lightning-dashboard.component.ts @@ -3542,20 +3588,12 @@ master-page.lightning - - beta - - src/app/components/master-page/master-page.component.html - 45,48 - - beta - Documentation ëŹžì„œ src/app/components/master-page/master-page.component.html - 55,57 + 54,56 src/app/docs/docs/docs.component.html @@ -3635,6 +3673,32 @@ dashboard.adjustments + + Broadcast Transaction + 튞랜잭션을 ëč„튞윔읞 ë„€íŠžì›ŒíŹì— ì „ì†Ąí•˜êž° + + src/app/components/mining-dashboard/mining-dashboard.component.html + 92 + + + src/app/components/push-transaction/push-transaction.component.html + 2 + + + src/app/components/push-transaction/push-transaction.component.html + 8 + + + src/app/dashboard/dashboard.component.html + 161,169 + + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 102 + + Broadcast Transaction + shared.broadcast-transaction + Pools luck (1 week) @@ -3696,7 +3760,7 @@ src/app/components/pool-ranking/pool-ranking.component.html - 136,138 + 152,154 master-page.blocks @@ -3725,12 +3789,24 @@ mining.rank + + Avg Health + + src/app/components/pool-ranking/pool-ranking.component.html + 96,97 + + + src/app/components/pool-ranking/pool-ranking.component.html + 96,98 + + latest-blocks.avg_health + Empty blocks ëčˆ ëž”ëĄ src/app/components/pool-ranking/pool-ranking.component.html - 95,98 + 97,100 mining.empty-blocks @@ -3739,7 +3815,7 @@ ëȘšë“  채ꔎ자 src/app/components/pool-ranking/pool-ranking.component.html - 113,114 + 129,130 mining.all-miners @@ -3748,7 +3824,7 @@ 채ꔎ 풀듀의 욎 (1ìŁŒ) src/app/components/pool-ranking/pool-ranking.component.html - 130,132 + 146,148 mining.miners-luck @@ -3757,7 +3833,7 @@ 채ꔎ 풀 개수 src/app/components/pool-ranking/pool-ranking.component.html - 142,144 + 158,160 mining.miners-count @@ -3766,7 +3842,7 @@ 채ꔎ 풀 src/app/components/pool-ranking/pool-ranking.component.ts - 57 + 58 @@ -3992,24 +4068,6 @@ latest-blocks.coinbasetag - - Broadcast Transaction - 튞랜잭션을 ëč„튞윔읞 ë„€íŠžì›ŒíŹì— ì „ì†Ąí•˜êž° - - src/app/components/push-transaction/push-transaction.component.html - 2 - - - src/app/components/push-transaction/push-transaction.component.html - 8 - - - src/app/dashboard/dashboard.component.html - 154,161 - - Broadcast Transaction - shared.broadcast-transaction - Transaction hex 튞랜잭션 16진수 @@ -4019,7 +4077,7 @@ src/app/components/transaction/transaction.component.html - 296,297 + 290,291 transaction.hex @@ -4139,6 +4197,77 @@ search-form.search-title + + Bitcoin Block Height + ëč„튞윔읞 뾔록 높읎 + + src/app/components/search-form/search-results/search-results.component.html + 3 + + search.bitcoin-block-height + + + Bitcoin Transaction + ëč„튞윔읞 튞랜잭션 + + src/app/components/search-form/search-results/search-results.component.html + 9 + + search.bitcoin-transaction + + + Bitcoin Address + ëč„튞윔읞 ìŁŒì†Œ + + src/app/components/search-form/search-results/search-results.component.html + 15 + + search.bitcoin-address + + + Bitcoin Block + ëč„튞윔읞 뾔록 + + src/app/components/search-form/search-results/search-results.component.html + 21 + + search.bitcoin-block + + + Bitcoin Addresses + ëč„튞윔읞 ìŁŒì†Œë“€ + + src/app/components/search-form/search-results/search-results.component.html + 27 + + search.bitcoin-addresses + + + Lightning Nodes + 띌읎튞닝 녞드듀 + + src/app/components/search-form/search-results/search-results.component.html + 35 + + search.lightning-nodes + + + Lightning Channels + 띌읎튞닝 채널듀 + + src/app/components/search-form/search-results/search-results.component.html + 43 + + search.lightning-channels + + + Go to "" + + src/app/components/search-form/search-results/search-results.component.html + 52 + + search.go-to + Mempool by vBytes (sat/vByte) Mempool by vBytes (sat.vByte) @@ -4421,7 +4550,7 @@ src/app/components/transactions-list/transactions-list.component.html - 298,301 + 300,303 Transaction unconfirmed state transaction.unconfirmed @@ -4431,11 +4560,11 @@ ìČ˜ìŒìœŒëĄœ 감지됚 src/app/components/transaction/transaction.component.html - 108,109 + 102,103 src/app/lightning/node/node.component.html - 67,70 + 70,73 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -4451,11 +4580,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 13,15 + 15,16 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 13,15 + 15,16 Transaction first seen transaction.first-seen @@ -4465,7 +4594,7 @@ 컚펌êčŒì§€ 낚은 예상시간 src/app/components/transaction/transaction.component.html - 115,116 + 109,110 Transaction ETA transaction.eta @@ -4475,7 +4604,7 @@ ëȘ‡ 시간 후 (또는 ê·ž 읎상) src/app/components/transaction/transaction.component.html - 121,124 + 115,118 Transaction ETA in several hours or more transaction.eta.in-several-hours @@ -4485,11 +4614,11 @@ 자손 src/app/components/transaction/transaction.component.html - 168,170 + 162,164 src/app/components/transaction/transaction.component.html - 179,181 + 173,175 Descendant transaction.descendant @@ -4499,7 +4628,7 @@ ìĄ°ìƒ src/app/components/transaction/transaction.component.html - 190,192 + 184,186 Transaction Ancestor transaction.ancestor @@ -4508,11 +4637,11 @@ Flow src/app/components/transaction/transaction.component.html - 208,211 + 202,205 src/app/components/transaction/transaction.component.html - 346,350 + 340,344 Transaction flow transaction.flow @@ -4521,15 +4650,16 @@ Hide diagram src/app/components/transaction/transaction.component.html - 211,216 + 205,210 hide-diagram Show more + 더 ëłŽêž° src/app/components/transaction/transaction.component.html - 231,233 + 225,227 src/app/components/transactions-list/transactions-list.component.html @@ -4543,9 +4673,10 @@ Show less + 숚ꞰꞰ src/app/components/transaction/transaction.component.html - 233,239 + 227,233 src/app/components/transactions-list/transactions-list.component.html @@ -4555,9 +4686,10 @@ Show diagram + 도표 ëłŽêž° src/app/components/transaction/transaction.component.html - 253,254 + 247,248 show-diagram @@ -4566,7 +4698,7 @@ 잠ꞈ 시간 src/app/components/transaction/transaction.component.html - 292,294 + 286,288 transaction.locktime @@ -4575,7 +4707,7 @@ 튞랜잭션을 찟을 수 없음 src/app/components/transaction/transaction.component.html - 455,456 + 449,450 transaction.error.transaction-not-found @@ -4584,7 +4716,7 @@ 멀풀에 포핹될때êčŒì§€ 대Ʞ하는 쀑... src/app/components/transaction/transaction.component.html - 456,461 + 450,455 transaction.error.waiting-for-it-to-appear @@ -4593,7 +4725,7 @@ 유횚 ìˆ˜ìˆ˜ëŁŒìœš src/app/components/transaction/transaction.component.html - 489,492 + 485,488 Effective transaction fee rate transaction.effective-fee-rate @@ -4741,7 +4873,7 @@ Show more inputs to reveal fee data src/app/components/transactions-list/transactions-list.component.html - 288,291 + 290,293 transactions-list.load-to-reveal-fee-info @@ -4749,7 +4881,7 @@ remaining src/app/components/transactions-list/transactions-list.component.html - 330,331 + 332,333 x-remaining @@ -4987,21 +5119,12 @@ dashboard.latest-transactions - - USD - 달러 - - src/app/dashboard/dashboard.component.html - 126,127 - - dashboard.latest-transactions.USD - Minimum fee 씜소 ìˆ˜ìˆ˜ëŁŒ src/app/dashboard/dashboard.component.html - 201,202 + 210,211 Minimum mempool fee dashboard.minimum-fee @@ -5011,7 +5134,7 @@ 퍌징 src/app/dashboard/dashboard.component.html - 202,203 + 211,212 Purgin below fee dashboard.purging @@ -5021,7 +5144,7 @@ 멀풀 메ëȘšëŠŹ ì‚Źìš©ëŸ‰ src/app/dashboard/dashboard.component.html - 214,215 + 223,224 Memory usage dashboard.memory-usage @@ -5031,15 +5154,23 @@ 유톔 쀑읞 L-BTC src/app/dashboard/dashboard.component.html - 228,230 + 237,239 dashboard.lbtc-pegs-in-circulation + + mempool.space merely provides data about the Bitcoin network. It cannot help you with retrieving funds, confirming your transaction quicker, etc. + + src/app/docs/api-docs/api-docs.component.html + 13 + + faq.big-disclaimer + REST API service src/app/docs/api-docs/api-docs.component.html - 39,40 + 41,42 api-docs.title @@ -5048,11 +5179,11 @@ ì—”ë“œíŹìžíŠž src/app/docs/api-docs/api-docs.component.html - 48,49 + 50,51 src/app/docs/api-docs/api-docs.component.html - 102,105 + 104,107 Api docs endpoint @@ -5061,11 +5192,11 @@ ì„€ëȘ… src/app/docs/api-docs/api-docs.component.html - 67,68 + 69,70 src/app/docs/api-docs/api-docs.component.html - 106,107 + 108,109 @@ -5073,7 +5204,7 @@ êž°ëłž 푞시: 작업: 'want', 데읎터 : [ 'blocks', ...] 을 ì‚Źìš©í•˜ì—Ź 푞시하렀는 êČƒì„ 표시할 수 있슔니닀. ì‚Źìš© 가늄: blocks, mempool-blocks, live-2h-chart, 및stats.ìŁŒì†Œì™€ ꎀ렚된 튞랜잭션을 푞시:’track-address’: ‘3PbJ
bF9B’을 ì‚Źìš©í•˜ì—Ź 읞풋 또는 아웃풋 ìŁŒì†Œë„Œ 포핹한 ìƒˆëĄœìšŽ 튞랜잭션을 받을 수 있슔니닀. 튞랜잭션듀은 행렬로 반환합니닀. ìƒˆëĄœìšŽ 튞랜잭션음 êČœìš°address-transactionsìŽêł , ìƒˆëĄ­êȌ 컚펌된 튞랜잭션음 êČœìš°block-transactions입니닀. src/app/docs/api-docs/api-docs.component.html - 107,108 + 109,110 api-docs.websocket.websocket @@ -5168,7 +5299,7 @@ src/app/lightning/node/node.component.html - 180,182 + 183,185 shared.m-sats @@ -5236,7 +5367,7 @@ src/app/lightning/channels-list/channels-list.component.html - 120,121 + 123,124 lightning.x-channels @@ -5274,11 +5405,11 @@ src/app/lightning/channel/channel.component.html - 11,12 + 13,14 src/app/lightning/channels-list/channels-list.component.html - 65,66 + 68,69 status.inactive @@ -5290,11 +5421,11 @@ src/app/lightning/channel/channel.component.html - 12,13 + 14,15 src/app/lightning/channels-list/channels-list.component.html - 66,68 + 69,71 status.active @@ -5306,7 +5437,7 @@ src/app/lightning/channel/channel.component.html - 13,14 + 15,16 src/app/lightning/channels-list/channels-list.component.html @@ -5314,7 +5445,7 @@ src/app/lightning/channels-list/channels-list.component.html - 68,70 + 71,73 status.closed @@ -5326,7 +5457,7 @@ src/app/lightning/channel/channel.component.html - 29,30 + 36,37 lightning.created @@ -5338,11 +5469,11 @@ src/app/lightning/channel/channel.component.html - 48,49 + 55,56 src/app/lightning/channels-list/channels-list.component.html - 40,43 + 43,46 src/app/lightning/node-statistics/node-statistics.component.html @@ -5350,7 +5481,7 @@ src/app/lightning/node-statistics/node-statistics.component.html - 47,50 + 46,49 src/app/lightning/nodes-list/nodes-list.component.html @@ -5372,6 +5503,10 @@ src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 60,62 + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 13,14 + src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts 202,201 @@ -5406,11 +5541,11 @@ Lightning channel src/app/lightning/channel/channel.component.html - 2,5 + 4,7 src/app/lightning/channel/channel.component.html - 117,119 + 116,118 lightning.channel @@ -5418,11 +5553,11 @@ Last update src/app/lightning/channel/channel.component.html - 33,34 + 40,41 src/app/lightning/node/node.component.html - 73,75 + 76,78 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -5438,11 +5573,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 14,15 + 16,17 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 14,15 + 16,17 lightning.last-update @@ -5450,11 +5585,11 @@ Closing date src/app/lightning/channel/channel.component.html - 37,38 + 44,45 src/app/lightning/channels-list/channels-list.component.html - 39,40 + 42,43 lightning.closing_date @@ -5462,7 +5597,7 @@ Closed by src/app/lightning/channel/channel.component.html - 52,54 + 59,61 lightning.closed_by @@ -5470,7 +5605,7 @@ Opening transaction src/app/lightning/channel/channel.component.html - 84,85 + 91,92 lightning.opening-transaction @@ -5478,7 +5613,7 @@ Closing transaction src/app/lightning/channel/channel.component.html - 93,95 + 100,102 lightning.closing-transaction @@ -5489,6 +5624,27 @@ 37 + + Mutually closed + + src/app/lightning/channel/closing-type/closing-type.component.ts + 20 + + + + Force closed + + src/app/lightning/channel/closing-type/closing-type.component.ts + 24 + + + + Force closed with penalty + + src/app/lightning/channel/closing-type/closing-type.component.ts + 28 + + Open @@ -5501,7 +5657,7 @@ No channels to display src/app/lightning/channels-list/channels-list.component.html - 29,35 + 29,37 lightning.empty-channels-list @@ -5509,7 +5665,7 @@ Alias src/app/lightning/channels-list/channels-list.component.html - 35,37 + 38,40 src/app/lightning/group/group.component.html @@ -5533,11 +5689,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 10,11 + 11,12 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 10,12 + 11,13 lightning.alias @@ -5545,7 +5701,7 @@ Status src/app/lightning/channels-list/channels-list.component.html - 37,38 + 40,41 status @@ -5553,7 +5709,7 @@ Channel ID src/app/lightning/channels-list/channels-list.component.html - 41,45 + 44,48 channels.id @@ -5561,11 +5717,11 @@ sats src/app/lightning/channels-list/channels-list.component.html - 60,64 + 63,67 src/app/lightning/channels-list/channels-list.component.html - 84,88 + 87,91 src/app/lightning/channels-statistics/channels-statistics.component.html @@ -5609,6 +5765,22 @@ shared.sats + + avg + + src/app/lightning/channels-statistics/channels-statistics.component.html + 3,5 + + statistics.average-small + + + med + + src/app/lightning/channels-statistics/channels-statistics.component.html + 6,9 + + statistics.median-small + Avg Capacity @@ -5725,11 +5897,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 17,18 + 16,17 src/app/lightning/node-statistics/node-statistics.component.html - 54,57 + 53,56 src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html @@ -5777,10 +5949,6 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 11,12 - - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html 12,13 lightning.liquidity @@ -5797,11 +5965,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 29,30 + 28,29 src/app/lightning/node-statistics/node-statistics.component.html - 61,64 + 60,63 src/app/lightning/nodes-list/nodes-list.component.html @@ -5833,11 +6001,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 12,13 + 14,15 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 11,12 + 12,13 src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts @@ -5873,7 +6041,7 @@ src/app/lightning/node/node.component.html - 47,49 + 50,52 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -5889,11 +6057,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 15,17 + 17,20 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 15,17 + 17,20 lightning.location @@ -5927,9 +6095,17 @@ src/app/lightning/lightning-dashboard/lightning-dashboard.component.html 62 + + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html + 4,9 + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts - 29 + 33 + + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 4,9 src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.html @@ -5957,6 +6133,28 @@ lightning.node-fee-distribution + + Outgoing Fees + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 170 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 208 + + + + Incoming Fees + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 178 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 222 + + Percentage change past week @@ -5965,11 +6163,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 18,20 + 17,19 src/app/lightning/node-statistics/node-statistics.component.html - 30,32 + 29,31 mining.percentage-change-last-week @@ -5981,11 +6179,11 @@ src/app/lightning/node/node.component.html - 2,4 + 4,6 src/app/lightning/node/node.component.html - 260,262 + 263,265 lightning.node @@ -5997,7 +6195,7 @@ src/app/lightning/node/node.component.html - 27,30 + 30,33 lightning.active-capacity @@ -6009,7 +6207,7 @@ src/app/lightning/node/node.component.html - 34,38 + 37,41 lightning.active-channels @@ -6021,19 +6219,11 @@ country - - No node found for public key "" - - src/app/lightning/node/node.component.html - 17,19 - - lightning.node-not-found - Average channel size src/app/lightning/node/node.component.html - 40,43 + 43,46 lightning.active-channels-avg @@ -6041,23 +6231,25 @@ Avg channel distance src/app/lightning/node/node.component.html - 56,57 + 59,60 lightning.avg-distance Color + 색 src/app/lightning/node/node.component.html - 79,81 + 82,84 lightning.color ISP + í†”ì‹ ì‚Ź src/app/lightning/node/node.component.html - 86,87 + 89,90 src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html @@ -6069,15 +6261,16 @@ Exclusively on Tor src/app/lightning/node/node.component.html - 93,95 + 96,98 tor Liquidity ad + 유동성 êŽ‘êł  src/app/lightning/node/node.component.html - 138,141 + 141,144 node.liquidity-ad @@ -6085,7 +6278,7 @@ Lease fee rate src/app/lightning/node/node.component.html - 144,147 + 147,150 Liquidity ad lease fee rate liquidity-ad.lease-fee-rate @@ -6094,7 +6287,7 @@ Lease base fee src/app/lightning/node/node.component.html - 152,154 + 155,157 liquidity-ad.lease-base-fee @@ -6102,7 +6295,7 @@ Funding weight src/app/lightning/node/node.component.html - 158,159 + 161,162 liquidity-ad.funding-weight @@ -6110,7 +6303,7 @@ Channel fee rate src/app/lightning/node/node.component.html - 168,171 + 171,174 Liquidity ad channel fee rate liquidity-ad.channel-fee-rate @@ -6119,7 +6312,7 @@ Channel base fee src/app/lightning/node/node.component.html - 176,178 + 179,181 liquidity-ad.channel-base-fee @@ -6127,7 +6320,7 @@ Compact lease src/app/lightning/node/node.component.html - 188,190 + 191,193 liquidity-ad.compact-lease @@ -6135,7 +6328,7 @@ TLV extension records src/app/lightning/node/node.component.html - 199,202 + 202,205 node.tlv.records @@ -6143,7 +6336,7 @@ Open channels src/app/lightning/node/node.component.html - 240,243 + 243,246 lightning.open-channels @@ -6151,7 +6344,7 @@ Closed channels src/app/lightning/node/node.component.html - 244,247 + 247,250 lightning.open-channels @@ -6193,7 +6386,7 @@ No geolocation data available src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts - 218,213 + 219,214 @@ -6215,8 +6408,8 @@ 112,107 - - Reachable on Clearnet Only + + Clearnet and Darknet src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 164,161 @@ -6226,8 +6419,8 @@ 303,302 - - Reachable on Clearnet and Darknet + + Clearnet Only (IPv4, IPv6) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 185,182 @@ -6237,8 +6430,8 @@ 295,294 - - Reachable on Darknet Only + + Darknet Only (Tor, I2P, cjdns) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 206,203 @@ -6470,22 +6663,6 @@ 27 - - Top 100 nodes liquidity ranking - - src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 3,7 - - lightning.top-100-liquidity - - - Top 100 nodes connectivity ranking - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 3,7 - - lightning.top-100-connectivity - Oldest nodes diff --git a/frontend/src/locale/messages.lt.xlf b/frontend/src/locale/messages.lt.xlf index d28aaabc5..1360df21c 100644 --- a/frontend/src/locale/messages.lt.xlf +++ b/frontend/src/locale/messages.lt.xlf @@ -11,7 +11,7 @@ Slide of - Skaidrė iĆĄ + Langas iĆĄ node_modules/src/carousel/carousel.ts 175,181 @@ -359,11 +359,11 @@ src/app/components/block/block.component.html - 303,304 + 310,311 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 26,27 + 46,47 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -384,11 +384,11 @@ src/app/components/block/block.component.html - 304,305 + 311,312 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 27,28 + 47,48 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -598,7 +598,7 @@ src/app/components/pool-ranking/pool-ranking.component.html - 94,96 + 94,95 @@ -629,7 +629,7 @@ Bitcoin Markets - Bitkoino rinkos + Bitkoino Rinkos src/app/bisq/bisq-dashboard/bisq-dashboard.component.html 21,24 @@ -721,7 +721,7 @@ Bisq Price Index - "Bisq" kainos indeksas + "Bisq" Kainos Indeksas src/app/bisq/bisq-main-dashboard/bisq-main-dashboard.component.html 9,11 @@ -730,7 +730,7 @@ Bisq Market Price - "Bisq" rinkos kaina + "Bisq" Rinkos Kaina src/app/bisq/bisq-main-dashboard/bisq-main-dashboard.component.html 21,23 @@ -768,41 +768,57 @@ Terms of Service - PaslaugĆł teikimo sąlygos + PaslaugĆł Teikimo Sąlygos src/app/bisq/bisq-main-dashboard/bisq-main-dashboard.component.html 111,113 src/app/components/about/about.component.html - 385,389 + 375,378 + + + src/app/components/mining-dashboard/mining-dashboard.component.html + 88 src/app/dashboard/dashboard.component.html - 150,152 + 157,159 src/app/docs/docs/docs.component.html 51 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 97 + Terms of Service shared.terms-of-service Privacy Policy - Privatumo politika + Privatumo Politika src/app/bisq/bisq-main-dashboard/bisq-main-dashboard.component.html 113,120 + + src/app/components/mining-dashboard/mining-dashboard.component.html + 90 + src/app/dashboard/dashboard.component.html - 152,154 + 159,161 src/app/docs/docs/docs.component.html 53 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 99 + Privacy Policy shared.privacy-policy @@ -990,7 +1006,7 @@ src/app/dashboard/dashboard.component.html - 124,125 + 124,126 @@ -1038,7 +1054,7 @@ src/app/components/transaction/transaction.component.html - 158,160 + 152,154 src/app/components/transactions-list/transactions-list.component.html @@ -1054,17 +1070,17 @@ src/app/components/block/block.component.html - 245,246 + 252,253 src/app/components/transaction/transaction.component.html - 288,290 + 282,284 transaction.version Transaction - Operacija + Sandoris src/app/bisq/bisq-transaction/bisq-transaction.component.html 6,11 @@ -1108,7 +1124,7 @@ src/app/components/transactions-list/transactions-list.component.html - 294,295 + 296,297 Transaction singular confirmation count shared.confirmation-count.singular @@ -1130,7 +1146,7 @@ src/app/components/transactions-list/transactions-list.component.html - 295,296 + 297,298 Transaction plural confirmation count shared.confirmation-count.plural @@ -1142,10 +1158,6 @@ src/app/bisq/bisq-transaction/bisq-transaction.component.html 43,45 - - src/app/components/transaction/transaction.component.html - 65,67 - Transaction included in block transaction.included-in-block @@ -1158,11 +1170,11 @@ src/app/components/transaction/transaction.component.html - 77,80 + 71,74 src/app/components/transaction/transaction.component.html - 135,138 + 129,132 Transaction features transaction.features @@ -1190,17 +1202,17 @@ src/app/components/transaction/transaction.component.html - 262,267 + 256,261 src/app/components/transaction/transaction.component.html - 406,412 + 400,406 transaction.details Inputs & Outputs - Äźvestys ir iĆĄvestys + Äźvestys ir IĆĄvestys src/app/bisq/bisq-transaction/bisq-transaction.component.html 97,105 @@ -1211,11 +1223,11 @@ src/app/components/transaction/transaction.component.html - 249,253 + 243,247 src/app/components/transaction/transaction.component.html - 377,383 + 371,377 Transaction inputs and outputs transaction.inputs-and-outputs @@ -1233,12 +1245,12 @@ src/app/components/transaction/transaction.component.ts - 241,240 + 244,243 BSQ Transactions - BSQ operacijos + BSQ Sandoriai src/app/bisq/bisq-transactions/bisq-transactions.component.html 2,5 @@ -1253,7 +1265,7 @@ src/app/components/transaction/transaction.component.html - 159,160 + 153,154 src/app/dashboard/dashboard.component.html @@ -1269,7 +1281,7 @@ src/app/components/transaction/transaction.component.html - 72,73 + 66,67 Transaction Confirmed state transaction.confirmed @@ -1396,7 +1408,7 @@ Select all - Pasirinkti viską + Ćœymėti viską src/app/bisq/bisq-transactions/bisq-transactions.component.ts 58,56 @@ -1404,7 +1416,7 @@ Unselect all - AtĆĄaukti visus pasirinkimus + NeĆŸymėti nieko src/app/bisq/bisq-transactions/bisq-transactions.component.ts 59 @@ -1420,7 +1432,7 @@ Volume - Prekybos apimtis + Apimtis src/app/bisq/lightweight-charts-area/lightweight-charts-area.component.ts 100 @@ -1428,7 +1440,7 @@ The Mempool Open Source Project - „Mempool“ atvirojo kodo projektas + „Mempool“ Atviro Kodo Projektas src/app/components/about/about.component.html 12,13 @@ -1437,27 +1449,27 @@ Our mempool and blockchain explorer for the Bitcoin community, focusing on the transaction fee market and multi-layer ecosystem, completely self-hosted without any trusted third-parties. - Nuo trečiĆłjĆł ĆĄaliĆł prieglobos paslaugĆł nepriklausoma BTC operacijĆł mokesčiĆł ir daugiasluoksnės Bitkoino ekosistemos analizei skirta mempulo ir blokĆł grandinės narĆĄyklė. + Nuo trečiĆłjĆł ĆĄaliĆł paslaugĆł nepriklausoma BTC sandoriĆł ir daugiasluoksnės Bitkoino ekosistemos analizei skirta atminties baseino bei blokĆł grandinės narĆĄyklė. src/app/components/about/about.component.html - 13,17 + 13,16 Enterprise Sponsors 🚀 - Rėmėjai iĆĄ verslo 🚀 + Verslo Rėmėjai 🚀 src/app/components/about/about.component.html - 29,32 + 19,22 about.sponsors.enterprise.withRocket Community Sponsors ❀ - Rėmėjai iĆĄ bendruomenės ❀ + Bendruomenės Rėmėjai ❀ src/app/components/about/about.component.html - 177,180 + 167,170 about.sponsors.withHeart @@ -1466,7 +1478,7 @@ Bendruomenės Integracijos src/app/components/about/about.component.html - 191,193 + 181,183 about.community-integrations @@ -1475,7 +1487,7 @@ Bendruomenės Aljansai src/app/components/about/about.component.html - 285,287 + 275,277 about.alliances @@ -1484,7 +1496,7 @@ Projekto Vertėjai src/app/components/about/about.component.html - 301,303 + 291,293 about.translators @@ -1493,7 +1505,7 @@ Projekto Pagalbininkai src/app/components/about/about.component.html - 315,317 + 305,307 about.contributors @@ -1502,7 +1514,7 @@ Projekto Nariai src/app/components/about/about.component.html - 327,329 + 317,319 about.project_members @@ -1511,7 +1523,7 @@ Projekto PriĆŸiĆ«rėtojai src/app/components/about/about.component.html - 340,342 + 330,332 about.maintainers @@ -1520,7 +1532,7 @@ Apie src/app/components/about/about.component.ts - 39 + 42 src/app/components/bisq-master-page/bisq-master-page.component.html @@ -1569,7 +1581,7 @@ src/app/components/amount/amount.component.html - 6,9 + 20,23 src/app/components/asset-circulation/asset-circulation.component.html @@ -1585,7 +1597,7 @@ src/app/components/transactions-list/transactions-list.component.html - 302,304 + 304,306 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -1638,7 +1650,7 @@ There many transactions on this address, more than your backend can handle. See more on setting up a stronger backend. Consider viewing this address on the official Mempool website instead: - Ć iuo adresu yra daug operacijĆł, daugiau nei gali parodyti jĆ«sĆł vidinė sistema. Ćœr. daugiau apie , kaip nustatyti galingesnę vidinę sistemą . Patikrinkite ĆĄÄŻ adresą oficialioje „Mempool“ svetainėje: + Ć iuo adresu yra daug sandoriĆł, daugiau nei gali parodyti jĆ«sĆł sistema. Ćœr. daugiau apie , kaip pasidaryti naĆĄesnę sistemą . Tikrinkite ĆĄÄŻ adresą oficialioje „Mempool“ svetainėje: src/app/components/address/address.component.html 134,137 @@ -1779,7 +1791,7 @@ Error loading asset data. - Äźkeliant lėơƳ duomenis ÄŻvyko klaida. + Äźkeliant turto duomenis ÄŻvyko klaida. src/app/components/asset/asset.component.html 150 @@ -1788,7 +1800,7 @@ Asset: - Lėơos: + Turtai: src/app/components/asset/asset.component.ts 75 @@ -1796,7 +1808,7 @@ Group of assets - lėơƳ grupė + turtĆł grupė src/app/components/assets/asset-group/asset-group.component.html 8,9 @@ -1808,7 +1820,7 @@ Assets - Lėơos + Turtai src/app/components/assets/assets-nav/assets-nav.component.html 3 @@ -1829,7 +1841,7 @@ Featured - Rodomas + Pateikta src/app/components/assets/assets-nav/assets-nav.component.html 9 @@ -1865,7 +1877,7 @@ Search asset - IeĆĄkoti lėơƳ + IeĆĄkoti turto src/app/components/assets/assets-nav/assets-nav.component.html 19 @@ -1909,7 +1921,7 @@ Asset ID - LėơƳ ID + Turto ID src/app/components/assets/assets.component.html 7,10 @@ -1922,7 +1934,7 @@ Error loading assets data. - Äźkeliant lėơƳ duomenis ÄŻvyko klaida. + Äźkeliant duomenis ÄŻvyko klaida. src/app/components/assets/assets.component.html 50,55 @@ -1965,7 +1977,7 @@ Layer 2 Networks - 2-ojo sluoksnio tinklai + 2-o Sluoksnio Tinklai src/app/components/bisq-master-page/bisq-master-page.component.html 50,51 @@ -1982,7 +1994,7 @@ Dashboard - Valdymo skydas + Valdymo Skydas src/app/components/bisq-master-page/bisq-master-page.component.html 60,62 @@ -2049,7 +2061,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 161 + 165 @@ -2065,7 +2077,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 163 + 167 @@ -2077,7 +2089,7 @@ src/app/components/block-fees-graph/block-fees-graph.component.ts - 62 + 67 src/app/components/graphs/graphs.component.html @@ -2090,15 +2102,15 @@ Indeksavimo blokai src/app/components/block-fees-graph/block-fees-graph.component.ts - 110,105 + 116,111 src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 108,103 + 113,108 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 115,110 + 116,111 src/app/components/hashrate-chart/hashrate-chart.component.ts @@ -2143,7 +2155,7 @@ src/app/components/transaction/transaction.component.html - 478 + 472 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -2169,11 +2181,11 @@ src/app/components/transaction/transaction.component.html - 478,479 + 472 src/app/components/transactions-list/transactions-list.component.html - 286,287 + 288 sat shared.sat @@ -2187,11 +2199,11 @@ src/app/components/transaction/transaction.component.html - 161,165 + 155,159 src/app/components/transaction/transaction.component.html - 481,483 + 475,477 src/app/lightning/channel/channel-box/channel-box.component.html @@ -2221,19 +2233,19 @@ src/app/components/block/block.component.html - 123,126 + 124,127 src/app/components/block/block.component.html - 127 + 128,130 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 12,14 + 19,22 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 15,17 + 30,33 src/app/components/fees-box/fees-box.component.html @@ -2273,27 +2285,27 @@ src/app/components/transaction/transaction.component.html - 173,174 + 167,168 src/app/components/transaction/transaction.component.html - 184,185 + 178,179 src/app/components/transaction/transaction.component.html - 195,196 + 189,190 src/app/components/transaction/transaction.component.html - 483,486 + 477,480 src/app/components/transaction/transaction.component.html - 494,496 + 488,490 src/app/components/transactions-list/transactions-list.component.html - 286 + 286,287 src/app/dashboard/dashboard.component.html @@ -2301,7 +2313,7 @@ src/app/dashboard/dashboard.component.html - 206,210 + 213,217 sat/vB shared.sat-vbyte @@ -2315,11 +2327,11 @@ src/app/components/transaction/transaction.component.html - 160,162 + 154,156 src/app/components/transaction/transaction.component.html - 274,277 + 268,271 Transaction Virtual Size transaction.vsize @@ -2384,7 +2396,7 @@ Block Prediction Accuracy - BlokĆł Spėjimo Tikslumas + BlokĆł Nuspėjimo Tikslumas src/app/components/block-prediction-graph/block-prediction-graph.component.html 6,8 @@ -2417,7 +2429,7 @@ Match rate - Atitikties rodiklis + Atitikmens rodiklis src/app/components/block-prediction-graph/block-prediction-graph.component.ts 189,187 @@ -2432,7 +2444,7 @@ src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 60 + 65 src/app/components/graphs/graphs.component.html @@ -2462,11 +2474,11 @@ Dydis src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 180,179 + 184,183 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 226,224 + 239,237 src/app/components/block/block.component.html @@ -2494,7 +2506,7 @@ src/app/components/transaction/transaction.component.html - 270,272 + 264,266 src/app/dashboard/dashboard.component.html @@ -2506,11 +2518,11 @@ Svoris src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 188,187 + 192,191 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 257,254 + 270,267 src/app/components/block/block-preview.component.html @@ -2522,7 +2534,19 @@ src/app/components/transaction/transaction.component.html - 278,280 + 272,274 + + + + Size per weight + Dydis pagal SvorÄŻ + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 200,199 + + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 282,279 @@ -2538,15 +2562,6 @@ shared.block-title - - - - - src/app/components/block/block-preview.component.html - 11,12 - - shared.block-title - Median fee Vidutinis mokestis @@ -2556,7 +2571,7 @@ src/app/components/block/block.component.html - 126,127 + 127,128 src/app/components/mempool-block/mempool-block.component.html @@ -2566,18 +2581,18 @@ Total fees - Bendri mokesčiai + Viso mokesčiĆł src/app/components/block/block-preview.component.html 41,43 src/app/components/block/block.component.html - 131,133 + 138,140 src/app/components/block/block.component.html - 157,160 + 164,167 src/app/components/mempool-block/mempool-block.component.html @@ -2595,7 +2610,7 @@ src/app/components/block/block.component.html - 166,168 + 173,175 block.miner @@ -2608,7 +2623,7 @@ src/app/components/block/block.component.ts - 234 + 242 @@ -2662,12 +2677,20 @@ 60,63 - src/app/lightning/node/node.component.html - 52,55 + src/app/components/pool-ranking/pool-ranking.component.html + 121,124 + + + src/app/lightning/channel/closing-type/closing-type.component.ts + 32 src/app/lightning/node/node.component.html - 96,100 + 55,58 + + + src/app/lightning/node/node.component.html + 99,103 src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts @@ -2684,7 +2707,7 @@ MokesčiĆł intervalas src/app/components/block/block.component.html - 122,123 + 123,124 src/app/components/mempool-block/mempool-block.component.html @@ -2697,7 +2720,7 @@ Remiantis vidutine 140 vBaitĆł 'native segwit' operacija src/app/components/block/block.component.html - 127,129 + 131,136 src/app/components/fees-box/fees-box.component.html @@ -2721,25 +2744,26 @@ Transaction fee tooltip - - Subsidy + fees: - Subsidija + mokesčiai: + + Subsidy + fees + Subsidija + mokesčiai src/app/components/block/block.component.html - 146,149 + 153,156 src/app/components/block/block.component.html - 161,165 + 168,172 Total subsidy and fees in a block block.subsidy-and-fees Expected + Tikimasi src/app/components/block/block.component.html - 209 + 216 block.expected @@ -2748,11 +2772,11 @@ beta versija src/app/components/block/block.component.html - 209,210 + 216,217 src/app/components/block/block.component.html - 215,217 + 222,224 beta @@ -2761,23 +2785,25 @@ Tikras src/app/components/block/block.component.html - 211,215 + 218,222 block.actual Expected Block + Numatytas Blokas src/app/components/block/block.component.html - 215 + 222 block.expected-block Actual Block + Esamas Blokas src/app/components/block/block.component.html - 224 + 231 block.actual-block @@ -2786,7 +2812,7 @@ Bitai src/app/components/block/block.component.html - 249,251 + 256,258 block.bits @@ -2795,7 +2821,7 @@ Merkle ĆĄaknis src/app/components/block/block.component.html - 253,255 + 260,262 block.merkle-root @@ -2804,7 +2830,7 @@ Sudėtingumas src/app/components/block/block.component.html - 264,267 + 271,274 src/app/components/difficulty-adjustments-table/difficulty-adjustments-table.component.html @@ -2833,7 +2859,7 @@ Noncas src/app/components/block/block.component.html - 268,270 + 275,277 block.nonce @@ -2842,7 +2868,7 @@ Bloko AntraĆĄtės Hex src/app/components/block/block.component.html - 272,273 + 279,280 block.header @@ -2851,7 +2877,7 @@ Auditas src/app/components/block/block.component.html - 290,294 + 297,301 Toggle Audit block.toggle-audit @@ -2861,23 +2887,23 @@ Detalės src/app/components/block/block.component.html - 297,301 + 304,308 src/app/components/transaction/transaction.component.html - 254,259 + 248,253 src/app/lightning/channel/channel.component.html - 86,88 + 93,95 src/app/lightning/channel/channel.component.html - 96,98 + 103,105 src/app/lightning/node/node.component.html - 218,222 + 221,225 Transaction Details transaction.details @@ -2887,20 +2913,16 @@ Äźkeliant duomenis ÄŻvyko klaida. src/app/components/block/block.component.html - 316,318 + 323,325 src/app/components/block/block.component.html - 355,359 + 362,366 src/app/lightning/channel/channel-preview.component.html 70,75 - - src/app/lightning/channel/channel.component.html - 109,115 - src/app/lightning/node/node-preview.component.html 66,69 @@ -2916,7 +2938,7 @@ Kodėl ĆĄis blokas tuơčias? src/app/components/block/block.component.html - 377,383 + 384,390 block.empty-block-explanation @@ -3025,7 +3047,7 @@ src/app/dashboard/dashboard.component.html - 212,216 + 219,223 dashboard.txs @@ -3057,7 +3079,7 @@ Difficulty Adjustment - Sunkumo Koregavimas + Sudėtingumo Koregavimas src/app/components/difficulty/difficulty.component.html 1,5 @@ -3169,7 +3191,7 @@ Either 2x the minimum, or the Low Priority rate (whichever is lower) - 2x daugiau uĆŸ minimalĆł arba ĆŸemo prioriteto tarifas (atsiĆŸvelgiant ÄŻ tai, kuris maĆŸesnis) + Arba 2x daugiau uĆŸ minimalĆł arba ĆŸemo prioriteto tarifas (pagal tai kuris maĆŸesnis) src/app/components/fees-box/fees-box.component.html 4,7 @@ -3264,20 +3286,20 @@ src/app/dashboard/dashboard.component.html - 239,240 + 246,247 dashboard.incoming-transactions Backend is synchronizing - Vidinė sistema sinchronizuojasi + Sistema sinchronizuojasi src/app/components/footer/footer.component.html 8,10 src/app/dashboard/dashboard.component.html - 242,245 + 249,252 dashboard.backend-is-synchronizing @@ -3290,7 +3312,7 @@ src/app/dashboard/dashboard.component.html - 247,252 + 254,259 vB/s shared.vbytes-per-second @@ -3304,7 +3326,7 @@ src/app/dashboard/dashboard.component.html - 210,211 + 217,218 Unconfirmed count dashboard.unconfirmed @@ -3330,7 +3352,7 @@ Pools Ranking - BaseinĆł Reitingas + TelkiniĆł Reitingas src/app/components/graphs/graphs.component.html 11 @@ -3343,7 +3365,7 @@ Pools Dominance - BaseinĆł Dominavimas + TelkiniĆł Dominavimas src/app/components/graphs/graphs.component.html 13 @@ -3571,7 +3593,7 @@ Mining Dashboard - Gavybos Valdymo Skydas + Kasimo Duomenys src/app/components/master-page/master-page.component.html 41,43 @@ -3584,7 +3606,7 @@ Lightning Explorer - Ćœaibatinklio NarĆĄyklė + "Lightning" NarĆĄyklė src/app/components/master-page/master-page.component.html 44,47 @@ -3680,6 +3702,32 @@ dashboard.adjustments + + Broadcast Transaction + Transliavimo Sandoris + + src/app/components/mining-dashboard/mining-dashboard.component.html + 92 + + + src/app/components/push-transaction/push-transaction.component.html + 2 + + + src/app/components/push-transaction/push-transaction.component.html + 8 + + + src/app/dashboard/dashboard.component.html + 161,169 + + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 102 + + Broadcast Transaction + shared.broadcast-transaction + Pools luck (1 week) TelkiniĆł sėkmė (1 savaitė) @@ -3691,7 +3739,7 @@ Pools luck - TelkiniĆł sėkmė + Telkinio sėkmė src/app/components/pool-ranking/pool-ranking.component.html 9,11 @@ -3700,7 +3748,7 @@ The overall luck of all mining pools over the past week. A luck bigger than 100% means the average block time for the current epoch is less than 10 minutes. - Bendra visĆł gavybos telkiniĆł sėkmė per praėjusią savaitę. Sėkmė, didesnė nei 100 %, reiĆĄkia, kad vidutinis einamosios epochos bloko laikas yra trumpesnis nei 10 minučiĆł. + Bendra visĆł kasimo telkiniĆł sėkmė per praėjusią savaitę. Sėkmė, didesnė nei 100 %, reiĆĄkia, kad vidutinis einamosios epochos bloko laikas yra trumpesnis nei 10 minučiĆł. src/app/components/pool-ranking/pool-ranking.component.html 11,15 @@ -3727,7 +3775,7 @@ How many unique pools found at least one block over the past week. - Kiek unikaliĆł telkiniĆł rado bent vieną bloką per pastarąją savaitę. + Kiek unikaliĆł telkiniĆł rado bent vieną bloką per paskutinę savaitę. src/app/components/pool-ranking/pool-ranking.component.html 19,23 @@ -3747,13 +3795,13 @@ src/app/components/pool-ranking/pool-ranking.component.html - 136,138 + 152,154 master-page.blocks The number of blocks found over the past week. - Per pastarąją savaitę rastĆł blokĆł skaičius. + Paskutinę savaitę rastĆł blokĆł skaičius. src/app/components/pool-ranking/pool-ranking.component.html 27,31 @@ -3777,21 +3825,34 @@ mining.rank + + Avg Health + Vid. sveikata + + src/app/components/pool-ranking/pool-ranking.component.html + 96,97 + + + src/app/components/pool-ranking/pool-ranking.component.html + 96,98 + + latest-blocks.avg_health + Empty blocks TuĆĄti blokai src/app/components/pool-ranking/pool-ranking.component.html - 95,98 + 97,100 mining.empty-blocks All miners - Visi iĆĄgavėjai + Visi kasėjai src/app/components/pool-ranking/pool-ranking.component.html - 113,114 + 129,130 mining.all-miners @@ -3800,7 +3861,7 @@ TelkiniĆł sėkmė (1 sav.) src/app/components/pool-ranking/pool-ranking.component.html - 130,132 + 146,148 mining.miners-luck @@ -3809,16 +3870,16 @@ Suskaičiuota TelkiniĆł (1 sav.) src/app/components/pool-ranking/pool-ranking.component.html - 142,144 + 158,160 mining.miners-count Mining Pools - Gavybos Telkiniai + Kasimo Telkiniai src/app/components/pool-ranking/pool-ranking.component.ts - 57 + 58 @@ -3835,7 +3896,7 @@ mining pool - gavybos telkinys + kasimo telkinys src/app/components/pool/pool-preview.component.html 3,5 @@ -3924,7 +3985,7 @@ Estimated - Apytikris + Spėjama src/app/components/pool/pool.component.html 96,97 @@ -4045,34 +4106,16 @@ latest-blocks.coinbasetag - - Broadcast Transaction - Transliavimo Operacija - - src/app/components/push-transaction/push-transaction.component.html - 2 - - - src/app/components/push-transaction/push-transaction.component.html - 8 - - - src/app/dashboard/dashboard.component.html - 154,162 - - Broadcast Transaction - shared.broadcast-transaction - Transaction hex - Operacijos hex + Sandorio hex src/app/components/push-transaction/push-transaction.component.html 6 src/app/components/transaction/transaction.component.html - 296,297 + 290,291 transaction.hex @@ -4095,7 +4138,7 @@ Amount being paid to miners in the past 144 blocks - Suma, mokama iĆĄgavėjams per pastaruosius 144 blokus + Suma, mokama kasėjams per paskutinius 144 blokus src/app/components/reward-stats/reward-stats.component.html 6,8 @@ -4104,6 +4147,7 @@ Avg Block Fees + Vid. Bloko Mokesčiai src/app/components/reward-stats/reward-stats.component.html 17 @@ -4116,6 +4160,7 @@ Average fees per block in the past 144 blocks + Vid. mokesčiai uĆŸ bloką per paskutinius 144 blokus src/app/components/reward-stats/reward-stats.component.html 18,20 @@ -4124,6 +4169,7 @@ BTC/block + BTC/blokas src/app/components/reward-stats/reward-stats.component.html 21,24 @@ -4133,6 +4179,7 @@ Avg Tx Fee + Vid. Mokestis src/app/components/reward-stats/reward-stats.component.html 30 @@ -4145,7 +4192,7 @@ Fee paid on average for each transaction in the past 144 blocks - Vidutinis mokestis uĆŸ kiekvieną operaciją per pastaruosius 144 blokus + Vid. mokestis uĆŸ sandorÄŻ per paskutinius 144 blokus src/app/components/reward-stats/reward-stats.component.html 31,32 @@ -4177,7 +4224,7 @@ Explore the full Bitcoin ecosystem - Tyrinėkite visą Bitkoino ekosistemą + Tyrinėk visą Bitkoino ekosistemą src/app/components/search-form/search-form.component.html 4,5 @@ -4193,6 +4240,78 @@ search-form.search-title + + Bitcoin Block Height + Bitkoino Bloko AukĆĄtis + + src/app/components/search-form/search-results/search-results.component.html + 3 + + search.bitcoin-block-height + + + Bitcoin Transaction + Bitkoino Sandoris + + src/app/components/search-form/search-results/search-results.component.html + 9 + + search.bitcoin-transaction + + + Bitcoin Address + Bitkoino Adresas + + src/app/components/search-form/search-results/search-results.component.html + 15 + + search.bitcoin-address + + + Bitcoin Block + Bitkoino Blokas + + src/app/components/search-form/search-results/search-results.component.html + 21 + + search.bitcoin-block + + + Bitcoin Addresses + Bitkoino Adresai + + src/app/components/search-form/search-results/search-results.component.html + 27 + + search.bitcoin-addresses + + + Lightning Nodes + "Lightning" Mazgai + + src/app/components/search-form/search-results/search-results.component.html + 35 + + search.lightning-nodes + + + Lightning Channels + "Lightning" Kanalai + + src/app/components/search-form/search-results/search-results.component.html + 43 + + search.lightning-channels + + + Go to "" + Eikite ÄŻ &quot; &quot; + + src/app/components/search-form/search-results/search-results.component.html + 52 + + search.go-to + Mempool by vBytes (sat/vByte) Mempool pagal vBitus (sat/vByte) @@ -4440,7 +4559,7 @@ This transaction has been replaced by: - Ć i operacija buvo pakeista: + Ć is sandoris buvo pakeistas ÄŻ ĆĄÄŻ: src/app/components/transaction/transaction.component.html 5,6 @@ -4450,6 +4569,7 @@ This transaction replaced: + Ć is sandoris pakeitė ĆĄÄŻ: src/app/components/transaction/transaction.component.html 10,12 @@ -4459,6 +4579,7 @@ Replaced + Pakeista src/app/components/transaction/transaction.component.html 36,39 @@ -4475,21 +4596,21 @@ src/app/components/transactions-list/transactions-list.component.html - 298,301 + 300,303 Transaction unconfirmed state transaction.unconfirmed First seen - Pirmą kartą pamatytas + Pirma pamatytas src/app/components/transaction/transaction.component.html - 108,109 + 102,103 src/app/lightning/node/node.component.html - 67,70 + 70,73 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -4505,11 +4626,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 13,15 + 15,16 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 13,15 + 15,16 Transaction first seen transaction.first-seen @@ -4519,7 +4640,7 @@ Tikimasi src/app/components/transaction/transaction.component.html - 115,116 + 109,110 Transaction ETA transaction.eta @@ -4529,7 +4650,7 @@ Po keliĆł valandĆł (ar daugiau) src/app/components/transaction/transaction.component.html - 121,124 + 115,118 Transaction ETA in several hours or more transaction.eta.in-several-hours @@ -4539,11 +4660,11 @@ Palikuonis src/app/components/transaction/transaction.component.html - 168,170 + 162,164 src/app/components/transaction/transaction.component.html - 179,181 + 173,175 Descendant transaction.descendant @@ -4553,7 +4674,7 @@ Protėvis src/app/components/transaction/transaction.component.html - 190,192 + 184,186 Transaction Ancestor transaction.ancestor @@ -4563,11 +4684,11 @@ Srautas src/app/components/transaction/transaction.component.html - 208,211 + 202,205 src/app/components/transaction/transaction.component.html - 346,350 + 340,344 Transaction flow transaction.flow @@ -4577,7 +4698,7 @@ Slėpti diagramą src/app/components/transaction/transaction.component.html - 211,216 + 205,210 hide-diagram @@ -4586,7 +4707,7 @@ Rodyti daugiau src/app/components/transaction/transaction.component.html - 231,233 + 225,227 src/app/components/transactions-list/transactions-list.component.html @@ -4603,7 +4724,7 @@ Rodyti maĆŸiau src/app/components/transaction/transaction.component.html - 233,239 + 227,233 src/app/components/transactions-list/transactions-list.component.html @@ -4616,7 +4737,7 @@ Rodyti diagramą src/app/components/transaction/transaction.component.html - 253,254 + 247,248 show-diagram @@ -4625,16 +4746,16 @@ UĆŸrakinimo laikas src/app/components/transaction/transaction.component.html - 292,294 + 286,288 transaction.locktime Transaction not found. - Operacija nerasta. + Sandoris nerastas. src/app/components/transaction/transaction.component.html - 455,456 + 449,450 transaction.error.transaction-not-found @@ -4643,16 +4764,16 @@ Laukiama pasirodymo atmintinėje... src/app/components/transaction/transaction.component.html - 456,461 + 450,455 transaction.error.waiting-for-it-to-appear Effective fee rate - Efektyvus mokesčio tarifas + Efektyvus mokesčiĆł tarifas src/app/components/transaction/transaction.component.html - 491,494 + 485,488 Effective transaction fee rate transaction.effective-fee-rate @@ -4751,7 +4872,7 @@ Previous output script - Ankstesnis iĆĄvesties skriptas + Ankstesnės iĆĄvesties skriptas src/app/components/transactions-list/transactions-list.component.html 144,145 @@ -4760,7 +4881,7 @@ Previous output type - Ankstesnis iĆĄvesties tipas + Ankstesnės iĆĄvesties tipas src/app/components/transactions-list/transactions-list.component.html 148,149 @@ -4798,17 +4919,19 @@ Show more inputs to reveal fee data + ĆœiĆ«rėti daugiau ÄŻvesčiĆł kad matyti mokesčiĆł duomenis src/app/components/transactions-list/transactions-list.component.html - 288,291 + 290,293 transactions-list.load-to-reveal-fee-info remaining + liko src/app/components/transactions-list/transactions-list.component.html - 330,331 + 332,333 x-remaining @@ -4858,7 +4981,7 @@ This transaction saved % on fees by using native SegWit - Ć i operacija sutaupė % mokesčiĆł, naudojant vietinÄŻ SegWit + Ć is sandoris sutaupė % mokesčiĆł nes naudojo vietinÄŻ SegWit src/app/components/tx-features/tx-features.component.html 2 @@ -4885,7 +5008,7 @@ This transaction saved % on fees by using SegWit and could save % more by fully upgrading to native SegWit - Ć i operacija sutaupė % mokesčiĆł naudojant SegWit ir gali sutaupyti % daugiau visiĆĄkai naujovinus ÄŻ vietinÄŻ SegWit + Ć is sandoris sutaupė % mokesčiĆł naudojant SegWit ir gali sutaupyti % daugiau naudojant vietinÄŻ SegWit src/app/components/tx-features/tx-features.component.html 4 @@ -4894,7 +5017,7 @@ This transaction could save % on fees by upgrading to native SegWit or % by upgrading to SegWit-P2SH - Ć i operacija galėtĆł sutaupyti % mokesčiĆł atnaujinus ÄŻ vietinÄŻ SegWit arba % naujovinus ÄŻ SegWit-P2SH + Ć is sandoris galėjo sutaupyti % mokesčiĆł naudojant vietinÄŻ SegWit arba % naujovinus ÄŻ SegWit-P2SH src/app/components/tx-features/tx-features.component.html 6 @@ -4903,7 +5026,7 @@ This transaction uses Taproot and thereby saved at least % on fees - Ć i operacija naudoja Taproot ir taip sutaupė bent % mokesčiĆł + Ć is sandoris naudoja Taproot ir taip sutaupė bent % mokesčiĆł src/app/components/tx-features/tx-features.component.html 12 @@ -4938,7 +5061,7 @@ This transaction uses Taproot and already saved at least % on fees, but could save an additional % by fully using Taproot - Ć i operacija naudoja „Taproot“ ir jau sutaupė bent % mokesčiĆł, bet gali sutaupyti papildomai % visiĆĄkai naudojant Taproot + Ć is sandoris naudojo „Taproot“ ir jau sutaupė bent % mokesčiĆł, bet gali sutaupyti papildomai % pilnai iĆĄnaudojant Taproot src/app/components/tx-features/tx-features.component.html 14 @@ -4947,7 +5070,7 @@ This transaction could save % on fees by using Taproot - Ć i operacija gali sutaupyti % mokesčiĆł naudojant Taproot + Ć is sandoris gali sutaupyti % mokesčiĆł naudojant Taproot src/app/components/tx-features/tx-features.component.html 16 @@ -4956,6 +5079,7 @@ This transaction does not use Taproot + Ć is sandoris nenaudoja Taproot src/app/components/tx-features/tx-features.component.html 18 @@ -4964,7 +5088,7 @@ This transaction uses Taproot - Ć i operacija naudoja Taproot + Ć is sandoris naudoja Taproot src/app/components/tx-features/tx-features.component.html 21 @@ -4973,7 +5097,7 @@ This transaction supports Replace-By-Fee (RBF) allowing fee bumping - Ć i operacija palaiko „Replace-By-Fee“ (RBF), leidĆŸiančią pridėti mokesčius + Ć is sandoris palaiko „Replace-By-Fee“ (RBF), kuris leidĆŸia jÄŻ paspartinti. src/app/components/tx-features/tx-features.component.html 28 @@ -4996,7 +5120,7 @@ This transaction does NOT support Replace-By-Fee (RBF) and cannot be fee bumped using this method - Ć i operacija nepalaiko "Replace-By-Fee" (RBF) ir negali bĆ«ti paspartinta naudojant ĆĄÄŻ metodą. + Ć i operacija nepalaiko "Replace-By-Fee" (RBF) ir negali bĆ«ti paspartinta. src/app/components/tx-features/tx-features.component.html 29 @@ -5015,7 +5139,7 @@ Only ~ sat/vB was needed to get into this block - Norint patekti ÄŻ ĆĄÄŻ bloką, bĆ«tĆł uĆŸtekę ir ~ sat/vB + Norint patekti ÄŻ ĆĄÄŻ bloką, bĆ«tĆł uĆŸtekę ir ~ sat/vB src/app/components/tx-fee-rating/tx-fee-rating.component.html 2 @@ -5042,7 +5166,7 @@ Transaction Fees - Operacijos mokesčiai + SandoriĆł Mokesčiai src/app/dashboard/dashboard.component.html 6,9 @@ -5051,28 +5175,19 @@ Latest transactions - Naujausios operacijos + Naujausi sandoriai src/app/dashboard/dashboard.component.html 120,123 dashboard.latest-transactions - - USD - USD - - src/app/dashboard/dashboard.component.html - 126,127 - - dashboard.latest-transactions.USD - Minimum fee Minimalus mokestis src/app/dashboard/dashboard.component.html - 203,204 + 210,211 Minimum mempool fee dashboard.minimum-fee @@ -5082,7 +5197,7 @@ Valymas src/app/dashboard/dashboard.component.html - 204,205 + 211,212 Purgin below fee dashboard.purging @@ -5092,7 +5207,7 @@ Atminties naudojimas src/app/dashboard/dashboard.component.html - 216,217 + 223,224 Memory usage dashboard.memory-usage @@ -5102,10 +5217,19 @@ L-BTC apyvartoje src/app/dashboard/dashboard.component.html - 230,232 + 237,239 dashboard.lbtc-pegs-in-circulation + + mempool.space merely provides data about the Bitcoin network. It cannot help you with retrieving funds, confirming your transaction quicker, etc. + mempool.space teikia duomenis apie Bitkoino tinklą. Projektas negali padėti atgauti prarastĆł lėơƳ, greičiau patvirtinti operaciją ir pan. + + src/app/docs/api-docs/api-docs.component.html + 13 + + faq.big-disclaimer + REST API service REST API paslauga @@ -5142,7 +5266,7 @@ Default push: action: 'want', data: ['blocks', ...] to express what you want pushed. Available: blocks, mempool-blocks, live-2h-chart, and stats.Push transactions related to address: 'track-address': '3PbJ...bF9B' to receive all new transactions containing that address as input or output. Returns an array of transactions. address-transactions for new mempool transactions, and block-transactions for new block confirmed transactions. - Numatytasis siuntimas: veiksmas: 'want', duomenys: ['blocks', ...] , kad iĆĄreikĆĄtumėte tai, ką norite pastĆ«mėti. Galimi: blokai , mempool blokai , realaus laiko-2val grafikas , ir statistika . PastĆ«mėti operacijas susietas su adresu: 'track-address': '3PbJ...bF9B' priimti visas naujas operacijas susietas su adresu kaip ÄŻvestis ar iĆĄvestis. Pateikiama kaip operacijĆł rinkinys. adreso-operacijosnaujoms mempool operacijoms, ir bloko operacijosnaujoms bloke patvirtintoms operacijoms. + Numatytas passtĆ«mimas: veiksmas: 'want', data: ['blocks', ...] , iĆĄreikĆĄti tai, ką norite pastĆ«mėti. Galimi: blokai , mempool blokai , realaus laiko-2val grafikas , ir statistika . PastĆ«mėti sandorius susietus su adresu: 'track-address': '3PbJ...bF9B' priimti visus naujus sandorius susietus su adresu kaip ÄŻvestis ar iĆĄvestis. Pateikiama kaip sandoriĆł rinkinys. adreso-sandoriainaujiems mempool sandoriams, ir bloko sandoriainaujiems bloke patvirtintoms sandoriams. src/app/docs/api-docs/api-docs.component.html 109,110 @@ -5214,7 +5338,7 @@ Base fee - Bazės mokestis + Bazinis mokestis src/app/lightning/channel/channel-box/channel-box.component.html 29 @@ -5242,13 +5366,13 @@ src/app/lightning/node/node.component.html - 180,182 + 183,185 shared.m-sats This channel supports zero base fee routing - Ć is kanalas palaiko nulinio bazinio mokesčio marĆĄrutą + Ć is kanalas palaiko nuliniĆł mokesčiĆł marĆĄrutą src/app/lightning/channel/channel-box/channel-box.component.html 44 @@ -5266,7 +5390,7 @@ This channel does not support zero base fee routing - Ć is kanalas nepalaiko nulinio bazinio mokesčio + Ć is kanalas nepalaiko nuliniĆł baziniĆł mokesčiĆł src/app/lightning/channel/channel-box/channel-box.component.html 50 @@ -5324,6 +5448,7 @@ Starting balance + Pradinis balansas src/app/lightning/channel/channel-close-box/channel-close-box.component.html 6 @@ -5333,6 +5458,7 @@ Closing balance + UĆŸdarymo balansas src/app/lightning/channel/channel-close-box/channel-close-box.component.html 12 @@ -5342,7 +5468,7 @@ lightning channel - ĆŸaibatinklio kanalas + "Lightning" kanalas src/app/lightning/channel/channel-preview.component.html 3,5 @@ -5358,7 +5484,7 @@ src/app/lightning/channel/channel.component.html - 11,12 + 13,14 src/app/lightning/channels-list/channels-list.component.html @@ -5375,7 +5501,7 @@ src/app/lightning/channel/channel.component.html - 12,13 + 14,15 src/app/lightning/channels-list/channels-list.component.html @@ -5392,7 +5518,7 @@ src/app/lightning/channel/channel.component.html - 13,14 + 15,16 src/app/lightning/channels-list/channels-list.component.html @@ -5413,7 +5539,7 @@ src/app/lightning/channel/channel.component.html - 29,30 + 36,37 lightning.created @@ -5426,7 +5552,7 @@ src/app/lightning/channel/channel.component.html - 48,49 + 55,56 src/app/lightning/channels-list/channels-list.component.html @@ -5438,7 +5564,7 @@ src/app/lightning/node-statistics/node-statistics.component.html - 47,50 + 46,49 src/app/lightning/nodes-list/nodes-list.component.html @@ -5460,6 +5586,10 @@ src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 60,62 + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 13,14 + src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts 202,201 @@ -5493,14 +5623,14 @@ Lightning channel - Ćœaibatinklio kanalas + "Lightning" kanalas src/app/lightning/channel/channel.component.html - 2,5 + 4,7 src/app/lightning/channel/channel.component.html - 117,119 + 116,118 lightning.channel @@ -5509,11 +5639,11 @@ Atnaujinta src/app/lightning/channel/channel.component.html - 33,34 + 40,41 src/app/lightning/node/node.component.html - 73,75 + 76,78 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -5529,11 +5659,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 14,15 + 16,17 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 14,15 + 16,17 lightning.last-update @@ -5542,7 +5672,7 @@ UĆŸdarymo data src/app/lightning/channel/channel.component.html - 37,38 + 44,45 src/app/lightning/channels-list/channels-list.component.html @@ -5552,27 +5682,28 @@ Closed by + UĆŸdarė src/app/lightning/channel/channel.component.html - 52,54 + 59,61 lightning.closed_by Opening transaction - Atidarymo operacija + Atidarymo sandoris src/app/lightning/channel/channel.component.html - 84,85 + 91,92 lightning.opening-transaction Closing transaction - UĆŸdarymo operacija + UĆŸdarymo sandoris src/app/lightning/channel/channel.component.html - 93,95 + 100,102 lightning.closing-transaction @@ -5584,6 +5715,30 @@ 37 + + Mutually closed + Abipusiai uĆŸdarytas + + src/app/lightning/channel/closing-type/closing-type.component.ts + 20 + + + + Force closed + Priverstinai uĆŸdarytas + + src/app/lightning/channel/closing-type/closing-type.component.ts + 24 + + + + Force closed with penalty + Priverstinai uĆŸdarytas su bauda + + src/app/lightning/channel/closing-type/closing-type.component.ts + 28 + + Open Atidarytas @@ -5631,11 +5786,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 10,11 + 11,12 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 10,12 + 11,13 lightning.alias @@ -5710,6 +5865,24 @@ shared.sats + + avg + vid. + + src/app/lightning/channels-statistics/channels-statistics.component.html + 3,5 + + statistics.average-small + + + med + med. + + src/app/lightning/channels-statistics/channels-statistics.component.html + 6,9 + + statistics.median-small + Avg Capacity Vid. Talpa @@ -5814,7 +5987,7 @@ Lightning node group - Ćœaibatinklio mazgĆł grupė + "Lightning" mazgĆł grupė src/app/lightning/group/group-preview.component.html 3,5 @@ -5838,11 +6011,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 17,18 + 16,17 src/app/lightning/node-statistics/node-statistics.component.html - 54,57 + 53,56 src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html @@ -5891,10 +6064,6 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 11,12 - - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html 12,13 lightning.liquidity @@ -5912,11 +6081,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 29,30 + 28,29 src/app/lightning/node-statistics/node-statistics.component.html - 61,64 + 60,63 src/app/lightning/nodes-list/nodes-list.component.html @@ -5948,11 +6117,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 12,13 + 14,15 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 11,12 + 12,13 src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts @@ -5990,7 +6159,7 @@ src/app/lightning/node/node.component.html - 47,49 + 50,52 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -6006,11 +6175,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 15,17 + 17,20 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 15,17 + 17,20 lightning.location @@ -6034,7 +6203,7 @@ Lightning Network History - Ćœaibo Tinklo Istorija + "Lightning" Tinklo Istorija src/app/lightning/lightning-dashboard/lightning-dashboard.component.html 49 @@ -6048,9 +6217,17 @@ src/app/lightning/lightning-dashboard/lightning-dashboard.component.html 62 + + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html + 4,9 + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts - 29 + 33 + + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 4,9 src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.html @@ -6073,12 +6250,37 @@ Fee distribution + Mokesčio iĆĄskirstymas src/app/lightning/node-fee-chart/node-fee-chart.component.html 2 lightning.node-fee-distribution + + Outgoing Fees + Siuntimo Mokesčiai + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 170 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 208 + + + + Incoming Fees + Gaunami Mokesčiai + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 178 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 222 + + Percentage change past week Praėjusios savaitės procentinis pokytis @@ -6088,28 +6290,28 @@ src/app/lightning/node-statistics/node-statistics.component.html - 18,20 + 17,19 src/app/lightning/node-statistics/node-statistics.component.html - 30,32 + 29,31 mining.percentage-change-last-week Lightning node - Ćœaibatinklio mazgas + "Lightning" mazgas src/app/lightning/node/node-preview.component.html 3,5 src/app/lightning/node/node.component.html - 2,4 + 4,6 src/app/lightning/node/node.component.html - 260,262 + 263,265 lightning.node @@ -6122,7 +6324,7 @@ src/app/lightning/node/node.component.html - 27,30 + 30,33 lightning.active-capacity @@ -6135,7 +6337,7 @@ src/app/lightning/node/node.component.html - 34,38 + 37,41 lightning.active-channels @@ -6148,29 +6350,21 @@ country - - No node found for public key "" - VieĆĄajam raktui mazgas nerastas &quot; &quot; - - src/app/lightning/node/node.component.html - 17,19 - - lightning.node-not-found - Average channel size Vidutinis kanalo dydis src/app/lightning/node/node.component.html - 40,43 + 43,46 lightning.active-channels-avg Avg channel distance + Vid. kanalo atstumas src/app/lightning/node/node.component.html - 56,57 + 59,60 lightning.avg-distance @@ -6179,7 +6373,7 @@ Spalva src/app/lightning/node/node.component.html - 79,81 + 82,84 lightning.color @@ -6188,7 +6382,7 @@ IPT src/app/lightning/node/node.component.html - 86,87 + 89,90 src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html @@ -6201,73 +6395,81 @@ Tik Tor src/app/lightning/node/node.component.html - 93,95 + 96,98 tor Liquidity ad + Likvidumo skelbimas src/app/lightning/node/node.component.html - 138,141 + 141,144 node.liquidity-ad Lease fee rate + Nuomos mokesčio tarifas src/app/lightning/node/node.component.html - 144,147 + 147,150 Liquidity ad lease fee rate liquidity-ad.lease-fee-rate Lease base fee + Nuomos bazinis mokestis src/app/lightning/node/node.component.html - 152,154 + 155,157 liquidity-ad.lease-base-fee Funding weight + Finansavimo svoris src/app/lightning/node/node.component.html - 158,159 + 161,162 liquidity-ad.funding-weight Channel fee rate + Kanalo mokesčio tarifas src/app/lightning/node/node.component.html - 168,171 + 171,174 Liquidity ad channel fee rate liquidity-ad.channel-fee-rate Channel base fee + Kanalo bazinis mokestis src/app/lightning/node/node.component.html - 176,178 + 179,181 liquidity-ad.channel-base-fee Compact lease + Kompaktinė nuoma src/app/lightning/node/node.component.html - 188,190 + 191,193 liquidity-ad.compact-lease TLV extension records + TLV pratęsimo ÄŻraĆĄai src/app/lightning/node/node.component.html - 199,202 + 202,205 node.tlv.records @@ -6276,7 +6478,7 @@ Atviri kanalai src/app/lightning/node/node.component.html - 240,243 + 243,246 lightning.open-channels @@ -6285,7 +6487,7 @@ UĆŸdaryti kanalai src/app/lightning/node/node.component.html - 244,247 + 247,250 lightning.open-channels @@ -6331,7 +6533,7 @@ Geografinės vietos duomenĆł nėra src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts - 218,213 + 219,214 @@ -6345,6 +6547,7 @@ Indexing in progress + Vyksta indeksavimas src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 121,116 @@ -6354,9 +6557,9 @@ 112,107 - - Reachable on Clearnet Only - Pasiekiama tik per Clearnet + + Clearnet and Darknet + Clearnet ir Darknet src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 164,161 @@ -6366,9 +6569,9 @@ 303,302 - - Reachable on Clearnet and Darknet - Galima Pasiekti per Clearnet ir Darknet + + Clearnet Only (IPv4, IPv6) + Tik „Clearnet“ (IPv4, IPv6) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 185,182 @@ -6378,9 +6581,9 @@ 295,294 - - Reachable on Darknet Only - Pasiekiamas tik per Darknet + + Darknet Only (Tor, I2P, cjdns) + Tik „Darknet“ („Tor“, „I2P“, „cjdns“) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 206,203 @@ -6429,7 +6632,7 @@ Lightning nodes in - Ćœaibatinklio mazgai + "Lightning" mazgai src/app/lightning/nodes-per-country/nodes-per-country.component.html 3,4 @@ -6447,7 +6650,7 @@ Top ISP - Populiariausias IPT + Populiariausi IPT src/app/lightning/nodes-per-country/nodes-per-country.component.html 38,40 @@ -6456,7 +6659,7 @@ Lightning nodes in - Ćœaibatinklio mazgai + "Lightning" mazgai src/app/lightning/nodes-per-country/nodes-per-country.component.ts 35 @@ -6530,7 +6733,7 @@ Top 100 ISPs hosting LN nodes - 100 geriausiĆł IPT, kuriuose yra ĆœT mazgai + 100 geriausiĆł IPT, kuriuose yra LN mazgai src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html 31,33 @@ -6551,7 +6754,7 @@ Lightning ISP - Ćœaibatinklio IPT + "Lightning" IPT src/app/lightning/nodes-per-isp/nodes-per-isp-preview.component.html 3,5 @@ -6560,7 +6763,7 @@ Top country - Geriausia ĆĄalis + Top ĆĄalis src/app/lightning/nodes-per-isp/nodes-per-isp-preview.component.html 39,41 @@ -6573,7 +6776,7 @@ Top node - Geriausias mazgas + Top mazgas src/app/lightning/nodes-per-isp/nodes-per-isp-preview.component.html 45,48 @@ -6582,7 +6785,7 @@ Lightning nodes on ISP: [AS] - Ćœaibatinklio mazgai ant IPT: [AS ] + "Lightning" mazgai pagal IPT: [AS ] src/app/lightning/nodes-per-isp/nodes-per-isp-preview.component.ts 44 @@ -6594,7 +6797,7 @@ Lightning nodes on ISP: - Ćœaibatinklio mazgai ant IPT: + "Lightning" mazgai pagal IPT: src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 2,4 @@ -6612,6 +6815,7 @@ Active nodes + AktyvĆ«s mazgai src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 14,18 @@ -6620,7 +6824,7 @@ Top 100 oldest lightning nodes - 100 seniausiĆł ĆŸaibatinklio mazgĆł + Top 100 seniausiĆł "Lightning" mazgĆł src/app/lightning/nodes-ranking/oldest-nodes/oldest-nodes.component.html 3,7 @@ -6629,30 +6833,12 @@ Oldest lightning nodes - Seniausi ĆŸaibatinklio mazgai + Seniausi "Lightning" mazgai src/app/lightning/nodes-ranking/oldest-nodes/oldest-nodes.component.ts 27 - - Top 100 nodes liquidity ranking - 100 geriausiĆł mazgĆł likvidumo reitingas - - src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 3,7 - - lightning.top-100-liquidity - - - Top 100 nodes connectivity ranking - 100 geriausiĆł mazgĆł ryĆĄio reitingas - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 3,7 - - lightning.top-100-connectivity - Oldest nodes Seniausi mazgai @@ -6664,7 +6850,7 @@ Top lightning nodes - Geriausi ĆŸaibatinklio mazgai + Top "Lightning" mazgai src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.ts 22 diff --git a/frontend/src/locale/messages.sv.xlf b/frontend/src/locale/messages.sv.xlf index 5a75337f0..0ba5402ad 100644 --- a/frontend/src/locale/messages.sv.xlf +++ b/frontend/src/locale/messages.sv.xlf @@ -359,11 +359,11 @@ src/app/components/block/block.component.html - 303,304 + 310,311 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 26,27 + 46,47 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -384,11 +384,11 @@ src/app/components/block/block.component.html - 304,305 + 311,312 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 27,28 + 47,48 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -598,7 +598,7 @@ src/app/components/pool-ranking/pool-ranking.component.html - 94,96 + 94,95 @@ -775,16 +775,24 @@ src/app/components/about/about.component.html - 385,389 + 375,378 + + + src/app/components/mining-dashboard/mining-dashboard.component.html + 88 src/app/dashboard/dashboard.component.html - 150,152 + 157,159 src/app/docs/docs/docs.component.html 51 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 97 + Terms of Service shared.terms-of-service @@ -795,14 +803,22 @@ src/app/bisq/bisq-main-dashboard/bisq-main-dashboard.component.html 113,120 + + src/app/components/mining-dashboard/mining-dashboard.component.html + 90 + src/app/dashboard/dashboard.component.html - 152,154 + 159,161 src/app/docs/docs/docs.component.html 53 + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 99 + Privacy Policy shared.privacy-policy @@ -990,7 +1006,7 @@ src/app/dashboard/dashboard.component.html - 124,125 + 124,126 @@ -1038,7 +1054,7 @@ src/app/components/transaction/transaction.component.html - 158,160 + 152,154 src/app/components/transactions-list/transactions-list.component.html @@ -1054,11 +1070,11 @@ src/app/components/block/block.component.html - 245,246 + 252,253 src/app/components/transaction/transaction.component.html - 288,290 + 282,284 transaction.version @@ -1108,7 +1124,7 @@ src/app/components/transactions-list/transactions-list.component.html - 294,295 + 296,297 Transaction singular confirmation count shared.confirmation-count.singular @@ -1130,7 +1146,7 @@ src/app/components/transactions-list/transactions-list.component.html - 295,296 + 297,298 Transaction plural confirmation count shared.confirmation-count.plural @@ -1142,10 +1158,6 @@ src/app/bisq/bisq-transaction/bisq-transaction.component.html 43,45 - - src/app/components/transaction/transaction.component.html - 65,67 - Transaction included in block transaction.included-in-block @@ -1158,11 +1170,11 @@ src/app/components/transaction/transaction.component.html - 77,80 + 71,74 src/app/components/transaction/transaction.component.html - 135,138 + 129,132 Transaction features transaction.features @@ -1190,11 +1202,11 @@ src/app/components/transaction/transaction.component.html - 262,267 + 256,261 src/app/components/transaction/transaction.component.html - 406,412 + 400,406 transaction.details @@ -1211,11 +1223,11 @@ src/app/components/transaction/transaction.component.html - 249,253 + 243,247 src/app/components/transaction/transaction.component.html - 377,383 + 371,377 Transaction inputs and outputs transaction.inputs-and-outputs @@ -1233,7 +1245,7 @@ src/app/components/transaction/transaction.component.ts - 241,240 + 244,243 @@ -1253,7 +1265,7 @@ src/app/components/transaction/transaction.component.html - 159,160 + 153,154 src/app/dashboard/dashboard.component.html @@ -1269,7 +1281,7 @@ src/app/components/transaction/transaction.component.html - 72,73 + 66,67 Transaction Confirmed state transaction.confirmed @@ -1440,7 +1452,7 @@ VĂ„r mempool- och blockchainutforskare för bitcoincommunitit, med fokus pĂ„ marknaden för transaktionsavgifter och multilagerekosystemet, helt sjĂ€lvhostad utan betrodda tredjeparttjĂ€nster. src/app/components/about/about.component.html - 13,17 + 13,16 @@ -1448,7 +1460,7 @@ Företagssponsorer 🚀 src/app/components/about/about.component.html - 29,32 + 19,22 about.sponsors.enterprise.withRocket @@ -1457,7 +1469,7 @@ Communitysponsorer ❀ src/app/components/about/about.component.html - 177,180 + 167,170 about.sponsors.withHeart @@ -1466,7 +1478,7 @@ Communityintegrationer src/app/components/about/about.component.html - 191,193 + 181,183 about.community-integrations @@ -1475,7 +1487,7 @@ Communityallianser src/app/components/about/about.component.html - 285,287 + 275,277 about.alliances @@ -1484,7 +1496,7 @@ ProjektöversĂ€ttare src/app/components/about/about.component.html - 301,303 + 291,293 about.translators @@ -1493,7 +1505,7 @@ Projektbidragare src/app/components/about/about.component.html - 315,317 + 305,307 about.contributors @@ -1502,7 +1514,7 @@ Projektmedlemmar src/app/components/about/about.component.html - 327,329 + 317,319 about.project_members @@ -1511,7 +1523,7 @@ ProjektunderhĂ„llare src/app/components/about/about.component.html - 340,342 + 330,332 about.maintainers @@ -1520,7 +1532,7 @@ Om src/app/components/about/about.component.ts - 39 + 42 src/app/components/bisq-master-page/bisq-master-page.component.html @@ -1569,7 +1581,7 @@ src/app/components/amount/amount.component.html - 6,9 + 20,23 src/app/components/asset-circulation/asset-circulation.component.html @@ -1585,7 +1597,7 @@ src/app/components/transactions-list/transactions-list.component.html - 302,304 + 304,306 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -2049,7 +2061,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 161 + 165 @@ -2065,7 +2077,7 @@ src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 163 + 167 @@ -2077,7 +2089,7 @@ src/app/components/block-fees-graph/block-fees-graph.component.ts - 62 + 67 src/app/components/graphs/graphs.component.html @@ -2090,15 +2102,15 @@ Indexerar block src/app/components/block-fees-graph/block-fees-graph.component.ts - 110,105 + 116,111 src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 108,103 + 113,108 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 115,110 + 116,111 src/app/components/hashrate-chart/hashrate-chart.component.ts @@ -2143,7 +2155,7 @@ src/app/components/transaction/transaction.component.html - 478 + 472 src/app/components/tx-bowtie-graph-tooltip/tx-bowtie-graph-tooltip.component.html @@ -2169,11 +2181,11 @@ src/app/components/transaction/transaction.component.html - 478,479 + 472 src/app/components/transactions-list/transactions-list.component.html - 286,287 + 288 sat shared.sat @@ -2187,11 +2199,11 @@ src/app/components/transaction/transaction.component.html - 161,165 + 155,159 src/app/components/transaction/transaction.component.html - 481,483 + 475,477 src/app/lightning/channel/channel-box/channel-box.component.html @@ -2221,19 +2233,19 @@ src/app/components/block/block.component.html - 123,126 + 124,127 src/app/components/block/block.component.html - 127 + 128,130 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 12,14 + 19,22 src/app/components/blockchain-blocks/blockchain-blocks.component.html - 15,17 + 30,33 src/app/components/fees-box/fees-box.component.html @@ -2273,27 +2285,27 @@ src/app/components/transaction/transaction.component.html - 173,174 + 167,168 src/app/components/transaction/transaction.component.html - 184,185 + 178,179 src/app/components/transaction/transaction.component.html - 195,196 + 189,190 src/app/components/transaction/transaction.component.html - 483,486 + 477,480 src/app/components/transaction/transaction.component.html - 494,496 + 488,490 src/app/components/transactions-list/transactions-list.component.html - 286 + 286,287 src/app/dashboard/dashboard.component.html @@ -2301,7 +2313,7 @@ src/app/dashboard/dashboard.component.html - 206,210 + 213,217 sat/vB shared.sat-vbyte @@ -2315,11 +2327,11 @@ src/app/components/transaction/transaction.component.html - 160,162 + 154,156 src/app/components/transaction/transaction.component.html - 274,277 + 268,271 Transaction Virtual Size transaction.vsize @@ -2432,7 +2444,7 @@ src/app/components/block-rewards-graph/block-rewards-graph.component.ts - 60 + 65 src/app/components/graphs/graphs.component.html @@ -2462,11 +2474,11 @@ Storlek src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 180,179 + 184,183 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 226,224 + 239,237 src/app/components/block/block.component.html @@ -2494,7 +2506,7 @@ src/app/components/transaction/transaction.component.html - 270,272 + 264,266 src/app/dashboard/dashboard.component.html @@ -2506,11 +2518,11 @@ Viktenheter src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 188,187 + 192,191 src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts - 257,254 + 270,267 src/app/components/block/block-preview.component.html @@ -2522,7 +2534,19 @@ src/app/components/transaction/transaction.component.html - 278,280 + 272,274 + + + + Size per weight + Storlek per viktenhet + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 200,199 + + + src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.ts + 282,279 @@ -2538,15 +2562,6 @@ shared.block-title - - - - - src/app/components/block/block-preview.component.html - 11,12 - - shared.block-title - Median fee Medianavgift @@ -2556,7 +2571,7 @@ src/app/components/block/block.component.html - 126,127 + 127,128 src/app/components/mempool-block/mempool-block.component.html @@ -2573,11 +2588,11 @@ src/app/components/block/block.component.html - 131,133 + 138,140 src/app/components/block/block.component.html - 157,160 + 164,167 src/app/components/mempool-block/mempool-block.component.html @@ -2595,7 +2610,7 @@ src/app/components/block/block.component.html - 166,168 + 173,175 block.miner @@ -2608,7 +2623,7 @@ src/app/components/block/block.component.ts - 234 + 242 @@ -2662,12 +2677,20 @@ 60,63 - src/app/lightning/node/node.component.html - 52,55 + src/app/components/pool-ranking/pool-ranking.component.html + 121,124 + + + src/app/lightning/channel/closing-type/closing-type.component.ts + 32 src/app/lightning/node/node.component.html - 96,100 + 55,58 + + + src/app/lightning/node/node.component.html + 99,103 src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts @@ -2684,7 +2707,7 @@ Avgiftspann src/app/components/block/block.component.html - 122,123 + 123,124 src/app/components/mempool-block/mempool-block.component.html @@ -2697,7 +2720,7 @@ Baserat pĂ„ en genomsnittlig native segwit-transaktion pĂ„ 140 vBytes src/app/components/block/block.component.html - 127,129 + 131,136 src/app/components/fees-box/fees-box.component.html @@ -2721,16 +2744,16 @@ Transaction fee tooltip - - Subsidy + fees: - Subvention + avgifter: + + Subsidy + fees + Subvention + avgifter src/app/components/block/block.component.html - 146,149 + 153,156 src/app/components/block/block.component.html - 161,165 + 168,172 Total subsidy and fees in a block block.subsidy-and-fees @@ -2740,7 +2763,7 @@ FörvĂ€ntat src/app/components/block/block.component.html - 209 + 216 block.expected @@ -2749,11 +2772,11 @@ beta src/app/components/block/block.component.html - 209,210 + 216,217 src/app/components/block/block.component.html - 215,217 + 222,224 beta @@ -2762,7 +2785,7 @@ Faktiskt src/app/components/block/block.component.html - 211,215 + 218,222 block.actual @@ -2771,7 +2794,7 @@ FörvĂ€ntat block src/app/components/block/block.component.html - 215 + 222 block.expected-block @@ -2780,7 +2803,7 @@ Faktiskt block src/app/components/block/block.component.html - 224 + 231 block.actual-block @@ -2789,7 +2812,7 @@ Bitar src/app/components/block/block.component.html - 249,251 + 256,258 block.bits @@ -2798,7 +2821,7 @@ Merkle root src/app/components/block/block.component.html - 253,255 + 260,262 block.merkle-root @@ -2807,7 +2830,7 @@ SvĂ„righet src/app/components/block/block.component.html - 264,267 + 271,274 src/app/components/difficulty-adjustments-table/difficulty-adjustments-table.component.html @@ -2836,7 +2859,7 @@ Nonce src/app/components/block/block.component.html - 268,270 + 275,277 block.nonce @@ -2845,7 +2868,7 @@ Block Header Hex src/app/components/block/block.component.html - 272,273 + 279,280 block.header @@ -2854,7 +2877,7 @@ Granskning src/app/components/block/block.component.html - 290,294 + 297,301 Toggle Audit block.toggle-audit @@ -2864,23 +2887,23 @@ Detaljer src/app/components/block/block.component.html - 297,301 + 304,308 src/app/components/transaction/transaction.component.html - 254,259 + 248,253 src/app/lightning/channel/channel.component.html - 86,88 + 93,95 src/app/lightning/channel/channel.component.html - 96,98 + 103,105 src/app/lightning/node/node.component.html - 218,222 + 221,225 Transaction Details transaction.details @@ -2890,20 +2913,16 @@ Fel vid laddning av data. src/app/components/block/block.component.html - 316,318 + 323,325 src/app/components/block/block.component.html - 355,359 + 362,366 src/app/lightning/channel/channel-preview.component.html 70,75 - - src/app/lightning/channel/channel.component.html - 109,115 - src/app/lightning/node/node-preview.component.html 66,69 @@ -2919,7 +2938,7 @@ Varför Ă€r blocket tomt? src/app/components/block/block.component.html - 377,383 + 384,390 block.empty-block-explanation @@ -3028,7 +3047,7 @@ src/app/dashboard/dashboard.component.html - 212,216 + 219,223 dashboard.txs @@ -3267,7 +3286,7 @@ src/app/dashboard/dashboard.component.html - 239,240 + 246,247 dashboard.incoming-transactions @@ -3280,7 +3299,7 @@ src/app/dashboard/dashboard.component.html - 242,245 + 249,252 dashboard.backend-is-synchronizing @@ -3293,7 +3312,7 @@ src/app/dashboard/dashboard.component.html - 247,252 + 254,259 vB/s shared.vbytes-per-second @@ -3307,7 +3326,7 @@ src/app/dashboard/dashboard.component.html - 210,211 + 217,218 Unconfirmed count dashboard.unconfirmed @@ -3683,6 +3702,32 @@ dashboard.adjustments + + Broadcast Transaction + Publicera transaktion + + src/app/components/mining-dashboard/mining-dashboard.component.html + 92 + + + src/app/components/push-transaction/push-transaction.component.html + 2 + + + src/app/components/push-transaction/push-transaction.component.html + 8 + + + src/app/dashboard/dashboard.component.html + 161,169 + + + src/app/lightning/lightning-dashboard/lightning-dashboard.component.html + 102 + + Broadcast Transaction + shared.broadcast-transaction + Pools luck (1 week) Pooltursamhet (1 vecka) @@ -3750,7 +3795,7 @@ src/app/components/pool-ranking/pool-ranking.component.html - 136,138 + 152,154 master-page.blocks @@ -3780,12 +3825,25 @@ mining.rank + + Avg Health + SnitthĂ€lsa + + src/app/components/pool-ranking/pool-ranking.component.html + 96,97 + + + src/app/components/pool-ranking/pool-ranking.component.html + 96,98 + + latest-blocks.avg_health + Empty blocks Tomma block src/app/components/pool-ranking/pool-ranking.component.html - 95,98 + 97,100 mining.empty-blocks @@ -3794,7 +3852,7 @@ Alla miners src/app/components/pool-ranking/pool-ranking.component.html - 113,114 + 129,130 mining.all-miners @@ -3803,7 +3861,7 @@ Pools tur (1v) src/app/components/pool-ranking/pool-ranking.component.html - 130,132 + 146,148 mining.miners-luck @@ -3812,7 +3870,7 @@ Antal pooler (1v) src/app/components/pool-ranking/pool-ranking.component.html - 142,144 + 158,160 mining.miners-count @@ -3821,7 +3879,7 @@ Miningpooler src/app/components/pool-ranking/pool-ranking.component.ts - 57 + 58 @@ -4048,24 +4106,6 @@ latest-blocks.coinbasetag - - Broadcast Transaction - Publicera transaktion - - src/app/components/push-transaction/push-transaction.component.html - 2 - - - src/app/components/push-transaction/push-transaction.component.html - 8 - - - src/app/dashboard/dashboard.component.html - 154,162 - - Broadcast Transaction - shared.broadcast-transaction - Transaction hex Transaktions-hex @@ -4075,7 +4115,7 @@ src/app/components/transaction/transaction.component.html - 296,297 + 290,291 transaction.hex @@ -4200,6 +4240,78 @@ search-form.search-title + + Bitcoin Block Height + Bitcoin-blockhöjd + + src/app/components/search-form/search-results/search-results.component.html + 3 + + search.bitcoin-block-height + + + Bitcoin Transaction + Bitcoin-transaktion + + src/app/components/search-form/search-results/search-results.component.html + 9 + + search.bitcoin-transaction + + + Bitcoin Address + Bitcoin-adress + + src/app/components/search-form/search-results/search-results.component.html + 15 + + search.bitcoin-address + + + Bitcoin Block + Bitcoin-block + + src/app/components/search-form/search-results/search-results.component.html + 21 + + search.bitcoin-block + + + Bitcoin Addresses + Bitcoin-adresser + + src/app/components/search-form/search-results/search-results.component.html + 27 + + search.bitcoin-addresses + + + Lightning Nodes + Lightingnoder + + src/app/components/search-form/search-results/search-results.component.html + 35 + + search.lightning-nodes + + + Lightning Channels + Lightningkanaler + + src/app/components/search-form/search-results/search-results.component.html + 43 + + search.lightning-channels + + + Go to "" + GĂ„ till "" + + src/app/components/search-form/search-results/search-results.component.html + 52 + + search.go-to + Mempool by vBytes (sat/vByte) Mempool i vBytes (sat/vByte) @@ -4484,7 +4596,7 @@ src/app/components/transactions-list/transactions-list.component.html - 298,301 + 300,303 Transaction unconfirmed state transaction.unconfirmed @@ -4494,11 +4606,11 @@ Först sedd src/app/components/transaction/transaction.component.html - 108,109 + 102,103 src/app/lightning/node/node.component.html - 67,70 + 70,73 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -4514,11 +4626,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 13,15 + 15,16 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 13,15 + 15,16 Transaction first seen transaction.first-seen @@ -4528,7 +4640,7 @@ ETA src/app/components/transaction/transaction.component.html - 115,116 + 109,110 Transaction ETA transaction.eta @@ -4538,7 +4650,7 @@ Om flera timmar (eller mer) src/app/components/transaction/transaction.component.html - 121,124 + 115,118 Transaction ETA in several hours or more transaction.eta.in-several-hours @@ -4548,11 +4660,11 @@ Ättling src/app/components/transaction/transaction.component.html - 168,170 + 162,164 src/app/components/transaction/transaction.component.html - 179,181 + 173,175 Descendant transaction.descendant @@ -4562,7 +4674,7 @@ Förfader src/app/components/transaction/transaction.component.html - 190,192 + 184,186 Transaction Ancestor transaction.ancestor @@ -4572,11 +4684,11 @@ Flöde src/app/components/transaction/transaction.component.html - 208,211 + 202,205 src/app/components/transaction/transaction.component.html - 346,350 + 340,344 Transaction flow transaction.flow @@ -4586,7 +4698,7 @@ Dölj diagram src/app/components/transaction/transaction.component.html - 211,216 + 205,210 hide-diagram @@ -4595,7 +4707,7 @@ Visa mer src/app/components/transaction/transaction.component.html - 231,233 + 225,227 src/app/components/transactions-list/transactions-list.component.html @@ -4612,7 +4724,7 @@ Visa mindre src/app/components/transaction/transaction.component.html - 233,239 + 227,233 src/app/components/transactions-list/transactions-list.component.html @@ -4625,7 +4737,7 @@ Visa diagram src/app/components/transaction/transaction.component.html - 253,254 + 247,248 show-diagram @@ -4634,7 +4746,7 @@ Locktime src/app/components/transaction/transaction.component.html - 292,294 + 286,288 transaction.locktime @@ -4643,7 +4755,7 @@ Transaktionen hittades inte src/app/components/transaction/transaction.component.html - 455,456 + 449,450 transaction.error.transaction-not-found @@ -4652,7 +4764,7 @@ VĂ€ntar pĂ„ den att dyka upp i mempoolen... src/app/components/transaction/transaction.component.html - 456,461 + 450,455 transaction.error.waiting-for-it-to-appear @@ -4661,7 +4773,7 @@ Effektiv avgiftssats src/app/components/transaction/transaction.component.html - 491,494 + 485,488 Effective transaction fee rate transaction.effective-fee-rate @@ -4810,7 +4922,7 @@ Visa fler inputs för att visa feedata src/app/components/transactions-list/transactions-list.component.html - 288,291 + 290,293 transactions-list.load-to-reveal-fee-info @@ -4819,7 +4931,7 @@ Ă„terstĂ„r src/app/components/transactions-list/transactions-list.component.html - 330,331 + 332,333 x-remaining @@ -5070,21 +5182,12 @@ dashboard.latest-transactions - - USD - USD - - src/app/dashboard/dashboard.component.html - 126,127 - - dashboard.latest-transactions.USD - Minimum fee Minimumavgift src/app/dashboard/dashboard.component.html - 203,204 + 210,211 Minimum mempool fee dashboard.minimum-fee @@ -5094,7 +5197,7 @@ Förkastar src/app/dashboard/dashboard.component.html - 204,205 + 211,212 Purgin below fee dashboard.purging @@ -5104,7 +5207,7 @@ MinnesanvĂ€ndning src/app/dashboard/dashboard.component.html - 216,217 + 223,224 Memory usage dashboard.memory-usage @@ -5114,10 +5217,19 @@ L-BTC i cirkulation src/app/dashboard/dashboard.component.html - 230,232 + 237,239 dashboard.lbtc-pegs-in-circulation + + mempool.space merely provides data about the Bitcoin network. It cannot help you with retrieving funds, confirming your transaction quicker, etc. + mempool.space tillhandahĂ„ller bara data om Bitcoin-nĂ€tverket. Det kan inte hjĂ€lpa dig med att fĂ„ tillbaka pengar, bekrĂ€fta din transaktion snabbare, etc. + + src/app/docs/api-docs/api-docs.component.html + 13 + + faq.big-disclaimer + REST API service REST API service @@ -5254,7 +5366,7 @@ src/app/lightning/node/node.component.html - 180,182 + 183,185 shared.m-sats @@ -5372,7 +5484,7 @@ src/app/lightning/channel/channel.component.html - 11,12 + 13,14 src/app/lightning/channels-list/channels-list.component.html @@ -5389,7 +5501,7 @@ src/app/lightning/channel/channel.component.html - 12,13 + 14,15 src/app/lightning/channels-list/channels-list.component.html @@ -5406,7 +5518,7 @@ src/app/lightning/channel/channel.component.html - 13,14 + 15,16 src/app/lightning/channels-list/channels-list.component.html @@ -5427,7 +5539,7 @@ src/app/lightning/channel/channel.component.html - 29,30 + 36,37 lightning.created @@ -5440,7 +5552,7 @@ src/app/lightning/channel/channel.component.html - 48,49 + 55,56 src/app/lightning/channels-list/channels-list.component.html @@ -5452,7 +5564,7 @@ src/app/lightning/node-statistics/node-statistics.component.html - 47,50 + 46,49 src/app/lightning/nodes-list/nodes-list.component.html @@ -5474,6 +5586,10 @@ src/app/lightning/nodes-per-isp/nodes-per-isp.component.html 60,62 + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 13,14 + src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts 202,201 @@ -5510,11 +5626,11 @@ Lightningkanal src/app/lightning/channel/channel.component.html - 2,5 + 4,7 src/app/lightning/channel/channel.component.html - 117,119 + 116,118 lightning.channel @@ -5523,11 +5639,11 @@ Senast uppdaterad src/app/lightning/channel/channel.component.html - 33,34 + 40,41 src/app/lightning/node/node.component.html - 73,75 + 76,78 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -5543,11 +5659,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 14,15 + 16,17 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 14,15 + 16,17 lightning.last-update @@ -5556,7 +5672,7 @@ StĂ€ngningsdatum src/app/lightning/channel/channel.component.html - 37,38 + 44,45 src/app/lightning/channels-list/channels-list.component.html @@ -5569,7 +5685,7 @@ StĂ€ngd av src/app/lightning/channel/channel.component.html - 52,54 + 59,61 lightning.closed_by @@ -5578,7 +5694,7 @@ Öppningstransaktion src/app/lightning/channel/channel.component.html - 84,85 + 91,92 lightning.opening-transaction @@ -5587,7 +5703,7 @@ StĂ€ngningstransaktion src/app/lightning/channel/channel.component.html - 93,95 + 100,102 lightning.closing-transaction @@ -5599,6 +5715,30 @@ 37 + + Mutually closed + Ömsesidigt stĂ€ngd + + src/app/lightning/channel/closing-type/closing-type.component.ts + 20 + + + + Force closed + TvĂ„ngsstĂ€ngd + + src/app/lightning/channel/closing-type/closing-type.component.ts + 24 + + + + Force closed with penalty + TvĂ„ngsstĂ€ngd med straff + + src/app/lightning/channel/closing-type/closing-type.component.ts + 28 + + Open Öppen @@ -5646,11 +5786,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 10,11 + 11,12 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 10,12 + 11,13 lightning.alias @@ -5725,6 +5865,24 @@ shared.sats + + avg + snitt + + src/app/lightning/channels-statistics/channels-statistics.component.html + 3,5 + + statistics.average-small + + + med + med + + src/app/lightning/channels-statistics/channels-statistics.component.html + 6,9 + + statistics.median-small + Avg Capacity Snitt kapacitet @@ -5853,11 +6011,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 17,18 + 16,17 src/app/lightning/node-statistics/node-statistics.component.html - 54,57 + 53,56 src/app/lightning/nodes-per-country-chart/nodes-per-country-chart.component.html @@ -5906,10 +6064,6 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 11,12 - - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html 12,13 lightning.liquidity @@ -5927,11 +6081,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 29,30 + 28,29 src/app/lightning/node-statistics/node-statistics.component.html - 61,64 + 60,63 src/app/lightning/nodes-list/nodes-list.component.html @@ -5963,11 +6117,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 12,13 + 14,15 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 11,12 + 12,13 src/app/lightning/statistics-chart/lightning-statistics-chart.component.ts @@ -6005,7 +6159,7 @@ src/app/lightning/node/node.component.html - 47,49 + 50,52 src/app/lightning/nodes-per-country/nodes-per-country.component.html @@ -6021,11 +6175,11 @@ src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 15,17 + 17,20 src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 15,17 + 17,20 lightning.location @@ -6063,9 +6217,17 @@ src/app/lightning/lightning-dashboard/lightning-dashboard.component.html 62 + + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html + 4,9 + src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.ts - 29 + 33 + + + src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html + 4,9 src/app/lightning/nodes-rankings-dashboard/nodes-rankings-dashboard.component.html @@ -6095,6 +6257,30 @@ lightning.node-fee-distribution + + Outgoing Fees + UtgĂ„ende avgifter + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 170 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 208 + + + + Incoming Fees + Inkommande avgifter + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 178 + + + src/app/lightning/node-fee-chart/node-fee-chart.component.ts + 222 + + Percentage change past week Procentuell förĂ€ndring senaste veckan @@ -6104,11 +6290,11 @@ src/app/lightning/node-statistics/node-statistics.component.html - 18,20 + 17,19 src/app/lightning/node-statistics/node-statistics.component.html - 30,32 + 29,31 mining.percentage-change-last-week @@ -6121,11 +6307,11 @@ src/app/lightning/node/node.component.html - 2,4 + 4,6 src/app/lightning/node/node.component.html - 260,262 + 263,265 lightning.node @@ -6138,7 +6324,7 @@ src/app/lightning/node/node.component.html - 27,30 + 30,33 lightning.active-capacity @@ -6151,7 +6337,7 @@ src/app/lightning/node/node.component.html - 34,38 + 37,41 lightning.active-channels @@ -6164,21 +6350,12 @@ country - - No node found for public key "" - Ingen nod hittades för Public Key &quot; &quot; - - src/app/lightning/node/node.component.html - 17,19 - - lightning.node-not-found - Average channel size Snitt kanalstorlek src/app/lightning/node/node.component.html - 40,43 + 43,46 lightning.active-channels-avg @@ -6187,7 +6364,7 @@ Snitt kanalavstĂ„nd src/app/lightning/node/node.component.html - 56,57 + 59,60 lightning.avg-distance @@ -6196,7 +6373,7 @@ FĂ€rg src/app/lightning/node/node.component.html - 79,81 + 82,84 lightning.color @@ -6205,7 +6382,7 @@ ISP src/app/lightning/node/node.component.html - 86,87 + 89,90 src/app/lightning/nodes-per-isp-chart/nodes-per-isp-chart.component.html @@ -6218,7 +6395,7 @@ Exklusivt pĂ„ Tor src/app/lightning/node/node.component.html - 93,95 + 96,98 tor @@ -6227,7 +6404,7 @@ Likviditetsannons src/app/lightning/node/node.component.html - 138,141 + 141,144 node.liquidity-ad @@ -6236,7 +6413,7 @@ Lease avgiftnivĂ„ src/app/lightning/node/node.component.html - 144,147 + 147,150 Liquidity ad lease fee rate liquidity-ad.lease-fee-rate @@ -6246,7 +6423,7 @@ Lease basavgift src/app/lightning/node/node.component.html - 152,154 + 155,157 liquidity-ad.lease-base-fee @@ -6255,7 +6432,7 @@ Finansieringsweight src/app/lightning/node/node.component.html - 158,159 + 161,162 liquidity-ad.funding-weight @@ -6264,7 +6441,7 @@ Kanal avgiftsnivĂ„ src/app/lightning/node/node.component.html - 168,171 + 171,174 Liquidity ad channel fee rate liquidity-ad.channel-fee-rate @@ -6274,7 +6451,7 @@ Kanal basavgift src/app/lightning/node/node.component.html - 176,178 + 179,181 liquidity-ad.channel-base-fee @@ -6283,7 +6460,7 @@ Kompakt lease src/app/lightning/node/node.component.html - 188,190 + 191,193 liquidity-ad.compact-lease @@ -6292,7 +6469,7 @@ TLV-tillĂ€ggsposter src/app/lightning/node/node.component.html - 199,202 + 202,205 node.tlv.records @@ -6301,7 +6478,7 @@ Öppna kanaler src/app/lightning/node/node.component.html - 240,243 + 243,246 lightning.open-channels @@ -6310,7 +6487,7 @@ StĂ€ngda kanaler src/app/lightning/node/node.component.html - 244,247 + 247,250 lightning.open-channels @@ -6356,7 +6533,7 @@ Ingen geolokaliseringsdata tillgĂ€nglig src/app/lightning/nodes-channels-map/nodes-channels-map.component.ts - 218,213 + 219,214 @@ -6380,9 +6557,9 @@ 112,107 - - Reachable on Clearnet Only - Kan endast nĂ„s pĂ„ Clearnet + + Clearnet and Darknet + Clearnet och Darknet src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 164,161 @@ -6392,9 +6569,9 @@ 303,302 - - Reachable on Clearnet and Darknet - Kan nĂ„s pĂ„ Clearnet och Darknet + + Clearnet Only (IPv4, IPv6) + Endast Clearnet (IPv4, IPv6) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 185,182 @@ -6404,9 +6581,9 @@ 295,294 - - Reachable on Darknet Only - Kan endast nĂ„s pĂ„ Darknet + + Darknet Only (Tor, I2P, cjdns) + Endast Darknet (Tor, I2P, cjdns) src/app/lightning/nodes-networks-chart/nodes-networks-chart.component.ts 206,203 @@ -6662,24 +6839,6 @@ 27 - - Top 100 nodes liquidity ranking - Topp 100 noder likviditetsrankning - - src/app/lightning/nodes-ranking/top-nodes-per-capacity/top-nodes-per-capacity.component.html - 3,7 - - lightning.top-100-liquidity - - - Top 100 nodes connectivity ranking - Topp 100 noder anslutningsrankning - - src/app/lightning/nodes-ranking/top-nodes-per-channels/top-nodes-per-channels.component.html - 3,7 - - lightning.top-100-connectivity - Oldest nodes Äldsta noder From 5937e959c3085b56c4c027f0da9fbd7ce7396a3c Mon Sep 17 00:00:00 2001 From: Mononaut Date: Mon, 6 Mar 2023 19:59:56 -0600 Subject: [PATCH 092/130] Fix miscellaneous RTL layout bugs --- .../block-fees-graph.component.scss | 25 ---------- .../block-prediction-graph.component.scss | 25 ---------- .../block-rewards-graph.component.scss | 25 ---------- .../block-sizes-weights-graph.component.scss | 25 ---------- .../components/graphs/graphs.component.html | 7 ++- .../components/graphs/graphs.component.scss | 11 +++- .../hashrate-chart.component.scss | 25 ---------- .../hashrate-chart-pools.component.scss | 25 ---------- .../pool-ranking/pool-ranking.component.scss | 25 ---------- .../lightning/channel/channel.component.scss | 2 +- .../channels-list.component.scss | 8 +++ .../app/lightning/group/group.component.html | 2 +- .../app/lightning/group/group.component.scss | 16 +++++- .../app/lightning/node/node.component.html | 2 +- .../nodes-networks-chart.component.scss | 25 ---------- .../nodes-per-isp-chart.component.scss | 25 ---------- .../lightning-statistics-chart.component.scss | 25 ---------- frontend/src/styles.scss | 50 ++++++++++++++++--- 18 files changed, 82 insertions(+), 266 deletions(-) diff --git a/frontend/src/app/components/block-fees-graph/block-fees-graph.component.scss b/frontend/src/app/components/block-fees-graph/block-fees-graph.component.scss index ec1755e7d..65447419a 100644 --- a/frontend/src/app/components/block-fees-graph/block-fees-graph.component.scss +++ b/frontend/src/app/components/block-fees-graph/block-fees-graph.component.scss @@ -54,31 +54,6 @@ max-height: 270px; } -.formRadioGroup { - margin-top: 6px; - display: flex; - flex-direction: column; - @media (min-width: 991px) { - position: relative; - top: -100px; - } - @media (min-width: 830px) and (max-width: 991px) { - position: relative; - top: 0px; - } - @media (min-width: 830px) { - flex-direction: row; - float: right; - margin-top: 0px; - } - .btn-sm { - font-size: 9px; - @media (min-width: 830px) { - font-size: 14px; - } - } -} - .disabled { pointer-events: none; opacity: 0.5; diff --git a/frontend/src/app/components/block-prediction-graph/block-prediction-graph.component.scss b/frontend/src/app/components/block-prediction-graph/block-prediction-graph.component.scss index ec1755e7d..65447419a 100644 --- a/frontend/src/app/components/block-prediction-graph/block-prediction-graph.component.scss +++ b/frontend/src/app/components/block-prediction-graph/block-prediction-graph.component.scss @@ -54,31 +54,6 @@ max-height: 270px; } -.formRadioGroup { - margin-top: 6px; - display: flex; - flex-direction: column; - @media (min-width: 991px) { - position: relative; - top: -100px; - } - @media (min-width: 830px) and (max-width: 991px) { - position: relative; - top: 0px; - } - @media (min-width: 830px) { - flex-direction: row; - float: right; - margin-top: 0px; - } - .btn-sm { - font-size: 9px; - @media (min-width: 830px) { - font-size: 14px; - } - } -} - .disabled { pointer-events: none; opacity: 0.5; diff --git a/frontend/src/app/components/block-rewards-graph/block-rewards-graph.component.scss b/frontend/src/app/components/block-rewards-graph/block-rewards-graph.component.scss index ec1755e7d..65447419a 100644 --- a/frontend/src/app/components/block-rewards-graph/block-rewards-graph.component.scss +++ b/frontend/src/app/components/block-rewards-graph/block-rewards-graph.component.scss @@ -54,31 +54,6 @@ max-height: 270px; } -.formRadioGroup { - margin-top: 6px; - display: flex; - flex-direction: column; - @media (min-width: 991px) { - position: relative; - top: -100px; - } - @media (min-width: 830px) and (max-width: 991px) { - position: relative; - top: 0px; - } - @media (min-width: 830px) { - flex-direction: row; - float: right; - margin-top: 0px; - } - .btn-sm { - font-size: 9px; - @media (min-width: 830px) { - font-size: 14px; - } - } -} - .disabled { pointer-events: none; opacity: 0.5; diff --git a/frontend/src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.scss b/frontend/src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.scss index 85765e0e1..65447419a 100644 --- a/frontend/src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.scss +++ b/frontend/src/app/components/block-sizes-weights-graph/block-sizes-weights-graph.component.scss @@ -54,31 +54,6 @@ max-height: 270px; } -.formRadioGroup { - margin-top: 6px; - display: flex; - flex-direction: column; - @media (min-width: 1130px) { - position: relative; - top: -100px; - } - @media (min-width: 830px) and (max-width: 1130px) { - position: relative; - top: 0px; - } - @media (min-width: 830px) { - flex-direction: row; - float: right; - margin-top: 0px; - } - .btn-sm { - font-size: 9px; - @media (min-width: 830px) { - font-size: 14px; - } - } -} - .disabled { pointer-events: none; opacity: 0.5; diff --git a/frontend/src/app/components/graphs/graphs.component.html b/frontend/src/app/components/graphs/graphs.component.html index af5136a38..105c6cbf2 100644 --- a/frontend/src/app/components/graphs/graphs.component.html +++ b/frontend/src/app/components/graphs/graphs.component.html @@ -1,10 +1,9 @@ -