import type { ThemeProviderProps } from '@primer/react' import { useEffect } from 'react' import useSWR from 'swr' export default async function fetcher( input: RequestInfo, init?: RequestInit ): Promise { const res = await fetch(input, init) return res.json() } export type Session = { isSignedIn: boolean csrfToken?: string userLanguage: string // en, es, ja, cn theme: { colorMode: Pick nightTheme: string dayTheme: string } themeCss: { colorMode: Pick nightTheme: string dayTheme: string } } // React hook version export function useSession() { const { data: session, error } = useSWR('/api/session', fetcher) useEffect(() => { if (error) { console.warn('An error occurred loading the user session', error) } }, [error]) return { session } }