diff options
author | sdtsui <szehungdanieltsui@gmail.com> | 2017-08-21 10:28:20 +0800 |
---|---|---|
committer | sdtsui <szehungdanieltsui@gmail.com> | 2017-08-21 10:28:20 +0800 |
commit | 73a593b42e3a81b721cfa2f8913565a8b800f983 (patch) | |
tree | a0048615de310dbaa5a78963af3bec89e10a5a7f /ui | |
parent | 71b2dd290b2bbf3107d06d0616ec8858d21b44da (diff) | |
download | tangerine-wallet-browser-73a593b42e3a81b721cfa2f8913565a8b800f983.tar tangerine-wallet-browser-73a593b42e3a81b721cfa2f8913565a8b800f983.tar.gz tangerine-wallet-browser-73a593b42e3a81b721cfa2f8913565a8b800f983.tar.bz2 tangerine-wallet-browser-73a593b42e3a81b721cfa2f8913565a8b800f983.tar.lz tangerine-wallet-browser-73a593b42e3a81b721cfa2f8913565a8b800f983.tar.xz tangerine-wallet-browser-73a593b42e3a81b721cfa2f8913565a8b800f983.tar.zst tangerine-wallet-browser-73a593b42e3a81b721cfa2f8913565a8b800f983.zip |
Hook up template for New Account Modal
Diffstat (limited to 'ui')
-rw-r--r-- | ui/app/components/dropdowns/components/account-dropdowns.js | 12 | ||||
-rw-r--r-- | ui/app/components/modals/modal.js | 4 | ||||
-rw-r--r-- | ui/app/components/modals/new-account-modal.js | 80 |
3 files changed, 95 insertions, 1 deletions
diff --git a/ui/app/components/dropdowns/components/account-dropdowns.js b/ui/app/components/dropdowns/components/account-dropdowns.js index 9a9fbc0fc..3d32ca7fb 100644 --- a/ui/app/components/dropdowns/components/account-dropdowns.js +++ b/ui/app/components/dropdowns/components/account-dropdowns.js @@ -46,6 +46,7 @@ class AccountDropdowns extends Component { ), }, [ + // MOVE CHECKMARK UP h( Identicon, { @@ -67,6 +68,7 @@ class AccountDropdowns extends Component { }, }, identity.name || ''), h('span', { style: { marginLeft: '20px', fontSize: '24px' } }, isSelected ? h('.check', '✓') : null), + // EDIT ] ) }) @@ -122,7 +124,12 @@ class AccountDropdowns extends Component { diameter: 32, }, ), - h('span', { style: { marginLeft: '20px', fontSize: '24px' } }, 'Create Account'), + h('span', { + style: { marginLeft: '20px', fontSize: '24px' }, + onClick: () => { + actions.showNewAccountModal() + }, + }, 'Create Account'), ], ), h( @@ -351,6 +358,9 @@ const mapDispatchToProps = (dispatch) => { showAccountDetailModal: () => { dispatch(actions.showModal({ name: 'ACCOUNT_DETAILS' })) }, + showNewAccountModal: () => { + dispatch(actions.showModal({ name: 'NEW_ACCOUNT' })) + }, addNewAccount: () => dispatch(actions.addNewAccount()), showImportPage: () => dispatch(actions.showImportPage()), showQrView: (selected, identity) => dispatch(actions.showQrView(selected, identity)), diff --git a/ui/app/components/modals/modal.js b/ui/app/components/modals/modal.js index 04a34cfed..4b3d3b09c 100644 --- a/ui/app/components/modals/modal.js +++ b/ui/app/components/modals/modal.js @@ -11,6 +11,7 @@ const isPopupOrNotification = require('../../../../app/scripts/lib/is-popup-or-n const BuyOptions = require('./buy-options-modal') const AccountDetailsModal = require('./account-details-modal') const EditAccountNameModal = require('./edit-account-name-modal') +const NewAccountModal = require('./new-account-modal') const MODALS = { BUY: [ @@ -22,6 +23,9 @@ const MODALS = { ACCOUNT_DETAILS: [ h(EditAccountNameModal, {}, []), ], + NEW_ACCOUNT: [ + h(NewAccountModal, {}, []), + ] } function mapStateToProps (state) { diff --git a/ui/app/components/modals/new-account-modal.js b/ui/app/components/modals/new-account-modal.js new file mode 100644 index 000000000..e4b3ca328 --- /dev/null +++ b/ui/app/components/modals/new-account-modal.js @@ -0,0 +1,80 @@ +const Component = require('react').Component +const h = require('react-hyperscript') +const inherits = require('util').inherits +const connect = require('react-redux').connect +const actions = require('../../actions') + +function mapStateToProps (state) { + return { + network: state.metamask.network, + address: state.metamask.selectedAddress, + } +} + +function mapDispatchToProps (dispatch) { + return { + toCoinbase: (address) => { + dispatch(actions.buyEth({ network: '1', address, amount: 0 })) + }, + hideModal: () => { + dispatch(actions.hideModal()) + } + } +} + +inherits(BuyOptions, Component) +function BuyOptions () { + Component.call(this) +} + +module.exports = connect(mapStateToProps, mapDispatchToProps)(BuyOptions) + +// BuyOptions is currently meant to be rendered inside <Modal /> +// It is the only component in this codebase that does so +// It utilizes modal styles +BuyOptions.prototype.render = function () { + return h('div', {}, [ + h('div.modal-content.transfers-subview', { + }, [ + h('div.modal-content-title-wrapper.flex-column.flex-center', { + style: {}, + }, [ + h('div.modal-content-title', { + style: {}, + }, 'New Account Modal'), + h('div', {}, 'How would you like to buy Ether?'), + ]), + + h('div.modal-content-options.flex-column.flex-center', {}, [ + + h('div.modal-content-option', { + onClick: () => { + const { toCoinbase, address } = this.props + toCoinbase(address) + }, + }, [ + h('div.modal-content-option-title', {}, 'Coinbase'), + h('div.modal-content-option-subtitle', {}, 'Buy with Fiat'), + ]), + + h('div.modal-content-option', {}, [ + h('div.modal-content-option-title', {}, 'Shapeshift'), + h('div.modal-content-option-subtitle', {}, 'Trade any digital asset for any other'), + ]), + + h('div.modal-content-option', {}, [ + h('div.modal-content-option-title', {}, 'Direct Deposit'), + h('div.modal-content-option-subtitle', {}, 'Deposit from another account'), + ]), + + ]), + + h('button', { + style: { + background: 'white', + }, + onClick: () => { this.props.hideModal() }, + }, h('div.modal-content-footer#modal-content-footer-text',{}, 'Cancel')), + ]) + ]) +} |