express-zod-api 5.8.0 → 5.9.0-beta1

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/CHANGELOG.md CHANGED
@@ -2,10 +2,43 @@
2
2
 
3
3
  ## Version 5
4
4
 
5
+ ### v5.9.0-beta1
6
+
7
+ - In this build, improvements have been made to the `EndpointsFactory`, in terms of combining the input schemas of
8
+ middlewares and the endpoint itself. A custom type has been replaced with usage of `ZodIntersection` schema with
9
+ respect to the originals.
10
+ - The generated documentation has improved in this regard:
11
+ - Previously, fields from an object union were documented in a simplified way as optional.
12
+ - Instead, it is now documented using `oneOf` OpenAPI notation.
13
+ - In addition, you can now also use the new `z.discriminatedUnion()` as the input schema on the top level.
14
+
15
+ ```typescript
16
+ // example
17
+ const endpoint = defaultEndpointsFactory.build({
18
+ method: "post",
19
+ input: z.discriminatedUnion("type", [
20
+ z.object({
21
+ type: z.literal("text"),
22
+ str: z.string()
23
+ }),
24
+ z.object({
25
+ type: z.literal("numeric"),
26
+ num: z.number()
27
+ }),
28
+ ]),
29
+ output: z.object({...}),
30
+ handler: async ({ input }) => {
31
+ // the type of the input:
32
+ // | { type: "text", str: string }
33
+ // | { type: "numeric", num: number }
34
+ }
35
+ });
36
+ ```
37
+
5
38
  ### v5.8.0
6
39
 
7
40
  - `zod` version is 3.13.4.
8
- - There is a new schema `z.nan()` as some fixes.
41
+ - There is a new schema `z.nan()` and some fixes.
9
42
 
10
43
  ### v5.7.0
11
44
 
@@ -1,18 +1,14 @@
1
1
  import { Request } from "express";
2
2
  import { z } from "zod";
3
3
  import { CommonConfig, InputSources, LoggerConfig } from "./config-type";
4
- import { MiddlewareDefinition } from "./middleware";
4
+ import { AnyMiddlewareDef } from "./middleware";
5
5
  export declare type FlatObject = Record<string, any>;
6
6
  declare type ObjectSchema = z.AnyZodObject;
7
- declare type Extractable = "shape" | "_unknownKeys" | "_catchall" | "_output" | "_input";
8
- declare type UnionSchema = z.ZodUnion<[ObjectSchema, ...ObjectSchema[]]>;
9
- declare type IntersectionSchema = z.ZodIntersection<ObjectSchema, ObjectSchema>;
10
- export declare type IOSchema = ObjectSchema | UnionSchema | IntersectionSchema;
7
+ declare type UnionSchema = z.ZodUnion<[IOSchema, ...IOSchema[]]>;
8
+ declare type IntersectionSchema = z.ZodIntersection<IOSchema, IOSchema>;
9
+ declare type DiscUnionSchema = z.ZodDiscriminatedUnion<string, z.Primitive, ObjectSchema>;
10
+ export declare type IOSchema = ObjectSchema | UnionSchema | IntersectionSchema | DiscUnionSchema;
11
11
  export declare type ArrayElement<T extends readonly unknown[]> = T extends readonly (infer K)[] ? K : never;
12
- declare type UnionResult<T extends ObjectSchema[], F extends Extractable> = ArrayElement<T>[F];
13
- declare type IntersectionResult<T extends IntersectionSchema, F extends Extractable> = T["_def"]["left"][F] & T["_def"]["right"][F];
14
- declare type IOExtract<T extends IOSchema | any, F extends Extractable> = T extends ObjectSchema ? T[F] : T extends UnionSchema ? UnionResult<T["options"], F> : T extends IntersectionSchema ? IntersectionResult<T, F> : unknown;
15
- export declare type Merge<A extends IOSchema, B extends IOSchema | any> = z.ZodObject<IOExtract<A, "shape"> & IOExtract<B, "shape">, IOExtract<A, "_unknownKeys">, IOExtract<A, "_catchall">, IOExtract<A, "_output"> & IOExtract<B, "_output">, IOExtract<A, "_input"> & IOExtract<B, "_input">>;
16
12
  export declare type OutputMarker = IOSchema & {
17
13
  _typeGuard: "OutputMarker";
18
14
  };
@@ -22,8 +18,12 @@ export declare const routePathParamsRegex: RegExp;
22
18
  export declare type ReplaceMarkerInShape<S extends z.ZodRawShape, OUT extends IOSchema> = {
23
19
  [K in keyof S]: S[K] extends OutputMarker ? OUT : S[K];
24
20
  };
25
- export declare function extractObjectSchema(subject: IOSchema): ObjectSchema;
26
- export declare function combineEndpointAndMiddlewareInputSchemas<IN extends IOSchema, MwIN>(input: IN, middlewares: MiddlewareDefinition<IOSchema, any, any>[]): Merge<IN, MwIN>;
21
+ export declare type ProbableIntersection<A extends IOSchema | null, B extends IOSchema> = A extends null ? B : A extends IOSchema ? z.ZodIntersection<A, B> : never;
22
+ /**
23
+ * @description intersects input schemas of middlewares and the endpoint
24
+ * @since 07.03.2022 former combineEndpointAndMiddlewareInputSchemas()
25
+ */
26
+ export declare const getFinalEndpointInputSchema: <MIN extends IOSchema | null, IN extends IOSchema>(middlewares: AnyMiddlewareDef[], input: IN) => ProbableIntersection<MIN, IN>;
27
27
  export declare const defaultInputSources: InputSources;
28
28
  export declare function getInitialInput(request: Request, inputAssignment: CommonConfig["inputSources"]): any;
29
29
  export declare function isLoggerConfig(logger: any): logger is LoggerConfig;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.errToObj = exports.hasUpload = exports.getRoutePathParams = exports.combinations = exports.getExamples = exports.getStatusCodeFromError = exports.getMessageFromError = exports.isValidDate = exports.isLoggerConfig = exports.getInitialInput = exports.defaultInputSources = exports.combineEndpointAndMiddlewareInputSchemas = exports.extractObjectSchema = exports.routePathParamsRegex = exports.markOutput = void 0;
3
+ exports.errToObj = exports.hasUpload = exports.getRoutePathParams = exports.combinations = exports.getExamples = exports.getStatusCodeFromError = exports.getMessageFromError = exports.isValidDate = exports.isLoggerConfig = exports.getInitialInput = exports.defaultInputSources = exports.getFinalEndpointInputSchema = exports.routePathParamsRegex = exports.markOutput = void 0;
4
4
  const http_errors_1 = require("http-errors");
5
5
  const zod_1 = require("zod");
6
6
  const config_type_1 = require("./config-type");
@@ -11,36 +11,22 @@ const markOutput = (output) => output;
11
11
  exports.markOutput = markOutput;
12
12
  /** @see https://expressjs.com/en/guide/routing.html */
13
13
  exports.routePathParamsRegex = /:([A-Za-z0-9_]+)/g;
14
- function extractObjectSchema(subject) {
15
- if (subject instanceof zod_1.z.ZodObject) {
16
- return subject;
17
- }
18
- let objectSchema;
19
- if (subject instanceof zod_1.z.ZodUnion) {
20
- objectSchema = subject.options.reduce((acc, option) => acc.partial().merge(option.partial()));
21
- }
22
- else {
23
- // intersection schema
24
- objectSchema = subject._def.left.merge(subject._def.right);
25
- }
26
- return (0, metadata_1.copyMeta)(subject, objectSchema);
27
- }
28
- exports.extractObjectSchema = extractObjectSchema;
29
- function combineEndpointAndMiddlewareInputSchemas(input, middlewares) {
30
- if (middlewares.length === 0) {
31
- return extractObjectSchema(input);
32
- }
33
- const mSchema = middlewares
34
- .map((middleware) => middleware.input)
35
- .reduce((carry, schema) => extractObjectSchema(carry).merge(extractObjectSchema(schema)));
36
- const result = extractObjectSchema(mSchema).merge(extractObjectSchema(input));
14
+ /**
15
+ * @description intersects input schemas of middlewares and the endpoint
16
+ * @since 07.03.2022 former combineEndpointAndMiddlewareInputSchemas()
17
+ */
18
+ const getFinalEndpointInputSchema = (middlewares, input) => {
19
+ const result = middlewares
20
+ .map(({ input: schema }) => schema)
21
+ .concat(input)
22
+ .reduce((acc, schema) => acc.and(schema));
37
23
  for (const middleware of middlewares) {
38
24
  (0, metadata_1.copyMeta)(middleware.input, result);
39
25
  }
40
26
  (0, metadata_1.copyMeta)(input, result);
41
27
  return result;
42
- }
43
- exports.combineEndpointAndMiddlewareInputSchemas = combineEndpointAndMiddlewareInputSchemas;
28
+ };
29
+ exports.getFinalEndpointInputSchema = getFinalEndpointInputSchema;
44
30
  function areFilesAvailable(request) {
45
31
  const contentType = request.header("content-type") || "";
46
32
  const isMultipart = contentType.slice(0, mime_1.mimeMultipart.length).toLowerCase() === mime_1.mimeMultipart;
@@ -1 +1 @@
1
- {"version":3,"file":"common-helpers.js","sourceRoot":"","sources":["../src/common-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common-helpers.js","sourceRoot":"","sources":["../src/common-helpers.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,9 @@ import { Endpoint } from "./endpoint";
2
2
  import { Method } from "./method";
3
3
  export declare class DependsOnMethod {
4
4
  readonly methods: {
5
- [K in Method]?: Endpoint<any, any, any, any, K, any, any> | Endpoint<any, any, any, any, Method, any, any>;
5
+ [K in Method]?: Endpoint<any, any, any, K, any, any> | Endpoint<any, any, any, Method, any, any>;
6
6
  };
7
7
  constructor(methods: {
8
- [K in Method]?: Endpoint<any, any, any, any, K, any, any> | Endpoint<any, any, any, any, Method, any, any>;
8
+ [K in Method]?: Endpoint<any, any, any, K, any, any> | Endpoint<any, any, any, Method, any, any>;
9
9
  });
10
10
  }
@@ -3,9 +3,9 @@ import { Logger } from "winston";
3
3
  import { z } from "zod";
4
4
  import { ApiResponse } from "./api-response";
5
5
  import { CommonConfig } from "./config-type";
6
- import { IOSchema, Merge, OutputMarker, ReplaceMarkerInShape } from "./common-helpers";
6
+ import { FlatObject, IOSchema, OutputMarker, ReplaceMarkerInShape } from "./common-helpers";
7
7
  import { Method, MethodsDefinition } from "./method";
8
- import { MiddlewareDefinition } from "./middleware";
8
+ import { AnyMiddlewareDef } from "./middleware";
9
9
  import { ResultHandlerDefinition } from "./result-handler";
10
10
  export declare type Handler<IN, OUT, OPT> = (params: {
11
11
  input: IN;
@@ -29,33 +29,32 @@ export declare abstract class AbstractEndpoint {
29
29
  abstract getPositiveMimeTypes(): string[];
30
30
  abstract getNegativeMimeTypes(): string[];
31
31
  }
32
- export declare type EndpointInput<T> = T extends Endpoint<infer IN, any, infer mIN, any, any, any, any> ? z.input<Merge<IN, mIN>> : never;
33
- export declare type EndpointOutput<T> = T extends Endpoint<any, infer OUT, any, any, any, any, any> ? z.output<OUT> : never;
32
+ export declare type EndpointInput<T> = T extends Endpoint<infer IN, any, any, any, any, any> ? z.input<IN> : never;
33
+ export declare type EndpointOutput<T> = T extends Endpoint<any, infer OUT, any, any, any, any> ? z.output<OUT> : never;
34
34
  export declare type EndpointResponse<E extends AbstractEndpoint> = z.output<ReturnType<E["getPositiveResponseSchema"]> extends z.ZodObject<z.ZodRawShape> ? z.ZodObject<ReplaceMarkerInShape<ReturnType<E["getPositiveResponseSchema"]>["_shape"], ReturnType<E["getOutputSchema"]>>> : ReturnType<E["getPositiveResponseSchema"]> extends OutputMarker ? ReturnType<E["getOutputSchema"]> : ReturnType<E["getPositiveResponseSchema"]>> | z.output<ReturnType<E["getNegativeResponseSchema"]>>;
35
- declare type EndpointProps<IN extends IOSchema, OUT extends IOSchema, MwIN, OPT, M extends Method, POS extends ApiResponse, NEG extends ApiResponse> = {
36
- middlewares: MiddlewareDefinition<any, any, any>[];
35
+ declare type EndpointProps<IN extends IOSchema, OUT extends IOSchema, OPT extends FlatObject, M extends Method, POS extends ApiResponse, NEG extends ApiResponse> = {
36
+ middlewares: AnyMiddlewareDef[];
37
37
  inputSchema: IN;
38
38
  mimeTypes: string[];
39
39
  outputSchema: OUT;
40
- handler: Handler<z.output<Merge<IN, MwIN>>, z.input<OUT>, OPT>;
40
+ handler: Handler<z.output<IN>, z.input<OUT>, OPT>;
41
41
  resultHandler: ResultHandlerDefinition<POS, NEG>;
42
42
  description?: string;
43
43
  } & MethodsDefinition<M>;
44
- /** mIN, OPT - from Middlewares */
45
- export declare class Endpoint<IN extends IOSchema, OUT extends IOSchema, MwIN, OPT, M extends Method, POS extends ApiResponse, NEG extends ApiResponse> extends AbstractEndpoint {
44
+ export declare class Endpoint<IN extends IOSchema, OUT extends IOSchema, OPT extends FlatObject, M extends Method, POS extends ApiResponse, NEG extends ApiResponse> extends AbstractEndpoint {
46
45
  #private;
47
46
  protected readonly description?: string;
48
47
  protected readonly methods: M[];
49
- protected readonly middlewares: MiddlewareDefinition<any, any, any>[];
50
- protected readonly inputSchema: Merge<IN, MwIN>;
48
+ protected readonly middlewares: AnyMiddlewareDef[];
49
+ protected readonly inputSchema: IN;
51
50
  protected readonly mimeTypes: string[];
52
51
  protected readonly outputSchema: OUT;
53
- protected readonly handler: Handler<z.output<Merge<IN, MwIN>>, z.input<OUT>, OPT>;
52
+ protected readonly handler: Handler<z.output<IN>, z.input<OUT>, OPT>;
54
53
  protected readonly resultHandler: ResultHandlerDefinition<POS, NEG>;
55
- constructor({ middlewares, inputSchema, outputSchema, handler, resultHandler, description, mimeTypes, ...rest }: EndpointProps<IN, OUT, MwIN, OPT, M, POS, NEG>);
54
+ constructor({ middlewares, inputSchema, outputSchema, handler, resultHandler, description, mimeTypes, ...rest }: EndpointProps<IN, OUT, OPT, M, POS, NEG>);
56
55
  getDescription(): string | undefined;
57
56
  getMethods(): M[];
58
- getInputSchema(): Merge<IN, MwIN>;
57
+ getInputSchema(): IN;
59
58
  getOutputSchema(): OUT;
60
59
  getPositiveResponseSchema(): POS["schema"];
61
60
  getNegativeResponseSchema(): NEG["schema"];
package/dist/endpoint.js CHANGED
@@ -14,7 +14,6 @@ const result_handler_1 = require("./result-handler");
14
14
  class AbstractEndpoint {
15
15
  }
16
16
  exports.AbstractEndpoint = AbstractEndpoint;
17
- /** mIN, OPT - from Middlewares */
18
17
  class Endpoint extends AbstractEndpoint {
19
18
  constructor({ middlewares, inputSchema, outputSchema, handler, resultHandler, description, mimeTypes, ...rest }) {
20
19
  super();
@@ -22,7 +21,7 @@ class Endpoint extends AbstractEndpoint {
22
21
  this.methods = [];
23
22
  this.middlewares = [];
24
23
  this.middlewares = middlewares;
25
- this.inputSchema = (0, common_helpers_1.combineEndpointAndMiddlewareInputSchemas)(inputSchema, middlewares);
24
+ this.inputSchema = inputSchema;
26
25
  this.mimeTypes = mimeTypes;
27
26
  this.outputSchema = outputSchema;
28
27
  this.handler = handler;
@@ -150,7 +149,8 @@ _Endpoint_instances = new WeakSet(), _Endpoint_setupCorsHeaders = function _Endp
150
149
  return { input, options, isStreamClosed };
151
150
  }, _Endpoint_parseAndRunHandler = async function _Endpoint_parseAndRunHandler({ input, options, logger, }) {
152
151
  return this.handler({
153
- input: await this.inputSchema.parseAsync(input),
152
+ // final input types transformations for handler
153
+ input: (await this.inputSchema.parseAsync(input)),
154
154
  options,
155
155
  logger,
156
156
  });
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../src/endpoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../src/endpoint.ts"],"names":[],"mappings":"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"}
@@ -2,41 +2,37 @@
2
2
  import { Request, Response } from "express";
3
3
  import { z } from "zod";
4
4
  import { ApiResponse } from "./api-response";
5
+ import { FlatObject, IOSchema, ProbableIntersection } from "./common-helpers";
5
6
  import { Endpoint, Handler } from "./endpoint";
6
- import { FlatObject, IOSchema, Merge } from "./common-helpers";
7
7
  import { Method, MethodsDefinition } from "./method";
8
- import { ExpressMiddleware, ExpressMiddlewareFeatures, MiddlewareDefinition } from "./middleware";
8
+ import { AnyMiddlewareDef, ExpressMiddleware, ExpressMiddlewareFeatures, MiddlewareDefinition } from "./middleware";
9
9
  import { ResultHandlerDefinition } from "./result-handler";
10
- declare type BuildProps<IN extends IOSchema, OUT extends IOSchema, MwIN, MwOUT, M extends Method> = {
10
+ declare type BuildProps<IN extends IOSchema, OUT extends IOSchema, MIN extends IOSchema | null, OPT extends FlatObject, M extends Method> = {
11
11
  input: IN;
12
12
  output: OUT;
13
- handler: Handler<z.output<Merge<IN, MwIN>>, z.input<OUT>, MwOUT>;
13
+ handler: Handler<z.output<ProbableIntersection<MIN, IN>>, z.input<OUT>, OPT>;
14
14
  description?: string;
15
15
  } & MethodsDefinition<M>;
16
- export declare class EndpointsFactory<MwIN, MwOUT, POS extends ApiResponse, NEG extends ApiResponse> {
16
+ export declare class EndpointsFactory<POS extends ApiResponse, NEG extends ApiResponse, IN extends IOSchema | null = null, OUT extends FlatObject = {}> {
17
17
  #private;
18
18
  protected resultHandler: ResultHandlerDefinition<POS, NEG>;
19
- protected middlewares: MiddlewareDefinition<any, any, any>[];
19
+ protected middlewares: AnyMiddlewareDef[];
20
20
  constructor(resultHandler: ResultHandlerDefinition<POS, NEG>);
21
- addMiddleware<IN extends IOSchema, OUT extends FlatObject>(definition: MiddlewareDefinition<IN, MwOUT, OUT>): EndpointsFactory<Merge<IN, MwIN>, MwOUT & OUT, POS, NEG>;
22
- use: <R extends Request<import("express-serve-static-core").ParamsDictionary, any, any, import("qs").ParsedQs, Record<string, any>>, S extends Response<any, Record<string, any>>, OUT extends FlatObject = {}>(middleware: ExpressMiddleware<R, S>, features?: ExpressMiddlewareFeatures<R, S, OUT> | undefined) => EndpointsFactory<MwIN, MwOUT & OUT, POS, NEG>;
23
- addExpressMiddleware<R extends Request, S extends Response, OUT extends FlatObject = {}>(middleware: ExpressMiddleware<R, S>, features?: ExpressMiddlewareFeatures<R, S, OUT>): EndpointsFactory<MwIN, MwOUT & OUT, POS, NEG>;
24
- addOptions<OUT extends FlatObject>(options: OUT): EndpointsFactory<MwIN, MwOUT & OUT, POS, NEG>;
25
- build<IN extends IOSchema, OUT extends IOSchema, M extends Method>({ input, output, handler, description, ...rest }: BuildProps<IN, OUT, MwIN, MwOUT, M>): Endpoint<IN, OUT, MwIN, MwOUT, M, POS, NEG>;
21
+ addMiddleware<AIN extends IOSchema, AOUT extends FlatObject>(definition: MiddlewareDefinition<AIN, OUT, AOUT>): EndpointsFactory<POS, NEG, ProbableIntersection<IN, AIN>, OUT & AOUT>;
22
+ use: <R extends Request<import("express-serve-static-core").ParamsDictionary, any, any, import("qs").ParsedQs, Record<string, any>>, S extends Response<any, Record<string, any>>, AOUT extends FlatObject = {}>(middleware: ExpressMiddleware<R, S>, features?: ExpressMiddlewareFeatures<R, S, AOUT> | undefined) => EndpointsFactory<POS, NEG, IN, OUT & AOUT>;
23
+ addExpressMiddleware<R extends Request, S extends Response, AOUT extends FlatObject = {}>(middleware: ExpressMiddleware<R, S>, features?: ExpressMiddlewareFeatures<R, S, AOUT>): EndpointsFactory<POS, NEG, IN, OUT & AOUT>;
24
+ addOptions<AOUT extends FlatObject>(options: AOUT): EndpointsFactory<POS, NEG, IN, OUT & AOUT>;
25
+ build<BIN extends IOSchema, BOUT extends IOSchema, M extends Method>({ input, handler, description, output: outputSchema, ...rest }: BuildProps<BIN, BOUT, IN, OUT, M>): Endpoint<ProbableIntersection<IN, BIN>, BOUT, OUT, M, POS, NEG>;
26
26
  }
27
- export declare const defaultEndpointsFactory: EndpointsFactory<unknown, unknown, ApiResponse<z.ZodObject<{
27
+ export declare const defaultEndpointsFactory: EndpointsFactory<ApiResponse<z.ZodObject<{
28
28
  status: z.ZodLiteral<"success">;
29
29
  data: import("./common-helpers").OutputMarker;
30
30
  }, "strip", z.ZodTypeAny, {
31
+ data?: unknown;
31
32
  status: "success";
32
- data: {
33
- [x: string]: any;
34
- };
35
33
  }, {
34
+ data?: unknown;
36
35
  status: "success";
37
- data: {
38
- [x: string]: any;
39
- };
40
36
  }> & {
41
37
  _def: z.ZodObjectDef<{
42
38
  status: z.ZodLiteral<"success">;
@@ -45,34 +41,24 @@ export declare const defaultEndpointsFactory: EndpointsFactory<unknown, unknown,
45
41
  status: z.ZodLiteral<"success">;
46
42
  data: import("./common-helpers").OutputMarker;
47
43
  }, "strip", z.ZodTypeAny, {
44
+ data?: unknown;
48
45
  status: "success";
49
- data: {
50
- [x: string]: any;
51
- };
52
46
  }, {
47
+ data?: unknown;
53
48
  status: "success";
54
- data: {
55
- [x: string]: any;
56
- };
57
49
  }>>;
58
50
  example: (example: {
51
+ data?: unknown;
59
52
  status: "success";
60
- data: {
61
- [x: string]: any;
62
- };
63
53
  }) => z.ZodObject<{
64
54
  status: z.ZodLiteral<"success">;
65
55
  data: import("./common-helpers").OutputMarker;
66
56
  }, "strip", z.ZodTypeAny, {
57
+ data?: unknown;
67
58
  status: "success";
68
- data: {
69
- [x: string]: any;
70
- };
71
59
  }, {
60
+ data?: unknown;
72
61
  status: "success";
73
- data: {
74
- [x: string]: any;
75
- };
76
62
  }> & any;
77
63
  }>, ApiResponse<z.ZodObject<{
78
64
  status: z.ZodLiteral<"error">;
@@ -148,5 +134,5 @@ export declare const defaultEndpointsFactory: EndpointsFactory<unknown, unknown,
148
134
  message: string;
149
135
  };
150
136
  }> & any;
151
- }>>;
137
+ }>, null, {}>;
152
138
  export {};
@@ -8,8 +8,8 @@ var _a, _EndpointsFactory_create;
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.defaultEndpointsFactory = exports.EndpointsFactory = void 0;
10
10
  const zod_1 = require("zod");
11
- const endpoint_1 = require("./endpoint");
12
11
  const common_helpers_1 = require("./common-helpers");
12
+ const endpoint_1 = require("./endpoint");
13
13
  const middleware_1 = require("./middleware");
14
14
  const mime_1 = require("./mime");
15
15
  const result_handler_1 = require("./result-handler");
@@ -18,7 +18,6 @@ class EndpointsFactory {
18
18
  this.resultHandler = resultHandler;
19
19
  this.middlewares = [];
20
20
  this.use = this.addExpressMiddleware;
21
- this.resultHandler = resultHandler;
22
21
  }
23
22
  addMiddleware(definition) {
24
23
  return __classPrivateFieldGet(EndpointsFactory, _a, "m", _EndpointsFactory_create).call(EndpointsFactory, this.middlewares.concat(definition), this.resultHandler);
@@ -46,14 +45,15 @@ class EndpointsFactory {
46
45
  middleware: async () => options,
47
46
  })), this.resultHandler);
48
47
  }
49
- build({ input, output, handler, description, ...rest }) {
48
+ build({ input, handler, description, output: outputSchema, ...rest }) {
49
+ const { middlewares, resultHandler } = this;
50
50
  return new endpoint_1.Endpoint({
51
51
  handler,
52
52
  description,
53
- middlewares: this.middlewares,
54
- inputSchema: input,
55
- outputSchema: output,
56
- resultHandler: this.resultHandler,
53
+ middlewares,
54
+ outputSchema,
55
+ resultHandler,
56
+ inputSchema: (0, common_helpers_1.getFinalEndpointInputSchema)(middlewares, input),
57
57
  mimeTypes: (0, common_helpers_1.hasUpload)(input) ? [mime_1.mimeMultipart] : [mime_1.mimeJson],
58
58
  ...rest,
59
59
  });
@@ -1 +1 @@
1
- {"version":3,"file":"endpoints-factory.js","sourceRoot":"","sources":["../src/endpoints-factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoints-factory.js","sourceRoot":"","sources":["../src/endpoints-factory.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ export interface MiddlewareDefinition<IN extends IOSchema, OPT, OUT extends Flat
15
15
  input: IN;
16
16
  middleware: Middleware<z.output<IN>, OPT, OUT>;
17
17
  }
18
+ export declare type AnyMiddlewareDef = MiddlewareDefinition<IOSchema, any, any>;
18
19
  export declare const createMiddleware: <IN extends IOSchema, OPT, OUT extends FlatObject>(definition: MiddlewareDefinition<IN, OPT, OUT>) => MiddlewareDefinition<IN, OPT, OUT>;
19
20
  export declare type ExpressMiddleware<R extends Request, S extends Response> = (request: R, response: S, next: (error?: any) => void) => void | Promise<void>;
20
21
  export interface ExpressMiddlewareFeatures<R extends Request, S extends Response, OUT extends FlatObject> {
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":";;;AA2BO,MAAM,gBAAgB,GAAG,CAK9B,UAA8C,EAC9C,EAAE,CAAC,UAAU,CAAC;AANH,QAAA,gBAAgB,oBAMb"}
1
+ {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":";;;AA6BO,MAAM,gBAAgB,GAAG,CAK9B,UAA8C,EAC9C,EAAE,CAAC,UAAU,CAAC;AANH,QAAA,gBAAgB,oBAMb"}
@@ -50,6 +50,12 @@ export declare const depictObjectProperties: ({ schema: { shape }, isResponse, }
50
50
  export declare const depictEffect: DepictHelper<z.ZodEffects<z.ZodTypeAny>>;
51
51
  export declare const depictIOExamples: <T extends IOSchema>(schema: T, isResponse: boolean, omitProps?: string[]) => MediaExamples;
52
52
  export declare const depictIOParamExamples: <T extends IOSchema>(schema: T, isResponse: boolean, param: string) => MediaExamples;
53
+ export declare function extractObjectSchema(subject: IOSchema): z.AnyZodObject | (z.AnyZodObject & {
54
+ _def: z.ZodObjectDef<any, any, any> & import("./metadata").MetaDef<z.AnyZodObject>;
55
+ example: (example: {
56
+ [x: string]: any;
57
+ }) => z.AnyZodObject & any;
58
+ });
53
59
  export declare const depictRequestParams: ({ path, method, endpoint, inputSources, }: ReqResDepictHelperCommonProps & {
54
60
  inputSources: InputSources[Method];
55
61
  }) => ParameterObject[];
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.depictRequest = exports.depictResponse = exports.excludeExampleFromDepiction = exports.excludeParamsFromDepiction = exports.depictSchema = exports.depictRequestParams = exports.depictIOParamExamples = exports.depictIOExamples = exports.depictEffect = exports.depictObjectProperties = exports.depictNumber = exports.depictString = exports.depictTuple = exports.depictArray = exports.depictRecord = exports.depictBigInt = exports.depictBoolean = exports.depictDateOut = exports.depictDateIn = exports.depictDate = exports.depictNull = exports.depictObject = exports.depictLiteral = exports.depictEnum = exports.depictOptionalOrNullable = exports.depictIntersection = exports.depictDiscriminatedUnion = exports.depictUnion = exports.depictFile = exports.depictUpload = exports.depictAny = exports.depictDefault = exports.reformatParamsInPath = void 0;
3
+ exports.depictRequest = exports.depictResponse = exports.excludeExampleFromDepiction = exports.excludeParamsFromDepiction = exports.depictSchema = exports.depictRequestParams = exports.extractObjectSchema = exports.depictIOParamExamples = exports.depictIOExamples = exports.depictEffect = exports.depictObjectProperties = exports.depictNumber = exports.depictString = exports.depictTuple = exports.depictArray = exports.depictRecord = exports.depictBigInt = exports.depictBoolean = exports.depictDateOut = exports.depictDateIn = exports.depictDate = exports.depictNull = exports.depictObject = exports.depictLiteral = exports.depictEnum = exports.depictOptionalOrNullable = exports.depictIntersection = exports.depictDiscriminatedUnion = exports.depictUnion = exports.depictFile = exports.depictUpload = exports.depictAny = exports.depictDefault = exports.reformatParamsInPath = void 0;
4
+ const ramda_1 = require("ramda");
4
5
  const zod_1 = require("zod");
5
6
  const common_helpers_1 = require("./common-helpers");
6
7
  const date_in_schema_1 = require("./date-in-schema");
7
8
  const errors_1 = require("./errors");
8
- const ramda_1 = require("ramda");
9
+ const metadata_1 = require("./metadata");
9
10
  const isoDateDocumentationUrl = "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString";
10
11
  /* eslint-disable @typescript-eslint/no-use-before-define */
11
12
  const reformatParamsInPath = (path) => path.replace(common_helpers_1.routePathParamsRegex, (param) => `{${param.slice(1)}}`);
@@ -359,9 +360,27 @@ const depictIOParamExamples = (schema, isResponse, param) => {
359
360
  };
360
361
  };
361
362
  exports.depictIOParamExamples = depictIOParamExamples;
363
+ function extractObjectSchema(subject) {
364
+ if (subject instanceof zod_1.z.ZodObject) {
365
+ return subject;
366
+ }
367
+ let objectSchema;
368
+ if (subject instanceof zod_1.z.ZodUnion ||
369
+ subject instanceof zod_1.z.ZodDiscriminatedUnion) {
370
+ objectSchema = Array.from(subject.options.values())
371
+ .map((option) => extractObjectSchema(option))
372
+ .reduce((acc, option) => acc.merge(option.partial()), zod_1.z.object({}));
373
+ }
374
+ else {
375
+ // intersection schema
376
+ objectSchema = extractObjectSchema(subject._def.left).merge(extractObjectSchema(subject._def.right));
377
+ }
378
+ return (0, metadata_1.copyMeta)(subject, objectSchema);
379
+ }
380
+ exports.extractObjectSchema = extractObjectSchema;
362
381
  const depictRequestParams = ({ path, method, endpoint, inputSources, }) => {
363
382
  const schema = endpoint.getInputSchema();
364
- const shape = (0, common_helpers_1.extractObjectSchema)(schema).shape;
383
+ const shape = extractObjectSchema(schema).shape;
365
384
  const pathParams = (0, common_helpers_1.getRoutePathParams)(path);
366
385
  const isQueryEnabled = inputSources.includes("query");
367
386
  const isParamsEnabled = inputSources.includes("params");
@@ -433,6 +452,9 @@ const excludeParamsFromDepiction = (depicted, pathParams) => {
433
452
  const properties = depicted.properties
434
453
  ? (0, ramda_1.omit)(pathParams, depicted.properties)
435
454
  : undefined;
455
+ const example = depicted.example
456
+ ? (0, ramda_1.omit)(pathParams, depicted.example)
457
+ : undefined;
436
458
  const required = depicted.required
437
459
  ? depicted.required.filter((name) => !pathParams.includes(name))
438
460
  : undefined;
@@ -442,12 +464,13 @@ const excludeParamsFromDepiction = (depicted, pathParams) => {
442
464
  const oneOf = depicted.oneOf
443
465
  ? depicted.oneOf.map((entry) => (0, exports.excludeParamsFromDepiction)(entry, pathParams))
444
466
  : undefined;
445
- return (0, ramda_1.omit)(Object.entries({ properties, required, allOf, oneOf })
467
+ return (0, ramda_1.omit)(Object.entries({ properties, required, example, allOf, oneOf })
446
468
  .filter(([{}, value]) => value === undefined)
447
469
  .map(([key]) => key), {
448
470
  ...depicted,
449
471
  properties,
450
472
  required,
473
+ example,
451
474
  allOf,
452
475
  oneOf,
453
476
  });
@@ -1 +1 @@
1
- {"version":3,"file":"open-api-helpers.js","sourceRoot":"","sources":["../src/open-api-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"open-api-helpers.js","sourceRoot":"","sources":["../src/open-api-helpers.ts"],"names":[],"mappings":"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"}
@@ -28,15 +28,11 @@ export declare const defaultResultHandler: ResultHandlerDefinition<ApiResponse<z
28
28
  status: z.ZodLiteral<"success">;
29
29
  data: import("./common-helpers").OutputMarker;
30
30
  }, "strip", z.ZodTypeAny, {
31
+ data?: unknown;
31
32
  status: "success";
32
- data: {
33
- [x: string]: any;
34
- };
35
33
  }, {
34
+ data?: unknown;
36
35
  status: "success";
37
- data: {
38
- [x: string]: any;
39
- };
40
36
  }> & {
41
37
  _def: z.ZodObjectDef<{
42
38
  status: z.ZodLiteral<"success">;
@@ -45,34 +41,24 @@ export declare const defaultResultHandler: ResultHandlerDefinition<ApiResponse<z
45
41
  status: z.ZodLiteral<"success">;
46
42
  data: import("./common-helpers").OutputMarker;
47
43
  }, "strip", z.ZodTypeAny, {
44
+ data?: unknown;
48
45
  status: "success";
49
- data: {
50
- [x: string]: any;
51
- };
52
46
  }, {
47
+ data?: unknown;
53
48
  status: "success";
54
- data: {
55
- [x: string]: any;
56
- };
57
49
  }>>;
58
50
  example: (example: {
51
+ data?: unknown;
59
52
  status: "success";
60
- data: {
61
- [x: string]: any;
62
- };
63
53
  }) => z.ZodObject<{
64
54
  status: z.ZodLiteral<"success">;
65
55
  data: import("./common-helpers").OutputMarker;
66
56
  }, "strip", z.ZodTypeAny, {
57
+ data?: unknown;
67
58
  status: "success";
68
- data: {
69
- [x: string]: any;
70
- };
71
59
  }, {
60
+ data?: unknown;
72
61
  status: "success";
73
- data: {
74
- [x: string]: any;
75
- };
76
62
  }> & any;
77
63
  }>, ApiResponse<z.ZodObject<{
78
64
  status: z.ZodLiteral<"error">;
@@ -7,34 +7,21 @@ import { ZodUpload } from "./upload-schema.js";
7
7
  export const markOutput = (output) => output;
8
8
  /** @see https://expressjs.com/en/guide/routing.html */
9
9
  export const routePathParamsRegex = /:([A-Za-z0-9_]+)/g;
10
- export function extractObjectSchema(subject) {
11
- if (subject instanceof z.ZodObject) {
12
- return subject;
13
- }
14
- let objectSchema;
15
- if (subject instanceof z.ZodUnion) {
16
- objectSchema = subject.options.reduce((acc, option) => acc.partial().merge(option.partial()));
17
- }
18
- else {
19
- // intersection schema
20
- objectSchema = subject._def.left.merge(subject._def.right);
21
- }
22
- return copyMeta(subject, objectSchema);
23
- }
24
- export function combineEndpointAndMiddlewareInputSchemas(input, middlewares) {
25
- if (middlewares.length === 0) {
26
- return extractObjectSchema(input);
27
- }
28
- const mSchema = middlewares
29
- .map((middleware) => middleware.input)
30
- .reduce((carry, schema) => extractObjectSchema(carry).merge(extractObjectSchema(schema)));
31
- const result = extractObjectSchema(mSchema).merge(extractObjectSchema(input));
10
+ /**
11
+ * @description intersects input schemas of middlewares and the endpoint
12
+ * @since 07.03.2022 former combineEndpointAndMiddlewareInputSchemas()
13
+ */
14
+ export const getFinalEndpointInputSchema = (middlewares, input) => {
15
+ const result = middlewares
16
+ .map(({ input: schema }) => schema)
17
+ .concat(input)
18
+ .reduce((acc, schema) => acc.and(schema));
32
19
  for (const middleware of middlewares) {
33
20
  copyMeta(middleware.input, result);
34
21
  }
35
22
  copyMeta(input, result);
36
23
  return result;
37
- }
24
+ };
38
25
  function areFilesAvailable(request) {
39
26
  const contentType = request.header("content-type") || "";
40
27
  const isMultipart = contentType.slice(0, mimeMultipart.length).toLowerCase() === mimeMultipart;
@@ -1 +1 @@
1
- {"version":3,"file":"common-helpers.js","sourceRoot":"","sources":["../src/common-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common-helpers.js","sourceRoot":"","sources":["../src/common-helpers.ts"],"names":[],"mappings":"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"}
@@ -6,11 +6,10 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
6
6
  var _Endpoint_instances, _Endpoint_setupCorsHeaders, _Endpoint_parseOutput, _Endpoint_runMiddlewares, _Endpoint_parseAndRunHandler, _Endpoint_handleResult;
7
7
  import { z } from "zod";
8
8
  import { ResultHandlerError } from "./errors.js";
9
- import { combineEndpointAndMiddlewareInputSchemas, getInitialInput, } from "./common-helpers.js";
9
+ import { getInitialInput, } from "./common-helpers.js";
10
10
  import { lastResortHandler } from "./result-handler.js";
11
11
  export class AbstractEndpoint {
12
12
  }
13
- /** mIN, OPT - from Middlewares */
14
13
  export class Endpoint extends AbstractEndpoint {
15
14
  constructor({ middlewares, inputSchema, outputSchema, handler, resultHandler, description, mimeTypes, ...rest }) {
16
15
  super();
@@ -18,7 +17,7 @@ export class Endpoint extends AbstractEndpoint {
18
17
  this.methods = [];
19
18
  this.middlewares = [];
20
19
  this.middlewares = middlewares;
21
- this.inputSchema = combineEndpointAndMiddlewareInputSchemas(inputSchema, middlewares);
20
+ this.inputSchema = inputSchema;
22
21
  this.mimeTypes = mimeTypes;
23
22
  this.outputSchema = outputSchema;
24
23
  this.handler = handler;
@@ -145,7 +144,8 @@ _Endpoint_instances = new WeakSet(), _Endpoint_setupCorsHeaders = function _Endp
145
144
  return { input, options, isStreamClosed };
146
145
  }, _Endpoint_parseAndRunHandler = async function _Endpoint_parseAndRunHandler({ input, options, logger, }) {
147
146
  return this.handler({
148
- input: await this.inputSchema.parseAsync(input),
147
+ // final input types transformations for handler
148
+ input: (await this.inputSchema.parseAsync(input)),
149
149
  options,
150
150
  logger,
151
151
  });
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../src/endpoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../src/endpoint.ts"],"names":[],"mappings":";;;;;;AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAEL,eAAe,GAIhB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,iBAAiB,EAA2B,MAAM,kBAAkB,CAAC;AAQ9E,MAAM,OAAgB,gBAAgB;CAgBrC;AA0DD,MAAM,OAAO,QAOX,SAAQ,gBAAgB;IAUxB,YAAY,EACV,WAAW,EACX,WAAW,EACX,YAAY,EACZ,OAAO,EACP,aAAa,EACb,WAAW,EACX,SAAS,EACT,GAAG,IAAI,EACkC;QACzC,KAAK,EAAE,CAAC;;QAlBS,YAAO,GAAQ,EAAE,CAAC;QAClB,gBAAW,GAAuB,EAAE,CAAC;QAkBtD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,SAAS,IAAI,IAAI,EAAE;YACrB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;SAC7B;aAAM;YACL,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAC9B;IACH,CAAC;IAEe,cAAc;QAC5B,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAEe,UAAU;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAEe,cAAc;QAC5B,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAEe,eAAe;QAC7B,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAEe,yBAAyB;QACvC,OAAO,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC;IAC1E,CAAC;IAEe,yBAAyB;QACvC,OAAO,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,CAAC,MAAM,CAAC;IACzD,CAAC;IAEe,iBAAiB;QAC/B,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAEe,oBAAoB;QAClC,OAAO,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC;IAC7E,CAAC;IAEe,oBAAoB;QAClC,OAAO,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,CAAC,SAAS,CAAC;IAC5D,CAAC;IA0He,KAAK,CAAC,OAAO,CAAC,EAC5B,OAAO,EACP,QAAQ,EACR,MAAM,EACN,MAAM,GAMP;QACC,IAAI,MAAW,CAAC;QAChB,IAAI,KAAK,GAAiB,IAAI,CAAC;QAC/B,IAAI,MAAM,CAAC,IAAI,EAAE;YACf,uBAAA,IAAI,uDAAkB,MAAtB,IAAI,EAAmB,QAAQ,CAAC,CAAC;SAClC;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE;YAChC,QAAQ,CAAC,GAAG,EAAE,CAAC;YACf,OAAO;SACR;QACD,MAAM,YAAY,GAAG,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;QACnE,IAAI;YACF,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,MAAM,uBAAA,IAAI,qDAAgB,MAApB,IAAI,EAAiB;gBACpE,KAAK,EAAE,EAAE,GAAG,YAAY,EAAE;gBAC1B,OAAO;gBACP,QAAQ;gBACR,MAAM;aACP,CAAC,CAAC;YACH,IAAI,cAAc,EAAE;gBAClB,OAAO;aACR;YACD,MAAM,GAAG,MAAM,uBAAA,IAAI,kDAAa,MAAjB,IAAI,EACjB,MAAM,uBAAA,IAAI,yDAAoB,MAAxB,IAAI,EAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAC3D,CAAC;SACH;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,YAAY,KAAK,EAAE;gBACtB,KAAK,GAAG,CAAC,CAAC;aACX;SACF;QACD,MAAM,uBAAA,IAAI,mDAAc,MAAlB,IAAI,EAAe;YACvB,YAAY;YACZ,MAAM;YACN,OAAO;YACP,QAAQ;YACR,KAAK;YACL,MAAM;SACP,CAAC,CAAC;IACL,CAAC;CACF;sGAxKmB,QAAkB;IAClC,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO;SAC/B,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;SACrC,MAAM,CAAC,SAAS,CAAC;SACjB,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,QAAQ,CAAC,GAAG,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;IACjD,QAAQ,CAAC,GAAG,CAAC,8BAA8B,EAAE,aAAa,CAAC,CAAC;IAC5D,QAAQ,CAAC,GAAG,CAAC,8BAA8B,EAAE,cAAc,CAAC,CAAC;AAC/D,CAAC,0BAED,KAAK,gCAAc,MAAW;IAC5B,IAAI;QACF,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;KACnD;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE;YAC3B,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC;gBACnB;oBACE,OAAO,EAAE,gBAAgB;oBACzB,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,QAAQ,CAAC;iBACjB;gBACD,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBAC1B,GAAG,KAAK;oBACR,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI;iBACxD,CAAC,CAAC;aACJ,CAAC,CAAC;SACJ;QACD,MAAM,CAAC,CAAC;KACT;AACH,CAAC,6BAED,KAAK,mCAAiB,EACpB,KAAK,EACL,OAAO,EACP,QAAQ,EACR,MAAM,GAMP;IACC,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,WAAW,EAAE;QAClC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,2CAA2C;QACpG,MAAM,CAAC,MAAM,CACX,OAAO,EACP,MAAM,GAAG,CAAC,UAAU,CAAC;YACnB,KAAK;YACL,OAAO;YACP,OAAO;YACP,QAAQ;YACR,MAAM;SACP,CAAC,CACH,CAAC;QACF,cAAc,GAAG,eAAe,IAAI,QAAQ,IAAI,QAAQ,CAAC,aAAa,CAAC;QACvE,IAAI,cAAc,EAAE;YAClB,MAAM,CAAC,IAAI,CACT,kBAAkB,GAAG,CAAC,UAAU,CAAC,IAAI,8CAA8C,EACnF,OAAO,CACR,CAAC;YACF,MAAM;SACP;KACF;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;AAC5C,CAAC,iCAED,KAAK,uCAAqB,EACxB,KAAK,EACL,OAAO,EACP,MAAM,GAKP;IACC,OAAO,IAAI,CAAC,OAAO,CAAC;QAClB,gDAAgD;QAChD,KAAK,EAAE,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,CAAiB;QACjE,OAAO;QACP,MAAM;KACP,CAAC,CAAC;AACL,CAAC,2BAED,KAAK,iCAAe,EAClB,KAAK,EACL,OAAO,EACP,QAAQ,EACR,MAAM,EACN,YAAY,EACZ,MAAM,GAQP;IACC,IAAI;QACF,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;YAC/B,KAAK;YACL,MAAM;YACN,OAAO;YACP,QAAQ;YACR,MAAM;YACN,KAAK,EAAE,YAAY;SACpB,CAAC,CAAC;KACJ;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,CAAC,YAAY,KAAK,EAAE;YACtB,iBAAiB,CAAC;gBAChB,MAAM;gBACN,QAAQ;gBACR,KAAK,EAAE,IAAI,kBAAkB,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC;aAChD,CAAC,CAAC;SACJ;KACF;AACH,CAAC"}
@@ -5,8 +5,8 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
5
5
  };
6
6
  var _a, _EndpointsFactory_create;
7
7
  import { z } from "zod";
8
+ import { getFinalEndpointInputSchema, hasUpload, } from "./common-helpers.js";
8
9
  import { Endpoint } from "./endpoint.js";
9
- import { hasUpload } from "./common-helpers.js";
10
10
  import { createMiddleware, } from "./middleware.js";
11
11
  import { mimeJson, mimeMultipart } from "./mime.js";
12
12
  import { defaultResultHandler, } from "./result-handler.js";
@@ -15,7 +15,6 @@ export class EndpointsFactory {
15
15
  this.resultHandler = resultHandler;
16
16
  this.middlewares = [];
17
17
  this.use = this.addExpressMiddleware;
18
- this.resultHandler = resultHandler;
19
18
  }
20
19
  addMiddleware(definition) {
21
20
  return __classPrivateFieldGet(EndpointsFactory, _a, "m", _EndpointsFactory_create).call(EndpointsFactory, this.middlewares.concat(definition), this.resultHandler);
@@ -43,14 +42,15 @@ export class EndpointsFactory {
43
42
  middleware: async () => options,
44
43
  })), this.resultHandler);
45
44
  }
46
- build({ input, output, handler, description, ...rest }) {
45
+ build({ input, handler, description, output: outputSchema, ...rest }) {
46
+ const { middlewares, resultHandler } = this;
47
47
  return new Endpoint({
48
48
  handler,
49
49
  description,
50
- middlewares: this.middlewares,
51
- inputSchema: input,
52
- outputSchema: output,
53
- resultHandler: this.resultHandler,
50
+ middlewares,
51
+ outputSchema,
52
+ resultHandler,
53
+ inputSchema: getFinalEndpointInputSchema(middlewares, input),
54
54
  mimeTypes: hasUpload(input) ? [mimeMultipart] : [mimeJson],
55
55
  ...rest,
56
56
  });
@@ -1 +1 @@
1
- {"version":3,"file":"endpoints-factory.js","sourceRoot":"","sources":["../src/endpoints-factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"endpoints-factory.js","sourceRoot":"","sources":["../src/endpoints-factory.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":"AA2BA,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAK9B,UAA8C,EAC9C,EAAE,CAAC,UAAU,CAAC"}
1
+ {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":"AA6BA,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAK9B,UAA8C,EAC9C,EAAE,CAAC,UAAU,CAAC"}
@@ -1,8 +1,9 @@
1
+ import { omit } from "ramda";
1
2
  import { z } from "zod";
2
- import { extractObjectSchema, getExamples, getRoutePathParams, routePathParamsRegex, } from "./common-helpers.js";
3
+ import { getExamples, getRoutePathParams, routePathParamsRegex, } from "./common-helpers.js";
3
4
  import { isoDateRegex } from "./date-in-schema.js";
4
5
  import { OpenAPIError } from "./errors.js";
5
- import { omit } from "ramda";
6
+ import { copyMeta } from "./metadata.js";
6
7
  const isoDateDocumentationUrl = "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString";
7
8
  /* eslint-disable @typescript-eslint/no-use-before-define */
8
9
  export const reformatParamsInPath = (path) => path.replace(routePathParamsRegex, (param) => `{${param.slice(1)}}`);
@@ -329,6 +330,23 @@ export const depictIOParamExamples = (schema, isResponse, param) => {
329
330
  : carry, {}),
330
331
  };
331
332
  };
333
+ export function extractObjectSchema(subject) {
334
+ if (subject instanceof z.ZodObject) {
335
+ return subject;
336
+ }
337
+ let objectSchema;
338
+ if (subject instanceof z.ZodUnion ||
339
+ subject instanceof z.ZodDiscriminatedUnion) {
340
+ objectSchema = Array.from(subject.options.values())
341
+ .map((option) => extractObjectSchema(option))
342
+ .reduce((acc, option) => acc.merge(option.partial()), z.object({}));
343
+ }
344
+ else {
345
+ // intersection schema
346
+ objectSchema = extractObjectSchema(subject._def.left).merge(extractObjectSchema(subject._def.right));
347
+ }
348
+ return copyMeta(subject, objectSchema);
349
+ }
332
350
  export const depictRequestParams = ({ path, method, endpoint, inputSources, }) => {
333
351
  const schema = endpoint.getInputSchema();
334
352
  const shape = extractObjectSchema(schema).shape;
@@ -401,6 +419,9 @@ export const excludeParamsFromDepiction = (depicted, pathParams) => {
401
419
  const properties = depicted.properties
402
420
  ? omit(pathParams, depicted.properties)
403
421
  : undefined;
422
+ const example = depicted.example
423
+ ? omit(pathParams, depicted.example)
424
+ : undefined;
404
425
  const required = depicted.required
405
426
  ? depicted.required.filter((name) => !pathParams.includes(name))
406
427
  : undefined;
@@ -410,12 +431,13 @@ export const excludeParamsFromDepiction = (depicted, pathParams) => {
410
431
  const oneOf = depicted.oneOf
411
432
  ? depicted.oneOf.map((entry) => excludeParamsFromDepiction(entry, pathParams))
412
433
  : undefined;
413
- return omit(Object.entries({ properties, required, allOf, oneOf })
434
+ return omit(Object.entries({ properties, required, example, allOf, oneOf })
414
435
  .filter(([{}, value]) => value === undefined)
415
436
  .map(([key]) => key), {
416
437
  ...depicted,
417
438
  properties,
418
439
  required,
440
+ example,
419
441
  allOf,
420
442
  oneOf,
421
443
  });
@@ -1 +1 @@
1
- {"version":3,"file":"open-api-helpers.js","sourceRoot":"","sources":["../src/open-api-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"open-api-helpers.js","sourceRoot":"","sources":["../src/open-api-helpers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"type":"module","version":"5.8.0"}
1
+ {"type":"module","version":"5.9.0-beta1"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "express-zod-api",
3
- "version": "5.8.0",
3
+ "version": "5.9.0-beta1",
4
4
  "description": "A Typescript library to help you get an API server up and running with I/O schema validation and custom middlewares in minutes.",
5
5
  "license": "MIT",
6
6
  "scripts": {