cic-internal-integration/apps/cic-staff-client/docs/compodoc/components/TransactionDetailsComponent.html

1259 lines
56 KiB
HTML
Raw Normal View History

<!doctype html>
<html class="no-js" lang="">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<title>CICADA</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/x-icon" href="../images/favicon.ico">
<link rel="stylesheet" href="../styles/style.css">
</head>
<body>
<div class="navbar navbar-default navbar-fixed-top visible-xs">
<a href="../" class="navbar-brand">CICADA</a>
<button type="button" class="btn btn-default btn-menu ion-ios-menu" id="btn-menu"></button>
</div>
<div class="xs-menu menu" id="mobile-menu">
<div id="book-search-input" role="search"><input type="text" placeholder="Type to search"></div> <compodoc-menu></compodoc-menu>
</div>
<div class="container-fluid main">
<div class="row main">
<div class="hidden-xs menu">
<compodoc-menu mode="normal"></compodoc-menu>
</div>
<!-- START CONTENT -->
<div class="content component">
<div class="content-data">
<ol class="breadcrumb">
<li>Components</li>
<li>TransactionDetailsComponent</li>
</ol>
<ul class="nav nav-tabs" role="tablist">
<li class="active">
<a href="#info" role="tab" id="info-tab" data-toggle="tab" data-link="info">Info</a>
</li>
<li >
<a href="#source" role="tab" id="source-tab" data-toggle="tab" data-link="source">Source</a>
</li>
<li >
<a href="#templateData" role="tab" id="templateData-tab" data-toggle="tab" data-link="template">Template</a>
</li>
<li >
<a href="#styleData" role="tab" id="styleData-tab" data-toggle="tab" data-link="style">Styles</a>
</li>
<li >
<a href="#tree" role="tab" id="tree-tab" data-toggle="tab" data-link="dom-tree">DOM Tree</a>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane fade active in" id="c-info"><p class="comment">
<h3>File</h3>
</p>
<p class="comment">
<code>src/app/pages/transactions/transaction-details/transaction-details.component.ts</code>
</p>
<p class="comment">
<h3>Implements</h3>
</p>
<p class="comment">
<code><a href="https://angular.io/api/core/OnInit" target="_blank" >OnInit</a></code>
</p>
<section>
<h3>Metadata</h3>
<table class="table table-sm table-hover">
<tbody>
<tr>
<td class="col-md-3">changeDetection</td>
<td class="col-md-9"><code>ChangeDetectionStrategy.OnPush</code></td>
</tr>
<tr>
<td class="col-md-3">selector</td>
<td class="col-md-9"><code>app-transaction-details</code></td>
</tr>
<tr>
<td class="col-md-3">styleUrls</td>
<td class="col-md-9"><code>./transaction-details.component.scss</code></td>
</tr>
<tr>
<td class="col-md-3">templateUrl</td>
<td class="col-md-9"><code>./transaction-details.component.html</code></td>
</tr>
</tbody>
</table>
</section>
<section>
<h3 id="index">Index</h3>
<table class="table table-sm table-bordered index-table">
<tbody>
<tr>
<td class="col-md-4">
<h6><b>Properties</b></h6>
</td>
</tr>
<tr>
<td class="col-md-4">
<ul class="index-list">
<li>
<a href="#recipientBloxbergLink">recipientBloxbergLink</a>
</li>
<li>
<a href="#senderBloxbergLink">senderBloxbergLink</a>
</li>
<li>
<a href="#tokenName">tokenName</a>
</li>
<li>
<a href="#tokenSymbol">tokenSymbol</a>
</li>
<li>
<a href="#traderBloxbergLink">traderBloxbergLink</a>
</li>
</ul>
</td>
</tr>
<tr>
<td class="col-md-4">
<h6><b>Methods</b></h6>
</td>
</tr>
<tr>
<td class="col-md-4">
<ul class="index-list">
<li>
<a href="#close">close</a>
</li>
<li>
<a href="#copyAddress">copyAddress</a>
</li>
<li>
<span class="modifier">Async</span>
<a href="#ngOnInit">ngOnInit</a>
</li>
<li>
<span class="modifier">Async</span>
<a href="#reverseTransaction">reverseTransaction</a>
</li>
<li>
<span class="modifier">Async</span>
<a href="#viewRecipient">viewRecipient</a>
</li>
<li>
<span class="modifier">Async</span>
<a href="#viewSender">viewSender</a>
</li>
<li>
<span class="modifier">Async</span>
<a href="#viewTrader">viewTrader</a>
</li>
</ul>
</td>
</tr>
<tr>
<td class="col-md-4">
<h6><b>Inputs</b></h6>
</td>
</tr>
<tr>
<td class="col-md-4">
<ul class="index-list">
<li>
<a href="#transaction">transaction</a>
</li>
</ul>
</td>
</tr>
<tr>
<td class="col-md-4">
<h6><b>Outputs</b></h6>
</td>
</tr>
<tr>
<td class="col-md-4">
<ul class="index-list">
<li>
<a href="#closeWindow">closeWindow</a>
</li>
</ul>
</td>
</tr>
</tbody>
</table>
</section>
<section>
<h3 id="constructor">Constructor</h3>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<code>constructor(router: <a href="https://angular.io/api/router/Router" target="_blank">Router</a>, transactionService: <a href="../injectables/TransactionService.html">TransactionService</a>, snackBar: MatSnackBar, tokenService: <a href="../injectables/TokenService.html">TokenService</a>)</code>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="30" class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:30</a></div>
</td>
</tr>
<tr>
<td class="col-md-4">
<div>
<b>Parameters :</b>
<table class="params">
<thead>
<tr>
<td>Name</td>
<td>Type</td>
<td>Optional</td>
</tr>
</thead>
<tbody>
<tr>
<td>router</td>
<td>
<code><a href="https://angular.io/api/router/Router" target="_blank" >Router</a></code>
</td>
<td>
No
</td>
</tr>
<tr>
<td>transactionService</td>
<td>
<code><a href="../injectables/TransactionService.html" target="_self" >TransactionService</a></code>
</td>
<td>
No
</td>
</tr>
<tr>
<td>snackBar</td>
<td>
<code>MatSnackBar</code>
</td>
<td>
No
</td>
</tr>
<tr>
<td>tokenService</td>
<td>
<code><a href="../injectables/TokenService.html" target="_self" >TokenService</a></code>
</td>
<td>
No
</td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
</tbody>
</table>
</section>
<section>
<h3 id="inputs">Inputs</h3>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<a name="transaction"></a>
<b>transaction</b>
</td>
</tr>
<tr>
<td class="col-md-2" colspan="2">
<div class="io-line">Defined in <a href="" data-line="22" class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:22</a></div>
</td>
</tr>
</tbody>
</table>
</section>
<section>
<h3 id="outputs">Outputs</h3>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<a name="closeWindow"></a>
<b>closeWindow</b>
</td>
</tr>
<tr>
<td class="col-md-4">
<i>Type : </i> <code>EventEmitter&lt;any&gt;</code>
</td>
</tr>
<tr>
<td class="col-md-2" colspan="2">
<div class="io-line">Defined in <a href="" data-line="24" class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:24</a></div>
</td>
</tr>
</tbody>
</table>
</section>
<section>
<h3 id="methods">
Methods
</h3>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<a name="close"></a>
<span class="name">
<b>
close
</b>
<a href="#close"><span class="icon ion-ios-link"></span></a>
</span>
</td>
</tr>
<tr>
<td class="col-md-4">
<code>close()</code>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="86"
class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:86</a></div>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-description">
<b>Returns : </b> <code><a href="https://www.typescriptlang.org/docs/handbook/basic-types.html" target="_blank" >void</a></code>
</div>
</td>
</tr>
</tbody>
</table>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<a name="copyAddress"></a>
<span class="name">
<b>
copyAddress
</b>
<a href="#copyAddress"><span class="icon ion-ios-link"></span></a>
</span>
</td>
</tr>
<tr>
<td class="col-md-4">
<code>copyAddress(address: <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank">string</a>)</code>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="80"
class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:80</a></div>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-description">
<b>Parameters :</b>
<table class="params">
<thead>
<tr>
<td>Name</td>
<td>Type</td>
<td>Optional</td>
</tr>
</thead>
<tbody>
<tr>
<td>address</td>
<td>
<code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank" >string</a></code>
</td>
<td>
No
</td>
</tr>
</tbody>
</table>
</div>
<div>
</div>
<div class="io-description">
<b>Returns : </b> <code><a href="https://www.typescriptlang.org/docs/handbook/basic-types.html" target="_blank" >void</a></code>
</div>
<div class="io-description">
</div>
</td>
</tr>
</tbody>
</table>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<a name="ngOnInit"></a>
<span class="name">
<b>
<span class="modifier">Async</span>
ngOnInit
</b>
<a href="#ngOnInit"><span class="icon ion-ios-link"></span></a>
</span>
</td>
</tr>
<tr>
<td class="col-md-4">
<span class="modifier-icon icon ion-ios-reset"></span>
<code>ngOnInit()</code>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="39"
class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:39</a></div>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-description">
<b>Returns : </b> <code>Promise&lt;void&gt;</code>
</div>
</td>
</tr>
</tbody>
</table>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<a name="reverseTransaction"></a>
<span class="name">
<b>
<span class="modifier">Async</span>
reverseTransaction
</b>
<a href="#reverseTransaction"><span class="icon ion-ios-link"></span></a>
</span>
</td>
</tr>
<tr>
<td class="col-md-4">
<span class="modifier-icon icon ion-ios-reset"></span>
<code>reverseTransaction()</code>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="71"
class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:71</a></div>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-description">
<b>Returns : </b> <code>Promise&lt;void&gt;</code>
</div>
</td>
</tr>
</tbody>
</table>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<a name="viewRecipient"></a>
<span class="name">
<b>
<span class="modifier">Async</span>
viewRecipient
</b>
<a href="#viewRecipient"><span class="icon ion-ios-link"></span></a>
</span>
</td>
</tr>
<tr>
<td class="col-md-4">
<span class="modifier-icon icon ion-ios-reset"></span>
<code>viewRecipient()</code>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="63"
class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:63</a></div>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-description">
<b>Returns : </b> <code>Promise&lt;void&gt;</code>
</div>
</td>
</tr>
</tbody>
</table>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<a name="viewSender"></a>
<span class="name">
<b>
<span class="modifier">Async</span>
viewSender
</b>
<a href="#viewSender"><span class="icon ion-ios-link"></span></a>
</span>
</td>
</tr>
<tr>
<td class="col-md-4">
<span class="modifier-icon icon ion-ios-reset"></span>
<code>viewSender()</code>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="59"
class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:59</a></div>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-description">
<b>Returns : </b> <code>Promise&lt;void&gt;</code>
</div>
</td>
</tr>
</tbody>
</table>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<a name="viewTrader"></a>
<span class="name">
<b>
<span class="modifier">Async</span>
viewTrader
</b>
<a href="#viewTrader"><span class="icon ion-ios-link"></span></a>
</span>
</td>
</tr>
<tr>
<td class="col-md-4">
<span class="modifier-icon icon ion-ios-reset"></span>
<code>viewTrader()</code>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="67"
class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:67</a></div>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-description">
<b>Returns : </b> <code>Promise&lt;void&gt;</code>
</div>
</td>
</tr>
</tbody>
</table>
</section>
<section>
<h3 id="inputs">
Properties
</h3>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<a name="recipientBloxbergLink"></a>
<span class="name">
<b>
recipientBloxbergLink</b>
<a href="#recipientBloxbergLink"><span class="icon ion-ios-link"></span></a>
</span>
</td>
</tr>
<tr>
<td class="col-md-4">
<i>Type : </i> <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank" >string</a></code>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="27" class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:27</a></div>
</td>
</tr>
</tbody>
</table>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<a name="senderBloxbergLink"></a>
<span class="name">
<b>
senderBloxbergLink</b>
<a href="#senderBloxbergLink"><span class="icon ion-ios-link"></span></a>
</span>
</td>
</tr>
<tr>
<td class="col-md-4">
<i>Type : </i> <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank" >string</a></code>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="26" class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:26</a></div>
</td>
</tr>
</tbody>
</table>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<a name="tokenName"></a>
<span class="name">
<b>
tokenName</b>
<a href="#tokenName"><span class="icon ion-ios-link"></span></a>
</span>
</td>
</tr>
<tr>
<td class="col-md-4">
<i>Type : </i> <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank" >string</a></code>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="29" class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:29</a></div>
</td>
</tr>
</tbody>
</table>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<a name="tokenSymbol"></a>
<span class="name">
<b>
tokenSymbol</b>
<a href="#tokenSymbol"><span class="icon ion-ios-link"></span></a>
</span>
</td>
</tr>
<tr>
<td class="col-md-4">
<i>Type : </i> <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank" >string</a></code>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="30" class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:30</a></div>
</td>
</tr>
</tbody>
</table>
<table class="table table-sm table-bordered">
<tbody>
<tr>
<td class="col-md-4">
<a name="traderBloxbergLink"></a>
<span class="name">
<b>
traderBloxbergLink</b>
<a href="#traderBloxbergLink"><span class="icon ion-ios-link"></span></a>
</span>
</td>
</tr>
<tr>
<td class="col-md-4">
<i>Type : </i> <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/string" target="_blank" >string</a></code>
</td>
</tr>
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="28" class="link-to-prism">src/app/pages/transactions/transaction-details/transaction-details.component.ts:28</a></div>
</td>
</tr>
</tbody>
</table>
</section>
</div>
<div class="tab-pane fade tab-source-code" id="c-source">
<pre class="line-numbers compodoc-sourcecode"><code class="language-typescript">import {
ChangeDetectionStrategy,
Component,
EventEmitter,
Input,
OnInit,
Output,
} from &#x27;@angular/core&#x27;;
import { Router } from &#x27;@angular/router&#x27;;
import { TokenService, TransactionService } from &#x27;@app/_services&#x27;;
import { copyToClipboard } from &#x27;@app/_helpers&#x27;;
import { MatSnackBar } from &#x27;@angular/material/snack-bar&#x27;;
import { strip0x } from &#x27;@src/assets/js/ethtx/dist/hex&#x27;;
@Component({
selector: &#x27;app-transaction-details&#x27;,
templateUrl: &#x27;./transaction-details.component.html&#x27;,
styleUrls: [&#x27;./transaction-details.component.scss&#x27;],
changeDetection: ChangeDetectionStrategy.OnPush,
})
export class TransactionDetailsComponent implements OnInit {
@Input() transaction;
@Output() closeWindow: EventEmitter&lt;any&gt; &#x3D; new EventEmitter&lt;any&gt;();
senderBloxbergLink: string;
recipientBloxbergLink: string;
traderBloxbergLink: string;
tokenName: string;
tokenSymbol: string;
constructor(
private router: Router,
private transactionService: TransactionService,
private snackBar: MatSnackBar,
private tokenService: TokenService
) {}
async ngOnInit(): Promise&lt;void&gt; {
await this.transactionService.init();
await this.tokenService.init();
if (this.transaction?.type &#x3D;&#x3D;&#x3D; &#x27;conversion&#x27;) {
this.traderBloxbergLink &#x3D;
&#x27;https://blockexplorer.bloxberg.org/address/&#x27; + this.transaction?.trader + &#x27;/transactions&#x27;;
} else {
this.senderBloxbergLink &#x3D;
&#x27;https://blockexplorer.bloxberg.org/address/&#x27; + this.transaction?.from + &#x27;/transactions&#x27;;
this.recipientBloxbergLink &#x3D;
&#x27;https://blockexplorer.bloxberg.org/address/&#x27; + this.transaction?.to + &#x27;/transactions&#x27;;
}
this.tokenService.load.subscribe(async (status: boolean) &#x3D;&gt; {
if (status) {
this.tokenSymbol &#x3D; await this.tokenService.getTokenSymbol();
this.tokenName &#x3D; await this.tokenService.getTokenName();
}
});
}
async viewSender(): Promise&lt;void&gt; {
await this.router.navigateByUrl(&#x60;/accounts/${strip0x(this.transaction.from)}&#x60;);
}
async viewRecipient(): Promise&lt;void&gt; {
await this.router.navigateByUrl(&#x60;/accounts/${strip0x(this.transaction.to)}&#x60;);
}
async viewTrader(): Promise&lt;void&gt; {
await this.router.navigateByUrl(&#x60;/accounts/${strip0x(this.transaction.trader)}&#x60;);
}
async reverseTransaction(): Promise&lt;void&gt; {
await this.transactionService.transferRequest(
this.transaction.token.address,
this.transaction.to,
this.transaction.from,
this.transaction.value
);
}
copyAddress(address: string): void {
if (copyToClipboard(address)) {
this.snackBar.open(address + &#x27; copied successfully!&#x27;, &#x27;Close&#x27;, { duration: 3000 });
}
}
close(): void {
this.transaction &#x3D; null;
this.closeWindow.emit(this.transaction);
}
}
</code></pre>
</div>
<div class="tab-pane fade " id="c-templateData">
<pre class="line-numbers"><code class="language-html">&lt;div *ngIf&#x3D;&quot;transaction&quot; class&#x3D;&quot;mb-3 mt-1&quot;&gt;
&lt;div class&#x3D;&quot;card text-center&quot;&gt;
&lt;mat-card-title class&#x3D;&quot;card-header&quot;&gt;
&lt;div class&#x3D;&quot;row&quot;&gt;
TRANSACTION DETAILS
&lt;button
mat-raised-button
type&#x3D;&quot;button&quot;
class&#x3D;&quot;btn btn-outline-secondary ml-auto mr-2&quot;
(click)&#x3D;&quot;close()&quot;
&gt;
CLOSE
&lt;/button&gt;
&lt;/div&gt;
&lt;/mat-card-title&gt;
&lt;div *ngIf&#x3D;&quot;transaction.type &#x3D;&#x3D; &#x27;transaction&#x27;&quot; class&#x3D;&quot;card-body&quot;&gt;
&lt;div class&#x3D;&quot;row&quot;&gt;
&lt;div class&#x3D;&quot;col-md-6&quot;&gt;
&lt;h4&gt;Exchange:&lt;/h4&gt;
&lt;ul class&#x3D;&quot;list-group list-group-flush&quot;&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;Sender: {{ transaction.sender?.vcard.fn[0].value }}&lt;/span
&gt;&lt;br /&gt;&lt;br /&gt;
&lt;span&gt;
Sender Address:
&lt;a href&#x3D;&quot;{{ senderBloxbergLink }}&quot; target&#x3D;&quot;_blank&quot;&gt; {{ transaction.from }} &lt;/a&gt;
&lt;img
src&#x3D;&quot;assets/images/checklist.svg&quot;
class&#x3D;&quot;ml-2&quot;
height&#x3D;&quot;20rem&quot;
(click)&#x3D;&quot;copyAddress(transaction.from)&quot;
alt&#x3D;&quot;Copy&quot;
/&gt; &lt;/span
&gt;&lt;br /&gt;&lt;br /&gt;
&lt;button
mat-raised-button
color&#x3D;&quot;primary&quot;
class&#x3D;&quot;btn btn-outline-info&quot;
(click)&#x3D;&quot;viewSender()&quot;
&gt;
View Sender
&lt;/button&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;Recipient: {{ transaction.recipient?.vcard.fn[0].value }}&lt;/span
&gt;&lt;br /&gt;&lt;br /&gt;
&lt;span&gt;
Recipient Address:
&lt;a href&#x3D;&quot;{{ recipientBloxbergLink }}&quot; target&#x3D;&quot;_blank&quot;&gt; {{ transaction.to }} &lt;/a&gt;
&lt;img
src&#x3D;&quot;assets/images/checklist.svg&quot;
class&#x3D;&quot;ml-2&quot;
height&#x3D;&quot;20rem&quot;
(click)&#x3D;&quot;copyAddress(transaction.to)&quot;
alt&#x3D;&quot;Copy&quot;
/&gt; &lt;/span
&gt;&lt;br /&gt;&lt;br /&gt;
&lt;button
mat-raised-button
color&#x3D;&quot;primary&quot;
class&#x3D;&quot;btn btn-outline-info&quot;
(click)&#x3D;&quot;viewRecipient()&quot;
&gt;
View Recipient
&lt;/button&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span
&gt;Amount: {{ transaction.value | tokenRatio }} {{ tokenSymbol | uppercase }}&lt;/span
&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 class&#x3D;&quot;mt-2&quot;&gt;Token:&lt;/h4&gt;
&lt;ul class&#x3D;&quot;list-group list-group-flush&quot;&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;
Address:
{{ transaction.token._address }}
&lt;img
src&#x3D;&quot;assets/images/checklist.svg&quot;
class&#x3D;&quot;ml-2&quot;
height&#x3D;&quot;20rem&quot;
(click)&#x3D;&quot;copyAddress(transaction.token._address)&quot;
alt&#x3D;&quot;Copy&quot;
/&gt;
&lt;/span&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;Name: {{ tokenName }}&lt;/span&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;Symbol: {{ tokenSymbol | uppercase }}&lt;/span&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class&#x3D;&quot;col-md-6&quot;&gt;
&lt;h4&gt;Transaction:&lt;/h4&gt;
&lt;ul class&#x3D;&quot;list-group list-group-flush&quot;&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;Block: {{ transaction.tx.block }}&lt;/span&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;Index: {{ transaction.tx.txIndex }}&lt;/span&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;Hash: {{ transaction.tx.txHash }}&lt;/span&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;Success: {{ transaction.tx.success }}&lt;/span&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;Timestamp: {{ transaction.tx.timestamp | unixDate }}&lt;/span&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class&#x3D;&quot;mb-3&quot;&gt;
&lt;button mat-raised-button color&#x3D;&quot;primary&quot; type&#x3D;&quot;button&quot; class&#x3D;&quot;btn btn-outline-success&quot;&gt;
Resend SMS
&lt;/button&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;button mat-raised-button color&#x3D;&quot;warn&quot; type&#x3D;&quot;button&quot; class&#x3D;&quot;btn btn-outline-danger&quot;&gt;
Reverse Transaction
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div *ngIf&#x3D;&quot;transaction.type &#x3D;&#x3D; &#x27;conversion&#x27;&quot; class&#x3D;&quot;card-body&quot;&gt;
&lt;h3&gt;Exchange:&lt;/h3&gt;
&lt;ul class&#x3D;&quot;list-group list-group-flush&quot;&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span
&gt;&lt;strong&gt;Trader: {{ transaction.sender?.vcard.fn[0].value }}&lt;/strong&gt;&lt;/span
&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;
Trader Address:
&lt;a href&#x3D;&quot;{{ traderBloxbergLink }}&quot; target&#x3D;&quot;_blank&quot;&gt; {{ transaction.trader }} &lt;/a&gt;
&lt;img
src&#x3D;&quot;assets/images/checklist.svg&quot;
class&#x3D;&quot;ml-2&quot;
height&#x3D;&quot;20rem&quot;
(click)&#x3D;&quot;copyAddress(transaction.trader)&quot;
alt&#x3D;&quot;Copy&quot;
/&gt;
&lt;/span&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;button mat-raised-button color&#x3D;&quot;primary&quot; class&#x3D;&quot;btn btn-outline-info&quot; (click)&#x3D;&quot;viewTrader()&quot;&gt;
View Trader
&lt;/button&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;div class&#x3D;&quot;row&quot;&gt;
&lt;div class&#x3D;&quot;col-md-6&quot;&gt;
&lt;h4&gt;Source Token:&lt;/h4&gt;
&lt;ul class&#x3D;&quot;list-group list-group-flush&quot;&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;
Address:
{{ transaction.sourceToken.address }}
&lt;img
src&#x3D;&quot;assets/images/checklist.svg&quot;
class&#x3D;&quot;ml-2&quot;
height&#x3D;&quot;20rem&quot;
(click)&#x3D;&quot;copyAddress(transaction.sourceToken.address)&quot;
alt&#x3D;&quot;Copy&quot;
/&gt;
&lt;/span&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;Name: {{ transaction.sourceToken.name }}&lt;/span&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;Symbol: {{ transaction.sourceToken.symbol | uppercase }}&lt;/span&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span
&gt;Amount: {{ transaction.fromValue }}
{{ transaction.sourceToken.symbol | uppercase }}&lt;/span
&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class&#x3D;&quot;col-md-6&quot;&gt;
&lt;h4&gt;Destination Token:&lt;/h4&gt;
&lt;ul class&#x3D;&quot;list-group list-group-flush&quot;&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;
Address:
{{ transaction.destinationToken.address }}
&lt;img
src&#x3D;&quot;assets/images/checklist.svg&quot;
class&#x3D;&quot;ml-2&quot;
height&#x3D;&quot;20rem&quot;
(click)&#x3D;&quot;copyAddress(transaction.destinationToken.address)&quot;
alt&#x3D;&quot;Copy&quot;
/&gt;
&lt;/span&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;Name: {{ transaction.destinationToken.name }}&lt;/span&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span&gt;Symbol: {{ transaction.destinationToken.symbol | uppercase }}&lt;/span&gt;
&lt;/li&gt;
&lt;li class&#x3D;&quot;list-group-item&quot;&gt;
&lt;span
&gt;Amount: {{ transaction.toValue }}
{{ transaction.destinationToken.symbol | uppercase }}&lt;/span
&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class&#x3D;&quot;col-md-6&quot;&gt;
&lt;button mat-raised-button color&#x3D;&quot;primary&quot; type&#x3D;&quot;button&quot; class&#x3D;&quot;btn btn-outline-success&quot;&gt;
Resend SMS
&lt;/button&gt;
&lt;/div&gt;
&lt;div class&#x3D;&quot;col-md-6&quot;&gt;
&lt;button
mat-raised-button
color&#x3D;&quot;warn&quot;
type&#x3D;&quot;button&quot;
class&#x3D;&quot;btn btn-outline-danger ml-2&quot;
(click)&#x3D;&quot;reverseTransaction()&quot;
&gt;
Reverse Transaction
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</code></pre>
</div>
<div class="tab-pane fade " id="c-styleData">
<p class="comment">
<code>./transaction-details.component.scss</code>
</p>
<pre class="line-numbers"><code class="language-scss"></code></pre>
</div>
<div class="tab-pane fade " id="c-tree">
<div id="tree-container"></div>
<div class="tree-legend">
<div class="title">
<b>Legend</b>
</div>
<div>
<div class="color htmlelement"></div><span>Html element</span>
</div>
<div>
<div class="color component"></div><span>Component</span>
</div>
<div>
<div class="color directive"></div><span>Html element with directive</span>
</div>
</div>
</div>
</div>
<script src="../js/libs/vis.min.js"></script>
<script src="../js/libs/htmlparser.js"></script>
<script src="../js/libs/deep-iterator.js"></script>
<script>
var COMPONENT_TEMPLATE = '<div><div *ngIf="transaction" class="mb-3 mt-1"> <div class="card text-center"> <mat-card-title class="card-header"> <div class="row"> TRANSACTION DETAILS <button mat-raised-button type="button" class="btn btn-outline-secondary ml-auto mr-2" (click)="close()" > CLOSE </button> </div> </mat-card-title> <div *ngIf="transaction.type == \'transaction\'" class="card-body"> <div class="row"> <div class="col-md-6"> <h4>Exchange:</h4> <ul class="list-group list-group-flush"> <li class="list-group-item"> <span>Sender: {{ transaction.sender?.vcard.fn[0].value }}</span ><br /><br /> <span> Sender Address: <a href="{{ senderBloxbergLink }}" target="_blank"> {{ transaction.from }} </a> <img src="assets/images/checklist.svg" class="ml-2" height="20rem" (click)="copyAddress(transaction.from)" alt="Copy" /> </span ><br /><br /> <button mat-raised-button color="primary" class="btn btn-outline-info" (click)="viewSender()" > View Sender </button> </li> <li class="list-group-item"> <span>Recipient: {{ transaction.recipient?.vcard.fn[0].value }}</span ><br /><br /> <span> Recipient Address: <a href="{{ recipientBloxbergLink }}" target="_blank"> {{ transaction.to }} </a> <img src="assets/images/checklist.svg" class="ml-2" height="20rem" (click)="copyAddress(transaction.to)" alt="Copy" /> </span ><br /><br /> <button mat-raised-button color="primary" class="btn btn-outline-info" (click)="viewRecipient()" > View Recipient </button> </li> <li class="list-group-item"> <span >Amount: {{ transaction.value | tokenRatio }} {{ tokenSymbol | uppercase }}</span > </li> </ul> <h4 class="mt-2">Token:</h4> <ul class="list-group list-group-flush"> <li class="list-group-item"> <span> Address: {{ transaction.token._address }} <img src="assets/images/checklist.svg" class="ml-2" height="20rem" (click)="copyAddress(transaction.token._address)" alt="Copy" /> </span> </li> <li class="list-group-item"> <span>Name: {{ tokenName }}</span> </li> <li class="list-group-item"> <span>Symbol: {{ tokenSymbol | uppercase }}</span> </li> </ul> </div> <div class="col-md-6"> <h4>Transaction:</h4> <ul class="list-group list-group-flush"> <li class="list-group-item"> <span>Block: {{ transaction.tx.block }}</span> </li> <li class="list-group-item"> <span>Index: {{ transaction.tx.txIndex }}</span> </li> <li class="list-group-item"> <span>Hash: {{ transaction.tx.txHash }}</span> </li> <li class="list-group-item"> <span>Success: {{ transaction.tx.success }}</span> </li> <li class="list-group-item"> <span>Timestamp: {{ transaction.tx.timestamp | unixDate }}</span> </li> </ul> <br /> <div class="mb-3"> <button mat-raised-button color="primary" type="button" class="btn btn-outline-su
var COMPONENTS = [{'name': 'AccountDetailsComponent', 'selector': 'app-account-details'},{'name': 'AccountsComponent', 'selector': 'app-accounts'},{'name': 'AccountSearchComponent', 'selector': 'app-account-search'},{'name': 'AdminComponent', 'selector': 'app-admin'},{'name': 'AppComponent', 'selector': 'app-root'},{'name': 'AuthComponent', 'selector': 'app-auth'},{'name': 'CreateAccountComponent', 'selector': 'app-create-account'},{'name': 'ErrorDialogComponent', 'selector': 'app-error-dialog'},{'name': 'FooterComponent', 'selector': 'app-footer'},{'name': 'FooterStubComponent', 'selector': 'app-footer'},{'name': 'NetworkStatusComponent', 'selector': 'app-network-status'},{'name': 'OrganizationComponent', 'selector': 'app-organization'},{'name': 'PagesComponent', 'selector': 'app-pages'},{'name': 'SettingsComponent', 'selector': 'app-settings'},{'name': 'SidebarComponent', 'selector': 'app-sidebar'},{'name': 'SidebarStubComponent', 'selector': 'app-sidebar'},{'name': 'TokenDetailsComponent', 'selector': 'app-token-details'},{'name': 'TokensComponent', 'selector': 'app-tokens'},{'name': 'TopbarComponent', 'selector': 'app-topbar'},{'name': 'TopbarStubComponent', 'selector': 'app-topbar'},{'name': 'TransactionDetailsComponent', 'selector': 'app-transaction-details'},{'name': 'TransactionsComponent', 'selector': 'app-transactions'}];
var DIRECTIVES = [{'name': 'MenuSelectionDirective', 'selector': '[appMenuSelection]'},{'name': 'MenuToggleDirective', 'selector': '[appMenuToggle]'},{'name': 'PasswordToggleDirective', 'selector': '[appPasswordToggle]'},{'name': 'RouterLinkDirectiveStub', 'selector': '[appRouterLink]'}];
var ACTUAL_COMPONENT = {'name': 'TransactionDetailsComponent'};
</script>
<script src="../js/tree.js"></script>
</div><div class="search-results">
<div class="has-results">
<h1 class="search-results-title"><span class='search-results-count'></span> result-matching "<span class='search-query'></span>"</h1>
<ul class="search-results-list"></ul>
</div>
<div class="no-results">
<h1 class="search-results-title">No results matching "<span class='search-query'></span>"</h1>
</div>
</div>
</div>
<!-- END CONTENT -->
</div>
</div>
<script>
var COMPODOC_CURRENT_PAGE_DEPTH = 1;
var COMPODOC_CURRENT_PAGE_CONTEXT = 'component';
var COMPODOC_CURRENT_PAGE_URL = 'TransactionDetailsComponent.html';
var MAX_SEARCH_RESULTS = 15;
</script>
<script src="../js/libs/custom-elements.min.js"></script>
<script src="../js/libs/lit-html.js"></script>
<!-- Required to polyfill modern browsers as code is ES5 for IE... -->
<script src="../js/libs/custom-elements-es5-adapter.js" charset="utf-8" defer></script>
<script src="../js/menu-wc.js" defer></script>
<script src="../js/libs/bootstrap-native.js"></script>
<script src="../js/libs/es6-shim.min.js"></script>
<script src="../js/libs/EventDispatcher.js"></script>
<script src="../js/libs/promise.min.js"></script>
<script src="../js/libs/zepto.min.js"></script>
<script src="../js/compodoc.js"></script>
<script src="../js/tabs.js"></script>
<script src="../js/menu.js"></script>
<script src="../js/libs/clipboard.min.js"></script>
<script src="../js/libs/prism.js"></script>
<script src="../js/sourceCode.js"></script>
<script src="../js/search/search.js"></script>
<script src="../js/search/lunr.min.js"></script>
<script src="../js/search/search-lunr.js"></script>
<script src="../js/search/search_index.js"></script>
<script src="../js/lazy-load-graphs.js"></script>
</body>
</html>