Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 1 | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |

import { shareModalActionTypes } from "./shareModal.types";

const shareModalInitialState = {
  isOpen: false,
  postUrl: "",
  modalType: "",
  lastModalType: "",
  feedType: "",
  feedSharedId: ""
};

const shareModalReducer = (
  state = shareModalInitialState,
  { type, payload }
) => {
  switch (type) {
    case shareModalActionTypes.OPEN_MODAL:
      const newPostUrl = payload.postUrl;
      const newModalType = payload.modalType;
      const newFeedType = payload.feedType;
      const lastModalType = state.modalType;
      const feedSharedId = payload.feed_unique;
      return {
        ...state,
        isOpen: true,
        postUrl: newPostUrl,
        modalType: newModalType,
        lastModalType: lastModalType,
        feedType: newFeedType,
        feedSharedId: feedSharedId
      };
    case shareModalActionTypes.CLOSE_MODAL:
      return { ...state, isOpen: false };
    case shareModalActionTypes.SET_MODAL_TYPE:
      const setNewModalType = payload;
      return { ...state, modalType: setNewModalType };

    default:
      return state;
  }
};

export default shareModalReducer;