[SignInPage] disable input while submitting
This commit is contained in:
parent
41f2bb891b
commit
b0ffb2b43f
|
@ -1,3 +1,4 @@
|
|||
import { useState } from 'react';
|
||||
import { useForm } from 'react-hook-form';
|
||||
import { useSnackbar } from 'material-ui-snackbar-provider';
|
||||
import { ApolloError } from '@apollo/client';
|
||||
|
@ -24,12 +25,14 @@ type FormData = {
|
|||
};
|
||||
|
||||
const SignInPage = () => {
|
||||
const [isSubmitting, setIsSubmitting] = useState<boolean>(false);
|
||||
const snackbar = useSnackbar();
|
||||
const { signIn } = useAuth();
|
||||
const { register, errors, handleSubmit } = useForm<FormData>();
|
||||
const classes = useStyles();
|
||||
|
||||
const onSubmit = async (data: FormData) => {
|
||||
setIsSubmitting(true);
|
||||
try {
|
||||
await signIn(data.email, data.password, data.staySignedIn, user => {
|
||||
if (user.role !== Role.Admin) {
|
||||
|
@ -45,6 +48,7 @@ const SignInPage = () => {
|
|||
: e.message
|
||||
);
|
||||
}
|
||||
setIsSubmitting(false);
|
||||
};
|
||||
|
||||
return (
|
||||
|
@ -88,7 +92,12 @@ const SignInPage = () => {
|
|||
label="Pozostań zalogowany"
|
||||
/>
|
||||
</FormGroup>
|
||||
<Button variant="contained" color="primary" type="submit">
|
||||
<Button
|
||||
disabled={isSubmitting}
|
||||
variant="contained"
|
||||
color="primary"
|
||||
type="submit"
|
||||
>
|
||||
Zaloguj się
|
||||
</Button>
|
||||
</form>
|
||||
|
|
Reference in New Issue