From 78f195960c284c5a2a025593cbe3476f5346e83c Mon Sep 17 00:00:00 2001 From: "v.lagerev" Date: Tue, 14 Apr 2026 22:27:23 +0300 Subject: [PATCH] localize logout --- public/locales/en.json | 6 ++++++ public/locales/ru.json | 6 ++++++ src/app/components/LogoutDialog.tsx | 20 +++++++++++--------- 3 files changed, 23 insertions(+), 9 deletions(-) diff --git a/public/locales/en.json b/public/locales/en.json index b8be7e7b..dde23801 100644 --- a/public/locales/en.json +++ b/public/locales/en.json @@ -80,6 +80,12 @@ "menu_developer_tools": "Developer Tools", "menu_about": "About", "logout": "Logout", + "logout_confirm": "You're about to log out. Are you sure?", + "logout_failed": "Failed to logout! {{message}}", + "logout_unverified_title": "Unverified Device", + "logout_unverified_desc": "Verify your device before logging out to save your encrypted messages.", + "logout_alert_title": "Alert", + "logout_alert_desc": "Enable device verification or export your encrypted data from settings to avoid losing access to your messages.", "general_title": "General", "appearance": "Appearance", diff --git a/public/locales/ru.json b/public/locales/ru.json index 7038ed20..93a656ac 100644 --- a/public/locales/ru.json +++ b/public/locales/ru.json @@ -80,6 +80,12 @@ "menu_developer_tools": "Инструменты разработчика", "menu_about": "О приложении", "logout": "Выйти", + "logout_confirm": "Вы собираетесь выйти из аккаунта. Вы уверены?", + "logout_failed": "Не удалось выйти! {{message}}", + "logout_unverified_title": "Устройство не верифицировано", + "logout_unverified_desc": "Верифицируйте устройство перед выходом, чтобы сохранить зашифрованные сообщения.", + "logout_alert_title": "Внимание", + "logout_alert_desc": "Включите верификацию устройства или экспортируйте зашифрованные данные в настройках, чтобы не потерять доступ к сообщениям.", "general_title": "Общие", "appearance": "Внешний вид", diff --git a/src/app/components/LogoutDialog.tsx b/src/app/components/LogoutDialog.tsx index cc9bf067..1d0d1ce9 100644 --- a/src/app/components/LogoutDialog.tsx +++ b/src/app/components/LogoutDialog.tsx @@ -1,5 +1,6 @@ import React, { forwardRef, useCallback } from 'react'; import { Dialog, Header, config, Box, Text, Button, Spinner, color } from 'folds'; +import { useTranslation } from 'react-i18next'; import { AsyncStatus, useAsyncCallback } from '../hooks/useAsyncCallback'; import { logoutClient } from '../../client/initMatrix'; import { useMatrixClient } from '../hooks/useMatrixClient'; @@ -15,6 +16,7 @@ type LogoutDialogProps = { }; export const LogoutDialog = forwardRef( ({ handleClose }, ref) => { + const { t } = useTranslation(); const mx = useMatrixClient(); const hasEncryptedRoom = !!mx.getRooms().find((room) => room.hasEncryptionStateEvent()); const crossSigningActive = useCrossSigningActive(); @@ -43,7 +45,7 @@ export const LogoutDialog = forwardRef( size="500" > - Logout + {t('Settings.logout')} @@ -52,21 +54,21 @@ export const LogoutDialog = forwardRef( verificationStatus === VerificationStatus.Unverified && ( ) ) : ( ))} - You’re about to log out. Are you sure? + {t('Settings.logout_confirm')} {logoutState.status === AsyncStatus.Error && ( - Failed to logout! {logoutState.error.message} + {t('Settings.logout_failed', { message: logoutState.error.message })} )} @@ -76,10 +78,10 @@ export const LogoutDialog = forwardRef( disabled={ongoingLogout} before={ongoingLogout && } > - Logout + {t('Settings.logout')}