import Button from '@material-ui/core/Button'; import Dialog from '@material-ui/core/Dialog'; import DialogActions from '@material-ui/core/DialogActions'; import DialogContent from '@material-ui/core/DialogContent'; import DialogTitle from '@material-ui/core/DialogTitle'; import TextField from '@material-ui/core/TextField'; import Tooltip from '@material-ui/core/Tooltip'; import React, {ChangeEvent, Component} from 'react'; interface IProps { name?: string; fClose: VoidFunction; fOnSubmit: (name: string, pass: string) => Promise; } interface IState { name: string; pass: string; } export default class RegistrationDialog extends Component { public state = { name: '', pass: '', }; public render() { const {fClose, fOnSubmit} = this.props; const {name, pass} = this.state; const namePresent = this.state.name.length !== 0; const passPresent = this.state.pass.length !== 0; const submitAndClose = (): void => { fOnSubmit(name, pass).then((success) => { if (success) { fClose(); } }); }; return ( Registration
); } private handleChange(propertyName: string, event: ChangeEvent) { const state = this.state; state[propertyName] = event.target.value; this.setState(state); } }