From 16d9a6dda87c1aabe02f0d058d44b40292f9e8c6 Mon Sep 17 00:00:00 2001 From: Philipp Dormann Date: Thu, 18 Mar 2021 18:15:54 +0100 Subject: [PATCH] basic i18n ref #1 --- .vscode/i18n-ally-custom-framework.yml | 7 +++++ .vscode/settings.json | 4 +++ app/package.json | 6 ++-- app/src/App.svelte | 13 ++++++++ app/src/Login.svelte | 43 +++++++++++++++----------- app/src/Scanner.svelte | 42 ++++++++++++++++--------- app/src/locales/de.json | 9 ++++++ app/src/locales/en.json | 14 +++++++++ package.json | 10 +++--- 9 files changed, 109 insertions(+), 39 deletions(-) create mode 100644 .vscode/i18n-ally-custom-framework.yml create mode 100644 .vscode/settings.json create mode 100644 app/src/locales/de.json create mode 100644 app/src/locales/en.json diff --git a/.vscode/i18n-ally-custom-framework.yml b/.vscode/i18n-ally-custom-framework.yml new file mode 100644 index 0000000..3fe77a2 --- /dev/null +++ b/.vscode/i18n-ally-custom-framework.yml @@ -0,0 +1,7 @@ +languageIds: + - javascript + - svelte + - html +monopoly: false +refactorTemplates: + - "{$_('$1')}" \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..9143452 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,4 @@ +{ + "i18n-ally.localesPaths": "app/src/locales", + "i18n-ally.keystyle": "nested" +} \ No newline at end of file diff --git a/app/package.json b/app/package.json index 12e7b5b..ac4e023 100644 --- a/app/package.json +++ b/app/package.json @@ -8,7 +8,7 @@ "prepare": "husky install" }, "devDependencies": { - "@svitejs/vite-plugin-svelte": "^0.11.0", + "@svitejs/vite-plugin-svelte": "^0.11.1", "@tsconfig/svelte": "^1.0.10", "@types/html-minifier": "^4.0.0", "axios": "^0.21.1", @@ -19,7 +19,7 @@ "prettier-plugin-svelte": "^2.2.0", "svelte": "^3.35.0", "svelte-preprocess": "^4.6.9", - "vite": "^2.0.5", - "vite-plugin-windicss": "^0.8.2" + "vite": "^2.1.2", + "vite-plugin-windicss": "^0.9.2" } } diff --git a/app/src/App.svelte b/app/src/App.svelte index c357889..520f605 100644 --- a/app/src/App.svelte +++ b/app/src/App.svelte @@ -1,4 +1,12 @@ {#if settings_open && is_configured} diff --git a/app/src/Login.svelte b/app/src/Login.svelte index 6f771b8..3945cb0 100644 --- a/app/src/Login.svelte +++ b/app/src/Login.svelte @@ -1,6 +1,7 @@
-
-
-
- -
+
+
+
+ +
-
- Lauf Für Kaya! Scan 📷 -
+
+ Lauf Für Kaya! Scan 📷 +
-
- {JSON.parse($stationinfo).track.name} - #{JSON.parse($stationinfo).track - .id} - {JSON.parse($stationinfo).track.distance}m +
+ {JSON.parse($stationinfo).track.name} - #{JSON.parse($stationinfo).track + .id} - {JSON.parse($stationinfo).track.distance}m +
-

{hours}:{minutes}:{seconds} @@ -73,9 +74,22 @@ const minutes = (time.getMinutes() + "").padStart(2, "0"); const seconds = (time.getSeconds() + "").padStart(2, "0"); lastscan_time = hours + ":" + minutes + ":" + seconds; - response.data.lapTime = Math.floor(response.data.lapTime / 60) + 'min ' + (Math.floor(response.data.lapTime % 60) + "").padStart(2, "0") + "s" + response.data.lapTime = + Math.floor(response.data.lapTime / 60) + + "min " + + (Math.floor(response.data.lapTime % 60) + "").padStart( + 2, + "0" + ) + + "s"; lastscan_laptime = response.data.lapTime; - lastscan_totaldistance = Math.floor(response.data.runner.distance / 1000) + 'km ' + (Math.floor(response.data.runner.distance % 1000) + "").padStart(3, "0") + "m" + lastscan_totaldistance = + Math.floor(response.data.runner.distance / 1000) + + "km " + + ( + Math.floor(response.data.runner.distance % 1000) + "" + ).padStart(3, "0") + + "m"; }) .catch((e) => { lastscan_error = e.response.data.message; diff --git a/app/src/locales/de.json b/app/src/locales/de.json new file mode 100644 index 0000000..2c9df8d --- /dev/null +++ b/app/src/locales/de.json @@ -0,0 +1,9 @@ +{ + "english": "Englisch", + "the_provided_scan_station_token_is_invalid": "", + "configuration": "Konfiguration", + "please_provide_the_scan_client_token": "Bitte gebe den Scan-Client-Token an.", + "the_provided_scan_station_is_disabled": "Die angegebene Scanstation ist deaktiviert.", + "see_our_configuration_guide": "Siehe dir unsere Konfigurationsanleitung an.", + "please_provide_a_valid_client_token": "Bitte gebe einen gültigen Client-Token an ..." +} diff --git a/app/src/locales/en.json b/app/src/locales/en.json new file mode 100644 index 0000000..2b31e66 --- /dev/null +++ b/app/src/locales/en.json @@ -0,0 +1,14 @@ +{ + "please_provide_the_scan_client_token": "Please provide the scan client token.", + "configuration": "Configuration", + "see_our_configuration_guide": "See our configuration guide.", + "error": "Error!", + "the_provided_scan_station_token_is_invalid": "The provided scan station token is invalid.", + "please_check_your_token_and_try_again": "Please check your token and try again...", + "the_provided_scan_station_is_disabled": "The provided scan station is disabled.", + "client_token": "Client Token", + "please_provide_a_valid_client_token": "Please provide a valid client token...", + "configure": "Configure", + "german": "Deutsch", + "english": "English" +} diff --git a/package.json b/package.json index 5037c24..7fef7bc 100644 --- a/package.json +++ b/package.json @@ -16,11 +16,11 @@ "@electron-forge/maker-rpm": "^6.0.0-beta.54", "@electron-forge/maker-squirrel": "^6.0.0-beta.54", "@electron-forge/maker-zip": "^6.0.0-beta.54", - "electron-nightly": "14.0.0-nightly.20210311", - "husky": "^5.1.3" + "electron-nightly": "14.0.0-nightly.20210318" }, "dependencies": { - "electron-squirrel-startup": "^1.0.0" + "electron-squirrel-startup": "^1.0.0", + "svelte-i18n": "^3.3.7" }, "config": { "forge": { @@ -28,7 +28,9 @@ "makers": [ { "name": "@electron-forge/maker-zip", - "platforms": [ "darwin" ], + "platforms": [ + "darwin" + ], "config": { "name": "lfk__scanclient" }