'use client'; import { useMutation } from '@tanstack/react-query'; import { Form, FormRow, FormInput, FormButtons, TextField, PasswordField, SubmitButton, Icon, } from 'react-basics'; import { useRouter } from 'next/navigation'; import useApi from 'components/hooks/useApi'; import { setUser } from 'store/app'; import { setClientAuthToken } from 'lib/client'; import useMessages from 'components/hooks/useMessages'; import Logo from 'assets/logo.svg'; import styles from './LoginForm.module.css'; export function LoginForm() { const { formatMessage, labels, getMessage } = useMessages(); const router = useRouter(); const { post } = useApi(); const { mutate, error, isLoading } = useMutation(data => post('/auth/login', data)); const handleSubmit = async data => { mutate(data, { onSuccess: async ({ token, user }) => { setClientAuthToken(token); setUser(user); await router.push('/dashboard'); }, }); }; return (
umami
{formatMessage(labels.login)}
); } export default LoginForm;