aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Dominik Guzei <dominik.guzei@gmail.com>2019-04-12 15:51:57 +0200
committerLibravatar Dominik Guzei <dominik.guzei@gmail.com>2019-04-12 15:52:55 +0200
commit76bf7b840ea7d607a21b0294d10be01b26ad0607 (patch)
tree05b15350fa8cf00972ae8caab812868b9fa9dfe0
parentalign announcement and spotlight (diff)
downloadferdium-app-76bf7b840ea7d607a21b0294d10be01b26ad0607.tar.gz
ferdium-app-76bf7b840ea7d607a21b0294d10be01b26ad0607.tar.zst
ferdium-app-76bf7b840ea7d607a21b0294d10be01b26ad0607.zip
merge-in latest develop
-rw-r--r--package-lock.json108
-rw-r--r--package.json4
-rw-r--r--packages/theme/src/themes/default/index.ts1
-rw-r--r--src/components/settings/settings/EditSettingsForm.js8
-rw-r--r--src/features/announcements/store.js14
-rw-r--r--src/features/utils/ActionBinding.js29
-rw-r--r--src/features/utils/FeatureStore.js17
-rw-r--r--src/features/workspaces/store.js20
-rw-r--r--src/i18n/locales/defaultMessages.json4473
-rw-r--r--src/i18n/locales/en-US.json3
-rw-r--r--src/i18n/messages/src/components/auth/Import.json54
-rw-r--r--src/i18n/messages/src/components/auth/Invite.json93
-rw-r--r--src/i18n/messages/src/components/auth/Login.json119
-rw-r--r--src/i18n/messages/src/components/auth/Password.json93
-rw-r--r--src/i18n/messages/src/components/auth/Pricing.json54
-rw-r--r--src/i18n/messages/src/components/auth/Signup.json158
-rw-r--r--src/i18n/messages/src/components/auth/Welcome.json28
-rw-r--r--src/i18n/messages/src/components/layout/AppLayout.json80
-rw-r--r--src/i18n/messages/src/components/layout/Sidebar.json80
-rw-r--r--src/i18n/messages/src/components/services/content/ErrorHandlers/WebviewErrorHandler.json67
-rw-r--r--src/i18n/messages/src/components/services/content/ServiceDisabled.json28
-rw-r--r--src/i18n/messages/src/components/services/content/Services.json28
-rw-r--r--src/i18n/messages/src/components/services/content/WebviewCrashHandler.json54
-rw-r--r--src/i18n/messages/src/components/services/tabs/TabItem.json119
-rw-r--r--src/i18n/messages/src/components/settings/account/AccountDashboard.json197
-rw-r--r--src/i18n/messages/src/components/settings/navigation/SettingsNavigation.json93
-rw-r--r--src/i18n/messages/src/components/settings/recipes/RecipesDashboard.json106
-rw-r--r--src/i18n/messages/src/components/settings/services/EditServiceForm.json288
-rw-r--r--src/i18n/messages/src/components/settings/services/ServiceError.json54
-rw-r--r--src/i18n/messages/src/components/settings/services/ServiceItem.json41
-rw-r--r--src/i18n/messages/src/components/settings/services/ServicesDashboard.json119
-rw-r--r--src/i18n/messages/src/components/settings/settings/EditSettingsForm.json223
-rw-r--r--src/i18n/messages/src/components/settings/user/EditUserForm.json80
-rw-r--r--src/i18n/messages/src/components/subscription/SubscriptionForm.json171
-rw-r--r--src/i18n/messages/src/components/subscription/SubscriptionPopup.json28
-rw-r--r--src/i18n/messages/src/components/ui/PremiumFeatureContainer/index.json15
-rw-r--r--src/i18n/messages/src/components/ui/WebviewLoader/index.json15
-rw-r--r--src/i18n/messages/src/components/util/ErrorBoundary/index.json28
-rw-r--r--src/i18n/messages/src/containers/settings/EditServiceScreen.json197
-rw-r--r--src/i18n/messages/src/containers/settings/EditSettingsScreen.json158
-rw-r--r--src/i18n/messages/src/containers/settings/EditUserScreen.json119
-rw-r--r--src/i18n/messages/src/features/announcements/Component.json15
-rw-r--r--src/i18n/messages/src/features/announcements/components/AnnouncementScreen.json15
-rw-r--r--src/i18n/messages/src/features/delayApp/Component.json41
-rw-r--r--src/i18n/messages/src/features/shareFranz/Component.json93
-rw-r--r--src/i18n/messages/src/features/workspaces/components/CreateWorkspaceForm.json28
-rw-r--r--src/i18n/messages/src/features/workspaces/components/EditWorkspaceForm.json67
-rw-r--r--src/i18n/messages/src/features/workspaces/components/WorkspaceDrawer.json106
-rw-r--r--src/i18n/messages/src/features/workspaces/components/WorkspaceDrawerItem.json28
-rw-r--r--src/i18n/messages/src/features/workspaces/components/WorkspaceSwitchingIndicator.json15
-rw-r--r--src/i18n/messages/src/features/workspaces/components/WorkspacesDashboard.json106
-rw-r--r--src/i18n/messages/src/helpers/validation-helpers.json67
-rw-r--r--src/i18n/messages/src/i18n/globalMessages.json80
-rw-r--r--src/i18n/messages/src/lib/Menu.json691
-rw-r--r--src/index.js14
-rw-r--r--src/stores/UserStore.js1
-rw-r--r--src/stores/lib/Reaction.js9
57 files changed, 142 insertions, 8898 deletions
diff --git a/package-lock.json b/package-lock.json
index 33f7d69f2..70f3b2484 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -6153,9 +6153,9 @@
6153 } 6153 }
6154 }, 6154 },
6155 "ecdsa-sig-formatter": { 6155 "ecdsa-sig-formatter": {
6156 "version": "1.0.10", 6156 "version": "1.0.11",
6157 "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.10.tgz", 6157 "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz",
6158 "integrity": "sha1-HFlQAPBKiJffuFAAiSoPTDOvhsM=", 6158 "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==",
6159 "requires": { 6159 "requires": {
6160 "safe-buffer": "^5.0.1" 6160 "safe-buffer": "^5.0.1"
6161 } 6161 }
@@ -6173,9 +6173,9 @@
6173 "dev": true 6173 "dev": true
6174 }, 6174 },
6175 "electron": { 6175 "electron": {
6176 "version": "4.0.8", 6176 "version": "4.1.4",
6177 "resolved": "https://registry.npmjs.org/electron/-/electron-4.0.8.tgz", 6177 "resolved": "https://registry.npmjs.org/electron/-/electron-4.1.4.tgz",
6178 "integrity": "sha512-FOBJIHkuv8wc15N+ZyqwDzPavYVu5CHMBEf14jHDWv7QW2vkEIpJjVK+PIT31kfZfvjsIP0j2wvA/FBsiqB7pw==", 6178 "integrity": "sha512-MelOjntJvd33izEjR6H4N/Uii7y535z/b2BuYXJGLNSHL6o1IlyhUQmfiT87kWABayERgeuYERgvsyf956OOFw==",
6179 "dev": true, 6179 "dev": true,
6180 "requires": { 6180 "requires": {
6181 "@types/node": "^10.12.18", 6181 "@types/node": "^10.12.18",
@@ -6184,9 +6184,9 @@
6184 }, 6184 },
6185 "dependencies": { 6185 "dependencies": {
6186 "@types/node": { 6186 "@types/node": {
6187 "version": "10.12.30", 6187 "version": "10.14.4",
6188 "resolved": "https://registry.npmjs.org/@types/node/-/node-10.12.30.tgz", 6188 "resolved": "https://registry.npmjs.org/@types/node/-/node-10.14.4.tgz",
6189 "integrity": "sha512-nsqTN6zUcm9xtdJiM9OvOJ5EF0kOI8f1Zuug27O/rgtxCRJHGqncSWfCMZUP852dCKPsDsYXGvBhxfRjDBkF5Q==", 6189 "integrity": "sha512-DT25xX/YgyPKiHFOpNuANIQIVvYEwCWXgK2jYYwqgaMrYE6+tq+DtmMwlD3drl6DJbUwtlIDnn0d7tIn/EbXBg==",
6190 "dev": true 6190 "dev": true
6191 } 6191 }
6192 } 6192 }
@@ -10191,7 +10191,8 @@
10191 "hoek": { 10191 "hoek": {
10192 "version": "2.16.3", 10192 "version": "2.16.3",
10193 "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", 10193 "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
10194 "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" 10194 "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=",
10195 "dev": true
10195 }, 10196 },
10196 "hoist-non-react-statics": { 10197 "hoist-non-react-statics": {
10197 "version": "3.3.0", 10198 "version": "3.3.0",
@@ -11186,11 +11187,6 @@
11186 "buffer-alloc": "^1.2.0" 11187 "buffer-alloc": "^1.2.0"
11187 } 11188 }
11188 }, 11189 },
11189 "isemail": {
11190 "version": "1.2.0",
11191 "resolved": "https://registry.npmjs.org/isemail/-/isemail-1.2.0.tgz",
11192 "integrity": "sha1-vgPfjMPineTSxd9lASY/H6RZXpo="
11193 },
11194 "isexe": { 11190 "isexe": {
11195 "version": "2.0.0", 11191 "version": "2.0.0",
11196 "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 11192 "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
@@ -11217,17 +11213,6 @@
11217 "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", 11213 "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
11218 "dev": true 11214 "dev": true
11219 }, 11215 },
11220 "joi": {
11221 "version": "6.10.1",
11222 "resolved": "https://registry.npmjs.org/joi/-/joi-6.10.1.tgz",
11223 "integrity": "sha1-TVDDGAeRIgAP5fFq8f+OGRe3fgY=",
11224 "requires": {
11225 "hoek": "2.x.x",
11226 "isemail": "1.x.x",
11227 "moment": "2.x.x",
11228 "topo": "1.x.x"
11229 }
11230 },
11231 "js-base64": { 11216 "js-base64": {
11232 "version": "2.5.1", 11217 "version": "2.5.1",
11233 "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz", 11218 "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz",
@@ -11341,15 +11326,20 @@
11341 "dev": true 11326 "dev": true
11342 }, 11327 },
11343 "jsonwebtoken": { 11328 "jsonwebtoken": {
11344 "version": "7.4.3", 11329 "version": "8.5.1",
11345 "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-7.4.3.tgz", 11330 "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz",
11346 "integrity": "sha1-d/UCHeBYtgWheD+hKD6ZgS5kVjg=", 11331 "integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==",
11347 "requires": { 11332 "requires": {
11348 "joi": "^6.10.1", 11333 "jws": "^3.2.2",
11349 "jws": "^3.1.4", 11334 "lodash.includes": "^4.3.0",
11335 "lodash.isboolean": "^3.0.3",
11336 "lodash.isinteger": "^4.0.4",
11337 "lodash.isnumber": "^3.0.3",
11338 "lodash.isplainobject": "^4.0.6",
11339 "lodash.isstring": "^4.0.1",
11350 "lodash.once": "^4.0.0", 11340 "lodash.once": "^4.0.0",
11351 "ms": "^2.0.0", 11341 "ms": "^2.1.1",
11352 "xtend": "^4.0.1" 11342 "semver": "^5.6.0"
11353 } 11343 }
11354 }, 11344 },
11355 "jsprim": { 11345 "jsprim": {
@@ -11475,21 +11465,21 @@
11475 "dev": true 11465 "dev": true
11476 }, 11466 },
11477 "jwa": { 11467 "jwa": {
11478 "version": "1.2.0", 11468 "version": "1.4.1",
11479 "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.2.0.tgz", 11469 "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz",
11480 "integrity": "sha512-Grku9ZST5NNQ3hqNUodSkDfEBqAmGA1R8yiyPHOnLzEKI0GaCQC/XhFmsheXYuXzFQJdILbh+lYBiliqG5R/Vg==", 11470 "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==",
11481 "requires": { 11471 "requires": {
11482 "buffer-equal-constant-time": "1.0.1", 11472 "buffer-equal-constant-time": "1.0.1",
11483 "ecdsa-sig-formatter": "1.0.10", 11473 "ecdsa-sig-formatter": "1.0.11",
11484 "safe-buffer": "^5.0.1" 11474 "safe-buffer": "^5.0.1"
11485 } 11475 }
11486 }, 11476 },
11487 "jws": { 11477 "jws": {
11488 "version": "3.2.1", 11478 "version": "3.2.2",
11489 "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.1.tgz", 11479 "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz",
11490 "integrity": "sha512-bGA2omSrFUkd72dhh05bIAN832znP4wOU3lfuXtRBuGTbsmNmDXMQg28f0Vsxaxgk4myF5YkKQpz6qeRpMgX9g==", 11480 "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==",
11491 "requires": { 11481 "requires": {
11492 "jwa": "^1.2.0", 11482 "jwa": "^1.4.1",
11493 "safe-buffer": "^5.0.1" 11483 "safe-buffer": "^5.0.1"
11494 } 11484 }
11495 }, 11485 },
@@ -11882,6 +11872,11 @@
11882 "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", 11872 "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=",
11883 "dev": true 11873 "dev": true
11884 }, 11874 },
11875 "lodash.includes": {
11876 "version": "4.3.0",
11877 "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz",
11878 "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8="
11879 },
11885 "lodash.isarguments": { 11880 "lodash.isarguments": {
11886 "version": "3.1.0", 11881 "version": "3.1.0",
11887 "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", 11882 "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz",
@@ -11894,6 +11889,11 @@
11894 "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=", 11889 "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=",
11895 "dev": true 11890 "dev": true
11896 }, 11891 },
11892 "lodash.isboolean": {
11893 "version": "3.0.3",
11894 "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz",
11895 "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY="
11896 },
11897 "lodash.isequal": { 11897 "lodash.isequal": {
11898 "version": "4.5.0", 11898 "version": "4.5.0",
11899 "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", 11899 "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz",
@@ -11905,17 +11905,25 @@
11905 "integrity": "sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==", 11905 "integrity": "sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==",
11906 "dev": true 11906 "dev": true
11907 }, 11907 },
11908 "lodash.isinteger": {
11909 "version": "4.0.4",
11910 "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz",
11911 "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M="
11912 },
11913 "lodash.isnumber": {
11914 "version": "3.0.3",
11915 "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz",
11916 "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w="
11917 },
11908 "lodash.isplainobject": { 11918 "lodash.isplainobject": {
11909 "version": "4.0.6", 11919 "version": "4.0.6",
11910 "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", 11920 "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz",
11911 "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", 11921 "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs="
11912 "dev": true
11913 }, 11922 },
11914 "lodash.isstring": { 11923 "lodash.isstring": {
11915 "version": "4.0.1", 11924 "version": "4.0.1",
11916 "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", 11925 "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz",
11917 "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=", 11926 "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE="
11918 "dev": true
11919 }, 11927 },
11920 "lodash.keys": { 11928 "lodash.keys": {
11921 "version": "3.1.2", 11929 "version": "3.1.2",
@@ -17724,14 +17732,6 @@
17724 "through2": "^2.0.3" 17732 "through2": "^2.0.3"
17725 } 17733 }
17726 }, 17734 },
17727 "topo": {
17728 "version": "1.1.0",
17729 "resolved": "https://registry.npmjs.org/topo/-/topo-1.1.0.tgz",
17730 "integrity": "sha1-6ddRYV0buH3IZdsYL6HKCl71NtU=",
17731 "requires": {
17732 "hoek": "2.x.x"
17733 }
17734 },
17735 "tough-cookie": { 17735 "tough-cookie": {
17736 "version": "2.4.3", 17736 "version": "2.4.3",
17737 "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", 17737 "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz",
diff --git a/package.json b/package.json
index 7e926139d..c43e0b3a9 100644
--- a/package.json
+++ b/package.json
@@ -52,7 +52,7 @@
52 "electron-window-state": "5.0.3", 52 "electron-window-state": "5.0.3",
53 "fs-extra": "7.0.1", 53 "fs-extra": "7.0.1",
54 "hex-to-rgba": "1.0.2", 54 "hex-to-rgba": "1.0.2",
55 "jsonwebtoken": "^7.4.1", 55 "jsonwebtoken": "8.5.1",
56 "lodash": "^4.17.4", 56 "lodash": "^4.17.4",
57 "marked": "0.6.1", 57 "marked": "0.6.1",
58 "mdi": "^1.9.33", 58 "mdi": "^1.9.33",
@@ -114,7 +114,7 @@
114 "cross-env": "^5.0.5", 114 "cross-env": "^5.0.5",
115 "cz-conventional-changelog": "2.1.0", 115 "cz-conventional-changelog": "2.1.0",
116 "dotenv": "^4.0.0", 116 "dotenv": "^4.0.0",
117 "electron": "4.0.8", 117 "electron": "4.1.4",
118 "electron-builder": "20.38.4", 118 "electron-builder": "20.38.4",
119 "electron-rebuild": "1.8.4", 119 "electron-rebuild": "1.8.4",
120 "eslint": "5.10.0", 120 "eslint": "5.10.0",
diff --git a/packages/theme/src/themes/default/index.ts b/packages/theme/src/themes/default/index.ts
index a85dcb366..0f02fa3c8 100644
--- a/packages/theme/src/themes/default/index.ts
+++ b/packages/theme/src/themes/default/index.ts
@@ -1,7 +1,6 @@
1import color from 'color'; 1import color from 'color';
2import { cloneDeep } from 'lodash'; 2import { cloneDeep } from 'lodash';
3 3
4import { theme } from '../..';
5import * as legacyStyles from '../legacy'; 4import * as legacyStyles from '../legacy';
6 5
7export interface IStyleTypes { 6export interface IStyleTypes {
diff --git a/src/components/settings/settings/EditSettingsForm.js b/src/components/settings/settings/EditSettingsForm.js
index 8429d0ecb..efd453356 100644
--- a/src/components/settings/settings/EditSettingsForm.js
+++ b/src/components/settings/settings/EditSettingsForm.js
@@ -81,6 +81,10 @@ const messages = defineMessages({
81 id: 'settings.app.restartRequired', 81 id: 'settings.app.restartRequired',
82 defaultMessage: '!!!Changes require restart', 82 defaultMessage: '!!!Changes require restart',
83 }, 83 },
84 languageDisclaimer: {
85 id: 'settings.app.languageDisclaimer',
86 defaultMessage: '!!!Official translations are English & German. All other languages are community based translations.',
87 },
84}); 88});
85 89
86export default @observer class EditSettingsForm extends Component { 90export default @observer class EditSettingsForm extends Component {
@@ -239,6 +243,10 @@ export default @observer class EditSettingsForm extends Component {
239 {intl.formatMessage(messages.currentVersion)} 243 {intl.formatMessage(messages.currentVersion)}
240 {' '} 244 {' '}
241 {remote.app.getVersion()} 245 {remote.app.getVersion()}
246 <p className="settings__message">
247 <span className="mdi mdi-information" />
248 {intl.formatMessage(messages.languageDisclaimer)}
249 </p>
242 </form> 250 </form>
243 </div> 251 </div>
244 </div> 252 </div>
diff --git a/src/features/announcements/store.js b/src/features/announcements/store.js
index 3c46828bb..b99309ca7 100644
--- a/src/features/announcements/store.js
+++ b/src/features/announcements/store.js
@@ -10,6 +10,8 @@ import localStorage from 'mobx-localstorage';
10import { FeatureStore } from '../utils/FeatureStore'; 10import { FeatureStore } from '../utils/FeatureStore';
11import { getAnnouncementRequest, getChangelogRequest, getCurrentVersionRequest } from './api'; 11import { getAnnouncementRequest, getChangelogRequest, getCurrentVersionRequest } from './api';
12import { announcementActions } from './actions'; 12import { announcementActions } from './actions';
13import { createActionBindings } from '../utils/ActionBinding';
14import { createReactions } from '../../stores/lib/Reaction';
13 15
14const LOCAL_STORAGE_KEY = 'announcements'; 16const LOCAL_STORAGE_KEY = 'announcements';
15 17
@@ -52,14 +54,15 @@ export class AnnouncementsStore extends FeatureStore {
52 this.actions = actions; 54 this.actions = actions;
53 getCurrentVersionRequest.execute(); 55 getCurrentVersionRequest.execute();
54 56
55 this._registerActions([ 57 this._registerActions(createActionBindings([
56 [announcementActions.show, this._showAnnouncement], 58 [announcementActions.show, this._showAnnouncement],
57 ]); 59 ]));
58 60
59 this._registerReactions([ 61 this._reactions = createReactions([
60 this._fetchAnnouncements, 62 this._fetchAnnouncements,
61 this._showAnnouncementToUsersWhoUpdatedApp, 63 this._showAnnouncementToUsersWhoUpdatedApp,
62 ]); 64 ]);
65 this._registerReactions(this._reactions);
63 this.isFeatureActive = true; 66 this.isFeatureActive = true;
64 } 67 }
65 68
@@ -105,7 +108,6 @@ export class AnnouncementsStore extends FeatureStore {
105 108
106 _showAnnouncementToUsersWhoUpdatedApp = () => { 109 _showAnnouncementToUsersWhoUpdatedApp = () => {
107 const { announcement, isNewUser } = this; 110 const { announcement, isNewUser } = this;
108 console.log(announcement, isNewUser);
109 // Check if there is an announcement and on't show announcements to new users 111 // Check if there is an announcement and on't show announcements to new users
110 if (!announcement || isNewUser) return; 112 if (!announcement || isNewUser) return;
111 113
@@ -125,7 +127,7 @@ export class AnnouncementsStore extends FeatureStore {
125 _fetchAnnouncements = () => { 127 _fetchAnnouncements = () => {
126 const targetVersion = this.targetVersion || this.currentVersion; 128 const targetVersion = this.targetVersion || this.currentVersion;
127 if (!targetVersion) return; 129 if (!targetVersion) return;
128 getChangelogRequest.execute('5.0.1'); 130 getChangelogRequest.execute(targetVersion);
129 getAnnouncementRequest.execute('5.1.0'); 131 getAnnouncementRequest.execute(targetVersion);
130 } 132 }
131} 133}
diff --git a/src/features/utils/ActionBinding.js b/src/features/utils/ActionBinding.js
new file mode 100644
index 000000000..497aa071b
--- /dev/null
+++ b/src/features/utils/ActionBinding.js
@@ -0,0 +1,29 @@
1export default class ActionBinding {
2 action;
3
4 isActive = false;
5
6 constructor(action) {
7 this.action = action;
8 }
9
10 start() {
11 if (!this.isActive) {
12 const { action } = this;
13 action[0].listen(action[1]);
14 this.isActive = true;
15 }
16 }
17
18 stop() {
19 if (this.isActive) {
20 const { action } = this;
21 action[0].off(action[1]);
22 this.isActive = false;
23 }
24 }
25}
26
27export const createActionBindings = actions => (
28 actions.map(a => new ActionBinding(a))
29);
diff --git a/src/features/utils/FeatureStore.js b/src/features/utils/FeatureStore.js
index d863f7464..967e745b2 100644
--- a/src/features/utils/FeatureStore.js
+++ b/src/features/utils/FeatureStore.js
@@ -1,4 +1,4 @@
1import Reaction from '../../stores/lib/Reaction'; 1import { union } from 'lodash';
2 2
3export class FeatureStore { 3export class FeatureStore {
4 _actions = null; 4 _actions = null;
@@ -13,25 +13,24 @@ export class FeatureStore {
13 // ACTIONS 13 // ACTIONS
14 14
15 _registerActions(actions) { 15 _registerActions(actions) {
16 this._actions = []; 16 this._actions = union(this._actions, actions);
17 actions.forEach(a => this._actions.push(a)); 17 this._startActions();
18 this._startActions(this._actions);
19 } 18 }
20 19
21 _startActions(actions = this._actions) { 20 _startActions(actions = this._actions) {
22 actions.forEach(a => a[0].listen(a[1])); 21 console.log(actions);
22 actions.forEach(a => a.start());
23 } 23 }
24 24
25 _stopActions(actions = this._actions) { 25 _stopActions(actions = this._actions) {
26 actions.forEach(a => a[0].off(a[1])); 26 actions.forEach(a => a.stop());
27 } 27 }
28 28
29 // REACTIONS 29 // REACTIONS
30 30
31 _registerReactions(reactions) { 31 _registerReactions(reactions) {
32 this._reactions = []; 32 this._reactions = union(this._reactions, reactions);
33 reactions.forEach(r => this._reactions.push(new Reaction(r))); 33 this._startReactions();
34 this._startReactions(this._reactions);
35 } 34 }
36 35
37 _startReactions(reactions = this._reactions) { 36 _startReactions(reactions = this._reactions) {
diff --git a/src/features/workspaces/store.js b/src/features/workspaces/store.js
index bb18dc182..e11513d1f 100644
--- a/src/features/workspaces/store.js
+++ b/src/features/workspaces/store.js
@@ -14,6 +14,8 @@ import {
14 updateWorkspaceRequest, 14 updateWorkspaceRequest,
15} from './api'; 15} from './api';
16import { WORKSPACES_ROUTES } from './index'; 16import { WORKSPACES_ROUTES } from './index';
17import { createReactions } from '../../stores/lib/Reaction';
18import { createActionBindings } from '../utils/ActionBinding';
17 19
18const debug = require('debug')('Franz:feature:workspaces:store'); 20const debug = require('debug')('Franz:feature:workspaces:store');
19 21
@@ -80,41 +82,39 @@ export default class WorkspacesStore extends FeatureStore {
80 82
81 // ACTIONS 83 // ACTIONS
82 84
83 this._freeUserActions = [ 85 this._freeUserActions = createActionBindings([
84 [workspaceActions.toggleWorkspaceDrawer, this._toggleWorkspaceDrawer], 86 [workspaceActions.toggleWorkspaceDrawer, this._toggleWorkspaceDrawer],
85 [workspaceActions.openWorkspaceSettings, this._openWorkspaceSettings], 87 [workspaceActions.openWorkspaceSettings, this._openWorkspaceSettings],
86 ]; 88 ]);
87 this._premiumUserActions = [ 89 this._premiumUserActions = createActionBindings([
88 [workspaceActions.edit, this._edit], 90 [workspaceActions.edit, this._edit],
89 [workspaceActions.create, this._create], 91 [workspaceActions.create, this._create],
90 [workspaceActions.delete, this._delete], 92 [workspaceActions.delete, this._delete],
91 [workspaceActions.update, this._update], 93 [workspaceActions.update, this._update],
92 [workspaceActions.activate, this._setActiveWorkspace], 94 [workspaceActions.activate, this._setActiveWorkspace],
93 [workspaceActions.deactivate, this._deactivateActiveWorkspace], 95 [workspaceActions.deactivate, this._deactivateActiveWorkspace],
94 ]; 96 ]);
95 this._allActions = this._freeUserActions.concat(this._premiumUserActions); 97 this._allActions = this._freeUserActions.concat(this._premiumUserActions);
96 this._registerActions(this._allActions); 98 this._registerActions(this._allActions);
97 99
98 // REACTIONS 100 // REACTIONS
99 101
100 this._freeUserReactions = [ 102 this._freeUserReactions = createReactions([
101 this._stopPremiumActionsAndReactions, 103 this._stopPremiumActionsAndReactions,
102 this._openDrawerWithSettingsReaction, 104 this._openDrawerWithSettingsReaction,
103 this._setFeatureEnabledReaction, 105 this._setFeatureEnabledReaction,
104 this._setIsPremiumFeatureReaction, 106 this._setIsPremiumFeatureReaction,
105 this._cleanupInvalidServiceReferences, 107 this._cleanupInvalidServiceReferences,
106 ]; 108 ]);
107 this._premiumUserReactions = [ 109 this._premiumUserReactions = createReactions([
108 this._setActiveServiceOnWorkspaceSwitchReaction, 110 this._setActiveServiceOnWorkspaceSwitchReaction,
109 this._activateLastUsedWorkspaceReaction, 111 this._activateLastUsedWorkspaceReaction,
110 this._setWorkspaceBeingEditedReaction, 112 this._setWorkspaceBeingEditedReaction,
111 ]; 113 ]);
112 this._allReactions = this._freeUserReactions.concat(this._premiumUserReactions); 114 this._allReactions = this._freeUserReactions.concat(this._premiumUserReactions);
113 115
114 this._registerReactions(this._allReactions); 116 this._registerReactions(this._allReactions);
115 117
116 console.log(this._reactions);
117
118 getUserWorkspacesRequest.execute(); 118 getUserWorkspacesRequest.execute();
119 this.isFeatureActive = true; 119 this.isFeatureActive = true;
120 } 120 }
diff --git a/src/i18n/locales/defaultMessages.json b/src/i18n/locales/defaultMessages.json
deleted file mode 100644
index 877e67588..000000000
--- a/src/i18n/locales/defaultMessages.json
+++ /dev/null
@@ -1,4473 +0,0 @@
1[
2 {
3 "descriptors": [
4 {
5 "defaultMessage": "!!!Import your Franz 4 services",
6 "end": {
7 "column": 3,
8 "line": 16
9 },
10 "file": "src/components/auth/Import.js",
11 "id": "import.headline",
12 "start": {
13 "column": 12,
14 "line": 13
15 }
16 },
17 {
18 "defaultMessage": "!!!Services not yet supported in Franz 5",
19 "end": {
20 "column": 3,
21 "line": 20
22 },
23 "file": "src/components/auth/Import.js",
24 "id": "import.notSupportedHeadline",
25 "start": {
26 "column": 24,
27 "line": 17
28 }
29 },
30 {
31 "defaultMessage": "!!!Import {count} services",
32 "end": {
33 "column": 3,
34 "line": 24
35 },
36 "file": "src/components/auth/Import.js",
37 "id": "import.submit.label",
38 "start": {
39 "column": 21,
40 "line": 21
41 }
42 },
43 {
44 "defaultMessage": "!!!I want to add services manually",
45 "end": {
46 "column": 3,
47 "line": 28
48 },
49 "file": "src/components/auth/Import.js",
50 "id": "import.skip.label",
51 "start": {
52 "column": 19,
53 "line": 25
54 }
55 }
56 ],
57 "path": "src/components/auth/Import.json"
58 },
59 {
60 "descriptors": [
61 {
62 "defaultMessage": "!!!Invite Friends",
63 "end": {
64 "column": 3,
65 "line": 19
66 },
67 "file": "src/components/auth/Invite.js",
68 "id": "settings.invite.headline",
69 "start": {
70 "column": 20,
71 "line": 16
72 }
73 },
74 {
75 "defaultMessage": "!!!Invite 3 of your friends or colleagues",
76 "end": {
77 "column": 3,
78 "line": 23
79 },
80 "file": "src/components/auth/Invite.js",
81 "id": "invite.headline.friends",
82 "start": {
83 "column": 12,
84 "line": 20
85 }
86 },
87 {
88 "defaultMessage": "!!!Name",
89 "end": {
90 "column": 3,
91 "line": 27
92 },
93 "file": "src/components/auth/Invite.js",
94 "id": "invite.name.label",
95 "start": {
96 "column": 13,
97 "line": 24
98 }
99 },
100 {
101 "defaultMessage": "!!!Email address",
102 "end": {
103 "column": 3,
104 "line": 31
105 },
106 "file": "src/components/auth/Invite.js",
107 "id": "invite.email.label",
108 "start": {
109 "column": 14,
110 "line": 28
111 }
112 },
113 {
114 "defaultMessage": "!!!Send invites",
115 "end": {
116 "column": 3,
117 "line": 35
118 },
119 "file": "src/components/auth/Invite.js",
120 "id": "invite.submit.label",
121 "start": {
122 "column": 21,
123 "line": 32
124 }
125 },
126 {
127 "defaultMessage": "!!!I want to do this later",
128 "end": {
129 "column": 3,
130 "line": 39
131 },
132 "file": "src/components/auth/Invite.js",
133 "id": "invite.skip.label",
134 "start": {
135 "column": 19,
136 "line": 36
137 }
138 },
139 {
140 "defaultMessage": "!!!Invitations sent successfully",
141 "end": {
142 "column": 3,
143 "line": 43
144 },
145 "file": "src/components/auth/Invite.js",
146 "id": "invite.successInfo",
147 "start": {
148 "column": 21,
149 "line": 40
150 }
151 }
152 ],
153 "path": "src/components/auth/Invite.json"
154 },
155 {
156 "descriptors": [
157 {
158 "defaultMessage": "!!!Sign in",
159 "end": {
160 "column": 3,
161 "line": 20
162 },
163 "file": "src/components/auth/Login.js",
164 "id": "login.headline",
165 "start": {
166 "column": 12,
167 "line": 17
168 }
169 },
170 {
171 "defaultMessage": "!!!Email address",
172 "end": {
173 "column": 3,
174 "line": 24
175 },
176 "file": "src/components/auth/Login.js",
177 "id": "login.email.label",
178 "start": {
179 "column": 14,
180 "line": 21
181 }
182 },
183 {
184 "defaultMessage": "!!!Password",
185 "end": {
186 "column": 3,
187 "line": 28
188 },
189 "file": "src/components/auth/Login.js",
190 "id": "login.password.label",
191 "start": {
192 "column": 17,
193 "line": 25
194 }
195 },
196 {
197 "defaultMessage": "!!!Sign in",
198 "end": {
199 "column": 3,
200 "line": 32
201 },
202 "file": "src/components/auth/Login.js",
203 "id": "login.submit.label",
204 "start": {
205 "column": 21,
206 "line": 29
207 }
208 },
209 {
210 "defaultMessage": "!!!Email or password not valid",
211 "end": {
212 "column": 3,
213 "line": 36
214 },
215 "file": "src/components/auth/Login.js",
216 "id": "login.invalidCredentials",
217 "start": {
218 "column": 22,
219 "line": 33
220 }
221 },
222 {
223 "defaultMessage": "!!!Your session expired, please login again.",
224 "end": {
225 "column": 3,
226 "line": 40
227 },
228 "file": "src/components/auth/Login.js",
229 "id": "login.tokenExpired",
230 "start": {
231 "column": 16,
232 "line": 37
233 }
234 },
235 {
236 "defaultMessage": "!!!Your session expired, please login again.",
237 "end": {
238 "column": 3,
239 "line": 44
240 },
241 "file": "src/components/auth/Login.js",
242 "id": "login.serverLogout",
243 "start": {
244 "column": 16,
245 "line": 41
246 }
247 },
248 {
249 "defaultMessage": "!!!Create a free account",
250 "end": {
251 "column": 3,
252 "line": 48
253 },
254 "file": "src/components/auth/Login.js",
255 "id": "login.link.signup",
256 "start": {
257 "column": 14,
258 "line": 45
259 }
260 },
261 {
262 "defaultMessage": "!!!Forgot password",
263 "end": {
264 "column": 3,
265 "line": 52
266 },
267 "file": "src/components/auth/Login.js",
268 "id": "login.link.password",
269 "start": {
270 "column": 16,
271 "line": 49
272 }
273 }
274 ],
275 "path": "src/components/auth/Login.json"
276 },
277 {
278 "descriptors": [
279 {
280 "defaultMessage": "!!!Forgot password",
281 "end": {
282 "column": 3,
283 "line": 17
284 },
285 "file": "src/components/auth/Password.js",
286 "id": "password.headline",
287 "start": {
288 "column": 12,
289 "line": 14
290 }
291 },
292 {
293 "defaultMessage": "!!!Email address",
294 "end": {
295 "column": 3,
296 "line": 21
297 },
298 "file": "src/components/auth/Password.js",
299 "id": "password.email.label",
300 "start": {
301 "column": 14,
302 "line": 18
303 }
304 },
305 {
306 "defaultMessage": "!!!Submit",
307 "end": {
308 "column": 3,
309 "line": 25
310 },
311 "file": "src/components/auth/Password.js",
312 "id": "password.submit.label",
313 "start": {
314 "column": 21,
315 "line": 22
316 }
317 },
318 {
319 "defaultMessage": "!!!Your new password was sent to your email address",
320 "end": {
321 "column": 3,
322 "line": 29
323 },
324 "file": "src/components/auth/Password.js",
325 "id": "password.successInfo",
326 "start": {
327 "column": 15,
328 "line": 26
329 }
330 },
331 {
332 "defaultMessage": "!!!No user affiliated with that email address",
333 "end": {
334 "column": 3,
335 "line": 33
336 },
337 "file": "src/components/auth/Password.js",
338 "id": "password.noUser",
339 "start": {
340 "column": 10,
341 "line": 30
342 }
343 },
344 {
345 "defaultMessage": "!!!Create a free account",
346 "end": {
347 "column": 3,
348 "line": 37
349 },
350 "file": "src/components/auth/Password.js",
351 "id": "password.link.signup",
352 "start": {
353 "column": 14,
354 "line": 34
355 }
356 },
357 {
358 "defaultMessage": "!!!Sign in to your account",
359 "end": {
360 "column": 3,
361 "line": 41
362 },
363 "file": "src/components/auth/Password.js",
364 "id": "password.link.login",
365 "start": {
366 "column": 13,
367 "line": 38
368 }
369 }
370 ],
371 "path": "src/components/auth/Password.json"
372 },
373 {
374 "descriptors": [
375 {
376 "defaultMessage": "!!!Support Franz",
377 "end": {
378 "column": 3,
379 "line": 16
380 },
381 "file": "src/components/auth/Pricing.js",
382 "id": "pricing.headline",
383 "start": {
384 "column": 12,
385 "line": 13
386 }
387 },
388 {
389 "defaultMessage": "!!!Select your support plan",
390 "end": {
391 "column": 3,
392 "line": 20
393 },
394 "file": "src/components/auth/Pricing.js",
395 "id": "pricing.support.label",
396 "start": {
397 "column": 23,
398 "line": 17
399 }
400 },
401 {
402 "defaultMessage": "!!!Support the development of Franz",
403 "end": {
404 "column": 3,
405 "line": 24
406 },
407 "file": "src/components/auth/Pricing.js",
408 "id": "pricing.submit.label",
409 "start": {
410 "column": 21,
411 "line": 21
412 }
413 },
414 {
415 "defaultMessage": "!!!I don't want to support the development of Franz.",
416 "end": {
417 "column": 3,
418 "line": 28
419 },
420 "file": "src/components/auth/Pricing.js",
421 "id": "pricing.link.skipPayment",
422 "start": {
423 "column": 15,
424 "line": 25
425 }
426 }
427 ],
428 "path": "src/components/auth/Pricing.json"
429 },
430 {
431 "descriptors": [
432 {
433 "defaultMessage": "!!!Sign up",
434 "end": {
435 "column": 3,
436 "line": 21
437 },
438 "file": "src/components/auth/Signup.js",
439 "id": "signup.headline",
440 "start": {
441 "column": 12,
442 "line": 18
443 }
444 },
445 {
446 "defaultMessage": "!!!Firstname",
447 "end": {
448 "column": 3,
449 "line": 25
450 },
451 "file": "src/components/auth/Signup.js",
452 "id": "signup.firstname.label",
453 "start": {
454 "column": 18,
455 "line": 22
456 }
457 },
458 {
459 "defaultMessage": "!!!Lastname",
460 "end": {
461 "column": 3,
462 "line": 29
463 },
464 "file": "src/components/auth/Signup.js",
465 "id": "signup.lastname.label",
466 "start": {
467 "column": 17,
468 "line": 26
469 }
470 },
471 {
472 "defaultMessage": "!!!Email address",
473 "end": {
474 "column": 3,
475 "line": 33
476 },
477 "file": "src/components/auth/Signup.js",
478 "id": "signup.email.label",
479 "start": {
480 "column": 14,
481 "line": 30
482 }
483 },
484 {
485 "defaultMessage": "!!!Company",
486 "end": {
487 "column": 3,
488 "line": 37
489 },
490 "file": "src/components/auth/Signup.js",
491 "id": "signup.company.label",
492 "start": {
493 "column": 16,
494 "line": 34
495 }
496 },
497 {
498 "defaultMessage": "!!!Password",
499 "end": {
500 "column": 3,
501 "line": 41
502 },
503 "file": "src/components/auth/Signup.js",
504 "id": "signup.password.label",
505 "start": {
506 "column": 17,
507 "line": 38
508 }
509 },
510 {
511 "defaultMessage": "!!!By creating a Franz account you accept the",
512 "end": {
513 "column": 3,
514 "line": 45
515 },
516 "file": "src/components/auth/Signup.js",
517 "id": "signup.legal.info",
518 "start": {
519 "column": 13,
520 "line": 42
521 }
522 },
523 {
524 "defaultMessage": "!!!Terms of service",
525 "end": {
526 "column": 3,
527 "line": 49
528 },
529 "file": "src/components/auth/Signup.js",
530 "id": "signup.legal.terms",
531 "start": {
532 "column": 9,
533 "line": 46
534 }
535 },
536 {
537 "defaultMessage": "!!!Privacy Statement",
538 "end": {
539 "column": 3,
540 "line": 53
541 },
542 "file": "src/components/auth/Signup.js",
543 "id": "signup.legal.privacy",
544 "start": {
545 "column": 11,
546 "line": 50
547 }
548 },
549 {
550 "defaultMessage": "!!!Create account",
551 "end": {
552 "column": 3,
553 "line": 57
554 },
555 "file": "src/components/auth/Signup.js",
556 "id": "signup.submit.label",
557 "start": {
558 "column": 21,
559 "line": 54
560 }
561 },
562 {
563 "defaultMessage": "!!!Already have an account, sign in?",
564 "end": {
565 "column": 3,
566 "line": 61
567 },
568 "file": "src/components/auth/Signup.js",
569 "id": "signup.link.login",
570 "start": {
571 "column": 13,
572 "line": 58
573 }
574 },
575 {
576 "defaultMessage": "!!!A user with that email address already exists",
577 "end": {
578 "column": 3,
579 "line": 65
580 },
581 "file": "src/components/auth/Signup.js",
582 "id": "signup.emailDuplicate",
583 "start": {
584 "column": 18,
585 "line": 62
586 }
587 }
588 ],
589 "path": "src/components/auth/Signup.json"
590 },
591 {
592 "descriptors": [
593 {
594 "defaultMessage": "!!!Create a free account",
595 "end": {
596 "column": 3,
597 "line": 12
598 },
599 "file": "src/components/auth/Welcome.js",
600 "id": "welcome.signupButton",
601 "start": {
602 "column": 16,
603 "line": 9
604 }
605 },
606 {
607 "defaultMessage": "!!!Login to your account",
608 "end": {
609 "column": 3,
610 "line": 16
611 },
612 "file": "src/components/auth/Welcome.js",
613 "id": "welcome.loginButton",
614 "start": {
615 "column": 15,
616 "line": 13
617 }
618 }
619 ],
620 "path": "src/components/auth/Welcome.json"
621 },
622 {
623 "descriptors": [
624 {
625 "defaultMessage": "!!!Your services have been updated.",
626 "end": {
627 "column": 3,
628 "line": 29
629 },
630 "file": "src/components/layout/AppLayout.js",
631 "id": "infobar.servicesUpdated",
632 "start": {
633 "column": 19,
634 "line": 26
635 }
636 },
637 {
638 "defaultMessage": "!!!A new update for Franz is available.",
639 "end": {
640 "column": 3,
641 "line": 33
642 },
643 "file": "src/components/layout/AppLayout.js",
644 "id": "infobar.updateAvailable",
645 "start": {
646 "column": 19,
647 "line": 30
648 }
649 },
650 {
651 "defaultMessage": "!!!Reload services",
652 "end": {
653 "column": 3,
654 "line": 37
655 },
656 "file": "src/components/layout/AppLayout.js",
657 "id": "infobar.buttonReloadServices",
658 "start": {
659 "column": 24,
660 "line": 34
661 }
662 },
663 {
664 "defaultMessage": "!!!Changelog",
665 "end": {
666 "column": 3,
667 "line": 41
668 },
669 "file": "src/components/layout/AppLayout.js",
670 "id": "infobar.buttonChangelog",
671 "start": {
672 "column": 13,
673 "line": 38
674 }
675 },
676 {
677 "defaultMessage": "!!!Restart & install update",
678 "end": {
679 "column": 3,
680 "line": 45
681 },
682 "file": "src/components/layout/AppLayout.js",
683 "id": "infobar.buttonInstallUpdate",
684 "start": {
685 "column": 23,
686 "line": 42
687 }
688 },
689 {
690 "defaultMessage": "!!!Could not load services and user information",
691 "end": {
692 "column": 3,
693 "line": 49
694 },
695 "file": "src/components/layout/AppLayout.js",
696 "id": "infobar.requiredRequestsFailed",
697 "start": {
698 "column": 26,
699 "line": 46
700 }
701 }
702 ],
703 "path": "src/components/layout/AppLayout.json"
704 },
705 {
706 "descriptors": [
707 {
708 "defaultMessage": "!!!Settings",
709 "end": {
710 "column": 3,
711 "line": 16
712 },
713 "file": "src/components/layout/Sidebar.js",
714 "id": "sidebar.settings",
715 "start": {
716 "column": 12,
717 "line": 13
718 }
719 },
720 {
721 "defaultMessage": "!!!Add new service",
722 "end": {
723 "column": 3,
724 "line": 20
725 },
726 "file": "src/components/layout/Sidebar.js",
727 "id": "sidebar.addNewService",
728 "start": {
729 "column": 17,
730 "line": 17
731 }
732 },
733 {
734 "defaultMessage": "!!!Disable notifications & audio",
735 "end": {
736 "column": 3,
737 "line": 24
738 },
739 "file": "src/components/layout/Sidebar.js",
740 "id": "sidebar.muteApp",
741 "start": {
742 "column": 8,
743 "line": 21
744 }
745 },
746 {
747 "defaultMessage": "!!!Enable notifications & audio",
748 "end": {
749 "column": 3,
750 "line": 28
751 },
752 "file": "src/components/layout/Sidebar.js",
753 "id": "sidebar.unmuteApp",
754 "start": {
755 "column": 10,
756 "line": 25
757 }
758 },
759 {
760 "defaultMessage": "!!!Open workspace drawer",
761 "end": {
762 "column": 3,
763 "line": 32
764 },
765 "file": "src/components/layout/Sidebar.js",
766 "id": "sidebar.openWorkspaceDrawer",
767 "start": {
768 "column": 23,
769 "line": 29
770 }
771 },
772 {
773 "defaultMessage": "!!!Close workspace drawer",
774 "end": {
775 "column": 3,
776 "line": 36
777 },
778 "file": "src/components/layout/Sidebar.js",
779 "id": "sidebar.closeWorkspaceDrawer",
780 "start": {
781 "column": 24,
782 "line": 33
783 }
784 }
785 ],
786 "path": "src/components/layout/Sidebar.json"
787 },
788 {
789 "descriptors": [
790 {
791 "defaultMessage": "!!!Oh no!",
792 "end": {
793 "column": 3,
794 "line": 15
795 },
796 "file": "src/components/services/content/ErrorHandlers/WebviewErrorHandler.js",
797 "id": "service.errorHandler.headline",
798 "start": {
799 "column": 12,
800 "line": 12
801 }
802 },
803 {
804 "defaultMessage": "!!!{name} has failed to load.",
805 "end": {
806 "column": 3,
807 "line": 19
808 },
809 "file": "src/components/services/content/ErrorHandlers/WebviewErrorHandler.js",
810 "id": "service.errorHandler.text",
811 "start": {
812 "column": 8,
813 "line": 16
814 }
815 },
816 {
817 "defaultMessage": "!!!Reload {name}",
818 "end": {
819 "column": 3,
820 "line": 23
821 },
822 "file": "src/components/services/content/ErrorHandlers/WebviewErrorHandler.js",
823 "id": "service.errorHandler.action",
824 "start": {
825 "column": 10,
826 "line": 20
827 }
828 },
829 {
830 "defaultMessage": "!!!Edit {name}",
831 "end": {
832 "column": 3,
833 "line": 27
834 },
835 "file": "src/components/services/content/ErrorHandlers/WebviewErrorHandler.js",
836 "id": "service.errorHandler.editAction",
837 "start": {
838 "column": 14,
839 "line": 24
840 }
841 },
842 {
843 "defaultMessage": "!!!Error:",
844 "end": {
845 "column": 3,
846 "line": 31
847 },
848 "file": "src/components/services/content/ErrorHandlers/WebviewErrorHandler.js",
849 "id": "service.errorHandler.message",
850 "start": {
851 "column": 16,
852 "line": 28
853 }
854 }
855 ],
856 "path": "src/components/services/content/ErrorHandlers/WebviewErrorHandler.json"
857 },
858 {
859 "descriptors": [
860 {
861 "defaultMessage": "!!!{name} is disabled",
862 "end": {
863 "column": 3,
864 "line": 12
865 },
866 "file": "src/components/services/content/ServiceDisabled.js",
867 "id": "service.disabledHandler.headline",
868 "start": {
869 "column": 12,
870 "line": 9
871 }
872 },
873 {
874 "defaultMessage": "!!!Enable {name}",
875 "end": {
876 "column": 3,
877 "line": 16
878 },
879 "file": "src/components/services/content/ServiceDisabled.js",
880 "id": "service.disabledHandler.action",
881 "start": {
882 "column": 10,
883 "line": 13
884 }
885 }
886 ],
887 "path": "src/components/services/content/ServiceDisabled.json"
888 },
889 {
890 "descriptors": [
891 {
892 "defaultMessage": "!!!Welcome to Franz",
893 "end": {
894 "column": 3,
895 "line": 14
896 },
897 "file": "src/components/services/content/Services.js",
898 "id": "services.welcome",
899 "start": {
900 "column": 11,
901 "line": 11
902 }
903 },
904 {
905 "defaultMessage": "!!!Get started",
906 "end": {
907 "column": 3,
908 "line": 18
909 },
910 "file": "src/components/services/content/Services.js",
911 "id": "services.getStarted",
912 "start": {
913 "column": 14,
914 "line": 15
915 }
916 }
917 ],
918 "path": "src/components/services/content/Services.json"
919 },
920 {
921 "descriptors": [
922 {
923 "defaultMessage": "!!!Oh no!",
924 "end": {
925 "column": 3,
926 "line": 13
927 },
928 "file": "src/components/services/content/WebviewCrashHandler.js",
929 "id": "service.crashHandler.headline",
930 "start": {
931 "column": 12,
932 "line": 10
933 }
934 },
935 {
936 "defaultMessage": "!!!{name} has caused an error.",
937 "end": {
938 "column": 3,
939 "line": 17
940 },
941 "file": "src/components/services/content/WebviewCrashHandler.js",
942 "id": "service.crashHandler.text",
943 "start": {
944 "column": 8,
945 "line": 14
946 }
947 },
948 {
949 "defaultMessage": "!!!Reload {name}",
950 "end": {
951 "column": 3,
952 "line": 21
953 },
954 "file": "src/components/services/content/WebviewCrashHandler.js",
955 "id": "service.crashHandler.action",
956 "start": {
957 "column": 10,
958 "line": 18
959 }
960 },
961 {
962 "defaultMessage": "!!!Trying to automatically restore {name} in {seconds} seconds",
963 "end": {
964 "column": 3,
965 "line": 25
966 },
967 "file": "src/components/services/content/WebviewCrashHandler.js",
968 "id": "service.crashHandler.autoReload",
969 "start": {
970 "column": 14,
971 "line": 22
972 }
973 }
974 ],
975 "path": "src/components/services/content/WebviewCrashHandler.json"
976 },
977 {
978 "descriptors": [
979 {
980 "defaultMessage": "!!!Reload",
981 "end": {
982 "column": 3,
983 "line": 18
984 },
985 "file": "src/components/services/tabs/TabItem.js",
986 "id": "tabs.item.reload",
987 "start": {
988 "column": 10,
989 "line": 15
990 }
991 },
992 {
993 "defaultMessage": "!!!Edit",
994 "end": {
995 "column": 3,
996 "line": 22
997 },
998 "file": "src/components/services/tabs/TabItem.js",
999 "id": "tabs.item.edit",
1000 "start": {
1001 "column": 8,
1002 "line": 19
1003 }
1004 },
1005 {
1006 "defaultMessage": "!!!Disable notifications",
1007 "end": {
1008 "column": 3,
1009 "line": 26
1010 },
1011 "file": "src/components/services/tabs/TabItem.js",
1012 "id": "tabs.item.disableNotifications",
1013 "start": {
1014 "column": 24,
1015 "line": 23
1016 }
1017 },
1018 {
1019 "defaultMessage": "!!!Enable notifications",
1020 "end": {
1021 "column": 3,
1022 "line": 30
1023 },
1024 "file": "src/components/services/tabs/TabItem.js",
1025 "id": "tabs.item.enableNotification",
1026 "start": {
1027 "column": 23,
1028 "line": 27
1029 }
1030 },
1031 {
1032 "defaultMessage": "!!!Disable audio",
1033 "end": {
1034 "column": 3,
1035 "line": 34
1036 },
1037 "file": "src/components/services/tabs/TabItem.js",
1038 "id": "tabs.item.disableAudio",
1039 "start": {
1040 "column": 16,
1041 "line": 31
1042 }
1043 },
1044 {
1045 "defaultMessage": "!!!Enable audio",
1046 "end": {
1047 "column": 3,
1048 "line": 38
1049 },
1050 "file": "src/components/services/tabs/TabItem.js",
1051 "id": "tabs.item.enableAudio",
1052 "start": {
1053 "column": 15,
1054 "line": 35
1055 }
1056 },
1057 {
1058 "defaultMessage": "!!!Disable Service",
1059 "end": {
1060 "column": 3,
1061 "line": 42
1062 },
1063 "file": "src/components/services/tabs/TabItem.js",
1064 "id": "tabs.item.disableService",
1065 "start": {
1066 "column": 18,
1067 "line": 39
1068 }
1069 },
1070 {
1071 "defaultMessage": "!!!Enable Service",
1072 "end": {
1073 "column": 3,
1074 "line": 46
1075 },
1076 "file": "src/components/services/tabs/TabItem.js",
1077 "id": "tabs.item.enableService",
1078 "start": {
1079 "column": 17,
1080 "line": 43
1081 }
1082 },
1083 {
1084 "defaultMessage": "!!!Delete Service",
1085 "end": {
1086 "column": 3,
1087 "line": 50
1088 },
1089 "file": "src/components/services/tabs/TabItem.js",
1090 "id": "tabs.item.deleteService",
1091 "start": {
1092 "column": 17,
1093 "line": 47
1094 }
1095 }
1096 ],
1097 "path": "src/components/services/tabs/TabItem.json"
1098 },
1099 {
1100 "descriptors": [
1101 {
1102 "defaultMessage": "!!!Account",
1103 "end": {
1104 "column": 3,
1105 "line": 18
1106 },
1107 "file": "src/components/settings/account/AccountDashboard.js",
1108 "id": "settings.account.headline",
1109 "start": {
1110 "column": 12,
1111 "line": 15
1112 }
1113 },
1114 {
1115 "defaultMessage": "!!!Your Subscription",
1116 "end": {
1117 "column": 3,
1118 "line": 22
1119 },
1120 "file": "src/components/settings/account/AccountDashboard.js",
1121 "id": "settings.account.headlineSubscription",
1122 "start": {
1123 "column": 24,
1124 "line": 19
1125 }
1126 },
1127 {
1128 "defaultMessage": "!!!Upgrade your Account",
1129 "end": {
1130 "column": 3,
1131 "line": 26
1132 },
1133 "file": "src/components/settings/account/AccountDashboard.js",
1134 "id": "settings.account.headlineUpgrade",
1135 "start": {
1136 "column": 19,
1137 "line": 23
1138 }
1139 },
1140 {
1141 "defaultMessage": "!!Invoices",
1142 "end": {
1143 "column": 3,
1144 "line": 30
1145 },
1146 "file": "src/components/settings/account/AccountDashboard.js",
1147 "id": "settings.account.headlineInvoices",
1148 "start": {
1149 "column": 20,
1150 "line": 27
1151 }
1152 },
1153 {
1154 "defaultMessage": "!!Danger Zone",
1155 "end": {
1156 "column": 3,
1157 "line": 34
1158 },
1159 "file": "src/components/settings/account/AccountDashboard.js",
1160 "id": "settings.account.headlineDangerZone",
1161 "start": {
1162 "column": 22,
1163 "line": 31
1164 }
1165 },
1166 {
1167 "defaultMessage": "!!!Manage your subscription",
1168 "end": {
1169 "column": 3,
1170 "line": 38
1171 },
1172 "file": "src/components/settings/account/AccountDashboard.js",
1173 "id": "settings.account.manageSubscription.label",
1174 "start": {
1175 "column": 33,
1176 "line": 35
1177 }
1178 },
1179 {
1180 "defaultMessage": "!!!Basic Account",
1181 "end": {
1182 "column": 3,
1183 "line": 42
1184 },
1185 "file": "src/components/settings/account/AccountDashboard.js",
1186 "id": "settings.account.accountType.basic",
1187 "start": {
1188 "column": 20,
1189 "line": 39
1190 }
1191 },
1192 {
1193 "defaultMessage": "!!!Premium Supporter Account",
1194 "end": {
1195 "column": 3,
1196 "line": 46
1197 },
1198 "file": "src/components/settings/account/AccountDashboard.js",
1199 "id": "settings.account.accountType.premium",
1200 "start": {
1201 "column": 22,
1202 "line": 43
1203 }
1204 },
1205 {
1206 "defaultMessage": "!!!Edit Account",
1207 "end": {
1208 "column": 3,
1209 "line": 50
1210 },
1211 "file": "src/components/settings/account/AccountDashboard.js",
1212 "id": "settings.account.account.editButton",
1213 "start": {
1214 "column": 21,
1215 "line": 47
1216 }
1217 },
1218 {
1219 "defaultMessage": "!!!Download",
1220 "end": {
1221 "column": 3,
1222 "line": 54
1223 },
1224 "file": "src/components/settings/account/AccountDashboard.js",
1225 "id": "settings.account.invoiceDownload",
1226 "start": {
1227 "column": 19,
1228 "line": 51
1229 }
1230 },
1231 {
1232 "defaultMessage": "!!!Could not load user information",
1233 "end": {
1234 "column": 3,
1235 "line": 58
1236 },
1237 "file": "src/components/settings/account/AccountDashboard.js",
1238 "id": "settings.account.userInfoRequestFailed",
1239 "start": {
1240 "column": 25,
1241 "line": 55
1242 }
1243 },
1244 {
1245 "defaultMessage": "!!!Try again",
1246 "end": {
1247 "column": 3,
1248 "line": 62
1249 },
1250 "file": "src/components/settings/account/AccountDashboard.js",
1251 "id": "settings.account.tryReloadUserInfoRequest",
1252 "start": {
1253 "column": 28,
1254 "line": 59
1255 }
1256 },
1257 {
1258 "defaultMessage": "!!!Delete account",
1259 "end": {
1260 "column": 3,
1261 "line": 66
1262 },
1263 "file": "src/components/settings/account/AccountDashboard.js",
1264 "id": "settings.account.deleteAccount",
1265 "start": {
1266 "column": 17,
1267 "line": 63
1268 }
1269 },
1270 {
1271 "defaultMessage": "!!!If you don't need your Franz account any longer, you can delete your account and all related data here.",
1272 "end": {
1273 "column": 3,
1274 "line": 70
1275 },
1276 "file": "src/components/settings/account/AccountDashboard.js",
1277 "id": "settings.account.deleteInfo",
1278 "start": {
1279 "column": 14,
1280 "line": 67
1281 }
1282 },
1283 {
1284 "defaultMessage": "!!!You have received an email with a link to confirm your account deletion. Your account and data cannot be restored!",
1285 "end": {
1286 "column": 3,
1287 "line": 74
1288 },
1289 "file": "src/components/settings/account/AccountDashboard.js",
1290 "id": "settings.account.deleteEmailSent",
1291 "start": {
1292 "column": 19,
1293 "line": 71
1294 }
1295 }
1296 ],
1297 "path": "src/components/settings/account/AccountDashboard.json"
1298 },
1299 {
1300 "descriptors": [
1301 {
1302 "defaultMessage": "!!!Available services",
1303 "end": {
1304 "column": 3,
1305 "line": 15
1306 },
1307 "file": "src/components/settings/navigation/SettingsNavigation.js",
1308 "id": "settings.navigation.availableServices",
1309 "start": {
1310 "column": 21,
1311 "line": 12
1312 }
1313 },
1314 {
1315 "defaultMessage": "!!!Your services",
1316 "end": {
1317 "column": 3,
1318 "line": 19
1319 },
1320 "file": "src/components/settings/navigation/SettingsNavigation.js",
1321 "id": "settings.navigation.yourServices",
1322 "start": {
1323 "column": 16,
1324 "line": 16
1325 }
1326 },
1327 {
1328 "defaultMessage": "!!!Your workspaces",
1329 "end": {
1330 "column": 3,
1331 "line": 23
1332 },
1333 "file": "src/components/settings/navigation/SettingsNavigation.js",
1334 "id": "settings.navigation.yourWorkspaces",
1335 "start": {
1336 "column": 18,
1337 "line": 20
1338 }
1339 },
1340 {
1341 "defaultMessage": "!!!Account",
1342 "end": {
1343 "column": 3,
1344 "line": 27
1345 },
1346 "file": "src/components/settings/navigation/SettingsNavigation.js",
1347 "id": "settings.navigation.account",
1348 "start": {
1349 "column": 11,
1350 "line": 24
1351 }
1352 },
1353 {
1354 "defaultMessage": "!!!Settings",
1355 "end": {
1356 "column": 3,
1357 "line": 31
1358 },
1359 "file": "src/components/settings/navigation/SettingsNavigation.js",
1360 "id": "settings.navigation.settings",
1361 "start": {
1362 "column": 12,
1363 "line": 28
1364 }
1365 },
1366 {
1367 "defaultMessage": "!!!Invite Friends",
1368 "end": {
1369 "column": 3,
1370 "line": 35
1371 },
1372 "file": "src/components/settings/navigation/SettingsNavigation.js",
1373 "id": "settings.navigation.inviteFriends",
1374 "start": {
1375 "column": 17,
1376 "line": 32
1377 }
1378 },
1379 {
1380 "defaultMessage": "!!!Logout",
1381 "end": {
1382 "column": 3,
1383 "line": 39
1384 },
1385 "file": "src/components/settings/navigation/SettingsNavigation.js",
1386 "id": "settings.navigation.logout",
1387 "start": {
1388 "column": 10,
1389 "line": 36
1390 }
1391 }
1392 ],
1393 "path": "src/components/settings/navigation/SettingsNavigation.json"
1394 },
1395 {
1396 "descriptors": [
1397 {
1398 "defaultMessage": "!!!Available Services",
1399 "end": {
1400 "column": 3,
1401 "line": 18
1402 },
1403 "file": "src/components/settings/recipes/RecipesDashboard.js",
1404 "id": "settings.recipes.headline",
1405 "start": {
1406 "column": 12,
1407 "line": 15
1408 }
1409 },
1410 {
1411 "defaultMessage": "!!!Search service",
1412 "end": {
1413 "column": 3,
1414 "line": 22
1415 },
1416 "file": "src/components/settings/recipes/RecipesDashboard.js",
1417 "id": "settings.searchService",
1418 "start": {
1419 "column": 17,
1420 "line": 19
1421 }
1422 },
1423 {
1424 "defaultMessage": "!!!Most popular",
1425 "end": {
1426 "column": 3,
1427 "line": 26
1428 },
1429 "file": "src/components/settings/recipes/RecipesDashboard.js",
1430 "id": "settings.recipes.mostPopular",
1431 "start": {
1432 "column": 22,
1433 "line": 23
1434 }
1435 },
1436 {
1437 "defaultMessage": "!!!All services",
1438 "end": {
1439 "column": 3,
1440 "line": 30
1441 },
1442 "file": "src/components/settings/recipes/RecipesDashboard.js",
1443 "id": "settings.recipes.all",
1444 "start": {
1445 "column": 14,
1446 "line": 27
1447 }
1448 },
1449 {
1450 "defaultMessage": "!!!Development",
1451 "end": {
1452 "column": 3,
1453 "line": 34
1454 },
1455 "file": "src/components/settings/recipes/RecipesDashboard.js",
1456 "id": "settings.recipes.dev",
1457 "start": {
1458 "column": 14,
1459 "line": 31
1460 }
1461 },
1462 {
1463 "defaultMessage": "!!!Sorry, but no service matched your search term.",
1464 "end": {
1465 "column": 3,
1466 "line": 38
1467 },
1468 "file": "src/components/settings/recipes/RecipesDashboard.js",
1469 "id": "settings.recipes.nothingFound",
1470 "start": {
1471 "column": 16,
1472 "line": 35
1473 }
1474 },
1475 {
1476 "defaultMessage": "!!!Service successfully added",
1477 "end": {
1478 "column": 3,
1479 "line": 42
1480 },
1481 "file": "src/components/settings/recipes/RecipesDashboard.js",
1482 "id": "settings.recipes.servicesSuccessfulAddedInfo",
1483 "start": {
1484 "column": 31,
1485 "line": 39
1486 }
1487 },
1488 {
1489 "defaultMessage": "!!!Missing a service?",
1490 "end": {
1491 "column": 3,
1492 "line": 46
1493 },
1494 "file": "src/components/settings/recipes/RecipesDashboard.js",
1495 "id": "settings.recipes.missingService",
1496 "start": {
1497 "column": 18,
1498 "line": 43
1499 }
1500 }
1501 ],
1502 "path": "src/components/settings/recipes/RecipesDashboard.json"
1503 },
1504 {
1505 "descriptors": [
1506 {
1507 "defaultMessage": "!!!Save service",
1508 "end": {
1509 "column": 3,
1510 "line": 25
1511 },
1512 "file": "src/components/settings/services/EditServiceForm.js",
1513 "id": "settings.service.form.saveButton",
1514 "start": {
1515 "column": 15,
1516 "line": 22
1517 }
1518 },
1519 {
1520 "defaultMessage": "!!!Delete Service",
1521 "end": {
1522 "column": 3,
1523 "line": 29
1524 },
1525 "file": "src/components/settings/services/EditServiceForm.js",
1526 "id": "settings.service.form.deleteButton",
1527 "start": {
1528 "column": 17,
1529 "line": 26
1530 }
1531 },
1532 {
1533 "defaultMessage": "!!!Available services",
1534 "end": {
1535 "column": 3,
1536 "line": 33
1537 },
1538 "file": "src/components/settings/services/EditServiceForm.js",
1539 "id": "settings.service.form.availableServices",
1540 "start": {
1541 "column": 21,
1542 "line": 30
1543 }
1544 },
1545 {
1546 "defaultMessage": "!!!Your services",
1547 "end": {
1548 "column": 3,
1549 "line": 37
1550 },
1551 "file": "src/components/settings/services/EditServiceForm.js",
1552 "id": "settings.service.form.yourServices",
1553 "start": {
1554 "column": 16,
1555 "line": 34
1556 }
1557 },
1558 {
1559 "defaultMessage": "!!!Add {name}",
1560 "end": {
1561 "column": 3,
1562 "line": 41
1563 },
1564 "file": "src/components/settings/services/EditServiceForm.js",
1565 "id": "settings.service.form.addServiceHeadline",
1566 "start": {
1567 "column": 22,
1568 "line": 38
1569 }
1570 },
1571 {
1572 "defaultMessage": "!!!Edit {name}",
1573 "end": {
1574 "column": 3,
1575 "line": 45
1576 },
1577 "file": "src/components/settings/services/EditServiceForm.js",
1578 "id": "settings.service.form.editServiceHeadline",
1579 "start": {
1580 "column": 23,
1581 "line": 42
1582 }
1583 },
1584 {
1585 "defaultMessage": "!!!Hosted",
1586 "end": {
1587 "column": 3,
1588 "line": 49
1589 },
1590 "file": "src/components/settings/services/EditServiceForm.js",
1591 "id": "settings.service.form.tabHosted",
1592 "start": {
1593 "column": 13,
1594 "line": 46
1595 }
1596 },
1597 {
1598 "defaultMessage": "!!!Self hosted ⭐️",
1599 "end": {
1600 "column": 3,
1601 "line": 53
1602 },
1603 "file": "src/components/settings/services/EditServiceForm.js",
1604 "id": "settings.service.form.tabOnPremise",
1605 "start": {
1606 "column": 16,
1607 "line": 50
1608 }
1609 },
1610 {
1611 "defaultMessage": "!!!Use the hosted {name} service.",
1612 "end": {
1613 "column": 3,
1614 "line": 57
1615 },
1616 "file": "src/components/settings/services/EditServiceForm.js",
1617 "id": "settings.service.form.useHostedService",
1618 "start": {
1619 "column": 20,
1620 "line": 54
1621 }
1622 },
1623 {
1624 "defaultMessage": "!!!Could not validate custom {name} server.",
1625 "end": {
1626 "column": 3,
1627 "line": 61
1628 },
1629 "file": "src/components/settings/services/EditServiceForm.js",
1630 "id": "settings.service.form.customUrlValidationError",
1631 "start": {
1632 "column": 28,
1633 "line": 58
1634 }
1635 },
1636 {
1637 "defaultMessage": "!!!To add self hosted services, you need a Franz Premium Supporter Account.",
1638 "end": {
1639 "column": 3,
1640 "line": 65
1641 },
1642 "file": "src/components/settings/services/EditServiceForm.js",
1643 "id": "settings.service.form.customUrlPremiumInfo",
1644 "start": {
1645 "column": 24,
1646 "line": 62
1647 }
1648 },
1649 {
1650 "defaultMessage": "!!!Upgrade your account",
1651 "end": {
1652 "column": 3,
1653 "line": 69
1654 },
1655 "file": "src/components/settings/services/EditServiceForm.js",
1656 "id": "settings.service.form.customUrlUpgradeAccount",
1657 "start": {
1658 "column": 27,
1659 "line": 66
1660 }
1661 },
1662 {
1663 "defaultMessage": "!!!You will be notified about all new messages in a channel, not just @username, @channel, @here, ...",
1664 "end": {
1665 "column": 3,
1666 "line": 73
1667 },
1668 "file": "src/components/settings/services/EditServiceForm.js",
1669 "id": "settings.service.form.indirectMessageInfo",
1670 "start": {
1671 "column": 23,
1672 "line": 70
1673 }
1674 },
1675 {
1676 "defaultMessage": "!!!When disabled, all notification sounds and audio playback are muted",
1677 "end": {
1678 "column": 3,
1679 "line": 77
1680 },
1681 "file": "src/components/settings/services/EditServiceForm.js",
1682 "id": "settings.service.form.isMutedInfo",
1683 "start": {
1684 "column": 15,
1685 "line": 74
1686 }
1687 },
1688 {
1689 "defaultMessage": "!!!Notifications",
1690 "end": {
1691 "column": 3,
1692 "line": 81
1693 },
1694 "file": "src/components/settings/services/EditServiceForm.js",
1695 "id": "settings.service.form.headlineNotifications",
1696 "start": {
1697 "column": 25,
1698 "line": 78
1699 }
1700 },
1701 {
1702 "defaultMessage": "!!!Unread message badges",
1703 "end": {
1704 "column": 3,
1705 "line": 85
1706 },
1707 "file": "src/components/settings/services/EditServiceForm.js",
1708 "id": "settings.service.form.headlineBadges",
1709 "start": {
1710 "column": 18,
1711 "line": 82
1712 }
1713 },
1714 {
1715 "defaultMessage": "!!!General",
1716 "end": {
1717 "column": 3,
1718 "line": 89
1719 },
1720 "file": "src/components/settings/services/EditServiceForm.js",
1721 "id": "settings.service.form.headlineGeneral",
1722 "start": {
1723 "column": 19,
1724 "line": 86
1725 }
1726 },
1727 {
1728 "defaultMessage": "!!!Delete",
1729 "end": {
1730 "column": 3,
1731 "line": 93
1732 },
1733 "file": "src/components/settings/services/EditServiceForm.js",
1734 "id": "settings.service.form.iconDelete",
1735 "start": {
1736 "column": 14,
1737 "line": 90
1738 }
1739 },
1740 {
1741 "defaultMessage": "!!!Drop your image, or click here",
1742 "end": {
1743 "column": 3,
1744 "line": 97
1745 },
1746 "file": "src/components/settings/services/EditServiceForm.js",
1747 "id": "settings.service.form.iconUpload",
1748 "start": {
1749 "column": 14,
1750 "line": 94
1751 }
1752 },
1753 {
1754 "defaultMessage": "!!!HTTP/HTTPS Proxy Settings",
1755 "end": {
1756 "column": 3,
1757 "line": 101
1758 },
1759 "file": "src/components/settings/services/EditServiceForm.js",
1760 "id": "settings.service.form.proxy.headline",
1761 "start": {
1762 "column": 17,
1763 "line": 98
1764 }
1765 },
1766 {
1767 "defaultMessage": "!!!Please restart Franz after changing proxy Settings.",
1768 "end": {
1769 "column": 3,
1770 "line": 105
1771 },
1772 "file": "src/components/settings/services/EditServiceForm.js",
1773 "id": "settings.service.form.proxy.restartInfo",
1774 "start": {
1775 "column": 20,
1776 "line": 102
1777 }
1778 },
1779 {
1780 "defaultMessage": "!!!Proxy settings will not be synchronized with the Franz servers.",
1781 "end": {
1782 "column": 3,
1783 "line": 109
1784 },
1785 "file": "src/components/settings/services/EditServiceForm.js",
1786 "id": "settings.service.form.proxy.info",
1787 "start": {
1788 "column": 13,
1789 "line": 106
1790 }
1791 }
1792 ],
1793 "path": "src/components/settings/services/EditServiceForm.json"
1794 },
1795 {
1796 "descriptors": [
1797 {
1798 "defaultMessage": "!!!Error",
1799 "end": {
1800 "column": 3,
1801 "line": 13
1802 },
1803 "file": "src/components/settings/services/ServiceError.js",
1804 "id": "settings.service.error.headline",
1805 "start": {
1806 "column": 12,
1807 "line": 10
1808 }
1809 },
1810 {
1811 "defaultMessage": "!!!Back to services",
1812 "end": {
1813 "column": 3,
1814 "line": 17
1815 },
1816 "file": "src/components/settings/services/ServiceError.js",
1817 "id": "settings.service.error.goBack",
1818 "start": {
1819 "column": 10,
1820 "line": 14
1821 }
1822 },
1823 {
1824 "defaultMessage": "!!!Available services",
1825 "end": {
1826 "column": 3,
1827 "line": 21
1828 },
1829 "file": "src/components/settings/services/ServiceError.js",
1830 "id": "settings.service.form.availableServices",
1831 "start": {
1832 "column": 21,
1833 "line": 18
1834 }
1835 },
1836 {
1837 "defaultMessage": "!!!Could not load service recipe.",
1838 "end": {
1839 "column": 3,
1840 "line": 25
1841 },
1842 "file": "src/components/settings/services/ServiceError.js",
1843 "id": "settings.service.error.message",
1844 "start": {
1845 "column": 16,
1846 "line": 22
1847 }
1848 }
1849 ],
1850 "path": "src/components/settings/services/ServiceError.json"
1851 },
1852 {
1853 "descriptors": [
1854 {
1855 "defaultMessage": "!!!Service is disabled",
1856 "end": {
1857 "column": 3,
1858 "line": 14
1859 },
1860 "file": "src/components/settings/services/ServiceItem.js",
1861 "id": "settings.services.tooltip.isDisabled",
1862 "start": {
1863 "column": 21,
1864 "line": 11
1865 }
1866 },
1867 {
1868 "defaultMessage": "!!!Notifications are disabled",
1869 "end": {
1870 "column": 3,
1871 "line": 18
1872 },
1873 "file": "src/components/settings/services/ServiceItem.js",
1874 "id": "settings.services.tooltip.notificationsDisabled",
1875 "start": {
1876 "column": 32,
1877 "line": 15
1878 }
1879 },
1880 {
1881 "defaultMessage": "!!!All sounds are muted",
1882 "end": {
1883 "column": 3,
1884 "line": 22
1885 },
1886 "file": "src/components/settings/services/ServiceItem.js",
1887 "id": "settings.services.tooltip.isMuted",
1888 "start": {
1889 "column": 18,
1890 "line": 19
1891 }
1892 }
1893 ],
1894 "path": "src/components/settings/services/ServiceItem.json"
1895 },
1896 {
1897 "descriptors": [
1898 {
1899 "defaultMessage": "!!!Your services",
1900 "end": {
1901 "column": 3,
1902 "line": 17
1903 },
1904 "file": "src/components/settings/services/ServicesDashboard.js",
1905 "id": "settings.services.headline",
1906 "start": {
1907 "column": 12,
1908 "line": 14
1909 }
1910 },
1911 {
1912 "defaultMessage": "!!!Search service",
1913 "end": {
1914 "column": 3,
1915 "line": 21
1916 },
1917 "file": "src/components/settings/services/ServicesDashboard.js",
1918 "id": "settings.searchService",
1919 "start": {
1920 "column": 17,
1921 "line": 18
1922 }
1923 },
1924 {
1925 "defaultMessage": "!!!You haven't added any services yet.",
1926 "end": {
1927 "column": 3,
1928 "line": 25
1929 },
1930 "file": "src/components/settings/services/ServicesDashboard.js",
1931 "id": "settings.services.noServicesAdded",
1932 "start": {
1933 "column": 19,
1934 "line": 22
1935 }
1936 },
1937 {
1938 "defaultMessage": "!!!Sorry, but no service matched your search term.",
1939 "end": {
1940 "column": 3,
1941 "line": 29
1942 },
1943 "file": "src/components/settings/services/ServicesDashboard.js",
1944 "id": "settings.recipes.nothingFound",
1945 "start": {
1946 "column": 18,
1947 "line": 26
1948 }
1949 },
1950 {
1951 "defaultMessage": "!!!Discover services",
1952 "end": {
1953 "column": 3,
1954 "line": 33
1955 },
1956 "file": "src/components/settings/services/ServicesDashboard.js",
1957 "id": "settings.services.discoverServices",
1958 "start": {
1959 "column": 20,
1960 "line": 30
1961 }
1962 },
1963 {
1964 "defaultMessage": "!!!Could not load your services",
1965 "end": {
1966 "column": 3,
1967 "line": 37
1968 },
1969 "file": "src/components/settings/services/ServicesDashboard.js",
1970 "id": "settings.services.servicesRequestFailed",
1971 "start": {
1972 "column": 25,
1973 "line": 34
1974 }
1975 },
1976 {
1977 "defaultMessage": "!!!Try again",
1978 "end": {
1979 "column": 3,
1980 "line": 41
1981 },
1982 "file": "src/components/settings/services/ServicesDashboard.js",
1983 "id": "settings.account.tryReloadServices",
1984 "start": {
1985 "column": 21,
1986 "line": 38
1987 }
1988 },
1989 {
1990 "defaultMessage": "!!!Your changes have been saved",
1991 "end": {
1992 "column": 3,
1993 "line": 45
1994 },
1995 "file": "src/components/settings/services/ServicesDashboard.js",
1996 "id": "settings.services.updatedInfo",
1997 "start": {
1998 "column": 15,
1999 "line": 42
2000 }
2001 },
2002 {
2003 "defaultMessage": "!!!Service has been deleted",
2004 "end": {
2005 "column": 3,
2006 "line": 49
2007 },
2008 "file": "src/components/settings/services/ServicesDashboard.js",
2009 "id": "settings.services.deletedInfo",
2010 "start": {
2011 "column": 15,
2012 "line": 46
2013 }
2014 }
2015 ],
2016 "path": "src/components/settings/services/ServicesDashboard.json"
2017 },
2018 {
2019 "descriptors": [
2020 {
2021 "defaultMessage": "!!!Settings",
2022 "end": {
2023 "column": 3,
2024 "line": 19
2025 },
2026 "file": "src/components/settings/settings/EditSettingsForm.js",
2027 "id": "settings.app.headline",
2028 "start": {
2029 "column": 12,
2030 "line": 16
2031 }
2032 },
2033 {
2034 "defaultMessage": "!!!General",
2035 "end": {
2036 "column": 3,
2037 "line": 23
2038 },
2039 "file": "src/components/settings/settings/EditSettingsForm.js",
2040 "id": "settings.app.headlineGeneral",
2041 "start": {
2042 "column": 19,
2043 "line": 20
2044 }
2045 },
2046 {
2047 "defaultMessage": "!!!Language",
2048 "end": {
2049 "column": 3,
2050 "line": 27
2051 },
2052 "file": "src/components/settings/settings/EditSettingsForm.js",
2053 "id": "settings.app.headlineLanguage",
2054 "start": {
2055 "column": 20,
2056 "line": 24
2057 }
2058 },
2059 {
2060 "defaultMessage": "!!!Updates",
2061 "end": {
2062 "column": 3,
2063 "line": 31
2064 },
2065 "file": "src/components/settings/settings/EditSettingsForm.js",
2066 "id": "settings.app.headlineUpdates",
2067 "start": {
2068 "column": 19,
2069 "line": 28
2070 }
2071 },
2072 {
2073 "defaultMessage": "!!!Appearance",
2074 "end": {
2075 "column": 3,
2076 "line": 35
2077 },
2078 "file": "src/components/settings/settings/EditSettingsForm.js",
2079 "id": "settings.app.headlineAppearance",
2080 "start": {
2081 "column": 22,
2082 "line": 32
2083 }
2084 },
2085 {
2086 "defaultMessage": "!!!Advanced",
2087 "end": {
2088 "column": 3,
2089 "line": 39
2090 },
2091 "file": "src/components/settings/settings/EditSettingsForm.js",
2092 "id": "settings.app.headlineAdvanced",
2093 "start": {
2094 "column": 20,
2095 "line": 36
2096 }
2097 },
2098 {
2099 "defaultMessage": "!!!Help us to translate Franz into your language.",
2100 "end": {
2101 "column": 3,
2102 "line": 43
2103 },
2104 "file": "src/components/settings/settings/EditSettingsForm.js",
2105 "id": "settings.app.translationHelp",
2106 "start": {
2107 "column": 19,
2108 "line": 40
2109 }
2110 },
2111 {
2112 "defaultMessage": "!!!Cache",
2113 "end": {
2114 "column": 3,
2115 "line": 47
2116 },
2117 "file": "src/components/settings/settings/EditSettingsForm.js",
2118 "id": "settings.app.subheadlineCache",
2119 "start": {
2120 "column": 20,
2121 "line": 44
2122 }
2123 },
2124 {
2125 "defaultMessage": "!!!Franz cache is currently using {size} of disk space.",
2126 "end": {
2127 "column": 3,
2128 "line": 51
2129 },
2130 "file": "src/components/settings/settings/EditSettingsForm.js",
2131 "id": "settings.app.cacheInfo",
2132 "start": {
2133 "column": 13,
2134 "line": 48
2135 }
2136 },
2137 {
2138 "defaultMessage": "!!!Clear cache",
2139 "end": {
2140 "column": 3,
2141 "line": 55
2142 },
2143 "file": "src/components/settings/settings/EditSettingsForm.js",
2144 "id": "settings.app.buttonClearAllCache",
2145 "start": {
2146 "column": 23,
2147 "line": 52
2148 }
2149 },
2150 {
2151 "defaultMessage": "!!!Check for updates",
2152 "end": {
2153 "column": 3,
2154 "line": 59
2155 },
2156 "file": "src/components/settings/settings/EditSettingsForm.js",
2157 "id": "settings.app.buttonSearchForUpdate",
2158 "start": {
2159 "column": 25,
2160 "line": 56
2161 }
2162 },
2163 {
2164 "defaultMessage": "!!!Restart & install update",
2165 "end": {
2166 "column": 3,
2167 "line": 63
2168 },
2169 "file": "src/components/settings/settings/EditSettingsForm.js",
2170 "id": "settings.app.buttonInstallUpdate",
2171 "start": {
2172 "column": 23,
2173 "line": 60
2174 }
2175 },
2176 {
2177 "defaultMessage": "!!!Is searching for update",
2178 "end": {
2179 "column": 3,
2180 "line": 67
2181 },
2182 "file": "src/components/settings/settings/EditSettingsForm.js",
2183 "id": "settings.app.updateStatusSearching",
2184 "start": {
2185 "column": 25,
2186 "line": 64
2187 }
2188 },
2189 {
2190 "defaultMessage": "!!!Update available, downloading...",
2191 "end": {
2192 "column": 3,
2193 "line": 71
2194 },
2195 "file": "src/components/settings/settings/EditSettingsForm.js",
2196 "id": "settings.app.updateStatusAvailable",
2197 "start": {
2198 "column": 25,
2199 "line": 68
2200 }
2201 },
2202 {
2203 "defaultMessage": "!!!You are using the latest version of Franz",
2204 "end": {
2205 "column": 3,
2206 "line": 75
2207 },
2208 "file": "src/components/settings/settings/EditSettingsForm.js",
2209 "id": "settings.app.updateStatusUpToDate",
2210 "start": {
2211 "column": 24,
2212 "line": 72
2213 }
2214 },
2215 {
2216 "defaultMessage": "!!!Current version:",
2217 "end": {
2218 "column": 3,
2219 "line": 79
2220 },
2221 "file": "src/components/settings/settings/EditSettingsForm.js",
2222 "id": "settings.app.currentVersion",
2223 "start": {
2224 "column": 18,
2225 "line": 76
2226 }
2227 },
2228 {
2229 "defaultMessage": "!!!Changes require restart",
2230 "end": {
2231 "column": 3,
2232 "line": 83
2233 },
2234 "file": "src/components/settings/settings/EditSettingsForm.js",
2235 "id": "settings.app.restartRequired",
2236 "start": {
2237 "column": 29,
2238 "line": 80
2239 }
2240 }
2241 ],
2242 "path": "src/components/settings/settings/EditSettingsForm.json"
2243 },
2244 {
2245 "descriptors": [
2246 {
2247 "defaultMessage": "!!!Account",
2248 "end": {
2249 "column": 3,
2250 "line": 18
2251 },
2252 "file": "src/components/settings/user/EditUserForm.js",
2253 "id": "settings.account.headline",
2254 "start": {
2255 "column": 12,
2256 "line": 15
2257 }
2258 },
2259 {
2260 "defaultMessage": "!!!Update Profile",
2261 "end": {
2262 "column": 3,
2263 "line": 22
2264 },
2265 "file": "src/components/settings/user/EditUserForm.js",
2266 "id": "settings.account.headlineProfile",
2267 "start": {
2268 "column": 19,
2269 "line": 19
2270 }
2271 },
2272 {
2273 "defaultMessage": "!!!Account Information",
2274 "end": {
2275 "column": 3,
2276 "line": 26
2277 },
2278 "file": "src/components/settings/user/EditUserForm.js",
2279 "id": "settings.account.headlineAccount",
2280 "start": {
2281 "column": 19,
2282 "line": 23
2283 }
2284 },
2285 {
2286 "defaultMessage": "!!!Change Password",
2287 "end": {
2288 "column": 3,
2289 "line": 30
2290 },
2291 "file": "src/components/settings/user/EditUserForm.js",
2292 "id": "settings.account.headlinePassword",
2293 "start": {
2294 "column": 20,
2295 "line": 27
2296 }
2297 },
2298 {
2299 "defaultMessage": "!!!Your changes have been saved",
2300 "end": {
2301 "column": 3,
2302 "line": 34
2303 },
2304 "file": "src/components/settings/user/EditUserForm.js",
2305 "id": "settings.account.successInfo",
2306 "start": {
2307 "column": 15,
2308 "line": 31
2309 }
2310 },
2311 {
2312 "defaultMessage": "!!!Update profile",
2313 "end": {
2314 "column": 3,
2315 "line": 38
2316 },
2317 "file": "src/components/settings/user/EditUserForm.js",
2318 "id": "settings.account.buttonSave",
2319 "start": {
2320 "column": 14,
2321 "line": 35
2322 }
2323 }
2324 ],
2325 "path": "src/components/settings/user/EditUserForm.json"
2326 },
2327 {
2328 "descriptors": [
2329 {
2330 "defaultMessage": "!!!Support the development of Franz",
2331 "end": {
2332 "column": 3,
2333 "line": 17
2334 },
2335 "file": "src/components/subscription/SubscriptionForm.js",
2336 "id": "subscription.submit.label",
2337 "start": {
2338 "column": 21,
2339 "line": 14
2340 }
2341 },
2342 {
2343 "defaultMessage": "!!!Could not initialize payment form",
2344 "end": {
2345 "column": 3,
2346 "line": 21
2347 },
2348 "file": "src/components/subscription/SubscriptionForm.js",
2349 "id": "subscription.paymentSessionError",
2350 "start": {
2351 "column": 23,
2352 "line": 18
2353 }
2354 },
2355 {
2356 "defaultMessage": "!!!free",
2357 "end": {
2358 "column": 3,
2359 "line": 25
2360 },
2361 "file": "src/components/subscription/SubscriptionForm.js",
2362 "id": "subscription.type.free",
2363 "start": {
2364 "column": 12,
2365 "line": 22
2366 }
2367 },
2368 {
2369 "defaultMessage": "!!!month",
2370 "end": {
2371 "column": 3,
2372 "line": 29
2373 },
2374 "file": "src/components/subscription/SubscriptionForm.js",
2375 "id": "subscription.type.month",
2376 "start": {
2377 "column": 15,
2378 "line": 26
2379 }
2380 },
2381 {
2382 "defaultMessage": "!!!year",
2383 "end": {
2384 "column": 3,
2385 "line": 33
2386 },
2387 "file": "src/components/subscription/SubscriptionForm.js",
2388 "id": "subscription.type.year",
2389 "start": {
2390 "column": 14,
2391 "line": 30
2392 }
2393 },
2394 {
2395 "defaultMessage": "!!!The Franz Premium Supporter Account includes",
2396 "end": {
2397 "column": 3,
2398 "line": 37
2399 },
2400 "file": "src/components/subscription/SubscriptionForm.js",
2401 "id": "subscription.includedFeatures",
2402 "start": {
2403 "column": 20,
2404 "line": 34
2405 }
2406 },
2407 {
2408 "defaultMessage": "!!!Add on-premise/hosted services like Mattermost",
2409 "end": {
2410 "column": 3,
2411 "line": 41
2412 },
2413 "file": "src/components/subscription/SubscriptionForm.js",
2414 "id": "subscription.features.onpremise.mattermost",
2415 "start": {
2416 "column": 13,
2417 "line": 38
2418 }
2419 },
2420 {
2421 "defaultMessage": "!!!No app delays & nagging to upgrade license",
2422 "end": {
2423 "column": 3,
2424 "line": 45
2425 },
2426 "file": "src/components/subscription/SubscriptionForm.js",
2427 "id": "subscription.features.noInterruptions",
2428 "start": {
2429 "column": 19,
2430 "line": 42
2431 }
2432 },
2433 {
2434 "defaultMessage": "!!!Proxy support for services",
2435 "end": {
2436 "column": 3,
2437 "line": 49
2438 },
2439 "file": "src/components/subscription/SubscriptionForm.js",
2440 "id": "subscription.features.proxy",
2441 "start": {
2442 "column": 9,
2443 "line": 46
2444 }
2445 },
2446 {
2447 "defaultMessage": "!!!Support for Spellchecker",
2448 "end": {
2449 "column": 3,
2450 "line": 53
2451 },
2452 "file": "src/components/subscription/SubscriptionForm.js",
2453 "id": "subscription.features.spellchecker",
2454 "start": {
2455 "column": 16,
2456 "line": 50
2457 }
2458 },
2459 {
2460 "defaultMessage": "!!!No ads, ever!",
2461 "end": {
2462 "column": 3,
2463 "line": 57
2464 },
2465 "file": "src/components/subscription/SubscriptionForm.js",
2466 "id": "subscription.features.ads",
2467 "start": {
2468 "column": 7,
2469 "line": 54
2470 }
2471 },
2472 {
2473 "defaultMessage": "!!!coming soon",
2474 "end": {
2475 "column": 3,
2476 "line": 61
2477 },
2478 "file": "src/components/subscription/SubscriptionForm.js",
2479 "id": "subscription.features.comingSoon",
2480 "start": {
2481 "column": 14,
2482 "line": 58
2483 }
2484 },
2485 {
2486 "defaultMessage": "!!!EU residents: local sales tax may apply",
2487 "end": {
2488 "column": 3,
2489 "line": 65
2490 },
2491 "file": "src/components/subscription/SubscriptionForm.js",
2492 "id": "subscription.euTaxInfo",
2493 "start": {
2494 "column": 13,
2495 "line": 62
2496 }
2497 }
2498 ],
2499 "path": "src/components/subscription/SubscriptionForm.json"
2500 },
2501 {
2502 "descriptors": [
2503 {
2504 "defaultMessage": "!!!Cancel",
2505 "end": {
2506 "column": 3,
2507 "line": 14
2508 },
2509 "file": "src/components/subscription/SubscriptionPopup.js",
2510 "id": "subscriptionPopup.buttonCancel",
2511 "start": {
2512 "column": 16,
2513 "line": 11
2514 }
2515 },
2516 {
2517 "defaultMessage": "!!!Done",
2518 "end": {
2519 "column": 3,
2520 "line": 18
2521 },
2522 "file": "src/components/subscription/SubscriptionPopup.js",
2523 "id": "subscriptionPopup.buttonDone",
2524 "start": {
2525 "column": 14,
2526 "line": 15
2527 }
2528 }
2529 ],
2530 "path": "src/components/subscription/SubscriptionPopup.json"
2531 },
2532 {
2533 "descriptors": [
2534 {
2535 "defaultMessage": "!!!Upgrade account",
2536 "end": {
2537 "column": 3,
2538 "line": 18
2539 },
2540 "file": "src/components/ui/PremiumFeatureContainer/index.js",
2541 "id": "premiumFeature.button.upgradeAccount",
2542 "start": {
2543 "column": 10,
2544 "line": 15
2545 }
2546 }
2547 ],
2548 "path": "src/components/ui/PremiumFeatureContainer/index.json"
2549 },
2550 {
2551 "descriptors": [
2552 {
2553 "defaultMessage": "!!!Loading",
2554 "end": {
2555 "column": 3,
2556 "line": 14
2557 },
2558 "file": "src/components/ui/WebviewLoader/index.js",
2559 "id": "service.webviewLoader.loading",
2560 "start": {
2561 "column": 11,
2562 "line": 11
2563 }
2564 }
2565 ],
2566 "path": "src/components/ui/WebviewLoader/index.json"
2567 },
2568 {
2569 "descriptors": [
2570 {
2571 "defaultMessage": "!!!Something went wrong.",
2572 "end": {
2573 "column": 3,
2574 "line": 14
2575 },
2576 "file": "src/components/util/ErrorBoundary/index.js",
2577 "id": "app.errorHandler.headline",
2578 "start": {
2579 "column": 12,
2580 "line": 11
2581 }
2582 },
2583 {
2584 "defaultMessage": "!!!Reload",
2585 "end": {
2586 "column": 3,
2587 "line": 18
2588 },
2589 "file": "src/components/util/ErrorBoundary/index.js",
2590 "id": "app.errorHandler.action",
2591 "start": {
2592 "column": 10,
2593 "line": 15
2594 }
2595 }
2596 ],
2597 "path": "src/components/util/ErrorBoundary/index.json"
2598 },
2599 {
2600 "descriptors": [
2601 {
2602 "defaultMessage": "!!!Name",
2603 "end": {
2604 "column": 3,
2605 "line": 31
2606 },
2607 "file": "src/containers/settings/EditServiceScreen.js",
2608 "id": "settings.service.form.name",
2609 "start": {
2610 "column": 8,
2611 "line": 28
2612 }
2613 },
2614 {
2615 "defaultMessage": "!!!Enable service",
2616 "end": {
2617 "column": 3,
2618 "line": 35
2619 },
2620 "file": "src/containers/settings/EditServiceScreen.js",
2621 "id": "settings.service.form.enableService",
2622 "start": {
2623 "column": 17,
2624 "line": 32
2625 }
2626 },
2627 {
2628 "defaultMessage": "!!!Enable Notifications",
2629 "end": {
2630 "column": 3,
2631 "line": 39
2632 },
2633 "file": "src/containers/settings/EditServiceScreen.js",
2634 "id": "settings.service.form.enableNotification",
2635 "start": {
2636 "column": 22,
2637 "line": 36
2638 }
2639 },
2640 {
2641 "defaultMessage": "!!!Show unread message badges",
2642 "end": {
2643 "column": 3,
2644 "line": 43
2645 },
2646 "file": "src/containers/settings/EditServiceScreen.js",
2647 "id": "settings.service.form.enableBadge",
2648 "start": {
2649 "column": 15,
2650 "line": 40
2651 }
2652 },
2653 {
2654 "defaultMessage": "!!!Enable audio",
2655 "end": {
2656 "column": 3,
2657 "line": 47
2658 },
2659 "file": "src/containers/settings/EditServiceScreen.js",
2660 "id": "settings.service.form.enableAudio",
2661 "start": {
2662 "column": 15,
2663 "line": 44
2664 }
2665 },
2666 {
2667 "defaultMessage": "!!!Team",
2668 "end": {
2669 "column": 3,
2670 "line": 51
2671 },
2672 "file": "src/containers/settings/EditServiceScreen.js",
2673 "id": "settings.service.form.team",
2674 "start": {
2675 "column": 8,
2676 "line": 48
2677 }
2678 },
2679 {
2680 "defaultMessage": "!!!Custom server",
2681 "end": {
2682 "column": 3,
2683 "line": 55
2684 },
2685 "file": "src/containers/settings/EditServiceScreen.js",
2686 "id": "settings.service.form.customUrl",
2687 "start": {
2688 "column": 13,
2689 "line": 52
2690 }
2691 },
2692 {
2693 "defaultMessage": "!!!Show message badge for all new messages",
2694 "end": {
2695 "column": 3,
2696 "line": 59
2697 },
2698 "file": "src/containers/settings/EditServiceScreen.js",
2699 "id": "settings.service.form.indirectMessages",
2700 "start": {
2701 "column": 20,
2702 "line": 56
2703 }
2704 },
2705 {
2706 "defaultMessage": "!!!Custom icon",
2707 "end": {
2708 "column": 3,
2709 "line": 63
2710 },
2711 "file": "src/containers/settings/EditServiceScreen.js",
2712 "id": "settings.service.form.icon",
2713 "start": {
2714 "column": 8,
2715 "line": 60
2716 }
2717 },
2718 {
2719 "defaultMessage": "!!!Enable Dark Mode",
2720 "end": {
2721 "column": 3,
2722 "line": 67
2723 },
2724 "file": "src/containers/settings/EditServiceScreen.js",
2725 "id": "settings.service.form.enableDarkMode",
2726 "start": {
2727 "column": 18,
2728 "line": 64
2729 }
2730 },
2731 {
2732 "defaultMessage": "!!!Use Proxy",
2733 "end": {
2734 "column": 3,
2735 "line": 71
2736 },
2737 "file": "src/containers/settings/EditServiceScreen.js",
2738 "id": "settings.service.form.proxy.isEnabled",
2739 "start": {
2740 "column": 15,
2741 "line": 68
2742 }
2743 },
2744 {
2745 "defaultMessage": "!!!Proxy Host/IP",
2746 "end": {
2747 "column": 3,
2748 "line": 75
2749 },
2750 "file": "src/containers/settings/EditServiceScreen.js",
2751 "id": "settings.service.form.proxy.host",
2752 "start": {
2753 "column": 13,
2754 "line": 72
2755 }
2756 },
2757 {
2758 "defaultMessage": "!!!Port",
2759 "end": {
2760 "column": 3,
2761 "line": 79
2762 },
2763 "file": "src/containers/settings/EditServiceScreen.js",
2764 "id": "settings.service.form.proxy.port",
2765 "start": {
2766 "column": 13,
2767 "line": 76
2768 }
2769 },
2770 {
2771 "defaultMessage": "!!!User",
2772 "end": {
2773 "column": 3,
2774 "line": 83
2775 },
2776 "file": "src/containers/settings/EditServiceScreen.js",
2777 "id": "settings.service.form.proxy.user",
2778 "start": {
2779 "column": 13,
2780 "line": 80
2781 }
2782 },
2783 {
2784 "defaultMessage": "!!!Password",
2785 "end": {
2786 "column": 3,
2787 "line": 87
2788 },
2789 "file": "src/containers/settings/EditServiceScreen.js",
2790 "id": "settings.service.form.proxy.password",
2791 "start": {
2792 "column": 17,
2793 "line": 84
2794 }
2795 }
2796 ],
2797 "path": "src/containers/settings/EditServiceScreen.json"
2798 },
2799 {
2800 "descriptors": [
2801 {
2802 "defaultMessage": "!!!Launch Franz on start",
2803 "end": {
2804 "column": 3,
2805 "line": 25
2806 },
2807 "file": "src/containers/settings/EditSettingsScreen.js",
2808 "id": "settings.app.form.autoLaunchOnStart",
2809 "start": {
2810 "column": 21,
2811 "line": 22
2812 }
2813 },
2814 {
2815 "defaultMessage": "!!!Open in background",
2816 "end": {
2817 "column": 3,
2818 "line": 29
2819 },
2820 "file": "src/containers/settings/EditSettingsScreen.js",
2821 "id": "settings.app.form.autoLaunchInBackground",
2822 "start": {
2823 "column": 26,
2824 "line": 26
2825 }
2826 },
2827 {
2828 "defaultMessage": "!!!Keep Franz in background when closing the window",
2829 "end": {
2830 "column": 3,
2831 "line": 33
2832 },
2833 "file": "src/containers/settings/EditSettingsScreen.js",
2834 "id": "settings.app.form.runInBackground",
2835 "start": {
2836 "column": 19,
2837 "line": 30
2838 }
2839 },
2840 {
2841 "defaultMessage": "!!!Show Franz in system tray",
2842 "end": {
2843 "column": 3,
2844 "line": 37
2845 },
2846 "file": "src/containers/settings/EditSettingsScreen.js",
2847 "id": "settings.app.form.enableSystemTray",
2848 "start": {
2849 "column": 20,
2850 "line": 34
2851 }
2852 },
2853 {
2854 "defaultMessage": "!!!Minimize Franz to system tray",
2855 "end": {
2856 "column": 3,
2857 "line": 41
2858 },
2859 "file": "src/containers/settings/EditSettingsScreen.js",
2860 "id": "settings.app.form.minimizeToSystemTray",
2861 "start": {
2862 "column": 24,
2863 "line": 38
2864 }
2865 },
2866 {
2867 "defaultMessage": "!!!Language",
2868 "end": {
2869 "column": 3,
2870 "line": 45
2871 },
2872 "file": "src/containers/settings/EditSettingsScreen.js",
2873 "id": "settings.app.form.language",
2874 "start": {
2875 "column": 12,
2876 "line": 42
2877 }
2878 },
2879 {
2880 "defaultMessage": "!!!Dark Mode",
2881 "end": {
2882 "column": 3,
2883 "line": 49
2884 },
2885 "file": "src/containers/settings/EditSettingsScreen.js",
2886 "id": "settings.app.form.darkMode",
2887 "start": {
2888 "column": 12,
2889 "line": 46
2890 }
2891 },
2892 {
2893 "defaultMessage": "!!!Display disabled services tabs",
2894 "end": {
2895 "column": 3,
2896 "line": 53
2897 },
2898 "file": "src/containers/settings/EditSettingsScreen.js",
2899 "id": "settings.app.form.showDisabledServices",
2900 "start": {
2901 "column": 24,
2902 "line": 50
2903 }
2904 },
2905 {
2906 "defaultMessage": "!!!Show unread message badge when notifications are disabled",
2907 "end": {
2908 "column": 3,
2909 "line": 57
2910 },
2911 "file": "src/containers/settings/EditSettingsScreen.js",
2912 "id": "settings.app.form.showMessagesBadgesWhenMuted",
2913 "start": {
2914 "column": 29,
2915 "line": 54
2916 }
2917 },
2918 {
2919 "defaultMessage": "!!!Enable spell checking",
2920 "end": {
2921 "column": 3,
2922 "line": 61
2923 },
2924 "file": "src/containers/settings/EditSettingsScreen.js",
2925 "id": "settings.app.form.enableSpellchecking",
2926 "start": {
2927 "column": 23,
2928 "line": 58
2929 }
2930 },
2931 {
2932 "defaultMessage": "!!!Enable GPU Acceleration",
2933 "end": {
2934 "column": 3,
2935 "line": 65
2936 },
2937 "file": "src/containers/settings/EditSettingsScreen.js",
2938 "id": "settings.app.form.enableGPUAcceleration",
2939 "start": {
2940 "column": 25,
2941 "line": 62
2942 }
2943 },
2944 {
2945 "defaultMessage": "!!!Include beta versions",
2946 "end": {
2947 "column": 3,
2948 "line": 69
2949 },
2950 "file": "src/containers/settings/EditSettingsScreen.js",
2951 "id": "settings.app.form.beta",
2952 "start": {
2953 "column": 8,
2954 "line": 66
2955 }
2956 }
2957 ],
2958 "path": "src/containers/settings/EditSettingsScreen.json"
2959 },
2960 {
2961 "descriptors": [
2962 {
2963 "defaultMessage": "!!!Firstname",
2964 "end": {
2965 "column": 3,
2966 "line": 17
2967 },
2968 "file": "src/containers/settings/EditUserScreen.js",
2969 "id": "settings.user.form.firstname",
2970 "start": {
2971 "column": 13,
2972 "line": 14
2973 }
2974 },
2975 {
2976 "defaultMessage": "!!!Lastname",
2977 "end": {
2978 "column": 3,
2979 "line": 21
2980 },
2981 "file": "src/containers/settings/EditUserScreen.js",
2982 "id": "settings.user.form.lastname",
2983 "start": {
2984 "column": 12,
2985 "line": 18
2986 }
2987 },
2988 {
2989 "defaultMessage": "!!!Email",
2990 "end": {
2991 "column": 3,
2992 "line": 25
2993 },
2994 "file": "src/containers/settings/EditUserScreen.js",
2995 "id": "settings.user.form.email",
2996 "start": {
2997 "column": 9,
2998 "line": 22
2999 }
3000 },
3001 {
3002 "defaultMessage": "!!!Account type",
3003 "end": {
3004 "column": 3,
3005 "line": 29
3006 },
3007 "file": "src/containers/settings/EditUserScreen.js",
3008 "id": "settings.user.form.accountType.label",
3009 "start": {
3010 "column": 20,
3011 "line": 26
3012 }
3013 },
3014 {
3015 "defaultMessage": "!!!Individual",
3016 "end": {
3017 "column": 3,
3018 "line": 33
3019 },
3020 "file": "src/containers/settings/EditUserScreen.js",
3021 "id": "settings.user.form.accountType.individual",
3022 "start": {
3023 "column": 25,
3024 "line": 30
3025 }
3026 },
3027 {
3028 "defaultMessage": "!!!Non-Profit",
3029 "end": {
3030 "column": 3,
3031 "line": 37
3032 },
3033 "file": "src/containers/settings/EditUserScreen.js",
3034 "id": "settings.user.form.accountType.non-profit",
3035 "start": {
3036 "column": 24,
3037 "line": 34
3038 }
3039 },
3040 {
3041 "defaultMessage": "!!!Company",
3042 "end": {
3043 "column": 3,
3044 "line": 41
3045 },
3046 "file": "src/containers/settings/EditUserScreen.js",
3047 "id": "settings.user.form.accountType.company",
3048 "start": {
3049 "column": 22,
3050 "line": 38
3051 }
3052 },
3053 {
3054 "defaultMessage": "!!!Current password",
3055 "end": {
3056 "column": 3,
3057 "line": 45
3058 },
3059 "file": "src/containers/settings/EditUserScreen.js",
3060 "id": "settings.user.form.currentPassword",
3061 "start": {
3062 "column": 19,
3063 "line": 42
3064 }
3065 },
3066 {
3067 "defaultMessage": "!!!New password",
3068 "end": {
3069 "column": 3,
3070 "line": 49
3071 },
3072 "file": "src/containers/settings/EditUserScreen.js",
3073 "id": "settings.user.form.newPassword",
3074 "start": {
3075 "column": 15,
3076 "line": 46
3077 }
3078 }
3079 ],
3080 "path": "src/containers/settings/EditUserScreen.json"
3081 },
3082 {
3083 "descriptors": [
3084 {
3085 "defaultMessage": "!!!What's new in Franz {version}?",
3086 "end": {
3087 "column": 3,
3088 "line": 14
3089 },
3090 "file": "src/features/announcements/Component.js",
3091 "id": "feature.announcements.changelog.headline",
3092 "start": {
3093 "column": 12,
3094 "line": 11
3095 }
3096 }
3097 ],
3098 "path": "src/features/announcements/Component.json"
3099 },
3100 {
3101 "descriptors": [
3102 {
3103 "defaultMessage": "!!!Changes in Franz {version}",
3104 "end": {
3105 "column": 3,
3106 "line": 23
3107 },
3108 "file": "src/features/announcements/components/AnnouncementScreen.js",
3109 "id": "feature.announcements.changelog.headline",
3110 "start": {
3111 "column": 12,
3112 "line": 20
3113 }
3114 }
3115 ],
3116 "path": "src/features/announcements/components/AnnouncementScreen.json"
3117 },
3118 {
3119 "descriptors": [
3120 {
3121 "defaultMessage": "!!!Please purchase license to skip waiting",
3122 "end": {
3123 "column": 3,
3124 "line": 18
3125 },
3126 "file": "src/features/delayApp/Component.js",
3127 "id": "feature.delayApp.headline",
3128 "start": {
3129 "column": 12,
3130 "line": 15
3131 }
3132 },
3133 {
3134 "defaultMessage": "!!!Get a Franz Supporter License",
3135 "end": {
3136 "column": 3,
3137 "line": 22
3138 },
3139 "file": "src/features/delayApp/Component.js",
3140 "id": "feature.delayApp.action",
3141 "start": {
3142 "column": 10,
3143 "line": 19
3144 }
3145 },
3146 {
3147 "defaultMessage": "!!!Franz will continue in {seconds} seconds.",
3148 "end": {
3149 "column": 3,
3150 "line": 26
3151 },
3152 "file": "src/features/delayApp/Component.js",
3153 "id": "feature.delayApp.text",
3154 "start": {
3155 "column": 8,
3156 "line": 23
3157 }
3158 }
3159 ],
3160 "path": "src/features/delayApp/Component.json"
3161 },
3162 {
3163 "descriptors": [
3164 {
3165 "defaultMessage": "!!!Franz is better together!",
3166 "end": {
3167 "column": 3,
3168 "line": 18
3169 },
3170 "file": "src/features/shareFranz/Component.js",
3171 "id": "feature.shareFranz.headline",
3172 "start": {
3173 "column": 12,
3174 "line": 15
3175 }
3176 },
3177 {
3178 "defaultMessage": "!!!Tell your friends and colleagues how awesome Franz is and help us to spread the word.",
3179 "end": {
3180 "column": 3,
3181 "line": 22
3182 },
3183 "file": "src/features/shareFranz/Component.js",
3184 "id": "feature.shareFranz.text",
3185 "start": {
3186 "column": 8,
3187 "line": 19
3188 }
3189 },
3190 {
3191 "defaultMessage": "!!!Share as email",
3192 "end": {
3193 "column": 3,
3194 "line": 26
3195 },
3196 "file": "src/features/shareFranz/Component.js",
3197 "id": "feature.shareFranz.action.email",
3198 "start": {
3199 "column": 16,
3200 "line": 23
3201 }
3202 },
3203 {
3204 "defaultMessage": "!!!Share on Facebook",
3205 "end": {
3206 "column": 3,
3207 "line": 30
3208 },
3209 "file": "src/features/shareFranz/Component.js",
3210 "id": "feature.shareFranz.action.facebook",
3211 "start": {
3212 "column": 19,
3213 "line": 27
3214 }
3215 },
3216 {
3217 "defaultMessage": "!!!Share on Twitter",
3218 "end": {
3219 "column": 3,
3220 "line": 34
3221 },
3222 "file": "src/features/shareFranz/Component.js",
3223 "id": "feature.shareFranz.action.twitter",
3224 "start": {
3225 "column": 18,
3226 "line": 31
3227 }
3228 },
3229 {
3230 "defaultMessage": "!!! I've added {count} services to Franz! Get the free app for WhatsApp, Messenger, Slack, Skype and co at www.meetfranz.com",
3231 "end": {
3232 "column": 3,
3233 "line": 38
3234 },
3235 "file": "src/features/shareFranz/Component.js",
3236 "id": "feature.shareFranz.shareText.email",
3237 "start": {
3238 "column": 18,
3239 "line": 35
3240 }
3241 },
3242 {
3243 "defaultMessage": "!!! I've added {count} services to Franz! Get the free app for WhatsApp, Messenger, Slack, Skype and co at www.meetfranz.com /cc @FranzMessenger",
3244 "end": {
3245 "column": 3,
3246 "line": 42
3247 },
3248 "file": "src/features/shareFranz/Component.js",
3249 "id": "feature.shareFranz.shareText.twitter",
3250 "start": {
3251 "column": 20,
3252 "line": 39
3253 }
3254 }
3255 ],
3256 "path": "src/features/shareFranz/Component.json"
3257 },
3258 {
3259 "descriptors": [
3260 {
3261 "defaultMessage": "!!!Create workspace",
3262 "end": {
3263 "column": 3,
3264 "line": 16
3265 },
3266 "file": "src/features/workspaces/components/CreateWorkspaceForm.js",
3267 "id": "settings.workspace.add.form.submitButton",
3268 "start": {
3269 "column": 16,
3270 "line": 13
3271 }
3272 },
3273 {
3274 "defaultMessage": "!!!Name",
3275 "end": {
3276 "column": 3,
3277 "line": 20
3278 },
3279 "file": "src/features/workspaces/components/CreateWorkspaceForm.js",
3280 "id": "settings.workspace.add.form.name",
3281 "start": {
3282 "column": 8,
3283 "line": 17
3284 }
3285 }
3286 ],
3287 "path": "src/features/workspaces/components/CreateWorkspaceForm.json"
3288 },
3289 {
3290 "descriptors": [
3291 {
3292 "defaultMessage": "!!!Delete workspace",
3293 "end": {
3294 "column": 3,
3295 "line": 22
3296 },
3297 "file": "src/features/workspaces/components/EditWorkspaceForm.js",
3298 "id": "settings.workspace.form.buttonDelete",
3299 "start": {
3300 "column": 16,
3301 "line": 19
3302 }
3303 },
3304 {
3305 "defaultMessage": "!!!Save workspace",
3306 "end": {
3307 "column": 3,
3308 "line": 26
3309 },
3310 "file": "src/features/workspaces/components/EditWorkspaceForm.js",
3311 "id": "settings.workspace.form.buttonSave",
3312 "start": {
3313 "column": 14,
3314 "line": 23
3315 }
3316 },
3317 {
3318 "defaultMessage": "!!!Name",
3319 "end": {
3320 "column": 3,
3321 "line": 30
3322 },
3323 "file": "src/features/workspaces/components/EditWorkspaceForm.js",
3324 "id": "settings.workspace.form.name",
3325 "start": {
3326 "column": 8,
3327 "line": 27
3328 }
3329 },
3330 {
3331 "defaultMessage": "!!!Your workspaces",
3332 "end": {
3333 "column": 3,
3334 "line": 34
3335 },
3336 "file": "src/features/workspaces/components/EditWorkspaceForm.js",
3337 "id": "settings.workspace.form.yourWorkspaces",
3338 "start": {
3339 "column": 18,
3340 "line": 31
3341 }
3342 },
3343 {
3344 "defaultMessage": "!!!Services in this Workspace",
3345 "end": {
3346 "column": 3,
3347 "line": 38
3348 },
3349 "file": "src/features/workspaces/components/EditWorkspaceForm.js",
3350 "id": "settings.workspace.form.servicesInWorkspaceHeadline",
3351 "start": {
3352 "column": 31,
3353 "line": 35
3354 }
3355 }
3356 ],
3357 "path": "src/features/workspaces/components/EditWorkspaceForm.json"
3358 },
3359 {
3360 "descriptors": [
3361 {
3362 "defaultMessage": "!!!Workspaces",
3363 "end": {
3364 "column": 3,
3365 "line": 19
3366 },
3367 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
3368 "id": "workspaceDrawer.headline",
3369 "start": {
3370 "column": 12,
3371 "line": 16
3372 }
3373 },
3374 {
3375 "defaultMessage": "!!!All services",
3376 "end": {
3377 "column": 3,
3378 "line": 23
3379 },
3380 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
3381 "id": "workspaceDrawer.allServices",
3382 "start": {
3383 "column": 15,
3384 "line": 20
3385 }
3386 },
3387 {
3388 "defaultMessage": "!!!Workspaces settings",
3389 "end": {
3390 "column": 3,
3391 "line": 27
3392 },
3393 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
3394 "id": "workspaceDrawer.workspacesSettingsTooltip",
3395 "start": {
3396 "column": 29,
3397 "line": 24
3398 }
3399 },
3400 {
3401 "defaultMessage": "!!!Info about workspace feature",
3402 "end": {
3403 "column": 3,
3404 "line": 31
3405 },
3406 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
3407 "id": "workspaceDrawer.workspaceFeatureInfo",
3408 "start": {
3409 "column": 24,
3410 "line": 28
3411 }
3412 },
3413 {
3414 "defaultMessage": "!!!Create your first workspace",
3415 "end": {
3416 "column": 3,
3417 "line": 35
3418 },
3419 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
3420 "id": "workspaceDrawer.premiumCtaButtonLabel",
3421 "start": {
3422 "column": 25,
3423 "line": 32
3424 }
3425 },
3426 {
3427 "defaultMessage": "!!!Reactivate premium account",
3428 "end": {
3429 "column": 3,
3430 "line": 39
3431 },
3432 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
3433 "id": "workspaceDrawer.reactivatePremiumAccountLabel",
3434 "start": {
3435 "column": 28,
3436 "line": 36
3437 }
3438 },
3439 {
3440 "defaultMessage": "!!!add new workspace",
3441 "end": {
3442 "column": 3,
3443 "line": 43
3444 },
3445 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
3446 "id": "workspaceDrawer.addNewWorkspaceLabel",
3447 "start": {
3448 "column": 24,
3449 "line": 40
3450 }
3451 },
3452 {
3453 "defaultMessage": "!!!Premium feature",
3454 "end": {
3455 "column": 3,
3456 "line": 47
3457 },
3458 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
3459 "id": "workspaceDrawer.proFeatureBadge",
3460 "start": {
3461 "column": 23,
3462 "line": 44
3463 }
3464 }
3465 ],
3466 "path": "src/features/workspaces/components/WorkspaceDrawer.json"
3467 },
3468 {
3469 "descriptors": [
3470 {
3471 "defaultMessage": "!!!No services added yet",
3472 "end": {
3473 "column": 3,
3474 "line": 15
3475 },
3476 "file": "src/features/workspaces/components/WorkspaceDrawerItem.js",
3477 "id": "workspaceDrawer.item.noServicesAddedYet",
3478 "start": {
3479 "column": 22,
3480 "line": 12
3481 }
3482 },
3483 {
3484 "defaultMessage": "!!!edit",
3485 "end": {
3486 "column": 3,
3487 "line": 19
3488 },
3489 "file": "src/features/workspaces/components/WorkspaceDrawerItem.js",
3490 "id": "workspaceDrawer.item.contextMenuEdit",
3491 "start": {
3492 "column": 19,
3493 "line": 16
3494 }
3495 }
3496 ],
3497 "path": "src/features/workspaces/components/WorkspaceDrawerItem.json"
3498 },
3499 {
3500 "descriptors": [
3501 {
3502 "defaultMessage": "!!!Your workspaces",
3503 "end": {
3504 "column": 3,
3505 "line": 20
3506 },
3507 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
3508 "id": "settings.workspaces.headline",
3509 "start": {
3510 "column": 12,
3511 "line": 17
3512 }
3513 },
3514 {
3515 "defaultMessage": "!!!You haven't added any workspaces yet.",
3516 "end": {
3517 "column": 3,
3518 "line": 24
3519 },
3520 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
3521 "id": "settings.workspaces.noWorkspacesAdded",
3522 "start": {
3523 "column": 19,
3524 "line": 21
3525 }
3526 },
3527 {
3528 "defaultMessage": "!!!Could not load your workspaces",
3529 "end": {
3530 "column": 3,
3531 "line": 28
3532 },
3533 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
3534 "id": "settings.workspaces.workspacesRequestFailed",
3535 "start": {
3536 "column": 27,
3537 "line": 25
3538 }
3539 },
3540 {
3541 "defaultMessage": "!!!Try again",
3542 "end": {
3543 "column": 3,
3544 "line": 32
3545 },
3546 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
3547 "id": "settings.workspaces.tryReloadWorkspaces",
3548 "start": {
3549 "column": 23,
3550 "line": 29
3551 }
3552 },
3553 {
3554 "defaultMessage": "!!!Your changes have been saved",
3555 "end": {
3556 "column": 3,
3557 "line": 36
3558 },
3559 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
3560 "id": "settings.workspaces.updatedInfo",
3561 "start": {
3562 "column": 15,
3563 "line": 33
3564 }
3565 },
3566 {
3567 "defaultMessage": "!!!Workspace has been deleted",
3568 "end": {
3569 "column": 3,
3570 "line": 40
3571 },
3572 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
3573 "id": "settings.workspaces.deletedInfo",
3574 "start": {
3575 "column": 15,
3576 "line": 37
3577 }
3578 },
3579 {
3580 "defaultMessage": "!!!Info about workspace feature",
3581 "end": {
3582 "column": 3,
3583 "line": 44
3584 },
3585 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
3586 "id": "settings.workspaces.workspaceFeatureInfo",
3587 "start": {
3588 "column": 24,
3589 "line": 41
3590 }
3591 },
3592 {
3593 "defaultMessage": "!!!Less is More: Introducing Franz Workspaces",
3594 "end": {
3595 "column": 3,
3596 "line": 48
3597 },
3598 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
3599 "id": "settings.workspaces.workspaceFeatureHeadline",
3600 "start": {
3601 "column": 28,
3602 "line": 45
3603 }
3604 }
3605 ],
3606 "path": "src/features/workspaces/components/WorkspacesDashboard.json"
3607 },
3608 {
3609 "descriptors": [
3610 {
3611 "defaultMessage": "!!!Switching to",
3612 "end": {
3613 "column": 3,
3614 "line": 15
3615 },
3616 "file": "src/features/workspaces/components/WorkspaceSwitchingIndicator.js",
3617 "id": "workspaces.switchingIndicator.switchingTo",
3618 "start": {
3619 "column": 15,
3620 "line": 12
3621 }
3622 }
3623 ],
3624 "path": "src/features/workspaces/components/WorkspaceSwitchingIndicator.json"
3625 },
3626 {
3627 "descriptors": [
3628 {
3629 "defaultMessage": "!!!Field is required",
3630 "end": {
3631 "column": 3,
3632 "line": 7
3633 },
3634 "file": "src/helpers/validation-helpers.js",
3635 "id": "validation.required",
3636 "start": {
3637 "column": 12,
3638 "line": 4
3639 }
3640 },
3641 {
3642 "defaultMessage": "!!!Email not valid",
3643 "end": {
3644 "column": 3,
3645 "line": 11
3646 },
3647 "file": "src/helpers/validation-helpers.js",
3648 "id": "validation.email",
3649 "start": {
3650 "column": 9,
3651 "line": 8
3652 }
3653 },
3654 {
3655 "defaultMessage": "!!!Not a valid URL",
3656 "end": {
3657 "column": 3,
3658 "line": 15
3659 },
3660 "file": "src/helpers/validation-helpers.js",
3661 "id": "validation.url",
3662 "start": {
3663 "column": 7,
3664 "line": 12
3665 }
3666 },
3667 {
3668 "defaultMessage": "!!!Too few characters",
3669 "end": {
3670 "column": 3,
3671 "line": 19
3672 },
3673 "file": "src/helpers/validation-helpers.js",
3674 "id": "validation.minLength",
3675 "start": {
3676 "column": 13,
3677 "line": 16
3678 }
3679 },
3680 {
3681 "defaultMessage": "!!!At least one is required",
3682 "end": {
3683 "column": 3,
3684 "line": 23
3685 },
3686 "file": "src/helpers/validation-helpers.js",
3687 "id": "validation.oneRequired",
3688 "start": {
3689 "column": 15,
3690 "line": 20
3691 }
3692 }
3693 ],
3694 "path": "src/helpers/validation-helpers.json"
3695 },
3696 {
3697 "descriptors": [
3698 {
3699 "defaultMessage": "!!!Can't connect to Franz Online Services",
3700 "end": {
3701 "column": 3,
3702 "line": 7
3703 },
3704 "file": "src/i18n/globalMessages.js",
3705 "id": "global.api.unhealthy",
3706 "start": {
3707 "column": 16,
3708 "line": 4
3709 }
3710 },
3711 {
3712 "defaultMessage": "!!!You are not connected to the internet.",
3713 "end": {
3714 "column": 3,
3715 "line": 11
3716 },
3717 "file": "src/i18n/globalMessages.js",
3718 "id": "global.notConnectedToTheInternet",
3719 "start": {
3720 "column": 29,
3721 "line": 8
3722 }
3723 },
3724 {
3725 "defaultMessage": "!!!Spell checking language",
3726 "end": {
3727 "column": 3,
3728 "line": 15
3729 },
3730 "file": "src/i18n/globalMessages.js",
3731 "id": "global.spellchecking.language",
3732 "start": {
3733 "column": 24,
3734 "line": 12
3735 }
3736 },
3737 {
3738 "defaultMessage": "!!!Use System Default ({default})",
3739 "end": {
3740 "column": 3,
3741 "line": 19
3742 },
3743 "file": "src/i18n/globalMessages.js",
3744 "id": "global.spellchecker.useDefault",
3745 "start": {
3746 "column": 29,
3747 "line": 16
3748 }
3749 },
3750 {
3751 "defaultMessage": "!!!Detect language automatically",
3752 "end": {
3753 "column": 3,
3754 "line": 23
3755 },
3756 "file": "src/i18n/globalMessages.js",
3757 "id": "global.spellchecking.autodetect",
3758 "start": {
3759 "column": 34,
3760 "line": 20
3761 }
3762 },
3763 {
3764 "defaultMessage": "!!!Automatic",
3765 "end": {
3766 "column": 3,
3767 "line": 27
3768 },
3769 "file": "src/i18n/globalMessages.js",
3770 "id": "global.spellchecking.autodetect.short",
3771 "start": {
3772 "column": 39,
3773 "line": 24
3774 }
3775 }
3776 ],
3777 "path": "src/i18n/globalMessages.json"
3778 },
3779 {
3780 "descriptors": [
3781 {
3782 "defaultMessage": "!!!Edit",
3783 "end": {
3784 "column": 3,
3785 "line": 17
3786 },
3787 "file": "src/lib/Menu.js",
3788 "id": "menu.edit",
3789 "start": {
3790 "column": 8,
3791 "line": 14
3792 }
3793 },
3794 {
3795 "defaultMessage": "!!!Undo",
3796 "end": {
3797 "column": 3,
3798 "line": 21
3799 },
3800 "file": "src/lib/Menu.js",
3801 "id": "menu.edit.undo",
3802 "start": {
3803 "column": 8,
3804 "line": 18
3805 }
3806 },
3807 {
3808 "defaultMessage": "!!!Redo",
3809 "end": {
3810 "column": 3,
3811 "line": 25
3812 },
3813 "file": "src/lib/Menu.js",
3814 "id": "menu.edit.redo",
3815 "start": {
3816 "column": 8,
3817 "line": 22
3818 }
3819 },
3820 {
3821 "defaultMessage": "!!!Cut",
3822 "end": {
3823 "column": 3,
3824 "line": 29
3825 },
3826 "file": "src/lib/Menu.js",
3827 "id": "menu.edit.cut",
3828 "start": {
3829 "column": 7,
3830 "line": 26
3831 }
3832 },
3833 {
3834 "defaultMessage": "!!!Copy",
3835 "end": {
3836 "column": 3,
3837 "line": 33
3838 },
3839 "file": "src/lib/Menu.js",
3840 "id": "menu.edit.copy",
3841 "start": {
3842 "column": 8,
3843 "line": 30
3844 }
3845 },
3846 {
3847 "defaultMessage": "!!!Paste",
3848 "end": {
3849 "column": 3,
3850 "line": 37
3851 },
3852 "file": "src/lib/Menu.js",
3853 "id": "menu.edit.paste",
3854 "start": {
3855 "column": 9,
3856 "line": 34
3857 }
3858 },
3859 {
3860 "defaultMessage": "!!!Paste And Match Style",
3861 "end": {
3862 "column": 3,
3863 "line": 41
3864 },
3865 "file": "src/lib/Menu.js",
3866 "id": "menu.edit.pasteAndMatchStyle",
3867 "start": {
3868 "column": 22,
3869 "line": 38
3870 }
3871 },
3872 {
3873 "defaultMessage": "!!!Delete",
3874 "end": {
3875 "column": 3,
3876 "line": 45
3877 },
3878 "file": "src/lib/Menu.js",
3879 "id": "menu.edit.delete",
3880 "start": {
3881 "column": 10,
3882 "line": 42
3883 }
3884 },
3885 {
3886 "defaultMessage": "!!!Select All",
3887 "end": {
3888 "column": 3,
3889 "line": 49
3890 },
3891 "file": "src/lib/Menu.js",
3892 "id": "menu.edit.selectAll",
3893 "start": {
3894 "column": 13,
3895 "line": 46
3896 }
3897 },
3898 {
3899 "defaultMessage": "!!!Speech",
3900 "end": {
3901 "column": 3,
3902 "line": 53
3903 },
3904 "file": "src/lib/Menu.js",
3905 "id": "menu.edit.speech",
3906 "start": {
3907 "column": 10,
3908 "line": 50
3909 }
3910 },
3911 {
3912 "defaultMessage": "!!!Start Speaking",
3913 "end": {
3914 "column": 3,
3915 "line": 57
3916 },
3917 "file": "src/lib/Menu.js",
3918 "id": "menu.edit.startSpeaking",
3919 "start": {
3920 "column": 17,
3921 "line": 54
3922 }
3923 },
3924 {
3925 "defaultMessage": "!!!Stop Speaking",
3926 "end": {
3927 "column": 3,
3928 "line": 61
3929 },
3930 "file": "src/lib/Menu.js",
3931 "id": "menu.edit.stopSpeaking",
3932 "start": {
3933 "column": 16,
3934 "line": 58
3935 }
3936 },
3937 {
3938 "defaultMessage": "!!!Start Dictation",
3939 "end": {
3940 "column": 3,
3941 "line": 65
3942 },
3943 "file": "src/lib/Menu.js",
3944 "id": "menu.edit.startDictation",
3945 "start": {
3946 "column": 18,
3947 "line": 62
3948 }
3949 },
3950 {
3951 "defaultMessage": "!!!Emoji & Symbols",
3952 "end": {
3953 "column": 3,
3954 "line": 69
3955 },
3956 "file": "src/lib/Menu.js",
3957 "id": "menu.edit.emojiSymbols",
3958 "start": {
3959 "column": 16,
3960 "line": 66
3961 }
3962 },
3963 {
3964 "defaultMessage": "!!!Actual Size",
3965 "end": {
3966 "column": 3,
3967 "line": 73
3968 },
3969 "file": "src/lib/Menu.js",
3970 "id": "menu.view.resetZoom",
3971 "start": {
3972 "column": 13,
3973 "line": 70
3974 }
3975 },
3976 {
3977 "defaultMessage": "!!!Zoom In",
3978 "end": {
3979 "column": 3,
3980 "line": 77
3981 },
3982 "file": "src/lib/Menu.js",
3983 "id": "menu.view.zoomIn",
3984 "start": {
3985 "column": 10,
3986 "line": 74
3987 }
3988 },
3989 {
3990 "defaultMessage": "!!!Zoom Out",
3991 "end": {
3992 "column": 3,
3993 "line": 81
3994 },
3995 "file": "src/lib/Menu.js",
3996 "id": "menu.view.zoomOut",
3997 "start": {
3998 "column": 11,
3999 "line": 78
4000 }
4001 },
4002 {
4003 "defaultMessage": "!!!Enter Full Screen",
4004 "end": {
4005 "column": 3,
4006 "line": 85
4007 },
4008 "file": "src/lib/Menu.js",
4009 "id": "menu.view.enterFullScreen",
4010 "start": {
4011 "column": 19,
4012 "line": 82
4013 }
4014 },
4015 {
4016 "defaultMessage": "!!!Exit Full Screen",
4017 "end": {
4018 "column": 3,
4019 "line": 89
4020 },
4021 "file": "src/lib/Menu.js",
4022 "id": "menu.view.exitFullScreen",
4023 "start": {
4024 "column": 18,
4025 "line": 86
4026 }
4027 },
4028 {
4029 "defaultMessage": "!!!Toggle Full Screen",
4030 "end": {
4031 "column": 3,
4032 "line": 93
4033 },
4034 "file": "src/lib/Menu.js",
4035 "id": "menu.view.toggleFullScreen",
4036 "start": {
4037 "column": 20,
4038 "line": 90
4039 }
4040 },
4041 {
4042 "defaultMessage": "!!!Toggle Developer Tools",
4043 "end": {
4044 "column": 3,
4045 "line": 97
4046 },
4047 "file": "src/lib/Menu.js",
4048 "id": "menu.view.toggleDevTools",
4049 "start": {
4050 "column": 18,
4051 "line": 94
4052 }
4053 },
4054 {
4055 "defaultMessage": "!!!Toggle Service Developer Tools",
4056 "end": {
4057 "column": 3,
4058 "line": 101
4059 },
4060 "file": "src/lib/Menu.js",
4061 "id": "menu.view.toggleServiceDevTools",
4062 "start": {
4063 "column": 25,
4064 "line": 98
4065 }
4066 },
4067 {
4068 "defaultMessage": "!!!Reload Service",
4069 "end": {
4070 "column": 3,
4071 "line": 105
4072 },
4073 "file": "src/lib/Menu.js",
4074 "id": "menu.view.reloadService",
4075 "start": {
4076 "column": 17,
4077 "line": 102
4078 }
4079 },
4080 {
4081 "defaultMessage": "!!!Reload Franz",
4082 "end": {
4083 "column": 3,
4084 "line": 109
4085 },
4086 "file": "src/lib/Menu.js",
4087 "id": "menu.view.reloadFranz",
4088 "start": {
4089 "column": 15,
4090 "line": 106
4091 }
4092 },
4093 {
4094 "defaultMessage": "!!!Minimize",
4095 "end": {
4096 "column": 3,
4097 "line": 113
4098 },
4099 "file": "src/lib/Menu.js",
4100 "id": "menu.window.minimize",
4101 "start": {
4102 "column": 12,
4103 "line": 110
4104 }
4105 },
4106 {
4107 "defaultMessage": "!!!Close",
4108 "end": {
4109 "column": 3,
4110 "line": 117
4111 },
4112 "file": "src/lib/Menu.js",
4113 "id": "menu.window.close",
4114 "start": {
4115 "column": 9,
4116 "line": 114
4117 }
4118 },
4119 {
4120 "defaultMessage": "!!!Learn More",
4121 "end": {
4122 "column": 3,
4123 "line": 121
4124 },
4125 "file": "src/lib/Menu.js",
4126 "id": "menu.help.learnMore",
4127 "start": {
4128 "column": 13,
4129 "line": 118
4130 }
4131 },
4132 {
4133 "defaultMessage": "!!!Changelog",
4134 "end": {
4135 "column": 3,
4136 "line": 125
4137 },
4138 "file": "src/lib/Menu.js",
4139 "id": "menu.help.changelog",
4140 "start": {
4141 "column": 13,
4142 "line": 122
4143 }
4144 },
4145 {
4146 "defaultMessage": "!!!Support",
4147 "end": {
4148 "column": 3,
4149 "line": 129
4150 },
4151 "file": "src/lib/Menu.js",
4152 "id": "menu.help.support",
4153 "start": {
4154 "column": 11,
4155 "line": 126
4156 }
4157 },
4158 {
4159 "defaultMessage": "!!!Terms of Service",
4160 "end": {
4161 "column": 3,
4162 "line": 133
4163 },
4164 "file": "src/lib/Menu.js",
4165 "id": "menu.help.tos",
4166 "start": {
4167 "column": 7,
4168 "line": 130
4169 }
4170 },
4171 {
4172 "defaultMessage": "!!!Privacy Statement",
4173 "end": {
4174 "column": 3,
4175 "line": 137
4176 },
4177 "file": "src/lib/Menu.js",
4178 "id": "menu.help.privacy",
4179 "start": {
4180 "column": 11,
4181 "line": 134
4182 }
4183 },
4184 {
4185 "defaultMessage": "!!!File",
4186 "end": {
4187 "column": 3,
4188 "line": 141
4189 },
4190 "file": "src/lib/Menu.js",
4191 "id": "menu.file",
4192 "start": {
4193 "column": 8,
4194 "line": 138
4195 }
4196 },
4197 {
4198 "defaultMessage": "!!!View",
4199 "end": {
4200 "column": 3,
4201 "line": 145
4202 },
4203 "file": "src/lib/Menu.js",
4204 "id": "menu.view",
4205 "start": {
4206 "column": 8,
4207 "line": 142
4208 }
4209 },
4210 {
4211 "defaultMessage": "!!!Services",
4212 "end": {
4213 "column": 3,
4214 "line": 149
4215 },
4216 "file": "src/lib/Menu.js",
4217 "id": "menu.services",
4218 "start": {
4219 "column": 12,
4220 "line": 146
4221 }
4222 },
4223 {
4224 "defaultMessage": "!!!Window",
4225 "end": {
4226 "column": 3,
4227 "line": 153
4228 },
4229 "file": "src/lib/Menu.js",
4230 "id": "menu.window",
4231 "start": {
4232 "column": 10,
4233 "line": 150
4234 }
4235 },
4236 {
4237 "defaultMessage": "!!!Help",
4238 "end": {
4239 "column": 3,
4240 "line": 157
4241 },
4242 "file": "src/lib/Menu.js",
4243 "id": "menu.help",
4244 "start": {
4245 "column": 8,
4246 "line": 154
4247 }
4248 },
4249 {
4250 "defaultMessage": "!!!About Franz",
4251 "end": {
4252 "column": 3,
4253 "line": 161
4254 },
4255 "file": "src/lib/Menu.js",
4256 "id": "menu.app.about",
4257 "start": {
4258 "column": 9,
4259 "line": 158
4260 }
4261 },
4262 {
4263 "defaultMessage": "!!!What's new?",
4264 "end": {
4265 "column": 3,
4266 "line": 165
4267 },
4268 "file": "src/lib/Menu.js",
4269 "id": "menu.app.announcement",
4270 "start": {
4271 "column": 16,
4272 "line": 162
4273 }
4274 },
4275 {
4276 "defaultMessage": "!!!Settings",
4277 "end": {
4278 "column": 3,
4279 "line": 169
4280 },
4281 "file": "src/lib/Menu.js",
4282 "id": "menu.app.settings",
4283 "start": {
4284 "column": 12,
4285 "line": 166
4286 }
4287 },
4288 {
4289 "defaultMessage": "!!!Hide",
4290 "end": {
4291 "column": 3,
4292 "line": 173
4293 },
4294 "file": "src/lib/Menu.js",
4295 "id": "menu.app.hide",
4296 "start": {
4297 "column": 8,
4298 "line": 170
4299 }
4300 },
4301 {
4302 "defaultMessage": "!!!Hide Others",
4303 "end": {
4304 "column": 3,
4305 "line": 177
4306 },
4307 "file": "src/lib/Menu.js",
4308 "id": "menu.app.hideOthers",
4309 "start": {
4310 "column": 14,
4311 "line": 174
4312 }
4313 },
4314 {
4315 "defaultMessage": "!!!Unhide",
4316 "end": {
4317 "column": 3,
4318 "line": 181
4319 },
4320 "file": "src/lib/Menu.js",
4321 "id": "menu.app.unhide",
4322 "start": {
4323 "column": 10,
4324 "line": 178
4325 }
4326 },
4327 {
4328 "defaultMessage": "!!!Quit",
4329 "end": {
4330 "column": 3,
4331 "line": 185
4332 },
4333 "file": "src/lib/Menu.js",
4334 "id": "menu.app.quit",
4335 "start": {
4336 "column": 8,
4337 "line": 182
4338 }
4339 },
4340 {
4341 "defaultMessage": "!!!Add New Service...",
4342 "end": {
4343 "column": 3,
4344 "line": 189
4345 },
4346 "file": "src/lib/Menu.js",
4347 "id": "menu.services.addNewService",
4348 "start": {
4349 "column": 17,
4350 "line": 186
4351 }
4352 },
4353 {
4354 "defaultMessage": "!!!Add New Workspace...",
4355 "end": {
4356 "column": 3,
4357 "line": 193
4358 },
4359 "file": "src/lib/Menu.js",
4360 "id": "menu.workspaces.addNewWorkspace",
4361 "start": {
4362 "column": 19,
4363 "line": 190
4364 }
4365 },
4366 {
4367 "defaultMessage": "!!!Open workspace drawer",
4368 "end": {
4369 "column": 3,
4370 "line": 197
4371 },
4372 "file": "src/lib/Menu.js",
4373 "id": "menu.workspaces.openWorkspaceDrawer",
4374 "start": {
4375 "column": 23,
4376 "line": 194
4377 }
4378 },
4379 {
4380 "defaultMessage": "!!!Close workspace drawer",
4381 "end": {
4382 "column": 3,
4383 "line": 201
4384 },
4385 "file": "src/lib/Menu.js",
4386 "id": "menu.workspaces.closeWorkspaceDrawer",
4387 "start": {
4388 "column": 24,
4389 "line": 198
4390 }
4391 },
4392 {
4393 "defaultMessage": "!!!Activate next service...",
4394 "end": {
4395 "column": 3,
4396 "line": 205
4397 },
4398 "file": "src/lib/Menu.js",
4399 "id": "menu.services.setNextServiceActive",
4400 "start": {
4401 "column": 23,
4402 "line": 202
4403 }
4404 },
4405 {
4406 "defaultMessage": "!!!Activate previous service...",
4407 "end": {
4408 "column": 3,
4409 "line": 209
4410 },
4411 "file": "src/lib/Menu.js",
4412 "id": "menu.services.activatePreviousService",
4413 "start": {
4414 "column": 27,
4415 "line": 206
4416 }
4417 },
4418 {
4419 "defaultMessage": "!!!Disable notifications & audio",
4420 "end": {
4421 "column": 3,
4422 "line": 213
4423 },
4424 "file": "src/lib/Menu.js",
4425 "id": "sidebar.muteApp",
4426 "start": {
4427 "column": 11,
4428 "line": 210
4429 }
4430 },
4431 {
4432 "defaultMessage": "!!!Enable notifications & audio",
4433 "end": {
4434 "column": 3,
4435 "line": 217
4436 },
4437 "file": "src/lib/Menu.js",
4438 "id": "sidebar.unmuteApp",
4439 "start": {
4440 "column": 13,
4441 "line": 214
4442 }
4443 },
4444 {
4445 "defaultMessage": "!!!Workspaces",
4446 "end": {
4447 "column": 3,
4448 "line": 221
4449 },
4450 "file": "src/lib/Menu.js",
4451 "id": "menu.workspaces",
4452 "start": {
4453 "column": 14,
4454 "line": 218
4455 }
4456 },
4457 {
4458 "defaultMessage": "!!!Default",
4459 "end": {
4460 "column": 3,
4461 "line": 225
4462 },
4463 "file": "src/lib/Menu.js",
4464 "id": "menu.workspaces.defaultWorkspace",
4465 "start": {
4466 "column": 20,
4467 "line": 222
4468 }
4469 }
4470 ],
4471 "path": "src/lib/Menu.json"
4472 }
4473] \ No newline at end of file
diff --git a/src/i18n/locales/en-US.json b/src/i18n/locales/en-US.json
index 07602e61f..70b869557 100644
--- a/src/i18n/locales/en-US.json
+++ b/src/i18n/locales/en-US.json
@@ -164,6 +164,7 @@
164 "settings.app.headlineGeneral": "General", 164 "settings.app.headlineGeneral": "General",
165 "settings.app.headlineLanguage": "Language", 165 "settings.app.headlineLanguage": "Language",
166 "settings.app.headlineUpdates": "Updates", 166 "settings.app.headlineUpdates": "Updates",
167 "settings.app.languageDisclaimer": "Official translations are English & German. All other languages are community based translations.",
167 "settings.app.restartRequired": "Changes require restart", 168 "settings.app.restartRequired": "Changes require restart",
168 "settings.app.subheadlineCache": "Cache", 169 "settings.app.subheadlineCache": "Cache",
169 "settings.app.translationHelp": "Help us to translate Franz into your language.", 170 "settings.app.translationHelp": "Help us to translate Franz into your language.",
@@ -319,4 +320,4 @@
319 "workspaceDrawer.workspaceFeatureInfo": "<p>Franz Workspaces let you focus on what’s important right now. Set up different sets of services and easily switch between them at any time.</p><p>You decide which services you need when and where, so we can help you stay on top of your game - or easily switch off from work whenever you want.</p>", 320 "workspaceDrawer.workspaceFeatureInfo": "<p>Franz Workspaces let you focus on what’s important right now. Set up different sets of services and easily switch between them at any time.</p><p>You decide which services you need when and where, so we can help you stay on top of your game - or easily switch off from work whenever you want.</p>",
320 "workspaceDrawer.workspacesSettingsTooltip": "Edit workspaces settings", 321 "workspaceDrawer.workspacesSettingsTooltip": "Edit workspaces settings",
321 "workspaces.switchingIndicator.switchingTo": "Switching to" 322 "workspaces.switchingIndicator.switchingTo": "Switching to"
322} \ No newline at end of file 323}
diff --git a/src/i18n/messages/src/components/auth/Import.json b/src/i18n/messages/src/components/auth/Import.json
deleted file mode 100644
index 264fc729b..000000000
--- a/src/i18n/messages/src/components/auth/Import.json
+++ /dev/null
@@ -1,54 +0,0 @@
1[
2 {
3 "id": "import.headline",
4 "defaultMessage": "!!!Import your Franz 4 services",
5 "file": "src/components/auth/Import.js",
6 "start": {
7 "line": 13,
8 "column": 12
9 },
10 "end": {
11 "line": 16,
12 "column": 3
13 }
14 },
15 {
16 "id": "import.notSupportedHeadline",
17 "defaultMessage": "!!!Services not yet supported in Franz 5",
18 "file": "src/components/auth/Import.js",
19 "start": {
20 "line": 17,
21 "column": 24
22 },
23 "end": {
24 "line": 20,
25 "column": 3
26 }
27 },
28 {
29 "id": "import.submit.label",
30 "defaultMessage": "!!!Import {count} services",
31 "file": "src/components/auth/Import.js",
32 "start": {
33 "line": 21,
34 "column": 21
35 },
36 "end": {
37 "line": 24,
38 "column": 3
39 }
40 },
41 {
42 "id": "import.skip.label",
43 "defaultMessage": "!!!I want to add services manually",
44 "file": "src/components/auth/Import.js",
45 "start": {
46 "line": 25,
47 "column": 19
48 },
49 "end": {
50 "line": 28,
51 "column": 3
52 }
53 }
54] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/auth/Invite.json b/src/i18n/messages/src/components/auth/Invite.json
deleted file mode 100644
index 57c9bddcf..000000000
--- a/src/i18n/messages/src/components/auth/Invite.json
+++ /dev/null
@@ -1,93 +0,0 @@
1[
2 {
3 "id": "settings.invite.headline",
4 "defaultMessage": "!!!Invite Friends",
5 "file": "src/components/auth/Invite.js",
6 "start": {
7 "line": 16,
8 "column": 20
9 },
10 "end": {
11 "line": 19,
12 "column": 3
13 }
14 },
15 {
16 "id": "invite.headline.friends",
17 "defaultMessage": "!!!Invite 3 of your friends or colleagues",
18 "file": "src/components/auth/Invite.js",
19 "start": {
20 "line": 20,
21 "column": 12
22 },
23 "end": {
24 "line": 23,
25 "column": 3
26 }
27 },
28 {
29 "id": "invite.name.label",
30 "defaultMessage": "!!!Name",
31 "file": "src/components/auth/Invite.js",
32 "start": {
33 "line": 24,
34 "column": 13
35 },
36 "end": {
37 "line": 27,
38 "column": 3
39 }
40 },
41 {
42 "id": "invite.email.label",
43 "defaultMessage": "!!!Email address",
44 "file": "src/components/auth/Invite.js",
45 "start": {
46 "line": 28,
47 "column": 14
48 },
49 "end": {
50 "line": 31,
51 "column": 3
52 }
53 },
54 {
55 "id": "invite.submit.label",
56 "defaultMessage": "!!!Send invites",
57 "file": "src/components/auth/Invite.js",
58 "start": {
59 "line": 32,
60 "column": 21
61 },
62 "end": {
63 "line": 35,
64 "column": 3
65 }
66 },
67 {
68 "id": "invite.skip.label",
69 "defaultMessage": "!!!I want to do this later",
70 "file": "src/components/auth/Invite.js",
71 "start": {
72 "line": 36,
73 "column": 19
74 },
75 "end": {
76 "line": 39,
77 "column": 3
78 }
79 },
80 {
81 "id": "invite.successInfo",
82 "defaultMessage": "!!!Invitations sent successfully",
83 "file": "src/components/auth/Invite.js",
84 "start": {
85 "line": 40,
86 "column": 21
87 },
88 "end": {
89 "line": 43,
90 "column": 3
91 }
92 }
93] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/auth/Login.json b/src/i18n/messages/src/components/auth/Login.json
deleted file mode 100644
index 177f6000b..000000000
--- a/src/i18n/messages/src/components/auth/Login.json
+++ /dev/null
@@ -1,119 +0,0 @@
1[
2 {
3 "id": "login.headline",
4 "defaultMessage": "!!!Sign in",
5 "file": "src/components/auth/Login.js",
6 "start": {
7 "line": 17,
8 "column": 12
9 },
10 "end": {
11 "line": 20,
12 "column": 3
13 }
14 },
15 {
16 "id": "login.email.label",
17 "defaultMessage": "!!!Email address",
18 "file": "src/components/auth/Login.js",
19 "start": {
20 "line": 21,
21 "column": 14
22 },
23 "end": {
24 "line": 24,
25 "column": 3
26 }
27 },
28 {
29 "id": "login.password.label",
30 "defaultMessage": "!!!Password",
31 "file": "src/components/auth/Login.js",
32 "start": {
33 "line": 25,
34 "column": 17
35 },
36 "end": {
37 "line": 28,
38 "column": 3
39 }
40 },
41 {
42 "id": "login.submit.label",
43 "defaultMessage": "!!!Sign in",
44 "file": "src/components/auth/Login.js",
45 "start": {
46 "line": 29,
47 "column": 21
48 },
49 "end": {
50 "line": 32,
51 "column": 3
52 }
53 },
54 {
55 "id": "login.invalidCredentials",
56 "defaultMessage": "!!!Email or password not valid",
57 "file": "src/components/auth/Login.js",
58 "start": {
59 "line": 33,
60 "column": 22
61 },
62 "end": {
63 "line": 36,
64 "column": 3
65 }
66 },
67 {
68 "id": "login.tokenExpired",
69 "defaultMessage": "!!!Your session expired, please login again.",
70 "file": "src/components/auth/Login.js",
71 "start": {
72 "line": 37,
73 "column": 16
74 },
75 "end": {
76 "line": 40,
77 "column": 3
78 }
79 },
80 {
81 "id": "login.serverLogout",
82 "defaultMessage": "!!!Your session expired, please login again.",
83 "file": "src/components/auth/Login.js",
84 "start": {
85 "line": 41,
86 "column": 16
87 },
88 "end": {
89 "line": 44,
90 "column": 3
91 }
92 },
93 {
94 "id": "login.link.signup",
95 "defaultMessage": "!!!Create a free account",
96 "file": "src/components/auth/Login.js",
97 "start": {
98 "line": 45,
99 "column": 14
100 },
101 "end": {
102 "line": 48,
103 "column": 3
104 }
105 },
106 {
107 "id": "login.link.password",
108 "defaultMessage": "!!!Forgot password",
109 "file": "src/components/auth/Login.js",
110 "start": {
111 "line": 49,
112 "column": 16
113 },
114 "end": {
115 "line": 52,
116 "column": 3
117 }
118 }
119] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/auth/Password.json b/src/i18n/messages/src/components/auth/Password.json
deleted file mode 100644
index f335b3acb..000000000
--- a/src/i18n/messages/src/components/auth/Password.json
+++ /dev/null
@@ -1,93 +0,0 @@
1[
2 {
3 "id": "password.headline",
4 "defaultMessage": "!!!Forgot password",
5 "file": "src/components/auth/Password.js",
6 "start": {
7 "line": 14,
8 "column": 12
9 },
10 "end": {
11 "line": 17,
12 "column": 3
13 }
14 },
15 {
16 "id": "password.email.label",
17 "defaultMessage": "!!!Email address",
18 "file": "src/components/auth/Password.js",
19 "start": {
20 "line": 18,
21 "column": 14
22 },
23 "end": {
24 "line": 21,
25 "column": 3
26 }
27 },
28 {
29 "id": "password.submit.label",
30 "defaultMessage": "!!!Submit",
31 "file": "src/components/auth/Password.js",
32 "start": {
33 "line": 22,
34 "column": 21
35 },
36 "end": {
37 "line": 25,
38 "column": 3
39 }
40 },
41 {
42 "id": "password.successInfo",
43 "defaultMessage": "!!!Your new password was sent to your email address",
44 "file": "src/components/auth/Password.js",
45 "start": {
46 "line": 26,
47 "column": 15
48 },
49 "end": {
50 "line": 29,
51 "column": 3
52 }
53 },
54 {
55 "id": "password.noUser",
56 "defaultMessage": "!!!No user affiliated with that email address",
57 "file": "src/components/auth/Password.js",
58 "start": {
59 "line": 30,
60 "column": 10
61 },
62 "end": {
63 "line": 33,
64 "column": 3
65 }
66 },
67 {
68 "id": "password.link.signup",
69 "defaultMessage": "!!!Create a free account",
70 "file": "src/components/auth/Password.js",
71 "start": {
72 "line": 34,
73 "column": 14
74 },
75 "end": {
76 "line": 37,
77 "column": 3
78 }
79 },
80 {
81 "id": "password.link.login",
82 "defaultMessage": "!!!Sign in to your account",
83 "file": "src/components/auth/Password.js",
84 "start": {
85 "line": 38,
86 "column": 13
87 },
88 "end": {
89 "line": 41,
90 "column": 3
91 }
92 }
93] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/auth/Pricing.json b/src/i18n/messages/src/components/auth/Pricing.json
deleted file mode 100644
index f711a55b4..000000000
--- a/src/i18n/messages/src/components/auth/Pricing.json
+++ /dev/null
@@ -1,54 +0,0 @@
1[
2 {
3 "id": "pricing.headline",
4 "defaultMessage": "!!!Support Franz",
5 "file": "src/components/auth/Pricing.js",
6 "start": {
7 "line": 13,
8 "column": 12
9 },
10 "end": {
11 "line": 16,
12 "column": 3
13 }
14 },
15 {
16 "id": "pricing.support.label",
17 "defaultMessage": "!!!Select your support plan",
18 "file": "src/components/auth/Pricing.js",
19 "start": {
20 "line": 17,
21 "column": 23
22 },
23 "end": {
24 "line": 20,
25 "column": 3
26 }
27 },
28 {
29 "id": "pricing.submit.label",
30 "defaultMessage": "!!!Support the development of Franz",
31 "file": "src/components/auth/Pricing.js",
32 "start": {
33 "line": 21,
34 "column": 21
35 },
36 "end": {
37 "line": 24,
38 "column": 3
39 }
40 },
41 {
42 "id": "pricing.link.skipPayment",
43 "defaultMessage": "!!!I don't want to support the development of Franz.",
44 "file": "src/components/auth/Pricing.js",
45 "start": {
46 "line": 25,
47 "column": 15
48 },
49 "end": {
50 "line": 28,
51 "column": 3
52 }
53 }
54] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/auth/Signup.json b/src/i18n/messages/src/components/auth/Signup.json
deleted file mode 100644
index a09745048..000000000
--- a/src/i18n/messages/src/components/auth/Signup.json
+++ /dev/null
@@ -1,158 +0,0 @@
1[
2 {
3 "id": "signup.headline",
4 "defaultMessage": "!!!Sign up",
5 "file": "src/components/auth/Signup.js",
6 "start": {
7 "line": 18,
8 "column": 12
9 },
10 "end": {
11 "line": 21,
12 "column": 3
13 }
14 },
15 {
16 "id": "signup.firstname.label",
17 "defaultMessage": "!!!Firstname",
18 "file": "src/components/auth/Signup.js",
19 "start": {
20 "line": 22,
21 "column": 18
22 },
23 "end": {
24 "line": 25,
25 "column": 3
26 }
27 },
28 {
29 "id": "signup.lastname.label",
30 "defaultMessage": "!!!Lastname",
31 "file": "src/components/auth/Signup.js",
32 "start": {
33 "line": 26,
34 "column": 17
35 },
36 "end": {
37 "line": 29,
38 "column": 3
39 }
40 },
41 {
42 "id": "signup.email.label",
43 "defaultMessage": "!!!Email address",
44 "file": "src/components/auth/Signup.js",
45 "start": {
46 "line": 30,
47 "column": 14
48 },
49 "end": {
50 "line": 33,
51 "column": 3
52 }
53 },
54 {
55 "id": "signup.company.label",
56 "defaultMessage": "!!!Company",
57 "file": "src/components/auth/Signup.js",
58 "start": {
59 "line": 34,
60 "column": 16
61 },
62 "end": {
63 "line": 37,
64 "column": 3
65 }
66 },
67 {
68 "id": "signup.password.label",
69 "defaultMessage": "!!!Password",
70 "file": "src/components/auth/Signup.js",
71 "start": {
72 "line": 38,
73 "column": 17
74 },
75 "end": {
76 "line": 41,
77 "column": 3
78 }
79 },
80 {
81 "id": "signup.legal.info",
82 "defaultMessage": "!!!By creating a Franz account you accept the",
83 "file": "src/components/auth/Signup.js",
84 "start": {
85 "line": 42,
86 "column": 13
87 },
88 "end": {
89 "line": 45,
90 "column": 3
91 }
92 },
93 {
94 "id": "signup.legal.terms",
95 "defaultMessage": "!!!Terms of service",
96 "file": "src/components/auth/Signup.js",
97 "start": {
98 "line": 46,
99 "column": 9
100 },
101 "end": {
102 "line": 49,
103 "column": 3
104 }
105 },
106 {
107 "id": "signup.legal.privacy",
108 "defaultMessage": "!!!Privacy Statement",
109 "file": "src/components/auth/Signup.js",
110 "start": {
111 "line": 50,
112 "column": 11
113 },
114 "end": {
115 "line": 53,
116 "column": 3
117 }
118 },
119 {
120 "id": "signup.submit.label",
121 "defaultMessage": "!!!Create account",
122 "file": "src/components/auth/Signup.js",
123 "start": {
124 "line": 54,
125 "column": 21
126 },
127 "end": {
128 "line": 57,
129 "column": 3
130 }
131 },
132 {
133 "id": "signup.link.login",
134 "defaultMessage": "!!!Already have an account, sign in?",
135 "file": "src/components/auth/Signup.js",
136 "start": {
137 "line": 58,
138 "column": 13
139 },
140 "end": {
141 "line": 61,
142 "column": 3
143 }
144 },
145 {
146 "id": "signup.emailDuplicate",
147 "defaultMessage": "!!!A user with that email address already exists",
148 "file": "src/components/auth/Signup.js",
149 "start": {
150 "line": 62,
151 "column": 18
152 },
153 "end": {
154 "line": 65,
155 "column": 3
156 }
157 }
158] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/auth/Welcome.json b/src/i18n/messages/src/components/auth/Welcome.json
deleted file mode 100644
index b4d2ce689..000000000
--- a/src/i18n/messages/src/components/auth/Welcome.json
+++ /dev/null
@@ -1,28 +0,0 @@
1[
2 {
3 "id": "welcome.signupButton",
4 "defaultMessage": "!!!Create a free account",
5 "file": "src/components/auth/Welcome.js",
6 "start": {
7 "line": 9,
8 "column": 16
9 },
10 "end": {
11 "line": 12,
12 "column": 3
13 }
14 },
15 {
16 "id": "welcome.loginButton",
17 "defaultMessage": "!!!Login to your account",
18 "file": "src/components/auth/Welcome.js",
19 "start": {
20 "line": 13,
21 "column": 15
22 },
23 "end": {
24 "line": 16,
25 "column": 3
26 }
27 }
28] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/layout/AppLayout.json b/src/i18n/messages/src/components/layout/AppLayout.json
deleted file mode 100644
index 4dd354afc..000000000
--- a/src/i18n/messages/src/components/layout/AppLayout.json
+++ /dev/null
@@ -1,80 +0,0 @@
1[
2 {
3 "id": "infobar.servicesUpdated",
4 "defaultMessage": "!!!Your services have been updated.",
5 "file": "src/components/layout/AppLayout.js",
6 "start": {
7 "line": 26,
8 "column": 19
9 },
10 "end": {
11 "line": 29,
12 "column": 3
13 }
14 },
15 {
16 "id": "infobar.updateAvailable",
17 "defaultMessage": "!!!A new update for Franz is available.",
18 "file": "src/components/layout/AppLayout.js",
19 "start": {
20 "line": 30,
21 "column": 19
22 },
23 "end": {
24 "line": 33,
25 "column": 3
26 }
27 },
28 {
29 "id": "infobar.buttonReloadServices",
30 "defaultMessage": "!!!Reload services",
31 "file": "src/components/layout/AppLayout.js",
32 "start": {
33 "line": 34,
34 "column": 24
35 },
36 "end": {
37 "line": 37,
38 "column": 3
39 }
40 },
41 {
42 "id": "infobar.buttonChangelog",
43 "defaultMessage": "!!!Changelog",
44 "file": "src/components/layout/AppLayout.js",
45 "start": {
46 "line": 38,
47 "column": 13
48 },
49 "end": {
50 "line": 41,
51 "column": 3
52 }
53 },
54 {
55 "id": "infobar.buttonInstallUpdate",
56 "defaultMessage": "!!!Restart & install update",
57 "file": "src/components/layout/AppLayout.js",
58 "start": {
59 "line": 42,
60 "column": 23
61 },
62 "end": {
63 "line": 45,
64 "column": 3
65 }
66 },
67 {
68 "id": "infobar.requiredRequestsFailed",
69 "defaultMessage": "!!!Could not load services and user information",
70 "file": "src/components/layout/AppLayout.js",
71 "start": {
72 "line": 46,
73 "column": 26
74 },
75 "end": {
76 "line": 49,
77 "column": 3
78 }
79 }
80] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/layout/Sidebar.json b/src/i18n/messages/src/components/layout/Sidebar.json
deleted file mode 100644
index d67adc96e..000000000
--- a/src/i18n/messages/src/components/layout/Sidebar.json
+++ /dev/null
@@ -1,80 +0,0 @@
1[
2 {
3 "id": "sidebar.settings",
4 "defaultMessage": "!!!Settings",
5 "file": "src/components/layout/Sidebar.js",
6 "start": {
7 "line": 13,
8 "column": 12
9 },
10 "end": {
11 "line": 16,
12 "column": 3
13 }
14 },
15 {
16 "id": "sidebar.addNewService",
17 "defaultMessage": "!!!Add new service",
18 "file": "src/components/layout/Sidebar.js",
19 "start": {
20 "line": 17,
21 "column": 17
22 },
23 "end": {
24 "line": 20,
25 "column": 3
26 }
27 },
28 {
29 "id": "sidebar.muteApp",
30 "defaultMessage": "!!!Disable notifications & audio",
31 "file": "src/components/layout/Sidebar.js",
32 "start": {
33 "line": 21,
34 "column": 8
35 },
36 "end": {
37 "line": 24,
38 "column": 3
39 }
40 },
41 {
42 "id": "sidebar.unmuteApp",
43 "defaultMessage": "!!!Enable notifications & audio",
44 "file": "src/components/layout/Sidebar.js",
45 "start": {
46 "line": 25,
47 "column": 10
48 },
49 "end": {
50 "line": 28,
51 "column": 3
52 }
53 },
54 {
55 "id": "sidebar.openWorkspaceDrawer",
56 "defaultMessage": "!!!Open workspace drawer",
57 "file": "src/components/layout/Sidebar.js",
58 "start": {
59 "line": 29,
60 "column": 23
61 },
62 "end": {
63 "line": 32,
64 "column": 3
65 }
66 },
67 {
68 "id": "sidebar.closeWorkspaceDrawer",
69 "defaultMessage": "!!!Close workspace drawer",
70 "file": "src/components/layout/Sidebar.js",
71 "start": {
72 "line": 33,
73 "column": 24
74 },
75 "end": {
76 "line": 36,
77 "column": 3
78 }
79 }
80] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/services/content/ErrorHandlers/WebviewErrorHandler.json b/src/i18n/messages/src/components/services/content/ErrorHandlers/WebviewErrorHandler.json
deleted file mode 100644
index c8fe802df..000000000
--- a/src/i18n/messages/src/components/services/content/ErrorHandlers/WebviewErrorHandler.json
+++ /dev/null
@@ -1,67 +0,0 @@
1[
2 {
3 "id": "service.errorHandler.headline",
4 "defaultMessage": "!!!Oh no!",
5 "file": "src/components/services/content/ErrorHandlers/WebviewErrorHandler.js",
6 "start": {
7 "line": 12,
8 "column": 12
9 },
10 "end": {
11 "line": 15,
12 "column": 3
13 }
14 },
15 {
16 "id": "service.errorHandler.text",
17 "defaultMessage": "!!!{name} has failed to load.",
18 "file": "src/components/services/content/ErrorHandlers/WebviewErrorHandler.js",
19 "start": {
20 "line": 16,
21 "column": 8
22 },
23 "end": {
24 "line": 19,
25 "column": 3
26 }
27 },
28 {
29 "id": "service.errorHandler.action",
30 "defaultMessage": "!!!Reload {name}",
31 "file": "src/components/services/content/ErrorHandlers/WebviewErrorHandler.js",
32 "start": {
33 "line": 20,
34 "column": 10
35 },
36 "end": {
37 "line": 23,
38 "column": 3
39 }
40 },
41 {
42 "id": "service.errorHandler.editAction",
43 "defaultMessage": "!!!Edit {name}",
44 "file": "src/components/services/content/ErrorHandlers/WebviewErrorHandler.js",
45 "start": {
46 "line": 24,
47 "column": 14
48 },
49 "end": {
50 "line": 27,
51 "column": 3
52 }
53 },
54 {
55 "id": "service.errorHandler.message",
56 "defaultMessage": "!!!Error:",
57 "file": "src/components/services/content/ErrorHandlers/WebviewErrorHandler.js",
58 "start": {
59 "line": 28,
60 "column": 16
61 },
62 "end": {
63 "line": 31,
64 "column": 3
65 }
66 }
67] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/services/content/ServiceDisabled.json b/src/i18n/messages/src/components/services/content/ServiceDisabled.json
deleted file mode 100644
index 8bfad28c7..000000000
--- a/src/i18n/messages/src/components/services/content/ServiceDisabled.json
+++ /dev/null
@@ -1,28 +0,0 @@
1[
2 {
3 "id": "service.disabledHandler.headline",
4 "defaultMessage": "!!!{name} is disabled",
5 "file": "src/components/services/content/ServiceDisabled.js",
6 "start": {
7 "line": 9,
8 "column": 12
9 },
10 "end": {
11 "line": 12,
12 "column": 3
13 }
14 },
15 {
16 "id": "service.disabledHandler.action",
17 "defaultMessage": "!!!Enable {name}",
18 "file": "src/components/services/content/ServiceDisabled.js",
19 "start": {
20 "line": 13,
21 "column": 10
22 },
23 "end": {
24 "line": 16,
25 "column": 3
26 }
27 }
28] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/services/content/Services.json b/src/i18n/messages/src/components/services/content/Services.json
deleted file mode 100644
index 884ab0c90..000000000
--- a/src/i18n/messages/src/components/services/content/Services.json
+++ /dev/null
@@ -1,28 +0,0 @@
1[
2 {
3 "id": "services.welcome",
4 "defaultMessage": "!!!Welcome to Franz",
5 "file": "src/components/services/content/Services.js",
6 "start": {
7 "line": 11,
8 "column": 11
9 },
10 "end": {
11 "line": 14,
12 "column": 3
13 }
14 },
15 {
16 "id": "services.getStarted",
17 "defaultMessage": "!!!Get started",
18 "file": "src/components/services/content/Services.js",
19 "start": {
20 "line": 15,
21 "column": 14
22 },
23 "end": {
24 "line": 18,
25 "column": 3
26 }
27 }
28] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/services/content/WebviewCrashHandler.json b/src/i18n/messages/src/components/services/content/WebviewCrashHandler.json
deleted file mode 100644
index c3d6c41a5..000000000
--- a/src/i18n/messages/src/components/services/content/WebviewCrashHandler.json
+++ /dev/null
@@ -1,54 +0,0 @@
1[
2 {
3 "id": "service.crashHandler.headline",
4 "defaultMessage": "!!!Oh no!",
5 "file": "src/components/services/content/WebviewCrashHandler.js",
6 "start": {
7 "line": 10,
8 "column": 12
9 },
10 "end": {
11 "line": 13,
12 "column": 3
13 }
14 },
15 {
16 "id": "service.crashHandler.text",
17 "defaultMessage": "!!!{name} has caused an error.",
18 "file": "src/components/services/content/WebviewCrashHandler.js",
19 "start": {
20 "line": 14,
21 "column": 8
22 },
23 "end": {
24 "line": 17,
25 "column": 3
26 }
27 },
28 {
29 "id": "service.crashHandler.action",
30 "defaultMessage": "!!!Reload {name}",
31 "file": "src/components/services/content/WebviewCrashHandler.js",
32 "start": {
33 "line": 18,
34 "column": 10
35 },
36 "end": {
37 "line": 21,
38 "column": 3
39 }
40 },
41 {
42 "id": "service.crashHandler.autoReload",
43 "defaultMessage": "!!!Trying to automatically restore {name} in {seconds} seconds",
44 "file": "src/components/services/content/WebviewCrashHandler.js",
45 "start": {
46 "line": 22,
47 "column": 14
48 },
49 "end": {
50 "line": 25,
51 "column": 3
52 }
53 }
54] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/services/tabs/TabItem.json b/src/i18n/messages/src/components/services/tabs/TabItem.json
deleted file mode 100644
index 08a07845c..000000000
--- a/src/i18n/messages/src/components/services/tabs/TabItem.json
+++ /dev/null
@@ -1,119 +0,0 @@
1[
2 {
3 "id": "tabs.item.reload",
4 "defaultMessage": "!!!Reload",
5 "file": "src/components/services/tabs/TabItem.js",
6 "start": {
7 "line": 15,
8 "column": 10
9 },
10 "end": {
11 "line": 18,
12 "column": 3
13 }
14 },
15 {
16 "id": "tabs.item.edit",
17 "defaultMessage": "!!!Edit",
18 "file": "src/components/services/tabs/TabItem.js",
19 "start": {
20 "line": 19,
21 "column": 8
22 },
23 "end": {
24 "line": 22,
25 "column": 3
26 }
27 },
28 {
29 "id": "tabs.item.disableNotifications",
30 "defaultMessage": "!!!Disable notifications",
31 "file": "src/components/services/tabs/TabItem.js",
32 "start": {
33 "line": 23,
34 "column": 24
35 },
36 "end": {
37 "line": 26,
38 "column": 3
39 }
40 },
41 {
42 "id": "tabs.item.enableNotification",
43 "defaultMessage": "!!!Enable notifications",
44 "file": "src/components/services/tabs/TabItem.js",
45 "start": {
46 "line": 27,
47 "column": 23
48 },
49 "end": {
50 "line": 30,
51 "column": 3
52 }
53 },
54 {
55 "id": "tabs.item.disableAudio",
56 "defaultMessage": "!!!Disable audio",
57 "file": "src/components/services/tabs/TabItem.js",
58 "start": {
59 "line": 31,
60 "column": 16
61 },
62 "end": {
63 "line": 34,
64 "column": 3
65 }
66 },
67 {
68 "id": "tabs.item.enableAudio",
69 "defaultMessage": "!!!Enable audio",
70 "file": "src/components/services/tabs/TabItem.js",
71 "start": {
72 "line": 35,
73 "column": 15
74 },
75 "end": {
76 "line": 38,
77 "column": 3
78 }
79 },
80 {
81 "id": "tabs.item.disableService",
82 "defaultMessage": "!!!Disable Service",
83 "file": "src/components/services/tabs/TabItem.js",
84 "start": {
85 "line": 39,
86 "column": 18
87 },
88 "end": {
89 "line": 42,
90 "column": 3
91 }
92 },
93 {
94 "id": "tabs.item.enableService",
95 "defaultMessage": "!!!Enable Service",
96 "file": "src/components/services/tabs/TabItem.js",
97 "start": {
98 "line": 43,
99 "column": 17
100 },
101 "end": {
102 "line": 46,
103 "column": 3
104 }
105 },
106 {
107 "id": "tabs.item.deleteService",
108 "defaultMessage": "!!!Delete Service",
109 "file": "src/components/services/tabs/TabItem.js",
110 "start": {
111 "line": 47,
112 "column": 17
113 },
114 "end": {
115 "line": 50,
116 "column": 3
117 }
118 }
119] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/settings/account/AccountDashboard.json b/src/i18n/messages/src/components/settings/account/AccountDashboard.json
deleted file mode 100644
index 603950395..000000000
--- a/src/i18n/messages/src/components/settings/account/AccountDashboard.json
+++ /dev/null
@@ -1,197 +0,0 @@
1[
2 {
3 "id": "settings.account.headline",
4 "defaultMessage": "!!!Account",
5 "file": "src/components/settings/account/AccountDashboard.js",
6 "start": {
7 "line": 15,
8 "column": 12
9 },
10 "end": {
11 "line": 18,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.account.headlineSubscription",
17 "defaultMessage": "!!!Your Subscription",
18 "file": "src/components/settings/account/AccountDashboard.js",
19 "start": {
20 "line": 19,
21 "column": 24
22 },
23 "end": {
24 "line": 22,
25 "column": 3
26 }
27 },
28 {
29 "id": "settings.account.headlineUpgrade",
30 "defaultMessage": "!!!Upgrade your Account",
31 "file": "src/components/settings/account/AccountDashboard.js",
32 "start": {
33 "line": 23,
34 "column": 19
35 },
36 "end": {
37 "line": 26,
38 "column": 3
39 }
40 },
41 {
42 "id": "settings.account.headlineInvoices",
43 "defaultMessage": "!!Invoices",
44 "file": "src/components/settings/account/AccountDashboard.js",
45 "start": {
46 "line": 27,
47 "column": 20
48 },
49 "end": {
50 "line": 30,
51 "column": 3
52 }
53 },
54 {
55 "id": "settings.account.headlineDangerZone",
56 "defaultMessage": "!!Danger Zone",
57 "file": "src/components/settings/account/AccountDashboard.js",
58 "start": {
59 "line": 31,
60 "column": 22
61 },
62 "end": {
63 "line": 34,
64 "column": 3
65 }
66 },
67 {
68 "id": "settings.account.manageSubscription.label",
69 "defaultMessage": "!!!Manage your subscription",
70 "file": "src/components/settings/account/AccountDashboard.js",
71 "start": {
72 "line": 35,
73 "column": 33
74 },
75 "end": {
76 "line": 38,
77 "column": 3
78 }
79 },
80 {
81 "id": "settings.account.accountType.basic",
82 "defaultMessage": "!!!Basic Account",
83 "file": "src/components/settings/account/AccountDashboard.js",
84 "start": {
85 "line": 39,
86 "column": 20
87 },
88 "end": {
89 "line": 42,
90 "column": 3
91 }
92 },
93 {
94 "id": "settings.account.accountType.premium",
95 "defaultMessage": "!!!Premium Supporter Account",
96 "file": "src/components/settings/account/AccountDashboard.js",
97 "start": {
98 "line": 43,
99 "column": 22
100 },
101 "end": {
102 "line": 46,
103 "column": 3
104 }
105 },
106 {
107 "id": "settings.account.account.editButton",
108 "defaultMessage": "!!!Edit Account",
109 "file": "src/components/settings/account/AccountDashboard.js",
110 "start": {
111 "line": 47,
112 "column": 21
113 },
114 "end": {
115 "line": 50,
116 "column": 3
117 }
118 },
119 {
120 "id": "settings.account.invoiceDownload",
121 "defaultMessage": "!!!Download",
122 "file": "src/components/settings/account/AccountDashboard.js",
123 "start": {
124 "line": 51,
125 "column": 19
126 },
127 "end": {
128 "line": 54,
129 "column": 3
130 }
131 },
132 {
133 "id": "settings.account.userInfoRequestFailed",
134 "defaultMessage": "!!!Could not load user information",
135 "file": "src/components/settings/account/AccountDashboard.js",
136 "start": {
137 "line": 55,
138 "column": 25
139 },
140 "end": {
141 "line": 58,
142 "column": 3
143 }
144 },
145 {
146 "id": "settings.account.tryReloadUserInfoRequest",
147 "defaultMessage": "!!!Try again",
148 "file": "src/components/settings/account/AccountDashboard.js",
149 "start": {
150 "line": 59,
151 "column": 28
152 },
153 "end": {
154 "line": 62,
155 "column": 3
156 }
157 },
158 {
159 "id": "settings.account.deleteAccount",
160 "defaultMessage": "!!!Delete account",
161 "file": "src/components/settings/account/AccountDashboard.js",
162 "start": {
163 "line": 63,
164 "column": 17
165 },
166 "end": {
167 "line": 66,
168 "column": 3
169 }
170 },
171 {
172 "id": "settings.account.deleteInfo",
173 "defaultMessage": "!!!If you don't need your Franz account any longer, you can delete your account and all related data here.",
174 "file": "src/components/settings/account/AccountDashboard.js",
175 "start": {
176 "line": 67,
177 "column": 14
178 },
179 "end": {
180 "line": 70,
181 "column": 3
182 }
183 },
184 {
185 "id": "settings.account.deleteEmailSent",
186 "defaultMessage": "!!!You have received an email with a link to confirm your account deletion. Your account and data cannot be restored!",
187 "file": "src/components/settings/account/AccountDashboard.js",
188 "start": {
189 "line": 71,
190 "column": 19
191 },
192 "end": {
193 "line": 74,
194 "column": 3
195 }
196 }
197] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/settings/navigation/SettingsNavigation.json b/src/i18n/messages/src/components/settings/navigation/SettingsNavigation.json
deleted file mode 100644
index 77b0ed8a4..000000000
--- a/src/i18n/messages/src/components/settings/navigation/SettingsNavigation.json
+++ /dev/null
@@ -1,93 +0,0 @@
1[
2 {
3 "id": "settings.navigation.availableServices",
4 "defaultMessage": "!!!Available services",
5 "file": "src/components/settings/navigation/SettingsNavigation.js",
6 "start": {
7 "line": 12,
8 "column": 21
9 },
10 "end": {
11 "line": 15,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.navigation.yourServices",
17 "defaultMessage": "!!!Your services",
18 "file": "src/components/settings/navigation/SettingsNavigation.js",
19 "start": {
20 "line": 16,
21 "column": 16
22 },
23 "end": {
24 "line": 19,
25 "column": 3
26 }
27 },
28 {
29 "id": "settings.navigation.yourWorkspaces",
30 "defaultMessage": "!!!Your workspaces",
31 "file": "src/components/settings/navigation/SettingsNavigation.js",
32 "start": {
33 "line": 20,
34 "column": 18
35 },
36 "end": {
37 "line": 23,
38 "column": 3
39 }
40 },
41 {
42 "id": "settings.navigation.account",
43 "defaultMessage": "!!!Account",
44 "file": "src/components/settings/navigation/SettingsNavigation.js",
45 "start": {
46 "line": 24,
47 "column": 11
48 },
49 "end": {
50 "line": 27,
51 "column": 3
52 }
53 },
54 {
55 "id": "settings.navigation.settings",
56 "defaultMessage": "!!!Settings",
57 "file": "src/components/settings/navigation/SettingsNavigation.js",
58 "start": {
59 "line": 28,
60 "column": 12
61 },
62 "end": {
63 "line": 31,
64 "column": 3
65 }
66 },
67 {
68 "id": "settings.navigation.inviteFriends",
69 "defaultMessage": "!!!Invite Friends",
70 "file": "src/components/settings/navigation/SettingsNavigation.js",
71 "start": {
72 "line": 32,
73 "column": 17
74 },
75 "end": {
76 "line": 35,
77 "column": 3
78 }
79 },
80 {
81 "id": "settings.navigation.logout",
82 "defaultMessage": "!!!Logout",
83 "file": "src/components/settings/navigation/SettingsNavigation.js",
84 "start": {
85 "line": 36,
86 "column": 10
87 },
88 "end": {
89 "line": 39,
90 "column": 3
91 }
92 }
93] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/settings/recipes/RecipesDashboard.json b/src/i18n/messages/src/components/settings/recipes/RecipesDashboard.json
deleted file mode 100644
index 7d9ed3283..000000000
--- a/src/i18n/messages/src/components/settings/recipes/RecipesDashboard.json
+++ /dev/null
@@ -1,106 +0,0 @@
1[
2 {
3 "id": "settings.recipes.headline",
4 "defaultMessage": "!!!Available Services",
5 "file": "src/components/settings/recipes/RecipesDashboard.js",
6 "start": {
7 "line": 15,
8 "column": 12
9 },
10 "end": {
11 "line": 18,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.searchService",
17 "defaultMessage": "!!!Search service",
18 "file": "src/components/settings/recipes/RecipesDashboard.js",
19 "start": {
20 "line": 19,
21 "column": 17
22 },
23 "end": {
24 "line": 22,
25 "column": 3
26 }
27 },
28 {
29 "id": "settings.recipes.mostPopular",
30 "defaultMessage": "!!!Most popular",
31 "file": "src/components/settings/recipes/RecipesDashboard.js",
32 "start": {
33 "line": 23,
34 "column": 22
35 },
36 "end": {
37 "line": 26,
38 "column": 3
39 }
40 },
41 {
42 "id": "settings.recipes.all",
43 "defaultMessage": "!!!All services",
44 "file": "src/components/settings/recipes/RecipesDashboard.js",
45 "start": {
46 "line": 27,
47 "column": 14
48 },
49 "end": {
50 "line": 30,
51 "column": 3
52 }
53 },
54 {
55 "id": "settings.recipes.dev",
56 "defaultMessage": "!!!Development",
57 "file": "src/components/settings/recipes/RecipesDashboard.js",
58 "start": {
59 "line": 31,
60 "column": 14
61 },
62 "end": {
63 "line": 34,
64 "column": 3
65 }
66 },
67 {
68 "id": "settings.recipes.nothingFound",
69 "defaultMessage": "!!!Sorry, but no service matched your search term.",
70 "file": "src/components/settings/recipes/RecipesDashboard.js",
71 "start": {
72 "line": 35,
73 "column": 16
74 },
75 "end": {
76 "line": 38,
77 "column": 3
78 }
79 },
80 {
81 "id": "settings.recipes.servicesSuccessfulAddedInfo",
82 "defaultMessage": "!!!Service successfully added",
83 "file": "src/components/settings/recipes/RecipesDashboard.js",
84 "start": {
85 "line": 39,
86 "column": 31
87 },
88 "end": {
89 "line": 42,
90 "column": 3
91 }
92 },
93 {
94 "id": "settings.recipes.missingService",
95 "defaultMessage": "!!!Missing a service?",
96 "file": "src/components/settings/recipes/RecipesDashboard.js",
97 "start": {
98 "line": 43,
99 "column": 18
100 },
101 "end": {
102 "line": 46,
103 "column": 3
104 }
105 }
106] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/settings/services/EditServiceForm.json b/src/i18n/messages/src/components/settings/services/EditServiceForm.json
deleted file mode 100644
index 42b741b7a..000000000
--- a/src/i18n/messages/src/components/settings/services/EditServiceForm.json
+++ /dev/null
@@ -1,288 +0,0 @@
1[
2 {
3 "id": "settings.service.form.saveButton",
4 "defaultMessage": "!!!Save service",
5 "file": "src/components/settings/services/EditServiceForm.js",
6 "start": {
7 "line": 22,
8 "column": 15
9 },
10 "end": {
11 "line": 25,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.service.form.deleteButton",
17 "defaultMessage": "!!!Delete Service",
18 "file": "src/components/settings/services/EditServiceForm.js",
19 "start": {
20 "line": 26,
21 "column": 17
22 },
23 "end": {
24 "line": 29,
25 "column": 3
26 }
27 },
28 {
29 "id": "settings.service.form.availableServices",
30 "defaultMessage": "!!!Available services",
31 "file": "src/components/settings/services/EditServiceForm.js",
32 "start": {
33 "line": 30,
34 "column": 21
35 },
36 "end": {
37 "line": 33,
38 "column": 3
39 }
40 },
41 {
42 "id": "settings.service.form.yourServices",
43 "defaultMessage": "!!!Your services",
44 "file": "src/components/settings/services/EditServiceForm.js",
45 "start": {
46 "line": 34,
47 "column": 16
48 },
49 "end": {
50 "line": 37,
51 "column": 3
52 }
53 },
54 {
55 "id": "settings.service.form.addServiceHeadline",
56 "defaultMessage": "!!!Add {name}",
57 "file": "src/components/settings/services/EditServiceForm.js",
58 "start": {
59 "line": 38,
60 "column": 22
61 },
62 "end": {
63 "line": 41,
64 "column": 3
65 }
66 },
67 {
68 "id": "settings.service.form.editServiceHeadline",
69 "defaultMessage": "!!!Edit {name}",
70 "file": "src/components/settings/services/EditServiceForm.js",
71 "start": {
72 "line": 42,
73 "column": 23
74 },
75 "end": {
76 "line": 45,
77 "column": 3
78 }
79 },
80 {
81 "id": "settings.service.form.tabHosted",
82 "defaultMessage": "!!!Hosted",
83 "file": "src/components/settings/services/EditServiceForm.js",
84 "start": {
85 "line": 46,
86 "column": 13
87 },
88 "end": {
89 "line": 49,
90 "column": 3
91 }
92 },
93 {
94 "id": "settings.service.form.tabOnPremise",
95 "defaultMessage": "!!!Self hosted ⭐️",
96 "file": "src/components/settings/services/EditServiceForm.js",
97 "start": {
98 "line": 50,
99 "column": 16
100 },
101 "end": {
102 "line": 53,
103 "column": 3
104 }
105 },
106 {
107 "id": "settings.service.form.useHostedService",
108 "defaultMessage": "!!!Use the hosted {name} service.",
109 "file": "src/components/settings/services/EditServiceForm.js",
110 "start": {
111 "line": 54,
112 "column": 20
113 },
114 "end": {
115 "line": 57,
116 "column": 3
117 }
118 },
119 {
120 "id": "settings.service.form.customUrlValidationError",
121 "defaultMessage": "!!!Could not validate custom {name} server.",
122 "file": "src/components/settings/services/EditServiceForm.js",
123 "start": {
124 "line": 58,
125 "column": 28
126 },
127 "end": {
128 "line": 61,
129 "column": 3
130 }
131 },
132 {
133 "id": "settings.service.form.customUrlPremiumInfo",
134 "defaultMessage": "!!!To add self hosted services, you need a Franz Premium Supporter Account.",
135 "file": "src/components/settings/services/EditServiceForm.js",
136 "start": {
137 "line": 62,
138 "column": 24
139 },
140 "end": {
141 "line": 65,
142 "column": 3
143 }
144 },
145 {
146 "id": "settings.service.form.customUrlUpgradeAccount",
147 "defaultMessage": "!!!Upgrade your account",
148 "file": "src/components/settings/services/EditServiceForm.js",
149 "start": {
150 "line": 66,
151 "column": 27
152 },
153 "end": {
154 "line": 69,
155 "column": 3
156 }
157 },
158 {
159 "id": "settings.service.form.indirectMessageInfo",
160 "defaultMessage": "!!!You will be notified about all new messages in a channel, not just @username, @channel, @here, ...",
161 "file": "src/components/settings/services/EditServiceForm.js",
162 "start": {
163 "line": 70,
164 "column": 23
165 },
166 "end": {
167 "line": 73,
168 "column": 3
169 }
170 },
171 {
172 "id": "settings.service.form.isMutedInfo",
173 "defaultMessage": "!!!When disabled, all notification sounds and audio playback are muted",
174 "file": "src/components/settings/services/EditServiceForm.js",
175 "start": {
176 "line": 74,
177 "column": 15
178 },
179 "end": {
180 "line": 77,
181 "column": 3
182 }
183 },
184 {
185 "id": "settings.service.form.headlineNotifications",
186 "defaultMessage": "!!!Notifications",
187 "file": "src/components/settings/services/EditServiceForm.js",
188 "start": {
189 "line": 78,
190 "column": 25
191 },
192 "end": {
193 "line": 81,
194 "column": 3
195 }
196 },
197 {
198 "id": "settings.service.form.headlineBadges",
199 "defaultMessage": "!!!Unread message badges",
200 "file": "src/components/settings/services/EditServiceForm.js",
201 "start": {
202 "line": 82,
203 "column": 18
204 },
205 "end": {
206 "line": 85,
207 "column": 3
208 }
209 },
210 {
211 "id": "settings.service.form.headlineGeneral",
212 "defaultMessage": "!!!General",
213 "file": "src/components/settings/services/EditServiceForm.js",
214 "start": {
215 "line": 86,
216 "column": 19
217 },
218 "end": {
219 "line": 89,
220 "column": 3
221 }
222 },
223 {
224 "id": "settings.service.form.iconDelete",
225 "defaultMessage": "!!!Delete",
226 "file": "src/components/settings/services/EditServiceForm.js",
227 "start": {
228 "line": 90,
229 "column": 14
230 },
231 "end": {
232 "line": 93,
233 "column": 3
234 }
235 },
236 {
237 "id": "settings.service.form.iconUpload",
238 "defaultMessage": "!!!Drop your image, or click here",
239 "file": "src/components/settings/services/EditServiceForm.js",
240 "start": {
241 "line": 94,
242 "column": 14
243 },
244 "end": {
245 "line": 97,
246 "column": 3
247 }
248 },
249 {
250 "id": "settings.service.form.proxy.headline",
251 "defaultMessage": "!!!HTTP/HTTPS Proxy Settings",
252 "file": "src/components/settings/services/EditServiceForm.js",
253 "start": {
254 "line": 98,
255 "column": 17
256 },
257 "end": {
258 "line": 101,
259 "column": 3
260 }
261 },
262 {
263 "id": "settings.service.form.proxy.restartInfo",
264 "defaultMessage": "!!!Please restart Franz after changing proxy Settings.",
265 "file": "src/components/settings/services/EditServiceForm.js",
266 "start": {
267 "line": 102,
268 "column": 20
269 },
270 "end": {
271 "line": 105,
272 "column": 3
273 }
274 },
275 {
276 "id": "settings.service.form.proxy.info",
277 "defaultMessage": "!!!Proxy settings will not be synchronized with the Franz servers.",
278 "file": "src/components/settings/services/EditServiceForm.js",
279 "start": {
280 "line": 106,
281 "column": 13
282 },
283 "end": {
284 "line": 109,
285 "column": 3
286 }
287 }
288] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/settings/services/ServiceError.json b/src/i18n/messages/src/components/settings/services/ServiceError.json
deleted file mode 100644
index 648fc5b3e..000000000
--- a/src/i18n/messages/src/components/settings/services/ServiceError.json
+++ /dev/null
@@ -1,54 +0,0 @@
1[
2 {
3 "id": "settings.service.error.headline",
4 "defaultMessage": "!!!Error",
5 "file": "src/components/settings/services/ServiceError.js",
6 "start": {
7 "line": 10,
8 "column": 12
9 },
10 "end": {
11 "line": 13,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.service.error.goBack",
17 "defaultMessage": "!!!Back to services",
18 "file": "src/components/settings/services/ServiceError.js",
19 "start": {
20 "line": 14,
21 "column": 10
22 },
23 "end": {
24 "line": 17,
25 "column": 3
26 }
27 },
28 {
29 "id": "settings.service.form.availableServices",
30 "defaultMessage": "!!!Available services",
31 "file": "src/components/settings/services/ServiceError.js",
32 "start": {
33 "line": 18,
34 "column": 21
35 },
36 "end": {
37 "line": 21,
38 "column": 3
39 }
40 },
41 {
42 "id": "settings.service.error.message",
43 "defaultMessage": "!!!Could not load service recipe.",
44 "file": "src/components/settings/services/ServiceError.js",
45 "start": {
46 "line": 22,
47 "column": 16
48 },
49 "end": {
50 "line": 25,
51 "column": 3
52 }
53 }
54] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/settings/services/ServiceItem.json b/src/i18n/messages/src/components/settings/services/ServiceItem.json
deleted file mode 100644
index ffea8b9e1..000000000
--- a/src/i18n/messages/src/components/settings/services/ServiceItem.json
+++ /dev/null
@@ -1,41 +0,0 @@
1[
2 {
3 "id": "settings.services.tooltip.isDisabled",
4 "defaultMessage": "!!!Service is disabled",
5 "file": "src/components/settings/services/ServiceItem.js",
6 "start": {
7 "line": 11,
8 "column": 21
9 },
10 "end": {
11 "line": 14,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.services.tooltip.notificationsDisabled",
17 "defaultMessage": "!!!Notifications are disabled",
18 "file": "src/components/settings/services/ServiceItem.js",
19 "start": {
20 "line": 15,
21 "column": 32
22 },
23 "end": {
24 "line": 18,
25 "column": 3
26 }
27 },
28 {
29 "id": "settings.services.tooltip.isMuted",
30 "defaultMessage": "!!!All sounds are muted",
31 "file": "src/components/settings/services/ServiceItem.js",
32 "start": {
33 "line": 19,
34 "column": 18
35 },
36 "end": {
37 "line": 22,
38 "column": 3
39 }
40 }
41] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/settings/services/ServicesDashboard.json b/src/i18n/messages/src/components/settings/services/ServicesDashboard.json
deleted file mode 100644
index 3803c6512..000000000
--- a/src/i18n/messages/src/components/settings/services/ServicesDashboard.json
+++ /dev/null
@@ -1,119 +0,0 @@
1[
2 {
3 "id": "settings.services.headline",
4 "defaultMessage": "!!!Your services",
5 "file": "src/components/settings/services/ServicesDashboard.js",
6 "start": {
7 "line": 14,
8 "column": 12
9 },
10 "end": {
11 "line": 17,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.searchService",
17 "defaultMessage": "!!!Search service",
18 "file": "src/components/settings/services/ServicesDashboard.js",
19 "start": {
20 "line": 18,
21 "column": 17
22 },
23 "end": {
24 "line": 21,
25 "column": 3
26 }
27 },
28 {
29 "id": "settings.services.noServicesAdded",
30 "defaultMessage": "!!!You haven't added any services yet.",
31 "file": "src/components/settings/services/ServicesDashboard.js",
32 "start": {
33 "line": 22,
34 "column": 19
35 },
36 "end": {
37 "line": 25,
38 "column": 3
39 }
40 },
41 {
42 "id": "settings.recipes.nothingFound",
43 "defaultMessage": "!!!Sorry, but no service matched your search term.",
44 "file": "src/components/settings/services/ServicesDashboard.js",
45 "start": {
46 "line": 26,
47 "column": 18
48 },
49 "end": {
50 "line": 29,
51 "column": 3
52 }
53 },
54 {
55 "id": "settings.services.discoverServices",
56 "defaultMessage": "!!!Discover services",
57 "file": "src/components/settings/services/ServicesDashboard.js",
58 "start": {
59 "line": 30,
60 "column": 20
61 },
62 "end": {
63 "line": 33,
64 "column": 3
65 }
66 },
67 {
68 "id": "settings.services.servicesRequestFailed",
69 "defaultMessage": "!!!Could not load your services",
70 "file": "src/components/settings/services/ServicesDashboard.js",
71 "start": {
72 "line": 34,
73 "column": 25
74 },
75 "end": {
76 "line": 37,
77 "column": 3
78 }
79 },
80 {
81 "id": "settings.account.tryReloadServices",
82 "defaultMessage": "!!!Try again",
83 "file": "src/components/settings/services/ServicesDashboard.js",
84 "start": {
85 "line": 38,
86 "column": 21
87 },
88 "end": {
89 "line": 41,
90 "column": 3
91 }
92 },
93 {
94 "id": "settings.services.updatedInfo",
95 "defaultMessage": "!!!Your changes have been saved",
96 "file": "src/components/settings/services/ServicesDashboard.js",
97 "start": {
98 "line": 42,
99 "column": 15
100 },
101 "end": {
102 "line": 45,
103 "column": 3
104 }
105 },
106 {
107 "id": "settings.services.deletedInfo",
108 "defaultMessage": "!!!Service has been deleted",
109 "file": "src/components/settings/services/ServicesDashboard.js",
110 "start": {
111 "line": 46,
112 "column": 15
113 },
114 "end": {
115 "line": 49,
116 "column": 3
117 }
118 }
119] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/settings/settings/EditSettingsForm.json b/src/i18n/messages/src/components/settings/settings/EditSettingsForm.json
deleted file mode 100644
index c64f477be..000000000
--- a/src/i18n/messages/src/components/settings/settings/EditSettingsForm.json
+++ /dev/null
@@ -1,223 +0,0 @@
1[
2 {
3 "id": "settings.app.headline",
4 "defaultMessage": "!!!Settings",
5 "file": "src/components/settings/settings/EditSettingsForm.js",
6 "start": {
7 "line": 16,
8 "column": 12
9 },
10 "end": {
11 "line": 19,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.app.headlineGeneral",
17 "defaultMessage": "!!!General",
18 "file": "src/components/settings/settings/EditSettingsForm.js",
19 "start": {
20 "line": 20,
21 "column": 19
22 },
23 "end": {
24 "line": 23,
25 "column": 3
26 }
27 },
28 {
29 "id": "settings.app.headlineLanguage",
30 "defaultMessage": "!!!Language",
31 "file": "src/components/settings/settings/EditSettingsForm.js",
32 "start": {
33 "line": 24,
34 "column": 20
35 },
36 "end": {
37 "line": 27,
38 "column": 3
39 }
40 },
41 {
42 "id": "settings.app.headlineUpdates",
43 "defaultMessage": "!!!Updates",
44 "file": "src/components/settings/settings/EditSettingsForm.js",
45 "start": {
46 "line": 28,
47 "column": 19
48 },
49 "end": {
50 "line": 31,
51 "column": 3
52 }
53 },
54 {
55 "id": "settings.app.headlineAppearance",
56 "defaultMessage": "!!!Appearance",
57 "file": "src/components/settings/settings/EditSettingsForm.js",
58 "start": {
59 "line": 32,
60 "column": 22
61 },
62 "end": {
63 "line": 35,
64 "column": 3
65 }
66 },
67 {
68 "id": "settings.app.headlineAdvanced",
69 "defaultMessage": "!!!Advanced",
70 "file": "src/components/settings/settings/EditSettingsForm.js",
71 "start": {
72 "line": 36,
73 "column": 20
74 },
75 "end": {
76 "line": 39,
77 "column": 3
78 }
79 },
80 {
81 "id": "settings.app.translationHelp",
82 "defaultMessage": "!!!Help us to translate Franz into your language.",
83 "file": "src/components/settings/settings/EditSettingsForm.js",
84 "start": {
85 "line": 40,
86 "column": 19
87 },
88 "end": {
89 "line": 43,
90 "column": 3
91 }
92 },
93 {
94 "id": "settings.app.subheadlineCache",
95 "defaultMessage": "!!!Cache",
96 "file": "src/components/settings/settings/EditSettingsForm.js",
97 "start": {
98 "line": 44,
99 "column": 20
100 },
101 "end": {
102 "line": 47,
103 "column": 3
104 }
105 },
106 {
107 "id": "settings.app.cacheInfo",
108 "defaultMessage": "!!!Franz cache is currently using {size} of disk space.",
109 "file": "src/components/settings/settings/EditSettingsForm.js",
110 "start": {
111 "line": 48,
112 "column": 13
113 },
114 "end": {
115 "line": 51,
116 "column": 3
117 }
118 },
119 {
120 "id": "settings.app.buttonClearAllCache",
121 "defaultMessage": "!!!Clear cache",
122 "file": "src/components/settings/settings/EditSettingsForm.js",
123 "start": {
124 "line": 52,
125 "column": 23
126 },
127 "end": {
128 "line": 55,
129 "column": 3
130 }
131 },
132 {
133 "id": "settings.app.buttonSearchForUpdate",
134 "defaultMessage": "!!!Check for updates",
135 "file": "src/components/settings/settings/EditSettingsForm.js",
136 "start": {
137 "line": 56,
138 "column": 25
139 },
140 "end": {
141 "line": 59,
142 "column": 3
143 }
144 },
145 {
146 "id": "settings.app.buttonInstallUpdate",
147 "defaultMessage": "!!!Restart & install update",
148 "file": "src/components/settings/settings/EditSettingsForm.js",
149 "start": {
150 "line": 60,
151 "column": 23
152 },
153 "end": {
154 "line": 63,
155 "column": 3
156 }
157 },
158 {
159 "id": "settings.app.updateStatusSearching",
160 "defaultMessage": "!!!Is searching for update",
161 "file": "src/components/settings/settings/EditSettingsForm.js",
162 "start": {
163 "line": 64,
164 "column": 25
165 },
166 "end": {
167 "line": 67,
168 "column": 3
169 }
170 },
171 {
172 "id": "settings.app.updateStatusAvailable",
173 "defaultMessage": "!!!Update available, downloading...",
174 "file": "src/components/settings/settings/EditSettingsForm.js",
175 "start": {
176 "line": 68,
177 "column": 25
178 },
179 "end": {
180 "line": 71,
181 "column": 3
182 }
183 },
184 {
185 "id": "settings.app.updateStatusUpToDate",
186 "defaultMessage": "!!!You are using the latest version of Franz",
187 "file": "src/components/settings/settings/EditSettingsForm.js",
188 "start": {
189 "line": 72,
190 "column": 24
191 },
192 "end": {
193 "line": 75,
194 "column": 3
195 }
196 },
197 {
198 "id": "settings.app.currentVersion",
199 "defaultMessage": "!!!Current version:",
200 "file": "src/components/settings/settings/EditSettingsForm.js",
201 "start": {
202 "line": 76,
203 "column": 18
204 },
205 "end": {
206 "line": 79,
207 "column": 3
208 }
209 },
210 {
211 "id": "settings.app.restartRequired",
212 "defaultMessage": "!!!Changes require restart",
213 "file": "src/components/settings/settings/EditSettingsForm.js",
214 "start": {
215 "line": 80,
216 "column": 29
217 },
218 "end": {
219 "line": 83,
220 "column": 3
221 }
222 }
223] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/settings/user/EditUserForm.json b/src/i18n/messages/src/components/settings/user/EditUserForm.json
deleted file mode 100644
index 3a59f8681..000000000
--- a/src/i18n/messages/src/components/settings/user/EditUserForm.json
+++ /dev/null
@@ -1,80 +0,0 @@
1[
2 {
3 "id": "settings.account.headline",
4 "defaultMessage": "!!!Account",
5 "file": "src/components/settings/user/EditUserForm.js",
6 "start": {
7 "line": 15,
8 "column": 12
9 },
10 "end": {
11 "line": 18,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.account.headlineProfile",
17 "defaultMessage": "!!!Update Profile",
18 "file": "src/components/settings/user/EditUserForm.js",
19 "start": {
20 "line": 19,
21 "column": 19
22 },
23 "end": {
24 "line": 22,
25 "column": 3
26 }
27 },
28 {
29 "id": "settings.account.headlineAccount",
30 "defaultMessage": "!!!Account Information",
31 "file": "src/components/settings/user/EditUserForm.js",
32 "start": {
33 "line": 23,
34 "column": 19
35 },
36 "end": {
37 "line": 26,
38 "column": 3
39 }
40 },
41 {
42 "id": "settings.account.headlinePassword",
43 "defaultMessage": "!!!Change Password",
44 "file": "src/components/settings/user/EditUserForm.js",
45 "start": {
46 "line": 27,
47 "column": 20
48 },
49 "end": {
50 "line": 30,
51 "column": 3
52 }
53 },
54 {
55 "id": "settings.account.successInfo",
56 "defaultMessage": "!!!Your changes have been saved",
57 "file": "src/components/settings/user/EditUserForm.js",
58 "start": {
59 "line": 31,
60 "column": 15
61 },
62 "end": {
63 "line": 34,
64 "column": 3
65 }
66 },
67 {
68 "id": "settings.account.buttonSave",
69 "defaultMessage": "!!!Update profile",
70 "file": "src/components/settings/user/EditUserForm.js",
71 "start": {
72 "line": 35,
73 "column": 14
74 },
75 "end": {
76 "line": 38,
77 "column": 3
78 }
79 }
80] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/subscription/SubscriptionForm.json b/src/i18n/messages/src/components/subscription/SubscriptionForm.json
deleted file mode 100644
index cc7470358..000000000
--- a/src/i18n/messages/src/components/subscription/SubscriptionForm.json
+++ /dev/null
@@ -1,171 +0,0 @@
1[
2 {
3 "id": "subscription.submit.label",
4 "defaultMessage": "!!!Support the development of Franz",
5 "file": "src/components/subscription/SubscriptionForm.js",
6 "start": {
7 "line": 14,
8 "column": 21
9 },
10 "end": {
11 "line": 17,
12 "column": 3
13 }
14 },
15 {
16 "id": "subscription.paymentSessionError",
17 "defaultMessage": "!!!Could not initialize payment form",
18 "file": "src/components/subscription/SubscriptionForm.js",
19 "start": {
20 "line": 18,
21 "column": 23
22 },
23 "end": {
24 "line": 21,
25 "column": 3
26 }
27 },
28 {
29 "id": "subscription.type.free",
30 "defaultMessage": "!!!free",
31 "file": "src/components/subscription/SubscriptionForm.js",
32 "start": {
33 "line": 22,
34 "column": 12
35 },
36 "end": {
37 "line": 25,
38 "column": 3
39 }
40 },
41 {
42 "id": "subscription.type.month",
43 "defaultMessage": "!!!month",
44 "file": "src/components/subscription/SubscriptionForm.js",
45 "start": {
46 "line": 26,
47 "column": 15
48 },
49 "end": {
50 "line": 29,
51 "column": 3
52 }
53 },
54 {
55 "id": "subscription.type.year",
56 "defaultMessage": "!!!year",
57 "file": "src/components/subscription/SubscriptionForm.js",
58 "start": {
59 "line": 30,
60 "column": 14
61 },
62 "end": {
63 "line": 33,
64 "column": 3
65 }
66 },
67 {
68 "id": "subscription.includedFeatures",
69 "defaultMessage": "!!!The Franz Premium Supporter Account includes",
70 "file": "src/components/subscription/SubscriptionForm.js",
71 "start": {
72 "line": 34,
73 "column": 20
74 },
75 "end": {
76 "line": 37,
77 "column": 3
78 }
79 },
80 {
81 "id": "subscription.features.onpremise.mattermost",
82 "defaultMessage": "!!!Add on-premise/hosted services like Mattermost",
83 "file": "src/components/subscription/SubscriptionForm.js",
84 "start": {
85 "line": 38,
86 "column": 13
87 },
88 "end": {
89 "line": 41,
90 "column": 3
91 }
92 },
93 {
94 "id": "subscription.features.noInterruptions",
95 "defaultMessage": "!!!No app delays & nagging to upgrade license",
96 "file": "src/components/subscription/SubscriptionForm.js",
97 "start": {
98 "line": 42,
99 "column": 19
100 },
101 "end": {
102 "line": 45,
103 "column": 3
104 }
105 },
106 {
107 "id": "subscription.features.proxy",
108 "defaultMessage": "!!!Proxy support for services",
109 "file": "src/components/subscription/SubscriptionForm.js",
110 "start": {
111 "line": 46,
112 "column": 9
113 },
114 "end": {
115 "line": 49,
116 "column": 3
117 }
118 },
119 {
120 "id": "subscription.features.spellchecker",
121 "defaultMessage": "!!!Support for Spellchecker",
122 "file": "src/components/subscription/SubscriptionForm.js",
123 "start": {
124 "line": 50,
125 "column": 16
126 },
127 "end": {
128 "line": 53,
129 "column": 3
130 }
131 },
132 {
133 "id": "subscription.features.ads",
134 "defaultMessage": "!!!No ads, ever!",
135 "file": "src/components/subscription/SubscriptionForm.js",
136 "start": {
137 "line": 54,
138 "column": 7
139 },
140 "end": {
141 "line": 57,
142 "column": 3
143 }
144 },
145 {
146 "id": "subscription.features.comingSoon",
147 "defaultMessage": "!!!coming soon",
148 "file": "src/components/subscription/SubscriptionForm.js",
149 "start": {
150 "line": 58,
151 "column": 14
152 },
153 "end": {
154 "line": 61,
155 "column": 3
156 }
157 },
158 {
159 "id": "subscription.euTaxInfo",
160 "defaultMessage": "!!!EU residents: local sales tax may apply",
161 "file": "src/components/subscription/SubscriptionForm.js",
162 "start": {
163 "line": 62,
164 "column": 13
165 },
166 "end": {
167 "line": 65,
168 "column": 3
169 }
170 }
171] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/subscription/SubscriptionPopup.json b/src/i18n/messages/src/components/subscription/SubscriptionPopup.json
deleted file mode 100644
index c06da7531..000000000
--- a/src/i18n/messages/src/components/subscription/SubscriptionPopup.json
+++ /dev/null
@@ -1,28 +0,0 @@
1[
2 {
3 "id": "subscriptionPopup.buttonCancel",
4 "defaultMessage": "!!!Cancel",
5 "file": "src/components/subscription/SubscriptionPopup.js",
6 "start": {
7 "line": 11,
8 "column": 16
9 },
10 "end": {
11 "line": 14,
12 "column": 3
13 }
14 },
15 {
16 "id": "subscriptionPopup.buttonDone",
17 "defaultMessage": "!!!Done",
18 "file": "src/components/subscription/SubscriptionPopup.js",
19 "start": {
20 "line": 15,
21 "column": 14
22 },
23 "end": {
24 "line": 18,
25 "column": 3
26 }
27 }
28] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/ui/PremiumFeatureContainer/index.json b/src/i18n/messages/src/components/ui/PremiumFeatureContainer/index.json
deleted file mode 100644
index 320d3ca3e..000000000
--- a/src/i18n/messages/src/components/ui/PremiumFeatureContainer/index.json
+++ /dev/null
@@ -1,15 +0,0 @@
1[
2 {
3 "id": "premiumFeature.button.upgradeAccount",
4 "defaultMessage": "!!!Upgrade account",
5 "file": "src/components/ui/PremiumFeatureContainer/index.js",
6 "start": {
7 "line": 15,
8 "column": 10
9 },
10 "end": {
11 "line": 18,
12 "column": 3
13 }
14 }
15] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/ui/WebviewLoader/index.json b/src/i18n/messages/src/components/ui/WebviewLoader/index.json
deleted file mode 100644
index ef3e4b593..000000000
--- a/src/i18n/messages/src/components/ui/WebviewLoader/index.json
+++ /dev/null
@@ -1,15 +0,0 @@
1[
2 {
3 "id": "service.webviewLoader.loading",
4 "defaultMessage": "!!!Loading",
5 "file": "src/components/ui/WebviewLoader/index.js",
6 "start": {
7 "line": 11,
8 "column": 11
9 },
10 "end": {
11 "line": 14,
12 "column": 3
13 }
14 }
15] \ No newline at end of file
diff --git a/src/i18n/messages/src/components/util/ErrorBoundary/index.json b/src/i18n/messages/src/components/util/ErrorBoundary/index.json
deleted file mode 100644
index 43c323031..000000000
--- a/src/i18n/messages/src/components/util/ErrorBoundary/index.json
+++ /dev/null
@@ -1,28 +0,0 @@
1[
2 {
3 "id": "app.errorHandler.headline",
4 "defaultMessage": "!!!Something went wrong.",
5 "file": "src/components/util/ErrorBoundary/index.js",
6 "start": {
7 "line": 11,
8 "column": 12
9 },
10 "end": {
11 "line": 14,
12 "column": 3
13 }
14 },
15 {
16 "id": "app.errorHandler.action",
17 "defaultMessage": "!!!Reload",
18 "file": "src/components/util/ErrorBoundary/index.js",
19 "start": {
20 "line": 15,
21 "column": 10
22 },
23 "end": {
24 "line": 18,
25 "column": 3
26 }
27 }
28] \ No newline at end of file
diff --git a/src/i18n/messages/src/containers/settings/EditServiceScreen.json b/src/i18n/messages/src/containers/settings/EditServiceScreen.json
deleted file mode 100644
index 42ca42125..000000000
--- a/src/i18n/messages/src/containers/settings/EditServiceScreen.json
+++ /dev/null
@@ -1,197 +0,0 @@
1[
2 {
3 "id": "settings.service.form.name",
4 "defaultMessage": "!!!Name",
5 "file": "src/containers/settings/EditServiceScreen.js",
6 "start": {
7 "line": 28,
8 "column": 8
9 },
10 "end": {
11 "line": 31,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.service.form.enableService",
17 "defaultMessage": "!!!Enable service",
18 "file": "src/containers/settings/EditServiceScreen.js",
19 "start": {
20 "line": 32,
21 "column": 17
22 },
23 "end": {
24 "line": 35,
25 "column": 3
26 }
27 },
28 {
29 "id": "settings.service.form.enableNotification",
30 "defaultMessage": "!!!Enable Notifications",
31 "file": "src/containers/settings/EditServiceScreen.js",
32 "start": {
33 "line": 36,
34 "column": 22
35 },
36 "end": {
37 "line": 39,
38 "column": 3
39 }
40 },
41 {
42 "id": "settings.service.form.enableBadge",
43 "defaultMessage": "!!!Show unread message badges",
44 "file": "src/containers/settings/EditServiceScreen.js",
45 "start": {
46 "line": 40,
47 "column": 15
48 },
49 "end": {
50 "line": 43,
51 "column": 3
52 }
53 },
54 {
55 "id": "settings.service.form.enableAudio",
56 "defaultMessage": "!!!Enable audio",
57 "file": "src/containers/settings/EditServiceScreen.js",
58 "start": {
59 "line": 44,
60 "column": 15
61 },
62 "end": {
63 "line": 47,
64 "column": 3
65 }
66 },
67 {
68 "id": "settings.service.form.team",
69 "defaultMessage": "!!!Team",
70 "file": "src/containers/settings/EditServiceScreen.js",
71 "start": {
72 "line": 48,
73 "column": 8
74 },
75 "end": {
76 "line": 51,
77 "column": 3
78 }
79 },
80 {
81 "id": "settings.service.form.customUrl",
82 "defaultMessage": "!!!Custom server",
83 "file": "src/containers/settings/EditServiceScreen.js",
84 "start": {
85 "line": 52,
86 "column": 13
87 },
88 "end": {
89 "line": 55,
90 "column": 3
91 }
92 },
93 {
94 "id": "settings.service.form.indirectMessages",
95 "defaultMessage": "!!!Show message badge for all new messages",
96 "file": "src/containers/settings/EditServiceScreen.js",
97 "start": {
98 "line": 56,
99 "column": 20
100 },
101 "end": {
102 "line": 59,
103 "column": 3
104 }
105 },
106 {
107 "id": "settings.service.form.icon",
108 "defaultMessage": "!!!Custom icon",
109 "file": "src/containers/settings/EditServiceScreen.js",
110 "start": {
111 "line": 60,
112 "column": 8
113 },
114 "end": {
115 "line": 63,
116 "column": 3
117 }
118 },
119 {
120 "id": "settings.service.form.enableDarkMode",
121 "defaultMessage": "!!!Enable Dark Mode",
122 "file": "src/containers/settings/EditServiceScreen.js",
123 "start": {
124 "line": 64,
125 "column": 18
126 },
127 "end": {
128 "line": 67,
129 "column": 3
130 }
131 },
132 {
133 "id": "settings.service.form.proxy.isEnabled",
134 "defaultMessage": "!!!Use Proxy",
135 "file": "src/containers/settings/EditServiceScreen.js",
136 "start": {
137 "line": 68,
138 "column": 15
139 },
140 "end": {
141 "line": 71,
142 "column": 3
143 }
144 },
145 {
146 "id": "settings.service.form.proxy.host",
147 "defaultMessage": "!!!Proxy Host/IP",
148 "file": "src/containers/settings/EditServiceScreen.js",
149 "start": {
150 "line": 72,
151 "column": 13
152 },
153 "end": {
154 "line": 75,
155 "column": 3
156 }
157 },
158 {
159 "id": "settings.service.form.proxy.port",
160 "defaultMessage": "!!!Port",
161 "file": "src/containers/settings/EditServiceScreen.js",
162 "start": {
163 "line": 76,
164 "column": 13
165 },
166 "end": {
167 "line": 79,
168 "column": 3
169 }
170 },
171 {
172 "id": "settings.service.form.proxy.user",
173 "defaultMessage": "!!!User",
174 "file": "src/containers/settings/EditServiceScreen.js",
175 "start": {
176 "line": 80,
177 "column": 13
178 },
179 "end": {
180 "line": 83,
181 "column": 3
182 }
183 },
184 {
185 "id": "settings.service.form.proxy.password",
186 "defaultMessage": "!!!Password",
187 "file": "src/containers/settings/EditServiceScreen.js",
188 "start": {
189 "line": 84,
190 "column": 17
191 },
192 "end": {
193 "line": 87,
194 "column": 3
195 }
196 }
197] \ No newline at end of file
diff --git a/src/i18n/messages/src/containers/settings/EditSettingsScreen.json b/src/i18n/messages/src/containers/settings/EditSettingsScreen.json
deleted file mode 100644
index d3b413540..000000000
--- a/src/i18n/messages/src/containers/settings/EditSettingsScreen.json
+++ /dev/null
@@ -1,158 +0,0 @@
1[
2 {
3 "id": "settings.app.form.autoLaunchOnStart",
4 "defaultMessage": "!!!Launch Franz on start",
5 "file": "src/containers/settings/EditSettingsScreen.js",
6 "start": {
7 "line": 22,
8 "column": 21
9 },
10 "end": {
11 "line": 25,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.app.form.autoLaunchInBackground",
17 "defaultMessage": "!!!Open in background",
18 "file": "src/containers/settings/EditSettingsScreen.js",
19 "start": {
20 "line": 26,
21 "column": 26
22 },
23 "end": {
24 "line": 29,
25 "column": 3
26 }
27 },
28 {
29 "id": "settings.app.form.runInBackground",
30 "defaultMessage": "!!!Keep Franz in background when closing the window",
31 "file": "src/containers/settings/EditSettingsScreen.js",
32 "start": {
33 "line": 30,
34 "column": 19
35 },
36 "end": {
37 "line": 33,
38 "column": 3
39 }
40 },
41 {
42 "id": "settings.app.form.enableSystemTray",
43 "defaultMessage": "!!!Show Franz in system tray",
44 "file": "src/containers/settings/EditSettingsScreen.js",
45 "start": {
46 "line": 34,
47 "column": 20
48 },
49 "end": {
50 "line": 37,
51 "column": 3
52 }
53 },
54 {
55 "id": "settings.app.form.minimizeToSystemTray",
56 "defaultMessage": "!!!Minimize Franz to system tray",
57 "file": "src/containers/settings/EditSettingsScreen.js",
58 "start": {
59 "line": 38,
60 "column": 24
61 },
62 "end": {
63 "line": 41,
64 "column": 3
65 }
66 },
67 {
68 "id": "settings.app.form.language",
69 "defaultMessage": "!!!Language",
70 "file": "src/containers/settings/EditSettingsScreen.js",
71 "start": {
72 "line": 42,
73 "column": 12
74 },
75 "end": {
76 "line": 45,
77 "column": 3
78 }
79 },
80 {
81 "id": "settings.app.form.darkMode",
82 "defaultMessage": "!!!Dark Mode",
83 "file": "src/containers/settings/EditSettingsScreen.js",
84 "start": {
85 "line": 46,
86 "column": 12
87 },
88 "end": {
89 "line": 49,
90 "column": 3
91 }
92 },
93 {
94 "id": "settings.app.form.showDisabledServices",
95 "defaultMessage": "!!!Display disabled services tabs",
96 "file": "src/containers/settings/EditSettingsScreen.js",
97 "start": {
98 "line": 50,
99 "column": 24
100 },
101 "end": {
102 "line": 53,
103 "column": 3
104 }
105 },
106 {
107 "id": "settings.app.form.showMessagesBadgesWhenMuted",
108 "defaultMessage": "!!!Show unread message badge when notifications are disabled",
109 "file": "src/containers/settings/EditSettingsScreen.js",
110 "start": {
111 "line": 54,
112 "column": 29
113 },
114 "end": {
115 "line": 57,
116 "column": 3
117 }
118 },
119 {
120 "id": "settings.app.form.enableSpellchecking",
121 "defaultMessage": "!!!Enable spell checking",
122 "file": "src/containers/settings/EditSettingsScreen.js",
123 "start": {
124 "line": 58,
125 "column": 23
126 },
127 "end": {
128 "line": 61,
129 "column": 3
130 }
131 },
132 {
133 "id": "settings.app.form.enableGPUAcceleration",
134 "defaultMessage": "!!!Enable GPU Acceleration",
135 "file": "src/containers/settings/EditSettingsScreen.js",
136 "start": {
137 "line": 62,
138 "column": 25
139 },
140 "end": {
141 "line": 65,
142 "column": 3
143 }
144 },
145 {
146 "id": "settings.app.form.beta",
147 "defaultMessage": "!!!Include beta versions",
148 "file": "src/containers/settings/EditSettingsScreen.js",
149 "start": {
150 "line": 66,
151 "column": 8
152 },
153 "end": {
154 "line": 69,
155 "column": 3
156 }
157 }
158] \ No newline at end of file
diff --git a/src/i18n/messages/src/containers/settings/EditUserScreen.json b/src/i18n/messages/src/containers/settings/EditUserScreen.json
deleted file mode 100644
index 70ff29945..000000000
--- a/src/i18n/messages/src/containers/settings/EditUserScreen.json
+++ /dev/null
@@ -1,119 +0,0 @@
1[
2 {
3 "id": "settings.user.form.firstname",
4 "defaultMessage": "!!!Firstname",
5 "file": "src/containers/settings/EditUserScreen.js",
6 "start": {
7 "line": 14,
8 "column": 13
9 },
10 "end": {
11 "line": 17,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.user.form.lastname",
17 "defaultMessage": "!!!Lastname",
18 "file": "src/containers/settings/EditUserScreen.js",
19 "start": {
20 "line": 18,
21 "column": 12
22 },
23 "end": {
24 "line": 21,
25 "column": 3
26 }
27 },
28 {
29 "id": "settings.user.form.email",
30 "defaultMessage": "!!!Email",
31 "file": "src/containers/settings/EditUserScreen.js",
32 "start": {
33 "line": 22,
34 "column": 9
35 },
36 "end": {
37 "line": 25,
38 "column": 3
39 }
40 },
41 {
42 "id": "settings.user.form.accountType.label",
43 "defaultMessage": "!!!Account type",
44 "file": "src/containers/settings/EditUserScreen.js",
45 "start": {
46 "line": 26,
47 "column": 20
48 },
49 "end": {
50 "line": 29,
51 "column": 3
52 }
53 },
54 {
55 "id": "settings.user.form.accountType.individual",
56 "defaultMessage": "!!!Individual",
57 "file": "src/containers/settings/EditUserScreen.js",
58 "start": {
59 "line": 30,
60 "column": 25
61 },
62 "end": {
63 "line": 33,
64 "column": 3
65 }
66 },
67 {
68 "id": "settings.user.form.accountType.non-profit",
69 "defaultMessage": "!!!Non-Profit",
70 "file": "src/containers/settings/EditUserScreen.js",
71 "start": {
72 "line": 34,
73 "column": 24
74 },
75 "end": {
76 "line": 37,
77 "column": 3
78 }
79 },
80 {
81 "id": "settings.user.form.accountType.company",
82 "defaultMessage": "!!!Company",
83 "file": "src/containers/settings/EditUserScreen.js",
84 "start": {
85 "line": 38,
86 "column": 22
87 },
88 "end": {
89 "line": 41,
90 "column": 3
91 }
92 },
93 {
94 "id": "settings.user.form.currentPassword",
95 "defaultMessage": "!!!Current password",
96 "file": "src/containers/settings/EditUserScreen.js",
97 "start": {
98 "line": 42,
99 "column": 19
100 },
101 "end": {
102 "line": 45,
103 "column": 3
104 }
105 },
106 {
107 "id": "settings.user.form.newPassword",
108 "defaultMessage": "!!!New password",
109 "file": "src/containers/settings/EditUserScreen.js",
110 "start": {
111 "line": 46,
112 "column": 15
113 },
114 "end": {
115 "line": 49,
116 "column": 3
117 }
118 }
119] \ No newline at end of file
diff --git a/src/i18n/messages/src/features/announcements/Component.json b/src/i18n/messages/src/features/announcements/Component.json
deleted file mode 100644
index c31c35fc7..000000000
--- a/src/i18n/messages/src/features/announcements/Component.json
+++ /dev/null
@@ -1,15 +0,0 @@
1[
2 {
3 "id": "feature.announcements.changelog.headline",
4 "defaultMessage": "!!!What's new in Franz {version}?",
5 "file": "src/features/announcements/Component.js",
6 "start": {
7 "line": 11,
8 "column": 12
9 },
10 "end": {
11 "line": 14,
12 "column": 3
13 }
14 }
15]
diff --git a/src/i18n/messages/src/features/announcements/components/AnnouncementScreen.json b/src/i18n/messages/src/features/announcements/components/AnnouncementScreen.json
deleted file mode 100644
index eb1b66916..000000000
--- a/src/i18n/messages/src/features/announcements/components/AnnouncementScreen.json
+++ /dev/null
@@ -1,15 +0,0 @@
1[
2 {
3 "id": "feature.announcements.changelog.headline",
4 "defaultMessage": "!!!Changes in Franz {version}",
5 "file": "src/features/announcements/components/AnnouncementScreen.js",
6 "start": {
7 "line": 20,
8 "column": 12
9 },
10 "end": {
11 "line": 23,
12 "column": 3
13 }
14 }
15] \ No newline at end of file
diff --git a/src/i18n/messages/src/features/delayApp/Component.json b/src/i18n/messages/src/features/delayApp/Component.json
deleted file mode 100644
index bacd9444a..000000000
--- a/src/i18n/messages/src/features/delayApp/Component.json
+++ /dev/null
@@ -1,41 +0,0 @@
1[
2 {
3 "id": "feature.delayApp.headline",
4 "defaultMessage": "!!!Please purchase license to skip waiting",
5 "file": "src/features/delayApp/Component.js",
6 "start": {
7 "line": 15,
8 "column": 12
9 },
10 "end": {
11 "line": 18,
12 "column": 3
13 }
14 },
15 {
16 "id": "feature.delayApp.action",
17 "defaultMessage": "!!!Get a Franz Supporter License",
18 "file": "src/features/delayApp/Component.js",
19 "start": {
20 "line": 19,
21 "column": 10
22 },
23 "end": {
24 "line": 22,
25 "column": 3
26 }
27 },
28 {
29 "id": "feature.delayApp.text",
30 "defaultMessage": "!!!Franz will continue in {seconds} seconds.",
31 "file": "src/features/delayApp/Component.js",
32 "start": {
33 "line": 23,
34 "column": 8
35 },
36 "end": {
37 "line": 26,
38 "column": 3
39 }
40 }
41] \ No newline at end of file
diff --git a/src/i18n/messages/src/features/shareFranz/Component.json b/src/i18n/messages/src/features/shareFranz/Component.json
deleted file mode 100644
index 34a43d5a0..000000000
--- a/src/i18n/messages/src/features/shareFranz/Component.json
+++ /dev/null
@@ -1,93 +0,0 @@
1[
2 {
3 "id": "feature.shareFranz.headline",
4 "defaultMessage": "!!!Franz is better together!",
5 "file": "src/features/shareFranz/Component.js",
6 "start": {
7 "line": 15,
8 "column": 12
9 },
10 "end": {
11 "line": 18,
12 "column": 3
13 }
14 },
15 {
16 "id": "feature.shareFranz.text",
17 "defaultMessage": "!!!Tell your friends and colleagues how awesome Franz is and help us to spread the word.",
18 "file": "src/features/shareFranz/Component.js",
19 "start": {
20 "line": 19,
21 "column": 8
22 },
23 "end": {
24 "line": 22,
25 "column": 3
26 }
27 },
28 {
29 "id": "feature.shareFranz.action.email",
30 "defaultMessage": "!!!Share as email",
31 "file": "src/features/shareFranz/Component.js",
32 "start": {
33 "line": 23,
34 "column": 16
35 },
36 "end": {
37 "line": 26,
38 "column": 3
39 }
40 },
41 {
42 "id": "feature.shareFranz.action.facebook",
43 "defaultMessage": "!!!Share on Facebook",
44 "file": "src/features/shareFranz/Component.js",
45 "start": {
46 "line": 27,
47 "column": 19
48 },
49 "end": {
50 "line": 30,
51 "column": 3
52 }
53 },
54 {
55 "id": "feature.shareFranz.action.twitter",
56 "defaultMessage": "!!!Share on Twitter",
57 "file": "src/features/shareFranz/Component.js",
58 "start": {
59 "line": 31,
60 "column": 18
61 },
62 "end": {
63 "line": 34,
64 "column": 3
65 }
66 },
67 {
68 "id": "feature.shareFranz.shareText.email",
69 "defaultMessage": "!!! I've added {count} services to Franz! Get the free app for WhatsApp, Messenger, Slack, Skype and co at www.meetfranz.com",
70 "file": "src/features/shareFranz/Component.js",
71 "start": {
72 "line": 35,
73 "column": 18
74 },
75 "end": {
76 "line": 38,
77 "column": 3
78 }
79 },
80 {
81 "id": "feature.shareFranz.shareText.twitter",
82 "defaultMessage": "!!! I've added {count} services to Franz! Get the free app for WhatsApp, Messenger, Slack, Skype and co at www.meetfranz.com /cc @FranzMessenger",
83 "file": "src/features/shareFranz/Component.js",
84 "start": {
85 "line": 39,
86 "column": 20
87 },
88 "end": {
89 "line": 42,
90 "column": 3
91 }
92 }
93] \ No newline at end of file
diff --git a/src/i18n/messages/src/features/workspaces/components/CreateWorkspaceForm.json b/src/i18n/messages/src/features/workspaces/components/CreateWorkspaceForm.json
deleted file mode 100644
index f62bac42c..000000000
--- a/src/i18n/messages/src/features/workspaces/components/CreateWorkspaceForm.json
+++ /dev/null
@@ -1,28 +0,0 @@
1[
2 {
3 "id": "settings.workspace.add.form.submitButton",
4 "defaultMessage": "!!!Create workspace",
5 "file": "src/features/workspaces/components/CreateWorkspaceForm.js",
6 "start": {
7 "line": 13,
8 "column": 16
9 },
10 "end": {
11 "line": 16,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.workspace.add.form.name",
17 "defaultMessage": "!!!Name",
18 "file": "src/features/workspaces/components/CreateWorkspaceForm.js",
19 "start": {
20 "line": 17,
21 "column": 8
22 },
23 "end": {
24 "line": 20,
25 "column": 3
26 }
27 }
28] \ No newline at end of file
diff --git a/src/i18n/messages/src/features/workspaces/components/EditWorkspaceForm.json b/src/i18n/messages/src/features/workspaces/components/EditWorkspaceForm.json
deleted file mode 100644
index 7b0c3e1ce..000000000
--- a/src/i18n/messages/src/features/workspaces/components/EditWorkspaceForm.json
+++ /dev/null
@@ -1,67 +0,0 @@
1[
2 {
3 "id": "settings.workspace.form.buttonDelete",
4 "defaultMessage": "!!!Delete workspace",
5 "file": "src/features/workspaces/components/EditWorkspaceForm.js",
6 "start": {
7 "line": 19,
8 "column": 16
9 },
10 "end": {
11 "line": 22,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.workspace.form.buttonSave",
17 "defaultMessage": "!!!Save workspace",
18 "file": "src/features/workspaces/components/EditWorkspaceForm.js",
19 "start": {
20 "line": 23,
21 "column": 14
22 },
23 "end": {
24 "line": 26,
25 "column": 3
26 }
27 },
28 {
29 "id": "settings.workspace.form.name",
30 "defaultMessage": "!!!Name",
31 "file": "src/features/workspaces/components/EditWorkspaceForm.js",
32 "start": {
33 "line": 27,
34 "column": 8
35 },
36 "end": {
37 "line": 30,
38 "column": 3
39 }
40 },
41 {
42 "id": "settings.workspace.form.yourWorkspaces",
43 "defaultMessage": "!!!Your workspaces",
44 "file": "src/features/workspaces/components/EditWorkspaceForm.js",
45 "start": {
46 "line": 31,
47 "column": 18
48 },
49 "end": {
50 "line": 34,
51 "column": 3
52 }
53 },
54 {
55 "id": "settings.workspace.form.servicesInWorkspaceHeadline",
56 "defaultMessage": "!!!Services in this Workspace",
57 "file": "src/features/workspaces/components/EditWorkspaceForm.js",
58 "start": {
59 "line": 35,
60 "column": 31
61 },
62 "end": {
63 "line": 38,
64 "column": 3
65 }
66 }
67] \ No newline at end of file
diff --git a/src/i18n/messages/src/features/workspaces/components/WorkspaceDrawer.json b/src/i18n/messages/src/features/workspaces/components/WorkspaceDrawer.json
deleted file mode 100644
index 9f0935620..000000000
--- a/src/i18n/messages/src/features/workspaces/components/WorkspaceDrawer.json
+++ /dev/null
@@ -1,106 +0,0 @@
1[
2 {
3 "id": "workspaceDrawer.headline",
4 "defaultMessage": "!!!Workspaces",
5 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
6 "start": {
7 "line": 16,
8 "column": 12
9 },
10 "end": {
11 "line": 19,
12 "column": 3
13 }
14 },
15 {
16 "id": "workspaceDrawer.allServices",
17 "defaultMessage": "!!!All services",
18 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
19 "start": {
20 "line": 20,
21 "column": 15
22 },
23 "end": {
24 "line": 23,
25 "column": 3
26 }
27 },
28 {
29 "id": "workspaceDrawer.workspacesSettingsTooltip",
30 "defaultMessage": "!!!Workspaces settings",
31 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
32 "start": {
33 "line": 24,
34 "column": 29
35 },
36 "end": {
37 "line": 27,
38 "column": 3
39 }
40 },
41 {
42 "id": "workspaceDrawer.workspaceFeatureInfo",
43 "defaultMessage": "!!!Info about workspace feature",
44 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
45 "start": {
46 "line": 28,
47 "column": 24
48 },
49 "end": {
50 "line": 31,
51 "column": 3
52 }
53 },
54 {
55 "id": "workspaceDrawer.premiumCtaButtonLabel",
56 "defaultMessage": "!!!Create your first workspace",
57 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
58 "start": {
59 "line": 32,
60 "column": 25
61 },
62 "end": {
63 "line": 35,
64 "column": 3
65 }
66 },
67 {
68 "id": "workspaceDrawer.reactivatePremiumAccountLabel",
69 "defaultMessage": "!!!Reactivate premium account",
70 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
71 "start": {
72 "line": 36,
73 "column": 28
74 },
75 "end": {
76 "line": 39,
77 "column": 3
78 }
79 },
80 {
81 "id": "workspaceDrawer.addNewWorkspaceLabel",
82 "defaultMessage": "!!!add new workspace",
83 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
84 "start": {
85 "line": 40,
86 "column": 24
87 },
88 "end": {
89 "line": 43,
90 "column": 3
91 }
92 },
93 {
94 "id": "workspaceDrawer.proFeatureBadge",
95 "defaultMessage": "!!!Premium feature",
96 "file": "src/features/workspaces/components/WorkspaceDrawer.js",
97 "start": {
98 "line": 44,
99 "column": 23
100 },
101 "end": {
102 "line": 47,
103 "column": 3
104 }
105 }
106] \ No newline at end of file
diff --git a/src/i18n/messages/src/features/workspaces/components/WorkspaceDrawerItem.json b/src/i18n/messages/src/features/workspaces/components/WorkspaceDrawerItem.json
deleted file mode 100644
index 4ff190606..000000000
--- a/src/i18n/messages/src/features/workspaces/components/WorkspaceDrawerItem.json
+++ /dev/null
@@ -1,28 +0,0 @@
1[
2 {
3 "id": "workspaceDrawer.item.noServicesAddedYet",
4 "defaultMessage": "!!!No services added yet",
5 "file": "src/features/workspaces/components/WorkspaceDrawerItem.js",
6 "start": {
7 "line": 12,
8 "column": 22
9 },
10 "end": {
11 "line": 15,
12 "column": 3
13 }
14 },
15 {
16 "id": "workspaceDrawer.item.contextMenuEdit",
17 "defaultMessage": "!!!edit",
18 "file": "src/features/workspaces/components/WorkspaceDrawerItem.js",
19 "start": {
20 "line": 16,
21 "column": 19
22 },
23 "end": {
24 "line": 19,
25 "column": 3
26 }
27 }
28] \ No newline at end of file
diff --git a/src/i18n/messages/src/features/workspaces/components/WorkspaceSwitchingIndicator.json b/src/i18n/messages/src/features/workspaces/components/WorkspaceSwitchingIndicator.json
deleted file mode 100644
index 4f3e6d55c..000000000
--- a/src/i18n/messages/src/features/workspaces/components/WorkspaceSwitchingIndicator.json
+++ /dev/null
@@ -1,15 +0,0 @@
1[
2 {
3 "id": "workspaces.switchingIndicator.switchingTo",
4 "defaultMessage": "!!!Switching to",
5 "file": "src/features/workspaces/components/WorkspaceSwitchingIndicator.js",
6 "start": {
7 "line": 12,
8 "column": 15
9 },
10 "end": {
11 "line": 15,
12 "column": 3
13 }
14 }
15] \ No newline at end of file
diff --git a/src/i18n/messages/src/features/workspaces/components/WorkspacesDashboard.json b/src/i18n/messages/src/features/workspaces/components/WorkspacesDashboard.json
deleted file mode 100644
index ef8f1bebc..000000000
--- a/src/i18n/messages/src/features/workspaces/components/WorkspacesDashboard.json
+++ /dev/null
@@ -1,106 +0,0 @@
1[
2 {
3 "id": "settings.workspaces.headline",
4 "defaultMessage": "!!!Your workspaces",
5 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
6 "start": {
7 "line": 17,
8 "column": 12
9 },
10 "end": {
11 "line": 20,
12 "column": 3
13 }
14 },
15 {
16 "id": "settings.workspaces.noWorkspacesAdded",
17 "defaultMessage": "!!!You haven't added any workspaces yet.",
18 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
19 "start": {
20 "line": 21,
21 "column": 19
22 },
23 "end": {
24 "line": 24,
25 "column": 3
26 }
27 },
28 {
29 "id": "settings.workspaces.workspacesRequestFailed",
30 "defaultMessage": "!!!Could not load your workspaces",
31 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
32 "start": {
33 "line": 25,
34 "column": 27
35 },
36 "end": {
37 "line": 28,
38 "column": 3
39 }
40 },
41 {
42 "id": "settings.workspaces.tryReloadWorkspaces",
43 "defaultMessage": "!!!Try again",
44 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
45 "start": {
46 "line": 29,
47 "column": 23
48 },
49 "end": {
50 "line": 32,
51 "column": 3
52 }
53 },
54 {
55 "id": "settings.workspaces.updatedInfo",
56 "defaultMessage": "!!!Your changes have been saved",
57 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
58 "start": {
59 "line": 33,
60 "column": 15
61 },
62 "end": {
63 "line": 36,
64 "column": 3
65 }
66 },
67 {
68 "id": "settings.workspaces.deletedInfo",
69 "defaultMessage": "!!!Workspace has been deleted",
70 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
71 "start": {
72 "line": 37,
73 "column": 15
74 },
75 "end": {
76 "line": 40,
77 "column": 3
78 }
79 },
80 {
81 "id": "settings.workspaces.workspaceFeatureInfo",
82 "defaultMessage": "!!!Info about workspace feature",
83 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
84 "start": {
85 "line": 41,
86 "column": 24
87 },
88 "end": {
89 "line": 44,
90 "column": 3
91 }
92 },
93 {
94 "id": "settings.workspaces.workspaceFeatureHeadline",
95 "defaultMessage": "!!!Less is More: Introducing Franz Workspaces",
96 "file": "src/features/workspaces/components/WorkspacesDashboard.js",
97 "start": {
98 "line": 45,
99 "column": 28
100 },
101 "end": {
102 "line": 48,
103 "column": 3
104 }
105 }
106] \ No newline at end of file
diff --git a/src/i18n/messages/src/helpers/validation-helpers.json b/src/i18n/messages/src/helpers/validation-helpers.json
deleted file mode 100644
index 86bfe1500..000000000
--- a/src/i18n/messages/src/helpers/validation-helpers.json
+++ /dev/null
@@ -1,67 +0,0 @@
1[
2 {
3 "id": "validation.required",
4 "defaultMessage": "!!!Field is required",
5 "file": "src/helpers/validation-helpers.js",
6 "start": {
7 "line": 4,
8 "column": 12
9 },
10 "end": {
11 "line": 7,
12 "column": 3
13 }
14 },
15 {
16 "id": "validation.email",
17 "defaultMessage": "!!!Email not valid",
18 "file": "src/helpers/validation-helpers.js",
19 "start": {
20 "line": 8,
21 "column": 9
22 },
23 "end": {
24 "line": 11,
25 "column": 3
26 }
27 },
28 {
29 "id": "validation.url",
30 "defaultMessage": "!!!Not a valid URL",
31 "file": "src/helpers/validation-helpers.js",
32 "start": {
33 "line": 12,
34 "column": 7
35 },
36 "end": {
37 "line": 15,
38 "column": 3
39 }
40 },
41 {
42 "id": "validation.minLength",
43 "defaultMessage": "!!!Too few characters",
44 "file": "src/helpers/validation-helpers.js",
45 "start": {
46 "line": 16,
47 "column": 13
48 },
49 "end": {
50 "line": 19,
51 "column": 3
52 }
53 },
54 {
55 "id": "validation.oneRequired",
56 "defaultMessage": "!!!At least one is required",
57 "file": "src/helpers/validation-helpers.js",
58 "start": {
59 "line": 20,
60 "column": 15
61 },
62 "end": {
63 "line": 23,
64 "column": 3
65 }
66 }
67] \ No newline at end of file
diff --git a/src/i18n/messages/src/i18n/globalMessages.json b/src/i18n/messages/src/i18n/globalMessages.json
deleted file mode 100644
index 28001614f..000000000
--- a/src/i18n/messages/src/i18n/globalMessages.json
+++ /dev/null
@@ -1,80 +0,0 @@
1[
2 {
3 "id": "global.api.unhealthy",
4 "defaultMessage": "!!!Can't connect to Franz Online Services",
5 "file": "src/i18n/globalMessages.js",
6 "start": {
7 "line": 4,
8 "column": 16
9 },
10 "end": {
11 "line": 7,
12 "column": 3
13 }
14 },
15 {
16 "id": "global.notConnectedToTheInternet",
17 "defaultMessage": "!!!You are not connected to the internet.",
18 "file": "src/i18n/globalMessages.js",
19 "start": {
20 "line": 8,
21 "column": 29
22 },
23 "end": {
24 "line": 11,
25 "column": 3
26 }
27 },
28 {
29 "id": "global.spellchecking.language",
30 "defaultMessage": "!!!Spell checking language",
31 "file": "src/i18n/globalMessages.js",
32 "start": {
33 "line": 12,
34 "column": 24
35 },
36 "end": {
37 "line": 15,
38 "column": 3
39 }
40 },
41 {
42 "id": "global.spellchecker.useDefault",
43 "defaultMessage": "!!!Use System Default ({default})",
44 "file": "src/i18n/globalMessages.js",
45 "start": {
46 "line": 16,
47 "column": 29
48 },
49 "end": {
50 "line": 19,
51 "column": 3
52 }
53 },
54 {
55 "id": "global.spellchecking.autodetect",
56 "defaultMessage": "!!!Detect language automatically",
57 "file": "src/i18n/globalMessages.js",
58 "start": {
59 "line": 20,
60 "column": 34
61 },
62 "end": {
63 "line": 23,
64 "column": 3
65 }
66 },
67 {
68 "id": "global.spellchecking.autodetect.short",
69 "defaultMessage": "!!!Automatic",
70 "file": "src/i18n/globalMessages.js",
71 "start": {
72 "line": 24,
73 "column": 39
74 },
75 "end": {
76 "line": 27,
77 "column": 3
78 }
79 }
80] \ No newline at end of file
diff --git a/src/i18n/messages/src/lib/Menu.json b/src/i18n/messages/src/lib/Menu.json
deleted file mode 100644
index a2ce34cd4..000000000
--- a/src/i18n/messages/src/lib/Menu.json
+++ /dev/null
@@ -1,691 +0,0 @@
1[
2 {
3 "id": "menu.edit",
4 "defaultMessage": "!!!Edit",
5 "file": "src/lib/Menu.js",
6 "start": {
7 "line": 14,
8 "column": 8
9 },
10 "end": {
11 "line": 17,
12 "column": 3
13 }
14 },
15 {
16 "id": "menu.edit.undo",
17 "defaultMessage": "!!!Undo",
18 "file": "src/lib/Menu.js",
19 "start": {
20 "line": 18,
21 "column": 8
22 },
23 "end": {
24 "line": 21,
25 "column": 3
26 }
27 },
28 {
29 "id": "menu.edit.redo",
30 "defaultMessage": "!!!Redo",
31 "file": "src/lib/Menu.js",
32 "start": {
33 "line": 22,
34 "column": 8
35 },
36 "end": {
37 "line": 25,
38 "column": 3
39 }
40 },
41 {
42 "id": "menu.edit.cut",
43 "defaultMessage": "!!!Cut",
44 "file": "src/lib/Menu.js",
45 "start": {
46 "line": 26,
47 "column": 7
48 },
49 "end": {
50 "line": 29,
51 "column": 3
52 }
53 },
54 {
55 "id": "menu.edit.copy",
56 "defaultMessage": "!!!Copy",
57 "file": "src/lib/Menu.js",
58 "start": {
59 "line": 30,
60 "column": 8
61 },
62 "end": {
63 "line": 33,
64 "column": 3
65 }
66 },
67 {
68 "id": "menu.edit.paste",
69 "defaultMessage": "!!!Paste",
70 "file": "src/lib/Menu.js",
71 "start": {
72 "line": 34,
73 "column": 9
74 },
75 "end": {
76 "line": 37,
77 "column": 3
78 }
79 },
80 {
81 "id": "menu.edit.pasteAndMatchStyle",
82 "defaultMessage": "!!!Paste And Match Style",
83 "file": "src/lib/Menu.js",
84 "start": {
85 "line": 38,
86 "column": 22
87 },
88 "end": {
89 "line": 41,
90 "column": 3
91 }
92 },
93 {
94 "id": "menu.edit.delete",
95 "defaultMessage": "!!!Delete",
96 "file": "src/lib/Menu.js",
97 "start": {
98 "line": 42,
99 "column": 10
100 },
101 "end": {
102 "line": 45,
103 "column": 3
104 }
105 },
106 {
107 "id": "menu.edit.selectAll",
108 "defaultMessage": "!!!Select All",
109 "file": "src/lib/Menu.js",
110 "start": {
111 "line": 46,
112 "column": 13
113 },
114 "end": {
115 "line": 49,
116 "column": 3
117 }
118 },
119 {
120 "id": "menu.edit.speech",
121 "defaultMessage": "!!!Speech",
122 "file": "src/lib/Menu.js",
123 "start": {
124 "line": 50,
125 "column": 10
126 },
127 "end": {
128 "line": 53,
129 "column": 3
130 }
131 },
132 {
133 "id": "menu.edit.startSpeaking",
134 "defaultMessage": "!!!Start Speaking",
135 "file": "src/lib/Menu.js",
136 "start": {
137 "line": 54,
138 "column": 17
139 },
140 "end": {
141 "line": 57,
142 "column": 3
143 }
144 },
145 {
146 "id": "menu.edit.stopSpeaking",
147 "defaultMessage": "!!!Stop Speaking",
148 "file": "src/lib/Menu.js",
149 "start": {
150 "line": 58,
151 "column": 16
152 },
153 "end": {
154 "line": 61,
155 "column": 3
156 }
157 },
158 {
159 "id": "menu.edit.startDictation",
160 "defaultMessage": "!!!Start Dictation",
161 "file": "src/lib/Menu.js",
162 "start": {
163 "line": 62,
164 "column": 18
165 },
166 "end": {
167 "line": 65,
168 "column": 3
169 }
170 },
171 {
172 "id": "menu.edit.emojiSymbols",
173 "defaultMessage": "!!!Emoji & Symbols",
174 "file": "src/lib/Menu.js",
175 "start": {
176 "line": 66,
177 "column": 16
178 },
179 "end": {
180 "line": 69,
181 "column": 3
182 }
183 },
184 {
185 "id": "menu.view.resetZoom",
186 "defaultMessage": "!!!Actual Size",
187 "file": "src/lib/Menu.js",
188 "start": {
189 "line": 70,
190 "column": 13
191 },
192 "end": {
193 "line": 73,
194 "column": 3
195 }
196 },
197 {
198 "id": "menu.view.zoomIn",
199 "defaultMessage": "!!!Zoom In",
200 "file": "src/lib/Menu.js",
201 "start": {
202 "line": 74,
203 "column": 10
204 },
205 "end": {
206 "line": 77,
207 "column": 3
208 }
209 },
210 {
211 "id": "menu.view.zoomOut",
212 "defaultMessage": "!!!Zoom Out",
213 "file": "src/lib/Menu.js",
214 "start": {
215 "line": 78,
216 "column": 11
217 },
218 "end": {
219 "line": 81,
220 "column": 3
221 }
222 },
223 {
224 "id": "menu.view.enterFullScreen",
225 "defaultMessage": "!!!Enter Full Screen",
226 "file": "src/lib/Menu.js",
227 "start": {
228 "line": 82,
229 "column": 19
230 },
231 "end": {
232 "line": 85,
233 "column": 3
234 }
235 },
236 {
237 "id": "menu.view.exitFullScreen",
238 "defaultMessage": "!!!Exit Full Screen",
239 "file": "src/lib/Menu.js",
240 "start": {
241 "line": 86,
242 "column": 18
243 },
244 "end": {
245 "line": 89,
246 "column": 3
247 }
248 },
249 {
250 "id": "menu.view.toggleFullScreen",
251 "defaultMessage": "!!!Toggle Full Screen",
252 "file": "src/lib/Menu.js",
253 "start": {
254 "line": 90,
255 "column": 20
256 },
257 "end": {
258 "line": 93,
259 "column": 3
260 }
261 },
262 {
263 "id": "menu.view.toggleDevTools",
264 "defaultMessage": "!!!Toggle Developer Tools",
265 "file": "src/lib/Menu.js",
266 "start": {
267 "line": 94,
268 "column": 18
269 },
270 "end": {
271 "line": 97,
272 "column": 3
273 }
274 },
275 {
276 "id": "menu.view.toggleServiceDevTools",
277 "defaultMessage": "!!!Toggle Service Developer Tools",
278 "file": "src/lib/Menu.js",
279 "start": {
280 "line": 98,
281 "column": 25
282 },
283 "end": {
284 "line": 101,
285 "column": 3
286 }
287 },
288 {
289 "id": "menu.view.reloadService",
290 "defaultMessage": "!!!Reload Service",
291 "file": "src/lib/Menu.js",
292 "start": {
293 "line": 102,
294 "column": 17
295 },
296 "end": {
297 "line": 105,
298 "column": 3
299 }
300 },
301 {
302 "id": "menu.view.reloadFranz",
303 "defaultMessage": "!!!Reload Franz",
304 "file": "src/lib/Menu.js",
305 "start": {
306 "line": 106,
307 "column": 15
308 },
309 "end": {
310 "line": 109,
311 "column": 3
312 }
313 },
314 {
315 "id": "menu.window.minimize",
316 "defaultMessage": "!!!Minimize",
317 "file": "src/lib/Menu.js",
318 "start": {
319 "line": 110,
320 "column": 12
321 },
322 "end": {
323 "line": 113,
324 "column": 3
325 }
326 },
327 {
328 "id": "menu.window.close",
329 "defaultMessage": "!!!Close",
330 "file": "src/lib/Menu.js",
331 "start": {
332 "line": 114,
333 "column": 9
334 },
335 "end": {
336 "line": 117,
337 "column": 3
338 }
339 },
340 {
341 "id": "menu.help.learnMore",
342 "defaultMessage": "!!!Learn More",
343 "file": "src/lib/Menu.js",
344 "start": {
345 "line": 118,
346 "column": 13
347 },
348 "end": {
349 "line": 121,
350 "column": 3
351 }
352 },
353 {
354 "id": "menu.help.changelog",
355 "defaultMessage": "!!!Changelog",
356 "file": "src/lib/Menu.js",
357 "start": {
358 "line": 122,
359 "column": 13
360 },
361 "end": {
362 "line": 125,
363 "column": 3
364 }
365 },
366 {
367 "id": "menu.help.support",
368 "defaultMessage": "!!!Support",
369 "file": "src/lib/Menu.js",
370 "start": {
371 "line": 126,
372 "column": 11
373 },
374 "end": {
375 "line": 129,
376 "column": 3
377 }
378 },
379 {
380 "id": "menu.help.tos",
381 "defaultMessage": "!!!Terms of Service",
382 "file": "src/lib/Menu.js",
383 "start": {
384 "line": 130,
385 "column": 7
386 },
387 "end": {
388 "line": 133,
389 "column": 3
390 }
391 },
392 {
393 "id": "menu.help.privacy",
394 "defaultMessage": "!!!Privacy Statement",
395 "file": "src/lib/Menu.js",
396 "start": {
397 "line": 134,
398 "column": 11
399 },
400 "end": {
401 "line": 137,
402 "column": 3
403 }
404 },
405 {
406 "id": "menu.file",
407 "defaultMessage": "!!!File",
408 "file": "src/lib/Menu.js",
409 "start": {
410 "line": 138,
411 "column": 8
412 },
413 "end": {
414 "line": 141,
415 "column": 3
416 }
417 },
418 {
419 "id": "menu.view",
420 "defaultMessage": "!!!View",
421 "file": "src/lib/Menu.js",
422 "start": {
423 "line": 142,
424 "column": 8
425 },
426 "end": {
427 "line": 145,
428 "column": 3
429 }
430 },
431 {
432 "id": "menu.services",
433 "defaultMessage": "!!!Services",
434 "file": "src/lib/Menu.js",
435 "start": {
436 "line": 146,
437 "column": 12
438 },
439 "end": {
440 "line": 149,
441 "column": 3
442 }
443 },
444 {
445 "id": "menu.window",
446 "defaultMessage": "!!!Window",
447 "file": "src/lib/Menu.js",
448 "start": {
449 "line": 150,
450 "column": 10
451 },
452 "end": {
453 "line": 153,
454 "column": 3
455 }
456 },
457 {
458 "id": "menu.help",
459 "defaultMessage": "!!!Help",
460 "file": "src/lib/Menu.js",
461 "start": {
462 "line": 154,
463 "column": 8
464 },
465 "end": {
466 "line": 157,
467 "column": 3
468 }
469 },
470 {
471 "id": "menu.app.about",
472 "defaultMessage": "!!!About Franz",
473 "file": "src/lib/Menu.js",
474 "start": {
475 "line": 158,
476 "column": 9
477 },
478 "end": {
479 "line": 161,
480 "column": 3
481 }
482 },
483 {
484 "id": "menu.app.announcement",
485 "defaultMessage": "!!!What's new?",
486 "file": "src/lib/Menu.js",
487 "start": {
488 "line": 162,
489 "column": 16
490 },
491 "end": {
492 "line": 165,
493 "column": 3
494 }
495 },
496 {
497 "id": "menu.app.settings",
498 "defaultMessage": "!!!Settings",
499 "file": "src/lib/Menu.js",
500 "start": {
501 "line": 166,
502 "column": 12
503 },
504 "end": {
505 "line": 169,
506 "column": 3
507 }
508 },
509 {
510 "id": "menu.app.hide",
511 "defaultMessage": "!!!Hide",
512 "file": "src/lib/Menu.js",
513 "start": {
514 "line": 170,
515 "column": 8
516 },
517 "end": {
518 "line": 173,
519 "column": 3
520 }
521 },
522 {
523 "id": "menu.app.hideOthers",
524 "defaultMessage": "!!!Hide Others",
525 "file": "src/lib/Menu.js",
526 "start": {
527 "line": 174,
528 "column": 14
529 },
530 "end": {
531 "line": 177,
532 "column": 3
533 }
534 },
535 {
536 "id": "menu.app.unhide",
537 "defaultMessage": "!!!Unhide",
538 "file": "src/lib/Menu.js",
539 "start": {
540 "line": 178,
541 "column": 10
542 },
543 "end": {
544 "line": 181,
545 "column": 3
546 }
547 },
548 {
549 "id": "menu.app.quit",
550 "defaultMessage": "!!!Quit",
551 "file": "src/lib/Menu.js",
552 "start": {
553 "line": 182,
554 "column": 8
555 },
556 "end": {
557 "line": 185,
558 "column": 3
559 }
560 },
561 {
562 "id": "menu.services.addNewService",
563 "defaultMessage": "!!!Add New Service...",
564 "file": "src/lib/Menu.js",
565 "start": {
566 "line": 186,
567 "column": 17
568 },
569 "end": {
570 "line": 189,
571 "column": 3
572 }
573 },
574 {
575 "id": "menu.workspaces.addNewWorkspace",
576 "defaultMessage": "!!!Add New Workspace...",
577 "file": "src/lib/Menu.js",
578 "start": {
579 "line": 190,
580 "column": 19
581 },
582 "end": {
583 "line": 193,
584 "column": 3
585 }
586 },
587 {
588 "id": "menu.workspaces.openWorkspaceDrawer",
589 "defaultMessage": "!!!Open workspace drawer",
590 "file": "src/lib/Menu.js",
591 "start": {
592 "line": 194,
593 "column": 23
594 },
595 "end": {
596 "line": 197,
597 "column": 3
598 }
599 },
600 {
601 "id": "menu.workspaces.closeWorkspaceDrawer",
602 "defaultMessage": "!!!Close workspace drawer",
603 "file": "src/lib/Menu.js",
604 "start": {
605 "line": 198,
606 "column": 24
607 },
608 "end": {
609 "line": 201,
610 "column": 3
611 }
612 },
613 {
614 "id": "menu.services.setNextServiceActive",
615 "defaultMessage": "!!!Activate next service...",
616 "file": "src/lib/Menu.js",
617 "start": {
618 "line": 202,
619 "column": 23
620 },
621 "end": {
622 "line": 205,
623 "column": 3
624 }
625 },
626 {
627 "id": "menu.services.activatePreviousService",
628 "defaultMessage": "!!!Activate previous service...",
629 "file": "src/lib/Menu.js",
630 "start": {
631 "line": 206,
632 "column": 27
633 },
634 "end": {
635 "line": 209,
636 "column": 3
637 }
638 },
639 {
640 "id": "sidebar.muteApp",
641 "defaultMessage": "!!!Disable notifications & audio",
642 "file": "src/lib/Menu.js",
643 "start": {
644 "line": 210,
645 "column": 11
646 },
647 "end": {
648 "line": 213,
649 "column": 3
650 }
651 },
652 {
653 "id": "sidebar.unmuteApp",
654 "defaultMessage": "!!!Enable notifications & audio",
655 "file": "src/lib/Menu.js",
656 "start": {
657 "line": 214,
658 "column": 13
659 },
660 "end": {
661 "line": 217,
662 "column": 3
663 }
664 },
665 {
666 "id": "menu.workspaces",
667 "defaultMessage": "!!!Workspaces",
668 "file": "src/lib/Menu.js",
669 "start": {
670 "line": 218,
671 "column": 14
672 },
673 "end": {
674 "line": 221,
675 "column": 3
676 }
677 },
678 {
679 "id": "menu.workspaces.defaultWorkspace",
680 "defaultMessage": "!!!Default",
681 "file": "src/lib/Menu.js",
682 "start": {
683 "line": 222,
684 "column": 20
685 },
686 "end": {
687 "line": 225,
688 "column": 3
689 }
690 }
691] \ No newline at end of file
diff --git a/src/index.js b/src/index.js
index 05c793d98..3fe996aa7 100644
--- a/src/index.js
+++ b/src/index.js
@@ -305,6 +305,20 @@ const createWindow = () => {
305 }); 305 });
306}; 306};
307 307
308// Allow passing command line parameters/switches to electron
309// https://electronjs.org/docs/api/chrome-command-line-switches
310// used for Kerberos support
311// Usage e.g. MACOS
312// $ Franz.app/Contents/MacOS/Franz --auth-server-whitelist *.mydomain.com --auth-negotiate-delegate-whitelist *.mydomain.com
313const argv = require('minimist')(process.argv.slice(1));
314
315if (argv['auth-server-whitelist']) {
316 app.commandLine.appendSwitch('auth-server-whitelist', argv['auth-server-whitelist']);
317}
318if (argv['auth-negotiate-delegate-whitelist']) {
319 app.commandLine.appendSwitch('auth-negotiate-delegate-whitelist', argv['auth-negotiate-delegate-whitelist']);
320}
321
308// This method will be called when Electron has finished 322// This method will be called when Electron has finished
309// initialization and is ready to create browser windows. 323// initialization and is ready to create browser windows.
310// Some APIs can only be used after this event occurs. 324// Some APIs can only be used after this event occurs.
diff --git a/src/stores/UserStore.js b/src/stores/UserStore.js
index 534690fbb..31555dd5c 100644
--- a/src/stores/UserStore.js
+++ b/src/stores/UserStore.js
@@ -178,6 +178,7 @@ export default class UserStore extends Store {
178 password, 178 password,
179 accountType, 179 accountType,
180 company, 180 company,
181 locale: this.stores.app.locale,
181 }); 182 });
182 183
183 this.hasCompletedSignup = false; 184 this.hasCompletedSignup = false;
diff --git a/src/stores/lib/Reaction.js b/src/stores/lib/Reaction.js
index b123ec01c..f2642908f 100644
--- a/src/stores/lib/Reaction.js
+++ b/src/stores/lib/Reaction.js
@@ -1,4 +1,3 @@
1// @flow
2import { autorun } from 'mobx'; 1import { autorun } from 'mobx';
3 2
4export default class Reaction { 3export default class Reaction {
@@ -15,14 +14,18 @@ export default class Reaction {
15 start() { 14 start() {
16 if (!this.isRunning) { 15 if (!this.isRunning) {
17 this.dispose = autorun(() => this.reaction()); 16 this.dispose = autorun(() => this.reaction());
18 this.isRunning = true; 17 this.isActive = true;
19 } 18 }
20 } 19 }
21 20
22 stop() { 21 stop() {
23 if (this.isRunning) { 22 if (this.isRunning) {
24 this.dispose(); 23 this.dispose();
25 this.isRunning = true; 24 this.isActive = false;
26 } 25 }
27 } 26 }
28} 27}
28
29export const createReactions = reactions => (
30 reactions.map(r => new Reaction(r))
31);