Merge remote-tracking branch 'origin/master' into ab/async-subs

This commit is contained in:
Alexander Bondarenko
2024-06-03 15:46:11 +03:00
95 changed files with 3681 additions and 283 deletions
+14 -2
View File
@@ -561,6 +561,18 @@ func apiGroupMemberInfo(_ groupId: Int64, _ groupMemberId: Int64) throws -> (Gro
throw r
}
func apiContactQueueInfo(_ contactId: Int64) async throws -> (RcvMsgInfo?, QueueInfo) {
let r = await chatSendCmd(.apiContactQueueInfo(contactId: contactId))
if case let .queueInfo(_, rcvMsgInfo, queueInfo) = r { return (rcvMsgInfo, queueInfo) }
throw r
}
func apiGroupMemberQueueInfo(_ groupId: Int64, _ groupMemberId: Int64) async throws -> (RcvMsgInfo?, QueueInfo) {
let r = await chatSendCmd(.apiGroupMemberQueueInfo(groupId: groupId, groupMemberId: groupMemberId))
if case let .queueInfo(_, rcvMsgInfo, queueInfo) = r { return (rcvMsgInfo, queueInfo) }
throw r
}
func apiSwitchContact(contactId: Int64) throws -> ConnectionStats {
let r = chatSendCmdSync(.apiSwitchContact(contactId: contactId))
if case let .contactSwitchStarted(_, _, connectionStats) = r { return connectionStats }
@@ -1265,7 +1277,7 @@ func filterMembersToAdd(_ ms: [GMember]) -> [Contact] {
let memberContactIds = ms.compactMap{ m in m.wrapped.memberCurrent ? m.wrapped.memberContactId : nil }
return ChatModel.shared.chats
.compactMap{ $0.chatInfo.contact }
.filter{ c in c.ready && c.active && !memberContactIds.contains(c.apiId) }
.filter{ c in c.sendMsgEnabled && !c.nextSendGrpInv && !memberContactIds.contains(c.apiId) }
.sorted{ $0.displayName.lowercased() < $1.displayName.lowercased() }
}
@@ -1835,7 +1847,7 @@ func processReceivedMsg(_ res: ChatResponse) async {
}
case let .sndFileCompleteXFTP(user, aChatItem, _):
await chatItemSimpleUpdate(user, aChatItem)
case let .sndFileError(user, aChatItem, _):
case let .sndFileError(user, aChatItem, _, _):
if let aChatItem = aChatItem {
await chatItemSimpleUpdate(user, aChatItem)
Task { cleanupFile(aChatItem) }
@@ -110,6 +110,7 @@ struct ChatInfoView: View {
case switchAddressAlert
case abortSwitchAddressAlert
case syncConnectionForceAlert
case queueInfo(info: String)
case error(title: LocalizedStringKey, error: LocalizedStringKey = "")
var id: String {
@@ -119,6 +120,7 @@ struct ChatInfoView: View {
case .switchAddressAlert: return "switchAddressAlert"
case .abortSwitchAddressAlert: return "abortSwitchAddressAlert"
case .syncConnectionForceAlert: return "syncConnectionForceAlert"
case let .queueInfo(info): return "queueInfo \(info)"
case let .error(title, _): return "error \(title)"
}
}
@@ -224,6 +226,18 @@ struct ChatInfoView: View {
Section(header: Text("For console")) {
infoRow("Local name", chat.chatInfo.localDisplayName)
infoRow("Database ID", "\(chat.chatInfo.apiId)")
Button ("Debug delivery") {
Task {
do {
let info = queueInfoText(try await apiContactQueueInfo(chat.chatInfo.apiId))
await MainActor.run { alert = .queueInfo(info: info) }
} catch let e {
logger.error("apiContactQueueInfo error: \(responseError(e))")
let a = getErrorAlert(e, "Error")
await MainActor.run { alert = .error(title: a.title, error: a.message) }
}
}
}
}
}
}
@@ -243,6 +257,7 @@ struct ChatInfoView: View {
case .switchAddressAlert: return switchAddressAlert(switchContactAddress)
case .abortSwitchAddressAlert: return abortSwitchAddressAlert(abortSwitchContactAddress)
case .syncConnectionForceAlert: return syncConnectionForceAlert({ syncContactConnection(force: true) })
case let .queueInfo(info): return queueInfoAlert(info)
case let .error(title, error): return mkAlert(title: title, message: error)
}
}
@@ -577,6 +592,22 @@ func syncConnectionForceAlert(_ syncConnectionForce: @escaping () -> Void) -> Al
)
}
func queueInfoText(_ info: (RcvMsgInfo?, QueueInfo)) -> String {
let (rcvMsgInfo, qInfo) = info
var msgInfo: String
if let rcvMsgInfo { msgInfo = encodeJSON(rcvMsgInfo) } else { msgInfo = "none" }
return String.localizedStringWithFormat(NSLocalizedString("server queue info: %@\n\nlast received msg: %@", comment: "queue info"), encodeJSON(qInfo), msgInfo)
}
func queueInfoAlert(_ info: String) -> Alert {
Alert(
title: Text("Message queue info"),
message: Text(info),
primaryButton: .default(Text("Ok")),
secondaryButton: .default(Text("Copy")) { UIPasteboard.general.string = info }
)
}
struct ChatInfoView_Previews: PreviewProvider {
static var previews: some View {
ChatInfoView(
@@ -54,7 +54,7 @@ struct CIFileView: View {
switch (file.fileStatus) {
case .sndStored: return file.fileProtocol == .local
case .sndTransfer: return false
case .sndComplete: return false
case .sndComplete: return true
case .sndCancelled: return false
case .sndError: return false
case .rcvInvitation: return true
@@ -113,6 +113,11 @@ struct CIFileView: View {
if file.fileProtocol == .local, let fileSource = getLoadedFileSource(file) {
saveCryptoFile(fileSource)
}
case .sndComplete:
logger.debug("CIFileView fileAction - in .sndComplete")
if let fileSource = getLoadedFileSource(file) {
saveCryptoFile(fileSource)
}
default: break
}
}
@@ -24,7 +24,7 @@ struct CIInvalidJSONView: View {
.cornerRadius(18)
.textSelection(.disabled)
.onTapGesture { showJSON = true }
.sheet(isPresented: $showJSON) {
.appSheet(isPresented: $showJSON) {
invalidJSONView(json)
}
}
+1 -1
View File
@@ -131,7 +131,7 @@ struct ChatView: View {
} label: {
ChatInfoToolbar(chat: chat)
}
.sheet(isPresented: $showChatInfoSheet, onDismiss: {
.appSheet(isPresented: $showChatInfoSheet, onDismiss: {
connectionStats = nil
customUserProfile = nil
connectionCode = nil
@@ -35,6 +35,7 @@ struct GroupMemberInfoView: View {
case abortSwitchAddressAlert
case syncConnectionForceAlert
case planAndConnectAlert(alert: PlanAndConnectAlert)
case queueInfo(info: String)
case error(title: LocalizedStringKey, error: LocalizedStringKey)
var id: String {
@@ -49,6 +50,7 @@ struct GroupMemberInfoView: View {
case .abortSwitchAddressAlert: return "abortSwitchAddressAlert"
case .syncConnectionForceAlert: return "syncConnectionForceAlert"
case let .planAndConnectAlert(alert): return "planAndConnectAlert \(alert.id)"
case let .queueInfo(info): return "queueInfo \(info)"
case let .error(title, _): return "error \(title)"
}
}
@@ -178,6 +180,18 @@ struct GroupMemberInfoView: View {
Section("For console") {
infoRow("Local name", member.localDisplayName)
infoRow("Database ID", "\(member.groupMemberId)")
Button ("Debug delivery") {
Task {
do {
let info = queueInfoText(try await apiGroupMemberQueueInfo(groupInfo.apiId, member.groupMemberId))
await MainActor.run { alert = .queueInfo(info: info) }
} catch let e {
logger.error("apiContactQueueInfo error: \(responseError(e))")
let a = getErrorAlert(e, "Error")
await MainActor.run { alert = .error(title: a.title, error: a.message) }
}
}
}
}
}
}
@@ -223,6 +237,7 @@ struct GroupMemberInfoView: View {
case .abortSwitchAddressAlert: return abortSwitchAddressAlert(abortSwitchMemberAddress)
case .syncConnectionForceAlert: return syncConnectionForceAlert({ syncMemberConnection(force: true) })
case let .planAndConnectAlert(alert): return planAndConnectAlert(alert, dismiss: true)
case let .queueInfo(info): return queueInfoAlert(info)
case let .error(title, error): return Alert(title: Text(title), message: Text(error))
}
}
@@ -349,10 +349,12 @@ struct ChatListNavLink: View {
.tint(.accentColor)
}
.frame(height: rowHeights[dynamicTypeSize])
.sheet(isPresented: $showContactConnectionInfo) {
if case let .contactConnection(contactConnection) = chat.chatInfo {
ContactConnectionInfo(contactConnection: contactConnection)
.environment(\EnvironmentValues.refresh as! WritableKeyPath<EnvironmentValues, RefreshAction?>, nil)
.appSheet(isPresented: $showContactConnectionInfo) {
Group {
if case let .contactConnection(contactConnection) = chat.chatInfo {
ContactConnectionInfo(contactConnection: contactConnection)
.environment(\EnvironmentValues.refresh as! WritableKeyPath<EnvironmentValues, RefreshAction?>, nil)
}
}
}
.onTapGesture {
@@ -467,7 +469,7 @@ struct ChatListNavLink: View {
.padding(4)
.frame(height: rowHeights[dynamicTypeSize])
.onTapGesture { showInvalidJSON = true }
.sheet(isPresented: $showInvalidJSON) {
.appSheet(isPresented: $showInvalidJSON) {
invalidJSONView(json)
.environment(\EnvironmentValues.refresh as! WritableKeyPath<EnvironmentValues, RefreshAction?>, nil)
}
@@ -123,7 +123,7 @@ struct UserProfilesView: View {
deleteModeButton("Profile and server connections", true)
deleteModeButton("Local profile data only", false)
}
.sheet(item: $selectedUser) { user in
.appSheet(item: $selectedUser) { user in
HiddenProfileView(user: user, profileHidden: $profileHidden)
}
.onChange(of: profileHidden) { _ in
@@ -131,7 +131,7 @@ struct UserProfilesView: View {
withAnimation { profileHidden = false }
}
}
.sheet(item: $profileAction) { action in
.appSheet(item: $profileAction) { action in
profileActionView(action)
}
.alert(item: $alert) { alert in
@@ -1717,6 +1717,10 @@ This is your own one-time link!</source>
<target>Базата данни ще бъде мигрирана, когато приложението се рестартира</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>Децентрализиран</target>
@@ -3684,6 +3688,10 @@ This is your link for group %@!</source>
<target>Чернова на съобщение</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>Реакции на съобщения</target>
@@ -7539,6 +7547,12 @@ SimpleX сървърите не могат да видят вашия профи
<target>изпрати лично съобщение</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<target>зададен нов адрес за контакт</target>
@@ -1647,6 +1647,10 @@ This is your own one-time link!</source>
<target>Databáze bude přenesena po restartu aplikace</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>Decentralizované</target>
@@ -3541,6 +3545,10 @@ This is your link for group %@!</source>
<target>Návrh zprávy</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>Reakce na zprávy</target>
@@ -7247,6 +7255,12 @@ Servery SimpleX nevidí váš profil.</target>
<target>odeslat přímou zprávu</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<note>profile update event chat item</note>
@@ -715,6 +715,7 @@
</trans-unit>
<trans-unit id="Allow downgrade" xml:space="preserve">
<source>Allow downgrade</source>
<target>Herabstufung erlauben</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Allow irreversible message deletion only if your contact allows it to you. (24 hours)" xml:space="preserve">
@@ -814,6 +815,7 @@
</trans-unit>
<trans-unit id="Always use private routing." xml:space="preserve">
<source>Always use private routing.</source>
<target>Sie nutzen immer privates Routing.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Always use relay" xml:space="preserve">
@@ -1098,6 +1100,7 @@
</trans-unit>
<trans-unit id="Capacity exceeded - recipient did not receive previously sent messages." xml:space="preserve">
<source>Capacity exceeded - recipient did not receive previously sent messages.</source>
<target>Kapazität überschritten - der Empfänger hat die zuvor gesendeten Nachrichten nicht empfangen.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Cellular" xml:space="preserve">
@@ -1298,6 +1301,7 @@
</trans-unit>
<trans-unit id="Confirm files from unknown servers." xml:space="preserve">
<source>Confirm files from unknown servers.</source>
<target>Dateien von unbekannten Servern bestätigen.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Confirm network settings" xml:space="preserve">
@@ -1717,6 +1721,10 @@ Das ist Ihr eigener Einmal-Link!</target>
<target>Die Datenbank wird beim nächsten Start der App migriert</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>Dezentral</target>
@@ -1966,6 +1974,7 @@ Das kann nicht rückgängig gemacht werden!</target>
</trans-unit>
<trans-unit id="Destination server error: %@" xml:space="preserve">
<source>Destination server error: %@</source>
<target>Zielserver-Fehler: %@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Develop" xml:space="preserve">
@@ -2075,15 +2084,17 @@ Das kann nicht rückgängig gemacht werden!</target>
</trans-unit>
<trans-unit id="Do NOT send messages directly, even if your or destination server does not support private routing." xml:space="preserve">
<source>Do NOT send messages directly, even if your or destination server does not support private routing.</source>
<target>Nachrichten werden nicht direkt versendet, selbst wenn Ihr oder der Zielserver kein privates Routing unterstützt.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do NOT use SimpleX for emergency calls." xml:space="preserve">
<source>Do NOT use SimpleX for emergency calls.</source>
<target>Nutzen Sie SimpleX nicht für Notrufe.</target>
<target>SimpleX NICHT für Notrufe nutzen.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do NOT use private routing." xml:space="preserve">
<source>Do NOT use private routing.</source>
<target>Sie nutzen KEIN privates Routing.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do it later" xml:space="preserve">
@@ -2743,6 +2754,7 @@ Das kann nicht rückgängig gemacht werden!</target>
</trans-unit>
<trans-unit id="Files" xml:space="preserve">
<source>Files</source>
<target>Dateien</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Files &amp; media" xml:space="preserve">
@@ -2853,11 +2865,15 @@ Das kann nicht rückgängig gemacht werden!</target>
<trans-unit id="Forwarding server: %@&#10;Destination server error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Destination server error: %2$@</source>
<target>Weiterleitungsserver: %1$@
Zielserver Fehler: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Forwarding server: %@&#10;Error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Error: %2$@</source>
<target>Weiterleitungsserver: %1$@
Fehler: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Found desktop" xml:space="preserve">
@@ -3677,6 +3693,7 @@ Das ist Ihr Link für die Gruppe %@!</target>
</trans-unit>
<trans-unit id="Message delivery warning" xml:space="preserve">
<source>Message delivery warning</source>
<target>Warnung bei der Nachrichtenzustellung</target>
<note>item status text</note>
</trans-unit>
<trans-unit id="Message draft" xml:space="preserve">
@@ -3684,6 +3701,10 @@ Das ist Ihr Link für die Gruppe %@!</target>
<target>Nachrichtenentwurf</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>Reaktionen auf Nachrichten</target>
@@ -3701,10 +3722,12 @@ Das ist Ihr Link für die Gruppe %@!</target>
</trans-unit>
<trans-unit id="Message routing fallback" xml:space="preserve">
<source>Message routing fallback</source>
<target>Fallback für das Nachrichten-Routing</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message routing mode" xml:space="preserve">
<source>Message routing mode</source>
<target>Modus für das Nachrichten-Routing</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message source remains private." xml:space="preserve">
@@ -3869,6 +3892,7 @@ Das ist Ihr Link für die Gruppe %@!</target>
</trans-unit>
<trans-unit id="Network issues - message expired after many attempts to send it." xml:space="preserve">
<source>Network issues - message expired after many attempts to send it.</source>
<target>Netzwerk-Fehler - die Nachricht ist nach vielen Sende-Versuchen abgelaufen.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Network management" xml:space="preserve">
@@ -4414,10 +4438,12 @@ Fehler: %@</target>
</trans-unit>
<trans-unit id="Private message routing" xml:space="preserve">
<source>Private message routing</source>
<target>Privates Nachrichten-Routing</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private message routing 🚀" xml:space="preserve">
<source>Private message routing 🚀</source>
<target>Privates Nachrichten-Routing 🚀</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private notes" xml:space="preserve">
@@ -4427,6 +4453,7 @@ Fehler: %@</target>
</trans-unit>
<trans-unit id="Private routing" xml:space="preserve">
<source>Private routing</source>
<target>Privates Routing</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Profile and server connections" xml:space="preserve">
@@ -4511,6 +4538,7 @@ Fehler: %@</target>
</trans-unit>
<trans-unit id="Protect IP address" xml:space="preserve">
<source>Protect IP address</source>
<target>IP-Adresse schützen</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect app screen" xml:space="preserve">
@@ -4521,6 +4549,8 @@ Fehler: %@</target>
<trans-unit id="Protect your IP address from the messaging relays chosen by your contacts.&#10;Enable in *Network &amp; servers* settings." xml:space="preserve">
<source>Protect your IP address from the messaging relays chosen by your contacts.
Enable in *Network &amp; servers* settings.</source>
<target>Schützen Sie Ihre IP-Adresse vor den Nachrichten-Relais , die Ihre Kontakte ausgewählt haben.
Aktivieren Sie es in den *Netzwerk &amp; Server* Einstellungen.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect your chat profiles with a password!" xml:space="preserve">
@@ -4865,6 +4895,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Safely receive files" xml:space="preserve">
<source>Safely receive files</source>
<target>Dateien sicher empfangen</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Safer groups" xml:space="preserve">
@@ -5094,10 +5125,12 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Send messages directly when IP address is protected and your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when IP address is protected and your or destination server does not support private routing.</source>
<target>Nachrichten werden direkt versendet, wenn die IP-Adresse geschützt ist, und Ihr oder der Zielserver kein privates Routing unterstützt.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send messages directly when your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when your or destination server does not support private routing.</source>
<target>Nachrichten werden direkt versendet, wenn Ihr oder der Zielserver kein privates Routing unterstützt.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send notifications" xml:space="preserve">
@@ -5207,6 +5240,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server address is incompatible with network settings." xml:space="preserve">
<source>Server address is incompatible with network settings.</source>
<target>Die Server-Adresse ist nicht mit den Netzwerk-Einstellungen kompatibel.</target>
<note>srv error text.</note>
</trans-unit>
<trans-unit id="Server requires authorization to create queues, check password" xml:space="preserve">
@@ -5226,6 +5260,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server version is incompatible with network settings." xml:space="preserve">
<source>Server version is incompatible with network settings.</source>
<target>Die Server-Version ist nicht mit den Netzwerk-Einstellungen kompatibel.</target>
<note>srv error text</note>
</trans-unit>
<trans-unit id="Servers" xml:space="preserve">
@@ -5350,6 +5385,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show message status" xml:space="preserve">
<source>Show message status</source>
<target>Nachrichtenstatus anzeigen</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show preview" xml:space="preserve">
@@ -5359,6 +5395,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show → on messages sent via private routing." xml:space="preserve">
<source>Show → on messages sent via private routing.</source>
<target>Bei Nachrichten, die über privates Routing versendet wurden, → anzeigen.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show:" xml:space="preserve">
@@ -5685,6 +5722,7 @@ Dies kann passieren, wenn es einen Fehler gegeben hat oder die Verbindung kompro
</trans-unit>
<trans-unit id="The app will ask to confirm downloads from unknown file servers (except .onion)." xml:space="preserve">
<source>The app will ask to confirm downloads from unknown file servers (except .onion).</source>
<target>Die App wird eine Bestätigung bei Downloads von unbekannten Datei-Servern anfordern (außer bei .onion).</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="The attempt to change database passphrase was not completed." xml:space="preserve">
@@ -5874,6 +5912,7 @@ Dies kann passieren, wenn es einen Fehler gegeben hat oder die Verbindung kompro
</trans-unit>
<trans-unit id="To protect your IP address, private routing uses your SMP servers to deliver messages." xml:space="preserve">
<source>To protect your IP address, private routing uses your SMP servers to deliver messages.</source>
<target>Zum Schutz Ihrer IP-Adresse, wird für die Nachrichten-Auslieferung privates Routing über Ihre konfigurierten SMP-Server genutzt.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="To protect your information, turn on SimpleX Lock.&#10;You will be prompted to complete authentication before this feature is enabled." xml:space="preserve">
@@ -6015,6 +6054,7 @@ Sie werden aufgefordert, die Authentifizierung abzuschließen, bevor diese Funkt
</trans-unit>
<trans-unit id="Unknown servers!" xml:space="preserve">
<source>Unknown servers!</source>
<target>Unbekannte Server!</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Unless you use iOS call interface, enable Do Not Disturb mode to avoid interruptions." xml:space="preserve">
@@ -6136,7 +6176,7 @@ Bitten Sie Ihren Kontakt darum einen weiteren Verbindungs-Link zu erzeugen, um s
</trans-unit>
<trans-unit id="Use current profile" xml:space="preserve">
<source>Use current profile</source>
<target>Das aktuelle Profil nutzen</target>
<target>Aktuelles Profil nutzen</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use for new connections" xml:space="preserve">
@@ -6156,7 +6196,7 @@ Bitten Sie Ihren Kontakt darum einen weiteren Verbindungs-Link zu erzeugen, um s
</trans-unit>
<trans-unit id="Use new incognito profile" xml:space="preserve">
<source>Use new incognito profile</source>
<target>Ein neues Inkognito-Profil nutzen</target>
<target>Neues Inkognito-Profil nutzen</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use only local notifications?" xml:space="preserve">
@@ -6166,10 +6206,12 @@ Bitten Sie Ihren Kontakt darum einen weiteren Verbindungs-Link zu erzeugen, um s
</trans-unit>
<trans-unit id="Use private routing with unknown servers when IP address is not protected." xml:space="preserve">
<source>Use private routing with unknown servers when IP address is not protected.</source>
<target>Sie nutzen privates Routing mit unbekannten Servern, wenn Ihre IP-Adresse nicht geschützt ist.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use private routing with unknown servers." xml:space="preserve">
<source>Use private routing with unknown servers.</source>
<target>Sie nutzen privates Routing mit unbekannten Servern.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use server" xml:space="preserve">
@@ -6409,10 +6451,12 @@ Bitten Sie Ihren Kontakt darum einen weiteren Verbindungs-Link zu erzeugen, um s
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to file servers." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to file servers.</source>
<target>Ohne Tor- oder VPN-Nutzung wird Ihre IP-Adresse für Datei-Server sichtbar sein.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to these XFTP relays: %@.</source>
<target>Ohne Tor- oder VPN-Nutzung wird Ihre IP-Adresse für diese XFTP-Relais sichtbar sein: %@.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Wrong database passphrase" xml:space="preserve">
@@ -6422,6 +6466,7 @@ Bitten Sie Ihren Kontakt darum einen weiteren Verbindungs-Link zu erzeugen, um s
</trans-unit>
<trans-unit id="Wrong key or unknown connection - most likely this connection is deleted." xml:space="preserve">
<source>Wrong key or unknown connection - most likely this connection is deleted.</source>
<target>Falscher Schlüssel oder unbekannte Verbindung - höchstwahrscheinlich ist diese Verbindung gelöscht worden.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Wrong passphrase!" xml:space="preserve">
@@ -7539,6 +7584,12 @@ SimpleX-Server können Ihr Profil nicht einsehen.</target>
<target>Direktnachricht senden</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<target>Es wurde eine neue Kontaktadresse festgelegt</target>
@@ -7581,6 +7632,7 @@ SimpleX-Server können Ihr Profil nicht einsehen.</target>
</trans-unit>
<trans-unit id="unknown relays" xml:space="preserve">
<source>unknown relays</source>
<target>Unbekannte Relais</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="unknown status" xml:space="preserve">
@@ -7590,6 +7642,7 @@ SimpleX-Server können Ihr Profil nicht einsehen.</target>
</trans-unit>
<trans-unit id="unprotected" xml:space="preserve">
<source>unprotected</source>
<target>Ungeschützt</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="updated group profile" xml:space="preserve">
@@ -7659,6 +7712,7 @@ SimpleX-Server können Ihr Profil nicht einsehen.</target>
</trans-unit>
<trans-unit id="when IP hidden" xml:space="preserve">
<source>when IP hidden</source>
<target>Wenn die IP-Adresse versteckt ist</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="yes" xml:space="preserve">
@@ -7797,7 +7851,7 @@ SimpleX-Server können Ihr Profil nicht einsehen.</target>
</trans-unit>
<trans-unit id="NSHumanReadableCopyright" xml:space="preserve">
<source>Copyright © 2022 SimpleX Chat. All rights reserved.</source>
<target>Copyright © 2022 SimpleX Chat. All rights reserved.</target>
<target>Copyright © 2024 SimpleX Chat. All rights reserved.</target>
<note>Copyright (human-readable)</note>
</trans-unit>
</body>
@@ -1721,6 +1721,11 @@ This is your own one-time link!</target>
<target>Database will be migrated when the app restarts</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<target>Debug delivery</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>Decentralized</target>
@@ -3697,6 +3702,11 @@ This is your link for group %@!</target>
<target>Message draft</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<target>Message queue info</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>Message reactions</target>
@@ -7576,6 +7586,15 @@ SimpleX servers cannot see your profile.</target>
<target>send direct message</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<target>server queue info: %1$@
last received msg: %2$@</target>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<target>set new contact address</target>
@@ -715,6 +715,7 @@
</trans-unit>
<trans-unit id="Allow downgrade" xml:space="preserve">
<source>Allow downgrade</source>
<target>Permitir versión anterior</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Allow irreversible message deletion only if your contact allows it to you. (24 hours)" xml:space="preserve">
@@ -814,6 +815,7 @@
</trans-unit>
<trans-unit id="Always use private routing." xml:space="preserve">
<source>Always use private routing.</source>
<target>Usar siempre enrutamiento privado.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Always use relay" xml:space="preserve">
@@ -1098,6 +1100,7 @@
</trans-unit>
<trans-unit id="Capacity exceeded - recipient did not receive previously sent messages." xml:space="preserve">
<source>Capacity exceeded - recipient did not receive previously sent messages.</source>
<target>Capacidad excedida - el destinatario no ha recibido los mensajes previos.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Cellular" xml:space="preserve">
@@ -1298,6 +1301,7 @@
</trans-unit>
<trans-unit id="Confirm files from unknown servers." xml:space="preserve">
<source>Confirm files from unknown servers.</source>
<target>Confirma archivos de servidores desconocidos.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Confirm network settings" xml:space="preserve">
@@ -1717,6 +1721,10 @@ This is your own one-time link!</source>
<target>La base de datos migrará cuando se reinicie la aplicación</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>Descentralizada</target>
@@ -1966,6 +1974,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Destination server error: %@" xml:space="preserve">
<source>Destination server error: %@</source>
<target>Error del servidor de destino: %@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Develop" xml:space="preserve">
@@ -2075,6 +2084,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Do NOT send messages directly, even if your or destination server does not support private routing." xml:space="preserve">
<source>Do NOT send messages directly, even if your or destination server does not support private routing.</source>
<target>NO enviar mensajes directamente incluso si tu servidor o el de destino no soportan enrutamiento privado.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do NOT use SimpleX for emergency calls." xml:space="preserve">
@@ -2084,6 +2094,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Do NOT use private routing." xml:space="preserve">
<source>Do NOT use private routing.</source>
<target>NO usar enrutamiento privado.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do it later" xml:space="preserve">
@@ -2743,6 +2754,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Files" xml:space="preserve">
<source>Files</source>
<target>Archivos</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Files &amp; media" xml:space="preserve">
@@ -2853,11 +2865,15 @@ This cannot be undone!</source>
<trans-unit id="Forwarding server: %@&#10;Destination server error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Destination server error: %2$@</source>
<target>Servidor de reenvío: %1$@
Error del servidor de destino: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Forwarding server: %@&#10;Error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Error: %2$@</source>
<target>Servidor de reenvío: %1$@
Error: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Found desktop" xml:space="preserve">
@@ -3677,6 +3693,7 @@ This is your link for group %@!</source>
</trans-unit>
<trans-unit id="Message delivery warning" xml:space="preserve">
<source>Message delivery warning</source>
<target>Aviso de entrega de mensaje</target>
<note>item status text</note>
</trans-unit>
<trans-unit id="Message draft" xml:space="preserve">
@@ -3684,6 +3701,10 @@ This is your link for group %@!</source>
<target>Borrador de mensaje</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>Reacciones a mensajes</target>
@@ -3701,10 +3722,12 @@ This is your link for group %@!</source>
</trans-unit>
<trans-unit id="Message routing fallback" xml:space="preserve">
<source>Message routing fallback</source>
<target>Enrutamiento de mensajes alternativo</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message routing mode" xml:space="preserve">
<source>Message routing mode</source>
<target>Modo de enrutamiento de mensajes</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message source remains private." xml:space="preserve">
@@ -3869,6 +3892,7 @@ This is your link for group %@!</source>
</trans-unit>
<trans-unit id="Network issues - message expired after many attempts to send it." xml:space="preserve">
<source>Network issues - message expired after many attempts to send it.</source>
<target>Problema en la red - el mensaje ha expirado tras muchos intentos de envío.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Network management" xml:space="preserve">
@@ -4414,10 +4438,12 @@ Error: %@</target>
</trans-unit>
<trans-unit id="Private message routing" xml:space="preserve">
<source>Private message routing</source>
<target>Enrutamiento privado de mensajes</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private message routing 🚀" xml:space="preserve">
<source>Private message routing 🚀</source>
<target>Enrutamiento privado de mensajes 🚀</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private notes" xml:space="preserve">
@@ -4427,6 +4453,7 @@ Error: %@</target>
</trans-unit>
<trans-unit id="Private routing" xml:space="preserve">
<source>Private routing</source>
<target>Enrutamiento privado</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Profile and server connections" xml:space="preserve">
@@ -4511,6 +4538,7 @@ Error: %@</target>
</trans-unit>
<trans-unit id="Protect IP address" xml:space="preserve">
<source>Protect IP address</source>
<target>Proteger dirección IP</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect app screen" xml:space="preserve">
@@ -4521,6 +4549,8 @@ Error: %@</target>
<trans-unit id="Protect your IP address from the messaging relays chosen by your contacts.&#10;Enable in *Network &amp; servers* settings." xml:space="preserve">
<source>Protect your IP address from the messaging relays chosen by your contacts.
Enable in *Network &amp; servers* settings.</source>
<target>Protege tu dirección IP de los servidores de retransmisión elegidos por tus contactos.
Actívalo en ajustes de *Servidores y Redes*.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect your chat profiles with a password!" xml:space="preserve">
@@ -4695,7 +4725,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Relay server is only used if necessary. Another party can observe your IP address." xml:space="preserve">
<source>Relay server is only used if necessary. Another party can observe your IP address.</source>
<target>El retransmisor sólo se usa en caso de necesidad. Un tercero podría ver tu IP.</target>
<target>El servidor de retransmisión sólo se usa en caso de necesidad. Un tercero podría ver tu IP.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Relay server protects your IP address, but it can observe the duration of the call." xml:space="preserve">
@@ -4865,6 +4895,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Safely receive files" xml:space="preserve">
<source>Safely receive files</source>
<target>Recibe archivos de forma segura</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Safer groups" xml:space="preserve">
@@ -5074,7 +5105,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Send direct message to connect" xml:space="preserve">
<source>Send direct message to connect</source>
<target>Enviar mensaje directo para conectar</target>
<target>Envia un mensaje para conectar</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send disappearing message" xml:space="preserve">
@@ -5094,10 +5125,12 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Send messages directly when IP address is protected and your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when IP address is protected and your or destination server does not support private routing.</source>
<target>Enviar mensajes directamente cuando tu dirección IP está protegida y tu servidor o el de destino no admitan enrutamiento privado.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send messages directly when your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when your or destination server does not support private routing.</source>
<target>Enviar mensajes directamente cuando tu servidor o el de destino no admitan enrutamiento privado.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send notifications" xml:space="preserve">
@@ -5207,6 +5240,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server address is incompatible with network settings." xml:space="preserve">
<source>Server address is incompatible with network settings.</source>
<target>La dirección del servidor es incompatible con la configuración de la red.</target>
<note>srv error text.</note>
</trans-unit>
<trans-unit id="Server requires authorization to create queues, check password" xml:space="preserve">
@@ -5226,6 +5260,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server version is incompatible with network settings." xml:space="preserve">
<source>Server version is incompatible with network settings.</source>
<target>La versión del servidor es incompatible con la configuración de red.</target>
<note>srv error text</note>
</trans-unit>
<trans-unit id="Servers" xml:space="preserve">
@@ -5350,6 +5385,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show message status" xml:space="preserve">
<source>Show message status</source>
<target>Estado del mensaje</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show preview" xml:space="preserve">
@@ -5359,6 +5395,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show → on messages sent via private routing." xml:space="preserve">
<source>Show → on messages sent via private routing.</source>
<target>Mostrar → en mensajes con enrutamiento privado.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show:" xml:space="preserve">
@@ -5685,6 +5722,7 @@ Puede ocurrir por algún bug o cuando la conexión está comprometida.</target>
</trans-unit>
<trans-unit id="The app will ask to confirm downloads from unknown file servers (except .onion)." xml:space="preserve">
<source>The app will ask to confirm downloads from unknown file servers (except .onion).</source>
<target>La aplicación pedirá que confirmes las descargas desde servidores de archivos desconocidos (excepto .onion).</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="The attempt to change database passphrase was not completed." xml:space="preserve">
@@ -5874,6 +5912,7 @@ Puede ocurrir por algún bug o cuando la conexión está comprometida.</target>
</trans-unit>
<trans-unit id="To protect your IP address, private routing uses your SMP servers to deliver messages." xml:space="preserve">
<source>To protect your IP address, private routing uses your SMP servers to deliver messages.</source>
<target>Para proteger tu dirección IP, el enrutamiento privado usa tus servidores SMP para enviar mensajes.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="To protect your information, turn on SimpleX Lock.&#10;You will be prompted to complete authentication before this feature is enabled." xml:space="preserve">
@@ -6015,6 +6054,7 @@ Se te pedirá que completes la autenticación antes de activar esta función.</t
</trans-unit>
<trans-unit id="Unknown servers!" xml:space="preserve">
<source>Unknown servers!</source>
<target>¡Servidores desconocidos!</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Unless you use iOS call interface, enable Do Not Disturb mode to avoid interruptions." xml:space="preserve">
@@ -6167,10 +6207,12 @@ Para conectarte, pide a tu contacto que cree otro enlace de conexión y comprueb
</trans-unit>
<trans-unit id="Use private routing with unknown servers when IP address is not protected." xml:space="preserve">
<source>Use private routing with unknown servers when IP address is not protected.</source>
<target>Usar enrutamiento privado con servidores desconocidos cuando la dirección IP no está protegida.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use private routing with unknown servers." xml:space="preserve">
<source>Use private routing with unknown servers.</source>
<target>Usar enrutamiento privado con servidores desconocidos.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use server" xml:space="preserve">
@@ -6410,10 +6452,12 @@ Para conectarte, pide a tu contacto que cree otro enlace de conexión y comprueb
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to file servers." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to file servers.</source>
<target>Sin Tor o VPN, tu dirección IP será visible para los servidores de archivos.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to these XFTP relays: %@.</source>
<target>Sin Tor o VPN, tu dirección IP será visible para estos servidores XFTP: %@.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Wrong database passphrase" xml:space="preserve">
@@ -6423,6 +6467,7 @@ Para conectarte, pide a tu contacto que cree otro enlace de conexión y comprueb
</trans-unit>
<trans-unit id="Wrong key or unknown connection - most likely this connection is deleted." xml:space="preserve">
<source>Wrong key or unknown connection - most likely this connection is deleted.</source>
<target>Clave incorrecta o conexión desconocida - probablemente esta conexión fue eliminada.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Wrong passphrase!" xml:space="preserve">
@@ -7540,6 +7585,12 @@ Los servidores de SimpleX no pueden ver tu perfil.</target>
<target>Enviar mensaje directo</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<target>nueva dirección de contacto</target>
@@ -7582,6 +7633,7 @@ Los servidores de SimpleX no pueden ver tu perfil.</target>
</trans-unit>
<trans-unit id="unknown relays" xml:space="preserve">
<source>unknown relays</source>
<target>servidor de retransmisión desconocido</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="unknown status" xml:space="preserve">
@@ -7591,6 +7643,7 @@ Los servidores de SimpleX no pueden ver tu perfil.</target>
</trans-unit>
<trans-unit id="unprotected" xml:space="preserve">
<source>unprotected</source>
<target>desprotegido</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="updated group profile" xml:space="preserve">
@@ -7660,6 +7713,7 @@ Los servidores de SimpleX no pueden ver tu perfil.</target>
</trans-unit>
<trans-unit id="when IP hidden" xml:space="preserve">
<source>when IP hidden</source>
<target>con IP oculta</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="yes" xml:space="preserve">
@@ -1640,6 +1640,10 @@ This is your own one-time link!</source>
<target>Tietokanta siirretään, kun sovellus käynnistyy uudelleen</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>Hajautettu</target>
@@ -3531,6 +3535,10 @@ This is your link for group %@!</source>
<target>Viestiluonnos</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>Viestireaktiot</target>
@@ -7231,6 +7239,12 @@ SimpleX-palvelimet eivät näe profiiliasi.</target>
<source>send direct message</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<note>profile update event chat item</note>
@@ -715,6 +715,7 @@
</trans-unit>
<trans-unit id="Allow downgrade" xml:space="preserve">
<source>Allow downgrade</source>
<target>Autoriser la rétrogradation</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Allow irreversible message deletion only if your contact allows it to you. (24 hours)" xml:space="preserve">
@@ -814,6 +815,7 @@
</trans-unit>
<trans-unit id="Always use private routing." xml:space="preserve">
<source>Always use private routing.</source>
<target>Toujours utiliser le routage privé.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Always use relay" xml:space="preserve">
@@ -1098,6 +1100,7 @@
</trans-unit>
<trans-unit id="Capacity exceeded - recipient did not receive previously sent messages." xml:space="preserve">
<source>Capacity exceeded - recipient did not receive previously sent messages.</source>
<target>Capacité dépassée - le destinataire n'a pas pu recevoir les messages envoyés précédemment.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Cellular" xml:space="preserve">
@@ -1298,6 +1301,7 @@
</trans-unit>
<trans-unit id="Confirm files from unknown servers." xml:space="preserve">
<source>Confirm files from unknown servers.</source>
<target>Confirmer les fichiers provenant de serveurs inconnus.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Confirm network settings" xml:space="preserve">
@@ -1717,6 +1721,10 @@ Il s'agit de votre propre lien unique !</target>
<target>La base de données sera migrée lors du redémarrage de l'app</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>Décentralisé</target>
@@ -1966,6 +1974,7 @@ Cette opération ne peut être annulée !</target>
</trans-unit>
<trans-unit id="Destination server error: %@" xml:space="preserve">
<source>Destination server error: %@</source>
<target>Erreur du serveur de destination: %@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Develop" xml:space="preserve">
@@ -2075,6 +2084,7 @@ Cette opération ne peut être annulée !</target>
</trans-unit>
<trans-unit id="Do NOT send messages directly, even if your or destination server does not support private routing." xml:space="preserve">
<source>Do NOT send messages directly, even if your or destination server does not support private routing.</source>
<target>Ne pas envoyer de messages directement, même si votre serveur ou le serveur de destination ne prend pas en charge le routage privé.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do NOT use SimpleX for emergency calls." xml:space="preserve">
@@ -2084,6 +2094,7 @@ Cette opération ne peut être annulée !</target>
</trans-unit>
<trans-unit id="Do NOT use private routing." xml:space="preserve">
<source>Do NOT use private routing.</source>
<target>Ne pas utiliser de routage privé.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do it later" xml:space="preserve">
@@ -2743,6 +2754,7 @@ Cette opération ne peut être annulée !</target>
</trans-unit>
<trans-unit id="Files" xml:space="preserve">
<source>Files</source>
<target>Fichiers</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Files &amp; media" xml:space="preserve">
@@ -2853,11 +2865,15 @@ Cette opération ne peut être annulée !</target>
<trans-unit id="Forwarding server: %@&#10;Destination server error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Destination server error: %2$@</source>
<target>Serveur de transfert: %1$@
Erreur du serveur de destination: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Forwarding server: %@&#10;Error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Error: %2$@</source>
<target>Serveur de transfert: %1$@
Erreur: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Found desktop" xml:space="preserve">
@@ -3677,6 +3693,7 @@ Voici votre lien pour le groupe %@ !</target>
</trans-unit>
<trans-unit id="Message delivery warning" xml:space="preserve">
<source>Message delivery warning</source>
<target>Avertissement sur la distribution des messages</target>
<note>item status text</note>
</trans-unit>
<trans-unit id="Message draft" xml:space="preserve">
@@ -3684,6 +3701,10 @@ Voici votre lien pour le groupe %@ !</target>
<target>Brouillon de message</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>Réactions aux messages</target>
@@ -3701,10 +3722,12 @@ Voici votre lien pour le groupe %@ !</target>
</trans-unit>
<trans-unit id="Message routing fallback" xml:space="preserve">
<source>Message routing fallback</source>
<target>Rabattement du routage des messages</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message routing mode" xml:space="preserve">
<source>Message routing mode</source>
<target>Mode de routage des messages</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message source remains private." xml:space="preserve">
@@ -3869,6 +3892,7 @@ Voici votre lien pour le groupe %@ !</target>
</trans-unit>
<trans-unit id="Network issues - message expired after many attempts to send it." xml:space="preserve">
<source>Network issues - message expired after many attempts to send it.</source>
<target>Problèmes de réseau - le message a expiré après plusieurs tentatives d'envoi.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Network management" xml:space="preserve">
@@ -4414,10 +4438,12 @@ Erreur: %@</target>
</trans-unit>
<trans-unit id="Private message routing" xml:space="preserve">
<source>Private message routing</source>
<target>Routage privé des messages</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private message routing 🚀" xml:space="preserve">
<source>Private message routing 🚀</source>
<target>Routage privé des messages 🚀</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private notes" xml:space="preserve">
@@ -4427,6 +4453,7 @@ Erreur: %@</target>
</trans-unit>
<trans-unit id="Private routing" xml:space="preserve">
<source>Private routing</source>
<target>Routage privé</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Profile and server connections" xml:space="preserve">
@@ -4511,6 +4538,7 @@ Erreur: %@</target>
</trans-unit>
<trans-unit id="Protect IP address" xml:space="preserve">
<source>Protect IP address</source>
<target>Protéger l'adresse IP</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect app screen" xml:space="preserve">
@@ -4521,6 +4549,8 @@ Erreur: %@</target>
<trans-unit id="Protect your IP address from the messaging relays chosen by your contacts.&#10;Enable in *Network &amp; servers* settings." xml:space="preserve">
<source>Protect your IP address from the messaging relays chosen by your contacts.
Enable in *Network &amp; servers* settings.</source>
<target>Protégez votre adresse IP des relais de messagerie choisis par vos contacts.
Activez-le dans les paramètres *Réseau et serveurs*.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect your chat profiles with a password!" xml:space="preserve">
@@ -4865,6 +4895,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Safely receive files" xml:space="preserve">
<source>Safely receive files</source>
<target>Réception de fichiers en toute sécurité</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Safer groups" xml:space="preserve">
@@ -5094,10 +5125,12 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Send messages directly when IP address is protected and your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when IP address is protected and your or destination server does not support private routing.</source>
<target>Envoyer les messages de manière directe lorsque l'adresse IP est protégée et que votre serveur ou le serveur de destination ne prend pas en charge le routage privé.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send messages directly when your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when your or destination server does not support private routing.</source>
<target>Envoyez les messages de manière directe lorsque votre serveur ou le serveur de destination ne prend pas en charge le routage privé.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send notifications" xml:space="preserve">
@@ -5207,6 +5240,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server address is incompatible with network settings." xml:space="preserve">
<source>Server address is incompatible with network settings.</source>
<target>L'adresse du serveur est incompatible avec les paramètres du réseau.</target>
<note>srv error text.</note>
</trans-unit>
<trans-unit id="Server requires authorization to create queues, check password" xml:space="preserve">
@@ -5226,6 +5260,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server version is incompatible with network settings." xml:space="preserve">
<source>Server version is incompatible with network settings.</source>
<target>La version du serveur est incompatible avec les paramètres du réseau.</target>
<note>srv error text</note>
</trans-unit>
<trans-unit id="Servers" xml:space="preserve">
@@ -5350,6 +5385,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show message status" xml:space="preserve">
<source>Show message status</source>
<target>Afficher le statut du message</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show preview" xml:space="preserve">
@@ -5359,6 +5395,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show → on messages sent via private routing." xml:space="preserve">
<source>Show → on messages sent via private routing.</source>
<target>Afficher → sur les messages envoyés via le routage privé.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show:" xml:space="preserve">
@@ -5685,6 +5722,7 @@ Cela peut se produire en raison d'un bug ou lorsque la connexion est compromise.
</trans-unit>
<trans-unit id="The app will ask to confirm downloads from unknown file servers (except .onion)." xml:space="preserve">
<source>The app will ask to confirm downloads from unknown file servers (except .onion).</source>
<target>L'application demandera de confirmer les téléchargements à partir de serveurs de fichiers inconnus (sauf .onion).</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="The attempt to change database passphrase was not completed." xml:space="preserve">
@@ -5874,6 +5912,7 @@ Cela peut se produire en raison d'un bug ou lorsque la connexion est compromise.
</trans-unit>
<trans-unit id="To protect your IP address, private routing uses your SMP servers to deliver messages." xml:space="preserve">
<source>To protect your IP address, private routing uses your SMP servers to deliver messages.</source>
<target>Pour protéger votre adresse IP, le routage privé utilise vos serveurs SMP pour délivrer les messages.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="To protect your information, turn on SimpleX Lock.&#10;You will be prompted to complete authentication before this feature is enabled." xml:space="preserve">
@@ -6015,6 +6054,7 @@ Vous serez invité à confirmer l'authentification avant que cette fonction ne s
</trans-unit>
<trans-unit id="Unknown servers!" xml:space="preserve">
<source>Unknown servers!</source>
<target>Serveurs inconnus!</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Unless you use iOS call interface, enable Do Not Disturb mode to avoid interruptions." xml:space="preserve">
@@ -6166,10 +6206,12 @@ Pour vous connecter, veuillez demander à votre contact de créer un autre lien
</trans-unit>
<trans-unit id="Use private routing with unknown servers when IP address is not protected." xml:space="preserve">
<source>Use private routing with unknown servers when IP address is not protected.</source>
<target>Utiliser le routage privé avec des serveurs inconnus lorsque l'adresse IP n'est pas protégée.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use private routing with unknown servers." xml:space="preserve">
<source>Use private routing with unknown servers.</source>
<target>Utiliser le routage privé avec des serveurs inconnus.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use server" xml:space="preserve">
@@ -6409,10 +6451,12 @@ Pour vous connecter, veuillez demander à votre contact de créer un autre lien
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to file servers." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to file servers.</source>
<target>Sans Tor ou un VPN, votre adresse IP sera visible par les serveurs de fichiers.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to these XFTP relays: %@.</source>
<target>Sans Tor ni VPN, votre adresse IP sera visible par ces relais XFTP: %@.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Wrong database passphrase" xml:space="preserve">
@@ -6422,6 +6466,7 @@ Pour vous connecter, veuillez demander à votre contact de créer un autre lien
</trans-unit>
<trans-unit id="Wrong key or unknown connection - most likely this connection is deleted." xml:space="preserve">
<source>Wrong key or unknown connection - most likely this connection is deleted.</source>
<target>Clé erronée ou connexion non identifiée - il est très probable que cette connexion soit supprimée.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Wrong passphrase!" xml:space="preserve">
@@ -7539,6 +7584,12 @@ Les serveurs SimpleX ne peuvent pas voir votre profil.</target>
<target>envoyer un message direct</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<target>a changé d'adresse de contact</target>
@@ -7581,6 +7632,7 @@ Les serveurs SimpleX ne peuvent pas voir votre profil.</target>
</trans-unit>
<trans-unit id="unknown relays" xml:space="preserve">
<source>unknown relays</source>
<target>relais inconnus</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="unknown status" xml:space="preserve">
@@ -7590,6 +7642,7 @@ Les serveurs SimpleX ne peuvent pas voir votre profil.</target>
</trans-unit>
<trans-unit id="unprotected" xml:space="preserve">
<source>unprotected</source>
<target>non protégé</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="updated group profile" xml:space="preserve">
@@ -7659,6 +7712,7 @@ Les serveurs SimpleX ne peuvent pas voir votre profil.</target>
</trans-unit>
<trans-unit id="when IP hidden" xml:space="preserve">
<source>when IP hidden</source>
<target>lorsque l'IP est masquée</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="yes" xml:space="preserve">
@@ -349,7 +349,7 @@
</trans-unit>
<trans-unit id="**Most private**: do not use SimpleX Chat notifications server, check messages periodically in the background (depends on how often you use the app)." xml:space="preserve">
<source>**Most private**: do not use SimpleX Chat notifications server, check messages periodically in the background (depends on how often you use the app).</source>
<target>**Legprivátabb**: ne használja a SimpleX Chat értesítési szervert, rendszeresen ellenőrizze az üzeneteket a háttérben (attól függően, hogy milyen gyakran használja az alkalmazást).</target>
<target>**Legprivátabb**: ne használja a SimpleX Chat értesítési kiszolgálót, rendszeresen ellenőrizze az üzeneteket a háttérben (attól függően, hogy milyen gyakran használja az alkalmazást).</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="**Please note**: using the same database on two devices will break the decryption of messages from your connections, as a security protection." xml:space="preserve">
@@ -364,7 +364,7 @@
</trans-unit>
<trans-unit id="**Recommended**: device token and notifications are sent to SimpleX Chat notification server, but not the message content, size or who it is from." xml:space="preserve">
<source>**Recommended**: device token and notifications are sent to SimpleX Chat notification server, but not the message content, size or who it is from.</source>
<target>**Javasolt**: az eszköztoken és az értesítések elküldésre kerülnek a SimpleX Chat értesítési szerverre, kivéve az üzenet tartalma, mérete vagy az, hogy kitől származik.</target>
<target>**Javasolt**: az eszköztoken és az értesítések elküldésre kerülnek a SimpleX Chat értesítési kiszolgálóra, kivéve az üzenet tartalma, mérete vagy az, hogy kitől származik.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="**Warning**: Instant push notifications require passphrase saved in Keychain." xml:space="preserve">
@@ -715,6 +715,7 @@
</trans-unit>
<trans-unit id="Allow downgrade" xml:space="preserve">
<source>Allow downgrade</source>
<target>Korábbi verzióra történő visszatérés engedélyezése</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Allow irreversible message deletion only if your contact allows it to you. (24 hours)" xml:space="preserve">
@@ -814,6 +815,7 @@
</trans-unit>
<trans-unit id="Always use private routing." xml:space="preserve">
<source>Always use private routing.</source>
<target>Mindig használjon privát útválasztást.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Always use relay" xml:space="preserve">
@@ -1098,6 +1100,7 @@
</trans-unit>
<trans-unit id="Capacity exceeded - recipient did not receive previously sent messages." xml:space="preserve">
<source>Capacity exceeded - recipient did not receive previously sent messages.</source>
<target>Kapacitás túllépés - a címzett nem kapta meg a korábban elküldött üzeneteket.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Cellular" xml:space="preserve">
@@ -1223,7 +1226,7 @@
</trans-unit>
<trans-unit id="Choose _Migrate from another device_ on the new device and scan QR code." xml:space="preserve">
<source>Choose _Migrate from another device_ on the new device and scan QR code.</source>
<target>Válassza az _Átköltöztetés egy másik eszközről_ opciót az új eszközön és szkennelje be a QR-kódot.</target>
<target>Válassza az _Átköltöztetés egy másik eszközről_ opciót az új eszközön és olvassa be a QR-kódot.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Choose file" xml:space="preserve">
@@ -1243,17 +1246,17 @@
</trans-unit>
<trans-unit id="Clear conversation" xml:space="preserve">
<source>Clear conversation</source>
<target>Beszélgetés kiürítése</target>
<target>Üzenetek kiürítése</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Clear conversation?" xml:space="preserve">
<source>Clear conversation?</source>
<target>Beszélgetés kiürítése?</target>
<target>Üzenetek kiürítése?</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Clear private notes?" xml:space="preserve">
<source>Clear private notes?</source>
<target>Privát jegyzetek törlése?</target>
<target>Privát jegyzetek kiürítése?</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Clear verification" xml:space="preserve">
@@ -1298,6 +1301,7 @@
</trans-unit>
<trans-unit id="Confirm files from unknown servers." xml:space="preserve">
<source>Confirm files from unknown servers.</source>
<target>Ismeretlen kiszolgálókról származó fájlok jóváhagyása.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Confirm network settings" xml:space="preserve">
@@ -1717,6 +1721,10 @@ Ez az egyszer használatos hivatkozása!</target>
<target>Az adatbázis az alkalmazás újraindításakor migrálásra kerül</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>Decentralizált</target>
@@ -1966,6 +1974,7 @@ Ez a művelet nem vonható vissza!</target>
</trans-unit>
<trans-unit id="Destination server error: %@" xml:space="preserve">
<source>Destination server error: %@</source>
<target>Célkiszolgáló hiba: %@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Develop" xml:space="preserve">
@@ -2075,6 +2084,7 @@ Ez a művelet nem vonható vissza!</target>
</trans-unit>
<trans-unit id="Do NOT send messages directly, even if your or destination server does not support private routing." xml:space="preserve">
<source>Do NOT send messages directly, even if your or destination server does not support private routing.</source>
<target>Ne küldjön üzeneteket közvetlenül, még akkor sem, ha az ön kiszolgálója vagy a célkiszolgáló nem támogatja a privát útválasztást.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do NOT use SimpleX for emergency calls." xml:space="preserve">
@@ -2084,6 +2094,7 @@ Ez a művelet nem vonható vissza!</target>
</trans-unit>
<trans-unit id="Do NOT use private routing." xml:space="preserve">
<source>Do NOT use private routing.</source>
<target>Ne használjon privát útválasztást.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do it later" xml:space="preserve">
@@ -2743,6 +2754,7 @@ Ez a művelet nem vonható vissza!</target>
</trans-unit>
<trans-unit id="Files" xml:space="preserve">
<source>Files</source>
<target>Fájlok</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Files &amp; media" xml:space="preserve">
@@ -2853,11 +2865,15 @@ Ez a művelet nem vonható vissza!</target>
<trans-unit id="Forwarding server: %@&#10;Destination server error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Destination server error: %2$@</source>
<target>Továbbító kiszolgáló: %1$@
Célkiszolgáló hiba:%2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Forwarding server: %@&#10;Error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Error: %2$@</source>
<target>Továbbító kiszolgáló: %1$@
Hiba: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Found desktop" xml:space="preserve">
@@ -3607,7 +3623,7 @@ Ez az ön hivatkozása a(z) %@ csoporthoz!</target>
</trans-unit>
<trans-unit id="Make sure %@ server addresses are in correct format, line separated and are not duplicated (%@)." xml:space="preserve">
<source>Make sure %@ server addresses are in correct format, line separated and are not duplicated (%@).</source>
<target>Győződjön meg arról, hogy a %@ szervercímek megfelelő formátumúak, sorszeparáltak és nem duplikáltak (%@).</target>
<target>Győződjön meg arról, hogy a %@ kiszolgálócímek megfelelő formátumúak, sorszeparáltak és nem duplikáltak (%@).</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Make sure WebRTC ICE server addresses are in correct format, line separated and are not duplicated." xml:space="preserve">
@@ -3627,7 +3643,7 @@ Ez az ön hivatkozása a(z) %@ csoporthoz!</target>
</trans-unit>
<trans-unit id="Mark read" xml:space="preserve">
<source>Mark read</source>
<target>Olvasottként jelölés</target>
<target>Olvasottnak jelölés</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Mark verified" xml:space="preserve">
@@ -3677,6 +3693,7 @@ Ez az ön hivatkozása a(z) %@ csoporthoz!</target>
</trans-unit>
<trans-unit id="Message delivery warning" xml:space="preserve">
<source>Message delivery warning</source>
<target>Üzenet kézbesítési figyelmeztetés</target>
<note>item status text</note>
</trans-unit>
<trans-unit id="Message draft" xml:space="preserve">
@@ -3684,6 +3701,10 @@ Ez az ön hivatkozása a(z) %@ csoporthoz!</target>
<target>Üzenetvázlat</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>Üzenetreakciók</target>
@@ -3701,10 +3722,12 @@ Ez az ön hivatkozása a(z) %@ csoporthoz!</target>
</trans-unit>
<trans-unit id="Message routing fallback" xml:space="preserve">
<source>Message routing fallback</source>
<target>Üzenet útválasztási tartalék</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message routing mode" xml:space="preserve">
<source>Message routing mode</source>
<target>Üzenet útválasztási mód</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message source remains private." xml:space="preserve">
@@ -3739,12 +3762,12 @@ Ez az ön hivatkozása a(z) %@ csoporthoz!</target>
</trans-unit>
<trans-unit id="Messages, files and calls are protected by **end-to-end encryption** with perfect forward secrecy, repudiation and break-in recovery." xml:space="preserve">
<source>Messages, files and calls are protected by **end-to-end encryption** with perfect forward secrecy, repudiation and break-in recovery.</source>
<target>Az üzeneteket, fájlokat és hívásokat **végpontok közötti titkosítással** és sérülés utáni titkosságvédelemmel, visszautasítással és sérülés utáni helyreállítással védi.</target>
<target>Az üzeneteket, fájlokat és hívásokat **végpontok közötti titkosítással**, sérülés utáni titkosság-védelemmel és -helyreállítással, továbbá visszautasítással védi.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Messages, files and calls are protected by **quantum resistant e2e encryption** with perfect forward secrecy, repudiation and break-in recovery." xml:space="preserve">
<source>Messages, files and calls are protected by **quantum resistant e2e encryption** with perfect forward secrecy, repudiation and break-in recovery.</source>
<target>Az üzeneteket, fájlokat és hívásokat **végpontok közötti kvantumrezisztens titkosítással** és sérülés utáni titkosságvédelemmel, visszautasítással és sérülés utáni helyreállítással védi.</target>
<target>Az üzeneteket, fájlokat és hívásokat **végpontok közötti kvantumrezisztens titkosítással**, sérülés utáni titkosság-védelemmel és -helyreállítással, továbbá visszautasítással védi.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Migrate device" xml:space="preserve">
@@ -3869,6 +3892,7 @@ Ez az ön hivatkozása a(z) %@ csoporthoz!</target>
</trans-unit>
<trans-unit id="Network issues - message expired after many attempts to send it." xml:space="preserve">
<source>Network issues - message expired after many attempts to send it.</source>
<target>Hálózati problémák - az üzenet többszöri elküldési kísérlet után lejárt.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Network management" xml:space="preserve">
@@ -4414,10 +4438,12 @@ Hiba: %@</target>
</trans-unit>
<trans-unit id="Private message routing" xml:space="preserve">
<source>Private message routing</source>
<target>Privát üzenet útválasztás</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private message routing 🚀" xml:space="preserve">
<source>Private message routing 🚀</source>
<target>Privát üzenet útválasztás 🚀</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private notes" xml:space="preserve">
@@ -4427,6 +4453,7 @@ Hiba: %@</target>
</trans-unit>
<trans-unit id="Private routing" xml:space="preserve">
<source>Private routing</source>
<target>Privát útválasztás</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Profile and server connections" xml:space="preserve">
@@ -4511,6 +4538,7 @@ Hiba: %@</target>
</trans-unit>
<trans-unit id="Protect IP address" xml:space="preserve">
<source>Protect IP address</source>
<target>Az IP-cím védelme</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect app screen" xml:space="preserve">
@@ -4521,6 +4549,8 @@ Hiba: %@</target>
<trans-unit id="Protect your IP address from the messaging relays chosen by your contacts.&#10;Enable in *Network &amp; servers* settings." xml:space="preserve">
<source>Protect your IP address from the messaging relays chosen by your contacts.
Enable in *Network &amp; servers* settings.</source>
<target>Védje IP-címét az ismerősei által kiválasztott üzenetküldő átjátszókkal szemben.
Engedélyezze a beállításokban a *Hálózat és kiszolgálók* menüpontban.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect your chat profiles with a password!" xml:space="preserve">
@@ -4865,6 +4895,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Safely receive files" xml:space="preserve">
<source>Safely receive files</source>
<target>Fájlok biztonságos fogadása</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Safer groups" xml:space="preserve">
@@ -5094,10 +5125,12 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Send messages directly when IP address is protected and your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when IP address is protected and your or destination server does not support private routing.</source>
<target>Közvetlen üzenetküldés, ha az IP-cím védett és az ön kiszolgálója vagy a célkiszolgáló nem támogatja a privát útválasztást.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send messages directly when your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when your or destination server does not support private routing.</source>
<target>Közvetlen üzenetküldés, ha az ön kiszolgálója vagy a célkiszolgáló nem támogatja a privát útválasztást.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send notifications" xml:space="preserve">
@@ -5207,6 +5240,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server address is incompatible with network settings." xml:space="preserve">
<source>Server address is incompatible with network settings.</source>
<target>A kiszolgáló címe nem kompatibilis a hálózati beállításokkal.</target>
<note>srv error text.</note>
</trans-unit>
<trans-unit id="Server requires authorization to create queues, check password" xml:space="preserve">
@@ -5226,6 +5260,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server version is incompatible with network settings." xml:space="preserve">
<source>Server version is incompatible with network settings.</source>
<target>A kiszolgáló verziója nem kompatibilis a hálózati beállításokkal.</target>
<note>srv error text</note>
</trans-unit>
<trans-unit id="Servers" xml:space="preserve">
@@ -5350,6 +5385,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show message status" xml:space="preserve">
<source>Show message status</source>
<target>Üzenet állapot megjelenítése</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show preview" xml:space="preserve">
@@ -5359,6 +5395,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show → on messages sent via private routing." xml:space="preserve">
<source>Show → on messages sent via private routing.</source>
<target>Egy „→” jel megjelenítése a privát útválasztáson keresztül küldött üzeneteknél.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show:" xml:space="preserve">
@@ -5685,6 +5722,7 @@ Ez valamilyen hiba, vagy sérült kapcsolat esetén fordulhat elő.</target>
</trans-unit>
<trans-unit id="The app will ask to confirm downloads from unknown file servers (except .onion)." xml:space="preserve">
<source>The app will ask to confirm downloads from unknown file servers (except .onion).</source>
<target>Az alkalmazás kérni fogja az ismeretlen fájlkiszolgálókról (kivéve .onion) történő letöltések megerősítését.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="The attempt to change database passphrase was not completed." xml:space="preserve">
@@ -5874,6 +5912,7 @@ Ez valamilyen hiba, vagy sérült kapcsolat esetén fordulhat elő.</target>
</trans-unit>
<trans-unit id="To protect your IP address, private routing uses your SMP servers to deliver messages." xml:space="preserve">
<source>To protect your IP address, private routing uses your SMP servers to deliver messages.</source>
<target>Az IP-címe védelme érdekében a privát útválasztás az SMP-kiszolgálókat használja az üzenetek kézbesítéséhez.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="To protect your information, turn on SimpleX Lock.&#10;You will be prompted to complete authentication before this feature is enabled." xml:space="preserve">
@@ -5900,7 +5939,7 @@ A funkció engedélyezése előtt a rendszer felszólítja a hitelesítés befej
</trans-unit>
<trans-unit id="To verify end-to-end encryption with your contact compare (or scan) the code on your devices." xml:space="preserve">
<source>To verify end-to-end encryption with your contact compare (or scan) the code on your devices.</source>
<target>A végpontok közötti titkosítás ellenőrzéséhez ismerősével hasonlítsa össze (vagy szkennelje be) az eszközén lévő kódot.</target>
<target>A végpontok közötti titkosítás ellenőrzéséhez hasonlítsa össze (vagy olvassa be a QR-kódot) az ismerőse eszközén lévő kóddal.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Toggle incognito when connecting." xml:space="preserve">
@@ -6015,6 +6054,7 @@ A funkció engedélyezése előtt a rendszer felszólítja a hitelesítés befej
</trans-unit>
<trans-unit id="Unknown servers!" xml:space="preserve">
<source>Unknown servers!</source>
<target>Ismeretlen kiszolgálók!</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Unless you use iOS call interface, enable Do Not Disturb mode to avoid interruptions." xml:space="preserve">
@@ -6091,7 +6131,7 @@ A kapcsolódáshoz kérje meg ismerősét, hogy hozzon létre egy másik kapcsol
</trans-unit>
<trans-unit id="Updating settings will re-connect the client to all servers." xml:space="preserve">
<source>Updating settings will re-connect the client to all servers.</source>
<target>A beállítások frissítése a szerverekhez újra kapcsolódással jár.</target>
<target>A beállítások frissítése a kiszolgálókhoz való újra kapcsolódással jár.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Updating this setting will re-connect the client to all servers." xml:space="preserve">
@@ -6166,10 +6206,12 @@ A kapcsolódáshoz kérje meg ismerősét, hogy hozzon létre egy másik kapcsol
</trans-unit>
<trans-unit id="Use private routing with unknown servers when IP address is not protected." xml:space="preserve">
<source>Use private routing with unknown servers when IP address is not protected.</source>
<target>Privát útválasztás használata ismeretlen kiszolgálókkal, ha az IP-cím nem védett.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use private routing with unknown servers." xml:space="preserve">
<source>Use private routing with unknown servers.</source>
<target>Használjon privát útválasztást ismeretlen kiszolgálókkal.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use server" xml:space="preserve">
@@ -6409,10 +6451,12 @@ A kapcsolódáshoz kérje meg ismerősét, hogy hozzon létre egy másik kapcsol
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to file servers." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to file servers.</source>
<target>Tor vagy VPN nélkül az IP-címe látható lesz a fájlkiszolgálók számára.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to these XFTP relays: %@.</source>
<target>Tor vagy VPN nélkül az IP-címe látható lesz ezen XFTP átjátszók számára: %@.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Wrong database passphrase" xml:space="preserve">
@@ -6422,6 +6466,7 @@ A kapcsolódáshoz kérje meg ismerősét, hogy hozzon létre egy másik kapcsol
</trans-unit>
<trans-unit id="Wrong key or unknown connection - most likely this connection is deleted." xml:space="preserve">
<source>Wrong key or unknown connection - most likely this connection is deleted.</source>
<target>Rossz kulcs vagy ismeretlen kapcsolat - valószínűleg ez a kapcsolat törlődött.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Wrong passphrase!" xml:space="preserve">
@@ -6598,7 +6643,7 @@ Csatlakozási kérés megismétlése?</target>
</trans-unit>
<trans-unit id="You control through which server(s) **to receive** the messages, your contacts the servers you use to message them." xml:space="preserve">
<source>You control through which server(s) **to receive** the messages, your contacts the servers you use to message them.</source>
<target>Ön szabályozhatja, hogy mely kiszogál(ók)ón keresztül **kapja** az üzeneteket, az ismerősöket - az üzenetküldéshez használt szervereken.</target>
<target>Ön szabályozhatja, hogy mely kiszogál(ók)ón keresztül **kapja** az üzeneteket, az ismerősöket - az üzenetküldéshez használt kiszolgálókon.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="You could not be verified; please try again." xml:space="preserve">
@@ -7539,6 +7584,12 @@ A SimpleX kiszolgálók nem látjhatják profilját.</target>
<target>közvetlen üzenet küldése</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<target>új kapcsolattartási azonosító beállítása</target>
@@ -7581,6 +7632,7 @@ A SimpleX kiszolgálók nem látjhatják profilját.</target>
</trans-unit>
<trans-unit id="unknown relays" xml:space="preserve">
<source>unknown relays</source>
<target>ismeretlen átjátszók</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="unknown status" xml:space="preserve">
@@ -7590,6 +7642,7 @@ A SimpleX kiszolgálók nem látjhatják profilját.</target>
</trans-unit>
<trans-unit id="unprotected" xml:space="preserve">
<source>unprotected</source>
<target>nem védett</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="updated group profile" xml:space="preserve">
@@ -7659,6 +7712,7 @@ A SimpleX kiszolgálók nem látjhatják profilját.</target>
</trans-unit>
<trans-unit id="when IP hidden" xml:space="preserve">
<source>when IP hidden</source>
<target>ha az IP-cím rejtett</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="yes" xml:space="preserve">
@@ -715,6 +715,7 @@
</trans-unit>
<trans-unit id="Allow downgrade" xml:space="preserve">
<source>Allow downgrade</source>
<target>Consenti downgrade</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Allow irreversible message deletion only if your contact allows it to you. (24 hours)" xml:space="preserve">
@@ -814,6 +815,7 @@
</trans-unit>
<trans-unit id="Always use private routing." xml:space="preserve">
<source>Always use private routing.</source>
<target>Usa sempre l'instradamento privato.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Always use relay" xml:space="preserve">
@@ -1098,6 +1100,7 @@
</trans-unit>
<trans-unit id="Capacity exceeded - recipient did not receive previously sent messages." xml:space="preserve">
<source>Capacity exceeded - recipient did not receive previously sent messages.</source>
<target>Quota superata - il destinatario non ha ricevuto i messaggi precedentemente inviati.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Cellular" xml:space="preserve">
@@ -1298,6 +1301,7 @@
</trans-unit>
<trans-unit id="Confirm files from unknown servers." xml:space="preserve">
<source>Confirm files from unknown servers.</source>
<target>Conferma i file da server sconosciuti.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Confirm network settings" xml:space="preserve">
@@ -1717,6 +1721,10 @@ Questo è il tuo link una tantum!</target>
<target>Il database verrà migrato al riavvio dell'app</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>Decentralizzato</target>
@@ -1966,6 +1974,7 @@ Non è reversibile!</target>
</trans-unit>
<trans-unit id="Destination server error: %@" xml:space="preserve">
<source>Destination server error: %@</source>
<target>Errore del server di destinazione: %@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Develop" xml:space="preserve">
@@ -2075,6 +2084,7 @@ Non è reversibile!</target>
</trans-unit>
<trans-unit id="Do NOT send messages directly, even if your or destination server does not support private routing." xml:space="preserve">
<source>Do NOT send messages directly, even if your or destination server does not support private routing.</source>
<target>NON inviare messaggi direttamente, anche se il tuo server o quello di destinazione non supporta l'instradamento privato.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do NOT use SimpleX for emergency calls." xml:space="preserve">
@@ -2084,6 +2094,7 @@ Non è reversibile!</target>
</trans-unit>
<trans-unit id="Do NOT use private routing." xml:space="preserve">
<source>Do NOT use private routing.</source>
<target>NON usare l'instradamento privato.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do it later" xml:space="preserve">
@@ -2743,6 +2754,7 @@ Non è reversibile!</target>
</trans-unit>
<trans-unit id="Files" xml:space="preserve">
<source>Files</source>
<target>File</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Files &amp; media" xml:space="preserve">
@@ -2853,11 +2865,15 @@ Non è reversibile!</target>
<trans-unit id="Forwarding server: %@&#10;Destination server error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Destination server error: %2$@</source>
<target>Server di inoltro: %1$@
Errore del server di destinazione: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Forwarding server: %@&#10;Error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Error: %2$@</source>
<target>Server di inoltro: %1$@
Errore: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Found desktop" xml:space="preserve">
@@ -3677,6 +3693,7 @@ Questo è il tuo link per il gruppo %@!</target>
</trans-unit>
<trans-unit id="Message delivery warning" xml:space="preserve">
<source>Message delivery warning</source>
<target>Avviso di consegna del messaggio</target>
<note>item status text</note>
</trans-unit>
<trans-unit id="Message draft" xml:space="preserve">
@@ -3684,6 +3701,10 @@ Questo è il tuo link per il gruppo %@!</target>
<target>Bozza dei messaggi</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>Reazioni ai messaggi</target>
@@ -3701,10 +3722,12 @@ Questo è il tuo link per il gruppo %@!</target>
</trans-unit>
<trans-unit id="Message routing fallback" xml:space="preserve">
<source>Message routing fallback</source>
<target>Ripiego instradamento messaggio</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message routing mode" xml:space="preserve">
<source>Message routing mode</source>
<target>Modalità instradamento messaggio</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message source remains private." xml:space="preserve">
@@ -3869,6 +3892,7 @@ Questo è il tuo link per il gruppo %@!</target>
</trans-unit>
<trans-unit id="Network issues - message expired after many attempts to send it." xml:space="preserve">
<source>Network issues - message expired after many attempts to send it.</source>
<target>Problemi di rete - messaggio scaduto dopo molti tentativi di inviarlo.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Network management" xml:space="preserve">
@@ -4414,10 +4438,12 @@ Errore: %@</target>
</trans-unit>
<trans-unit id="Private message routing" xml:space="preserve">
<source>Private message routing</source>
<target>Instradamento privato messaggi</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private message routing 🚀" xml:space="preserve">
<source>Private message routing 🚀</source>
<target>Instradamento privato dei messaggi 🚀</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private notes" xml:space="preserve">
@@ -4427,6 +4453,7 @@ Errore: %@</target>
</trans-unit>
<trans-unit id="Private routing" xml:space="preserve">
<source>Private routing</source>
<target>Instradamento privato</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Profile and server connections" xml:space="preserve">
@@ -4511,6 +4538,7 @@ Errore: %@</target>
</trans-unit>
<trans-unit id="Protect IP address" xml:space="preserve">
<source>Protect IP address</source>
<target>Proteggi l'indirizzo IP</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect app screen" xml:space="preserve">
@@ -4521,6 +4549,8 @@ Errore: %@</target>
<trans-unit id="Protect your IP address from the messaging relays chosen by your contacts.&#10;Enable in *Network &amp; servers* settings." xml:space="preserve">
<source>Protect your IP address from the messaging relays chosen by your contacts.
Enable in *Network &amp; servers* settings.</source>
<target>Proteggi il tuo indirizzo IP dai relay di messaggistica scelti dai tuoi contatti.
Attivalo nelle impostazioni *Rete e server*.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect your chat profiles with a password!" xml:space="preserve">
@@ -4865,6 +4895,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Safely receive files" xml:space="preserve">
<source>Safely receive files</source>
<target>Ricevi i file in sicurezza</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Safer groups" xml:space="preserve">
@@ -5094,10 +5125,12 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Send messages directly when IP address is protected and your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when IP address is protected and your or destination server does not support private routing.</source>
<target>Invia messaggi direttamente quando l'indirizzo IP è protetto e il tuo server o quello di destinazione non supporta l'instradamento privato.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send messages directly when your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when your or destination server does not support private routing.</source>
<target>Invia messaggi direttamente quando il tuo server o quello di destinazione non supporta l'instradamento privato.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send notifications" xml:space="preserve">
@@ -5207,6 +5240,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server address is incompatible with network settings." xml:space="preserve">
<source>Server address is incompatible with network settings.</source>
<target>L'indirizzo del server non è compatibile con le impostazioni di rete.</target>
<note>srv error text.</note>
</trans-unit>
<trans-unit id="Server requires authorization to create queues, check password" xml:space="preserve">
@@ -5226,6 +5260,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server version is incompatible with network settings." xml:space="preserve">
<source>Server version is incompatible with network settings.</source>
<target>La versione del server non è compatibile con le impostazioni di rete.</target>
<note>srv error text</note>
</trans-unit>
<trans-unit id="Servers" xml:space="preserve">
@@ -5350,6 +5385,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show message status" xml:space="preserve">
<source>Show message status</source>
<target>Mostra stato del messaggio</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show preview" xml:space="preserve">
@@ -5359,6 +5395,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show → on messages sent via private routing." xml:space="preserve">
<source>Show → on messages sent via private routing.</source>
<target>Mostra → nei messaggi inviati via instradamento privato.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show:" xml:space="preserve">
@@ -5685,6 +5722,7 @@ Può accadere a causa di qualche bug o quando la connessione è compromessa.</ta
</trans-unit>
<trans-unit id="The app will ask to confirm downloads from unknown file servers (except .onion)." xml:space="preserve">
<source>The app will ask to confirm downloads from unknown file servers (except .onion).</source>
<target>L'app chiederà di confermare i download da server di file sconosciuti (eccetto .onion).</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="The attempt to change database passphrase was not completed." xml:space="preserve">
@@ -5874,6 +5912,7 @@ Può accadere a causa di qualche bug o quando la connessione è compromessa.</ta
</trans-unit>
<trans-unit id="To protect your IP address, private routing uses your SMP servers to deliver messages." xml:space="preserve">
<source>To protect your IP address, private routing uses your SMP servers to deliver messages.</source>
<target>Per proteggere il tuo indirizzo IP, l'instradamento privato usa i tuoi server SMP per consegnare i messaggi.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="To protect your information, turn on SimpleX Lock.&#10;You will be prompted to complete authentication before this feature is enabled." xml:space="preserve">
@@ -6015,6 +6054,7 @@ Ti verrà chiesto di completare l'autenticazione prima di attivare questa funzio
</trans-unit>
<trans-unit id="Unknown servers!" xml:space="preserve">
<source>Unknown servers!</source>
<target>Server sconosciuti!</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Unless you use iOS call interface, enable Do Not Disturb mode to avoid interruptions." xml:space="preserve">
@@ -6166,10 +6206,12 @@ Per connetterti, chiedi al tuo contatto di creare un altro link di connessione e
</trans-unit>
<trans-unit id="Use private routing with unknown servers when IP address is not protected." xml:space="preserve">
<source>Use private routing with unknown servers when IP address is not protected.</source>
<target>Usa l'instradamento privato con server sconosciuti quando l'indirizzo IP non è protetto.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use private routing with unknown servers." xml:space="preserve">
<source>Use private routing with unknown servers.</source>
<target>Usa l'instradamento privato con server sconosciuti.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use server" xml:space="preserve">
@@ -6409,10 +6451,12 @@ Per connetterti, chiedi al tuo contatto di creare un altro link di connessione e
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to file servers." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to file servers.</source>
<target>Senza Tor o VPN, il tuo indirizzo IP sarà visibile ai server di file.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to these XFTP relays: %@.</source>
<target>Senza Tor o VPN, il tuo indirizzo IP sarà visibile a questi relay XFTP: %@.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Wrong database passphrase" xml:space="preserve">
@@ -6422,6 +6466,7 @@ Per connetterti, chiedi al tuo contatto di creare un altro link di connessione e
</trans-unit>
<trans-unit id="Wrong key or unknown connection - most likely this connection is deleted." xml:space="preserve">
<source>Wrong key or unknown connection - most likely this connection is deleted.</source>
<target>Chiave sbagliata o connessione sconosciuta - molto probabilmente questa connessione è stata eliminata.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Wrong passphrase!" xml:space="preserve">
@@ -7539,6 +7584,12 @@ I server di SimpleX non possono vedere il tuo profilo.</target>
<target>invia messaggio diretto</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<target>impostato nuovo indirizzo di contatto</target>
@@ -7581,6 +7632,7 @@ I server di SimpleX non possono vedere il tuo profilo.</target>
</trans-unit>
<trans-unit id="unknown relays" xml:space="preserve">
<source>unknown relays</source>
<target>relay sconosciuti</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="unknown status" xml:space="preserve">
@@ -7590,6 +7642,7 @@ I server di SimpleX non possono vedere il tuo profilo.</target>
</trans-unit>
<trans-unit id="unprotected" xml:space="preserve">
<source>unprotected</source>
<target>non protetto</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="updated group profile" xml:space="preserve">
@@ -7659,6 +7712,7 @@ I server di SimpleX non possono vedere il tuo profilo.</target>
</trans-unit>
<trans-unit id="when IP hidden" xml:space="preserve">
<source>when IP hidden</source>
<target>quando l'IP è nascosto</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="yes" xml:space="preserve">
@@ -1664,6 +1664,10 @@ This is your own one-time link!</source>
<target>データベースはアプリ再起動時に移行されます</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>分散型</target>
@@ -3555,6 +3559,10 @@ This is your link for group %@!</source>
<target>メッセージの下書き</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>メッセージへのリアクション</target>
@@ -7249,6 +7257,12 @@ SimpleX サーバーはあなたのプロファイルを参照できません。
<source>send direct message</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<note>profile update event chat item</note>
@@ -715,6 +715,7 @@
</trans-unit>
<trans-unit id="Allow downgrade" xml:space="preserve">
<source>Allow downgrade</source>
<target>Downgraden toestaan</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Allow irreversible message deletion only if your contact allows it to you. (24 hours)" xml:space="preserve">
@@ -814,6 +815,7 @@
</trans-unit>
<trans-unit id="Always use private routing." xml:space="preserve">
<source>Always use private routing.</source>
<target>Gebruik altijd privéroutering.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Always use relay" xml:space="preserve">
@@ -1098,6 +1100,7 @@
</trans-unit>
<trans-unit id="Capacity exceeded - recipient did not receive previously sent messages." xml:space="preserve">
<source>Capacity exceeded - recipient did not receive previously sent messages.</source>
<target>Capaciteit overschreden - ontvanger heeft eerder verzonden berichten niet ontvangen.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Cellular" xml:space="preserve">
@@ -1298,6 +1301,7 @@
</trans-unit>
<trans-unit id="Confirm files from unknown servers." xml:space="preserve">
<source>Confirm files from unknown servers.</source>
<target>Bevestig bestanden van onbekende servers.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Confirm network settings" xml:space="preserve">
@@ -1717,6 +1721,10 @@ Dit is uw eigen eenmalige link!</target>
<target>De database wordt gemigreerd wanneer de app opnieuw wordt opgestart</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>Gedecentraliseerd</target>
@@ -1966,6 +1974,7 @@ Dit kan niet ongedaan gemaakt worden!</target>
</trans-unit>
<trans-unit id="Destination server error: %@" xml:space="preserve">
<source>Destination server error: %@</source>
<target>Bestemmingsserverfout: %@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Develop" xml:space="preserve">
@@ -2075,6 +2084,7 @@ Dit kan niet ongedaan gemaakt worden!</target>
</trans-unit>
<trans-unit id="Do NOT send messages directly, even if your or destination server does not support private routing." xml:space="preserve">
<source>Do NOT send messages directly, even if your or destination server does not support private routing.</source>
<target>Stuur GEEN berichten rechtstreeks, zelfs als uw of de bestemmingsserver geen privéroutering ondersteunt.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do NOT use SimpleX for emergency calls." xml:space="preserve">
@@ -2084,6 +2094,7 @@ Dit kan niet ongedaan gemaakt worden!</target>
</trans-unit>
<trans-unit id="Do NOT use private routing." xml:space="preserve">
<source>Do NOT use private routing.</source>
<target>Gebruik GEEN privéroutering.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do it later" xml:space="preserve">
@@ -2743,6 +2754,7 @@ Dit kan niet ongedaan gemaakt worden!</target>
</trans-unit>
<trans-unit id="Files" xml:space="preserve">
<source>Files</source>
<target>Bestanden</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Files &amp; media" xml:space="preserve">
@@ -2853,11 +2865,15 @@ Dit kan niet ongedaan gemaakt worden!</target>
<trans-unit id="Forwarding server: %@&#10;Destination server error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Destination server error: %2$@</source>
<target>Doorstuurserver: %1$@
Bestemmingsserverfout: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Forwarding server: %@&#10;Error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Error: %2$@</source>
<target>Doorstuurserver: %1$@
Fout: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Found desktop" xml:space="preserve">
@@ -3677,6 +3693,7 @@ Dit is jouw link voor groep %@!</target>
</trans-unit>
<trans-unit id="Message delivery warning" xml:space="preserve">
<source>Message delivery warning</source>
<target>Waarschuwing voor berichtbezorging</target>
<note>item status text</note>
</trans-unit>
<trans-unit id="Message draft" xml:space="preserve">
@@ -3684,6 +3701,10 @@ Dit is jouw link voor groep %@!</target>
<target>Concept bericht</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>Reacties op berichten</target>
@@ -3701,10 +3722,12 @@ Dit is jouw link voor groep %@!</target>
</trans-unit>
<trans-unit id="Message routing fallback" xml:space="preserve">
<source>Message routing fallback</source>
<target>Terugval op berichtroutering</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message routing mode" xml:space="preserve">
<source>Message routing mode</source>
<target>Berichtrouteringsmodus</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message source remains private." xml:space="preserve">
@@ -3869,6 +3892,7 @@ Dit is jouw link voor groep %@!</target>
</trans-unit>
<trans-unit id="Network issues - message expired after many attempts to send it." xml:space="preserve">
<source>Network issues - message expired after many attempts to send it.</source>
<target>Netwerkproblemen - bericht is verlopen na vele pogingen om het te verzenden.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Network management" xml:space="preserve">
@@ -4414,10 +4438,12 @@ Fout: %@</target>
</trans-unit>
<trans-unit id="Private message routing" xml:space="preserve">
<source>Private message routing</source>
<target>Routering van privéberichten</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private message routing 🚀" xml:space="preserve">
<source>Private message routing 🚀</source>
<target>Routing van privéberichten🚀</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private notes" xml:space="preserve">
@@ -4427,6 +4453,7 @@ Fout: %@</target>
</trans-unit>
<trans-unit id="Private routing" xml:space="preserve">
<source>Private routing</source>
<target>Privéroutering</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Profile and server connections" xml:space="preserve">
@@ -4511,6 +4538,7 @@ Fout: %@</target>
</trans-unit>
<trans-unit id="Protect IP address" xml:space="preserve">
<source>Protect IP address</source>
<target>Bescherm het IP-adres</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect app screen" xml:space="preserve">
@@ -4521,6 +4549,8 @@ Fout: %@</target>
<trans-unit id="Protect your IP address from the messaging relays chosen by your contacts.&#10;Enable in *Network &amp; servers* settings." xml:space="preserve">
<source>Protect your IP address from the messaging relays chosen by your contacts.
Enable in *Network &amp; servers* settings.</source>
<target>Bescherm uw IP-adres tegen de berichtenrelais die door uw contacten zijn gekozen.
Schakel dit in in *Netwerk en servers*-instellingen.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect your chat profiles with a password!" xml:space="preserve">
@@ -4865,6 +4895,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Safely receive files" xml:space="preserve">
<source>Safely receive files</source>
<target>Veilig bestanden ontvangen</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Safer groups" xml:space="preserve">
@@ -5094,10 +5125,12 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Send messages directly when IP address is protected and your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when IP address is protected and your or destination server does not support private routing.</source>
<target>Stuur berichten rechtstreeks als het IP-adres beschermd is en uw of bestemmingsserver geen privéroutering ondersteunt.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send messages directly when your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when your or destination server does not support private routing.</source>
<target>Stuur berichten rechtstreeks wanneer uw of de doelserver geen privéroutering ondersteunt.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send notifications" xml:space="preserve">
@@ -5207,6 +5240,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server address is incompatible with network settings." xml:space="preserve">
<source>Server address is incompatible with network settings.</source>
<target>Serveradres is niet compatibel met netwerkinstellingen.</target>
<note>srv error text.</note>
</trans-unit>
<trans-unit id="Server requires authorization to create queues, check password" xml:space="preserve">
@@ -5226,6 +5260,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server version is incompatible with network settings." xml:space="preserve">
<source>Server version is incompatible with network settings.</source>
<target>Serverversie is incompatibel met netwerkinstellingen.</target>
<note>srv error text</note>
</trans-unit>
<trans-unit id="Servers" xml:space="preserve">
@@ -5350,6 +5385,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show message status" xml:space="preserve">
<source>Show message status</source>
<target>Toon berichtstatus</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show preview" xml:space="preserve">
@@ -5359,6 +5395,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show → on messages sent via private routing." xml:space="preserve">
<source>Show → on messages sent via private routing.</source>
<target>Toon → bij berichten verzonden via privéroutering.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show:" xml:space="preserve">
@@ -5685,6 +5722,7 @@ Het kan gebeuren vanwege een bug of wanneer de verbinding is aangetast.</target>
</trans-unit>
<trans-unit id="The app will ask to confirm downloads from unknown file servers (except .onion)." xml:space="preserve">
<source>The app will ask to confirm downloads from unknown file servers (except .onion).</source>
<target>De app vraagt om downloads van onbekende bestandsservers (behalve .onion) te bevestigen.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="The attempt to change database passphrase was not completed." xml:space="preserve">
@@ -5874,6 +5912,7 @@ Het kan gebeuren vanwege een bug of wanneer de verbinding is aangetast.</target>
</trans-unit>
<trans-unit id="To protect your IP address, private routing uses your SMP servers to deliver messages." xml:space="preserve">
<source>To protect your IP address, private routing uses your SMP servers to deliver messages.</source>
<target>Om uw IP-adres te beschermen, gebruikt privéroutering uw SMP-servers om berichten te bezorgen.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="To protect your information, turn on SimpleX Lock.&#10;You will be prompted to complete authentication before this feature is enabled." xml:space="preserve">
@@ -6015,6 +6054,7 @@ U wordt gevraagd de authenticatie te voltooien voordat deze functie wordt ingesc
</trans-unit>
<trans-unit id="Unknown servers!" xml:space="preserve">
<source>Unknown servers!</source>
<target>Onbekende servers!</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Unless you use iOS call interface, enable Do Not Disturb mode to avoid interruptions." xml:space="preserve">
@@ -6166,10 +6206,12 @@ Om verbinding te maken, vraagt u uw contact om een andere verbinding link te mak
</trans-unit>
<trans-unit id="Use private routing with unknown servers when IP address is not protected." xml:space="preserve">
<source>Use private routing with unknown servers when IP address is not protected.</source>
<target>Gebruik privéroutering met onbekende servers wanneer het IP-adres niet beveiligd is.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use private routing with unknown servers." xml:space="preserve">
<source>Use private routing with unknown servers.</source>
<target>Gebruik privéroutering met onbekende servers.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use server" xml:space="preserve">
@@ -6409,10 +6451,12 @@ Om verbinding te maken, vraagt u uw contact om een andere verbinding link te mak
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to file servers." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to file servers.</source>
<target>Zonder Tor of VPN is uw IP-adres zichtbaar voor bestandsservers.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to these XFTP relays: %@.</source>
<target>Zonder Tor of VPN zal uw IP-adres zichtbaar zijn voor deze XFTP-relays: %@.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Wrong database passphrase" xml:space="preserve">
@@ -6422,6 +6466,7 @@ Om verbinding te maken, vraagt u uw contact om een andere verbinding link te mak
</trans-unit>
<trans-unit id="Wrong key or unknown connection - most likely this connection is deleted." xml:space="preserve">
<source>Wrong key or unknown connection - most likely this connection is deleted.</source>
<target>Verkeerde sleutel of onbekende verbinding - hoogstwaarschijnlijk is deze verbinding verwijderd.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Wrong passphrase!" xml:space="preserve">
@@ -7539,6 +7584,12 @@ SimpleX servers kunnen uw profiel niet zien.</target>
<target>stuur een direct bericht</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<target>nieuw contactadres instellen</target>
@@ -7581,6 +7632,7 @@ SimpleX servers kunnen uw profiel niet zien.</target>
</trans-unit>
<trans-unit id="unknown relays" xml:space="preserve">
<source>unknown relays</source>
<target>onbekende relays</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="unknown status" xml:space="preserve">
@@ -7590,6 +7642,7 @@ SimpleX servers kunnen uw profiel niet zien.</target>
</trans-unit>
<trans-unit id="unprotected" xml:space="preserve">
<source>unprotected</source>
<target>onbeschermd</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="updated group profile" xml:space="preserve">
@@ -7659,6 +7712,7 @@ SimpleX servers kunnen uw profiel niet zien.</target>
</trans-unit>
<trans-unit id="when IP hidden" xml:space="preserve">
<source>when IP hidden</source>
<target>wanneer IP verborgen is</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="yes" xml:space="preserve">
@@ -715,6 +715,7 @@
</trans-unit>
<trans-unit id="Allow downgrade" xml:space="preserve">
<source>Allow downgrade</source>
<target>Zezwól na obniżenie wersji</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Allow irreversible message deletion only if your contact allows it to you. (24 hours)" xml:space="preserve">
@@ -814,6 +815,7 @@
</trans-unit>
<trans-unit id="Always use private routing." xml:space="preserve">
<source>Always use private routing.</source>
<target>Zawsze używaj prywatnego trasowania.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Always use relay" xml:space="preserve">
@@ -1098,6 +1100,7 @@
</trans-unit>
<trans-unit id="Capacity exceeded - recipient did not receive previously sent messages." xml:space="preserve">
<source>Capacity exceeded - recipient did not receive previously sent messages.</source>
<target>Przekroczono pojemność - odbiorca nie otrzymał wcześniej wysłanych wiadomości.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Cellular" xml:space="preserve">
@@ -1298,6 +1301,7 @@
</trans-unit>
<trans-unit id="Confirm files from unknown servers." xml:space="preserve">
<source>Confirm files from unknown servers.</source>
<target>Potwierdzaj pliki z nieznanych serwerów.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Confirm network settings" xml:space="preserve">
@@ -1717,6 +1721,10 @@ To jest twój jednorazowy link!</target>
<target>Baza danych zostanie zmigrowana po ponownym uruchomieniu aplikacji</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>Zdecentralizowane</target>
@@ -1966,6 +1974,7 @@ To nie może być cofnięte!</target>
</trans-unit>
<trans-unit id="Destination server error: %@" xml:space="preserve">
<source>Destination server error: %@</source>
<target>Błąd docelowego serwera: %@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Develop" xml:space="preserve">
@@ -2075,6 +2084,7 @@ To nie może być cofnięte!</target>
</trans-unit>
<trans-unit id="Do NOT send messages directly, even if your or destination server does not support private routing." xml:space="preserve">
<source>Do NOT send messages directly, even if your or destination server does not support private routing.</source>
<target>NIE wysyłaj wiadomości bezpośrednio, nawet jeśli serwer docelowy nie obsługuje prywatnego trasowania.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do NOT use SimpleX for emergency calls." xml:space="preserve">
@@ -2084,6 +2094,7 @@ To nie może być cofnięte!</target>
</trans-unit>
<trans-unit id="Do NOT use private routing." xml:space="preserve">
<source>Do NOT use private routing.</source>
<target>NIE używaj prywatnego trasowania.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do it later" xml:space="preserve">
@@ -2743,6 +2754,7 @@ To nie może być cofnięte!</target>
</trans-unit>
<trans-unit id="Files" xml:space="preserve">
<source>Files</source>
<target>Pliki</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Files &amp; media" xml:space="preserve">
@@ -2853,11 +2865,15 @@ To nie może być cofnięte!</target>
<trans-unit id="Forwarding server: %@&#10;Destination server error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Destination server error: %2$@</source>
<target>Serwer przekazujący: %1$@
Błąd serwera docelowego: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Forwarding server: %@&#10;Error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Error: %2$@</source>
<target>Serwer przekazujący: %1$@
Błąd: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Found desktop" xml:space="preserve">
@@ -3677,6 +3693,7 @@ To jest twój link do grupy %@!</target>
</trans-unit>
<trans-unit id="Message delivery warning" xml:space="preserve">
<source>Message delivery warning</source>
<target>Ostrzeżenie dostarczenia wiadomości</target>
<note>item status text</note>
</trans-unit>
<trans-unit id="Message draft" xml:space="preserve">
@@ -3684,6 +3701,10 @@ To jest twój link do grupy %@!</target>
<target>Wersja robocza wiadomości</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>Reakcje wiadomości</target>
@@ -3701,10 +3722,12 @@ To jest twój link do grupy %@!</target>
</trans-unit>
<trans-unit id="Message routing fallback" xml:space="preserve">
<source>Message routing fallback</source>
<target>Rezerwowe trasowania wiadomości</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message routing mode" xml:space="preserve">
<source>Message routing mode</source>
<target>Tryb trasowania wiadomości</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message source remains private." xml:space="preserve">
@@ -3869,6 +3892,7 @@ To jest twój link do grupy %@!</target>
</trans-unit>
<trans-unit id="Network issues - message expired after many attempts to send it." xml:space="preserve">
<source>Network issues - message expired after many attempts to send it.</source>
<target>Błąd sieciowy - wiadomość wygasła po wielu próbach wysłania jej.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Network management" xml:space="preserve">
@@ -4414,10 +4438,12 @@ Błąd: %@</target>
</trans-unit>
<trans-unit id="Private message routing" xml:space="preserve">
<source>Private message routing</source>
<target>Trasowanie prywatnych wiadomości</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private message routing 🚀" xml:space="preserve">
<source>Private message routing 🚀</source>
<target>Trasowanie prywatnych wiadomości🚀</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private notes" xml:space="preserve">
@@ -4427,6 +4453,7 @@ Błąd: %@</target>
</trans-unit>
<trans-unit id="Private routing" xml:space="preserve">
<source>Private routing</source>
<target>Prywatne trasowanie</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Profile and server connections" xml:space="preserve">
@@ -4511,6 +4538,7 @@ Błąd: %@</target>
</trans-unit>
<trans-unit id="Protect IP address" xml:space="preserve">
<source>Protect IP address</source>
<target>Chroń adres IP</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect app screen" xml:space="preserve">
@@ -4521,6 +4549,8 @@ Błąd: %@</target>
<trans-unit id="Protect your IP address from the messaging relays chosen by your contacts.&#10;Enable in *Network &amp; servers* settings." xml:space="preserve">
<source>Protect your IP address from the messaging relays chosen by your contacts.
Enable in *Network &amp; servers* settings.</source>
<target>Chroni Twój adres IP przed przekaźnikami wiadomości wybranych przez Twoje kontakty.
Włącz w ustawianiach *Sieć i serwery* .</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect your chat profiles with a password!" xml:space="preserve">
@@ -4865,6 +4895,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Safely receive files" xml:space="preserve">
<source>Safely receive files</source>
<target>Bezpiecznie otrzymuj pliki</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Safer groups" xml:space="preserve">
@@ -5094,10 +5125,12 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Send messages directly when IP address is protected and your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when IP address is protected and your or destination server does not support private routing.</source>
<target>Wysyłaj wiadomości bezpośrednio, gdy adres IP jest chroniony i Twój lub docelowy serwer nie obsługuje prywatnego trasowania.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send messages directly when your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when your or destination server does not support private routing.</source>
<target>Wysyłaj wiadomości bezpośrednio, gdy Twój lub docelowy serwer nie obsługuje prywatnego trasowania.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send notifications" xml:space="preserve">
@@ -5207,6 +5240,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server address is incompatible with network settings." xml:space="preserve">
<source>Server address is incompatible with network settings.</source>
<target>Adres serwera jest niekompatybilny z ustawieniami sieciowymi.</target>
<note>srv error text.</note>
</trans-unit>
<trans-unit id="Server requires authorization to create queues, check password" xml:space="preserve">
@@ -5226,6 +5260,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server version is incompatible with network settings." xml:space="preserve">
<source>Server version is incompatible with network settings.</source>
<target>Wersja serwera jest niekompatybilna z ustawieniami sieciowymi.</target>
<note>srv error text</note>
</trans-unit>
<trans-unit id="Servers" xml:space="preserve">
@@ -5350,6 +5385,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show message status" xml:space="preserve">
<source>Show message status</source>
<target>Pokaż status wiadomości</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show preview" xml:space="preserve">
@@ -5359,6 +5395,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show → on messages sent via private routing." xml:space="preserve">
<source>Show → on messages sent via private routing.</source>
<target>Pokaż → na wiadomościach wysłanych przez prywatne trasowanie.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show:" xml:space="preserve">
@@ -5685,6 +5722,7 @@ Może się to zdarzyć z powodu jakiegoś błędu lub gdy połączenie jest skom
</trans-unit>
<trans-unit id="The app will ask to confirm downloads from unknown file servers (except .onion)." xml:space="preserve">
<source>The app will ask to confirm downloads from unknown file servers (except .onion).</source>
<target>Aplikacja zapyta o potwierdzenie pobierania od nieznanych serwerów plików (poza .onion).</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="The attempt to change database passphrase was not completed." xml:space="preserve">
@@ -5874,6 +5912,7 @@ Może się to zdarzyć z powodu jakiegoś błędu lub gdy połączenie jest skom
</trans-unit>
<trans-unit id="To protect your IP address, private routing uses your SMP servers to deliver messages." xml:space="preserve">
<source>To protect your IP address, private routing uses your SMP servers to deliver messages.</source>
<target>Aby chronić Twój adres IP, prywatne trasowanie używa Twoich serwerów SMP, aby dostarczyć wiadomości.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="To protect your information, turn on SimpleX Lock.&#10;You will be prompted to complete authentication before this feature is enabled." xml:space="preserve">
@@ -6015,6 +6054,7 @@ Przed włączeniem tej funkcji zostanie wyświetlony monit uwierzytelniania.</ta
</trans-unit>
<trans-unit id="Unknown servers!" xml:space="preserve">
<source>Unknown servers!</source>
<target>Nieznane serwery!</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Unless you use iOS call interface, enable Do Not Disturb mode to avoid interruptions." xml:space="preserve">
@@ -6166,10 +6206,12 @@ Aby się połączyć, poproś Twój kontakt o utworzenie kolejnego linku połąc
</trans-unit>
<trans-unit id="Use private routing with unknown servers when IP address is not protected." xml:space="preserve">
<source>Use private routing with unknown servers when IP address is not protected.</source>
<target>Używaj prywatnego trasowania z nieznanymi serwerami, gdy adres IP nie jest chroniony.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use private routing with unknown servers." xml:space="preserve">
<source>Use private routing with unknown servers.</source>
<target>Używaj prywatnego trasowania z nieznanymi serwerami.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use server" xml:space="preserve">
@@ -6409,10 +6451,12 @@ Aby się połączyć, poproś Twój kontakt o utworzenie kolejnego linku połąc
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to file servers." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to file servers.</source>
<target>Bez Tor lub VPN, Twój adres IP będzie widoczny do serwerów plików.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to these XFTP relays: %@.</source>
<target>Bez Tor lub VPN, Twój adres IP będzie widoczny dla tych przekaźników XFTP: %@.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Wrong database passphrase" xml:space="preserve">
@@ -6422,6 +6466,7 @@ Aby się połączyć, poproś Twój kontakt o utworzenie kolejnego linku połąc
</trans-unit>
<trans-unit id="Wrong key or unknown connection - most likely this connection is deleted." xml:space="preserve">
<source>Wrong key or unknown connection - most likely this connection is deleted.</source>
<target>Zły klucz lub nieznane połączenie - najprawdopodobniej to połączenie jest usunięte.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Wrong passphrase!" xml:space="preserve">
@@ -7539,6 +7584,12 @@ Serwery SimpleX nie mogą zobaczyć Twojego profilu.</target>
<target>wyślij wiadomość bezpośrednią</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<target>ustaw nowy adres kontaktu</target>
@@ -7581,6 +7632,7 @@ Serwery SimpleX nie mogą zobaczyć Twojego profilu.</target>
</trans-unit>
<trans-unit id="unknown relays" xml:space="preserve">
<source>unknown relays</source>
<target>nieznane przekaźniki</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="unknown status" xml:space="preserve">
@@ -7590,6 +7642,7 @@ Serwery SimpleX nie mogą zobaczyć Twojego profilu.</target>
</trans-unit>
<trans-unit id="unprotected" xml:space="preserve">
<source>unprotected</source>
<target>niezabezpieczony</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="updated group profile" xml:space="preserve">
@@ -7659,6 +7712,7 @@ Serwery SimpleX nie mogą zobaczyć Twojego profilu.</target>
</trans-unit>
<trans-unit id="when IP hidden" xml:space="preserve">
<source>when IP hidden</source>
<target>gdy IP ukryty</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="yes" xml:space="preserve">
@@ -715,6 +715,7 @@
</trans-unit>
<trans-unit id="Allow downgrade" xml:space="preserve">
<source>Allow downgrade</source>
<target>Разрешить прямую доставку</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Allow irreversible message deletion only if your contact allows it to you. (24 hours)" xml:space="preserve">
@@ -814,6 +815,7 @@
</trans-unit>
<trans-unit id="Always use private routing." xml:space="preserve">
<source>Always use private routing.</source>
<target>Всегда использовать конфиденциальную доставку.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Always use relay" xml:space="preserve">
@@ -1098,6 +1100,7 @@
</trans-unit>
<trans-unit id="Capacity exceeded - recipient did not receive previously sent messages." xml:space="preserve">
<source>Capacity exceeded - recipient did not receive previously sent messages.</source>
<target>Превышено количество сообщений - предыдущие сообщения не доставлены.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Cellular" xml:space="preserve">
@@ -1298,6 +1301,7 @@
</trans-unit>
<trans-unit id="Confirm files from unknown servers." xml:space="preserve">
<source>Confirm files from unknown servers.</source>
<target>Подтверждать файлы с неизвестных серверов.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Confirm network settings" xml:space="preserve">
@@ -1717,6 +1721,10 @@ This is your own one-time link!</source>
<target>Данные чата будут мигрированы при перезапуске</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>Децентрализованный</target>
@@ -1966,6 +1974,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Destination server error: %@" xml:space="preserve">
<source>Destination server error: %@</source>
<target>Ошибка сервера получателя: %@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Develop" xml:space="preserve">
@@ -2075,6 +2084,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Do NOT send messages directly, even if your or destination server does not support private routing." xml:space="preserve">
<source>Do NOT send messages directly, even if your or destination server does not support private routing.</source>
<target>Не отправлять сообщения напрямую, даже если сервер получателя не поддерживает конфиденциальную доставку.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do NOT use SimpleX for emergency calls." xml:space="preserve">
@@ -2084,6 +2094,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Do NOT use private routing." xml:space="preserve">
<source>Do NOT use private routing.</source>
<target>Не использовать конфиденциальную доставку.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do it later" xml:space="preserve">
@@ -2743,6 +2754,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Files" xml:space="preserve">
<source>Files</source>
<target>Файлы</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Files &amp; media" xml:space="preserve">
@@ -2853,11 +2865,15 @@ This cannot be undone!</source>
<trans-unit id="Forwarding server: %@&#10;Destination server error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Destination server error: %2$@</source>
<target>Пересылающий сервер: %1$@
Ошибка сервера получателя: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Forwarding server: %@&#10;Error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Error: %2$@</source>
<target>Пересылающий сервер: %1$@
Ошибка: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Found desktop" xml:space="preserve">
@@ -3677,6 +3693,7 @@ This is your link for group %@!</source>
</trans-unit>
<trans-unit id="Message delivery warning" xml:space="preserve">
<source>Message delivery warning</source>
<target>Предупреждение доставки сообщения</target>
<note>item status text</note>
</trans-unit>
<trans-unit id="Message draft" xml:space="preserve">
@@ -3684,6 +3701,10 @@ This is your link for group %@!</source>
<target>Черновик сообщения</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>Реакции на сообщения</target>
@@ -3701,10 +3722,12 @@ This is your link for group %@!</source>
</trans-unit>
<trans-unit id="Message routing fallback" xml:space="preserve">
<source>Message routing fallback</source>
<target>Прямая доставка сообщений</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message routing mode" xml:space="preserve">
<source>Message routing mode</source>
<target>Режим доставки сообщений</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message source remains private." xml:space="preserve">
@@ -3869,6 +3892,7 @@ This is your link for group %@!</source>
</trans-unit>
<trans-unit id="Network issues - message expired after many attempts to send it." xml:space="preserve">
<source>Network issues - message expired after many attempts to send it.</source>
<target>Ошибка сети - сообщение не было отправлено после многократных попыток.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Network management" xml:space="preserve">
@@ -4414,10 +4438,12 @@ Error: %@</source>
</trans-unit>
<trans-unit id="Private message routing" xml:space="preserve">
<source>Private message routing</source>
<target>Конфиденциальная доставка сообщений</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private message routing 🚀" xml:space="preserve">
<source>Private message routing 🚀</source>
<target>Конфиденциальная доставка сообщений 🚀</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private notes" xml:space="preserve">
@@ -4427,6 +4453,7 @@ Error: %@</source>
</trans-unit>
<trans-unit id="Private routing" xml:space="preserve">
<source>Private routing</source>
<target>Конфиденциальная доставка</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Profile and server connections" xml:space="preserve">
@@ -4511,6 +4538,7 @@ Error: %@</source>
</trans-unit>
<trans-unit id="Protect IP address" xml:space="preserve">
<source>Protect IP address</source>
<target>Защитить IP адрес</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect app screen" xml:space="preserve">
@@ -4521,6 +4549,8 @@ Error: %@</source>
<trans-unit id="Protect your IP address from the messaging relays chosen by your contacts.&#10;Enable in *Network &amp; servers* settings." xml:space="preserve">
<source>Protect your IP address from the messaging relays chosen by your contacts.
Enable in *Network &amp; servers* settings.</source>
<target>Защитите ваш IP адрес от серверов сообщений, выбранных Вашими контактами.
Включите в настройках *Сеть и серверы*.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect your chat profiles with a password!" xml:space="preserve">
@@ -4865,6 +4895,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Safely receive files" xml:space="preserve">
<source>Safely receive files</source>
<target>Получайте файлы безопасно</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Safer groups" xml:space="preserve">
@@ -5094,10 +5125,12 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Send messages directly when IP address is protected and your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when IP address is protected and your or destination server does not support private routing.</source>
<target>Отправлять сообщения напрямую, когда IP адрес защищен, и Ваш сервер или сервер получателя не поддерживает конфиденциальную доставку.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send messages directly when your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when your or destination server does not support private routing.</source>
<target>Отправлять сообщения напрямую, когда Ваш сервер или сервер получателя не поддерживает конфиденциальную доставку.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send notifications" xml:space="preserve">
@@ -5207,6 +5240,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server address is incompatible with network settings." xml:space="preserve">
<source>Server address is incompatible with network settings.</source>
<target>Адрес сервера несовместим с настройками сети.</target>
<note>srv error text.</note>
</trans-unit>
<trans-unit id="Server requires authorization to create queues, check password" xml:space="preserve">
@@ -5226,6 +5260,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server version is incompatible with network settings." xml:space="preserve">
<source>Server version is incompatible with network settings.</source>
<target>Версия сервера несовместима с настройками сети.</target>
<note>srv error text</note>
</trans-unit>
<trans-unit id="Servers" xml:space="preserve">
@@ -5350,6 +5385,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show message status" xml:space="preserve">
<source>Show message status</source>
<target>Показать статус сообщения</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show preview" xml:space="preserve">
@@ -5359,6 +5395,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show → on messages sent via private routing." xml:space="preserve">
<source>Show → on messages sent via private routing.</source>
<target>Показать → на сообщениях доставленных конфиденциально.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show:" xml:space="preserve">
@@ -5685,6 +5722,7 @@ It can happen because of some bug or when the connection is compromised.</source
</trans-unit>
<trans-unit id="The app will ask to confirm downloads from unknown file servers (except .onion)." xml:space="preserve">
<source>The app will ask to confirm downloads from unknown file servers (except .onion).</source>
<target>Приложение будет запрашивать подтверждение загрузки с неизвестных серверов (за исключением .onion адресов).</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="The attempt to change database passphrase was not completed." xml:space="preserve">
@@ -5874,6 +5912,7 @@ It can happen because of some bug or when the connection is compromised.</source
</trans-unit>
<trans-unit id="To protect your IP address, private routing uses your SMP servers to deliver messages." xml:space="preserve">
<source>To protect your IP address, private routing uses your SMP servers to deliver messages.</source>
<target>Чтобы защитить ваш IP адрес, приложение использует Ваши SMP серверы для конфиденциальной доставки сообщений.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="To protect your information, turn on SimpleX Lock.&#10;You will be prompted to complete authentication before this feature is enabled." xml:space="preserve">
@@ -6015,6 +6054,7 @@ You will be prompted to complete authentication before this feature is enabled.<
</trans-unit>
<trans-unit id="Unknown servers!" xml:space="preserve">
<source>Unknown servers!</source>
<target>Неизвестные серверы!</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Unless you use iOS call interface, enable Do Not Disturb mode to avoid interruptions." xml:space="preserve">
@@ -6166,10 +6206,12 @@ To connect, please ask your contact to create another connection link and check
</trans-unit>
<trans-unit id="Use private routing with unknown servers when IP address is not protected." xml:space="preserve">
<source>Use private routing with unknown servers when IP address is not protected.</source>
<target>Использовать конфиденциальную доставку с неизвестными серверами, когда IP адрес не защищен.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use private routing with unknown servers." xml:space="preserve">
<source>Use private routing with unknown servers.</source>
<target>Использовать конфиденциальную доставку с неизвестными серверами.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use server" xml:space="preserve">
@@ -6409,10 +6451,12 @@ To connect, please ask your contact to create another connection link and check
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to file servers." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to file servers.</source>
<target>Без Тора или ВПН, Ваш IP адрес будет доступен серверам файлов.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to these XFTP relays: %@.</source>
<target>Без Тора или ВПН, Ваш IP адрес будет доступен этим серверам файлов: %@.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Wrong database passphrase" xml:space="preserve">
@@ -6422,6 +6466,7 @@ To connect, please ask your contact to create another connection link and check
</trans-unit>
<trans-unit id="Wrong key or unknown connection - most likely this connection is deleted." xml:space="preserve">
<source>Wrong key or unknown connection - most likely this connection is deleted.</source>
<target>Неверный ключ или неизвестное соединение - скорее всего, это соединение удалено.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Wrong passphrase!" xml:space="preserve">
@@ -7539,6 +7584,12 @@ SimpleX серверы не могут получить доступ к Ваше
<target>отправьте сообщение</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<target>установлен новый адрес контакта</target>
@@ -7581,6 +7632,7 @@ SimpleX серверы не могут получить доступ к Ваше
</trans-unit>
<trans-unit id="unknown relays" xml:space="preserve">
<source>unknown relays</source>
<target>неизвестные серверы</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="unknown status" xml:space="preserve">
@@ -7590,6 +7642,7 @@ SimpleX серверы не могут получить доступ к Ваше
</trans-unit>
<trans-unit id="unprotected" xml:space="preserve">
<source>unprotected</source>
<target>незащищённый</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="updated group profile" xml:space="preserve">
@@ -7659,6 +7712,7 @@ SimpleX серверы не могут получить доступ к Ваше
</trans-unit>
<trans-unit id="when IP hidden" xml:space="preserve">
<source>when IP hidden</source>
<target>когда IP защищен</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="yes" xml:space="preserve">
@@ -1629,6 +1629,10 @@ This is your own one-time link!</source>
<target>ระบบจะย้ายฐานข้อมูลเมื่อแอปรีสตาร์ท</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>กระจายอำนาจแล้ว</target>
@@ -3514,6 +3518,10 @@ This is your link for group %@!</source>
<target>ร่างข้อความ</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>ปฏิกิริยาของข้อความ</target>
@@ -7199,6 +7207,12 @@ SimpleX servers cannot see your profile.</source>
<source>send direct message</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<note>profile update event chat item</note>
@@ -445,7 +445,7 @@
</trans-unit>
<trans-unit id="0s" xml:space="preserve">
<source>0s</source>
<target>0 saniye</target>
<target>0sn</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="1 day" xml:space="preserve">
@@ -695,7 +695,7 @@
</trans-unit>
<trans-unit id="All your contacts, conversations and files will be securely encrypted and uploaded in chunks to configured XFTP relays." xml:space="preserve">
<source>All your contacts, conversations and files will be securely encrypted and uploaded in chunks to configured XFTP relays.</source>
<target>Tüm kişileriniz, sohbetleriniz ve dosyalarınız güvenli bir şekilde şifrelenecek ve parçalar halinde yapılandırılmış XFTP rölelerine yüklenecektir.</target>
<target>Tüm kişileriniz, konuşmalarınız ve dosyalarınız güvenli bir şekilde şifrelenir ve yapılandırılmış XFTP yönlendiricilerine parçalar halinde yüklenir.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Allow" xml:space="preserve">
@@ -715,6 +715,7 @@
</trans-unit>
<trans-unit id="Allow downgrade" xml:space="preserve">
<source>Allow downgrade</source>
<target>Sürüm düşürmeye izin ver</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Allow irreversible message deletion only if your contact allows it to you. (24 hours)" xml:space="preserve">
@@ -734,7 +735,7 @@
</trans-unit>
<trans-unit id="Allow sending direct messages to members." xml:space="preserve">
<source>Allow sending direct messages to members.</source>
<target>Üyelere direkt mesaj göndermeye izin ver.</target>
<target>Üyelere doğrudan mesaj göndermeye izin ver.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Allow sending disappearing messages." xml:space="preserve">
@@ -814,6 +815,7 @@
</trans-unit>
<trans-unit id="Always use private routing." xml:space="preserve">
<source>Always use private routing.</source>
<target>Her zaman gizli yönlendirme kullan.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Always use relay" xml:space="preserve">
@@ -1098,6 +1100,7 @@
</trans-unit>
<trans-unit id="Capacity exceeded - recipient did not receive previously sent messages." xml:space="preserve">
<source>Capacity exceeded - recipient did not receive previously sent messages.</source>
<target>Kapasite aşıldı - alıcı önceden gönderilen mesajları almadı.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Cellular" xml:space="preserve">
@@ -1298,6 +1301,7 @@
</trans-unit>
<trans-unit id="Confirm files from unknown servers." xml:space="preserve">
<source>Confirm files from unknown servers.</source>
<target>Bilinmeyen sunuculardan gelen dosyaları onayla.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Confirm network settings" xml:space="preserve">
@@ -1717,6 +1721,10 @@ Bu senin kendi tek kullanımlık bağlantın!</target>
<target>Uygulama yeniden başlatıldığında veritabanı taşınacaktır</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>Merkezi Olmayan</target>
@@ -1966,6 +1974,7 @@ Bu geri alınamaz!</target>
</trans-unit>
<trans-unit id="Destination server error: %@" xml:space="preserve">
<source>Destination server error: %@</source>
<target>Hedef sunucu hatası: %@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Develop" xml:space="preserve">
@@ -2075,6 +2084,7 @@ Bu geri alınamaz!</target>
</trans-unit>
<trans-unit id="Do NOT send messages directly, even if your or destination server does not support private routing." xml:space="preserve">
<source>Do NOT send messages directly, even if your or destination server does not support private routing.</source>
<target>Sizin veya hedef sunucunun özel yönlendirmeyi desteklememesi durumunda bile mesajları doğrudan GÖNDERMEYİN.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do NOT use SimpleX for emergency calls." xml:space="preserve">
@@ -2084,6 +2094,7 @@ Bu geri alınamaz!</target>
</trans-unit>
<trans-unit id="Do NOT use private routing." xml:space="preserve">
<source>Do NOT use private routing.</source>
<target>Gizli yönlendirmeyi KULLANMA.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do it later" xml:space="preserve">
@@ -2743,6 +2754,7 @@ Bu geri alınamaz!</target>
</trans-unit>
<trans-unit id="Files" xml:space="preserve">
<source>Files</source>
<target>Dosyalar</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Files &amp; media" xml:space="preserve">
@@ -2853,11 +2865,15 @@ Bu geri alınamaz!</target>
<trans-unit id="Forwarding server: %@&#10;Destination server error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Destination server error: %2$@</source>
<target>Yönlendirme sunucusu: %1$@
Hedef sunucu hatası: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Forwarding server: %@&#10;Error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Error: %2$@</source>
<target>Yönlendirme sunucusu: %1$@
Hata: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Found desktop" xml:space="preserve">
@@ -3677,6 +3693,7 @@ Bu senin grup için bağlantın %@!</target>
</trans-unit>
<trans-unit id="Message delivery warning" xml:space="preserve">
<source>Message delivery warning</source>
<target>Mesaj iletimi uyarısı</target>
<note>item status text</note>
</trans-unit>
<trans-unit id="Message draft" xml:space="preserve">
@@ -3684,6 +3701,10 @@ Bu senin grup için bağlantın %@!</target>
<target>Mesaj taslağı</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>Mesaj tepkileri</target>
@@ -3701,10 +3722,12 @@ Bu senin grup için bağlantın %@!</target>
</trans-unit>
<trans-unit id="Message routing fallback" xml:space="preserve">
<source>Message routing fallback</source>
<target>Mesaj yönlendirme yedeklemesi</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message routing mode" xml:space="preserve">
<source>Message routing mode</source>
<target>Mesaj yönlendirme modu</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message source remains private." xml:space="preserve">
@@ -3869,6 +3892,7 @@ Bu senin grup için bağlantın %@!</target>
</trans-unit>
<trans-unit id="Network issues - message expired after many attempts to send it." xml:space="preserve">
<source>Network issues - message expired after many attempts to send it.</source>
<target>Ağ sorunları - birçok gönderme denemesinden sonra mesajın süresi doldu.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Network management" xml:space="preserve">
@@ -4414,10 +4438,12 @@ Hata: %@</target>
</trans-unit>
<trans-unit id="Private message routing" xml:space="preserve">
<source>Private message routing</source>
<target>Gizli mesaj yönlendirme</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private message routing 🚀" xml:space="preserve">
<source>Private message routing 🚀</source>
<target>Gizli mesaj yönlendirme 🚀</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private notes" xml:space="preserve">
@@ -4427,6 +4453,7 @@ Hata: %@</target>
</trans-unit>
<trans-unit id="Private routing" xml:space="preserve">
<source>Private routing</source>
<target>Gizli yönlendirme</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Profile and server connections" xml:space="preserve">
@@ -4491,7 +4518,7 @@ Hata: %@</target>
</trans-unit>
<trans-unit id="Prohibit sending direct messages to members." xml:space="preserve">
<source>Prohibit sending direct messages to members.</source>
<target>Geri dönülmez mesaj silme işlemini yasakla.</target>
<target>Üyelere doğrudan mesaj göndermeyi yasakla.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Prohibit sending disappearing messages." xml:space="preserve">
@@ -4511,6 +4538,7 @@ Hata: %@</target>
</trans-unit>
<trans-unit id="Protect IP address" xml:space="preserve">
<source>Protect IP address</source>
<target>IP adresini koru</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect app screen" xml:space="preserve">
@@ -4521,6 +4549,8 @@ Hata: %@</target>
<trans-unit id="Protect your IP address from the messaging relays chosen by your contacts.&#10;Enable in *Network &amp; servers* settings." xml:space="preserve">
<source>Protect your IP address from the messaging relays chosen by your contacts.
Enable in *Network &amp; servers* settings.</source>
<target>IP adresinizi kişileriniz tarafından seçilen mesajlaşma yönlendiricilerinden koruyun.
*Ağ ve sunucular* ayarlarında etkinleştirin.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect your chat profiles with a password!" xml:space="preserve">
@@ -4695,12 +4725,12 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Relay server is only used if necessary. Another party can observe your IP address." xml:space="preserve">
<source>Relay server is only used if necessary. Another party can observe your IP address.</source>
<target>Aktarma sunucusu yalnızca gerekli olduğunda kullanılır. Başka bir taraf IP adresinizi gözlemleyebilir.</target>
<target>Yönlendirici sunucusu yalnızca gerekli olduğunda kullanılır. Başka bir taraf IP adresinizi gözlemleyebilir.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Relay server protects your IP address, but it can observe the duration of the call." xml:space="preserve">
<source>Relay server protects your IP address, but it can observe the duration of the call.</source>
<target>Aktarıcı sunucu IP adresinizi korur, ancak aramanın süresini gözlemleyebilir.</target>
<target>Yönlendirici sunucu IP adresinizi korur, ancak aramanın süresini gözlemleyebilir.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Remove" xml:space="preserve">
@@ -4865,6 +4895,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Safely receive files" xml:space="preserve">
<source>Safely receive files</source>
<target>Dosyaları güvenle alın</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Safer groups" xml:space="preserve">
@@ -5094,10 +5125,12 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Send messages directly when IP address is protected and your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when IP address is protected and your or destination server does not support private routing.</source>
<target>IP adresi korumalı olduğunda ve sizin veya hedef sunucunun özel yönlendirmeyi desteklemediği durumlarda mesajları doğrudan gönderin.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send messages directly when your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when your or destination server does not support private routing.</source>
<target>Sizin veya hedef sunucunun özel yönlendirmeyi desteklemediği durumlarda mesajları doğrudan gönderin.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send notifications" xml:space="preserve">
@@ -5207,6 +5240,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server address is incompatible with network settings." xml:space="preserve">
<source>Server address is incompatible with network settings.</source>
<target>Sunucu adresi ağ ayarlarıyla uyumlu değil.</target>
<note>srv error text.</note>
</trans-unit>
<trans-unit id="Server requires authorization to create queues, check password" xml:space="preserve">
@@ -5226,6 +5260,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server version is incompatible with network settings." xml:space="preserve">
<source>Server version is incompatible with network settings.</source>
<target>Sunucu sürümü ağ ayarlarıyla uyumlu değil.</target>
<note>srv error text</note>
</trans-unit>
<trans-unit id="Servers" xml:space="preserve">
@@ -5350,6 +5385,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show message status" xml:space="preserve">
<source>Show message status</source>
<target>Mesaj durumunu göster</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show preview" xml:space="preserve">
@@ -5359,6 +5395,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show → on messages sent via private routing." xml:space="preserve">
<source>Show → on messages sent via private routing.</source>
<target>Gizli yönlendirme yoluyla gönderilen mesajlarda → işaretini göster.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show:" xml:space="preserve">
@@ -5685,6 +5722,7 @@ Bazı hatalar nedeniyle veya bağlantı tehlikeye girdiğinde meydana gelebilir.
</trans-unit>
<trans-unit id="The app will ask to confirm downloads from unknown file servers (except .onion)." xml:space="preserve">
<source>The app will ask to confirm downloads from unknown file servers (except .onion).</source>
<target>Uygulama bilinmeyen dosya sunucularından indirmeleri onaylamanızı isteyecektir (.onion hariç).</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="The attempt to change database passphrase was not completed." xml:space="preserve">
@@ -5874,6 +5912,7 @@ Bazı hatalar nedeniyle veya bağlantı tehlikeye girdiğinde meydana gelebilir.
</trans-unit>
<trans-unit id="To protect your IP address, private routing uses your SMP servers to deliver messages." xml:space="preserve">
<source>To protect your IP address, private routing uses your SMP servers to deliver messages.</source>
<target>IP adresinizi korumak için,gizli yönlendirme mesajları iletmek için SMP sunucularınızı kullanır.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="To protect your information, turn on SimpleX Lock.&#10;You will be prompted to complete authentication before this feature is enabled." xml:space="preserve">
@@ -6015,6 +6054,7 @@ Bu özellik etkinleştirilmeden önce kimlik doğrulamayı tamamlamanız istenec
</trans-unit>
<trans-unit id="Unknown servers!" xml:space="preserve">
<source>Unknown servers!</source>
<target>Bilinmeyen sunucular!</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Unless you use iOS call interface, enable Do Not Disturb mode to avoid interruptions." xml:space="preserve">
@@ -6166,10 +6206,12 @@ Bağlanmak için lütfen kişinizden başka bir bağlantı oluşturmasını iste
</trans-unit>
<trans-unit id="Use private routing with unknown servers when IP address is not protected." xml:space="preserve">
<source>Use private routing with unknown servers when IP address is not protected.</source>
<target>IP adresi korunmadığında bilinmeyen sunucularla gizli yönlendirme kullan.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use private routing with unknown servers." xml:space="preserve">
<source>Use private routing with unknown servers.</source>
<target>Bilinmeyen sunucularla gizli yönlendirme kullan.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use server" xml:space="preserve">
@@ -6409,10 +6451,12 @@ Bağlanmak için lütfen kişinizden başka bir bağlantı oluşturmasını iste
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to file servers." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to file servers.</source>
<target>Tor veya VPN olmadan, IP adresiniz dosya sunucularına görülebilir.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to these XFTP relays: %@.</source>
<target>Tor veya VPN olmadan, IP adresiniz bu XFTP aktarıcıları tarafından görülebilir: %@.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Wrong database passphrase" xml:space="preserve">
@@ -6422,6 +6466,7 @@ Bağlanmak için lütfen kişinizden başka bir bağlantı oluşturmasını iste
</trans-unit>
<trans-unit id="Wrong key or unknown connection - most likely this connection is deleted." xml:space="preserve">
<source>Wrong key or unknown connection - most likely this connection is deleted.</source>
<target>Yanlış anahtar veya bilinmeyen bağlantı - büyük olasılıkla bu bağlantı silinmiştir.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Wrong passphrase!" xml:space="preserve">
@@ -7539,6 +7584,12 @@ SimpleX sunucuları profilinizi göremez.</target>
<target>doğrudan mesaj gönder</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<target>yeni kişi adresi ayarla</target>
@@ -7581,6 +7632,7 @@ SimpleX sunucuları profilinizi göremez.</target>
</trans-unit>
<trans-unit id="unknown relays" xml:space="preserve">
<source>unknown relays</source>
<target>bilinmeyen yönlendiriciler</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="unknown status" xml:space="preserve">
@@ -7590,6 +7642,7 @@ SimpleX sunucuları profilinizi göremez.</target>
</trans-unit>
<trans-unit id="unprotected" xml:space="preserve">
<source>unprotected</source>
<target>korumasız</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="updated group profile" xml:space="preserve">
@@ -7659,6 +7712,7 @@ SimpleX sunucuları profilinizi göremez.</target>
</trans-unit>
<trans-unit id="when IP hidden" xml:space="preserve">
<source>when IP hidden</source>
<target>IP gizliyken</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="yes" xml:space="preserve">
@@ -715,6 +715,7 @@
</trans-unit>
<trans-unit id="Allow downgrade" xml:space="preserve">
<source>Allow downgrade</source>
<target>Дозволити пониження версії</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Allow irreversible message deletion only if your contact allows it to you. (24 hours)" xml:space="preserve">
@@ -749,6 +750,7 @@
</trans-unit>
<trans-unit id="Allow to send SimpleX links." xml:space="preserve">
<source>Allow to send SimpleX links.</source>
<target>Дозволити надсилати посилання SimpleX.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Allow to send files and media." xml:space="preserve">
@@ -813,6 +815,7 @@
</trans-unit>
<trans-unit id="Always use private routing." xml:space="preserve">
<source>Always use private routing.</source>
<target>Завжди використовуйте приватну маршрутизацію.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Always use relay" xml:space="preserve">
@@ -1097,10 +1100,12 @@
</trans-unit>
<trans-unit id="Capacity exceeded - recipient did not receive previously sent messages." xml:space="preserve">
<source>Capacity exceeded - recipient did not receive previously sent messages.</source>
<target>Перевищено ліміт - одержувач не отримав раніше надіслані повідомлення.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Cellular" xml:space="preserve">
<source>Cellular</source>
<target>Стільниковий</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Change" xml:space="preserve">
@@ -1296,6 +1301,7 @@
</trans-unit>
<trans-unit id="Confirm files from unknown servers." xml:space="preserve">
<source>Confirm files from unknown servers.</source>
<target>Підтвердити файли з невідомих серверів.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Confirm network settings" xml:space="preserve">
@@ -1715,6 +1721,10 @@ This is your own one-time link!</source>
<target>База даних буде перенесена під час перезапуску програми</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>Децентралізований</target>
@@ -1964,6 +1974,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Destination server error: %@" xml:space="preserve">
<source>Destination server error: %@</source>
<target>Помилка сервера призначення: %@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Develop" xml:space="preserve">
@@ -2073,6 +2084,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Do NOT send messages directly, even if your or destination server does not support private routing." xml:space="preserve">
<source>Do NOT send messages directly, even if your or destination server does not support private routing.</source>
<target>НЕ надсилайте повідомлення напряму, навіть якщо ваш сервер або сервер призначення не підтримує приватну маршрутизацію.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do NOT use SimpleX for emergency calls." xml:space="preserve">
@@ -2082,6 +2094,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Do NOT use private routing." xml:space="preserve">
<source>Do NOT use private routing.</source>
<target>НЕ використовуйте приватну маршрутизацію.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Do it later" xml:space="preserve">
@@ -2116,6 +2129,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Download" xml:space="preserve">
<source>Download</source>
<target>Завантажити</target>
<note>chat item action</note>
</trans-unit>
<trans-unit id="Download failed" xml:space="preserve">
@@ -2230,6 +2244,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Enabled for" xml:space="preserve">
<source>Enabled for</source>
<target>Увімкнено для</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Encrypt" xml:space="preserve">
@@ -2739,6 +2754,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Files" xml:space="preserve">
<source>Files</source>
<target>Файли</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Files &amp; media" xml:space="preserve">
@@ -2758,6 +2774,7 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Files and media not allowed" xml:space="preserve">
<source>Files and media not allowed</source>
<target>Файли та медіафайли заборонені</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Files and media prohibited!" xml:space="preserve">
@@ -2827,28 +2844,36 @@ This cannot be undone!</source>
</trans-unit>
<trans-unit id="Forward" xml:space="preserve">
<source>Forward</source>
<target>Пересилання</target>
<note>chat item action</note>
</trans-unit>
<trans-unit id="Forward and save messages" xml:space="preserve">
<source>Forward and save messages</source>
<target>Пересилання та збереження повідомлень</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Forwarded" xml:space="preserve">
<source>Forwarded</source>
<target>Переслано</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Forwarded from" xml:space="preserve">
<source>Forwarded from</source>
<target>Переслано з</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Forwarding server: %@&#10;Destination server error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Destination server error: %2$@</source>
<target>Сервер переадресації: %1$@
Помилка сервера призначення: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Forwarding server: %@&#10;Error: %@" xml:space="preserve">
<source>Forwarding server: %1$@
Error: %2$@</source>
<target>Сервер переадресації: %1$@
Помилка: %2$@</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Found desktop" xml:space="preserve">
@@ -2963,6 +2988,7 @@ Error: %2$@</source>
</trans-unit>
<trans-unit id="Group members can send SimpleX links." xml:space="preserve">
<source>Group members can send SimpleX links.</source>
<target>Учасники групи можуть надсилати посилання SimpleX.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Group members can send direct messages." xml:space="preserve">
@@ -3207,6 +3233,7 @@ Error: %2$@</source>
</trans-unit>
<trans-unit id="In-call sounds" xml:space="preserve">
<source>In-call sounds</source>
<target>Звуки вхідного дзвінка</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Incognito" xml:space="preserve">
@@ -3666,6 +3693,7 @@ This is your link for group %@!</source>
</trans-unit>
<trans-unit id="Message delivery warning" xml:space="preserve">
<source>Message delivery warning</source>
<target>Попередження про доставку повідомлення</target>
<note>item status text</note>
</trans-unit>
<trans-unit id="Message draft" xml:space="preserve">
@@ -3673,6 +3701,10 @@ This is your link for group %@!</source>
<target>Чернетка повідомлення</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>Реакції на повідомлення</target>
@@ -3690,14 +3722,17 @@ This is your link for group %@!</source>
</trans-unit>
<trans-unit id="Message routing fallback" xml:space="preserve">
<source>Message routing fallback</source>
<target>Запасний варіант маршрутизації повідомлень</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message routing mode" xml:space="preserve">
<source>Message routing mode</source>
<target>Режим маршрутизації повідомлень</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message source remains private." xml:space="preserve">
<source>Message source remains private.</source>
<target>Джерело повідомлення залишається приватним.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message text" xml:space="preserve">
@@ -3817,6 +3852,7 @@ This is your link for group %@!</source>
</trans-unit>
<trans-unit id="More reliable network connection." xml:space="preserve">
<source>More reliable network connection.</source>
<target>Більш надійне з'єднання з мережею.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Most likely this connection is deleted." xml:space="preserve">
@@ -3851,14 +3887,17 @@ This is your link for group %@!</source>
</trans-unit>
<trans-unit id="Network connection" xml:space="preserve">
<source>Network connection</source>
<target>Підключення до мережі</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Network issues - message expired after many attempts to send it." xml:space="preserve">
<source>Network issues - message expired after many attempts to send it.</source>
<target>Проблеми з мережею - термін дії повідомлення закінчився після багатьох спроб надіслати його.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Network management" xml:space="preserve">
<source>Network management</source>
<target>Керування мережею</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Network settings" xml:space="preserve">
@@ -3973,6 +4012,7 @@ This is your link for group %@!</source>
</trans-unit>
<trans-unit id="No network connection" xml:space="preserve">
<source>No network connection</source>
<target>Немає підключення до мережі</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="No permission to record voice message" xml:space="preserve">
@@ -4191,6 +4231,7 @@ This is your link for group %@!</source>
</trans-unit>
<trans-unit id="Other" xml:space="preserve">
<source>Other</source>
<target>Інше</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="PING count" xml:space="preserve">
@@ -4397,10 +4438,12 @@ Error: %@</source>
</trans-unit>
<trans-unit id="Private message routing" xml:space="preserve">
<source>Private message routing</source>
<target>Маршрутизація приватних повідомлень</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private message routing 🚀" xml:space="preserve">
<source>Private message routing 🚀</source>
<target>Маршрутизація приватних повідомлень 🚀</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Private notes" xml:space="preserve">
@@ -4410,6 +4453,7 @@ Error: %@</source>
</trans-unit>
<trans-unit id="Private routing" xml:space="preserve">
<source>Private routing</source>
<target>Приватна маршрутизація</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Profile and server connections" xml:space="preserve">
@@ -4424,6 +4468,7 @@ Error: %@</source>
</trans-unit>
<trans-unit id="Profile images" xml:space="preserve">
<source>Profile images</source>
<target>Зображення профілю</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Profile name" xml:space="preserve">
@@ -4468,6 +4513,7 @@ Error: %@</source>
</trans-unit>
<trans-unit id="Prohibit sending SimpleX links." xml:space="preserve">
<source>Prohibit sending SimpleX links.</source>
<target>Заборонити надсилання посилань SimpleX.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Prohibit sending direct messages to members." xml:space="preserve">
@@ -4492,6 +4538,7 @@ Error: %@</source>
</trans-unit>
<trans-unit id="Protect IP address" xml:space="preserve">
<source>Protect IP address</source>
<target>Захист IP-адреси</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect app screen" xml:space="preserve">
@@ -4502,6 +4549,8 @@ Error: %@</source>
<trans-unit id="Protect your IP address from the messaging relays chosen by your contacts.&#10;Enable in *Network &amp; servers* settings." xml:space="preserve">
<source>Protect your IP address from the messaging relays chosen by your contacts.
Enable in *Network &amp; servers* settings.</source>
<target>Захистіть свою IP-адресу від ретрансляторів повідомлень, обраних вашими контактами.
Увімкніть у налаштуваннях *Мережа та сервери*.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Protect your chat profiles with a password!" xml:space="preserve">
@@ -4626,6 +4675,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Recipient(s) can't see who this message is from." xml:space="preserve">
<source>Recipient(s) can't see who this message is from.</source>
<target>Одержувач(и) не бачить, від кого це повідомлення.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Recipients see updates as you type them." xml:space="preserve">
@@ -4845,6 +4895,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Safely receive files" xml:space="preserve">
<source>Safely receive files</source>
<target>Безпечне отримання файлів</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Safer groups" xml:space="preserve">
@@ -4934,6 +4985,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Saved" xml:space="preserve">
<source>Saved</source>
<target>Збережено</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Saved WebRTC ICE servers will be removed" xml:space="preserve">
@@ -4943,6 +4995,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Saved from" xml:space="preserve">
<source>Saved from</source>
<target>Збережено з</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Saved message" xml:space="preserve">
@@ -5072,10 +5125,12 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Send messages directly when IP address is protected and your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when IP address is protected and your or destination server does not support private routing.</source>
<target>Надсилайте повідомлення напряму, якщо IP-адреса захищена, а ваш сервер або сервер призначення не підтримує приватну маршрутизацію.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send messages directly when your or destination server does not support private routing." xml:space="preserve">
<source>Send messages directly when your or destination server does not support private routing.</source>
<target>Надсилайте повідомлення напряму, якщо ваш сервер або сервер призначення не підтримує приватну маршрутизацію.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Send notifications" xml:space="preserve">
@@ -5185,6 +5240,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server address is incompatible with network settings." xml:space="preserve">
<source>Server address is incompatible with network settings.</source>
<target>Адреса сервера несумісна з налаштуваннями мережі.</target>
<note>srv error text.</note>
</trans-unit>
<trans-unit id="Server requires authorization to create queues, check password" xml:space="preserve">
@@ -5204,6 +5260,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Server version is incompatible with network settings." xml:space="preserve">
<source>Server version is incompatible with network settings.</source>
<target>Серверна версія несумісна з мережевими налаштуваннями.</target>
<note>srv error text</note>
</trans-unit>
<trans-unit id="Servers" xml:space="preserve">
@@ -5268,6 +5325,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Shape profile images" xml:space="preserve">
<source>Shape profile images</source>
<target>Сформуйте зображення профілю</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Share" xml:space="preserve">
@@ -5327,6 +5385,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show message status" xml:space="preserve">
<source>Show message status</source>
<target>Показати статус повідомлення</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show preview" xml:space="preserve">
@@ -5336,6 +5395,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Show → on messages sent via private routing." xml:space="preserve">
<source>Show → on messages sent via private routing.</source>
<target>Показувати → у повідомленнях, надісланих через приватну маршрутизацію.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Show:" xml:space="preserve">
@@ -5400,10 +5460,12 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="SimpleX links are prohibited in this group." xml:space="preserve">
<source>SimpleX links are prohibited in this group.</source>
<target>У цій групі заборонені посилання на SimpleX.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="SimpleX links not allowed" xml:space="preserve">
<source>SimpleX links not allowed</source>
<target>Посилання SimpleX заборонені</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="SimpleX one-time invitation" xml:space="preserve">
@@ -5443,6 +5505,7 @@ Enable in *Network &amp; servers* settings.</source>
</trans-unit>
<trans-unit id="Square, circle, or anything in between." xml:space="preserve">
<source>Square, circle, or anything in between.</source>
<target>Квадрат, коло або щось середнє між ними.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Start chat" xml:space="preserve">
@@ -5659,6 +5722,7 @@ It can happen because of some bug or when the connection is compromised.</source
</trans-unit>
<trans-unit id="The app will ask to confirm downloads from unknown file servers (except .onion)." xml:space="preserve">
<source>The app will ask to confirm downloads from unknown file servers (except .onion).</source>
<target>Програма попросить підтвердити завантаження з невідомих файлових серверів (крім .onion).</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="The attempt to change database passphrase was not completed." xml:space="preserve">
@@ -5848,6 +5912,7 @@ It can happen because of some bug or when the connection is compromised.</source
</trans-unit>
<trans-unit id="To protect your IP address, private routing uses your SMP servers to deliver messages." xml:space="preserve">
<source>To protect your IP address, private routing uses your SMP servers to deliver messages.</source>
<target>Щоб захистити вашу IP-адресу, приватна маршрутизація використовує ваші SMP-сервери для доставки повідомлень.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="To protect your information, turn on SimpleX Lock.&#10;You will be prompted to complete authentication before this feature is enabled." xml:space="preserve">
@@ -5989,6 +6054,7 @@ You will be prompted to complete authentication before this feature is enabled.<
</trans-unit>
<trans-unit id="Unknown servers!" xml:space="preserve">
<source>Unknown servers!</source>
<target>Невідомі сервери!</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Unless you use iOS call interface, enable Do Not Disturb mode to avoid interruptions." xml:space="preserve">
@@ -6140,10 +6206,12 @@ To connect, please ask your contact to create another connection link and check
</trans-unit>
<trans-unit id="Use private routing with unknown servers when IP address is not protected." xml:space="preserve">
<source>Use private routing with unknown servers when IP address is not protected.</source>
<target>Використовуйте приватну маршрутизацію з невідомими серверами, якщо IP-адреса не захищена.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use private routing with unknown servers." xml:space="preserve">
<source>Use private routing with unknown servers.</source>
<target>Використовуйте приватну маршрутизацію з невідомими серверами.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Use server" xml:space="preserve">
@@ -6263,6 +6331,7 @@ To connect, please ask your contact to create another connection link and check
</trans-unit>
<trans-unit id="Voice messages not allowed" xml:space="preserve">
<source>Voice messages not allowed</source>
<target>Голосові повідомлення заборонені</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Voice messages prohibited!" xml:space="preserve">
@@ -6337,6 +6406,7 @@ To connect, please ask your contact to create another connection link and check
</trans-unit>
<trans-unit id="When connecting audio and video calls." xml:space="preserve">
<source>When connecting audio and video calls.</source>
<target>При підключенні аудіо та відеодзвінків.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="When people request to connect, you can accept or reject it." xml:space="preserve">
@@ -6351,14 +6421,17 @@ To connect, please ask your contact to create another connection link and check
</trans-unit>
<trans-unit id="WiFi" xml:space="preserve">
<source>WiFi</source>
<target>WiFi</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Will be enabled in direct chats!" xml:space="preserve">
<source>Will be enabled in direct chats!</source>
<target>Буде ввімкнено в прямих чатах!</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Wired ethernet" xml:space="preserve">
<source>Wired ethernet</source>
<target>Дротова мережа Ethernet</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="With encrypted files and media." xml:space="preserve">
@@ -6378,10 +6451,12 @@ To connect, please ask your contact to create another connection link and check
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to file servers." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to file servers.</source>
<target>Без Tor або VPN ваша IP-адреса буде видимою для файлових серверів.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." xml:space="preserve">
<source>Without Tor or VPN, your IP address will be visible to these XFTP relays: %@.</source>
<target>Без Tor або VPN ваша IP-адреса буде видимою для цих XFTP-ретрансляторів: %@.</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Wrong database passphrase" xml:space="preserve">
@@ -6391,6 +6466,7 @@ To connect, please ask your contact to create another connection link and check
</trans-unit>
<trans-unit id="Wrong key or unknown connection - most likely this connection is deleted." xml:space="preserve">
<source>Wrong key or unknown connection - most likely this connection is deleted.</source>
<target>Неправильний ключ або невідоме з'єднання - швидше за все, це з'єднання видалено.</target>
<note>snd error text</note>
</trans-unit>
<trans-unit id="Wrong passphrase!" xml:space="preserve">
@@ -6858,6 +6934,7 @@ SimpleX servers cannot see your profile.</source>
</trans-unit>
<trans-unit id="admins" xml:space="preserve">
<source>admins</source>
<target>адміністратори</target>
<note>feature role</note>
</trans-unit>
<trans-unit id="agreeing encryption for %@…" xml:space="preserve">
@@ -6872,6 +6949,7 @@ SimpleX servers cannot see your profile.</source>
</trans-unit>
<trans-unit id="all members" xml:space="preserve">
<source>all members</source>
<target>всі учасники</target>
<note>feature role</note>
</trans-unit>
<trans-unit id="always" xml:space="preserve">
@@ -7206,6 +7284,7 @@ SimpleX servers cannot see your profile.</source>
</trans-unit>
<trans-unit id="forwarded" xml:space="preserve">
<source>forwarded</source>
<target>переслано</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="group deleted" xml:space="preserve">
@@ -7417,6 +7496,7 @@ SimpleX servers cannot see your profile.</source>
</trans-unit>
<trans-unit id="owners" xml:space="preserve">
<source>owners</source>
<target>власники</target>
<note>feature role</note>
</trans-unit>
<trans-unit id="peer-to-peer" xml:space="preserve">
@@ -7471,10 +7551,12 @@ SimpleX servers cannot see your profile.</source>
</trans-unit>
<trans-unit id="saved" xml:space="preserve">
<source>saved</source>
<target>збережено</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="saved from %@" xml:space="preserve">
<source>saved from %@</source>
<target>збережено з %@</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="sec" xml:space="preserve">
@@ -7502,6 +7584,12 @@ SimpleX servers cannot see your profile.</source>
<target>надіслати пряме повідомлення</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<target>встановити нову контактну адресу</target>
@@ -7544,6 +7632,7 @@ SimpleX servers cannot see your profile.</source>
</trans-unit>
<trans-unit id="unknown relays" xml:space="preserve">
<source>unknown relays</source>
<target>невідомі реле</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="unknown status" xml:space="preserve">
@@ -7553,6 +7642,7 @@ SimpleX servers cannot see your profile.</source>
</trans-unit>
<trans-unit id="unprotected" xml:space="preserve">
<source>unprotected</source>
<target>незахищені</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="updated group profile" xml:space="preserve">
@@ -7622,6 +7712,7 @@ SimpleX servers cannot see your profile.</source>
</trans-unit>
<trans-unit id="when IP hidden" xml:space="preserve">
<source>when IP hidden</source>
<target>коли IP приховано</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="yes" xml:space="preserve">
@@ -7631,6 +7722,7 @@ SimpleX servers cannot see your profile.</source>
</trans-unit>
<trans-unit id="you" xml:space="preserve">
<source>you</source>
<target>ти</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="you are invited to group" xml:space="preserve">
@@ -1695,6 +1695,10 @@ This is your own one-time link!</source>
<target>应用程序重新启动时将迁移数据库</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Debug delivery" xml:space="preserve">
<source>Debug delivery</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Decentralized" xml:space="preserve">
<source>Decentralized</source>
<target>分散式</target>
@@ -3646,6 +3650,10 @@ This is your link for group %@!</source>
<target>消息草稿</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message queue info" xml:space="preserve">
<source>Message queue info</source>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="Message reactions" xml:space="preserve">
<source>Message reactions</source>
<target>消息回应</target>
@@ -7471,6 +7479,12 @@ SimpleX 服务器无法看到您的资料。</target>
<target>发送私信</target>
<note>No comment provided by engineer.</note>
</trans-unit>
<trans-unit id="server queue info: %@&#10;&#10;last received msg: %@" xml:space="preserve">
<source>server queue info: %1$@
last received msg: %2$@</source>
<note>queue info</note>
</trans-unit>
<trans-unit id="set new contact address" xml:space="preserve">
<source>set new contact address</source>
<target>设置新的联系地址</target>
@@ -5,5 +5,5 @@
"CFBundleName" = "SimpleX NSE";
/* Copyright (human-readable) */
"NSHumanReadableCopyright" = "Copyright © 2022 SimpleX Chat. All rights reserved.";
"NSHumanReadableCopyright" = "Copyright © 2024 SimpleX Chat. All rights reserved.";
+26 -26
View File
@@ -24,6 +24,11 @@
5C029EAA283942EA004A9677 /* CallController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C029EA9283942EA004A9677 /* CallController.swift */; };
5C05DF532840AA1D00C683F9 /* CallSettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C05DF522840AA1D00C683F9 /* CallSettings.swift */; };
5C063D2727A4564100AEC577 /* ChatPreviewView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C063D2627A4564100AEC577 /* ChatPreviewView.swift */; };
5C0EA13B2C0B176B00AD2E5E /* libgmp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5C0EA1362C0B176B00AD2E5E /* libgmp.a */; };
5C0EA13C2C0B176B00AD2E5E /* libgmpxx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5C0EA1372C0B176B00AD2E5E /* libgmpxx.a */; };
5C0EA13D2C0B176B00AD2E5E /* libffi.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5C0EA1382C0B176B00AD2E5E /* libffi.a */; };
5C0EA13E2C0B176B00AD2E5E /* libHSsimplex-chat-5.8.0.5-Idqi6HXqzzs2zrnyZtMyhc-ghc9.6.3.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5C0EA1392C0B176B00AD2E5E /* libHSsimplex-chat-5.8.0.5-Idqi6HXqzzs2zrnyZtMyhc-ghc9.6.3.a */; };
5C0EA13F2C0B176B00AD2E5E /* libHSsimplex-chat-5.8.0.5-Idqi6HXqzzs2zrnyZtMyhc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5C0EA13A2C0B176B00AD2E5E /* libHSsimplex-chat-5.8.0.5-Idqi6HXqzzs2zrnyZtMyhc.a */; };
5C10D88828EED12E00E58BF0 /* ContactConnectionInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C10D88728EED12E00E58BF0 /* ContactConnectionInfo.swift */; };
5C10D88A28F187F300E58BF0 /* FullScreenMediaView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C10D88928F187F300E58BF0 /* FullScreenMediaView.swift */; };
5C116CDC27AABE0400E66D01 /* ContactRequestView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C116CDB27AABE0400E66D01 /* ContactRequestView.swift */; };
@@ -139,11 +144,6 @@
5CEACCED27DEA495000BD591 /* MsgContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CEACCEC27DEA495000BD591 /* MsgContentView.swift */; };
5CEBD7462A5C0A8F00665FE2 /* KeyboardPadding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CEBD7452A5C0A8F00665FE2 /* KeyboardPadding.swift */; };
5CEBD7482A5F115D00665FE2 /* SetDeliveryReceiptsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CEBD7472A5F115D00665FE2 /* SetDeliveryReceiptsView.swift */; };
5CEE879E2C076B8400583B8A /* libHSsimplex-chat-5.8.0.4-LLYprD9nQTR9mmjl4EdHW7.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CEE87992C076B8300583B8A /* libHSsimplex-chat-5.8.0.4-LLYprD9nQTR9mmjl4EdHW7.a */; };
5CEE879F2C076B8400583B8A /* libHSsimplex-chat-5.8.0.4-LLYprD9nQTR9mmjl4EdHW7-ghc9.6.3.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CEE879A2C076B8300583B8A /* libHSsimplex-chat-5.8.0.4-LLYprD9nQTR9mmjl4EdHW7-ghc9.6.3.a */; };
5CEE87A02C076B8400583B8A /* libffi.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CEE879B2C076B8400583B8A /* libffi.a */; };
5CEE87A12C076B8400583B8A /* libgmp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CEE879C2C076B8400583B8A /* libgmp.a */; };
5CEE87A22C076B8400583B8A /* libgmpxx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CEE879D2C076B8400583B8A /* libgmpxx.a */; };
5CF937202B24DE8C00E1D781 /* SharedFileSubscriber.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CF9371F2B24DE8C00E1D781 /* SharedFileSubscriber.swift */; };
5CF937232B2503D000E1D781 /* NSESubscriber.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CF937212B25034A00E1D781 /* NSESubscriber.swift */; };
5CFA59C42860BC6200863A68 /* MigrateToAppGroupView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CFA59C32860BC6200863A68 /* MigrateToAppGroupView.swift */; };
@@ -273,6 +273,11 @@
5C029EA9283942EA004A9677 /* CallController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CallController.swift; sourceTree = "<group>"; };
5C05DF522840AA1D00C683F9 /* CallSettings.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CallSettings.swift; sourceTree = "<group>"; };
5C063D2627A4564100AEC577 /* ChatPreviewView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChatPreviewView.swift; sourceTree = "<group>"; };
5C0EA1362C0B176B00AD2E5E /* libgmp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgmp.a; sourceTree = "<group>"; };
5C0EA1372C0B176B00AD2E5E /* libgmpxx.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgmpxx.a; sourceTree = "<group>"; };
5C0EA1382C0B176B00AD2E5E /* libffi.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libffi.a; sourceTree = "<group>"; };
5C0EA1392C0B176B00AD2E5E /* libHSsimplex-chat-5.8.0.5-Idqi6HXqzzs2zrnyZtMyhc-ghc9.6.3.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-5.8.0.5-Idqi6HXqzzs2zrnyZtMyhc-ghc9.6.3.a"; sourceTree = "<group>"; };
5C0EA13A2C0B176B00AD2E5E /* libHSsimplex-chat-5.8.0.5-Idqi6HXqzzs2zrnyZtMyhc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-5.8.0.5-Idqi6HXqzzs2zrnyZtMyhc.a"; sourceTree = "<group>"; };
5C10D88728EED12E00E58BF0 /* ContactConnectionInfo.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactConnectionInfo.swift; sourceTree = "<group>"; };
5C10D88928F187F300E58BF0 /* FullScreenMediaView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FullScreenMediaView.swift; sourceTree = "<group>"; };
5C116CDB27AABE0400E66D01 /* ContactRequestView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactRequestView.swift; sourceTree = "<group>"; };
@@ -435,11 +440,6 @@
5CEACCEC27DEA495000BD591 /* MsgContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MsgContentView.swift; sourceTree = "<group>"; };
5CEBD7452A5C0A8F00665FE2 /* KeyboardPadding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyboardPadding.swift; sourceTree = "<group>"; };
5CEBD7472A5F115D00665FE2 /* SetDeliveryReceiptsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SetDeliveryReceiptsView.swift; sourceTree = "<group>"; };
5CEE87992C076B8300583B8A /* libHSsimplex-chat-5.8.0.4-LLYprD9nQTR9mmjl4EdHW7.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-5.8.0.4-LLYprD9nQTR9mmjl4EdHW7.a"; sourceTree = "<group>"; };
5CEE879A2C076B8300583B8A /* libHSsimplex-chat-5.8.0.4-LLYprD9nQTR9mmjl4EdHW7-ghc9.6.3.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-5.8.0.4-LLYprD9nQTR9mmjl4EdHW7-ghc9.6.3.a"; sourceTree = "<group>"; };
5CEE879B2C076B8400583B8A /* libffi.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libffi.a; sourceTree = "<group>"; };
5CEE879C2C076B8400583B8A /* libgmp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgmp.a; sourceTree = "<group>"; };
5CEE879D2C076B8400583B8A /* libgmpxx.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgmpxx.a; sourceTree = "<group>"; };
5CF9371F2B24DE8C00E1D781 /* SharedFileSubscriber.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SharedFileSubscriber.swift; sourceTree = "<group>"; };
5CF937212B25034A00E1D781 /* NSESubscriber.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NSESubscriber.swift; sourceTree = "<group>"; };
5CFA59C32860BC6200863A68 /* MigrateToAppGroupView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MigrateToAppGroupView.swift; sourceTree = "<group>"; };
@@ -529,13 +529,13 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
5CEE879E2C076B8400583B8A /* libHSsimplex-chat-5.8.0.4-LLYprD9nQTR9mmjl4EdHW7.a in Frameworks */,
5C0EA13C2C0B176B00AD2E5E /* libgmpxx.a in Frameworks */,
5CE2BA93284534B000EC33A6 /* libiconv.tbd in Frameworks */,
5CEE879F2C076B8400583B8A /* libHSsimplex-chat-5.8.0.4-LLYprD9nQTR9mmjl4EdHW7-ghc9.6.3.a in Frameworks */,
5CEE87A02C076B8400583B8A /* libffi.a in Frameworks */,
5CEE87A12C076B8400583B8A /* libgmp.a in Frameworks */,
5C0EA13B2C0B176B00AD2E5E /* libgmp.a in Frameworks */,
5C0EA13D2C0B176B00AD2E5E /* libffi.a in Frameworks */,
5C0EA13F2C0B176B00AD2E5E /* libHSsimplex-chat-5.8.0.5-Idqi6HXqzzs2zrnyZtMyhc.a in Frameworks */,
5CE2BA94284534BB00EC33A6 /* libz.tbd in Frameworks */,
5CEE87A22C076B8400583B8A /* libgmpxx.a in Frameworks */,
5C0EA13E2C0B176B00AD2E5E /* libHSsimplex-chat-5.8.0.5-Idqi6HXqzzs2zrnyZtMyhc-ghc9.6.3.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -601,11 +601,11 @@
5C764E5C279C70B7000C6508 /* Libraries */ = {
isa = PBXGroup;
children = (
5CEE879B2C076B8400583B8A /* libffi.a */,
5CEE879C2C076B8400583B8A /* libgmp.a */,
5CEE879D2C076B8400583B8A /* libgmpxx.a */,
5CEE879A2C076B8300583B8A /* libHSsimplex-chat-5.8.0.4-LLYprD9nQTR9mmjl4EdHW7-ghc9.6.3.a */,
5CEE87992C076B8300583B8A /* libHSsimplex-chat-5.8.0.4-LLYprD9nQTR9mmjl4EdHW7.a */,
5C0EA1382C0B176B00AD2E5E /* libffi.a */,
5C0EA1362C0B176B00AD2E5E /* libgmp.a */,
5C0EA1372C0B176B00AD2E5E /* libgmpxx.a */,
5C0EA1392C0B176B00AD2E5E /* libHSsimplex-chat-5.8.0.5-Idqi6HXqzzs2zrnyZtMyhc-ghc9.6.3.a */,
5C0EA13A2C0B176B00AD2E5E /* libHSsimplex-chat-5.8.0.5-Idqi6HXqzzs2zrnyZtMyhc.a */,
);
path = Libraries;
sourceTree = "<group>";
@@ -1552,7 +1552,7 @@
CLANG_TIDY_MISC_REDUNDANT_EXPRESSION = YES;
CODE_SIGN_ENTITLEMENTS = "SimpleX (iOS).entitlements";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 221;
CURRENT_PROJECT_VERSION = 223;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = 5NN7GUYB6T;
ENABLE_BITCODE = NO;
@@ -1601,7 +1601,7 @@
CLANG_TIDY_MISC_REDUNDANT_EXPRESSION = YES;
CODE_SIGN_ENTITLEMENTS = "SimpleX (iOS).entitlements";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 221;
CURRENT_PROJECT_VERSION = 223;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = 5NN7GUYB6T;
ENABLE_BITCODE = NO;
@@ -1687,7 +1687,7 @@
CODE_SIGN_ENTITLEMENTS = "SimpleX NSE/SimpleX NSE.entitlements";
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 221;
CURRENT_PROJECT_VERSION = 223;
DEVELOPMENT_TEAM = 5NN7GUYB6T;
ENABLE_BITCODE = NO;
GCC_OPTIMIZATION_LEVEL = s;
@@ -1724,7 +1724,7 @@
CODE_SIGN_ENTITLEMENTS = "SimpleX NSE/SimpleX NSE.entitlements";
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 221;
CURRENT_PROJECT_VERSION = 223;
DEVELOPMENT_TEAM = 5NN7GUYB6T;
ENABLE_BITCODE = NO;
ENABLE_CODE_COVERAGE = NO;
@@ -1761,7 +1761,7 @@
CLANG_TIDY_BUGPRONE_REDUNDANT_BRANCH_CONDITION = YES;
CLANG_TIDY_MISC_REDUNDANT_EXPRESSION = YES;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 221;
CURRENT_PROJECT_VERSION = 223;
DEFINES_MODULE = YES;
DEVELOPMENT_TEAM = 5NN7GUYB6T;
DYLIB_COMPATIBILITY_VERSION = 1;
@@ -1812,7 +1812,7 @@
CLANG_TIDY_BUGPRONE_REDUNDANT_BRANCH_CONDITION = YES;
CLANG_TIDY_MISC_REDUNDANT_EXPRESSION = YES;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 221;
CURRENT_PROJECT_VERSION = 223;
DEFINES_MODULE = YES;
DEVELOPMENT_TEAM = 5NN7GUYB6T;
DYLIB_COMPATIBILITY_VERSION = 1;
+52 -2
View File
@@ -82,6 +82,8 @@ public enum ChatCommand {
case apiSetMemberSettings(groupId: Int64, groupMemberId: Int64, memberSettings: GroupMemberSettings)
case apiContactInfo(contactId: Int64)
case apiGroupMemberInfo(groupId: Int64, groupMemberId: Int64)
case apiContactQueueInfo(contactId: Int64)
case apiGroupMemberQueueInfo(groupId: Int64, groupMemberId: Int64)
case apiSwitchContact(contactId: Int64)
case apiSwitchGroupMember(groupId: Int64, groupMemberId: Int64)
case apiAbortSwitchContact(contactId: Int64)
@@ -228,6 +230,8 @@ public enum ChatCommand {
case let .apiSetMemberSettings(groupId, groupMemberId, memberSettings): return "/_member settings #\(groupId) \(groupMemberId) \(encodeJSON(memberSettings))"
case let .apiContactInfo(contactId): return "/_info @\(contactId)"
case let .apiGroupMemberInfo(groupId, groupMemberId): return "/_info #\(groupId) \(groupMemberId)"
case let .apiContactQueueInfo(contactId): return "/_queue info @\(contactId)"
case let .apiGroupMemberQueueInfo(groupId, groupMemberId): return "/_queue info #\(groupId) \(groupMemberId)"
case let .apiSwitchContact(contactId): return "/_switch @\(contactId)"
case let .apiSwitchGroupMember(groupId, groupMemberId): return "/_switch #\(groupId) \(groupMemberId)"
case let .apiAbortSwitchContact(contactId): return "/_abort switch @\(contactId)"
@@ -375,6 +379,8 @@ public enum ChatCommand {
case .apiSetMemberSettings: return "apiSetMemberSettings"
case .apiContactInfo: return "apiContactInfo"
case .apiGroupMemberInfo: return "apiGroupMemberInfo"
case .apiContactQueueInfo: return "apiContactQueueInfo"
case .apiGroupMemberQueueInfo: return "apiGroupMemberQueueInfo"
case .apiSwitchContact: return "apiSwitchContact"
case .apiSwitchGroupMember: return "apiSwitchGroupMember"
case .apiAbortSwitchContact: return "apiAbortSwitchContact"
@@ -516,6 +522,7 @@ public enum ChatResponse: Decodable, Error {
case networkConfig(networkConfig: NetCfg)
case contactInfo(user: UserRef, contact: Contact, connectionStats_: ConnectionStats?, customUserProfile: Profile?)
case groupMemberInfo(user: UserRef, groupInfo: GroupInfo, member: GroupMember, connectionStats_: ConnectionStats?)
case queueInfo(user: UserRef, rcvMsgInfo: RcvMsgInfo?, queueInfo: QueueInfo)
case contactSwitchStarted(user: UserRef, contact: Contact, connectionStats: ConnectionStats)
case groupMemberSwitchStarted(user: UserRef, groupInfo: GroupInfo, member: GroupMember, connectionStats: ConnectionStats)
case contactSwitchAborted(user: UserRef, contact: Contact, connectionStats: ConnectionStats)
@@ -628,7 +635,7 @@ public enum ChatResponse: Decodable, Error {
case sndFileCompleteXFTP(user: UserRef, chatItem: AChatItem, fileTransferMeta: FileTransferMeta)
case sndStandaloneFileComplete(user: UserRef, fileTransferMeta: FileTransferMeta, rcvURIs: [String])
case sndFileCancelledXFTP(user: UserRef, chatItem_: AChatItem?, fileTransferMeta: FileTransferMeta)
case sndFileError(user: UserRef, chatItem_: AChatItem?, fileTransferMeta: FileTransferMeta)
case sndFileError(user: UserRef, chatItem_: AChatItem?, fileTransferMeta: FileTransferMeta, errorMessage: String)
// call events
case callInvitation(callInvitation: RcvCallInvitation)
case callOffer(user: UserRef, contact: Contact, callType: CallType, offer: WebRTCSession, sharedKey: String?, askConfirmation: Bool)
@@ -678,6 +685,7 @@ public enum ChatResponse: Decodable, Error {
case .networkConfig: return "networkConfig"
case .contactInfo: return "contactInfo"
case .groupMemberInfo: return "groupMemberInfo"
case .queueInfo: return "queueInfo"
case .contactSwitchStarted: return "contactSwitchStarted"
case .groupMemberSwitchStarted: return "groupMemberSwitchStarted"
case .contactSwitchAborted: return "contactSwitchAborted"
@@ -836,6 +844,9 @@ public enum ChatResponse: Decodable, Error {
case let .networkConfig(networkConfig): return String(describing: networkConfig)
case let .contactInfo(u, contact, connectionStats_, customUserProfile): return withUser(u, "contact: \(String(describing: contact))\nconnectionStats_: \(String(describing: connectionStats_))\ncustomUserProfile: \(String(describing: customUserProfile))")
case let .groupMemberInfo(u, groupInfo, member, connectionStats_): return withUser(u, "groupInfo: \(String(describing: groupInfo))\nmember: \(String(describing: member))\nconnectionStats_: \(String(describing: connectionStats_))")
case let .queueInfo(u, rcvMsgInfo, queueInfo):
let msgInfo = if let info = rcvMsgInfo { encodeJSON(rcvMsgInfo) } else { "none" }
return withUser(u, "rcvMsgInfo: \(msgInfo)\nqueueInfo: \(encodeJSON(queueInfo))")
case let .contactSwitchStarted(u, contact, connectionStats): return withUser(u, "contact: \(String(describing: contact))\nconnectionStats: \(String(describing: connectionStats))")
case let .groupMemberSwitchStarted(u, groupInfo, member, connectionStats): return withUser(u, "groupInfo: \(String(describing: groupInfo))\nmember: \(String(describing: member))\nconnectionStats: \(String(describing: connectionStats))")
case let .contactSwitchAborted(u, contact, connectionStats): return withUser(u, "contact: \(String(describing: contact))\nconnectionStats: \(String(describing: connectionStats))")
@@ -945,7 +956,7 @@ public enum ChatResponse: Decodable, Error {
case let .sndFileCompleteXFTP(u, chatItem, _): return withUser(u, String(describing: chatItem))
case let .sndStandaloneFileComplete(u, _, rcvURIs): return withUser(u, String(rcvURIs.count))
case let .sndFileCancelledXFTP(u, chatItem, _): return withUser(u, String(describing: chatItem))
case let .sndFileError(u, chatItem, _): return withUser(u, String(describing: chatItem))
case let .sndFileError(u, chatItem, _, err): return withUser(u, "error: \(String(describing: err))\nchatItem: \(String(describing: chatItem))")
case let .callInvitation(inv): return String(describing: inv)
case let .callOffer(u, contact, callType, offer, sharedKey, askConfirmation): return withUser(u, "contact: \(contact.id)\ncallType: \(String(describing: callType))\nsharedKey: \(sharedKey ?? "")\naskConfirmation: \(askConfirmation)\noffer: \(String(describing: offer))")
case let .callAnswer(u, contact, answer): return withUser(u, "contact: \(contact.id)\nanswer: \(String(describing: answer))")
@@ -2170,3 +2181,42 @@ public enum UserNetworkType: String, Codable {
}
}
}
public struct RcvMsgInfo: Codable {
var msgId: Int64
var msgDeliveryId: Int64
var msgDeliveryStatus: String
var agentMsgId: Int64
var agentMsgMeta: String
}
public struct QueueInfo: Codable {
var qiSnd: Bool
var qiNtf: Bool
var qiSub: QSub?
var qiSize: Int
var qiMsg: MsgInfo?
}
public struct QSub: Codable {
var qSubThread: QSubThread
var qDelivered: String?
}
public enum QSubThread: String, Codable {
case noSub
case subPending
case subThread
case prohibitSub
}
public struct MsgInfo: Codable {
var msgId: String
var msgTs: Date
var msgType: MsgType
}
public enum MsgType: String, Codable {
case message
case quota
}
+114 -3
View File
@@ -449,6 +449,9 @@
/* No comment provided by engineer. */
"Allow disappearing messages only if your contact allows it to you." = "Erlauben Sie verschwindende Nachrichten nur dann, wenn es Ihr Kontakt ebenfalls erlaubt.";
/* No comment provided by engineer. */
"Allow downgrade" = "Herabstufung erlauben";
/* No comment provided by engineer. */
"Allow irreversible message deletion only if your contact allows it to you. (24 hours)" = "Erlauben Sie das unwiederbringliche Löschen von Nachrichten nur dann, wenn es Ihnen Ihr Kontakt ebenfalls erlaubt. (24 Stunden)";
@@ -509,6 +512,9 @@
/* pref value */
"always" = "Immer";
/* No comment provided by engineer. */
"Always use private routing." = "Sie nutzen immer privates Routing.";
/* No comment provided by engineer. */
"Always use relay" = "Über ein Relais verbinden";
@@ -716,6 +722,9 @@
/* No comment provided by engineer. */
"Cannot receive file" = "Datei kann nicht empfangen werden";
/* snd error text */
"Capacity exceeded - recipient did not receive previously sent messages." = "Kapazität überschritten - der Empfänger hat die zuvor gesendeten Nachrichten nicht empfangen.";
/* No comment provided by engineer. */
"Cellular" = "Zellulär";
@@ -852,6 +861,9 @@
/* No comment provided by engineer. */
"Confirm database upgrades" = "Datenbank-Aktualisierungen bestätigen";
/* No comment provided by engineer. */
"Confirm files from unknown servers." = "Dateien von unbekannten Servern bestätigen.";
/* No comment provided by engineer. */
"Confirm network settings" = "Bestätigen Sie die Netzwerkeinstellungen";
@@ -1320,6 +1332,9 @@
/* No comment provided by engineer. */
"Desktop devices" = "Desktop-Geräte";
/* snd error text */
"Destination server error: %@" = "Zielserver-Fehler: %@";
/* No comment provided by engineer. */
"Develop" = "Entwicklung";
@@ -1399,7 +1414,13 @@
"Do not send history to new members." = "Den Nachrichtenverlauf nicht an neue Mitglieder senden.";
/* No comment provided by engineer. */
"Do NOT use SimpleX for emergency calls." = "Nutzen Sie SimpleX nicht für Notrufe.";
"Do NOT send messages directly, even if your or destination server does not support private routing." = "Nachrichten werden nicht direkt versendet, selbst wenn Ihr oder der Zielserver kein privates Routing unterstützt.";
/* No comment provided by engineer. */
"Do NOT use private routing." = "Sie nutzen KEIN privates Routing.";
/* No comment provided by engineer. */
"Do NOT use SimpleX for emergency calls." = "SimpleX NICHT für Notrufe nutzen.";
/* No comment provided by engineer. */
"Don't create address" = "Keine Adresse erstellt";
@@ -1839,6 +1860,9 @@
/* No comment provided by engineer. */
"File: %@" = "Datei: %@";
/* No comment provided by engineer. */
"Files" = "Dateien";
/* No comment provided by engineer. */
"Files & media" = "Dateien & Medien";
@@ -1905,6 +1929,12 @@
/* No comment provided by engineer. */
"Forwarded from" = "Weitergeleitet aus";
/* snd error text */
"Forwarding server: %@\nDestination server error: %@" = "Weiterleitungsserver: %1$@\nZielserver Fehler: %2$@";
/* snd error text */
"Forwarding server: %@\nError: %@" = "Weiterleitungsserver: %1$@\nFehler: %2$@";
/* No comment provided by engineer. */
"Found desktop" = "Gefundener Desktop";
@@ -2460,6 +2490,9 @@
/* No comment provided by engineer. */
"Message delivery receipts!" = "Empfangsbestätigungen für Nachrichten!";
/* item status text */
"Message delivery warning" = "Warnung bei der Nachrichtenzustellung";
/* No comment provided by engineer. */
"Message draft" = "Nachrichtenentwurf";
@@ -2475,6 +2508,12 @@
/* notification */
"message received" = "Nachricht empfangen";
/* No comment provided by engineer. */
"Message routing fallback" = "Fallback für das Nachrichten-Routing";
/* No comment provided by engineer. */
"Message routing mode" = "Modus für das Nachrichten-Routing";
/* No comment provided by engineer. */
"Message source remains private." = "Die Nachrichtenquelle bleibt privat.";
@@ -2586,6 +2625,9 @@
/* No comment provided by engineer. */
"Network connection" = "Netzwerkverbindung";
/* snd error text */
"Network issues - message expired after many attempts to send it." = "Netzwerk-Fehler - die Nachricht ist nach vielen Sende-Versuchen abgelaufen.";
/* No comment provided by engineer. */
"Network management" = "Netzwerk-Verwaltung";
@@ -2948,9 +2990,18 @@
/* No comment provided by engineer. */
"Private filenames" = "Neutrale Dateinamen";
/* No comment provided by engineer. */
"Private message routing" = "Privates Nachrichten-Routing";
/* No comment provided by engineer. */
"Private message routing 🚀" = "Privates Nachrichten-Routing 🚀";
/* name of notes to self */
"Private notes" = "Private Notizen";
/* No comment provided by engineer. */
"Private routing" = "Privates Routing";
/* No comment provided by engineer. */
"Profile and server connections" = "Profil und Serververbindungen";
@@ -3002,9 +3053,15 @@
/* No comment provided by engineer. */
"Protect app screen" = "App-Bildschirm schützen";
/* No comment provided by engineer. */
"Protect IP address" = "IP-Adresse schützen";
/* No comment provided by engineer. */
"Protect your chat profiles with a password!" = "Ihre Chat-Profile mit einem Passwort schützen!";
/* No comment provided by engineer. */
"Protect your IP address from the messaging relays chosen by your contacts.\nEnable in *Network & servers* settings." = "Schützen Sie Ihre IP-Adresse vor den Nachrichten-Relais , die Ihre Kontakte ausgewählt haben.\nAktivieren Sie es in den *Netzwerk & Server* Einstellungen.";
/* No comment provided by engineer. */
"Protocol timeout" = "Protokollzeitüberschreitung";
@@ -3230,6 +3287,9 @@
/* No comment provided by engineer. */
"Run chat" = "Chat starten";
/* No comment provided by engineer. */
"Safely receive files" = "Dateien sicher empfangen";
/* No comment provided by engineer. */
"Safer groups" = "Sicherere Gruppen";
@@ -3386,6 +3446,12 @@
/* No comment provided by engineer. */
"Send live message" = "Live Nachricht senden";
/* No comment provided by engineer. */
"Send messages directly when IP address is protected and your or destination server does not support private routing." = "Nachrichten werden direkt versendet, wenn die IP-Adresse geschützt ist, und Ihr oder der Zielserver kein privates Routing unterstützt.";
/* No comment provided by engineer. */
"Send messages directly when your or destination server does not support private routing." = "Nachrichten werden direkt versendet, wenn Ihr oder der Zielserver kein privates Routing unterstützt.";
/* No comment provided by engineer. */
"Send notifications" = "Benachrichtigungen senden";
@@ -3449,6 +3515,9 @@
/* No comment provided by engineer. */
"Sent messages will be deleted after set time." = "Gesendete Nachrichten werden nach der eingestellten Zeit gelöscht.";
/* srv error text. */
"Server address is incompatible with network settings." = "Die Server-Adresse ist nicht mit den Netzwerk-Einstellungen kompatibel.";
/* server test error */
"Server requires authorization to create queues, check password" = "Um Warteschlangen zu erzeugen benötigt der Server eine Authentifizierung. Bitte überprüfen Sie das Passwort";
@@ -3458,6 +3527,9 @@
/* No comment provided by engineer. */
"Server test failed!" = "Server Test ist fehlgeschlagen!";
/* srv error text */
"Server version is incompatible with network settings." = "Die Server-Version ist nicht mit den Netzwerk-Einstellungen kompatibel.";
/* No comment provided by engineer. */
"Servers" = "Server";
@@ -3524,6 +3596,9 @@
/* No comment provided by engineer. */
"Share with contacts" = "Mit Kontakten teilen";
/* No comment provided by engineer. */
"Show → on messages sent via private routing." = "Bei Nachrichten, die über privates Routing versendet wurden, → anzeigen.";
/* No comment provided by engineer. */
"Show calls in phone history" = "Anrufliste anzeigen";
@@ -3533,6 +3608,9 @@
/* No comment provided by engineer. */
"Show last messages" = "Letzte Nachrichten anzeigen";
/* No comment provided by engineer. */
"Show message status" = "Nachrichtenstatus anzeigen";
/* No comment provided by engineer. */
"Show preview" = "Vorschau anzeigen";
@@ -3740,6 +3818,9 @@
/* No comment provided by engineer. */
"The app can notify you when you receive messages or contact requests - please open settings to enable." = "Wenn sie Nachrichten oder Kontaktanfragen empfangen, kann Sie die App benachrichtigen - Um dies zu aktivieren, öffnen Sie bitte die Einstellungen.";
/* No comment provided by engineer. */
"The app will ask to confirm downloads from unknown file servers (except .onion)." = "Die App wird eine Bestätigung bei Downloads von unbekannten Datei-Servern anfordern (außer bei .onion).";
/* No comment provided by engineer. */
"The attempt to change database passphrase was not completed." = "Die Änderung des Datenbank-Passworts konnte nicht abgeschlossen werden.";
@@ -3860,6 +3941,9 @@
/* No comment provided by engineer. */
"To protect your information, turn on SimpleX Lock.\nYou will be prompted to complete authentication before this feature is enabled." = "Um Ihre Informationen zu schützen, schalten Sie die SimpleX-Sperre ein.\nSie werden aufgefordert, die Authentifizierung abzuschließen, bevor diese Funktion aktiviert wird.";
/* No comment provided by engineer. */
"To protect your IP address, private routing uses your SMP servers to deliver messages." = "Zum Schutz Ihrer IP-Adresse, wird für die Nachrichten-Auslieferung privates Routing über Ihre konfigurierten SMP-Server genutzt.";
/* No comment provided by engineer. */
"To record voice message please grant permission to use Microphone." = "Bitte erlauben Sie die Nutzung des Mikrofons, um Sprachnachrichten aufnehmen zu können.";
@@ -3944,6 +4028,12 @@
/* No comment provided by engineer. */
"Unknown error" = "Unbekannter Fehler";
/* No comment provided by engineer. */
"unknown relays" = "Unbekannte Relais";
/* No comment provided by engineer. */
"Unknown servers!" = "Unbekannte Server!";
/* No comment provided by engineer. */
"unknown status" = "unbekannter Gruppenmitglieds-Status";
@@ -3968,6 +4058,9 @@
/* No comment provided by engineer. */
"Unmute" = "Stummschaltung aufheben";
/* No comment provided by engineer. */
"unprotected" = "Ungeschützt";
/* No comment provided by engineer. */
"Unread" = "Ungelesen";
@@ -4020,7 +4113,7 @@
"Use chat" = "Verwenden Sie Chat";
/* No comment provided by engineer. */
"Use current profile" = "Das aktuelle Profil nutzen";
"Use current profile" = "Aktuelles Profil nutzen";
/* No comment provided by engineer. */
"Use for new connections" = "Für neue Verbindungen nutzen";
@@ -4032,11 +4125,17 @@
"Use iOS call interface" = "iOS Anrufschnittstelle nutzen";
/* No comment provided by engineer. */
"Use new incognito profile" = "Ein neues Inkognito-Profil nutzen";
"Use new incognito profile" = "Neues Inkognito-Profil nutzen";
/* No comment provided by engineer. */
"Use only local notifications?" = "Nur lokale Benachrichtigungen nutzen?";
/* No comment provided by engineer. */
"Use private routing with unknown servers when IP address is not protected." = "Sie nutzen privates Routing mit unbekannten Servern, wenn Ihre IP-Adresse nicht geschützt ist.";
/* No comment provided by engineer. */
"Use private routing with unknown servers." = "Sie nutzen privates Routing mit unbekannten Servern.";
/* No comment provided by engineer. */
"Use server" = "Server nutzen";
@@ -4190,6 +4289,9 @@
/* No comment provided by engineer. */
"When connecting audio and video calls." = "Bei der Verbindung über Audio- und Video-Anrufe.";
/* No comment provided by engineer. */
"when IP hidden" = "Wenn die IP-Adresse versteckt ist";
/* No comment provided by engineer. */
"When people request to connect, you can accept or reject it." = "Wenn Personen eine Verbindung anfordern, können Sie diese annehmen oder ablehnen.";
@@ -4214,9 +4316,18 @@
/* No comment provided by engineer. */
"With reduced battery usage." = "Mit reduziertem Akkuverbrauch.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to file servers." = "Ohne Tor- oder VPN-Nutzung wird Ihre IP-Adresse für Datei-Server sichtbar sein.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." = "Ohne Tor- oder VPN-Nutzung wird Ihre IP-Adresse für diese XFTP-Relais sichtbar sein: %@.";
/* No comment provided by engineer. */
"Wrong database passphrase" = "Falsches Datenbank-Passwort";
/* snd error text */
"Wrong key or unknown connection - most likely this connection is deleted." = "Falscher Schlüssel oder unbekannte Verbindung - höchstwahrscheinlich ist diese Verbindung gelöscht worden.";
/* No comment provided by engineer. */
"Wrong passphrase!" = "Falsches Passwort!";
+113 -2
View File
@@ -449,6 +449,9 @@
/* No comment provided by engineer. */
"Allow disappearing messages only if your contact allows it to you." = "Se permiten los mensajes temporales pero sólo si tu contacto también los permite para tí.";
/* No comment provided by engineer. */
"Allow downgrade" = "Permitir versión anterior";
/* No comment provided by engineer. */
"Allow irreversible message deletion only if your contact allows it to you. (24 hours)" = "Se permite la eliminación irreversible de mensajes pero sólo si tu contacto también la permite para tí. (24 horas)";
@@ -509,6 +512,9 @@
/* pref value */
"always" = "siempre";
/* No comment provided by engineer. */
"Always use private routing." = "Usar siempre enrutamiento privado.";
/* No comment provided by engineer. */
"Always use relay" = "Usar siempre retransmisor";
@@ -716,6 +722,9 @@
/* No comment provided by engineer. */
"Cannot receive file" = "No se puede recibir el archivo";
/* snd error text */
"Capacity exceeded - recipient did not receive previously sent messages." = "Capacidad excedida - el destinatario no ha recibido los mensajes previos.";
/* No comment provided by engineer. */
"Cellular" = "Móvil";
@@ -852,6 +861,9 @@
/* No comment provided by engineer. */
"Confirm database upgrades" = "Confirmar actualizaciones de la bases de datos";
/* No comment provided by engineer. */
"Confirm files from unknown servers." = "Confirma archivos de servidores desconocidos.";
/* No comment provided by engineer. */
"Confirm network settings" = "Confirmar configuración de red";
@@ -1320,6 +1332,9 @@
/* No comment provided by engineer. */
"Desktop devices" = "Ordenadores";
/* snd error text */
"Destination server error: %@" = "Error del servidor de destino: %@";
/* No comment provided by engineer. */
"Develop" = "Desarrollo";
@@ -1398,6 +1413,12 @@
/* No comment provided by engineer. */
"Do not send history to new members." = "No enviar historial a miembros nuevos.";
/* No comment provided by engineer. */
"Do NOT send messages directly, even if your or destination server does not support private routing." = "NO enviar mensajes directamente incluso si tu servidor o el de destino no soportan enrutamiento privado.";
/* No comment provided by engineer. */
"Do NOT use private routing." = "NO usar enrutamiento privado.";
/* No comment provided by engineer. */
"Do NOT use SimpleX for emergency calls." = "NO uses SimpleX para llamadas de emergencia.";
@@ -1839,6 +1860,9 @@
/* No comment provided by engineer. */
"File: %@" = "Archivo: %@";
/* No comment provided by engineer. */
"Files" = "Archivos";
/* No comment provided by engineer. */
"Files & media" = "Archivos y multimedia";
@@ -1905,6 +1929,12 @@
/* No comment provided by engineer. */
"Forwarded from" = "Reenviado por";
/* snd error text */
"Forwarding server: %@\nDestination server error: %@" = "Servidor de reenvío: %1$@\nError del servidor de destino: %2$@";
/* snd error text */
"Forwarding server: %@\nError: %@" = "Servidor de reenvío: %1$@\nError: %2$@";
/* No comment provided by engineer. */
"Found desktop" = "Ordenador encontrado";
@@ -2460,6 +2490,9 @@
/* No comment provided by engineer. */
"Message delivery receipts!" = "¡Confirmación de entrega de mensajes!";
/* item status text */
"Message delivery warning" = "Aviso de entrega de mensaje";
/* No comment provided by engineer. */
"Message draft" = "Borrador de mensaje";
@@ -2475,6 +2508,12 @@
/* notification */
"message received" = "mensaje recibido";
/* No comment provided by engineer. */
"Message routing fallback" = "Enrutamiento de mensajes alternativo";
/* No comment provided by engineer. */
"Message routing mode" = "Modo de enrutamiento de mensajes";
/* No comment provided by engineer. */
"Message source remains private." = "El autor del mensaje se mantiene privado.";
@@ -2586,6 +2625,9 @@
/* No comment provided by engineer. */
"Network connection" = "Conexión de red";
/* snd error text */
"Network issues - message expired after many attempts to send it." = "Problema en la red - el mensaje ha expirado tras muchos intentos de envío.";
/* No comment provided by engineer. */
"Network management" = "Gestión de la red";
@@ -2948,9 +2990,18 @@
/* No comment provided by engineer. */
"Private filenames" = "Nombres de archivos privados";
/* No comment provided by engineer. */
"Private message routing" = "Enrutamiento privado de mensajes";
/* No comment provided by engineer. */
"Private message routing 🚀" = "Enrutamiento privado de mensajes 🚀";
/* name of notes to self */
"Private notes" = "Notas privadas";
/* No comment provided by engineer. */
"Private routing" = "Enrutamiento privado";
/* No comment provided by engineer. */
"Profile and server connections" = "Datos del perfil y conexiones";
@@ -3002,9 +3053,15 @@
/* No comment provided by engineer. */
"Protect app screen" = "Proteger la pantalla de la aplicación";
/* No comment provided by engineer. */
"Protect IP address" = "Proteger dirección IP";
/* No comment provided by engineer. */
"Protect your chat profiles with a password!" = "¡Protege tus perfiles con contraseña!";
/* No comment provided by engineer. */
"Protect your IP address from the messaging relays chosen by your contacts.\nEnable in *Network & servers* settings." = "Protege tu dirección IP de los servidores de retransmisión elegidos por tus contactos.\nActívalo en ajustes de *Servidores y Redes*.";
/* No comment provided by engineer. */
"Protocol timeout" = "Tiempo de espera del protocolo";
@@ -3117,7 +3174,7 @@
"rejected call" = "llamada rechazada";
/* No comment provided by engineer. */
"Relay server is only used if necessary. Another party can observe your IP address." = "El retransmisor sólo se usa en caso de necesidad. Un tercero podría ver tu IP.";
"Relay server is only used if necessary. Another party can observe your IP address." = "El servidor de retransmisión sólo se usa en caso de necesidad. Un tercero podría ver tu IP.";
/* No comment provided by engineer. */
"Relay server protects your IP address, but it can observe the duration of the call." = "El servidor de retransmisión protege tu IP pero puede ver la duración de la llamada.";
@@ -3230,6 +3287,9 @@
/* No comment provided by engineer. */
"Run chat" = "Ejecutar chat";
/* No comment provided by engineer. */
"Safely receive files" = "Recibe archivos de forma segura";
/* No comment provided by engineer. */
"Safer groups" = "Grupos más seguros";
@@ -3375,7 +3435,7 @@
"Send direct message" = "Enviar mensaje directo";
/* No comment provided by engineer. */
"Send direct message to connect" = "Enviar mensaje directo para conectar";
"Send direct message to connect" = "Envia un mensaje para conectar";
/* No comment provided by engineer. */
"Send disappearing message" = "Enviar mensaje temporal";
@@ -3386,6 +3446,12 @@
/* No comment provided by engineer. */
"Send live message" = "Mensaje en vivo";
/* No comment provided by engineer. */
"Send messages directly when IP address is protected and your or destination server does not support private routing." = "Enviar mensajes directamente cuando tu dirección IP está protegida y tu servidor o el de destino no admitan enrutamiento privado.";
/* No comment provided by engineer. */
"Send messages directly when your or destination server does not support private routing." = "Enviar mensajes directamente cuando tu servidor o el de destino no admitan enrutamiento privado.";
/* No comment provided by engineer. */
"Send notifications" = "Enviar notificaciones";
@@ -3449,6 +3515,9 @@
/* No comment provided by engineer. */
"Sent messages will be deleted after set time." = "Los mensajes enviados se eliminarán una vez transcurrido el tiempo establecido.";
/* srv error text. */
"Server address is incompatible with network settings." = "La dirección del servidor es incompatible con la configuración de la red.";
/* server test error */
"Server requires authorization to create queues, check password" = "El servidor requiere autorización para crear colas, comprueba la contraseña";
@@ -3458,6 +3527,9 @@
/* No comment provided by engineer. */
"Server test failed!" = "¡Error en prueba del servidor!";
/* srv error text */
"Server version is incompatible with network settings." = "La versión del servidor es incompatible con la configuración de red.";
/* No comment provided by engineer. */
"Servers" = "Servidores";
@@ -3524,6 +3596,9 @@
/* No comment provided by engineer. */
"Share with contacts" = "Compartir con contactos";
/* No comment provided by engineer. */
"Show → on messages sent via private routing." = "Mostrar → en mensajes con enrutamiento privado.";
/* No comment provided by engineer. */
"Show calls in phone history" = "Mostrar llamadas en el historial del teléfono";
@@ -3533,6 +3608,9 @@
/* No comment provided by engineer. */
"Show last messages" = "Mostrar último mensaje";
/* No comment provided by engineer. */
"Show message status" = "Estado del mensaje";
/* No comment provided by engineer. */
"Show preview" = "Mostrar vista previa";
@@ -3740,6 +3818,9 @@
/* No comment provided by engineer. */
"The app can notify you when you receive messages or contact requests - please open settings to enable." = "La aplicación puede notificarte cuando recibas mensajes o solicitudes de contacto: por favor, abre la configuración para activarlo.";
/* No comment provided by engineer. */
"The app will ask to confirm downloads from unknown file servers (except .onion)." = "La aplicación pedirá que confirmes las descargas desde servidores de archivos desconocidos (excepto .onion).";
/* No comment provided by engineer. */
"The attempt to change database passphrase was not completed." = "El intento de cambiar la contraseña de la base de datos no se ha completado.";
@@ -3860,6 +3941,9 @@
/* No comment provided by engineer. */
"To protect your information, turn on SimpleX Lock.\nYou will be prompted to complete authentication before this feature is enabled." = "Para proteger tu información, activa el Bloqueo SimpleX.\nSe te pedirá que completes la autenticación antes de activar esta función.";
/* No comment provided by engineer. */
"To protect your IP address, private routing uses your SMP servers to deliver messages." = "Para proteger tu dirección IP, el enrutamiento privado usa tus servidores SMP para enviar mensajes.";
/* No comment provided by engineer. */
"To record voice message please grant permission to use Microphone." = "Para grabar el mensaje de voz concede permiso para usar el micrófono.";
@@ -3944,6 +4028,12 @@
/* No comment provided by engineer. */
"Unknown error" = "Error desconocido";
/* No comment provided by engineer. */
"unknown relays" = "servidor de retransmisión desconocido";
/* No comment provided by engineer. */
"Unknown servers!" = "¡Servidores desconocidos!";
/* No comment provided by engineer. */
"unknown status" = "estado desconocido";
@@ -3968,6 +4058,9 @@
/* No comment provided by engineer. */
"Unmute" = "Activar audio";
/* No comment provided by engineer. */
"unprotected" = "desprotegido";
/* No comment provided by engineer. */
"Unread" = "No leído";
@@ -4037,6 +4130,12 @@
/* No comment provided by engineer. */
"Use only local notifications?" = "¿Usar sólo notificaciones locales?";
/* No comment provided by engineer. */
"Use private routing with unknown servers when IP address is not protected." = "Usar enrutamiento privado con servidores desconocidos cuando la dirección IP no está protegida.";
/* No comment provided by engineer. */
"Use private routing with unknown servers." = "Usar enrutamiento privado con servidores desconocidos.";
/* No comment provided by engineer. */
"Use server" = "Usar servidor";
@@ -4190,6 +4289,9 @@
/* No comment provided by engineer. */
"When connecting audio and video calls." = "Al iniciar llamadas de audio y vídeo.";
/* No comment provided by engineer. */
"when IP hidden" = "con IP oculta";
/* No comment provided by engineer. */
"When people request to connect, you can accept or reject it." = "Cuando alguien solicite conectarse podrás aceptar o rechazar la solicitud.";
@@ -4214,9 +4316,18 @@
/* No comment provided by engineer. */
"With reduced battery usage." = "Con uso reducido de batería.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to file servers." = "Sin Tor o VPN, tu dirección IP será visible para los servidores de archivos.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." = "Sin Tor o VPN, tu dirección IP será visible para estos servidores XFTP: %@.";
/* No comment provided by engineer. */
"Wrong database passphrase" = "Contraseña de base de datos incorrecta";
/* snd error text */
"Wrong key or unknown connection - most likely this connection is deleted." = "Clave incorrecta o conexión desconocida - probablemente esta conexión fue eliminada.";
/* No comment provided by engineer. */
"Wrong passphrase!" = "¡Contraseña incorrecta!";
+111
View File
@@ -449,6 +449,9 @@
/* No comment provided by engineer. */
"Allow disappearing messages only if your contact allows it to you." = "Autorise les messages éphémères seulement si votre contact vous lautorise.";
/* No comment provided by engineer. */
"Allow downgrade" = "Autoriser la rétrogradation";
/* No comment provided by engineer. */
"Allow irreversible message deletion only if your contact allows it to you. (24 hours)" = "Autoriser la suppression irréversible des messages uniquement si votre contact vous l'autorise. (24 heures)";
@@ -509,6 +512,9 @@
/* pref value */
"always" = "toujours";
/* No comment provided by engineer. */
"Always use private routing." = "Toujours utiliser le routage privé.";
/* No comment provided by engineer. */
"Always use relay" = "Se connecter via relais";
@@ -716,6 +722,9 @@
/* No comment provided by engineer. */
"Cannot receive file" = "Impossible de recevoir le fichier";
/* snd error text */
"Capacity exceeded - recipient did not receive previously sent messages." = "Capacité dépassée - le destinataire n'a pas pu recevoir les messages envoyés précédemment.";
/* No comment provided by engineer. */
"Cellular" = "Cellulaire";
@@ -852,6 +861,9 @@
/* No comment provided by engineer. */
"Confirm database upgrades" = "Confirmer la mise à niveau de la base de données";
/* No comment provided by engineer. */
"Confirm files from unknown servers." = "Confirmer les fichiers provenant de serveurs inconnus.";
/* No comment provided by engineer. */
"Confirm network settings" = "Confirmer les paramètres réseau";
@@ -1320,6 +1332,9 @@
/* No comment provided by engineer. */
"Desktop devices" = "Appareils de bureau";
/* snd error text */
"Destination server error: %@" = "Erreur du serveur de destination: %@";
/* No comment provided by engineer. */
"Develop" = "Développer";
@@ -1398,6 +1413,12 @@
/* No comment provided by engineer. */
"Do not send history to new members." = "Ne pas envoyer d'historique aux nouveaux membres.";
/* No comment provided by engineer. */
"Do NOT send messages directly, even if your or destination server does not support private routing." = "Ne pas envoyer de messages directement, même si votre serveur ou le serveur de destination ne prend pas en charge le routage privé.";
/* No comment provided by engineer. */
"Do NOT use private routing." = "Ne pas utiliser de routage privé.";
/* No comment provided by engineer. */
"Do NOT use SimpleX for emergency calls." = "N'utilisez PAS SimpleX pour les appels d'urgence.";
@@ -1839,6 +1860,9 @@
/* No comment provided by engineer. */
"File: %@" = "Fichier: %@";
/* No comment provided by engineer. */
"Files" = "Fichiers";
/* No comment provided by engineer. */
"Files & media" = "Fichiers & médias";
@@ -1905,6 +1929,12 @@
/* No comment provided by engineer. */
"Forwarded from" = "Transféré depuis";
/* snd error text */
"Forwarding server: %@\nDestination server error: %@" = "Serveur de transfert: %1$@\nErreur du serveur de destination: %2$@";
/* snd error text */
"Forwarding server: %@\nError: %@" = "Serveur de transfert: %1$@\nErreur: %2$@";
/* No comment provided by engineer. */
"Found desktop" = "Bureau trouvé";
@@ -2460,6 +2490,9 @@
/* No comment provided by engineer. */
"Message delivery receipts!" = "Accusés de réception des messages !";
/* item status text */
"Message delivery warning" = "Avertissement sur la distribution des messages";
/* No comment provided by engineer. */
"Message draft" = "Brouillon de message";
@@ -2475,6 +2508,12 @@
/* notification */
"message received" = "message reçu";
/* No comment provided by engineer. */
"Message routing fallback" = "Rabattement du routage des messages";
/* No comment provided by engineer. */
"Message routing mode" = "Mode de routage des messages";
/* No comment provided by engineer. */
"Message source remains private." = "La source du message reste privée.";
@@ -2586,6 +2625,9 @@
/* No comment provided by engineer. */
"Network connection" = "Connexion au réseau";
/* snd error text */
"Network issues - message expired after many attempts to send it." = "Problèmes de réseau - le message a expiré après plusieurs tentatives d'envoi.";
/* No comment provided by engineer. */
"Network management" = "Gestion du réseau";
@@ -2948,9 +2990,18 @@
/* No comment provided by engineer. */
"Private filenames" = "Noms de fichiers privés";
/* No comment provided by engineer. */
"Private message routing" = "Routage privé des messages";
/* No comment provided by engineer. */
"Private message routing 🚀" = "Routage privé des messages 🚀";
/* name of notes to self */
"Private notes" = "Notes privées";
/* No comment provided by engineer. */
"Private routing" = "Routage privé";
/* No comment provided by engineer. */
"Profile and server connections" = "Profil et connexions au serveur";
@@ -3002,9 +3053,15 @@
/* No comment provided by engineer. */
"Protect app screen" = "Protéger l'écran de l'app";
/* No comment provided by engineer. */
"Protect IP address" = "Protéger l'adresse IP";
/* No comment provided by engineer. */
"Protect your chat profiles with a password!" = "Protégez vos profils de chat par un mot de passe !";
/* No comment provided by engineer. */
"Protect your IP address from the messaging relays chosen by your contacts.\nEnable in *Network & servers* settings." = "Protégez votre adresse IP des relais de messagerie choisis par vos contacts.\nActivez-le dans les paramètres *Réseau et serveurs*.";
/* No comment provided by engineer. */
"Protocol timeout" = "Délai du protocole";
@@ -3230,6 +3287,9 @@
/* No comment provided by engineer. */
"Run chat" = "Exécuter le chat";
/* No comment provided by engineer. */
"Safely receive files" = "Réception de fichiers en toute sécurité";
/* No comment provided by engineer. */
"Safer groups" = "Groupes plus sûrs";
@@ -3386,6 +3446,12 @@
/* No comment provided by engineer. */
"Send live message" = "Envoyer un message dynamique";
/* No comment provided by engineer. */
"Send messages directly when IP address is protected and your or destination server does not support private routing." = "Envoyer les messages de manière directe lorsque l'adresse IP est protégée et que votre serveur ou le serveur de destination ne prend pas en charge le routage privé.";
/* No comment provided by engineer. */
"Send messages directly when your or destination server does not support private routing." = "Envoyez les messages de manière directe lorsque votre serveur ou le serveur de destination ne prend pas en charge le routage privé.";
/* No comment provided by engineer. */
"Send notifications" = "Envoi de notifications";
@@ -3449,6 +3515,9 @@
/* No comment provided by engineer. */
"Sent messages will be deleted after set time." = "Les messages envoyés seront supprimés après une durée déterminée.";
/* srv error text. */
"Server address is incompatible with network settings." = "L'adresse du serveur est incompatible avec les paramètres du réseau.";
/* server test error */
"Server requires authorization to create queues, check password" = "Le serveur requiert une autorisation pour créer des files d'attente, vérifiez le mot de passe";
@@ -3458,6 +3527,9 @@
/* No comment provided by engineer. */
"Server test failed!" = "Échec du test du serveur !";
/* srv error text */
"Server version is incompatible with network settings." = "La version du serveur est incompatible avec les paramètres du réseau.";
/* No comment provided by engineer. */
"Servers" = "Serveurs";
@@ -3524,6 +3596,9 @@
/* No comment provided by engineer. */
"Share with contacts" = "Partager avec vos contacts";
/* No comment provided by engineer. */
"Show → on messages sent via private routing." = "Afficher → sur les messages envoyés via le routage privé.";
/* No comment provided by engineer. */
"Show calls in phone history" = "Afficher les appels dans l'historique du téléphone";
@@ -3533,6 +3608,9 @@
/* No comment provided by engineer. */
"Show last messages" = "Voir les derniers messages";
/* No comment provided by engineer. */
"Show message status" = "Afficher le statut du message";
/* No comment provided by engineer. */
"Show preview" = "Afficher l'aperçu";
@@ -3740,6 +3818,9 @@
/* No comment provided by engineer. */
"The app can notify you when you receive messages or contact requests - please open settings to enable." = "L'application peut vous avertir lorsque vous recevez des messages ou des demandes de contact - veuillez ouvrir les paramètres pour les activer.";
/* No comment provided by engineer. */
"The app will ask to confirm downloads from unknown file servers (except .onion)." = "L'application demandera de confirmer les téléchargements à partir de serveurs de fichiers inconnus (sauf .onion).";
/* No comment provided by engineer. */
"The attempt to change database passphrase was not completed." = "La tentative de modification de la phrase secrète de la base de données n'a pas abouti.";
@@ -3860,6 +3941,9 @@
/* No comment provided by engineer. */
"To protect your information, turn on SimpleX Lock.\nYou will be prompted to complete authentication before this feature is enabled." = "Pour protéger vos informations, activez la fonction SimpleX Lock.\nVous serez invité à confirmer l'authentification avant que cette fonction ne soit activée.";
/* No comment provided by engineer. */
"To protect your IP address, private routing uses your SMP servers to deliver messages." = "Pour protéger votre adresse IP, le routage privé utilise vos serveurs SMP pour délivrer les messages.";
/* No comment provided by engineer. */
"To record voice message please grant permission to use Microphone." = "Pour enregistrer un message vocal, veuillez accorder la permission d'utiliser le microphone.";
@@ -3944,6 +4028,12 @@
/* No comment provided by engineer. */
"Unknown error" = "Erreur inconnue";
/* No comment provided by engineer. */
"unknown relays" = "relais inconnus";
/* No comment provided by engineer. */
"Unknown servers!" = "Serveurs inconnus!";
/* No comment provided by engineer. */
"unknown status" = "statut inconnu";
@@ -3968,6 +4058,9 @@
/* No comment provided by engineer. */
"Unmute" = "Démute";
/* No comment provided by engineer. */
"unprotected" = "non protégé";
/* No comment provided by engineer. */
"Unread" = "Non lu";
@@ -4037,6 +4130,12 @@
/* No comment provided by engineer. */
"Use only local notifications?" = "Utilisation de notifications locales uniquement?";
/* No comment provided by engineer. */
"Use private routing with unknown servers when IP address is not protected." = "Utiliser le routage privé avec des serveurs inconnus lorsque l'adresse IP n'est pas protégée.";
/* No comment provided by engineer. */
"Use private routing with unknown servers." = "Utiliser le routage privé avec des serveurs inconnus.";
/* No comment provided by engineer. */
"Use server" = "Utiliser ce serveur";
@@ -4190,6 +4289,9 @@
/* No comment provided by engineer. */
"When connecting audio and video calls." = "Lors des appels audio et vidéo.";
/* No comment provided by engineer. */
"when IP hidden" = "lorsque l'IP est masquée";
/* No comment provided by engineer. */
"When people request to connect, you can accept or reject it." = "Vous pouvez accepter ou refuser les demandes de contacts.";
@@ -4214,9 +4316,18 @@
/* No comment provided by engineer. */
"With reduced battery usage." = "Consommation réduite de la batterie.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to file servers." = "Sans Tor ou un VPN, votre adresse IP sera visible par les serveurs de fichiers.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." = "Sans Tor ni VPN, votre adresse IP sera visible par ces relais XFTP: %@.";
/* No comment provided by engineer. */
"Wrong database passphrase" = "Mauvaise phrase secrète pour la base de données";
/* snd error text */
"Wrong key or unknown connection - most likely this connection is deleted." = "Clé erronée ou connexion non identifiée - il est très probable que cette connexion soit supprimée.";
/* No comment provided by engineer. */
"Wrong passphrase!" = "Mauvaise phrase secrète !";
+124 -13
View File
@@ -83,7 +83,7 @@
"**More private**: check new messages every 20 minutes. Device token is shared with SimpleX Chat server, but not how many contacts or messages you have." = "**Privátabb**: 20 percenként ellenőrzi az új üzeneteket. Az eszköztoken megosztásra kerül a SimpleX Chat kiszolgálóval, de az nem, hogy hány ismerőse vagy üzenete van.";
/* No comment provided by engineer. */
"**Most private**: do not use SimpleX Chat notifications server, check messages periodically in the background (depends on how often you use the app)." = "**Legprivátabb**: ne használja a SimpleX Chat értesítési szervert, rendszeresen ellenőrizze az üzeneteket a háttérben (attól függően, hogy milyen gyakran használja az alkalmazást).";
"**Most private**: do not use SimpleX Chat notifications server, check messages periodically in the background (depends on how often you use the app)." = "**Legprivátabb**: ne használja a SimpleX Chat értesítési kiszolgálót, rendszeresen ellenőrizze az üzeneteket a háttérben (attól függően, hogy milyen gyakran használja az alkalmazást).";
/* No comment provided by engineer. */
"**Please note**: using the same database on two devices will break the decryption of messages from your connections, as a security protection." = "**Megjegyzés**: ha két eszközön is ugyanazt az adatbázist használja, akkor biztonsági védelemként megszakítja a kapcsolataiból érkező üzenetek visszafejtését.";
@@ -92,7 +92,7 @@
"**Please note**: you will NOT be able to recover or change passphrase if you lose it." = "**Figyelem**: NEM tudja visszaállítani vagy megváltoztatni jelmondatát, ha elveszíti azt.";
/* No comment provided by engineer. */
"**Recommended**: device token and notifications are sent to SimpleX Chat notification server, but not the message content, size or who it is from." = "**Javasolt**: az eszköztoken és az értesítések elküldésre kerülnek a SimpleX Chat értesítési szerverre, kivéve az üzenet tartalma, mérete vagy az, hogy kitől származik.";
"**Recommended**: device token and notifications are sent to SimpleX Chat notification server, but not the message content, size or who it is from." = "**Javasolt**: az eszköztoken és az értesítések elküldésre kerülnek a SimpleX Chat értesítési kiszolgálóra, kivéve az üzenet tartalma, mérete vagy az, hogy kitől származik.";
/* No comment provided by engineer. */
"**Warning**: Instant push notifications require passphrase saved in Keychain." = "**Figyelmeztetés**: Az azonnali push-értesítésekhez a kulcstárolóban tárolt jelmondat megadása szükséges.";
@@ -449,6 +449,9 @@
/* No comment provided by engineer. */
"Allow disappearing messages only if your contact allows it to you." = "Az eltűnő üzenetek küldése kizárólag abban az esetben van engedélyezve, ha az ismerőse is engedélyezi az ön számára.";
/* No comment provided by engineer. */
"Allow downgrade" = "Korábbi verzióra történő visszatérés engedélyezése";
/* No comment provided by engineer. */
"Allow irreversible message deletion only if your contact allows it to you. (24 hours)" = "Az üzenetek végleges törlése kizárólag abban az esetben van engedélyezve, ha az ismerőse is engedélyezi. (24 óra)";
@@ -509,6 +512,9 @@
/* pref value */
"always" = "mindig";
/* No comment provided by engineer. */
"Always use private routing." = "Mindig használjon privát útválasztást.";
/* No comment provided by engineer. */
"Always use relay" = "Mindig használjon átjátszó kiszolgálót";
@@ -716,6 +722,9 @@
/* No comment provided by engineer. */
"Cannot receive file" = "Nem lehet fogadni a fájlt";
/* snd error text */
"Capacity exceeded - recipient did not receive previously sent messages." = "Kapacitás túllépés - a címzett nem kapta meg a korábban elküldött üzeneteket.";
/* No comment provided by engineer. */
"Cellular" = "Mobilhálózat";
@@ -805,7 +814,7 @@
"Chinese and Spanish interface" = "Kínai és spanyol kezelőfelület";
/* No comment provided by engineer. */
"Choose _Migrate from another device_ on the new device and scan QR code." = "Válassza az _Átköltöztetés egy másik eszközről_ opciót az új eszközön és szkennelje be a QR-kódot.";
"Choose _Migrate from another device_ on the new device and scan QR code." = "Válassza az _Átköltöztetés egy másik eszközről_ opciót az új eszközön és olvassa be a QR-kódot.";
/* No comment provided by engineer. */
"Choose file" = "Fájl kiválasztása";
@@ -817,13 +826,13 @@
"Clear" = "Kiürítés";
/* No comment provided by engineer. */
"Clear conversation" = "Beszélgetés kiürítése";
"Clear conversation" = "Üzenetek kiürítése";
/* No comment provided by engineer. */
"Clear conversation?" = "Beszélgetés kiürítése?";
"Clear conversation?" = "Üzenetek kiürítése?";
/* No comment provided by engineer. */
"Clear private notes?" = "Privát jegyzetek törlése?";
"Clear private notes?" = "Privát jegyzetek kiürítése?";
/* No comment provided by engineer. */
"Clear verification" = "Hitelesítés törlése";
@@ -852,6 +861,9 @@
/* No comment provided by engineer. */
"Confirm database upgrades" = "Adatbázis frissítés megerősítése";
/* No comment provided by engineer. */
"Confirm files from unknown servers." = "Ismeretlen kiszolgálókról származó fájlok jóváhagyása.";
/* No comment provided by engineer. */
"Confirm network settings" = "Hálózati beállítások megerősítése";
@@ -1320,6 +1332,9 @@
/* No comment provided by engineer. */
"Desktop devices" = "Számítógépek";
/* snd error text */
"Destination server error: %@" = "Célkiszolgáló hiba: %@";
/* No comment provided by engineer. */
"Develop" = "Fejlesztés";
@@ -1398,6 +1413,12 @@
/* No comment provided by engineer. */
"Do not send history to new members." = "Az előzmények ne kerüljenek elküldésre az új tagok számára.";
/* No comment provided by engineer. */
"Do NOT send messages directly, even if your or destination server does not support private routing." = "Ne küldjön üzeneteket közvetlenül, még akkor sem, ha az ön kiszolgálója vagy a célkiszolgáló nem támogatja a privát útválasztást.";
/* No comment provided by engineer. */
"Do NOT use private routing." = "Ne használjon privát útválasztást.";
/* No comment provided by engineer. */
"Do NOT use SimpleX for emergency calls." = "NE használja a SimpleX-et segélyhívásokhoz.";
@@ -1839,6 +1860,9 @@
/* No comment provided by engineer. */
"File: %@" = "Fájl: %@";
/* No comment provided by engineer. */
"Files" = "Fájlok";
/* No comment provided by engineer. */
"Files & media" = "Fájlok és média";
@@ -1905,6 +1929,12 @@
/* No comment provided by engineer. */
"Forwarded from" = "Továbbítva innen:";
/* snd error text */
"Forwarding server: %@\nDestination server error: %@" = "Továbbító kiszolgáló: %1$@\nCélkiszolgáló hiba:%2$@";
/* snd error text */
"Forwarding server: %@\nError: %@" = "Továbbító kiszolgáló: %1$@\nHiba: %2$@";
/* No comment provided by engineer. */
"Found desktop" = "Megtalált számítógép";
@@ -2407,7 +2437,7 @@
"Make profile private!" = "Tegye priváttá a profilját!";
/* No comment provided by engineer. */
"Make sure %@ server addresses are in correct format, line separated and are not duplicated (%@)." = "Győződjön meg arról, hogy a %@ szervercímek megfelelő formátumúak, sorszeparáltak és nem duplikáltak (%@).";
"Make sure %@ server addresses are in correct format, line separated and are not duplicated (%@)." = "Győződjön meg arról, hogy a %@ kiszolgálócímek megfelelő formátumúak, sorszeparáltak és nem duplikáltak (%@).";
/* No comment provided by engineer. */
"Make sure WebRTC ICE server addresses are in correct format, line separated and are not duplicated." = "Győződjön meg arról, hogy a WebRTC ICE-kiszolgáló címei megfelelő formátumúak, sorszeparáltak és nem duplikáltak.";
@@ -2419,7 +2449,7 @@
"Mark deleted for everyone" = "Jelölje meg mindenki számára töröltként";
/* No comment provided by engineer. */
"Mark read" = "Olvasottként jelölés";
"Mark read" = "Olvasottnak jelölés";
/* No comment provided by engineer. */
"Mark verified" = "Hitelesítés";
@@ -2460,6 +2490,9 @@
/* No comment provided by engineer. */
"Message delivery receipts!" = "Üzenetkézbesítési bizonylatok!";
/* item status text */
"Message delivery warning" = "Üzenet kézbesítési figyelmeztetés";
/* No comment provided by engineer. */
"Message draft" = "Üzenetvázlat";
@@ -2475,6 +2508,12 @@
/* notification */
"message received" = "üzenet érkezett";
/* No comment provided by engineer. */
"Message routing fallback" = "Üzenet útválasztási tartalék";
/* No comment provided by engineer. */
"Message routing mode" = "Üzenet útválasztási mód";
/* No comment provided by engineer. */
"Message source remains private." = "Az üzenet forrása titokban marad.";
@@ -2494,10 +2533,10 @@
"Messages from %@ will be shown!" = "A(z) %@ által írt üzenetek megjelennek!";
/* No comment provided by engineer. */
"Messages, files and calls are protected by **end-to-end encryption** with perfect forward secrecy, repudiation and break-in recovery." = "Az üzeneteket, fájlokat és hívásokat **végpontok közötti titkosítással** és sérülés utáni titkosságvédelemmel, visszautasítással és sérülés utáni helyreállítással védi.";
"Messages, files and calls are protected by **end-to-end encryption** with perfect forward secrecy, repudiation and break-in recovery." = "Az üzeneteket, fájlokat és hívásokat **végpontok közötti titkosítással**, sérülés utáni titkosság-védelemmel és -helyreállítással, továbbá visszautasítással védi.";
/* No comment provided by engineer. */
"Messages, files and calls are protected by **quantum resistant e2e encryption** with perfect forward secrecy, repudiation and break-in recovery." = "Az üzeneteket, fájlokat és hívásokat **végpontok közötti kvantumrezisztens titkosítással** és sérülés utáni titkosságvédelemmel, visszautasítással és sérülés utáni helyreállítással védi.";
"Messages, files and calls are protected by **quantum resistant e2e encryption** with perfect forward secrecy, repudiation and break-in recovery." = "Az üzeneteket, fájlokat és hívásokat **végpontok közötti kvantumrezisztens titkosítással**, sérülés utáni titkosság-védelemmel és -helyreállítással, továbbá visszautasítással védi.";
/* No comment provided by engineer. */
"Migrate device" = "Eszköz átköltöztetése";
@@ -2586,6 +2625,9 @@
/* No comment provided by engineer. */
"Network connection" = "Internetkapcsolat";
/* snd error text */
"Network issues - message expired after many attempts to send it." = "Hálózati problémák - az üzenet többszöri elküldési kísérlet után lejárt.";
/* No comment provided by engineer. */
"Network management" = "Hálózatkezelés";
@@ -2948,9 +2990,18 @@
/* No comment provided by engineer. */
"Private filenames" = "Privát fájl nevek";
/* No comment provided by engineer. */
"Private message routing" = "Privát üzenet útválasztás";
/* No comment provided by engineer. */
"Private message routing 🚀" = "Privát üzenet útválasztás 🚀";
/* name of notes to self */
"Private notes" = "Privát jegyzetek";
/* No comment provided by engineer. */
"Private routing" = "Privát útválasztás";
/* No comment provided by engineer. */
"Profile and server connections" = "Profil és kiszolgálókapcsolatok";
@@ -3002,9 +3053,15 @@
/* No comment provided by engineer. */
"Protect app screen" = "Alkalmazás képernyőjének védelme";
/* No comment provided by engineer. */
"Protect IP address" = "Az IP-cím védelme";
/* No comment provided by engineer. */
"Protect your chat profiles with a password!" = "Csevegési profiljok védelme jelszóval!";
/* No comment provided by engineer. */
"Protect your IP address from the messaging relays chosen by your contacts.\nEnable in *Network & servers* settings." = "Védje IP-címét az ismerősei által kiválasztott üzenetküldő átjátszókkal szemben.\nEngedélyezze a beállításokban a *Hálózat és kiszolgálók* menüpontban.";
/* No comment provided by engineer. */
"Protocol timeout" = "Protokoll időtúllépés";
@@ -3230,6 +3287,9 @@
/* No comment provided by engineer. */
"Run chat" = "Csevegési szolgáltatás indítása";
/* No comment provided by engineer. */
"Safely receive files" = "Fájlok biztonságos fogadása";
/* No comment provided by engineer. */
"Safer groups" = "Biztonságosabb csoportok";
@@ -3386,6 +3446,12 @@
/* No comment provided by engineer. */
"Send live message" = "Élő üzenet küldése";
/* No comment provided by engineer. */
"Send messages directly when IP address is protected and your or destination server does not support private routing." = "Közvetlen üzenetküldés, ha az IP-cím védett és az ön kiszolgálója vagy a célkiszolgáló nem támogatja a privát útválasztást.";
/* No comment provided by engineer. */
"Send messages directly when your or destination server does not support private routing." = "Közvetlen üzenetküldés, ha az ön kiszolgálója vagy a célkiszolgáló nem támogatja a privát útválasztást.";
/* No comment provided by engineer. */
"Send notifications" = "Értesítések küldése";
@@ -3449,6 +3515,9 @@
/* No comment provided by engineer. */
"Sent messages will be deleted after set time." = "Az elküldött üzenetek törlésre kerülnek a beállított idő után.";
/* srv error text. */
"Server address is incompatible with network settings." = "A kiszolgáló címe nem kompatibilis a hálózati beállításokkal.";
/* server test error */
"Server requires authorization to create queues, check password" = "A kiszolgálónak engedélyre van szüksége a várólisták létrehozásához, ellenőrizze jelszavát";
@@ -3458,6 +3527,9 @@
/* No comment provided by engineer. */
"Server test failed!" = "Sikertelen kiszolgáló-teszt!";
/* srv error text */
"Server version is incompatible with network settings." = "A kiszolgáló verziója nem kompatibilis a hálózati beállításokkal.";
/* No comment provided by engineer. */
"Servers" = "Kiszolgálók";
@@ -3524,6 +3596,9 @@
/* No comment provided by engineer. */
"Share with contacts" = "Megosztás ismerősökkel";
/* No comment provided by engineer. */
"Show → on messages sent via private routing." = "Egy „→” jel megjelenítése a privát útválasztáson keresztül küldött üzeneteknél.";
/* No comment provided by engineer. */
"Show calls in phone history" = "Hívások megjelenítése a híváslistában";
@@ -3533,6 +3608,9 @@
/* No comment provided by engineer. */
"Show last messages" = "Utolsó üzenetek megjelenítése";
/* No comment provided by engineer. */
"Show message status" = "Üzenet állapot megjelenítése";
/* No comment provided by engineer. */
"Show preview" = "Előnézet megjelenítése";
@@ -3740,6 +3818,9 @@
/* No comment provided by engineer. */
"The app can notify you when you receive messages or contact requests - please open settings to enable." = "Az alkalmazás értesíteni fogja, amikor üzeneteket vagy kapcsolatfelvételi kéréseket kap beállítások megnyitása az engedélyezéshez.";
/* No comment provided by engineer. */
"The app will ask to confirm downloads from unknown file servers (except .onion)." = "Az alkalmazás kérni fogja az ismeretlen fájlkiszolgálókról (kivéve .onion) történő letöltések megerősítését.";
/* No comment provided by engineer. */
"The attempt to change database passphrase was not completed." = "Az adatbázis jelmondatának megváltoztatására tett kísérlet nem fejeződött be.";
@@ -3860,6 +3941,9 @@
/* No comment provided by engineer. */
"To protect your information, turn on SimpleX Lock.\nYou will be prompted to complete authentication before this feature is enabled." = "Az adatavédelem érdekében kapcsolja be a SimpleX zárolás funkciót.\nA funkció engedélyezése előtt a rendszer felszólítja a hitelesítés befejezésére.";
/* No comment provided by engineer. */
"To protect your IP address, private routing uses your SMP servers to deliver messages." = "Az IP-címe védelme érdekében a privát útválasztás az SMP-kiszolgálókat használja az üzenetek kézbesítéséhez.";
/* No comment provided by engineer. */
"To record voice message please grant permission to use Microphone." = "Hangüzenet rögzítéséhez adjon engedélyt a mikrofon használathoz.";
@@ -3870,7 +3954,7 @@
"To support instant push notifications the chat database has to be migrated." = "Az azonnali push értesítések támogatásához a csevegési adatbázis migrálása szükséges.";
/* No comment provided by engineer. */
"To verify end-to-end encryption with your contact compare (or scan) the code on your devices." = "A végpontok közötti titkosítás ellenőrzéséhez ismerősével hasonlítsa össze (vagy szkennelje be) az eszközén lévő kódot.";
"To verify end-to-end encryption with your contact compare (or scan) the code on your devices." = "A végpontok közötti titkosítás ellenőrzéséhez hasonlítsa össze (vagy olvassa be a QR-kódot) az ismerőse eszközén lévő kóddal.";
/* No comment provided by engineer. */
"Toggle incognito when connecting." = "Inkognitó mód kapcsolódáskor.";
@@ -3944,6 +4028,12 @@
/* No comment provided by engineer. */
"Unknown error" = "Ismeretlen hiba";
/* No comment provided by engineer. */
"unknown relays" = "ismeretlen átjátszók";
/* No comment provided by engineer. */
"Unknown servers!" = "Ismeretlen kiszolgálók!";
/* No comment provided by engineer. */
"unknown status" = "ismeretlen státusz";
@@ -3968,6 +4058,9 @@
/* No comment provided by engineer. */
"Unmute" = "Némítás feloldása";
/* No comment provided by engineer. */
"unprotected" = "nem védett";
/* No comment provided by engineer. */
"Unread" = "Olvasatlan";
@@ -3996,7 +4089,7 @@
"updated profile" = "frissített profil";
/* No comment provided by engineer. */
"Updating settings will re-connect the client to all servers." = "A beállítások frissítése a szerverekhez újra kapcsolódással jár.";
"Updating settings will re-connect the client to all servers." = "A beállítások frissítése a kiszolgálókhoz való újra kapcsolódással jár.";
/* No comment provided by engineer. */
"Updating this setting will re-connect the client to all servers." = "A beállítás frissítésével a kliens újrakapcsolódik az összes kiszolgálóhoz.";
@@ -4037,6 +4130,12 @@
/* No comment provided by engineer. */
"Use only local notifications?" = "Csak helyi értesítések használata?";
/* No comment provided by engineer. */
"Use private routing with unknown servers when IP address is not protected." = "Privát útválasztás használata ismeretlen kiszolgálókkal, ha az IP-cím nem védett.";
/* No comment provided by engineer. */
"Use private routing with unknown servers." = "Használjon privát útválasztást ismeretlen kiszolgálókkal.";
/* No comment provided by engineer. */
"Use server" = "Kiszolgáló használata";
@@ -4190,6 +4289,9 @@
/* No comment provided by engineer. */
"When connecting audio and video calls." = "Amikor egy bejövő hang- vagy videóhívás érkezik.";
/* No comment provided by engineer. */
"when IP hidden" = "ha az IP-cím rejtett";
/* No comment provided by engineer. */
"When people request to connect, you can accept or reject it." = "Amikor az emberek kapcsolódást kérelmeznek, ön elfogadhatja vagy elutasíthatja azokat.";
@@ -4214,9 +4316,18 @@
/* No comment provided by engineer. */
"With reduced battery usage." = "Csökkentett akkumulátorhasználattal.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to file servers." = "Tor vagy VPN nélkül az IP-címe látható lesz a fájlkiszolgálók számára.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." = "Tor vagy VPN nélkül az IP-címe látható lesz ezen XFTP átjátszók számára: %@.";
/* No comment provided by engineer. */
"Wrong database passphrase" = "Téves adatbázis jelmondat";
/* snd error text */
"Wrong key or unknown connection - most likely this connection is deleted." = "Rossz kulcs vagy ismeretlen kapcsolat - valószínűleg ez a kapcsolat törlődött.";
/* No comment provided by engineer. */
"Wrong passphrase!" = "Téves jelmondat!";
@@ -4347,7 +4458,7 @@
"you changed role of %@ to %@" = "%1$@ szerepkörét megváltoztatta erre: %@";
/* No comment provided by engineer. */
"You control through which server(s) **to receive** the messages, your contacts the servers you use to message them." = "Ön szabályozhatja, hogy mely kiszogál(ók)ón keresztül **kapja** az üzeneteket, az ismerősöket - az üzenetküldéshez használt szervereken.";
"You control through which server(s) **to receive** the messages, your contacts the servers you use to message them." = "Ön szabályozhatja, hogy mely kiszogál(ók)ón keresztül **kapja** az üzeneteket, az ismerősöket - az üzenetküldéshez használt kiszolgálókon.";
/* No comment provided by engineer. */
"You could not be verified; please try again." = "Nem lehetett ellenőrizni; próbálja meg újra.";
+111
View File
@@ -449,6 +449,9 @@
/* No comment provided by engineer. */
"Allow disappearing messages only if your contact allows it to you." = "Consenti i messaggi a tempo solo se il contatto li consente a te.";
/* No comment provided by engineer. */
"Allow downgrade" = "Consenti downgrade";
/* No comment provided by engineer. */
"Allow irreversible message deletion only if your contact allows it to you. (24 hours)" = "Consenti l'eliminazione irreversibile dei messaggi solo se il contatto la consente a te. (24 ore)";
@@ -509,6 +512,9 @@
/* pref value */
"always" = "sempre";
/* No comment provided by engineer. */
"Always use private routing." = "Usa sempre l'instradamento privato.";
/* No comment provided by engineer. */
"Always use relay" = "Connetti via relay";
@@ -716,6 +722,9 @@
/* No comment provided by engineer. */
"Cannot receive file" = "Impossibile ricevere il file";
/* snd error text */
"Capacity exceeded - recipient did not receive previously sent messages." = "Quota superata - il destinatario non ha ricevuto i messaggi precedentemente inviati.";
/* No comment provided by engineer. */
"Cellular" = "Mobile";
@@ -852,6 +861,9 @@
/* No comment provided by engineer. */
"Confirm database upgrades" = "Conferma aggiornamenti database";
/* No comment provided by engineer. */
"Confirm files from unknown servers." = "Conferma i file da server sconosciuti.";
/* No comment provided by engineer. */
"Confirm network settings" = "Conferma le impostazioni di rete";
@@ -1320,6 +1332,9 @@
/* No comment provided by engineer. */
"Desktop devices" = "Dispositivi desktop";
/* snd error text */
"Destination server error: %@" = "Errore del server di destinazione: %@";
/* No comment provided by engineer. */
"Develop" = "Sviluppa";
@@ -1398,6 +1413,12 @@
/* No comment provided by engineer. */
"Do not send history to new members." = "Non inviare la cronologia ai nuovi membri.";
/* No comment provided by engineer. */
"Do NOT send messages directly, even if your or destination server does not support private routing." = "NON inviare messaggi direttamente, anche se il tuo server o quello di destinazione non supporta l'instradamento privato.";
/* No comment provided by engineer. */
"Do NOT use private routing." = "NON usare l'instradamento privato.";
/* No comment provided by engineer. */
"Do NOT use SimpleX for emergency calls." = "NON usare SimpleX per chiamate di emergenza.";
@@ -1839,6 +1860,9 @@
/* No comment provided by engineer. */
"File: %@" = "File: %@";
/* No comment provided by engineer. */
"Files" = "File";
/* No comment provided by engineer. */
"Files & media" = "File e multimediali";
@@ -1905,6 +1929,12 @@
/* No comment provided by engineer. */
"Forwarded from" = "Inoltrato da";
/* snd error text */
"Forwarding server: %@\nDestination server error: %@" = "Server di inoltro: %1$@\nErrore del server di destinazione: %2$@";
/* snd error text */
"Forwarding server: %@\nError: %@" = "Server di inoltro: %1$@\nErrore: %2$@";
/* No comment provided by engineer. */
"Found desktop" = "Desktop trovato";
@@ -2460,6 +2490,9 @@
/* No comment provided by engineer. */
"Message delivery receipts!" = "Ricevute di consegna dei messaggi!";
/* item status text */
"Message delivery warning" = "Avviso di consegna del messaggio";
/* No comment provided by engineer. */
"Message draft" = "Bozza dei messaggi";
@@ -2475,6 +2508,12 @@
/* notification */
"message received" = "messaggio ricevuto";
/* No comment provided by engineer. */
"Message routing fallback" = "Ripiego instradamento messaggio";
/* No comment provided by engineer. */
"Message routing mode" = "Modalità instradamento messaggio";
/* No comment provided by engineer. */
"Message source remains private." = "La fonte del messaggio resta privata.";
@@ -2586,6 +2625,9 @@
/* No comment provided by engineer. */
"Network connection" = "Connessione di rete";
/* snd error text */
"Network issues - message expired after many attempts to send it." = "Problemi di rete - messaggio scaduto dopo molti tentativi di inviarlo.";
/* No comment provided by engineer. */
"Network management" = "Gestione della rete";
@@ -2948,9 +2990,18 @@
/* No comment provided by engineer. */
"Private filenames" = "Nomi di file privati";
/* No comment provided by engineer. */
"Private message routing" = "Instradamento privato messaggi";
/* No comment provided by engineer. */
"Private message routing 🚀" = "Instradamento privato dei messaggi 🚀";
/* name of notes to self */
"Private notes" = "Note private";
/* No comment provided by engineer. */
"Private routing" = "Instradamento privato";
/* No comment provided by engineer. */
"Profile and server connections" = "Profilo e connessioni al server";
@@ -3002,9 +3053,15 @@
/* No comment provided by engineer. */
"Protect app screen" = "Proteggi la schermata dell'app";
/* No comment provided by engineer. */
"Protect IP address" = "Proteggi l'indirizzo IP";
/* No comment provided by engineer. */
"Protect your chat profiles with a password!" = "Proteggi i tuoi profili di chat con una password!";
/* No comment provided by engineer. */
"Protect your IP address from the messaging relays chosen by your contacts.\nEnable in *Network & servers* settings." = "Proteggi il tuo indirizzo IP dai relay di messaggistica scelti dai tuoi contatti.\nAttivalo nelle impostazioni *Rete e server*.";
/* No comment provided by engineer. */
"Protocol timeout" = "Scadenza del protocollo";
@@ -3230,6 +3287,9 @@
/* No comment provided by engineer. */
"Run chat" = "Avvia chat";
/* No comment provided by engineer. */
"Safely receive files" = "Ricevi i file in sicurezza";
/* No comment provided by engineer. */
"Safer groups" = "Gruppi più sicuri";
@@ -3386,6 +3446,12 @@
/* No comment provided by engineer. */
"Send live message" = "Invia messaggio in diretta";
/* No comment provided by engineer. */
"Send messages directly when IP address is protected and your or destination server does not support private routing." = "Invia messaggi direttamente quando l'indirizzo IP è protetto e il tuo server o quello di destinazione non supporta l'instradamento privato.";
/* No comment provided by engineer. */
"Send messages directly when your or destination server does not support private routing." = "Invia messaggi direttamente quando il tuo server o quello di destinazione non supporta l'instradamento privato.";
/* No comment provided by engineer. */
"Send notifications" = "Invia notifiche";
@@ -3449,6 +3515,9 @@
/* No comment provided by engineer. */
"Sent messages will be deleted after set time." = "I messaggi inviati verranno eliminati dopo il tempo impostato.";
/* srv error text. */
"Server address is incompatible with network settings." = "L'indirizzo del server non è compatibile con le impostazioni di rete.";
/* server test error */
"Server requires authorization to create queues, check password" = "Il server richiede l'autorizzazione di creare code, controlla la password";
@@ -3458,6 +3527,9 @@
/* No comment provided by engineer. */
"Server test failed!" = "Test del server fallito!";
/* srv error text */
"Server version is incompatible with network settings." = "La versione del server non è compatibile con le impostazioni di rete.";
/* No comment provided by engineer. */
"Servers" = "Server";
@@ -3524,6 +3596,9 @@
/* No comment provided by engineer. */
"Share with contacts" = "Condividi con i contatti";
/* No comment provided by engineer. */
"Show → on messages sent via private routing." = "Mostra → nei messaggi inviati via instradamento privato.";
/* No comment provided by engineer. */
"Show calls in phone history" = "Mostra le chiamate nella cronologia del telefono";
@@ -3533,6 +3608,9 @@
/* No comment provided by engineer. */
"Show last messages" = "Mostra ultimi messaggi";
/* No comment provided by engineer. */
"Show message status" = "Mostra stato del messaggio";
/* No comment provided by engineer. */
"Show preview" = "Mostra anteprima";
@@ -3740,6 +3818,9 @@
/* No comment provided by engineer. */
"The app can notify you when you receive messages or contact requests - please open settings to enable." = "L'app può avvisarti quando ricevi messaggi o richieste di contatto: apri le impostazioni per attivare.";
/* No comment provided by engineer. */
"The app will ask to confirm downloads from unknown file servers (except .onion)." = "L'app chiederà di confermare i download da server di file sconosciuti (eccetto .onion).";
/* No comment provided by engineer. */
"The attempt to change database passphrase was not completed." = "Il tentativo di cambiare la password del database non è stato completato.";
@@ -3860,6 +3941,9 @@
/* No comment provided by engineer. */
"To protect your information, turn on SimpleX Lock.\nYou will be prompted to complete authentication before this feature is enabled." = "Per proteggere le tue informazioni, attiva SimpleX Lock.\nTi verrà chiesto di completare l'autenticazione prima di attivare questa funzionalità.";
/* No comment provided by engineer. */
"To protect your IP address, private routing uses your SMP servers to deliver messages." = "Per proteggere il tuo indirizzo IP, l'instradamento privato usa i tuoi server SMP per consegnare i messaggi.";
/* No comment provided by engineer. */
"To record voice message please grant permission to use Microphone." = "Per registrare un messaggio vocale, concedi l'autorizzazione all'uso del microfono.";
@@ -3944,6 +4028,12 @@
/* No comment provided by engineer. */
"Unknown error" = "Errore sconosciuto";
/* No comment provided by engineer. */
"unknown relays" = "relay sconosciuti";
/* No comment provided by engineer. */
"Unknown servers!" = "Server sconosciuti!";
/* No comment provided by engineer. */
"unknown status" = "stato sconosciuto";
@@ -3968,6 +4058,9 @@
/* No comment provided by engineer. */
"Unmute" = "Riattiva notifiche";
/* No comment provided by engineer. */
"unprotected" = "non protetto";
/* No comment provided by engineer. */
"Unread" = "Non letto";
@@ -4037,6 +4130,12 @@
/* No comment provided by engineer. */
"Use only local notifications?" = "Usare solo notifiche locali?";
/* No comment provided by engineer. */
"Use private routing with unknown servers when IP address is not protected." = "Usa l'instradamento privato con server sconosciuti quando l'indirizzo IP non è protetto.";
/* No comment provided by engineer. */
"Use private routing with unknown servers." = "Usa l'instradamento privato con server sconosciuti.";
/* No comment provided by engineer. */
"Use server" = "Usa il server";
@@ -4190,6 +4289,9 @@
/* No comment provided by engineer. */
"When connecting audio and video calls." = "Quando si connettono le chiamate audio e video.";
/* No comment provided by engineer. */
"when IP hidden" = "quando l'IP è nascosto";
/* No comment provided by engineer. */
"When people request to connect, you can accept or reject it." = "Quando le persone chiedono di connettersi, puoi accettare o rifiutare.";
@@ -4214,9 +4316,18 @@
/* No comment provided by engineer. */
"With reduced battery usage." = "Con consumo di batteria ridotto.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to file servers." = "Senza Tor o VPN, il tuo indirizzo IP sarà visibile ai server di file.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." = "Senza Tor o VPN, il tuo indirizzo IP sarà visibile a questi relay XFTP: %@.";
/* No comment provided by engineer. */
"Wrong database passphrase" = "Password del database sbagliata";
/* snd error text */
"Wrong key or unknown connection - most likely this connection is deleted." = "Chiave sbagliata o connessione sconosciuta - molto probabilmente questa connessione è stata eliminata.";
/* No comment provided by engineer. */
"Wrong passphrase!" = "Password sbagliata!";
+111
View File
@@ -449,6 +449,9 @@
/* No comment provided by engineer. */
"Allow disappearing messages only if your contact allows it to you." = "Sta verdwijnende berichten alleen toe als uw contact dit toestaat.";
/* No comment provided by engineer. */
"Allow downgrade" = "Downgraden toestaan";
/* No comment provided by engineer. */
"Allow irreversible message deletion only if your contact allows it to you. (24 hours)" = "Sta het onomkeerbaar verwijderen van berichten alleen toe als uw contact dit toestaat. (24 uur)";
@@ -509,6 +512,9 @@
/* pref value */
"always" = "altijd";
/* No comment provided by engineer. */
"Always use private routing." = "Gebruik altijd privéroutering.";
/* No comment provided by engineer. */
"Always use relay" = "Altijd relay gebruiken";
@@ -716,6 +722,9 @@
/* No comment provided by engineer. */
"Cannot receive file" = "Kan bestand niet ontvangen";
/* snd error text */
"Capacity exceeded - recipient did not receive previously sent messages." = "Capaciteit overschreden - ontvanger heeft eerder verzonden berichten niet ontvangen.";
/* No comment provided by engineer. */
"Cellular" = "Mobiel";
@@ -852,6 +861,9 @@
/* No comment provided by engineer. */
"Confirm database upgrades" = "Bevestig database upgrades";
/* No comment provided by engineer. */
"Confirm files from unknown servers." = "Bevestig bestanden van onbekende servers.";
/* No comment provided by engineer. */
"Confirm network settings" = "Bevestig netwerk instellingen";
@@ -1320,6 +1332,9 @@
/* No comment provided by engineer. */
"Desktop devices" = "Desktop apparaten";
/* snd error text */
"Destination server error: %@" = "Bestemmingsserverfout: %@";
/* No comment provided by engineer. */
"Develop" = "Ontwikkelen";
@@ -1398,6 +1413,12 @@
/* No comment provided by engineer. */
"Do not send history to new members." = "Stuur geen geschiedenis naar nieuwe leden.";
/* No comment provided by engineer. */
"Do NOT send messages directly, even if your or destination server does not support private routing." = "Stuur GEEN berichten rechtstreeks, zelfs als uw of de bestemmingsserver geen privéroutering ondersteunt.";
/* No comment provided by engineer. */
"Do NOT use private routing." = "Gebruik GEEN privéroutering.";
/* No comment provided by engineer. */
"Do NOT use SimpleX for emergency calls." = "Gebruik SimpleX NIET voor noodoproepen.";
@@ -1839,6 +1860,9 @@
/* No comment provided by engineer. */
"File: %@" = "Bestand: %@";
/* No comment provided by engineer. */
"Files" = "Bestanden";
/* No comment provided by engineer. */
"Files & media" = "Bestanden en media";
@@ -1905,6 +1929,12 @@
/* No comment provided by engineer. */
"Forwarded from" = "Doorgestuurd vanuit";
/* snd error text */
"Forwarding server: %@\nDestination server error: %@" = "Doorstuurserver: %1$@\nBestemmingsserverfout: %2$@";
/* snd error text */
"Forwarding server: %@\nError: %@" = "Doorstuurserver: %1$@\nFout: %2$@";
/* No comment provided by engineer. */
"Found desktop" = "Desktop gevonden";
@@ -2460,6 +2490,9 @@
/* No comment provided by engineer. */
"Message delivery receipts!" = "Ontvangst bevestiging voor berichten!";
/* item status text */
"Message delivery warning" = "Waarschuwing voor berichtbezorging";
/* No comment provided by engineer. */
"Message draft" = "Concept bericht";
@@ -2475,6 +2508,12 @@
/* notification */
"message received" = "bericht ontvangen";
/* No comment provided by engineer. */
"Message routing fallback" = "Terugval op berichtroutering";
/* No comment provided by engineer. */
"Message routing mode" = "Berichtrouteringsmodus";
/* No comment provided by engineer. */
"Message source remains private." = "Berichtbron blijft privé.";
@@ -2586,6 +2625,9 @@
/* No comment provided by engineer. */
"Network connection" = "Netwerkverbinding";
/* snd error text */
"Network issues - message expired after many attempts to send it." = "Netwerkproblemen - bericht is verlopen na vele pogingen om het te verzenden.";
/* No comment provided by engineer. */
"Network management" = "Netwerkbeheer";
@@ -2948,9 +2990,18 @@
/* No comment provided by engineer. */
"Private filenames" = "Privé bestandsnamen";
/* No comment provided by engineer. */
"Private message routing" = "Routering van privéberichten";
/* No comment provided by engineer. */
"Private message routing 🚀" = "Routing van privéberichten🚀";
/* name of notes to self */
"Private notes" = "Privé notities";
/* No comment provided by engineer. */
"Private routing" = "Privéroutering";
/* No comment provided by engineer. */
"Profile and server connections" = "Profiel- en serververbindingen";
@@ -3002,9 +3053,15 @@
/* No comment provided by engineer. */
"Protect app screen" = "App scherm verbergen";
/* No comment provided by engineer. */
"Protect IP address" = "Bescherm het IP-adres";
/* No comment provided by engineer. */
"Protect your chat profiles with a password!" = "Bescherm je chat profielen met een wachtwoord!";
/* No comment provided by engineer. */
"Protect your IP address from the messaging relays chosen by your contacts.\nEnable in *Network & servers* settings." = "Bescherm uw IP-adres tegen de berichtenrelais die door uw contacten zijn gekozen.\nSchakel dit in in *Netwerk en servers*-instellingen.";
/* No comment provided by engineer. */
"Protocol timeout" = "Protocol timeout";
@@ -3230,6 +3287,9 @@
/* No comment provided by engineer. */
"Run chat" = "Chat uitvoeren";
/* No comment provided by engineer. */
"Safely receive files" = "Veilig bestanden ontvangen";
/* No comment provided by engineer. */
"Safer groups" = "Veiligere groepen";
@@ -3386,6 +3446,12 @@
/* No comment provided by engineer. */
"Send live message" = "Stuur een livebericht";
/* No comment provided by engineer. */
"Send messages directly when IP address is protected and your or destination server does not support private routing." = "Stuur berichten rechtstreeks als het IP-adres beschermd is en uw of bestemmingsserver geen privéroutering ondersteunt.";
/* No comment provided by engineer. */
"Send messages directly when your or destination server does not support private routing." = "Stuur berichten rechtstreeks wanneer uw of de doelserver geen privéroutering ondersteunt.";
/* No comment provided by engineer. */
"Send notifications" = "Meldingen verzenden";
@@ -3449,6 +3515,9 @@
/* No comment provided by engineer. */
"Sent messages will be deleted after set time." = "Verzonden berichten worden na ingestelde tijd verwijderd.";
/* srv error text. */
"Server address is incompatible with network settings." = "Serveradres is niet compatibel met netwerkinstellingen.";
/* server test error */
"Server requires authorization to create queues, check password" = "Server vereist autorisatie om wachtrijen te maken, controleer wachtwoord";
@@ -3458,6 +3527,9 @@
/* No comment provided by engineer. */
"Server test failed!" = "Servertest mislukt!";
/* srv error text */
"Server version is incompatible with network settings." = "Serverversie is incompatibel met netwerkinstellingen.";
/* No comment provided by engineer. */
"Servers" = "Servers";
@@ -3524,6 +3596,9 @@
/* No comment provided by engineer. */
"Share with contacts" = "Delen met contacten";
/* No comment provided by engineer. */
"Show → on messages sent via private routing." = "Toon → bij berichten verzonden via privéroutering.";
/* No comment provided by engineer. */
"Show calls in phone history" = "Toon oproepen in de telefoongeschiedenis";
@@ -3533,6 +3608,9 @@
/* No comment provided by engineer. */
"Show last messages" = "Laat laatste berichten zien";
/* No comment provided by engineer. */
"Show message status" = "Toon berichtstatus";
/* No comment provided by engineer. */
"Show preview" = "Toon voorbeeld";
@@ -3740,6 +3818,9 @@
/* No comment provided by engineer. */
"The app can notify you when you receive messages or contact requests - please open settings to enable." = "De app kan u op de hoogte stellen wanneer u berichten of contact verzoeken ontvangt - open de instellingen om dit in te schakelen.";
/* No comment provided by engineer. */
"The app will ask to confirm downloads from unknown file servers (except .onion)." = "De app vraagt om downloads van onbekende bestandsservers (behalve .onion) te bevestigen.";
/* No comment provided by engineer. */
"The attempt to change database passphrase was not completed." = "De poging om het wachtwoord van de database te wijzigen is niet voltooid.";
@@ -3860,6 +3941,9 @@
/* No comment provided by engineer. */
"To protect your information, turn on SimpleX Lock.\nYou will be prompted to complete authentication before this feature is enabled." = "Schakel SimpleX Vergrendelen om uw informatie te beschermen.\nU wordt gevraagd de authenticatie te voltooien voordat deze functie wordt ingeschakeld.";
/* No comment provided by engineer. */
"To protect your IP address, private routing uses your SMP servers to deliver messages." = "Om uw IP-adres te beschermen, gebruikt privéroutering uw SMP-servers om berichten te bezorgen.";
/* No comment provided by engineer. */
"To record voice message please grant permission to use Microphone." = "Geef toestemming om de microfoon te gebruiken om een spraakbericht op te nemen.";
@@ -3944,6 +4028,12 @@
/* No comment provided by engineer. */
"Unknown error" = "Onbekende fout";
/* No comment provided by engineer. */
"unknown relays" = "onbekende relays";
/* No comment provided by engineer. */
"Unknown servers!" = "Onbekende servers!";
/* No comment provided by engineer. */
"unknown status" = "onbekende status";
@@ -3968,6 +4058,9 @@
/* No comment provided by engineer. */
"Unmute" = "Dempen opheffen";
/* No comment provided by engineer. */
"unprotected" = "onbeschermd";
/* No comment provided by engineer. */
"Unread" = "Ongelezen";
@@ -4037,6 +4130,12 @@
/* No comment provided by engineer. */
"Use only local notifications?" = "Alleen lokale meldingen gebruiken?";
/* No comment provided by engineer. */
"Use private routing with unknown servers when IP address is not protected." = "Gebruik privéroutering met onbekende servers wanneer het IP-adres niet beveiligd is.";
/* No comment provided by engineer. */
"Use private routing with unknown servers." = "Gebruik privéroutering met onbekende servers.";
/* No comment provided by engineer. */
"Use server" = "Gebruik server";
@@ -4190,6 +4289,9 @@
/* No comment provided by engineer. */
"When connecting audio and video calls." = "Bij het verbinden van audio- en video-oproepen.";
/* No comment provided by engineer. */
"when IP hidden" = "wanneer IP verborgen is";
/* No comment provided by engineer. */
"When people request to connect, you can accept or reject it." = "Wanneer mensen vragen om verbinding te maken, kunt u dit accepteren of weigeren.";
@@ -4214,9 +4316,18 @@
/* No comment provided by engineer. */
"With reduced battery usage." = "Met verminderd batterijgebruik.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to file servers." = "Zonder Tor of VPN is uw IP-adres zichtbaar voor bestandsservers.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." = "Zonder Tor of VPN zal uw IP-adres zichtbaar zijn voor deze XFTP-relays: %@.";
/* No comment provided by engineer. */
"Wrong database passphrase" = "Verkeerd wachtwoord voor de database";
/* snd error text */
"Wrong key or unknown connection - most likely this connection is deleted." = "Verkeerde sleutel of onbekende verbinding - hoogstwaarschijnlijk is deze verbinding verwijderd.";
/* No comment provided by engineer. */
"Wrong passphrase!" = "Verkeerd wachtwoord!";
+111
View File
@@ -449,6 +449,9 @@
/* No comment provided by engineer. */
"Allow disappearing messages only if your contact allows it to you." = "Zezwól na znikające wiadomości tylko wtedy, gdy Twój kontakt Ci na to pozwoli.";
/* No comment provided by engineer. */
"Allow downgrade" = "Zezwól na obniżenie wersji";
/* No comment provided by engineer. */
"Allow irreversible message deletion only if your contact allows it to you. (24 hours)" = "Zezwalaj na nieodwracalne usuwanie wiadomości tylko wtedy, gdy Twój kontakt Ci na to pozwoli. (24 godziny)";
@@ -509,6 +512,9 @@
/* pref value */
"always" = "zawsze";
/* No comment provided by engineer. */
"Always use private routing." = "Zawsze używaj prywatnego trasowania.";
/* No comment provided by engineer. */
"Always use relay" = "Zawsze używaj przekaźnika";
@@ -716,6 +722,9 @@
/* No comment provided by engineer. */
"Cannot receive file" = "Nie można odebrać pliku";
/* snd error text */
"Capacity exceeded - recipient did not receive previously sent messages." = "Przekroczono pojemność - odbiorca nie otrzymał wcześniej wysłanych wiadomości.";
/* No comment provided by engineer. */
"Cellular" = "Sieć komórkowa";
@@ -852,6 +861,9 @@
/* No comment provided by engineer. */
"Confirm database upgrades" = "Potwierdź aktualizacje bazy danych";
/* No comment provided by engineer. */
"Confirm files from unknown servers." = "Potwierdzaj pliki z nieznanych serwerów.";
/* No comment provided by engineer. */
"Confirm network settings" = "Potwierdź ustawienia sieciowe";
@@ -1320,6 +1332,9 @@
/* No comment provided by engineer. */
"Desktop devices" = "Urządzenia komputerowe";
/* snd error text */
"Destination server error: %@" = "Błąd docelowego serwera: %@";
/* No comment provided by engineer. */
"Develop" = "Deweloperskie";
@@ -1398,6 +1413,12 @@
/* No comment provided by engineer. */
"Do not send history to new members." = "Nie wysyłaj historii do nowych członków.";
/* No comment provided by engineer. */
"Do NOT send messages directly, even if your or destination server does not support private routing." = "NIE wysyłaj wiadomości bezpośrednio, nawet jeśli serwer docelowy nie obsługuje prywatnego trasowania.";
/* No comment provided by engineer. */
"Do NOT use private routing." = "NIE używaj prywatnego trasowania.";
/* No comment provided by engineer. */
"Do NOT use SimpleX for emergency calls." = "NIE używaj SimpleX do połączeń alarmowych.";
@@ -1839,6 +1860,9 @@
/* No comment provided by engineer. */
"File: %@" = "Plik: %@";
/* No comment provided by engineer. */
"Files" = "Pliki";
/* No comment provided by engineer. */
"Files & media" = "Pliki i media";
@@ -1905,6 +1929,12 @@
/* No comment provided by engineer. */
"Forwarded from" = "Przekazane dalej od";
/* snd error text */
"Forwarding server: %@\nDestination server error: %@" = "Serwer przekazujący: %1$@\nBłąd serwera docelowego: %2$@";
/* snd error text */
"Forwarding server: %@\nError: %@" = "Serwer przekazujący: %1$@\nBłąd: %2$@";
/* No comment provided by engineer. */
"Found desktop" = "Znaleziono komputer";
@@ -2460,6 +2490,9 @@
/* No comment provided by engineer. */
"Message delivery receipts!" = "Potwierdzenia dostarczenia wiadomości!";
/* item status text */
"Message delivery warning" = "Ostrzeżenie dostarczenia wiadomości";
/* No comment provided by engineer. */
"Message draft" = "Wersja robocza wiadomości";
@@ -2475,6 +2508,12 @@
/* notification */
"message received" = "wiadomość otrzymana";
/* No comment provided by engineer. */
"Message routing fallback" = "Rezerwowe trasowania wiadomości";
/* No comment provided by engineer. */
"Message routing mode" = "Tryb trasowania wiadomości";
/* No comment provided by engineer. */
"Message source remains private." = "Źródło wiadomości pozostaje prywatne.";
@@ -2586,6 +2625,9 @@
/* No comment provided by engineer. */
"Network connection" = "Połączenie z siecią";
/* snd error text */
"Network issues - message expired after many attempts to send it." = "Błąd sieciowy - wiadomość wygasła po wielu próbach wysłania jej.";
/* No comment provided by engineer. */
"Network management" = "Zarządzenie sieciowe";
@@ -2948,9 +2990,18 @@
/* No comment provided by engineer. */
"Private filenames" = "Prywatne nazwy plików";
/* No comment provided by engineer. */
"Private message routing" = "Trasowanie prywatnych wiadomości";
/* No comment provided by engineer. */
"Private message routing 🚀" = "Trasowanie prywatnych wiadomości🚀";
/* name of notes to self */
"Private notes" = "Prywatne notatki";
/* No comment provided by engineer. */
"Private routing" = "Prywatne trasowanie";
/* No comment provided by engineer. */
"Profile and server connections" = "Profil i połączenia z serwerem";
@@ -3002,9 +3053,15 @@
/* No comment provided by engineer. */
"Protect app screen" = "Chroń ekran aplikacji";
/* No comment provided by engineer. */
"Protect IP address" = "Chroń adres IP";
/* No comment provided by engineer. */
"Protect your chat profiles with a password!" = "Chroń swoje profile czatu hasłem!";
/* No comment provided by engineer. */
"Protect your IP address from the messaging relays chosen by your contacts.\nEnable in *Network & servers* settings." = "Chroni Twój adres IP przed przekaźnikami wiadomości wybranych przez Twoje kontakty.\nWłącz w ustawianiach *Sieć i serwery* .";
/* No comment provided by engineer. */
"Protocol timeout" = "Limit czasu protokołu";
@@ -3230,6 +3287,9 @@
/* No comment provided by engineer. */
"Run chat" = "Uruchom czat";
/* No comment provided by engineer. */
"Safely receive files" = "Bezpiecznie otrzymuj pliki";
/* No comment provided by engineer. */
"Safer groups" = "Bezpieczniejsze grupy";
@@ -3386,6 +3446,12 @@
/* No comment provided by engineer. */
"Send live message" = "Wyślij wiadomość na żywo";
/* No comment provided by engineer. */
"Send messages directly when IP address is protected and your or destination server does not support private routing." = "Wysyłaj wiadomości bezpośrednio, gdy adres IP jest chroniony i Twój lub docelowy serwer nie obsługuje prywatnego trasowania.";
/* No comment provided by engineer. */
"Send messages directly when your or destination server does not support private routing." = "Wysyłaj wiadomości bezpośrednio, gdy Twój lub docelowy serwer nie obsługuje prywatnego trasowania.";
/* No comment provided by engineer. */
"Send notifications" = "Wyślij powiadomienia";
@@ -3449,6 +3515,9 @@
/* No comment provided by engineer. */
"Sent messages will be deleted after set time." = "Wysłane wiadomości zostaną usunięte po ustawionym czasie.";
/* srv error text. */
"Server address is incompatible with network settings." = "Adres serwera jest niekompatybilny z ustawieniami sieciowymi.";
/* server test error */
"Server requires authorization to create queues, check password" = "Serwer wymaga autoryzacji do tworzenia kolejek, sprawdź hasło";
@@ -3458,6 +3527,9 @@
/* No comment provided by engineer. */
"Server test failed!" = "Test serwera nie powiódł się!";
/* srv error text */
"Server version is incompatible with network settings." = "Wersja serwera jest niekompatybilna z ustawieniami sieciowymi.";
/* No comment provided by engineer. */
"Servers" = "Serwery";
@@ -3524,6 +3596,9 @@
/* No comment provided by engineer. */
"Share with contacts" = "Udostępnij kontaktom";
/* No comment provided by engineer. */
"Show → on messages sent via private routing." = "Pokaż → na wiadomościach wysłanych przez prywatne trasowanie.";
/* No comment provided by engineer. */
"Show calls in phone history" = "Pokaż połączenia w historii telefonu";
@@ -3533,6 +3608,9 @@
/* No comment provided by engineer. */
"Show last messages" = "Pokaż ostatnie wiadomości";
/* No comment provided by engineer. */
"Show message status" = "Pokaż status wiadomości";
/* No comment provided by engineer. */
"Show preview" = "Pokaż podgląd";
@@ -3740,6 +3818,9 @@
/* No comment provided by engineer. */
"The app can notify you when you receive messages or contact requests - please open settings to enable." = "Aplikacja może powiadamiać Cię, gdy otrzymujesz wiadomości lub prośby o kontakt — otwórz ustawienia, aby włączyć.";
/* No comment provided by engineer. */
"The app will ask to confirm downloads from unknown file servers (except .onion)." = "Aplikacja zapyta o potwierdzenie pobierania od nieznanych serwerów plików (poza .onion).";
/* No comment provided by engineer. */
"The attempt to change database passphrase was not completed." = "Próba zmiany hasła bazy danych nie została zakończona.";
@@ -3860,6 +3941,9 @@
/* No comment provided by engineer. */
"To protect your information, turn on SimpleX Lock.\nYou will be prompted to complete authentication before this feature is enabled." = "Aby chronić swoje informacje, włącz funkcję blokady SimpleX.\nPrzed włączeniem tej funkcji zostanie wyświetlony monit uwierzytelniania.";
/* No comment provided by engineer. */
"To protect your IP address, private routing uses your SMP servers to deliver messages." = "Aby chronić Twój adres IP, prywatne trasowanie używa Twoich serwerów SMP, aby dostarczyć wiadomości.";
/* No comment provided by engineer. */
"To record voice message please grant permission to use Microphone." = "Aby nagrać wiadomość głosową należy udzielić zgody na użycie Mikrofonu.";
@@ -3944,6 +4028,12 @@
/* No comment provided by engineer. */
"Unknown error" = "Nieznany błąd";
/* No comment provided by engineer. */
"unknown relays" = "nieznane przekaźniki";
/* No comment provided by engineer. */
"Unknown servers!" = "Nieznane serwery!";
/* No comment provided by engineer. */
"unknown status" = "nieznany status";
@@ -3968,6 +4058,9 @@
/* No comment provided by engineer. */
"Unmute" = "Wyłącz wyciszenie";
/* No comment provided by engineer. */
"unprotected" = "niezabezpieczony";
/* No comment provided by engineer. */
"Unread" = "Nieprzeczytane";
@@ -4037,6 +4130,12 @@
/* No comment provided by engineer. */
"Use only local notifications?" = "Używać tylko lokalnych powiadomień?";
/* No comment provided by engineer. */
"Use private routing with unknown servers when IP address is not protected." = "Używaj prywatnego trasowania z nieznanymi serwerami, gdy adres IP nie jest chroniony.";
/* No comment provided by engineer. */
"Use private routing with unknown servers." = "Używaj prywatnego trasowania z nieznanymi serwerami.";
/* No comment provided by engineer. */
"Use server" = "Użyj serwera";
@@ -4190,6 +4289,9 @@
/* No comment provided by engineer. */
"When connecting audio and video calls." = "Podczas łączenia połączeń audio i wideo.";
/* No comment provided by engineer. */
"when IP hidden" = "gdy IP ukryty";
/* No comment provided by engineer. */
"When people request to connect, you can accept or reject it." = "Kiedy ludzie proszą o połączenie, możesz je zaakceptować lub odrzucić.";
@@ -4214,9 +4316,18 @@
/* No comment provided by engineer. */
"With reduced battery usage." = "Ze zmniejszonym zużyciem baterii.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to file servers." = "Bez Tor lub VPN, Twój adres IP będzie widoczny do serwerów plików.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." = "Bez Tor lub VPN, Twój adres IP będzie widoczny dla tych przekaźników XFTP: %@.";
/* No comment provided by engineer. */
"Wrong database passphrase" = "Nieprawidłowe hasło bazy danych";
/* snd error text */
"Wrong key or unknown connection - most likely this connection is deleted." = "Zły klucz lub nieznane połączenie - najprawdopodobniej to połączenie jest usunięte.";
/* No comment provided by engineer. */
"Wrong passphrase!" = "Nieprawidłowe hasło!";
+111
View File
@@ -449,6 +449,9 @@
/* No comment provided by engineer. */
"Allow disappearing messages only if your contact allows it to you." = "Разрешить исчезающие сообщения, только если Ваш контакт разрешает их Вам.";
/* No comment provided by engineer. */
"Allow downgrade" = "Разрешить прямую доставку";
/* No comment provided by engineer. */
"Allow irreversible message deletion only if your contact allows it to you. (24 hours)" = "Разрешить необратимое удаление сообщений, только если Ваш контакт разрешает это Вам. (24 часа)";
@@ -509,6 +512,9 @@
/* pref value */
"always" = "всегда";
/* No comment provided by engineer. */
"Always use private routing." = "Всегда использовать конфиденциальную доставку.";
/* No comment provided by engineer. */
"Always use relay" = "Всегда соединяться через relay";
@@ -716,6 +722,9 @@
/* No comment provided by engineer. */
"Cannot receive file" = "Невозможно получить файл";
/* snd error text */
"Capacity exceeded - recipient did not receive previously sent messages." = "Превышено количество сообщений - предыдущие сообщения не доставлены.";
/* No comment provided by engineer. */
"Cellular" = "Мобильная сеть";
@@ -852,6 +861,9 @@
/* No comment provided by engineer. */
"Confirm database upgrades" = "Подтвердить обновление базы данных";
/* No comment provided by engineer. */
"Confirm files from unknown servers." = "Подтверждать файлы с неизвестных серверов.";
/* No comment provided by engineer. */
"Confirm network settings" = "Подтвердите настройки сети";
@@ -1320,6 +1332,9 @@
/* No comment provided by engineer. */
"Desktop devices" = "Компьютеры";
/* snd error text */
"Destination server error: %@" = "Ошибка сервера получателя: %@";
/* No comment provided by engineer. */
"Develop" = "Для разработчиков";
@@ -1398,6 +1413,12 @@
/* No comment provided by engineer. */
"Do not send history to new members." = "Не отправлять историю новым членам.";
/* No comment provided by engineer. */
"Do NOT send messages directly, even if your or destination server does not support private routing." = "Не отправлять сообщения напрямую, даже если сервер получателя не поддерживает конфиденциальную доставку.";
/* No comment provided by engineer. */
"Do NOT use private routing." = "Не использовать конфиденциальную доставку.";
/* No comment provided by engineer. */
"Do NOT use SimpleX for emergency calls." = "Не используйте SimpleX для экстренных звонков.";
@@ -1839,6 +1860,9 @@
/* No comment provided by engineer. */
"File: %@" = "Файл: %@";
/* No comment provided by engineer. */
"Files" = "Файлы";
/* No comment provided by engineer. */
"Files & media" = "Файлы и медиа";
@@ -1905,6 +1929,12 @@
/* No comment provided by engineer. */
"Forwarded from" = "Переслано из";
/* snd error text */
"Forwarding server: %@\nDestination server error: %@" = "Пересылающий сервер: %1$@\nОшибка сервера получателя: %2$@";
/* snd error text */
"Forwarding server: %@\nError: %@" = "Пересылающий сервер: %1$@\nОшибка: %2$@";
/* No comment provided by engineer. */
"Found desktop" = "Компьютер найден";
@@ -2460,6 +2490,9 @@
/* No comment provided by engineer. */
"Message delivery receipts!" = "Отчеты о доставке сообщений!";
/* item status text */
"Message delivery warning" = "Предупреждение доставки сообщения";
/* No comment provided by engineer. */
"Message draft" = "Черновик сообщения";
@@ -2475,6 +2508,12 @@
/* notification */
"message received" = "получено сообщение";
/* No comment provided by engineer. */
"Message routing fallback" = "Прямая доставка сообщений";
/* No comment provided by engineer. */
"Message routing mode" = "Режим доставки сообщений";
/* No comment provided by engineer. */
"Message source remains private." = "Источник сообщения остаётся конфиденциальным.";
@@ -2586,6 +2625,9 @@
/* No comment provided by engineer. */
"Network connection" = "Интернет-соединение";
/* snd error text */
"Network issues - message expired after many attempts to send it." = "Ошибка сети - сообщение не было отправлено после многократных попыток.";
/* No comment provided by engineer. */
"Network management" = "Статус сети";
@@ -2948,9 +2990,18 @@
/* No comment provided by engineer. */
"Private filenames" = "Защищенные имена файлов";
/* No comment provided by engineer. */
"Private message routing" = "Конфиденциальная доставка сообщений";
/* No comment provided by engineer. */
"Private message routing 🚀" = "Конфиденциальная доставка сообщений 🚀";
/* name of notes to self */
"Private notes" = "Личные заметки";
/* No comment provided by engineer. */
"Private routing" = "Конфиденциальная доставка";
/* No comment provided by engineer. */
"Profile and server connections" = "Профиль и соединения на сервере";
@@ -3002,9 +3053,15 @@
/* No comment provided by engineer. */
"Protect app screen" = "Защитить экран приложения";
/* No comment provided by engineer. */
"Protect IP address" = "Защитить IP адрес";
/* No comment provided by engineer. */
"Protect your chat profiles with a password!" = "Защитите Ваши профили чата паролем!";
/* No comment provided by engineer. */
"Protect your IP address from the messaging relays chosen by your contacts.\nEnable in *Network & servers* settings." = "Защитите ваш IP адрес от серверов сообщений, выбранных Вашими контактами.\nВключите в настройках *Сеть и серверы*.";
/* No comment provided by engineer. */
"Protocol timeout" = "Таймаут протокола";
@@ -3230,6 +3287,9 @@
/* No comment provided by engineer. */
"Run chat" = "Запустить chat";
/* No comment provided by engineer. */
"Safely receive files" = "Получайте файлы безопасно";
/* No comment provided by engineer. */
"Safer groups" = "Более безопасные группы";
@@ -3386,6 +3446,12 @@
/* No comment provided by engineer. */
"Send live message" = "Отправить живое сообщение";
/* No comment provided by engineer. */
"Send messages directly when IP address is protected and your or destination server does not support private routing." = "Отправлять сообщения напрямую, когда IP адрес защищен, и Ваш сервер или сервер получателя не поддерживает конфиденциальную доставку.";
/* No comment provided by engineer. */
"Send messages directly when your or destination server does not support private routing." = "Отправлять сообщения напрямую, когда Ваш сервер или сервер получателя не поддерживает конфиденциальную доставку.";
/* No comment provided by engineer. */
"Send notifications" = "Отправлять уведомления";
@@ -3449,6 +3515,9 @@
/* No comment provided by engineer. */
"Sent messages will be deleted after set time." = "Отправленные сообщения будут удалены через заданное время.";
/* srv error text. */
"Server address is incompatible with network settings." = "Адрес сервера несовместим с настройками сети.";
/* server test error */
"Server requires authorization to create queues, check password" = "Сервер требует авторизации для создания очередей, проверьте пароль";
@@ -3458,6 +3527,9 @@
/* No comment provided by engineer. */
"Server test failed!" = "Ошибка теста сервера!";
/* srv error text */
"Server version is incompatible with network settings." = "Версия сервера несовместима с настройками сети.";
/* No comment provided by engineer. */
"Servers" = "Серверы";
@@ -3524,6 +3596,9 @@
/* No comment provided by engineer. */
"Share with contacts" = "Поделиться с контактами";
/* No comment provided by engineer. */
"Show → on messages sent via private routing." = "Показать → на сообщениях доставленных конфиденциально.";
/* No comment provided by engineer. */
"Show calls in phone history" = "Показать звонки в истории телефона";
@@ -3533,6 +3608,9 @@
/* No comment provided by engineer. */
"Show last messages" = "Показывать последние сообщения";
/* No comment provided by engineer. */
"Show message status" = "Показать статус сообщения";
/* No comment provided by engineer. */
"Show preview" = "Показывать уведомления";
@@ -3740,6 +3818,9 @@
/* No comment provided by engineer. */
"The app can notify you when you receive messages or contact requests - please open settings to enable." = "Приложение может посылать Вам уведомления о сообщениях и запросах на соединение - уведомления можно включить в Настройках.";
/* No comment provided by engineer. */
"The app will ask to confirm downloads from unknown file servers (except .onion)." = "Приложение будет запрашивать подтверждение загрузки с неизвестных серверов (за исключением .onion адресов).";
/* No comment provided by engineer. */
"The attempt to change database passphrase was not completed." = "Попытка поменять пароль базы данных не была завершена.";
@@ -3860,6 +3941,9 @@
/* No comment provided by engineer. */
"To protect your information, turn on SimpleX Lock.\nYou will be prompted to complete authentication before this feature is enabled." = "Чтобы защитить Вашу информацию, включите блокировку SimpleX Chat.\nВам будет нужно пройти аутентификацию для включения блокировки.";
/* No comment provided by engineer. */
"To protect your IP address, private routing uses your SMP servers to deliver messages." = "Чтобы защитить ваш IP адрес, приложение использует Ваши SMP серверы для конфиденциальной доставки сообщений.";
/* No comment provided by engineer. */
"To record voice message please grant permission to use Microphone." = "Для записи голосового сообщения, пожалуйста разрешите доступ к микрофону.";
@@ -3944,6 +4028,12 @@
/* No comment provided by engineer. */
"Unknown error" = "Неизвестная ошибка";
/* No comment provided by engineer. */
"unknown relays" = "неизвестные серверы";
/* No comment provided by engineer. */
"Unknown servers!" = "Неизвестные серверы!";
/* No comment provided by engineer. */
"unknown status" = "неизвестный статус";
@@ -3968,6 +4058,9 @@
/* No comment provided by engineer. */
"Unmute" = "Уведомлять";
/* No comment provided by engineer. */
"unprotected" = "незащищённый";
/* No comment provided by engineer. */
"Unread" = "Не прочитано";
@@ -4037,6 +4130,12 @@
/* No comment provided by engineer. */
"Use only local notifications?" = "Использовать только локальные нотификации?";
/* No comment provided by engineer. */
"Use private routing with unknown servers when IP address is not protected." = "Использовать конфиденциальную доставку с неизвестными серверами, когда IP адрес не защищен.";
/* No comment provided by engineer. */
"Use private routing with unknown servers." = "Использовать конфиденциальную доставку с неизвестными серверами.";
/* No comment provided by engineer. */
"Use server" = "Использовать сервер";
@@ -4190,6 +4289,9 @@
/* No comment provided by engineer. */
"When connecting audio and video calls." = "Во время соединения аудио и видео звонков.";
/* No comment provided by engineer. */
"when IP hidden" = "когда IP защищен";
/* No comment provided by engineer. */
"When people request to connect, you can accept or reject it." = "Когда Вы получите запрос на соединение, Вы можете принять или отклонить его.";
@@ -4214,9 +4316,18 @@
/* No comment provided by engineer. */
"With reduced battery usage." = "С уменьшенным потреблением батареи.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to file servers." = "Без Тора или ВПН, Ваш IP адрес будет доступен серверам файлов.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." = "Без Тора или ВПН, Ваш IP адрес будет доступен этим серверам файлов: %@.";
/* No comment provided by engineer. */
"Wrong database passphrase" = "Неправильный пароль базы данных";
/* snd error text */
"Wrong key or unknown connection - most likely this connection is deleted." = "Неверный ключ или неизвестное соединение - скорее всего, это соединение удалено.";
/* No comment provided by engineer. */
"Wrong passphrase!" = "Неправильный пароль!";
+117 -6
View File
@@ -275,7 +275,7 @@
"0 sec" = "0 saniye";
/* No comment provided by engineer. */
"0s" = "0 saniye";
"0s" = "0sn";
/* time interval */
"1 day" = "1 gün";
@@ -438,7 +438,7 @@
"All your contacts will remain connected. Profile update will be sent to your contacts." = "Tüm kişileriniz bağlı kalacaktır. Profil güncellemesi kişilerinize gönderilecektir.";
/* No comment provided by engineer. */
"All your contacts, conversations and files will be securely encrypted and uploaded in chunks to configured XFTP relays." = "Tüm kişileriniz, sohbetleriniz ve dosyalarınız güvenli bir şekilde şifrelenecek ve parçalar halinde yapılandırılmış XFTP rölelerine yüklenecektir.";
"All your contacts, conversations and files will be securely encrypted and uploaded in chunks to configured XFTP relays." = "Tüm kişileriniz, konuşmalarınız ve dosyalarınız güvenli bir şekilde şifrelenir ve yapılandırılmış XFTP yönlendiricilerine parçalar halinde yüklenir.";
/* No comment provided by engineer. */
"Allow" = "İzin ver";
@@ -449,6 +449,9 @@
/* No comment provided by engineer. */
"Allow disappearing messages only if your contact allows it to you." = "Eğer kişide izin verirse kaybolan mesajlara izin ver.";
/* No comment provided by engineer. */
"Allow downgrade" = "Sürüm düşürmeye izin ver";
/* No comment provided by engineer. */
"Allow irreversible message deletion only if your contact allows it to you. (24 hours)" = "Konuştuğun kişi, kalıcı olarak silinebilen mesajlara izin veriyorsa sen de ver. (24 saat içinde)";
@@ -459,7 +462,7 @@
"Allow message reactions." = "Mesaj tepkilerine izin ver.";
/* No comment provided by engineer. */
"Allow sending direct messages to members." = "Üyelere direkt mesaj göndermeye izin ver.";
"Allow sending direct messages to members." = "Üyelere doğrudan mesaj göndermeye izin ver.";
/* No comment provided by engineer. */
"Allow sending disappearing messages." = "Kendiliğinden yok olan mesajlar göndermeye izin ver.";
@@ -509,6 +512,9 @@
/* pref value */
"always" = "her zaman";
/* No comment provided by engineer. */
"Always use private routing." = "Her zaman gizli yönlendirme kullan.";
/* No comment provided by engineer. */
"Always use relay" = "Her zaman yönlendirici kullan";
@@ -716,6 +722,9 @@
/* No comment provided by engineer. */
"Cannot receive file" = "Dosya alınamıyor";
/* snd error text */
"Capacity exceeded - recipient did not receive previously sent messages." = "Kapasite aşıldı - alıcı önceden gönderilen mesajları almadı.";
/* No comment provided by engineer. */
"Cellular" = "Hücresel Veri";
@@ -852,6 +861,9 @@
/* No comment provided by engineer. */
"Confirm database upgrades" = "Veritabanı geliştirmelerini onayla";
/* No comment provided by engineer. */
"Confirm files from unknown servers." = "Bilinmeyen sunuculardan gelen dosyaları onayla.";
/* No comment provided by engineer. */
"Confirm network settings" = "Ağ ayarlarını onaylayın";
@@ -1320,6 +1332,9 @@
/* No comment provided by engineer. */
"Desktop devices" = "Bilgisayar cihazları";
/* snd error text */
"Destination server error: %@" = "Hedef sunucu hatası: %@";
/* No comment provided by engineer. */
"Develop" = "Geliştir";
@@ -1398,6 +1413,12 @@
/* No comment provided by engineer. */
"Do not send history to new members." = "Yeni üyelere geçmişi gönderme.";
/* No comment provided by engineer. */
"Do NOT send messages directly, even if your or destination server does not support private routing." = "Sizin veya hedef sunucunun özel yönlendirmeyi desteklememesi durumunda bile mesajları doğrudan GÖNDERMEYİN.";
/* No comment provided by engineer. */
"Do NOT use private routing." = "Gizli yönlendirmeyi KULLANMA.";
/* No comment provided by engineer. */
"Do NOT use SimpleX for emergency calls." = "Acil aramalar için SimpleX'i KULLANMAYIN.";
@@ -1839,6 +1860,9 @@
/* No comment provided by engineer. */
"File: %@" = "Dosya: %@";
/* No comment provided by engineer. */
"Files" = "Dosyalar";
/* No comment provided by engineer. */
"Files & media" = "Dosyalar & medya";
@@ -1905,6 +1929,12 @@
/* No comment provided by engineer. */
"Forwarded from" = "Şuradan iletildi";
/* snd error text */
"Forwarding server: %@\nDestination server error: %@" = "Yönlendirme sunucusu: %1$@\nHedef sunucu hatası: %2$@";
/* snd error text */
"Forwarding server: %@\nError: %@" = "Yönlendirme sunucusu: %1$@\nHata: %2$@";
/* No comment provided by engineer. */
"Found desktop" = "Bilgisayar bulundu";
@@ -2460,6 +2490,9 @@
/* No comment provided by engineer. */
"Message delivery receipts!" = "Mesaj alındı bilgisi!";
/* item status text */
"Message delivery warning" = "Mesaj iletimi uyarısı";
/* No comment provided by engineer. */
"Message draft" = "Mesaj taslağı";
@@ -2475,6 +2508,12 @@
/* notification */
"message received" = "mesaj alındı";
/* No comment provided by engineer. */
"Message routing fallback" = "Mesaj yönlendirme yedeklemesi";
/* No comment provided by engineer. */
"Message routing mode" = "Mesaj yönlendirme modu";
/* No comment provided by engineer. */
"Message source remains private." = "Mesaj kaynağı gizli kalır.";
@@ -2586,6 +2625,9 @@
/* No comment provided by engineer. */
"Network connection" = "Ağ bağlantısı";
/* snd error text */
"Network issues - message expired after many attempts to send it." = "Ağ sorunları - birçok gönderme denemesinden sonra mesajın süresi doldu.";
/* No comment provided by engineer. */
"Network management" = "Ağ yönetimi";
@@ -2948,9 +2990,18 @@
/* No comment provided by engineer. */
"Private filenames" = "Gizli dosya adları";
/* No comment provided by engineer. */
"Private message routing" = "Gizli mesaj yönlendirme";
/* No comment provided by engineer. */
"Private message routing 🚀" = "Gizli mesaj yönlendirme 🚀";
/* name of notes to self */
"Private notes" = "Gizli notlar";
/* No comment provided by engineer. */
"Private routing" = "Gizli yönlendirme";
/* No comment provided by engineer. */
"Profile and server connections" = "Profil ve sunucu bağlantıları";
@@ -2985,7 +3036,7 @@
"Prohibit messages reactions." = "Mesajlarda tepkileri yasakla.";
/* No comment provided by engineer. */
"Prohibit sending direct messages to members." = "Geri dönülmez mesaj silme işlemini yasakla.";
"Prohibit sending direct messages to members." = "Üyelere doğrudan mesaj göndermeyi yasakla.";
/* No comment provided by engineer. */
"Prohibit sending disappearing messages." = "Kaybolan mesajların gönderimini yasakla.";
@@ -3002,9 +3053,15 @@
/* No comment provided by engineer. */
"Protect app screen" = "Uygulama ekranını koru";
/* No comment provided by engineer. */
"Protect IP address" = "IP adresini koru";
/* No comment provided by engineer. */
"Protect your chat profiles with a password!" = "Bir parolayla birlikte sohbet profillerini koru!";
/* No comment provided by engineer. */
"Protect your IP address from the messaging relays chosen by your contacts.\nEnable in *Network & servers* settings." = "IP adresinizi kişileriniz tarafından seçilen mesajlaşma yönlendiricilerinden koruyun.\n*Ağ ve sunucular* ayarlarında etkinleştirin.";
/* No comment provided by engineer. */
"Protocol timeout" = "Protokol zaman aşımı";
@@ -3117,10 +3174,10 @@
"rejected call" = "geri çevrilmiş çağrı";
/* No comment provided by engineer. */
"Relay server is only used if necessary. Another party can observe your IP address." = "Aktarma sunucusu yalnızca gerekli olduğunda kullanılır. Başka bir taraf IP adresinizi gözlemleyebilir.";
"Relay server is only used if necessary. Another party can observe your IP address." = "Yönlendirici sunucusu yalnızca gerekli olduğunda kullanılır. Başka bir taraf IP adresinizi gözlemleyebilir.";
/* No comment provided by engineer. */
"Relay server protects your IP address, but it can observe the duration of the call." = "Aktarıcı sunucu IP adresinizi korur, ancak aramanın süresini gözlemleyebilir.";
"Relay server protects your IP address, but it can observe the duration of the call." = "Yönlendirici sunucu IP adresinizi korur, ancak aramanın süresini gözlemleyebilir.";
/* No comment provided by engineer. */
"Remove" = "Sil";
@@ -3230,6 +3287,9 @@
/* No comment provided by engineer. */
"Run chat" = "Sohbeti çalıştır";
/* No comment provided by engineer. */
"Safely receive files" = "Dosyaları güvenle alın";
/* No comment provided by engineer. */
"Safer groups" = "Daha güvenli gruplar";
@@ -3386,6 +3446,12 @@
/* No comment provided by engineer. */
"Send live message" = "Canlı mesaj gönder";
/* No comment provided by engineer. */
"Send messages directly when IP address is protected and your or destination server does not support private routing." = "IP adresi korumalı olduğunda ve sizin veya hedef sunucunun özel yönlendirmeyi desteklemediği durumlarda mesajları doğrudan gönderin.";
/* No comment provided by engineer. */
"Send messages directly when your or destination server does not support private routing." = "Sizin veya hedef sunucunun özel yönlendirmeyi desteklemediği durumlarda mesajları doğrudan gönderin.";
/* No comment provided by engineer. */
"Send notifications" = "Bildirimler gönder";
@@ -3449,6 +3515,9 @@
/* No comment provided by engineer. */
"Sent messages will be deleted after set time." = "Gönderilen mesajlar ayarlanan süreden sonra silinecektir.";
/* srv error text. */
"Server address is incompatible with network settings." = "Sunucu adresi ağ ayarlarıyla uyumlu değil.";
/* server test error */
"Server requires authorization to create queues, check password" = "Sunucunun sıra oluşturması için yetki gereklidir, şifreyi kontrol edin";
@@ -3458,6 +3527,9 @@
/* No comment provided by engineer. */
"Server test failed!" = "Sunucu testinde hata oluştu!";
/* srv error text */
"Server version is incompatible with network settings." = "Sunucu sürümü ağ ayarlarıyla uyumlu değil.";
/* No comment provided by engineer. */
"Servers" = "Sunucular";
@@ -3524,6 +3596,9 @@
/* No comment provided by engineer. */
"Share with contacts" = "Kişilerle paylaş";
/* No comment provided by engineer. */
"Show → on messages sent via private routing." = "Gizli yönlendirme yoluyla gönderilen mesajlarda → işaretini göster.";
/* No comment provided by engineer. */
"Show calls in phone history" = "Telefon geçmişinde aramaları göster";
@@ -3533,6 +3608,9 @@
/* No comment provided by engineer. */
"Show last messages" = "Son mesajları göster";
/* No comment provided by engineer. */
"Show message status" = "Mesaj durumunu göster";
/* No comment provided by engineer. */
"Show preview" = "Ön gösterimi göser";
@@ -3740,6 +3818,9 @@
/* No comment provided by engineer. */
"The app can notify you when you receive messages or contact requests - please open settings to enable." = "Uygulama, mesaj veya iletişim isteği aldığınızda sizi bilgilendirebilir - etkinleştirmek için lütfen ayarları açın.";
/* No comment provided by engineer. */
"The app will ask to confirm downloads from unknown file servers (except .onion)." = "Uygulama bilinmeyen dosya sunucularından indirmeleri onaylamanızı isteyecektir (.onion hariç).";
/* No comment provided by engineer. */
"The attempt to change database passphrase was not completed." = "Veritabanı parolasını değiştirme girişimi tamamlanmadı.";
@@ -3860,6 +3941,9 @@
/* No comment provided by engineer. */
"To protect your information, turn on SimpleX Lock.\nYou will be prompted to complete authentication before this feature is enabled." = "Bilgilerinizi korumak için SimpleX Lock özelliğini açın.\nBu özellik etkinleştirilmeden önce kimlik doğrulamayı tamamlamanız istenecektir.";
/* No comment provided by engineer. */
"To protect your IP address, private routing uses your SMP servers to deliver messages." = "IP adresinizi korumak için,gizli yönlendirme mesajları iletmek için SMP sunucularınızı kullanır.";
/* No comment provided by engineer. */
"To record voice message please grant permission to use Microphone." = "Sesli mesaj kaydetmek için lütfen Mikrofon kullanım izni verin.";
@@ -3944,6 +4028,12 @@
/* No comment provided by engineer. */
"Unknown error" = "Bilinmeyen hata";
/* No comment provided by engineer. */
"unknown relays" = "bilinmeyen yönlendiriciler";
/* No comment provided by engineer. */
"Unknown servers!" = "Bilinmeyen sunucular!";
/* No comment provided by engineer. */
"unknown status" = "bilinmeyen durum";
@@ -3968,6 +4058,9 @@
/* No comment provided by engineer. */
"Unmute" = "Susturmayı kaldır";
/* No comment provided by engineer. */
"unprotected" = "korumasız";
/* No comment provided by engineer. */
"Unread" = "Okunmamış";
@@ -4037,6 +4130,12 @@
/* No comment provided by engineer. */
"Use only local notifications?" = "Sadece yerel bildirimler kullanılsın mı?";
/* No comment provided by engineer. */
"Use private routing with unknown servers when IP address is not protected." = "IP adresi korunmadığında bilinmeyen sunucularla gizli yönlendirme kullan.";
/* No comment provided by engineer. */
"Use private routing with unknown servers." = "Bilinmeyen sunucularla gizli yönlendirme kullan.";
/* No comment provided by engineer. */
"Use server" = "Sunucu kullan";
@@ -4190,6 +4289,9 @@
/* No comment provided by engineer. */
"When connecting audio and video calls." = "Sesli ve görüntülü aramalara bağlanırken.";
/* No comment provided by engineer. */
"when IP hidden" = "IP gizliyken";
/* No comment provided by engineer. */
"When people request to connect, you can accept or reject it." = "İnsanlar bağlantı talebinde bulunduğunda, kabul edebilir veya reddedebilirsiniz.";
@@ -4214,9 +4316,18 @@
/* No comment provided by engineer. */
"With reduced battery usage." = "Azaltılmış pil kullanımı ile birlikte.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to file servers." = "Tor veya VPN olmadan, IP adresiniz dosya sunucularına görülebilir.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." = "Tor veya VPN olmadan, IP adresiniz bu XFTP aktarıcıları tarafından görülebilir: %@.";
/* No comment provided by engineer. */
"Wrong database passphrase" = "Yanlış veritabanı parolası";
/* snd error text */
"Wrong key or unknown connection - most likely this connection is deleted." = "Yanlış anahtar veya bilinmeyen bağlantı - büyük olasılıkla bu bağlantı silinmiştir.";
/* No comment provided by engineer. */
"Wrong passphrase!" = "Yanlış parola!";
+225
View File
@@ -389,6 +389,9 @@
/* member role */
"admin" = "адмін";
/* feature role */
"admins" = "адміністратори";
/* No comment provided by engineer. */
"Admins can block a member for all." = "Адміністратори можуть заблокувати користувача для всіх.";
@@ -416,6 +419,9 @@
/* No comment provided by engineer. */
"All group members will remain connected." = "Всі учасники групи залишаться на зв'язку.";
/* feature role */
"all members" = "всі учасники";
/* No comment provided by engineer. */
"All messages will be deleted - this cannot be undone!" = "Усі повідомлення будуть видалені - цю дію не можна скасувати!";
@@ -443,6 +449,9 @@
/* No comment provided by engineer. */
"Allow disappearing messages only if your contact allows it to you." = "Дозволяйте зникати повідомленням, тільки якщо контакт дозволяє вам це робити.";
/* No comment provided by engineer. */
"Allow downgrade" = "Дозволити пониження версії";
/* No comment provided by engineer. */
"Allow irreversible message deletion only if your contact allows it to you. (24 hours)" = "Дозволяйте безповоротне видалення повідомлень, тільки якщо контакт дозволяє вам це зробити. (24 години)";
@@ -464,6 +473,9 @@
/* No comment provided by engineer. */
"Allow to send files and media." = "Дозволяє надсилати файли та медіа.";
/* No comment provided by engineer. */
"Allow to send SimpleX links." = "Дозволити надсилати посилання SimpleX.";
/* No comment provided by engineer. */
"Allow to send voice messages." = "Дозволити надсилати голосові повідомлення.";
@@ -500,6 +512,9 @@
/* pref value */
"always" = "завжди";
/* No comment provided by engineer. */
"Always use private routing." = "Завжди використовуйте приватну маршрутизацію.";
/* No comment provided by engineer. */
"Always use relay" = "Завжди використовуйте реле";
@@ -707,6 +722,12 @@
/* No comment provided by engineer. */
"Cannot receive file" = "Не вдається отримати файл";
/* snd error text */
"Capacity exceeded - recipient did not receive previously sent messages." = "Перевищено ліміт - одержувач не отримав раніше надіслані повідомлення.";
/* No comment provided by engineer. */
"Cellular" = "Стільниковий";
/* No comment provided by engineer. */
"Change" = "Зміна";
@@ -840,6 +861,9 @@
/* No comment provided by engineer. */
"Confirm database upgrades" = "Підтвердити оновлення бази даних";
/* No comment provided by engineer. */
"Confirm files from unknown servers." = "Підтвердити файли з невідомих серверів.";
/* No comment provided by engineer. */
"Confirm network settings" = "Підтвердьте налаштування мережі";
@@ -1308,6 +1332,9 @@
/* No comment provided by engineer. */
"Desktop devices" = "Настільні пристрої";
/* snd error text */
"Destination server error: %@" = "Помилка сервера призначення: %@";
/* No comment provided by engineer. */
"Develop" = "Розробник";
@@ -1386,6 +1413,12 @@
/* No comment provided by engineer. */
"Do not send history to new members." = "Не надсилайте історію новим користувачам.";
/* No comment provided by engineer. */
"Do NOT send messages directly, even if your or destination server does not support private routing." = "НЕ надсилайте повідомлення напряму, навіть якщо ваш сервер або сервер призначення не підтримує приватну маршрутизацію.";
/* No comment provided by engineer. */
"Do NOT use private routing." = "НЕ використовуйте приватну маршрутизацію.";
/* No comment provided by engineer. */
"Do NOT use SimpleX for emergency calls." = "НЕ використовуйте SimpleX для екстрених викликів.";
@@ -1401,6 +1434,9 @@
/* No comment provided by engineer. */
"Downgrade and open chat" = "Пониження та відкритий чат";
/* chat item action */
"Download" = "Завантажити";
/* No comment provided by engineer. */
"Download failed" = "Не вдалося завантажити";
@@ -1476,6 +1512,9 @@
/* enabled status */
"enabled" = "увімкнено";
/* No comment provided by engineer. */
"Enabled for" = "Увімкнено для";
/* enabled status */
"enabled for contact" = "увімкнено для контакту";
@@ -1821,6 +1860,9 @@
/* No comment provided by engineer. */
"File: %@" = "Файл: %@";
/* No comment provided by engineer. */
"Files" = "Файли";
/* No comment provided by engineer. */
"Files & media" = "Файли та медіа";
@@ -1830,6 +1872,9 @@
/* No comment provided by engineer. */
"Files and media are prohibited in this group." = "Файли та медіа в цій групі заборонені.";
/* No comment provided by engineer. */
"Files and media not allowed" = "Файли та медіафайли заборонені";
/* No comment provided by engineer. */
"Files and media prohibited!" = "Файли та медіа заборонені!";
@@ -1869,6 +1914,27 @@
/* No comment provided by engineer. */
"For console" = "Для консолі";
/* chat item action */
"Forward" = "Пересилання";
/* No comment provided by engineer. */
"Forward and save messages" = "Пересилання та збереження повідомлень";
/* No comment provided by engineer. */
"forwarded" = "переслано";
/* No comment provided by engineer. */
"Forwarded" = "Переслано";
/* No comment provided by engineer. */
"Forwarded from" = "Переслано з";
/* snd error text */
"Forwarding server: %@\nDestination server error: %@" = "Сервер переадресації: %1$@\nПомилка сервера призначення: %2$@";
/* snd error text */
"Forwarding server: %@\nError: %@" = "Сервер переадресації: %1$@\nПомилка: %2$@";
/* No comment provided by engineer. */
"Found desktop" = "Знайдено робочий стіл";
@@ -1947,6 +2013,9 @@
/* No comment provided by engineer. */
"Group members can send files and media." = "Учасники групи можуть надсилати файли та медіа.";
/* No comment provided by engineer. */
"Group members can send SimpleX links." = "Учасники групи можуть надсилати посилання SimpleX.";
/* No comment provided by engineer. */
"Group members can send voice messages." = "Учасники групи можуть надсилати голосові повідомлення.";
@@ -2088,6 +2157,9 @@
/* No comment provided by engineer. */
"In reply to" = "У відповідь на";
/* No comment provided by engineer. */
"In-call sounds" = "Звуки вхідного дзвінка";
/* No comment provided by engineer. */
"Incognito" = "Інкогніто";
@@ -2418,6 +2490,9 @@
/* No comment provided by engineer. */
"Message delivery receipts!" = "Підтвердження доставки повідомлення!";
/* item status text */
"Message delivery warning" = "Попередження про доставку повідомлення";
/* No comment provided by engineer. */
"Message draft" = "Чернетка повідомлення";
@@ -2433,6 +2508,15 @@
/* notification */
"message received" = "повідомлення отримано";
/* No comment provided by engineer. */
"Message routing fallback" = "Запасний варіант маршрутизації повідомлень";
/* No comment provided by engineer. */
"Message routing mode" = "Режим маршрутизації повідомлень";
/* No comment provided by engineer. */
"Message source remains private." = "Джерело повідомлення залишається приватним.";
/* No comment provided by engineer. */
"Message text" = "Текст повідомлення";
@@ -2517,6 +2601,9 @@
/* No comment provided by engineer. */
"More improvements are coming soon!" = "Незабаром буде ще більше покращень!";
/* No comment provided by engineer. */
"More reliable network connection." = "Більш надійне з'єднання з мережею.";
/* item status description */
"Most likely this connection is deleted." = "Швидше за все, це з'єднання видалено.";
@@ -2535,6 +2622,15 @@
/* No comment provided by engineer. */
"Network & servers" = "Мережа та сервери";
/* No comment provided by engineer. */
"Network connection" = "Підключення до мережі";
/* snd error text */
"Network issues - message expired after many attempts to send it." = "Проблеми з мережею - термін дії повідомлення закінчився після багатьох спроб надіслати його.";
/* No comment provided by engineer. */
"Network management" = "Керування мережею";
/* No comment provided by engineer. */
"Network settings" = "Налаштування мережі";
@@ -2613,6 +2709,9 @@
/* No comment provided by engineer. */
"No history" = "Немає історії";
/* No comment provided by engineer. */
"No network connection" = "Немає підключення до мережі";
/* No comment provided by engineer. */
"No permission to record voice message" = "Немає дозволу на запис голосового повідомлення";
@@ -2759,9 +2858,15 @@
/* No comment provided by engineer. */
"Or show this code" = "Або покажіть цей код";
/* No comment provided by engineer. */
"Other" = "Інше";
/* member role */
"owner" = "власник";
/* feature role */
"owners" = "власники";
/* No comment provided by engineer. */
"Passcode" = "Пароль";
@@ -2885,15 +2990,27 @@
/* No comment provided by engineer. */
"Private filenames" = "Приватні імена файлів";
/* No comment provided by engineer. */
"Private message routing" = "Маршрутизація приватних повідомлень";
/* No comment provided by engineer. */
"Private message routing 🚀" = "Маршрутизація приватних повідомлень 🚀";
/* name of notes to self */
"Private notes" = "Приватні нотатки";
/* No comment provided by engineer. */
"Private routing" = "Приватна маршрутизація";
/* No comment provided by engineer. */
"Profile and server connections" = "З'єднання профілю та сервера";
/* No comment provided by engineer. */
"Profile image" = "Зображення профілю";
/* No comment provided by engineer. */
"Profile images" = "Зображення профілю";
/* No comment provided by engineer. */
"Profile name" = "Назва профілю";
@@ -2927,15 +3044,24 @@
/* No comment provided by engineer. */
"Prohibit sending files and media." = "Заборонити надсилання файлів і медіа.";
/* No comment provided by engineer. */
"Prohibit sending SimpleX links." = "Заборонити надсилання посилань SimpleX.";
/* No comment provided by engineer. */
"Prohibit sending voice messages." = "Заборонити надсилання голосових повідомлень.";
/* No comment provided by engineer. */
"Protect app screen" = "Захистіть екран програми";
/* No comment provided by engineer. */
"Protect IP address" = "Захист IP-адреси";
/* No comment provided by engineer. */
"Protect your chat profiles with a password!" = "Захистіть свої профілі чату паролем!";
/* No comment provided by engineer. */
"Protect your IP address from the messaging relays chosen by your contacts.\nEnable in *Network & servers* settings." = "Захистіть свою IP-адресу від ретрансляторів повідомлень, обраних вашими контактами.\nУвімкніть у налаштуваннях *Мережа та сервери*.";
/* No comment provided by engineer. */
"Protocol timeout" = "Тайм-аут протоколу";
@@ -3014,6 +3140,9 @@
/* No comment provided by engineer. */
"Recent history and improved [directory bot](simplex:/contact#/?v=1-4&smp=smp%3A%2F%2Fu2dS9sG8nMNURyZwqASV4yROM28Er0luVTx5X1CsMrU%3D%40smp4.simplex.im%2FeXSPwqTkKyDO3px4fLf1wx3MvPdjdLW3%23%2F%3Fv%3D1-2%26dh%3DMCowBQYDK2VuAyEAaiv6MkMH44L2TcYrt_CsX3ZvM11WgbMEUn0hkIKTOho%253D%26srv%3Do5vmywmrnaxalvz6wi3zicyftgio6psuvyniis6gco6bp6ekl4cqj4id.onion)." = "Нещодавня історія та покращення [directory bot](simplex:/contact#/?v=1-4&smp=smp%3A%2F%2Fu2dS9sG8nMNURyZwqASV4yROM28Er0luVTx5X1CsMrU%3D%40smp4.simplex.im%2FeXSPwqTkKyDO3px4fLf1wx3MvPdjdLW3%23%2F%3Fv%3D1-2%26dh%3DMCowBQYDK2VuAyEAaiv6MkMH44L2TcYrt_CsX3ZvM11WgbMEUn0hkIKTOho%253D%26srv%3Do5vmywmrnaxalvz6wi3zicyftgio6psuvyniis6gco6bp6ekl4cqj4id.onion).";
/* No comment provided by engineer. */
"Recipient(s) can't see who this message is from." = "Одержувач(и) не бачить, від кого це повідомлення.";
/* No comment provided by engineer. */
"Recipients see updates as you type them." = "Одержувачі бачать оновлення, коли ви їх вводите.";
@@ -3158,6 +3287,9 @@
/* No comment provided by engineer. */
"Run chat" = "Запустити чат";
/* No comment provided by engineer. */
"Safely receive files" = "Безпечне отримання файлів";
/* No comment provided by engineer. */
"Safer groups" = "Безпечніші групи";
@@ -3209,6 +3341,18 @@
/* No comment provided by engineer. */
"Save welcome message?" = "Зберегти вітальне повідомлення?";
/* No comment provided by engineer. */
"saved" = "збережено";
/* No comment provided by engineer. */
"Saved" = "Збережено";
/* No comment provided by engineer. */
"Saved from" = "Збережено з";
/* No comment provided by engineer. */
"saved from %@" = "збережено з %@";
/* message info title */
"Saved message" = "Збережене повідомлення";
@@ -3302,6 +3446,12 @@
/* No comment provided by engineer. */
"Send live message" = "Надіслати живе повідомлення";
/* No comment provided by engineer. */
"Send messages directly when IP address is protected and your or destination server does not support private routing." = "Надсилайте повідомлення напряму, якщо IP-адреса захищена, а ваш сервер або сервер призначення не підтримує приватну маршрутизацію.";
/* No comment provided by engineer. */
"Send messages directly when your or destination server does not support private routing." = "Надсилайте повідомлення напряму, якщо ваш сервер або сервер призначення не підтримує приватну маршрутизацію.";
/* No comment provided by engineer. */
"Send notifications" = "Надсилати сповіщення";
@@ -3365,6 +3515,9 @@
/* No comment provided by engineer. */
"Sent messages will be deleted after set time." = "Надіслані повідомлення будуть видалені через встановлений час.";
/* srv error text. */
"Server address is incompatible with network settings." = "Адреса сервера несумісна з налаштуваннями мережі.";
/* server test error */
"Server requires authorization to create queues, check password" = "Сервер вимагає авторизації для створення черг, перевірте пароль";
@@ -3374,6 +3527,9 @@
/* No comment provided by engineer. */
"Server test failed!" = "Тест сервера завершився невдало!";
/* srv error text */
"Server version is incompatible with network settings." = "Серверна версія несумісна з мережевими налаштуваннями.";
/* No comment provided by engineer. */
"Servers" = "Сервери";
@@ -3416,6 +3572,9 @@
/* No comment provided by engineer. */
"Settings" = "Налаштування";
/* No comment provided by engineer. */
"Shape profile images" = "Сформуйте зображення профілю";
/* chat item action */
"Share" = "Поділіться";
@@ -3437,6 +3596,9 @@
/* No comment provided by engineer. */
"Share with contacts" = "Поділіться з контактами";
/* No comment provided by engineer. */
"Show → on messages sent via private routing." = "Показувати → у повідомленнях, надісланих через приватну маршрутизацію.";
/* No comment provided by engineer. */
"Show calls in phone history" = "Показувати дзвінки в історії дзвінків";
@@ -3446,6 +3608,9 @@
/* No comment provided by engineer. */
"Show last messages" = "Показати останні повідомлення";
/* No comment provided by engineer. */
"Show message status" = "Показати статус повідомлення";
/* No comment provided by engineer. */
"Show preview" = "Показати попередній перегляд";
@@ -3476,6 +3641,12 @@
/* chat feature */
"SimpleX links" = "Посилання SimpleX";
/* No comment provided by engineer. */
"SimpleX links are prohibited in this group." = "У цій групі заборонені посилання на SimpleX.";
/* No comment provided by engineer. */
"SimpleX links not allowed" = "Посилання SimpleX заборонені";
/* No comment provided by engineer. */
"SimpleX Lock" = "SimpleX Lock";
@@ -3512,6 +3683,9 @@
/* notification title */
"Somebody" = "Хтось";
/* No comment provided by engineer. */
"Square, circle, or anything in between." = "Квадрат, коло або щось середнє між ними.";
/* chat item text */
"standard end-to-end encryption" = "стандартне наскрізне шифрування";
@@ -3644,6 +3818,9 @@
/* No comment provided by engineer. */
"The app can notify you when you receive messages or contact requests - please open settings to enable." = "Додаток може сповіщати вас, коли ви отримуєте повідомлення або запити на контакт - будь ласка, відкрийте налаштування, щоб увімкнути цю функцію.";
/* No comment provided by engineer. */
"The app will ask to confirm downloads from unknown file servers (except .onion)." = "Програма попросить підтвердити завантаження з невідомих файлових серверів (крім .onion).";
/* No comment provided by engineer. */
"The attempt to change database passphrase was not completed." = "Спроба змінити пароль до бази даних не була завершена.";
@@ -3764,6 +3941,9 @@
/* No comment provided by engineer. */
"To protect your information, turn on SimpleX Lock.\nYou will be prompted to complete authentication before this feature is enabled." = "Щоб захистити вашу інформацію, увімкніть SimpleX Lock.\nПеред увімкненням цієї функції вам буде запропоновано пройти автентифікацію.";
/* No comment provided by engineer. */
"To protect your IP address, private routing uses your SMP servers to deliver messages." = "Щоб захистити вашу IP-адресу, приватна маршрутизація використовує ваші SMP-сервери для доставки повідомлень.";
/* No comment provided by engineer. */
"To record voice message please grant permission to use Microphone." = "Щоб записати голосове повідомлення, будь ласка, надайте дозвіл на використання мікрофону.";
@@ -3848,6 +4028,12 @@
/* No comment provided by engineer. */
"Unknown error" = "Невідома помилка";
/* No comment provided by engineer. */
"unknown relays" = "невідомі реле";
/* No comment provided by engineer. */
"Unknown servers!" = "Невідомі сервери!";
/* No comment provided by engineer. */
"unknown status" = "невідомий статус";
@@ -3872,6 +4058,9 @@
/* No comment provided by engineer. */
"Unmute" = "Увімкнути звук";
/* No comment provided by engineer. */
"unprotected" = "незахищені";
/* No comment provided by engineer. */
"Unread" = "Непрочитане";
@@ -3941,6 +4130,12 @@
/* No comment provided by engineer. */
"Use only local notifications?" = "Використовувати лише локальні сповіщення?";
/* No comment provided by engineer. */
"Use private routing with unknown servers when IP address is not protected." = "Використовуйте приватну маршрутизацію з невідомими серверами, якщо IP-адреса не захищена.";
/* No comment provided by engineer. */
"Use private routing with unknown servers." = "Використовуйте приватну маршрутизацію з невідомими серверами.";
/* No comment provided by engineer. */
"Use server" = "Використовувати сервер";
@@ -4037,6 +4232,9 @@
/* No comment provided by engineer. */
"Voice messages are prohibited in this group." = "Голосові повідомлення в цій групі заборонені.";
/* No comment provided by engineer. */
"Voice messages not allowed" = "Голосові повідомлення заборонені";
/* No comment provided by engineer. */
"Voice messages prohibited!" = "Голосові повідомлення заборонені!";
@@ -4088,12 +4286,27 @@
/* No comment provided by engineer. */
"When available" = "За наявності";
/* No comment provided by engineer. */
"When connecting audio and video calls." = "При підключенні аудіо та відеодзвінків.";
/* No comment provided by engineer. */
"when IP hidden" = "коли IP приховано";
/* No comment provided by engineer. */
"When people request to connect, you can accept or reject it." = "Коли люди звертаються із запитом на підключення, ви можете прийняти або відхилити його.";
/* No comment provided by engineer. */
"When you share an incognito profile with somebody, this profile will be used for the groups they invite you to." = "Коли ви ділитеся з кимось своїм профілем інкогніто, цей профіль буде використовуватися для груп, до яких вас запрошують.";
/* No comment provided by engineer. */
"WiFi" = "WiFi";
/* No comment provided by engineer. */
"Will be enabled in direct chats!" = "Буде ввімкнено в прямих чатах!";
/* No comment provided by engineer. */
"Wired ethernet" = "Дротова мережа Ethernet";
/* No comment provided by engineer. */
"With encrypted files and media." = "З зашифрованими файлами та медіа.";
@@ -4103,9 +4316,18 @@
/* No comment provided by engineer. */
"With reduced battery usage." = "З меншим споживанням заряду акумулятора.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to file servers." = "Без Tor або VPN ваша IP-адреса буде видимою для файлових серверів.";
/* No comment provided by engineer. */
"Without Tor or VPN, your IP address will be visible to these XFTP relays: %@." = "Без Tor або VPN ваша IP-адреса буде видимою для цих XFTP-ретрансляторів: %@.";
/* No comment provided by engineer. */
"Wrong database passphrase" = "Неправильний пароль до бази даних";
/* snd error text */
"Wrong key or unknown connection - most likely this connection is deleted." = "Неправильний ключ або невідоме з'єднання - швидше за все, це з'єднання видалено.";
/* No comment provided by engineer. */
"Wrong passphrase!" = "Неправильний пароль!";
@@ -4115,6 +4337,9 @@
/* pref value */
"yes" = "так";
/* No comment provided by engineer. */
"you" = "ти";
/* No comment provided by engineer. */
"You" = "Ти";
@@ -931,6 +931,20 @@ object ChatController {
return null
}
suspend fun apiContactQueueInfo(rh: Long?, contactId: Long): Pair<RcvMsgInfo?, QueueInfo>? {
val r = sendCmd(rh, CC.APIContactQueueInfo(contactId))
if (r is CR.QueueInfoR) return Pair(r.rcvMsgInfo, r.queueInfo)
apiErrorAlert("apiContactQueueInfo", generalGetString(MR.strings.error), r)
return null
}
suspend fun apiGroupMemberQueueInfo(rh: Long?, groupId: Long, groupMemberId: Long): Pair<RcvMsgInfo?, QueueInfo>? {
val r = sendCmd(rh, CC.APIGroupMemberQueueInfo(groupId, groupMemberId))
if (r is CR.QueueInfoR) return Pair(r.rcvMsgInfo, r.queueInfo)
apiErrorAlert("apiGroupMemberQueueInfo", generalGetString(MR.strings.error), r)
return null
}
suspend fun apiSwitchContact(rh: Long?, contactId: Long): ConnectionStats? {
val r = sendCmd(rh, CC.APISwitchContact(contactId))
if (r is CR.ContactSwitchStarted) return r.connectionStats
@@ -2507,6 +2521,8 @@ sealed class CC {
class ApiSetMemberSettings(val groupId: Long, val groupMemberId: Long, val memberSettings: GroupMemberSettings): CC()
class APIContactInfo(val contactId: Long): CC()
class APIGroupMemberInfo(val groupId: Long, val groupMemberId: Long): CC()
class APIContactQueueInfo(val contactId: Long): CC()
class APIGroupMemberQueueInfo(val groupId: Long, val groupMemberId: Long): CC()
class APISwitchContact(val contactId: Long): CC()
class APISwitchGroupMember(val groupId: Long, val groupMemberId: Long): CC()
class APIAbortSwitchContact(val contactId: Long): CC()
@@ -2652,6 +2668,8 @@ sealed class CC {
is ApiSetMemberSettings -> "/_member settings #$groupId $groupMemberId ${json.encodeToString(memberSettings)}"
is APIContactInfo -> "/_info @$contactId"
is APIGroupMemberInfo -> "/_info #$groupId $groupMemberId"
is APIContactQueueInfo -> "/_queue info @$contactId"
is APIGroupMemberQueueInfo -> "/_queue info #$groupId $groupMemberId"
is APISwitchContact -> "/_switch @$contactId"
is APISwitchGroupMember -> "/_switch #$groupId $groupMemberId"
is APIAbortSwitchContact -> "/_abort switch @$contactId"
@@ -2790,6 +2808,8 @@ sealed class CC {
is ApiSetMemberSettings -> "apiSetMemberSettings"
is APIContactInfo -> "apiContactInfo"
is APIGroupMemberInfo -> "apiGroupMemberInfo"
is APIContactQueueInfo -> "apiContactQueueInfo"
is APIGroupMemberQueueInfo -> "apiGroupMemberQueueInfo"
is APISwitchContact -> "apiSwitchContact"
is APISwitchGroupMember -> "apiSwitchGroupMember"
is APIAbortSwitchContact -> "apiAbortSwitchContact"
@@ -4197,6 +4217,7 @@ sealed class CR {
@Serializable @SerialName("networkConfig") class NetworkConfig(val networkConfig: NetCfg): CR()
@Serializable @SerialName("contactInfo") class ContactInfo(val user: UserRef, val contact: Contact, val connectionStats_: ConnectionStats? = null, val customUserProfile: Profile? = null): CR()
@Serializable @SerialName("groupMemberInfo") class GroupMemberInfo(val user: UserRef, val groupInfo: GroupInfo, val member: GroupMember, val connectionStats_: ConnectionStats? = null): CR()
@Serializable @SerialName("queueInfo") class QueueInfoR(val user: UserRef, val rcvMsgInfo: RcvMsgInfo?, val queueInfo: QueueInfo): CR()
@Serializable @SerialName("contactSwitchStarted") class ContactSwitchStarted(val user: UserRef, val contact: Contact, val connectionStats: ConnectionStats): CR()
@Serializable @SerialName("groupMemberSwitchStarted") class GroupMemberSwitchStarted(val user: UserRef, val groupInfo: GroupInfo, val member: GroupMember, val connectionStats: ConnectionStats): CR()
@Serializable @SerialName("contactSwitchAborted") class ContactSwitchAborted(val user: UserRef, val contact: Contact, val connectionStats: ConnectionStats): CR()
@@ -4368,6 +4389,7 @@ sealed class CR {
is NetworkConfig -> "networkConfig"
is ContactInfo -> "contactInfo"
is GroupMemberInfo -> "groupMemberInfo"
is QueueInfoR -> "queueInfo"
is ContactSwitchStarted -> "contactSwitchStarted"
is GroupMemberSwitchStarted -> "groupMemberSwitchStarted"
is ContactSwitchAborted -> "contactSwitchAborted"
@@ -4529,6 +4551,7 @@ sealed class CR {
is NetworkConfig -> json.encodeToString(networkConfig)
is ContactInfo -> withUser(user, "contact: ${json.encodeToString(contact)}\nconnectionStats: ${json.encodeToString(connectionStats_)}")
is GroupMemberInfo -> withUser(user, "group: ${json.encodeToString(groupInfo)}\nmember: ${json.encodeToString(member)}\nconnectionStats: ${json.encodeToString(connectionStats_)}")
is QueueInfoR -> withUser(user, "rcvMsgInfo: ${json.encodeToString(rcvMsgInfo)}\nqueueInfo: ${json.encodeToString(queueInfo)}\n")
is ContactSwitchStarted -> withUser(user, "contact: ${json.encodeToString(contact)}\nconnectionStats: ${json.encodeToString(connectionStats)}")
is GroupMemberSwitchStarted -> withUser(user, "group: ${json.encodeToString(groupInfo)}\nmember: ${json.encodeToString(member)}\nconnectionStats: ${json.encodeToString(connectionStats)}")
is ContactSwitchAborted -> withUser(user, "contact: ${json.encodeToString(contact)}\nconnectionStats: ${json.encodeToString(connectionStats)}")
@@ -5786,3 +5809,52 @@ enum class UserNetworkType {
OTHER -> generalGetString(MR.strings.network_type_other)
}
}
@Serializable
data class RcvMsgInfo (
val msgId: Long,
val msgDeliveryId: Long,
val msgDeliveryStatus: String,
val agentMsgId: Long,
val agentMsgMeta: String
)
@Serializable
data class QueueInfo (
val qiSnd: Boolean,
val qiNtf: Boolean,
val qiSub: QSub? = null,
val qiSize: Int,
val qiMsg: MsgInfo? = null
)
@Serializable
data class QSub (
val qSubThread: QSubThread,
val qDelivered: String? = null
)
enum class QSubThread {
@SerialName("noSub")
NO_SUB,
@SerialName("subPending")
SUB_PENDING,
@SerialName("subThread")
SUB_THREAD,
@SerialName("prohibitSub")
PROHIBIT_SUB
}
@Serializable
data class MsgInfo (
val msgId: String,
val msgTs: Instant,
val msgType: MsgType,
)
enum class MsgType {
@SerialName("message")
MESSAGE,
@SerialName("quota")
QUOTA
}
@@ -42,6 +42,7 @@ import kotlinx.coroutines.delay
import kotlinx.coroutines.flow.*
import kotlinx.coroutines.launch
import kotlinx.datetime.Clock
import kotlinx.serialization.encodeToString
import java.io.File
@Composable
@@ -418,6 +419,19 @@ fun ChatInfoLayout(
SectionView(title = stringResource(MR.strings.section_title_for_console)) {
InfoRow(stringResource(MR.strings.info_row_local_name), chat.chatInfo.localDisplayName)
InfoRow(stringResource(MR.strings.info_row_database_id), chat.chatInfo.apiId.toString())
SectionItemView({
withBGApi {
val info = controller.apiContactQueueInfo(chat.remoteHostId, chat.chatInfo.apiId)
if (info != null) {
AlertManager.shared.showAlertMsg(
title = generalGetString(MR.strings.message_queue_info),
text = queueInfoText(info)
)
}
}
}) {
Text(stringResource(MR.strings.info_row_debug_delivery))
}
}
}
SectionBottomSpacer()
@@ -798,6 +812,12 @@ fun showSyncConnectionForceAlert(syncConnectionForce: () -> Unit) {
)
}
fun queueInfoText(info: Pair<RcvMsgInfo?, QueueInfo>): String {
val (rcvMsgInfo, qInfo) = info
val msgInfo: String = if (rcvMsgInfo != null) json.encodeToString(rcvMsgInfo) else generalGetString(MR.strings.message_queue_info_none)
return generalGetString(MR.strings.message_queue_info_server_info).format(json.encodeToString(qInfo), msgInfo)
}
@Preview
@Composable
fun PreviewChatInfoLayout() {
@@ -12,6 +12,7 @@ import androidx.compose.runtime.saveable.mapSaver
import androidx.compose.runtime.saveable.rememberSaveable
import androidx.compose.ui.*
import androidx.compose.ui.draw.drawBehind
import androidx.compose.ui.draw.drawWithCache
import androidx.compose.ui.graphics.*
import androidx.compose.ui.platform.*
import dev.icerock.moko.resources.compose.painterResource
@@ -620,7 +621,7 @@ fun ChatLayout(
.fillMaxSize()
.background(MaterialTheme.colors.background)
.then(if (wallpaperImage != null)
Modifier.drawBehind { chatViewBackground(wallpaperImage, wallpaperType, backgroundColor, tintColor) }
Modifier.drawWithCache { chatViewBackground(wallpaperImage, wallpaperType, backgroundColor, tintColor) }
else
Modifier)
.padding(contentPadding)
@@ -86,7 +86,7 @@ fun getContactsToAdd(chatModel: ChatModel, search: String): List<Contact> {
.map { it.chatInfo }
.filterIsInstance<ChatInfo.Direct>()
.map { it.contact }
.filter { c -> c.ready && c.active && c.contactId !in memberContactIds && c.chatViewName.lowercase().contains(s) }
.filter { c -> c.sendMsgEnabled && !c.nextSendGrpInv && c.contactId !in memberContactIds && c.chatViewName.lowercase().contains(s) }
.sortedBy { it.displayName.lowercase() }
.toList()
}
@@ -203,7 +203,7 @@ fun GroupChatInfoLayout(
scope.launch { listState.scrollToItem(0) }
}
val searchText = rememberSaveable(stateSaver = TextFieldValue.Saver) { mutableStateOf(TextFieldValue()) }
val filteredMembers = remember(members) { derivedStateOf { members.filter { it.chatViewName.lowercase().contains(searchText.value.text.trim()) } } }
val filteredMembers = remember(members) { derivedStateOf { members.filter { it.chatViewName.lowercase().contains(searchText.value.text.trim().lowercase()) } } }
// LALAL strange scrolling
LazyColumnWithScrollBar(
Modifier
@@ -3,6 +3,7 @@ package chat.simplex.common.views.chat.group
import InfoRow
import SectionBottomSpacer
import SectionDividerSpaced
import SectionItemView
import SectionSpacer
import SectionTextFooter
import SectionView
@@ -27,6 +28,7 @@ import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import chat.simplex.common.model.*
import chat.simplex.common.model.ChatModel.controller
import chat.simplex.common.ui.theme.*
import chat.simplex.common.views.chat.*
import chat.simplex.common.views.helpers.*
@@ -58,6 +60,7 @@ fun GroupMemberInfoView(
if (chat != null) {
val newRole = remember { mutableStateOf(member.memberRole) }
GroupMemberInfoLayout(
rhId = rhId,
groupInfo,
member,
connStats,
@@ -219,6 +222,7 @@ fun removeMemberDialog(rhId: Long?, groupInfo: GroupInfo, member: GroupMember, c
@Composable
fun GroupMemberInfoLayout(
rhId: Long?,
groupInfo: GroupInfo,
member: GroupMember,
connStats: MutableState<ConnectionStats?>,
@@ -397,6 +401,19 @@ fun GroupMemberInfoLayout(
SectionView(title = stringResource(MR.strings.section_title_for_console)) {
InfoRow(stringResource(MR.strings.info_row_local_name), member.localDisplayName)
InfoRow(stringResource(MR.strings.info_row_database_id), member.groupMemberId.toString())
SectionItemView({
withBGApi {
val info = controller.apiGroupMemberQueueInfo(rhId, groupInfo.apiId, member.groupMemberId)
if (info != null) {
AlertManager.shared.showAlertMsg(
title = generalGetString(MR.strings.message_queue_info),
text = queueInfoText(info)
)
}
}
}) {
Text(stringResource(MR.strings.info_row_debug_delivery))
}
}
}
SectionBottomSpacer()
@@ -644,6 +661,7 @@ fun blockMemberForAll(rhId: Long?, gInfo: GroupInfo, member: GroupMember, blocke
fun PreviewGroupMemberInfoLayout() {
SimpleXTheme {
GroupMemberInfoLayout(
rhId = null,
groupInfo = GroupInfo.sampleData,
member = GroupMember.sampleData,
connStats = remember { mutableStateOf(null) },
@@ -154,13 +154,7 @@ fun CIFileView(
FileProtocol.SMP -> progressIndicator()
FileProtocol.LOCAL -> {}
}
is CIFileStatus.SndComplete -> {
if ((file.forwardingAllowed() || (chatModel.connectedToRemote() && CIFile.cachedRemoteFileRequests[file.fileSource] == true))) {
fileIcon()
} else {
fileIcon(innerIcon = painterResource(MR.images.ic_check_filled))
}
}
is CIFileStatus.SndComplete -> fileIcon(innerIcon = painterResource(MR.images.ic_check_filled))
is CIFileStatus.SndCancelled -> fileIcon(innerIcon = painterResource(MR.images.ic_close))
is CIFileStatus.SndError -> fileIcon(innerIcon = painterResource(MR.images.ic_close))
is CIFileStatus.RcvInvitation ->
@@ -537,6 +537,7 @@ suspend fun exportChatArchive(
if (!m.chatDbChanged.value) {
controller.apiSaveAppSettings(AppSettings.current.prepareForExport())
}
wallpapersDir.mkdirs()
m.controller.apiExportArchive(config)
if (storagePath == null) {
deleteOldArchive(m)
@@ -592,6 +593,7 @@ private fun importArchive(
withLongRunningApi {
try {
m.controller.apiDeleteStorage()
wallpapersDir.mkdirs()
try {
val config = ArchiveConfig(archivePath, parentTempDirectory = databaseExportDir.toString())
val archiveErrors = m.controller.apiImportArchive(config)
@@ -1,12 +1,13 @@
package chat.simplex.common.views.helpers
import androidx.compose.ui.draw.CacheDrawScope
import androidx.compose.ui.draw.DrawResult
import androidx.compose.ui.geometry.Offset
import androidx.compose.ui.geometry.Size
import androidx.compose.ui.graphics.*
import androidx.compose.ui.graphics.drawscope.DrawScope
import androidx.compose.ui.graphics.drawscope.clipRect
import androidx.compose.ui.graphics.drawscope.*
import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.unit.IntOffset
import androidx.compose.ui.unit.IntSize
import androidx.compose.ui.unit.*
import chat.simplex.common.model.ChatController.appPrefs
import chat.simplex.common.platform.*
import chat.simplex.common.ui.theme.*
@@ -352,9 +353,17 @@ sealed class WallpaperType {
}
}
fun DrawScope.chatViewBackground(image: ImageBitmap, imageType: WallpaperType, background: Color, tint: Color) = clipRect {
val quality = FilterQuality.High
fun repeat(imageScale: Float) {
private fun drawToBitmap(image: ImageBitmap, imageScale: Float, tint: Color, size: Size, density: Float, layoutDirection: LayoutDirection): ImageBitmap {
val quality = if (appPlatform.isAndroid) FilterQuality.High else FilterQuality.Low
val drawScope = CanvasDrawScope()
val bitmap = ImageBitmap(size.width.toInt(), size.height.toInt())
val canvas = Canvas(bitmap)
drawScope.draw(
density = Density(density),
layoutDirection = layoutDirection,
canvas = canvas,
size = size,
) {
val scale = imageScale * density
for (h in 0..(size.height / image.height / scale).roundToInt()) {
for (w in 0..(size.width / image.width / scale).roundToInt()) {
@@ -368,50 +377,71 @@ fun DrawScope.chatViewBackground(image: ImageBitmap, imageType: WallpaperType, b
}
}
}
return bitmap
}
drawRect(background)
when (imageType) {
is WallpaperType.Preset -> repeat((imageType.scale ?: 1f) * imageType.predefinedImageScale)
is WallpaperType.Image -> when (val scaleType = imageType.scaleType ?: WallpaperScaleType.FILL) {
WallpaperScaleType.REPEAT -> repeat(imageType.scale ?: 1f)
WallpaperScaleType.FILL, WallpaperScaleType.FIT -> {
val scale = scaleType.contentScale.computeScaleFactor(Size(image.width.toFloat(), image.height.toFloat()), Size(size.width, size.height))
val scaledWidth = (image.width * scale.scaleX).roundToInt()
val scaledHeight = (image.height * scale.scaleY).roundToInt()
// Large image will cause freeze
if (image.width > 4320 || image.height > 4320) return@clipRect
fun CacheDrawScope.chatViewBackground(image: ImageBitmap, imageType: WallpaperType, background: Color, tint: Color): DrawResult {
val imageScale = if (imageType is WallpaperType.Preset) {
(imageType.scale ?: 1f) * imageType.predefinedImageScale
} else if (imageType is WallpaperType.Image && imageType.scaleType == WallpaperScaleType.REPEAT) {
imageType.scale ?: 1f
} else {
1f
}
val image = if (imageType is WallpaperType.Preset || (imageType is WallpaperType.Image && imageType.scaleType == WallpaperScaleType.REPEAT)) {
drawToBitmap(image, imageScale, tint, size, density, layoutDirection)
} else {
image
}
drawImage(image, dstOffset = IntOffset(x = ((size.width - scaledWidth) / 2).roundToInt(), y = ((size.height - scaledHeight) / 2).roundToInt()), dstSize = IntSize(scaledWidth, scaledHeight), filterQuality = quality)
if (scaleType == WallpaperScaleType.FIT) {
if (scaledWidth < size.width) {
// has black lines at left and right sides
var x = (size.width - scaledWidth) / 2
while (x > 0) {
drawImage(image, dstOffset = IntOffset(x = (x - scaledWidth).roundToInt(), y = ((size.height - scaledHeight) / 2).roundToInt()), dstSize = IntSize(scaledWidth, scaledHeight), filterQuality = quality)
x -= scaledWidth
}
x = size.width - (size.width - scaledWidth) / 2
while (x < size.width) {
drawImage(image, dstOffset = IntOffset(x = x.roundToInt(), y = ((size.height - scaledHeight) / 2).roundToInt()), dstSize = IntSize(scaledWidth, scaledHeight), filterQuality = quality)
x += scaledWidth
}
} else {
// has black lines at top and bottom sides
var y = (size.height - scaledHeight) / 2
while (y > 0) {
drawImage(image, dstOffset = IntOffset(x = ((size.width - scaledWidth) / 2).roundToInt(), y = (y - scaledHeight).roundToInt()), dstSize = IntSize(scaledWidth, scaledHeight), filterQuality = quality)
y -= scaledHeight
}
y = size.height - (size.height - scaledHeight) / 2
while (y < size.height) {
drawImage(image, dstOffset = IntOffset(x = ((size.width - scaledWidth) / 2).roundToInt(), y = y.roundToInt()), dstSize = IntSize(scaledWidth, scaledHeight), filterQuality = quality)
y += scaledHeight
return onDrawBehind {
val quality = if (appPlatform.isAndroid) FilterQuality.High else FilterQuality.Low
drawRect(background)
when (imageType) {
is WallpaperType.Preset -> drawImage(image)
is WallpaperType.Image -> when (val scaleType = imageType.scaleType ?: WallpaperScaleType.FILL) {
WallpaperScaleType.REPEAT -> drawImage(image)
WallpaperScaleType.FILL, WallpaperScaleType.FIT -> {
clipRect {
val scale = scaleType.contentScale.computeScaleFactor(Size(image.width.toFloat(), image.height.toFloat()), Size(size.width, size.height))
val scaledWidth = (image.width * scale.scaleX).roundToInt()
val scaledHeight = (image.height * scale.scaleY).roundToInt()
// Large image will cause freeze
if (image.width > 4320 || image.height > 4320) return@clipRect
drawImage(image, dstOffset = IntOffset(x = ((size.width - scaledWidth) / 2).roundToInt(), y = ((size.height - scaledHeight) / 2).roundToInt()), dstSize = IntSize(scaledWidth, scaledHeight), filterQuality = quality)
if (scaleType == WallpaperScaleType.FIT) {
if (scaledWidth < size.width) {
// has black lines at left and right sides
var x = (size.width - scaledWidth) / 2
while (x > 0) {
drawImage(image, dstOffset = IntOffset(x = (x - scaledWidth).roundToInt(), y = ((size.height - scaledHeight) / 2).roundToInt()), dstSize = IntSize(scaledWidth, scaledHeight), filterQuality = quality)
x -= scaledWidth
}
x = size.width - (size.width - scaledWidth) / 2
while (x < size.width) {
drawImage(image, dstOffset = IntOffset(x = x.roundToInt(), y = ((size.height - scaledHeight) / 2).roundToInt()), dstSize = IntSize(scaledWidth, scaledHeight), filterQuality = quality)
x += scaledWidth
}
} else {
// has black lines at top and bottom sides
var y = (size.height - scaledHeight) / 2
while (y > 0) {
drawImage(image, dstOffset = IntOffset(x = ((size.width - scaledWidth) / 2).roundToInt(), y = (y - scaledHeight).roundToInt()), dstSize = IntSize(scaledWidth, scaledHeight), filterQuality = quality)
y -= scaledHeight
}
y = size.height - (size.height - scaledHeight) / 2
while (y < size.height) {
drawImage(image, dstOffset = IntOffset(x = ((size.width - scaledWidth) / 2).roundToInt(), y = y.roundToInt()), dstSize = IntSize(scaledWidth, scaledHeight), filterQuality = quality)
y += scaledHeight
}
}
}
}
drawRect(tint)
}
drawRect(tint)
}
is WallpaperType.Empty -> {}
}
is WallpaperType.Empty -> {}
}
}
@@ -1,6 +1,5 @@
import androidx.compose.foundation.*
import androidx.compose.foundation.layout.*
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.material.*
import androidx.compose.runtime.*
import androidx.compose.ui.Alignment
@@ -13,12 +12,15 @@ import androidx.compose.ui.text.AnnotatedString
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.unit.*
import chat.simplex.common.model.NotificationsMode
import chat.simplex.common.platform.onRightClick
import chat.simplex.common.platform.windowWidth
import chat.simplex.common.ui.theme.*
import chat.simplex.common.views.helpers.*
import chat.simplex.common.views.onboarding.SelectableCard
import chat.simplex.common.views.usersettings.SettingsActionItemWithContent
import chat.simplex.res.MR
import dev.icerock.moko.resources.compose.stringResource
@Composable
fun SectionView(title: String? = null, padding: PaddingValues = PaddingValues(), content: (@Composable ColumnScope.() -> Unit)) {
@@ -76,6 +78,26 @@ fun <T> SectionViewSelectable(
SectionTextFooter(values.first { it.value == currentValue.value }.description)
}
@Composable
fun <T> SectionViewSelectableCards(
title: String?,
currentValue: State<T>,
values: List<ValueTitleDesc<T>>,
onSelected: (T) -> Unit,
) {
SectionView(title) {
Column(Modifier.padding(horizontal = DEFAULT_PADDING)) {
if (title != null) {
Text(title, Modifier.fillMaxWidth(), textAlign = TextAlign.Center)
Spacer(Modifier.height(DEFAULT_PADDING * 2f))
}
values.forEach { item ->
SelectableCard(currentValue, item.value, item.title, item.description, onSelected)
}
}
}
}
@Composable
fun SectionItemView(
click: (() -> Unit)? = null,
@@ -594,6 +594,7 @@ private fun MutableState<MigrationToState?>.importArchive(archivePath: String, n
chatInitControllerRemovingDatabases()
}
controller.apiDeleteStorage()
wallpapersDir.mkdirs()
try {
val config = ArchiveConfig(archivePath, parentTempDirectory = databaseExportDir.toString())
val archiveErrors = controller.apiImportArchive(config)
@@ -8,6 +8,7 @@ import androidx.compose.runtime.*
import androidx.compose.runtime.saveable.rememberSaveable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.text.AnnotatedString
import dev.icerock.moko.resources.compose.stringResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.text.style.TextAlign
@@ -35,9 +36,15 @@ fun SetNotificationsMode(m: ChatModel) {
Column(Modifier.padding(horizontal = DEFAULT_PADDING * 1f)) {
Text(stringResource(MR.strings.onboarding_notifications_mode_subtitle), Modifier.fillMaxWidth(), textAlign = TextAlign.Center)
Spacer(Modifier.height(DEFAULT_PADDING * 2f))
NotificationButton(currentMode, NotificationsMode.OFF, MR.strings.onboarding_notifications_mode_off, MR.strings.onboarding_notifications_mode_off_desc)
NotificationButton(currentMode, NotificationsMode.PERIODIC, MR.strings.onboarding_notifications_mode_periodic, MR.strings.onboarding_notifications_mode_periodic_desc)
NotificationButton(currentMode, NotificationsMode.SERVICE, MR.strings.onboarding_notifications_mode_service, MR.strings.onboarding_notifications_mode_service_desc)
SelectableCard(currentMode, NotificationsMode.OFF, stringResource(MR.strings.onboarding_notifications_mode_off), annotatedStringResource(MR.strings.onboarding_notifications_mode_off_desc)) {
currentMode.value = NotificationsMode.OFF
}
SelectableCard(currentMode, NotificationsMode.PERIODIC, stringResource(MR.strings.onboarding_notifications_mode_periodic), annotatedStringResource(MR.strings.onboarding_notifications_mode_periodic_desc)){
currentMode.value = NotificationsMode.PERIODIC
}
SelectableCard(currentMode, NotificationsMode.SERVICE, stringResource(MR.strings.onboarding_notifications_mode_service), annotatedStringResource(MR.strings.onboarding_notifications_mode_service_desc)){
currentMode.value = NotificationsMode.SERVICE
}
}
Spacer(Modifier.fillMaxHeight().weight(1f))
Box(Modifier.fillMaxWidth().padding(bottom = DEFAULT_PADDING_HALF), contentAlignment = Alignment.Center) {
@@ -54,22 +61,22 @@ fun SetNotificationsMode(m: ChatModel) {
expect fun SetNotificationsModeAdditions()
@Composable
private fun NotificationButton(currentMode: MutableState<NotificationsMode>, mode: NotificationsMode, title: StringResource, description: StringResource) {
fun <T> SelectableCard(currentValue: State<T>, newValue: T, title: String, description: AnnotatedString, onSelected: (T) -> Unit) {
TextButton(
onClick = { currentMode.value = mode },
border = BorderStroke(1.dp, color = if (currentMode.value == mode) MaterialTheme.colors.primary else MaterialTheme.colors.secondary.copy(alpha = 0.5f)),
onClick = { onSelected(newValue) },
border = BorderStroke(1.dp, color = if (currentValue.value == newValue) MaterialTheme.colors.primary else MaterialTheme.colors.secondary.copy(alpha = 0.5f)),
shape = RoundedCornerShape(35.dp),
) {
Column(Modifier.padding(horizontal = 10.dp).padding(top = 4.dp, bottom = 8.dp)) {
Column(Modifier.padding(horizontal = 10.dp).padding(top = 4.dp, bottom = 8.dp).fillMaxWidth()) {
Text(
stringResource(title),
title,
style = MaterialTheme.typography.h3,
fontWeight = FontWeight.Medium,
color = if (currentMode.value == mode) MaterialTheme.colors.primary else MaterialTheme.colors.secondary,
color = if (currentValue.value == newValue) MaterialTheme.colors.primary else MaterialTheme.colors.secondary,
modifier = Modifier.padding(bottom = 8.dp).align(Alignment.CenterHorizontally),
textAlign = TextAlign.Center
)
Text(annotatedStringResource(description),
Text(description,
Modifier.align(Alignment.CenterHorizontally),
fontSize = 15.sp,
color = MaterialTheme.colors.onBackground,
@@ -95,11 +95,13 @@ object AppearanceScope {
val backgroundColor = backgroundColor ?: wallpaperType?.defaultBackgroundColor(theme, MaterialTheme.colors.background)
val tintColor = tintColor ?: wallpaperType?.defaultTintColor(theme)
Column(Modifier
.drawBehind {
.drawWithCache {
if (wallpaperImage != null && wallpaperType != null && backgroundColor != null && tintColor != null) {
chatViewBackground(wallpaperImage, wallpaperType, backgroundColor, tintColor)
} else {
drawRect(themeBackgroundColor)
onDrawBehind {
drawRect(themeBackgroundColor)
}
}
}
.padding(DEFAULT_PADDING_HALF)
@@ -7,6 +7,7 @@ import SectionItemView
import SectionItemWithValue
import SectionView
import SectionViewSelectable
import SectionViewSelectableCards
import TextIconSpaced
import androidx.compose.foundation.*
import androidx.compose.foundation.layout.*
@@ -555,7 +556,7 @@ private fun SMPProxyModePicker(
Modifier.fillMaxWidth(),
) {
AppBarTitle(stringResource(MR.strings.network_smp_proxy_mode_private_routing))
SectionViewSelectable(null, smpProxyMode, values, updateSMPProxyMode)
SectionViewSelectableCards(null, smpProxyMode, values, updateSMPProxyMode)
}
}
}
@@ -592,7 +593,7 @@ private fun SMPProxyFallbackPicker(
Modifier.fillMaxWidth(),
) {
AppBarTitle(stringResource(MR.strings.network_smp_proxy_fallback_allow_downgrade))
SectionViewSelectable(null, smpProxyFallback, values, updateSMPProxyFallback)
SectionViewSelectableCards(null, smpProxyFallback, values, updateSMPProxyFallback)
}
}
}
@@ -1835,4 +1835,25 @@
<string name="chat_theme_apply_to_mode">طبّق لِ</string>
<string name="wallpaper_scale_fill">ملء</string>
<string name="wallpaper_scale">المقياس</string>
<string name="message_queue_info_none">لا شيء</string>
<string name="v5_8_private_routing">توجيه الرسائل الخاصة 🚀</string>
<string name="v5_8_chat_themes_descr">اجعل محادثاتك تبدو مختلفة!</string>
<string name="v5_8_safe_files">تلقي الملفات بأمان</string>
<string name="v5_8_persian_ui">واجهة المستخدم الفارسية</string>
<string name="chat_theme_reset_to_app_theme">إعادة التعيين إلى سمة التطبيق</string>
<string name="theme_destination_app_theme">سمة التطبيق</string>
<string name="v5_8_safe_files_descr">تأكيد الملفات من خوادم غير معروفة.</string>
<string name="chat_theme_reset_to_user_theme">إعادة التعيين إلى سمة المستخدم</string>
<string name="message_queue_info_server_info">معلومات قائمة انتظار الخادم: %1$s
\n
\nآخر رسالة تم استلامها: %2$s</string>
<string name="info_row_debug_delivery">تسليم التصحيح</string>
<string name="message_queue_info">معلومات قائمة انتظار الرسائل</string>
<string name="v5_8_private_routing_descr">احمِ عنوان IP الخاص بك من مُرحلات المُراسلة التي اختارتها جهات الاتصال الخاصة بك.
\nفعّل في إعدادات *الشبكة والخوادم*.</string>
<string name="v5_8_chat_themes">سمات دردشة جديدة</string>
<string name="error_initializing_web_view">حدث خطأ أثناء تهيئة WebView. حدّث نظامك إلى الإصدار الجديد. يُرجى التواصل بالمطورين.
\nError: %s</string>
<string name="v5_8_message_delivery">تحسين تسليم الرسائل</string>
<string name="v5_8_message_delivery_descr">مع انخفاض استخدام البطارية.</string>
</resources>
@@ -1401,6 +1401,7 @@
<string name="section_title_for_console">FOR CONSOLE</string>
<string name="info_row_local_name">Local name</string>
<string name="info_row_database_id">Database ID</string>
<string name="info_row_debug_delivery">Debug delivery</string>
<string name="info_row_updated_at">Record updated at</string>
<string name="info_row_sent_at">Sent at</string>
<string name="info_row_created_at">Created at</string>
@@ -1462,6 +1463,9 @@
<string name="info_row_connection">Connection</string>
<string name="conn_level_desc_direct">direct</string>
<string name="conn_level_desc_indirect">indirect (%1$s)</string>
<string name="message_queue_info">Message queue info</string>
<string name="message_queue_info_none">none</string>
<string name="message_queue_info_server_info">server queue info: %1$s\n\nlast received msg: %2$s</string>
<!-- GroupWelcomeView.kt -->
<string name="group_welcome_title">Welcome message</string>
@@ -825,7 +825,7 @@
<string name="network_option_protocol_timeout">Protokollzeitüberschreitung</string>
<string name="network_option_ping_interval">PING-Intervall</string>
<string name="network_option_enable_tcp_keep_alive">TCP-Keep-Alive aktivieren</string>
<string name="network_options_revert">Zurückkehren</string>
<string name="network_options_revert">Zurücksetzen</string>
<string name="network_options_save">Speichern</string>
<string name="update_network_settings_question">Netzwerkeinstellungen aktualisieren?</string>
<string name="updating_settings_will_reconnect_client_to_all_servers">Die Aktualisierung der Einstellungen wird den Client wieder mit allen Servern verbinden.</string>
@@ -1385,7 +1385,7 @@
<string name="v5_2_favourites_filter_descr">Nach ungelesenen und favorisierten Chats filtern.</string>
<string name="sending_delivery_receipts_will_be_enabled_all_profiles">Das Senden von Empfangsbestätigungen an alle Kontakte in allen sichtbaren Chat-Profilen wird aktiviert.</string>
<string name="receipts_contacts_override_disabled">Das Senden von Bestätigungen an %d Kontakte ist deaktiviert</string>
<string name="receipts_section_description">Diese Einstellungen gelten für Ihr aktuelles Profil</string>
<string name="receipts_section_description">Diese Einstellungen gelten für Ihr aktuelles Chat-Profil</string>
<string name="receipts_section_description_1">Sie können in den Kontakt- und Gruppeneinstellungen überschrieben werden.</string>
<string name="receipts_section_contacts">Kontakte</string>
<string name="receipts_contacts_title_disable">Bestätigungen deaktivieren\?</string>
@@ -1429,8 +1429,8 @@
<string name="connect_via_member_address_alert_desc">An dieses Gruppenmitglied wird eine Verbindungsanfrage gesendet.</string>
<string name="connect_via_member_address_alert_title">Direkt verbinden\?</string>
<string name="connect_via_link_incognito">Inkognito verbinden</string>
<string name="connect_use_current_profile">Das aktuelle Profil nutzen</string>
<string name="connect_use_new_incognito_profile">Ein neues Inkognito-Profil nutzen</string>
<string name="connect_use_current_profile">Aktuelles Chat-Profil nutzen</string>
<string name="connect_use_new_incognito_profile">Neues Inkognito-Profil nutzen</string>
<string name="system_restricted_background_in_call_warn"><![CDATA[Wählen Sie bitte in den App-Einstellungen <b>App-Akkuverbrauch</b> / <b>Unbeschränkt</b> , um Anrufe im Hintergrund zu führen.]]></string>
<string name="paste_the_link_you_received_to_connect_with_your_contact">Fügen Sie den erhaltenen Link ein, um sich mit Ihrem Kontakt zu verbinden…</string>
<string name="connect__a_new_random_profile_will_be_shared">Es wird ein neues Zufallsprofil geteilt.</string>
@@ -1866,22 +1866,22 @@
<string name="network_smp_proxy_mode_never">Nie</string>
<string name="network_smp_proxy_mode_unknown">Unbekannte Relais</string>
<string name="network_smp_proxy_mode_unprotected">Ungeschützt</string>
<string name="network_smp_proxy_mode_unknown_description">Privates Routing mit unbekannten Servern nutzen.</string>
<string name="network_smp_proxy_mode_never_description">Nutzen Sie kein privates Routing.</string>
<string name="network_smp_proxy_mode_unknown_description">Sie nutzen privates Routing mit unbekannten Servern.</string>
<string name="network_smp_proxy_mode_never_description">Sie nutzen KEIN privates Routing.</string>
<string name="update_network_smp_proxy_mode_question">Modus für das Nachrichten-Routing</string>
<string name="network_smp_proxy_fallback_allow">Ja</string>
<string name="network_smp_proxy_fallback_prohibit">Nein</string>
<string name="network_smp_proxy_fallback_allow_protected">Wenn die IP-Adresse versteckt ist</string>
<string name="update_network_smp_proxy_fallback_question">Fallback für das Nachrichten-Routing</string>
<string name="private_routing_show_message_status">Nachrichtenstatus anzeigen</string>
<string name="network_smp_proxy_fallback_allow_downgrade">Herunterstufung erlauben</string>
<string name="network_smp_proxy_mode_always_description">Immer privates Routing nutzen.</string>
<string name="network_smp_proxy_fallback_prohibit_description">Senden Sie keine direkten Nachrichten, selbst wenn Ihr oder der Zielserver kein privates Routing unterstützt.</string>
<string name="network_smp_proxy_fallback_allow_downgrade">Herabstufung erlauben</string>
<string name="network_smp_proxy_mode_always_description">Sie nutzen immer privates Routing.</string>
<string name="network_smp_proxy_fallback_prohibit_description">Nachrichten werden nicht direkt versendet, selbst wenn Ihr oder der Zielserver kein privates Routing unterstützt.</string>
<string name="settings_section_title_private_message_routing">PRIVATES NACHRICHTEN-ROUTING</string>
<string name="network_smp_proxy_fallback_allow_protected_description">Nachrichten direkt versenden, wenn die IP-Adresse geschützt ist und Ihr oder der Zielserver kein privates Routing unterstützt.</string>
<string name="network_smp_proxy_fallback_allow_description">Nachrichten direkt versenden, wenn Ihr oder der Zielserver kein privates Routing unterstützt.</string>
<string name="private_routing_explanation">Für die Auslieferung Ihrer Nachrichten wird privates Routing Ihrer SMP-Server genutzt, um Ihre IP-Adresse zu schützen.</string>
<string name="network_smp_proxy_mode_unprotected_description">Privates Routing mit unbekannten Servern nutzen, wenn die IP-Adresse nicht geschützt ist.</string>
<string name="network_smp_proxy_fallback_allow_protected_description">Nachrichten werden direkt versendet, wenn die IP-Adresse geschützt ist, und Ihr oder der Zielserver kein privates Routing unterstützt.</string>
<string name="network_smp_proxy_fallback_allow_description">Nachrichten werden direkt versendet, wenn Ihr oder der Zielserver kein privates Routing unterstützt.</string>
<string name="private_routing_explanation">Zum Schutz Ihrer IP-Adresse, wird für die Nachrichten-Auslieferung privates Routing über Ihre konfigurierten SMP-Server genutzt.</string>
<string name="network_smp_proxy_mode_unprotected_description">Sie nutzen privates Routing mit unbekannten Servern, wenn Ihre IP-Adresse nicht geschützt ist.</string>
<string name="protect_ip_address">IP-Adresse schützen</string>
<string name="settings_section_title_files">DATEIEN</string>
<string name="app_will_ask_to_confirm_unknown_file_servers">Die App wird bei unbekannten Datei-Servern nach einer Download-Bestätigung fragen (außer bei .onion oder wenn ein SOCKS-Proxy aktiviert ist).</string>
@@ -1918,4 +1918,25 @@
<string name="wallpaper_preview_hello_alice">Guten Nachmittag!</string>
<string name="wallpaper_preview_hello_bob">Guten Morgen!</string>
<string name="dark_mode_colors">Farben für die dunkle Variante</string>
<string name="theme_destination_app_theme">App-Design</string>
<string name="v5_8_persian_ui">Persische Bedienoberfläche</string>
<string name="chat_theme_reset_to_user_theme">Auf das Benutzer-spezifische Design zurücksetzen</string>
<string name="error_initializing_web_view">Fehler bei der Initialisierung von Webview. Aktualisieren Sie Ihr System auf die neue Version. Bitte kontaktieren Sie die Entwickler.
\nFehler: %s</string>
<string name="chat_theme_reset_to_app_theme">Auf das App-Design zurücksetzen</string>
<string name="v5_8_safe_files_descr">Dateien von unbekannten Servern bestätigen.</string>
<string name="v5_8_message_delivery">Verbesserte Zustellung von Nachrichten</string>
<string name="v5_8_chat_themes_descr">Gestalten Sie Ihre Chats unterschiedlich!</string>
<string name="v5_8_chat_themes">Neue Chat-Designs</string>
<string name="v5_8_private_routing">Privates Nachrichten-Routing 🚀</string>
<string name="v5_8_private_routing_descr">Schützen Sie Ihre IP-Adresse vor den Nachrichten-Relais , die Ihr Kontakt ausgewählt hat.
\nAktivieren Sie es in den *Netzwerk &amp; Server* Einstellungen.</string>
<string name="v5_8_safe_files">Dateien sicher empfangen</string>
<string name="v5_8_message_delivery_descr">Mit reduziertem Akkuverbrauch.</string>
<string name="message_queue_info_none">Keine Information</string>
<string name="info_row_debug_delivery">Debugging-Zustellung</string>
<string name="message_queue_info">Nachrichten-Warteschlangen-Information</string>
<string name="message_queue_info_server_info">Server-Warteschlangen-Information: %1$s
\n
\nZuletzt empfangene Nachricht: %2$s</string>
</resources>
@@ -964,7 +964,7 @@
<string name="save_profile_password">Guardar contraseña de perfil</string>
<string name="password_to_show">Contraseña para hacerlo visible</string>
<string name="error_saving_user_password">Error al guardar contraseña de usuario</string>
<string name="relay_server_if_necessary">El retransmisor sólo se usa en caso de necesidad. Un tercero podría ver tu IP.</string>
<string name="relay_server_if_necessary">El servidor de retransmisión sólo se usa en caso de necesidad. Un tercero podría ver tu IP.</string>
<string name="relay_server_protects_ip">El servidor de retransmisión protege tu IP pero puede ver la duración de la llamada.</string>
<string name="enter_password_to_show">Introduce la contraseña</string>
<string name="user_hide">Ocultar</string>
@@ -1769,7 +1769,7 @@
<string name="settings_section_title_profile_images">Forma de los perfiles</string>
<string name="v5_7_shape_profile_images">Dar forma a las imágenes de perfil</string>
<string name="v5_7_shape_profile_images_descr">Cuadrada, circular o cualquier forma intermedia.</string>
<string name="snd_error_quota">Capacidad excedida - el destinatario no ha recibido el mensaje previo.</string>
<string name="snd_error_quota">Capacidad excedida - el destinatario no ha recibido los mensajes previos.</string>
<string name="snd_error_relay">Error del servidor de destino: %1$s</string>
<string name="ci_status_other_error">Error: %1$s</string>
<string name="snd_error_proxy_relay">Servidor de reenvío: %1$s
@@ -1784,13 +1784,13 @@
<string name="update_network_smp_proxy_fallback_question">Enrutamiento de mensajes alternativo</string>
<string name="update_network_smp_proxy_mode_question">Modo de enrutamiento de mensajes</string>
<string name="network_smp_proxy_fallback_prohibit">No</string>
<string name="private_routing_show_message_status">Mostrar estado del mensaje</string>
<string name="private_routing_show_message_status">Estado del mensaje</string>
<string name="network_smp_proxy_mode_unprotected_description">Usar enrutamiento privado con servidores desconocidos cuando la dirección IP no está protegida.</string>
<string name="network_smp_proxy_fallback_allow_protected">Con IP oculta</string>
<string name="network_smp_proxy_fallback_allow">Si</string>
<string name="network_smp_proxy_fallback_allow_description">Enviar los mensajes directamente cuando tu servidor o el de destino no soporten enrutamiento privado</string>
<string name="private_routing_explanation">Para proteger tu dirección IP, el enrutamiento privado usa tu servidor SMP para enviar mensajes.</string>
<string name="network_smp_proxy_fallback_prohibit_description">NO enviar mensajes directos incluso si tu servidor o el de destino no soportan enrutamiento privado.</string>
<string name="network_smp_proxy_fallback_allow_description">Enviar mensajes directamente cuando tu servidor o el de destino no admitan enrutamiento privado.</string>
<string name="private_routing_explanation">Para proteger tu dirección IP, el enrutamiento privado usa tus servidores SMP para enviar mensajes.</string>
<string name="network_smp_proxy_fallback_prohibit_description">NO enviar mensajes directamente incluso si tu servidor o el de destino no soportan enrutamiento privado.</string>
<string name="network_smp_proxy_mode_always">Siempre</string>
<string name="network_smp_proxy_fallback_allow_downgrade">Permitir versión anterior</string>
<string name="network_smp_proxy_mode_always_description">Usar siempre enrutamiento privado.</string>
@@ -1801,8 +1801,8 @@
<string name="network_smp_proxy_mode_unprotected">Desprotegido</string>
<string name="snd_error_auth">Clave incorrecta o conexión desconocida - probablemente esta conexión fue eliminada</string>
<string name="network_smp_proxy_mode_unknown_description">Usar enrutamiento privado con servidores desconocidos.</string>
<string name="network_smp_proxy_fallback_allow_protected_description">Enviar los mensajes directamente cuando tu dirección IP está protegida y tu servidor o el de destino no soporten enrutamiento privado.</string>
<string name="file_not_approved_title">Servidores desconocidos!</string>
<string name="network_smp_proxy_fallback_allow_protected_description">Enviar mensajes directamente cuando tu dirección IP está protegida y tu servidor o el de destino no admitan enrutamiento privado.</string>
<string name="file_not_approved_title">¡Servidores desconocidos!</string>
<string name="file_not_approved_descr">Sin Tor o VPN, tu dirección IP será visible para estos relés XFTP:
\n%1$s.</string>
<string name="protect_ip_address">Proteger dirección IP</string>
@@ -1838,4 +1838,25 @@
<string name="settings_section_title_user_theme">Tema del perfil</string>
<string name="chat_list_always_visible">Listado del chat en ventana nueva</string>
<string name="color_wallpaper_tint">Color imagen de fondo</string>
<string name="message_queue_info_server_info">información cola del servidor: %1$s
\n
\núltimo mensaje recibido: %2$s</string>
<string name="chat_theme_reset_to_app_theme">Restablecer al tema de la app</string>
<string name="v5_8_private_routing">Enrutamiento privado de mensajes 🚀</string>
<string name="v5_8_safe_files">Recibe archivos de forma segura</string>
<string name="v5_8_message_delivery">Mejora del envío de mensajes</string>
<string name="v5_8_message_delivery_descr">Con uso reducido de la batería.</string>
<string name="theme_destination_app_theme">Tema de la app</string>
<string name="v5_8_safe_files_descr">Confirma archivos de servidores desconocidos.</string>
<string name="info_row_debug_delivery">Entrega de debug</string>
<string name="v5_8_chat_themes_descr">¡Cambia el aspecto de tus chats!</string>
<string name="v5_8_chat_themes">Nuevos temas de chat</string>
<string name="message_queue_info">Información cola de mensajes</string>
<string name="message_queue_info_none">ninguno</string>
<string name="v5_8_private_routing_descr">Protege tu dirección IP de los servidores de retransmisión elegidos por tus contactos.
\nActívalo en ajustes de *Servidores y Redes*.</string>
<string name="chat_theme_reset_to_user_theme">Restablecer al tema del usuario</string>
<string name="error_initializing_web_view">Error al inicializar WebView. Actualiza tu sistema a la última versión. Por favor, ponte en contacto con los desarrolladores.
\nError: %s</string>
<string name="v5_8_persian_ui">Interfaz en persa</string>
</resources>
@@ -613,7 +613,7 @@
<string name="disable_onion_hosts_when_not_supported"><![CDATA[<i>استفاده از میزبان‌های onion.</i> را روی «خیر» تنظیم کنید اگر پروکسی SOCKS از آنها پشتیبانی نمی‌کند.]]></string>
<string name="customize_theme_title">سفارشی کردن تم</string>
<string name="app_version_title">نسخه برنامه</string>
<string name="theme_colors_section_title">رنگ‌های تم</string>
<string name="theme_colors_section_title">رنگ‌های رابط کاربری</string>
<string name="core_version">نسخه هسته: v%s</string>
<string name="core_simplexmq_version">simplexmq: v%s (%2s)</string>
<string name="shutdown_alert_desc">اعلان‌ها از کار خواهند افتاد تا زمانی که برنامه را دوباره راه‌اندازی کنید</string>
@@ -1803,4 +1803,54 @@
<string name="without_tor_or_vpn_ip_address_will_be_visible_to_file_servers">بدون تور یا VPN، نشانی IP شما برای سرورهای پرونده قابل رویت خواهد بود.</string>
<string name="file_not_approved_descr">بدون تور یا VPN، نشانی IP شما برای این واسطه‌های XFTP قابل رویت خواهد بود:
\n%1$s.</string>
<string name="message_queue_info_none">هیچ</string>
<string name="v5_8_message_delivery">تحویل پیام بهبود یافته</string>
<string name="v5_8_persian_ui">رابط کاربری فارسی</string>
<string name="v5_8_message_delivery_descr">با استفاده باتری کاهش یافته.</string>
<string name="info_row_debug_delivery">اشکال‌زدایی تحویل</string>
<string name="message_queue_info">اطلاعات صف پیام</string>
<string name="theme_destination_app_theme">تم برنامه</string>
<string name="v5_8_safe_files_descr">تایید پرونده‌ها از سرورهای ناشناخته.</string>
<string name="message_queue_info_server_info">اطلاعات صف سرور: %1$s
\n
\nآخرین پیام دریافتی: %2$s</string>
<string name="chat_list_always_visible">نمایش فهرست گپ در پنجره جدید</string>
<string name="chat_theme_apply_to_dark_mode">حالت تاریک</string>
<string name="theme_black">سیاه</string>
<string name="color_mode">حالت رنگ</string>
<string name="color_mode_dark">تاریک</string>
<string name="dark_mode_colors">رنگ‌های حالت تاریک</string>
<string name="color_mode_light">روشن</string>
<string name="reset_single_color">بازنشاندن رنگ</string>
<string name="color_mode_system">سیستم</string>
<string name="error_initializing_web_view">خطا در مقداردهی اولیه WebView. سیستم خود را به نسخه جدید به روز کنید. لطفا با توسعه‌دهنگان تماس بگیرید.
\nخطا: 9%s</string>
<string name="settings_section_title_chat_colors">رنگ‌های گپ</string>
<string name="settings_section_title_chat_theme">تم گپ</string>
<string name="settings_section_title_user_theme">تم نمایه</string>
<string name="color_wallpaper_background">پس‌زمینه کاغذدیواری</string>
<string name="color_primary_variant2">ابتدایی اضافی ۲</string>
<string name="wallpaper_advanced_settings">تنظیمات پیشرفته</string>
<string name="wallpaper_scale_fill">پر کردن</string>
<string name="wallpaper_scale_fit">گنجاندن</string>
<string name="wallpaper_preview_hello_alice">عصر به خیر!</string>
<string name="wallpaper_preview_hello_bob">صبح به خیر!</string>
<string name="color_received_quote">پاسخ دریافتی</string>
<string name="theme_remove_image">حذف تصویر</string>
<string name="wallpaper_scale_repeat">تکرار</string>
<string name="wallpaper_scale">مقیاس</string>
<string name="color_sent_quote">پاسخ ارسالی</string>
<string name="color_wallpaper_tint">ابتدایی کاغذدیواری</string>
<string name="chat_theme_set_default_theme">تعیین تم پیش‌فرض</string>
<string name="chat_theme_reset_to_app_theme">بازنشاندن به تم برنامه</string>
<string name="chat_theme_reset_to_user_theme">بازنشاندن به تم کاربر</string>
<string name="chat_theme_apply_to_all_modes">تمام حالت‌های رنگ</string>
<string name="chat_theme_apply_to_mode">اعمال بر</string>
<string name="chat_theme_apply_to_light_mode">حالت روشن</string>
<string name="v5_8_private_routing">مسیریابی پیام خصوصی 🚀</string>
<string name="v5_8_chat_themes_descr">ظاهر گپ‌های خود را متمایز کنید!</string>
<string name="v5_8_chat_themes">تم‌های جدید گپ</string>
<string name="v5_8_private_routing_descr">از نشانی IP خود در برابر واسطه‌های پیام‌رسانی انتخاب شده توسط مخاطبانتان محافظت کنید.
\nدر تنظیمات «شبکه و سرورها» فعال کنید.</string>
<string name="v5_8_safe_files">دریافت امن پرونده‌ها</string>
</resources>
@@ -1120,7 +1120,7 @@
<string name="you_wont_lose_your_contacts_if_delete_address">Vous ne perdrez pas vos contacts si vous supprimez votre adresse ultérieurement.</string>
<string name="simplex_address">Adresse SimpleX</string>
<string name="you_can_accept_or_reject_connection">Vous pouvez accepter ou refuser les demandes de contacts.</string>
<string name="theme_colors_section_title">COULEURS DU THÈME</string>
<string name="theme_colors_section_title">COULEURS DE L\'INTERFACE</string>
<string name="your_contacts_will_remain_connected">Vos contacts resteront connectés.</string>
<string name="share_address_with_contacts_question">Partager l\'adresse avec vos contacts \?</string>
<string name="share_with_contacts">Partager avec vos contacts</string>
@@ -1808,4 +1808,54 @@
<string name="network_smp_proxy_mode_unknown_description">Utiliser le routage privé avec des serveurs inconnus.</string>
<string name="file_not_approved_descr">Sans Tor ou un VPN, votre adresse IP sera visible par ces relais XFTP:
\n%1$s.</string>
<string name="color_primary_variant2">Accentuation supplémentaire 2</string>
<string name="wallpaper_advanced_settings">Paramètres avancés</string>
<string name="theme_black">Noir</string>
<string name="chat_theme_apply_to_mode">Appliquer à</string>
<string name="info_row_debug_delivery">Debug de la distribution</string>
<string name="wallpaper_scale_fill">Remplir</string>
<string name="wallpaper_preview_hello_bob">Bonjour Alice!</string>
<string name="v5_8_message_delivery">Amélioration de la transmission des messages</string>
<string name="v5_8_chat_themes_descr">Donnez à vos discussions un style différent!</string>
<string name="message_queue_info">Info sur la file des messages</string>
<string name="v5_8_chat_themes">Nouveaux thèmes de discussion</string>
<string name="message_queue_info_none">aucun</string>
<string name="v5_8_private_routing">Routage privé des messages 🚀</string>
<string name="v5_8_private_routing_descr">Protégez votre adresse IP des relais de messagerie choisis par vos contacts.
\nActivez-le dans les paramètres *Réseau et serveurs*.</string>
<string name="chat_theme_reset_to_user_theme">Réinitialiser au thème de l\'utilisateur</string>
<string name="chat_list_always_visible">Afficher la liste des chats dans une nouvelle fenêtre</string>
<string name="color_wallpaper_tint">Teinte du fond d\'écran</string>
<string name="color_wallpaper_background">Fond d\'écran</string>
<string name="message_queue_info_server_info">info sur la file du serveur: %1$s
\n
\ndernier message reçu: %2$s</string>
<string name="theme_destination_app_theme">Thème de l\'app</string>
<string name="color_mode">Mode de couleur</string>
<string name="color_mode_dark">Sombre</string>
<string name="dark_mode_colors">Couleurs du mode sombre</string>
<string name="wallpaper_preview_hello_alice">Salut Bob!</string>
<string name="color_received_quote">Réponse reçue</string>
<string name="theme_remove_image">Retirer l\'image</string>
<string name="reset_single_color">Réinitialiser la couleur</string>
<string name="color_sent_quote">Réponse envoyée</string>
<string name="wallpaper_scale_repeat">Répéter</string>
<string name="wallpaper_scale">Dimension</string>
<string name="chat_theme_apply_to_all_modes">Tous les modes de couleur</string>
<string name="chat_theme_apply_to_dark_mode">Mode sombre</string>
<string name="wallpaper_scale_fit">Adapter</string>
<string name="chat_theme_apply_to_light_mode">Mode clair</string>
<string name="chat_theme_reset_to_app_theme">Réinitialiser au thème de l\'app</string>
<string name="chat_theme_set_default_theme">Définir le thème par défaut</string>
<string name="v5_8_safe_files_descr">Confirmer les fichiers provenant de serveurs inconnus.</string>
<string name="v5_8_persian_ui">UI en persan</string>
<string name="v5_8_safe_files">Réception de fichiers en toute sécurité</string>
<string name="v5_8_message_delivery_descr">Consommation réduite de la batterie.</string>
<string name="settings_section_title_chat_colors">Couleurs de la discussion</string>
<string name="settings_section_title_chat_theme">Thème de la discussion</string>
<string name="settings_section_title_user_theme">Thème de profil</string>
<string name="color_mode_light">Clair</string>
<string name="color_mode_system">Système</string>
<string name="error_initializing_web_view">Erreur d\'initialisation de WebView. Mettez votre système à jour avec la nouvelle version. Veuillez contacter les développeurs.
\nErreur: %s</string>
</resources>
@@ -348,9 +348,9 @@
<string name="delete_message__question">Üzenet törlése?</string>
<string name="delete_pending_connection__question">Függő kapcsolatfelvételi kérések törlése?</string>
<string name="database_encrypted">Adatbázis titkosítva!</string>
<string name="clear_chat_question">Üzenetek törlése?</string>
<string name="clear_chat_question">Üzenetek kiürítése?</string>
<string name="database_downgrade">Visszatérés a korábbi adatbázis verzióra</string>
<string name="clear_chat_button">Üzenetek törlése</string>
<string name="clear_chat_button">Üzenetek kiürítése</string>
<string name="database_passphrase_will_be_updated">Adatbázis titkosítási jelmondat frissítve lesz.</string>
<string name="multicast_connect_automatically">Kapcsolódás automatikusan</string>
<string name="database_error">Adatbázis hiba</string>
@@ -813,7 +813,7 @@
<string name="only_group_owners_can_change_prefs">Csak a csoporttulajdonosok módosíthatják a csoportbeállításokat.</string>
<string name="no_history">Nincsenek előzmények</string>
<string name="invalid_QR_code">Érvénytelen QR-kód</string>
<string name="mark_read">Olvasottként jelölés</string>
<string name="mark_read">Olvasottnak jelölés</string>
<string name="live">ÉLŐ</string>
<string name="mark_unread">Olvasatlannak jelölés</string>
<string name="icon_descr_more_button">Több</string>
@@ -1360,7 +1360,7 @@
<string name="connect_plan_you_are_already_connecting_to_vName"><![CDATA[A kapcsolódás már folyamatban van ehhez: <b>%1$s</b>.]]></string>
<string name="unhide_profile">Profil felfedése</string>
<string name="this_link_is_not_a_valid_connection_link">Ez a hivatkozás nem érvényes kapcsolati hivatkozás!</string>
<string name="to_verify_compare">A végpontok közötti titkosítás ellenőrzéséhez hasonlítsa össze (vagy szkennelje be) az ismerőse eszközén lévő kódot.</string>
<string name="to_verify_compare">A végpontok közötti titkosítás ellenőrzéséhez hasonlítsa össze (vagy olvassa be a QR-kódot) az ismerőse eszközén lévő kóddal.</string>
<string name="you_must_use_the_most_recent_version_of_database">A csevegési adatbázis legfrissebb verzióját CSAK egy eszközön kell használnia, ellenkező esetben előfordulhat, hogy az üzeneteket nem fogja megkapni valamennyi ismerősétől.</string>
<string name="messages_section_description">Ez a beállítás a jelenlegi csevegési profilban lévő üzenetekre érvényes</string>
<string name="you_are_invited_to_group_join_to_connect_with_group_members">Meghívást kapott a csoportba. Csatlakozzon, hogy kapcsolatba léphessen a csoport tagjaival.</string>
@@ -1597,7 +1597,7 @@
<string name="note_folder_local_display_name">Privát jegyzetek</string>
<string name="error_deleting_note_folder">Hiba a privát jegyzetek törlésekor</string>
<string name="error_creating_message">Hiba az üzenet létrehozásakor</string>
<string name="clear_note_folder_question">Privát jegyzetek törlése?</string>
<string name="clear_note_folder_question">Privát jegyzetek kiürítése?</string>
<string name="info_row_created_at">Létrehozva ekkor:</string>
<string name="saved_message_title">Mentett üzenet</string>
<string name="share_text_created_at">Megosztva ekkor: %s</string>
@@ -1679,7 +1679,7 @@
<string name="migrate_from_device_start_chat">Csevegés indítása</string>
<string name="migrate_from_device_you_must_not_start_database_on_two_device"><![CDATA[<b>Nem szabad</b> ugyanazt az adatbázist használni egyszerre két eszközön.]]></string>
<string name="migrate_from_device_confirm_you_remember_passphrase">Erősítse meg, hogy emlékszik az adatbázis jelmondatára az átköltöztetéshez.</string>
<string name="migrate_from_device_choose_migrate_from_another_device"><![CDATA[Válassza az <i>Átköltöztetés egy másik eszközről</i> opciót az új eszközön és szkennelje be a QR-kódot.]]></string>
<string name="migrate_from_device_choose_migrate_from_another_device"><![CDATA[Válassza az <i>Átköltöztetés egy másik eszközről</i> opciót az új eszközön és olvassa be a QR-kódot.]]></string>
<string name="migrate_from_device_finalize_migration">Átköltöztetés véglegesítése</string>
<string name="migrate_to_device_finalize_migration">Átköltöztetés véglegesítése egy másik eszközön.</string>
<string name="migrate_to_device_database_init">Letöltés előkészítése</string>
@@ -1707,8 +1707,8 @@
<string name="e2ee_info_no_pq_short">Ez a csevegés végpontok közötti titkosítással védett.</string>
<string name="auth_open_migration_to_another_device">Átköltöztetési párbeszédablak megnyitása</string>
<string name="e2ee_info_pq_short">Ez a csevegés végpontok közötti kvantumrezisztens tikosítással védett.</string>
<string name="e2ee_info_no_pq"><![CDATA[Az üzeneteket, fájlokat és hívásokat <b>végpontok közötti titkosítással</b> és sérülés utáni titkosságvédelemmel, visszautasítással és sérülés utáni helyreállítással védi.]]></string>
<string name="e2ee_info_pq"><![CDATA[Az üzeneteket, fájlokat és hívásokat <b>végpontok közötti kvantumrezisztens titkosítással</b> és sérülés utáni titkosságvédelemmel, visszautasítással és sérülés utáni helyreállítással védi.]]></string>
<string name="e2ee_info_no_pq"><![CDATA[Az üzeneteket, fájlokat és hívásokat <b>végpontok közötti titkosítással</b>, sérülés utáni titkosság-védelemmel és -helyreállítással, továbbá visszautasítással védi.]]></string>
<string name="e2ee_info_pq"><![CDATA[Az üzeneteket, fájlokat és hívásokat <b>végpontok közötti kvantumrezisztens titkosítással</b>, sérülés utáni titkosság-védelemmel és -helyreállítással, továbbá visszautasítással védi.]]></string>
<string name="error_showing_desktop_notification">Hiba az értesítés megjelenítésekor, lépjen kapcsolatba a fejlesztőkkel.</string>
<string name="permissions_find_in_settings_and_grant">Keresse meg ezt az engedélyt az Android beállításaiban, és adja meg kézzel.</string>
<string name="permissions_grant_in_settings">Engedélyezés a beállításokban</string>
@@ -1832,4 +1832,24 @@
<string name="color_wallpaper_tint">Háttérkép kiemelés</string>
<string name="color_wallpaper_background">Háttérkép háttérszíne</string>
<string name="color_primary_variant2">További kiemelés 2</string>
<string name="theme_destination_app_theme">Alkalmazás téma</string>
<string name="v5_8_persian_ui">Perzsa kezelőfelület</string>
<string name="v5_8_private_routing_descr">Védje IP-címét az ismerősei által kiválasztott üzenetküldő átjátszókkal szemben.
\nEngedélyezze a beállításokban a *Hálózat és kiszolgálók* menüpontban.</string>
<string name="v5_8_safe_files_descr">Ismeretlen kiszolgálókról származó fájlok jóváhagyása.</string>
<string name="v5_8_message_delivery">Javított üzenetkézbesítés</string>
<string name="chat_theme_reset_to_app_theme">Alkalmazás témájának visszaállítása</string>
<string name="v5_8_chat_themes_descr">Tegye egyedivé a csevegéseit!</string>
<string name="v5_8_chat_themes">Új csevegési témák</string>
<string name="v5_8_private_routing">Privát üzenet útválasztás 🚀</string>
<string name="v5_8_safe_files">Fájlok biztonságos fogadása</string>
<string name="v5_8_message_delivery_descr">Csökkentett akkumulátor-használattal.</string>
<string name="error_initializing_web_view">Hiba a WebView inicializálásában. Frissítse rendszerét az új verzióra. Kérjük, lépjen kapcsolatba a fejlesztőkkel.
\nHiba: %s</string>
<string name="chat_theme_reset_to_user_theme">Felhasználó által létrehozott téma visszaállítása</string>
<string name="message_queue_info">Üzenet várakoztatási információ</string>
<string name="message_queue_info_none">nincs</string>
<string name="info_row_debug_delivery">Hibakeresés kézbesítés</string>
<string name="message_queue_info_server_info">Kiszolgáló várakoztatási infó: %1$s
\nUtoljára kézbesített üzenet: %2$s</string>
</resources>
@@ -1837,4 +1837,25 @@
<string name="wallpaper_preview_hello_alice">Buon pomeriggio!</string>
<string name="wallpaper_preview_hello_bob">Buongiorno!</string>
<string name="color_wallpaper_background">Retro dello sfondo</string>
<string name="v5_8_private_routing">Instradamento privato dei messaggi 🚀</string>
<string name="v5_8_private_routing_descr">Proteggi il tuo indirizzo IP dai relay di messaggistica scelti dai tuoi contatti.
\nAttivalo nelle impostazioni *Rete e server*.</string>
<string name="error_initializing_web_view">Errore di inizializzazione di WebView. Aggiorna il sistema ad una nuova versione. Contatta gli sviluppatori.
\nErrore: %s</string>
<string name="theme_destination_app_theme">Tema dell\'app</string>
<string name="chat_theme_reset_to_app_theme">Ripristina al tema dell\'app</string>
<string name="chat_theme_reset_to_user_theme">Ripristina al tema dell\'utente</string>
<string name="v5_8_safe_files_descr">Conferma i file da server sconosciuti.</string>
<string name="v5_8_message_delivery">Consegna dei messaggi migliorata</string>
<string name="v5_8_chat_themes_descr">Cambia l\'aspetto delle tue chat!</string>
<string name="v5_8_chat_themes">Nuovi temi delle chat</string>
<string name="v5_8_persian_ui">Interfaccia in persiano</string>
<string name="v5_8_safe_files">Ricevi i file in sicurezza</string>
<string name="v5_8_message_delivery_descr">Con consumo di batteria ridotto.</string>
<string name="message_queue_info">Info coda messaggi</string>
<string name="message_queue_info_none">nessuna</string>
<string name="message_queue_info_server_info">info coda server: %1$s
\n
\nultimo msg ricevuto: %2$s</string>
<string name="info_row_debug_delivery">Debug della consegna</string>
</resources>
@@ -1778,4 +1778,22 @@
<string name="network_smp_proxy_mode_always_description">常時プライベートルーティングを使用</string>
<string name="settings_section_title_private_message_routing">プライベートメッセージルーティング</string>
<string name="private_routing_show_message_status">メッセージステータスを表示</string>
<string name="color_mode_system">システム</string>
<string name="theme_black">ブラック</string>
<string name="color_mode">色設定</string>
<string name="color_mode_dark">ダーク</string>
<string name="dark_mode_colors">ダークモードカラー</string>
<string name="color_mode_light">ライト</string>
<string name="theme_destination_app_theme">アプリのテーマ</string>
<string name="chat_theme_apply_to_dark_mode">ダークモード</string>
<string name="chat_theme_apply_to_light_mode">ライトモード</string>
<string name="chat_theme_apply_to_mode">適用先</string>
<string name="color_primary_variant2">追加のアクセント2</string>
<string name="wallpaper_advanced_settings">高度な設定</string>
<string name="wallpaper_preview_hello_alice">こんにちは!</string>
<string name="wallpaper_preview_hello_bob">おはよう!</string>
<string name="color_wallpaper_tint">壁紙のアクセント</string>
<string name="color_wallpaper_background">壁紙の背景</string>
<string name="settings_section_title_chat_colors">チャットカラー</string>
<string name="settings_section_title_chat_theme">チャットテーマ</string>
</resources>
@@ -1164,7 +1164,7 @@
<string name="import_theme_error_desc">Zorg ervoor dat het bestand de juiste YAML-syntaxis heeft. Exporteer het thema om een voorbeeld te hebben van de themabestandsstructuur.</string>
<string name="opening_database">Database openen…</string>
<string name="read_more_in_user_guide_with_link"><![CDATA[Lees meer in de <font color="#0088ff">Gebruikershandleiding</font>.]]></string>
<string name="theme_colors_section_title">THEMA KLEUREN</string>
<string name="theme_colors_section_title">INTERFACE KLEUREN</string>
<string name="you_can_share_your_address">U kunt uw adres delen als een link of QR-code - iedereen kan verbinding met u maken.</string>
<string name="all_app_data_will_be_cleared">Alle app-gegevens worden verwijderd.</string>
<string name="empty_chat_profile_is_created">Er wordt een leeg chatprofiel met de opgegeven naam gemaakt en de app wordt zoals gewoonlijk geopend.</string>
@@ -1806,4 +1806,54 @@
<string name="settings_section_title_files">BESTANDEN</string>
<string name="protect_ip_address">Bescherm het IP-adres</string>
<string name="app_will_ask_to_confirm_unknown_file_servers">De app vraagt om downloads van onbekende bestandsservers te bevestigen (behalve .onion of wanneer SOCKS-proxy is ingeschakeld).</string>
<string name="error_initializing_web_view">Fout bij het initialiseren van WebView. Update uw systeem naar de nieuwe versie. Neem contact op met ontwikkelaars.
\nFout: %s</string>
<string name="color_wallpaper_tint">Achtergrond accent</string>
<string name="wallpaper_scale_fill">Vullen</string>
<string name="wallpaper_scale_fit">Passen</string>
<string name="wallpaper_preview_hello_alice">Goedemiddag!</string>
<string name="wallpaper_preview_hello_bob">Goedemorgen!</string>
<string name="theme_remove_image">Verwijder afbeelding</string>
<string name="wallpaper_scale">Schaal</string>
<string name="chat_theme_apply_to_all_modes">Alle kleurmodi</string>
<string name="chat_theme_apply_to_mode">Toepassen op</string>
<string name="chat_theme_apply_to_light_mode">Lichte modus</string>
<string name="v5_8_chat_themes_descr">Laat uw chats er anders uitzien!</string>
<string name="v5_8_chat_themes">Nieuwe chatthema\'s</string>
<string name="v5_8_private_routing">Routing van privéberichten🚀</string>
<string name="v5_8_safe_files_descr">Bevestig bestanden van onbekende servers.</string>
<string name="v5_8_message_delivery">Verbeterde bezorging van berichten</string>
<string name="v5_8_persian_ui">Perzische gebruikersinterface</string>
<string name="v5_8_safe_files">Veilig bestanden ontvangen</string>
<string name="v5_8_message_delivery_descr">Met verminderd batterijgebruik.</string>
<string name="theme_destination_app_theme">App thema</string>
<string name="chat_theme_reset_to_app_theme">Terugzetten naar app thema</string>
<string name="chat_theme_reset_to_user_theme">Terugzetten naar gebruikersthema</string>
<string name="chat_theme_apply_to_dark_mode">Donkere modus</string>
<string name="wallpaper_advanced_settings">Geavanceerde instellingen</string>
<string name="v5_8_private_routing_descr">Bescherm uw IP-adres tegen de berichtenrelais die door uw contacten zijn gekozen.
\nSchakel dit in in *Netwerk en servers*-instellingen.</string>
<string name="wallpaper_scale_repeat">Herhalen</string>
<string name="settings_section_title_chat_colors">Chatkleuren</string>
<string name="settings_section_title_user_theme">Profiel thema</string>
<string name="settings_section_title_chat_theme">Chat thema</string>
<string name="color_primary_variant2">Extra accent 2</string>
<string name="theme_black">Zwart</string>
<string name="color_mode">Kleur mode</string>
<string name="color_mode_dark">Donker</string>
<string name="dark_mode_colors">Kleuren in donkere modus</string>
<string name="color_mode_light">Licht</string>
<string name="color_received_quote">Antwoord ontvangen</string>
<string name="reset_single_color">Kleur opnieuw instellen</string>
<string name="color_sent_quote">Antwoord verzonden</string>
<string name="color_mode_system">Systeem</string>
<string name="color_wallpaper_background">Wallpaper achtergrond</string>
<string name="chat_theme_set_default_theme">Stel het standaard thema in</string>
<string name="chat_list_always_visible">Toon chatlijst in nieuw venster</string>
<string name="message_queue_info_none">geen</string>
<string name="info_row_debug_delivery">Foutopsporing bezorging</string>
<string name="message_queue_info">Informatie over berichtenwachtrij</string>
<string name="message_queue_info_server_info">informatie over serverwachtrij: %1$s
\n
\nlaatst ontvangen bericht: %2$s</string>
</resources>
@@ -1837,4 +1837,25 @@
<string name="settings_section_title_chat_theme">Motyw czatu</string>
<string name="color_mode">Tryb koloru</string>
<string name="color_mode_dark">Ciemny</string>
<string name="error_initializing_web_view">Błąd inicjacji WebView. Zaktualizuj swój system do nowej wersji. Proszę skontaktować się z deweloperami.
\nBłąd: %s</string>
<string name="message_queue_info_none">nic</string>
<string name="v5_8_chat_themes">Nowy motywy czatu</string>
<string name="v5_8_private_routing">Trasowanie prywatnych wiadomości🚀</string>
<string name="v5_8_safe_files">Bezpiecznie otrzymuj pliki</string>
<string name="v5_8_message_delivery">Ulepszona dostawa wiadomości</string>
<string name="v5_8_persian_ui">Perski interfejs użytkownika</string>
<string name="v5_8_safe_files_descr">Potwierdzaj pliki z nieznanych serwerów.</string>
<string name="info_row_debug_delivery">Dostarczenie debugowania</string>
<string name="v5_8_chat_themes_descr">Zrób wygląd Twoich czatów inny!</string>
<string name="v5_8_private_routing_descr">Chroni Twój adres IP przed przekaźnikami wiadomości wybranych przez Twoje kontakty.
\nWłącz w ustawianiach *Sieć i serwery* .</string>
<string name="message_queue_info">Informacje kolejki wiadomości</string>
<string name="message_queue_info_server_info">Informacje kolejki serwera: %1$s
\n
\nostatnia otrzymana wiadomość: %2$s</string>
<string name="v5_8_message_delivery_descr">Ze zredukowanym zużyciem baterii.</string>
<string name="theme_destination_app_theme">Motyw aplikacji</string>
<string name="chat_theme_reset_to_app_theme">Zresetuj do motywu aplikacji</string>
<string name="chat_theme_reset_to_user_theme">Zresetuj do motywu użytkownika</string>
</resources>
@@ -171,4 +171,153 @@
<string name="remove_member_confirmation">Elimină</string>
<string name="button_remove_member">Elimină membru</string>
<string name="button_remove_member_question">Elimini membrul?</string>
<string name="network_options_reset_to_defaults">Resetează la implicit</string>
<string name="reset_single_color">Resetează culoarea</string>
<string name="reset_color">Resetează culorile</string>
<string name="theme_remove_image">Elimină imagine</string>
<string name="migrate_from_device_repeat_upload">Repetă încărcarea</string>
<string name="callstatus_rejected">apel respins</string>
<string name="remove_passphrase_from_keychain">Elimini fraza de acces din Keystore?</string>
<string name="remove_passphrase_from_settings">Elimini fraza de acces din setări?</string>
<string name="connect_plan_repeat_connection_request">Repetă cererea de conectare?</string>
<string name="network_use_onion_hosts_required">Necesar</string>
<string name="retry_verb">Reîncearcă</string>
<string name="v5_8_safe_files">Primește fișiere în siguranță</string>
<string name="v5_6_safer_groups">Grupuri mai sigure</string>
<string name="restore_database_alert_confirm">Restabilește</string>
<string name="refresh_qr_code">Reîmprospătează</string>
<string name="revoke_file__title">Revoci fișierul?</string>
<string name="revoke_file__confirm">Revocă</string>
<string name="sync_connection_force_question">Renegociezi criptarea?</string>
<string name="reset_verb">Resetează</string>
<string name="reject">Respinge</string>
<string name="save_passphrase_in_settings">Salvează fraza de acces în setări</string>
<string name="save_and_update_group_profile">Salvează și actualizează profilul grupului</string>
<string name="network_options_revert">Revenire</string>
<string name="connect_plan_repeat_join_request">Repetă cererea de alăturare?</string>
<string name="restart_chat_button">Repornește conversația</string>
<string name="saved_description">salvat</string>
<string name="saved_from_description">Salvat de la %s</string>
<string name="save_verb">Salvează</string>
<string name="saved_chat_item_info_tab">Salvat</string>
<string name="saved_from_chat_item_info_title">Salvat de la</string>
<string name="sync_connection_force_confirm">Renegociază</string>
<string name="smp_servers_save">Salvează servere</string>
<string name="saved_ICE_servers_will_be_removed">Servere WebRTC ICE salvate vor fi eliminate.</string>
<string name="save_profile_password">Salvează parola profilului</string>
<string name="save_passphrase_and_open_chat">Salvează fraza de acces și deschide conversația</string>
<string name="group_members_2">%s și %s</string>
<string name="renegotiate_encryption">Renegociază criptarea</string>
<string name="save_and_notify_contact">Salvează și notifică contactul</string>
<string name="save_and_notify_contacts">Salvează și notifică contactele</string>
<string name="save_and_notify_group_members">Salvează și notifică membrii grupului</string>
<string name="notifications_mode_off">Rulează când aplicația este pornită</string>
<string name="reply_verb">Răspunde</string>
<string name="revoke_file__action">Revocă fișierul</string>
<string name="save_servers_button">Salvează</string>
<string name="save_settings_question">Salvezi setările?</string>
<string name="save_preferences_question">Salvezi preferințe?</string>
<string name="settings_restart_app">Repornire</string>
<string name="restore_database">Restabilește copia de rezervă a bazei de date</string>
<string name="restore_database_alert_title">Restabilești copia de rezervă a bazei de date?</string>
<string name="database_restore_error">Eroare la restabilirea bazei de date</string>
<string name="rcv_group_event_member_deleted">%1$s eliminat</string>
<string name="rcv_group_event_2_members_connected">%s și %s conectați</string>
<string name="role_in_group">Rol</string>
<string name="network_options_save">Salvează</string>
<string name="reveal_verb">Arată</string>
<string name="reject_contact_button">Respinge</string>
<string name="smp_save_servers_question">Salvezi servere?</string>
<string name="icon_descr_call_rejected">Apel respins</string>
<string name="saved_message_title">Mesaj salvat</string>
<string name="save_archive">Salvează arhiva</string>
<string name="restart_the_app_to_create_a_new_chat_profile">Repornește aplicația pentru a crea un nou profil</string>
<string name="save_passphrase_in_keychain">Salvează fraza de acces în Keystore</string>
<string name="save_group_profile">Salvează profilul grupului</string>
<string name="wallpaper_scale_repeat">Repetă</string>
<string name="send_link_previews">Trimite previzualizări ale link-ului</string>
<string name="set_passphrase">Setează frază de acces</string>
<string name="share_address">Distribuie adresă</string>
<string name="info_row_sent_at">Trimis la</string>
<string name="color_secondary">Secundar</string>
<string name="color_sent_message">Mesaj trimis</string>
<string name="set_group_preferences">Setează preferințele grupului</string>
<string name="icon_descr_sent_msg_status_sent">trimis</string>
<string name="srv_error_host">Adresa serverului este incompatibilă cu setările de rețea.</string>
<string name="srv_error_version">Versiunea serverului este incompatibilă cu setările de rețea.</string>
<string name="sending_via">Trimițând prin</string>
<string name="sending_files_not_yet_supported">trimiterea de fișiere nu este acceptată încă</string>
<string name="scan_code_from_contacts_app">Scanează codul de securitate din aplicația contactului tău</string>
<string name="select_contacts">Selectează contacte</string>
<string name="self_destruct">Autodistrugere</string>
<string name="color_sent_quote">Răspuns trimis</string>
<string name="share_image">Distribuie media…</string>
<string name="share_message">Distribuie mesaj…</string>
<string name="chat_list_always_visible">Arată lista conversațiilor într-o fereastră nouă</string>
<string name="terminal_always_visible">Arată consola într-o fereastră nouă</string>
<string name="setup_database_passphrase">Setează fraza de acces a bazei de date</string>
<string name="set_database_passphrase">Setează fraza de acces a bazei de date</string>
<string name="profile_update_event_set_new_address">setează adresă de contact nouă</string>
<string name="current_version_timestamp">%s (actual)</string>
<string name="session_code">Cod de sesiune</string>
<string name="sender_cancelled_file_transfer">Expeditorul a anulat transferul de fișiere.</string>
<string name="error_smp_test_server_auth">Serverul necesită autorizație pentru a crea cozi, verifică parola</string>
<string name="share_verb">Distribuie</string>
<string name="icon_descr_sent_msg_status_send_failed">trimitere eșuată</string>
<string name="search_or_paste_simplex_link">Caută sau lipește link SimpleX</string>
<string name="set_contact_name">Setează numele de contact</string>
<string name="save_welcome_message_question">Salvezi mesajul de bun venit?</string>
<string name="v4_2_security_assessment">Evaluare de securitate</string>
<string name="scan_qr_code_from_desktop">Scanează cod QR de pe desktop</string>
<string name="search_verb">Caută</string>
<string name="send_live_message_desc">Trimite un mesaj live - se va actualiza pentru destinatar(i) în timp ce îl tastezi</string>
<string name="share_link">Distribuie fișier</string>
<string name="enable_sending_recent_history">Trimite până la ultimele 100 de mesaje membrilor noi.</string>
<string name="v5_5_simpler_connect_ui_descr">Bara de căutare acceptă link-uri de invitație.</string>
<string name="custom_time_unit_seconds">secunde</string>
<string name="scan_from_mobile">Scanează de pe mobil</string>
<string name="sent_message">Mesaj trimis</string>
<string name="scan_QR_code">Scanează cod QR</string>
<string name="send_disappearing_message_send">Trimite</string>
<string name="chat_with_the_founder">Trimite întrebări și idei</string>
<string name="show_developer_options">Arată opțiuni dezvoltator</string>
<string name="network_option_seconds_label">sec</string>
<string name="v4_4_disappearing_messages_desc">Mesajele trimise vor fi șterse după timpul setat.</string>
<string name="error_xftp_test_server_auth">Serverul necesită autorizație pentru a încărca, verifică parola</string>
<string name="notification_preview_mode_message_desc">Arată contact și mesaje</string>
<string name="share_file">Distribuie fișier…</string>
<string name="text_field_set_contact_placeholder">Setează numele de contact…</string>
<string name="icon_descr_send_message">Trimite mesaj</string>
<string name="send_disappearing_message">Trimite mesaj temporar</string>
<string name="connect_via_link_or_qr_from_clipboard_or_in_person">(scanează sau lipește din clipboard)</string>
<string name="show_QR_code">Arată cod QR</string>
<string name="smp_servers_test_failed">Test server eșuat!</string>
<string name="show_dev_options">Arată:</string>
<string name="show_internal_errors">Arată erori interne</string>
<string name="secret_text">secret</string>
<string name="settings_section_title_settings">SETĂRI</string>
<string name="rcv_group_event_1_member_connected">%s conectat</string>
<string name="profile_update_event_set_new_picture">setează imagine de profil</string>
<string name="share_text_sent_at">Trimis către: %s</string>
<string name="conn_stats_section_title_servers">SERVERE</string>
<string name="send_live_message">Trimite mesaj live</string>
<string name="migrate_to_device_bytes_downloaded">%s descărcat</string>
<string name="share_address_with_contacts_question">Distribui adresa cu contactele?</string>
<string name="settings_notification_preview_mode_title">Arată previzualizare</string>
<string name="member_contact_send_direct_message">trimite mesaj direct</string>
<string name="compose_send_direct_message_to_connect">Trimite mesaj direct pentru a te conecta</string>
<string name="custom_time_picker_select">Selectează</string>
<string name="stop_snd_file__message">Trimiterea de fișiere va fi oprită.</string>
<string name="send_verb">Trimite</string>
<string name="icon_descr_settings">Setări</string>
<string name="scan_code">Scanează cod</string>
<string name="security_code">Cod de securitate</string>
<string name="send_us_an_email">Trimite-ne email</string>
<string name="smp_servers_scan_qr">Scanează codul QR al serverului</string>
<string name="share_with_contacts">Distribuie contactelor</string>
<string name="show_call_on_lock_screen">Arată</string>
<string name="rcv_conn_event_verification_code_reset">cod de securitate schimbat</string>
<string name="privacy_show_last_messages">Arată ultimul mesaj</string>
<string name="button_send_direct_message">Trimite mesaj direct</string>
<string name="chat_theme_set_default_theme">Setează tema implicită</string>
</resources>
@@ -1249,7 +1249,7 @@
<string name="prohibit_message_reactions">Запретить реакции на сообщения.</string>
<string name="prohibit_message_reactions_group">Запретить реакции на сообщения.</string>
<string name="custom_time_unit_seconds">секунд</string>
<string name="theme_colors_section_title">ЦВЕТА ТЕМЫ</string>
<string name="theme_colors_section_title">ЦВЕТА ИНТЕРФЕЙСА</string>
<string name="share_address_with_contacts_question">Поделиться адресом с контактами\?</string>
<string name="profile_update_will_be_sent_to_contacts">Обновлённый профиль будет отправлен Вашим контактам.</string>
<string name="learn_more_about_address">Об адресе SimpleX</string>
@@ -1850,4 +1850,95 @@
<string name="v5_7_shape_profile_images">Форма картинок профилей</string>
<string name="v5_7_shape_profile_images_descr">Квадрат, круг и все, что между ними.</string>
<string name="v5_7_quantum_resistant_encryption_descr">Будет включено в прямых разговорах!</string>
<string name="settings_section_title_files">ФАЙЛЫ</string>
<string name="v5_8_chat_themes">Новые темы чатов</string>
<string name="message_queue_info_none">нет</string>
<string name="color_mode_light">Светлая</string>
<string name="color_mode_system">Системная</string>
<string name="dark_mode_colors">Цвета тёмного режима</string>
<string name="v5_8_safe_files">Получайте файлы безопасно</string>
<string name="v5_8_private_routing">Конфиденциальная доставка сообщений 🚀</string>
<string name="v5_8_message_delivery">Улучшенная доставка сообщений</string>
<string name="v5_8_message_delivery_descr">Уменьшенный расход батареи.</string>
<string name="srv_error_version">Версия сервера несовместима с настройками сети.</string>
<string name="snd_error_auth">Неверный ключ или неизвестное соединение - скорее всего, это соединение удалено.</string>
<string name="snd_error_quota">Превышено количество сообщений - предыдущие сообщения не доставлены.</string>
<string name="snd_error_relay">Ошибка сервера получателя: %1$s</string>
<string name="ci_status_other_error">Ошибка: %1$s</string>
<string name="snd_error_proxy_relay">Пересылающий сервер: %1$s
\nОшибка сервера получателя: %2$s</string>
<string name="snd_error_proxy">Пересылающий сервер: %1$s
\nОшибка: %2$s</string>
<string name="message_delivery_warning_title">Предупреждение доставки сообщения</string>
<string name="snd_error_expired">Ошибка сети - сообщение не было отправлено после многократных попыток.</string>
<string name="srv_error_host">Адрес сервера несовместим с настройками сети.</string>
<string name="message_queue_info_server_info">информация сервера об очереди: %1$s
\n
\nпоследнее полученное сообщение: %2$s</string>
<string name="chat_list_always_visible">Показать список чатов в новом окне</string>
<string name="app_will_ask_to_confirm_unknown_file_servers">Приложение будет запрашивать подтверждение загрузки с неизвестных серверов (за исключением .onion адресов или когда SOCKS-прокси включен).</string>
<string name="network_smp_proxy_mode_unprotected">Незащищённый</string>
<string name="without_tor_or_vpn_ip_address_will_be_visible_to_file_servers">Без Тора или ВПН, Ваш IP адрес будет доступен серверам файлов.</string>
<string name="network_smp_proxy_fallback_allow_protected_description">Отправлять сообщения напрямую, когда IP адрес защищен, и Ваш сервер или сервер получателя не поддерживает конфиденциальную доставку.</string>
<string name="theme_black">Черная</string>
<string name="chat_theme_apply_to_dark_mode">Тёмный режим</string>
<string name="network_smp_proxy_fallback_prohibit_description">Не отправлять сообщения напрямую, даже если сервер получателя не поддерживает конфиденциальную доставку.</string>
<string name="color_mode">Режим цветов</string>
<string name="network_smp_proxy_fallback_allow_downgrade">Разрешить прямую доставку</string>
<string name="network_smp_proxy_mode_always">Всегда</string>
<string name="v5_8_safe_files_descr">Подтверждать файлы с неизвестных серверов.</string>
<string name="network_smp_proxy_mode_always_description">Всегда использовать конфиденциальную доставку.</string>
<string name="color_mode_dark">Тёмная</string>
<string name="info_row_debug_delivery">Отладка доставки</string>
<string name="error_initializing_web_view">Ошибка инициализации WebView. Обновите Вашу систему до новой версии. Свяжитесь с разработчиками.
\nОшибка: %s</string>
<string name="chat_theme_apply_to_light_mode">Светлый режим</string>
<string name="v5_8_chat_themes_descr">Сделайте ваши чаты разными!</string>
<string name="message_queue_info">Информация об очереди сообщений</string>
<string name="v5_8_persian_ui">Персидский интерфейс</string>
<string name="protect_ip_address">Защитить IP адрес</string>
<string name="v5_8_private_routing_descr">Защитите ваш IP адрес от серверов сообщений, выбранных Вашими контактами.
\nВключите в настройках Сеть и серверы.</string>
<string name="network_smp_proxy_fallback_allow_description">Отправьте сообщения напрямую, когда Ваш сервер или сервер получателя не поддерживает конфиденциальную доставку.</string>
<string name="network_smp_proxy_mode_private_routing">Конфиденциальная доставка</string>
<string name="network_smp_proxy_mode_unknown_description">Использовать конфиденциальную доставку с неизвестными серверами.</string>
<string name="network_smp_proxy_mode_unprotected_description">Использовать конфиденциальную доставку с неизвестными серверами, когда IP адрес не защищен.</string>
<string name="network_smp_proxy_fallback_allow_protected">Когда IP защищен</string>
<string name="network_smp_proxy_fallback_allow">Да</string>
<string name="private_routing_explanation">Чтобы защитить ваш IP адрес, приложение использует Ваши SMP серверы для конфиденциальной доставки сообщений.</string>
<string name="settings_section_title_profile_images">Изображения профилей</string>
<string name="chat_theme_apply_to_all_modes">Все режимы</string>
<string name="theme_destination_app_theme">Тема приложения</string>
<string name="chat_theme_reset_to_app_theme">Сбросить на тему приложения</string>
<string name="chat_theme_reset_to_user_theme">Сбросить на тему пользователя</string>
<string name="file_not_approved_title">Неизвестные серверы!</string>
<string name="file_not_approved_descr">Без Тора или ВПН, Ваш IP адрес будет доступен этим серверам файлов:
\n%1$s.</string>
<string name="network_smp_proxy_mode_never_description">Не использовать конфиденциальную маршрутизацию.</string>
<string name="network_smp_proxy_mode_never">Никогда</string>
<string name="network_smp_proxy_mode_unknown">Неизвестные серверы</string>
<string name="network_smp_proxy_fallback_prohibit">Нет</string>
<string name="private_routing_show_message_status">Показать статус сообщения</string>
<string name="update_network_smp_proxy_fallback_question">Прямая доставка сообщений</string>
<string name="update_network_smp_proxy_mode_question">Режим доставки сообщений</string>
<string name="settings_section_title_private_message_routing">КОНФИДЕНЦИАЛЬНАЯ ДОСТАВКА СООБЩЕНИЙ</string>
<string name="settings_section_title_chat_colors">Цвета чата</string>
<string name="settings_section_title_chat_theme">Тема чата</string>
<string name="settings_section_title_user_theme">Тема профиля</string>
<string name="color_primary_variant2">Дополнительный акцент 2</string>
<string name="wallpaper_advanced_settings">Дополнительные настройки</string>
<string name="wallpaper_scale_fill">Обрезать</string>
<string name="wallpaper_scale_fit">Полностью</string>
<string name="wallpaper_preview_hello_alice">Добрый день!</string>
<string name="wallpaper_preview_hello_bob">Доброе утро!</string>
<string name="color_received_quote">Полученный ответ</string>
<string name="theme_remove_image">Удалить изображение</string>
<string name="wallpaper_scale_repeat">Повторить</string>
<string name="reset_single_color">Сбросить цвет</string>
<string name="wallpaper_scale">Масштаб</string>
<string name="color_sent_quote">Отправленный ответ</string>
<string name="chat_theme_set_default_theme">Установить тему по умолчанию</string>
<string name="color_wallpaper_tint">Рисунок обоев</string>
<string name="color_wallpaper_background">Фон обоев</string>
<string name="chat_theme_apply_to_mode">Применить к</string>
</resources>
@@ -149,7 +149,7 @@
<string name="role_in_group">Yetki</string>
<string name="allow_voice_messages_question">Sesli mesajlara izin verilsin mi?</string>
<string name="users_add">Profil ekle</string>
<string name="allow_direct_messages">Üyelere direkt mesaj gönderilmesine izin ver.</string>
<string name="allow_direct_messages">Üyelere doğrudan mesaj gönderilmesine izin ver.</string>
<string name="allow_to_send_disappearing">Kendiliğinden yok olan mesajlar göndermeye izin ver.</string>
<string name="allow_to_delete_messages">Gönderilen mesajların kalıcı olarak silinmesine izin ver. (24 saat içinde)</string>
<string name="allow_to_send_files">Dosya ve medya göndermeye izin ver.</string>
@@ -505,7 +505,7 @@
<string name="info_row_disappears_at">Kendiliğinden şu sürede yok olacak</string>
<string name="share_text_disappears_at">Kendiliğinden şu sürede yok olacak: %s</string>
<string name="feature_enabled">etkin</string>
<string name="direct_messages">Direkt mesaj</string>
<string name="direct_messages">Doğrudan mesajlar</string>
<string name="no_call_on_lock_screen">Devre dışı bırak</string>
<string name="display_name_cannot_contain_whitespace">Görünen ad, boşluk gibi aralıklama türleri içeremez.</string>
<string name="display_name">İsmini gir:</string>
@@ -529,7 +529,7 @@
<string name="snd_conn_event_ratchet_sync_agreed">%s üyesi için şifreleme kabul edildi</string>
<string name="conn_level_desc_direct">doğrudan</string>
<string name="dont_show_again">Yeniden gösterme</string>
<string name="direct_messages_are_prohibited_in_chat">Bu grupta üyeler arası direkt mesajlar yasaklıdır.</string>
<string name="direct_messages_are_prohibited_in_chat">Bu grupta üyeler arası doğrudan mesajlaşma yasaklıdır.</string>
<string name="feature_enabled_for_contact">konuşulan kişi için etkinleşti</string>
<string name="feature_enabled_for_you">senin için etkinleştirildi</string>
<string name="ttl_sec">%d sn</string>
@@ -652,7 +652,7 @@
<string name="group_display_name_field">Grup adını gir:</string>
<string name="group_full_name_field">Grup tam adı:</string>
<string name="files_and_media">Dosya ve medya</string>
<string name="group_members_can_send_dms">Grup üyeleri direkt mesaj gönderebilir.</string>
<string name="group_members_can_send_dms">Grup üyeleri doğrudan mesaj gönderebilir.</string>
<string name="group_members_can_delete">Grup üyeleri, gönderilen mesajları kalıcı olarak silebilir. (24 saat içinde)</string>
<string name="group_members_can_send_voice">Grup üyeleri sesli mesaj gönderebilirler.</string>
<string name="files_are_prohibited_in_group">Bu toplu konuşmada, dosya ve medya yasaklanmıştır.</string>
@@ -1006,7 +1006,7 @@
<string name="prohibit_message_reactions">Mesaj tepkilerini yasakla.</string>
<string name="prohibit_sending_voice_messages">Sesli mesaj göndermeyi yasakla.</string>
<string name="prohibit_message_deletion">Geri alınamaz mesaj silme işlemini yasakla.</string>
<string name="prohibit_direct_messages">Üyelere direkt mesaj göndermeyi yasakla.</string>
<string name="prohibit_direct_messages">Üyelere doğrudan mesaj göndermeyi yasakla.</string>
<string name="prohibit_sending_files">Dosya ve medya göndermeyi yasakla.</string>
<string name="v4_4_live_messages">Canlı mesajlar</string>
<string name="v5_0_polish_interface">Arayüz geliştirildi</string>
@@ -1215,7 +1215,7 @@
<string name="alert_text_msg_bad_hash">Önceki mesajın hash\'i farklı.</string>
<string name="lock_not_enabled">SimpleX Kilit aktif değil!</string>
<string name="chat_lock">SimpleX Kilit</string>
<string name="connect_via_member_address_alert_title">Direkt bağlanılsın mı?</string>
<string name="connect_via_member_address_alert_title">Doğrudan bağlanılsın mı?</string>
<string name="receipts_section_description">Bu ayarlar mevcut profiliniz içindir</string>
<string name="smp_servers_test_failed">Sunucu testi başarısız!</string>
<string name="verify_connection">Bağlantıyı onayla</string>
@@ -1230,7 +1230,7 @@
<string name="v4_6_audio_video_calls_descr">Bluetooth desteği ve diğer iyileştirmeler.</string>
<string name="icon_descr_settings">Ayarlar</string>
<string name="settings_section_title_settings">AYARLAR</string>
<string name="compose_send_direct_message_to_connect">Bağlanmak için direkt mesaj gönderin</string>
<string name="compose_send_direct_message_to_connect">Bağlanmak için doğrudan mesaj gönderin</string>
<string name="security_code">Güvenlik kodu</string>
<string name="v5_4_better_groups_descr">Daha hızlı gruplara katılma ve daha güvenilir mesajlar.</string>
<string name="group_main_profile_sent">Sohbet profiliniz grup üyelerine gönderilecek</string>
@@ -1403,7 +1403,7 @@
<string name="the_text_you_pasted_is_not_a_link">Yapıştırdığın bağlantı bir SimpleX bağlantısı değil.</string>
<string name="color_sent_message">Gönderilmiş mesaj</string>
<string name="receipts_groups_title_disable">Gruplar için alıcılar devre dışı bırakılsın mı?</string>
<string name="relay_server_protects_ip">Aktarıcı sunucu IP adresinizi korur, ancak aramanın süresini gözlemleyebilir.</string>
<string name="relay_server_protects_ip">Yönlendirici sunucu IP adresinizi korur, ancak aramanın süresini gözlemleyebilir.</string>
<string name="loading_remote_file_title">Dosya yükleniyor</string>
<string name="connecting_to_desktop">Masaüstüne bağlanıyor</string>
<string name="no_contacts_to_add">Eklenecek kişi yok</string>
@@ -1693,7 +1693,7 @@
<string name="migrate_from_device_starting_chat_on_multiple_devices_unsupported">Uyarı: Birden fazla cihazda sohbet başlatmak desteklenmez ve mesaj iletimi başarısızlıklara neden olabilir.</string>
<string name="migrate_from_device_verify_database_passphrase">Veritabanı parolasını doğrulayın</string>
<string name="migrate_from_device_verify_passphrase">Parolayı doğrulayın</string>
<string name="migrate_from_device_all_data_will_be_uploaded">Tüm kişileriniz, konuşmalarınız ve dosyalarınız güvenli bir şekilde şifrelenir ve yapılandırılmış XFTP rölelerine parçalar halinde yüklenir.</string>
<string name="migrate_from_device_all_data_will_be_uploaded">Tüm kişileriniz, konuşmalarınız ve dosyalarınız güvenli bir şekilde şifrelenir ve yapılandırılmış XFTP yönlendiricilerine parçalar halinde yüklenir.</string>
<string name="migrate_from_device_archive_and_upload">Arşivle ve yükle</string>
<string name="migrate_from_device_archive_will_be_deleted"><![CDATA[<b>Uyarı</b>: arşiv silinecektir.]]></string>
<string name="migrate_from_device_confirm_you_remember_passphrase">Taşımak için veritabanı parolasını hatırladığınızı doğrulayın.</string>
@@ -1782,7 +1782,7 @@
<string name="srv_error_version">Sunucu sürümü ağ ayarlarıyla uyumlu değil.</string>
<string name="snd_error_auth">Yanlış anahtar veya bilinmeyen bağlantı - büyük olasılıkla bu bağlantı silinmiştir.</string>
<string name="network_smp_proxy_mode_private_routing">Gizli yönlendirme</string>
<string name="network_smp_proxy_mode_unknown">Bilinmeyen röleler</string>
<string name="network_smp_proxy_mode_unknown">Bilinmeyen yönlendiriciler</string>
<string name="network_smp_proxy_mode_always_description">Her zaman gizli yönlendirmeyi kullan.</string>
<string name="network_smp_proxy_mode_never_description">Gizli yönlendirmeyi KULLANMA.</string>
<string name="update_network_smp_proxy_mode_question">Mesaj yönlendirme modu</string>
@@ -1797,7 +1797,7 @@
<string name="network_smp_proxy_fallback_allow_description">Sizin veya hedef sunucunun özel yönlendirmeyi desteklemediği durumlarda mesajları doğrudan gönderin.</string>
<string name="settings_section_title_private_message_routing">GİZLİ MESAJ YÖNLENDİRME</string>
<string name="private_routing_show_message_status">Mesaj durumunu göster</string>
<string name="private_routing_explanation">IP adresinizi korumak için,özel yönlendirme mesajları iletmek için SMP sunucularınızı kullanır.</string>
<string name="private_routing_explanation">IP adresinizi korumak için,gizli yönlendirme mesajları iletmek için SMP sunucularınızı kullanır.</string>
<string name="network_smp_proxy_mode_unprotected">Korumasız</string>
<string name="network_smp_proxy_mode_unprotected_description">IP adresi korunmadığında bilinmeyen sunucularla gizli yönlendirme kullan.</string>
<string name="network_smp_proxy_fallback_allow_protected">IP gizliyken</string>
@@ -1832,10 +1832,25 @@
<string name="reset_single_color">Rengi sıfırla</string>
<string name="chat_list_always_visible">Sohbet listesini yeni pencerede göster</string>
<string name="file_not_approved_title">Bilinmeyen sunucular!</string>
<string name="file_not_approved_descr">Tor veya VPN olmadan, IP adresiniz bu XFTP aktarıcıları tarafından görülebilir:
<string name="file_not_approved_descr">Tor veya VPN olmadan, IP adresiniz bu XFTP yönlendiricileri tarafından görülebilir:
\n%1$s.</string>
<string name="without_tor_or_vpn_ip_address_will_be_visible_to_file_servers">Tor veya VPN olmadan, IP adresiniz dosya sunucularına görülebilir.</string>
<string name="color_wallpaper_tint">Duvar kağıdı vurgusu</string>
<string name="color_wallpaper_background">Duvar kağıdı arkaplanı</string>
<string name="app_will_ask_to_confirm_unknown_file_servers">Uygulama, bilinmeyen dosya sunucularından indirmeleri onaylamanızı isteyecektir (.onion veya SOCKS vekilleri etkin değilse).</string>
<string name="error_initializing_web_view">WebView başlatılırken hata oluştu. Sisteminizi yeni sürüme güncelleyin. Lütfen geliştiricilerle iletişime geçin.
\nHata: %s</string>
<string name="v5_8_chat_themes_descr">Sohbetlerinizin farklı görünmesini sağlayın!</string>
<string name="v5_8_persian_ui">Farsça Arayüz</string>
<string name="chat_theme_reset_to_user_theme">Kullanıcı temasına sıfırla</string>
<string name="v5_8_private_routing_descr">IP adresinizi kişileriniz tarafından seçilen mesajlaşma yönlendiricilerinden koruyun.
\n*Ağ ve sunucular* ayarlarında etkinleştirin.</string>
<string name="v5_8_private_routing">Gizli mesaj yönlendirme 🚀</string>
<string name="v5_8_safe_files_descr">Bilinmeyen sunuculardan gelen dosyaları onayla.</string>
<string name="v5_8_message_delivery">Geliştirilmiş mesaj iletimi</string>
<string name="v5_8_chat_themes">Yeni sohbet temaları</string>
<string name="v5_8_safe_files">Dosyaları güvenle alın</string>
<string name="v5_8_message_delivery_descr">Azaltılmış pil kullanımı ile.</string>
<string name="theme_destination_app_theme">Uygulama teması</string>
<string name="chat_theme_reset_to_app_theme">Uygulama temasına sıfırla</string>
</resources>
@@ -1789,4 +1789,65 @@
<string name="wallpaper_preview_hello_alice">Доброго дня!</string>
<string name="wallpaper_preview_hello_bob">Доброго ранку!</string>
<string name="color_mode_light">Світлий</string>
<string name="theme_remove_image">Видалити зображення</string>
<string name="error_initializing_web_view">Помилка ініціалізації WebView. Оновіть систему до нової версії. Зверніться до розробників.
\nПомилка: %s</string>
<string name="v5_8_safe_files_descr">Підтвердити файли з невідомих серверів.</string>
<string name="v5_8_message_delivery">Покращена доставка повідомлень</string>
<string name="v5_8_persian_ui">Перський інтерфейс</string>
<string name="v5_8_private_routing">Маршрутизація приватних повідомлень 🚀</string>
<string name="protect_ip_address">Захист IP-адреси</string>
<string name="v5_8_private_routing_descr">Захистіть свою IP-адресу від ретрансляторів повідомлень, обраних вашими контактами.
\nУвімкніть у налаштуваннях *Мережа та сервери*.</string>
<string name="color_received_quote">Отримано відповідь</string>
<string name="saved_chat_item_info_tab">Збережено</string>
<string name="app_will_ask_to_confirm_unknown_file_servers">Програма попросить підтвердити завантаження з невідомих файлових серверів (крім .onion або коли ввімкнено SOCKS-проксі).</string>
<string name="network_smp_proxy_fallback_allow_protected_description">Надсилайте повідомлення напряму, якщо IP-адреса захищена, а ваш сервер або сервер призначення не підтримує приватну маршрутизацію.</string>
<string name="network_smp_proxy_fallback_allow_description">Надсилайте повідомлення напряму, якщо ваш сервер або сервер призначення не підтримує приватну маршрутизацію.</string>
<string name="chat_theme_set_default_theme">Встановлення теми за замовчуванням</string>
<string name="color_sent_quote">Надіслано відповідь</string>
<string name="chat_list_always_visible">Показати список чату в новому вікні</string>
<string name="network_smp_proxy_mode_unknown_description">Використовуйте приватну маршрутизацію з невідомими серверами.</string>
<string name="network_smp_proxy_mode_unprotected_description">Використовуйте приватну маршрутизацію з невідомими серверами, якщо IP-адреса не захищена.</string>
<string name="color_wallpaper_background">Фон шпалер</string>
<string name="color_wallpaper_tint">Акцент на шпалерах</string>
<string name="wallpaper_scale_repeat">Повторити</string>
<string name="wallpaper_scale">Масштаб</string>
<string name="v5_8_chat_themes_descr">Нехай ваші чати виглядають інакше!</string>
<string name="v5_8_chat_themes">Нові теми чату</string>
<string name="v5_8_safe_files">Безпечне отримання файлів</string>
<string name="v5_8_message_delivery_descr">З меншим споживанням заряду акумулятора.</string>
<string name="snd_error_auth">Неправильний ключ або невідоме з\'єднання - швидше за все, це з\'єднання видалено.</string>
<string name="srv_error_host">Адреса сервера несумісна з налаштуваннями мережі.</string>
<string name="voice_messages_not_allowed">Голосові повідомлення заборонені</string>
<string name="network_type_network_wifi">WiFi</string>
<string name="audio_device_speaker">Спікер</string>
<string name="chat_theme_reset_to_app_theme">Повернутися до теми програми</string>
<string name="chat_theme_reset_to_user_theme">Повернутися до теми користувача</string>
<string name="simplex_links">Посилання SimpleX</string>
<string name="v5_7_shape_profile_images_descr">Квадрат, коло або щось середнє між ними.</string>
<string name="v5_7_quantum_resistant_encryption_descr">Буде ввімкнено в прямих чатах!</string>
<string name="saved_description">збережено</string>
<string name="saved_from_description">збережено з %s</string>
<string name="network_type_ethernet">Дротова мережа Ethernet</string>
<string name="file_not_approved_title">Невідомі сервери!</string>
<string name="file_not_approved_descr">Без Tor або VPN ваша IP-адреса буде видимою для цих XFTP-ретрансляторів:
\n%1$s.</string>
<string name="recipients_can_not_see_who_message_from">Одержувач(и) не бачить, від кого це повідомлення.</string>
<string name="saved_from_chat_item_info_title">Збережено з</string>
<string name="srv_error_version">Серверна версія несумісна з мережевими налаштуваннями.</string>
<string name="simplex_links_not_allowed">Посилання SimpleX заборонені</string>
<string name="private_routing_show_message_status">Показати статус повідомлення</string>
<string name="private_routing_explanation">Щоб захистити вашу IP-адресу, приватна маршрутизація використовує ваші SMP-сервери для доставки повідомлень.</string>
<string name="network_smp_proxy_mode_unknown">Невідомі реле</string>
<string name="network_smp_proxy_mode_unprotected">Незахищений</string>
<string name="network_smp_proxy_fallback_allow_protected">Коли IP приховано</string>
<string name="network_smp_proxy_fallback_allow">Так</string>
<string name="network_option_rcv_concurrency">Отримання паралелізму</string>
<string name="simplex_links_are_prohibited_in_group">У цій групі заборонені посилання на SimpleX.</string>
<string name="v5_7_shape_profile_images">Сформуйте зображення профілю</string>
<string name="v5_7_call_sounds_descr">При підключенні аудіо та відеодзвінків.</string>
<string name="reset_single_color">Скинути колір</string>
<string name="color_mode_system">Система</string>
<string name="without_tor_or_vpn_ip_address_will_be_visible_to_file_servers">Без Tor або VPN ваша IP-адреса буде видимою для файлових серверів.</string>
</resources>
@@ -1837,4 +1837,25 @@
<string name="settings_section_title_chat_theme">聊天主题</string>
<string name="reset_single_color">重置颜色</string>
<string name="wallpaper_scale">缩放</string>
<string name="error_initializing_web_view">Webview 初始化失败。更新你的系统到新版本。请联系开发者。
\n错误:%s</string>
<string name="v5_8_private_routing_descr">保护您的真实 IP 地址。不让你的联系人选择的消息中继看到它。
\n在*网络&amp;服务器*设置中开启。</string>
<string name="v5_8_safe_files_descr">确认来自未知服务器的文件。</string>
<string name="v5_8_safe_files">安全地接收文件</string>
<string name="v5_8_message_delivery">改进了消息传递</string>
<string name="v5_8_chat_themes_descr">让你的聊天看上去不同!</string>
<string name="v5_8_private_routing">私密消息路由🚀</string>
<string name="v5_8_chat_themes">新的聊天主题</string>
<string name="v5_8_persian_ui">波斯语用户界面</string>
<string name="v5_8_message_delivery_descr">降低电池用量</string>
<string name="theme_destination_app_theme">主题</string>
<string name="chat_theme_reset_to_app_theme">重置为应用主题</string>
<string name="chat_theme_reset_to_user_theme">重置为用户主题</string>
<string name="info_row_debug_delivery">发送调试</string>
<string name="message_queue_info">消息队列信息</string>
<string name="message_queue_info_server_info">消息队列信息:%1$s
\n
\n上一则收到的信息:%2$s</string>
<string name="message_queue_info_none"></string>
</resources>
@@ -115,6 +115,7 @@ private fun ApplicationScope.AppWindow(closedByError: MutableState<Boolean>) {
false
}
}, title = "SimpleX") {
// val hardwareAccelerationDisabled = remember { listOf(GraphicsApi.SOFTWARE_FAST, GraphicsApi.SOFTWARE_COMPAT, GraphicsApi.UNKNOWN).contains(window.renderApi) }
simplexWindowState.window = window
AppScreen()
if (simplexWindowState.openDialog.isAwaiting) {
@@ -3,7 +3,6 @@ package chat.simplex.desktop
import androidx.compose.animation.core.Animatable
import androidx.compose.animation.core.AnimationVector1D
import androidx.compose.foundation.*
import androidx.compose.foundation.interaction.*
import androidx.compose.foundation.lazy.LazyListState
import androidx.compose.runtime.*
import androidx.compose.ui.ExperimentalComposeUiApi
@@ -17,6 +16,8 @@ import kotlinx.coroutines.*
import java.io.File
fun main() {
// Disable hardware acceleration
//System.setProperty("skiko.renderApi", "SOFTWARE")
initHaskell()
runMigrations()
initApp()
+4 -4
View File
@@ -26,11 +26,11 @@ android.enableJetifier=true
kotlin.mpp.androidSourceSetLayoutVersion=2
kotlin.jvm.target=11
android.version_name=5.8-beta.4
android.version_code=215
android.version_name=5.8-beta.5
android.version_code=218
desktop.version_name=5.8-beta.4
desktop.version_code=50
desktop.version_name=5.8-beta.5
desktop.version_code=52
kotlin.version=1.9.23
gradle.plugin.version=8.2.0
@@ -0,0 +1,32 @@
---
layout: layouts/article.html
title: "Protecting Children's Safety Requires End-to-End Encryption"
date: 2024-06-01
previewBody: blog_previews/20240601.html
image: images/20240601-eu-privacy.png
permalink: "/blog/20240601-protecting-children-safety-requires-e2e-encryption.html"
---
# Protecting Children's Safety Requires End-to-End Encryption
As lawmakers grapple with the serious issue of child exploitation online, some proposed solutions would fuel the very problem they aim to solve. Despite expert warnings, the Belgian Presidency persists in pushing for the implementation of client-side scanning on encrypted messaging services, rebranding the effort as "upload moderation". Their [latest proposal](https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=COM%3A2022%3A209%3AFIN&qid=1652451192472) mandates that providers of private communication services obtain user consent for AI-based scanning of their private chats. If users do not consent, they will be prohibited from sharing images, videos, and URLs.
Privacy critics have long pushed for measures like centralized scanning of private photos and messaging data, arguing it could detect illicit content. However, invasive monitoring of private communications would create detrimental risks that far outweigh any perceived benefits.
## Why were taking action
SimpleX Chat signed a [joint statement](https://www.globalencryption.org/2024/05/joint-statement-on-the-dangers-of-the-may-2024-council-of-the-eu-compromise-proposal-on-eu-csam/) about the dangers of the EU compromise proposal on EU CSAM because maintaining end-to-end encryption is crucial for protecting privacy and security for everyone, including and especially children. 
We urge the Ministers in the Council of the EU to stand firm against any scanning proposals that undermine end-to-end encryption, which would enable mass surveillance and misuse by bad actors, whether framed as client-side scanning, upload moderation, or any other terminology. Compromising this basic principle opens the door to devastating privacy violations. We also urge any organizations or individuals reading this to write to their representatives and voice their concerns. European Digital Rights has [outlined these issues](https://edri.org/our-work/be-scanned-or-get-banned/) in greater detail for anyone seeking more information.
## Why compromising privacy endangers children
The core issue is that compromising encryption and privacy makes innocent people vulnerable to malicious hackers and criminals seeking to exploit users data. Centralized scanning systems become a tempting target, potentially exposing millions of private family photos when breached. This would easily open up avenues for blackmail, abuse, and victimization of children. A case in point is the recent [criminal charges](https://techcrunch.com/2024/01/17/unredacted-meta-documents-reveal-historical-reluctance-to-protect-children-new-mexico-lawsuit/) against Meta in New Mexico, which highlights how the tech giant's algorithms enabled child exploitation by encouraging connections between minors and sexual predators. Privacy-eroding initiatives like client-side scanning would play into the hands of malicious actors by making more sensitive information accessible and weaponized in the same way that it has been on Meta platforms.
## What should be done
Rather than undermining privacy, to achieve child safety online users should be empowered with high standards for encryption and data control. For example, adopting a model where children (and users in general) cannot be discovered or approached on networks unless they or their parents permit it, similar to the SimpleX network privacy model. Intelligent multi-device synchronization could enable this oversight without compromising end-to-end encryption overall. Its always possible to protect children without opening everyone, especially children themselves, to greater vulnerabilities due to such proposals.
However, some recent legislative efforts have bizarrely moved in the opposite direction by seeking to limit parental access. The chilling truth is that the least private platforms have been major enablers of child exploitation. Eroding privacy protections on other services will only aid criminals further, not protect children. Preserving strong encryption and user privacy must be the foundation for any credible effort to combat online child exploitation. Initiatives trading privacy for supposed safety are not just technically flawed, but would achieve the exact opposite of their stated intent. We must avoid being gaslighted by narratives that defy logic, and instead provide users with the highest possible standards for privacy protections as a core principle.
Protecting end-to-end encryption without carving out backdoors or vulnerabilities should be non-negotiable for children's and everyones safety. It is critical to redirect the discourse to focus on taking genuine privacy further by protecting against [metadata hoarding](https://simplex.chat/blog/20240416-dangers-of-metadata-in-messengers.html) and other means by which peoples data can be abused or subjected to surveillance.
+6
View File
@@ -1,5 +1,11 @@
# Blog
Jun 1, 2024 [Children's Safety Requires End-to-End Encryption](./20240601-children-safety-requires-e2e-encryption.md)
As lawmakers grapple with the serious issue of child exploitation online, some proposed solutions would fuel the very problem they aim to solve.
---
May 16, 2024 [SimpleX: Redefining Privacy by Making Hard Choices](./20240516-simplex-redefining-privacy-hard-choices.md)
When it comes to open source privacy tools, the status quo often dictates the limitations of existing protocols and structures. However, these norms need to be challenged to radically shift how we approach genuinely private communication. This requires doing some uncomfortable things, like making hard choices as it relates to funding, alternative decentralization models, doubling down on privacy over convenience, and more.
Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

+1 -1
View File
@@ -12,7 +12,7 @@ constraints: zip +disable-bzip2 +disable-zstd
source-repository-package
type: git
location: https://github.com/simplex-chat/simplexmq.git
tag: 54c80d67c87ab626c58d028f90c8421b340a2e67
tag: 4248a00a14554522f973435fd1214df790482bed
source-repository-package
type: git
@@ -0,0 +1,158 @@
# Flexible user records
## Problem
Currently user records work as rigid containers for conversations. New conversations can be created only for an active user. Users want to be able to select a user record for a new conversation right at the connection screen (i.e. when scanning QR code or pasting a link). A similar problem was previously solved regarding Incognito mode - initially it required changing a global setting, then it was moved as a toggle to the connection screen, then it was reworked to be offered after scanning the link.
## Solution
## UI
Connection UI would offer to join connections as other users.
Current options when joining:
```
- "Use current profile"
- "Use new incognito profile"
```
Will change to:
If there're only 2 users:
```
- "Use current profile"
- "Use new incognito profile"
- "Use <user 2 name> profile"
```
If there's more than 2 users:
```
- "Use current profile"
- "Use new incognito profile"
- "Use other profile" (opens sheet with list of users)
```
Things to consider:
- hidden users should be excluded from this selection
- choosing different user should make it active and open chat list for this user, then create pending connection there
- should connection plan api take into account all users?
## Other ideas
### Incognito chats in a separate user "profile"
Having incognito conversations interleaved with "main profile" conversations is another point of confusion, as incognito profile is offered as an alternative to main profile, but conversations are still "attached" to it and inherit some of its settings (e.g. servers). We could unite all incognito chats under a new dummy "incognito" user profile. It would have a special representation in UI, not as a regular user profile, but as an incognito mode. It would allow customizing a specific theme, servers, preferences and other settings for all incognito chats.
``` haskell
-- Types
data User = User
{ ...
incognitoUser :: Bool,
...
}
-- Controller
APIConnect UserId IncognitoEnabled (Maybe AConnectionRequestUri)
-- -> changed to ->
APIConnect UserId (Maybe AConnectionRequestUri)
-- since conversation being incognito would be defined by user
```
Considerations / problems:
- migration of existing incognito conversations is non trivial, as it requires migrating both agent and chat connection records to a new user record, in addition to migrating other chat entities.
- some programmatic one-time migration on chat start would be required, e.g.:
- create new user in agent;
- create new user in chat with incognito_user set to true;
- for each (non hidden, see below) user read chat list, update user_id for all chat entities:
- contacts,
- groups,
- group_members,
- contact_profiles,
- chat_items, etc.
- this new user servers would include all servers from users that had incognito conversations (?).
- this seems quite complex error-prone.
- it may be more pragmatic to not migrate old conversations to new user record, but instead filter them out in their respective user chat lists, and filter them in incognito user profile.
- in this case "legacy" incognito conversations would be marked by their user record (avatar/name inside chat list; note inside chat view saying that such and such settings are inherited from user x).
- we could still make a hack to apply same incognito user theme for "legacy" incognito conversations.
- on the other hand the second approach requires loading all chats for the incognito user (this may be related to "All chats view", see below).
- when creating an incognito conversation for a hidden user, it should still be attached to that user.
- or we could create an "incognito hidden user".
- considering complexities, this all seems quite a rabbit hole and may be not worth it..
- MVP may be to do nothing for legacy incognito contacts and just explain it in app. A-la "New incognito conversations will appear here, previously created incognito conversations will stay attached to user profiles they were created in".
### Forward messages between users
Should be somewhat easy in backend:
``` haskell
APIForwardChatItem {toChatRef :: ChatRef, fromChatRef :: ChatRef, chatItemId :: ChatItemId, ttl :: Maybe Int}
-- -> changed to ->
APIForwardChatItem {toUserId :: UserId, toChatRef :: ChatRef, fromUserId :: UserId, fromChatRef :: ChatRef, chatItemId :: ChatItemId, ttl :: Maybe Int}
-- or include UserId into ChatRef
```
More complex in UI - requires "knowing" conversations for other / all users:
- either have all conversations for all users in model.
- or have other users expand in forward list, and request their chat lists at that point.
### Per user network settings
Requires changes in agent and in backend.
In agent requires storing network settings in UserId to settings maps, similar to servers:
``` haskell
data AgentClient = AgentClient
{ ...
useNetworkConfig :: TVar (NetworkConfig, NetworkConfig),
-- -> changed to ->
useNetworkConfig :: TMap UserId (NetworkConfig, NetworkConfig), -- slow/fast per user
}
```
Chat APIs:
``` haskell
APISetNetworkConfig NetworkConfig
APIGetNetworkConfig
-- -> changed to ->
APISetNetworkConfig UserId NetworkConfig
APIGetNetworkConfig UserId
```
### All chats in united list
We could add a view where chats for all users could be viewed in a single list / filtered by users.
We could:
- either always load all chats for all users (see Incognito user, Forward between users above) and have a single api, then filter conversations by user in UI
- or modify/duplicate APIGetChats api and queries.
- in any case may require some rework of pagination queries, as indexes might become inefficient.
``` haskell
APIGetChats {userId :: UserId, pendingConnections :: Bool, pagination :: PaginationByTime, query :: ChatListQuery}
-- -> changed to ->
APIGetChats {pendingConnections :: Bool, pagination :: PaginationByTime, query :: ChatListQuery}
-- or
APIGetChats {userId :: Maybe UserId, pendingConnections :: Bool, pagination :: PaginationByTime, query :: ChatListQuery}
-- with Nothing meaning all
-- or
APIGetChats {userIds :: [UserId], pendingConnections :: Bool, pagination :: PaginationByTime, query :: ChatListQuery}
-- to filter for multiple users? or only filter in UI?
```
### Move chats between user profiles
This would further deepen the illusion of user record being a conversation tag rather than a rigid container for conversations.
There are some of the same issues as described in migration of incognito conversation settings.
"Moved" conversation would still be using servers that were configured for the previous user.
Perhaps it makes more sense to implement after automated queue rotation.
+1 -1
View File
@@ -1,5 +1,5 @@
name: simplex-chat
version: 5.8.0.4
version: 5.8.0.5
#synopsis:
#description:
homepage: https://github.com/simplex-chat/simplex-chat#readme
+1 -1
View File
@@ -1,5 +1,5 @@
{
"https://github.com/simplex-chat/simplexmq.git"."54c80d67c87ab626c58d028f90c8421b340a2e67" = "1ggzvgja4ig43ap1334fsmk16f30zh4v6dfjzfkjashqy5nja5ws";
"https://github.com/simplex-chat/simplexmq.git"."4248a00a14554522f973435fd1214df790482bed" = "0ra09p5nm60rm6k3qks54lmy9xzkjyjna419x6cj4hgf1fgxhkp5";
"https://github.com/simplex-chat/hs-socks.git"."a30cc7a79a08d8108316094f8f2f82a0c5e1ac51" = "0yasvnr7g91k76mjkamvzab2kvlb1g5pspjyjn2fr6v83swjhj38";
"https://github.com/simplex-chat/direct-sqlcipher.git"."f814ee68b16a9447fbb467ccc8f29bdd3546bfd9" = "1ql13f4kfwkbaq7nygkxgw84213i0zm7c1a8hwvramayxl38dq5d";
"https://github.com/simplex-chat/sqlcipher-simple.git"."a46bd361a19376c5211f1058908fc0ae6bf42446" = "1z0r78d8f0812kxbgsm735qf6xx8lvaz27k1a0b4a2m0sshpd5gl";
+1 -1
View File
@@ -5,7 +5,7 @@ cabal-version: 1.12
-- see: https://github.com/sol/hpack
name: simplex-chat
version: 5.8.0.4
version: 5.8.0.5
category: Web, System, Services, Cryptography
homepage: https://github.com/simplex-chat/simplex-chat#readme
author: simplex.chat
+45 -10
View File
@@ -94,7 +94,7 @@ import qualified Simplex.FileTransfer.Description as FD
import Simplex.FileTransfer.Protocol (FileParty (..), FilePartyI)
import qualified Simplex.FileTransfer.Transport as XFTP
import Simplex.Messaging.Agent as Agent
import Simplex.Messaging.Agent.Client (AgentStatsKey (..), SubInfo (..), agentClientStore, getAgentQueuesInfo, getAgentWorkersDetails, getAgentWorkersSummary, ipAddressProtected, temporaryAgentError, withLockMap)
import Simplex.Messaging.Agent.Client (AgentStatsKey (..), SubInfo (..), agentClientStore, getAgentQueuesInfo, getAgentWorkersDetails, getAgentWorkersSummary, getNetworkConfig', ipAddressProtected, temporaryAgentError, withLockMap)
import Simplex.Messaging.Agent.Env.SQLite (AgentConfig (..), InitialAgentServers (..), createAgentStore, defaultAgentConfig)
import Simplex.Messaging.Agent.Lock (withLock)
import Simplex.Messaging.Agent.Protocol
@@ -103,7 +103,7 @@ import Simplex.Messaging.Agent.Store.SQLite (MigrationConfirmation (..), Migrati
import Simplex.Messaging.Agent.Store.SQLite.DB (SlowQueryStats (..))
import qualified Simplex.Messaging.Agent.Store.SQLite.DB as DB
import qualified Simplex.Messaging.Agent.Store.SQLite.Migrations as Migrations
import Simplex.Messaging.Client (ProxyClientError (..), defaultNetworkConfig)
import Simplex.Messaging.Client (ProxyClientError (..), NetworkConfig (..), defaultNetworkConfig)
import qualified Simplex.Messaging.Crypto as C
import Simplex.Messaging.Crypto.File (CryptoFile (..), CryptoFileArgs (..))
import qualified Simplex.Messaging.Crypto.File as CF
@@ -218,7 +218,7 @@ newChatController
ChatDatabase {chatStore, agentStore}
user
cfg@ChatConfig {agentConfig = aCfg, defaultServers, inlineFiles, deviceNameForRemote}
ChatOpts {coreOptions = CoreChatOpts {smpServers, xftpServers, networkConfig, logLevel, logConnections, logServerHosts, logFile, tbqSize, highlyAvailable}, deviceName, optFilesFolder, optTempDirectory, showReactions, allowInstantFiles, autoAcceptFileSize}
ChatOpts {coreOptions = CoreChatOpts {smpServers, xftpServers, simpleNetCfg, logLevel, logConnections, logServerHosts, logFile, tbqSize, highlyAvailable}, deviceName, optFilesFolder, optTempDirectory, showReactions, allowInstantFiles, autoAcceptFileSize}
backgroundMode = do
let inlineFiles' = if allowInstantFiles || autoAcceptFileSize > 0 then inlineFiles else inlineFiles {sendChunks = 0, receiveInstant = False}
config = cfg {logLevel, showReactions, tbqSize, subscriptionEvents = logConnections, hostEvents = logServerHosts, defaultServers = configServers, inlineFiles = inlineFiles', autoAcceptFileSize, highlyAvailable}
@@ -303,7 +303,7 @@ newChatController
let DefaultAgentServers {smp = defSmp, xftp = defXftp} = defaultServers
smp' = fromMaybe defSmp (nonEmpty smpServers)
xftp' = fromMaybe defXftp (nonEmpty xftpServers)
in defaultServers {smp = smp', xftp = xftp', netCfg = networkConfig}
in defaultServers {smp = smp', xftp = xftp', netCfg = updateNetworkConfig defaultNetworkConfig simpleNetCfg}
agentServers :: ChatConfig -> IO InitialAgentServers
agentServers config@ChatConfig {defaultServers = defServers@DefaultAgentServers {ntf, netCfg}} = do
users <- withTransaction chatStore getUsers
@@ -321,6 +321,13 @@ newChatController
userServers :: User -> IO (NonEmpty (ProtoServerWithAuth p))
userServers user' = activeAgentServers config protocol <$> withTransaction chatStore (`getProtocolServers` user')
updateNetworkConfig :: NetworkConfig -> SimpleNetCfg -> NetworkConfig
updateNetworkConfig cfg SimpleNetCfg {socksProxy, smpProxyMode_, smpProxyFallback_, tcpTimeout_, logTLSErrors} =
let cfg1 = maybe cfg (\smpProxyMode -> cfg {smpProxyMode}) smpProxyMode_
cfg2 = maybe cfg1 (\smpProxyFallback -> cfg1 {smpProxyFallback}) smpProxyFallback_
cfg3 = maybe cfg2 (\tcpTimeout -> cfg2 {tcpTimeout, tcpConnectTimeout = (tcpTimeout * 3) `div` 2}) tcpTimeout_
in cfg3 {socksProxy, logTLSErrors}
withChatLock :: String -> CM a -> CM a
withChatLock name action = asks chatLock >>= \l -> withLock l name action
@@ -1342,7 +1349,11 @@ processChatCommand' vr = \case
processChatCommand $ APIGetChatItemTTL userId
APISetNetworkConfig cfg -> withUser' $ \_ -> lift (withAgent' (`setNetworkConfig` cfg)) >> ok_
APIGetNetworkConfig -> withUser' $ \_ ->
lift $ CRNetworkConfig <$> withAgent' getNetworkConfig
CRNetworkConfig <$> lift getNetworkConfig
SetNetworkConfig netCfg -> do
cfg <- lift getNetworkConfig
void . processChatCommand $ APISetNetworkConfig $ updateNetworkConfig cfg netCfg
pure $ CRNetworkConfig cfg
APISetNetworkInfo info -> lift (withAgent' (`setUserNetworkInfo` info)) >> ok_
ReconnectAllServers -> withUser' $ \_ -> lift (withAgent' reconnectAllServers) >> ok_
APISetChatSettings (ChatRef cType chatId) chatSettings -> withUser $ \user -> case cType of
@@ -1379,6 +1390,11 @@ processChatCommand' vr = \case
forM customUserProfileId $ \profileId -> withStore (\db -> getProfileById db userId profileId)
connectionStats <- mapM (withAgent . flip getConnectionServers) (contactConnId ct)
pure $ CRContactInfo user ct connectionStats (fmap fromLocalProfile incognitoProfile)
APIContactQueueInfo contactId -> withUser $ \user -> do
ct@Contact {activeConn} <- withStore $ \db -> getContact db vr user contactId
case activeConn of
Just conn -> getConnQueueInfo user conn
Nothing -> throwChatError $ CEContactNotActive ct
APIGroupInfo gId -> withUser $ \user -> do
(g, s) <- withStore $ \db -> (,) <$> getGroupInfo db vr user gId <*> liftIO (getGroupSummary db user gId)
pure $ CRGroupInfo user g s
@@ -1386,6 +1402,11 @@ processChatCommand' vr = \case
(g, m) <- withStore $ \db -> (,) <$> getGroupInfo db vr user gId <*> getGroupMember db vr user gId gMemberId
connectionStats <- mapM (withAgent . flip getConnectionServers) (memberConnId m)
pure $ CRGroupMemberInfo user g m connectionStats
APIGroupMemberQueueInfo gId gMemberId -> withUser $ \user -> do
GroupMember {activeConn} <- withStore $ \db -> getGroupMember db vr user gId gMemberId
case activeConn of
Just conn -> getConnQueueInfo user conn
Nothing -> throwChatError CEGroupMemberNotActive
APISwitchContact contactId -> withUser $ \user -> do
ct <- withStore $ \db -> getContact db vr user contactId
case contactConnId ct of
@@ -1497,6 +1518,8 @@ processChatCommand' vr = \case
groupId <- withStore $ \db -> getGroupIdByName db user gName
processChatCommand $ APIGroupInfo groupId
GroupMemberInfo gName mName -> withMemberName gName mName APIGroupMemberInfo
ContactQueueInfo cName -> withContactName cName APIContactQueueInfo
GroupMemberQueueInfo gName mName -> withMemberName gName mName APIGroupMemberQueueInfo
SwitchContact cName -> withContactName cName APISwitchContact
SwitchGroupMember gName mName -> withMemberName gName mName APISwitchGroupMember
AbortSwitchContact cName -> withContactName cName APIAbortSwitchContact
@@ -2795,6 +2818,9 @@ processChatCommand' vr = \case
pure CIFile {fileId, fileName = takeFileName filePath, fileSize, fileSource = Just cf, fileStatus = CIFSSndStored, fileProtocol = FPLocal}
let ci = mkChatItem cd ciId content ciFile_ Nothing Nothing itemForwarded Nothing False createdAt Nothing createdAt
pure . CRNewChatItem user $ AChatItem SCTLocal SMDSnd (LocalChat nf) ci
getConnQueueInfo user Connection {connId, agentConnId = AgentConnId acId} = do
msgInfo <- withStore' (`getLastRcvMsgInfo` connId)
CRQueueInfo user msgInfo <$> withAgent (`getConnectionQueueInfo` acId)
contactCITimed :: Contact -> CM (Maybe CITimed)
contactCITimed ct = sndContactCITimed False ct Nothing
@@ -3179,7 +3205,7 @@ receiveViaCompleteFD user fileId RcvFileDescr {fileDescrText, fileDescrComplete}
pure $ filter (`notElem` knownSrvs) srvs
ipProtectedForSrvs :: [XFTPServer] -> CM Bool
ipProtectedForSrvs srvs = do
netCfg <- lift $ withAgent' getNetworkConfig
netCfg <- lift getNetworkConfig
pure $ all (ipAddressProtected netCfg) srvs
relaysNotApproved :: [XFTPServer] -> CM ()
relaysNotApproved unknownSrvs = do
@@ -3187,6 +3213,9 @@ receiveViaCompleteFD user fileId RcvFileDescr {fileDescrText, fileDescrComplete}
forM_ aci_ $ \aci -> toView $ CRChatItemUpdated user aci
throwChatError $ CEFileNotApproved fileId unknownSrvs
getNetworkConfig :: CM' NetworkConfig
getNetworkConfig = withAgent' $ liftIO . getNetworkConfig'
resetRcvCIFileStatus :: User -> FileTransferId -> CIFileStatus 'MDRcv -> CM (Maybe AChatItem)
resetRcvCIFileStatus user fileId ciFileStatus = do
vr <- chatVersionRange
@@ -7320,7 +7349,7 @@ chatCommandP =
"/ttl" $> GetChatItemTTL,
"/_network info " *> (APISetNetworkInfo <$> jsonP),
"/_network " *> (APISetNetworkConfig <$> jsonP),
("/network " <|> "/net ") *> (APISetNetworkConfig <$> netCfgP),
("/network " <|> "/net ") *> (SetNetworkConfig <$> netCfgP),
("/network" <|> "/net") $> APIGetNetworkConfig,
"/reconnect" $> ReconnectAllServers,
"/_settings " *> (APISetChatSettings <$> chatRefP <* A.space <*> jsonP),
@@ -7331,6 +7360,10 @@ chatCommandP =
("/info #" <|> "/i #") *> (GroupMemberInfo <$> displayName <* A.space <* char_ '@' <*> displayName),
("/info #" <|> "/i #") *> (ShowGroupInfo <$> displayName),
("/info " <|> "/i ") *> char_ '@' *> (ContactInfo <$> displayName),
"/_queue info #" *> (APIGroupMemberQueueInfo <$> A.decimal <* A.space <*> A.decimal),
"/_queue info @" *> (APIContactQueueInfo <$> A.decimal),
("/queue info #" <|> "/qi #") *> (GroupMemberQueueInfo <$> displayName <* A.space <* char_ '@' <*> displayName),
("/queue info " <|> "/qi ") *> char_ '@' *> (ContactQueueInfo <$> displayName),
"/_switch #" *> (APISwitchGroupMember <$> A.decimal <* A.space <*> A.decimal),
"/_switch @" *> (APISwitchContact <$> A.decimal),
"/_abort switch #" *> (APIAbortSwitchGroupMember <$> A.decimal <* A.space <*> A.decimal),
@@ -7629,10 +7662,12 @@ chatCommandP =
<|> ("no" $> TMEDisableKeepTTL)
netCfgP = do
socksProxy <- "socks=" *> ("off" $> Nothing <|> "on" $> Just defaultSocksProxy <|> Just <$> strP)
smpProxyMode_ <- optional $ " smp-proxy=" *> strP
smpProxyFallback_ <- optional $ " smp-proxy-fallback=" *> strP
t_ <- optional $ " timeout=" *> A.decimal
logErrors <- " log=" *> onOffP <|> pure False
let tcpTimeout = 1000000 * fromMaybe (maybe 5 (const 10) socksProxy) t_
pure $ fullNetworkConfig socksProxy tcpTimeout logErrors
logTLSErrors <- " log=" *> onOffP <|> pure False
let tcpTimeout_ = (1000000 *) <$> t_
pure $ SimpleNetCfg {socksProxy, smpProxyMode_, smpProxyFallback_, tcpTimeout_, logTLSErrors}
dbKeyP = nonEmptyKey <$?> strP
nonEmptyKey k@(DBEncryptionKey s) = if BA.null s then Left "empty key" else Right k
dbEncryptionConfig currentKey newKey = DBEncryptionConfig {currentKey, newKey, keepKey = Just False}
+21 -1
View File
@@ -75,6 +75,7 @@ import Simplex.Messaging.Agent.Protocol
import Simplex.Messaging.Agent.Store.SQLite (MigrationConfirmation, SQLiteStore, UpMigration, withTransaction)
import Simplex.Messaging.Agent.Store.SQLite.DB (SlowQueryStats (..))
import qualified Simplex.Messaging.Agent.Store.SQLite.DB as DB
import Simplex.Messaging.Client (SMPProxyMode (..), SMPProxyFallback (..))
import qualified Simplex.Messaging.Crypto as C
import Simplex.Messaging.Crypto.File (CryptoFile (..))
import qualified Simplex.Messaging.Crypto.File as CF
@@ -83,9 +84,10 @@ import Simplex.Messaging.Encoding.String
import Simplex.Messaging.Notifications.Protocol (DeviceToken (..), NtfTknStatus)
import Simplex.Messaging.Parsers (defaultJSON, dropPrefix, enumJSON, parseAll, parseString, sumTypeJSON)
import Simplex.Messaging.Protocol (AProtoServerWithAuth, AProtocolType (..), CorrId, NtfServer, ProtoServerWithAuth, ProtocolTypeI, QueueId, SMPMsgMeta (..), SProtocolType, SubscriptionMode (..), UserProtocol, XFTPServer, XFTPServerWithAuth, userProtocol)
import Simplex.Messaging.Server.QueueStore.QueueInfo
import Simplex.Messaging.TMap (TMap)
import Simplex.Messaging.Transport (TLS, simplexMQVersion)
import Simplex.Messaging.Transport.Client (TransportHost)
import Simplex.Messaging.Transport.Client (SocksProxy, TransportHost)
import Simplex.Messaging.Util (allFinally, catchAllErrors, catchAllErrors', tryAllErrors, tryAllErrors', (<$$>))
import Simplex.RemoteControl.Client
import Simplex.RemoteControl.Invitation (RCSignedInvitation, RCVerifiedInvitation)
@@ -350,6 +352,7 @@ data ChatCommand
| GetChatItemTTL
| APISetNetworkConfig NetworkConfig
| APIGetNetworkConfig
| SetNetworkConfig SimpleNetCfg
| APISetNetworkInfo UserNetworkInfo
| ReconnectAllServers
| APISetChatSettings ChatRef ChatSettings
@@ -357,6 +360,8 @@ data ChatCommand
| APIContactInfo ContactId
| APIGroupInfo GroupId
| APIGroupMemberInfo GroupId GroupMemberId
| APIContactQueueInfo ContactId
| APIGroupMemberQueueInfo GroupId GroupMemberId
| APISwitchContact ContactId
| APISwitchGroupMember GroupId GroupMemberId
| APIAbortSwitchContact ContactId
@@ -375,6 +380,8 @@ data ChatCommand
| ContactInfo ContactName
| ShowGroupInfo GroupName
| GroupMemberInfo GroupName ContactName
| ContactQueueInfo ContactName
| GroupMemberQueueInfo GroupName ContactName
| SwitchContact ContactName
| SwitchGroupMember GroupName ContactName
| AbortSwitchContact ContactName
@@ -569,6 +576,7 @@ data ChatResponse
| CRContactInfo {user :: User, contact :: Contact, connectionStats_ :: Maybe ConnectionStats, customUserProfile :: Maybe Profile}
| CRGroupInfo {user :: User, groupInfo :: GroupInfo, groupSummary :: GroupSummary}
| CRGroupMemberInfo {user :: User, groupInfo :: GroupInfo, member :: GroupMember, connectionStats_ :: Maybe ConnectionStats}
| CRQueueInfo {user :: User, rcvMsgInfo :: Maybe RcvMsgInfo, queueInfo :: QueueInfo}
| CRContactSwitchStarted {user :: User, contact :: Contact, connectionStats :: ConnectionStats}
| CRGroupMemberSwitchStarted {user :: User, groupInfo :: GroupInfo, member :: GroupMember, connectionStats :: ConnectionStats}
| CRContactSwitchAborted {user :: User, contact :: Contact, connectionStats :: ConnectionStats}
@@ -954,6 +962,18 @@ data AppFilePathsConfig = AppFilePathsConfig
}
deriving (Show)
data SimpleNetCfg = SimpleNetCfg
{ socksProxy :: Maybe SocksProxy,
smpProxyMode_ :: Maybe SMPProxyMode,
smpProxyFallback_ :: Maybe SMPProxyFallback,
tcpTimeout_ :: Maybe Int,
logTLSErrors :: Bool
}
deriving (Show)
defaultSimpleNetCfg :: SimpleNetCfg
defaultSimpleNetCfg = SimpleNetCfg Nothing Nothing Nothing Nothing False
data ContactSubStatus = ContactSubStatus
{ contact :: Contact,
contactError :: Maybe ChatError
+11
View File
@@ -962,6 +962,15 @@ data RcvMsgDelivery = RcvMsgDelivery
}
deriving (Show)
data RcvMsgInfo = RcvMsgInfo
{ msgId :: Int64,
msgDeliveryId :: Int64,
msgDeliveryStatus :: Text,
agentMsgId :: AgentMsgId,
agentMsgMeta :: Text
}
deriving (Show)
data MsgMetaJSON = MsgMetaJSON
{ integrity :: Text,
rcvId :: Int64,
@@ -1332,3 +1341,5 @@ $(JQ.deriveJSON defaultJSON ''MsgMetaJSON)
msgMetaJson :: MsgMeta -> Text
msgMetaJson = decodeLatin1 . LB.toStrict . J.encode . msgMetaToJson
$(JQ.deriveJSON defaultJSON ''RcvMsgInfo)
+1 -2
View File
@@ -48,7 +48,6 @@ import Simplex.Chat.Types
import Simplex.Messaging.Agent.Client (agentClientStore)
import Simplex.Messaging.Agent.Env.SQLite (createAgentStore)
import Simplex.Messaging.Agent.Store.SQLite (MigrationConfirmation (..), MigrationError, closeSQLiteStore, reopenSQLiteStore)
import Simplex.Messaging.Client (defaultNetworkConfig)
import qualified Simplex.Messaging.Crypto as C
import Simplex.Messaging.Encoding.String
import Simplex.Messaging.Parsers (defaultJSON, dropPrefix, sumTypeJSON)
@@ -192,7 +191,7 @@ mobileChatOpts dbFilePrefix =
dbKey = "", -- for API database is already opened, and the key in options is not used
smpServers = [],
xftpServers = [],
networkConfig = defaultNetworkConfig,
simpleNetCfg = defaultSimpleNetCfg,
logLevel = CLLImportant,
logConnections = False,
logServerHosts = True,
+29 -17
View File
@@ -13,7 +13,6 @@ module Simplex.Chat.Options
coreChatOptsP,
getChatOpts,
protocolServersP,
fullNetworkConfig,
)
where
@@ -22,15 +21,17 @@ import qualified Data.Attoparsec.ByteString.Char8 as A
import Data.ByteArray (ScrubbedBytes)
import qualified Data.ByteString.Char8 as B
import Data.Text (Text)
import qualified Data.Text as T
import Data.Text.Encoding (encodeUtf8)
import Numeric.Natural (Natural)
import Options.Applicative
import Simplex.Chat.Controller (ChatLogLevel (..), updateStr, versionNumber, versionString)
import Simplex.Chat.Controller (ChatLogLevel (..), SimpleNetCfg (..), updateStr, versionNumber, versionString)
import Simplex.FileTransfer.Description (mb)
import Simplex.Messaging.Client (NetworkConfig (..), defaultNetworkConfig)
import Simplex.Messaging.Client (SMPProxyMode (..), SMPProxyFallback (..))
import Simplex.Messaging.Encoding.String
import Simplex.Messaging.Parsers (parseAll)
import Simplex.Messaging.Protocol (ProtoServerWithAuth, ProtocolTypeI, SMPServerWithAuth, XFTPServerWithAuth)
import Simplex.Messaging.Transport.Client (SocksProxy, defaultSocksProxy)
import Simplex.Messaging.Transport.Client (defaultSocksProxy)
import System.FilePath (combine)
data ChatOpts = ChatOpts
@@ -55,7 +56,7 @@ data CoreChatOpts = CoreChatOpts
dbKey :: ScrubbedBytes,
smpServers :: [SMPServerWithAuth],
xftpServers :: [XFTPServerWithAuth],
networkConfig :: NetworkConfig,
simpleNetCfg :: SimpleNetCfg,
logLevel :: ChatLogLevel,
logConnections :: Bool,
logServerHosts :: Bool,
@@ -123,18 +124,34 @@ coreChatOptsP appDir defaultDbFileName = do
socksProxy <-
flag' (Just defaultSocksProxy) (short 'x' <> help "Use local SOCKS5 proxy at :9050")
<|> option
parseSocksProxy
strParse
( long "socks-proxy"
<> metavar "SOCKS5"
<> help "Use SOCKS5 proxy at `ipv4:port` or `:port`"
<> value Nothing
)
smpProxyMode_ <-
optional $
option
strParse
( long "smp-proxy"
<> metavar "SMP_PROXY_MODE"
<> help "Use private message routing: always, unknown, unprotected, never (default)"
)
smpProxyFallback_ <-
optional $
option
strParse
( long "smp-proxy-fallback"
<> metavar "SMP_PROXY_FALLBACK_MODE"
<> help "Allow downgrade and connect directly: no, [when IP address is] protected, yes (default)"
)
t <-
option
auto
( long "tcp-timeout"
<> metavar "TIMEOUT"
<> help "TCP timeout, seconds (default: 5/10 without/with SOCKS5 proxy)"
<> help "TCP timeout, seconds (default: 7/15 without/with SOCKS5 proxy)"
<> value 0
)
logLevel <-
@@ -149,7 +166,7 @@ coreChatOptsP appDir defaultDbFileName = do
logTLSErrors <-
switch
( long "log-tls-errors"
<> help "Log TLS errors (also enabled with `-l debug`)"
<> help "Log TLS errors"
)
logConnections <-
switch
@@ -194,7 +211,7 @@ coreChatOptsP appDir defaultDbFileName = do
dbKey,
smpServers,
xftpServers,
networkConfig = fullNetworkConfig socksProxy (useTcpTimeout socksProxy t) (logTLSErrors || logLevel == CLLDebug),
simpleNetCfg = SimpleNetCfg {socksProxy, smpProxyMode_, smpProxyFallback_, tcpTimeout_ = Just $ useTcpTimeout socksProxy t, logTLSErrors},
logLevel,
logConnections = logConnections || logLevel <= CLLInfo,
logServerHosts = logServerHosts || logLevel <= CLLInfo,
@@ -204,7 +221,7 @@ coreChatOptsP appDir defaultDbFileName = do
highlyAvailable
}
where
useTcpTimeout p t = 1000000 * if t > 0 then t else maybe 5 (const 10) p
useTcpTimeout p t = 1000000 * if t > 0 then t else maybe 7 (const 15) p
defaultDbFilePath = combine appDir defaultDbFileName
chatOptsP :: FilePath -> FilePath -> Parser ChatOpts
@@ -321,16 +338,11 @@ chatOptsP appDir defaultDbFileName = do
maintenance
}
fullNetworkConfig :: Maybe SocksProxy -> Int -> Bool -> NetworkConfig
fullNetworkConfig socksProxy tcpTimeout logTLSErrors =
let tcpConnectTimeout = (tcpTimeout * 3) `div` 2
in defaultNetworkConfig {socksProxy, tcpTimeout, tcpConnectTimeout, logTLSErrors}
parseProtocolServers :: ProtocolTypeI p => ReadM [ProtoServerWithAuth p]
parseProtocolServers = eitherReader $ parseAll protocolServersP . B.pack
parseSocksProxy :: ReadM (Maybe SocksProxy)
parseSocksProxy = eitherReader $ parseAll strP . B.pack
strParse :: StrEncoding a => ReadM a
strParse = eitherReader $ parseAll strP . encodeUtf8 . T.pack
parseServerPort :: ReadM (Maybe String)
parseServerPort = eitherReader $ parseAll serverPortP . B.pack
+2 -2
View File
@@ -72,11 +72,11 @@ import UnliftIO.Directory (copyFile, createDirectoryIfMissing, doesDirectoryExis
-- when acting as host
minRemoteCtrlVersion :: AppVersion
minRemoteCtrlVersion = AppVersion [5, 8, 0, 2]
minRemoteCtrlVersion = AppVersion [5, 8, 0, 4]
-- when acting as controller
minRemoteHostVersion :: AppVersion
minRemoteHostVersion = AppVersion [5, 8, 0, 2]
minRemoteHostVersion = AppVersion [5, 8, 0, 4]
currentAppVersion :: AppVersion
currentAppVersion = AppVersion SC.version
+18
View File
@@ -23,6 +23,7 @@ module Simplex.Chat.Store.Messages
createNewSndMessage,
createSndMsgDelivery,
createNewMessageAndRcvMsgDelivery,
getLastRcvMsgInfo,
createNewRcvMessage,
updateSndMsgDeliveryStatus,
createPendingGroupMessage,
@@ -226,6 +227,23 @@ createNewMessageAndRcvMsgDelivery db connOrGroupId newMessage sharedMsgId_ RcvMs
(msgId, connId, agentMsgId, msgMetaJson agentMsgMeta, snd $ broker agentMsgMeta, currentTs, currentTs, MDSRcvAgent)
pure msg
getLastRcvMsgInfo :: DB.Connection -> Int64 -> IO (Maybe RcvMsgInfo)
getLastRcvMsgInfo db connId =
maybeFirstRow rcvMsgInfo $
DB.query
db
[sql|
SELECT message_id, msg_delivery_id, delivery_status, agent_msg_id, agent_msg_meta
FROM msg_deliveries
WHERE connection_id = ? AND delivery_status IN (?, ?)
ORDER BY created_at DESC, msg_delivery_id DESC
LIMIT 1
|]
(connId, MDSRcvAgent, MDSRcvAcknowledged)
where
rcvMsgInfo (msgId, msgDeliveryId, msgDeliveryStatus, agentMsgId, agentMsgMeta) =
RcvMsgInfo {msgId, msgDeliveryId, msgDeliveryStatus, agentMsgId, agentMsgMeta}
createNewRcvMessage :: forall e. MsgEncodingI e => DB.Connection -> ConnOrGroupId -> NewRcvMessage e -> Maybe SharedMsgId -> Maybe GroupMemberId -> Maybe GroupMemberId -> ExceptT StoreError IO RcvMessage
createNewRcvMessage db connOrGroupId NewRcvMessage {chatMsgEvent, msgBody} sharedMsgId_ authorMember forwardedByMember =
case connOrGroupId of
+9 -5
View File
@@ -6,15 +6,16 @@ module Simplex.Chat.Terminal.Main where
import Control.Concurrent (forkIO, threadDelay)
import Control.Concurrent.STM
import Control.Monad
import Data.Maybe (fromMaybe)
import Data.Time.Clock (getCurrentTime)
import Data.Time.LocalTime (getCurrentTimeZone)
import Network.Socket
import Simplex.Chat.Controller (ChatConfig, ChatController (..), ChatResponse (..), currentRemoteHost, versionNumber, versionString)
import Simplex.Chat.Controller (ChatConfig, ChatController (..), ChatResponse (..), SimpleNetCfg (..), currentRemoteHost, versionNumber, versionString)
import Simplex.Chat.Core
import Simplex.Chat.Options
import Simplex.Chat.Terminal
import Simplex.Chat.View (serializeChatResponse)
import Simplex.Messaging.Client (NetworkConfig (..))
import Simplex.Chat.View (serializeChatResponse, smpProxyModeStr)
import Simplex.Messaging.Client (NetworkConfig (..), defaultNetworkConfig)
import System.Directory (getAppUserDataDirectory)
import System.Exit (exitFailure)
import System.Terminal (withTerminal)
@@ -51,7 +52,7 @@ simplexChatCLI cfg server_ = do
putStrLn $ serializeChatResponse (rh, Just user) ts tz rh r
welcome :: ChatOpts -> IO ()
welcome ChatOpts {coreOptions = CoreChatOpts {dbFilePrefix, networkConfig}} =
welcome ChatOpts {coreOptions = CoreChatOpts {dbFilePrefix, simpleNetCfg = SimpleNetCfg {socksProxy, smpProxyMode_, smpProxyFallback_}}} =
mapM_
putStrLn
[ versionString versionNumber,
@@ -59,6 +60,9 @@ welcome ChatOpts {coreOptions = CoreChatOpts {dbFilePrefix, networkConfig}} =
maybe
"direct network connection - use `/network` command or `-x` CLI option to connect via SOCKS5 at :9050"
(("using SOCKS5 proxy " <>) . show)
(socksProxy networkConfig),
socksProxy,
smpProxyModeStr
(fromMaybe (smpProxyMode defaultNetworkConfig) smpProxyMode_)
(fromMaybe (smpProxyFallback defaultNetworkConfig) smpProxyFallback_),
"type \"/help\" or \"/h\" for usage info"
]
+34 -22
View File
@@ -13,7 +13,6 @@ module Simplex.Chat.View where
import qualified Data.Aeson as J
import qualified Data.Aeson.TH as JQ
import Data.ByteString.Char8 (ByteString)
import qualified Data.ByteString.Char8 as B
import qualified Data.ByteString.Lazy.Char8 as LB
import Data.Char (isSpace, toUpper)
@@ -56,6 +55,7 @@ import Simplex.Messaging.Agent.Client (ProtocolTestFailure (..), ProtocolTestSte
import Simplex.Messaging.Agent.Env.SQLite (NetworkConfig (..))
import Simplex.Messaging.Agent.Protocol
import Simplex.Messaging.Agent.Store.SQLite.DB (SlowQueryStats (..))
import Simplex.Messaging.Client (SMPProxyMode (..), SMPProxyFallback)
import qualified Simplex.Messaging.Crypto as C
import Simplex.Messaging.Crypto.File (CryptoFile (..), CryptoFileArgs (..))
import qualified Simplex.Messaging.Crypto.Ratchet as CR
@@ -65,7 +65,7 @@ import Simplex.Messaging.Parsers (dropPrefix, taggedObjectJSON)
import Simplex.Messaging.Protocol (AProtoServerWithAuth (..), AProtocolType, ProtoServerWithAuth, ProtocolServer (..), ProtocolTypeI, SProtocolType (..))
import qualified Simplex.Messaging.Protocol as SMP
import Simplex.Messaging.Transport.Client (TransportHost (..))
import Simplex.Messaging.Util (bshow, tshow)
import Simplex.Messaging.Util (bshow, safeDecodeUtf8, tshow)
import Simplex.Messaging.Version hiding (version)
import Simplex.RemoteControl.Types (RCCtrlAddress (..))
import System.Console.ANSI.Types
@@ -90,10 +90,10 @@ responseToView hu@(currentRH, user_) ChatConfig {logLevel, showReactions, showRe
CRChatRunning -> ["chat is running"]
CRChatStopped -> ["chat stopped"]
CRChatSuspended -> ["chat suspended"]
CRApiChats u chats -> ttyUser u $ if testView then testViewChats chats else [plain . bshow $ J.encode chats]
CRApiChats u chats -> ttyUser u $ if testView then testViewChats chats else [viewJSON chats]
CRChats chats -> viewChats ts tz chats
CRApiChat u chat -> ttyUser u $ if testView then testViewChat chat else [plain . bshow $ J.encode chat]
CRApiParsedMarkdown ft -> [plain . bshow $ J.encode ft]
CRApiChat u chat -> ttyUser u $ if testView then testViewChat chat else [viewJSON chat]
CRApiParsedMarkdown ft -> [viewJSON ft]
CRUserProtoServers u userServers -> ttyUser u $ viewUserServers userServers testView
CRServerTestResult u srv testFailure -> ttyUser u $ viewServerTestResult srv testFailure
CRChatItemTTL u ttl -> ttyUser u $ viewChatItemTTL ttl
@@ -101,6 +101,10 @@ responseToView hu@(currentRH, user_) ChatConfig {logLevel, showReactions, showRe
CRContactInfo u ct cStats customUserProfile -> ttyUser u $ viewContactInfo ct cStats customUserProfile
CRGroupInfo u g s -> ttyUser u $ viewGroupInfo g s
CRGroupMemberInfo u g m cStats -> ttyUser u $ viewGroupMemberInfo g m cStats
CRQueueInfo _ msgInfo qInfo ->
[ "last received msg: " <> maybe "none" viewJSON msgInfo,
"server queue info: " <> viewJSON qInfo
]
CRContactSwitchStarted {} -> ["switch started"]
CRGroupMemberSwitchStarted {} -> ["switch started"]
CRContactSwitchAborted {} -> ["switch aborted"]
@@ -220,7 +224,7 @@ responseToView hu@(currentRH, user_) ChatConfig {logLevel, showReactions, showRe
CRSndFileError u (Just ci) _ e -> ttyUser u $ uploadingFile "error" ci <> [plain e]
CRSndFileRcvCancelled u _ ft@SndFileTransfer {recipientDisplayName = c} ->
ttyUser u [ttyContact c <> " cancelled receiving " <> sndFile ft]
CRStandaloneFileInfo info_ -> maybe ["no file information in URI"] (\j -> [plain . LB.toStrict $ J.encode j]) info_
CRStandaloneFileInfo info_ -> maybe ["no file information in URI"] (\j -> [viewJSON j]) info_
CRContactConnecting u _ -> ttyUser u []
CRContactConnected u ct userCustomProfile -> ttyUser u $ viewContactConnected ct userCustomProfile testView
CRContactAnotherClient u c -> ttyUser u [ttyContact' c <> ": contact is connected to another client"]
@@ -314,7 +318,7 @@ responseToView hu@(currentRH, user_) ChatConfig {logLevel, showReactions, showRe
]
CRRemoteFileStored rhId (CryptoFile filePath cfArgs_) ->
[plain $ "file " <> filePath <> " stored on remote host " <> show rhId]
<> maybe [] ((: []) . plain . cryptoFileArgsStr testView) cfArgs_
<> maybe [] ((: []) . cryptoFileArgsStr testView) cfArgs_
CRRemoteCtrlList cs -> viewRemoteCtrls cs
CRRemoteCtrlFound {remoteCtrl = RemoteCtrlInfo {remoteCtrlId, ctrlDeviceName}, ctrlAppInfo_, appVersion, compatible} ->
[ ("remote controller " <> sShow remoteCtrlId <> " found: ")
@@ -346,8 +350,8 @@ responseToView hu@(currentRH, user_) ChatConfig {logLevel, showReactions, showRe
in ("Chat queries" : map viewQuery chatQueries) <> [""] <> ("Agent queries" : map viewQuery agentQueries)
CRDebugLocks {chatLockName, chatEntityLocks, agentLocks} ->
[ maybe "no chat lock" (("chat lock: " <>) . plain) chatLockName,
plain $ "chat entity locks: " <> LB.unpack (J.encode chatEntityLocks),
plain $ "agent locks: " <> LB.unpack (J.encode agentLocks)
"chat entity locks: " <> viewJSON chatEntityLocks,
"agent locks: " <> viewJSON agentLocks
]
CRAgentStats stats -> map (plain . intercalate ",") stats
CRAgentSubs {activeSubs, pendingSubs, removedSubs} ->
@@ -362,12 +366,12 @@ responseToView hu@(currentRH, user_) ChatConfig {logLevel, showReactions, showRe
("active subscriptions:" : map sShow activeSubscriptions)
<> ("pending subscriptions: " : map sShow pendingSubscriptions)
<> ("removed subscriptions: " : map sShow removedSubscriptions)
CRAgentWorkersSummary {agentWorkersSummary} -> ["agent workers summary: " <> plain (LB.unpack $ J.encode agentWorkersSummary)]
CRAgentWorkersSummary {agentWorkersSummary} -> ["agent workers summary: " <> viewJSON agentWorkersSummary]
CRAgentWorkersDetails {agentWorkersDetails} ->
[ "agent workers details:",
plain . LB.unpack $ J.encode agentWorkersDetails -- this would be huge, but copypastable when has its own line
viewJSON agentWorkersDetails -- this would be huge, but copypastable when has its own line
]
CRAgentMsgCounts {msgCounts} -> ["received messages (total, duplicates):", plain . LB.unpack $ J.encode msgCounts]
CRAgentMsgCounts {msgCounts} -> ["received messages (total, duplicates):", viewJSON msgCounts]
CRAgentQueuesInfo {agentQueuesInfo} ->
[ "agent queues info:",
plain . LB.unpack $ J.encode agentQueuesInfo
@@ -389,7 +393,7 @@ responseToView hu@(currentRH, user_) ChatConfig {logLevel, showReactions, showRe
CRChatError u e -> ttyUser' u $ viewChatError False logLevel testView e
CRChatErrors u errs -> ttyUser' u $ concatMap (viewChatError False logLevel testView) errs
CRArchiveImported archiveErrs -> if null archiveErrs then ["ok"] else ["archive import errors: " <> plain (show archiveErrs)]
CRAppSettings as -> ["app settings: " <> plain (LB.unpack $ J.encode as)]
CRAppSettings as -> ["app settings: " <> viewJSON as]
CRTimedAction _ _ -> []
CRCustomChatResponse u r -> ttyUser' u $ [plain r]
where
@@ -1202,12 +1206,17 @@ viewChatItemTTL = \case
deletedAfter ttlStr = ["old messages are set to be deleted after: " <> ttlStr]
viewNetworkConfig :: NetworkConfig -> [StyledString]
viewNetworkConfig NetworkConfig {socksProxy, tcpTimeout} =
viewNetworkConfig NetworkConfig {socksProxy, tcpTimeout, smpProxyMode, smpProxyFallback} =
[ plain $ maybe "direct network connection" (("using SOCKS5 proxy " <>) . show) socksProxy,
"TCP timeout: " <> sShow tcpTimeout,
"use " <> highlight' "/network socks=<on/off/[ipv4]:port>[ timeout=<seconds>]" <> " to change settings"
plain $ smpProxyModeStr smpProxyMode smpProxyFallback,
"use " <> highlight' "/network socks=<on/off/[ipv4]:port>[ timeout=<seconds>][ smp-proxy=always/unknown/unprotected/never][ smp-proxy-fallback=no/protected/yes]" <> " to change settings"
]
smpProxyModeStr :: SMPProxyMode -> SMPProxyFallback -> String
smpProxyModeStr SPMNever _ = "private message routing disabled."
smpProxyModeStr mode fallback = T.unpack $ safeDecodeUtf8 $ "private message routing mode: " <> strEncode mode <> ", fallback: " <> strEncode fallback
viewContactInfo :: Contact -> Maybe ConnectionStats -> Maybe Profile -> [StyledString]
viewContactInfo ct@Contact {contactId, profile = LocalProfile {localAlias, contactLink}, activeConn, uiThemes, customData} stats incognitoProfile =
["contact ID: " <> sShow contactId]
@@ -1233,10 +1242,10 @@ viewGroupInfo GroupInfo {groupId, uiThemes, customData} s =
<> viewCustomData customData
viewUITheme :: Maybe UIThemeEntityOverrides -> [StyledString]
viewUITheme = maybe [] (\uiThemes -> ["UI themes: " <> plain (LB.toStrict $ J.encode uiThemes)])
viewUITheme = maybe [] (\uiThemes -> ["UI themes: " <> viewJSON uiThemes])
viewCustomData :: Maybe CustomData -> [StyledString]
viewCustomData = maybe [] (\(CustomData v) -> ["custom data: " <> plain (LB.toStrict . J.encode $ J.Object v)])
viewCustomData = maybe [] (\(CustomData v) -> ["custom data: " <> viewJSON (J.Object v)])
viewGroupMemberInfo :: GroupInfo -> GroupMember -> Maybe ConnectionStats -> [StyledString]
viewGroupMemberInfo GroupInfo {groupId} m@GroupMember {groupMemberId, memberProfile = LocalProfile {localAlias, contactLink}, activeConn} stats =
@@ -1678,7 +1687,7 @@ receivingFile_' :: (Maybe RemoteHostId, Maybe User) -> Bool -> String -> AChatIt
receivingFile_' hu testView status (AChatItem _ _ chat ChatItem {file = Just CIFile {fileId, fileName, fileSource = Just f@(CryptoFile _ cfArgs_)}, chatDir}) =
[plain status <> " receiving " <> fileTransferStr fileId fileName <> fileFrom chat chatDir] <> cfArgsStr cfArgs_ <> getRemoteFileStr
where
cfArgsStr (Just cfArgs) = [plain (cryptoFileArgsStr testView cfArgs) | status == "completed"]
cfArgsStr (Just cfArgs) = [cryptoFileArgsStr testView cfArgs | status == "completed"]
cfArgsStr _ = []
getRemoteFileStr = case hu of
(Just rhId, Just User {userId})
@@ -1699,10 +1708,10 @@ viewLocalFile to CIFile {fileId, fileSource} ts tz = case fileSource of
Just (CryptoFile fPath _) -> sentWithTime_ ts tz [to <> fileTransferStr fileId fPath]
_ -> const []
cryptoFileArgsStr :: Bool -> CryptoFileArgs -> ByteString
cryptoFileArgsStr :: Bool -> CryptoFileArgs -> StyledString
cryptoFileArgsStr testView cfArgs@(CFArgs key nonce)
| testView = LB.toStrict $ J.encode cfArgs
| otherwise = "encryption key: " <> strEncode key <> ", nonce: " <> strEncode nonce
| testView = viewJSON cfArgs
| otherwise = plain $ "encryption key: " <> strEncode key <> ", nonce: " <> strEncode nonce
fileFrom :: ChatInfo c -> CIDirection c d -> StyledString
fileFrom (DirectChat ct) CIDirectRcv = " from " <> ttyContact' ct
@@ -1820,7 +1829,7 @@ viewCallAnswer ct WebRTCSession {rtcSession = answer, rtcIceCandidates = iceCand
[ ttyContact' ct <> " continued the WebRTC call",
"To connect, please paste the data below in your browser window you opened earlier and click Connect button",
"",
plain . LB.toStrict . J.encode $ WCCallAnswer {answer, iceCandidates}
viewJSON WCCallAnswer {answer, iceCandidates}
]
callMediaStr :: CallType -> StyledString
@@ -2078,6 +2087,9 @@ viewConnectionEntityInactive entity inactive
| inactive = ["[" <> connEntityLabel entity <> "] connection is marked as inactive"]
| otherwise = ["[" <> connEntityLabel entity <> "] inactive connection is marked as active"]
viewJSON :: J.ToJSON a => a -> StyledString
viewJSON = plain . LB.toStrict . J.encode
connEntityLabel :: ConnectionEntity -> StyledString
connEntityLabel = \case
RcvDirectMsgConnection _ (Just Contact {localDisplayName = c}) -> plain c
+5 -4
View File
@@ -25,7 +25,7 @@ import Data.Maybe (isNothing)
import qualified Data.Text as T
import Network.Socket
import Simplex.Chat
import Simplex.Chat.Controller (ChatCommand (..), ChatConfig (..), ChatController (..), ChatDatabase (..), ChatLogLevel (..))
import Simplex.Chat.Controller (ChatCommand (..), ChatConfig (..), ChatController (..), ChatDatabase (..), ChatLogLevel (..), defaultSimpleNetCfg)
import Simplex.Chat.Core
import Simplex.Chat.Options
import Simplex.Chat.Protocol (currentChatVersion, pqEncryptionCompressionVersion)
@@ -44,7 +44,7 @@ import Simplex.Messaging.Agent.Protocol (currentSMPAgentVersion, duplexHandshake
import Simplex.Messaging.Agent.RetryInterval
import Simplex.Messaging.Agent.Store.SQLite (MigrationConfirmation (..), closeSQLiteStore)
import qualified Simplex.Messaging.Agent.Store.SQLite.DB as DB
import Simplex.Messaging.Client (ProtocolClientConfig (..), defaultNetworkConfig)
import Simplex.Messaging.Client (ProtocolClientConfig (..))
import Simplex.Messaging.Client.Agent (defaultSMPClientAgentConfig)
import Simplex.Messaging.Crypto.Ratchet (supportedE2EEncryptVRange)
import qualified Simplex.Messaging.Crypto.Ratchet as CR
@@ -94,7 +94,7 @@ testCoreOpts =
-- dbKey = "this is a pass-phrase to encrypt the database",
smpServers = ["smp://LcJUMfVhwD8yxjAiSaDzzGF3-kLG4Uh0Fl_ZIjrRwjI=:server_password@localhost:7001"],
xftpServers = ["xftp://LcJUMfVhwD8yxjAiSaDzzGF3-kLG4Uh0Fl_ZIjrRwjI=:server_password@localhost:7002"],
networkConfig = defaultNetworkConfig,
simpleNetCfg = defaultSimpleNetCfg,
logLevel = CLLImportant,
logConnections = False,
logServerHosts = False,
@@ -473,7 +473,8 @@ xftpServerConfig =
serverStatsLogFile = "tests/tmp/xftp-server-stats.daily.log",
serverStatsBackupFile = Nothing,
controlPort = Nothing,
transportConfig = defaultTransportServerConfig
transportConfig = defaultTransportServerConfig,
responseDelay = 0
}
withXFTPServer :: IO () -> IO ()
+1 -1
View File
@@ -240,7 +240,7 @@
"signing-key-fingerprint": "توقيع مفتاح البصمة (SHA-256)",
"f-droid-org-repo": "مستودع F-Droid.org",
"stable-versions-built-by-f-droid-org": "الإصدارات الثابتة التي تم إنشاؤها بواسطة F-Droid.org",
"releases-to-this-repo-are-done-1-2-days-later": "يتم إصدار الإصدارات إلى هذا المستودع بعد يوم أو يومين",
"releases-to-this-repo-are-done-1-2-days-later": "تتم الإصدارات إلى هذا المستودع بعد عِدة أيام",
"f-droid-page-simplex-chat-repo-section-text": "لإضافته إلى عميل F-Droid، <span class='hide-on-mobile'>امسح رمز QR أو</span> استخدم عنوان URL هذا:",
"f-droid-page-f-droid-org-repo-section-text": "مستودعات SimpleX Chat و F-Droid.org مبنية على مفاتيح مختلفة. للتبديل، يُرجى <a href='/docs/guide/chat-profiles.html#move-your-chat-profiles-to-another-device'>تصدير</a> قاعدة بيانات الدردشة وإعادة تثبيت التطبيق.",
"comparison-section-list-point-4a": "مُرحلات SimpleX لا يمكنها أن تتنازل عن تعمية بين الطرفين. تحقق من رمز الأمان للتخفيف من الهجوم على القناة خارج النطاق",
+259
View File
@@ -0,0 +1,259 @@
{
"home": "Főoldal",
"developers": "Fejlesztők",
"reference": "Referencia",
"blog": "Blog",
"features": "Funkciók",
"why-simplex": "Miért válassza a SimpleX-t",
"simplex-privacy": "SimpleX adatvédelem",
"simplex-network": "SimpleX hálózat",
"simplex-explained": "Simplex bemutatása",
"simplex-explained-tab-1-text": "1. Felhasználói élmény",
"simplex-explained-tab-2-text": "2. Hogyan működik",
"simplex-explained-tab-3-text": "3. Mit látnak a kiszolgálók",
"simplex-explained-tab-1-p-1": "Létrehozhat kapcsolatokat és csoportokat, valamint kétirányú beszélgetéseket folytathat, mint bármely más üzenetküldőben.",
"simplex-explained-tab-1-p-2": "Hogyan működhet egyirányú üzenet várakoztatással és felhasználói profil azonosítók nélkül?",
"simplex-explained-tab-2-p-1": "Minden kapcsolathoz két különböző üzenetküldési várakoztatást használ a különböző kiszolgálókon keresztül történő üzenetküldéshez és -fogadáshoz.",
"simplex-explained-tab-2-p-2": "A kiszolgálók csak egyirányú üzeneteket továbbítanak, anélkül, hogy teljes képet kapnának a felhasználók beszélgetéseiről vagy kapcsolatairól.",
"simplex-explained-tab-3-p-1": "A kiszolgálók minden egyes üzenet várakoztatáshoz külön névtelen hitelesítő adatokkal rendelkeznek, és nem tudják, hogy melyik felhasználóhoz tartoznak.",
"simplex-explained-tab-3-p-2": "A felhasználók tovább fokozhatják a metaadatok adatvédelmét, ha a Tor segítségével férnek hozzá a kiszolgálókhoz, megakadályozva az IP-cím szerinti korrelációt.",
"smp-protocol": "SMP protokoll",
"chat-protocol": "Csevegés protokoll",
"donate": "Támogatás",
"copyright-label": "© 2020-2023 SimpleX | Nyílt forráskódú projekt",
"simplex-chat-protocol": "SimpleX Chat protokoll",
"terminal-cli": "Terminál CLI",
"terms-and-privacy-policy": "Adatvédelmi irányelvek",
"hero-header": "Újradefiniált adatvédelem",
"hero-subheader": "Az első üzenetküldő<br>felhasználói azonosítók nélkül",
"hero-p-1": "Más alkalmazások felhasználói azonosítókkal rendelkeznek: Signal, Matrix, Session, Briar, Jami, Cwtch, stb.<br> A SimpleX nem, <strong>még véletlenszerű számok sem</strong>.<br> Ez radikálisan javítja az adatvédelmet.",
"hero-overlay-1-textlink": "Miért ártanak a felhasználói azonosítók az adatvédelemnek?",
"hero-overlay-2-textlink": "Hogyan működik a SimpleX?",
"hero-overlay-3-textlink": "A biztonság értékelése",
"hero-2-header": "Privát kapcsolat létrehozása",
"hero-2-header-desc": "A videó bemutatja, hogyan kapcsolódhat az ismerőséhez egy egyszer használatos QR-kód segítségével, személyesen vagy videokapcsolaton keresztül. Ugyanakkor egy meghívó megosztásával is kapcsolódhat.",
"hero-overlay-1-title": "Hogyan működik a SimpleX?",
"hero-overlay-2-title": "Miért ártanak a felhasználói azonosítók az adatvédelemnek?",
"hero-overlay-3-title": "A biztonság értékelése",
"feature-1-title": "E2E-titkosított üzenetek markdown formázással és szerkesztéssel",
"feature-2-title": "E2E-titkosított<br>képek, videók és fájlok",
"feature-3-title": "E2E-titkosított decentralizált csoportok &mdash; csak a felhasználók tudják, hogy ezek léteznek",
"feature-4-title": "E2E-titkosított hangüzenetek",
"feature-5-title": "Eltűnő üzenetek",
"feature-6-title": "E2E-titkosított<br>hang- és videohívások",
"feature-7-title": "Hordozható titkosított alkalmazás-adattárolás &mdash; profil áthelyezése egy másik eszközre",
"feature-8-title": "Az inkognitó mód &mdash;<br>egyedülálló a SimpleX Chat-ben",
"simplex-network-overlay-1-title": "Összehasonlítás más P2P üzenetküldő protokollokkal",
"simplex-private-1-title": "2 rétegű végpontok közötti titkosítás",
"simplex-private-2-title": "További rétege a<br>kiszolgáló titkosítás",
"simplex-private-4-title": "Opcionális<br>hozzáférés Tor-on keresztül",
"simplex-private-5-title": "Több rétegű<br>tartalom kitöltés",
"simplex-private-6-title": "Sávon kívüli<br>kulcscsere",
"simplex-private-7-title": "Üzenetintegritás<br>hitelesítés",
"simplex-private-8-title": "Üzenetek keverése<br>a korreláció csökkentése érdekében",
"simplex-private-9-title": "Egyirányú<br>üzenet várakoztatás",
"simplex-private-10-title": "Ideiglenes névtelen páronkénti azonosítók",
"simplex-private-card-1-point-1": "Dupla-ratchet protokoll &mdash;<br>OTR üzenetküldés, sérülés utáni titkosság-védelemmel és -helyreállítással.",
"simplex-private-card-1-point-2": "NaCL cryptobox minden egyes üzenet várakoztatáshoz, hogy megakadályozza a forgalom korrelációját az üzenet várakoztatások között, ha a TLS veszélybe kerül.",
"simplex-private-card-2-point-1": "Kiegészítő kiszolgáló titkosítási réteg a címzettnek történő kézbesítéshez, hogy megakadályozza a fogadott és az elküldött kiszolgálóforgalom közötti korrelációt, ha a TLS veszélybe kerül.",
"simplex-private-card-3-point-1": "Az ügyfél-kiszolgáló kapcsolatokhoz csak az erős algoritmusokkal rendelkező TLS 1.2/1.3 protokollt használ.",
"simplex-private-card-3-point-2": "A kiszolgáló ujjlenyomata és a csatornakötés megakadályozza a MITM- és a visszajátszási támadásokat.",
"simplex-private-card-3-point-3": "Az újrakapcsolódás le van tiltva a munkamenet elleni támadások megelőzése érdekében.",
"simplex-private-card-4-point-1": "Az IP-címe védelme érdekében a kiszolgálókat a Tor-on vagy más átviteli fedett hálózaton keresztül érheti el.",
"simplex-private-card-6-point-1": "Számos kommunikációs platform sebezhető a kiszolgálók vagy a hálózati szolgáltatók MITM-támadásaival szemben.",
"simplex-private-card-6-point-2": "Ennek megakadályozása érdekében a SimpleX-alkalmazások egyszeri kulcsokat adnak át sávon kívül, amikor egy címet hivatkozásként vagy QR-kódként oszt meg.",
"simplex-private-card-7-point-1": "Az integritás garantálása érdekében az üzenetek sorszámozással vannak ellátva, és tartalmazzák az előző üzenet hash-ét.",
"simplex-private-card-7-point-2": "Ha bármilyen üzenetet hozzáadnak, eltávolítanak vagy módosítanak, a címzett értesítést kap róla.",
"simplex-private-card-8-point-1": "A SimpleX-kiszolgálók alacsony késleltetésű keverési csomópontokként működnek &mdash; a bejövő és kimenő üzenetek sorrendje eltérő.",
"simplex-private-card-9-point-1": "Minden üzenetet egyetlen irányba várakoztat, a különböző küldési és vételi címekkel.",
"simplex-private-card-9-point-2": "A hagyományos üzenetküldőkhöz képest csökkenti a támadási vektorokat és a rendelkezésre álló metaadatokat.",
"simplex-private-card-10-point-1": "A SimpleX ideiglenes névtelen páros címeket és hitelesítő adatokat használ minden egyes felhasználói kapcsolat vagy csoporttag számára.",
"simplex-private-card-10-point-2": "Lehetővé teszi az üzenetek felhasználói profilazonosítók nélküli kézbesítését, ami az alternatíváknál jobb metaadat-védelmet biztosít.",
"privacy-matters-1-overlay-1-title": "Az adatvédelemmel pénzt spórol meg",
"privacy-matters-1-overlay-1-linkText": "Az adatvédelemmel pénzt spórol meg",
"privacy-matters-2-title": "A választások manipulálása",
"privacy-matters-2-overlay-1-title": "Az adatvédelem hatalmat ad",
"privacy-matters-2-overlay-1-linkText": "Az adatvédelem hatalmat ad",
"privacy-matters-3-title": "Ártatlan összefüggés miatti vádemelés",
"privacy-matters-3-overlay-1-title": "Az adatvédelem szabaddá tesz",
"privacy-matters-3-overlay-1-linkText": "Az adatvédelem szabaddá tesz",
"simplex-unique-1-title": "Teljes magánéletet élvezhet",
"simplex-unique-1-overlay-1-title": "Személyazonosságának, profiljának, kapcsolatainak és metaadatainak teljes körű védelme",
"simplex-unique-2-title": "Véd<br>a spamektől és a visszaélésektől",
"simplex-unique-2-overlay-1-title": "A legjobb védelem a spam és a visszaélések ellen",
"simplex-unique-3-title": "Az ön adatai fölött csak ön rendelkezik",
"simplex-unique-3-overlay-1-title": "Az ön adatai fölött csak ön rendelkezik",
"simplex-unique-4-title": "Öné a SimpleX hálózat",
"simplex-unique-4-overlay-1-title": "Teljesen decentralizált &mdash; a SimpleX hálózat a felhasználóké",
"hero-overlay-card-1-p-1": "Sok felhasználó kérdezte: <em>ha a SimpleX-nek nincsenek felhasználói azonosítói, honnan tudja, hová kell eljuttatni az üzeneteket?</em>",
"hero-overlay-card-1-p-2": "Az üzenetek kézbesítéséhez az összes többi platform által használt felhasználói azonosítók helyett a SimpleX az üzenetek várakoztatásához ideiglenes, névtelen, páros azonosítókat használ, külön-külön minden egyes kapcsolathoz &mdash; nincsenek hosszú távú azonosítók.",
"hero-overlay-card-1-p-4": "Ez a kialakítás megakadályozza a felhasználók metaadatainak kiszivárgását az alkalmazás szintjén. Az adatvédelem további javítása és az IP-cím védelme érdekében az üzenetküldő kiszolgálókhoz Tor hálózaton keresztül is kapcsolódhat.",
"hero-overlay-card-1-p-5": "Csak a kliensek tárolják a felhasználói profilokat, kapcsolatokat és csoportokat; az üzenetek küldése 2 rétegű végpontok közötti titkosítással történik.",
"hero-overlay-card-1-p-6": "További leírást a <a href='https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md' target='_blank'>SimpleX ismertetőben</a> olvashat.",
"hero-overlay-card-2-p-1": "Ha a felhasználók állandó azonosítóval rendelkeznek, még akkor is, ha ez csak egy véletlenszerű szám, például egy munkamenet-azonosító, fennáll annak a veszélye, hogy a szolgáltató vagy egy támadó megfigyelheti, hogyan kapcsolódnak a felhasználók, és hány üzenetet küldenek.",
"hero-overlay-card-2-p-2": "Ezt az információt aztán összefüggésbe hozhatják a meglévő nyilvános közösségi hálózatokkal, és meghatározhatnak néhány valódi személyazonosságot.",
"hero-overlay-card-2-p-3": "Még a Tor v3 szolgáltatásokat használó, legprivátabb alkalmazások esetében is, ha két különböző kapcsolattartóval beszél ugyanazon a profilon keresztül, bizonyítani tudják, hogy ugyanahhoz a személyhez kapcsolódnak.",
"hero-overlay-card-2-p-4": "A SimpleX úgy védekezik ezek ellen a támadások ellen, hogy nem tartalmaz felhasználói azonosítókat. Ha pedig használja az inkognitó módot, akkor minden egyes létrejött kapcsolatban más-más felhasználó név jelenik meg, így elkerülhető a közöttük lévő összefüggések bizonyítása.",
"hero-overlay-card-3-p-1": "<a href=\"https://www.trailofbits.com/about/\">Trail of Bits</a> egy vezető biztonsági és technológiai tanácsadó cég, amelynek ügyfelei közé tartoznak a nagy technológiai cégek, kormányzati ügynökségek és jelentős blokklánc projektek.",
"hero-overlay-card-3-p-2": "A Trail of Bits 2022 novemberében áttekintette a SimpleX platform kriptográfiai és hálózati komponenseit.",
"simplex-network-overlay-card-1-li-1": "A P2P-hálózatok az üzenetek továbbítására a <a href='https://en.wikipedia.org/wiki/Distributed_hash_table'>DHT</a> valamelyik változatát használják. A DHT kialakításakor egyensúlyt kell teremteni a kézbesítési garancia és a késleltetés között. A SimpleX jobb kézbesítési garanciával és alacsonyabb késleltetéssel rendelkezik, mint a P2P, mivel az üzenet redundánsan, a címzett által kiválasztott kiszolgálók segítségével több kiszolgálón keresztül párhuzamosan továbbítható. A P2P-hálózatokban az üzenet <em>O(log N)</em> csomóponton halad át szekvenciálisan, az algoritmus által kiválasztott csomópontok segítségével.",
"simplex-network-overlay-card-1-li-2": "A SimpleX kialakítása a legtöbb P2P-hálózattól eltérően nem rendelkezik semmiféle globális felhasználói azonosítóval, még ideiglenesen sem, és csak ideiglenes páros azonosítókat használ, ami jobb névtelenséget és metaadatvédelmet biztosít.",
"simplex-network-overlay-card-1-li-3": "A P2P nem oldja meg a <a href='https://en.wikipedia.org/wiki/Man-in-the-middle_attack'>MITM-támadás</a> problémát, és a legtöbb létező implementáció nem használ sávon kívüli üzeneteket a kezdeti kulcscseréhez. A SimpleX a kezdeti kulcscseréhez sávon kívüli üzeneteket, vagy bizonyos esetekben már meglévő biztonságos és megbízható kapcsolatokat használ.",
"simplex-network-overlay-card-1-li-5": "Minden ismert P2P-hálózat sebezhető <a href='https://en.wikipedia.org/wiki/Sybil_attack'>Sybil támadással</a>, mert minden egyes csomópont felderíthető, és a hálózat egészként működik. A támadások enyhítésére szolgáló ismert intézkedés lehet egy központi kiszolgáló (pl.: tracker), vagy egy drága <a href='https://en.wikipedia.org/wiki/Proof_of_work'>tanúsítvány</a>. A SimpleX hálózat nem ismeri fel a kiszolgálókat, töredezett és több elszigetelt alhálózatként működik, ami lehetetlenné teszi az egész hálózatra kiterjedő támadásokat.",
"simplex-network-overlay-card-1-li-6": "A P2P-hálózatok sebezhetőek lehetnek a <a href='https://www.usenix.org/conference/woot15/workshop-program/presentation/p2p-file-sharing-hell-exploiting-bittorrent'>DRDoS-támadással</a> szemben, amikor a kliensek képesek a forgalmat újraközvetíteni és felerősíteni, ami az egész hálózatra kiterjedő szolgáltatásmegtagadást eredményez. A SimpleX kliensek csak az ismert kapcsolatból származó forgalmat továbbítják, és a támadó nem használhatja őket arra, hogy az egész hálózatban felerősítse a forgalmat.",
"privacy-matters-overlay-card-1-p-1": "Sok nagyvállalat arra használja fel az önnel kapcsolatban álló személyek adatait, hogy megbecsülje az ön jövedelmét, hogy olyan termékeket adjon el önnek, amelyekre valójában nincs is szüksége, és hogy meghatározza az árakat.",
"privacy-matters-overlay-card-1-p-2": "Az online kiskereskedők tudják, hogy az alacsonyabb jövedelműek nagyobb valószínűséggel vásárolnak azonnal, ezért magasabb árakat számíthatnak fel, vagy eltörölhetik a kedvezményeket.",
"privacy-matters-overlay-card-1-p-3": "Egyes pénzügyi és biztosítótársaságok szociális grafikonokat használnak a kamatlábak és a díjak meghatározásához. Ez gyakran arra készteti az alacsonyabb jövedelmű embereket, hogy többet fizessenek &mdash; ez az úgynevezett <a href='https://fairbydesign.com/povertypremium/' target='_blank'>„szegénységi prémium”</a>.",
"privacy-matters-overlay-card-1-p-4": "A SimpleX platform minden alternatívánál jobban védi a kapcsolatainak adatait, teljes mértékben megakadályozva, hogy a ismeretségi-hálója bármilyen vállalat vagy szervezet számára elérhetővé váljon. Még ha az emberek a SimpleX Chat által biztosított kiszolgálókat is használják, sem a felhasználók számát, sem a kapcsolataikat nem ismerjük.",
"privacy-matters-overlay-card-2-p-1": "Nem is olyan régen megfigyelhettük, hogy a nagy választásokat manipulálta egy <a href='https://en.wikipedia.org/wiki/Facebook-Cambridge_Analytica_data_scandal' target='_blank'>neves tanácsadó cég</a>, amely az ismeretségi-háló segítségével eltorzította a valós világról alkotott képünket, és manipulálta a szavazatainkat.",
"privacy-matters-overlay-card-2-p-2": "Ahhoz, hogy objektív legyen és független döntéseket tudjon hozni, az információs terét is kézben kell tartania. Ez csak akkor lehetséges, ha privát kommunikációs platformot használ, amely nem fér hozzá az ismeretségi-hálójához.",
"privacy-matters-overlay-card-2-p-3": "A SimpleX az első olyan platform, amely eleve nem rendelkezik felhasználói azonosítókkal, így jobban védi az ismeretségi-hálóját, mint bármely ismert alternatíva.",
"privacy-matters-overlay-card-3-p-1": "Mindenkinek törődnie kell a magánélet és a kommunikáció biztonságával &mdash; az ártalmatlan beszélgetések veszélybe sodorhatják, még akkor is, ha nincs semmi rejtegetnivalója.",
"privacy-matters-overlay-card-3-p-2": "Az egyik legmegdöbbentőbb a <a href='https://en.wikipedia.org/wiki/Mohamedou_Ould_Slahi' target='_blank'>Mohamedou Ould Salahi</a> memoárjában leírt és az „A mauritániai” c. filmben bemutatott történet. Őt bírósági tárgyalás nélkül a guantánamói táborba zárták, és ott kínozták 15 éven át, miután egy afganisztáni rokonát telefonon felhívta, akit azzal gyanúsítottak a hatóságok, hogy köze van a 9/11-es merényletekhez, holott Salahi az előző 10 évben Németországban élt.",
"privacy-matters-overlay-card-3-p-3": "Átlagos embereket letartóztatnak azért, amit online megosztanak, még „névtelen” fiókjaikon keresztül is, <a href='https://www.dailymail.co.uk/news/article-11282263/Moment-police-swoop-house-devout-catholic-mother-malicious-online-posts.html' target='_blank'>még demokratikus országokban is</a>.",
"privacy-matters-overlay-card-3-p-4": "Nem elég, ha csak egy végpontok között titkosított üzenetküldőt használunk, mindannyiunknak olyan üzenetküldőket kell használnunk, amelyek védik személyes ismerőseink magánéletét &mdash; akikkel kapcsolatban állunk.",
"simplex-unique-overlay-card-1-p-1": "Más üzenetküldő platformoktól eltérően a SimpleX <strong>nem rendel azonosítókat a felhasználókhoz</strong>. Nem támaszkodik telefonszámokra, tartomány-alapú címekre (mint az e-mail, XMPP vagy a Matrix), felhasználónevekre, nyilvános kulcsokra vagy akár véletlenszerű számokra a felhasználók azonosításához &mdash; nem tudjuk, hogy hányan használják a SimpleX-kiszolgálóinkat.",
"simplex-unique-overlay-card-1-p-2": "Az üzenetek kézbesítéséhez a SimpleX az egyirányú üzenet várakoztatást használ <a href='https://csrc.nist.gov/glossary/term/Pairwise_Pseudonymous_Identifier'>páronkénti névtelen címekkel</a>, külön a fogadott és külön az elküldött üzenetek számára, általában különböző kiszolgálókon keresztül. A SimpleX használata olyan, mintha minden egyes kapcsolatnak <strong>más-más &ldquo;eldobható&rdquo; e-mail címe vagy telefonja lenne</strong> és nem kell ezeket gondosan kezelni.",
"simplex-unique-overlay-card-1-p-3": "Ez a kialakítás megvédi annak titkosságát, hogy kivel kommunikál, elrejtve azt a SimpleX platform kiszolgálói és a megfigyelők elől. IP-címének a kiszolgálók elől való elrejtéséhez azt teheti meg, hogy <strong> Tor-on keresztül kapcsolódik a SimpleX kiszolgálókhoz</strong>.",
"simplex-unique-overlay-card-2-p-1": "Mivel ön nem rendelkezik azonosítóval a SimpleX platformon, senki sem tud kapcsolatba lépni önnel, hacsak nem oszt meg egy egyszeri vagy ideiglenes felhasználói címet, például QR-kódot vagy hivatkozást.",
"simplex-unique-overlay-card-2-p-2": "Még az opcionális felhasználói cím esetében is, bár spam kapcsolatfelvételi kérések küldésére használható, megváltoztathatja vagy teljesen törölheti azt anélkül, hogy elveszítené a meglévő kapcsolatait.",
"simplex-unique-overlay-card-3-p-1": "A SimpleX Chat az összes felhasználói adatot kizárólag a klienseken tárolja egy <strong>hordozható titkosított adatbázis-formátumban</strong>, amely exportálható és átvihető bármely más támogatott eszközre.",
"simplex-unique-overlay-card-3-p-2": "A végpontok között titkosított üzenetek átmenetileg a SimpleX átjátszó-kiszolgálókon tartózkodnak, amíg be nem érkeznek a címzetthez, majd véglegesen törlődnek onnan.",
"simplex-unique-overlay-card-3-p-3": "A föderált hálózatok kiszolgálóitól (e-mail, XMPP vagy Matrix) eltérően a SimpleX kiszolgálók nem tárolják a felhasználói fiókokat, csak továbbítják az üzeneteket, így védve mindkét fél magánéletét.",
"simplex-unique-overlay-card-3-p-4": "A küldött és a fogadott kiszolgálóforgalom között nincsenek közös azonosítók vagy titkosított szövegek &mdash; ha bárki megfigyeli, nem tudja könnyen megállapítani, hogy ki kivel kommunikál, még akkor sem, ha a TLS-t kompromittálják.",
"simplex-unique-overlay-card-4-p-1": "Használhatja <strong>a SimpleX-et saját kiszolgálóival</strong>, és továbbra is kommunikálhat azokkal, akik az általunk biztosított, előre konfigurált kiszolgálókat használják.",
"simplex-unique-overlay-card-4-p-2": "A SimpleX platform <a href='https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md' target='_blank'>nyitott protokollt</a> használ és <a href='https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript' target='_blank'>SDK-t biztosít a chatbotok létrehozásához</a>, lehetővé téve olyan szolgáltatások megvalósítását, amelyekkel a felhasználók a SimpleX Chat alkalmazásokon keresztül léphetnek kapcsolatba &mdash; mi már nagyon várjuk, hogy milyen SimpleX szolgáltatásokat készítenek a lelkes közreműködők.",
"simplex-unique-overlay-card-4-p-3": "Ha a SimpleX platformra való fejlesztést fontolgatja, például a SimpleX-alkalmazások felhasználóinak szánt chatbotot, vagy a SimpleX Chat Jegyzék bot integrálását más mobilalkalmazásba, <a href='https://simplex.chat/contact#/?v=1&smp=smp%3A%2F%2FPQUV2eL0t7OStZOoAsPEV2QYWt4-xilbakvGUGOItUo%3D%40smp6.simplex.im%2FK1rslx-m5bpXVIdMZg9NLUZ_8JBm8xTt%23MCowBQYDK2VuAyEALDeVe-sG8mRY22LsXlPgiwTNs9dbiLrNuA7f3ZMAJ2w%3D' target='_blank'>lépjen velünk kapcsolatba</a>, ha bármilyen tanácsot vagy támogatást szeretne kapni.",
"simplex-unique-card-1-p-1": "A SimpleX védi az ön profiljához tartozó kapcsolatait és metaadatait, elrejtve azokat a SimpleX platform kiszolgálói és a megfigyelők elől.",
"simplex-unique-card-1-p-2": "Minden más létező üzenetküldő platformtól eltérően a SimpleX nem rendelkezik a felhasználókhoz rendelt azonosítókkal &mdash; <strong>még véletlenszerű számokkal sem</strong>.",
"simplex-unique-card-2-p-1": "Mivel a SimpleX platformon nincs azonosítója vagy állandó címe, senki sem tud kapcsolatba lépni önnel, hacsak nem oszt meg egy egyszeri vagy ideiglenes felhasználói címet, például QR-kódot vagy hivatkozást.",
"simplex-unique-card-3-p-1": "A SimpleX Chat az összes felhasználói adatot kizárólag az klienseken tárolja egy <strong>hordozható titkosított adatbázis-formátumban</strong> &mdash;, amely exportálható és átvihető bármely más támogatott eszközre.",
"simplex-unique-card-3-p-2": "A végpontok között titkosított üzenetek átmenetileg a SimpleX átjátszó-kiszolgálókon tartózkodnak, amíg be nem érkeznek a címzetthez, majd végleges törlésre kerülnek.",
"simplex-unique-card-4-p-1": "A SimpleX hálózat teljesen decentralizált és független bármely kriptopénztől vagy bármely más platformtól, kivéve az internetet.",
"simplex-unique-card-4-p-2": "Használhatja <strong>a SimpleX-et saját kiszolgálóival</strong> vagy az általunk biztosított kiszolgálókkal, és továbbra is kapcsolódhat bármely felhasználóhoz.",
"join": "Csatlakozás",
"we-invite-you-to-join-the-conversation": "Meghívjuk önt, hogy csatlakozzon a beszélgetéshez",
"join-the-REDDIT-community": "Csatlakozzon a REDDIT közösséghez",
"join-us-on-GitHub": "Csatlakozzon hozzánk a GitHubon",
"donate-here-to-help-us": "Adományozzon itt, hogy segítsen nekünk",
"sign-up-to-receive-our-updates": "Regisztráljon az oldalra, hogy megkapja frissítéseinket",
"enter-your-email-address": "Adja meg az e-mail címét",
"get-simplex": "SimpleX Desktop alkalmazás <a href=\"/downloads\">letöltése</a>",
"why-simplex-is": "A SimpleX mitől",
"unique": "egyedülálló",
"learn-more": "Tudjon meg többet",
"more-info": "További információ",
"hide-info": "Információ elrejtése",
"contact-hero-subheader": "Szkennelje be a QR-kódot a SimpleX Chat alkalmazással telefonján vagy táblagépén.",
"contact-hero-p-1": "A hivatkozásban szereplő nyilvános kulcsokat és az üzenetek várakoztatási címét NEM küldi el a hálózaton keresztül az oldal megtekintésekor &mdash; ezeket a hivatkozás URL-jének hash-töredéke tartalmazza.",
"contact-hero-p-2": "Még nem töltötte le a SimpleX Chatet?",
"contact-hero-p-3": "Az alkalmazás letöltéséhez használja az alábbi linkeket.",
"scan-qr-code-from-mobile-app": "QR-kód beolvasása mobilalkalmazásból",
"to-make-a-connection": "A kapcsolat létrehozásához:",
"install-simplex-app": "Telepítse a SimpleX alkalmazást",
"open-simplex-app": "Simplex alkalmazás megnyitása",
"tap-the-connect-button-in-the-app": "Koppintson a <span class='text-active-blue'>„kapcsolódás”</span> gombra az alkalmazásban",
"scan-the-qr-code-with-the-simplex-chat-app": "A QR-kód beolvasása a SimpleX Chat alkalmazással",
"scan-the-qr-code-with-the-simplex-chat-app-description": "A hivatkozásban szereplő nyilvános kulcsokat és az üzenetek várakoztatási címét NEM küldjük el a hálózaton keresztül, amikor ezt az oldalt megtekinti &mdash;<br> ezek a hivatkozás URL-jének hash-töredékében szerepelnek.",
"installing-simplex-chat-to-terminal": "A SimpleX chat telepítése terminálba",
"use-this-command": "Használja ezt a parancsot:",
"see-simplex-chat": "Lásd SimpleX Chat",
"connect-in-app": "Kapcsolódás az alkalmazásban",
"the-instructions--source-code": "az utasításokat, hogyan töltse le vagy fordítsa le a forráskódból.",
"if-you-already-installed-simplex-chat-for-the-terminal": "Ha már telepítette a SimpleX Chat-et a terminálba",
"if-you-already-installed": "Ha már telepítette a",
"simplex-chat-for-the-terminal": "SimpleX Chat-et a terminálba",
"copy-the-command-below-text": "másolja be az alábbi parancsot, és használja a csevegésben:",
"privacy-matters-section-header": "Miért <span class='gradient-text'>számít</span> az adatvédelem",
"privacy-matters-section-subheader": "A metaadatok védelmének megőrzése &mdash; <span class='text-active-blue'>kivel beszélget</span> &mdash; megvédi a következőktől:",
"privacy-matters-section-label": "Győződjön meg róla, hogy az üzenetküldő amit használ nem fér hozzá az adataidhoz!",
"simplex-private-section-header": "Mitől lesz a SimpleX <span class='gradient-text'>privát</span>",
"simplex-network-section-header": "SimpleX <span class='gradient-text'>hálózat</span>",
"simplex-network-section-desc": "A Simplex Chat a P2P és a föderált hálózatok előnyeinek kombinálásával biztosítja a legjobb adatvédelmet.",
"simplex-network-1-desc": "Minden üzenet a kiszolgálókon keresztül kerül elküldésre, ami jobb metaadat-védelmet és megbízható aszinkron üzenetkézbesítést biztosít, miközben elkerülhető a sok",
"simplex-network-2-header": "A föderált hálózatokkal ellentétben",
"simplex-network-2-desc": "A SimpleX átjátszó kiszolgálók NEM tárolnak felhasználói profilokat, kapcsolatokat és kézbesített üzeneteket, NEM csatlakoznak egymáshoz, és NINCS kiszolgáló könyvtár.",
"simplex-network-3-header": "SimpleX hálózat",
"simplex-network-3-desc": "a kiszolgálók <span class='text-active-blue'>egyirányú üzenet várakoztatásokat</span> biztosítanak a felhasználók összekapcsolásához, de nem látják a hálózati kapcsolati gráfot; azt csak a felhasználók látják.",
"comparison-section-header": "Összehasonlítás más protokollokkal",
"protocol-1-text": "Signal, nagy platformok",
"protocol-2-text": "XMPP, Matrix",
"protocol-3-text": "P2P protokollok",
"comparison-point-1-text": "Globális személyazonosságot igényel",
"comparison-point-2-text": "MITM lehetősége",
"comparison-point-4-text": "Egyetlen vagy központosított hálózat",
"comparison-point-5-text": "Központi komponens vagy más hálózati szintű támadás",
"no": "Nem",
"no-private": "Nem - privát",
"no-secure": "Nem - biztonságos",
"no-resilient": "Nem - ellenálló",
"no-decentralized": "Nem - decentralizált",
"no-federated": "Nem - föderált",
"comparison-section-list-point-1": "Általában telefonszám alapján, néhány esetben felhasználónév alapján",
"comparison-section-list-point-2": "DNS-alapú címek",
"comparison-section-list-point-3": "Nyilvános kulcs vagy más globális egyedi azonosító",
"comparison-section-list-point-4a": "A SimpleX átjátszók nem veszélyeztethetik az e2e titkosítást. Biztonsági kód ellenőrzése a sávon kívüli csatorna elleni támadás mérséklésére",
"comparison-section-list-point-4": "Ha az üzemeltető kiszolgálói veszélybe kerülnek. Ellenőrizze a biztonsági kódot a Signal-ban és néhány más alkalmazásban, hogy csökkentse a veszélyt",
"comparison-section-list-point-5": "Nem védi a felhasználók metaadatait",
"comparison-section-list-point-6": "Bár a P2P elosztott, de nem föderált - egyetlen hálózatként működnek",
"comparison-section-list-point-7": "A P2P-hálózatoknak vagy van egy központi hitelesítője, vagy az egész hálózat kompromittálódhat",
"see-here": "lásd itt",
"guide-dropdown-1": "Gyors indítás",
"guide-dropdown-2": "Üzenetek küldése",
"guide-dropdown-3": "Titkos csoportok",
"guide-dropdown-4": "Csevegő profilok",
"guide-dropdown-5": "Adatkezelés",
"guide-dropdown-6": "Hang- és videó hívások",
"guide-dropdown-7": "Adatvédelem és biztonság",
"guide-dropdown-8": "Alkalmazás beállításai",
"guide": "Útmutató",
"docs-dropdown-1": "SimpleX platform",
"docs-dropdown-2": "Android fájlok elérése",
"docs-dropdown-3": "Hozzáférés a csevegő adatbázishoz",
"docs-dropdown-8": "SimpleX jegyzék szolgáltatás",
"docs-dropdown-9": "Letöltések",
"f-droid-page-simplex-chat-repo-section-text": "Ha hozzá szeretné adni az F-Droid klienséhez, <span class='hide-on-mobile'>olvassa be a QR-kódot, vagy</span> használja ezt az URL-t:",
"signing-key-fingerprint": "Aláíró kulcs ujjlenyomata (SHA-256)",
"f-droid-org-repo": "F-Droid.org tároló",
"stable-versions-built-by-f-droid-org": "F-Droid.org által készített stabil verziók",
"releases-to-this-repo-are-done-1-2-days-later": "A kiadások ebben a tárolóban néhány napot késnek",
"f-droid-page-f-droid-org-repo-section-text": "A SimpleX Chat és az F-Droid.org tárolók különböző kulcsokkal írják alá az összeállításokat. A váltáshoz <a href='/docs/guide/chat-profiles.html#move-your-chat-profiles-to-another-device'>exportálja</a> a csevegési adatbázist és telepítse újra az alkalmazást.",
"jobs": "Csatlakozzon a csapathoz",
"please-enable-javascript": "Engedélyezze a JavaScriptet a QR-kód megjelenítéséhez.",
"please-use-link-in-mobile-app": "Használja a mobilalkalmazásban található hivatkozást",
"contact-hero-header": "Kapott egy címet a SimpleX Chat-en való kapcsolódáshoz",
"invitation-hero-header": "Kapott egy egyszer használatos hivatkozást a SimpleX Chat-en való kapcsolódáshoz",
"simplex-network-overlay-card-1-li-4": "A P2P-megvalósításokat egyes internetszolgáltatók blokkolhatják (mint például a <a href='https://en.wikipedia.org/wiki/BitTorrent'>BitTorrent</a>). A SimpleX átvitel-független - a szabványos webes protokollokon, pl. WebSockets-en keresztül is működik.",
"simplex-private-card-4-point-2": "A SimpleX Tor-on keresztüli használatához telepítse az <a href=\"https://guardianproject.info/apps/org.torproject.android/\" target=\"_blank\">Orbot alkalmazást</a> és engedélyezze a SOCKS5 proxy-t (vagy a VPN-t <a href=\"https://apps.apple.com/us/app/orbot/id1609461599?platform=iphone\" target=\"_blank\">az iOS-ban</a>).",
"simplex-private-card-5-point-1": "A SimpleX minden titkosítási réteghez tartalomkitöltést használ, hogy meghiúsítsa az üzenetméret ellen irányuló támadásokat.",
"simplex-private-card-5-point-2": "A kiszolgálók és a hálózatot megfigyelők számára a különböző méretű üzenetek egyformának tűnnek.",
"privacy-matters-1-title": "Hirdetés és árdiszkrimináció",
"hero-overlay-card-1-p-3": "Ön határozza meg, hogy melyik kiszolgáló(ka)t használja az üzenetek fogadására, a kapcsolatokhoz &mdash; azokat a kiszolgálókat, amelyeket az üzenetek küldésére használ. Minden beszélgetés két különböző kiszolgálót használ.",
"hero-overlay-card-3-p-3": "További információk <a href=\"/blog/20221108-simplex-chat-v4.2-security-audit-new-website.html\">a közleményben</a>.",
"simplex-network-overlay-card-1-p-1": "A <a href='https://en.wikipedia.org/wiki/Peer-to-peer'>P2P</a> üzenetküldő protokollok és alkalmazások számos problémával küzdenek, amelyek miatt kevésbé megbízhatóak, mint a SimpleX, bonyolultabb az elemzésük és többféle támadással szemben sebezhetőek.",
"chat-bot-example": "Chat bot példa",
"simplex-private-3-title": "Biztonságos, hitelesített<br>TLS adatátvitel",
"github-repository": "GitHub tároló",
"tap-to-close": "Koppintson a bezáráshoz",
"simplex-network-1-header": "A P2P hálózatokkal ellentétben",
"simplex-network-1-overlay-linktext": "a P2P hálózat problémái",
"comparison-point-3-text": "Függés a DNS-től",
"yes": "Igen",
"guide-dropdown-9": "Kapcsolatok létrehozása",
"docs-dropdown-4": "SMP-kiszolgáló üzemeltetése",
"docs-dropdown-5": "XFTP-kiszolgáló üzemeltetése",
"docs-dropdown-6": "WebRTC kiszolgálók",
"docs-dropdown-7": "SimpleX Chat honosítása",
"docs-dropdown-10": "Átláthatóság",
"docs-dropdown-11": "GY.I.K.",
"docs-dropdown-12": "Biztonság",
"newer-version-of-eng-msg": "Ennek az oldalnak van egy újabb angol nyelvű változata.",
"click-to-see": "Kattintson a megtekintéséhez",
"menu": "Menü",
"on-this-page": "Ezen az oldalon",
"back-to-top": "Vissza a tetejére",
"glossary": "Fogalomtár",
"simplex-chat-via-f-droid": "SimpleX Chat az F-Droidon keresztül",
"simplex-chat-repo": "SimpleX Chat tároló",
"stable-and-beta-versions-built-by-developers": "A fejlesztők által készített stabil és béta verziók"
}
+1 -1
View File
@@ -240,7 +240,7 @@
"f-droid-org-repo": "F-Droid.org repo",
"signing-key-fingerprint": "Signing key fingerprint (SHA-256)",
"stable-versions-built-by-f-droid-org": "Stabiele versies gebouwd door F-Droid.org",
"releases-to-this-repo-are-done-1-2-days-later": "De releases voor deze repository vinden 1-2 dagen later plaats",
"releases-to-this-repo-are-done-1-2-days-later": "De releases voor deze repository vinden enkele dagen later plaats",
"f-droid-page-f-droid-org-repo-section-text": "SimpleX Chat- en F-Droid.org-repository's ondertekenen builds met de verschillende sleutels. Om over te stappen, alstublieft <a href='/docs/guide/chat-profiles.html#move-your-chat-profiles-to-another-device'>exporteer</a> de chatdatabase en installeer de app opnieuw.",
"docs-dropdown-8": "SimpleX Directory Service",
"comparison-section-list-point-4a": "SimpleX relais kunnen de e2e-versleuteling niet in gevaar brengen. Controleer de beveiligingscode om aanvallen op out-of-band kanalen te beperken",
+1 -1
View File
@@ -242,7 +242,7 @@
"signing-key-fingerprint": "Odcisk klucza podpisu (SHA-256)",
"f-droid-org-repo": "Repo F-Droid.org",
"stable-versions-built-by-f-droid-org": "Wersje stabilne zbudowane przez F-Droid.org",
"releases-to-this-repo-are-done-1-2-days-later": "Wydania na tym repo są 1-2 dni później",
"releases-to-this-repo-are-done-1-2-days-later": "Wydania na tym repo są kilka dni później",
"comparison-section-list-point-4a": "Przekaźniki SimpleX nie mogą skompromitować szyfrowania e2e. Zweryfikuj kody bezpieczeństwa aby złagodzić atak na kanał pozapasmowy",
"hero-overlay-3-title": "Ocena bezpieczeństwa",
"hero-overlay-card-3-p-2": "Trail of Bits przejrzał komponenty kryptograficzne i sieciowe platformy SimpleX w listopadzie 2022.",
+6 -3
View File
@@ -1,7 +1,7 @@
{
"features": "Особливості",
"simplex-explained-tab-3-text": "3. Що бачать сервери",
"terms-and-privacy-policy": "Умови та політика конфіденційності",
"terms-and-privacy-policy": "Політика конфіденційності",
"feature-4-title": "Голосові повідомлення з шифруванням від кінця до кінця",
"feature-5-title": "Зникнення повідомлень",
"simplex-private-card-3-point-3": "Відновлення з'єднання вимкнено для запобігання атакам на сесію.",
@@ -240,7 +240,7 @@
"stable-versions-built-by-f-droid-org": "Стабільні версії, побудовані F-Droid.org",
"simplex-chat-repo": "Репозитарій SimpleX Chat",
"f-droid-org-repo": "Репозитарій F-Droid.org",
"releases-to-this-repo-are-done-1-2-days-later": "Релізи в цей репозитарій робляться за 1-2 дні пізніше",
"releases-to-this-repo-are-done-1-2-days-later": "Релізи в це репо відбуваються на кілька днів пізніше",
"stable-and-beta-versions-built-by-developers": "Стабільні та бета-версії, побудовані розробниками",
"f-droid-page-f-droid-org-repo-section-text": "SimpleX Chat та репозитарії F-Droid.org підписують збірки різними ключами. Щоб переключитися, будь ласка, <a href='/docs/guide/chat-profiles.html#move-your-chat-profiles-to-another-device'>експортуйте</a> базу даних чату та перевстановіть додаток.",
"hero-overlay-3-title": "Оцінка безпеки",
@@ -252,5 +252,8 @@
"comparison-section-list-point-4a": "Ретранслятори SimpleX не можуть порушити e2e-шифрування. Перевірте безпековий код для зменшення ризику атаки на зовнішньобандовий канал",
"docs-dropdown-9": "Завантаження",
"please-enable-javascript": "Будь ласка, увімкніть JavaScript, щоб побачити QR-код.",
"please-use-link-in-mobile-app": "Будь ласка, скористайтеся посиланням у мобільному додатку"
"please-use-link-in-mobile-app": "Будь ласка, скористайтеся посиланням у мобільному додатку",
"docs-dropdown-11": "ПОШИРЕНІ ЗАПИТАННЯ",
"docs-dropdown-10": "Прозорість",
"docs-dropdown-12": "Безпека"
}
@@ -0,0 +1,2 @@
<p>As lawmakers grapple with the serious issue of child exploitation online,
some proposed solutions would fuel the very problem they aim to solve.</p>