exisjs 0.7.5 → 0.7.6

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 (164) hide show
  1. package/dist/cli/commands/dev.d.ts.map +1 -1
  2. package/dist/cli/commands/dev.js +156 -85
  3. package/dist/cli/commands/dev.js.map +1 -1
  4. package/dist/cli/commands/start.d.ts.map +1 -1
  5. package/dist/cli/commands/start.js +54 -16
  6. package/dist/cli/commands/start.js.map +1 -1
  7. package/dist/cli/index.js +10 -1
  8. package/dist/cli/index.js.map +1 -1
  9. package/dist/cli/manifest.d.ts.map +1 -1
  10. package/dist/cli/manifest.js +106 -13
  11. package/dist/cli/manifest.js.map +1 -1
  12. package/dist/cli/resolve-aliases.d.ts +1 -1
  13. package/dist/cli/resolve-aliases.d.ts.map +1 -1
  14. package/dist/cli/resolve-aliases.js +30 -13
  15. package/dist/cli/resolve-aliases.js.map +1 -1
  16. package/dist/config/config.d.ts +3 -1
  17. package/dist/config/config.d.ts.map +1 -1
  18. package/dist/config/config.js.map +1 -1
  19. package/dist/config/types.d.ts +2 -0
  20. package/dist/config/types.d.ts.map +1 -1
  21. package/dist/decorators/middleware.d.ts +65 -2
  22. package/dist/decorators/middleware.d.ts.map +1 -1
  23. package/dist/decorators/middleware.js +148 -62
  24. package/dist/decorators/middleware.js.map +1 -1
  25. package/dist/decorators/params.d.ts +5 -0
  26. package/dist/decorators/params.d.ts.map +1 -1
  27. package/dist/decorators/params.js +11 -1
  28. package/dist/decorators/params.js.map +1 -1
  29. package/dist/decorators/response.d.ts.map +1 -1
  30. package/dist/decorators/response.js +32 -22
  31. package/dist/decorators/response.js.map +1 -1
  32. package/dist/di/container.d.ts.map +1 -1
  33. package/dist/di/container.js +6 -1
  34. package/dist/di/container.js.map +1 -1
  35. package/dist/docs/content/cli/commands.mdx +1 -1
  36. package/dist/docs/content/controllers.mdx +127 -10
  37. package/dist/docs/content/decorators.mdx +22 -4
  38. package/dist/docs/content/introduction.mdx +7 -7
  39. package/dist/docs/content/middleware.mdx +269 -6
  40. package/dist/docs/content/requests.mdx +180 -6
  41. package/dist/docs/content/responses.mdx +283 -32
  42. package/dist/docs/content/routing.mdx +46 -0
  43. package/dist/docs/content/validation.mdx +190 -11
  44. package/dist/docs/reference/context.mdx +11 -0
  45. package/dist/docs/reference/decorators.mdx +14 -4
  46. package/dist/docs/reference/error.mdx +44 -0
  47. package/dist/docs/reference/logger.mdx +175 -43
  48. package/dist/docs/reference/middleware.mdx +31 -0
  49. package/dist/docs/reference/router.mdx +22 -0
  50. package/dist/docs/reference/validator.mdx +83 -23
  51. package/dist/error/errors.d.ts.map +1 -1
  52. package/dist/error/errors.js +95 -43
  53. package/dist/error/errors.js.map +1 -1
  54. package/dist/error/index.d.ts +1 -0
  55. package/dist/error/index.d.ts.map +1 -1
  56. package/dist/error/index.js +11 -1
  57. package/dist/error/index.js.map +1 -1
  58. package/dist/error/overlay.d.ts +42 -0
  59. package/dist/error/overlay.d.ts.map +1 -0
  60. package/dist/error/overlay.js +306 -0
  61. package/dist/error/overlay.js.map +1 -0
  62. package/dist/index.d.ts +1 -0
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +22 -1
  65. package/dist/index.js.map +1 -1
  66. package/dist/lib/start-server.js +33 -7
  67. package/dist/lib/start-server.js.map +1 -1
  68. package/dist/logger/index.d.ts +1 -1
  69. package/dist/logger/index.d.ts.map +1 -1
  70. package/dist/logger/index.js +9 -1
  71. package/dist/logger/index.js.map +1 -1
  72. package/dist/middleware/guard.d.ts +2 -2
  73. package/dist/middleware/guard.d.ts.map +1 -1
  74. package/dist/middleware/guard.js.map +1 -1
  75. package/dist/middleware/ip-filter.d.ts +1 -0
  76. package/dist/middleware/ip-filter.d.ts.map +1 -1
  77. package/dist/middleware/ip-filter.js +2 -0
  78. package/dist/middleware/ip-filter.js.map +1 -1
  79. package/dist/middleware/middleware.d.ts +2 -2
  80. package/dist/middleware/middleware.d.ts.map +1 -1
  81. package/dist/middleware/middleware.js +20 -2
  82. package/dist/middleware/middleware.js.map +1 -1
  83. package/dist/middleware/security.d.ts +43 -1
  84. package/dist/middleware/security.d.ts.map +1 -1
  85. package/dist/middleware/security.js +101 -0
  86. package/dist/middleware/security.js.map +1 -1
  87. package/dist/response/index.d.ts +229 -6
  88. package/dist/response/index.d.ts.map +1 -1
  89. package/dist/response/index.js +272 -2
  90. package/dist/response/index.js.map +1 -1
  91. package/dist/router/boundary.d.ts +17 -9
  92. package/dist/router/boundary.d.ts.map +1 -1
  93. package/dist/router/boundary.js.map +1 -1
  94. package/dist/router/controller-registrar.d.ts.map +1 -1
  95. package/dist/router/controller-registrar.js +56 -1
  96. package/dist/router/controller-registrar.js.map +1 -1
  97. package/dist/router/index.d.ts +2 -2
  98. package/dist/router/index.d.ts.map +1 -1
  99. package/dist/router/index.js +2 -1
  100. package/dist/router/index.js.map +1 -1
  101. package/dist/router/route-builder.d.ts +70 -36
  102. package/dist/router/route-builder.d.ts.map +1 -1
  103. package/dist/router/route-builder.js +13 -15
  104. package/dist/router/route-builder.js.map +1 -1
  105. package/dist/router/route-scanner.d.ts.map +1 -1
  106. package/dist/router/route-scanner.js +24 -2
  107. package/dist/router/route-scanner.js.map +1 -1
  108. package/dist/router/router.d.ts.map +1 -1
  109. package/dist/router/router.js +35 -17
  110. package/dist/router/router.js.map +1 -1
  111. package/dist/router/types.d.ts +8 -0
  112. package/dist/router/types.d.ts.map +1 -1
  113. package/dist/server/app.d.ts +1 -0
  114. package/dist/server/app.d.ts.map +1 -1
  115. package/dist/server/app.js +10 -0
  116. package/dist/server/app.js.map +1 -1
  117. package/dist/server/bootstrapper.d.ts.map +1 -1
  118. package/dist/server/bootstrapper.js +91 -30
  119. package/dist/server/bootstrapper.js.map +1 -1
  120. package/dist/server/cluster.d.ts.map +1 -1
  121. package/dist/server/cluster.js +13 -2
  122. package/dist/server/cluster.js.map +1 -1
  123. package/dist/server/context.d.ts +8 -0
  124. package/dist/server/context.d.ts.map +1 -1
  125. package/dist/server/context.js +50 -6
  126. package/dist/server/context.js.map +1 -1
  127. package/dist/server/lifecycle.d.ts +22 -0
  128. package/dist/server/lifecycle.d.ts.map +1 -0
  129. package/dist/server/lifecycle.js +106 -0
  130. package/dist/server/lifecycle.js.map +1 -0
  131. package/dist/server/request-handler.d.ts +1 -0
  132. package/dist/server/request-handler.d.ts.map +1 -1
  133. package/dist/server/request-handler.js +27 -17
  134. package/dist/server/request-handler.js.map +1 -1
  135. package/dist/server/request.d.ts.map +1 -1
  136. package/dist/server/request.js +18 -0
  137. package/dist/server/request.js.map +1 -1
  138. package/dist/server/response.d.ts +10 -1
  139. package/dist/server/response.d.ts.map +1 -1
  140. package/dist/server/response.js +154 -2
  141. package/dist/server/response.js.map +1 -1
  142. package/dist/testing/index.d.ts.map +1 -1
  143. package/dist/testing/index.js +6 -1
  144. package/dist/testing/index.js.map +1 -1
  145. package/dist/testing/mocks.d.ts.map +1 -1
  146. package/dist/testing/mocks.js +15 -3
  147. package/dist/testing/mocks.js.map +1 -1
  148. package/dist/utils/logger.d.ts +8 -0
  149. package/dist/utils/logger.d.ts.map +1 -1
  150. package/dist/utils/logger.js +184 -1
  151. package/dist/utils/logger.js.map +1 -1
  152. package/dist/validator/tex-types.d.ts +2 -1
  153. package/dist/validator/tex-types.d.ts.map +1 -1
  154. package/dist/validator/tex-types.js +2 -1
  155. package/dist/validator/tex-types.js.map +1 -1
  156. package/dist/validator/tex.d.ts +31 -15
  157. package/dist/validator/tex.d.ts.map +1 -1
  158. package/dist/validator/tex.js +280 -42
  159. package/dist/validator/tex.js.map +1 -1
  160. package/package.json +4 -4
  161. package/dist/dev/error-overlay.d.ts +0 -3
  162. package/dist/dev/error-overlay.d.ts.map +0 -1
  163. package/dist/dev/error-overlay.js +0 -118
  164. package/dist/dev/error-overlay.js.map +0 -1
@@ -1,19 +1,289 @@
1
1
  "use strict";
2
+ // ─── Standard Response Envelope Types ─────────────────────────────────────────
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.formatSSEEvent = exports.SSEStream = exports.ExisResponse = exports.HttpStatus = void 0;
5
+ exports.getStatusText = getStatusText;
6
+ exports.isSuccessStatus = isSuccessStatus;
7
+ exports.isRedirectStatus = isRedirectStatus;
8
+ exports.isClientError = isClientError;
9
+ exports.isServerError = isServerError;
3
10
  exports.success = success;
11
+ exports.created = created;
12
+ exports.accepted = accepted;
13
+ exports.noContent = noContent;
4
14
  exports.error = error;
5
- function success(data, message) {
15
+ exports.problem = problem;
16
+ exports.paginate = paginate;
17
+ exports.getPaginationSkip = getPaginationSkip;
18
+ exports.json = json;
19
+ exports.redirect = redirect;
20
+ // ─── HTTP Status Codes ────────────────────────────────────────────────────────
21
+ /**
22
+ * Standard HTTP Status Code Constants.
23
+ */
24
+ exports.HttpStatus = {
25
+ // 2xx Success
26
+ OK: 200,
27
+ CREATED: 201,
28
+ ACCEPTED: 202,
29
+ NON_AUTHORITATIVE_INFORMATION: 203,
30
+ NO_CONTENT: 204,
31
+ RESET_CONTENT: 205,
32
+ PARTIAL_CONTENT: 206,
33
+ // 3xx Redirection
34
+ MULTIPLE_CHOICES: 300,
35
+ MOVED_PERMANENTLY: 301,
36
+ FOUND: 302,
37
+ SEE_OTHER: 303,
38
+ NOT_MODIFIED: 304,
39
+ TEMPORARY_REDIRECT: 307,
40
+ PERMANENT_REDIRECT: 308,
41
+ // 4xx Client Errors
42
+ BAD_REQUEST: 400,
43
+ UNAUTHORIZED: 401,
44
+ PAYMENT_REQUIRED: 402,
45
+ FORBIDDEN: 403,
46
+ NOT_FOUND: 404,
47
+ METHOD_NOT_ALLOWED: 405,
48
+ NOT_ACCEPTABLE: 406,
49
+ PROXY_AUTHENTICATION_REQUIRED: 407,
50
+ REQUEST_TIMEOUT: 408,
51
+ CONFLICT: 409,
52
+ GONE: 410,
53
+ LENGTH_REQUIRED: 411,
54
+ PRECONDITION_FAILED: 412,
55
+ PAYLOAD_TOO_LARGE: 413,
56
+ URI_TOO_LONG: 414,
57
+ UNSUPPORTED_MEDIA_TYPE: 415,
58
+ RANGE_NOT_SATISFIABLE: 416,
59
+ EXPECTATION_FAILED: 417,
60
+ IM_A_TEAPOT: 418,
61
+ MISDIRECTED_REQUEST: 421,
62
+ UNPROCESSABLE_ENTITY: 422,
63
+ LOCKED: 423,
64
+ FAILED_DEPENDENCY: 424,
65
+ TOO_EARLY: 425,
66
+ UPGRADE_REQUIRED: 426,
67
+ PRECONDITION_REQUIRED: 428,
68
+ TOO_MANY_REQUESTS: 429,
69
+ REQUEST_HEADER_FIELDS_TOO_LARGE: 431,
70
+ UNAVAILABLE_FOR_LEGAL_REASONS: 451,
71
+ // 5xx Server Errors
72
+ INTERNAL_SERVER_ERROR: 500,
73
+ NOT_IMPLEMENTED: 501,
74
+ BAD_GATEWAY: 502,
75
+ SERVICE_UNAVAILABLE: 503,
76
+ GATEWAY_TIMEOUT: 504,
77
+ HTTP_VERSION_NOT_SUPPORTED: 505,
78
+ VARIANT_ALSO_NEGOTIATES: 506,
79
+ INSUFFICIENT_STORAGE: 507,
80
+ LOOP_DETECTED: 508,
81
+ NOT_EXTENDED: 510,
82
+ NETWORK_AUTHENTICATION_REQUIRED: 511,
83
+ };
84
+ const STATUS_TEXT_MAP = {
85
+ 200: 'OK',
86
+ 201: 'Created',
87
+ 202: 'Accepted',
88
+ 204: 'No Content',
89
+ 301: 'Moved Permanently',
90
+ 302: 'Found',
91
+ 304: 'Not Modified',
92
+ 307: 'Temporary Redirect',
93
+ 308: 'Permanent Redirect',
94
+ 400: 'Bad Request',
95
+ 401: 'Unauthorized',
96
+ 403: 'Forbidden',
97
+ 404: 'Not Found',
98
+ 405: 'Method Not Allowed',
99
+ 406: 'Not Acceptable',
100
+ 409: 'Conflict',
101
+ 410: 'Gone',
102
+ 413: 'Payload Too Large',
103
+ 415: 'Unsupported Media Type',
104
+ 422: 'Unprocessable Entity',
105
+ 429: 'Too Many Requests',
106
+ 500: 'Internal Server Error',
107
+ 501: 'Not Implemented',
108
+ 502: 'Bad Gateway',
109
+ 503: 'Service Unavailable',
110
+ 504: 'Gateway Timeout',
111
+ };
112
+ /**
113
+ * Returns human-readable status text for a given HTTP status code.
114
+ */
115
+ function getStatusText(status) {
116
+ return (STATUS_TEXT_MAP[status] ||
117
+ (status >= 200 && status < 300 ? 'OK' : 'Unknown Status'));
118
+ }
119
+ /**
120
+ * Determines whether a status code represents a 2xx success.
121
+ */
122
+ function isSuccessStatus(status) {
123
+ return status >= 200 && status < 300;
124
+ }
125
+ /**
126
+ * Determines whether a status code represents a 3xx redirection.
127
+ */
128
+ function isRedirectStatus(status) {
129
+ return status >= 300 && status < 400;
130
+ }
131
+ /**
132
+ * Determines whether a status code represents a 4xx client error.
133
+ */
134
+ function isClientError(status) {
135
+ return status >= 400 && status < 500;
136
+ }
137
+ /**
138
+ * Determines whether a status code represents a 5xx server error.
139
+ */
140
+ function isServerError(status) {
141
+ return status >= 500 && status < 600;
142
+ }
143
+ // ─── Response Builders ────────────────────────────────────────────────────────
144
+ /**
145
+ * Creates a standard 200 OK success response envelope.
146
+ *
147
+ * @example
148
+ * return success(user, 'User profile retrieved successfully')
149
+ */
150
+ function success(data, message, meta) {
6
151
  const res = { success: true, data };
7
152
  if (message !== undefined)
8
153
  res.message = message;
154
+ if (meta !== undefined)
155
+ res.meta = meta;
156
+ return res;
157
+ }
158
+ /**
159
+ * Creates a standard 201 Created response envelope.
160
+ *
161
+ * @example
162
+ * return created(newUser, 'User created successfully')
163
+ */
164
+ function created(data, message = 'Created', meta) {
165
+ const res = { success: true, data, message };
166
+ if (meta !== undefined)
167
+ res.meta = meta;
168
+ return res;
169
+ }
170
+ /**
171
+ * Creates a standard 202 Accepted response envelope for async background processing.
172
+ *
173
+ * @example
174
+ * return accepted({ jobId: '123' }, 'Job queued for background execution')
175
+ */
176
+ function accepted(data = null, message = 'Accepted', meta) {
177
+ const res = { success: true, data, message };
178
+ if (meta !== undefined)
179
+ res.meta = meta;
9
180
  return res;
10
181
  }
11
- function error(message, code, details) {
182
+ /**
183
+ * Creates a standard 204 No Content response representation.
184
+ *
185
+ * @example
186
+ * return noContent()
187
+ */
188
+ function noContent() {
189
+ return { success: true, data: null };
190
+ }
191
+ /**
192
+ * Creates a standard error response envelope.
193
+ *
194
+ * @example
195
+ * return error('Invalid credentials', 'AUTH_INVALID_CREDENTIALS', undefined, 401)
196
+ */
197
+ function error(message, code, details, status) {
12
198
  const res = { success: false, error: { message } };
13
199
  if (code !== undefined)
14
200
  res.error.code = code;
15
201
  if (details !== undefined)
16
202
  res.error.details = details;
203
+ if (status !== undefined)
204
+ res.error.status = status;
17
205
  return res;
18
206
  }
207
+ /**
208
+ * Creates a standardized RFC 7807 / RFC 9457 Problem Details object.
209
+ *
210
+ * @example
211
+ * return problem('Invalid Request Body', 422, 'The email field is invalid', {
212
+ * invalidParams: [{ name: 'email', reason: 'Must be a valid email format' }]
213
+ * })
214
+ */
215
+ function problem(title, status, detail, options = {}) {
216
+ return {
217
+ title,
218
+ status,
219
+ ...(detail ? { detail } : {}),
220
+ ...options,
221
+ };
222
+ }
223
+ /**
224
+ * Creates a standardized paginated response envelope.
225
+ *
226
+ * @example
227
+ * return paginate(users, totalCount, { page: 1, limit: 20 })
228
+ */
229
+ function paginate(data, total, options = {}, message, meta) {
230
+ const page = Math.max(1, Number(options.page) || 1);
231
+ const limit = Math.max(1, Number(options.limit) || 20);
232
+ const totalPages = Math.ceil(total / limit);
233
+ const hasNext = page < totalPages;
234
+ const hasPrev = page > 1;
235
+ const res = {
236
+ success: true,
237
+ data,
238
+ pagination: {
239
+ page,
240
+ limit,
241
+ total,
242
+ totalPages,
243
+ hasNextPage: hasNext,
244
+ hasPrevPage: hasPrev,
245
+ hasNext,
246
+ hasPrev,
247
+ },
248
+ };
249
+ if (message !== undefined)
250
+ res.message = message;
251
+ if (meta !== undefined)
252
+ res.meta = meta;
253
+ return res;
254
+ }
255
+ /**
256
+ * Calculates SQL/Database `skip` (offset) and `limit` from pagination query parameters.
257
+ *
258
+ * @example
259
+ * const { skip, limit, page } = getPaginationSkip(req.query)
260
+ * const users = await db.user.findMany({ skip, take: limit })
261
+ */
262
+ function getPaginationSkip(query = {}) {
263
+ const page = Math.max(1, Number(query.page) || 1);
264
+ const limit = Math.max(1, Number(query.limit) || 20);
265
+ return {
266
+ skip: (page - 1) * limit,
267
+ limit,
268
+ page,
269
+ };
270
+ }
271
+ /**
272
+ * Helper to build custom JSON payload structure with optional status code and headers hint.
273
+ */
274
+ function json(data, status = 200, headers = {}) {
275
+ return { data, status, headers };
276
+ }
277
+ /**
278
+ * Helper to create a redirection descriptor.
279
+ */
280
+ function redirect(url, status = 302) {
281
+ return { redirect: url, status };
282
+ }
283
+ // ─── Direct Re-exports ────────────────────────────────────────────────────────
284
+ var response_1 = require("../server/response");
285
+ Object.defineProperty(exports, "ExisResponse", { enumerable: true, get: function () { return response_1.ExisResponse; } });
286
+ var sse_1 = require("../server/sse");
287
+ Object.defineProperty(exports, "SSEStream", { enumerable: true, get: function () { return sse_1.SSEStream; } });
288
+ Object.defineProperty(exports, "formatSSEEvent", { enumerable: true, get: function () { return sse_1.formatSSEEvent; } });
19
289
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/response/index.ts"],"names":[],"mappings":";;AAeA,0BAIC;AAED,sBASC;AAfD,SAAgB,OAAO,CAAI,IAAO,EAAE,OAAgB;IAClD,MAAM,GAAG,GAAuB,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;IACvD,IAAI,OAAO,KAAK,SAAS;QAAE,GAAG,CAAC,OAAO,GAAG,OAAO,CAAA;IAChD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAgB,KAAK,CACnB,OAAe,EACf,IAAa,EACb,OAAiB;IAEjB,MAAM,GAAG,GAAkB,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,CAAA;IACjE,IAAI,IAAI,KAAK,SAAS;QAAE,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAA;IAC7C,IAAI,OAAO,KAAK,SAAS;QAAE,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAA;IACtD,OAAO,GAAG,CAAA;AACZ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/response/index.ts"],"names":[],"mappings":";AAAA,iFAAiF;;;AAqLjF,sCAKC;AAKD,0CAEC;AAKD,4CAEC;AAKD,sCAEC;AAKD,sCAEC;AAUD,0BASC;AAQD,0BAQC;AAQD,4BAQC;AAQD,8BAEC;AAQD,sBAWC;AAUD,0BAYC;AAQD,4BAgCC;AASD,8CAcC;AAKD,oBAMC;AAKD,4BAKC;AAlUD,iFAAiF;AAEjF;;GAEG;AACU,QAAA,UAAU,GAAG;IACxB,cAAc;IACd,EAAE,EAAE,GAAG;IACP,OAAO,EAAE,GAAG;IACZ,QAAQ,EAAE,GAAG;IACb,6BAA6B,EAAE,GAAG;IAClC,UAAU,EAAE,GAAG;IACf,aAAa,EAAE,GAAG;IAClB,eAAe,EAAE,GAAG;IAEpB,kBAAkB;IAClB,gBAAgB,EAAE,GAAG;IACrB,iBAAiB,EAAE,GAAG;IACtB,KAAK,EAAE,GAAG;IACV,SAAS,EAAE,GAAG;IACd,YAAY,EAAE,GAAG;IACjB,kBAAkB,EAAE,GAAG;IACvB,kBAAkB,EAAE,GAAG;IAEvB,oBAAoB;IACpB,WAAW,EAAE,GAAG;IAChB,YAAY,EAAE,GAAG;IACjB,gBAAgB,EAAE,GAAG;IACrB,SAAS,EAAE,GAAG;IACd,SAAS,EAAE,GAAG;IACd,kBAAkB,EAAE,GAAG;IACvB,cAAc,EAAE,GAAG;IACnB,6BAA6B,EAAE,GAAG;IAClC,eAAe,EAAE,GAAG;IACpB,QAAQ,EAAE,GAAG;IACb,IAAI,EAAE,GAAG;IACT,eAAe,EAAE,GAAG;IACpB,mBAAmB,EAAE,GAAG;IACxB,iBAAiB,EAAE,GAAG;IACtB,YAAY,EAAE,GAAG;IACjB,sBAAsB,EAAE,GAAG;IAC3B,qBAAqB,EAAE,GAAG;IAC1B,kBAAkB,EAAE,GAAG;IACvB,WAAW,EAAE,GAAG;IAChB,mBAAmB,EAAE,GAAG;IACxB,oBAAoB,EAAE,GAAG;IACzB,MAAM,EAAE,GAAG;IACX,iBAAiB,EAAE,GAAG;IACtB,SAAS,EAAE,GAAG;IACd,gBAAgB,EAAE,GAAG;IACrB,qBAAqB,EAAE,GAAG;IAC1B,iBAAiB,EAAE,GAAG;IACtB,+BAA+B,EAAE,GAAG;IACpC,6BAA6B,EAAE,GAAG;IAElC,oBAAoB;IACpB,qBAAqB,EAAE,GAAG;IAC1B,eAAe,EAAE,GAAG;IACpB,WAAW,EAAE,GAAG;IAChB,mBAAmB,EAAE,GAAG;IACxB,eAAe,EAAE,GAAG;IACpB,0BAA0B,EAAE,GAAG;IAC/B,uBAAuB,EAAE,GAAG;IAC5B,oBAAoB,EAAE,GAAG;IACzB,aAAa,EAAE,GAAG;IAClB,YAAY,EAAE,GAAG;IACjB,+BAA+B,EAAE,GAAG;CAC5B,CAAA;AAIV,MAAM,eAAe,GAA2B;IAC9C,GAAG,EAAE,IAAI;IACT,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,mBAAmB;IACxB,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,gBAAgB;IACrB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,mBAAmB;IACxB,GAAG,EAAE,wBAAwB;IAC7B,GAAG,EAAE,sBAAsB;IAC3B,GAAG,EAAE,mBAAmB;IACxB,GAAG,EAAE,uBAAuB;IAC5B,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,aAAa;IAClB,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,iBAAiB;CACvB,CAAA;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,MAAc;IAC1C,OAAO,CACL,eAAe,CAAC,MAAM,CAAC;QACvB,CAAC,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAC1D,CAAA;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,eAAe,CAAC,MAAc;IAC5C,OAAO,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,CAAA;AACtC,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,MAAc;IAC7C,OAAO,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,CAAA;AACtC,CAAC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,MAAc;IAC1C,OAAO,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,CAAA;AACtC,CAAC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,MAAc;IAC1C,OAAO,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,CAAA;AACtC,CAAC;AAED,iFAAiF;AAEjF;;;;;GAKG;AACH,SAAgB,OAAO,CACrB,IAAO,EACP,OAAgB,EAChB,IAAQ;IAER,MAAM,GAAG,GAA0B,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;IAC1D,IAAI,OAAO,KAAK,SAAS;QAAE,GAAG,CAAC,OAAO,GAAG,OAAO,CAAA;IAChD,IAAI,IAAI,KAAK,SAAS;QAAE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAA;IACvC,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;GAKG;AACH,SAAgB,OAAO,CACrB,IAAO,EACP,OAAO,GAAG,SAAS,EACnB,IAAQ;IAER,MAAM,GAAG,GAA0B,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IACnE,IAAI,IAAI,KAAK,SAAS;QAAE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAA;IACvC,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;GAKG;AACH,SAAgB,QAAQ,CACtB,OAAU,IAAoB,EAC9B,OAAO,GAAG,UAAU,EACpB,IAAQ;IAER,MAAM,GAAG,GAA0B,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IACnE,IAAI,IAAI,KAAK,SAAS;QAAE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAA;IACvC,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;GAKG;AACH,SAAgB,SAAS;IACvB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;AACtC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,KAAK,CACnB,OAAe,EACf,IAAa,EACb,OAAW,EACX,MAAe;IAEf,MAAM,GAAG,GAAqB,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,CAAA;IACpE,IAAI,IAAI,KAAK,SAAS;QAAE,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAA;IAC7C,IAAI,OAAO,KAAK,SAAS;QAAE,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAA;IACtD,IAAI,MAAM,KAAK,SAAS;QAAE,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAA;IACnD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,OAAO,CACrB,KAAa,EACb,MAAc,EACd,MAAe,EACf,UAAmC,EAAE;IAErC,OAAO;QACL,KAAK;QACL,MAAM;QACN,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7B,GAAG,OAAO;KACX,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,QAAQ,CACtB,IAAS,EACT,KAAa,EACb,UAA6C,EAAE,EAC/C,OAAgB,EAChB,IAAQ;IAER,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;IACtD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,CAAA;IAC3C,MAAM,OAAO,GAAG,IAAI,GAAG,UAAU,CAAA;IACjC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAA;IAExB,MAAM,GAAG,GAA4B;QACnC,OAAO,EAAE,IAAI;QACb,IAAI;QACJ,UAAU,EAAE;YACV,IAAI;YACJ,KAAK;YACL,KAAK;YACL,UAAU;YACV,WAAW,EAAE,OAAO;YACpB,WAAW,EAAE,OAAO;YACpB,OAAO;YACP,OAAO;SACR;KACF,CAAA;IAED,IAAI,OAAO,KAAK,SAAS;QAAE,GAAG,CAAC,OAAO,GAAG,OAAO,CAAA;IAChD,IAAI,IAAI,KAAK,SAAS;QAAE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAA;IAEvC,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,iBAAiB,CAC/B,QAA2C,EAAE;IAM7C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACjD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;IACpD,OAAO;QACL,IAAI,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK;QACxB,KAAK;QACL,IAAI;KACL,CAAA;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,IAAI,CAClB,IAAO,EACP,MAAM,GAAG,GAAG,EACZ,UAA2B,EAAE;IAE7B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;AAClC,CAAC;AAED;;GAEG;AACH,SAAgB,QAAQ,CACtB,GAAW,EACX,MAAM,GAAG,GAAG;IAEZ,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,CAAA;AAClC,CAAC;AAED,iFAAiF;AAEjF,+CAAiD;AAAxC,wGAAA,YAAY,OAAA;AACrB,qCAKsB;AAJpB,gGAAA,SAAS,OAAA;AACT,qGAAA,cAAc,OAAA"}
@@ -11,16 +11,16 @@ export interface BoundaryExcludeRule {
11
11
  methods?: HttpMethod[];
12
12
  method?: HttpMethod;
13
13
  }
14
- export interface BoundaryConfig {
14
+ export interface BoundaryConfig<TContext = Record<string, any>> {
15
15
  /**
16
16
  * Middleware to apply to all routes in this directory and subdirectories.
17
17
  * Replaces the old router.use() globally for a folder.
18
18
  */
19
- middleware?: Handler[] | Handler;
19
+ middleware?: Handler<any, any, any, any, TContext>[] | Handler<any, any, any, any, TContext>;
20
20
  /**
21
21
  * Alias for `middleware`. Supports plural naming.
22
22
  */
23
- middlewares?: Handler[] | Handler;
23
+ middlewares?: Handler<any, any, any, any, TContext>[] | Handler<any, any, any, any, TContext>;
24
24
  /**
25
25
  * CORS configuration applied to all routes in this directory and subdirectories.
26
26
  */
@@ -62,27 +62,35 @@ export interface BoundaryConfig {
62
62
  * Folder-scoped request timeout (in milliseconds).
63
63
  * Can be a static number or a dynamic function evaluated per-request.
64
64
  */
65
- timeout?: number | ((req: import('../types').Request<any, any, any>) => number | undefined);
65
+ timeout?: number | ((req: import('../types').Request<any, any, any, TContext>) => number | undefined);
66
66
  /**
67
67
  * Cascading metadata (e.g., OpenAPI tags, roles) applied to all routes in this directory.
68
68
  */
69
69
  metadata?: Record<string, any>;
70
+ /**
71
+ * Opt-in security scanner noise suppression & exploit probe blocker.
72
+ * Intercepts automated vulnerability scanner probes (e.g. `/.env`, `/.git`, `/.DS_Store`)
73
+ * and blackholes them immediately without running downstream handlers or flooding error logs.
74
+ */
75
+ blockProbes?: boolean | import('../middleware/security').BlockProbesOptions;
76
+ blockSuspiciousProbes?: boolean | import('../middleware/security').BlockProbesOptions;
70
77
  /**
71
78
  * Hook executed immediately before any route handler in this boundary.
72
79
  * Can short-circuit execution by returning `false` or sending a response directly.
73
80
  */
74
- beforeHandle?: BoundaryBeforeHandleHook | BoundaryBeforeHandleHook[];
81
+ beforeHandle?: BoundaryBeforeHandleHook<TContext> | BoundaryBeforeHandleHook<TContext>[];
75
82
  /**
76
83
  * Hook executed immediately after a route handler in this boundary successfully returns.
77
84
  * Receives `(req, res, data)` and can transform the outgoing payload or perform audit logging.
78
85
  */
79
- afterHandle?: BoundaryAfterHandleHook | BoundaryAfterHandleHook[];
86
+ afterHandle?: BoundaryAfterHandleHook<any, TContext> | BoundaryAfterHandleHook<any, TContext>[];
80
87
  }
81
- export type BoundaryBeforeHandleHook = (req: import('../types').Request<any, any, any>, res: import('../types').Response) => void | boolean | Promise<void | boolean>;
82
- export type BoundaryAfterHandleHook<T = any> = (req: import('../types').Request<any, any, any>, res: import('../types').Response, data?: T) => void | any | Promise<void | any>;
88
+ export type { BlockProbesOptions } from '../middleware/security';
89
+ export type BoundaryBeforeHandleHook<TContext = Record<string, any>> = (req: import('../types').Request<any, any, any, TContext>, res: import('../types').Response) => void | boolean | Promise<void | boolean>;
90
+ export type BoundaryAfterHandleHook<T = any, TContext = Record<string, any>> = (req: import('../types').Request<any, any, any, TContext>, res: import('../types').Response, data?: T) => void | any | Promise<void | any>;
83
91
  /**
84
92
  * Defines a boundary that acts as folder-scoped config + request pipeline for
85
93
  * everything in this directory and subdirectories.
86
94
  */
87
- export declare function defineBoundary(config: BoundaryConfig): BoundaryConfig;
95
+ export declare function defineBoundary<TContext = Record<string, any>>(config: BoundaryConfig<TContext>): BoundaryConfig<TContext>;
88
96
  //# sourceMappingURL=boundary.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"boundary.d.ts","sourceRoot":"","sources":["../../src/router/boundary.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"boundary.d.ts","sourceRoot":"","sources":["../../src/router/boundary.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"boundary.js","sourceRoot":"","sources":["../../src/router/boundary.ts"],"names":[],"mappings":";;AAsHA,wCAEC;AAND;;;GAGG;AACH,SAAgB,cAAc,CAAC,MAAsB;IACnD,OAAO,MAAM,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"boundary.js","sourceRoot":"","sources":["../../src/router/boundary.ts"],"names":[],"mappings":";;AA0IA,wCAIC;AARD;;;GAGG;AACH,SAAgB,cAAc,CAC5B,MAAgC;IAEhC,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"controller-registrar.d.ts","sourceRoot":"","sources":["../../src/router/controller-registrar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AAGxC,qBAAa,mBAAmB;IAClB,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC;IAI1B,mBAAmB,CACxB,WAAW,EAAE,GAAG,EAAE,EAClB,QAAQ,SAAK,EACb,iBAAiB,GAAE,GAAG,EAAO,GAC5B,GAAG,CAAC,GAAG,CAAC;IAIX,OAAO,CAAC,oBAAoB;CAyb7B"}
1
+ {"version":3,"file":"controller-registrar.d.ts","sourceRoot":"","sources":["../../src/router/controller-registrar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AAGxC,qBAAa,mBAAmB;IAClB,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC;IAI1B,mBAAmB,CACxB,WAAW,EAAE,GAAG,EAAE,EAClB,QAAQ,SAAK,EACb,iBAAiB,GAAE,GAAG,EAAO,GAC5B,GAAG,CAAC,GAAG,CAAC;IAIX,OAAO,CAAC,oBAAoB;CAof7B"}
@@ -191,6 +191,30 @@ class ControllerRegistrar {
191
191
  rawArg = isMulti ? files : files[0];
192
192
  }
193
193
  break;
194
+ case 'cookies':
195
+ case 'cookie':
196
+ rawArg = param.name
197
+ ? req.cookies?.[param.name]
198
+ : req.cookies;
199
+ break;
200
+ case 'state': {
201
+ const storeState = context_1.executionContext.getStore()?.state;
202
+ const reqState = req.state;
203
+ const stateObj = {
204
+ ...(storeState || {}),
205
+ ...(reqState || {}),
206
+ };
207
+ rawArg = param.name ? stateObj[param.name] : stateObj;
208
+ break;
209
+ }
210
+ case 'app':
211
+ rawArg = this.app;
212
+ break;
213
+ case 'fields':
214
+ rawArg = param.name
215
+ ? req.fields?.[param.name]
216
+ : req.fields;
217
+ break;
194
218
  case 'customParam':
195
219
  if (typeof param.customFactory === 'function') {
196
220
  const executionCtx = {
@@ -284,7 +308,20 @@ class ControllerRegistrar {
284
308
  res.status(routeMeta.httpCode);
285
309
  }
286
310
  if (result !== undefined) {
287
- res.json(result);
311
+ if (result &&
312
+ (typeof result.pipe === 'function' ||
313
+ (typeof result.getReader === 'function' &&
314
+ typeof result.tee === 'function') ||
315
+ (typeof result[Symbol.asyncIterator] === 'function' &&
316
+ !Array.isArray(result)))) {
317
+ ;
318
+ res.sendStream(result);
319
+ }
320
+ else if (!(result &&
321
+ typeof result.send === 'function' &&
322
+ typeof result.onClose === 'function')) {
323
+ res.json(result);
324
+ }
288
325
  }
289
326
  }
290
327
  }
@@ -343,6 +380,8 @@ class ControllerRegistrar {
343
380
  const paramMetadata = paramMetadataMap[route.handlerName] || [];
344
381
  let extractedBodySchema = undefined;
345
382
  let extractedQuerySchema = undefined;
383
+ let extractedParamsSchema = undefined;
384
+ let extractedHeadersSchema = undefined;
346
385
  for (const param of paramMetadata) {
347
386
  if (!param)
348
387
  continue;
@@ -356,12 +395,24 @@ class ControllerRegistrar {
356
395
  if (queryPipe)
357
396
  extractedQuerySchema = queryPipe;
358
397
  }
398
+ if (param.type === 'param') {
399
+ const paramPipe = param.pipes?.find((p) => p && typeof p.parse === 'function');
400
+ if (paramPipe)
401
+ extractedParamsSchema = paramPipe;
402
+ }
403
+ if (param.type === 'header') {
404
+ const headerPipe = param.pipes?.find((p) => p && typeof p.parse === 'function');
405
+ if (headerPipe)
406
+ extractedHeadersSchema = headerPipe;
407
+ }
359
408
  }
360
409
  const extractedResponseSchema = routeMeta.responseSchema;
361
410
  if (schema ||
362
411
  finalHost ||
363
412
  extractedBodySchema ||
364
413
  extractedQuerySchema ||
414
+ extractedParamsSchema ||
415
+ extractedHeadersSchema ||
365
416
  extractedResponseSchema) {
366
417
  schema = schema || {};
367
418
  if (finalHost)
@@ -370,6 +421,10 @@ class ControllerRegistrar {
370
421
  schema.body = extractedBodySchema;
371
422
  if (extractedQuerySchema && !schema.query)
372
423
  schema.query = extractedQuerySchema;
424
+ if (extractedParamsSchema && !schema.params)
425
+ schema.params = extractedParamsSchema;
426
+ if (extractedHeadersSchema && !schema.headers)
427
+ schema.headers = extractedHeadersSchema;
373
428
  if (extractedResponseSchema && !schema.response)
374
429
  schema.response = extractedResponseSchema;
375
430
  this.app.router[method](fullPath, ...allMiddlewares, schema, finalHandler);
@@ -1 +1 @@
1
- {"version":3,"file":"controller-registrar.js","sourceRoot":"","sources":["../../src/router/controller-registrar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller-registrar.js","sourceRoot":"","sources":["../../src/router/controller-registrar.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- export { route, controller, createRouter } from './route-builder';
2
- export type { RouteConfig, ControllerConfig, SuperContext, } from './route-builder';
1
+ export { route, controller, createRouter, defineMiddleware, } from './route-builder';
2
+ export type { RouteConfig, RouteDefinition, ControllerConfig, SuperContext, } from './route-builder';
3
3
  export { validate } from '../middleware/middleware';
4
4
  export { createErrorHandler, HttpError, PayloadTooLargeError, asyncHandler, } from '../error/errors';
5
5
  export type { Request, Response, NextFunction, InferHandler } from '../types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/router/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AACjE,YAAY,EACV,WAAW,EACX,gBAAgB,EAChB,YAAY,GACb,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,oBAAoB,EACpB,YAAY,GACb,MAAM,iBAAiB,CAAA;AACxB,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,YAAY,EACV,cAAc,EACd,eAAe,EACf,mBAAmB,GACpB,MAAM,YAAY,CAAA;AACnB,MAAM,MAAM,IAAI,GAAG,OAAO,UAAU,EAAE,YAAY,CAAA;AAClD,OAAO,EACL,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,KAAK,GACN,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAC9D,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAC/E,YAAY,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAGxC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AACzD,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/router/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,UAAU,EACV,YAAY,EACZ,gBAAgB,GACjB,MAAM,iBAAiB,CAAA;AACxB,YAAY,EACV,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,YAAY,GACb,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,oBAAoB,EACpB,YAAY,GACb,MAAM,iBAAiB,CAAA;AACxB,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,YAAY,EACV,cAAc,EACd,eAAe,EACf,mBAAmB,GACpB,MAAM,YAAY,CAAA;AACnB,MAAM,MAAM,IAAI,GAAG,OAAO,UAAU,EAAE,YAAY,CAAA;AAClD,OAAO,EACL,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,KAAK,GACN,MAAM,mBAAmB,CAAA;AAG1B,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAC9D,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAC/E,YAAY,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAGxC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AACzD,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA"}
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.formatSSEEvent = exports.SSEStream = exports.fromExpress = exports.fileUpload = exports.after = exports.getResponse = exports.getRequest = exports.setContext = exports.getContext = exports.defineBoundary = exports.asyncHandler = exports.PayloadTooLargeError = exports.HttpError = exports.createErrorHandler = exports.validate = exports.createRouter = exports.controller = exports.route = void 0;
3
+ exports.formatSSEEvent = exports.SSEStream = exports.fromExpress = exports.fileUpload = exports.after = exports.getResponse = exports.getRequest = exports.setContext = exports.getContext = exports.defineBoundary = exports.asyncHandler = exports.PayloadTooLargeError = exports.HttpError = exports.createErrorHandler = exports.validate = exports.defineMiddleware = exports.createRouter = exports.controller = exports.route = void 0;
4
4
  var route_builder_1 = require("./route-builder");
5
5
  Object.defineProperty(exports, "route", { enumerable: true, get: function () { return route_builder_1.route; } });
6
6
  Object.defineProperty(exports, "controller", { enumerable: true, get: function () { return route_builder_1.controller; } });
7
7
  Object.defineProperty(exports, "createRouter", { enumerable: true, get: function () { return route_builder_1.createRouter; } });
8
+ Object.defineProperty(exports, "defineMiddleware", { enumerable: true, get: function () { return route_builder_1.defineMiddleware; } });
8
9
  var middleware_1 = require("../middleware/middleware");
9
10
  Object.defineProperty(exports, "validate", { enumerable: true, get: function () { return middleware_1.validate; } });
10
11
  var errors_1 = require("../error/errors");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/router/index.ts"],"names":[],"mappings":";;;AAAA,iDAAiE;AAAxD,sGAAA,KAAK,OAAA;AAAE,2GAAA,UAAU,OAAA;AAAE,6GAAA,YAAY,OAAA;AAMxC,uDAAmD;AAA1C,sGAAA,QAAQ,OAAA;AACjB,0CAKwB;AAJtB,4GAAA,kBAAkB,OAAA;AAClB,mGAAA,SAAS,OAAA;AACT,8GAAA,oBAAoB,OAAA;AACpB,sGAAA,YAAY,OAAA;AAGd,uCAA2C;AAAlC,0GAAA,cAAc,OAAA;AAOvB,6CAM0B;AALxB,qGAAA,UAAU,OAAA;AACV,qGAAA,UAAU,OAAA;AACV,qGAAA,UAAU,OAAA;AACV,sGAAA,WAAW,OAAA;AACX,gGAAA,KAAK,OAAA;AAGP,eAAe;AACf,+CAA8D;AAArD,oGAAA,UAAU,OAAA;AAAE,qGAAA,WAAW,OAAA;AAIhC,uCAAuC;AACvC,qCAAyD;AAAhD,gGAAA,SAAS,OAAA;AAAE,qGAAA,cAAc,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/router/index.ts"],"names":[],"mappings":";;;AAAA,iDAKwB;AAJtB,sGAAA,KAAK,OAAA;AACL,2GAAA,UAAU,OAAA;AACV,6GAAA,YAAY,OAAA;AACZ,iHAAA,gBAAgB,OAAA;AAQlB,uDAAmD;AAA1C,sGAAA,QAAQ,OAAA;AACjB,0CAKwB;AAJtB,4GAAA,kBAAkB,OAAA;AAClB,mGAAA,SAAS,OAAA;AACT,8GAAA,oBAAoB,OAAA;AACpB,sGAAA,YAAY,OAAA;AAGd,uCAA2C;AAAlC,0GAAA,cAAc,OAAA;AAOvB,6CAM0B;AALxB,qGAAA,UAAU,OAAA;AACV,qGAAA,UAAU,OAAA;AACV,qGAAA,UAAU,OAAA;AACV,sGAAA,WAAW,OAAA;AACX,gGAAA,KAAK,OAAA;AAGP,eAAe;AACf,+CAA8D;AAArD,oGAAA,UAAU,OAAA;AAAE,qGAAA,WAAW,OAAA;AAIhC,uCAAuC;AACvC,qCAAyD;AAAhD,gGAAA,SAAS,OAAA;AAAE,qGAAA,cAAc,OAAA"}