@zenstackhq/server 1.0.0-beta.9 → 1.0.1

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/api/base.d.ts CHANGED
@@ -1,4 +1,45 @@
1
- import { ModelMeta } from '@zenstackhq/runtime';
1
+ import { DbClientContract, ModelMeta, ZodSchemas } from '@zenstackhq/runtime';
2
+ import { LoggerConfig } from '../types';
3
+ /**
4
+ * API request context
5
+ */
6
+ export type RequestContext = {
7
+ /**
8
+ * The PrismaClient instance
9
+ */
10
+ prisma: DbClientContract;
11
+ /**
12
+ * The HTTP method
13
+ */
14
+ method: string;
15
+ /**
16
+ * The request endpoint path (excluding any prefix)
17
+ */
18
+ path: string;
19
+ /**
20
+ * The query parameters
21
+ */
22
+ query?: Record<string, string | string[]>;
23
+ /**
24
+ * The request body object
25
+ */
26
+ requestBody?: unknown;
27
+ /**
28
+ * Model metadata. By default loaded from the @see loadPath path. You can pass
29
+ * it in explicitly to override.
30
+ */
31
+ modelMeta?: ModelMeta;
32
+ /**
33
+ * Zod schemas for validating create and update payloads. By default loaded from
34
+ * the @see loadPath path. You can pass it in explicitly to override.
35
+ */
36
+ zodSchemas?: ZodSchemas;
37
+ /**
38
+ * Logging configuration. Set to `null` to disable logging.
39
+ * If unset or set to `undefined`, log will be output to console.
40
+ */
41
+ logger?: LoggerConfig;
42
+ };
2
43
  /**
3
44
  * Base class for API handlers
4
45
  */
package/api/base.js CHANGED
@@ -8,7 +8,7 @@ const runtime_1 = require("@zenstackhq/runtime");
8
8
  class APIHandlerBase {
9
9
  constructor() {
10
10
  try {
11
- this.defaultModelMeta = (0, runtime_1.getDefaultModelMeta)();
11
+ this.defaultModelMeta = (0, runtime_1.getDefaultModelMeta)(undefined);
12
12
  }
13
13
  catch (_a) {
14
14
  // noop
package/api/base.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/api/base.ts"],"names":[],"mappings":";;;AAAA,iDAAqE;AAErE;;GAEG;AACH,MAAsB,cAAc;IAIhC;QACI,IAAI;YACA,IAAI,CAAC,gBAAgB,GAAG,IAAA,6BAAmB,GAAE,CAAC;SACjD;QAAC,WAAM;YACJ,OAAO;SACV;IACL,CAAC;CACJ;AAXD,wCAWC"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/api/base.ts"],"names":[],"mappings":";;;AAAA,iDAAmG;AAmDnG;;GAEG;AACH,MAAsB,cAAc;IAIhC;QACI,IAAI;YACA,IAAI,CAAC,gBAAgB,GAAG,IAAA,6BAAmB,EAAC,SAAS,CAAC,CAAC;SAC1D;QAAC,WAAM;YACJ,OAAO;SACV;IACL,CAAC;CACJ;AAXD,wCAWC"}
@@ -1,4 +1,5 @@
1
- import { RequestContext, Response } from '../../types';
1
+ import { Response } from '../../types';
2
+ import { RequestContext } from '../base';
2
3
  /**
3
4
  * Request handler options
4
5
  */
package/api/rest/index.js CHANGED
@@ -166,7 +166,7 @@ class RequestHandler extends base_1.APIHandlerBase {
166
166
  return __awaiter(this, void 0, void 0, function* () {
167
167
  modelMeta = modelMeta !== null && modelMeta !== void 0 ? modelMeta : this.defaultModelMeta;
168
168
  if (!modelMeta) {
169
- throw new Error('Model meta is not provided or loaded from default location');
169
+ throw new Error('Model metadata is not provided or loaded from default location');
170
170
  }
171
171
  if (!this.serializers) {
172
172
  this.buildSerializers(modelMeta);
@@ -528,7 +528,9 @@ class RequestHandler extends base_1.APIHandlerBase {
528
528
  if (payloadSchema) {
529
529
  const parsed = payloadSchema.safeParse(attributes);
530
530
  if (!parsed.success) {
531
- return { error: this.makeError('invalidPayload', (0, zod_validation_error_1.fromZodError)(parsed.error).message) };
531
+ return {
532
+ error: this.makeError('invalidPayload', (0, zod_validation_error_1.fromZodError)(parsed.error).message, undefined, runtime_1.CrudFailureReason.DATA_VALIDATION_VIOLATION, parsed.error),
533
+ };
532
534
  }
533
535
  }
534
536
  }
@@ -545,7 +547,7 @@ class RequestHandler extends base_1.APIHandlerBase {
545
547
  return error;
546
548
  }
547
549
  const createPayload = { data: Object.assign({}, attributes) };
548
- // turn relashionship payload into Prisma connect objects
550
+ // turn relationship payload into Prisma connect objects
549
551
  if (relationships) {
550
552
  for (const [key, data] of Object.entries(relationships)) {
551
553
  if (!(data === null || data === void 0 ? void 0 : data.data)) {
@@ -603,7 +605,7 @@ class RequestHandler extends base_1.APIHandlerBase {
603
605
  // zod-parse payload
604
606
  const parsed = this.updateSingleRelationSchema.safeParse(requestBody);
605
607
  if (!parsed.success) {
606
- return this.makeError('invalidPayload', (0, zod_validation_error_1.fromZodError)(parsed.error).message);
608
+ return this.makeError('invalidPayload', (0, zod_validation_error_1.fromZodError)(parsed.error).message, undefined, runtime_1.CrudFailureReason.DATA_VALIDATION_VIOLATION, parsed.error);
607
609
  }
608
610
  if (parsed.data.data === null) {
609
611
  if (!relationInfo.isOptional) {
@@ -631,7 +633,7 @@ class RequestHandler extends base_1.APIHandlerBase {
631
633
  // zod-parse payload
632
634
  const parsed = this.updateCollectionRelationSchema.safeParse(requestBody);
633
635
  if (!parsed.success) {
634
- return this.makeError('invalidPayload', (0, zod_validation_error_1.fromZodError)(parsed.error).message);
636
+ return this.makeError('invalidPayload', (0, zod_validation_error_1.fromZodError)(parsed.error).message, undefined, runtime_1.CrudFailureReason.DATA_VALIDATION_VIOLATION, parsed.error);
635
637
  }
636
638
  // create -> connect, delete -> disconnect, update -> set
637
639
  const relationVerb = mode === 'create' ? 'connect' : mode === 'delete' ? 'disconnect' : 'set';
@@ -848,7 +850,6 @@ class RequestHandler extends base_1.APIHandlerBase {
848
850
  if (!serializer) {
849
851
  throw new Error(`serializer not found for model ${model}`);
850
852
  }
851
- (0, utils_1.processEntityData)(items);
852
853
  // serialize to JSON:API strcuture
853
854
  const serialized = yield serializer.serialize(items, options);
854
855
  // convert the serialization result to plain object otherwise SuperJSON won't work
@@ -1252,10 +1253,10 @@ class RequestHandler extends base_1.APIHandlerBase {
1252
1253
  }
1253
1254
  }
1254
1255
  handlePrismaError(err) {
1255
- var _a;
1256
+ var _a, _b;
1256
1257
  if ((0, runtime_1.isPrismaClientKnownRequestError)(err)) {
1257
1258
  if (err.code === runtime_1.PrismaErrorCode.CONSTRAINED_FAILED) {
1258
- return this.makeError('forbidden', undefined, 403, (_a = err.meta) === null || _a === void 0 ? void 0 : _a.reason);
1259
+ return this.makeError('forbidden', undefined, 403, (_a = err.meta) === null || _a === void 0 ? void 0 : _a.reason, (_b = err.meta) === null || _b === void 0 ? void 0 : _b.zodErrors);
1259
1260
  }
1260
1261
  else if (err.code === 'P2025' || err.code === 'P2018') {
1261
1262
  return this.makeError('notFound');
@@ -1282,19 +1283,25 @@ class RequestHandler extends base_1.APIHandlerBase {
1282
1283
  return this.makeError('unknownError', `${_err.message}\n${_err.stack}`);
1283
1284
  }
1284
1285
  }
1285
- makeError(code, detail, status, reason) {
1286
+ makeError(code, detail, status, reason, zodErrors) {
1287
+ const error = {
1288
+ status: status !== null && status !== void 0 ? status : this.errors[code].status,
1289
+ code: (0, change_case_1.paramCase)(code),
1290
+ title: this.errors[code].title,
1291
+ };
1292
+ if (detail) {
1293
+ error.detail = detail;
1294
+ }
1295
+ if (reason) {
1296
+ error.reason = reason;
1297
+ }
1298
+ if (zodErrors) {
1299
+ error.zodErrors = zodErrors;
1300
+ }
1286
1301
  return {
1287
1302
  status: status !== null && status !== void 0 ? status : this.errors[code].status,
1288
1303
  body: {
1289
- errors: [
1290
- {
1291
- status: status !== null && status !== void 0 ? status : this.errors[code].status,
1292
- code: (0, change_case_1.paramCase)(code),
1293
- title: this.errors[code].title,
1294
- detail: detail || this.errors[code].detail,
1295
- reason,
1296
- },
1297
- ],
1304
+ errors: [error],
1298
1305
  },
1299
1306
  };
1300
1307
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/rest/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/rest/index.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
- import { RequestContext, Response } from '../../types';
1
+ import { Response } from '../../types';
2
+ import { RequestContext } from '../base';
2
3
  export default function makeHandler(): ({ prisma, method, path, query, requestBody, modelMeta, zodSchemas, logger, }: RequestContext) => Promise<Response>;
package/api/rpc/index.js CHANGED
@@ -30,16 +30,21 @@ const zod_validation_error_1 = require("zod-validation-error");
30
30
  const base_1 = require("../base");
31
31
  const utils_1 = require("../utils");
32
32
  (0, utils_1.registerCustomSerializers)();
33
+ const ERROR_STATUS_MAPPING = {
34
+ [runtime_1.PrismaErrorCode.CONSTRAINED_FAILED]: 403,
35
+ [runtime_1.PrismaErrorCode.REQUIRED_CONNECTED_RECORD_NOT_FOUND]: 404,
36
+ [runtime_1.PrismaErrorCode.DEPEND_ON_RECORD_NOT_FOUND]: 404,
37
+ };
33
38
  /**
34
39
  * Prisma RPC style API request handler that mirrors the Prisma Client API
35
40
  */
36
41
  class RequestHandler extends base_1.APIHandlerBase {
37
42
  handleRequest({ prisma, method, path, query, requestBody, modelMeta, zodSchemas, logger, }) {
38
- var _a, _b;
43
+ var _a, _b, _c;
39
44
  return __awaiter(this, void 0, void 0, function* () {
40
45
  modelMeta = modelMeta !== null && modelMeta !== void 0 ? modelMeta : this.defaultModelMeta;
41
46
  if (!modelMeta) {
42
- throw new Error('Model meta is not provided or loaded from default location');
47
+ throw new Error('Model metadata is not provided or loaded from default location');
43
48
  }
44
49
  const parts = path.split('/').filter((p) => !!p);
45
50
  const op = parts.pop();
@@ -83,7 +88,7 @@ class RequestHandler extends base_1.APIHandlerBase {
83
88
  try {
84
89
  args = (query === null || query === void 0 ? void 0 : query.q) ? this.unmarshalQ(query.q, query.meta) : {};
85
90
  }
86
- catch (_c) {
91
+ catch (_d) {
87
92
  return { status: 400, body: this.makeError('invalid "q" query parameter') };
88
93
  }
89
94
  break;
@@ -111,23 +116,22 @@ class RequestHandler extends base_1.APIHandlerBase {
111
116
  try {
112
117
  args = (query === null || query === void 0 ? void 0 : query.q) ? this.unmarshalQ(query.q, query.meta) : {};
113
118
  }
114
- catch (_d) {
119
+ catch (_e) {
115
120
  return { status: 400, body: this.makeError('invalid "q" query parameter') };
116
121
  }
117
122
  break;
118
123
  default:
119
124
  return { status: 400, body: this.makeError('invalid operation: ' + op) };
120
125
  }
121
- const { error, data: parsedArgs } = yield this.processRequestPayload(args, model, dbOp, zodSchemas);
126
+ const { error, zodErrors, data: parsedArgs } = yield this.processRequestPayload(args, model, dbOp, zodSchemas);
122
127
  if (error) {
123
- return { status: 400, body: this.makeError(error) };
128
+ return { status: 400, body: this.makeError(error, runtime_1.CrudFailureReason.DATA_VALIDATION_VIOLATION, zodErrors) };
124
129
  }
125
130
  try {
126
131
  if (!prisma[model]) {
127
132
  return { status: 400, body: this.makeError(`unknown model name: ${model}`) };
128
133
  }
129
134
  const result = yield prisma[model][dbOp](parsedArgs);
130
- (0, utils_1.processEntityData)(result);
131
135
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
132
136
  let response = { data: result };
133
137
  // superjson serialize response
@@ -142,35 +146,14 @@ class RequestHandler extends base_1.APIHandlerBase {
142
146
  }
143
147
  catch (err) {
144
148
  if ((0, runtime_1.isPrismaClientKnownRequestError)(err)) {
145
- (0, utils_1.logError)(logger, err.code, err.message);
146
- if (err.code === runtime_1.PrismaErrorCode.CONSTRAINED_FAILED) {
147
- // rejected by policy
148
- return {
149
- status: 403,
150
- body: {
151
- error: {
152
- prisma: true,
153
- rejectedByPolicy: true,
154
- code: err.code,
155
- message: err.message,
156
- reason: (_a = err.meta) === null || _a === void 0 ? void 0 : _a.reason,
157
- },
158
- },
159
- };
160
- }
161
- else {
162
- return {
163
- status: 400,
164
- body: {
165
- error: {
166
- prisma: true,
167
- code: err.code,
168
- message: err.message,
169
- reason: (_b = err.meta) === null || _b === void 0 ? void 0 : _b.reason,
170
- },
171
- },
172
- };
173
- }
149
+ const status = (_a = ERROR_STATUS_MAPPING[err.code]) !== null && _a !== void 0 ? _a : 400;
150
+ const { error } = this.makeError(err.message, (_b = err.meta) === null || _b === void 0 ? void 0 : _b.reason, (_c = err.meta) === null || _c === void 0 ? void 0 : _c.zodErrors);
151
+ return {
152
+ status,
153
+ body: {
154
+ error: Object.assign(Object.assign({}, error), { prisma: true, code: err.code }),
155
+ },
156
+ };
174
157
  }
175
158
  else if ((0, runtime_1.isPrismaClientUnknownRequestError)(err) || (0, runtime_1.isPrismaClientValidationError)(err)) {
176
159
  (0, utils_1.logError)(logger, err.message);
@@ -195,8 +178,19 @@ class RequestHandler extends base_1.APIHandlerBase {
195
178
  }
196
179
  });
197
180
  }
198
- makeError(message) {
199
- return { error: { message: message } };
181
+ makeError(message, reason, zodErrors) {
182
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
183
+ const error = { message, reason };
184
+ if (reason === runtime_1.CrudFailureReason.ACCESS_POLICY_VIOLATION || reason === runtime_1.CrudFailureReason.RESULT_NOT_READABLE) {
185
+ error.rejectedByPolicy = true;
186
+ }
187
+ if (reason === runtime_1.CrudFailureReason.DATA_VALIDATION_VIOLATION) {
188
+ error.rejectedByValidation = true;
189
+ }
190
+ if (zodErrors) {
191
+ error.zodErrors = zodErrors;
192
+ }
193
+ return { error };
200
194
  }
201
195
  processRequestPayload(
202
196
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -220,14 +214,18 @@ class RequestHandler extends base_1.APIHandlerBase {
220
214
  if (zodSchema) {
221
215
  const parseResult = zodSchema.safeParse(args);
222
216
  if (parseResult.success) {
223
- return { data: args, error: undefined };
217
+ return { data: args, error: undefined, zodErrors: undefined };
224
218
  }
225
219
  else {
226
- return { data: undefined, error: (0, zod_validation_error_1.fromZodError)(parseResult.error).message };
220
+ return {
221
+ data: undefined,
222
+ error: (0, zod_validation_error_1.fromZodError)(parseResult.error).message,
223
+ zodErrors: parseResult.error,
224
+ };
227
225
  }
228
226
  }
229
227
  else {
230
- return { data: args, error: undefined };
228
+ return { data: args, error: undefined, zodErrors: undefined };
231
229
  }
232
230
  }
233
231
  unmarshalQ(value, meta) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/rpc/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/rpc/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAQ6B;AAC7B,0DAAkC;AAClC,uDAAkD;AAElD,+DAAoD;AAEpD,kCAAyD;AACzD,oCAA+D;AAE/D,IAAA,iCAAyB,GAAE,CAAC;AAE5B,MAAM,oBAAoB,GAA2B;IACjD,CAAC,yBAAe,CAAC,kBAAkB,CAAC,EAAE,GAAG;IACzC,CAAC,yBAAe,CAAC,mCAAmC,CAAC,EAAE,GAAG;IAC1D,CAAC,yBAAe,CAAC,0BAA0B,CAAC,EAAE,GAAG;CACpD,CAAC;AAEF;;GAEG;AACH,MAAM,cAAe,SAAQ,qBAAc;IACjC,aAAa,CAAC,EAChB,MAAM,EACN,MAAM,EACN,IAAI,EACJ,KAAK,EACL,WAAW,EACX,SAAS,EACT,UAAU,EACV,MAAM,GACO;;;YACb,SAAS,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,IAAI,CAAC,gBAAgB,CAAC;YAC/C,IAAI,CAAC,SAAS,EAAE;gBACZ,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;aACrF;YAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;YAE1B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE;gBACrC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC;aACxE;YAED,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;YAC9B,MAAM,IAAI,GAAG,EAAwB,CAAC;YACtC,IAAI,IAAa,CAAC;YAClB,IAAI,OAAO,GAAG,GAAG,CAAC;YAElB,QAAQ,IAAI,EAAE;gBACV,KAAK,QAAQ,CAAC;gBACd,KAAK,YAAY,CAAC;gBAClB,KAAK,QAAQ;oBACT,IAAI,MAAM,KAAK,MAAM,EAAE;wBACnB,OAAO;4BACH,MAAM,EAAE,GAAG;4BACX,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,gDAAgD,CAAC;yBACzE,CAAC;qBACL;oBACD,IAAI,CAAC,WAAW,EAAE;wBACd,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC;qBACxE;oBAED,IAAI,GAAG,WAAW,CAAC;oBAEnB,mDAAmD;oBACnD,OAAO,GAAG,GAAG,CAAC;oBACd,MAAM;gBAEV,KAAK,WAAW,CAAC;gBACjB,KAAK,YAAY,CAAC;gBAClB,KAAK,UAAU,CAAC;gBAChB,KAAK,WAAW,CAAC;gBACjB,KAAK,SAAS,CAAC;gBACf,KAAK,OAAO;oBACR,IAAI,MAAM,KAAK,KAAK,EAAE;wBAClB,OAAO;4BACH,MAAM,EAAE,GAAG;4BACX,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,+CAA+C,CAAC;yBACxE,CAAC;qBACL;oBACD,IAAI;wBACA,IAAI,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,CAAC,EAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAW,EAAE,KAAK,CAAC,IAA0B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC/F;oBAAC,WAAM;wBACJ,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,6BAA6B,CAAC,EAAE,CAAC;qBAC/E;oBACD,MAAM;gBAEV,KAAK,QAAQ,CAAC;gBACd,KAAK,YAAY;oBACb,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,OAAO,EAAE;wBACxC,OAAO;4BACH,MAAM,EAAE,GAAG;4BACX,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,0DAA0D,CAAC;yBACnF,CAAC;qBACL;oBACD,IAAI,CAAC,WAAW,EAAE;wBACd,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC;qBACxE;oBAED,IAAI,GAAG,WAAW,CAAC;oBACnB,MAAM;gBAEV,KAAK,QAAQ,CAAC;gBACd,KAAK,YAAY;oBACb,IAAI,MAAM,KAAK,QAAQ,EAAE;wBACrB,OAAO;4BACH,MAAM,EAAE,GAAG;4BACX,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,kDAAkD,CAAC;yBAC3E,CAAC;qBACL;oBACD,IAAI;wBACA,IAAI,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,CAAC,EAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAW,EAAE,KAAK,CAAC,IAA0B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC/F;oBAAC,WAAM;wBACJ,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,6BAA6B,CAAC,EAAE,CAAC;qBAC/E;oBACD,MAAM;gBAEV;oBACI,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,qBAAqB,GAAG,EAAE,CAAC,EAAE,CAAC;aAChF;YAED,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;YAC/G,IAAI,KAAK,EAAE;gBACP,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,2BAAiB,CAAC,yBAAyB,EAAE,SAAS,CAAC,EAAE,CAAC;aAC/G;YAED,IAAI;gBACA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;oBAChB,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,uBAAuB,KAAK,EAAE,CAAC,EAAE,CAAC;iBAChF;gBAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;gBAErD,8DAA8D;gBAC9D,IAAI,QAAQ,GAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;gBAErC,+BAA+B;gBAC/B,IAAI,MAAM,EAAE;oBACR,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,mBAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oBACnD,QAAQ,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;oBAC1B,IAAI,IAAI,EAAE;wBACN,QAAQ,CAAC,IAAI,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;qBAC3C;iBACJ;gBAED,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;aAC9C;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,IAAA,yCAA+B,EAAC,GAAG,CAAC,EAAE;oBACtC,MAAM,MAAM,GAAG,MAAA,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,mCAAI,GAAG,CAAC;oBAErD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,SAAS,CAC5B,GAAG,CAAC,OAAO,EACX,MAAA,GAAG,CAAC,IAAI,0CAAE,MAAgB,EAC1B,MAAA,GAAG,CAAC,IAAI,0CAAE,SAAqB,CAClC,CAAC;oBACF,OAAO;wBACH,MAAM;wBACN,IAAI,EAAE;4BACF,KAAK,kCACE,KAAK,KACR,MAAM,EAAE,IAAI,EACZ,IAAI,EAAE,GAAG,CAAC,IAAI,GACjB;yBACJ;qBACJ,CAAC;iBACL;qBAAM,IAAI,IAAA,2CAAiC,EAAC,GAAG,CAAC,IAAI,IAAA,uCAA6B,EAAC,GAAG,CAAC,EAAE;oBACrF,IAAA,gBAAQ,EAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;oBAC9B,OAAO;wBACH,MAAM,EAAE,GAAG;wBACX,IAAI,EAAE;4BACF,KAAK,EAAE;gCACH,MAAM,EAAE,IAAI;gCACZ,OAAO,EAAE,GAAG,CAAC,OAAO;6BACvB;yBACJ;qBACJ,CAAC;iBACL;qBAAM;oBACH,MAAM,IAAI,GAAG,GAAY,CAAC;oBAC1B,IAAA,gBAAQ,EAAC,MAAM,EAAE,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBACvE,OAAO;wBACH,MAAM,EAAE,GAAG;wBACX,IAAI,EAAE,IAAI,CAAC,SAAS,CAAE,GAAa,CAAC,OAAO,CAAC;qBAC/C,CAAC;iBACL;aACJ;;KACJ;IAEO,SAAS,CAAC,OAAe,EAAE,MAAe,EAAE,SAAoB;QACpE,8DAA8D;QAC9D,MAAM,KAAK,GAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QACvC,IAAI,MAAM,KAAK,2BAAiB,CAAC,uBAAuB,IAAI,MAAM,KAAK,2BAAiB,CAAC,mBAAmB,EAAE;YAC1G,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC;SACjC;QACD,IAAI,MAAM,KAAK,2BAAiB,CAAC,yBAAyB,EAAE;YACxD,KAAK,CAAC,oBAAoB,GAAG,IAAI,CAAC;SACrC;QACD,IAAI,SAAS,EAAE;YACX,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;SAC/B;QACD,OAAO,EAAE,KAAK,EAAE,CAAC;IACrB,CAAC;IAEa,qBAAqB;IAC/B,8DAA8D;IAC9D,IAAS,EACT,KAAa,EACb,IAAY,EACZ,UAAkC;;YAElC,MAAM,EAAE,IAAI,KAAc,IAAI,EAAb,IAAI,UAAK,IAAI,EAAxB,QAAiB,CAAO,CAAC;YAC/B,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,aAAa,EAAE;gBACrB,4BAA4B;gBAC5B,IAAI,GAAG,mBAAS,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;aAC1E;YACD,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,IAA0B,EAAE,IAAI,CAAC,CAAC;QACjF,CAAC;KAAA;IAEO,YAAY,CAAC,UAAsB,EAAE,KAAa,EAAE,SAA6B;;QACrF,iDAAiD;QACjD,OAAO,MAAA,MAAA,UAAU,CAAC,KAAK,0CAAG,GAAG,IAAA,iCAAc,EAAC,KAAK,CAAC,aAAa,CAAC,0CAAG,SAAS,CAAC,CAAC;IAClF,CAAC;IAEO,WAAW,CACf,UAAkC,EAClC,KAAa,EACb,SAA6B,EAC7B,IAAa;QAEb,MAAM,SAAS,GAAG,UAAU,IAAI,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QAChF,IAAI,SAAS,EAAE;YACX,MAAM,WAAW,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC9C,IAAI,WAAW,CAAC,OAAO,EAAE;gBACrB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;aACjE;iBAAM;gBACH,OAAO;oBACH,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,IAAA,mCAAY,EAAC,WAAW,CAAC,KAAK,CAAC,CAAC,OAAO;oBAC9C,SAAS,EAAE,WAAW,CAAC,KAAK;iBAC/B,CAAC;aACL;SACJ;aAAM;YACH,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;SACjE;IACL,CAAC;IAEO,UAAU,CAAC,KAAa,EAAE,IAAwB;QACtD,8DAA8D;QAC9D,IAAI,WAAgB,CAAC;QACrB,IAAI;YACA,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACnC;QAAC,WAAM;YACJ,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAClD;QAED,IAAI,IAAI,EAAE;YACN,8DAA8D;YAC9D,IAAI,UAAe,CAAC;YACpB,IAAI;gBACA,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aACjC;YAAC,WAAM;gBACJ,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;aACrD;YAED,IAAI,UAAU,CAAC,aAAa,EAAE;gBAC1B,OAAO,mBAAS,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;aACvF;SACJ;QAED,OAAO,WAAW,CAAC;IACvB,CAAC;CACJ;AAED,SAAwB,WAAW;IAC/B,MAAM,OAAO,GAAG,IAAI,cAAc,EAAE,CAAC;IACrC,OAAO,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC/C,CAAC;AAHD,8BAGC"}
package/api/utils.d.ts CHANGED
@@ -2,10 +2,6 @@ import { LoggerConfig } from '../types';
2
2
  export declare function logError(logger: LoggerConfig | undefined | null, message: string, code?: string): void;
3
3
  export declare function logWarning(logger: LoggerConfig | undefined | null, message: string): void;
4
4
  export declare function logInfo(logger: LoggerConfig | undefined | null, message: string): void;
5
- /**
6
- * Processes entity data returned from Prisma call.
7
- */
8
- export declare function processEntityData(data: any): void;
9
5
  /**
10
6
  * Registers custom superjson serializers.
11
7
  */
package/api/utils.js CHANGED
@@ -3,9 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.registerCustomSerializers = exports.processEntityData = exports.logInfo = exports.logWarning = exports.logError = void 0;
7
- /* eslint-disable @typescript-eslint/no-explicit-any */
8
- const runtime_1 = require("@zenstackhq/runtime");
6
+ exports.registerCustomSerializers = exports.logInfo = exports.logWarning = exports.logError = void 0;
9
7
  const decimal_js_1 = require("decimal.js");
10
8
  const superjson_1 = __importDefault(require("superjson"));
11
9
  function logError(logger, message, code) {
@@ -35,31 +33,6 @@ function logInfo(logger, message) {
35
33
  }
36
34
  }
37
35
  exports.logInfo = logInfo;
38
- function stripAuxFields(data) {
39
- if (Array.isArray(data)) {
40
- return data.forEach(stripAuxFields);
41
- }
42
- else if (data && typeof data === 'object') {
43
- for (const [key, value] of Object.entries(data)) {
44
- if (runtime_1.AUXILIARY_FIELDS.includes(key)) {
45
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
46
- delete data[key];
47
- }
48
- else {
49
- stripAuxFields(value);
50
- }
51
- }
52
- }
53
- }
54
- /**
55
- * Processes entity data returned from Prisma call.
56
- */
57
- function processEntityData(data) {
58
- if (data) {
59
- stripAuxFields(data);
60
- }
61
- }
62
- exports.processEntityData = processEntityData;
63
36
  /**
64
37
  * Registers custom superjson serializers.
65
38
  */
package/api/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/api/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/api/utils.ts"],"names":[],"mappings":";;;;;;AAAA,2CAAqC;AACrC,0DAAkC;AAGlC,SAAgB,QAAQ,CAAC,MAAuC,EAAE,OAAe,EAAE,IAAa;IAC5F,IAAI,MAAM,KAAK,SAAS,EAAE;QACtB,OAAO,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC;KAC1F;SAAM,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,EAAE;QACtB,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;KAC/B;AACL,CAAC;AAND,4BAMC;AAED,SAAgB,UAAU,CAAC,MAAuC,EAAE,OAAe;IAC/E,IAAI,MAAM,KAAK,SAAS,EAAE;QACtB,OAAO,CAAC,IAAI,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;KAClD;SAAM,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,EAAE;QACrB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACxB;AACL,CAAC;AAND,gCAMC;AAED,SAAgB,OAAO,CAAC,MAAuC,EAAE,OAAe;IAC5E,IAAI,MAAM,KAAK,SAAS,EAAE;QACtB,OAAO,CAAC,GAAG,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;KACjD;SAAM,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,EAAE;QACrB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACxB;AACL,CAAC;AAND,0BAMC;AAED;;GAEG;AACH,SAAgB,yBAAyB;IACrC,mBAAS,CAAC,cAAc,CACpB;QACI,YAAY,EAAE,CAAC,CAAC,EAAgB,EAAE,CAAC,oBAAO,CAAC,SAAS,CAAC,CAAC,CAAC;QACvD,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE;QAC5B,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,oBAAO,CAAC,CAAC,CAAC;KACrC,EACD,SAAS,CACZ,CAAC;IAEF,mBAAS,CAAC,cAAc,CACpB;QACI,YAAY,EAAE,CAAC,CAAC,EAAe,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QACpD,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACtC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC;KAC/C,EACD,OAAO,CACV,CAAC;AACN,CAAC;AAlBD,8DAkBC"}
@@ -13,22 +13,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  const rpc_1 = __importDefault(require("../api/rpc"));
16
+ const shared_1 = require("../shared");
16
17
  /**
17
18
  * Creates an Express middleware for handling CRUD requests.
18
19
  */
19
20
  const factory = (options) => {
20
- let zodSchemas;
21
- if (typeof options.zodSchemas === 'object') {
22
- zodSchemas = options.zodSchemas;
23
- }
24
- else if (options.zodSchemas === true) {
25
- try {
26
- zodSchemas = require('@zenstackhq/runtime/zod');
27
- }
28
- catch (_a) {
29
- throw new Error('Unable to load zod schemas from default location');
30
- }
31
- }
21
+ const { modelMeta, zodSchemas } = (0, shared_1.loadAssets)(options);
32
22
  const requestHandler = options.handler || (0, rpc_1.default)();
33
23
  if (options.useSuperJson !== undefined) {
34
24
  console.warn('The option "useSuperJson" is deprecated. The server APIs automatically use superjson for serialization.');
@@ -55,7 +45,7 @@ const factory = (options) => {
55
45
  query,
56
46
  requestBody: request.body,
57
47
  prisma,
58
- modelMeta: options.modelMeta,
48
+ modelMeta,
59
49
  zodSchemas,
60
50
  logger: options.logger,
61
51
  });
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../src/express/middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAIA,qDAAuC;AAwBvC;;GAEG;AACH,MAAM,OAAO,GAAG,CAAC,OAA0B,EAAW,EAAE;IACpD,IAAI,UAAkC,CAAC;IACvC,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE;QACxC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;KACnC;SAAM,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE;QACpC,IAAI;YACA,UAAU,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;SACnD;QAAC,WAAM;YACJ,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;SACvE;KACJ;IAED,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,IAAI,IAAA,aAAa,GAAE,CAAC;IAC1D,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;QACpC,OAAO,CAAC,IAAI,CACR,yGAAyG,CAC5G,CAAC;KACL;IAED,OAAO,CAAO,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;QACrC,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAqB,CAAC;QAChF,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;QAEjC,IAAI,YAAY,KAAK,KAAK,IAAI,CAAC,MAAM,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;SAChE;QAED,IAAI,CAAC,MAAM,EAAE;YACT,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC,CAAC;SAC9F;QAED,qEAAqE;QACrE,gEAAgE;QAChE,2EAA2E;QAC3E,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,GAAG,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;QACjF,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC;QAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAE/C,IAAI;YACA,MAAM,CAAC,GAAG,MAAM,cAAc,CAAC;gBAC3B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK;gBACL,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,MAAM;gBACN,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,UAAU;gBACV,MAAM,EAAE,OAAO,CAAC,MAAM;aACzB,CAAC,CAAC;YACH,IAAI,YAAY,KAAK,KAAK,EAAE;gBACxB,0DAA0D;gBAC1D,QAAQ,CAAC,MAAM,GAAG;oBACd,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,IAAI,EAAE,CAAC,CAAC,IAAI;iBACf,CAAC;gBACF,OAAO,IAAI,EAAE,CAAC;aACjB;YACD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SACjD;QAAC,OAAO,GAAG,EAAE;YACV,IAAI,YAAY,KAAK,KAAK,EAAE;gBACxB,MAAM,GAAG,CAAC;aACb;YACD,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,gCAAgC,GAAG,EAAE,EAAE,CAAC,CAAC;SACxF;IACL,CAAC,CAAA,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../src/express/middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAGA,qDAAuC;AACvC,sCAAuC;AAwBvC;;GAEG;AACH,MAAM,OAAO,GAAG,CAAC,OAA0B,EAAW,EAAE;IACpD,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAA,mBAAU,EAAC,OAAO,CAAC,CAAC;IAEtD,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,IAAI,IAAA,aAAa,GAAE,CAAC;IAC1D,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;QACpC,OAAO,CAAC,IAAI,CACR,yGAAyG,CAC5G,CAAC;KACL;IAED,OAAO,CAAO,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;QACrC,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAqB,CAAC;QAChF,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;QAEjC,IAAI,YAAY,KAAK,KAAK,IAAI,CAAC,MAAM,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;SAChE;QAED,IAAI,CAAC,MAAM,EAAE;YACT,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC,CAAC;SAC9F;QAED,qEAAqE;QACrE,gEAAgE;QAChE,2EAA2E;QAC3E,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,GAAG,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;QACjF,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC;QAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAE/C,IAAI;YACA,MAAM,CAAC,GAAG,MAAM,cAAc,CAAC;gBAC3B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK;gBACL,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,MAAM;gBACN,SAAS;gBACT,UAAU;gBACV,MAAM,EAAE,OAAO,CAAC,MAAM;aACzB,CAAC,CAAC;YACH,IAAI,YAAY,KAAK,KAAK,EAAE;gBACxB,0DAA0D;gBAC1D,QAAQ,CAAC,MAAM,GAAG;oBACd,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,IAAI,EAAE,CAAC,CAAC,IAAI;iBACf,CAAC;gBACF,OAAO,IAAI,EAAE,CAAC;aACjB;YACD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SACjD;QAAC,OAAO,GAAG,EAAE;YACV,IAAI,YAAY,KAAK,KAAK,EAAE;gBACxB,MAAM,GAAG,CAAC;aACb;YACD,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,gCAAgC,GAAG,EAAE,EAAE,CAAC,CAAC;SACxF;IACL,CAAC,CAAA,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,OAAO,CAAC"}
package/fastify/plugin.js CHANGED
@@ -15,6 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  const fastify_plugin_1 = __importDefault(require("fastify-plugin"));
16
16
  const rpc_1 = __importDefault(require("../api/rpc"));
17
17
  const utils_1 = require("../api/utils");
18
+ const shared_1 = require("../shared");
18
19
  /**
19
20
  * Fastify plugin for handling CRUD requests.
20
21
  */
@@ -22,17 +23,8 @@ const pluginHandler = (fastify, options, done) => {
22
23
  var _a, _b;
23
24
  const prefix = (_a = options.prefix) !== null && _a !== void 0 ? _a : '';
24
25
  (0, utils_1.logInfo)(options.logger, `ZenStackPlugin installing routes at prefix: ${prefix}`);
25
- let zodSchemas;
26
- if (typeof options.zodSchemas === 'object') {
27
- zodSchemas = options.zodSchemas;
28
- }
29
- else if (options.zodSchemas === true) {
30
- zodSchemas = require('@zenstackhq/runtime/zod');
31
- if (!zodSchemas) {
32
- throw new Error('Unable to load zod schemas from default location');
33
- }
34
- }
35
- const requestHanler = (_b = options.handler) !== null && _b !== void 0 ? _b : (0, rpc_1.default)();
26
+ const { modelMeta, zodSchemas } = (0, shared_1.loadAssets)(options);
27
+ const requestHandler = (_b = options.handler) !== null && _b !== void 0 ? _b : (0, rpc_1.default)();
36
28
  if (options.useSuperJson !== undefined) {
37
29
  console.warn('The option "useSuperJson" is deprecated. The server APIs automatically use superjson for serialization.');
38
30
  }
@@ -40,16 +32,16 @@ const pluginHandler = (fastify, options, done) => {
40
32
  const prisma = (yield options.getPrisma(request, reply));
41
33
  if (!prisma) {
42
34
  reply.status(500).send({ message: 'unable to get prisma from request context' });
43
- return;
35
+ return reply;
44
36
  }
45
37
  try {
46
- const response = yield requestHanler({
38
+ const response = yield requestHandler({
47
39
  method: request.method,
48
40
  path: request.params['*'],
49
41
  query: request.query,
50
42
  requestBody: request.body,
51
43
  prisma,
52
- modelMeta: options.modelMeta,
44
+ modelMeta,
53
45
  zodSchemas,
54
46
  logger: options.logger,
55
47
  });
@@ -58,6 +50,7 @@ const pluginHandler = (fastify, options, done) => {
58
50
  catch (err) {
59
51
  reply.status(500).send({ message: `An unhandled error occurred: ${err}` });
60
52
  }
53
+ return reply;
61
54
  }));
62
55
  done();
63
56
  };
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/fastify/plugin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAIA,oEAAgC;AAChC,qDAAuC;AACvC,wCAAuC;AAkBvC;;GAEG;AACH,MAAM,aAAa,GAAyC,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;;IACnF,MAAM,MAAM,GAAG,MAAA,OAAO,CAAC,MAAM,mCAAI,EAAE,CAAC;IACpC,IAAA,eAAO,EAAC,OAAO,CAAC,MAAM,EAAE,+CAA+C,MAAM,EAAE,CAAC,CAAC;IAEjF,IAAI,UAAkC,CAAC;IACvC,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE;QACxC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;KACnC;SAAM,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE;QACpC,UAAU,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;SACvE;KACJ;IAED,MAAM,aAAa,GAAG,MAAA,OAAO,CAAC,OAAO,mCAAI,IAAA,aAAa,GAAE,CAAC;IACzD,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;QACpC,OAAO,CAAC,IAAI,CACR,yGAAyG,CAC5G,CAAC;KACL;IAED,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,EAAE,CAAO,OAAO,EAAE,KAAK,EAAE,EAAE;QAChD,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAqB,CAAC;QAC7E,IAAI,CAAC,MAAM,EAAE;YACT,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC,CAAC;YACjF,OAAO;SACV;QAED,IAAI;YACA,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC;gBACjC,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,IAAI,EAAG,OAAO,CAAC,MAAc,CAAC,GAAG,CAAC;gBAClC,KAAK,EAAE,OAAO,CAAC,KAA0C;gBACzD,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,MAAM;gBACN,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,UAAU;gBACV,MAAM,EAAE,OAAO,CAAC,MAAM;aACzB,CAAC,CAAC;YACH,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;SACrD;QAAC,OAAO,GAAG,EAAE;YACV,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,gCAAgC,GAAG,EAAE,EAAE,CAAC,CAAC;SAC9E;IACL,CAAC,CAAA,CAAC,CAAC;IAEH,IAAI,EAAE,CAAC;AACX,CAAC,CAAC;AAEF,kBAAe,IAAA,wBAAE,EAAC,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/fastify/plugin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAGA,oEAAgC;AAChC,qDAAuC;AACvC,wCAAuC;AACvC,sCAAuC;AAkBvC;;GAEG;AACH,MAAM,aAAa,GAAyC,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;;IACnF,MAAM,MAAM,GAAG,MAAA,OAAO,CAAC,MAAM,mCAAI,EAAE,CAAC;IACpC,IAAA,eAAO,EAAC,OAAO,CAAC,MAAM,EAAE,+CAA+C,MAAM,EAAE,CAAC,CAAC;IAEjF,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAA,mBAAU,EAAC,OAAO,CAAC,CAAC;IAEtD,MAAM,cAAc,GAAG,MAAA,OAAO,CAAC,OAAO,mCAAI,IAAA,aAAa,GAAE,CAAC;IAC1D,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;QACpC,OAAO,CAAC,IAAI,CACR,yGAAyG,CAC5G,CAAC;KACL;IAED,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,EAAE,CAAO,OAAO,EAAE,KAAK,EAAE,EAAE;QAChD,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAqB,CAAC;QAC7E,IAAI,CAAC,MAAM,EAAE;YACT,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC,CAAC;YACjF,OAAO,KAAK,CAAC;SAChB;QAED,IAAI;YACA,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC;gBAClC,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,IAAI,EAAG,OAAO,CAAC,MAAc,CAAC,GAAG,CAAC;gBAClC,KAAK,EAAE,OAAO,CAAC,KAA0C;gBACzD,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,MAAM;gBACN,SAAS;gBACT,UAAU;gBACV,MAAM,EAAE,OAAO,CAAC,MAAM;aACzB,CAAC,CAAC;YACH,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;SACrD;QAAC,OAAO,GAAG,EAAE;YACV,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,gCAAgC,GAAG,EAAE,EAAE,CAAC,CAAC;SAC9E;QAED,OAAO,KAAK,CAAC;IACjB,CAAC,CAAA,CAAC,CAAC;IAEH,IAAI,EAAE,CAAC;AACX,CAAC,CAAC;AAEF,kBAAe,IAAA,wBAAE,EAAC,aAAa,CAAC,CAAC"}
@@ -15,6 +15,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  const server_1 = require("next/server");
17
17
  const rpc_1 = __importDefault(require("../api/rpc"));
18
+ const shared_1 = require("../shared");
18
19
  /**
19
20
  * Creates a Next.js 13 "app dir" API route request handler which encapsulates Prisma CRUD operations.
20
21
  *
@@ -22,16 +23,7 @@ const rpc_1 = __importDefault(require("../api/rpc"));
22
23
  * @returns An API route request handler
23
24
  */
24
25
  function factory(options) {
25
- let zodSchemas;
26
- if (typeof options.zodSchemas === 'object') {
27
- zodSchemas = options.zodSchemas;
28
- }
29
- else if (options.zodSchemas === true) {
30
- zodSchemas = require('@zenstackhq/runtime/zod');
31
- if (!zodSchemas) {
32
- throw new Error('Unable to load zod schemas from default location');
33
- }
34
- }
26
+ const { modelMeta, zodSchemas } = (0, shared_1.loadAssets)(options);
35
27
  const requestHandler = options.handler || (0, rpc_1.default)();
36
28
  if (options.useSuperJson !== undefined) {
37
29
  console.warn('The option "useSuperJson" is deprecated. The server APIs automatically use superjson for serialization.');
@@ -65,7 +57,7 @@ function factory(options) {
65
57
  query,
66
58
  requestBody,
67
59
  prisma,
68
- modelMeta: options.modelMeta,
60
+ modelMeta,
69
61
  zodSchemas,
70
62
  logger: options.logger,
71
63
  });
@@ -1 +1 @@
1
- {"version":3,"file":"app-route-handler.js","sourceRoot":"","sources":["../../src/next/app-route-handler.ts"],"names":[],"mappings":";AAAA,6DAA6D;;;;;;;;;;;;;;AAI7D,wCAAwD;AAExD,qDAAuC;AAIvC;;;;;GAKG;AACH,SAAwB,OAAO,CAC3B,OAAsC;IAEtC,IAAI,UAAkC,CAAC;IACvC,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE;QACxC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;KACnC;SAAM,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE;QACpC,UAAU,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;SACvE;KACJ;IAED,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,IAAI,IAAA,aAAa,GAAE,CAAC;IAC1D,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;QACpC,OAAO,CAAC,IAAI,CACR,yGAAyG,CAC5G,CAAC;KACL;IAED,OAAO,CAAO,GAAgB,EAAE,OAAgB,EAAE,EAAE;QAChD,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAqB,CAAC;QAClE,IAAI,CAAC,MAAM,EAAE;YACT,OAAO,qBAAY,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;SACvG;QAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAEnD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE;YACtB,OAAO,qBAAY,CAAC,IAAI,CACpB,EAAE,OAAO,EAAE,wBAAwB,EAAE,EACrC;gBACI,MAAM,EAAE,GAAG;aACd,CACJ,CAAC;SACL;QACD,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE3C,IAAI,WAAoB,CAAC;QACzB,IAAI,GAAG,CAAC,IAAI,EAAE;YACV,IAAI;gBACA,WAAW,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;aAClC;YAAC,WAAM;gBACJ,OAAO;aACV;SACJ;QAED,IAAI;YACA,MAAM,CAAC,GAAG,MAAM,cAAc,CAAC;gBAC3B,MAAM,EAAE,GAAG,CAAC,MAAO;gBACnB,IAAI;gBACJ,KAAK;gBACL,WAAW;gBACX,MAAM;gBACN,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,UAAU;gBACV,MAAM,EAAE,OAAO,CAAC,MAAM;aACzB,CAAC,CAAC;YACH,OAAO,qBAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SAC1D;QAAC,OAAO,GAAG,EAAE;YACV,OAAO,qBAAY,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,gCAAgC,GAAG,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;SACjG;IACL,CAAC,CAAA,CAAC;AACN,CAAC;AAhED,0BAgEC"}
1
+ {"version":3,"file":"app-route-handler.js","sourceRoot":"","sources":["../../src/next/app-route-handler.ts"],"names":[],"mappings":";AAAA,6DAA6D;;;;;;;;;;;;;;AAG7D,wCAAwD;AAExD,qDAAuC;AACvC,sCAAuC;AAIvC;;;;;GAKG;AACH,SAAwB,OAAO,CAC3B,OAAsC;IAEtC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAA,mBAAU,EAAC,OAAO,CAAC,CAAC;IAEtD,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,IAAI,IAAA,aAAa,GAAE,CAAC;IAC1D,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;QACpC,OAAO,CAAC,IAAI,CACR,yGAAyG,CAC5G,CAAC;KACL;IAED,OAAO,CAAO,GAAgB,EAAE,OAAgB,EAAE,EAAE;QAChD,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAqB,CAAC;QAClE,IAAI,CAAC,MAAM,EAAE;YACT,OAAO,qBAAY,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;SACvG;QAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAEnD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE;YACtB,OAAO,qBAAY,CAAC,IAAI,CACpB,EAAE,OAAO,EAAE,wBAAwB,EAAE,EACrC;gBACI,MAAM,EAAE,GAAG;aACd,CACJ,CAAC;SACL;QACD,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE3C,IAAI,WAAoB,CAAC;QACzB,IAAI,GAAG,CAAC,IAAI,EAAE;YACV,IAAI;gBACA,WAAW,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;aAClC;YAAC,WAAM;gBACJ,OAAO;aACV;SACJ;QAED,IAAI;YACA,MAAM,CAAC,GAAG,MAAM,cAAc,CAAC;gBAC3B,MAAM,EAAE,GAAG,CAAC,MAAO;gBACnB,IAAI;gBACJ,KAAK;gBACL,WAAW;gBACX,MAAM;gBACN,SAAS;gBACT,UAAU;gBACV,MAAM,EAAE,OAAO,CAAC,MAAM;aACzB,CAAC,CAAC;YACH,OAAO,qBAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SAC1D;QAAC,OAAO,GAAG,EAAE;YACV,OAAO,qBAAY,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,gCAAgC,GAAG,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;SACjG;IACL,CAAC,CAAA,CAAC;AACN,CAAC;AAxDD,0BAwDC"}
@@ -14,6 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
14
14
  };
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  const rpc_1 = __importDefault(require("../api/rpc"));
17
+ const shared_1 = require("../shared");
17
18
  /**
18
19
  * Creates a Next.js API endpoint (traditional "pages" route) request handler which encapsulates Prisma CRUD operations.
19
20
  *
@@ -21,16 +22,7 @@ const rpc_1 = __importDefault(require("../api/rpc"));
21
22
  * @returns An API endpoint request handler
22
23
  */
23
24
  function factory(options) {
24
- let zodSchemas;
25
- if (typeof options.zodSchemas === 'object') {
26
- zodSchemas = options.zodSchemas;
27
- }
28
- else if (options.zodSchemas === true) {
29
- zodSchemas = require('@zenstackhq/runtime/zod');
30
- if (!zodSchemas) {
31
- throw new Error('Unable to load zod schemas from default location');
32
- }
33
- }
25
+ const { modelMeta, zodSchemas } = (0, shared_1.loadAssets)(options);
34
26
  const requestHandler = options.handler || (0, rpc_1.default)();
35
27
  if (options.useSuperJson !== undefined) {
36
28
  console.warn('The option "useSuperJson" is deprecated. The server APIs automatically use superjson for serialization.');
@@ -53,7 +45,7 @@ function factory(options) {
53
45
  query: req.query,
54
46
  requestBody: req.body,
55
47
  prisma,
56
- modelMeta: options.modelMeta,
48
+ modelMeta,
57
49
  zodSchemas,
58
50
  logger: options.logger,
59
51
  });
@@ -1 +1 @@
1
- {"version":3,"file":"pages-route-handler.js","sourceRoot":"","sources":["../../src/next/pages-route-handler.ts"],"names":[],"mappings":";AAAA,6DAA6D;;;;;;;;;;;;;;AAM7D,qDAAuC;AAEvC;;;;;GAKG;AACH,SAAwB,OAAO,CAC3B,OAAwC;IAExC,IAAI,UAAkC,CAAC;IACvC,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE;QACxC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;KACnC;SAAM,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE;QACpC,UAAU,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;SACvE;KACJ;IAED,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,IAAI,IAAA,aAAa,GAAE,CAAC;IAC1D,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;QACpC,OAAO,CAAC,IAAI,CACR,yGAAyG,CAC5G,CAAC;KACL;IAED,OAAO,CAAO,GAAmB,EAAE,GAAoB,EAAE,EAAE;QACvD,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAqB,CAAC;QACvE,IAAI,CAAC,MAAM,EAAE;YACT,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC,CAAC;YAC/E,OAAO;SACV;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;YACjB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC;YAC5D,OAAO;SACV;QACD,MAAM,IAAI,GAAI,GAAG,CAAC,KAAK,CAAC,IAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEpD,IAAI;YACA,MAAM,CAAC,GAAG,MAAM,cAAc,CAAC;gBAC3B,MAAM,EAAE,GAAG,CAAC,MAAO;gBACnB,IAAI;gBACJ,KAAK,EAAE,GAAG,CAAC,KAA0C;gBACrD,WAAW,EAAE,GAAG,CAAC,IAAI;gBACrB,MAAM;gBACN,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,UAAU;gBACV,MAAM,EAAE,OAAO,CAAC,MAAM;aACzB,CAAC,CAAC;YACH,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SACrC;QAAC,OAAO,GAAG,EAAE;YACV,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,gCAAgC,GAAG,EAAE,EAAE,CAAC,CAAC;SAC5E;IACL,CAAC,CAAA,CAAC;AACN,CAAC;AAjDD,0BAiDC"}
1
+ {"version":3,"file":"pages-route-handler.js","sourceRoot":"","sources":["../../src/next/pages-route-handler.ts"],"names":[],"mappings":";AAAA,6DAA6D;;;;;;;;;;;;;;AAK7D,qDAAuC;AACvC,sCAAuC;AAEvC;;;;;GAKG;AACH,SAAwB,OAAO,CAC3B,OAAwC;IAExC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAA,mBAAU,EAAC,OAAO,CAAC,CAAC;IAEtD,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,IAAI,IAAA,aAAa,GAAE,CAAC;IAC1D,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;QACpC,OAAO,CAAC,IAAI,CACR,yGAAyG,CAC5G,CAAC;KACL;IAED,OAAO,CAAO,GAAmB,EAAE,GAAoB,EAAE,EAAE;QACvD,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAqB,CAAC;QACvE,IAAI,CAAC,MAAM,EAAE;YACT,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC,CAAC;YAC/E,OAAO;SACV;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;YACjB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC;YAC5D,OAAO;SACV;QACD,MAAM,IAAI,GAAI,GAAG,CAAC,KAAK,CAAC,IAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEpD,IAAI;YACA,MAAM,CAAC,GAAG,MAAM,cAAc,CAAC;gBAC3B,MAAM,EAAE,GAAG,CAAC,MAAO;gBACnB,IAAI;gBACJ,KAAK,EAAE,GAAG,CAAC,KAA0C;gBACrD,WAAW,EAAE,GAAG,CAAC,IAAI;gBACrB,MAAM;gBACN,SAAS;gBACT,UAAU;gBACV,MAAM,EAAE,OAAO,CAAC,MAAM;aACzB,CAAC,CAAC;YACH,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SACrC;QAAC,OAAO,GAAG,EAAE;YACV,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,gCAAgC,GAAG,EAAE,EAAE,CAAC,CAAC;SAC5E;IACL,CAAC,CAAA,CAAC;AACN,CAAC;AAzCD,0BAyCC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zenstackhq/server",
3
- "version": "1.0.0-beta.9",
3
+ "version": "1.0.1",
4
4
  "displayName": "ZenStack Server-side Adapters",
5
5
  "description": "ZenStack server-side adapters",
6
6
  "homepage": "https://zenstack.dev",
@@ -9,7 +9,11 @@
9
9
  "linkDirectory": true
10
10
  },
11
11
  "keywords": [
12
- "fastify"
12
+ "fastify",
13
+ "express",
14
+ "nextjs",
15
+ "sveltekit",
16
+ "nuxtjs"
13
17
  ],
14
18
  "author": "",
15
19
  "license": "MIT",
@@ -23,14 +27,15 @@
23
27
  "url-pattern": "^1.0.3",
24
28
  "zod": "3.21.1",
25
29
  "zod-validation-error": "^0.2.1",
26
- "@zenstackhq/openapi": "1.0.0-beta.9",
27
- "@zenstackhq/runtime": "1.0.0-beta.9"
30
+ "@zenstackhq/runtime": "1.0.1",
31
+ "@zenstackhq/openapi": "1.0.1"
28
32
  },
29
33
  "devDependencies": {
30
34
  "@sveltejs/kit": "1.21.0",
31
35
  "@types/body-parser": "^1.19.2",
32
36
  "@types/express": "^4.17.17",
33
37
  "@types/jest": "^29.5.0",
38
+ "@types/node": "^18.0.0",
34
39
  "@types/supertest": "^2.0.12",
35
40
  "body-parser": "^1.20.2",
36
41
  "copyfiles": "^2.4.1",
@@ -45,7 +50,19 @@
45
50
  "supertest": "^6.3.3",
46
51
  "ts-jest": "^29.0.5",
47
52
  "typescript": "^4.9.4",
48
- "@zenstackhq/testtools": "1.0.0-beta.9"
53
+ "@zenstackhq/testtools": "1.0.1"
54
+ },
55
+ "exports": {
56
+ "./package.json": "./package.json",
57
+ "./api/rest": "./api/rest/index.js",
58
+ "./api/rpc": "./api/rpc/index.js",
59
+ "./express": "./express/index.js",
60
+ "./fastify": "./fastify/index.js",
61
+ "./next/app-route-handler": "./next/app-route-handler.js",
62
+ "./next": "./next/index.js",
63
+ "./next/pages-route-handler": "./next/pages-route-handler.js",
64
+ "./sveltekit": "./sveltekit/index.js",
65
+ "./types": "./types.js"
49
66
  },
50
67
  "scripts": {
51
68
  "clean": "rimraf dist",
package/shared.d.ts ADDED
@@ -0,0 +1,6 @@
1
+ import { ZodSchemas } from '@zenstackhq/runtime';
2
+ import { AdapterBaseOptions } from './types';
3
+ export declare function loadAssets(options: AdapterBaseOptions): {
4
+ modelMeta: import("@zenstackhq/runtime").ModelMeta;
5
+ zodSchemas: ZodSchemas | undefined;
6
+ };
package/shared.js ADDED
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.loadAssets = void 0;
4
+ const runtime_1 = require("@zenstackhq/runtime");
5
+ function loadAssets(options) {
6
+ var _a;
7
+ // model metadata
8
+ const modelMeta = (_a = options.modelMeta) !== null && _a !== void 0 ? _a : (0, runtime_1.getDefaultModelMeta)(options.loadPath);
9
+ // zod schemas
10
+ let zodSchemas;
11
+ if (typeof options.zodSchemas === 'object') {
12
+ zodSchemas = options.zodSchemas;
13
+ }
14
+ else if (options.zodSchemas === true) {
15
+ zodSchemas = (0, runtime_1.getDefaultZodSchemas)(options.loadPath);
16
+ if (!zodSchemas) {
17
+ throw new Error('Unable to load zod schemas from default location');
18
+ }
19
+ }
20
+ return { modelMeta, zodSchemas };
21
+ }
22
+ exports.loadAssets = loadAssets;
23
+ //# sourceMappingURL=shared.js.map
package/shared.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../src/shared.ts"],"names":[],"mappings":";;;AAAA,iDAA4F;AAG5F,SAAgB,UAAU,CAAC,OAA2B;;IAClD,iBAAiB;IACjB,MAAM,SAAS,GAAG,MAAA,OAAO,CAAC,SAAS,mCAAI,IAAA,6BAAmB,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE7E,cAAc;IACd,IAAI,UAAkC,CAAC;IACvC,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE;QACxC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;KACnC;SAAM,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE;QACpC,UAAU,GAAG,IAAA,8BAAoB,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpD,IAAI,CAAC,UAAU,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;SACvE;KACJ;IAED,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;AACrC,CAAC;AAhBD,gCAgBC"}
@@ -14,23 +14,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  const rpc_1 = __importDefault(require("../api/rpc"));
16
16
  const utils_1 = require("../api/utils");
17
+ const shared_1 = require("../shared");
17
18
  /**
18
19
  * SvelteKit server hooks handler for handling CRUD requests.
19
20
  */
20
21
  function createHandler(options) {
21
22
  var _a;
22
23
  (0, utils_1.logInfo)(options.logger, `ZenStackHandler installing routes at prefix: ${options.prefix}`);
23
- let zodSchemas;
24
- if (typeof options.zodSchemas === 'object') {
25
- zodSchemas = options.zodSchemas;
26
- }
27
- else if (options.zodSchemas === true) {
28
- zodSchemas = require('@zenstackhq/runtime/zod');
29
- if (!zodSchemas) {
30
- throw new Error('Unable to load zod schemas from default location');
31
- }
32
- }
33
- const requestHanler = (_a = options.handler) !== null && _a !== void 0 ? _a : (0, rpc_1.default)();
24
+ const { modelMeta, zodSchemas } = (0, shared_1.loadAssets)(options);
25
+ const requestHandler = (_a = options.handler) !== null && _a !== void 0 ? _a : (0, rpc_1.default)();
34
26
  if (options.useSuperJson !== undefined) {
35
27
  console.warn('The option "useSuperJson" is deprecated. The server APIs automatically use superjson for serialization.');
36
28
  }
@@ -55,14 +47,14 @@ function createHandler(options) {
55
47
  }
56
48
  const path = event.url.pathname.substring(options.prefix.length);
57
49
  try {
58
- const r = yield requestHanler({
50
+ const r = yield requestHandler({
59
51
  method: event.request.method,
60
52
  path,
61
53
  query,
62
54
  requestBody,
63
55
  prisma,
56
+ modelMeta,
64
57
  zodSchemas,
65
- modelMeta: options.modelMeta,
66
58
  });
67
59
  return new Response(JSON.stringify(r.body), {
68
60
  status: r.status,
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../src/sveltekit/handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../src/sveltekit/handler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,qDAAuC;AACvC,wCAAuC;AACvC,sCAAuC;AAkBvC;;GAEG;AACH,SAAwB,aAAa,CAAC,OAAuB;;IACzD,IAAA,eAAO,EAAC,OAAO,CAAC,MAAM,EAAE,gDAAgD,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAE1F,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,IAAA,mBAAU,EAAC,OAAO,CAAC,CAAC;IAEtD,MAAM,cAAc,GAAG,MAAA,OAAO,CAAC,OAAO,mCAAI,IAAA,aAAa,GAAE,CAAC;IAC1D,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE;QACpC,OAAO,CAAC,IAAI,CACR,yGAAyG,CAC5G,CAAC;KACL;IAED,OAAO,CAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;QAChC,IAAI,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YAC/C,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAqB,CAAC;YACpE,IAAI,CAAC,MAAM,EAAE;gBACT,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC,EAAE;oBAC1F,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE;wBACL,cAAc,EAAE,kBAAkB;qBACrC;iBACJ,CAAC,CAAC;aACN;YAED,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACzD,IAAI,WAAoB,CAAC;YACzB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE;gBACpB,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBACxC,IAAI,IAAI,EAAE;oBACN,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;iBAClC;aACJ;YAED,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAEjE,IAAI;gBACA,MAAM,CAAC,GAAG,MAAM,cAAc,CAAC;oBAC3B,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM;oBAC5B,IAAI;oBACJ,KAAK;oBACL,WAAW;oBACX,MAAM;oBACN,SAAS;oBACT,UAAU;iBACb,CAAC,CAAC;gBAEH,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;oBACxC,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,OAAO,EAAE;wBACL,cAAc,EAAE,kBAAkB;qBACrC;iBACJ,CAAC,CAAC;aACN;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,gCAAgC,GAAG,EAAE,EAAE,CAAC,EAAE;oBACpF,MAAM,EAAE,GAAG;oBACX,OAAO,EAAE;wBACL,cAAc,EAAE,kBAAkB;qBACrC;iBACJ,CAAC,CAAC;aACN;SACJ;QAED,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC,CAAA,CAAC;AACN,CAAC;AAhED,gCAgEC"}
package/types.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { ModelMeta, ZodSchemas } from '@zenstackhq/runtime';
2
- import { DbClientContract } from '@zenstackhq/runtime';
2
+ import { RequestContext } from './api/base';
3
3
  type LoggerMethod = (message: string, code?: string) => void;
4
4
  /**
5
5
  * Logger config.
@@ -10,49 +10,6 @@ export type LoggerConfig = {
10
10
  warn?: LoggerMethod;
11
11
  error?: LoggerMethod;
12
12
  };
13
- /**
14
- * API request context
15
- */
16
- export type RequestContext = {
17
- /**
18
- * The PrismaClient instance
19
- */
20
- prisma: DbClientContract;
21
- /**
22
- * The HTTP method
23
- */
24
- method: string;
25
- /**
26
- * The request endpoint path (excluding any prefix)
27
- */
28
- path: string;
29
- /**
30
- * The query parameters
31
- */
32
- query?: Record<string, string | string[]>;
33
- /**
34
- * The request body object
35
- */
36
- requestBody?: unknown;
37
- /**
38
- * Model metadata. By default loaded from the standard output location
39
- * of the `@zenstackhq/model-meta` plugin. You can pass it in explicitly
40
- * if you configured the plugin to output to a different location.
41
- */
42
- modelMeta?: ModelMeta;
43
- /**
44
- * Zod schemas for validating create and update payloads. By default
45
- * loaded from the standard output location of the `@zenstackhq/zod`
46
- * plugin. You can pass it in explicitly if you configured the plugin
47
- * to output to a different location.
48
- */
49
- zodSchemas?: ZodSchemas;
50
- /**
51
- * Logging configuration. Set to `null` to disable logging.
52
- * If unset or set to `undefined`, log will be output to console.
53
- */
54
- logger?: LoggerConfig;
55
- };
56
13
  /**
57
14
  * API response
58
15
  */
@@ -83,6 +40,10 @@ export interface AdapterBaseOptions {
83
40
  * (need to enable `@core/zod` plugin in schema.zmodel) or omit to disable input validation.
84
41
  */
85
42
  zodSchemas?: ZodSchemas | boolean;
43
+ /**
44
+ * Path to load model metadata and zod schemas from. Defaults to `node_modules/.zenstack`.
45
+ */
46
+ loadPath?: string;
86
47
  /**
87
48
  * Api request handler function. Can be created using `@zenstackhq/server/api/rest` or `@zenstackhq/server/api/rpc` factory functions.
88
49
  * Defaults to RPC-style API handler created with `/api/rpc`.
@@ -90,6 +51,8 @@ export interface AdapterBaseOptions {
90
51
  handler?: HandleRequestFn;
91
52
  /**
92
53
  * Whether to use superjson for serialization/deserialization. Defaults to `false`.
54
+ *
55
+ * @deprecated Not needed anymore and will be removed in a future release.
93
56
  */
94
57
  useSuperJson?: boolean;
95
58
  }