import Button, { ButtonType } from '../UI/Button/Button'; import React, { useState } from 'react'; import { BaseDialogProps } from '../../utils/types'; import Modal from './Modal'; import styles from './Modal.module.scss'; interface ConfirmDialogProps extends BaseDialogProps { okButtonText?: string; cancelButtonText?: string; body?: string | JSX.Element; } export const enum ConfirmDialogResult { OK = 'ok', CANCEL = 'cancel', } export function ConfirmDialog(props: ConfirmDialogProps): JSX.Element { const [isOpen, setOpen] = useState(true); const dialogUniqId = (~~(Math.random() * 1e8)).toString(16); const close = (result: string) => { setOpen(false); if (props.onClose) { props.onClose(result); } }; return ( close(ConfirmDialogResult.CANCEL)} onCompletelyHidden={() => { if (props.onCompletelyHidden) { props.onCompletelyHidden(); } }} > {props.title && (
{props.title}
)}
{props.body}
); }