insight-previous-tcr
Version:
A blockchain explorer for Bitcore
79 lines (70 loc) • 2.23 kB
text/typescript
import { Component, Injectable } from "@angular/core";
import { Events, IonicPage, NavParams } from "ionic-angular";
import { AddressProvider } from "../../providers/address/address";
import { ApiProvider, ChainNetwork } from "../../providers/api/api";
import { CurrencyProvider } from "../../providers/currency/currency";
import { PriceProvider } from "../../providers/price/price";
import { TxsProvider } from "../../providers/transactions/transactions";
export class AddressPage {
public loading = true;
public address: any = {};
public nroTransactions = 0;
public errorMessage: string;
private addrStr: string;
private chainNetwork: ChainNetwork;
constructor(
public navParams: NavParams,
public currencyProvider: CurrencyProvider,
public txProvider: TxsProvider,
private apiProvider: ApiProvider,
private priceProvider: PriceProvider,
private addrProvider: AddressProvider,
private events: Events
) {
this.addrStr = navParams.get('addrStr');
const chain: string = navParams.get('chain');
const network: string = navParams.get('network');
this.chainNetwork = {
chain,
network
};
this.apiProvider.changeNetwork(this.chainNetwork);
this.currencyProvider.setCurrency(this.chainNetwork);
this.priceProvider.setCurrency();
this.events.subscribe('CoinList', (d: any) => {
this.nroTransactions = d.length;
});
}
public ionViewWillLoad(): void {
this.addrProvider
.getAddressBalance(this.addrStr, this.chainNetwork)
.subscribe(
data => {
this.address = {
balance: data.balance || 0,
confirmed: data.confirmed || 0,
unconfirmed: data.unconfirmed,
addrStr: this.addrStr
};
this.loading = false;
},
err => {
this.errorMessage = err;
this.loading = false;
}
);
}
public getConvertedNumber(n: number): number {
return this.currencyProvider.getConvertedNumber(n);
}
}