diff --git a/apps/nextjs-app/src/components/ui/form/error.tsx b/apps/nextjs-app/src/components/ui/form/error.tsx index 5b2b0557..5d21a125 100644 --- a/apps/nextjs-app/src/components/ui/form/error.tsx +++ b/apps/nextjs-app/src/components/ui/form/error.tsx @@ -1,15 +1,19 @@ +import { ComponentPropsWithoutRef } from 'react'; + +import { cn } from '@/utils/cn'; + export type ErrorProps = { errorMessage?: string | null; -}; +} & ComponentPropsWithoutRef<'div'>; -export const Error = ({ errorMessage }: ErrorProps) => { +export const Error = ({ errorMessage, className }: ErrorProps) => { if (!errorMessage) return null; return (
{errorMessage}
diff --git a/apps/nextjs-app/src/features/auth/components/login-form.tsx b/apps/nextjs-app/src/features/auth/components/login-form.tsx index 732662e5..0d43c9f1 100644 --- a/apps/nextjs-app/src/features/auth/components/login-form.tsx +++ b/apps/nextjs-app/src/features/auth/components/login-form.tsx @@ -5,6 +5,7 @@ import { useSearchParams } from 'next/navigation'; import { Button } from '@/components/ui/button'; import { Form, Input } from '@/components/ui/form'; +import { Error } from '@/components/ui/form/error'; import { paths } from '@/config/paths'; import { useLogin, loginInputSchema } from '@/lib/auth'; @@ -13,17 +14,17 @@ type LoginFormProps = { }; export const LoginForm = ({ onSuccess }: LoginFormProps) => { - const login = useLogin({ + const { mutate, isPending, error } = useLogin({ onSuccess, }); - const searchParams = useSearchParams(); const redirectTo = searchParams?.get('redirectTo'); + return (
{ - login.mutate(values); + mutate(values); }} schema={loginInputSchema} > @@ -42,11 +43,8 @@ export const LoginForm = ({ onSuccess }: LoginFormProps) => { registration={register('password')} />
-
diff --git a/apps/nextjs-app/src/features/auth/components/register-form.tsx b/apps/nextjs-app/src/features/auth/components/register-form.tsx index 81081249..93f3dc8d 100644 --- a/apps/nextjs-app/src/features/auth/components/register-form.tsx +++ b/apps/nextjs-app/src/features/auth/components/register-form.tsx @@ -6,6 +6,7 @@ import * as React from 'react'; import { Button } from '@/components/ui/button'; import { Form, Input, Select, Label, Switch } from '@/components/ui/form'; +import { Error } from '@/components/ui/form/error'; import { paths } from '@/config/paths'; import { useRegister, registerInputSchema } from '@/lib/auth'; import { Team } from '@/types/api'; @@ -24,6 +25,7 @@ export const RegisterForm = ({ teams, }: RegisterFormProps) => { const registering = useRegister({ onSuccess }); + const { mutate, isPending, error } = useRegister({ onSuccess }); const searchParams = useSearchParams(); const redirectTo = searchParams?.get('redirectTo'); @@ -31,7 +33,7 @@ export const RegisterForm = ({
{ - registering.mutate(values); + mutate(values); }} schema={registerInputSchema} options={{ @@ -96,11 +98,8 @@ export const RegisterForm = ({ /> )}
-