diff --git a/backend/src/api/disk-cache.ts b/backend/src/api/disk-cache.ts index 15bce0129..591f1c97e 100644 --- a/backend/src/api/disk-cache.ts +++ b/backend/src/api/disk-cache.ts @@ -39,7 +39,7 @@ class DiskCache { mempool: memPool.getMempool(), blocks: blocks.getBlocks(), })); - logger.info('Mempool and blocks data saved to disk cache'); + logger.debug('Mempool and blocks data saved to disk cache'); } catch (e) { logger.warn('Error writing to cache file asynchronously'); } diff --git a/frontend/src/app/app.module.ts b/frontend/src/app/app.module.ts index 30c60a093..f52b74924 100644 --- a/frontend/src/app/app.module.ts +++ b/frontend/src/app/app.module.ts @@ -43,7 +43,7 @@ import { NgbTypeaheadModule } from '@ng-bootstrap/ng-bootstrap'; import { FeesBoxComponent } from './components/fees-box/fees-box.component'; import { DashboardComponent } from './dashboard/dashboard.component'; import { FontAwesomeModule, FaIconLibrary } from '@fortawesome/angular-fontawesome'; -import { faBolt, faChartArea, faCogs, faCubes, faDatabase, faInfoCircle, +import { faAngleDoubleDown, faAngleDoubleUp, faAngleDown, faAngleUp, faBolt, faChartArea, faCogs, faCubes, faDatabase, faInfoCircle, faLink, faList, faSearch, faTachometerAlt, faThList, faTint, faTv } from '@fortawesome/free-solid-svg-icons'; import { ApiDocsComponent } from './components/api-docs/api-docs.component'; import { TermsOfServiceComponent } from './components/terms-of-service/terms-of-service.component'; @@ -119,5 +119,7 @@ export class AppModule { library.addIcons(faLink); library.addIcons(faBolt); library.addIcons(faTint); + library.addIcons(faAngleDown); + library.addIcons(faAngleUp); } } diff --git a/frontend/src/app/dashboard/dashboard.component.html b/frontend/src/app/dashboard/dashboard.component.html index e8cb825b3..1249816e2 100644 --- a/frontend/src/app/dashboard/dashboard.component.html +++ b/frontend/src/app/dashboard/dashboard.component.html @@ -2,7 +2,7 @@
- +
@@ -68,6 +68,7 @@
+
@@ -122,9 +123,15 @@
+
- +
diff --git a/frontend/src/app/dashboard/dashboard.component.ts b/frontend/src/app/dashboard/dashboard.component.ts index 25c545382..96cdbf2b9 100644 --- a/frontend/src/app/dashboard/dashboard.component.ts +++ b/frontend/src/app/dashboard/dashboard.component.ts @@ -43,7 +43,7 @@ interface MempoolStatsData { changeDetection: ChangeDetectionStrategy.OnPush }) export class DashboardComponent implements OnInit { - collapsed = true; + collapseLevel: string; network$: Observable; mempoolBlocksData$: Observable; mempoolInfoData$: Observable; @@ -69,7 +69,7 @@ export class DashboardComponent implements OnInit { this.seoService.resetTitle(); this.websocketService.want(['blocks', 'stats', 'mempool-blocks', 'live-2h-chart']); this.network$ = merge(of(''), this.stateService.networkChanged$); - this.collapsed = this.storageService.getValue('dashboard-collapsed') === 'true' || false; + this.collapseLevel = this.storageService.getValue('dashboard-collapsed') || 'one'; this.mempoolInfoData$ = combineLatest([ this.stateService.mempoolInfo$, @@ -223,7 +223,13 @@ export class DashboardComponent implements OnInit { } toggleCollapsed() { - this.collapsed = !this.collapsed; - this.storageService.setValue('dashboard-collapsed', this.collapsed); + if (this.collapseLevel === 'one') { + this.collapseLevel = 'two'; + } else if (this.collapseLevel === 'two') { + this.collapseLevel = 'three'; + } else { + this.collapseLevel = 'one'; + } + this.storageService.setValue('dashboard-collapsed', this.collapseLevel); } }