lml-main
Version:
This is now a mono repository published into many standalone packages.
39 lines • 1.45 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var Actions = require("../actions");
var initialState = {
reasons: [],
impacts: [],
data: {},
};
exports.jobIncidentReducer = function (state, action) {
if (state === void 0) { state = initialState; }
switch (action.type) {
case Actions.SET_JOB_INCIDENT: {
return setJobIncident(state, action);
}
case Actions.SET_JOB_INCIDENTS_BATCH: {
return setJobIncidents(state, action);
}
case Actions.SET_JOB_INCIDENT_CODES: {
return setJobIncidentCodes(state, action);
}
default: {
return state;
}
}
};
var setJobIncident = function (state, action) {
return (tslib_1.__assign({}, state, { data: tslib_1.__assign({}, state.data, (_a = {}, _a[action.refId] = state.data[action.refId]
? state.data[action.refId].concat([
action.incident,
]) : [action.incident], _a)) }));
var _a;
};
var setJobIncidents = function (state, action) {
return (tslib_1.__assign({}, state, { data: tslib_1.__assign({}, state.data, (_a = {}, _a[action.refId] = action.incidents, _a)) }));
var _a;
};
var setJobIncidentCodes = function (state, action) { return (tslib_1.__assign({}, state, { impacts: action.impacts, reasons: action.reasons })); };
//# sourceMappingURL=incidents.js.map