({
fields,
logger = defaultLogger,
enabled = true,
}: UseUserDetailsQueryDeps<T>)
| 68 | * Hook to fetch specific user details |
| 69 | */ |
| 70 | export function useUserDetailsQuery<T extends UserField>({ |
| 71 | fields, |
| 72 | logger = defaultLogger, |
| 73 | enabled = true, |
| 74 | }: UseUserDetailsQueryDeps<T>) { |
| 75 | const authToken = getAuthToken() |
| 76 | |
| 77 | return useQuery({ |
| 78 | queryKey: userDetailsQueryKeys.fields(fields), |
| 79 | queryFn: async () => { |
| 80 | if (!authToken) { |
| 81 | throw new Error('No auth token available') |
| 82 | } |
| 83 | return fetchUserDetails({ authToken, fields, logger }) |
| 84 | }, |
| 85 | enabled: enabled && !!authToken, |
| 86 | staleTime: 5 * 60 * 1000, // 5 minutes |
| 87 | gcTime: 30 * 60 * 1000, // 30 minutes |
| 88 | retry: false, |
| 89 | refetchOnMount: false, |
| 90 | refetchOnWindowFocus: false, |
| 91 | refetchOnReconnect: false, |
| 92 | }) |
| 93 | } |
nothing calls this directly
no test coverage detected