diff --git a/api/v1/user_setting.go b/api/v1/user_setting.go index 6632199a..b158b8aa 100644 --- a/api/v1/user_setting.go +++ b/api/v1/user_setting.go @@ -44,6 +44,7 @@ var ( "en", "es", "fr", + "hi", "hr", "it", "ja", diff --git a/web/src/i18n.ts b/web/src/i18n.ts index 44a76e63..abf5dac7 100644 --- a/web/src/i18n.ts +++ b/web/src/i18n.ts @@ -8,6 +8,7 @@ export const availableLocales = [ "en", "es", "fr", + "hi", "hr", "it", "ja", diff --git a/web/src/locales/hi.json b/web/src/locales/hi.json new file mode 100644 index 00000000..0db06c19 --- /dev/null +++ b/web/src/locales/hi.json @@ -0,0 +1,431 @@ +{ + "common": { + "memos-slogan": "एक हल्का, स्व-होस्टेड मेमो हब। ओपन सोर्स और हमेशा के लिए मुफ्त।", + "about": "के बारे में", + "home": "होम", + "resources": "संसाधन", + "settings": "सेटिंग्स", + "archived": "संग्रहीत", + "email": "ईमेल", + "password": "पासवर्ड", + "avatar": "अवतार", + "username": "उपयोगकर्ता नाम", + "nickname": "उपनाम", + "save": "सहेजें", + "close": "बंद करें", + "cancel": "रद्द करें", + "create": "बनाएँ", + "update": "अपडेट करें", + "change": "बदलें", + "confirm": "पुष्टि करें", + "reset": "रीसेट करें", + "language": "भाषा", + "version": "संस्करण", + "pin": "पिन करें", + "unpin": "अनपिन करें", + "edit": "संपादित करें", + "restore": "पुनर्स्थापित करें", + "delete": "हटाएँ", + "null": "शून्य", + "share": "साझा करें", + "archive": "संग्रहीत करें", + "basic": "मूल", + "admin": "एडमिन", + "explore": "अन्वेषण करें", + "sign-in": "साइन इन करें", + "sign-in-with": "{{provider}} के साथ साइन इन करें", + "or": "या", + "sign-up": "साइन अप करें", + "sign-out": "साइन आउट करें", + "type": "प्रकार", + "shortcuts": "शॉर्टकट", + "title": "शीर्षक", + "filter": "फ़िल्टर", + "filter-period": "{{from}} से {{to}} तक", + "tags": "टैग", + "yourself": "खुद", + "changed": "बदल गया", + "fold": "फोल्ड", + "expand": "विस्तार करें", + "image": "तस्वीर", + "link": "लिंक", + "vacuum": "वैक्यूम", + "select": "चयन करें", + "database": "डेटाबेस", + "upload": "अपलोड करें", + "preview": "पूर्वावलोकन", + "rename": "नाम बदलें", + "clear": "साफ़ करें", + "name": "नाम", + "visibility": "दृश्यता", + "learn-more": "अधिक जानें", + "beta": "बीटा", + "new": "नया", + "dialog": { + "error": "त्रुटि", + "help": "मदद", + "info": "सूचना", + "success": "सफलता", + "warning": "चेतावनी" + }, + "mark": "चिह्नित" + }, + "router": { + "back-to-home": "होम पर वापस जाएं" + }, + "auth": { + "signup-as-host": "होस्ट के रूप में साइन अप करें", + "host-tip": "आप साइट होस्ट के रूप में पंजीकृत हो रहे हैं।", + "not-host-tip": "अगर आपके पास खाता नहीं है, कृपया साइट होस्ट से संपर्क करें।", + "new-password": "नया पासवर्ड", + "repeat-new-password": "नए पासवर्ड को दोहराएं" + }, + "editor": { + "editing": "संपादन कर रहे हैं...", + "cancel-edit": "संपादन रद्द करें", + "save": "सहेजें", + "placeholder": "कोई विचार...", + "only-image-supported": "केवल छवि फ़ाइल समर्थित है।", + "cant-empty": "सामग्री खाली नहीं हो सकती", + "local": "स्थानीय", + "resources": "संसाधन" + }, + "memo": { + "view-detail": "विवरण देखें", + "copy-link": "लिंक कॉपी करें", + "embed": "एम्बेड करें", + "archived-memos": "संग्रहीत मेमो", + "no-archived-memos": "कोई संग्रहीत मेमो नहीं।", + "fetching-data": "डेटा लाया जा रहा है...", + "fetch-more": "और लाने के लिए यहां क्लिक करें", + "archived-at": "संग्रहीत किया गया", + "search-placeholder": "मेमो खोजें", + "visibility": { + "private": "निजी", + "protected": "सदस्यों को दिखाई देता है", + "public": "सभी के लिए सार्वजनिक", + "disabled": "सार्वजनिक मेमो अक्षम किए गए हैं" + }, + "delete-memo": "मेमो हटाएँ", + "delete-confirm": "क्या आप इस मेमो को हटाने के लिए सुनिश्चित हैं?\n\nयह कार्रवाई अप्रत्याशित है।❗" + }, + "resource": { + "no-resources": "कोई संसाधन नहीं।", + "fetching-data": "डेटा लाया जा रहा है...", + "copy-link": "लिंक कॉपी करें", + "reset-link": "लिंक रीसेट करें", + "reset-resource-link": "संसाधन लिंक रीसेट करें", + "reset-link-prompt": "क्या आप लिंक को रीसेट करने के लिए सुनिश्चित हैं?\nयह सभी वर्तमान लिंक उपयोगों को बिगाड़ देगा।\n\nयह कार्रवाई अप्रत्याशित है।❗", + "delete-resource": "संसाधन हटाएँ", + "linked-amount": "लिंक की गई राशि", + "warning-text": "क्या आप इस संसाधन को हटाने के लिए सुनिश्चित हैं?\n\nयह कार्रवाई अप्रत्याशित है।❗", + "warning-text-unused": "क्या आप इन अपयुक्त संसाधनों को हटाने के लिए सुनिश्चित हैं?\n\nयह कार्रवाई अप्रत्याशित है।❗", + "no-unused-resources": "कोई अपयुक्त संसाधन नहीं हैं", + "delete-selected-resources": "चयनित संसाधनों को हटाएँ", + "no-files-selected": "कोई फ़ाइलें चयनित नहीं हैं❗", + "upload-successfully": "सफलतापूर्वक अपलोड किया गया", + "file-drag-drop-prompt": "फ़ाइल अपलोड करने के लिए अपनी फ़ाइल यहां खींचें और छोड़ें", + "search-bar-placeholder": "संसाधन खोजें", + "clear": "साफ़ करें", + "create-dialog": { + "title": "संसाधन बनाएँ", + "upload-method": "अपलोड विधि", + "local-file": { + "option": "स्थानीय फ़ाइल", + "choose": "फ़ाइल चुनें..." + }, + "external-link": { + "option": "बाह्य लिंक", + "link": "लिंक", + "link-placeholder": "https://the.link.to/your/resource", + "file-name": "फ़ाइल का नाम", + "file-name-placeholder": "फ़ाइल का नाम", + "type": "प्रकार", + "type-placeholder": "फ़ाइल प्रकार" + }, + "download-link": { + "option": "डाउनलोड लिंक" + } + } + }, + "shortcut-list": { + "shortcut-title": "शॉर्टकट शीर्षक", + "create-shortcut": "शॉर्टकट बनाएँ", + "edit-shortcut": "शॉर्टकट संपादित करें", + "eligible-memo": "उपयुक्त मेमो", + "fill-previous": "कृपया पिछले फ़िल्टर मान को भरें", + "title-required": "शीर्षक आवश्यक है", + "value-required": "फ़िल्टर मान आवश्यक है" + }, + "tag-list": { + "tip-text": "बनाने के लिए `#tag` इनपुट करें", + "create-tag": "टैग बनाएँ", + "all-tags": "सभी टैग", + "tag-name": "टैग_नाम" + }, + "daily-review": { + "title": "दैनिक समीक्षा", + "no-memos": "उफ़, कुछ भी नहीं है।" + }, + "setting": { + "my-account": "मेरा खाता", + "preference": "प्राथमिकता", + "member": "सदस्य", + "member-list": "सदस्य सूची", + "system": "सिस्टम", + "openai": "OpenAI", + "storage": "संग्रहण", + "sso": "एसएसओ", + "account-section": { + "title": "खाता जानकारी", + "username-note": "साइन इन करने के लिए उपयोग किया जाता है", + "nickname-note": "बैनर में प्रदर्शित किया जाता है", + "email-note": "वैकल्पिक", + "update-information": "जानकारी अपडेट करें", + "change-password": "पासवर्ड बदलें", + "reset-api": "API रीसेट करें", + "openapi-title": "OpenAPI", + "openapi-reset": "OpenAPI कुंजी रीसेट करें", + "openapi-reset-warning": "❗ मौजूदा API अमान्य हो जाएगा और एक नया जेनरेट होगा।\n\nक्या आप नया जेनरेट करना चाहते हैं?", + "openapi-sample-post": "नमस्ते #memos से {{url}}" + }, + "preference-section": { + "theme": "थीम", + "default-memo-visibility": "डिफ़ॉल्ट मेमो दृश्यता", + "default-resource-visibility": "डिफ़ॉल्ट संसाधन दृश्यता", + "enable-folding-memo": "मेमो फोल्ड करने की सक्षमता", + "enable-double-click": "दोहरी क्लिक संपादित करने की सक्षमता", + "editor-font-style": "संपादक फ़ॉन्ट शैली", + "mobile-editor-style": "मोबाइल संपादक शैली", + "default-memo-sort-option": "मेमो प्रदर्शन समय", + "telegram-user-id": "टेलीग्राम उपयोगकर्ता आईडी", + "telegram-user-id-placeholder": "अपने टेलीग्राम बॉट को कोई शब्द भेजें और प्राप्त करें", + "created_ts": "समय बनाया गया", + "updated_ts": "समय अद्यतन किया गया", + "daily-review-time-offset": "दैनिक समीक्षा समय ऑफ़सेट", + "auto-collapse": "ऑटो संक्षेपित" + }, + "storage-section": { + "current-storage": "वर्तमान ऑब्जेक्ट स्टोरेज", + "type-database": "डेटाबेस", + "type-local": "स्थानीय", + "storage-services-list": "स्टोरेज सेवा सूची", + "create-a-service": "सेवा बनाएँ", + "update-a-service": "सेवा अपडेट करें", + "warning-text": "क्या आप स्टोरेज सेवा \"{{name}}\" को हटाने के लिए सुनिश्चित हैं?\n\nयह कार्रवाई अप्रत्याशित है।❗", + "delete-storage": "संग्रहण हटाएँ", + "local-storage-path": "स्थानीय संग्रहण मार्ग", + "update-local-path": "स्थानीय संग्रहण मार्ग अपडेट करें", + "update-local-path-description": "स्थानीय संग्रहण मार्ग एक अपने डेटाबेस फ़ाइल के प्रति संबंधित मार्ग है", + "create-storage": "संग्रहण बनाएँ", + "update-storage": "संग्रहण अपडेट करें", + "update-storage-id": "वर्तमान संग्रहण", + "service-name": "सेवा नाम", + "storage-id": "संग्रहण आईडी", + "storage-endpoint": "संग्रहण अंतःस्थान", + "access-key-id": "पहुँच कुंजी आईडी", + "secret-access-key": "गुप्त पहुँच कुंजी", + "bucket-name": "बकेट का नाम", + "region": "क्षेत्र", + "region-placeholder": "जैसे: ap-northeast-1", + "base-url": "बेस यूआरएल", + "base-url-placeholder": "https://example.com", + "sync-period": "सिंक अवधि", + "sync-period-placeholder": "डेटा सिंक्रनाइज़ करने की अवधि इस बिंदु पर है", + "google-service-account": "Google सेवा खाता", + "dropbox-oauth-token": "Dropbox OAuth टोकन", + "api-key": "एपीआई कुंजी", + "enable-private-resource": "निजी संसाधन सक्षम करें", + "enable-auto-sync": "ऑटो सिंक सक्षम करें", + "auto-sync-offset": "ऑटो सिंक ऑफ़सेट", + "auto-sync-offset-placeholder": "ऑटो सिंक ऑफ़सेट इस बिंदु पर है", + "warning-sync-now": "क्या आप सभी संग्रहण अभी सिंक करना चाहते हैं?\n\nयह कार्रवाई अप्रत्याशित है।❗", + "sync-now": "अब सिंक करें", + "need-sync": "सिंक की जरूरत है" + }, + "member-section": { + "create-member": "सदस्य बनाएँ", + "update-member": "सदस्य अपडेट करें", + "warning-text": "क्या आप सदस्य \"{{name}}\" को हटाने के लिए सुनिश्चित हैं?\n\nयह कार्रवाई अप्रत्याशित है।❗", + "delete-member": "सदस्य हटाएँ", + "member-list": "सदस्य सूची", + "invite-info": "आमंत्रण जानकारी", + "invited-members": "निमंत्रित सदस्य", + "invited-members-list": "निमंत्रित सदस्य सूची", + "member-role": "सदस्य भूमिका", + "invited-email": "आमंत्रित ईमेल", + "invited-role": "आमंत्रित भूमिका", + "send-invitation": "निमंत्रण भेजें", + "send-invitation-info": "सदस्य को निमंत्रण भेजने के लिए आईडी और भूमिका आवश्यक होगी।", + "invitation-email-placeholder": "नए सदस्य का ईमेल दर्ज करें", + "delete-member-invitation": "सदस्य निमंत्रण हटाएँ", + "delete-invitation-text": "क्या आप सदस्य \"{{email}}\" के निमंत्रण को हटाने के लिए सुनिश्चित हैं?\n\nयह कार्रवाई अप्रत्याशित है।❗" + }, + "system-section": { + "deploy-static": "स्थिर वेबसाइट तैयार करें", + "deploy-system-warning": "क्या आप सिस्टम को तैयार करने के लिए सुनिश्चित हैं?\n\nयह कार्रवाई अप्रत्याशित है।❗", + "system-deployed": "सिस्टम तैयार हो गया है", + "system-deployed-info": "इसे अब जितने बार चाहें उतने बार तैयार किया जा सकता है।", + "reset-system-warning": "क्या आप सभी डेटा को सिस्टम रीसेट करने के लिए सुनिश्चित हैं?\n\nयह कार्रवाई अप्रत्याशित है।❗", + "reset-system": "सिस्टम रीसेट करें", + "system-reset": "सिस्टम रीसेट किया गया", + "system-reset-info": "सभी डेटा साफ हो गया है।", + "manual-upgrade": "मैनुअल अपग्रेड", + "manual-upgrade-info": "कृपया अपने वेबसाइट और सर्वर को बूट से पुनः तैयार करें।", + "latest-version": "नवीनतम संस्करण", + "check-version": "संस्करण की जांच करें", + "checked-version": "संस्करण की जांच की गई", + "upgrade-system": "सिस्टम अपग्रेड करें", + "upgrade-system-warning": "क्या आप सिस्टम को अपग्रेड करने के लिए सुनिश्चित हैं?\n\nयह कार्रवाई अप्रत्याशित है।❗", + "system-upgrade": "सिस्टम अपग्रेड किया गया है", + "system-upgrade-info": "सिस्टम अपग्रेड हो गया है।" + }, + "openai-section": { + "show-as-bot": "बॉट के रूप में प्रदर्शित करें", + "toggle-as-bot-warning": "क्या आप बॉट के रूप में प्रदर्शित करने के लिए सुनिश्चित हैं?\n\nयह कार्रवाई अप्रत्याशित है।❗", + "toggle-as-bot": "बॉट के रूप में प्रदर्शित हो रहा है", + "toggle-as-bot-info": "बॉट के रूप में प्रदर्शित हो गया है।", + "disconnect-from-openai": "OpenAI से डिस्कनेक्ट करें", + "openai-disconnect-warning": "क्या आप OpenAI से डिस्कनेक्ट करने के लिए सुनिश्चित हैं?\n\nडिस्कनेक्ट करने के बाद बॉट जानकारी प्राप्त नहीं कर सकता है।\n\nयह कार्रवाई अप्रत्याशित है।❗", + "openai-disconnected": "OpenAI से डिस्कनेक्ट हो गया", + "openai-disconnected-info": "बॉट अब OpenAI से डिस्कनेक्ट हो गया है।", + "reset-openai": "OpenAI रीसेट करें", + "openai-reset-warning": "क्या आप OpenAI को रीसेट करने के लिए सुनिश्चित हैं?\n\nयह कार्रवाई अप्रत्याशित है।❗", + "openai-reset": "OpenAI को रीसेट करें", + "openai-reset-info": "OpenAI रीसेट कर दिया गया है।" + }, + "sso-section": { + "single-sign-on": "सिंगल साइन ऑन (SSO)", + "sso-info": "सिंगल साइन ऑन (SSO) सेटिंग को अक्षम करने से आपके सभी उपयोगकर्ताओं के लिए लॉग इन रद्द कर दिया जाएगा।", + "enable-sso": "सिंगल साइन ऑन (SSO) सक्षम करें", + "sso-enabled": "सिंगल साइन ऑन (SSO) सक्षम हो गया", + "sso-enabled-info": "सिंगल साइन ऑन (SSO) सक्षम कर दिया गया है।", + "sso-disable-warning": "क्या आप सिंगल साइन ऑन (SSO) को अक्षम करने के लिए सुनिश्चित हैं?\n\nडिसेबल करने के बाद सिंगल साइन ऑन (SSO) सेटिंग्स चोटी से अक्षम हो जाएगा और सभी उपयोगकर्ताएँ नियंत्रण पर आएगी।\n\nयह कार्रवाई अप्रत्याशित है।❗", + "disable-sso": "सिंगल साइन ऑन (SSO) अक्षम करें", + "sso-disabled": "सिंगल साइन ऑन (SSO) अक्षम हो गया", + "sso-disabled-info": "सिंगल साइन ऑन (SSO) अक्षम कर दिया गया है।" + } + }, + "filter": { + "new-filter": "नया फ़िल्टर", + "type": { + "tag": "टैग", + "type": "प्रकार", + "text": "पाठ", + "display-time": "प्रदर्शन समय", + "visibility": "दृश्यता" + }, + "operator": { + "contains": "में है", + "not-contains": "में नहीं है", + "is": "बराबर है", + "is-not": "बराबर नहीं है", + "before": "से पहले", + "after": "के बाद" + }, + "value": { + "not-tagged": "कोई टैग नहीं", + "linked": "लिंक्ड है", + "has-attachment": "अटैचमेंट है" + }, + "text-placeholder": "^ से शुरू करने के लिए रेगेक्स उपयोग करें", + "and": "और", + "or": "या" + }, + "amount-text": { + "memo_one": "मेमो", + "memo_other": "मेमोस", + "tag_one": "टैग", + "tag_other": "टैग्स", + "day_one": "दिन", + "day_other": "दिनें" + }, + "message": { + "no-data": "शायद कोई डेटा नहीं मिला, शायद यह किसी अन्य विकल्प हो सकता है।", + "memos-ready": "सभी मेमो तैयार हैं 🎉", + "resource-ready": "सभी संसाधन तैयार हैं 🎉", + "restored-successfully": "सफलतापूर्वक पुनर्स्थापित किया गया", + "memo-updated-datetime": "मेमो बनाने की तिथि बदल गई है।", + "invalid-created-datetime": "अमान्य बनाई गई तिथि।", + "change-memo-created-time": "मेमो बनाने का समय बदलें", + "change-memo-created-time-warning-1": "यह एक सामान्य व्यवहार नहीं है।", + "change-memo-created-time-warning-2": "कृपया यह सुनिश्चित करें कि आपको वास्तव में इसकी जरूरत है।", + "memo-not-found": "मेमो नहीं मिला।", + "fill-all": "कृपया सभी फ़ील्ड भरें।", + "password-not-match": "पासवर्ड मेल नहीं खाते।", + "new-password-not-match": "नए पासवर्ड मेल नहीं खाते।", + "image-load-failed": "तस्वीर लोड विफल हुआ", + "fill-form": "कृपया इस फ़ॉर्म को भरें", + "fill-server-name": "कृपया सर्वर का नाम भरें", + "login-failed": "लॉगिन विफल हुआ", + "signup-failed": "साइनअप विफल हुआ", + "user-not-found": "उपयोगकर्ता नहीं मिला", + "password-changed": "पासवर्ड बदल दिया गया", + "private-only": "यह मेमो केवल निजी है।", + "copied": "कॉपी किया गया", + "succeed-copy-content": "सामग्री सफलतापूर्वक कॉपी की गई।", + "succeed-copy-code": "कोड सफलतापूर्वक कॉपी किया गया।", + "succeed-copy-link": "लिंक सफलतापूर्वक कॉपी किया गया।", + "change-resource-filename": "संसाधन फ़ाइल का नाम बदलें", + "resource-filename-updated": "संसाधन फ़ाइल का नाम बदल गया है।", + "invalid-resource-filename": "अमान्य फ़ाइल का नाम।", + "click-to-save-the-image": "तस्वीर सहेजने के लिए क्लिक करें", + "generating-the-screenshot": "स्क्रीनशॉट बनाया जा रहा है...", + "count-selected-resources": "कुल चयनित", + "too-short": "बहुत कम", + "too-long": "बहुत लंबा", + "not-allow-space": "अनुमति नहीं है अंतरिक्ष", + "not-allow-chinese": "चीनी की अनुमति नहीं है", + "succeed-vacuum-database": "डेटाबेस को सफलतापूर्वक वैक्यूम कर दिया गया", + "succeed-update-additional-style": "अतिरिक्त शैली सफलतापूर्वक अपडेट की गई।", + "succeed-copy-resource-link": "संसाधन लिंक सफलतापूर्वक कॉपी किया गया।", + "succeed-update-customized-profile": "प्रोफ़ाइल सफलतापूर्वक कस्टमाइज़ किया गया।", + "succeed-update-additional-script": "अतिरिक्त स्क्रिप्ट सफलतापूर्वक अपडेट की गई।", + "update-succeed": "अपडेट सफल हुआ", + "page-not-found": "404 - पेज नहीं मिला 😥", + "maximum-upload-size-is": "अधिकतम अपलोड साइज {{size}} MiB है", + "file-exceeds-upload-limit-of": "फ़ाइल {{file}} अपलोड सीमा {{size}} MiB की पार कर गई है" + }, + "days": { + "mon": "सोमवार", + "tue": "मंगलवार", + "wed": "बुधवार", + "thu": "गुरुवार", + "fri": "शुक्रवार", + "sat": "शनिवार", + "sun": "रविवार" + }, + "memo-chat": { + "title": "मेमो चैट", + "save-as-memo": "मेमो के रूप में सहेजें", + "save-as-memo-success": "मेमो के रूप में सफलतापूर्वक सहेजा गया।", + "not-enabled": "आपने अपना OpenAI API कुंजी सेट नहीं किया है।", + "go-to-settings": "सेटिंग्स पर जाएं", + "placeholder": "कुछ भी पूछें...", + "no-message": "कोई संदेश नहीं", + "default-message-group-title": "डिफ़ॉल्ट सत्र", + "create-message-group-title": "सत्र बनाएँ", + "label-message-group-name-title": "सत्र का नाम" + }, + "embed-memo": { + "title": "मेमो एम्बेड करें", + "text": "नीचे दिए गए कोड को अपने ब्लॉग या वेबसाइट में कॉपी और पेस्ट करें।", + "only-public-supported": "* केवल सार्वजनिक मेमो एम्बेड किए जा सकते हैं।", + "copy": "कॉपी करें" + }, + "heatmap": { + "memo-in": "{{period}} में मेमो", + "memos-in": "{{period}} में मेमोस", + "memo-on": "{{date}} को {{amount}} मेमो", + "memos-on": "{{date}} को {{amount}} मेमोस", + "day": "दिन", + "days": "दिनें" + }, + "about": { + "about-memos": "मेमोस के बारे में", + "memos-description": "मेमोस एक वेब-आधारित नोट-लेखन एप्लिकेशन है जिसका उपयोग आप नोट लिखने, व्यवस्थित करने और साझा करने के लिए कर सकते हैं।", + "no-server-description": "इस सर्वर के लिए कोई विवरण निर्धारित नहीं किया गया है।", + "powered-by": "द्वारा संचालित", + "other-projects": "अन्य प्रोजेक्ट्स" + } +} \ No newline at end of file