78 lines
4.3 KiB
HTML
78 lines
4.3 KiB
HTML
<div
|
|
#tooltip
|
|
class="block-overview-tooltip"
|
|
[class.clickable]="clickable"
|
|
[style.visibility]="tx ? 'visible' : 'hidden'"
|
|
[style.left]="tooltipPosition.x + 'px'"
|
|
[style.top]="tooltipPosition.y + 'px'"
|
|
>
|
|
<table class="table-fixed">
|
|
<tbody>
|
|
<tr>
|
|
<td class="label" i18n="shared.transaction">Transaction</td>
|
|
<td class="value">
|
|
<a [routerLink]="['/tx/' | relativeUrl, txid]">{{ txid | shortenString : 16}}</a>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="label" i18n="dashboard.latest-transactions.amount">Amount</td>
|
|
<td class="value"><app-amount [blockConversion]="blockConversion" [satoshis]="value" [noFiat]="true"></app-amount></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="label" i18n="transaction.fee|Transaction fee">Fee</td>
|
|
<td class="value">{{ fee | number }} <span class="symbol" i18n="shared.sat|sat">sat</span> <span class="fiat"><app-fiat [blockConversion]="blockConversion" [value]="fee"></app-fiat></span>
|
|
</tr>
|
|
<tr>
|
|
<td class="label" i18n="transaction.fee-rate|Transaction fee rate">Fee rate</td>
|
|
<td class="value">
|
|
<app-fee-rate [fee]="feeRate"></app-fee-rate>
|
|
</td>
|
|
</tr>
|
|
<tr *ngIf="hasEffectiveRate && effectiveRate != null">
|
|
<td *ngIf="!this.acceleration" class="label" i18n="transaction.effective-fee-rate|Effective transaction fee rate">Effective fee rate</td>
|
|
<td *ngIf="this.acceleration" class="label" i18n="transaction.effective-fee-rate|Effective transaction fee rate">Accelerated fee rate</td>
|
|
<td class="value">
|
|
<app-fee-rate [fee]="effectiveRate"></app-fee-rate>
|
|
</td>
|
|
</tr>
|
|
<tr *only-vsize>
|
|
<td class="label" i18n="transaction.vsize|Transaction Virtual Size">Virtual size</td>
|
|
<td class="value" [innerHTML]="'‎' + (vsize | vbytes: 2)"></td>
|
|
</tr>
|
|
<tr *only-weight>
|
|
<td class="label" i18n="transaction.weight|Transaction Weight">Weight</td>
|
|
<td class="value" [innerHTML]="'‎' + ((vsize * 4) | wuBytes: 2)"></td>
|
|
</tr>
|
|
<tr *ngIf="auditEnabled && tx && tx.status && tx.status.length">
|
|
<td class="label" i18n="transaction.audit-status">Audit status</td>
|
|
<td class="value">
|
|
<ng-container [ngSwitch]="tx?.status">
|
|
<span *ngSwitchCase="'found'" class="badge badge-success" i18n="transaction.audit.match">Match</span>
|
|
<span *ngSwitchCase="'censored'" class="badge badge-danger" i18n="transaction.audit.removed">Removed</span>
|
|
<span *ngSwitchCase="'missing'" class="badge badge-warning" i18n="transaction.audit.marginal">Marginal fee rate</span>
|
|
<span *ngSwitchCase="'sigop'" class="badge badge-warning" i18n="transaction.audit.sigop">High sigop count</span>
|
|
<span *ngSwitchCase="'fresh'" class="badge badge-warning" i18n="transaction.audit.recently-broadcasted">Recently broadcasted</span>
|
|
<span *ngSwitchCase="'freshcpfp'" class="badge badge-warning" i18n="transaction.audit.recently-cpfped">Recently CPFP'd</span>
|
|
<span *ngSwitchCase="'added'" class="badge badge-warning" i18n="transaction.audit.added">Added</span>
|
|
<span *ngSwitchCase="'selected'" class="badge badge-warning" i18n="transaction.audit.marginal">Marginal fee rate</span>
|
|
<span *ngSwitchCase="'rbf'" class="badge badge-warning" i18n="transaction.audit.conflicting">Conflicting</span>
|
|
<span *ngSwitchCase="'accelerated'" class="badge badge-accelerated" i18n="transaction.audit.accelerated">Accelerated</span>
|
|
</ng-container>
|
|
</td>
|
|
</tr>
|
|
{{ activeFilters.rbf }}
|
|
<tr *ngIf="(!auditEnabled && tx && tx.status === 'accelerated') || filters.length">
|
|
<td colspan="2">
|
|
<div class="tags" [class.any-mode]="filterMode === 'or'">
|
|
<span class="goggles-icon"><app-svg-images name="goggles" width="100%" height="100%"></app-svg-images></span>
|
|
<span *ngIf="!auditEnabled && tx && tx.status === 'accelerated'" class="badge badge-accelerated" i18n="transaction.audit.accelerated">Accelerated</span>
|
|
<ng-container *ngFor="let filter of filters;">
|
|
<span class="btn badge filter-tag" [class.matching]="activeFilters[filter.key]">{{ filter.label }}</span>
|
|
</ng-container>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|