aboutsummaryrefslogtreecommitdiffstats
path: root/src/components
diff options
context:
space:
mode:
authorLibravatar Stefan Malzner <stefan@adlk.io>2018-12-09 20:48:25 +0100
committerLibravatar Stefan Malzner <stefan@adlk.io>2018-12-09 20:48:25 +0100
commit5d6164973e92fa8a3e3c18a0eb2e29494aea4f48 (patch)
tree382e6c672bbc0f7582b3b627b02111dcce902894 /src/components
parentAdd React 16 didCatch/ErrorBoundary component (diff)
downloadferdium-app-5d6164973e92fa8a3e3c18a0eb2e29494aea4f48.tar.gz
ferdium-app-5d6164973e92fa8a3e3c18a0eb2e29494aea4f48.tar.zst
ferdium-app-5d6164973e92fa8a3e3c18a0eb2e29494aea4f48.zip
Fix linting issues
Diffstat (limited to 'src/components')
-rw-r--r--src/components/auth/AuthLayout.js6
-rw-r--r--src/components/auth/Invite.js26
-rw-r--r--src/components/auth/Login.js6
-rw-r--r--src/components/auth/Pricing.js23
-rw-r--r--src/components/auth/Signup.js3
-rw-r--r--src/components/layout/AppLayout.js6
-rw-r--r--src/components/layout/Sidebar.js3
-rw-r--r--src/components/services/content/ErrorHandlers/WebviewErrorHandler.js9
-rw-r--r--src/components/services/content/ServiceDisabled.js1
-rw-r--r--src/components/services/content/ServiceWebview.js9
-rw-r--r--src/components/services/content/Services.js3
-rw-r--r--src/components/services/content/WebviewCrashHandler.js24
-rw-r--r--src/components/services/tabs/Tabbar.js2
-rw-r--r--src/components/settings/SettingsLayout.js2
-rw-r--r--src/components/settings/account/AccountDashboard.js4
-rw-r--r--src/components/settings/navigation/SettingsNavigation.js5
-rw-r--r--src/components/settings/recipes/RecipeItem.js1
-rw-r--r--src/components/settings/recipes/RecipesDashboard.js10
-rw-r--r--src/components/settings/services/EditServiceForm.js1
-rw-r--r--src/components/settings/services/ServiceItem.js1
-rw-r--r--src/components/settings/settings/EditSettingsForm.js8
-rw-r--r--src/components/settings/user/EditUserForm.js4
-rw-r--r--src/components/subscription/SubscriptionForm.js3
-rw-r--r--src/components/subscription/SubscriptionPopup.js4
-rw-r--r--src/components/ui/AppLoader/index.js11
-rw-r--r--src/components/ui/Button.js3
-rw-r--r--src/components/ui/FullscreenLoader/index.js7
-rw-r--r--src/components/ui/ImageUpload.js4
-rw-r--r--src/components/ui/InfoBar.js4
-rw-r--r--src/components/ui/Infobox.js2
-rw-r--r--src/components/ui/Input.js6
-rw-r--r--src/components/ui/Link.js1
-rw-r--r--src/components/ui/PremiumFeatureContainer/index.js1
-rw-r--r--src/components/ui/Radio.js4
-rw-r--r--src/components/ui/SearchInput.js27
-rw-r--r--src/components/ui/Select.js1
-rw-r--r--src/components/ui/StatusBarTargetUrl.js3
-rw-r--r--src/components/util/ErrorBoundary/index.js18
-rw-r--r--src/components/util/ErrorBoundary/styles.js4
39 files changed, 155 insertions, 105 deletions
diff --git a/src/components/auth/AuthLayout.js b/src/components/auth/AuthLayout.js
index 4e1b0c52e..ac8fdbe5b 100644
--- a/src/components/auth/AuthLayout.js
+++ b/src/components/auth/AuthLayout.js
@@ -15,7 +15,6 @@ import { isWindows } from '../../environment';
15export default @observer class AuthLayout extends Component { 15export default @observer class AuthLayout extends Component {
16 static propTypes = { 16 static propTypes = {
17 children: oneOrManyChildElements.isRequired, 17 children: oneOrManyChildElements.isRequired,
18 pathname: PropTypes.string.isRequired,
19 error: globalErrorPropType.isRequired, 18 error: globalErrorPropType.isRequired,
20 isOnline: PropTypes.bool.isRequired, 19 isOnline: PropTypes.bool.isRequired,
21 isAPIHealthy: PropTypes.bool.isRequired, 20 isAPIHealthy: PropTypes.bool.isRequired,
@@ -32,7 +31,6 @@ export default @observer class AuthLayout extends Component {
32 render() { 31 render() {
33 const { 32 const {
34 children, 33 children,
35 pathname,
36 error, 34 error,
37 isOnline, 35 isOnline,
38 isAPIHealthy, 36 isAPIHealthy,
@@ -45,8 +43,8 @@ export default @observer class AuthLayout extends Component {
45 43
46 return ( 44 return (
47 <div className={darkMode ? 'theme__dark' : ''}> 45 <div className={darkMode ? 'theme__dark' : ''}>
48 {isWindows && !isFullScreen && <TitleBar menu={window.franz.menu.template} icon={'assets/images/logo.svg'} />} 46 {isWindows && !isFullScreen && <TitleBar menu={window.franz.menu.template} icon="assets/images/logo.svg" />}
49 <div className={'auth'}> 47 <div className="auth">
50 {!isOnline && ( 48 {!isOnline && (
51 <InfoBar 49 <InfoBar
52 type="warning" 50 type="warning"
diff --git a/src/components/auth/Invite.js b/src/components/auth/Invite.js
index 5da89f2ce..fd957ee73 100644
--- a/src/components/auth/Invite.js
+++ b/src/components/auth/Invite.js
@@ -141,11 +141,13 @@ export default @observer class Invite extends Component {
141 )} 141 )}
142 142
143 <form className="franz-form auth__form" onSubmit={e => this.submit(e)}> 143 <form className="franz-form auth__form" onSubmit={e => this.submit(e)}>
144 {!embed && (<img 144 {!embed && (
145 src="./assets/images/logo.svg" 145 <img
146 className="auth__logo" 146 src="./assets/images/logo.svg"
147 alt="" 147 className="auth__logo"
148 />)} 148 alt=""
149 />
150 )}
149 <h1 className={embed && 'invite__embed'}> 151 <h1 className={embed && 'invite__embed'}>
150 {intl.formatMessage(messages.headline)} 152 {intl.formatMessage(messages.headline)}
151 </h1> 153 </h1>
@@ -164,12 +166,14 @@ export default @observer class Invite extends Component {
164 label={intl.formatMessage(messages.submitButtonLabel)} 166 label={intl.formatMessage(messages.submitButtonLabel)}
165 loaded={!isLoadingInvite} 167 loaded={!isLoadingInvite}
166 /> 168 />
167 {!embed && (<Link 169 {!embed && (
168 to="/" 170 <Link
169 className="franz-form__button franz-form__button--secondary auth__button auth__button--skip" 171 to="/"
170 > 172 className="franz-form__button franz-form__button--secondary auth__button auth__button--skip"
171 {intl.formatMessage(messages.skipButtonLabel)} 173 >
172 </Link>)} 174 {intl.formatMessage(messages.skipButtonLabel)}
175 </Link>
176 )}
173 </form> 177 </form>
174 </Fragment> 178 </Fragment>
175 ); 179 );
diff --git a/src/components/auth/Login.js b/src/components/auth/Login.js
index 2cf614041..5d21f8b60 100644
--- a/src/components/auth/Login.js
+++ b/src/components/auth/Login.js
@@ -83,18 +83,18 @@ export default @observer class Login extends Component {
83 }, 83 },
84 }, this.context.intl); 84 }, this.context.intl);
85 85
86 emailField = null;
87
86 submit(e) { 88 submit(e) {
87 e.preventDefault(); 89 e.preventDefault();
88 this.form.submit({ 90 this.form.submit({
89 onSuccess: (form) => { 91 onSuccess: (form) => {
90 this.props.onSubmit(form.values()); 92 this.props.onSubmit(form.values());
91 }, 93 },
92 onError: () => {}, 94 onError: () => { },
93 }); 95 });
94 } 96 }
95 97
96 emailField = null;
97
98 render() { 98 render() {
99 const { form } = this; 99 const { form } = this;
100 const { intl } = this.context; 100 const { intl } = this.context;
diff --git a/src/components/auth/Pricing.js b/src/components/auth/Pricing.js
index f08129568..7ab14f429 100644
--- a/src/components/auth/Pricing.js
+++ b/src/components/auth/Pricing.js
@@ -69,18 +69,29 @@ export default @observer class Signup extends Component {
69 donor.amount ? ( 69 donor.amount ? (
70 <span> 70 <span>
71 <p> 71 <p>
72 Thank you so much for your previous donation of <strong>$ {donor.amount}</strong>. 72 Thank you so much for your previous donation of
73 {' '}
74 <strong>
75 $
76 {donor.amount}
77 </strong>
78 .
73 <br /> 79 <br />
74 Your support allowed us to get where we are today. 80 Your support allowed us to get where we are today.
75 <br /> 81 <br />
76 </p> 82 </p>
77 <p> 83 <p>
78 As an early supporter, you get <strong>a lifetime premium supporter license</strong> without any 84 As an early supporter, you get
85 {' '}
86 <strong>a lifetime premium supporter license</strong>
87 {' '}
88 without any
79 additional charges. 89 additional charges.
80 </p> 90 </p>
81 <p> 91 <p>
82 However, If you want to keep supporting us, you are more than welcome to subscribe to a plan. 92 However, If you want to keep supporting us, you are more than welcome to subscribe to a plan.
83 <br /><br /> 93 <br />
94 <br />
84 </p> 95 </p>
85 </span> 96 </span>
86 ) : ( 97 ) : (
@@ -113,12 +124,6 @@ export default @observer class Signup extends Component {
113 hideInfo={Boolean(donor.amount)} 124 hideInfo={Boolean(donor.amount)}
114 skipButtonLabel={intl.formatMessage(messages.skipPayment)} 125 skipButtonLabel={intl.formatMessage(messages.skipPayment)}
115 /> 126 />
116 {/* <Link
117 to={inviteRoute}
118 className="franz-form__button franz-form__button--secondary auth__button auth__button--skip"
119 >
120 {intl.formatMessage(messages.skipPayment)}
121 </Link> */}
122 </Appear> 127 </Appear>
123 </Loader> 128 </Loader>
124 </form> 129 </form>
diff --git a/src/components/auth/Signup.js b/src/components/auth/Signup.js
index bbcad8b67..d9b83eeb8 100644
--- a/src/components/auth/Signup.js
+++ b/src/components/auth/Signup.js
@@ -199,7 +199,8 @@ export default @observer class Signup extends Component {
199 className="link" 199 className="link"
200 > 200 >
201 {intl.formatMessage(messages.privacy)} 201 {intl.formatMessage(messages.privacy)}
202 </Link>. 202 </Link>
203 .
203 </p> 204 </p>
204 </form> 205 </form>
205 <div className="auth__links"> 206 <div className="auth__links">
diff --git a/src/components/layout/AppLayout.js b/src/components/layout/AppLayout.js
index e526f6b1f..dbe0bb4b6 100644
--- a/src/components/layout/AppLayout.js
+++ b/src/components/layout/AppLayout.js
@@ -99,7 +99,7 @@ export default @observer class AppLayout extends Component {
99 <ErrorBoundary> 99 <ErrorBoundary>
100 <div className={(darkMode ? 'theme__dark' : '')}> 100 <div className={(darkMode ? 'theme__dark' : '')}>
101 <div className="app"> 101 <div className="app">
102 {isWindows && !isFullScreen && <TitleBar menu={window.franz.menu.template} icon={'assets/images/logo.svg'} />} 102 {isWindows && !isFullScreen && <TitleBar menu={window.franz.menu.template} icon="assets/images/logo.svg" />}
103 <div className="app__content"> 103 <div className="app__content">
104 {sidebar} 104 {sidebar}
105 <div className="app__service"> 105 <div className="app__service">
@@ -153,7 +153,9 @@ export default @observer class AppLayout extends Component {
153 sticky 153 sticky
154 > 154 >
155 <span className="mdi mdi-information" /> 155 <span className="mdi mdi-information" />
156 {intl.formatMessage(messages.updateAvailable)} <a href="https://meetfranz.com/changelog" target="_blank"> 156 {intl.formatMessage(messages.updateAvailable)}
157 {' '}
158 <a href="https://meetfranz.com/changelog" target="_blank">
157 <u>{intl.formatMessage(messages.changelog)}</u> 159 <u>{intl.formatMessage(messages.changelog)}</u>
158 </a> 160 </a>
159 </InfoBar> 161 </InfoBar>
diff --git a/src/components/layout/Sidebar.js b/src/components/layout/Sidebar.js
index 6ea95bf88..609a3b604 100644
--- a/src/components/layout/Sidebar.js
+++ b/src/components/layout/Sidebar.js
@@ -65,6 +65,7 @@ export default @observer class Sidebar extends Component {
65 disableToolTip={() => this.disableToolTip()} 65 disableToolTip={() => this.disableToolTip()}
66 /> 66 />
67 <button 67 <button
68 type="button"
68 onClick={toggleMuteApp} 69 onClick={toggleMuteApp}
69 className={`sidebar__button sidebar__button--audio ${isAppMuted ? 'is-muted' : ''}`} 70 className={`sidebar__button sidebar__button--audio ${isAppMuted ? 'is-muted' : ''}`}
70 data-tip={`${intl.formatMessage(isAppMuted ? messages.unmute : messages.mute)} (${ctrlKey}+Shift+M)`} 71 data-tip={`${intl.formatMessage(isAppMuted ? messages.unmute : messages.mute)} (${ctrlKey}+Shift+M)`}
@@ -72,6 +73,7 @@ export default @observer class Sidebar extends Component {
72 <i className={`mdi mdi-bell${isAppMuted ? '-off' : ''}`} /> 73 <i className={`mdi mdi-bell${isAppMuted ? '-off' : ''}`} />
73 </button> 74 </button>
74 <button 75 <button
76 type="button"
75 onClick={() => openSettings({ path: 'recipes' })} 77 onClick={() => openSettings({ path: 'recipes' })}
76 className="sidebar__button sidebar__button--new-service" 78 className="sidebar__button sidebar__button--new-service"
77 data-tip={`${intl.formatMessage(messages.addNewService)} (${ctrlKey}+N)`} 79 data-tip={`${intl.formatMessage(messages.addNewService)} (${ctrlKey}+N)`}
@@ -79,6 +81,7 @@ export default @observer class Sidebar extends Component {
79 <i className="mdi mdi-plus-box" /> 81 <i className="mdi mdi-plus-box" />
80 </button> 82 </button>
81 <button 83 <button
84 type="button"
82 onClick={() => openSettings({ path: 'app' })} 85 onClick={() => openSettings({ path: 'app' })}
83 className="sidebar__button sidebar__button--settings" 86 className="sidebar__button sidebar__button--settings"
84 data-tip={`${intl.formatMessage(messages.settings)} (${ctrlKey}+,)`} 87 data-tip={`${intl.formatMessage(messages.settings)} (${ctrlKey}+,)`}
diff --git a/src/components/services/content/ErrorHandlers/WebviewErrorHandler.js b/src/components/services/content/ErrorHandlers/WebviewErrorHandler.js
index df98bf835..415a8d1b5 100644
--- a/src/components/services/content/ErrorHandlers/WebviewErrorHandler.js
+++ b/src/components/services/content/ErrorHandlers/WebviewErrorHandler.js
@@ -58,7 +58,14 @@ export default @injectSheet(styles) @observer class WebviewCrashHandler extends
58 <div className={classes.component}> 58 <div className={classes.component}>
59 <h1>{intl.formatMessage(messages.headline)}</h1> 59 <h1>{intl.formatMessage(messages.headline)}</h1>
60 <p>{intl.formatMessage(messages.text, { name })}</p> 60 <p>{intl.formatMessage(messages.text, { name })}</p>
61 <p><strong>{intl.formatMessage(messages.errorMessage)}:</strong> {errorMessage}</p> 61 <p>
62 <strong>
63 {intl.formatMessage(messages.errorMessage)}
64:
65 </strong>
66 {' '}
67 {errorMessage}
68 </p>
62 <div className={classes.buttonContainer}> 69 <div className={classes.buttonContainer}>
63 <Button 70 <Button
64 label={intl.formatMessage(messages.editAction, { name })} 71 label={intl.formatMessage(messages.editAction, { name })}
diff --git a/src/components/services/content/ServiceDisabled.js b/src/components/services/content/ServiceDisabled.js
index 58fb38d8c..d0f12256e 100644
--- a/src/components/services/content/ServiceDisabled.js
+++ b/src/components/services/content/ServiceDisabled.js
@@ -27,6 +27,7 @@ export default @observer class ServiceDisabled extends Component {
27 }; 27 };
28 28
29 countdownInterval = null; 29 countdownInterval = null;
30
30 countdownIntervalTimeout = 1000; 31 countdownIntervalTimeout = 1000;
31 32
32 render() { 33 render() {
diff --git a/src/components/services/content/ServiceWebview.js b/src/components/services/content/ServiceWebview.js
index 98daf9b9f..a2ae5a562 100644
--- a/src/components/services/content/ServiceWebview.js
+++ b/src/components/services/content/ServiceWebview.js
@@ -20,6 +20,7 @@ export default @observer class ServiceWebview extends Component {
20 edit: PropTypes.func.isRequired, 20 edit: PropTypes.func.isRequired,
21 isAppMuted: PropTypes.bool.isRequired, 21 isAppMuted: PropTypes.bool.isRequired,
22 enable: PropTypes.func.isRequired, 22 enable: PropTypes.func.isRequired,
23 isActive: PropTypes.bool,
23 }; 24 };
24 25
25 static defaultProps = { 26 static defaultProps = {
@@ -32,6 +33,10 @@ export default @observer class ServiceWebview extends Component {
32 statusBarVisible: false, 33 statusBarVisible: false,
33 }; 34 };
34 35
36 autorunDisposer = null;
37
38 webview = null;
39
35 componentDidMount() { 40 componentDidMount() {
36 this.autorunDisposer = autorun(() => { 41 this.autorunDisposer = autorun(() => {
37 if (this.props.service.isActive) { 42 if (this.props.service.isActive) {
@@ -58,10 +63,6 @@ export default @observer class ServiceWebview extends Component {
58 }); 63 });
59 } 64 }
60 65
61 autorunDisposer = null;
62
63 webview = null;
64
65 render() { 66 render() {
66 const { 67 const {
67 service, 68 service,
diff --git a/src/components/services/content/Services.js b/src/components/services/content/Services.js
index 0d4d778cd..1aeb17e03 100644
--- a/src/components/services/content/Services.js
+++ b/src/components/services/content/Services.js
@@ -20,7 +20,7 @@ const messages = defineMessages({
20 20
21export default @observer class Services extends Component { 21export default @observer class Services extends Component {
22 static propTypes = { 22 static propTypes = {
23 services: MobxPropTypes.arrayOrObservableArray.isRequired, 23 services: MobxPropTypes.arrayOrObservableArray,
24 setWebviewReference: PropTypes.func.isRequired, 24 setWebviewReference: PropTypes.func.isRequired,
25 handleIPCMessage: PropTypes.func.isRequired, 25 handleIPCMessage: PropTypes.func.isRequired,
26 openWindow: PropTypes.func.isRequired, 26 openWindow: PropTypes.func.isRequired,
@@ -32,7 +32,6 @@ export default @observer class Services extends Component {
32 32
33 static defaultProps = { 33 static defaultProps = {
34 services: [], 34 services: [],
35 activeService: '',
36 }; 35 };
37 36
38 static contextTypes = { 37 static contextTypes = {
diff --git a/src/components/services/content/WebviewCrashHandler.js b/src/components/services/content/WebviewCrashHandler.js
index 3be1fccf4..42bc3c877 100644
--- a/src/components/services/content/WebviewCrashHandler.js
+++ b/src/components/services/content/WebviewCrashHandler.js
@@ -38,13 +38,18 @@ export default @observer class WebviewCrashHandler extends Component {
38 countdown: 10000, 38 countdown: 10000,
39 } 39 }
40 40
41 countdownInterval = null;
42
43 countdownIntervalTimeout = 1000;
44
45
41 componentDidMount() { 46 componentDidMount() {
42 const { reload } = this.props; 47 const { reload } = this.props;
43 48
44 this.countdownInterval = setInterval(() => { 49 this.countdownInterval = setInterval(() => {
45 this.setState({ 50 this.setState(prevState => ({
46 countdown: this.state.countdown - this.countdownIntervalTimeout, 51 countdown: prevState.countdown - this.countdownIntervalTimeout,
47 }); 52 }));
48 53
49 if (this.state.countdown <= 0) { 54 if (this.state.countdown <= 0) {
50 reload(); 55 reload();
@@ -53,9 +58,6 @@ export default @observer class WebviewCrashHandler extends Component {
53 }, this.countdownIntervalTimeout); 58 }, this.countdownIntervalTimeout);
54 } 59 }
55 60
56 countdownInterval = null;
57 countdownIntervalTimeout = 1000;
58
59 render() { 61 render() {
60 const { name, reload } = this.props; 62 const { name, reload } = this.props;
61 const { intl } = this.context; 63 const { intl } = this.context;
@@ -70,10 +72,12 @@ export default @observer class WebviewCrashHandler extends Component {
70 buttonType="inverted" 72 buttonType="inverted"
71 onClick={() => reload()} 73 onClick={() => reload()}
72 /> 74 />
73 <p className="footnote">{intl.formatMessage(messages.autoReload, { 75 <p className="footnote">
74 name, 76 {intl.formatMessage(messages.autoReload, {
75 seconds: this.state.countdown / 1000, 77 name,
76 })}</p> 78 seconds: this.state.countdown / 1000,
79 })}
80 </p>
77 </div> 81 </div>
78 ); 82 );
79 } 83 }
diff --git a/src/components/services/tabs/Tabbar.js b/src/components/services/tabs/Tabbar.js
index 27f555428..dd5c2140f 100644
--- a/src/components/services/tabs/Tabbar.js
+++ b/src/components/services/tabs/Tabbar.js
@@ -1,4 +1,4 @@
1import React, { Component, Fragment } from 'react'; 1import React, { Component } from 'react';
2import PropTypes from 'prop-types'; 2import PropTypes from 'prop-types';
3import { observer, PropTypes as MobxPropTypes } from 'mobx-react'; 3import { observer, PropTypes as MobxPropTypes } from 'mobx-react';
4 4
diff --git a/src/components/settings/SettingsLayout.js b/src/components/settings/SettingsLayout.js
index d5d8f0bb0..72ba7b2e3 100644
--- a/src/components/settings/SettingsLayout.js
+++ b/src/components/settings/SettingsLayout.js
@@ -39,6 +39,7 @@ export default @observer class SettingsLayout extends Component {
39 <div className="settings-wrapper"> 39 <div className="settings-wrapper">
40 <ErrorBoundary> 40 <ErrorBoundary>
41 <button 41 <button
42 type="button"
42 className="settings-wrapper__action" 43 className="settings-wrapper__action"
43 onClick={closeSettings} 44 onClick={closeSettings}
44 /> 45 />
@@ -46,6 +47,7 @@ export default @observer class SettingsLayout extends Component {
46 {navigation} 47 {navigation}
47 {children} 48 {children}
48 <button 49 <button
50 type="button"
49 className="settings__close mdi mdi-close" 51 className="settings__close mdi mdi-close"
50 onClick={closeSettings} 52 onClick={closeSettings}
51 /> 53 />
diff --git a/src/components/settings/account/AccountDashboard.js b/src/components/settings/account/AccountDashboard.js
index 43b8387c6..9c9543749 100644
--- a/src/components/settings/account/AccountDashboard.js
+++ b/src/components/settings/account/AccountDashboard.js
@@ -167,7 +167,8 @@ export default @observer class AccountDashboard extends Component {
167 {`${user.firstname} ${user.lastname}`} 167 {`${user.firstname} ${user.lastname}`}
168 </h2> 168 </h2>
169 {user.organization && `${user.organization}, `} 169 {user.organization && `${user.organization}, `}
170 {user.email}<br /> 170 {user.email}
171 <br />
171 {!user.isEnterprise && !user.isPremium && ( 172 {!user.isEnterprise && !user.isPremium && (
172 <span className="badge badge">{intl.formatMessage(messages.accountTypeBasic)}</span> 173 <span className="badge badge">{intl.formatMessage(messages.accountTypeBasic)}</span>
173 )} 174 )}
@@ -217,6 +218,7 @@ export default @observer class AccountDashboard extends Component {
217 </td> 218 </td>
218 <td className="invoices__action"> 219 <td className="invoices__action">
219 <button 220 <button
221 type="button"
220 onClick={() => openExternalUrl(order.invoiceUrl)} 222 onClick={() => openExternalUrl(order.invoiceUrl)}
221 > 223 >
222 {intl.formatMessage(messages.invoiceDownload)} 224 {intl.formatMessage(messages.invoiceDownload)}
diff --git a/src/components/settings/navigation/SettingsNavigation.js b/src/components/settings/navigation/SettingsNavigation.js
index b86d94ac7..953f702f8 100644
--- a/src/components/settings/navigation/SettingsNavigation.js
+++ b/src/components/settings/navigation/SettingsNavigation.js
@@ -59,7 +59,9 @@ export default @inject('stores') @observer class SettingsNavigation extends Comp
59 className="settings-navigation__link" 59 className="settings-navigation__link"
60 activeClassName="is-active" 60 activeClassName="is-active"
61 > 61 >
62 {intl.formatMessage(messages.yourServices)} <span className="badge">{serviceCount}</span> 62 {intl.formatMessage(messages.yourServices)}
63 {' '}
64 <span className="badge">{serviceCount}</span>
63 </Link> 65 </Link>
64 <Link 66 <Link
65 to="/settings/user" 67 to="/settings/user"
@@ -93,4 +95,3 @@ export default @inject('stores') @observer class SettingsNavigation extends Comp
93 ); 95 );
94 } 96 }
95} 97}
96
diff --git a/src/components/settings/recipes/RecipeItem.js b/src/components/settings/recipes/RecipeItem.js
index dae8891b3..3bb0852b2 100644
--- a/src/components/settings/recipes/RecipeItem.js
+++ b/src/components/settings/recipes/RecipeItem.js
@@ -15,6 +15,7 @@ export default @observer class RecipeItem extends Component {
15 15
16 return ( 16 return (
17 <button 17 <button
18 type="button"
18 className="recipe-teaser" 19 className="recipe-teaser"
19 onClick={onClick} 20 onClick={onClick}
20 > 21 >
diff --git a/src/components/settings/recipes/RecipesDashboard.js b/src/components/settings/recipes/RecipesDashboard.js
index cd783200f..00cd725cf 100644
--- a/src/components/settings/recipes/RecipesDashboard.js
+++ b/src/components/settings/recipes/RecipesDashboard.js
@@ -129,11 +129,17 @@ export default @observer class RecipesDashboard extends Component {
129 activeClassName={`${!searchNeedle ? 'badge--primary' : ''}`} 129 activeClassName={`${!searchNeedle ? 'badge--primary' : ''}`}
130 onClick={() => resetSearch()} 130 onClick={() => resetSearch()}
131 > 131 >
132 {intl.formatMessage(messages.devRecipes)} ({devRecipesCount}) 132 {intl.formatMessage(messages.devRecipes)}
133 {' '}
134(
135 {devRecipesCount}
136)
133 </Link> 137 </Link>
134 )} 138 )}
135 <a href={FRANZ_SERVICE_REQUEST} target="_blank" className="link recipes__service-request"> 139 <a href={FRANZ_SERVICE_REQUEST} target="_blank" className="link recipes__service-request">
136 {intl.formatMessage(messages.missingService)} <i className="mdi mdi-open-in-new" /> 140 {intl.formatMessage(messages.missingService)}
141 {' '}
142 <i className="mdi mdi-open-in-new" />
137 </a> 143 </a>
138 </div> 144 </div>
139 {/* )} */} 145 {/* )} */}
diff --git a/src/components/settings/services/EditServiceForm.js b/src/components/settings/services/EditServiceForm.js
index a7c656acd..fac25c160 100644
--- a/src/components/settings/services/EditServiceForm.js
+++ b/src/components/settings/services/EditServiceForm.js
@@ -130,6 +130,7 @@ export default @observer class EditServiceForm extends Component {
130 static defaultProps = { 130 static defaultProps = {
131 service: {}, 131 service: {},
132 }; 132 };
133
133 static contextTypes = { 134 static contextTypes = {
134 intl: intlShape, 135 intl: intlShape,
135 }; 136 };
diff --git a/src/components/settings/services/ServiceItem.js b/src/components/settings/services/ServiceItem.js
index 84080519b..ebc618a00 100644
--- a/src/components/settings/services/ServiceItem.js
+++ b/src/components/settings/services/ServiceItem.js
@@ -27,6 +27,7 @@ export default @observer class ServiceItem extends Component {
27 service: PropTypes.instanceOf(ServiceModel).isRequired, 27 service: PropTypes.instanceOf(ServiceModel).isRequired,
28 goToServiceForm: PropTypes.func.isRequired, 28 goToServiceForm: PropTypes.func.isRequired,
29 }; 29 };
30
30 static contextTypes = { 31 static contextTypes = {
31 intl: intlShape, 32 intl: intlShape,
32 }; 33 };
diff --git a/src/components/settings/settings/EditSettingsForm.js b/src/components/settings/settings/EditSettingsForm.js
index df3197520..a92e559f3 100644
--- a/src/components/settings/settings/EditSettingsForm.js
+++ b/src/components/settings/settings/EditSettingsForm.js
@@ -185,7 +185,9 @@ export default @observer class EditSettingsForm extends Component {
185 target="_blank" 185 target="_blank"
186 className="link" 186 className="link"
187 > 187 >
188 {intl.formatMessage(messages.translationHelp)} <i className="mdi mdi-open-in-new" /> 188 {intl.formatMessage(messages.translationHelp)}
189 {' '}
190 <i className="mdi mdi-open-in-new" />
189 </a> 191 </a>
190 192
191 {/* Advanced */} 193 {/* Advanced */}
@@ -233,7 +235,9 @@ export default @observer class EditSettingsForm extends Component {
233 )} 235 )}
234 <br /> 236 <br />
235 <Toggle field={form.$('beta')} /> 237 <Toggle field={form.$('beta')} />
236 {intl.formatMessage(messages.currentVersion)} {remote.app.getVersion()} 238 {intl.formatMessage(messages.currentVersion)}
239 {' '}
240 {remote.app.getVersion()}
237 </form> 241 </form>
238 </div> 242 </div>
239 </div> 243 </div>
diff --git a/src/components/settings/user/EditUserForm.js b/src/components/settings/user/EditUserForm.js
index b825f844a..0e3ac6b10 100644
--- a/src/components/settings/user/EditUserForm.js
+++ b/src/components/settings/user/EditUserForm.js
@@ -48,10 +48,6 @@ export default @observer class EditServiceForm extends Component {
48 isEnterprise: PropTypes.bool.isRequired, 48 isEnterprise: PropTypes.bool.isRequired,
49 }; 49 };
50 50
51 static defaultProps = {
52 service: {},
53 };
54
55 static contextTypes = { 51 static contextTypes = {
56 intl: intlShape, 52 intl: intlShape,
57 }; 53 };
diff --git a/src/components/subscription/SubscriptionForm.js b/src/components/subscription/SubscriptionForm.js
index 6b60c2af0..90da8ddc3 100644
--- a/src/components/subscription/SubscriptionForm.js
+++ b/src/components/subscription/SubscriptionForm.js
@@ -81,8 +81,7 @@ export default @observer class SubscriptionForm extends Component {
81 hideInfo: PropTypes.bool.isRequired, 81 hideInfo: PropTypes.bool.isRequired,
82 }; 82 };
83 83
84 static defaultProps ={ 84 static defaultProps = {
85 content: '',
86 showSkipOption: false, 85 showSkipOption: false,
87 skipAction: () => null, 86 skipAction: () => null,
88 skipButtonLabel: '', 87 skipButtonLabel: '',
diff --git a/src/components/subscription/SubscriptionPopup.js b/src/components/subscription/SubscriptionPopup.js
index f3c63e7ee..b5d7c4b2d 100644
--- a/src/components/subscription/SubscriptionPopup.js
+++ b/src/components/subscription/SubscriptionPopup.js
@@ -46,7 +46,9 @@ export default @observer class SubscriptionPopup extends Component {
46 } 46 }
47 47
48 render() { 48 render() {
49 const { url, closeWindow, completeCheck, isCompleted } = this.props; 49 const {
50 url, closeWindow, completeCheck, isCompleted,
51 } = this.props;
50 const { intl } = this.context; 52 const { intl } = this.context;
51 53
52 return ( 54 return (
diff --git a/src/components/ui/AppLoader/index.js b/src/components/ui/AppLoader/index.js
index 31db3d52c..1b9d044f4 100644
--- a/src/components/ui/AppLoader/index.js
+++ b/src/components/ui/AppLoader/index.js
@@ -28,11 +28,13 @@ export default @injectSheet(styles) class AppLoader extends Component {
28 step: 0, 28 step: 0,
29 } 29 }
30 30
31 interval = null;
32
31 componentDidMount() { 33 componentDidMount() {
32 this.interval = setInterval(() => { 34 this.interval = setInterval(() => {
33 this.setState({ 35 this.setState(prevState => ({
34 step: this.state.step === textList.length - 1 ? 0 : this.state.step + 1, 36 step: prevState.step === textList.length - 1 ? 0 : prevState.step + 1,
35 }); 37 }));
36 }, 2500); 38 }, 2500);
37 } 39 }
38 40
@@ -40,8 +42,6 @@ export default @injectSheet(styles) class AppLoader extends Component {
40 clearInterval(this.interval); 42 clearInterval(this.interval);
41 } 43 }
42 44
43 interval = null;
44
45 render() { 45 render() {
46 const { classes } = this.props; 46 const { classes } = this.props;
47 const { step } = this.state; 47 const { step } = this.state;
@@ -66,4 +66,3 @@ export default @injectSheet(styles) class AppLoader extends Component {
66 ); 66 );
67 } 67 }
68} 68}
69
diff --git a/src/components/ui/Button.js b/src/components/ui/Button.js
index 309e05bb4..ffc7f7051 100644
--- a/src/components/ui/Button.js
+++ b/src/components/ui/Button.js
@@ -62,6 +62,8 @@ export default @observer class Button extends Component {
62 } 62 }
63 63
64 return ( 64 return (
65 // disabling rule as button has type defined in `buttonProps`
66 /* eslint-disable react/button-has-type */
65 <button {...buttonProps}> 67 <button {...buttonProps}>
66 <Loader 68 <Loader
67 loaded={loaded} 69 loaded={loaded}
@@ -72,6 +74,7 @@ export default @observer class Button extends Component {
72 /> 74 />
73 {label} 75 {label}
74 </button> 76 </button>
77 /* eslint-enable react/button-has-type */
75 ); 78 );
76 } 79 }
77} 80}
diff --git a/src/components/ui/FullscreenLoader/index.js b/src/components/ui/FullscreenLoader/index.js
index 36cd32d2a..e0a24a527 100644
--- a/src/components/ui/FullscreenLoader/index.js
+++ b/src/components/ui/FullscreenLoader/index.js
@@ -7,7 +7,9 @@ import Loader from '../Loader';
7 7
8import styles from './styles'; 8import styles from './styles';
9 9
10export default inject('stores')(injectSheet(styles)(({ stores, classes, className, title, children }) => ( 10export default inject('stores')(injectSheet(styles)(({
11 stores, classes, className, title, children,
12}) => (
11 <div className={classes.wrapper}> 13 <div className={classes.wrapper}>
12 <div 14 <div
13 className={classnames({ 15 className={classnames({
@@ -24,5 +26,4 @@ export default inject('stores')(injectSheet(styles)(({ stores, classes, classNam
24 )} 26 )}
25 </div> 27 </div>
26 </div> 28 </div>
27), 29)));
28));
diff --git a/src/components/ui/ImageUpload.js b/src/components/ui/ImageUpload.js
index cbe70ac88..83a05554b 100644
--- a/src/components/ui/ImageUpload.js
+++ b/src/components/ui/ImageUpload.js
@@ -23,6 +23,8 @@ export default @observer class ImageUpload extends Component {
23 path: null, 23 path: null,
24 } 24 }
25 25
26 dropzoneRef = null;
27
26 onDrop(acceptedFiles) { 28 onDrop(acceptedFiles) {
27 const { field } = this.props; 29 const { field } = this.props;
28 30
@@ -36,8 +38,6 @@ export default @observer class ImageUpload extends Component {
36 field.set(''); 38 field.set('');
37 } 39 }
38 40
39 dropzoneRef = null;
40
41 render() { 41 render() {
42 const { 42 const {
43 field, 43 field,
diff --git a/src/components/ui/InfoBar.js b/src/components/ui/InfoBar.js
index 94a1ddf76..612399e9f 100644
--- a/src/components/ui/InfoBar.js
+++ b/src/components/ui/InfoBar.js
@@ -5,7 +5,7 @@ import classnames from 'classnames';
5import Loader from 'react-loader'; 5import Loader from 'react-loader';
6 6
7// import { oneOrManyChildElements } from '../../prop-types'; 7// import { oneOrManyChildElements } from '../../prop-types';
8import Appear from '../ui/effects/Appear'; 8import Appear from './effects/Appear';
9 9
10export default @observer class InfoBar extends Component { 10export default @observer class InfoBar extends Component {
11 static propTypes = { 11 static propTypes = {
@@ -64,6 +64,7 @@ export default @observer class InfoBar extends Component {
64 {children} 64 {children}
65 {ctaLabel && ( 65 {ctaLabel && (
66 <button 66 <button
67 type="button"
67 className="info-bar__cta" 68 className="info-bar__cta"
68 onClick={onClick} 69 onClick={onClick}
69 > 70 >
@@ -80,6 +81,7 @@ export default @observer class InfoBar extends Component {
80 </div> 81 </div>
81 {!sticky && ( 82 {!sticky && (
82 <button 83 <button
84 type="button"
83 className="info-bar__close mdi mdi-close" 85 className="info-bar__close mdi mdi-close"
84 onClick={onHide} 86 onClick={onHide}
85 /> 87 />
diff --git a/src/components/ui/Infobox.js b/src/components/ui/Infobox.js
index 77051f567..a33c6474a 100644
--- a/src/components/ui/Infobox.js
+++ b/src/components/ui/Infobox.js
@@ -61,6 +61,7 @@ export default @observer class Infobox extends Component {
61 <button 61 <button
62 className="infobox__cta" 62 className="infobox__cta"
63 onClick={ctaOnClick} 63 onClick={ctaOnClick}
64 type="button"
64 > 65 >
65 <Loader 66 <Loader
66 loaded={!ctaLoading} 67 loaded={!ctaLoading}
@@ -74,6 +75,7 @@ export default @observer class Infobox extends Component {
74 )} 75 )}
75 {dismissable && ( 76 {dismissable && (
76 <button 77 <button
78 type="button"
77 onClick={() => this.setState({ 79 onClick={() => this.setState({
78 dismissed: true, 80 dismissed: true,
79 })} 81 })}
diff --git a/src/components/ui/Input.js b/src/components/ui/Input.js
index 7bf6e1b00..9b070c4df 100644
--- a/src/components/ui/Input.js
+++ b/src/components/ui/Input.js
@@ -33,6 +33,8 @@ export default @observer class Input extends Component {
33 passwordScore: 0, 33 passwordScore: 0,
34 } 34 }
35 35
36 inputElement = null;
37
36 componentDidMount() { 38 componentDidMount() {
37 if (this.props.focus) { 39 if (this.props.focus) {
38 this.focus(); 40 this.focus();
@@ -53,8 +55,6 @@ export default @observer class Input extends Component {
53 this.inputElement.focus(); 55 this.inputElement.focus();
54 } 56 }
55 57
56 inputElement = null;
57
58 render() { 58 render() {
59 const { 59 const {
60 field, 60 field,
@@ -110,7 +110,7 @@ export default @observer class Input extends Component {
110 'mdi-eye': !this.state.showPassword, 110 'mdi-eye': !this.state.showPassword,
111 'mdi-eye-off': this.state.showPassword, 111 'mdi-eye-off': this.state.showPassword,
112 })} 112 })}
113 onClick={() => this.setState({ showPassword: !this.state.showPassword })} 113 onClick={() => this.setState(prevState => ({ showPassword: !prevState.showPassword }))}
114 tabIndex="-1" 114 tabIndex="-1"
115 /> 115 />
116 )} 116 )}
diff --git a/src/components/ui/Link.js b/src/components/ui/Link.js
index 0602290f1..b88686d5e 100644
--- a/src/components/ui/Link.js
+++ b/src/components/ui/Link.js
@@ -72,5 +72,4 @@ Link.wrappedComponent.defaultProps = {
72 activeClassName: '', 72 activeClassName: '',
73 strictFilter: false, 73 strictFilter: false,
74 target: '', 74 target: '',
75 openInBrowser: false,
76}; 75};
diff --git a/src/components/ui/PremiumFeatureContainer/index.js b/src/components/ui/PremiumFeatureContainer/index.js
index 73984be94..67cd6af0b 100644
--- a/src/components/ui/PremiumFeatureContainer/index.js
+++ b/src/components/ui/PremiumFeatureContainer/index.js
@@ -73,4 +73,3 @@ PremiumFeatureContainer.wrappedComponent.propTypes = {
73 }).isRequired, 73 }).isRequired,
74 }).isRequired, 74 }).isRequired,
75}; 75};
76
diff --git a/src/components/ui/Radio.js b/src/components/ui/Radio.js
index 63ca6f9b8..ba13aca63 100644
--- a/src/components/ui/Radio.js
+++ b/src/components/ui/Radio.js
@@ -18,6 +18,8 @@ export default @observer class Radio extends Component {
18 showLabel: true, 18 showLabel: true,
19 }; 19 };
20 20
21 inputElement = null;
22
21 componentDidMount() { 23 componentDidMount() {
22 if (this.props.focus) { 24 if (this.props.focus) {
23 this.focus(); 25 this.focus();
@@ -28,8 +30,6 @@ export default @observer class Radio extends Component {
28 this.inputElement.focus(); 30 this.inputElement.focus();
29 } 31 }
30 32
31 inputElement = null;
32
33 render() { 33 render() {
34 const { 34 const {
35 field, 35 field,
diff --git a/src/components/ui/SearchInput.js b/src/components/ui/SearchInput.js
index 5a9571d27..78d6aae8b 100644
--- a/src/components/ui/SearchInput.js
+++ b/src/components/ui/SearchInput.js
@@ -2,7 +2,6 @@ import React, { Component } from 'react';
2import PropTypes from 'prop-types'; 2import PropTypes from 'prop-types';
3import { observer } from 'mobx-react'; 3import { observer } from 'mobx-react';
4import classnames from 'classnames'; 4import classnames from 'classnames';
5import uuidv1 from 'uuid/v1';
6import { debounce } from 'lodash'; 5import { debounce } from 'lodash';
7 6
8export default @observer class SearchInput extends Component { 7export default @observer class SearchInput extends Component {
@@ -22,7 +21,7 @@ export default @observer class SearchInput extends Component {
22 value: '', 21 value: '',
23 placeholder: '', 22 placeholder: '',
24 className: '', 23 className: '',
25 name: uuidv1(), 24 name: 'searchInput',
26 throttle: false, 25 throttle: false,
27 throttleDelay: 250, 26 throttleDelay: 250,
28 onChange: () => null, 27 onChange: () => null,
@@ -30,6 +29,8 @@ export default @observer class SearchInput extends Component {
30 autoFocus: false, 29 autoFocus: false,
31 } 30 }
32 31
32 input = null;
33
33 constructor(props) { 34 constructor(props) {
34 super(props); 35 super(props);
35 36
@@ -74,8 +75,6 @@ export default @observer class SearchInput extends Component {
74 onReset(); 75 onReset();
75 } 76 }
76 77
77 input = null;
78
79 render() { 78 render() {
80 const { className, name, placeholder } = this.props; 79 const { className, name, placeholder } = this.props;
81 const { value } = this.state; 80 const { value } = this.state;
@@ -90,15 +89,17 @@ export default @observer class SearchInput extends Component {
90 <label 89 <label
91 htmlFor={name} 90 htmlFor={name}
92 className="mdi mdi-magnify" 91 className="mdi mdi-magnify"
93 /> 92 >
94 <input 93 <input
95 name={name} 94 name={name}
96 type="text" 95 id={name}
97 placeholder={placeholder} 96 type="text"
98 value={value} 97 placeholder={placeholder}
99 onChange={e => this.onChange(e)} 98 value={value}
100 ref={(ref) => { this.input = ref; }} 99 onChange={e => this.onChange(e)}
101 /> 100 ref={(ref) => { this.input = ref; }}
101 />
102 </label>
102 {value.length > 0 && ( 103 {value.length > 0 && (
103 <span 104 <span
104 className="mdi mdi-close-circle-outline" 105 className="mdi mdi-close-circle-outline"
diff --git a/src/components/ui/Select.js b/src/components/ui/Select.js
index 102737bec..6e91300e3 100644
--- a/src/components/ui/Select.js
+++ b/src/components/ui/Select.js
@@ -14,7 +14,6 @@ export default @observer class Select extends Component {
14 14
15 static defaultProps = { 15 static defaultProps = {
16 className: null, 16 className: null,
17 focus: false,
18 showLabel: true, 17 showLabel: true,
19 disabled: false, 18 disabled: false,
20 }; 19 };
diff --git a/src/components/ui/StatusBarTargetUrl.js b/src/components/ui/StatusBarTargetUrl.js
index 4285a343c..6fc50fe5c 100644
--- a/src/components/ui/StatusBarTargetUrl.js
+++ b/src/components/ui/StatusBarTargetUrl.js
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
3import { observer } from 'mobx-react'; 3import { observer } from 'mobx-react';
4import classnames from 'classnames'; 4import classnames from 'classnames';
5 5
6import Appear from '../ui/effects/Appear'; 6import Appear from './effects/Appear';
7 7
8export default @observer class StatusBarTargetUrl extends Component { 8export default @observer class StatusBarTargetUrl extends Component {
9 static propTypes = { 9 static propTypes = {
@@ -13,7 +13,6 @@ export default @observer class StatusBarTargetUrl extends Component {
13 13
14 static defaultProps = { 14 static defaultProps = {
15 className: '', 15 className: '',
16 position: 'bottom',
17 text: '', 16 text: '',
18 }; 17 };
19 18
diff --git a/src/components/util/ErrorBoundary/index.js b/src/components/util/ErrorBoundary/index.js
index def01c74f..5db0db226 100644
--- a/src/components/util/ErrorBoundary/index.js
+++ b/src/components/util/ErrorBoundary/index.js
@@ -1,8 +1,9 @@
1import React, { Component } from 'react'; 1import React, { Component } from 'react';
2import PropTypes from 'prop-types';
2import injectSheet from 'react-jss'; 3import injectSheet from 'react-jss';
3import { defineMessages, intlShape } from 'react-intl'; 4import { defineMessages, intlShape } from 'react-intl';
4 5
5import Button from '../../ui/Button'; 6import Button from '../../ui/Button';
6 7
7import styles from './styles'; 8import styles from './styles';
8 9
@@ -22,16 +23,21 @@ export default @injectSheet(styles) class ErrorBoundary extends Component {
22 hasError: false, 23 hasError: false,
23 } 24 }
24 25
26 static propTypes = {
27 classes: PropTypes.object.isRequired,
28 children: PropTypes.node.isRequired,
29 }
30
25 static contextTypes = { 31 static contextTypes = {
26 intl: intlShape, 32 intl: intlShape,
27 }; 33 };
28 34
29 componentDidCatch(error, info) { 35 componentDidCatch() {
30 this.setState({ hasError: true }); 36 this.setState({ hasError: true });
31 } 37 }
32 38
33 render() { 39 render() {
34 const { classes } = this.props; 40 const { classes } = this.props;
35 const { intl } = this.context; 41 const { intl } = this.context;
36 42
37 if (this.state.hasError) { 43 if (this.state.hasError) {
@@ -40,10 +46,10 @@ export default @injectSheet(styles) class ErrorBoundary extends Component {
40 <h1 className={classes.title}> 46 <h1 className={classes.title}>
41 {intl.formatMessage(messages.headline)} 47 {intl.formatMessage(messages.headline)}
42 </h1> 48 </h1>
43 <Button 49 <Button
44 label={intl.formatMessage(messages.action)} 50 label={intl.formatMessage(messages.action)}
45 buttonType="inverted" 51 buttonType="inverted"
46 onClick={() => location.reload()} 52 onClick={() => window.location.reload()}
47 /> 53 />
48 </div> 54 </div>
49 ); 55 );
@@ -51,4 +57,4 @@ export default @injectSheet(styles) class ErrorBoundary extends Component {
51 57
52 return this.props.children; 58 return this.props.children;
53 } 59 }
54} \ No newline at end of file 60}
diff --git a/src/components/util/ErrorBoundary/styles.js b/src/components/util/ErrorBoundary/styles.js
index 8d62767f6..0960546ff 100644
--- a/src/components/util/ErrorBoundary/styles.js
+++ b/src/components/util/ErrorBoundary/styles.js
@@ -1,4 +1,4 @@
1export default (theme) => ({ 1export default theme => ({
2 component: { 2 component: {
3 display: 'flex', 3 display: 'flex',
4 width: '100%', 4 width: '100%',
@@ -9,5 +9,5 @@ export default (theme) => ({
9 title: { 9 title: {
10 fontSize: 20, 10 fontSize: 20,
11 color: theme.colorText, 11 color: theme.colorText,
12 } 12 },
13}); 13});