prisma-generator-express 1.66.0 → 1.68.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/README.md +188 -3432
  2. package/dist/client/encodeQueryParams.js +3 -1
  3. package/dist/client/encodeQueryParams.js.map +1 -1
  4. package/dist/copy/misc.d.ts +1 -0
  5. package/dist/copy/misc.js +14 -0
  6. package/dist/copy/misc.js.map +1 -1
  7. package/dist/copy/operationDefinitions.d.ts +4 -1
  8. package/dist/copy/operationDefinitions.js +133 -9
  9. package/dist/copy/operationDefinitions.js.map +1 -1
  10. package/dist/generators/generateFastifyHandler.d.ts +2 -2
  11. package/dist/generators/generateFastifyHandler.js +68 -12
  12. package/dist/generators/generateFastifyHandler.js.map +1 -1
  13. package/dist/generators/generateHonoHandler.d.ts +2 -2
  14. package/dist/generators/generateHonoHandler.js +53 -6
  15. package/dist/generators/generateHonoHandler.js.map +1 -1
  16. package/dist/generators/generateHonoOpenApi.d.ts +13 -0
  17. package/dist/generators/generateHonoOpenApi.js +70 -0
  18. package/dist/generators/generateHonoOpenApi.js.map +1 -0
  19. package/dist/generators/generateImportPrismaStatement.d.ts +1 -0
  20. package/dist/generators/generateImportPrismaStatement.js +6 -0
  21. package/dist/generators/generateImportPrismaStatement.js.map +1 -1
  22. package/dist/generators/generateMcpApp.d.ts +10 -0
  23. package/dist/generators/generateMcpApp.js +113 -0
  24. package/dist/generators/generateMcpApp.js.map +1 -0
  25. package/dist/generators/generateModelMcp.d.ts +9 -0
  26. package/dist/generators/generateModelMcp.js +145 -0
  27. package/dist/generators/generateModelMcp.js.map +1 -0
  28. package/dist/generators/generateModelMetadata.js +29 -15
  29. package/dist/generators/generateModelMetadata.js.map +1 -1
  30. package/dist/generators/generateOperationCore.d.ts +3 -3
  31. package/dist/generators/generateOperationCore.js +51 -16
  32. package/dist/generators/generateOperationCore.js.map +1 -1
  33. package/dist/generators/generateRelationMeta.js +2 -2
  34. package/dist/generators/generateRelationMeta.js.map +1 -1
  35. package/dist/generators/generateRouteConfigType.d.ts +2 -2
  36. package/dist/generators/generateRouteConfigType.js +29 -11
  37. package/dist/generators/generateRouteConfigType.js.map +1 -1
  38. package/dist/generators/generateRouter.d.ts +7 -4
  39. package/dist/generators/generateRouter.js +164 -65
  40. package/dist/generators/generateRouter.js.map +1 -1
  41. package/dist/generators/generateRouterFastify.d.ts +7 -4
  42. package/dist/generators/generateRouterFastify.js +106 -86
  43. package/dist/generators/generateRouterFastify.js.map +1 -1
  44. package/dist/generators/generateRouterHono.d.ts +7 -4
  45. package/dist/generators/generateRouterHono.js +59 -414
  46. package/dist/generators/generateRouterHono.js.map +1 -1
  47. package/dist/generators/generateRouterPartsHono.d.ts +14 -0
  48. package/dist/generators/generateRouterPartsHono.js +180 -0
  49. package/dist/generators/generateRouterPartsHono.js.map +1 -0
  50. package/dist/generators/generateUnifiedDocs.d.ts +1 -1
  51. package/dist/generators/generateUnifiedDocs.js +15 -8
  52. package/dist/generators/generateUnifiedDocs.js.map +1 -1
  53. package/dist/generators/generateUnifiedHandler.d.ts +2 -2
  54. package/dist/generators/generateUnifiedHandler.js +42 -18
  55. package/dist/generators/generateUnifiedHandler.js.map +1 -1
  56. package/dist/guardOptions.js +12 -7
  57. package/dist/guardOptions.js.map +1 -1
  58. package/dist/index.d.ts +3 -1
  59. package/dist/index.js +123 -4
  60. package/dist/index.js.map +1 -1
  61. package/dist/utils/copyFiles.d.ts +1 -1
  62. package/dist/utils/copyFiles.js +42 -7
  63. package/dist/utils/copyFiles.js.map +1 -1
  64. package/dist/utils/importExt.d.ts +1 -1
  65. package/dist/utils/mcpGate.d.ts +10 -0
  66. package/dist/utils/mcpGate.js +118 -0
  67. package/dist/utils/mcpGate.js.map +1 -0
  68. package/dist/utils/pathCasing.d.ts +4 -0
  69. package/dist/utils/pathCasing.js +40 -0
  70. package/dist/utils/pathCasing.js.map +1 -0
  71. package/dist/utils/resolveImportStyle.js +13 -5
  72. package/dist/utils/resolveImportStyle.js.map +1 -1
  73. package/dist/utils/writeFileSafely.js +6 -0
  74. package/dist/utils/writeFileSafely.js.map +1 -1
  75. package/package.json +22 -5
  76. package/src/bin.ts +1 -1
  77. package/src/client/encodeQueryParams.ts +39 -35
  78. package/src/constants.ts +1 -1
  79. package/src/copy/autoIncludePlanner.ts +93 -27
  80. package/src/copy/autoIncludePlannerGuarded.ts +171 -48
  81. package/src/copy/autoIncludeRuntimeGuarded.ts +25 -7
  82. package/src/copy/buildModelOpenApi.ts +229 -176
  83. package/src/copy/concurrency.ts +10 -8
  84. package/src/copy/docsRenderer.ts +14 -15
  85. package/src/copy/errorMapper.ts +68 -19
  86. package/src/copy/guardHelpers.ts +30 -9
  87. package/src/copy/materializedCount.ts +17 -5
  88. package/src/copy/mcpRuntime.ts +1017 -0
  89. package/src/copy/misc.ts +88 -68
  90. package/src/copy/ndjson.ts +72 -0
  91. package/src/copy/operationDefinitions.ts +177 -25
  92. package/src/copy/operationPipeline.ts +267 -0
  93. package/src/copy/operationRuntime.ts +124 -26
  94. package/src/copy/operationSchemas.ts +2773 -0
  95. package/src/copy/pagination.ts +35 -13
  96. package/src/copy/parseQueryParams.ts +47 -48
  97. package/src/copy/projectionDefaults.ts +6 -4
  98. package/src/copy/routeConfig.express.ts +16 -4
  99. package/src/copy/routeConfig.fastify.ts +16 -2
  100. package/src/copy/routeConfig.hono.ts +46 -14
  101. package/src/copy/routeConfig.ts +175 -40
  102. package/src/copy/routerParts.ts +524 -0
  103. package/src/copy/scalarTypes.ts +7 -2
  104. package/src/copy/sse.ts +72 -19
  105. package/src/generators/generateFastifyHandler.ts +77 -20
  106. package/src/generators/generateHonoHandler.ts +62 -14
  107. package/src/generators/generateHonoOpenApi.ts +93 -0
  108. package/src/generators/generateImportPrismaStatement.ts +93 -81
  109. package/src/generators/generateMcpApp.ts +133 -0
  110. package/src/generators/generateModelMcp.ts +208 -0
  111. package/src/generators/generateModelMetadata.ts +40 -22
  112. package/src/generators/generateOperationCore.ts +81 -33
  113. package/src/generators/generateRelationMeta.ts +23 -11
  114. package/src/generators/generateRouteConfigType.ts +39 -13
  115. package/src/generators/generateRouter.ts +171 -68
  116. package/src/generators/generateRouterFastify.ts +117 -89
  117. package/src/generators/generateRouterHono.ts +84 -464
  118. package/src/generators/generateRouterPartsHono.ts +220 -0
  119. package/src/generators/generateUnifiedDocs.ts +29 -8
  120. package/src/generators/generateUnifiedHandler.ts +47 -24
  121. package/src/generators/generateUnifiedScalarUI.ts +1 -1
  122. package/src/guardOptions.ts +105 -92
  123. package/src/index.ts +161 -6
  124. package/src/utils/copyFiles.ts +235 -168
  125. package/src/utils/importExt.ts +2 -2
  126. package/src/utils/mcpGate.ts +157 -0
  127. package/src/utils/pathCasing.ts +42 -0
  128. package/src/utils/resolveImportStyle.ts +37 -15
  129. package/src/utils/strings.ts +2 -2
  130. package/src/utils/writeFileSafely.ts +12 -2
package/dist/index.js CHANGED
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.resolveGuardPolicy = exports.HARDENED_GUARD_PROFILE = exports.UPSTREAM_GUARD_DEFAULTS = exports.GUARD_METADATA_SCOPE = exports.GUARD_OPTION_METADATA = void 0;
7
+ exports.runGenerate = runGenerate;
7
8
  var guardOptions_1 = require("./guardOptions");
8
9
  Object.defineProperty(exports, "GUARD_OPTION_METADATA", { enumerable: true, get: function () { return guardOptions_1.GUARD_OPTION_METADATA; } });
9
10
  Object.defineProperty(exports, "GUARD_METADATA_SCOPE", { enumerable: true, get: function () { return guardOptions_1.GUARD_METADATA_SCOPE; } });
@@ -18,6 +19,10 @@ const generateHonoHandler_1 = require("./generators/generateHonoHandler");
18
19
  const generateRouter_1 = require("./generators/generateRouter");
19
20
  const generateRouterFastify_1 = require("./generators/generateRouterFastify");
20
21
  const generateRouterHono_1 = require("./generators/generateRouterHono");
22
+ const generateRouterPartsHono_1 = require("./generators/generateRouterPartsHono");
23
+ const generateHonoOpenApi_1 = require("./generators/generateHonoOpenApi");
24
+ const generateModelMcp_1 = require("./generators/generateModelMcp");
25
+ const generateMcpApp_1 = require("./generators/generateMcpApp");
21
26
  const generateUnifiedScalarUI_1 = require("./generators/generateUnifiedScalarUI");
22
27
  const generateUnifiedDocs_1 = require("./generators/generateUnifiedDocs");
23
28
  const generateQueryBuilderHelper_1 = require("./generators/generateQueryBuilderHelper");
@@ -26,8 +31,10 @@ const generateRelationMeta_1 = require("./generators/generateRelationMeta");
26
31
  const generateModelMetadata_1 = require("./generators/generateModelMetadata");
27
32
  const generateImportPrismaStatement_1 = require("./generators/generateImportPrismaStatement");
28
33
  const writeFileSafely_1 = require("./utils/writeFileSafely");
34
+ const mcpGate_1 = require("./utils/mcpGate");
29
35
  const copyFiles_1 = require("./utils/copyFiles");
30
36
  const resolveImportStyle_1 = require("./utils/resolveImportStyle");
37
+ const pathCasing_1 = require("./utils/pathCasing");
31
38
  const constants_1 = require("./constants");
32
39
  const GENERATOR_OFF_RE = /^\s*generator off\s*$/m;
33
40
  function getTarget(options) {
@@ -62,6 +69,27 @@ function getFindManyPaginatedMode(options) {
62
69
  return 'promiseAll';
63
70
  throw new Error(`Invalid findManyPaginatedMode "${raw}". Expected "transaction" or "promiseAll".`);
64
71
  }
72
+ function getPathCase(options) {
73
+ return (0, pathCasing_1.parsePathCase)(options.generator.config.pathCase);
74
+ }
75
+ function getMcp(options) {
76
+ const raw = options.generator.config.mcp;
77
+ if (raw === undefined || raw === null)
78
+ return false;
79
+ if (typeof raw === 'boolean')
80
+ return raw;
81
+ if (typeof raw === 'string') {
82
+ const lower = raw.trim().toLowerCase();
83
+ if (lower === 'true' || lower === '1' || lower === 'yes')
84
+ return true;
85
+ if (lower === 'false' ||
86
+ lower === '0' ||
87
+ lower === 'no' ||
88
+ raw.trim() === '')
89
+ return false;
90
+ }
91
+ throw new Error('Invalid mcp option "' + String(raw) + '". Expected true or false.');
92
+ }
65
93
  function getDropGuard(options) {
66
94
  const raw = options.generator.config.dropGuard;
67
95
  if (raw === undefined || raw === null)
@@ -95,10 +123,19 @@ function validateClientGeneratorPresent(options) {
95
123
  };
96
124
  },
97
125
  async onGenerate(options) {
126
+ await runGenerate(options);
127
+ },
128
+ });
129
+ async function runGenerate(options) {
130
+ {
98
131
  const target = getTarget(options);
99
132
  const writeStrategy = getWriteStrategy(options);
100
133
  const findManyPaginatedMode = getFindManyPaginatedMode(options);
101
134
  const dropGuard = getDropGuard(options);
135
+ const mcp = getMcp(options);
136
+ const pathCase = getPathCase(options);
137
+ (0, mcpGate_1.assertMcpGuardCompatibility)(mcp, dropGuard);
138
+ (0, mcpGate_1.assertMcpGuardVersion)(mcp, options.schemaPath);
102
139
  const manifestDefaultAbs = path_1.default.resolve(__dirname, '..', 'generated', 'output');
103
140
  const currentOutput = options.generator.output?.value;
104
141
  const isUnsetOrManifestDefault = !currentOutput || path_1.default.resolve(currentOutput) === manifestDefaultAbs;
@@ -109,11 +146,14 @@ function validateClientGeneratorPresent(options) {
109
146
  }
110
147
  const importStyle = (0, resolveImportStyle_1.resolveImportStyle)(options);
111
148
  console.log(`\n═══ Prisma Generator (${target.toUpperCase()}) ═══`);
149
+ if (mcp)
150
+ console.log(` MCP: enabled (reads + opt-in writes)`);
112
151
  console.log(` Target: ${target}`);
113
152
  console.log(` Output: ${options.generator.output?.value}`);
114
153
  console.log(` Import style: ${importStyle}`);
115
154
  console.log(` Write strategy: ${writeStrategy}`);
116
155
  console.log(` findManyPaginated mode: ${findManyPaginatedMode}`);
156
+ console.log(` Path case: ${pathCase}`);
117
157
  if (dropGuard) {
118
158
  console.log('');
119
159
  console.log(' !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!');
@@ -124,8 +164,9 @@ function validateClientGeneratorPresent(options) {
124
164
  if (options.dmmf.datamodel.models.length > 0) {
125
165
  validateClientGeneratorPresent(options);
126
166
  }
127
- await (0, copyFiles_1.copyFiles)(options, target, importStyle);
167
+ await (0, copyFiles_1.copyFiles)(options, target, importStyle, mcp);
128
168
  const modelNames = [];
169
+ let guardArtifactsSeen = false;
129
170
  const generateHandler = target === 'fastify'
130
171
  ? generateFastifyHandler_1.generateFastifyHandler
131
172
  : target === 'hono'
@@ -139,6 +180,8 @@ function validateClientGeneratorPresent(options) {
139
180
  }
140
181
  modelNames.push(model.name);
141
182
  const guardShapesImport = (0, generateImportPrismaStatement_1.getGuardShapesImport)(options, model.name);
183
+ if (guardShapesImport)
184
+ guardArtifactsSeen = true;
142
185
  await (0, writeFileSafely_1.writeFileSafely)({
143
186
  content: (0, generateModelMetadata_1.generateModelMetadata)({
144
187
  model: model,
@@ -171,28 +214,34 @@ function validateClientGeneratorPresent(options) {
171
214
  model: model,
172
215
  enums: options.dmmf.datamodel.enums,
173
216
  guardShapesImport,
217
+ clientImport: (0, generateImportPrismaStatement_1.getRelativeClientTypeImport)(options, model.name),
174
218
  importStyle,
175
219
  writeStrategy,
176
220
  findManyPaginatedMode,
177
221
  dropGuard,
222
+ pathCase,
178
223
  })
179
224
  : target === 'hono'
180
225
  ? (0, generateRouterHono_1.generateHonoRouterFunction)({
181
226
  model: model,
182
227
  enums: options.dmmf.datamodel.enums,
183
228
  guardShapesImport,
229
+ clientImport: (0, generateImportPrismaStatement_1.getRelativeClientTypeImport)(options, model.name),
184
230
  importStyle,
185
231
  writeStrategy,
186
232
  dropGuard,
233
+ pathCase,
187
234
  })
188
235
  : (0, generateRouter_1.generateRouterFunction)({
189
236
  model: model,
190
237
  enums: options.dmmf.datamodel.enums,
191
238
  guardShapesImport,
239
+ clientImport: (0, generateImportPrismaStatement_1.getRelativeClientTypeImport)(options, model.name),
192
240
  importStyle,
193
241
  writeStrategy,
194
242
  findManyPaginatedMode,
195
243
  dropGuard,
244
+ pathCase,
196
245
  });
197
246
  await (0, writeFileSafely_1.writeFileSafely)({
198
247
  content: routerContent,
@@ -200,6 +249,37 @@ function validateClientGeneratorPresent(options) {
200
249
  model: model,
201
250
  operation: 'Router',
202
251
  });
252
+ if (target === 'hono') {
253
+ await (0, writeFileSafely_1.writeFileSafely)({
254
+ content: (0, generateRouterPartsHono_1.generateHonoRouterParts)({
255
+ model: model,
256
+ enums: options.dmmf.datamodel.enums,
257
+ guardShapesImport,
258
+ clientImport: (0, generateImportPrismaStatement_1.getRelativeClientTypeImport)(options, model.name),
259
+ importStyle,
260
+ writeStrategy,
261
+ dropGuard,
262
+ pathCase,
263
+ }),
264
+ options,
265
+ model: model,
266
+ operation: 'RouterParts',
267
+ });
268
+ await (0, writeFileSafely_1.writeFileSafely)({
269
+ content: (0, generateHonoOpenApi_1.generateHonoOpenApiRoutes)({
270
+ model: model,
271
+ enums: options.dmmf.datamodel.enums,
272
+ guardShapesImport,
273
+ clientImport: (0, generateImportPrismaStatement_1.getRelativeClientTypeImport)(options, model.name),
274
+ importStyle,
275
+ writeStrategy,
276
+ pathCase,
277
+ }),
278
+ options,
279
+ model: model,
280
+ operation: 'OpenApiRoutes',
281
+ });
282
+ }
203
283
  await (0, writeFileSafely_1.writeFileSafely)({
204
284
  content: (0, generateUnifiedScalarUI_1.generateScalarUIHandler)({
205
285
  model: model,
@@ -232,8 +312,26 @@ function validateClientGeneratorPresent(options) {
232
312
  operation: 'relationModelsIndex',
233
313
  });
234
314
  }
315
+ if (mcp) {
316
+ for (const model of allModels) {
317
+ if (!modelNames.includes(model.name))
318
+ continue;
319
+ await (0, writeFileSafely_1.writeFileSafely)({
320
+ content: (0, generateModelMcp_1.generateModelMcp)({
321
+ model,
322
+ allModels: allModels.filter((m) => modelNames.includes(m.name)),
323
+ importStyle,
324
+ writeStrategy,
325
+ }),
326
+ options,
327
+ model: model,
328
+ operation: 'Mcp',
329
+ });
330
+ }
331
+ }
332
+ const pathSegments = Object.fromEntries(modelNames.map((n) => [n, (0, pathCasing_1.modelPathSegment)(n, pathCase)]));
235
333
  await (0, writeFileSafely_1.writeFileSafely)({
236
- content: (0, generateUnifiedDocs_1.generateUnifiedDocs)(modelNames, target, importStyle),
334
+ content: (0, generateUnifiedDocs_1.generateUnifiedDocs)(modelNames, pathSegments, target, importStyle),
237
335
  options,
238
336
  operation: 'combinedDocs',
239
337
  });
@@ -242,9 +340,30 @@ function validateClientGeneratorPresent(options) {
242
340
  options,
243
341
  operation: 'queryBuilder',
244
342
  });
343
+ if (mcp) {
344
+ await (0, writeFileSafely_1.writeFileSafely)({
345
+ content: (0, generateMcpApp_1.generateMcpApp)({
346
+ serverName: 'prisma-api',
347
+ serverVersion: require('../package.json').version,
348
+ importStyle,
349
+ }),
350
+ options,
351
+ operation: 'mcpApp',
352
+ });
353
+ await (0, writeFileSafely_1.writeFileSafely)({
354
+ content: (0, generateMcpApp_1.generateMcpMount)({ target, importStyle }),
355
+ options,
356
+ operation: 'mcpMount',
357
+ });
358
+ }
359
+ if (modelNames.length > 0 && !guardArtifactsSeen) {
360
+ console.log('');
361
+ console.log(' Note: prisma-guard not detected. Generated routes call Prisma directly');
362
+ console.log(' unless your route configs define guard shapes or variants.');
363
+ }
245
364
  console.log('\n═══ Generation Complete ═══');
246
365
  console.log(`✓ ${modelNames.length} models (${target})`);
247
366
  console.log('');
248
- },
249
- });
367
+ }
368
+ }
250
369
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAUA,+CAMuB;AALrB,qHAAA,qBAAqB,OAAA;AACrB,oHAAA,oBAAoB,OAAA;AACpB,uHAAA,uBAAuB,OAAA;AACvB,sHAAA,sBAAsB,OAAA;AACtB,kHAAA,kBAAkB,OAAA;AAIpB,+DAIiC;AACjC,gDAAuB;AACvB,gFAA4E;AAC5E,gFAA4E;AAC5E,0EAAsE;AACtE,gEAAoE;AACpE,8EAAkF;AAClF,wEAA4E;AAC5E,kFAA8E;AAC9E,0EAAsE;AACtE,wFAAoF;AACpF,8EAAsE;AACtE,4EAG0C;AAC1C,8EAA0E;AAC1E,8FAGmD;AACnD,6DAAyD;AACzD,iDAA6C;AAC7C,mEAA4E;AAC5E,2CAKoB;AAEpB,MAAM,gBAAgB,GAAG,wBAAwB,CAAA;AAEjD,SAAS,SAAS,CAAC,OAAyB;IAC1C,MAAM,GAAG,GAAG,MAAM,CACf,OAAO,CAAC,SAAS,CAAC,MAAkC,CAAC,MAAM,IAAI,SAAS,CAC1E,CAAC,WAAW,EAAE,CAAA;IACf,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,GAAG,CAAA;IACxE,MAAM,IAAI,KAAK,CACb,mBAAmB,GAAG,8CAA8C,CACrE,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAyB;IACjD,MAAM,GAAG,GAAG,MAAM,CACf,OAAO,CAAC,SAAS,CAAC,MAAkC,CAAC,aAAa;QACjE,SAAS,CACZ,CAAA;IACD,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAA;IAC/B,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IACzC,IAAI,KAAK,KAAK,qBAAqB;QAAE,OAAO,qBAAqB,CAAA;IACjE,IAAI,KAAK,KAAK,gBAAgB,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CACV,6GAA6G,CAC9G,CAAA;QACD,OAAO,qBAAqB,CAAA;IAC9B,CAAC;IACD,IAAI,KAAK,KAAK,aAAa;QAAE,OAAO,aAAa,CAAA;IACjD,MAAM,IAAI,KAAK,CACb,0BAA0B,GAAG,iEAAiE,CAC/F,CAAA;AACH,CAAC;AAED,SAAS,wBAAwB,CAC/B,OAAyB;IAEzB,MAAM,GAAG,GAAG,MAAM,CACf,OAAO,CAAC,SAAS,CAAC,MAAkC;SAClD,qBAAqB,IAAI,YAAY,CACzC,CAAA;IACD,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAA;IAC/B,IAAI,KAAK,KAAK,aAAa;QAAE,OAAO,aAAa,CAAA;IACjD,IAAI,KAAK,KAAK,YAAY;QAAE,OAAO,YAAY,CAAA;IAC/C,MAAM,IAAI,KAAK,CACb,kCAAkC,GAAG,4CAA4C,CAClF,CAAA;AACH,CAAC;AAED,SAAS,YAAY,CAAC,OAAyB;IAC7C,MAAM,GAAG,GAAI,OAAO,CAAC,SAAS,CAAC,MAAkC,CAAC,SAAS,CAAA;IAC3E,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IAEnD,IAAI,OAAO,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAA;IAExC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;QACpB,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;QAC7B,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,KAAK;YAAE,OAAO,IAAI,CAAA;QACrE,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE;YAAE,OAAO,KAAK,CAAA;QAClF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QAC7B,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,KAAK,CAAA;QACtC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;QACtC,OAAO,EAAE,KAAK,MAAM,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,KAAK,CAAA;IACpD,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,8BAA8B,CAAC,OAAyB;IAC/D,IAAA,qDAAqB,EACnB,OAAO,EACP,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,OAAO,CAClD,CAAA;AACH,CAAC;AAED,IAAA,mCAAgB,EAAC;IACf,UAAU;QACR,OAAO;YACL,OAAO,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO;YAC3C,aAAa,EAAE,qBAAqB;YACpC,UAAU,EAAE,0BAAc;SAC3B,CAAA;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAyB;QACxC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;QACjC,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;QAC/C,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAA;QAC/D,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;QAEvC,MAAM,kBAAkB,GAAG,cAAI,CAAC,OAAO,CACrC,SAAS,EACT,IAAI,EACJ,WAAW,EACX,QAAQ,CACT,CAAA;QACD,MAAM,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAA;QACrD,MAAM,wBAAwB,GAC5B,CAAC,aAAa,IAAI,cAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,kBAAkB,CAAA;QAEtE,IAAI,wBAAwB,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;YAClD,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;YAC5D,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAA;QACpE,CAAC;QAED,MAAM,WAAW,GAAG,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAA;QAE/C,OAAO,CAAC,GAAG,CAAC,2BAA2B,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;QACnE,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,EAAE,CAAC,CAAA;QAClC,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;QAC3D,OAAO,CAAC,GAAG,CAAC,mBAAmB,WAAW,EAAE,CAAC,CAAA;QAC7C,OAAO,CAAC,GAAG,CAAC,qBAAqB,aAAa,EAAE,CAAC,CAAA;QACjD,OAAO,CAAC,GAAG,CAAC,6BAA6B,qBAAqB,EAAE,CAAC,CAAA;QAEjE,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACf,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAA;YAC9D,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAA;YAChE,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAA;YAC9D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACjB,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7C,8BAA8B,CAAC,OAAO,CAAC,CAAA;QACzC,CAAC;QAED,MAAM,IAAA,qBAAS,EAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;QAE7C,MAAM,UAAU,GAAa,EAAE,CAAA;QAC/B,MAAM,eAAe,GAInB,MAAM,KAAK,SAAS;YAClB,CAAC,CAAC,+CAAsB;YACxB,CAAC,CAAC,MAAM,KAAK,MAAM;gBACjB,CAAC,CAAC,yCAAmB;gBACrB,CAAC,CAAC,+CAAsB,CAAA;QAE9B,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,MAAsB,CAAA;QAE/D,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;YAClD,IAAI,KAAK,CAAC,aAAa,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;gBACtE,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,CAAC,IAAI,kBAAkB,CAAC,CAAA;gBACxD,SAAQ;YACV,CAAC;YACD,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAE3B,MAAM,iBAAiB,GAAG,IAAA,oDAAoB,EAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YAEnE,MAAM,IAAA,iCAAe,EAAC;gBACpB,OAAO,EAAE,IAAA,6CAAqB,EAAC;oBAC7B,KAAK,EAAE,KAAmB;oBAC1B,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAA6B;oBAC3D,WAAW;iBACZ,CAAC;gBACF,OAAO;gBACP,KAAK,EAAE,KAAmB;gBAC1B,SAAS,EAAE,UAAU;aACtB,CAAC,CAAA;YAEF,MAAM,IAAA,iCAAe,EAAC;gBACpB,OAAO,EAAE,IAAA,yCAAiB,EAAC;oBACzB,KAAK,EAAE,KAAmB;oBAC1B,WAAW;oBACX,aAAa;oBACb,qBAAqB;iBACtB,CAAC;gBACF,OAAO;gBACP,KAAK,EAAE,KAAmB;gBAC1B,SAAS,EAAE,MAAM;aAClB,CAAC,CAAA;YAEF,MAAM,IAAA,iCAAe,EAAC;gBACpB,OAAO,EAAE,eAAe,CAAC,EAAE,KAAK,EAAE,KAAmB,EAAE,WAAW,EAAE,CAAC;gBACrE,OAAO;gBACP,KAAK,EAAE,KAAmB;gBAC1B,SAAS,EAAE,UAAU;aACtB,CAAC,CAAA;YAEF,MAAM,aAAa,GACjB,MAAM,KAAK,SAAS;gBAClB,CAAC,CAAC,IAAA,qDAA6B,EAAC;oBAC5B,KAAK,EAAE,KAAmB;oBAC1B,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAA6B;oBAC3D,iBAAiB;oBACjB,WAAW;oBACX,aAAa;oBACb,qBAAqB;oBACrB,SAAS;iBACV,CAAC;gBACJ,CAAC,CAAC,MAAM,KAAK,MAAM;oBACjB,CAAC,CAAC,IAAA,+CAA0B,EAAC;wBACzB,KAAK,EAAE,KAAmB;wBAC1B,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAA6B;wBAC3D,iBAAiB;wBACjB,WAAW;wBACX,aAAa;wBACb,SAAS;qBACV,CAAC;oBACJ,CAAC,CAAC,IAAA,uCAAsB,EAAC;wBACrB,KAAK,EAAE,KAAmB;wBAC1B,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAA6B;wBAC3D,iBAAiB;wBACjB,WAAW;wBACX,aAAa;wBACb,qBAAqB;wBACrB,SAAS;qBACV,CAAC,CAAA;YAEV,MAAM,IAAA,iCAAe,EAAC;gBACpB,OAAO,EAAE,aAAa;gBACtB,OAAO;gBACP,KAAK,EAAE,KAAmB;gBAC1B,SAAS,EAAE,QAAQ;aACpB,CAAC,CAAA;YAEF,MAAM,IAAA,iCAAe,EAAC;gBACpB,OAAO,EAAE,IAAA,iDAAuB,EAAC;oBAC/B,KAAK,EAAE,KAAmB;oBAC1B,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAA6B;oBAC3D,MAAM;oBACN,WAAW;oBACX,aAAa;iBACd,CAAC;gBACF,OAAO;gBACP,KAAK,EAAE,KAAmB;gBAC1B,SAAS,EAAE,MAAM;aAClB,CAAC,CAAA;YAEF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,MAAM,IAAA,iCAAe,EAAC;oBACpB,OAAO,EAAE,IAAA,2CAAoB,EAAC;wBAC5B,KAAK,EAAE,KAAmB;wBAC1B,SAAS;wBACT,WAAW;qBACZ,CAAC;oBACF,OAAO;oBACP,KAAK,EAAE,KAAmB;oBAC1B,SAAS,EAAE,WAAW;iBACvB,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAA,iCAAe,EAAC;gBACpB,OAAO,EAAE,IAAA,kDAA2B,EAAC,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;gBACjE,OAAO;gBACP,SAAS,EAAE,qBAAqB;aACjC,CAAC,CAAA;QACJ,CAAC;QAED,MAAM,IAAA,iCAAe,EAAC;YACpB,OAAO,EAAE,IAAA,yCAAmB,EAAC,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC;YAC7D,OAAO;YACP,SAAS,EAAE,cAAc;SAC1B,CAAC,CAAA;QAEF,MAAM,IAAA,iCAAe,EAAC;YACpB,OAAO,EAAE,IAAA,uDAA0B,EAAC,OAAO,CAAC;YAC5C,OAAO;YACP,SAAS,EAAE,cAAc;SAC1B,CAAC,CAAA;QAEF,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAA;QAC5C,OAAO,CAAC,GAAG,CAAC,KAAK,UAAU,CAAC,MAAM,YAAY,MAAM,GAAG,CAAC,CAAA;QACxD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACjB,CAAC;CACF,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  import { GeneratorOptions } from '@prisma/generator-helper';
2
2
  import { Target } from '../constants';
3
3
  import { ImportStyle } from './resolveImportStyle';
4
- export declare function copyFiles(options: GeneratorOptions, target: Target, importStyle: ImportStyle): Promise<void>;
4
+ export declare function copyFiles(options: GeneratorOptions, target: Target, importStyle: ImportStyle, mcp?: boolean): Promise<void>;
@@ -41,10 +41,12 @@ const SHARED_FILES = [
41
41
  'parseQueryParams.ts',
42
42
  'buildModelOpenApi.ts',
43
43
  'operationDefinitions.ts',
44
+ 'operationSchemas.ts',
44
45
  'misc.ts',
45
46
  'routeConfig.ts',
46
47
  'docsRenderer.ts',
47
48
  'operationRuntime.ts',
49
+ 'operationPipeline.ts',
48
50
  'errorMapper.ts',
49
51
  'sse.ts',
50
52
  'pagination.ts',
@@ -62,6 +64,7 @@ const EXPRESS_ONLY_FILES = [
62
64
  'autoIncludeRuntime.ts',
63
65
  'autoIncludeRuntimeGuarded.ts',
64
66
  'materializedRouter.ts',
67
+ 'ndjson.ts',
65
68
  ];
66
69
  function resolveTemplateDir(subpath) {
67
70
  const fromSrc = path.join(__dirname, '..', '..', 'src', subpath);
@@ -70,8 +73,14 @@ function resolveTemplateDir(subpath) {
70
73
  const fromDist = path.join(__dirname, '..', subpath);
71
74
  if (fs.existsSync(fromDist))
72
75
  return fromDist;
73
- throw new Error('Template directory "' + subpath + '" not found.\n Searched:\n ' +
74
- fromSrc + '\n ' + fromDist + '\n __dirname: ' + __dirname);
76
+ throw new Error('Template directory "' +
77
+ subpath +
78
+ '" not found.\n Searched:\n ' +
79
+ fromSrc +
80
+ '\n ' +
81
+ fromDist +
82
+ '\n __dirname: ' +
83
+ __dirname);
75
84
  }
76
85
  function escapeRegex(str) {
77
86
  return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
@@ -120,7 +129,7 @@ function copyFileSync(srcDir, destDir, filename, importStyle, options) {
120
129
  fs.writeFileSync(destPath, content);
121
130
  return null;
122
131
  }
123
- async function copyFiles(options, target, importStyle) {
132
+ async function copyFiles(options, target, importStyle, mcp = false) {
124
133
  const outputPath = options.generator.output?.value;
125
134
  if (!outputPath)
126
135
  return;
@@ -128,17 +137,38 @@ async function copyFiles(options, target, importStyle) {
128
137
  const errors = [];
129
138
  console.log(' Copying utility files to: ' + outputPath + ' (target: ' + target + ')');
130
139
  for (const file of SHARED_FILES) {
131
- const err = copyFileSync(copyBase, outputPath, file, importStyle, { required: true });
140
+ const err = copyFileSync(copyBase, outputPath, file, importStyle, {
141
+ required: true,
142
+ });
132
143
  if (err)
133
144
  errors.push(err);
134
145
  }
135
146
  if (target === 'express') {
136
147
  for (const file of EXPRESS_ONLY_FILES) {
137
- const err = copyFileSync(copyBase, outputPath, file, importStyle, { required: true });
148
+ const err = copyFileSync(copyBase, outputPath, file, importStyle, {
149
+ required: true,
150
+ });
138
151
  if (err)
139
152
  errors.push(err);
140
153
  }
141
154
  }
155
+ if (target === 'hono') {
156
+ const err = copyFileSync(copyBase, outputPath, 'routerParts.ts', importStyle, {
157
+ required: true,
158
+ importRewrites: [
159
+ { from: './routeConfig.hono', to: './routeConfig.target' },
160
+ ],
161
+ });
162
+ if (err)
163
+ errors.push(err);
164
+ }
165
+ if (mcp) {
166
+ const err = copyFileSync(copyBase, outputPath, 'mcpRuntime.ts', importStyle, {
167
+ required: true,
168
+ });
169
+ if (err)
170
+ errors.push(err);
171
+ }
142
172
  const targetConfigFile = 'routeConfig.' + target + '.ts';
143
173
  const err = copyFileSync(copyBase, outputPath, targetConfigFile, importStyle, {
144
174
  required: true,
@@ -157,9 +187,14 @@ async function copyFiles(options, target, importStyle) {
157
187
  if (clientErr)
158
188
  errors.push(clientErr);
159
189
  if (errors.length > 0) {
160
- throw new Error('Failed to copy ' + errors.length + ' required file(s):\n' +
190
+ throw new Error('Failed to copy ' +
191
+ errors.length +
192
+ ' required file(s):\n' +
161
193
  errors.map((e) => ' - ' + e).join('\n') +
162
- '\n copyBase: ' + copyBase + '\n __dirname: ' + __dirname);
194
+ '\n copyBase: ' +
195
+ copyBase +
196
+ '\n __dirname: ' +
197
+ __dirname);
163
198
  }
164
199
  console.log(' ✓ Utility files copied successfully');
165
200
  }
@@ -1 +1 @@
1
- {"version":3,"file":"copyFiles.js","sourceRoot":"","sources":["../../src/utils/copyFiles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"copyFiles.js","sourceRoot":"","sources":["../../src/utils/copyFiles.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import { ImportStyle } from './resolveImportStyle';
1
+ import type { ImportStyle } from './resolveImportStyle';
2
2
  export declare function importExt(style: ImportStyle): string;
@@ -0,0 +1,10 @@
1
+ export declare function assertMcpGuardCompatibility(mcp: boolean, dropGuard: boolean): void;
2
+ type Semver = {
3
+ core: [number, number, number];
4
+ pre: string[];
5
+ };
6
+ export declare function parseSemver(v: string): Semver | null;
7
+ export declare function compareSemver(a: string, b: string): number;
8
+ export declare function resolveInstalledGuardVersion(schemaPath: string): string | null;
9
+ export declare function assertMcpGuardVersion(mcp: boolean, schemaPath: string, resolve?: (schemaPath: string) => string | null): void;
10
+ export {};
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.assertMcpGuardCompatibility = assertMcpGuardCompatibility;
7
+ exports.parseSemver = parseSemver;
8
+ exports.compareSemver = compareSemver;
9
+ exports.resolveInstalledGuardVersion = resolveInstalledGuardVersion;
10
+ exports.assertMcpGuardVersion = assertMcpGuardVersion;
11
+ const node_fs_1 = __importDefault(require("node:fs"));
12
+ const node_path_1 = __importDefault(require("node:path"));
13
+ function assertMcpGuardCompatibility(mcp, dropGuard) {
14
+ if (mcp && dropGuard) {
15
+ throw new Error('Generator option mcp=true cannot be combined with dropGuard=true. ' +
16
+ 'MCP is fail-closed: every tool enforces a guard shape, so a ' +
17
+ 'guard-dropped generation refuses to emit MCP support.');
18
+ }
19
+ }
20
+ const MCP_MIN_GUARD = '1.33.0';
21
+ function parseSemver(v) {
22
+ const numeric = '0|[1-9]' + '\\d*';
23
+ const ident = '[0-9A-Za-z-]+';
24
+ const dotted = ident + '(?:\\.' + ident + ')*';
25
+ const m = new RegExp(`^(${numeric})\\.(${numeric})\\.(${numeric})(?:-(${dotted}))?(?:\\+(${dotted}))?$`).exec(v.trim());
26
+ if (!m)
27
+ return null;
28
+ const pre = m[4] ? m[4].split('.') : [];
29
+ for (const ident of pre) {
30
+ if (/^[0-9]+$/.test(ident) && ident.length > 1 && ident.startsWith('0')) {
31
+ return null;
32
+ }
33
+ }
34
+ return {
35
+ core: [Number(m[1]), Number(m[2]), Number(m[3])],
36
+ pre,
37
+ };
38
+ }
39
+ function compareSemver(a, b) {
40
+ const va = parseSemver(a);
41
+ const vb = parseSemver(b);
42
+ if (!va || !vb) {
43
+ return va ? 1 : vb ? -1 : 0;
44
+ }
45
+ for (let i = 0; i < 3; i++) {
46
+ if (va.core[i] !== vb.core[i])
47
+ return va.core[i] - vb.core[i];
48
+ }
49
+ if (va.pre.length === 0 && vb.pre.length === 0)
50
+ return 0;
51
+ if (va.pre.length === 0)
52
+ return 1;
53
+ if (vb.pre.length === 0)
54
+ return -1;
55
+ const len = Math.max(va.pre.length, vb.pre.length);
56
+ for (let i = 0; i < len; i++) {
57
+ const x = va.pre[i];
58
+ const y = vb.pre[i];
59
+ if (x === undefined)
60
+ return -1;
61
+ if (y === undefined)
62
+ return 1;
63
+ const xn = /^\d+$/.test(x);
64
+ const yn = /^\d+$/.test(y);
65
+ if (xn && yn) {
66
+ if (Number(x) !== Number(y))
67
+ return Number(x) - Number(y);
68
+ }
69
+ else if (xn)
70
+ return -1;
71
+ else if (yn)
72
+ return 1;
73
+ else if (x !== y)
74
+ return x < y ? -1 : 1;
75
+ }
76
+ return 0;
77
+ }
78
+ function resolveInstalledGuardVersion(schemaPath) {
79
+ const schemaDir = node_path_1.default.dirname(node_path_1.default.resolve(schemaPath));
80
+ let dir = schemaDir;
81
+ while (dir) {
82
+ const pkgPath = node_path_1.default.join(dir, 'node_modules', 'prisma-guard', 'package.json');
83
+ try {
84
+ const version = JSON.parse(node_fs_1.default.readFileSync(pkgPath, 'utf8')).version;
85
+ if (typeof version === 'string')
86
+ return version;
87
+ }
88
+ catch {
89
+ }
90
+ const parent = node_path_1.default.dirname(dir);
91
+ dir = parent !== dir ? parent : undefined;
92
+ }
93
+ return null;
94
+ }
95
+ function assertMcpGuardVersion(mcp, schemaPath, resolve = resolveInstalledGuardVersion) {
96
+ if (!mcp)
97
+ return;
98
+ const version = resolve(schemaPath);
99
+ if (version === null) {
100
+ throw new Error('mcp=true requires prisma-guard >= ' +
101
+ MCP_MIN_GUARD +
102
+ ', but prisma-guard could not be resolved from the schema project. ' +
103
+ 'Install it (npm install prisma-guard@^' +
104
+ MCP_MIN_GUARD +
105
+ ') or turn mcp off.');
106
+ }
107
+ if (compareSemver(version, MCP_MIN_GUARD) < 0) {
108
+ throw new Error('mcp=true requires prisma-guard >= ' +
109
+ MCP_MIN_GUARD +
110
+ ' (MCP tool schemas mirror 1.33 semantics: unique-selector where, ' +
111
+ 'operator configs, forced-value merging). Found prisma-guard ' +
112
+ version +
113
+ '. Upgrade it (npm install prisma-guard@^' +
114
+ MCP_MIN_GUARD +
115
+ ') or turn mcp off.');
116
+ }
117
+ }
118
+ //# sourceMappingURL=mcpGate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcpGate.js","sourceRoot":"","sources":["../../src/utils/mcpGate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export type PathCase = 'lower' | 'kebab' | 'raw';
2
+ export declare function parsePathCase(raw: unknown): PathCase;
3
+ export declare function toKebabCase(name: string): string;
4
+ export declare function modelPathSegment(modelName: string, pathCase: PathCase): string;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parsePathCase = parsePathCase;
4
+ exports.toKebabCase = toKebabCase;
5
+ exports.modelPathSegment = modelPathSegment;
6
+ function parsePathCase(raw) {
7
+ const value = String(raw ?? 'lower').toLowerCase();
8
+ if (value === 'lower' || value === 'kebab' || value === 'raw')
9
+ return value;
10
+ throw new Error(`Invalid pathCase "${String(raw)}". Expected "lower", "kebab", or "raw".`);
11
+ }
12
+ function toKebabCase(name) {
13
+ let out = '';
14
+ for (let i = 0; i < name.length; i++) {
15
+ const ch = name[i];
16
+ const prev = i > 0 ? name[i - 1] : undefined;
17
+ const next = name[i + 1];
18
+ const isUpper = ch >= 'A' && ch <= 'Z';
19
+ const prevIsLower = prev !== undefined && prev >= 'a' && prev <= 'z';
20
+ const prevIsDigit = prev !== undefined && prev >= '0' && prev <= '9';
21
+ const nextIsLower = next !== undefined && next >= 'a' && next <= 'z';
22
+ if (isUpper &&
23
+ i > 0 &&
24
+ (prevIsLower ||
25
+ prevIsDigit ||
26
+ (prev !== undefined && prev >= 'A' && prev <= 'Z' && nextIsLower))) {
27
+ out += '-';
28
+ }
29
+ out += ch.toLowerCase();
30
+ }
31
+ return out;
32
+ }
33
+ function modelPathSegment(modelName, pathCase) {
34
+ if (pathCase === 'raw')
35
+ return modelName;
36
+ if (pathCase === 'kebab')
37
+ return toKebabCase(modelName);
38
+ return modelName.toLowerCase();
39
+ }
40
+ //# sourceMappingURL=pathCasing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pathCasing.js","sourceRoot":"","sources":["../../src/utils/pathCasing.ts"],"names":[],"mappings":";;AAEA,sCAMC;AAED,kCAsBC;AAED,4CAOC;AAvCD,SAAgB,aAAa,CAAC,GAAY;IACxC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,IAAI,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;IAClD,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,KAAK;QAAE,OAAO,KAAK,CAAA;IAC3E,MAAM,IAAI,KAAK,CACb,qBAAqB,MAAM,CAAC,GAAG,CAAC,yCAAyC,CAC1E,CAAA;AACH,CAAC;AAED,SAAgB,WAAW,CAAC,IAAY;IACtC,IAAI,GAAG,GAAG,EAAE,CAAA;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QAClB,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QACxB,MAAM,OAAO,GAAG,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,CAAA;QACtC,MAAM,WAAW,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,CAAA;QACpE,MAAM,WAAW,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,CAAA;QACpE,MAAM,WAAW,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,CAAA;QACpE,IACE,OAAO;YACP,CAAC,GAAG,CAAC;YACL,CAAC,WAAW;gBACV,WAAW;gBACX,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,WAAW,CAAC,CAAC,EACpE,CAAC;YACD,GAAG,IAAI,GAAG,CAAA;QACZ,CAAC;QACD,GAAG,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACzB,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAgB,gBAAgB,CAC9B,SAAiB,EACjB,QAAkB;IAElB,IAAI,QAAQ,KAAK,KAAK;QAAE,OAAO,SAAS,CAAA;IACxC,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,WAAW,CAAC,SAAS,CAAC,CAAA;IACvD,OAAO,SAAS,CAAC,WAAW,EAAE,CAAA;AAChC,CAAC"}