useAlbyMe.ts raw
1 import useSWR from "swr";
2
3 import { useInfo } from "src/hooks/useInfo";
4 import { AlbyMe } from "src/types";
5 import { swrFetcher } from "src/utils/swr";
6
7 export function useAlbyMe() {
8 const { data: info, isLoading: isInfoLoading } = useInfo();
9
10 const albyMe = useSWR<AlbyMe>(
11 info?.albyAccountConnected ? "/api/alby/me" : undefined,
12 swrFetcher,
13 {
14 dedupingInterval: 5 * 60 * 1000, // 5 minutes
15 }
16 );
17 const isAlbyLoading = info?.albyAccountConnected ? albyMe.isLoading : false;
18
19 return {
20 ...albyMe,
21 isLoading: isInfoLoading || isAlbyLoading,
22 };
23 }
24