Improve fee distribution legibility on small screens
This commit is contained in:
parent
b5a5f0f608
commit
37605d5732
@ -1,4 +1,4 @@
|
|||||||
import { OnChanges, OnDestroy } from '@angular/core';
|
import { HostListener, OnChanges, OnDestroy } from '@angular/core';
|
||||||
import { Component, Input, OnInit, ChangeDetectionStrategy } from '@angular/core';
|
import { Component, Input, OnInit, ChangeDetectionStrategy } from '@angular/core';
|
||||||
import { TransactionStripped } from '../../interfaces/websocket.interface';
|
import { TransactionStripped } from '../../interfaces/websocket.interface';
|
||||||
import { StateService } from '../../services/state.service';
|
import { StateService } from '../../services/state.service';
|
||||||
@ -26,6 +26,7 @@ export class FeeDistributionGraphComponent implements OnInit, OnChanges, OnDestr
|
|||||||
simple: boolean = false;
|
simple: boolean = false;
|
||||||
data: number[][];
|
data: number[][];
|
||||||
labelInterval: number = 50;
|
labelInterval: number = 50;
|
||||||
|
smallScreen: boolean = window.innerWidth < 450;
|
||||||
|
|
||||||
rateUnitSub: Subscription;
|
rateUnitSub: Subscription;
|
||||||
weightMode: boolean = false;
|
weightMode: boolean = false;
|
||||||
@ -96,9 +97,9 @@ export class FeeDistributionGraphComponent implements OnInit, OnChanges, OnDestr
|
|||||||
this.mempoolVsizeFeesOptions = {
|
this.mempoolVsizeFeesOptions = {
|
||||||
grid: {
|
grid: {
|
||||||
height: '210',
|
height: '210',
|
||||||
right: '20',
|
right: this.smallScreen ? '10' : '20',
|
||||||
top: '22',
|
top: '22',
|
||||||
left: '40',
|
left: this.smallScreen ? '10' : '40',
|
||||||
},
|
},
|
||||||
xAxis: {
|
xAxis: {
|
||||||
type: 'category',
|
type: 'category',
|
||||||
@ -132,7 +133,7 @@ export class FeeDistributionGraphComponent implements OnInit, OnChanges, OnDestr
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
axisLabel: {
|
axisLabel: {
|
||||||
show: true,
|
show: !this.smallScreen,
|
||||||
formatter: (value: number): string => {
|
formatter: (value: number): string => {
|
||||||
const unitValue = this.weightMode ? value / 4 : value;
|
const unitValue = this.weightMode ? value / 4 : value;
|
||||||
const selectedPowerOfTen = selectPowerOfTen(unitValue);
|
const selectedPowerOfTen = selectPowerOfTen(unitValue);
|
||||||
@ -142,7 +143,7 @@ export class FeeDistributionGraphComponent implements OnInit, OnChanges, OnDestr
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
axisTick: {
|
axisTick: {
|
||||||
show: true,
|
show: !this.smallScreen,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
series: [{
|
series: [{
|
||||||
@ -153,6 +154,7 @@ export class FeeDistributionGraphComponent implements OnInit, OnChanges, OnDestr
|
|||||||
position: 'top',
|
position: 'top',
|
||||||
color: '#ffffff',
|
color: '#ffffff',
|
||||||
textShadowBlur: 0,
|
textShadowBlur: 0,
|
||||||
|
fontSize: this.smallScreen ? 10 : 12,
|
||||||
formatter: (label: { data: number[] }): string => {
|
formatter: (label: { data: number[] }): string => {
|
||||||
const value = label.data[1];
|
const value = label.data[1];
|
||||||
const unitValue = this.weightMode ? value / 4 : value;
|
const unitValue = this.weightMode ? value / 4 : value;
|
||||||
@ -182,6 +184,16 @@ export class FeeDistributionGraphComponent implements OnInit, OnChanges, OnDestr
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@HostListener('window:resize', ['$event'])
|
||||||
|
onResize(): void {
|
||||||
|
const isSmallScreen = window.innerWidth < 450;
|
||||||
|
if (this.smallScreen !== isSmallScreen) {
|
||||||
|
this.smallScreen = isSmallScreen;
|
||||||
|
this.prepareChart();
|
||||||
|
this.mountChart();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
ngOnDestroy(): void {
|
ngOnDestroy(): void {
|
||||||
this.rateUnitSub.unsubscribe();
|
this.rateUnitSub.unsubscribe();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user