aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Vijay A <vraravam@users.noreply.github.com>2024-04-25 06:34:05 +0530
committerLibravatar Vijay A <vraravam@users.noreply.github.com>2024-04-25 06:34:05 +0530
commitd8f519a8eea28b88b727ddc6a2a42b6e3d784e02 (patch)
tree9af0139def27584645e46fa1de6cf36b0325eb63
parentRelease 6.7.2 (diff)
parent6.7.3-nightly.15 [skip ci] (diff)
downloadferdium-app-release.tar.gz
ferdium-app-release.tar.zst
ferdium-app-release.zip
Merge branch 'develop' into releasev6.7.3release
Bumped up version for stable release
-rw-r--r--.codespellrc9
-rw-r--r--.eslintignore1
-rw-r--r--.eslintrc.js25
-rw-r--r--.github/dependabot.yml11
-rw-r--r--.github/workflows/builds.yml4
-rw-r--r--.github/workflows/codespell.yml23
-rw-r--r--.nvmrc2
-rw-r--r--.vscode/extensions.json31
-rw-r--r--.vscode/launch.json87
-rw-r--r--.vscode/settings.json47
-rw-r--r--.vscode/tasks.json18
-rw-r--r--CHANGELOG.md4
-rw-r--r--CONTRIBUTING.md4
-rw-r--r--Dockerfile2
-rw-r--r--build-helpers/notarize.js7
-rw-r--r--docs/MIGRATION.md2
-rw-r--r--docs/dbus/org.ferdium.Ferdium.xml2
-rw-r--r--electron-builder.yml1
-rw-r--r--package.json65
-rw-r--r--pnpm-lock.yaml1195
m---------recipes0
-rw-r--r--scripts/link-readme.ts2
-rwxr-xr-xscripts/migration/migrate-unix.sh2
-rw-r--r--src/@types/mobx-form.types.ts2
-rw-r--r--src/I18n.tsx4
-rw-r--r--src/api/server/ServerApi.ts3
-rw-r--r--src/api/utils/auth.ts1
-rw-r--r--src/components/auth/AuthLayout.tsx1
-rw-r--r--src/components/downloadManager/DownloadManagerDashboard.tsx1
-rw-r--r--src/components/downloadManager/DownloadManagerLayout.tsx6
-rw-r--r--src/components/services/tabs/TabItem.tsx6
-rw-r--r--src/components/settings/SettingsLayout.tsx4
-rw-r--r--src/components/settings/recipes/RecipeItem.tsx2
-rw-r--r--src/components/settings/recipes/RecipesDashboard.tsx22
-rw-r--r--src/components/settings/releaseNotes/ReleaseNotesDashboard.tsx5
-rw-r--r--src/components/settings/releaseNotes/ReleaseNotesLayout.tsx6
-rw-r--r--src/components/settings/settings/EditSettingsForm.tsx62
-rw-r--r--src/components/settings/supportFerdium/SupportFerdiumDashboard.tsx14
-rw-r--r--src/components/ui/FAB.tsx1
-rw-r--r--src/components/ui/SearchInput.tsx1
-rw-r--r--src/components/ui/Tabs/Tabs.tsx7
-rw-r--r--src/components/ui/button/index.tsx2
-rw-r--r--src/components/ui/imageUpload/index.tsx2
-rw-r--r--src/components/ui/input/index.tsx5
-rw-r--r--src/components/ui/select/index.tsx15
-rw-r--r--src/components/ui/textarea/index.tsx7
-rw-r--r--src/config.ts1
-rw-r--r--src/containers/auth/AuthReleaseNotesScreen.tsx1
-rw-r--r--src/containers/download-manager/DownloadManagerScreen.tsx17
-rw-r--r--src/containers/layout/AppLayoutContainer.tsx2
-rw-r--r--src/containers/settings/EditServiceScreen.tsx4
-rw-r--r--src/containers/settings/EditSettingsScreen.tsx16
-rw-r--r--src/containers/settings/ReleaseNotesScreen.tsx18
-rw-r--r--src/containers/settings/SupportScreen.tsx18
-rw-r--r--src/electron/ipc-api/autoUpdate.ts1
-rw-r--r--src/electron/ipc-api/index.ts1
-rw-r--r--src/electron/ipc-api/processManager.ts2
-rw-r--r--src/electron/macOSPermissions.ts2
-rw-r--r--src/features/appearance/index.ts1
-rw-r--r--src/features/basicAuth/Component.tsx2
-rw-r--r--src/features/communityRecipes/store.ts1
-rw-r--r--src/features/publishDebugInfo/Component.tsx2
-rw-r--r--src/features/quickSwitch/Component.tsx4
-rw-r--r--src/features/todos/actions.ts1
-rw-r--r--src/features/todos/components/TodosWebview.tsx3
-rw-r--r--src/features/todos/index.ts1
-rw-r--r--src/features/webControls/components/WebControls.tsx5
-rw-r--r--src/features/webControls/containers/WebControlsScreen.tsx2
-rw-r--r--src/features/workspaces/components/CreateWorkspaceForm.tsx2
-rw-r--r--src/features/workspaces/components/EditWorkspaceForm.tsx7
-rw-r--r--src/features/workspaces/components/WorkspaceDrawer.tsx38
-rw-r--r--src/features/workspaces/components/WorkspaceDrawerItem.tsx1
-rw-r--r--src/features/workspaces/components/WorkspaceServiceListItem.tsx1
-rw-r--r--src/features/workspaces/components/WorkspacesDashboard.tsx50
-rw-r--r--src/features/workspaces/index.ts1
-rw-r--r--src/helpers/translation-helpers.ts2
-rw-r--r--src/helpers/update-helpers.ts4
-rw-r--r--src/i18n/locales/ar.json3
-rw-r--r--src/i18n/locales/ca.json1
-rw-r--r--src/i18n/locales/cs.json3
-rw-r--r--src/i18n/locales/da.json3
-rw-r--r--src/i18n/locales/de.json5
-rw-r--r--src/i18n/locales/el.json3
-rw-r--r--src/i18n/locales/en-US.json12
-rw-r--r--src/i18n/locales/es.json5
-rw-r--r--src/i18n/locales/fi.json3
-rw-r--r--src/i18n/locales/fr.json5
-rw-r--r--src/i18n/locales/he.json5
-rw-r--r--src/i18n/locales/hi.json1
-rw-r--r--src/i18n/locales/id.json1
-rw-r--r--src/i18n/locales/it.json5
-rw-r--r--src/i18n/locales/ja.json5
-rw-r--r--src/i18n/locales/ko.json1
-rw-r--r--src/i18n/locales/lv.json5
-rw-r--r--src/i18n/locales/nl.json5
-rw-r--r--src/i18n/locales/no.json3
-rw-r--r--src/i18n/locales/pl.json5
-rw-r--r--src/i18n/locales/pt-BR.json5
-rw-r--r--src/i18n/locales/pt.json5
-rw-r--r--src/i18n/locales/ro.json3
-rw-r--r--src/i18n/locales/ru.json5
-rw-r--r--src/i18n/locales/sk.json5
-rw-r--r--src/i18n/locales/sv.json3
-rw-r--r--src/i18n/locales/tr.json5
-rw-r--r--src/i18n/locales/uk.json3
-rw-r--r--src/i18n/locales/vi.json3
-rw-r--r--src/i18n/locales/zh-HANS.json2
-rw-r--r--src/index.ts1
-rw-r--r--src/internal-server/app/Controllers/Http/ImageController.js1
-rw-r--r--src/internal-server/resources/views/transfer.edge2
-rw-r--r--src/internal-server/start/migrate.js1
-rw-r--r--src/internal-server/start/routes.js2
-rw-r--r--src/internal-server/test.ts2
-rw-r--r--src/jsUtils.ts6
-rw-r--r--src/lib/Menu.ts40
-rw-r--r--src/models/Recipe.ts16
-rw-r--r--src/routes.tsx3
-rw-r--r--src/stores/AppStore.ts2
-rw-r--r--src/stores/ServicesStore.ts9
-rw-r--r--src/stores/SettingsStore.ts6
-rw-r--r--src/stores/lib/Request.ts2
-rw-r--r--src/styles/settings.scss1
-rw-r--r--src/themes/default/index.ts1
-rw-r--r--src/webview/contextMenuBuilder.ts26
-rw-r--r--src/webview/lib/RecipeWebview.ts1
-rw-r--r--test/helpers/array-helpers.test.ts5
-rw-r--r--test/jsUtils.test.ts58
127 files changed, 1186 insertions, 1051 deletions
diff --git a/.codespellrc b/.codespellrc
new file mode 100644
index 000000000..5e3e02437
--- /dev/null
+++ b/.codespellrc
@@ -0,0 +1,9 @@
1[codespell]
2# Ref: https://github.com/codespell-project/codespell#using-a-config-file
3skip = .git*,*.svg,*.css,.codespellrc,locales,pnpm-lock.yaml,i18n,config.ts,extensions.json
4check-hidden = true
5# Case sensitive names, or phrases (typically non-English), to ignore
6# Python style regex. \b is a match at a word boundary
7ignore-regex = \b(Manuel|Sie diesen|Sie den|l'authentification)\b
8# Case insensitive comma separated list of words to ignore
9# ignore-words-list =
diff --git a/.eslintignore b/.eslintignore
index f1867f427..30357b9c4 100644
--- a/.eslintignore
+++ b/.eslintignore
@@ -10,6 +10,7 @@ pids
10# Coverage directory used by tools like istanbul 10# Coverage directory used by tools like istanbul
11coverage 11coverage
12.eslintcache 12.eslintcache
13.eslintrc.js
13 14
14# Dependency directory 15# Dependency directory
15# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git 16# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git
diff --git a/.eslintrc.js b/.eslintrc.js
index 50b511d0c..f95bbbd9f 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -17,8 +17,9 @@ module.exports = {
17 'plugin:unicorn/recommended', 17 'plugin:unicorn/recommended',
18 'plugin:sonar/recommended', 18 'plugin:sonar/recommended',
19 'plugin:prettier/recommended', 19 'plugin:prettier/recommended',
20 'plugin:@eslint-react/recommended-legacy',
20 ], 21 ],
21 plugins: ['jest'], 22 plugins: ['@eslint-react', 'jest'],
22 settings: { 23 settings: {
23 react: { 24 react: {
24 pragma: 'React', // Pragma to use, default to "React" 25 pragma: 'React', // Pragma to use, default to "React"
@@ -45,6 +46,7 @@ module.exports = {
45 // TODO: Opt-in to a stricter ruleset in the future 46 // TODO: Opt-in to a stricter ruleset in the future
46 // 'plugin:@typescript-eslint/strict-type-checked', 47 // 'plugin:@typescript-eslint/strict-type-checked',
47 'plugin:@typescript-eslint/stylistic-type-checked', 48 'plugin:@typescript-eslint/stylistic-type-checked',
49 'plugin:@eslint-react/recommended-type-checked-legacy',
48 ], 50 ],
49 parser: '@typescript-eslint/parser', 51 parser: '@typescript-eslint/parser',
50 plugins: [], 52 plugins: [],
@@ -71,6 +73,12 @@ module.exports = {
71 // eslint-plugin-import 73 // eslint-plugin-import
72 'import/no-extraneous-dependencies': 0, 74 'import/no-extraneous-dependencies': 0,
73 75
76 // @eslint-react
77 '@eslint-react/no-class-component': 0,
78 '@eslint-react/no-complicated-conditional-rendering': 0,
79 '@eslint-react/no-leaked-conditional-rendering': 0,
80 '@eslint-react/hooks-extra/ensure-custom-hooks-using-other-hooks': 0,
81
74 // sonar 82 // sonar
75 'sonar/no-try-promise': 0, 83 'sonar/no-try-promise': 0,
76 }, 84 },
@@ -105,7 +113,7 @@ module.exports = {
105 'react/jsx-filename-extension': 1, 113 'react/jsx-filename-extension': 1,
106 'react/jsx-no-bind': 1, 114 'react/jsx-no-bind': 1,
107 'react/jsx-props-no-spreading': 0, 115 'react/jsx-props-no-spreading': 0,
108 'react/prefer-stateless-function': 1, 116 'react/prefer-stateless-function': 0,
109 'react/static-property-placement': 0, 117 'react/static-property-placement': 0,
110 'react/state-in-constructor': 1, 118 'react/state-in-constructor': 1,
111 'react/sort-comp': 0, 119 'react/sort-comp': 0,
@@ -134,17 +142,10 @@ module.exports = {
134 'unicorn/no-null': 0, 142 'unicorn/no-null': 0,
135 'unicorn/prefer-module': 0, 143 'unicorn/prefer-module': 0,
136 'unicorn/prevent-abbreviations': 0, 144 'unicorn/prevent-abbreviations': 0,
137 'unicorn/import-style': [ 145 'unicorn/import-style': 0,
138 2,
139 {
140 styles: {
141 path: {
142 named: true,
143 },
144 },
145 },
146 ],
147 'unicorn/consistent-destructuring': 0, 146 'unicorn/consistent-destructuring': 0,
147 'unicorn/no-anonymous-default-export': 0,
148 'unicorn/no-array-for-each': 0,
148 // eslint-plugin-sonar 149 // eslint-plugin-sonar
149 'sonar/function-name': 0, 150 'sonar/function-name': 0,
150 }, 151 },
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
deleted file mode 100644
index 26048beba..000000000
--- a/.github/dependabot.yml
+++ /dev/null
@@ -1,11 +0,0 @@
1version: 2
2updates:
3 - package-ecosystem: "npm" # See documentation for possible values
4 directory: "/" # Location of package manifests
5 schedule:
6 interval: "daily"
7 # Maintain dependencies for GitHub Actions
8 - package-ecosystem: "github-actions"
9 directory: "/"
10 schedule:
11 interval: "daily"
diff --git a/.github/workflows/builds.yml b/.github/workflows/builds.yml
index 6ad31da9e..2002d95b0 100644
--- a/.github/workflows/builds.yml
+++ b/.github/workflows/builds.yml
@@ -54,7 +54,6 @@ jobs:
54 if: ${{ github.event_name == 'schedule' || (github.event_name == 'workflow_dispatch' && contains(github.event.inputs.message, '[nightly branch]')) }} 54 if: ${{ github.event_name == 'schedule' || (github.event_name == 'workflow_dispatch' && contains(github.event.inputs.message, '[nightly branch]')) }}
55 with: 55 with:
56 node-version-file: '.nvmrc' 56 node-version-file: '.nvmrc'
57 cache: 'pnpm'
58 - name: Install node dependencies 57 - name: Install node dependencies
59 if: ${{ github.event_name == 'schedule' || (github.event_name == 'workflow_dispatch' && contains(github.event.inputs.message, '[nightly branch]')) }} 58 if: ${{ github.event_name == 'schedule' || (github.event_name == 'workflow_dispatch' && contains(github.event.inputs.message, '[nightly branch]')) }}
60 uses: nick-fields/retry@v3 59 uses: nick-fields/retry@v3
@@ -176,7 +175,6 @@ jobs:
176 uses: actions/setup-node@v4 175 uses: actions/setup-node@v4
177 with: 176 with:
178 node-version-file: '.nvmrc' 177 node-version-file: '.nvmrc'
179 cache: 'pnpm'
180 - name: Install node dependencies 178 - name: Install node dependencies
181 uses: nick-fields/retry@v3 179 uses: nick-fields/retry@v3
182 with: 180 with:
@@ -255,7 +253,6 @@ jobs:
255 uses: actions/setup-node@v4 253 uses: actions/setup-node@v4
256 with: 254 with:
257 node-version-file: '.nvmrc' 255 node-version-file: '.nvmrc'
258 cache: 'pnpm'
259 - name: Install node dependencies 256 - name: Install node dependencies
260 uses: nick-fields/retry@v3 257 uses: nick-fields/retry@v3
261 with: 258 with:
@@ -355,7 +352,6 @@ jobs:
355 uses: actions/setup-node@v4 352 uses: actions/setup-node@v4
356 with: 353 with:
357 node-version-file: '.nvmrc' 354 node-version-file: '.nvmrc'
358 cache: 'pnpm'
359 #TODO - Remove this once https://github.com/electron-userland/electron-builder/issues/6933#issuecomment-1213438889 is resolved 355 #TODO - Remove this once https://github.com/electron-userland/electron-builder/issues/6933#issuecomment-1213438889 is resolved
360 - name: Tweak pnpm.cjs 356 - name: Tweak pnpm.cjs
361 run: | 357 run: |
diff --git a/.github/workflows/codespell.yml b/.github/workflows/codespell.yml
new file mode 100644
index 000000000..feadb9a34
--- /dev/null
+++ b/.github/workflows/codespell.yml
@@ -0,0 +1,23 @@
1# Codespell configuration is within .codespellrc
2---
3name: Codespell
4
5on:
6 push:
7 branches: [develop]
8 pull_request:
9 branches: [develop]
10
11permissions:
12 contents: read
13
14jobs:
15 codespell:
16 name: Check for spelling errors
17 runs-on: ubuntu-22.04
18
19 steps:
20 - name: Checkout
21 uses: actions/checkout@v4
22 - name: Codespell
23 uses: codespell-project/actions-codespell@v2
diff --git a/.nvmrc b/.nvmrc
index 2dbbe00e6..87834047a 100644
--- a/.nvmrc
+++ b/.nvmrc
@@ -1 +1 @@
20.11.1 20.12.2
diff --git a/.vscode/extensions.json b/.vscode/extensions.json
deleted file mode 100644
index 9f26c98d1..000000000
--- a/.vscode/extensions.json
+++ /dev/null
@@ -1,31 +0,0 @@
1{
2 "recommendations": [
3 "esbenp.prettier-vscode",
4 "dbaeumer.vscode-eslint",
5 "codezombiech.gitignore",
6 "editorconfig.editorconfig",
7 "steoates.autoimport",
8 "formulahendry.auto-rename-tag",
9 "streetsidesoftware.code-spell-checker",
10 "naumovs.color-highlight",
11 "mkhl.direnv",
12 "ms-azuretools.vscode-docker",
13 "usernamehw.errorlens",
14 "dsznajder.es7-react-js-snippets",
15 "mhutchie.git-graph",
16 "vincaslt.highlight-matching-tag",
17 "eamodio.gitlens",
18 "jbockle.jbockle-format-files",
19 "wix.vscode-import-cost",
20 "visualstudioexptteam.intellicode-api-usage-examples",
21 "visualstudioexptteam.vscodeintellicode",
22 "orta.vscode-jest",
23 "pkief.material-icon-theme",
24 "techer.open-in-browser",
25 "christian-kohler.path-intellisense",
26 "ofhumanbondage.react-proptypes-intellisense",
27 "jingkaizhao.vscode-redux-devtools",
28 "planbcoding.vscode-react-refactor",
29 "redhat.vscode-yaml"
30 ]
31}
diff --git a/.vscode/launch.json b/.vscode/launch.json
deleted file mode 100644
index 24002a53b..000000000
--- a/.vscode/launch.json
+++ /dev/null
@@ -1,87 +0,0 @@
1{
2 "version": "0.2.0",
3 "configurations": [
4 {
5 "name": "PowerShell Launch Current File",
6 "type": "PowerShell",
7 "request": "launch",
8 "script": "${file}",
9 "cwd": "${workspaceFolder}"
10 },
11 {
12 "type": "node",
13 "request": "launch",
14 "name": "Ferdium - Test API",
15 "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron",
16 "program": "${workspaceFolder}/build/index.js",
17 "protocol": "inspector",
18 "env": {
19 "NODE_ENV": "development",
20 "DEBUG": "*,-engine.io*,-socket.io*"
21 }
22 },
23 {
24 "type": "node",
25 "request": "launch",
26 "name": "Ferdium – Live API",
27 "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron",
28 "program": "${workspaceFolder}/build/index.js",
29 "protocol": "inspector",
30 "env": {
31 "USE_LIVE_API": "1",
32 "DEBUG": "*,-engine.io*,-socket.io*"
33 }
34 },
35 {
36 "type": "node",
37 "request": "launch",
38 "name": "Ferdium – Local API",
39 "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron",
40 "program": "${workspaceFolder}/build/index.js",
41 "protocol": "inspector",
42 "env": {
43 "USE_LOCAL_API": "1",
44 "DEBUG": "*,-engine.io*,-socket.io*"
45 }
46 },
47 {
48 "type": "node",
49 "request": "launch",
50 "name": "(Win Sim) Ferdium - Test API",
51 "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron",
52 "program": "${workspaceFolder}/build/index.js",
53 "protocol": "inspector",
54 "env": {
55 "NODE_ENV": "development",
56 "OS_PLATFORM": "win32",
57 "DEBUG": "*,-engine.io*,-socket.io*"
58 }
59 },
60 {
61 "type": "node",
62 "request": "launch",
63 "name": "(Win Sim) Ferdium – Live API",
64 "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron",
65 "program": "${workspaceFolder}/build/index.js",
66 "protocol": "inspector",
67 "env": {
68 "USE_LIVE_API": "1",
69 "OS_PLATFORM": "win32",
70 "DEBUG": "*,-engine.io*,-socket.io*"
71 }
72 },
73 {
74 "type": "node",
75 "request": "launch",
76 "name": "(Win Sim) Ferdium – Local API",
77 "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron",
78 "program": "${workspaceFolder}/build/index.js",
79 "protocol": "inspector",
80 "env": {
81 "USE_LOCAL_API": "1",
82 "OS_PLATFORM": "win32",
83 "DEBUG": "*,-engine.io*,-socket.io*"
84 }
85 }
86 ]
87}
diff --git a/.vscode/settings.json b/.vscode/settings.json
deleted file mode 100644
index 42a06efe9..000000000
--- a/.vscode/settings.json
+++ /dev/null
@@ -1,47 +0,0 @@
1{
2 "prettier.singleQuote": true,
3 "js/ts.implicitProjectConfig.experimentalDecorators": true,
4 "yaml.schemas": {
5 "https://json.schemastore.org/github-issue-config.json": ".github/ISSUE_TEMPLATE/config.yml"
6 },
7
8 // "editor.fontFamily": "Fira Code",
9 // "editor.fontLigatures": true,
10 "editor.detectIndentation": false,
11 "editor.guides.bracketPairs": "active",
12 "editor.codeActionsOnSave": {
13 "source.fixAll": "explicit",
14 "source.fixAll.eslint": "explicit"
15 },
16
17 // "explorer.confirmDelete": false,
18 // "explorer.confirmDragAndDrop": false,
19
20 // "eslint.runtime": "node",
21 "eslint.format.enable": true,
22 "eslint.workingDirectories": [{ "mode": "auto" }],
23 // "eslint.packageManager": "npm",
24 "eslint.validate": [
25 "javascript",
26 "javascriptreact",
27 "typescript",
28 "typescriptreact"
29 ],
30 "editor.defaultFormatter": "esbenp.prettier-vscode",
31
32 // "workbench.colorTheme": "Visual Studio Dark",
33 // "workbench.iconTheme": "material-icon-theme",
34
35 "terminal.integrated.sendKeybindingsToShell": true,
36 // "terminal.integrated.copyOnSelection": true,
37 "terminal.integrated.defaultProfile.osx": "zsh",
38 "terminal.integrated.cursorBlinking": true,
39
40 "git.enableSmartCommit": true,
41 "diffEditor.ignoreTrimWhitespace": false,
42
43 // "formatFiles.runOrganizeImports": true,
44
45 "javascript.preferences.importModuleSpecifier": "relative",
46 "typescript.preferences.importModuleSpecifier": "relative"
47}
diff --git a/.vscode/tasks.json b/.vscode/tasks.json
deleted file mode 100644
index 1cc1b79e7..000000000
--- a/.vscode/tasks.json
+++ /dev/null
@@ -1,18 +0,0 @@
1{
2 "version": "2.0.0",
3 "tasks": [
4 {
5 "type": "pnpm",
6 "script": "dev",
7 "group": {
8 "kind": "build",
9 "isDefault": true
10 }
11 },
12 {
13 "type": "pnpm",
14 "script": "lint",
15 "group": "test"
16 }
17 ]
18}
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 05b163a61..6a88c9aa6 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -192,7 +192,7 @@
192- Fix default accent color to Ferdium gradient 192- Fix default accent color to Ferdium gradient
193- Fix reload after resume and add idle time setting 193- Fix reload after resume and add idle time setting
194- Don't replace custom icon when service updates 194- Don't replace custom icon when service updates
195- Workaroud for in-app Password Recovery 195- Workaround for in-app Password Recovery
196- Fix navigation toolbar buttons not being clickable 196- Fix navigation toolbar buttons not being clickable
197- Fix drag-n-drop not working if the service name is shown 197- Fix drag-n-drop not working if the service name is shown
198- Fix ribbon menu style on windows 198- Fix ribbon menu style on windows
@@ -225,7 +225,7 @@
225- Resurrect the electron-process-manager for Ferdium 225- Resurrect the electron-process-manager for Ferdium
226- Hide sidebar buttons toggled behind a hamburger menu 226- Hide sidebar buttons toggled behind a hamburger menu
227- Add monochromatic Service icons option with Dim adjustment 227- Add monochromatic Service icons option with Dim adjustment
228- Add new service-level option where the user can choose whether to open links in Ferdium or in the default browser. Currently implimented only for discord, skype, steamchat and zoom. 228- Add new service-level option where the user can choose whether to open links in Ferdium or in the default browser. Currently implemented only for discord, skype, steamchat and zoom.
229 229
230### Services 230### Services
231 231
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 887a72a5a..9d575b15d 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -62,8 +62,8 @@ Currently, these are the combinations of system dependencies that work for MacOS
62# Note: 'jq' is not a required system dependency; its only here to show the combined output of versions needed 62# Note: 'jq' is not a required system dependency; its only here to show the combined output of versions needed
63$ jq --null-input '[inputs.engines] | add' < ./package.json < ./recipes/package.json 63$ jq --null-input '[inputs.engines] | add' < ./package.json < ./recipes/package.json
64{ 64{
65 "node": "20.11.1", 65 "node": "20.12.2",
66 "pnpm": "8.15.5" 66 "pnpm": "8.15.7"
67} 67}
68``` 68```
69 69
diff --git a/Dockerfile b/Dockerfile
index 83baba00b..efae454d5 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,6 +1,6 @@
1# Note: Before running this file, you should have already cloned the git repo + submodules on the host machine. This is used when actively developing on your local machine, but you want to build for a different architecture 1# Note: Before running this file, you should have already cloned the git repo + submodules on the host machine. This is used when actively developing on your local machine, but you want to build for a different architecture
2 2
3FROM docker.io/library/node:20.11.1-buster AS builder 3FROM docker.io/library/node:20.12.2-buster AS builder
4 4
5ENV PATH="/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/usr/local/lib:/usr/include:/usr/share" 5ENV PATH="/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/usr/local/lib:/usr/include:/usr/share"
6 6
diff --git a/build-helpers/notarize.js b/build-helpers/notarize.js
index 32faa97b8..e3fece0b3 100644
--- a/build-helpers/notarize.js
+++ b/build-helpers/notarize.js
@@ -11,15 +11,14 @@ exports.default = async function notarizing(context) {
11 11
12 const appName = context.packager.appInfo.productFilename; 12 const appName = context.packager.appInfo.productFilename;
13 13
14 // @ts-ignore global-require 14 // eslint-disable-next-line global-require
15 const { notarize } = require('@electron/notarize'); 15 const { notarize } = require('@electron/notarize');
16 16
17 await notarize({ 17 await notarize({
18 tool: 'notarytool', 18 tool: 'notarytool',
19 appBundleId: 'org.ferdium.ferdium-app',
20 appPath: `${appOutDir}/${appName}.app`, 19 appPath: `${appOutDir}/${appName}.app`,
21 teamId: '55E9FPJ93P', 20 teamId: '55E9FPJ93P',
22 appleId: process.env.APPLEID, 21 appleId: process.env.APPLEID || '',
23 appleIdPassword: process.env.APPLEID_PASSWORD, 22 appleIdPassword: process.env.APPLEID_PASSWORD || '',
24 }); 23 });
25}; 24};
diff --git a/docs/MIGRATION.md b/docs/MIGRATION.md
index bb1ca315d..a3a02db11 100644
--- a/docs/MIGRATION.md
+++ b/docs/MIGRATION.md
@@ -12,7 +12,7 @@ The main advantage of using Ferdi with an account is that you have your configur
12 12
13## Using Ferdi without an account i.e. Accountless 13## Using Ferdi without an account i.e. Accountless
14 14
15Accountless instances have all the same functionality as account-based ones with the exception of multi-machine syncronization. If you don't intend to use this app on multiple machines with regularly changing settings and lists of services, there's no benefit to having an online account. Having a backup of your `export.ferdi-data` whenever you make changes to your setup, provides a similarly secure (albeit slower and manual alternative) to automatic syncing that doesn't rely on a server's constant availability. 15Accountless instances have all the same functionality as account-based ones with the exception of multi-machine synchronization. If you don't intend to use this app on multiple machines with regularly changing settings and lists of services, there's no benefit to having an online account. Having a backup of your `export.ferdi-data` whenever you make changes to your setup, provides a similarly secure (albeit slower and manual alternative) to automatic syncing that doesn't rely on a server's constant availability.
16 16
17## Exporting 17## Exporting
18 18
diff --git a/docs/dbus/org.ferdium.Ferdium.xml b/docs/dbus/org.ferdium.Ferdium.xml
index 0ee395328..47da8ee89 100644
--- a/docs/dbus/org.ferdium.Ferdium.xml
+++ b/docs/dbus/org.ferdium.Ferdium.xml
@@ -22,7 +22,7 @@
22 <!-- 22 <!--
23 ToggleMute: 23 ToggleMute:
24 24
25 Toggles the muted state of notifcations. 25 Toggles the muted state of notifications.
26 26
27 Use the #org.ferdium.Ferdium.Muted property to get or set the current 27 Use the #org.ferdium.Ferdium.Muted property to get or set the current
28 muted state. 28 muted state.
diff --git a/electron-builder.yml b/electron-builder.yml
index ba76bfde1..ad12c7e5a 100644
--- a/electron-builder.yml
+++ b/electron-builder.yml
@@ -70,6 +70,7 @@ mac:
70 entitlements: "./build-helpers/entitlements.mas.plist" 70 entitlements: "./build-helpers/entitlements.mas.plist"
71 entitlementsInherit: "./build-helpers/entitlements.mas.inherit.plist" 71 entitlementsInherit: "./build-helpers/entitlements.mas.inherit.plist"
72 artifactName: "${productName}-${os}-bundle-${version}-${arch}.${ext}" 72 artifactName: "${productName}-${os}-bundle-${version}-${arch}.${ext}"
73 notarize: false
73 target: 74 target:
74 - target: dmg 75 - target: dmg
75 arch: [x64, arm64] 76 arch: [x64, arm64]
diff --git a/package.json b/package.json
index b2e3fc24b..aafc4cda6 100644
--- a/package.json
+++ b/package.json
@@ -3,7 +3,7 @@
3 "productName": "Ferdium", 3 "productName": "Ferdium",
4 "desktopName": "ferdium.desktop", 4 "desktopName": "ferdium.desktop",
5 "appId": "org.ferdium.ferdium-app", 5 "appId": "org.ferdium.ferdium-app",
6 "version": "6.7.2", 6 "version": "6.7.3",
7 "description": "Messaging app for WhatsApp, Slack, Telegram, Hangouts and many many more.", 7 "description": "Messaging app for WhatsApp, Slack, Telegram, Hangouts and many many more.",
8 "author": "Ferdium Contributors <hello@ferdium.org> (https://ferdium.org/)", 8 "author": "Ferdium Contributors <hello@ferdium.org> (https://ferdium.org/)",
9 "license": "Apache-2.0", 9 "license": "Apache-2.0",
@@ -13,17 +13,17 @@
13 "repository": "https://github.com/ferdium/ferdium-app.git", 13 "repository": "https://github.com/ferdium/ferdium-app.git",
14 "private": true, 14 "private": true,
15 "engines": { 15 "engines": {
16 "node": "20.11.1", 16 "node": "20.12.2",
17 "pnpm": "8.15.5" 17 "pnpm": "8.15.7"
18 }, 18 },
19 "engine-strict": true, 19 "engine-strict": true,
20 "volta": { 20 "volta": {
21 "node": "20.11.1", 21 "node": "20.12.2",
22 "pnpm": "8.15.5" 22 "pnpm": "8.15.7"
23 }, 23 },
24 "packageManager": "pnpm@8.15.5", 24 "packageManager": "pnpm@8.15.7",
25 "scripts": { 25 "scripts": {
26 "prepare": "is-ci || husky install", 26 "prepare": "is-ci || husky",
27 "start": "electron ./build", 27 "start": "electron ./build",
28 "start:local": "cross-env USE_LOCAL_API=1 pnpm start", 28 "start:local": "cross-env USE_LOCAL_API=1 pnpm start",
29 "start:live": "cross-env USE_LIVE_API=1 pnpm start", 29 "start:live": "cross-env USE_LIVE_API=1 pnpm start",
@@ -32,7 +32,7 @@
32 "test": "jest", 32 "test": "jest",
33 "test:watch": "jest --watch", 33 "test:watch": "jest --watch",
34 "typecheck": "tsc --noEmit", 34 "typecheck": "tsc --noEmit",
35 "lint": "eslint \"{src,test,scripts}/**/*.{js,jsx,mjs,ts,tsx}\" --quiet", 35 "lint": "eslint . --max-warnings 0",
36 "lint:fix": "pnpm lint --cache --fix", 36 "lint:fix": "pnpm lint --cache --fix",
37 "biome:check": "pnpm biome check .", 37 "biome:check": "pnpm biome check .",
38 "biome:check:fix": "pnpm biome:check --apply-unsafe", 38 "biome:check:fix": "pnpm biome:check --apply-unsafe",
@@ -49,10 +49,8 @@
49 "add-crowdin-contributors": "ts-node scripts/add-crowdin-contributors.ts", 49 "add-crowdin-contributors": "ts-node scripts/add-crowdin-contributors.ts",
50 "debug": "cross-env-shell DEBUG_COLORS=1 DEBUG=Ferdium:* pnpm start:all-dev" 50 "debug": "cross-env-shell DEBUG_COLORS=1 DEBUG=Ferdium:* pnpm start:all-dev"
51 }, 51 },
52 "keywords": [],
53 "dependencies": { 52 "dependencies": {
54 "@adonisjs/ace": "5.1.0", 53 "@adonisjs/ace": "5.1.0",
55 "@adonisjs/auth": "3.2.0",
56 "@adonisjs/bodyparser": "2.3.0", 54 "@adonisjs/bodyparser": "2.3.0",
57 "@adonisjs/cors": "1.0.7", 55 "@adonisjs/cors": "1.0.7",
58 "@adonisjs/drive": "1.0.4", 56 "@adonisjs/drive": "1.0.4",
@@ -60,25 +58,24 @@
60 "@adonisjs/framework": "5.0.13", 58 "@adonisjs/framework": "5.0.13",
61 "@adonisjs/ignitor": "2.0.8", 59 "@adonisjs/ignitor": "2.0.8",
62 "@adonisjs/lucid": "6.3.0", 60 "@adonisjs/lucid": "6.3.0",
63 "@adonisjs/session": "1.1.0",
64 "@adonisjs/shield": "1.1.0", 61 "@adonisjs/shield": "1.1.0",
65 "@adonisjs/validator": "5.1.0", 62 "@adonisjs/validator": "5.1.0",
66 "@electron/remote": "2.1.2", 63 "@electron/remote": "2.1.2",
67 "@emotion/react": "11.11.4", 64 "@emotion/react": "11.11.4",
68 "@emotion/styled": "11.11.0", 65 "@emotion/styled": "11.11.5",
69 "@krisdages/electron-process-manager": "3.0.0",
70 "@mdi/js": "7.4.47", 66 "@mdi/js": "7.4.47",
71 "@mdi/react": "1.6.1", 67 "@mdi/react": "1.6.1",
72 "@mui/icons-material": "5.15.14", 68 "@mui/icons-material": "5.15.15",
73 "@mui/material": "5.15.14", 69 "@mui/material": "5.15.15",
74 "@octokit/core": "5.1.0", 70 "@octokit/core": "5.1.0",
75 "@sentry/electron": "4.14.0", 71 "@sentry/electron": "4.14.0",
76 "@superwf/mobx-react-router": "7.4.0", 72 "@superwf/mobx-react-router": "7.4.0",
73 "@syed_umair/electron-process-manager": "1.1.0",
77 "auto-launch": "5.0.6", 74 "auto-launch": "5.0.6",
78 "classnames": "2.5.1", 75 "classnames": "2.5.1",
79 "color": "4.2.3", 76 "color": "4.2.3",
80 "csstype": "3.1.3", 77 "csstype": "3.1.3",
81 "darkreader": "4.9.80", 78 "darkreader": "4.9.83",
82 "dbus-next": "0.10.2", 79 "dbus-next": "0.10.2",
83 "debug": "4.3.4", 80 "debug": "4.3.4",
84 "electron-dl": "3.5.2", 81 "electron-dl": "3.5.2",
@@ -96,9 +93,9 @@
96 "languagedetect": "2.0.0", 93 "languagedetect": "2.0.0",
97 "lodash": "4.17.21", 94 "lodash": "4.17.21",
98 "macos-version": "5.2.1", 95 "macos-version": "5.2.1",
99 "markdown-to-jsx": "7.4.4", 96 "markdown-to-jsx": "7.4.6",
100 "minimist": "1.2.8", 97 "minimist": "1.2.8",
101 "mobx": "6.12.0", 98 "mobx": "6.12.3",
102 "mobx-localstorage": "1.2.0", 99 "mobx-localstorage": "1.2.0",
103 "mobx-react": "7.6.0", 100 "mobx-react": "7.6.0",
104 "mobx-react-form": "6.9.4", 101 "mobx-react-form": "6.9.4",
@@ -115,7 +112,7 @@
115 "react-dom": "18.2.0", 112 "react-dom": "18.2.0",
116 "react-dropzone": "14.2.3", 113 "react-dropzone": "14.2.3",
117 "react-electron-web-view": "2.0.1", 114 "react-electron-web-view": "2.0.1",
118 "react-intl": "6.6.2", 115 "react-intl": "6.6.5",
119 "react-jss": "10.10.0", 116 "react-jss": "10.10.0",
120 "react-loader-spinner": "5.4.5", 117 "react-loader-spinner": "5.4.5",
121 "react-modal": "3.16.1", 118 "react-modal": "3.16.1",
@@ -128,7 +125,7 @@
128 "sanitize-filename": "1.6.3", 125 "sanitize-filename": "1.6.3",
129 "semver": "7.6.0", 126 "semver": "7.6.0",
130 "sqlite3": "5.1.6", 127 "sqlite3": "5.1.6",
131 "tar": "6.2.0", 128 "tar": "6.2.1",
132 "tslib": "2.6.2", 129 "tslib": "2.6.2",
133 "useragent-generator": "1.1.1-amkt-22079-finish.0", 130 "useragent-generator": "1.1.1-amkt-22079-finish.0",
134 "uuid": "9.0.1", 131 "uuid": "9.0.1",
@@ -138,8 +135,9 @@
138 "@biomejs/biome": "1.6.1", 135 "@biomejs/biome": "1.6.1",
139 "@commitlint/cli": "19.2.1", 136 "@commitlint/cli": "19.2.1",
140 "@commitlint/config-conventional": "19.1.0", 137 "@commitlint/config-conventional": "19.1.0",
141 "@electron/notarize": "1.2.3", 138 "@electron/notarize": "2.3.0",
142 "@formatjs/cli": "6.2.7", 139 "@eslint-react/eslint-plugin": "1.5.8",
140 "@formatjs/cli": "6.2.9",
143 "@jest/types": "29.6.3", 141 "@jest/types": "29.6.3",
144 "@types/auto-launch": "5.0.5", 142 "@types/auto-launch": "5.0.5",
145 "@types/color": "3.0.6", 143 "@types/color": "3.0.6",
@@ -148,24 +146,24 @@
148 "@types/lodash": "4.17.0", 146 "@types/lodash": "4.17.0",
149 "@types/minimist": "1.2.5", 147 "@types/minimist": "1.2.5",
150 "@types/ms": "0.7.34", 148 "@types/ms": "0.7.34",
151 "@types/node": "20.11.30", 149 "@types/node": "20.12.7",
152 "@types/prop-types": "15.7.11", 150 "@types/prop-types": "15.7.12",
153 "@types/react": "18.2.67", 151 "@types/react": "18.2.77",
154 "@types/react-color": "3.0.12", 152 "@types/react-color": "3.0.12",
155 "@types/react-dom": "18.2.22", 153 "@types/react-dom": "18.2.25",
156 "@types/react-transition-group": "4.4.10", 154 "@types/react-transition-group": "4.4.10",
157 "@types/route-parser": "0.1.7", 155 "@types/route-parser": "0.1.7",
158 "@types/semver": "7.5.8", 156 "@types/semver": "7.5.8",
159 "@types/tar": "6.1.11", 157 "@types/tar": "6.1.12",
160 "@types/uuid": "9.0.8", 158 "@types/uuid": "9.0.8",
161 "@types/validator": "13.11.9", 159 "@types/validator": "13.11.9",
162 "@typescript-eslint/eslint-plugin": "7.3.1", 160 "@typescript-eslint/eslint-plugin": "7.6.0",
163 "@typescript-eslint/parser": "7.3.1", 161 "@typescript-eslint/parser": "7.6.0",
164 "all-contributors-cli": "6.26.1", 162 "all-contributors-cli": "6.26.1",
165 "chalk": "5.3.0", 163 "chalk": "5.3.0",
166 "concurrently": "8.2.2", 164 "concurrently": "8.2.2",
167 "cross-env": "7.0.3", 165 "cross-env": "7.0.3",
168 "electron": "29.1.5", 166 "electron": "30.0.1",
169 "electron-builder": "24.13.3", 167 "electron-builder": "24.13.3",
170 "esbuild": "0.16.17", 168 "esbuild": "0.16.17",
171 "esbuild-plugin-copy": "2.1.1", 169 "esbuild-plugin-copy": "2.1.1",
@@ -182,7 +180,7 @@
182 "eslint-plugin-react": "7.34.1", 180 "eslint-plugin-react": "7.34.1",
183 "eslint-plugin-react-hooks": "4.6.0", 181 "eslint-plugin-react-hooks": "4.6.0",
184 "eslint-plugin-sonar": "0.13.2", 182 "eslint-plugin-sonar": "0.13.2",
185 "eslint-plugin-unicorn": "51.0.1", 183 "eslint-plugin-unicorn": "52.0.0",
186 "gulp-livereload": "4.0.2", 184 "gulp-livereload": "4.0.2",
187 "husky": "9.0.11", 185 "husky": "9.0.11",
188 "is-ci": "3.0.1", 186 "is-ci": "3.0.1",
@@ -190,10 +188,10 @@
190 "prettier": "3.2.5", 188 "prettier": "3.2.5",
191 "preval-build-info": "1.0.3", 189 "preval-build-info": "1.0.3",
192 "rimraf": "5.0.5", 190 "rimraf": "5.0.5",
193 "simple-git": "3.23.0", 191 "simple-git": "3.24.0",
194 "tiny-glob": "0.2.9", 192 "tiny-glob": "0.2.9",
195 "ts-node": "10.9.2", 193 "ts-node": "10.9.2",
196 "typescript": "5.4.3", 194 "typescript": "5.4.5",
197 "wait-on": "7.2.0" 195 "wait-on": "7.2.0"
198 }, 196 },
199 "pnpm": { 197 "pnpm": {
@@ -204,6 +202,7 @@
204 "allowedVersions": { 202 "allowedVersions": {
205 "@typescript-eslint/parser": "^7.0.0", 203 "@typescript-eslint/parser": "^7.0.0",
206 "esbuild-sass-plugin>esbuild": "^0.16.7", 204 "esbuild-sass-plugin>esbuild": "^0.16.7",
205 "eslint": "^8.0.0",
207 "react-electron-web-view>react": "^18.0.0", 206 "react-electron-web-view>react": "^18.0.0",
208 "react-electron-web-view>react-dom": "^18.0.0", 207 "react-electron-web-view>react-dom": "^18.0.0",
209 "react-sortable-hoc>react": "^18.0.0", 208 "react-sortable-hoc>react": "^18.0.0",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index dd1c51f73..341b0905c 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -11,9 +11,6 @@ dependencies:
11 '@adonisjs/ace': 11 '@adonisjs/ace':
12 specifier: 5.1.0 12 specifier: 5.1.0
13 version: 5.1.0 13 version: 5.1.0
14 '@adonisjs/auth':
15 specifier: 3.2.0
16 version: 3.2.0
17 '@adonisjs/bodyparser': 14 '@adonisjs/bodyparser':
18 specifier: 2.3.0 15 specifier: 2.3.0
19 version: 2.3.0 16 version: 2.3.0
@@ -35,9 +32,6 @@ dependencies:
35 '@adonisjs/lucid': 32 '@adonisjs/lucid':
36 specifier: 6.3.0 33 specifier: 6.3.0
37 version: 6.3.0(sqlite3@5.1.6) 34 version: 6.3.0(sqlite3@5.1.6)
38 '@adonisjs/session':
39 specifier: 1.1.0
40 version: 1.1.0
41 '@adonisjs/shield': 35 '@adonisjs/shield':
42 specifier: 1.1.0 36 specifier: 1.1.0
43 version: 1.1.0 37 version: 1.1.0
@@ -46,16 +40,13 @@ dependencies:
46 version: 5.1.0 40 version: 5.1.0
47 '@electron/remote': 41 '@electron/remote':
48 specifier: 2.1.2 42 specifier: 2.1.2
49 version: 2.1.2(electron@29.1.5) 43 version: 2.1.2(electron@30.0.1)
50 '@emotion/react': 44 '@emotion/react':
51 specifier: 11.11.4 45 specifier: 11.11.4
52 version: 11.11.4(@types/react@18.2.67)(react@18.2.0) 46 version: 11.11.4(@types/react@18.2.77)(react@18.2.0)
53 '@emotion/styled': 47 '@emotion/styled':
54 specifier: 11.11.0 48 specifier: 11.11.5
55 version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.67)(react@18.2.0) 49 version: 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.77)(react@18.2.0)
56 '@krisdages/electron-process-manager':
57 specifier: 3.0.0
58 version: 3.0.0(@electron/remote@2.1.2)(electron@29.1.5)(rxjs@7.8.1)
59 '@mdi/js': 50 '@mdi/js':
60 specifier: 7.4.47 51 specifier: 7.4.47
61 version: 7.4.47 52 version: 7.4.47
@@ -63,11 +54,11 @@ dependencies:
63 specifier: 1.6.1 54 specifier: 1.6.1
64 version: 1.6.1 55 version: 1.6.1
65 '@mui/icons-material': 56 '@mui/icons-material':
66 specifier: 5.15.14 57 specifier: 5.15.15
67 version: 5.15.14(@mui/material@5.15.14)(@types/react@18.2.67)(react@18.2.0) 58 version: 5.15.15(@mui/material@5.15.15)(@types/react@18.2.77)(react@18.2.0)
68 '@mui/material': 59 '@mui/material':
69 specifier: 5.15.14 60 specifier: 5.15.15
70 version: 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0) 61 version: 5.15.15(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.77)(react-dom@18.2.0)(react@18.2.0)
71 '@octokit/core': 62 '@octokit/core':
72 specifier: 5.1.0 63 specifier: 5.1.0
73 version: 5.1.0 64 version: 5.1.0
@@ -76,7 +67,10 @@ dependencies:
76 version: 4.14.0 67 version: 4.14.0
77 '@superwf/mobx-react-router': 68 '@superwf/mobx-react-router':
78 specifier: 7.4.0 69 specifier: 7.4.0
79 version: 7.4.0(history@5.3.0)(mobx@6.12.0)(path-to-regexp@6.2.1) 70 version: 7.4.0(history@5.3.0)(mobx@6.12.3)(path-to-regexp@6.2.2)
71 '@syed_umair/electron-process-manager':
72 specifier: 1.1.0
73 version: 1.1.0(electron@30.0.1)
80 auto-launch: 74 auto-launch:
81 specifier: 5.0.6 75 specifier: 5.0.6
82 version: 5.0.6 76 version: 5.0.6
@@ -90,8 +84,8 @@ dependencies:
90 specifier: 3.1.3 84 specifier: 3.1.3
91 version: 3.1.3 85 version: 3.1.3
92 darkreader: 86 darkreader:
93 specifier: 4.9.80 87 specifier: 4.9.83
94 version: 4.9.80 88 version: 4.9.83
95 dbus-next: 89 dbus-next:
96 specifier: 0.10.2 90 specifier: 0.10.2
97 version: 0.10.2 91 version: 0.10.2
@@ -144,23 +138,23 @@ dependencies:
144 specifier: 5.2.1 138 specifier: 5.2.1
145 version: 5.2.1 139 version: 5.2.1
146 markdown-to-jsx: 140 markdown-to-jsx:
147 specifier: 7.4.4 141 specifier: 7.4.6
148 version: 7.4.4(react@18.2.0) 142 version: 7.4.6(react@18.2.0)
149 minimist: 143 minimist:
150 specifier: 1.2.8 144 specifier: 1.2.8
151 version: 1.2.8 145 version: 1.2.8
152 mobx: 146 mobx:
153 specifier: 6.12.0 147 specifier: 6.12.3
154 version: 6.12.0 148 version: 6.12.3
155 mobx-localstorage: 149 mobx-localstorage:
156 specifier: 1.2.0 150 specifier: 1.2.0
157 version: 1.2.0(mobx@6.12.0) 151 version: 1.2.0(mobx@6.12.3)
158 mobx-react: 152 mobx-react:
159 specifier: 7.6.0 153 specifier: 7.6.0
160 version: 7.6.0(mobx@6.12.0)(react-dom@18.2.0)(react@18.2.0) 154 version: 7.6.0(mobx@6.12.3)(react-dom@18.2.0)(react@18.2.0)
161 mobx-react-form: 155 mobx-react-form:
162 specifier: 6.9.4 156 specifier: 6.9.4
163 version: 6.9.4(mobx@6.12.0) 157 version: 6.9.4(mobx@6.12.3)
164 moment: 158 moment:
165 specifier: 2.30.1 159 specifier: 2.30.1
166 version: 2.30.1 160 version: 2.30.1
@@ -201,14 +195,14 @@ dependencies:
201 specifier: 2.0.1 195 specifier: 2.0.1
202 version: 2.0.1(react-dom@18.2.0)(react@18.2.0) 196 version: 2.0.1(react-dom@18.2.0)(react@18.2.0)
203 react-intl: 197 react-intl:
204 specifier: 6.6.2 198 specifier: 6.6.5
205 version: 6.6.2(react@18.2.0)(typescript@5.4.3) 199 version: 6.6.5(react@18.2.0)(typescript@5.4.5)
206 react-jss: 200 react-jss:
207 specifier: 10.10.0 201 specifier: 10.10.0
208 version: 10.10.0(react@18.2.0) 202 version: 10.10.0(react@18.2.0)
209 react-loader-spinner: 203 react-loader-spinner:
210 specifier: 5.4.5 204 specifier: 5.4.5
211 version: 5.4.5(@babel/core@7.24.3)(react-dom@18.2.0)(react@18.2.0) 205 version: 5.4.5(@babel/core@7.24.4)(react-dom@18.2.0)(react@18.2.0)
212 react-modal: 206 react-modal:
213 specifier: 3.16.1 207 specifier: 3.16.1
214 version: 3.16.1(react-dom@18.2.0)(react@18.2.0) 208 version: 3.16.1(react-dom@18.2.0)(react@18.2.0)
@@ -240,8 +234,8 @@ dependencies:
240 specifier: 5.1.6 234 specifier: 5.1.6
241 version: 5.1.6 235 version: 5.1.6
242 tar: 236 tar:
243 specifier: 6.2.0 237 specifier: 6.2.1
244 version: 6.2.0 238 version: 6.2.1
245 tslib: 239 tslib:
246 specifier: 2.6.2 240 specifier: 2.6.2
247 version: 2.6.2 241 version: 2.6.2
@@ -269,16 +263,19 @@ devDependencies:
269 version: 1.6.1 263 version: 1.6.1
270 '@commitlint/cli': 264 '@commitlint/cli':
271 specifier: 19.2.1 265 specifier: 19.2.1
272 version: 19.2.1(@types/node@20.11.30)(typescript@5.4.3) 266 version: 19.2.1(@types/node@20.12.7)(typescript@5.4.5)
273 '@commitlint/config-conventional': 267 '@commitlint/config-conventional':
274 specifier: 19.1.0 268 specifier: 19.1.0
275 version: 19.1.0 269 version: 19.1.0
276 '@electron/notarize': 270 '@electron/notarize':
277 specifier: 1.2.3 271 specifier: 2.3.0
278 version: 1.2.3 272 version: 2.3.0
273 '@eslint-react/eslint-plugin':
274 specifier: 1.5.8
275 version: 1.5.8(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5)
279 '@formatjs/cli': 276 '@formatjs/cli':
280 specifier: 6.2.7 277 specifier: 6.2.9
281 version: 6.2.7 278 version: 6.2.9
282 '@jest/types': 279 '@jest/types':
283 specifier: 29.6.3 280 specifier: 29.6.3
284 version: 29.6.3 281 version: 29.6.3
@@ -304,20 +301,20 @@ devDependencies:
304 specifier: 0.7.34 301 specifier: 0.7.34
305 version: 0.7.34 302 version: 0.7.34
306 '@types/node': 303 '@types/node':
307 specifier: 20.11.30 304 specifier: 20.12.7
308 version: 20.11.30 305 version: 20.12.7
309 '@types/prop-types': 306 '@types/prop-types':
310 specifier: 15.7.11 307 specifier: 15.7.12
311 version: 15.7.11 308 version: 15.7.12
312 '@types/react': 309 '@types/react':
313 specifier: 18.2.67 310 specifier: 18.2.77
314 version: 18.2.67 311 version: 18.2.77
315 '@types/react-color': 312 '@types/react-color':
316 specifier: 3.0.12 313 specifier: 3.0.12
317 version: 3.0.12 314 version: 3.0.12
318 '@types/react-dom': 315 '@types/react-dom':
319 specifier: 18.2.22 316 specifier: 18.2.25
320 version: 18.2.22 317 version: 18.2.25
321 '@types/react-transition-group': 318 '@types/react-transition-group':
322 specifier: 4.4.10 319 specifier: 4.4.10
323 version: 4.4.10 320 version: 4.4.10
@@ -328,8 +325,8 @@ devDependencies:
328 specifier: 7.5.8 325 specifier: 7.5.8
329 version: 7.5.8 326 version: 7.5.8
330 '@types/tar': 327 '@types/tar':
331 specifier: 6.1.11 328 specifier: 6.1.12
332 version: 6.1.11 329 version: 6.1.12
333 '@types/uuid': 330 '@types/uuid':
334 specifier: 9.0.8 331 specifier: 9.0.8
335 version: 9.0.8 332 version: 9.0.8
@@ -337,11 +334,11 @@ devDependencies:
337 specifier: 13.11.9 334 specifier: 13.11.9
338 version: 13.11.9 335 version: 13.11.9
339 '@typescript-eslint/eslint-plugin': 336 '@typescript-eslint/eslint-plugin':
340 specifier: 7.3.1 337 specifier: 7.6.0
341 version: 7.3.1(@typescript-eslint/parser@7.3.1)(eslint@8.57.0)(typescript@5.4.3) 338 version: 7.6.0(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5)
342 '@typescript-eslint/parser': 339 '@typescript-eslint/parser':
343 specifier: 7.3.1 340 specifier: 7.6.0
344 version: 7.3.1(eslint@8.57.0)(typescript@5.4.3) 341 version: 7.6.0(eslint@8.57.0)(typescript@5.4.5)
345 all-contributors-cli: 342 all-contributors-cli:
346 specifier: 6.26.1 343 specifier: 6.26.1
347 version: 6.26.1 344 version: 6.26.1
@@ -355,8 +352,8 @@ devDependencies:
355 specifier: 7.0.3 352 specifier: 7.0.3
356 version: 7.0.3 353 version: 7.0.3
357 electron: 354 electron:
358 specifier: 29.1.5 355 specifier: 30.0.1
359 version: 29.1.5 356 version: 30.0.1
360 electron-builder: 357 electron-builder:
361 specifier: 24.13.3 358 specifier: 24.13.3
362 version: 24.13.3(electron-builder-squirrel-windows@24.13.3) 359 version: 24.13.3(electron-builder-squirrel-windows@24.13.3)
@@ -380,16 +377,16 @@ devDependencies:
380 version: 19.0.4(eslint-plugin-import@2.29.1)(eslint-plugin-jsx-a11y@6.8.0)(eslint-plugin-react-hooks@4.6.0)(eslint-plugin-react@7.34.1)(eslint@8.57.0) 377 version: 19.0.4(eslint-plugin-import@2.29.1)(eslint-plugin-jsx-a11y@6.8.0)(eslint-plugin-react-hooks@4.6.0)(eslint-plugin-react@7.34.1)(eslint@8.57.0)
381 eslint-config-airbnb-typescript: 378 eslint-config-airbnb-typescript:
382 specifier: 18.0.0 379 specifier: 18.0.0
383 version: 18.0.0(@typescript-eslint/eslint-plugin@7.3.1)(@typescript-eslint/parser@7.3.1)(eslint-plugin-import@2.29.1)(eslint@8.57.0) 380 version: 18.0.0(@typescript-eslint/eslint-plugin@7.6.0)(@typescript-eslint/parser@7.6.0)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
384 eslint-config-prettier: 381 eslint-config-prettier:
385 specifier: 9.1.0 382 specifier: 9.1.0
386 version: 9.1.0(eslint@8.57.0) 383 version: 9.1.0(eslint@8.57.0)
387 eslint-plugin-import: 384 eslint-plugin-import:
388 specifier: 2.29.1 385 specifier: 2.29.1
389 version: 2.29.1(@typescript-eslint/parser@7.3.1)(eslint@8.57.0) 386 version: 2.29.1(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)
390 eslint-plugin-jest: 387 eslint-plugin-jest:
391 specifier: 27.9.0 388 specifier: 27.9.0
392 version: 27.9.0(@typescript-eslint/eslint-plugin@7.3.1)(eslint@8.57.0)(jest@29.7.0)(typescript@5.4.3) 389 version: 27.9.0(@typescript-eslint/eslint-plugin@7.6.0)(eslint@8.57.0)(jest@29.7.0)(typescript@5.4.5)
393 eslint-plugin-jsx-a11y: 390 eslint-plugin-jsx-a11y:
394 specifier: 6.8.0 391 specifier: 6.8.0
395 version: 6.8.0(eslint@8.57.0) 392 version: 6.8.0(eslint@8.57.0)
@@ -404,10 +401,10 @@ devDependencies:
404 version: 4.6.0(eslint@8.57.0) 401 version: 4.6.0(eslint@8.57.0)
405 eslint-plugin-sonar: 402 eslint-plugin-sonar:
406 specifier: 0.13.2 403 specifier: 0.13.2
407 version: 0.13.2(@babel/core@7.24.3)(@typescript-eslint/parser@7.3.1)(eslint@8.57.0)(typescript@5.4.3) 404 version: 0.13.2(@babel/core@7.24.4)(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5)
408 eslint-plugin-unicorn: 405 eslint-plugin-unicorn:
409 specifier: 51.0.1 406 specifier: 52.0.0
410 version: 51.0.1(eslint@8.57.0) 407 version: 52.0.0(eslint@8.57.0)
411 gulp-livereload: 408 gulp-livereload:
412 specifier: 4.0.2 409 specifier: 4.0.2
413 version: 4.0.2 410 version: 4.0.2
@@ -419,7 +416,7 @@ devDependencies:
419 version: 3.0.1 416 version: 3.0.1
420 jest: 417 jest:
421 specifier: 29.7.0 418 specifier: 29.7.0
422 version: 29.7.0(@types/node@20.11.30)(ts-node@10.9.2) 419 version: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
423 prettier: 420 prettier:
424 specifier: 3.2.5 421 specifier: 3.2.5
425 version: 3.2.5 422 version: 3.2.5
@@ -430,17 +427,17 @@ devDependencies:
430 specifier: 5.0.5 427 specifier: 5.0.5
431 version: 5.0.5 428 version: 5.0.5
432 simple-git: 429 simple-git:
433 specifier: 3.23.0 430 specifier: 3.24.0
434 version: 3.23.0 431 version: 3.24.0
435 tiny-glob: 432 tiny-glob:
436 specifier: 0.2.9 433 specifier: 0.2.9
437 version: 0.2.9 434 version: 0.2.9
438 ts-node: 435 ts-node:
439 specifier: 10.9.2 436 specifier: 10.9.2
440 version: 10.9.2(@types/node@20.11.30)(typescript@5.4.3) 437 version: 10.9.2(@types/node@20.12.7)(typescript@5.4.5)
441 typescript: 438 typescript:
442 specifier: 5.4.3 439 specifier: 5.4.5
443 version: 5.4.3 440 version: 5.4.5
444 wait-on: 441 wait-on:
445 specifier: 7.2.0 442 specifier: 7.2.0
446 version: 7.2.0(debug@4.3.4) 443 version: 7.2.0(debug@4.3.4)
@@ -478,21 +475,6 @@ packages:
478 - supports-color 475 - supports-color
479 dev: false 476 dev: false
480 477
481 /@adonisjs/auth@3.2.0:
482 resolution: {integrity: sha512-Bawnpg8BaPrVmG1QhX3egw2SfYOtrOcMpn2q/ck58J9A4WUJAk1LZWXIeu2AF0jrASZuXlmdy4HIMFpl8NKVZg==}
483 dependencies:
484 '@adonisjs/generic-exceptions': 2.0.1
485 basic-auth: 2.0.1
486 debug: 4.3.4(supports-color@5.5.0)
487 jsonwebtoken: 8.5.1
488 lodash: 4.17.21
489 ms: 2.1.3
490 resetable: 1.0.3
491 uuid: 8.3.2
492 transitivePeerDependencies:
493 - supports-color
494 dev: false
495
496 /@adonisjs/bodyparser@2.3.0: 478 /@adonisjs/bodyparser@2.3.0:
497 resolution: {integrity: sha512-VIC8klEZsz2Zpw1YvqDhtcZS4qut01Mj/fOJCIjZDYIh5yIYgo535aW5NlCQ2bAPs4nzokNIKJUKcnkTAOTZQQ==} 479 resolution: {integrity: sha512-VIC8klEZsz2Zpw1YvqDhtcZS4qut01Mj/fOJCIjZDYIh5yIYgo535aW5NlCQ2bAPs4nzokNIKJUKcnkTAOTZQQ==}
498 dependencies: 480 dependencies:
@@ -618,21 +600,6 @@ packages:
618 - supports-color 600 - supports-color
619 dev: false 601 dev: false
620 602
621 /@adonisjs/session@1.1.0:
622 resolution: {integrity: sha512-phbTPevvmVcWgq1BXj5VM7MR5+MzXlQgl6Dc0zr8jfftYBscxoiirSaISJYWCwNO6HrPQon54a1/gx9Jr6ebGQ==}
623 dependencies:
624 '@adonisjs/generic-exceptions': 2.0.1
625 bson: 1.1.6
626 debug: 4.3.4(supports-color@5.5.0)
627 fs-extra: 9.1.0
628 lodash: 4.17.21
629 ms: 2.1.3
630 type-of-is: 3.5.1
631 uuid: 8.3.2
632 transitivePeerDependencies:
633 - supports-color
634 dev: false
635
636 /@adonisjs/shield@1.1.0: 603 /@adonisjs/shield@1.1.0:
637 resolution: {integrity: sha512-3qVwnLTeTk5w0Agi7xuQKj7r7QeA1yFXy0QfpjTIYIzQVy9QTk3DgIK5ZvGtr/2/ESHVosyOrCGr+kQDjtcBhA==} 604 resolution: {integrity: sha512-3qVwnLTeTk5w0Agi7xuQKj7r7QeA1yFXy0QfpjTIYIzQVy9QTk3DgIK5ZvGtr/2/ESHVosyOrCGr+kQDjtcBhA==}
638 dependencies: 605 dependencies:
@@ -686,8 +653,8 @@ packages:
686 engines: {node: '>=6.9.0'} 653 engines: {node: '>=6.9.0'}
687 dev: true 654 dev: true
688 655
689 /@babel/compat-data@7.24.1: 656 /@babel/compat-data@7.24.4:
690 resolution: {integrity: sha512-Pc65opHDliVpRHuKfzI+gSA4zcgr65O4cl64fFJIWEEh8JoHIHh0Oez1Eo8Arz8zq/JhgKodQaxEwUPRtZylVA==} 657 resolution: {integrity: sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==}
691 engines: {node: '>=6.9.0'} 658 engines: {node: '>=6.9.0'}
692 659
693 /@babel/core@7.23.5: 660 /@babel/core@7.23.5:
@@ -713,17 +680,17 @@ packages:
713 - supports-color 680 - supports-color
714 dev: true 681 dev: true
715 682
716 /@babel/core@7.24.3: 683 /@babel/core@7.24.4:
717 resolution: {integrity: sha512-5FcvN1JHw2sHJChotgx8Ek0lyuh4kCKelgMTTqhYJJtloNvUfpAFMeNQUtdlIaktwrSV9LtCdqwk48wL2wBacQ==} 684 resolution: {integrity: sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==}
718 engines: {node: '>=6.9.0'} 685 engines: {node: '>=6.9.0'}
719 dependencies: 686 dependencies:
720 '@ampproject/remapping': 2.3.0 687 '@ampproject/remapping': 2.3.0
721 '@babel/code-frame': 7.24.2 688 '@babel/code-frame': 7.24.2
722 '@babel/generator': 7.24.1 689 '@babel/generator': 7.24.4
723 '@babel/helper-compilation-targets': 7.23.6 690 '@babel/helper-compilation-targets': 7.23.6
724 '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.3) 691 '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.4)
725 '@babel/helpers': 7.24.1 692 '@babel/helpers': 7.24.4
726 '@babel/parser': 7.24.1 693 '@babel/parser': 7.24.4
727 '@babel/template': 7.24.0 694 '@babel/template': 7.24.0
728 '@babel/traverse': 7.24.1 695 '@babel/traverse': 7.24.1
729 '@babel/types': 7.24.0 696 '@babel/types': 7.24.0
@@ -735,14 +702,14 @@ packages:
735 transitivePeerDependencies: 702 transitivePeerDependencies:
736 - supports-color 703 - supports-color
737 704
738 /@babel/eslint-parser@7.23.10(@babel/core@7.24.3)(eslint@8.57.0): 705 /@babel/eslint-parser@7.23.10(@babel/core@7.24.4)(eslint@8.57.0):
739 resolution: {integrity: sha512-3wSYDPZVnhseRnxRJH6ZVTNknBz76AEnyC+AYYhasjP3Yy23qz0ERR7Fcd2SHmYuSFJ2kY9gaaDd3vyqU09eSw==} 706 resolution: {integrity: sha512-3wSYDPZVnhseRnxRJH6ZVTNknBz76AEnyC+AYYhasjP3Yy23qz0ERR7Fcd2SHmYuSFJ2kY9gaaDd3vyqU09eSw==}
740 engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} 707 engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0}
741 peerDependencies: 708 peerDependencies:
742 '@babel/core': ^7.11.0 709 '@babel/core': ^7.11.0
743 eslint: ^7.5.0 || ^8.0.0 710 eslint: ^7.5.0 || ^8.0.0
744 dependencies: 711 dependencies:
745 '@babel/core': 7.24.3 712 '@babel/core': 7.24.4
746 '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 713 '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1
747 eslint: 8.57.0 714 eslint: 8.57.0
748 eslint-visitor-keys: 2.1.0 715 eslint-visitor-keys: 2.1.0
@@ -758,8 +725,8 @@ packages:
758 '@jridgewell/trace-mapping': 0.3.20 725 '@jridgewell/trace-mapping': 0.3.20
759 jsesc: 2.5.2 726 jsesc: 2.5.2
760 727
761 /@babel/generator@7.24.1: 728 /@babel/generator@7.24.4:
762 resolution: {integrity: sha512-DfCRfZsBcrPEHUfuBMgbJ1Ut01Y/itOs+hY2nFLgqsqXd52/iSiVq5TITtUasIUgm+IIKdY2/1I7auiQOEeC9A==} 729 resolution: {integrity: sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==}
763 engines: {node: '>=6.9.0'} 730 engines: {node: '>=6.9.0'}
764 dependencies: 731 dependencies:
765 '@babel/types': 7.24.0 732 '@babel/types': 7.24.0
@@ -789,7 +756,7 @@ packages:
789 resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} 756 resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==}
790 engines: {node: '>=6.9.0'} 757 engines: {node: '>=6.9.0'}
791 dependencies: 758 dependencies:
792 '@babel/compat-data': 7.24.1 759 '@babel/compat-data': 7.24.4
793 '@babel/helper-validator-option': 7.23.5 760 '@babel/helper-validator-option': 7.23.5
794 browserslist: 4.23.0 761 browserslist: 4.23.0
795 lru-cache: 5.1.1 762 lru-cache: 5.1.1
@@ -832,13 +799,13 @@ packages:
832 '@babel/helper-validator-identifier': 7.22.20 799 '@babel/helper-validator-identifier': 7.22.20
833 dev: true 800 dev: true
834 801
835 /@babel/helper-module-transforms@7.23.3(@babel/core@7.24.3): 802 /@babel/helper-module-transforms@7.23.3(@babel/core@7.24.4):
836 resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} 803 resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==}
837 engines: {node: '>=6.9.0'} 804 engines: {node: '>=6.9.0'}
838 peerDependencies: 805 peerDependencies:
839 '@babel/core': ^7.0.0 806 '@babel/core': ^7.0.0
840 dependencies: 807 dependencies:
841 '@babel/core': 7.24.3 808 '@babel/core': 7.24.4
842 '@babel/helper-environment-visitor': 7.22.20 809 '@babel/helper-environment-visitor': 7.22.20
843 '@babel/helper-module-imports': 7.22.15 810 '@babel/helper-module-imports': 7.22.15
844 '@babel/helper-simple-access': 7.22.5 811 '@babel/helper-simple-access': 7.22.5
@@ -893,8 +860,8 @@ packages:
893 - supports-color 860 - supports-color
894 dev: true 861 dev: true
895 862
896 /@babel/helpers@7.24.1: 863 /@babel/helpers@7.24.4:
897 resolution: {integrity: sha512-BpU09QqEe6ZCHuIHFphEFgvNSrubve1FtyMton26ekZ85gRGi6LrTF7zArARp2YvyFxloeiRmtSCq5sjh1WqIg==} 864 resolution: {integrity: sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==}
898 engines: {node: '>=6.9.0'} 865 engines: {node: '>=6.9.0'}
899 dependencies: 866 dependencies:
900 '@babel/template': 7.24.0 867 '@babel/template': 7.24.0
@@ -927,8 +894,8 @@ packages:
927 dependencies: 894 dependencies:
928 '@babel/types': 7.23.5 895 '@babel/types': 7.23.5
929 896
930 /@babel/parser@7.24.1: 897 /@babel/parser@7.24.4:
931 resolution: {integrity: sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg==} 898 resolution: {integrity: sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==}
932 engines: {node: '>=6.0.0'} 899 engines: {node: '>=6.0.0'}
933 hasBin: true 900 hasBin: true
934 dependencies: 901 dependencies:
@@ -989,13 +956,13 @@ packages:
989 '@babel/helper-plugin-utils': 7.22.5 956 '@babel/helper-plugin-utils': 7.22.5
990 dev: true 957 dev: true
991 958
992 /@babel/plugin-syntax-jsx@7.22.5(@babel/core@7.24.3): 959 /@babel/plugin-syntax-jsx@7.22.5(@babel/core@7.24.4):
993 resolution: {integrity: sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==} 960 resolution: {integrity: sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==}
994 engines: {node: '>=6.9.0'} 961 engines: {node: '>=6.9.0'}
995 peerDependencies: 962 peerDependencies:
996 '@babel/core': ^7.0.0-0 963 '@babel/core': ^7.0.0-0
997 dependencies: 964 dependencies:
998 '@babel/core': 7.24.3 965 '@babel/core': 7.24.4
999 '@babel/helper-plugin-utils': 7.22.5 966 '@babel/helper-plugin-utils': 7.22.5
1000 dev: false 967 dev: false
1001 968
@@ -1077,13 +1044,20 @@ packages:
1077 resolution: {integrity: sha512-NdUTHcPe4C99WxPub+K9l9tK5/lV4UXIoaHSYgzco9BCyjKAAwzdBI+wWtYqHt7LJdbo74ZjRPJgzVweq1sz0w==} 1044 resolution: {integrity: sha512-NdUTHcPe4C99WxPub+K9l9tK5/lV4UXIoaHSYgzco9BCyjKAAwzdBI+wWtYqHt7LJdbo74ZjRPJgzVweq1sz0w==}
1078 engines: {node: '>=6.9.0'} 1045 engines: {node: '>=6.9.0'}
1079 dependencies: 1046 dependencies:
1080 regenerator-runtime: 0.14.0 1047 regenerator-runtime: 0.14.1
1081 1048
1082 /@babel/runtime@7.23.9: 1049 /@babel/runtime@7.23.9:
1083 resolution: {integrity: sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==} 1050 resolution: {integrity: sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==}
1084 engines: {node: '>=6.9.0'} 1051 engines: {node: '>=6.9.0'}
1085 dependencies: 1052 dependencies:
1086 regenerator-runtime: 0.14.0 1053 regenerator-runtime: 0.14.0
1054 dev: false
1055
1056 /@babel/runtime@7.24.4:
1057 resolution: {integrity: sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA==}
1058 engines: {node: '>=6.9.0'}
1059 dependencies:
1060 regenerator-runtime: 0.14.1
1087 1061
1088 /@babel/template@7.22.15: 1062 /@babel/template@7.22.15:
1089 resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} 1063 resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==}
@@ -1098,7 +1072,7 @@ packages:
1098 engines: {node: '>=6.9.0'} 1072 engines: {node: '>=6.9.0'}
1099 dependencies: 1073 dependencies:
1100 '@babel/code-frame': 7.24.2 1074 '@babel/code-frame': 7.24.2
1101 '@babel/parser': 7.24.1 1075 '@babel/parser': 7.24.4
1102 '@babel/types': 7.24.0 1076 '@babel/types': 7.24.0
1103 1077
1104 /@babel/traverse@7.23.5(supports-color@5.5.0): 1078 /@babel/traverse@7.23.5(supports-color@5.5.0):
@@ -1123,12 +1097,12 @@ packages:
1123 engines: {node: '>=6.9.0'} 1097 engines: {node: '>=6.9.0'}
1124 dependencies: 1098 dependencies:
1125 '@babel/code-frame': 7.24.2 1099 '@babel/code-frame': 7.24.2
1126 '@babel/generator': 7.24.1 1100 '@babel/generator': 7.24.4
1127 '@babel/helper-environment-visitor': 7.22.20 1101 '@babel/helper-environment-visitor': 7.22.20
1128 '@babel/helper-function-name': 7.23.0 1102 '@babel/helper-function-name': 7.23.0
1129 '@babel/helper-hoist-variables': 7.22.5 1103 '@babel/helper-hoist-variables': 7.22.5
1130 '@babel/helper-split-export-declaration': 7.22.6 1104 '@babel/helper-split-export-declaration': 7.22.6
1131 '@babel/parser': 7.24.1 1105 '@babel/parser': 7.24.4
1132 '@babel/types': 7.24.0 1106 '@babel/types': 7.24.0
1133 debug: 4.3.4(supports-color@5.5.0) 1107 debug: 4.3.4(supports-color@5.5.0)
1134 globals: 11.12.0 1108 globals: 11.12.0
@@ -1248,14 +1222,14 @@ packages:
1248 engines: {node: '>=0.1.90'} 1222 engines: {node: '>=0.1.90'}
1249 dev: false 1223 dev: false
1250 1224
1251 /@commitlint/cli@19.2.1(@types/node@20.11.30)(typescript@5.4.3): 1225 /@commitlint/cli@19.2.1(@types/node@20.12.7)(typescript@5.4.5):
1252 resolution: {integrity: sha512-cbkYUJsLqRomccNxvoJTyv5yn0bSy05BBizVyIcLACkRbVUqYorC351Diw/XFSWC/GtpwiwT2eOvQgFZa374bg==} 1226 resolution: {integrity: sha512-cbkYUJsLqRomccNxvoJTyv5yn0bSy05BBizVyIcLACkRbVUqYorC351Diw/XFSWC/GtpwiwT2eOvQgFZa374bg==}
1253 engines: {node: '>=v18'} 1227 engines: {node: '>=v18'}
1254 hasBin: true 1228 hasBin: true
1255 dependencies: 1229 dependencies:
1256 '@commitlint/format': 19.0.3 1230 '@commitlint/format': 19.0.3
1257 '@commitlint/lint': 19.1.0 1231 '@commitlint/lint': 19.1.0
1258 '@commitlint/load': 19.2.0(@types/node@20.11.30)(typescript@5.4.3) 1232 '@commitlint/load': 19.2.0(@types/node@20.12.7)(typescript@5.4.5)
1259 '@commitlint/read': 19.2.1 1233 '@commitlint/read': 19.2.1
1260 '@commitlint/types': 19.0.3 1234 '@commitlint/types': 19.0.3
1261 execa: 8.0.1 1235 execa: 8.0.1
@@ -1324,7 +1298,7 @@ packages:
1324 '@commitlint/types': 19.0.3 1298 '@commitlint/types': 19.0.3
1325 dev: true 1299 dev: true
1326 1300
1327 /@commitlint/load@19.2.0(@types/node@20.11.30)(typescript@5.4.3): 1301 /@commitlint/load@19.2.0(@types/node@20.12.7)(typescript@5.4.5):
1328 resolution: {integrity: sha512-XvxxLJTKqZojCxaBQ7u92qQLFMMZc4+p9qrIq/9kJDy8DOrEa7P1yx7Tjdc2u2JxIalqT4KOGraVgCE7eCYJyQ==} 1302 resolution: {integrity: sha512-XvxxLJTKqZojCxaBQ7u92qQLFMMZc4+p9qrIq/9kJDy8DOrEa7P1yx7Tjdc2u2JxIalqT4KOGraVgCE7eCYJyQ==}
1329 engines: {node: '>=v18'} 1303 engines: {node: '>=v18'}
1330 dependencies: 1304 dependencies:
@@ -1333,8 +1307,8 @@ packages:
1333 '@commitlint/resolve-extends': 19.1.0 1307 '@commitlint/resolve-extends': 19.1.0
1334 '@commitlint/types': 19.0.3 1308 '@commitlint/types': 19.0.3
1335 chalk: 5.3.0 1309 chalk: 5.3.0
1336 cosmiconfig: 9.0.0(typescript@5.4.3) 1310 cosmiconfig: 9.0.0(typescript@5.4.5)
1337 cosmiconfig-typescript-loader: 5.0.0(@types/node@20.11.30)(cosmiconfig@9.0.0)(typescript@5.4.3) 1311 cosmiconfig-typescript-loader: 5.0.0(@types/node@20.12.7)(cosmiconfig@9.0.0)(typescript@5.4.5)
1338 lodash.isplainobject: 4.0.6 1312 lodash.isplainobject: 4.0.6
1339 lodash.merge: 4.6.2 1313 lodash.merge: 4.6.2
1340 lodash.uniq: 4.5.0 1314 lodash.uniq: 4.5.0
@@ -1460,18 +1434,19 @@ packages:
1460 transitivePeerDependencies: 1434 transitivePeerDependencies:
1461 - supports-color 1435 - supports-color
1462 1436
1463 /@electron/notarize@1.2.3: 1437 /@electron/notarize@2.2.1:
1464 resolution: {integrity: sha512-9oRzT56rKh5bspk3KpAVF8lPKHYQrBnRwcgiOeR0hdilVEQmszDaAu0IPCPrwwzJN0ugNs0rRboTreHMt/6mBQ==} 1438 resolution: {integrity: sha512-aL+bFMIkpR0cmmj5Zgy0LMKEpgy43/hw5zadEArgmAMWWlKc5buwFvFT9G/o/YJkvXAJm5q3iuTuLaiaXW39sg==}
1465 engines: {node: '>= 10.0.0'} 1439 engines: {node: '>= 10.0.0'}
1466 dependencies: 1440 dependencies:
1467 debug: 4.3.4(supports-color@5.5.0) 1441 debug: 4.3.4(supports-color@5.5.0)
1468 fs-extra: 9.1.0 1442 fs-extra: 9.1.0
1443 promise-retry: 2.0.1
1469 transitivePeerDependencies: 1444 transitivePeerDependencies:
1470 - supports-color 1445 - supports-color
1471 dev: true 1446 dev: true
1472 1447
1473 /@electron/notarize@2.2.1: 1448 /@electron/notarize@2.3.0:
1474 resolution: {integrity: sha512-aL+bFMIkpR0cmmj5Zgy0LMKEpgy43/hw5zadEArgmAMWWlKc5buwFvFT9G/o/YJkvXAJm5q3iuTuLaiaXW39sg==} 1449 resolution: {integrity: sha512-EiTBU0BwE7HZZjAG1fFWQaiQpCuPrVGn7jPss1kUjD6eTTdXXd29RiZqEqkgN7xqt/Pgn4g3I7Saqovanrfj3w==}
1475 engines: {node: '>= 10.0.0'} 1450 engines: {node: '>= 10.0.0'}
1476 dependencies: 1451 dependencies:
1477 debug: 4.3.4(supports-color@5.5.0) 1452 debug: 4.3.4(supports-color@5.5.0)
@@ -1496,12 +1471,12 @@ packages:
1496 - supports-color 1471 - supports-color
1497 dev: true 1472 dev: true
1498 1473
1499 /@electron/remote@2.1.2(electron@29.1.5): 1474 /@electron/remote@2.1.2(electron@30.0.1):
1500 resolution: {integrity: sha512-EPwNx+nhdrTBxyCqXt/pftoQg/ybtWDW3DUWHafejvnB1ZGGfMpv6e15D8KeempocjXe78T7WreyGGb3mlZxdA==} 1475 resolution: {integrity: sha512-EPwNx+nhdrTBxyCqXt/pftoQg/ybtWDW3DUWHafejvnB1ZGGfMpv6e15D8KeempocjXe78T7WreyGGb3mlZxdA==}
1501 peerDependencies: 1476 peerDependencies:
1502 electron: '>= 13.0.0' 1477 electron: '>= 13.0.0'
1503 dependencies: 1478 dependencies:
1504 electron: 29.1.5 1479 electron: 30.0.1
1505 dev: false 1480 dev: false
1506 1481
1507 /@electron/universal@1.5.1: 1482 /@electron/universal@1.5.1:
@@ -1561,6 +1536,12 @@ packages:
1561 '@emotion/memoize': 0.8.1 1536 '@emotion/memoize': 0.8.1
1562 dev: false 1537 dev: false
1563 1538
1539 /@emotion/is-prop-valid@1.2.2:
1540 resolution: {integrity: sha512-uNsoYd37AFmaCdXlg6EYD1KaPOaRWRByMCYzbKUX4+hhMfrxdVSelShywL4JVaAeM/eHUOSprYBQls+/neX3pw==}
1541 dependencies:
1542 '@emotion/memoize': 0.8.1
1543 dev: false
1544
1564 /@emotion/memoize@0.7.1: 1545 /@emotion/memoize@0.7.1:
1565 resolution: {integrity: sha512-Qv4LTqO11jepd5Qmlp3M1YEjBumoTHcHFdgPTQ+sFlIL5myi/7xu/POwP7IRu6odBdmLXdtIs1D6TuW6kbwbbg==} 1546 resolution: {integrity: sha512-Qv4LTqO11jepd5Qmlp3M1YEjBumoTHcHFdgPTQ+sFlIL5myi/7xu/POwP7IRu6odBdmLXdtIs1D6TuW6kbwbbg==}
1566 dev: false 1547 dev: false
@@ -1569,7 +1550,7 @@ packages:
1569 resolution: {integrity: sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==} 1550 resolution: {integrity: sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==}
1570 dev: false 1551 dev: false
1571 1552
1572 /@emotion/react@11.11.4(@types/react@18.2.67)(react@18.2.0): 1553 /@emotion/react@11.11.4(@types/react@18.2.77)(react@18.2.0):
1573 resolution: {integrity: sha512-t8AjMlF0gHpvvxk5mAtCqR4vmxiGHCeJBaQO6gncUSdklELOgtwjerNY2yuJNfwnc6vi16U/+uMF+afIawJ9iw==} 1554 resolution: {integrity: sha512-t8AjMlF0gHpvvxk5mAtCqR4vmxiGHCeJBaQO6gncUSdklELOgtwjerNY2yuJNfwnc6vi16U/+uMF+afIawJ9iw==}
1574 peerDependencies: 1555 peerDependencies:
1575 '@types/react': '*' 1556 '@types/react': '*'
@@ -1578,14 +1559,14 @@ packages:
1578 '@types/react': 1559 '@types/react':
1579 optional: true 1560 optional: true
1580 dependencies: 1561 dependencies:
1581 '@babel/runtime': 7.23.9 1562 '@babel/runtime': 7.24.4
1582 '@emotion/babel-plugin': 11.11.0 1563 '@emotion/babel-plugin': 11.11.0
1583 '@emotion/cache': 11.11.0 1564 '@emotion/cache': 11.11.0
1584 '@emotion/serialize': 1.1.3 1565 '@emotion/serialize': 1.1.3
1585 '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@18.2.0) 1566 '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@18.2.0)
1586 '@emotion/utils': 1.2.1 1567 '@emotion/utils': 1.2.1
1587 '@emotion/weak-memoize': 0.3.1 1568 '@emotion/weak-memoize': 0.3.1
1588 '@types/react': 18.2.67 1569 '@types/react': 18.2.77
1589 hoist-non-react-statics: 3.3.2 1570 hoist-non-react-statics: 3.3.2
1590 react: 18.2.0 1571 react: 18.2.0
1591 dev: false 1572 dev: false
@@ -1610,12 +1591,22 @@ packages:
1610 csstype: 3.1.3 1591 csstype: 3.1.3
1611 dev: false 1592 dev: false
1612 1593
1594 /@emotion/serialize@1.1.4:
1595 resolution: {integrity: sha512-RIN04MBT8g+FnDwgvIUi8czvr1LU1alUMI05LekWB5DGyTm8cCBMCRpq3GqaiyEDRptEXOyXnvZ58GZYu4kBxQ==}
1596 dependencies:
1597 '@emotion/hash': 0.9.1
1598 '@emotion/memoize': 0.8.1
1599 '@emotion/unitless': 0.8.1
1600 '@emotion/utils': 1.2.1
1601 csstype: 3.1.3
1602 dev: false
1603
1613 /@emotion/sheet@1.2.2: 1604 /@emotion/sheet@1.2.2:
1614 resolution: {integrity: sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==} 1605 resolution: {integrity: sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==}
1615 dev: false 1606 dev: false
1616 1607
1617 /@emotion/styled@11.11.0(@emotion/react@11.11.4)(@types/react@18.2.67)(react@18.2.0): 1608 /@emotion/styled@11.11.5(@emotion/react@11.11.4)(@types/react@18.2.77)(react@18.2.0):
1618 resolution: {integrity: sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==} 1609 resolution: {integrity: sha512-/ZjjnaNKvuMPxcIiUkf/9SHoG4Q196DRl1w82hQ3WCsjo1IUR8uaGWrC6a87CrYAW0Kb/pK7hk8BnLgLRi9KoQ==}
1619 peerDependencies: 1610 peerDependencies:
1620 '@emotion/react': ^11.0.0-rc.0 1611 '@emotion/react': ^11.0.0-rc.0
1621 '@types/react': '*' 1612 '@types/react': '*'
@@ -1624,14 +1615,14 @@ packages:
1624 '@types/react': 1615 '@types/react':
1625 optional: true 1616 optional: true
1626 dependencies: 1617 dependencies:
1627 '@babel/runtime': 7.23.5 1618 '@babel/runtime': 7.23.9
1628 '@emotion/babel-plugin': 11.11.0 1619 '@emotion/babel-plugin': 11.11.0
1629 '@emotion/is-prop-valid': 1.2.1 1620 '@emotion/is-prop-valid': 1.2.2
1630 '@emotion/react': 11.11.4(@types/react@18.2.67)(react@18.2.0) 1621 '@emotion/react': 11.11.4(@types/react@18.2.77)(react@18.2.0)
1631 '@emotion/serialize': 1.1.2 1622 '@emotion/serialize': 1.1.4
1632 '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@18.2.0) 1623 '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@18.2.0)
1633 '@emotion/utils': 1.2.1 1624 '@emotion/utils': 1.2.1
1634 '@types/react': 18.2.67 1625 '@types/react': 18.2.77
1635 react: 18.2.0 1626 react: 18.2.0
1636 dev: false 1627 dev: false
1637 1628
@@ -1865,7 +1856,7 @@ packages:
1865 resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} 1856 resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
1866 engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1857 engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
1867 peerDependencies: 1858 peerDependencies:
1868 eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 1859 eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 || ^8.0.0
1869 dependencies: 1860 dependencies:
1870 eslint: 8.57.0 1861 eslint: 8.57.0
1871 eslint-visitor-keys: 3.4.3 1862 eslint-visitor-keys: 3.4.3
@@ -1876,6 +1867,128 @@ packages:
1876 engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 1867 engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
1877 dev: true 1868 dev: true
1878 1869
1870 /@eslint-react/ast@1.5.8(eslint@8.57.0)(typescript@5.4.5):
1871 resolution: {integrity: sha512-bfhjJYByn/oql2H3xqlUwqsCrCsu7ItYTuSl7vU2VWuUaGTNm2DVLljje5prUq7z26mQ/96YzW16OFoSmGovjw==}
1872 dependencies:
1873 '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
1874 '@eslint-react/tools': 1.5.8
1875 '@eslint-react/types': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
1876 '@typescript-eslint/scope-manager': 7.6.0
1877 '@typescript-eslint/types': 7.6.0
1878 '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
1879 string-ts: 2.1.0
1880 transitivePeerDependencies:
1881 - eslint
1882 - supports-color
1883 - typescript
1884 dev: true
1885
1886 /@eslint-react/core@1.5.8(eslint@8.57.0)(typescript@5.4.5):
1887 resolution: {integrity: sha512-iJoWoD5+dPS0sZvyVhkeQi2K5tI/fviRavsXFAR4GDhiviI8tZvKQg8mj/OlHDPUlvA+Bz8P0d0dxEXM3nyolQ==}
1888 dependencies:
1889 '@eslint-react/ast': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
1890 '@eslint-react/jsx': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
1891 '@eslint-react/shared': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
1892 '@eslint-react/tools': 1.5.8
1893 '@eslint-react/types': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
1894 '@typescript-eslint/scope-manager': 7.6.0
1895 '@typescript-eslint/type-utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
1896 '@typescript-eslint/types': 7.6.0
1897 '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
1898 short-unique-id: 5.0.3
1899 transitivePeerDependencies:
1900 - eslint
1901 - supports-color
1902 - typescript
1903 dev: true
1904
1905 /@eslint-react/eslint-plugin@1.5.8(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5):
1906 resolution: {integrity: sha512-SQgGcd5DKK0zjOn6O1QztTolzRzw+VHP9qMWwlRkonoxau4T9U5RwsbBzl2Aojk9v3CtPOHtr1AQ8ZOUEi6d4A==}
1907 engines: {bun: '>=1.0.15', node: '>=18.18.0'}
1908 peerDependencies:
1909 '@typescript-eslint/parser': '>=7.5.0 || ^7.0.0'
1910 eslint: '>=9.0.0 || ^8.0.0'
1911 typescript: '>=5.3.3'
1912 dependencies:
1913 '@eslint-react/shared': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
1914 '@eslint-react/tools': 1.5.8
1915 '@eslint-react/types': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
1916 '@typescript-eslint/parser': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
1917 '@typescript-eslint/scope-manager': 7.6.0
1918 '@typescript-eslint/type-utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
1919 '@typescript-eslint/types': 7.6.0
1920 '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
1921 eslint: 8.57.0
1922 eslint-plugin-react-core: 1.5.8(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5)
1923 eslint-plugin-react-dom: 1.5.8(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5)
1924 eslint-plugin-react-hooks-extra: 1.5.8(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5)
1925 eslint-plugin-react-naming-convention: 1.5.8(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5)
1926 typescript: 5.4.5
1927 transitivePeerDependencies:
1928 - supports-color
1929 dev: true
1930
1931 /@eslint-react/jsx@1.5.8(eslint@8.57.0)(typescript@5.4.5):
1932 resolution: {integrity: sha512-zQd239hspAJ9I9ejxKh7MuSW27HNVsXWiRHzit3azXRX95jwGZeeMRQeh9tS9290ANr8n2vBbSTePbl1FkuPKg==}
1933 dependencies:
1934 '@eslint-react/ast': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
1935 '@eslint-react/shared': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
1936 '@eslint-react/tools': 1.5.8
1937 '@eslint-react/types': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
1938 '@eslint-react/var': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
1939 '@typescript-eslint/scope-manager': 7.6.0
1940 '@typescript-eslint/types': 7.6.0
1941 '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
1942 micro-memoize: 4.1.2
1943 transitivePeerDependencies:
1944 - eslint
1945 - supports-color
1946 - typescript
1947 dev: true
1948
1949 /@eslint-react/shared@1.5.8(eslint@8.57.0)(typescript@5.4.5):
1950 resolution: {integrity: sha512-XE6tp39NACI9pFD1x5LRXE2NfcQoRDVsOEqzYfS1XQczTHann2ySzrPgTPJE4KlKT156uRxg8DqPkcpsioQIEw==}
1951 dependencies:
1952 '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
1953 deepmerge-ts: 5.1.0
1954 transitivePeerDependencies:
1955 - eslint
1956 - supports-color
1957 - typescript
1958 dev: true
1959
1960 /@eslint-react/tools@1.5.8:
1961 resolution: {integrity: sha512-Ye4HqrB6l8JomMRE7A8DUZsNNK5P28dDBXE69kR9UjWQqXU1xA2E5Pw7g9dn7CSNkPSi6IIm/1cFAPzPgMUqrQ==}
1962 dev: true
1963
1964 /@eslint-react/types@1.5.8(eslint@8.57.0)(typescript@5.4.5):
1965 resolution: {integrity: sha512-u1Y1G8+IRiNNZ+REMMkVvHAp+I3ruJoKRybHsM1DCoyT3xZZ85wNPwB5R+oBurEXG7vRi3A9CsUGKU7v+PCbfw==}
1966 dependencies:
1967 '@eslint-react/tools': 1.5.8
1968 '@typescript-eslint/types': 7.6.0
1969 '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
1970 transitivePeerDependencies:
1971 - eslint
1972 - supports-color
1973 - typescript
1974 dev: true
1975
1976 /@eslint-react/var@1.5.8(eslint@8.57.0)(typescript@5.4.5):
1977 resolution: {integrity: sha512-RhQfA2oTGTX7d8aauU8pIqq+tAxv5bSl/8LxtvNx6UXQxQAuk/2Oss7ICdgm6GBMUGpbaBATTgIo3wOytLwqCw==}
1978 dependencies:
1979 '@eslint-react/ast': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
1980 '@eslint-react/tools': 1.5.8
1981 '@eslint-react/types': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
1982 '@typescript-eslint/scope-manager': 7.6.0
1983 '@typescript-eslint/types': 7.6.0
1984 '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
1985 string-ts: 2.1.0
1986 transitivePeerDependencies:
1987 - eslint
1988 - supports-color
1989 - typescript
1990 dev: true
1991
1879 /@eslint/eslintrc@2.1.4: 1992 /@eslint/eslintrc@2.1.4:
1880 resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} 1993 resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==}
1881 engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1994 engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -1926,12 +2039,12 @@ packages:
1926 resolution: {integrity: sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==} 2039 resolution: {integrity: sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==}
1927 dev: false 2040 dev: false
1928 2041
1929 /@formatjs/cli@6.2.7: 2042 /@formatjs/cli@6.2.9:
1930 resolution: {integrity: sha512-F8sPvXsrjOXKAXpbZo3HObq3TZWNa91cimRukmy/54GRo83V0q2ybj9YXtBfcGlnFhzRFXq8ukkTtHgYeRMJaQ==} 2043 resolution: {integrity: sha512-YH09kY6oufPdNDIwva/rC7wyg/ptJG6hRZ768eJEafiBR5R1VV1pKFmx106FV5WT7nzBm8Xf4Td+8+Mu+DtQsg==}
1931 engines: {node: '>= 16'} 2044 engines: {node: '>= 16'}
1932 hasBin: true 2045 hasBin: true
1933 peerDependencies: 2046 peerDependencies:
1934 vue: ^3.3.4 2047 vue: ^3.4.0
1935 peerDependenciesMeta: 2048 peerDependenciesMeta:
1936 vue: 2049 vue:
1937 optional: true 2050 optional: true
@@ -1987,8 +2100,8 @@ packages:
1987 tslib: 2.6.2 2100 tslib: 2.6.2
1988 dev: false 2101 dev: false
1989 2102
1990 /@formatjs/intl@2.10.0(typescript@5.4.3): 2103 /@formatjs/intl@2.10.1(typescript@5.4.5):
1991 resolution: {integrity: sha512-X3xT9guVkKDS86EKV80lS0KxoazUglkJTGZO66sKY7otgl0VeStPA8B3u8UkKT47PexVV98fUzjpkchYmbe9nw==} 2104 resolution: {integrity: sha512-dsLG15U7xDi8yzKf4hcAWSsCaez3XrjTO2oaRHPyHtXLm1aEzYbDw6bClo/HMHu+iwS5GbDqT3DV+hYP2ylScg==}
1992 peerDependencies: 2105 peerDependencies:
1993 typescript: ^4.7 || 5 2106 typescript: ^4.7 || 5
1994 peerDependenciesMeta: 2107 peerDependenciesMeta:
@@ -2002,7 +2115,7 @@ packages:
2002 '@formatjs/intl-listformat': 7.5.5 2115 '@formatjs/intl-listformat': 7.5.5
2003 intl-messageformat: 10.5.11 2116 intl-messageformat: 10.5.11
2004 tslib: 2.6.2 2117 tslib: 2.6.2
2005 typescript: 5.4.3 2118 typescript: 5.4.5
2006 dev: false 2119 dev: false
2007 2120
2008 /@gar/promisify@1.1.3: 2121 /@gar/promisify@1.1.3:
@@ -2083,7 +2196,7 @@ packages:
2083 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 2196 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
2084 dependencies: 2197 dependencies:
2085 '@jest/types': 29.6.3 2198 '@jest/types': 29.6.3
2086 '@types/node': 20.11.30 2199 '@types/node': 20.12.7
2087 chalk: 4.1.2 2200 chalk: 4.1.2
2088 jest-message-util: 29.7.0 2201 jest-message-util: 29.7.0
2089 jest-util: 29.7.0 2202 jest-util: 29.7.0
@@ -2104,14 +2217,14 @@ packages:
2104 '@jest/test-result': 29.7.0 2217 '@jest/test-result': 29.7.0
2105 '@jest/transform': 29.7.0 2218 '@jest/transform': 29.7.0
2106 '@jest/types': 29.6.3 2219 '@jest/types': 29.6.3
2107 '@types/node': 20.11.30 2220 '@types/node': 20.12.7
2108 ansi-escapes: 4.3.2 2221 ansi-escapes: 4.3.2
2109 chalk: 4.1.2 2222 chalk: 4.1.2
2110 ci-info: 3.8.0 2223 ci-info: 3.8.0
2111 exit: 0.1.2 2224 exit: 0.1.2
2112 graceful-fs: 4.2.11 2225 graceful-fs: 4.2.11
2113 jest-changed-files: 29.7.0 2226 jest-changed-files: 29.7.0
2114 jest-config: 29.7.0(@types/node@20.11.30)(ts-node@10.9.2) 2227 jest-config: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
2115 jest-haste-map: 29.7.0 2228 jest-haste-map: 29.7.0
2116 jest-message-util: 29.7.0 2229 jest-message-util: 29.7.0
2117 jest-regex-util: 29.6.3 2230 jest-regex-util: 29.6.3
@@ -2139,7 +2252,7 @@ packages:
2139 dependencies: 2252 dependencies:
2140 '@jest/fake-timers': 29.7.0 2253 '@jest/fake-timers': 29.7.0
2141 '@jest/types': 29.6.3 2254 '@jest/types': 29.6.3
2142 '@types/node': 20.11.30 2255 '@types/node': 20.12.7
2143 jest-mock: 29.7.0 2256 jest-mock: 29.7.0
2144 dev: true 2257 dev: true
2145 2258
@@ -2166,7 +2279,7 @@ packages:
2166 dependencies: 2279 dependencies:
2167 '@jest/types': 29.6.3 2280 '@jest/types': 29.6.3
2168 '@sinonjs/fake-timers': 10.2.0 2281 '@sinonjs/fake-timers': 10.2.0
2169 '@types/node': 20.11.30 2282 '@types/node': 20.12.7
2170 jest-message-util: 29.7.0 2283 jest-message-util: 29.7.0
2171 jest-mock: 29.7.0 2284 jest-mock: 29.7.0
2172 jest-util: 29.7.0 2285 jest-util: 29.7.0
@@ -2199,7 +2312,7 @@ packages:
2199 '@jest/transform': 29.7.0 2312 '@jest/transform': 29.7.0
2200 '@jest/types': 29.6.3 2313 '@jest/types': 29.6.3
2201 '@jridgewell/trace-mapping': 0.3.20 2314 '@jridgewell/trace-mapping': 0.3.20
2202 '@types/node': 20.11.30 2315 '@types/node': 20.12.7
2203 chalk: 4.1.2 2316 chalk: 4.1.2
2204 collect-v8-coverage: 1.0.1 2317 collect-v8-coverage: 1.0.1
2205 exit: 0.1.2 2318 exit: 0.1.2
@@ -2287,7 +2400,7 @@ packages:
2287 '@jest/schemas': 29.6.3 2400 '@jest/schemas': 29.6.3
2288 '@types/istanbul-lib-coverage': 2.0.4 2401 '@types/istanbul-lib-coverage': 2.0.4
2289 '@types/istanbul-reports': 3.0.1 2402 '@types/istanbul-reports': 3.0.1
2290 '@types/node': 20.11.30 2403 '@types/node': 20.12.7
2291 '@types/yargs': 17.0.24 2404 '@types/yargs': 17.0.24
2292 chalk: 4.1.2 2405 chalk: 4.1.2
2293 dev: true 2406 dev: true
@@ -2346,30 +2459,6 @@ packages:
2346 '@jridgewell/sourcemap-codec': 1.4.15 2459 '@jridgewell/sourcemap-codec': 1.4.15
2347 dev: true 2460 dev: true
2348 2461
2349 /@krisdages/electron-process-manager@3.0.0(@electron/remote@2.1.2)(electron@29.1.5)(rxjs@7.8.1):
2350 resolution: {integrity: sha512-Gs8McOVC6BVdfP4SeF+l5nx85eFooarm37K5mxs1PESI59a7oLwRf5Yd2tsZ6Ye14bCG0eTJGDv3yPuixBg3OQ==}
2351 peerDependencies:
2352 '@electron/remote': '>= 1.2.0'
2353 electron: '>= 10'
2354 rxjs: '>= 7'
2355 dependencies:
2356 '@electron/remote': 2.1.2(electron@29.1.5)
2357 electron: 29.1.5
2358 electron-process-reporter: /@krisdages/electron-process-reporter@2.0.0-rxjs7-1.4.0(rxjs@7.8.1)
2359 rxjs: 7.8.1
2360 dev: false
2361
2362 /@krisdages/electron-process-reporter@2.0.0-rxjs7-1.4.0(rxjs@7.8.1):
2363 resolution: {integrity: sha512-xcHTmzgMuKsdcP3X61FZ3XAw/5vc3LFgbumKKnswmV0P9k810MMBBeVt5GS9sTSrFju0NYGSBDjn3/X/I2UN/A==}
2364 peerDependencies:
2365 rxjs: '>= 7'
2366 dependencies:
2367 memoizee: 0.4.15
2368 pidtree: 0.3.1
2369 pidusage: 2.0.16
2370 rxjs: 7.8.1
2371 dev: false
2372
2373 /@kwsites/file-exists@1.1.1: 2462 /@kwsites/file-exists@1.1.1:
2374 resolution: {integrity: sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==} 2463 resolution: {integrity: sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==}
2375 dependencies: 2464 dependencies:
@@ -2413,7 +2502,7 @@ packages:
2413 npmlog: 5.0.1 2502 npmlog: 5.0.1
2414 rimraf: 3.0.2 2503 rimraf: 3.0.2
2415 semver: 7.6.0 2504 semver: 7.6.0
2416 tar: 6.2.0 2505 tar: 6.2.1
2417 transitivePeerDependencies: 2506 transitivePeerDependencies:
2418 - encoding 2507 - encoding
2419 - supports-color 2508 - supports-color
@@ -2429,7 +2518,7 @@ packages:
2429 prop-types: 15.8.1 2518 prop-types: 15.8.1
2430 dev: false 2519 dev: false
2431 2520
2432 /@mui/base@5.0.0-beta.40(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0): 2521 /@mui/base@5.0.0-beta.40(@types/react@18.2.77)(react-dom@18.2.0)(react@18.2.0):
2433 resolution: {integrity: sha512-I/lGHztkCzvwlXpjD2+SNmvNQvB4227xBXhISPjEaJUXGImOQ9f3D2Yj/T3KasSI/h0MLWy74X0J6clhPmsRbQ==} 2522 resolution: {integrity: sha512-I/lGHztkCzvwlXpjD2+SNmvNQvB4227xBXhISPjEaJUXGImOQ9f3D2Yj/T3KasSI/h0MLWy74X0J6clhPmsRbQ==}
2434 engines: {node: '>=12.0.0'} 2523 engines: {node: '>=12.0.0'}
2435 peerDependencies: 2524 peerDependencies:
@@ -2442,22 +2531,22 @@ packages:
2442 dependencies: 2531 dependencies:
2443 '@babel/runtime': 7.23.9 2532 '@babel/runtime': 7.23.9
2444 '@floating-ui/react-dom': 2.0.8(react-dom@18.2.0)(react@18.2.0) 2533 '@floating-ui/react-dom': 2.0.8(react-dom@18.2.0)(react@18.2.0)
2445 '@mui/types': 7.2.14(@types/react@18.2.67) 2534 '@mui/types': 7.2.14(@types/react@18.2.77)
2446 '@mui/utils': 5.15.14(@types/react@18.2.67)(react@18.2.0) 2535 '@mui/utils': 5.15.14(@types/react@18.2.77)(react@18.2.0)
2447 '@popperjs/core': 2.11.8 2536 '@popperjs/core': 2.11.8
2448 '@types/react': 18.2.67 2537 '@types/react': 18.2.77
2449 clsx: 2.1.0 2538 clsx: 2.1.0
2450 prop-types: 15.8.1 2539 prop-types: 15.8.1
2451 react: 18.2.0 2540 react: 18.2.0
2452 react-dom: 18.2.0(react@18.2.0) 2541 react-dom: 18.2.0(react@18.2.0)
2453 dev: false 2542 dev: false
2454 2543
2455 /@mui/core-downloads-tracker@5.15.14: 2544 /@mui/core-downloads-tracker@5.15.15:
2456 resolution: {integrity: sha512-on75VMd0XqZfaQW+9pGjSNiqW+ghc5E2ZSLRBXwcXl/C4YzjfyjrLPhrEpKnR9Uym9KXBvxrhoHfPcczYHweyA==} 2545 resolution: {integrity: sha512-aXnw29OWQ6I5A47iuWEI6qSSUfH6G/aCsW9KmW3LiFqr7uXZBK4Ks+z8G+qeIub8k0T5CMqlT2q0L+ZJTMrqpg==}
2457 dev: false 2546 dev: false
2458 2547
2459 /@mui/icons-material@5.15.14(@mui/material@5.15.14)(@types/react@18.2.67)(react@18.2.0): 2548 /@mui/icons-material@5.15.15(@mui/material@5.15.15)(@types/react@18.2.77)(react@18.2.0):
2460 resolution: {integrity: sha512-vj/51k7MdFmt+XVw94sl30SCvGx6+wJLsNYjZRgxhS6y3UtnWnypMOsm3Kmg8TN+P0dqwsjy4/fX7B1HufJIhw==} 2549 resolution: {integrity: sha512-kkeU/pe+hABcYDH6Uqy8RmIsr2S/y5bP2rp+Gat4CcRjCcVne6KudS1NrZQhUCRysrTDCAhcbcf9gt+/+pGO2g==}
2461 engines: {node: '>=12.0.0'} 2550 engines: {node: '>=12.0.0'}
2462 peerDependencies: 2551 peerDependencies:
2463 '@mui/material': ^5.0.0 2552 '@mui/material': ^5.0.0
@@ -2468,13 +2557,13 @@ packages:
2468 optional: true 2557 optional: true
2469 dependencies: 2558 dependencies:
2470 '@babel/runtime': 7.23.9 2559 '@babel/runtime': 7.23.9
2471 '@mui/material': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0) 2560 '@mui/material': 5.15.15(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.77)(react-dom@18.2.0)(react@18.2.0)
2472 '@types/react': 18.2.67 2561 '@types/react': 18.2.77
2473 react: 18.2.0 2562 react: 18.2.0
2474 dev: false 2563 dev: false
2475 2564
2476 /@mui/material@5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0): 2565 /@mui/material@5.15.15(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.77)(react-dom@18.2.0)(react@18.2.0):
2477 resolution: {integrity: sha512-kEbRw6fASdQ1SQ7LVdWR5OlWV3y7Y54ZxkLzd6LV5tmz+NpO3MJKZXSfgR0LHMP7meKsPiMm4AuzV0pXDpk/BQ==} 2566 resolution: {integrity: sha512-3zvWayJ+E1kzoIsvwyEvkTUKVKt1AjchFFns+JtluHCuvxgKcLSRJTADw37k0doaRtVAsyh8bz9Afqzv+KYrIA==}
2478 engines: {node: '>=12.0.0'} 2567 engines: {node: '>=12.0.0'}
2479 peerDependencies: 2568 peerDependencies:
2480 '@emotion/react': ^11.5.0 2569 '@emotion/react': ^11.5.0
@@ -2491,14 +2580,14 @@ packages:
2491 optional: true 2580 optional: true
2492 dependencies: 2581 dependencies:
2493 '@babel/runtime': 7.23.9 2582 '@babel/runtime': 7.23.9
2494 '@emotion/react': 11.11.4(@types/react@18.2.67)(react@18.2.0) 2583 '@emotion/react': 11.11.4(@types/react@18.2.77)(react@18.2.0)
2495 '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.67)(react@18.2.0) 2584 '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.77)(react@18.2.0)
2496 '@mui/base': 5.0.0-beta.40(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0) 2585 '@mui/base': 5.0.0-beta.40(@types/react@18.2.77)(react-dom@18.2.0)(react@18.2.0)
2497 '@mui/core-downloads-tracker': 5.15.14 2586 '@mui/core-downloads-tracker': 5.15.15
2498 '@mui/system': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react@18.2.0) 2587 '@mui/system': 5.15.15(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.77)(react@18.2.0)
2499 '@mui/types': 7.2.14(@types/react@18.2.67) 2588 '@mui/types': 7.2.14(@types/react@18.2.77)
2500 '@mui/utils': 5.15.14(@types/react@18.2.67)(react@18.2.0) 2589 '@mui/utils': 5.15.14(@types/react@18.2.77)(react@18.2.0)
2501 '@types/react': 18.2.67 2590 '@types/react': 18.2.77
2502 '@types/react-transition-group': 4.4.10 2591 '@types/react-transition-group': 4.4.10
2503 clsx: 2.1.0 2592 clsx: 2.1.0
2504 csstype: 3.1.3 2593 csstype: 3.1.3
@@ -2509,7 +2598,7 @@ packages:
2509 react-transition-group: 4.4.5(react-dom@18.2.0)(react@18.2.0) 2598 react-transition-group: 4.4.5(react-dom@18.2.0)(react@18.2.0)
2510 dev: false 2599 dev: false
2511 2600
2512 /@mui/private-theming@5.15.14(@types/react@18.2.67)(react@18.2.0): 2601 /@mui/private-theming@5.15.14(@types/react@18.2.77)(react@18.2.0):
2513 resolution: {integrity: sha512-UH0EiZckOWcxiXLX3Jbb0K7rC8mxTr9L9l6QhOZxYc4r8FHUkefltV9VDGLrzCaWh30SQiJvAEd7djX3XXY6Xw==} 2602 resolution: {integrity: sha512-UH0EiZckOWcxiXLX3Jbb0K7rC8mxTr9L9l6QhOZxYc4r8FHUkefltV9VDGLrzCaWh30SQiJvAEd7djX3XXY6Xw==}
2514 engines: {node: '>=12.0.0'} 2603 engines: {node: '>=12.0.0'}
2515 peerDependencies: 2604 peerDependencies:
@@ -2520,13 +2609,13 @@ packages:
2520 optional: true 2609 optional: true
2521 dependencies: 2610 dependencies:
2522 '@babel/runtime': 7.23.9 2611 '@babel/runtime': 7.23.9
2523 '@mui/utils': 5.15.14(@types/react@18.2.67)(react@18.2.0) 2612 '@mui/utils': 5.15.14(@types/react@18.2.77)(react@18.2.0)
2524 '@types/react': 18.2.67 2613 '@types/react': 18.2.77
2525 prop-types: 15.8.1 2614 prop-types: 15.8.1
2526 react: 18.2.0 2615 react: 18.2.0
2527 dev: false 2616 dev: false
2528 2617
2529 /@mui/styled-engine@5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(react@18.2.0): 2618 /@mui/styled-engine@5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(react@18.2.0):
2530 resolution: {integrity: sha512-RILkuVD8gY6PvjZjqnWhz8fu68dVkqhM5+jYWfB5yhlSQKg+2rHkmEwm75XIeAqI3qwOndK6zELK5H6Zxn4NHw==} 2619 resolution: {integrity: sha512-RILkuVD8gY6PvjZjqnWhz8fu68dVkqhM5+jYWfB5yhlSQKg+2rHkmEwm75XIeAqI3qwOndK6zELK5H6Zxn4NHw==}
2531 engines: {node: '>=12.0.0'} 2620 engines: {node: '>=12.0.0'}
2532 peerDependencies: 2621 peerDependencies:
@@ -2541,15 +2630,15 @@ packages:
2541 dependencies: 2630 dependencies:
2542 '@babel/runtime': 7.23.9 2631 '@babel/runtime': 7.23.9
2543 '@emotion/cache': 11.11.0 2632 '@emotion/cache': 11.11.0
2544 '@emotion/react': 11.11.4(@types/react@18.2.67)(react@18.2.0) 2633 '@emotion/react': 11.11.4(@types/react@18.2.77)(react@18.2.0)
2545 '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.67)(react@18.2.0) 2634 '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.77)(react@18.2.0)
2546 csstype: 3.1.3 2635 csstype: 3.1.3
2547 prop-types: 15.8.1 2636 prop-types: 15.8.1
2548 react: 18.2.0 2637 react: 18.2.0
2549 dev: false 2638 dev: false
2550 2639
2551 /@mui/system@5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react@18.2.0): 2640 /@mui/system@5.15.15(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(@types/react@18.2.77)(react@18.2.0):
2552 resolution: {integrity: sha512-auXLXzUaCSSOLqJXmsAaq7P96VPRXg2Rrz6OHNV7lr+kB8lobUF+/N84Vd9C4G/wvCXYPs5TYuuGBRhcGbiBGg==} 2641 resolution: {integrity: sha512-aulox6N1dnu5PABsfxVGOZffDVmlxPOVgj56HrUnJE8MCSh8lOvvkd47cebIVQQYAjpwieXQXiDPj5pwM40jTQ==}
2553 engines: {node: '>=12.0.0'} 2642 engines: {node: '>=12.0.0'}
2554 peerDependencies: 2643 peerDependencies:
2555 '@emotion/react': ^11.5.0 2644 '@emotion/react': ^11.5.0
@@ -2565,20 +2654,20 @@ packages:
2565 optional: true 2654 optional: true
2566 dependencies: 2655 dependencies:
2567 '@babel/runtime': 7.23.9 2656 '@babel/runtime': 7.23.9
2568 '@emotion/react': 11.11.4(@types/react@18.2.67)(react@18.2.0) 2657 '@emotion/react': 11.11.4(@types/react@18.2.77)(react@18.2.0)
2569 '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.67)(react@18.2.0) 2658 '@emotion/styled': 11.11.5(@emotion/react@11.11.4)(@types/react@18.2.77)(react@18.2.0)
2570 '@mui/private-theming': 5.15.14(@types/react@18.2.67)(react@18.2.0) 2659 '@mui/private-theming': 5.15.14(@types/react@18.2.77)(react@18.2.0)
2571 '@mui/styled-engine': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(react@18.2.0) 2660 '@mui/styled-engine': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.5)(react@18.2.0)
2572 '@mui/types': 7.2.14(@types/react@18.2.67) 2661 '@mui/types': 7.2.14(@types/react@18.2.77)
2573 '@mui/utils': 5.15.14(@types/react@18.2.67)(react@18.2.0) 2662 '@mui/utils': 5.15.14(@types/react@18.2.77)(react@18.2.0)
2574 '@types/react': 18.2.67 2663 '@types/react': 18.2.77
2575 clsx: 2.1.0 2664 clsx: 2.1.0
2576 csstype: 3.1.3 2665 csstype: 3.1.3
2577 prop-types: 15.8.1 2666 prop-types: 15.8.1
2578 react: 18.2.0 2667 react: 18.2.0
2579 dev: false 2668 dev: false
2580 2669
2581 /@mui/types@7.2.14(@types/react@18.2.67): 2670 /@mui/types@7.2.14(@types/react@18.2.77):
2582 resolution: {integrity: sha512-MZsBZ4q4HfzBsywtXgM1Ksj6HDThtiwmOKUXH1pKYISI9gAVXCNHNpo7TlGoGrBaYWZTdNoirIN7JsQcQUjmQQ==} 2671 resolution: {integrity: sha512-MZsBZ4q4HfzBsywtXgM1Ksj6HDThtiwmOKUXH1pKYISI9gAVXCNHNpo7TlGoGrBaYWZTdNoirIN7JsQcQUjmQQ==}
2583 peerDependencies: 2672 peerDependencies:
2584 '@types/react': ^17.0.0 || ^18.0.0 2673 '@types/react': ^17.0.0 || ^18.0.0
@@ -2586,10 +2675,10 @@ packages:
2586 '@types/react': 2675 '@types/react':
2587 optional: true 2676 optional: true
2588 dependencies: 2677 dependencies:
2589 '@types/react': 18.2.67 2678 '@types/react': 18.2.77
2590 dev: false 2679 dev: false
2591 2680
2592 /@mui/utils@5.15.14(@types/react@18.2.67)(react@18.2.0): 2681 /@mui/utils@5.15.14(@types/react@18.2.77)(react@18.2.0):
2593 resolution: {integrity: sha512-0lF/7Hh/ezDv5X7Pry6enMsbYyGKjADzvHyo3Qrc/SSlTsQ1VkbDMbH0m2t3OR5iIVLwMoxwM7yGd+6FCMtTFA==} 2682 resolution: {integrity: sha512-0lF/7Hh/ezDv5X7Pry6enMsbYyGKjADzvHyo3Qrc/SSlTsQ1VkbDMbH0m2t3OR5iIVLwMoxwM7yGd+6FCMtTFA==}
2594 engines: {node: '>=12.0.0'} 2683 engines: {node: '>=12.0.0'}
2595 peerDependencies: 2684 peerDependencies:
@@ -2600,8 +2689,8 @@ packages:
2600 optional: true 2689 optional: true
2601 dependencies: 2690 dependencies:
2602 '@babel/runtime': 7.23.9 2691 '@babel/runtime': 7.23.9
2603 '@types/prop-types': 15.7.11 2692 '@types/prop-types': 15.7.12
2604 '@types/react': 18.2.67 2693 '@types/react': 18.2.77
2605 prop-types: 15.8.1 2694 prop-types: 15.8.1
2606 react: 18.2.0 2695 react: 18.2.0
2607 react-is: 18.2.0 2696 react-is: 18.2.0
@@ -2900,7 +2989,7 @@ packages:
2900 resetable: 1.0.3 2989 resetable: 1.0.3
2901 dev: false 2990 dev: false
2902 2991
2903 /@superwf/mobx-react-router@7.4.0(history@5.3.0)(mobx@6.12.0)(path-to-regexp@6.2.1): 2992 /@superwf/mobx-react-router@7.4.0(history@5.3.0)(mobx@6.12.3)(path-to-regexp@6.2.2):
2904 resolution: {integrity: sha512-3Mq3p1mTJPYpDkYzAzhFLBCPqP528pHyu2V3UFSwcGGPUiFqFFmz31RIRYFHF13anQ2joxwrSllKZj0NiLMFpw==} 2993 resolution: {integrity: sha512-3Mq3p1mTJPYpDkYzAzhFLBCPqP528pHyu2V3UFSwcGGPUiFqFFmz31RIRYFHF13anQ2joxwrSllKZj0NiLMFpw==}
2905 peerDependencies: 2994 peerDependencies:
2906 history: '>=5' 2995 history: '>=5'
@@ -2908,8 +2997,17 @@ packages:
2908 path-to-regexp: '>=6' 2997 path-to-regexp: '>=6'
2909 dependencies: 2998 dependencies:
2910 history: 5.3.0 2999 history: 5.3.0
2911 mobx: 6.12.0 3000 mobx: 6.12.3
2912 path-to-regexp: 6.2.1 3001 path-to-regexp: 6.2.2
3002 dev: false
3003
3004 /@syed_umair/electron-process-manager@1.1.0(electron@30.0.1):
3005 resolution: {integrity: sha512-rbDJ1GQ51DcsP+354WpI/3xWOra1HH4cT1jA0maK8VJogn7s5BiMO2XkSBaCoeMCvTIIwx7Y6dgUHpfnL2M6wg==}
3006 peerDependencies:
3007 electron: '>=21'
3008 dependencies:
3009 electron: 30.0.1
3010 electron-process-reporter: 1.4.0
2913 dev: false 3011 dev: false
2914 3012
2915 /@szmarczak/http-timer@4.0.6: 3013 /@szmarczak/http-timer@4.0.6:
@@ -2984,7 +3082,7 @@ packages:
2984 dependencies: 3082 dependencies:
2985 '@types/http-cache-semantics': 4.0.4 3083 '@types/http-cache-semantics': 4.0.4
2986 '@types/keyv': 3.1.4 3084 '@types/keyv': 3.1.4
2987 '@types/node': 20.11.30 3085 '@types/node': 20.12.7
2988 '@types/responselike': 1.0.3 3086 '@types/responselike': 1.0.3
2989 3087
2990 /@types/color-convert@2.0.3: 3088 /@types/color-convert@2.0.3:
@@ -3006,7 +3104,7 @@ packages:
3006 /@types/conventional-commits-parser@5.0.0: 3104 /@types/conventional-commits-parser@5.0.0:
3007 resolution: {integrity: sha512-loB369iXNmAZglwWATL+WRe+CRMmmBPtpolYzIebFaX4YA3x+BEfLqhUAV9WanycKI3TG1IMr5bMJDajDKLlUQ==} 3105 resolution: {integrity: sha512-loB369iXNmAZglwWATL+WRe+CRMmmBPtpolYzIebFaX4YA3x+BEfLqhUAV9WanycKI3TG1IMr5bMJDajDKLlUQ==}
3008 dependencies: 3106 dependencies:
3009 '@types/node': 20.11.30 3107 '@types/node': 20.12.7
3010 dev: true 3108 dev: true
3011 3109
3012 /@types/debug@4.1.12: 3110 /@types/debug@4.1.12:
@@ -3019,25 +3117,25 @@ packages:
3019 resolution: {integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==} 3117 resolution: {integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==}
3020 dependencies: 3118 dependencies:
3021 '@types/jsonfile': 6.1.4 3119 '@types/jsonfile': 6.1.4
3022 '@types/node': 20.11.30 3120 '@types/node': 20.12.7
3023 dev: true 3121 dev: true
3024 3122
3025 /@types/fs-extra@9.0.13: 3123 /@types/fs-extra@9.0.13:
3026 resolution: {integrity: sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==} 3124 resolution: {integrity: sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==}
3027 dependencies: 3125 dependencies:
3028 '@types/node': 20.11.30 3126 '@types/node': 20.12.7
3029 dev: true 3127 dev: true
3030 3128
3031 /@types/graceful-fs@4.1.5: 3129 /@types/graceful-fs@4.1.5:
3032 resolution: {integrity: sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==} 3130 resolution: {integrity: sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==}
3033 dependencies: 3131 dependencies:
3034 '@types/node': 20.11.30 3132 '@types/node': 20.12.7
3035 dev: true 3133 dev: true
3036 3134
3037 /@types/hoist-non-react-statics@3.3.5: 3135 /@types/hoist-non-react-statics@3.3.5:
3038 resolution: {integrity: sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==} 3136 resolution: {integrity: sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==}
3039 dependencies: 3137 dependencies:
3040 '@types/react': 18.2.67 3138 '@types/react': 18.2.77
3041 hoist-non-react-statics: 3.3.2 3139 hoist-non-react-statics: 3.3.2
3042 dev: false 3140 dev: false
3043 3141
@@ -3078,13 +3176,13 @@ packages:
3078 /@types/jsonfile@6.1.4: 3176 /@types/jsonfile@6.1.4:
3079 resolution: {integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==} 3177 resolution: {integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==}
3080 dependencies: 3178 dependencies:
3081 '@types/node': 20.11.30 3179 '@types/node': 20.12.7
3082 dev: true 3180 dev: true
3083 3181
3084 /@types/keyv@3.1.4: 3182 /@types/keyv@3.1.4:
3085 resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} 3183 resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==}
3086 dependencies: 3184 dependencies:
3087 '@types/node': 20.11.30 3185 '@types/node': 20.12.7
3088 3186
3089 /@types/lodash@4.17.0: 3187 /@types/lodash@4.17.0:
3090 resolution: {integrity: sha512-t7dhREVv6dbNj0q17X12j7yDG4bD/DHYX7o5/DbDxobP0HnGPgpRz2Ej77aL7TZT3DSw13fqUTj8J4mMnqa7WA==} 3188 resolution: {integrity: sha512-t7dhREVv6dbNj0q17X12j7yDG4bD/DHYX7o5/DbDxobP0HnGPgpRz2Ej77aL7TZT3DSw13fqUTj8J4mMnqa7WA==}
@@ -3098,13 +3196,13 @@ packages:
3098 resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} 3196 resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==}
3099 dev: true 3197 dev: true
3100 3198
3101 /@types/node@20.11.30: 3199 /@types/node@20.12.7:
3102 resolution: {integrity: sha512-dHM6ZxwlmuZaRmUPfv1p+KrdD1Dci04FbdEm/9wEMouFqxYoFl5aMkt0VMAUtYRQDyYvD41WJLukhq/ha3YuTw==} 3200 resolution: {integrity: sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==}
3103 dependencies: 3201 dependencies:
3104 undici-types: 5.26.5 3202 undici-types: 5.26.5
3105 3203
3106 /@types/normalize-package-data@2.4.1: 3204 /@types/normalize-package-data@2.4.4:
3107 resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} 3205 resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==}
3108 dev: true 3206 dev: true
3109 3207
3110 /@types/parse-json@4.0.0: 3208 /@types/parse-json@4.0.0:
@@ -3115,57 +3213,53 @@ packages:
3115 resolution: {integrity: sha512-E6OCaRmAe4WDmWNsL/9RMqdkkzDCY1etutkflWk4c+AcjDU07Pcz1fQwTX0TQz+Pxqn9i4L1TU3UFpjnrcDgxA==} 3213 resolution: {integrity: sha512-E6OCaRmAe4WDmWNsL/9RMqdkkzDCY1etutkflWk4c+AcjDU07Pcz1fQwTX0TQz+Pxqn9i4L1TU3UFpjnrcDgxA==}
3116 requiresBuild: true 3214 requiresBuild: true
3117 dependencies: 3215 dependencies:
3118 '@types/node': 20.11.30 3216 '@types/node': 20.12.7
3119 xmlbuilder: 15.1.1 3217 xmlbuilder: 15.1.1
3120 dev: true 3218 dev: true
3121 optional: true 3219 optional: true
3122 3220
3123 /@types/prop-types@15.7.11: 3221 /@types/prop-types@15.7.12:
3124 resolution: {integrity: sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==} 3222 resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==}
3125 3223
3126 /@types/react-color@3.0.12: 3224 /@types/react-color@3.0.12:
3127 resolution: {integrity: sha512-pr3uKE3lSvf7GFo1Rn2K3QktiZQFFrSgSGJ/3iMvSOYWt2pPAJ97rVdVfhWxYJZ8prAEXzoP2XX//3qGSQgu7Q==} 3225 resolution: {integrity: sha512-pr3uKE3lSvf7GFo1Rn2K3QktiZQFFrSgSGJ/3iMvSOYWt2pPAJ97rVdVfhWxYJZ8prAEXzoP2XX//3qGSQgu7Q==}
3128 dependencies: 3226 dependencies:
3129 '@types/react': 18.2.67 3227 '@types/react': 18.2.77
3130 '@types/reactcss': 1.2.10 3228 '@types/reactcss': 1.2.10
3131 dev: true 3229 dev: true
3132 3230
3133 /@types/react-dom@18.2.22: 3231 /@types/react-dom@18.2.25:
3134 resolution: {integrity: sha512-fHkBXPeNtfvri6gdsMYyW+dW7RXFo6Ad09nLFK0VQWR7yGLai/Cyvyj696gbwYvBnhGtevUG9cET0pmUbMtoPQ==} 3232 resolution: {integrity: sha512-o/V48vf4MQh7juIKZU2QGDfli6p1+OOi5oXx36Hffpc9adsHeXjVp8rHuPkjd8VT8sOJ2Zp05HR7CdpGTIUFUA==}
3135 dependencies: 3233 dependencies:
3136 '@types/react': 18.2.67 3234 '@types/react': 18.2.77
3137 dev: true 3235 dev: true
3138 3236
3139 /@types/react-transition-group@4.4.10: 3237 /@types/react-transition-group@4.4.10:
3140 resolution: {integrity: sha512-hT/+s0VQs2ojCX823m60m5f0sL5idt9SO6Tj6Dg+rdphGPIeJbJ6CxvBYkgkGKrYeDjvIpKTR38UzmtHJOGW3Q==} 3238 resolution: {integrity: sha512-hT/+s0VQs2ojCX823m60m5f0sL5idt9SO6Tj6Dg+rdphGPIeJbJ6CxvBYkgkGKrYeDjvIpKTR38UzmtHJOGW3Q==}
3141 dependencies: 3239 dependencies:
3142 '@types/react': 18.2.67 3240 '@types/react': 18.2.77
3143 3241
3144 /@types/react@18.2.67: 3242 /@types/react@18.2.77:
3145 resolution: {integrity: sha512-vkIE2vTIMHQ/xL0rgmuoECBCkZFZeHr49HeWSc24AptMbNRo7pwSBvj73rlJJs9fGKj0koS+V7kQB1jHS0uCgw==} 3243 resolution: {integrity: sha512-CUT9KUUF+HytDM7WiXKLF9qUSg4tGImwy4FXTlfEDPEkkNUzJ7rVFolYweJ9fS1ljoIaP7M7Rdjc5eUm/Yu5AA==}
3146 dependencies: 3244 dependencies:
3147 '@types/prop-types': 15.7.11 3245 '@types/prop-types': 15.7.12
3148 '@types/scheduler': 0.16.8
3149 csstype: 3.1.3 3246 csstype: 3.1.3
3150 3247
3151 /@types/reactcss@1.2.10: 3248 /@types/reactcss@1.2.10:
3152 resolution: {integrity: sha512-gf5qJ1wOYP8N5q9H8/5c3QZHQzu8ltPClhM0vEWuBu9SGg4KSzgpJd2TShEsQDwsYn+mtnJ1xHUdJyzj/r9WrA==} 3249 resolution: {integrity: sha512-gf5qJ1wOYP8N5q9H8/5c3QZHQzu8ltPClhM0vEWuBu9SGg4KSzgpJd2TShEsQDwsYn+mtnJ1xHUdJyzj/r9WrA==}
3153 dependencies: 3250 dependencies:
3154 '@types/react': 18.2.67 3251 '@types/react': 18.2.77
3155 dev: true 3252 dev: true
3156 3253
3157 /@types/responselike@1.0.3: 3254 /@types/responselike@1.0.3:
3158 resolution: {integrity: sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==} 3255 resolution: {integrity: sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==}
3159 dependencies: 3256 dependencies:
3160 '@types/node': 20.11.30 3257 '@types/node': 20.12.7
3161 3258
3162 /@types/route-parser@0.1.7: 3259 /@types/route-parser@0.1.7:
3163 resolution: {integrity: sha512-haO+3HVio/4w+yuMJTjqfSo0ivOV8WnXaOReVD6QN729UGBEyizWNGc2Jd0OLsJDucIod4aJSsPLBeLj2uzMCQ==} 3260 resolution: {integrity: sha512-haO+3HVio/4w+yuMJTjqfSo0ivOV8WnXaOReVD6QN729UGBEyizWNGc2Jd0OLsJDucIod4aJSsPLBeLj2uzMCQ==}
3164 dev: true 3261 dev: true
3165 3262
3166 /@types/scheduler@0.16.8:
3167 resolution: {integrity: sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==}
3168
3169 /@types/semver@7.5.8: 3263 /@types/semver@7.5.8:
3170 resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} 3264 resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==}
3171 dev: true 3265 dev: true
@@ -3178,10 +3272,10 @@ packages:
3178 resolution: {integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==} 3272 resolution: {integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==}
3179 dev: true 3273 dev: true
3180 3274
3181 /@types/tar@6.1.11: 3275 /@types/tar@6.1.12:
3182 resolution: {integrity: sha512-ThA1WD8aDdVU4VLuyq5NEqriwXErF5gEIJeyT6gHBWU7JtSmW2a5qjNv3/vR82O20mW+1vhmeZJfBQPT3HCugg==} 3276 resolution: {integrity: sha512-FwbJPi9YuovB6ilnHrz8Y4pb0Fh6N7guFkbnlCl39ua893Qi5gkXui7LSDpTQMJCmA4z5f6SeSrTPQEWLdtFVw==}
3183 dependencies: 3277 dependencies:
3184 '@types/node': 20.11.30 3278 '@types/node': 20.12.7
3185 minipass: 4.2.8 3279 minipass: 4.2.8
3186 dev: true 3280 dev: true
3187 3281
@@ -3213,10 +3307,10 @@ packages:
3213 resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} 3307 resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==}
3214 requiresBuild: true 3308 requiresBuild: true
3215 dependencies: 3309 dependencies:
3216 '@types/node': 20.11.30 3310 '@types/node': 20.12.7
3217 optional: true 3311 optional: true
3218 3312
3219 /@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@7.3.1)(eslint@8.57.0)(typescript@5.4.3): 3313 /@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5):
3220 resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==} 3314 resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==}
3221 engines: {node: ^16.0.0 || >=18.0.0} 3315 engines: {node: ^16.0.0 || >=18.0.0}
3222 peerDependencies: 3316 peerDependencies:
@@ -3228,10 +3322,10 @@ packages:
3228 optional: true 3322 optional: true
3229 dependencies: 3323 dependencies:
3230 '@eslint-community/regexpp': 4.10.0 3324 '@eslint-community/regexpp': 4.10.0
3231 '@typescript-eslint/parser': 7.3.1(eslint@8.57.0)(typescript@5.4.3) 3325 '@typescript-eslint/parser': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
3232 '@typescript-eslint/scope-manager': 6.21.0 3326 '@typescript-eslint/scope-manager': 6.21.0
3233 '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.0)(typescript@5.4.3) 3327 '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.0)(typescript@5.4.5)
3234 '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.4.3) 3328 '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.4.5)
3235 '@typescript-eslint/visitor-keys': 6.21.0 3329 '@typescript-eslint/visitor-keys': 6.21.0
3236 debug: 4.3.4(supports-color@5.5.0) 3330 debug: 4.3.4(supports-color@5.5.0)
3237 eslint: 8.57.0 3331 eslint: 8.57.0
@@ -3239,58 +3333,58 @@ packages:
3239 ignore: 5.3.0 3333 ignore: 5.3.0
3240 natural-compare: 1.4.0 3334 natural-compare: 1.4.0
3241 semver: 7.6.0 3335 semver: 7.6.0
3242 ts-api-utils: 1.0.3(typescript@5.4.3) 3336 ts-api-utils: 1.0.3(typescript@5.4.5)
3243 typescript: 5.4.3 3337 typescript: 5.4.5
3244 transitivePeerDependencies: 3338 transitivePeerDependencies:
3245 - supports-color 3339 - supports-color
3246 dev: true 3340 dev: true
3247 3341
3248 /@typescript-eslint/eslint-plugin@7.3.1(@typescript-eslint/parser@7.3.1)(eslint@8.57.0)(typescript@5.4.3): 3342 /@typescript-eslint/eslint-plugin@7.6.0(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5):
3249 resolution: {integrity: sha512-STEDMVQGww5lhCuNXVSQfbfuNII5E08QWkvAw5Qwf+bj2WT+JkG1uc+5/vXA3AOYMDHVOSpL+9rcbEUiHIm2dw==} 3343 resolution: {integrity: sha512-gKmTNwZnblUdnTIJu3e9kmeRRzV2j1a/LUO27KNNAnIC5zjy1aSvXSRp4rVNlmAoHlQ7HzX42NbKpcSr4jF80A==}
3250 engines: {node: ^18.18.0 || >=20.0.0} 3344 engines: {node: ^18.18.0 || >=20.0.0}
3251 peerDependencies: 3345 peerDependencies:
3252 '@typescript-eslint/parser': ^7.0.0 3346 '@typescript-eslint/parser': ^7.0.0
3253 eslint: ^8.56.0 3347 eslint: ^8.56.0 || ^8.0.0
3254 typescript: '*' 3348 typescript: '*'
3255 peerDependenciesMeta: 3349 peerDependenciesMeta:
3256 typescript: 3350 typescript:
3257 optional: true 3351 optional: true
3258 dependencies: 3352 dependencies:
3259 '@eslint-community/regexpp': 4.10.0 3353 '@eslint-community/regexpp': 4.10.0
3260 '@typescript-eslint/parser': 7.3.1(eslint@8.57.0)(typescript@5.4.3) 3354 '@typescript-eslint/parser': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
3261 '@typescript-eslint/scope-manager': 7.3.1 3355 '@typescript-eslint/scope-manager': 7.6.0
3262 '@typescript-eslint/type-utils': 7.3.1(eslint@8.57.0)(typescript@5.4.3) 3356 '@typescript-eslint/type-utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
3263 '@typescript-eslint/utils': 7.3.1(eslint@8.57.0)(typescript@5.4.3) 3357 '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
3264 '@typescript-eslint/visitor-keys': 7.3.1 3358 '@typescript-eslint/visitor-keys': 7.6.0
3265 debug: 4.3.4(supports-color@5.5.0) 3359 debug: 4.3.4(supports-color@5.5.0)
3266 eslint: 8.57.0 3360 eslint: 8.57.0
3267 graphemer: 1.4.0 3361 graphemer: 1.4.0
3268 ignore: 5.3.0 3362 ignore: 5.3.1
3269 natural-compare: 1.4.0 3363 natural-compare: 1.4.0
3270 semver: 7.6.0 3364 semver: 7.6.0
3271 ts-api-utils: 1.0.3(typescript@5.4.3) 3365 ts-api-utils: 1.3.0(typescript@5.4.5)
3272 typescript: 5.4.3 3366 typescript: 5.4.5
3273 transitivePeerDependencies: 3367 transitivePeerDependencies:
3274 - supports-color 3368 - supports-color
3275 dev: true 3369 dev: true
3276 3370
3277 /@typescript-eslint/parser@7.3.1(eslint@8.57.0)(typescript@5.4.3): 3371 /@typescript-eslint/parser@7.6.0(eslint@8.57.0)(typescript@5.4.5):
3278 resolution: {integrity: sha512-Rq49+pq7viTRCH48XAbTA+wdLRrB/3sRq4Lpk0oGDm0VmnjBrAOVXH/Laalmwsv2VpekiEfVFwJYVk6/e8uvQw==} 3372 resolution: {integrity: sha512-usPMPHcwX3ZoPWnBnhhorc14NJw9J4HpSXQX4urF2TPKG0au0XhJoZyX62fmvdHONUkmyUe74Hzm1//XA+BoYg==}
3279 engines: {node: ^18.18.0 || >=20.0.0} 3373 engines: {node: ^18.18.0 || >=20.0.0}
3280 peerDependencies: 3374 peerDependencies:
3281 eslint: ^8.56.0 3375 eslint: ^8.56.0 || ^8.0.0
3282 typescript: '*' 3376 typescript: '*'
3283 peerDependenciesMeta: 3377 peerDependenciesMeta:
3284 typescript: 3378 typescript:
3285 optional: true 3379 optional: true
3286 dependencies: 3380 dependencies:
3287 '@typescript-eslint/scope-manager': 7.3.1 3381 '@typescript-eslint/scope-manager': 7.6.0
3288 '@typescript-eslint/types': 7.3.1 3382 '@typescript-eslint/types': 7.6.0
3289 '@typescript-eslint/typescript-estree': 7.3.1(typescript@5.4.3) 3383 '@typescript-eslint/typescript-estree': 7.6.0(typescript@5.4.5)
3290 '@typescript-eslint/visitor-keys': 7.3.1 3384 '@typescript-eslint/visitor-keys': 7.6.0
3291 debug: 4.3.4(supports-color@5.5.0) 3385 debug: 4.3.4(supports-color@5.5.0)
3292 eslint: 8.57.0 3386 eslint: 8.57.0
3293 typescript: 5.4.3 3387 typescript: 5.4.5
3294 transitivePeerDependencies: 3388 transitivePeerDependencies:
3295 - supports-color 3389 - supports-color
3296 dev: true 3390 dev: true
@@ -3311,15 +3405,15 @@ packages:
3311 '@typescript-eslint/visitor-keys': 6.21.0 3405 '@typescript-eslint/visitor-keys': 6.21.0
3312 dev: true 3406 dev: true
3313 3407
3314 /@typescript-eslint/scope-manager@7.3.1: 3408 /@typescript-eslint/scope-manager@7.6.0:
3315 resolution: {integrity: sha512-fVS6fPxldsKY2nFvyT7IP78UO1/I2huG+AYu5AMjCT9wtl6JFiDnsv4uad4jQ0GTFzcUV5HShVeN96/17bTBag==} 3409 resolution: {integrity: sha512-ngttyfExA5PsHSx0rdFgnADMYQi+Zkeiv4/ZxGYUWd0nLs63Ha0ksmp8VMxAIC0wtCFxMos7Lt3PszJssG/E6w==}
3316 engines: {node: ^18.18.0 || >=20.0.0} 3410 engines: {node: ^18.18.0 || >=20.0.0}
3317 dependencies: 3411 dependencies:
3318 '@typescript-eslint/types': 7.3.1 3412 '@typescript-eslint/types': 7.6.0
3319 '@typescript-eslint/visitor-keys': 7.3.1 3413 '@typescript-eslint/visitor-keys': 7.6.0
3320 dev: true 3414 dev: true
3321 3415
3322 /@typescript-eslint/type-utils@6.21.0(eslint@8.57.0)(typescript@5.4.3): 3416 /@typescript-eslint/type-utils@6.21.0(eslint@8.57.0)(typescript@5.4.5):
3323 resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==} 3417 resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==}
3324 engines: {node: ^16.0.0 || >=18.0.0} 3418 engines: {node: ^16.0.0 || >=18.0.0}
3325 peerDependencies: 3419 peerDependencies:
@@ -3329,32 +3423,32 @@ packages:
3329 typescript: 3423 typescript:
3330 optional: true 3424 optional: true
3331 dependencies: 3425 dependencies:
3332 '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.3) 3426 '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.5)
3333 '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.4.3) 3427 '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.4.5)
3334 debug: 4.3.4(supports-color@5.5.0) 3428 debug: 4.3.4(supports-color@5.5.0)
3335 eslint: 8.57.0 3429 eslint: 8.57.0
3336 ts-api-utils: 1.0.3(typescript@5.4.3) 3430 ts-api-utils: 1.0.3(typescript@5.4.5)
3337 typescript: 5.4.3 3431 typescript: 5.4.5
3338 transitivePeerDependencies: 3432 transitivePeerDependencies:
3339 - supports-color 3433 - supports-color
3340 dev: true 3434 dev: true
3341 3435
3342 /@typescript-eslint/type-utils@7.3.1(eslint@8.57.0)(typescript@5.4.3): 3436 /@typescript-eslint/type-utils@7.6.0(eslint@8.57.0)(typescript@5.4.5):
3343 resolution: {integrity: sha512-iFhaysxFsMDQlzJn+vr3OrxN8NmdQkHks4WaqD4QBnt5hsq234wcYdyQ9uquzJJIDAj5W4wQne3yEsYA6OmXGw==} 3437 resolution: {integrity: sha512-NxAfqAPNLG6LTmy7uZgpK8KcuiS2NZD/HlThPXQRGwz6u7MDBWRVliEEl1Gj6U7++kVJTpehkhZzCJLMK66Scw==}
3344 engines: {node: ^18.18.0 || >=20.0.0} 3438 engines: {node: ^18.18.0 || >=20.0.0}
3345 peerDependencies: 3439 peerDependencies:
3346 eslint: ^8.56.0 3440 eslint: ^8.56.0 || ^8.0.0
3347 typescript: '*' 3441 typescript: '*'
3348 peerDependenciesMeta: 3442 peerDependenciesMeta:
3349 typescript: 3443 typescript:
3350 optional: true 3444 optional: true
3351 dependencies: 3445 dependencies:
3352 '@typescript-eslint/typescript-estree': 7.3.1(typescript@5.4.3) 3446 '@typescript-eslint/typescript-estree': 7.6.0(typescript@5.4.5)
3353 '@typescript-eslint/utils': 7.3.1(eslint@8.57.0)(typescript@5.4.3) 3447 '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
3354 debug: 4.3.4(supports-color@5.5.0) 3448 debug: 4.3.4(supports-color@5.5.0)
3355 eslint: 8.57.0 3449 eslint: 8.57.0
3356 ts-api-utils: 1.0.3(typescript@5.4.3) 3450 ts-api-utils: 1.3.0(typescript@5.4.5)
3357 typescript: 5.4.3 3451 typescript: 5.4.5
3358 transitivePeerDependencies: 3452 transitivePeerDependencies:
3359 - supports-color 3453 - supports-color
3360 dev: true 3454 dev: true
@@ -3369,12 +3463,12 @@ packages:
3369 engines: {node: ^16.0.0 || >=18.0.0} 3463 engines: {node: ^16.0.0 || >=18.0.0}
3370 dev: true 3464 dev: true
3371 3465
3372 /@typescript-eslint/types@7.3.1: 3466 /@typescript-eslint/types@7.6.0:
3373 resolution: {integrity: sha512-2tUf3uWggBDl4S4183nivWQ2HqceOZh1U4hhu4p1tPiIJoRRXrab7Y+Y0p+dozYwZVvLPRI6r5wKe9kToF9FIw==} 3467 resolution: {integrity: sha512-h02rYQn8J+MureCvHVVzhl69/GAfQGPQZmOMjG1KfCl7o3HtMSlPaPUAPu6lLctXI5ySRGIYk94clD/AUMCUgQ==}
3374 engines: {node: ^18.18.0 || >=20.0.0} 3468 engines: {node: ^18.18.0 || >=20.0.0}
3375 dev: true 3469 dev: true
3376 3470
3377 /@typescript-eslint/typescript-estree@5.62.0(typescript@5.4.3): 3471 /@typescript-eslint/typescript-estree@5.62.0(typescript@5.4.5):
3378 resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} 3472 resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==}
3379 engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 3473 engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
3380 peerDependencies: 3474 peerDependencies:
@@ -3389,13 +3483,13 @@ packages:
3389 globby: 11.1.0 3483 globby: 11.1.0
3390 is-glob: 4.0.3 3484 is-glob: 4.0.3
3391 semver: 7.6.0 3485 semver: 7.6.0
3392 tsutils: 3.21.0(typescript@5.4.3) 3486 tsutils: 3.21.0(typescript@5.4.5)
3393 typescript: 5.4.3 3487 typescript: 5.4.5
3394 transitivePeerDependencies: 3488 transitivePeerDependencies:
3395 - supports-color 3489 - supports-color
3396 dev: true 3490 dev: true
3397 3491
3398 /@typescript-eslint/typescript-estree@6.21.0(typescript@5.4.3): 3492 /@typescript-eslint/typescript-estree@6.21.0(typescript@5.4.5):
3399 resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} 3493 resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==}
3400 engines: {node: ^16.0.0 || >=18.0.0} 3494 engines: {node: ^16.0.0 || >=18.0.0}
3401 peerDependencies: 3495 peerDependencies:
@@ -3411,14 +3505,14 @@ packages:
3411 is-glob: 4.0.3 3505 is-glob: 4.0.3
3412 minimatch: 9.0.3 3506 minimatch: 9.0.3
3413 semver: 7.6.0 3507 semver: 7.6.0
3414 ts-api-utils: 1.0.3(typescript@5.4.3) 3508 ts-api-utils: 1.0.3(typescript@5.4.5)
3415 typescript: 5.4.3 3509 typescript: 5.4.5
3416 transitivePeerDependencies: 3510 transitivePeerDependencies:
3417 - supports-color 3511 - supports-color
3418 dev: true 3512 dev: true
3419 3513
3420 /@typescript-eslint/typescript-estree@7.3.1(typescript@5.4.3): 3514 /@typescript-eslint/typescript-estree@7.6.0(typescript@5.4.5):
3421 resolution: {integrity: sha512-tLpuqM46LVkduWP7JO7yVoWshpJuJzxDOPYIVWUUZbW+4dBpgGeUdl/fQkhuV0A8eGnphYw3pp8d2EnvPOfxmQ==} 3515 resolution: {integrity: sha512-+7Y/GP9VuYibecrCQWSKgl3GvUM5cILRttpWtnAu8GNL9j11e4tbuGZmZjJ8ejnKYyBRb2ddGQ3rEFCq3QjMJw==}
3422 engines: {node: ^18.18.0 || >=20.0.0} 3516 engines: {node: ^18.18.0 || >=20.0.0}
3423 peerDependencies: 3517 peerDependencies:
3424 typescript: '*' 3518 typescript: '*'
@@ -3426,20 +3520,20 @@ packages:
3426 typescript: 3520 typescript:
3427 optional: true 3521 optional: true
3428 dependencies: 3522 dependencies:
3429 '@typescript-eslint/types': 7.3.1 3523 '@typescript-eslint/types': 7.6.0
3430 '@typescript-eslint/visitor-keys': 7.3.1 3524 '@typescript-eslint/visitor-keys': 7.6.0
3431 debug: 4.3.4(supports-color@5.5.0) 3525 debug: 4.3.4(supports-color@5.5.0)
3432 globby: 11.1.0 3526 globby: 11.1.0
3433 is-glob: 4.0.3 3527 is-glob: 4.0.3
3434 minimatch: 9.0.3 3528 minimatch: 9.0.4
3435 semver: 7.6.0 3529 semver: 7.6.0
3436 ts-api-utils: 1.0.3(typescript@5.4.3) 3530 ts-api-utils: 1.3.0(typescript@5.4.5)
3437 typescript: 5.4.3 3531 typescript: 5.4.5
3438 transitivePeerDependencies: 3532 transitivePeerDependencies:
3439 - supports-color 3533 - supports-color
3440 dev: true 3534 dev: true
3441 3535
3442 /@typescript-eslint/utils@5.62.0(eslint@8.57.0)(typescript@5.4.3): 3536 /@typescript-eslint/utils@5.62.0(eslint@8.57.0)(typescript@5.4.5):
3443 resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} 3537 resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==}
3444 engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 3538 engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
3445 peerDependencies: 3539 peerDependencies:
@@ -3450,7 +3544,7 @@ packages:
3450 '@types/semver': 7.5.8 3544 '@types/semver': 7.5.8
3451 '@typescript-eslint/scope-manager': 5.62.0 3545 '@typescript-eslint/scope-manager': 5.62.0
3452 '@typescript-eslint/types': 5.62.0 3546 '@typescript-eslint/types': 5.62.0
3453 '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.4.3) 3547 '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.4.5)
3454 eslint: 8.57.0 3548 eslint: 8.57.0
3455 eslint-scope: 5.1.1 3549 eslint-scope: 5.1.1
3456 semver: 7.6.0 3550 semver: 7.6.0
@@ -3459,7 +3553,7 @@ packages:
3459 - typescript 3553 - typescript
3460 dev: true 3554 dev: true
3461 3555
3462 /@typescript-eslint/utils@6.21.0(eslint@8.57.0)(typescript@5.4.3): 3556 /@typescript-eslint/utils@6.21.0(eslint@8.57.0)(typescript@5.4.5):
3463 resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} 3557 resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==}
3464 engines: {node: ^16.0.0 || >=18.0.0} 3558 engines: {node: ^16.0.0 || >=18.0.0}
3465 peerDependencies: 3559 peerDependencies:
@@ -3470,7 +3564,7 @@ packages:
3470 '@types/semver': 7.5.8 3564 '@types/semver': 7.5.8
3471 '@typescript-eslint/scope-manager': 6.21.0 3565 '@typescript-eslint/scope-manager': 6.21.0
3472 '@typescript-eslint/types': 6.21.0 3566 '@typescript-eslint/types': 6.21.0
3473 '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.3) 3567 '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.5)
3474 eslint: 8.57.0 3568 eslint: 8.57.0
3475 semver: 7.6.0 3569 semver: 7.6.0
3476 transitivePeerDependencies: 3570 transitivePeerDependencies:
@@ -3478,18 +3572,18 @@ packages:
3478 - typescript 3572 - typescript
3479 dev: true 3573 dev: true
3480 3574
3481 /@typescript-eslint/utils@7.3.1(eslint@8.57.0)(typescript@5.4.3): 3575 /@typescript-eslint/utils@7.6.0(eslint@8.57.0)(typescript@5.4.5):
3482 resolution: {integrity: sha512-jIERm/6bYQ9HkynYlNZvXpzmXWZGhMbrOvq3jJzOSOlKXsVjrrolzWBjDW6/TvT5Q3WqaN4EkmcfdQwi9tDjBQ==} 3576 resolution: {integrity: sha512-x54gaSsRRI+Nwz59TXpCsr6harB98qjXYzsRxGqvA5Ue3kQH+FxS7FYU81g/omn22ML2pZJkisy6Q+ElK8pBCA==}
3483 engines: {node: ^18.18.0 || >=20.0.0} 3577 engines: {node: ^18.18.0 || >=20.0.0}
3484 peerDependencies: 3578 peerDependencies:
3485 eslint: ^8.56.0 3579 eslint: ^8.56.0 || ^8.0.0
3486 dependencies: 3580 dependencies:
3487 '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) 3581 '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
3488 '@types/json-schema': 7.0.15 3582 '@types/json-schema': 7.0.15
3489 '@types/semver': 7.5.8 3583 '@types/semver': 7.5.8
3490 '@typescript-eslint/scope-manager': 7.3.1 3584 '@typescript-eslint/scope-manager': 7.6.0
3491 '@typescript-eslint/types': 7.3.1 3585 '@typescript-eslint/types': 7.6.0
3492 '@typescript-eslint/typescript-estree': 7.3.1(typescript@5.4.3) 3586 '@typescript-eslint/typescript-estree': 7.6.0(typescript@5.4.5)
3493 eslint: 8.57.0 3587 eslint: 8.57.0
3494 semver: 7.6.0 3588 semver: 7.6.0
3495 transitivePeerDependencies: 3589 transitivePeerDependencies:
@@ -3513,11 +3607,11 @@ packages:
3513 eslint-visitor-keys: 3.4.3 3607 eslint-visitor-keys: 3.4.3
3514 dev: true 3608 dev: true
3515 3609
3516 /@typescript-eslint/visitor-keys@7.3.1: 3610 /@typescript-eslint/visitor-keys@7.6.0:
3517 resolution: {integrity: sha512-9RMXwQF8knsZvfv9tdi+4D/j7dMG28X/wMJ8Jj6eOHyHWwDW4ngQJcqEczSsqIKKjFiLFr40Mnr7a5ulDD3vmw==} 3611 resolution: {integrity: sha512-4eLB7t+LlNUmXzfOu1VAIAdkjbu5xNSerURS9X/S5TUKWFRpXRQZbmtPqgKmYx8bj3J0irtQXSiWAOY82v+cgw==}
3518 engines: {node: ^18.18.0 || >=20.0.0} 3612 engines: {node: ^18.18.0 || >=20.0.0}
3519 dependencies: 3613 dependencies:
3520 '@typescript-eslint/types': 7.3.1 3614 '@typescript-eslint/types': 7.6.0
3521 eslint-visitor-keys: 3.4.3 3615 eslint-visitor-keys: 3.4.3
3522 dev: true 3616 dev: true
3523 3617
@@ -3995,7 +4089,7 @@ packages:
3995 read-config-file: 6.3.2 4089 read-config-file: 6.3.2
3996 sanitize-filename: 1.6.3 4090 sanitize-filename: 1.6.3
3997 semver: 7.6.0 4091 semver: 7.6.0
3998 tar: 6.2.0 4092 tar: 6.2.1
3999 temp-file: 3.4.0 4093 temp-file: 3.4.0
4000 transitivePeerDependencies: 4094 transitivePeerDependencies:
4001 - supports-color 4095 - supports-color
@@ -4418,17 +4512,17 @@ packages:
4418 resolve: 1.22.8 4512 resolve: 1.22.8
4419 dev: false 4513 dev: false
4420 4514
4421 /babel-plugin-styled-components@2.1.4(@babel/core@7.24.3)(styled-components@5.3.11): 4515 /babel-plugin-styled-components@2.1.4(@babel/core@7.24.4)(styled-components@5.3.11):
4422 resolution: {integrity: sha512-Xgp9g+A/cG47sUyRwwYxGM4bR/jDRg5N6it/8+HxCnbT5XNKSKDT9xm4oag/osgqjC2It/vH0yXsomOG6k558g==} 4516 resolution: {integrity: sha512-Xgp9g+A/cG47sUyRwwYxGM4bR/jDRg5N6it/8+HxCnbT5XNKSKDT9xm4oag/osgqjC2It/vH0yXsomOG6k558g==}
4423 peerDependencies: 4517 peerDependencies:
4424 styled-components: '>= 2' 4518 styled-components: '>= 2'
4425 dependencies: 4519 dependencies:
4426 '@babel/helper-annotate-as-pure': 7.22.5 4520 '@babel/helper-annotate-as-pure': 7.22.5
4427 '@babel/helper-module-imports': 7.22.15 4521 '@babel/helper-module-imports': 7.22.15
4428 '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.24.3) 4522 '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.24.4)
4429 lodash: 4.17.21 4523 lodash: 4.17.21
4430 picomatch: 2.3.1 4524 picomatch: 2.3.1
4431 styled-components: 5.3.11(@babel/core@7.24.3)(react-dom@18.2.0)(react-is@18.2.0)(react@18.2.0) 4525 styled-components: 5.3.11(@babel/core@7.24.4)(react-dom@18.2.0)(react-is@18.2.0)(react@18.2.0)
4432 transitivePeerDependencies: 4526 transitivePeerDependencies:
4433 - '@babel/core' 4527 - '@babel/core'
4434 dev: false 4528 dev: false
@@ -4485,13 +4579,6 @@ packages:
4485 pascalcase: 0.1.1 4579 pascalcase: 0.1.1
4486 dev: false 4580 dev: false
4487 4581
4488 /basic-auth@2.0.1:
4489 resolution: {integrity: sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==}
4490 engines: {node: '>= 0.8'}
4491 dependencies:
4492 safe-buffer: 5.1.2
4493 dev: false
4494
4495 /bcrypt-pbkdf@1.0.2: 4582 /bcrypt-pbkdf@1.0.2:
4496 resolution: {integrity: sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==} 4583 resolution: {integrity: sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==}
4497 dependencies: 4584 dependencies:
@@ -4612,7 +4699,7 @@ packages:
4612 engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 4699 engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
4613 hasBin: true 4700 hasBin: true
4614 dependencies: 4701 dependencies:
4615 caniuse-lite: 1.0.30001599 4702 caniuse-lite: 1.0.30001611
4616 electron-to-chromium: 1.4.710 4703 electron-to-chromium: 1.4.710
4617 node-releases: 2.0.14 4704 node-releases: 2.0.14
4618 update-browserslist-db: 1.0.13(browserslist@4.23.0) 4705 update-browserslist-db: 1.0.13(browserslist@4.23.0)
@@ -4623,11 +4710,6 @@ packages:
4623 node-int64: 0.4.0 4710 node-int64: 0.4.0
4624 dev: true 4711 dev: true
4625 4712
4626 /bson@1.1.6:
4627 resolution: {integrity: sha512-EvVNVeGo4tHxwi8L6bPj3y3itEvStdwvvlojVxxbyYfoaxJ6keLgrTuKdyfEAszFK+H3olzBuafE0yoh0D1gdg==}
4628 engines: {node: '>=0.6.19'}
4629 dev: false
4630
4631 /buffer-alloc-unsafe@1.1.0: 4713 /buffer-alloc-unsafe@1.1.0:
4632 resolution: {integrity: sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==} 4714 resolution: {integrity: sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==}
4633 dev: false 4715 dev: false
@@ -4750,7 +4832,7 @@ packages:
4750 promise-inflight: 1.0.1 4832 promise-inflight: 1.0.1
4751 rimraf: 3.0.2 4833 rimraf: 3.0.2
4752 ssri: 8.0.1 4834 ssri: 8.0.1
4753 tar: 6.2.0 4835 tar: 6.2.1
4754 unique-filename: 1.1.1 4836 unique-filename: 1.1.1
4755 transitivePeerDependencies: 4837 transitivePeerDependencies:
4756 - bluebird 4838 - bluebird
@@ -4778,7 +4860,7 @@ packages:
4778 promise-inflight: 1.0.1 4860 promise-inflight: 1.0.1
4779 rimraf: 3.0.2 4861 rimraf: 3.0.2
4780 ssri: 9.0.1 4862 ssri: 9.0.1
4781 tar: 6.2.0 4863 tar: 6.2.1
4782 unique-filename: 2.0.1 4864 unique-filename: 2.0.1
4783 transitivePeerDependencies: 4865 transitivePeerDependencies:
4784 - bluebird 4866 - bluebird
@@ -4868,8 +4950,8 @@ packages:
4868 resolution: {integrity: sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==} 4950 resolution: {integrity: sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==}
4869 dev: false 4951 dev: false
4870 4952
4871 /caniuse-lite@1.0.30001599: 4953 /caniuse-lite@1.0.30001611:
4872 resolution: {integrity: sha512-LRAQHZ4yT1+f9LemSMeqdMpMxZcc4RMWdj4tiFe3G8tNkWK+E58g+/tzotb5cU6TbcVJLr4fySiAW7XmxQvZQA==} 4954 resolution: {integrity: sha512-19NuN1/3PjA3QI8Eki55N8my4LzfkMCRLgCVfrl/slbSAchQfV0+GwjPrK3rq37As4UCLlM/DHajbKkAqbv92Q==}
4873 4955
4874 /caseless@0.12.0: 4956 /caseless@0.12.0:
4875 resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} 4957 resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==}
@@ -5326,8 +5408,8 @@ packages:
5326 engines: {node: '>=0.10.0'} 5408 engines: {node: '>=0.10.0'}
5327 dev: false 5409 dev: false
5328 5410
5329 /core-js-compat@3.34.0: 5411 /core-js-compat@3.36.1:
5330 resolution: {integrity: sha512-4ZIyeNbW/Cn1wkMMDy+mvrRUxrwFNjKwbhCfQpDd+eLgYipDqp8oGFGtLmhh18EDPKA0g3VUBYOxQGGwvWLVpA==} 5412 resolution: {integrity: sha512-Dk997v9ZCt3X/npqzyGdTlq6t7lDBhZwGvV94PKzDArjp7BTRm7WlDAXYd/OWdeFHO8OChQYRJNJvUCqCbrtKA==}
5331 dependencies: 5413 dependencies:
5332 browserslist: 4.23.0 5414 browserslist: 4.23.0
5333 dev: true 5415 dev: true
@@ -5338,7 +5420,7 @@ packages:
5338 /core-util-is@1.0.3: 5420 /core-util-is@1.0.3:
5339 resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} 5421 resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
5340 5422
5341 /cosmiconfig-typescript-loader@5.0.0(@types/node@20.11.30)(cosmiconfig@9.0.0)(typescript@5.4.3): 5423 /cosmiconfig-typescript-loader@5.0.0(@types/node@20.12.7)(cosmiconfig@9.0.0)(typescript@5.4.5):
5342 resolution: {integrity: sha512-+8cK7jRAReYkMwMiG+bxhcNKiHJDM6bR9FD/nGBXOWdMLuYawjF5cGrtLilJ+LGd3ZjCXnJjR5DkfWPoIVlqJA==} 5424 resolution: {integrity: sha512-+8cK7jRAReYkMwMiG+bxhcNKiHJDM6bR9FD/nGBXOWdMLuYawjF5cGrtLilJ+LGd3ZjCXnJjR5DkfWPoIVlqJA==}
5343 engines: {node: '>=v16'} 5425 engines: {node: '>=v16'}
5344 peerDependencies: 5426 peerDependencies:
@@ -5346,10 +5428,10 @@ packages:
5346 cosmiconfig: '>=8.2' 5428 cosmiconfig: '>=8.2'
5347 typescript: '>=4' 5429 typescript: '>=4'
5348 dependencies: 5430 dependencies:
5349 '@types/node': 20.11.30 5431 '@types/node': 20.12.7
5350 cosmiconfig: 9.0.0(typescript@5.4.3) 5432 cosmiconfig: 9.0.0(typescript@5.4.5)
5351 jiti: 1.21.0 5433 jiti: 1.21.0
5352 typescript: 5.4.3 5434 typescript: 5.4.5
5353 dev: true 5435 dev: true
5354 5436
5355 /cosmiconfig@7.1.0: 5437 /cosmiconfig@7.1.0:
@@ -5363,7 +5445,7 @@ packages:
5363 yaml: 1.10.2 5445 yaml: 1.10.2
5364 dev: false 5446 dev: false
5365 5447
5366 /cosmiconfig@9.0.0(typescript@5.4.3): 5448 /cosmiconfig@9.0.0(typescript@5.4.5):
5367 resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==} 5449 resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==}
5368 engines: {node: '>=14'} 5450 engines: {node: '>=14'}
5369 peerDependencies: 5451 peerDependencies:
@@ -5376,7 +5458,7 @@ packages:
5376 import-fresh: 3.3.0 5458 import-fresh: 3.3.0
5377 js-yaml: 4.1.0 5459 js-yaml: 4.1.0
5378 parse-json: 5.2.0 5460 parse-json: 5.2.0
5379 typescript: 5.4.3 5461 typescript: 5.4.5
5380 dev: true 5462 dev: true
5381 5463
5382 /crc-32@1.2.2: 5464 /crc-32@1.2.2:
@@ -5401,7 +5483,7 @@ packages:
5401 dev: true 5483 dev: true
5402 optional: true 5484 optional: true
5403 5485
5404 /create-jest@29.7.0(@types/node@20.11.30)(ts-node@10.9.2): 5486 /create-jest@29.7.0(@types/node@20.12.7)(ts-node@10.9.2):
5405 resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==} 5487 resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==}
5406 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 5488 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
5407 hasBin: true 5489 hasBin: true
@@ -5410,7 +5492,7 @@ packages:
5410 chalk: 4.1.2 5492 chalk: 4.1.2
5411 exit: 0.1.2 5493 exit: 0.1.2
5412 graceful-fs: 4.2.11 5494 graceful-fs: 4.2.11
5413 jest-config: 29.7.0(@types/node@20.11.30)(ts-node@10.9.2) 5495 jest-config: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
5414 jest-util: 29.7.0 5496 jest-util: 29.7.0
5415 prompts: 2.4.2 5497 prompts: 2.4.2
5416 transitivePeerDependencies: 5498 transitivePeerDependencies:
@@ -5522,8 +5604,8 @@ packages:
5522 engines: {node: '>=12'} 5604 engines: {node: '>=12'}
5523 dev: true 5605 dev: true
5524 5606
5525 /darkreader@4.9.80: 5607 /darkreader@4.9.83:
5526 resolution: {integrity: sha512-4MxER8urVmzpf0Z98PGj9Z0nL8ZfAhIZLLcWtdTfy/xM15ciGIOSiRa+0DqJ52euiMBr5CH8DutEVLaDho0naA==} 5608 resolution: {integrity: sha512-8KVSMjhd6DUTpbXeP1t2jXp1UzOYQCj/84vD7Y6fFvSzFoRmJRcFNeeEu+JSxku3eXPwUM/vGNNRdoVulFZ5CQ==}
5527 dev: false 5609 dev: false
5528 5610
5529 /dashdash@1.14.1: 5611 /dashdash@1.14.1:
@@ -5706,6 +5788,11 @@ packages:
5706 resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 5788 resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
5707 dev: true 5789 dev: true
5708 5790
5791 /deepmerge-ts@5.1.0:
5792 resolution: {integrity: sha512-eS8dRJOckyo9maw9Tu5O5RUi/4inFLrnoLkBe3cPfDMx3WZioXtmOew4TXQaxq7Rhl4xjDtR7c6x8nNTxOvbFw==}
5793 engines: {node: '>=16.0.0'}
5794 dev: true
5795
5709 /deepmerge@4.3.0: 5796 /deepmerge@4.3.0:
5710 resolution: {integrity: sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==} 5797 resolution: {integrity: sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==}
5711 engines: {node: '>=0.10.0'} 5798 engines: {node: '>=0.10.0'}
@@ -6047,6 +6134,15 @@ packages:
6047 resolution: {integrity: sha512-C2FQJuk8567P2a2loBNwl5c8kwOTQVMB0capgHtPI7zKwZG16X0UxG+sNYZExQfnJ0PA+ecECA/4LcXxQa2TCA==} 6134 resolution: {integrity: sha512-C2FQJuk8567P2a2loBNwl5c8kwOTQVMB0capgHtPI7zKwZG16X0UxG+sNYZExQfnJ0PA+ecECA/4LcXxQa2TCA==}
6048 dev: false 6135 dev: false
6049 6136
6137 /electron-process-reporter@1.4.0:
6138 resolution: {integrity: sha512-zI5IV7zplV2eHznNbeYtMwATVqXO+g9i2ChpurvGTvExA/rpi7BdSrp38bsTz5tjJLLTz9LmzeSt85uIZ051Qw==}
6139 dependencies:
6140 memoizee: 0.4.15
6141 pidtree: 0.3.1
6142 pidusage: 2.0.16
6143 rxjs: 5.5.12
6144 dev: false
6145
6050 /electron-publish@24.13.1: 6146 /electron-publish@24.13.1:
6051 resolution: {integrity: sha512-2ZgdEqJ8e9D17Hwp5LEq5mLQPjqU3lv/IALvgp+4W8VeNhryfGhYEQC/PgDPMrnWUp+l60Ou5SJLsu+k4mhQ8A==} 6147 resolution: {integrity: sha512-2ZgdEqJ8e9D17Hwp5LEq5mLQPjqU3lv/IALvgp+4W8VeNhryfGhYEQC/PgDPMrnWUp+l60Ou5SJLsu+k4mhQ8A==}
6052 dependencies: 6148 dependencies:
@@ -6098,14 +6194,14 @@ packages:
6098 mkdirp: 0.5.6 6194 mkdirp: 0.5.6
6099 dev: false 6195 dev: false
6100 6196
6101 /electron@29.1.5: 6197 /electron@30.0.1:
6102 resolution: {integrity: sha512-1uWGRw/ffA62lcrklxGUgVxVtOHojsg/nwsYr+/F9cVjipZJn8iPv/ABGIIexhmUqWcho8BqfTJ4osCBa29gBg==} 6198 resolution: {integrity: sha512-iwxkI/n2wBd29NH7TH0ZY8aWGzCoKpzJz+D10u7aGSJi1TV6d4MSM3rWyKvT/UkAHkTKOEgYfUyCa2vWQm8L0g==}
6103 engines: {node: '>= 12.20.55'} 6199 engines: {node: '>= 12.20.55'}
6104 hasBin: true 6200 hasBin: true
6105 requiresBuild: true 6201 requiresBuild: true
6106 dependencies: 6202 dependencies:
6107 '@electron/get': 2.0.3 6203 '@electron/get': 2.0.3
6108 '@types/node': 20.11.30 6204 '@types/node': 20.12.7
6109 extract-zip: 2.0.1 6205 extract-zip: 2.0.1
6110 transitivePeerDependencies: 6206 transitivePeerDependencies:
6111 - supports-color 6207 - supports-color
@@ -6511,26 +6607,26 @@ packages:
6511 resolution: {integrity: sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==} 6607 resolution: {integrity: sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==}
6512 engines: {node: ^10.12.0 || >=12.0.0} 6608 engines: {node: ^10.12.0 || >=12.0.0}
6513 peerDependencies: 6609 peerDependencies:
6514 eslint: ^7.32.0 || ^8.2.0 6610 eslint: ^7.32.0 || ^8.2.0 || ^8.0.0
6515 eslint-plugin-import: ^2.25.2 6611 eslint-plugin-import: ^2.25.2
6516 dependencies: 6612 dependencies:
6517 confusing-browser-globals: 1.0.11 6613 confusing-browser-globals: 1.0.11
6518 eslint: 8.57.0 6614 eslint: 8.57.0
6519 eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.3.1)(eslint@8.57.0) 6615 eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)
6520 object.assign: 4.1.5 6616 object.assign: 4.1.5
6521 object.entries: 1.1.7 6617 object.entries: 1.1.7
6522 semver: 6.3.1 6618 semver: 6.3.1
6523 dev: true 6619 dev: true
6524 6620
6525 /eslint-config-airbnb-typescript@18.0.0(@typescript-eslint/eslint-plugin@7.3.1)(@typescript-eslint/parser@7.3.1)(eslint-plugin-import@2.29.1)(eslint@8.57.0): 6621 /eslint-config-airbnb-typescript@18.0.0(@typescript-eslint/eslint-plugin@7.6.0)(@typescript-eslint/parser@7.6.0)(eslint-plugin-import@2.29.1)(eslint@8.57.0):
6526 resolution: {integrity: sha512-oc+Lxzgzsu8FQyFVa4QFaVKiitTYiiW3frB9KYW5OWdPrqFc7FzxgB20hP4cHMlr+MBzGcLl3jnCOVOydL9mIg==} 6622 resolution: {integrity: sha512-oc+Lxzgzsu8FQyFVa4QFaVKiitTYiiW3frB9KYW5OWdPrqFc7FzxgB20hP4cHMlr+MBzGcLl3jnCOVOydL9mIg==}
6527 peerDependencies: 6623 peerDependencies:
6528 '@typescript-eslint/eslint-plugin': ^7.0.0 6624 '@typescript-eslint/eslint-plugin': ^7.0.0
6529 '@typescript-eslint/parser': ^7.0.0 6625 '@typescript-eslint/parser': ^7.0.0
6530 eslint: ^8.56.0 6626 eslint: ^8.56.0 || ^8.0.0
6531 dependencies: 6627 dependencies:
6532 '@typescript-eslint/eslint-plugin': 7.3.1(@typescript-eslint/parser@7.3.1)(eslint@8.57.0)(typescript@5.4.3) 6628 '@typescript-eslint/eslint-plugin': 7.6.0(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5)
6533 '@typescript-eslint/parser': 7.3.1(eslint@8.57.0)(typescript@5.4.3) 6629 '@typescript-eslint/parser': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6534 eslint: 8.57.0 6630 eslint: 8.57.0
6535 eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.1)(eslint@8.57.0) 6631 eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.1)(eslint@8.57.0)
6536 transitivePeerDependencies: 6632 transitivePeerDependencies:
@@ -6541,7 +6637,7 @@ packages:
6541 resolution: {integrity: sha512-T75QYQVQX57jiNgpF9r1KegMICE94VYwoFQyMGhrvc+lB8YF2E/M/PYDaQe1AJcWaEgqLE+ErXV1Og/+6Vyzew==} 6637 resolution: {integrity: sha512-T75QYQVQX57jiNgpF9r1KegMICE94VYwoFQyMGhrvc+lB8YF2E/M/PYDaQe1AJcWaEgqLE+ErXV1Og/+6Vyzew==}
6542 engines: {node: ^10.12.0 || ^12.22.0 || ^14.17.0 || >=16.0.0} 6638 engines: {node: ^10.12.0 || ^12.22.0 || ^14.17.0 || >=16.0.0}
6543 peerDependencies: 6639 peerDependencies:
6544 eslint: ^7.32.0 || ^8.2.0 6640 eslint: ^7.32.0 || ^8.2.0 || ^8.0.0
6545 eslint-plugin-import: ^2.25.3 6641 eslint-plugin-import: ^2.25.3
6546 eslint-plugin-jsx-a11y: ^6.5.1 6642 eslint-plugin-jsx-a11y: ^6.5.1
6547 eslint-plugin-react: ^7.28.0 6643 eslint-plugin-react: ^7.28.0
@@ -6549,7 +6645,7 @@ packages:
6549 dependencies: 6645 dependencies:
6550 eslint: 8.57.0 6646 eslint: 8.57.0
6551 eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.1)(eslint@8.57.0) 6647 eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.1)(eslint@8.57.0)
6552 eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.3.1)(eslint@8.57.0) 6648 eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)
6553 eslint-plugin-jsx-a11y: 6.8.0(eslint@8.57.0) 6649 eslint-plugin-jsx-a11y: 6.8.0(eslint@8.57.0)
6554 eslint-plugin-react: 7.34.1(eslint@8.57.0) 6650 eslint-plugin-react: 7.34.1(eslint@8.57.0)
6555 eslint-plugin-react-hooks: 4.6.0(eslint@8.57.0) 6651 eslint-plugin-react-hooks: 4.6.0(eslint@8.57.0)
@@ -6561,7 +6657,7 @@ packages:
6561 resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} 6657 resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==}
6562 hasBin: true 6658 hasBin: true
6563 peerDependencies: 6659 peerDependencies:
6564 eslint: '>=7.0.0' 6660 eslint: '>=7.0.0 || ^8.0.0'
6565 dependencies: 6661 dependencies:
6566 eslint: 8.57.0 6662 eslint: 8.57.0
6567 dev: true 6663 dev: true
@@ -6576,7 +6672,7 @@ packages:
6576 - supports-color 6672 - supports-color
6577 dev: true 6673 dev: true
6578 6674
6579 /eslint-module-utils@2.8.0(@typescript-eslint/parser@7.3.1)(eslint-import-resolver-node@0.3.9)(eslint@8.57.0): 6675 /eslint-module-utils@2.8.0(@typescript-eslint/parser@7.6.0)(eslint-import-resolver-node@0.3.9)(eslint@8.57.0):
6580 resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} 6676 resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==}
6581 engines: {node: '>=4'} 6677 engines: {node: '>=4'}
6582 peerDependencies: 6678 peerDependencies:
@@ -6597,7 +6693,7 @@ packages:
6597 eslint-import-resolver-webpack: 6693 eslint-import-resolver-webpack:
6598 optional: true 6694 optional: true
6599 dependencies: 6695 dependencies:
6600 '@typescript-eslint/parser': 7.3.1(eslint@8.57.0)(typescript@5.4.3) 6696 '@typescript-eslint/parser': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6601 debug: 3.2.7 6697 debug: 3.2.7
6602 eslint: 8.57.0 6698 eslint: 8.57.0
6603 eslint-import-resolver-node: 0.3.9 6699 eslint-import-resolver-node: 0.3.9
@@ -6605,17 +6701,17 @@ packages:
6605 - supports-color 6701 - supports-color
6606 dev: true 6702 dev: true
6607 6703
6608 /eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.3.1)(eslint@8.57.0): 6704 /eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.6.0)(eslint@8.57.0):
6609 resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} 6705 resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==}
6610 engines: {node: '>=4'} 6706 engines: {node: '>=4'}
6611 peerDependencies: 6707 peerDependencies:
6612 '@typescript-eslint/parser': '*' 6708 '@typescript-eslint/parser': '*'
6613 eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 6709 eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^8.0.0
6614 peerDependenciesMeta: 6710 peerDependenciesMeta:
6615 '@typescript-eslint/parser': 6711 '@typescript-eslint/parser':
6616 optional: true 6712 optional: true
6617 dependencies: 6713 dependencies:
6618 '@typescript-eslint/parser': 7.3.1(eslint@8.57.0)(typescript@5.4.3) 6714 '@typescript-eslint/parser': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6619 array-includes: 3.1.7 6715 array-includes: 3.1.7
6620 array.prototype.findlastindex: 1.2.3 6716 array.prototype.findlastindex: 1.2.3
6621 array.prototype.flat: 1.3.2 6717 array.prototype.flat: 1.3.2
@@ -6624,7 +6720,7 @@ packages:
6624 doctrine: 2.1.0 6720 doctrine: 2.1.0
6625 eslint: 8.57.0 6721 eslint: 8.57.0
6626 eslint-import-resolver-node: 0.3.9 6722 eslint-import-resolver-node: 0.3.9
6627 eslint-module-utils: 2.8.0(@typescript-eslint/parser@7.3.1)(eslint-import-resolver-node@0.3.9)(eslint@8.57.0) 6723 eslint-module-utils: 2.8.0(@typescript-eslint/parser@7.6.0)(eslint-import-resolver-node@0.3.9)(eslint@8.57.0)
6628 hasown: 2.0.0 6724 hasown: 2.0.0
6629 is-core-module: 2.13.1 6725 is-core-module: 2.13.1
6630 is-glob: 4.0.3 6726 is-glob: 4.0.3
@@ -6640,7 +6736,7 @@ packages:
6640 - supports-color 6736 - supports-color
6641 dev: true 6737 dev: true
6642 6738
6643 /eslint-plugin-jest@27.9.0(@typescript-eslint/eslint-plugin@7.3.1)(eslint@8.57.0)(jest@29.7.0)(typescript@5.4.3): 6739 /eslint-plugin-jest@27.9.0(@typescript-eslint/eslint-plugin@7.6.0)(eslint@8.57.0)(jest@29.7.0)(typescript@5.4.5):
6644 resolution: {integrity: sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug==} 6740 resolution: {integrity: sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug==}
6645 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 6741 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
6646 peerDependencies: 6742 peerDependencies:
@@ -6653,10 +6749,10 @@ packages:
6653 jest: 6749 jest:
6654 optional: true 6750 optional: true
6655 dependencies: 6751 dependencies:
6656 '@typescript-eslint/eslint-plugin': 7.3.1(@typescript-eslint/parser@7.3.1)(eslint@8.57.0)(typescript@5.4.3) 6752 '@typescript-eslint/eslint-plugin': 7.6.0(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5)
6657 '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.4.3) 6753 '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.4.5)
6658 eslint: 8.57.0 6754 eslint: 8.57.0
6659 jest: 29.7.0(@types/node@20.11.30)(ts-node@10.9.2) 6755 jest: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
6660 transitivePeerDependencies: 6756 transitivePeerDependencies:
6661 - supports-color 6757 - supports-color
6662 - typescript 6758 - typescript
@@ -6666,7 +6762,7 @@ packages:
6666 resolution: {integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==} 6762 resolution: {integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==}
6667 engines: {node: '>=4.0'} 6763 engines: {node: '>=4.0'}
6668 peerDependencies: 6764 peerDependencies:
6669 eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 6765 eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^8.0.0
6670 dependencies: 6766 dependencies:
6671 '@babel/runtime': 7.23.5 6767 '@babel/runtime': 7.23.5
6672 aria-query: 5.3.0 6768 aria-query: 5.3.0
@@ -6692,7 +6788,7 @@ packages:
6692 engines: {node: ^14.18.0 || >=16.0.0} 6788 engines: {node: ^14.18.0 || >=16.0.0}
6693 peerDependencies: 6789 peerDependencies:
6694 '@types/eslint': '>=8.0.0' 6790 '@types/eslint': '>=8.0.0'
6695 eslint: '>=8.0.0' 6791 eslint: '>=8.0.0 || ^8.0.0'
6696 eslint-config-prettier: '*' 6792 eslint-config-prettier: '*'
6697 prettier: '>=3.0.0' 6793 prettier: '>=3.0.0'
6698 peerDependenciesMeta: 6794 peerDependenciesMeta:
@@ -6708,20 +6804,127 @@ packages:
6708 synckit: 0.8.6 6804 synckit: 0.8.6
6709 dev: true 6805 dev: true
6710 6806
6807 /eslint-plugin-react-core@1.5.8(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5):
6808 resolution: {integrity: sha512-AWF0N07w3Tpkq2VKiZdvf1ItdQuYw/nJFmcs1ZZZOKq6eNSYpsSzKDpurwjAyMl4+WE+xL2b6lrUuVawfNpkMQ==}
6809 engines: {bun: '>=1.0.15', node: '>=18.18.0'}
6810 peerDependencies:
6811 '@typescript-eslint/parser': '>=7.5.0 || ^7.0.0'
6812 eslint: '>=9.0.0 || ^8.0.0'
6813 typescript: '>=5.3.3'
6814 dependencies:
6815 '@eslint-react/ast': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6816 '@eslint-react/core': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6817 '@eslint-react/jsx': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6818 '@eslint-react/shared': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6819 '@eslint-react/tools': 1.5.8
6820 '@eslint-react/types': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6821 '@eslint-react/var': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6822 '@typescript-eslint/parser': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6823 '@typescript-eslint/scope-manager': 7.6.0
6824 '@typescript-eslint/type-utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6825 '@typescript-eslint/types': 7.6.0
6826 '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6827 eslint: 8.57.0
6828 string-ts: 2.1.0
6829 ts-api-utils: 1.3.0(typescript@5.4.5)
6830 typescript: 5.4.5
6831 transitivePeerDependencies:
6832 - supports-color
6833 dev: true
6834
6835 /eslint-plugin-react-dom@1.5.8(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5):
6836 resolution: {integrity: sha512-xPCfuSvdccCnzyMHeBWCepi+SniXf5IszcQB0951Chvb4pSkwyemuN0xy4ux4cu0i5wyHzQZJk3jBqM1b49+YQ==}
6837 engines: {bun: '>=1.0.15', node: '>=18.18.0'}
6838 peerDependencies:
6839 '@typescript-eslint/parser': '>=7.5.0 || ^7.0.0'
6840 eslint: '>=9.0.0 || ^8.0.0'
6841 typescript: '>=5.3.3'
6842 dependencies:
6843 '@eslint-react/ast': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6844 '@eslint-react/core': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6845 '@eslint-react/jsx': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6846 '@eslint-react/shared': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6847 '@eslint-react/tools': 1.5.8
6848 '@eslint-react/types': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6849 '@eslint-react/var': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6850 '@typescript-eslint/parser': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6851 '@typescript-eslint/scope-manager': 7.6.0
6852 '@typescript-eslint/types': 7.6.0
6853 '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6854 eslint: 8.57.0
6855 string-ts: 2.1.0
6856 typescript: 5.4.5
6857 transitivePeerDependencies:
6858 - supports-color
6859 dev: true
6860
6861 /eslint-plugin-react-hooks-extra@1.5.8(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5):
6862 resolution: {integrity: sha512-GDitayVrF51bDH+ASs9QCvw6YZOn5A99iQMH9wKCGlaGA+mUD0vFt8EHW4kALjmBNSjA/y5ZZ3/435mGwrIv8Q==}
6863 engines: {bun: '>=1.0.15', node: '>=18.18.0'}
6864 peerDependencies:
6865 '@typescript-eslint/parser': '>=7.5.0 || ^7.0.0'
6866 eslint: '>=9.0.0 || ^8.0.0'
6867 typescript: '>=5.3.3'
6868 dependencies:
6869 '@eslint-react/ast': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6870 '@eslint-react/core': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6871 '@eslint-react/jsx': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6872 '@eslint-react/shared': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6873 '@eslint-react/tools': 1.5.8
6874 '@eslint-react/types': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6875 '@eslint-react/var': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6876 '@typescript-eslint/parser': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6877 '@typescript-eslint/scope-manager': 7.6.0
6878 '@typescript-eslint/type-utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6879 '@typescript-eslint/types': 7.6.0
6880 '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6881 eslint: 8.57.0
6882 string-ts: 2.1.0
6883 typescript: 5.4.5
6884 transitivePeerDependencies:
6885 - supports-color
6886 dev: true
6887
6711 /eslint-plugin-react-hooks@4.6.0(eslint@8.57.0): 6888 /eslint-plugin-react-hooks@4.6.0(eslint@8.57.0):
6712 resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} 6889 resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==}
6713 engines: {node: '>=10'} 6890 engines: {node: '>=10'}
6714 peerDependencies: 6891 peerDependencies:
6715 eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 6892 eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^8.0.0
6716 dependencies: 6893 dependencies:
6717 eslint: 8.57.0 6894 eslint: 8.57.0
6718 dev: true 6895 dev: true
6719 6896
6897 /eslint-plugin-react-naming-convention@1.5.8(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5):
6898 resolution: {integrity: sha512-1pZNudmoiaB4ZnfGauMoi9at4pSmzb0EMidfDXybmev09fEuO7mBUfpks/Fjs1PGDGogEhe0a9KQIVTPe4Ui2w==}
6899 engines: {bun: '>=1.0.15', node: '>=18.18.0'}
6900 peerDependencies:
6901 '@typescript-eslint/parser': '>=7.5.0 || ^7.0.0'
6902 eslint: '>=9.0.0 || ^8.0.0'
6903 typescript: '>=5.3.3'
6904 dependencies:
6905 '@eslint-react/ast': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6906 '@eslint-react/core': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6907 '@eslint-react/jsx': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6908 '@eslint-react/shared': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6909 '@eslint-react/tools': 1.5.8
6910 '@eslint-react/types': 1.5.8(eslint@8.57.0)(typescript@5.4.5)
6911 '@typescript-eslint/parser': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6912 '@typescript-eslint/scope-manager': 7.6.0
6913 '@typescript-eslint/type-utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6914 '@typescript-eslint/types': 7.6.0
6915 '@typescript-eslint/utils': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6916 eslint: 8.57.0
6917 string-ts: 2.1.0
6918 typescript: 5.4.5
6919 transitivePeerDependencies:
6920 - supports-color
6921 dev: true
6922
6720 /eslint-plugin-react@7.34.1(eslint@8.57.0): 6923 /eslint-plugin-react@7.34.1(eslint@8.57.0):
6721 resolution: {integrity: sha512-N97CxlouPT1AHt8Jn0mhhN2RrADlUAsk1/atcT2KyA/l9Q/E6ll7OIGwNumFmWfZ9skV3XXccYS19h80rHtgkw==} 6924 resolution: {integrity: sha512-N97CxlouPT1AHt8Jn0mhhN2RrADlUAsk1/atcT2KyA/l9Q/E6ll7OIGwNumFmWfZ9skV3XXccYS19h80rHtgkw==}
6722 engines: {node: '>=4'} 6925 engines: {node: '>=4'}
6723 peerDependencies: 6926 peerDependencies:
6724 eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 6927 eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^8.0.0
6725 dependencies: 6928 dependencies:
6726 array-includes: 3.1.7 6929 array-includes: 3.1.7
6727 array.prototype.findlast: 1.2.5 6930 array.prototype.findlast: 1.2.5
@@ -6744,7 +6947,7 @@ packages:
6744 string.prototype.matchall: 4.0.11 6947 string.prototype.matchall: 4.0.11
6745 dev: true 6948 dev: true
6746 6949
6747 /eslint-plugin-sonar@0.13.2(@babel/core@7.24.3)(@typescript-eslint/parser@7.3.1)(eslint@8.57.0)(typescript@5.4.3): 6950 /eslint-plugin-sonar@0.13.2(@babel/core@7.24.4)(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5):
6748 resolution: {integrity: sha512-7mZkk4/E2tGtIi3OCNCTmEWthweWzoAj9YcsxxIDI38r7q4RDusWDpsdGHPZXp/+QU8ZKkvmE11G4DtJW+k1kg==} 6951 resolution: {integrity: sha512-7mZkk4/E2tGtIi3OCNCTmEWthweWzoAj9YcsxxIDI38r7q4RDusWDpsdGHPZXp/+QU8ZKkvmE11G4DtJW+k1kg==}
6749 engines: {node: '>=14'} 6952 engines: {node: '>=14'}
6750 peerDependencies: 6953 peerDependencies:
@@ -6753,11 +6956,11 @@ packages:
6753 eslint: ^8.0.0 6956 eslint: ^8.0.0
6754 typescript: ^4.0.0 || ^5.0.0 6957 typescript: ^4.0.0 || ^5.0.0
6755 dependencies: 6958 dependencies:
6756 '@babel/core': 7.24.3 6959 '@babel/core': 7.24.4
6757 '@babel/eslint-parser': 7.23.10(@babel/core@7.24.3)(eslint@8.57.0) 6960 '@babel/eslint-parser': 7.23.10(@babel/core@7.24.4)(eslint@8.57.0)
6758 '@eslint-community/regexpp': 4.10.0 6961 '@eslint-community/regexpp': 4.10.0
6759 '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@7.3.1)(eslint@8.57.0)(typescript@5.4.3) 6962 '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@7.6.0)(eslint@8.57.0)(typescript@5.4.5)
6760 '@typescript-eslint/parser': 7.3.1(eslint@8.57.0)(typescript@5.4.3) 6963 '@typescript-eslint/parser': 7.6.0(eslint@8.57.0)(typescript@5.4.5)
6761 builtin-modules: 3.3.0 6964 builtin-modules: 3.3.0
6762 bytes: 3.1.2 6965 bytes: 3.1.2
6763 eslint: 8.57.0 6966 eslint: 8.57.0
@@ -6770,7 +6973,7 @@ packages:
6770 minimatch: 9.0.3 6973 minimatch: 9.0.3
6771 scslre: 0.3.0 6974 scslre: 0.3.0
6772 tmp: 0.2.1 6975 tmp: 0.2.1
6773 typescript: 5.4.3 6976 typescript: 5.4.5
6774 transitivePeerDependencies: 6977 transitivePeerDependencies:
6775 - supports-color 6978 - supports-color
6776 dev: true 6979 dev: true
@@ -6784,18 +6987,18 @@ packages:
6784 eslint: 8.57.0 6987 eslint: 8.57.0
6785 dev: true 6988 dev: true
6786 6989
6787 /eslint-plugin-unicorn@51.0.1(eslint@8.57.0): 6990 /eslint-plugin-unicorn@52.0.0(eslint@8.57.0):
6788 resolution: {integrity: sha512-MuR/+9VuB0fydoI0nIn2RDA5WISRn4AsJyNSaNKLVwie9/ONvQhxOBbkfSICBPnzKrB77Fh6CZZXjgTt/4Latw==} 6991 resolution: {integrity: sha512-1Yzm7/m+0R4djH0tjDjfVei/ju2w3AzUGjG6q8JnuNIL5xIwsflyCooW5sfBvQp2pMYQFSWWCFONsjCax1EHng==}
6789 engines: {node: '>=16'} 6992 engines: {node: '>=16'}
6790 peerDependencies: 6993 peerDependencies:
6791 eslint: '>=8.56.0' 6994 eslint: '>=8.56.0 || ^8.0.0'
6792 dependencies: 6995 dependencies:
6793 '@babel/helper-validator-identifier': 7.22.20 6996 '@babel/helper-validator-identifier': 7.22.20
6794 '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) 6997 '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
6795 '@eslint/eslintrc': 2.1.4 6998 '@eslint/eslintrc': 2.1.4
6796 ci-info: 4.0.0 6999 ci-info: 4.0.0
6797 clean-regexp: 1.0.0 7000 clean-regexp: 1.0.0
6798 core-js-compat: 3.34.0 7001 core-js-compat: 3.36.1
6799 eslint: 8.57.0 7002 eslint: 8.57.0
6800 esquery: 1.5.0 7003 esquery: 1.5.0
6801 indent-string: 4.0.0 7004 indent-string: 4.0.0
@@ -8187,6 +8390,11 @@ packages:
8187 engines: {node: '>= 4'} 8390 engines: {node: '>= 4'}
8188 dev: true 8391 dev: true
8189 8392
8393 /ignore@5.3.1:
8394 resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==}
8395 engines: {node: '>= 4'}
8396 dev: true
8397
8190 /immutable@4.3.2: 8398 /immutable@4.3.2:
8191 resolution: {integrity: sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==} 8399 resolution: {integrity: sha512-oGXzbEDem9OOpDWZu88jGiYCvIsLHMvGw+8OXlpsvTFvIQplQbjg1B1cvKg8f7Hoch6+NGjpPsH1Fr+Mc2D1aA==}
8192 8400
@@ -8898,7 +9106,7 @@ packages:
8898 '@jest/expect': 29.7.0 9106 '@jest/expect': 29.7.0
8899 '@jest/test-result': 29.7.0 9107 '@jest/test-result': 29.7.0
8900 '@jest/types': 29.6.3 9108 '@jest/types': 29.6.3
8901 '@types/node': 20.11.30 9109 '@types/node': 20.12.7
8902 chalk: 4.1.2 9110 chalk: 4.1.2
8903 co: 4.6.0 9111 co: 4.6.0
8904 dedent: 1.5.1 9112 dedent: 1.5.1
@@ -8919,7 +9127,7 @@ packages:
8919 - supports-color 9127 - supports-color
8920 dev: true 9128 dev: true
8921 9129
8922 /jest-cli@29.7.0(@types/node@20.11.30)(ts-node@10.9.2): 9130 /jest-cli@29.7.0(@types/node@20.12.7)(ts-node@10.9.2):
8923 resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==} 9131 resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==}
8924 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 9132 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
8925 hasBin: true 9133 hasBin: true
@@ -8933,10 +9141,10 @@ packages:
8933 '@jest/test-result': 29.7.0 9141 '@jest/test-result': 29.7.0
8934 '@jest/types': 29.6.3 9142 '@jest/types': 29.6.3
8935 chalk: 4.1.2 9143 chalk: 4.1.2
8936 create-jest: 29.7.0(@types/node@20.11.30)(ts-node@10.9.2) 9144 create-jest: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
8937 exit: 0.1.2 9145 exit: 0.1.2
8938 import-local: 3.1.0 9146 import-local: 3.1.0
8939 jest-config: 29.7.0(@types/node@20.11.30)(ts-node@10.9.2) 9147 jest-config: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
8940 jest-util: 29.7.0 9148 jest-util: 29.7.0
8941 jest-validate: 29.7.0 9149 jest-validate: 29.7.0
8942 yargs: 17.7.2 9150 yargs: 17.7.2
@@ -8947,7 +9155,7 @@ packages:
8947 - ts-node 9155 - ts-node
8948 dev: true 9156 dev: true
8949 9157
8950 /jest-config@29.7.0(@types/node@20.11.30)(ts-node@10.9.2): 9158 /jest-config@29.7.0(@types/node@20.12.7)(ts-node@10.9.2):
8951 resolution: {integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==} 9159 resolution: {integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==}
8952 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 9160 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
8953 peerDependencies: 9161 peerDependencies:
@@ -8962,7 +9170,7 @@ packages:
8962 '@babel/core': 7.23.5 9170 '@babel/core': 7.23.5
8963 '@jest/test-sequencer': 29.7.0 9171 '@jest/test-sequencer': 29.7.0
8964 '@jest/types': 29.6.3 9172 '@jest/types': 29.6.3
8965 '@types/node': 20.11.30 9173 '@types/node': 20.12.7
8966 babel-jest: 29.7.0(@babel/core@7.23.5) 9174 babel-jest: 29.7.0(@babel/core@7.23.5)
8967 chalk: 4.1.2 9175 chalk: 4.1.2
8968 ci-info: 3.8.0 9176 ci-info: 3.8.0
@@ -8982,7 +9190,7 @@ packages:
8982 pretty-format: 29.7.0 9190 pretty-format: 29.7.0
8983 slash: 3.0.0 9191 slash: 3.0.0
8984 strip-json-comments: 3.1.1 9192 strip-json-comments: 3.1.1
8985 ts-node: 10.9.2(@types/node@20.11.30)(typescript@5.4.3) 9193 ts-node: 10.9.2(@types/node@20.12.7)(typescript@5.4.5)
8986 transitivePeerDependencies: 9194 transitivePeerDependencies:
8987 - babel-plugin-macros 9195 - babel-plugin-macros
8988 - supports-color 9196 - supports-color
@@ -9023,7 +9231,7 @@ packages:
9023 '@jest/environment': 29.7.0 9231 '@jest/environment': 29.7.0
9024 '@jest/fake-timers': 29.7.0 9232 '@jest/fake-timers': 29.7.0
9025 '@jest/types': 29.6.3 9233 '@jest/types': 29.6.3
9026 '@types/node': 20.11.30 9234 '@types/node': 20.12.7
9027 jest-mock: 29.7.0 9235 jest-mock: 29.7.0
9028 jest-util: 29.7.0 9236 jest-util: 29.7.0
9029 dev: true 9237 dev: true
@@ -9039,7 +9247,7 @@ packages:
9039 dependencies: 9247 dependencies:
9040 '@jest/types': 29.6.3 9248 '@jest/types': 29.6.3
9041 '@types/graceful-fs': 4.1.5 9249 '@types/graceful-fs': 4.1.5
9042 '@types/node': 20.11.30 9250 '@types/node': 20.12.7
9043 anymatch: 3.1.3 9251 anymatch: 3.1.3
9044 fb-watchman: 2.0.2 9252 fb-watchman: 2.0.2
9045 graceful-fs: 4.2.11 9253 graceful-fs: 4.2.11
@@ -9090,7 +9298,7 @@ packages:
9090 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 9298 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
9091 dependencies: 9299 dependencies:
9092 '@jest/types': 29.6.3 9300 '@jest/types': 29.6.3
9093 '@types/node': 20.11.30 9301 '@types/node': 20.12.7
9094 jest-util: 29.7.0 9302 jest-util: 29.7.0
9095 dev: true 9303 dev: true
9096 9304
@@ -9145,7 +9353,7 @@ packages:
9145 '@jest/test-result': 29.7.0 9353 '@jest/test-result': 29.7.0
9146 '@jest/transform': 29.7.0 9354 '@jest/transform': 29.7.0
9147 '@jest/types': 29.6.3 9355 '@jest/types': 29.6.3
9148 '@types/node': 20.11.30 9356 '@types/node': 20.12.7
9149 chalk: 4.1.2 9357 chalk: 4.1.2
9150 emittery: 0.13.1 9358 emittery: 0.13.1
9151 graceful-fs: 4.2.11 9359 graceful-fs: 4.2.11
@@ -9176,7 +9384,7 @@ packages:
9176 '@jest/test-result': 29.7.0 9384 '@jest/test-result': 29.7.0
9177 '@jest/transform': 29.7.0 9385 '@jest/transform': 29.7.0
9178 '@jest/types': 29.6.3 9386 '@jest/types': 29.6.3
9179 '@types/node': 20.11.30 9387 '@types/node': 20.12.7
9180 chalk: 4.1.2 9388 chalk: 4.1.2
9181 cjs-module-lexer: 1.2.2 9389 cjs-module-lexer: 1.2.2
9182 collect-v8-coverage: 1.0.1 9390 collect-v8-coverage: 1.0.1
@@ -9228,7 +9436,7 @@ packages:
9228 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 9436 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
9229 dependencies: 9437 dependencies:
9230 '@jest/types': 29.6.3 9438 '@jest/types': 29.6.3
9231 '@types/node': 20.11.30 9439 '@types/node': 20.12.7
9232 chalk: 4.1.2 9440 chalk: 4.1.2
9233 ci-info: 3.8.0 9441 ci-info: 3.8.0
9234 graceful-fs: 4.2.11 9442 graceful-fs: 4.2.11
@@ -9253,7 +9461,7 @@ packages:
9253 dependencies: 9461 dependencies:
9254 '@jest/test-result': 29.7.0 9462 '@jest/test-result': 29.7.0
9255 '@jest/types': 29.6.3 9463 '@jest/types': 29.6.3
9256 '@types/node': 20.11.30 9464 '@types/node': 20.12.7
9257 ansi-escapes: 4.3.2 9465 ansi-escapes: 4.3.2
9258 chalk: 4.1.2 9466 chalk: 4.1.2
9259 emittery: 0.13.1 9467 emittery: 0.13.1
@@ -9265,13 +9473,13 @@ packages:
9265 resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} 9473 resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==}
9266 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 9474 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
9267 dependencies: 9475 dependencies:
9268 '@types/node': 20.11.30 9476 '@types/node': 20.12.7
9269 jest-util: 29.7.0 9477 jest-util: 29.7.0
9270 merge-stream: 2.0.0 9478 merge-stream: 2.0.0
9271 supports-color: 8.1.1 9479 supports-color: 8.1.1
9272 dev: true 9480 dev: true
9273 9481
9274 /jest@29.7.0(@types/node@20.11.30)(ts-node@10.9.2): 9482 /jest@29.7.0(@types/node@20.12.7)(ts-node@10.9.2):
9275 resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==} 9483 resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==}
9276 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 9484 engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
9277 hasBin: true 9485 hasBin: true
@@ -9284,7 +9492,7 @@ packages:
9284 '@jest/core': 29.7.0(ts-node@10.9.2) 9492 '@jest/core': 29.7.0(ts-node@10.9.2)
9285 '@jest/types': 29.6.3 9493 '@jest/types': 29.6.3
9286 import-local: 3.1.0 9494 import-local: 3.1.0
9287 jest-cli: 29.7.0(@types/node@20.11.30)(ts-node@10.9.2) 9495 jest-cli: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
9288 transitivePeerDependencies: 9496 transitivePeerDependencies:
9289 - '@types/node' 9497 - '@types/node'
9290 - babel-plugin-macros 9498 - babel-plugin-macros
@@ -9355,7 +9563,7 @@ packages:
9355 resolution: {integrity: sha512-TuDuZ5KrgyjoCIppdPXBMqiGfota55+odM+j2cQ5rt/XKyKmqGB3Whz1F8SN8+60yYGy/Nu5lbRZ+rx8kBIvBw==} 9563 resolution: {integrity: sha512-TuDuZ5KrgyjoCIppdPXBMqiGfota55+odM+j2cQ5rt/XKyKmqGB3Whz1F8SN8+60yYGy/Nu5lbRZ+rx8kBIvBw==}
9356 engines: {node: '>=10'} 9564 engines: {node: '>=10'}
9357 dependencies: 9565 dependencies:
9358 '@babel/runtime': 7.23.9 9566 '@babel/runtime': 7.24.4
9359 chalk: 4.1.2 9567 chalk: 4.1.2
9360 pegjs: 0.10.0 9568 pegjs: 0.10.0
9361 dev: true 9569 dev: true
@@ -9411,22 +9619,6 @@ packages:
9411 engines: {'0': node >= 0.2.0} 9619 engines: {'0': node >= 0.2.0}
9412 dev: true 9620 dev: true
9413 9621
9414 /jsonwebtoken@8.5.1:
9415 resolution: {integrity: sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==}
9416 engines: {node: '>=4', npm: '>=1.4.28'}
9417 dependencies:
9418 jws: 3.2.2
9419 lodash.includes: 4.3.0
9420 lodash.isboolean: 3.0.3
9421 lodash.isinteger: 4.0.4
9422 lodash.isnumber: 3.0.3
9423 lodash.isplainobject: 4.0.6
9424 lodash.isstring: 4.0.1
9425 lodash.once: 4.1.1
9426 ms: 2.1.3
9427 semver: 5.7.2
9428 dev: false
9429
9430 /jsonwebtoken@9.0.2: 9622 /jsonwebtoken@9.0.2:
9431 resolution: {integrity: sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==} 9623 resolution: {integrity: sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==}
9432 engines: {node: '>=12', npm: '>=6'} 9624 engines: {node: '>=12', npm: '>=6'}
@@ -10089,8 +10281,8 @@ packages:
10089 object-visit: 1.0.1 10281 object-visit: 1.0.1
10090 dev: false 10282 dev: false
10091 10283
10092 /markdown-to-jsx@7.4.4(react@18.2.0): 10284 /markdown-to-jsx@7.4.6(react@18.2.0):
10093 resolution: {integrity: sha512-R9SGyfV2zsQx25YIYImACpiQ8dQe617CNyoE1wLst4wFHtiBGG3SEtJDlI1bt9SeotIcbITbVy9+ieQFWfEoQw==} 10285 resolution: {integrity: sha512-3cyNxI/PwotvYkjg6KmFaN1uyN/7NqETteD2DobBB8ro/FR9jsHIh4Fi7ywAz0s9QHRKCmGlOUggs5GxSWACKA==}
10094 engines: {node: '>= 10'} 10286 engines: {node: '>= 10'}
10095 peerDependencies: 10287 peerDependencies:
10096 react: '>= 0.14.0' 10288 react: '>= 0.14.0'
@@ -10150,6 +10342,10 @@ packages:
10150 engines: {node: '>= 8'} 10342 engines: {node: '>= 8'}
10151 dev: true 10343 dev: true
10152 10344
10345 /micro-memoize@4.1.2:
10346 resolution: {integrity: sha512-+HzcV2H+rbSJzApgkj0NdTakkC+bnyeiUxgT6/m7mjcz1CmM22KYFKp+EVj1sWe4UYcnriJr5uqHQD/gMHLD+g==}
10347 dev: true
10348
10153 /micromatch@3.1.10: 10349 /micromatch@3.1.10:
10154 resolution: {integrity: sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==} 10350 resolution: {integrity: sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==}
10155 engines: {node: '>=0.10.0'} 10351 engines: {node: '>=0.10.0'}
@@ -10246,6 +10442,13 @@ packages:
10246 brace-expansion: 2.0.1 10442 brace-expansion: 2.0.1
10247 dev: true 10443 dev: true
10248 10444
10445 /minimatch@9.0.4:
10446 resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==}
10447 engines: {node: '>=16 || 14 >=14.17'}
10448 dependencies:
10449 brace-expansion: 2.0.1
10450 dev: true
10451
10249 /minimist@1.2.8: 10452 /minimist@1.2.8:
10250 resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} 10453 resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
10251 10454
@@ -10367,26 +10570,26 @@ packages:
10367 engines: {node: '>=10'} 10570 engines: {node: '>=10'}
10368 hasBin: true 10571 hasBin: true
10369 10572
10370 /mobx-localstorage@1.2.0(mobx@6.12.0): 10573 /mobx-localstorage@1.2.0(mobx@6.12.3):
10371 resolution: {integrity: sha512-fb03qyQfjnDIOW28qdV+h9AZ8qtJCZnzNgsej0YxCYwAR2ViykKxgHThikgOi+zJzJj5ljxWyvjGrr6CoptcFw==} 10574 resolution: {integrity: sha512-fb03qyQfjnDIOW28qdV+h9AZ8qtJCZnzNgsej0YxCYwAR2ViykKxgHThikgOi+zJzJj5ljxWyvjGrr6CoptcFw==}
10372 peerDependencies: 10575 peerDependencies:
10373 mobx: '>=3' 10576 mobx: '>=3'
10374 dependencies: 10577 dependencies:
10375 mobx: 6.12.0 10578 mobx: 6.12.3
10376 reactive-localstorage: 0.0.2 10579 reactive-localstorage: 0.0.2
10377 dev: false 10580 dev: false
10378 10581
10379 /mobx-react-form@6.9.4(mobx@6.12.0): 10582 /mobx-react-form@6.9.4(mobx@6.12.3):
10380 resolution: {integrity: sha512-Q5V5I+EexsNk3TI6hl1yINqG9V6KTtoEJMrMsArcuLpYA+JWP/41Jq6e8lnmGAInq+GH+MzyNPwgvz3XGUXEaA==} 10583 resolution: {integrity: sha512-Q5V5I+EexsNk3TI6hl1yINqG9V6KTtoEJMrMsArcuLpYA+JWP/41Jq6e8lnmGAInq+GH+MzyNPwgvz3XGUXEaA==}
10381 engines: {node: '>=8.0.0'} 10584 engines: {node: '>=8.0.0'}
10382 peerDependencies: 10585 peerDependencies:
10383 mobx: ^6.0.0 10586 mobx: ^6.0.0
10384 dependencies: 10587 dependencies:
10385 lodash: 4.17.21 10588 lodash: 4.17.21
10386 mobx: 6.12.0 10589 mobx: 6.12.3
10387 dev: false 10590 dev: false
10388 10591
10389 /mobx-react-lite@3.4.0(mobx@6.12.0)(react-dom@18.2.0)(react@18.2.0): 10592 /mobx-react-lite@3.4.0(mobx@6.12.3)(react-dom@18.2.0)(react@18.2.0):
10390 resolution: {integrity: sha512-bRuZp3C0itgLKHu/VNxi66DN/XVkQG7xtoBVWxpvC5FhAqbOCP21+nPhULjnzEqd7xBMybp6KwytdUpZKEgpIQ==} 10593 resolution: {integrity: sha512-bRuZp3C0itgLKHu/VNxi66DN/XVkQG7xtoBVWxpvC5FhAqbOCP21+nPhULjnzEqd7xBMybp6KwytdUpZKEgpIQ==}
10391 peerDependencies: 10594 peerDependencies:
10392 mobx: ^6.1.0 10595 mobx: ^6.1.0
@@ -10399,12 +10602,12 @@ packages:
10399 react-native: 10602 react-native:
10400 optional: true 10603 optional: true
10401 dependencies: 10604 dependencies:
10402 mobx: 6.12.0 10605 mobx: 6.12.3
10403 react: 18.2.0 10606 react: 18.2.0
10404 react-dom: 18.2.0(react@18.2.0) 10607 react-dom: 18.2.0(react@18.2.0)
10405 dev: false 10608 dev: false
10406 10609
10407 /mobx-react@7.6.0(mobx@6.12.0)(react-dom@18.2.0)(react@18.2.0): 10610 /mobx-react@7.6.0(mobx@6.12.3)(react-dom@18.2.0)(react@18.2.0):
10408 resolution: {integrity: sha512-+HQUNuh7AoQ9ZnU6c4rvbiVVl+wEkb9WqYsVDzGLng+Dqj1XntHu79PvEWKtSMoMj67vFp/ZPXcElosuJO8ckA==} 10611 resolution: {integrity: sha512-+HQUNuh7AoQ9ZnU6c4rvbiVVl+wEkb9WqYsVDzGLng+Dqj1XntHu79PvEWKtSMoMj67vFp/ZPXcElosuJO8ckA==}
10409 peerDependencies: 10612 peerDependencies:
10410 mobx: ^6.1.0 10613 mobx: ^6.1.0
@@ -10417,14 +10620,14 @@ packages:
10417 react-native: 10620 react-native:
10418 optional: true 10621 optional: true
10419 dependencies: 10622 dependencies:
10420 mobx: 6.12.0 10623 mobx: 6.12.3
10421 mobx-react-lite: 3.4.0(mobx@6.12.0)(react-dom@18.2.0)(react@18.2.0) 10624 mobx-react-lite: 3.4.0(mobx@6.12.3)(react-dom@18.2.0)(react@18.2.0)
10422 react: 18.2.0 10625 react: 18.2.0
10423 react-dom: 18.2.0(react@18.2.0) 10626 react-dom: 18.2.0(react@18.2.0)
10424 dev: false 10627 dev: false
10425 10628
10426 /mobx@6.12.0: 10629 /mobx@6.12.3:
10427 resolution: {integrity: sha512-Mn6CN6meXEnMa0a5u6a5+RKrqRedHBhZGd15AWLk9O6uFY4KYHzImdt8JI8WODo1bjTSRnwXhJox+FCUZhCKCQ==} 10630 resolution: {integrity: sha512-c8NKkO4R2lShkSXZ2Ongj1ycjugjzFFo/UswHBnS62y07DMcTc9Rvo03/3nRyszIvwPNljlkd4S828zIBv/piw==}
10428 dev: false 10631 dev: false
10429 10632
10430 /modify-filename@1.1.0: 10633 /modify-filename@1.1.0:
@@ -10577,7 +10780,7 @@ packages:
10577 npmlog: 6.0.2 10780 npmlog: 6.0.2
10578 rimraf: 3.0.2 10781 rimraf: 3.0.2
10579 semver: 7.6.0 10782 semver: 7.6.0
10580 tar: 6.2.0 10783 tar: 6.2.1
10581 which: 2.0.2 10784 which: 2.0.2
10582 transitivePeerDependencies: 10785 transitivePeerDependencies:
10583 - bluebird 10786 - bluebird
@@ -10600,7 +10803,7 @@ packages:
10600 npmlog: 6.0.2 10803 npmlog: 6.0.2
10601 rimraf: 3.0.2 10804 rimraf: 3.0.2
10602 semver: 7.6.0 10805 semver: 7.6.0
10603 tar: 6.2.0 10806 tar: 6.2.1
10604 which: 2.0.2 10807 which: 2.0.2
10605 transitivePeerDependencies: 10808 transitivePeerDependencies:
10606 - bluebird 10809 - bluebird
@@ -11062,8 +11265,8 @@ packages:
11062 resolution: {integrity: sha512-G6zHoVqC6GGTQkZwF4lkuEyMbVOjoBKAEybQUypI1WTkqinCOrq2x6U2+phkJ1XsEMTy4LjtwPI7HW+NVrRR2w==} 11265 resolution: {integrity: sha512-G6zHoVqC6GGTQkZwF4lkuEyMbVOjoBKAEybQUypI1WTkqinCOrq2x6U2+phkJ1XsEMTy4LjtwPI7HW+NVrRR2w==}
11063 dev: false 11266 dev: false
11064 11267
11065 /path-to-regexp@6.2.1: 11268 /path-to-regexp@6.2.2:
11066 resolution: {integrity: sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==} 11269 resolution: {integrity: sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==}
11067 dev: false 11270 dev: false
11068 11271
11069 /path-type@4.0.0: 11272 /path-type@4.0.0:
@@ -11680,8 +11883,8 @@ packages:
11680 react-dom: 18.2.0(react@18.2.0) 11883 react-dom: 18.2.0(react@18.2.0)
11681 dev: false 11884 dev: false
11682 11885
11683 /react-intl@6.6.2(react@18.2.0)(typescript@5.4.3): 11886 /react-intl@6.6.5(react@18.2.0)(typescript@5.4.5):
11684 resolution: {integrity: sha512-IpW2IkLtGENSFlX3vfH11rjuCIsW0VyjT0Q1pPKMZPtT2z1FxLt4weFT5Ezti2TScT1xiyb3aQBFth9EB7jzAg==} 11887 resolution: {integrity: sha512-OErDPbGqus0QKVj77MGCC9Plbnys3CDQrq6Lw41c60pmeTdn41AhoS1SIzXG6SUlyF7qNN2AVqfrrIvHUgSyLQ==}
11685 peerDependencies: 11888 peerDependencies:
11686 react: ^16.6.0 || 17 || 18 11889 react: ^16.6.0 || 17 || 18
11687 typescript: ^4.7 || 5 11890 typescript: ^4.7 || 5
@@ -11691,16 +11894,16 @@ packages:
11691 dependencies: 11894 dependencies:
11692 '@formatjs/ecma402-abstract': 1.18.2 11895 '@formatjs/ecma402-abstract': 1.18.2
11693 '@formatjs/icu-messageformat-parser': 2.7.6 11896 '@formatjs/icu-messageformat-parser': 2.7.6
11694 '@formatjs/intl': 2.10.0(typescript@5.4.3) 11897 '@formatjs/intl': 2.10.1(typescript@5.4.5)
11695 '@formatjs/intl-displaynames': 6.6.6 11898 '@formatjs/intl-displaynames': 6.6.6
11696 '@formatjs/intl-listformat': 7.5.5 11899 '@formatjs/intl-listformat': 7.5.5
11697 '@types/hoist-non-react-statics': 3.3.5 11900 '@types/hoist-non-react-statics': 3.3.5
11698 '@types/react': 18.2.67 11901 '@types/react': 18.2.77
11699 hoist-non-react-statics: 3.3.2 11902 hoist-non-react-statics: 3.3.2
11700 intl-messageformat: 10.5.11 11903 intl-messageformat: 10.5.11
11701 react: 18.2.0 11904 react: 18.2.0
11702 tslib: 2.6.2 11905 tslib: 2.6.2
11703 typescript: 5.4.3 11906 typescript: 5.4.5
11704 dev: false 11907 dev: false
11705 11908
11706 /react-is@16.13.1: 11909 /react-is@16.13.1:
@@ -11732,7 +11935,7 @@ packages:
11732 resolution: {integrity: sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==} 11935 resolution: {integrity: sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==}
11733 dev: false 11936 dev: false
11734 11937
11735 /react-loader-spinner@5.4.5(@babel/core@7.24.3)(react-dom@18.2.0)(react@18.2.0): 11938 /react-loader-spinner@5.4.5(@babel/core@7.24.4)(react-dom@18.2.0)(react@18.2.0):
11736 resolution: {integrity: sha512-32f+sb/v2tnNfyvnCCOS4fpyVHsGXjSyNo6QLniHcaj1XjKLxx14L2z0h6szRugOL8IEJ+53GPwNAdbkDqmy4g==} 11939 resolution: {integrity: sha512-32f+sb/v2tnNfyvnCCOS4fpyVHsGXjSyNo6QLniHcaj1XjKLxx14L2z0h6szRugOL8IEJ+53GPwNAdbkDqmy4g==}
11737 peerDependencies: 11940 peerDependencies:
11738 react: ^16.0.0 || ^17.0.0 || ^18.0.0 11941 react: ^16.0.0 || ^17.0.0 || ^18.0.0
@@ -11741,7 +11944,7 @@ packages:
11741 react: 18.2.0 11944 react: 18.2.0
11742 react-dom: 18.2.0(react@18.2.0) 11945 react-dom: 18.2.0(react@18.2.0)
11743 react-is: 18.2.0 11946 react-is: 18.2.0
11744 styled-components: 5.3.11(@babel/core@7.24.3)(react-dom@18.2.0)(react-is@18.2.0)(react@18.2.0) 11947 styled-components: 5.3.11(@babel/core@7.24.4)(react-dom@18.2.0)(react-is@18.2.0)(react@18.2.0)
11745 styled-tools: 1.7.2 11948 styled-tools: 1.7.2
11746 transitivePeerDependencies: 11949 transitivePeerDependencies:
11747 - '@babel/core' 11950 - '@babel/core'
@@ -11892,7 +12095,7 @@ packages:
11892 resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} 12095 resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==}
11893 engines: {node: '>=8'} 12096 engines: {node: '>=8'}
11894 dependencies: 12097 dependencies:
11895 '@types/normalize-package-data': 2.4.1 12098 '@types/normalize-package-data': 2.4.4
11896 normalize-package-data: 2.5.0 12099 normalize-package-data: 2.5.0
11897 parse-json: 5.2.0 12100 parse-json: 5.2.0
11898 type-fest: 0.6.0 12101 type-fest: 0.6.0
@@ -11985,6 +12188,10 @@ packages:
11985 12188
11986 /regenerator-runtime@0.14.0: 12189 /regenerator-runtime@0.14.0:
11987 resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} 12190 resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==}
12191 dev: false
12192
12193 /regenerator-runtime@0.14.1:
12194 resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==}
11988 12195
11989 /regex-not@1.0.2: 12196 /regex-not@1.0.2:
11990 resolution: {integrity: sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==} 12197 resolution: {integrity: sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==}
@@ -12259,6 +12466,13 @@ packages:
12259 queue-microtask: 1.2.3 12466 queue-microtask: 1.2.3
12260 dev: true 12467 dev: true
12261 12468
12469 /rxjs@5.5.12:
12470 resolution: {integrity: sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==}
12471 engines: {npm: '>=2.0.0'}
12472 dependencies:
12473 symbol-observable: 1.0.1
12474 dev: false
12475
12262 /rxjs@6.6.7: 12476 /rxjs@6.6.7:
12263 resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==} 12477 resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==}
12264 engines: {npm: '>=2.0.0'} 12478 engines: {npm: '>=2.0.0'}
@@ -12270,6 +12484,7 @@ packages:
12270 resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} 12484 resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==}
12271 dependencies: 12485 dependencies:
12272 tslib: 2.6.2 12486 tslib: 2.6.2
12487 dev: true
12273 12488
12274 /safe-array-concat@1.0.1: 12489 /safe-array-concat@1.0.1:
12275 resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} 12490 resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==}
@@ -12617,6 +12832,11 @@ packages:
12617 resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} 12832 resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==}
12618 dev: true 12833 dev: true
12619 12834
12835 /short-unique-id@5.0.3:
12836 resolution: {integrity: sha512-yhniEILouC0s4lpH0h7rJsfylZdca10W9mDJRAFh3EpcSUanCHGb0R7kcFOIUCZYSAPo0PUD5ZxWQdW0T4xaug==}
12837 hasBin: true
12838 dev: true
12839
12620 /side-channel@1.0.4: 12840 /side-channel@1.0.4:
12621 resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} 12841 resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
12622 dependencies: 12842 dependencies:
@@ -12656,8 +12876,8 @@ packages:
12656 scmp: 2.0.0 12876 scmp: 2.0.0
12657 dev: false 12877 dev: false
12658 12878
12659 /simple-git@3.23.0: 12879 /simple-git@3.24.0:
12660 resolution: {integrity: sha512-P9ggTW8vb/21CAL/AmnACAhqBDfnqSSZVpV7WuFtsFR9HLunf5IqQvk+OXAQTfkcZep8pKnt3DV3o7w3TegEkQ==} 12880 resolution: {integrity: sha512-QqAKee9Twv+3k8IFOFfPB2hnk6as6Y6ACUpwCtQvRYBAes23Wv3SZlHVobAzqcE8gfsisCvPw3HGW3HYM+VYYw==}
12661 dependencies: 12881 dependencies:
12662 '@kwsites/file-exists': 1.1.1 12882 '@kwsites/file-exists': 1.1.1
12663 '@kwsites/promise-deferred': 1.1.1 12883 '@kwsites/promise-deferred': 1.1.1
@@ -12840,22 +13060,22 @@ packages:
12840 resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} 13060 resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==}
12841 dependencies: 13061 dependencies:
12842 spdx-expression-parse: 3.0.1 13062 spdx-expression-parse: 3.0.1
12843 spdx-license-ids: 3.0.13 13063 spdx-license-ids: 3.0.17
12844 dev: true 13064 dev: true
12845 13065
12846 /spdx-exceptions@2.3.0: 13066 /spdx-exceptions@2.5.0:
12847 resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} 13067 resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==}
12848 dev: true 13068 dev: true
12849 13069
12850 /spdx-expression-parse@3.0.1: 13070 /spdx-expression-parse@3.0.1:
12851 resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} 13071 resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==}
12852 dependencies: 13072 dependencies:
12853 spdx-exceptions: 2.3.0 13073 spdx-exceptions: 2.5.0
12854 spdx-license-ids: 3.0.13 13074 spdx-license-ids: 3.0.17
12855 dev: true 13075 dev: true
12856 13076
12857 /spdx-license-ids@3.0.13: 13077 /spdx-license-ids@3.0.17:
12858 resolution: {integrity: sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==} 13078 resolution: {integrity: sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==}
12859 dev: true 13079 dev: true
12860 13080
12861 /split-string@3.1.0: 13081 /split-string@3.1.0:
@@ -12891,7 +13111,7 @@ packages:
12891 dependencies: 13111 dependencies:
12892 '@mapbox/node-pre-gyp': 1.0.11 13112 '@mapbox/node-pre-gyp': 1.0.11
12893 node-addon-api: 4.3.0 13113 node-addon-api: 4.3.0
12894 tar: 6.2.0 13114 tar: 6.2.1
12895 optionalDependencies: 13115 optionalDependencies:
12896 node-gyp: 8.4.1 13116 node-gyp: 8.4.1
12897 transitivePeerDependencies: 13117 transitivePeerDependencies:
@@ -12991,6 +13211,10 @@ packages:
12991 resolution: {integrity: sha512-Yptehjogou2xm4UJbxJ4CxgZx12HBfeystp0y3x7s4Dj32ltVVG1Gg8YhKjHZkHicuKpZX/ffilA8505VbUbpw==} 13211 resolution: {integrity: sha512-Yptehjogou2xm4UJbxJ4CxgZx12HBfeystp0y3x7s4Dj32ltVVG1Gg8YhKjHZkHicuKpZX/ffilA8505VbUbpw==}
12992 dev: true 13212 dev: true
12993 13213
13214 /string-ts@2.1.0:
13215 resolution: {integrity: sha512-YpGEBxS3Qw1De+RO3Gdrsx2gwYU9b7WmPtKhRLTTKc3oKzbOxqGDYLRGkNeIXLL4BGVZMXY49hPpzP3RAwUFAA==}
13216 dev: true
13217
12994 /string-width@2.1.1: 13218 /string-width@2.1.1:
12995 resolution: {integrity: sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==} 13219 resolution: {integrity: sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==}
12996 engines: {node: '>=4'} 13220 engines: {node: '>=4'}
@@ -13155,7 +13379,7 @@ packages:
13155 engines: {node: '>=8'} 13379 engines: {node: '>=8'}
13156 dev: true 13380 dev: true
13157 13381
13158 /styled-components@5.3.11(@babel/core@7.24.3)(react-dom@18.2.0)(react-is@18.2.0)(react@18.2.0): 13382 /styled-components@5.3.11(@babel/core@7.24.4)(react-dom@18.2.0)(react-is@18.2.0)(react@18.2.0):
13159 resolution: {integrity: sha512-uuzIIfnVkagcVHv9nE0VPlHPSCmXIUGKfJ42LNjxCCTDTL5sgnJ8Z7GZBq0EnLYGln77tPpEpExt2+qa+cZqSw==} 13383 resolution: {integrity: sha512-uuzIIfnVkagcVHv9nE0VPlHPSCmXIUGKfJ42LNjxCCTDTL5sgnJ8Z7GZBq0EnLYGln77tPpEpExt2+qa+cZqSw==}
13160 engines: {node: '>=10'} 13384 engines: {node: '>=10'}
13161 peerDependencies: 13385 peerDependencies:
@@ -13168,7 +13392,7 @@ packages:
13168 '@emotion/is-prop-valid': 1.2.1 13392 '@emotion/is-prop-valid': 1.2.1
13169 '@emotion/stylis': 0.8.5 13393 '@emotion/stylis': 0.8.5
13170 '@emotion/unitless': 0.7.5 13394 '@emotion/unitless': 0.7.5
13171 babel-plugin-styled-components: 2.1.4(@babel/core@7.24.3)(styled-components@5.3.11) 13395 babel-plugin-styled-components: 2.1.4(@babel/core@7.24.4)(styled-components@5.3.11)
13172 css-to-react-native: 3.2.0 13396 css-to-react-native: 3.2.0
13173 hoist-non-react-statics: 3.3.2 13397 hoist-non-react-statics: 3.3.2
13174 react: 18.2.0 13398 react: 18.2.0
@@ -13225,6 +13449,11 @@ packages:
13225 resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 13449 resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
13226 engines: {node: '>= 0.4'} 13450 engines: {node: '>= 0.4'}
13227 13451
13452 /symbol-observable@1.0.1:
13453 resolution: {integrity: sha512-Kb3PrPYz4HanVF1LVGuAdW6LoVgIwjUYJGzFe7NDrBLCN4lsV/5J0MFurV+ygS4bRVwrCEt2c7MQ1R2a72oJDw==}
13454 engines: {node: '>=0.10.0'}
13455 dev: false
13456
13228 /symbol-observable@1.2.0: 13457 /symbol-observable@1.2.0:
13229 resolution: {integrity: sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==} 13458 resolution: {integrity: sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==}
13230 engines: {node: '>=0.10.0'} 13459 engines: {node: '>=0.10.0'}
@@ -13268,8 +13497,8 @@ packages:
13268 readable-stream: 3.6.2 13497 readable-stream: 3.6.2
13269 dev: true 13498 dev: true
13270 13499
13271 /tar@6.2.0: 13500 /tar@6.2.1:
13272 resolution: {integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==} 13501 resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==}
13273 engines: {node: '>=10'} 13502 engines: {node: '>=10'}
13274 dependencies: 13503 dependencies:
13275 chownr: 2.0.0 13504 chownr: 2.0.0
@@ -13497,16 +13726,25 @@ packages:
13497 dependencies: 13726 dependencies:
13498 utf8-byte-length: 1.0.4 13727 utf8-byte-length: 1.0.4
13499 13728
13500 /ts-api-utils@1.0.3(typescript@5.4.3): 13729 /ts-api-utils@1.0.3(typescript@5.4.5):
13501 resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} 13730 resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==}
13502 engines: {node: '>=16.13.0'} 13731 engines: {node: '>=16.13.0'}
13503 peerDependencies: 13732 peerDependencies:
13504 typescript: '>=4.2.0' 13733 typescript: '>=4.2.0'
13505 dependencies: 13734 dependencies:
13506 typescript: 5.4.3 13735 typescript: 5.4.5
13736 dev: true
13737
13738 /ts-api-utils@1.3.0(typescript@5.4.5):
13739 resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==}
13740 engines: {node: '>=16'}
13741 peerDependencies:
13742 typescript: '>=4.2.0'
13743 dependencies:
13744 typescript: 5.4.5
13507 dev: true 13745 dev: true
13508 13746
13509 /ts-node@10.9.2(@types/node@20.11.30)(typescript@5.4.3): 13747 /ts-node@10.9.2(@types/node@20.12.7)(typescript@5.4.5):
13510 resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} 13748 resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==}
13511 hasBin: true 13749 hasBin: true
13512 peerDependencies: 13750 peerDependencies:
@@ -13525,14 +13763,14 @@ packages:
13525 '@tsconfig/node12': 1.0.11 13763 '@tsconfig/node12': 1.0.11
13526 '@tsconfig/node14': 1.0.3 13764 '@tsconfig/node14': 1.0.3
13527 '@tsconfig/node16': 1.0.4 13765 '@tsconfig/node16': 1.0.4
13528 '@types/node': 20.11.30 13766 '@types/node': 20.12.7
13529 acorn: 8.11.2 13767 acorn: 8.11.2
13530 acorn-walk: 8.2.0 13768 acorn-walk: 8.2.0
13531 arg: 4.1.3 13769 arg: 4.1.3
13532 create-require: 1.1.1 13770 create-require: 1.1.1
13533 diff: 4.0.2 13771 diff: 4.0.2
13534 make-error: 1.3.6 13772 make-error: 1.3.6
13535 typescript: 5.4.3 13773 typescript: 5.4.5
13536 v8-compile-cache-lib: 3.0.1 13774 v8-compile-cache-lib: 3.0.1
13537 yn: 3.1.1 13775 yn: 3.1.1
13538 dev: true 13776 dev: true
@@ -13562,14 +13800,14 @@ packages:
13562 engines: {node: '>=0.6.x'} 13800 engines: {node: '>=0.6.x'}
13563 dev: false 13801 dev: false
13564 13802
13565 /tsutils@3.21.0(typescript@5.4.3): 13803 /tsutils@3.21.0(typescript@5.4.5):
13566 resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} 13804 resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
13567 engines: {node: '>= 6'} 13805 engines: {node: '>= 6'}
13568 peerDependencies: 13806 peerDependencies:
13569 typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' 13807 typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
13570 dependencies: 13808 dependencies:
13571 tslib: 1.14.1 13809 tslib: 1.14.1
13572 typescript: 5.4.3 13810 typescript: 5.4.5
13573 dev: true 13811 dev: true
13574 13812
13575 /tunnel-agent@0.6.0: 13813 /tunnel-agent@0.6.0:
@@ -13632,11 +13870,6 @@ packages:
13632 mime-types: 2.1.35 13870 mime-types: 2.1.35
13633 dev: false 13871 dev: false
13634 13872
13635 /type-of-is@3.5.1:
13636 resolution: {integrity: sha512-SOnx8xygcAh8lvDU2exnK2bomASfNjzB3Qz71s2tw9QnX8fkAo7aC+D0H7FV0HjRKj94CKV2Hi71kVkkO6nOxg==}
13637 engines: {node: '>=0.10.5'}
13638 dev: false
13639
13640 /type@2.7.2: 13873 /type@2.7.2:
13641 resolution: {integrity: sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==} 13874 resolution: {integrity: sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==}
13642 dev: false 13875 dev: false
@@ -13729,8 +13962,8 @@ packages:
13729 hasBin: true 13962 hasBin: true
13730 dev: true 13963 dev: true
13731 13964
13732 /typescript@5.4.3: 13965 /typescript@5.4.5:
13733 resolution: {integrity: sha512-KrPd3PKaCLr78MalgiwJnA25Nm8HAmdwN3mYUYZgG/wizIo9EainNVQI9/yDavtVFRN2h3k8uf3GLHuhDMgEHg==} 13966 resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==}
13734 engines: {node: '>=14.17'} 13967 engines: {node: '>=14.17'}
13735 hasBin: true 13968 hasBin: true
13736 13969
diff --git a/recipes b/recipes
Subproject 7177ac9abd0383f601cc43591b53e3540620ca9 Subproject 7ab6497fbd7bc64c3f2b17b587d273c9bbd155c
diff --git a/scripts/link-readme.ts b/scripts/link-readme.ts
index 147ae22f7..d323d83f6 100644
--- a/scripts/link-readme.ts
+++ b/scripts/link-readme.ts
@@ -9,6 +9,7 @@
9import path from 'node:path'; 9import path from 'node:path';
10import fs from 'fs-extra'; 10import fs from 'fs-extra';
11 11
12// eslint-disable-next-line no-console
12console.log('Linking issues and PRs in README.md'); 13console.log('Linking issues and PRs in README.md');
13 14
14const readmepath = path.join(__dirname, '..', 'README.md'); 15const readmepath = path.join(__dirname, '..', 'README.md');
@@ -60,4 +61,5 @@ readme = readme.replaceAll(/(?<!\[)@\w+(?!])/gi, match => {
60// Write to file 61// Write to file
61fs.writeFileSync(readmepath, readme); 62fs.writeFileSync(readmepath, readme);
62 63
64// eslint-disable-next-line no-console
63console.log(`Added ${replacements} strings`); 65console.log(`Added ${replacements} strings`);
diff --git a/scripts/migration/migrate-unix.sh b/scripts/migration/migrate-unix.sh
index c51227f33..4175d7720 100755
--- a/scripts/migration/migrate-unix.sh
+++ b/scripts/migration/migrate-unix.sh
@@ -49,7 +49,7 @@ if [ -d "$FERDIUM_PATH" ]; then
49fi 49fi
50 50
51if mv -vf "$FERDI_PATH" "$FERDIUM_PATH"; then 51if mv -vf "$FERDI_PATH" "$FERDIUM_PATH"; then
52 echo "Files exported succesfully" 52 echo "Files exported successfully"
53else 53else
54 echo "ERROR!" 54 echo "ERROR!"
55 echo "No user data was found to be exported. Exiting..." 55 echo "No user data was found to be exported. Exiting..."
diff --git a/src/@types/mobx-form.types.ts b/src/@types/mobx-form.types.ts
index 67b0aa3ec..c9d226674 100644
--- a/src/@types/mobx-form.types.ts
+++ b/src/@types/mobx-form.types.ts
@@ -16,7 +16,7 @@ interface Listeners {
16 16
17export interface Field extends Listeners { 17export interface Field extends Listeners {
18 id?: string; 18 id?: string;
19 type?: string; // todo specifiy probably 19 type?: string; // todo specify probably
20 name?: string; 20 name?: string;
21 value?: any; 21 value?: any;
22 label?: string; 22 label?: string;
diff --git a/src/I18n.tsx b/src/I18n.tsx
index 2085f3e98..dc9c7d6b9 100644
--- a/src/I18n.tsx
+++ b/src/I18n.tsx
@@ -27,7 +27,9 @@ class I18N extends Component<Props> {
27 27
28 return ( 28 return (
29 <IntlProvider 29 <IntlProvider
30 {...{ locale, key: locale, messages: translations[locale] }} 30 locale={locale}
31 key={locale}
32 messages={translations[locale]}
31 ref={intlProvider => { 33 ref={intlProvider => {
32 window['ferdium'].intl = intlProvider 34 window['ferdium'].intl = intlProvider
33 ? intlProvider.state.intl 35 ? intlProvider.state.intl
diff --git a/src/api/server/ServerApi.ts b/src/api/server/ServerApi.ts
index 58c6845ac..b5dd499ab 100644
--- a/src/api/server/ServerApi.ts
+++ b/src/api/server/ServerApi.ts
@@ -462,7 +462,6 @@ export default class ServerApi {
462 462
463 await sleep(10); 463 await sleep(10);
464 464
465 // @ts-expect-error No overload matches this call.
466 await tar.x({ 465 await tar.x({
467 file: archivePath, 466 file: archivePath,
468 cwd: recipeTempDirectory, 467 cwd: recipeTempDirectory,
@@ -583,7 +582,7 @@ export default class ServerApi {
583 file !== 'temp', 582 file !== 'temp',
584 ); 583 );
585 584
586 const recipes = paths 585 const recipes: IRecipe[] = paths
587 .map(id => { 586 .map(id => {
588 try { 587 try {
589 // eslint-disable-next-line import/no-dynamic-require 588 // eslint-disable-next-line import/no-dynamic-require
diff --git a/src/api/utils/auth.ts b/src/api/utils/auth.ts
index ce30e0132..0188675fc 100644
--- a/src/api/utils/auth.ts
+++ b/src/api/utils/auth.ts
@@ -39,6 +39,7 @@ export const prepareLocalToken = async (requestData: {
39 await when(() => !needsToken() || !!localServerToken(), { timeout: 2000 }); 39 await when(() => !needsToken() || !!localServerToken(), { timeout: 2000 });
40 const token = localServerToken(); 40 const token = localServerToken();
41 if (token) { 41 if (token) {
42 // eslint-disable-next-line no-param-reassign
42 requestData.headers['X-Ferdium-Local-Token'] = token; 43 requestData.headers['X-Ferdium-Local-Token'] = token;
43 } 44 }
44}; 45};
diff --git a/src/components/auth/AuthLayout.tsx b/src/components/auth/AuthLayout.tsx
index 67e898318..3952045b2 100644
--- a/src/components/auth/AuthLayout.tsx
+++ b/src/components/auth/AuthLayout.tsx
@@ -106,6 +106,7 @@ class AuthLayout extends Component<IProps, IState> {
106 )} 106 )}
107 <div className="auth__layout"> 107 <div className="auth__layout">
108 {/* Inject globalError into children */} 108 {/* Inject globalError into children */}
109 {/* eslint-disable-next-line @eslint-react/no-clone-element */}
109 {cloneElement(children, { error })} 110 {cloneElement(children, { error })}
110 </div> 111 </div>
111 {/* </div> */} 112 {/* </div> */}
diff --git a/src/components/downloadManager/DownloadManagerDashboard.tsx b/src/components/downloadManager/DownloadManagerDashboard.tsx
index 490be269d..aeaa94634 100644
--- a/src/components/downloadManager/DownloadManagerDashboard.tsx
+++ b/src/components/downloadManager/DownloadManagerDashboard.tsx
@@ -47,7 +47,6 @@ interface IState {
47 data: string; 47 data: string;
48} 48}
49 49
50// eslint-disable-next-line react/prefer-stateless-function
51class DownloadManagerDashboard extends Component<IProps, IState> { 50class DownloadManagerDashboard extends Component<IProps, IState> {
52 render() { 51 render() {
53 const { intl, stores, actions } = this.props; 52 const { intl, stores, actions } = this.props;
diff --git a/src/components/downloadManager/DownloadManagerLayout.tsx b/src/components/downloadManager/DownloadManagerLayout.tsx
index 08c0ace1e..09a1b2096 100644
--- a/src/components/downloadManager/DownloadManagerLayout.tsx
+++ b/src/components/downloadManager/DownloadManagerLayout.tsx
@@ -10,7 +10,7 @@ import {
10import { mdiClose } from '@mdi/js'; 10import { mdiClose } from '@mdi/js';
11import { Outlet } from 'react-router-dom'; 11import { Outlet } from 'react-router-dom';
12import type { Actions } from '../../actions/lib/actions'; 12import type { Actions } from '../../actions/lib/actions';
13import { isEscKeyPress } from '../../jsUtils'; 13import { isEscapeKeyPress } from '../../jsUtils';
14import Appear from '../ui/effects/Appear'; 14import Appear from '../ui/effects/Appear';
15import Icon from '../ui/icon'; 15import Icon from '../ui/icon';
16import ErrorBoundary from '../util/ErrorBoundary'; 16import ErrorBoundary from '../util/ErrorBoundary';
@@ -44,8 +44,8 @@ class DownloadManagerLayout extends Component<IProps> {
44 ); 44 );
45 } 45 }
46 46
47 handleKeyDown(e) { 47 handleKeyDown(e: KeyboardEvent) {
48 if (isEscKeyPress(e.keyCode)) { 48 if (isEscapeKeyPress(e.key)) {
49 this.props.actions!.ui.closeSettings(); 49 this.props.actions!.ui.closeSettings();
50 } 50 }
51 } 51 }
diff --git a/src/components/services/tabs/TabItem.tsx b/src/components/services/tabs/TabItem.tsx
index bf193e136..0e999506a 100644
--- a/src/components/services/tabs/TabItem.tsx
+++ b/src/components/services/tabs/TabItem.tsx
@@ -19,7 +19,7 @@ import globalMessages from '../../../i18n/globalMessages';
19import type Service from '../../../models/Service'; 19import type Service from '../../../models/Service';
20import Icon from '../../ui/icon'; 20import Icon from '../../ui/icon';
21import MenuItemConstructorOptions = Electron.MenuItemConstructorOptions; 21import MenuItemConstructorOptions = Electron.MenuItemConstructorOptions;
22import { acceleratorString } from '../../../jsUtils'; 22import { acceleratorString, isShiftKeyPress } from '../../../jsUtils';
23 23
24const IS_SERVICE_DEBUGGING_ENABLED = ( 24const IS_SERVICE_DEBUGGING_ENABLED = (
25 localStorage.getItem('debug') || '' 25 localStorage.getItem('debug') || ''
@@ -171,8 +171,8 @@ class TabItem extends Component<IProps, IState> {
171 ); 171 );
172 } 172 }
173 173
174 handleShortcutIndex = (event, showShortcutIndex = true) => { 174 handleShortcutIndex = (event: KeyboardEvent, showShortcutIndex = true) => {
175 if (event.key === 'Shift') { 175 if (isShiftKeyPress(event.key)) {
176 this.setState({ showShortcutIndex }); 176 this.setState({ showShortcutIndex });
177 } 177 }
178 }; 178 };
diff --git a/src/components/settings/SettingsLayout.tsx b/src/components/settings/SettingsLayout.tsx
index 17f8c3e33..3b5d81cdd 100644
--- a/src/components/settings/SettingsLayout.tsx
+++ b/src/components/settings/SettingsLayout.tsx
@@ -7,7 +7,7 @@ import {
7 injectIntl, 7 injectIntl,
8} from 'react-intl'; 8} from 'react-intl';
9import { Outlet } from 'react-router-dom'; 9import { Outlet } from 'react-router-dom';
10import { isEscKeyPress } from '../../jsUtils'; 10import { isEscapeKeyPress } from '../../jsUtils';
11import Appear from '../ui/effects/Appear'; 11import Appear from '../ui/effects/Appear';
12import Icon from '../ui/icon'; 12import Icon from '../ui/icon';
13import ErrorBoundary from '../util/ErrorBoundary'; 13import ErrorBoundary from '../util/ErrorBoundary';
@@ -41,7 +41,7 @@ class SettingsLayout extends Component<PropsWithChildren<IProps>> {
41 } 41 }
42 42
43 handleKeyDown(e: KeyboardEvent): void { 43 handleKeyDown(e: KeyboardEvent): void {
44 if (isEscKeyPress(e.keyCode)) { 44 if (isEscapeKeyPress(e.key)) {
45 this.props.closeSettings(); 45 this.props.closeSettings();
46 } 46 }
47 } 47 }
diff --git a/src/components/settings/recipes/RecipeItem.tsx b/src/components/settings/recipes/RecipeItem.tsx
index 432e4e6a1..0bf426da2 100644
--- a/src/components/settings/recipes/RecipeItem.tsx
+++ b/src/components/settings/recipes/RecipeItem.tsx
@@ -1,5 +1,5 @@
1import { Component, MouseEventHandler } from 'react';
2import { observer } from 'mobx-react'; 1import { observer } from 'mobx-react';
2import { Component, MouseEventHandler } from 'react';
3import RecipePreview from '../../../models/RecipePreview'; 3import RecipePreview from '../../../models/RecipePreview';
4 4
5interface IProps { 5interface IProps {
diff --git a/src/components/settings/recipes/RecipesDashboard.tsx b/src/components/settings/recipes/RecipesDashboard.tsx
index c7aeaa9b3..3408d8f6d 100644
--- a/src/components/settings/recipes/RecipesDashboard.tsx
+++ b/src/components/settings/recipes/RecipesDashboard.tsx
@@ -1,20 +1,20 @@
1import { Component } from 'react'; 1import { mdiOpenInNew } from '@mdi/js';
2import { observer } from 'mobx-react'; 2import { observer } from 'mobx-react';
3import { defineMessages, injectIntl, WrappedComponentProps } from 'react-intl'; 3import { Component } from 'react';
4import { NavLink } from 'react-router-dom'; 4import { WrappedComponentProps, defineMessages, injectIntl } from 'react-intl';
5import withStyles, { WithStylesProps } from 'react-jss'; 5import withStyles, { WithStylesProps } from 'react-jss';
6import { mdiOpenInNew } from '@mdi/js'; 6import { NavLink } from 'react-router-dom';
7import { FERDIUM_SERVICE_REQUEST } from '../../../config';
8import RecipePreview from '../../../models/RecipePreview';
9import SearchInput from '../../ui/SearchInput';
7import Button from '../../ui/button'; 10import Button from '../../ui/button';
8import Input from '../../ui/input/index'; 11import Appear from '../../ui/effects/Appear';
9import { H1, H2, H3 } from '../../ui/headline'; 12import { H1, H2, H3 } from '../../ui/headline';
10import SearchInput from '../../ui/SearchInput'; 13import Icon from '../../ui/icon';
11import Infobox from '../../ui/infobox/index'; 14import Infobox from '../../ui/infobox/index';
12import RecipeItem from './RecipeItem'; 15import Input from '../../ui/input/index';
13import Loader from '../../ui/loader'; 16import Loader from '../../ui/loader';
14import Appear from '../../ui/effects/Appear'; 17import RecipeItem from './RecipeItem';
15import { FERDIUM_SERVICE_REQUEST } from '../../../config';
16import RecipePreview from '../../../models/RecipePreview';
17import Icon from '../../ui/icon';
18 18
19const messages = defineMessages({ 19const messages = defineMessages({
20 headline: { 20 headline: {
diff --git a/src/components/settings/releaseNotes/ReleaseNotesDashboard.tsx b/src/components/settings/releaseNotes/ReleaseNotesDashboard.tsx
index 1afc17491..e2867ab8e 100644
--- a/src/components/settings/releaseNotes/ReleaseNotesDashboard.tsx
+++ b/src/components/settings/releaseNotes/ReleaseNotesDashboard.tsx
@@ -16,12 +16,12 @@ const messages = defineMessages({
16 connectionError: { 16 connectionError: {
17 id: 'settings.releasenotes.connectionError', 17 id: 'settings.releasenotes.connectionError',
18 defaultMessage: 18 defaultMessage:
19 'An error occured when connecting to Github, please try again later.', 19 'An error occurred when connecting to Github, please try again later.',
20 }, 20 },
21 connectionErrorPageMissing: { 21 connectionErrorPageMissing: {
22 id: 'settings.releasenotes.connectionErrorPageMissing', 22 id: 'settings.releasenotes.connectionErrorPageMissing',
23 defaultMessage: 23 defaultMessage:
24 'An error occured when connecting to Github, the page you are looking for is missing.', 24 'An error occurred when connecting to Github, the page you are looking for is missing.',
25 }, 25 },
26}); 26});
27 27
@@ -49,6 +49,7 @@ class ReleaseNotesDashboard extends Component<IProps, IState> {
49 intl, 49 intl,
50 ); 50 );
51 51
52 // eslint-disable-next-line @eslint-react/no-set-state-in-component-did-mount
52 this.setState({ 53 this.setState({
53 data, 54 data,
54 }); 55 });
diff --git a/src/components/settings/releaseNotes/ReleaseNotesLayout.tsx b/src/components/settings/releaseNotes/ReleaseNotesLayout.tsx
index 23db7141e..1743bb5a1 100644
--- a/src/components/settings/releaseNotes/ReleaseNotesLayout.tsx
+++ b/src/components/settings/releaseNotes/ReleaseNotesLayout.tsx
@@ -9,7 +9,7 @@ import {
9import { mdiClose } from '@mdi/js'; 9import { mdiClose } from '@mdi/js';
10import { Outlet } from 'react-router-dom'; 10import { Outlet } from 'react-router-dom';
11import type { Actions } from '../../../actions/lib/actions'; 11import type { Actions } from '../../../actions/lib/actions';
12import { isEscKeyPress } from '../../../jsUtils'; 12import { isEscapeKeyPress } from '../../../jsUtils';
13import Appear from '../../ui/effects/Appear'; 13import Appear from '../../ui/effects/Appear';
14import Icon from '../../ui/icon'; 14import Icon from '../../ui/icon';
15import ErrorBoundary from '../../util/ErrorBoundary'; 15import ErrorBoundary from '../../util/ErrorBoundary';
@@ -43,8 +43,8 @@ class ReleaseNotesLayout extends Component<IProps> {
43 ); 43 );
44 } 44 }
45 45
46 handleKeyDown(e) { 46 handleKeyDown(e: KeyboardEvent) {
47 if (isEscKeyPress(e.keyCode)) { 47 if (isEscapeKeyPress(e.key)) {
48 this.props.actions!.ui.closeSettings(); 48 this.props.actions!.ui.closeSettings();
49 } 49 }
50 } 50 }
diff --git a/src/components/settings/settings/EditSettingsForm.tsx b/src/components/settings/settings/EditSettingsForm.tsx
index 598158e20..c3e8d46a0 100644
--- a/src/components/settings/settings/EditSettingsForm.tsx
+++ b/src/components/settings/settings/EditSettingsForm.tsx
@@ -88,7 +88,7 @@ const messages = defineMessages({
88 lockInfo: { 88 lockInfo: {
89 id: 'settings.app.lockInfo', 89 id: 'settings.app.lockInfo',
90 defaultMessage: 90 defaultMessage:
91 'Password Lock allows you to keep your messages protected.\nUsing Password Lock, you will be prompted to enter your password everytime you start Ferdium or lock Ferdium yourself using the lock symbol in the bottom left corner or the shortcut {lockShortcut}.', 91 'Password Lock allows you to keep your messages protected.\nUsing Password Lock, you will be prompted to enter your password every time you start Ferdium or lock Ferdium yourself using the lock symbol in the bottom left corner or the shortcut {lockShortcut}.',
92 }, 92 },
93 scheduledDNDTimeInfo: { 93 scheduledDNDTimeInfo: {
94 id: 'settings.app.scheduledDNDTimeInfo', 94 id: 'settings.app.scheduledDNDTimeInfo',
@@ -185,7 +185,7 @@ const messages = defineMessages({
185 spellCheckerLanguageInfo: { 185 spellCheckerLanguageInfo: {
186 id: 'settings.app.spellCheckerLanguageInfo', 186 id: 'settings.app.spellCheckerLanguageInfo',
187 defaultMessage: 187 defaultMessage:
188 "Ferdium 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.", 188 "Ferdium uses your Mac's built-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.",
189 }, 189 },
190 subheadlineCache: { 190 subheadlineCache: {
191 id: 'settings.app.subheadlineCache', 191 id: 'settings.app.subheadlineCache',
@@ -838,6 +838,8 @@ class EditSettingsForm extends Component<IProps, IState> {
838 <Toggle {...form.$('hideDownloadButton').bind()} /> 838 <Toggle {...form.$('hideDownloadButton').bind()} />
839 839
840 <Toggle {...form.$('alwaysShowWorkspaces').bind()} /> 840 <Toggle {...form.$('alwaysShowWorkspaces').bind()} />
841
842 <Toggle {...form.$('hideAllServicesWorkspace').bind()} />
841 </div> 843 </div>
842 )} 844 )}
843 845
@@ -1085,34 +1087,34 @@ class EditSettingsForm extends Component<IProps, IState> {
1085 <H3> 1087 <H3>
1086 {intl.formatMessage(messages.subheadlineFerdiumProfile)} 1088 {intl.formatMessage(messages.subheadlineFerdiumProfile)}
1087 </H3> 1089 </H3>
1088 <p> 1090
1089 <div className="settings__open-settings-file-container"> 1091 <div className="settings__open-settings-file-container">
1090 <Button 1092 <Button
1091 buttonType="secondary" 1093 buttonType="secondary"
1092 label={intl.formatMessage( 1094 label={intl.formatMessage(
1093 messages.buttonOpenFerdiumProfileFolder, 1095 messages.buttonOpenFerdiumProfileFolder,
1094 )} 1096 )}
1095 className="settings__open-settings-file-button" 1097 className="settings__open-settings-file-button"
1096 onClick={() => openPath(profileFolder)} 1098 onClick={() => openPath(profileFolder)}
1097 /> 1099 />
1098 <Button 1100 <Button
1099 buttonType="secondary" 1101 buttonType="secondary"
1100 label={intl.formatMessage( 1102 label={intl.formatMessage(
1101 messages.buttonOpenFerdiumServiceRecipesFolder, 1103 messages.buttonOpenFerdiumServiceRecipesFolder,
1102 )} 1104 )}
1103 className="settings__open-settings-file-button" 1105 className="settings__open-settings-file-button"
1104 onClick={() => openPath(recipeFolder)} 1106 onClick={() => openPath(recipeFolder)}
1105 /> 1107 />
1106 <Button 1108 <Button
1107 buttonType="secondary" 1109 buttonType="secondary"
1108 label={intl.formatMessage( 1110 label={intl.formatMessage(
1109 messages.buttonOpenImportExport, 1111 messages.buttonOpenImportExport,
1110 )} 1112 )}
1111 className="settings__open-settings-file-button" 1113 className="settings__open-settings-file-button"
1112 onClick={() => openExternalUrl(serverURL, true)} 1114 onClick={() => openExternalUrl(serverURL, true)}
1113 /> 1115 />
1114 </div> 1116 </div>
1115 </p> 1117
1116 <p className="settings__help"> 1118 <p className="settings__help">
1117 {intl.formatMessage(messages.serverHelp, { 1119 {intl.formatMessage(messages.serverHelp, {
1118 serverURL, 1120 serverURL,
diff --git a/src/components/settings/supportFerdium/SupportFerdiumDashboard.tsx b/src/components/settings/supportFerdium/SupportFerdiumDashboard.tsx
index 065690fb5..3a4592666 100644
--- a/src/components/settings/supportFerdium/SupportFerdiumDashboard.tsx
+++ b/src/components/settings/supportFerdium/SupportFerdiumDashboard.tsx
@@ -33,7 +33,7 @@ const SupportFerdiumDashboard = () => {
33 <a 33 <a
34 href="https://twitter.com/ferdiumteam/" 34 href="https://twitter.com/ferdiumteam/"
35 target="_blank" 35 target="_blank"
36 rel="noreferrer" 36 rel="noreferrer noopener"
37 > 37 >
38 <img 38 <img
39 alt="Twitter Follow" 39 alt="Twitter Follow"
@@ -43,14 +43,18 @@ const SupportFerdiumDashboard = () => {
43 <a 43 <a
44 href="https://github.com/ferdium/ferdium-app" 44 href="https://github.com/ferdium/ferdium-app"
45 target="_blank" 45 target="_blank"
46 rel="noreferrer" 46 rel="noreferrer noopener"
47 > 47 >
48 <img 48 <img
49 alt="GitHub Stars" 49 alt="GitHub Stars"
50 src="https://img.shields.io/github/stars/ferdium/ferdium-app?style=social" 50 src="https://img.shields.io/github/stars/ferdium/ferdium-app?style=social"
51 /> 51 />
52 </a> 52 </a>
53 <a target="_blank" href={FERDIUM_TRANSLATION} rel="noreferrer"> 53 <a
54 target="_blank"
55 href={FERDIUM_TRANSLATION}
56 rel="noreferrer noopener"
57 >
54 <img 58 <img
55 src="https://badges.crowdin.net/ferdium-app/localized.svg" 59 src="https://badges.crowdin.net/ferdium-app/localized.svg"
56 alt="Crowdin" 60 alt="Crowdin"
@@ -59,7 +63,7 @@ const SupportFerdiumDashboard = () => {
59 <a 63 <a
60 href="https://opencollective.com/ferdium#section-contributors" 64 href="https://opencollective.com/ferdium#section-contributors"
61 target="_blank" 65 target="_blank"
62 rel="noreferrer" 66 rel="noreferrer noopener"
63 > 67 >
64 <img 68 <img
65 alt="Open Collective backers" 69 alt="Open Collective backers"
@@ -72,7 +76,7 @@ const SupportFerdiumDashboard = () => {
72 <a 76 <a
73 href="https://github.com/ferdium/ferdium-app#contributors-" 77 href="https://github.com/ferdium/ferdium-app#contributors-"
74 target="_blank" 78 target="_blank"
75 rel="noreferrer" 79 rel="noreferrer noopener"
76 > 80 >
77 <img 81 <img
78 alt="GitHub contributors (non-exhaustive)" 82 alt="GitHub contributors (non-exhaustive)"
diff --git a/src/components/ui/FAB.tsx b/src/components/ui/FAB.tsx
index b4eeace8b..1e9ff9022 100644
--- a/src/components/ui/FAB.tsx
+++ b/src/components/ui/FAB.tsx
@@ -36,6 +36,7 @@ class Button extends Component<IProps> {
36 }; 36 };
37 37
38 return ( 38 return (
39 // eslint-disable-next-line @eslint-react/dom/no-missing-button-type
39 <button {...buttonProps} type="button"> 40 <button {...buttonProps} type="button">
40 {children} 41 {children}
41 </button> 42 </button>
diff --git a/src/components/ui/SearchInput.tsx b/src/components/ui/SearchInput.tsx
index 2e70d1b35..d31463010 100644
--- a/src/components/ui/SearchInput.tsx
+++ b/src/components/ui/SearchInput.tsx
@@ -98,6 +98,7 @@ class SearchInput extends Component<IProps, IState> {
98 /> 98 />
99 </label> 99 </label>
100 {value.length > 0 && ( 100 {value.length > 0 && (
101 // eslint-disable-next-line jsx-a11y/no-static-element-interactions
101 <span onClick={() => this.reset()} onKeyDown={noop}> 102 <span onClick={() => this.reset()} onKeyDown={noop}>
102 <Icon icon={mdiCloseCircleOutline} /> 103 <Icon icon={mdiCloseCircleOutline} />
103 </span> 104 </span>
diff --git a/src/components/ui/Tabs/Tabs.tsx b/src/components/ui/Tabs/Tabs.tsx
index a5ec148aa..d1e397122 100644
--- a/src/components/ui/Tabs/Tabs.tsx
+++ b/src/components/ui/Tabs/Tabs.tsx
@@ -35,6 +35,7 @@ class Tab extends Component<IProps, IState> {
35 35
36 render(): ReactElement { 36 render(): ReactElement {
37 const { children: childElements } = this.props; 37 const { children: childElements } = this.props;
38 // eslint-disable-next-line @eslint-react/no-children-to-array
38 const children = Children.toArray(childElements); // removes all null values 39 const children = Children.toArray(childElements); // removes all null values
39 40
40 if (children.length === 1) { 41 if (children.length === 1) {
@@ -44,9 +45,10 @@ class Tab extends Component<IProps, IState> {
44 return ( 45 return (
45 <div className="content-tabs"> 46 <div className="content-tabs">
46 <div className="content-tabs__tabs"> 47 <div className="content-tabs__tabs">
48 {/* eslint-disable-next-line @eslint-react/no-children-map */}
47 {Children.map(children, (child, i) => ( 49 {Children.map(children, (child, i) => (
48 <button 50 <button
49 // eslint-disable-next-line react/no-array-index-key 51 // eslint-disable-next-line react/no-array-index-key, @eslint-react/no-array-index-key
50 key={i} 52 key={i}
51 className={classnames({ 53 className={classnames({
52 'content-tabs__item': true, 54 'content-tabs__item': true,
@@ -60,9 +62,10 @@ class Tab extends Component<IProps, IState> {
60 ))} 62 ))}
61 </div> 63 </div>
62 <div className="content-tabs__content"> 64 <div className="content-tabs__content">
65 {/* eslint-disable-next-line @eslint-react/no-children-map */}
63 {Children.map(children, (child, i) => ( 66 {Children.map(children, (child, i) => (
64 <div 67 <div
65 // eslint-disable-next-line react/no-array-index-key 68 // eslint-disable-next-line react/no-array-index-key, @eslint-react/no-array-index-key
66 key={i} 69 key={i}
67 className={classnames({ 70 className={classnames({
68 'content-tabs__item': true, 71 'content-tabs__item': true,
diff --git a/src/components/ui/button/index.tsx b/src/components/ui/button/index.tsx
index 5c606f274..ba4353dae 100644
--- a/src/components/ui/button/index.tsx
+++ b/src/components/ui/button/index.tsx
@@ -223,7 +223,7 @@ class ButtonComponent extends Component<IProps, IState> {
223 ) : ( 223 ) : (
224 <button 224 <button
225 id={id} 225 id={id}
226 // eslint-disable-next-line react/button-has-type 226 // eslint-disable-next-line react/button-has-type, @eslint-react/dom/no-missing-button-type
227 type={type} 227 type={type}
228 onClick={onClick} 228 onClick={onClick}
229 className={classnames({ 229 className={classnames({
diff --git a/src/components/ui/imageUpload/index.tsx b/src/components/ui/imageUpload/index.tsx
index 876572484..092271ab0 100644
--- a/src/components/ui/imageUpload/index.tsx
+++ b/src/components/ui/imageUpload/index.tsx
@@ -129,7 +129,9 @@ class ImageUpload extends Component<IProps, IState> {
129 </> 129 </>
130 ) : ( 130 ) : (
131 <Dropzone 131 <Dropzone
132 // eslint-disable-next-line react/jsx-no-bind
132 onDropAccepted={this.onDropAccepted.bind(this)} 133 onDropAccepted={this.onDropAccepted.bind(this)}
134 // eslint-disable-next-line react/jsx-no-bind
133 onDropRejected={this.onDropRejected.bind(this)} 135 onDropRejected={this.onDropRejected.bind(this)}
134 multiple={multiple} 136 multiple={multiple}
135 accept={{ 137 accept={{
diff --git a/src/components/ui/input/index.tsx b/src/components/ui/input/index.tsx
index c61efe570..7e3179baf 100644
--- a/src/components/ui/input/index.tsx
+++ b/src/components/ui/input/index.tsx
@@ -16,6 +16,7 @@ import {
16 injectIntl, 16 injectIntl,
17} from 'react-intl'; 17} from 'react-intl';
18import withStyles, { type WithStylesProps } from 'react-jss'; 18import withStyles, { type WithStylesProps } from 'react-jss';
19import { isEnterKeyPress } from '../../../jsUtils';
19// biome-ignore lint/suspicious/noShadowRestrictedNames: <explanation> 20// biome-ignore lint/suspicious/noShadowRestrictedNames: <explanation>
20import Error from '../error'; 21import Error from '../error';
21import Icon from '../icon'; 22import Icon from '../icon';
@@ -96,7 +97,7 @@ class Input extends Component<IProps, IState> {
96 } 97 }
97 98
98 onInputKeyPress(e: KeyboardEvent<HTMLInputElement>): void { 99 onInputKeyPress(e: KeyboardEvent<HTMLInputElement>): void {
99 if (e.key === 'Enter') { 100 if (isEnterKeyPress(e.key)) {
100 const { onEnterKey = noop } = this.props; 101 const { onEnterKey = noop } = this.props;
101 onEnterKey(); 102 onEnterKey();
102 } 103 }
@@ -172,7 +173,7 @@ class Input extends Component<IProps, IState> {
172 onFocus={onFocus} 173 onFocus={onFocus}
173 onBlur={onBlur} 174 onBlur={onBlur}
174 disabled={disabled} 175 disabled={disabled}
175 onKeyPress={this.onInputKeyPress.bind(this)} 176 onKeyUp={this.onInputKeyPress.bind(this)}
176 min={min} 177 min={min}
177 max={max} 178 max={max}
178 step={step} 179 step={step}
diff --git a/src/components/ui/select/index.tsx b/src/components/ui/select/index.tsx
index 2716ebc2d..c19c12417 100644
--- a/src/components/ui/select/index.tsx
+++ b/src/components/ui/select/index.tsx
@@ -13,6 +13,11 @@ import {
13 createRef, 13 createRef,
14} from 'react'; 14} from 'react';
15import withStyles, { type WithStylesProps } from 'react-jss'; 15import withStyles, { type WithStylesProps } from 'react-jss';
16import {
17 isArrowDownKeyPress,
18 isArrowUpKeyPress,
19 isEnterKeyPress,
20} from '../../../jsUtils';
16import type { Theme } from '../../../themes'; 21import type { Theme } from '../../../themes';
17// biome-ignore lint/suspicious/noShadowRestrictedNames: <explanation> 22// biome-ignore lint/suspicious/noShadowRestrictedNames: <explanation>
18import Error from '../error'; 23import Error from '../error';
@@ -197,6 +202,7 @@ class SelectComponent extends Component<IProps, IState> {
197 this.arrowKeysHandler = this.arrowKeysHandler.bind(this); 202 this.arrowKeysHandler = this.arrowKeysHandler.bind(this);
198 } 203 }
199 204
205 // eslint-disable-next-line @eslint-react/no-unsafe-component-will-mount
200 UNSAFE_componentWillMount(): void { 206 UNSAFE_componentWillMount(): void {
201 const { value } = this.props; 207 const { value } = this.props;
202 208
@@ -287,23 +293,23 @@ class SelectComponent extends Component<IProps, IState> {
287 293
288 if (!open) return; 294 if (!open) return;
289 295
290 if (e.key === 'ArrowUp' || e.key === 'ArrowDown') { 296 if (isArrowUpKeyPress(e.key) || isArrowDownKeyPress(e.key)) {
291 e.preventDefault(); 297 e.preventDefault();
292 } 298 }
293 299
294 if (this.componentRef?.current) { 300 if (this.componentRef?.current) {
295 if (e.key === 'ArrowUp' && selected > 0) { 301 if (isArrowUpKeyPress(e.key) && selected > 0) {
296 this.setState((state: IState) => ({ 302 this.setState((state: IState) => ({
297 selected: state.selected - 1, 303 selected: state.selected - 1,
298 })); 304 }));
299 } else if ( 305 } else if (
300 e.key === 'ArrowDown' && 306 isArrowDownKeyPress(e.key) &&
301 selected < Object.keys(options!).length - 1 307 selected < Object.keys(options!).length - 1
302 ) { 308 ) {
303 this.setState((state: IState) => ({ 309 this.setState((state: IState) => ({
304 selected: state.selected + 1, 310 selected: state.selected + 1,
305 })); 311 }));
306 } else if (e.key === 'Enter') { 312 } else if (isEnterKeyPress(e.key)) {
307 this.select(Object.keys(options!)[selected]); 313 this.select(Object.keys(options!)[selected]);
308 } 314 }
309 315
@@ -417,6 +423,7 @@ class SelectComponent extends Component<IProps, IState> {
417 ref={this.scrollContainerRef} 423 ref={this.scrollContainerRef}
418 > 424 >
419 {Object.keys(options!).map((key, i) => ( 425 {Object.keys(options!).map((key, i) => (
426 // eslint-disable-next-line jsx-a11y/no-static-element-interactions
420 <div 427 <div
421 key={key} 428 key={key}
422 onClick={() => this.select(key)} 429 onClick={() => this.select(key)}
diff --git a/src/components/ui/textarea/index.tsx b/src/components/ui/textarea/index.tsx
index 4a0e77afe..e332f7a47 100644
--- a/src/components/ui/textarea/index.tsx
+++ b/src/components/ui/textarea/index.tsx
@@ -40,10 +40,9 @@ class TextareaComponent extends Component<IProps> {
40 const { data } = this.props; 40 const { data } = this.props;
41 41
42 if (this.textareaRef?.current && data) { 42 if (this.textareaRef?.current && data) {
43 Object.keys(data).map( 43 Object.keys(data).forEach(key => {
44 // biome-ignore lint/suspicious/noAssignInExpressions: <explanation> 44 this.textareaRef.current!.dataset[key] = data[key];
45 key => (this.textareaRef.current!.dataset[key] = data[key]), 45 });
46 );
47 } 46 }
48 } 47 }
49 48
diff --git a/src/config.ts b/src/config.ts
index 5b9a5eaba..f086c54ee 100644
--- a/src/config.ts
+++ b/src/config.ts
@@ -422,6 +422,7 @@ export const DEFAULT_APP_SETTINGS = {
422 hideSettingsButton: false, 422 hideSettingsButton: false,
423 hideDownloadButton: false, 423 hideDownloadButton: false,
424 alwaysShowWorkspaces: false, 424 alwaysShowWorkspaces: false,
425 hideAllServicesWorkspace: false,
425 liftSingleInstanceLock: false, 426 liftSingleInstanceLock: false,
426 enableLongPressServiceHint: false, 427 enableLongPressServiceHint: false,
427 isTodosFeatureEnabled: true, 428 isTodosFeatureEnabled: true,
diff --git a/src/containers/auth/AuthReleaseNotesScreen.tsx b/src/containers/auth/AuthReleaseNotesScreen.tsx
index 3191ba139..eac537ad6 100644
--- a/src/containers/auth/AuthReleaseNotesScreen.tsx
+++ b/src/containers/auth/AuthReleaseNotesScreen.tsx
@@ -43,6 +43,7 @@ class AuthReleaseNotesScreen extends Component<IProps, IState> {
43 intl, 43 intl,
44 ); 44 );
45 45
46 // eslint-disable-next-line @eslint-react/no-set-state-in-component-did-mount
46 this.setState({ 47 this.setState({
47 data, 48 data,
48 }); 49 });
diff --git a/src/containers/download-manager/DownloadManagerScreen.tsx b/src/containers/download-manager/DownloadManagerScreen.tsx
index cd9686f4d..3413be37a 100644
--- a/src/containers/download-manager/DownloadManagerScreen.tsx
+++ b/src/containers/download-manager/DownloadManagerScreen.tsx
@@ -1,15 +1,12 @@
1import { Component, type ReactElement } from 'react';
2import DownloadManager from '../../components/downloadManager/DownloadManagerDashboard'; 1import DownloadManager from '../../components/downloadManager/DownloadManagerDashboard';
3import ErrorBoundary from '../../components/util/ErrorBoundary'; 2import ErrorBoundary from '../../components/util/ErrorBoundary';
4 3
5class DownloadManagerScreen extends Component { 4const DownloadManagerScreen = ({ ...props }) => {
6 render(): ReactElement { 5 return (
7 return ( 6 <ErrorBoundary>
8 <ErrorBoundary> 7 <DownloadManager {...props} />
9 <DownloadManager {...this.props} /> 8 </ErrorBoundary>
10 </ErrorBoundary> 9 );
11 ); 10};
12 }
13}
14 11
15export default DownloadManagerScreen; 12export default DownloadManagerScreen;
diff --git a/src/containers/layout/AppLayoutContainer.tsx b/src/containers/layout/AppLayoutContainer.tsx
index 3f8aad0ac..b18aa4690 100644
--- a/src/containers/layout/AppLayoutContainer.tsx
+++ b/src/containers/layout/AppLayoutContainer.tsx
@@ -80,6 +80,8 @@ class AppLayoutContainer extends Component<IProps> {
80 ? workspaceStore.getWorkspaceServices(workspace).map(s => s.name) 80 ? workspaceStore.getWorkspaceServices(workspace).map(s => s.name)
81 : services.all.map(s => s.name) 81 : services.all.map(s => s.name)
82 } 82 }
83 stores={this.props.stores}
84 actions={this.props.actions}
83 /> 85 />
84 ); 86 );
85 87
diff --git a/src/containers/settings/EditServiceScreen.tsx b/src/containers/settings/EditServiceScreen.tsx
index dde69ef2d..f3b9b0857 100644
--- a/src/containers/settings/EditServiceScreen.tsx
+++ b/src/containers/settings/EditServiceScreen.tsx
@@ -141,13 +141,17 @@ class EditServiceScreen extends Component<IProps> {
141 const { action } = this.props.params; 141 const { action } = this.props.params;
142 const { recipes, services } = this.props.stores; 142 const { recipes, services } = this.props.stores;
143 const { createService, updateService } = this.props.actions.service; 143 const { createService, updateService } = this.props.actions.service;
144 // eslint-disable-next-line no-param-reassign
144 data.darkReaderSettings = { 145 data.darkReaderSettings = {
145 brightness: data.darkReaderBrightness, 146 brightness: data.darkReaderBrightness,
146 contrast: data.darkReaderContrast, 147 contrast: data.darkReaderContrast,
147 sepia: data.darkReaderSepia, 148 sepia: data.darkReaderSepia,
148 }; 149 };
150 // eslint-disable-next-line no-param-reassign
149 delete data.darkReaderContrast; 151 delete data.darkReaderContrast;
152 // eslint-disable-next-line no-param-reassign
150 delete data.darkReaderBrightness; 153 delete data.darkReaderBrightness;
154 // eslint-disable-next-line no-param-reassign
151 delete data.darkReaderSepia; 155 delete data.darkReaderSepia;
152 156
153 const serviceData = data; 157 const serviceData = data;
diff --git a/src/containers/settings/EditSettingsScreen.tsx b/src/containers/settings/EditSettingsScreen.tsx
index b731ad50a..fdd9bd8bc 100644
--- a/src/containers/settings/EditSettingsScreen.tsx
+++ b/src/containers/settings/EditSettingsScreen.tsx
@@ -277,6 +277,10 @@ const messages = defineMessages({
277 id: 'settings.app.form.alwaysShowWorkspaces', 277 id: 'settings.app.form.alwaysShowWorkspaces',
278 defaultMessage: 'Always show workspace drawer', 278 defaultMessage: 'Always show workspace drawer',
279 }, 279 },
280 hideAllServicesWorkspace: {
281 id: 'settings.app.form.hideAllServicesWorkspace',
282 defaultMessage: 'Hide "All services" workspace',
283 },
280 accentColor: { 284 accentColor: {
281 id: 'settings.app.form.accentColor', 285 id: 'settings.app.form.accentColor',
282 defaultMessage: 'Accent color', 286 defaultMessage: 'Accent color',
@@ -453,6 +457,9 @@ class EditSettingsScreen extends Component<
453 hideSettingsButton: Boolean(settingsData.hideSettingsButton), 457 hideSettingsButton: Boolean(settingsData.hideSettingsButton),
454 hideDownloadButton: Boolean(settingsData.hideDownloadButton), 458 hideDownloadButton: Boolean(settingsData.hideDownloadButton),
455 alwaysShowWorkspaces: Boolean(settingsData.alwaysShowWorkspaces), 459 alwaysShowWorkspaces: Boolean(settingsData.alwaysShowWorkspaces),
460 hideAllServicesWorkspace: Boolean(
461 settingsData.hideAllServicesWorkspace,
462 ),
456 accentColor: settingsData.accentColor, 463 accentColor: settingsData.accentColor,
457 progressbarAccentColor: settingsData.progressbarAccentColor, 464 progressbarAccentColor: settingsData.progressbarAccentColor,
458 showMessageBadgeWhenMuted: Boolean( 465 showMessageBadgeWhenMuted: Boolean(
@@ -1155,6 +1162,15 @@ class EditSettingsScreen extends Component<
1155 default: DEFAULT_APP_SETTINGS.alwaysShowWorkspaces, 1162 default: DEFAULT_APP_SETTINGS.alwaysShowWorkspaces,
1156 type: 'checkbox', 1163 type: 'checkbox',
1157 }, 1164 },
1165 hideAllServicesWorkspace: {
1166 label: intl.formatMessage(messages.hideAllServicesWorkspace),
1167 value: ifUndefined<boolean>(
1168 settings.all.app.hideAllServicesWorkspace,
1169 DEFAULT_APP_SETTINGS.hideAllServicesWorkspace,
1170 ),
1171 default: DEFAULT_APP_SETTINGS.hideAllServicesWorkspace,
1172 type: 'checkbox',
1173 },
1158 accentColor: { 1174 accentColor: {
1159 label: intl.formatMessage(messages.accentColor), 1175 label: intl.formatMessage(messages.accentColor),
1160 value: ifUndefined<string>( 1176 value: ifUndefined<string>(
diff --git a/src/containers/settings/ReleaseNotesScreen.tsx b/src/containers/settings/ReleaseNotesScreen.tsx
index 482364817..3a7b8d0e9 100644
--- a/src/containers/settings/ReleaseNotesScreen.tsx
+++ b/src/containers/settings/ReleaseNotesScreen.tsx
@@ -1,16 +1,12 @@
1import { Component, type ReactElement } from 'react';
2
3import ReleaseNotes from '../../components/settings/releaseNotes/ReleaseNotesDashboard'; 1import ReleaseNotes from '../../components/settings/releaseNotes/ReleaseNotesDashboard';
4import ErrorBoundary from '../../components/util/ErrorBoundary'; 2import ErrorBoundary from '../../components/util/ErrorBoundary';
5 3
6class ReleaseNotesScreen extends Component { 4const ReleaseNotesScreen = () => {
7 render(): ReactElement { 5 return (
8 return ( 6 <ErrorBoundary>
9 <ErrorBoundary> 7 <ReleaseNotes />
10 <ReleaseNotes /> 8 </ErrorBoundary>
11 </ErrorBoundary> 9 );
12 ); 10};
13 }
14}
15 11
16export default ReleaseNotesScreen; 12export default ReleaseNotesScreen;
diff --git a/src/containers/settings/SupportScreen.tsx b/src/containers/settings/SupportScreen.tsx
index 4c50869bb..3fdb0b4df 100644
--- a/src/containers/settings/SupportScreen.tsx
+++ b/src/containers/settings/SupportScreen.tsx
@@ -1,16 +1,12 @@
1import { Component, type ReactElement } from 'react';
2
3import SupportFerdium from '../../components/settings/supportFerdium/SupportFerdiumDashboard'; 1import SupportFerdium from '../../components/settings/supportFerdium/SupportFerdiumDashboard';
4import ErrorBoundary from '../../components/util/ErrorBoundary'; 2import ErrorBoundary from '../../components/util/ErrorBoundary';
5 3
6class SupportScreen extends Component { 4const SupportScreen = () => {
7 render(): ReactElement { 5 return (
8 return ( 6 <ErrorBoundary>
9 <ErrorBoundary> 7 <SupportFerdium />
10 <SupportFerdium /> 8 </ErrorBoundary>
11 </ErrorBoundary> 9 );
12 ); 10};
13 }
14}
15 11
16export default SupportScreen; 12export default SupportScreen;
diff --git a/src/electron/ipc-api/autoUpdate.ts b/src/electron/ipc-api/autoUpdate.ts
index 775daf602..44e2a1b19 100644
--- a/src/electron/ipc-api/autoUpdate.ts
+++ b/src/electron/ipc-api/autoUpdate.ts
@@ -1,5 +1,6 @@
1import { BrowserWindow, ipcMain } from 'electron'; 1import { BrowserWindow, ipcMain } from 'electron';
2import { autoUpdater } from 'electron-updater'; 2import { autoUpdater } from 'electron-updater';
3// eslint-disable-next-line import/no-cycle
3import { appEvents } from '../..'; 4import { appEvents } from '../..';
4 5
5const debug = require('../../preload-safe-debug')('Ferdium:ipcApi:autoUpdate'); 6const debug = require('../../preload-safe-debug')('Ferdium:ipcApi:autoUpdate');
diff --git a/src/electron/ipc-api/index.ts b/src/electron/ipc-api/index.ts
index 48c6d142c..83cc5eae2 100644
--- a/src/electron/ipc-api/index.ts
+++ b/src/electron/ipc-api/index.ts
@@ -1,6 +1,7 @@
1import type { BrowserWindow } from 'electron'; 1import type { BrowserWindow } from 'electron';
2import type TrayIcon from '../../lib/Tray'; 2import type TrayIcon from '../../lib/Tray';
3import appIndicator from './appIndicator'; 3import appIndicator from './appIndicator';
4// eslint-disable-next-line import/no-cycle
4import autoUpdate from './autoUpdate'; 5import autoUpdate from './autoUpdate';
5import dnd from './dnd'; 6import dnd from './dnd';
6import download from './download'; 7import download from './download';
diff --git a/src/electron/ipc-api/processManager.ts b/src/electron/ipc-api/processManager.ts
index 6e9069666..f76d67bc7 100644
--- a/src/electron/ipc-api/processManager.ts
+++ b/src/electron/ipc-api/processManager.ts
@@ -1,4 +1,4 @@
1import { openProcessManager } from '@krisdages/electron-process-manager'; 1import { openProcessManager } from '@syed_umair/electron-process-manager';
2import { ipcMain } from 'electron'; 2import { ipcMain } from 'electron';
3 3
4export default () => { 4export default () => {
diff --git a/src/electron/macOSPermissions.ts b/src/electron/macOSPermissions.ts
index 90f0f4028..a3bbbbe19 100644
--- a/src/electron/macOSPermissions.ts
+++ b/src/electron/macOSPermissions.ts
@@ -2,7 +2,7 @@ import { dirname } from 'node:path';
2import { type BrowserWindow, dialog, systemPreferences } from 'electron'; 2import { type BrowserWindow, dialog, systemPreferences } from 'electron';
3import { mkdirSync, pathExistsSync, writeFileSync } from 'fs-extra'; 3import { mkdirSync, pathExistsSync, writeFileSync } from 'fs-extra';
4import macosVersion from 'macos-version'; 4import macosVersion from 'macos-version';
5// eslint-disable-next-line @typescript-eslint/ban-ts-comment, @typescript-eslint/prefer-ts-expect-error 5// eslint-disable-next-line @typescript-eslint/prefer-ts-expect-error
6// @ts-ignore 6// @ts-ignore
7import { askForScreenCaptureAccess } from 'node-mac-permissions'; 7import { askForScreenCaptureAccess } from 'node-mac-permissions';
8import { userDataPath } from '../environment-remote'; 8import { userDataPath } from '../environment-remote';
diff --git a/src/features/appearance/index.ts b/src/features/appearance/index.ts
index 049080505..9b7715a23 100644
--- a/src/features/appearance/index.ts
+++ b/src/features/appearance/index.ts
@@ -46,6 +46,7 @@ function generateAccentStyle(accentColorStr) {
46 try { 46 try {
47 accentColor = color(accentColorStr); 47 accentColor = color(accentColorStr);
48 } catch { 48 } catch {
49 // eslint-disable-next-line no-param-reassign
49 accentColorStr = DEFAULT_APP_SETTINGS.accentColor; 50 accentColorStr = DEFAULT_APP_SETTINGS.accentColor;
50 accentColor = color(accentColorStr); 51 accentColor = color(accentColorStr);
51 } 52 }
diff --git a/src/features/basicAuth/Component.tsx b/src/features/basicAuth/Component.tsx
index 7c901344d..bae38443a 100644
--- a/src/features/basicAuth/Component.tsx
+++ b/src/features/basicAuth/Component.tsx
@@ -61,6 +61,7 @@ class BasicAuthModal extends Component<IProps> {
61 <Modal 61 <Modal
62 isOpen={isModalVisible} 62 isOpen={isModalVisible}
63 className={classes.modal} 63 className={classes.modal}
64 // eslint-disable-next-line react/jsx-no-bind
64 close={this.cancel.bind(this)} 65 close={this.cancel.bind(this)}
65 showClose={false} 66 showClose={false}
66 > 67 >
@@ -86,6 +87,7 @@ class BasicAuthModal extends Component<IProps> {
86 type="button" 87 type="button"
87 label={intl.formatMessage(globalMessages.cancel)} 88 label={intl.formatMessage(globalMessages.cancel)}
88 buttonType="secondary" 89 buttonType="secondary"
90 // eslint-disable-next-line react/jsx-no-bind
89 onClick={this.cancel.bind(this)} 91 onClick={this.cancel.bind(this)}
90 /> 92 />
91 <Button 93 <Button
diff --git a/src/features/communityRecipes/store.ts b/src/features/communityRecipes/store.ts
index 1c21908e2..548867528 100644
--- a/src/features/communityRecipes/store.ts
+++ b/src/features/communityRecipes/store.ts
@@ -27,6 +27,7 @@ export class CommunityRecipesStore extends FeatureStore {
27 return this.stores.recipePreviews.dev.map( 27 return this.stores.recipePreviews.dev.map(
28 (recipePreview: { isDevRecipe: boolean; author: any[] }) => { 28 (recipePreview: { isDevRecipe: boolean; author: any[] }) => {
29 // TODO: Need to figure out if this is even necessary/used 29 // TODO: Need to figure out if this is even necessary/used
30 // eslint-disable-next-line no-param-reassign
30 recipePreview.isDevRecipe = !!recipePreview.author.some( 31 recipePreview.isDevRecipe = !!recipePreview.author.some(
31 (author: { email: string }) => 32 (author: { email: string }) =>
32 author.email === this.stores.user.data.email, 33 author.email === this.stores.user.data.email,
diff --git a/src/features/publishDebugInfo/Component.tsx b/src/features/publishDebugInfo/Component.tsx
index 8b38ba5af..c837ede4f 100644
--- a/src/features/publishDebugInfo/Component.tsx
+++ b/src/features/publishDebugInfo/Component.tsx
@@ -48,7 +48,7 @@ const messages = defineMessages({
48 }, 48 },
49 published: { 49 published: {
50 id: 'feature.publishDebugInfo.published', 50 id: 'feature.publishDebugInfo.published',
51 defaultMessage: 'Your debug log was published and is now availible at', 51 defaultMessage: 'Your debug log was published and is now available at',
52 }, 52 },
53}); 53});
54 54
diff --git a/src/features/quickSwitch/Component.tsx b/src/features/quickSwitch/Component.tsx
index a5c102386..3a7477f62 100644
--- a/src/features/quickSwitch/Component.tsx
+++ b/src/features/quickSwitch/Component.tsx
@@ -140,7 +140,7 @@ class QuickSwitchModal extends Component<IProps, IState> {
140 this.state.search && 140 this.state.search &&
141 compact(invoke(this.state.search, 'match', /^[\da-z]/i)).length > 0 141 compact(invoke(this.state.search, 'match', /^[\da-z]/i)).length > 0
142 ) { 142 ) {
143 // Apply simple search algorythm to list of all services 143 // Apply simple search algorithm to list of all services
144 services = this.props.stores!.services.allDisplayed; 144 services = this.props.stores!.services.allDisplayed;
145 services = services.filter( 145 services = services.filter(
146 service => 146 service =>
@@ -302,6 +302,7 @@ class QuickSwitchModal extends Component<IProps, IState> {
302 isOpen={isModalVisible} 302 isOpen={isModalVisible}
303 className={`${classes.modal} quick-switch`} 303 className={`${classes.modal} quick-switch`}
304 shouldCloseOnOverlayClick 304 shouldCloseOnOverlayClick
305 // eslint-disable-next-line react/jsx-no-bind
305 close={this.close.bind(this)} 306 close={this.close.bind(this)}
306 > 307 >
307 <H1 className={classes.headline}> 308 <H1 className={classes.headline}>
@@ -318,6 +319,7 @@ class QuickSwitchModal extends Component<IProps, IState> {
318 319
319 <div className={classes.services}> 320 <div className={classes.services}>
320 {services.map((service, index) => ( 321 {services.map((service, index) => (
322 // eslint-disable-next-line jsx-a11y/no-static-element-interactions
321 <div 323 <div
322 className={`${classes.service} ${ 324 className={`${classes.service} ${
323 this.state.selected === index 325 this.state.selected === index
diff --git a/src/features/todos/actions.ts b/src/features/todos/actions.ts
index c2000752f..27c7e489b 100644
--- a/src/features/todos/actions.ts
+++ b/src/features/todos/actions.ts
@@ -36,6 +36,7 @@ export const todoActions = createActionsFromDefinitions<TodoActionsType>(
36 channel: PropTypes.string.isRequired, 36 channel: PropTypes.string.isRequired,
37 message: PropTypes.shape({ 37 message: PropTypes.shape({
38 action: PropTypes.string.isRequired, 38 action: PropTypes.string.isRequired,
39 // eslint-disable-next-line react/forbid-prop-types
39 data: PropTypes.object, 40 data: PropTypes.object,
40 }), 41 }),
41 }, 42 },
diff --git a/src/features/todos/components/TodosWebview.tsx b/src/features/todos/components/TodosWebview.tsx
index f9493d519..544768bbf 100644
--- a/src/features/todos/components/TodosWebview.tsx
+++ b/src/features/todos/components/TodosWebview.tsx
@@ -92,6 +92,7 @@ class TodosWebview extends Component<IProps, IState> {
92 } 92 }
93 93
94 componentDidMount() { 94 componentDidMount() {
95 // eslint-disable-next-line @eslint-react/no-set-state-in-component-did-mount
95 this.setState({ 96 this.setState({
96 width: this.props.width, 97 width: this.props.width,
97 }); 98 });
@@ -173,6 +174,7 @@ class TodosWebview extends Component<IProps, IState> {
173 } 174 }
174 175
175 return ( 176 return (
177 // eslint-disable-next-line jsx-a11y/no-static-element-interactions
176 <div 178 <div
177 className={classnames({ 179 className={classnames({
178 [classes.root]: true, 180 [classes.root]: true,
@@ -185,6 +187,7 @@ class TodosWebview extends Component<IProps, IState> {
185 ref={this.node} 187 ref={this.node}
186 id="todos-panel" 188 id="todos-panel"
187 > 189 >
190 {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions */}
188 <div 191 <div
189 className={classes.resizeHandler} 192 className={classes.resizeHandler}
190 style={{ 193 style={{
diff --git a/src/features/todos/index.ts b/src/features/todos/index.ts
index 2fa8c3130..5465ed48a 100644
--- a/src/features/todos/index.ts
+++ b/src/features/todos/index.ts
@@ -3,6 +3,7 @@ import TodoStore from './store';
3export const todosStore = new TodoStore(); 3export const todosStore = new TodoStore();
4 4
5export default function initTodos(stores: { todos?: any }, actions: any) { 5export default function initTodos(stores: { todos?: any }, actions: any) {
6 // eslint-disable-next-line no-param-reassign
6 stores.todos = todosStore; 7 stores.todos = todosStore;
7 todosStore.start(stores, actions); 8 todosStore.start(stores, actions);
8} 9}
diff --git a/src/features/webControls/components/WebControls.tsx b/src/features/webControls/components/WebControls.tsx
index aee568a7d..25b23cbee 100644
--- a/src/features/webControls/components/WebControls.tsx
+++ b/src/features/webControls/components/WebControls.tsx
@@ -15,6 +15,7 @@ import {
15import withStyles, { type WithStylesProps } from 'react-jss'; 15import withStyles, { type WithStylesProps } from 'react-jss';
16import { Tooltip as ReactTooltip } from 'react-tooltip'; 16import { Tooltip as ReactTooltip } from 'react-tooltip';
17import Icon from '../../../components/ui/icon'; 17import Icon from '../../../components/ui/icon';
18import { isEnterKeyPress, isEscapeKeyPress } from '../../../jsUtils';
18 19
19const messages = defineMessages({ 20const messages = defineMessages({
20 goHome: { 21 goHome: {
@@ -215,7 +216,7 @@ class WebControls extends Component<IProps, IState> {
215 }); 216 });
216 }} 217 }}
217 onKeyDown={event => { 218 onKeyDown={event => {
218 if (event.key === 'Enter') { 219 if (isEnterKeyPress(event.key)) {
219 this.setState({ 220 this.setState({
220 editUrl: false, 221 editUrl: false,
221 }); 222 });
@@ -224,7 +225,7 @@ class WebControls extends Component<IProps, IState> {
224 if (this.inputRef?.current) { 225 if (this.inputRef?.current) {
225 this.inputRef.current.blur(); 226 this.inputRef.current.blur();
226 } 227 }
227 } else if (event.key === 'Escape') { 228 } else if (isEscapeKeyPress(event.key)) {
228 this.setState({ 229 this.setState({
229 editUrl: false, 230 editUrl: false,
230 inputUrl: url, 231 inputUrl: url,
diff --git a/src/features/webControls/containers/WebControlsScreen.tsx b/src/features/webControls/containers/WebControlsScreen.tsx
index b492264bf..8709fcba5 100644
--- a/src/features/webControls/containers/WebControlsScreen.tsx
+++ b/src/features/webControls/containers/WebControlsScreen.tsx
@@ -118,8 +118,10 @@ class WebControlsScreen extends Component<IProps> {
118 } 118 }
119 119
120 try { 120 try {
121 // eslint-disable-next-line no-param-reassign
121 url = new URL(url).toString(); 122 url = new URL(url).toString();
122 } catch { 123 } catch {
124 // eslint-disable-next-line no-param-reassign
123 url = 125 url =
124 /^((?!-))(xn--)?[\da-z][\d_a-z-]{0,61}[\da-z]{0,1}\.(xn--)?([\da-z-]{1,61}|[\da-z-]{1,30}\.[a-z]{2,})$/.test( 126 /^((?!-))(xn--)?[\da-z][\d_a-z-]{0,61}[\da-z]{0,1}\.(xn--)?([\da-z-]{1,61}|[\da-z-]{1,30}\.[a-z]{2,})$/.test(
125 url, 127 url,
diff --git a/src/features/workspaces/components/CreateWorkspaceForm.tsx b/src/features/workspaces/components/CreateWorkspaceForm.tsx
index 0c365564a..b35ffe4d8 100644
--- a/src/features/workspaces/components/CreateWorkspaceForm.tsx
+++ b/src/features/workspaces/components/CreateWorkspaceForm.tsx
@@ -81,6 +81,7 @@ class CreateWorkspaceForm extends Component<IProps> {
81 className={classes.input} 81 className={classes.input}
82 showLabel={false} 82 showLabel={false}
83 // @ts-expect-error Expected 1 arguments, but got 2. 83 // @ts-expect-error Expected 1 arguments, but got 2.
84 // eslint-disable-next-line react/jsx-no-bind
84 onEnterKey={this.submitForm.bind(this, form)} 85 onEnterKey={this.submitForm.bind(this, form)}
85 focus={workspaceStore.isUserAllowedToUseFeature} 86 focus={workspaceStore.isUserAllowedToUseFeature}
86 /> 87 />
@@ -89,6 +90,7 @@ class CreateWorkspaceForm extends Component<IProps> {
89 type="submit" 90 type="submit"
90 label={intl.formatMessage(messages.submitButton)} 91 label={intl.formatMessage(messages.submitButton)}
91 // @ts-expect-error Expected 1 arguments, but got 2. 92 // @ts-expect-error Expected 1 arguments, but got 2.
93 // eslint-disable-next-line react/jsx-no-bind
92 onClick={this.submitForm.bind(this, form)} 94 onClick={this.submitForm.bind(this, form)}
93 busy={isSubmitting} 95 busy={isSubmitting}
94 buttonType={isSubmitting ? 'secondary' : 'primary'} 96 buttonType={isSubmitting ? 'secondary' : 'primary'}
diff --git a/src/features/workspaces/components/EditWorkspaceForm.tsx b/src/features/workspaces/components/EditWorkspaceForm.tsx
index 18e7c251e..cc7a2b19b 100644
--- a/src/features/workspaces/components/EditWorkspaceForm.tsx
+++ b/src/features/workspaces/components/EditWorkspaceForm.tsx
@@ -92,6 +92,7 @@ class EditWorkspaceForm extends Component<IProps> {
92 this.form = this.prepareWorkspaceForm(this.props.workspace); 92 this.form = this.prepareWorkspaceForm(this.props.workspace);
93 } 93 }
94 94
95 // eslint-disable-next-line @eslint-react/no-unsafe-component-will-receive-props
95 UNSAFE_componentWillReceiveProps(nextProps): void { 96 UNSAFE_componentWillReceiveProps(nextProps): void {
96 const { workspace } = this.props; 97 const { workspace } = this.props;
97 if (workspace.id !== nextProps.workspace.id) { 98 if (workspace.id !== nextProps.workspace.id) {
@@ -178,11 +179,11 @@ class EditWorkspaceForm extends Component<IProps> {
178 <span className="settings__header-item">{workspace.name}</span> 179 <span className="settings__header-item">{workspace.name}</span>
179 </div> 180 </div>
180 <div className="settings__body"> 181 <div className="settings__body">
181 {updateWorkspaceRequest.error && ( 182 {updateWorkspaceRequest.error ? (
182 <Infobox icon="alert" type="danger"> 183 <Infobox icon="alert" type="danger">
183 Error while saving workspace 184 Error while saving workspace
184 </Infobox> 185 </Infobox>
185 )} 186 ) : null}
186 <div className={classes.nameInput}> 187 <div className={classes.nameInput}>
187 <Input {...form.$('name').bind()} /> 188 <Input {...form.$('name').bind()} />
188 <Toggle {...form.$('keepLoaded').bind()} /> 189 <Toggle {...form.$('keepLoaded').bind()} />
@@ -228,6 +229,7 @@ class EditWorkspaceForm extends Component<IProps> {
228 buttonType={isDeleting ? 'secondary' : 'danger'} 229 buttonType={isDeleting ? 'secondary' : 'danger'}
229 className="settings__delete-button" 230 className="settings__delete-button"
230 disabled={isDeleting} 231 disabled={isDeleting}
232 // eslint-disable-next-line react/jsx-no-bind
231 onClick={this.delete.bind(this)} 233 onClick={this.delete.bind(this)}
232 /> 234 />
233 {/* ===== Save Button ===== */} 235 {/* ===== Save Button ===== */}
@@ -237,6 +239,7 @@ class EditWorkspaceForm extends Component<IProps> {
237 busy={isSaving} 239 busy={isSaving}
238 className="franz-form__button" 240 className="franz-form__button"
239 buttonType={isSaving ? 'secondary' : 'primary'} 241 buttonType={isSaving ? 'secondary' : 'primary'}
242 // eslint-disable-next-line react/jsx-no-bind
240 onClick={this.save.bind(this, form)} 243 onClick={this.save.bind(this, form)}
241 // TODO: Need to disable if no services have been added to this workspace 244 // TODO: Need to disable if no services have been added to this workspace
242 disabled={isSaving} 245 disabled={isSaving}
diff --git a/src/features/workspaces/components/WorkspaceDrawer.tsx b/src/features/workspaces/components/WorkspaceDrawer.tsx
index 2826b741a..4621482bc 100644
--- a/src/features/workspaces/components/WorkspaceDrawer.tsx
+++ b/src/features/workspaces/components/WorkspaceDrawer.tsx
@@ -1,6 +1,6 @@
1import { mdiCog, mdiPlusBox } from '@mdi/js'; 1import { mdiCog, mdiPlusBox } from '@mdi/js';
2import { noop } from 'lodash'; 2import { noop } from 'lodash';
3import { observer } from 'mobx-react'; 3import { inject, observer } from 'mobx-react';
4import { Component, type ReactElement } from 'react'; 4import { Component, type ReactElement } from 'react';
5import { 5import {
6 type WrappedComponentProps, 6 type WrappedComponentProps,
@@ -9,6 +9,7 @@ import {
9} from 'react-intl'; 9} from 'react-intl';
10import withStyles, { type WithStylesProps } from 'react-jss'; 10import withStyles, { type WithStylesProps } from 'react-jss';
11import { Tooltip as ReactTooltip } from 'react-tooltip'; 11import { Tooltip as ReactTooltip } from 'react-tooltip';
12import type { StoresProps } from '../../../@types/ferdium-components.types';
12import { H1 } from '../../../components/ui/headline'; 13import { H1 } from '../../../components/ui/headline';
13import Icon from '../../../components/ui/icon'; 14import Icon from '../../../components/ui/icon';
14import workspaceActions from '../actions'; 15import workspaceActions from '../actions';
@@ -92,10 +93,14 @@ const styles = theme => ({
92 }, 93 },
93}); 94});
94 95
95interface IProps extends WithStylesProps<typeof styles>, WrappedComponentProps { 96interface IProps
97 extends WithStylesProps<typeof styles>,
98 WrappedComponentProps,
99 StoresProps {
96 getServicesForWorkspace: (workspace: Workspace | null) => string[]; 100 getServicesForWorkspace: (workspace: Workspace | null) => string[];
97} 101}
98 102
103@inject('stores')
99@observer 104@observer
100class WorkspaceDrawer extends Component<IProps> { 105class WorkspaceDrawer extends Component<IProps> {
101 componentDidMount(): void { 106 componentDidMount(): void {
@@ -115,10 +120,16 @@ class WorkspaceDrawer extends Component<IProps> {
115 const actualWorkspace = isSwitchingWorkspace 120 const actualWorkspace = isSwitchingWorkspace
116 ? nextWorkspace 121 ? nextWorkspace
117 : activeWorkspace; 122 : activeWorkspace;
123
124 const { settings } = this.props.stores;
125
126 const { hideAllServicesWorkspace } = settings.all.app;
127
118 return ( 128 return (
119 <div className={`${classes.drawer} workspaces-drawer`}> 129 <div className={`${classes.drawer} workspaces-drawer`}>
120 <H1 className={classes.headline}> 130 <H1 className={classes.headline}>
121 {intl.formatMessage(messages.headline)} 131 {intl.formatMessage(messages.headline)}
132 {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions */}
122 <span 133 <span
123 className={classes.workspacesSettingsButton} 134 className={classes.workspacesSettingsButton}
124 onKeyDown={noop} 135 onKeyDown={noop}
@@ -138,16 +149,18 @@ class WorkspaceDrawer extends Component<IProps> {
138 </span> 149 </span>
139 </H1> 150 </H1>
140 <div className={classes.workspaces}> 151 <div className={classes.workspaces}>
141 <WorkspaceDrawerItem 152 {!hideAllServicesWorkspace && (
142 name={intl.formatMessage(messages.allServices)} 153 <WorkspaceDrawerItem
143 onClick={() => { 154 name={intl.formatMessage(messages.allServices)}
144 workspaceActions.deactivate(); 155 onClick={() => {
145 workspaceActions.toggleWorkspaceDrawer(); 156 workspaceActions.deactivate();
146 }} 157 workspaceActions.toggleWorkspaceDrawer();
147 services={getServicesForWorkspace(null)} 158 }}
148 isActive={actualWorkspace == null} 159 services={getServicesForWorkspace(null)}
149 shortcutIndex={0} 160 isActive={actualWorkspace == null}
150 /> 161 shortcutIndex={0}
162 />
163 )}
151 {workspaces.map((workspace, index) => ( 164 {workspaces.map((workspace, index) => (
152 <WorkspaceDrawerItem 165 <WorkspaceDrawerItem
153 key={workspace.id} 166 key={workspace.id}
@@ -167,6 +180,7 @@ class WorkspaceDrawer extends Component<IProps> {
167 shortcutIndex={index + 1} 180 shortcutIndex={index + 1}
168 /> 181 />
169 ))} 182 ))}
183 {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions */}
170 <div 184 <div
171 className={classes.addNewWorkspaceLabel} 185 className={classes.addNewWorkspaceLabel}
172 onClick={() => { 186 onClick={() => {
diff --git a/src/features/workspaces/components/WorkspaceDrawerItem.tsx b/src/features/workspaces/components/WorkspaceDrawerItem.tsx
index 1e4b57dba..01a18ffb0 100644
--- a/src/features/workspaces/components/WorkspaceDrawerItem.tsx
+++ b/src/features/workspaces/components/WorkspaceDrawerItem.tsx
@@ -111,6 +111,7 @@ class WorkspaceDrawerItem extends Component<IProps> {
111 const contextMenu = Menu.buildFromTemplate(contextMenuTemplate); 111 const contextMenu = Menu.buildFromTemplate(contextMenuTemplate);
112 112
113 return ( 113 return (
114 // eslint-disable-next-line jsx-a11y/no-static-element-interactions
114 <div 115 <div
115 className={classnames([ 116 className={classnames([
116 classes.item, 117 classes.item,
diff --git a/src/features/workspaces/components/WorkspaceServiceListItem.tsx b/src/features/workspaces/components/WorkspaceServiceListItem.tsx
index 6f61f8a51..a56e5802f 100644
--- a/src/features/workspaces/components/WorkspaceServiceListItem.tsx
+++ b/src/features/workspaces/components/WorkspaceServiceListItem.tsx
@@ -42,6 +42,7 @@ class WorkspaceServiceListItem extends Component<IProps> {
42 const { classes, isInWorkspace, onToggle, service } = this.props; 42 const { classes, isInWorkspace, onToggle, service } = this.props;
43 return ( 43 return (
44 // onclick in below div used to fix bug raised under toggle duplicate component removal 44 // onclick in below div used to fix bug raised under toggle duplicate component removal
45 // eslint-disable-next-line jsx-a11y/no-static-element-interactions
45 <div className={classes.listItem} onClick={onToggle} onKeyDown={noop}> 46 <div className={classes.listItem} onClick={onToggle} onKeyDown={noop}>
46 <ServiceIcon className={classes.serviceIcon} service={service} /> 47 <ServiceIcon className={classes.serviceIcon} service={service} />
47 <span 48 <span
diff --git a/src/features/workspaces/components/WorkspacesDashboard.tsx b/src/features/workspaces/components/WorkspacesDashboard.tsx
index 8fb2cf923..ad54c6682 100644
--- a/src/features/workspaces/components/WorkspacesDashboard.tsx
+++ b/src/features/workspaces/components/WorkspacesDashboard.tsx
@@ -105,33 +105,33 @@ class WorkspacesDashboard extends Component<IProps> {
105 <div className="settings__body"> 105 <div className="settings__body">
106 {/* ===== Workspace updated info ===== */} 106 {/* ===== Workspace updated info ===== */}
107 {updateWorkspaceRequest.wasExecuted && 107 {updateWorkspaceRequest.wasExecuted &&
108 updateWorkspaceRequest.result && ( 108 updateWorkspaceRequest.result ? (
109 <Appear className={classes.appear}> 109 <Appear className={classes.appear}>
110 <Infobox 110 <Infobox
111 type="success" 111 type="success"
112 icon="checkbox-marked-circle-outline" 112 icon="checkbox-marked-circle-outline"
113 dismissible 113 dismissible
114 onUnmount={updateWorkspaceRequest.reset} 114 onUnmount={updateWorkspaceRequest.reset}
115 > 115 >
116 {intl.formatMessage(messages.updatedInfo)} 116 {intl.formatMessage(messages.updatedInfo)}
117 </Infobox> 117 </Infobox>
118 </Appear> 118 </Appear>
119 )} 119 ) : null}
120 120
121 {/* ===== Workspace deleted info ===== */} 121 {/* ===== Workspace deleted info ===== */}
122 {deleteWorkspaceRequest.wasExecuted && 122 {deleteWorkspaceRequest.wasExecuted &&
123 deleteWorkspaceRequest.result && ( 123 deleteWorkspaceRequest.result ? (
124 <Appear className={classes.appear}> 124 <Appear className={classes.appear}>
125 <Infobox 125 <Infobox
126 type="success" 126 type="success"
127 icon="checkbox-marked-circle-outline" 127 icon="checkbox-marked-circle-outline"
128 dismissible 128 dismissible
129 onUnmount={deleteWorkspaceRequest.reset} 129 onUnmount={deleteWorkspaceRequest.reset}
130 > 130 >
131 {intl.formatMessage(messages.deletedInfo)} 131 {intl.formatMessage(messages.deletedInfo)}
132 </Infobox> 132 </Infobox>
133 </Appear> 133 </Appear>
134 )} 134 ) : null}
135 135
136 {/* ===== Create workspace form ===== */} 136 {/* ===== Create workspace form ===== */}
137 <div className={classes.createForm}> 137 <div className={classes.createForm}>
@@ -169,7 +169,7 @@ class WorkspacesDashboard extends Component<IProps> {
169 </p> 169 </p>
170 </div> 170 </div>
171 ) : ( 171 ) : (
172 <table className={classes.table} role="grid"> 172 <table className={classes.table}>
173 {/* ===== Workspaces list ===== */} 173 {/* ===== Workspaces list ===== */}
174 <tbody> 174 <tbody>
175 {workspaces.map(workspace => ( 175 {workspaces.map(workspace => (
diff --git a/src/features/workspaces/index.ts b/src/features/workspaces/index.ts
index 25975936a..cbe5bb5fd 100644
--- a/src/features/workspaces/index.ts
+++ b/src/features/workspaces/index.ts
@@ -3,6 +3,7 @@ import WorkspacesStore from './store';
3export const workspaceStore = new WorkspacesStore(); 3export const workspaceStore = new WorkspacesStore();
4 4
5export default function initWorkspaces(stores, actions) { 5export default function initWorkspaces(stores, actions) {
6 // eslint-disable-next-line no-param-reassign
6 stores.workspaces = workspaceStore; 7 stores.workspaces = workspaceStore;
7 workspaceStore.start(stores, actions); 8 workspaceStore.start(stores, actions);
8} 9}
diff --git a/src/helpers/translation-helpers.ts b/src/helpers/translation-helpers.ts
index 2e8f6b260..105a0ccfc 100644
--- a/src/helpers/translation-helpers.ts
+++ b/src/helpers/translation-helpers.ts
@@ -8,7 +8,7 @@ export async function translateTo(
8): Promise<{ text: string; error: boolean }> { 8): Promise<{ text: string; error: boolean }> {
9 const errorText = 9 const errorText =
10 // TODO: Need to support i18n 10 // TODO: Need to support i18n
11 'FERDIUM ERROR: An error occured. Please select less text to translate or try again later.'; 11 'FERDIUM ERROR: An error occurred. Please select less text to translate or try again later.';
12 12
13 if (translatorEngine === 'Google') { 13 if (translatorEngine === 'Google') {
14 const translationResult = await translateGoogle(text, { 14 const translationResult = await translateGoogle(text, {
diff --git a/src/helpers/update-helpers.ts b/src/helpers/update-helpers.ts
index 3e548c69b..a6a2162a7 100644
--- a/src/helpers/update-helpers.ts
+++ b/src/helpers/update-helpers.ts
@@ -29,12 +29,12 @@ const messages = defineMessages({
29 connectionError: { 29 connectionError: {
30 id: 'settings.releasenotes.connectionError', 30 id: 'settings.releasenotes.connectionError',
31 defaultMessage: 31 defaultMessage:
32 'An error occured when connecting to Github, please try again later.', 32 'An error occurred when connecting to Github, please try again later.',
33 }, 33 },
34 connectionErrorPageMissing: { 34 connectionErrorPageMissing: {
35 id: 'settings.releasenotes.connectionErrorPageMissing', 35 id: 'settings.releasenotes.connectionErrorPageMissing',
36 defaultMessage: 36 defaultMessage:
37 'An error occured when connecting to Github, the page you are looking for is missing.', 37 'An error occurred when connecting to Github, the page you are looking for is missing.',
38 }, 38 },
39}); 39});
40 40
diff --git a/src/i18n/locales/ar.json b/src/i18n/locales/ar.json
index a2570640d..8dddee951 100644
--- a/src/i18n/locales/ar.json
+++ b/src/i18n/locales/ar.json
@@ -14,7 +14,6 @@
14 "feature.publishDebugInfo.info": "نشر معلومات التصحيح الخاصة بك يساعدنا على العثور على المشاكل والأخطاء في فردي. بنشر معلومات التصحيح الخاصة بك فإنك تقبل سياسة الخصوصية وشروط خدمة مصحح فيردي", 14 "feature.publishDebugInfo.info": "نشر معلومات التصحيح الخاصة بك يساعدنا على العثور على المشاكل والأخطاء في فردي. بنشر معلومات التصحيح الخاصة بك فإنك تقبل سياسة الخصوصية وشروط خدمة مصحح فيردي",
15 "feature.publishDebugInfo.privacy": "سياسة الخصوصية", 15 "feature.publishDebugInfo.privacy": "سياسة الخصوصية",
16 "feature.publishDebugInfo.publish": "قبول ونشر", 16 "feature.publishDebugInfo.publish": "قبول ونشر",
17 "feature.publishDebugInfo.published": "تم نشر سجل تصحيح الأخطاء الخاص بك وهو متاح الآن في",
18 "feature.publishDebugInfo.terms": "بنود الخدمة", 17 "feature.publishDebugInfo.terms": "بنود الخدمة",
19 "feature.publishDebugInfo.title": "نشر معلومات تصحيح الأخطاء", 18 "feature.publishDebugInfo.title": "نشر معلومات تصحيح الأخطاء",
20 "feature.quickSwitch.info": "حدد خدمة من خلال زر تاب، ↑ و ↓. افتح الخدمة بالظغط على زر الدخول.", 19 "feature.quickSwitch.info": "حدد خدمة من خلال زر تاب، ↑ و ↓. افتح الخدمة بالظغط على زر الدخول.",
@@ -240,13 +239,11 @@
240 "settings.app.headlineUpdates": "التحديثات", 239 "settings.app.headlineUpdates": "التحديثات",
241 "settings.app.hibernateInfo": "بشكل افتراضي، سيبقي فيردي جميع خدماتك مفتوحة وتحميلها في الخلفية بحيث تكون جاهزة عندما ترغب في استخدامها. سيتم إلغاء تحميل الخدمات الخاصة بك بعد مبلغ معين. هذا مفيد لحفظ ذاكرة الوصول العشوائي أو الحفاظ على الخدمات من إبطاء الكمبيوتر.", 240 "settings.app.hibernateInfo": "بشكل افتراضي، سيبقي فيردي جميع خدماتك مفتوحة وتحميلها في الخلفية بحيث تكون جاهزة عندما ترغب في استخدامها. سيتم إلغاء تحميل الخدمات الخاصة بك بعد مبلغ معين. هذا مفيد لحفظ ذاكرة الوصول العشوائي أو الحفاظ على الخدمات من إبطاء الكمبيوتر.",
242 "settings.app.inactivityLockInfo": "دقائق من عدم النشاط، بعدها يجب أن يقفل فيردي تلقائياً. استخدم 0 لتعطيل", 241 "settings.app.inactivityLockInfo": "دقائق من عدم النشاط، بعدها يجب أن يقفل فيردي تلقائياً. استخدم 0 لتعطيل",
243 "settings.app.lockInfo": "يتيح لك قفل كلمة المرور الحفاظ على حماية رسائلك.\nاستخدام قفل كلمة المرور، سيتم مطالبتك بإدخال كلمة المرور الخاصة بك في كل مرة تبدأ فيها فيردي أو تقفل فيردي نفسك باستخدام رمز القفل في الزاوية اليسرى السفلية أو الاختصار {lockShortcut}.",
244 "settings.app.lockedPassword": "كلمة المرور", 242 "settings.app.lockedPassword": "كلمة المرور",
245 "settings.app.lockedPasswordInfo": "الرجاء التأكد من تعيين كلمة مرور سوف تتذكرها.\nإذا فقدت كلمة المرور هذه، سوف تضطر إلى إعادة تثبيت فردي.", 243 "settings.app.lockedPasswordInfo": "الرجاء التأكد من تعيين كلمة مرور سوف تتذكرها.\nإذا فقدت كلمة المرور هذه، سوف تضطر إلى إعادة تثبيت فردي.",
246 "settings.app.restartRequired": "التغيرات تتطلب إعادة تشغيل", 244 "settings.app.restartRequired": "التغيرات تتطلب إعادة تشغيل",
247 "settings.app.scheduledDNDInfo": "يسمح لك \"عدم الإزعاج\" المجدولة بتحديد فترة زمنية لا تريد فيها الحصول على إشعارات من فردي.", 245 "settings.app.scheduledDNDInfo": "يسمح لك \"عدم الإزعاج\" المجدولة بتحديد فترة زمنية لا تريد فيها الحصول على إشعارات من فردي.",
248 "settings.app.scheduledDNDTimeInfo": "مرات بصيغة 24 ساعة. يمكن أن يكون وقت النهاية قبل وقت البدء (على سبيل المثال البدء 17:00، نهاية 09:00) لتمكين عدم الإزعاج بين عشية وضحاها.", 246 "settings.app.scheduledDNDTimeInfo": "مرات بصيغة 24 ساعة. يمكن أن يكون وقت النهاية قبل وقت البدء (على سبيل المثال البدء 17:00، نهاية 09:00) لتمكين عدم الإزعاج بين عشية وضحاها.",
249 "settings.app.spellCheckerLanguageInfo": "فيردي يستخدم جهاز الماك للتدقيق الإملائي للتحقق من الطباعة. إذا كنت ترغب في تغيير اللغات التي تتحقق منها المدقق الإملائي، يمكنك فعل ذلك في تفضيلات نظام ماك الخاص بك.",
250 "settings.app.subheadlineCache": "الذاكرة المؤقتة", 247 "settings.app.subheadlineCache": "الذاكرة المؤقتة",
251 "settings.app.todoServerInfo": "سيتم استخدام هذا الخادم لميزة \"فردي تودو\".", 248 "settings.app.todoServerInfo": "سيتم استخدام هذا الخادم لميزة \"فردي تودو\".",
252 "settings.app.translationHelp": "ساعدنا على ترجمة فيردي إلى لغتك.", 249 "settings.app.translationHelp": "ساعدنا على ترجمة فيردي إلى لغتك.",
diff --git a/src/i18n/locales/ca.json b/src/i18n/locales/ca.json
index 85bff64bc..cabb5c3ea 100644
--- a/src/i18n/locales/ca.json
+++ b/src/i18n/locales/ca.json
@@ -11,7 +11,6 @@
11 "feature.publishDebugInfo.info": "La publicació de la informació de depuració ens ajuda a trobar problemes i errors a Ferdium. En publicar la informació de depuració, accepteu la política de privadesa i els termes del servei de Ferdium Debugger", 11 "feature.publishDebugInfo.info": "La publicació de la informació de depuració ens ajuda a trobar problemes i errors a Ferdium. En publicar la informació de depuració, accepteu la política de privadesa i els termes del servei de Ferdium Debugger",
12 "feature.publishDebugInfo.privacy": "Política de privacitat", 12 "feature.publishDebugInfo.privacy": "Política de privacitat",
13 "feature.publishDebugInfo.publish": "Accepta i publica", 13 "feature.publishDebugInfo.publish": "Accepta i publica",
14 "feature.publishDebugInfo.published": "El vostre registre de depuració es va publicar i ja es pot consultar a",
15 "feature.publishDebugInfo.terms": "Termes del Servei", 14 "feature.publishDebugInfo.terms": "Termes del Servei",
16 "feature.publishDebugInfo.title": "Publicar informació de depuració", 15 "feature.publishDebugInfo.title": "Publicar informació de depuració",
17 "feature.quickSwitch.info": "Seleccioneu un servei amb TAB, ↑ i ↓. Obriu un servei amb ENTER.", 16 "feature.quickSwitch.info": "Seleccioneu un servei amb TAB, ↑ i ↓. Obriu un servei amb ENTER.",
diff --git a/src/i18n/locales/cs.json b/src/i18n/locales/cs.json
index d61154825..07320a606 100644
--- a/src/i18n/locales/cs.json
+++ b/src/i18n/locales/cs.json
@@ -13,7 +13,6 @@
13 "feature.publishDebugInfo.info": "Publikování informací o ladění nám pomáhá najít problémy a chyby ve Ferdium. Zveřejněním informací o ladění přijímáte zásady ochrany osobních údajů a podmínky služby Ferdiumho Debugera", 13 "feature.publishDebugInfo.info": "Publikování informací o ladění nám pomáhá najít problémy a chyby ve Ferdium. Zveřejněním informací o ladění přijímáte zásady ochrany osobních údajů a podmínky služby Ferdiumho Debugera",
14 "feature.publishDebugInfo.privacy": "Zásady ochrany soukromí", 14 "feature.publishDebugInfo.privacy": "Zásady ochrany soukromí",
15 "feature.publishDebugInfo.publish": "Přijmout a publikovat", 15 "feature.publishDebugInfo.publish": "Přijmout a publikovat",
16 "feature.publishDebugInfo.published": "Váš protokol ladění byl zveřejněn a je k dispozici na",
17 "feature.publishDebugInfo.terms": "Podmínky služby", 16 "feature.publishDebugInfo.terms": "Podmínky služby",
18 "feature.publishDebugInfo.title": "Publikovat ladící informace", 17 "feature.publishDebugInfo.title": "Publikovat ladící informace",
19 "feature.quickSwitch.info": "Vyberte službu s TAB, ýmem a <unk> . Otevřete službu s ENTER.", 18 "feature.quickSwitch.info": "Vyberte službu s TAB, ýmem a <unk> . Otevřete službu s ENTER.",
@@ -232,13 +231,11 @@
232 "settings.app.headlineUpdates": "Aktualizace", 231 "settings.app.headlineUpdates": "Aktualizace",
233 "settings.app.hibernateInfo": "Ve výchozím nastavení si Ferdium ponechá všechny vaše služby otevřené a načtené na pozadí, takže jsou připraveny, když je chcete používat. Služba Hibernace uvolní vaše služby po zadané částce. To je užitečné pro úsporu RAM nebo zachování služeb před zpomalením vašeho počítače.", 232 "settings.app.hibernateInfo": "Ve výchozím nastavení si Ferdium ponechá všechny vaše služby otevřené a načtené na pozadí, takže jsou připraveny, když je chcete používat. Služba Hibernace uvolní vaše služby po zadané částce. To je užitečné pro úsporu RAM nebo zachování služeb před zpomalením vašeho počítače.",
234 "settings.app.inactivityLockInfo": "Minut z nečinnosti, po kterém by měl Ferdium automaticky uzamknout. Použijte 0 pro vypnutí", 233 "settings.app.inactivityLockInfo": "Minut z nečinnosti, po kterém by měl Ferdium automaticky uzamknout. Použijte 0 pro vypnutí",
235 "settings.app.lockInfo": "Zámek hesel vám umožní chránit vaše zprávy.\nPomocí zámku hesla, budete vyzváni k zadání hesla pokaždé, když začnete Ferdium nebo uzamknete pomocí symbolu zámku v levém dolním rohu nebo zkratky {lockShortcut}.",
236 "settings.app.lockedPassword": "Heslo", 234 "settings.app.lockedPassword": "Heslo",
237 "settings.app.lockedPasswordInfo": "Ujistěte se prosím, že jste si pamatovali heslo.\nPokud ztratíte toto heslo, budete muset Ferdiumho znovu nainstalovat.", 235 "settings.app.lockedPasswordInfo": "Ujistěte se prosím, že jste si pamatovali heslo.\nPokud ztratíte toto heslo, budete muset Ferdiumho znovu nainstalovat.",
238 "settings.app.restartRequired": "Změny vyžadují restart", 236 "settings.app.restartRequired": "Změny vyžadují restart",
239 "settings.app.scheduledDNDInfo": "Naplánováno \"Ne-Nerušit\" vám umožňuje definovat dobu, ve které nechcete dostávat oznámení od Ferdium.", 237 "settings.app.scheduledDNDInfo": "Naplánováno \"Ne-Nerušit\" vám umožňuje definovat dobu, ve které nechcete dostávat oznámení od Ferdium.",
240 "settings.app.scheduledDNDTimeInfo": "Časy ve 24-hodinovém formátu. Čas ukončení může být před časem zahájení (např. začátek 17:00, konec 09:00) pro zapnutí režimu Nerušit přes noc.", 238 "settings.app.scheduledDNDTimeInfo": "Časy ve 24-hodinovém formátu. Čas ukončení může být před časem zahájení (např. začátek 17:00, konec 09:00) pro zapnutí režimu Nerušit přes noc.",
241 "settings.app.spellCheckerLanguageInfo": "Ferdium používá vaši Mac vestavěnou kontrolu pravopisu pro kontrolu překlepů. Pokud chcete změnit jazyky, které kontrola pravopisu zkontroluje, můžete tak učinit v Předvolbách systému Mac.",
242 "settings.app.subheadlineCache": "Mezipaměť", 239 "settings.app.subheadlineCache": "Mezipaměť",
243 "settings.app.todoServerInfo": "Tento server bude použit pro funkci \"Ferdium Todo\".", 240 "settings.app.todoServerInfo": "Tento server bude použit pro funkci \"Ferdium Todo\".",
244 "settings.app.translationHelp": "Pomozte nám přeložit Ferdium do svého jazyka.", 241 "settings.app.translationHelp": "Pomozte nám přeložit Ferdium do svého jazyka.",
diff --git a/src/i18n/locales/da.json b/src/i18n/locales/da.json
index 09e6956a9..72b712e04 100644
--- a/src/i18n/locales/da.json
+++ b/src/i18n/locales/da.json
@@ -13,7 +13,6 @@
13 "feature.publishDebugInfo.info": "At udgive dine fejlfindingsoplysninger hjælper os med at finde problemer og fejl i Ferdium. Ved at udgive dine fejlfindingsoplysninger accepterer du Ferdium Debugger's privatlivspolitik og servicevilkår", 13 "feature.publishDebugInfo.info": "At udgive dine fejlfindingsoplysninger hjælper os med at finde problemer og fejl i Ferdium. Ved at udgive dine fejlfindingsoplysninger accepterer du Ferdium Debugger's privatlivspolitik og servicevilkår",
14 "feature.publishDebugInfo.privacy": "Privatlivspolitik", 14 "feature.publishDebugInfo.privacy": "Privatlivspolitik",
15 "feature.publishDebugInfo.publish": "Accepter og udgiv", 15 "feature.publishDebugInfo.publish": "Accepter og udgiv",
16 "feature.publishDebugInfo.published": "Din fejlfindingsoplysninger blev udgivet og er nu tilgængelig på",
17 "feature.publishDebugInfo.terms": "Servicevilkårene", 16 "feature.publishDebugInfo.terms": "Servicevilkårene",
18 "feature.publishDebugInfo.title": "Udgiv fejlfindingsoplysninger", 17 "feature.publishDebugInfo.title": "Udgiv fejlfindingsoplysninger",
19 "feature.quickSwitch.info": "Vælg en tjeneste med TAB, ↑ og ↓. Åbn en tjeneste med ENTER.", 18 "feature.quickSwitch.info": "Vælg en tjeneste med TAB, ↑ og ↓. Åbn en tjeneste med ENTER.",
@@ -233,13 +232,11 @@
233 "settings.app.headlineUpdates": "Opdateringer", 232 "settings.app.headlineUpdates": "Opdateringer",
234 "settings.app.hibernateInfo": "Som standard vil Ferdium holde alle dine tjenester åbne og indlæste i baggrunden, så de er klar, når du vil bruge dem. Du kan vælge at sætte dine tjenester i dvale efter en angivet mængde tid. Dette er nyttigt til at spare hukommelse eller forhindre tjenester i at bremse din computer.", 233 "settings.app.hibernateInfo": "Som standard vil Ferdium holde alle dine tjenester åbne og indlæste i baggrunden, så de er klar, når du vil bruge dem. Du kan vælge at sætte dine tjenester i dvale efter en angivet mængde tid. Dette er nyttigt til at spare hukommelse eller forhindre tjenester i at bremse din computer.",
235 "settings.app.inactivityLockInfo": "Minutter af inaktivitet, hvorefter Ferdium automatisk skal låse. Brug 0 for at deaktivere", 234 "settings.app.inactivityLockInfo": "Minutter af inaktivitet, hvorefter Ferdium automatisk skal låse. Brug 0 for at deaktivere",
236 "settings.app.lockInfo": "Password Lock giver dig mulighed for at holde dine beskeder beskyttet.\nBrug Password Lock, du vil blive bedt om at indtaste din adgangskode hver gang du starter Ferdium eller låser Ferdium selv ved hjælp af låsesymbolet i nederste venstre hjørne eller genvejen {lockShortcut}.",
237 "settings.app.lockedPassword": "Adgangskode", 235 "settings.app.lockedPassword": "Adgangskode",
238 "settings.app.lockedPasswordInfo": "Sørg for at angive en adgangskode, du husker.\nHvis du mister denne adgangskode, skal du geninstallere Ferdium.", 236 "settings.app.lockedPasswordInfo": "Sørg for at angive en adgangskode, du husker.\nHvis du mister denne adgangskode, skal du geninstallere Ferdium.",
239 "settings.app.restartRequired": "Ændringer kræver genstart", 237 "settings.app.restartRequired": "Ændringer kræver genstart",
240 "settings.app.scheduledDNDInfo": "Planlagt Forstyr ikke giver dig mulighed for at definere et tidsrum, hvor du ikke ønsker at få meddelelser fra Ferdium.", 238 "settings.app.scheduledDNDInfo": "Planlagt Forstyr ikke giver dig mulighed for at definere et tidsrum, hvor du ikke ønsker at få meddelelser fra Ferdium.",
241 "settings.app.scheduledDNDTimeInfo": "Tider er i 24-timer format. Sluttidspunktet kan være før starttidspunktet (f.eks. fra 17:00 til 09:00) for at aktivere Forstyr ikke natten over.", 239 "settings.app.scheduledDNDTimeInfo": "Tider er i 24-timer format. Sluttidspunktet kan være før starttidspunktet (f.eks. fra 17:00 til 09:00) for at aktivere Forstyr ikke natten over.",
242 "settings.app.spellCheckerLanguageInfo": "Ferdium bruger din Macs indbyggede stavekontrol. Hvis du ønsker at ændre de sprog, stavekontrollen kontrollerer for, kan du gøre det i din Macs systemindstillinger.",
243 "settings.app.todoServerInfo": "Denne server vil blive brugt til funktionen \"Ferdium Todo\".", 240 "settings.app.todoServerInfo": "Denne server vil blive brugt til funktionen \"Ferdium Todo\".",
244 "settings.app.translationHelp": "Hjælp os med at oversætte Ferdium til dit sprog.", 241 "settings.app.translationHelp": "Hjælp os med at oversætte Ferdium til dit sprog.",
245 "settings.app.universalDarkModeInfo": "Universel mørk tilstand forsøger at dynamisk generere mørk tilstand stilarter for tjenester, der ellers ikke er understøttet.", 242 "settings.app.universalDarkModeInfo": "Universel mørk tilstand forsøger at dynamisk generere mørk tilstand stilarter for tjenester, der ellers ikke er understøttet.",
diff --git a/src/i18n/locales/de.json b/src/i18n/locales/de.json
index fda047798..d2d317586 100644
--- a/src/i18n/locales/de.json
+++ b/src/i18n/locales/de.json
@@ -16,7 +16,6 @@
16 "feature.publishDebugInfo.info": "Die Veröffentlichung deiner Debug-Informationen hilft uns, Probleme und Fehler in Ferdium zu finden. Indem du deine Debug-Informationen veröffentlichst, akzeptierst du die Datenschutzbestimmungen und Nutzungsbedingungen vom Ferdium Debugger", 16 "feature.publishDebugInfo.info": "Die Veröffentlichung deiner Debug-Informationen hilft uns, Probleme und Fehler in Ferdium zu finden. Indem du deine Debug-Informationen veröffentlichst, akzeptierst du die Datenschutzbestimmungen und Nutzungsbedingungen vom Ferdium Debugger",
17 "feature.publishDebugInfo.privacy": "Datenschutzrichtlinien", 17 "feature.publishDebugInfo.privacy": "Datenschutzrichtlinien",
18 "feature.publishDebugInfo.publish": "Akzeptieren und Veröffentlichen", 18 "feature.publishDebugInfo.publish": "Akzeptieren und Veröffentlichen",
19 "feature.publishDebugInfo.published": "Deine Debug-Informationen wurden veröffentlicht und sind jetzt verfügbar unter",
20 "feature.publishDebugInfo.terms": "Nutzungsbedingungen", 19 "feature.publishDebugInfo.terms": "Nutzungsbedingungen",
21 "feature.publishDebugInfo.title": "Debug-Informationen veröffentlichen", 20 "feature.publishDebugInfo.title": "Debug-Informationen veröffentlichen",
22 "feature.quickSwitch.info": "Wähle einen Dienst mit TAB, ↑ und ↓. Um einen Dienst zu öffnen, drücke ENTER.", 21 "feature.quickSwitch.info": "Wähle einen Dienst mit TAB, ↑ und ↓. Um einen Dienst zu öffnen, drücke ENTER.",
@@ -279,7 +278,6 @@
279 "settings.app.hibernateInfo": "Standardmäßig öffnet Ferdium alle deine Dienste im Hintergrund, sodass diese bereit sind, wenn du sie verwenden möchtest. \"Service Hibernation\" wird deine Dienste nach einer bestimmten Zeitspanne schließen. Dies ist nützlich, um RAM zu sparen oder Dienste davon abzuhalten, deinen Computer zu verlangsamen.", 278 "settings.app.hibernateInfo": "Standardmäßig öffnet Ferdium alle deine Dienste im Hintergrund, sodass diese bereit sind, wenn du sie verwenden möchtest. \"Service Hibernation\" wird deine Dienste nach einer bestimmten Zeitspanne schließen. Dies ist nützlich, um RAM zu sparen oder Dienste davon abzuhalten, deinen Computer zu verlangsamen.",
280 "settings.app.inactivityLockInfo": "Minuten der Inaktivität, nach denen Ferdium automatisch sperren soll. Verwenden Sie 0, um dies zu deaktivieren", 279 "settings.app.inactivityLockInfo": "Minuten der Inaktivität, nach denen Ferdium automatisch sperren soll. Verwenden Sie 0, um dies zu deaktivieren",
281 "settings.app.infoOpenCertificatesFolder": "Um ein Zertifikat zu installieren, klicken Sie auf die Schaltfläche unten, um den Zertifikatsordner zu öffnen, und kopieren Sie es in den Ordner. Danach können Sie den Dienst aktualisieren (STRG/CMD + R). Zum Entfernen/Deinstallieren löschen Sie einfach die Zertifikatsdatei und starten Ferdium neu.", 280 "settings.app.infoOpenCertificatesFolder": "Um ein Zertifikat zu installieren, klicken Sie auf die Schaltfläche unten, um den Zertifikatsordner zu öffnen, und kopieren Sie es in den Ordner. Danach können Sie den Dienst aktualisieren (STRG/CMD + R). Zum Entfernen/Deinstallieren löschen Sie einfach die Zertifikatsdatei und starten Ferdium neu.",
282 "settings.app.lockInfo": "Die Passwort-Sperre erlaubt es dir, deine Nachrichten zu schützen.\nMit der Passwort-Sperre wirst du sowohl beim Starten von Ferdium als auch wenn du das Programm manuell sperrst darum gebeten, dein Passwort einzugeben.\nDu kannst Ferdium über das Sperrsymbol in der unteren linken Ecke oder mit dem Shortcut {lockShortcut} sperren.",
283 "settings.app.lockedPassword": "Passwort", 281 "settings.app.lockedPassword": "Passwort",
284 "settings.app.lockedPasswordInfo": "Bitte stelle sicher, dass du ein Passwort setzt, an welches du dich erinnern kannst.\nSolltest du dieses Passwort vergessen, musst du Ferdium neu installieren.", 282 "settings.app.lockedPasswordInfo": "Bitte stelle sicher, dass du ein Passwort setzt, an welches du dich erinnern kannst.\nSolltest du dieses Passwort vergessen, musst du Ferdium neu installieren.",
285 "settings.app.overallTheme": "Allgemeines Farbschema", 283 "settings.app.overallTheme": "Allgemeines Farbschema",
@@ -300,7 +298,6 @@
300 "settings.app.sentryInfo": "Das Senden von Telemetriedaten ermöglicht es uns, Fehler in Ferdium zu finden - es werden keine persönlichen Informationen wie Ihre Nachrichtendaten gesendet!", 298 "settings.app.sentryInfo": "Das Senden von Telemetriedaten ermöglicht es uns, Fehler in Ferdium zu finden - es werden keine persönlichen Informationen wie Ihre Nachrichtendaten gesendet!",
301 "settings.app.serverHelp": "Verbunden mit dem Server unter {serverURL}", 299 "settings.app.serverHelp": "Verbunden mit dem Server unter {serverURL}",
302 "settings.app.servicesUpdateStatusUpToDate": "Ihre Dienste sind auf dem neuesten Stand", 300 "settings.app.servicesUpdateStatusUpToDate": "Ihre Dienste sind auf dem neuesten Stand",
303 "settings.app.spellCheckerLanguageInfo": "Ferdium verwendet den eingebauten Rechtschreibprüfer deines Macs, um nach Tippfehlern zu suchen. Wenn du die zu überprüfenden Sprachen ändern möchtest, kannst du das in deinen Systemeinstellungen tun.",
304 "settings.app.subheadlineCache": "Cache", 301 "settings.app.subheadlineCache": "Cache",
305 "settings.app.subheadlineFerdiumProfile": "Ferdium Profil", 302 "settings.app.subheadlineFerdiumProfile": "Ferdium Profil",
306 "settings.app.todoServerInfo": "Dieser Server wird für die \"Ferdium Todo\"-Funktion verwendet.", 303 "settings.app.todoServerInfo": "Dieser Server wird für die \"Ferdium Todo\"-Funktion verwendet.",
@@ -332,8 +329,6 @@
332 "settings.recipes.missingService": "Fehlt ein Dienst?", 329 "settings.recipes.missingService": "Fehlt ein Dienst?",
333 "settings.recipes.nothingFound": "Leider hat kein Dienst zu deinem Suchbegriff gepasst - aber du kannst ihn wahrscheinlich trotzdem über die Option \"Eigene Website\" hinzufügen. Bitte beachte, dass die Website möglicherweise weitere Dienste anzeigt, die seit deiner aktuellen Version zu Ferdium hinzugefügt wurden. Um diese neuen Dienste zu erhalten, erwäge bitte ein Upgrade auf eine neuere Version von Ferdium.", 330 "settings.recipes.nothingFound": "Leider hat kein Dienst zu deinem Suchbegriff gepasst - aber du kannst ihn wahrscheinlich trotzdem über die Option \"Eigene Website\" hinzufügen. Bitte beachte, dass die Website möglicherweise weitere Dienste anzeigt, die seit deiner aktuellen Version zu Ferdium hinzugefügt wurden. Um diese neuen Dienste zu erhalten, erwäge bitte ein Upgrade auf eine neuere Version von Ferdium.",
334 "settings.recipes.servicesSuccessfulAddedInfo": "Dienst erfolgreich hinzugefügt", 331 "settings.recipes.servicesSuccessfulAddedInfo": "Dienst erfolgreich hinzugefügt",
335 "settings.releasenotes.connectionError": "Beim Verbinden mit Github ist ein Fehler aufgetreten. Bitte versuchen Sie es später erneut.",
336 "settings.releasenotes.connectionErrorPageMissing": "Beim Verbinden mit Github ist ein Fehler aufgetreten. Die gesuchte Seite konnte nicht aufgefunden werden.",
337 "settings.releasenotes.headline": "Neuigkeiten", 332 "settings.releasenotes.headline": "Neuigkeiten",
338 "settings.searchService": "Dienst suchen", 333 "settings.searchService": "Dienst suchen",
339 "settings.service.error.goBack": "Zurück zu den Diensten", 334 "settings.service.error.goBack": "Zurück zu den Diensten",
diff --git a/src/i18n/locales/el.json b/src/i18n/locales/el.json
index fd36f03f7..c52fe5f98 100644
--- a/src/i18n/locales/el.json
+++ b/src/i18n/locales/el.json
@@ -14,7 +14,6 @@
14 "feature.publishDebugInfo.info": "Η δημοσίευση των πληροφοριών εντοπισμού σφαλμάτων σας μας βοηθά να βρούμε προβλήματα και σφάλματα στην Ferdium. Δημοσιεύοντας τις πληροφορίες αποσφαλμάτωσης αποδέχεστε την πολιτική απορρήτου και τους όρους υπηρεσίας του Ferdium Debugger", 14 "feature.publishDebugInfo.info": "Η δημοσίευση των πληροφοριών εντοπισμού σφαλμάτων σας μας βοηθά να βρούμε προβλήματα και σφάλματα στην Ferdium. Δημοσιεύοντας τις πληροφορίες αποσφαλμάτωσης αποδέχεστε την πολιτική απορρήτου και τους όρους υπηρεσίας του Ferdium Debugger",
15 "feature.publishDebugInfo.privacy": "Πολιτική απορρήτου", 15 "feature.publishDebugInfo.privacy": "Πολιτική απορρήτου",
16 "feature.publishDebugInfo.publish": "Αποδοχή και δημοσίευση", 16 "feature.publishDebugInfo.publish": "Αποδοχή και δημοσίευση",
17 "feature.publishDebugInfo.published": "Το αρχείο καταγραφής αποσφαλμάτωσης δημοσιεύτηκε και είναι διαθέσιμο στο",
18 "feature.publishDebugInfo.terms": "Όροι υπηρεσίας", 17 "feature.publishDebugInfo.terms": "Όροι υπηρεσίας",
19 "feature.publishDebugInfo.title": "Δημοσίευση πληροφοριών αποσφαλμάτωσης", 18 "feature.publishDebugInfo.title": "Δημοσίευση πληροφοριών αποσφαλμάτωσης",
20 "feature.quickSwitch.info": "Επιλέξτε μια υπηρεσία με TAB, ↑ και ↓ . Ανοίξτε μια υπηρεσία με ENTER.", 19 "feature.quickSwitch.info": "Επιλέξτε μια υπηρεσία με TAB, ↑ και ↓ . Ανοίξτε μια υπηρεσία με ENTER.",
@@ -232,13 +231,11 @@
232 "settings.app.headlineUpdates": "Ενημερώσεις", 231 "settings.app.headlineUpdates": "Ενημερώσεις",
233 "settings.app.hibernateInfo": "Από προεπιλογή, ο Ferdium θα κρατήσει όλες τις υπηρεσίες σας ανοιχτές και φορτωμένες στο παρασκήνιο, ώστε να είναι έτοιμες όταν θέλετε να τις χρησιμοποιήσετε. Η αδράνεια υπηρεσιών θα ξεφορτώσει τις υπηρεσίες σας μετά από ένα συγκεκριμένο ποσό. Αυτό είναι χρήσιμο για την αποθήκευση της μνήμης RAM ή για τη διατήρηση των υπηρεσιών από την επιβράδυνση του υπολογιστή σας.", 232 "settings.app.hibernateInfo": "Από προεπιλογή, ο Ferdium θα κρατήσει όλες τις υπηρεσίες σας ανοιχτές και φορτωμένες στο παρασκήνιο, ώστε να είναι έτοιμες όταν θέλετε να τις χρησιμοποιήσετε. Η αδράνεια υπηρεσιών θα ξεφορτώσει τις υπηρεσίες σας μετά από ένα συγκεκριμένο ποσό. Αυτό είναι χρήσιμο για την αποθήκευση της μνήμης RAM ή για τη διατήρηση των υπηρεσιών από την επιβράδυνση του υπολογιστή σας.",
234 "settings.app.inactivityLockInfo": "Λεπτά αδράνειας, μετά την οποία ο Ferdium θα πρέπει να κλειδώνει αυτόματα. Χρησιμοποιήστε το 0 για απενεργοποίηση", 233 "settings.app.inactivityLockInfo": "Λεπτά αδράνειας, μετά την οποία ο Ferdium θα πρέπει να κλειδώνει αυτόματα. Χρησιμοποιήστε το 0 για απενεργοποίηση",
235 "settings.app.lockInfo": "Το κλείδωμα κωδικού σας επιτρέπει να διατηρείτε τα μηνύματά σας προστατευμένα.\nΧρησιμοποιώντας το Κλείδωμα Κωδικού Πρόσβασης, Θα σας ζητηθεί να εισάγετε τον κωδικό πρόσβασής σας κάθε φορά που ξεκινάτε το Ferdium ή κλειδώνετε τον εαυτό σας χρησιμοποιώντας το σύμβολο κλειδώματος στην κάτω αριστερή γωνία ή τη συντόμευση {lockShortcut}.",
236 "settings.app.lockedPassword": "Κωδικός", 234 "settings.app.lockedPassword": "Κωδικός",
237 "settings.app.lockedPasswordInfo": "Παρακαλούμε βεβαιωθείτε να ορίσετε έναν κωδικό πρόσβασης που θα θυμάστε.\nΑν χάσετε αυτόν τον κωδικό πρόσβασης, θα πρέπει να επανεγκαταστήσετε το Ferdium.", 235 "settings.app.lockedPasswordInfo": "Παρακαλούμε βεβαιωθείτε να ορίσετε έναν κωδικό πρόσβασης που θα θυμάστε.\nΑν χάσετε αυτόν τον κωδικό πρόσβασης, θα πρέπει να επανεγκαταστήσετε το Ferdium.",
238 "settings.app.restartRequired": "Οι αλλαγές απαιτούν επανεκκίνηση", 236 "settings.app.restartRequired": "Οι αλλαγές απαιτούν επανεκκίνηση",
239 "settings.app.scheduledDNDInfo": "Η προγραμματισμένη λειτουργία Do-not-Disturb σας επιτρέπει να ορίσετε μια χρονική περίοδο κατά την οποία δεν θέλετε να λαμβάνετε ειδοποιήσεις από το Ferdium.", 237 "settings.app.scheduledDNDInfo": "Η προγραμματισμένη λειτουργία Do-not-Disturb σας επιτρέπει να ορίσετε μια χρονική περίοδο κατά την οποία δεν θέλετε να λαμβάνετε ειδοποιήσεις από το Ferdium.",
240 "settings.app.scheduledDNDTimeInfo": "Ωρες σε 24-ωρη μορφή. Η ώρα λήξης μπορεί να είναι πριν από την ώρα έναρξης (π.χ. έναρξη 17:00, τέλος 09:00) για να ενεργοποιηθεί η λειτουργία Do-not-Disturb κατά τη διάρκεια της νύχτας.", 238 "settings.app.scheduledDNDTimeInfo": "Ωρες σε 24-ωρη μορφή. Η ώρα λήξης μπορεί να είναι πριν από την ώρα έναρξης (π.χ. έναρξη 17:00, τέλος 09:00) για να ενεργοποιηθεί η λειτουργία Do-not-Disturb κατά τη διάρκεια της νύχτας.",
241 "settings.app.spellCheckerLanguageInfo": "Ο Ferdium χρησιμοποιεί τον ορθογραφικό έλεγχο του Mac σας για να ελέγξει για typos. Αν θέλετε να αλλάξετε τις γλώσσες για τις οποίες ελέγχει ο ορθογραφικός έλεγχος, μπορείτε να το κάνετε αυτό στις Προτιμήσεις συστήματος Mac σας.",
242 "settings.app.subheadlineCache": "Λανθάνουσα μνήμη", 239 "settings.app.subheadlineCache": "Λανθάνουσα μνήμη",
243 "settings.app.todoServerInfo": "Αυτός ο διακομιστής θα χρησιμοποιηθεί για τη λειτουργία \"Ferdium Todo\".", 240 "settings.app.todoServerInfo": "Αυτός ο διακομιστής θα χρησιμοποιηθεί για τη λειτουργία \"Ferdium Todo\".",
244 "settings.app.translationHelp": "Βοηθήστε μας να μεταφράσουμε το Ferdium στη δική σας γλώσσα.", 241 "settings.app.translationHelp": "Βοηθήστε μας να μεταφράσουμε το Ferdium στη δική σας γλώσσα.",
diff --git a/src/i18n/locales/en-US.json b/src/i18n/locales/en-US.json
index 90a45e83c..1941ecd86 100644
--- a/src/i18n/locales/en-US.json
+++ b/src/i18n/locales/en-US.json
@@ -16,7 +16,7 @@
16 "feature.publishDebugInfo.info": "Publishing your debug information helps us find issues and errors in Ferdium. By publishing your debug information you accept Ferdium Debugger's privacy policy and terms of service", 16 "feature.publishDebugInfo.info": "Publishing your debug information helps us find issues and errors in Ferdium. By publishing your debug information you accept Ferdium Debugger's privacy policy and terms of service",
17 "feature.publishDebugInfo.privacy": "Privacy policy", 17 "feature.publishDebugInfo.privacy": "Privacy policy",
18 "feature.publishDebugInfo.publish": "Accept and publish", 18 "feature.publishDebugInfo.publish": "Accept and publish",
19 "feature.publishDebugInfo.published": "Your debug log was published and is now availible at", 19 "feature.publishDebugInfo.published": "Your debug log was published and is now available at",
20 "feature.publishDebugInfo.terms": "Terms of service", 20 "feature.publishDebugInfo.terms": "Terms of service",
21 "feature.publishDebugInfo.title": "Publish debug information", 21 "feature.publishDebugInfo.title": "Publish debug information",
22 "feature.quickSwitch.info": "Select a service with TAB, ↑ and ↓. Open a service with ENTER.", 22 "feature.quickSwitch.info": "Select a service with TAB, ↑ and ↓. Open a service with ENTER.",
@@ -124,6 +124,7 @@
124 "menu.view.back": "Back", 124 "menu.view.back": "Back",
125 "menu.view.forward": "Forward", 125 "menu.view.forward": "Forward",
126 "menu.view.lockFerdium": "Lock Ferdium", 126 "menu.view.lockFerdium": "Lock Ferdium",
127 "menu.view.openProcessManager": "Open Process Manager",
127 "menu.view.openQuickSwitch": "Open Quick Switch", 128 "menu.view.openQuickSwitch": "Open Quick Switch",
128 "menu.view.reloadFerdium": "Reload Ferdium", 129 "menu.view.reloadFerdium": "Reload Ferdium",
129 "menu.view.reloadService": "Reload Service", 130 "menu.view.reloadService": "Reload Service",
@@ -222,6 +223,7 @@
222 "settings.app.form.grayscaleServicesDim": "Grayscale dim level", 223 "settings.app.form.grayscaleServicesDim": "Grayscale dim level",
223 "settings.app.form.hibernateOnStartup": "Keep services in hibernation on startup", 224 "settings.app.form.hibernateOnStartup": "Keep services in hibernation on startup",
224 "settings.app.form.hibernationStrategy": "Hibernation strategy", 225 "settings.app.form.hibernationStrategy": "Hibernation strategy",
226 "settings.app.form.hideAllServicesWorkspace": "Hide \"All services\" workspace",
225 "settings.app.form.hideCollapseButton": "Hide Collapse button", 227 "settings.app.form.hideCollapseButton": "Hide Collapse button",
226 "settings.app.form.hideDownloadButton": "Hide Downloads button", 228 "settings.app.form.hideDownloadButton": "Hide Downloads button",
227 "settings.app.form.hideNotificationsButton": "Hide Notifications & Sound button", 229 "settings.app.form.hideNotificationsButton": "Hide Notifications & Sound button",
@@ -281,7 +283,7 @@
281 "settings.app.hibernateInfo": "By default, Ferdium will keep all your services open and loaded in the background so they are ready when you want to use them. Service Hibernation will unload your services after a specified amount. This is useful to save RAM or keeping services from slowing down your computer.", 283 "settings.app.hibernateInfo": "By default, Ferdium will keep all your services open and loaded in the background so they are ready when you want to use them. Service Hibernation will unload your services after a specified amount. This is useful to save RAM or keeping services from slowing down your computer.",
282 "settings.app.inactivityLockInfo": "Minutes of inactivity, after which Ferdium should automatically lock. Use 0 to disable", 284 "settings.app.inactivityLockInfo": "Minutes of inactivity, after which Ferdium should automatically lock. Use 0 to disable",
283 "settings.app.infoOpenCertificatesFolder": "To install a certificate, click the button below to open the certificates folder and copy it into the folder. After that you can refresh the service (CTRL/CMD + R). To remove/uninstall, simply delete the certificate file and restart Ferdium.", 285 "settings.app.infoOpenCertificatesFolder": "To install a certificate, click the button below to open the certificates folder and copy it into the folder. After that you can refresh the service (CTRL/CMD + R). To remove/uninstall, simply delete the certificate file and restart Ferdium.",
284 "settings.app.lockInfo": "Password Lock allows you to keep your messages protected.\nUsing Password Lock, you will be prompted to enter your password everytime you start Ferdium or lock Ferdium yourself using the lock symbol in the bottom left corner or the shortcut {lockShortcut}.", 286 "settings.app.lockInfo": "Password Lock allows you to keep your messages protected.\nUsing Password Lock, you will be prompted to enter your password every time you start Ferdium or lock Ferdium yourself using the lock symbol in the bottom left corner or the shortcut {lockShortcut}.",
285 "settings.app.lockedPassword": "Password", 287 "settings.app.lockedPassword": "Password",
286 "settings.app.lockedPasswordInfo": "Please make sure to set a password you'll remember.\nIf you loose this password, you will have to reinstall Ferdium.", 288 "settings.app.lockedPasswordInfo": "Please make sure to set a password you'll remember.\nIf you loose this password, you will have to reinstall Ferdium.",
287 "settings.app.overallTheme": "Overall Theme", 289 "settings.app.overallTheme": "Overall Theme",
@@ -302,7 +304,7 @@
302 "settings.app.sentryInfo": "Sending telemetry data allows us to find errors in Ferdium - we will not send any personal information like your message data!", 304 "settings.app.sentryInfo": "Sending telemetry data allows us to find errors in Ferdium - we will not send any personal information like your message data!",
303 "settings.app.serverHelp": "Connected to server at {serverURL}", 305 "settings.app.serverHelp": "Connected to server at {serverURL}",
304 "settings.app.servicesUpdateStatusUpToDate": "Your services are up-to-date", 306 "settings.app.servicesUpdateStatusUpToDate": "Your services are up-to-date",
305 "settings.app.spellCheckerLanguageInfo": "Ferdium 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.", 307 "settings.app.spellCheckerLanguageInfo": "Ferdium uses your Mac's built-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.",
306 "settings.app.subheadlineCache": "Cache", 308 "settings.app.subheadlineCache": "Cache",
307 "settings.app.subheadlineFerdiumProfile": "Ferdium Profile", 309 "settings.app.subheadlineFerdiumProfile": "Ferdium Profile",
308 "settings.app.todoServerInfo": "This server will be used for the \"Ferdium Todo\" feature.", 310 "settings.app.todoServerInfo": "This server will be used for the \"Ferdium Todo\" feature.",
@@ -334,8 +336,8 @@
334 "settings.recipes.missingService": "Missing a service?", 336 "settings.recipes.missingService": "Missing a service?",
335 "settings.recipes.nothingFound": "Sorry, but no service matched your search term - but you can still probably add it using the \"Custom Website\" option. Please note that the website might show more services that have been added to Ferdium since the version that you are currently on. To get those new services, please consider upgrading to a newer version of Ferdium.", 337 "settings.recipes.nothingFound": "Sorry, but no service matched your search term - but you can still probably add it using the \"Custom Website\" option. Please note that the website might show more services that have been added to Ferdium since the version that you are currently on. To get those new services, please consider upgrading to a newer version of Ferdium.",
336 "settings.recipes.servicesSuccessfulAddedInfo": "Service successfully added", 338 "settings.recipes.servicesSuccessfulAddedInfo": "Service successfully added",
337 "settings.releasenotes.connectionError": "An error occured when connecting to Github, please try again later.", 339 "settings.releasenotes.connectionError": "An error occurred when connecting to Github, please try again later.",
338 "settings.releasenotes.connectionErrorPageMissing": "An error occured when connecting to Github, the page you are looking for is missing.", 340 "settings.releasenotes.connectionErrorPageMissing": "An error occurred when connecting to Github, the page you are looking for is missing.",
339 "settings.releasenotes.headline": "Release Notes", 341 "settings.releasenotes.headline": "Release Notes",
340 "settings.searchService": "Search service", 342 "settings.searchService": "Search service",
341 "settings.service.error.goBack": "Back to services", 343 "settings.service.error.goBack": "Back to services",
diff --git a/src/i18n/locales/es.json b/src/i18n/locales/es.json
index ceaf97549..f82ce5577 100644
--- a/src/i18n/locales/es.json
+++ b/src/i18n/locales/es.json
@@ -14,7 +14,6 @@
14 "feature.publishDebugInfo.info": "Publicar tu información de depuración nos ayuda a encontrar problemas y errores en Ferdium. Al publicar tu información de depuración aceptas la política de privacidad y las condiciones de servicio de depuración de Ferdium", 14 "feature.publishDebugInfo.info": "Publicar tu información de depuración nos ayuda a encontrar problemas y errores en Ferdium. Al publicar tu información de depuración aceptas la política de privacidad y las condiciones de servicio de depuración de Ferdium",
15 "feature.publishDebugInfo.privacy": "Política de Privacidad", 15 "feature.publishDebugInfo.privacy": "Política de Privacidad",
16 "feature.publishDebugInfo.publish": "Aceptar y publicar", 16 "feature.publishDebugInfo.publish": "Aceptar y publicar",
17 "feature.publishDebugInfo.published": "Su registro de depuración fue publicado y ahora está disponible en",
18 "feature.publishDebugInfo.terms": "Términos de servicio", 17 "feature.publishDebugInfo.terms": "Términos de servicio",
19 "feature.publishDebugInfo.title": "Publica la información de depuración", 18 "feature.publishDebugInfo.title": "Publica la información de depuración",
20 "feature.quickSwitch.info": "Puede seleccionar un servicio usando TAB, ↑ y ↓. Puede abrir servicio usando ENTER.", 19 "feature.quickSwitch.info": "Puede seleccionar un servicio usando TAB, ↑ y ↓. Puede abrir servicio usando ENTER.",
@@ -271,7 +270,6 @@
271 "settings.app.headlineUpdates": "Actualizaciones", 270 "settings.app.headlineUpdates": "Actualizaciones",
272 "settings.app.hibernateInfo": "Por defecto, Ferdium mantendrá todos sus servicios abiertos y cargados en segundo plano para que estén listos cuando los necesite. La hibernación del servicio desactivará los mismos tras el tiempo especificado. Esto es útil para ahorrar RAM y evitar que los servicios ralentizen su sistema.", 271 "settings.app.hibernateInfo": "Por defecto, Ferdium mantendrá todos sus servicios abiertos y cargados en segundo plano para que estén listos cuando los necesite. La hibernación del servicio desactivará los mismos tras el tiempo especificado. Esto es útil para ahorrar RAM y evitar que los servicios ralentizen su sistema.",
273 "settings.app.inactivityLockInfo": "Minutos de inactividad, tras los cuales Ferdium debe bloquear automáticamente. Utilice 0 para desactivar", 272 "settings.app.inactivityLockInfo": "Minutos de inactividad, tras los cuales Ferdium debe bloquear automáticamente. Utilice 0 para desactivar",
274 "settings.app.lockInfo": "El bloqueo de contraseña le permite mantener los mensajes protegidos.\nSi activa el bloqueo de contraseña, se le pedirá introducirla cada vez que inicie o bloquee Ferdium usando el símbolo de la esquina inferior izquierda o bien el acceso directo {lockShortcut}.",
275 "settings.app.lockedPassword": "Contraseña", 273 "settings.app.lockedPassword": "Contraseña",
276 "settings.app.lockedPasswordInfo": "Por favor, asegúrese de establecer una contraseña que usted pueda recordar.\nSi pierde esta contraseña, tendrá que reinstalar Ferdium.", 274 "settings.app.lockedPasswordInfo": "Por favor, asegúrese de establecer una contraseña que usted pueda recordar.\nSi pierde esta contraseña, tendrá que reinstalar Ferdium.",
277 "settings.app.overallTheme": "Tema general", 275 "settings.app.overallTheme": "Tema general",
@@ -291,7 +289,6 @@
291 "settings.app.sectionUpdates": "Ajustes de actualizaciones", 289 "settings.app.sectionUpdates": "Ajustes de actualizaciones",
292 "settings.app.sentryInfo": "El envío de datos de telemetría nos permite encontrar errores en Ferdium - ¡No enviaremos ninguna información personal como sus mensajes!", 290 "settings.app.sentryInfo": "El envío de datos de telemetría nos permite encontrar errores en Ferdium - ¡No enviaremos ninguna información personal como sus mensajes!",
293 "settings.app.serverHelp": "Conectado con el servidor {serverURL}", 291 "settings.app.serverHelp": "Conectado con el servidor {serverURL}",
294 "settings.app.spellCheckerLanguageInfo": "Ferdium utiliza el corrector ortográfico incluido en su Mac. Si desea cambiar los lenguajes que el corrector ortográfico revisa, lo puede hacer en las Preferencias del Sistema de su Mac.",
295 "settings.app.subheadlineCache": "Caché", 292 "settings.app.subheadlineCache": "Caché",
296 "settings.app.subheadlineFerdiumProfile": "Perfil de Ferdium", 293 "settings.app.subheadlineFerdiumProfile": "Perfil de Ferdium",
297 "settings.app.todoServerInfo": "Este servidor se utilizará para la función \"Ferdium Todo\".", 294 "settings.app.todoServerInfo": "Este servidor se utilizará para la función \"Ferdium Todo\".",
@@ -322,8 +319,6 @@
322 "settings.recipes.missingService": "¿Echas de menos algún servicio?", 319 "settings.recipes.missingService": "¿Echas de menos algún servicio?",
323 "settings.recipes.nothingFound": "Lo sentimos, pero no pudimos encontrar ningún servicio similar a tu búsqueda, sin embargo: puedes agregarlo utilizando la opción de \"Sitio web personalizado\". \nRecuerda que pueden aparecer más servicios de los que has agregado a Ferdium desde la versión que estás utilizando. Para poder utilizar los nuevos servicios disponibles, considera actualizar a la versión más reciente.", 320 "settings.recipes.nothingFound": "Lo sentimos, pero no pudimos encontrar ningún servicio similar a tu búsqueda, sin embargo: puedes agregarlo utilizando la opción de \"Sitio web personalizado\". \nRecuerda que pueden aparecer más servicios de los que has agregado a Ferdium desde la versión que estás utilizando. Para poder utilizar los nuevos servicios disponibles, considera actualizar a la versión más reciente.",
324 "settings.recipes.servicesSuccessfulAddedInfo": "Servicio añadido con éxito", 321 "settings.recipes.servicesSuccessfulAddedInfo": "Servicio añadido con éxito",
325 "settings.releasenotes.connectionError": "Se ha producido un error durante la conexión a Github. Vuelve a intentarlo más tarde.",
326 "settings.releasenotes.connectionErrorPageMissing": "Se ha producido un error al conectarse a Github, la página que está buscando no se encuentra.",
327 "settings.releasenotes.headline": "Notas de la versión", 322 "settings.releasenotes.headline": "Notas de la versión",
328 "settings.searchService": "Buscar servicio", 323 "settings.searchService": "Buscar servicio",
329 "settings.service.error.goBack": "Volver a los servicios", 324 "settings.service.error.goBack": "Volver a los servicios",
diff --git a/src/i18n/locales/fi.json b/src/i18n/locales/fi.json
index bd9b24332..ebd84379f 100644
--- a/src/i18n/locales/fi.json
+++ b/src/i18n/locales/fi.json
@@ -14,7 +14,6 @@
14 "feature.publishDebugInfo.info": "Julkaisemalla virheraportin auttat meitä löytämään Ferdiumssä ongelmia ja virheitä. Julkaisemalla virheraportin hyväksyt Ferdium Debugger´s tietosuojakäytännöt ja -ehdot", 14 "feature.publishDebugInfo.info": "Julkaisemalla virheraportin auttat meitä löytämään Ferdiumssä ongelmia ja virheitä. Julkaisemalla virheraportin hyväksyt Ferdium Debugger´s tietosuojakäytännöt ja -ehdot",
15 "feature.publishDebugInfo.privacy": "Tietosuojakäytäntö", 15 "feature.publishDebugInfo.privacy": "Tietosuojakäytäntö",
16 "feature.publishDebugInfo.publish": "Hyväksy ja julkaise", 16 "feature.publishDebugInfo.publish": "Hyväksy ja julkaise",
17 "feature.publishDebugInfo.published": "Virheenkorjausraporttisi on julkaistu ja on nyt käytettävissä osoitteessa",
18 "feature.publishDebugInfo.terms": "Käyttöehdot", 17 "feature.publishDebugInfo.terms": "Käyttöehdot",
19 "feature.publishDebugInfo.title": "Julkaise virheraporttisi", 18 "feature.publishDebugInfo.title": "Julkaise virheraporttisi",
20 "feature.quickSwitch.info": "Valitse palvelu painamalla TAB, ↑ ja ↓. Avaa palvelu painamalla ENTER.", 19 "feature.quickSwitch.info": "Valitse palvelu painamalla TAB, ↑ ja ↓. Avaa palvelu painamalla ENTER.",
@@ -240,13 +239,11 @@
240 "settings.app.headlineUpdates": "Päivitykset", 239 "settings.app.headlineUpdates": "Päivitykset",
241 "settings.app.hibernateInfo": "Oletuksena Ferdium pitää kaikki palvelut auki ja ladattuna taustalla, joten ne ovat valmiina, kun haluat käyttää niitä. Horrostila sammuttaa palveluita tietyn jakson jälkeen. Tämä kätevä toimino säästää RAM-muistia tai estää palveluita hidastamasta tietokonetta.", 240 "settings.app.hibernateInfo": "Oletuksena Ferdium pitää kaikki palvelut auki ja ladattuna taustalla, joten ne ovat valmiina, kun haluat käyttää niitä. Horrostila sammuttaa palveluita tietyn jakson jälkeen. Tämä kätevä toimino säästää RAM-muistia tai estää palveluita hidastamasta tietokonetta.",
242 "settings.app.inactivityLockInfo": "Minuutin käyttämättömyyden jälkeen Ferdium lukkiutuu automaattisesti. Käytä arvoa 0 poistaaksesi toiminnon käytöstä", 241 "settings.app.inactivityLockInfo": "Minuutin käyttämättömyyden jälkeen Ferdium lukkiutuu automaattisesti. Käytä arvoa 0 poistaaksesi toiminnon käytöstä",
243 "settings.app.lockInfo": "Salasanalukitus auttaa pitämään viestisi suojattuna.\nKäyttämällä salasanalukitusta, sinua pyydetään syöttämään salasanasi joka kerta kun käynnistät Ferdiumn tai lukitset Ferdiumn joko painamalla vasemmassa alakulmassa olevaa lukitussymbolia tai näppäinyhdistelmällä {lockShortcut}.",
244 "settings.app.lockedPassword": "Salasana", 242 "settings.app.lockedPassword": "Salasana",
245 "settings.app.lockedPasswordInfo": "Varmista, että luot salasanan, jonka muistat.\nJos hukkaat tämän salasanan, sinun täytyy asentaa Ferdium uudelleen.", 243 "settings.app.lockedPasswordInfo": "Varmista, että luot salasanan, jonka muistat.\nJos hukkaat tämän salasanan, sinun täytyy asentaa Ferdium uudelleen.",
246 "settings.app.restartRequired": "Muutokset vaativat uudelleenkäynnistyksen", 244 "settings.app.restartRequired": "Muutokset vaativat uudelleenkäynnistyksen",
247 "settings.app.scheduledDNDInfo": "Ajastetun Älä häiritse-tilan avulla voit määritellä ajanjakson, jonka aikana et halua saada ilmoituksia Ferdiumstä.", 245 "settings.app.scheduledDNDInfo": "Ajastetun Älä häiritse-tilan avulla voit määritellä ajanjakson, jonka aikana et halua saada ilmoituksia Ferdiumstä.",
248 "settings.app.scheduledDNDTimeInfo": "Ajastin 24 tunnin järjestelmässä. Kun Älä häiritse-tila otetaan yöksi käyttöön, päättymisaika voi olla ennen alkamisaikaa (esim. alku 17:00, loppu 09:00).", 246 "settings.app.scheduledDNDTimeInfo": "Ajastin 24 tunnin järjestelmässä. Kun Älä häiritse-tila otetaan yöksi käyttöön, päättymisaika voi olla ennen alkamisaikaa (esim. alku 17:00, loppu 09:00).",
249 "settings.app.spellCheckerLanguageInfo": "Ferdium käyttää Macin sisäänrakennettua oikolukua tarkastaessaan kirjoitusvirheitä. Jos haluat muuttaa tarkastettavaa kieltä, voit tehdä sen Macin järjestelmän asetuksissa.",
250 "settings.app.subheadlineCache": "Välimuisti", 247 "settings.app.subheadlineCache": "Välimuisti",
251 "settings.app.subheadlineFerdiumProfile": "Ferdiumn profiili", 248 "settings.app.subheadlineFerdiumProfile": "Ferdiumn profiili",
252 "settings.app.todoServerInfo": "Tätä palvelinta käytetään \"Ferdium Todo\" -toiminnossa.", 249 "settings.app.todoServerInfo": "Tätä palvelinta käytetään \"Ferdium Todo\" -toiminnossa.",
diff --git a/src/i18n/locales/fr.json b/src/i18n/locales/fr.json
index c95fc5003..fa7aa163e 100644
--- a/src/i18n/locales/fr.json
+++ b/src/i18n/locales/fr.json
@@ -16,7 +16,6 @@
16 "feature.publishDebugInfo.info": "La publication de vos informations de débogage nous aide à trouver des problèmes et des erreurs dans Ferdium. En publiant vos informations de débogage, vous acceptez la politique de confidentialité et les conditions d'utilisation de Ferdium Debugger", 16 "feature.publishDebugInfo.info": "La publication de vos informations de débogage nous aide à trouver des problèmes et des erreurs dans Ferdium. En publiant vos informations de débogage, vous acceptez la politique de confidentialité et les conditions d'utilisation de Ferdium Debugger",
17 "feature.publishDebugInfo.privacy": "Politique de confidentialité", 17 "feature.publishDebugInfo.privacy": "Politique de confidentialité",
18 "feature.publishDebugInfo.publish": "Accepter et publier", 18 "feature.publishDebugInfo.publish": "Accepter et publier",
19 "feature.publishDebugInfo.published": "Votre journal de débogage a été publié et est maintenant disponible à",
20 "feature.publishDebugInfo.terms": "Conditions d'utilisation", 19 "feature.publishDebugInfo.terms": "Conditions d'utilisation",
21 "feature.publishDebugInfo.title": "Publier les informations de débogage", 20 "feature.publishDebugInfo.title": "Publier les informations de débogage",
22 "feature.quickSwitch.info": "Sélectionner un service avec TAB, ↑ et ↓. Ouvrir un service avec ENTER.", 21 "feature.quickSwitch.info": "Sélectionner un service avec TAB, ↑ et ↓. Ouvrir un service avec ENTER.",
@@ -276,7 +275,6 @@
276 "settings.app.headlineUpdates": "Mises à jour", 275 "settings.app.headlineUpdates": "Mises à jour",
277 "settings.app.hibernateInfo": "Par défaut, Ferdium gardera tous vos services ouverts et chargés en arrière-plan afin qu'ils soient prêts lorsque vous voulez les utiliser. Le service d'hibernation déchargera vos services après un montant spécifié. Ceci est utile pour sauver de la RAM ou garder les services de ralentir votre ordinateur.", 276 "settings.app.hibernateInfo": "Par défaut, Ferdium gardera tous vos services ouverts et chargés en arrière-plan afin qu'ils soient prêts lorsque vous voulez les utiliser. Le service d'hibernation déchargera vos services après un montant spécifié. Ceci est utile pour sauver de la RAM ou garder les services de ralentir votre ordinateur.",
278 "settings.app.inactivityLockInfo": "Minutes d'inactivité, après lesquelles Ferdium devrait se verrouiller automatiquement. Utilisez 0 pour désactiver", 277 "settings.app.inactivityLockInfo": "Minutes d'inactivité, après lesquelles Ferdium devrait se verrouiller automatiquement. Utilisez 0 pour désactiver",
279 "settings.app.lockInfo": "Le verrouillage par mot de passe vous permet de garder vos messages protégés.\nPour l'utilisation du verrouillage par mot de passe, vous serez invité à entrer votre mot de passe chaque fois que vous démarrez Ferdium ou que vous verrouillerez Ferdium vous-même en utilisant le symbole de verrouillage en bas à gauche ou le raccourci {lockShortcut}.",
280 "settings.app.lockedPassword": "Mot de passe", 278 "settings.app.lockedPassword": "Mot de passe",
281 "settings.app.lockedPasswordInfo": "Veuillez vous assurer de définir un mot de passe dont vous vous souviendrez.\nSi vous perdez ce mot de passe, vous devrez réinstaller Ferdium.", 279 "settings.app.lockedPasswordInfo": "Veuillez vous assurer de définir un mot de passe dont vous vous souviendrez.\nSi vous perdez ce mot de passe, vous devrez réinstaller Ferdium.",
282 "settings.app.overallTheme": "Thème global", 280 "settings.app.overallTheme": "Thème global",
@@ -296,7 +294,6 @@
296 "settings.app.sectionUpdates": "Paramètres des mises à jour de l'application", 294 "settings.app.sectionUpdates": "Paramètres des mises à jour de l'application",
297 "settings.app.sentryInfo": "L'envoi de données de télémétrie nous permet de trouver des erreurs dans Ferdium - nous n'enverrons aucune information personnelle comme vos données de message !", 295 "settings.app.sentryInfo": "L'envoi de données de télémétrie nous permet de trouver des erreurs dans Ferdium - nous n'enverrons aucune information personnelle comme vos données de message !",
298 "settings.app.serverHelp": "Connecté au serveur {serverURL}", 296 "settings.app.serverHelp": "Connecté au serveur {serverURL}",
299 "settings.app.spellCheckerLanguageInfo": "Ferdium utilise le correcteur orthographique intégré de votre Mac pour vérifier les fautes de frappe. Si vous voulez changer les langues pour lesquelles le correcteur vérifie l'orthographe, vous pouvez le faire dans les préférences système de votre Mac.",
300 "settings.app.subheadlineCache": "Cache", 297 "settings.app.subheadlineCache": "Cache",
301 "settings.app.subheadlineFerdiumProfile": "Profil Ferdium", 298 "settings.app.subheadlineFerdiumProfile": "Profil Ferdium",
302 "settings.app.todoServerInfo": "Ce serveur sera utilisé pour la fonctionnalité des tâches à accomplir de Ferdium.", 299 "settings.app.todoServerInfo": "Ce serveur sera utilisé pour la fonctionnalité des tâches à accomplir de Ferdium.",
@@ -327,8 +324,6 @@
327 "settings.recipes.missingService": "Un service est manquant ?", 324 "settings.recipes.missingService": "Un service est manquant ?",
328 "settings.recipes.nothingFound": "Désolé, mais aucun service ne correspond à votre recherche - mais vous pouvez toujours l'ajouter en utilisant l'option \"Custom Website\". Veuillez noter que le site Web pourrait afficher plus de services qui ont été ajoutés à Ferdium depuis la version sur laquelle vous êtes actuellement. Pour obtenir ces nouveaux services, veuillez envisager la mise à niveau vers une version plus récente de Ferdium.", 325 "settings.recipes.nothingFound": "Désolé, mais aucun service ne correspond à votre recherche - mais vous pouvez toujours l'ajouter en utilisant l'option \"Custom Website\". Veuillez noter que le site Web pourrait afficher plus de services qui ont été ajoutés à Ferdium depuis la version sur laquelle vous êtes actuellement. Pour obtenir ces nouveaux services, veuillez envisager la mise à niveau vers une version plus récente de Ferdium.",
329 "settings.recipes.servicesSuccessfulAddedInfo": "Le service a été ajouté avec succès", 326 "settings.recipes.servicesSuccessfulAddedInfo": "Le service a été ajouté avec succès",
330 "settings.releasenotes.connectionError": "Une erreur s’est produite pendant la connexion à GitHub, veuillez réessayer plus tard.",
331 "settings.releasenotes.connectionErrorPageMissing": "Une erreur s’est produite pendant la connexion à GitHub, la page que vous cherchez n’existe pas.",
332 "settings.releasenotes.headline": "Notes de mise à jour", 327 "settings.releasenotes.headline": "Notes de mise à jour",
333 "settings.searchService": "Chercher un service", 328 "settings.searchService": "Chercher un service",
334 "settings.service.error.goBack": "Retour aux services", 329 "settings.service.error.goBack": "Retour aux services",
diff --git a/src/i18n/locales/he.json b/src/i18n/locales/he.json
index 9edc5bc0b..2247db0b0 100644
--- a/src/i18n/locales/he.json
+++ b/src/i18n/locales/he.json
@@ -16,7 +16,6 @@
16 "feature.publishDebugInfo.info": "פרסום פירוט השגיאות שלך מסייע לנו לאתר תקלות ושגיאות ב־Ferdium. פרסום פירוט השגיאות שלך מהווה את הסכמתך למדיניות הפרטיות לניפוי שגיאות ותנאי השירות של Ferdium", 16 "feature.publishDebugInfo.info": "פרסום פירוט השגיאות שלך מסייע לנו לאתר תקלות ושגיאות ב־Ferdium. פרסום פירוט השגיאות שלך מהווה את הסכמתך למדיניות הפרטיות לניפוי שגיאות ותנאי השירות של Ferdium",
17 "feature.publishDebugInfo.privacy": "מדיניות פרטיות", 17 "feature.publishDebugInfo.privacy": "מדיניות פרטיות",
18 "feature.publishDebugInfo.publish": "מוסכם, לפרסם", 18 "feature.publishDebugInfo.publish": "מוסכם, לפרסם",
19 "feature.publishDebugInfo.published": "יומן ניפוי השגיאות שלך פורסם והוא זמין מעתה תחת",
20 "feature.publishDebugInfo.terms": "תנאי שירות", 19 "feature.publishDebugInfo.terms": "תנאי שירות",
21 "feature.publishDebugInfo.title": "פרסום פרטי ניפוי שגיאות", 20 "feature.publishDebugInfo.title": "פרסום פרטי ניפוי שגיאות",
22 "feature.quickSwitch.info": "בחירת שירותים מתבצעת עם TAB, ↑ ו־↓. פתיחת שירותים עם ENTER.", 21 "feature.quickSwitch.info": "בחירת שירותים מתבצעת עם TAB, ↑ ו־↓. פתיחת שירותים עם ENTER.",
@@ -276,7 +275,6 @@
276 "settings.app.headlineUpdates": "עדכונים", 275 "settings.app.headlineUpdates": "עדכונים",
277 "settings.app.hibernateInfo": "כברירת מחדל, השירותים שלך יישארו פתוחים וטעונים ברקע על ידי Ferdium כדי שיהיו מוכנים לשימוש. הרדמת שירותים תפרוק את השירותים שלך לאחר זמן מסוים. עשוי לחסוך בזיכרון או למנוע משירותים להאט את המחשב שלך.", 276 "settings.app.hibernateInfo": "כברירת מחדל, השירותים שלך יישארו פתוחים וטעונים ברקע על ידי Ferdium כדי שיהיו מוכנים לשימוש. הרדמת שירותים תפרוק את השירותים שלך לאחר זמן מסוים. עשוי לחסוך בזיכרון או למנוע משירותים להאט את המחשב שלך.",
278 "settings.app.inactivityLockInfo": "דקות חוסר פעילות שלאחריהן Ferdium אמור להינעל אוטומטית. 0 כדי להשבית", 277 "settings.app.inactivityLockInfo": "דקות חוסר פעילות שלאחריהן Ferdium אמור להינעל אוטומטית. 0 כדי להשבית",
279 "settings.app.lockInfo": "נעילה בסיסמה מאפשרת לך להגן על ההתכתבויות שלך.\nהשימוש בנעילה בסיסמה יאלץ אותך להקליד את הסיסמה שלך עם כל הפעלה או נעילה של Ferdium באמצעות סמל המנעול בפינה הימנית התחתונה או בעזרת קיצור המקלדת {lockShortcut}.",
280 "settings.app.lockedPassword": "סיסמה", 278 "settings.app.lockedPassword": "סיסמה",
281 "settings.app.lockedPasswordInfo": "נא לוודא שהגדרת סיסמה שקל לך לזכור.\nאיבוד הסיסמה הזאת יאלץ אותך להתקין את Ferdium מחדש.", 279 "settings.app.lockedPasswordInfo": "נא לוודא שהגדרת סיסמה שקל לך לזכור.\nאיבוד הסיסמה הזאת יאלץ אותך להתקין את Ferdium מחדש.",
282 "settings.app.overallTheme": "ערכת עיצוב כללית", 280 "settings.app.overallTheme": "ערכת עיצוב כללית",
@@ -296,7 +294,6 @@
296 "settings.app.sectionUpdates": "הגדרות עדכוני יישום", 294 "settings.app.sectionUpdates": "הגדרות עדכוני יישום",
297 "settings.app.sentryInfo": "שליחת נתונים טלמטריים מאפשרות לנו למצוא שגיאות ב־Ferdium - אנו לא נשלח מידע פרטי כגון תוכן ההודעות שלך!", 295 "settings.app.sentryInfo": "שליחת נתונים טלמטריים מאפשרות לנו למצוא שגיאות ב־Ferdium - אנו לא נשלח מידע פרטי כגון תוכן ההודעות שלך!",
298 "settings.app.serverHelp": "יש חיבור לשרת ב־{serverURL}", 296 "settings.app.serverHelp": "יש חיבור לשרת ב־{serverURL}",
299 "settings.app.spellCheckerLanguageInfo": "ב־Ferdium נעשה שימוש בבודק האיות המובנה של Mac כדי לבדוק שגיאות הקלדה. כדי לשנות את שפות הבדיקה של בודק האיות ניתן לעשות זאת בהגדרות המערכת של ה־Mac.",
300 "settings.app.subheadlineCache": "זיכרון מטמון", 297 "settings.app.subheadlineCache": "זיכרון מטמון",
301 "settings.app.subheadlineFerdiumProfile": "פרופיל Ferdium", 298 "settings.app.subheadlineFerdiumProfile": "פרופיל Ferdium",
302 "settings.app.todoServerInfo": "השרת הזה ישמש לספק את היכולת „משימות Ferdium”.", 299 "settings.app.todoServerInfo": "השרת הזה ישמש לספק את היכולת „משימות Ferdium”.",
@@ -327,8 +324,6 @@
327 "settings.recipes.missingService": "חסר שירות?", 324 "settings.recipes.missingService": "חסר שירות?",
328 "settings.recipes.nothingFound": "אף שירות אינו עונה על ביטוי החיפוש שלך, מחילה, עם זאת, עדיין ניתן להוסיף אותו באמצעות האפשרות „אתר משלך”. נא לשים לב שהאתר עשוי להציג יותר שירותים מאלו שמופיעים ב־Ferdium עקב הגרסה שמותקנת אצלך. כדי לקבל את השירותים החדשים האלו, כדאי לשקול לשדרג לגרסה חדשה יותר של Ferdium.", 325 "settings.recipes.nothingFound": "אף שירות אינו עונה על ביטוי החיפוש שלך, מחילה, עם זאת, עדיין ניתן להוסיף אותו באמצעות האפשרות „אתר משלך”. נא לשים לב שהאתר עשוי להציג יותר שירותים מאלו שמופיעים ב־Ferdium עקב הגרסה שמותקנת אצלך. כדי לקבל את השירותים החדשים האלו, כדאי לשקול לשדרג לגרסה חדשה יותר של Ferdium.",
329 "settings.recipes.servicesSuccessfulAddedInfo": "השירות נוסף בהצלחה", 326 "settings.recipes.servicesSuccessfulAddedInfo": "השירות נוסף בהצלחה",
330 "settings.releasenotes.connectionError": "אירעה שגיאה בעת ניסיון ההתחברות ל־GitHub. נא לנסות שוב מאוחר יותר.",
331 "settings.releasenotes.connectionErrorPageMissing": "אירעה שגיאה בעת ניסיון ההתחברות ל־GitHub. העמוד המבוקש חסר.",
332 "settings.releasenotes.headline": "הערות מוצר", 327 "settings.releasenotes.headline": "הערות מוצר",
333 "settings.searchService": "חיפוש שירות", 328 "settings.searchService": "חיפוש שירות",
334 "settings.service.error.goBack": "חזרה לשירותים", 329 "settings.service.error.goBack": "חזרה לשירותים",
diff --git a/src/i18n/locales/hi.json b/src/i18n/locales/hi.json
index bd4c1f5ec..a9f41f3cf 100644
--- a/src/i18n/locales/hi.json
+++ b/src/i18n/locales/hi.json
@@ -14,7 +14,6 @@
14 "feature.publishDebugInfo.info": "आपकी डिबग जानकारी प्रकाशित करने से हमें फ़र्डियम में समस्याओं और त्रुटियों को खोजने में मदद मिलती है। अपनी डिबग जानकारी प्रकाशित करके आप फर्डियम डीबगर की गोपनीयता नीति और सेवा की शर्तों को स्वीकार करते हैं", 14 "feature.publishDebugInfo.info": "आपकी डिबग जानकारी प्रकाशित करने से हमें फ़र्डियम में समस्याओं और त्रुटियों को खोजने में मदद मिलती है। अपनी डिबग जानकारी प्रकाशित करके आप फर्डियम डीबगर की गोपनीयता नीति और सेवा की शर्तों को स्वीकार करते हैं",
15 "feature.publishDebugInfo.privacy": "गोपनीयता नीति (प्राइवेसी पालिसी)", 15 "feature.publishDebugInfo.privacy": "गोपनीयता नीति (प्राइवेसी पालिसी)",
16 "feature.publishDebugInfo.publish": "स्वीकृति दें और प्रकाशित करें", 16 "feature.publishDebugInfo.publish": "स्वीकृति दें और प्रकाशित करें",
17 "feature.publishDebugInfo.published": "आपका डिबग लॉग प्रकाशित किया गया था और अब पर उपलब्ध है",
18 "feature.publishDebugInfo.terms": "सेवा की शर्तें", 17 "feature.publishDebugInfo.terms": "सेवा की शर्तें",
19 "feature.publishDebugInfo.title": "जानकारी प्रकाशित करे", 18 "feature.publishDebugInfo.title": "जानकारी प्रकाशित करे",
20 "feature.quickSwitch.info": "TAB, ↑ और ↓ के साथ एक सेवा का चयन करें। ENTER के साथ एक सेवा खोलें।", 19 "feature.quickSwitch.info": "TAB, ↑ और ↓ के साथ एक सेवा का चयन करें। ENTER के साथ एक सेवा खोलें।",
diff --git a/src/i18n/locales/id.json b/src/i18n/locales/id.json
index 7017f3e75..698445795 100644
--- a/src/i18n/locales/id.json
+++ b/src/i18n/locales/id.json
@@ -16,7 +16,6 @@
16 "feature.publishDebugInfo.info": "Mempublikasikan informasi debug Anda membantu kami menemukan masalah dan kesalahan di Ferdium. Dengan mempublikasikan informasi debug anda, Anda menerima kebijakan privasi dan persyaratan layanan Ferdium Debugger", 16 "feature.publishDebugInfo.info": "Mempublikasikan informasi debug Anda membantu kami menemukan masalah dan kesalahan di Ferdium. Dengan mempublikasikan informasi debug anda, Anda menerima kebijakan privasi dan persyaratan layanan Ferdium Debugger",
17 "feature.publishDebugInfo.privacy": "Kebijakan privasi", 17 "feature.publishDebugInfo.privacy": "Kebijakan privasi",
18 "feature.publishDebugInfo.publish": "Terima & Publikasikan", 18 "feature.publishDebugInfo.publish": "Terima & Publikasikan",
19 "feature.publishDebugInfo.published": "Log debug Anda telah dipublikasikan dan sekarang tersedia di",
20 "feature.publishDebugInfo.terms": "Ketentuan layanan", 19 "feature.publishDebugInfo.terms": "Ketentuan layanan",
21 "feature.publishDebugInfo.title": "Publikasikan informasi debug", 20 "feature.publishDebugInfo.title": "Publikasikan informasi debug",
22 "feature.quickSwitch.info": "Pilih layanan dengan TAB, ↑ dan ↓. Buka layanan dengan ENTER.", 21 "feature.quickSwitch.info": "Pilih layanan dengan TAB, ↑ dan ↓. Buka layanan dengan ENTER.",
diff --git a/src/i18n/locales/it.json b/src/i18n/locales/it.json
index 155108a2a..6484d9524 100644
--- a/src/i18n/locales/it.json
+++ b/src/i18n/locales/it.json
@@ -14,7 +14,6 @@
14 "feature.publishDebugInfo.info": "Pubblicare le informazioni di debug ci aiuta a trovare problemi ed errori in Ferdium. Pubblicando le informazioni di debug accetti l'informativa sulla privacy e i termini di servizio di Ferdium Debugger", 14 "feature.publishDebugInfo.info": "Pubblicare le informazioni di debug ci aiuta a trovare problemi ed errori in Ferdium. Pubblicando le informazioni di debug accetti l'informativa sulla privacy e i termini di servizio di Ferdium Debugger",
15 "feature.publishDebugInfo.privacy": "Informativa sulla privacy", 15 "feature.publishDebugInfo.privacy": "Informativa sulla privacy",
16 "feature.publishDebugInfo.publish": "Accetta e pubblica", 16 "feature.publishDebugInfo.publish": "Accetta e pubblica",
17 "feature.publishDebugInfo.published": "Il tuo log di debug è stato pubblicato ed è disponibile a",
18 "feature.publishDebugInfo.terms": "Termini di Servizio", 17 "feature.publishDebugInfo.terms": "Termini di Servizio",
19 "feature.publishDebugInfo.title": "Pubblica le informazioni di debug", 18 "feature.publishDebugInfo.title": "Pubblica le informazioni di debug",
20 "feature.quickSwitch.info": "Seleziona un servizio con TAB, ↑ e ↓. Apri un servizio con INVIO.", 19 "feature.quickSwitch.info": "Seleziona un servizio con TAB, ↑ e ↓. Apri un servizio con INVIO.",
@@ -271,7 +270,6 @@
271 "settings.app.headlineUpdates": "Aggiornamenti", 270 "settings.app.headlineUpdates": "Aggiornamenti",
272 "settings.app.hibernateInfo": "Per impostazione predefinita, Ferdium manterrà tutti i servizi aperti e caricati in background in modo che siano pronti quando si desidera utilizzarli. Il servizio Hibernation sospenderà i servizi dopo un tempo specificato. Questo è utile per risparmiare RAM o per evitare che i servizi rallentino il computer.", 271 "settings.app.hibernateInfo": "Per impostazione predefinita, Ferdium manterrà tutti i servizi aperti e caricati in background in modo che siano pronti quando si desidera utilizzarli. Il servizio Hibernation sospenderà i servizi dopo un tempo specificato. Questo è utile per risparmiare RAM o per evitare che i servizi rallentino il computer.",
273 "settings.app.inactivityLockInfo": "Minuti di inattività oltre i quali Ferdium si bloccherà automaticamente, 0 per disabilitare", 272 "settings.app.inactivityLockInfo": "Minuti di inattività oltre i quali Ferdium si bloccherà automaticamente, 0 per disabilitare",
274 "settings.app.lockInfo": "Password Lock ti permette di mantenere i tuoi messaggi protetti. Usando Password Lock, ti verrà richiesto di inserire la tua password ogni volta che avvii Ferdium o di bloccare Ferdium stesso usando il simbolo del lucchetto nell'angolo in basso a sinistra o la scorciatoia {lockShortcut}.",
275 "settings.app.lockedPassword": "Password", 273 "settings.app.lockedPassword": "Password",
276 "settings.app.lockedPasswordInfo": "Assicurati di impostare una password che ricordi.\nSe perdi questa password, dovrai reinstallare Ferdium.", 274 "settings.app.lockedPasswordInfo": "Assicurati di impostare una password che ricordi.\nSe perdi questa password, dovrai reinstallare Ferdium.",
277 "settings.app.overallTheme": "Tema Globale", 275 "settings.app.overallTheme": "Tema Globale",
@@ -291,7 +289,6 @@
291 "settings.app.sectionUpdates": "Impostazioni Aggiornamenti App", 289 "settings.app.sectionUpdates": "Impostazioni Aggiornamenti App",
292 "settings.app.sentryInfo": "L'invio dei dati di telemetria ci permette di trovare errori in Ferdium - non invieremo nessuna informazione personale relativa ai tuoi messaggi!", 290 "settings.app.sentryInfo": "L'invio dei dati di telemetria ci permette di trovare errori in Ferdium - non invieremo nessuna informazione personale relativa ai tuoi messaggi!",
293 "settings.app.serverHelp": "Connesso al server a {serverURL}", 291 "settings.app.serverHelp": "Connesso al server a {serverURL}",
294 "settings.app.spellCheckerLanguageInfo": "Ferdium utilizza il controllo ortografico del tuo Mac per verificare la presenza di errori. Se si desidera modificare le lingue del controllo ortografico, è possibile farlo nelle preferenze di sistema del vostro Mac.",
295 "settings.app.subheadlineCache": "Cache", 292 "settings.app.subheadlineCache": "Cache",
296 "settings.app.subheadlineFerdiumProfile": "Profilo Ferdium", 293 "settings.app.subheadlineFerdiumProfile": "Profilo Ferdium",
297 "settings.app.todoServerInfo": "Questo server sarà utilizzato per la funzione \"Ferdium Todo\".", 294 "settings.app.todoServerInfo": "Questo server sarà utilizzato per la funzione \"Ferdium Todo\".",
@@ -322,8 +319,6 @@
322 "settings.recipes.missingService": "Manca un servizio?", 319 "settings.recipes.missingService": "Manca un servizio?",
323 "settings.recipes.nothingFound": "Non è stato trovato alcun servizio corrispondente alla ricerca impostata. Ricorda che anche se non esiste un servizio specifico, potrebbe essere possibile usare la funzionalità \"Sito Custom\". Inoltre potrebbe essere che sul sito web di Ferdium siano mostrati più servizi di quanti disponibili nella applicazione correntemente in uso. Nel caso, per accedere a questi servizi, è possibile aggiornare Ferdium.", 320 "settings.recipes.nothingFound": "Non è stato trovato alcun servizio corrispondente alla ricerca impostata. Ricorda che anche se non esiste un servizio specifico, potrebbe essere possibile usare la funzionalità \"Sito Custom\". Inoltre potrebbe essere che sul sito web di Ferdium siano mostrati più servizi di quanti disponibili nella applicazione correntemente in uso. Nel caso, per accedere a questi servizi, è possibile aggiornare Ferdium.",
324 "settings.recipes.servicesSuccessfulAddedInfo": "Servizio aggiunto con successo", 321 "settings.recipes.servicesSuccessfulAddedInfo": "Servizio aggiunto con successo",
325 "settings.releasenotes.connectionError": "Si è verificato un errore durante la connessione a Github, riprova più tardi.",
326 "settings.releasenotes.connectionErrorPageMissing": "Si è verificato un errore durante la connessione a Github, la pgina che stai cercando non esiste.",
327 "settings.releasenotes.headline": "Note di rilascio", 322 "settings.releasenotes.headline": "Note di rilascio",
328 "settings.searchService": "Cerca servizio", 323 "settings.searchService": "Cerca servizio",
329 "settings.service.error.goBack": "Torna ai servizi", 324 "settings.service.error.goBack": "Torna ai servizi",
diff --git a/src/i18n/locales/ja.json b/src/i18n/locales/ja.json
index b9bf4def7..16676072c 100644
--- a/src/i18n/locales/ja.json
+++ b/src/i18n/locales/ja.json
@@ -16,7 +16,6 @@
16 "feature.publishDebugInfo.info": "デバッグ情報を公開することで、Ferdiumの開発者が問題やエラーを発見する手助けとなります。 デバッグ情報を公開することで、Ferdium Debuggerのプライバシーポリシーと利用規約に同意したことになります。", 16 "feature.publishDebugInfo.info": "デバッグ情報を公開することで、Ferdiumの開発者が問題やエラーを発見する手助けとなります。 デバッグ情報を公開することで、Ferdium Debuggerのプライバシーポリシーと利用規約に同意したことになります。",
17 "feature.publishDebugInfo.privacy": "プライバシーポリシー", 17 "feature.publishDebugInfo.privacy": "プライバシーポリシー",
18 "feature.publishDebugInfo.publish": "同意して公開", 18 "feature.publishDebugInfo.publish": "同意して公開",
19 "feature.publishDebugInfo.published": "デバッグログが公開されました。以下で確認できます",
20 "feature.publishDebugInfo.terms": "利用規約", 19 "feature.publishDebugInfo.terms": "利用規約",
21 "feature.publishDebugInfo.title": "デバッグ情報の公開", 20 "feature.publishDebugInfo.title": "デバッグ情報の公開",
22 "feature.quickSwitch.info": "Tab, ↑, ↓でサービスを選択します。Enterでサービスを開きます", 21 "feature.quickSwitch.info": "Tab, ↑, ↓でサービスを選択します。Enterでサービスを開きます",
@@ -276,7 +275,6 @@
276 "settings.app.headlineUpdates": "更新", 275 "settings.app.headlineUpdates": "更新",
277 "settings.app.hibernateInfo": "デフォルトでは、Ferdiumはすべてのサービスをバックグラウンドで開いて読み込んでおくので、使いたいときにすぐに使えます。 サービス休止機能は設定した時間が経過したら読み込んだサービスを解放します。これはRAMを節約したり、サービスでコンピューターの動作が重くなるのを防ぐのに役立ちます。", 276 "settings.app.hibernateInfo": "デフォルトでは、Ferdiumはすべてのサービスをバックグラウンドで開いて読み込んでおくので、使いたいときにすぐに使えます。 サービス休止機能は設定した時間が経過したら読み込んだサービスを解放します。これはRAMを節約したり、サービスでコンピューターの動作が重くなるのを防ぐのに役立ちます。",
278 "settings.app.inactivityLockInfo": "休止状態までの時間(分)、この時間が経過後Ferdiumは自動でロックします。0で無効化", 277 "settings.app.inactivityLockInfo": "休止状態までの時間(分)、この時間が経過後Ferdiumは自動でロックします。0で無効化",
279 "settings.app.lockInfo": "パスワードロックはメッセージを保護できます。\nパスワードロックを使用すると、Ferdiumの起動時または自分で左下のロックボタンを押すかショートカット{lockShortcut}でFerdiumをロックしたときに、その都度パスワードの入力が求められます。",
280 "settings.app.lockedPassword": "パスワード", 278 "settings.app.lockedPassword": "パスワード",
281 "settings.app.lockedPasswordInfo": "覚えられるパスワードを設定するようにしてください。\nパスワードを紛失すると、Ferdiumの再インストールが必要になります。", 279 "settings.app.lockedPasswordInfo": "覚えられるパスワードを設定するようにしてください。\nパスワードを紛失すると、Ferdiumの再インストールが必要になります。",
282 "settings.app.overallTheme": "全体テーマ", 280 "settings.app.overallTheme": "全体テーマ",
@@ -297,7 +295,6 @@
297 "settings.app.sentryInfo": "統計情報を送信すると開発者がFerdiumのエラーを発見するのに役立ちます。メッセージのデータのような個人情報は一切送信しません。", 295 "settings.app.sentryInfo": "統計情報を送信すると開発者がFerdiumのエラーを発見するのに役立ちます。メッセージのデータのような個人情報は一切送信しません。",
298 "settings.app.serverHelp": "{serverURL}でサーバーに接続しました", 296 "settings.app.serverHelp": "{serverURL}でサーバーに接続しました",
299 "settings.app.servicesUpdateStatusUpToDate": "サービスは最新です", 297 "settings.app.servicesUpdateStatusUpToDate": "サービスは最新です",
300 "settings.app.spellCheckerLanguageInfo": "FerdiumはスペルチェックにmacOSシステムのスペルチェッカーを使用しています。スペルチェッカーでチェックする言語を変更するには、macOSのシステム環境設定から行ってください。",
301 "settings.app.subheadlineCache": "キャッシュ", 298 "settings.app.subheadlineCache": "キャッシュ",
302 "settings.app.subheadlineFerdiumProfile": "Ferdiumプロフィール", 299 "settings.app.subheadlineFerdiumProfile": "Ferdiumプロフィール",
303 "settings.app.todoServerInfo": "このサーバーは「Ferdium ToDo」の機能に使用されます。", 300 "settings.app.todoServerInfo": "このサーバーは「Ferdium ToDo」の機能に使用されます。",
@@ -328,8 +325,6 @@
328 "settings.recipes.missingService": "使いたいサービスが一覧にありませんか?", 325 "settings.recipes.missingService": "使いたいサービスが一覧にありませんか?",
329 "settings.recipes.nothingFound": "残念ながら、検索語に一致するサービスはありませんでした。しかし、「カスタムウェブサイト」のオプションを使用して追加することができます。新しいバージョンのFerdiumではウェブサイトで紹介されているような、より多くのサービスが追加されていることがあります。それらの新しいサービスを追加するには、Ferdiumのアップデートをご検討ください。", 326 "settings.recipes.nothingFound": "残念ながら、検索語に一致するサービスはありませんでした。しかし、「カスタムウェブサイト」のオプションを使用して追加することができます。新しいバージョンのFerdiumではウェブサイトで紹介されているような、より多くのサービスが追加されていることがあります。それらの新しいサービスを追加するには、Ferdiumのアップデートをご検討ください。",
330 "settings.recipes.servicesSuccessfulAddedInfo": "サービスが追加されました", 327 "settings.recipes.servicesSuccessfulAddedInfo": "サービスが追加されました",
331 "settings.releasenotes.connectionError": "GitHubへの接続中にエラーが発生しました。少し時間をおいて再度お試しください。",
332 "settings.releasenotes.connectionErrorPageMissing": "GitHubへの接続中にエラーが発生しました。お探しのページは見つかりません。",
333 "settings.releasenotes.headline": "更新履歴", 328 "settings.releasenotes.headline": "更新履歴",
334 "settings.searchService": "サービスを検索", 329 "settings.searchService": "サービスを検索",
335 "settings.service.error.goBack": "サービスに戻る", 330 "settings.service.error.goBack": "サービスに戻る",
diff --git a/src/i18n/locales/ko.json b/src/i18n/locales/ko.json
index 6131095b1..dbe1d974c 100644
--- a/src/i18n/locales/ko.json
+++ b/src/i18n/locales/ko.json
@@ -14,7 +14,6 @@
14 "feature.publishDebugInfo.info": "디버그 정보를 공개하는 것은 Ferdium의 오류를 찾는데 도움이 됩니다. 디버그 정보를 공개함으로 Ferdium Debugger의 개인정보보호정책과 이용 약관을 동의하는 것으로 간주합니다.", 14 "feature.publishDebugInfo.info": "디버그 정보를 공개하는 것은 Ferdium의 오류를 찾는데 도움이 됩니다. 디버그 정보를 공개함으로 Ferdium Debugger의 개인정보보호정책과 이용 약관을 동의하는 것으로 간주합니다.",
15 "feature.publishDebugInfo.privacy": "개인정보보호정책", 15 "feature.publishDebugInfo.privacy": "개인정보보호정책",
16 "feature.publishDebugInfo.publish": "동의 및 공개", 16 "feature.publishDebugInfo.publish": "동의 및 공개",
17 "feature.publishDebugInfo.published": "디버그 로그가 공개되었고 다음에서 확인 가능합니다.",
18 "feature.publishDebugInfo.terms": "이용 약관", 17 "feature.publishDebugInfo.terms": "이용 약관",
19 "feature.publishDebugInfo.title": "디버깅 정보 공개", 18 "feature.publishDebugInfo.title": "디버깅 정보 공개",
20 "feature.quickSwitch.info": "서비스를 TAB, ↑, ↓을 이용해 선택할 수 있습니다. ENTER를 이용하여 서비스를 열 수 있습니다.", 19 "feature.quickSwitch.info": "서비스를 TAB, ↑, ↓을 이용해 선택할 수 있습니다. ENTER를 이용하여 서비스를 열 수 있습니다.",
diff --git a/src/i18n/locales/lv.json b/src/i18n/locales/lv.json
index 421b8c0f0..9713bbb0f 100644
--- a/src/i18n/locales/lv.json
+++ b/src/i18n/locales/lv.json
@@ -16,7 +16,6 @@
16 "feature.publishDebugInfo.info": "Dalīšanās ar atkļūdošanas informāciju palīdz mums atrast Ferdium nepilnības un kļūmes. Daloties ar atkļūdošanas informāciju tiek pieņemti Ferdium atkļūdotāja privātuma nosacījumi un pakalpojuma noteikumi", 16 "feature.publishDebugInfo.info": "Dalīšanās ar atkļūdošanas informāciju palīdz mums atrast Ferdium nepilnības un kļūmes. Daloties ar atkļūdošanas informāciju tiek pieņemti Ferdium atkļūdotāja privātuma nosacījumi un pakalpojuma noteikumi",
17 "feature.publishDebugInfo.privacy": "Privātuma nosacījumi", 17 "feature.publishDebugInfo.privacy": "Privātuma nosacījumi",
18 "feature.publishDebugInfo.publish": "Apstiprināt un publicēt", 18 "feature.publishDebugInfo.publish": "Apstiprināt un publicēt",
19 "feature.publishDebugInfo.published": "Atkļūdošanas žurnāls tika padarīts pieejams un tagad ir atrodams",
20 "feature.publishDebugInfo.terms": "Pakalpojuma izmantošanas noteikumi", 19 "feature.publishDebugInfo.terms": "Pakalpojuma izmantošanas noteikumi",
21 "feature.publishDebugInfo.title": "Dalīties ar atkļūdošanas informāciju", 20 "feature.publishDebugInfo.title": "Dalīties ar atkļūdošanas informāciju",
22 "feature.quickSwitch.info": "Pakalpojumu var izvēlēties ar TAB, ↑ un ↓. Pakalpojumu var atvērt ar ENTER.", 21 "feature.quickSwitch.info": "Pakalpojumu var izvēlēties ar TAB, ↑ un ↓. Pakalpojumu var atvērt ar ENTER.",
@@ -276,7 +275,6 @@
276 "settings.app.headlineUpdates": "Atjauninājumi", 275 "settings.app.headlineUpdates": "Atjauninājumi",
277 "settings.app.hibernateInfo": "Pēc noklusējuma Ferdium paturēs visus pakalpojumus atvērtus un ielādētus fonā, lai tie būtu gatavi, kad ir vajadzība tos izmantot. Pakalpojuma hibernācija izslēgs pakalpojumus pēc noteikta laika. Tas ir noderīgi, lai ietaupītu RAM vai atturētu pakalpojumus no datora pelēnināšanas.", 276 "settings.app.hibernateInfo": "Pēc noklusējuma Ferdium paturēs visus pakalpojumus atvērtus un ielādētus fonā, lai tie būtu gatavi, kad ir vajadzība tos izmantot. Pakalpojuma hibernācija izslēgs pakalpojumus pēc noteikta laika. Tas ir noderīgi, lai ietaupītu RAM vai atturētu pakalpojumus no datora pelēnināšanas.",
278 "settings.app.inactivityLockInfo": "Neaktīvo minūšu skaits, pēc kurām Ferdium automātiski aizslēgsies. Izmanto 0, lai atslēgtu", 277 "settings.app.inactivityLockInfo": "Neaktīvo minūšu skaits, pēc kurām Ferdium automātiski aizslēgsies. Izmanto 0, lai atslēgtu",
279 "settings.app.lockInfo": "Aizslēgšana ar paroli ļauj aizsargāt ziņojumus.\nAr aizslēgšanu ar paroli tiks vaicāts ievadīt paroli katru reizi, kad Ferdium tiek sāknēts vai pašrocīgi aizslēgts ar slēdzenes zimi apakšējā kreisajā stūrī vai saīsni {lockShortcut}.",
280 "settings.app.lockedPassword": "Parole", 278 "settings.app.lockedPassword": "Parole",
281 "settings.app.lockedPasswordInfo": "Lūdzu, pārliecinies, ka ievadi paroli, kuru atcerēsies.\nJa tu pazaudēsi šo paroli, tev vajadzēs pārinstalēt Ferdium.", 279 "settings.app.lockedPasswordInfo": "Lūdzu, pārliecinies, ka ievadi paroli, kuru atcerēsies.\nJa tu pazaudēsi šo paroli, tev vajadzēs pārinstalēt Ferdium.",
282 "settings.app.overallTheme": "Vispārējā Tēma", 280 "settings.app.overallTheme": "Vispārējā Tēma",
@@ -296,7 +294,6 @@
296 "settings.app.sectionUpdates": "Aplikācijas Atjauninājumu Iestatījumi", 294 "settings.app.sectionUpdates": "Aplikācijas Atjauninājumu Iestatījumi",
297 "settings.app.sentryInfo": "Izmantošanas pārskata nosūtīšana ļauj atrast kļūdas Ferdium. Netiks sūtīta nekāda personīga informācija, piemēram, ziņojumu saturs.", 295 "settings.app.sentryInfo": "Izmantošanas pārskata nosūtīšana ļauj atrast kļūdas Ferdium. Netiks sūtīta nekāda personīga informācija, piemēram, ziņojumu saturs.",
298 "settings.app.serverHelp": "Savienojies ar serveri {serverURL}", 296 "settings.app.serverHelp": "Savienojies ar serveri {serverURL}",
299 "settings.app.spellCheckerLanguageInfo": "Ferdium izmanto Mac iebūvēto pareizrakstības pārbaudītāju, lai meklētu drukas kļūmes. Ja ir vēlme mainīt pareizrakstības pārbaudītāja izmantoto valodu, to var izdarīt Mac sistēmas uzstādījumos.",
300 "settings.app.subheadlineCache": "Kešatmiņa", 297 "settings.app.subheadlineCache": "Kešatmiņa",
301 "settings.app.subheadlineFerdiumProfile": "Ferdium Profils", 298 "settings.app.subheadlineFerdiumProfile": "Ferdium Profils",
302 "settings.app.todoServerInfo": "Šis serveris tiks izmantots \"Ferdium darāmais\" iespējai.", 299 "settings.app.todoServerInfo": "Šis serveris tiks izmantots \"Ferdium darāmais\" iespējai.",
@@ -327,8 +324,6 @@
327 "settings.recipes.missingService": "Trūkst pakalpojuma?", 324 "settings.recipes.missingService": "Trūkst pakalpojuma?",
328 "settings.recipes.nothingFound": "Atvaino, bet neviens pakalpojums neatbilst meklēšanas nosacījumiem, bet to joprojām ir iespējams pievienot ar \"Pielāgota tīmekļa vietne\" iespēju. Lūgums ņemt vērā, ka tīmekļa vietne var uzrādīt vairāk pakalpojumu, kas tika pievienoti Ferdium kopš pašreiz izmantotās versijas. Lai iegūtu jaunos pakalpojumus, lūgums apsvērt atjaunot uz jaunāku Ferdium versiju.", 325 "settings.recipes.nothingFound": "Atvaino, bet neviens pakalpojums neatbilst meklēšanas nosacījumiem, bet to joprojām ir iespējams pievienot ar \"Pielāgota tīmekļa vietne\" iespēju. Lūgums ņemt vērā, ka tīmekļa vietne var uzrādīt vairāk pakalpojumu, kas tika pievienoti Ferdium kopš pašreiz izmantotās versijas. Lai iegūtu jaunos pakalpojumus, lūgums apsvērt atjaunot uz jaunāku Ferdium versiju.",
329 "settings.recipes.servicesSuccessfulAddedInfo": "Pakalpojums veiksmīgi pievienots", 326 "settings.recipes.servicesSuccessfulAddedInfo": "Pakalpojums veiksmīgi pievienots",
330 "settings.releasenotes.connectionError": "Notika kļūme savienojoties ar Github, lūdzu, mēģini vēlreiz vēlāk.",
331 "settings.releasenotes.connectionErrorPageMissing": "Notika kļūme savienojoties ar Github. Lapa, kuru tu meklē, netika atrasta.",
332 "settings.releasenotes.headline": "Informācija par laidienu", 327 "settings.releasenotes.headline": "Informācija par laidienu",
333 "settings.searchService": "Meklēt pakalpojumu", 328 "settings.searchService": "Meklēt pakalpojumu",
334 "settings.service.error.goBack": "Atpakaļ uz pakalpojumiem", 329 "settings.service.error.goBack": "Atpakaļ uz pakalpojumiem",
diff --git a/src/i18n/locales/nl.json b/src/i18n/locales/nl.json
index 340106095..a8543911e 100644
--- a/src/i18n/locales/nl.json
+++ b/src/i18n/locales/nl.json
@@ -16,7 +16,6 @@
16 "feature.publishDebugInfo.info": "De publicatie van je foutopsporingsinformatie helpt ons bij het vinden van problemen en fouten in Ferdium. Door je foutopsporingsinformatie te publiceren, accepteer je het privacybeleid en de gebruiksvoorwaarden van het foutopsporingsprogramma van Ferdium", 16 "feature.publishDebugInfo.info": "De publicatie van je foutopsporingsinformatie helpt ons bij het vinden van problemen en fouten in Ferdium. Door je foutopsporingsinformatie te publiceren, accepteer je het privacybeleid en de gebruiksvoorwaarden van het foutopsporingsprogramma van Ferdium",
17 "feature.publishDebugInfo.privacy": "Privacybeleid", 17 "feature.publishDebugInfo.privacy": "Privacybeleid",
18 "feature.publishDebugInfo.publish": "Accepteren en publiceren", 18 "feature.publishDebugInfo.publish": "Accepteren en publiceren",
19 "feature.publishDebugInfo.published": "Uw foutopsporingslogboek is gepubliceerd en is nu beschikbaar op",
20 "feature.publishDebugInfo.terms": "Gebruiksvoorwaarden", 19 "feature.publishDebugInfo.terms": "Gebruiksvoorwaarden",
21 "feature.publishDebugInfo.title": "Foutopsporingsinformatie publiceren", 20 "feature.publishDebugInfo.title": "Foutopsporingsinformatie publiceren",
22 "feature.quickSwitch.info": "Selecteer een dienst met TAB, ↑ en ↓. Open een dienst met ENTER.", 21 "feature.quickSwitch.info": "Selecteer een dienst met TAB, ↑ en ↓. Open een dienst met ENTER.",
@@ -276,7 +275,6 @@
276 "settings.app.headlineUpdates": "Updates", 275 "settings.app.headlineUpdates": "Updates",
277 "settings.app.hibernateInfo": "Ferdium houdt uw diensten standaard open op de achtergrond zodat ze klaarstaan voor gebruik. Als u de slaapstand inschakelt, worden diensten na een bepaalde tijd gesloten. Dit bespaart RAM en voorkomt dat diensten uw computer vertragen.", 276 "settings.app.hibernateInfo": "Ferdium houdt uw diensten standaard open op de achtergrond zodat ze klaarstaan voor gebruik. Als u de slaapstand inschakelt, worden diensten na een bepaalde tijd gesloten. Dit bespaart RAM en voorkomt dat diensten uw computer vertragen.",
278 "settings.app.inactivityLockInfo": "Minuten van inactiviteit, waarna Ferdium automatisch vergrendelt. Gebruik 0 om uit te schakelen", 277 "settings.app.inactivityLockInfo": "Minuten van inactiviteit, waarna Ferdium automatisch vergrendelt. Gebruik 0 om uit te schakelen",
279 "settings.app.lockInfo": "Wachtwoordvergrendeling maakt het mogelijk om uw berichten te beschermen.\nWachtwoordvergrendeling zal u vragen om uw wachtwoord in te voeren telkens wanneer u Ferdium of Ferdium vergrendelen zelf start met behulp van het vergrendelingssymbool linksonder op het scherm of de sneltoets {lockShortcut}.",
280 "settings.app.lockedPassword": "Wachtwoord", 278 "settings.app.lockedPassword": "Wachtwoord",
281 "settings.app.lockedPasswordInfo": "Zorg ervoor dat u een wachtwoord instelt dat u kunt onthouden.\nAls u dit wachtwoord verliest zult u Ferdium opnieuw moeten installeren.", 279 "settings.app.lockedPasswordInfo": "Zorg ervoor dat u een wachtwoord instelt dat u kunt onthouden.\nAls u dit wachtwoord verliest zult u Ferdium opnieuw moeten installeren.",
282 "settings.app.overallTheme": "Algemene Thema", 280 "settings.app.overallTheme": "Algemene Thema",
@@ -296,7 +294,6 @@
296 "settings.app.sectionUpdates": "App Updates Instellingen", 294 "settings.app.sectionUpdates": "App Updates Instellingen",
297 "settings.app.sentryInfo": "Als u prestatiegegevens laat verzenden, kunnen we fouten in Ferdium vinden. We verzenden geen persoonlijke informatie, zoals berichtgegevens!", 295 "settings.app.sentryInfo": "Als u prestatiegegevens laat verzenden, kunnen we fouten in Ferdium vinden. We verzenden geen persoonlijke informatie, zoals berichtgegevens!",
298 "settings.app.serverHelp": "Verbonden met de server op {serverURL}", 296 "settings.app.serverHelp": "Verbonden met de server op {serverURL}",
299 "settings.app.spellCheckerLanguageInfo": "Ferdium maakt gebruik van de ingebouwde spellingscontrole op uw Mac om typfouten te zoeken. Als u wilt aanpassen welke talen worden gecontroleerd, kunt u dit doen in Systeemvoorkeuren op uw Mac.",
300 "settings.app.subheadlineCache": "Cache", 297 "settings.app.subheadlineCache": "Cache",
301 "settings.app.subheadlineFerdiumProfile": "Ferdium-profiel", 298 "settings.app.subheadlineFerdiumProfile": "Ferdium-profiel",
302 "settings.app.todoServerInfo": "Deze server wordt gebruikt voor de functie Ferdium Taken.", 299 "settings.app.todoServerInfo": "Deze server wordt gebruikt voor de functie Ferdium Taken.",
@@ -327,8 +324,6 @@
327 "settings.recipes.missingService": "Mist u een dienst?", 324 "settings.recipes.missingService": "Mist u een dienst?",
328 "settings.recipes.nothingFound": "Sorry, geen enkele dienst komt overeen met uw zoekterm - maar u kunt deze waarschijnlijk nog toevoegen met behulp van de optie \"Aangepaste Website\". Houd er rekening mee dat de website meer diensten kan tonen die zijn toegevoegd aan Ferdium sinds de versie die u momenteel gebruikt. Overweeg een upgrade naar een nieuwere versie van Ferdium om deze nieuwe diensten te krijgen.", 325 "settings.recipes.nothingFound": "Sorry, geen enkele dienst komt overeen met uw zoekterm - maar u kunt deze waarschijnlijk nog toevoegen met behulp van de optie \"Aangepaste Website\". Houd er rekening mee dat de website meer diensten kan tonen die zijn toegevoegd aan Ferdium sinds de versie die u momenteel gebruikt. Overweeg een upgrade naar een nieuwere versie van Ferdium om deze nieuwe diensten te krijgen.",
329 "settings.recipes.servicesSuccessfulAddedInfo": "Dienst succesvol toegevoegd", 326 "settings.recipes.servicesSuccessfulAddedInfo": "Dienst succesvol toegevoegd",
330 "settings.releasenotes.connectionError": "Er is een fout opgetreden tijdens het verbinden met Github, probeer het later nog eens.",
331 "settings.releasenotes.connectionErrorPageMissing": "Er is een fout opgetreden tijdens het verbinden met Github, de pagina die u zoekt ontbreekt.",
332 "settings.releasenotes.headline": "Uitgave Opmerkingen", 327 "settings.releasenotes.headline": "Uitgave Opmerkingen",
333 "settings.searchService": "Dienst zoeken", 328 "settings.searchService": "Dienst zoeken",
334 "settings.service.error.goBack": "Terug naar diensten", 329 "settings.service.error.goBack": "Terug naar diensten",
diff --git a/src/i18n/locales/no.json b/src/i18n/locales/no.json
index f5c67a333..bca843a0b 100644
--- a/src/i18n/locales/no.json
+++ b/src/i18n/locales/no.json
@@ -14,7 +14,6 @@
14 "feature.publishDebugInfo.info": "Publisering av din feilsøkingsinformasjon hjelper oss med å finne problemer og feil i Ferdium. Ved å publisere feilsøkingsinformasjonen, godtar du Ferdium feilsøkings-retningslinjer for personvern og tjenestevilkår", 14 "feature.publishDebugInfo.info": "Publisering av din feilsøkingsinformasjon hjelper oss med å finne problemer og feil i Ferdium. Ved å publisere feilsøkingsinformasjonen, godtar du Ferdium feilsøkings-retningslinjer for personvern og tjenestevilkår",
15 "feature.publishDebugInfo.privacy": "Retningslinjer for personvern", 15 "feature.publishDebugInfo.privacy": "Retningslinjer for personvern",
16 "feature.publishDebugInfo.publish": "Godta og publiser", 16 "feature.publishDebugInfo.publish": "Godta og publiser",
17 "feature.publishDebugInfo.published": "Feilsøkingsloggen din ble publisert og er nå tilgjengelig på",
18 "feature.publishDebugInfo.terms": "Vilkår for bruk", 17 "feature.publishDebugInfo.terms": "Vilkår for bruk",
19 "feature.publishDebugInfo.title": "Publiser feilsøkingsinformasjon", 18 "feature.publishDebugInfo.title": "Publiser feilsøkingsinformasjon",
20 "feature.quickSwitch.info": "Velg en tjeneste med TAB, ↑ og ↓. Åpne en tjeneste med ENTER.", 19 "feature.quickSwitch.info": "Velg en tjeneste med TAB, ↑ og ↓. Åpne en tjeneste med ENTER.",
@@ -235,13 +234,11 @@
235 "settings.app.headlineUpdates": "Oppdateringer", 234 "settings.app.headlineUpdates": "Oppdateringer",
236 "settings.app.hibernateInfo": "Som standard vil Ferdium beholde alle tjenestene dine åpne og lastet i bakgrunnen slik at de er klare når du vil bruke dem. Dvalemodus for tjenester vil sette tjenestene dine i dvale etter et angitt tidsrom. Dette er nyttig for å spare minne eller sørge for at tjenestene ikke gjør datamaskinen din treg.", 235 "settings.app.hibernateInfo": "Som standard vil Ferdium beholde alle tjenestene dine åpne og lastet i bakgrunnen slik at de er klare når du vil bruke dem. Dvalemodus for tjenester vil sette tjenestene dine i dvale etter et angitt tidsrom. Dette er nyttig for å spare minne eller sørge for at tjenestene ikke gjør datamaskinen din treg.",
237 "settings.app.inactivityLockInfo": "Minutter med inaktivitet, hvorpå Ferdium burde låses automatisk. Bruk 0 for å deaktivere", 236 "settings.app.inactivityLockInfo": "Minutter med inaktivitet, hvorpå Ferdium burde låses automatisk. Bruk 0 for å deaktivere",
238 "settings.app.lockInfo": "Passordlås lar deg holde meldingene beskyttet.\nBruker passord lås du vil bli bedt om å gå inn i passordet hver gang du starter Ferdium eller låser Ferdium selv ved hjelp av låsesymbolet i nedre venstre hjørne eller snarveien {lockShortcut}.",
239 "settings.app.lockedPassword": "Passord", 237 "settings.app.lockedPassword": "Passord",
240 "settings.app.lockedPasswordInfo": "Sørg for å angi et passord du vil huske.\nHvis du mister dette passordet må du installere Ferdium-appen på nytt.", 238 "settings.app.lockedPasswordInfo": "Sørg for å angi et passord du vil huske.\nHvis du mister dette passordet må du installere Ferdium-appen på nytt.",
241 "settings.app.restartRequired": "Endringer krever omstart", 239 "settings.app.restartRequired": "Endringer krever omstart",
242 "settings.app.scheduledDNDInfo": "Planlagt ikke-forstyrr lar deg definere en tidsperiode hvor du ikke vil få varsler fra Ferdium.", 240 "settings.app.scheduledDNDInfo": "Planlagt ikke-forstyrr lar deg definere en tidsperiode hvor du ikke vil få varsler fra Ferdium.",
243 "settings.app.scheduledDNDTimeInfo": "Tider i 24-Hour-Format. Sluttiden kan være før starttiden (f.eks start 17:00, slutt 09:00) for å aktivere ikke-forstyrr over natten.", 241 "settings.app.scheduledDNDTimeInfo": "Tider i 24-Hour-Format. Sluttiden kan være før starttiden (f.eks start 17:00, slutt 09:00) for å aktivere ikke-forstyrr over natten.",
244 "settings.app.spellCheckerLanguageInfo": "Ferdium bruker Mac'en sin innebygde stavekontroll, for å se etter skrivefeil. Hvis du vil endre språket på stavekontrollen, så kan du gjøre det under Mac'ens system-innstillinger.",
245 "settings.app.subheadlineCache": "Hurtiglager", 242 "settings.app.subheadlineCache": "Hurtiglager",
246 "settings.app.todoServerInfo": "Denne serveren vil bli brukt for \"Ferdium Todo\" funksjonen.", 243 "settings.app.todoServerInfo": "Denne serveren vil bli brukt for \"Ferdium Todo\" funksjonen.",
247 "settings.app.translationHelp": "Hjelp oss med å oversette Ferdium til ditt språk.", 244 "settings.app.translationHelp": "Hjelp oss med å oversette Ferdium til ditt språk.",
diff --git a/src/i18n/locales/pl.json b/src/i18n/locales/pl.json
index 82f47f277..97670b66a 100644
--- a/src/i18n/locales/pl.json
+++ b/src/i18n/locales/pl.json
@@ -14,7 +14,6 @@
14 "feature.publishDebugInfo.info": "Publikowanie swoich informacji diagnostycznych pomaga nam znaleźć problemy i błędy w Ferdium. Publikując informacje diagnostyczne, wyrażasz zgodę na Politykę prywatności oraz Warunki użytkowania tej funkcji", 14 "feature.publishDebugInfo.info": "Publikowanie swoich informacji diagnostycznych pomaga nam znaleźć problemy i błędy w Ferdium. Publikując informacje diagnostyczne, wyrażasz zgodę na Politykę prywatności oraz Warunki użytkowania tej funkcji",
15 "feature.publishDebugInfo.privacy": "Polityka prywatności", 15 "feature.publishDebugInfo.privacy": "Polityka prywatności",
16 "feature.publishDebugInfo.publish": "Akceptuj i opublikuj", 16 "feature.publishDebugInfo.publish": "Akceptuj i opublikuj",
17 "feature.publishDebugInfo.published": "Twój rejestr diagnostyczny został opublikowany i jest dostępny na",
18 "feature.publishDebugInfo.terms": "Warunki świadczenia usług", 17 "feature.publishDebugInfo.terms": "Warunki świadczenia usług",
19 "feature.publishDebugInfo.title": "Opublikuj dane diagnostyczne", 18 "feature.publishDebugInfo.title": "Opublikuj dane diagnostyczne",
20 "feature.quickSwitch.info": "Wybierz usługę naciskając TAB, ↑ oraz ↓. Otwórz usługę naciskając ENTER.", 19 "feature.quickSwitch.info": "Wybierz usługę naciskając TAB, ↑ oraz ↓. Otwórz usługę naciskając ENTER.",
@@ -271,7 +270,6 @@
271 "settings.app.headlineUpdates": "Aktualizacje", 270 "settings.app.headlineUpdates": "Aktualizacje",
272 "settings.app.hibernateInfo": "Domyślnie Ferdium utrzyma wszystkie Twoje usługi otwarte i załadowane w tle, aby były gotowe kiedy chcesz je używać. Usługa Hibernacja rozładuje Twoje usługi po określonej ilości. Jest to przydatne do zaoszczędzenia RAM lub utrzymania usług przed spowolnieniem Twojego komputera.", 271 "settings.app.hibernateInfo": "Domyślnie Ferdium utrzyma wszystkie Twoje usługi otwarte i załadowane w tle, aby były gotowe kiedy chcesz je używać. Usługa Hibernacja rozładuje Twoje usługi po określonej ilości. Jest to przydatne do zaoszczędzenia RAM lub utrzymania usług przed spowolnieniem Twojego komputera.",
273 "settings.app.inactivityLockInfo": "Minuty braku aktywności, po których Ferdium powinna automatycznie zablokować. Użyj 0 aby wyłączyć", 272 "settings.app.inactivityLockInfo": "Minuty braku aktywności, po których Ferdium powinna automatycznie zablokować. Użyj 0 aby wyłączyć",
274 "settings.app.lockInfo": "Blokada hasła pozwala zachować ochronę wiadomości.\nUżywanie blokady hasła, zostaniesz poproszony o wprowadzenie hasła za każdym razem, gdy zaczniesz Ferdium lub zablokuj Ferdium za pomocą symbolu blokady w lewym dolnym rogu lub skrótu {lockShortcut}.",
275 "settings.app.lockedPassword": "Hasło", 273 "settings.app.lockedPassword": "Hasło",
276 "settings.app.lockedPasswordInfo": "Upewnij się, że ustawisz hasło, które zapamiętasz.\nJeśli stracisz to hasło, będziesz musiał ponownie zainstalować Ferdium.", 274 "settings.app.lockedPasswordInfo": "Upewnij się, że ustawisz hasło, które zapamiętasz.\nJeśli stracisz to hasło, będziesz musiał ponownie zainstalować Ferdium.",
277 "settings.app.overallTheme": "Ogólny motyw", 275 "settings.app.overallTheme": "Ogólny motyw",
@@ -291,7 +289,6 @@
291 "settings.app.sectionUpdates": "Ustawienia aktualizacji aplikacji", 289 "settings.app.sectionUpdates": "Ustawienia aktualizacji aplikacji",
292 "settings.app.sentryInfo": "Wysyłanie danych telemetrycznych pozwala nam znaleźć błędy w Ferdium - nie wyślemy żadnych informacji osobistych, takich jak Twoje wiadomości!", 290 "settings.app.sentryInfo": "Wysyłanie danych telemetrycznych pozwala nam znaleźć błędy w Ferdium - nie wyślemy żadnych informacji osobistych, takich jak Twoje wiadomości!",
293 "settings.app.serverHelp": "Połączono z serwerem {serverURL}", 291 "settings.app.serverHelp": "Połączono z serwerem {serverURL}",
294 "settings.app.spellCheckerLanguageInfo": "Ferdium używa sprawdzania pisowni wbudowanego w Twojego Maca do sprawdzania pomyłek. Aby zmienić języki ze sprawdzaniem pisowni, przejdź do Preferencji systemowych swojego Maca.",
295 "settings.app.subheadlineCache": "Pamięć podręczna", 292 "settings.app.subheadlineCache": "Pamięć podręczna",
296 "settings.app.subheadlineFerdiumProfile": "Profil Ferdium", 293 "settings.app.subheadlineFerdiumProfile": "Profil Ferdium",
297 "settings.app.todoServerInfo": "Ten serwer będzie używany do funkcji \"Ferdium Todo\".", 294 "settings.app.todoServerInfo": "Ten serwer będzie używany do funkcji \"Ferdium Todo\".",
@@ -322,8 +319,6 @@
322 "settings.recipes.missingService": "Brak usługi?", 319 "settings.recipes.missingService": "Brak usługi?",
323 "settings.recipes.nothingFound": "Przepraszamy, ale żadna usługa nie pasowała do Twojego wyszukiwanego hasła - ale nadal możesz ją dodać za pomocą opcji \"Niestandardowa strona internetowa\". Pamiętaj, że strona może pokazywać więcej usług, które zostały dodane do Ferdium od czasu, gdy jest ona aktualnie włączona. Aby uzyskać te nowe usługi, rozważ uaktualnienie do nowszej wersji Ferdium.", 320 "settings.recipes.nothingFound": "Przepraszamy, ale żadna usługa nie pasowała do Twojego wyszukiwanego hasła - ale nadal możesz ją dodać za pomocą opcji \"Niestandardowa strona internetowa\". Pamiętaj, że strona może pokazywać więcej usług, które zostały dodane do Ferdium od czasu, gdy jest ona aktualnie włączona. Aby uzyskać te nowe usługi, rozważ uaktualnienie do nowszej wersji Ferdium.",
324 "settings.recipes.servicesSuccessfulAddedInfo": "Usługa została dodana pomyślnie", 321 "settings.recipes.servicesSuccessfulAddedInfo": "Usługa została dodana pomyślnie",
325 "settings.releasenotes.connectionError": "Wystąpił błąd podczas łączenia się z serwisem Github, spróbuj ponownie później.",
326 "settings.releasenotes.connectionErrorPageMissing": "Wystąpił błąd podczas łączenia się z serwisem Github, brakuje strony, której szukasz.",
327 "settings.releasenotes.headline": "Informacje o wydaniu", 322 "settings.releasenotes.headline": "Informacje o wydaniu",
328 "settings.searchService": "Wyszukaj usługę", 323 "settings.searchService": "Wyszukaj usługę",
329 "settings.service.error.goBack": "Wróć do usług", 324 "settings.service.error.goBack": "Wróć do usług",
diff --git a/src/i18n/locales/pt-BR.json b/src/i18n/locales/pt-BR.json
index 57becde30..2538273cd 100644
--- a/src/i18n/locales/pt-BR.json
+++ b/src/i18n/locales/pt-BR.json
@@ -14,7 +14,6 @@
14 "feature.publishDebugInfo.info": "Publicar as suas informações de depuração ajuda-nos a encontrar problemas e erros no Ferdium. Ao publicar as suas informações de depuração, aceita a política de privacidade e termos de serviço do depurador Ferdium", 14 "feature.publishDebugInfo.info": "Publicar as suas informações de depuração ajuda-nos a encontrar problemas e erros no Ferdium. Ao publicar as suas informações de depuração, aceita a política de privacidade e termos de serviço do depurador Ferdium",
15 "feature.publishDebugInfo.privacy": "Política de Privacidade", 15 "feature.publishDebugInfo.privacy": "Política de Privacidade",
16 "feature.publishDebugInfo.publish": "Aceitar e publicar", 16 "feature.publishDebugInfo.publish": "Aceitar e publicar",
17 "feature.publishDebugInfo.published": "O seu registo de depuração foi publicado e está agora disponível em",
18 "feature.publishDebugInfo.terms": "Termos de serviço", 17 "feature.publishDebugInfo.terms": "Termos de serviço",
19 "feature.publishDebugInfo.title": "Publicar informações de depuração", 18 "feature.publishDebugInfo.title": "Publicar informações de depuração",
20 "feature.quickSwitch.info": "Seleccione um serviço com TAB, ↑ e ↓. Abra um serviço com ENTER.", 19 "feature.quickSwitch.info": "Seleccione um serviço com TAB, ↑ e ↓. Abra um serviço com ENTER.",
@@ -271,7 +270,6 @@
271 "settings.app.headlineUpdates": "Atualizações", 270 "settings.app.headlineUpdates": "Atualizações",
272 "settings.app.hibernateInfo": "Por princípio, Ferdium manterá todos os serviços abertos e carregados em segundo plano para que estejam prontos sempre que os quiser utilizar. A hibernação do serviço suspende os serviços após um determinado tempo. Isto é útil para conservar memória RAM ou impedir que os serviços afetem o desempenho do computador.", 271 "settings.app.hibernateInfo": "Por princípio, Ferdium manterá todos os serviços abertos e carregados em segundo plano para que estejam prontos sempre que os quiser utilizar. A hibernação do serviço suspende os serviços após um determinado tempo. Isto é útil para conservar memória RAM ou impedir que os serviços afetem o desempenho do computador.",
273 "settings.app.inactivityLockInfo": "Minutos de inatividade, após os quais Ferdium bloqueará automaticamente. Use 0 para desativar", 272 "settings.app.inactivityLockInfo": "Minutos de inatividade, após os quais Ferdium bloqueará automaticamente. Use 0 para desativar",
274 "settings.app.lockInfo": "O Bloqueio de Senha permite manter suas mensagens protegidas.\nUsando o Bloqueio de Senha, será solicitado a digitar a sua senha toda vez que você começar o Ferdium ou bloquear o Ferdium usando o símbolo de bloqueio no canto inferior esquerdo ou o atalho {lockShortcut}.",
275 "settings.app.lockedPassword": "Palavra-passe", 273 "settings.app.lockedPassword": "Palavra-passe",
276 "settings.app.lockedPasswordInfo": "Por favor certifique-se de definir uma senha que você se lembra.\nSe você perder esta senha, você terá que reinstalar o Ferdium.", 274 "settings.app.lockedPasswordInfo": "Por favor certifique-se de definir uma senha que você se lembra.\nSe você perder esta senha, você terá que reinstalar o Ferdium.",
277 "settings.app.overallTheme": "Tema Geral", 275 "settings.app.overallTheme": "Tema Geral",
@@ -291,7 +289,6 @@
291 "settings.app.sectionUpdates": "Configurações de atualizações do aplicativo", 289 "settings.app.sectionUpdates": "Configurações de atualizações do aplicativo",
292 "settings.app.sentryInfo": "O envio de dados de telemetria nos permite encontrar erros na Ferdium - não enviaremos nenhuma informação pessoal como os dados da sua mensagem!", 290 "settings.app.sentryInfo": "O envio de dados de telemetria nos permite encontrar erros na Ferdium - não enviaremos nenhuma informação pessoal como os dados da sua mensagem!",
293 "settings.app.serverHelp": "Conectado ao servidor em {serverURL}", 291 "settings.app.serverHelp": "Conectado ao servidor em {serverURL}",
294 "settings.app.spellCheckerLanguageInfo": "Ferdium usa o corretor ortográfico do seu Mac para verificar se há erros ortográficos. Se você quiser alterar os idiomas que o corretor ortográfico verifica, pode fazê-lo nas Preferências do Sistema do Mac.",
295 "settings.app.subheadlineCache": "Memória cache", 292 "settings.app.subheadlineCache": "Memória cache",
296 "settings.app.subheadlineFerdiumProfile": "Perfil do Ferdium", 293 "settings.app.subheadlineFerdiumProfile": "Perfil do Ferdium",
297 "settings.app.todoServerInfo": "Este servidor será usado para o recurso \"Ferdium Todo\".", 294 "settings.app.todoServerInfo": "Este servidor será usado para o recurso \"Ferdium Todo\".",
@@ -322,8 +319,6 @@
322 "settings.recipes.missingService": "Sente falta de algum serviço?", 319 "settings.recipes.missingService": "Sente falta de algum serviço?",
323 "settings.recipes.nothingFound": "Desculpe, mas nenhum serviço corresponde ao seu termo de pesquisa - mas você provavelmente pode adicioná-lo usando a opção \"Site personalizado\". Por favor, note que o site pode mostrar mais serviços que foram adicionados ao Ferdium desde a versão em que você está atualmente. Para obter esses novos serviços, por favor, considere atualizar para uma versão mais recente da Ferdium.", 320 "settings.recipes.nothingFound": "Desculpe, mas nenhum serviço corresponde ao seu termo de pesquisa - mas você provavelmente pode adicioná-lo usando a opção \"Site personalizado\". Por favor, note que o site pode mostrar mais serviços que foram adicionados ao Ferdium desde a versão em que você está atualmente. Para obter esses novos serviços, por favor, considere atualizar para uma versão mais recente da Ferdium.",
324 "settings.recipes.servicesSuccessfulAddedInfo": "Serviço adicionado com sucesso", 321 "settings.recipes.servicesSuccessfulAddedInfo": "Serviço adicionado com sucesso",
325 "settings.releasenotes.connectionError": "Ocorreu um erro ao tentar conectar ao Github, por favor tente mais tarde.",
326 "settings.releasenotes.connectionErrorPageMissing": "Ocorreu um erro ao tentar conectar ao Github, a página que você está procurando não foi encontrada.",
327 "settings.releasenotes.headline": "Notas da Versão", 322 "settings.releasenotes.headline": "Notas da Versão",
328 "settings.searchService": "Procurar serviço", 323 "settings.searchService": "Procurar serviço",
329 "settings.service.error.goBack": "Voltar aos serviços", 324 "settings.service.error.goBack": "Voltar aos serviços",
diff --git a/src/i18n/locales/pt.json b/src/i18n/locales/pt.json
index f5a56f598..2722b9b86 100644
--- a/src/i18n/locales/pt.json
+++ b/src/i18n/locales/pt.json
@@ -14,7 +14,6 @@
14 "feature.publishDebugInfo.info": "Publicar as suas informações de depuração ajuda-nos a encontrar problemas e erros no Ferdium. Ao publicar as suas informações de depuração, aceita a política de privacidade e termos de serviço do depurador Ferdium", 14 "feature.publishDebugInfo.info": "Publicar as suas informações de depuração ajuda-nos a encontrar problemas e erros no Ferdium. Ao publicar as suas informações de depuração, aceita a política de privacidade e termos de serviço do depurador Ferdium",
15 "feature.publishDebugInfo.privacy": "Política de Privacidade", 15 "feature.publishDebugInfo.privacy": "Política de Privacidade",
16 "feature.publishDebugInfo.publish": "Aceitar e publicar", 16 "feature.publishDebugInfo.publish": "Aceitar e publicar",
17 "feature.publishDebugInfo.published": "O seu registo de depuração foi publicado e está agora disponível em",
18 "feature.publishDebugInfo.terms": "Termos de serviço", 17 "feature.publishDebugInfo.terms": "Termos de serviço",
19 "feature.publishDebugInfo.title": "Publicar informações de depuração", 18 "feature.publishDebugInfo.title": "Publicar informações de depuração",
20 "feature.quickSwitch.info": "Seleccione um serviço com TAB, ↑ e ↓. Abra um serviço com ENTER.", 19 "feature.quickSwitch.info": "Seleccione um serviço com TAB, ↑ e ↓. Abra um serviço com ENTER.",
@@ -270,7 +269,6 @@
270 "settings.app.headlineUpdates": "Atualizações", 269 "settings.app.headlineUpdates": "Atualizações",
271 "settings.app.hibernateInfo": "Por defeito, o Ferdium manterá todos os serviços abertos e carregados em segundo plano para que estejam prontos sempre que os quiser utilizar. A hibernação do serviço suspende os serviços após um determinado tempo. Isto é útil para conservar memória RAM ou impedir que os serviços afetem o desempenho do computador.", 270 "settings.app.hibernateInfo": "Por defeito, o Ferdium manterá todos os serviços abertos e carregados em segundo plano para que estejam prontos sempre que os quiser utilizar. A hibernação do serviço suspende os serviços após um determinado tempo. Isto é útil para conservar memória RAM ou impedir que os serviços afetem o desempenho do computador.",
272 "settings.app.inactivityLockInfo": "Minutos de inatividade, após os quais Ferdium bloqueará automaticamente. Use 0 para desativar", 271 "settings.app.inactivityLockInfo": "Minutos de inatividade, após os quais Ferdium bloqueará automaticamente. Use 0 para desativar",
273 "settings.app.lockInfo": "O Bloqueio de Senha permite manter suas mensagens protegidas.\nUsando o Bloqueio de Senha, será solicitado a digitar a sua senha toda vez que você começar o Ferdium ou bloquear o Ferdium usando o símbolo de bloqueio no canto inferior esquerdo ou o atalho {lockShortcut}.",
274 "settings.app.lockedPassword": "Palavra-passe", 272 "settings.app.lockedPassword": "Palavra-passe",
275 "settings.app.lockedPasswordInfo": "Por favor certifique-se de definir uma senha que você se lembra.\nSe você perder esta senha, você terá que reinstalar o Ferdium.", 273 "settings.app.lockedPasswordInfo": "Por favor certifique-se de definir uma senha que você se lembra.\nSe você perder esta senha, você terá que reinstalar o Ferdium.",
276 "settings.app.overallTheme": "Tema global", 274 "settings.app.overallTheme": "Tema global",
@@ -289,7 +287,6 @@
289 "settings.app.sectionSidebarSettings": "Definições da barra lateral", 287 "settings.app.sectionSidebarSettings": "Definições da barra lateral",
290 "settings.app.sectionUpdates": "Configurações de atualização", 288 "settings.app.sectionUpdates": "Configurações de atualização",
291 "settings.app.serverHelp": "Conectado ao servidor {serverURL}", 289 "settings.app.serverHelp": "Conectado ao servidor {serverURL}",
292 "settings.app.spellCheckerLanguageInfo": "Ferdium usa o corretor ortográfico do seu Mac para verificar se há erros ortográficos. Se você quiser alterar os idiomas que o corretor ortográfico verifica, pode fazê-lo nas Preferências do Sistema do Mac.",
293 "settings.app.subheadlineCache": "Memória cache", 290 "settings.app.subheadlineCache": "Memória cache",
294 "settings.app.subheadlineFerdiumProfile": "Perfil do Ferdium", 291 "settings.app.subheadlineFerdiumProfile": "Perfil do Ferdium",
295 "settings.app.todoServerInfo": "Este servidor será usado para o recurso \"Ferdium Todo\".", 292 "settings.app.todoServerInfo": "Este servidor será usado para o recurso \"Ferdium Todo\".",
@@ -320,8 +317,6 @@
320 "settings.recipes.missingService": "Sente falta de algum serviço?", 317 "settings.recipes.missingService": "Sente falta de algum serviço?",
321 "settings.recipes.nothingFound": "Desculpe, mas nenhum serviço corresponde ao seu termo de pesquisa - mas você provavelmente pode adicioná-lo usando a opção \"Site personalizado\". Por favor, note que o site pode mostrar mais serviços que foram adicionados ao Ferdium desde a versão em que você está atualmente. Para obter esses novos serviços, por favor, considere atualizar para uma versão mais recente da Ferdium.", 318 "settings.recipes.nothingFound": "Desculpe, mas nenhum serviço corresponde ao seu termo de pesquisa - mas você provavelmente pode adicioná-lo usando a opção \"Site personalizado\". Por favor, note que o site pode mostrar mais serviços que foram adicionados ao Ferdium desde a versão em que você está atualmente. Para obter esses novos serviços, por favor, considere atualizar para uma versão mais recente da Ferdium.",
322 "settings.recipes.servicesSuccessfulAddedInfo": "Serviço adicionado com sucesso", 319 "settings.recipes.servicesSuccessfulAddedInfo": "Serviço adicionado com sucesso",
323 "settings.releasenotes.connectionError": "Ocorreu um erro ao tentar estabelecer ligação com o Github. Por favor, tente novamente mais tarde.",
324 "settings.releasenotes.connectionErrorPageMissing": "Ocorreu um erro ao conectar-se ao Github, a página que está a tentar aceder não existe.",
325 "settings.releasenotes.headline": "Notas de Lançamento", 320 "settings.releasenotes.headline": "Notas de Lançamento",
326 "settings.searchService": "Procurar serviço", 321 "settings.searchService": "Procurar serviço",
327 "settings.service.error.goBack": "Voltar aos serviços", 322 "settings.service.error.goBack": "Voltar aos serviços",
diff --git a/src/i18n/locales/ro.json b/src/i18n/locales/ro.json
index 2256c5716..21282fc74 100644
--- a/src/i18n/locales/ro.json
+++ b/src/i18n/locales/ro.json
@@ -13,7 +13,6 @@
13 "feature.publishDebugInfo.info": "Publicarea informațiilor de depanare ne ajută să găsim probleme și erori în Ferdium. Prin publicarea informațiilor de depanare, acceptați politica de confidențialitate a lui Ferdium Debugger și termenii serviciului", 13 "feature.publishDebugInfo.info": "Publicarea informațiilor de depanare ne ajută să găsim probleme și erori în Ferdium. Prin publicarea informațiilor de depanare, acceptați politica de confidențialitate a lui Ferdium Debugger și termenii serviciului",
14 "feature.publishDebugInfo.privacy": "Politică de confidențialitate", 14 "feature.publishDebugInfo.privacy": "Politică de confidențialitate",
15 "feature.publishDebugInfo.publish": "Acceptă și publică", 15 "feature.publishDebugInfo.publish": "Acceptă și publică",
16 "feature.publishDebugInfo.published": "Jurnalul dvs. de depanare a fost publicat și este acum disponibil la",
17 "feature.publishDebugInfo.terms": "Termenii serviciului", 16 "feature.publishDebugInfo.terms": "Termenii serviciului",
18 "feature.publishDebugInfo.title": "Publicare informații depanare", 17 "feature.publishDebugInfo.title": "Publicare informații depanare",
19 "feature.quickSwitch.info": "Selectaţi un serviciu cu TAB, ↑ şi ↓. Deschideţi un serviciu cu ENTER.", 18 "feature.quickSwitch.info": "Selectaţi un serviciu cu TAB, ↑ şi ↓. Deschideţi un serviciu cu ENTER.",
@@ -228,13 +227,11 @@
228 "settings.app.headlineUpdates": "Actualizări", 227 "settings.app.headlineUpdates": "Actualizări",
229 "settings.app.hibernateInfo": "În mod implicit, Ferdium vă va păstra toate serviciile deschise și încărcate în fundal, astfel încât acestea să fie gata când doriți să le utilizați. Hibernarea serviciului vă va descărca serviciile după o anumită sumă. Acest lucru este util pentru a salva RAM sau pentru a împiedica serviciile să încetinească calculatorul.", 228 "settings.app.hibernateInfo": "În mod implicit, Ferdium vă va păstra toate serviciile deschise și încărcate în fundal, astfel încât acestea să fie gata când doriți să le utilizați. Hibernarea serviciului vă va descărca serviciile după o anumită sumă. Acest lucru este util pentru a salva RAM sau pentru a împiedica serviciile să încetinească calculatorul.",
230 "settings.app.inactivityLockInfo": "Minute de inactivitate, după care Ferdium ar trebui să se blocheze automat. Utilizați 0 pentru a dezactiva", 229 "settings.app.inactivityLockInfo": "Minute de inactivitate, după care Ferdium ar trebui să se blocheze automat. Utilizați 0 pentru a dezactiva",
231 "settings.app.lockInfo": "Blocarea parolei vă permite să păstrați mesajele protejate.\nFolosind blocarea parolei, vi se va solicita să introduceţi parola de fiecare dată când începeţi Ferdium sau să blocaţi Ferdium, utilizând simbolul cu lacăt, din colţul din stânga jos, sau scurtătura {lockShortcut}.",
232 "settings.app.lockedPassword": "Parolă", 230 "settings.app.lockedPassword": "Parolă",
233 "settings.app.lockedPasswordInfo": "Asigurați-vă că setați o parolă pe care o veți aminti.\nDacă ați pierdut această parolă, va trebui să reinstalați Ferdium.", 231 "settings.app.lockedPasswordInfo": "Asigurați-vă că setați o parolă pe care o veți aminti.\nDacă ați pierdut această parolă, va trebui să reinstalați Ferdium.",
234 "settings.app.restartRequired": "Modificările necesită repornire", 232 "settings.app.restartRequired": "Modificările necesită repornire",
235 "settings.app.scheduledDNDInfo": "Programat Fa-no-Disturb vă permite să definiți o perioadă de timp în care nu doriți să primiți notificări de la Ferdium.", 233 "settings.app.scheduledDNDInfo": "Programat Fa-no-Disturb vă permite să definiți o perioadă de timp în care nu doriți să primiți notificări de la Ferdium.",
236 "settings.app.scheduledDNDTimeInfo": "Ori în 24 ore Format. Timpul de terminare poate fi înainte de început (de exemplu, începe ora 17:00, sfârşitul 09:00) pentru a activa Do-not-Disturb peste noapte.", 234 "settings.app.scheduledDNDTimeInfo": "Ori în 24 ore Format. Timpul de terminare poate fi înainte de început (de exemplu, începe ora 17:00, sfârşitul 09:00) pentru a activa Do-not-Disturb peste noapte.",
237 "settings.app.spellCheckerLanguageInfo": "Ferdium folosește executorul de construcții al Mac-ului tău pentru a verifica dacă există typos. Dacă doriți să schimbați limbile pentru care verificați difuzorul, puteți face acest lucru în Preferințele Sistemului Mac.",
238 "settings.app.subheadlineCache": "Geocutie", 235 "settings.app.subheadlineCache": "Geocutie",
239 "settings.app.todoServerInfo": "Acest server va fi folosit pentru funcția \"Ferdium Todo\".", 236 "settings.app.todoServerInfo": "Acest server va fi folosit pentru funcția \"Ferdium Todo\".",
240 "settings.app.translationHelp": "Ajută-ne să traducem Ferdium în limba ta.", 237 "settings.app.translationHelp": "Ajută-ne să traducem Ferdium în limba ta.",
diff --git a/src/i18n/locales/ru.json b/src/i18n/locales/ru.json
index 317b1eda2..9976af270 100644
--- a/src/i18n/locales/ru.json
+++ b/src/i18n/locales/ru.json
@@ -16,7 +16,6 @@
16 "feature.publishDebugInfo.info": "Публикация вашей отладочной информации помогает нам найти проблемы и ошибки в Ferdium. Публикуя вашу отладочную информацию, вы принимаете политику конфиденциальности Ferdium Debugger'ов и условия предоставления услуг", 16 "feature.publishDebugInfo.info": "Публикация вашей отладочной информации помогает нам найти проблемы и ошибки в Ferdium. Публикуя вашу отладочную информацию, вы принимаете политику конфиденциальности Ferdium Debugger'ов и условия предоставления услуг",
17 "feature.publishDebugInfo.privacy": "Политика конфиденциальности", 17 "feature.publishDebugInfo.privacy": "Политика конфиденциальности",
18 "feature.publishDebugInfo.publish": "Принять и опубликовать", 18 "feature.publishDebugInfo.publish": "Принять и опубликовать",
19 "feature.publishDebugInfo.published": "Ваш журнал отладки был опубликован и теперь доступен по адресу",
20 "feature.publishDebugInfo.terms": "Условия обслуживания", 19 "feature.publishDebugInfo.terms": "Условия обслуживания",
21 "feature.publishDebugInfo.title": "Опубликовать отладочную информацию", 20 "feature.publishDebugInfo.title": "Опубликовать отладочную информацию",
22 "feature.quickSwitch.info": "Выберите сервис с Tab, вверх и вниз. Откройте сервис нажав на ENTER.", 21 "feature.quickSwitch.info": "Выберите сервис с Tab, вверх и вниз. Откройте сервис нажав на ENTER.",
@@ -63,6 +62,8 @@
63 "locked.submit.label": "Разблокировать", 62 "locked.submit.label": "Разблокировать",
64 "locked.touchId": "Разблокировать с Touch ID", 63 "locked.touchId": "Разблокировать с Touch ID",
65 "locked.unlockWithPassword": "Разблокировать паролем", 64 "locked.unlockWithPassword": "Разблокировать паролем",
65 "login.changeServer": "Изменить здесь!",
66 "login.changeServerMessage": "Вы используете {serverNameParse} сервер, вы хотите переключиться?",
66 "login.customServerQuestion": "Использовать пользовательский сервер Ferdium?", 67 "login.customServerQuestion": "Использовать пользовательский сервер Ferdium?",
67 "login.email.label": "Адрес электронной почты", 68 "login.email.label": "Адрес электронной почты",
68 "login.headline": "Вход", 69 "login.headline": "Вход",
@@ -255,7 +256,6 @@
255 "settings.app.headlineUpdates": "Обновления", 256 "settings.app.headlineUpdates": "Обновления",
256 "settings.app.hibernateInfo": "По умолчанию, Ferdium оставит все ваши сервисы открытыми и загружеными в фоновом режиме, чтобы они были готовы к использованию. Спящий режим выгрузит ваши сервисы после заданного количества минут. Это полезно для экономии памяти и/или оптимальной работы компьютера.", 257 "settings.app.hibernateInfo": "По умолчанию, Ferdium оставит все ваши сервисы открытыми и загружеными в фоновом режиме, чтобы они были готовы к использованию. Спящий режим выгрузит ваши сервисы после заданного количества минут. Это полезно для экономии памяти и/или оптимальной работы компьютера.",
257 "settings.app.inactivityLockInfo": "минут бездействия, после чего Ferdium будет автоматически блокироваться. Используйте 0, чтобы отключить", 258 "settings.app.inactivityLockInfo": "минут бездействия, после чего Ferdium будет автоматически блокироваться. Используйте 0, чтобы отключить",
258 "settings.app.lockInfo": "Блокировка паролем позволяет защитить ваши сообщения.\nПри использовании блокировки паролем вам будет предложено вводить пароль каждый раз, когда вы запускаете Ferdium или блокируете Ферди с помощью символа блокировки в левом нижнем углу или ярлыка {lockShortcut}.",
259 "settings.app.lockedPassword": "Пароль", 259 "settings.app.lockedPassword": "Пароль",
260 "settings.app.lockedPasswordInfo": "Пожалуйста, убедитесь, что установлен пароль, который вы запомните.\nЕсли вы потеряете этот пароль, вам придется переустановить Ferdium.", 260 "settings.app.lockedPasswordInfo": "Пожалуйста, убедитесь, что установлен пароль, который вы запомните.\nЕсли вы потеряете этот пароль, вам придется переустановить Ferdium.",
261 "settings.app.restartRequired": "Изменения требуют перезагрузки приложения", 261 "settings.app.restartRequired": "Изменения требуют перезагрузки приложения",
@@ -266,7 +266,6 @@
266 "settings.app.sentryInfo": "Отправка телеметрии позволяет нам находить ошибки в Ferdium - мы не будем отправлять никакой личной информации, включая ваши сообщения!", 266 "settings.app.sentryInfo": "Отправка телеметрии позволяет нам находить ошибки в Ferdium - мы не будем отправлять никакой личной информации, включая ваши сообщения!",
267 "settings.app.serverHelp": "Подключен к серверу {serverURL}", 267 "settings.app.serverHelp": "Подключен к серверу {serverURL}",
268 "settings.app.servicesUpdateStatusUpToDate": "Ваши сервисы актуальны", 268 "settings.app.servicesUpdateStatusUpToDate": "Ваши сервисы актуальны",
269 "settings.app.spellCheckerLanguageInfo": "Ferdium использует встроенную проверку орфографии вашего устройства. Если вы желаете изменить язык проверки орфографии, вы можете произвести это в системных настройках вашего устройства.",
270 "settings.app.subheadlineCache": "Кэш", 269 "settings.app.subheadlineCache": "Кэш",
271 "settings.app.subheadlineFerdiumProfile": "Профиль Ferdium", 270 "settings.app.subheadlineFerdiumProfile": "Профиль Ferdium",
272 "settings.app.todoServerInfo": "Этот сервер будет использоваться для функции задач \"Ferdium Todo\".", 271 "settings.app.todoServerInfo": "Этот сервер будет использоваться для функции задач \"Ferdium Todo\".",
diff --git a/src/i18n/locales/sk.json b/src/i18n/locales/sk.json
index 85399993d..86a988a97 100644
--- a/src/i18n/locales/sk.json
+++ b/src/i18n/locales/sk.json
@@ -14,7 +14,6 @@
14 "feature.publishDebugInfo.info": "Zverejnenie debug informácií nám pomáha identifikovať problémy a chyby vo Ferdium. Zverejnením týchto informácií akceptujete zásady ochrany osobných údajov a podmienky služby Ferdium", 14 "feature.publishDebugInfo.info": "Zverejnenie debug informácií nám pomáha identifikovať problémy a chyby vo Ferdium. Zverejnením týchto informácií akceptujete zásady ochrany osobných údajov a podmienky služby Ferdium",
15 "feature.publishDebugInfo.privacy": "Ochrana osobných údajov", 15 "feature.publishDebugInfo.privacy": "Ochrana osobných údajov",
16 "feature.publishDebugInfo.publish": "Prijať a zverejniť", 16 "feature.publishDebugInfo.publish": "Prijať a zverejniť",
17 "feature.publishDebugInfo.published": "Vaše debug informácie boli zverejnené a teraz sú dostupné na",
18 "feature.publishDebugInfo.terms": "Podmienky služby", 17 "feature.publishDebugInfo.terms": "Podmienky služby",
19 "feature.publishDebugInfo.title": "Zverejniť debug informácie", 18 "feature.publishDebugInfo.title": "Zverejniť debug informácie",
20 "feature.quickSwitch.info": "Vyberte službu s TAB, ↑ a ↓. Otvorte službu s ENTER.", 19 "feature.quickSwitch.info": "Vyberte službu s TAB, ↑ a ↓. Otvorte službu s ENTER.",
@@ -271,7 +270,6 @@
271 "settings.app.headlineUpdates": "Aktualizácie", 270 "settings.app.headlineUpdates": "Aktualizácie",
272 "settings.app.hibernateInfo": "V predvolenom nastavení bude Ferdium udržiavať všetky vaše služby otvorené a načítané na pozadí, aby boli pripravené, keď ich budete chcieť použiť. Funkcia uspania služieb vaše služby po určitom čase odpojí. Je to užitočné na šetrenie pamäte RAM alebo na to, aby služby nespomaľovali počítač.", 271 "settings.app.hibernateInfo": "V predvolenom nastavení bude Ferdium udržiavať všetky vaše služby otvorené a načítané na pozadí, aby boli pripravené, keď ich budete chcieť použiť. Funkcia uspania služieb vaše služby po určitom čase odpojí. Je to užitočné na šetrenie pamäte RAM alebo na to, aby služby nespomaľovali počítač.",
273 "settings.app.inactivityLockInfo": "Minúty nečinnosti, po ktorých by sa mal Ferdium automaticky uzamknúť. Ak si neželáte automatické uzamknutie, použite hodnotu 0", 272 "settings.app.inactivityLockInfo": "Minúty nečinnosti, po ktorých by sa mal Ferdium automaticky uzamknúť. Ak si neželáte automatické uzamknutie, použite hodnotu 0",
274 "settings.app.lockInfo": "Funkcia uzamknutie heslom umožňuje chrániť správy.\nPri použití funkcie uzamknutie heslom budete pri každom spustení Ferdium vyzvaní na zadanie hesla alebo si Ferdium zamknete sami pomocou symbolu zámku v ľavom dolnom rohu alebo skratky {lockShortcut}.",
275 "settings.app.lockedPassword": "Heslo", 273 "settings.app.lockedPassword": "Heslo",
276 "settings.app.lockedPasswordInfo": "Uistite sa, že nastavíte heslo, ktoré si zapamätáte.\nAk toto heslo stratíte, budete musieť Ferdium nainštalovať znova.", 274 "settings.app.lockedPasswordInfo": "Uistite sa, že nastavíte heslo, ktoré si zapamätáte.\nAk toto heslo stratíte, budete musieť Ferdium nainštalovať znova.",
277 "settings.app.overallTheme": "Všeobecná téma", 275 "settings.app.overallTheme": "Všeobecná téma",
@@ -291,7 +289,6 @@
291 "settings.app.sectionUpdates": "Nastavenia aktualizácií aplikácie", 289 "settings.app.sectionUpdates": "Nastavenia aktualizácií aplikácie",
292 "settings.app.sentryInfo": "Odosielanie telemetrických údajov nám umožňuje nájsť chyby v systéme Ferdium - nebudeme odosielať žiadne osobné údaje, ako napríklad vaše správy!", 290 "settings.app.sentryInfo": "Odosielanie telemetrických údajov nám umožňuje nájsť chyby v systéme Ferdium - nebudeme odosielať žiadne osobné údaje, ako napríklad vaše správy!",
293 "settings.app.serverHelp": "Pripojené k serveru na adrese {serverURL}", 291 "settings.app.serverHelp": "Pripojené k serveru na adrese {serverURL}",
294 "settings.app.spellCheckerLanguageInfo": "Ferdium používa na kontrolu preklepov zabudovanú kontrolu pravopisu v počítači Mac. Ak chcete zmeniť jazyky, ktoré kontroluje, môžete to urobiť v systémových nastaveniach Macu.",
295 "settings.app.subheadlineCache": "Vyrovnávacia pamäť", 292 "settings.app.subheadlineCache": "Vyrovnávacia pamäť",
296 "settings.app.subheadlineFerdiumProfile": "Profil Ferdium", 293 "settings.app.subheadlineFerdiumProfile": "Profil Ferdium",
297 "settings.app.todoServerInfo": "Tento server sa bude používať pre funkciu \"Ferdium Todo\".", 294 "settings.app.todoServerInfo": "Tento server sa bude používať pre funkciu \"Ferdium Todo\".",
@@ -322,8 +319,6 @@
322 "settings.recipes.missingService": "Chýba vám služba?", 319 "settings.recipes.missingService": "Chýba vám služba?",
323 "settings.recipes.nothingFound": "Je nám ľúto, vášmu hľadanému výrazu nezodpovedá žiadna služba, ale pravdepodobne ju môžete pridať pomocou možnosti \"Custom Website\". Upozorňujeme, že na webovej lokalite sa môžu zobraziť ďalšie služby, ktoré boli do Ferdium pridané od verzie, na ktorej sa práve nachádzate. Ak chcete získať tieto nové služby, zvážte aktualizáciu na novšiu verziu Ferdium.", 320 "settings.recipes.nothingFound": "Je nám ľúto, vášmu hľadanému výrazu nezodpovedá žiadna služba, ale pravdepodobne ju môžete pridať pomocou možnosti \"Custom Website\". Upozorňujeme, že na webovej lokalite sa môžu zobraziť ďalšie služby, ktoré boli do Ferdium pridané od verzie, na ktorej sa práve nachádzate. Ak chcete získať tieto nové služby, zvážte aktualizáciu na novšiu verziu Ferdium.",
324 "settings.recipes.servicesSuccessfulAddedInfo": "Služba bola úspešne pridaná", 321 "settings.recipes.servicesSuccessfulAddedInfo": "Služba bola úspešne pridaná",
325 "settings.releasenotes.connectionError": "Pri pripájaní k službe Github došlo k chybe, skúste to prosím neskôr.",
326 "settings.releasenotes.connectionErrorPageMissing": "Pri pripájaní na Github došlo k chybe, hľadaná stránka chýba.",
327 "settings.releasenotes.headline": "Poznámky k vydaniu", 322 "settings.releasenotes.headline": "Poznámky k vydaniu",
328 "settings.searchService": "Vyhľadať službu", 323 "settings.searchService": "Vyhľadať službu",
329 "settings.service.error.goBack": "Späť na služby", 324 "settings.service.error.goBack": "Späť na služby",
diff --git a/src/i18n/locales/sv.json b/src/i18n/locales/sv.json
index 1d31c78f1..c66d218d7 100644
--- a/src/i18n/locales/sv.json
+++ b/src/i18n/locales/sv.json
@@ -13,7 +13,6 @@
13 "feature.publishDebugInfo.info": "Genom att skicka oss din felsökningsinformation hjälper du oss att hitta problem och fel i Ferdium. Genom att skicka din felsökningsinformation godkänner du Ferdium-debuggerns sekretesspolicy och användarvillkor", 13 "feature.publishDebugInfo.info": "Genom att skicka oss din felsökningsinformation hjälper du oss att hitta problem och fel i Ferdium. Genom att skicka din felsökningsinformation godkänner du Ferdium-debuggerns sekretesspolicy och användarvillkor",
14 "feature.publishDebugInfo.privacy": "Integritetspolicy", 14 "feature.publishDebugInfo.privacy": "Integritetspolicy",
15 "feature.publishDebugInfo.publish": "Godkänn och skicka", 15 "feature.publishDebugInfo.publish": "Godkänn och skicka",
16 "feature.publishDebugInfo.published": "Din felsökningslogg har skickats och finns nu tillgänglig på",
17 "feature.publishDebugInfo.terms": "Användarvillkor", 16 "feature.publishDebugInfo.terms": "Användarvillkor",
18 "feature.publishDebugInfo.title": "Skicka felsökningsinformation", 17 "feature.publishDebugInfo.title": "Skicka felsökningsinformation",
19 "feature.quickSwitch.info": "Välj en tjänst med TAB, ↑ and ↓. Öppna en tjänst med ENTER.", 18 "feature.quickSwitch.info": "Välj en tjänst med TAB, ↑ and ↓. Öppna en tjänst med ENTER.",
@@ -237,13 +236,11 @@
237 "settings.app.headlineUpdates": "Uppdateringar", 236 "settings.app.headlineUpdates": "Uppdateringar",
238 "settings.app.hibernateInfo": "Som standard kommer Ferdium att hålla alla dina tjänster öppna och laddade i bakgrunden så att de är redo när du vill använda dem. Viloläget kommer att stänga dina tjänster efter ett angivet belopp. Detta är användbart för att spara på arbetsminne eller se till att tjänster inte saktar ner datorn.", 237 "settings.app.hibernateInfo": "Som standard kommer Ferdium att hålla alla dina tjänster öppna och laddade i bakgrunden så att de är redo när du vill använda dem. Viloläget kommer att stänga dina tjänster efter ett angivet belopp. Detta är användbart för att spara på arbetsminne eller se till att tjänster inte saktar ner datorn.",
239 "settings.app.inactivityLockInfo": "Antal minuter av inaktivitet, varefter Ferdium låses automatiskt. Ange 0 för att inaktivera", 238 "settings.app.inactivityLockInfo": "Antal minuter av inaktivitet, varefter Ferdium låses automatiskt. Ange 0 för att inaktivera",
240 "settings.app.lockInfo": "Lösenordslås låter dig skydda dina meddelanden.\nAnvända lösenordsblock, du kommer att bli ombedd att ange ditt lösenord varje gång du startar Ferdium eller låsa Ferdium själv med hjälp av låssymbolen i det nedre vänstra hörnet eller genvägen {lockShortcut}.",
241 "settings.app.lockedPassword": "Lösenord", 239 "settings.app.lockedPassword": "Lösenord",
242 "settings.app.lockedPasswordInfo": "Se till att du anger ett lösenord du kommer att komma ihåg.\nOm du tappar bort detta lösenord måste du installera om Ferdium.", 240 "settings.app.lockedPasswordInfo": "Se till att du anger ett lösenord du kommer att komma ihåg.\nOm du tappar bort detta lösenord måste du installera om Ferdium.",
243 "settings.app.restartRequired": "Ändringar kräver omstart", 241 "settings.app.restartRequired": "Ändringar kräver omstart",
244 "settings.app.scheduledDNDInfo": "Schemalagd \"Stör ej\" låter dig definiera en tidsperiod inom vilken du inte vill få meddelanden från Ferdium.", 242 "settings.app.scheduledDNDInfo": "Schemalagd \"Stör ej\" låter dig definiera en tidsperiod inom vilken du inte vill få meddelanden från Ferdium.",
245 "settings.app.scheduledDNDTimeInfo": "Tid i 24-timmarsformat. Sluttid kan vara före starttid (t.ex. start 17:00, slut 09:00) för att aktivera \"Stör ej\" över natten.", 243 "settings.app.scheduledDNDTimeInfo": "Tid i 24-timmarsformat. Sluttid kan vara före starttid (t.ex. start 17:00, slut 09:00) för att aktivera \"Stör ej\" över natten.",
246 "settings.app.spellCheckerLanguageInfo": "Ferdium använder Mac's inbyggda stavningskontroll för att kontrollera skrivfel. Om du vill ändra de språk som stavningskontrollen kontrollerar efter kan du göra det i din Macs Systeminställningar.",
247 "settings.app.todoServerInfo": "Denna server kommer att användas för \"Ferdium Todo\"-funktionen.", 244 "settings.app.todoServerInfo": "Denna server kommer att användas för \"Ferdium Todo\"-funktionen.",
248 "settings.app.translationHelp": "Hjälp oss att översätta Ferdium till ditt språk.", 245 "settings.app.translationHelp": "Hjälp oss att översätta Ferdium till ditt språk.",
249 "settings.app.universalDarkModeInfo": "Globalt mörkt läge försöker att dynamiskt generera en mörk stil för tjänster som ännu inte stöds.", 246 "settings.app.universalDarkModeInfo": "Globalt mörkt läge försöker att dynamiskt generera en mörk stil för tjänster som ännu inte stöds.",
diff --git a/src/i18n/locales/tr.json b/src/i18n/locales/tr.json
index 5d5b9bf83..544b81192 100644
--- a/src/i18n/locales/tr.json
+++ b/src/i18n/locales/tr.json
@@ -14,7 +14,6 @@
14 "feature.publishDebugInfo.info": "Hata ayıklama bilgilerinizi yayınlamak, Ferdium'daki sorunları ve hataları bulmamıza yardımcı olur. Hata ayıklama bilgilerinizi yayınlayarak Ferdium Hata Ayıklayıcı'nın gizlilik politikasını ve hizmet şartlarını kabul etmiş olursunuz", 14 "feature.publishDebugInfo.info": "Hata ayıklama bilgilerinizi yayınlamak, Ferdium'daki sorunları ve hataları bulmamıza yardımcı olur. Hata ayıklama bilgilerinizi yayınlayarak Ferdium Hata Ayıklayıcı'nın gizlilik politikasını ve hizmet şartlarını kabul etmiş olursunuz",
15 "feature.publishDebugInfo.privacy": "Gizlilik ilkesi", 15 "feature.publishDebugInfo.privacy": "Gizlilik ilkesi",
16 "feature.publishDebugInfo.publish": "Onayla ve yayımla", 16 "feature.publishDebugInfo.publish": "Onayla ve yayımla",
17 "feature.publishDebugInfo.published": "Hata ayıklama günlüğünüz hazır ve burada mevcut",
18 "feature.publishDebugInfo.terms": "Kullanım Koşulları", 17 "feature.publishDebugInfo.terms": "Kullanım Koşulları",
19 "feature.publishDebugInfo.title": "Hata ayıklama bilgisini yayımla", 18 "feature.publishDebugInfo.title": "Hata ayıklama bilgisini yayımla",
20 "feature.quickSwitch.info": "TAB, ↑ ve ↓ ile bir servis seç. ENTER ile bir servisi aç.", 19 "feature.quickSwitch.info": "TAB, ↑ ve ↓ ile bir servis seç. ENTER ile bir servisi aç.",
@@ -271,7 +270,6 @@
271 "settings.app.headlineUpdates": "Güncellemeler", 270 "settings.app.headlineUpdates": "Güncellemeler",
272 "settings.app.hibernateInfo": "Varsayılan olarak, Ferdium tüm hizmetlerinizi açık ve arka planda yüklü tutar böylece kullanmak istediğinizde hazır olurlar. Hizmethizmetlerinizi belirli bir süre sonra hafızadan boşaltacaktır. Bu RAM'den tasarruf etmek veya hizmetlerin bilgisayarınızı yavaşlatmasını önlemek için kullanışlıdır.", 271 "settings.app.hibernateInfo": "Varsayılan olarak, Ferdium tüm hizmetlerinizi açık ve arka planda yüklü tutar böylece kullanmak istediğinizde hazır olurlar. Hizmethizmetlerinizi belirli bir süre sonra hafızadan boşaltacaktır. Bu RAM'den tasarruf etmek veya hizmetlerin bilgisayarınızı yavaşlatmasını önlemek için kullanışlıdır.",
273 "settings.app.inactivityLockInfo": "Hareketsizlik dakikası, bundan sonra Ferdium otomatik olarak kilitlenir. Devre dışı bırakmak için 0'ı kullanın", 272 "settings.app.inactivityLockInfo": "Hareketsizlik dakikası, bundan sonra Ferdium otomatik olarak kilitlenir. Devre dışı bırakmak için 0'ı kullanın",
274 "settings.app.lockInfo": "Parola Kilidi, mesajlarınızı koruma altına almanızı sağlar.\nParola Kilidi'ni kullanarak, Ferdium'u her başlattığınızda veya sol alt köşedeki kilit simgesini veya {lockShortcut} kısayolunu kullanarak Ferdium'u kendiniz kilitlediğinizde parolanızı girmeniz istenir.",
275 "settings.app.lockedPassword": "Şifre", 273 "settings.app.lockedPassword": "Şifre",
276 "settings.app.lockedPasswordInfo": "Lütfen hatırlayacağınız bir şifre belirlediğinizden emin olun.\nBu şifreyi kaybederseniz, Ferdium'u yeniden kurmanız gerekecektir.", 274 "settings.app.lockedPasswordInfo": "Lütfen hatırlayacağınız bir şifre belirlediğinizden emin olun.\nBu şifreyi kaybederseniz, Ferdium'u yeniden kurmanız gerekecektir.",
277 "settings.app.overallTheme": "Genel Tema", 275 "settings.app.overallTheme": "Genel Tema",
@@ -291,7 +289,6 @@
291 "settings.app.sectionUpdates": "Uygulama Güncellemeleri Ayarları", 289 "settings.app.sectionUpdates": "Uygulama Güncellemeleri Ayarları",
292 "settings.app.sentryInfo": "Telemetri verilerinin gönderilmesi, Ferdium'daki hataları bulmamızı sağlar - mesaj verileriniz gibi herhangi bir kişisel bilgi göndermeyeceğiz!", 290 "settings.app.sentryInfo": "Telemetri verilerinin gönderilmesi, Ferdium'daki hataları bulmamızı sağlar - mesaj verileriniz gibi herhangi bir kişisel bilgi göndermeyeceğiz!",
293 "settings.app.serverHelp": "Bağlanılan Sunucu: {serverURL}", 291 "settings.app.serverHelp": "Bağlanılan Sunucu: {serverURL}",
294 "settings.app.spellCheckerLanguageInfo": "Ferdium, yazım hatalarını kontrol etmek için Mac'inizin yerleşik yazım denetleyicisini kullanır. Yazım denetleyicisinin denetlediği dilleri değiştirmek isterseniz, bunu Mac'inizin Sistem Tercihleri'nden yapabilirsiniz.",
295 "settings.app.subheadlineCache": "Önbellek", 292 "settings.app.subheadlineCache": "Önbellek",
296 "settings.app.subheadlineFerdiumProfile": "Ferdium Profili", 293 "settings.app.subheadlineFerdiumProfile": "Ferdium Profili",
297 "settings.app.todoServerInfo": "Bu sunucu \"Ferdium Yapılacaklar Listesi\" özelliği için kullanılacaktır.", 294 "settings.app.todoServerInfo": "Bu sunucu \"Ferdium Yapılacaklar Listesi\" özelliği için kullanılacaktır.",
@@ -322,8 +319,6 @@
322 "settings.recipes.missingService": "Aradığın servisi bulamadın mı?", 319 "settings.recipes.missingService": "Aradığın servisi bulamadın mı?",
323 "settings.recipes.nothingFound": "Üzgünüz, ancak hiçbir hizmet arama teriminizle eşleşmedi - ancak \"Özel Web Sitesi\" seçeneğini kullanarak yeni bir tane ekleyebilirsiniz. Web sitesinde, şu anda bulunduğunuz sürümden bu yana Ferdium'ye eklenen daha fazla hizmet gösterilebileceğini lütfen unutmayın. Bu yeni hizmetleri almak için lütfen Ferdium'nin daha yeni bir sürümüne geçmeyi düşünün.", 320 "settings.recipes.nothingFound": "Üzgünüz, ancak hiçbir hizmet arama teriminizle eşleşmedi - ancak \"Özel Web Sitesi\" seçeneğini kullanarak yeni bir tane ekleyebilirsiniz. Web sitesinde, şu anda bulunduğunuz sürümden bu yana Ferdium'ye eklenen daha fazla hizmet gösterilebileceğini lütfen unutmayın. Bu yeni hizmetleri almak için lütfen Ferdium'nin daha yeni bir sürümüne geçmeyi düşünün.",
324 "settings.recipes.servicesSuccessfulAddedInfo": "Servis başarıyla eklendi", 321 "settings.recipes.servicesSuccessfulAddedInfo": "Servis başarıyla eklendi",
325 "settings.releasenotes.connectionError": "Github'a bağlanılırken bir hata oluştu, lütfen daha sonra tekrar deneyin.",
326 "settings.releasenotes.connectionErrorPageMissing": "Github'a bağlanılırken bir hata oluştu, aradığınız sayfa bulunamadı.",
327 "settings.releasenotes.headline": "Sürüm Notları", 322 "settings.releasenotes.headline": "Sürüm Notları",
328 "settings.searchService": "Hizmeti ara", 323 "settings.searchService": "Hizmeti ara",
329 "settings.service.error.goBack": "Servislere geri dön", 324 "settings.service.error.goBack": "Servislere geri dön",
diff --git a/src/i18n/locales/uk.json b/src/i18n/locales/uk.json
index 359d65254..2b72ad3e1 100644
--- a/src/i18n/locales/uk.json
+++ b/src/i18n/locales/uk.json
@@ -14,7 +14,6 @@
14 "feature.publishDebugInfo.info": "Публікація інформації для налагодження допоможе нам знайти проблеми та помилки у Fredi. Публікуючи вашу зневаджувальну інформацію, ви приймаєте політику конфіденційності Ferdium Debugger та умови використання", 14 "feature.publishDebugInfo.info": "Публікація інформації для налагодження допоможе нам знайти проблеми та помилки у Fredi. Публікуючи вашу зневаджувальну інформацію, ви приймаєте політику конфіденційності Ferdium Debugger та умови використання",
15 "feature.publishDebugInfo.privacy": "Політика конфіденційності", 15 "feature.publishDebugInfo.privacy": "Політика конфіденційності",
16 "feature.publishDebugInfo.publish": "Прийняти і опублікувати", 16 "feature.publishDebugInfo.publish": "Прийняти і опублікувати",
17 "feature.publishDebugInfo.published": "Ваш журнал налагодження був опублікований та доступний тут",
18 "feature.publishDebugInfo.terms": "Умови використання", 17 "feature.publishDebugInfo.terms": "Умови використання",
19 "feature.publishDebugInfo.title": "Опублікувати інформацію для налагодження", 18 "feature.publishDebugInfo.title": "Опублікувати інформацію для налагодження",
20 "feature.quickSwitch.info": "Виберіть сервіс за допомогою TAB, стрілок ↑ та ↓. Натисніть ENTER, щоб відкрити.", 19 "feature.quickSwitch.info": "Виберіть сервіс за допомогою TAB, стрілок ↑ та ↓. Натисніть ENTER, щоб відкрити.",
@@ -266,14 +265,12 @@
266 "settings.app.headlineUpdates": "Оновлення", 265 "settings.app.headlineUpdates": "Оновлення",
267 "settings.app.hibernateInfo": "За замовчуванням, Ferdium залишає всі ваші сервіси відкритими та завантажує їх у фоновому режимі, щоб вони були готові, коли ви захочете їх використати. Режим глибокого сну розвантажить ваші сервіси після зазначеної кількості хвилин. Це корисно для заощадження оперативної пам’яті або щоб послуги не сповільнювали роботу комп’ютера.", 266 "settings.app.hibernateInfo": "За замовчуванням, Ferdium залишає всі ваші сервіси відкритими та завантажує їх у фоновому режимі, щоб вони були готові, коли ви захочете їх використати. Режим глибокого сну розвантажить ваші сервіси після зазначеної кількості хвилин. Це корисно для заощадження оперативної пам’яті або щоб послуги не сповільнювали роботу комп’ютера.",
268 "settings.app.inactivityLockInfo": "Кількість хвилин бездіяльності, після якої Ferdium буде автоматично блокуватись. Використайте 0, щоб не блокуватись", 267 "settings.app.inactivityLockInfo": "Кількість хвилин бездіяльності, після якої Ferdium буде автоматично блокуватись. Використайте 0, щоб не блокуватись",
269 "settings.app.lockInfo": "Блокування паролем дозволяє зберігати ваші повідомлення в безпеці.\nВикористовуючи блокування паролем, вам буде запропоновано ввести пароль кожен раз, коли ви запускаєте Ferdium або блокуєте Ferdium власноруч за допомогою символу замочку в нижньому лівому куті або комбінації клавіш {lockShortcut}.",
270 "settings.app.lockedPassword": "Пароль", 268 "settings.app.lockedPassword": "Пароль",
271 "settings.app.lockedPasswordInfo": "Обов’язково встановіть пароль, який ви запам’ятаєте.\nЯкщо ви втратите цей пароль, вам доведеться перевстановити Ferdium.", 269 "settings.app.lockedPasswordInfo": "Обов’язково встановіть пароль, який ви запам’ятаєте.\nЯкщо ви втратите цей пароль, вам доведеться перевстановити Ferdium.",
272 "settings.app.overallTheme": "Загальна тема", 270 "settings.app.overallTheme": "Загальна тема",
273 "settings.app.restartRequired": "Зміни потребують перезапуску", 271 "settings.app.restartRequired": "Зміни потребують перезапуску",
274 "settings.app.scheduledDNDInfo": "Запланований режим \"не турбувати\" дозволяє визначити проміжок часу, в який ви не хочете отримувати сповіщення від Ferdium.", 272 "settings.app.scheduledDNDInfo": "Запланований режим \"не турбувати\" дозволяє визначити проміжок часу, в який ви не хочете отримувати сповіщення від Ferdium.",
275 "settings.app.scheduledDNDTimeInfo": "Час в 24-годинному форматі. Час закінчення може бути меньшим за час початку (наприклад, старт - 17:00, кінець - 09:00) щоб увімкнути режим \"не турбувати\" вночі.", 273 "settings.app.scheduledDNDTimeInfo": "Час в 24-годинному форматі. Час закінчення може бути меньшим за час початку (наприклад, старт - 17:00, кінець - 09:00) щоб увімкнути режим \"не турбувати\" вночі.",
276 "settings.app.spellCheckerLanguageInfo": "Ferdium використовує вбудований у ваш Mac засіб перевірки орфографії для пошуку помилок. Якщо ви хочете змінити мови для перевірки орфографії, ви можете зробити це в налаштуваннях системи вашого Mac.",
277 "settings.app.subheadlineCache": "Кеш", 274 "settings.app.subheadlineCache": "Кеш",
278 "settings.app.subheadlineFerdiumProfile": "Обліковий запис Ferdium", 275 "settings.app.subheadlineFerdiumProfile": "Обліковий запис Ferdium",
279 "settings.app.todoServerInfo": "Цей сервер буде використовуватися для функції Завдань Ferdium.", 276 "settings.app.todoServerInfo": "Цей сервер буде використовуватися для функції Завдань Ferdium.",
diff --git a/src/i18n/locales/vi.json b/src/i18n/locales/vi.json
index 6a35f483a..a45f1836b 100644
--- a/src/i18n/locales/vi.json
+++ b/src/i18n/locales/vi.json
@@ -13,7 +13,6 @@
13 "feature.publishDebugInfo.info": "Việc xuất bản thông tin gỡ lỗi của bạn sẽ giúp chúng tôi tìm ra các vấn đề và lỗi trong Ferdium. Bằng cách xuất bản thông tin gỡ lỗi của bạn, bạn chấp nhận chính sách bảo mật và điều khoản dịch vụ của Trình gỡ lỗi Ferdium", 13 "feature.publishDebugInfo.info": "Việc xuất bản thông tin gỡ lỗi của bạn sẽ giúp chúng tôi tìm ra các vấn đề và lỗi trong Ferdium. Bằng cách xuất bản thông tin gỡ lỗi của bạn, bạn chấp nhận chính sách bảo mật và điều khoản dịch vụ của Trình gỡ lỗi Ferdium",
14 "feature.publishDebugInfo.privacy": "Chính sách", 14 "feature.publishDebugInfo.privacy": "Chính sách",
15 "feature.publishDebugInfo.publish": "Chấp nhận và xuất bản", 15 "feature.publishDebugInfo.publish": "Chấp nhận và xuất bản",
16 "feature.publishDebugInfo.published": "Nhật ký gỡ lỗi của bạn đã được xuất bản và hiện có sẵn tại",
17 "feature.publishDebugInfo.terms": "Điều khoản dịch vụ", 16 "feature.publishDebugInfo.terms": "Điều khoản dịch vụ",
18 "feature.publishDebugInfo.title": "Xuất bản thông tin gỡ lỗi", 17 "feature.publishDebugInfo.title": "Xuất bản thông tin gỡ lỗi",
19 "feature.quickSwitch.info": "Chọn một dịch vụ với TAB, ↑ và ↓. Mở một dịch vụ bằng ENTER.", 18 "feature.quickSwitch.info": "Chọn một dịch vụ với TAB, ↑ và ↓. Mở một dịch vụ bằng ENTER.",
@@ -223,13 +222,11 @@
223 "settings.app.headlineUpdates": "Cập nhật", 222 "settings.app.headlineUpdates": "Cập nhật",
224 "settings.app.hibernateInfo": "Theo mặc định, Ferdium sẽ giữ cho tất cả các dịch vụ của bạn luôn mở và được tải ở chế độ nền để chúng luôn sẵn sàng khi bạn muốn sử dụng. Service Hibernation sẽ dỡ bỏ các dịch vụ của bạn sau một khoảng thời gian cụ thể. Điều này rất hữu ích để tiết kiệm RAM hoặc giữ cho các dịch vụ không làm chậm máy tính của bạn.", 223 "settings.app.hibernateInfo": "Theo mặc định, Ferdium sẽ giữ cho tất cả các dịch vụ của bạn luôn mở và được tải ở chế độ nền để chúng luôn sẵn sàng khi bạn muốn sử dụng. Service Hibernation sẽ dỡ bỏ các dịch vụ của bạn sau một khoảng thời gian cụ thể. Điều này rất hữu ích để tiết kiệm RAM hoặc giữ cho các dịch vụ không làm chậm máy tính của bạn.",
225 "settings.app.inactivityLockInfo": "Vài phút không hoạt động, sau đó Ferdium sẽ tự động khóa. Sử dụng 0 để tắt", 224 "settings.app.inactivityLockInfo": "Vài phút không hoạt động, sau đó Ferdium sẽ tự động khóa. Sử dụng 0 để tắt",
226 "settings.app.lockInfo": "Khóa mật khẩu cho phép bạn bảo vệ tin nhắn của mình.\nSử dụng Khóa mật khẩu, bạn sẽ được nhắc nhập mật khẩu của mình mỗi khi khởi động Ferdium hoặc tự khóa Ferdium bằng biểu tượng ổ khóa ở góc dưới cùng bên trái hoặc phím tắt {lockShortcut}.",
227 "settings.app.lockedPassword": "Mật khẩu", 225 "settings.app.lockedPassword": "Mật khẩu",
228 "settings.app.lockedPasswordInfo": "Hãy chắc chắn rằng bạn đã đặt mật khẩu mà bạn sẽ nhớ.\nNếu bạn mất mật khẩu này, bạn sẽ phải cài đặt lại Ferdium.", 226 "settings.app.lockedPasswordInfo": "Hãy chắc chắn rằng bạn đã đặt mật khẩu mà bạn sẽ nhớ.\nNếu bạn mất mật khẩu này, bạn sẽ phải cài đặt lại Ferdium.",
229 "settings.app.restartRequired": "Các thay đổi yêu cầu khởi động lại", 227 "settings.app.restartRequired": "Các thay đổi yêu cầu khởi động lại",
230 "settings.app.scheduledDNDInfo": "Theo lịch trình Không làm phiền cho phép bạn xác định khoảng thời gian mà bạn không muốn nhận Thông báo từ Ferdium.", 228 "settings.app.scheduledDNDInfo": "Theo lịch trình Không làm phiền cho phép bạn xác định khoảng thời gian mà bạn không muốn nhận Thông báo từ Ferdium.",
231 "settings.app.scheduledDNDTimeInfo": "Thời gian ở định dạng 24 giờ. Thời gian kết thúc có thể trước thời gian bắt đầu (ví dụ: bắt đầu từ 17:00, kết thúc lúc 09:00) để bật chế độ Không làm phiền qua đêm.", 229 "settings.app.scheduledDNDTimeInfo": "Thời gian ở định dạng 24 giờ. Thời gian kết thúc có thể trước thời gian bắt đầu (ví dụ: bắt đầu từ 17:00, kết thúc lúc 09:00) để bật chế độ Không làm phiền qua đêm.",
232 "settings.app.spellCheckerLanguageInfo": "Ferdium sử dụng trình kiểm tra chính tả tích hợp trên máy Mac của bạn để kiểm tra lỗi chính tả. Nếu bạn muốn thay đổi ngôn ngữ mà trình kiểm tra chính tả kiểm tra, bạn có thể làm như vậy trong Tùy chọn hệ thống của máy Mac.",
233 "settings.app.subheadlineCache": "Bộ nhớ đệm", 230 "settings.app.subheadlineCache": "Bộ nhớ đệm",
234 "settings.app.subheadlineFerdiumProfile": "Hồ sơ Ferdium", 231 "settings.app.subheadlineFerdiumProfile": "Hồ sơ Ferdium",
235 "settings.app.todoServerInfo": "Máy chủ này sẽ được sử dụng cho tính năng \"Ferdium Todo\".", 232 "settings.app.todoServerInfo": "Máy chủ này sẽ được sử dụng cho tính năng \"Ferdium Todo\".",
diff --git a/src/i18n/locales/zh-HANS.json b/src/i18n/locales/zh-HANS.json
index ab76b9141..c2d2ffebc 100644
--- a/src/i18n/locales/zh-HANS.json
+++ b/src/i18n/locales/zh-HANS.json
@@ -16,7 +16,6 @@
16 "feature.publishDebugInfo.info": "发布您的调试信息有助于我们在 Ferdium 中找到问题和错误。 通过发布您的调试信息,您接受 Ferdium 调试器的隐私政策和服务条款", 16 "feature.publishDebugInfo.info": "发布您的调试信息有助于我们在 Ferdium 中找到问题和错误。 通过发布您的调试信息,您接受 Ferdium 调试器的隐私政策和服务条款",
17 "feature.publishDebugInfo.privacy": "隐私政策", 17 "feature.publishDebugInfo.privacy": "隐私政策",
18 "feature.publishDebugInfo.publish": "接受并发布", 18 "feature.publishDebugInfo.publish": "接受并发布",
19 "feature.publishDebugInfo.published": "您的调试日志已发布,现在可用于",
20 "feature.publishDebugInfo.terms": "服务条款", 19 "feature.publishDebugInfo.terms": "服务条款",
21 "feature.publishDebugInfo.title": "发布调试信息", 20 "feature.publishDebugInfo.title": "发布调试信息",
22 "feature.quickSwitch.info": "使用 TAB ,↑ 和 ↓ 选择服务。使用回车键(ENTER)打开服务", 21 "feature.quickSwitch.info": "使用 TAB ,↑ 和 ↓ 选择服务。使用回车键(ENTER)打开服务",
@@ -276,7 +275,6 @@
276 "settings.app.headlineUpdates": "更新", 275 "settings.app.headlineUpdates": "更新",
277 "settings.app.hibernateInfo": "默认情况下,Ferdium将保持您所有的服务在后台打开并加载,这样当您想要使用它们时他们就可以了。 服务休眠将在指定数量后卸载您的服务。这有助于保存内存或保持服务以减慢您的计算机速度。", 276 "settings.app.hibernateInfo": "默认情况下,Ferdium将保持您所有的服务在后台打开并加载,这样当您想要使用它们时他们就可以了。 服务休眠将在指定数量后卸载您的服务。这有助于保存内存或保持服务以减慢您的计算机速度。",
278 "settings.app.inactivityLockInfo": "停止活动的分钟,然后Ferdium将自动锁定。使用 0 禁用。", 277 "settings.app.inactivityLockInfo": "停止活动的分钟,然后Ferdium将自动锁定。使用 0 禁用。",
279 "settings.app.lockInfo": "密码锁可以使您的消息受到保护。\n\n使用密码锁,每当您启动Ferdium或使用锁定符号 {lockShortcut} 在左下角或快捷键中锁定Ferdium时,都会提示您输入密码。",
280 "settings.app.lockedPassword": "密码", 278 "settings.app.lockedPassword": "密码",
281 "settings.app.restartRequired": "重启后生效", 279 "settings.app.restartRequired": "重启后生效",
282 "settings.app.subheadlineCache": "缓存", 280 "settings.app.subheadlineCache": "缓存",
diff --git a/src/index.ts b/src/index.ts
index a2fcfb890..999d84348 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -572,6 +572,7 @@ ipcMain.on(
572 for (const key in headers) { 572 for (const key in headers) {
573 if (Object.prototype.hasOwnProperty.call(headers, key)) { 573 if (Object.prototype.hasOwnProperty.call(headers, key)) {
574 const value = headers[key]; 574 const value = headers[key];
575 // eslint-disable-next-line no-param-reassign
575 details.requestHeaders[key] = value; 576 details.requestHeaders[key] = value;
576 } 577 }
577 } 578 }
diff --git a/src/internal-server/app/Controllers/Http/ImageController.js b/src/internal-server/app/Controllers/Http/ImageController.js
index 3ce6fb22d..930eca693 100644
--- a/src/internal-server/app/Controllers/Http/ImageController.js
+++ b/src/internal-server/app/Controllers/Http/ImageController.js
@@ -20,6 +20,7 @@ class ImageController {
20 try { 20 try {
21 await fs.access(iconPath); 21 await fs.access(iconPath);
22 } catch (error) { 22 } catch (error) {
23 // eslint-disable-next-line no-console
23 console.log(error); 24 console.log(error);
24 // File not available. 25 // File not available.
25 return response.status(404).send({ 26 return response.status(404).send({
diff --git a/src/internal-server/resources/views/transfer.edge b/src/internal-server/resources/views/transfer.edge
index e793d1c30..f1d7b7332 100644
--- a/src/internal-server/resources/views/transfer.edge
+++ b/src/internal-server/resources/views/transfer.edge
@@ -4,7 +4,7 @@
4<h2>Import/Export data from another Ferdium server</h2> 4<h2>Import/Export data from another Ferdium server</h2>
5@if(success === true) 5@if(success === true)
6 <div class="alert" style="background-color:#28C76F;"> 6 <div class="alert" style="background-color:#28C76F;">
7 Sucessfully imported your account data 7 Successfully imported your account data
8 </div> 8 </div>
9@endif 9@endif
10 10
diff --git a/src/internal-server/start/migrate.js b/src/internal-server/start/migrate.js
index 67533ed9e..bbe12f5ba 100644
--- a/src/internal-server/start/migrate.js
+++ b/src/internal-server/start/migrate.js
@@ -8,6 +8,7 @@ const Database = use('Database');
8const User = use('App/Models/User'); 8const User = use('App/Models/User');
9 9
10const migrateLog = text => { 10const migrateLog = text => {
11 // eslint-disable-next-line no-console
11 console.log('\u001B[36m%s\u001B[0m', 'Ferdium Migration:', '\u001B[0m', text); 12 console.log('\u001B[36m%s\u001B[0m', 'Ferdium Migration:', '\u001B[0m', text);
12}; 13};
13 14
diff --git a/src/internal-server/start/routes.js b/src/internal-server/start/routes.js
index 2dbd0713e..b8d463945 100644
--- a/src/internal-server/start/routes.js
+++ b/src/internal-server/start/routes.js
@@ -64,7 +64,7 @@ Route.get('health', ({ response }) =>
64 64
65// API is grouped under '/v1/' route 65// API is grouped under '/v1/' route
66Route.group(() => { 66Route.group(() => {
67 // User authentification 67 // User authentication
68 Route.post('auth/signup', 'UserController.signup'); 68 Route.post('auth/signup', 'UserController.signup');
69 Route.post('auth/login', 'UserController.login'); 69 Route.post('auth/login', 'UserController.login');
70 70
diff --git a/src/internal-server/test.ts b/src/internal-server/test.ts
index c163656fb..991218942 100644
--- a/src/internal-server/test.ts
+++ b/src/internal-server/test.ts
@@ -6,5 +6,5 @@ const dummyUserFolder = join(__dirname, 'user_data');
6 6
7ensureDirSync(dummyUserFolder); 7ensureDirSync(dummyUserFolder);
8 8
9// eslint-disable-next-line unicorn/prefer-top-level-await 9// eslint-disable-next-line unicorn/prefer-top-level-await, no-console
10server(dummyUserFolder, 46_568, 'test').catch(console.log); 10server(dummyUserFolder, 46_568, 'test').catch(console.log);
diff --git a/src/jsUtils.ts b/src/jsUtils.ts
index 31d6a2121..0befb8d56 100644
--- a/src/jsUtils.ts
+++ b/src/jsUtils.ts
@@ -9,7 +9,11 @@ export const convertToJSON = (data?: string | any | null) =>
9export const cleanseJSObject = (data?: any | null) => 9export const cleanseJSObject = (data?: any | null) =>
10 JSON.parse(JSON.stringify(data)); 10 JSON.parse(JSON.stringify(data));
11 11
12export const isEscKeyPress = (keyCode: number) => keyCode === 27; 12export const isArrowUpKeyPress = (key: string) => key === 'ArrowUp';
13export const isArrowDownKeyPress = (key: string) => key === 'ArrowDown';
14export const isEnterKeyPress = (key: string) => key === 'Enter';
15export const isEscapeKeyPress = (key: string) => key === 'Escape';
16export const isShiftKeyPress = (key: string) => key === 'Shift';
13 17
14export const safeParseInt = (text?: string | number | null) => { 18export const safeParseInt = (text?: string | number | null) => {
15 if (text === undefined || text === null) { 19 if (text === undefined || text === null) {
diff --git a/src/lib/Menu.ts b/src/lib/Menu.ts
index f7ed3b310..bb8eead3a 100644
--- a/src/lib/Menu.ts
+++ b/src/lib/Menu.ts
@@ -7,6 +7,7 @@ import {
7 systemPreferences, 7 systemPreferences,
8 webContents, 8 webContents,
9} from '@electron/remote'; 9} from '@electron/remote';
10import { ipcRenderer } from 'electron';
10import { type MenuItemConstructorOptions, clipboard } from 'electron'; 11import { type MenuItemConstructorOptions, clipboard } from 'electron';
11import { fromJS } from 'immutable'; 12import { fromJS } from 'immutable';
12import { action, autorun, makeObservable, observable } from 'mobx'; 13import { action, autorun, makeObservable, observable } from 'mobx';
@@ -163,6 +164,10 @@ const menuItems = defineMessages({
163 id: 'menu.view.toggleServiceDevTools', 164 id: 'menu.view.toggleServiceDevTools',
164 defaultMessage: 'Toggle Service Developer Tools', 165 defaultMessage: 'Toggle Service Developer Tools',
165 }, 166 },
167 openProcessManager: {
168 id: 'menu.view.openProcessManager',
169 defaultMessage: 'Open Process Manager',
170 },
166 reloadService: { 171 reloadService: {
167 id: 'menu.view.reloadService', 172 id: 'menu.view.reloadService',
168 defaultMessage: 'Reload Service', 173 defaultMessage: 'Reload Service',
@@ -764,6 +769,13 @@ class FranzMenu implements StoresProps {
764 type: 'separator', 769 type: 'separator',
765 }, 770 },
766 { 771 {
772 label: intl.formatMessage(menuItems.openProcessManager),
773 accelerator: `${shiftKey()}+Escape`,
774 click: () => {
775 ipcRenderer.send('openProcessManager');
776 },
777 },
778 {
767 label: intl.formatMessage(menuItems.toggleDevTools), 779 label: intl.formatMessage(menuItems.toggleDevTools),
768 accelerator: `${cmdOrCtrlShortcutKey()}+${altKey()}+I`, 780 accelerator: `${cmdOrCtrlShortcutKey()}+${altKey()}+I`,
769 enabled: webContents.fromId(1) !== undefined, 781 enabled: webContents.fromId(1) !== undefined,
@@ -1186,20 +1198,22 @@ class FranzMenu implements StoresProps {
1186 }); 1198 });
1187 } 1199 }
1188 1200
1189 menu.push( 1201 if (!this.stores.settings.app.hideAllServicesWorkspace) {
1190 { 1202 menu.push(
1191 type: 'separator', 1203 {
1192 }, 1204 type: 'separator',
1193 {
1194 label: intl.formatMessage(menuItems.defaultWorkspace),
1195 accelerator: `${cmdOrCtrlShortcutKey()}+${altKey()}+0`,
1196 type: 'radio',
1197 checked: !activeWorkspace,
1198 click: () => {
1199 workspaceActions.deactivate();
1200 }, 1205 },
1201 }, 1206 {
1202 ); 1207 label: intl.formatMessage(menuItems.defaultWorkspace),
1208 accelerator: `${cmdOrCtrlShortcutKey()}+${altKey()}+0`,
1209 type: 'radio',
1210 checked: !activeWorkspace,
1211 click: () => {
1212 workspaceActions.deactivate();
1213 },
1214 },
1215 );
1216 }
1203 1217
1204 // Workspace items 1218 // Workspace items
1205 for (const [i, workspace] of workspaces.entries()) { 1219 for (const [i, workspace] of workspaces.entries()) {
diff --git a/src/models/Recipe.ts b/src/models/Recipe.ts
index e8f11df5f..11eb1884f 100644
--- a/src/models/Recipe.ts
+++ b/src/models/Recipe.ts
@@ -50,14 +50,14 @@ export interface IRecipe {
50 partition: string; 50 partition: string;
51 local: boolean; 51 local: boolean;
52 52
53 // eslint-disable-next-line @typescript-eslint/ban-types 53 readonly overrideUserAgent?: () => string;
54 readonly overrideUserAgent?: null | Function; 54
55 // eslint-disable-next-line @typescript-eslint/ban-types 55 readonly buildUrl?: (url: string) => string;
56 readonly buildUrl?: null | Function; 56
57 // eslint-disable-next-line @typescript-eslint/ban-types 57 readonly modifyRequestHeaders?: () => void;
58 readonly modifyRequestHeaders?: null | Function; 58
59 // eslint-disable-next-line @typescript-eslint/ban-types 59 readonly knownCertificateHosts?: () => void;
60 readonly knownCertificateHosts?: null | Function; 60
61 readonly events?: null | ((key: string) => string); 61 readonly events?: null | ((key: string) => string);
62 62
63 // TODO: [TS DEBT] Need to check if below properties are needed and where is inherited / implemented from 63 // TODO: [TS DEBT] Need to check if below properties are needed and where is inherited / implemented from
diff --git a/src/routes.tsx b/src/routes.tsx
index d2a88950f..3615c9f99 100644
--- a/src/routes.tsx
+++ b/src/routes.tsx
@@ -114,6 +114,7 @@ class FerdiumRoutes extends Component<IProps> {
114 > 114 >
115 <Route 115 <Route
116 path="/releasenotes" 116 path="/releasenotes"
117 // @ts-expect-error Fix me
117 element={<ReleaseNotesScreen {...this.props} />} 118 element={<ReleaseNotesScreen {...this.props} />}
118 /> 119 />
119 </Route> 120 </Route>
@@ -184,10 +185,12 @@ class FerdiumRoutes extends Component<IProps> {
184 /> 185 />
185 <Route 186 <Route
186 path="/settings/support" 187 path="/settings/support"
188 // @ts-expect-error Fix me
187 element={<SupportFerdiumScreen {...this.props} />} 189 element={<SupportFerdiumScreen {...this.props} />}
188 /> 190 />
189 <Route 191 <Route
190 path="/settings/releasenotes" 192 path="/settings/releasenotes"
193 // @ts-expect-error Fix me
191 element={<ReleaseNotesScreen {...this.props} />} 194 element={<ReleaseNotesScreen {...this.props} />}
192 /> 195 />
193 </Route> 196 </Route>
diff --git a/src/stores/AppStore.ts b/src/stores/AppStore.ts
index b0a925411..51058c8eb 100644
--- a/src/stores/AppStore.ts
+++ b/src/stores/AppStore.ts
@@ -571,7 +571,7 @@ export default class AppStore extends TypedStore {
571 debug(`Removed download ${id}`); 571 debug(`Removed download ${id}`);
572 if (id === null) { 572 if (id === null) {
573 const indexesToRemove: number[] = []; 573 const indexesToRemove: number[] = [];
574 this.downloads.map(item => { 574 this.downloads.forEach(item => {
575 if (!item.state) return; 575 if (!item.state) return;
576 if (item.state === 'completed' || item.state === 'cancelled') { 576 if (item.state === 'completed' || item.state === 'cancelled') {
577 indexesToRemove.push(this.downloads.indexOf(item)); 577 indexesToRemove.push(this.downloads.indexOf(item));
diff --git a/src/stores/ServicesStore.ts b/src/stores/ServicesStore.ts
index 8105aa084..6c7a55d6b 100644
--- a/src/stores/ServicesStore.ts
+++ b/src/stores/ServicesStore.ts
@@ -332,6 +332,7 @@ export default class ServicesStore extends TypedStore {
332 .slice() 332 .slice()
333 .sort((a, b) => a.order - b.order) 333 .sort((a, b) => a.order - b.order)
334 .map((s, index) => { 334 .map((s, index) => {
335 // eslint-disable-next-line no-param-reassign
335 s.index = index; 336 s.index = index;
336 return s; 337 return s;
337 }), 338 }),
@@ -462,6 +463,7 @@ export default class ServicesStore extends TypedStore {
462 } 463 }
463 464
464 // set default values for serviceData 465 // set default values for serviceData
466 // eslint-disable-next-line no-param-reassign
465 serviceData = { 467 serviceData = {
466 isEnabled: DEFAULT_SERVICE_SETTINGS.isEnabled, 468 isEnabled: DEFAULT_SERVICE_SETTINGS.isEnabled,
467 isHibernationEnabled: DEFAULT_SERVICE_SETTINGS.isHibernationEnabled, 469 isHibernationEnabled: DEFAULT_SERVICE_SETTINGS.isHibernationEnabled,
@@ -649,6 +651,7 @@ export default class ServicesStore extends TypedStore {
649 } 651 }
650 652
651 @action _setIsActive(service: Service, state: boolean): void { 653 @action _setIsActive(service: Service, state: boolean): void {
654 // eslint-disable-next-line no-param-reassign
652 service.isActive = state; 655 service.isActive = state;
653 } 656 }
654 657
@@ -742,7 +745,9 @@ export default class ServicesStore extends TypedStore {
742 } 745 }
743 746
744 @action _detachService({ service }) { 747 @action _detachService({ service }) {
748 // eslint-disable-next-line no-param-reassign
745 service.webview = null; 749 service.webview = null;
750 // eslint-disable-next-line no-param-reassign
746 service.isAttached = false; 751 service.isAttached = false;
747 } 752 }
748 753
@@ -1023,6 +1028,7 @@ export default class ServicesStore extends TypedStore {
1023 } 1028 }
1024 1029
1025 if (!service.webview) return; 1030 if (!service.webview) return;
1031 // eslint-disable-next-line consistent-return
1026 return service.webview.loadURL(service.url); 1032 return service.webview.loadURL(service.url);
1027 } 1033 }
1028 1034
@@ -1226,7 +1232,9 @@ export default class ServicesStore extends TypedStore {
1226 1232
1227 // eslint-disable-next-line unicorn/consistent-function-scoping 1233 // eslint-disable-next-line unicorn/consistent-function-scoping
1228 const resetTimer = (service: Service) => { 1234 const resetTimer = (service: Service) => {
1235 // eslint-disable-next-line no-param-reassign
1229 service.lastPollAnswer = Date.now(); 1236 service.lastPollAnswer = Date.now();
1237 // eslint-disable-next-line no-param-reassign
1230 service.lastPoll = Date.now(); 1238 service.lastPoll = Date.now();
1231 }; 1239 };
1232 1240
@@ -1375,6 +1383,7 @@ export default class ServicesStore extends TypedStore {
1375 delete serviceData.team; 1383 delete serviceData.team;
1376 } 1384 }
1377 1385
1386 // eslint-disable-next-line consistent-return
1378 return serviceData; 1387 return serviceData;
1379 } 1388 }
1380 1389
diff --git a/src/stores/SettingsStore.ts b/src/stores/SettingsStore.ts
index 72d6331cb..29f173f91 100644
--- a/src/stores/SettingsStore.ts
+++ b/src/stores/SettingsStore.ts
@@ -183,8 +183,10 @@ export default class SettingsStore extends TypedStore {
183 } 183 }
184 } 184 }
185 185
186 // eslint-disable-next-line @typescript-eslint/ban-types 186 _ensureMigrationAndMarkDone(
187 _ensureMigrationAndMarkDone(migrationName: string, callback: Function): void { 187 migrationName: string,
188 callback: () => void,
189 ): void {
188 if (!this.all.migration[migrationName]) { 190 if (!this.all.migration[migrationName]) {
189 callback(); 191 callback();
190 192
diff --git a/src/stores/lib/Request.ts b/src/stores/lib/Request.ts
index e7739bba1..566fa5018 100644
--- a/src/stores/lib/Request.ts
+++ b/src/stores/lib/Request.ts
@@ -4,7 +4,7 @@ import { action, computed, makeObservable, observable } from 'mobx';
4type Hook = (request: Request) => void; 4type Hook = (request: Request) => void;
5 5
6export default class Request { 6export default class Request {
7 static _hooks: Hook[] = []; 7 static readonly _hooks: Hook[] = [];
8 8
9 static registerHook(hook: Hook) { 9 static registerHook(hook: Hook) {
10 Request._hooks.push(hook); 10 Request._hooks.push(hook);
diff --git a/src/styles/settings.scss b/src/styles/settings.scss
index 50accd8d7..1b79fd5c3 100644
--- a/src/styles/settings.scss
+++ b/src/styles/settings.scss
@@ -74,6 +74,7 @@
74 74
75 .settings__help { 75 .settings__help {
76 color: $dark-theme-gray-lightest; 76 color: $dark-theme-gray-lightest;
77 margin-top: 16px;
77 } 78 }
78 79
79 .settings__controls { 80 .settings__controls {
diff --git a/src/themes/default/index.ts b/src/themes/default/index.ts
index 8df7ff06e..458d4999d 100644
--- a/src/themes/default/index.ts
+++ b/src/themes/default/index.ts
@@ -7,6 +7,7 @@ import * as legacyStyles from '../legacy';
7 7
8export default (brandPrimary: string) => { 8export default (brandPrimary: string) => {
9 if (!brandPrimary) { 9 if (!brandPrimary) {
10 // eslint-disable-next-line no-param-reassign
10 brandPrimary = '#7266F0'; 11 brandPrimary = '#7266F0';
11 } 12 }
12 const brandSuccess = '#5cb85c'; 13 const brandSuccess = '#5cb85c';
diff --git a/src/webview/contextMenuBuilder.ts b/src/webview/contextMenuBuilder.ts
index 155e533e9..0a8b9c57b 100644
--- a/src/webview/contextMenuBuilder.ts
+++ b/src/webview/contextMenuBuilder.ts
@@ -2,7 +2,7 @@
2 * Context Menu builder. 2 * Context Menu builder.
3 * 3 *
4 * Based on "electron-spellchecker"'s ContextMenuBuilder but customized for Ferdium 4 * Based on "electron-spellchecker"'s ContextMenuBuilder but customized for Ferdium
5 * and for usage with Electron's build-in spellchecker 5 * and for usage with Electron's built-in spellchecker
6 * 6 *
7 * Source: https://github.com/electron-userland/electron-spellchecker/blob/master/src/context-menu-builder.js 7 * Source: https://github.com/electron-userland/electron-spellchecker/blob/master/src/context-menu-builder.js
8 */ 8 */
@@ -258,7 +258,17 @@ export class ContextMenuBuilder {
258 return this.buildMenuForVideo(info); 258 return this.buildMenuForVideo(info);
259 } 259 }
260 260
261 if (info.isEditable || info.inputFieldType !== 'none') { 261 if (
262 info.isEditable ||
263 info.formControlType === 'input-email' ||
264 info.formControlType === 'input-file' ||
265 info.formControlType === 'input-number' ||
266 info.formControlType === 'input-search' ||
267 info.formControlType === 'input-telephone' ||
268 info.formControlType === 'input-text' ||
269 info.formControlType === 'input-url' ||
270 info.formControlType === 'text-area'
271 ) {
262 return this.buildMenuForTextInput(info); 272 return this.buildMenuForTextInput(info);
263 } 273 }
264 274
@@ -288,11 +298,9 @@ export class ContextMenuBuilder {
288 this.addPaste(menu, menuInfo); 298 this.addPaste(menu, menuInfo);
289 this.addPastePlain(menu, menuInfo); 299 this.addPastePlain(menu, menuInfo);
290 this.addInspectElement(menu, menuInfo); 300 this.addInspectElement(menu, menuInfo);
291 // @ts-expect-error Expected 1 arguments, but got 2. 301 this.processMenu(menu);
292 this.processMenu(menu, menuInfo);
293 302
294 // @ts-expect-error Expected 2 arguments, but got 1. 303 this.copyPageUrl(menu, menuInfo);
295 this.copyPageUrl(menu);
296 this.goToHomePage(menu, menuInfo); 304 this.goToHomePage(menu, menuInfo);
297 this.openInBrowser(menu, menuInfo); 305 this.openInBrowser(menu, menuInfo);
298 306
@@ -349,14 +357,12 @@ export class ContextMenuBuilder {
349 } 357 }
350 358
351 this.addInspectElement(menu, menuInfo); 359 this.addInspectElement(menu, menuInfo);
352 // @ts-expect-error Expected 1 arguments, but got 2. 360 this.processMenu(menu);
353 this.processMenu(menu, menuInfo);
354 361
355 this.addSeparator(menu); 362 this.addSeparator(menu);
356 this.goBack(menu); 363 this.goBack(menu);
357 this.goForward(menu); 364 this.goForward(menu);
358 // @ts-expect-error Expected 2 arguments, but got 1. 365 this.copyPageUrl(menu, menuInfo);
359 this.copyPageUrl(menu);
360 this.goToHomePage(menu, menuInfo); 366 this.goToHomePage(menu, menuInfo);
361 this.openInBrowser(menu, menuInfo); 367 this.openInBrowser(menu, menuInfo);
362 368
diff --git a/src/webview/lib/RecipeWebview.ts b/src/webview/lib/RecipeWebview.ts
index 3b6b9cc88..2e967a791 100644
--- a/src/webview/lib/RecipeWebview.ts
+++ b/src/webview/lib/RecipeWebview.ts
@@ -128,7 +128,6 @@ class RecipeWebview {
128 * be an absolute path to the file 128 * be an absolute path to the file
129 */ 129 */
130 injectCSS(...files) { 130 injectCSS(...files) {
131 // eslint-disable-next-line unicorn/no-array-for-each
132 files.forEach(file => { 131 files.forEach(file => {
133 if (pathExistsSync(file)) { 132 if (pathExistsSync(file)) {
134 const styles = document.createElement('style'); 133 const styles = document.createElement('style');
diff --git a/test/helpers/array-helpers.test.ts b/test/helpers/array-helpers.test.ts
index 662d6b828..135123b6a 100644
--- a/test/helpers/array-helpers.test.ts
+++ b/test/helpers/array-helpers.test.ts
@@ -7,7 +7,8 @@ describe('array_helpers', () => {
7 7
8 // Expect the arrays to be exactly the same 8 // Expect the arrays to be exactly the same
9 // when both are sorted alphabetically 9 // when both are sorted alphabetically
10 // eslint-disable-next-line sonar/no-alphabetical-sort 10 expect(shuffledArray.toSorted((a, b) => a.localeCompare(b))).toEqual(
11 expect(shuffledArray.sort()).toEqual(originalArray.sort()); 11 originalArray.toSorted((a, b) => a.localeCompare(b)),
12 );
12 }); 13 });
13}); 14});
diff --git a/test/jsUtils.test.ts b/test/jsUtils.test.ts
index 0662c3c48..508f5dd9f 100644
--- a/test/jsUtils.test.ts
+++ b/test/jsUtils.test.ts
@@ -96,14 +96,62 @@ describe('jsUtils', () => {
96 }); 96 });
97 }); 97 });
98 98
99 describe('isEscKeyPress', () => { 99 describe('isArrowUpKeyPress', () => {
100 it('returns true if the key number is 27', () => { 100 it('returns true if the key is "ArrowUp"', () => {
101 const result = jsUtils.isEscKeyPress(27); 101 const result = jsUtils.isArrowUpKeyPress('ArrowUp');
102 expect(result).toEqual(true); 102 expect(result).toEqual(true);
103 }); 103 });
104 104
105 it('returns false if the key number is 27', () => { 105 it('returns false if the key is some other key', () => {
106 const result = jsUtils.isEscKeyPress(28); 106 const result = jsUtils.isArrowUpKeyPress('Backspace');
107 expect(result).toEqual(false);
108 });
109 });
110
111 describe('isArrowDownKeyPress', () => {
112 it('returns true if the key is "ArrowDown"', () => {
113 const result = jsUtils.isArrowDownKeyPress('ArrowDown');
114 expect(result).toEqual(true);
115 });
116
117 it('returns false if the key is some other key', () => {
118 const result = jsUtils.isArrowDownKeyPress('Backspace');
119 expect(result).toEqual(false);
120 });
121 });
122
123 describe('isEnterKeyPress', () => {
124 it('returns true if the key is "Enter"', () => {
125 const result = jsUtils.isEnterKeyPress('Enter');
126 expect(result).toEqual(true);
127 });
128
129 it('returns false if the key is some other key', () => {
130 const result = jsUtils.isEnterKeyPress('Backspace');
131 expect(result).toEqual(false);
132 });
133 });
134
135 describe('isEscapeKeyPress', () => {
136 it('returns true if the key is "Escape"', () => {
137 const result = jsUtils.isEscapeKeyPress('Escape');
138 expect(result).toEqual(true);
139 });
140
141 it('returns false if the key is some other key', () => {
142 const result = jsUtils.isEscapeKeyPress('Backspace');
143 expect(result).toEqual(false);
144 });
145 });
146
147 describe('isShiftKeyPress', () => {
148 it('returns true if the key is "Shift"', () => {
149 const result = jsUtils.isShiftKeyPress('Shift');
150 expect(result).toEqual(true);
151 });
152
153 it('returns false if the key is some other key', () => {
154 const result = jsUtils.isShiftKeyPress('Backspace');
107 expect(result).toEqual(false); 155 expect(result).toEqual(false);
108 }); 156 });
109 }); 157 });