Refactor mapping of curated options from meta.

This commit is contained in:
Spencer Ofwiti
2021-06-23 07:18:28 +00:00
parent a69213dab2
commit 5e8e0f7209
62 changed files with 4228 additions and 4702 deletions

View File

@@ -160,6 +160,9 @@
<li>
<a href="#sort">sort</a>
</li>
<li>
<a href="#tokenSymbol">tokenSymbol</a>
</li>
</ul>
</td>
</tr>
@@ -210,12 +213,12 @@
<tbody>
<tr>
<td class="col-md-4">
<code>constructor(userService: <a href="../injectables/UserService.html">UserService</a>, loggingService: <a href="../injectables/LoggingService.html">LoggingService</a>, router: <a href="https://angular.io/api/router/Router" target="_blank">Router</a>)</code>
<code>constructor(userService: <a href="../injectables/UserService.html">UserService</a>, loggingService: <a href="../injectables/LoggingService.html">LoggingService</a>, router: <a href="https://angular.io/api/router/Router" target="_blank">Router</a>, 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="29" class="link-to-prism">src/app/pages/accounts/accounts.component.ts:29</a></div>
<div class="io-line">Defined in <a href="" data-line="30" class="link-to-prism">src/app/pages/accounts/accounts.component.ts:30</a></div>
</td>
</tr>
@@ -268,6 +271,18 @@
</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>
@@ -308,8 +323,8 @@
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="57"
class="link-to-prism">src/app/pages/accounts/accounts.component.ts:57</a></div>
<div class="io-line">Defined in <a href="" data-line="65"
class="link-to-prism">src/app/pages/accounts/accounts.component.ts:65</a></div>
</td>
</tr>
@@ -378,8 +393,8 @@
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="86"
class="link-to-prism">src/app/pages/accounts/accounts.component.ts:86</a></div>
<div class="io-line">Defined in <a href="" data-line="94"
class="link-to-prism">src/app/pages/accounts/accounts.component.ts:94</a></div>
</td>
</tr>
@@ -417,8 +432,8 @@
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="67"
class="link-to-prism">src/app/pages/accounts/accounts.component.ts:67</a></div>
<div class="io-line">Defined in <a href="" data-line="75"
class="link-to-prism">src/app/pages/accounts/accounts.component.ts:75</a></div>
</td>
</tr>
@@ -458,8 +473,8 @@
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="37"
class="link-to-prism">src/app/pages/accounts/accounts.component.ts:37</a></div>
<div class="io-line">Defined in <a href="" data-line="39"
class="link-to-prism">src/app/pages/accounts/accounts.component.ts:39</a></div>
</td>
</tr>
@@ -497,8 +512,8 @@
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="78"
class="link-to-prism">src/app/pages/accounts/accounts.component.ts:78</a></div>
<div class="io-line">Defined in <a href="" data-line="86"
class="link-to-prism">src/app/pages/accounts/accounts.component.ts:86</a></div>
</td>
</tr>
@@ -538,8 +553,8 @@
<tr>
<td class="col-md-4">
<div class="io-line">Defined in <a href="" data-line="61"
class="link-to-prism">src/app/pages/accounts/accounts.component.ts:61</a></div>
<div class="io-line">Defined in <a href="" data-line="69"
class="link-to-prism">src/app/pages/accounts/accounts.component.ts:69</a></div>
</td>
</tr>
@@ -831,7 +846,7 @@
</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/accounts/accounts.component.ts:28</a></div>
<div class="io-line">Defined in <a href="" data-line="29" class="link-to-prism">src/app/pages/accounts/accounts.component.ts:29</a></div>
</td>
</tr>
@@ -867,7 +882,34 @@
</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/accounts/accounts.component.ts:29</a></div>
<div class="io-line">Defined in <a href="" data-line="30" class="link-to-prism">src/app/pages/accounts/accounts.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="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="27" class="link-to-prism">src/app/pages/accounts/accounts.component.ts:27</a></div>
</td>
</tr>
@@ -884,7 +926,7 @@
import { MatTableDataSource } from &#x27;@angular/material/table&#x27;;
import { MatPaginator } from &#x27;@angular/material/paginator&#x27;;
import { MatSort } from &#x27;@angular/material/sort&#x27;;
import { LoggingService, UserService } from &#x27;@app/_services&#x27;;
import { LoggingService, TokenService, UserService } from &#x27;@app/_services&#x27;;
import { Router } from &#x27;@angular/router&#x27;;
import { exportCsv } from &#x27;@app/_helpers&#x27;;
import { strip0x } from &#x27;@src/assets/js/ethtx/dist/hex&#x27;;
@@ -906,6 +948,7 @@ export class AccountsComponent implements OnInit {
pageSizeOptions: Array&lt;number&gt; &#x3D; [10, 20, 50, 100];
accountsType: string &#x3D; &#x27;all&#x27;;
accountTypes: Array&lt;string&gt;;
tokenSymbol: string;
@ViewChild(MatPaginator) paginator: MatPaginator;
@ViewChild(MatSort) sort: MatSort;
@@ -913,11 +956,13 @@ export class AccountsComponent implements OnInit {
constructor(
private userService: UserService,
private loggingService: LoggingService,
private router: Router
private router: Router,
private tokenService: TokenService
) {}
async ngOnInit(): Promise&lt;void&gt; {
await this.userService.init();
await this.tokenService.init();
try {
// TODO it feels like this should be in the onInit handler
await this.userService.loadAccounts(100);
@@ -934,6 +979,11 @@ export class AccountsComponent implements OnInit {
.getAccountTypes()
.pipe(first())
.subscribe((res) &#x3D;&gt; (this.accountTypes &#x3D; res));
this.tokenService.load.subscribe(async (status: boolean) &#x3D;&gt; {
if (status) {
this.tokenSymbol &#x3D; await this.tokenService.getTokenSymbol();
}
});
}
doFilter(value: string): void {
@@ -1064,7 +1114,9 @@ export class AccountsComponent implements OnInit {
&lt;ng-container matColumnDef&#x3D;&quot;balance&quot;&gt;
&lt;mat-header-cell *matHeaderCellDef mat-sort-header&gt; BALANCE &lt;/mat-header-cell&gt;
&lt;mat-cell *matCellDef&#x3D;&quot;let user&quot;&gt; {{ user?.balance | tokenRatio }} &lt;/mat-cell&gt;
&lt;mat-cell *matCellDef&#x3D;&quot;let user&quot;&gt;
{{ user?.balance | tokenRatio }} {{ tokenSymbol | uppercase }}
&lt;/mat-cell&gt;
&lt;/ng-container&gt;
&lt;ng-container matColumnDef&#x3D;&quot;location&quot;&gt;
@@ -1129,7 +1181,7 @@ export class AccountsComponent implements OnInit {
<script src="../js/libs/htmlparser.js"></script>
<script src="../js/libs/deep-iterator.js"></script>
<script>
var COMPONENT_TEMPLATE = '<div><!-- Begin page --><div class="wrapper"> <app-sidebar></app-sidebar> <!-- ============================================================== --> <!-- Start Page Content here --> <!-- ============================================================== --> <div id="content"> <app-topbar></app-topbar> <!-- Start Content--> <div class="container-fluid" appMenuSelection> <nav aria-label="breadcrumb"> <ol class="breadcrumb"> <li class="breadcrumb-item"><a routerLink="/home">Home</a></li> <li class="breadcrumb-item active" aria-current="page">Accounts</li> </ol> </nav> <div class="card"> <mat-card-title class="card-header"> Accounts </mat-card-title> <div class="card-body"> <div class="row card-header"> <mat-form-field appearance="outline"> <mat-label> ACCOUNT TYPE </mat-label> <mat-select id="typeSelect" [(value)]="accountsType" (selectionChange)="filterAccounts()" > <mat-option value="all">ALL</mat-option> <mat-option *ngFor="let accountType of accountTypes" [value]="accountType"> {{ accountType | uppercase }} </mat-option> </mat-select> </mat-form-field> <button mat-raised-button color="primary" type="button" class="btn btn-outline-primary ml-auto mr-2" routerLink="/accounts/search" > SEARCH </button> <button mat-raised-button color="primary" type="button" class="btn btn-outline-primary mr-2" (click)="downloadCsv()" > EXPORT </button> </div> <mat-form-field appearance="outline"> <mat-label> Filter </mat-label> <input matInput type="text" (keyup)="doFilter($event.target.value)" placeholder="Filter" /> <mat-icon matSuffix>search</mat-icon> </mat-form-field> <mat-table class="mat-elevation-z10" [dataSource]="dataSource" matSort matSortActive="created" matSortDirection="desc" matSortDisableClear > <ng-container matColumnDef="name"> <mat-header-cell *matHeaderCellDef mat-sort-header> NAME </mat-header-cell> <mat-cell *matCellDef="let user"> {{ user?.vcard.fn[0].value }} </mat-cell> </ng-container> <ng-container matColumnDef="phone"> <mat-header-cell *matHeaderCellDef mat-sort-header> PHONE NUMBER </mat-header-cell> <mat-cell *matCellDef="let user"> {{ user?.vcard.tel[0].value }} </mat-cell> </ng-container> <ng-container matColumnDef="created"> <mat-header-cell *matHeaderCellDef mat-sort-header> CREATED </mat-header-cell> <mat-cell *matCellDef="let user"> {{ user?.date_registered | unixDate }} </mat-cell> </ng-container> <ng-container matColumnDef="balance"> <mat-header-cell *matHeaderCellDef mat-sort-header> BALANCE </mat-header-cell> <mat-cell *matCellDef="let user"> {{ user?.balance | tokenRatio }} </mat-cell> </ng-container> <ng-container matColumnDef="location"> <mat-header-cell *matHeaderCellDef mat-sort-header> LOCATION </mat-header-cell> <mat-cell *matCellDef="let user"> {{ user?.location.area_name }} </mat-cell> </ng-container> <mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row> <mat-row *matRowDef="let account; columns: displayedColumns" (click)="viewAccount(account)" matRipple ></mat-row> </mat-table> <mat-paginator [pageSize]="defaultPageSize" [pageSizeOptions]="pageSizeOptions" showFirstLastButtons ></mat-paginator> </div> </div> </div> <app-footer appMenuSelection></app-footer> </div> <!-- ============================================================== --> <!-- End Page content --> <!-- ============================================================== --></div></div>'
var COMPONENT_TEMPLATE = '<div><!-- Begin page --><div class="wrapper"> <app-sidebar></app-sidebar> <!-- ============================================================== --> <!-- Start Page Content here --> <!-- ============================================================== --> <div id="content"> <app-topbar></app-topbar> <!-- Start Content--> <div class="container-fluid" appMenuSelection> <nav aria-label="breadcrumb"> <ol class="breadcrumb"> <li class="breadcrumb-item"><a routerLink="/home">Home</a></li> <li class="breadcrumb-item active" aria-current="page">Accounts</li> </ol> </nav> <div class="card"> <mat-card-title class="card-header"> Accounts </mat-card-title> <div class="card-body"> <div class="row card-header"> <mat-form-field appearance="outline"> <mat-label> ACCOUNT TYPE </mat-label> <mat-select id="typeSelect" [(value)]="accountsType" (selectionChange)="filterAccounts()" > <mat-option value="all">ALL</mat-option> <mat-option *ngFor="let accountType of accountTypes" [value]="accountType"> {{ accountType | uppercase }} </mat-option> </mat-select> </mat-form-field> <button mat-raised-button color="primary" type="button" class="btn btn-outline-primary ml-auto mr-2" routerLink="/accounts/search" > SEARCH </button> <button mat-raised-button color="primary" type="button" class="btn btn-outline-primary mr-2" (click)="downloadCsv()" > EXPORT </button> </div> <mat-form-field appearance="outline"> <mat-label> Filter </mat-label> <input matInput type="text" (keyup)="doFilter($event.target.value)" placeholder="Filter" /> <mat-icon matSuffix>search</mat-icon> </mat-form-field> <mat-table class="mat-elevation-z10" [dataSource]="dataSource" matSort matSortActive="created" matSortDirection="desc" matSortDisableClear > <ng-container matColumnDef="name"> <mat-header-cell *matHeaderCellDef mat-sort-header> NAME </mat-header-cell> <mat-cell *matCellDef="let user"> {{ user?.vcard.fn[0].value }} </mat-cell> </ng-container> <ng-container matColumnDef="phone"> <mat-header-cell *matHeaderCellDef mat-sort-header> PHONE NUMBER </mat-header-cell> <mat-cell *matCellDef="let user"> {{ user?.vcard.tel[0].value }} </mat-cell> </ng-container> <ng-container matColumnDef="created"> <mat-header-cell *matHeaderCellDef mat-sort-header> CREATED </mat-header-cell> <mat-cell *matCellDef="let user"> {{ user?.date_registered | unixDate }} </mat-cell> </ng-container> <ng-container matColumnDef="balance"> <mat-header-cell *matHeaderCellDef mat-sort-header> BALANCE </mat-header-cell> <mat-cell *matCellDef="let user"> {{ user?.balance | tokenRatio }} {{ tokenSymbol | uppercase }} </mat-cell> </ng-container> <ng-container matColumnDef="location"> <mat-header-cell *matHeaderCellDef mat-sort-header> LOCATION </mat-header-cell> <mat-cell *matCellDef="let user"> {{ user?.location.area_name }} </mat-cell> </ng-container> <mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row> <mat-row *matRowDef="let account; columns: displayedColumns" (click)="viewAccount(account)" matRipple ></mat-row> </mat-table> <mat-paginator [pageSize]="defaultPageSize" [pageSizeOptions]="pageSizeOptions" showFirstLastButtons ></mat-paginator> </div> </div> </div> <app-footer appMenuSelection></app-footer> </div> <!-- ============================================================== --> <!-- End Page content --> <!-- ============================================================== --></div></div>'
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': 'AccountsComponent'};