diff --git a/src/createClientHook.ts b/src/createClientHook.ts index 6d54a0a..9111e0b 100644 --- a/src/createClientHook.ts +++ b/src/createClientHook.ts @@ -8,7 +8,7 @@ type PrismicClientError = | prismic.ParsingError | prismic.ForbiddenError; -const enum StateMachineStateType { +export const enum PrismicHookState { IDLE, PENDING, SUCCEEDED, @@ -16,7 +16,7 @@ const enum StateMachineStateType { } export type StateMachineState = { - state: StateMachineStateType; + state: PrismicHookState; data?: TData; error?: PrismicClientError; }; @@ -31,17 +31,17 @@ const reducer = ( action: StateMachineAction, ): StateMachineState => { if (action[0] === "start") { - return { state: StateMachineStateType.PENDING }; + return { state: PrismicHookState.PENDING }; } else if (action[0] === "succeed") { - return { state: StateMachineStateType.SUCCEEDED, data: action[1] }; + return { state: PrismicHookState.SUCCEEDED, data: action[1] }; } else if (action[0] === "fail") { - return { ...state, state: StateMachineStateType.FAILED, error: action[1] }; + return { ...state, state: PrismicHookState.FAILED, error: action[1] }; } return state; }; -const initialState = { state: StateMachineStateType.IDLE } as const; +const initialState = { state: PrismicHookState.IDLE } as const; type UnwrapPromise = T extends Promise ? U : T; diff --git a/src/index.ts b/src/index.ts index 1b0b2b3..83d5ac1 100644 --- a/src/index.ts +++ b/src/index.ts @@ -9,6 +9,8 @@ export type { PrismicLinkProps, LinkProps } from "./PrismicLink"; export { PrismicToolbar } from "./PrismicToolbar"; export type { PrismicToolbarProps } from "./PrismicToolbar"; +export { PrismicHookState } from "./createClientHook"; + export { useAllPrismicDocuments, useAllPrismicDocumentsByIDs,