1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-30 08:09:15 +01:00
metamask-extension/ui/pages/swaps/swaps-footer/swaps-footer.js

73 lines
1.9 KiB
JavaScript
Raw Normal View History

import React, { useContext } from 'react';
import PropTypes from 'prop-types';
import classnames from 'classnames';
import { I18nContext } from '../../../contexts/i18n';
2020-10-06 20:28:38 +02:00
import PageContainerFooter from '../../../components/ui/page-container/page-container-footer';
2020-10-06 20:28:38 +02:00
2020-11-03 00:41:28 +01:00
export default function SwapsFooter({
2020-10-06 20:28:38 +02:00
onCancel,
hideCancel,
onSubmit,
submitText,
disabled,
showTermsOfService,
showTopBorder,
className = '',
cancelText,
2020-10-06 20:28:38 +02:00
}) {
const t = useContext(I18nContext);
2020-10-06 20:28:38 +02:00
return (
<div className="swaps-footer">
<div
className={classnames('swaps-footer__buttons', className, {
2020-10-06 20:28:38 +02:00
'swaps-footer__buttons--border': showTopBorder,
})}
>
<PageContainerFooter
onCancel={onCancel}
hideCancel={hideCancel}
cancelText={cancelText || t('back')}
2020-10-06 20:28:38 +02:00
onSubmit={onSubmit}
submitText={submitText}
footerClassName={classnames(
'swaps-footer__custom-page-container-footer-class',
className,
)}
2020-11-03 00:41:28 +01:00
footerButtonClassName={classnames(
'swaps-footer__custom-page-container-footer-button-class',
{
2022-07-31 20:26:40 +02:00
'swaps-footer__custom-page-container-footer-button-class--single':
hideCancel,
2020-11-03 00:41:28 +01:00
},
)}
2020-10-06 20:28:38 +02:00
disabled={disabled}
/>
</div>
{showTermsOfService && (
<div
className="swaps-footer__bottom-text"
2020-11-03 00:41:28 +01:00
onClick={() =>
global.platform.openTab({ url: 'https://metamask.io/terms.html' })
}
2020-10-06 20:28:38 +02:00
>
{t('termsOfService')}
</div>
)}
</div>
);
2020-10-06 20:28:38 +02:00
}
SwapsFooter.propTypes = {
onCancel: PropTypes.func,
hideCancel: PropTypes.bool,
onSubmit: PropTypes.func.isRequired,
submitText: PropTypes.string,
disabled: PropTypes.bool,
showTermsOfService: PropTypes.bool,
showTopBorder: PropTypes.bool,
className: PropTypes.string,
cancelText: PropTypes.string,
};