@stryke/prisma-trpc-generator
Version:
A fork of the prisma-trpc-generator code to work in ESM with Prisma v6.
21 lines (19 loc) • 845 B
JavaScript
import { chunk } from "./model-helpers.mjs";
import parenthesis from "parenthesis";
//#region src/zod/docs-helpers.ts
const getJSDocs = (docString) => {
const lines = [];
if (docString) {
const docLines = docString.split("\n").filter((dL) => !dL.trimStart().startsWith("@zod"));
if (docLines.length) {
lines.push("/**");
docLines.forEach((dL) => lines.push(` * ${dL}`));
lines.push(" */");
}
}
return lines;
};
const getZodDocElements = (docString) => docString.split("\n").filter((line) => line.trimStart().startsWith("@zod")).map((line) => line.trimStart().slice(4)).flatMap((line) => chunk(parenthesis.parse(line), 2).slice(0, -1).map(([each, contents]) => `${each.replace(/\)?\./, "")}${parenthesis.stringify(contents)})`));
//#endregion
export { getJSDocs, getZodDocElements };
//# sourceMappingURL=docs-helpers.mjs.map