diff --git a/public/locales/de-DE/translation.json b/public/locales/de-DE/translation.json new file mode 100644 index 0000000..4094711 --- /dev/null +++ b/public/locales/de-DE/translation.json @@ -0,0 +1,319 @@ +{ + "JELLYSTAT": "Jellystat", + "MENU_TABS": { + "HOME": "Startseite", + "LIBRARIES": "Bibliotheken", + "USERS": "Benutzer", + "ACTIVITY": "Aktivitäten", + "STATISTICS": "Statistiken", + "SETTINGS": "Einstellungen", + "ABOUT": "Über", + "LOGOUT": "Abmelden", + "TIMELINE": "Zeitleiste" + }, + "HOME_PAGE": { + "SESSIONS": "Sitzungen", + "RECENTLY_ADDED": "Zuletzt hinzugefügt", + "WATCH_STATISTIC": "Wiedergabestatistiken", + "LIBRARY_OVERVIEW": "Bibliothek-Übersicht" + }, + "SESSIONS": { + "NO_SESSIONS": "Keine aktiven Sitzungen gefunden", + "DIRECT_PLAY": "Direkte Wiedergabe", + "TRANSCODE": "Transkodieren" + }, + "STAT_CARDS": { + "MOST_VIEWED_MOVIES": "MEISTGESEHENE FILME", + "MOST_POPULAR_MOVIES": "BELIEBTESTE FILME", + "MOST_VIEWED_SERIES": "MEISTGESEHENE SERIEN", + "MOST_POPULAR_SERIES": "BELIEBTESTE SERIEN", + "MOST_LISTENED_MUSIC": "MEISTGEHÖRTE MUSIK", + "MOST_POPULAR_MUSIC": "BELIEBTESTE MUSIK", + "MOST_VIEWED_LIBRARIES": "MEISTGESEHENE BIBLIOTHEKEN", + "MOST_USED_CLIENTS": "MEISTGENUTZTE CLIENTS", + "MOST_ACTIVE_USERS": "AKTIVSTE BENUTZER", + "CONCURRENT_STREAMS": "GLEICHZEITIGE STREAMS" + }, + "LIBRARY_OVERVIEW": { + "MOVIE_LIBRARIES": "FILM-BIBLIOTHEKEN", + "SHOW_LIBRARIES": "SERIEN-BIBLIOTHEKEN", + "MUSIC_LIBRARIES": "MUSIK-BIBLIOTHEKEN", + "MIXED_LIBRARIES": "GEMISCHTE BIBLIOTHEKEN" + }, + "LIBRARY_CARD": { + "LIBRARY": "Bibliothek", + "TOTAL_TIME": "Gesamtlaufzeit", + "TOTAL_FILES": "Gesamtzahl der Dateien", + "LIBRARY_SIZE": "Größe der Bibliothek", + "TOTAL_PLAYBACK": "Gesamtwiedergabezeit", + "LAST_PLAYED": "Zuletzt gespielt", + "LAST_ACTIVITY": "Letzte Aktivität", + "TRACKED": "Daten-Tracking" + }, + "GLOBAL_STATS": { + "LAST_24_HRS": "Letzten 24 Stunden", + "LAST_7_DAYS": "Letzten 7 Tage", + "LAST_30_DAYS": "Letzten 30 Tage", + "LAST_180_DAYS": "Letzten 180 Tage", + "LAST_365_DAYS": "Letzten 365 Tage", + "ALL_TIME": "Gesamtzeit", + "ITEM_STATS": "Statistik" + }, + "ITEM_INFO": { + "FILE_PATH": "Dateipfad", + "FILE_SIZE": "Dateigröße", + "RUNTIME": "Laufzeit", + "AVERAGE_RUNTIME": "Durchschnittliche Laufzeit", + "OPEN_IN_JELLYFIN": "In Jellyfin öffnen", + "ARCHIVED_DATA_OPTIONS": "Optionen für archivierte Daten", + "PURGE": "Löschen", + "CONFIRM_ACTION": "Aktion bestätigen", + "CONFIRM_ACTION_MESSAGE": "Sind Sie sicher, dass Sie dieses Element löschen möchten", + "CONFIRM_ACTION_MESSAGE_2": "und zugehörige Wiedergabeaktivitäten" + }, + "LIBRARY_INFO": { + "LIBRARY_STATS": "Bibliothek-Statistiken", + "LIBRARY_ACTIVITY": "Bibliothek-Aktivität" + }, + "TAB_CONTROLS": { + "OVERVIEW": "Übersicht", + "ACTIVITY": "Aktivität", + "OPTIONS": "Optionen", + "TIMELINE": "Zeitleiste" + }, + "ITEM_ACTIVITY": "Elementaktivität", + "ACTIVITY_TABLE": { + "MODAL": { + "HEADER": "Stream-Informationen" + }, + "IP_ADDRESS": "IP-Adresse", + "CLIENT": "Client", + "DEVICE": "Gerät", + "PLAYBACK_DURATION": "Wiedergabedauer", + "TOTAL_PLAYBACK": "Gesamtwiedergabezeit", + "EXPAND": "Erweitern", + "COLLAPSE": "Reduzieren", + "SORT_BY": "Sortieren nach", + "ASCENDING": "Aufsteigend", + "DESCENDING": "Absteigend", + "CLEAR_SORT": "Sortierung aufheben", + "CLEAR_FILTER": "Filter löschen", + "FILTER_BY": "Filtern nach", + "COLUMN_ACTIONS": "Spaltenaktionen", + "TOGGLE_SELECT_ROW": "Zeile auswählen/abwählen", + "TOGGLE_SELECT_ALL": "Alle auswählen/abwählen", + "MIN": "Min", + "MAX": "Max" + }, + "TABLE_NAV_BUTTONS": { + "FIRST": "Erste", + "LAST": "Letzte", + "NEXT": "Nächste", + "PREVIOUS": "Vorherige" + }, + "PURGE_OPTIONS": { + "PURGE_CACHE": "Zwischengespeichertes Element löschen", + "PURGE_CACHE_WITH_ACTIVITY": "Zwischengespeichertes Element und Wiedergabeaktivität löschen", + "PURGE_LIBRARY_CACHE": "Zwischengespeicherte Bibliothek und Elemente löschen", + "PURGE_LIBRARY_CACHE_WITH_ACTIVITY": "Zwischengespeicherte Bibliothek, Elemente und Aktivität löschen", + "PURGE_LIBRARY_ITEMS_CACHE": "Nur zwischengespeicherte Bibliothekelemente löschen", + "PURGE_LIBRARY_ITEMS_CACHE_WITH_ACTIVITY": "Nur zwischengespeicherte Bibliothekelemente und Aktivität löschen", + "PURGE_ACTIVITY": "Möchten Sie die ausgewählte Wiedergabeaktivität wirklich löschen?" + }, + "ERROR_MESSAGES": { + "FETCH_THIS_ITEM": "Dieses Element von Jellyfin abrufen", + "NO_ACTIVITY": "Keine Aktivität gefunden", + "NEVER": "Nie", + "N/A": "N/A", + "NO_STATS": "Keine Statistiken zum Anzeigen", + "NO_BACKUPS": "Keine Sicherungen gefunden", + "NO_LOGS": "Keine Protokolle gefunden", + "NO_API_KEYS": "Keine Schlüssel gefunden", + "NETWORK_ERROR": "Verbindung zum Jellyfin-Server nicht möglich", + "INVALID_LOGIN": "Ungültiger Benutzername oder Passwort", + "INVALID_URL": "Fehler {STATUS}: Die angeforderte URL wurde nicht gefunden.", + "UNAUTHORIZED": "Fehler {STATUS}: Nicht autorisiert", + "PASSWORD_LENGTH": "Passwort muss mindestens 6 Zeichen lang sein", + "USERNAME_REQUIRED": "Benutzername ist erforderlich" + }, + "SHOW_ARCHIVED_LIBRARIES": "Archivierte Bibliotheken anzeigen", + "HIDE_ARCHIVED_LIBRARIES": "Archivierte Bibliotheken ausblenden", + "UNITS": { + "YEAR": "Jahr", + "YEARS": "Jahre", + "MONTH": "Monat", + "MONTHS": "Monate", + "DAY": "Tag", + "DAYS": "Tage", + "HOUR": "Stunde", + "HOURS": "Stunden", + "MINUTE": "Minute", + "MINUTES": "Minuten", + "SECOND": "Sekunde", + "SECONDS": "Sekunden", + "PLAYS": "Wiedergaben", + "ITEMS": "Elemente", + "STREAMS": "Streams" + }, + "USERS_PAGE": { + "ALL_USERS": "Alle Benutzer", + "LAST_CLIENT": "Letzter Client", + "LAST_SEEN": "Zuletzt gesehen", + "AGO": "vor", + "AGO_ALT": "", + "USER_STATS": "Benutzerstatistiken", + "USER_ACTIVITY": "Benutzeraktivität" + }, + "STAT_PAGE": { + "STATISTICS": "Statistiken", + "DAILY_PLAY_PER_LIBRARY": "Tägliche Wiedergabezahl pro Bibliothek", + "PLAY_COUNT_BY": "Wiedergabezahl nach" + }, + "SETTINGS_PAGE": { + "SETTINGS": "Allgemein", + "LANGUAGE": "Sprache", + "SELECT_AN_ADMIN": "Einen bevorzugten Administrator auswählen", + "LIBRARY_SETTINGS": "Bibliothek", + "BACKUP": "Sicherung", + "BACKUPS": "Sicherungen", + "CHOOSE_FILE": "Datei auswählen", + "LOGS": "Protokolle", + "SIZE": "Größe", + "JELLYFIN_URL": "Jellyfin URL", + "EMBY_URL": "Emby URL", + "EXTERNAL_URL": "Externe URL", + "API_KEY": "API-Schlüssel", + "API_KEYS": "API-Schlüssel", + "KEY_NAME": "Schlüsselname", + "KEY": "Schlüssel", + "NAME": "Name", + "ADD_KEY": "Schlüssel hinzufügen", + "DURATION": "Dauer", + "EXECUTION_TYPE": "Ausführungstyp", + "RESULTS": "Ergebnisse", + "SELECT_ADMIN": "Bevorzugtes Administratorkonto auswählen", + "HOUR_FORMAT": "Stundenformat", + "HOUR_FORMAT_12": "12 Stunden", + "HOUR_FORMAT_24": "24 Stunden", + "SECURITY": "Sicherheit", + "CURRENT_PASSWORD": "Aktuelles Passwort", + "NEW_PASSWORD": "Neues Passwort", + "UPDATE": "Aktualisieren", + "REQUIRE_LOGIN": "Anmeldung erforderlich", + "TASK": "Aufgabe", + "TASKS": "Aufgaben", + "INTERVAL": "Intervall", + "INTERVALS": { + "15_MIN": "15 Minuten", + "30_MIN": "30 Minuten", + "1_HOUR": "1 Stunde", + "12_HOURS": "12 Stunden", + "1_DAY": "1 Tag", + "1_WEEK": "1 Woche" + }, + "SELECT_LIBRARIES_TO_IMPORT": "Bibliotheken zum Importieren auswählen", + "SELECT_LIBRARIES_TO_IMPORT_TOOLTIP": "Die Aktivität für Elemente innerhalb dieser Bibliotheken wird weiterhin verfolgt - auch wenn sie nicht importiert werden.", + "DATE_ADDED": "Hinzugefügt am" + }, + "TASK_TYPE": { + "JOB": "Job", + "IMPORT": "Import" + }, + "TASK_DESCRIPTION": { + "PartialJellyfinSync": "Synchronisierung kürzlich hinzugefügter Elemente", + "JellyfinSync": "Vollständige Synchronisierung mit Jellyfin", + "Jellyfin_Playback_Reporting_Plugin_Sync": "Import von Wiedergabeberichts-Plugin-Daten", + "Backup": "Jellystat Sicherung" + }, + "ABOUT_PAGE": { + "ABOUT_JELLYSTAT": "Über Jellystat", + "VERSION": "Version", + "UPDATE_AVAILABLE": "Update verfügbar", + "GITHUB": "Github", + "Backup": "Jellystat Sicherung" + }, + "TIMELINE_PAGE": { + "TIMELINE": "Zeitleiste", + "EPISODES_one": "Episode", + "EPISODES_other": "Episoden" + }, + "SEARCH": "Suchen", + "TOTAL": "Gesamt", + "LAST": "Letzten", + "SERIES": "Serien", + "SEASON": "Staffel", + "SEASONS": "Staffeln", + "EPISODE": "Episode", + "EPISODES": "Episoden", + "MOVIES": "Filme", + "MUSIC": "Musik", + "SONGS": "Lieder", + "FILES": "Dateien", + "LIBRARIES": "Bibliotheken", + "USER": "Benutzer", + "USERS": "Benutzer", + "TYPE": "Typ", + "NEW_VERSION_AVAILABLE": "Neue Version verfügbar", + "ARCHIVED": "Archiviert", + "NOT_ARCHIVED": "Nicht archiviert", + "ALL": "Alle", + "CLOSE": "Schließen", + "TOTAL_PLAYS": "Gesamtwiedergaben", + "TITLE": "Titel", + "VIEWS": "Ansichten", + "WATCH_TIME": "Wiedergabezeit", + "LAST_WATCHED": "Zuletzt angesehen", + "MEDIA": "Medien", + "SAVE": "Speichern", + "YES": "Ja", + "NO": "Nein", + "FILE_NAME": "Dateiname", + "DATE": "Datum", + "START": "Start", + "STOP": "Stop", + "DOWNLOAD": "Herunterladen", + "RESTORE": "Wiederherstellen", + "ACTIONS": "Aktionen", + "DELETE": "Löschen", + "BITRATE": "Bitrate", + "CONTAINER": "Container", + "VIDEO": "Video", + "CODEC": "Codec", + "WIDTH": "Breite", + "HEIGHT": "Höhe", + "FRAMERATE": "Bildrate", + "DYNAMIC_RANGE": "Dynamikbereich", + "ASPECT_RATIO": "Seitenverhältnis", + "AUDIO": "Audio", + "CHANNELS": "Kanäle", + "LANGUAGE": "Sprache", + "STREAM_DETAILS": "Stream Details", + "SOURCE_DETAILS": "Details zur Videoquelle", + "DIRECT": "Direkt", + "TRANSCODE": "Transkodieren", + "DIRECT_STREAM": "Direkt-Stream", + "USERNAME": "Benutzername", + "PASSWORD": "Passwort", + "LOGIN": "Anmelden", + "FT_SETUP_PROGRESS": "Erster Einrichtungsschritt {STEP} von {TOTAL}", + "VALIDATING": "Validierung läuft", + "SAVE_JELLYFIN_DETAILS": "Jellyfin-Details speichern", + "SETTINGS_SAVED": "Einstellungen gespeichert", + "SUCCESS": "Erfolg", + "PASSWORD_UPDATE_SUCCESS": "Passwort erfolgreich aktualisiert", + "CREATE_USER": "Benutzer erstellen", + "GEOLOCATION_INFO_FOR": "Geolokalisierungsinformationen für", + "CITY": "Stadt", + "REGION": "Region", + "COUNTRY": "Land", + "ORGANIZATION": "Organisation", + "ISP": "ISP", + "LATITUDE": "Breitengrad", + "LONGITUDE": "Längengrad", + "TIMEZONE": "Zeitzone", + "POSTCODE": "Postleitzahl", + "X_ROWS_SELECTED": "{ROWS} Zeilen ausgewählt", + "TRANSCODE_REASONS": "Transkodierungsgründe", + "SUBTITLES": "Untertitel", + "GENRES": "Genres" +} \ No newline at end of file diff --git a/src/lib/languages.jsx b/src/lib/languages.jsx index 86683f7..3e00a9f 100644 --- a/src/lib/languages.jsx +++ b/src/lib/languages.jsx @@ -23,4 +23,8 @@ export const languages = [ id: "ca-ES", description: "Català", }, + { + id: "de-DE", + description: "Deutsch", + }, ];