Transaction view.
This commit is contained in:
@@ -1 +1,143 @@
|
||||
<p>transaction works!</p>
|
||||
<div class="container">
|
||||
<h1>Transaction</h1>
|
||||
|
||||
<ng-template [ngIf]="!isLoadingTx" [ngIfElse]="loadingTx">
|
||||
|
||||
<table class="table table-borderless">
|
||||
<thead>
|
||||
<tr class="header-bg">
|
||||
<th>
|
||||
{{ tx.txid }}
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
|
||||
<table class="table table-borderless smaller-text">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<div *ngFor="let vin of tx.vin">
|
||||
<ng-template [ngIf]="vin.is_coinbase" [ngIfElse]="regularVin">
|
||||
Coinbase
|
||||
</ng-template>
|
||||
<ng-template #regularVin>
|
||||
<a [routerLink]="['/explorer/address/', vin.prevout.scriptpubkey_address]">{{ vin.prevout.scriptpubkey_address }}</a>
|
||||
(<a [routerLink]="['/explorer/tx/', vin.txid]">tx</a>)
|
||||
</ng-template>
|
||||
</div>
|
||||
</td>
|
||||
<td class="text-right">
|
||||
<div *ngFor="let vin of tx.vin">
|
||||
<ng-template [ngIf]="vin.prevout">
|
||||
<ng-template [ngIf]="viewFiat" [ngIfElse]="viewFiatVin">
|
||||
<span class="green-color">{{ conversions.USD * (vin.prevout.value / 100000000) | currency:'USD':'symbol':'1.2-2' }}</span>
|
||||
</ng-template>
|
||||
<ng-template #viewFiatVin>
|
||||
{{ vin.prevout.value / 100000000 }} BTC
|
||||
</ng-template>
|
||||
</ng-template>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
<div class="col">
|
||||
<table class="table table-borderless smaller-text">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<div *ngFor="let vout of tx.vout">
|
||||
<a *ngIf="vout.scriptpubkey_address; else scriptpubkey_type" [routerLink]="['/explorer/address/', vout.scriptpubkey_address]">{{ vout.scriptpubkey_address }}</a>
|
||||
<ng-template #scriptpubkey_type>
|
||||
{{ vout.scriptpubkey_type | uppercase }}
|
||||
</ng-template>
|
||||
</div>
|
||||
</td>
|
||||
<td class="text-right">
|
||||
<div *ngFor="let vout of tx.vout">
|
||||
<ng-template [ngIf]="viewFiat" [ngIfElse]="viewFiatVout">
|
||||
<span class="green-color">{{ conversions.USD * (vout.value / 100000000) | currency:'USD':'symbol':'1.2-2' }}</span>
|
||||
</ng-template>
|
||||
<ng-template #viewFiatVout>
|
||||
{{ vout.value / 100000000 }} BTC
|
||||
</ng-template>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="text-right" colspan="4">
|
||||
<button *ngIf="tx.status.confirmed" type="button" class="btn btn-success">{{ latestBlockHeight - tx.status.block_height + 1 }} confirmations</button>
|
||||
<ng-template #unconfirmedButton>
|
||||
<button type="button" class="btn btn-danger">Unconfirmed</button>
|
||||
</ng-template>
|
||||
|
||||
<button type="button" class="btn btn-primary" (click)="viewFiat = !viewFiat">
|
||||
<ng-template [ngIf]="viewFiat" [ngIfElse]="viewFiatButton">
|
||||
<span *ngIf="conversions">{{ conversions.USD * (totalOutput / 100000000) | currency:'USD':'symbol':'1.2-2' }}</span>
|
||||
</ng-template>
|
||||
<ng-template #viewFiatButton>
|
||||
{{ totalOutput / 100000000 }} BTC
|
||||
</ng-template>
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
<h2>Details</h2>
|
||||
|
||||
<br>
|
||||
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<table class="table table-borderless table-striped">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>Size</td>
|
||||
<td>{{ tx.size | bytes }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Weight</td>
|
||||
<td>{{ tx.weight }} WU</td>
|
||||
</tr>
|
||||
<tr *ngIf="tx.status.confirmed">
|
||||
<td>Included in block</td>
|
||||
<td><a [routerLink]="['/explorer/block/', tx.status.block_hash]">#{{ tx.status.block_height }}</a></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="col">
|
||||
<table class="table table-borderless table-striped" *ngIf="tx.fee">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>Fees</td>
|
||||
<td>{{ tx.fee }} <span *ngIf="conversions">(<span class="green-color">{{ conversions.USD * tx.fee | currency:'USD':'symbol':'1.2-2' }}</span>)</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Fees per vByte</td>
|
||||
<td>{{ (tx.fee * 100000000) / tx.vsize | number : '1.2-2' }} sat/vB</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</ng-template>
|
||||
<ng-template #loadingTx>
|
||||
<div class="text-center">
|
||||
<div class="spinner-border text-light"></div>
|
||||
<br><br>
|
||||
</div>
|
||||
</ng-template>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user