@omegabigdata/honoplay-redux-helper
Version:
honoplay-redux-helper
72 lines (65 loc) • 1.92 kB
JavaScript
import {
CREATE_QUESTION_FAILED,
CREATE_QUESTION_SUCCESS,
CREATING_QUESTION,
FETCHING_QUESTION,
FETCHING_QUESTION_LIST,
FETCH_QUESTION_FAILED,
FETCH_QUESTION_LIST_FAILED,
FETCH_QUESTION_LIST_SUCCESS,
FETCH_QUESTION_SUCCESS,
UPDATE_QUESTION_FAILED,
UPDATE_QUESTION_SUCCESS,
UPDATING_QUESTION
} from "../helpers/ActionTypes/Question";
import { Question } from "@omegabigdata/honoplay-api-helper-node";
const fetchQuestionList = (skip = null, take = null) => dispatch => {
dispatch({ type: FETCHING_QUESTION_LIST });
Question.getQuestions(
skip,
take,
success => {
dispatch({ type: FETCH_QUESTION_LIST_SUCCESS, data: success.data });
},
error => {
dispatch({ type: FETCH_QUESTION_LIST_FAILED, data: { error } });
}
);
};
const fetchQuestion = questionId => dispatch => {
dispatch({ type: FETCHING_QUESTION });
Question.getQuestion(
questionId,
success => {
dispatch({ type: FETCH_QUESTION_SUCCESS, data: success.data });
},
error => {
dispatch({ type: FETCH_QUESTION_FAILED, data: { error } });
}
);
};
const createQuestion = questionModel => dispatch => {
dispatch({ type: CREATING_QUESTION });
Question.postQuestion(
questionModel,
success => {
dispatch({ type: CREATE_QUESTION_SUCCESS, data: success.data });
},
error => {
dispatch({ type: CREATE_QUESTION_FAILED, data: { error } });
}
);
};
const updateQuestion = questionModel => dispatch => {
dispatch({ type: UPDATING_QUESTION });
Question.putQuestion(
questionModel,
success => {
dispatch({ type: UPDATE_QUESTION_SUCCESS, data: success.data });
},
error => {
dispatch({ type: UPDATE_QUESTION_FAILED, data: { error } });
}
);
};
export { fetchQuestionList, fetchQuestion, createQuestion, updateQuestion };