From 07de8573008e7eaf5b3b06dd2cfd3a0b54f7b2ce Mon Sep 17 00:00:00 2001 From: Roland Geider Date: Fri, 19 May 2023 12:57:56 +0200 Subject: [PATCH 01/12] Set platform to iOS 11 --- ios/Flutter/AppFrameworkInfo.plist | 2 +- ios/Podfile | 2 +- ios/Podfile.lock | 85 ++++++++++++++-------------- ios/Runner.xcodeproj/project.pbxproj | 10 ++-- ios/Runner/Info.plist | 2 + 5 files changed, 53 insertions(+), 48 deletions(-) diff --git a/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist index f2872cf4..4f8d4d24 100644 --- a/ios/Flutter/AppFrameworkInfo.plist +++ b/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 9.0 + 11.0 diff --git a/ios/Podfile b/ios/Podfile index 1e8c3c90..2c068c40 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -1,5 +1,5 @@ # Uncomment this line to define a global platform for your project -# platform :ios, '9.0' +platform :ios, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' diff --git a/ios/Podfile.lock b/ios/Podfile.lock index b013bfe1..8169503c 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -1,70 +1,71 @@ PODS: - - camera (0.0.1): - - Flutter - Flutter (1.0.0) + - flutter_barcode_scanner (2.0.0): + - Flutter - flutter_keyboard_visibility (0.0.1): - Flutter - - image_picker (0.0.1): + - image_picker_ios (0.0.1): - Flutter - - package_info (0.0.1): + - integration_test (0.0.1): - Flutter - - shared_preferences_ios (0.0.1): + - package_info_plus (0.4.5): - Flutter + - rive_common (0.0.1): + - Flutter + - shared_preferences_foundation (0.0.1): + - Flutter + - FlutterMacOS - url_launcher_ios (0.0.1): - Flutter - - video_player (0.0.1): - - Flutter - - wakelock (0.0.1): - - Flutter - - webview_flutter_wkwebview (0.0.1): + - video_player_avfoundation (0.0.1): - Flutter DEPENDENCIES: - - camera (from `.symlinks/plugins/camera/ios`) - Flutter (from `Flutter`) + - flutter_barcode_scanner (from `.symlinks/plugins/flutter_barcode_scanner/ios`) - flutter_keyboard_visibility (from `.symlinks/plugins/flutter_keyboard_visibility/ios`) - - image_picker (from `.symlinks/plugins/image_picker/ios`) - - package_info (from `.symlinks/plugins/package_info/ios`) - - shared_preferences_ios (from `.symlinks/plugins/shared_preferences_ios/ios`) + - image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`) + - integration_test (from `.symlinks/plugins/integration_test/ios`) + - package_info_plus (from `.symlinks/plugins/package_info_plus/ios`) + - rive_common (from `.symlinks/plugins/rive_common/ios`) + - shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/ios`) - url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`) - - video_player (from `.symlinks/plugins/video_player/ios`) - - wakelock (from `.symlinks/plugins/wakelock/ios`) - - webview_flutter_wkwebview (from `.symlinks/plugins/webview_flutter_wkwebview/ios`) + - video_player_avfoundation (from `.symlinks/plugins/video_player_avfoundation/ios`) EXTERNAL SOURCES: - camera: - :path: ".symlinks/plugins/camera/ios" Flutter: :path: Flutter + flutter_barcode_scanner: + :path: ".symlinks/plugins/flutter_barcode_scanner/ios" flutter_keyboard_visibility: :path: ".symlinks/plugins/flutter_keyboard_visibility/ios" - image_picker: - :path: ".symlinks/plugins/image_picker/ios" - package_info: - :path: ".symlinks/plugins/package_info/ios" - shared_preferences_ios: - :path: ".symlinks/plugins/shared_preferences_ios/ios" + image_picker_ios: + :path: ".symlinks/plugins/image_picker_ios/ios" + integration_test: + :path: ".symlinks/plugins/integration_test/ios" + package_info_plus: + :path: ".symlinks/plugins/package_info_plus/ios" + rive_common: + :path: ".symlinks/plugins/rive_common/ios" + shared_preferences_foundation: + :path: ".symlinks/plugins/shared_preferences_foundation/ios" url_launcher_ios: :path: ".symlinks/plugins/url_launcher_ios/ios" - video_player: - :path: ".symlinks/plugins/video_player/ios" - wakelock: - :path: ".symlinks/plugins/wakelock/ios" - webview_flutter_wkwebview: - :path: ".symlinks/plugins/webview_flutter_wkwebview/ios" + video_player_avfoundation: + :path: ".symlinks/plugins/video_player_avfoundation/ios" SPEC CHECKSUMS: - camera: fe33292aff715a981eb34d7ce7b35b54337ff34c - Flutter: 50d75fe2f02b26cc09d224853bb45737f8b3214a + Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 + flutter_barcode_scanner: 7a1144744c28dc0c57a8de7218ffe5ec59a9e4bf flutter_keyboard_visibility: 0339d06371254c3eb25eeb90ba8d17dca8f9c069 - image_picker: 9aa50e1d8cdacdbed739e925b7eea16d014367e6 - package_info: 873975fc26034f0b863a300ad47e7f1ac6c7ec62 - shared_preferences_ios: aef470a42dc4675a1cdd50e3158b42e3d1232b32 - url_launcher_ios: 02f1989d4e14e998335b02b67a7590fa34f971af - video_player: ecd305f42e9044793efd34846e1ce64c31ea6fcb - wakelock: d0fc7c864128eac40eba1617cb5264d9c940b46f - webview_flutter_wkwebview: 005fbd90c888a42c5690919a1527ecc6649e1162 + image_picker_ios: 4a8aadfbb6dc30ad5141a2ce3832af9214a705b5 + integration_test: a1e7d09bd98eca2fc37aefd79d4f41ad37bdbbe5 + package_info_plus: 6c92f08e1f853dc01228d6f553146438dafcd14e + rive_common: 60ae7896ab40f9513974f36f015de33f70d2c5c5 + shared_preferences_foundation: 986fc17f3d3251412d18b0265f9c64113a8c2472 + url_launcher_ios: 08a3dfac5fb39e8759aeb0abbd5d9480f30fc8b4 + video_player_avfoundation: 81e49bb3d9fb63dccf9fa0f6d877dc3ddbeac126 -PODFILE CHECKSUM: aafe91acc616949ddb318b77800a7f51bffa2a4c +PODFILE CHECKSUM: 4e8f8b2be68aeea4c0d5beb6ff1e79fface1d048 -COCOAPODS: 1.11.2 +COCOAPODS: 1.12.0 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index d44478a3..7bccdc01 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 50; + objectVersion = 54; objects = { /* Begin PBXBuildFile section */ @@ -199,6 +199,7 @@ /* Begin PBXShellScriptBuildPhase section */ 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); @@ -252,6 +253,7 @@ }; 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); @@ -339,7 +341,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; @@ -425,7 +427,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -474,7 +476,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; + IPHONEOS_DEPLOYMENT_TARGET = 11.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SUPPORTED_PLATFORMS = iphoneos; diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index b8ebd6ec..9aa740a2 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -43,5 +43,7 @@ CADisableMinimumFrameDurationOnPhone + UIApplicationSupportsIndirectInputEvents + From 5cbaa2df4a480d83faf2f67ffd976c626687c57b Mon Sep 17 00:00:00 2001 From: Roland Geider Date: Fri, 19 May 2023 15:58:28 +0200 Subject: [PATCH 02/12] Update translatable strings from the server --- lib/l10n/app_en.arb | 177 ++++++++++++++++++++++++++++++++++++-------- 1 file changed, 145 insertions(+), 32 deletions(-) diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index f0fd2187..65f790f3 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -635,37 +635,150 @@ } }, "cacheWarning": "Due to caching it might take some time till the changes are visible throughout the application.", - "abs": "Abs", - "arms": "Arms", - "back": "Back", - "barbell": "Barbell", - "bench": "Bench", - "biceps": "Biceps", - "calves": "Calves", - "cardio": "Cardio", - "chest": "Chest", - "dumbbell": "Dumbbell", - "glutes": "Glutes", - "gym_mat": "Gym mat", - "hamstrings": "Hamstrings", - "incline_bench": "Incline bench", - "kettlebell": "Kettlebell", - "kilometers": "Kilometers", - "lats": "Lats", - "legs": "Legs", - "lower_back": "Lower back", - "miles": "Miles", - "minutes": "Minutes", - "pull_up_bar": "Pull-up bar", - "quads": "Quads", - "repetitions": "Repetitions", - "sz_bar": "SZ-Bar", - "seconds": "Seconds", - "shoulders": "Shoulders", - "swiss_ball": "Swiss Ball", - "triceps": "Triceps", - "until_failure": "Until Failure", - "none__bodyweight_exercise_": "none (bodyweight exercise)", "textPromptTitle": "Ready to start?", - "textPromptSubheading": "Press the action button to begin" + "textPromptSubheading": "Press the action button to begin", + "abs": "Abs", + "@abs": { + "description": "Generated entry for translation for server strings" + }, + "arms": "Arms", + "@arms": { + "description": "Generated entry for translation for server strings" + }, + "back": "Back", + "@back": { + "description": "Generated entry for translation for server strings" + }, + "barbell": "Barbell", + "@barbell": { + "description": "Generated entry for translation for server strings" + }, + "bench": "Bench", + "@bench": { + "description": "Generated entry for translation for server strings" + }, + "biceps": "Biceps", + "@biceps": { + "description": "Generated entry for translation for server strings" + }, + "body_weight": "Body Weight", + "@body_weight": { + "description": "Generated entry for translation for server strings" + }, + "calves": "Calves", + "@calves": { + "description": "Generated entry for translation for server strings" + }, + "cardio": "Cardio", + "@cardio": { + "description": "Generated entry for translation for server strings" + }, + "chest": "Chest", + "@chest": { + "description": "Generated entry for translation for server strings" + }, + "dumbbell": "Dumbbell", + "@dumbbell": { + "description": "Generated entry for translation for server strings" + }, + "glutes": "Glutes", + "@glutes": { + "description": "Generated entry for translation for server strings" + }, + "gym_mat": "Gym mat", + "@gym_mat": { + "description": "Generated entry for translation for server strings" + }, + "hamstrings": "Hamstrings", + "@hamstrings": { + "description": "Generated entry for translation for server strings" + }, + "incline_bench": "Incline bench", + "@incline_bench": { + "description": "Generated entry for translation for server strings" + }, + "kettlebell": "Kettlebell", + "@kettlebell": { + "description": "Generated entry for translation for server strings" + }, + "kilometers": "Kilometers", + "@kilometers": { + "description": "Generated entry for translation for server strings" + }, + "kilometers_per_hour": "Kilometers Per Hour", + "@kilometers_per_hour": { + "description": "Generated entry for translation for server strings" + }, + "lats": "Lats", + "@lats": { + "description": "Generated entry for translation for server strings" + }, + "legs": "Legs", + "@legs": { + "description": "Generated entry for translation for server strings" + }, + "miles": "Miles", + "@miles": { + "description": "Generated entry for translation for server strings" + }, + "miles_per_hour": "Miles Per Hour", + "@miles_per_hour": { + "description": "Generated entry for translation for server strings" + }, + "minutes": "Minutes", + "@minutes": { + "description": "Generated entry for translation for server strings" + }, + "plates": "Plates", + "@plates": { + "description": "Generated entry for translation for server strings" + }, + "pull_up_bar": "Pull-up bar", + "@pull_up_bar": { + "description": "Generated entry for translation for server strings" + }, + "quads": "Quads", + "@quads": { + "description": "Generated entry for translation for server strings" + }, + "repetitions": "Repetitions", + "@repetitions": { + "description": "Generated entry for translation for server strings" + }, + "sz_bar": "SZ-Bar", + "@sz_bar": { + "description": "Generated entry for translation for server strings" + }, + "seconds": "Seconds", + "@seconds": { + "description": "Generated entry for translation for server strings" + }, + "shoulders": "Shoulders", + "@shoulders": { + "description": "Generated entry for translation for server strings" + }, + "swiss_ball": "Swiss Ball", + "@swiss_ball": { + "description": "Generated entry for translation for server strings" + }, + "triceps": "Triceps", + "@triceps": { + "description": "Generated entry for translation for server strings" + }, + "until_failure": "Until Failure", + "@until_failure": { + "description": "Generated entry for translation for server strings" + }, + "kg": "kg", + "@kg": { + "description": "Generated entry for translation for server strings" + }, + "lb": "lb", + "@lb": { + "description": "Generated entry for translation for server strings" + }, + "none__bodyweight_exercise_": "none (bodyweight exercise)", + "@none__bodyweight_exercise_": { + "description": "Generated entry for translation for server strings" + } } From 026ba114ee376621ccd6a24a9b3324f546cd2651 Mon Sep 17 00:00:00 2001 From: Roland Geider Date: Fri, 19 May 2023 16:47:18 +0200 Subject: [PATCH 03/12] Update i18n.dart helper --- lib/helpers/i18n.dart | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/lib/helpers/i18n.dart b/lib/helpers/i18n.dart index 9820f740..9cf146fd 100644 --- a/lib/helpers/i18n.dart +++ b/lib/helpers/i18n.dart @@ -28,6 +28,9 @@ String getTranslation(String value, BuildContext context) { case 'Biceps': return AppLocalizations.of(context).biceps; + case 'Body Weight': + return AppLocalizations.of(context).body_weight; + case 'Calves': return AppLocalizations.of(context).calves; @@ -58,21 +61,27 @@ String getTranslation(String value, BuildContext context) { case 'Kilometers': return AppLocalizations.of(context).kilometers; + case 'Kilometers Per Hour': + return AppLocalizations.of(context).kilometers_per_hour; + case 'Lats': return AppLocalizations.of(context).lats; case 'Legs': return AppLocalizations.of(context).legs; - case 'Lower back': - return AppLocalizations.of(context).lower_back; - case 'Miles': return AppLocalizations.of(context).miles; + case 'Miles Per Hour': + return AppLocalizations.of(context).miles_per_hour; + case 'Minutes': return AppLocalizations.of(context).minutes; + case 'Plates': + return AppLocalizations.of(context).plates; + case 'Pull-up bar': return AppLocalizations.of(context).pull_up_bar; @@ -100,6 +109,12 @@ String getTranslation(String value, BuildContext context) { case 'Until Failure': return AppLocalizations.of(context).until_failure; + case 'kg': + return AppLocalizations.of(context).kg; + + case 'lb': + return AppLocalizations.of(context).lb; + case 'none (bodyweight exercise)': return AppLocalizations.of(context).none__bodyweight_exercise_; From 7204b2943d06abc9435855b8da07849f29e0a006 Mon Sep 17 00:00:00 2001 From: Dan Date: Sun, 21 May 2023 00:31:32 +0000 Subject: [PATCH 04/12] Translated using Weblate (Ukrainian) Currently translated at 100.0% (229 of 229 strings) Translation: wger Workout Manager/Mobile App Translate-URL: https://hosted.weblate.org/projects/wger/mobile/uk/ --- lib/l10n/app_uk.arb | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/lib/l10n/app_uk.arb b/lib/l10n/app_uk.arb index d9b7f2eb..5aed2268 100644 --- a/lib/l10n/app_uk.arb +++ b/lib/l10n/app_uk.arb @@ -621,7 +621,7 @@ "@legs": {}, "back": "Спина", "@back": {}, - "quads": "Квадроцикли", + "quads": "Квадрицепс", "@quads": {}, "arms": "Руки", "@arms": {}, @@ -721,5 +721,29 @@ "textPromptTitle": "Готові почати?", "@textPromptTitle": {}, "textPromptSubheading": "Натисніть кнопку дії, щоб почати", - "@textPromptSubheading": {} + "@textPromptSubheading": {}, + "body_weight": "Вага тіла", + "@body_weight": { + "description": "Generated entry for translation for server strings" + }, + "kg": "кг", + "@kg": { + "description": "Generated entry for translation for server strings" + }, + "kilometers_per_hour": "Кілометрів на годину", + "@kilometers_per_hour": { + "description": "Generated entry for translation for server strings" + }, + "miles_per_hour": "Миль на годину", + "@miles_per_hour": { + "description": "Generated entry for translation for server strings" + }, + "lb": "фунт", + "@lb": { + "description": "Generated entry for translation for server strings" + }, + "plates": "Пластини", + "@plates": { + "description": "Generated entry for translation for server strings" + } } From 2df450119bb3700cf463e57abd6f7eee85c57587 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 22 May 2023 01:26:33 +0000 Subject: [PATCH 05/12] Bump flutter_typeahead from 4.3.8 to 4.4.0 Bumps [flutter_typeahead](https://github.com/AbdulRahmanAlHamali/flutter_typeahead) from 4.3.8 to 4.4.0. - [Release notes](https://github.com/AbdulRahmanAlHamali/flutter_typeahead/releases) - [Changelog](https://github.com/AbdulRahmanAlHamali/flutter_typeahead/blob/master/CHANGELOG.md) - [Commits](https://github.com/AbdulRahmanAlHamali/flutter_typeahead/commits) --- updated-dependencies: - dependency-name: flutter_typeahead dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- pubspec.lock | 4 ++-- pubspec.yaml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pubspec.lock b/pubspec.lock index 70ca801f..82c4c0ed 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -433,10 +433,10 @@ packages: dependency: "direct main" description: name: flutter_typeahead - sha256: "721610b3d61814efa13fb5f720a6781bc123cd51b7e01f5a45d7c92124376644" + sha256: "986143baa65734d02b494ffb8c4e22fc1065d272ded050e7229b81e37aed316e" url: "https://pub.dev" source: hosted - version: "4.3.8" + version: "4.4.0" flutter_web_plugins: dependency: transitive description: flutter diff --git a/pubspec.yaml b/pubspec.yaml index b83b8879..035822d7 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -39,7 +39,7 @@ dependencies: equatable: ^2.0.5 flutter_calendar_carousel: ^2.4.1 flutter_html: ^3.0.0-alpha.6 - flutter_typeahead: ^4.3.8 + flutter_typeahead: ^4.4.0 font_awesome_flutter: ^10.4.0 http: ^0.13.5 image_picker: ^0.8.7+3 From b07e98a1076a4685e9e021ef0ddaaa8c7fb04826 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 22 May 2023 01:26:54 +0000 Subject: [PATCH 06/12] Bump rive from 0.10.4 to 0.11.0 Bumps [rive](https://github.com/rive-app/rive-flutter) from 0.10.4 to 0.11.0. - [Release notes](https://github.com/rive-app/rive-flutter/releases) - [Changelog](https://github.com/rive-app/rive-flutter/blob/master/CHANGELOG.md) - [Commits](https://github.com/rive-app/rive-flutter/commits) --- updated-dependencies: - dependency-name: rive dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- pubspec.lock | 8 ++++---- pubspec.yaml | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pubspec.lock b/pubspec.lock index 70ca801f..1b9e7478 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -856,18 +856,18 @@ packages: dependency: "direct main" description: name: rive - sha256: f7f365ee0e6cf0af99fb239bc3424370ca6ee2b9ad6fc879b1a79ba5e3b40770 + sha256: "5755eb9dc0f4d12371e9774cf6a407137d52a95beea6d7fbbf4c4f79e561da53" url: "https://pub.dev" source: hosted - version: "0.10.4" + version: "0.11.0" rive_common: dependency: transitive description: name: rive_common - sha256: "7c4be235d75c34a0f257b4487c0cc314188aa2f9a6c177d34f02df53d7c25831" + sha256: "89c6264706b18e2526ff220bd23f3ab25ef152d57ebed4b9e4f5d72aebba4f97" url: "https://pub.dev" source: hosted - version: "0.0.5" + version: "0.0.6" shared_preferences: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index b83b8879..b56546c0 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -48,7 +48,7 @@ dependencies: version: ^3.0.2 package_info_plus: ^3.1.2 provider: ^6.0.5 - rive: ^0.10.4 + rive: ^0.11.0 shared_preferences: ^2.1.1 table_calendar: ^3.0.8 url_launcher: ^6.1.11 From be5d0059c57b0b6c13cd95f18289fc8a9a95a253 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9A=D0=B8=D1=80=D0=B8=D0=BB=D0=BB=20=D0=90=D0=BB=D0=B5?= =?UTF-8?q?=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=80=D0=BE=D0=B2=D0=B8=D1=87=20?= =?UTF-8?q?=D0=97=D0=BB=D0=BE=D0=B1=D0=B8=D0=BD?= Date: Tue, 23 May 2023 09:16:02 +0000 Subject: [PATCH 07/12] Translated using Weblate (Russian) Currently translated at 99.1% (227 of 229 strings) Translation: wger Workout Manager/Mobile App Translate-URL: https://hosted.weblate.org/projects/wger/mobile/ru/ --- lib/l10n/app_ru.arb | 237 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 235 insertions(+), 2 deletions(-) diff --git a/lib/l10n/app_ru.arb b/lib/l10n/app_ru.arb index c08bdab3..a6b78338 100644 --- a/lib/l10n/app_ru.arb +++ b/lib/l10n/app_ru.arb @@ -9,9 +9,9 @@ "@labelWorkoutPlans": { "description": "Title for screen workout plans" }, - "registerInstead": "Зарегистроваться вместо этого", + "registerInstead": "У вас нет аккаунта? Зарегистрируйтесь сейчас", "@registerInstead": {}, - "loginInstead": "Войти вместо этого", + "loginInstead": "Уже есть аккаунт? Войти", "@loginInstead": {}, "labelDashboard": "Панель управления", "@labelDashboard": { @@ -564,5 +564,238 @@ "placeholders": { "min": {} } + }, + "noMeasurementEntries": "У вас нет записей измерений", + "@noMeasurementEntries": {}, + "moreMeasurementEntries": "Добавить новое измерение", + "@moreMeasurementEntries": { + "description": "Message shown when the user wants to add new measurement" + }, + "userProfile": "Ваш профиль", + "@userProfile": {}, + "exerciseList": "Список упражнений", + "@exerciseList": {}, + "baseNameEnglish": "Для всех упражнений необходимо базовое название на английском языке", + "@baseNameEnglish": {}, + "verifiedEmail": "Подтвержденный адрес электронной почты", + "@verifiedEmail": {}, + "swiss_ball": "Гимнастический мяч", + "@swiss_ball": { + "description": "Generated entry for translation for server strings" + }, + "chest": "Грудь", + "@chest": { + "description": "Generated entry for translation for server strings" + }, + "kettlebell": "Гиря", + "@kettlebell": { + "description": "Generated entry for translation for server strings" + }, + "calves": "Икры", + "@calves": { + "description": "Generated entry for translation for server strings" + }, + "success": "Успешно", + "@success": { + "description": "Message when an action completed successfully, usually used as a heading" + }, + "exerciseName": "Название упражнения", + "@exerciseName": { + "description": "Label for the name of a workout exercise" + }, + "textPromptTitle": "Готовы начать?", + "@textPromptTitle": {}, + "body_weight": "Вес тела", + "@body_weight": { + "description": "Generated entry for translation for server strings" + }, + "cardio": "Кардио", + "@cardio": { + "description": "Generated entry for translation for server strings" + }, + "dumbbell": "Гантели", + "@dumbbell": { + "description": "Generated entry for translation for server strings" + }, + "gym_mat": "Спортивный коврик", + "@gym_mat": { + "description": "Generated entry for translation for server strings" + }, + "incline_bench": "Наклонная скамья", + "@incline_bench": { + "description": "Generated entry for translation for server strings" + }, + "kilometers_per_hour": "км/ч", + "@kilometers_per_hour": { + "description": "Generated entry for translation for server strings" + }, + "lats": "Широчайшие", + "@lats": { + "description": "Generated entry for translation for server strings" + }, + "miles": "Мили", + "@miles": { + "description": "Generated entry for translation for server strings" + }, + "miles_per_hour": "миль/ч", + "@miles_per_hour": { + "description": "Generated entry for translation for server strings" + }, + "plates": "Блины", + "@plates": { + "description": "Generated entry for translation for server strings" + }, + "quads": "Четырехглавые", + "@quads": { + "description": "Generated entry for translation for server strings" + }, + "sz_bar": "SZ-гриф", + "@sz_bar": { + "description": "Generated entry for translation for server strings" + }, + "kg": "кг", + "@kg": { + "description": "Generated entry for translation for server strings" + }, + "lb": "фунт", + "@lb": { + "description": "Generated entry for translation for server strings" + }, + "images": "Изображения", + "@images": {}, + "language": "Язык", + "@language": {}, + "abs": "Пресс", + "@abs": { + "description": "Generated entry for translation for server strings" + }, + "arms": "Руки", + "@arms": { + "description": "Generated entry for translation for server strings" + }, + "back": "Спина", + "@back": { + "description": "Generated entry for translation for server strings" + }, + "biceps": "Бицепсы", + "@biceps": { + "description": "Generated entry for translation for server strings" + }, + "translation": "Перевод", + "@translation": {}, + "baseData": "Основы на английском", + "@baseData": { + "description": "The base data for an exercise such as category, trained muscles, etc." + }, + "glutes": "Ягодицы", + "@glutes": { + "description": "Generated entry for translation for server strings" + }, + "kilometers": "Километры", + "@kilometers": { + "description": "Generated entry for translation for server strings" + }, + "seconds": "Секунд", + "@seconds": { + "description": "Generated entry for translation for server strings" + }, + "until_failure": "До отказа", + "@until_failure": { + "description": "Generated entry for translation for server strings" + }, + "bench": "Скамья", + "@bench": { + "description": "Generated entry for translation for server strings" + }, + "barbell": "Штанга", + "@barbell": { + "description": "Generated entry for translation for server strings" + }, + "none__bodyweight_exercise_": "без (с собственным весом)", + "@none__bodyweight_exercise_": { + "description": "Generated entry for translation for server strings" + }, + "shoulders": "Плечи", + "@shoulders": { + "description": "Generated entry for translation for server strings" + }, + "next": "Следующее", + "@next": {}, + "pull_up_bar": "Турник", + "@pull_up_bar": { + "description": "Generated entry for translation for server strings" + }, + "exercises": "Упражнения", + "@exercises": { + "description": "Multiple exercises for a workout" + }, + "add_exercise_image_license": "Изображения должны быть совместимы с CC BY SA лицензией. Если вы сомневаетесь, загружайте только те фотографии, которые вы сделали сами", + "@add_exercise_image_license": {}, + "unVerifiedEmail": "Неподтвержденный адрес электронной почты", + "@unVerifiedEmail": {}, + "contributeExercise": "Добавить упражнение", + "@contributeExercise": {}, + "addExercise": "Добавить упражнение", + "@addExercise": {}, + "translateExercise": "Перевести это упражнение", + "@translateExercise": {}, + "contributeExerciseWarning": "Вы можете добавлять упражнения только в том случае, если ваша учетная запись старше {days} дней и вы подтвердили свою электронную почту", + "@contributeExerciseWarning": { + "description": "Number of days before which a person can add exercise", + "placeholders": { + "days": { + "type": "String", + "example": "14" + } + } + }, + "textPromptSubheading": "Нажмите кнопку действия, чтобы начать", + "@textPromptSubheading": {}, + "minutes": "Минут", + "@minutes": { + "description": "Generated entry for translation for server strings" + }, + "triceps": "Трицепс", + "@triceps": { + "description": "Generated entry for translation for server strings" + }, + "searchNamesInEnglish": "Также ищите названия на английском", + "@searchNamesInEnglish": {}, + "selectEntry": "Пожалуйста, выберите запись", + "@selectEntry": {}, + "variations": "Варианты", + "@variations": { + "description": "Variations of one exercise (e.g. benchpress and benchpress narrow)" + }, + "alsoKnownAs": "Также известно как: {aliases}", + "@alsoKnownAs": { + "placeholders": { + "aliases": {} + }, + "description": "List of alternative names for an exercise" + }, + "verifiedEmailReason": "Вам необходимо подтвердить свой адрес электронной почты, чтобы добавлять упражнения", + "@verifiedEmailReason": {}, + "verifiedEmailInfo": "Письмо с подтверждением отправлено на {email}", + "@verifiedEmailInfo": { + "placeholders": { + "email": {} + } + }, + "alternativeNames": "Альтернативные названия", + "@alternativeNames": {}, + "oneNamePerLine": "Одно название на строку", + "@oneNamePerLine": {}, + "whatVariationsExist": "Какие варианты этого упражнения существуют, если таковые имеются?", + "@whatVariationsExist": {}, + "previous": "Предыдущее", + "@previous": {}, + "aboutPageTitle": "О Wger", + "@aboutPageTitle": {}, + "cacheWarning": "Из-за кэширования может пройти некоторое время, прежде чем изменения станут видны во всем приложении.", + "@cacheWarning": {}, + "legs": "Ноги", + "@legs": { + "description": "Generated entry for translation for server strings" } } From 4f8fff27b594c521f997a824d4fa22135aeb01f4 Mon Sep 17 00:00:00 2001 From: Dalton Scavassa Date: Fri, 26 May 2023 19:13:10 +0200 Subject: [PATCH 08/12] Added translation using Weblate (Portuguese (Brazil)) --- lib/l10n/app_pt_BR.arb | 1 + 1 file changed, 1 insertion(+) create mode 100644 lib/l10n/app_pt_BR.arb diff --git a/lib/l10n/app_pt_BR.arb b/lib/l10n/app_pt_BR.arb new file mode 100644 index 00000000..0967ef42 --- /dev/null +++ b/lib/l10n/app_pt_BR.arb @@ -0,0 +1 @@ +{} From 93c9785f2394f87b1eb7385801b0dc26637b1d14 Mon Sep 17 00:00:00 2001 From: Milo Ivir Date: Fri, 26 May 2023 19:40:53 +0000 Subject: [PATCH 09/12] Translated using Weblate (Croatian) Currently translated at 100.0% (229 of 229 strings) Translation: wger Workout Manager/Mobile App Translate-URL: https://hosted.weblate.org/projects/wger/mobile/hr/ --- lib/l10n/app_hr.arb | 253 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 249 insertions(+), 4 deletions(-) diff --git a/lib/l10n/app_hr.arb b/lib/l10n/app_hr.arb index 32bfd599..a359d639 100644 --- a/lib/l10n/app_hr.arb +++ b/lib/l10n/app_hr.arb @@ -47,13 +47,13 @@ "@customServerUrl": { "description": "Label in the form where the users can enter their own wger instance" }, - "customServerHint": "Upiši adresu vlastitog poslužitelja, inače će se koristiti zadana", + "customServerHint": "Upiši adresu tvog poslužitelja, inače će se koristiti zadani", "@customServerHint": { "description": "Hint text for the form where the users can enter their own wger instance" }, - "registerInstead": "Umjesto toga se registriraj", + "registerInstead": "Nemaš račun? Registriraj se", "@registerInstead": {}, - "loginInstead": "Umjesto toga se prijavi", + "loginInstead": "Već imaš račun? Prijavi se", "@loginInstead": {}, "labelWorkoutPlans": "Planovi treninga", "@labelWorkoutPlans": { @@ -221,7 +221,7 @@ "@selectExercise": { "description": "Error message when the user hasn't selected an exercise in the form" }, - "enterCharacters": "Upiši znakove između {min} i {max}", + "enterCharacters": "Upiši {min} do {max} znakova", "@enterCharacters": { "description": "Error message when the user hasn't entered the correct number of characters in a form", "type": "text", @@ -556,5 +556,250 @@ "close": "Zatvori", "@close": { "description": "Translation for close" + }, + "enterMinCharacters": "Upiši barem {min} znakova", + "@enterMinCharacters": { + "description": "Error message when the user hasn't entered the minimum amount characters in a form", + "type": "text", + "placeholders": { + "min": {} + } + }, + "add_exercise_image_license": "Slike moraju biti kompatibilne s licencom CC BY SA. Ako si u nedoumici, prenesi samo svoje vlastite fotografije.", + "@add_exercise_image_license": {}, + "whatVariationsExist": "Koje varijante ove vježbe postoje?", + "@whatVariationsExist": {}, + "images": "Slike", + "@images": {}, + "alternativeNames": "Alternativna imena", + "@alternativeNames": {}, + "previous": "Prethodno", + "@previous": {}, + "oneNamePerLine": "Jedno ime po retku", + "@oneNamePerLine": {}, + "translation": "Prijevod", + "@translation": {}, + "addExercise": "Dodaj vježbu", + "@addExercise": {}, + "translateExercise": "Prevedi ovu vježbu", + "@translateExercise": {}, + "baseData": "Osnovni podaci na engleskom jeziku", + "@baseData": { + "description": "The base data for an exercise such as category, trained muscles, etc." + }, + "arms": "Ruke", + "@arms": { + "description": "Generated entry for translation for server strings" + }, + "back": "Leđa", + "@back": { + "description": "Generated entry for translation for server strings" + }, + "chest": "Prsa", + "@chest": { + "description": "Generated entry for translation for server strings" + }, + "sz_bar": "SZ šipka", + "@sz_bar": { + "description": "Generated entry for translation for server strings" + }, + "userProfile": "Tvoj profil", + "@userProfile": {}, + "exerciseList": "Popis vježbi", + "@exerciseList": {}, + "exercises": "Vježbe", + "@exercises": { + "description": "Multiple exercises for a workout" + }, + "exerciseName": "Ime vježbe", + "@exerciseName": { + "description": "Label for the name of a workout exercise" + }, + "selectEntry": "Odaberi unos", + "@selectEntry": {}, + "success": "Uspjeh", + "@success": { + "description": "Message when an action completed successfully, usually used as a heading" + }, + "noMeasurementEntries": "Nemaš unose mjerenja", + "@noMeasurementEntries": {}, + "moreMeasurementEntries": "Dodaj novo mjerenje", + "@moreMeasurementEntries": { + "description": "Message shown when the user wants to add new measurement" + }, + "variations": "Varijante", + "@variations": { + "description": "Variations of one exercise (e.g. benchpress and benchpress narrow)" + }, + "alsoKnownAs": "Poznato i kao: {aliases}", + "@alsoKnownAs": { + "placeholders": { + "aliases": {} + }, + "description": "List of alternative names for an exercise" + }, + "verifiedEmail": "Potvrđena e-mail adresa", + "@verifiedEmail": {}, + "unVerifiedEmail": "Nepotvrđena e-mail adresa", + "@unVerifiedEmail": {}, + "verifiedEmailInfo": "E-mail poruka za potvrdu je poslana na {email}", + "@verifiedEmailInfo": { + "placeholders": { + "email": {} + } + }, + "contributeExerciseWarning": "Vježbe možeš dodati samo ako je tvoj račun stariji od {days} dana i ako si potvrdio/la tvoju e-mail adresu", + "@contributeExerciseWarning": { + "description": "Number of days before which a person can add exercise", + "placeholders": { + "days": { + "type": "String", + "example": "14" + } + } + }, + "cacheWarning": "Zbog predmemoriranja, vidljivost promjena u aplikaciji može nešto potrajati.", + "@cacheWarning": {}, + "verifiedEmailReason": "Za dodavanje vježbi moraš potvrditi tvoju e-mail adresu", + "@verifiedEmailReason": {}, + "cardio": "Kardio", + "@cardio": { + "description": "Generated entry for translation for server strings" + }, + "quads": "Ekstenzije nogu", + "@quads": { + "description": "Generated entry for translation for server strings" + }, + "pull_up_bar": "Šipka za povlačenje", + "@pull_up_bar": { + "description": "Generated entry for translation for server strings" + }, + "shoulders": "Ramena", + "@shoulders": { + "description": "Generated entry for translation for server strings" + }, + "triceps": "Triceps", + "@triceps": { + "description": "Generated entry for translation for server strings" + }, + "swiss_ball": "Lopta za fitness", + "@swiss_ball": { + "description": "Generated entry for translation for server strings" + }, + "until_failure": "Do neuspjeha", + "@until_failure": { + "description": "Generated entry for translation for server strings" + }, + "none__bodyweight_exercise_": "ništa (vježba za tjelesnu težinu)", + "@none__bodyweight_exercise_": { + "description": "Generated entry for translation for server strings" + }, + "seconds": "Sekunde", + "@seconds": { + "description": "Generated entry for translation for server strings" + }, + "textPromptTitle": "Spreman?", + "@textPromptTitle": {}, + "barbell": "Utezi", + "@barbell": { + "description": "Generated entry for translation for server strings" + }, + "calves": "Lisni mišići", + "@calves": { + "description": "Generated entry for translation for server strings" + }, + "textPromptSubheading": "Počni pritiskom gumba radnje", + "@textPromptSubheading": {}, + "body_weight": "Tjelesna težina", + "@body_weight": { + "description": "Generated entry for translation for server strings" + }, + "kilometers": "Kilometri", + "@kilometers": { + "description": "Generated entry for translation for server strings" + }, + "kilometers_per_hour": "Kilometara na sat", + "@kilometers_per_hour": { + "description": "Generated entry for translation for server strings" + }, + "lats": "Leđni mišići", + "@lats": { + "description": "Generated entry for translation for server strings" + }, + "miles_per_hour": "Milja na sat", + "@miles_per_hour": { + "description": "Generated entry for translation for server strings" + }, + "minutes": "Minute", + "@minutes": { + "description": "Generated entry for translation for server strings" + }, + "plates": "Ploče", + "@plates": { + "description": "Generated entry for translation for server strings" + }, + "kg": "kg", + "@kg": { + "description": "Generated entry for translation for server strings" + }, + "lb": "lb", + "@lb": { + "description": "Generated entry for translation for server strings" + }, + "searchNamesInEnglish": "Također traži imena na engleskom jeziku", + "@searchNamesInEnglish": {}, + "language": "Jezik", + "@language": {}, + "aboutPageTitle": "Wger informacije", + "@aboutPageTitle": {}, + "abs": "Trbuh", + "@abs": { + "description": "Generated entry for translation for server strings" + }, + "gym_mat": "Podloga za treniranje", + "@gym_mat": { + "description": "Generated entry for translation for server strings" + }, + "incline_bench": "Nagnuta klupa", + "@incline_bench": { + "description": "Generated entry for translation for server strings" + }, + "baseNameEnglish": "Sve vježbe trebaju osnovno ime na engleskom jeziku", + "@baseNameEnglish": {}, + "next": "Sljedeće", + "@next": {}, + "contributeExercise": "Dodaj vježbu", + "@contributeExercise": {}, + "bench": "Klupa", + "@bench": { + "description": "Generated entry for translation for server strings" + }, + "dumbbell": "Ručni uteg", + "@dumbbell": { + "description": "Generated entry for translation for server strings" + }, + "biceps": "Bicepsi", + "@biceps": { + "description": "Generated entry for translation for server strings" + }, + "glutes": "Stražnjica", + "@glutes": { + "description": "Generated entry for translation for server strings" + }, + "hamstrings": "Tetive koljena", + "@hamstrings": { + "description": "Generated entry for translation for server strings" + }, + "kettlebell": "Kuglasti uteg", + "@kettlebell": { + "description": "Generated entry for translation for server strings" + }, + "legs": "Noge", + "@legs": { + "description": "Generated entry for translation for server strings" + }, + "miles": "Milje", + "@miles": { + "description": "Generated entry for translation for server strings" } } From 1fcdaeac6934f027612dc7d9e19cf70e052ae08f Mon Sep 17 00:00:00 2001 From: Dalton Scavassa Date: Fri, 26 May 2023 17:35:39 +0000 Subject: [PATCH 10/12] Translated using Weblate (Portuguese) Currently translated at 100.0% (229 of 229 strings) Translation: wger Workout Manager/Mobile App Translate-URL: https://hosted.weblate.org/projects/wger/mobile/pt/ --- lib/l10n/app_pt.arb | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/lib/l10n/app_pt.arb b/lib/l10n/app_pt.arb index 9281a56c..624e18af 100644 --- a/lib/l10n/app_pt.arb +++ b/lib/l10n/app_pt.arb @@ -29,7 +29,7 @@ "@invalidUsername": { "description": "Error message when the user enters an invalid username" }, - "customServerHint": "Digite o endereço do seu próprio servidor, caso contrário, o padrão será usado", + "customServerHint": "Digite o endereço do seu próprio servidor, ou então o padrão será usado", "@customServerHint": { "description": "Hint text for the form where the users can enter their own wger instance" }, @@ -715,5 +715,35 @@ } }, "cardio": "Cardio", - "@cardio": {} + "@cardio": {}, + "textPromptTitle": "Podemos começar?", + "@textPromptTitle": {}, + "textPromptSubheading": "Aperte o botão de ação para começar", + "@textPromptSubheading": {}, + "body_weight": "Peso Corporal", + "@body_weight": { + "description": "Generated entry for translation for server strings" + }, + "kilometers_per_hour": "Quilômetros Por Hora", + "@kilometers_per_hour": { + "description": "Generated entry for translation for server strings" + }, + "miles_per_hour": "Milhas por Hora", + "@miles_per_hour": { + "description": "Generated entry for translation for server strings" + }, + "plates": "Pratos", + "@plates": { + "description": "Generated entry for translation for server strings" + }, + "kg": "kg", + "@kg": { + "description": "Generated entry for translation for server strings" + }, + "lb": "lb", + "@lb": { + "description": "Generated entry for translation for server strings" + }, + "searchNamesInEnglish": "Também buscar nomes em inglês", + "@searchNamesInEnglish": {} } From c07d1621bfb8811971928a65ee2f34bf66aa7d29 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 May 2023 01:18:24 +0000 Subject: [PATCH 11/12] Bump flutter_typeahead from 4.4.0 to 4.5.0 Bumps [flutter_typeahead](https://github.com/AbdulRahmanAlHamali/flutter_typeahead) from 4.4.0 to 4.5.0. - [Release notes](https://github.com/AbdulRahmanAlHamali/flutter_typeahead/releases) - [Changelog](https://github.com/AbdulRahmanAlHamali/flutter_typeahead/blob/master/CHANGELOG.md) - [Commits](https://github.com/AbdulRahmanAlHamali/flutter_typeahead/commits) --- updated-dependencies: - dependency-name: flutter_typeahead dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- pubspec.lock | 4 ++-- pubspec.yaml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pubspec.lock b/pubspec.lock index fac728b9..50aaa4b4 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -433,10 +433,10 @@ packages: dependency: "direct main" description: name: flutter_typeahead - sha256: "986143baa65734d02b494ffb8c4e22fc1065d272ded050e7229b81e37aed316e" + sha256: "5af4f54a3f051ff3b549b8f2b952e5ad3e5f60ee4717fd27406d1c64d3e24edd" url: "https://pub.dev" source: hosted - version: "4.4.0" + version: "4.5.0" flutter_web_plugins: dependency: transitive description: flutter diff --git a/pubspec.yaml b/pubspec.yaml index b3141a30..63799c86 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -39,7 +39,7 @@ dependencies: equatable: ^2.0.5 flutter_calendar_carousel: ^2.4.1 flutter_html: ^3.0.0-alpha.6 - flutter_typeahead: ^4.4.0 + flutter_typeahead: ^4.5.0 font_awesome_flutter: ^10.4.0 http: ^0.13.5 image_picker: ^0.8.7+3 From 3022a528a173cfd846e27d2de95a511027076b3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9lian?= Date: Mon, 29 May 2023 17:11:07 +0000 Subject: [PATCH 12/12] Translated using Weblate (French) Currently translated at 100.0% (229 of 229 strings) Translation: wger Workout Manager/Mobile App Translate-URL: https://hosted.weblate.org/projects/wger/mobile/fr/ --- lib/l10n/app_fr.arb | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/lib/l10n/app_fr.arb b/lib/l10n/app_fr.arb index 431aa286..18e53ead 100644 --- a/lib/l10n/app_fr.arb +++ b/lib/l10n/app_fr.arb @@ -725,5 +725,35 @@ "seconds": "Secondes", "@seconds": {}, "until_failure": "Jusqu'à l'échec", - "@until_failure": {} + "@until_failure": {}, + "textPromptTitle": "Prêt à commencer ?", + "@textPromptTitle": {}, + "textPromptSubheading": "Cliquez sur le bouton pour commencer", + "@textPromptSubheading": {}, + "body_weight": "Poids corporel", + "@body_weight": { + "description": "Generated entry for translation for server strings" + }, + "kilometers_per_hour": "Kilomètres Par Heure", + "@kilometers_per_hour": { + "description": "Generated entry for translation for server strings" + }, + "miles_per_hour": "Miles Par Heure", + "@miles_per_hour": { + "description": "Generated entry for translation for server strings" + }, + "plates": "Disques de poids", + "@plates": { + "description": "Generated entry for translation for server strings" + }, + "kg": "kg", + "@kg": { + "description": "Generated entry for translation for server strings" + }, + "lb": "lb", + "@lb": { + "description": "Generated entry for translation for server strings" + }, + "searchNamesInEnglish": "Chercher également en termes anglais", + "@searchNamesInEnglish": {} }