exisjs 0.4.2 → 0.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/dist/cli/commands/build.d.ts.map +1 -1
  2. package/dist/cli/commands/build.js +43 -55
  3. package/dist/cli/commands/build.js.map +1 -1
  4. package/dist/cli/manifest.d.ts +1 -0
  5. package/dist/cli/manifest.d.ts.map +1 -1
  6. package/dist/cli/manifest.js +76 -17
  7. package/dist/cli/manifest.js.map +1 -1
  8. package/dist/exports/sanitize.d.ts +2 -0
  9. package/dist/exports/sanitize.d.ts.map +1 -0
  10. package/dist/exports/sanitize.js +6 -0
  11. package/dist/exports/sanitize.js.map +1 -0
  12. package/dist/middleware/middleware.d.ts.map +1 -1
  13. package/dist/middleware/middleware.js +5 -0
  14. package/dist/middleware/middleware.js.map +1 -1
  15. package/dist/server/app.d.ts +51 -55
  16. package/dist/server/app.d.ts.map +1 -1
  17. package/dist/server/app.js +123 -2047
  18. package/dist/server/app.js.map +1 -1
  19. package/dist/server/bootstrapper.d.ts +24 -0
  20. package/dist/server/bootstrapper.d.ts.map +1 -0
  21. package/dist/server/bootstrapper.js +408 -0
  22. package/dist/server/bootstrapper.js.map +1 -0
  23. package/dist/server/controller-registrar.d.ts +8 -0
  24. package/dist/server/controller-registrar.d.ts.map +1 -0
  25. package/dist/server/controller-registrar.js +351 -0
  26. package/dist/server/controller-registrar.js.map +1 -0
  27. package/dist/server/plugin-manager.d.ts +26 -0
  28. package/dist/server/plugin-manager.d.ts.map +1 -0
  29. package/dist/server/plugin-manager.js +150 -0
  30. package/dist/server/plugin-manager.js.map +1 -0
  31. package/dist/server/queue-manager.d.ts +18 -0
  32. package/dist/server/queue-manager.d.ts.map +1 -0
  33. package/dist/server/queue-manager.js +54 -0
  34. package/dist/server/queue-manager.js.map +1 -0
  35. package/dist/server/request-handler.d.ts +25 -0
  36. package/dist/server/request-handler.d.ts.map +1 -0
  37. package/dist/server/request-handler.js +230 -0
  38. package/dist/server/request-handler.js.map +1 -0
  39. package/dist/server/route-scanner.d.ts +20 -0
  40. package/dist/server/route-scanner.d.ts.map +1 -0
  41. package/dist/server/route-scanner.js +892 -0
  42. package/dist/server/route-scanner.js.map +1 -0
  43. package/dist/server/ws-orchestrator.d.ts +15 -0
  44. package/dist/server/ws-orchestrator.d.ts.map +1 -0
  45. package/dist/server/ws-orchestrator.js +156 -0
  46. package/dist/server/ws-orchestrator.js.map +1 -0
  47. package/dist/utils/port.d.ts +2 -0
  48. package/dist/utils/port.d.ts.map +1 -0
  49. package/dist/utils/port.js +30 -0
  50. package/dist/utils/port.js.map +1 -0
  51. package/dist/utils/sanitize.d.ts +33 -0
  52. package/dist/utils/sanitize.d.ts.map +1 -0
  53. package/dist/utils/sanitize.js +95 -0
  54. package/dist/utils/sanitize.js.map +1 -0
  55. package/dist/utils/validator.d.ts +2 -0
  56. package/dist/utils/validator.d.ts.map +1 -1
  57. package/dist/utils/validator.js +55 -17
  58. package/dist/utils/validator.js.map +1 -1
  59. package/package.json +6 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-scanner.js","sourceRoot":"","sources":["../../src/server/route-scanner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { IncomingMessage } from 'node:http';
2
+ import type { Duplex } from 'node:stream';
3
+ import { type UwsIncomingMessage } from './uws-adapter';
4
+ import type { App } from './app';
5
+ export declare class WsOrchestrator {
6
+ private app;
7
+ constructor(app: App<any>);
8
+ handleUpgrade(rawReq: IncomingMessage, socket: Duplex, head: Buffer): Promise<void>;
9
+ /**
10
+ * WebSocket Upgrade Handler for uWebSockets.js
11
+ * Runs the middleware pipeline and if successful, upgrades the connection.
12
+ */
13
+ handleUwsUpgrade(shimReq: UwsIncomingMessage, uwsRes: any, context: any): Promise<void>;
14
+ }
15
+ //# sourceMappingURL=ws-orchestrator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-orchestrator.d.ts","sourceRoot":"","sources":["../../src/server/ws-orchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAkB,MAAM,WAAW,CAAA;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAMzC,OAAO,EAAqB,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAC1E,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAEhC,qBAAa,cAAc;IACzB,OAAO,CAAC,GAAG,CAAU;gBAET,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC;IAMZ,aAAa,CACxB,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC;IA+EhB;;;OAGG;IACU,gBAAgB,CAC3B,OAAO,EAAE,kBAAkB,EAC3B,MAAM,EAAE,GAAG,EACX,OAAO,EAAE,GAAG,GACX,OAAO,CAAC,IAAI,CAAC;CAwGjB"}
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WsOrchestrator = void 0;
4
+ const node_http_1 = require("node:http");
5
+ const request_1 = require("./request");
6
+ const response_1 = require("./response");
7
+ const router_1 = require("../router/router");
8
+ const socket_1 = require("../websocket/socket");
9
+ const uws_adapter_1 = require("./uws-adapter");
10
+ class WsOrchestrator {
11
+ constructor(app) {
12
+ this.app = app;
13
+ }
14
+ // ─── WebSocket Upgrade Handler ───────────────────────────────────────────────
15
+ async handleUpgrade(rawReq, socket, head) {
16
+ this.app.applyBuiltins();
17
+ // Match route
18
+ const reqPath = (rawReq.url || '').split('?')[0];
19
+ const matched = this.app.getRouter().match('WS', reqPath);
20
+ if (!matched) {
21
+ socket.write('HTTP/1.1 404 Not Found\\r\\n\\r\\n');
22
+ socket.destroy();
23
+ return;
24
+ }
25
+ // Create a dummy ServerResponse so standard HTTP middleware can run and reject if needed
26
+ const rawRes = new node_http_1.ServerResponse(rawReq);
27
+ rawRes.assignSocket(socket);
28
+ const res = new response_1.ExisResponse(rawRes);
29
+ const originalMethod = rawReq.method;
30
+ const req = new request_1.ExisRequest(rawReq, res, this.app.options.trustProxy, this.app.options.bodyLimit);
31
+ res.req = req;
32
+ req.method = 'WS';
33
+ req.params = matched.params;
34
+ req.log = this.app.log;
35
+ // Build the middleware pipeline specifically for this WebSocket route
36
+ const pipeline = [
37
+ ...this.app.globalMiddleware,
38
+ async (req, res, next) => {
39
+ // Exclude the last handler which is the actual WsHandler wrapper
40
+ const routeHandlers = matched.route.handlers.slice(0, -1);
41
+ (0, router_1.runHandlers)(routeHandlers, req, res, (err) => {
42
+ if (err)
43
+ return next(err);
44
+ next();
45
+ });
46
+ },
47
+ ];
48
+ await (0, router_1.runHandlers)(pipeline, req, res, async (err) => {
49
+ if (err) {
50
+ this.app.log.error({ err }, 'Error during WebSocket upgrade middleware');
51
+ socket.write('HTTP/1.1 500 Internal Server Error\\r\\n\\r\\n');
52
+ socket.destroy();
53
+ return;
54
+ }
55
+ if (res.headersSent) {
56
+ // A middleware intercepted and sent an HTTP response (e.g. 401 Unauthorized)
57
+ socket.destroy();
58
+ return;
59
+ }
60
+ // Restore original HTTP method (usually 'GET') so the `ws` package doesn't reject with 405
61
+ rawReq.method = originalMethod;
62
+ // Middleware passed, perform upgrade
63
+ this.app.rawWsServer.handleUpgrade(rawReq, socket, head, (ws) => {
64
+ const exisWs = new socket_1.ExisWebSocket(ws, req, this.app.wsServer);
65
+ this.app.wsServer.track(exisWs);
66
+ req.ws = exisWs;
67
+ const finalHandler = matched.route.handlers[matched.route.handlers.length - 1];
68
+ Promise.resolve(finalHandler(req, res, () => {
69
+ /* noop */
70
+ })).catch((err) => {
71
+ this.app.log.error({ err }, 'Error in WebSocket handler');
72
+ ws.close(1011, 'Internal Server Error');
73
+ });
74
+ });
75
+ });
76
+ }
77
+ /**
78
+ * WebSocket Upgrade Handler for uWebSockets.js
79
+ * Runs the middleware pipeline and if successful, upgrades the connection.
80
+ */
81
+ async handleUwsUpgrade(shimReq, uwsRes, context) {
82
+ this.app.applyBuiltins();
83
+ const reqPath = (shimReq.url || '').split('?')[0];
84
+ const matched = this.app.getRouter().match('WS', reqPath);
85
+ if (!matched) {
86
+ // 404
87
+ uwsRes.cork(() => {
88
+ uwsRes.writeStatus('404 Not Found');
89
+ uwsRes.end();
90
+ });
91
+ return;
92
+ }
93
+ let isAborted = false;
94
+ uwsRes.onAborted(() => {
95
+ isAborted = true;
96
+ });
97
+ const shimRes = new uws_adapter_1.UwsServerResponse(uwsRes);
98
+ const res = new response_1.ExisResponse(shimRes);
99
+ const req = new request_1.ExisRequest(shimReq, res, this.app.options.trustProxy, this.app.options.bodyLimit);
100
+ res.req = req;
101
+ req.method = 'WS';
102
+ req.params = matched.params;
103
+ req.log = this.app.log;
104
+ const pipeline = [
105
+ ...this.app.globalMiddleware,
106
+ async (req, res, next) => {
107
+ const routeHandlers = matched.route.handlers.slice(0, -1);
108
+ (0, router_1.runHandlers)(routeHandlers, req, res, (err) => {
109
+ if (err)
110
+ return next(err);
111
+ next();
112
+ });
113
+ },
114
+ ];
115
+ this.app.requestHandler._executeWithContext(req, res, async () => {
116
+ (0, router_1.runHandlers)(pipeline, req, res, async (err) => {
117
+ if (isAborted)
118
+ return;
119
+ if (err) {
120
+ this.app.log.error({ err }, 'Error during uWS WebSocket upgrade middleware');
121
+ uwsRes.cork(() => {
122
+ uwsRes.writeStatus('500 Internal Server Error');
123
+ uwsRes.end();
124
+ });
125
+ return;
126
+ }
127
+ if (res.headersSent) {
128
+ return; // Middleware sent an HTTP response
129
+ }
130
+ // We need to fetch headers directly from the shimReq.headers
131
+ const secWebSocketKey = shimReq.headers['sec-websocket-key'] || '';
132
+ const secWebSocketProtocol = shimReq.headers['sec-websocket-protocol'] || '';
133
+ const secWebSocketExtensions = shimReq.headers['sec-websocket-extensions'] || '';
134
+ // Prepare user data for the upgraded websocket
135
+ const userData = {
136
+ req,
137
+ res,
138
+ exisWs: new socket_1.ExisWebSocket(null, req, this.app.wsServer), // the raw will be set to shim in open()
139
+ finalHandler: matched.route.handlers[matched.route.handlers.length - 1],
140
+ };
141
+ this.app.wsServer.track(userData.exisWs);
142
+ req.ws = userData.exisWs;
143
+ uwsRes.cork(() => {
144
+ uwsRes.upgrade(userData, secWebSocketKey, secWebSocketProtocol, secWebSocketExtensions, context);
145
+ });
146
+ Promise.resolve(userData.finalHandler(req, res, () => {
147
+ /* noop */
148
+ })).catch((e) => {
149
+ this.app.log.error({ err: e }, 'Error in uWS WebSocket handler');
150
+ });
151
+ });
152
+ });
153
+ }
154
+ }
155
+ exports.WsOrchestrator = WsOrchestrator;
156
+ //# sourceMappingURL=ws-orchestrator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws-orchestrator.js","sourceRoot":"","sources":["../../src/server/ws-orchestrator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function getAvailablePort(startPort: number, host: string, maxRetries?: number): Promise<number>;
2
+ //# sourceMappingURL=port.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"port.d.ts","sourceRoot":"","sources":["../../src/utils/port.ts"],"names":[],"mappings":"AAEA,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,UAAU,SAAK,GACd,OAAO,CAAC,MAAM,CAAC,CASjB"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getAvailablePort = getAvailablePort;
7
+ const node_net_1 = __importDefault(require("node:net"));
8
+ async function getAvailablePort(startPort, host, maxRetries = 10) {
9
+ let port = startPort;
10
+ for (let i = 0; i < maxRetries; i++) {
11
+ if (await isPortAvailable(port, host)) {
12
+ return port;
13
+ }
14
+ port++;
15
+ }
16
+ return startPort;
17
+ }
18
+ function isPortAvailable(port, host) {
19
+ return new Promise((resolve) => {
20
+ const server = node_net_1.default.createServer();
21
+ server.unref();
22
+ server.on('error', () => {
23
+ resolve(false);
24
+ });
25
+ server.listen(port, host, () => {
26
+ server.close(() => resolve(true));
27
+ });
28
+ });
29
+ }
30
+ //# sourceMappingURL=port.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"port.js","sourceRoot":"","sources":["../../src/utils/port.ts"],"names":[],"mappings":";;;;;AAEA,4CAaC;AAfD,wDAA0B;AAEnB,KAAK,UAAU,gBAAgB,CACpC,SAAiB,EACjB,IAAY,EACZ,UAAU,GAAG,EAAE;IAEf,IAAI,IAAI,GAAG,SAAS,CAAA;IACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,IAAI,MAAM,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;YACtC,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,EAAE,CAAA;IACR,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,SAAS,eAAe,CAAC,IAAY,EAAE,IAAY;IACjD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,kBAAG,CAAC,YAAY,EAAE,CAAA;QACjC,MAAM,CAAC,KAAK,EAAE,CAAA;QACd,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACtB,OAAO,CAAC,KAAK,CAAC,CAAA;QAChB,CAAC,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;YAC7B,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;QACnC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * ExisJS Sanitize Engine
3
+ *
4
+ * A collection of pure functions for transforming data before business logic validation.
5
+ * These are designed to be composable with the `ValidatorType.sanitize()` method.
6
+ */
7
+ export declare const sanitize: {
8
+ trim: (val: string) => string;
9
+ toLowerCase: (val: string) => string;
10
+ toUpperCase: (val: string) => string;
11
+ collapseWhitespace: (val: string) => string;
12
+ stripHtml: (val: string) => string;
13
+ escapeHtml: (val: string) => string;
14
+ normalizeUnicode: (val: string) => string;
15
+ slugify: (val: string) => string;
16
+ truncate: (length: number) => (val: string) => string;
17
+ removeNonAlphanumeric: (val: string) => string;
18
+ normalizeLineEndings: (val: string) => string;
19
+ round: (val: number) => number;
20
+ clamp: (min: number, max: number) => (val: number) => number;
21
+ defaultIfNaN: (fallback: number) => (val: number) => number;
22
+ normalizeToIsoString: (val: Date) => string;
23
+ stripTime: (val: Date) => Date;
24
+ dedupe: <T>(val: T[]) => T[];
25
+ compact: <T>(val: T[]) => Exclude<T, null | undefined | "">[];
26
+ trimElements: (val: string[]) => string[];
27
+ limitLength: <T>(length: number) => (val: T[]) => T[];
28
+ stripUnknownKeys: <T extends Record<string, any>>(allowedKeys: (keyof T)[]) => (val: T) => T;
29
+ deepTrimStringValues: <T extends Record<string, any>>(val: T) => T;
30
+ omit: <T extends Record<string, any>, K extends keyof T>(keys: K[]) => (val: T) => Omit<T, K>;
31
+ pick: <T extends Record<string, any>, K extends keyof T>(keys: K[]) => (val: T) => Pick<T, K>;
32
+ };
33
+ //# sourceMappingURL=sanitize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../src/utils/sanitize.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,QAAQ;gBAGP,MAAM,KAAG,MAAM;uBAER,MAAM,KAAG,MAAM;uBAEf,MAAM,KAAG,MAAM;8BAER,MAAM,KAAG,MAAM;qBAExB,MAAM,KAAG,MAAM;sBAEd,MAAM,KAAG,MAAM;4BAYT,MAAM,KAAG,MAAM;mBAExB,MAAM,KAAG,MAAM;uBAOnB,MAAM,MACd,KAAK,MAAM,KAAG,MAAM;iCAGM,MAAM,KAAG,MAAM;gCAGhB,MAAM,KAAG,MAAM;iBAI9B,MAAM,KAAG,MAAM;iBAGpB,MAAM,OAAO,MAAM,MACxB,KAAK,MAAM,KAAG,MAAM;6BAIV,MAAM,MAChB,KAAK,MAAM,KAAG,MAAM;gCAKK,IAAI,KAAG,MAAM;qBAExB,IAAI,KAAG,IAAI;aAQnB,CAAC,OAAO,CAAC,EAAE,KAAG,CAAC,EAAE;cAEhB,CAAC,OAAO,CAAC,EAAE,KAAG,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,SAAS,GAAG,EAAE,CAAC,EAAE;wBAKvC,MAAM,EAAE,KAAG,MAAM,EAAE;kBAIpC,CAAC,UAAU,MAAM,MACjB,KAAK,CAAC,EAAE,KAAG,CAAC,EAAE;uBAMd,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,EAAE,MACvD,KAAK,CAAC,KAAG,CAAC;2BAQU,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,KAAG,CAAC;WAmB7D,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,QAAQ,CAAC,EAAE,MAC3D,KAAK,CAAC,KAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;WASnB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,QAAQ,CAAC,EAAE,MAC3D,KAAK,CAAC,KAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;CAOvB,CAAA"}
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ /**
3
+ * ExisJS Sanitize Engine
4
+ *
5
+ * A collection of pure functions for transforming data before business logic validation.
6
+ * These are designed to be composable with the `ValidatorType.sanitize()` method.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.sanitize = void 0;
10
+ exports.sanitize = {
11
+ // ─── String Sanitizers ────────────────────────────────────────────────────────
12
+ trim: (val) => val.trim(),
13
+ toLowerCase: (val) => val.toLowerCase(),
14
+ toUpperCase: (val) => val.toUpperCase(),
15
+ collapseWhitespace: (val) => val.replace(/\s+/g, ' '),
16
+ stripHtml: (val) => val.replace(/<[^>]*>?/gm, ''),
17
+ escapeHtml: (val) => val.replace(/[&<>"']/g, (m) => {
18
+ const map = {
19
+ '&': '&amp;',
20
+ '<': '&lt;',
21
+ '>': '&gt;',
22
+ '"': '&quot;',
23
+ "'": '&#39;',
24
+ };
25
+ return map[m] || m;
26
+ }),
27
+ normalizeUnicode: (val) => val.normalize('NFC'),
28
+ slugify: (val) => val
29
+ .toLowerCase()
30
+ .replace(/[^a-z0-9]+/g, '-')
31
+ .replace(/(^-|-$)/g, ''),
32
+ truncate: (length) => (val) => val.length > length ? val.substring(0, length) : val,
33
+ removeNonAlphanumeric: (val) => val.replace(/[^a-zA-Z0-9]/g, ''),
34
+ normalizeLineEndings: (val) => val.replace(/\r\n/g, '\n'),
35
+ // ─── Number Sanitizers ────────────────────────────────────────────────────────
36
+ round: (val) => Math.round(val),
37
+ clamp: (min, max) => (val) => Math.max(min, Math.min(max, val)),
38
+ defaultIfNaN: (fallback) => (val) => Number.isNaN(val) ? fallback : val,
39
+ // ─── Date Sanitizers ──────────────────────────────────────────────────────────
40
+ normalizeToIsoString: (val) => val.toISOString(),
41
+ stripTime: (val) => {
42
+ const d = new Date(val);
43
+ d.setHours(0, 0, 0, 0);
44
+ return d;
45
+ },
46
+ // ─── Array Sanitizers ─────────────────────────────────────────────────────────
47
+ dedupe: (val) => Array.from(new Set(val)),
48
+ compact: (val) => val.filter((v) => v !== null && v !== undefined && v !== ''),
49
+ trimElements: (val) => val.map((v) => (typeof v === 'string' ? v.trim() : v)),
50
+ limitLength: (length) => (val) => val.slice(0, length),
51
+ // ─── Object Sanitizers ────────────────────────────────────────────────────────
52
+ stripUnknownKeys: (allowedKeys) => (val) => {
53
+ const res = {};
54
+ for (const key of allowedKeys) {
55
+ if (key in val)
56
+ res[key] = val[key];
57
+ }
58
+ return res;
59
+ },
60
+ deepTrimStringValues: (val) => {
61
+ const walk = (obj) => {
62
+ if (typeof obj === 'string')
63
+ return obj.trim();
64
+ if (Array.isArray(obj))
65
+ return obj.map(walk);
66
+ if (obj !== null && typeof obj === 'object') {
67
+ const res = {};
68
+ for (const k in obj) {
69
+ if (Object.prototype.hasOwnProperty.call(obj, k)) {
70
+ res[k] = walk(obj[k]);
71
+ }
72
+ }
73
+ return res;
74
+ }
75
+ return obj;
76
+ };
77
+ return walk(val);
78
+ },
79
+ omit: (keys) => (val) => {
80
+ const res = { ...val };
81
+ for (const k of keys) {
82
+ delete res[k];
83
+ }
84
+ return res;
85
+ },
86
+ pick: (keys) => (val) => {
87
+ const res = {};
88
+ for (const k of keys) {
89
+ if (k in val)
90
+ res[k] = val[k];
91
+ }
92
+ return res;
93
+ },
94
+ };
95
+ //# sourceMappingURL=sanitize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitize.js","sourceRoot":"","sources":["../../src/utils/sanitize.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,8 @@ export declare abstract class ValidatorType<T> {
17
17
  unique(): this;
18
18
  index(): this;
19
19
  refine(check: (val: T) => boolean, message?: string | ((val: T) => string)): ValidatorType<T>;
20
+ protected _sanitizers: ((val: any) => any)[];
21
+ sanitize(...sanitizers: ((val: T) => T)[]): this;
20
22
  transform<U>(fn: (val: T) => U): ValidatorType<U>;
21
23
  or<U>(other: ValidatorType<U>): ValidatorType<T | U>;
22
24
  abstract toOpenApi(): Record<string, unknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/utils/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/utils/validator.ts"],"names":[],"mappings":"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"}