From 99fbe22d6dab33b98defc498e09b44a44c62239f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Delattre?= Date: Fri, 2 Jun 2017 21:08:26 +0200 Subject: [PATCH] Update the torrent reducer from switch to map --- src/public/js/reducers/torrents.js | 27 ++++++++++++--------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/src/public/js/reducers/torrents.js b/src/public/js/reducers/torrents.js index 4b3a8b4..6e219ec 100644 --- a/src/public/js/reducers/torrents.js +++ b/src/public/js/reducers/torrents.js @@ -1,20 +1,17 @@ -import { Map, List, fromJS } from 'immutable' +import { Map, List, fromJS } from "immutable" const defaultState = Map({ - 'fetching': false, - 'torrents': List(), + "fetching": false, + "torrents": List(), }); -export default function torrentStore(state = defaultState, action) { - switch (action.type) { - case 'TORRENTS_FETCH_PENDING': - return state.set('fetching', false); - case 'TORRENTS_FETCH_FULFILLED': - return state.merge(fromJS({ - fetching: false, - torrents: action.payload.response.data, - })); - default: - return state - } +const handlers = { + "TORRENTS_FETCH_PENDING": state => state.set("fetching", false), + "TORRENTS_FETCH_FULFILLED": (state, action) => state.merge(fromJS({ + fetching: false, + torrents: action.payload.response.data, + })), } + +export default (state = defaultState, action) => + handlers[action.type] ? handlers[action.type](state, action) : state;