@fishka/express 0.9.11 → 0.9.12

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.
@@ -1,12 +1,12 @@
1
1
  import { DeleteEndpoint, GetEndpoint, PatchEndpoint, PostEndpoint, PutEndpoint, RequestContext, ResponseOrValue } from './router';
2
- import { ExpressApplication } from './utils/express.utils';
2
+ import { ExpressRouter } from './utils/express.utils';
3
3
  /**
4
4
  * Helper utility for organizing and mounting routes.
5
5
  * Provides a fluent interface for registering multiple handlers.
6
6
  */
7
7
  export declare class RouteTable {
8
8
  private readonly app;
9
- constructor(app: ExpressApplication);
9
+ constructor(app: ExpressRouter);
10
10
  get<T>(path: string, endpoint: GetEndpoint<T> | GetEndpoint<T[]>): this;
11
11
  get<T>(path: string, run: (ctx: RequestContext) => Promise<ResponseOrValue<T>>): this;
12
12
  post<Body, Result>(path: string, endpoint: PostEndpoint<Body, Result>): this;
@@ -20,4 +20,4 @@ export declare class RouteTable {
20
20
  * @param app Express application instance
21
21
  * @returns RouteTable instance with fluent API
22
22
  */
23
- export declare function createRouteTable(app: ExpressApplication): RouteTable;
23
+ export declare function createRouteTable(app: ExpressRouter): RouteTable;
@@ -1 +1 @@
1
- {"version":3,"file":"route-table.js","sourceRoot":"","sources":["../../src/route-table.ts"],"names":[],"mappings":";;;AA+DA,4CAEC;AAjED,qCAakB;AAGlB;;;GAGG;AACH,MAAa,UAAU;IACrB,YAA6B,GAAuB;QAAvB,QAAG,GAAH,GAAG,CAAoB;IAAG,CAAC;IAIxD,GAAG,CACD,IAAY,EACZ,aAAyG;QAEzG,MAAM,QAAQ,GAAG,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAC9F,IAAA,iBAAQ,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAA0B,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAe,IAAY,EAAE,QAAoC;QACnE,IAAA,kBAAS,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAe,IAAY,EAAE,QAAqC;QACrE,IAAA,mBAAU,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAe,IAAY,EAAE,QAAmC;QACjE,IAAA,iBAAQ,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAID,MAAM,CAAC,IAAY,EAAE,aAAwE;QAC3F,MAAM,QAAQ,GAAG,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAC9F,IAAA,oBAAW,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AApCD,gCAoCC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,GAAuB;IACtD,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"route-table.js","sourceRoot":"","sources":["../../src/route-table.ts"],"names":[],"mappings":";;;AA+DA,4CAEC;AAjED,qCAakB;AAGlB;;;GAGG;AACH,MAAa,UAAU;IACrB,YAA6B,GAAkB;QAAlB,QAAG,GAAH,GAAG,CAAe;IAAG,CAAC;IAInD,GAAG,CACD,IAAY,EACZ,aAAyG;QAEzG,MAAM,QAAQ,GAAG,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAC9F,IAAA,iBAAQ,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAA0B,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAe,IAAY,EAAE,QAAoC;QACnE,IAAA,kBAAS,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAe,IAAY,EAAE,QAAqC;QACrE,IAAA,mBAAU,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAe,IAAY,EAAE,QAAmC;QACjE,IAAA,iBAAQ,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAID,MAAM,CAAC,IAAY,EAAE,aAAwE;QAC3F,MAAM,QAAQ,GAAG,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAC9F,IAAA,oBAAW,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AApCD,gCAoCC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,GAAkB;IACjD,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import { Assertion, ObjectAssertion } from '@fishka/assertions';
2
2
  import { ApiResponse, UrlTokensValidator } from './api.types';
3
3
  import { AuthUser } from './auth/auth.types';
4
- import { ExpressApplication, ExpressRequest, ExpressResponse } from './utils/express.utils';
5
- /** Express API allows handlers to return response in the raw form. */
4
+ import { ExpressRequest, ExpressResponse, ExpressRouter } from './utils/express.utils';
5
+ /** Express API allows handlers to return a response in the raw form. */
6
6
  export type ResponseOrValue<ResponseEntity> = ApiResponse<ResponseEntity> | ResponseEntity;
7
7
  /**
8
8
  * Generic middleware hook for endpoint execution.
@@ -27,9 +27,7 @@ export interface RequestContext<Body = void> {
27
27
  get(key: string): string;
28
28
  tryGet(key: string): string | undefined;
29
29
  };
30
- /**
31
- * Query parameter access.
32
- */
30
+ /** Query parameter access. */
33
31
  query: {
34
32
  get(key: string): string | undefined;
35
33
  };
@@ -84,23 +82,15 @@ export type RouteRegistrationInfo = ({
84
82
  }) & {
85
83
  path: string;
86
84
  };
87
- /**
88
- * Registers a GET route.
89
- */
90
- export declare const mountGet: (app: ExpressApplication, path: string, endpoint: GetEndpoint | GetListEndpoint) => void;
91
- /**
92
- * Registers a POST route.
93
- */
94
- export declare const mountPost: <Body, Result>(app: ExpressApplication, path: string, endpoint: PostEndpoint<Body, Result>) => void;
95
- /**
96
- * Registers a PATCH route.
97
- */
98
- export declare const mountPatch: <Body, Result>(app: ExpressApplication, path: string, endpoint: PatchEndpoint<Body, Result>) => void;
99
- /**
100
- * Registers a PUT route.
101
- */
102
- export declare const mountPut: <Body, Result>(app: ExpressApplication, path: string, endpoint: PutEndpoint<Body, Result>) => void;
85
+ /** Registers a GET route. */
86
+ export declare const mountGet: (app: ExpressRouter, path: string, endpoint: GetEndpoint | GetListEndpoint) => void;
87
+ /** Registers a POST route. */
88
+ export declare const mountPost: <Body, Result>(app: ExpressRouter, path: string, endpoint: PostEndpoint<Body, Result>) => void;
89
+ /** Registers a PATCH route. */
90
+ export declare const mountPatch: <Body, Result>(app: ExpressRouter, path: string, endpoint: PatchEndpoint<Body, Result>) => void;
91
+ /** Registers a PUT route. */
92
+ export declare const mountPut: <Body, Result>(app: ExpressRouter, path: string, endpoint: PutEndpoint<Body, Result>) => void;
103
93
  /** Registers a DELETE route. */
104
- export declare const mountDelete: (app: ExpressApplication, path: string, endpoint: DeleteEndpoint) => void;
94
+ export declare const mountDelete: (app: ExpressRouter, path: string, endpoint: DeleteEndpoint) => void;
105
95
  /** Mounts a route with the given method, endpoint, and path. */
106
- export declare function mount(app: ExpressApplication, { method, route, path }: RouteRegistrationInfo): void;
96
+ export declare function mount(app: ExpressRouter, { method, route, path }: RouteRegistrationInfo): void;
@@ -45,24 +45,16 @@ const conversion_utils_1 = require("./utils/conversion.utils");
45
45
  // ============================================================================
46
46
  // Internal implementation details
47
47
  // ============================================================================
48
- /**
49
- * Registers a GET route.
50
- */
48
+ /** Registers a GET route. */
51
49
  const mountGet = (app, path, endpoint) => mount(app, { method: 'get', route: endpoint, path });
52
50
  exports.mountGet = mountGet;
53
- /**
54
- * Registers a POST route.
55
- */
51
+ /** Registers a POST route. */
56
52
  const mountPost = (app, path, endpoint) => mount(app, { method: 'post', route: endpoint, path });
57
53
  exports.mountPost = mountPost;
58
- /**
59
- * Registers a PATCH route.
60
- */
54
+ /** Registers a PATCH route. */
61
55
  const mountPatch = (app, path, endpoint) => mount(app, { method: 'patch', route: endpoint, path });
62
56
  exports.mountPatch = mountPatch;
63
- /**
64
- * Registers a PUT route.
65
- */
57
+ /** Registers a PUT route. */
66
58
  const mountPut = (app, path, endpoint) => mount(app, { method: 'put', route: endpoint, path });
67
59
  exports.mountPut = mountPut;
68
60
  /** Registers a DELETE route. */
@@ -171,7 +163,7 @@ async function executeBodyEndpoint(route, req, res) {
171
163
  const validator = route.$body;
172
164
  const apiRequest = req.body;
173
165
  try {
174
- // Handle validation based on whether validator is an object or function
166
+ // Handle validation based on whether the validator is an object or function
175
167
  if (typeof validator === 'function') {
176
168
  // It's a ValueAssertion (function)
177
169
  (0, assertions_1.callValueAssertion)(apiRequest, validator, `${http_status_codes_1.HTTP_BAD_REQUEST}: request body`);
@@ -199,7 +191,7 @@ async function executeBodyEndpoint(route, req, res) {
199
191
  }
200
192
  /**
201
193
  * @Internal
202
- * Executes handler with middleware chain.
194
+ * Executes handler with a middleware chain.
203
195
  */
204
196
  async function executeWithMiddleware(run, middlewares, context) {
205
197
  const current = async (index) => {
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/router.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,5 @@ import express from 'express';
3
3
  export type ExpressRequest = express.Request;
4
4
  export type ExpressResponse = express.Response;
5
5
  export type ExpressNextFunction = express.NextFunction;
6
- export type ExpressApplication = express.Application;
6
+ export type ExpressRouter = express.IRouter;
7
7
  export type ExpressFunction = (req: ExpressRequest, res: ExpressResponse, next: ExpressNextFunction) => Promise<void>;
@@ -1,12 +1,12 @@
1
1
  import { DeleteEndpoint, GetEndpoint, PatchEndpoint, PostEndpoint, PutEndpoint, RequestContext, ResponseOrValue } from './router';
2
- import { ExpressApplication } from './utils/express.utils';
2
+ import { ExpressRouter } from './utils/express.utils';
3
3
  /**
4
4
  * Helper utility for organizing and mounting routes.
5
5
  * Provides a fluent interface for registering multiple handlers.
6
6
  */
7
7
  export declare class RouteTable {
8
8
  private readonly app;
9
- constructor(app: ExpressApplication);
9
+ constructor(app: ExpressRouter);
10
10
  get<T>(path: string, endpoint: GetEndpoint<T> | GetEndpoint<T[]>): this;
11
11
  get<T>(path: string, run: (ctx: RequestContext) => Promise<ResponseOrValue<T>>): this;
12
12
  post<Body, Result>(path: string, endpoint: PostEndpoint<Body, Result>): this;
@@ -20,4 +20,4 @@ export declare class RouteTable {
20
20
  * @param app Express application instance
21
21
  * @returns RouteTable instance with fluent API
22
22
  */
23
- export declare function createRouteTable(app: ExpressApplication): RouteTable;
23
+ export declare function createRouteTable(app: ExpressRouter): RouteTable;
@@ -1 +1 @@
1
- {"version":3,"file":"route-table.js","sourceRoot":"","sources":["../../src/route-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,WAAW,EACX,QAAQ,EACR,UAAU,EACV,SAAS,EACT,QAAQ,GAMT,MAAM,UAAU,CAAC;AAGlB;;;GAGG;AACH,MAAM,OAAO,UAAU;IACrB,YAA6B,GAAuB;QAAvB,QAAG,GAAH,GAAG,CAAoB;IAAG,CAAC;IAIxD,GAAG,CACD,IAAY,EACZ,aAAyG;QAEzG,MAAM,QAAQ,GAAG,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAC9F,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAA0B,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAe,IAAY,EAAE,QAAoC;QACnE,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAe,IAAY,EAAE,QAAqC;QACrE,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAe,IAAY,EAAE,QAAmC;QACjE,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAID,MAAM,CAAC,IAAY,EAAE,aAAwE;QAC3F,MAAM,QAAQ,GAAG,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAC9F,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAuB;IACtD,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"route-table.js","sourceRoot":"","sources":["../../src/route-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,WAAW,EACX,QAAQ,EACR,UAAU,EACV,SAAS,EACT,QAAQ,GAMT,MAAM,UAAU,CAAC;AAGlB;;;GAGG;AACH,MAAM,OAAO,UAAU;IACrB,YAA6B,GAAkB;QAAlB,QAAG,GAAH,GAAG,CAAe;IAAG,CAAC;IAInD,GAAG,CACD,IAAY,EACZ,aAAyG;QAEzG,MAAM,QAAQ,GAAG,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAC9F,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAA0B,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAe,IAAY,EAAE,QAAoC;QACnE,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAe,IAAY,EAAE,QAAqC;QACrE,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAe,IAAY,EAAE,QAAmC;QACjE,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAID,MAAM,CAAC,IAAY,EAAE,aAAwE;QAC3F,MAAM,QAAQ,GAAG,OAAO,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAC9F,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAkB;IACjD,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import { Assertion, ObjectAssertion } from '@fishka/assertions';
2
2
  import { ApiResponse, UrlTokensValidator } from './api.types';
3
3
  import { AuthUser } from './auth/auth.types';
4
- import { ExpressApplication, ExpressRequest, ExpressResponse } from './utils/express.utils';
5
- /** Express API allows handlers to return response in the raw form. */
4
+ import { ExpressRequest, ExpressResponse, ExpressRouter } from './utils/express.utils';
5
+ /** Express API allows handlers to return a response in the raw form. */
6
6
  export type ResponseOrValue<ResponseEntity> = ApiResponse<ResponseEntity> | ResponseEntity;
7
7
  /**
8
8
  * Generic middleware hook for endpoint execution.
@@ -27,9 +27,7 @@ export interface RequestContext<Body = void> {
27
27
  get(key: string): string;
28
28
  tryGet(key: string): string | undefined;
29
29
  };
30
- /**
31
- * Query parameter access.
32
- */
30
+ /** Query parameter access. */
33
31
  query: {
34
32
  get(key: string): string | undefined;
35
33
  };
@@ -84,23 +82,15 @@ export type RouteRegistrationInfo = ({
84
82
  }) & {
85
83
  path: string;
86
84
  };
87
- /**
88
- * Registers a GET route.
89
- */
90
- export declare const mountGet: (app: ExpressApplication, path: string, endpoint: GetEndpoint | GetListEndpoint) => void;
91
- /**
92
- * Registers a POST route.
93
- */
94
- export declare const mountPost: <Body, Result>(app: ExpressApplication, path: string, endpoint: PostEndpoint<Body, Result>) => void;
95
- /**
96
- * Registers a PATCH route.
97
- */
98
- export declare const mountPatch: <Body, Result>(app: ExpressApplication, path: string, endpoint: PatchEndpoint<Body, Result>) => void;
99
- /**
100
- * Registers a PUT route.
101
- */
102
- export declare const mountPut: <Body, Result>(app: ExpressApplication, path: string, endpoint: PutEndpoint<Body, Result>) => void;
85
+ /** Registers a GET route. */
86
+ export declare const mountGet: (app: ExpressRouter, path: string, endpoint: GetEndpoint | GetListEndpoint) => void;
87
+ /** Registers a POST route. */
88
+ export declare const mountPost: <Body, Result>(app: ExpressRouter, path: string, endpoint: PostEndpoint<Body, Result>) => void;
89
+ /** Registers a PATCH route. */
90
+ export declare const mountPatch: <Body, Result>(app: ExpressRouter, path: string, endpoint: PatchEndpoint<Body, Result>) => void;
91
+ /** Registers a PUT route. */
92
+ export declare const mountPut: <Body, Result>(app: ExpressRouter, path: string, endpoint: PutEndpoint<Body, Result>) => void;
103
93
  /** Registers a DELETE route. */
104
- export declare const mountDelete: (app: ExpressApplication, path: string, endpoint: DeleteEndpoint) => void;
94
+ export declare const mountDelete: (app: ExpressRouter, path: string, endpoint: DeleteEndpoint) => void;
105
95
  /** Mounts a route with the given method, endpoint, and path. */
106
- export declare function mount(app: ExpressApplication, { method, route, path }: RouteRegistrationInfo): void;
96
+ export declare function mount(app: ExpressRouter, { method, route, path }: RouteRegistrationInfo): void;
@@ -8,21 +8,13 @@ import { wrapAsApiResponse } from './utils/conversion.utils';
8
8
  // ============================================================================
9
9
  // Internal implementation details
10
10
  // ============================================================================
11
- /**
12
- * Registers a GET route.
13
- */
11
+ /** Registers a GET route. */
14
12
  export const mountGet = (app, path, endpoint) => mount(app, { method: 'get', route: endpoint, path });
15
- /**
16
- * Registers a POST route.
17
- */
13
+ /** Registers a POST route. */
18
14
  export const mountPost = (app, path, endpoint) => mount(app, { method: 'post', route: endpoint, path });
19
- /**
20
- * Registers a PATCH route.
21
- */
15
+ /** Registers a PATCH route. */
22
16
  export const mountPatch = (app, path, endpoint) => mount(app, { method: 'patch', route: endpoint, path });
23
- /**
24
- * Registers a PUT route.
25
- */
17
+ /** Registers a PUT route. */
26
18
  export const mountPut = (app, path, endpoint) => mount(app, { method: 'put', route: endpoint, path });
27
19
  /** Registers a DELETE route. */
28
20
  export const mountDelete = (app, path, endpoint) => mount(app, { method: 'delete', route: endpoint, path });
@@ -129,7 +121,7 @@ async function executeBodyEndpoint(route, req, res) {
129
121
  const validator = route.$body;
130
122
  const apiRequest = req.body;
131
123
  try {
132
- // Handle validation based on whether validator is an object or function
124
+ // Handle validation based on whether the validator is an object or function
133
125
  if (typeof validator === 'function') {
134
126
  // It's a ValueAssertion (function)
135
127
  callValueAssertion(apiRequest, validator, `${HTTP_BAD_REQUEST}: request body`);
@@ -157,7 +149,7 @@ async function executeBodyEndpoint(route, req, res) {
157
149
  }
158
150
  /**
159
151
  * @Internal
160
- * Executes handler with middleware chain.
152
+ * Executes handler with a middleware chain.
161
153
  */
162
154
  async function executeWithMiddleware(run, middlewares, context) {
163
155
  const current = async (index) => {
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/router.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,5 @@ import express from 'express';
3
3
  export type ExpressRequest = express.Request;
4
4
  export type ExpressResponse = express.Response;
5
5
  export type ExpressNextFunction = express.NextFunction;
6
- export type ExpressApplication = express.Application;
6
+ export type ExpressRouter = express.IRouter;
7
7
  export type ExpressFunction = (req: ExpressRequest, res: ExpressResponse, next: ExpressNextFunction) => Promise<void>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fishka/express",
3
- "version": "0.9.11",
3
+ "version": "0.9.12",
4
4
  "description": "Express.js extension with built-in validation, and type safety",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",