2021-08-08 21:43:03 -03:00
< ng-container * ngIf = "(loadingBlocks$ | async) === false; else loadingBlocks" >
2022-09-29 22:45:40 +00:00
< div class = "mempool-blocks-container" [ class . time-ltr ]=" timeLtr " * ngIf = "(difficultyAdjustments$ | async) as da;" >
2021-11-11 15:49:47 -03:00
< div class = "flashing" >
2021-08-08 21:43:03 -03:00
< ng-template ngFor let-projectedBlock [ ngForOf ]=" mempoolBlocks $ | async " let-i = "index" [ ngForTrackBy ]=" trackByFn " >
2023-03-13 18:10:49 +09:00
< div @ blockEntryTrigger [@. disabled ]="! 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 " >
2021-12-19 15:20:21 +09:00
< a draggable = "false" [ routerLink ]="['/ mempool-block /' | relativeUrl , i ]"
class = "blockLink" [ ngClass ]="{' disabled ' : ( this . stateService . blockScrolling $ | async )}" > </ a >
2021-08-08 21:43:03 -03:00
< div class = "block-body" >
2022-07-06 10:00:32 -07:00
< div [ attr . data-cy ]="' mempool-block- ' + i + ' -fees '" class = "fees" >
2021-08-13 17:16:14 +03:00
~{{ projectedBlock.medianFee | number:feeRounding }} < span i18n = "shared.sat-vbyte|sat/vB" > sat/vB</ span >
2021-08-08 21:43:03 -03:00
</ div >
2022-07-06 10:00:32 -07:00
< div [ attr . data-cy ]="' mempool-block- ' + i + ' -fee-span '" class = "fee-span" >
2021-08-13 17:16:14 +03:00
{{ projectedBlock.feeRange[0] | number:feeRounding }} - {{ projectedBlock.feeRange[projectedBlock.feeRange.length - 1] | number:feeRounding }} < span i18n = "shared.sat-vbyte|sat/vB" > sat/vB</ span >
2021-08-08 21:43:03 -03:00
</ div >
2022-02-22 11:16:18 +09:00
< div * ngIf = "showMiningInfo" class = "block-size" >
2022-07-06 10:00:32 -07:00
< app-amount [ attr . data-cy ]="' mempool-block- ' + i + ' -total-fees '" [ satoshis ]=" projectedBlock . totalFees " digitsInfo = "1.2-3" [ noFiat ]=" true " ></ app-amount >
2022-02-22 11:16:18 +09:00
</ div >
< div * ngIf = "!showMiningInfo" class = "block-size" [ innerHTML ]="'& lrm ;' + ( projectedBlock . blockSize | bytes: 2 )" ></ div >
2022-07-06 10:00:32 -07:00
< div [ attr . data-cy ]="' mempool-block- ' + i + ' -transaction-count '" class = "transaction-count" >
2021-08-08 21:43:03 -03:00
< ng-container * ngTemplateOutlet = "projectedBlock.nTx === 1 ? transactionsSingular : transactionsPlural; context: {$implicit: projectedBlock.nTx | number}" ></ ng-container >
< ng-template # transactionsSingular let-i i18n = "shared.transaction-count.singular" > {{ i }} transaction</ ng-template >
< ng-template # transactionsPlural let-i i18n = "shared.transaction-count.plural" > {{ i }} transactions</ ng-template >
</ div >
2022-07-06 10:00:32 -07:00
< div [ attr . data-cy ]="' mempool-block- ' + i + ' -time '" class = "time-difference" * ngIf = "projectedBlock.blockVSize <= stateService.blockVSize; else mergedBlock" >
2021-12-27 22:54:45 +04:00
< ng-template [ ngIf ]=" network = == ' liquid ' || network = == ' liquidtestnet '" [ ngIfElse ]=" timeDiffMainnet " >
2023-03-05 18:54:04 -06:00
< app-time kind = "until" [ time ]="( 1 * i ) + now + 61000 " [ fastRender ]=" false " [ fixedRender ]=" true " ></ app-time >
2021-08-08 21:43:03 -03:00
</ ng-template >
< ng-template # timeDiffMainnet >
2023-03-05 18:54:04 -06:00
< app-time kind = "until" [ time ]=" da . timeAvg * ( i + 1 ) + now + da . timeOffset " [ fastRender ]=" false " [ fixedRender ]=" true " [ forceFloorOnTimeIntervals ]="[' hour ']" ></ app-time >
2021-08-08 21:43:03 -03:00
</ ng-template >
</ div >
< ng-template # mergedBlock >
2022-07-06 10:00:32 -07:00
< div [ attr . data-cy ]="' mempool-block- ' + i + ' -blocks '" class = "time-difference" >
2021-08-13 17:16:14 +03:00
< b > (< ng-container * ngTemplateOutlet = "blocksPlural; context: {$implicit: projectedBlock.blockVSize / stateService.blockVSize | ceil }" ></ ng-container > )</ b >
2021-08-08 21:43:03 -03:00
< ng-template # blocksPlural let-i i18n = "shared.blocks" > {{ i }} < span class = "shared-block" > blocks</ span ></ ng-template >
</ div >
2020-03-25 21:29:40 +07:00
</ ng-template >
</ div >
2021-08-08 21:43:03 -03:00
< span class = "animated-border" ></ span >
2020-02-16 22:15:07 +07:00
</ div >
2021-08-08 21:43:03 -03:00
</ ng-template >
</ div >
< div * ngIf = "arrowVisible" id = "arrow-up" [ ngStyle ]="{' right ' : rightPosition + 75 + ' px ', transition: transition }" ></ div >
2020-02-16 22:15:07 +07:00
</ div >
2021-08-08 21:43:03 -03:00
</ ng-container >
2020-12-06 23:44:08 +07:00
2021-08-08 21:43:03 -03:00
< ng-template # loadingBlocks >
2022-09-29 22:45:40 +00:00
< div class = "mempool-blocks-container" [ class . time-ltr ]=" timeLtr " >
2021-08-08 21:43:03 -03:00
< div class = "flashing" >
< ng-template ngFor let-projectedBlock [ ngForOf ]=" mempoolEmptyBlocks " let-i = "index" [ ngForTrackBy ]=" trackByFn " >
< div class = "bitcoin-block text-center mempool-block" id = "mempool-block-{{ i }}" [ ngStyle ]=" mempoolEmptyBlockStyles [ i ]" ></ div >
</ ng-template >
</ div >
2021-07-10 10:04:15 -03:00
</ div >
2021-08-08 21:43:03 -03:00
</ ng-template >