Files
page-assist/src/context/index.tsx
2024-03-31 00:36:12 +05:30

27 lines
686 B
TypeScript

import { Message } from "@/types/message"
import React, { Dispatch, SetStateAction, createContext } from "react"
interface PageAssistContext {
messages: Message[]
setMessages: Dispatch<SetStateAction<Message[]>>
controller: AbortController | null
setController: Dispatch<SetStateAction<AbortController>>
}
export const PageAssistContext = createContext<PageAssistContext>({
messages: [],
setMessages: () => {},
controller: null,
setController: () => {}
})
export const usePageAssist = () => {
const context = React.useContext(PageAssistContext)
if (!context) {
throw new Error("usePageAssist must be used within a PageAssistContext")
}
return context
}