mirror of
https://github.com/Sea-Haven-Industries/open-swe.git
synced 2026-10-02 16:43:16 +00:00
20 lines
468 B
TypeScript
20 lines
468 B
TypeScript
|
|
import { useQuery } from "@tanstack/react-query";
|
||
|
|
import { ApiError, api } from "./api";
|
||
|
|
import type {SessionUser} from "./api";
|
||
|
|
|
||
|
|
export function useSession() {
|
||
|
|
return useQuery<SessionUser | null>({
|
||
|
|
queryKey: ["session"],
|
||
|
|
queryFn: async () => {
|
||
|
|
try {
|
||
|
|
return await api.me();
|
||
|
|
} catch (e) {
|
||
|
|
if (e instanceof ApiError && e.status === 401) return null;
|
||
|
|
throw e;
|
||
|
|
}
|
||
|
|
},
|
||
|
|
staleTime: 60_000,
|
||
|
|
retry: false,
|
||
|
|
});
|
||
|
|
}
|