refactor: app customization

This commit is contained in:
cogwheel0
2025-09-07 11:29:29 +05:30
parent a16fb86e27
commit 0116a5be7b
12 changed files with 524 additions and 247 deletions

View File

@@ -259,4 +259,18 @@
"description": "Zeigt an, wie lange der Assistent nachgedacht hat.",
"placeholders": {"duration": {"type": "String", "example": "3 s"}}
}
,
"appCustomization": "App-Anpassung",
"appCustomizationSubtitle": "Personalisieren, wie Namen und UI angezeigt werden",
"display": "Anzeige",
"realtime": "Echtzeit",
"hideProviderInModelNames": "Anbieter in Modellnamen ausblenden",
"hideProviderInModelNamesDescription": "Zeige Namen wie \"gpt-4o\" statt \"openai/gpt-4o\".",
"transportMode": "Transportmodus",
"transportModeDescription": "Wähle, wie die App für Echtzeit-Updates verbindet.",
"mode": "Modus",
"transportModeAuto": "Auto (Polling + WebSocket)",
"transportModeWs": "Nur WebSocket",
"transportModeAutoInfo": "Robuster in restriktiven Netzwerken. Wechselt nach Möglichkeit zu WebSocket.",
"transportModeWsInfo": "Geringerer Overhead, kann jedoch hinter strikten Proxys/Firewalls fehlschlagen."
}

View File

@@ -283,4 +283,18 @@
"description": "Shows how long the assistant thought before replying.",
"placeholders": {"duration": {"type": "String", "example": "3s"}}
}
,
"appCustomization": "App Customization",
"appCustomizationSubtitle": "Personalize how names and UI display",
"display": "Display",
"realtime": "Realtime",
"hideProviderInModelNames": "Hide provider in model names",
"hideProviderInModelNamesDescription": "Show names like \"gpt-4o\" instead of \"openai/gpt-4o\".",
"transportMode": "Transport mode",
"transportModeDescription": "Choose how the app connects for realtime updates.",
"mode": "Mode",
"transportModeAuto": "Auto (Polling + WebSocket)",
"transportModeWs": "WebSocket only",
"transportModeAutoInfo": "More robust on restrictive networks. Upgrades to WebSocket when possible.",
"transportModeWsInfo": "Lower overhead, but may fail behind strict proxies/firewalls."
}

View File

@@ -259,4 +259,18 @@
"description": "Indique la durée de réflexion de l'assistant.",
"placeholders": {"duration": {"type": "String", "example": "3 s"}}
}
,
"appCustomization": "Personnalisation de l'app",
"appCustomizationSubtitle": "Personnalisez l'affichage des noms et de l'UI",
"display": "Affichage",
"realtime": "Temps réel",
"hideProviderInModelNames": "Masquer le fournisseur dans les noms de modèles",
"hideProviderInModelNamesDescription": "Afficher des noms comme \"gpt-4o\" au lieu de \"openai/gpt-4o\".",
"transportMode": "Mode de transport",
"transportModeDescription": "Choisissez comment l'app se connecte pour les mises à jour en temps réel.",
"mode": "Mode",
"transportModeAuto": "Auto (Polling + WebSocket)",
"transportModeWs": "WebSocket uniquement",
"transportModeAutoInfo": "Plus robuste sur les réseaux restrictifs. Passe à WebSocket lorsque possible.",
"transportModeWsInfo": "Moins de surcharge, mais peut échouer derrière des proxys/firewalls stricts."
}

View File

@@ -259,4 +259,18 @@
"description": "Mostra per quanto tempo ha pensato l'assistente.",
"placeholders": {"duration": {"type": "String", "example": "3 s"}}
}
,
"appCustomization": "Personalizzazione app",
"appCustomizationSubtitle": "Personalizza la visualizzazione dei nomi e dell'UI",
"display": "Schermo",
"realtime": "Tempo reale",
"hideProviderInModelNames": "Nascondi provider nei nomi dei modelli",
"hideProviderInModelNamesDescription": "Mostra nomi come \"gpt-4o\" invece di \"openai/gpt-4o\".",
"transportMode": "Modalità di trasporto",
"transportModeDescription": "Scegli come l'app si connette per gli aggiornamenti in tempo reale.",
"mode": "Modalità",
"transportModeAuto": "Auto (Polling + WebSocket)",
"transportModeWs": "Solo WebSocket",
"transportModeAutoInfo": "Più robusto nelle reti restrittive. Passa a WebSocket quando possibile.",
"transportModeWsInfo": "Minore overhead, ma può fallire dietro proxy/firewall restrittivi."
}

View File

@@ -1230,13 +1230,13 @@ abstract class AppLocalizations {
/// No description provided for @appLanguage.
///
/// In en, this message translates to:
/// **'App language'**
/// **'App Language'**
String get appLanguage;
/// No description provided for @darkMode.
///
/// In en, this message translates to:
/// **'Dark mode'**
/// **'Dark Mode'**
String get darkMode;
/// No description provided for @webSearch.
@@ -1472,6 +1472,84 @@ abstract class AppLocalizations {
/// In en, this message translates to:
/// **'Thought for {duration}'**
String thoughtForDuration(String duration);
/// No description provided for @appCustomization.
///
/// In en, this message translates to:
/// **'App Customization'**
String get appCustomization;
/// No description provided for @appCustomizationSubtitle.
///
/// In en, this message translates to:
/// **'Personalize how names and UI display'**
String get appCustomizationSubtitle;
/// No description provided for @display.
///
/// In en, this message translates to:
/// **'Display'**
String get display;
/// No description provided for @realtime.
///
/// In en, this message translates to:
/// **'Realtime'**
String get realtime;
/// No description provided for @hideProviderInModelNames.
///
/// In en, this message translates to:
/// **'Hide provider in model names'**
String get hideProviderInModelNames;
/// No description provided for @hideProviderInModelNamesDescription.
///
/// In en, this message translates to:
/// **'Show names like \"gpt-4o\" instead of \"openai/gpt-4o\".'**
String get hideProviderInModelNamesDescription;
/// No description provided for @transportMode.
///
/// In en, this message translates to:
/// **'Transport mode'**
String get transportMode;
/// No description provided for @transportModeDescription.
///
/// In en, this message translates to:
/// **'Choose how the app connects for realtime updates.'**
String get transportModeDescription;
/// No description provided for @mode.
///
/// In en, this message translates to:
/// **'Mode'**
String get mode;
/// No description provided for @transportModeAuto.
///
/// In en, this message translates to:
/// **'Auto (Polling + WebSocket)'**
String get transportModeAuto;
/// No description provided for @transportModeWs.
///
/// In en, this message translates to:
/// **'WebSocket only'**
String get transportModeWs;
/// No description provided for @transportModeAutoInfo.
///
/// In en, this message translates to:
/// **'More robust on restrictive networks. Upgrades to WebSocket when possible.'**
String get transportModeAutoInfo;
/// No description provided for @transportModeWsInfo.
///
/// In en, this message translates to:
/// **'Lower overhead, but may fail behind strict proxies/firewalls.'**
String get transportModeWsInfo;
}
class _AppLocalizationsDelegate extends LocalizationsDelegate<AppLocalizations> {

View File

@@ -727,4 +727,43 @@ class AppLocalizationsDe extends AppLocalizations {
String thoughtForDuration(String duration) {
return 'Gedacht für $duration';
}
@override
String get appCustomization => 'App-Anpassung';
@override
String get appCustomizationSubtitle => 'Personalisieren, wie Namen und UI angezeigt werden';
@override
String get display => 'Anzeige';
@override
String get realtime => 'Echtzeit';
@override
String get hideProviderInModelNames => 'Anbieter in Modellnamen ausblenden';
@override
String get hideProviderInModelNamesDescription => 'Zeige Namen wie \"gpt-4o\" statt \"openai/gpt-4o\".';
@override
String get transportMode => 'Transportmodus';
@override
String get transportModeDescription => 'Wähle, wie die App für Echtzeit-Updates verbindet.';
@override
String get mode => 'Modus';
@override
String get transportModeAuto => 'Auto (Polling + WebSocket)';
@override
String get transportModeWs => 'Nur WebSocket';
@override
String get transportModeAutoInfo => 'Robuster in restriktiven Netzwerken. Wechselt nach Möglichkeit zu WebSocket.';
@override
String get transportModeWsInfo => 'Geringerer Overhead, kann jedoch hinter strikten Proxys/Firewalls fehlschlagen.';
}

View File

@@ -727,4 +727,43 @@ class AppLocalizationsEn extends AppLocalizations {
String thoughtForDuration(String duration) {
return 'Thought for $duration';
}
@override
String get appCustomization => 'App Customization';
@override
String get appCustomizationSubtitle => 'Personalize how names and UI display';
@override
String get display => 'Display';
@override
String get realtime => 'Realtime';
@override
String get hideProviderInModelNames => 'Hide provider in model names';
@override
String get hideProviderInModelNamesDescription => 'Show names like \"gpt-4o\" instead of \"openai/gpt-4o\".';
@override
String get transportMode => 'Transport mode';
@override
String get transportModeDescription => 'Choose how the app connects for realtime updates.';
@override
String get mode => 'Mode';
@override
String get transportModeAuto => 'Auto (Polling + WebSocket)';
@override
String get transportModeWs => 'WebSocket only';
@override
String get transportModeAutoInfo => 'More robust on restrictive networks. Upgrades to WebSocket when possible.';
@override
String get transportModeWsInfo => 'Lower overhead, but may fail behind strict proxies/firewalls.';
}

View File

@@ -727,4 +727,43 @@ class AppLocalizationsFr extends AppLocalizations {
String thoughtForDuration(String duration) {
return 'A réfléchi pendant $duration';
}
@override
String get appCustomization => 'Personnalisation de l\'app';
@override
String get appCustomizationSubtitle => 'Personnalisez l\'affichage des noms et de l\'UI';
@override
String get display => 'Affichage';
@override
String get realtime => 'Temps réel';
@override
String get hideProviderInModelNames => 'Masquer le fournisseur dans les noms de modèles';
@override
String get hideProviderInModelNamesDescription => 'Afficher des noms comme \"gpt-4o\" au lieu de \"openai/gpt-4o\".';
@override
String get transportMode => 'Mode de transport';
@override
String get transportModeDescription => 'Choisissez comment l\'app se connecte pour les mises à jour en temps réel.';
@override
String get mode => 'Mode';
@override
String get transportModeAuto => 'Auto (Polling + WebSocket)';
@override
String get transportModeWs => 'WebSocket uniquement';
@override
String get transportModeAutoInfo => 'Plus robuste sur les réseaux restrictifs. Passe à WebSocket lorsque possible.';
@override
String get transportModeWsInfo => 'Moins de surcharge, mais peut échouer derrière des proxys/firewalls stricts.';
}

View File

@@ -727,4 +727,43 @@ class AppLocalizationsIt extends AppLocalizations {
String thoughtForDuration(String duration) {
return 'Ha pensato per $duration';
}
@override
String get appCustomization => 'Personalizzazione app';
@override
String get appCustomizationSubtitle => 'Personalizza la visualizzazione dei nomi e dell\'UI';
@override
String get display => 'Schermo';
@override
String get realtime => 'Tempo reale';
@override
String get hideProviderInModelNames => 'Nascondi provider nei nomi dei modelli';
@override
String get hideProviderInModelNamesDescription => 'Mostra nomi come \"gpt-4o\" invece di \"openai/gpt-4o\".';
@override
String get transportMode => 'Modalità di trasporto';
@override
String get transportModeDescription => 'Scegli come l\'app si connette per gli aggiornamenti in tempo reale.';
@override
String get mode => 'Modalità';
@override
String get transportModeAuto => 'Auto (Polling + WebSocket)';
@override
String get transportModeWs => 'Solo WebSocket';
@override
String get transportModeAutoInfo => 'Più robusto nelle reti restrittive. Passa a WebSocket quando possibile.';
@override
String get transportModeWsInfo => 'Minore overhead, ma può fallire dietro proxy/firewall restrittivi.';
}