0 || !animateEntry" [attr.data-cy]="'mempool-block-' + i" class="bitcoin-block text-center mempool-block" id="mempool-block-{{ i }}" [ngStyle]="mempoolBlockStyles[i]" [class.blink-bg]="projectedBlock.blink">
+
0 || !animateEntry" [attr.data-cy]="'mempool-block-' + i" class="bitcoin-block text-center mempool-block" [class.last-block]="tiny && i >= count - 1" id="mempool-block-{{ i }}" [ngStyle]="mempoolBlockStyles[i]" [class.blink-bg]="projectedBlock.blink">
-
- ~{{ projectedBlock.medianFee | number:feeRounding }} sat/vB
-
-
- {{ projectedBlock.feeRange[0] | number:feeRounding }} - {{ projectedBlock.feeRange[projectedBlock.feeRange.length - 1] | number:feeRounding }} sat/vB
-
-
-
-
-
- {{ i }} transaction
- {{ i }} transactions
-
-
-
-
-
()
-
{{ i }} blocks
+
+
+ ~{{ projectedBlock.medianFee | number:feeRounding }} sat/vB
-
+
+ {{ projectedBlock.feeRange[0] | number:feeRounding }} - {{ projectedBlock.feeRange[projectedBlock.feeRange.length - 1] | number:feeRounding }} sat/vB
+
+
+
+
+
+ {{ i }} transaction
+ {{ i }} transactions
+
+
+
+
+ ()
+ {{ i }} blocks
+
+
+ {{ projectedBlock.feeRange[0] | number:feeRounding }} - {{ projectedBlock.feeRange[projectedBlock.feeRange.length - 1] | number:feeRounding }} sat/vB
+
+
+
+
+
+ {{ i }} transaction
+ {{ i }} transactions
+
+
+
+
+ ()
+ {{ i }} blocks
+
+
+
+
diff --git a/frontend/src/app/components/mempool-blocks/mempool-blocks.component.scss b/frontend/src/app/components/mempool-blocks/mempool-blocks.component.scss
index 565d4b302..a0140f55c 100644
--- a/frontend/src/app/components/mempool-blocks/mempool-blocks.component.scss
+++ b/frontend/src/app/components/mempool-blocks/mempool-blocks.component.scss
@@ -1,7 +1,7 @@
.bitcoin-block {
width: 125px;
height: 125px;
- transition: background 2s, right 2s, transform 1s;
+ transition: background 2s, right 2s, transform 1s, opacity 1s;
}
.block-size {
@@ -100,6 +100,10 @@
background-color: #2d2825;
}
+.mempool-block.last-block {
+ opacity: 0;
+}
+
.black-background {
background-color: #11131f;
z-index: 100;
diff --git a/frontend/src/app/components/mempool-blocks/mempool-blocks.component.ts b/frontend/src/app/components/mempool-blocks/mempool-blocks.component.ts
index 91273169c..b711ce805 100644
--- a/frontend/src/app/components/mempool-blocks/mempool-blocks.component.ts
+++ b/frontend/src/app/components/mempool-blocks/mempool-blocks.component.ts
@@ -1,4 +1,4 @@
-import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, ChangeDetectorRef, HostListener } from '@angular/core';
+import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, ChangeDetectorRef, HostListener, Input } from '@angular/core';
import { Subscription, Observable, fromEvent, merge, of, combineLatest } from 'rxjs';
import { MempoolBlock } from '../../interfaces/websocket.interface';
import { StateService } from '../../services/state.service';
@@ -24,6 +24,9 @@ import { animate, style, transition, trigger } from '@angular/animations';
changeDetection: ChangeDetectionStrategy.OnPush,
})
export class MempoolBlocksComponent implements OnInit, OnDestroy {
+ @Input() tiny: boolean = false;
+ @Input() count: number = null;
+
specialBlocks = specialBlocks;
mempoolBlocks: MempoolBlock[] = [];
mempoolEmptyBlocks: MempoolBlock[] = this.mountEmptyBlocks();
@@ -238,7 +241,12 @@ export class MempoolBlocksComponent implements OnInit, OnDestroy {
reduceMempoolBlocksToFitScreen(blocks: MempoolBlock[]): MempoolBlock[] {
const innerWidth = this.stateService.env.BASE_MODULE !== 'liquid' && window.innerWidth <= 767.98 ? window.innerWidth : window.innerWidth / 2;
- const blocksAmount = Math.min(this.stateService.env.MEMPOOL_BLOCKS_AMOUNT, Math.floor(innerWidth / (this.blockWidth + this.blockPadding)));
+ let blocksAmount;
+ if (this.count) {
+ blocksAmount = this.count;
+ } else {
+ blocksAmount = Math.min(this.stateService.env.MEMPOOL_BLOCKS_AMOUNT, Math.floor(innerWidth / (this.blockWidth + this.blockPadding)));
+ }
while (blocks.length > blocksAmount) {
const block = blocks.pop();
const lastBlock = blocks[blocks.length - 1];
diff --git a/frontend/src/app/shared/shared.module.ts b/frontend/src/app/shared/shared.module.ts
index 4dd915889..0765298bd 100644
--- a/frontend/src/app/shared/shared.module.ts
+++ b/frontend/src/app/shared/shared.module.ts
@@ -91,6 +91,7 @@ import { TestnetAlertComponent } from './components/testnet-alert/testnet-alert.
import { GlobalFooterComponent } from './components/global-footer/global-footer.component';
import { MempoolBlockOverviewComponent } from '../components/mempool-block-overview/mempool-block-overview.component';
+import { ClockchainComponent } from '../components/clockchain/clockchain.component';
import { ClockFaceComponent } from '../components/clock-face/clock-face.component';
import { ClockAComponent } from '../components/clock/clock-a.component';
import { ClockBComponent } from '../components/clock/clock-b.component';
@@ -179,6 +180,7 @@ import { ClockBComponent } from '../components/clock/clock-b.component';
GlobalFooterComponent,
MempoolBlockOverviewComponent,
+ ClockchainComponent,
ClockAComponent,
ClockBComponent,
ClockFaceComponent,
@@ -291,6 +293,7 @@ import { ClockBComponent } from '../components/clock/clock-b.component';
GlobalFooterComponent,
MempoolBlockOverviewComponent,
+ ClockchainComponent,
ClockAComponent,
ClockBComponent,
ClockFaceComponent,