@omegabigdata/honoplay-redux-helper
Version:
honoplay-redux-helper
185 lines (174 loc) • 4.33 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";
const OPTION_LIST_INITIAL_STATE = {
isOptionListLoading: false,
optionsList: null,
errorOptionList: null
};
const OPTION_INITIAL_STATE = {
isOptionLoading: false,
option: null,
errorOption: null
};
const CREATE_OPTION_INITIAL_STATE = {
isCreateOptionLoading: false,
createOption: null,
errorCreateOption: null
};
const UPDATE_OPTION_INITIAL_STATE = {
isUpdateOptionLoading: false,
updateOption: null,
errorUpdateOption: null
};
const OPTION_LIST_BY_QUESTIONID_INITIAL_STATE = {
isOptionListByQuestionIdLoading: false,
optionsListByQuestionId: null,
errorOptionListByQuestionId: null
};
export const optionListByQuestionIdReducers = (
state = OPTION_LIST_BY_QUESTIONID_INITIAL_STATE,
action
) => {
switch (action.type) {
case FETCHING_OPTION_BY_QUESTIONID_LIST:
return {
...state,
isOptionListByQuestionIdLoading: true,
errorOptionListByQuestionId: null
};
case FETCH_OPTION_BY_QUESTIONID_LIST_SUCCESS:
return {
...state,
isOptionListByQuestionIdLoading: false,
optionsListByQuestionId: action.data
};
case FETCH_OPTION_BY_QUESTIONID_LIST_FAILED:
return {
...state,
isOptionListByQuestionIdLoading: false,
errorOptionListByQuestionId: action.data.error
};
default:
return state;
}
};
export const optionListReducers = (
state = OPTION_LIST_INITIAL_STATE,
action
) => {
switch (action.type) {
case FETCHING_OPTION_LIST:
return {
...state,
isOptionListLoading: true,
errorOptionList: null
};
case FETCH_OPTION_LIST_SUCCESS:
return {
...state,
isOptionListLoading: false,
optionsList: action.data
};
case FETCH_OPTION_LIST_FAILED:
return {
...state,
isOptionListLoading: false,
errorOptionList: action.data.error
};
default:
return state;
}
};
export const optionReducers = (state = OPTION_INITIAL_STATE, action) => {
switch (action.type) {
case FETCHING_OPTION:
return {
...state,
isOptionLoading: true,
errorOption: null
};
case FETCH_OPTION_SUCCESS:
return {
...state,
isOptionLoading: false,
option: action.data
};
case FETCH_OPTION_FAILED:
return {
...state,
isOptionLoading: false,
errorOption: action.data.error
};
default:
return state;
}
};
export const createOptionReducers = (
state = CREATE_OPTION_INITIAL_STATE,
action
) => {
switch (action.type) {
case CREATING_OPTION:
return {
...state,
isCreateOptionLoading: true,
errorCreateOption: null
};
case CREATE_OPTION_SUCCESS:
return {
...state,
isCreateOptionLoading: false,
createOption: action.data
};
case CREATE_OPTION_FAILED:
return {
...state,
isCreateOptionLoading: false,
errorCreateOption: action.data.error
};
default:
return state;
}
};
export const updateOptionReducers = (
state = UPDATE_OPTION_INITIAL_STATE,
action
) => {
switch (action.type) {
case UPDATING_OPTION:
return {
...state,
isUpdateOptionLoading: true,
errorUpdateOption: null
};
case UPDATE_OPTION_SUCCESS:
return {
...state,
isUpdateOptionLoading: false,
updateOption: action.data
};
case UPDATE_OPTION_FAILED:
return {
...state,
isUpdateOptionLoading: false,
errorUpdateOption: action.data.error
};
default:
return state;
}
};