Browse Source

Add Hindi translation (#2632)

pull/2649/head
Ankit Agarwal 1 week ago
committed by GitHub
parent
commit
c41ae0d4c5
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 2
      src/i18n/i18n.config.ts
  2. 297
      src/i18n/locales/hi.json
  3. 5
      src/nuxt.config.ts

2
src/i18n/i18n.config.ts

@ -18,6 +18,7 @@ import id from './locales/id.json';
import nl from './locales/nl.json';
import nb from './locales/nb.json';
import bg from './locales/bg.json';
import hi from './locales/hi.json';
import gl from './locales/gl.json';
import cs from './locales/cs.json';
import vi from './locales/vi.json';
@ -46,6 +47,7 @@ export default defineI18nConfig(() => ({
nl,
nb,
bg,
hi,
gl,
cs,
vi,

297
src/i18n/locales/hi.json

@ -0,0 +1,297 @@
{
"pages": {
"me": "खाता",
"clients": "क्लाइंट",
"admin": {
"panel": "एडमिन पैनल",
"general": "सामान्य",
"config": "कॉन्फ़िगरेशन",
"interface": "इंटरफ़ेस",
"hooks": "हुक्स"
}
},
"user": {
"email": "ई-मेल"
},
"me": {
"currentPassword": "वर्तमान पासवर्ड",
"enable2fa": "दो-कारक प्रमाणीकरण सक्षम करें",
"enable2faDesc": "अपने प्रमाणक ऐप से QR कोड स्कैन करें या कुंजी मैन्युअल रूप से दर्ज करें।",
"2faKey": "TOTP कुंजी",
"2faCodeDesc": "अपने प्रमाणक ऐप से कोड दर्ज करें।",
"disable2fa": "दो-कारक प्रमाणीकरण अक्षम करें",
"disable2faDesc": "दो-कारक प्रमाणीकरण अक्षम करने के लिए अपना पासवर्ड दर्ज करें।"
},
"general": {
"name": "नाम",
"username": "उपयोगकर्ता नाम",
"password": "पासवर्ड",
"newPassword": "नया पासवर्ड",
"updatePassword": "पासवर्ड अपडेट करें",
"mtu": "MTU",
"allowedIps": "अनुमत IPs",
"dns": "DNS",
"persistentKeepalive": "स्थायी कीपअलाइव",
"logout": "लॉगआउट",
"continue": "जारी रखें",
"host": "होस्ट",
"port": "पोर्ट",
"yes": "हाँ",
"no": "नहीं",
"confirmPassword": "पासवर्ड की पुष्टि करें",
"loading": "लोड हो रहा है...",
"2fa": "दो-कारक प्रमाणीकरण",
"2faCode": "TOTP कोड"
},
"setup": {
"welcome": "wg-easy की प्रारंभिक सेटअप में आपका स्वागत है",
"welcomeDesc": "आपने किसी भी Linux होस्ट पर WireGuard इंस्टॉल और प्रबंधित करने का सबसे आसान तरीका खोज लिया है",
"existingSetup": "क्या आपके पास पहले से कोई सेटअप है?",
"createAdminDesc": "कृपया पहले एडमिन उपयोगकर्ता नाम और एक मज़बूत सुरक्षित पासवर्ड दर्ज करें। इस जानकारी का उपयोग प्रशासन पैनल में लॉग इन करने के लिए किया जाएगा।",
"setupConfigDesc": "कृपया होस्ट और पोर्ट जानकारी दर्ज करें। इसका उपयोग उनके डिवाइस पर WireGuard सेटअप करते समय क्लाइंट कॉन्फ़िगरेशन के लिए किया जाएगा।",
"setupMigrationDesc": "यदि आप अपने पिछले wg-easy संस्करण से डेटा माइग्रेट करना चाहते हैं तो कृपया बैकअप फ़ाइल प्रदान करें।",
"upload": "अपलोड",
"migration": "बैकअप से पुनर्स्थापित करें:",
"createAccount": "खाता बनाएं",
"successful": "सेटअप सफल रहा",
"hostDesc": "सार्वजनिक होस्टनाम जिससे क्लाइंट कनेक्ट होंगे",
"portDesc": "सार्वजनिक UDP पोर्ट जिससे क्लाइंट कनेक्ट होंगे और WireGuard सुनेगा"
},
"update": {
"updateAvailable": "एक अपडेट उपलब्ध है!",
"update": "अपडेट करें"
},
"theme": {
"dark": "डार्क थीम",
"light": "लाइट थीम",
"system": "सिस्टम थीम"
},
"layout": {
"toggleCharts": "चार्ट दिखाएं/छिपाएं",
"donate": "दान करें"
},
"login": {
"signIn": "साइन इन",
"rememberMe": "मुझे याद रखें",
"rememberMeDesc": "ब्राउज़र बंद करने के बाद भी लॉग इन रहें",
"insecure": "आप असुरक्षित कनेक्शन से लॉग इन नहीं कर सकते। HTTPS का उपयोग करें।",
"2faRequired": "दो-कारक प्रमाणीकरण आवश्यक है",
"2faWrong": "दो-कारक प्रमाणीकरण गलत है"
},
"client": {
"empty": "अभी तक कोई क्लाइंट नहीं है।",
"newShort": "नया",
"sort": "क्रमबद्ध करें",
"create": "क्लाइंट बनाएं",
"created": "क्लाइंट बनाया गया",
"new": "नया क्लाइंट",
"name": "नाम",
"expireDate": "समाप्ति तिथि",
"expireDateDesc": "वह तिथि जिसके बाद क्लाइंट अक्षम हो जाएगा। स्थायी के लिए खाली छोड़ें",
"delete": "हटाएं",
"deleteClient": "क्लाइंट हटाएं",
"deleteDialog1": "क्या आप वाकई हटाना चाहते हैं",
"deleteDialog2": "यह क्रिया पूर्ववत नहीं की जा सकती।",
"enabled": "सक्षम",
"address": "पता",
"serverAllowedIps": "सर्वर द्वारा अनुमत IPs",
"otlDesc": "छोटा एकबारगी लिंक उत्पन्न करें",
"permanent": "स्थायी",
"createdOn": "बनाया गया ",
"lastSeen": "अंतिम बार देखा गया ",
"totalDownload": "कुल डाउनलोड: ",
"totalUpload": "कुल अपलोड: ",
"newClient": "नया क्लाइंट",
"disableClient": "क्लाइंट अक्षम करें",
"enableClient": "क्लाइंट सक्षम करें",
"noPrivKey": "इस क्लाइंट की कोई ज्ञात निजी कुंजी नहीं है। कॉन्फ़िगरेशन नहीं बना सकते।",
"showQR": "QR कोड दिखाएं",
"downloadConfig": "कॉन्फ़िगरेशन डाउनलोड करें",
"allowedIpsDesc": "कौन से IPs VPN के माध्यम से रूट होंगे (वैश्विक कॉन्फ़िगरेशन को ओवरराइड करता है)",
"serverAllowedIpsDesc": "कौन से IPs सर्वर क्लाइंट को रूट करेगा",
"mtuDesc": "VPN टनल के लिए अधिकतम ट्रांसमिशन इकाई (पैकेट आकार) सेट करता है",
"persistentKeepaliveDesc": "कीप-अलाइव पैकेट के लिए अंतराल (सेकंड में) सेट करता है। 0 इसे अक्षम करता है",
"hooks": "हुक्स",
"hooksDescription": "हुक्स केवल wg-quick के साथ काम करते हैं",
"hooksLeaveEmpty": "केवल wg-quick के लिए। अन्यथा, खाली छोड़ें",
"dnsDesc": "DNS सर्वर जिसे क्लाइंट उपयोग करेंगे (वैश्विक कॉन्फ़िगरेशन को ओवरराइड करता है)",
"notConnected": "क्लाइंट कनेक्ट नहीं है",
"endpoint": "एंडपॉइंट",
"endpointDesc": "क्लाइंट का IP पता जहाँ से WireGuard कनेक्शन स्थापित होता है",
"search": "क्लाइंट खोजें...",
"config": "कॉन्फ़िगरेशन",
"viewConfig": "कॉन्फ़िगरेशन देखें",
"firewallIps": "फ़ायरवॉल द्वारा अनुमत IPs",
"firewallIpsDesc": "गंतव्य IPs/CIDRs जिन तक यह क्लाइंट पहुँच सकता है (सर्वर-साइड नियंत्रण)। अनुमत IPs उपयोग करने के लिए खाली छोड़ें। वैकल्पिक पोर्ट और प्रोटोकॉल फ़िल्टरिंग का समर्थन करता है। सिंटैक्स के लिए दस्तावेज़ देखें।",
"downloadPng": "PNG डाउनलोड करें",
"copyPng": "PNG कॉपी करें"
},
"dialog": {
"change": "बदलें",
"cancel": "रद्द करें",
"create": "बनाएं"
},
"toast": {
"success": "सफल",
"saved": "सहेजा गया",
"error": "त्रुटि",
"unknown": "अज्ञात त्रुटि। अधिक जानकारी के लिए कंसोल देखें"
},
"form": {
"actions": "क्रियाएं",
"save": "सहेजें",
"revert": "पूर्ववत करें",
"sectionGeneral": "सामान्य",
"sectionAdvanced": "उन्नत",
"noItems": "कोई आइटम नहीं",
"nullNoItems": "कोई आइटम नहीं। वैश्विक कॉन्फ़िगरेशन उपयोग में है",
"add": "जोड़ें"
},
"admin": {
"general": {
"sessionTimeout": "सत्र समय समाप्ति",
"sessionTimeoutDesc": "रिमेम्बर मी के लिए सत्र अवधि (सेकंड में)",
"metrics": "मेट्रिक्स",
"metricsPassword": "पासवर्ड",
"metricsPasswordDesc": "मेट्रिक्स एंडपॉइंट के लिए बियरर पासवर्ड (पासवर्ड या argon2 हैश)",
"json": "JSON",
"jsonDesc": "JSON फ़ॉर्मेट में मेट्रिक्स का मार्ग",
"prometheus": "Prometheus",
"prometheusDesc": "Prometheus मेट्रिक्स का मार्ग"
},
"config": {
"connection": "कनेक्शन",
"hostDesc": "सार्वजनिक होस्टनाम जिससे क्लाइंट कनेक्ट होंगे (कॉन्फ़िगरेशन को अमान्य करता है)",
"portDesc": "सार्वजनिक UDP पोर्ट जिससे क्लाइंट कनेक्ट होंगे (कॉन्फ़िगरेशन को अमान्य करता है, शायद आप इंटरफ़ेस पोर्ट भी बदलना चाहें)",
"allowedIpsDesc": "क्लाइंट द्वारा उपयोग किए जाने वाले अनुमत IPs (वैश्विक कॉन्फ़िगरेशन)",
"dnsDesc": "क्लाइंट द्वारा उपयोग किया जाने वाला DNS सर्वर (वैश्विक कॉन्फ़िगरेशन)",
"mtuDesc": "क्लाइंट द्वारा उपयोग किया जाने वाला MTU (केवल नए क्लाइंट के लिए)",
"persistentKeepaliveDesc": "सर्वर को कीपअलाइव भेजने का अंतराल सेकंड में। 0 = अक्षम (केवल नए क्लाइंट के लिए)",
"suggest": "सुझाएं",
"suggestDesc": "होस्ट फ़ील्ड के लिए IP पता या होस्टनाम चुनें"
},
"interface": {
"cidrSuccess": "CIDR बदला गया",
"device": "डिवाइस",
"deviceDesc": "ईथरनेट डिवाइस जिसके माध्यम से WireGuard ट्रैफ़िक फ़ॉरवर्ड किया जाना चाहिए",
"mtuDesc": "MTU जिसे WireGuard उपयोग करेगा",
"portDesc": "UDP पोर्ट जिस पर WireGuard सुनेगा (शायद आप कॉन्फ़िग पोर्ट भी बदलना चाहें)",
"changeCidr": "CIDR बदलें",
"restart": "इंटरफ़ेस रीस्टार्ट करें",
"restartDesc": "WireGuard इंटरफ़ेस को रीस्टार्ट करें",
"restartWarn": "क्या आप वाकई इंटरफ़ेस रीस्टार्ट करना चाहते हैं? इससे सभी क्लाइंट डिस्कनेक्ट हो जाएंगे।",
"restartSuccess": "इंटरफ़ेस रीस्टार्ट हो गया",
"firewall": "ट्रैफ़िक फ़िल्टरिंग",
"firewallEnabled": "प्रति-क्लाइंट फ़ायरवॉल सक्षम करें",
"firewallEnabledDesc": "iptables का उपयोग करके क्लाइंट ट्रैफ़िक को विशिष्ट गंतव्य IPs तक सीमित करें। सक्षम होने पर, प्रत्येक क्लाइंट को अनुमत गंतव्यों के साथ कॉन्फ़िगर किया जा सकता है।"
},
"introText": "एडमिन पैनल में आपका स्वागत है।\n\nयहाँ आप सामान्य सेटिंग्स, कॉन्फ़िगरेशन, इंटरफ़ेस सेटिंग्स और हुक्स प्रबंधित कर सकते हैं।\n\nसाइडबार में किसी एक अनुभाग को चुनकर शुरू करें।"
},
"zod": {
"generic": {
"required": "{0} आवश्यक है",
"validNumber": "{0} एक वैध संख्या होनी चाहिए",
"validNumberRange": "{0} एक वैध संख्या या संख्या श्रेणी होनी चाहिए",
"validString": "{0} एक वैध स्ट्रिंग होनी चाहिए",
"validBoolean": "{0} एक वैध बूलियन होना चाहिए",
"validArray": "{0} एक वैध ऐरे होना चाहिए",
"stringMin": "{0} कम से कम {1} अक्षर का होना चाहिए",
"numberMin": "{0} कम से कम {1} होना चाहिए"
},
"client": {
"id": "क्लाइंट ID",
"name": "नाम",
"expiresAt": "समाप्ति तिथि",
"address4": "IPv4 पता",
"address6": "IPv6 पता",
"serverAllowedIps": "सर्वर द्वारा अनुमत IPs",
"firewallIps": "फ़ायरवॉल द्वारा अनुमत IPs",
"firewallIpsInvalid": "अमान्य फ़ायरवॉल IP प्रविष्टि। समर्थित सिंटैक्स के लिए दस्तावेज़ देखें।"
},
"user": {
"username": "उपयोगकर्ता नाम",
"password": "पासवर्ड",
"remember": "याद रखें",
"name": "नाम",
"email": "ई-मेल",
"emailInvalid": "ई-मेल एक वैध ईमेल होनी चाहिए",
"passwordMatch": "पासवर्ड मेल खाने चाहिए",
"totpEnable": "TOTP सक्षम करें",
"totpEnableTrue": "TOTP सक्षम सत्य होना चाहिए",
"totpCode": "TOTP कोड"
},
"userConfig": {
"host": "होस्ट"
},
"general": {
"sessionTimeout": "सत्र समय समाप्ति",
"metricsEnabled": "मेट्रिक्स",
"metricsPassword": "मेट्रिक्स पासवर्ड"
},
"interface": {
"cidr": "CIDR",
"device": "डिवाइस",
"cidrValid": "CIDR वैध होना चाहिए"
},
"otl": "एकबारगी लिंक",
"stringMalformed": "स्ट्रिंग विकृत है",
"body": "बॉडी एक वैध ऑब्जेक्ट होनी चाहिए",
"hook": "हुक",
"enabled": "सक्षम",
"mtu": "MTU",
"port": "पोर्ट",
"persistentKeepalive": "स्थायी कीपअलाइव",
"address": "IP पता",
"dns": "DNS",
"allowedIps": "अनुमत IPs",
"file": "फ़ाइल"
},
"hooks": {
"preUp": "PreUp",
"postUp": "PostUp",
"preDown": "PreDown",
"postDown": "PostDown"
},
"copy": {
"notSupported": "कॉपी समर्थित नहीं है",
"copied": "कॉपी हो गया!",
"failed": "कॉपी विफल रहा",
"copy": "कॉपी करें"
},
"awg": {
"jCLabel": "जंक पैकेट गणना (Jc)",
"jCDescription": "भेजे जाने वाले जंक पैकेट की संख्या (1-128, अनुशंसित: 4-12)",
"jMinLabel": "जंक पैकेट न्यूनतम आकार (Jmin)",
"jMinDescription": "जंक पैकेट का न्यूनतम आकार (0-1279*, अनुशंसित: 8, Jmax से कम होना चाहिए)",
"jMaxLabel": "जंक पैकेट अधिकतम आकार (Jmax)",
"jMaxDescription": "जंक पैकेट का अधिकतम आकार (1-1280*, अनुशंसित: 80, Jmin से अधिक होना चाहिए)",
"s1Label": "इनिट पैकेट जंक आकार (S1)",
"s1Description": "इनिट पैकेट जंक आकार (0-1132[1280* - 148 = 1132], अनुशंसित: 15-150, S1+56 ≠ S2)",
"s2Label": "रिस्पॉन्स पैकेट जंक आकार (S2)",
"s2Description": "रिस्पॉन्स पैकेट जंक आकार (0-1188[1280* - 92 = 1188], अनुशंसित: 15-150)",
"s3Label": "कुकी रिप्लाई पैकेट जंक आकार (S3)",
"s3Description": "कुकी रिप्लाई पैकेट जंक आकार",
"s4Label": "ट्रांसपोर्ट पैकेट जंक आकार (S4)",
"s4Description": "ट्रांसपोर्ट पैकेट जंक आकार",
"h1Label": "इनिट मैजिक हेडर (H1)",
"h1Description": "इनिट पैकेट हेडर मान या श्रेणी (X या X-Y, जहाँ X<Y। न्यूनतम 5, अधिकतम 2147483647। मान या श्रेणी अन्य हेडर से ओवरलैप नहीं होनी चाहिए)",
"h2Label": "रिस्पॉन्स मैजिक हेडर (H2)",
"h2Description": "रिस्पॉन्स पैकेट हेडर मान या श्रेणी (X या X-Y, जहाँ X<Y। न्यूनतम 5, अधिकतम 2147483647। मान या श्रेणी अन्य हेडर से ओवरलैप नहीं होनी चाहिए)",
"h3Label": "कुकी रिप्लाई मैजिक हेडर (H3)",
"h3Description": "कुकी रिप्लाई पैकेट हेडर मान या श्रेणी (X या X-Y, जहाँ X<Y। न्यूनतम 5, अधिकतम 2147483647। मान या श्रेणी अन्य हेडर से ओवरलैप नहीं होनी चाहिए)",
"h4Label": "ट्रांसपोर्ट मैजिक हेडर (H4)",
"h4Description": "ट्रांसपोर्ट पैकेट हेडर मान या श्रेणी (X या X-Y, जहाँ X<Y। न्यूनतम 5, अधिकतम 2147483647। मान या श्रेणी अन्य हेडर से ओवरलैप नहीं होनी चाहिए)",
"i1Label": "विशेष जंक पैकेट 1 (I1)",
"i1Description": "hex फ़ॉर्मेट में प्रोटोकॉल मिमिक पैकेट: <b 0x...>",
"i2Label": "विशेष जंक पैकेट 2 (I2)",
"i2Description": "hex फ़ॉर्मेट में प्रोटोकॉल मिमिक पैकेट: <b 0x...>",
"i3Label": "विशेष जंक पैकेट 3 (I3)",
"i3Description": "hex फ़ॉर्मेट में प्रोटोकॉल मिमिक पैकेट: <b 0x...>",
"i4Label": "विशेष जंक पैकेट 4 (I4)",
"i4Description": "hex फ़ॉर्मेट में प्रोटोकॉल मिमिक पैकेट: <b 0x...>",
"i5Label": "विशेष जंक पैकेट 5 (I5)",
"i5Description": "hex फ़ॉर्मेट में प्रोटोकॉल मिमिक पैकेट: <b 0x...>",
"mtuNote": "मान MTU पर निर्भर करते हैं",
"obfuscationParameters": "AmneziaWG ऑबफस्केशन पैरामीटर"
}
}

5
src/nuxt.config.ts

@ -136,6 +136,11 @@ export default defineNuxtConfig({
language: 'bg-BG',
name: 'Български',
},
{
code: 'hi',
language: 'hi-IN',
name: 'हिन्दी',
},
{
code: 'gl',
language: 'gl-ES',

Loading…
Cancel
Save