@superdangerous/app-framework 4.9.2 → 4.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/README.md +8 -2
  2. package/dist/api/logsRouter.d.ts +4 -1
  3. package/dist/api/logsRouter.d.ts.map +1 -1
  4. package/dist/api/logsRouter.js +100 -118
  5. package/dist/api/logsRouter.js.map +1 -1
  6. package/dist/index.d.ts +2 -0
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +2 -0
  9. package/dist/index.js.map +1 -1
  10. package/dist/middleware/validation.d.ts +48 -43
  11. package/dist/middleware/validation.d.ts.map +1 -1
  12. package/dist/middleware/validation.js +48 -43
  13. package/dist/middleware/validation.js.map +1 -1
  14. package/dist/services/emailService.d.ts +146 -0
  15. package/dist/services/emailService.d.ts.map +1 -0
  16. package/dist/services/emailService.js +649 -0
  17. package/dist/services/emailService.js.map +1 -0
  18. package/dist/services/index.d.ts +2 -0
  19. package/dist/services/index.d.ts.map +1 -1
  20. package/dist/services/index.js +2 -0
  21. package/dist/services/index.js.map +1 -1
  22. package/dist/services/websocketServer.d.ts +7 -4
  23. package/dist/services/websocketServer.d.ts.map +1 -1
  24. package/dist/services/websocketServer.js +22 -16
  25. package/dist/services/websocketServer.js.map +1 -1
  26. package/dist/types/index.d.ts +7 -8
  27. package/dist/types/index.d.ts.map +1 -1
  28. package/package.json +11 -2
  29. package/src/api/logsRouter.ts +119 -138
  30. package/src/index.ts +14 -0
  31. package/src/middleware/validation.ts +82 -90
  32. package/src/services/emailService.ts +812 -0
  33. package/src/services/index.ts +14 -0
  34. package/src/services/websocketServer.ts +37 -23
  35. package/src/types/index.ts +7 -8
  36. package/ui/data-table/components/BatchActionsBar.tsx +53 -0
  37. package/ui/data-table/components/ColumnVisibility.tsx +111 -0
  38. package/ui/data-table/components/DataTablePage.tsx +238 -0
  39. package/ui/data-table/components/Pagination.tsx +203 -0
  40. package/ui/data-table/components/PaginationControls.tsx +122 -0
  41. package/ui/data-table/components/TableFilters.tsx +139 -0
  42. package/ui/data-table/components/index.ts +27 -0
  43. package/ui/data-table/hooks/index.ts +17 -0
  44. package/ui/data-table/hooks/useColumnOrder.ts +233 -0
  45. package/ui/data-table/hooks/useColumnVisibility.ts +128 -0
  46. package/ui/data-table/hooks/usePagination.ts +160 -0
  47. package/ui/data-table/hooks/useResizableColumns.ts +280 -0
  48. package/ui/data-table/index.ts +74 -0
  49. package/ui/dist/index.d.mts +207 -5
  50. package/ui/dist/index.d.ts +207 -5
  51. package/ui/dist/index.js +36 -43
  52. package/ui/dist/index.js.map +1 -1
  53. package/ui/dist/index.mjs +36 -43
  54. package/ui/dist/index.mjs.map +1 -1
@@ -12,17 +12,14 @@
12
12
  */
13
13
  import { z, ZodSchema } from "zod";
14
14
  import { Request, Response, NextFunction } from "express";
15
- import { ApiResponse } from "../types/index.js";
16
15
  /**
17
16
  * Validation options for middleware
18
17
  */
19
18
  export interface ValidationOptions {
19
+ /** Whether to stop on first error (not used with Zod) */
20
20
  abortEarly?: boolean;
21
+ /** Whether to strip unknown properties from validated data */
21
22
  stripUnknown?: boolean;
22
- convert?: boolean;
23
- presence?: "optional" | "required" | "forbidden";
24
- context?: Record<string, any>;
25
- allowUnknown?: boolean;
26
23
  }
27
24
  /**
28
25
  * Validation schemas for different endpoints
@@ -58,11 +55,11 @@ export declare const schemas: {
58
55
  category?: string | undefined;
59
56
  manufacturer?: string | undefined;
60
57
  version?: string | undefined;
58
+ tags?: string[] | undefined;
61
59
  models?: {
62
60
  name: string;
63
61
  variants?: string[] | undefined;
64
62
  }[] | undefined;
65
- tags?: string[] | undefined;
66
63
  lastUpdated?: string | undefined;
67
64
  author?: string | undefined;
68
65
  }, {
@@ -70,11 +67,11 @@ export declare const schemas: {
70
67
  category?: string | undefined;
71
68
  manufacturer?: string | undefined;
72
69
  version?: string | undefined;
70
+ tags?: string[] | undefined;
73
71
  models?: {
74
72
  name: string;
75
73
  variants?: string[] | undefined;
76
74
  }[] | undefined;
77
- tags?: string[] | undefined;
78
75
  lastUpdated?: string | undefined;
79
76
  author?: string | undefined;
80
77
  }>>;
@@ -248,11 +245,11 @@ export declare const schemas: {
248
245
  category?: string | undefined;
249
246
  manufacturer?: string | undefined;
250
247
  version?: string | undefined;
248
+ tags?: string[] | undefined;
251
249
  models?: {
252
250
  name: string;
253
251
  variants?: string[] | undefined;
254
252
  }[] | undefined;
255
- tags?: string[] | undefined;
256
253
  lastUpdated?: string | undefined;
257
254
  author?: string | undefined;
258
255
  } | undefined;
@@ -313,11 +310,11 @@ export declare const schemas: {
313
310
  category?: string | undefined;
314
311
  manufacturer?: string | undefined;
315
312
  version?: string | undefined;
313
+ tags?: string[] | undefined;
316
314
  models?: {
317
315
  name: string;
318
316
  variants?: string[] | undefined;
319
317
  }[] | undefined;
320
- tags?: string[] | undefined;
321
318
  lastUpdated?: string | undefined;
322
319
  author?: string | undefined;
323
320
  } | undefined;
@@ -499,13 +496,13 @@ export declare const schemas: {
499
496
  maxSize: z.ZodString;
500
497
  maxFiles: z.ZodString;
501
498
  }, "strip", z.ZodTypeAny, {
502
- level: "error" | "debug" | "warn" | "info";
499
+ level: "debug" | "error" | "info" | "warn";
503
500
  maxSize: string;
504
501
  maxFiles: string;
505
502
  file: boolean;
506
503
  console: boolean;
507
504
  }, {
508
- level: "error" | "debug" | "warn" | "info";
505
+ level: "debug" | "error" | "info" | "warn";
509
506
  maxSize: string;
510
507
  maxFiles: string;
511
508
  file: boolean;
@@ -526,7 +523,7 @@ export declare const schemas: {
526
523
  }>>;
527
524
  }, "strip", z.ZodTypeAny, {
528
525
  logging?: {
529
- level: "error" | "debug" | "warn" | "info";
526
+ level: "debug" | "error" | "info" | "warn";
530
527
  maxSize: string;
531
528
  maxFiles: string;
532
529
  file: boolean;
@@ -552,7 +549,7 @@ export declare const schemas: {
552
549
  } | undefined;
553
550
  }, {
554
551
  logging?: {
555
- level: "error" | "debug" | "warn" | "info";
552
+ level: "debug" | "error" | "info" | "warn";
556
553
  maxSize: string;
557
554
  maxFiles: string;
558
555
  file: boolean;
@@ -610,28 +607,28 @@ export declare const schemas: {
610
607
  status?: "error" | "active" | "inactive" | undefined;
611
608
  search?: string | undefined;
612
609
  category?: string | undefined;
613
- protocol?: "modbus" | "bacnet" | undefined;
614
610
  tags?: string[] | undefined;
611
+ protocol?: "modbus" | "bacnet" | undefined;
615
612
  }, {
616
613
  status?: "error" | "active" | "inactive" | undefined;
617
614
  search?: string | undefined;
618
615
  category?: string | undefined;
619
- protocol?: "modbus" | "bacnet" | undefined;
620
616
  tags?: string[] | undefined;
617
+ protocol?: "modbus" | "bacnet" | undefined;
621
618
  }>;
622
619
  };
623
620
  /**
624
621
  * Create a validation middleware for request body
625
622
  */
626
- export declare function validate<T extends ZodSchema>(schema: T, options?: ValidationOptions): (req: Request, res: Response<ApiResponse<any>>, next: NextFunction) => any;
623
+ export declare function validate<T extends ZodSchema>(schema: T, options?: ValidationOptions): (req: Request, res: Response, next: NextFunction) => void;
627
624
  /**
628
625
  * Validate request parameters
629
626
  */
630
- export declare function validateParams<T extends ZodSchema>(schema: T, options?: ValidationOptions): (req: Request, res: Response<ApiResponse<any>>, next: NextFunction) => any;
627
+ export declare function validateParams<T extends ZodSchema>(schema: T, options?: ValidationOptions): (req: Request, res: Response, next: NextFunction) => void;
631
628
  /**
632
629
  * Validate query parameters
633
630
  */
634
- export declare function validateQuery<T extends ZodSchema>(schema: T, options?: ValidationOptions): (req: Request, res: Response<ApiResponse<any>>, next: NextFunction) => any;
631
+ export declare function validateQuery<T extends ZodSchema>(schema: T, options?: ValidationOptions): (req: Request, res: Response, next: NextFunction) => void;
635
632
  /**
636
633
  * Combined validation for body, params, and query
637
634
  */
@@ -639,15 +636,15 @@ export declare function validateRequest<T extends {
639
636
  body?: ZodSchema;
640
637
  params?: ZodSchema;
641
638
  query?: ZodSchema;
642
- }>(schemas: T, options?: ValidationOptions): (req: Request, res: Response<ApiResponse<any>>, next: NextFunction) => any;
639
+ }>(validationSchemas: T, options?: ValidationOptions): (req: Request, res: Response, next: NextFunction) => void;
643
640
  /**
644
641
  * Async validation wrapper for custom validation logic
645
642
  */
646
- export declare function validateAsync(validationFn: (req: Request) => Promise<any>): (req: Request, res: Response<ApiResponse<any>>, next: NextFunction) => Promise<void>;
643
+ export declare function validateAsync(validationFn: (req: Request) => Promise<void>): (req: Request, res: Response, next: NextFunction) => Promise<void>;
647
644
  /**
648
645
  * Create a conditional validation middleware
649
646
  */
650
- export declare function validateIf<T extends ZodSchema>(condition: (req: Request) => boolean, schema: T, options?: ValidationOptions): (req: Request, res: Response<ApiResponse<any>>, next: NextFunction) => any;
647
+ export declare function validateIf<T extends ZodSchema>(condition: (req: Request) => boolean, schema: T, options?: ValidationOptions): (req: Request, res: Response, next: NextFunction) => void;
651
648
  /**
652
649
  * Schema composition helpers using Zod's built-in methods
653
650
  */
@@ -659,8 +656,8 @@ export declare const compose: {
659
656
  /**
660
657
  * Make all fields optional
661
658
  */
662
- partial: <T extends z.ZodObject<any>>(schema: T) => z.ZodObject<{
663
- [x: string]: z.ZodOptional<any>;
659
+ partial: <T extends z.ZodObject<z.ZodRawShape>>(schema: T) => z.ZodObject<{
660
+ [x: string]: z.ZodOptional<z.ZodTypeAny>;
664
661
  }, z.UnknownKeysParam, z.ZodTypeAny, {
665
662
  [x: string]: any;
666
663
  }, {
@@ -669,8 +666,8 @@ export declare const compose: {
669
666
  /**
670
667
  * Make specific fields required
671
668
  */
672
- require: <T extends z.ZodObject<any>>(schema: T, fields: Array<keyof T["shape"]>) => z.ZodObject<{} & {
673
- [x: string]: any;
669
+ require: <T extends z.ZodObject<z.ZodRawShape>>(schema: T, fields: Array<keyof T["shape"]>) => z.ZodObject<{} & {
670
+ [x: string]: z.ZodTypeAny;
674
671
  }, z.UnknownKeysParam, z.ZodTypeAny, {
675
672
  [x: string]: any;
676
673
  }, {
@@ -679,7 +676,7 @@ export declare const compose: {
679
676
  /**
680
677
  * Pick specific fields from a schema
681
678
  */
682
- pick: <T extends z.ZodObject<any>>(schema: T, fields: Array<keyof T["shape"]>) => z.ZodObject<any, "strip", z.ZodTypeAny, {
679
+ pick: <T extends z.ZodObject<z.ZodRawShape>>(schema: T, fields: Array<keyof T["shape"]>) => z.ZodObject<Record<string, z.ZodTypeAny>, "strip", z.ZodTypeAny, {
683
680
  [x: string]: any;
684
681
  }, {
685
682
  [x: string]: any;
@@ -687,7 +684,11 @@ export declare const compose: {
687
684
  /**
688
685
  * Omit specific fields from a schema
689
686
  */
690
- omit: <T extends z.ZodObject<any>>(schema: T, fields: Array<keyof T["shape"]>) => z.ZodObject<Omit<any, string | number | symbol>, z.UnknownKeysParam, z.ZodTypeAny, {}, {}>;
687
+ omit: <T extends z.ZodObject<z.ZodRawShape>>(schema: T, fields: Array<keyof T["shape"]>) => z.ZodObject<Omit<z.ZodRawShape, string>, z.UnknownKeysParam, z.ZodTypeAny, {
688
+ [x: number]: any;
689
+ }, {
690
+ [x: number]: any;
691
+ }>;
691
692
  };
692
693
  /**
693
694
  * Export Zod for direct use
@@ -731,11 +732,11 @@ declare const _default: {
731
732
  category?: string | undefined;
732
733
  manufacturer?: string | undefined;
733
734
  version?: string | undefined;
735
+ tags?: string[] | undefined;
734
736
  models?: {
735
737
  name: string;
736
738
  variants?: string[] | undefined;
737
739
  }[] | undefined;
738
- tags?: string[] | undefined;
739
740
  lastUpdated?: string | undefined;
740
741
  author?: string | undefined;
741
742
  }, {
@@ -743,11 +744,11 @@ declare const _default: {
743
744
  category?: string | undefined;
744
745
  manufacturer?: string | undefined;
745
746
  version?: string | undefined;
747
+ tags?: string[] | undefined;
746
748
  models?: {
747
749
  name: string;
748
750
  variants?: string[] | undefined;
749
751
  }[] | undefined;
750
- tags?: string[] | undefined;
751
752
  lastUpdated?: string | undefined;
752
753
  author?: string | undefined;
753
754
  }>>;
@@ -921,11 +922,11 @@ declare const _default: {
921
922
  category?: string | undefined;
922
923
  manufacturer?: string | undefined;
923
924
  version?: string | undefined;
925
+ tags?: string[] | undefined;
924
926
  models?: {
925
927
  name: string;
926
928
  variants?: string[] | undefined;
927
929
  }[] | undefined;
928
- tags?: string[] | undefined;
929
930
  lastUpdated?: string | undefined;
930
931
  author?: string | undefined;
931
932
  } | undefined;
@@ -986,11 +987,11 @@ declare const _default: {
986
987
  category?: string | undefined;
987
988
  manufacturer?: string | undefined;
988
989
  version?: string | undefined;
990
+ tags?: string[] | undefined;
989
991
  models?: {
990
992
  name: string;
991
993
  variants?: string[] | undefined;
992
994
  }[] | undefined;
993
- tags?: string[] | undefined;
994
995
  lastUpdated?: string | undefined;
995
996
  author?: string | undefined;
996
997
  } | undefined;
@@ -1172,13 +1173,13 @@ declare const _default: {
1172
1173
  maxSize: z.ZodString;
1173
1174
  maxFiles: z.ZodString;
1174
1175
  }, "strip", z.ZodTypeAny, {
1175
- level: "error" | "debug" | "warn" | "info";
1176
+ level: "debug" | "error" | "info" | "warn";
1176
1177
  maxSize: string;
1177
1178
  maxFiles: string;
1178
1179
  file: boolean;
1179
1180
  console: boolean;
1180
1181
  }, {
1181
- level: "error" | "debug" | "warn" | "info";
1182
+ level: "debug" | "error" | "info" | "warn";
1182
1183
  maxSize: string;
1183
1184
  maxFiles: string;
1184
1185
  file: boolean;
@@ -1199,7 +1200,7 @@ declare const _default: {
1199
1200
  }>>;
1200
1201
  }, "strip", z.ZodTypeAny, {
1201
1202
  logging?: {
1202
- level: "error" | "debug" | "warn" | "info";
1203
+ level: "debug" | "error" | "info" | "warn";
1203
1204
  maxSize: string;
1204
1205
  maxFiles: string;
1205
1206
  file: boolean;
@@ -1225,7 +1226,7 @@ declare const _default: {
1225
1226
  } | undefined;
1226
1227
  }, {
1227
1228
  logging?: {
1228
- level: "error" | "debug" | "warn" | "info";
1229
+ level: "debug" | "error" | "info" | "warn";
1229
1230
  maxSize: string;
1230
1231
  maxFiles: string;
1231
1232
  file: boolean;
@@ -1283,14 +1284,14 @@ declare const _default: {
1283
1284
  status?: "error" | "active" | "inactive" | undefined;
1284
1285
  search?: string | undefined;
1285
1286
  category?: string | undefined;
1286
- protocol?: "modbus" | "bacnet" | undefined;
1287
1287
  tags?: string[] | undefined;
1288
+ protocol?: "modbus" | "bacnet" | undefined;
1288
1289
  }, {
1289
1290
  status?: "error" | "active" | "inactive" | undefined;
1290
1291
  search?: string | undefined;
1291
1292
  category?: string | undefined;
1292
- protocol?: "modbus" | "bacnet" | undefined;
1293
1293
  tags?: string[] | undefined;
1294
+ protocol?: "modbus" | "bacnet" | undefined;
1294
1295
  }>;
1295
1296
  };
1296
1297
  compose: {
@@ -1301,8 +1302,8 @@ declare const _default: {
1301
1302
  /**
1302
1303
  * Make all fields optional
1303
1304
  */
1304
- partial: <T extends z.ZodObject<any>>(schema: T) => z.ZodObject<{
1305
- [x: string]: z.ZodOptional<any>;
1305
+ partial: <T extends z.ZodObject<z.ZodRawShape>>(schema: T) => z.ZodObject<{
1306
+ [x: string]: z.ZodOptional<z.ZodTypeAny>;
1306
1307
  }, z.UnknownKeysParam, z.ZodTypeAny, {
1307
1308
  [x: string]: any;
1308
1309
  }, {
@@ -1311,8 +1312,8 @@ declare const _default: {
1311
1312
  /**
1312
1313
  * Make specific fields required
1313
1314
  */
1314
- require: <T extends z.ZodObject<any>>(schema: T, fields: Array<keyof T["shape"]>) => z.ZodObject<{} & {
1315
- [x: string]: any;
1315
+ require: <T extends z.ZodObject<z.ZodRawShape>>(schema: T, fields: Array<keyof T["shape"]>) => z.ZodObject<{} & {
1316
+ [x: string]: z.ZodTypeAny;
1316
1317
  }, z.UnknownKeysParam, z.ZodTypeAny, {
1317
1318
  [x: string]: any;
1318
1319
  }, {
@@ -1321,7 +1322,7 @@ declare const _default: {
1321
1322
  /**
1322
1323
  * Pick specific fields from a schema
1323
1324
  */
1324
- pick: <T extends z.ZodObject<any>>(schema: T, fields: Array<keyof T["shape"]>) => z.ZodObject<any, "strip", z.ZodTypeAny, {
1325
+ pick: <T extends z.ZodObject<z.ZodRawShape>>(schema: T, fields: Array<keyof T["shape"]>) => z.ZodObject<Record<string, z.ZodTypeAny>, "strip", z.ZodTypeAny, {
1325
1326
  [x: string]: any;
1326
1327
  }, {
1327
1328
  [x: string]: any;
@@ -1329,7 +1330,11 @@ declare const _default: {
1329
1330
  /**
1330
1331
  * Omit specific fields from a schema
1331
1332
  */
1332
- omit: <T extends z.ZodObject<any>>(schema: T, fields: Array<keyof T["shape"]>) => z.ZodObject<Omit<any, string | number | symbol>, z.UnknownKeysParam, z.ZodTypeAny, {}, {}>;
1333
+ omit: <T extends z.ZodObject<z.ZodRawShape>>(schema: T, fields: Array<keyof T["shape"]>) => z.ZodObject<Omit<z.ZodRawShape, string>, z.UnknownKeysParam, z.ZodTypeAny, {
1334
+ [x: number]: any;
1335
+ }, {
1336
+ [x: number]: any;
1337
+ }>;
1333
1338
  };
1334
1339
  z: typeof z;
1335
1340
  };
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/middleware/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/middleware/validation.ts"],"names":[],"mappings":"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"}
@@ -17,8 +17,6 @@ import { z, ZodError } from "zod";
17
17
  const defaultOptions = {
18
18
  abortEarly: false,
19
19
  stripUnknown: true,
20
- convert: true,
21
- allowUnknown: false,
22
20
  };
23
21
  /**
24
22
  * Format validation errors into a consistent structure
@@ -239,19 +237,20 @@ export function validate(schema, options) {
239
237
  }
240
238
  next();
241
239
  }
242
- catch (_error) {
243
- if (_error instanceof ZodError) {
244
- const errors = formatValidationErrors(_error);
240
+ catch (error) {
241
+ if (error instanceof ZodError) {
242
+ const errors = formatValidationErrors(error);
245
243
  const message = createErrorMessage(errors, "Invalid request");
246
- return res.status(400).json({
244
+ res.status(400).json({
247
245
  success: false,
248
246
  error: "Validation failed",
249
247
  message,
250
248
  errors,
251
249
  timestamp: new Date().toISOString(),
252
250
  });
251
+ return;
253
252
  }
254
- next(_error);
253
+ next(error);
255
254
  }
256
255
  };
257
256
  }
@@ -268,19 +267,20 @@ export function validateParams(schema, options) {
268
267
  }
269
268
  next();
270
269
  }
271
- catch (_error) {
272
- if (_error instanceof ZodError) {
273
- const errors = formatValidationErrors(_error);
270
+ catch (error) {
271
+ if (error instanceof ZodError) {
272
+ const errors = formatValidationErrors(error);
274
273
  const message = createErrorMessage(errors, "Invalid parameters");
275
- return res.status(400).json({
274
+ res.status(400).json({
276
275
  success: false,
277
276
  error: "Invalid parameters",
278
277
  message,
279
278
  errors,
280
279
  timestamp: new Date().toISOString(),
281
280
  });
281
+ return;
282
282
  }
283
- next(_error);
283
+ next(error);
284
284
  }
285
285
  };
286
286
  }
@@ -297,80 +297,82 @@ export function validateQuery(schema, options) {
297
297
  }
298
298
  next();
299
299
  }
300
- catch (_error) {
301
- if (_error instanceof ZodError) {
302
- const errors = formatValidationErrors(_error);
300
+ catch (error) {
301
+ if (error instanceof ZodError) {
302
+ const errors = formatValidationErrors(error);
303
303
  const message = createErrorMessage(errors, "Invalid query");
304
- return res.status(400).json({
304
+ res.status(400).json({
305
305
  success: false,
306
306
  error: "Invalid query parameters",
307
307
  message,
308
308
  errors,
309
309
  timestamp: new Date().toISOString(),
310
310
  });
311
+ return;
311
312
  }
312
- next(_error);
313
+ next(error);
313
314
  }
314
315
  };
315
316
  }
316
317
  /**
317
318
  * Combined validation for body, params, and query
318
319
  */
319
- export function validateRequest(schemas, options) {
320
+ export function validateRequest(validationSchemas, options) {
320
321
  const opts = { ...defaultOptions, ...options };
321
322
  return (req, res, next) => {
322
323
  const errors = [];
323
324
  // Validate body
324
- if (schemas.body) {
325
+ if (validationSchemas.body) {
325
326
  try {
326
- const value = schemas.body.parse(req.body);
327
+ const value = validationSchemas.body.parse(req.body);
327
328
  if (opts.stripUnknown) {
328
329
  req.body = value;
329
330
  }
330
331
  }
331
- catch (_error) {
332
- if (_error instanceof ZodError) {
333
- errors.push(...formatValidationErrors(_error));
332
+ catch (error) {
333
+ if (error instanceof ZodError) {
334
+ errors.push(...formatValidationErrors(error));
334
335
  }
335
336
  }
336
337
  }
337
338
  // Validate params
338
- if (schemas.params) {
339
+ if (validationSchemas.params) {
339
340
  try {
340
- const value = schemas.params.parse(req.params);
341
+ const value = validationSchemas.params.parse(req.params);
341
342
  if (opts.stripUnknown) {
342
343
  req.params = value;
343
344
  }
344
345
  }
345
- catch (_error) {
346
- if (_error instanceof ZodError) {
347
- errors.push(...formatValidationErrors(_error));
346
+ catch (error) {
347
+ if (error instanceof ZodError) {
348
+ errors.push(...formatValidationErrors(error));
348
349
  }
349
350
  }
350
351
  }
351
352
  // Validate query
352
- if (schemas.query) {
353
+ if (validationSchemas.query) {
353
354
  try {
354
- const value = schemas.query.parse(req.query);
355
+ const value = validationSchemas.query.parse(req.query);
355
356
  if (opts.stripUnknown) {
356
357
  req.query = value;
357
358
  }
358
359
  }
359
- catch (_error) {
360
- if (_error instanceof ZodError) {
361
- errors.push(...formatValidationErrors(_error));
360
+ catch (error) {
361
+ if (error instanceof ZodError) {
362
+ errors.push(...formatValidationErrors(error));
362
363
  }
363
364
  }
364
365
  }
365
366
  if (errors.length > 0) {
366
367
  const message = createErrorMessage(errors, "Request validation failed");
367
- return res.status(400).json({
368
+ res.status(400).json({
368
369
  success: false,
369
370
  error: "Validation failed",
370
371
  message,
371
372
  errors,
372
373
  timestamp: new Date().toISOString(),
373
374
  });
375
+ return;
374
376
  }
375
377
  next();
376
378
  };
@@ -384,16 +386,17 @@ export function validateAsync(validationFn) {
384
386
  await validationFn(req);
385
387
  next();
386
388
  }
387
- catch (_error) {
388
- const validationError = {
389
- field: _error.field || "unknown",
390
- message: _error.message || "Validation failed",
389
+ catch (error) {
390
+ const validationError = error;
391
+ const fieldError = {
392
+ field: validationError.field || "unknown",
393
+ message: validationError.message || "Validation failed",
391
394
  };
392
395
  res.status(400).json({
393
396
  success: false,
394
397
  error: "Validation failed",
395
- message: _error.message,
396
- errors: [validationError],
398
+ message: fieldError.message,
399
+ errors: [fieldError],
397
400
  timestamp: new Date().toISOString(),
398
401
  });
399
402
  }
@@ -405,7 +408,8 @@ export function validateAsync(validationFn) {
405
408
  export function validateIf(condition, schema, options) {
406
409
  return (req, res, next) => {
407
410
  if (condition(req)) {
408
- return validate(schema, options)(req, res, next);
411
+ validate(schema, options)(req, res, next);
412
+ return;
409
413
  }
410
414
  next();
411
415
  };
@@ -459,10 +463,11 @@ export const compose = {
459
463
  * Omit specific fields from a schema
460
464
  */
461
465
  omit: (schema, fields) => {
462
- return schema.omit(fields.reduce((acc, field) => {
466
+ const omitKeys = fields.reduce((acc, field) => {
463
467
  acc[field] = true;
464
468
  return acc;
465
- }, {}));
469
+ }, {});
470
+ return schema.omit(omitKeys);
466
471
  },
467
472
  };
468
473
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/middleware/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/middleware/validation.ts"],"names":[],"mappings":"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"}