diff options
author | Dominik Guzei <dominik.guzei@gmail.com> | 2019-04-07 19:50:40 +0200 |
---|---|---|
committer | Dominik Guzei <dominik.guzei@gmail.com> | 2019-04-07 19:50:40 +0200 |
commit | b3afb9f45d47ebc352b28eb106b22fffc2f17707 (patch) | |
tree | 1cdcd243eba4e797c75747379f2ed8ad8a392cdc /packages | |
parent | refactor workspace table css away from legacy styles (diff) | |
download | ferdium-app-b3afb9f45d47ebc352b28eb106b22fffc2f17707.tar.gz ferdium-app-b3afb9f45d47ebc352b28eb106b22fffc2f17707.tar.zst ferdium-app-b3afb9f45d47ebc352b28eb106b22fffc2f17707.zip |
render workspace service list like services + toggle
Diffstat (limited to 'packages')
-rw-r--r-- | packages/forms/src/input/index.tsx | 1 | ||||
-rw-r--r-- | packages/forms/src/input/styles.ts | 5 | ||||
-rw-r--r-- | packages/forms/src/label/styles.ts | 4 | ||||
-rw-r--r-- | packages/forms/src/select/index.tsx | 6 | ||||
-rw-r--r-- | packages/forms/src/toggle/index.tsx | 4 | ||||
-rw-r--r-- | packages/theme/src/themes/dark/index.ts | 52 | ||||
-rw-r--r-- | packages/theme/src/themes/default/index.ts | 57 |
7 files changed, 121 insertions, 8 deletions
diff --git a/packages/forms/src/input/index.tsx b/packages/forms/src/input/index.tsx index f89c91be5..e410f8fef 100644 --- a/packages/forms/src/input/index.tsx +++ b/packages/forms/src/input/index.tsx | |||
@@ -131,6 +131,7 @@ class InputComponent extends Component<IProps, IState> { | |||
131 | title={label} | 131 | title={label} |
132 | showLabel={showLabel} | 132 | showLabel={showLabel} |
133 | htmlFor={id} | 133 | htmlFor={id} |
134 | className={classes.label} | ||
134 | > | 135 | > |
135 | <div | 136 | <div |
136 | className={classnames({ | 137 | className={classnames({ |
diff --git a/packages/forms/src/input/styles.ts b/packages/forms/src/input/styles.ts index a64d2c340..2f7ea65f2 100644 --- a/packages/forms/src/input/styles.ts +++ b/packages/forms/src/input/styles.ts | |||
@@ -10,6 +10,11 @@ const prefixStyles = (theme: Theme) => ({ | |||
10 | }); | 10 | }); |
11 | 11 | ||
12 | export default (theme: Theme) => ({ | 12 | export default (theme: Theme) => ({ |
13 | label: { | ||
14 | '& > div': { | ||
15 | marginTop: 5, | ||
16 | } | ||
17 | }, | ||
13 | disabled: { | 18 | disabled: { |
14 | opacity: theme.inputDisabledOpacity, | 19 | opacity: theme.inputDisabledOpacity, |
15 | }, | 20 | }, |
diff --git a/packages/forms/src/label/styles.ts b/packages/forms/src/label/styles.ts index f3998de04..c64c9b285 100644 --- a/packages/forms/src/label/styles.ts +++ b/packages/forms/src/label/styles.ts | |||
@@ -1,9 +1,7 @@ | |||
1 | import { Theme } from '../../../theme/lib'; | 1 | import { Theme } from '../../../theme/lib'; |
2 | 2 | ||
3 | export default (theme: Theme) => ({ | 3 | export default (theme: Theme) => ({ |
4 | content: { | 4 | content: {}, |
5 | marginTop: 5, | ||
6 | }, | ||
7 | label: { | 5 | label: { |
8 | color: theme.labelColor, | 6 | color: theme.labelColor, |
9 | fontSize: theme.uiFontSize, | 7 | fontSize: theme.uiFontSize, |
diff --git a/packages/forms/src/select/index.tsx b/packages/forms/src/select/index.tsx index 4a9e3c56e..cfbe91dda 100644 --- a/packages/forms/src/select/index.tsx +++ b/packages/forms/src/select/index.tsx | |||
@@ -56,6 +56,11 @@ const styles = (theme: Theme) => ({ | |||
56 | textAlign: 'left', | 56 | textAlign: 'left', |
57 | color: theme.selectColor, | 57 | color: theme.selectColor, |
58 | }, | 58 | }, |
59 | label: { | ||
60 | '& > div': { | ||
61 | marginTop: 5, | ||
62 | } | ||
63 | }, | ||
59 | popup: { | 64 | popup: { |
60 | opacity: 0, | 65 | opacity: 0, |
61 | height: 0, | 66 | height: 0, |
@@ -334,6 +339,7 @@ class SelectComponent extends Component<IProps> { | |||
334 | title={label} | 339 | title={label} |
335 | showLabel={showLabel} | 340 | showLabel={showLabel} |
336 | htmlFor={id} | 341 | htmlFor={id} |
342 | className={classes.label} | ||
337 | > | 343 | > |
338 | <div | 344 | <div |
339 | className={classnames({ | 345 | className={classnames({ |
diff --git a/packages/forms/src/toggle/index.tsx b/packages/forms/src/toggle/index.tsx index 6487f1d07..d84508a5f 100644 --- a/packages/forms/src/toggle/index.tsx +++ b/packages/forms/src/toggle/index.tsx | |||
@@ -1,7 +1,7 @@ | |||
1 | import { Theme } from '@meetfranz/theme'; | 1 | import { Theme } from '@meetfranz/theme'; |
2 | import classnames from 'classnames'; | 2 | import classnames from 'classnames'; |
3 | import CSS from 'csstype'; | 3 | import CSS from 'csstype'; |
4 | import React, { Component, createRef } from 'react'; | 4 | import React, { Component } from 'react'; |
5 | import injectStyle from 'react-jss'; | 5 | import injectStyle from 'react-jss'; |
6 | 6 | ||
7 | import { IFormField, IWithStyle, Omit } from '../typings/generic'; | 7 | import { IFormField, IWithStyle, Omit } from '../typings/generic'; |
@@ -45,11 +45,11 @@ const styles = (theme: Theme) => ({ | |||
45 | }, | 45 | }, |
46 | toggleLabel: { | 46 | toggleLabel: { |
47 | display: 'flex', | 47 | display: 'flex', |
48 | alignItems: 'center', | ||
48 | 49 | ||
49 | '& > span': { | 50 | '& > span': { |
50 | order: 1, | 51 | order: 1, |
51 | marginLeft: 15, | 52 | marginLeft: 15, |
52 | marginTop: 2, | ||
53 | }, | 53 | }, |
54 | }, | 54 | }, |
55 | }); | 55 | }); |
diff --git a/packages/theme/src/themes/dark/index.ts b/packages/theme/src/themes/dark/index.ts index a9d1e1b46..73ffa7f5e 100644 --- a/packages/theme/src/themes/dark/index.ts +++ b/packages/theme/src/themes/dark/index.ts | |||
@@ -1,4 +1,5 @@ | |||
1 | import color from 'color'; | 1 | import color from 'color'; |
2 | import { merge, cloneDeep } from 'lodash'; | ||
2 | 3 | ||
3 | import * as defaultStyles from '../default'; | 4 | import * as defaultStyles from '../default'; |
4 | import * as legacyStyles from '../legacy'; | 5 | import * as legacyStyles from '../legacy'; |
@@ -64,11 +65,51 @@ export const selectSearchColor = inputBackground; | |||
64 | // Modal | 65 | // Modal |
65 | export const colorModalOverlayBackground = color(legacyStyles.darkThemeBlack).alpha(0.8).rgb().string(); | 66 | export const colorModalOverlayBackground = color(legacyStyles.darkThemeBlack).alpha(0.8).rgb().string(); |
66 | 67 | ||
68 | // Services | ||
69 | export const services = merge({}, defaultStyles.services, { | ||
70 | listItems: { | ||
71 | borderColor: legacyStyles.darkThemeGrayDarker, | ||
72 | hoverBgColor: legacyStyles.darkThemeGrayDarker, | ||
73 | disabled: { | ||
74 | color: legacyStyles.darkThemeGray, | ||
75 | }, | ||
76 | }, | ||
77 | }); | ||
78 | |||
79 | // Workspaces | ||
80 | const drawerBg = color(colorBackground).lighten(0.3).hex(); | ||
81 | |||
82 | export const workspaces = merge({}, defaultStyles.workspaces, { | ||
83 | settings: { | ||
84 | listItems: cloneDeep(services.listItems), | ||
85 | }, | ||
86 | drawer: { | ||
87 | background: drawerBg, | ||
88 | addButton: { | ||
89 | color: legacyStyles.darkThemeGrayLighter, | ||
90 | hoverColor: legacyStyles.darkThemeGraySmoke, | ||
91 | }, | ||
92 | listItem: { | ||
93 | border: color(drawerBg).lighten(0.2).hex(), | ||
94 | hoverBackground: color(drawerBg).lighten(0.2).hex(), | ||
95 | activeBackground: defaultStyles.brandPrimary, | ||
96 | name: { | ||
97 | color: colorText, | ||
98 | activeColor: 'white', | ||
99 | }, | ||
100 | services: { | ||
101 | color: color(colorText).darken(0.5).hex(), | ||
102 | active: color(defaultStyles.brandPrimary).lighten(0.5).hex(), | ||
103 | }, | ||
104 | }, | ||
105 | }, | ||
106 | }); | ||
107 | |||
67 | // Workspace settings | 108 | // Workspace settings |
68 | export const workspaceSettings = { | 109 | export const workspaceSettings = merge({}, defaultStyles.workspaceSettings, { |
69 | listItemBorderColor: legacyStyles.darkThemeGrayDarker, | 110 | listItemBorderColor: legacyStyles.darkThemeGrayDarker, |
70 | listItemHoverBgColor: legacyStyles.darkThemeGrayDarker, | 111 | listItemHoverBgColor: legacyStyles.darkThemeGrayDarker, |
71 | }; | 112 | }); |
72 | 113 | ||
73 | // Workspace Drawer | 114 | // Workspace Drawer |
74 | export const workspaceDrawerBackground = color(colorBackground).lighten(0.3).hex(); | 115 | export const workspaceDrawerBackground = color(colorBackground).lighten(0.3).hex(); |
@@ -81,3 +122,10 @@ export const workspaceDrawerItemNameColor = colorText; | |||
81 | export const workspaceDrawerItemNameActiveColor = 'white'; | 122 | export const workspaceDrawerItemNameActiveColor = 'white'; |
82 | export const workspaceDrawerServicesColor = color(colorText).darken(0.5).hex(); | 123 | export const workspaceDrawerServicesColor = color(colorText).darken(0.5).hex(); |
83 | export const workspaceDrawerServicesActiveColor = color(defaultStyles.brandPrimary).lighten(0.5).hex(); | 124 | export const workspaceDrawerServicesActiveColor = color(defaultStyles.brandPrimary).lighten(0.5).hex(); |
125 | |||
126 | // Service Icon | ||
127 | export const serviceIcon = merge({}, defaultStyles.serviceIcon, { | ||
128 | isCustom: { | ||
129 | border: `1px solid ${legacyStyles.darkThemeGrayDark}`, | ||
130 | }, | ||
131 | }); | ||
diff --git a/packages/theme/src/themes/default/index.ts b/packages/theme/src/themes/default/index.ts index e4c74a5c9..d2b9014b4 100644 --- a/packages/theme/src/themes/default/index.ts +++ b/packages/theme/src/themes/default/index.ts | |||
@@ -1,4 +1,5 @@ | |||
1 | import color from 'color'; | 1 | import color from 'color'; |
2 | import { cloneDeep } from 'lodash'; | ||
2 | 3 | ||
3 | import * as legacyStyles from '../legacy'; | 4 | import * as legacyStyles from '../legacy'; |
4 | 5 | ||
@@ -143,8 +144,52 @@ export const badgeBorderRadius = 50; | |||
143 | // Modal | 144 | // Modal |
144 | export const colorModalOverlayBackground = color('#000').alpha(0.5).rgb().string(); | 145 | export const colorModalOverlayBackground = color('#000').alpha(0.5).rgb().string(); |
145 | 146 | ||
146 | // Workspace settings | 147 | // Services |
148 | export const services = { | ||
149 | listItems: { | ||
150 | padding: 10, | ||
151 | height: 57, | ||
152 | borderColor: legacyStyles.themeGrayLightest, | ||
153 | hoverBgColor: legacyStyles.themeGrayLightest, | ||
154 | disabled: { | ||
155 | color: legacyStyles.themeGrayLight, | ||
156 | }, | ||
157 | }, | ||
158 | }; | ||
159 | |||
160 | // Workspaces | ||
161 | const drawerBg = color(colorBackground).lighten(0.1).hex(); | ||
162 | |||
163 | export const workspaces = { | ||
164 | settings: { | ||
165 | listItems: cloneDeep(services.listItems), | ||
166 | }, | ||
167 | drawer: { | ||
168 | width: 300, | ||
169 | padding: 20, | ||
170 | background: drawerBg, | ||
171 | addButton: { | ||
172 | color: legacyStyles.themeGrayLight, | ||
173 | hoverColor: color(legacyStyles.themeGrayLight).lighten(0.1).hex(), | ||
174 | }, | ||
175 | listItem: { | ||
176 | hoverBackground: color(drawerBg).darken(0.01).hex(), | ||
177 | activeBackground: legacyStyles.themeGrayLightest, | ||
178 | border: color(drawerBg).darken(0.05).hex(), | ||
179 | name: { | ||
180 | color: colorText, | ||
181 | activeColor: colorText, | ||
182 | }, | ||
183 | services: { | ||
184 | color: color(colorText).lighten(1.5).hex(), | ||
185 | active: color(colorText).lighten(1.5).hex(), | ||
186 | }, | ||
187 | }, | ||
188 | }, | ||
189 | }; | ||
190 | |||
147 | export const workspaceSettings = { | 191 | export const workspaceSettings = { |
192 | listItemHeight: 57, | ||
148 | listItemBorderColor: legacyStyles.themeGrayLightest, | 193 | listItemBorderColor: legacyStyles.themeGrayLightest, |
149 | listItemHoverBgColor: legacyStyles.themeGrayLightest, | 194 | listItemHoverBgColor: legacyStyles.themeGrayLightest, |
150 | }; | 195 | }; |
@@ -162,3 +207,13 @@ export const workspaceDrawerItemNameColor = colorText; | |||
162 | export const workspaceDrawerItemNameActiveColor = colorText; | 207 | export const workspaceDrawerItemNameActiveColor = colorText; |
163 | export const workspaceDrawerServicesColor = color(colorText).lighten(1.5).hex(); | 208 | export const workspaceDrawerServicesColor = color(colorText).lighten(1.5).hex(); |
164 | export const workspaceDrawerServicesActiveColor = workspaceDrawerServicesColor; | 209 | export const workspaceDrawerServicesActiveColor = workspaceDrawerServicesColor; |
210 | |||
211 | // Service Icon | ||
212 | export const serviceIcon = { | ||
213 | width: 35, | ||
214 | isCustom: { | ||
215 | border: `1px solid ${legacyStyles.themeGrayLighter}`, | ||
216 | borderRadius: legacyStyles.themeBorderRadius, | ||
217 | width: 37, | ||
218 | }, | ||
219 | }; | ||