display fee box skeleton while mempool not in sync
This commit is contained in:
		
							parent
							
								
									8fd9c1a292
								
							
						
					
					
						commit
						d7333ec858
					
				@ -1,4 +1,4 @@
 | 
				
			|||||||
<div class="fee-estimation-wrapper" *ngIf="(isLoadingWebSocket$ | async) === false && (recommendedFees$ | async) as recommendedFees; else loadingFees">
 | 
					<div class="fee-estimation-wrapper" *ngIf="(isLoading$ | async) === false && (recommendedFees$ | async) as recommendedFees; else loadingFees">
 | 
				
			||||||
  <div class="d-flex">
 | 
					  <div class="d-flex">
 | 
				
			||||||
    <div class="fee-progress-bar" [style.background]="noPriority">
 | 
					    <div class="fee-progress-bar" [style.background]="noPriority">
 | 
				
			||||||
      <span class="fee-label" i18n="fees-box.no-priority" i18n-ngbTooltip="Transaction feerate tooltip (economy)" ngbTooltip="Either 2x the minimum, or the Low Priority rate (whichever is lower)" placement="top">No Priority</span>
 | 
					      <span class="fee-label" i18n="fees-box.no-priority" i18n-ngbTooltip="Transaction feerate tooltip (economy)" ngbTooltip="Either 2x the minimum, or the Low Priority rate (whichever is lower)" placement="top">No Priority</span>
 | 
				
			||||||
 | 
				
			|||||||
@ -1,9 +1,9 @@
 | 
				
			|||||||
import { Component, OnInit, ChangeDetectionStrategy } from '@angular/core';
 | 
					import { Component, OnInit, ChangeDetectionStrategy } from '@angular/core';
 | 
				
			||||||
import { StateService } from '../../services/state.service';
 | 
					import { StateService } from '../../services/state.service';
 | 
				
			||||||
import { Observable } from 'rxjs';
 | 
					import { Observable, combineLatest } from 'rxjs';
 | 
				
			||||||
import { Recommendedfees } from '../../interfaces/websocket.interface';
 | 
					import { Recommendedfees } from '../../interfaces/websocket.interface';
 | 
				
			||||||
import { feeLevels, mempoolFeeColors } from '../../app.constants';
 | 
					import { feeLevels, mempoolFeeColors } from '../../app.constants';
 | 
				
			||||||
import { tap } from 'rxjs/operators';
 | 
					import { map, startWith, tap } from 'rxjs/operators';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@Component({
 | 
					@Component({
 | 
				
			||||||
  selector: 'app-fees-box',
 | 
					  selector: 'app-fees-box',
 | 
				
			||||||
@ -12,7 +12,7 @@ import { tap } from 'rxjs/operators';
 | 
				
			|||||||
  changeDetection: ChangeDetectionStrategy.OnPush,
 | 
					  changeDetection: ChangeDetectionStrategy.OnPush,
 | 
				
			||||||
})
 | 
					})
 | 
				
			||||||
export class FeesBoxComponent implements OnInit {
 | 
					export class FeesBoxComponent implements OnInit {
 | 
				
			||||||
  isLoadingWebSocket$: Observable<boolean>;
 | 
					  isLoading$: Observable<boolean>;
 | 
				
			||||||
  recommendedFees$: Observable<Recommendedfees>;
 | 
					  recommendedFees$: Observable<Recommendedfees>;
 | 
				
			||||||
  gradient = 'linear-gradient(to right, #2e324e, #2e324e)';
 | 
					  gradient = 'linear-gradient(to right, #2e324e, #2e324e)';
 | 
				
			||||||
  noPriority = '#2e324e';
 | 
					  noPriority = '#2e324e';
 | 
				
			||||||
@ -22,7 +22,12 @@ export class FeesBoxComponent implements OnInit {
 | 
				
			|||||||
  ) { }
 | 
					  ) { }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  ngOnInit(): void {
 | 
					  ngOnInit(): void {
 | 
				
			||||||
    this.isLoadingWebSocket$ = this.stateService.isLoadingWebSocket$;
 | 
					    this.isLoading$ = combineLatest(
 | 
				
			||||||
 | 
					      this.stateService.isLoadingWebSocket$.pipe(startWith(false)),
 | 
				
			||||||
 | 
					      this.stateService.loadingIndicators$.pipe(startWith({ mempool: 0 })),
 | 
				
			||||||
 | 
					    ).pipe(map(([socket, indicators]) => {
 | 
				
			||||||
 | 
					      return socket || (indicators.mempool != null && indicators.mempool !== 100);
 | 
				
			||||||
 | 
					    }));
 | 
				
			||||||
    this.recommendedFees$ = this.stateService.recommendedFees$
 | 
					    this.recommendedFees$ = this.stateService.recommendedFees$
 | 
				
			||||||
      .pipe(
 | 
					      .pipe(
 | 
				
			||||||
        tap((fees) => {
 | 
					        tap((fees) => {
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user