'use client'; import { useActionState } from 'react'; import { initialFormState, mergeForm, useForm, useTransform, } from '@tanstack/react-form-nextjs'; import { Field, FieldGroup, FieldLabel } from '@/components/ui/field'; import { Button } from '@/components/ui/button'; import { Spinner } from '@/components/ui/spinner'; import { Input } from '@/components/ui/input'; import ErrorField from '@/components/form/Error-field'; import { loginAction } from '@/app/(access)/login/action'; import { loginSchema } from '@/components/access/login-form-options'; import { formOpts } from './login-form-options'; import OAuthButtons from './oAuth-buttons'; export default function LoginForm() { const [state, action, pending] = useActionState( loginAction, initialFormState, ); const form = useForm({ ...formOpts, transform: useTransform((baseForm) => mergeForm(baseForm, state!), [state]), validators: { onChange: loginSchema, }, }); return (
); }