From be6b0c41af7dfd0575b9dc8b4205ac7f5c305040 Mon Sep 17 00:00:00 2001 From: Dominic Drees Date: Thu, 24 Apr 2025 00:36:41 +0200 Subject: [PATCH] add more dynamic localizations and the german translation counterpart --- Localizable.xcstrings | 120 ++++++++++++++++++ .../SettingsViewTrackers.swift | 4 +- 2 files changed, 122 insertions(+), 2 deletions(-) diff --git a/Localizable.xcstrings b/Localizable.xcstrings index b536e16..dc7b5ae 100644 --- a/Localizable.xcstrings +++ b/Localizable.xcstrings @@ -259,6 +259,16 @@ } } }, + "Authentication successful!" : { + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Erfolgreich angemeldet!" + } + } + } + }, "Author" : { "localizations" : { "de" : { @@ -609,6 +619,16 @@ } } }, + "Error: %@" : { + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Error: %@" + } + } + } + }, "Explore" : { "localizations" : { "de" : { @@ -619,6 +639,36 @@ } } }, + "Failed to parse response" : { + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Fehler beim " + } + } + } + }, + "Failed to parse response: %@" : { + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Antwort konnte nicht verarbeitet werden: %@" + } + } + } + }, + "Failed to serialize request" : { + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Anforderung konnte nicht serialisiert werden" + } + } + } + }, "Fetch Episode metadata" : { "localizations" : { "de" : { @@ -869,6 +919,36 @@ } } }, + "Logged in as %@" : { + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Angemeldet als %@" + } + } + } + }, + "Login failed with unknown error" : { + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Anmeldung fehlgeschlagen mit unbekanntem Fehler" + } + } + } + }, + "Login failed: %@" : { + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Anmeldung fehlgeschlagen: %@" + } + } + } + }, "Logs" : { "localizations" : { "de" : { @@ -989,6 +1069,16 @@ } } }, + "No data received" : { + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Keine Daten empfangen" + } + } + } + }, "No episodes available" : { "localizations" : { "de" : { @@ -1409,6 +1499,16 @@ } } }, + "Starting authentication..." : { + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Anmeldevorgang wird gestartet…" + } + } + } + }, "Subtitle Color" : { "localizations" : { "de" : { @@ -1529,6 +1629,16 @@ } } }, + "Unexpected response format!" : { + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Unerwartetes Antwortformat!" + } + } + } + }, "v%@" : { "localizations" : { "de" : { @@ -1539,6 +1649,16 @@ } } }, + "You are not logged in" : { + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Sie sind nicht angemeldet" + } + } + } + }, "You have no items saved." : { "localizations" : { "de" : { diff --git a/Sora/Views/SettingsView/SettingsSubViews/SettingsViewTrackers.swift b/Sora/Views/SettingsView/SettingsSubViews/SettingsViewTrackers.swift index ae8977c..c5f34f6 100644 --- a/Sora/Views/SettingsView/SettingsSubViews/SettingsViewTrackers.swift +++ b/Sora/Views/SettingsView/SettingsSubViews/SettingsViewTrackers.swift @@ -11,14 +11,14 @@ import Kingfisher struct SettingsViewTrackers: View { @AppStorage("sendPushUpdates") private var isSendPushUpdates = true - @State private var anilistStatus: String = "You are not logged in" + @State private var anilistStatus: LocalizedStringKey = "You are not logged in" @State private var isAnilistLoggedIn: Bool = false @State private var anilistUsername: String = "" @State private var isAnilistLoading: Bool = false @State private var profileColor: Color = .accentColor @AppStorage("sendTraktUpdates") private var isSendTraktUpdates = true - @State private var traktStatus: String = "You are not logged in" + @State private var traktStatus: LocalizedStringKey = "You are not logged in" @State private var isTraktLoggedIn: Bool = false @State private var traktUsername: String = "" @State private var isTraktLoading: Bool = false