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 DialogTitle from '@mui/material/DialogTitle'; import FormControlLabel from '@mui/material/FormControlLabel'; import Switch from '@mui/material/Switch'; import TextField from '@mui/material/TextField'; import Tooltip from '@mui/material/Tooltip'; import React from 'react'; interface IProps { name?: string; admin?: boolean; fClose: VoidFunction; fOnSubmit: (name: string, pass: string, admin: boolean) => Promise; isEdit?: boolean; } const AddEditUserDialog = ({ fClose, fOnSubmit, isEdit, name: initialName = '', admin: initialAdmin = false, }: IProps) => { const [name, setName] = React.useState(initialName); const [pass, setPass] = React.useState(''); const [admin, setAdmin] = React.useState(initialAdmin); const namePresent = name.length !== 0; const passPresent = pass.length !== 0 || isEdit; const submitAndClose = async () => { await fOnSubmit(name, pass, admin); fClose(); }; return ( {isEdit ? 'Edit ' + name : 'Add a user'} setName(e.target.value)} fullWidth /> setPass(e.target.value)} /> setAdmin(e.target.checked)} value="admin" /> } label="has administrator rights" />
); }; export default AddEditUserDialog;