()
| 86 | } |
| 87 | |
| 88 | export async function getDoctorSummary(): Promise<string> { |
| 89 | try { |
| 90 | const [{ getSystemMeta }, { findFFmpeg }] = await Promise.all([ |
| 91 | import("../telemetry/system.js"), |
| 92 | import("../browser/ffmpeg.js"), |
| 93 | ]); |
| 94 | const sys = getSystemMeta(); |
| 95 | const parts = [ |
| 96 | `os=${process.platform}/${process.arch}`, |
| 97 | `node=${process.version}`, |
| 98 | `cpu=${sys.cpu_count}cores`, |
| 99 | `mem=${(sys.memory_total_mb / 1024).toFixed(0)}GB`, |
| 100 | `ffmpeg=${findFFmpeg() ? "yes" : "no"}`, |
| 101 | ]; |
| 102 | if (sys.is_docker) parts.push("docker"); |
| 103 | if (sys.is_wsl) parts.push("wsl"); |
| 104 | return parts.join(" "); |
| 105 | } catch { |
| 106 | return ""; |
| 107 | } |
| 108 | } |
| 109 | |
| 110 | function askQuestion(prompt: string): Promise<string> { |
| 111 | return new Promise((resolve) => { |
no test coverage detected