aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLibravatar Vijay A <avijayr@protonmail.com>2021-08-14 15:17:27 +0530
committerLibravatar Vijay Raghavan Aravamudhan <vraravam@users.noreply.github.com>2021-08-14 10:20:16 +0000
commitae033f72650f54c5804134a2ff2a461294b7c2f5 (patch)
tree88d79ae806b7e677ba8fdeae55c8fdbfd26afe59 /src
parentdoc: Updated Changelog [skip ci] (diff)
downloadferdium-app-ae033f72650f54c5804134a2ff2a461294b7c2f5.tar.gz
ferdium-app-ae033f72650f54c5804134a2ff2a461294b7c2f5.tar.zst
ferdium-app-ae033f72650f54c5804134a2ff2a461294b7c2f5.zip
feat: Add buttons in the 'Advanced' section of preferences to allow the user to quickly open the Ferdi profile folder
Diffstat (limited to 'src')
-rw-r--r--src/components/settings/settings/EditSettingsForm.js41
-rw-r--r--src/containers/settings/RecipesScreen.js14
-rw-r--r--src/environment.js7
-rw-r--r--src/i18n/locales/defaultMessages.json71
-rw-r--r--src/i18n/locales/en-US.json3
-rw-r--r--src/i18n/messages/src/components/settings/settings/EditSettingsForm.json71
-rw-r--r--src/index.js2
-rw-r--r--src/styles/settings.scss4
8 files changed, 167 insertions, 46 deletions
diff --git a/src/components/settings/settings/EditSettingsForm.js b/src/components/settings/settings/EditSettingsForm.js
index 9db434099..1df8c3527 100644
--- a/src/components/settings/settings/EditSettingsForm.js
+++ b/src/components/settings/settings/EditSettingsForm.js
@@ -16,7 +16,7 @@ import {
16 FRANZ_TRANSLATION, 16 FRANZ_TRANSLATION,
17 GITHUB_FRANZ_URL, 17 GITHUB_FRANZ_URL,
18} from '../../../config'; 18} from '../../../config';
19import { DEFAULT_APP_SETTINGS, ferdiVersion, isMac, isWindows, lockFerdiShortcutKey } from '../../../environment'; 19import { DEFAULT_APP_SETTINGS, ferdiVersion, isMac, isWindows, lockFerdiShortcutKey, openPath, userDataPath, userDataRecipesPath } from '../../../environment';
20import globalMessages from '../../../i18n/globalMessages'; 20import globalMessages from '../../../i18n/globalMessages';
21 21
22const messages = defineMessages({ 22const messages = defineMessages({
@@ -116,6 +116,18 @@ const messages = defineMessages({
116 id: 'settings.app.buttonClearAllCache', 116 id: 'settings.app.buttonClearAllCache',
117 defaultMessage: '!!!Clear cache', 117 defaultMessage: '!!!Clear cache',
118 }, 118 },
119 subheadlineFerdiProfile: {
120 id: 'settings.app.subheadlineFerdiProfile',
121 defaultMessage: '!!!Ferdi Profile',
122 },
123 buttonOpenFerdiProfileFolder: {
124 id: 'settings.app.buttonOpenFerdiProfileFolder',
125 defaultMessage: '!!!Open Profile folder',
126 },
127 buttonOpenFerdiServiceRecipesFolder: {
128 id: 'settings.app.buttonOpenFerdiServiceRecipesFolder',
129 defaultMessage: '!!!Open Service Recipes folder',
130 },
119 buttonSearchForUpdate: { 131 buttonSearchForUpdate: {
120 id: 'settings.app.buttonSearchForUpdate', 132 id: 'settings.app.buttonSearchForUpdate',
121 defaultMessage: '!!!Check for updates', 133 defaultMessage: '!!!Check for updates',
@@ -259,6 +271,9 @@ export default @observer class EditSettingsForm extends Component {
259 } 271 }
260 } 272 }
261 273
274 const profileFolder = userDataPath();
275 const recipeFolder = userDataRecipesPath();
276
262 return ( 277 return (
263 <div className="settings__main"> 278 <div className="settings__main">
264 <div className="settings__header"> 279 <div className="settings__header">
@@ -631,6 +646,30 @@ export default @observer class EditSettingsForm extends Component {
631 /> 646 />
632 </p> 647 </p>
633 </div> 648 </div>
649
650 <Hr />
651
652 <div className="settings__settings-group">
653 <h3>
654 {intl.formatMessage(messages.subheadlineFerdiProfile)}
655 </h3>
656 <p>
657 <div className="settings__open-settings-file-container">
658 <Button
659 buttonType="secondary"
660 label={intl.formatMessage(messages.buttonOpenFerdiProfileFolder)}
661 className="settings__open-settings-file-button"
662 onClick={() => openPath(profileFolder)}
663 />
664 <Button
665 buttonType="secondary"
666 label={intl.formatMessage(messages.buttonOpenFerdiServiceRecipesFolder)}
667 className="settings__open-settings-file-button"
668 onClick={() => openPath(recipeFolder)}
669 />
670 </div>
671 </p>
672 </div>
634 </div> 673 </div>
635 )} 674 )}
636 675
diff --git a/src/containers/settings/RecipesScreen.js b/src/containers/settings/RecipesScreen.js
index 52bf31383..526e0a1a9 100644
--- a/src/containers/settings/RecipesScreen.js
+++ b/src/containers/settings/RecipesScreen.js
@@ -1,5 +1,4 @@
1import { shell } from 'electron'; 1import { readJsonSync } from 'fs-extra';
2import { ensureDirSync, readJsonSync } from 'fs-extra';
3import React, { Component } from 'react'; 2import React, { Component } from 'react';
4import PropTypes from 'prop-types'; 3import PropTypes from 'prop-types';
5import { autorun } from 'mobx'; 4import { autorun } from 'mobx';
@@ -13,7 +12,7 @@ import UserStore from '../../stores/UserStore';
13import RecipesDashboard from '../../components/settings/recipes/RecipesDashboard'; 12import RecipesDashboard from '../../components/settings/recipes/RecipesDashboard';
14import ErrorBoundary from '../../components/util/ErrorBoundary'; 13import ErrorBoundary from '../../components/util/ErrorBoundary';
15import { CUSTOM_WEBSITE_RECIPE_ID, FRANZ_DEV_DOCS } from '../../config'; 14import { CUSTOM_WEBSITE_RECIPE_ID, FRANZ_DEV_DOCS } from '../../config';
16import { asarRecipesPath, userDataRecipesPath } from '../../environment'; 15import { asarRecipesPath, openPath, userDataRecipesPath } from '../../environment';
17import { communityRecipesStore } from '../../features/communityRecipes'; 16import { communityRecipesStore } from '../../features/communityRecipes';
18import RecipePreview from '../../models/RecipePreview'; 17import RecipePreview from '../../models/RecipePreview';
19import AppStore from '../../stores/AppStore'; 18import AppStore from '../../stores/AppStore';
@@ -154,13 +153,8 @@ export default @inject('stores', 'actions') @observer class RecipesScreen extend
154 serviceStatus={services.actionStatus} 153 serviceStatus={services.actionStatus}
155 recipeFilter={filter} 154 recipeFilter={filter}
156 recipeDirectory={recipeDirectory} 155 recipeDirectory={recipeDirectory}
157 openRecipeDirectory={async () => { 156 openRecipeDirectory={() => openPath(recipeDirectory)}
158 ensureDirSync(recipeDirectory); 157 openDevDocs={() => appActions.openExternalUrl({ url: FRANZ_DEV_DOCS })}
159 shell.openExternal(`file://${recipeDirectory}`);
160 }}
161 openDevDocs={() => {
162 appActions.openExternalUrl({ url: FRANZ_DEV_DOCS });
163 }}
164 /> 158 />
165 </ErrorBoundary> 159 </ErrorBoundary>
166 ); 160 );
diff --git a/src/environment.js b/src/environment.js
index f2a889be4..6332ad67b 100644
--- a/src/environment.js
+++ b/src/environment.js
@@ -1,7 +1,9 @@
1import os from 'os'; 1import os from 'os';
2import { join } from 'path'; 2import { join } from 'path';
3import { ensureDirSync } from 'fs-extra';
3 4
4import { is, api as electronApi } from 'electron-util'; 5import { is, api as electronApi } from 'electron-util';
6import { shell } from 'electron';
5 7
6import { DEFAULT_ACCENT_COLOR } from '@meetfranz/theme'; 8import { DEFAULT_ACCENT_COLOR } from '@meetfranz/theme';
7 9
@@ -63,6 +65,11 @@ export function asarRecipesPath(...segments) {
63 return join(asarPath(join(__dirname, 'recipes')), ...([segments].flat())); 65 return join(asarPath(join(__dirname, 'recipes')), ...([segments].flat()));
64} 66}
65 67
68export async function openPath(folderName) {
69 ensureDirSync(folderName);
70 shell.openPath(folderName);
71}
72
66export const useLiveAPI = process.env.USE_LIVE_API; 73export const useLiveAPI = process.env.USE_LIVE_API;
67const useLocalAPI = process.env.USE_LOCAL_API; 74const useLocalAPI = process.env.USE_LOCAL_API;
68 75
diff --git a/src/i18n/locales/defaultMessages.json b/src/i18n/locales/defaultMessages.json
index 683ec4628..da23ba1a3 100644
--- a/src/i18n/locales/defaultMessages.json
+++ b/src/i18n/locales/defaultMessages.json
@@ -3202,107 +3202,146 @@
3202 } 3202 }
3203 }, 3203 },
3204 { 3204 {
3205 "defaultMessage": "!!!Check for updates", 3205 "defaultMessage": "!!!Ferdi Profile",
3206 "end": { 3206 "end": {
3207 "column": 3, 3207 "column": 3,
3208 "line": 122 3208 "line": 122
3209 }, 3209 },
3210 "file": "src/components/settings/settings/EditSettingsForm.js", 3210 "file": "src/components/settings/settings/EditSettingsForm.js",
3211 "id": "settings.app.subheadlineFerdiProfile",
3212 "start": {
3213 "column": 27,
3214 "line": 119
3215 }
3216 },
3217 {
3218 "defaultMessage": "!!!Open Profile folder",
3219 "end": {
3220 "column": 3,
3221 "line": 126
3222 },
3223 "file": "src/components/settings/settings/EditSettingsForm.js",
3224 "id": "settings.app.buttonOpenFerdiProfileFolder",
3225 "start": {
3226 "column": 32,
3227 "line": 123
3228 }
3229 },
3230 {
3231 "defaultMessage": "!!!Open Service Recipes folder",
3232 "end": {
3233 "column": 3,
3234 "line": 130
3235 },
3236 "file": "src/components/settings/settings/EditSettingsForm.js",
3237 "id": "settings.app.buttonOpenFerdiServiceRecipesFolder",
3238 "start": {
3239 "column": 39,
3240 "line": 127
3241 }
3242 },
3243 {
3244 "defaultMessage": "!!!Check for updates",
3245 "end": {
3246 "column": 3,
3247 "line": 134
3248 },
3249 "file": "src/components/settings/settings/EditSettingsForm.js",
3211 "id": "settings.app.buttonSearchForUpdate", 3250 "id": "settings.app.buttonSearchForUpdate",
3212 "start": { 3251 "start": {
3213 "column": 25, 3252 "column": 25,
3214 "line": 119 3253 "line": 131
3215 } 3254 }
3216 }, 3255 },
3217 { 3256 {
3218 "defaultMessage": "!!!Restart & install update", 3257 "defaultMessage": "!!!Restart & install update",
3219 "end": { 3258 "end": {
3220 "column": 3, 3259 "column": 3,
3221 "line": 126 3260 "line": 138
3222 }, 3261 },
3223 "file": "src/components/settings/settings/EditSettingsForm.js", 3262 "file": "src/components/settings/settings/EditSettingsForm.js",
3224 "id": "settings.app.buttonInstallUpdate", 3263 "id": "settings.app.buttonInstallUpdate",
3225 "start": { 3264 "start": {
3226 "column": 23, 3265 "column": 23,
3227 "line": 123 3266 "line": 135
3228 } 3267 }
3229 }, 3268 },
3230 { 3269 {
3231 "defaultMessage": "!!!Is searching for update", 3270 "defaultMessage": "!!!Is searching for update",
3232 "end": { 3271 "end": {
3233 "column": 3, 3272 "column": 3,
3234 "line": 130 3273 "line": 142
3235 }, 3274 },
3236 "file": "src/components/settings/settings/EditSettingsForm.js", 3275 "file": "src/components/settings/settings/EditSettingsForm.js",
3237 "id": "settings.app.updateStatusSearching", 3276 "id": "settings.app.updateStatusSearching",
3238 "start": { 3277 "start": {
3239 "column": 25, 3278 "column": 25,
3240 "line": 127 3279 "line": 139
3241 } 3280 }
3242 }, 3281 },
3243 { 3282 {
3244 "defaultMessage": "!!!Update available, downloading...", 3283 "defaultMessage": "!!!Update available, downloading...",
3245 "end": { 3284 "end": {
3246 "column": 3, 3285 "column": 3,
3247 "line": 134 3286 "line": 146
3248 }, 3287 },
3249 "file": "src/components/settings/settings/EditSettingsForm.js", 3288 "file": "src/components/settings/settings/EditSettingsForm.js",
3250 "id": "settings.app.updateStatusAvailable", 3289 "id": "settings.app.updateStatusAvailable",
3251 "start": { 3290 "start": {
3252 "column": 25, 3291 "column": 25,
3253 "line": 131 3292 "line": 143
3254 } 3293 }
3255 }, 3294 },
3256 { 3295 {
3257 "defaultMessage": "!!!You are using the latest version of Ferdi", 3296 "defaultMessage": "!!!You are using the latest version of Ferdi",
3258 "end": { 3297 "end": {
3259 "column": 3, 3298 "column": 3,
3260 "line": 138 3299 "line": 150
3261 }, 3300 },
3262 "file": "src/components/settings/settings/EditSettingsForm.js", 3301 "file": "src/components/settings/settings/EditSettingsForm.js",
3263 "id": "settings.app.updateStatusUpToDate", 3302 "id": "settings.app.updateStatusUpToDate",
3264 "start": { 3303 "start": {
3265 "column": 24, 3304 "column": 24,
3266 "line": 135 3305 "line": 147
3267 } 3306 }
3268 }, 3307 },
3269 { 3308 {
3270 "defaultMessage": "!!!Current version:", 3309 "defaultMessage": "!!!Current version:",
3271 "end": { 3310 "end": {
3272 "column": 3, 3311 "column": 3,
3273 "line": 142 3312 "line": 154
3274 }, 3313 },
3275 "file": "src/components/settings/settings/EditSettingsForm.js", 3314 "file": "src/components/settings/settings/EditSettingsForm.js",
3276 "id": "settings.app.currentVersion", 3315 "id": "settings.app.currentVersion",
3277 "start": { 3316 "start": {
3278 "column": 18, 3317 "column": 18,
3279 "line": 139 3318 "line": 151
3280 } 3319 }
3281 }, 3320 },
3282 { 3321 {
3283 "defaultMessage": "!!!Changes require restart", 3322 "defaultMessage": "!!!Changes require restart",
3284 "end": { 3323 "end": {
3285 "column": 3, 3324 "column": 3,
3286 "line": 146 3325 "line": 158
3287 }, 3326 },
3288 "file": "src/components/settings/settings/EditSettingsForm.js", 3327 "file": "src/components/settings/settings/EditSettingsForm.js",
3289 "id": "settings.app.restartRequired", 3328 "id": "settings.app.restartRequired",
3290 "start": { 3329 "start": {
3291 "column": 22, 3330 "column": 22,
3292 "line": 143 3331 "line": 155
3293 } 3332 }
3294 }, 3333 },
3295 { 3334 {
3296 "defaultMessage": "!!!Official translations are English & German. All other languages are community based translations.", 3335 "defaultMessage": "!!!Official translations are English & German. All other languages are community based translations.",
3297 "end": { 3336 "end": {
3298 "column": 3, 3337 "column": 3,
3299 "line": 150 3338 "line": 162
3300 }, 3339 },
3301 "file": "src/components/settings/settings/EditSettingsForm.js", 3340 "file": "src/components/settings/settings/EditSettingsForm.js",
3302 "id": "settings.app.languageDisclaimer", 3341 "id": "settings.app.languageDisclaimer",
3303 "start": { 3342 "start": {
3304 "column": 22, 3343 "column": 22,
3305 "line": 147 3344 "line": 159
3306 } 3345 }
3307 } 3346 }
3308 ], 3347 ],
diff --git a/src/i18n/locales/en-US.json b/src/i18n/locales/en-US.json
index 002ea5655..1afa2c183 100644
--- a/src/i18n/locales/en-US.json
+++ b/src/i18n/locales/en-US.json
@@ -205,6 +205,8 @@
205 "settings.app.accentColorInfo": "Write your accent color in a CSS-compatible format. (Default: {defaultAccentColor})", 205 "settings.app.accentColorInfo": "Write your accent color in a CSS-compatible format. (Default: {defaultAccentColor})",
206 "settings.app.buttonClearAllCache": "Clear cache", 206 "settings.app.buttonClearAllCache": "Clear cache",
207 "settings.app.buttonInstallUpdate": "Restart & install update", 207 "settings.app.buttonInstallUpdate": "Restart & install update",
208 "settings.app.buttonOpenFerdiProfileFolder": "Open Profile folder",
209 "settings.app.buttonOpenFerdiServiceRecipesFolder": "Open Service Recipes folder",
208 "settings.app.buttonSearchForUpdate": "Check for updates", 210 "settings.app.buttonSearchForUpdate": "Check for updates",
209 "settings.app.cacheInfo": "Ferdi cache is currently using {size} of disk space.", 211 "settings.app.cacheInfo": "Ferdi cache is currently using {size} of disk space.",
210 "settings.app.cacheNotCleared": "Couldn't clear all cache", 212 "settings.app.cacheNotCleared": "Couldn't clear all cache",
@@ -275,6 +277,7 @@
275 "settings.app.sentryInfo": "Sending telemetry data allows us to find errors in Ferdi - we will not send any personal information like your message data!", 277 "settings.app.sentryInfo": "Sending telemetry data allows us to find errors in Ferdi - we will not send any personal information like your message data!",
276 "settings.app.spellCheckerLanguageInfo": "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.", 278 "settings.app.spellCheckerLanguageInfo": "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.",
277 "settings.app.subheadlineCache": "Cache", 279 "settings.app.subheadlineCache": "Cache",
280 "settings.app.subheadlineFerdiProfile": "Ferdi Profile",
278 "settings.app.todoServerInfo": "This server will be used for the \"Ferdi Todo\" feature.", 281 "settings.app.todoServerInfo": "This server will be used for the \"Ferdi Todo\" feature.",
279 "settings.app.translationHelp": "Help us to translate Ferdi into your language.", 282 "settings.app.translationHelp": "Help us to translate Ferdi into your language.",
280 "settings.app.universalDarkModeInfo": "Universal Dark Mode tries to dynamically generate dark mode styles for services that are otherwise not currently supported.", 283 "settings.app.universalDarkModeInfo": "Universal Dark Mode tries to dynamically generate dark mode styles for services that are otherwise not currently supported.",
diff --git a/src/i18n/messages/src/components/settings/settings/EditSettingsForm.json b/src/i18n/messages/src/components/settings/settings/EditSettingsForm.json
index 548d52af9..2b9a00daf 100644
--- a/src/i18n/messages/src/components/settings/settings/EditSettingsForm.json
+++ b/src/i18n/messages/src/components/settings/settings/EditSettingsForm.json
@@ -312,15 +312,54 @@
312 } 312 }
313 }, 313 },
314 { 314 {
315 "id": "settings.app.subheadlineFerdiProfile",
316 "defaultMessage": "!!!Ferdi Profile",
317 "file": "src/components/settings/settings/EditSettingsForm.js",
318 "start": {
319 "line": 119,
320 "column": 27
321 },
322 "end": {
323 "line": 122,
324 "column": 3
325 }
326 },
327 {
328 "id": "settings.app.buttonOpenFerdiProfileFolder",
329 "defaultMessage": "!!!Open Profile folder",
330 "file": "src/components/settings/settings/EditSettingsForm.js",
331 "start": {
332 "line": 123,
333 "column": 32
334 },
335 "end": {
336 "line": 126,
337 "column": 3
338 }
339 },
340 {
341 "id": "settings.app.buttonOpenFerdiServiceRecipesFolder",
342 "defaultMessage": "!!!Open Service Recipes folder",
343 "file": "src/components/settings/settings/EditSettingsForm.js",
344 "start": {
345 "line": 127,
346 "column": 39
347 },
348 "end": {
349 "line": 130,
350 "column": 3
351 }
352 },
353 {
315 "id": "settings.app.buttonSearchForUpdate", 354 "id": "settings.app.buttonSearchForUpdate",
316 "defaultMessage": "!!!Check for updates", 355 "defaultMessage": "!!!Check for updates",
317 "file": "src/components/settings/settings/EditSettingsForm.js", 356 "file": "src/components/settings/settings/EditSettingsForm.js",
318 "start": { 357 "start": {
319 "line": 119, 358 "line": 131,
320 "column": 25 359 "column": 25
321 }, 360 },
322 "end": { 361 "end": {
323 "line": 122, 362 "line": 134,
324 "column": 3 363 "column": 3
325 } 364 }
326 }, 365 },
@@ -329,11 +368,11 @@
329 "defaultMessage": "!!!Restart & install update", 368 "defaultMessage": "!!!Restart & install update",
330 "file": "src/components/settings/settings/EditSettingsForm.js", 369 "file": "src/components/settings/settings/EditSettingsForm.js",
331 "start": { 370 "start": {
332 "line": 123, 371 "line": 135,
333 "column": 23 372 "column": 23
334 }, 373 },
335 "end": { 374 "end": {
336 "line": 126, 375 "line": 138,
337 "column": 3 376 "column": 3
338 } 377 }
339 }, 378 },
@@ -342,11 +381,11 @@
342 "defaultMessage": "!!!Is searching for update", 381 "defaultMessage": "!!!Is searching for update",
343 "file": "src/components/settings/settings/EditSettingsForm.js", 382 "file": "src/components/settings/settings/EditSettingsForm.js",
344 "start": { 383 "start": {
345 "line": 127, 384 "line": 139,
346 "column": 25 385 "column": 25
347 }, 386 },
348 "end": { 387 "end": {
349 "line": 130, 388 "line": 142,
350 "column": 3 389 "column": 3
351 } 390 }
352 }, 391 },
@@ -355,11 +394,11 @@
355 "defaultMessage": "!!!Update available, downloading...", 394 "defaultMessage": "!!!Update available, downloading...",
356 "file": "src/components/settings/settings/EditSettingsForm.js", 395 "file": "src/components/settings/settings/EditSettingsForm.js",
357 "start": { 396 "start": {
358 "line": 131, 397 "line": 143,
359 "column": 25 398 "column": 25
360 }, 399 },
361 "end": { 400 "end": {
362 "line": 134, 401 "line": 146,
363 "column": 3 402 "column": 3
364 } 403 }
365 }, 404 },
@@ -368,11 +407,11 @@
368 "defaultMessage": "!!!You are using the latest version of Ferdi", 407 "defaultMessage": "!!!You are using the latest version of Ferdi",
369 "file": "src/components/settings/settings/EditSettingsForm.js", 408 "file": "src/components/settings/settings/EditSettingsForm.js",
370 "start": { 409 "start": {
371 "line": 135, 410 "line": 147,
372 "column": 24 411 "column": 24
373 }, 412 },
374 "end": { 413 "end": {
375 "line": 138, 414 "line": 150,
376 "column": 3 415 "column": 3
377 } 416 }
378 }, 417 },
@@ -381,11 +420,11 @@
381 "defaultMessage": "!!!Current version:", 420 "defaultMessage": "!!!Current version:",
382 "file": "src/components/settings/settings/EditSettingsForm.js", 421 "file": "src/components/settings/settings/EditSettingsForm.js",
383 "start": { 422 "start": {
384 "line": 139, 423 "line": 151,
385 "column": 18 424 "column": 18
386 }, 425 },
387 "end": { 426 "end": {
388 "line": 142, 427 "line": 154,
389 "column": 3 428 "column": 3
390 } 429 }
391 }, 430 },
@@ -394,11 +433,11 @@
394 "defaultMessage": "!!!Changes require restart", 433 "defaultMessage": "!!!Changes require restart",
395 "file": "src/components/settings/settings/EditSettingsForm.js", 434 "file": "src/components/settings/settings/EditSettingsForm.js",
396 "start": { 435 "start": {
397 "line": 143, 436 "line": 155,
398 "column": 22 437 "column": 22
399 }, 438 },
400 "end": { 439 "end": {
401 "line": 146, 440 "line": 158,
402 "column": 3 441 "column": 3
403 } 442 }
404 }, 443 },
@@ -407,11 +446,11 @@
407 "defaultMessage": "!!!Official translations are English & German. All other languages are community based translations.", 446 "defaultMessage": "!!!Official translations are English & German. All other languages are community based translations.",
408 "file": "src/components/settings/settings/EditSettingsForm.js", 447 "file": "src/components/settings/settings/EditSettingsForm.js",
409 "start": { 448 "start": {
410 "line": 147, 449 "line": 159,
411 "column": 22 450 "column": 22
412 }, 451 },
413 "end": { 452 "end": {
414 "line": 150, 453 "line": 162,
415 "column": 3 454 "column": 3
416 } 455 }
417 } 456 }
diff --git a/src/index.js b/src/index.js
index b1d4907cc..f6573d8f5 100644
--- a/src/index.js
+++ b/src/index.js
@@ -329,7 +329,7 @@ const createWindow = () => {
329 329
330 if (isMac) { 330 if (isMac) {
331 // eslint-disable-next-line global-require 331 // eslint-disable-next-line global-require
332 const { default: askFormacOSPermissions } = require('./electron/macOSPermissions'); 332 const { askFormacOSPermissions } = require('./electron/macOSPermissions');
333 setTimeout(() => askFormacOSPermissions(mainWindow), ms('30s')); 333 setTimeout(() => askFormacOSPermissions(mainWindow), ms('30s'));
334 } 334 }
335 335
diff --git a/src/styles/settings.scss b/src/styles/settings.scss
index 501f97b98..f06ed7ef8 100644
--- a/src/styles/settings.scss
+++ b/src/styles/settings.scss
@@ -361,11 +361,11 @@
361 .settings__delete-button { 361 .settings__delete-button {
362 right: 0; 362 right: 0;
363 } 363 }
364 .settings__open-recipe-file-button { 364 .settings__open-recipe-file-button, .settings__open-settings-file-button {
365 cursor: pointer; 365 cursor: pointer;
366 margin-right: 10px; 366 margin-right: 10px;
367 } 367 }
368 .settings__open-recipe-file-container { 368 .settings__open-recipe-file-container, .settings__open-settings-file-container {
369 margin-top: 20px; 369 margin-top: 20px;
370 display: flex; 370 display: flex;
371 height: auto !important; 371 height: auto !important;