diff --git a/apps/web/components/auth/update-profile.tsx b/apps/web/components/auth/update-profile.tsx index be66aef..139e72c 100644 --- a/apps/web/components/auth/update-profile.tsx +++ b/apps/web/components/auth/update-profile.tsx @@ -1,25 +1,27 @@ 'use client'; import { useCustomerMutation } from '@/hooks/api/customers'; +import { useClientOnce } from '@/hooks/telegram'; import { initData, useSignal } from '@telegram-apps/sdk-react'; -import { useEffect, useState } from 'react'; export function UpdateProfile() { const initDataUser = useSignal(initData.user); const { mutate: updateProfile } = useCustomerMutation(); - const [hasUpdated, setHasUpdated] = useState(false); - useEffect(() => { - if (!hasUpdated) { + useClientOnce(() => { + if ( + localStorage.getItem('firstLogin') === null || + localStorage.getItem('firstLogin') === 'true' + ) { updateProfile({ data: { active: true, photoUrl: initDataUser?.photoUrl || undefined, }, }); - setHasUpdated(true); + localStorage.setItem('firstLogin', 'false'); } - }, [hasUpdated, initDataUser?.photoUrl, updateProfile]); + }); return null; }