From d81039611adfa628439bcf89133edb6bb50c4d48 Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 29 Apr 2026 08:14:56 +0000 Subject: [PATCH] fix(i18n): use translated label for OK button in promptForBatchFolder Adds okLabel parameter with 'OK' fallback; caller in main.ts passes plugin.t('editCardSave') so button text respects UI language. https://claude.ai/code/session_012cK5rUGQvqkuxUZ59x7dLn --- main.ts | 7 ++++++- src/batch.ts | 9 +++++++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/main.ts b/main.ts index c541d9f..a3c84ec 100644 --- a/main.ts +++ b/main.ts @@ -537,7 +537,12 @@ class ParallelReaderPlugin extends Plugin { new Notice(this.t('batchAlreadyRunning')); return; } - const folderPath = await promptForBatchFolder(this.app, this.t('batchSelectFolder'), this.t('batchFolderPrompt')); + const folderPath = await promptForBatchFolder( + this.app, + this.t('batchSelectFolder'), + this.t('batchFolderPrompt'), + this.t('editCardSave'), + ); if (folderPath === null) return; const validation = validateBatchFolderInput(folderPath, (path) => { const target = this.app.vault.getAbstractFileByPath(path); diff --git a/src/batch.ts b/src/batch.ts index 647053e..54d81db 100644 --- a/src/batch.ts +++ b/src/batch.ts @@ -104,7 +104,12 @@ export function requestBatchCancel(state: BatchRunState | null): boolean { return true; } -export function promptForBatchFolder(app: App, selectText: string, promptText: string): Promise { +export function promptForBatchFolder( + app: App, + selectText: string, + promptText: string, + okLabel = 'OK', +): Promise { return new Promise((resolve) => { const modal = new Modal(app); modal.onOpen = () => { @@ -118,7 +123,7 @@ export function promptForBatchFolder(app: App, selectText: string, promptText: s modal.close(); } }); - modal.contentEl.createEl('button', { text: 'OK' }).addEventListener('click', () => { + modal.contentEl.createEl('button', { text: okLabel }).addEventListener('click', () => { resolve(input.value.trim()); modal.close(); });