From 7f5b0c15c71d3bd7a87212f95dc1baee18c55c0b Mon Sep 17 00:00:00 2001 From: pal-sig <88981777+pal-sig@users.noreply.github.com> Date: Fri, 24 Dec 2021 11:42:25 +0530 Subject: [PATCH] Bug(UI): Signup onclick loading (#541) * bug(UI): on click loader is added * bug(UI): on click loader is added --- frontend/src/pages/SignUp/index.tsx | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/frontend/src/pages/SignUp/index.tsx b/frontend/src/pages/SignUp/index.tsx index fc0f475df5..f5ac704dc8 100644 --- a/frontend/src/pages/SignUp/index.tsx +++ b/frontend/src/pages/SignUp/index.tsx @@ -20,13 +20,11 @@ import { const Signup = ({ loggedIn }: SignupProps): JSX.Element => { const [notificationsInstance, Element] = notification.useNotification(); - const [state, setState] = useState({ submitted: false }); + const [loading, setLoading] = useState(false); + const [formState, setFormState] = useState({ firstName: { value: '' }, - companyName: { value: '' }, email: { value: '' }, - password: { value: '', valid: true }, - emailOptIn: { value: true }, }); const updateForm = ( @@ -50,7 +48,7 @@ const Signup = ({ loggedIn }: SignupProps): JSX.Element => { (async (): Promise => { try { e.preventDefault(); - setState((state) => ({ ...state, submitted: true })); + setLoading(true); const payload = { first_name: formState.firstName, email: formState.email, @@ -69,10 +67,12 @@ const Signup = ({ loggedIn }: SignupProps): JSX.Element => { message: 'Something went wrong', }); } + setLoading(false); } catch (error) { notificationsInstance.error({ message: 'Something went wrong', }); + setLoading(false); } })(); }; @@ -121,7 +121,8 @@ const Signup = ({ loggedIn }: SignupProps): JSX.Element => { type="primary" htmlType="submit" data-attr="signup" - disabled={state.submitted && !formState.password} + loading={loading} + disabled={loading || !formState.email.value} > Get Started