prisma-generator-express 1.43.0 → 1.44.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.
- package/dist/generators/generateFastifyHandler.d.ts +2 -0
- package/dist/generators/generateFastifyHandler.js +4 -2
- package/dist/generators/generateFastifyHandler.js.map +1 -1
- package/dist/generators/generateHonoHandler.d.ts +2 -0
- package/dist/generators/generateHonoHandler.js +4 -2
- package/dist/generators/generateHonoHandler.js.map +1 -1
- package/dist/generators/generateRelationMeta.js +7 -3
- package/dist/generators/generateRelationMeta.js.map +1 -1
- package/dist/generators/generateRouteConfigType.js +9 -1
- package/dist/generators/generateRouteConfigType.js.map +1 -1
- package/dist/generators/generateRouter.js +44 -18
- package/dist/generators/generateRouter.js.map +1 -1
- package/dist/generators/generateUnifiedHandler.d.ts +2 -0
- package/dist/generators/generateUnifiedHandler.js +4 -2
- package/dist/generators/generateUnifiedHandler.js.map +1 -1
- package/dist/generators/generateUnifiedScalarUI.d.ts +2 -0
- package/dist/generators/generateUnifiedScalarUI.js +19 -16
- package/dist/generators/generateUnifiedScalarUI.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/utils/writeFileSafely.js +0 -3
- package/dist/utils/writeFileSafely.js.map +1 -1
- package/package.json +1 -1
- package/src/copy/autoIncludePlanner.ts +64 -9
- package/src/copy/autoIncludeRuntime.ts +91 -36
- package/src/copy/operationRuntime.ts +12 -1
- package/src/generators/generateFastifyHandler.ts +6 -2
- package/src/generators/generateHonoHandler.ts +6 -2
- package/src/generators/generateRelationMeta.ts +8 -2
- package/src/generators/generateRouteConfigType.ts +8 -1
- package/src/generators/generateRouter.ts +44 -18
- package/src/generators/generateUnifiedHandler.ts +6 -2
- package/src/generators/generateUnifiedScalarUI.ts +21 -16
- package/src/index.ts +6 -6
- package/src/utils/writeFileSafely.ts +0 -3
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.generateFastifyHandler = generateFastifyHandler;
|
|
4
4
|
const strings_1 = require("../utils/strings");
|
|
5
|
+
const importExt_1 = require("../utils/importExt");
|
|
5
6
|
const CORE_NAME_MAP = {
|
|
6
7
|
delete: 'deleteUnique',
|
|
7
8
|
};
|
|
@@ -36,6 +37,7 @@ const CREATED_OPS = new Set([
|
|
|
36
37
|
'createManyAndReturn',
|
|
37
38
|
]);
|
|
38
39
|
function generateFastifyHandler(options) {
|
|
40
|
+
const ext = (0, importExt_1.importExt)(options.importStyle);
|
|
39
41
|
const modelName = options.model.name;
|
|
40
42
|
const prefix = (0, strings_1.toCamelCase)(modelName);
|
|
41
43
|
const readHandlers = READ_OPS.map((op) => {
|
|
@@ -64,8 +66,8 @@ export async function ${exportName}(
|
|
|
64
66
|
}`;
|
|
65
67
|
}).join('\n');
|
|
66
68
|
return `import type { FastifyRequest, FastifyReply } from 'fastify'
|
|
67
|
-
import * as core from './${modelName}Core'
|
|
68
|
-
import type { OperationContext } from '../operationRuntime'
|
|
69
|
+
import * as core from './${modelName}Core${ext}'
|
|
70
|
+
import type { OperationContext } from '../operationRuntime${ext}'
|
|
69
71
|
|
|
70
72
|
type FastifyExtended = FastifyRequest & {
|
|
71
73
|
prisma?: unknown
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateFastifyHandler.js","sourceRoot":"","sources":["../../src/generators/generateFastifyHandler.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"generateFastifyHandler.js","sourceRoot":"","sources":["../../src/generators/generateFastifyHandler.ts"],"names":[],"mappings":";;AA2CA,wDAqEC;AA/GD,8CAA8C;AAE9C,kDAA8C;AAE9C,MAAM,aAAa,GAA2B;IAC5C,MAAM,EAAE,cAAc;CACvB,CAAA;AAED,SAAS,UAAU,CAAC,EAAU;IAC5B,OAAO,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,CAAA;AAChC,CAAC;AAED,MAAM,QAAQ,GAAG;IACf,UAAU;IACV,WAAW;IACX,kBAAkB;IAClB,YAAY;IACZ,mBAAmB;IACnB,mBAAmB;IACnB,WAAW;IACX,OAAO;IACP,SAAS;CACV,CAAA;AAED,MAAM,SAAS,GAAG;IAChB,QAAQ;IACR,YAAY;IACZ,qBAAqB;IACrB,QAAQ;IACR,YAAY;IACZ,qBAAqB;IACrB,QAAQ;IACR,QAAQ;IACR,YAAY;CACb,CAAA;AAED,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;IAC1B,QAAQ;IACR,YAAY;IACZ,qBAAqB;CACtB,CAAC,CAAA;AAEF,SAAgB,sBAAsB,CAAC,OAGtC;IACC,MAAM,GAAG,GAAG,IAAA,qBAAS,EAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAA;IACpC,MAAM,MAAM,GAAG,IAAA,qBAAW,EAAC,SAAS,CAAC,CAAA;IAErC,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACvC,MAAM,UAAU,GAAG,GAAG,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;QAEzE,OAAO;wBACa,UAAU;;;;4BAIN,UAAU,CAAC,EAAE,CAAC;;EAExC,CAAA;IACA,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEb,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACzC,MAAM,UAAU,GAAG,GAAG,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;QACzE,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;QAElD,OAAO;wBACa,UAAU;;;;4BAIN,UAAU,CAAC,EAAE,CAAC;;;uBAGnB,UAAU;EAC/B,CAAA;IACA,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEb,OAAO;2BACkB,SAAS,OAAO,GAAG;4DACc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2B7D,YAAY;EACZ,aAAa;CACd,CAAA;AACD,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.generateHonoHandler = generateHonoHandler;
|
|
4
4
|
const strings_1 = require("../utils/strings");
|
|
5
|
+
const importExt_1 = require("../utils/importExt");
|
|
5
6
|
const CORE_NAME_MAP = {
|
|
6
7
|
delete: 'deleteUnique',
|
|
7
8
|
};
|
|
@@ -36,6 +37,7 @@ const CREATED_OPS = new Set([
|
|
|
36
37
|
'createManyAndReturn',
|
|
37
38
|
]);
|
|
38
39
|
function generateHonoHandler(options) {
|
|
40
|
+
const ext = (0, importExt_1.importExt)(options.importStyle);
|
|
39
41
|
const modelName = options.model.name;
|
|
40
42
|
const prefix = (0, strings_1.toCamelCase)(modelName);
|
|
41
43
|
const readHandlers = READ_OPS.map((op) => {
|
|
@@ -57,8 +59,8 @@ export async function ${exportName}(c: Context<HonoEnv>): Promise<void> {
|
|
|
57
59
|
}`;
|
|
58
60
|
}).join('\n');
|
|
59
61
|
return `import type { Context } from 'hono'
|
|
60
|
-
import * as core from './${modelName}Core'
|
|
61
|
-
import type { OperationContext } from '../operationRuntime'
|
|
62
|
+
import * as core from './${modelName}Core${ext}'
|
|
63
|
+
import type { OperationContext } from '../operationRuntime${ext}'
|
|
62
64
|
|
|
63
65
|
type HonoVariables = {
|
|
64
66
|
prisma: unknown
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateHonoHandler.js","sourceRoot":"","sources":["../../src/generators/generateHonoHandler.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"generateHonoHandler.js","sourceRoot":"","sources":["../../src/generators/generateHonoHandler.ts"],"names":[],"mappings":";;AA2CA,kDAgEC;AA1GD,8CAA8C;AAE9C,kDAA8C;AAE9C,MAAM,aAAa,GAA2B;IAC5C,MAAM,EAAE,cAAc;CACvB,CAAA;AAED,SAAS,UAAU,CAAC,EAAU;IAC5B,OAAO,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,CAAA;AAChC,CAAC;AAED,MAAM,QAAQ,GAAG;IACf,UAAU;IACV,WAAW;IACX,kBAAkB;IAClB,YAAY;IACZ,mBAAmB;IACnB,mBAAmB;IACnB,WAAW;IACX,OAAO;IACP,SAAS;CACV,CAAA;AAED,MAAM,SAAS,GAAG;IAChB,QAAQ;IACR,YAAY;IACZ,qBAAqB;IACrB,QAAQ;IACR,YAAY;IACZ,qBAAqB;IACrB,QAAQ;IACR,QAAQ;IACR,YAAY;CACb,CAAA;AAED,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;IAC1B,QAAQ;IACR,YAAY;IACZ,qBAAqB;CACtB,CAAC,CAAA;AAEF,SAAgB,mBAAmB,CAAC,OAGnC;IACC,MAAM,GAAG,GAAG,IAAA,qBAAS,EAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAA;IACpC,MAAM,MAAM,GAAG,IAAA,qBAAW,EAAC,SAAS,CAAC,CAAA;IAErC,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACvC,MAAM,UAAU,GAAG,GAAG,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;QAEzE,OAAO;wBACa,UAAU;4BACN,UAAU,CAAC,EAAE,CAAC;;EAExC,CAAA;IACA,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEb,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACzC,MAAM,UAAU,GAAG,GAAG,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;QACzE,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;QAElD,OAAO;wBACa,UAAU;4BACN,UAAU,CAAC,EAAE,CAAC;;0BAEhB,UAAU;EAClC,CAAA;IACA,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEb,OAAO;2BACkB,SAAS,OAAO,GAAG;4DACc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6B7D,YAAY;EACZ,aAAa;CACd,CAAA;AACD,CAAC"}
|
|
@@ -3,13 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.generateRelationMeta = generateRelationMeta;
|
|
4
4
|
exports.generateRelationModelsIndex = generateRelationModelsIndex;
|
|
5
5
|
const importExt_1 = require("../utils/importExt");
|
|
6
|
-
function findOppositeField(models, targetModelName, relationName, selfModelName) {
|
|
6
|
+
function findOppositeField(models, targetModelName, relationName, selfModelName, selfFieldName) {
|
|
7
7
|
if (!relationName)
|
|
8
8
|
return null;
|
|
9
9
|
const target = models.find((m) => m.name === targetModelName);
|
|
10
10
|
if (!target)
|
|
11
11
|
return null;
|
|
12
|
-
|
|
12
|
+
const isSelfRelation = targetModelName === selfModelName;
|
|
13
|
+
return target.fields.find((f) => f.kind === 'object' &&
|
|
14
|
+
f.relationName === relationName &&
|
|
15
|
+
f.type === selfModelName &&
|
|
16
|
+
!(isSelfRelation && f.name === selfFieldName)) || null;
|
|
13
17
|
}
|
|
14
18
|
function computeRelation(field, selfModelName, models) {
|
|
15
19
|
const selfFrom = (field.relationFromFields ?? []);
|
|
@@ -25,7 +29,7 @@ function computeRelation(field, selfModelName, models) {
|
|
|
25
29
|
childLinkFields: selfTo,
|
|
26
30
|
};
|
|
27
31
|
}
|
|
28
|
-
const opposite = findOppositeField(models, field.type, field.relationName, selfModelName);
|
|
32
|
+
const opposite = findOppositeField(models, field.type, field.relationName, selfModelName, field.name);
|
|
29
33
|
if (opposite) {
|
|
30
34
|
const oppFrom = (opposite.relationFromFields ?? []);
|
|
31
35
|
const oppTo = (opposite.relationToFields ?? []);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateRelationMeta.js","sourceRoot":"","sources":["../../src/generators/generateRelationMeta.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"generateRelationMeta.js","sourceRoot":"","sources":["../../src/generators/generateRelationMeta.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,10 +36,18 @@ const ROUTER_OP_TO_SHAPE_OP = {
|
|
|
36
36
|
function capitalize(s) {
|
|
37
37
|
return s.charAt(0).toUpperCase() + s.slice(1);
|
|
38
38
|
}
|
|
39
|
+
function requestTypeFor(target) {
|
|
40
|
+
if (target === 'fastify')
|
|
41
|
+
return `import('fastify').FastifyRequest`;
|
|
42
|
+
if (target === 'hono')
|
|
43
|
+
return `import('hono').Context`;
|
|
44
|
+
return `import('express').Request`;
|
|
45
|
+
}
|
|
39
46
|
function generateRouteConfigType(modelName, hookHandlerType, guardShapesImport, importStyle, target) {
|
|
40
47
|
const ext = (0, importExt_1.importExt)(importStyle);
|
|
41
48
|
const m = modelName;
|
|
42
49
|
const supportsProgressive = target === 'express';
|
|
50
|
+
const requestType = requestTypeFor(target);
|
|
43
51
|
const progressiveTypeImport = supportsProgressive
|
|
44
52
|
? `import type { ProgressiveVariantConfig, ProgressiveStage } from '../routeConfig.target${ext}'\n\n`
|
|
45
53
|
: '';
|
|
@@ -71,7 +79,7 @@ function generateRouteConfigType(modelName, hookHandlerType, guardShapesImport,
|
|
|
71
79
|
` | ${omitKeys}\n` +
|
|
72
80
|
` | 'resolveContext'\n` +
|
|
73
81
|
`> & {\n` +
|
|
74
|
-
` resolveContext?: (request:
|
|
82
|
+
` resolveContext?: (request: ${requestType}) => TCtx | Promise<TCtx>\n` +
|
|
75
83
|
`${overrides}\n}\n`);
|
|
76
84
|
}
|
|
77
85
|
//# sourceMappingURL=generateRouteConfigType.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateRouteConfigType.js","sourceRoot":"","sources":["../../src/generators/generateRouteConfigType.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"generateRouteConfigType.js","sourceRoot":"","sources":["../../src/generators/generateRouteConfigType.ts"],"names":[],"mappings":"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"}
|
|
@@ -63,6 +63,10 @@ import {
|
|
|
63
63
|
acceptsEventStream,
|
|
64
64
|
runProgressiveEndpoint,
|
|
65
65
|
runSingleResultSSE,
|
|
66
|
+
emitTerminalSSEError,
|
|
67
|
+
removeReqCloseListener,
|
|
68
|
+
mapError,
|
|
69
|
+
HttpError,
|
|
66
70
|
} from '../operationRuntime${ext}'
|
|
67
71
|
import { relationModels } from '../relationModels${ext}'
|
|
68
72
|
import { runAutoIncludeProgressive } from '../autoIncludeRuntime${ext}'
|
|
@@ -198,7 +202,7 @@ export function ${routerFunctionName}<TCtx = unknown>(config: ${modelName}RouteC
|
|
|
198
202
|
}
|
|
199
203
|
}
|
|
200
204
|
|
|
201
|
-
|
|
205
|
+
const maybeProgressiveSSE = (
|
|
202
206
|
opConfig: OperationConfigLike,
|
|
203
207
|
coreFn: (ctx: OperationContext) => Promise<unknown>,
|
|
204
208
|
baseOp: string,
|
|
@@ -229,7 +233,8 @@ export function ${routerFunctionName}<TCtx = unknown>(config: ${modelName}RouteC
|
|
|
229
233
|
|
|
230
234
|
if (!isSingleRecordRead) {
|
|
231
235
|
if (progressiveConfig.fallback === 'error') {
|
|
232
|
-
|
|
236
|
+
emitTerminalSSEError(res, 'auto-progressive fallback: operation not single-record')
|
|
237
|
+
return
|
|
233
238
|
}
|
|
234
239
|
await runSingleResultSSE({
|
|
235
240
|
req,
|
|
@@ -239,25 +244,40 @@ export function ${routerFunctionName}<TCtx = unknown>(config: ${modelName}RouteC
|
|
|
239
244
|
return
|
|
240
245
|
}
|
|
241
246
|
|
|
242
|
-
|
|
247
|
+
const ctx = buildContext(req, res)
|
|
248
|
+
const args = (locals.parsedQuery ?? {}) as Record<string, unknown>
|
|
249
|
+
const controller = new AbortController()
|
|
250
|
+
const onClose = () => controller.abort()
|
|
251
|
+
req.on('close', onClose)
|
|
252
|
+
try {
|
|
253
|
+
await runAutoIncludeProgressive({
|
|
254
|
+
req,
|
|
255
|
+
res,
|
|
256
|
+
ctx,
|
|
257
|
+
args,
|
|
258
|
+
baseOp: baseOp as 'findUnique' | 'findUniqueOrThrow' | 'findFirst' | 'findFirstOrThrow',
|
|
259
|
+
modelName: '${modelName}',
|
|
260
|
+
delegateKey: '${delegateKey}',
|
|
261
|
+
models: relationModels,
|
|
262
|
+
variantConfig: progressiveConfig,
|
|
263
|
+
coreQueryFn: () => coreFn(ctx),
|
|
264
|
+
signal: controller.signal,
|
|
265
|
+
})
|
|
266
|
+
} finally {
|
|
267
|
+
removeReqCloseListener(req, onClose)
|
|
268
|
+
}
|
|
269
|
+
return
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
if (!Array.isArray(progressiveConfig.stages)) {
|
|
273
|
+
await runSingleResultSSE({
|
|
243
274
|
req,
|
|
244
275
|
res,
|
|
245
|
-
ctx: buildContext(req, res),
|
|
246
|
-
args: locals.parsedQuery ?? {},
|
|
247
|
-
baseOp: baseOp as 'findUnique' | 'findUniqueOrThrow' | 'findFirst' | 'findFirstOrThrow',
|
|
248
|
-
modelName: '${modelName}',
|
|
249
|
-
delegateKey: '${delegateKey}',
|
|
250
|
-
models: relationModels,
|
|
251
|
-
variantConfig: progressiveConfig,
|
|
252
276
|
coreQueryFn: () => coreFn(buildContext(req, res)),
|
|
253
277
|
})
|
|
254
278
|
return
|
|
255
279
|
}
|
|
256
280
|
|
|
257
|
-
if (!Array.isArray(progressiveConfig.stages)) {
|
|
258
|
-
return next({ status: 500, message: 'Progressive endpoint requires stages array' })
|
|
259
|
-
}
|
|
260
|
-
|
|
261
281
|
const stageRegistry = opConfig.progressiveStages ?? {}
|
|
262
282
|
const missingStage = progressiveConfig.stages.find(
|
|
263
283
|
(name: string) => typeof stageRegistry[name] !== 'function',
|
|
@@ -437,10 +457,16 @@ export function ${routerFunctionName}<TCtx = unknown>(config: ${modelName}RouteC
|
|
|
437
457
|
}
|
|
438
458
|
|
|
439
459
|
router.use((err: unknown, _req: Request, res: Response, next: NextFunction) => {
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
if (
|
|
460
|
+
let httpError: HttpError
|
|
461
|
+
if (err instanceof HttpError) {
|
|
462
|
+
httpError = err
|
|
463
|
+
} else if (err && typeof err === 'object' && typeof (err as { status?: number }).status === 'number') {
|
|
464
|
+
const e = err as { status: number; message?: string }
|
|
465
|
+
httpError = new HttpError(e.status, e.message || 'Internal server error')
|
|
466
|
+
} else {
|
|
467
|
+
httpError = mapError(err)
|
|
468
|
+
}
|
|
469
|
+
if (!res.headersSent) return res.status(httpError.status).json({ message: httpError.message })
|
|
444
470
|
next(err)
|
|
445
471
|
})
|
|
446
472
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateRouter.js","sourceRoot":"","sources":["../../src/generators/generateRouter.ts"],"names":[],"mappings":";;AAMA,
|
|
1
|
+
{"version":3,"file":"generateRouter.js","sourceRoot":"","sources":["../../src/generators/generateRouter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { DMMF } from '@prisma/generator-helper';
|
|
2
|
+
import { ImportStyle } from '../utils/resolveImportStyle';
|
|
2
3
|
export interface UnifiedHandlerOptions {
|
|
3
4
|
model: DMMF.Model;
|
|
5
|
+
importStyle: ImportStyle;
|
|
4
6
|
}
|
|
5
7
|
export declare function generateUnifiedHandler(options: UnifiedHandlerOptions): string;
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.generateUnifiedHandler = generateUnifiedHandler;
|
|
4
4
|
const strings_1 = require("../utils/strings");
|
|
5
|
+
const importExt_1 = require("../utils/importExt");
|
|
5
6
|
const CORE_NAME_MAP = {
|
|
6
7
|
delete: 'deleteUnique',
|
|
7
8
|
};
|
|
@@ -29,6 +30,7 @@ const ALL_OPS = [
|
|
|
29
30
|
'groupBy',
|
|
30
31
|
];
|
|
31
32
|
function generateUnifiedHandler(options) {
|
|
33
|
+
const ext = (0, importExt_1.importExt)(options.importStyle);
|
|
32
34
|
const modelName = options.model.name;
|
|
33
35
|
const prefix = (0, strings_1.toCamelCase)(modelName);
|
|
34
36
|
const handlers = ALL_OPS.map((op) => {
|
|
@@ -48,8 +50,8 @@ export async function ${exportName}(
|
|
|
48
50
|
}`;
|
|
49
51
|
}).join('\n');
|
|
50
52
|
return `import { Request, Response, NextFunction } from 'express'
|
|
51
|
-
import * as core from './${modelName}Core'
|
|
52
|
-
import { OperationContext, mapError } from '../operationRuntime'
|
|
53
|
+
import * as core from './${modelName}Core${ext}'
|
|
54
|
+
import { OperationContext, mapError } from '../operationRuntime${ext}'
|
|
53
55
|
|
|
54
56
|
type ExtendedRequest = Request & {
|
|
55
57
|
prisma?: unknown
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateUnifiedHandler.js","sourceRoot":"","sources":["../../src/generators/generateUnifiedHandler.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"generateUnifiedHandler.js","sourceRoot":"","sources":["../../src/generators/generateUnifiedHandler.ts"],"names":[],"mappings":";;AAuCA,wDAyDC;AA/FD,8CAA8C;AAE9C,kDAA8C;AAO9C,MAAM,aAAa,GAA2B;IAC5C,MAAM,EAAE,cAAc;CACvB,CAAA;AAED,SAAS,UAAU,CAAC,EAAU;IAC5B,OAAO,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,CAAA;AAChC,CAAC;AAED,MAAM,OAAO,GAAG;IACd,UAAU;IACV,WAAW;IACX,kBAAkB;IAClB,YAAY;IACZ,mBAAmB;IACnB,mBAAmB;IACnB,QAAQ;IACR,YAAY;IACZ,qBAAqB;IACrB,QAAQ;IACR,YAAY;IACZ,qBAAqB;IACrB,QAAQ;IACR,QAAQ;IACR,YAAY;IACZ,WAAW;IACX,OAAO;IACP,SAAS;CACV,CAAA;AAED,SAAgB,sBAAsB,CAAC,OAA8B;IACnE,MAAM,GAAG,GAAG,IAAA,qBAAS,EAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAA;IACpC,MAAM,MAAM,GAAG,IAAA,qBAAW,EAAC,SAAS,CAAC,CAAA;IAErC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QAClC,MAAM,UAAU,GAAG,GAAG,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;QAEzE,OAAO;wBACa,UAAU;;;;;;mDAMiB,UAAU,CAAC,EAAE,CAAC;;;;;EAK/D,CAAA;IACA,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEb,OAAO;2BACkB,SAAS,OAAO,GAAG;iEACmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BlE,QAAQ;CACT,CAAA;AACD,CAAC"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { DMMF } from '@prisma/generator-helper';
|
|
2
2
|
import { Target } from '../constants';
|
|
3
|
+
import { ImportStyle } from '../utils/resolveImportStyle';
|
|
3
4
|
export declare function generateScalarUIHandler(options: {
|
|
4
5
|
model: DMMF.Model;
|
|
5
6
|
enums: DMMF.DatamodelEnum[];
|
|
6
7
|
target?: Target;
|
|
8
|
+
importStyle: ImportStyle;
|
|
7
9
|
}): string;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.generateScalarUIHandler = generateScalarUIHandler;
|
|
4
|
+
const importExt_1 = require("../utils/importExt");
|
|
4
5
|
function exampleValueForType(fieldType) {
|
|
5
6
|
switch (fieldType) {
|
|
6
7
|
case 'String':
|
|
@@ -45,8 +46,8 @@ function generateExpressDocsExport(modelName) {
|
|
|
45
46
|
if (ui === 'yaml') {
|
|
46
47
|
const yaml = buildModelOpenApi(
|
|
47
48
|
'${modelName}',
|
|
48
|
-
MODEL_FIELDS as
|
|
49
|
-
MODEL_ENUMS as
|
|
49
|
+
MODEL_FIELDS as unknown as Parameters<typeof buildModelOpenApi>[1],
|
|
50
|
+
MODEL_ENUMS as unknown as Parameters<typeof buildModelOpenApi>[2],
|
|
50
51
|
config,
|
|
51
52
|
{ format: 'yaml' }
|
|
52
53
|
)
|
|
@@ -55,8 +56,8 @@ function generateExpressDocsExport(modelName) {
|
|
|
55
56
|
|
|
56
57
|
const spec = buildModelOpenApi(
|
|
57
58
|
'${modelName}',
|
|
58
|
-
MODEL_FIELDS as
|
|
59
|
-
MODEL_ENUMS as
|
|
59
|
+
MODEL_FIELDS as unknown as Parameters<typeof buildModelOpenApi>[1],
|
|
60
|
+
MODEL_ENUMS as unknown as Parameters<typeof buildModelOpenApi>[2],
|
|
60
61
|
config,
|
|
61
62
|
{ format: 'json' }
|
|
62
63
|
)
|
|
@@ -80,7 +81,8 @@ function generateFastifyDocsExport(modelName) {
|
|
|
80
81
|
const disabled = isOpenApiDisabled(config.disableOpenApi)
|
|
81
82
|
if (disabled) { reply.code(404).send('OpenAPI documentation is disabled in production'); return }
|
|
82
83
|
|
|
83
|
-
const
|
|
84
|
+
const queryParams = request.query as { ui?: string } | undefined
|
|
85
|
+
const rawUi = queryParams?.ui || config.docsUi || 'docs'
|
|
84
86
|
const validUis: DocsUI[] = ['docs', 'scalar', 'json', 'yaml', 'playground']
|
|
85
87
|
const ui: DocsUI = validUis.includes(rawUi as DocsUI) ? (rawUi as DocsUI) : 'docs'
|
|
86
88
|
|
|
@@ -94,8 +96,8 @@ function generateFastifyDocsExport(modelName) {
|
|
|
94
96
|
if (ui === 'yaml') {
|
|
95
97
|
const yaml = buildModelOpenApi(
|
|
96
98
|
'${modelName}',
|
|
97
|
-
MODEL_FIELDS as
|
|
98
|
-
MODEL_ENUMS as
|
|
99
|
+
MODEL_FIELDS as unknown as Parameters<typeof buildModelOpenApi>[1],
|
|
100
|
+
MODEL_ENUMS as unknown as Parameters<typeof buildModelOpenApi>[2],
|
|
99
101
|
config,
|
|
100
102
|
{ format: 'yaml' }
|
|
101
103
|
)
|
|
@@ -104,8 +106,8 @@ function generateFastifyDocsExport(modelName) {
|
|
|
104
106
|
|
|
105
107
|
const spec = buildModelOpenApi(
|
|
106
108
|
'${modelName}',
|
|
107
|
-
MODEL_FIELDS as
|
|
108
|
-
MODEL_ENUMS as
|
|
109
|
+
MODEL_FIELDS as unknown as Parameters<typeof buildModelOpenApi>[1],
|
|
110
|
+
MODEL_ENUMS as unknown as Parameters<typeof buildModelOpenApi>[2],
|
|
109
111
|
config,
|
|
110
112
|
{ format: 'json' }
|
|
111
113
|
)
|
|
@@ -143,8 +145,8 @@ function generateHonoDocsExport(modelName) {
|
|
|
143
145
|
if (ui === 'yaml') {
|
|
144
146
|
const yaml = buildModelOpenApi(
|
|
145
147
|
'${modelName}',
|
|
146
|
-
MODEL_FIELDS as
|
|
147
|
-
MODEL_ENUMS as
|
|
148
|
+
MODEL_FIELDS as unknown as Parameters<typeof buildModelOpenApi>[1],
|
|
149
|
+
MODEL_ENUMS as unknown as Parameters<typeof buildModelOpenApi>[2],
|
|
148
150
|
config,
|
|
149
151
|
{ format: 'yaml' }
|
|
150
152
|
) as string
|
|
@@ -153,13 +155,13 @@ function generateHonoDocsExport(modelName) {
|
|
|
153
155
|
|
|
154
156
|
const spec = buildModelOpenApi(
|
|
155
157
|
'${modelName}',
|
|
156
|
-
MODEL_FIELDS as
|
|
157
|
-
MODEL_ENUMS as
|
|
158
|
+
MODEL_FIELDS as unknown as Parameters<typeof buildModelOpenApi>[1],
|
|
159
|
+
MODEL_ENUMS as unknown as Parameters<typeof buildModelOpenApi>[2],
|
|
158
160
|
config,
|
|
159
161
|
{ format: 'json' }
|
|
160
162
|
)
|
|
161
163
|
|
|
162
|
-
if (ui === 'json') return c.json(spec as
|
|
164
|
+
if (ui === 'json') return c.json(spec as Record<string, unknown>)
|
|
163
165
|
|
|
164
166
|
const pageTitle = config.docsTitle || \`${modelName} API\`
|
|
165
167
|
|
|
@@ -175,6 +177,7 @@ function generateHonoDocsExport(modelName) {
|
|
|
175
177
|
function generateScalarUIHandler(options) {
|
|
176
178
|
const { model, enums } = options;
|
|
177
179
|
const target = options.target || 'express';
|
|
180
|
+
const ext = (0, importExt_1.importExt)(options.importStyle);
|
|
178
181
|
const modelName = model.name;
|
|
179
182
|
const fieldsMeta = model.fields.map((f) => ({
|
|
180
183
|
name: f.name,
|
|
@@ -225,7 +228,7 @@ function generateScalarUIHandler(options) {
|
|
|
225
228
|
? generateHonoDocsExport(modelName)
|
|
226
229
|
: generateExpressDocsExport(modelName);
|
|
227
230
|
return `${frameworkImport}
|
|
228
|
-
import { buildModelOpenApi } from '../buildModelOpenApi'
|
|
231
|
+
import { buildModelOpenApi } from '../buildModelOpenApi${ext}'
|
|
229
232
|
import {
|
|
230
233
|
renderDocs,
|
|
231
234
|
renderScalar,
|
|
@@ -237,7 +240,7 @@ import {
|
|
|
237
240
|
type DocsUI,
|
|
238
241
|
type DocsConfig,
|
|
239
242
|
type DocsModelContext,
|
|
240
|
-
} from '../docsRenderer'
|
|
243
|
+
} from '../docsRenderer${ext}'
|
|
241
244
|
|
|
242
245
|
export const MODEL_FIELDS: FieldMeta[] = ${JSON.stringify(fieldsMeta, null, 2)}
|
|
243
246
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateUnifiedScalarUI.js","sourceRoot":"","sources":["../../src/generators/generateUnifiedScalarUI.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"generateUnifiedScalarUI.js","sourceRoot":"","sources":["../../src/generators/generateUnifiedScalarUI.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAAA,+DAAmF;AACnF,gDAAuB;AACvB,gFAA4E;AAC5E,gFAA4E;AAC5E,0EAAsE;AACtE,gEAAoE;AACpE,8EAAkF;AAClF,wEAA4E;AAC5E,kFAA8E;AAC9E,0EAAsE;AACtE,wFAAoF;AACpF,8EAAsE;AACtE,4EAAqG;AACrG,8FAAwG;AACxG,6DAAyD;AACzD,iDAA6C;AAC7C,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -59,9 +59,6 @@ async function writeFileSafely({ content, options, model, operation, }) {
|
|
|
59
59
|
case 'queryBuilder':
|
|
60
60
|
filePath = path.join(outputPath, 'queryBuilder.ts');
|
|
61
61
|
break;
|
|
62
|
-
case 'operationRuntime':
|
|
63
|
-
filePath = path.join(outputPath, 'operationRuntime.ts');
|
|
64
|
-
break;
|
|
65
62
|
case 'relationModelsIndex':
|
|
66
63
|
filePath = path.join(outputPath, 'relationModels.ts');
|
|
67
64
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeFileSafely.js","sourceRoot":"","sources":["../../src/utils/writeFileSafely.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,
|
|
1
|
+
{"version":3,"file":"writeFileSafely.js","sourceRoot":"","sources":["../../src/utils/writeFileSafely.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,0CAyCC;AA5DD,uCAAwB;AACxB,2CAA4B;AAC5B,wDAA+B;AAS/B,IAAI,gBAAqD,CAAA;AAEzD,KAAK,UAAU,kBAAkB;IAC/B,IAAI,gBAAgB,KAAK,SAAS;QAAE,OAAO,gBAAgB,CAAA;IAC3D,gBAAgB,GAAG,MAAM,kBAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;IAC9D,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAEM,KAAK,UAAU,eAAe,CAAC,EACpC,OAAO,EACP,OAAO,EACP,KAAK,EACL,SAAS,GACQ;IACjB,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAA;IAClD,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAE3D,IAAI,QAAgB,CAAA;IACpB,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,cAAc;YACjB,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAA;YACnD,MAAK;QACP,KAAK,cAAc;YACjB,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAA;YACnD,MAAK;QACP,KAAK,qBAAqB;YACxB,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAA;YACrD,MAAK;QACP;YACE,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,GAAG,SAAS,CAAC,CAAA;YACzE,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,GAAG,SAAS,KAAK,CAAC,CAAA;IAChF,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IACtC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAEvE,IAAI,gBAAwB,CAAA;IAC5B,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,MAAM,kBAAkB,EAAE,CAAA;QAClD,gBAAgB,GAAG,MAAM,kBAAQ,CAAC,MAAM,CAAC,OAAO,EAAE;YAChD,GAAG,eAAe;YAClB,MAAM,EAAE,YAAY;SACrB,CAAC,CAAA;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,IAAI,CAAC,qCAAqC,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,uBAAuB,CAAC,CAAA;QACvG,gBAAgB,GAAG,OAAO,CAAA;IAC5B,CAAC;IAED,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAA;AAC9C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "prisma-generator-express",
|
|
3
3
|
"description": "Prisma generator for Express, Fastify, and Hono CRUD APIs with OpenAPI documentation",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.44.0",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"license": "MIT",
|