import { useState } from 'react'; import { Trans, msg } from '@lingui/macro'; import { useLingui } from '@lingui/react'; import { useNavigate } from 'react-router'; import { authClient } from '@documenso/auth/client'; import { Button } from '@documenso/ui/primitives/button'; import { useToast } from '@documenso/ui/primitives/use-toast'; export type DocumentSigningAuthPageViewProps = { email: string; emailHasAccount?: boolean; }; export const DocumentSigningAuthPageView = ({ email, emailHasAccount, }: DocumentSigningAuthPageViewProps) => { const { _ } = useLingui(); const { toast } = useToast(); const navigate = useNavigate(); const [isSigningOut, setIsSigningOut] = useState(false); const handleChangeAccount = async (email: string) => { try { setIsSigningOut(true); // Todo: Redirect false await authClient.signOut(); await navigate(emailHasAccount ? `/signin#email=${email}` : `/signup#email=${email}`); } catch { toast({ title: _(msg`Something went wrong`), description: _(msg`We were unable to log you out at this time.`), duration: 10000, variant: 'destructive', }); } setIsSigningOut(false); }; return (

Authentication required

You need to be logged in as {email} to view this page.

); };