UNPKG

loop-modules

Version:

Shared modules for the Loop product suite.

33 lines (32 loc) 1.15 kB
import { initialState } from '../states/loop-scenario.state'; import { ActionTypes } from '../actions/loop-scenario.action'; export function reducer(state, action) { if (state === void 0) { state = initialState; } switch (action.type) { case ActionTypes.QUERY: return Object.assign({}, state, { entries: state.entries.concat(action.payload) }); case ActionTypes.TOGGLE_SELECTED: var selectedEntries = state.selectedEntries; if (selectedEntries.indexOf(action.payload) === -1) { selectedEntries = [action.payload]; } else { selectedEntries = []; } return Object.assign({}, state, { selectedEntries: selectedEntries }); case ActionTypes.SET_ENTRIES: return Object.assign({}, state, { entries: action.payload }); case ActionTypes.SET_SELECTED: return Object.assign({}, state, { selectedEntries: action.payload }); default: return state; } }