Skip to content

API Programática

Todos os tipos e classes públicos são exportados da raiz do pacote. Exemplo: executar a etapa translate-UI no Node.js sem a CLI:

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(', ')}`
);

Crie um config a partir do Node.js (o quarto argumento opcional seleciona o preset integrado; o padrão é openrouter):

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

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

Exportações principais (comumente usadas — consulte src/index.ts para a superfície pública completa):

ExportaçãoDescrição
loadI18nConfigFromFileCarrega, mescla e valida a configuração a partir de um arquivo JSON.
parseI18nConfigValida um objeto de configuração bruto.
TranslationCacheCache SQLite - instanciar com um caminho cacheDir.
UIStringExtractorExtrair strings t("…") do código-fonte JS/TS.
collectHtmlI18nStrings / markHtmlContentEscaneia / insere marcadores data-i18n* em HTML (alimenta extract para .html e o comando mark-html).
MarkdownExtractorExtrair segmentos traduzíveis do markdown.
JsonExtractorExtrair de arquivos de rótulo JSON do Docusaurus (catálogos de interface, não corpo MDX).
SvgExtractorExtrair de arquivos SVG.
LlmClientFaz solicitações de tradução para o provedor LLM ativo (OpenRouterClient é um alias obsoleto).
PlaceholderHandlerProtege/restaura a sintaxe markdown ao redor da tradução (tags HTML, advertências, âncoras, comentários MDX/JSX/chaves, URLs, código embutido, ênfase).
protectMdx / restoreMdxProtege/restaura comentários MDX, tags JSX, expressões entre chaves e atributos de string JSX (chamado por PlaceholderHandler; também exportado para uso direto).
splitTranslatableIntoBatchesAgrupar segmentos em lotes com tamanho adequado para LLMs.
validateTranslationVerificações estruturais após a tradução (assíncronas — devem ser aguardadas).
resolveDocumentationOutputPathResolver o caminho do arquivo de saída para um documento traduzido.
Glossary / GlossaryMatcherCarregar e aplicar glossários de tradução.
runTranslateUIPonto de entrada programático para a interface de tradução.
writeInitConfigFileEscreve um JSON de configuração inicial (template, providerKey opcional com padrão openrouter).
DEFAULT_INIT_MODELS_BY_PROVIDERtranslationModels inicial por preset integrado usado por init -P.
PROVIDER_PRESETSMapa predefinido de provedor integrado (baseUrl, apiKeyEnv).

Lançado sob a licença MIT.