diff options
author | Alexander Tseung <alextsg@gmail.com> | 2018-02-01 10:08:49 +0800 |
---|---|---|
committer | Alexander Tseung <alextsg@gmail.com> | 2018-02-01 10:08:49 +0800 |
commit | 0c6fef3dec4f3ba70e8e86275ee9db4f2d58d129 (patch) | |
tree | 17d4315158490ff889326e821802468ca23a2afa /ui/app/components/pages/create-account/import-account/index.js | |
parent | ecc39c5a7abd8c8794d5565c1bc7d213d3514d61 (diff) | |
download | tangerine-wallet-browser-0c6fef3dec4f3ba70e8e86275ee9db4f2d58d129.tar.gz tangerine-wallet-browser-0c6fef3dec4f3ba70e8e86275ee9db4f2d58d129.tar.zst tangerine-wallet-browser-0c6fef3dec4f3ba70e8e86275ee9db4f2d58d129.zip |
Add create new account routes, fix conflicts from uat updates
Diffstat (limited to 'ui/app/components/pages/create-account/import-account/index.js')
-rw-r--r-- | ui/app/components/pages/create-account/import-account/index.js | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/ui/app/components/pages/create-account/import-account/index.js b/ui/app/components/pages/create-account/import-account/index.js new file mode 100644 index 000000000..0c901c09b --- /dev/null +++ b/ui/app/components/pages/create-account/import-account/index.js @@ -0,0 +1,80 @@ +const inherits = require('util').inherits +const Component = require('react').Component +const h = require('react-hyperscript') +const connect = require('react-redux').connect +import Select from 'react-select' + +// Subviews +const JsonImportView = require('./json.js') +const PrivateKeyImportView = require('./private-key.js') + +const menuItems = [ + 'Private Key', + 'JSON File', +] + +module.exports = connect(mapStateToProps)(AccountImportSubview) + +function mapStateToProps (state) { + return { + menuItems, + } +} + +inherits(AccountImportSubview, Component) +function AccountImportSubview () { + Component.call(this) +} + +AccountImportSubview.prototype.render = function () { + const props = this.props + const state = this.state || {} + const { menuItems } = props + const { type } = state + + return ( + h('div.new-account-import-form', [ + + h('div.new-account-import-form__select-section', [ + + h('div.new-account-import-form__select-label', 'SELECT TYPE'), + + h(Select, { + className: 'new-account-import-form__select', + name: 'import-type-select', + clearable: false, + value: type || menuItems[0], + options: menuItems.map((type) => { + return { + value: type, + label: type, + } + }), + onChange: (opt) => { + this.setState({ type: opt.value }) + }, + }), + + ]), + + this.renderImportView(), + ]) + ) +} + +AccountImportSubview.prototype.renderImportView = function () { + const props = this.props + const state = this.state || {} + const { type } = state + const { menuItems } = props + const current = type || menuItems[0] + + switch (current) { + case 'Private Key': + return h(PrivateKeyImportView) + case 'JSON File': + return h(JsonImportView) + default: + return h(JsonImportView) + } +} |