Bisq dashboard: Change color between red/green when price changes
This commit is contained in:
		
							parent
							
								
									bbd21c9401
								
							
						
					
					
						commit
						5aa57d6df9
					
				@ -8,7 +8,9 @@
 | 
			
		||||
        <div class="card-body">
 | 
			
		||||
          <h5 class="card-title" i18n="bisq-dashboard.price-index-title">Bisq Price Index</h5>
 | 
			
		||||
          <div class="big-fiat">
 | 
			
		||||
            <span class="green-color" *ngIf="usdPrice$ | async as usdPrice; else loading">{{ usdPrice | currency:'USD':'symbol':'1.2-2' }}</span>
 | 
			
		||||
            <span *ngIf="usdPrice$ | async as usdPrice; else loading">
 | 
			
		||||
              <span [appColoredPrice]="usdPrice">{{ usdPrice | currency:'USD':'symbol':'1.2-2' }}</span>
 | 
			
		||||
            </span>
 | 
			
		||||
          </div>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
@ -18,7 +20,9 @@
 | 
			
		||||
        <div class="card-body">
 | 
			
		||||
          <h5 class="card-title" i18n="bisq-dashboard.market-price-title">Bisq Market Price</h5>
 | 
			
		||||
          <div class="big-fiat">
 | 
			
		||||
            <span class="green-color" *ngIf="bisqMarketPrice; else loading">{{ bisqMarketPrice | currency:'USD':'symbol':'1.2-2' }}</span>
 | 
			
		||||
            <span class="green-color" *ngIf="bisqMarketPrice; else loading">
 | 
			
		||||
              <span [appColoredPrice]="bisqMarketPrice">{{ bisqMarketPrice | currency:'USD':'symbol':'1.2-2' }}</span>
 | 
			
		||||
            </span>
 | 
			
		||||
          </div>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
 | 
			
		||||
@ -0,0 +1,22 @@
 | 
			
		||||
import { Directive, ElementRef, Input, OnChanges } from '@angular/core';
 | 
			
		||||
 | 
			
		||||
@Directive({
 | 
			
		||||
  selector: '[appColoredPrice]',
 | 
			
		||||
})
 | 
			
		||||
export class ColoredPriceDirective implements OnChanges {
 | 
			
		||||
  @Input() appColoredPrice: number;
 | 
			
		||||
  previousValue = null;
 | 
			
		||||
 | 
			
		||||
  constructor(
 | 
			
		||||
    private element: ElementRef
 | 
			
		||||
  ) { }
 | 
			
		||||
 | 
			
		||||
  ngOnChanges() {
 | 
			
		||||
    if (this.previousValue && this.appColoredPrice < this.previousValue) {
 | 
			
		||||
      this.element.nativeElement.classList.add('red-color');
 | 
			
		||||
    } else {
 | 
			
		||||
      this.element.nativeElement.classList.remove('red-color');
 | 
			
		||||
    }
 | 
			
		||||
    this.previousValue = this.appColoredPrice;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@ -19,6 +19,7 @@ import { TxFeaturesComponent } from '../components/tx-features/tx-features.compo
 | 
			
		||||
import { TxFeeRatingComponent } from '../components/tx-fee-rating/tx-fee-rating.component';
 | 
			
		||||
import { ReactiveFormsModule } from '@angular/forms';
 | 
			
		||||
import { LanguageSelectorComponent } from '../components/language-selector/language-selector.component';
 | 
			
		||||
import { ColoredPriceDirective } from './directives/colored-price.directive';
 | 
			
		||||
 | 
			
		||||
@NgModule({
 | 
			
		||||
  declarations: [
 | 
			
		||||
@ -39,6 +40,7 @@ import { LanguageSelectorComponent } from '../components/language-selector/langu
 | 
			
		||||
    CeilPipe,
 | 
			
		||||
    ShortenStringPipe,
 | 
			
		||||
    Decimal2HexPipe,
 | 
			
		||||
    ColoredPriceDirective,
 | 
			
		||||
  ],
 | 
			
		||||
  imports: [
 | 
			
		||||
    CommonModule,
 | 
			
		||||
@ -77,6 +79,7 @@ import { LanguageSelectorComponent } from '../components/language-selector/langu
 | 
			
		||||
    CeilPipe,
 | 
			
		||||
    ShortenStringPipe,
 | 
			
		||||
    Decimal2HexPipe,
 | 
			
		||||
    ColoredPriceDirective,
 | 
			
		||||
  ]
 | 
			
		||||
})
 | 
			
		||||
export class SharedModule {}
 | 
			
		||||
 | 
			
		||||
@ -218,6 +218,10 @@ body {
 | 
			
		||||
  color: #3bcc49;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.red-color {
 | 
			
		||||
  color: #dc3545;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.yellow-color { 
 | 
			
		||||
  color: #ffd800;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user