diff --git a/packages/ui/src/lib/i18n/messages/de.settings.ts b/packages/ui/src/lib/i18n/messages/de.settings.ts index 8bc4fe64..1291cf6d 100644 --- a/packages/ui/src/lib/i18n/messages/de.settings.ts +++ b/packages/ui/src/lib/i18n/messages/de.settings.ts @@ -1268,7 +1268,52 @@ export const settingsDict = { 'settings.providers.page.connect.selectProviderPlaceholder': 'Anbieter auswählen', 'settings.providers.page.connect.searchProvidersPlaceholder': 'Suche...', 'settings.providers.page.connect.noProvidersFound': 'Keine Anbieter gefunden', - 'settings.providers.page.connect.allProvidersConnected': 'Alle Anbieter verbunden.', + 'settings.providers.page.custom.optionLabel': 'Andere / Benutzerdefiniert', + 'settings.providers.page.custom.title': 'Benutzerdefinierter Anbieter', + 'settings.providers.page.custom.editTitle': 'Benutzerdefinierten Anbieter bearbeiten', + 'settings.providers.page.custom.description': 'Fügen Sie einen OpenAI-kompatiblen Anbieter mit Basis-URL, Anmeldedaten und Modellliste hinzu. Wird in der OpenCode-Konfiguration gespeichert und steht im Chat wie jeder andere Anbieter zur Verfügung.', + 'settings.providers.page.custom.field.providerID.label': 'Anbieter-ID', + 'settings.providers.page.custom.field.providerID.placeholder': 'mein-anbieter', + 'settings.providers.page.custom.field.providerID.info': 'Kleinbuchstaben, Zahlen, Bindestriche und Unterstriche. Wird als OpenCode-Anbieter-ID verwendet.', + 'settings.providers.page.custom.field.name.label': 'Anzeigename', + 'settings.providers.page.custom.field.name.placeholder': 'Mein Anbieter', + 'settings.providers.page.custom.field.name.info': 'Wird in den Anbieter- und Modellauswahlen angezeigt.', + 'settings.providers.page.custom.field.baseURL.label': 'Basis-URL', + 'settings.providers.page.custom.field.baseURL.placeholder': 'https://api.example.com/v1', + 'settings.providers.page.custom.field.baseURL.info': 'OpenAI-kompatible API-Basis-URL. Muss mit http:// oder https:// beginnen.', + 'settings.providers.page.custom.field.apiKey.label': 'API-Schlüssel', + 'settings.providers.page.custom.field.apiKey.placeholder': 'sk-... oder {env:VAR_NAME}', + 'settings.providers.page.custom.field.apiKey.info': 'Wird in der OpenCode-Authentifizierung gespeichert, nicht von OpenChamber. Verwenden Sie {env:VAR_NAME}, um einen Schlüssel aus der Umgebung zu lesen.', + 'settings.providers.page.custom.field.apiKey.editInfo': 'Leer lassen, um die vorhandenen Anmeldedaten zu behalten, oder einen neuen Schlüssel / {env:VAR_NAME} eingeben.', + 'settings.providers.page.custom.field.apiKey.editPlaceholder': 'Leer lassen, um den vorhandenen Schlüssel zu behalten', + 'settings.providers.page.custom.models.title': 'Modelle', + 'settings.providers.page.custom.models.idLabel': 'Modell-ID', + 'settings.providers.page.custom.models.idPlaceholder': 'gpt-4o', + 'settings.providers.page.custom.models.nameLabel': 'Modellname', + 'settings.providers.page.custom.models.namePlaceholder': 'GPT-4o', + 'settings.providers.page.custom.models.add': 'Modell hinzufügen', + 'settings.providers.page.custom.models.remove': 'Modell entfernen', + 'settings.providers.page.custom.headers.title': 'Header', + 'settings.providers.page.custom.headers.description': 'Optionale Anfrage-Header, die bei jedem Aufruf gesendet werden.', + 'settings.providers.page.custom.headers.keyLabel': 'Header-Name', + 'settings.providers.page.custom.headers.keyPlaceholder': 'X-Custom-Header', + 'settings.providers.page.custom.headers.valueLabel': 'Header-Wert', + 'settings.providers.page.custom.headers.valuePlaceholder': 'Wert', + 'settings.providers.page.custom.headers.add': 'Header hinzufügen', + 'settings.providers.page.custom.headers.remove': 'Header entfernen', + 'settings.providers.page.custom.actions.back': 'Zurück', + 'settings.providers.page.custom.actions.save': 'Anbieter speichern', + 'settings.providers.page.custom.actions.update': 'Anbieter aktualisieren', + 'settings.providers.page.custom.error.providerID.required': 'Anbieter-ID ist erforderlich', + 'settings.providers.page.custom.error.providerID.format': 'Verwenden Sie Kleinbuchstaben, Zahlen, Bindestriche oder Unterstriche', + 'settings.providers.page.custom.error.providerID.exists': 'Ein Anbieter mit dieser ID ist bereits verbunden', + 'settings.providers.page.custom.error.name.required': 'Anzeigename ist erforderlich', + 'settings.providers.page.custom.error.baseURL.required': 'Basis-URL ist erforderlich', + 'settings.providers.page.custom.error.baseURL.format': 'Basis-URL muss mit http:// oder https:// beginnen', + 'settings.providers.page.custom.error.required': 'Erforderlich', + 'settings.providers.page.custom.error.duplicate': 'Duplikat', + 'settings.providers.page.custom.error.apiKey.required': 'API-Schlüssel oder {env:VAR_NAME} ist erforderlich', + 'settings.providers.page.custom.authFailure.configAfterAuth': 'Anmeldedaten wurden gespeichert, aber die Anbieterkonfiguration nicht. Beheben Sie den Fehler und versuchen Sie es erneut, oder trennen Sie die Verbindung, um den teilweisen Speichervorgang zu löschen.', 'settings.providers.page.auth.title': 'Authentifizierung', 'settings.providers.page.auth.loadingMethods': 'Lade Authentifizierungsmethoden...', 'settings.providers.page.auth.apiKeyLabel': 'API-Schlüssel', @@ -1277,6 +1322,8 @@ export const settingsDict = { 'settings.providers.page.auth.oauthMethodFallback': 'OAuth-Methode {index}', 'settings.providers.page.auth.pasteAuthorizationCodePlaceholder': 'Autorisierungscode einfügen', 'settings.providers.page.auth.connected': 'Verbunden', + 'settings.providers.page.auth.incomplete': 'Anmeldedaten fehlen', + 'settings.providers.page.auth.incompleteHint': '· Fügen Sie einen API-Schlüssel oder {env:VAR} hinzu, bevor Sie diesen Anbieter im Chat verwenden', 'settings.providers.page.auth.useReconnectHint': '· Verwenden Sie „Erneut verbinden“, um Anmeldedaten zu aktualisieren', 'settings.providers.page.connectionDetails.title': 'Verbindungsdetails', 'settings.providers.page.connectionDetails.configuredIn': 'Konfiguriert in:', @@ -1306,6 +1353,7 @@ export const settingsDict = { 'settings.providers.page.actions.complete': 'Vervollständigen', 'settings.providers.page.actions.hide': 'Ausblenden', 'settings.providers.page.actions.reconnect': 'Erneut verbinden', + 'settings.providers.page.actions.edit': 'Bearbeiten', 'settings.providers.page.actions.disconnecting': 'Trennen...', 'settings.providers.page.actions.disconnect': 'Trennen', 'settings.providers.page.actions.hideAll': 'Alle ausblenden', @@ -1326,6 +1374,8 @@ export const settingsDict = { 'settings.providers.page.toast.deviceCodeCopyFailed': 'Fehler beim Kopieren des Gerätecodes', 'settings.providers.page.toast.providerDisconnected': 'Anbieter getrennt', 'settings.providers.page.toast.providerDisconnectFailed': 'Fehler beim Trennen des Anbieters', + 'settings.providers.page.toast.customProviderSaved': '{provider} verbunden', + 'settings.providers.page.toast.customProviderSaveFailed': 'Benutzerdefinierter Anbieter konnte nicht gespeichert werden', 'settings.mcp.page.empty.selectServer': 'Wählen Sie einen MCP-Server aus der Seitenleiste', 'settings.mcp.page.empty.addNewOne': 'oder fügen Sie einen neuen hinzu', 'settings.mcp.page.header.newServer': 'Neuer MCP-Server',