Skip to content
Snippets Groups Projects
Commit 24903093 authored by Mathias Maaß's avatar Mathias Maaß
Browse files

Divide <Workspace/> into component and container (part of #1727).

parent 8f6df5bf
No related branches found
No related tags found
No related merge requests found
import React from 'react'; import React from 'react';
import { shallow } from 'enzyme'; import { shallow } from 'enzyme';
import { Workspace } from '../../../src/components/Workspace'; import Workspace from '../../../src/components/Workspace';
import ConnectedWindow from '../../../src/components/Window'; import ConnectedWindow from '../../../src/components/Window';
describe('Workspace', () => { describe('Workspace', () => {
......
...@@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; ...@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
import CssBaseline from '@material-ui/core/CssBaseline'; import CssBaseline from '@material-ui/core/CssBaseline';
import Fullscreen from 'react-fullscreen-crossbrowser'; import Fullscreen from 'react-fullscreen-crossbrowser';
import WorkspaceControlPanel from './WorkspaceControlPanel'; import WorkspaceControlPanel from './WorkspaceControlPanel';
import ConnectedWorkspace from './Workspace'; import Workspace from '../containers/Workspace';
import ns from '../config/css-ns'; import ns from '../config/css-ns';
/** /**
...@@ -24,7 +24,7 @@ class App extends Component { ...@@ -24,7 +24,7 @@ class App extends Component {
enabled={workspace.fullscreen} enabled={workspace.fullscreen}
onChange={isFullscreenEnabled => fullscreenWorkspace(isFullscreenEnabled)} onChange={isFullscreenEnabled => fullscreenWorkspace(isFullscreenEnabled)}
> >
<ConnectedWorkspace /> <Workspace />
</Fullscreen> </Fullscreen>
<WorkspaceControlPanel /> <WorkspaceControlPanel />
</div> </div>
......
import React from 'react'; import React from 'react';
import { compose } from 'redux';
import { connect } from 'react-redux';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import ConnectedWindow from './Window'; import ConnectedWindow from './Window';
import ns from '../config/css-ns'; import ns from '../config/css-ns';
...@@ -10,7 +8,7 @@ import ns from '../config/css-ns'; ...@@ -10,7 +8,7 @@ import ns from '../config/css-ns';
* @memberof Workspace * @memberof Workspace
* @private * @private
*/ */
export class Workspace extends React.Component { class Workspace extends React.Component {
/** /**
* render * render
*/ */
...@@ -35,20 +33,4 @@ Workspace.propTypes = { ...@@ -35,20 +33,4 @@ Workspace.propTypes = {
windows: PropTypes.object.isRequired, // eslint-disable-line react/forbid-prop-types windows: PropTypes.object.isRequired, // eslint-disable-line react/forbid-prop-types
}; };
/** export default Workspace;
* mapStateToProps - to hook up connect
* @memberof Workspace
* @private
*/
const mapStateToProps = state => (
{
windows: state.windows,
}
);
const enhance = compose(
connect(mapStateToProps),
// further HOC go here
);
export default enhance(Workspace);
import { compose } from 'redux';
import { connect } from 'react-redux';
import Workspace from '../components/Workspace';
/**
* mapStateToProps - to hook up connect
* @memberof Workspace
* @private
*/
const mapStateToProps = state => (
{
windows: state.windows,
}
);
const enhance = compose(
connect(mapStateToProps),
// further HOC go here
);
export default enhance(Workspace);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment