forked from popcodeorg/popcode
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEditorsColumn.js
More file actions
80 lines (69 loc) · 1.68 KB
/
EditorsColumn.js
File metadata and controls
80 lines (69 loc) · 1.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
import {connect} from 'react-redux';
import EditorsColumn from '../components/EditorsColumn';
import resizableFlex from '../higherOrderComponents/resizableFlex';
import {
getCurrentProject,
getErrors,
getRequestedFocusedLine,
isTextSizeLarge,
} from '../selectors';
import {
currentCursorChanged,
editorFocusedRequestedLine,
hideComponent,
updateProjectSource,
unhideComponent,
editorBlurred,
editorFocused,
} from '../actions';
function mapStateToProps(state) {
return {
currentProject: getCurrentProject(state),
errors: getErrors(state),
isTextSizeLarge: isTextSizeLarge(state),
requestedFocusedLine: getRequestedFocusedLine(state),
};
}
function mapDispatchToProps(dispatch) {
return {
onComponentHide(projectKey, componentName) {
dispatch(hideComponent(projectKey, componentName));
},
onComponentUnhide(projectKey, componentName) {
dispatch(unhideComponent(projectKey, componentName));
},
onEditorInput(projectKey, language, source) {
dispatch(updateProjectSource(projectKey, language, source));
},
onRequestedLineFocused() {
dispatch(editorFocusedRequestedLine());
},
onEditorCursorChange(source, cursor, language) {
dispatch(
currentCursorChanged(
source,
cursor,
language,
),
);
},
onEditorBlurred() {
dispatch(
editorBlurred(),
);
},
onEditorFocused(source, cursor, language) {
dispatch(
editorFocused(
source,
cursor,
language,
),
);
},
};
}
export default connect(
mapStateToProps,
mapDispatchToProps,
)(resizableFlex(3)(EditorsColumn));