Skip to Content
UIComponentsConfirmDialog

ConfirmDialog

Description

The confirm dialog component.

Parameters

{ isOpen, header, message, maxWidth, color, confirmButtonText, cancelButtonText, onConfirm, onCancel, ...rest }
ConfirmDialogProps

=>

react_jsx_runtime.JSX.Element

The confirm dialog.

Example

Inspect

Source code

/packages/react-ui/ConfirmDialog/ConfirmDialog.tsx
import { Dialog, DialogContent, DialogActions, Button, Typography, type DialogProps, type ButtonProps, } from '@mui/material'; import { Stack } from '@mui/system'; /** * The confirm dialog props type. * @public */ export type ConfirmDialogProps = Omit<DialogProps, "open" | "onClose" | "color"> & { isOpen: boolean; header: string; message?: string; color?: ButtonProps["color"]; confirmButtonText?: string; cancelButtonText?: string; onConfirm: () => void; onCancel: () => void; }; /** * The confirm dialog component. * * @param props - The props. * @returns The confirm dialog. * @public */ export function ConfirmDialog({ isOpen, header, message, maxWidth = "xs", color = "primary", confirmButtonText = "Potvrdi", cancelButtonText = "Odustani", onConfirm, onCancel, ...rest }: ConfirmDialogProps) { return ( <Dialog open={isOpen} onClose={onCancel} maxWidth={maxWidth} {...rest}> <DialogContent> <Stack spacing={2} paddingX={3}> <Typography variant="h2" textAlign="center" paddingTop={4}>{header}</Typography> {message && <Typography color="textSecondary" textAlign="center">{message}</Typography>} </Stack> </DialogContent> <DialogActions sx={{ p: 3 }}> <Button color="secondary" autoFocus onClick={onCancel} fullWidth> {cancelButtonText} </Button> <Button color={color} variant="contained" onClick={onConfirm} fullWidth> {confirmButtonText} </Button> </DialogActions> </Dialog> ); }
Last updated on