(options)
| 369 | } |
| 370 | |
| 371 | export async function trustVaultAndVerifyQuickAdd(options) { |
| 372 | await execObsidian(options, [ |
| 373 | `vault=${options.vaultName}`, |
| 374 | "plugins:restrict", |
| 375 | "off", |
| 376 | ]); |
| 377 | |
| 378 | const deadline = Date.now() + READY_TIMEOUT_MS; |
| 379 | let lastError = ""; |
| 380 | while (Date.now() < deadline) { |
| 381 | try { |
| 382 | const { stdout } = await execObsidian(options, [ |
| 383 | `vault=${options.vaultName}`, |
| 384 | "quickadd:list", |
| 385 | ]); |
| 386 | if (stdout.includes("\"ok\":true")) return true; |
| 387 | lastError = stdout.trim(); |
| 388 | } catch (error) { |
| 389 | lastError = error?.stderr?.trim() || error?.stdout?.trim() || error?.message || String(error); |
| 390 | } |
| 391 | await sleep(READY_INTERVAL_MS); |
| 392 | } |
| 393 | |
| 394 | throw new Error(`QuickAdd did not become available in ${options.vaultName}. Last error: ${lastError}`); |
| 395 | } |
| 396 | |
| 397 | // --- minAppVersion guard ------------------------------------------------------ |
| 398 | // |
no test coverage detected