You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Hydro/ui/components/scratchpad/reducers/pretest.js

30 lines
641 B
JavaScript

export default function reducer(state = {
input: '',
output: '',
rid: null,
}, action) {
if (action.type === 'SCRATCHPAD_PRETEST_DATA_CHANGE') {
const { type, value } = action.payload;
return {
...state,
[type]: value,
};
}
if (action.type === 'SCRATCHPAD_RECORDS_PUSH') {
const { rdoc } = action.payload;
if (rdoc._id === state.rid) {
return {
...state,
output: (rdoc.stdout || '') + (rdoc.stderr || ''),
};
}
}
if (action.type === 'SCRATCHPAD_POST_PRETEST_FULFILLED') {
return {
...state,
rid: action.payload.rid,
};
}
return state;
}