import React from 'react'; import { Breakpoint, Button, Paper, Dialog, DialogActions, DialogContent, DialogTitle, SxProps, Typography, } from '@mui/material'; export interface ConfirmationModalProps { open: boolean; onConfirm: () => void; onClose?: () => void; children?: React.ReactNode; title: React.ReactNode | string; subTitle?: React.ReactNode | string; confirmButton: React.ReactNode | string; disabled?: boolean; sx?: SxProps; fullWidth?: boolean; maxWidth?: Breakpoint; backdropProps?: object; } export const ConfirmationModal = ({ open, onConfirm, onClose, children, title, subTitle, confirmButton, disabled, sx, fullWidth, maxWidth, backdropProps, }: ConfirmationModalProps) => { const Title = ( {title} {subTitle && (typeof subTitle === 'string' ? ( t.palette.nym.text.muted}> {subTitle} ) : ( subTitle ))} ); const ConfirmButton = typeof confirmButton === 'string' ? ( ) : ( confirmButton ); return ( {Title} {children} {ConfirmButton} ); };