Skip to content

Commit 496b4b1

Browse files
committed
Migrate more reducers to new reducer
Migrated the reducers for the following action types: * `CHANGE_EXEC_TIME` * `CHANGE_SIDE_CONTENT_HEIGHT` * `CHANGE_STEP_LIMIT` * `CLEAR_REPL_INPUT` * `CLEAR_REPL_OUTPUT_LAST` * `CLEAR_REPL_OUTPUT`
1 parent 535baf3 commit 496b4b1

File tree

1 file changed

+34
-55
lines changed

1 file changed

+34
-55
lines changed

src/commons/workspace/WorkspaceReducer.ts

Lines changed: 34 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -33,16 +33,19 @@ import { NOTIFY_PROGRAM_EVALUATED } from '../sideContent/SideContentTypes';
3333
import { SourceActionType } from '../utils/ActionsHelper';
3434
import Constants from '../utils/Constants';
3535
import { createContext } from '../utils/JsSlangHelper';
36-
import { browseReplHistoryDown, browseReplHistoryUp } from './WorkspaceActions';
36+
import {
37+
browseReplHistoryDown,
38+
browseReplHistoryUp,
39+
changeExecTime,
40+
changeSideContentHeight,
41+
changeStepLimit,
42+
clearReplInput,
43+
clearReplOutput,
44+
clearReplOutputLast
45+
} from './WorkspaceActions';
3746
import {
3847
ADD_EDITOR_TAB,
39-
CHANGE_EXEC_TIME,
4048
CHANGE_EXTERNAL_LIBRARY,
41-
CHANGE_SIDE_CONTENT_HEIGHT,
42-
CHANGE_STEP_LIMIT,
43-
CLEAR_REPL_INPUT,
44-
CLEAR_REPL_OUTPUT,
45-
CLEAR_REPL_OUTPUT_LAST,
4649
EditorTabState,
4750
END_CLEAR_CONTEXT,
4851
EVAL_EDITOR,
@@ -186,6 +189,30 @@ const newWorkspaceReducer = createReducer(defaultWorkspaceManager, builder => {
186189
const newReplValue = lastRecords[newIndex];
187190
state[workspaceLocation].replValue = newReplValue;
188191
state[workspaceLocation].replHistory.browseIndex = newIndex;
192+
})
193+
.addCase(changeExecTime, (state, action) => {
194+
const workspaceLocation = getWorkspaceLocation(action);
195+
state[workspaceLocation].execTime = action.payload.execTime;
196+
})
197+
.addCase(changeSideContentHeight, (state, action) => {
198+
const workspaceLocation = getWorkspaceLocation(action);
199+
state[workspaceLocation].sideContentHeight = action.payload.height;
200+
})
201+
.addCase(changeStepLimit, (state, action) => {
202+
const workspaceLocation = getWorkspaceLocation(action);
203+
state[workspaceLocation].stepLimit = action.payload.stepLimit;
204+
})
205+
.addCase(clearReplInput, (state, action) => {
206+
const workspaceLocation = getWorkspaceLocation(action);
207+
state[workspaceLocation].replValue = '';
208+
})
209+
.addCase(clearReplOutputLast, (state, action) => {
210+
const workspaceLocation = getWorkspaceLocation(action);
211+
state[workspaceLocation].output.pop();
212+
})
213+
.addCase(clearReplOutput, (state, action) => {
214+
const workspaceLocation = getWorkspaceLocation(action);
215+
state[workspaceLocation].output = [];
189216
});
190217
});
191218

@@ -198,54 +225,6 @@ const oldWorkspaceReducer: Reducer<WorkspaceManagerState> = (
198225
let lastOutput: InterpreterOutput;
199226

200227
switch (action.type) {
201-
case CHANGE_EXEC_TIME:
202-
return {
203-
...state,
204-
[workspaceLocation]: {
205-
...state[workspaceLocation],
206-
execTime: action.payload.execTime
207-
}
208-
};
209-
case CHANGE_SIDE_CONTENT_HEIGHT:
210-
return {
211-
...state,
212-
[workspaceLocation]: {
213-
...state[workspaceLocation],
214-
sideContentHeight: action.payload.height
215-
}
216-
};
217-
case CHANGE_STEP_LIMIT:
218-
return {
219-
...state,
220-
[workspaceLocation]: {
221-
...state[workspaceLocation],
222-
stepLimit: action.payload.stepLimit
223-
}
224-
};
225-
case CLEAR_REPL_INPUT:
226-
return {
227-
...state,
228-
[workspaceLocation]: {
229-
...state[workspaceLocation],
230-
replValue: ''
231-
}
232-
};
233-
case CLEAR_REPL_OUTPUT_LAST:
234-
return {
235-
...state,
236-
[workspaceLocation]: {
237-
...state[workspaceLocation],
238-
output: state[workspaceLocation].output.slice(0, -1)
239-
}
240-
};
241-
case CLEAR_REPL_OUTPUT:
242-
return {
243-
...state,
244-
[workspaceLocation]: {
245-
...state[workspaceLocation],
246-
output: []
247-
}
248-
};
249228
case END_CLEAR_CONTEXT:
250229
return {
251230
...state,

0 commit comments

Comments
 (0)