'use client'; import { zodResolver } from '@hookform/resolvers/zod'; import { signIn } from 'next-auth/react'; import Link from 'next/link'; import { useState } from 'react'; import { useForm } from 'react-hook-form'; import { Toaster, toast } from 'react-hot-toast'; import { z } from 'zod'; export const Login = () => { const [isLoading, setIsLoading] = useState(false); const schema = z.object({ email: z.string().email(), password: z.string(), }); type schemaType = z.infer; const form = useForm({ resolver: zodResolver(schema), }); console.log(form.formState.errors); return (
{ setIsLoading(true); const data = await signIn('credentials', { callbackUrl: '/', email: form.getValues('email'), password: form.getValues('password'), }); if (!data || data.error) { toast.error('E-Mail / Passwort ist falsch!', { style: { background: 'var(--fallback-b1, oklch(var(--b1) / var(--tw-bg-opacity, 1)))', color: 'var(--fallback-nc, oklch(var(--nc) / var(--tw-text-opacity, 1)))', }, }); } setIsLoading(false); })} >

Login

Noch keinen Account? Zur{' '} Registrierung

{typeof form.formState.errors.email?.message === 'string' ? form.formState.errors.email.message : ''}

); };