diff --git a/js/src/3rdparty/etherscan/links.js b/js/src/3rdparty/etherscan/links.js
index 2745873fc..e85572850 100644
--- a/js/src/3rdparty/etherscan/links.js
+++ b/js/src/3rdparty/etherscan/links.js
@@ -14,10 +14,14 @@
// You should have received a copy of the GNU General Public License
// along with Parity. If not, see .
+export const url = (isTestnet = false) => {
+ return `https://${isTestnet ? 'testnet.' : ''}etherscan.io`;
+};
+
export const txLink = (hash, isTestnet = false) => {
- return `https://${isTestnet ? 'testnet.' : ''}etherscan.io/tx/${hash}`;
+ return `${url(isTestnet)}/tx/${hash}`;
};
export const addressLink = (address, isTestnet = false) => {
- return `https://${isTestnet ? 'testnet.' : ''}etherscan.io/address/${address}`;
+ return `${url(isTestnet)}/address/${address}`;
};
diff --git a/js/src/jsonrpc/rollup.config.js b/js/src/jsonrpc/rollup.config.js
deleted file mode 100644
index cc4f8c931..000000000
--- a/js/src/jsonrpc/rollup.config.js
+++ /dev/null
@@ -1,12 +0,0 @@
-import babel from 'rollup-plugin-babel';
-
-export default {
- entry: 'src/index.js',
- dest: 'release/index.js',
- format: 'cjs',
- plugins: [babel({
- babelrc: false,
- presets: ['es2015-rollup', 'stage-0'],
- runtimeHelpers: true
- })]
-};
diff --git a/js/src/modals/AddAddress/addAddress.js b/js/src/modals/AddAddress/addAddress.js
index 590287e73..e44cb0b3c 100644
--- a/js/src/modals/AddAddress/addAddress.js
+++ b/js/src/modals/AddAddress/addAddress.js
@@ -19,7 +19,7 @@ import ContentAdd from 'material-ui/svg-icons/content/add';
import ContentClear from 'material-ui/svg-icons/content/clear';
import { Button, Modal, Form, Input, InputAddress } from '~/ui';
-import { ERRORS, validateAddress, validateName } from '../../util/validation';
+import { ERRORS, validateAddress, validateName } from '~/util/validation';
export default class AddAddress extends Component {
static contextTypes = {
diff --git a/js/src/modals/AddContract/addContract.js b/js/src/modals/AddContract/addContract.js
index 71f8a911d..b19398001 100644
--- a/js/src/modals/AddContract/addContract.js
+++ b/js/src/modals/AddContract/addContract.js
@@ -21,7 +21,7 @@ import NavigationArrowForward from 'material-ui/svg-icons/navigation/arrow-forwa
import NavigationArrowBack from 'material-ui/svg-icons/navigation/arrow-back';
import { Button, Modal, Form, Input, InputAddress, RadioButtons } from '~/ui';
-import { ERRORS, validateAbi, validateAddress, validateName } from '../../util/validation';
+import { ERRORS, validateAbi, validateAddress, validateName } from '~/util/validation';
import { eip20, wallet } from '~/contracts/abi';
diff --git a/js/src/modals/CreateWallet/createWalletStore.js b/js/src/modals/CreateWallet/createWalletStore.js
index d8c308a12..1d3aa6ee2 100644
--- a/js/src/modals/CreateWallet/createWalletStore.js
+++ b/js/src/modals/CreateWallet/createWalletStore.js
@@ -16,13 +16,12 @@
import { observable, computed, action, transaction } from 'mobx';
-import { validateUint, validateAddress, validateName } from '~/util/validation';
-import { ERROR_CODES } from '~/api/transport/error';
-
import Contract from '~/api/contract';
+import { ERROR_CODES } from '~/api/transport/error';
import { wallet as walletAbi } from '~/contracts/abi';
import { wallet as walletCode } from '~/contracts/code';
+import { validateUint, validateAddress, validateName } from '~/util/validation';
import WalletsUtils from '~/util/wallets';
const STEPS = {
diff --git a/js/src/modals/DeployContract/DetailsStep/detailsStep.js b/js/src/modals/DeployContract/DetailsStep/detailsStep.js
index 54ef8f850..aa0a30e55 100644
--- a/js/src/modals/DeployContract/DetailsStep/detailsStep.js
+++ b/js/src/modals/DeployContract/DetailsStep/detailsStep.js
@@ -18,8 +18,8 @@ import React, { Component, PropTypes } from 'react';
import { MenuItem } from 'material-ui';
import { AddressSelect, Form, Input, Select } from '~/ui';
-import { validateAbi } from '../../../util/validation';
-import { parseAbiType } from '../../../util/abi';
+import { validateAbi } from '~/util/validation';
+import { parseAbiType } from '~/util/abi';
export default class DetailsStep extends Component {
static contextTypes = {
diff --git a/js/src/modals/DeployContract/ParametersStep/parametersStep.js b/js/src/modals/DeployContract/ParametersStep/parametersStep.js
index 4c7228b67..4ab5df693 100644
--- a/js/src/modals/DeployContract/ParametersStep/parametersStep.js
+++ b/js/src/modals/DeployContract/ParametersStep/parametersStep.js
@@ -32,7 +32,7 @@
import React, { Component, PropTypes } from 'react';
import { Form, TypedInput } from '~/ui';
-import { parseAbiType } from '../../../util/abi';
+import { parseAbiType } from '~/util/abi';
import styles from '../deployContract.css';
diff --git a/js/src/modals/DeployContract/deployContract.js b/js/src/modals/DeployContract/deployContract.js
index ae5578e40..5bf4fc389 100644
--- a/js/src/modals/DeployContract/deployContract.js
+++ b/js/src/modals/DeployContract/deployContract.js
@@ -19,7 +19,7 @@ import ActionDoneAll from 'material-ui/svg-icons/action/done-all';
import ContentClear from 'material-ui/svg-icons/content/clear';
import { BusyStep, CompletedStep, CopyToClipboard, Button, IdentityIcon, Modal, TxHash } from '~/ui';
-import { ERRORS, validateAbi, validateCode, validateName } from '../../util/validation';
+import { ERRORS, validateAbi, validateCode, validateName } from '~/util/validation';
import DetailsStep from './DetailsStep';
import ParametersStep from './ParametersStep';
diff --git a/js/src/modals/EditMeta/editMeta.js b/js/src/modals/EditMeta/editMeta.js
index ad26c19fe..8ab9233f1 100644
--- a/js/src/modals/EditMeta/editMeta.js
+++ b/js/src/modals/EditMeta/editMeta.js
@@ -19,7 +19,7 @@ import ContentClear from 'material-ui/svg-icons/content/clear';
import ContentSave from 'material-ui/svg-icons/content/save';
import { Button, Form, Input, InputChip, Modal } from '~/ui';
-import { validateName } from '../../util/validation';
+import { validateName } from '~/util/validation';
export default class EditMeta extends Component {
static contextTypes = {
diff --git a/js/src/modals/ExecuteContract/executeContract.js b/js/src/modals/ExecuteContract/executeContract.js
index 4a708d17a..2db5e2b04 100644
--- a/js/src/modals/ExecuteContract/executeContract.js
+++ b/js/src/modals/ExecuteContract/executeContract.js
@@ -21,8 +21,8 @@ import ActionDoneAll from 'material-ui/svg-icons/action/done-all';
import ContentClear from 'material-ui/svg-icons/content/clear';
import { BusyStep, CompletedStep, Button, IdentityIcon, Modal, TxHash } from '~/ui';
-import { MAX_GAS_ESTIMATION } from '../../util/constants';
-import { validateAddress, validateUint } from '../../util/validation';
+import { MAX_GAS_ESTIMATION } from '~/util/constants';
+import { validateAddress, validateUint } from '~/util/validation';
import { parseAbiType } from '~/util/abi';
import DetailsStep from './DetailsStep';
diff --git a/js/src/modals/SMSVerification/store.js b/js/src/modals/SMSVerification/store.js
index 49b91fa70..7a132aaf7 100644
--- a/js/src/modals/SMSVerification/store.js
+++ b/js/src/modals/SMSVerification/store.js
@@ -21,9 +21,8 @@ import { sha3 } from '~/api/util/sha3';
import Contracts from '~/contracts';
import { checkIfVerified, checkIfRequested, awaitPuzzle } from '~/contracts/sms-verification';
-import { postToServer } from '../../3rdparty/sms-verification';
-import checkIfTxFailed from '../../util/check-if-tx-failed';
-import waitForConfirmations from '../../util/wait-for-block-confirmations';
+import { postToServer } from '~/3rdparty/sms-verification';
+import { checkIfTxFailed, waitForConfirmations } from '~/util/tx';
export const LOADING = 'fetching-contract';
export const QUERY_DATA = 'query-data';
diff --git a/js/src/modals/SaveContract/saveContract.js b/js/src/modals/SaveContract/saveContract.js
index c73fd8a21..5d7863632 100644
--- a/js/src/modals/SaveContract/saveContract.js
+++ b/js/src/modals/SaveContract/saveContract.js
@@ -20,7 +20,7 @@ import SaveIcon from 'material-ui/svg-icons/content/save';
import ContentClear from 'material-ui/svg-icons/content/clear';
import { Button, Modal, Editor, Form, Input } from '~/ui';
-import { ERRORS, validateName } from '../../util/validation';
+import { ERRORS, validateName } from '~/util/validation';
import styles from './saveContract.css';
diff --git a/js/src/modals/Shapeshift/shapeshift.js b/js/src/modals/Shapeshift/shapeshift.js
index 562c8cbf3..9c5d696b0 100644
--- a/js/src/modals/Shapeshift/shapeshift.js
+++ b/js/src/modals/Shapeshift/shapeshift.js
@@ -19,7 +19,7 @@ import ActionDoneAll from 'material-ui/svg-icons/action/done-all';
import ContentClear from 'material-ui/svg-icons/content/clear';
import { Button, IdentityIcon, Modal } from '~/ui';
-import initShapeshift from '../../3rdparty/shapeshift';
+import initShapeshift from '~/3rdparty/shapeshift';
import shapeshiftLogo from '../../../assets/images/shapeshift-logo.png';
import AwaitingDepositStep from './AwaitingDepositStep';
diff --git a/js/src/redux/providers/walletActions.js b/js/src/redux/providers/walletActions.js
index 8e13ac1a0..4a8a3f82a 100644
--- a/js/src/redux/providers/walletActions.js
+++ b/js/src/redux/providers/walletActions.js
@@ -17,12 +17,10 @@
import { isEqual, uniq } from 'lodash';
import Contract from '~/api/contract';
-import { wallet as WALLET_ABI } from '~/contracts/abi';
import { bytesToHex, toHex } from '~/api/util/format';
-
import { ERROR_CODES } from '~/api/transport/error';
-import { MAX_GAS_ESTIMATION } from '../../util/constants';
-
+import { wallet as WALLET_ABI } from '~/contracts/abi';
+import { MAX_GAS_ESTIMATION } from '~/util/constants';
import WalletsUtils from '~/util/wallets';
import { newError } from '~/ui/Errors/actions';
diff --git a/js/src/ui/Form/TypedInput/typedInput.js b/js/src/ui/Form/TypedInput/typedInput.js
index 9162348e0..a81ec7b79 100644
--- a/js/src/ui/Form/TypedInput/typedInput.js
+++ b/js/src/ui/Form/TypedInput/typedInput.js
@@ -22,12 +22,11 @@ import IconButton from 'material-ui/IconButton';
import AddIcon from 'material-ui/svg-icons/content/add';
import RemoveIcon from 'material-ui/svg-icons/content/remove';
+import { fromWei, toWei } from '~/api/util/wei';
import Input from '~/ui/Form/Input';
import InputAddressSelect from '~/ui/Form/InputAddressSelect';
import Select from '~/ui/Form/Select';
-
import { ABI_TYPES } from '~/util/abi';
-import { fromWei, toWei } from '~/api/util/wei';
import styles from './typedInput.css';
diff --git a/js/src/ui/TxHash/txHash.js b/js/src/ui/TxHash/txHash.js
index 81c4e0bf5..715568fd9 100644
--- a/js/src/ui/TxHash/txHash.js
+++ b/js/src/ui/TxHash/txHash.js
@@ -20,7 +20,7 @@ import { connect } from 'react-redux';
import { bindActionCreators } from 'redux';
import { LinearProgress } from 'material-ui';
-import { txLink } from '../../3rdparty/etherscan/links';
+import { txLink } from '~/3rdparty/etherscan/links';
import ShortenedHash from '../ShortenedHash';
import styles from './txHash.css';
diff --git a/js/src/ui/TxList/txList.js b/js/src/ui/TxList/txList.js
index b8c53c1d9..3f5dab264 100644
--- a/js/src/ui/TxList/txList.js
+++ b/js/src/ui/TxList/txList.js
@@ -20,7 +20,7 @@ import { connect } from 'react-redux';
import { bindActionCreators } from 'redux';
import { observer } from 'mobx-react';
-import { txLink, addressLink } from '../../3rdparty/etherscan/links';
+import { txLink, addressLink } from '~/3rdparty/etherscan/links';
import IdentityIcon from '../IdentityIcon';
import IdentityName from '../IdentityName';
diff --git a/js/src/util/check-if-tx-failed.js b/js/src/util/check-if-tx-failed.js
deleted file mode 100644
index 39689bedd..000000000
--- a/js/src/util/check-if-tx-failed.js
+++ /dev/null
@@ -1,28 +0,0 @@
-// Copyright 2015, 2016 Ethcore (UK) Ltd.
-// This file is part of Parity.
-
-// Parity is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-
-// Parity is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-
-// You should have received a copy of the GNU General Public License
-// along with Parity. If not, see .
-
-const checkIfTxFailed = (api, tx, gasSent) => {
- return api.pollMethod('eth_getTransactionReceipt', tx)
- .then((receipt) => {
- // TODO: Right now, there's no way to tell wether the EVM code crashed.
- // Because you usually send a bit more gas than estimated (to make sure
- // it gets mined quickly), we transaction probably failed if all the gas
- // has been used up.
- return receipt.gasUsed.eq(gasSent);
- });
-};
-
-export default checkIfTxFailed;
diff --git a/js/src/util/is-testnet.js b/js/src/util/is-testnet.js
deleted file mode 100644
index c2bf2c450..000000000
--- a/js/src/util/is-testnet.js
+++ /dev/null
@@ -1,19 +0,0 @@
-// Copyright 2015, 2016 Ethcore (UK) Ltd.
-// This file is part of Parity.
-
-// Parity is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-
-// Parity is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-
-// You should have received a copy of the GNU General Public License
-// along with Parity. If not, see .
-
-export default (chain) => {
- return chain === 'morden' || chain === 'ropsten' || chain === 'testnet';
-};
diff --git a/js/src/util/wait-for-block-confirmations.js b/js/src/util/tx.js
similarity index 73%
rename from js/src/util/wait-for-block-confirmations.js
rename to js/src/util/tx.js
index 79ba2be25..b688d06fe 100644
--- a/js/src/util/wait-for-block-confirmations.js
+++ b/js/src/util/tx.js
@@ -18,7 +18,18 @@ const isValidReceipt = (receipt) => {
return receipt && receipt.blockNumber && receipt.blockNumber.gt(0);
};
-const waitForConfirmations = (api, tx, confirmations) => {
+export function checkIfTxFailed (api, tx, gasSent) {
+ return api.pollMethod('eth_getTransactionReceipt', tx)
+ .then((receipt) => {
+ // TODO: Right now, there's no way to tell wether the EVM code crashed.
+ // Because you usually send a bit more gas than estimated (to make sure
+ // it gets mined quickly), we transaction probably failed if all the gas
+ // has been used up.
+ return receipt.gasUsed.eq(gasSent);
+ });
+}
+
+export function waitForConfirmations (api, tx, confirmations) {
return new Promise((resolve, reject) => {
api.pollMethod('eth_getTransactionReceipt', tx, isValidReceipt)
.then((receipt) => {
@@ -39,6 +50,4 @@ const waitForConfirmations = (api, tx, confirmations) => {
.catch(reject);
});
});
-};
-
-export default waitForConfirmations;
+}
diff --git a/js/src/views/Account/Transactions/transactions.css b/js/src/views/Account/Transactions/transactions.css
index 13d727deb..6b44d298f 100644
--- a/js/src/views/Account/Transactions/transactions.css
+++ b/js/src/views/Account/Transactions/transactions.css
@@ -15,9 +15,6 @@
/* along with Parity. If not, see .
*/
-.transactions {
-}
-
.infonone {
opacity: 0.25;
}
diff --git a/js/src/views/Account/Transactions/transactions.js b/js/src/views/Account/Transactions/transactions.js
index e71781adf..2e98208b6 100644
--- a/js/src/views/Account/Transactions/transactions.js
+++ b/js/src/views/Account/Transactions/transactions.js
@@ -18,7 +18,7 @@ import React, { Component, PropTypes } from 'react';
import { connect } from 'react-redux';
import { bindActionCreators } from 'redux';
-import etherscan from '../../../3rdparty/etherscan';
+import etherscan from '~/3rdparty/etherscan';
import { Container, TxList } from '~/ui';
import styles from './transactions.css';
diff --git a/js/src/views/Account/account.css b/js/src/views/Account/account.css
index b1410f23a..a9a039c83 100644
--- a/js/src/views/Account/account.css
+++ b/js/src/views/Account/account.css
@@ -14,8 +14,6 @@
/* You should have received a copy of the GNU General Public License
/* along with Parity. If not, see .
*/
-.account {
-}
.btnicon {
width: 24px;
diff --git a/js/src/views/Account/account.js b/js/src/views/Account/account.js
index 98b0a5e97..cbacd5280 100644
--- a/js/src/views/Account/account.js
+++ b/js/src/views/Account/account.js
@@ -105,7 +105,7 @@ class Account extends Component {
}
return (
-
+
{ this.renderDeleteDialog(account) }
{ this.renderEditDialog(account) }
{ this.renderFundDialog() }
diff --git a/js/src/views/Accounts/accounts.css b/js/src/views/Accounts/accounts.css
index 469f33ddc..317905fd5 100644
--- a/js/src/views/Accounts/accounts.css
+++ b/js/src/views/Accounts/accounts.css
@@ -14,8 +14,6 @@
/* You should have received a copy of the GNU General Public License
/* along with Parity. If not, see
.
*/
-.accounts {
-}
.accountTooltip {
top: 13.3em;
diff --git a/js/src/views/Accounts/accounts.js b/js/src/views/Accounts/accounts.js
index a8a29945f..4383b7662 100644
--- a/js/src/views/Accounts/accounts.js
+++ b/js/src/views/Accounts/accounts.js
@@ -82,7 +82,7 @@ class Accounts extends Component {
render () {
return (
-
+
{ this.renderNewDialog() }
{ this.renderNewWalletDialog() }
{ this.renderActionbar() }
diff --git a/js/src/views/Address/address.css b/js/src/views/Address/address.css
index d93b88b59..cd44688bb 100644
--- a/js/src/views/Address/address.css
+++ b/js/src/views/Address/address.css
@@ -14,37 +14,37 @@
/* You should have received a copy of the GNU General Public License
/* along with Parity. If not, see
.
*/
-.address {
-}
-.delete .hero {
- padding-bottom: 1em;
-}
+.delete {
+ .hero {
+ padding-bottom: 1em;
+ }
-.delete .info {
- display: inline-block;
-}
+ .info {
+ display: inline-block;
+ }
-.delete .icon {
- display: inline-block;
-}
+ .icon {
+ display: inline-block;
+ }
-.delete .nameinfo {
- display: inline-block;
- text-align: left;
-}
+ .nameinfo {
+ display: inline-block;
+ text-align: left;
+ }
-.delete .header {
- text-transform: uppercase;
- font-size: 1.25em;
- padding-bottom: 0.25em;
-}
+ .header {
+ text-transform: uppercase;
+ font-size: 1.25em;
+ padding-bottom: 0.25em;
+ }
-.delete .address {
-}
+ .address {
+ }
-.delete .description {
- padding-top: 1em;
- font-size: 0.75em;
- color: #aaa;
+ .description {
+ padding-top: 1em;
+ font-size: 0.75em;
+ color: #aaa;
+ }
}
diff --git a/js/src/views/Address/address.js b/js/src/views/Address/address.js
index 0fae3cb1f..c1427b2be 100644
--- a/js/src/views/Address/address.js
+++ b/js/src/views/Address/address.js
@@ -28,8 +28,6 @@ import Transactions from '../Account/Transactions';
import Delete from './Delete';
import { setVisibleAccounts } from '~/redux/providers/personalActions';
-import styles from './address.css';
-
class Address extends Component {
static contextTypes = {
api: PropTypes.object.isRequired,
@@ -85,7 +83,7 @@ class Address extends Component {
}
return (
-
+
{ this.renderEditDialog(contact) }
{ this.renderActionbar(contact) }
.
*/
-.addresses {
-}
.list {
display: flex;
@@ -26,21 +24,21 @@
flex: 0 1 50%;
width: 50%;
position: relative;
-}
-.address:nth-child(odd)>div {
- padding-right: 0.5em !important;
-}
+ &:nth-child(odd)>div {
+ padding-right: 0.5em !important;
+ }
-.address:nth-child(even)>div {
- padding-left: 0.5em !important;
+ &:nth-child(even)>div {
+ padding-left: 0.5em !important;
+ }
}
.empty {
width: 100%;
display: block;
-}
-.empty div {
- color: #aaa;
+ div {
+ color: #aaa;
+ }
}
diff --git a/js/src/views/Addresses/addresses.js b/js/src/views/Addresses/addresses.js
index 4edfb0e6e..5e0ed4e18 100644
--- a/js/src/views/Addresses/addresses.js
+++ b/js/src/views/Addresses/addresses.js
@@ -76,7 +76,7 @@ class Addresses extends Component {
const { searchValues, sortOrder } = this.state;
return (
-
+
{ this.renderActionbar() }
{ this.renderAddAddress() }
diff --git a/js/src/views/Connection/connection.js b/js/src/views/Connection/connection.js
index 451624a2b..ad0e0c140 100644
--- a/js/src/views/Connection/connection.js
+++ b/js/src/views/Connection/connection.js
@@ -19,7 +19,6 @@ import { connect } from 'react-redux';
import { bindActionCreators } from 'redux';
import ActionCompareArrows from 'material-ui/svg-icons/action/compare-arrows';
import ActionDashboard from 'material-ui/svg-icons/action/dashboard';
-// import CommunicationVpnKey from 'material-ui/svg-icons/communication/vpn-key';
import HardwareDesktopMac from 'material-ui/svg-icons/hardware/desktop-mac';
import NotificationVpnLock from 'material-ui/svg-icons/notification/vpn-lock';
diff --git a/js/src/views/Contract/Events/Event/event.js b/js/src/views/Contract/Events/Event/event.js
index b42295198..1ed114d07 100644
--- a/js/src/views/Contract/Events/Event/event.js
+++ b/js/src/views/Contract/Events/Event/event.js
@@ -20,7 +20,7 @@ import React, { Component, PropTypes } from 'react';
import { IdentityIcon, IdentityName, Input, InputAddress } from '~/ui';
import ShortenedHash from '~/ui/ShortenedHash';
-import { txLink } from '../../../../3rdparty/etherscan/links';
+import { txLink } from '~/3rdparty/etherscan/links';
import styles from '../../contract.css';
diff --git a/js/src/views/Contract/contract.css b/js/src/views/Contract/contract.css
index eb6cabfa2..f49da0831 100644
--- a/js/src/views/Contract/contract.css
+++ b/js/src/views/Contract/contract.css
@@ -15,26 +15,26 @@
/* along with Parity. If not, see .
*/
-.contract {
-}
-
.events {
width: 100%;
border: none;
border-spacing: 0;
-}
-.events tr {
- line-height: 32px;
- vertical-align: top;
+ tr {
+ line-height: 32px;
+ vertical-align: top;
+ }
}
.event {
-}
+ td {
+ vertical-align: top;
+ padding: 1em 0.5em;
-.event td {
- vertical-align: top;
- padding: 1em 0.5em;
+ div {
+ white-space: nowrap;
+ }
+ }
}
.txhash {
@@ -47,10 +47,6 @@
color: #aaa;
}
-.event td div {
- white-space: nowrap;
-}
-
.mined {
}
diff --git a/js/src/views/Contract/contract.js b/js/src/views/Contract/contract.js
index 2aa37f847..35ad95fe2 100644
--- a/js/src/views/Contract/contract.js
+++ b/js/src/views/Contract/contract.js
@@ -124,7 +124,7 @@ class Contract extends Component {
}
return (
-
+
{ this.renderActionbar(account) }
{ this.renderDeleteDialog(account) }
{ this.renderEditDialog(account) }
diff --git a/js/src/views/Contracts/contracts.css b/js/src/views/Contracts/contracts.css
deleted file mode 100644
index eab0858e7..000000000
--- a/js/src/views/Contracts/contracts.css
+++ /dev/null
@@ -1,18 +0,0 @@
-/* Copyright 2015, 2016 Ethcore (UK) Ltd.
-/* This file is part of Parity.
-/*
-/* Parity is free software: you can redistribute it and/or modify
-/* it under the terms of the GNU General Public License as published by
-/* the Free Software Foundation, either version 3 of the License, or
-/* (at your option) any later version.
-/*
-/* Parity is distributed in the hope that it will be useful,
-/* but WITHOUT ANY WARRANTY; without even the implied warranty of
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-/* GNU General Public License for more details.
-/*
-/* You should have received a copy of the GNU General Public License
-/* along with Parity. If not, see
.
-*/
-.contracts {
-}
diff --git a/js/src/views/Contracts/contracts.js b/js/src/views/Contracts/contracts.js
index d97d88b09..b84705b32 100644
--- a/js/src/views/Contracts/contracts.js
+++ b/js/src/views/Contracts/contracts.js
@@ -28,8 +28,6 @@ import { setVisibleAccounts } from '~/redux/providers/personalActions';
import List from '../Accounts/List';
-import styles from './contracts.css';
-
class Contracts extends Component {
static contextTypes = {
api: PropTypes.object.isRequired
@@ -80,7 +78,7 @@ class Contracts extends Component {
const { searchValues, sortOrder } = this.state;
return (
-
+
{ this.renderActionbar() }
{ this.renderAddContract() }
{ this.renderAddContract() }
@@ -159,7 +157,6 @@ class Contracts extends Component {
return (
);
diff --git a/js/src/views/Settings/settings.css b/js/src/views/Settings/settings.css
index 91138db68..1eab3aac3 100644
--- a/js/src/views/Settings/settings.css
+++ b/js/src/views/Settings/settings.css
@@ -15,9 +15,6 @@
/* along with Parity. If not, see
.
*/
-.layout {
-}
-
.menu {
display: inline-block;
}
@@ -35,31 +32,24 @@
padding: 16px 2em !important;
line-height: 24px !important;
width: auto !important;
-}
-.tabactive {
-}
+ &>div {
+ height: 24px !important;
-.tab>div,
-.tabactive>div {
- height: 24px !important;
-}
+ &>div {
+ display: inline-block !important;
+ }
+ }
-.tab>div>div,
-.tabactive>div>div {
- display: inline-block !important;
-}
+ svg {
+ margin-right: 0.5em;
+ margin-bottom: 0 !important;
+ }
-.tab svg,
-.tabactive svg {
- margin-right: 0.5em;
- margin-bottom: 0 !important;
-}
-
-.tab .menu,
-.tabactive .menu {
- vertical-align: top;
- display: inline-block;
+ .menu {
+ vertical-align: top;
+ display: inline-block;
+ }
}
.imageIcon {
@@ -68,6 +58,8 @@
opacity: 0.5;
}
-.tabactive .imageIcon {
- opacity: 1;
+.tabactive {
+ .imageIcon {
+ opacity: 1;
+ }
}
diff --git a/js/src/views/Settings/settings.js b/js/src/views/Settings/settings.js
index 54b4fa6dd..a6c455dad 100644
--- a/js/src/views/Settings/settings.js
+++ b/js/src/views/Settings/settings.js
@@ -45,7 +45,7 @@ export default class Settings extends Component {
}
return (
-
+
{ this.renderTab(hash, 'views', ) }
diff --git a/js/src/views/Signer/components/Account/AccountLink/AccountLink.js b/js/src/views/Signer/components/Account/AccountLink/AccountLink.js
index 97ff35ce9..f42675474 100644
--- a/js/src/views/Signer/components/Account/AccountLink/AccountLink.js
+++ b/js/src/views/Signer/components/Account/AccountLink/AccountLink.js
@@ -16,7 +16,7 @@
import React, { Component, PropTypes } from 'react';
-import { addressLink } from '../../../../../3rdparty/etherscan/links';
+import { addressLink } from '~/3rdparty/etherscan/links';
import styles from './AccountLink.css';
export default class AccountLink extends Component {
diff --git a/js/src/views/Signer/components/TxHashLink/TxHashLink.js b/js/src/views/Signer/components/TxHashLink/TxHashLink.js
index 5fbd5695e..bce30eded 100644
--- a/js/src/views/Signer/components/TxHashLink/TxHashLink.js
+++ b/js/src/views/Signer/components/TxHashLink/TxHashLink.js
@@ -16,7 +16,7 @@
import React, { Component, PropTypes } from 'react';
-import { txLink } from '../../../../3rdparty/etherscan/links';
+import { txLink } from '~/3rdparty/etherscan/links';
export default class TxHashLink extends Component {
diff --git a/js/src/views/Signer/containers/Embedded/embedded.css b/js/src/views/Signer/containers/Embedded/embedded.css
index 94e0f3933..ffc6a209f 100644
--- a/js/src/views/Signer/containers/Embedded/embedded.css
+++ b/js/src/views/Signer/containers/Embedded/embedded.css
@@ -23,9 +23,6 @@
width: $embedWidth;
}
-.pending {
-}
-
.none {
color: #aaa;
}
diff --git a/js/src/views/Signer/containers/Embedded/embedded.js b/js/src/views/Signer/containers/Embedded/embedded.js
index 57639ea11..4629a6522 100644
--- a/js/src/views/Signer/containers/Embedded/embedded.js
+++ b/js/src/views/Signer/containers/Embedded/embedded.js
@@ -71,7 +71,7 @@ class Embedded extends Component {
const items = pending.sort(this._sortRequests).map(this.renderPending);
return (
-
+
{ items }
);
diff --git a/js/src/views/Signer/containers/RequestsPage/RequestsPage.css b/js/src/views/Signer/containers/RequestsPage/RequestsPage.css
index 3701c3097..662c45817 100644
--- a/js/src/views/Signer/containers/RequestsPage/RequestsPage.css
+++ b/js/src/views/Signer/containers/RequestsPage/RequestsPage.css
@@ -15,12 +15,6 @@
/* along with Parity. If not, see
.
*/
-.request {
-}
-
.noRequestsMsg {
color: #aaa;
}
-
-.items {
-}
diff --git a/js/src/views/Signer/containers/RequestsPage/RequestsPage.js b/js/src/views/Signer/containers/RequestsPage/RequestsPage.js
index ecb2ccd43..f3cd5a267 100644
--- a/js/src/views/Signer/containers/RequestsPage/RequestsPage.js
+++ b/js/src/views/Signer/containers/RequestsPage/RequestsPage.js
@@ -98,9 +98,7 @@ class RequestsPage extends Component {
return (
-
- { items }
-
+ { items }
);
}
@@ -111,7 +109,6 @@ class RequestsPage extends Component {
return (
.
-*/
-.signer {
-}
-
-.container {
-}
-
-.mainContainer {
-}
diff --git a/js/src/views/Signer/signer.js b/js/src/views/Signer/signer.js
index 536cf1d37..6d68c1dc0 100644
--- a/js/src/views/Signer/signer.js
+++ b/js/src/views/Signer/signer.js
@@ -19,12 +19,10 @@ import React, { Component } from 'react';
import { Actionbar } from '~/ui';
import RequestsPage from './containers/RequestsPage';
-import styles from './signer.css';
-
export default class Signer extends Component {
render () {
return (
-
+
diff --git a/js/src/views/Status/containers/StatusPage/StatusPage.js b/js/src/views/Status/containers/StatusPage/StatusPage.js
index 286e2c20e..c7ab56c5e 100644
--- a/js/src/views/Status/containers/StatusPage/StatusPage.js
+++ b/js/src/views/Status/containers/StatusPage/StatusPage.js
@@ -23,8 +23,6 @@ import { clearStatusLogs, toggleStatusLogs, toggleStatusRefresh } from '~/redux/
import Debug from '../../components/Debug';
import Status from '../../components/Status';
-import styles from './statusPage.css';
-
class StatusPage extends Component {
static propTypes = {
nodeStatus: PropTypes.object.isRequired,
@@ -41,7 +39,7 @@ class StatusPage extends Component {
render () {
return (
-
+
diff --git a/js/src/views/Status/containers/StatusPage/statusPage.css b/js/src/views/Status/containers/StatusPage/statusPage.css
deleted file mode 100644
index 850ee0856..000000000
--- a/js/src/views/Status/containers/StatusPage/statusPage.css
+++ /dev/null
@@ -1,18 +0,0 @@
-/* Copyright 2015, 2016 Ethcore (UK) Ltd.
-/* This file is part of Parity.
-/*
-/* Parity is free software: you can redistribute it and/or modify
-/* it under the terms of the GNU General Public License as published by
-/* the Free Software Foundation, either version 3 of the License, or
-/* (at your option) any later version.
-/*
-/* Parity is distributed in the hope that it will be useful,
-/* but WITHOUT ANY WARRANTY; without even the implied warranty of
-/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-/* GNU General Public License for more details.
-/*
-/* You should have received a copy of the GNU General Public License
-/* along with Parity. If not, see
.
-*/
-.body {
-}