strapi-plugin-config-sync/admin/src/components/ConfirmModal/index.js

59 lines
1.7 KiB
JavaScript
Raw Normal View History

2021-03-20 16:51:34 +01:00
import React from 'react';
import { useIntl } from 'react-intl';
2021-10-14 17:13:12 +02:00
import { Dialog, DialogBody, DialogFooter } from '@strapi/design-system/Dialog';
import { Flex } from '@strapi/design-system/Flex';
import { Text } from '@strapi/design-system/Text';
import { Stack } from '@strapi/design-system/Stack';
import { Button } from '@strapi/design-system/Button';
import ExclamationMarkCircle from '@strapi/icons/ExclamationMarkCircle';
2021-03-20 16:51:34 +01:00
const ConfirmModal = ({ isOpen, onClose, onSubmit, type }) => {
const { formatMessage } = useIntl();
2021-03-21 17:55:14 +01:00
if (!isOpen) return null;
2021-03-20 16:51:34 +01:00
return (
2021-10-14 17:13:12 +02:00
<Dialog
onClose={onClose}
title="Confirmation"
2021-03-20 16:51:34 +01:00
isOpen={isOpen}
2021-10-14 17:13:12 +02:00
>
<DialogBody icon={<ExclamationMarkCircle />}>
2021-10-14 17:13:12 +02:00
<Stack size={2}>
<Flex justifyContent="center">
<Text id="confirm-description" style={{ textAlign: 'center' }}>
{formatMessage({ id: `config-sync.popUpWarning.warning.${type}_1` })}<br />
{formatMessage({ id: `config-sync.popUpWarning.warning.${type}_2` })}
</Text>
</Flex>
2021-10-14 17:13:12 +02:00
</Stack>
</DialogBody>
<DialogFooter
startAction={(
<Button
onClick={() => {
onClose();
}}
variant="tertiary"
>
{formatMessage({ id: 'config-sync.popUpWarning.button.cancel' })}
2021-10-14 17:13:12 +02:00
</Button>
)}
endAction={(
<Button
variant="secondary"
onClick={() => {
onClose();
onSubmit();
}}
>
{formatMessage({ id: `config-sync.popUpWarning.button.${type}` })}
2021-10-14 17:13:12 +02:00
</Button>
)} />
</Dialog>
2021-03-20 16:51:34 +01:00
);
2021-10-14 17:13:12 +02:00
};
export default ConfirmModal;