caribbean-reservation-react
Version:
Basically a modular grid which allows you to place tags over it. Created in order to manage reservations for a hotel in the caribbean
38 lines (22 loc) • 940 B
JavaScript
import { useReducer} from 'react';
import actionTypes from './actionTypes'
function useReserver(reducer, initialState) {
const [{ bars, isEditing }, dispatch] = useReducer(reducer, { bars: initialState, isEditing: false, })
const addBar = (props) => {
return dispatch({ payload: props, type: actionTypes.add })
}
const editBar = (props) => {
return dispatch({ payload: props, type: actionTypes.edit })
}
const deleteBar = (props) => {
return dispatch({ payload: props, type: actionTypes.delete })
}
const doneEditing = (props) => {
return dispatch({ type: actionTypes.doneEditing })
}
const addToEditing =(props) => {
return dispatch({payload:props, type: actionTypes.addToEditing })
}
return { bars, isEditing, addBar, editBar, doneEditing, deleteBar , addToEditing}
}
export default useReserver;