recovery phrase: move print button to modal actions

This commit is contained in:
Jannis R 2016-12-01 12:11:03 +01:00
parent 0f987a2206
commit 08a6be5d62
No known key found for this signature in database
GPG Key ID: 0FE83946296A88A5
2 changed files with 21 additions and 32 deletions

View File

@ -15,15 +15,8 @@
// along with Parity. If not, see <http://www.gnu.org/licenses/>. // along with Parity. If not, see <http://www.gnu.org/licenses/>.
import React, { Component, PropTypes } from 'react'; import React, { Component, PropTypes } from 'react';
import PrintIcon from 'material-ui/svg-icons/action/print';
import { Form, Input, InputAddress } from '../../../ui'; import { Form, Input, InputAddress } from '../../../ui';
import Button from '../../../ui/Button';
import { createIdentityImg } from '../../../api/util/identity';
import print from './print';
import recoveryPage from './recovery-page.ejs';
import ParityLogo from '../../../../assets/images/parity-logo-black-no-text.svg';
export default class AccountDetails extends Component { export default class AccountDetails extends Component {
static propTypes = { static propTypes = {
@ -49,7 +42,6 @@ export default class AccountDetails extends Component {
label='address' label='address'
value={ address } /> value={ address } />
{ this.renderPhrase() } { this.renderPhrase() }
{ this.renderPhraseCopyButton() }
</Form> </Form>
); );
} }
@ -70,26 +62,4 @@ export default class AccountDetails extends Component {
value={ phrase } /> value={ phrase } />
); );
} }
renderPhraseCopyButton () {
const { phrase } = this.props;
if (!phrase) {
return null;
}
return (
<Button
icon={ <PrintIcon /> }
label={ 'print recovery phrase' }
onClick={ this.printPhrase }
/>
);
}
printPhrase = () => {
const { address, phrase, name } = this.props;
const identity = createIdentityImg(address);
print(recoveryPage({ phrase, name, identity, address, logo: ParityLogo }));
}
} }

View File

@ -20,6 +20,7 @@ import ActionDoneAll from 'material-ui/svg-icons/action/done-all';
import ContentClear from 'material-ui/svg-icons/content/clear'; import ContentClear from 'material-ui/svg-icons/content/clear';
import NavigationArrowBack from 'material-ui/svg-icons/navigation/arrow-back'; import NavigationArrowBack from 'material-ui/svg-icons/navigation/arrow-back';
import NavigationArrowForward from 'material-ui/svg-icons/navigation/arrow-forward'; import NavigationArrowForward from 'material-ui/svg-icons/navigation/arrow-forward';
import PrintIcon from 'material-ui/svg-icons/action/print';
import { Button, Modal } from '../../ui'; import { Button, Modal } from '../../ui';
@ -32,6 +33,11 @@ import NewImport from './NewImport';
import RawKey from './RawKey'; import RawKey from './RawKey';
import RecoveryPhrase from './RecoveryPhrase'; import RecoveryPhrase from './RecoveryPhrase';
import { createIdentityImg } from '../../api/util/identity';
import print from './AccountDetails/print';
import recoveryPage from './AccountDetails/recovery-page.ejs';
import ParityLogo from '../../../assets/images/parity-logo-black-no-text.svg';
const TITLES = { const TITLES = {
type: 'creation type', type: 'creation type',
create: 'create account', create: 'create account',
@ -179,12 +185,18 @@ export default class CreateAccount extends Component {
]; ];
case 2: case 2:
return ( return [
createType === 'fromNew' ? (
<Button
icon={ <PrintIcon /> }
label='Print Phrase'
onClick={ this.printPhrase } />
) : null,
<Button <Button
icon={ <ActionDoneAll /> } icon={ <ActionDoneAll /> }
label='Close' label='Close'
onClick={ this.onClose } /> onClick={ this.onClose } />
); ];
} }
} }
@ -377,4 +389,11 @@ export default class CreateAccount extends Component {
store.dispatch({ type: 'newError', error }); store.dispatch({ type: 'newError', error });
} }
printPhrase = () => {
const { address, phrase, name } = this.state;
const identity = createIdentityImg(address);
print(recoveryPage({ phrase, name, identity, address, logo: ParityLogo }));
}
} }