import AddIcon from '@mui/icons-material/Add'; import CloseIcon from '@mui/icons-material/Close'; import Alert from '@mui/material/Alert'; import Button from '@mui/material/Button'; import Dialog from '@mui/material/Dialog'; import DialogActions from '@mui/material/DialogActions'; import DialogContent from '@mui/material/DialogContent'; import DialogContentText from '@mui/material/DialogContentText'; import DialogTitle from '@mui/material/DialogTitle'; import IconButton from '@mui/material/IconButton'; import TextField from '@mui/material/TextField'; import * as React from 'react'; import { getUnifiedErrorMessage } from 'helpers/errors'; import useCreateFolder from 'hooks/useCreateFolder'; import useFormatMessage from 'hooks/useFormatMessage'; export default function CreateFolderDialog(props) { const { open = true, onClose } = props; const [folderName, setFolderName] = React.useState(''); const formatMessage = useFormatMessage(); const { mutate: createFolder, error, isError, isSuccess } = useCreateFolder(); const handleCreateFolder = () => { createFolder({ name: folderName }); setFolderName(''); }; const handleTextFieldChange = (event) => { setFolderName(event.target.value); }; const handleTextFieldKeyDown = (event) => { if (event.key === 'Enter') { handleCreateFolder(); } }; return ( {formatMessage('createFolderDialog.title')} theme.palette.grey[500], }} > {formatMessage('createFolderDialog.description')} {isError && ( {getUnifiedErrorMessage(error?.response?.data?.errors) || formatMessage('genericError')} )} {isSuccess && ( {formatMessage('createFolderDialog.successfullyCreatedFolder')} )} ); }