'use client'; import { useState } from 'react'; import { useRouter } from 'next/navigation'; import { Trans, msg } from '@lingui/macro'; import { useLingui } from '@lingui/react'; import { signOut } from 'next-auth/react'; import { Button } from '@documenso/ui/primitives/button'; import { useToast } from '@documenso/ui/primitives/use-toast'; export type SigningAuthPageViewProps = { email: string; emailHasAccount?: boolean; }; export const SigningAuthPageView = ({ email, emailHasAccount }: SigningAuthPageViewProps) => { const { _ } = useLingui(); const { toast } = useToast(); const router = useRouter(); const [isSigningOut, setIsSigningOut] = useState(false); const handleChangeAccount = async (email: string) => { try { setIsSigningOut(true); await signOut({ redirect: false, }); router.push(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 (