Localazy Download (#29577)

* [create-pull-request] automated change

* Fix playwright tests

* Update tests to reflect string changes

---------

Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
Co-authored-by: R Midhun Suresh <hi@midhun.dev>
Co-authored-by: Andy Balaam <andy.balaam@matrix.org>
This commit is contained in:
ElementRobot
2025-03-24 13:02:20 +01:00
committed by GitHub
parent d0c1610bd2
commit e5d37a324d
13 changed files with 175 additions and 80 deletions

View File

@@ -324,7 +324,7 @@ test.describe("Cryptography", function () {
await expect(lastE2eIcon).toHaveClass(/mx_EventTile_e2eIcon_warning/);
await lastE2eIcon.focus();
await expect(await app.getTooltipForElement(lastE2eIcon)).toContainText(
"Sender's verified identity has changed",
"Sender's verified identity was reset",
);
});
});

View File

@@ -52,6 +52,6 @@ test.describe("Invisible cryptography", () => {
/* should show an error for a message from a previously verified device */
await bobSecondDevice.sendMessage(testRoomId, "test encrypted from user that was previously verified");
const lastTile = page.locator(".mx_EventTile_last");
await expect(lastTile).toContainText("Sender's verified identity has changed");
await expect(lastTile).toContainText("Sender's verified identity was reset");
});
});

View File

@@ -33,7 +33,7 @@ interface UserIdentityWarningProps {
/**
* Displays a banner warning when there is an issue with a user's identity.
*
* Warns when an unverified user's identity has changed, and gives the user a
* Warns when an unverified user's identity was reset, and gives the user a
* button to acknowledge the change.
*/
export const UserIdentityWarning: React.FC<UserIdentityWarningProps> = ({ room }) => {

View File

@@ -64,6 +64,7 @@
"go": "Ok",
"go_back": "Zpět",
"got_it": "Rozumím",
"hide": "Skrýt",
"hide_advanced": "Skrýt pokročilé možnosti",
"hold": "Podržet",
"ignore": "Ignorovat",
@@ -952,8 +953,8 @@
"warning": "Pokud jste nenastavili nový způsob obnovy vy, mohou se pokoušet k vašemu účtu dostat útočníci. Změňte si raději ihned heslo a nastavte nový způsob obnovy v Nastavení."
},
"not_supported": "<nepodporováno>",
"pinned_identity_changed": "%(displayName)s(<b>%(userId)s</b>) se zřejmě změnil. <a>Více informací</a>",
"pinned_identity_changed_no_displayname": "Identita <b>%(userId)s</b> se zřejmě změnila. <a>Další informace</a>",
"pinned_identity_changed": "Identita %(displayName)s (<b>%(userId)s</b>) byla změněna. <a>Další informace</a>",
"pinned_identity_changed_no_displayname": "Identita <b>%(userId)s</b> byla změněna. <a>Další informace</a>",
"recovery_method_removed": {
"description_1": "Tato relace zjistila, že byla odstraněna vaše bezpečnostní fráze a klíč pro zabezpečené zprávy.",
"description_2": "Pokud se vám to stalo neúmyslně, můžete znovu nastavit zálohu zpráv pro tuto relaci. To znovu zašifruje historii zpráv novým způsobem.",
@@ -1065,8 +1066,8 @@
"waiting_other_user": "Čekám až nás %(displayName)s ověří…"
},
"verification_requested_toast_title": "Žádost ověření",
"verified_identity_changed": "Ověřená identita %(displayName)s (<b>%(userId)s</b>) se změnila. <a>Další informace</a>",
"verified_identity_changed_no_displayname": "Ověřená identita uživatele <b>%(userId)s</b> se změnila. <a>Další informace</a>",
"verified_identity_changed": "Ověřená identita %(displayName)s (<b>%(userId)s</b>) byla změněna. <a>Další informace</a>",
"verified_identity_changed_no_displayname": "Ověřená identita uživatele <b>%(userId)s</b> byla změněna. <a>Další informace</a>",
"verify_toast_description": "Ostatní uživatelé této relaci nemusí věřit",
"verify_toast_title": "Ověřit tuto relaci",
"withdraw_verification_action": "Zrušit ověření"
@@ -2101,6 +2102,19 @@
"add_space_label": "Přidat prostor",
"breadcrumbs_empty": "Žádné nedávno navštívené místnosti",
"breadcrumbs_label": "Nedávno navštívené místnosti",
"empty": {
"no_chats": "Zatím žádné chaty",
"no_chats_description": "Začněte tím, že někomu pošlete zprávu nebo vytvoříte místnost",
"no_chats_description_no_room_rights": "Začněte tím, že někomu pošlete zprávu",
"no_favourites": "Zatím nemáte oblíbený chat",
"no_favourites_description": "Chat si můžete přidat do oblíbených v nastavení chatu",
"no_people": "Zatím s nikým nemáte přímé chaty",
"no_people_description": "Můžete zrušit filtry, abyste viděli své další chaty",
"no_rooms": "Ještě nejste v žádné místnosti",
"no_rooms_description": "Můžete zrušit filtry, abyste viděli své další chaty",
"no_unread": "Gratulujeme! Nemáte žádné nepřečtené zprávy",
"show_chats": "Zobrazit všechny chaty"
},
"failed_add_tag": "Nepodařilo se přidat štítek %(tagName)s k místnosti",
"failed_remove_tag": "Nepodařilo se odstranit štítek %(tagName)s z místnosti",
"failed_set_dm_tag": "Nepodařilo se nastavit značku přímé zprávy",
@@ -3139,6 +3153,7 @@
"view": "Zobrazí místnost s danou adresou",
"whois": "Zobrazuje informace o uživateli"
},
"sliding_sync_legacy_no_longer_supported": "Starší klouzavá synchronizace již není podporována: odhlaste se a znovu přihlaste, abyste povolili nový způsob posuvné synchronizace",
"space": {
"add_existing_room_space": {
"create": "Chcete místo toho přidat novou místnost?",
@@ -3352,7 +3367,7 @@
"historical_event_no_key_backup": "Historické zprávy nejsou v tomto zařízení k dispozici",
"historical_event_unverified_device": "Pro přístup k historickým zprávám je třeba toto zařízení ověřit.",
"historical_event_user_not_joined": "K této zprávě nemáte přístup",
"sender_identity_previously_verified": "Ověřená identita se změnila",
"sender_identity_previously_verified": "Ověřená identita odesílatele se změnila",
"sender_unsigned_device": "Šifrováno zařízením, které nebylo ověřeno jeho majitelem.",
"unable_to_decrypt": "Zprávu nelze dešifrovat"
},

View File

@@ -64,6 +64,7 @@
"go": "Los",
"go_back": "Zurück",
"got_it": "Verstanden",
"hide": "Verstecken",
"hide_advanced": "Erweiterte Einstellungen ausblenden",
"hold": "Halten",
"ignore": "Blockieren",
@@ -455,6 +456,7 @@
"access_token": "Zugriffstoken",
"accessibility": "Barrierefreiheit",
"advanced": "Erweitert",
"all_chats": "Alle Chats",
"analytics": "Analysedaten",
"and_n_others": {
"other": "und %(count)s weitere …",
@@ -950,8 +952,8 @@
"warning": "Wenn du die neue Wiederherstellungsmethode nicht festgelegt hast, versucht ein Angreifer möglicherweise, auf dein Konto zuzugreifen. Ändere dein Kontopasswort und lege sofort eine neue Wiederherstellungsmethode in den Einstellungen fest."
},
"not_supported": "<nicht unterstützt>",
"pinned_identity_changed": "Die Identität von %(displayName)s (<b>%(userId)s)</b>) hat sich geändert. <a>Mehr erfahren</a>",
"pinned_identity_changed_no_displayname": "Die Identität von <b>%(userId)s</b> hat sich geändert. <a>Mehr erfahren</a>",
"pinned_identity_changed": "%(displayName)s's (<b>%(userId)s</b>) Identität wurde zurückgesetzt. <a>Mehr erfahren </a>",
"pinned_identity_changed_no_displayname": "<b>%(userId)s</b>Die Identität wurde zurückgesetzt. <a>Erfahre mehr </a>",
"recovery_method_removed": {
"description_1": "In dieser Sitzung wurde festgestellt, dass deine Sicherheitsphrase und dein Schlüssel für sichere Nachrichten entfernt wurden.",
"description_2": "Wenn du dies versehentlich getan hast, kannst du in dieser Sitzung \"sichere Nachrichten\" einrichten, die den Nachrichtenverlauf dieser Sitzung mit einer neuen Wiederherstellungsmethode erneut verschlüsseln.",
@@ -1063,8 +1065,8 @@
"waiting_other_user": "Warte darauf, dass %(displayName)s bestätigt…"
},
"verification_requested_toast_title": "Verifizierung angefragt",
"verified_identity_changed": "Die verifizierte Identität von %(displayName)s (<b>%(userId)s</b>) hat sich geändert. <a>Weitere Informationen</a>",
"verified_identity_changed_no_displayname": "Die Identität von <b>%(userId)</b> hat sich geändert. <a>Weitere Informationen</a>",
"verified_identity_changed": "%(displayName)s's (<b>%(userId)s</b>) Identität wurde zurückgesetzt. <a>Erfahren Sie mehr </a>",
"verified_identity_changed_no_displayname": "<b>%(userId)s</b>Die Identität wurde zurückgesetzt. <a>Erfahren Sie mehr </a>",
"verify_toast_description": "Andere Benutzer vertrauen ihr vielleicht nicht",
"verify_toast_title": "Sitzung verifizieren",
"withdraw_verification_action": "Verifizierung zurückziehen"
@@ -2094,6 +2096,19 @@
"add_space_label": "Space hinzufügen",
"breadcrumbs_empty": "Keine kürzlich besuchten Räume",
"breadcrumbs_label": "Kürzlich besuchte Räume",
"empty": {
"no_chats": "Noch keine Chats",
"no_chats_description": "Beginnen Sie, indem Sie jemandem eine Nachricht senden oder einen Raum erstellen",
"no_chats_description_no_room_rights": "Beginnen Sie damit, jemandem eine Nachricht zu senden",
"no_favourites": "Sie haben noch keinen Lieblingschat",
"no_favourites_description": "Sie können einen Chat in den Chat-Einstellungen zu Ihren Favoriten hinzufügen",
"no_people": "Sie haben noch keine direkten Chats",
"no_people_description": "Sie können Filter deaktivieren, um Ihre anderen Chats anzuzeigen",
"no_rooms": "Sie sind noch in keinem Raum",
"no_rooms_description": "Sie können Filter deaktivieren, um Ihre anderen Chats anzuzeigen",
"no_unread": "Glückwunsch! Sie haben keine ungelesenen Nachrichten",
"show_chats": "Alle Chats anzeigen"
},
"failed_add_tag": "Fehler beim Hinzufügen des \"%(tagName)s\"-Tags an dem Raum",
"failed_remove_tag": "Entfernen der Raum-Kennzeichnung %(tagName)s fehlgeschlagen",
"failed_set_dm_tag": "Fehler beim Setzen der Nachrichtenmarkierung",
@@ -2110,6 +2125,14 @@
"other": "Betrete %(count)s Räume"
},
"list_title": "Raumliste",
"more_options": {
"copy_link": "Raumlink kopieren",
"favourited": "Favorisiert",
"leave_room": "Raum verlassen",
"low_priority": "Niedrige Priorität",
"mark_read": "Als gelesen markieren",
"mark_unread": "Als ungelesen markieren"
},
"notification_options": "Benachrichtigungsoptionen",
"open_space_menu": "Menü „Raum öffnen“",
"primary_filters": "Filter für die Raumliste",
@@ -2118,6 +2141,7 @@
"other": "Entferne Nachrichten in %(count)s Räumen"
},
"room": {
"more_options": "Weitere Optionen",
"open_room": "Raum öffnen %(roomName)s"
},
"show_less": "Weniger anzeigen",
@@ -3123,6 +3147,7 @@
"view": "Raum mit angegebener Adresse betrachten",
"whois": "Zeigt Informationen über Benutzer"
},
"sliding_sync_legacy_no_longer_supported": "Legacy Sliding Sync wird nicht mehr unterstützt: Bitte melden Sie sich ab und wieder an, um das neue Sliding Sync-Flag zu aktivieren",
"space": {
"add_existing_room_space": {
"create": "Willst du einen neuen Raum hinzufügen?",
@@ -3336,7 +3361,7 @@
"historical_event_no_key_backup": "Der historische Nachrichtenverlauf ist auf diesem Gerät nicht verfügbar.",
"historical_event_unverified_device": "Sie müssen dieses Gerät verifizieren, um auf den Nachrichtenverlauf zugreifen zu können",
"historical_event_user_not_joined": "Sie haben keinen Zugriff auf diese Nachricht",
"sender_identity_previously_verified": "Die verifizierte Identität des Absenders hat sich geändert",
"sender_identity_previously_verified": "Die verifizierte Identität des Absenders wurde zurückgesetzt",
"sender_unsigned_device": "Von einem unsicheren Gerät verschickt.",
"unable_to_decrypt": "Entschlüsselung der Nachricht nicht möglich"
},

View File

@@ -953,8 +953,8 @@
"warning": "If you didn't set the new recovery method, an attacker may be trying to access your account. Change your account password and set a new recovery method immediately in Settings."
},
"not_supported": "<not supported>",
"pinned_identity_changed": "%(displayName)s's (<b>%(userId)s</b>) identity appears to have changed. <a>Learn more</a>",
"pinned_identity_changed_no_displayname": "<b>%(userId)s</b>'s identity appears to have changed. <a>Learn more</a>",
"pinned_identity_changed": "%(displayName)s's (<b>%(userId)s</b>) identity was reset. <a>Learn more</a>",
"pinned_identity_changed_no_displayname": "<b>%(userId)s</b>'s identity was reset. <a>Learn more</a>",
"recovery_method_removed": {
"description_1": "This session has detected that your Security Phrase and key for Secure Messages have been removed.",
"description_2": "If you did this accidentally, you can setup Secure Messages on this session which will re-encrypt this session's message history with a new recovery method.",
@@ -1066,8 +1066,8 @@
"waiting_other_user": "Waiting for %(displayName)s to verify…"
},
"verification_requested_toast_title": "Verification requested",
"verified_identity_changed": "%(displayName)s's (<b>%(userId)s</b>) verified identity has changed. <a>Learn more</a>",
"verified_identity_changed_no_displayname": "<b>%(userId)s</b>'s verified identity has changed. <a>Learn more</a>",
"verified_identity_changed": "%(displayName)s's (<b>%(userId)s</b>) identity was reset. <a>Learn more</a>",
"verified_identity_changed_no_displayname": "<b>%(userId)s</b>'s identity was reset. <a>Learn more</a>",
"verify_toast_description": "Other users may not trust it",
"verify_toast_title": "Verify this session",
"withdraw_verification_action": "Withdraw verification"
@@ -3369,7 +3369,7 @@
"historical_event_no_key_backup": "Historical messages are not available on this device",
"historical_event_unverified_device": "You need to verify this device for access to historical messages",
"historical_event_user_not_joined": "You don't have access to this message",
"sender_identity_previously_verified": "Sender's verified identity has changed",
"sender_identity_previously_verified": "Sender's verified identity was reset",
"sender_unsigned_device": "Sent from an insecure device.",
"unable_to_decrypt": "Unable to decrypt message"
},

View File

@@ -1065,8 +1065,8 @@
"waiting_other_user": "En attente de la vérification de %(displayName)s…"
},
"verification_requested_toast_title": "Vérification requise",
"verified_identity_changed": "%(displayName)s l'identité vérifiée de (<b>%(userId)s</b>) a changé. <a>En savoir plus </a>",
"verified_identity_changed_no_displayname": "L'identité vérifiée de <b>%(userId)s</b> a changé. <a>En savoir plus </a>",
"verified_identity_changed": "L'identité de %(displayName)s (<b>%(userId)s</b>) a été réinitialisée. <a>En savoir plus</a>",
"verified_identity_changed_no_displayname": "L'identité de <b>%(userId)s</b> a été réinitialisée. <a>En savoir plus </a>",
"verify_toast_description": "Dautres utilisateurs pourraient ne pas lui faire confiance",
"verify_toast_title": "Vérifier cette session",
"withdraw_verification_action": "Révoquer la vérification"

View File

@@ -64,6 +64,7 @@
"go": "Meghívás",
"go_back": "Vissza",
"got_it": "Értem",
"hide": "Elrejtés",
"hide_advanced": "Speciális beállítások elrejtése",
"hold": "Várakoztatás",
"ignore": "Mellőzés",
@@ -103,6 +104,7 @@
"reply": "Válasz",
"reply_in_thread": "Válasz üzenetszálban",
"report_content": "Tartalom jelentése",
"report_room": "Szoba jelentése",
"resend": "Újraküldés",
"reset": "Visszaállítás",
"resume": "Folytatás",
@@ -407,6 +409,15 @@
"download_logs": "Naplók letöltése",
"downloading_logs": "Naplók letöltése folyamatban",
"error_empty": "Mondja el nekünk, hogy mi az, ami nem működött, vagy még jobb, ha egy GitHub-jegyben írja le a problémát.",
"failed_download_logs": "A hibakeresési naplók letöltése sikertelen: ",
"failed_send_logs_causes": {
"disallowed_app": "A hibajelentését elutasították. A rageshake kiszolgáló nem támogatja ezt az alkalmazást.",
"rejected_generic": "A hibajelentését elutasították. A rageshake kiszolgáló egy irányelv miatt elutasította a jelentés tartalmát.",
"rejected_recovery_key": "A hibajelentését biztonsági okokból elutasították, mivel helyreállítási kulcsot tartalmazott.",
"rejected_version": "A hibajelentését elutasították, mivel a futtatott verziója túl régi.",
"server_unknown_error": "A rageshake kiszolgáló ismeretlen hibát észlelt, és nem tudta kezelni a jelentést.",
"unknown_error": "A naplók elküldése sikertelen."
},
"github_issue": "GitHub-jegy",
"introduction": "Ha a GitHubon keresztül küldött be hibajegyet, akkor a hibakeresési naplók segítenek nekünk felderíteni a problémát. ",
"log_request": "Segítsen abban, hogy ez később ne fordulhasson elő, <a>küldje el nekünk a naplókat</a>.",
@@ -446,6 +457,7 @@
"access_token": "Hozzáférési kulcs",
"accessibility": "Akadálymentesség",
"advanced": "Speciális",
"all_chats": "Összes csevegés",
"analytics": "Analitika",
"and_n_others": {
"és még: %(count)s ...": "other",
@@ -1288,6 +1300,7 @@
"error_connecting_heading": "Nem lehet kapcsolódni az integrációkezelőhöz",
"explainer": "Az integrációkezelők megkapják a beállításokat, módosíthatják a kisalkalmazásokat, szobameghívókat küldhetnek és a hozzáférési szintet állíthatnak be az Ön nevében.",
"manage_title": "Integrációk kezelése",
"toggle_label": "Az integrációkezelő engedélyezése",
"use_im": "Integrációkezelő használata a botok, kisalkalmazások és matricacsomagok kezeléséhez.",
"use_im_default": "Integrációkezelő használata <b>(%(serverName)s)</b> a botok, kisalkalmazások és matricacsomagok kezeléséhez."
},
@@ -1787,6 +1800,12 @@
"spam_or_propaganda": "Kéretlen tartalom vagy propaganda",
"toxic_behaviour": "Mérgező viselkedés"
},
"report_room": {
"description": "A szoba jelentése a Matrix-kiszolgáló rendszergazdájának. Ez elküldi a szoba egyedi azonosítóját, de ha az üzenetek titkosítva vannak, a rendszergazda nem fogja tudni elolvasni azokat, vagy megtekinteni a megosztott fájlokat.",
"reason_placeholder": " A jelentés oka…",
"sent": "A jelentés elküldve.",
"title": "Szoba jelentése"
},
"restore_key_backup_dialog": {
"count_of_decryption_failures": "%(failedCount)s munkamenetet nem lehet visszafejteni!",
"count_of_successfully_restored_keys": "%(sessionCount)s kulcs sikeresen helyreállítva",
@@ -2069,6 +2088,19 @@
"add_space_label": "Tér hozzáadása",
"breadcrumbs_empty": "Nincsenek nemrégiben meglátogatott szobák",
"breadcrumbs_label": "Nemrég meglátogatott szobák",
"empty": {
"no_chats": "Még nincsenek csevegések",
"no_chats_description": "Kezdje azzal, hogy üzenetet küld valakinek, vagy létrehoz egy szobát",
"no_chats_description_no_room_rights": "Kezdje azzal, hogy üzenetet küld valakinek",
"no_favourites": "Még nincs kedvenc csevegése",
"no_favourites_description": "A csevegési beállításokban adhat hozzá csevegést a kedvencekhez",
"no_people": "Még nincs közvetlen csevegése senkivel",
"no_people_description": "Kikapcsolhatja a szűrőket a többi csevegés megtekintéséhez",
"no_rooms": "Még nincs egy szobában sem",
"no_rooms_description": "Kikapcsolhatja a szűrőket a többi csevegés megtekintéséhez",
"no_unread": "Gratulálunk! Nincsenek olvasatlan üzenetei.",
"show_chats": "Összes csevegés megjelenítése"
},
"failed_add_tag": "Nem sikerült hozzáadni a szobához ezt: %(tagName)s",
"failed_remove_tag": "Nem sikerült a szobáról eltávolítani ezt: %(tagName)s",
"failed_set_dm_tag": "Nem sikerült a közvetlen beszélgetés címkét beállítani",
@@ -2083,10 +2115,25 @@
"joining_rooms_status": {
"%(count)s szobába lép be": "other"
},
"list_title": "Szobalista",
"more_options": {
"copy_link": "Szoba hivatkozásának másolása",
"favourited": "Kedvencnek jelölve",
"leave_room": "Szoba elhagyása",
"low_priority": "Alacsony prioritás",
"mark_read": "Megjelölés olvasottként",
"mark_unread": "Megjelölés olvasatlanként"
},
"notification_options": "Értesítési beállítások",
"open_space_menu": "Tér menü megnyitása",
"primary_filters": "Szobalistaszűrők",
"redacting_messages_status": {
"Üzenet törlése %(count)s szobából": "other"
},
"room": {
"more_options": "További lehetőségek",
"open_room": "A(z) %(roomName)s szoba megnyitása"
},
"show_less": "Kevesebb megjelenítése",
"show_n_more": {
"Még %(count)s megjelenítése": "one"
@@ -2096,6 +2143,10 @@
"sort_by_activity": "Aktivitás",
"sort_by_alphabet": "A-Z",
"sort_unread_first": "Olvasatlan üzeneteket tartalmazó szobák megjelenítése elöl",
"space_menu": {
"home": "Tér kezdőlapja",
"space_settings": "Tér beállításai"
},
"space_menu_label": "%(spaceName)s menű",
"sublist_options": "Lista beállításai",
"suggested_rooms_heading": "Javasolt szobák"
@@ -2457,20 +2508,35 @@
"breadcrumb_title_forgot": "Elfelejtette a helyreállítási kulcsot? Újra be kell állítania a személyazonosságát.",
"breadcrumb_warning": "Csak akkor tegye ezt, ha úgy gondolja, hogy fiókját feltörték.",
"details_title": "Titkosítás részletei",
"do_not_close_warning": "Ne zárja be ezt az ablakot, amíg az alaphelyzetbe állítás be nem fejeződik",
"export_keys": "Kulcsok exportálása",
"import_keys": "Kulcsok importálása",
"other_people_device_description": "Alapértelmezés szerint titkosított szobákban ne küldjön titkosított üzeneteket senkinek, amíg nem ellenőrizte őket.",
"other_people_device_label": "Sose küldjön titkosított üzeneteket nem ellenőrzött eszközökre",
"other_people_device_title": "Mások eszközei",
"reset_identity": "Kriptográfiai személyazonosság alaphelyzetbe állítása",
"reset_in_progress": "Alaphelyzetbe állítás folyamatban…",
"session_id": "Munkamenet-azonosító:",
"session_key": "Munkamenetkulcs:",
"title": "Speciális"
},
"delete_key_storage": {
"breadcrumb_page": "Kulcstároló törlése",
"confirm": "Kulcstároló törlése",
"description": "A kulcstároló törlése eltávolítja a kriptográfiai személyazonosságát és üzenetkulcsait a kiszolgálóról, és kikapcsolja a következő biztonsági funkciókat:",
"list_first": "Nem lesznek meg a titkosított üzenetek előzményei az új eszközein",
"list_second": "Elveszíti a titkosított üzenetekhez való hozzáférését, ha mindenhol kijelentkezik az %(brand)sből.",
"title": "Biztos, hogy kikapcsolja a kulcstárolót és törli azt?"
},
"device_not_verified_button": "Az eszköz ellenőrzése",
"device_not_verified_description": "A titkosítási beállítások megtekintéséhez ellenőriznie kell ezt az eszközt.",
"device_not_verified_title": "Az eszköz nincs ellenőrizve",
"dialog_title": "<strong>Beállítások:</strong> Titkosítás",
"key_storage": {
"allow_key_storage": "Kulcstárolás engedélyezése",
"description": "Tárolja biztonságosan a kriptográfiai személyazonosságát és az üzenetkulcsokat a kiszolgálón. Ez lehetővé teszi az üzenetek előzményeinek megtekintését bármely új eszközön. <a>További információk</a>",
"title": "Kulcstároló"
},
"recovery": {
"change_recovery_confirm_button": "Új helyreállítási kulcs megerősítése",
"change_recovery_confirm_description": "A befejezéshez adja meg alább az új helyreállítási kulcsot. A régi már nem fog működni.",
@@ -2587,6 +2653,7 @@
"inline_url_previews_room": "Webcím-előnézetek alapértelmezett engedélyezése a szobatagok számára",
"inline_url_previews_room_account": "Webcím-előnézetek engedélyezése ebben a szobában (csak Önt érinti)",
"insert_trailing_colon_mentions": "Záró kettőspont beszúrása egy felhasználó üzenet elején való megemlítésekor",
"invite_avatars": "Azon szobák profilképének megjelenítése, melybe meghívták",
"jump_to_bottom_on_send": "Üzenetküldés után az idővonal aljára ugrás",
"key_backup": {
"backup_in_progress": "A kulcsaid mentése folyamatban van (az első mentés több percig is eltarthat).",
@@ -3064,6 +3131,7 @@
"view": "Megadott címmel rendelkező szobák megjelenítése",
"whois": "Információt jelenít meg a felhasználóról"
},
"sliding_sync_legacy_no_longer_supported": "A régi csúszóablakos szinkronizálás már nem támogatott: jelentkezzen ki, és lépjen be újra az új csúszóablakos szinkronizálás engedélyezéséhez.",
"space": {
"add_existing_room_space": {
"create": "Inkább új szobát adna hozzá?",

View File

@@ -104,6 +104,7 @@
"reply": "Svar",
"reply_in_thread": "Svar i tråd",
"report_content": "Rapporter innhold",
"report_room": "Rapporter rom",
"resend": "Send på nytt",
"reset": "Nullstill",
"resume": "Fortsett",
@@ -953,7 +954,7 @@
},
"not_supported": "<not supported>",
"pinned_identity_changed": "%(displayName)ss (<b>%(userId)s</b>) identitet ser ut til å ha endret seg. <a>Finn ut mer</a>",
"pinned_identity_changed_no_displayname": "<b>%(userId)s</b>s identitet ser ut til å ha endret seg. <a>Finn ut mer</a>",
"pinned_identity_changed_no_displayname": "<b>%(userId)s</b>s identitet ble tilbakestilt. <a>Finn ut mer</a>",
"recovery_method_removed": {
"description_1": "Denne sesjonen har oppdaget at din sikkerhetsfrase og nøkkelen for sikre meldinger har blitt fjernet.",
"description_2": "Hvis du gjorde dette ved et uhell, kan du konfigurere sikre meldinger på denne økten som vil kryptere denne øktens meldingshistorikk på nytt med en ny gjenopprettingsmetode.",
@@ -1065,8 +1066,8 @@
"waiting_other_user": "Venter på at %(displayName)s skal bekrefte..."
},
"verification_requested_toast_title": "Verifisering ble forespurt",
"verified_identity_changed": "%(displayName)ss (<b>%(userId)s</b>) verifiserte identitet har endret seg. <a>Lær mer </a>",
"verified_identity_changed_no_displayname": "<b>%(userId)s</b>'s verifiserte identitet har endret seg. <a>Lær mer om dette</a>",
"verified_identity_changed": "%(displayName)ss (<b>%(userId)s</b>) verifiserte identitet ble tilbakestilt. <a>Lær mer </a>",
"verified_identity_changed_no_displayname": "<b>%(userId)s</b>'s verifiserte identitet ble tilbakestilt. <a>Lær mer om dette</a>",
"verify_toast_description": "Andre brukere kan kanskje mistro den",
"verify_toast_title": "Verifiser denne økten",
"withdraw_verification_action": "Trekk tilbake verifisering"
@@ -1810,6 +1811,12 @@
"spam_or_propaganda": "Spam eller propaganda",
"toxic_behaviour": "Giftig oppførsel"
},
"report_room": {
"description": "Rapporter dette rommet til hjemmeserveradministratoren din. Dette vil sende rommets unike ID, men hvis meldinger er kryptert, vil ikke administratoren kunne lese dem eller se delte filer.",
"reason_placeholder": " Årsak til rapportering...",
"sent": "Rapporten din ble sendt.",
"title": "Rapporter rom"
},
"restore_key_backup_dialog": {
"count_of_decryption_failures": "Kunne ikke dekryptere %(failedCount)s økter!",
"count_of_successfully_restored_keys": "Vellykket gjenoppretting av %(sessionCount)s nøkler",

View File

@@ -104,6 +104,7 @@
"reply": "Відповісти",
"reply_in_thread": "Відповісти у гілці",
"report_content": "Поскаржитись на вміст",
"report_room": "Поскаржитися на кімнату",
"resend": "Перенадіслати",
"reset": "Скинути",
"resume": "Продовжити",
@@ -953,8 +954,8 @@
"warning": "Якщо ви не встановлювали нового способу відновлення, ймовірно хтось намагається зламати ваш обліковий запис. Негайно змініть пароль до свого облікового запису й встановіть новий спосіб відновлення в налаштуваннях."
},
"not_supported": "<не підтримується>",
"pinned_identity_changed": "Схоже, особистість %(displayName)s (<b>%(userId)s</b>) змінилася. <a>Докладніше</a>",
"pinned_identity_changed_no_displayname": "Схоже, особистість <b>%(userId)s</b> змінилася. <a>Докладніше</a>",
"pinned_identity_changed": "Ідентичність %(displayName)s (<b>%(userId)s</b>) скинуто. <a>Докладніше</a>",
"pinned_identity_changed_no_displayname": "Ідентичність <b>%(userId)s</b> скинуто. <a>Докладніше</a>",
"recovery_method_removed": {
"description_1": "Цей сеанс виявив, що ваша фраза безпеки й ключ до захищених повідомлень були видалені.",
"description_2": "Якщо це ненароком зробили ви, налаштуйте захищені повідомлення для цього сеансу, щоб повторно зашифрувати історію листування цього сеансу з новим способом відновлення.",
@@ -1066,8 +1067,8 @@
"waiting_other_user": "Очікування звірки %(displayName)s…"
},
"verification_requested_toast_title": "Запит перевірки",
"verified_identity_changed": "Підтверджена особистість %(displayName)s (<b>%(userId)s</b>) змінилася. <a>Докладніше</a>",
"verified_identity_changed_no_displayname": "Верифіковану особистість <b>%(userId)s</b> змінено. <a>Докладніше</a> ",
"verified_identity_changed": "Ідентичність %(displayName)s (<b>%(userId)s</b>) скинуто. <a>Докладніше</a>",
"verified_identity_changed_no_displayname": "Ідентичність <b>%(userId)s</b> скинуто. <a>Докладніше</a> ",
"verify_toast_description": "Інші користувачі можуть не довіряти цьому",
"verify_toast_title": "Звірити цей сеанс",
"withdraw_verification_action": "Відкликати верифікацію"
@@ -1812,6 +1813,12 @@
"spam_or_propaganda": "Спам чи пропаганда",
"toxic_behaviour": "Токсична поведінка"
},
"report_room": {
"description": "Поскаржитися на цю кімнату адміністратору домашнього сервера. Це надішле унікальний ID кімнати, але якщо повідомлення зашифровані, адміністратор не зможе прочитати їх або переглянути спільні файли.",
"reason_placeholder": "Причина для скарги...",
"sent": "Вашу скаргу надіслано.",
"title": "Поскаржитися на кімнату"
},
"restore_key_backup_dialog": {
"count_of_decryption_failures": "Не вдалося розшифрувати %(failedCount)s сеансів!",
"count_of_successfully_restored_keys": "Успішно відновлено %(sessionCount)s ключів",
@@ -3366,7 +3373,7 @@
"historical_event_no_key_backup": "Історичні повідомлення недоступні на цьому пристрої",
"historical_event_unverified_device": "Щоб отримати доступ до історичних повідомлень, потрібно верифікувати цей пристрій",
"historical_event_user_not_joined": "Ви не маєте доступу до цього повідомлення",
"sender_identity_previously_verified": "Верифіковану особистість змінено",
"sender_identity_previously_verified": "Верифіковану ідентичність відправника скинуто",
"sender_unsigned_device": "Зашифровано пристроєм, який не верифіковано його власником.",
"unable_to_decrypt": "Не вдалося розшифрувати повідомлення"
},

View File

@@ -38,7 +38,7 @@ exports[`DecryptionFailureBody should handle messages from users who change iden
d="M12 22a9.7 9.7 0 0 1-3.9-.788 10.1 10.1 0 0 1-3.175-2.137q-1.35-1.35-2.137-3.175A9.7 9.7 0 0 1 2 12q0-2.075.788-3.9a10.1 10.1 0 0 1 2.137-3.175q1.35-1.35 3.175-2.137A9.7 9.7 0 0 1 12 2q2.075 0 3.9.788a10.1 10.1 0 0 1 3.175 2.137q1.35 1.35 2.137 3.175A9.7 9.7 0 0 1 22 12a9.7 9.7 0 0 1-.788 3.9 10.1 10.1 0 0 1-2.137 3.175q-1.35 1.35-3.175 2.137A9.7 9.7 0 0 1 12 22m0-2q3.35 0 5.675-2.325T20 12q0-1.35-.437-2.6A8 8 0 0 0 18.3 7.1L7.1 18.3q1.05.825 2.3 1.262T12 20m-6.3-3.1L16.9 5.7a8 8 0 0 0-2.3-1.263A7.8 7.8 0 0 0 12 4Q8.65 4 6.325 6.325T4 12q0 1.35.438 2.6A8 8 0 0 0 5.7 16.9"
/>
</svg>
Sender's verified identity has changed
Sender's verified identity was reset
</span>
</div>
</div>

View File

@@ -305,7 +305,7 @@ describe("EventTile", () => {
[EventShieldReason.AUTHENTICITY_NOT_GUARANTEED, "can't be guaranteed"],
[EventShieldReason.MISMATCHED_SENDER_KEY, "Encrypted by an unverified session"],
[EventShieldReason.SENT_IN_CLEAR, "Not encrypted"],
[EventShieldReason.VERIFICATION_VIOLATION, "Sender's verified identity has changed"],
[EventShieldReason.VERIFICATION_VIOLATION, "Sender's verified identity was reset"],
])("shows the correct reason code for %i (%s)", async (reasonCode: EventShieldReason, expectedText: string) => {
mxEvent = await mkEncryptedMatrixEvent({
plainContent: { msgtype: "m.text", body: "msg1" },

View File

@@ -145,9 +145,7 @@ describe("UserIdentityWarning", () => {
renderComponent(client, room);
await waitFor(() =>
expect(
getWarningByText("Alice's (@alice:example.org) identity appears to have changed."),
).toBeInTheDocument(),
expect(getWarningByText("Alice's (@alice:example.org) identity was reset.")).toBeInTheDocument(),
);
await userEvent.click(screen.getByRole("button")!);
await waitFor(() => expect(crypto.pinCurrentUserIdentity).toHaveBeenCalledWith("@alice:example.org"));
@@ -168,7 +166,7 @@ describe("UserIdentityWarning", () => {
renderComponent(client, room);
await waitFor(() =>
expect(getWarningByText("Alice's (@alice:example.org) verified identity has changed.")).toBeInTheDocument(),
expect(getWarningByText("Alice's (@alice:example.org) identity was reset.")).toBeInTheDocument(),
);
expect(
@@ -192,8 +190,7 @@ describe("UserIdentityWarning", () => {
renderComponent(client, room);
await sleep(10); // give it some time to finish initialising
expect(() => getWarningByText("Alice's (@alice:example.org) identity appears to have changed.")).toThrow();
expect(() => getWarningByText("Alice's (@alice:example.org) verified identity has changed.")).toThrow();
expect(() => getWarningByText("Alice's (@alice:example.org) identity was reset.")).toThrow();
});
// We don't display warnings in non-encrypted rooms, but if encryption is
@@ -213,7 +210,7 @@ describe("UserIdentityWarning", () => {
renderComponent(client, room);
await sleep(10); // give it some time to finish initialising
expect(() => getWarningByText("Alice's (@alice:example.org) identity appears to have changed.")).toThrow();
expect(() => getWarningByText("Alice's (@alice:example.org) identity was reset.")).toThrow();
// Encryption gets enabled in the room. We should now warn that Alice's
// identity changed.
@@ -234,9 +231,7 @@ describe("UserIdentityWarning", () => {
null,
);
await waitFor(() =>
expect(
getWarningByText("Alice's (@alice:example.org) identity appears to have changed."),
).toBeInTheDocument(),
expect(getWarningByText("Alice's (@alice:example.org) identity was reset.")).toBeInTheDocument(),
);
});
@@ -255,9 +250,7 @@ describe("UserIdentityWarning", () => {
crypto.pinCurrentUserIdentity = jest.fn();
renderComponent(client, room);
await waitFor(() =>
expect(getWarningByText("@a:example.org's identity appears to have changed.")).toBeInTheDocument(),
);
await waitFor(() => expect(getWarningByText("@a:example.org's identity was reset.")).toBeInTheDocument());
});
it("Ensure existing prompt stays even if a new violation with lower lexicographic order detected", async () => {
@@ -273,9 +266,7 @@ describe("UserIdentityWarning", () => {
crypto.pinCurrentUserIdentity = jest.fn();
renderComponent(client, room);
await waitFor(() =>
expect(getWarningByText("@b:example.org's identity appears to have changed.")).toBeInTheDocument(),
);
await waitFor(() => expect(getWarningByText("@b:example.org's identity was reset.")).toBeInTheDocument());
// Simulate a new member joined with lower lexico order and also in violation
mockMembershipForRoom(room, ["@a:example.org", "@b:example.org"]);
@@ -285,9 +276,7 @@ describe("UserIdentityWarning", () => {
});
// We should still display the warning for @b:example.org
await waitFor(() =>
expect(getWarningByText("@b:example.org's identity appears to have changed.")).toBeInTheDocument(),
);
await waitFor(() => expect(getWarningByText("@b:example.org's identity was reset.")).toBeInTheDocument());
});
});
@@ -307,7 +296,7 @@ describe("UserIdentityWarning", () => {
await sleep(50);
});
expect(() => getWarningByText("Alice's (@alice:example.org) identity appears to have changed.")).toThrow();
expect(() => getWarningByText("Alice's (@alice:example.org) identity was reset.")).toThrow();
// The user changes their identity, so we should show the warning.
act(() => {
@@ -317,9 +306,7 @@ describe("UserIdentityWarning", () => {
});
await waitFor(() =>
expect(
getWarningByText("Alice's (@alice:example.org) identity appears to have changed."),
).toBeInTheDocument(),
expect(getWarningByText("Alice's (@alice:example.org) identity was reset.")).toBeInTheDocument(),
);
// Simulate the user's new identity having been approved, so we no
@@ -330,7 +317,7 @@ describe("UserIdentityWarning", () => {
client.emit(CryptoEvent.UserTrustStatusChanged, "@alice:example.org", newStatus);
});
await waitFor(() =>
expect(() => getWarningByText("Alice's (@alice:example.org) identity appears to have changed.")).toThrow(),
expect(() => getWarningByText("Alice's (@alice:example.org) identity was reset.")).toThrow(),
);
});
@@ -355,7 +342,7 @@ describe("UserIdentityWarning", () => {
});
await waitFor(() =>
expect(getWarningByText("@alice:example.org's identity appears to have changed.")).toBeInTheDocument(),
expect(getWarningByText("@alice:example.org's identity was reset.")).toBeInTheDocument(),
);
// Bob is invited. His identity needs approval, so we should show a
@@ -372,12 +359,8 @@ describe("UserIdentityWarning", () => {
emitMembershipChange(client, "@alice:example.org", "leave");
});
await waitFor(() =>
expect(() => getWarningByText("@alice:example.org's identity appears to have changed.")).toThrow(),
);
await waitFor(() =>
expect(getWarningByText("@bob:example.org's identity appears to have changed.")).toBeInTheDocument(),
);
await waitFor(() => expect(() => getWarningByText("@alice:example.org's identity was reset.")).toThrow());
await waitFor(() => expect(getWarningByText("@bob:example.org's identity was reset.")).toBeInTheDocument());
});
it("when invited users cannot see encrypted messages", async () => {
@@ -399,7 +382,7 @@ describe("UserIdentityWarning", () => {
emitMembershipChange(client, "@alice:example.org", "join");
});
await waitFor(() =>
expect(getWarningByText("@alice:example.org's identity appears to have changed.")).toBeInTheDocument(),
expect(getWarningByText("@alice:example.org's identity was reset.")).toBeInTheDocument(),
);
// Bob is invited. His identity needs approval, but we don't encrypt
@@ -419,12 +402,8 @@ describe("UserIdentityWarning", () => {
mockMembershipForRoom(room, [["@bob:example.org", "invited"]]);
emitMembershipChange(client, "@alice:example.org", "leave");
});
await waitFor(() =>
expect(() => getWarningByText("@alice:example.org's identity appears to have changed.")).toThrow(),
);
await waitFor(() =>
expect(() => getWarningByText("@bob:example.org's identity appears to have changed.")).toThrow(),
);
await waitFor(() => expect(() => getWarningByText("@alice:example.org's identity was reset.")).toThrow());
await waitFor(() => expect(() => getWarningByText("@bob:example.org's identity was reset.")).toThrow());
});
it("when member leaves immediately after component is loaded", async () => {
@@ -448,7 +427,7 @@ describe("UserIdentityWarning", () => {
renderComponent(client, room);
await sleep(10);
});
expect(() => getWarningByText("@alice:example.org's identity appears to have changed.")).toThrow();
expect(() => getWarningByText("@alice:example.org's identity was reset.")).toThrow();
});
it("when member leaves immediately after joining", async () => {
@@ -496,7 +475,7 @@ describe("UserIdentityWarning", () => {
null,
);
await sleep(10); // give it some time to finish
expect(() => getWarningByText("@alice:example.org's identity appears to have changed.")).toThrow();
expect(() => getWarningByText("@alice:example.org's identity was reset.")).toThrow();
});
});
@@ -516,9 +495,7 @@ describe("UserIdentityWarning", () => {
renderComponent(client, room);
// We should warn about Alice's identity first.
await waitFor(() =>
expect(
getWarningByText("Alice's (@alice:example.org) identity appears to have changed."),
).toBeInTheDocument(),
expect(getWarningByText("Alice's (@alice:example.org) identity was reset.")).toBeInTheDocument(),
);
// Simulate Alice's new identity having been approved, so now we warn
@@ -534,9 +511,7 @@ describe("UserIdentityWarning", () => {
});
client.emit(CryptoEvent.UserTrustStatusChanged, "@alice:example.org", newStatus);
});
await waitFor(() =>
expect(getWarningByText("@bob:example.org's identity appears to have changed.")).toBeInTheDocument(),
);
await waitFor(() => expect(getWarningByText("@bob:example.org's identity was reset.")).toBeInTheDocument());
});
it("displays the next user when the verification requirement is withdrawn", async () => {
@@ -556,7 +531,7 @@ describe("UserIdentityWarning", () => {
renderComponent(client, room);
// We should warn about Alice's identity first.
await waitFor(() =>
expect(getWarningByText("Alice's (@alice:example.org) verified identity has changed.")).toBeInTheDocument(),
expect(getWarningByText("Alice's (@alice:example.org) identity was reset.")).toBeInTheDocument(),
);
// Simulate Alice's new identity having been approved, so now we warn
@@ -575,8 +550,6 @@ describe("UserIdentityWarning", () => {
new UserVerificationStatus(false, false, false, false),
);
});
await waitFor(() =>
expect(getWarningByText("@bob:example.org's identity appears to have changed.")).toBeInTheDocument(),
);
await waitFor(() => expect(getWarningByText("@bob:example.org's identity was reset.")).toBeInTheDocument());
});
});