@tsed/prisma
Version:
Generate Ts.ED JsonSchema based on Prisma models
30 lines (25 loc) • 821 B
text/typescript
import path from "node:path";
import {Project} from "ts-morph";
import {resolveExtension} from "./resolveExtension.js";
export function generateIndex(project: Project, baseDirPath: string, hasEnum: boolean) {
const indexFile = path.resolve(baseDirPath, "index.ts");
project.createSourceFile(indexFile, undefined, {overwrite: true}).addExportDeclarations(
[
{
moduleSpecifier: resolveExtension("./interfaces/index")
},
hasEnum && {
moduleSpecifier: resolveExtension("./enums/index")
},
{
moduleSpecifier: resolveExtension("./models/index")
},
{
moduleSpecifier: resolveExtension("./services/PrismaService")
},
{
moduleSpecifier: resolveExtension("./repositories/index")
}
].filter(Boolean) as any[]
);
}