( file: FileInfo, enContent: string, config: LLMConfig, systemPrompt: string, headingsMap: HeadingsMap, basenameToPermalink: Map<string, string>, enToLocale: Map<string, string> )
| 520 | // ─── Translate a file ───────────────────────────────────────────────────────── |
| 521 | |
| 522 | async function translateFile( |
| 523 | file: FileInfo, |
| 524 | enContent: string, |
| 525 | config: LLMConfig, |
| 526 | systemPrompt: string, |
| 527 | headingsMap: HeadingsMap, |
| 528 | basenameToPermalink: Map<string, string>, |
| 529 | enToLocale: Map<string, string> |
| 530 | ): Promise<void> { |
| 531 | console.log(` Translating ${file.relPath}`); |
| 532 | if (dryRun) return; |
| 533 | |
| 534 | const raw = await callLLM(config, systemPrompt, enContent.trim()); |
| 535 | await saveTranslated(file, raw, enContent, headingsMap, basenameToPermalink, enToLocale); |
| 536 | } |
| 537 | |
| 538 | async function saveTranslated( |
| 539 | file: FileInfo, |
no test coverage detected