'use client' import { User } from '@/payload-types' import { createContext, ReactNode, useContext, useState } from 'react' type GlobalProps = { user?: User } type GlobalState = { setUser: (users?: User) => void } & GlobalProps const defaultState = { user: undefined, setUser: (user?: User) => {}, } const GlobalContext = createContext(defaultState) type Props = { children: ReactNode; globalProps: GlobalProps } export function GlobalProvider({ children, globalProps }: Props) { const [user, setUser] = useState(globalProps.user) const value = { user, setUser, } return {children} } export function useGlobal() { return useContext(GlobalContext) }