diff --git a/lib/collections/language_codes.dart b/lib/collections/language_codes.dart index e06d42097..190bbf5f7 100644 --- a/lib/collections/language_codes.dart +++ b/lib/collections/language_codes.dart @@ -212,10 +212,10 @@ abstract class LanguageLocals { // name: "Georgian", // nativeName: "ქართული", // ), - // "de": const ISOLanguageName( - // name: "German", - // nativeName: "Deutsch", - // ), + "de": const ISOLanguageName( + name: "German", + nativeName: "Deutsch", + ), // "el": const ISOLanguageName( // name: "Greek, Modern", // nativeName: "Ελληνικά", diff --git a/lib/components/shared/fallbacks/anonymous_fallback.dart b/lib/components/shared/fallbacks/anonymous_fallback.dart index 7a6eb0468..aea7bf38d 100644 --- a/lib/components/shared/fallbacks/anonymous_fallback.dart +++ b/lib/components/shared/fallbacks/anonymous_fallback.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; +import 'package:spotube/extensions/context.dart'; import 'package:spotube/provider/authentication_provider.dart'; import 'package:spotube/utils/service_utils.dart'; @@ -20,10 +21,10 @@ class AnonymousFallback extends ConsumerWidget { child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ - const Text("You're not logged in"), + Text(context.l10n.not_logged_in), const SizedBox(height: 10), FilledButton( - child: const Text("Login with Spotify"), + child: Text(context.l10n.login_with_spotify), onPressed: () => ServiceUtils.push(context, "/settings"), ) ], diff --git a/lib/l10n/app_de.arb b/lib/l10n/app_de.arb index 564a605d1..ec8981f10 100644 --- a/lib/l10n/app_de.arb +++ b/lib/l10n/app_de.arb @@ -1,216 +1,215 @@ { "guest": "Gast", "browse": "Durchsuchen", - "search": "Suche", + "search": "Suchen", "library": "Bibliothek", - "lyrics": "Songtext", + "lyrics": "Songtexte", "settings": "Einstellungen", - "genre_categories_filter": "Kategorien oder Genres filtern...", + "genre_categories_filter": "Filtere Kategorien oder Genres...", "genre": "Genre", "personalized": "Personalisiert", - "featured": "Vorgestellt", + "featured": "Empfohlen", "new_releases": "Neue Veröffentlichungen", - "songs": "Titel", - "playing_track": "Wiedergabe von {Titel}", - "queue_clear_alert": "Dadurch wird die aktuelle Warteschlange gelöscht. {Tracks werden entfernt. Möchten Sie fortfahren?", + "songs": "Songs", + "playing_track": "Wiedergabe: {track}", + "queue_clear_alert": "Dadurch wird die aktuelle Warteschlange gelöscht. {track_length} Titel werden entfernt.\nMöchten Sie fortfahren?", "load_more": "Mehr laden", - "playlists": "Wiedergabelisten", - "artists": "Künstler/innen", + "playlists": "Playlists", + "artists": "Künstler", "albums": "Alben", "tracks": "Titel", "downloads": "Downloads", - "filter_playlists": "Filtern Sie Ihre Wiedergabelisten...", - "liked_tracks": "Lieblingssongs", - "liked_tracks_description": "Alle deine Lieblingssongs", - "create_playlist": "Wiedergabeliste erstellen", - "create_a_playlist": "Eine Wiedergabeliste erstellen", + "filter_playlists": "Filtere deine Playlists...", + "liked_tracks": "Gefällt mir-Titel", + "liked_tracks_description": "Alle deine geliketen Titel", + "create_playlist": "Playlist erstellen", + "create_a_playlist": "Erstelle eine Playlist", "create": "Erstellen", "cancel": "Abbrechen", - "playlist_name": "Name der Wiedergabeliste", - "name_of_playlist": "Name der Wiedergabeliste", + "playlist_name": "Playlist-Name", + "name_of_playlist": "Name der Playlist", "description": "Beschreibung", "public": "Öffentlich", "collaborative": "Kollaborativ", - "search_local_tracks": "Lokale Titel suchen...", - "play": "Play", + "search_local_tracks": "Lokale Titel durchsuchen...", + "play": "Wiedergabe", "delete": "Löschen", "none": "Keine", - "sort_a_z": "Sortieren von A-Z", - "sort_z_a": "Sortieren von Z-A", - "sort_date": "Sortieren nach Datum", + "sort_a_z": "Sortieren nach A-Z", + "sort_z_a": "Sortieren nach Z-A", "sort_artist": "Sortieren nach Künstler", "sort_album": "Sortieren nach Album", - "sort_tracks": "Sortieren nach Titel", - "currently_downloading": "Derzeit heruntergeladen ({tracks_length})", + "sort_tracks": "Titel sortieren", + "currently_downloading": "Derzeitige Downloads ({tracks_length})", "cancel_all": "Alle abbrechen", "filter_artist": "Künstler filtern...", - "followers": "{Follower} Follower", - "add_artist_to_blacklist": "Künstler zur Blackliste hinzufügen", - "top_tracks": "Top Titel", + "followers": "{followers} Follower", + "add_artist_to_blacklist": "Künstler zur Schwarzen Liste hinzufügen", + "top_tracks": "Top-Titel", "fans_also_like": "Fans mögen auch", "loading": "Laden...", "artist": "Künstler", - "blacklisted": "Auf der Blackliste", - "following": "Folgen Sie", - "follow": "Folge", - "artist_url_copied": "Künstler-URL in die Zwischenablage kopiert", - "added_to_queue": "Titel {Titel} zur Warteschlange hinzugefügt", + "blacklisted": "Auf der Schwarzen Liste", + "following": "Folgen", + "follow": "Folgen", + "artist_url_copied": "Künstler-URL in Zwischenablage kopiert", + "added_to_queue": "{tracks} Titel zur Warteschlange hinzugefügt", "filter_albums": "Alben filtern...", "synced": "Synchronisiert", "plain": "Einfach", - "shuffle": "Shuffle", - "search_tracks": "Titel suchen...", - "released": "Veröffentlichte", - "error": "Fehler {Fehler}", + "shuffle": "Zufällige Wiedergabe", + "search_tracks": "Titel durchsuchen...", + "released": "Veröffentlicht", + "error": "Fehler {error}", "title": "Titel", - "time": "Zeit", + "time": "Dauer", "more_actions": "Weitere Aktionen", - "download_count": "Herunterladen ({Anzahl})", - "add_count_to_playlist": "Hinzufügen ({Anzahl}) zur Wiedergabeliste", - "add_count_to_queue": "Hinzufügen ({Anzahl}) zur Warteschlange", - "play_count_next": "Abspielen ({Anzahl}) nächste", + "download_count": "Download ({count})", + "add_count_to_playlist": "Zu Playlist hinzufügen ({count})", + "add_count_to_queue": "Zur Warteschlange hinzufügen ({count})", + "play_count_next": "Als nächstes abspielen ({count})", "album": "Album", - "copied_to_clipboard": "Kopiert {Daten} in Zwischenablage", - "add_to_following_playlists": "Hinzufügen von {Titel} zu folgenden Wiedergabelisten", + "copied_to_clipboard": "{data} in Zwischenablage kopiert", + "add_to_following_playlists": "{track} zu folgenden Playlists hinzufügen", "add": "Hinzufügen", - "added_track_to_queue": "Der Warteschlange wurde {Titel} hinzugefügt", - "add_to_queue": "Zu Warteschlange hinzufügen", - "track_will_play_next": "{Titel} wird als nächstes gespielt", - "play_next": "Nächste Wiedergabe", - "removed_track_from_queue": "Entfernt {Titel} aus Warteschlange", + "added_track_to_queue": "{track} zur Warteschlange hinzugefügt", + "add_to_queue": "Zur Warteschlange hinzufügen", + "track_will_play_next": "{track} wird als nächstes abgespielt", + "play_next": "Als nächstes abspielen", + "removed_track_from_queue": "{track} aus der Warteschlange entfernt", "remove_from_queue": "Aus der Warteschlange entfernen", "remove_from_favorites": "Aus Favoriten entfernen", "save_as_favorite": "Als Favorit speichern", - "add_to_playlist": "Zu Wiedergabeliste hinzufügen", - "remove_from_playlist": "Aus der Wiedergabeliste entfernen", - "add_to_blacklist": "Zur Blacklist hinzufügen", - "remove_from_blacklist": "Von der Blacklist entfernen", + "add_to_playlist": "Zur Playlist hinzufügen", + "remove_from_playlist": "Aus der Playlist entfernen", + "add_to_blacklist": "Zur Schwarzen Liste hinzufügen", + "remove_from_blacklist": "Aus der Schwarzen Liste entfernen", "share": "Teilen", "mini_player": "Mini-Player", - "slide_to_seek": "Schieben, um vorwärts oder rückwärts zu suchen", - "shuffle_playlist": "Zufällige Wiedergabeliste", - "unshuffle_playlist": "Wiedergabeliste "Unshuffle", - "previous_track": "Vorheriger Titel", - "next_track": "Nächster Titel", + "slide_to_seek": "Zum Vor- oder Zurückspulen ziehen", + "shuffle_playlist": "Playlist mischen", + "unshuffle_playlist": "Playlist nicht mehr mischen", + "previous_track": "Vorheriger Track", + "next_track": "Nächster Track", "pause_playback": "Wiedergabe pausieren", "resume_playback": "Wiedergabe fortsetzen", - "loop_track": "Track Schleife", - "repeat_playlist": "Wiederholung der Wiedergabeliste", + "loop_track": "Track wiederholen", + "repeat_playlist": "Playlist wiederholen", "queue": "Warteschlange", - "alternative_track_sources": "Alternative Titelquellen", - "download_track": "Titel herunterladen", - "tracks_in_queue": "{Titel} Titel in der Warteschlange", + "alternative_track_sources": "Alternative Track-Quellen", + "download_track": "Track herunterladen", + "tracks_in_queue": "{tracks} Tracks in der Warteschlange", "clear_all": "Alle löschen", - "show_hide_ui_on_hover": "UI ein-/ausblenden bei Mauszeiger", - "always_on_top": "Stets an der Spitze", - "exit_mini_player": "Mini-Player beenden", - "download_location": "Speicherort herunterladen", - "account": "Account", - "login_with_spotify": "Melden Sie sich mit Ihrem Spotify-Konto an", + "show_hide_ui_on_hover": "UI beim Überfahren anzeigen/ausblenden", + "always_on_top": "Immer im Vordergrund", + "exit_mini_player": "Mini-Player verlassen", + "download_location": "Download-Speicherort", + "account": "Konto", + "login_with_spotify": "Mit deinem Spotify-Konto anmelden", "connect_with_spotify": "Mit Spotify verbinden", - "logout": "Ausloggen", - "logout_of_this_account": "Abmelden von diesem Account", + "logout": "Abmelden", + "logout_of_this_account": "Von diesem Konto abmelden", "language_region": "Sprache & Region", "language": "Sprache", - "system_default": "Systemvorgabe", - "market_place_region": "Region", - "recommendation_country": "Empfehlung Land", + "system_default": "Systemstandard", + "market_place_region": "Marktplatzregion", + "recommendation_country": "Empfehlungsland", "appearance": "Erscheinungsbild", "layout_mode": "Layout-Modus", - "override_layout_settings": "Einstellungen für den responsiven Layoutmodus außer Kraft setzen", - "adaptive": "Anpassungsfähig", + "override_layout_settings": "Responsiven Layout-Modus-Einstellungen überschreiben", + "adaptive": "Adaptiv", "compact": "Kompakt", "extended": "Erweitert", - "theme": "Thema", + "theme": "Design", "dark": "Dunkel", "light": "Hell", "system": "System", "accent_color": "Akzentfarbe", - "sync_album_color": "Sync Albumfarbe", - "sync_album_color_description": "Verwendet die dominante Farbe des Albumcovers als Akzentfarbe", + "sync_album_color": "Albumfarbe synchronisieren", + "sync_album_color_description": "Verwendet die dominante Farbe des Album Covers als Akzentfarbe", "playback": "Wiedergabe", - "audio_quality": "Audio-Qualität", + "audio_quality": "Audioqualität", "high": "Hoch", "low": "Niedrig", - "pre_download_play": "Vorab-Download und Wiedergabe", - "pre_download_play_description": "Anstatt Audio zu streamen, laden Sie Bytes herunter und spielen Sie sie ab (empfohlen für Benutzer mit höherer Bandbreite)", - "skip_non_music": "Überspringen von nicht-musikalischen Segmenten (SponsorBlock)", - "blacklist_description": "Titel und Künstler auf der Blacklist", - "wait_for_download_to_finish": "Bitte warten Sie, bis der aktuelle Download beendet ist", - "download_lyrics": "Songtexte zusammen mit den Titeln herunterladen", + "pre_download_play": "Vorab herunterladen und abspielen", + "pre_download_play_description": "Anstatt Audio zu streamen, Bytes herunterladen und abspielen (Empfohlen für Benutzer mit hoher Bandbreite)", + "skip_non_music": "Überspringe Nicht-Musik-Segmente (SponsorBlock)", + "blacklist_description": "Gesperrte Titel und Künstler", + "wait_for_download_to_finish": "Bitte warten Sie, bis der aktuelle Download abgeschlossen ist", + "download_lyrics": "Songtexte zusammen mit den Tracks herunterladen", "desktop": "Desktop", - "close_behavior": "Naheliegendes Verhalten", + "close_behavior": "Verhalten beim Schließen", "close": "Schließen", - "minimize_to_tray": "In die Ablage minimieren", - "show_tray_icon": "Taskleistensymbol anzeigen", + "minimize_to_tray": "In Taskleiste minimieren", + "show_tray_icon": "Systemsymbol anzeigen", "about": "Über", "u_love_spotube": "Wir wissen, dass Sie Spotube lieben", - "check_for_updates": "Auf Aktualisierungen prüfen", + "check_for_updates": "Nach Updates suchen", "about_spotube": "Über Spotube", - "blacklist": "Blacklist", - "please_sponsor": "Bitte sponsern/spenden", - "spotube_description": "Spotube, ein leichtgewichtiger, plattformübergreifender, kostenloser Spotify-Client", + "blacklist": "Gesperrte Titel", + "please_sponsor": "Bitte unterstützen/Spenden Sie", + "spotube_description": "Spotube, ein leichtgewichtiger, plattformübergreifender und kostenloser Spotify-Client", "version": "Version", "build_number": "Build-Nummer", "founder": "Gründer", "repository": "Repository", - "bug_issues": "Fehler+Probleme", - "made_with": "Hergestellt mit ❤️ in Bangladesh🇧🇩", + "bug_issues": "Fehler und Probleme", + "made_with": "Entwickelt mit ❤️ in Bangladesch 🇧🇩", "kingkor_roy_tirtho": "Kingkor Roy Tirtho", - "copyright": "© 2021-{aktuelles_Jahr} Kingkor Roy Tirtho", + "copyright": "© 2021-{current_year} Kingkor Roy Tirtho", "license": "Lizenz", - "add_spotify_credentials": "Fügen Sie Ihre Spotify-Anmeldedaten hinzu, um loszulegen", - "credentials_will_not_be_shared_disclaimer": "Keine Sorge, Ihre Anmeldedaten werden weder gesammelt noch an Dritte weitergegeben.", - "know_how_to_login": "Sie wissen nicht, wie das geht?", - "follow_step_by_step_guide": "Folgen Sie der Schritt-für-Schritt-Anleitung", + "add_spotify_credentials": "Fügen Sie Ihre Spotify-Anmeldeinformationen hinzu, um zu starten", + "credentials_will_not_be_shared_disclaimer": "Keine Sorge, Ihre Anmeldeinformationen werden nicht erfasst oder mit anderen geteilt", + "know_how_to_login": "Wissen Sie nicht, wie es geht?", + "follow_step_by_step_guide": "Befolgen Sie die schrittweise Anleitung", "spotify_cookie": "Spotify {name} Cookie", "cookie_name_cookie": "{name} Cookie", "fill_in_all_fields": "Bitte füllen Sie alle Felder aus", - "submit": "Einreichen", + "submit": "Senden", "exit": "Beenden", - "previous": "Vorherige", - "next": "Nächste", - "done": "Erledigt", + "previous": "Zurück", + "next": "Weiter", + "done": "Fertig", "step_1": "Schritt 1", - "first_go_to": "Zuerst gehen Sie zu", - "login_if_not_logged_in": "und Login/Signup, wenn Sie nicht eingeloggt sind", + "first_go_to": "Gehe zuerst zu", + "login_if_not_logged_in": "und melde dich an/registriere dich, falls du nicht angemeldet bist", "step_2": "Schritt 2", - "step_2_steps": "1. Sobald Sie eingeloggt sind, drücken Sie F12 oder klicken Sie mit der rechten Maustaste auf > Inspect, um den Browser devtools.\n2 zu öffnen. Gehen Sie dann auf die Registerkarte \"Anwendung\" (Chrome, Edge, Brave usw.) oder \"Speicherung\" (Firefox, Palemoon usw.)\n3. Gehen Sie zum Abschnitt \"Cookies\" und dann zum Unterabschnitt \"https://accounts.spotify.com\".", + "step_2_steps": "1. Wenn du angemeldet bist, drücke F12 oder klicke mit der rechten Maustaste > Inspektion, um die Browser-Entwicklertools zu öffnen.\n2. Gehe dann zum \"Anwendungs\"-Tab (Chrome, Edge, Brave usw.) oder zum \"Storage\"-Tab (Firefox, Palemoon usw.)\n3. Gehe zum Abschnitt \"Cookies\" und dann zum Unterabschnitt \"https://accounts.spotify.com\"", "step_3": "Schritt 3", - "step_3_steps": "Kopieren Sie die Werte von \"sp_dc\" und \"sp_key\" Cookies", + "step_3_steps": "Kopiere die Werte der Cookies \"sp_dc\" und \"sp_key\"", "success_emoji": "Erfolg🥳", - "success_message": "Jetzt bist du erfolgreich mit deinem Spotify-Konto eingeloggt. Gute Arbeit, Kumpel!", + "success_message": "Jetzt bist du erfolgreich mit deinem Spotify-Konto angemeldet. Gut gemacht, Kumpel!", "step_4": "Schritt 4", - "step_4_steps": "Fügen Sie die kopierten Werte \"sp_dc\" und \"sp_key\" in die entsprechenden Felder ein", - "something_went_wrong": "Etwas ist schief gelaufen", - "piped_instance": "Piped Server-Instanz", - "piped_description": "Die Piped Serverinstanz, die für den Trackabgleich verwendet werden sollen, Einige von ihnen funktionieren möglicherweise nicht gut. Die Verwendung erfolgt daher auf eigene Gefahr.", - "generate_playlist": "Wiedergabeliste generieren", - "track_exists": "Titel {Titel} existiert bereits", + "step_4_steps": "Füge die kopierten Werte von \"sp_dc\" und \"sp_key\" in die entsprechenden Felder ein", + "something_went_wrong": "Etwas ist schiefgelaufen", + "piped_instance": "Piped-Serverinstanz", + "piped_description": "Die Piped-Serverinstanz, die zur Titelzuordnung verwendet werden soll\nEinige von ihnen funktionieren möglicherweise nicht gut. Verwende sie also auf eigenes Risiko", + "generate_playlist": "Playlist generieren", + "track_exists": "Track {track} existiert bereits", "replace_downloaded_tracks": "Alle heruntergeladenen Titel ersetzen", - "skip_download_tracks": "Überspringen das Herunterladen aller heruntergeladenen Titel", - "do_you_want_to_replace": "Möchten Sie die vorhandenen Titel ersetzen?", + "skip_download_tracks": "Das Herunterladen aller heruntergeladenen Titel überspringen", + "do_you_want_to_replace": "Möchtest du den vorhandenen Track ersetzen?", "replace": "Ersetzen", "skip": "Überspringen", - "select_up_to_count_type": "Wählen Sie bis zu {Anzahl} {Typ}", + "select_up_to_count_type": "Wähle bis zu {count} {type} aus", "select_genres": "Genres auswählen", - "add_genres": "Genre hinzufügen", + "add_genres": "Genres hinzufügen", "country": "Land", - "number_of_tracks_generate": "Anzahl der zu erzeugenden Titel", - "acousticness": "Acousticness", - "danceability": "Danceability", - "energy": "Energy", - "instrumentalness": "Instrumentalness", - "liveness": "Liveness", - "loudness": "Loudness", - "speechiness": "Speechiness", - "valence": "Valence", - "popularity": "Popularity", - "key": "Key", - "duration": "Duration (s)", + "number_of_tracks_generate": "Anzahl der zu generierenden Titel", + "acousticness": "Akustik", + "danceability": "Tanzbarkeit", + "energy": "Energie", + "instrumentalness": "Instrumentalität", + "liveness": "Lebendigkeit", + "loudness": "Lautstärke", + "speechiness": "Sprechanteil", + "valence": "Stimmung", + "popularity": "Beliebtheit", + "key": "Tonart", + "duration": "Dauer (s)", "tempo": "Tempo (BPM)", - "mode": "Mode", - "time_signature": "Time Signature", + "mode": "Modus", + "time_signature": "Taktart", "short": "Kurz", "medium": "Mittel", "long": "Lang", @@ -220,15 +219,32 @@ "moderate": "Mäßig", "deselect_all": "Alle abwählen", "select_all": "Alle auswählen", - "are_you_sure": "Sind Sie sicher?", - "generating_playlist": "Erzeugen einer eigenen Wiedergabeliste...", - "selected_count_tracks": "Ausgewählte {Anzahl} Titel", - "download_warning": "Wenn Sie alle Tracks massenhaft herunterladen, sind Sie eindeutig ein Raubkopierer und schaden der kreativen Gesellschaft der Musik. Ich hoffe, Sie sind sich dessen bewusst. Versuchen Sie immer, die harte Arbeit der Künstler zu respektieren und zu unterstützen.", - "download_ip_ban_warning": "Übrigens kann Ihre IP bei YouTube blockiert werden, wenn die Anzahl der Download-Anfragen höher ist als üblich. Eine IP-Sperre bedeutet, dass Sie YouTube für mindestens 2-3 Monate von dieser IP aus nicht nutzen können (auch wenn Sie eingeloggt sind). Und Spotube übernimmt keine Verantwortung, wenn dies passiert.", - "by_clicking_accept_terms": "Indem Sie auf "Akzeptieren" klicken, erklären Sie sich mit den folgenden Bedingungen einverstanden:", - "download_agreement_1": "Ich weiß, dass ich Musik raubkopiere. Ich bin böse.", - "download_agreement_2": "Ich werde die Künstler unterstützen, wo immer ich kann, und ich tue das nur, weil ich kein Geld habe, um ihre Kunst zu kaufen.", - "download_agreement_3": "Ich bin mir völlig bewusst, dass meine IP auf YouTube blockiert werden kann und ich mache Spotube oder seine Eigentümer/Beitragszahler nicht dafür verantwortlich, die durch meine aktuelle Aktion verursacht werden.", + "are_you_sure": "Bist du sicher?", + "generating_playlist": "Erstelle deine individuelle Wiedergabeliste...", + "selected_count_tracks": "{count} Titel ausgewählt", + "download_warning": "Wenn du alle Titel in großen Mengen herunterlädst, betreibst du eindeutig Raubkopien von Musik und schadest der kreativen Gesellschaft der Musik. Ich hoffe, dir ist dies bewusst. Versuche immer, die harte Arbeit der Künstler zu respektieren und zu unterstützen.", + "download_ip_ban_warning": "Übrigens, deine IP-Adresse kann aufgrund übermäßiger Downloadanfragen von YouTube gesperrt werden. Eine IP-Sperre bedeutet, dass du YouTube (auch wenn du angemeldet bist) für mindestens 2-3 Monate von diesem IP-Gerät aus nicht nutzen kannst. Spotube übernimmt keine Verantwortung, falls dies jemals geschieht.", + "by_clicking_accept_terms": "Durch Klicken auf 'Akzeptieren' stimmst du den folgenden Bedingungen zu:", + "download_agreement_1": "Ich weiß, dass ich Raubkopien von Musik betreibe. Ich bin böse.", + "download_agreement_2": "Ich werde die Künstler, wo immer ich kann, unterstützen, und ich tue dies nur, weil ich kein Geld habe, um ihre Kunst zu kaufen.", + "download_agreement_3": "Mir ist vollkommen bewusst, dass meine IP-Adresse auf YouTube gesperrt werden kann, und ich halte Spotube oder seine Eigentümer/Mitarbeiter nicht für etwaige Unfälle verantwortlich, die durch meine derzeitige Handlung verursacht werden.", "decline": "Ablehnen", - "accept": "Akzeptieren" -} + "accept": "Akzeptieren", + "details": "Details", + "youtube": "YouTube", + "channel": "Kanal", + "likes": "Likes", + "dislikes": "Dislikes", + "views": "Aufrufe", + "streamUrl": "Stream-URL", + "stop": "Stopp", + "sort_newest": "Nach neuesten Hinzufügungen sortieren", + "sort_oldest": "Nach ältesten Hinzufügungen sortieren", + "sleep_timer": "Schlaftimer", + "mins": "{minutes} Minuten", + "hours": "{hours} Stunden", + "hour": "{hours} Stunde", + "custom_hours": "Benutzerdefinierte Stunden", + "logs": "Protokolle", + "developers": "Entwickler" +} \ No newline at end of file diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index 852630466..974b3afc8 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -246,5 +246,6 @@ "hour": "{hours} Hour", "custom_hours": "Custom Hours", "logs": "Logs", - "developers": "Developers" + "developers": "Developers", + "not_logged_in": "You're not logged in" } \ No newline at end of file diff --git a/lib/l10n/l10n.dart b/lib/l10n/l10n.dart index f2e4e3a98..4d7a5f007 100644 --- a/lib/l10n/l10n.dart +++ b/lib/l10n/l10n.dart @@ -11,7 +11,7 @@ class L10n { const Locale('bn', 'BD'), const Locale('fr', 'FR'), const Locale('hi', 'IN'), - const Locale ('ge', 'DE'), + const Locale('de', 'GE'), const Locale('ja', 'JA'), ]; }