(srcDir, dstDir)
| 78 | } |
| 79 | |
| 80 | function copyTree(srcDir, dstDir) { |
| 81 | ensureDir(dstDir); |
| 82 | for (const entry of fs.readdirSync(srcDir, { withFileTypes: true })) { |
| 83 | const src = path.join(srcDir, entry.name); |
| 84 | const dst = path.join(dstDir, entry.name); |
| 85 | if (entry.isDirectory()) { |
| 86 | copyTree(src, dst); |
| 87 | } else { |
| 88 | fs.copyFileSync(src, dst); |
| 89 | } |
| 90 | } |
| 91 | } |
| 92 | |
| 93 | function readYamlFrontmatter(filePath) { |
| 94 | const doc = yaml.load(fs.readFileSync(filePath, 'utf8')); |
no test coverage detected