@zohodesk/hooks
Version:
Unified Component Library - Hooks
24 lines • 736 B
JavaScript
import errorAction from "./actions/errorAction";
import successAction from "./actions/successAction";
import defaultReducer, { initalState } from "./reducer";
import useCommonReducer from "../utils/useCommonReducer";
export default function useAvatar() {
let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
let customReducer = arguments.length > 1 ? arguments[1] : undefined;
let {
image
} = props;
let {
state,
dispatch
} = useCommonReducer(defaultReducer, customReducer, initalState);
return {
isImageFailed: state.isImageFailed,
handleError: () => {
dispatch(errorAction(image));
},
handleLoad: () => {
dispatch(successAction(image));
}
};
}