UNPKG

@omegabigdata/honoplay-redux-helper

Version:
100 lines (92 loc) 2.44 kB
import { CREATE_OPTION_FAILED, CREATE_OPTION_SUCCESS, CREATING_OPTION, FETCHING_OPTION, FETCHING_OPTION_LIST, FETCH_OPTION_FAILED, FETCH_OPTION_LIST_FAILED, FETCH_OPTION_LIST_SUCCESS, FETCH_OPTION_SUCCESS, UPDATE_OPTION_FAILED, UPDATE_OPTION_SUCCESS, UPDATING_OPTION, FETCHING_OPTION_BY_QUESTIONID_LIST, FETCH_OPTION_BY_QUESTIONID_LIST_FAILED, FETCH_OPTION_BY_QUESTIONID_LIST_SUCCESS } from "../helpers/ActionTypes/Option"; import { Option } from "@omegabigdata/honoplay-api-helper-node"; const fetchOptionsByQuestionId = questionId => dispatch => { dispatch({ type: FETCHING_OPTION_BY_QUESTIONID_LIST }); Option.getOptionByQuestionId( questionId, success => { dispatch({ type: FETCH_OPTION_BY_QUESTIONID_LIST_SUCCESS, data: success.data }); }, error => { dispatch({ type: FETCH_OPTION_BY_QUESTIONID_LIST_FAILED, data: { error } }); } ); }; const fetchOptions = (skip = null, take = null) => dispatch => { dispatch({ type: FETCHING_OPTION_LIST }); Option.getOptions( skip, take, success => { dispatch({ type: FETCH_OPTION_LIST_SUCCESS, data: success.data }); }, error => { dispatch({ type: FETCH_OPTION_LIST_FAILED, data: { error } }); } ); }; const fetchOption = optionId => dispatch => { dispatch({ type: FETCHING_OPTION }); Option.getOption( optionId, success => { dispatch({ type: FETCH_OPTION_SUCCESS, data: success.data }); }, error => { dispatch({ type: FETCH_OPTION_FAILED, data: { error } }); } ); }; const createOption = optionModel => dispatch => { dispatch({ type: CREATING_OPTION }); Option.postOption( optionModel, success => { dispatch({ type: CREATE_OPTION_SUCCESS, data: success.data }); }, error => { dispatch({ type: CREATE_OPTION_FAILED, data: { error } }); } ); }; const updateOption = optionModel => dispatch => { dispatch({ type: UPDATING_OPTION }); Option.putOption( optionModel, success => { dispatch({ type: UPDATE_OPTION_SUCCESS, data: success.data }); }, error => { dispatch({ type: UPDATE_OPTION_FAILED, data: { error } }); } ); }; export { fetchOptions, fetchOption, createOption, updateOption, fetchOptionsByQuestionId };