diff --git a/src/components/DashboardPage/index.js b/src/components/DashboardPage/index.js index 9f86a9d4..6894b765 100644 --- a/src/components/DashboardPage/index.js +++ b/src/components/DashboardPage/index.js @@ -95,93 +95,95 @@ class DashboardPage extends PureComponent { const displayOperations = accounts.some(displayOperationsHelper) return ( - - - {totalAccounts > 0 ? ( - - - - - {t(timeFrame)} - - - {t('app:dashboard.summary', { count: totalAccounts })} - - - - - - + + + + {totalAccounts > 0 ? ( - ( - - )} - /> - - - - {t('app:dashboard.accounts.title', { count: accounts.length })} + + + + {t(timeFrame)} + + + {t('app:dashboard.summary', { count: totalAccounts })} - - - - - {accounts - .concat(Array(3 - (accounts.length % 3)).fill(null)) - .map((account, i) => ( - - {account ? ( - - ) : null} - - ))} + + - {displayOperations && ( - + ( + + )} /> - )} - + + + + {t('app:dashboard.accounts.title', { count: accounts.length })} + + + + + + + {accounts + .concat(Array(3 - (accounts.length % 3)).fill(null)) + .map((account, i) => ( + + {account ? ( + + ) : null} + + ))} + + + {displayOperations && ( + + )} + + - - ) : ( - - )} - + ) : ( + + )} + + ) } } diff --git a/src/components/UpdateNotifier/UpdateDownloaded.js b/src/components/UpdateNotifier/UpdateDownloaded.js index 05c7f593..5f0cb77a 100644 --- a/src/components/UpdateNotifier/UpdateDownloaded.js +++ b/src/components/UpdateNotifier/UpdateDownloaded.js @@ -35,6 +35,7 @@ const Container = styled(Box).attrs({ px: 3, bg: 'wallet', color: 'white', + mt: '-35px', style: p => ({ transform: `translate3d(0, ${p.offset}%, 0)`, }), @@ -62,8 +63,10 @@ class UpdateDownloaded extends PureComponent { return ( - {t('app:update.newVersionReady')} - + + {t('app:update.newVersionReady')} + + sendEvent('updater', 'quitAndInstall')} diff --git a/src/components/base/Modal/index.js b/src/components/base/Modal/index.js index 02fec5ba..ca2e45e1 100644 --- a/src/components/base/Modal/index.js +++ b/src/components/base/Modal/index.js @@ -37,6 +37,7 @@ type OwnProps = { preventBackdropClick?: boolean, render: Function, refocusWhenChange?: string, + width?: string, } type Props = OwnProps & { @@ -108,7 +109,7 @@ const Wrapper = styled(Box).attrs({ }), })` outline: none; - width: 500px; + width: ${p => (p.width ? p.width : '500px')}; z-index: 2; ` @@ -180,7 +181,7 @@ export class Modal extends Component { } render() { - const { preventBackdropClick, isOpened, onHide, render, data, onClose } = this.props + const { preventBackdropClick, isOpened, onHide, render, data, onClose, width } = this.props return ( { scale={m.scale} innerRef={n => (this._wrapper = n)} onClick={stopPropagation} + width={width} > diff --git a/src/components/modals/AddAccounts/steps/03-step-import.js b/src/components/modals/AddAccounts/steps/03-step-import.js index a696f4c0..4573e6a8 100644 --- a/src/components/modals/AddAccounts/steps/03-step-import.js +++ b/src/components/modals/AddAccounts/steps/03-step-import.js @@ -28,6 +28,22 @@ class StepImport extends PureComponent { scanSubscription = null + translateName(account: Account) { + const { t } = this.props + let { name } = account + + if (name === 'New Account') { + name = t('app:addAccounts.newAccount') + } else if (name.indexOf('legacy') !== -1) { + name = t('app:addAccounts.legacyAccount', { accountName: name.replace(' (legacy)', '') }) + } + + return { + ...account, + name, + } + } + startScanAccountsDevice() { const { currency, currentDevice, setState } = this.props try { @@ -49,7 +65,7 @@ class StepImport extends PureComponent { const isNewAccount = account.operations.length === 0 if (!hasAlreadyBeenScanned) { setState({ - scannedAccounts: [...scannedAccounts, account], + scannedAccounts: [...scannedAccounts, this.translateName(account)], checkedAccountsIds: !hasAlreadyBeenImported && !isNewAccount ? uniq([...checkedAccountsIds, account.id]) @@ -144,9 +160,9 @@ class StepImport extends PureComponent { count: importableAccounts.length, }) - const importableAccountsEmpty = `We didnt find any ${ - currency ? ` ${currency.name}}` : '' - } account to import.` + const importableAccountsEmpty = t('app:addAccounts.noAccountToImport', { + currencyName: currency ? ` ${currency.name}}` : '', + }) return ( diff --git a/src/components/modals/Receive/index.js b/src/components/modals/Receive/index.js index 63da15e7..01d8c5e3 100644 --- a/src/components/modals/Receive/index.js +++ b/src/components/modals/Receive/index.js @@ -1,7 +1,12 @@ // @flow import React, { Fragment, PureComponent } from 'react' +import { compose } from 'redux' +import { connect } from 'react-redux' import { translate } from 'react-i18next' +import { createStructuredSelector } from 'reselect' + +import { accountsSelector } from 'reducers/accounts' import type { Account } from '@ledgerhq/live-common/lib/types' import type { T, Device } from 'types/common' @@ -26,6 +31,7 @@ import StepReceiveFunds from './04-step-receive-funds' type Props = { t: T, + accounts: Account[], } type State = { @@ -57,6 +63,10 @@ const INITIAL_STATE = { stepsErrors: [], } +const mapStateToProps = createStructuredSelector({ + accounts: accountsSelector, +}) + class ReceiveModal extends PureComponent { state = INITIAL_STATE @@ -178,11 +188,19 @@ class ReceiveModal extends PureComponent { handleBeforeOpenModal = ({ data }) => { const { account } = this.state - if (data && data.account && !account) { - this.setState({ - account: data.account, - stepIndex: 1, - }) + const { accounts } = this.props + + if (!account) { + if (data && data.account) { + this.setState({ + account: data.account, + stepIndex: 1, + }) + } else { + this.setState({ + account: accounts[0], + }) + } } } @@ -348,4 +366,7 @@ class ReceiveModal extends PureComponent { } } -export default translate()(ReceiveModal) +export default compose( + connect(mapStateToProps), + translate(), +)(ReceiveModal) diff --git a/src/components/modals/ReleaseNotes.js b/src/components/modals/ReleaseNotes.js index a003fc2c..0e5f51f9 100644 --- a/src/components/modals/ReleaseNotes.js +++ b/src/components/modals/ReleaseNotes.js @@ -233,7 +233,7 @@ class ReleaseNotes extends PureComponent { ) } - return + return } } diff --git a/static/i18n/en/app.yml b/static/i18n/en/app.yml index 4b00bb11..7af86358 100644 --- a/static/i18n/en/app.yml +++ b/static/i18n/en/app.yml @@ -132,6 +132,9 @@ addAccounts: selectAll: Select all unselectAll: Unselect all editName: Edit name + newAccount: New account + legacyAccount: '{{accountName}} (legacy)' + noAccountToImport: We didnt find any {{currencyName}}} account to import. success: Great success! createNewAccount: title: Create new account