@stryke/prisma-trpc-generator
Version:
A fork of the prisma-trpc-generator code to work in ESM with Prisma v6.
1 lines • 4.28 kB
Source Map (JSON)
{"version":3,"file":"config.mjs","names":[],"sources":["../src/config.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport * as z from \"zod\";\n\nexport enum ModelAction {\n FIND_UNIQUE = \"findUnique\",\n FIND_UNIQUE_OR_THROW = \"findUniqueOrThrow\",\n FIND_FIRST = \"findFirst\",\n FIND_FIRST_OR_THROW = \"findFirstOrThrow\",\n FIND_MANY = \"findMany\",\n CREATE = \"create\",\n CREATE_MANY = \"createMany\",\n CREATE_MANY_AND_RETURN = \"createManyAndReturn\",\n UPDATE = \"update\",\n UPDATE_MANY = \"updateMany\",\n UPDATE_MANY_AND_RETURN = \"updateManyAndReturn\",\n UPSERT = \"upsert\",\n DELETE = \"delete\",\n DELETE_MANY = \"deleteMany\",\n GROUP_BY = \"groupBy\",\n COUNT = \"count\", // TODO: count does not actually exist, why?\n AGGREGATE = \"aggregate\",\n FIND_RAW = \"findRaw\",\n AGGREGATE_RAW = \"aggregateRaw\"\n}\n\nconst modelActionEnum = z.nativeEnum(ModelAction);\n\nconst configBoolean = z\n .string()\n .trim()\n .transform(value =>\n !value ||\n value.toLowerCase() === \"false\" ||\n value.toLowerCase() === \"n\" ||\n value.toLowerCase() === \"no\" ||\n value === \"0\"\n ? false\n : value.toLowerCase() === \"true\" ||\n value.toLowerCase() === \"y\" ||\n value.toLowerCase() === \"yes\" ||\n value === \"1\"\n ? true\n : value\n );\n\nexport const configSchema = z.object({\n debug: configBoolean.default(\"false\"),\n withNext: configBoolean.default(\"true\"),\n withMiddleware: configBoolean.default(\"false\"),\n withShield: configBoolean.default(\"false\"),\n contextPath: z.string().trim().default(\"../context\"),\n trpcOptions: configBoolean.default(\"true\"),\n showModelNameInProcedure: configBoolean.default(\"false\"),\n generateModelActions: z\n .string()\n .default(Object.values(ModelAction).join(\",\"))\n .transform(arg => {\n return arg.split(\",\").map(action => modelActionEnum.parse(action.trim()));\n }),\n\n // Zod configuration\n withZod: configBoolean.default(\"true\"),\n relationModel: configBoolean.default(\"true\").or(z.literal(\"default\")),\n modelSuffix: z.string().default(\"Schema\"),\n modelCase: z.enum([\"PascalCase\", \"camelCase\"]).default(\"camelCase\"),\n useDecimalJs: configBoolean.default(\"true\"),\n imports: z.string().optional(),\n prismaJsonNullability: configBoolean.default(\"true\")\n});\n\nexport type Config = z.infer<typeof configSchema>;\n"],"mappings":";;;AAoBA,IAAY,cAAL;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;KACD;AAED,MAAM,kBAAkB,EAAE,WAAW,YAAY;AAEjD,MAAM,gBAAgB,EACnB,QAAQ,CACR,MAAM,CACN,WAAU,UACT,CAAC,SACD,MAAM,aAAa,KAAK,WACxB,MAAM,aAAa,KAAK,OACxB,MAAM,aAAa,KAAK,QACxB,UAAU,MACN,QACA,MAAM,aAAa,KAAK,UACtB,MAAM,aAAa,KAAK,OACxB,MAAM,aAAa,KAAK,SACxB,UAAU,MACV,OACA,MACP;AAEH,MAAa,eAAe,EAAE,OAAO;CACnC,OAAO,cAAc,QAAQ,QAAQ;CACrC,UAAU,cAAc,QAAQ,OAAO;CACvC,gBAAgB,cAAc,QAAQ,QAAQ;CAC9C,YAAY,cAAc,QAAQ,QAAQ;CAC1C,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,aAAa;CACpD,aAAa,cAAc,QAAQ,OAAO;CAC1C,0BAA0B,cAAc,QAAQ,QAAQ;CACxD,sBAAsB,EACnB,QAAQ,CACR,QAAQ,OAAO,OAAO,YAAY,CAAC,KAAK,IAAI,CAAC,CAC7C,WAAU,QAAO;AAChB,SAAO,IAAI,MAAM,IAAI,CAAC,KAAI,WAAU,gBAAgB,MAAM,OAAO,MAAM,CAAC,CAAC;GACzE;CAGJ,SAAS,cAAc,QAAQ,OAAO;CACtC,eAAe,cAAc,QAAQ,OAAO,CAAC,GAAG,EAAE,QAAQ,UAAU,CAAC;CACrE,aAAa,EAAE,QAAQ,CAAC,QAAQ,SAAS;CACzC,WAAW,EAAE,KAAK,CAAC,cAAc,YAAY,CAAC,CAAC,QAAQ,YAAY;CACnE,cAAc,cAAc,QAAQ,OAAO;CAC3C,SAAS,EAAE,QAAQ,CAAC,UAAU;CAC9B,uBAAuB,cAAc,QAAQ,OAAO;CACrD,CAAC"}