Skip to content

प्रोग्रामेटिक एपीआई

सभी सार्वजनिक प्रकार और कक्षाएं पैकेज रूट से निर्यात की जाती हैं। उदाहरण: सीएलआई के बिना Node.js से translate-UI चरण चलाना:

ts
import { loadI18nConfigFromFile, runTranslateUI } from 'ai-i18n-tools';

// Config must have features.translateUIStrings: true (and valid targetLocales, etc.).
const config = loadI18nConfigFromFile('ai-i18n-tools.config.json');

const summary = await runTranslateUI(config, {
  cwd: process.cwd(),
  locales: config.targetLocales,
  force: false,
  dryRun: false,
  verbose: false,
});
console.log(
  `Updated ${summary.stringsUpdated} string(s); locales touched: ${summary.localesTouched.join(', ')}`
);

Node.js से एक कॉन्फ़िग को स्केफ़ोल्ड करें (वैकल्पिक चौथा तर्क बिल्ट-इन प्रीसेट का चयन करता है; डिफ़ॉल्ट openrouter पर):

ts
import { writeInitConfigFile } from 'ai-i18n-tools';

writeInitConfigFile('ai-i18n-tools.config.json', 'uiMarkdown', process.cwd(), 'anthropic');

मुख्य निर्यात (आमतौर पर उपयोग किए जाते हैं — पूर्ण सार्वजनिक सतह के लिए src/index.ts देखें):

निर्यातविवरण
loadI18nConfigFromFileJSON फ़ाइल से कॉन्फ़िग लोड करें, मर्ज करें, मान्य करें।
parseI18nConfigएक कच्चे कॉन्फ़िग ऑब्जेक्ट को मान्य करें।
TranslationCacheSQLite कैश - एक cacheDir पथ के साथ इंस्टेंटिएट करें।
UIStringExtractorJS/TS स्रोत से t("…") स्ट्रिंग निकालें।
collectHtmlI18nStrings / markHtmlContentHTML में data-i18n* मार्कर स्कैन/सम्मिलित करें (extract और .html के लिए mark-html कमांड को शक्ति प्रदान करता है)।
MarkdownExtractorमार्कडाउन से अनुवाद योग्य खंड निकालें।
JsonExtractorDocusaurus JSON लेबल फ़ाइलों (UI कैटलॉग, MDX बॉडी नहीं) से निकालें।
SvgExtractorSVG फ़ाइलों से निकालें।
LlmClientसक्रिय LLM प्रदाता को अनुवाद अनुरोध करें (OpenRouterClient एक बहिष्कृत उपनाम है)।
PlaceholderHandlerअनुवाद के आसपास मार्कडाउन सिंटैक्स को सुरक्षित/पुनर्स्थापित करें (HTML टैग, एडमॉनिशन्स, एंकर, MDX टिप्पणियाँ/JSX/ब्रेसेस, URL, इनलाइन कोड, एम्फेसिस)।
protectMdx / restoreMdxMDX टिप्पणियों, JSX टैग, ब्रेस एक्सप्रेशंस और JSX स्ट्रिंग एट्रिब्यूट्स को सुरक्षित/पुनर्स्थापित करें (PlaceholderHandler द्वारा कॉल किया गया; सीधे उपयोग के लिए भी निर्यात किया गया)।
splitTranslatableIntoBatchesखंडों को LLM-आकार के बैचों में समूहित करें।
validateTranslationअनुवाद के बाद संरचनात्मक जांच (async — प्रतीक्षा की जानी चाहिए)।
resolveDocumentationOutputPathअनुवादित दस्तावेज़ के लिए आउटपुट फ़ाइल पथ हल करें।
Glossary / GlossaryMatcherअनुवाद शब्दावलियों को लोड और लागू करें।
runTranslateUIप्रोग्रामेटिक translate-UI एंट्री पॉइंट।
writeInitConfigFileएक स्टार्टर कॉन्फ़िग JSON लिखें (template, वैकल्पिक providerKey जो डिफ़ॉल्ट रूप से openrouter पर सेट होता है)।
DEFAULT_INIT_MODELS_BY_PROVIDERinit -P द्वारा उपयोग किए जाने वाले प्रति अंतर्निहित प्रीसेट के लिए स्टार्टर translationModels
PROVIDER_PRESETSअंतर्निहित प्रदाता प्रीसेट मैप (baseUrl, apiKeyEnv)।

एमआईटी लाइसेंस के तहत जारी किया गया।