console

- - +
+ + + +
{childrenToDisplay} @@ -99,7 +104,7 @@ class Console extends React.Component { } Console.propTypes = { - consoleEvent: PropTypes.array, + consoleLines: PropTypes.array, isPlaying: PropTypes.bool.isRequired, isExpanded: PropTypes.bool.isRequired, collapseConsole: PropTypes.func.isRequired, diff --git a/client/modules/IDE/pages/IDEView.jsx b/client/modules/IDE/pages/IDEView.jsx index dbe4fd5d..ab9dabb7 100644 --- a/client/modules/IDE/pages/IDEView.jsx +++ b/client/modules/IDE/pages/IDEView.jsx @@ -23,6 +23,7 @@ import * as EditorAccessibilityActions from '../actions/editorAccessibility'; import * as PreferencesActions from '../actions/preferences'; import * as UserActions from '../../User/actions'; import * as ToastActions from '../actions/toast'; +import * as ConsoleActions from '../actions/console'; import { getHTMLFile } from '../reducers/files'; import SplitPane from 'react-split-pane'; import Overlay from '../../App/components/Overlay'; @@ -323,7 +324,7 @@ class IDEView extends React.Component { collapseSidebar={this.props.collapseSidebar} /> { + switch (action.type) { + case ActionTypes.CONSOLE_EVENT: + return [...state, action.event].slice(-consoleMax); + case ActionTypes.CLEAR_CONSOLE: + return []; + default: + return state; + } +}; + +export default console; diff --git a/client/modules/IDE/reducers/ide.js b/client/modules/IDE/reducers/ide.js index 4b20092f..007ace9e 100644 --- a/client/modules/IDE/reducers/ide.js +++ b/client/modules/IDE/reducers/ide.js @@ -3,7 +3,6 @@ import * as ActionTypes from '../../../constants'; const initialState = { isPlaying: false, isTextOutputPlaying: false, - consoleEvent: [], modalIsVisible: false, sidebarIsExpanded: false, consoleIsExpanded: true, diff --git a/client/reducers.js b/client/reducers.js index f3a433d3..b31912e8 100644 --- a/client/reducers.js +++ b/client/reducers.js @@ -7,6 +7,7 @@ import editorAccessibility from './modules/IDE/reducers/editorAccessibility'; import user from './modules/User/reducers'; import sketches from './modules/IDE/reducers/projects'; import toast from './modules/IDE/reducers/toast'; +import console from './modules/IDE/reducers/console'; import { reducer as form } from 'redux-form'; const rootReducer = combineReducers({ @@ -18,7 +19,8 @@ const rootReducer = combineReducers({ project, sketches, editorAccessibility, - toast + toast, + console }); export default rootReducer;