telegram login: customer.active=true
This commit is contained in:
parent
d15f42de1a
commit
c2ca2f9df5
@ -5,18 +5,33 @@ import { initData, isMiniAppDark, useSignal } from '@telegram-apps/sdk-react';
|
|||||||
import { signIn, useSession } from 'next-auth/react';
|
import { signIn, useSession } from 'next-auth/react';
|
||||||
import { useTheme } from 'next-themes';
|
import { useTheme } from 'next-themes';
|
||||||
import { redirect } from 'next/navigation';
|
import { redirect } from 'next/navigation';
|
||||||
import { useEffect } from 'react';
|
import { useEffect, useState } from 'react';
|
||||||
|
|
||||||
export default function Auth() {
|
export default function Auth() {
|
||||||
const initDataUser = useSignal(initData.user);
|
const initDataUser = useSignal(initData.user);
|
||||||
const isDark = isMiniAppDark();
|
const isDark = isMiniAppDark();
|
||||||
const { status } = useSession();
|
const { status } = useSession();
|
||||||
const { setTheme } = useTheme();
|
const { setTheme } = useTheme();
|
||||||
|
const [isUpdating, setIsUpdating] = useState(true);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setTheme(isDark ? 'dark' : 'light');
|
setTheme(isDark ? 'dark' : 'light');
|
||||||
|
|
||||||
if (initDataUser?.photoUrl) updateProfile({ photoUrl: initDataUser?.photoUrl });
|
const update = async () => {
|
||||||
|
if (initDataUser?.photoUrl) {
|
||||||
|
await updateProfile({ photoUrl: initDataUser.photoUrl });
|
||||||
|
}
|
||||||
|
|
||||||
|
await updateProfile({ active: true });
|
||||||
|
|
||||||
|
setIsUpdating(false);
|
||||||
|
};
|
||||||
|
|
||||||
|
update();
|
||||||
|
}, [initDataUser?.photoUrl, isDark, setTheme]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (isUpdating) return;
|
||||||
|
|
||||||
if (status === 'authenticated') {
|
if (status === 'authenticated') {
|
||||||
redirect('/profile');
|
redirect('/profile');
|
||||||
@ -29,7 +44,7 @@ export default function Auth() {
|
|||||||
telegramId: String(initDataUser.id),
|
telegramId: String(initDataUser.id),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}, [initDataUser, isDark, setTheme, status]);
|
}, [initDataUser?.id, isUpdating, status]);
|
||||||
|
|
||||||
return <LoadingSpinner />;
|
return <LoadingSpinner />;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user