aboutsummaryrefslogtreecommitdiffstats
path: root/src/containers/settings/EditServiceScreen.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/containers/settings/EditServiceScreen.js')
-rw-r--r--src/containers/settings/EditServiceScreen.js52
1 files changed, 51 insertions, 1 deletions
diff --git a/src/containers/settings/EditServiceScreen.js b/src/containers/settings/EditServiceScreen.js
index a7d33a3ea..14c1ef41e 100644
--- a/src/containers/settings/EditServiceScreen.js
+++ b/src/containers/settings/EditServiceScreen.js
@@ -33,6 +33,10 @@ const messages = defineMessages({
33 id: 'settings.service.form.enableService', 33 id: 'settings.service.form.enableService',
34 defaultMessage: '!!!Enable service', 34 defaultMessage: '!!!Enable service',
35 }, 35 },
36 disableHibernation: {
37 id: 'settings.service.form.disableHibernation',
38 defaultMessage: '!!!Disable hibernation',
39 },
36 enableNotification: { 40 enableNotification: {
37 id: 'settings.service.form.enableNotification', 41 id: 'settings.service.form.enableNotification',
38 defaultMessage: '!!!Enable Notifications', 42 defaultMessage: '!!!Enable Notifications',
@@ -65,6 +69,18 @@ const messages = defineMessages({
65 id: 'settings.service.form.enableDarkMode', 69 id: 'settings.service.form.enableDarkMode',
66 defaultMessage: '!!!Enable Dark Mode', 70 defaultMessage: '!!!Enable Dark Mode',
67 }, 71 },
72 darkReaderBrightness: {
73 id: 'settings.service.form.darkReaderBrightness',
74 defaultMessage: '!!!Darkreader Brightness',
75 },
76 darkReaderContrast: {
77 id: 'settings.service.form.darkReaderContrast',
78 defaultMessage: '!!!Darkreader Contrast',
79 },
80 darkReaderSepia: {
81 id: 'settings.service.form.darkReaderSepia',
82 defaultMessage: '!!!Darkreader Sepia',
83 },
68 enableProxy: { 84 enableProxy: {
69 id: 'settings.service.form.proxy.isEnabled', 85 id: 'settings.service.form.proxy.isEnabled',
70 defaultMessage: '!!!Use Proxy', 86 defaultMessage: '!!!Use Proxy',
@@ -96,6 +112,14 @@ export default @inject('stores', 'actions') @observer class EditServiceScreen ex
96 const { action } = this.props.router.params; 112 const { action } = this.props.router.params;
97 const { recipes, services } = this.props.stores; 113 const { recipes, services } = this.props.stores;
98 const { createService, updateService } = this.props.actions.service; 114 const { createService, updateService } = this.props.actions.service;
115 data.darkReaderSettings = {
116 brightness: data.darkReaderBrightness,
117 contrast: data.darkReaderContrast,
118 sepia: data.darkReaderSepia,
119 };
120 delete data.darkReaderContrast;
121 delete data.darkReaderBrightness;
122 delete data.darkReaderSepia;
99 123
100 const serviceData = data; 124 const serviceData = data;
101 serviceData.isMuted = !serviceData.isMuted; 125 serviceData.isMuted = !serviceData.isMuted;
@@ -114,8 +138,11 @@ export default @inject('stores', 'actions') @observer class EditServiceScreen ex
114 138
115 const { 139 const {
116 stores, 140 stores,
141 router,
117 } = this.props; 142 } = this.props;
118 143
144 const { action } = router.params;
145
119 let defaultSpellcheckerLanguage = SPELLCHECKER_LOCALES[stores.settings.app.spellcheckerLanguage]; 146 let defaultSpellcheckerLanguage = SPELLCHECKER_LOCALES[stores.settings.app.spellcheckerLanguage];
120 147
121 if (stores.settings.app.spellcheckerLanguage === 'automatic') { 148 if (stores.settings.app.spellcheckerLanguage === 'automatic') {
@@ -140,6 +167,11 @@ export default @inject('stores', 'actions') @observer class EditServiceScreen ex
140 value: service.isEnabled, 167 value: service.isEnabled,
141 default: true, 168 default: true,
142 }, 169 },
170 disableHibernation: {
171 label: intl.formatMessage(messages.disableHibernation),
172 value: action !== 'edit' ? false : service.disableHibernation,
173 default: false,
174 },
143 isNotificationEnabled: { 175 isNotificationEnabled: {
144 label: intl.formatMessage(messages.enableNotification), 176 label: intl.formatMessage(messages.enableNotification),
145 value: service.isNotificationEnabled, 177 value: service.isNotificationEnabled,
@@ -166,6 +198,21 @@ export default @inject('stores', 'actions') @observer class EditServiceScreen ex
166 value: service.isDarkModeEnabled, 198 value: service.isDarkModeEnabled,
167 default: stores.settings.app.darkMode, 199 default: stores.settings.app.darkMode,
168 }, 200 },
201 darkReaderBrightness: {
202 label: intl.formatMessage(messages.darkReaderBrightness),
203 value: service.darkReaderSettings ? service.darkReaderSettings.brightness : undefined,
204 default: 100,
205 },
206 darkReaderContrast: {
207 label: intl.formatMessage(messages.darkReaderContrast),
208 value: service.darkReaderSettings ? service.darkReaderSettings.contrast : undefined,
209 default: 90,
210 },
211 darkReaderSepia: {
212 label: intl.formatMessage(messages.darkReaderSepia),
213 value: service.darkReaderSettings ? service.darkReaderSettings.sepia : undefined,
214 default: 10,
215 },
169 spellcheckerLanguage: { 216 spellcheckerLanguage: {
170 label: intl.formatMessage(globalMessages.spellcheckerLanguage), 217 label: intl.formatMessage(globalMessages.spellcheckerLanguage),
171 value: service.spellcheckerLanguage, 218 value: service.spellcheckerLanguage,
@@ -292,7 +339,9 @@ export default @inject('stores', 'actions') @observer class EditServiceScreen ex
292 } 339 }
293 340
294 render() { 341 render() {
295 const { recipes, services, user } = this.props.stores; 342 const {
343 recipes, services, user, settings,
344 } = this.props.stores;
296 const { action } = this.props.router.params; 345 const { action } = this.props.router.params;
297 346
298 let recipe; 347 let recipe;
@@ -346,6 +395,7 @@ export default @inject('stores', 'actions') @observer class EditServiceScreen ex
346 isProxyFeatureEnabled={proxyFeature.isEnabled} 395 isProxyFeatureEnabled={proxyFeature.isEnabled}
347 isServiceProxyIncludedInCurrentPlan={proxyFeature.isIncludedInCurrentPlan} 396 isServiceProxyIncludedInCurrentPlan={proxyFeature.isIncludedInCurrentPlan}
348 isSpellcheckerIncludedInCurrentPlan={spellcheckerFeature.isIncludedInCurrentPlan} 397 isSpellcheckerIncludedInCurrentPlan={spellcheckerFeature.isIncludedInCurrentPlan}
398 isHibernationFeatureActive={settings.app.hibernate}
349 /> 399 />
350 </ErrorBoundary> 400 </ErrorBoundary>
351 ); 401 );