(dir, out)
| 425 | } |
| 426 | |
| 427 | async function collectSourceDir(dir, out) { |
| 428 | let entries; |
| 429 | try { |
| 430 | entries = await fs.readdir(path.join(dashboardRoot, dir), { withFileTypes: true }); |
| 431 | } catch { |
| 432 | return; |
| 433 | } |
| 434 | for (const entry of entries) { |
| 435 | const relative = path.join(dir, entry.name); |
| 436 | if (entry.isDirectory()) { |
| 437 | await collectSourceDir(relative, out); |
| 438 | } else if (entry.isFile()) { |
| 439 | out.push(relative); |
| 440 | } |
| 441 | } |
| 442 | } |
| 443 | |
| 444 | async function collectDashboardSourceInputs() { |
| 445 | const inputs = []; |
no test coverage detected