@stryke/prisma-trpc-generator
Version:
A fork of the prisma-trpc-generator code to work in ESM with Prisma v6.
51 lines (49 loc) • 2.44 kB
JavaScript
const require_runtime = require('./_virtual/_rolldown/runtime.cjs');
let zod = require("zod");
zod = require_runtime.__toESM(zod, 1);
//#region src/config.ts
let ModelAction = /* @__PURE__ */ function(ModelAction) {
ModelAction["FIND_UNIQUE"] = "findUnique";
ModelAction["FIND_UNIQUE_OR_THROW"] = "findUniqueOrThrow";
ModelAction["FIND_FIRST"] = "findFirst";
ModelAction["FIND_FIRST_OR_THROW"] = "findFirstOrThrow";
ModelAction["FIND_MANY"] = "findMany";
ModelAction["CREATE"] = "create";
ModelAction["CREATE_MANY"] = "createMany";
ModelAction["CREATE_MANY_AND_RETURN"] = "createManyAndReturn";
ModelAction["UPDATE"] = "update";
ModelAction["UPDATE_MANY"] = "updateMany";
ModelAction["UPDATE_MANY_AND_RETURN"] = "updateManyAndReturn";
ModelAction["UPSERT"] = "upsert";
ModelAction["DELETE"] = "delete";
ModelAction["DELETE_MANY"] = "deleteMany";
ModelAction["GROUP_BY"] = "groupBy";
ModelAction["COUNT"] = "count";
ModelAction["AGGREGATE"] = "aggregate";
ModelAction["FIND_RAW"] = "findRaw";
ModelAction["AGGREGATE_RAW"] = "aggregateRaw";
return ModelAction;
}({});
const modelActionEnum = zod.nativeEnum(ModelAction);
const configBoolean = zod.string().trim().transform((value) => !value || value.toLowerCase() === "false" || value.toLowerCase() === "n" || value.toLowerCase() === "no" || value === "0" ? false : value.toLowerCase() === "true" || value.toLowerCase() === "y" || value.toLowerCase() === "yes" || value === "1" ? true : value);
const configSchema = zod.object({
debug: configBoolean.default("false"),
withNext: configBoolean.default("true"),
withMiddleware: configBoolean.default("false"),
withShield: configBoolean.default("false"),
contextPath: zod.string().trim().default("../context"),
trpcOptions: configBoolean.default("true"),
showModelNameInProcedure: configBoolean.default("false"),
generateModelActions: zod.string().default(Object.values(ModelAction).join(",")).transform((arg) => {
return arg.split(",").map((action) => modelActionEnum.parse(action.trim()));
}),
withZod: configBoolean.default("true"),
relationModel: configBoolean.default("true").or(zod.literal("default")),
modelSuffix: zod.string().default("Schema"),
modelCase: zod.enum(["PascalCase", "camelCase"]).default("camelCase"),
useDecimalJs: configBoolean.default("true"),
imports: zod.string().optional(),
prismaJsonNullability: configBoolean.default("true")
});
//#endregion
exports.configSchema = configSchema;