Merge pull request #4428 from mempool/simon/i18n-fixes-231125
Updating and correcting i18n strings
This commit is contained in:
		
						commit
						107e0be59f
					
				| @ -55,7 +55,9 @@ export class BlocksList implements OnInit { | |||||||
|     this.skeletonLines = this.widget === true ? [...Array(6).keys()] : [...Array(15).keys()]; |     this.skeletonLines = this.widget === true ? [...Array(6).keys()] : [...Array(15).keys()]; | ||||||
|     this.paginationMaxSize = window.matchMedia('(max-width: 670px)').matches ? 3 : 5; |     this.paginationMaxSize = window.matchMedia('(max-width: 670px)').matches ? 3 : 5; | ||||||
| 
 | 
 | ||||||
|  |     if (!this.widget) { | ||||||
|       this.seoService.setTitle($localize`:@@meta.title.blocks-list:Blocks`); |       this.seoService.setTitle($localize`:@@meta.title.blocks-list:Blocks`); | ||||||
|  |     } | ||||||
|     if( this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet' ) { |     if( this.stateService.network==='liquid'||this.stateService.network==='liquidtestnet' ) { | ||||||
|       this.seoService.setDescription($localize`:@@meta.description.liquid.blocks:See the most recent Liquid${seoDescriptionNetwork(this.stateService.network)} blocks along with basic stats such as block height, block size, and more.`); |       this.seoService.setDescription($localize`:@@meta.description.liquid.blocks:See the most recent Liquid${seoDescriptionNetwork(this.stateService.network)} blocks along with basic stats such as block height, block size, and more.`); | ||||||
|     } else { |     } else { | ||||||
|  | |||||||
| @ -1,6 +1,6 @@ | |||||||
| <div class="container-xl"> | <div class="container-xl"> | ||||||
|   <div class="text-center"> |   <div class="text-center"> | ||||||
|     <h2>Calculator</h2> |     <h2 i18n="shared.calculator">Calculator</h2> | ||||||
|   </div> |   </div> | ||||||
| 
 | 
 | ||||||
|   <ng-container *ngIf="price$ | async; else loading"> |   <ng-container *ngIf="price$ | async; else loading"> | ||||||
|  | |||||||
| @ -7,7 +7,7 @@ | |||||||
|       </span> |       </span> | ||||||
|       <a *ngIf="!userAuth" class="d-flex justify-content-center align-items-center nav-link m-0  menu-click" routerLink="/login" role="tab" (click)="onLinkClick('/login')"> |       <a *ngIf="!userAuth" class="d-flex justify-content-center align-items-center nav-link m-0  menu-click" routerLink="/login" role="tab" (click)="onLinkClick('/login')"> | ||||||
|         <fa-icon class="menu-click" [icon]="['fas', 'user-circle']" [fixedWidth]="true" style="font-size: 25px;margin-right: 15px;"></fa-icon> |         <fa-icon class="menu-click" [icon]="['fas', 'user-circle']" [fixedWidth]="true" style="font-size: 25px;margin-right: 15px;"></fa-icon> | ||||||
|         <span class="menu-click" style="font-size: 20px;">Sign in</span> |         <span class="menu-click" style="font-size: 20px;" i18n="shared.sign-in">Sign in</span> | ||||||
|       </a> |       </a> | ||||||
| 
 | 
 | ||||||
|       <ng-container *ngIf="userMenuGroups$ | async as menuGroups"> |       <ng-container *ngIf="userMenuGroups$ | async as menuGroups"> | ||||||
|  | |||||||
| @ -44,12 +44,12 @@ | |||||||
|       </div> |       </div> | ||||||
|     </div> |     </div> | ||||||
| 
 | 
 | ||||||
|     <!-- Latest blocks --> |     <!-- Recent blocks --> | ||||||
|     <div class="col"> |     <div class="col"> | ||||||
|       <div class="card"> |       <div class="card"> | ||||||
|         <div class="card-body"> |         <div class="card-body"> | ||||||
|           <a class="title-link" href="" [routerLink]="['/blocks' | relativeUrl]"> |           <a class="title-link" href="" [routerLink]="['/blocks' | relativeUrl]"> | ||||||
|             <h5 class="card-title d-inline" i18n="dashboard.latest-blocks">Latest blocks</h5> |             <h5 class="card-title d-inline" i18n="dashboard.recent-blocks">Recent Blocks</h5> | ||||||
|             <span> </span> |             <span> </span> | ||||||
|             <fa-icon [icon]="['fas', 'external-link-alt']" [fixedWidth]="true" style="vertical-align: text-top; font-size: 13px; color: #4a68b9"></fa-icon> |             <fa-icon [icon]="['fas', 'external-link-alt']" [fixedWidth]="true" style="vertical-align: text-top; font-size: 13px; color: #4a68b9"></fa-icon> | ||||||
|           </a> |           </a> | ||||||
|  | |||||||
| @ -6,7 +6,7 @@ | |||||||
|     <div class="pool-distribution" *ngIf="(miningStatsObservable$ | async) as miningStats; else loadingReward"> |     <div class="pool-distribution" *ngIf="(miningStatsObservable$ | async) as miningStats; else loadingReward"> | ||||||
|       <div class="item"> |       <div class="item"> | ||||||
|         <h5 class="card-title d-inline-block" i18n="mining.miners-luck" i18n-ngbTooltip="mining.miners-luck-1w" |         <h5 class="card-title d-inline-block" i18n="mining.miners-luck" i18n-ngbTooltip="mining.miners-luck-1w" | ||||||
|         ngbTooltip="Pools luck (1 week)" placement="bottom" #minersluck [disableTooltip]="!isEllipsisActive(minersluck)">Pools luck</h5> |         ngbTooltip="Pools luck (1 week)" placement="bottom" #minersluck [disableTooltip]="!isEllipsisActive(minersluck)">Pools Luck</h5> | ||||||
|         <p class="card-text" i18n-ngbTooltip="mining.pools-luck-desc" |         <p class="card-text" i18n-ngbTooltip="mining.pools-luck-desc" | ||||||
|         ngbTooltip="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." placement="bottom"> |         ngbTooltip="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." placement="bottom"> | ||||||
|           {{ miningStats['minersLuck'] }}% |           {{ miningStats['minersLuck'] }}% | ||||||
| @ -14,14 +14,14 @@ | |||||||
|       </div> |       </div> | ||||||
|       <div class="item"> |       <div class="item"> | ||||||
|         <h5 class="card-title d-inline-block" i18n="mining.miners-count" i18n-ngbTooltip="mining.miners-count-1w" |         <h5 class="card-title d-inline-block" i18n="mining.miners-count" i18n-ngbTooltip="mining.miners-count-1w" | ||||||
|         ngbTooltip="Pools count (1w)" placement="bottom" #poolscount [disableTooltip]="!isEllipsisActive(poolscount)">Pools count</h5> |         ngbTooltip="Pools count (1w)" placement="bottom" #poolscount [disableTooltip]="!isEllipsisActive(poolscount)">Pools Count</h5> | ||||||
|         <p class="card-text" i18n-ngbTooltip="mining.pools-count-desc" |         <p class="card-text" i18n-ngbTooltip="mining.pools-count-desc" | ||||||
|         ngbTooltip="How many unique pools found at least one block over the past week." placement="bottom"> |         ngbTooltip="How many unique pools found at least one block over the past week." placement="bottom"> | ||||||
|           {{ miningStats.pools.length }} |           {{ miningStats.pools.length }} | ||||||
|         </p> |         </p> | ||||||
|       </div> |       </div> | ||||||
|       <div class="item"> |       <div class="item"> | ||||||
|         <h5 class="card-title d-inline-block" i18n="master-page.blocks" i18n-ngbTooltip="master-page.blocks" |         <h5 class="card-title d-inline-block" i18n="shared.blocks-1w" i18n-ngbTooltip="master-page.blocks" | ||||||
|         ngbTooltip="Blocks (1w)" placement="bottom" #blockscount [disableTooltip]="!isEllipsisActive(blockscount)">Blocks (1w)</h5> |         ngbTooltip="Blocks (1w)" placement="bottom" #blockscount [disableTooltip]="!isEllipsisActive(blockscount)">Blocks (1w)</h5> | ||||||
|         <p class="card-text" i18n-ngbTooltip="mining.blocks-count-desc" |         <p class="card-text" i18n-ngbTooltip="mining.blocks-count-desc" | ||||||
|         ngbTooltip="The number of blocks found over the past week." placement="bottom"> |         ngbTooltip="The number of blocks found over the past week." placement="bottom"> | ||||||
| @ -95,7 +95,7 @@ | |||||||
|           <th *ngIf="auditAvailable" class="health text-right widget" i18n="latest-blocks.avg_health" |           <th *ngIf="auditAvailable" class="health text-right widget" i18n="latest-blocks.avg_health" | ||||||
|             i18n-ngbTooltip="latest-blocks.avg_health" ngbTooltip="Avg Health" placement="bottom" #health [disableTooltip]="!isEllipsisActive(health)">Avg Health</th> |             i18n-ngbTooltip="latest-blocks.avg_health" ngbTooltip="Avg Health" placement="bottom" #health [disableTooltip]="!isEllipsisActive(health)">Avg Health</th> | ||||||
|           <th *ngIf="auditAvailable" class="d-none d-sm-table-cell" i18n="mining.fees-per-block">Avg Block Fees</th> |           <th *ngIf="auditAvailable" class="d-none d-sm-table-cell" i18n="mining.fees-per-block">Avg Block Fees</th> | ||||||
|           <th class="d-none d-lg-table-cell" i18n="mining.empty-blocks">Empty blocks</th> |           <th class="d-none d-lg-table-cell" i18n="mining.empty-blocks">Empty Blocks</th> | ||||||
|         </tr> |         </tr> | ||||||
|       </thead> |       </thead> | ||||||
|       <tbody [attr.data-cy]="'pools-table'" *ngIf="(miningStatsObservable$ | async) as miningStats"> |       <tbody [attr.data-cy]="'pools-table'" *ngIf="(miningStatsObservable$ | async) as miningStats"> | ||||||
| @ -153,19 +153,19 @@ | |||||||
| <ng-template #loadingReward> | <ng-template #loadingReward> | ||||||
|   <div class="pool-distribution"> |   <div class="pool-distribution"> | ||||||
|     <div class="item"> |     <div class="item"> | ||||||
|       <h5 class="card-title" i18n="mining.miners-luck">Pools Luck (1w)</h5> |       <h5 class="card-title" i18n="mining.miners-luck">Pools Luck</h5> | ||||||
|       <p class="card-text"> |       <p class="card-text"> | ||||||
|         <span class="skeleton-loader skeleton-loader-big"></span> |         <span class="skeleton-loader skeleton-loader-big"></span> | ||||||
|       </p> |       </p> | ||||||
|     </div> |     </div> | ||||||
|     <div class="item"> |     <div class="item"> | ||||||
|       <h5 class="card-title" i18n="master-page.blocks">Blocks (1w)</h5> |       <h5 class="card-title" i18n="mining.miners-count" >Pools Count</h5> | ||||||
|       <p class="card-text"> |       <p class="card-text"> | ||||||
|         <span class="skeleton-loader skeleton-loader-big"></span> |         <span class="skeleton-loader skeleton-loader-big"></span> | ||||||
|       </p> |       </p> | ||||||
|     </div> |     </div> | ||||||
|     <div class="item"> |     <div class="item"> | ||||||
|       <h5 class="card-title" i18n="mining.miners-count">Pools Count (1w)</h5> |       <h5 class="card-title" i18n="shared.blocks-1w">Blocks (1w)</h5> | ||||||
|       <p class="card-text"> |       <p class="card-text"> | ||||||
|         <span class="skeleton-loader skeleton-loader-big"></span> |         <span class="skeleton-loader skeleton-loader-big"></span> | ||||||
|       </p> |       </p> | ||||||
|  | |||||||
| @ -40,7 +40,7 @@ | |||||||
|       <ng-container [ngSwitch]="extraData"> |       <ng-container [ngSwitch]="extraData"> | ||||||
|         <div class="opreturns" *ngSwitchCase="'coinbase'"> |         <div class="opreturns" *ngSwitchCase="'coinbase'"> | ||||||
|             <div class="opreturn-row"> |             <div class="opreturn-row"> | ||||||
|               <span class="label">Coinbase</span> |               <span class="label" i18n="transactions-list.coinbase">Coinbase</span> | ||||||
|               <span class="message">{{ tx.vin[0].scriptsig | hex2ascii }}</span> |               <span class="message">{{ tx.vin[0].scriptsig | hex2ascii }}</span> | ||||||
|             </div> |             </div> | ||||||
|         </div> |         </div> | ||||||
|  | |||||||
| @ -16,7 +16,7 @@ | |||||||
| 
 | 
 | ||||||
|   <ng-template #coinbase> |   <ng-template #coinbase> | ||||||
|     <ng-container *ngIf="line.coinbase; else pegin"> |     <ng-container *ngIf="line.coinbase; else pegin"> | ||||||
|       <p>Coinbase</p> |       <p i18n="transactions-list.coinbase">Coinbase</p> | ||||||
|     </ng-container> |     </ng-container> | ||||||
|   </ng-template> |   </ng-template> | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -76,7 +76,7 @@ | |||||||
|       <div class="card" *ngIf="(network$ | async) !== 'liquid' && (network$ | async) !== 'liquidtestnet'; else latestBlocks"> |       <div class="card" *ngIf="(network$ | async) !== 'liquid' && (network$ | async) !== 'liquidtestnet'; else latestBlocks"> | ||||||
|         <div class="card-body"> |         <div class="card-body"> | ||||||
|           <a class="title-link" href="" [routerLink]="['/rbf' | relativeUrl]"> |           <a class="title-link" href="" [routerLink]="['/rbf' | relativeUrl]"> | ||||||
|             <h5 class="card-title d-inline" i18n="dashboard.latest-rbf-replacements">Latest replacements</h5> |             <h5 class="card-title d-inline" i18n="dashboard.recent-rbf-replacements">Recent Replacements</h5> | ||||||
|             <span> </span> |             <span> </span> | ||||||
|             <fa-icon [icon]="['fas', 'external-link-alt']" [fixedWidth]="true" style="vertical-align: text-top; font-size: 13px; color: #4a68b9"></fa-icon> |             <fa-icon [icon]="['fas', 'external-link-alt']" [fixedWidth]="true" style="vertical-align: text-top; font-size: 13px; color: #4a68b9"></fa-icon> | ||||||
|           </a> |           </a> | ||||||
| @ -110,7 +110,7 @@ | |||||||
|         <div class="card"> |         <div class="card"> | ||||||
|           <div class="card-body"> |           <div class="card-body"> | ||||||
|             <a class="title-link" href="" [routerLink]="['/blocks' | relativeUrl]"> |             <a class="title-link" href="" [routerLink]="['/blocks' | relativeUrl]"> | ||||||
|               <h5 class="card-title d-inline" i18n="dashboard.latest-blocks">Latest blocks</h5> |               <h5 class="card-title d-inline" i18n="dashboard.recent-block">Recent blocks</h5> | ||||||
|               <span> </span> |               <span> </span> | ||||||
|               <fa-icon [icon]="['fas', 'external-link-alt']" [fixedWidth]="true" style="vertical-align: text-top; font-size: 13px; color: #4a68b9"></fa-icon> |               <fa-icon [icon]="['fas', 'external-link-alt']" [fixedWidth]="true" style="vertical-align: text-top; font-size: 13px; color: #4a68b9"></fa-icon> | ||||||
|             </a> |             </a> | ||||||
| @ -150,7 +150,7 @@ | |||||||
|     <div class="col" style="max-height: 410px"> |     <div class="col" style="max-height: 410px"> | ||||||
|       <div class="card"> |       <div class="card"> | ||||||
|         <div class="card-body"> |         <div class="card-body"> | ||||||
|           <h5 class="card-title" i18n="dashboard.latest-transactions">Latest transactions</h5> |           <h5 class="card-title" i18n="dashboard.recent-transactions">Recent Transactions</h5> | ||||||
|           <table class="table latest-transactions"> |           <table class="table latest-transactions"> | ||||||
|             <thead> |             <thead> | ||||||
|               <th class="table-cell-txid" i18n="dashboard.latest-transactions.txid">TXID</th> |               <th class="table-cell-txid" i18n="dashboard.latest-transactions.txid">TXID</th> | ||||||
| @ -233,7 +233,7 @@ | |||||||
|       </p> |       </p> | ||||||
|     </div> |     </div> | ||||||
|     <div class="item bar"> |     <div class="item bar"> | ||||||
|       <h5 class="card-title" i18n="dashboard.memory-usage|Memory usage">Memory usage</h5> |       <h5 class="card-title" i18n="dashboard.memory-usage|Memory usage">Memory Usage</h5> | ||||||
|       <div class="card-text" *ngIf="(isLoadingWebSocket$ | async) === false && mempoolInfoData.value; else loadingbig"> |       <div class="card-text" *ngIf="(isLoadingWebSocket$ | async) === false && mempoolInfoData.value; else loadingbig"> | ||||||
|         <div class="progress"> |         <div class="progress"> | ||||||
|           <div class="progress-bar {{ mempoolInfoData.value.mempoolSizeProgress }}" role="progressbar" [ngStyle]="{'width': (mempoolInfoData.value.memPoolInfo.usage / mempoolInfoData.value.memPoolInfo.maxmempool * 100) + '%' }"> </div> |           <div class="progress-bar {{ mempoolInfoData.value.mempoolSizeProgress }}" role="progressbar" [ngStyle]="{'width': (mempoolInfoData.value.memPoolInfo.usage / mempoolInfoData.value.memPoolInfo.maxmempool * 100) + '%' }"> </div> | ||||||
| @ -256,7 +256,7 @@ | |||||||
| </ng-template> | </ng-template> | ||||||
| 
 | 
 | ||||||
| <ng-template #txPerSecond let-mempoolInfoData> | <ng-template #txPerSecond let-mempoolInfoData> | ||||||
|   <h5 class="card-title" i18n="dashboard.incoming-transactions">Incoming transactions</h5> |   <h5 class="card-title" i18n="dashboard.incoming-transactions">Incoming Transactions</h5> | ||||||
|   <ng-template [ngIf]="(isLoadingWebSocket$ | async) === false && mempoolInfoData.value" [ngIfElse]="loadingTransactions"> |   <ng-template [ngIf]="(isLoadingWebSocket$ | async) === false && mempoolInfoData.value" [ngIfElse]="loadingTransactions"> | ||||||
|     <span *ngIf="(mempoolLoadingStatus$ | async) !== 100; else inSync"> |     <span *ngIf="(mempoolLoadingStatus$ | async) !== 100; else inSync"> | ||||||
|        <span class="badge badge-pill badge-warning"><ng-container i18n="dashboard.backend-is-synchronizing">Backend is synchronizing</ng-container> ({{ mempoolLoadingStatus$ | async }}%)</span> |        <span class="badge badge-pill badge-warning"><ng-container i18n="dashboard.backend-is-synchronizing">Backend is synchronizing</ng-container> ({{ mempoolLoadingStatus$ | async }}%)</span> | ||||||
|  | |||||||
| @ -62,12 +62,13 @@ export class DocsComponent implements OnInit { | |||||||
|       } else { |       } else { | ||||||
|         this.seoService.setDescription($localize`:@@meta.description.docs.websocket-bitcoin:Documentation for the mempool.space WebSocket API service: get real-time info on blocks, mempools, transactions, addresses, and more.`); |         this.seoService.setDescription($localize`:@@meta.description.docs.websocket-bitcoin:Documentation for the mempool.space WebSocket API service: get real-time info on blocks, mempools, transactions, addresses, and more.`); | ||||||
|       } |       } | ||||||
|  |     /* | ||||||
|     } else { |     } else { | ||||||
|       this.activeTab = 3; |       this.activeTab = 3; | ||||||
|       this.seoService.setTitle($localize`:@@meta.title.docs.websocket:Electrum RPC`); |       this.seoService.setTitle($localize`:@@meta.title.docs.electrum:Electrum RPC`); | ||||||
|       this.seoService.setDescription($localize`:@@meta.description.docs.electrumrpc:Documentation for our Electrum RPC interface: get instant, convenient, and reliable access to an Esplora instance.`); |       this.seoService.setDescription($localize`:@@meta.description.docs.electrumrpc:Documentation for our Electrum RPC interface: get instant, convenient, and reliable access to an Esplora instance.`); | ||||||
|  |     */ | ||||||
|     } |     } | ||||||
| 
 |  | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
|   ngOnDestroy(): void { |   ngOnDestroy(): void { | ||||||
|  | |||||||
| @ -14,7 +14,7 @@ | |||||||
|         <table class="table table-borderless table-striped"> |         <table class="table table-borderless table-striped"> | ||||||
|           <tbody> |           <tbody> | ||||||
|             <tr> |             <tr> | ||||||
|               <td>Description</td> |               <td i18n>Description</td> | ||||||
|               <td><div class="description-text">These are the Lightning nodes operated by The Mempool Open Source Project that provide data for the mempool.space website. Connect to us! |               <td><div class="description-text">These are the Lightning nodes operated by The Mempool Open Source Project that provide data for the mempool.space website. Connect to us! | ||||||
|                 </div> |                 </div> | ||||||
|               </td> |               </td> | ||||||
| @ -70,7 +70,7 @@ | |||||||
|     <table class="table table-borderless"> |     <table class="table table-borderless"> | ||||||
|       <thead> |       <thead> | ||||||
|         <th class="alias text-left" i18n="lightning.alias">Alias</th> |         <th class="alias text-left" i18n="lightning.alias">Alias</th> | ||||||
|         <th class="text-left">Connect</th> |         <th class="text-left" i18n="lightning.connect-to-node|Connect">Connect</th> | ||||||
|         <th class="city text-right d-none d-md-table-cell" i18n="lightning.location">Location</th> |         <th class="city text-right d-none d-md-table-cell" i18n="lightning.location">Location</th> | ||||||
|       </thead> |       </thead> | ||||||
|       <tbody *ngIf="nodes$ | async as response; else skeleton"> |       <tbody *ngIf="nodes$ | async as response; else skeleton"> | ||||||
|  | |||||||
| @ -133,11 +133,11 @@ | |||||||
|           <h5>Raw bits</h5> |           <h5>Raw bits</h5> | ||||||
|           <span class="text-wrap w-100"><small>{{ node.featuresBits }}</small></span> |           <span class="text-wrap w-100"><small>{{ node.featuresBits }}</small></span> | ||||||
|         </div> |         </div> | ||||||
|         <h5>Decoded</h5> |         <h5 i18n="lightning.decoded|Decoded">Decoded</h5> | ||||||
|         <table class="table table-borderless table-striped table-fixed"> |         <table class="table table-borderless table-striped table-fixed"> | ||||||
|           <thead> |           <thead> | ||||||
|             <th style="width: 13%">Bit</th> |             <th style="width: 13%">Bit</th> | ||||||
|             <th>Name</th> |             <th i18n="lightning.as-name">Name</th> | ||||||
|             <th style="width: 25%; text-align: right">Required</th> |             <th style="width: 25%; text-align: right">Required</th> | ||||||
|           </thead> |           </thead> | ||||||
|           <tbody> |           <tbody> | ||||||
|  | |||||||
| @ -1,4 +1,4 @@ | |||||||
| <ng-container *ngIf="rateUnits$ | async as units"> | <ng-container *ngIf="rateUnits$ | async as units"> | ||||||
|   <ng-container *ngIf="units !== 'wu'">{{ fee / (weight / 4) | feeRounding:rounding }} <span *ngIf="showUnit" [class]="unitClass" [style]="unitStyle">sat/vB</span></ng-container> |   <ng-container *ngIf="units !== 'wu'">{{ fee / (weight / 4) | feeRounding:rounding }} <span *ngIf="showUnit" [class]="unitClass" [style]="unitStyle" i18n="shared.sat-vbyte|sat/vB">sat/vB</span></ng-container> | ||||||
|   <ng-container *ngIf="units === 'wu'">{{ fee / weight | feeRounding:rounding }} <span *ngIf="showUnit" [class]="unitClass" [style]="unitStyle">sat/WU</span></ng-container> |   <ng-container *ngIf="units === 'wu'">{{ fee / weight | feeRounding:rounding }} <span *ngIf="showUnit" [class]="unitClass" [style]="unitStyle" i18n="shared.sat-weight-units|sat/WU">sat/WU</span></ng-container> | ||||||
| </ng-container> | </ng-container> | ||||||
| @ -38,45 +38,45 @@ | |||||||
|     </div> |     </div> | ||||||
|     <div class="row col-md-12 link-tree" [class]="{'services': isServicesPage}"> |     <div class="row col-md-12 link-tree" [class]="{'services': isServicesPage}"> | ||||||
|         <div class="links"> |         <div class="links"> | ||||||
|           <p class="category">Explore</p> |           <p class="category" i18n="footer.explore">Explore</p> | ||||||
|           <p><a [routerLink]="['/mining' | relativeUrl]">Mining Dashboard</a></p> |           <p><a [routerLink]="['/mining' | relativeUrl]" i18n="mining.mining-dashboard">Mining Dashboard</a></p> | ||||||
|           <p><a *ngIf="env.LIGHTNING" [routerLink]="['/lightning' | relativeUrl]">Lightning Dashboard</a></p> |           <p><a *ngIf="env.LIGHTNING" [routerLink]="['/lightning' | relativeUrl]" i18n="master-page.lightning">Lightning Explorer</a></p> | ||||||
|           <p><a [routerLink]="['/blocks' | relativeUrl]">Recent Blocks</a></p> |           <p><a [routerLink]="['/blocks' | relativeUrl]" i18n="dashboard.recent-blocks">Recent Blocks</a></p> | ||||||
|           <p><a [routerLink]="['/tx/push' | relativeUrl]" i18n="shared.broadcast-transaction|Broadcast Transaction">Broadcast Transaction</a></p> |           <p><a [routerLink]="['/tx/push' | relativeUrl]" i18n="shared.broadcast-transaction|Broadcast Transaction">Broadcast Transaction</a></p> | ||||||
|           <p *ngIf="officialMempoolSpace"><a [routerLink]="['/lightning/group/the-mempool-open-source-project' | relativeUrl]" i18n="footer.connect-to-our-nodes">Connect to our Nodes</a></p> |           <p *ngIf="officialMempoolSpace"><a [routerLink]="['/lightning/group/the-mempool-open-source-project' | relativeUrl]" i18n="footer.connect-to-our-nodes">Connect to our Nodes</a></p> | ||||||
|           <p><a [routerLink]="['/docs/api' | relativeUrl]">API Documentation</a></p> |           <p><a [routerLink]="['/docs/api' | relativeUrl]" i18n="footer.api-documentation">API Documentation</a></p> | ||||||
|         </div> |         </div> | ||||||
|         <div class="links"> |         <div class="links"> | ||||||
|           <p class="category">Learn</p> |           <p class="category" i18n="footer.learn">Learn</p> | ||||||
|           <p><a [routerLink]="['/docs/faq']" fragment="what-is-a-mempool">What is a mempool?</a></p> |           <p><a [routerLink]="['/docs/faq']" fragment="what-is-a-mempool" i18n="faq.what-is-a-mempool">What is a mempool?</a></p> | ||||||
|           <p><a [routerLink]="['/docs/faq']" fragment="what-is-a-block-explorer">What is a block explorer?</a></p> |           <p><a [routerLink]="['/docs/faq']" fragment="what-is-a-block-explorer" i18n="faq.what-is-a-block-exlorer">What is a block explorer?</a></p> | ||||||
|           <p><a [routerLink]="['/docs/faq']" fragment="what-is-a-mempool-explorer">What is a mempool explorer?</a></p> |           <p><a [routerLink]="['/docs/faq']" fragment="what-is-a-mempool-explorer" i18n="faq.what-is-a-mempool-exlorer">What is a mempool explorer?</a></p> | ||||||
|           <p><a [routerLink]="['/docs/faq']" fragment="why-is-transaction-stuck-in-mempool">Why isn't my transaction confirming?</a></p> |           <p><a [routerLink]="['/docs/faq']" fragment="why-is-transaction-stuck-in-mempool" i18n="faq.why-isnt-my-transaction-confirming">Why isn't my transaction confirming?</a></p> | ||||||
|           <p><a [routerLink]="['/docs/faq' | relativeUrl]">More FAQs ›</a></p> |           <p><a [routerLink]="['/docs/faq' | relativeUrl]" i18n="faq.more-faq">More FAQs ›</a></p> | ||||||
|         </div> |         </div> | ||||||
| 
 | 
 | ||||||
|         <div class="links" *ngIf="officialMempoolSpace || env.TESTNET_ENABLED || env.SIGNET_ENABLED || env.LIQUID_ENABLED || env.LIQUID_TESTNET_ENABLED else toolBox" > |         <div class="links" *ngIf="officialMempoolSpace || env.TESTNET_ENABLED || env.SIGNET_ENABLED || env.LIQUID_ENABLED || env.LIQUID_TESTNET_ENABLED else toolBox" > | ||||||
|           <p class="category">Networks</p> |           <p class="category" i18n="footer.networks">Networks</p> | ||||||
|           <p *ngIf="(officialMempoolSpace || (env.BASE_MODULE === 'mempool')) && (currentNetwork !== '') && (currentNetwork !== 'mainnet')"><a [href]="networkLink('mainnet')">Mainnet Explorer</a></p> |           <p *ngIf="(officialMempoolSpace || (env.BASE_MODULE === 'mempool')) && (currentNetwork !== '') && (currentNetwork !== 'mainnet')"><a [href]="networkLink('mainnet')" i18n="footer.mainnet-explorer">Mainnet Explorer</a></p> | ||||||
|           <p *ngIf="(officialMempoolSpace || (env.BASE_MODULE === 'mempool')) && (currentNetwork !== 'testnet') && env.TESTNET_ENABLED"><a [href]="networkLink('testnet')">Testnet Explorer</a></p> |           <p *ngIf="(officialMempoolSpace || (env.BASE_MODULE === 'mempool')) && (currentNetwork !== 'testnet') && env.TESTNET_ENABLED"><a [href]="networkLink('testnet')" i18n="footer.testnet-explorer">Testnet Explorer</a></p> | ||||||
|           <p *ngIf="(officialMempoolSpace || (env.BASE_MODULE === 'mempool')) && (currentNetwork !== 'signet') && env.SIGNET_ENABLED"><a [href]="networkLink('signet')">Signet Explorer</a></p> |           <p *ngIf="(officialMempoolSpace || (env.BASE_MODULE === 'mempool')) && (currentNetwork !== 'signet') && env.SIGNET_ENABLED"><a [href]="networkLink('signet')" i18n="footer.signet-explorer">Signet Explorer</a></p> | ||||||
|           <p *ngIf="(officialMempoolSpace || env.LIQUID_ENABLED) && (currentNetwork !== 'liquidtestnet')"><a [href]="networkLink('liquidtestnet')">Liquid Testnet Explorer</a></p> |           <p *ngIf="(officialMempoolSpace || env.LIQUID_ENABLED) && (currentNetwork !== 'liquidtestnet')"><a [href]="networkLink('liquidtestnet')" i18n="footer.liquid-testnet-explorer">Liquid Testnet Explorer</a></p> | ||||||
|           <p *ngIf="(officialMempoolSpace || env.LIQUID_ENABLED) && (currentNetwork !== 'liquid')"><a [href]="networkLink('liquid')">Liquid Explorer</a></p> |           <p *ngIf="(officialMempoolSpace || env.LIQUID_ENABLED) && (currentNetwork !== 'liquid')"><a [href]="networkLink('liquid')" i18n="footer.liquid-explorer">Liquid Explorer</a></p> | ||||||
|           <p *ngIf="(officialMempoolSpace && (currentNetwork !== 'bisq'))"><a [href]="networkLink('bisq')">Bisq Explorer</a></p> |           <p *ngIf="(officialMempoolSpace && (currentNetwork !== 'bisq'))"><a [href]="networkLink('bisq')" i18n="footer.bisq-explorer">Bisq Explorer</a></p> | ||||||
|         </div> |         </div> | ||||||
|         <ng-template #toolBox> |         <ng-template #toolBox> | ||||||
|         <div class="links"> |         <div class="links"> | ||||||
|           <p class="category">Tools</p> |           <p class="category" i18n="footer.tools">Tools</p> | ||||||
|           <p><a [routerLink]="['/clock/mempool/0']">Clock (Mempool)</a></p> |           <p><a [routerLink]="['/clock/mempool/0']" i18n="footer.clock-mempool">Clock (Mempool)</a></p> | ||||||
|           <p><a [routerLink]="['/clock/mined/0']">Clock (Mined)</a></p> |           <p><a [routerLink]="['/clock/mined/0']" i18n="footer.clock-mined">Clock (Mined)</a></p> | ||||||
|           <p><a [routerLink]="['/tools/calculator']">BTC/Fiat Converter</a></p> |           <p><a [routerLink]="['/tools/calculator']" i18n="shared.calculator">Calculator</a></p> | ||||||
|         </div> |         </div> | ||||||
|         </ng-template> |         </ng-template> | ||||||
|         <div class="links"> |         <div class="links"> | ||||||
|           <p class="category">Legal</p> |           <p class="category" i18n="footer.legal">Legal</p> | ||||||
|           <p><a [routerLink]="['/terms-of-service']" i18n="shared.terms-of-service|Terms of Service">Terms of Service</a></p> |           <p><a [routerLink]="['/terms-of-service']" i18n="shared.terms-of-service|Terms of Service">Terms of Service</a></p> | ||||||
|           <p><a [routerLink]="['/privacy-policy']" i18n="shared.privacy-policy|Privacy Policy">Privacy Policy</a></p> |           <p><a [routerLink]="['/privacy-policy']" i18n="shared.privacy-policy|Privacy Policy">Privacy Policy</a></p> | ||||||
|           <p><a [routerLink]="['/trademark-policy']">Trademark Policy</a></p> |           <p><a [routerLink]="['/trademark-policy']" i18n="shared.trademark-policy|Trademark Policy">Trademark Policy</a></p> | ||||||
|         </div> |         </div> | ||||||
|     </div> |     </div> | ||||||
|     <div class="row social-links"> |     <div class="row social-links"> | ||||||
|  | |||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user