1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-30 16:18:07 +01:00
metamask-extension/ui/pages/first-time-flow/select-action/select-action.component.js
Etienne Dusseault 4c341d83ab
Add Approval Confirmation Screen component to Storybook (#10998)
* add metametrics wrapper

* add history dep

* provide test data and mock react router

* add first confirmaion screen

* figure out a way to mock match.params

* render token approval with data

* fix lockfile

* fix lint

* remove use effect

* lintfix

* add . for src paths

* litfix

* Add knobs to change redux store for confirm-approve component (Storybook) (#11135)

* add knob for domain

* knobify

* remove logs

* remove comment

* lintfix

* fix comments

* add background calls + metriccs event to storybook acctions

* lintfixxxx
2021-05-25 08:20:09 +08:00

97 lines
3.1 KiB
JavaScript

import React, { PureComponent } from 'react';
import PropTypes from 'prop-types';
import Button from '../../../components/ui/button';
import MetaFoxLogo from '../../../components/ui/metafox-logo';
import { INITIALIZE_METAMETRICS_OPT_IN_ROUTE } from '../../../helpers/constants/routes';
export default class SelectAction extends PureComponent {
static propTypes = {
history: PropTypes.object,
isInitialized: PropTypes.bool,
setFirstTimeFlowType: PropTypes.func,
nextRoute: PropTypes.string,
};
static contextTypes = {
t: PropTypes.func,
};
componentDidMount() {
const { history, isInitialized, nextRoute } = this.props;
if (isInitialized) {
history.push(nextRoute);
}
}
handleCreate = () => {
this.props.setFirstTimeFlowType('create');
this.props.history.push(INITIALIZE_METAMETRICS_OPT_IN_ROUTE);
};
handleImport = () => {
this.props.setFirstTimeFlowType('import');
this.props.history.push(INITIALIZE_METAMETRICS_OPT_IN_ROUTE);
};
render() {
const { t } = this.context;
return (
<div className="select-action">
<MetaFoxLogo />
<div className="select-action__wrapper">
<div className="select-action__body">
<div className="select-action__body-header">
{t('newToMetaMask')}
</div>
<div className="select-action__select-buttons">
<div className="select-action__select-button">
<div className="select-action__button-content">
<div className="select-action__button-symbol">
<img src="./images/download-alt.svg" alt="" />
</div>
<div className="select-action__button-text-big">
{t('noAlreadyHaveSeed')}
</div>
<div className="select-action__button-text-small">
{t('importYourExisting')}
</div>
</div>
<Button
type="primary"
className="first-time-flow__button"
onClick={this.handleImport}
>
{t('importWallet')}
</Button>
</div>
<div className="select-action__select-button">
<div className="select-action__button-content">
<div className="select-action__button-symbol">
<img src="./images/thin-plus.svg" alt="" />
</div>
<div className="select-action__button-text-big">
{t('letsGoSetUp')}
</div>
<div className="select-action__button-text-small">
{t('thisWillCreate')}
</div>
</div>
<Button
type="primary"
className="first-time-flow__button"
onClick={this.handleCreate}
>
{t('createAWallet')}
</Button>
</div>
</div>
</div>
</div>
</div>
);
}
}