aboutsummaryrefslogtreecommitdiffstats
path: root/ui/app/components/send_/send-content/send-from-row/send-from-row.component.js
diff options
context:
space:
mode:
authorErik Marks <25517051+rekmarks@users.noreply.github.com>2018-06-13 04:39:21 +0800
committerGitHub <noreply@github.com>2018-06-13 04:39:21 +0800
commitbb201d7c4aec5c8bb72615aaf2880a806a2bd138 (patch)
treefb39d41db91c831202dc0b057231b77ed1308210 /ui/app/components/send_/send-content/send-from-row/send-from-row.component.js
parent6ba70a039af5139933747a1ffae070fe246f3501 (diff)
parent0740dd6a5b89defd5f5ba27fa38c7004243f0ce2 (diff)
downloadtangerine-wallet-browser-bb201d7c4aec5c8bb72615aaf2880a806a2bd138.tar.gz
tangerine-wallet-browser-bb201d7c4aec5c8bb72615aaf2880a806a2bd138.tar.zst
tangerine-wallet-browser-bb201d7c4aec5c8bb72615aaf2880a806a2bd138.zip
Merge branch 'develop' into stop-reload-on-network-change
Diffstat (limited to 'ui/app/components/send_/send-content/send-from-row/send-from-row.component.js')
-rw-r--r--ui/app/components/send_/send-content/send-from-row/send-from-row.component.js63
1 files changed, 63 insertions, 0 deletions
diff --git a/ui/app/components/send_/send-content/send-from-row/send-from-row.component.js b/ui/app/components/send_/send-content/send-from-row/send-from-row.component.js
new file mode 100644
index 000000000..a580aef96
--- /dev/null
+++ b/ui/app/components/send_/send-content/send-from-row/send-from-row.component.js
@@ -0,0 +1,63 @@
+import React, { Component } from 'react'
+import PropTypes from 'prop-types'
+import SendRowWrapper from '../send-row-wrapper/'
+import FromDropdown from './from-dropdown/'
+
+export default class SendFromRow extends Component {
+
+ static propTypes = {
+ closeFromDropdown: PropTypes.func,
+ conversionRate: PropTypes.number,
+ from: PropTypes.object,
+ fromAccounts: PropTypes.array,
+ fromDropdownOpen: PropTypes.bool,
+ openFromDropdown: PropTypes.func,
+ tokenContract: PropTypes.object,
+ updateSendFrom: PropTypes.func,
+ setSendTokenBalance: PropTypes.func,
+ };
+
+ async handleFromChange (newFrom) {
+ const {
+ updateSendFrom,
+ tokenContract,
+ setSendTokenBalance,
+ } = this.props
+
+ if (tokenContract) {
+ const usersToken = await tokenContract.balanceOf(newFrom.address)
+ setSendTokenBalance(usersToken)
+ }
+ updateSendFrom(newFrom)
+ }
+
+ render () {
+ const {
+ closeFromDropdown,
+ conversionRate,
+ from,
+ fromAccounts,
+ fromDropdownOpen,
+ openFromDropdown,
+ } = this.props
+
+ return (
+ <SendRowWrapper label={`${this.context.t('from')}:`}>
+ <FromDropdown
+ accounts={fromAccounts}
+ closeDropdown={() => closeFromDropdown()}
+ conversionRate={conversionRate}
+ dropdownOpen={fromDropdownOpen}
+ onSelect={newFrom => this.handleFromChange(newFrom)}
+ openDropdown={() => openFromDropdown()}
+ selectedAccount={from}
+ />
+ </SendRowWrapper>
+ )
+ }
+
+}
+
+SendFromRow.contextTypes = {
+ t: PropTypes.func,
+}