diff options
author | Dominik Guzei <dominik.guzei@gmail.com> | 2019-02-26 15:29:34 +0100 |
---|---|---|
committer | Dominik Guzei <dominik.guzei@gmail.com> | 2019-02-26 15:29:34 +0100 |
commit | dca7437b45c8eb67692a1df563fb4e969826b1cc (patch) | |
tree | 781bc8f5e99bce0e42b16018517725900bfef86d /src/features/workspaces/containers/EditWorkspaceScreen.js | |
parent | improve workspace form setup (diff) | |
download | ferdium-app-dca7437b45c8eb67692a1df563fb4e969826b1cc.tar.gz ferdium-app-dca7437b45c8eb67692a1df563fb4e969826b1cc.tar.zst ferdium-app-dca7437b45c8eb67692a1df563fb4e969826b1cc.zip |
finish basic workspace settings
Diffstat (limited to 'src/features/workspaces/containers/EditWorkspaceScreen.js')
-rw-r--r-- | src/features/workspaces/containers/EditWorkspaceScreen.js | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/features/workspaces/containers/EditWorkspaceScreen.js b/src/features/workspaces/containers/EditWorkspaceScreen.js index 17b723303..790b8a0fe 100644 --- a/src/features/workspaces/containers/EditWorkspaceScreen.js +++ b/src/features/workspaces/containers/EditWorkspaceScreen.js | |||
@@ -5,6 +5,8 @@ import PropTypes from 'prop-types'; | |||
5 | import ErrorBoundary from '../../../components/util/ErrorBoundary'; | 5 | import ErrorBoundary from '../../../components/util/ErrorBoundary'; |
6 | import EditWorkspaceForm from '../components/EditWorkspaceForm'; | 6 | import EditWorkspaceForm from '../components/EditWorkspaceForm'; |
7 | import { state } from '../state'; | 7 | import { state } from '../state'; |
8 | import ServicesStore from '../../../stores/ServicesStore'; | ||
9 | import Workspace from '../models/Workspace'; | ||
8 | 10 | ||
9 | @inject('stores', 'actions') @observer | 11 | @inject('stores', 'actions') @observer |
10 | class EditWorkspaceScreen extends Component { | 12 | class EditWorkspaceScreen extends Component { |
@@ -14,6 +16,9 @@ class EditWorkspaceScreen extends Component { | |||
14 | delete: PropTypes.func.isRequired, | 16 | delete: PropTypes.func.isRequired, |
15 | }), | 17 | }), |
16 | }).isRequired, | 18 | }).isRequired, |
19 | stores: PropTypes.shape({ | ||
20 | services: PropTypes.instanceOf(ServicesStore).isRequired, | ||
21 | }).isRequired, | ||
17 | }; | 22 | }; |
18 | 23 | ||
19 | onDelete = () => { | 24 | onDelete = () => { |
@@ -24,16 +29,23 @@ class EditWorkspaceScreen extends Component { | |||
24 | }; | 29 | }; |
25 | 30 | ||
26 | onSave = (values) => { | 31 | onSave = (values) => { |
27 | console.log('save workspace', values); | 32 | const { workspaceBeingEdited } = state; |
33 | const { actions } = this.props; | ||
34 | const workspace = new Workspace( | ||
35 | Object.assign({}, workspaceBeingEdited, values), | ||
36 | ); | ||
37 | actions.workspace.update({ workspace }); | ||
28 | }; | 38 | }; |
29 | 39 | ||
30 | render() { | 40 | render() { |
31 | const { workspaceBeingEdited } = state; | 41 | const { workspaceBeingEdited } = state; |
42 | const { stores } = this.props; | ||
32 | if (!workspaceBeingEdited) return null; | 43 | if (!workspaceBeingEdited) return null; |
33 | return ( | 44 | return ( |
34 | <ErrorBoundary> | 45 | <ErrorBoundary> |
35 | <EditWorkspaceForm | 46 | <EditWorkspaceForm |
36 | workspace={workspaceBeingEdited} | 47 | workspace={workspaceBeingEdited} |
48 | services={stores.services.all} | ||
37 | onDelete={this.onDelete} | 49 | onDelete={this.onDelete} |
38 | onSave={this.onSave} | 50 | onSave={this.onSave} |
39 | isDeleting={false} | 51 | isDeleting={false} |