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