| 1234567891011121314151617181920212223242526272829 | 
							- import { useEffect } from 'react'
 
- //import React, { useEffect } from 'react';
 
- import Router from 'next/router'
 
- import useSWR from 'swr'
 
- export default function useUser({
 
-   redirectTo = false,
 
-   redirectIfFound = false,
 
- } = {}) {
 
-     
 
-   const { data: user, mutate: mutateUser } = useSWR('/api/user')
 
-   useEffect(() => {
 
-     // if no redirect needed, just return (example: already on /dashboard)
 
-     // if user data not yet there (fetch in progress, logged in or not) then don't do anything yet
 
-     if (!redirectTo || !user) return
 
-     if (
 
-       // If redirectTo is set, redirect if the user was not found.
 
-       (redirectTo && !redirectIfFound && !user?.isLoggedIn) ||
 
-       // If redirectIfFound is also set, redirect if the user was found
 
-       (redirectIfFound && user?.isLoggedIn)
 
-     ) {
 
-       Router.push(redirectTo)
 
-     }
 
-   }, [user, redirectIfFound, redirectTo])
 
-   return { user, mutateUser }
 
- }
 
 
  |