Files
myeasycms-v2/apps/web/app/auth/callback/error/page.tsx
giancarlo f0883c19ef Implement redirect control in multi-factor auth container
The update adds a rerouting functionality upon successful multi-factor authentication, replacing a console log action previously triggered upon success. The change enhances the authentication flow by redirecting users to a specified path upon validation. Additionally, minor refactorings are done such as replacing direct routing paths with path configs and adjusting import statements.
2024-03-27 14:30:23 +08:00

48 lines
1.1 KiB
TypeScript

import Link from 'next/link';
import { redirect } from 'next/navigation';
import { Alert, AlertDescription, AlertTitle } from '@kit/ui/alert';
import { Button } from '@kit/ui/button';
import { Trans } from '@kit/ui/trans';
import pathsConfig from '~/config/paths.config';
interface Params {
searchParams: {
error: string;
};
}
function AuthCallbackErrorPage({ searchParams }: Params) {
const { error } = searchParams;
// if there is no error, redirect the user to the sign-in page
if (!error) {
redirect(pathsConfig.auth.signIn);
}
return (
<div className={'flex flex-col space-y-4 py-4'}>
<div>
<Alert variant={'destructive'}>
<AlertTitle>
<Trans i18nKey={'auth:authenticationErrorAlertHeading'} />
</AlertTitle>
<AlertDescription>
<Trans i18nKey={error} />
</AlertDescription>
</Alert>
</div>
<Button>
<Link href={pathsConfig.auth.signIn}>
<Trans i18nKey={'auth:signIn'} />
</Link>
</Button>
</div>
);
}
export default AuthCallbackErrorPage;