diff options
author | Dominik Guzei <dominik.guzei@gmail.com> | 2019-02-12 14:59:58 +0100 |
---|---|---|
committer | Dominik Guzei <dominik.guzei@gmail.com> | 2019-02-12 15:02:23 +0100 |
commit | 90399cc608b93cc185b0ee1c9b79e98cfafb8bc1 (patch) | |
tree | e8678c71c9ebf10bb0c3ac62291b396c32e686c9 /src | |
parent | setup logic to display workspace edit page (diff) | |
download | ferdium-app-90399cc608b93cc185b0ee1c9b79e98cfafb8bc1.tar.gz ferdium-app-90399cc608b93cc185b0ee1c9b79e98cfafb8bc1.tar.zst ferdium-app-90399cc608b93cc185b0ee1c9b79e98cfafb8bc1.zip |
consolidate workspace feature for further development
Diffstat (limited to 'src')
-rw-r--r-- | src/actions/index.js | 2 | ||||
-rw-r--r-- | src/app.js | 4 | ||||
-rw-r--r-- | src/features/workspaces/actions.js (renamed from src/actions/workspace.js) | 2 | ||||
-rw-r--r-- | src/features/workspaces/components/WorkspaceItem.js (renamed from src/components/settings/workspaces/WorkspaceItem.js) | 2 | ||||
-rw-r--r-- | src/features/workspaces/components/WorkspacesDashboard.js (renamed from src/components/settings/workspaces/WorkspacesDashboard.js) | 2 | ||||
-rw-r--r-- | src/features/workspaces/containers/EditWorkspaceScreen.js (renamed from src/containers/settings/EditWorkspaceScreen.js) | 31 | ||||
-rw-r--r-- | src/features/workspaces/containers/WorkspacesScreen.js (renamed from src/containers/settings/WorkspacesScreen.js) | 8 | ||||
-rw-r--r-- | src/features/workspaces/models/Workspace.js (renamed from src/models/Workspace.js) | 0 | ||||
-rw-r--r-- | src/features/workspaces/store.js | 2 | ||||
-rw-r--r-- | src/features/workspaces/styles/workspaces-table.scss (renamed from src/styles/workspace-table.scss) | 2 | ||||
-rw-r--r-- | src/i18n/locales/de.json | 3 | ||||
-rw-r--r-- | src/i18n/locales/en-US.json | 1 | ||||
-rw-r--r-- | src/styles/main.scss | 2 |
13 files changed, 43 insertions, 18 deletions
diff --git a/src/actions/index.js b/src/actions/index.js index a406af50a..45e6da515 100644 --- a/src/actions/index.js +++ b/src/actions/index.js | |||
@@ -11,7 +11,7 @@ import payment from './payment'; | |||
11 | import news from './news'; | 11 | import news from './news'; |
12 | import settings from './settings'; | 12 | import settings from './settings'; |
13 | import requests from './requests'; | 13 | import requests from './requests'; |
14 | import workspace from './workspace'; | 14 | import workspace from '../features/workspaces/actions'; |
15 | 15 | ||
16 | const actions = Object.assign({}, { | 16 | const actions = Object.assign({}, { |
17 | service, | 17 | service, |
diff --git a/src/app.js b/src/app.js index 320ba679f..d3b540f62 100644 --- a/src/app.js +++ b/src/app.js | |||
@@ -39,8 +39,8 @@ import PricingScreen from './containers/auth/PricingScreen'; | |||
39 | import InviteScreen from './containers/auth/InviteScreen'; | 39 | import InviteScreen from './containers/auth/InviteScreen'; |
40 | import AuthLayoutContainer from './containers/auth/AuthLayoutContainer'; | 40 | import AuthLayoutContainer from './containers/auth/AuthLayoutContainer'; |
41 | import SubscriptionPopupScreen from './containers/subscription/SubscriptionPopupScreen'; | 41 | import SubscriptionPopupScreen from './containers/subscription/SubscriptionPopupScreen'; |
42 | import WorkspacesScreen from './containers/settings/WorkspacesScreen'; | 42 | import WorkspacesScreen from './features/workspaces/containers/WorkspacesScreen'; |
43 | import EditWorkspaceScreen from './containers/settings/EditWorkspaceScreen'; | 43 | import EditWorkspaceScreen from './features/workspaces/containers/EditWorkspaceScreen'; |
44 | 44 | ||
45 | // Add Polyfills | 45 | // Add Polyfills |
46 | smoothScroll.polyfill(); | 46 | smoothScroll.polyfill(); |
diff --git a/src/actions/workspace.js b/src/features/workspaces/actions.js index ab07a96c0..30866af96 100644 --- a/src/actions/workspace.js +++ b/src/features/workspaces/actions.js | |||
@@ -1,5 +1,5 @@ | |||
1 | import PropTypes from 'prop-types'; | 1 | import PropTypes from 'prop-types'; |
2 | import Workspace from '../models/Workspace'; | 2 | import Workspace from './models/Workspace'; |
3 | 3 | ||
4 | export default { | 4 | export default { |
5 | edit: { | 5 | edit: { |
diff --git a/src/components/settings/workspaces/WorkspaceItem.js b/src/features/workspaces/components/WorkspaceItem.js index 088d61433..b2c2a4830 100644 --- a/src/components/settings/workspaces/WorkspaceItem.js +++ b/src/features/workspaces/components/WorkspaceItem.js | |||
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; | |||
3 | import { intlShape } from 'react-intl'; | 3 | import { intlShape } from 'react-intl'; |
4 | import { observer } from 'mobx-react'; | 4 | import { observer } from 'mobx-react'; |
5 | import classnames from 'classnames'; | 5 | import classnames from 'classnames'; |
6 | import Workspace from '../../../models/Workspace'; | 6 | import Workspace from '../models/Workspace'; |
7 | 7 | ||
8 | // const messages = defineMessages({}); | 8 | // const messages = defineMessages({}); |
9 | 9 | ||
diff --git a/src/components/settings/workspaces/WorkspacesDashboard.js b/src/features/workspaces/components/WorkspacesDashboard.js index a5bb18cb7..2a8b3a5ee 100644 --- a/src/components/settings/workspaces/WorkspacesDashboard.js +++ b/src/features/workspaces/components/WorkspacesDashboard.js | |||
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; | |||
3 | import { observer, PropTypes as MobxPropTypes } from 'mobx-react'; | 3 | import { observer, PropTypes as MobxPropTypes } from 'mobx-react'; |
4 | import { defineMessages, intlShape } from 'react-intl'; | 4 | import { defineMessages, intlShape } from 'react-intl'; |
5 | 5 | ||
6 | import Loader from '../../ui/Loader'; | 6 | import Loader from '../../../components/ui/Loader'; |
7 | import WorkspaceItem from './WorkspaceItem'; | 7 | import WorkspaceItem from './WorkspaceItem'; |
8 | 8 | ||
9 | const messages = defineMessages({ | 9 | const messages = defineMessages({ |
diff --git a/src/containers/settings/EditWorkspaceScreen.js b/src/features/workspaces/containers/EditWorkspaceScreen.js index 665b405bd..d8c52f586 100644 --- a/src/containers/settings/EditWorkspaceScreen.js +++ b/src/features/workspaces/containers/EditWorkspaceScreen.js | |||
@@ -1,16 +1,21 @@ | |||
1 | import React, { Component } from 'react'; | 1 | import React, { Component } from 'react'; |
2 | import { inject, observer } from 'mobx-react'; | 2 | import { inject, observer } from 'mobx-react'; |
3 | import { defineMessages, intlShape } from 'react-intl'; | 3 | import { defineMessages, intlShape } from 'react-intl'; |
4 | import Form from '../../lib/Form'; | 4 | import { Link } from 'react-router'; |
5 | import ErrorBoundary from '../../components/util/ErrorBoundary'; | 5 | import Form from '../../../lib/Form'; |
6 | import { gaPage } from '../../lib/analytics'; | 6 | import ErrorBoundary from '../../../components/util/ErrorBoundary'; |
7 | import { state } from '../../features/workspaces/state'; | 7 | import { gaPage } from '../../../lib/analytics'; |
8 | import { state } from '../state'; | ||
8 | 9 | ||
9 | const messages = defineMessages({ | 10 | const messages = defineMessages({ |
10 | name: { | 11 | name: { |
11 | id: 'settings.workspace.form.name', | 12 | id: 'settings.workspace.form.name', |
12 | defaultMessage: '!!!Name', | 13 | defaultMessage: '!!!Name', |
13 | }, | 14 | }, |
15 | yourWorkspaces: { | ||
16 | id: 'settings.workspace.form.yourWorkspaces', | ||
17 | defaultMessage: '!!!Your workspaces', | ||
18 | }, | ||
14 | }); | 19 | }); |
15 | 20 | ||
16 | @inject('stores', 'actions') @observer | 21 | @inject('stores', 'actions') @observer |
@@ -38,6 +43,7 @@ class EditWorkspaceScreen extends Component { | |||
38 | } | 43 | } |
39 | 44 | ||
40 | render() { | 45 | render() { |
46 | const { intl } = this.context; | ||
41 | const { workspaceBeingEdited } = state; | 47 | const { workspaceBeingEdited } = state; |
42 | if (!workspaceBeingEdited) return null; | 48 | if (!workspaceBeingEdited) return null; |
43 | 49 | ||
@@ -45,7 +51,22 @@ class EditWorkspaceScreen extends Component { | |||
45 | 51 | ||
46 | return ( | 52 | return ( |
47 | <ErrorBoundary> | 53 | <ErrorBoundary> |
48 | <div>{workspaceBeingEdited.name}</div> | 54 | <div className="settings__main"> |
55 | <div className="settings__header"> | ||
56 | <span className="settings__header-item"> | ||
57 | <Link to="/settings/workspaces"> | ||
58 | {intl.formatMessage(messages.yourWorkspaces)} | ||
59 | </Link> | ||
60 | </span> | ||
61 | <span className="separator" /> | ||
62 | <span className="settings__header-item"> | ||
63 | {workspaceBeingEdited.name} | ||
64 | </span> | ||
65 | </div> | ||
66 | <div className="settings__body"> | ||
67 | test | ||
68 | </div> | ||
69 | </div> | ||
49 | </ErrorBoundary> | 70 | </ErrorBoundary> |
50 | ); | 71 | ); |
51 | } | 72 | } |
diff --git a/src/containers/settings/WorkspacesScreen.js b/src/features/workspaces/containers/WorkspacesScreen.js index 5e91f7673..f129edec5 100644 --- a/src/containers/settings/WorkspacesScreen.js +++ b/src/features/workspaces/containers/WorkspacesScreen.js | |||
@@ -1,10 +1,10 @@ | |||
1 | import React, { Component } from 'react'; | 1 | import React, { Component } from 'react'; |
2 | import { inject, observer } from 'mobx-react'; | 2 | import { inject, observer } from 'mobx-react'; |
3 | import PropTypes from 'prop-types'; | 3 | import PropTypes from 'prop-types'; |
4 | import { gaPage } from '../../lib/analytics'; | 4 | import { gaPage } from '../../../lib/analytics'; |
5 | import { state } from '../../features/workspaces/state'; | 5 | import { state } from '../state'; |
6 | import WorkspacesDashboard from '../../components/settings/workspaces/WorkspacesDashboard'; | 6 | import WorkspacesDashboard from '../components/WorkspacesDashboard'; |
7 | import ErrorBoundary from '../../components/util/ErrorBoundary'; | 7 | import ErrorBoundary from '../../../components/util/ErrorBoundary'; |
8 | 8 | ||
9 | @inject('actions') @observer | 9 | @inject('actions') @observer |
10 | class WorkspacesScreen extends Component { | 10 | class WorkspacesScreen extends Component { |
diff --git a/src/models/Workspace.js b/src/features/workspaces/models/Workspace.js index ede2710dc..ede2710dc 100644 --- a/src/models/Workspace.js +++ b/src/features/workspaces/models/Workspace.js | |||
diff --git a/src/features/workspaces/store.js b/src/features/workspaces/store.js index aab66708b..ea61cec31 100644 --- a/src/features/workspaces/store.js +++ b/src/features/workspaces/store.js | |||
@@ -1,7 +1,7 @@ | |||
1 | import { observable, reaction } from 'mobx'; | 1 | import { observable, reaction } from 'mobx'; |
2 | import Store from '../../stores/lib/Store'; | 2 | import Store from '../../stores/lib/Store'; |
3 | import CachedRequest from '../../stores/lib/CachedRequest'; | 3 | import CachedRequest from '../../stores/lib/CachedRequest'; |
4 | import Workspace from '../../models/Workspace'; | 4 | import Workspace from './models/Workspace'; |
5 | import { matchRoute } from '../../helpers/routing-helpers'; | 5 | import { matchRoute } from '../../helpers/routing-helpers'; |
6 | 6 | ||
7 | const debug = require('debug')('Franz:feature:workspaces'); | 7 | const debug = require('debug')('Franz:feature:workspaces'); |
diff --git a/src/styles/workspace-table.scss b/src/features/workspaces/styles/workspaces-table.scss index 05ebfa629..6d0e7b4f5 100644 --- a/src/styles/workspace-table.scss +++ b/src/features/workspaces/styles/workspaces-table.scss | |||
@@ -1,4 +1,4 @@ | |||
1 | @import './config.scss'; | 1 | @import '../../../styles/config'; |
2 | 2 | ||
3 | .theme__dark .workspace-table { | 3 | .theme__dark .workspace-table { |
4 | .workspace-table__column-info .mdi { color: $dark-theme-gray-lightest; } | 4 | .workspace-table__column-info .mdi { color: $dark-theme-gray-lightest; } |
diff --git a/src/i18n/locales/de.json b/src/i18n/locales/de.json index b5abb56d4..5cb8c6bd3 100644 --- a/src/i18n/locales/de.json +++ b/src/i18n/locales/de.json | |||
@@ -158,6 +158,7 @@ | |||
158 | "settings.navigation.logout" : "Abmelden", | 158 | "settings.navigation.logout" : "Abmelden", |
159 | "settings.navigation.settings" : "Einstellungen", | 159 | "settings.navigation.settings" : "Einstellungen", |
160 | "settings.navigation.yourServices" : "Deine Dienste", | 160 | "settings.navigation.yourServices" : "Deine Dienste", |
161 | "settings.navigation.yourWorkspaces": "Deine Workspaces", | ||
161 | "settings.recipes.all" : "Alle Dienste", | 162 | "settings.recipes.all" : "Alle Dienste", |
162 | "settings.recipes.dev" : "Entwicklung", | 163 | "settings.recipes.dev" : "Entwicklung", |
163 | "settings.recipes.headline" : "Verfügbare Dienste", | 164 | "settings.recipes.headline" : "Verfügbare Dienste", |
@@ -216,6 +217,8 @@ | |||
216 | "settings.services.tooltip.isMuted" : "Alle Töne sind deaktiviert", | 217 | "settings.services.tooltip.isMuted" : "Alle Töne sind deaktiviert", |
217 | "settings.services.tooltip.notificationsDisabled" : "Benachrichtigungen deaktiviert", | 218 | "settings.services.tooltip.notificationsDisabled" : "Benachrichtigungen deaktiviert", |
218 | "settings.services.updatedInfo" : "Deine Änderungen wurden gespeichert", | 219 | "settings.services.updatedInfo" : "Deine Änderungen wurden gespeichert", |
220 | "settings.workspaces.headline": "Deine Workspaces", | ||
221 | "settings.workspace.form.yourWorkspaces": "Deine Workspaces", | ||
219 | "settings.user.form.accountType.company" : "Firma", | 222 | "settings.user.form.accountType.company" : "Firma", |
220 | "settings.user.form.accountType.individual" : "Einzelperson", | 223 | "settings.user.form.accountType.individual" : "Einzelperson", |
221 | "settings.user.form.accountType.label" : "Konto-Typ", | 224 | "settings.user.form.accountType.label" : "Konto-Typ", |
diff --git a/src/i18n/locales/en-US.json b/src/i18n/locales/en-US.json index 1652b5585..9b323e323 100644 --- a/src/i18n/locales/en-US.json +++ b/src/i18n/locales/en-US.json | |||
@@ -197,6 +197,7 @@ | |||
197 | "settings.user.form.accountType.non-profit": "Non-Profit", | 197 | "settings.user.form.accountType.non-profit": "Non-Profit", |
198 | "settings.user.form.accountType.company": "Company", | 198 | "settings.user.form.accountType.company": "Company", |
199 | "settings.workspaces.headline": "Your workspaces", | 199 | "settings.workspaces.headline": "Your workspaces", |
200 | "settings.workspace.form.yourWorkspaces": "Your workspaces", | ||
200 | "subscription.type.free": "free", | 201 | "subscription.type.free": "free", |
201 | "subscription.type.month": "month", | 202 | "subscription.type.month": "month", |
202 | "subscription.type.year": "year", | 203 | "subscription.type.year": "year", |
diff --git a/src/styles/main.scss b/src/styles/main.scss index 30f43532f..a941d89d0 100644 --- a/src/styles/main.scss +++ b/src/styles/main.scss | |||
@@ -30,7 +30,7 @@ $mdi-font-path: '../node_modules/mdi/fonts'; | |||
30 | @import './content-tabs.scss'; | 30 | @import './content-tabs.scss'; |
31 | @import './invite.scss'; | 31 | @import './invite.scss'; |
32 | @import './title-bar.scss'; | 32 | @import './title-bar.scss'; |
33 | @import './workspace-table.scss'; | 33 | @import '../features/workspaces/styles/workspaces-table'; |
34 | 34 | ||
35 | // form | 35 | // form |
36 | @import './input.scss'; | 36 | @import './input.scss'; |