UNPKG

789 BJavaScriptView Raw
1#!/usr/bin/env node
2
3const fs = require("fs");
4const path = require("path");
5
6function getFiles(base) {
7 const directory = fs.readdirSync(base, { withFileTypes: true });
8 const files = directory.map((dir) => {
9 const res = path.resolve(base, dir.name);
10 return dir.isDirectory() ? getFiles(res) : res;
11 });
12 return Array.prototype.concat(...files).filter((file) => file.indexOf(".ts") > 0);
13}
14
15const tests = getFiles("./test/programs");
16
17let source = "# typescript-json-schema test examples\n\n";
18tests.forEach((file) => {
19 const contents = fs.readFileSync(file, "utf8");
20 const folder = file.split("/").slice(-2)[0];
21 source += `## [${folder}](./test/programs/${folder})\n\n\`\`\`ts\n${contents}\`\`\`\n\n\n`;
22});
23
24fs.writeFileSync("./api.md", source);