Files
myeasycms-v2/apps/web/app/auth/sign-up/page.tsx
giancarlo 91bee99857 Refactor join page and update packages
The join page's redirect functionality has been replaced with permanentRedirect. Adjustments were also made for handling conditional authentication and user account verification. Package upgrades were performed and the i18n client now checks if an instance is already initialized. The process tends to deliver performance benefits and enhancing the code readability.
2024-04-14 13:48:50 +08:00

59 lines
1.4 KiB
TypeScript

import Link from 'next/link';
import { SignUpMethodsContainer } from '@kit/auth/sign-up';
import { Button } from '@kit/ui/button';
import { Heading } from '@kit/ui/heading';
import { Trans } from '@kit/ui/trans';
import authConfig from '~/config/auth.config';
import pathsConfig from '~/config/paths.config';
import { createI18nServerInstance } from '~/lib/i18n/i18n.server';
import { withI18n } from '~/lib/i18n/with-i18n';
export const generateMetadata = async () => {
const i18n = await createI18nServerInstance();
return {
title: i18n.t('auth:signUp'),
};
};
interface Props {
searchParams: {
invite_token?: string;
};
}
const paths = {
callback: pathsConfig.auth.callback,
appHome: pathsConfig.app.home,
};
function SignUpPage({ searchParams }: Props) {
const inviteToken = searchParams.invite_token;
return (
<>
<Heading level={4}>
<Trans i18nKey={'auth:signUpHeading'} />
</Heading>
<SignUpMethodsContainer
providers={authConfig.providers}
inviteToken={inviteToken}
paths={paths}
/>
<div className={'justify-centers flex'}>
<Link href={pathsConfig.auth.signIn}>
<Button variant={'link'} size={'sm'}>
<Trans i18nKey={'auth:alreadyHaveAnAccount'} />
</Button>
</Link>
</div>
</>
);
}
export default withI18n(SignUpPage);