This is an automated email from the ASF dual-hosted git repository.
vatsrahul1001 pushed a commit to branch v3-4-test
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/v3-4-test by this push:
new 9c052e0ce79 [v3-4-test] Complete Hindi (hi) UI translations (#75057)
(#75183)
9c052e0ce79 is described below
commit 9c052e0ce799674ca153d721887e55fec3bb0803
Author: github-actions[bot]
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Tue Oct 20 14:31:15 2026 +0530
[v3-4-test] Complete Hindi (hi) UI translations (#75057) (#75183)
The Hindi locale had fallen below the completeness threshold tracked for
releases, leaving large parts of the web UI untranslated for Hindi
speakers. Fill the remaining gaps across all namespaces so the interface
is fully localized, following the glossary and formal register defined in
the hi locale guideline, and drop keys that no longer exist in the English
source.
(cherry picked from commit c6e4d52f61b87a5ca6813efe26e3a6915f856060)
Co-authored-by: Rahul Vats <[email protected]>
Co-authored-by: Claude <[email protected]>
---
.../airflow/ui/public/i18n/locales/hi/admin.json | 15 ++-
.../airflow/ui/public/i18n/locales/hi/assets.json | 16 ++-
.../airflow/ui/public/i18n/locales/hi/browse.json | 32 +++++
.../airflow/ui/public/i18n/locales/hi/common.json | 150 ++++++++++++++++++++-
.../ui/public/i18n/locales/hi/components.json | 45 ++++++-
.../src/airflow/ui/public/i18n/locales/hi/dag.json | 133 ++++++++++++++++--
.../airflow/ui/public/i18n/locales/hi/dags.json | 54 +++++++-
.../ui/public/i18n/locales/hi/dashboard.json | 17 ++-
8 files changed, 433 insertions(+), 29 deletions(-)
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/hi/admin.json
b/airflow-core/src/airflow/ui/public/i18n/locales/hi/admin.json
index 6d1e1528520..1a887efd8a4 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/hi/admin.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/hi/admin.json
@@ -9,7 +9,9 @@
"config": {
"columns": {
"section": "सेक्शन"
- }
+ },
+ "config_one": "विन्यास",
+ "config_other": "विन्यास"
},
"connections": {
"add": "कनेक्शन जोड़ें",
@@ -32,6 +34,7 @@
"form": {
"connectionIdRequired": "कनेक्शन ID आवश्यक है",
"connectionIdRequirement": "कनेक्शन ID में केवल अंतरिक्ष कुंजियाँ नहीं
हो सकते",
+ "connectionTypeFields": "{{connectionType}} फ़ील्ड",
"connectionTypeRequired": "कनेक्शन प्रकार आवश्यक है",
"extraFieldsJson": "अतिरिक्त फ़ील्ड JSON",
"helperText": "कनेक्शन प्रकार गायब है? सुनिश्चित करें कि आपने संबंधित
Airflow Providers Package इंस्टॉल किया है।",
@@ -94,7 +97,9 @@
"dagProcessorJob": "DagProcessorJob",
"schedulerJob": "SchedulerJob",
"triggererJob": "TriggererJob"
- }
+ },
+ "job_one": "जॉब",
+ "job_other": "जॉब्स"
},
"plugins": {
"columns": {
@@ -102,6 +107,8 @@
},
"importError_one": "प्लगइन आयात त्रुटि",
"importError_other": "प्लगइन आयात त्रुटियां",
+ "plugin_one": "प्लगइन",
+ "plugin_other": "प्लगइन",
"searchPlaceholder": "फ़ाइल द्वारा खोजें"
},
"pools": {
@@ -135,7 +142,9 @@
"columns": {
"packageName": "पैकेज नाम",
"version": "संस्करण"
- }
+ },
+ "provider_one": "प्रोवाइडर",
+ "provider_other": "प्रोवाइडर्स"
},
"variables": {
"add": "वेरिएबल जोड़ें",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/hi/assets.json
b/airflow-core/src/airflow/ui/public/i18n/locales/hi/assets.json
index 800ef98ca75..121bd071c0f 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/hi/assets.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/hi/assets.json
@@ -1,5 +1,8 @@
{
"additional_data": "अतिरिक्त डेटा",
+ "alias_one": "उपनाम",
+ "alias_other": "उपनाम",
+ "aliases": "उपनाम",
"asset_many": "एसेट्स",
"asset_one": "एसेट",
"assetStateStore": {
@@ -13,6 +16,8 @@
"deleteWarning": "एसेट इस सहेजी गई state store प्रविष्टि को खो देगा।",
"edit": "Asset State Store संपादित करें",
"emptyState": "Asset state store ऐसे मान संग्रहीत करता है जो किसी एसेट
पहचान तक सीमित होते हैं और सभी Dag रन में साझा किए जाते हैं। वर्कर Task SDK के
माध्यम से asset state store में लिख सकते हैं।",
+ "entry_one": "प्रविष्टि",
+ "entry_other": "प्रविष्टियाँ",
"lastUpdatedBy": "अंतिम बार अपडेट किया गया",
"lastUpdatedByApi": "API",
"lastUpdatedByWatcher": "Watcher",
@@ -42,7 +47,11 @@
"title": "{{name}} के लिए एसेट इवेंट बनाएं"
},
"events": "इवेंट",
- "extra": "अतिरिक्त",
+ "filters": {
+ "groupPlaceholder": "ग्रुप खोजें",
+ "hasEvents": "इवेंट हैं",
+ "lastEventDateRange": "अंतिम इवेंट तिथि"
+ },
"group": "ग्रुप",
"lastAssetEvent": "अंतिम एसेट इवेंट",
"name": "नाम",
@@ -50,5 +59,8 @@
"scheduledDags": "निर्धारित डैग्स",
"scheduling": "शेड्यूलिंग",
"searchPlaceholder": "एसेट्स खोजें",
- "taskDependencies": "टास्क निर्भरताएं"
+ "taskDependencies": "टास्क निर्भरताएं",
+ "watcher_one": "वॉचर",
+ "watcher_other": "वॉचर्स",
+ "watchers": "वॉचर्स"
}
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/hi/browse.json
b/airflow-core/src/airflow/ui/public/i18n/locales/hi/browse.json
index 1b4be326d28..ca9dcec8674 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/hi/browse.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/hi/browse.json
@@ -10,6 +10,36 @@
"eventType": "इवेंट प्रकार"
}
},
+ "dagBundles": {
+ "active": "सक्रिय",
+ "columns": {
+ "active": "सक्रिय",
+ "importErrors": "इम्पोर्ट त्रुटियां",
+ "lastRefreshed": "अंतिम रिफ्रेश",
+ "name": "नाम",
+ "version": "वर्शन"
+ },
+ "detail": {
+ "status": "स्थिति"
+ },
+ "files": {
+ "columns": {
+ "file": "फ़ाइल",
+ "lastParsed": "अंतिम पार्स",
+ "parseDuration": "पार्स अवधि"
+ },
+ "file_one": "फ़ाइल",
+ "file_other": "फ़ाइलें",
+ "importErrorGone": "यह इम्पोर्ट त्रुटि अब दर्ज नहीं है। संभवतः इसे पुनः
पार्स द्वारा ठीक कर दिया गया था।",
+ "neverParsed": "कभी नहीं",
+ "showImportError_one": "त्रुटि देखें",
+ "showImportError_other": "{{count, number}} त्रुटियां देखें"
+ },
+ "inactive": "निष्क्रिय",
+ "neverRefreshed": "कभी नहीं",
+ "notRefreshedYet": "अभी तक रिफ्रेश नहीं किया गया",
+ "notVersioned": "वर्शन रहित"
+ },
"deadlines": {
"columns": {
"alertName": "अलर्ट नाम",
@@ -56,6 +86,8 @@
"successTitle": "XCom अपडेट किया गया",
"title": "XCom संपादित करें"
},
+ "entry_one": "XCom प्रविष्टि",
+ "entry_other": "XCom प्रविष्टियां",
"key": "कुंजी",
"title": "XCom",
"value": "मान"
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/hi/common.json
b/airflow-core/src/airflow/ui/public/i18n/locales/hi/common.json
index 9cd87b7b8e9..e1ad41320cc 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/hi/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/hi/common.json
@@ -8,6 +8,7 @@
"Variables": "वेरिएबल्स"
},
"allOperators": "सभी ऑपरेटर्स",
+ "allTeams": "सभी टीमें",
"appearance": {
"appearance": "दिखावट",
"darkMode": "डार्क मोड",
@@ -23,8 +24,10 @@
},
"backfill_one": "बैकफ़िल",
"backfill_other": "बैकफ़िल्स",
+ "breadcrumb": "ब्रेडक्रंब",
"browse": {
"auditLog": "ऑडिट लॉग",
+ "dagBundles": "डैग बंडल्स",
"deadlines": "डेडलाइन",
"jobs": "जॉब्स",
"requiredActions": "आवश्यक क्रियाएं",
@@ -37,7 +40,10 @@
"createdAssetEvent_other": "बनाए गए एसेट इवेंट्स",
"dag_one": "डैग",
"dag_other": "डैग्स",
+ "dagBundle_one": "डैग बंडल",
+ "dagBundle_other": "डैग बंडल्स",
"dagDetails": {
+ "activeRuns": "सक्रिय रन्स",
"catchup": "पकड़ना",
"dagRunTimeout": "डैग रन टाइमआउट",
"defaultArgs": "डिफ़ॉल्ट तर्क",
@@ -57,7 +63,8 @@
"owner": "स्वामी",
"params": "पैरामीटर",
"schedule": "अनुसूची",
- "tags": "टैग्स"
+ "tags": "टैग्स",
+ "team": "टीम"
},
"dagId": "डैग ID",
"dagRun": {
@@ -84,9 +91,8 @@
"dagRun_one": "डैग रन",
"dagRun_other": "डैग रन्स",
"dagRunId": "डैग रन ID",
+ "dagRunState": "डैग रन स्थिति",
"dagWarnings": "डैग चेतावनियां/त्रुटियां",
- "defaultToGraphView": "ग्राफ़ व्यू को डिफ़ॉल्ट करें",
- "defaultToGridView": "ग्रिड व्यू को डिफ़ॉल्ट करें",
"delete": "हटाएं",
"diff": "अंतर",
"diffCompareWith": "तुलना करें",
@@ -120,6 +126,8 @@
"title": "पहुँच अस्वीकृत"
}
},
+ "event_one": "इवेंट",
+ "event_other": "इवेंट्स",
"expand": {
"collapse": "संकुचित करें",
"expand": "विस्तृत करें",
@@ -135,22 +143,44 @@
},
"filter": "फ़िल्टर",
"filters": {
+ "addFilter": "फ़िल्टर जोड़ें",
+ "allIterations": "सभी",
+ "completedAt": "पूर्ण होने का समय",
+ "date": "तिथि",
"durationFrom": "अवधि से",
"durationTo": "अवधि तक",
"endTime": "समाप्ति समय",
+ "iteration": "पुनरावृत्ति",
"logicalDateFrom": "तार्किक तिथि से",
"logicalDateTo": "तार्किक तिथि तक",
+ "loop": "लूप",
+ "loopAllIterations": "{{loop}} सभी",
+ "loopIteration": "{{loop}} {{index}}",
+ "loopPlaceholder": "एक लूप चुनें",
+ "maxActiveRunsFrom": "अधिकतम सक्रिय रन्स से",
+ "maxActiveRunsTo": "अधिकतम सक्रिय रन्स तक",
+ "removeFilter": "फ़िल्टर हटाएं",
"runAfterFrom": "रन आफ़्टर से",
"runAfterTo": "रन आफ़्टर तक",
"searchAsset": "एसेट खोजें",
"selectDateRange": "तिथि रेंज चुनें",
- "startTime": "प्रारंभ समय"
+ "selectDateTime": "तिथि और समय चुनें",
+ "startTime": "प्रारंभ समय",
+ "switchIteration": "पुनरावृत्ति बदलें",
+ "time": "समय"
},
"fullscreen": {
"tooltip": "फ़ुलस्क्रीन के लिए {{hotkey}} दबाएं"
},
"generateToken": "टोकन जनरेट करें",
+ "includedIn": "में शामिल",
"key": "कुंजी",
+ "loading": "लोड हो रहा है…",
+ "logLevel": {
+ "hide": "लॉग स्तर छुपाएं",
+ "hotkey": "l",
+ "show": "लॉग स्तर दिखाएं"
+ },
"logicalDate": "तार्किक तिथि",
"logout": "लॉग आउट",
"logoutConfirmation": "आप एप्लिकेशन से लॉग आउट करने वाले हैं।",
@@ -170,12 +200,14 @@
"assets": "एसेट्स",
"browse": "ब्राउज़ करें",
"dags": "डैग्स",
+ "dashboard": "डैशबोर्ड",
"docs": "प्रलेखन",
"home": "मुख्य पृष्ठ",
"legacyFabViews": "पुराने व्यू",
"plugins": "प्लगइन",
"security": "सुरक्षा"
},
+ "no": "नहीं",
"noItemsFound": "कोई {{modelName}} नहीं मिला",
"note": {
"add": "नोट जोड़ें",
@@ -188,11 +220,14 @@
"write": "लिखें"
},
"overallStatus": "समग्र स्थिति",
+ "partition_one": "पार्टीशन",
+ "partition_other": "पार्टीशन्स",
"partitionedDagRun_one": "विभाजित Dag रन",
"partitionedDagRun_other": "विभाजित Dag रन",
"partitionedDagRunDetail": {
"receivedAssetEvents": "प्राप्त एसेट इवेंट"
},
+ "pause": "रोकें",
"pendingDagRun_one": "{{count, number}} लंबित Dag रन",
"pendingDagRun_other": "{{count, number}} लंबित Dag रन",
"presetFilters": {
@@ -243,6 +278,79 @@
},
"selectLanguage": "भाषा चुनें",
"selected": "चयनित",
+ "settings": {
+ "clearing": {
+ "keepTaskState": {
+ "helper": "टास्क इंस्टेंस साफ़ करते समय टास्क स्टेट स्टोर प्रविष्टियों
को हटाने के बजाय डिफ़ॉल्ट रूप से बनाए रखें।",
+ "label": "साफ़ करने पर टास्क स्टेट बनाए रखें"
+ },
+ "preventRunningTask": {
+ "helper": "टास्क इंस्टेंस साफ़ करते समय वर्तमान में चल रहे टास्क्स को
छोड़ दें।",
+ "label": "चल रहे टास्क्स को साफ़ करने से रोकें"
+ },
+ "runSelection": {
+ "helper": "डैग रन साफ़ करते समय डिफ़ॉल्ट रूप से चयनित विकल्प।",
+ "label": "डिफ़ॉल्ट रन साफ़ करने का चयन"
+ },
+ "taskSelection": {
+ "helper": "टास्क इंस्टेंस साफ़ करते समय डिफ़ॉल्ट रूप से चयनित विकल्प।",
+ "label": "डिफ़ॉल्ट टास्क साफ़ करने का चयन"
+ },
+ "title": "साफ़ करना"
+ },
+ "dagsList": {
+ "recentTasks": {
+ "helper": "डैग्स सूची में प्रत्येक डैग की हाल की टास्क स्थितियां
दिखाएं। उन्हें लोड करना छोड़ने के लिए इसे बंद करें, जो कई डैग्स वाले परिनियोजन
पर मदद कर सकता है।",
+ "label": "हाल के टास्क्स दिखाएं"
+ },
+ "title": "डैग्स सूची"
+ },
+ "description": "ये प्राथमिकताएं केवल इस ब्राउज़र में सहेजी जाती हैं और
पूरे ऐप पर लागू होती हैं।",
+ "general": {
+ "landingPage": {
+ "helper": "जब आप Airflow खोलते हैं तब दिखाया जाने वाला पेज।",
+ "label": "लैंडिंग पेज",
+ "options": {
+ "dags": "डैग्स",
+ "dashboard": "डैशबोर्ड"
+ }
+ },
+ "title": "सामान्य"
+ },
+ "graph": {
+ "defaultDirection": {
+ "helper": "डैग और एसेट ग्राफ़ के लिए लेआउट दिशा जिन्हें आपने अलग-अलग
सेट नहीं किया है।",
+ "label": "डिफ़ॉल्ट ग्राफ़ दिशा"
+ },
+ "taskGroupsExpanded": {
+ "helper": "उन डैग्स में टास्क समूहों को विस्तृत करें जहां आपने समूह
चयन सहेजा नहीं है। मौजूदा चयन बनाए रखे जाते हैं।",
+ "label": "डिफ़ॉल्ट रूप से टास्क समूहों को विस्तृत करें"
+ },
+ "title": "ग्राफ़"
+ },
+ "marking": {
+ "taskSelection": {
+ "helper": "टास्क इंस्टेंस की स्थिति चिह्नित करते समय डिफ़ॉल्ट रूप से
चयनित विकल्प।",
+ "label": "डिफ़ॉल्ट चिह्नित करने का चयन"
+ },
+ "title": "चिह्नित करना"
+ },
+ "search": {
+ "matchAnywhere": {
+ "helper": "$t(search.advanced.description) प्रति-सर्चबार विकल्प और
साझा किए गए लिंक अभी भी प्राथमिकता लेते हैं।",
+ "label": "डिफ़ॉल्ट रूप से कहीं भी मिलान करें"
+ },
+ "title": "खोज"
+ },
+ "taskInstance": {
+ "defaultTab": {
+ "helper": "जब आप टास्क इंस्टेंस खोलते हैं तब सबसे पहले दिखाया जाने
वाला टैब। किसी विशिष्ट टैब के लिंक अभी भी वही टैब खोलते हैं।",
+ "label": "डिफ़ॉल्ट टास्क इंस्टेंस टैब"
+ },
+ "title": "टास्क इंस्टेंस"
+ },
+ "title": "सेटिंग्स"
+ },
"shortcuts": {
"categories": {
"code": "कोड",
@@ -276,6 +384,7 @@
"toggleExpand": "सभी ग्रुप्स को विस्तृत या संकुचित करें",
"toggleFullscreen": "फ़ुलस्क्रीन टॉगल करें",
"toggleGraphGrid": "ग्राफ़ / ग्रिड व्यू टॉगल करें",
+ "toggleLogLevel": "लॉग स्तर टॉगल करें",
"toggleSource": "स्रोत टॉगल करें",
"toggleTaskGroup": "$t(taskGroup_one) को विस्तृत या संकुचित करें",
"toggleTimestamp": "टाइमस्टैम्प टॉगल करें",
@@ -286,6 +395,9 @@
},
"showDetailsPanel": "विवरण पैनल दिखाएं",
"signedInAs": "के रूप में लॉग इन",
+ "slot": "स्लॉट",
+ "slot_one": "स्लॉट",
+ "slot_other": "स्लॉट्स",
"source": {
"hide": "स्रोत छुपाएं",
"hotkey": "s",
@@ -302,6 +414,7 @@
"no_status": "कोई स्थिति नहीं",
"none": "कुछ नहीं",
"open": "खुला",
+ "pending": "लंबित",
"planned": "नियोजित",
"queued": "कतार में",
"removed": "हटाया गया",
@@ -314,6 +427,9 @@
"up_for_retry": "पुनः प्रयास के लिए",
"upstream_failed": "अपस्ट्रीम विफल"
},
+ "switchDag": "$t(dag_one) बदलें",
+ "switchDagRun": "$t(dagRun_one) बदलें",
+ "switchMapIndex": "$t(mapIndex) बदलें",
"table": {
"completedAt": "पर पूर्ण",
"createdAt": "पर बनाया",
@@ -323,7 +439,10 @@
"filterReset_other": "फ़िल्टर रीसेट करें",
"from": "से",
"maxActiveRuns": "अधिकतम सक्रिय रन्स",
+ "noResultsFound": "कोई परिणाम नहीं मिला",
"noTagsFound": "कोई टैग नहीं मिले",
+ "noTeamsFound": "कोई टीम नहीं मिली",
+ "ownerPlaceholder": "स्वामी द्वारा फ़िल्टर करें",
"tagMode": {
"all": "सभी",
"any": "कोई भी"
@@ -356,6 +475,9 @@
"executorConfig": "एक्जीक्यूटर कॉन्फ़िग",
"hostname": "होस्टनेम",
"id": "ID",
+ "iteration": "पुनरावृत्ति",
+ "loopDecision": "निर्णय",
+ "loopIterations": "चलाई गई पुनरावृत्तियां",
"maxTries": "अधिकतम प्रयास",
"pid": "PID",
"pool": "पूल",
@@ -365,6 +487,11 @@
"queuedWhen": "कब कतार में",
"renderedMapIndex": "रेंडर किया गया Map Index",
"scheduledWhen": "कब निर्धारित",
+ "stateReason": "स्थिति का कारण",
+ "stateReasonSummary": {
+ "failed": "{{totalTries}} में से प्रयास {{tryNumber}} पर रुका",
+ "upForRetry": "{{totalTries}} में से प्रयास {{tryNumber}} के बाद पुनः
प्रयास कर रहा है"
+ },
"trigger": "ट्रिगर",
"triggerer": {
"assigned": "निर्धारित ट्रिगरर",
@@ -379,10 +506,21 @@
},
"taskInstance_one": "टास्क इंस्टेंस",
"taskInstance_other": "टास्क इंस्टेंसेज",
+ "teams": {
+ "more_one": "और {{count, number}} अधिक",
+ "more_other": "और {{count, number}} अधिक",
+ "none": "कोई टीम नहीं",
+ "title": "टीमें"
+ },
"timeRange": {
+ "anyTime": "कभी भी",
+ "in": "में",
+ "last7Days": "पिछले 7 दिन",
"last12Hours": "पिछले 12 घंटे",
"last24Hours": "पिछले 24 घंटे",
+ "last30Days": "पिछले 30 दिन",
"lastHour": "पिछला घंटा",
+ "latestRun": "नवीनतम रन",
"pastWeek": "पिछला सप्ताह"
},
"timestamp": {
@@ -463,6 +601,7 @@
"total": "कुल {{state}}",
"triggered": "ट्रिगर किया गया",
"tryNumber": "प्रयास संख्या",
+ "unpause": "पुनः आरंभ करें",
"user": "उपयोगकर्ता",
"validation": {
"mustBeAtLeast": "कम से कम {{min}} होना चाहिए।",
@@ -474,5 +613,6 @@
"tooltip": "रैप को टॉगल करने के लिए {{hotkey}} दबाएं",
"unwrap": "अनरैप",
"wrap": "रैप"
- }
+ },
+ "yes": "हां"
}
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/hi/components.json
b/airflow-core/src/airflow/ui/public/i18n/locales/hi/components.json
index 43d6d59e1ea..b41e9aeddb7 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/hi/components.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/hi/components.json
@@ -7,10 +7,20 @@
"backwards": "पीछे की ओर चलाएं",
"dateRange": "तिथि रेंज",
"errorStartDateBeforeEndDate": "प्रारंभ तिथि समाप्ति तिथि से पहले होनी
चाहिए",
+ "exceptionReason": {
+ "alreadyExists": "पहले से मौजूद है",
+ "inFlight": "प्रगति में",
+ "unknown": "अज्ञात"
+ },
"maxRuns": "अधिकतम सक्रिय रन्स",
"missingAndErroredRuns": "गुम और त्रुटि वाले रन्स",
"missingRuns": "गुम रन्स",
+ "notCreatedReason": "न बनाए जाने का कारण",
"overrideExistingParams": "मौजूदा रन पर पैरामीटर ओवरराइड करें",
+ "partitionRange": "पार्टीशन रेंज",
+ "partitionsAffected_one": "1 पार्टीशन बैकफ़िल किया जाएगा:",
+ "partitionsAffected_other": "{{count, number}} पार्टीशन बैकफ़िल किए
जाएंगे:",
+ "partitionsNone": "चयनित रेंज से मेल खाने वाले कोई पार्टीशन नहीं।",
"permissionDenied": "ड्राई रन विफल: उपयोगकर्ता के पास बैकफ़िल बनाने की
अनुमति नहीं है।",
"reprocessBehavior": "पुनः प्रक्रिया व्यवहार",
"run": "बैकफ़िल चलाएं",
@@ -28,7 +38,8 @@
"validation": {
"datesRequired": "डेटा अंतराल प्रारंभ तिथि और समाप्ति तिथि दोनों प्रदान
की जानी चाहिए।",
"startBeforeEnd": "डेटा अंतराल प्रारंभ तिथि समाप्ति तिथि से कम या उसके
बराबर होनी चाहिए।"
- }
+ },
+ "viewSlots": "बैकफ़िल #{{id}} के लिए स्लॉट देखें"
},
"banner": {
"backfillInProgress": "बैकफ़िल प्रगति में है",
@@ -63,6 +74,7 @@
"lastDagRun_other": "अंतिम {{count, number}} डैग रन्स",
"lastTaskInstance_one": "अंतिम टास्क इंस्टेंस",
"lastTaskInstance_other": "अंतिम {{count, number}} टास्क इंस्टेंसेज",
+ "medianTotalDuration": "कुल: {{duration}}",
"queuedDuration": "कतार अवधि",
"runAfter": "के बाद चलाएं",
"runDuration": "रन अवधि"
@@ -97,6 +109,10 @@
"taskGroup": "टास्क ग्रुप",
"zoomToTask": "चयनित टास्क पर ज़ूम करें"
},
+ "jsonPreview": {
+ "items_one": "1 आइटम",
+ "items_other": "{{count, number}} आइटम"
+ },
"limitedList": "+{{count, number}} और",
"limitedList.allItems": "सभी {{count, number}} आइटम:",
"limitedList.allTags_one": "सभी टैग्स (1)",
@@ -110,7 +126,27 @@
"file": "फ़ाइल",
"location": "{{name}} में लाइन {{line}}"
},
+ "passwordToggle": {
+ "hide": "मान छिपाएं",
+ "show": "मान दिखाएं"
+ },
+ "pausedDag": {
+ "drain": "ड्रेन",
+ "drainDescription": "अधूरे रन्स जारी रहते हैं, लेकिन कोई निर्धारित रन नहीं
बनाया जाता। रोके गए बैकफ़िल रुके रहते हैं। सभी अधूरे रन्स पूरे होने पर डैग फिर
से रुक जाता है।",
+ "keepPaused": "रुका हुआ रखें",
+ "keepPausedDescription": "नए और अधूरे रन्स तब तक प्रतीक्षा करते हैं जब तक
डैग को अनपॉज़ न किया जाए।",
+ "title": "डैग रुका हुआ है",
+ "unfinishedRunsWillRun_one": "1 अधूरा डैग रन प्रारंभ होगा या फिर से शुरू
होगा।",
+ "unfinishedRunsWillRun_other": "{{count, number}} अधूरे डैग रन्स प्रारंभ
होंगे या फिर से शुरू होंगे।",
+ "unpause": "अनपॉज़ करें",
+ "unpauseDescription": "डैग सक्रिय हो जाता है: अधूरे रन्स जारी रहते हैं और
शेड्यूल फिर से शुरू होता है। रोके गए बैकफ़िल रुके रहते हैं।"
+ },
"reparseDag": "डैग को दोबारा पार्स करें",
+ "slowestTaskInstances": {
+ "empty": "इस रेंज में कोई पूर्ण टास्क इंस्टेंस नहीं",
+ "title": "सबसे धीमे टास्क इंस्टेंस"
+ },
+ "sortMultiColumnHint": "कई कॉलम के आधार पर क्रमबद्ध करने के लिए Shift-क्लिक
करें",
"sortedAscending": "आरोही क्रम में सॉर्ट किया गया",
"sortedDescending": "अवरोही क्रम में सॉर्ट किया गया",
"sortedUnsorted": "अनसॉर्टेड",
@@ -130,12 +166,15 @@
"dataInterval": "डेटा अंतराल",
"dataIntervalAuto": "तार्किक तिथि और टाइमटेबल से अनुमानित",
"dataIntervalManual": "मैन्युअल रूप से निर्दिष्ट करें",
+ "editConfigAndTrigger": "विन्यास संपादित करें और ट्रिगर करें",
"intervalEnd": "अंत",
"intervalStart": "प्रारंभ",
"loading": "डैग जानकारी लोड हो रही है...",
"loadingFailed": "डैग जानकारी लोड करने में विफल। कृपया पुनः प्रयास करें।",
"manualRunDenied": "इस Dag के लिए मैनुअल रन की अनुमति नहीं है",
"partitionKeyHelp": "वैकल्पिक - केवल विभाजित Dags पर लागू होता है",
+ "recentConfig": "हाल के विन्यास",
+ "recentConfigPlaceholder": "एक हाल का विन्यास चुनें",
"runIdHelp": "वैकल्पिक - प्रदान न किए जाने पर जेनरेट किया जाएगा",
"selectDescription": "इस डैग का एक रन ट्रिगर करें",
"selectLabel": "सिंगल रन",
@@ -149,7 +188,8 @@
"title": "डैग रन ट्रिगर किया गया"
}
},
- "triggerAgainWithConfig": "इस कॉन्फ़िग के साथ फिर से ट्रिगर करें"
+ "triggerAgainWithConfig": "इस कॉन्फ़िग के साथ फिर से ट्रिगर करें",
+ "triggerOptions": "ट्रिगर विकल्प"
},
"trimText": {
"details": "विवरण",
@@ -166,6 +206,7 @@
"versionSelect": {
"allVersions": "सभी संस्करण",
"dagVersion": "डैग संस्करण",
+ "placeholder": "वर्शन चुनें",
"versionCode": "v{{versionCode}}"
}
}
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/hi/dag.json
b/airflow-core/src/airflow/ui/public/i18n/locales/hi/dag.json
index b9f6c4aac6a..fc398232ed5 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/hi/dag.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/hi/dag.json
@@ -1,4 +1,5 @@
{
+ "allMapIndexes": "सभी मैप इंडेक्स",
"allRuns": "सभी रन्स",
"blockingDeps": {
"dependency": "निर्भरता",
@@ -6,6 +7,7 @@
"title": "टास्क को शेड्यूल होने से रोकने वाली निर्भरताएं"
},
"calendar": {
+ "backfill": "बैकफ़िल",
"daily": "दैनिक",
"hourly": "प्रति घंटा",
"legend": {
@@ -34,6 +36,21 @@
"wednesday": "बुध"
}
},
+ "callbacks": {
+ "callback_one": "कॉलबैक",
+ "callback_other": "कॉलबैक्स",
+ "columns": {
+ "alertName": "डेडलाइन अलर्ट",
+ "callback": "कॉलबैक",
+ "deadlineTime": "डेडलाइन समय",
+ "missedBy": "चूक की अवधि",
+ "type": "प्रकार"
+ },
+ "types": {
+ "executor": "समकालिक",
+ "triggerer": "अतुल्यकालिक"
+ }
+ },
"code": {
"bundleUrl": "बंडल URL",
"noCode": "कोई कोड नहीं मिला",
@@ -42,6 +59,7 @@
},
"deadlineAlerts": {
"completionRule": "{{reference}} के {{interval}} के भीतर पूरा होना चाहिए",
+ "completionRuleDynamic": "{{reference}} से मापे गए एक परिवर्तनशील अंतराल
के भीतर पूरा होना चाहिए",
"count_one": "{{count, number}} डेडलाइन",
"count_other": "{{count, number}} डेडलाइन",
"referenceType": {
@@ -91,10 +109,6 @@
"critical": "CRITICAL",
"debug": "DEBUG",
"error": "ERROR",
- "fullscreen": {
- "button": "पूर्ण स्क्रीन",
- "tooltip": "पूर्ण स्क्रीन के लिए {{hotkey}} दबाएं"
- },
"info": "INFO",
"noTryNumber": "कोई प्रयास संख्या नहीं",
"search": {
@@ -103,9 +117,44 @@
"placeholder": "लॉग खोजें..."
},
"settings": "लॉग सेटिंग्स",
+ "tryNotStarted": "यह प्रयास अभी तक शुरू नहीं हुआ है।",
+ "viewFailedTry": "विफल प्रयास {{tryNumber}} के लॉग देखें",
"viewInExternal": "{{name}} में लॉग्स देखें (प्रयास {{attempt}})",
+ "viewPreviousTry": "पिछले प्रयास {{tryNumber}} के लॉग देखें",
+ "waitingToRetry": "प्रयास {{tryNumber}} पुनः प्रयास की प्रतीक्षा कर रहा
है।",
"warning": "WARNING"
},
+ "loop": {
+ "history": {
+ "capLabel": "सीमा: {{max}}",
+ "iterationsAxis": "पुनरावृत्तियाँ",
+ "stats": {
+ "capHits": "सीमा तक पहुँच गया",
+ "medianIterations": "माध्यिका पुनरावृत्तियाँ"
+ },
+ "title": "प्रति रन पुनरावृत्तियाँ"
+ },
+ "iterationLabel": "पुनरावृत्ति {{index}}",
+ "iterations": "पुनरावृत्तियाँ",
+ "outcome": "परिणाम",
+ "reason": {
+ "cap_reached": "पुनरावृत्ति सीमा ({{max}}) तक पहुँच गया",
+ "failed": "पुनरावृत्ति {{index}} पर विफल",
+ "iteration_failed": "{{taskId}} में पुनरावृत्ति {{index}} विफल हुई",
+ "ran_to_cap": "सभी {{max}} अनुमत पुनरावृत्तियाँ चलाईं",
+ "removed": "हटाया गया",
+ "running": "चल रहा है",
+ "skipped": "छोड़ा गया",
+ "stopped_early": "पुनरावृत्ति {{index}} पर जल्दी रुक गया"
+ },
+ "rules": {
+ "behaviour": "व्यवहार",
+ "boundedFor": "निश्चित संख्या में पुनरावृत्तियाँ चलाता है",
+ "exitCriteria": "निकास मानदंड",
+ "maxIterations": "अधिकतम पुनरावृत्तियाँ",
+ "whileUntil": "{{criteria}} तक दोहराता है"
+ }
+ },
"notFound": {
"back": "वापस जाएं",
"backToDags": "डैग्स पर वापस जाएं",
@@ -147,13 +196,7 @@
"label": "डैग रन्स की संख्या"
},
"dependencies": {
- "label": "निर्भरताएं",
- "options": {
- "allDagDependencies": "सभी डैग निर्भरताएं",
- "externalConditions": "बाहरी स्थितियां",
- "onlyTasks": "केवल टास्क्स"
- },
- "placeholder": "निर्भरताएं"
+ "allDagDependencies": "सभी डैग निर्भरताएं"
},
"graphDirection": {
"label": "ग्राफ़ दिशा"
@@ -216,6 +259,7 @@
"auditLog": "ऑडिट लॉग",
"backfills": "बैकफ़िल्स",
"calendar": "कैलेंडर",
+ "callbacks": "कॉलबैक्स",
"code": "कोड",
"details": "विवरण",
"logs": "लॉग्स",
@@ -228,6 +272,7 @@
"taskInstances": "टास्क इंस्टेंसेज",
"taskStateStore": "Task State Store",
"tasks": "टास्क्स",
+ "versions": "वर्शन",
"xcom": "XCom"
},
"taskGroups": {
@@ -245,6 +290,8 @@
"deleteWarning": "टास्क इस सहेजी गई मेमोरी को खो देगा। यदि टास्क इस कुंजी
का उपयोग बाहरी काम (जैसे किसी बाहरी जॉब ID) को ट्रैक करने के लिए कर रहा है, तो
वह उसे फिर से शुरू नहीं कर पाएगा।",
"edit": "Task State Store संपादित करें",
"emptyStore": "Task state store ऐसे मान संग्रहीत करता है जो पुनः प्रयासों
के बीच बने रहते हैं। वर्कर Task SDK के माध्यम से task state store में लिख सकते
हैं।",
+ "entry_one": "प्रविष्टि",
+ "entry_other": "प्रविष्टियाँ",
"expiresAt": {
"column": "समाप्ति",
"custom": "कस्टम",
@@ -253,5 +300,69 @@
"never": "कभी नहीं"
},
"title": "Task State Store"
+ },
+ "versions": {
+ "aboutThisComparison": "इस तुलना के बारे में",
+ "base": "इससे तुलना करें",
+ "categories": {
+ "asset": "एसेट",
+ "authorization": "प्राधिकरण",
+ "callback": "कॉलबैक",
+ "deadline": "डेडलाइन",
+ "dependency": "निर्भरता",
+ "metadata": "मेटाडेटा",
+ "param": "पैरामीटर",
+ "provenance": "उद्गम",
+ "schedule": "शेड्यूल",
+ "task": "टास्क",
+ "unknown": "अज्ञात"
+ },
+ "codeAccess": "मानों के लिए डैग कोड तक पहुँच आवश्यक है",
+ "columns": {
+ "after": "बाद",
+ "before": "पहले",
+ "category": "श्रेणी",
+ "impact": "प्रभाव",
+ "occurrences": "घटनाएँ",
+ "operation": "संक्रिया",
+ "path": "पथ"
+ },
+ "heading": "वर्शन {{base}} → वर्शन {{target}}",
+ "impacts": {
+ "authorization": "प्राधिकरण",
+ "execution": "निष्पादन",
+ "metadata": "मेटाडेटा",
+ "provenance": "उद्गम",
+ "unknown": "अज्ञात"
+ },
+ "limitReached": {
+ "description": "अधिकतम परिवर्तन सीमा की अनुमति से अधिक परिवर्तन हैं।
बाकी देखने के लिए सीमा बढ़ाएं।",
+ "descriptionDefault": "डिफ़ॉल्ट सीमा की अनुमति से अधिक परिवर्तन हैं।
बाकी देखने के लिए अधिकतम परिवर्तन अधिक सेट करें।",
+ "title": "केवल पहले {{limit, number}} परिवर्तन दिखा रहे हैं"
+ },
+ "maxChanges": "अधिकतम परिवर्तन",
+ "maxChangesDefault": "डिफ़ॉल्ट",
+ "noChanges": "इन वर्शनों की स्थिति समान है।",
+ "observedStateBoundary": "वर्तमान में संग्रहीत स्थिति की तुलना करता है,
निर्माण-समय के साक्ष्य की नहीं। ऐतिहासिक वर्शनों के लिए स्रोत तुलना उपलब्ध नहीं
है; स्रोत की तुलना करने के लिए कोड टैब का उपयोग करें।",
+ "operations": {
+ "added": "जोड़ा गया",
+ "changed": "बदला गया",
+ "removed": "हटाया गया"
+ },
+ "record_one": "रिकॉर्ड",
+ "record_other": "रिकॉर्ड्स",
+ "schemaChange": "सीरियलाइज़्ड स्कीमा {{baseSchema}} → {{targetSchema}}",
+ "selectPrompt": "उनके बीच क्या बदला यह देखने के लिए दो वर्शन चुनें।",
+ "summary_one": "{{count, number}} परिवर्तन",
+ "summary_other": "{{count, number}} परिवर्तन",
+ "summaryAtLeast_one": "कम से कम {{count, number}} परिवर्तन",
+ "summaryAtLeast_other": "कम से कम {{count, number}} परिवर्तन",
+ "target": "इसके साथ तुलना करें",
+ "unavailable": {
+ "description": "इन वर्शनों की तुलना नहीं की जा सकी। कारण:",
+ "title": "तुलना उपलब्ध नहीं",
+ "withoutReason": "इन वर्शनों की तुलना नहीं की जा सकी।"
+ },
+ "valuesHidden": "मान छिपे हुए"
}
}
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/hi/dags.json
b/airflow-core/src/airflow/ui/public/i18n/locales/hi/dags.json
index 60689e7b465..5d90dc50c21 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/hi/dags.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/hi/dags.json
@@ -6,6 +6,11 @@
"warning": "यह रन्स और टास्क्स सहित डैग से संबंधित सभी मेटाडेटा को हटा
देगा।"
}
},
+ "draining": {
+ "badgeTooltip": "यह डैग अपने चल रहे डैग रन समाप्त होने पर रुक जाता है।",
+ "label": "ड्रेनिंग",
+ "tooltip": "{{dagDisplayName}} ड्रेन हो रहा है — चल रहे डैग रन समाप्त होने
पर रुक जाता है। फिर से शुरू करने के लिए क्लिक करें।"
+ },
"favoriteDag": "पसंदीदा डैग",
"filters": {
"allRunTypes": "सभी रन प्रकार",
@@ -15,14 +20,36 @@
"favorite": "पसंदीदा",
"unfavorite": "गैर-पसंदीदा"
},
+ "favoriteState": "पसंदीदा स्थिति",
+ "favoriteStatePlaceholder": "पसंदीदा स्थिति चुनें…",
+ "noTimetableTypesFound": "कोई टाइमटेबल प्रकार नहीं मिला",
"paused": {
"active": "सक्रिय",
"all": "सभी",
"paused": "रोका गया"
},
- "runIdPatternFilter": "डैग रन्स खोजें"
+ "pausedPlaceholder": "रोकी गई स्थिति चुनें…",
+ "pausedState": "रोकी गई स्थिति",
+ "requiresHitlAction": "HITL कार्रवाई आवश्यक",
+ "runIdPatternFilter": "डैग रन्स खोजें",
+ "runState": "रन स्थिति",
+ "runStatePlaceholder": "रन स्थिति चुनें…",
+ "timetableType": "टाइमटेबल प्रकार"
+ },
+ "folders": {
+ "all": "सभी डैग्स",
+ "empty": "कोई फ़ोल्डर नहीं",
+ "hide": "फ़ोल्डर छिपाएं",
+ "show": "फ़ोल्डर दिखाएं",
+ "title": "फ़ोल्डर"
},
"ownerLink": "{{owner}} के लिए स्वामी लिंक",
+ "recentTaskStateCounts": {
+ "description": "सभी चल रहे डैग रन से, या यदि कोई नहीं चल रहा है तो सबसे
हाल के रन से टास्क की स्थिति। आप इसे अपनी उपयोगकर्ता सेटिंग्स में बंद कर सकते
हैं।",
+ "label": "हाल के टास्क",
+ "loading": "हाल के टास्क स्थिति गणना लोड हो रही है",
+ "tooltip": "{{state}}: {{formattedCount}} — टास्क फ़िल्टर करने के लिए
क्लिक करें"
+ },
"runAndTaskActions": {
"affectedTasks": {
"noItemsFound": "कोई टास्क्स नहीं मिले।",
@@ -62,18 +89,23 @@
"failed": "विफल के रूप में चिह्नित करने के लिए shift+f दबाएं",
"success": "सफल के रूप में चिह्नित करने के लिए shift+s दबाएं"
},
+ "skippedInfo": "किसी टास्क इंस्टेंस को छोड़ा गया (skipped) चिह्नित करना
यह दर्ज करता है कि इसे जानबूझकर नहीं चलाया गया। डाउनस्ट्रीम टास्क अभी भी अपने
ट्रिगर नियमों द्वारा मूल्यांकित किए जाते हैं: डिफ़ॉल्ट \"all_success\" नियम के
साथ उन्हें भी छोड़ दिया जाएगा। केवल वे टास्क इंस्टेंस जो चलना शुरू नहीं हुए
हैं, छोड़े जा सकते हैं, और केवल यही टास्क इंस्टेंस प्रभावित होता है।",
"title": "{{type}} को {{state}} के रूप में चिह्नित करें"
},
"options": {
"downstream": "डाउनस्ट्रीम",
"existingTasks": "मौजूदा टास्क्स साफ करें",
"future": "भविष्य",
+ "keepTaskState": "टास्क स्थिति बनाए रखें और फिर से शुरू करें",
+ "laterIterations": "बाद के पुनरावृत्तियाँ",
"onlyFailed": "केवल विफल टास्क्स साफ करें",
"past": "अतीत",
"preventRunningTasks": "यदि टास्क चल रहा है तो पुनः चलाने से रोकें",
"queueNew": "नए टास्क्स को कतार में डालें",
"runOnLatestVersion": "नवीनतम बंडल संस्करण के साथ चलाएं",
- "upstream": "अपस्ट्रीम"
+ "runOnLatestVersionForced": "हमेशा नवीनतम का उपयोग करता है — वापस जाने
के लिए कोई पुराना संस्करण नहीं है",
+ "upstream": "अपस्ट्रीम",
+ "wholeExpansion": "संपूर्ण विस्तार"
}
},
"runStateCounts": {
@@ -81,11 +113,23 @@
"loading": "रन स्थिति गणना लोड हो रही है",
"tooltip": "{{state}}: {{formattedCount}} — रन फ़िल्टर करने के लिए क्लिक
करें"
},
+ "schedulingActions": {
+ "cancelDrain": "ड्रेन रद्द करें",
+ "drain": "ड्रेन करें फिर रोकें",
+ "drainPrompt": "इस डैग के डैग रन प्रगति पर हैं। ड्रेन करने से डैग रुकने से
पहले उन्हें समाप्त होने दिया जाता है; अभी रोकने से उनके लिए प्रतीक्षा किए बिना
निर्धारण तुरंत रुक जाता है।",
+ "pauseNow": "अभी रोकें",
+ "pauseSelected": "रोकें / ड्रेन करें"
+ },
+ "schedulingBanner": {
+ "message": "यह डैग ड्रेन हो रहा है। इसके चल रहे डैग रन समाप्त होने पर यह
रुक जाएगा।"
+ },
"search": {
"advanced": "उन्नत खोज",
"clear": "खोज साफ करें",
+ "dagRuns": "$t(common:dagRun_other) खोजें",
"dags": "डैग्स खोजें",
"hotkey": "+K",
+ "mapIndexes": "$t(common:mapIndex) खोजें",
"tasks": "टास्क्स खोजें"
},
"sort": {
@@ -93,9 +137,9 @@
"asc": "डिस्प्ले नाम से सॉर्ट करें (A-Z)",
"desc": "डिस्प्ले नाम से सॉर्ट करें (Z-A)"
},
- "lastRunStartDate": {
- "asc": "नवीनतम रन प्रारंभ तिथि से सॉर्ट करें (पहले-बाद में)",
- "desc": "नवीनतम रन प्रारंभ तिथि से सॉर्ट करें (बाद में-पहले)"
+ "lastRunAfter": {
+ "asc": "नवीनतम रन के बाद के अनुसार क्रमबद्ध करें (जल्द से नवीनतम)",
+ "desc": "नवीनतम रन के बाद के अनुसार क्रमबद्ध करें (नवीनतम से जल्द)"
},
"lastRunState": {
"asc": "नवीनतम रन स्थिति से सॉर्ट करें (A-Z)",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/hi/dashboard.json
b/airflow-core/src/airflow/ui/public/i18n/locales/hi/dashboard.json
index ecfd9e3d3f2..e9a56ef56d1 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/hi/dashboard.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/hi/dashboard.json
@@ -28,14 +28,29 @@
"group": "ग्रुप",
"health": {
"dagProcessor": "डैग प्रोसेसर",
+ "degraded": "निम्नीकृत",
+ "degradedHint": {
+ "dagProcessor": "कुछ विन्यस्त डैग बंडल को कोई डैग प्रोसेसर पार्स नहीं कर
रहा है।",
+ "triggerer": "कुछ टीमों के लिए स्थगित टास्क चलाने वाला कोई ट्रिगरर नहीं
है।"
+ },
+ "down": "डाउन",
"health": "स्वास्थ्य",
"healthy": "स्वस्थ",
+ "instances": {
+ "bundles": "बंडल",
+ "hostname": "होस्ट",
+ "team": "टीम",
+ "title_one": "{{title}} — {{status}} ({{count, number}} इंस्टेंस)",
+ "title_other": "{{title}} — {{status}} ({{count, number}} इंस्टेंस)",
+ "unknownHostname": "अज्ञात होस्ट"
+ },
"lastHeartbeat": "अंतिम हार्टबीट",
"metaDatabase": "मेटा डेटाबेस",
"scheduler": "शेड्यूलर",
"status": "स्थिति",
"triggerer": "ट्रिगरर",
- "unhealthy": "अस्वस्थ"
+ "unhealthy": "अस्वस्थ",
+ "unknownStatus": "अज्ञात"
},
"history": "इतिहास",
"importErrors": {