loading.js 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. import {
  2. SHOW_PAGE_LOADING,
  3. HIDE_PAGE_LOADING,
  4. TABLE_LOADING,
  5. LOGIN_LOADING,
  6. SIGNUP_LOADING,
  7. SHORTENER_LOADING,
  8. ADD_URL,
  9. SHORTENER_ERROR,
  10. LIST_URLS,
  11. DELETE_URL,
  12. AUTH_ERROR,
  13. AUTH_USER,
  14. DOMAIN_LOADING,
  15. SET_DOMAIN,
  16. DOMAIN_ERROR,
  17. API_LOADING,
  18. SET_APIKEY,
  19. } from '../actions/actionTypes';
  20. const initialState = {
  21. api: false,
  22. domain: false,
  23. shortener: false,
  24. login: false,
  25. page: false,
  26. table: false,
  27. signup: false,
  28. };
  29. const loading = (state = initialState, action) => {
  30. switch (action.type) {
  31. case SHOW_PAGE_LOADING:
  32. return { ...state, page: true };
  33. case HIDE_PAGE_LOADING:
  34. return {
  35. shortener: false,
  36. login: false,
  37. page: false,
  38. signup: false,
  39. };
  40. case TABLE_LOADING:
  41. return { ...state, table: true };
  42. case LOGIN_LOADING:
  43. return { ...state, login: true };
  44. case SIGNUP_LOADING:
  45. return { ...state, signup: true };
  46. case SHORTENER_LOADING:
  47. return { ...state, shortener: true };
  48. case ADD_URL:
  49. return { ...state, shortener: false };
  50. case SHORTENER_ERROR:
  51. return { ...state, shortener: false };
  52. case LIST_URLS:
  53. return { ...state, table: false };
  54. case DELETE_URL:
  55. return { ...state, table: false };
  56. case AUTH_ERROR:
  57. return { ...state, login: false, signup: false };
  58. case AUTH_USER:
  59. return { ...state, login: false, signup: false };
  60. case DOMAIN_LOADING:
  61. return { ...state, domain: true };
  62. case SET_DOMAIN:
  63. return { ...state, domain: false };
  64. case DOMAIN_ERROR:
  65. return { ...state, domain: false };
  66. case API_LOADING:
  67. return { ...state, api: true };
  68. case SET_APIKEY:
  69. return { ...state, api: false };
  70. default:
  71. return state;
  72. }
  73. };
  74. export default loading;