| 1 2 3 4 5 6 7 8 9 10 11 12 13 | 1x 11x |
import { useReducer } from 'react';
// type Config = { useReducer :: React.Hook };
// useReducer :: Config -> (Reducer, State) -> [ State, EnumTagType -> () ]
export const createHook = ({ useReducer }) =>
(reducer, initialState) => useReducer((state, action) => reducer(action)(state), initialState);
// useReducer :: (Reducer, State) -> [ State, EnumTagType -> () ]
export default createHook({ useReducer });
|