import React, { Component } from 'react';
import PropTypes from 'prop-types';
import MetaFoxLogo from '../../../components/ui/metafox-logo';
import PageContainerFooter from '../../../components/ui/page-container/page-container-footer';
import { EVENT, EVENT_NAMES } from '../../../../shared/constants/metametrics';
import { INITIALIZE_SELECT_ACTION_ROUTE } from '../../../helpers/constants/routes';
export default class MetaMetricsOptIn extends Component {
static propTypes = {
history: PropTypes.object,
setParticipateInMetaMetrics: PropTypes.func,
participateInMetaMetrics: PropTypes.bool,
};
static contextTypes = {
trackEvent: PropTypes.func,
t: PropTypes.func,
};
render() {
const { trackEvent, t } = this.context;
const { history, setParticipateInMetaMetrics, participateInMetaMetrics } =
this.props;
return (
{t('metametricsHelpImproveMetaMask')}
{t('metametricsOptInDescription')}
{t('metametricsCommitmentsIntro')}
{t('metametricsCommitmentsAllowOptOut')}
{t('metametricsCommitmentsSendAnonymizedEvents')}
{t('metametricsCommitmentsNeverCollectKeysEtc', [
{t('metametricsCommitmentsBoldNever')}
,
])}
{t('metametricsCommitmentsNeverCollectIP', [
{t('metametricsCommitmentsBoldNever')}
,
])}
{t('metametricsCommitmentsNeverSellDataForProfit', [
{t('metametricsCommitmentsBoldNever')}
,
])}
{
await setParticipateInMetaMetrics(false);
history.push(INITIALIZE_SELECT_ACTION_ROUTE);
}}
cancelText={t('noThanks')}
hideCancel={false}
onSubmit={async () => {
await setParticipateInMetaMetrics(true);
try {
if (
participateInMetaMetrics === null ||
participateInMetaMetrics === false
) {
await trackEvent(
{
category: EVENT.CATEGORIES.ONBOARDING,
event: EVENT_NAMES.METRICS_OPT_IN,
properties: {
action: 'Metrics Option',
legacy_event: true,
},
},
{
isOptIn: true,
flushImmediately: true,
},
);
}
} finally {
history.push(INITIALIZE_SELECT_ACTION_ROUTE);
}
}}
submitText={t('affirmAgree')}
disabled={false}
/>
);
}
}