aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/settings
diff options
context:
space:
mode:
authorLibravatar Bennett <hello@vantezzen.io>2020-06-21 09:19:59 +0200
committerLibravatar GitHub <noreply@github.com>2020-06-21 12:49:59 +0530
commit0d6d623d1e34cdbff2d46229165b49289a9a0619 (patch)
tree83f6a22a08e354da58adf3ed0393f4d39bca6124 /src/components/settings
parentPrepare and Release/5.6.0 beta.1 (#820) (diff)
downloadferdium-app-0d6d623d1e34cdbff2d46229165b49289a9a0619.tar.gz
ferdium-app-0d6d623d1e34cdbff2d46229165b49289a9a0619.tar.zst
ferdium-app-0d6d623d1e34cdbff2d46229165b49289a9a0619.zip
Add FAB to service dashboard (#824)
* Implement #387 * Fix lint * Upgrade to Electron 9 * Remove dependency on electron-spellchecker * Allow multiple languages to be selected * Fix lint * Don't show spellchecker language chooser for macOS * Fix _requireAuthenticatedUser throwing error on startup * Add FAB
Diffstat (limited to 'src/components/settings')
-rw-r--r--src/components/settings/services/EditServiceForm.js20
-rw-r--r--src/components/settings/services/ServicesDashboard.js7
-rw-r--r--src/components/settings/settings/EditSettingsForm.js11
3 files changed, 28 insertions, 10 deletions
diff --git a/src/components/settings/services/EditServiceForm.js b/src/components/settings/services/EditServiceForm.js
index 3dba793b2..f1e70ce59 100644
--- a/src/components/settings/services/EditServiceForm.js
+++ b/src/components/settings/services/EditServiceForm.js
@@ -21,6 +21,8 @@ import PremiumFeatureContainer from '../../ui/PremiumFeatureContainer';
21import LimitReachedInfobox from '../../../features/serviceLimit/components/LimitReachedInfobox'; 21import LimitReachedInfobox from '../../../features/serviceLimit/components/LimitReachedInfobox';
22import { serviceLimitStore } from '../../../features/serviceLimit'; 22import { serviceLimitStore } from '../../../features/serviceLimit';
23 23
24import { isMac } from '../../../environment';
25
24const messages = defineMessages({ 26const messages = defineMessages({
25 saveService: { 27 saveService: {
26 id: 'settings.service.form.saveButton', 28 id: 'settings.service.form.saveButton',
@@ -401,14 +403,16 @@ export default @observer class EditServiceForm extends Component {
401 </div> 403 </div>
402 </div> 404 </div>
403 405
404 <PremiumFeatureContainer 406 {!isMac && (
405 condition={!isSpellcheckerIncludedInCurrentPlan} 407 <PremiumFeatureContainer
406 gaEventInfo={{ category: 'User', event: 'upgrade', label: 'spellchecker' }} 408 condition={!isSpellcheckerIncludedInCurrentPlan}
407 > 409 gaEventInfo={{ category: 'User', event: 'upgrade', label: 'spellchecker' }}
408 <div className="settings__settings-group"> 410 >
409 <Select field={form.$('spellcheckerLanguage')} /> 411 <div className="settings__settings-group">
410 </div> 412 <Select field={form.$('spellcheckerLanguage')} multiple />
411 </PremiumFeatureContainer> 413 </div>
414 </PremiumFeatureContainer>
415 )}
412 416
413 {isProxyFeatureEnabled && ( 417 {isProxyFeatureEnabled && (
414 <PremiumFeatureContainer 418 <PremiumFeatureContainer
diff --git a/src/components/settings/services/ServicesDashboard.js b/src/components/settings/services/ServicesDashboard.js
index 78038e86a..826dbb176 100644
--- a/src/components/settings/services/ServicesDashboard.js
+++ b/src/components/settings/services/ServicesDashboard.js
@@ -7,6 +7,7 @@ import { defineMessages, intlShape } from 'react-intl';
7import SearchInput from '../../ui/SearchInput'; 7import SearchInput from '../../ui/SearchInput';
8import Infobox from '../../ui/Infobox'; 8import Infobox from '../../ui/Infobox';
9import Loader from '../../ui/Loader'; 9import Loader from '../../ui/Loader';
10import FAB from '../../ui/FAB';
10import ServiceItem from './ServiceItem'; 11import ServiceItem from './ServiceItem';
11import Appear from '../../ui/effects/Appear'; 12import Appear from '../../ui/effects/Appear';
12import LimitReachedInfobox from '../../../features/serviceLimit/components/LimitReachedInfobox'; 13import LimitReachedInfobox from '../../../features/serviceLimit/components/LimitReachedInfobox';
@@ -175,6 +176,12 @@ export default @observer class ServicesDashboard extends Component {
175 </tbody> 176 </tbody>
176 </table> 177 </table>
177 )} 178 )}
179
180 <FAB>
181 <Link to="/settings/recipes">
182 +
183 </Link>
184 </FAB>
178 </div> 185 </div>
179 </div> 186 </div>
180 ); 187 );
diff --git a/src/components/settings/settings/EditSettingsForm.js b/src/components/settings/settings/EditSettingsForm.js
index 50358c36f..ba7cb7317 100644
--- a/src/components/settings/settings/EditSettingsForm.js
+++ b/src/components/settings/settings/EditSettingsForm.js
@@ -91,6 +91,10 @@ const messages = defineMessages({
91 id: 'settings.app.translationHelp', 91 id: 'settings.app.translationHelp',
92 defaultMessage: '!!!Help us to translate Ferdi into your language.', 92 defaultMessage: '!!!Help us to translate Ferdi into your language.',
93 }, 93 },
94 spellCheckerLanguageInfo: {
95 id: 'settings.app.spellCheckerLanguageInfo',
96 defaultMessage: '!!!Ferdi uses your Mac\'s build-in spellchecker to check for typos. If you want to change the languages the spellchecker checks for, you can do so in your Mac\'s System Preferences.',
97 },
94 subheadlineCache: { 98 subheadlineCache: {
95 id: 'settings.app.subheadlineCache', 99 id: 'settings.app.subheadlineCache',
96 defaultMessage: '!!!Cache', 100 defaultMessage: '!!!Cache',
@@ -518,8 +522,11 @@ export default @observer class EditSettingsForm extends Component {
518 <Toggle 522 <Toggle
519 field={form.$('enableSpellchecking')} 523 field={form.$('enableSpellchecking')}
520 /> 524 />
521 {form.$('enableSpellchecking').value && ( 525 {form.$('enableSpellchecking').value && !isMac && (
522 <Select field={form.$('spellcheckerLanguage')} /> 526 <Select field={form.$('spellcheckerLanguage')} multiple />
527 )}
528 {form.$('enableSpellchecking').value && isMac && (
529 <p>{intl.formatMessage(messages.spellCheckerLanguageInfo)}</p>
523 )} 530 )}
524 </Fragment> 531 </Fragment>
525 </PremiumFeatureContainer> 532 </PremiumFeatureContainer>