import React, { memo } from 'react'; import styled from '@emotion/styled'; import useForm from 'react-hook-form/dist/react-hook-form.ie11'; import TextField from '../../muiComponents/TextField'; import Button from '../../muiComponents/Button'; import { Theme } from '../../design-tokens/theme'; import { LoginError } from '../../utils/login'; import LoginDialogFormError from './LoginDialogFormError'; const StyledForm = styled('form')<{ theme?: Theme }>(({ theme }) => ({ marginTop: theme.spacing(1), })); const StyledButton = styled(Button)<{ theme?: Theme }>(({ theme }) => ({ margin: theme.spacing(3, 0, 2), })); export interface FormValues { username: string; password: string; } interface Props { onSubmit: (formValues: FormValues) => void; error?: LoginError; } const LoginDialogForm = memo(({ onSubmit, error }: Props) => { const { register, errors, handleSubmit, formState: { isValid }, } = useForm({ mode: 'onChange' }); const onSubmitForm = (formValues: FormValues) => { onSubmit(formValues); }; return ( {error && } {'Sign In'} ); }); export default LoginDialogForm;