aboutsummaryrefslogtreecommitdiffstats
path: root/src/features/workspaces/containers/WorkspacesScreen.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/features/workspaces/containers/WorkspacesScreen.js')
-rw-r--r--src/features/workspaces/containers/WorkspacesScreen.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/features/workspaces/containers/WorkspacesScreen.js b/src/features/workspaces/containers/WorkspacesScreen.js
new file mode 100644
index 000000000..94e714255
--- /dev/null
+++ b/src/features/workspaces/containers/WorkspacesScreen.js
@@ -0,0 +1,33 @@
1import React, { Component } from 'react';
2import { inject, observer } from 'mobx-react';
3import PropTypes from 'prop-types';
4import { workspacesState } from '../state';
5import WorkspacesDashboard from '../components/WorkspacesDashboard';
6import ErrorBoundary from '../../../components/util/ErrorBoundary';
7
8@inject('actions') @observer
9class WorkspacesScreen extends Component {
10 static propTypes = {
11 actions: PropTypes.shape({
12 workspace: PropTypes.shape({
13 edit: PropTypes.func.isRequired,
14 }),
15 }).isRequired,
16 };
17
18 render() {
19 const { actions } = this.props;
20 return (
21 <ErrorBoundary>
22 <WorkspacesDashboard
23 workspaces={workspacesState.workspaces}
24 isLoading={workspacesState.isLoading}
25 onCreateWorkspaceSubmit={data => actions.workspaces.create(data)}
26 onWorkspaceClick={w => actions.workspaces.edit({ workspace: w })}
27 />
28 </ErrorBoundary>
29 );
30 }
31}
32
33export default WorkspacesScreen;