aboutsummaryrefslogtreecommitdiffstats
path: root/src/containers/auth/LockedScreen.js
diff options
context:
space:
mode:
authorLibravatar Vijay A <vraravam@users.noreply.github.com>2022-05-08 21:00:17 -0500
committerLibravatar Vijay Aravamudhan <vraravam@users.noreply.github.com>2022-05-08 22:19:29 -0400
commitdb25991927e9b74eda2f3a9df5d01908abc04208 (patch)
tree28b82e6e50512ceecdae4e6d2ddec50f0c7835b5 /src/containers/auth/LockedScreen.js
parentNew Crowdin updates (#119) [skip ci] (diff)
downloadferdium-app-db25991927e9b74eda2f3a9df5d01908abc04208.tar.gz
ferdium-app-db25991927e9b74eda2f3a9df5d01908abc04208.tar.zst
ferdium-app-db25991927e9b74eda2f3a9df5d01908abc04208.zip
Converted some javascript files to typescript
Diffstat (limited to 'src/containers/auth/LockedScreen.js')
-rw-r--r--src/containers/auth/LockedScreen.js85
1 files changed, 0 insertions, 85 deletions
diff --git a/src/containers/auth/LockedScreen.js b/src/containers/auth/LockedScreen.js
deleted file mode 100644
index d99a4051b..000000000
--- a/src/containers/auth/LockedScreen.js
+++ /dev/null
@@ -1,85 +0,0 @@
1import { Component } from 'react';
2import PropTypes from 'prop-types';
3import { inject, observer } from 'mobx-react';
4import Locked from '../../components/auth/Locked';
5import SettingsStore from '../../stores/SettingsStore';
6
7import { hash } from '../../helpers/password-helpers';
8import UserStore from '../../stores/UserStore';
9
10class LockedScreen extends Component {
11 state = {
12 error: false,
13 };
14
15 constructor(props) {
16 super(props);
17
18 this.onSubmit = this.onSubmit.bind(this);
19 this.unlock = this.unlock.bind(this);
20 }
21
22 onSubmit(values) {
23 const { password } = values;
24
25 let correctPassword = this.props.stores.settings.all.app.lockedPassword;
26 if (!correctPassword) {
27 correctPassword = '';
28 }
29
30 if (hash(String(password)) === String(correctPassword)) {
31 this.props.actions.settings.update({
32 type: 'app',
33 data: {
34 locked: false,
35 },
36 });
37 } else {
38 this.setState({
39 error: {
40 code: 'invalid-credentials',
41 },
42 });
43 }
44 }
45
46 unlock() {
47 this.props.actions.settings.update({
48 type: 'app',
49 data: {
50 locked: false,
51 },
52 });
53 }
54
55 render() {
56 const { stores } = this.props;
57 const { useTouchIdToUnlock } = this.props.stores.settings.all.app;
58
59 return (
60 <div className="auth">
61 <div className="auth__layout">
62 <Locked
63 onSubmit={this.onSubmit}
64 unlock={this.unlock}
65 useTouchIdToUnlock={useTouchIdToUnlock}
66 isSubmitting={stores.user.loginRequest.isExecuting}
67 error={this.state.error || {}}
68 />
69 </div>
70 </div>
71 );
72 }
73}
74
75LockedScreen.propTypes = {
76 actions: PropTypes.shape({
77 settings: PropTypes.instanceOf(SettingsStore).isRequired,
78 }).isRequired,
79 stores: PropTypes.shape({
80 settings: PropTypes.instanceOf(SettingsStore).isRequired,
81 user: PropTypes.instanceOf(UserStore).isRequired,
82 }).isRequired,
83};
84
85export default inject('stores', 'actions')(observer(LockedScreen));