2020-03-05 16:13:46 +07:00
< div class = "container-xl" >
2020-02-16 22:15:07 +07:00
2020-02-19 23:50:23 +07:00
< div class = "title-block" >
2020-12-02 04:19:33 +09:00
< h1 class = "float-left" >< ng-template [ ngIf ]=" blockHeight = == 0 " i18n = "block.genesis" > Genesis </ ng-template >< ng-template [ ngIf ]=" blockHeight " i18n = "block.block" > Block < a [ routerLink ]="['/ block /' | relativeUrl , blockHash ]" > {{ blockHeight }}</ a ></ ng-template ></ h1 >
2020-07-19 22:54:31 +07:00
< button [ routerLink ]="['/' | relativeUrl ]" class = "btn btn-sm float-right mr-2 mt-2" > ✕ </ button >
2020-02-19 23:50:23 +07:00
</ div >
2020-02-16 22:15:07 +07:00
2020-07-19 22:54:31 +07:00
< div class = "clearfix" ></ div >
2020-02-19 23:50:23 +07:00
< ng-template [ ngIf ]="! isLoadingBlock && ! error " >
< div class = "box" >
< div class = "row" >
2020-03-10 14:46:12 +07:00
< div class = "col-sm" >
2020-02-19 23:50:23 +07:00
< table class = "table table-borderless table-striped" >
< tbody >
2020-05-10 12:31:57 +07:00
< tr >
2020-12-02 04:19:33 +09:00
< td class = "td-width" i18n = "block.hash" > Hash</ td >
2020-05-10 12:31:57 +07:00
< td >< a [ routerLink ]="['/ block /' | relativeUrl , block . id ]" title = "{{ block.id }}" > {{ block.id | shortenString : 13 }}</ a > < app-clipboard class = "d-none d-sm-inline-block" [ text ]=" block . id " ></ app-clipboard ></ td >
</ tr >
2020-02-19 23:50:23 +07:00
< tr >
2020-12-02 04:19:33 +09:00
< td i18n = "block.timestamp" > Timestamp</ td >
2020-03-10 14:46:12 +07:00
< td >
{{ block.timestamp * 1000 | date:'yyyy-MM-dd HH:mm' }}
< div class = "lg-inline" >
2020-12-02 04:19:33 +09:00
< i > (< app-time-since [ time ]=" block . timestamp " [ fastRender ]=" true " ></ app-time-since > )</ i >
2020-03-10 14:46:12 +07:00
</ div >
</ td >
2020-02-19 23:50:23 +07:00
</ tr >
< tr >
2020-12-02 04:19:33 +09:00
< td i18n = "block.size" > Size</ td >
2020-02-19 23:50:23 +07:00
< td > {{ block.size | bytes: 2 }}</ td >
</ tr >
< tr >
2020-12-02 04:19:33 +09:00
< td i18n = "block.weight" > Weight</ td >
2020-02-19 23:50:23 +07:00
< td > {{ block.weight | wuBytes: 2 }}</ td >
</ tr >
</ tbody >
</ table >
</ div >
2020-03-10 14:46:12 +07:00
< div class = "col-sm" >
2020-02-19 23:50:23 +07:00
< table class = "table table-borderless table-striped" >
< tbody >
2020-03-15 17:12:09 +07:00
< tr * ngIf = "block.medianFee !== undefined" >
2020-12-02 04:19:33 +09:00
< td class = "td-width" i18n = "block.median-fee" > Median fee</ td >
< td > ~{{ block.medianFee | number:'1.0-0' }} < span i18n = "shared.sat-vbyte|sat/vB" > sat/vB</ span > (< app-fiat [ value ]=" block . medianFee * 140 " digitsInfo = "1.2-2" ngbTooltip = "Based on average native segwit transaction of 140 vBytes" placement = "bottom" ></ app-fiat > )</ td >
2020-02-19 23:50:23 +07:00
</ tr >
2020-03-15 17:12:09 +07:00
< ng-template [ ngIf ]=" fees !== undefined " [ ngIfElse ]=" loadingFees " >
2020-03-04 15:10:30 +07:00
< tr >
2020-12-02 04:19:33 +09:00
< td i18n = "block.total-fees|Total fees in a block" > Total fees</ td >
2020-07-23 12:10:22 +07:00
< td * ngIf = "network !== 'liquid'; else liquidTotalFees" >< app-amount [ satoshis ]=" fees * 100000000 " digitsInfo = "1.2-2" [ noFiat ]=" true " ></ app-amount > (< app-fiat [ value ]=" fees * 100000000 " digitsInfo = "1.0-0" ></ app-fiat > )</ td >
< ng-template # liquidTotalFees >
2020-07-23 16:01:28 +07:00
< td > {{ fees * 100000000 | number }} L-sat (< app-fiat [ value ]=" fees * 100000000 " digitsInfo = "1.2-2" ></ app-fiat > )</ td >
2020-07-23 12:10:22 +07:00
</ ng-template >
2020-03-04 15:10:30 +07:00
</ tr >
2020-06-19 23:32:17 +07:00
< tr * ngIf = "network !== 'liquid'" >
2020-12-02 04:19:33 +09:00
< td i18n = "block.subsidy-and-fees|Total subsidy and fees in a block" > Subsidy + fees:</ td >
2020-03-04 15:10:30 +07:00
< td >
2020-05-10 21:34:25 +07:00
< app-amount [ satoshis ]="( blockSubsidy + fees ) * 100000000 " digitsInfo = "1.2-2" [ noFiat ]=" true " ></ app-amount > (< app-fiat [ value ]="( blockSubsidy + fees ) * 100000000 " digitsInfo = "1.0-0" ></ app-fiat > )
2020-03-04 15:10:30 +07:00
</ td >
</ tr >
</ ng-template >
< ng-template # loadingFees >
< tr >
2020-12-02 04:19:33 +09:00
< td i18n = "block.total-fees|Total fees in a block" > Total fees</ td >
2020-05-10 16:03:22 +07:00
< td style = "width: 75%;" >< span class = "skeleton-loader" ></ span ></ td >
2020-03-04 15:10:30 +07:00
</ tr >
2020-07-23 12:10:22 +07:00
< tr * ngIf = "network !== 'liquid'" >
2020-12-02 04:19:33 +09:00
< td i18n = "block.subsidy-and-fees|Total subsidy and fees in a block" > Subsidy + fees:</ td >
2020-03-04 15:10:30 +07:00
< td >< span class = "skeleton-loader" ></ span ></ td >
</ tr >
</ ng-template >
2020-05-10 00:35:21 +07:00
< tr >
2020-12-02 04:19:33 +09:00
< td i18n = "block.miner" > Miner</ td >
2020-07-20 10:29:38 +07:00
< td >< app-miner [ coinbaseTransaction ]=" coinbaseTx " ></ app-miner ></ td >
2020-05-10 00:35:21 +07:00
</ tr >
2020-02-19 23:50:23 +07:00
</ tbody >
</ table >
2020-02-16 22:15:07 +07:00
</ div >
</ div >
2020-02-19 23:50:23 +07:00
</ div >
2020-02-16 22:15:07 +07:00
2020-02-19 23:50:23 +07:00
< br >
2020-02-16 22:15:07 +07:00
2020-12-02 04:19:33 +09:00
< h2 class = "float-left" > {{ block.tx_count | number }} < ng-template [ ngIf ]=" block . tx_count = == 1 " i18n = "shared.transaction-count.singular" > transaction</ ng-template >< ng-template [ ngIf ]=" block . tx_count !== 1 " i18n = "shared.transaction-count.plural" > transactions</ ng-template ></ h2 >
2020-02-16 22:15:07 +07:00
2020-05-30 21:18:53 +07:00
< ngb-pagination class = "float-right" [ collectionSize ]=" block . tx_count " [ rotate ]=" true " [ pageSize ]=" itemsPerPage " [( page )]=" page " ( pageChange )=" pageChange ( page )" [ maxSize ]=" paginationMaxSize " [ boundaryLinks ]=" true " ></ ngb-pagination >
2020-02-16 22:15:07 +07:00
2020-05-30 21:18:53 +07:00
< div class = "clearfix" ></ div >
< app-transactions-list [ transactions ]=" transactions " ></ app-transactions-list >
< ng-template [ ngIf ]=" isLoadingTransactions " >
< div class = "text-center mb-4" >
2020-03-11 16:06:11 +07:00
< div class = "header-bg box" style = "padding: 10px; margin-bottom: 10px;" >
< span class = "skeleton-loader" ></ span >
</ div >
< div class = "header-bg box" >
< div class = "row" style = "height: 107px;" >
< div class = "col-sm" >
< span class = "skeleton-loader" ></ span >
</ div >
< div class = "col-sm" >
< span class = "skeleton-loader" ></ span >
2020-05-30 21:18:53 +07:00
< span class = "skeleton-loader" ></ span >
2020-03-11 16:06:11 +07:00
</ div >
</ div >
</ div >
2020-05-30 21:18:53 +07:00
</ div >
</ ng-template >
< ngb-pagination class = "float-right" [ collectionSize ]=" block . tx_count " [ rotate ]=" true " [ pageSize ]=" itemsPerPage " [( page )]=" page " ( pageChange )=" pageChange ( page )" [ maxSize ]=" paginationMaxSize " [ boundaryLinks ]=" true " ></ ngb-pagination >
2020-02-16 22:15:07 +07:00
2020-02-19 23:50:23 +07:00
</ ng-template >
< ng-template [ ngIf ]=" isLoadingBlock && ! error " >
< div class = "box" >
< div class = "row" >
2020-03-10 14:46:12 +07:00
< div class = "col-sm" >
2020-02-19 23:50:23 +07:00
< table class = "table table-borderless table-striped" >
< tbody >
< tr >
2020-03-25 00:41:46 +07:00
< td class = "td-width" colspan = "2" >< span class = "skeleton-loader" ></ span ></ td >
2020-02-19 23:50:23 +07:00
</ tr >
< tr >
< td colspan = "2" >< span class = "skeleton-loader" ></ span ></ td >
</ tr >
< tr >
< td colspan = "2" >< span class = "skeleton-loader" ></ span ></ td >
</ tr >
< tr >
< td colspan = "2" >< span class = "skeleton-loader" ></ span ></ td >
</ tr >
</ tbody >
</ table >
</ div >
2020-03-10 14:46:12 +07:00
< div class = "col-sm" >
2020-02-19 23:50:23 +07:00
< table class = "table table-borderless table-striped" >
< tbody >
2020-03-10 14:46:12 +07:00
< tr >
2020-03-25 00:41:46 +07:00
< td class = "td-width" colspan = "2" >< span class = "skeleton-loader" ></ span ></ td >
2020-03-10 14:46:12 +07:00
</ tr >
< tr >
< td colspan = "2" >< span class = "skeleton-loader" ></ span ></ td >
</ tr >
2020-02-19 23:50:23 +07:00
< tr >
< td colspan = "2" >< span class = "skeleton-loader" ></ span ></ td >
</ tr >
< tr >
< td colspan = "2" >< span class = "skeleton-loader" ></ span ></ td >
</ tr >
</ tbody >
</ table >
2020-02-16 22:15:07 +07:00
</ div >
</ div >
2020-02-19 23:50:23 +07:00
</ div >
</ ng-template >
< ng-template [ ngIf ]=" error " >
< div class = "text-center" >
2020-12-02 04:19:33 +09:00
< span i18n = "block.error.loading-block-data" > Error loading block data.</ span >
2020-07-18 13:09:57 +07:00
< br >< br >
2020-02-19 23:50:23 +07:00
< i > {{ error.error }}</ i >
</ div >
</ ng-template >
2020-02-16 22:15:07 +07:00
2020-02-19 23:50:23 +07:00
</ div >
2020-02-16 22:15:07 +07:00
2020-03-13 23:03:46 +09:00
< br >
2020-05-30 21:18:53 +07:00
< br >