aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLibravatar Bennett <hello@vantezzen.io>2020-05-03 16:07:02 +0200
committerLibravatar GitHub <noreply@github.com>2020-05-03 16:07:02 +0200
commit2f28ec495d5ba2f9368020391dd52da16ed008cd (patch)
treeb49b8186c578140bb860c5bf95c0177757b16178 /src
parentCreate SECURITY.md (#705) (diff)
downloadferdium-app-2f28ec495d5ba2f9368020391dd52da16ed008cd.tar.gz
ferdium-app-2f28ec495d5ba2f9368020391dd52da16ed008cd.tar.zst
ferdium-app-2f28ec495d5ba2f9368020391dd52da16ed008cd.zip
Add password hashing to lock password (#694)
Diffstat (limited to 'src')
-rw-r--r--src/containers/auth/LockedScreen.js4
-rw-r--r--src/containers/settings/EditSettingsScreen.js18
-rw-r--r--src/i18n/locales/defaultMessages.json152
-rw-r--r--src/i18n/messages/src/containers/settings/EditSettingsScreen.json152
-rw-r--r--src/stores/SettingsStore.js21
5 files changed, 192 insertions, 155 deletions
diff --git a/src/containers/auth/LockedScreen.js b/src/containers/auth/LockedScreen.js
index 8f6ce85c3..a04107072 100644
--- a/src/containers/auth/LockedScreen.js
+++ b/src/containers/auth/LockedScreen.js
@@ -4,6 +4,8 @@ import { inject, observer } from 'mobx-react';
4import Locked from '../../components/auth/Locked'; 4import Locked from '../../components/auth/Locked';
5import SettingsStore from '../../stores/SettingsStore'; 5import SettingsStore from '../../stores/SettingsStore';
6 6
7import { hash } from '../../helpers/password-helpers';
8
7export default @inject('stores', 'actions') @observer class LockedScreen extends Component { 9export default @inject('stores', 'actions') @observer class LockedScreen extends Component {
8 state = { 10 state = {
9 error: false, 11 error: false,
@@ -24,7 +26,7 @@ export default @inject('stores', 'actions') @observer class LockedScreen extends
24 correctPassword = ''; 26 correctPassword = '';
25 } 27 }
26 28
27 if (String(password) === String(correctPassword)) { 29 if (hash(String(password)) === String(correctPassword)) {
28 this.props.actions.settings.update({ 30 this.props.actions.settings.update({
29 type: 'app', 31 type: 'app',
30 data: { 32 data: {
diff --git a/src/containers/settings/EditSettingsScreen.js b/src/containers/settings/EditSettingsScreen.js
index f6c2d4360..3dba3bc11 100644
--- a/src/containers/settings/EditSettingsScreen.js
+++ b/src/containers/settings/EditSettingsScreen.js
@@ -16,6 +16,7 @@ import {
16import { config as spellcheckerConfig } from '../../features/spellchecker'; 16import { config as spellcheckerConfig } from '../../features/spellchecker';
17 17
18import { getSelectOptions } from '../../helpers/i18n-helpers'; 18import { getSelectOptions } from '../../helpers/i18n-helpers';
19import { hash } from '../../helpers/password-helpers';
19 20
20import EditSettingsForm from '../../components/settings/settings/EditSettingsForm'; 21import EditSettingsForm from '../../components/settings/settings/EditSettingsForm';
21import ErrorBoundary from '../../components/util/ErrorBoundary'; 22import ErrorBoundary from '../../components/util/ErrorBoundary';
@@ -185,6 +186,14 @@ export default @inject('stores', 'actions') @observer class EditSettingsScreen e
185 intl: intlShape, 186 intl: intlShape,
186 }; 187 };
187 188
189 constructor(props) {
190 super(props);
191
192 this.state = {
193 lockedPassword: '',
194 };
195 }
196
188 onSubmit(settingsData) { 197 onSubmit(settingsData) {
189 const { todos, workspaces } = this.props.stores; 198 const { todos, workspaces } = this.props.stores;
190 const { 199 const {
@@ -195,6 +204,10 @@ export default @inject('stores', 'actions') @observer class EditSettingsScreen e
195 workspaces: workspaceActions, 204 workspaces: workspaceActions,
196 } = this.props.actions; 205 } = this.props.actions;
197 206
207 this.setState({
208 lockedPassword: settingsData.lockedPassword,
209 });
210
198 app.launchOnStartup({ 211 app.launchOnStartup({
199 enable: settingsData.autoLaunchOnStart, 212 enable: settingsData.autoLaunchOnStart,
200 openInBackground: settingsData.autoLaunchInBackground, 213 openInBackground: settingsData.autoLaunchInBackground,
@@ -217,7 +230,7 @@ export default @inject('stores', 'actions') @observer class EditSettingsScreen e
217 predefinedTodoServer: settingsData.predefinedTodoServer, 230 predefinedTodoServer: settingsData.predefinedTodoServer,
218 customTodoServer: settingsData.customTodoServer, 231 customTodoServer: settingsData.customTodoServer,
219 lockingFeatureEnabled: settingsData.lockingFeatureEnabled, 232 lockingFeatureEnabled: settingsData.lockingFeatureEnabled,
220 lockedPassword: settingsData.lockedPassword, 233 lockedPassword: hash(String(settingsData.lockedPassword)),
221 useTouchIdToUnlock: settingsData.useTouchIdToUnlock, 234 useTouchIdToUnlock: settingsData.useTouchIdToUnlock,
222 inactivityLock: settingsData.inactivityLock, 235 inactivityLock: settingsData.inactivityLock,
223 scheduledDNDEnabled: settingsData.scheduledDNDEnabled, 236 scheduledDNDEnabled: settingsData.scheduledDNDEnabled,
@@ -273,6 +286,7 @@ export default @inject('stores', 'actions') @observer class EditSettingsScreen e
273 app, settings, user, todos, workspaces, 286 app, settings, user, todos, workspaces,
274 } = this.props.stores; 287 } = this.props.stores;
275 const { intl } = this.context; 288 const { intl } = this.context;
289 const { lockedPassword } = this.state;
276 290
277 const locales = getSelectOptions({ 291 const locales = getSelectOptions({
278 locales: APP_LOCALES, 292 locales: APP_LOCALES,
@@ -395,7 +409,7 @@ export default @inject('stores', 'actions') @observer class EditSettingsScreen e
395 }, 409 },
396 lockedPassword: { 410 lockedPassword: {
397 label: intl.formatMessage(messages.lockPassword), 411 label: intl.formatMessage(messages.lockPassword),
398 value: settings.all.app.lockedPassword, 412 value: lockedPassword,
399 default: '', 413 default: '',
400 type: 'password', 414 type: 'password',
401 }, 415 },
diff --git a/src/i18n/locales/defaultMessages.json b/src/i18n/locales/defaultMessages.json
index 5e3fe5810..6b3f3066c 100644
--- a/src/i18n/locales/defaultMessages.json
+++ b/src/i18n/locales/defaultMessages.json
@@ -4541,494 +4541,494 @@
4541 "defaultMessage": "!!!Launch Ferdi on start", 4541 "defaultMessage": "!!!Launch Ferdi on start",
4542 "end": { 4542 "end": {
4543 "column": 3, 4543 "column": 3,
4544 "line": 32 4544 "line": 33
4545 }, 4545 },
4546 "file": "src/containers/settings/EditSettingsScreen.js", 4546 "file": "src/containers/settings/EditSettingsScreen.js",
4547 "id": "settings.app.form.autoLaunchOnStart", 4547 "id": "settings.app.form.autoLaunchOnStart",
4548 "start": { 4548 "start": {
4549 "column": 21, 4549 "column": 21,
4550 "line": 29 4550 "line": 30
4551 } 4551 }
4552 }, 4552 },
4553 { 4553 {
4554 "defaultMessage": "!!!Open in background", 4554 "defaultMessage": "!!!Open in background",
4555 "end": { 4555 "end": {
4556 "column": 3, 4556 "column": 3,
4557 "line": 36 4557 "line": 37
4558 }, 4558 },
4559 "file": "src/containers/settings/EditSettingsScreen.js", 4559 "file": "src/containers/settings/EditSettingsScreen.js",
4560 "id": "settings.app.form.autoLaunchInBackground", 4560 "id": "settings.app.form.autoLaunchInBackground",
4561 "start": { 4561 "start": {
4562 "column": 26, 4562 "column": 26,
4563 "line": 33 4563 "line": 34
4564 } 4564 }
4565 }, 4565 },
4566 { 4566 {
4567 "defaultMessage": "!!!Keep Ferdi in background when closing the window", 4567 "defaultMessage": "!!!Keep Ferdi in background when closing the window",
4568 "end": { 4568 "end": {
4569 "column": 3, 4569 "column": 3,
4570 "line": 40 4570 "line": 41
4571 }, 4571 },
4572 "file": "src/containers/settings/EditSettingsScreen.js", 4572 "file": "src/containers/settings/EditSettingsScreen.js",
4573 "id": "settings.app.form.runInBackground", 4573 "id": "settings.app.form.runInBackground",
4574 "start": { 4574 "start": {
4575 "column": 19, 4575 "column": 19,
4576 "line": 37 4576 "line": 38
4577 } 4577 }
4578 }, 4578 },
4579 { 4579 {
4580 "defaultMessage": "!!!Start minimized", 4580 "defaultMessage": "!!!Start minimized",
4581 "end": { 4581 "end": {
4582 "column": 3, 4582 "column": 3,
4583 "line": 44 4583 "line": 45
4584 }, 4584 },
4585 "file": "src/containers/settings/EditSettingsScreen.js", 4585 "file": "src/containers/settings/EditSettingsScreen.js",
4586 "id": "settings.app.form.startMinimized", 4586 "id": "settings.app.form.startMinimized",
4587 "start": { 4587 "start": {
4588 "column": 18, 4588 "column": 18,
4589 "line": 41 4589 "line": 42
4590 } 4590 }
4591 }, 4591 },
4592 { 4592 {
4593 "defaultMessage": "!!!Always show Ferdi in system tray", 4593 "defaultMessage": "!!!Always show Ferdi in system tray",
4594 "end": { 4594 "end": {
4595 "column": 3, 4595 "column": 3,
4596 "line": 48 4596 "line": 49
4597 }, 4597 },
4598 "file": "src/containers/settings/EditSettingsScreen.js", 4598 "file": "src/containers/settings/EditSettingsScreen.js",
4599 "id": "settings.app.form.enableSystemTray", 4599 "id": "settings.app.form.enableSystemTray",
4600 "start": { 4600 "start": {
4601 "column": 20, 4601 "column": 20,
4602 "line": 45 4602 "line": 46
4603 } 4603 }
4604 }, 4604 },
4605 { 4605 {
4606 "defaultMessage": "!!!Reload Ferdi after system resume", 4606 "defaultMessage": "!!!Reload Ferdi after system resume",
4607 "end": { 4607 "end": {
4608 "column": 3, 4608 "column": 3,
4609 "line": 52 4609 "line": 53
4610 }, 4610 },
4611 "file": "src/containers/settings/EditSettingsScreen.js", 4611 "file": "src/containers/settings/EditSettingsScreen.js",
4612 "id": "settings.app.form.reloadAfterResume", 4612 "id": "settings.app.form.reloadAfterResume",
4613 "start": { 4613 "start": {
4614 "column": 21, 4614 "column": 21,
4615 "line": 49 4615 "line": 50
4616 } 4616 }
4617 }, 4617 },
4618 { 4618 {
4619 "defaultMessage": "!!!Minimize Ferdi to system tray", 4619 "defaultMessage": "!!!Minimize Ferdi to system tray",
4620 "end": { 4620 "end": {
4621 "column": 3, 4621 "column": 3,
4622 "line": 56 4622 "line": 57
4623 }, 4623 },
4624 "file": "src/containers/settings/EditSettingsScreen.js", 4624 "file": "src/containers/settings/EditSettingsScreen.js",
4625 "id": "settings.app.form.minimizeToSystemTray", 4625 "id": "settings.app.form.minimizeToSystemTray",
4626 "start": { 4626 "start": {
4627 "column": 24, 4627 "column": 24,
4628 "line": 53 4628 "line": 54
4629 } 4629 }
4630 }, 4630 },
4631 { 4631 {
4632 "defaultMessage": "!!!Don't show message content in notifications", 4632 "defaultMessage": "!!!Don't show message content in notifications",
4633 "end": { 4633 "end": {
4634 "column": 3, 4634 "column": 3,
4635 "line": 60 4635 "line": 61
4636 }, 4636 },
4637 "file": "src/containers/settings/EditSettingsScreen.js", 4637 "file": "src/containers/settings/EditSettingsScreen.js",
4638 "id": "settings.app.form.privateNotifications", 4638 "id": "settings.app.form.privateNotifications",
4639 "start": { 4639 "start": {
4640 "column": 24, 4640 "column": 24,
4641 "line": 57 4641 "line": 58
4642 } 4642 }
4643 }, 4643 },
4644 { 4644 {
4645 "defaultMessage": "!!!Navigation bar behaviour", 4645 "defaultMessage": "!!!Navigation bar behaviour",
4646 "end": { 4646 "end": {
4647 "column": 3, 4647 "column": 3,
4648 "line": 64 4648 "line": 65
4649 }, 4649 },
4650 "file": "src/containers/settings/EditSettingsScreen.js", 4650 "file": "src/containers/settings/EditSettingsScreen.js",
4651 "id": "settings.app.form.navigationBarBehaviour", 4651 "id": "settings.app.form.navigationBarBehaviour",
4652 "start": { 4652 "start": {
4653 "column": 26, 4653 "column": 26,
4654 "line": 61 4654 "line": 62
4655 } 4655 }
4656 }, 4656 },
4657 { 4657 {
4658 "defaultMessage": "!!!Send telemetry data", 4658 "defaultMessage": "!!!Send telemetry data",
4659 "end": { 4659 "end": {
4660 "column": 3, 4660 "column": 3,
4661 "line": 68 4661 "line": 69
4662 }, 4662 },
4663 "file": "src/containers/settings/EditSettingsScreen.js", 4663 "file": "src/containers/settings/EditSettingsScreen.js",
4664 "id": "settings.app.form.sentry", 4664 "id": "settings.app.form.sentry",
4665 "start": { 4665 "start": {
4666 "column": 10, 4666 "column": 10,
4667 "line": 65 4667 "line": 66
4668 } 4668 }
4669 }, 4669 },
4670 { 4670 {
4671 "defaultMessage": "!!!Enable service hibernation", 4671 "defaultMessage": "!!!Enable service hibernation",
4672 "end": { 4672 "end": {
4673 "column": 3, 4673 "column": 3,
4674 "line": 72 4674 "line": 73
4675 }, 4675 },
4676 "file": "src/containers/settings/EditSettingsScreen.js", 4676 "file": "src/containers/settings/EditSettingsScreen.js",
4677 "id": "settings.app.form.hibernate", 4677 "id": "settings.app.form.hibernate",
4678 "start": { 4678 "start": {
4679 "column": 13, 4679 "column": 13,
4680 "line": 69 4680 "line": 70
4681 } 4681 }
4682 }, 4682 },
4683 { 4683 {
4684 "defaultMessage": "!!!Keep services in hibernation on startup", 4684 "defaultMessage": "!!!Keep services in hibernation on startup",
4685 "end": { 4685 "end": {
4686 "column": 3, 4686 "column": 3,
4687 "line": 76 4687 "line": 77
4688 }, 4688 },
4689 "file": "src/containers/settings/EditSettingsScreen.js", 4689 "file": "src/containers/settings/EditSettingsScreen.js",
4690 "id": "settings.app.form.hibernateOnStartup", 4690 "id": "settings.app.form.hibernateOnStartup",
4691 "start": { 4691 "start": {
4692 "column": 22, 4692 "column": 22,
4693 "line": 73 4693 "line": 74
4694 } 4694 }
4695 }, 4695 },
4696 { 4696 {
4697 "defaultMessage": "!!!Hibernation strategy", 4697 "defaultMessage": "!!!Hibernation strategy",
4698 "end": { 4698 "end": {
4699 "column": 3, 4699 "column": 3,
4700 "line": 80 4700 "line": 81
4701 }, 4701 },
4702 "file": "src/containers/settings/EditSettingsScreen.js", 4702 "file": "src/containers/settings/EditSettingsScreen.js",
4703 "id": "settings.app.form.hibernationStrategy", 4703 "id": "settings.app.form.hibernationStrategy",
4704 "start": { 4704 "start": {
4705 "column": 23, 4705 "column": 23,
4706 "line": 77 4706 "line": 78
4707 } 4707 }
4708 }, 4708 },
4709 { 4709 {
4710 "defaultMessage": "!!!Todo Server", 4710 "defaultMessage": "!!!Todo Server",
4711 "end": { 4711 "end": {
4712 "column": 3, 4712 "column": 3,
4713 "line": 84 4713 "line": 85
4714 }, 4714 },
4715 "file": "src/containers/settings/EditSettingsScreen.js", 4715 "file": "src/containers/settings/EditSettingsScreen.js",
4716 "id": "settings.app.form.predefinedTodoServer", 4716 "id": "settings.app.form.predefinedTodoServer",
4717 "start": { 4717 "start": {
4718 "column": 24, 4718 "column": 24,
4719 "line": 81 4719 "line": 82
4720 } 4720 }
4721 }, 4721 },
4722 { 4722 {
4723 "defaultMessage": "!!!Custom TodoServer", 4723 "defaultMessage": "!!!Custom TodoServer",
4724 "end": { 4724 "end": {
4725 "column": 3, 4725 "column": 3,
4726 "line": 88 4726 "line": 89
4727 }, 4727 },
4728 "file": "src/containers/settings/EditSettingsScreen.js", 4728 "file": "src/containers/settings/EditSettingsScreen.js",
4729 "id": "settings.app.form.customTodoServer", 4729 "id": "settings.app.form.customTodoServer",
4730 "start": { 4730 "start": {
4731 "column": 20, 4731 "column": 20,
4732 "line": 85 4732 "line": 86
4733 } 4733 }
4734 }, 4734 },
4735 { 4735 {
4736 "defaultMessage": "!!!Enable Password Lock", 4736 "defaultMessage": "!!!Enable Password Lock",
4737 "end": { 4737 "end": {
4738 "column": 3, 4738 "column": 3,
4739 "line": 92 4739 "line": 93
4740 }, 4740 },
4741 "file": "src/containers/settings/EditSettingsScreen.js", 4741 "file": "src/containers/settings/EditSettingsScreen.js",
4742 "id": "settings.app.form.enableLock", 4742 "id": "settings.app.form.enableLock",
4743 "start": { 4743 "start": {
4744 "column": 14, 4744 "column": 14,
4745 "line": 89 4745 "line": 90
4746 } 4746 }
4747 }, 4747 },
4748 { 4748 {
4749 "defaultMessage": "!!!Password", 4749 "defaultMessage": "!!!Password",
4750 "end": { 4750 "end": {
4751 "column": 3, 4751 "column": 3,
4752 "line": 96 4752 "line": 97
4753 }, 4753 },
4754 "file": "src/containers/settings/EditSettingsScreen.js", 4754 "file": "src/containers/settings/EditSettingsScreen.js",
4755 "id": "settings.app.form.lockPassword", 4755 "id": "settings.app.form.lockPassword",
4756 "start": { 4756 "start": {
4757 "column": 16, 4757 "column": 16,
4758 "line": 93 4758 "line": 94
4759 } 4759 }
4760 }, 4760 },
4761 { 4761 {
4762 "defaultMessage": "!!!Allow using Touch ID to unlock", 4762 "defaultMessage": "!!!Allow using Touch ID to unlock",
4763 "end": { 4763 "end": {
4764 "column": 3, 4764 "column": 3,
4765 "line": 100 4765 "line": 101
4766 }, 4766 },
4767 "file": "src/containers/settings/EditSettingsScreen.js", 4767 "file": "src/containers/settings/EditSettingsScreen.js",
4768 "id": "settings.app.form.useTouchIdToUnlock", 4768 "id": "settings.app.form.useTouchIdToUnlock",
4769 "start": { 4769 "start": {
4770 "column": 22, 4770 "column": 22,
4771 "line": 97 4771 "line": 98
4772 } 4772 }
4773 }, 4773 },
4774 { 4774 {
4775 "defaultMessage": "!!!Lock after inactivity", 4775 "defaultMessage": "!!!Lock after inactivity",
4776 "end": { 4776 "end": {
4777 "column": 3, 4777 "column": 3,
4778 "line": 104 4778 "line": 105
4779 }, 4779 },
4780 "file": "src/containers/settings/EditSettingsScreen.js", 4780 "file": "src/containers/settings/EditSettingsScreen.js",
4781 "id": "settings.app.form.inactivityLock", 4781 "id": "settings.app.form.inactivityLock",
4782 "start": { 4782 "start": {
4783 "column": 18, 4783 "column": 18,
4784 "line": 101 4784 "line": 102
4785 } 4785 }
4786 }, 4786 },
4787 { 4787 {
4788 "defaultMessage": "!!!Enable scheduled Do-not-Disturb", 4788 "defaultMessage": "!!!Enable scheduled Do-not-Disturb",
4789 "end": { 4789 "end": {
4790 "column": 3, 4790 "column": 3,
4791 "line": 108 4791 "line": 109
4792 }, 4792 },
4793 "file": "src/containers/settings/EditSettingsScreen.js", 4793 "file": "src/containers/settings/EditSettingsScreen.js",
4794 "id": "settings.app.form.scheduledDNDEnabled", 4794 "id": "settings.app.form.scheduledDNDEnabled",
4795 "start": { 4795 "start": {
4796 "column": 23, 4796 "column": 23,
4797 "line": 105 4797 "line": 106
4798 } 4798 }
4799 }, 4799 },
4800 { 4800 {
4801 "defaultMessage": "!!!From", 4801 "defaultMessage": "!!!From",
4802 "end": { 4802 "end": {
4803 "column": 3, 4803 "column": 3,
4804 "line": 112 4804 "line": 113
4805 }, 4805 },
4806 "file": "src/containers/settings/EditSettingsScreen.js", 4806 "file": "src/containers/settings/EditSettingsScreen.js",
4807 "id": "settings.app.form.scheduledDNDStart", 4807 "id": "settings.app.form.scheduledDNDStart",
4808 "start": { 4808 "start": {
4809 "column": 21, 4809 "column": 21,
4810 "line": 109 4810 "line": 110
4811 } 4811 }
4812 }, 4812 },
4813 { 4813 {
4814 "defaultMessage": "!!!To", 4814 "defaultMessage": "!!!To",
4815 "end": { 4815 "end": {
4816 "column": 3, 4816 "column": 3,
4817 "line": 116 4817 "line": 117
4818 }, 4818 },
4819 "file": "src/containers/settings/EditSettingsScreen.js", 4819 "file": "src/containers/settings/EditSettingsScreen.js",
4820 "id": "settings.app.form.scheduledDNDEnd", 4820 "id": "settings.app.form.scheduledDNDEnd",
4821 "start": { 4821 "start": {
4822 "column": 19, 4822 "column": 19,
4823 "line": 113 4823 "line": 114
4824 } 4824 }
4825 }, 4825 },
4826 { 4826 {
4827 "defaultMessage": "!!!Language", 4827 "defaultMessage": "!!!Language",
4828 "end": { 4828 "end": {
4829 "column": 3, 4829 "column": 3,
4830 "line": 120 4830 "line": 121
4831 }, 4831 },
4832 "file": "src/containers/settings/EditSettingsScreen.js", 4832 "file": "src/containers/settings/EditSettingsScreen.js",
4833 "id": "settings.app.form.language", 4833 "id": "settings.app.form.language",
4834 "start": { 4834 "start": {
4835 "column": 12, 4835 "column": 12,
4836 "line": 117 4836 "line": 118
4837 } 4837 }
4838 }, 4838 },
4839 { 4839 {
4840 "defaultMessage": "!!!Dark Mode", 4840 "defaultMessage": "!!!Dark Mode",
4841 "end": { 4841 "end": {
4842 "column": 3, 4842 "column": 3,
4843 "line": 124 4843 "line": 125
4844 }, 4844 },
4845 "file": "src/containers/settings/EditSettingsScreen.js", 4845 "file": "src/containers/settings/EditSettingsScreen.js",
4846 "id": "settings.app.form.darkMode", 4846 "id": "settings.app.form.darkMode",
4847 "start": { 4847 "start": {
4848 "column": 12, 4848 "column": 12,
4849 "line": 121 4849 "line": 122
4850 } 4850 }
4851 }, 4851 },
4852 { 4852 {
4853 "defaultMessage": "!!!Synchronize dark mode with my OS's dark mode setting", 4853 "defaultMessage": "!!!Synchronize dark mode with my OS's dark mode setting",
4854 "end": { 4854 "end": {
4855 "column": 3, 4855 "column": 3,
4856 "line": 128 4856 "line": 129
4857 }, 4857 },
4858 "file": "src/containers/settings/EditSettingsScreen.js", 4858 "file": "src/containers/settings/EditSettingsScreen.js",
4859 "id": "settings.app.form.adaptableDarkMode", 4859 "id": "settings.app.form.adaptableDarkMode",
4860 "start": { 4860 "start": {
4861 "column": 21, 4861 "column": 21,
4862 "line": 125 4862 "line": 126
4863 } 4863 }
4864 }, 4864 },
4865 { 4865 {
4866 "defaultMessage": "!!!Enable universal Dark Mode", 4866 "defaultMessage": "!!!Enable universal Dark Mode",
4867 "end": { 4867 "end": {
4868 "column": 3, 4868 "column": 3,
4869 "line": 132 4869 "line": 133
4870 }, 4870 },
4871 "file": "src/containers/settings/EditSettingsScreen.js", 4871 "file": "src/containers/settings/EditSettingsScreen.js",
4872 "id": "settings.app.form.universalDarkMode", 4872 "id": "settings.app.form.universalDarkMode",
4873 "start": { 4873 "start": {
4874 "column": 21, 4874 "column": 21,
4875 "line": 129 4875 "line": 130
4876 } 4876 }
4877 }, 4877 },
4878 { 4878 {
4879 "defaultMessage": "!!!Sidebar width", 4879 "defaultMessage": "!!!Sidebar width",
4880 "end": { 4880 "end": {
4881 "column": 3, 4881 "column": 3,
4882 "line": 136 4882 "line": 137
4883 }, 4883 },
4884 "file": "src/containers/settings/EditSettingsScreen.js", 4884 "file": "src/containers/settings/EditSettingsScreen.js",
4885 "id": "settings.app.form.serviceRibbonWidth", 4885 "id": "settings.app.form.serviceRibbonWidth",
4886 "start": { 4886 "start": {
4887 "column": 22, 4887 "column": 22,
4888 "line": 133 4888 "line": 134
4889 } 4889 }
4890 }, 4890 },
4891 { 4891 {
4892 "defaultMessage": "!!!Service icon size", 4892 "defaultMessage": "!!!Service icon size",
4893 "end": { 4893 "end": {
4894 "column": 3, 4894 "column": 3,
4895 "line": 140 4895 "line": 141
4896 }, 4896 },
4897 "file": "src/containers/settings/EditSettingsScreen.js", 4897 "file": "src/containers/settings/EditSettingsScreen.js",
4898 "id": "settings.app.form.iconSize", 4898 "id": "settings.app.form.iconSize",
4899 "start": { 4899 "start": {
4900 "column": 12, 4900 "column": 12,
4901 "line": 137 4901 "line": 138
4902 } 4902 }
4903 }, 4903 },
4904 { 4904 {
4905 "defaultMessage": "!!!Accent color", 4905 "defaultMessage": "!!!Accent color",
4906 "end": { 4906 "end": {
4907 "column": 3, 4907 "column": 3,
4908 "line": 144 4908 "line": 145
4909 }, 4909 },
4910 "file": "src/containers/settings/EditSettingsScreen.js", 4910 "file": "src/containers/settings/EditSettingsScreen.js",
4911 "id": "settings.app.form.accentColor", 4911 "id": "settings.app.form.accentColor",
4912 "start": { 4912 "start": {
4913 "column": 15, 4913 "column": 15,
4914 "line": 141 4914 "line": 142
4915 } 4915 }
4916 }, 4916 },
4917 { 4917 {
4918 "defaultMessage": "!!!Display disabled services tabs", 4918 "defaultMessage": "!!!Display disabled services tabs",
4919 "end": { 4919 "end": {
4920 "column": 3, 4920 "column": 3,
4921 "line": 148 4921 "line": 149
4922 }, 4922 },
4923 "file": "src/containers/settings/EditSettingsScreen.js", 4923 "file": "src/containers/settings/EditSettingsScreen.js",
4924 "id": "settings.app.form.showDisabledServices", 4924 "id": "settings.app.form.showDisabledServices",
4925 "start": { 4925 "start": {
4926 "column": 24, 4926 "column": 24,
4927 "line": 145 4927 "line": 146
4928 } 4928 }
4929 }, 4929 },
4930 { 4930 {
4931 "defaultMessage": "!!!Show unread message badge when notifications are disabled", 4931 "defaultMessage": "!!!Show unread message badge when notifications are disabled",
4932 "end": { 4932 "end": {
4933 "column": 3, 4933 "column": 3,
4934 "line": 152 4934 "line": 153
4935 }, 4935 },
4936 "file": "src/containers/settings/EditSettingsScreen.js", 4936 "file": "src/containers/settings/EditSettingsScreen.js",
4937 "id": "settings.app.form.showMessagesBadgesWhenMuted", 4937 "id": "settings.app.form.showMessagesBadgesWhenMuted",
4938 "start": { 4938 "start": {
4939 "column": 29, 4939 "column": 29,
4940 "line": 149 4940 "line": 150
4941 } 4941 }
4942 }, 4942 },
4943 { 4943 {
4944 "defaultMessage": "!!!Show draggable area on window", 4944 "defaultMessage": "!!!Show draggable area on window",
4945 "end": { 4945 "end": {
4946 "column": 3, 4946 "column": 3,
4947 "line": 156 4947 "line": 157
4948 }, 4948 },
4949 "file": "src/containers/settings/EditSettingsScreen.js", 4949 "file": "src/containers/settings/EditSettingsScreen.js",
4950 "id": "settings.app.form.showDragArea", 4950 "id": "settings.app.form.showDragArea",
4951 "start": { 4951 "start": {
4952 "column": 16, 4952 "column": 16,
4953 "line": 153 4953 "line": 154
4954 } 4954 }
4955 }, 4955 },
4956 { 4956 {
4957 "defaultMessage": "!!!Enable spell checking", 4957 "defaultMessage": "!!!Enable spell checking",
4958 "end": { 4958 "end": {
4959 "column": 3, 4959 "column": 3,
4960 "line": 160 4960 "line": 161
4961 }, 4961 },
4962 "file": "src/containers/settings/EditSettingsScreen.js", 4962 "file": "src/containers/settings/EditSettingsScreen.js",
4963 "id": "settings.app.form.enableSpellchecking", 4963 "id": "settings.app.form.enableSpellchecking",
4964 "start": { 4964 "start": {
4965 "column": 23, 4965 "column": 23,
4966 "line": 157 4966 "line": 158
4967 } 4967 }
4968 }, 4968 },
4969 { 4969 {
4970 "defaultMessage": "!!!Enable GPU Acceleration", 4970 "defaultMessage": "!!!Enable GPU Acceleration",
4971 "end": { 4971 "end": {
4972 "column": 3, 4972 "column": 3,
4973 "line": 164 4973 "line": 165
4974 }, 4974 },
4975 "file": "src/containers/settings/EditSettingsScreen.js", 4975 "file": "src/containers/settings/EditSettingsScreen.js",
4976 "id": "settings.app.form.enableGPUAcceleration", 4976 "id": "settings.app.form.enableGPUAcceleration",
4977 "start": { 4977 "start": {
4978 "column": 25, 4978 "column": 25,
4979 "line": 161 4979 "line": 162
4980 } 4980 }
4981 }, 4981 },
4982 { 4982 {
4983 "defaultMessage": "!!!Include beta versions", 4983 "defaultMessage": "!!!Include beta versions",
4984 "end": { 4984 "end": {
4985 "column": 3, 4985 "column": 3,
4986 "line": 168 4986 "line": 169
4987 }, 4987 },
4988 "file": "src/containers/settings/EditSettingsScreen.js", 4988 "file": "src/containers/settings/EditSettingsScreen.js",
4989 "id": "settings.app.form.beta", 4989 "id": "settings.app.form.beta",
4990 "start": { 4990 "start": {
4991 "column": 8, 4991 "column": 8,
4992 "line": 165 4992 "line": 166
4993 } 4993 }
4994 }, 4994 },
4995 { 4995 {
4996 "defaultMessage": "!!!Enable updates", 4996 "defaultMessage": "!!!Enable updates",
4997 "end": { 4997 "end": {
4998 "column": 3, 4998 "column": 3,
4999 "line": 172 4999 "line": 173
5000 }, 5000 },
5001 "file": "src/containers/settings/EditSettingsScreen.js", 5001 "file": "src/containers/settings/EditSettingsScreen.js",
5002 "id": "settings.app.form.automaticUpdates", 5002 "id": "settings.app.form.automaticUpdates",
5003 "start": { 5003 "start": {
5004 "column": 20, 5004 "column": 20,
5005 "line": 169 5005 "line": 170
5006 } 5006 }
5007 }, 5007 },
5008 { 5008 {
5009 "defaultMessage": "!!!Enable Franz Todos", 5009 "defaultMessage": "!!!Enable Franz Todos",
5010 "end": { 5010 "end": {
5011 "column": 3, 5011 "column": 3,
5012 "line": 176 5012 "line": 177
5013 }, 5013 },
5014 "file": "src/containers/settings/EditSettingsScreen.js", 5014 "file": "src/containers/settings/EditSettingsScreen.js",
5015 "id": "settings.app.form.enableTodos", 5015 "id": "settings.app.form.enableTodos",
5016 "start": { 5016 "start": {
5017 "column": 15, 5017 "column": 15,
5018 "line": 173 5018 "line": 174
5019 } 5019 }
5020 }, 5020 },
5021 { 5021 {
5022 "defaultMessage": "!!!Keep all workspaces loaded", 5022 "defaultMessage": "!!!Keep all workspaces loaded",
5023 "end": { 5023 "end": {
5024 "column": 3, 5024 "column": 3,
5025 "line": 180 5025 "line": 181
5026 }, 5026 },
5027 "file": "src/containers/settings/EditSettingsScreen.js", 5027 "file": "src/containers/settings/EditSettingsScreen.js",
5028 "id": "settings.app.form.keepAllWorkspacesLoaded", 5028 "id": "settings.app.form.keepAllWorkspacesLoaded",
5029 "start": { 5029 "start": {
5030 "column": 27, 5030 "column": 27,
5031 "line": 177 5031 "line": 178
5032 } 5032 }
5033 } 5033 }
5034 ], 5034 ],
diff --git a/src/i18n/messages/src/containers/settings/EditSettingsScreen.json b/src/i18n/messages/src/containers/settings/EditSettingsScreen.json
index f6afe5246..df5e7714a 100644
--- a/src/i18n/messages/src/containers/settings/EditSettingsScreen.json
+++ b/src/i18n/messages/src/containers/settings/EditSettingsScreen.json
@@ -4,11 +4,11 @@
4 "defaultMessage": "!!!Launch Ferdi on start", 4 "defaultMessage": "!!!Launch Ferdi on start",
5 "file": "src/containers/settings/EditSettingsScreen.js", 5 "file": "src/containers/settings/EditSettingsScreen.js",
6 "start": { 6 "start": {
7 "line": 29, 7 "line": 30,
8 "column": 21 8 "column": 21
9 }, 9 },
10 "end": { 10 "end": {
11 "line": 32, 11 "line": 33,
12 "column": 3 12 "column": 3
13 } 13 }
14 }, 14 },
@@ -17,11 +17,11 @@
17 "defaultMessage": "!!!Open in background", 17 "defaultMessage": "!!!Open in background",
18 "file": "src/containers/settings/EditSettingsScreen.js", 18 "file": "src/containers/settings/EditSettingsScreen.js",
19 "start": { 19 "start": {
20 "line": 33, 20 "line": 34,
21 "column": 26 21 "column": 26
22 }, 22 },
23 "end": { 23 "end": {
24 "line": 36, 24 "line": 37,
25 "column": 3 25 "column": 3
26 } 26 }
27 }, 27 },
@@ -30,11 +30,11 @@
30 "defaultMessage": "!!!Keep Ferdi in background when closing the window", 30 "defaultMessage": "!!!Keep Ferdi in background when closing the window",
31 "file": "src/containers/settings/EditSettingsScreen.js", 31 "file": "src/containers/settings/EditSettingsScreen.js",
32 "start": { 32 "start": {
33 "line": 37, 33 "line": 38,
34 "column": 19 34 "column": 19
35 }, 35 },
36 "end": { 36 "end": {
37 "line": 40, 37 "line": 41,
38 "column": 3 38 "column": 3
39 } 39 }
40 }, 40 },
@@ -43,11 +43,11 @@
43 "defaultMessage": "!!!Start minimized", 43 "defaultMessage": "!!!Start minimized",
44 "file": "src/containers/settings/EditSettingsScreen.js", 44 "file": "src/containers/settings/EditSettingsScreen.js",
45 "start": { 45 "start": {
46 "line": 41, 46 "line": 42,
47 "column": 18 47 "column": 18
48 }, 48 },
49 "end": { 49 "end": {
50 "line": 44, 50 "line": 45,
51 "column": 3 51 "column": 3
52 } 52 }
53 }, 53 },
@@ -56,11 +56,11 @@
56 "defaultMessage": "!!!Always show Ferdi in system tray", 56 "defaultMessage": "!!!Always show Ferdi in system tray",
57 "file": "src/containers/settings/EditSettingsScreen.js", 57 "file": "src/containers/settings/EditSettingsScreen.js",
58 "start": { 58 "start": {
59 "line": 45, 59 "line": 46,
60 "column": 20 60 "column": 20
61 }, 61 },
62 "end": { 62 "end": {
63 "line": 48, 63 "line": 49,
64 "column": 3 64 "column": 3
65 } 65 }
66 }, 66 },
@@ -69,11 +69,11 @@
69 "defaultMessage": "!!!Reload Ferdi after system resume", 69 "defaultMessage": "!!!Reload Ferdi after system resume",
70 "file": "src/containers/settings/EditSettingsScreen.js", 70 "file": "src/containers/settings/EditSettingsScreen.js",
71 "start": { 71 "start": {
72 "line": 49, 72 "line": 50,
73 "column": 21 73 "column": 21
74 }, 74 },
75 "end": { 75 "end": {
76 "line": 52, 76 "line": 53,
77 "column": 3 77 "column": 3
78 } 78 }
79 }, 79 },
@@ -82,11 +82,11 @@
82 "defaultMessage": "!!!Minimize Ferdi to system tray", 82 "defaultMessage": "!!!Minimize Ferdi to system tray",
83 "file": "src/containers/settings/EditSettingsScreen.js", 83 "file": "src/containers/settings/EditSettingsScreen.js",
84 "start": { 84 "start": {
85 "line": 53, 85 "line": 54,
86 "column": 24 86 "column": 24
87 }, 87 },
88 "end": { 88 "end": {
89 "line": 56, 89 "line": 57,
90 "column": 3 90 "column": 3
91 } 91 }
92 }, 92 },
@@ -95,11 +95,11 @@
95 "defaultMessage": "!!!Don't show message content in notifications", 95 "defaultMessage": "!!!Don't show message content in notifications",
96 "file": "src/containers/settings/EditSettingsScreen.js", 96 "file": "src/containers/settings/EditSettingsScreen.js",
97 "start": { 97 "start": {
98 "line": 57, 98 "line": 58,
99 "column": 24 99 "column": 24
100 }, 100 },
101 "end": { 101 "end": {
102 "line": 60, 102 "line": 61,
103 "column": 3 103 "column": 3
104 } 104 }
105 }, 105 },
@@ -108,11 +108,11 @@
108 "defaultMessage": "!!!Navigation bar behaviour", 108 "defaultMessage": "!!!Navigation bar behaviour",
109 "file": "src/containers/settings/EditSettingsScreen.js", 109 "file": "src/containers/settings/EditSettingsScreen.js",
110 "start": { 110 "start": {
111 "line": 61, 111 "line": 62,
112 "column": 26 112 "column": 26
113 }, 113 },
114 "end": { 114 "end": {
115 "line": 64, 115 "line": 65,
116 "column": 3 116 "column": 3
117 } 117 }
118 }, 118 },
@@ -121,11 +121,11 @@
121 "defaultMessage": "!!!Send telemetry data", 121 "defaultMessage": "!!!Send telemetry data",
122 "file": "src/containers/settings/EditSettingsScreen.js", 122 "file": "src/containers/settings/EditSettingsScreen.js",
123 "start": { 123 "start": {
124 "line": 65, 124 "line": 66,
125 "column": 10 125 "column": 10
126 }, 126 },
127 "end": { 127 "end": {
128 "line": 68, 128 "line": 69,
129 "column": 3 129 "column": 3
130 } 130 }
131 }, 131 },
@@ -134,11 +134,11 @@
134 "defaultMessage": "!!!Enable service hibernation", 134 "defaultMessage": "!!!Enable service hibernation",
135 "file": "src/containers/settings/EditSettingsScreen.js", 135 "file": "src/containers/settings/EditSettingsScreen.js",
136 "start": { 136 "start": {
137 "line": 69, 137 "line": 70,
138 "column": 13 138 "column": 13
139 }, 139 },
140 "end": { 140 "end": {
141 "line": 72, 141 "line": 73,
142 "column": 3 142 "column": 3
143 } 143 }
144 }, 144 },
@@ -147,11 +147,11 @@
147 "defaultMessage": "!!!Keep services in hibernation on startup", 147 "defaultMessage": "!!!Keep services in hibernation on startup",
148 "file": "src/containers/settings/EditSettingsScreen.js", 148 "file": "src/containers/settings/EditSettingsScreen.js",
149 "start": { 149 "start": {
150 "line": 73, 150 "line": 74,
151 "column": 22 151 "column": 22
152 }, 152 },
153 "end": { 153 "end": {
154 "line": 76, 154 "line": 77,
155 "column": 3 155 "column": 3
156 } 156 }
157 }, 157 },
@@ -160,11 +160,11 @@
160 "defaultMessage": "!!!Hibernation strategy", 160 "defaultMessage": "!!!Hibernation strategy",
161 "file": "src/containers/settings/EditSettingsScreen.js", 161 "file": "src/containers/settings/EditSettingsScreen.js",
162 "start": { 162 "start": {
163 "line": 77, 163 "line": 78,
164 "column": 23 164 "column": 23
165 }, 165 },
166 "end": { 166 "end": {
167 "line": 80, 167 "line": 81,
168 "column": 3 168 "column": 3
169 } 169 }
170 }, 170 },
@@ -173,11 +173,11 @@
173 "defaultMessage": "!!!Todo Server", 173 "defaultMessage": "!!!Todo Server",
174 "file": "src/containers/settings/EditSettingsScreen.js", 174 "file": "src/containers/settings/EditSettingsScreen.js",
175 "start": { 175 "start": {
176 "line": 81, 176 "line": 82,
177 "column": 24 177 "column": 24
178 }, 178 },
179 "end": { 179 "end": {
180 "line": 84, 180 "line": 85,
181 "column": 3 181 "column": 3
182 } 182 }
183 }, 183 },
@@ -186,11 +186,11 @@
186 "defaultMessage": "!!!Custom TodoServer", 186 "defaultMessage": "!!!Custom TodoServer",
187 "file": "src/containers/settings/EditSettingsScreen.js", 187 "file": "src/containers/settings/EditSettingsScreen.js",
188 "start": { 188 "start": {
189 "line": 85, 189 "line": 86,
190 "column": 20 190 "column": 20
191 }, 191 },
192 "end": { 192 "end": {
193 "line": 88, 193 "line": 89,
194 "column": 3 194 "column": 3
195 } 195 }
196 }, 196 },
@@ -199,11 +199,11 @@
199 "defaultMessage": "!!!Enable Password Lock", 199 "defaultMessage": "!!!Enable Password Lock",
200 "file": "src/containers/settings/EditSettingsScreen.js", 200 "file": "src/containers/settings/EditSettingsScreen.js",
201 "start": { 201 "start": {
202 "line": 89, 202 "line": 90,
203 "column": 14 203 "column": 14
204 }, 204 },
205 "end": { 205 "end": {
206 "line": 92, 206 "line": 93,
207 "column": 3 207 "column": 3
208 } 208 }
209 }, 209 },
@@ -212,11 +212,11 @@
212 "defaultMessage": "!!!Password", 212 "defaultMessage": "!!!Password",
213 "file": "src/containers/settings/EditSettingsScreen.js", 213 "file": "src/containers/settings/EditSettingsScreen.js",
214 "start": { 214 "start": {
215 "line": 93, 215 "line": 94,
216 "column": 16 216 "column": 16
217 }, 217 },
218 "end": { 218 "end": {
219 "line": 96, 219 "line": 97,
220 "column": 3 220 "column": 3
221 } 221 }
222 }, 222 },
@@ -225,11 +225,11 @@
225 "defaultMessage": "!!!Allow using Touch ID to unlock", 225 "defaultMessage": "!!!Allow using Touch ID to unlock",
226 "file": "src/containers/settings/EditSettingsScreen.js", 226 "file": "src/containers/settings/EditSettingsScreen.js",
227 "start": { 227 "start": {
228 "line": 97, 228 "line": 98,
229 "column": 22 229 "column": 22
230 }, 230 },
231 "end": { 231 "end": {
232 "line": 100, 232 "line": 101,
233 "column": 3 233 "column": 3
234 } 234 }
235 }, 235 },
@@ -238,11 +238,11 @@
238 "defaultMessage": "!!!Lock after inactivity", 238 "defaultMessage": "!!!Lock after inactivity",
239 "file": "src/containers/settings/EditSettingsScreen.js", 239 "file": "src/containers/settings/EditSettingsScreen.js",
240 "start": { 240 "start": {
241 "line": 101, 241 "line": 102,
242 "column": 18 242 "column": 18
243 }, 243 },
244 "end": { 244 "end": {
245 "line": 104, 245 "line": 105,
246 "column": 3 246 "column": 3
247 } 247 }
248 }, 248 },
@@ -251,11 +251,11 @@
251 "defaultMessage": "!!!Enable scheduled Do-not-Disturb", 251 "defaultMessage": "!!!Enable scheduled Do-not-Disturb",
252 "file": "src/containers/settings/EditSettingsScreen.js", 252 "file": "src/containers/settings/EditSettingsScreen.js",
253 "start": { 253 "start": {
254 "line": 105, 254 "line": 106,
255 "column": 23 255 "column": 23
256 }, 256 },
257 "end": { 257 "end": {
258 "line": 108, 258 "line": 109,
259 "column": 3 259 "column": 3
260 } 260 }
261 }, 261 },
@@ -264,11 +264,11 @@
264 "defaultMessage": "!!!From", 264 "defaultMessage": "!!!From",
265 "file": "src/containers/settings/EditSettingsScreen.js", 265 "file": "src/containers/settings/EditSettingsScreen.js",
266 "start": { 266 "start": {
267 "line": 109, 267 "line": 110,
268 "column": 21 268 "column": 21
269 }, 269 },
270 "end": { 270 "end": {
271 "line": 112, 271 "line": 113,
272 "column": 3 272 "column": 3
273 } 273 }
274 }, 274 },
@@ -277,11 +277,11 @@
277 "defaultMessage": "!!!To", 277 "defaultMessage": "!!!To",
278 "file": "src/containers/settings/EditSettingsScreen.js", 278 "file": "src/containers/settings/EditSettingsScreen.js",
279 "start": { 279 "start": {
280 "line": 113, 280 "line": 114,
281 "column": 19 281 "column": 19
282 }, 282 },
283 "end": { 283 "end": {
284 "line": 116, 284 "line": 117,
285 "column": 3 285 "column": 3
286 } 286 }
287 }, 287 },
@@ -290,11 +290,11 @@
290 "defaultMessage": "!!!Language", 290 "defaultMessage": "!!!Language",
291 "file": "src/containers/settings/EditSettingsScreen.js", 291 "file": "src/containers/settings/EditSettingsScreen.js",
292 "start": { 292 "start": {
293 "line": 117, 293 "line": 118,
294 "column": 12 294 "column": 12
295 }, 295 },
296 "end": { 296 "end": {
297 "line": 120, 297 "line": 121,
298 "column": 3 298 "column": 3
299 } 299 }
300 }, 300 },
@@ -303,11 +303,11 @@
303 "defaultMessage": "!!!Dark Mode", 303 "defaultMessage": "!!!Dark Mode",
304 "file": "src/containers/settings/EditSettingsScreen.js", 304 "file": "src/containers/settings/EditSettingsScreen.js",
305 "start": { 305 "start": {
306 "line": 121, 306 "line": 122,
307 "column": 12 307 "column": 12
308 }, 308 },
309 "end": { 309 "end": {
310 "line": 124, 310 "line": 125,
311 "column": 3 311 "column": 3
312 } 312 }
313 }, 313 },
@@ -316,11 +316,11 @@
316 "defaultMessage": "!!!Synchronize dark mode with my OS's dark mode setting", 316 "defaultMessage": "!!!Synchronize dark mode with my OS's dark mode setting",
317 "file": "src/containers/settings/EditSettingsScreen.js", 317 "file": "src/containers/settings/EditSettingsScreen.js",
318 "start": { 318 "start": {
319 "line": 125, 319 "line": 126,
320 "column": 21 320 "column": 21
321 }, 321 },
322 "end": { 322 "end": {
323 "line": 128, 323 "line": 129,
324 "column": 3 324 "column": 3
325 } 325 }
326 }, 326 },
@@ -329,11 +329,11 @@
329 "defaultMessage": "!!!Enable universal Dark Mode", 329 "defaultMessage": "!!!Enable universal Dark Mode",
330 "file": "src/containers/settings/EditSettingsScreen.js", 330 "file": "src/containers/settings/EditSettingsScreen.js",
331 "start": { 331 "start": {
332 "line": 129, 332 "line": 130,
333 "column": 21 333 "column": 21
334 }, 334 },
335 "end": { 335 "end": {
336 "line": 132, 336 "line": 133,
337 "column": 3 337 "column": 3
338 } 338 }
339 }, 339 },
@@ -342,11 +342,11 @@
342 "defaultMessage": "!!!Sidebar width", 342 "defaultMessage": "!!!Sidebar width",
343 "file": "src/containers/settings/EditSettingsScreen.js", 343 "file": "src/containers/settings/EditSettingsScreen.js",
344 "start": { 344 "start": {
345 "line": 133, 345 "line": 134,
346 "column": 22 346 "column": 22
347 }, 347 },
348 "end": { 348 "end": {
349 "line": 136, 349 "line": 137,
350 "column": 3 350 "column": 3
351 } 351 }
352 }, 352 },
@@ -355,11 +355,11 @@
355 "defaultMessage": "!!!Service icon size", 355 "defaultMessage": "!!!Service icon size",
356 "file": "src/containers/settings/EditSettingsScreen.js", 356 "file": "src/containers/settings/EditSettingsScreen.js",
357 "start": { 357 "start": {
358 "line": 137, 358 "line": 138,
359 "column": 12 359 "column": 12
360 }, 360 },
361 "end": { 361 "end": {
362 "line": 140, 362 "line": 141,
363 "column": 3 363 "column": 3
364 } 364 }
365 }, 365 },
@@ -368,11 +368,11 @@
368 "defaultMessage": "!!!Accent color", 368 "defaultMessage": "!!!Accent color",
369 "file": "src/containers/settings/EditSettingsScreen.js", 369 "file": "src/containers/settings/EditSettingsScreen.js",
370 "start": { 370 "start": {
371 "line": 141, 371 "line": 142,
372 "column": 15 372 "column": 15
373 }, 373 },
374 "end": { 374 "end": {
375 "line": 144, 375 "line": 145,
376 "column": 3 376 "column": 3
377 } 377 }
378 }, 378 },
@@ -381,11 +381,11 @@
381 "defaultMessage": "!!!Display disabled services tabs", 381 "defaultMessage": "!!!Display disabled services tabs",
382 "file": "src/containers/settings/EditSettingsScreen.js", 382 "file": "src/containers/settings/EditSettingsScreen.js",
383 "start": { 383 "start": {
384 "line": 145, 384 "line": 146,
385 "column": 24 385 "column": 24
386 }, 386 },
387 "end": { 387 "end": {
388 "line": 148, 388 "line": 149,
389 "column": 3 389 "column": 3
390 } 390 }
391 }, 391 },
@@ -394,11 +394,11 @@
394 "defaultMessage": "!!!Show unread message badge when notifications are disabled", 394 "defaultMessage": "!!!Show unread message badge when notifications are disabled",
395 "file": "src/containers/settings/EditSettingsScreen.js", 395 "file": "src/containers/settings/EditSettingsScreen.js",
396 "start": { 396 "start": {
397 "line": 149, 397 "line": 150,
398 "column": 29 398 "column": 29
399 }, 399 },
400 "end": { 400 "end": {
401 "line": 152, 401 "line": 153,
402 "column": 3 402 "column": 3
403 } 403 }
404 }, 404 },
@@ -407,11 +407,11 @@
407 "defaultMessage": "!!!Show draggable area on window", 407 "defaultMessage": "!!!Show draggable area on window",
408 "file": "src/containers/settings/EditSettingsScreen.js", 408 "file": "src/containers/settings/EditSettingsScreen.js",
409 "start": { 409 "start": {
410 "line": 153, 410 "line": 154,
411 "column": 16 411 "column": 16
412 }, 412 },
413 "end": { 413 "end": {
414 "line": 156, 414 "line": 157,
415 "column": 3 415 "column": 3
416 } 416 }
417 }, 417 },
@@ -420,11 +420,11 @@
420 "defaultMessage": "!!!Enable spell checking", 420 "defaultMessage": "!!!Enable spell checking",
421 "file": "src/containers/settings/EditSettingsScreen.js", 421 "file": "src/containers/settings/EditSettingsScreen.js",
422 "start": { 422 "start": {
423 "line": 157, 423 "line": 158,
424 "column": 23 424 "column": 23
425 }, 425 },
426 "end": { 426 "end": {
427 "line": 160, 427 "line": 161,
428 "column": 3 428 "column": 3
429 } 429 }
430 }, 430 },
@@ -433,11 +433,11 @@
433 "defaultMessage": "!!!Enable GPU Acceleration", 433 "defaultMessage": "!!!Enable GPU Acceleration",
434 "file": "src/containers/settings/EditSettingsScreen.js", 434 "file": "src/containers/settings/EditSettingsScreen.js",
435 "start": { 435 "start": {
436 "line": 161, 436 "line": 162,
437 "column": 25 437 "column": 25
438 }, 438 },
439 "end": { 439 "end": {
440 "line": 164, 440 "line": 165,
441 "column": 3 441 "column": 3
442 } 442 }
443 }, 443 },
@@ -446,11 +446,11 @@
446 "defaultMessage": "!!!Include beta versions", 446 "defaultMessage": "!!!Include beta versions",
447 "file": "src/containers/settings/EditSettingsScreen.js", 447 "file": "src/containers/settings/EditSettingsScreen.js",
448 "start": { 448 "start": {
449 "line": 165, 449 "line": 166,
450 "column": 8 450 "column": 8
451 }, 451 },
452 "end": { 452 "end": {
453 "line": 168, 453 "line": 169,
454 "column": 3 454 "column": 3
455 } 455 }
456 }, 456 },
@@ -459,11 +459,11 @@
459 "defaultMessage": "!!!Enable updates", 459 "defaultMessage": "!!!Enable updates",
460 "file": "src/containers/settings/EditSettingsScreen.js", 460 "file": "src/containers/settings/EditSettingsScreen.js",
461 "start": { 461 "start": {
462 "line": 169, 462 "line": 170,
463 "column": 20 463 "column": 20
464 }, 464 },
465 "end": { 465 "end": {
466 "line": 172, 466 "line": 173,
467 "column": 3 467 "column": 3
468 } 468 }
469 }, 469 },
@@ -472,11 +472,11 @@
472 "defaultMessage": "!!!Enable Franz Todos", 472 "defaultMessage": "!!!Enable Franz Todos",
473 "file": "src/containers/settings/EditSettingsScreen.js", 473 "file": "src/containers/settings/EditSettingsScreen.js",
474 "start": { 474 "start": {
475 "line": 173, 475 "line": 174,
476 "column": 15 476 "column": 15
477 }, 477 },
478 "end": { 478 "end": {
479 "line": 176, 479 "line": 177,
480 "column": 3 480 "column": 3
481 } 481 }
482 }, 482 },
@@ -485,11 +485,11 @@
485 "defaultMessage": "!!!Keep all workspaces loaded", 485 "defaultMessage": "!!!Keep all workspaces loaded",
486 "file": "src/containers/settings/EditSettingsScreen.js", 486 "file": "src/containers/settings/EditSettingsScreen.js",
487 "start": { 487 "start": {
488 "line": 177, 488 "line": 178,
489 "column": 27 489 "column": 27
490 }, 490 },
491 "end": { 491 "end": {
492 "line": 180, 492 "line": 181,
493 "column": 3 493 "column": 3
494 } 494 }
495 } 495 }
diff --git a/src/stores/SettingsStore.js b/src/stores/SettingsStore.js
index dcf3c3b9d..c50475819 100644
--- a/src/stores/SettingsStore.js
+++ b/src/stores/SettingsStore.js
@@ -6,6 +6,7 @@ import localStorage from 'mobx-localstorage';
6import { DEFAULT_APP_SETTINGS, FILE_SYSTEM_SETTINGS_TYPES, LOCAL_SERVER } from '../config'; 6import { DEFAULT_APP_SETTINGS, FILE_SYSTEM_SETTINGS_TYPES, LOCAL_SERVER } from '../config';
7import { API } from '../environment'; 7import { API } from '../environment';
8import { getLocale } from '../helpers/i18n-helpers'; 8import { getLocale } from '../helpers/i18n-helpers';
9import { hash } from '../helpers/password-helpers';
9import { SPELLCHECKER_LOCALES } from '../i18n/languages'; 10import { SPELLCHECKER_LOCALES } from '../i18n/languages';
10import Request from './lib/Request'; 11import Request from './lib/Request';
11import Store from './lib/Store'; 12import Store from './lib/Store';
@@ -279,5 +280,25 @@ export default class SettingsStore extends Store {
279 280
280 debug('Migrated updates settings'); 281 debug('Migrated updates settings');
281 } 282 }
283
284 if (!this.all.migration['password-hashing']) {
285 if (this.stores.settings.app.lockedPassword !== '') {
286 this.actions.settings.update({
287 type: 'app',
288 data: {
289 lockedPassword: hash(String(legacySettings.lockedPassword)),
290 },
291 });
292 }
293
294 this.actions.settings.update({
295 type: 'migration',
296 data: {
297 'password-hashing': true,
298 },
299 });
300
301 debug('Migrated updates settings');
302 }
282 } 303 }
283} 304}