aboutsummaryrefslogtreecommitdiffstats
path: root/src/components
diff options
context:
space:
mode:
authorLibravatar Markus Hatvan <markus_hatvan@aon.at>2021-07-30 10:54:54 +0200
committerLibravatar GitHub <noreply@github.com>2021-07-30 14:24:54 +0530
commitf4b4416ea52d564bc2dbe543a82084ed98843ccc (patch)
tree7ca6b23571c86458a6b799746c91a7191de02715 /src/components
parent5.6.1-nightly.8 [skip ci] (diff)
downloadferdium-app-f4b4416ea52d564bc2dbe543a82084ed98843ccc.tar.gz
ferdium-app-f4b4416ea52d564bc2dbe543a82084ed98843ccc.tar.zst
ferdium-app-f4b4416ea52d564bc2dbe543a82084ed98843ccc.zip
chore: migrate from tslint to @typescript-eslint (#1706)
- update .eslintrc to work for .js and .ts - update devDependencies - lint properly both root /src and nested /packages - update webhint recommended setting for tsconfig.json to shrink output - Manage all eslint rules from the repo root - escape single quotes in scripts to please windows build Co-authored-by: Vijay A <avijayr@protonmail.com>
Diffstat (limited to 'src/components')
-rw-r--r--src/components/auth/AuthLayout.js28
-rw-r--r--src/components/auth/ChangeServer.js4
-rw-r--r--src/components/auth/Locked.js2
-rw-r--r--src/components/auth/Login.js2
-rw-r--r--src/components/auth/Password.js2
-rw-r--r--src/components/auth/SetupAssistant.js10
-rw-r--r--src/components/auth/Signup.js2
-rw-r--r--src/components/auth/Welcome.js2
-rw-r--r--src/components/layout/AppLayout.js4
-rw-r--r--src/components/services/content/ConnectionLostBanner.js2
-rw-r--r--src/components/services/content/ErrorHandlers/styles.js2
-rw-r--r--src/components/services/content/Services.js2
-rw-r--r--src/components/services/content/WebviewCrashHandler.js2
-rw-r--r--src/components/services/tabs/Tabbar.js10
-rw-r--r--src/components/settings/services/EditServiceForm.js2
-rw-r--r--src/components/settings/services/ServicesDashboard.js4
-rw-r--r--src/components/settings/settings/EditSettingsForm.js23
-rw-r--r--src/components/settings/supportFerdi/SupportFerdiDashboard.js18
-rw-r--r--src/components/settings/user/EditUserForm.js2
-rw-r--r--src/components/ui/AppLoader/index.js2
-rw-r--r--src/components/ui/FeatureItem.js2
-rw-r--r--src/components/ui/FeatureList.js2
-rw-r--r--src/components/ui/Link.js2
-rw-r--r--src/components/ui/Modal/styles.js2
-rw-r--r--src/components/ui/Radio.js2
-rw-r--r--src/components/ui/SearchInput.js2
-rw-r--r--src/components/ui/Select.js4
-rw-r--r--src/components/ui/ServiceIcon.js2
-rw-r--r--src/components/ui/Slider.js2
-rw-r--r--src/components/ui/Tabs/TabItem.js8
-rw-r--r--src/components/ui/Tabs/Tabs.js2
-rw-r--r--src/components/ui/Toggle.js2
-rw-r--r--src/components/ui/ToggleRaw.js2
-rw-r--r--src/components/ui/WebviewLoader/styles.js2
-rw-r--r--src/components/util/ErrorBoundary/styles.js2
35 files changed, 87 insertions, 76 deletions
diff --git a/src/components/auth/AuthLayout.js b/src/components/auth/AuthLayout.js
index 6fa3adf92..c0e6b982b 100644
--- a/src/components/auth/AuthLayout.js
+++ b/src/components/auth/AuthLayout.js
@@ -7,14 +7,19 @@ import { TitleBar } from 'electron-react-titlebar';
7import Link from '../ui/Link'; 7import Link from '../ui/Link';
8import InfoBar from '../ui/InfoBar'; 8import InfoBar from '../ui/InfoBar';
9 9
10import { oneOrManyChildElements, globalError as globalErrorPropType } from '../../prop-types'; 10import {
11 oneOrManyChildElements,
12 globalError as globalErrorPropType,
13} from '../../prop-types';
11import globalMessages from '../../i18n/globalMessages'; 14import globalMessages from '../../i18n/globalMessages';
12 15
13import { isWindows } from '../../environment'; 16import { isWindows } from '../../environment';
14import AppUpdateInfoBar from '../AppUpdateInfoBar'; 17import AppUpdateInfoBar from '../AppUpdateInfoBar';
15import { GITHUB_FERDI_URL } from '../../config'; 18import { GITHUB_FERDI_URL } from '../../config';
16 19
17export default @observer class AuthLayout extends Component { 20export default
21@observer
22class AuthLayout extends Component {
18 static propTypes = { 23 static propTypes = {
19 children: oneOrManyChildElements.isRequired, 24 children: oneOrManyChildElements.isRequired,
20 error: globalErrorPropType.isRequired, 25 error: globalErrorPropType.isRequired,
@@ -30,7 +35,7 @@ export default @observer class AuthLayout extends Component {
30 35
31 state = { 36 state = {
32 shouldShowAppUpdateInfoBar: true, 37 shouldShowAppUpdateInfoBar: true,
33 } 38 };
34 39
35 static defaultProps = { 40 static defaultProps = {
36 nextAppReleaseVersion: null, 41 nextAppReleaseVersion: null,
@@ -57,12 +62,15 @@ export default @observer class AuthLayout extends Component {
57 62
58 return ( 63 return (
59 <> 64 <>
60 {isWindows && !isFullScreen && <TitleBar menu={window.ferdi.menu.template} icon="assets/images/logo.svg" />} 65 {isWindows && !isFullScreen && (
66 <TitleBar
67 menu={window.ferdi.menu.template}
68 icon="assets/images/logo.svg"
69 />
70 )}
61 <div className="auth"> 71 <div className="auth">
62 {!isOnline && ( 72 {!isOnline && (
63 <InfoBar 73 <InfoBar type="warning">
64 type="warning"
65 >
66 <span className="mdi mdi-flash" /> 74 <span className="mdi mdi-flash" />
67 {intl.formatMessage(globalMessages.notConnectedToTheInternet)} 75 {intl.formatMessage(globalMessages.notConnectedToTheInternet)}
68 </InfoBar> 76 </InfoBar>
@@ -95,7 +103,11 @@ export default @observer class AuthLayout extends Component {
95 })} 103 })}
96 </div> 104 </div>
97 {/* </div> */} 105 {/* </div> */}
98 <Link to={`${GITHUB_FERDI_URL}/ferdi`} className="auth__adlk" target="_blank"> 106 <Link
107 to={`${GITHUB_FERDI_URL}/ferdi`}
108 className="auth__adlk"
109 target="_blank"
110 >
99 <img src="./assets/images/adlk.svg" alt="" /> 111 <img src="./assets/images/adlk.svg" alt="" />
100 </Link> 112 </Link>
101 </div> 113 </div>
diff --git a/src/components/auth/ChangeServer.js b/src/components/auth/ChangeServer.js
index 0dedd825a..7bab80280 100644
--- a/src/components/auth/ChangeServer.js
+++ b/src/components/auth/ChangeServer.js
@@ -100,7 +100,7 @@ export default @observer class ChangeServer extends Component {
100 const { intl } = this.context; 100 const { intl } = this.context;
101 return ( 101 return (
102 <div className="auth__container"> 102 <div className="auth__container">
103 <form className="franz-form auth__form" onSubmit={e => this.submit(e)}> 103 <form className="franz-form auth__form" onSubmit={(e) => this.submit(e)}>
104 <h1>{intl.formatMessage(messages.headline)}</h1> 104 <h1>{intl.formatMessage(messages.headline)}</h1>
105 {form.$('server').value === this.franzServer 105 {form.$('server').value === this.franzServer
106 && ( 106 && (
@@ -113,7 +113,7 @@ export default @observer class ChangeServer extends Component {
113 && ( 113 && (
114 <Input 114 <Input
115 placeholder="Custom Server" 115 placeholder="Custom Server"
116 onChange={e => this.submit(e)} 116 onChange={(e) => this.submit(e)}
117 field={form.$('customServer')} 117 field={form.$('customServer')}
118 /> 118 />
119 )} 119 )}
diff --git a/src/components/auth/Locked.js b/src/components/auth/Locked.js
index 1fdbea595..2ad8a2409 100644
--- a/src/components/auth/Locked.js
+++ b/src/components/auth/Locked.js
@@ -102,7 +102,7 @@ export default @observer class Locked extends Component {
102 102
103 return ( 103 return (
104 <div className="auth__container"> 104 <div className="auth__container">
105 <form className="franz-form auth__form" onSubmit={e => this.submit(e)}> 105 <form className="franz-form auth__form" onSubmit={(e) => this.submit(e)}>
106 <img 106 <img
107 src="./assets/images/logo.svg" 107 src="./assets/images/logo.svg"
108 className="auth__logo" 108 className="auth__logo"
diff --git a/src/components/auth/Login.js b/src/components/auth/Login.js
index 52b09eab6..9e6a8d046 100644
--- a/src/components/auth/Login.js
+++ b/src/components/auth/Login.js
@@ -135,7 +135,7 @@ export default @inject('actions') @observer class Login extends Component {
135 135
136 return ( 136 return (
137 <div className="auth__container"> 137 <div className="auth__container">
138 <form className="franz-form auth__form" onSubmit={e => this.submit(e)}> 138 <form className="franz-form auth__form" onSubmit={(e) => this.submit(e)}>
139 <img 139 <img
140 src="./assets/images/logo.svg" 140 src="./assets/images/logo.svg"
141 className="auth__logo" 141 className="auth__logo"
diff --git a/src/components/auth/Password.js b/src/components/auth/Password.js
index ad34e39af..eafc48502 100644
--- a/src/components/auth/Password.js
+++ b/src/components/auth/Password.js
@@ -86,7 +86,7 @@ export default @observer class Password extends Component {
86 86
87 return ( 87 return (
88 <div className="auth__container"> 88 <div className="auth__container">
89 <form className="franz-form auth__form" onSubmit={e => this.submit(e)}> 89 <form className="franz-form auth__form" onSubmit={(e) => this.submit(e)}>
90 <img 90 <img
91 src="./assets/images/logo.svg" 91 src="./assets/images/logo.svg"
92 className="auth__logo" 92 className="auth__logo"
diff --git a/src/components/auth/SetupAssistant.js b/src/components/auth/SetupAssistant.js
index e03cf9101..bd9069eb7 100644
--- a/src/components/auth/SetupAssistant.js
+++ b/src/components/auth/SetupAssistant.js
@@ -34,7 +34,7 @@ const messages = defineMessages({
34 }, 34 },
35}); 35});
36 36
37const styles = theme => ({ 37const styles = (theme) => ({
38 root: { 38 root: {
39 width: '500px !important', 39 width: '500px !important',
40 textAlign: 'center', 40 textAlign: 'center',
@@ -161,7 +161,7 @@ class SetupAssistant extends Component {
161 const sanitizedWorkspace = slackWorkspace.trim().replace(/^https?:\/\//, ''); 161 const sanitizedWorkspace = slackWorkspace.trim().replace(/^https?:\/\//, '');
162 162
163 if (sanitizedWorkspace) { 163 if (sanitizedWorkspace) {
164 const index = services.findIndex(s => s.id === SLACK_ID); 164 const index = services.findIndex((s) => s.id === SLACK_ID);
165 165
166 if (index === -1) { 166 if (index === -1) {
167 const newServices = services; 167 const newServices = services;
@@ -215,11 +215,11 @@ class SetupAssistant extends Component {
215 <button 215 <button
216 className={classnames({ 216 className={classnames({
217 [classes.serviceContainer]: true, 217 [classes.serviceContainer]: true,
218 [classes.selected]: this.state.services.findIndex(s => s.id === id) !== -1, 218 [classes.selected]: this.state.services.findIndex((s) => s.id === id) !== -1,
219 })} 219 })}
220 key={id} 220 key={id}
221 onClick={() => { 221 onClick={() => {
222 const index = this.state.services.findIndex(s => s.id === id); 222 const index = this.state.services.findIndex((s) => s.id === id);
223 if (index === -1) { 223 if (index === -1) {
224 if (id === SLACK_ID) { 224 if (id === SLACK_ID) {
225 this.setState({ isSlackModalOpen: true }); 225 this.setState({ isSlackModalOpen: true });
@@ -283,7 +283,7 @@ class SetupAssistant extends Component {
283 <Input 283 <Input
284 suffix=".slack.com" 284 suffix=".slack.com"
285 placeholder="workspace-url" 285 placeholder="workspace-url"
286 onChange={e => this.setState({ slackWorkspace: e.target.value })} 286 onChange={(e) => this.setState({ slackWorkspace: e.target.value })}
287 value={slackWorkspace} 287 value={slackWorkspace}
288 /> 288 />
289 <div className={classes.modalActionContainer}> 289 <div className={classes.modalActionContainer}>
diff --git a/src/components/auth/Signup.js b/src/components/auth/Signup.js
index 140867ea1..411b6697b 100644
--- a/src/components/auth/Signup.js
+++ b/src/components/auth/Signup.js
@@ -138,7 +138,7 @@ export default @inject('actions') @observer class Signup extends Component {
138 return ( 138 return (
139 <div className="auth__scroll-container"> 139 <div className="auth__scroll-container">
140 <div className="auth__container auth__container--signup"> 140 <div className="auth__container auth__container--signup">
141 <form className="franz-form auth__form" onSubmit={e => this.submit(e)}> 141 <form className="franz-form auth__form" onSubmit={(e) => this.submit(e)}>
142 <img 142 <img
143 src="./assets/images/logo.svg" 143 src="./assets/images/logo.svg"
144 className="auth__logo" 144 className="auth__logo"
diff --git a/src/components/auth/Welcome.js b/src/components/auth/Welcome.js
index 5f2fac64b..cb522e26e 100644
--- a/src/components/auth/Welcome.js
+++ b/src/components/auth/Welcome.js
@@ -84,7 +84,7 @@ export default @inject('actions') @observer class Login extends Component {
84 </Link> 84 </Link>
85 </div> 85 </div>
86 <div className="welcome__featured-services"> 86 <div className="welcome__featured-services">
87 {recipes.map(recipe => ( 87 {recipes.map((recipe) => (
88 <div 88 <div
89 key={recipe.id} 89 key={recipe.id}
90 className="welcome__featured-service" 90 className="welcome__featured-service"
diff --git a/src/components/layout/AppLayout.js b/src/components/layout/AppLayout.js
index 7e4d0e53e..6e1d7c9a0 100644
--- a/src/components/layout/AppLayout.js
+++ b/src/components/layout/AppLayout.js
@@ -44,7 +44,7 @@ const messages = defineMessages({
44 }, 44 },
45}); 45});
46 46
47const styles = theme => ({ 47const styles = (theme) => ({
48 appContent: { 48 appContent: {
49 // width: `calc(100% + ${theme.workspaces.drawer.width}px)`, 49 // width: `calc(100% + ${theme.workspaces.drawer.width}px)`,
50 width: '100%', 50 width: '100%',
@@ -124,7 +124,7 @@ class AppLayout extends Component {
124 {sidebar} 124 {sidebar}
125 <div className="app__service"> 125 <div className="app__service">
126 <WorkspaceSwitchingIndicator /> 126 <WorkspaceSwitchingIndicator />
127 {news.length > 0 && news.map(item => ( 127 {news.length > 0 && news.map((item) => (
128 <InfoBar 128 <InfoBar
129 key={item.id} 129 key={item.id}
130 position="top" 130 position="top"
diff --git a/src/components/services/content/ConnectionLostBanner.js b/src/components/services/content/ConnectionLostBanner.js
index e54a88faa..0b9d3122c 100644
--- a/src/components/services/content/ConnectionLostBanner.js
+++ b/src/components/services/content/ConnectionLostBanner.js
@@ -26,7 +26,7 @@ const messages = defineMessages({
26 }, 26 },
27}); 27});
28 28
29const styles = theme => ({ 29const styles = (theme) => ({
30 root: { 30 root: {
31 background: theme.colorBackground, 31 background: theme.colorBackground,
32 borderRadius: theme.borderRadius, 32 borderRadius: theme.borderRadius,
diff --git a/src/components/services/content/ErrorHandlers/styles.js b/src/components/services/content/ErrorHandlers/styles.js
index 9e2509ee5..72d62f5e3 100644
--- a/src/components/services/content/ErrorHandlers/styles.js
+++ b/src/components/services/content/ErrorHandlers/styles.js
@@ -1,4 +1,4 @@
1export default theme => ({ 1export default (theme) => ({
2 component: { 2 component: {
3 left: 0, 3 left: 0,
4 position: 'absolute', 4 position: 'absolute',
diff --git a/src/components/services/content/Services.js b/src/components/services/content/Services.js
index 6e46a60d2..fbf884f0a 100644
--- a/src/components/services/content/Services.js
+++ b/src/components/services/content/Services.js
@@ -167,7 +167,7 @@ export default @injectSheet(styles) @inject('actions') @observer class Services
167 </div> 167 </div>
168 </Appear> 168 </Appear>
169 )} 169 )}
170 {services.filter(service => !service.isTodosService).map(service => ( 170 {services.filter((service) => !service.isTodosService).map((service) => (
171 <ServiceView 171 <ServiceView
172 key={service.id} 172 key={service.id}
173 service={service} 173 service={service}
diff --git a/src/components/services/content/WebviewCrashHandler.js b/src/components/services/content/WebviewCrashHandler.js
index b62940c06..10ff0bbbb 100644
--- a/src/components/services/content/WebviewCrashHandler.js
+++ b/src/components/services/content/WebviewCrashHandler.js
@@ -47,7 +47,7 @@ export default @observer class WebviewCrashHandler extends Component {
47 const { reload } = this.props; 47 const { reload } = this.props;
48 48
49 this.countdownInterval = setInterval(() => { 49 this.countdownInterval = setInterval(() => {
50 this.setState(prevState => ({ 50 this.setState((prevState) => ({
51 countdown: prevState.countdown - this.countdownIntervalTimeout, 51 countdown: prevState.countdown - this.countdownIntervalTimeout,
52 })); 52 }));
53 53
diff --git a/src/components/services/tabs/Tabbar.js b/src/components/services/tabs/Tabbar.js
index db7a69bfc..0f608c415 100644
--- a/src/components/services/tabs/Tabbar.js
+++ b/src/components/services/tabs/Tabbar.js
@@ -33,7 +33,7 @@ export default @observer class TabBar extends Component {
33 reorder({ oldIndex, newIndex }); 33 reorder({ oldIndex, newIndex });
34 }; 34 };
35 35
36 shouldPreventSorting = event => event.target.tagName !== 'LI'; 36 shouldPreventSorting = (event) => event.target.tagName !== 'LI';
37 37
38 toggleService = ({ serviceId, isEnabled }) => { 38 toggleService = ({ serviceId, isEnabled }) => {
39 const { updateService } = this.props; 39 const { updateService } = this.props;
@@ -95,10 +95,10 @@ export default @observer class TabBar extends Component {
95 toggleNotifications={toggleNotifications} 95 toggleNotifications={toggleNotifications}
96 toggleAudio={toggleAudio} 96 toggleAudio={toggleAudio}
97 deleteService={deleteService} 97 deleteService={deleteService}
98 disableService={args => this.disableService(args)} 98 disableService={(args) => this.disableService(args)}
99 enableService={args => this.enableService(args)} 99 enableService={(args) => this.enableService(args)}
100 hibernateService={args => this.hibernateService(args)} 100 hibernateService={(args) => this.hibernateService(args)}
101 wakeUpService={args => this.wakeUpService(args)} 101 wakeUpService={(args) => this.wakeUpService(args)}
102 openSettings={openSettings} 102 openSettings={openSettings}
103 distance={20} 103 distance={20}
104 axis="y" 104 axis="y"
diff --git a/src/components/settings/services/EditServiceForm.js b/src/components/settings/services/EditServiceForm.js
index 56e5f9c94..5e424fdd5 100644
--- a/src/components/settings/services/EditServiceForm.js
+++ b/src/components/settings/services/EditServiceForm.js
@@ -266,7 +266,7 @@ export default @observer class EditServiceForm extends Component {
266 </span> 266 </span>
267 </div> 267 </div>
268 <div className="settings__body"> 268 <div className="settings__body">
269 <form onSubmit={e => this.submit(e)} id="form"> 269 <form onSubmit={(e) => this.submit(e)} id="form">
270 <div className="service-name"> 270 <div className="service-name">
271 <Input field={form.$('name')} focus /> 271 <Input field={form.$('name')} focus />
272 </div> 272 </div>
diff --git a/src/components/settings/services/ServicesDashboard.js b/src/components/settings/services/ServicesDashboard.js
index a05af5da0..11d3eaa79 100644
--- a/src/components/settings/services/ServicesDashboard.js
+++ b/src/components/settings/services/ServicesDashboard.js
@@ -96,7 +96,7 @@ export default @observer class ServicesDashboard extends Component {
96 {(services.length !== 0 || searchNeedle) && !isLoading && ( 96 {(services.length !== 0 || searchNeedle) && !isLoading && (
97 <SearchInput 97 <SearchInput
98 placeholder={intl.formatMessage(messages.searchService)} 98 placeholder={intl.formatMessage(messages.searchService)}
99 onChange={needle => filterServices({ needle })} 99 onChange={(needle) => filterServices({ needle })}
100 onReset={() => resetFilter()} 100 onReset={() => resetFilter()}
101 autoFocus 101 autoFocus
102 /> 102 />
@@ -163,7 +163,7 @@ export default @observer class ServicesDashboard extends Component {
163 ) : ( 163 ) : (
164 <table className="service-table"> 164 <table className="service-table">
165 <tbody> 165 <tbody>
166 {services.map(service => ( 166 {services.map((service) => (
167 <ServiceItem 167 <ServiceItem
168 key={service.id} 168 key={service.id}
169 service={service} 169 service={service}
diff --git a/src/components/settings/settings/EditSettingsForm.js b/src/components/settings/settings/EditSettingsForm.js
index 7ac644446..339e2dff6 100644
--- a/src/components/settings/settings/EditSettingsForm.js
+++ b/src/components/settings/settings/EditSettingsForm.js
@@ -266,8 +266,8 @@ export default @observer class EditSettingsForm extends Component {
266 </div> 266 </div>
267 <div className="settings__body"> 267 <div className="settings__body">
268 <form 268 <form
269 onSubmit={e => this.submit(e)} 269 onSubmit={(e) => this.submit(e)}
270 onChange={e => this.submit(e)} 270 onChange={(e) => this.submit(e)}
271 id="form" 271 id="form"
272 > 272 >
273 {/* Titles */} 273 {/* Titles */}
@@ -367,7 +367,7 @@ export default @observer class EditSettingsForm extends Component {
367 <div> 367 <div>
368 <Input 368 <Input
369 placeholder="Todo Server" 369 placeholder="Todo Server"
370 onChange={e => this.submit(e)} 370 onChange={(e) => this.submit(e)}
371 field={form.$('customTodoServer')} 371 field={form.$('customTodoServer')}
372 /> 372 />
373 <p 373 <p
@@ -401,7 +401,7 @@ export default @observer class EditSettingsForm extends Component {
401 > 401 >
402 <Input 402 <Input
403 placeholder="17:00" 403 placeholder="17:00"
404 onChange={e => this.submit(e)} 404 onChange={(e) => this.submit(e)}
405 field={form.$('scheduledDNDStart')} 405 field={form.$('scheduledDNDStart')}
406 type="time" 406 type="time"
407 /> 407 />
@@ -413,7 +413,7 @@ export default @observer class EditSettingsForm extends Component {
413 > 413 >
414 <Input 414 <Input
415 placeholder="09:00" 415 placeholder="09:00"
416 onChange={e => this.submit(e)} 416 onChange={(e) => this.submit(e)}
417 field={form.$('scheduledDNDEnd')} 417 field={form.$('scheduledDNDEnd')}
418 type="time" 418 type="time"
419 /> 419 />
@@ -480,7 +480,7 @@ export default @observer class EditSettingsForm extends Component {
480 480
481 <Input 481 <Input
482 placeholder="Accent Color" 482 placeholder="Accent Color"
483 onChange={e => this.submit(e)} 483 onChange={(e) => this.submit(e)}
484 field={form.$('accentColor')} 484 field={form.$('accentColor')}
485 /> 485 />
486 <p> 486 <p>
@@ -515,7 +515,7 @@ export default @observer class EditSettingsForm extends Component {
515 515
516 <Input 516 <Input
517 placeholder={intl.formatMessage(messages.lockedPassword)} 517 placeholder={intl.formatMessage(messages.lockedPassword)}
518 onChange={e => this.submit(e)} 518 onChange={(e) => this.submit(e)}
519 field={form.$('lockedPassword')} 519 field={form.$('lockedPassword')}
520 type="password" 520 type="password"
521 scorePassword 521 scorePassword
@@ -527,7 +527,7 @@ export default @observer class EditSettingsForm extends Component {
527 527
528 <Input 528 <Input
529 placeholder="Lock after inactivity" 529 placeholder="Lock after inactivity"
530 onChange={e => this.submit(e)} 530 onChange={(e) => this.submit(e)}
531 field={form.$('inactivityLock')} 531 field={form.$('inactivityLock')}
532 autoFocus 532 autoFocus
533 /> 533 />
@@ -570,6 +570,7 @@ export default @observer class EditSettingsForm extends Component {
570 href={FRANZ_TRANSLATION} 570 href={FRANZ_TRANSLATION}
571 target="_blank" 571 target="_blank"
572 className="link" 572 className="link"
573 rel="noreferrer"
573 > 574 >
574 {intl.formatMessage(messages.translationHelp)} 575 {intl.formatMessage(messages.translationHelp)}
575 {' '} 576 {' '}
@@ -588,7 +589,7 @@ export default @observer class EditSettingsForm extends Component {
588 589
589 <Input 590 <Input
590 placeholder="User Agent" 591 placeholder="User Agent"
591 onChange={e => this.submit(e)} 592 onChange={(e) => this.submit(e)}
592 field={form.$('userAgentPref')} 593 field={form.$('userAgentPref')}
593 /> 594 />
594 <p className="settings__help">{intl.formatMessage(globalMessages.userAgentHelp)}</p> 595 <p className="settings__help">{intl.formatMessage(globalMessages.userAgentHelp)}</p>
@@ -674,12 +675,12 @@ export default @observer class EditSettingsForm extends Component {
674 675
675 Ferdi is based on 676 Ferdi is based on
676 {' '} 677 {' '}
677 <a href={`${GITHUB_FRANZ_URL}/franz`} target="_blank">Franz</a> 678 <a href={`${GITHUB_FRANZ_URL}/franz`} target="_blank" rel="noreferrer">Franz</a>
678 679
679 , a project published 680 , a project published
680 under the 681 under the
681 {' '} 682 {' '}
682 <a href={`${GITHUB_FRANZ_URL}/franz/blob/master/LICENSE`} target="_blank">Apache-2.0 License</a> 683 <a href={`${GITHUB_FRANZ_URL}/franz/blob/master/LICENSE`} target="_blank" rel="noreferrer">Apache-2.0 License</a>
683 </span> 684 </span>
684 <br /> 685 <br />
685 <span className="mdi mdi-information" /> 686 <span className="mdi mdi-information" />
diff --git a/src/components/settings/supportFerdi/SupportFerdiDashboard.js b/src/components/settings/supportFerdi/SupportFerdiDashboard.js
index 36c126565..b84e06739 100644
--- a/src/components/settings/supportFerdi/SupportFerdiDashboard.js
+++ b/src/components/settings/supportFerdi/SupportFerdiDashboard.js
@@ -94,10 +94,10 @@ class SupportFerdiDashboard extends Component {
94 <h1>{intl.formatMessage(messages.title)}</h1> 94 <h1>{intl.formatMessage(messages.title)}</h1>
95 <div> 95 <div>
96 <p className="settings__support-badges"> 96 <p className="settings__support-badges">
97 <a href="https://github.com/getferdi/ferdi" target="_blank"><img alt="GitHub Stars" src="https://img.shields.io/github/stars/getferdi/ferdi?style=social" /></a> 97 <a href="https://github.com/getferdi/ferdi" target="_blank" rel="noreferrer"><img alt="GitHub Stars" src="https://img.shields.io/github/stars/getferdi/ferdi?style=social" /></a>
98 <a href="https://twitter.com/getferdi/" target="_blank"><img alt="Twitter Follow" src="https://img.shields.io/twitter/follow/getferdi?label=Follow&style=social" /></a> 98 <a href="https://twitter.com/getferdi/" target="_blank" rel="noreferrer"><img alt="Twitter Follow" src="https://img.shields.io/twitter/follow/getferdi?label=Follow&style=social" /></a>
99 <a href="https://opencollective.com/getferdi#section-contributors" target="_blank"><img alt="Open Collective backers" src="https://img.shields.io/opencollective/backers/getferdi?logo=open-collective" /></a> 99 <a href="https://opencollective.com/getferdi#section-contributors" target="_blank" rel="noreferrer"><img alt="Open Collective backers" src="https://img.shields.io/opencollective/backers/getferdi?logo=open-collective" /></a>
100 <a href="https://opencollective.com/getferdi#section-contributors" target="_blank"><img alt="Open Collective sponsors" src="https://img.shields.io/opencollective/sponsors/getferdi?logo=open-collective" /></a> 100 <a href="https://opencollective.com/getferdi#section-contributors" target="_blank" rel="noreferrer"><img alt="Open Collective sponsors" src="https://img.shields.io/opencollective/sponsors/getferdi?logo=open-collective" /></a>
101 </p> 101 </p>
102 <FormattedHTMLMessage {...messages.aboutIntro} /> 102 <FormattedHTMLMessage {...messages.aboutIntro} />
103 <br /> 103 <br />
@@ -109,7 +109,7 @@ class SupportFerdiDashboard extends Component {
109 </p> 109 </p>
110 <p> 110 <p>
111 {intl.formatMessage(messages.textListContributors)} 111 {intl.formatMessage(messages.textListContributors)}
112 <a href="https://github.com/getferdi/ferdi#contributors-" target="_blank" className="link"> 112 <a href="https://github.com/getferdi/ferdi#contributors-" target="_blank" className="link" rel="noreferrer">
113 {' '} 113 {' '}
114 {intl.formatMessage(messages.textListContributorsHere)} 114 {intl.formatMessage(messages.textListContributorsHere)}
115 <i className="mdi mdi-open-in-new" /> 115 <i className="mdi mdi-open-in-new" />
@@ -122,7 +122,7 @@ class SupportFerdiDashboard extends Component {
122 </p> 122 </p>
123 <p> 123 <p>
124 {intl.formatMessage(messages.textSupportWelcome)} 124 {intl.formatMessage(messages.textSupportWelcome)}
125 <a href="https://help.getferdi.com/general/support" target="_blank" className="link"> 125 <a href="https://help.getferdi.com/general/support" target="_blank" className="link" rel="noreferrer">
126 {' '} 126 {' '}
127 {intl.formatMessage(messages.textSupportWelcomeHere)} 127 {intl.formatMessage(messages.textSupportWelcomeHere)}
128 <i className="mdi mdi-open-in-new" /> 128 <i className="mdi mdi-open-in-new" />
@@ -130,7 +130,7 @@ class SupportFerdiDashboard extends Component {
130 </p> 130 </p>
131 <p> 131 <p>
132 {intl.formatMessage(messages.textExpenses)} 132 {intl.formatMessage(messages.textExpenses)}
133 <a href="https://opencollective.com/getferdi#section-budget" target="_blank" className="link"> 133 <a href="https://opencollective.com/getferdi#section-budget" target="_blank" className="link" rel="noreferrer">
134 {' '} 134 {' '}
135 {intl.formatMessage(messages.textOpenCollective)} 135 {intl.formatMessage(messages.textOpenCollective)}
136 <i className="mdi mdi-open-in-new" /> 136 <i className="mdi mdi-open-in-new" />
@@ -138,14 +138,14 @@ class SupportFerdiDashboard extends Component {
138 </p> 138 </p>
139 <p> 139 <p>
140 {intl.formatMessage(messages.textDonation)} 140 {intl.formatMessage(messages.textDonation)}
141 <a href="https://opencollective.com/getferdi#section-contribute" target="_blank" className="link"> 141 <a href="https://opencollective.com/getferdi#section-contribute" target="_blank" className="link" rel="noreferrer">
142 {' '} 142 {' '}
143 {intl.formatMessage(messages.textOpenCollective)} 143 {intl.formatMessage(messages.textOpenCollective)}
144 <i className="mdi mdi-open-in-new" /> 144 <i className="mdi mdi-open-in-new" />
145 </a> 145 </a>
146 {' '} 146 {' '}
147 {intl.formatMessage(messages.textDonationAnd)} 147 {intl.formatMessage(messages.textDonationAnd)}
148 <a href="https://github.com/sponsors/getferdi" target="_blank" className="link"> 148 <a href="https://github.com/sponsors/getferdi" target="_blank" className="link" rel="noreferrer">
149 {' '} 149 {' '}
150 {intl.formatMessage(messages.textGitHubSponsors)} 150 {intl.formatMessage(messages.textGitHubSponsors)}
151 <i className="mdi mdi-open-in-new" /> 151 <i className="mdi mdi-open-in-new" />
diff --git a/src/components/settings/user/EditUserForm.js b/src/components/settings/user/EditUserForm.js
index a1a353e57..db78acb69 100644
--- a/src/components/settings/user/EditUserForm.js
+++ b/src/components/settings/user/EditUserForm.js
@@ -84,7 +84,7 @@ export default @observer class EditUserForm extends Component {
84 </span> 84 </span>
85 </div> 85 </div>
86 <div className="settings__body"> 86 <div className="settings__body">
87 <form onSubmit={e => this.submit(e)} id="form"> 87 <form onSubmit={(e) => this.submit(e)} id="form">
88 {status.length > 0 && status.includes('data-updated') && ( 88 {status.length > 0 && status.includes('data-updated') && (
89 <Infobox 89 <Infobox
90 type="success" 90 type="success"
diff --git a/src/components/ui/AppLoader/index.js b/src/components/ui/AppLoader/index.js
index a7f6f4545..31d7ca249 100644
--- a/src/components/ui/AppLoader/index.js
+++ b/src/components/ui/AppLoader/index.js
@@ -37,7 +37,7 @@ export default @injectSheet(styles) @withTheme class AppLoader extends Component
37 37
38 componentDidMount() { 38 componentDidMount() {
39 this.interval = setInterval(() => { 39 this.interval = setInterval(() => {
40 this.setState(prevState => ({ 40 this.setState((prevState) => ({
41 step: prevState.step === textList.length - 1 ? 0 : prevState.step + 1, 41 step: prevState.step === textList.length - 1 ? 0 : prevState.step + 1,
42 })); 42 }));
43 }, 2500); 43 }, 2500);
diff --git a/src/components/ui/FeatureItem.js b/src/components/ui/FeatureItem.js
index 4926df470..646cf56ca 100644
--- a/src/components/ui/FeatureItem.js
+++ b/src/components/ui/FeatureItem.js
@@ -4,7 +4,7 @@ import { Icon } from '@meetfranz/ui';
4import classnames from 'classnames'; 4import classnames from 'classnames';
5import { mdiCheckCircle } from '@mdi/js'; 5import { mdiCheckCircle } from '@mdi/js';
6 6
7const styles = theme => ({ 7const styles = (theme) => ({
8 featureItem: { 8 featureItem: {
9 borderBottom: [1, 'solid', theme.defaultContentBorder], 9 borderBottom: [1, 'solid', theme.defaultContentBorder],
10 padding: [8, 0], 10 padding: [8, 0],
diff --git a/src/components/ui/FeatureList.js b/src/components/ui/FeatureList.js
index ada15244b..cf2664830 100644
--- a/src/components/ui/FeatureList.js
+++ b/src/components/ui/FeatureList.js
@@ -92,7 +92,7 @@ export class FeatureList extends Component {
92 92
93 return ( 93 return (
94 <ul className={className}> 94 <ul className={className}>
95 {features.map(feature => <FeatureItem name={intl.formatMessage(feature)} className={featureClassName} />)} 95 {features.map((feature) => <FeatureItem name={intl.formatMessage(feature)} className={featureClassName} />)}
96 </ul> 96 </ul>
97 ); 97 );
98 } 98 }
diff --git a/src/components/ui/Link.js b/src/components/ui/Link.js
index 7930d98b4..fd14b7018 100644
--- a/src/components/ui/Link.js
+++ b/src/components/ui/Link.js
@@ -48,7 +48,7 @@ export default @inject('stores') @observer class Link extends Component {
48 href={router.history.createHref(to)} 48 href={router.history.createHref(to)}
49 className={linkClasses} 49 className={linkClasses}
50 style={style} 50 style={style}
51 onClick={e => this.onClick(e)} 51 onClick={(e) => this.onClick(e)}
52 > 52 >
53 {children} 53 {children}
54 </a> 54 </a>
diff --git a/src/components/ui/Modal/styles.js b/src/components/ui/Modal/styles.js
index c2bebf9bb..f32c075ce 100644
--- a/src/components/ui/Modal/styles.js
+++ b/src/components/ui/Modal/styles.js
@@ -1,4 +1,4 @@
1export default theme => ({ 1export default (theme) => ({
2 component: { 2 component: {
3 zIndex: 500, 3 zIndex: 500,
4 position: 'absolute', 4 position: 'absolute',
diff --git a/src/components/ui/Radio.js b/src/components/ui/Radio.js
index ba13aca63..e77714eb7 100644
--- a/src/components/ui/Radio.js
+++ b/src/components/ui/Radio.js
@@ -54,7 +54,7 @@ export default @observer class Radio extends Component {
54 </label> 54 </label>
55 )} 55 )}
56 <div className="franz-form__radio-wrapper"> 56 <div className="franz-form__radio-wrapper">
57 {field.options.map(type => ( 57 {field.options.map((type) => (
58 <label 58 <label
59 key={type.value} 59 key={type.value}
60 htmlFor={`${field.id}-${type.value}`} 60 htmlFor={`${field.id}-${type.value}`}
diff --git a/src/components/ui/SearchInput.js b/src/components/ui/SearchInput.js
index 78d6aae8b..0b25734dd 100644
--- a/src/components/ui/SearchInput.js
+++ b/src/components/ui/SearchInput.js
@@ -96,7 +96,7 @@ export default @observer class SearchInput extends Component {
96 type="text" 96 type="text"
97 placeholder={placeholder} 97 placeholder={placeholder}
98 value={value} 98 value={value}
99 onChange={e => this.onChange(e)} 99 onChange={(e) => this.onChange(e)}
100 ref={(ref) => { this.input = ref; }} 100 ref={(ref) => { this.input = ref; }}
101 /> 101 />
102 </label> 102 </label>
diff --git a/src/components/ui/Select.js b/src/components/ui/Select.js
index b4511433c..e7a5eafa8 100644
--- a/src/components/ui/Select.js
+++ b/src/components/ui/Select.js
@@ -82,7 +82,7 @@ export default @observer class Select extends Component {
82 </label> 82 </label>
83 )} 83 )}
84 <select 84 <select
85 onChange={multiple ? e => this.multipleChange(e) : field.onChange} 85 onChange={multiple ? (e) => this.multipleChange(e) : field.onChange}
86 id={field.id} 86 id={field.id}
87 defaultValue={selected} 87 defaultValue={selected}
88 className="franz-form__select" 88 className="franz-form__select"
@@ -90,7 +90,7 @@ export default @observer class Select extends Component {
90 multiple={multiple} 90 multiple={multiple}
91 ref={this.element} 91 ref={this.element}
92 > 92 >
93 {field.options.map(type => ( 93 {field.options.map((type) => (
94 <option 94 <option
95 key={type.value} 95 key={type.value}
96 value={type.value} 96 value={type.value}
diff --git a/src/components/ui/ServiceIcon.js b/src/components/ui/ServiceIcon.js
index 0b9155a4e..b2dadeac3 100644
--- a/src/components/ui/ServiceIcon.js
+++ b/src/components/ui/ServiceIcon.js
@@ -6,7 +6,7 @@ import classnames from 'classnames';
6 6
7import ServiceModel from '../../models/Service'; 7import ServiceModel from '../../models/Service';
8 8
9const styles = theme => ({ 9const styles = (theme) => ({
10 root: { 10 root: {
11 height: 'auto', 11 height: 'auto',
12 }, 12 },
diff --git a/src/components/ui/Slider.js b/src/components/ui/Slider.js
index b00a6a3f8..f344449a0 100644
--- a/src/components/ui/Slider.js
+++ b/src/components/ui/Slider.js
@@ -53,7 +53,7 @@ export default @observer class Slider extends Component {
53 value={field.value} 53 value={field.value}
54 min="1" 54 min="1"
55 max="100" 55 max="100"
56 onChange={e => (!disabled ? this.onChange(e) : null)} 56 onChange={(e) => (!disabled ? this.onChange(e) : null)}
57 /> 57 />
58 </div> 58 </div>
59 59
diff --git a/src/components/ui/Tabs/TabItem.js b/src/components/ui/Tabs/TabItem.js
index 546b05a4e..d0ef4e798 100644
--- a/src/components/ui/Tabs/TabItem.js
+++ b/src/components/ui/Tabs/TabItem.js
@@ -1,17 +1,15 @@
1import React, { Component, Fragment } from 'react'; 1import React, { Component } from 'react';
2 2
3import { oneOrManyChildElements } from '../../../prop-types'; 3import { oneOrManyChildElements } from '../../../prop-types';
4 4
5export default class TabItem extends Component { 5export default class TabItem extends Component {
6 static propTypes = { 6 static propTypes = {
7 children: oneOrManyChildElements.isRequired, 7 children: oneOrManyChildElements.isRequired,
8 } 8 };
9 9
10 render() { 10 render() {
11 const { children } = this.props; 11 const { children } = this.props;
12 12
13 return ( 13 return <>{children}</>;
14 <>{children}</>
15 );
16 } 14 }
17} 15}
diff --git a/src/components/ui/Tabs/Tabs.js b/src/components/ui/Tabs/Tabs.js
index e68dc3a1d..56c76f215 100644
--- a/src/components/ui/Tabs/Tabs.js
+++ b/src/components/ui/Tabs/Tabs.js
@@ -28,7 +28,7 @@ class Tab extends Component {
28 28
29 render() { 29 render() {
30 const { children: childElements } = this.props; 30 const { children: childElements } = this.props;
31 const children = childElements.filter(c => !!c); 31 const children = childElements.filter((c) => !!c);
32 32
33 if (children.length === 1) { 33 if (children.length === 1) {
34 return <div>{children}</div>; 34 return <div>{children}</div>;
diff --git a/src/components/ui/Toggle.js b/src/components/ui/Toggle.js
index 78fb77cbe..14330e5c7 100644
--- a/src/components/ui/Toggle.js
+++ b/src/components/ui/Toggle.js
@@ -59,7 +59,7 @@ export default @observer class Toggle extends Component {
59 name={field.name} 59 name={field.name}
60 value={field.name} 60 value={field.name}
61 checked={field.value} 61 checked={field.value}
62 onChange={e => (!disabled ? this.onChange(e) : null)} 62 onChange={(e) => (!disabled ? this.onChange(e) : null)}
63 /> 63 />
64 </label> 64 </label>
65 {field.error && <div className={field.error}>{field.error}</div>} 65 {field.error && <div className={field.error}>{field.error}</div>}
diff --git a/src/components/ui/ToggleRaw.js b/src/components/ui/ToggleRaw.js
index dcaf664e1..4700127d4 100644
--- a/src/components/ui/ToggleRaw.js
+++ b/src/components/ui/ToggleRaw.js
@@ -64,7 +64,7 @@ export default @observer class ToggleRaw extends Component {
64 name={field.name} 64 name={field.name}
65 value={field.name} 65 value={field.name}
66 checked={field.value} 66 checked={field.value}
67 onChange={e => (!disabled ? this.onChange(e) : null)} 67 onChange={(e) => (!disabled ? this.onChange(e) : null)}
68 /> 68 />
69 </label> 69 </label>
70 {field.error && <div className={field.error}>{field.error}</div>} 70 {field.error && <div className={field.error}>{field.error}</div>}
diff --git a/src/components/ui/WebviewLoader/styles.js b/src/components/ui/WebviewLoader/styles.js
index dbd75db8a..5d58011fe 100644
--- a/src/components/ui/WebviewLoader/styles.js
+++ b/src/components/ui/WebviewLoader/styles.js
@@ -1,4 +1,4 @@
1export default theme => ({ 1export default (theme) => ({
2 component: { 2 component: {
3 background: theme.colorWebviewLoaderBackground, 3 background: theme.colorWebviewLoaderBackground,
4 padding: 20, 4 padding: 20,
diff --git a/src/components/util/ErrorBoundary/styles.js b/src/components/util/ErrorBoundary/styles.js
index 0960546ff..51b36fdf3 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%',