diff --git a/js/src/dapps/chaindeploy.js b/js/src/dapps/chaindeploy/index.js
similarity index 82%
rename from js/src/dapps/chaindeploy.js
rename to js/src/dapps/chaindeploy/index.js
index c3dd42008..b133d00c8 100644
--- a/js/src/dapps/chaindeploy.js
+++ b/js/src/dapps/chaindeploy/index.js
@@ -17,11 +17,11 @@
import ReactDOM from 'react-dom';
import React from 'react';
-import Application from './chaindeploy/Application';
+import Application from './Application';
-import '../../assets/fonts/Roboto/font.css';
-import '../../assets/fonts/RobotoMono/font.css';
-import './style.css';
+import '@parity/shared/assets/fonts/Roboto/font.css';
+import '@parity/shared/assets/fonts/RobotoMono/font.css';
+import '../style.css';
ReactDOM.render(
,
diff --git a/js/src/dapps/dappreg/CreateDappCard/createDappCard.js b/js/src/dapps/dappreg/CreateDappCard/createDappCard.js
index 105789c11..39c689fc2 100644
--- a/js/src/dapps/dappreg/CreateDappCard/createDappCard.js
+++ b/js/src/dapps/dappreg/CreateDappCard/createDappCard.js
@@ -20,7 +20,7 @@ import DappsStore from '../dappsStore';
import Card from '../Card';
import ModalRegister from '../ModalRegister';
-import PlusImage from '~/../assets/images/dapps/plus.svg';
+import PlusImage from '@parity/shared/assets/images/dapps/plus.svg';
export default class CreateDappCard extends Component {
state = {
diff --git a/js/src/dapps/dappreg/Modal/modal.js b/js/src/dapps/dappreg/Modal/modal.js
index d70ac1090..c6dbd62e4 100644
--- a/js/src/dapps/dappreg/Modal/modal.js
+++ b/js/src/dapps/dappreg/Modal/modal.js
@@ -21,7 +21,7 @@ import ReactDOM from 'react-dom';
import Button from '../Button';
import styles from './modal.css';
-import CloseImage from '~/../assets/images/dapps/close.svg';
+import CloseImage from '@parity/shared/assets/images/dapps/close.svg';
export default class Modal extends Component {
static propTypes = {
diff --git a/js/src/dapps/dappreg.js b/js/src/dapps/dappreg/index.js
similarity index 81%
rename from js/src/dapps/dappreg.js
rename to js/src/dapps/dappreg/index.js
index 68d2ab30a..a8bb73d57 100644
--- a/js/src/dapps/dappreg.js
+++ b/js/src/dapps/dappreg/index.js
@@ -21,11 +21,11 @@ import { AppContainer } from 'react-hot-loader';
injectTapEventPlugin();
-import Application from './dappreg/Application';
+import Application from './Application';
-import '../../assets/fonts/Roboto/font.css';
-import '../../assets/fonts/RobotoMono/font.css';
-import './style.css';
+import '@parity/shared/assets/fonts/Roboto/font.css';
+import '@parity/shared/assets/fonts/RobotoMono/font.css';
+import '../style.css';
ReactDOM.render(
@@ -35,8 +35,8 @@ ReactDOM.render(
);
if (module.hot) {
- module.hot.accept('./dappreg/Application/index.js', () => {
- require('./dappreg/Application/index.js');
+ module.hot.accept('./Application/index.js', () => {
+ require('./Application/index.js');
ReactDOM.render(
diff --git a/js/src/dapps/localtx.js b/js/src/dapps/githubhint/index.js
similarity index 81%
rename from js/src/dapps/localtx.js
rename to js/src/dapps/githubhint/index.js
index 4625ded20..460cad844 100644
--- a/js/src/dapps/localtx.js
+++ b/js/src/dapps/githubhint/index.js
@@ -21,11 +21,11 @@ import { AppContainer } from 'react-hot-loader';
import injectTapEventPlugin from 'react-tap-event-plugin';
injectTapEventPlugin();
-import Application from './localtx/Application';
+import Application from './Application';
-import '../../assets/fonts/Roboto/font.css';
-import '../../assets/fonts/RobotoMono/font.css';
-import './style.css';
+import '@parity/shared/assets/fonts/Roboto/font.css';
+import '@parity/shared/assets/fonts/RobotoMono/font.css';
+import '../style.css';
ReactDOM.render(
@@ -35,8 +35,8 @@ ReactDOM.render(
);
if (module.hot) {
- module.hot.accept('./localtx/Application/index.js', () => {
- require('./localtx/Application/index.js');
+ module.hot.accept('./Application/index.js', () => {
+ require('./Application/index.js');
ReactDOM.render(
diff --git a/js/src/dapps/githubhint.js b/js/src/dapps/localtx/index.js
similarity index 80%
rename from js/src/dapps/githubhint.js
rename to js/src/dapps/localtx/index.js
index 1e55b91f5..460cad844 100644
--- a/js/src/dapps/githubhint.js
+++ b/js/src/dapps/localtx/index.js
@@ -21,11 +21,11 @@ import { AppContainer } from 'react-hot-loader';
import injectTapEventPlugin from 'react-tap-event-plugin';
injectTapEventPlugin();
-import Application from './githubhint/Application';
+import Application from './Application';
-import '../../assets/fonts/Roboto/font.css';
-import '../../assets/fonts/RobotoMono/font.css';
-import './style.css';
+import '@parity/shared/assets/fonts/Roboto/font.css';
+import '@parity/shared/assets/fonts/RobotoMono/font.css';
+import '../style.css';
ReactDOM.render(
@@ -35,8 +35,8 @@ ReactDOM.render(
);
if (module.hot) {
- module.hot.accept('./githubhint/Application/index.js', () => {
- require('./githubhint/Application/index.js');
+ module.hot.accept('./Application/index.js', () => {
+ require('./Application/index.js');
ReactDOM.render(
diff --git a/js/src/dapps/registry.js b/js/src/dapps/registry/index.js
similarity index 80%
rename from js/src/dapps/registry.js
rename to js/src/dapps/registry/index.js
index 3be005184..a144b6a63 100644
--- a/js/src/dapps/registry.js
+++ b/js/src/dapps/registry/index.js
@@ -21,12 +21,12 @@ import { Provider } from 'react-redux';
import injectTapEventPlugin from 'react-tap-event-plugin';
injectTapEventPlugin();
-import store from './registry/store';
-import Container from './registry/Container';
+import store from './store';
+import Container from './Container';
-import '../../assets/fonts/Roboto/font.css';
-import '../../assets/fonts/RobotoMono/font.css';
-import './style.css';
+import '@parity/shared/assets/fonts/Roboto/font.css';
+import '@parity/shared/assets/fonts/RobotoMono/font.css';
+import '../style.css';
ReactDOM.render(
@@ -36,8 +36,8 @@ ReactDOM.render(
);
if (module.hot) {
- module.hot.accept('./registry/Container', () => {
- require('./registry/Container');
+ module.hot.accept('./Container', () => {
+ require('./Container');
ReactDOM.render(
diff --git a/js/src/dapps/signaturereg/Header/header.js b/js/src/dapps/signaturereg/Header/header.js
index 8ced00b9a..b3988431a 100644
--- a/js/src/dapps/signaturereg/Header/header.js
+++ b/js/src/dapps/signaturereg/Header/header.js
@@ -17,7 +17,7 @@
import React, { Component, PropTypes } from 'react';
import styles from './header.css';
-import blocks from '~/../assets/images/dapps/blocks-350.jpg';
+import blocks from '@parity/shared/assets/images/dapps/blocks-350.jpg';
export default class Header extends Component {
static propTypes = {
diff --git a/js/src/dapps/signaturereg.js b/js/src/dapps/signaturereg/index.js
similarity index 80%
rename from js/src/dapps/signaturereg.js
rename to js/src/dapps/signaturereg/index.js
index 61b67aab0..460cad844 100644
--- a/js/src/dapps/signaturereg.js
+++ b/js/src/dapps/signaturereg/index.js
@@ -21,11 +21,11 @@ import { AppContainer } from 'react-hot-loader';
import injectTapEventPlugin from 'react-tap-event-plugin';
injectTapEventPlugin();
-import Application from './signaturereg/Application';
+import Application from './Application';
-import '../../assets/fonts/Roboto/font.css';
-import '../../assets/fonts/RobotoMono/font.css';
-import './style.css';
+import '@parity/shared/assets/fonts/Roboto/font.css';
+import '@parity/shared/assets/fonts/RobotoMono/font.css';
+import '../style.css';
ReactDOM.render(
@@ -35,8 +35,8 @@ ReactDOM.render(
);
if (module.hot) {
- module.hot.accept('./signaturereg/Application/index.js', () => {
- require('./signaturereg/Application/index.js');
+ module.hot.accept('./Application/index.js', () => {
+ require('./Application/index.js');
ReactDOM.render(
diff --git a/js/src/dapps/tokendeploy.js b/js/src/dapps/tokendeploy/index.js
similarity index 78%
rename from js/src/dapps/tokendeploy.js
rename to js/src/dapps/tokendeploy/index.js
index b6de05d05..5b85563c2 100644
--- a/js/src/dapps/tokendeploy.js
+++ b/js/src/dapps/tokendeploy/index.js
@@ -22,14 +22,14 @@ import { AppContainer } from 'react-hot-loader';
import injectTapEventPlugin from 'react-tap-event-plugin';
injectTapEventPlugin();
-import Deploy from './tokendeploy/Deploy';
-import Application from './tokendeploy/Application';
-import Overview from './tokendeploy/Overview';
-import Transfer from './tokendeploy/Transfer';
+import Deploy from './Deploy';
+import Application from './Application';
+import Overview from './Overview';
+import Transfer from './Transfer';
-import '../../assets/fonts/Roboto/font.css';
-import '../../assets/fonts/RobotoMono/font.css';
-import './style.css';
+import '@parity/shared/assets/fonts/Roboto/font.css';
+import '@parity/shared/assets/fonts/RobotoMono/font.css';
+import '../style.css';
ReactDOM.render(
@@ -46,10 +46,10 @@ ReactDOM.render(
);
if (module.hot) {
- module.hot.accept('./tokendeploy/Application/index.js', () => {
- require('./tokendeploy/Application/index.js');
- require('./tokendeploy/Overview/index.js');
- require('./tokendeploy/Transfer/index.js');
+ module.hot.accept('./Application/index.js', () => {
+ require('./Application/index.js');
+ require('./Overview/index.js');
+ require('./Transfer/index.js');
ReactDOM.render(
diff --git a/js/src/dapps/tokenreg.js b/js/src/dapps/tokenreg/index.js
similarity index 81%
rename from js/src/dapps/tokenreg.js
rename to js/src/dapps/tokenreg/index.js
index 3e8dc9b19..419797541 100644
--- a/js/src/dapps/tokenreg.js
+++ b/js/src/dapps/tokenreg/index.js
@@ -22,12 +22,12 @@ import { AppContainer } from 'react-hot-loader';
import injectTapEventPlugin from 'react-tap-event-plugin';
injectTapEventPlugin();
-import store from './tokenreg/store';
-import Container from './tokenreg/Container';
+import store from './store';
+import Container from './Container';
-import '../../assets/fonts/Roboto/font.css';
-import '../../assets/fonts/RobotoMono/font.css';
-import './style.css';
+import '@parity/shared/assets/fonts/Roboto/font.css';
+import '@parity/shared/assets/fonts/RobotoMono/font.css';
+import '../style.css';
ReactDOM.render(
@@ -39,8 +39,8 @@ ReactDOM.render(
);
if (module.hot) {
- module.hot.accept('./tokenreg/Container.js', () => {
- require('./tokenreg/Container.js');
+ module.hot.accept('./Container.js', () => {
+ require('./Container.js');
ReactDOM.render(
diff --git a/js/assets/fonts/Roboto/LICENSE.txt b/js/src/shared/assets/fonts/Roboto/LICENSE.txt
similarity index 100%
rename from js/assets/fonts/Roboto/LICENSE.txt
rename to js/src/shared/assets/fonts/Roboto/LICENSE.txt
diff --git a/js/assets/fonts/Roboto/font.css b/js/src/shared/assets/fonts/Roboto/font.css
similarity index 100%
rename from js/assets/fonts/Roboto/font.css
rename to js/src/shared/assets/fonts/Roboto/font.css
diff --git a/js/assets/fonts/Roboto/ttf/Roboto-Black.ttf b/js/src/shared/assets/fonts/Roboto/ttf/Roboto-Black.ttf
similarity index 100%
rename from js/assets/fonts/Roboto/ttf/Roboto-Black.ttf
rename to js/src/shared/assets/fonts/Roboto/ttf/Roboto-Black.ttf
diff --git a/js/assets/fonts/Roboto/ttf/Roboto-BlackItalic.ttf b/js/src/shared/assets/fonts/Roboto/ttf/Roboto-BlackItalic.ttf
similarity index 100%
rename from js/assets/fonts/Roboto/ttf/Roboto-BlackItalic.ttf
rename to js/src/shared/assets/fonts/Roboto/ttf/Roboto-BlackItalic.ttf
diff --git a/js/assets/fonts/Roboto/ttf/Roboto-Bold.ttf b/js/src/shared/assets/fonts/Roboto/ttf/Roboto-Bold.ttf
similarity index 100%
rename from js/assets/fonts/Roboto/ttf/Roboto-Bold.ttf
rename to js/src/shared/assets/fonts/Roboto/ttf/Roboto-Bold.ttf
diff --git a/js/assets/fonts/Roboto/ttf/Roboto-BoldItalic.ttf b/js/src/shared/assets/fonts/Roboto/ttf/Roboto-BoldItalic.ttf
similarity index 100%
rename from js/assets/fonts/Roboto/ttf/Roboto-BoldItalic.ttf
rename to js/src/shared/assets/fonts/Roboto/ttf/Roboto-BoldItalic.ttf
diff --git a/js/assets/fonts/Roboto/ttf/Roboto-Italic.ttf b/js/src/shared/assets/fonts/Roboto/ttf/Roboto-Italic.ttf
similarity index 100%
rename from js/assets/fonts/Roboto/ttf/Roboto-Italic.ttf
rename to js/src/shared/assets/fonts/Roboto/ttf/Roboto-Italic.ttf
diff --git a/js/assets/fonts/Roboto/ttf/Roboto-Light.ttf b/js/src/shared/assets/fonts/Roboto/ttf/Roboto-Light.ttf
similarity index 100%
rename from js/assets/fonts/Roboto/ttf/Roboto-Light.ttf
rename to js/src/shared/assets/fonts/Roboto/ttf/Roboto-Light.ttf
diff --git a/js/assets/fonts/Roboto/ttf/Roboto-LightItalic.ttf b/js/src/shared/assets/fonts/Roboto/ttf/Roboto-LightItalic.ttf
similarity index 100%
rename from js/assets/fonts/Roboto/ttf/Roboto-LightItalic.ttf
rename to js/src/shared/assets/fonts/Roboto/ttf/Roboto-LightItalic.ttf
diff --git a/js/assets/fonts/Roboto/ttf/Roboto-Medium.ttf b/js/src/shared/assets/fonts/Roboto/ttf/Roboto-Medium.ttf
similarity index 100%
rename from js/assets/fonts/Roboto/ttf/Roboto-Medium.ttf
rename to js/src/shared/assets/fonts/Roboto/ttf/Roboto-Medium.ttf
diff --git a/js/assets/fonts/Roboto/ttf/Roboto-MediumItalic.ttf b/js/src/shared/assets/fonts/Roboto/ttf/Roboto-MediumItalic.ttf
similarity index 100%
rename from js/assets/fonts/Roboto/ttf/Roboto-MediumItalic.ttf
rename to js/src/shared/assets/fonts/Roboto/ttf/Roboto-MediumItalic.ttf
diff --git a/js/assets/fonts/Roboto/ttf/Roboto-Regular.ttf b/js/src/shared/assets/fonts/Roboto/ttf/Roboto-Regular.ttf
similarity index 100%
rename from js/assets/fonts/Roboto/ttf/Roboto-Regular.ttf
rename to js/src/shared/assets/fonts/Roboto/ttf/Roboto-Regular.ttf
diff --git a/js/assets/fonts/Roboto/ttf/Roboto-Thin.ttf b/js/src/shared/assets/fonts/Roboto/ttf/Roboto-Thin.ttf
similarity index 100%
rename from js/assets/fonts/Roboto/ttf/Roboto-Thin.ttf
rename to js/src/shared/assets/fonts/Roboto/ttf/Roboto-Thin.ttf
diff --git a/js/assets/fonts/Roboto/ttf/Roboto-ThinItalic.ttf b/js/src/shared/assets/fonts/Roboto/ttf/Roboto-ThinItalic.ttf
similarity index 100%
rename from js/assets/fonts/Roboto/ttf/Roboto-ThinItalic.ttf
rename to js/src/shared/assets/fonts/Roboto/ttf/Roboto-ThinItalic.ttf
diff --git a/js/assets/fonts/Roboto/v15/-L14Jk06m6pUHB-5mXQQnYX0hVgzZQUfRDuZrPvH3D8.woff2 b/js/src/shared/assets/fonts/Roboto/v15/-L14Jk06m6pUHB-5mXQQnYX0hVgzZQUfRDuZrPvH3D8.woff2
similarity index 100%
rename from js/assets/fonts/Roboto/v15/-L14Jk06m6pUHB-5mXQQnYX0hVgzZQUfRDuZrPvH3D8.woff2
rename to js/src/shared/assets/fonts/Roboto/v15/-L14Jk06m6pUHB-5mXQQnYX0hVgzZQUfRDuZrPvH3D8.woff2
diff --git a/js/assets/fonts/Roboto/v15/0eC6fl06luXEYWpBSJvXCIX0hVgzZQUfRDuZrPvH3D8.woff2 b/js/src/shared/assets/fonts/Roboto/v15/0eC6fl06luXEYWpBSJvXCIX0hVgzZQUfRDuZrPvH3D8.woff2
similarity index 100%
rename from js/assets/fonts/Roboto/v15/0eC6fl06luXEYWpBSJvXCIX0hVgzZQUfRDuZrPvH3D8.woff2
rename to js/src/shared/assets/fonts/Roboto/v15/0eC6fl06luXEYWpBSJvXCIX0hVgzZQUfRDuZrPvH3D8.woff2
diff --git a/js/assets/fonts/Roboto/v15/Fl4y0QdOxyyTHEGMXX8kcYX0hVgzZQUfRDuZrPvH3D8.woff2 b/js/src/shared/assets/fonts/Roboto/v15/Fl4y0QdOxyyTHEGMXX8kcYX0hVgzZQUfRDuZrPvH3D8.woff2
similarity index 100%
rename from js/assets/fonts/Roboto/v15/Fl4y0QdOxyyTHEGMXX8kcYX0hVgzZQUfRDuZrPvH3D8.woff2
rename to js/src/shared/assets/fonts/Roboto/v15/Fl4y0QdOxyyTHEGMXX8kcYX0hVgzZQUfRDuZrPvH3D8.woff2
diff --git a/js/assets/fonts/Roboto/v15/Hgo13k-tfSpn0qi1SFdUfZBw1xU1rKptJj_0jans920.woff2 b/js/src/shared/assets/fonts/Roboto/v15/Hgo13k-tfSpn0qi1SFdUfZBw1xU1rKptJj_0jans920.woff2
similarity index 100%
rename from js/assets/fonts/Roboto/v15/Hgo13k-tfSpn0qi1SFdUfZBw1xU1rKptJj_0jans920.woff2
rename to js/src/shared/assets/fonts/Roboto/v15/Hgo13k-tfSpn0qi1SFdUfZBw1xU1rKptJj_0jans920.woff2
diff --git a/js/assets/fonts/Roboto/v15/I3S1wsgSg9YCurV6PUkTOYX0hVgzZQUfRDuZrPvH3D8.woff2 b/js/src/shared/assets/fonts/Roboto/v15/I3S1wsgSg9YCurV6PUkTOYX0hVgzZQUfRDuZrPvH3D8.woff2
similarity index 100%
rename from js/assets/fonts/Roboto/v15/I3S1wsgSg9YCurV6PUkTOYX0hVgzZQUfRDuZrPvH3D8.woff2
rename to js/src/shared/assets/fonts/Roboto/v15/I3S1wsgSg9YCurV6PUkTOYX0hVgzZQUfRDuZrPvH3D8.woff2
diff --git a/js/assets/fonts/Roboto/v15/NYDWBdD4gIq26G5XYbHsFIX0hVgzZQUfRDuZrPvH3D8.woff2 b/js/src/shared/assets/fonts/Roboto/v15/NYDWBdD4gIq26G5XYbHsFIX0hVgzZQUfRDuZrPvH3D8.woff2
similarity index 100%
rename from js/assets/fonts/Roboto/v15/NYDWBdD4gIq26G5XYbHsFIX0hVgzZQUfRDuZrPvH3D8.woff2
rename to js/src/shared/assets/fonts/Roboto/v15/NYDWBdD4gIq26G5XYbHsFIX0hVgzZQUfRDuZrPvH3D8.woff2
diff --git a/js/assets/fonts/Roboto/v15/Pru33qjShpZSmG3z6VYwnYX0hVgzZQUfRDuZrPvH3D8.woff2 b/js/src/shared/assets/fonts/Roboto/v15/Pru33qjShpZSmG3z6VYwnYX0hVgzZQUfRDuZrPvH3D8.woff2
similarity index 100%
rename from js/assets/fonts/Roboto/v15/Pru33qjShpZSmG3z6VYwnYX0hVgzZQUfRDuZrPvH3D8.woff2
rename to js/src/shared/assets/fonts/Roboto/v15/Pru33qjShpZSmG3z6VYwnYX0hVgzZQUfRDuZrPvH3D8.woff2
diff --git a/js/assets/fonts/RobotoMono/LICENSE.txt b/js/src/shared/assets/fonts/RobotoMono/LICENSE.txt
similarity index 100%
rename from js/assets/fonts/RobotoMono/LICENSE.txt
rename to js/src/shared/assets/fonts/RobotoMono/LICENSE.txt
diff --git a/js/assets/fonts/RobotoMono/font.css b/js/src/shared/assets/fonts/RobotoMono/font.css
similarity index 100%
rename from js/assets/fonts/RobotoMono/font.css
rename to js/src/shared/assets/fonts/RobotoMono/font.css
diff --git a/js/assets/fonts/RobotoMono/ttf/RobotoMono-Bold.ttf b/js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-Bold.ttf
similarity index 100%
rename from js/assets/fonts/RobotoMono/ttf/RobotoMono-Bold.ttf
rename to js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-Bold.ttf
diff --git a/js/assets/fonts/RobotoMono/ttf/RobotoMono-BoldItalic.ttf b/js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-BoldItalic.ttf
similarity index 100%
rename from js/assets/fonts/RobotoMono/ttf/RobotoMono-BoldItalic.ttf
rename to js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-BoldItalic.ttf
diff --git a/js/assets/fonts/RobotoMono/ttf/RobotoMono-Italic.ttf b/js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-Italic.ttf
similarity index 100%
rename from js/assets/fonts/RobotoMono/ttf/RobotoMono-Italic.ttf
rename to js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-Italic.ttf
diff --git a/js/assets/fonts/RobotoMono/ttf/RobotoMono-Light.ttf b/js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-Light.ttf
similarity index 100%
rename from js/assets/fonts/RobotoMono/ttf/RobotoMono-Light.ttf
rename to js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-Light.ttf
diff --git a/js/assets/fonts/RobotoMono/ttf/RobotoMono-LightItalic.ttf b/js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-LightItalic.ttf
similarity index 100%
rename from js/assets/fonts/RobotoMono/ttf/RobotoMono-LightItalic.ttf
rename to js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-LightItalic.ttf
diff --git a/js/assets/fonts/RobotoMono/ttf/RobotoMono-Medium.ttf b/js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-Medium.ttf
similarity index 100%
rename from js/assets/fonts/RobotoMono/ttf/RobotoMono-Medium.ttf
rename to js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-Medium.ttf
diff --git a/js/assets/fonts/RobotoMono/ttf/RobotoMono-MediumItalic.ttf b/js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-MediumItalic.ttf
similarity index 100%
rename from js/assets/fonts/RobotoMono/ttf/RobotoMono-MediumItalic.ttf
rename to js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-MediumItalic.ttf
diff --git a/js/assets/fonts/RobotoMono/ttf/RobotoMono-Regular.ttf b/js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-Regular.ttf
similarity index 100%
rename from js/assets/fonts/RobotoMono/ttf/RobotoMono-Regular.ttf
rename to js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-Regular.ttf
diff --git a/js/assets/fonts/RobotoMono/ttf/RobotoMono-Thin.ttf b/js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-Thin.ttf
similarity index 100%
rename from js/assets/fonts/RobotoMono/ttf/RobotoMono-Thin.ttf
rename to js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-Thin.ttf
diff --git a/js/assets/fonts/RobotoMono/ttf/RobotoMono-ThinItalic.ttf b/js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-ThinItalic.ttf
similarity index 100%
rename from js/assets/fonts/RobotoMono/ttf/RobotoMono-ThinItalic.ttf
rename to js/src/shared/assets/fonts/RobotoMono/ttf/RobotoMono-ThinItalic.ttf
diff --git a/js/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz-pRBTtN4E2_qSPBnw6AgMc.woff2 b/js/src/shared/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz-pRBTtN4E2_qSPBnw6AgMc.woff2
similarity index 100%
rename from js/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz-pRBTtN4E2_qSPBnw6AgMc.woff2
rename to js/src/shared/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz-pRBTtN4E2_qSPBnw6AgMc.woff2
diff --git a/js/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz0ExlR2MysFCBK8OirNw2kM.woff2 b/js/src/shared/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz0ExlR2MysFCBK8OirNw2kM.woff2
similarity index 100%
rename from js/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz0ExlR2MysFCBK8OirNw2kM.woff2
rename to js/src/shared/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz0ExlR2MysFCBK8OirNw2kM.woff2
diff --git a/js/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz2MSHb9EAJwuSzGfuRChQzQ.woff2 b/js/src/shared/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz2MSHb9EAJwuSzGfuRChQzQ.woff2
similarity index 100%
rename from js/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz2MSHb9EAJwuSzGfuRChQzQ.woff2
rename to js/src/shared/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz2MSHb9EAJwuSzGfuRChQzQ.woff2
diff --git a/js/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz2dsm03krrxlabhmVQFB99s.woff2 b/js/src/shared/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz2dsm03krrxlabhmVQFB99s.woff2
similarity index 100%
rename from js/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz2dsm03krrxlabhmVQFB99s.woff2
rename to js/src/shared/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz2dsm03krrxlabhmVQFB99s.woff2
diff --git a/js/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz9Dnm4qiMZlH5rhYv_7LI2Y.woff2 b/js/src/shared/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz9Dnm4qiMZlH5rhYv_7LI2Y.woff2
similarity index 100%
rename from js/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz9Dnm4qiMZlH5rhYv_7LI2Y.woff2
rename to js/src/shared/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz9Dnm4qiMZlH5rhYv_7LI2Y.woff2
diff --git a/js/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz9TIkQYohD4BpHvJ3NvbHoA.woff2 b/js/src/shared/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz9TIkQYohD4BpHvJ3NvbHoA.woff2
similarity index 100%
rename from js/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz9TIkQYohD4BpHvJ3NvbHoA.woff2
rename to js/src/shared/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59Fz9TIkQYohD4BpHvJ3NvbHoA.woff2
diff --git a/js/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59FzyJ0caWjaSBdV-xZbEgst_k.woff2 b/js/src/shared/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59FzyJ0caWjaSBdV-xZbEgst_k.woff2
similarity index 100%
rename from js/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59FzyJ0caWjaSBdV-xZbEgst_k.woff2
rename to js/src/shared/assets/fonts/RobotoMono/v4/N4duVc9C58uwPiY8_59FzyJ0caWjaSBdV-xZbEgst_k.woff2
diff --git a/js/assets/images/certifications/unknown.svg b/js/src/shared/assets/images/certifications/unknown.svg
similarity index 100%
rename from js/assets/images/certifications/unknown.svg
rename to js/src/shared/assets/images/certifications/unknown.svg
diff --git a/js/assets/images/contracts/ethereum-black-64x64.png b/js/src/shared/assets/images/contracts/ethereum-black-64x64.png
similarity index 100%
rename from js/assets/images/contracts/ethereum-black-64x64.png
rename to js/src/shared/assets/images/contracts/ethereum-black-64x64.png
diff --git a/js/assets/images/contracts/ethereum-black.png b/js/src/shared/assets/images/contracts/ethereum-black.png
similarity index 100%
rename from js/assets/images/contracts/ethereum-black.png
rename to js/src/shared/assets/images/contracts/ethereum-black.png
diff --git a/js/assets/images/contracts/ethereum-white.png b/js/src/shared/assets/images/contracts/ethereum-white.png
similarity index 100%
rename from js/assets/images/contracts/ethereum-white.png
rename to js/src/shared/assets/images/contracts/ethereum-white.png
diff --git a/js/assets/images/contracts/unknown-64x64.png b/js/src/shared/assets/images/contracts/unknown-64x64.png
similarity index 100%
rename from js/assets/images/contracts/unknown-64x64.png
rename to js/src/shared/assets/images/contracts/unknown-64x64.png
diff --git a/js/assets/images/contracts/unknown.png b/js/src/shared/assets/images/contracts/unknown.png
similarity index 100%
rename from js/assets/images/contracts/unknown.png
rename to js/src/shared/assets/images/contracts/unknown.png
diff --git a/js/assets/images/dapps/blocks-350.jpg b/js/src/shared/assets/images/dapps/blocks-350.jpg
similarity index 100%
rename from js/assets/images/dapps/blocks-350.jpg
rename to js/src/shared/assets/images/dapps/blocks-350.jpg
diff --git a/js/assets/images/dapps/close.svg b/js/src/shared/assets/images/dapps/close.svg
similarity index 100%
rename from js/assets/images/dapps/close.svg
rename to js/src/shared/assets/images/dapps/close.svg
diff --git a/js/assets/images/dapps/plus.svg b/js/src/shared/assets/images/dapps/plus.svg
similarity index 100%
rename from js/assets/images/dapps/plus.svg
rename to js/src/shared/assets/images/dapps/plus.svg
diff --git a/js/assets/images/dapps/signature.png b/js/src/shared/assets/images/dapps/signature.png
similarity index 100%
rename from js/assets/images/dapps/signature.png
rename to js/src/shared/assets/images/dapps/signature.png
diff --git a/js/assets/images/parity-logo-black-no-text.ico b/js/src/shared/assets/images/parity-logo-black-no-text.ico
similarity index 100%
rename from js/assets/images/parity-logo-black-no-text.ico
rename to js/src/shared/assets/images/parity-logo-black-no-text.ico
diff --git a/js/assets/images/parity-logo-black-no-text.png b/js/src/shared/assets/images/parity-logo-black-no-text.png
similarity index 100%
rename from js/assets/images/parity-logo-black-no-text.png
rename to js/src/shared/assets/images/parity-logo-black-no-text.png
diff --git a/js/assets/images/parity-logo-black-no-text.svg b/js/src/shared/assets/images/parity-logo-black-no-text.svg
similarity index 100%
rename from js/assets/images/parity-logo-black-no-text.svg
rename to js/src/shared/assets/images/parity-logo-black-no-text.svg
diff --git a/js/assets/images/parity-logo-black.svg b/js/src/shared/assets/images/parity-logo-black.svg
similarity index 100%
rename from js/assets/images/parity-logo-black.svg
rename to js/src/shared/assets/images/parity-logo-black.svg
diff --git a/js/assets/images/parity-logo-white-no-text.svg b/js/src/shared/assets/images/parity-logo-white-no-text.svg
similarity index 100%
rename from js/assets/images/parity-logo-white-no-text.svg
rename to js/src/shared/assets/images/parity-logo-white-no-text.svg
diff --git a/js/assets/images/parity-logo-white.svg b/js/src/shared/assets/images/parity-logo-white.svg
similarity index 100%
rename from js/assets/images/parity-logo-white.svg
rename to js/src/shared/assets/images/parity-logo-white.svg
diff --git a/js/assets/images/paritybar.png b/js/src/shared/assets/images/paritybar.png
similarity index 100%
rename from js/assets/images/paritybar.png
rename to js/src/shared/assets/images/paritybar.png
diff --git a/js/assets/images/shapeshift-btn.png b/js/src/shared/assets/images/shapeshift-btn.png
similarity index 100%
rename from js/assets/images/shapeshift-btn.png
rename to js/src/shared/assets/images/shapeshift-btn.png
diff --git a/js/assets/images/shapeshift-logo.png b/js/src/shared/assets/images/shapeshift-logo.png
similarity index 100%
rename from js/assets/images/shapeshift-logo.png
rename to js/src/shared/assets/images/shapeshift-logo.png
diff --git a/js/src/shared/redux/actions.js b/js/src/shared/redux/actions.js
index 1f3c68f28..0bd782d95 100644
--- a/js/src/shared/redux/actions.js
+++ b/js/src/shared/redux/actions.js
@@ -14,7 +14,7 @@
// You should have received a copy of the GNU General Public License
// along with Parity. If not, see .
-import { newError } from '~/ui/Errors/actions';
+import { newError } from '@parity/ui/Errors/actions';
import { openSnackbar, showSnackbar } from './providers/snackbarActions';
import { toggleStatusRefresh } from './providers/statusActions';
diff --git a/js/src/shared/redux/middleware.js b/js/src/shared/redux/middleware.js
index 2d8b36aec..99d38cad6 100644
--- a/js/src/shared/redux/middleware.js
+++ b/js/src/shared/redux/middleware.js
@@ -16,7 +16,7 @@
import thunk from 'redux-thunk';
import { routerMiddleware } from 'react-router-redux';
-import ErrorsMiddleware from '~/ui/Errors/middleware';
+import ErrorsMiddleware from '@parity/ui/Errors/middleware';
import SettingsMiddleware from './providers/settings/middleware';
import SignerMiddleware from './providers/signerMiddleware';
diff --git a/js/src/shared/redux/providers/personalActions.js b/js/src/shared/redux/providers/personalActions.js
index 7febe4909..7210b2a4f 100644
--- a/js/src/shared/redux/providers/personalActions.js
+++ b/js/src/shared/redux/providers/personalActions.js
@@ -24,7 +24,7 @@ import BalancesProvider from './balances';
import { updateTokensFilter } from './balancesActions';
import { attachWallets } from './walletActions';
-import MethodDecodingStore from '~/ui/MethodDecoding/methodDecodingStore';
+import MethodDecodingStore from '@parity/ui/MethodDecoding/methodDecodingStore';
export function personalAccountsInfo (accountsInfo) {
const accounts = {};
diff --git a/js/src/shared/redux/providers/tokensActions.js b/js/src/shared/redux/providers/tokensActions.js
index 233c04fa1..b6ed9bde7 100644
--- a/js/src/shared/redux/providers/tokensActions.js
+++ b/js/src/shared/redux/providers/tokensActions.js
@@ -16,11 +16,11 @@
import { uniq } from 'lodash';
-import { LOG_KEYS, getLogger } from '@parity/shared/config';
-import Contracts from '@parity/shared/contracts';
-import { fetchTokenIds, fetchTokenInfo } from '@parity/shared/util/tokens';
+import { IconCache } from '@parity/ui';
-import { IconCache } from '~/ui';
+import { LOG_KEYS, getLogger } from '~/shared/config';
+import Contracts from '~/shared/contracts';
+import { fetchTokenIds, fetchTokenInfo } from '~/shared/util/tokens';
import { updateTokensFilter } from './balancesActions';
diff --git a/js/src/shared/redux/providers/walletActions.js b/js/src/shared/redux/providers/walletActions.js
index 2d5a79b29..ee6d5f68e 100644
--- a/js/src/shared/redux/providers/walletActions.js
+++ b/js/src/shared/redux/providers/walletActions.js
@@ -19,11 +19,11 @@ import { isEqual, uniq } from 'lodash';
import Contract from '@parity/api/contract';
import { ERROR_CODES } from '@parity/api/transport/error';
import { bytesToHex, toHex } from '@parity/api/util/format';
-import { wallet as WALLET_ABI } from '@parity/shared/contracts/abi';
-import { MAX_GAS_ESTIMATION } from '@parity/shared/util/constants';
-import WalletsUtils from '@parity/shared/util/wallets';
+import { newError } from '@parity/ui/Errors/actions';
-import { newError } from '~/ui/Errors/actions';
+import { wallet as WALLET_ABI } from '~/shared/contracts/abi';
+import { MAX_GAS_ESTIMATION } from '~/shared/util/constants';
+import WalletsUtils from '~/shared/util/wallets';
const UPDATE_OWNERS = 'owners';
const UPDATE_REQUIRE = 'require';
diff --git a/js/src/shared/redux/reducers.js b/js/src/shared/redux/reducers.js
index 95a71f7ae..255150d74 100644
--- a/js/src/shared/redux/reducers.js
+++ b/js/src/shared/redux/reducers.js
@@ -26,7 +26,7 @@ import {
import certificationsReducer from './providers/certifications/reducer';
import registryReducer from './providers/registry/reducer';
-import errorReducer from '~/ui/Errors/reducers';
+import errorReducer from '@parity/ui/Errors/reducers';
export default function () {
return combineReducers({
diff --git a/js/src/shared/redux/util.js b/js/src/shared/redux/util.js
index d794c020e..d3b2a870f 100644
--- a/js/src/shared/redux/util.js
+++ b/js/src/shared/redux/util.js
@@ -14,7 +14,7 @@
// You should have received a copy of the GNU General Public License
// along with Parity. If not, see .
-import { withError } from '~/ui/Errors/middleware';
+import { withError } from '@parity/ui/Errors/middleware';
export {
withError
diff --git a/js/src/shared/util/dapps.js b/js/src/shared/util/dapps.js
index 2467058da..d04711fef 100644
--- a/js/src/shared/util/dapps.js
+++ b/js/src/shared/util/dapps.js
@@ -18,10 +18,10 @@ import BigNumber from 'bignumber.js';
import { pick, range, uniq } from 'lodash';
import { bytesToHex } from '@parity/api/util/format';
-import builtinJson from '@parity/shared/config/dappsBuiltin.json';
-import viewsJson from '@parity/shared/config/dappsViews.json';
+import { IconCache } from '@parity/ui';
-import { IconCache } from '~/ui';
+import builtinJson from '~/shared/config/dappsBuiltin.json';
+import viewsJson from '~/shared/config/dappsViews.json';
import Contracts from '../contracts';
diff --git a/js/src/shared/util/notifications.js b/js/src/shared/util/notifications.js
index 74732cac2..640054136 100644
--- a/js/src/shared/util/notifications.js
+++ b/js/src/shared/util/notifications.js
@@ -17,7 +17,7 @@
import Push from 'push.js';
import BigNumber from 'bignumber.js';
-import unkownIcon from '~/../assets/images/contracts/unknown-64x64.png';
+import unkownIcon from '~/shared/assets/images/contracts/unknown-64x64.png';
export function notifyTransaction (account, token, _value, onClick) {
const name = account.name || account.address;
diff --git a/js/src/shared/util/tokens.js b/js/src/shared/util/tokens.js
index 70dd8dbbe..9e42b7340 100644
--- a/js/src/shared/util/tokens.js
+++ b/js/src/shared/util/tokens.js
@@ -18,9 +18,9 @@ import { range } from 'lodash';
import BigNumber from 'bignumber.js';
import { sha3 } from '@parity/api/util/sha3';
+import { IconCache } from '@parity/ui';
-import imagesEthereum from '~/../assets/images/contracts/ethereum-black-64x64.png';
-import { IconCache } from '~/ui';
+import imagesEthereum from '~/shared/assets/images/contracts/ethereum-black-64x64.png';
const BALANCEOF_SIGNATURE = sha3('balanceOf(address)');
const ADDRESS_PADDING = range(24).map(() => '0').join('');
diff --git a/js/src/shell/FirstRun/Welcome/welcome.js b/js/src/shell/FirstRun/Welcome/welcome.js
index e7e1c9f85..277c93a2c 100644
--- a/js/src/shell/FirstRun/Welcome/welcome.js
+++ b/js/src/shell/FirstRun/Welcome/welcome.js
@@ -17,7 +17,7 @@
import React from 'react';
import { FormattedMessage } from 'react-intl';
-import imagesEthcore from '~/../assets/images/parity-logo-white.svg';
+import imagesEthcore from '@parity/shared/assets/images/parity-logo-white.svg';
import styles from '../firstRun.css';
diff --git a/js/src/shell/FirstRun/firstRun.js b/js/src/shell/FirstRun/firstRun.js
index 506807d6d..bb451ce19 100644
--- a/js/src/shell/FirstRun/firstRun.js
+++ b/js/src/shell/FirstRun/firstRun.js
@@ -25,7 +25,7 @@ import { newError } from '@parity/shared/redux/actions';
import { Button, Portal } from '@parity/ui';
import { CheckIcon, DoneIcon, NextIcon, PrintIcon } from '@parity/ui/Icons';
-import ParityLogo from '~/../assets/images/parity-logo-black-no-text.svg';
+import ParityLogo from '@parity/shared/assets/images/parity-logo-black-no-text.svg';
// FIXME: These imports, while nice for re-using, breaks since the shell import
import { NewAccount, AccountDetails } from '~/views/Accounts/CreateAccount';
diff --git a/js/src/shell/ParityBar/parityBar.js b/js/src/shell/ParityBar/parityBar.js
index 12fb672eb..e6300f0a5 100644
--- a/js/src/shell/ParityBar/parityBar.js
+++ b/js/src/shell/ParityBar/parityBar.js
@@ -26,7 +26,7 @@ import store from 'store';
import { AccountCard, Badge, Button, ContainerTitle, IdentityIcon, SelectionList } from '@parity/ui';
import { CancelIcon, FingerprintIcon } from '@parity/ui/Icons';
-import imagesEthcoreBlock from '~/../assets/images/parity-logo-white-no-text.svg';
+import imagesEthcoreBlock from '@parity/shared/assets/images/parity-logo-white-no-text.svg';
import DappsStore from '~/shell/Dapps/dappsStore';
import Signer from '~/shell/Signer/Embedded';
diff --git a/js/src/shell/embed.js b/js/src/shell/embed.js
index 2e053f57f..bcad08f37 100644
--- a/js/src/shell/embed.js
+++ b/js/src/shell/embed.js
@@ -34,8 +34,8 @@ import SecureApi from '~/secureApi';
import '@parity/shared/environment';
-import '~/../assets/fonts/Roboto/font.css';
-import '~/../assets/fonts/RobotoMono/font.css';
+import '@parity/shared/assets/fonts/Roboto/font.css';
+import '@parity/shared/assets/fonts/RobotoMono/font.css';
injectTapEventPlugin();
diff --git a/js/src/ui/Certifications/certifications.js b/js/src/ui/Certifications/certifications.js
index b05396778..f8fa88884 100644
--- a/js/src/ui/Certifications/certifications.js
+++ b/js/src/ui/Certifications/certifications.js
@@ -17,7 +17,7 @@
import React, { Component, PropTypes } from 'react';
import { connect } from 'react-redux';
-import defaultIcon from '~/../assets/images/certifications/unknown.svg';
+import defaultIcon from '@parity/shared/assets/images/certifications/unknown.svg';
import IconCache from '~/ui/IconCache';
import styles from './certifications.css';
diff --git a/js/src/ui/Form/FormWrap/formWrap.css b/js/src/ui/Form/FormWrap/formWrap.css
deleted file mode 100644
index aef7994ba..000000000
--- a/js/src/ui/Form/FormWrap/formWrap.css
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Copyright 2015-2017 Parity Technologies (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 .
-*/
-.stretch {
- width: 75%;
- clear: both;
-}
-
-.stretch input {
- width: 100%;
-}
diff --git a/js/src/ui/Form/FormWrap/formWrap.js b/js/src/ui/Form/FormWrap/formWrap.js
deleted file mode 100644
index 3de4a9a46..000000000
--- a/js/src/ui/Form/FormWrap/formWrap.js
+++ /dev/null
@@ -1,33 +0,0 @@
-// Copyright 2015-2017 Parity Technologies (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 .
-
-import React, { Component, PropTypes } from 'react';
-
-import styles from './formWrap.css';
-
-export default class FormWrap extends Component {
- static propTypes = {
- children: PropTypes.node
- }
-
- render () {
- return (
-
- { this.props.children }
-
- );
- }
-}
diff --git a/js/src/ui/Form/FormWrap/index.js b/js/src/ui/Form/FormWrap/index.js
deleted file mode 100644
index 7483398c2..000000000
--- a/js/src/ui/Form/FormWrap/index.js
+++ /dev/null
@@ -1,17 +0,0 @@
-// Copyright 2015-2017 Parity Technologies (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 from './formWrap';
diff --git a/js/src/ui/Form/InputAddressSelect/inputAddressSelect.js b/js/src/ui/Form/InputAddressSelect/inputAddressSelect.js
index 17e2f39e8..0cc4f4d19 100644
--- a/js/src/ui/Form/InputAddressSelect/inputAddressSelect.js
+++ b/js/src/ui/Form/InputAddressSelect/inputAddressSelect.js
@@ -14,51 +14,47 @@
// You should have received a copy of the GNU General Public License
// along with Parity. If not, see .
-import React, { Component, PropTypes } from 'react';
+import React, { PropTypes } from 'react';
import { connect } from 'react-redux';
import { nodeOrStringProptype } from '@parity/shared/util/proptypes';
import AddressSelect from '../AddressSelect';
-class InputAddressSelect extends Component {
- static propTypes = {
- accounts: PropTypes.object.isRequired,
- contacts: PropTypes.object.isRequired,
- contracts: PropTypes.object.isRequired,
-
- allowCopy: PropTypes.bool,
- className: PropTypes.string,
- error: nodeOrStringProptype(),
- hint: nodeOrStringProptype(),
- label: nodeOrStringProptype(),
- onChange: PropTypes.func,
- readOnly: PropTypes.bool,
- value: PropTypes.string
- };
-
- render () {
- const { accounts, allowCopy, className, contacts, contracts, label, hint, error, value, onChange, readOnly } = this.props;
-
- return (
-
- );
- }
+function InputAddressSelect ({ accounts, allowCopy, className, contacts, contracts, label, hint, error, value, onChange, readOnly }) {
+ return (
+
+ );
}
+InputAddressSelect.propTypes = {
+ accounts: PropTypes.object.isRequired,
+ contacts: PropTypes.object.isRequired,
+ contracts: PropTypes.object.isRequired,
+
+ allowCopy: PropTypes.bool,
+ className: PropTypes.string,
+ error: nodeOrStringProptype(),
+ hint: nodeOrStringProptype(),
+ label: nodeOrStringProptype(),
+ onChange: PropTypes.func,
+ readOnly: PropTypes.bool,
+ value: PropTypes.string
+};
+
function mapStateToProps (state) {
const { accounts, contacts, contracts } = state.personal;
diff --git a/js/src/ui/Form/InputInline/index.js b/js/src/ui/Form/InputInline/index.js
deleted file mode 100644
index 68e2dfd9f..000000000
--- a/js/src/ui/Form/InputInline/index.js
+++ /dev/null
@@ -1,17 +0,0 @@
-// Copyright 2015-2017 Parity Technologies (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 from './inputInline';
diff --git a/js/src/ui/Form/InputInline/inputInline.css b/js/src/ui/Form/InputInline/inputInline.css
deleted file mode 100644
index 5d53bf35b..000000000
--- a/js/src/ui/Form/InputInline/inputInline.css
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Copyright 2015-2017 Parity Technologies (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 .
-*/
-.inlineedit {
- cursor: pointer;
-}
diff --git a/js/src/ui/Form/InputInline/inputInline.js b/js/src/ui/Form/InputInline/inputInline.js
deleted file mode 100644
index dec0eb028..000000000
--- a/js/src/ui/Form/InputInline/inputInline.js
+++ /dev/null
@@ -1,96 +0,0 @@
-// Copyright 2015-2017 Parity Technologies (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 .
-
-import React, { Component, PropTypes } from 'react';
-
-import { nodeOrStringProptype } from '@parity/shared/util/proptypes';
-
-import Input from '../Input';
-
-import styles from './inputInline.css';
-
-export default class InputInline extends Component {
- static propTypes = {
- error: PropTypes.string,
- hint: PropTypes.string,
- label: PropTypes.string,
- onBlur: PropTypes.func,
- onChange: PropTypes.func,
- onSubmit: PropTypes.func,
- onKeyDown: PropTypes.func,
- type: PropTypes.string,
- value: PropTypes.oneOfType([
- PropTypes.number, PropTypes.string
- ]),
- static: nodeOrStringProptype()
- }
-
- state = {
- editing: false
- }
-
- render () {
- const { editing } = this.state;
- const { error, label, hint, type, value } = this.props;
-
- if (!editing) {
- return (
-
- { this.props.static || value }
-
- );
- }
-
- return (
-
- );
- }
-
- onBlur = () => {
- this.onToggle();
-
- if (this.props.onBlur) {
- this.props.onBlur();
- }
- }
-
- onToggle = () => {
- this.setState({
- editing: !this.state.editing
- });
- }
-
- onKeyDown = (event) => {
- if (event.keyCode === 13) {
- this.onToggle();
- }
-
- this.props.onKeyDown && this.props.onKeyDown(event);
- }
-}
diff --git a/js/src/ui/Form/Label/label.js b/js/src/ui/Form/Label/label.js
index 952a0e7a1..ae80d6dc8 100644
--- a/js/src/ui/Form/Label/label.js
+++ b/js/src/ui/Form/Label/label.js
@@ -14,27 +14,23 @@
// You should have received a copy of the GNU General Public License
// along with Parity. If not, see .
-import React, { Component, PropTypes } from 'react';
+import React, { PropTypes } from 'react';
import styles from './label.css';
-export default class Label extends Component {
- static propTypes = {
- className: PropTypes.string,
- label: PropTypes.node
+export default function Label ({ className, label }) {
+ if (!label) {
+ return null;
}
- render () {
- const { className, label } = this.props;
-
- if (!label) {
- return null;
- }
-
- return (
-
- );
- }
+ return (
+
+ );
}
+
+Label.propTypes = {
+ className: PropTypes.string,
+ label: PropTypes.node
+};
diff --git a/js/src/ui/Form/index.js b/js/src/ui/Form/index.js
index 2c34a5126..97ad70fef 100644
--- a/js/src/ui/Form/index.js
+++ b/js/src/ui/Form/index.js
@@ -19,13 +19,11 @@ export Checkbox from './Checkbox';
export DappUrlInput from './DappUrlInput';
export Dropdown from './Dropdown';
export FileSelect from './FileSelect';
-export FormWrap from './FormWrap';
export Input from './Input';
export InputAddress from './InputAddress';
export InputAddressSelect from './InputAddressSelect';
export InputChip from './InputChip';
export InputDateTime from './InputDateTime';
-export InputInline from './InputInline';
export Label from './Label';
export RadioButtons from './RadioButtons';
export Toggle from './Toggle';
diff --git a/js/src/ui/Portal/portal.js b/js/src/ui/Portal/portal.js
index a31efdecc..34e4db1a8 100644
--- a/js/src/ui/Portal/portal.js
+++ b/js/src/ui/Portal/portal.js
@@ -14,6 +14,7 @@
// You should have received a copy of the GNU General Public License
// along with Parity. If not, see .
+// TODO: semantic-ui-react exposes Portal component, use that
import React, { Component, PropTypes } from 'react';
import ReactDOM from 'react-dom';
import ReactPortal from 'react-portal';
@@ -70,7 +71,7 @@ export default class Portal extends Component {
}
render () {
- const { activeStep, busy, busySteps, children, className, isChildModal, isSmallModal, open, steps, title } = this.props;
+ const { activeStep, busy, busySteps, buttons, children, className, hideClose, isChildModal, isSmallModal, open, steps, title } = this.props;
if (!open) {
return null;
@@ -99,7 +100,16 @@ export default class Portal extends Component {
onKeyDown={ this.handleKeyDown }
>
- { this.renderClose() }
+ {
+ !hideClose && (
+