Viewing File: /home/ubuntu/todaykat-frontend-base/src/components/store/reducers/HomePageReducer.jsx
import {
FETCH_BANNERS_LIST_START,
FETCH_BANNERS_LIST_SUCCESS,
FETCH_BANNERS_LIST_FAILURE,
FETCH_CATEGORIES_LIST_START,
FETCH_CATEGORIES_LIST_SUCCESS,
FETCH_CATEGORIES_LIST_FAILURE,
FETCH_TOP_PRODUCTS_LIST_START,
FETCH_TOP_PRODUCTS_LIST_SUCCESS,
FETCH_TOP_PRODUCTS_LIST_FAILURE,
FETCH_FAQS_LIST_START,
FETCH_FAQS_LIST_SUCCESS,
FETCH_FAQS_LIST_FAILURE,
CONTACT_SUBMIT_START,
CONTACT_SUBMIT_SUCCESS,
CONTACT_SUBMIT_FAILURE,
CUSTOMER_REVIEWS_LIST_START,
CUSTOMER_REVIEWS_LIST_SUCCESS,
CUSTOMER_REVIEWS_LIST_FAILURE
} from "../actions/ActionConstant";
const initialState = {
bannerList: {
data: {},
loading: true,
error: false,
},
categoriesList: {
data: {},
loading: true,
error: false,
},
topProductList: {
data: {},
loading: true,
error: false,
},
faqsList: {
data: {},
loading: true,
error: false,
},
contactSubmit: {
data: {},
loading: true,
error: false,
buttonDisable: false,
loadingButtonContent: null,
},
customerReviewsList:{
data: {},
loading: true,
error: false,
buttonDisable: false,
loadingButtonContent: null,
}
};
const homePageReducer = (state = initialState, action) => {
switch (action.type) {
case FETCH_BANNERS_LIST_START:
return {
...state,
bannerList: {
data: {},
loading: true,
error: false,
},
};
case FETCH_BANNERS_LIST_SUCCESS:
return {
...state,
bannerList: {
data: action.data,
loading: false,
error: false,
},
};
case FETCH_BANNERS_LIST_FAILURE:
return {
...state,
bannerList: {
data: {},
loading: false,
error: action.error,
},
};
case FETCH_CATEGORIES_LIST_START:
return {
...state,
categoriesList: {
data: {},
loading: true,
error: false,
},
};
case FETCH_CATEGORIES_LIST_SUCCESS:
return {
...state,
categoriesList: {
data: action.data,
loading: false,
error: false,
},
};
case FETCH_CATEGORIES_LIST_FAILURE:
return {
...state,
categoriesList: {
data: {},
loading: false,
error: action.error,
},
};
case FETCH_TOP_PRODUCTS_LIST_START:
return {
...state,
topProductList: {
data: {},
loading: true,
error: false,
},
};
case FETCH_TOP_PRODUCTS_LIST_SUCCESS:
return {
...state,
topProductList: {
data: action.data,
loading: false,
error: false,
},
};
case FETCH_TOP_PRODUCTS_LIST_FAILURE:
return {
...state,
topProductList: {
data: {},
loading: false,
error: action.error,
},
};
case FETCH_FAQS_LIST_START:
return {
...state,
faqsList: {
data: {},
loading: true,
error: false,
},
};
case FETCH_FAQS_LIST_SUCCESS:
return {
...state,
faqsList: {
data: action.data,
loading: false,
error: false,
},
};
case FETCH_FAQS_LIST_FAILURE:
return {
...state,
faqsList: {
data: {},
loading: false,
error: action.error,
},
};
case CONTACT_SUBMIT_START:
return {
...state,
contactSubmit: {
data: {},
loading: true,
error: false,
buttonDisable: true,
loadingButtonContent: "Loading",
},
};
case CONTACT_SUBMIT_SUCCESS:
return {
...state,
contactSubmit: {
data: action.data,
loading: false,
error: false,
buttonDisable: false,
loadingButtonContent: null,
},
};
case CONTACT_SUBMIT_FAILURE:
return {
...state,
contactSubmit: {
data: {},
loading: false,
error: action.error,
buttonDisable: false,
loadingButtonContent: null,
},
};
case CUSTOMER_REVIEWS_LIST_START:
return {
...state,
customerReviewsList: {
data: {},
loading: true,
error: false,
buttonDisable: true,
loadingButtonContent: "Loading",
},
};
case CUSTOMER_REVIEWS_LIST_SUCCESS:
return {
...state,
customerReviewsList: {
data: action.data,
loading: false,
error: false,
buttonDisable: false,
loadingButtonContent: null,
},
};
case CUSTOMER_REVIEWS_LIST_FAILURE:
return {
...state,
customerReviewsList: {
data: {},
loading: false,
error: action.error,
buttonDisable: false,
loadingButtonContent: null,
},
};
default:
return state;
}
};
export default homePageReducer;
Back to Directory
File Manager