diff --git a/src/components/base/FakeLink.js b/src/components/base/FakeLink.js new file mode 100644 index 00000000..2344d53c --- /dev/null +++ b/src/components/base/FakeLink.js @@ -0,0 +1,18 @@ +import styled from 'styled-components' +import Box from 'components/base/Box' + +import { darken, lighten } from 'styles/helpers' + +export default styled(Box).attrs({ + cursor: 'pointer', + color: 'wallet', +})` + &:hover { + text-decoration: underline; + color: ${p => lighten(p.theme.colors.wallet, 0.05)}; + } + + &:active { + color: ${p => darken(p.theme.colors.wallet, 0.1)}; + } +` diff --git a/src/components/modals/ImportAccounts/steps/03-step-import.js b/src/components/modals/ImportAccounts/steps/03-step-import.js index a77e3dbe..0841d37c 100644 --- a/src/components/modals/ImportAccounts/steps/03-step-import.js +++ b/src/components/modals/ImportAccounts/steps/03-step-import.js @@ -8,6 +8,7 @@ import { getBridgeForCurrency } from 'bridge' import Box from 'components/base/Box' import Button from 'components/base/Button' import Spinner from 'components/base/Spinner' +import FakeLink from 'components/base/FakeLink' import IconExchange from 'icons/Exchange' import AccountRow from '../AccountRow' @@ -102,6 +103,11 @@ class StepImport extends PureComponent { }) } + handleToggleSelectAll = () => { + const { scannedAccounts, setState } = this.props + setState({ checkedAccountsIds: scannedAccounts.map(a => a.id) }) + } + render() { const { scanStatus, err, scannedAccounts, checkedAccountsIds, existingAccounts } = this.props @@ -109,6 +115,14 @@ class StepImport extends PureComponent { {err && {err.message}} + {!!scannedAccounts.length && ( + + + {'Select all'} + + + )} + {scannedAccounts.map(account => { const isChecked = checkedAccountsIds.find(id => id === account.id) !== undefined @@ -142,10 +156,10 @@ class StepImport extends PureComponent { {['error', 'finished'].includes(scanStatus) && ( - )}