@omegabigdata/honoplay-redux-helper
Version:
honoplay-redux-helper
94 lines (86 loc) • 2.22 kB
JavaScript
import {
CREATING_TAG,
CREATE_TAG_SUCCESS,
CREATE_TAG_FAILED,
UPDATING_TAG,
UPDATE_TAG_SUCCESS,
UPDATE_TAG_FAILED,
FETCHING_TAG_LIST,
FETCH_TAG_LIST_SUCCESS,
FETCH_TAG_LIST_FAILED,
FETCHING_TAG,
FETCH_TAG_SUCCESS,
FETCH_TAG_FAILED,
FETCHING_TAG_BY_QUESTION_ID,
FETCH_TAG_BY_QUESTION_SUCCESS,
FETCH_TAG_BY_QUESTION_ID_FAILED
} from '../helpers/ActionTypes/Tag';
import { Tag } from '@omegabigdata/honoplay-api-helper-node';
const createTag = tagModel => dispatch => {
dispatch({ type: CREATING_TAG });
Tag.postTag(
tagModel,
success => {
dispatch({ type: CREATE_TAG_SUCCESS, data: success.data });
},
error => {
dispatch({ type: CREATE_TAG_FAILED, data: { error } });
}
);
};
const updateTag = tagModel => dispatch => {
dispatch({ type: UPDATING_TAG });
Tag.putTag(
tagModel,
success => {
dispatch({ type: UPDATE_TAG_SUCCESS, data: success.data });
},
error => {
dispatch({ type: UPDATE_TAG_FAILED, data: { error } });
}
);
};
const fetchTagList = (skip = null, take = null) => dispatch => {
dispatch({ type: FETCHING_TAG_LIST });
Tag.getTags(
skip,
take,
success => {
dispatch({ type: FETCH_TAG_LIST_SUCCESS, data: success.data });
},
error => {
dispatch({ type: FETCH_TAG_LIST_FAILED, data: { error } });
}
);
};
const fetchTag = tagId => dispatch => {
dispatch({ type: FETCHING_TAG });
Tag.getTag(
tagId,
success => {
dispatch({ type: FETCH_TAG_SUCCESS, data: success.data });
},
error => {
dispatch({ type: FETCH_TAG_FAILED, data: { error } });
}
);
};
const fetchTagByQuestionId = questionId => dispatch => {
dispatch({ type: FETCHING_TAG_BY_QUESTION_ID });
Tag.getTagByquestionId(
questionId,
success => {
dispatch({
type: FETCH_TAG_BY_QUESTION_SUCCESS,
data: success.data
});
},
error => {
dispatch({
type: FETCH_TAG_BY_QUESTION_ID_FAILED,
data: { error }
});
}
);
};
export { createTag, updateTag, fetchTagList, fetchTag, fetchTagByQuestionId };