2026-06-02 07:12:49 +00:00
|
|
|
import { useEffect } from 'react';
|
|
|
|
|
import { useQuery } from '@tanstack/react-query';
|
|
|
|
|
import { apiClient } from '@/lib/api-client';
|
|
|
|
|
import { useAuthStore } from '@/store/auth-store';
|
|
|
|
|
|
|
|
|
|
export function AuthInitializer() {
|
|
|
|
|
const setUser = useAuthStore((state) => state.setUser);
|
|
|
|
|
const query = useQuery({
|
|
|
|
|
queryKey: ['auth', 'me'],
|
|
|
|
|
queryFn: () => apiClient.getMe(),
|
|
|
|
|
retry: false,
|
2026-06-15 18:17:26 +07:00
|
|
|
staleTime: 30_000,
|
2026-06-02 07:12:49 +00:00
|
|
|
});
|
|
|
|
|
|
|
|
|
|
useEffect(() => {
|
2026-06-15 19:04:29 +07:00
|
|
|
if (query.data?.user) {
|
2026-06-02 07:12:49 +00:00
|
|
|
setUser(query.data.user);
|
|
|
|
|
}
|
|
|
|
|
}, [query.data, setUser]);
|
|
|
|
|
|
|
|
|
|
return null;
|
|
|
|
|
}
|