import { t, Trans } from "@lingui/macro" import { Anchor, Box, Button, Center, Container, Group, Paper, Stack, TextInput, Title } from "@mantine/core" import { useForm } from "@mantine/form" import { client, errorToStrings } from "app/client" import { PasswordResetRequest } from "app/types" import { Alert } from "components/Alert" import { Logo } from "components/Logo" import { useState } from "react" import { Link } from "react-router-dom" import useMutation from "use-mutation" export function PasswordRecoveryPage() { const [message, setMessage] = useState("") const form = useForm({ initialValues: { email: "", }, }) const [recoverPassword, recoverPasswordResult] = useMutation(client.user.passwordReset, { onMutate: () => { setMessage("") }, onSuccess: () => { setMessage(t`An email has been sent if this address was registered. Check your inbox.`) }, }) const errors = errorToStrings(recoverPasswordResult.error) return (
CommaFeed
<Trans>Password Recovery</Trans> {errors.length > 0 && ( )} {message && ( )}
Back to log in
) }