loop-modules
Version:
Shared modules for the Loop product suite.
25 lines (23 loc) • 807 B
text/typescript
import { LoopAssignmentState, initialState } from '../states/loop-assignment.state';
import { Actions, ActionTypes } from '../actions/loop-assignment.action';
export function reducer(
state: LoopAssignmentState = initialState,
action: Actions
): LoopAssignmentState {
switch (action.type) {
case ActionTypes.QUERY:
return (<any>Object).assign({}, state, {
entries: [...state.entries, ...action.payload]
});
case ActionTypes.SET_ENTRIES:
return (<any>Object).assign({}, state, {
entries: action.payload
});
case ActionTypes.UNREAD:
return (<any>Object).assign({}, state, {
unread: action.payload
});
default:
return state;
}
}