@stryke/prisma-trpc-generator
Version:
A fork of the prisma-trpc-generator code to work in ESM with Prisma v6.
32 lines (30 loc) • 1.09 kB
JavaScript
import Transformer from "./transformer.mjs";
//#region src/zod/generator-helpers.ts
async function generateZodEnumSchemas(prismaSchemaEnum, modelSchemaEnum) {
const enumTypes = [...prismaSchemaEnum, ...modelSchemaEnum];
Transformer.enumNames = enumTypes.map((enumItem) => enumItem.name) ?? [];
await new Transformer({ enumTypes }).generateEnumSchemas();
}
async function generateZodObjectSchemas(inputObjectTypes) {
for (let i = 0; i < inputObjectTypes.length; i += 1) {
const fields = inputObjectTypes[i]?.fields;
const name = inputObjectTypes[i]?.name;
await new Transformer({
name,
fields
}).generateObjectSchema();
}
}
async function generateZodModelSchemas(models, modelOperations, aggregateOperationSupport) {
await new Transformer({
models,
modelOperations,
aggregateOperationSupport
}).generateModelSchemas();
}
async function generateZodIndex() {
await Transformer.generateIndex();
}
//#endregion
export { generateZodEnumSchemas, generateZodIndex, generateZodModelSchemas, generateZodObjectSchemas };
//# sourceMappingURL=generator-helpers.mjs.map