fix: duplicate semantics

This commit is contained in:
cogwheel0
2025-12-16 16:47:05 +05:30
parent 67bcd242bc
commit 50e286add8
11 changed files with 65 additions and 385 deletions

View File

@@ -1563,13 +1563,13 @@ class _ModernChatInputState extends ConsumerState<ModernChatInput>
: FontWeight.w400;
final TextStyle baseChatStyle = AppTypography.chatMessageStyle;
// Wrap with Semantics to provide an accessible label for screen
// readers. We avoid MergeSemantics which caused double-
// announcements. The TextField provides its own text field
// semantics; this just adds the descriptive label.
return Semantics(
label: AppLocalizations.of(context)!.messageInputLabel,
child: TextField(
// Rely on TextField's built-in accessibility via hintText.
// Wrapping with Semantics creates duplicate accessibility nodes
// which confuses screen readers and causes keyboard issues with
// alternative input methods (e.g., Braille keyboards).
// The hintText "Ask Conduit" provides sufficient context for
// screen readers to identify this as a message input field.
return TextField(
controller: _controller,
focusNode: _focusNode,
enabled: widget.enabled,
@@ -1588,9 +1588,7 @@ class _ModernChatInputState extends ConsumerState<ModernChatInput>
cursorColor: animatedTextColor,
style: baseChatStyle.copyWith(
color: animatedTextColor,
fontStyle: _isRecording
? FontStyle.italic
: FontStyle.normal,
fontStyle: _isRecording ? FontStyle.italic : FontStyle.normal,
fontWeight: recordingWeight,
),
decoration: InputDecoration(
@@ -1598,9 +1596,8 @@ class _ModernChatInputState extends ConsumerState<ModernChatInput>
hintStyle: baseChatStyle.copyWith(
color: animatedPlaceholder,
fontWeight: recordingWeight,
fontStyle: _isRecording
? FontStyle.italic
: FontStyle.normal,
fontStyle:
_isRecording ? FontStyle.italic : FontStyle.normal,
),
filled: false,
border: InputBorder.none,
@@ -1632,7 +1629,6 @@ class _ModernChatInputState extends ConsumerState<ModernChatInput>
if (!widget.enabled) return;
_ensureFocusedIfEnabled();
},
),
);
},
),

View File

@@ -5,7 +5,6 @@
"back": "Zurück",
"you": "Du",
"loadingProfile": "Profil wird geladen...",
"unableToLoadProfile": "Profil konnte nicht geladen werden",
"pleaseCheckConnection": "Bitte überprüfe deine Verbindung und versuche es erneut",
"connectionIssueTitle": "Server nicht erreichbar",
"@connectionIssueTitle": {
@@ -49,7 +48,6 @@
"token": "Token",
"usernameOrEmail": "Benutzername oder EMail",
"password": "Passwort",
"signInWithApiKey": "Mit API-Schlüssel anmelden",
"signInWithToken": "Mit Token anmelden",
"connectToServer": "Mit Server verbinden",
"enterServerAddress": "Gib die Adresse deines Open-WebUI-Servers ein, um zu beginnen",
@@ -118,8 +116,6 @@
"voicePromptTapStart": "Tippe auf \"Starten\", um zu beginnen",
"voiceActionStop": "Stopp",
"voiceActionStart": "Starten",
"messageInputLabel": "Nachrichteneingabe",
"messageInputHint": "Nachricht eingeben",
"messageHintText": "Frag Conduit",
"stopGenerating": "Generierung stoppen",
"codeCopiedToClipboard": "Code in die Zwischenablage kopiert.",
@@ -128,7 +124,6 @@
"file": "Datei",
"photo": "Foto",
"camera": "Kamera",
"pasteFromClipboard": "Einfügen",
"pasteImage": "Bild einfügen",
"apiUnavailable": "API-Dienst nicht verfügbar",
"unableToLoadImage": "Bild kann nicht geladen werden",
@@ -229,7 +224,6 @@
"noConversationsYet": "Noch keine Unterhaltungen",
"usernameOrEmailHint": "Gib deinen Benutzernamen oder deine EMail ein",
"passwordHint": "Gib dein Passwort ein",
"enterApiKey": "Gib deinen API-Schlüssel ein",
"enterToken": "Gib dein JWT-Token ein",
"tokenHint": "Hole das JWT-Token aus den OpenWebUI-Einstellungen. API-Schlüssel (sk-...) werden für Streaming nicht unterstützt.",
"apiKeyNotSupported": "API-Schlüssel (sk-...) werden nicht unterstützt. Bitte verwende stattdessen ein JWT-Token.",
@@ -247,7 +241,6 @@
"@allowSelfSignedCertificatesDescription": {
"description": "Hilfetext, der die Risiken beim Aktivieren des Schalters für selbstsignierte Zertifikate erklärt."
},
"headerNameEmpty": "Header-Name darf nicht leer sein",
"headerNameTooLong": "Header-Name zu lang (max. 64 Zeichen)",
"headerNameInvalidChars": "Ungültiger Header-Name. Verwende nur Buchstaben, Zahlen und diese Zeichen: !#$&-^_`|~",
"headerNameReserved": "Reservierten Header \"{key}\" kann nicht überschrieben werden",
@@ -258,7 +251,6 @@
}
}
},
"headerValueEmpty": "Header-Wert darf nicht leer sein",
"headerValueTooLong": "Header-Wert zu lang (max. 1024 Zeichen)",
"headerValueInvalidChars": "Header-Wert enthält ungültige Zeichen. Nur druckbare ASCII-Zeichen verwenden.",
"headerValueUnsafe": "Header-Wert scheint potenziell unsicheren Inhalt zu enthalten",
@@ -787,12 +779,9 @@
}
}
},
"noteTitle": "Notiz-Titel",
"writeNote": "Schreibe etwas...",
"noteSaved": "Notiz gespeichert",
"saving": "Speichern...",
"saved": "Gespeichert",
"unsavedChanges": "Ungespeicherte Änderungen",
"noteCopiedToClipboard": "Notiz in Zwischenablage kopiert",
"generateTitle": "Titel generieren",
"generatingTitle": "Titel wird generiert...",
@@ -815,15 +804,6 @@
"previous7Days": "Letzte 7 Tage",
"previous30Days": "Letzte 30 Tage",
"older": "Älter",
"tapToExpand": "Tippen zum Erweitern",
"byAuthor": "Von {name}",
"@byAuthor": {
"placeholders": {
"name": {
"type": "String"
}
}
},
"wordCount": "{count} Wörter",
"@wordCount": {
"placeholders": {
@@ -858,17 +838,11 @@
}
}
},
"widgetAskConduit": "Conduit fragen",
"widgetCamera": "Kamera",
"widgetPhotos": "Fotos",
"widgetClipboard": "Zwischenablage",
"widgetDescription": "Schnellzugriff auf den Conduit-Chat mit Kamera, Fotos und Zwischenablage-Verknüpfungen",
"sso": "SSO",
"ssoDescription": "Mit dem Identitätsanbieter Ihrer Organisation anmelden",
"signInWithSso": "Mit SSO anmelden",
"ssoAuthenticating": "Authentifizierung...",
"ssoAuthFailed": "SSO-Authentifizierung fehlgeschlagen",
"ssoTokenNotFound": "Authentifizierungstoken vom SSO-Anbieter konnte nicht abgerufen werden",
"ssoLoadingLogin": "Anmeldeseite wird geladen...",
"ldap": "LDAP",
"ldapDescription": "Mit Ihren LDAP-Verzeichnis-Anmeldedaten anmelden",

View File

@@ -20,10 +20,6 @@
"@loadingProfile": {
"description": "Progress message while fetching profile data."
},
"unableToLoadProfile": "Unable to load profile",
"@unableToLoadProfile": {
"description": "Error title shown when profile request fails."
},
"pleaseCheckConnection": "Please check your connection and try again",
"connectionIssueTitle": "Can't reach your server",
"@connectionIssueTitle": {
@@ -228,10 +224,6 @@
"@password": {
"description": "Label for password input field."
},
"signInWithApiKey": "Sign in with API Key",
"@signInWithApiKey": {
"description": "Alternative sign-in method using an API key."
},
"signInWithToken": "Sign in with Token",
"@signInWithToken": {
"description": "Alternative sign-in method using a JWT token."
@@ -562,14 +554,6 @@
"@voiceCallErrorHelp": {
"description": "Guidance shown when the voice call encounters an error."
},
"messageInputLabel": "Message input",
"@messageInputLabel": {
"description": "Accessibility label for the message input."
},
"messageInputHint": "Type your message",
"@messageInputHint": {
"description": "Hint shown in the message input field."
},
"messageHintText": "Ask Conduit",
"@messageHintText": {
"description": "Short placeholder text in the message input."
@@ -606,10 +590,6 @@
"@camera": {
"description": "Camera source label."
},
"pasteFromClipboard": "Paste",
"@pasteFromClipboard": {
"description": "Action label to paste images or files from the clipboard."
},
"pasteImage": "Paste Image",
"@pasteImage": {
"description": "Context menu action to paste an image from the clipboard."
@@ -1086,10 +1066,6 @@
"@passwordHint": {
"description": "Hint text for password input."
},
"enterApiKey": "Enter your API key",
"@enterApiKey": {
"description": "Hint text for API key input."
},
"enterToken": "Enter your JWT token",
"@enterToken": {
"description": "Hint text for JWT token input."
@@ -1134,10 +1110,6 @@
"@allowSelfSignedCertificatesDescription": {
"description": "Helper text clarifying the risks of enabling the self-signed certificate toggle."
},
"headerNameEmpty": "Header name cannot be empty",
"@headerNameEmpty": {
"description": "Validation message for empty header name."
},
"headerNameTooLong": "Header name too long (max 64 characters)",
"@headerNameTooLong": {
"description": "Validation message for header name length."
@@ -1155,10 +1127,6 @@
}
}
},
"headerValueEmpty": "Header value cannot be empty",
"@headerValueEmpty": {
"description": "Validation message for empty header value."
},
"headerValueTooLong": "Header value too long (max 1024 characters)",
"@headerValueTooLong": {
"description": "Validation message for header value length."
@@ -1723,18 +1691,10 @@
}
}
},
"noteTitle": "Note title",
"@noteTitle": {
"description": "Hint text for note title input field."
},
"writeNote": "Write something...",
"@writeNote": {
"description": "Hint text for note content input field."
},
"noteSaved": "Note saved",
"@noteSaved": {
"description": "Confirmation message when note is saved."
},
"saving": "Saving...",
"@saving": {
"description": "Status text while saving."
@@ -1743,10 +1703,6 @@
"@saved": {
"description": "Status text when content is saved."
},
"unsavedChanges": "Unsaved changes",
"@unsavedChanges": {
"description": "Status text when there are unsaved changes."
},
"noteCopiedToClipboard": "Note copied to clipboard",
"@noteCopiedToClipboard": {
"description": "Confirmation message when note content is copied to clipboard."
@@ -1835,20 +1791,6 @@
"@older": {
"description": "Time range label for items older than 30 days."
},
"tapToExpand": "Tap to expand",
"@tapToExpand": {
"description": "Hint text shown on collapsed sections."
},
"byAuthor": "By {name}",
"@byAuthor": {
"description": "Attribution text showing the note author.",
"placeholders": {
"name": {
"type": "String",
"example": "John"
}
}
},
"wordCount": "{count} words",
"@wordCount": {
"description": "Status bar text showing word count.",
@@ -1869,26 +1811,6 @@
}
}
},
"widgetAskConduit": "Ask Conduit",
"@widgetAskConduit": {
"description": "Main button text on the home screen widget."
},
"widgetCamera": "Camera",
"@widgetCamera": {
"description": "Camera button label on the home screen widget."
},
"widgetPhotos": "Photos",
"@widgetPhotos": {
"description": "Photos button label on the home screen widget."
},
"widgetClipboard": "Clipboard",
"@widgetClipboard": {
"description": "Clipboard button label on the home screen widget."
},
"widgetDescription": "Quick access to Conduit chat with camera, photos, and clipboard shortcuts",
"@widgetDescription": {
"description": "Description shown in the widget picker when adding the widget."
},
"mermaidPreviewUnavailable": "Mermaid preview is not available on this platform.",
"@mermaidPreviewUnavailable": {
"description": "Shown when Mermaid diagrams cannot be rendered on the current platform."
@@ -1945,10 +1867,6 @@
"@ssoAuthFailed": {
"description": "Error message when SSO authentication fails."
},
"ssoTokenNotFound": "Could not retrieve authentication token from SSO provider",
"@ssoTokenNotFound": {
"description": "Error message when SSO token cannot be captured."
},
"ssoLoadingLogin": "Loading login page...",
"@ssoLoadingLogin": {
"description": "Loading message while SSO login page loads."

View File

@@ -5,7 +5,6 @@
"back": "Atrás",
"you": "Tú",
"loadingProfile": "Cargando perfil...",
"unableToLoadProfile": "No se puede cargar el perfil",
"pleaseCheckConnection": "Por favor, verifica tu conexión e inténtalo de nuevo",
"connectionIssueTitle": "No se puede conectar al servidor",
"@connectionIssueTitle": {
@@ -49,7 +48,6 @@
"token": "Token",
"usernameOrEmail": "Usuario o correo electrónico",
"password": "Contraseña",
"signInWithApiKey": "Iniciar sesión con clave API",
"signInWithToken": "Iniciar sesión con token",
"connectToServer": "Conectar al servidor",
"enterServerAddress": "Ingresa la dirección de tu servidor Open-WebUI para comenzar",
@@ -118,8 +116,6 @@
"voicePromptTapStart": "Toca Iniciar para comenzar",
"voiceActionStop": "Detener",
"voiceActionStart": "Iniciar",
"messageInputLabel": "Entrada de mensaje",
"messageInputHint": "Escribe tu mensaje",
"messageHintText": "Pregunta a Conduit",
"stopGenerating": "Detener generación",
"codeCopiedToClipboard": "Código copiado al portapapeles.",
@@ -128,7 +124,6 @@
"file": "Archivo",
"photo": "Foto",
"camera": "Cámara",
"pasteFromClipboard": "Pegar",
"pasteImage": "Pegar imagen",
"apiUnavailable": "Servicio de API no disponible",
"unableToLoadImage": "No se puede cargar la imagen",
@@ -229,7 +224,6 @@
"noConversationsYet": "Aún no hay conversaciones",
"usernameOrEmailHint": "Ingresa tu usuario o correo electrónico",
"passwordHint": "Ingresa tu contraseña",
"enterApiKey": "Ingresa tu clave API",
"enterToken": "Ingresa tu token JWT",
"tokenHint": "Obtén el token JWT desde la configuración de OpenWebUI. Las claves API (sk-...) no son compatibles con streaming.",
"apiKeyNotSupported": "Las claves API (sk-...) no son compatibles. Por favor usa un token JWT en su lugar.",
@@ -247,7 +241,6 @@
"@allowSelfSignedCertificatesDescription": {
"description": "Texto de ayuda que aclara los riesgos de habilitar el interruptor de certificados autofirmados."
},
"headerNameEmpty": "El nombre del encabezado no puede estar vacío",
"headerNameTooLong": "Nombre de encabezado demasiado largo (máx. 64 caracteres)",
"headerNameInvalidChars": "Nombre de encabezado inválido. Usa solo letras, números y estos símbolos: !#$&-^_`|~",
"headerNameReserved": "No se puede sobrescribir el encabezado reservado \"{key}\"",
@@ -258,7 +251,6 @@
}
}
},
"headerValueEmpty": "El valor del encabezado no puede estar vacío",
"headerValueTooLong": "Valor de encabezado demasiado largo (máx. 1024 caracteres)",
"headerValueInvalidChars": "El valor del encabezado contiene caracteres inválidos. Usa solo ASCII imprimible.",
"headerValueUnsafe": "El valor del encabezado parece contener contenido potencialmente inseguro",
@@ -787,12 +779,9 @@
}
}
},
"noteTitle": "Título de la nota",
"writeNote": "Escribe algo...",
"noteSaved": "Nota guardada",
"saving": "Guardando...",
"saved": "Guardado",
"unsavedChanges": "Cambios sin guardar",
"noteCopiedToClipboard": "Nota copiada al portapapeles",
"generateTitle": "Generar título",
"generatingTitle": "Generando título...",
@@ -815,15 +804,6 @@
"previous7Days": "Últimos 7 días",
"previous30Days": "Últimos 30 días",
"older": "Más antiguo",
"tapToExpand": "Toca para expandir",
"byAuthor": "Por {name}",
"@byAuthor": {
"placeholders": {
"name": {
"type": "String"
}
}
},
"wordCount": "{count} palabras",
"@wordCount": {
"placeholders": {
@@ -858,17 +838,11 @@
}
}
},
"widgetAskConduit": "Preguntar a Conduit",
"widgetCamera": "Cámara",
"widgetPhotos": "Fotos",
"widgetClipboard": "Portapapeles",
"widgetDescription": "Acceso rápido al chat de Conduit con cámara, fotos y atajos del portapapeles",
"sso": "SSO",
"ssoDescription": "Iniciar sesión con el proveedor de identidad de su organización",
"signInWithSso": "Iniciar sesión con SSO",
"ssoAuthenticating": "Autenticando...",
"ssoAuthFailed": "Error de autenticación SSO",
"ssoTokenNotFound": "No se pudo obtener el token de autenticación del proveedor SSO",
"ssoLoadingLogin": "Cargando página de inicio de sesión...",
"ldap": "LDAP",
"ldapDescription": "Iniciar sesión con sus credenciales de directorio LDAP",

View File

@@ -5,7 +5,6 @@
"back": "Retour",
"you": "Vous",
"loadingProfile": "Chargement du profil...",
"unableToLoadProfile": "Impossible de charger le profil",
"pleaseCheckConnection": "Veuillez vérifier votre connexion et réessayer",
"connectionIssueTitle": "Impossible d'atteindre votre serveur",
"@connectionIssueTitle": {
@@ -49,7 +48,6 @@
"token": "Jeton",
"usernameOrEmail": "Nom d'utilisateur ou email",
"password": "Mot de passe",
"signInWithApiKey": "Se connecter avec une clé API",
"signInWithToken": "Se connecter avec un jeton",
"connectToServer": "Se connecter au serveur",
"enterServerAddress": "Saisissez l'adresse de votre serveur Open-WebUI pour commencer",
@@ -118,8 +116,6 @@
"voicePromptTapStart": "Appuyez sur \"Démarrer\" pour commencer",
"voiceActionStop": "Arrêter",
"voiceActionStart": "Démarrer",
"messageInputLabel": "Saisie du message",
"messageInputHint": "Saisissez votre message",
"messageHintText": "Demander à Conduit",
"stopGenerating": "Arrêter la génération",
"codeCopiedToClipboard": "Code copié dans le presse-papiers.",
@@ -128,7 +124,6 @@
"file": "Fichier",
"photo": "Photo",
"camera": "Appareil photo",
"pasteFromClipboard": "Coller",
"pasteImage": "Coller l'image",
"apiUnavailable": "Service API indisponible",
"unableToLoadImage": "Impossible de charger l'image",
@@ -229,7 +224,6 @@
"noConversationsYet": "Aucune conversation pour l'instant",
"usernameOrEmailHint": "Entrez votre nom d'utilisateur ou email",
"passwordHint": "Entrez votre mot de passe",
"enterApiKey": "Entrez votre clé API",
"enterToken": "Entrez votre jeton JWT",
"tokenHint": "Obtenez le jeton JWT dans les paramètres d'OpenWebUI. Les clés API (sk-...) ne sont pas prises en charge pour le streaming.",
"apiKeyNotSupported": "Les clés API (sk-...) ne sont pas prises en charge. Veuillez utiliser un jeton JWT à la place.",
@@ -247,7 +241,6 @@
"@allowSelfSignedCertificatesDescription": {
"description": "Texte d'aide expliquant les risques liés à l'activation de l'option de certificat auto-signé."
},
"headerNameEmpty": "Le nom de l'en-tête ne peut pas être vide",
"headerNameTooLong": "Nom d'en-tête trop long (max 64 caractères)",
"headerNameInvalidChars": "Nom d'en-tête invalide. Utilisez uniquement des lettres, des chiffres et ces symboles : !#$&-^_`|~",
"headerNameReserved": "Impossible d'écraser l'en-tête réservé « {key} »",
@@ -258,7 +251,6 @@
}
}
},
"headerValueEmpty": "La valeur de l'en-tête ne peut pas être vide",
"headerValueTooLong": "Valeur d'en-tête trop longue (max 1024 caractères)",
"headerValueInvalidChars": "La valeur de l'en-tête contient des caractères invalides. Utilisez uniquement des caractères ASCII imprimables.",
"headerValueUnsafe": "La valeur de l'en-tête semble contenir du contenu potentiellement dangereux",
@@ -787,12 +779,9 @@
}
}
},
"noteTitle": "Titre de la note",
"writeNote": "Écrivez quelque chose...",
"noteSaved": "Note enregistrée",
"saving": "Enregistrement...",
"saved": "Enregistré",
"unsavedChanges": "Modifications non enregistrées",
"noteCopiedToClipboard": "Note copiée dans le presse-papiers",
"generateTitle": "Générer un titre",
"generatingTitle": "Génération du titre...",
@@ -815,15 +804,6 @@
"previous7Days": "7 derniers jours",
"previous30Days": "30 derniers jours",
"older": "Plus ancien",
"tapToExpand": "Appuyez pour développer",
"byAuthor": "Par {name}",
"@byAuthor": {
"placeholders": {
"name": {
"type": "String"
}
}
},
"wordCount": "{count} mots",
"@wordCount": {
"placeholders": {
@@ -858,17 +838,11 @@
}
}
},
"widgetAskConduit": "Demander à Conduit",
"widgetCamera": "Appareil photo",
"widgetPhotos": "Photos",
"widgetClipboard": "Presse-papiers",
"widgetDescription": "Accès rapide au chat Conduit avec appareil photo, photos et raccourcis du presse-papiers",
"sso": "SSO",
"ssoDescription": "Connectez-vous avec le fournisseur d'identité de votre organisation",
"signInWithSso": "Se connecter avec SSO",
"ssoAuthenticating": "Authentification...",
"ssoAuthFailed": "Échec de l'authentification SSO",
"ssoTokenNotFound": "Impossible de récupérer le jeton d'authentification du fournisseur SSO",
"ssoLoadingLogin": "Chargement de la page de connexion...",
"ldap": "LDAP",
"ldapDescription": "Connectez-vous avec vos identifiants d'annuaire LDAP",

View File

@@ -5,7 +5,6 @@
"back": "Indietro",
"you": "Tu",
"loadingProfile": "Caricamento profilo...",
"unableToLoadProfile": "Impossibile caricare il profilo",
"pleaseCheckConnection": "Controlla la connessione e riprova",
"connectionIssueTitle": "Impossibile raggiungere il server",
"@connectionIssueTitle": {
@@ -49,7 +48,6 @@
"token": "Token",
"usernameOrEmail": "Username o email",
"password": "Password",
"signInWithApiKey": "Accedi con chiave API",
"signInWithToken": "Accedi con token",
"connectToServer": "Connetti al server",
"enterServerAddress": "Inserisci l'indirizzo del server Open-WebUI per iniziare",
@@ -118,8 +116,6 @@
"voicePromptTapStart": "Tocca \"Avvia\" per iniziare",
"voiceActionStop": "Stop",
"voiceActionStart": "Avvia",
"messageInputLabel": "Input messaggio",
"messageInputHint": "Scrivi il tuo messaggio",
"messageHintText": "Chiedi a Conduit",
"stopGenerating": "Interrompi generazione",
"codeCopiedToClipboard": "Codice copiato negli appunti.",
@@ -128,7 +124,6 @@
"file": "File",
"photo": "Foto",
"camera": "Fotocamera",
"pasteFromClipboard": "Incolla",
"pasteImage": "Incolla immagine",
"apiUnavailable": "Servizio API non disponibile",
"unableToLoadImage": "Impossibile caricare l'immagine",
@@ -229,7 +224,6 @@
"noConversationsYet": "Ancora nessuna conversazione",
"usernameOrEmailHint": "Inserisci il tuo username o email",
"passwordHint": "Inserisci la password",
"enterApiKey": "Inserisci la tua chiave API",
"enterToken": "Inserisci il tuo token JWT",
"tokenHint": "Ottieni il token JWT dalle impostazioni di OpenWebUI. Le chiavi API (sk-...) non sono supportate per lo streaming.",
"apiKeyNotSupported": "Le chiavi API (sk-...) non sono supportate. Per favore usa un token JWT.",
@@ -247,7 +241,6 @@
"@allowSelfSignedCertificatesDescription": {
"description": "Testo di supporto che chiarisce i rischi dell'attivazione dell'opzione per certificati autofirmati."
},
"headerNameEmpty": "Il nome header non può essere vuoto",
"headerNameTooLong": "Nome header troppo lungo (max 64 caratteri)",
"headerNameInvalidChars": "Nome header non valido. Usa solo lettere, numeri e questi simboli: !#$&-^_`|~",
"headerNameReserved": "Impossibile sovrascrivere l'header riservato \"{key}\"",
@@ -258,7 +251,6 @@
}
}
},
"headerValueEmpty": "Il valore dell'header non può essere vuoto",
"headerValueTooLong": "Valore header troppo lungo (max 1024 caratteri)",
"headerValueInvalidChars": "Il valore dell'header contiene caratteri non validi. Usa solo ASCII stampabile.",
"headerValueUnsafe": "Il valore dell'header sembra contenere contenuti potenzialmente non sicuri",
@@ -787,12 +779,9 @@
}
}
},
"noteTitle": "Titolo della nota",
"writeNote": "Scrivi qualcosa...",
"noteSaved": "Nota salvata",
"saving": "Salvataggio...",
"saved": "Salvato",
"unsavedChanges": "Modifiche non salvate",
"noteCopiedToClipboard": "Nota copiata negli appunti",
"generateTitle": "Genera titolo",
"generatingTitle": "Generazione titolo...",
@@ -815,15 +804,6 @@
"previous7Days": "Ultimi 7 giorni",
"previous30Days": "Ultimi 30 giorni",
"older": "Più vecchio",
"tapToExpand": "Tocca per espandere",
"byAuthor": "Di {name}",
"@byAuthor": {
"placeholders": {
"name": {
"type": "String"
}
}
},
"wordCount": "{count} parole",
"@wordCount": {
"placeholders": {
@@ -858,17 +838,11 @@
}
}
},
"widgetAskConduit": "Chiedi a Conduit",
"widgetCamera": "Fotocamera",
"widgetPhotos": "Foto",
"widgetClipboard": "Appunti",
"widgetDescription": "Accesso rapido alla chat di Conduit con fotocamera, foto e scorciatoie degli appunti",
"sso": "SSO",
"ssoDescription": "Accedi con il provider di identità della tua organizzazione",
"signInWithSso": "Accedi con SSO",
"ssoAuthenticating": "Autenticazione...",
"ssoAuthFailed": "Autenticazione SSO fallita",
"ssoTokenNotFound": "Impossibile recuperare il token di autenticazione dal provider SSO",
"ssoLoadingLogin": "Caricamento pagina di accesso...",
"ldap": "LDAP",
"ldapDescription": "Accedi con le credenziali della directory LDAP",

View File

@@ -5,7 +5,6 @@
"back": "뒤로",
"you": "프로필",
"loadingProfile": "프로필 로딩 중...",
"unableToLoadProfile": "프로필을 불러올 수 없습니다",
"pleaseCheckConnection": "연결을 확인하고 다시 시도해주세요",
"connectionIssueTitle": "서버에 연결할 수 없습니다",
"connectionIssueSubtitle": "다시 연결하거나 로그아웃하여 다른 서버를 선택하세요.",
@@ -90,7 +89,6 @@
"token": "토큰",
"usernameOrEmail": "사용자 이름 또는 이메일",
"password": "비밀번호",
"signInWithApiKey": "API 키로 로그인",
"signInWithToken": "토큰으로 로그인",
"connectToServer": "서버 연결",
"enterServerAddress": "시작하려면 Open-WebUI 서버 주소를 입력하세요",
@@ -181,8 +179,6 @@
"voiceCallSpeaking": "말하는 중",
"voiceCallDisconnected": "연결 끊김",
"voiceCallErrorHelp": "다음을 확인하세요:\n• 마이크 권한이 부여되었는지\n• 기기에서 음성 인식이 사용 가능한지\n• 서버에 연결되어 있는지",
"messageInputLabel": "메시지 입력",
"messageInputHint": "메시지를 입력하세요",
"messageHintText": "Conduit에게 물어보기",
"stopGenerating": "생성 중지",
"send": "전송",
@@ -192,7 +188,6 @@
"chooseDifferentFile": "다른 파일 선택",
"photo": "사진",
"camera": "카메라",
"pasteFromClipboard": "붙여넣기",
"pasteImage": "이미지 붙여넣기",
"apiUnavailable": "API 서비스를 사용할 수 없습니다",
"unableToLoadImage": "이미지를 불러올 수 없습니다",
@@ -339,7 +334,6 @@
"noConversationsYet": "아직 대화가 없습니다",
"usernameOrEmailHint": "사용자 이름 또는 이메일을 입력하세요",
"passwordHint": "비밀번호를 입력하세요",
"enterApiKey": "API 키를 입력하세요",
"enterToken": "JWT 토큰을 입력하세요",
"tokenHint": "OpenWebUI 설정에서 JWT 토큰을 가져오세요. API 키(sk-...)는 스트리밍에 지원되지 않습니다.",
"apiKeyNotSupported": "API 키(sk-...)는 지원되지 않습니다. JWT 토큰을 사용하세요.",
@@ -351,7 +345,6 @@
"customHeadersDescription": "인증, API 키 또는 특수 서버 요구사항을 위한 사용자 정의 HTTP 헤더를 추가하세요.",
"allowSelfSignedCertificates": "자체 서명된 인증서 신뢰",
"allowSelfSignedCertificatesDescription": "자체 서명된 경우에도 이 서버의 TLS 인증서를 수락합니다. 신뢰하는 서버에만 사용하세요.",
"headerNameEmpty": "헤더 이름은 비어 있을 수 없습니다",
"headerNameTooLong": "헤더 이름이 너무 깁니다 (최대 64자)",
"headerNameInvalidChars": "잘못된 헤더 이름입니다. 문자, 숫자 및 다음 기호만 사용하세요: !#$&-^_`|~",
"headerNameReserved": "예약된 헤더 \"{key}\"를 재정의할 수 없습니다",
@@ -363,7 +356,6 @@
}
}
},
"headerValueEmpty": "헤더 값은 비어 있을 수 없습니다",
"headerValueTooLong": "헤더 값이 너무 깁니다 (최대 1024자)",
"headerValueInvalidChars": "헤더 값에 잘못된 문자가 포함되어 있습니다. 인쇄 가능한 ASCII만 사용하세요.",
"headerValueUnsafe": "헤더 값에 잠재적으로 안전하지 않은 콘텐츠가 포함된 것으로 보입니다",
@@ -565,12 +557,9 @@
}
}
},
"noteTitle": "노트 제목",
"writeNote": "무언가 작성하세요...",
"noteSaved": "노트 저장됨",
"saving": "저장 중...",
"saved": "저장됨",
"unsavedChanges": "저장되지 않은 변경사항",
"noteCopiedToClipboard": "노트가 클립보드에 복사됨",
"generateTitle": "제목 생성",
"generatingTitle": "제목 생성 중...",
@@ -593,15 +582,6 @@
"previous7Days": "지난 7일",
"previous30Days": "지난 30일",
"older": "이전",
"tapToExpand": "탭하여 확장",
"byAuthor": "{name} 작성",
"@byAuthor": {
"placeholders": {
"name": {
"type": "String"
}
}
},
"wordCount": "{count}단어",
"@wordCount": {
"placeholders": {
@@ -636,17 +616,11 @@
}
}
},
"widgetAskConduit": "Conduit에게 묻기",
"widgetCamera": "카메라",
"widgetPhotos": "사진",
"widgetClipboard": "클립보드",
"widgetDescription": "카메라, 사진 및 클립보드 바로가기로 Conduit 채팅에 빠르게 액세스",
"sso": "SSO",
"ssoDescription": "조직의 ID 공급자로 로그인",
"signInWithSso": "SSO로 로그인",
"ssoAuthenticating": "인증 중...",
"ssoAuthFailed": "SSO 인증 실패",
"ssoTokenNotFound": "SSO 공급자에서 인증 토큰을 검색할 수 없습니다",
"ssoLoadingLogin": "로그인 페이지 로딩 중...",
"ldap": "LDAP",
"ldapDescription": "LDAP 디렉토리 자격 증명으로 로그인",

View File

@@ -5,7 +5,6 @@
"back": "Terug",
"you": "Jij",
"loadingProfile": "Profiel laden...",
"unableToLoadProfile": "Kan profiel niet laden",
"pleaseCheckConnection": "Controleer je verbinding en probeer het opnieuw",
"connectionIssueTitle": "Kan je server niet bereiken",
"@connectionIssueTitle": {
@@ -49,7 +48,6 @@
"token": "Token",
"usernameOrEmail": "Gebruikersnaam of e-mail",
"password": "Wachtwoord",
"signInWithApiKey": "Inloggen met API-sleutel",
"signInWithToken": "Inloggen met token",
"connectToServer": "Verbinden met server",
"enterServerAddress": "Voer je Open-WebUI serveradres in om te beginnen",
@@ -118,8 +116,6 @@
"voicePromptTapStart": "Tik op Start om te beginnen",
"voiceActionStop": "Stop",
"voiceActionStart": "Start",
"messageInputLabel": "Berichtinvoer",
"messageInputHint": "Typ je bericht",
"messageHintText": "Vraag Conduit",
"stopGenerating": "Stop met genereren",
"codeCopiedToClipboard": "Code gekopieerd naar klembord.",
@@ -128,7 +124,6 @@
"file": "Bestand",
"photo": "Foto",
"camera": "Camera",
"pasteFromClipboard": "Plakken",
"pasteImage": "Afbeelding plakken",
"apiUnavailable": "API-service niet beschikbaar",
"unableToLoadImage": "Kan afbeelding niet laden",
@@ -229,7 +224,6 @@
"noConversationsYet": "Nog geen gesprekken",
"usernameOrEmailHint": "Voer je gebruikersnaam of e-mail in",
"passwordHint": "Voer je wachtwoord in",
"enterApiKey": "Voer je API-sleutel in",
"enterToken": "Voer je JWT-token in",
"tokenHint": "Haal het JWT-token uit de OpenWebUI-instellingen. API-sleutels (sk-...) worden niet ondersteund voor streaming.",
"apiKeyNotSupported": "API-sleutels (sk-...) worden niet ondersteund. Gebruik in plaats daarvan een JWT-token.",
@@ -247,7 +241,6 @@
"@allowSelfSignedCertificatesDescription": {
"description": "Hulptekst die de risico's van het inschakelen van de schakelaar voor zelfondertekende certificaten verduidelijkt."
},
"headerNameEmpty": "Header-naam mag niet leeg zijn",
"headerNameTooLong": "Header-naam te lang (max 64 tekens)",
"headerNameInvalidChars": "Ongeldige header-naam. Gebruik alleen letters, cijfers en deze symbolen: !#$&-^_`|~",
"headerNameReserved": "Kan gereserveerde header '{key}' niet overschrijven",
@@ -258,7 +251,6 @@
}
}
},
"headerValueEmpty": "Header-waarde mag niet leeg zijn",
"headerValueTooLong": "Header-waarde te lang (max 1024 tekens)",
"headerValueInvalidChars": "Header-waarde bevat ongeldige tekens. Gebruik alleen afdrukbare ASCII.",
"headerValueUnsafe": "Header-waarde lijkt mogelijk onveilige inhoud te bevatten",
@@ -787,12 +779,9 @@
}
}
},
"noteTitle": "Notitietitel",
"writeNote": "Schrijf iets...",
"noteSaved": "Notitie opgeslagen",
"saving": "Opslaan...",
"saved": "Opgeslagen",
"unsavedChanges": "Niet-opgeslagen wijzigingen",
"noteCopiedToClipboard": "Notitie gekopieerd naar klembord",
"generateTitle": "Titel genereren",
"generatingTitle": "Titel genereren...",
@@ -815,15 +804,6 @@
"previous7Days": "Afgelopen 7 dagen",
"previous30Days": "Afgelopen 30 dagen",
"older": "Ouder",
"tapToExpand": "Tik om uit te vouwen",
"byAuthor": "Door {name}",
"@byAuthor": {
"placeholders": {
"name": {
"type": "String"
}
}
},
"wordCount": "{count} woorden",
"@wordCount": {
"placeholders": {
@@ -858,17 +838,11 @@
}
}
},
"widgetAskConduit": "Vraag Conduit",
"widgetCamera": "Camera",
"widgetPhotos": "Foto's",
"widgetClipboard": "Klembord",
"widgetDescription": "Snelle toegang tot Conduit-chat met camera, foto's en klembordsnelkoppelingen",
"sso": "SSO",
"ssoDescription": "Aanmelden met de identiteitsprovider van uw organisatie",
"signInWithSso": "Aanmelden met SSO",
"ssoAuthenticating": "Authenticeren...",
"ssoAuthFailed": "SSO-authenticatie mislukt",
"ssoTokenNotFound": "Kan authenticatietoken niet ophalen van SSO-provider",
"ssoLoadingLogin": "Inlogpagina laden...",
"ldap": "LDAP",
"ldapDescription": "Aanmelden met uw LDAP-directorygegevens",

View File

@@ -5,7 +5,6 @@
"back": "Назад",
"you": "Вы",
"loadingProfile": "Загрузка профиля...",
"unableToLoadProfile": "Не удалось загрузить профиль",
"pleaseCheckConnection": "Пожалуйста, проверьте соединение и повторите попытку",
"connectionIssueTitle": "Не удается подключиться к серверу",
"@connectionIssueTitle": {
@@ -49,7 +48,6 @@
"token": "Токен",
"usernameOrEmail": "Имя пользователя или email",
"password": "Пароль",
"signInWithApiKey": "Войти с помощью API-ключа",
"signInWithToken": "Войти с помощью токена",
"connectToServer": "Подключиться к серверу",
"enterServerAddress": "Введите адрес вашего сервера Open-WebUI для начала",
@@ -118,8 +116,6 @@
"voicePromptTapStart": "Нажмите «Начать» для запуска",
"voiceActionStop": "Стоп",
"voiceActionStart": "Начать",
"messageInputLabel": "Ввод сообщения",
"messageInputHint": "Введите ваше сообщение",
"messageHintText": "Спросите Conduit",
"stopGenerating": "Остановить генерацию",
"codeCopiedToClipboard": "Код скопирован в буфер обмена.",
@@ -128,7 +124,6 @@
"file": "Файл",
"photo": "Фото",
"camera": "Камера",
"pasteFromClipboard": "Вставить",
"pasteImage": "Вставить изображение",
"apiUnavailable": "Служба API недоступна",
"unableToLoadImage": "Не удалось загрузить изображение",
@@ -229,7 +224,6 @@
"noConversationsYet": "Пока нет разговоров",
"usernameOrEmailHint": "Введите ваше имя пользователя или email",
"passwordHint": "Введите ваш пароль",
"enterApiKey": "Введите ваш API-ключ",
"enterToken": "Введите ваш JWT-токен",
"tokenHint": "Получите JWT-токен в настройках OpenWebUI. API-ключи (sk-...) не поддерживаются для потоковой передачи.",
"apiKeyNotSupported": "API-ключи (sk-...) не поддерживаются. Пожалуйста, используйте JWT-токен.",
@@ -247,7 +241,6 @@
"@allowSelfSignedCertificatesDescription": {
"description": "Вспомогательный текст, разъясняющий риски включения переключателя самоподписанных сертификатов."
},
"headerNameEmpty": "Имя заголовка не может быть пустым",
"headerNameTooLong": "Имя заголовка слишком длинное (максимум 64 символа)",
"headerNameInvalidChars": "Недопустимое имя заголовка. Используйте только буквы, цифры и эти символы: !#$&-^_`|~",
"headerNameReserved": "Невозможно переопределить зарезервированный заголовок «{key}»",
@@ -258,7 +251,6 @@
}
}
},
"headerValueEmpty": "Значение заголовка не может быть пустым",
"headerValueTooLong": "Значение заголовка слишком длинное (максимум 1024 символа)",
"headerValueInvalidChars": "Значение заголовка содержит недопустимые символы. Используйте только печатаемые ASCII.",
"headerValueUnsafe": "Значение заголовка содержит потенциально небезопасное содержимое",
@@ -787,12 +779,9 @@
}
}
},
"noteTitle": "Название заметки",
"writeNote": "Напишите что-нибудь...",
"noteSaved": "Заметка сохранена",
"saving": "Сохранение...",
"saved": "Сохранено",
"unsavedChanges": "Несохранённые изменения",
"noteCopiedToClipboard": "Заметка скопирована в буфер обмена",
"generateTitle": "Сгенерировать название",
"generatingTitle": "Генерация названия...",
@@ -815,15 +804,6 @@
"previous7Days": "Последние 7 дней",
"previous30Days": "Последние 30 дней",
"older": "Старше",
"tapToExpand": "Нажмите для раскрытия",
"byAuthor": "Автор: {name}",
"@byAuthor": {
"placeholders": {
"name": {
"type": "String"
}
}
},
"wordCount": "{count} слов",
"@wordCount": {
"placeholders": {
@@ -858,17 +838,11 @@
}
}
},
"widgetAskConduit": "Спросить Conduit",
"widgetCamera": "Камера",
"widgetPhotos": "Фотографии",
"widgetClipboard": "Буфер обмена",
"widgetDescription": "Быстрый доступ к чату Conduit с камерой, фотографиями и буфером обмена",
"sso": "SSO",
"ssoDescription": "Войдите через провайдера идентификации вашей организации",
"signInWithSso": "Войти через SSO",
"ssoAuthenticating": "Аутентификация...",
"ssoAuthFailed": "Ошибка SSO-аутентификации",
"ssoTokenNotFound": "Не удалось получить токен аутентификации от провайдера SSO",
"ssoLoadingLogin": "Загрузка страницы входа...",
"ldap": "LDAP",
"ldapDescription": "Войдите с учётными данными каталога LDAP",

View File

@@ -5,7 +5,6 @@
"back": "返回",
"you": "你",
"loadingProfile": "加载个人资料中...",
"unableToLoadProfile": "无法加载个人资料",
"pleaseCheckConnection": "请检查您的连接并重试",
"connectionIssueTitle": "无法连接到您的服务器",
"@connectionIssueTitle": {
@@ -49,7 +48,6 @@
"token": "令牌",
"usernameOrEmail": "用户名或电子邮件",
"password": "密码",
"signInWithApiKey": "使用 API 密钥登录",
"signInWithToken": "使用令牌登录",
"connectToServer": "连接到服务器",
"enterServerAddress": "输入您的 Open-WebUI 服务器地址以开始",
@@ -118,8 +116,6 @@
"voicePromptTapStart": "点击开始以开始",
"voiceActionStop": "停止",
"voiceActionStart": "开始",
"messageInputLabel": "消息输入",
"messageInputHint": "输入您的消息",
"messageHintText": "问 Conduit",
"stopGenerating": "停止生成",
"codeCopiedToClipboard": "代码已复制到剪贴板。",
@@ -128,7 +124,6 @@
"file": "文件",
"photo": "照片",
"camera": "相机",
"pasteFromClipboard": "粘贴",
"pasteImage": "粘贴图片",
"apiUnavailable": "API 服务不可用",
"unableToLoadImage": "无法加载图像",
@@ -229,7 +224,6 @@
"noConversationsYet": "尚无对话",
"usernameOrEmailHint": "输入您的用户名或电子邮件",
"passwordHint": "输入您的密码",
"enterApiKey": "输入您的 API 密钥",
"enterToken": "输入您的 JWT 令牌",
"tokenHint": "从 OpenWebUI 设置获取 JWT 令牌。API 密钥 (sk-...) 不支持流式传输。",
"apiKeyNotSupported": "不支持 API 密钥 (sk-...)。请改用 JWT 令牌。",
@@ -247,7 +241,6 @@
"@allowSelfSignedCertificatesDescription": {
"description": "阐明启用自签名证书切换风险的帮助文本。"
},
"headerNameEmpty": "标头名称不能为空",
"headerNameTooLong": "标头名称太长(最多 64 个字符)",
"headerNameInvalidChars": "无效的标头名称。仅使用字母、数字和这些符号:!#$&-^_`|~",
"headerNameReserved": "无法覆盖保留的标头「{key}」",
@@ -258,7 +251,6 @@
}
}
},
"headerValueEmpty": "标头值不能为空",
"headerValueTooLong": "标头值太长(最多 1024 个字符)",
"headerValueInvalidChars": "标头值包含无效字符。仅使用可打印的 ASCII。",
"headerValueUnsafe": "标头值似乎包含潜在的不安全内容",
@@ -787,12 +779,9 @@
}
}
},
"noteTitle": "笔记标题",
"writeNote": "写点什么...",
"noteSaved": "笔记已保存",
"saving": "保存中...",
"saved": "已保存",
"unsavedChanges": "未保存的更改",
"noteCopiedToClipboard": "笔记已复制到剪贴板",
"generateTitle": "生成标题",
"generatingTitle": "正在生成标题...",
@@ -815,15 +804,6 @@
"previous7Days": "过去 7 天",
"previous30Days": "过去 30 天",
"older": "更早",
"tapToExpand": "点击展开",
"byAuthor": "作者:{name}",
"@byAuthor": {
"placeholders": {
"name": {
"type": "String"
}
}
},
"wordCount": "{count} 字",
"@wordCount": {
"placeholders": {
@@ -858,17 +838,11 @@
}
}
},
"widgetAskConduit": "询问 Conduit",
"widgetCamera": "相机",
"widgetPhotos": "照片",
"widgetClipboard": "剪贴板",
"widgetDescription": "快速访问 Conduit 聊天,支持相机、照片和剪贴板快捷方式",
"sso": "SSO",
"ssoDescription": "使用组织的身份提供商登录",
"signInWithSso": "使用 SSO 登录",
"ssoAuthenticating": "正在验证...",
"ssoAuthFailed": "SSO 验证失败",
"ssoTokenNotFound": "无法从 SSO 提供商获取验证令牌",
"ssoLoadingLogin": "正在加载登录页面...",
"ldap": "LDAP",
"ldapDescription": "使用 LDAP 目录凭据登录",

View File

@@ -5,7 +5,6 @@
"back": "返回",
"you": "你",
"loadingProfile": "加載個人資料中...",
"unableToLoadProfile": "無法加載個人資料",
"pleaseCheckConnection": "請檢查您的連接並重試",
"connectionIssueTitle": "無法連接到您的服務器",
"@connectionIssueTitle": {
@@ -49,7 +48,6 @@
"token": "令牌",
"usernameOrEmail": "用戶名或電子郵件",
"password": "密碼",
"signInWithApiKey": "使用 API 密鑰登錄",
"signInWithToken": "使用令牌登錄",
"connectToServer": "連接到服務器",
"enterServerAddress": "輸入您的 Open-WebUI 服務器地址以開始",
@@ -118,8 +116,6 @@
"voicePromptTapStart": "點擊開始以開始",
"voiceActionStop": "停止",
"voiceActionStart": "開始",
"messageInputLabel": "消息輸入",
"messageInputHint": "輸入您的消息",
"messageHintText": "問 Conduit",
"stopGenerating": "停止生成",
"codeCopiedToClipboard": "代碼已複製到剪貼板。",
@@ -128,7 +124,6 @@
"file": "文件",
"photo": "照片",
"camera": "相機",
"pasteFromClipboard": "貼上",
"pasteImage": "貼上圖片",
"apiUnavailable": "API 服務不可用",
"unableToLoadImage": "無法加載圖像",
@@ -229,7 +224,6 @@
"noConversationsYet": "尚無對話",
"usernameOrEmailHint": "輸入您的用戶名或電子郵件",
"passwordHint": "輸入您的密碼",
"enterApiKey": "輸入您的 API 密鑰",
"enterToken": "輸入您的 JWT 令牌",
"tokenHint": "從 OpenWebUI 設定取得 JWT 令牌。API 密鑰 (sk-...) 不支援串流。",
"apiKeyNotSupported": "不支援 API 密鑰 (sk-...)。請改用 JWT 令牌。",
@@ -247,7 +241,6 @@
"@allowSelfSignedCertificatesDescription": {
"description": "阐明启用自签名证书切换风险的帮助文本。"
},
"headerNameEmpty": "標頭名稱不能爲空",
"headerNameTooLong": "標頭名稱太長(最多 64 個字符)",
"headerNameInvalidChars": "無效的標頭名稱。僅使用字母、數字和這些符號:!#$&-^_`|~",
"headerNameReserved": "無法覆蓋保留的標頭「{key}」",
@@ -258,7 +251,6 @@
}
}
},
"headerValueEmpty": "標頭值不能爲空",
"headerValueTooLong": "標頭值太長(最多 1024 個字符)",
"headerValueInvalidChars": "標頭值包含無效字符。僅使用可打印的 ASCII。",
"headerValueUnsafe": "標頭值似乎包含潛在的不安全內容",
@@ -787,12 +779,9 @@
}
}
},
"noteTitle": "筆記標題",
"writeNote": "寫點什麼...",
"noteSaved": "筆記已儲存",
"saving": "儲存中...",
"saved": "已儲存",
"unsavedChanges": "未儲存的變更",
"noteCopiedToClipboard": "筆記已複製到剪貼簿",
"generateTitle": "產生標題",
"generatingTitle": "正在產生標題...",
@@ -815,15 +804,6 @@
"previous7Days": "過去 7 天",
"previous30Days": "過去 30 天",
"older": "更早",
"tapToExpand": "點擊展開",
"byAuthor": "作者:{name}",
"@byAuthor": {
"placeholders": {
"name": {
"type": "String"
}
}
},
"wordCount": "{count} 字",
"@wordCount": {
"placeholders": {
@@ -858,17 +838,11 @@
}
}
},
"widgetAskConduit": "詢問 Conduit",
"widgetCamera": "相機",
"widgetPhotos": "照片",
"widgetClipboard": "剪貼簿",
"widgetDescription": "快速存取 Conduit 聊天,支援相機、照片和剪貼簿捷徑",
"sso": "SSO",
"ssoDescription": "使用組織的身份提供商登入",
"signInWithSso": "使用 SSO 登入",
"ssoAuthenticating": "正在驗證...",
"ssoAuthFailed": "SSO 驗證失敗",
"ssoTokenNotFound": "無法從 SSO 提供商取得驗證權杖",
"ssoLoadingLogin": "正在載入登入頁面...",
"ldap": "LDAP",
"ldapDescription": "使用 LDAP 目錄憑據登入",