agsamantha/node_modules/zod-to-json-schema/createIndex.ts
2024-10-02 15:15:21 -05:00

32 lines
743 B
TypeScript

import { readdirSync, writeFileSync, statSync } from "fs";
const ignore = ["src/index.ts"];
function checkSrcDir(path: string): string[] {
const lines: string[] = [];
for (const item of readdirSync(path)) {
const itemPath = path + "/" + item;
if (ignore.includes(itemPath)) {
continue;
}
if (statSync(itemPath).isDirectory()) {
lines.push(...checkSrcDir(itemPath));
} else if (item.endsWith(".ts")) {
lines.push('export * from "./' + itemPath.slice(4, -2) + 'js"');
}
}
return lines;
}
const lines = checkSrcDir("src");
lines.push(
'import { zodToJsonSchema } from "./zodToJsonSchema.js"',
"export default zodToJsonSchema;",
);
writeFileSync("./src/index.ts", lines.join(";\n"));