diff options
author | Dan Finlay <dan@danfinlay.com> | 2016-08-23 05:36:21 +0800 |
---|---|---|
committer | Dan Finlay <dan@danfinlay.com> | 2016-08-23 05:36:21 +0800 |
commit | f57cbe59fc9e0d3cfb3ee54da749470248fe2b8b (patch) | |
tree | e7d702905f2c92cb987148de8247ead5ead31a00 | |
parent | c223ba2e00ff80913c5b1fe3a339167d4489ec6a (diff) | |
download | tangerine-wallet-browser-f57cbe59fc9e0d3cfb3ee54da749470248fe2b8b.tar tangerine-wallet-browser-f57cbe59fc9e0d3cfb3ee54da749470248fe2b8b.tar.gz tangerine-wallet-browser-f57cbe59fc9e0d3cfb3ee54da749470248fe2b8b.tar.bz2 tangerine-wallet-browser-f57cbe59fc9e0d3cfb3ee54da749470248fe2b8b.tar.lz tangerine-wallet-browser-f57cbe59fc9e0d3cfb3ee54da749470248fe2b8b.tar.xz tangerine-wallet-browser-f57cbe59fc9e0d3cfb3ee54da749470248fe2b8b.tar.zst tangerine-wallet-browser-f57cbe59fc9e0d3cfb3ee54da749470248fe2b8b.zip |
Removed view more button, added account info button.
Also:
- Also fixed bug that caused React warning when rendering the tx history.
- Renamed 'Transactions' to 'History', since it now has more than that.
-rw-r--r-- | CHANGELOG.md | 5 | ||||
-rw-r--r-- | ui/app/account-detail.js | 14 | ||||
-rw-r--r-- | ui/app/components/account-info-link.js | 42 | ||||
-rw-r--r-- | ui/app/components/shift-list-item.js | 4 | ||||
-rw-r--r-- | ui/app/components/transaction-list-item.js | 1 | ||||
-rw-r--r-- | ui/app/components/transaction-list.js | 28 |
6 files changed, 70 insertions, 24 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 23d5b3af3..95f9174eb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,13 +2,14 @@ ## Current Master +- Transaction history now has a hard limit. +- Added info link on account screen that visits Etherscan. + ## 2.9.0 2016-08-22 - Added ShapeShift to the transaction history - Added affiliate key to Shapeshift requests - Added feature to reflect current conversion rates of current vault balance. -- Transaction history now has a hard limit. -- Added a link to view more account info after transaction history. - Modify balance display logic. ## 2.8.0 2016-08-15 diff --git a/ui/app/account-detail.js b/ui/app/account-detail.js index e00a34c4a..4316ff54e 100644 --- a/ui/app/account-detail.js +++ b/ui/app/account-detail.js @@ -4,6 +4,7 @@ const Component = require('react').Component const h = require('react-hyperscript') const connect = require('react-redux').connect const CopyButton = require('./components/copyButton') +const AccountInfoLink = require('./components/account-info-link') const actions = require('./actions') const ReactCSSTransitionGroup = require('react-addons-css-transition-group') const valuesFor = require('./util').valuesFor @@ -44,6 +45,7 @@ AccountDetailScreen.prototype.render = function () { var selected = props.address || Object.keys(props.accounts)[0] var identity = props.identities[selected] var account = props.accounts[selected] + const { network } = props return ( @@ -127,6 +129,9 @@ AccountDetailScreen.prototype.render = function () { bottom: '15px', }, }, [ + + h(AccountInfoLink, { selected, network }), + h(CopyButton, { value: ethUtil.toChecksumAddress(selected), }), @@ -136,16 +141,15 @@ AccountDetailScreen.prototype.render = function () { }, [ h('div', { style: { - margin: '5px', - }, + display: 'flex', + alignItems: 'center', + } }, [ h('img.cursor-pointer.color-orange', { src: 'images/key-32.png', onClick: () => this.requestAccountExport(selected), style: { - margin: '0px 5px', - width: '20px', - height: '20px', + height: '19px', }, }), ]), diff --git a/ui/app/components/account-info-link.js b/ui/app/components/account-info-link.js new file mode 100644 index 000000000..4fe3b8b5d --- /dev/null +++ b/ui/app/components/account-info-link.js @@ -0,0 +1,42 @@ +const Component = require('react').Component +const h = require('react-hyperscript') +const inherits = require('util').inherits +const Tooltip = require('./tooltip') +const genAccountLink = require('../../lib/account-link') +const extension = require('../../../app/scripts/lib/extension') + +module.exports = AccountInfoLink + +inherits(AccountInfoLink, Component) +function AccountInfoLink () { + Component.call(this) +} + +AccountInfoLink.prototype.render = function () { + const { selected, network } = this.props + const title = 'View account on etherscan' + const url = genAccountLink(selected, network) + + if (!url) { + return null + } + + return h('.account-info-link', { + style: { + display: 'flex', + alignItems: 'center', + }, + }, [ + + h(Tooltip, { + title, + }, [ + h('i.fa.fa-info-circle.cursor-pointer.color-orange', { + style: { + margin: '5px', + }, + onClick () { extension.tabs.create({ url }) }, + }), + ]), + ]) +} diff --git a/ui/app/components/shift-list-item.js b/ui/app/components/shift-list-item.js index 11e11cd37..c92181d5d 100644 --- a/ui/app/components/shift-list-item.js +++ b/ui/app/components/shift-list-item.js @@ -26,6 +26,10 @@ function ShiftListItem () { } ShiftListItem.prototype.render = function () { + var props = this.props + const { depositAddress, time, i, response } = props + const { transaction } = response + return ( h('.transaction-list-item.flex-row', { style: { diff --git a/ui/app/components/transaction-list-item.js b/ui/app/components/transaction-list-item.js index b03ca11ad..2cd0f0897 100644 --- a/ui/app/components/transaction-list-item.js +++ b/ui/app/components/transaction-list-item.js @@ -44,7 +44,6 @@ TransactionListItem.prototype.render = function () { return ( h(`.transaction-list-item.flex-row.flex-space-between${isClickable ? '.pointer' : ''}`, { - key: `tx-${transaction.id + i}`, onClick: (event) => { if (isPending) { this.props.showTx(transaction.id) diff --git a/ui/app/components/transaction-list.js b/ui/app/components/transaction-list.js index 9348b9fc4..8b9004e69 100644 --- a/ui/app/components/transaction-list.js +++ b/ui/app/components/transaction-list.js @@ -16,7 +16,6 @@ function TransactionList () { TransactionList.prototype.render = function () { const { txsToRender, network, unconfMsgs, address } = this.props - const transactions = txsToRender.concat(unconfMsgs) var shapeShiftTxList if (network === '1'){ shapeShiftTxList = this.props.shapeShiftTxList @@ -47,7 +46,7 @@ TransactionList.prototype.render = function () { paddingBottom: '4px', }, }, [ - 'Transactions', + 'History', ]), h('.tx-list', { @@ -61,13 +60,22 @@ TransactionList.prototype.render = function () { transactions.length ? transactions.map((transaction, i) => { + let key + switch (transaction.key) { + case 'shapeshift': + const { depositAddress, time } = transaction + key = `shift-tx-${depositAddress}-${time}-${i}` + break + default: + key = `tx-${transaction.id}-${i}` + } return h(TransactionListItem, { - transaction, i, network, + transaction, i, network, key, showTx: (txId) => { this.props.viewPendingTx(txId) }, }) - }).concat(viewMoreButton(accountLink)) + }) : h('.flex-center', { style: { flexDirection: 'column', @@ -75,21 +83,9 @@ TransactionList.prototype.render = function () { }, }, [ 'No transaction history.', - viewMoreButton(accountLink), ]), ]), ]) ) } -function viewMoreButton(url) { - return url ? h('button', { - style: { - margin: '10px', - }, - onClick: (ev) => { - ev.preventDefault() - extension.tabs.create({ url }) - }, - }, 'Show More') : null -} |