i18n: strings the desktop client needed, and its screenshots
The dictionaries here are the single source both clients read: the desktop
copies src/i18n/generated.js byte for byte, so a key added on either side is
available to the other.
* desktop.* — sentences only the desktop says. It has no QR display and no
browser to grant permissions, so its copy differs where the browser's would
mislead: "allow the microphone in system settings", not "for this site".
* msg.after5s and the rest of the disappearing-message timers, which this
client renders from hardcoded English today and can now translate too.
* secLevel.HIGH / MEDIUM / LOW, which the security panel needed and the
dictionary only had MAXIMUM for.
All of it translated into the full thirteen. Nothing here changes what this site
renders — the web client does not reference the new keys yet.
assets/screenshots/desktop-*.png are captures of the desktop client at 1.0.0,
for its Flathub listing. A reviewer opens each URL, so they have to be served
from this domain rather than from a code host.
This commit is contained in:
+76
-1
@@ -801,7 +801,82 @@
|
||||
"groupCall.speaking": "{name} बोल रहे हैं",
|
||||
"groupCall.pin": "{name} को बड़ा दिखाएँ",
|
||||
"groupCall.unpin": "सभी पर लौटें",
|
||||
"groupCall.showEveryone": "सभी"
|
||||
"groupCall.showEveryone": "सभी",
|
||||
"msg.after5s": "पढ़ने के 5 सेकंड बाद",
|
||||
"msg.after15s": "पढ़ने के 15 सेकंड बाद",
|
||||
"msg.after30s": "पढ़ने के 30 सेकंड बाद",
|
||||
"msg.after1m": "पढ़ने के 1 मिनट बाद",
|
||||
"msg.sec30": "30 सेकंड",
|
||||
"msg.min5": "5 मिनट",
|
||||
"msg.hour1": "1 घंटा",
|
||||
"desktop.shareDesc": "कोड अपने साथी को भेजें। यह एक बार का है और जल्दी समाप्त हो जाता है।",
|
||||
"desktop.invitationCreated": "सुरक्षित निमंत्रण बन गया - इसे अपने साथी को भेजें।",
|
||||
"desktop.joinDesc": "अपना सुरक्षित उत्तर बनाने के लिए साथी का निमंत्रण कोड चिपकाएँ।",
|
||||
"desktop.offerTag": "निमंत्रण · टेक्स्ट कॉपी करें",
|
||||
"desktop.answerTag": "उत्तर · टेक्स्ट कॉपी करें",
|
||||
"desktop.offerPlaceholder": "निमंत्रण कोड यहाँ दिखाई देगा…",
|
||||
"desktop.answerPlaceholder": "उत्तर कोड यहाँ दिखाई देगा…",
|
||||
"desktop.backToChats": "चैट पर वापस",
|
||||
"desktop.sendFeedback": "प्रतिक्रिया भेजें",
|
||||
"desktop.callsNeedVerified": "कॉल के लिए सत्यापित सुरक्षित चैनल चाहिए।",
|
||||
"desktop.noOpenChannel": "कोई खुला सुरक्षित चैनल नहीं है।",
|
||||
"desktop.chatCarriesCall": "यह चैट एक समूह कॉल ले जा रही है। 1:1 कॉल करने से पहले समूह कॉल छोड़ें।",
|
||||
"desktop.err.permission_denied": "कॉल शुरू नहीं हो सकी - माइक्रोफ़ोन और कैमरे की अनुमति अवरुद्ध है। सिस्टम सेटिंग्स में इसे अनुमति दें और फिर कोशिश करें।",
|
||||
"desktop.language": "भाषा",
|
||||
"desktop.languageHint": "तुरंत लागू होता है। पहले भेजे गए संदेश अपनी ही भाषा में रहते हैं।",
|
||||
"desktop.compareCode": "सत्यापन कोड अपने साथी से मिलाएँ और मेल खाने पर पुष्टि करें।",
|
||||
"desktop.verifyBeforeFiles": "फ़ाइलें भेजने से पहले सत्यापन पूरा करें।",
|
||||
"desktop.verifyBeforeSending": "संदेश भेजने से पहले सत्यापन पूरा करें।",
|
||||
"desktop.disconnectedByBackend": "कनेक्शन सुरक्षित रूप से बंद कर दिया गया।",
|
||||
"desktop.restoreFailed": "कनेक्शन बहाल नहीं हो सका। यह चैट बंद की जा रही है।",
|
||||
"desktop.channelNotReady": "डेटा चैनल अभी उपलब्ध नहीं है। कनेक्शन बनने तक प्रतीक्षा करें।",
|
||||
"desktop.enterCode": "पुष्टि के लिए सत्यापन कोड दर्ज करें।",
|
||||
"desktop.noOffer": "कोई निमंत्रण नहीं मिला। पहले एक बनाएँ।",
|
||||
"desktop.notInitiator": "यह कनेक्शन आपने नहीं बनाया, इसलिए लागू करने के लिए कोई उत्तर नहीं है।",
|
||||
"desktop.decryptFailed": "एक संदेश डिक्रिप्ट नहीं हो सका और हटा दिया गया।",
|
||||
"desktop.badMessageFormat": "गलत प्रारूप वाला फ़्रेम आया और हटा दिया गया।",
|
||||
"desktop.notSentNotReady": "संदेश नहीं भेजा गया: सुरक्षित चैनल तैयार नहीं है। सत्यापन पूरा होने की प्रतीक्षा करें या फिर से जुड़ें।",
|
||||
"desktop.micDenied": "माइक्रोफ़ोन की अनुमति अस्वीकार कर दी गई।",
|
||||
"desktop.noChannelWait": "कोई खुला सुरक्षित चैनल नहीं - कनेक्शन बनने तक प्रतीक्षा करें।",
|
||||
"desktop.sasFailed": "सत्यापन विफल। बीच में कोई हो सकता है, इसलिए कनेक्शन रोक दिया गया।",
|
||||
"desktop.sasOk": "सत्यापन सफल। यह चैनल सिरे से सिरे तक प्रमाणित है।",
|
||||
"desktop.iceForgotten": "सहेजे गए सर्वर भुला दिए गए। सार्वजनिक ICE सर्वर उपयोग हो रहे हैं।",
|
||||
"desktop.icePublic": "सार्वजनिक ICE सर्वर उपयोग हो रहे हैं।",
|
||||
"desktop.verificationInProgress": "सुरक्षा सत्यापन अभी चल रहा है। पूरा होने तक प्रतीक्षा करें।",
|
||||
"desktop.fileGone": "यह फ़ाइल अब डाउनलोड के लिए उपलब्ध नहीं है।",
|
||||
"desktop.codeMismatch": "सत्यापन कोड मेल नहीं खाते। सुरक्षा के लिए कनेक्शन बंद किया जा रहा है।",
|
||||
"desktop.noLocalCode": "सत्यापन विफल: तुलना के लिए कोई स्थानीय कोड नहीं है। सुरक्षा के लिए कनेक्शन बंद किया जा रहा है।",
|
||||
"desktop.protocolViolation": "साथी ने आपके पुष्टि करने से पहले ही कोड की पुष्टि का दावा किया। सुरक्षा के लिए कनेक्शन बंद किया जा रहा है।",
|
||||
"desktop.verificationRejected": "सत्यापन अस्वीकार। सुरक्षा के लिए कनेक्शन रोक दिया गया।",
|
||||
"secLevel.HIGH": "उच्च",
|
||||
"secLevel.MEDIUM": "मध्यम",
|
||||
"secLevel.LOW": "निम्न",
|
||||
"desktop.rerun": "दोबारा जाँचें",
|
||||
"desktop.ice.customDesc": "अधिकतम {max} सर्वर, प्रति पंक्ति एक URL या JSON।",
|
||||
"desktop.ice.persistDesc": "इसी डिवाइस पर सहेजा जाता है। केवल इसी सत्र के लिए उपयोग करना हो तो बंद रहने दें।",
|
||||
"desktop.group.leaveNote": "बाकी सदस्यों को बता दिया जाता है कि आप चले गए। उसके बाद इस डिवाइस पर इस समूह का कुछ नहीं रहता - किसी सर्वर के पास प्रति नहीं है जिससे लौटा जा सके, इसलिए नया निमंत्रण चाहिए होगा।",
|
||||
"desktop.sec.ecdsaOk": "हैंडशेक के दौरान साथी के की-पैकेज का हस्ताक्षर सत्यापित (ECDSA P-384 / SHA-384)",
|
||||
"desktop.sec.ecdsaNone": "कोई पूर्ण हैंडशेक नहीं",
|
||||
"desktop.sec.ecdhOk": "सत्र कुंजियाँ अस्थायी ECDH P-384 विनिमय से HKDF-SHA-256 द्वारा व्युत्पन्न",
|
||||
"desktop.sec.ecdhNone": "कोई सत्र कुंजी व्युत्पन्न नहीं हुई",
|
||||
"desktop.sec.encryptionOk": "कोर में AES-GCM एन्क्रिप्शन और डिक्रिप्शन सत्यापित",
|
||||
"desktop.sec.encryptionNa": "AES-GCM स्व-परीक्षण नहीं चल सका",
|
||||
"desktop.sec.integrityOk": "संदेश अखंडता सत्यापित (AES-GCM प्रमाणीकरण)",
|
||||
"desktop.sec.integrityNa": "अखंडता स्व-परीक्षण नहीं चल सका",
|
||||
"desktop.sec.pfsOk": "Double Ratchet सक्रिय - हर संदेश की अपनी कुंजी है",
|
||||
"desktop.sec.pfsNa": "मापा नहीं गया",
|
||||
"desktop.sec.replayOk": "रैचेट संदेश कुंजियाँ उपयोग होते ही नष्ट हो जाती हैं, इसलिए पकड़ा गया फ़्रेम दोबारा नहीं चलाया जा सकता",
|
||||
"desktop.sec.replayNa": "मापा नहीं गया",
|
||||
"desktop.sec.dtlsPinned": "साथी का DTLS फ़िंगरप्रिंट पिन किया गया: {fp}",
|
||||
"desktop.sec.dtlsNone": "दूरस्थ DTLS फ़िंगरप्रिंट उपलब्ध नहीं",
|
||||
"desktop.sec.sasBoth": "दोनों पक्षों ने बाहरी माध्यम से सुरक्षा कोड की पुष्टि की",
|
||||
"desktop.sec.sasIncomplete": "सुरक्षा कोड की पुष्टि दोनों पक्षों ने नहीं की",
|
||||
"desktop.sec.metadataOk": "समर्पित मेटाडेटा कुंजी व्युत्पन्न (HKDF metadata-protection-v4)",
|
||||
"desktop.sec.metadataNone": "कोई मेटाडेटा कुंजी नहीं",
|
||||
"desktop.sec.coverOn": "आवरण ट्रैफ़िक सक्रिय: रैचेट चैनल पर यादृच्छिक नकली फ़्रेम (हर 15-30 सेकंड में 32-128 B)",
|
||||
"desktop.sec.coverOff": "आवरण ट्रैफ़िक जनरेटर नहीं चल रहा",
|
||||
"desktop.sec.coverUnsupported": "आवरण ट्रैफ़िक के लिए Double Ratchet सत्र चाहिए (साथी पुराने संस्करण पर है)",
|
||||
"desktop.tagline": "सिरे से सिरे तक आज़ादी"
|
||||
},
|
||||
"manifest": {
|
||||
"name": "SecureBit.chat - निजी, एन्क्रिप्टेड मैसेंजर",
|
||||
|
||||
Reference in New Issue
Block a user