@spinajs/http 2.0.481 → 2.0.484

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 (189) hide show
  1. package/lib/cjs/config/http.d.ts +15 -7
  2. package/lib/cjs/config/http.d.ts.map +1 -1
  3. package/lib/cjs/config/http.js +28 -9
  4. package/lib/cjs/config/http.js.map +1 -1
  5. package/lib/cjs/controllers.d.ts.map +1 -1
  6. package/lib/cjs/controllers.js +48 -12
  7. package/lib/cjs/controllers.js.map +1 -1
  8. package/lib/cjs/cookie.d.ts +8 -0
  9. package/lib/cjs/cookie.d.ts.map +1 -0
  10. package/lib/cjs/cookie.js +40 -0
  11. package/lib/cjs/cookie.js.map +1 -0
  12. package/lib/cjs/decorators.d.ts +46 -4
  13. package/lib/cjs/decorators.d.ts.map +1 -1
  14. package/lib/cjs/decorators.js +127 -23
  15. package/lib/cjs/decorators.js.map +1 -1
  16. package/lib/cjs/error.js +3 -3
  17. package/lib/cjs/error.js.map +1 -1
  18. package/lib/cjs/file-middlewares/validation.d.ts +11 -0
  19. package/lib/cjs/file-middlewares/validation.d.ts.map +1 -1
  20. package/lib/cjs/file-middlewares/validation.js +52 -9
  21. package/lib/cjs/file-middlewares/validation.js.map +1 -1
  22. package/lib/cjs/file-middlewares/zip.d.ts.map +1 -1
  23. package/lib/cjs/file-middlewares/zip.js +6 -1
  24. package/lib/cjs/file-middlewares/zip.js.map +1 -1
  25. package/lib/cjs/index.d.ts +1 -0
  26. package/lib/cjs/index.d.ts.map +1 -1
  27. package/lib/cjs/index.js +1 -0
  28. package/lib/cjs/index.js.map +1 -1
  29. package/lib/cjs/interfaces.d.ts +95 -1
  30. package/lib/cjs/interfaces.d.ts.map +1 -1
  31. package/lib/cjs/interfaces.js +100 -4
  32. package/lib/cjs/interfaces.js.map +1 -1
  33. package/lib/cjs/middlewares/PerfRollup.d.ts +19 -0
  34. package/lib/cjs/middlewares/PerfRollup.d.ts.map +1 -0
  35. package/lib/cjs/middlewares/PerfRollup.js +61 -0
  36. package/lib/cjs/middlewares/PerfRollup.js.map +1 -0
  37. package/lib/cjs/middlewares/RequestId.d.ts +1 -2
  38. package/lib/cjs/middlewares/RequestId.d.ts.map +1 -1
  39. package/lib/cjs/middlewares/RequestId.js +19 -5
  40. package/lib/cjs/middlewares/RequestId.js.map +1 -1
  41. package/lib/cjs/middlewares/ResponseTime.d.ts +1 -2
  42. package/lib/cjs/middlewares/ResponseTime.d.ts.map +1 -1
  43. package/lib/cjs/middlewares/ResponseTime.js +29 -11
  44. package/lib/cjs/middlewares/ResponseTime.js.map +1 -1
  45. package/lib/cjs/response-methods/file.d.ts.map +1 -1
  46. package/lib/cjs/response-methods/file.js +47 -21
  47. package/lib/cjs/response-methods/file.js.map +1 -1
  48. package/lib/cjs/response-methods/index.d.ts +3 -0
  49. package/lib/cjs/response-methods/index.d.ts.map +1 -1
  50. package/lib/cjs/response-methods/index.js +3 -0
  51. package/lib/cjs/response-methods/index.js.map +1 -1
  52. package/lib/cjs/response-methods/redirect.d.ts +11 -4
  53. package/lib/cjs/response-methods/redirect.d.ts.map +1 -1
  54. package/lib/cjs/response-methods/redirect.js +14 -4
  55. package/lib/cjs/response-methods/redirect.js.map +1 -1
  56. package/lib/cjs/response-methods/xml.d.ts +17 -0
  57. package/lib/cjs/response-methods/xml.d.ts.map +1 -0
  58. package/lib/cjs/response-methods/xml.js +26 -0
  59. package/lib/cjs/response-methods/xml.js.map +1 -0
  60. package/lib/cjs/responses.d.ts +10 -0
  61. package/lib/cjs/responses.d.ts.map +1 -1
  62. package/lib/cjs/responses.js +94 -35
  63. package/lib/cjs/responses.js.map +1 -1
  64. package/lib/cjs/route-args/FromBody.d.ts.map +1 -1
  65. package/lib/cjs/route-args/FromBody.js +6 -1
  66. package/lib/cjs/route-args/FromBody.js.map +1 -1
  67. package/lib/cjs/route-args/FromForm.d.ts +1 -1
  68. package/lib/cjs/route-args/FromForm.d.ts.map +1 -1
  69. package/lib/cjs/route-args/FromForm.js +116 -37
  70. package/lib/cjs/route-args/FromForm.js.map +1 -1
  71. package/lib/cjs/route-args/FromXml.d.ts +17 -0
  72. package/lib/cjs/route-args/FromXml.d.ts.map +1 -0
  73. package/lib/cjs/route-args/FromXml.js +55 -0
  74. package/lib/cjs/route-args/FromXml.js.map +1 -0
  75. package/lib/cjs/route-args/RequestContext.d.ts +43 -0
  76. package/lib/cjs/route-args/RequestContext.d.ts.map +1 -0
  77. package/lib/cjs/route-args/RequestContext.js +94 -0
  78. package/lib/cjs/route-args/RequestContext.js.map +1 -0
  79. package/lib/cjs/route-args/RequestFields.d.ts +1 -1
  80. package/lib/cjs/route-args/RequestFields.d.ts.map +1 -1
  81. package/lib/cjs/route-args/RequestFields.js +1 -0
  82. package/lib/cjs/route-args/RequestFields.js.map +1 -1
  83. package/lib/cjs/route-args/RouteArgs.d.ts.map +1 -1
  84. package/lib/cjs/route-args/RouteArgs.js +50 -10
  85. package/lib/cjs/route-args/RouteArgs.js.map +1 -1
  86. package/lib/cjs/route-args/index.d.ts +2 -0
  87. package/lib/cjs/route-args/index.d.ts.map +1 -1
  88. package/lib/cjs/route-args/index.js +2 -0
  89. package/lib/cjs/route-args/index.js.map +1 -1
  90. package/lib/cjs/server.d.ts +36 -3
  91. package/lib/cjs/server.d.ts.map +1 -1
  92. package/lib/cjs/server.js +131 -42
  93. package/lib/cjs/server.js.map +1 -1
  94. package/lib/mjs/config/http.d.ts +15 -7
  95. package/lib/mjs/config/http.d.ts.map +1 -1
  96. package/lib/mjs/config/http.js +28 -9
  97. package/lib/mjs/config/http.js.map +1 -1
  98. package/lib/mjs/controllers.d.ts.map +1 -1
  99. package/lib/mjs/controllers.js +46 -10
  100. package/lib/mjs/controllers.js.map +1 -1
  101. package/lib/mjs/cookie.d.ts +8 -0
  102. package/lib/mjs/cookie.d.ts.map +1 -0
  103. package/lib/mjs/cookie.js +32 -0
  104. package/lib/mjs/cookie.js.map +1 -0
  105. package/lib/mjs/decorators.d.ts +46 -4
  106. package/lib/mjs/decorators.d.ts.map +1 -1
  107. package/lib/mjs/decorators.js +121 -24
  108. package/lib/mjs/decorators.js.map +1 -1
  109. package/lib/mjs/error.js +3 -3
  110. package/lib/mjs/error.js.map +1 -1
  111. package/lib/mjs/file-middlewares/validation.d.ts +11 -0
  112. package/lib/mjs/file-middlewares/validation.d.ts.map +1 -1
  113. package/lib/mjs/file-middlewares/validation.js +53 -10
  114. package/lib/mjs/file-middlewares/validation.js.map +1 -1
  115. package/lib/mjs/file-middlewares/zip.d.ts.map +1 -1
  116. package/lib/mjs/file-middlewares/zip.js +6 -1
  117. package/lib/mjs/file-middlewares/zip.js.map +1 -1
  118. package/lib/mjs/index.d.ts +1 -0
  119. package/lib/mjs/index.d.ts.map +1 -1
  120. package/lib/mjs/index.js +1 -0
  121. package/lib/mjs/index.js.map +1 -1
  122. package/lib/mjs/interfaces.d.ts +95 -1
  123. package/lib/mjs/interfaces.d.ts.map +1 -1
  124. package/lib/mjs/interfaces.js +65 -2
  125. package/lib/mjs/interfaces.js.map +1 -1
  126. package/lib/mjs/middlewares/PerfRollup.d.ts +19 -0
  127. package/lib/mjs/middlewares/PerfRollup.d.ts.map +1 -0
  128. package/lib/mjs/middlewares/PerfRollup.js +58 -0
  129. package/lib/mjs/middlewares/PerfRollup.js.map +1 -0
  130. package/lib/mjs/middlewares/RequestId.d.ts +1 -2
  131. package/lib/mjs/middlewares/RequestId.d.ts.map +1 -1
  132. package/lib/mjs/middlewares/RequestId.js +19 -5
  133. package/lib/mjs/middlewares/RequestId.js.map +1 -1
  134. package/lib/mjs/middlewares/ResponseTime.d.ts +1 -2
  135. package/lib/mjs/middlewares/ResponseTime.d.ts.map +1 -1
  136. package/lib/mjs/middlewares/ResponseTime.js +29 -11
  137. package/lib/mjs/middlewares/ResponseTime.js.map +1 -1
  138. package/lib/mjs/response-methods/file.d.ts.map +1 -1
  139. package/lib/mjs/response-methods/file.js +41 -15
  140. package/lib/mjs/response-methods/file.js.map +1 -1
  141. package/lib/mjs/response-methods/index.d.ts +3 -0
  142. package/lib/mjs/response-methods/index.d.ts.map +1 -1
  143. package/lib/mjs/response-methods/index.js +3 -0
  144. package/lib/mjs/response-methods/index.js.map +1 -1
  145. package/lib/mjs/response-methods/redirect.d.ts +11 -4
  146. package/lib/mjs/response-methods/redirect.d.ts.map +1 -1
  147. package/lib/mjs/response-methods/redirect.js +15 -5
  148. package/lib/mjs/response-methods/redirect.js.map +1 -1
  149. package/lib/mjs/response-methods/xml.d.ts +17 -0
  150. package/lib/mjs/response-methods/xml.d.ts.map +1 -0
  151. package/lib/mjs/response-methods/xml.js +22 -0
  152. package/lib/mjs/response-methods/xml.js.map +1 -0
  153. package/lib/mjs/responses.d.ts +10 -0
  154. package/lib/mjs/responses.d.ts.map +1 -1
  155. package/lib/mjs/responses.js +93 -35
  156. package/lib/mjs/responses.js.map +1 -1
  157. package/lib/mjs/route-args/FromBody.d.ts.map +1 -1
  158. package/lib/mjs/route-args/FromBody.js +6 -1
  159. package/lib/mjs/route-args/FromBody.js.map +1 -1
  160. package/lib/mjs/route-args/FromForm.d.ts +1 -1
  161. package/lib/mjs/route-args/FromForm.d.ts.map +1 -1
  162. package/lib/mjs/route-args/FromForm.js +114 -38
  163. package/lib/mjs/route-args/FromForm.js.map +1 -1
  164. package/lib/mjs/route-args/FromXml.d.ts +17 -0
  165. package/lib/mjs/route-args/FromXml.d.ts.map +1 -0
  166. package/lib/mjs/route-args/FromXml.js +52 -0
  167. package/lib/mjs/route-args/FromXml.js.map +1 -0
  168. package/lib/mjs/route-args/RequestContext.d.ts +43 -0
  169. package/lib/mjs/route-args/RequestContext.d.ts.map +1 -0
  170. package/lib/mjs/route-args/RequestContext.js +91 -0
  171. package/lib/mjs/route-args/RequestContext.js.map +1 -0
  172. package/lib/mjs/route-args/RequestFields.d.ts +1 -1
  173. package/lib/mjs/route-args/RequestFields.d.ts.map +1 -1
  174. package/lib/mjs/route-args/RequestFields.js +1 -0
  175. package/lib/mjs/route-args/RequestFields.js.map +1 -1
  176. package/lib/mjs/route-args/RouteArgs.d.ts.map +1 -1
  177. package/lib/mjs/route-args/RouteArgs.js +51 -11
  178. package/lib/mjs/route-args/RouteArgs.js.map +1 -1
  179. package/lib/mjs/route-args/index.d.ts +2 -0
  180. package/lib/mjs/route-args/index.d.ts.map +1 -1
  181. package/lib/mjs/route-args/index.js +2 -0
  182. package/lib/mjs/route-args/index.js.map +1 -1
  183. package/lib/mjs/server.d.ts +36 -3
  184. package/lib/mjs/server.d.ts.map +1 -1
  185. package/lib/mjs/server.js +132 -43
  186. package/lib/mjs/server.js.map +1 -1
  187. package/lib/tsconfig.cjs.tsbuildinfo +1 -1
  188. package/lib/tsconfig.mjs.tsbuildinfo +1 -1
  189. package/package.json +17 -12
@@ -21,6 +21,13 @@ exports.Body = Body;
21
21
  exports.Param = Param;
22
22
  exports.Header = Header;
23
23
  exports.File = File;
24
+ exports.Files = Files;
25
+ exports.Ip = Ip;
26
+ exports.RequestId = RequestId;
27
+ exports.UserAgent = UserAgent;
28
+ exports.Referer = Referer;
29
+ exports.RawBody = RawBody;
30
+ exports.FromXml = FromXml;
24
31
  exports.CsvFile = CsvFile;
25
32
  exports.JsonFile = JsonFile;
26
33
  exports.Form = Form;
@@ -46,27 +53,72 @@ const exceptions_1 = require("@spinajs/exceptions");
46
53
  exports.CONTROLLED_DESCRIPTOR_SYMBOL = Symbol('CONTROLLER_SYMBOL');
47
54
  function Controller(callback) {
48
55
  return (target, propertyKey, indexOrDescriptor) => {
49
- let metadata = Reflect.getMetadata(exports.CONTROLLED_DESCRIPTOR_SYMBOL, target.prototype || target);
50
- if (!metadata) {
51
- metadata = {
52
- BasePath: null,
53
- Middlewares: [],
54
- Policies: [],
55
- Routes: new Map(),
56
- // Capture the controller's source file from the V8 stack the first
57
- // time a route decorator runs on this class. The first frame outside
58
- // this module / common transpiler shims is the controller source
59
- // exactly what ControllersCache needs when the controller was added
60
- // through DI rather than the file scan.
61
- SourceFile: captureControllerSourceFile(),
62
- };
63
- Reflect.defineMetadata(exports.CONTROLLED_DESCRIPTOR_SYMBOL, metadata, target.prototype || target);
56
+ const controller = target.prototype || target;
57
+ // True only for the very first decorator that touches THIS class, since
58
+ // getInheritedDescriptor stores own metadata as soon as it is called.
59
+ const isFirstDecorator = !Reflect.getOwnMetadata(exports.CONTROLLED_DESCRIPTOR_SYMBOL, controller);
60
+ // Own metadata per class. Reflect.getMetadata walks the prototype chain, so
61
+ // a controller subclass used to find - and mutate - its parent's descriptor,
62
+ // writing its routes into the package's controller. getInheritedDescriptor
63
+ // hands back a copy pre-populated with everything inherited, so overriding
64
+ // one route leaves the rest of the parent's routes intact.
65
+ const metadata = (0, di_1.getInheritedDescriptor)(controller, exports.CONTROLLED_DESCRIPTOR_SYMBOL, createDefaultControllerDescriptor);
66
+ if (isFirstDecorator) {
67
+ // SourceFile is the one field that must NOT be inherited: a subclass is
68
+ // declared in its own file and ControllersCache.getCache() parses that
69
+ // file looking for the class BY NAME, so an inherited path would send it
70
+ // to the package's file where the subclass does not exist. The collapse
71
+ // otherwise keeps the ancestor's value, so stamp the class's own file
72
+ // here - this is also the only frame from which the V8 stack still points
73
+ // at the controller source rather than at the collapse machinery.
74
+ metadata.SourceFile = captureControllerSourceFile();
75
+ detachInheritedRoutes(metadata);
64
76
  }
65
77
  if (callback) {
66
78
  callback(metadata, target, propertyKey, indexOrDescriptor);
67
79
  }
68
80
  };
69
81
  }
82
+ /**
83
+ * Give this class its own copy of every route it inherited.
84
+ *
85
+ * The collapse rebuilds the Routes Map but copies its entries by reference, and
86
+ * `Route()` hands whatever entry it finds under a member name straight to the
87
+ * route decorators - all of which mutate it in place ( eg. `route.Path = path`,
88
+ * `route.Policies.push(...)` ). Without this, a subclass overriding a single
89
+ * route would rewrite the parent's path, policies and parameters: the same
90
+ * cross-class corruption the own-descriptor change removes one level up, on the
91
+ * most likely override shape of all ( eg. redeclare one route with a new path ).
92
+ *
93
+ * Only the members that are mutated in place need copying. `Parameters` values
94
+ * are patched field by field ( eg. `p.Type = type` in `Parameter()`, and
95
+ * `rParam.Name` filled from the parsed source when the controller is
96
+ * registered ), so the IRouteParameter objects are copied as well. `Options`
97
+ * and `Schema` are only ever assigned wholesale, so sharing those references
98
+ * with the parent is safe.
99
+ */
100
+ function detachInheritedRoutes(descriptor) {
101
+ for (const [member, route] of descriptor.Routes) {
102
+ descriptor.Routes.set(member, {
103
+ ...route,
104
+ Policies: [...route.Policies],
105
+ Middlewares: [...route.Middlewares],
106
+ Parameters: new Map([...route.Parameters].map(([index, parameter]) => [index, { ...parameter }])),
107
+ });
108
+ }
109
+ }
110
+ function createDefaultControllerDescriptor() {
111
+ return {
112
+ BasePath: null,
113
+ Middlewares: [],
114
+ Policies: [],
115
+ Routes: new Map(),
116
+ // Stamped by Controller() right after the collapse, not here - see there
117
+ // for why it must be the class's own file. ControllersCache needs it when
118
+ // the controller was added through DI rather than the file scan.
119
+ SourceFile: undefined,
120
+ };
121
+ }
70
122
  /**
71
123
  * Walk the current V8 stack and return the absolute path of the first frame
72
124
  * that is NOT inside this decorators module or a common transpiler helper.
@@ -82,6 +134,10 @@ function captureControllerSourceFile() {
82
134
  const skipMarkers = [
83
135
  'decorators.ts',
84
136
  'decorators.js',
137
+ // The descriptor collapse machinery in @spinajs/di sits between this module
138
+ // and the controller source whenever it calls back into us, so its frames
139
+ // must never be mistaken for the controller's file.
140
+ 'descriptor-inheritance',
85
141
  'tslib',
86
142
  'reflect-metadata',
87
143
  '__decorate',
@@ -339,24 +395,24 @@ function ParamField() {
339
395
  *
340
396
  * @param schema - parameter json schema for optional validation
341
397
  */
342
- function Query(schema) {
343
- return Route(Parameter(interfaces_js_1.ParameterType.FromQuery, schema));
398
+ function Query(schema, options) {
399
+ return Route(Parameter(interfaces_js_1.ParameterType.FromQuery, schema, options));
344
400
  }
345
401
  /**
346
402
  * Route parameter taken from message body (POST)
347
403
  *
348
404
  * @param schema - parameter json schema for optional validation
349
405
  */
350
- function Body() {
351
- return Route(Parameter(interfaces_js_1.ParameterType.FromBody, null));
406
+ function Body(options) {
407
+ return Route(Parameter(interfaces_js_1.ParameterType.FromBody, null, options));
352
408
  }
353
409
  /**
354
410
  * Route parameter taken from url parameters eg. route/:id
355
411
  *
356
412
  * @param schema - parameter json schema for optional validation
357
413
  */
358
- function Param(schema) {
359
- return Route(Parameter(interfaces_js_1.ParameterType.FromParams, schema));
414
+ function Param(schema, options) {
415
+ return Route(Parameter(interfaces_js_1.ParameterType.FromParams, schema, options));
360
416
  }
361
417
  /**
362
418
  * Gets parameter from request header. If not keyname is provided
@@ -366,8 +422,8 @@ function Param(schema) {
366
422
  * @param schema - schema for validation ( optional )
367
423
  * @returns
368
424
  */
369
- function Header(keyName, schema) {
370
- return Route(Parameter(interfaces_js_1.ParameterType.FromHeader, schema, { key: keyName }));
425
+ function Header(keyName, schema, options) {
426
+ return Route(Parameter(interfaces_js_1.ParameterType.FromHeader, schema, { key: keyName, ...options }));
371
427
  }
372
428
  /**
373
429
  *
@@ -378,6 +434,54 @@ function Header(keyName, schema) {
378
434
  function File(options) {
379
435
  return Route(Parameter(interfaces_js_1.ParameterType.FromFile, null, options));
380
436
  }
437
+ /**
438
+ * Multiple uploaded files for a form field, always returned as an array
439
+ * (even when a single file is sent). Semantic alias over {@link File}.
440
+ *
441
+ * @param options - upload options
442
+ */
443
+ function Files(options) {
444
+ return Route(Parameter(interfaces_js_1.ParameterType.FromFile, null, { ...(options ?? {}), asArray: true }));
445
+ }
446
+ /**
447
+ * Client IP address (as resolved by the RealIp middleware).
448
+ */
449
+ function Ip() {
450
+ return Route(Parameter(interfaces_js_1.ParameterType.Ip, null));
451
+ }
452
+ /**
453
+ * Per-request correlation id (matches the `x-request-id` response header).
454
+ */
455
+ function RequestId() {
456
+ return Route(Parameter(interfaces_js_1.ParameterType.RequestId, null));
457
+ }
458
+ /**
459
+ * `User-Agent` request header.
460
+ */
461
+ function UserAgent() {
462
+ return Route(Parameter(interfaces_js_1.ParameterType.UserAgent, null));
463
+ }
464
+ /**
465
+ * `Referer` (or `Referrer`) request header.
466
+ */
467
+ function Referer() {
468
+ return Route(Parameter(interfaces_js_1.ParameterType.Referer, null));
469
+ }
470
+ /**
471
+ * Raw request body Buffer, for webhook signature verification. Captured for
472
+ * JSON requests via the express.json `verify` hook.
473
+ */
474
+ function RawBody() {
475
+ return Route(Parameter(interfaces_js_1.ParameterType.RawBody, null));
476
+ }
477
+ /**
478
+ * Parses an XML request body into an object.
479
+ *
480
+ * @param options - fast-xml-parser options (optional)
481
+ */
482
+ function FromXml(options) {
483
+ return Route(Parameter(interfaces_js_1.ParameterType.FromXml, null, options));
484
+ }
381
485
  /**
382
486
  * Data taken from cvs file that is uploaded. Actions receives parsed data
383
487
  *
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":"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"}
package/lib/cjs/error.js CHANGED
@@ -32,9 +32,9 @@ function __handle_error__() {
32
32
  ...err,
33
33
  // make sure error message is added
34
34
  message: err.message,
35
- stack: {},
36
35
  };
37
- // in dev mode add stack trace for debugging
36
+ // in dev mode add stack trace for debugging. In production the stack is
37
+ // omitted entirely rather than serialized as an empty object.
38
38
  if (!isProductionEnv) {
39
39
  error.stack = err.stack ? err.stack : err.parameter && err.parameter.stack;
40
40
  }
@@ -45,7 +45,7 @@ function __handle_error__() {
45
45
  response = new httpResponse(error);
46
46
  }
47
47
  else {
48
- logger.warn(`Error type ${error.constructor} dont have assigned http response. Map error to response via _http_error_map__ in DI container`);
48
+ logger.warn(`Error type ${err.constructor?.name} dont have assigned http response. Map error to response via _http_error_map__ in DI container`);
49
49
  response = new serverError_js_1.ServerError(error);
50
50
  }
51
51
  response
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/error.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/error.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,24 @@
1
1
  import { FileUploadMiddleware, FileValidationRules, IUploadedFile, IUploadOptions } from "../interfaces.js";
2
2
  import { Log } from "@spinajs/log-common";
3
+ import { FileInfoService } from "@spinajs/fs";
3
4
  /**
4
5
  * Middleware that validates file before upload eg. check file type, withth, height, size, etc.
5
6
  */
6
7
  export declare class FileValidationMiddleware extends FileUploadMiddleware {
7
8
  protected Rules: FileValidationRules;
8
9
  protected Log: Log;
10
+ protected FileInfo: FileInfoService;
9
11
  constructor(Rules: FileValidationRules);
10
12
  beforeUpload(file: IUploadedFile<any>, _paramOptions: IUploadOptions): Promise<any>;
13
+ /**
14
+ * Type / proportion / resolution rules need content-detected metadata
15
+ * (`file.Info`). It is normally populated by FileInfoMiddleware, but only
16
+ * when the `fileInfo` upload option is set. Fetch it here when it's missing
17
+ * so validation works regardless of upload options — otherwise every rule
18
+ * would fail with a misleading "unable to determine ..." error.
19
+ */
20
+ protected ensureFileInfo(file: IUploadedFile<any>): Promise<void>;
21
+ protected validateSize(file: IUploadedFile<any>): void;
11
22
  protected validateType(file: IUploadedFile<any>): void;
12
23
  protected validateProportions(file: IUploadedFile<any>): IUploadedFile<any> | undefined;
13
24
  protected validateResolution(file: IUploadedFile<any>): void;
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/file-middlewares/validation.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,oBAAoB,EAAE,mBAAmB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7H,OAAO,EAAE,GAAG,EAAU,MAAM,qBAAqB,CAAC;AAIlD;;GAEG;AACH,qBAEa,wBAAyB,SAAQ,oBAAoB;IAIlD,SAAS,CAAC,KAAK,EAAE,mBAAmB;IAFhD,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;gBAEG,KAAK,EAAE,mBAAmB;IAKnC,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,aAAa,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC;IAOhG,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC;IAyC/C,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC;IAoDtD,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC;CAmExD"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/file-middlewares/validation.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,oBAAoB,EAAE,mBAAmB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7H,OAAO,EAAE,GAAG,EAAU,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAI9C;;GAEG;AACH,qBAEa,wBAAyB,SAAQ,oBAAoB;IAOlD,SAAS,CAAC,KAAK,EAAE,mBAAmB;IALhD,SAAS,CAAC,GAAG,EAAG,GAAG,CAAC;IAGpB,SAAS,CAAC,QAAQ,EAAG,eAAe,CAAC;gBAEf,KAAK,EAAE,mBAAmB;IAKnC,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,aAAa,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC;IAgBhG;;;;;;OAMG;cACa,cAAc,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC;IAWvD,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC;IA4B/C,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC;IAyC/C,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC;IAoDtD,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC;CAyDxD"}
@@ -13,6 +13,7 @@ exports.FileValidationMiddleware = void 0;
13
13
  const di_1 = require("@spinajs/di");
14
14
  const interfaces_js_1 = require("../interfaces.js");
15
15
  const log_common_1 = require("@spinajs/log-common");
16
+ const fs_1 = require("@spinajs/fs");
16
17
  const validation_1 = require("@spinajs/validation");
17
18
  /**
18
19
  * Middleware that validates file before upload eg. check file type, withth, height, size, etc.
@@ -23,11 +24,58 @@ let FileValidationMiddleware = class FileValidationMiddleware extends interfaces
23
24
  this.Rules = Rules;
24
25
  }
25
26
  async beforeUpload(file, _paramOptions) {
27
+ // No rules configured -> nothing to validate (and guards against a
28
+ // TypeError if the middleware is resolved without an options object).
29
+ if (!this.Rules) {
30
+ return file;
31
+ }
32
+ await this.ensureFileInfo(file);
33
+ this.validateSize(file);
26
34
  this.validateType(file);
27
35
  this.validateProportions(file);
28
36
  this.validateResolution(file);
29
37
  return file;
30
38
  }
39
+ /**
40
+ * Type / proportion / resolution rules need content-detected metadata
41
+ * (`file.Info`). It is normally populated by FileInfoMiddleware, but only
42
+ * when the `fileInfo` upload option is set. Fetch it here when it's missing
43
+ * so validation works regardless of upload options — otherwise every rule
44
+ * would fail with a misleading "unable to determine ..." error.
45
+ */
46
+ async ensureFileInfo(file) {
47
+ const needsInfo = !!(this.Rules.types?.length || this.Rules.proportions || this.Rules.resolution);
48
+ if (!needsInfo || file.Info) {
49
+ return;
50
+ }
51
+ if (this.FileInfo && file.OriginalFile?.filepath) {
52
+ file.Info = await this.FileInfo.getInfo(file.OriginalFile.filepath);
53
+ }
54
+ }
55
+ validateSize(file) {
56
+ if (!this.Rules.size) {
57
+ return;
58
+ }
59
+ const { min, max } = this.Rules.size;
60
+ if (min !== undefined && file.Size < min) {
61
+ throw new validation_1.ValidationFailed('validation error', [{
62
+ instancePath: '/file/size',
63
+ schemaPath: '#/properties/file/size',
64
+ keyword: 'size',
65
+ params: { min, actual: file.Size },
66
+ message: `File size must be at least ${min} bytes. Got: ${file.Size} bytes`
67
+ }]);
68
+ }
69
+ if (max !== undefined && file.Size > max) {
70
+ throw new validation_1.ValidationFailed('validation error', [{
71
+ instancePath: '/file/size',
72
+ schemaPath: '#/properties/file/size',
73
+ keyword: 'size',
74
+ params: { max, actual: file.Size },
75
+ message: `File size must be at most ${max} bytes. Got: ${file.Size} bytes`
76
+ }]);
77
+ }
78
+ }
31
79
  validateType(file) {
32
80
  if (!this.Rules.types || this.Rules.types.length === 0) {
33
81
  return;
@@ -156,15 +204,6 @@ let FileValidationMiddleware = class FileValidationMiddleware extends interfaces
156
204
  message: `Image width must be lower than ${this.Rules.resolution?.maxWidth}px. Got: ${file.Info.Width}px`
157
205
  }]);
158
206
  }
159
- if (file.Info.Height > this.Rules.resolution?.maxHeight) {
160
- throw new validation_1.ValidationFailed('validation error', [{
161
- instancePath: '/file/height',
162
- schemaPath: '#/properties/file/resolution/height',
163
- keyword: 'resolution',
164
- params: { expected: this.Rules.resolution?.maxHeight, actual: file.Info.Height },
165
- message: `Image height must be lower than ${this.Rules.resolution?.maxHeight}px. Got: ${file.Info.Height}px`
166
- }]);
167
- }
168
207
  }
169
208
  };
170
209
  exports.FileValidationMiddleware = FileValidationMiddleware;
@@ -172,6 +211,10 @@ __decorate([
172
211
  (0, log_common_1.Logger)('http'),
173
212
  __metadata("design:type", log_common_1.Log)
174
213
  ], FileValidationMiddleware.prototype, "Log", void 0);
214
+ __decorate([
215
+ (0, di_1.Autoinject)(),
216
+ __metadata("design:type", fs_1.FileInfoService)
217
+ ], FileValidationMiddleware.prototype, "FileInfo", void 0);
175
218
  exports.FileValidationMiddleware = FileValidationMiddleware = __decorate([
176
219
  (0, di_1.Injectable)(),
177
220
  (0, di_1.NewInstance)(),
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/file-middlewares/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/file-middlewares/validation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"zip.d.ts","sourceRoot":"","sources":["../../../src/file-middlewares/zip.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,GAAG,EAAU,MAAM,qBAAqB,CAAC;AAGlD,qBAEa,kBAAmB,SAAQ,oBAAoB;IAExD,SAAS,CAAC,GAAG,EAAG,GAAG,CAAC;IAEP,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;CAsCnF"}
1
+ {"version":3,"file":"zip.d.ts","sourceRoot":"","sources":["../../../src/file-middlewares/zip.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,GAAG,EAAU,MAAM,qBAAqB,CAAC;AAGlD,qBAEa,kBAAmB,SAAQ,oBAAoB;IAExD,SAAS,CAAC,GAAG,EAAG,GAAG,CAAC;IAEP,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;CA2CnF"}
@@ -32,7 +32,12 @@ let ZipFileTransformer = class ZipFileTransformer extends interfaces_js_1.FileUp
32
32
  this.Log.trace(`[ZIP] Transformed ${originalName} to ${result.asFilePath()}, duration: ${duration}ms`);
33
33
  return {
34
34
  ...file,
35
- BaseName: result.asFilePath(),
35
+ // BaseName must stay a bare filename (see IUploadedFile.BaseName
36
+ // and UnzipFileTransformer). asFilePath() is a fully-resolved
37
+ // absolute path; downstream (ImmediateFileUploader.copy) resolves
38
+ // BaseName against the provider base path again, so an absolute
39
+ // value produces a broken path.
40
+ BaseName: path_1.default.basename(result.asFilePath()),
36
41
  Size: stat.Size,
37
42
  Type: "application/zip",
38
43
  Name: path_1.default.parse(file.Name).name + ".zip",
@@ -1 +1 @@
1
- {"version":3,"file":"zip.js","sourceRoot":"","sources":["../../../src/file-middlewares/zip.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oCAAoD;AACpD,oDAAuE;AACvE,oDAAkD;AAClD,gDAAwB;AAIjB,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,oCAAoB;IAIjD,KAAK,CAAC,YAAY,CAAC,IAAwB;QAC9C,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC;QACnC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC;QAE/B,IAAG,CAAC,IAAI,CAAC,QAAQ,EAAC,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,2CAA2C,IAAI,CAAC,QAAQ,8IAA8I,CAAC,CAAC;QAC5N,CAAC;QAED,IAAI,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,YAAY,EAAE,CAAC,CAAA;YAE3C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,QAAS,CAAC,CAAC;YACtE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;YAE5D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAAC;YAC3D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,qBAAqB,YAAY,OAAO,MAAM,CAAC,UAAU,EAAE,eAAe,QAAQ,IAAI,CAAC,CAAC;YAEvG,OAAO;gBACH,GAAG,IAAI;gBACP,QAAQ,EAAE,MAAM,CAAC,UAAU,EAAE;gBAC7B,IAAI,EAAE,IAAI,CAAC,IAAK;gBAChB,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,MAAM;gBACzC,IAAI,EAAE;oBACF,YAAY,EAAE,YAAY;oBAC1B,YAAY,EAAE,YAAY;iBAC7B;aACJ,CAAA;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,MAAM,GAAG,CAAC;QACd,CAAC;gBACO,CAAC;YACL,MAAM,IAAI,CAAC,QAAS,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;QAC1C,CAAC;IAGL,CAAC;CAEJ,CAAA;AA1CY,gDAAkB;AAEjB;IADT,IAAA,mBAAM,EAAC,MAAM,CAAC;8BACC,gBAAG;+CAAC;6BAFX,kBAAkB;IAF9B,IAAA,eAAU,GAAE;IACZ,IAAA,cAAS,GAAE;GACC,kBAAkB,CA0C9B"}
1
+ {"version":3,"file":"zip.js","sourceRoot":"","sources":["../../../src/file-middlewares/zip.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oCAAoD;AACpD,oDAAuE;AACvE,oDAAkD;AAClD,gDAAwB;AAIjB,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,oCAAoB;IAIjD,KAAK,CAAC,YAAY,CAAC,IAAwB;QAC9C,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC;QACnC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC;QAE/B,IAAG,CAAC,IAAI,CAAC,QAAQ,EAAC,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,2CAA2C,IAAI,CAAC,QAAQ,8IAA8I,CAAC,CAAC;QAC5N,CAAC;QAED,IAAI,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,YAAY,EAAE,CAAC,CAAA;YAE3C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,QAAS,CAAC,CAAC;YACtE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;YAE5D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,YAAY,EAAE,CAAC,CAAC;YAC3D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,qBAAqB,YAAY,OAAO,MAAM,CAAC,UAAU,EAAE,eAAe,QAAQ,IAAI,CAAC,CAAC;YAEvG,OAAO;gBACH,GAAG,IAAI;gBACP,iEAAiE;gBACjE,8DAA8D;gBAC9D,kEAAkE;gBAClE,gEAAgE;gBAChE,gCAAgC;gBAChC,QAAQ,EAAE,cAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;gBAC5C,IAAI,EAAE,IAAI,CAAC,IAAK;gBAChB,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,cAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,MAAM;gBACzC,IAAI,EAAE;oBACF,YAAY,EAAE,YAAY;oBAC1B,YAAY,EAAE,YAAY;iBAC7B;aACJ,CAAA;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,MAAM,GAAG,CAAC;QACd,CAAC;gBACO,CAAC;YACL,MAAM,IAAI,CAAC,QAAS,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;QAC1C,CAAC;IAGL,CAAC;CAEJ,CAAA;AA/CY,gDAAkB;AAEjB;IADT,IAAA,mBAAM,EAAC,MAAM,CAAC;8BACC,gBAAG;+CAAC;6BAFX,kBAAkB;IAF9B,IAAA,eAAU,GAAE;IACZ,IAAA,cAAS,GAAE;GACC,kBAAkB,CA+C9B"}
@@ -16,4 +16,5 @@ export * from './middlewares/Compression.js';
16
16
  export * from './middlewares/Cors.js';
17
17
  export * from './middlewares/SlowRequestWarning.js';
18
18
  export * from './middlewares/ServerTiming.js';
19
+ export * from './middlewares/PerfRollup.js';
19
20
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,qCAAqC,CAAC;AACpD,cAAc,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,qCAAqC,CAAC;AACpD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC"}
package/lib/cjs/index.js CHANGED
@@ -32,4 +32,5 @@ __exportStar(require("./middlewares/Compression.js"), exports);
32
32
  __exportStar(require("./middlewares/Cors.js"), exports);
33
33
  __exportStar(require("./middlewares/SlowRequestWarning.js"), exports);
34
34
  __exportStar(require("./middlewares/ServerTiming.js"), exports);
35
+ __exportStar(require("./middlewares/PerfRollup.js"), exports);
35
36
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,8DAA4C;AAC5C,kDAAgC;AAChC,iDAA+B;AAC/B,wDAAsC;AACtC,mDAAiC;AACjC,8CAA4B;AAC5B,0DAAwC;AACxC,8DAA4C;AAC5C,iDAA+B;AAC/B,6CAA2B;AAC3B,4DAA0C;AAC1C,gEAA8C;AAC9C,6DAA2C;AAC3C,+DAA6C;AAC7C,wDAAsC;AACtC,sEAAoD;AACpD,gEAA8C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,8DAA4C;AAC5C,kDAAgC;AAChC,iDAA+B;AAC/B,wDAAsC;AACtC,mDAAiC;AACjC,8CAA4B;AAC5B,0DAAwC;AACxC,8DAA4C;AAC5C,iDAA+B;AAC/B,6CAA2B;AAC3B,4DAA0C;AAC1C,gEAA8C;AAC9C,6DAA2C;AAC3C,+DAA6C;AAC7C,wDAAsC;AACtC,sEAAoD;AACpD,gEAA8C;AAC9C,8DAA4C"}