About Iguana
Page content goes here
diff --git a/react/src/components/dashboard/appSettings.js b/react/src/components/dashboard/appSettings.js
deleted file mode 100644
index 2efba73..0000000
--- a/react/src/components/dashboard/appSettings.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import React from 'react';
-import { translate } from '../../translate/translate';
-import {
-
-} from '../../actions/actionCreators';
-import Store from '../../store';
-
-class AppSettings extends React.Component {
- constructor(props) {
- super(props);
- //this.closeSyncOnlyModal = this.closeSyncOnlyModal.bind(this);
- }
-
- render() {
- /*if (this.props && this.props.SyncOnly.display) {
- return (
-
-
-
-
-
- {this.renderForksList()}
-
-
-
-
-
-
-
-
-
- );
- } else {
- return null;
- }*/
- }
-}
-
-export default AppSettings;
\ No newline at end of file
diff --git a/react/src/components/dashboard/atomic.js b/react/src/components/dashboard/atomic.js
index b1f331a..a532f7e 100644
--- a/react/src/components/dashboard/atomic.js
+++ b/react/src/components/dashboard/atomic.js
@@ -339,14 +339,145 @@ class Atomic extends React.Component {
if (props.Atomic.response.error === 'less than required responses') {
console.log('error');
- //toastr.error(_lang[defaultLang].DASHBOARD.LESS_RESPONSES_REQ, _lang[defaultLang].DASHBOARD.BASILISC_NOTIFICATION)
+ // toastr.error(_lang[defaultLang].DASHBOARD.LESS_RESPONSES_REQ, _lang[defaultLang].DASHBOARD.BASILISC_NOTIFICATION)
}
}
}
+ renderAtomicOptions() {
+ const _options = [
+ {
+ method: 'history',
+ name: 'Address History',
+ },
+ {
+ method: 'getbalance',
+ name: 'Get Balance',
+ },
+ {
+ method: 'listunspent',
+ name: 'List Unspent',
+ },
+ {
+ method: 'txid',
+ name: 'Transaction ID',
+ },
+ {
+ method: 'blockash',
+ name: 'Block Hash',
+ },
+ {
+ method: 'chaintip',
+ name: 'Chain Tip',
+ },
+ {
+ method: 'activehandle',
+ name: 'Active Handle',
+ },
+ {
+ method: 'gettransaction',
+ name: 'Get Transaction',
+ },
+ {
+ method: 'dex_alladdresses',
+ name: 'DEX All Addresses',
+ },
+ {
+ method: 'dex_importaddress',
+ name: 'DEX Import Address',
+ },
+ {
+ method: 'dex_checkaddress',
+ name: 'DEX Check Address',
+ },
+ {
+ method: 'dex_validateaddress',
+ name: 'DEX Validate Address',
+ },
+ {
+ method: 'dex_getinfo',
+ name: 'DEX Get Info',
+ },
+ {
+ method: 'dex_getnotaries',
+ name: 'DEX Get Notaries',
+ },
+ {
+ method: 'dex_getbestblockhash',
+ name: 'DEX Get Best Block Has',
+ },
+ {
+ method: 'dex_getblock',
+ name: 'DEX Get Block',
+ },
+ {
+ method: 'dex_gettxin',
+ name: 'DEX Get Txin',
+ },
+ {
+ method: 'dex_gettxout',
+ name: 'DEX Get Txout',
+ },
+ {
+ method: 'dex_gettransaction',
+ name: 'DEX Get Transaction',
+ },
+ {
+ method: 'dex_getbalance',
+ name: 'DEX Get Balance',
+ },
+ {
+ method: 'dex_getsupply',
+ name: 'DEX Get Supply',
+ },
+ {
+ method: 'dex_listtransactions',
+ name: 'DEX List Transactions',
+ },
+ {
+ method: 'dex_listtransactions2',
+ name: 'DEX List Transactions 2',
+ },
+ {
+ method: 'dex_listspent',
+ name: 'DEX List Spent',
+ },
+ {
+ method: 'dex_listunspent',
+ name: 'DEX List Unspent',
+ },
+ {
+ method: 'dex_listunspent2',
+ name: 'DEX List Unspent 2',
+ },
+ {
+ method: 'dex_sendrawtransaction',
+ name: 'DEX Send Raw Transaction',
+ },
+ {
+ method: 'basilisk_refresh',
+ name: 'Basilisk Refresh',
+ },
+ {
+ method: 'jumblr_status',
+ name: 'Jumbler Status',
+ },
+ ];
+
+ let items = [];
+
+ for (let i = 0; i < _options.length; i++) {
+ items.push(
+
+ );
+ }
+
+ return items;
+ }
+
render() {
return (
-
+
@@ -410,7 +512,7 @@ class Atomic extends React.Component {
-
Raw Output
+ {translate('ATOMIC.RAW_OUTPUT')}
diff --git a/react/src/components/dashboard/navbar.js b/react/src/components/dashboard/navbar.js
index d817180..42e7dea 100644
--- a/react/src/components/dashboard/navbar.js
+++ b/react/src/components/dashboard/navbar.js
@@ -76,7 +76,7 @@ class Navbar extends React.Component {
EasyDEX
-
+
this.dashboardChangeSection('jumblr')}>
Jumblr
diff --git a/react/src/components/dashboard/sendCoin.js b/react/src/components/dashboard/sendCoin.js
index 7cbbbc0..ec0afa6 100644
--- a/react/src/components/dashboard/sendCoin.js
+++ b/react/src/components/dashboard/sendCoin.js
@@ -30,6 +30,8 @@ import { SocketProvider } from 'socket.io-react';
import io from 'socket.io-client';
const socket = io.connect('http://127.0.0.1:' + Config.agamaPort);
+// TODO: prevent any cache updates rather than utxo while on send coin form
+
class SendCoin extends React.Component {
constructor(props) {
super(props);
@@ -139,16 +141,18 @@ class SendCoin extends React.Component {
-
-
- Split funds
-
-
);
} else {
return null;
}
+ /*
+
+
+ Split funds
+
+
+ */
}
renderAddressAmount(address) {
@@ -157,7 +161,9 @@ class SendCoin extends React.Component {
this.props.ActiveCoin.addresses['public'].length) {
for (let i = 0; i < this.props.ActiveCoin.addresses['public'].length; i++) {
if (this.props.ActiveCoin.addresses['public'][i].address === address) {
- return this.props.ActiveCoin.addresses['public'][i].amount;
+ if (this.props.ActiveCoin.addresses['public'][i].amount !== 'N/A') {
+ return this.props.ActiveCoin.addresses['public'][i].amount;
+ }
}
}
} else {
@@ -179,11 +185,24 @@ class SendCoin extends React.Component {
);
} else {
- return this.props.ActiveCoin.addresses[type].map((address) =>
-
- this.updateAddressSelection(address.address, type, address.amount)}> [ {address.amount} {this.props.ActiveCoin.coin} ] {address.address}
-
- );
+ let items = [];
+
+ for (let i = 0; i < this.props.ActiveCoin.addresses[type].length; i++) {
+ const address = this.props.ActiveCoin.addresses[type][i];
+ let _amount = address.amount;
+
+ if (this.props.ActiveCoin.mode === 'basilisk') {
+ _amount = this.props.ActiveCoin.cache[this.props.ActiveCoin.coin][address.address].getbalance.data && this.props.ActiveCoin.cache[this.props.ActiveCoin.coin][address.address].getbalance.data.balance ? this.props.ActiveCoin.cache[this.props.ActiveCoin.coin][address.address].getbalance.data.balance : 'N/A';
+ }
+
+ items.push(
+
+ this.updateAddressSelection(address.address, type, _amount)}> [ {_amount} {this.props.ActiveCoin.coin} ] {address.address}
+
+ );
+ }
+
+ return items;
}
} else {
return null;
@@ -238,10 +257,16 @@ class SendCoin extends React.Component {
}
updateAddressSelection(address, type, amount) {
+ let _sendFromAmount = amount ? amount : this.props.ActiveCoin.addresses[type][address].amount;
+
+ if (this.props.ActiveCoin.mode === 'basilisk') {
+ _sendFromAmount = this.props.ActiveCoin.cache[this.props.ActiveCoin.coin][address].getbalance.data && this.props.ActiveCoin.cache[this.props.ActiveCoin.coin][address].getbalance.data.balance ? this.props.ActiveCoin.cache[this.props.ActiveCoin.coin][address].getbalance.data.balance : 'N/A';
+ }
+
this.setState(Object.assign({}, this.state, {
sendFrom: address,
addressType: type,
- sendFromAmount: amount ? amount : this.props.ActiveCoin.addresses[type][address].amount,
+ sendFromAmount: _sendFromAmount,
addressSelectorOpen: !this.state.addressSelectorOpen,
}));
}
@@ -288,6 +313,7 @@ class SendCoin extends React.Component {
const utxoSet = (refreshData && refreshData.data) || (listunspentData && listunspentData.data);
const _pubkey = this.props.Dashboard.activeHandle.pubkey;
const forceUpdateCache = this._fetchNewUTXOData;
+ const _sendFrom = this.state.sendFrom;
const sendData = {
'coin': this.props.ActiveCoin.coin,
'sendfrom': this.state.sendFrom,
@@ -356,7 +382,7 @@ class SendCoin extends React.Component {
getCacheFile(_pubkey)
.then(function(result) {
console.log('got cache file', result);
- let saveThisData = edexRemoveTXID(result.result, txidListToRemove);
+ let saveThisData = edexRemoveTXID(result.result, _sendFrom, txidListToRemove);
console.log('saveThisData', saveThisData);
resolve(saveThisData);
});
@@ -698,7 +724,7 @@ class SendCoin extends React.Component {
{this.renderUTXOCacheInfo()}
-
+
diff --git a/react/src/components/dashboard/settings.js b/react/src/components/dashboard/settings.js
index 5ff81a1..8c123bc 100644
--- a/react/src/components/dashboard/settings.js
+++ b/react/src/components/dashboard/settings.js
@@ -8,7 +8,9 @@ import {
getDebugLog,
getPeersList,
addPeerNode,
- getAppConfig
+ getAppConfig,
+ saveAppConfig,
+ getAppInfo
} from '../../actions/actionCreators';
import Store from '../../store';
import AddCoinOptionsCrypto from '../addcoin/addcoinOptionsCrypto';
@@ -30,6 +32,7 @@ class Settings extends React.Component {
debugLinesCount: 10,
debugTarget: 'iguana',
activeTabHeight: '10px',
+ appSettings: [],
};
this.exportWifKeys = this.exportWifKeys.bind(this);
this.updateInput = this.updateInput.bind(this);
@@ -44,12 +47,16 @@ class Settings extends React.Component {
componentDidMount() {
Store.dispatch(iguanaActiveHandle());
Store.dispatch(getAppConfig());
+ Store.dispatch(getAppInfo());
+ }
+
+ _saveAppConfig() {
+ Store.dispatch(saveAppConfig);
}
openTab(elemId, tab) {
- console.log(elemId);
- const _height = document.querySelector('#' + elemId + ' .panel-collapse .panel-body').clientHeight;
- console.log(_height);
+ const _height = document.querySelector('#' + elemId + ' .panel-collapse .panel-body').offsetHeight;
+
this.setState(Object.assign({}, this.state, {
activeTab: tab,
activeTabHeight: _height,
@@ -96,6 +103,88 @@ class Settings extends React.Component {
}
}
+ renderAppInfoTab() {
+ const releaseInfo = this.props.Settings.appInfo && this.props.Settings.appInfo.releaseInfo;
+
+ if (releaseInfo) {
+ return (
+
+
+
+
+
+
+
App Release
+
+ Name: {this.props.Settings.appInfo.releaseInfo.name}
+
+
+ Version: {this.props.Settings.appInfo.releaseInfo.version}
+
+
+
+
+
+
System Info
+
+ Architecture: {this.props.Settings.appInfo.sysInfo.arch}
+
+
+ OS Type: {this.props.Settings.appInfo.sysInfo.os_type}
+
+
+ OS Platfrom: {this.props.Settings.appInfo.sysInfo.platform}
+
+
+ OS Release: {this.props.Settings.appInfo.sysInfo.os_release}
+
+
+ CPU: {this.props.Settings.appInfo.sysInfo.cpu}
+
+
+ CPU Cores: {this.props.Settings.appInfo.sysInfo.cpu_cores}
+
+
+ Memory: {this.props.Settings.appInfo.sysInfo.totalmem_readable}
+
+
+
+
+
+
Locations
+
+ Cache: {this.props.Settings.appInfo.dirs.cacheLocation}
+
+
+ Config: {this.props.Settings.appInfo.dirs.configLocation}
+
+
+ Iguana Bin: {this.props.Settings.appInfo.dirs.iguanaBin}
+
+
+ Iguana Dir: {this.props.Settings.appInfo.dirs.iguanaDir}
+
+
+ Komodo Bin: {this.props.Settings.appInfo.dirs.komododBin}
+
+
+ Komodo Dir: {this.props.Settings.appInfo.dirs.komodoDir}
+
+
+
+
+
+
+ );
+ } else {
+ return null;
+ }
+ }
+
renderSNPeersList() {
if (this.state.getPeersCoin) {
const coin = this.state.getPeersCoin.split('|')[0];
@@ -112,6 +201,51 @@ class Settings extends React.Component {
}
}
+ renderConfigEditForm() {
+ console.log(this.props.Settings.appSettings);
+ let items = [];
+ const _appConfig = this.props.Settings.appSettings;
+
+ for (let key in this.props.Settings.appSettings) {
+ if (Object.keys(this.props.Settings.appSettings[key]).length && key !== 'host') {
+ items.push(
+
+
+ {key}
+ |
+ |
+
+ );
+
+ for (let _key in this.props.Settings.appSettings[key]) {
+ items.push(
+
+
+ {_key}
+ |
+
+
+ |
+
+ );
+ }
+ } else {
+ items.push(
+
+
+ {key}
+ |
+
+
+ |
+
+ );
+ }
+ }
+
+ return items;
+ }
+
updateInput(e) {
this.setState({
[e.target.name]: e.target.value,
@@ -124,312 +258,303 @@ class Settings extends React.Component {
-
-
-
{translate('INDEX.WALLET_SETTINGS')}
-
-
-
-
-
-
-
-
- {translate('INDEX.KEY')} |
- {translate('INDEX.VALUE')} |
-
-
-
-
- pubkey |
-
- {this.props.Main.activeHandle.pubkey}
- |
-
-
- btcpubkey |
-
- {this.props.Main.activeHandle.btcpubkey}
- |
-
-
- rmd160 |
-
- {this.props.Main.activeHandle.rmd160}
- |
-
-
- NXT |
-
- {this.props.Main.activeHandle.NXT}
- |
-
-
- notary |
-
- {this.props.Main.activeHandle.notary}
- |
-
-
- status |
-
- {this.props.Main.activeHandle.status}
- |
-
-
-
-
+
+
+
{translate('INDEX.WALLET_SETTINGS')}
+
+
+
+
+
+
+
+
+ {translate('INDEX.KEY')} |
+ {translate('INDEX.VALUE')} |
+
+
+
+
+ pubkey |
+
+ {this.props.Main.activeHandle.pubkey}
+ |
+
+
+ btcpubkey |
+
+ {this.props.Main.activeHandle.btcpubkey}
+ |
+
+
+ rmd160 |
+
+ {this.props.Main.activeHandle.rmd160}
+ |
+
+
+ NXT |
+
+ {this.props.Main.activeHandle.NXT}
+ |
+
+
+ notary |
+
+ {this.props.Main.activeHandle.notary}
+ |
+
+
+ status |
+
+ {this.props.Main.activeHandle.status}
+ |
+
+
+
+
-
-
-
-
-
-
-
-
{translate('INDEX.USE_THIS_SECTION')}
-
-
-
-
-
-
-
-
-
-
-
- SuperNET Peers:
-
-
{this.renderSNPeersList()}
-
- Raw Peers:
-
-
{this.renderPeersList()}
+
+
+
+
+
+
+
+
{translate('INDEX.USE_THIS_SECTION')}
+
+
+
+
+
+
+
+
+
+ SuperNET Peers:
+
+
{this.renderSNPeersList()}
+
+ Raw Peers:
+
+
{this.renderPeersList()}
+
+
-
-
-
{translate('INDEX.USE_THIS_SECTION_PEER')}
-
-
-
-
-
-
-
-
+
+
+
{translate('INDEX.USE_THIS_SECTION_PEER')}
+
+
+
+
-
-
+
+
+
+
+
+
-
-
-
-
Wallet Backup section to be updated soon.
-
+
+
+
+
Wallet Backup section to be updated soon.
+
+
-
-
-
-
Fiat currency settings section to be updated soon.
-
+
+
+
+
Fiat currency settings section to be updated soon.
+
-
-
-
-
-
-
{translate('INDEX.ONLY_ACTIVE_WIF_KEYS')}
-
- {translate('INDEX.PLEASE_KEEP_KEYS_SAFE')}
-
-
-
-
+
+
+
+
+
+
{translate('INDEX.ONLY_ACTIVE_WIF_KEYS')}
+
+ {translate('INDEX.PLEASE_KEEP_KEYS_SAFE')}
+
+
+
+
-
-
-
-
-
- {this.props.ActiveCoin.coin}
- |
- {this.props.Settings.address} |
-
-
-
- {this.props.ActiveCoin.coin}Wif
- |
- {this.props.Settings.wifkey} |
-
-
-
+
+
+
+
+
+ {this.props.ActiveCoin.coin}
+ |
+ {this.props.Settings.address} |
+
+
+
+ {this.props.ActiveCoin.coin}Wif
+ |
+ {this.props.Settings.wifkey} |
+
+
+
-
-
-
-
-
-
{translate('INDEX.IMPORT_KEYS_DESC_P1')}
-
{translate('INDEX.IMPORT_KEYS_DESC_P2')}
-
{translate('INDEX.IMPORT_KEYS_DESC_P3')}
-
- {translate('INDEX.PLEASE_KEEP_KEYS_SAFE')}
-
-
-
-
-
-
+
+
+
+
+
+
{translate('INDEX.IMPORT_KEYS_DESC_P1')}
+
{translate('INDEX.IMPORT_KEYS_DESC_P2')}
+
{translate('INDEX.IMPORT_KEYS_DESC_P3')}
+
+ {translate('INDEX.PLEASE_KEEP_KEYS_SAFE')}
+
+
+
+
+
+
-
-
-
-
-
{translate('INDEX.DEBUG_LOG_DESC')}
-
-
-
-
+
+
+
+
+
{translate('INDEX.DEBUG_LOG_DESC')}
+
+
+
+
-
-
-
-
-
Manage app settings
-
-
+
+
+
+
+
+ Most changes to app config require wallet restart!
+
+
+
+
+
+
+ {this.renderAppInfoTab()}
+
diff --git a/react/src/components/dashboard/walletsData.js b/react/src/components/dashboard/walletsData.js
index 6d51695..c32d0c6 100644
--- a/react/src/components/dashboard/walletsData.js
+++ b/react/src/components/dashboard/walletsData.js
@@ -186,7 +186,10 @@ class WalletsData extends React.Component {
}));
}
- if (this.props.ActiveCoin.txhistory && this.props.ActiveCoin.txhistory !== 'loading' && this.props.ActiveCoin.txhistory !== 'no data' && this.props.ActiveCoin.txhistory.length) {
+ if (this.props.ActiveCoin.txhistory &&
+ this.props.ActiveCoin.txhistory !== 'loading' &&
+ this.props.ActiveCoin.txhistory !== 'no data' &&
+ this.props.ActiveCoin.txhistory.length) {
if (!this.state.itemsList || (this.state.itemsList && !this.state.itemsList.length) || (props.ActiveCoin.txhistory !== this.props.ActiveCoin.txhistory)) {
let historyToSplit = sortByDate(this.props.ActiveCoin.txhistory);
historyToSplit = historyToSplit.slice((this.state.activePage - 1) * this.state.itemsPerPage, this.state.activePage * this.state.itemsPerPage);
@@ -323,6 +326,10 @@ class WalletsData extends React.Component {
return (
Loading history...
);
+ } else if (this.state.itemsList === 'no data') {
+ return (
+
No data
+ );
} else {
if (this.state.itemsList && this.state.itemsList.length && this.state.itemsList !== 'no data') {
return this.state.itemsList.map((tx, index) =>
@@ -350,10 +357,20 @@ class WalletsData extends React.Component {
activePage: 1,
}));
- setTimeout(function() {
- Store.dispatch(changeMainBasiliskAddress(address));
- Store.dispatch(getBasiliskTransactionsList(this.props.ActiveCoin.coin, address));
- }.bind(this), 100);
+ if (this.props.ActiveCoin.mode === 'basilisk') {
+ setTimeout(function() {
+ Store.dispatch(changeMainBasiliskAddress(address));
+ Store.dispatch(getBasiliskTransactionsList(this.props.ActiveCoin.coin, address));
+ }.bind(this), 100);
+
+ Store.dispatch(fetchNewCacheData({
+ 'pubkey': this.props.Dashboard.activeHandle.pubkey,
+ 'allcoins': false,
+ 'coin': this.props.ActiveCoin.coin,
+ 'calls': 'listtransactions:getbalance',
+ 'address': address,
+ }));
+ }
}
openDropMenu() {
diff --git a/react/src/components/dashboard/walletsNativeSend.js b/react/src/components/dashboard/walletsNativeSend.js
index ba30dd2..e2f1252 100644
--- a/react/src/components/dashboard/walletsNativeSend.js
+++ b/react/src/components/dashboard/walletsNativeSend.js
@@ -33,7 +33,7 @@ class WalletsNativeSend extends React.Component {
if (this.props.ActiveCoin.addresses && this.props.ActiveCoin.addresses[type] && this.props.ActiveCoin.addresses[type].length) {
return this.props.ActiveCoin.addresses[type].map((address) =>
- this.updateAddressSelection(address.address, type, address.amount)}> [ {address.amount} {this.props.ActiveCoin.coin} ] {address.address}
+ this.updateAddressSelection(address.address, type, address.amount)}> [ {address.amount} {this.props.ActiveCoin.coin} ] {address.address}
);
} else {
diff --git a/react/src/components/dashboard/walletsNativeSyncProgress.js b/react/src/components/dashboard/walletsNativeSyncProgress.js
index 3af289c..fb7b005 100644
--- a/react/src/components/dashboard/walletsNativeSyncProgress.js
+++ b/react/src/components/dashboard/walletsNativeSyncProgress.js
@@ -5,22 +5,22 @@ class WalletsNativeSyncProgress extends React.Component {
renderSyncPercentagePlaceholder() {
if (this.props.Dashboard.progress.blocks > 0 && this.props.Dashboard.progress.longestchain === 0) {
return (
-
-
Unable to get current sync progress. Err: no longestchain param in response
+
+ {translate('INDEX.SYNC_ERR_LONGESTCHAIN')}
);
} else if (this.props.Dashboard.progress.blocks === 0) {
return (
-
-
Unable to get current sync progress. Err: no blocks param in response
+
+ {translate('INDEX.SYNC_ERR_BLOCKS')}
);
} else {
var syncPercentage = (parseFloat(parseInt(this.props.Dashboard.progress.blocks, 10) * 100 / parseInt(this.props.Dashboard.progress.longestchain, 10)).toFixed(2) + '%').replace('NaN', 0);
return (
-
-
{syncPercentage} |
{this.props.Dashboard.progress.blocks} /
{this.props.Dashboard.progress.longestchain} | {translate('INDEX.CONNECTIONS')}:
{this.props.Dashboard.progress.connections}
+
+ {syncPercentage} | {this.props.Dashboard.progress.blocks} / {this.props.Dashboard.progress.longestchain} | {translate('INDEX.CONNECTIONS')}: {this.props.Dashboard.progress.connections}
);
}
@@ -29,10 +29,10 @@ class WalletsNativeSyncProgress extends React.Component {
renderActivatingBestChainProgress() {
if (this.props.Settings && this.props.Settings.debugLog && this.props.Dashboard.progress.remoteKMDNode) {
if (this.props.Settings.debugLog.indexOf('UpdateTip') > -1) {
- var temp = this.props.Settings.debugLog.split(' ');
- var currentBestChain;
+ let temp = this.props.Settings.debugLog.split(' ');
+ let currentBestChain;
- for (var i = 0; i < temp.length; i++) {
+ for (let i = 0; i < temp.length; i++) {
if (temp[i].indexOf('height=') > -1) {
currentBestChain = temp[i].replace('height=', '');
}
@@ -48,7 +48,7 @@ class WalletsNativeSyncProgress extends React.Component {
renderChainActivationNotification() {
if ((this.props.Dashboard.progress.blocks < this.props.Dashboard.progress.longestchain) || this.props.Dashboard.progress.remoteKMDNode) {
return (
-
+
@@ -68,7 +68,7 @@ class WalletsNativeSyncProgress extends React.Component {
return (
{this.renderChainActivationNotification()}
-
+
{this.renderSyncPercentagePlaceholder()}
diff --git a/react/src/components/dashboard/walletsNativeTxHistory.js b/react/src/components/dashboard/walletsNativeTxHistory.js
index f574001..1d1511a 100644
--- a/react/src/components/dashboard/walletsNativeTxHistory.js
+++ b/react/src/components/dashboard/walletsNativeTxHistory.js
@@ -80,7 +80,9 @@ class WalletsNativeTxHistory extends React.Component {
}
componentWillReceiveProps(props) {
- if (!this.state.itemsList || (this.state.itemsList && !this.state.itemsList.length) || (props.ActiveCoin.txhistory !== this.props.ActiveCoin.txhistory)) {
+ if (!this.state.itemsList ||
+ (this.state.itemsList && !this.state.itemsList.length) ||
+ (props.ActiveCoin.txhistory !== this.props.ActiveCoin.txhistory)) {
if (this.props.ActiveCoin.txhistory && this.props.ActiveCoin.txhistory !== 'loading') {
let historyToSplit = sortByDate(this.props.ActiveCoin.txhistory);
historyToSplit = historyToSplit.slice((this.state.activePage - 1) * this.state.itemsPerPage, this.state.activePage * this.state.itemsPerPage);
@@ -108,7 +110,7 @@ class WalletsNativeTxHistory extends React.Component {
for (let i=0; i < Math.floor(this.props.ActiveCoin.txhistory.length / this.state.itemsPerPage); i++) {
items.push(
- this.updateCurrentPage(i + 1) : null}>{i + 1}
+ this.updateCurrentPage(i + 1) : null}>{i + 1}
);
}
@@ -117,18 +119,20 @@ class WalletsNativeTxHistory extends React.Component {
}
renderPaginationItemsPerPageSelector() {
- if (this.props.ActiveCoin.txhistory && this.props.ActiveCoin.txhistory !== 'loading' && this.props.ActiveCoin.txhistory.length > 10) {
+ if (this.props.ActiveCoin.txhistory &&
+ this.props.ActiveCoin.txhistory !== 'loading' &&
+ this.props.ActiveCoin.txhistory.length > 10) {
return (
);
@@ -138,21 +142,23 @@ class WalletsNativeTxHistory extends React.Component {
}
renderPagination() {
- if (this.props.ActiveCoin.txhistory && this.props.ActiveCoin.txhistory !== 'loading' && this.props.ActiveCoin.txhistory.length > 10) {
+ if (this.props.ActiveCoin.txhistory &&
+ this.props.ActiveCoin.txhistory !== 'loading' &&
+ this.props.ActiveCoin.txhistory.length > 10) {
return (
-
Showing {((this.state.activePage - 1) * this.state.itemsPerPage) + 1} to {this.state.activePage * this.state.itemsPerPage} of {this.props.ActiveCoin.txhistory.length} entries
+
{translate('INDEX.SHOWING')} {((this.state.activePage - 1) * this.state.itemsPerPage) + 1} {translate('INDEX.TO')} {this.state.activePage * this.state.itemsPerPage} {translate('INDEX.OF')} {this.props.ActiveCoin.txhistory.length} {translate('INDEX.ENTRIES_SM')}
@@ -169,7 +175,9 @@ class WalletsNativeTxHistory extends React.Component {
return 'no data';
} else if (this.props.ActiveCoin.txhistory && this.props.ActiveCoin.txhistory === 'loading') {
return 'loading history...';
- } else if (this.props.ActiveCoin.txhistory && (this.props.ActiveCoin.txhistory !== 'loading' && this.props.ActiveCoin.txhistory !== 'no data')) {
+ } else if (
+ this.props.ActiveCoin.txhistory &&
+ (this.props.ActiveCoin.txhistory !== 'loading' && this.props.ActiveCoin.txhistory !== 'no data')) {
if (this.state.itemsList && this.state.itemsList.length && this.props.ActiveCoin.nativeActiveSection === 'default') {
return this.state.itemsList.map((tx, index) =>
@@ -215,13 +223,13 @@ class WalletsNativeTxHistory extends React.Component {
-
+
{translate('INDEX.TYPE')} |
diff --git a/react/src/components/dashboard/walletsNativeTxInfo.js b/react/src/components/dashboard/walletsNativeTxInfo.js
index 6a5476c..a312712 100644
--- a/react/src/components/dashboard/walletsNativeTxInfo.js
+++ b/react/src/components/dashboard/walletsNativeTxInfo.js
@@ -24,41 +24,44 @@ class WalletsNativeTxInfo extends React.Component {
}
render() {
- if (this.props && this.props.ActiveCoin.showTransactionInfo && this.props.ActiveCoin.nativeActiveSection === 'default' && this.props.ActiveCoin.mode === 'native') {
+ if (this.props &&
+ this.props.ActiveCoin.showTransactionInfo &&
+ this.props.ActiveCoin.nativeActiveSection === 'default' &&
+ this.props.ActiveCoin.mode === 'native') {
const txInfo = this.props.ActiveCoin.txhistory[this.props.ActiveCoin.showTransactionInfoTxIndex];
return (
-
+
-
+
@@ -124,7 +127,7 @@ class WalletsNativeTxInfo extends React.Component {
-
+
@@ -142,18 +145,18 @@ class WalletsNativeTxInfo extends React.Component {
-
-
+
diff --git a/react/src/components/dashboard/walletsNav.js b/react/src/components/dashboard/walletsNav.js
index ab50627..4b15fdc 100644
--- a/react/src/components/dashboard/walletsNav.js
+++ b/react/src/components/dashboard/walletsNav.js
@@ -67,19 +67,19 @@ class WalletsNav extends React.Component {
} else {
return (
-