fix: fix login view split incorrect if not any extra login way
This commit is contained in:
parent
fe432f1332
commit
b16a7c3c2c
@ -9,6 +9,7 @@ import { Input } from '@/components/ui/input';
|
|||||||
import { useAuth } from '@/api/authjs/useAuth';
|
import { useAuth } from '@/api/authjs/useAuth';
|
||||||
import { useEventWithLoading } from '@/hooks/useEvent';
|
import { useEventWithLoading } from '@/hooks/useEvent';
|
||||||
import { LuGithub, LuLayers } from 'react-icons/lu';
|
import { LuGithub, LuLayers } from 'react-icons/lu';
|
||||||
|
import { compact } from 'lodash-es';
|
||||||
|
|
||||||
export const Route = createFileRoute('/login')({
|
export const Route = createFileRoute('/login')({
|
||||||
validateSearch: z.object({
|
validateSearch: z.object({
|
||||||
@ -44,6 +45,27 @@ function LoginComponent() {
|
|||||||
});
|
});
|
||||||
const { allowRegister, authProvider } = useGlobalConfig();
|
const { allowRegister, authProvider } = useGlobalConfig();
|
||||||
|
|
||||||
|
const authProviderEl = compact([
|
||||||
|
authProvider.includes('github') && (
|
||||||
|
<Button
|
||||||
|
variant="secondary"
|
||||||
|
className="h-12 w-12 p-3"
|
||||||
|
onClick={() => loginWithOAuth('github')}
|
||||||
|
>
|
||||||
|
<LuGithub size={24} />
|
||||||
|
</Button>
|
||||||
|
),
|
||||||
|
authProvider.includes('custom') && (
|
||||||
|
<Button
|
||||||
|
variant="secondary"
|
||||||
|
className="h-12 w-12 p-3"
|
||||||
|
onClick={() => loginWithOAuth('custom')}
|
||||||
|
>
|
||||||
|
<LuLayers size={24} />
|
||||||
|
</Button>
|
||||||
|
),
|
||||||
|
]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="flex h-full w-full items-center justify-center dark:bg-gray-900">
|
<div className="flex h-full w-full items-center justify-center dark:bg-gray-900">
|
||||||
<div className="w-80 -translate-y-1/4">
|
<div className="w-80 -translate-y-1/4">
|
||||||
@ -98,31 +120,11 @@ function LoginComponent() {
|
|||||||
)}
|
)}
|
||||||
</Form>
|
</Form>
|
||||||
|
|
||||||
{authProvider.length > 0 && (
|
{authProviderEl.length > 0 && (
|
||||||
<>
|
<>
|
||||||
<Divider>{t('Or')}</Divider>
|
<Divider>{t('Or')}</Divider>
|
||||||
|
|
||||||
<div className="flex justify-center gap-2">
|
<div className="flex justify-center gap-2">{authProviderEl}</div>
|
||||||
{authProvider.includes('github') && (
|
|
||||||
<Button
|
|
||||||
variant="secondary"
|
|
||||||
className="h-12 w-12 p-3"
|
|
||||||
onClick={() => loginWithOAuth('github')}
|
|
||||||
>
|
|
||||||
<LuGithub size={24} />
|
|
||||||
</Button>
|
|
||||||
)}
|
|
||||||
|
|
||||||
{authProvider.includes('custom') && (
|
|
||||||
<Button
|
|
||||||
variant="secondary"
|
|
||||||
className="h-12 w-12 p-3"
|
|
||||||
onClick={() => loginWithOAuth('custom')}
|
|
||||||
>
|
|
||||||
<LuLayers size={24} />
|
|
||||||
</Button>
|
|
||||||
)}
|
|
||||||
</div>
|
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
Reference in New Issue
Block a user