Replace the plain content-language <Select> in the brand form with a searchable LanguagePicker combobox (Popover + Command), matching the FontPicker. i18n the combobox placeholder/search/empty strings across all 15 locales. Switch the UI language via a full page reload instead of client-side dir syncing, so the server-rendered <html dir> flips LTR<->RTL correctly without a manual refresh.
365 lines
16 KiB
PHP
365 lines
16 KiB
PHP
<?php
|
||
|
||
declare(strict_types=1);
|
||
|
||
return [
|
||
'title' => 'Einstellungen',
|
||
'description' => 'Verwalte dein Profil und deine Kontoeinstellungen',
|
||
|
||
'hub' => [
|
||
'title' => 'Einstellungen',
|
||
'description' => 'Wähle, was du verwalten möchtest.',
|
||
'profile' => [
|
||
'title' => 'Profil',
|
||
'description' => 'Aktualisiere deine persönlichen Daten, dein Passwort und deine Benachrichtigungseinstellungen.',
|
||
],
|
||
'workspace' => [
|
||
'title' => 'Workspace',
|
||
'description' => 'Konfiguriere deinen Workspace, deine Marke, deine Mitglieder und deine API-Keys.',
|
||
],
|
||
'account' => [
|
||
'title' => 'Konto',
|
||
'description' => 'Verwalte deine Kontoinformationen, deine Nutzung und deine Abrechnung.',
|
||
],
|
||
],
|
||
|
||
'nav' => [
|
||
'profile' => 'Profil',
|
||
'authentication' => 'Authentifizierung',
|
||
'workspace' => 'Workspace',
|
||
'members' => 'Mitglieder',
|
||
'notifications' => 'Benachrichtigungen',
|
||
'billing' => 'Abrechnung',
|
||
],
|
||
|
||
'notifications' => [
|
||
'title' => 'Benachrichtigungseinstellungen',
|
||
'heading' => 'E-Mail-Benachrichtigungen',
|
||
'description' => 'Wähle, welche E-Mail-Benachrichtigungen du erhalten möchtest',
|
||
'post_published' => 'Beitrag veröffentlicht',
|
||
'post_published_description' => 'Erhalte eine E-Mail, wenn dein Beitrag erfolgreich veröffentlicht wurde',
|
||
'post_failed' => 'Beitrag fehlgeschlagen',
|
||
'post_failed_description' => 'Erhalte eine E-Mail, wenn die Veröffentlichung deines Beitrags fehlschlägt',
|
||
'account_disconnected' => 'Konto getrennt',
|
||
'account_disconnected_description' => 'Erhalte eine E-Mail, wenn ein Social-Media-Konto getrennt wird',
|
||
'save' => 'Einstellungen speichern',
|
||
],
|
||
|
||
'profile' => [
|
||
'title' => 'Profileinstellungen',
|
||
'photo_heading' => 'Profilfoto',
|
||
'photo_description' => 'Lade ein Profilfoto hoch',
|
||
'heading' => 'Profilinformationen',
|
||
'description' => 'Aktualisiere deinen Namen und deine E-Mail-Adresse',
|
||
'avatar' => 'Avatar',
|
||
'name' => 'Name',
|
||
'name_placeholder' => 'Vollständiger Name',
|
||
'email' => 'E-Mail-Adresse',
|
||
'email_placeholder' => 'E-Mail-Adresse',
|
||
'email_unverified' => 'Deine E-Mail-Adresse ist nicht bestätigt.',
|
||
'resend_verification' => 'Klicke hier, um die Bestätigungs-E-Mail erneut zu senden.',
|
||
'verification_sent' => 'Ein neuer Bestätigungslink wurde an deine E-Mail-Adresse gesendet.',
|
||
'save' => 'Speichern',
|
||
],
|
||
|
||
'authentication' => [
|
||
'title' => 'Authentifizierung',
|
||
'page_title' => 'Authentifizierungseinstellungen',
|
||
'sessions' => [
|
||
'title' => 'Aktive Sitzungen',
|
||
'description' => 'Wenn dir etwas Verdächtiges auffällt, melde dich von anderen Geräten ab.',
|
||
'unknown_browser' => 'Unbekannter Browser',
|
||
'unknown_ip' => 'Unbekannte IP',
|
||
'on' => 'am',
|
||
'active_now' => 'Jetzt aktiv',
|
||
'log_out_others' => 'Andere Geräte abmelden',
|
||
'modal_title' => 'Andere Geräte abmelden',
|
||
'modal_description_password' => 'Gib dein aktuelles Passwort ein, um zu bestätigen, dass du andere Browser-Sitzungen abmelden möchtest.',
|
||
'modal_description_email' => 'Gib deine E-Mail-Adresse ein, um zu bestätigen, dass du andere Browser-Sitzungen abmelden möchtest.',
|
||
'password_placeholder' => 'Aktuelles Passwort',
|
||
'email_placeholder' => 'E-Mail deines Kontos',
|
||
'cancel' => 'Abbrechen',
|
||
'submit' => 'Andere Geräte abmelden',
|
||
'email_mismatch' => 'Die E-Mail-Adresse stimmt nicht mit deinem Konto überein.',
|
||
'flash_logged_out' => 'Du wurdest von anderen Geräten abgemeldet.',
|
||
],
|
||
'password' => [
|
||
'update_title' => 'Passwort aktualisieren',
|
||
'set_title' => 'Passwort festlegen',
|
||
'update_description' => 'Stelle sicher, dass dein Konto ein langes, zufälliges Passwort verwendet, um sicher zu bleiben.',
|
||
'set_description' => 'Füge ein Passwort hinzu, damit du dich ohne verbundenen Anbieter anmelden kannst.',
|
||
'current_password' => 'Aktuelles Passwort',
|
||
'new_password' => 'Neues Passwort',
|
||
'confirm_password' => 'Passwort bestätigen',
|
||
'save' => 'Passwort speichern',
|
||
'set' => 'Passwort festlegen',
|
||
],
|
||
'providers' => [
|
||
'title' => 'Verbundene Konten',
|
||
'description' => 'Melde dich schneller mit diesen verbundenen Anbietern an.',
|
||
'connected' => 'Verbunden',
|
||
'not_connected' => 'Nicht verbunden',
|
||
'connect' => 'Verbinden',
|
||
'disconnect' => 'Trennen',
|
||
'flash_disconnected' => ':provider erfolgreich getrennt.',
|
||
'flash_connected' => ':provider erfolgreich verbunden.',
|
||
'flash_already_linked' => 'Dieses :provider-Konto ist bereits mit einem anderen Benutzer verknüpft.',
|
||
'flash_cannot_disconnect' => 'Du kannst deine einzige Anmeldemethode nicht trennen. Lege zuerst ein Passwort fest oder verbinde einen anderen Anbieter.',
|
||
],
|
||
],
|
||
|
||
'delete_account' => [
|
||
'heading' => 'Konto löschen',
|
||
'description' => 'Lösche dein Konto und alle zugehörigen Ressourcen',
|
||
'warning' => 'Warnung',
|
||
'warning_message' => 'Bitte gehe mit Vorsicht vor, dies kann nicht rückgängig gemacht werden.',
|
||
'button' => 'Konto löschen',
|
||
'modal_title' => 'Möchtest du dein Konto wirklich löschen?',
|
||
'modal_description_password' => 'Sobald dein Konto gelöscht ist, werden auch alle zugehörigen Ressourcen und Daten dauerhaft gelöscht. Bitte gib dein Passwort ein, um zu bestätigen.',
|
||
'modal_description_email' => 'Sobald dein Konto gelöscht ist, werden auch alle zugehörigen Ressourcen und Daten dauerhaft gelöscht. Bitte gib deine E-Mail-Adresse :email ein, um zu bestätigen.',
|
||
'password' => 'Passwort',
|
||
'password_placeholder' => 'Passwort',
|
||
'email_placeholder' => 'E-Mail deines Kontos',
|
||
'email_mismatch' => 'Die E-Mail-Adresse stimmt nicht mit deinem Konto überein.',
|
||
'cancel' => 'Abbrechen',
|
||
'confirm' => 'Konto löschen',
|
||
],
|
||
|
||
'workspace' => [
|
||
'tabs' => [
|
||
'workspace' => 'Workspace',
|
||
'brand' => 'Marke',
|
||
'users' => 'Mitglieder',
|
||
'api_keys' => 'API-Keys',
|
||
],
|
||
'title' => 'Workspace-Einstellungen',
|
||
'logo_heading' => 'Workspace-Logo',
|
||
'logo_description' => 'Lade ein Logo für deinen Workspace hoch',
|
||
'heading' => 'Workspace-Name',
|
||
'description' => 'Aktualisiere den Namen deines Workspace',
|
||
'members_heading' => 'Mitglieder',
|
||
'members_description' => 'Verwalte die Mitglieder und Einladungen des Workspace',
|
||
'name' => 'Name',
|
||
'name_placeholder' => 'Mein Workspace',
|
||
'save' => 'Speichern',
|
||
],
|
||
|
||
'brand' => [
|
||
'title' => 'Marke',
|
||
'description' => 'Konfiguriere deine Markenidentität für KI-generierte Inhalte.',
|
||
'name' => 'Workspace-Name',
|
||
'name_placeholder' => 'Meine Marke',
|
||
'website' => 'Website',
|
||
'website_placeholder' => 'https://yourbrand.com',
|
||
'brand_description' => 'Beschreibung',
|
||
'brand_description_placeholder' => 'Erzähl uns von deiner Marke, was du machst und wer deine Zielgruppe ist...',
|
||
'voice' => 'Markenton',
|
||
'voice_description' => 'Wähle die Eigenschaften, die den Klang deiner Inhalte bestimmen.',
|
||
'voice_group' => [
|
||
'pov' => 'Perspektive',
|
||
'formality' => 'Förmlichkeit',
|
||
'energy' => 'Energie',
|
||
'humor' => 'Humor',
|
||
'attitude' => 'Haltung',
|
||
'warmth' => 'Wärme',
|
||
'confidence' => 'Selbstbewusstsein',
|
||
'style' => 'Stil',
|
||
],
|
||
'voice_trait' => [
|
||
'first_person' => 'Erste Person',
|
||
'second_person' => 'Zweite Person (du)',
|
||
'third_person' => 'Dritte Person',
|
||
'formal' => 'Förmlich',
|
||
'balanced' => 'Ausgewogen',
|
||
'casual' => 'Locker',
|
||
'calm' => 'Ruhig',
|
||
'moderate' => 'Moderat',
|
||
'enthusiastic' => 'Enthusiastisch',
|
||
'vibrant' => 'Lebhaft',
|
||
'serious' => 'Ernst',
|
||
'dry' => 'Trocken / subtil',
|
||
'witty' => 'Geistreich',
|
||
'playful' => 'Verspielt',
|
||
'respectful' => 'Respektvoll',
|
||
'even_handed' => 'Unparteiisch',
|
||
'bold' => 'Mutig',
|
||
'provocative' => 'Provokativ',
|
||
'neutral' => 'Neutral',
|
||
'friendly' => 'Freundlich',
|
||
'empathetic' => 'Einfühlsam',
|
||
'humble' => 'Bescheiden',
|
||
'confident' => 'Selbstbewusst',
|
||
'assertive' => 'Durchsetzungsstark',
|
||
'direct' => 'Direkt',
|
||
'concise' => 'Prägnant',
|
||
'transparent' => 'Transparent',
|
||
'no_hype' => 'Ohne Hype',
|
||
'practical' => 'Praktisch',
|
||
'data_driven' => 'Datenbasiert',
|
||
'storytelling' => 'Storytelling',
|
||
'inspirational' => 'Inspirierend',
|
||
'educational' => 'Lehrreich',
|
||
'technical' => 'Technisch',
|
||
'minimalist' => 'Wenige Emojis',
|
||
],
|
||
'brand_color' => 'Markenfarbe',
|
||
'background_color' => 'Hintergrundfarbe',
|
||
'text_color' => 'Textfarbe',
|
||
'font' => 'Schriftart',
|
||
'image_style' => 'Bildstil',
|
||
'image_style_description' => 'Visueller Stil, der beim Generieren von Slide- und Coverbildern für KI-Beiträge angewendet wird.',
|
||
'image_style_cinematic' => 'Filmisch',
|
||
'image_style_illustration' => 'Illustration',
|
||
'image_style_isometric_3d' => 'Isometrisch',
|
||
'image_style_cartoon' => 'Cartoon',
|
||
'image_style_typographic' => 'Typografisch',
|
||
'image_style_infographic' => 'Infografik',
|
||
'image_style_minimalist' => 'Minimalistisch',
|
||
'image_style_mockup' => 'Mockup',
|
||
'content_language' => 'Inhaltssprache',
|
||
'content_language_description' => 'Sprache für KI-generierte Bildunterschriften, Hashtags und jeglichen Text in generierten Bildern oder Videos.',
|
||
'font_placeholder' => 'Schriftart auswählen…',
|
||
'font_search' => 'Schriftart suchen…',
|
||
'font_empty' => 'Keine Schriftarten gefunden.',
|
||
'language_placeholder' => 'Sprache auswählen…',
|
||
'language_search' => 'Sprache suchen…',
|
||
'language_empty' => 'Keine Sprache gefunden.',
|
||
|
||
],
|
||
|
||
'members' => [
|
||
'title' => 'Mitglieder',
|
||
'heading' => 'Teammitglieder',
|
||
'description' => 'Verwalte Mitglieder und Einladungen für diesen Workspace',
|
||
|
||
'cancel' => 'Abbrechen',
|
||
'remove' => 'Entfernen',
|
||
'make_role' => 'Zu :role machen',
|
||
|
||
'invite' => [
|
||
'title' => 'Mitglied einladen',
|
||
'description' => 'Sende eine E-Mail-Einladung, um Mitarbeiter hinzuzufügen',
|
||
'email' => 'E-Mail',
|
||
'email_placeholder' => 'mitarbeiter@email.com',
|
||
'role' => 'Rolle',
|
||
'role_placeholder' => 'Rolle auswählen',
|
||
'submit' => 'Einladung senden',
|
||
],
|
||
|
||
'pending' => [
|
||
'title' => 'Ausstehende Einladungen',
|
||
'description' => 'Einladungen, die auf Annahme warten',
|
||
'empty' => 'Keine ausstehenden Einladungen',
|
||
],
|
||
|
||
'list' => [
|
||
'title' => 'Mitglieder',
|
||
'description' => 'Personen mit Zugriff auf diesen Workspace',
|
||
'empty' => 'Keine Mitglieder außer dem Inhaber',
|
||
],
|
||
|
||
'remove_modal' => [
|
||
'title' => 'Mitglied entfernen',
|
||
'description' => 'Möchtest du dieses Mitglied wirklich aus dem Workspace entfernen? Es verliert den Zugriff auf alle Workspace-Ressourcen.',
|
||
'action' => 'Mitglied entfernen',
|
||
],
|
||
|
||
'cancel_invite_modal' => [
|
||
'title' => 'Einladung zurückziehen',
|
||
'description' => 'Möchtest du diese Einladung wirklich zurückziehen?',
|
||
'action' => 'Einladung zurückziehen',
|
||
],
|
||
|
||
'roles' => [
|
||
'owner' => 'Inhaber',
|
||
'admin' => 'Admin',
|
||
'member' => 'Mitglied',
|
||
'viewer' => 'Betrachter',
|
||
],
|
||
|
||
'flash' => [
|
||
'invite_sent' => 'Einladung erfolgreich gesendet!',
|
||
'invite_deleted' => 'Einladung gelöscht.',
|
||
'member_removed' => 'Mitglied erfolgreich entfernt.',
|
||
'role_updated' => 'Rolle des Mitglieds aktualisiert.',
|
||
'wrong_email' => 'Diese Einladung gilt für eine andere E-Mail-Adresse.',
|
||
'already_member' => 'Du bist bereits Mitglied dieses Workspace.',
|
||
'invite_accepted' => 'Willkommen! Du bist jetzt Mitglied des Workspace.',
|
||
'invite_declined' => 'Einladung abgelehnt.',
|
||
],
|
||
],
|
||
|
||
'account' => [
|
||
'tabs' => [
|
||
'account' => 'Konto',
|
||
'usage' => 'Nutzung',
|
||
'billing' => 'Abrechnung',
|
||
],
|
||
'title' => 'Kontoeinstellungen',
|
||
'description' => 'Verwalte deinen Kontonamen und deine Rechnungs-E-Mail',
|
||
'name' => 'Kontoname',
|
||
'name_placeholder' => 'Meine Firma',
|
||
'billing_email' => 'Rechnungs-E-Mail',
|
||
'billing_email_placeholder' => 'rechnung@firma.com',
|
||
'billing_email_hint' => 'Diese E-Mail-Adresse wird für Rechnungen und Abrechnungskommunikation von Stripe verwendet.',
|
||
'submit' => 'Speichern',
|
||
],
|
||
|
||
'flash' => [
|
||
'account_updated' => 'Konto erfolgreich aktualisiert!',
|
||
'profile_updated' => 'Profil erfolgreich aktualisiert!',
|
||
'password_updated' => 'Passwort erfolgreich aktualisiert!',
|
||
'workspace_updated' => 'Einstellungen erfolgreich aktualisiert!',
|
||
'photo_updated' => 'Foto erfolgreich aktualisiert!',
|
||
'photo_deleted' => 'Foto erfolgreich entfernt!',
|
||
'logo_updated' => 'Logo erfolgreich hochgeladen!',
|
||
'logo_deleted' => 'Logo erfolgreich entfernt!',
|
||
'notifications_updated' => 'Benachrichtigungseinstellungen aktualisiert!',
|
||
],
|
||
|
||
'api_keys' => [
|
||
'title' => 'API-Keys',
|
||
'page_title' => 'API-Keys',
|
||
'heading' => 'API-Keys',
|
||
'description' => 'Verwalte API-Keys für den programmatischen Zugriff auf deinen Workspace.',
|
||
'create' => 'API-Key erstellen',
|
||
'copy' => 'Kopieren',
|
||
'new_token_message' => 'Dein neuer API-Key wurde erstellt. Kopiere ihn jetzt – du kannst ihn danach nicht mehr sehen.',
|
||
'table' => [
|
||
'name' => 'Name',
|
||
'key' => 'Key',
|
||
'status' => 'Status',
|
||
'expires' => 'Läuft ab',
|
||
'last_used' => 'Zuletzt verwendet',
|
||
'never' => 'Nie',
|
||
],
|
||
'actions' => [
|
||
'copy_id' => 'API-Key-ID kopieren',
|
||
'copy_id_success' => 'API-Key-ID in die Zwischenablage kopiert',
|
||
'delete' => 'Löschen',
|
||
],
|
||
'empty' => [
|
||
'title' => 'Noch keine API-Keys',
|
||
'description' => 'Erstelle einen API-Key, um programmatisch auf deinen Workspace zuzugreifen.',
|
||
],
|
||
'delete_modal' => [
|
||
'title' => 'API-Key löschen',
|
||
'description' => 'Möchtest du diesen API-Key wirklich löschen? Alle Anwendungen, die diesen Key verwenden, verlieren sofort den Zugriff.',
|
||
'action' => 'API-Key löschen',
|
||
],
|
||
'create_dialog' => [
|
||
'title' => 'API-Key erstellen',
|
||
'description' => 'Erstelle einen neuen API-Key für den programmatischen Zugriff auf deinen Workspace.',
|
||
'name' => 'Name',
|
||
'name_placeholder' => 'z. B. Produktions-API-Key',
|
||
'expires' => 'Ablaufdatum (optional)',
|
||
'expires_placeholder' => 'Kein Ablauf',
|
||
'submit' => 'Erstellen',
|
||
'cancel' => 'Abbrechen',
|
||
],
|
||
'flash' => [
|
||
'created' => 'API-Key erfolgreich erstellt!',
|
||
'deleted' => 'API-Key erfolgreich gelöscht!',
|
||
],
|
||
],
|
||
];
|