trc-client-core
Version:
The core of the TRC Client
36 lines (28 loc) • 953 B
JavaScript
import {Map, fromJS} from 'immutable';
import {
TECHNICAL_TRAINING_REQUESTS_FETCH,
TECHNICAL_TRAINING_REQUESTS_RECEIVE,
TECHNICAL_TRAINING_REQUESTS_ERROR
} from 'trc-client-core/src/constants/ActionTypes'
const initialState = Map();
export default function ReportReducer(state = initialState, action) {
var {payload, type} = action;
switch (type) {
// Fetch Actions
case TECHNICAL_TRAINING_REQUESTS_FETCH:
return state
.set('fetching', true);
// Error Actions
case TECHNICAL_TRAINING_REQUESTS_ERROR:
return state
.set('fetching', false)
.set('error', payload);
// Recieve Actions
case TECHNICAL_TRAINING_REQUESTS_RECEIVE:
return state
.set('fetching', false)
.set('technicalTrainingRequests', fromJS(payload));
default:
return state;
}
}