UNPKG

stackpress

Version:

Incept is a content management framework.

32 lines (31 loc) 990 B
import { useContext } from 'react'; import { nest } from '@stackpress/lib/Nest'; import Request from './ServerRequest.js'; import Response from './ServerResponse.js'; import Session from './ServerSession.js'; import ClientContext from './ServerContext.js'; export function useRequest() { const { request } = useContext(ClientContext); return new Request(request); } export function useResponse() { const { response } = useContext(ClientContext); return new Response(response); } export function useSession() { const { session } = useContext(ClientContext); return new Session(session); } export function useConfig() { const { data } = useContext(ClientContext); return nest(data); } export function useServer() { const { data, request, response, session } = useContext(ClientContext); return { config: nest(data), request: new Request(request), response: new Response(response), session: new Session(session) }; }