Skip to content

Commit 45f9ac6

Browse files
refactor editorAccessibility reducers and actions using redux toolkit
1 parent ae8f517 commit 45f9ac6

File tree

3 files changed

+29
-42
lines changed

3 files changed

+29
-42
lines changed

client/constants.js

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,6 @@ export const CLEAR_CONSOLE = 'CLEAR_CONSOLE';
5858
export const EXPAND_CONSOLE = 'EXPAND_CONSOLE';
5959
export const COLLAPSE_CONSOLE = 'COLLAPSE_CONSOLE';
6060

61-
export const UPDATE_LINT_MESSAGE = 'UPDATE_LINT_MESSAGE';
62-
export const CLEAR_LINT_MESSAGE = 'CLEAR_LINT_MESSAGE';
6361
export const TOGGLE_FORCE_DESKTOP = 'TOGGLE_FORCE_DESKTOP';
6462

6563
export const UPDATE_FILE_NAME = 'UPDATE_FILE_NAME';
Lines changed: 6 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,7 @@
1-
import * as ActionTypes from '../../../constants';
1+
import { editorAccessibilityActions } from '../reducers/editorAccessibility';
22

3-
export function updateLintMessage(severity, line, message) {
4-
return {
5-
type: ActionTypes.UPDATE_LINT_MESSAGE,
6-
severity,
7-
line,
8-
message
9-
};
10-
}
11-
12-
export function clearLintMessage() {
13-
return {
14-
type: ActionTypes.CLEAR_LINT_MESSAGE
15-
};
16-
}
17-
18-
export function toggleForceDesktop() {
19-
return {
20-
type: ActionTypes.TOGGLE_FORCE_DESKTOP
21-
};
22-
}
3+
export const {
4+
updateLintMessage,
5+
clearLintMessages,
6+
toggleForceDesktop
7+
} = editorAccessibilityActions;
Lines changed: 23 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,34 @@
1-
import * as ActionTypes from '../../../constants';
1+
import { createSlice } from '@reduxjs/toolkit';
22

33
const initialState = {
44
lintMessages: [],
55
forceDesktop: false
66
};
7+
78
let messageId = 0;
89

9-
const editorAccessibility = (state = initialState, action) => {
10-
switch (action.type) {
11-
case ActionTypes.UPDATE_LINT_MESSAGE:
10+
const editorAccessibilitySlice = createSlice({
11+
name: 'editorAccessibility',
12+
initialState,
13+
reducers: {
14+
updateLintMessage: (state, action) => {
1215
messageId += 1;
13-
return Object.assign({}, state, {
14-
lintMessages: state.lintMessages.concat({
15-
severity: action.severity,
16-
line: action.line,
17-
message: action.message,
18-
id: messageId
19-
})
16+
state.lintMessages.push({
17+
severity: action.payload.severity,
18+
line: action.payload.line,
19+
message: action.payload.message,
20+
id: messageId
2021
});
21-
case ActionTypes.CLEAR_LINT_MESSAGE:
22-
return Object.assign({}, state, { lintMessages: [] });
23-
case ActionTypes.TOGGLE_FORCE_DESKTOP:
24-
return Object.assign({}, state, { forceDesktop: !state.forceDesktop });
25-
default:
26-
return state;
22+
},
23+
clearLintMessages: (state) => {
24+
state.lintMessages = [];
25+
},
26+
toggleForceDesktop: (state) => {
27+
state.forceDesktop = !state.forceDesktop;
28+
}
2729
}
28-
};
30+
});
31+
32+
export const editorAccessibilityActions = editorAccessibilitySlice.actions;
2933

30-
export default editorAccessibility;
34+
export default editorAccessibilitySlice.reducer;

0 commit comments

Comments
 (0)