From 353b6c06db28e5e94c8a85c1e268a1f39ab8a467 Mon Sep 17 00:00:00 2001 From: Nicolas Gotchac Date: Sat, 26 Nov 2016 17:06:37 +0100 Subject: [PATCH] Removed Circular Dependencies --- js/src/api/format/input.js | 12 ++---------- js/src/api/util/format.js | 17 ++++++++++++++--- js/src/ui/Actionbar/Export/export.js | 2 +- js/src/ui/Actionbar/Import/import.js | 3 ++- js/src/ui/Actionbar/Search/search.js | 3 ++- js/src/ui/Actionbar/Sort/sort.js | 2 +- js/src/ui/Form/TypedInput/typedInput.js | 5 ++++- 7 files changed, 26 insertions(+), 18 deletions(-) diff --git a/js/src/api/format/input.js b/js/src/api/format/input.js index 80f3bc0eb..6d261c674 100644 --- a/js/src/api/format/input.js +++ b/js/src/api/format/input.js @@ -17,7 +17,7 @@ import BigNumber from 'bignumber.js'; import { isArray, isHex, isInstanceOf, isString } from '../util/types'; -import { padLeft } from '../util/format'; +import { padLeft, toHex } from '../util/format'; export function inAddress (address) { // TODO: address validation if we have upper-lower addresses @@ -100,15 +100,7 @@ export function inFilter (options) { } export function inHex (str) { - if (str && str.toString) { - str = str.toString(16); - } - - if (str && str.substr(0, 2) === '0x') { - return str.toLowerCase(); - } - - return `0x${(str || '').toLowerCase()}`; + return toHex(str); } export function inNumber10 (number) { diff --git a/js/src/api/util/format.js b/js/src/api/util/format.js index f1909748d..7f60357cd 100644 --- a/js/src/api/util/format.js +++ b/js/src/api/util/format.js @@ -15,7 +15,6 @@ // along with Parity. If not, see . import { range } from 'lodash'; -import { inHex } from '../format/input'; export function bytesToHex (bytes) { return '0x' + bytes.map((b) => ('0' + b.toString(16)).slice(-2)).join(''); @@ -38,11 +37,23 @@ export function asciiToHex (string) { } export function padRight (input, length) { - const value = inHex(input).substr(2, length * 2); + const value = toHex(input).substr(2, length * 2); return '0x' + value + range(length * 2 - value.length).map(() => '0').join(''); } export function padLeft (input, length) { - const value = inHex(input).substr(2, length * 2); + const value = toHex(input).substr(2, length * 2); return '0x' + range(length * 2 - value.length).map(() => '0').join('') + value; } + +export function toHex (str) { + if (str && str.toString) { + str = str.toString(16); + } + + if (str && str.substr(0, 2) === '0x') { + return str.toLowerCase(); + } + + return `0x${(str || '').toLowerCase()}`; +} diff --git a/js/src/ui/Actionbar/Export/export.js b/js/src/ui/Actionbar/Export/export.js index 7f0ea3e15..a8cf826ae 100644 --- a/js/src/ui/Actionbar/Export/export.js +++ b/js/src/ui/Actionbar/Export/export.js @@ -19,7 +19,7 @@ import React, { Component, PropTypes } from 'react'; import FileSaver from 'file-saver'; import FileDownloadIcon from 'material-ui/svg-icons/file/file-download'; -import { Button } from '../../'; +import Button from '../../Button'; class ActionbarExport extends Component { static propTypes = { diff --git a/js/src/ui/Actionbar/Import/import.js b/js/src/ui/Actionbar/Import/import.js index 081fe1a17..091153c95 100644 --- a/js/src/ui/Actionbar/Import/import.js +++ b/js/src/ui/Actionbar/Import/import.js @@ -20,7 +20,8 @@ import FileUploadIcon from 'material-ui/svg-icons/file/file-upload'; import ContentClear from 'material-ui/svg-icons/content/clear'; import ActionDoneAll from 'material-ui/svg-icons/action/done-all'; -import { Modal, Button } from '../../'; +import Button from '../../Button'; +import Modal from '../../Modal'; import styles from './import.css'; diff --git a/js/src/ui/Actionbar/Search/search.js b/js/src/ui/Actionbar/Search/search.js index 36e3f8fe4..9385cb593 100644 --- a/js/src/ui/Actionbar/Search/search.js +++ b/js/src/ui/Actionbar/Search/search.js @@ -17,7 +17,8 @@ import React, { Component, PropTypes } from 'react'; import ActionSearch from 'material-ui/svg-icons/action/search'; -import { Button, InputChip } from '../../'; +import Button from '../../Button'; +import InputChip from '../../Form/InputChip'; import styles from './search.css'; diff --git a/js/src/ui/Actionbar/Sort/sort.js b/js/src/ui/Actionbar/Sort/sort.js index bbf320911..545775ead 100644 --- a/js/src/ui/Actionbar/Sort/sort.js +++ b/js/src/ui/Actionbar/Sort/sort.js @@ -22,7 +22,7 @@ import MenuItem from 'material-ui/MenuItem'; import SortIcon from 'material-ui/svg-icons/content/sort'; -import { Button } from '../../'; +import Button from '../../Button'; import SortStore from './sortStore'; import styles from './sort.css'; diff --git a/js/src/ui/Form/TypedInput/typedInput.js b/js/src/ui/Form/TypedInput/typedInput.js index f5ec2a02f..e93a97fc2 100644 --- a/js/src/ui/Form/TypedInput/typedInput.js +++ b/js/src/ui/Form/TypedInput/typedInput.js @@ -22,7 +22,10 @@ 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 { Input, InputAddressSelect, Select } from '../../../ui'; +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 styles from './typedInput.css';