@omegabigdata/honoplay-redux-helper
Version:
honoplay-redux-helper
100 lines (92 loc) • 2.44 kB
JavaScript
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
};