import { produce } from "immer"; const defaultState = { fetching: false, searching: false, torrents: [], searchResults: [], }; export default (state = defaultState, action) => produce(state, (draft) => { switch (action.type) { case "TORRENTS_FETCH_PENDING": draft.fetching = true; break; case "TORRENTS_FETCH_FULFILLED": draft.fetching = false; draft.torrents = action.payload.response.data; break; case "TORRENTS_SEARCH_PENDING": draft.searching = true; break; case "TORRENTS_SEARCH_FULFILLED": draft.searching = false; draft.searchResults = action.payload.response.data; break; default: return draft; } });