@zudojs/http 1.4.3 → 1.5.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 (838) hide show
  1. package/dist/httpAdapter/errorResponse/httpAdapterError.headers.d.ts +46 -0
  2. package/dist/httpAdapter/errorResponse/httpAdapterError.headers.js +68 -0
  3. package/dist/httpAdapter/errorResponse/httpAdapterError.issues.d.ts +11 -0
  4. package/dist/httpAdapter/errorResponse/httpAdapterError.issues.js +37 -0
  5. package/dist/httpAdapter/errorResponse/httpAdapterError.locate.d.ts +29 -0
  6. package/dist/httpAdapter/errorResponse/httpAdapterError.locate.js +74 -0
  7. package/dist/httpAdapter/{httpAdapter.errorResponse.d.ts → errorResponse/httpAdapterError.response.d.ts} +10 -5
  8. package/dist/httpAdapter/errorResponse/httpAdapterError.response.js +83 -0
  9. package/dist/httpAdapter/errorResponse/index.d.ts +10 -0
  10. package/dist/httpAdapter/errorResponse/index.js +10 -0
  11. package/dist/httpAdapter/fetch/httpFetch.body.d.ts +0 -1
  12. package/dist/httpAdapter/fetch/httpFetch.body.js +0 -1
  13. package/dist/httpAdapter/fetch/httpFetch.helper.d.ts +0 -1
  14. package/dist/httpAdapter/fetch/httpFetch.helper.js +0 -1
  15. package/dist/httpAdapter/fetch/httpFetch.requestContext.d.ts +0 -1
  16. package/dist/httpAdapter/fetch/httpFetch.requestContext.js +0 -1
  17. package/dist/httpAdapter/fetch/httpFetch.responseWriter.d.ts +0 -1
  18. package/dist/httpAdapter/fetch/httpFetch.responseWriter.js +0 -1
  19. package/dist/httpAdapter/fetch/httpFetch.type.d.ts +2 -2
  20. package/dist/httpAdapter/fetch/httpFetch.type.js +2 -2
  21. package/dist/httpAdapter/fetch/index.d.ts +0 -1
  22. package/dist/httpAdapter/fetch/index.js +0 -1
  23. package/dist/httpAdapter/http.adapter.d.ts +12 -1
  24. package/dist/httpAdapter/http.adapter.js +5 -3
  25. package/dist/httpAdapter/http.adapters.d.ts +0 -1
  26. package/dist/httpAdapter/http.adapters.js +0 -1
  27. package/dist/httpAdapter/httpAdapter.logger.d.ts +0 -1
  28. package/dist/httpAdapter/httpAdapter.logger.js +0 -1
  29. package/dist/httpAdapter/httpFetch.adapter.d.ts +0 -1
  30. package/dist/httpAdapter/httpFetch.adapter.js +0 -1
  31. package/dist/httpAdapter/index.d.ts +1 -1
  32. package/dist/httpAdapter/index.js +0 -1
  33. package/dist/httpAdapter/node/httpNode.adapter.d.ts +6 -2
  34. package/dist/httpAdapter/node/httpNode.adapter.js +33 -10
  35. package/dist/httpAdapter/node/httpNode.request.d.ts +0 -1
  36. package/dist/httpAdapter/node/httpNode.request.js +0 -1
  37. package/dist/httpAdapter/node/httpNode.response.d.ts +0 -1
  38. package/dist/httpAdapter/node/httpNode.response.js +0 -1
  39. package/dist/httpAdapter/node/httpNode.server.d.ts +0 -1
  40. package/dist/httpAdapter/node/httpNode.server.js +0 -1
  41. package/dist/httpAdapter/node/httpNode.type.d.ts +2 -2
  42. package/dist/httpAdapter/node/httpNode.type.js +2 -2
  43. package/dist/httpAdapter/node/index.d.ts +0 -1
  44. package/dist/httpAdapter/node/index.js +0 -1
  45. package/dist/httpAgent/http.agent.d.ts +0 -1
  46. package/dist/httpAgent/http.agent.js +0 -1
  47. package/dist/httpAgent/index.d.ts +0 -1
  48. package/dist/httpAgent/index.js +0 -1
  49. package/dist/httpBody/http.body.d.ts +0 -1
  50. package/dist/httpBody/http.body.js +0 -1
  51. package/dist/httpBody/httpBody.formData.d.ts +5 -2
  52. package/dist/httpBody/httpBody.formData.js +5 -2
  53. package/dist/httpBody/httpBody.parser.d.ts +0 -1
  54. package/dist/httpBody/httpBody.parser.js +0 -1
  55. package/dist/httpBody/index.d.ts +0 -1
  56. package/dist/httpBody/index.js +0 -1
  57. package/dist/httpCacheControl/core/httpCacheControl.parse.d.ts +0 -1
  58. package/dist/httpCacheControl/core/httpCacheControl.parse.js +0 -1
  59. package/dist/httpCacheControl/core/httpCacheControl.type.d.ts +0 -1
  60. package/dist/httpCacheControl/core/httpCacheControl.type.js +0 -1
  61. package/dist/httpCacheControl/core/httpCacheControl.validation.d.ts +0 -1
  62. package/dist/httpCacheControl/core/httpCacheControl.validation.js +0 -1
  63. package/dist/httpCacheControl/core/index.d.ts +0 -1
  64. package/dist/httpCacheControl/core/index.js +0 -1
  65. package/dist/httpCacheControl/httpCacheControl.core.d.ts +0 -1
  66. package/dist/httpCacheControl/httpCacheControl.core.js +0 -1
  67. package/dist/httpCacheControl/httpCacheControl.factory.d.ts +0 -1
  68. package/dist/httpCacheControl/httpCacheControl.factory.js +0 -1
  69. package/dist/httpCacheControl/httpCacheControl.freshness.d.ts +0 -1
  70. package/dist/httpCacheControl/httpCacheControl.freshness.js +0 -1
  71. package/dist/httpCacheControl/httpCacheControl.requestHelper.d.ts +0 -1
  72. package/dist/httpCacheControl/httpCacheControl.requestHelper.js +0 -1
  73. package/dist/httpCacheControl/httpCacheControl.responseHelper.d.ts +0 -1
  74. package/dist/httpCacheControl/httpCacheControl.responseHelper.js +0 -1
  75. package/dist/httpCacheControl/index.d.ts +0 -1
  76. package/dist/httpCacheControl/index.js +0 -1
  77. package/dist/httpClient/httpClient.abort.d.ts +0 -1
  78. package/dist/httpClient/httpClient.abort.js +0 -1
  79. package/dist/httpClient/httpClient.body.d.ts +0 -1
  80. package/dist/httpClient/httpClient.body.js +0 -1
  81. package/dist/httpClient/httpClient.client.d.ts +0 -1
  82. package/dist/httpClient/httpClient.client.js +0 -1
  83. package/dist/httpClient/httpClient.context.d.ts +0 -1
  84. package/dist/httpClient/httpClient.context.js +0 -1
  85. package/dist/httpClient/httpClient.error.d.ts +0 -1
  86. package/dist/httpClient/httpClient.error.js +0 -1
  87. package/dist/httpClient/httpClient.errorNormalizer.d.ts +0 -1
  88. package/dist/httpClient/httpClient.errorNormalizer.js +0 -1
  89. package/dist/httpClient/httpClient.executor.d.ts +0 -1
  90. package/dist/httpClient/httpClient.executor.js +0 -1
  91. package/dist/httpClient/httpClient.factory.d.ts +0 -1
  92. package/dist/httpClient/httpClient.factory.js +0 -1
  93. package/dist/httpClient/httpClient.headers.d.ts +0 -1
  94. package/dist/httpClient/httpClient.headers.js +0 -1
  95. package/dist/httpClient/httpClient.helpers.d.ts +0 -1
  96. package/dist/httpClient/httpClient.helpers.js +0 -1
  97. package/dist/httpClient/httpClient.interceptors.d.ts +0 -1
  98. package/dist/httpClient/httpClient.interceptors.js +0 -1
  99. package/dist/httpClient/httpClient.methods.d.ts +0 -1
  100. package/dist/httpClient/httpClient.methods.js +0 -1
  101. package/dist/httpClient/httpClient.response.d.ts +0 -1
  102. package/dist/httpClient/httpClient.response.js +0 -1
  103. package/dist/httpClient/httpClient.retry.d.ts +0 -1
  104. package/dist/httpClient/httpClient.retry.js +0 -1
  105. package/dist/httpClient/httpClient.type.d.ts +0 -1
  106. package/dist/httpClient/httpClient.type.js +0 -1
  107. package/dist/httpClient/httpClient.typeGuards.d.ts +0 -1
  108. package/dist/httpClient/httpClient.typeGuards.js +0 -1
  109. package/dist/httpClient/httpClient.url.d.ts +0 -1
  110. package/dist/httpClient/httpClient.url.js +0 -1
  111. package/dist/httpClient/index.d.ts +2 -1
  112. package/dist/httpClient/index.js +2 -1
  113. package/dist/httpCompression/http.compression.d.ts +0 -1
  114. package/dist/httpCompression/http.compression.js +0 -1
  115. package/dist/httpCompression/index.d.ts +0 -1
  116. package/dist/httpCompression/index.js +0 -1
  117. package/dist/httpConditional/httpConditional.core.d.ts +0 -1
  118. package/dist/httpConditional/httpConditional.core.js +0 -1
  119. package/dist/httpConditional/index.d.ts +0 -1
  120. package/dist/httpConditional/index.js +0 -1
  121. package/dist/httpConstants/http.constants.d.ts +0 -1
  122. package/dist/httpConstants/http.constants.js +0 -1
  123. package/dist/httpConstants/index.d.ts +0 -1
  124. package/dist/httpConstants/index.js +0 -1
  125. package/dist/httpContentDisposition/httpContentDisposition.core.d.ts +0 -1
  126. package/dist/httpContentDisposition/httpContentDisposition.core.js +0 -1
  127. package/dist/httpContentDisposition/index.d.ts +0 -1
  128. package/dist/httpContentDisposition/index.js +0 -1
  129. package/dist/httpContentType/httpContentType.boundary.d.ts +0 -1
  130. package/dist/httpContentType/httpContentType.boundary.js +0 -1
  131. package/dist/httpContentType/httpContentType.category.d.ts +0 -1
  132. package/dist/httpContentType/httpContentType.category.js +0 -1
  133. package/dist/httpContentType/httpContentType.categoryBinary.d.ts +0 -1
  134. package/dist/httpContentType/httpContentType.categoryBinary.js +0 -1
  135. package/dist/httpContentType/httpContentType.charset.d.ts +0 -1
  136. package/dist/httpContentType/httpContentType.charset.js +0 -1
  137. package/dist/httpContentType/httpContentType.constructors.d.ts +0 -1
  138. package/dist/httpContentType/httpContentType.constructors.js +0 -1
  139. package/dist/httpContentType/httpContentType.formatter.d.ts +0 -1
  140. package/dist/httpContentType/httpContentType.formatter.js +0 -1
  141. package/dist/httpContentType/httpContentType.matcher.d.ts +0 -1
  142. package/dist/httpContentType/httpContentType.matcher.js +0 -1
  143. package/dist/httpContentType/httpContentType.mediaTypes.d.ts +0 -1
  144. package/dist/httpContentType/httpContentType.mediaTypes.js +0 -1
  145. package/dist/httpContentType/httpContentType.normalizer.d.ts +0 -1
  146. package/dist/httpContentType/httpContentType.normalizer.js +0 -1
  147. package/dist/httpContentType/httpContentType.parameter.d.ts +0 -1
  148. package/dist/httpContentType/httpContentType.parameter.js +0 -1
  149. package/dist/httpContentType/httpContentType.parser.d.ts +0 -1
  150. package/dist/httpContentType/httpContentType.parser.js +0 -1
  151. package/dist/httpContentType/httpContentType.parserHelpers.d.ts +0 -1
  152. package/dist/httpContentType/httpContentType.parserHelpers.js +0 -1
  153. package/dist/httpContentType/httpContentType.type.d.ts +0 -1
  154. package/dist/httpContentType/httpContentType.type.js +0 -1
  155. package/dist/httpContentType/index.d.ts +0 -1
  156. package/dist/httpContentType/index.js +0 -1
  157. package/dist/httpContext/http.context.d.ts +0 -1
  158. package/dist/httpContext/http.context.js +0 -1
  159. package/dist/httpContext/index.d.ts +0 -1
  160. package/dist/httpContext/index.js +0 -1
  161. package/dist/httpCookies/http.cookies.d.ts +0 -1
  162. package/dist/httpCookies/http.cookies.js +0 -1
  163. package/dist/httpCookies/httpCookies.defaults.d.ts +0 -1
  164. package/dist/httpCookies/httpCookies.defaults.js +0 -1
  165. package/dist/httpCookies/index.d.ts +0 -1
  166. package/dist/httpCookies/index.js +0 -1
  167. package/dist/httpCors/http.cors.d.ts +0 -1
  168. package/dist/httpCors/http.cors.js +0 -1
  169. package/dist/httpCors/index.d.ts +0 -1
  170. package/dist/httpCors/index.js +0 -1
  171. package/dist/httpCsp/checks/httpCsp.checks.d.ts +0 -1
  172. package/dist/httpCsp/checks/httpCsp.checks.js +0 -1
  173. package/dist/httpCsp/checks/index.d.ts +0 -1
  174. package/dist/httpCsp/checks/index.js +0 -1
  175. package/dist/httpCsp/formatting/httpCsp.formatting.d.ts +0 -1
  176. package/dist/httpCsp/formatting/httpCsp.formatting.js +0 -1
  177. package/dist/httpCsp/formatting/index.d.ts +0 -1
  178. package/dist/httpCsp/formatting/index.js +0 -1
  179. package/dist/httpCsp/index.d.ts +0 -1
  180. package/dist/httpCsp/index.js +0 -1
  181. package/dist/httpCsp/internal/httpCsp.internal.d.ts +0 -1
  182. package/dist/httpCsp/internal/httpCsp.internal.js +0 -1
  183. package/dist/httpCsp/internal/index.d.ts +0 -1
  184. package/dist/httpCsp/internal/index.js +0 -1
  185. package/dist/httpCsp/nonce/httpCsp.nonce.d.ts +0 -1
  186. package/dist/httpCsp/nonce/httpCsp.nonce.js +0 -1
  187. package/dist/httpCsp/nonce/index.d.ts +0 -1
  188. package/dist/httpCsp/nonce/index.js +0 -1
  189. package/dist/httpCsp/parsing/httpCsp.parsing.d.ts +0 -1
  190. package/dist/httpCsp/parsing/httpCsp.parsing.js +0 -1
  191. package/dist/httpCsp/parsing/index.d.ts +0 -1
  192. package/dist/httpCsp/parsing/index.js +0 -1
  193. package/dist/httpCsp/policies/httpCsp.policies.d.ts +0 -1
  194. package/dist/httpCsp/policies/httpCsp.policies.js +0 -1
  195. package/dist/httpCsp/policies/index.d.ts +0 -1
  196. package/dist/httpCsp/policies/index.js +0 -1
  197. package/dist/httpCsp/reportOnly/httpCsp.reportOnly.d.ts +0 -1
  198. package/dist/httpCsp/reportOnly/httpCsp.reportOnly.js +0 -1
  199. package/dist/httpCsp/reportOnly/index.d.ts +0 -1
  200. package/dist/httpCsp/reportOnly/index.js +0 -1
  201. package/dist/httpCsp/sources/httpCsp.sources.d.ts +0 -1
  202. package/dist/httpCsp/sources/httpCsp.sources.js +0 -1
  203. package/dist/httpCsp/sources/index.d.ts +0 -1
  204. package/dist/httpCsp/sources/index.js +0 -1
  205. package/dist/httpCsp/types/httpCsp.constant.d.ts +0 -1
  206. package/dist/httpCsp/types/httpCsp.constant.js +0 -1
  207. package/dist/httpCsp/types/httpCsp.type.d.ts +0 -1
  208. package/dist/httpCsp/types/httpCsp.type.js +0 -1
  209. package/dist/httpCsp/types/index.d.ts +0 -1
  210. package/dist/httpCsp/types/index.js +0 -1
  211. package/dist/httpCsp/validation/httpCsp.validate.d.ts +0 -1
  212. package/dist/httpCsp/validation/httpCsp.validate.js +0 -1
  213. package/dist/httpCsp/validation/httpCsp.validation.d.ts +0 -1
  214. package/dist/httpCsp/validation/httpCsp.validation.js +0 -1
  215. package/dist/httpCsp/validation/index.d.ts +0 -1
  216. package/dist/httpCsp/validation/index.js +0 -1
  217. package/dist/httpErrors/factories/httpError.clientError.d.ts +0 -1
  218. package/dist/httpErrors/factories/httpError.clientError.js +0 -1
  219. package/dist/httpErrors/factories/httpError.serverError.d.ts +10 -6
  220. package/dist/httpErrors/factories/httpError.serverError.js +22 -6
  221. package/dist/httpErrors/httpError.base.d.ts +0 -1
  222. package/dist/httpErrors/httpError.base.js +0 -1
  223. package/dist/httpErrors/httpError.helper.d.ts +0 -1
  224. package/dist/httpErrors/httpError.helper.js +0 -1
  225. package/dist/httpErrors/httpError.invalidJson.d.ts +0 -1
  226. package/dist/httpErrors/httpError.invalidJson.js +0 -1
  227. package/dist/httpErrors/httpError.type.d.ts +0 -1
  228. package/dist/httpErrors/httpError.type.js +0 -1
  229. package/dist/httpErrors/httpError.typeGuard.d.ts +0 -1
  230. package/dist/httpErrors/httpError.typeGuard.js +0 -1
  231. package/dist/httpErrors/httpError.util.d.ts +0 -1
  232. package/dist/httpErrors/httpError.util.js +0 -1
  233. package/dist/httpErrors/index.d.ts +0 -1
  234. package/dist/httpErrors/index.js +0 -1
  235. package/dist/httpFetchMount/httpFetchMount.core.d.ts +0 -1
  236. package/dist/httpFetchMount/httpFetchMount.core.js +0 -1
  237. package/dist/httpFetchMount/httpFetchMount.request.d.ts +0 -1
  238. package/dist/httpFetchMount/httpFetchMount.request.js +0 -1
  239. package/dist/httpFetchMount/httpFetchMount.type.d.ts +0 -1
  240. package/dist/httpFetchMount/httpFetchMount.type.js +0 -1
  241. package/dist/httpFetchMount/index.d.ts +0 -1
  242. package/dist/httpFetchMount/index.js +0 -1
  243. package/dist/httpFormData/index.d.ts +0 -1
  244. package/dist/httpFormData/index.js +0 -1
  245. package/dist/httpHeaders/authorization/httpHeaders.authorization.d.ts +0 -1
  246. package/dist/httpHeaders/authorization/httpHeaders.authorization.js +0 -1
  247. package/dist/httpHeaders/authorization/index.d.ts +0 -1
  248. package/dist/httpHeaders/authorization/index.js +0 -1
  249. package/dist/httpHeaders/basic/httpHeaders.basic.d.ts +0 -1
  250. package/dist/httpHeaders/basic/httpHeaders.basic.js +0 -1
  251. package/dist/httpHeaders/basic/httpHeaders.basicMatch.d.ts +0 -1
  252. package/dist/httpHeaders/basic/httpHeaders.basicMatch.js +0 -1
  253. package/dist/httpHeaders/basic/index.d.ts +0 -1
  254. package/dist/httpHeaders/basic/index.js +0 -1
  255. package/dist/httpHeaders/conversion/httpHeaders.conversion.d.ts +0 -1
  256. package/dist/httpHeaders/conversion/httpHeaders.conversion.js +0 -1
  257. package/dist/httpHeaders/conversion/httpHeaders.conversionObject.d.ts +0 -1
  258. package/dist/httpHeaders/conversion/httpHeaders.conversionObject.js +0 -1
  259. package/dist/httpHeaders/conversion/index.d.ts +0 -1
  260. package/dist/httpHeaders/conversion/index.js +0 -1
  261. package/dist/httpHeaders/etag/httpHeaders.etag.d.ts +0 -1
  262. package/dist/httpHeaders/etag/httpHeaders.etag.js +0 -1
  263. package/dist/httpHeaders/etag/httpHeaders.etagMatch.d.ts +0 -1
  264. package/dist/httpHeaders/etag/httpHeaders.etagMatch.js +0 -1
  265. package/dist/httpHeaders/etag/index.d.ts +0 -1
  266. package/dist/httpHeaders/etag/index.js +0 -1
  267. package/dist/httpHeaders/forwarded/httpHeaders.forwarded.d.ts +0 -1
  268. package/dist/httpHeaders/forwarded/httpHeaders.forwarded.js +0 -1
  269. package/dist/httpHeaders/forwarded/index.d.ts +0 -1
  270. package/dist/httpHeaders/forwarded/index.js +0 -1
  271. package/dist/httpHeaders/http.headers.d.ts +0 -1
  272. package/dist/httpHeaders/http.headers.js +0 -1
  273. package/dist/httpHeaders/index.d.ts +0 -1
  274. package/dist/httpHeaders/index.js +0 -1
  275. package/dist/httpHeaders/internal/httpHeaders.internal.typeGuards.d.ts +0 -1
  276. package/dist/httpHeaders/internal/httpHeaders.internal.typeGuards.js +0 -1
  277. package/dist/httpHeaders/internal/index.d.ts +0 -1
  278. package/dist/httpHeaders/internal/index.js +0 -1
  279. package/dist/httpHeaders/list/httpHeaders.list.d.ts +0 -1
  280. package/dist/httpHeaders/list/httpHeaders.list.js +0 -1
  281. package/dist/httpHeaders/list/httpHeaders.listMutation.d.ts +0 -1
  282. package/dist/httpHeaders/list/httpHeaders.listMutation.js +0 -1
  283. package/dist/httpHeaders/list/index.d.ts +0 -1
  284. package/dist/httpHeaders/list/index.js +0 -1
  285. package/dist/httpHeaders/security/httpHeaders.security.d.ts +0 -1
  286. package/dist/httpHeaders/security/httpHeaders.security.js +0 -1
  287. package/dist/httpHeaders/security/index.d.ts +0 -1
  288. package/dist/httpHeaders/security/index.js +0 -1
  289. package/dist/httpHeaders/types/httpHeaders.type.d.ts +0 -1
  290. package/dist/httpHeaders/types/httpHeaders.type.js +0 -1
  291. package/dist/httpHeaders/types/index.d.ts +0 -1
  292. package/dist/httpHeaders/types/index.js +0 -1
  293. package/dist/httpHsts/http.hsts.d.ts +0 -1
  294. package/dist/httpHsts/http.hsts.js +0 -1
  295. package/dist/httpHsts/index.d.ts +0 -1
  296. package/dist/httpHsts/index.js +0 -1
  297. package/dist/httpInterceptors/builtin/httpInterceptor.request.d.ts +0 -1
  298. package/dist/httpInterceptors/builtin/httpInterceptor.request.js +0 -1
  299. package/dist/httpInterceptors/builtin/httpInterceptor.response.d.ts +0 -1
  300. package/dist/httpInterceptors/builtin/httpInterceptor.response.js +0 -1
  301. package/dist/httpInterceptors/builtin/index.d.ts +0 -1
  302. package/dist/httpInterceptors/builtin/index.js +0 -1
  303. package/dist/httpInterceptors/http.interceptors.d.ts +0 -1
  304. package/dist/httpInterceptors/http.interceptors.js +0 -1
  305. package/dist/httpInterceptors/httpInterceptor.helper.d.ts +0 -1
  306. package/dist/httpInterceptors/httpInterceptor.helper.js +0 -1
  307. package/dist/httpInterceptors/httpInterceptor.type.d.ts +0 -1
  308. package/dist/httpInterceptors/httpInterceptor.type.js +0 -1
  309. package/dist/httpInterceptors/index.d.ts +0 -1
  310. package/dist/httpInterceptors/index.js +0 -1
  311. package/dist/httpInterceptors/manager/httpInterceptor.lookup.d.ts +0 -1
  312. package/dist/httpInterceptors/manager/httpInterceptor.lookup.js +0 -1
  313. package/dist/httpInterceptors/manager/httpInterceptor.manager.d.ts +0 -1
  314. package/dist/httpInterceptors/manager/httpInterceptor.manager.js +0 -1
  315. package/dist/httpInterceptors/manager/httpInterceptor.registration.d.ts +0 -1
  316. package/dist/httpInterceptors/manager/httpInterceptor.registration.js +0 -1
  317. package/dist/httpInterceptors/manager/httpInterceptor.snapshot.d.ts +0 -1
  318. package/dist/httpInterceptors/manager/httpInterceptor.snapshot.js +0 -1
  319. package/dist/httpInterceptors/manager/index.d.ts +0 -1
  320. package/dist/httpInterceptors/manager/index.js +0 -1
  321. package/dist/httpKeepAlive/httpKeepAlive.core.d.ts +0 -1
  322. package/dist/httpKeepAlive/httpKeepAlive.core.js +0 -1
  323. package/dist/httpKeepAlive/index.d.ts +0 -1
  324. package/dist/httpKeepAlive/index.js +0 -1
  325. package/dist/httpMethods/http.methods.d.ts +0 -1
  326. package/dist/httpMethods/http.methods.js +0 -1
  327. package/dist/httpMethods/index.d.ts +0 -1
  328. package/dist/httpMethods/index.js +0 -1
  329. package/dist/httpMiddleware/builtin/compose/httpMiddleware.compose.d.ts +0 -1
  330. package/dist/httpMiddleware/builtin/compose/httpMiddleware.compose.js +0 -1
  331. package/dist/httpMiddleware/builtin/compose/index.d.ts +0 -1
  332. package/dist/httpMiddleware/builtin/compose/index.js +0 -1
  333. package/dist/httpMiddleware/builtin/conditional/httpMiddleware.conditional.d.ts +0 -1
  334. package/dist/httpMiddleware/builtin/conditional/httpMiddleware.conditional.js +0 -1
  335. package/dist/httpMiddleware/builtin/conditional/index.d.ts +0 -1
  336. package/dist/httpMiddleware/builtin/conditional/index.js +0 -1
  337. package/dist/httpMiddleware/builtin/cors/httpMiddleware.cors.d.ts +0 -1
  338. package/dist/httpMiddleware/builtin/cors/httpMiddleware.cors.js +0 -1
  339. package/dist/httpMiddleware/builtin/cors/index.d.ts +0 -1
  340. package/dist/httpMiddleware/builtin/cors/index.js +0 -1
  341. package/dist/httpMiddleware/builtin/helpers/httpMiddleware.accessor.d.ts +0 -1
  342. package/dist/httpMiddleware/builtin/helpers/httpMiddleware.accessor.js +0 -1
  343. package/dist/httpMiddleware/builtin/helpers/httpMiddleware.contextHelper.d.ts +0 -1
  344. package/dist/httpMiddleware/builtin/helpers/httpMiddleware.contextHelper.js +0 -1
  345. package/dist/httpMiddleware/builtin/helpers/httpMiddleware.media.d.ts +0 -1
  346. package/dist/httpMiddleware/builtin/helpers/httpMiddleware.media.js +0 -1
  347. package/dist/httpMiddleware/builtin/helpers/httpMiddleware.response.d.ts +0 -1
  348. package/dist/httpMiddleware/builtin/helpers/httpMiddleware.response.js +0 -1
  349. package/dist/httpMiddleware/builtin/helpers/index.d.ts +0 -1
  350. package/dist/httpMiddleware/builtin/helpers/index.js +0 -1
  351. package/dist/httpMiddleware/builtin/image/httpMiddleware.image.d.ts +0 -1
  352. package/dist/httpMiddleware/builtin/image/httpMiddleware.image.js +0 -1
  353. package/dist/httpMiddleware/builtin/image/index.d.ts +0 -1
  354. package/dist/httpMiddleware/builtin/image/index.js +0 -1
  355. package/dist/httpMiddleware/builtin/index.d.ts +0 -1
  356. package/dist/httpMiddleware/builtin/index.js +0 -1
  357. package/dist/httpMiddleware/builtin/logging/httpMiddleware.logging.d.ts +0 -1
  358. package/dist/httpMiddleware/builtin/logging/httpMiddleware.logging.js +0 -1
  359. package/dist/httpMiddleware/builtin/logging/index.d.ts +0 -1
  360. package/dist/httpMiddleware/builtin/logging/index.js +0 -1
  361. package/dist/httpMiddleware/builtin/rateLimit/httpMiddleware.rateLimit.d.ts +3 -3
  362. package/dist/httpMiddleware/builtin/rateLimit/httpMiddleware.rateLimit.js +33 -4
  363. package/dist/httpMiddleware/builtin/rateLimit/index.d.ts +0 -1
  364. package/dist/httpMiddleware/builtin/rateLimit/index.js +0 -1
  365. package/dist/httpMiddleware/builtin/security/httpMiddleware.security.d.ts +0 -1
  366. package/dist/httpMiddleware/builtin/security/httpMiddleware.security.js +0 -1
  367. package/dist/httpMiddleware/builtin/security/index.d.ts +0 -1
  368. package/dist/httpMiddleware/builtin/security/index.js +0 -1
  369. package/dist/httpMiddleware/builtin/static/httpMiddleware.static.d.ts +0 -1
  370. package/dist/httpMiddleware/builtin/static/httpMiddleware.static.js +0 -1
  371. package/dist/httpMiddleware/builtin/static/index.d.ts +0 -1
  372. package/dist/httpMiddleware/builtin/static/index.js +0 -1
  373. package/dist/httpMiddleware/builtin/timing/httpMiddleware.timing.d.ts +0 -1
  374. package/dist/httpMiddleware/builtin/timing/httpMiddleware.timing.js +0 -1
  375. package/dist/httpMiddleware/builtin/timing/index.d.ts +0 -1
  376. package/dist/httpMiddleware/builtin/timing/index.js +0 -1
  377. package/dist/httpMiddleware/builtin/video/httpMiddleware.video.d.ts +0 -1
  378. package/dist/httpMiddleware/builtin/video/httpMiddleware.video.js +0 -1
  379. package/dist/httpMiddleware/builtin/video/httpMiddleware.video.options.d.ts +0 -1
  380. package/dist/httpMiddleware/builtin/video/httpMiddleware.video.options.js +0 -1
  381. package/dist/httpMiddleware/builtin/video/index.d.ts +0 -1
  382. package/dist/httpMiddleware/builtin/video/index.js +0 -1
  383. package/dist/httpMiddleware/httpMiddleware.error.d.ts +0 -1
  384. package/dist/httpMiddleware/httpMiddleware.error.js +0 -1
  385. package/dist/httpMiddleware/httpMiddleware.state.d.ts +0 -1
  386. package/dist/httpMiddleware/httpMiddleware.state.js +0 -1
  387. package/dist/httpMiddleware/httpMiddleware.type.d.ts +0 -1
  388. package/dist/httpMiddleware/httpMiddleware.type.js +0 -1
  389. package/dist/httpMiddleware/index.d.ts +0 -1
  390. package/dist/httpMiddleware/index.js +0 -1
  391. package/dist/httpMiddleware/pipeline/httpMiddleware.pipeline.d.ts +0 -1
  392. package/dist/httpMiddleware/pipeline/httpMiddleware.pipeline.js +0 -1
  393. package/dist/httpMiddleware/pipeline/httpPipeline.execution.d.ts +0 -1
  394. package/dist/httpMiddleware/pipeline/httpPipeline.execution.js +0 -1
  395. package/dist/httpMiddleware/pipeline/httpPipeline.guardResponse.d.ts +0 -1
  396. package/dist/httpMiddleware/pipeline/httpPipeline.guardResponse.js +0 -1
  397. package/dist/httpMiddleware/pipeline/httpPipeline.helper.d.ts +0 -1
  398. package/dist/httpMiddleware/pipeline/httpPipeline.helper.js +0 -1
  399. package/dist/httpMiddleware/pipeline/httpPipeline.registration.d.ts +0 -1
  400. package/dist/httpMiddleware/pipeline/httpPipeline.registration.js +0 -1
  401. package/dist/httpMiddleware/pipeline/index.d.ts +0 -1
  402. package/dist/httpMiddleware/pipeline/index.js +0 -1
  403. package/dist/httpMime/http.mime.d.ts +0 -1
  404. package/dist/httpMime/http.mime.js +0 -1
  405. package/dist/httpMime/httpMime.sniff.d.ts +31 -0
  406. package/dist/httpMime/httpMime.sniff.js +90 -0
  407. package/dist/httpMime/index.d.ts +1 -1
  408. package/dist/httpMime/index.js +1 -1
  409. package/dist/httpMultipart/http.multipart.d.ts +0 -1
  410. package/dist/httpMultipart/http.multipart.js +0 -1
  411. package/dist/httpMultipart/index.d.ts +0 -1
  412. package/dist/httpMultipart/index.js +0 -1
  413. package/dist/httpNegotiation/httpNegotiation.core.d.ts +0 -1
  414. package/dist/httpNegotiation/httpNegotiation.core.js +0 -1
  415. package/dist/httpNegotiation/index.d.ts +0 -1
  416. package/dist/httpNegotiation/index.js +0 -1
  417. package/dist/httpOpenApi/httpOpenApi.document.d.ts +0 -1
  418. package/dist/httpOpenApi/httpOpenApi.document.js +0 -1
  419. package/dist/httpOpenApi/httpOpenApi.mount.d.ts +2 -2
  420. package/dist/httpOpenApi/httpOpenApi.mount.js +7 -3
  421. package/dist/httpOpenApi/httpOpenApi.type.d.ts +5 -2
  422. package/dist/httpOpenApi/httpOpenApi.type.js +0 -1
  423. package/dist/httpOpenApi/index.d.ts +0 -1
  424. package/dist/httpOpenApi/index.js +0 -1
  425. package/dist/httpOpenApi/routeTable/index.d.ts +0 -1
  426. package/dist/httpOpenApi/routeTable/index.js +0 -1
  427. package/dist/httpOpenApi/routeTable/routeTable.collect.d.ts +0 -1
  428. package/dist/httpOpenApi/routeTable/routeTable.collect.js +0 -1
  429. package/dist/httpOpenApi/routeTable/routeTable.merge.d.ts +0 -1
  430. package/dist/httpOpenApi/routeTable/routeTable.merge.js +0 -1
  431. package/dist/httpOpenApi/routeTable/routeTable.template.d.ts +0 -1
  432. package/dist/httpOpenApi/routeTable/routeTable.template.js +0 -1
  433. package/dist/httpProtocol/http.protocol.d.ts +0 -1
  434. package/dist/httpProtocol/http.protocol.js +0 -1
  435. package/dist/httpProtocol/index.d.ts +0 -1
  436. package/dist/httpProtocol/index.js +0 -1
  437. package/dist/httpProxy/http.proxy.d.ts +0 -1
  438. package/dist/httpProxy/http.proxy.js +0 -1
  439. package/dist/httpProxy/httpProxy.pathGuard.d.ts +0 -1
  440. package/dist/httpProxy/httpProxy.pathGuard.js +0 -1
  441. package/dist/httpProxy/index.d.ts +0 -1
  442. package/dist/httpProxy/index.js +0 -1
  443. package/dist/httpQuery/index.d.ts +0 -1
  444. package/dist/httpQuery/index.js +0 -1
  445. package/dist/httpQuery/queryParse/index.d.ts +0 -1
  446. package/dist/httpQuery/queryParse/index.js +0 -1
  447. package/dist/httpQuery/queryParse/queryParse.flat.d.ts +0 -1
  448. package/dist/httpQuery/queryParse/queryParse.flat.js +0 -1
  449. package/dist/httpQuery/queryParse/queryParse.nested.d.ts +0 -1
  450. package/dist/httpQuery/queryParse/queryParse.nested.js +0 -1
  451. package/dist/httpQuery/queryParse/queryParse.tokenizer.d.ts +0 -1
  452. package/dist/httpQuery/queryParse/queryParse.tokenizer.js +0 -1
  453. package/dist/httpQuery/queryRequest/index.d.ts +0 -1
  454. package/dist/httpQuery/queryRequest/index.js +0 -1
  455. package/dist/httpQuery/queryRequest/query.request.d.ts +0 -1
  456. package/dist/httpQuery/queryRequest/query.request.js +0 -1
  457. package/dist/httpQuery/querySerialize/index.d.ts +0 -1
  458. package/dist/httpQuery/querySerialize/index.js +0 -1
  459. package/dist/httpQuery/querySerialize/query.util.d.ts +0 -1
  460. package/dist/httpQuery/querySerialize/query.util.js +0 -1
  461. package/dist/httpQuery/querySerialize/querySerialize.core.d.ts +0 -1
  462. package/dist/httpQuery/querySerialize/querySerialize.core.js +0 -1
  463. package/dist/httpQuery/queryTypes/index.d.ts +0 -1
  464. package/dist/httpQuery/queryTypes/index.js +0 -1
  465. package/dist/httpQuery/queryTypes/query.container.d.ts +0 -1
  466. package/dist/httpQuery/queryTypes/query.container.js +0 -1
  467. package/dist/httpQuery/queryTypes/query.limit.d.ts +0 -1
  468. package/dist/httpQuery/queryTypes/query.limit.js +0 -1
  469. package/dist/httpQuery/queryTypes/query.type.d.ts +0 -1
  470. package/dist/httpQuery/queryTypes/query.type.js +0 -1
  471. package/dist/httpRange/http.range.d.ts +0 -1
  472. package/dist/httpRange/http.range.js +0 -1
  473. package/dist/httpRange/index.d.ts +0 -1
  474. package/dist/httpRange/index.js +0 -1
  475. package/dist/httpRedirect/http.redirect.d.ts +0 -1
  476. package/dist/httpRedirect/http.redirect.js +0 -1
  477. package/dist/httpRedirect/index.d.ts +0 -1
  478. package/dist/httpRedirect/index.js +0 -1
  479. package/dist/httpRequest/http.request.d.ts +0 -1
  480. package/dist/httpRequest/http.request.js +12 -2
  481. package/dist/httpRequest/httpRequest.context.constant.d.ts +0 -1
  482. package/dist/httpRequest/httpRequest.context.constant.js +0 -1
  483. package/dist/httpRequest/httpRequest.context.d.ts +0 -1
  484. package/dist/httpRequest/httpRequest.context.id.d.ts +0 -1
  485. package/dist/httpRequest/httpRequest.context.id.js +0 -1
  486. package/dist/httpRequest/httpRequest.context.js +15 -2
  487. package/dist/httpRequest/httpRequest.context.type.d.ts +0 -1
  488. package/dist/httpRequest/httpRequest.context.type.js +0 -1
  489. package/dist/httpRequest/index.d.ts +0 -1
  490. package/dist/httpRequest/index.js +0 -1
  491. package/dist/httpRequest/requestId/httpRequest.requestId.d.ts +0 -1
  492. package/dist/httpRequest/requestId/httpRequest.requestId.js +0 -1
  493. package/dist/httpRequest/requestId/index.d.ts +0 -1
  494. package/dist/httpRequest/requestId/index.js +0 -1
  495. package/dist/httpRequest/target/httpRequest.target.d.ts +0 -1
  496. package/dist/httpRequest/target/httpRequest.target.js +0 -1
  497. package/dist/httpRequest/target/index.d.ts +0 -1
  498. package/dist/httpRequest/target/index.js +0 -1
  499. package/dist/httpResponse/core/httpResponse.statusText.d.ts +0 -1
  500. package/dist/httpResponse/core/httpResponse.statusText.js +0 -1
  501. package/dist/httpResponse/core/httpResponse.type.d.ts +0 -1
  502. package/dist/httpResponse/core/httpResponse.type.js +0 -1
  503. package/dist/httpResponse/core/index.d.ts +0 -1
  504. package/dist/httpResponse/core/index.js +0 -1
  505. package/dist/httpResponse/http.response.d.ts +0 -1
  506. package/dist/httpResponse/http.response.js +0 -1
  507. package/dist/httpResponse/httpResponse.context.d.ts +0 -1
  508. package/dist/httpResponse/httpResponse.context.js +0 -1
  509. package/dist/httpResponse/httpResponse.fromWeb.d.ts +0 -1
  510. package/dist/httpResponse/httpResponse.fromWeb.js +0 -1
  511. package/dist/httpResponse/httpResponse.helper.d.ts +0 -1
  512. package/dist/httpResponse/httpResponse.helper.js +0 -1
  513. package/dist/httpResponse/httpResponse.writer.d.ts +0 -1
  514. package/dist/httpResponse/httpResponse.writer.js +0 -1
  515. package/dist/httpResponse/index.d.ts +0 -1
  516. package/dist/httpResponse/index.js +0 -1
  517. package/dist/httpRouter/core/error/httpRouter.error.d.ts +0 -1
  518. package/dist/httpRouter/core/error/httpRouter.error.js +0 -1
  519. package/dist/httpRouter/core/error/index.d.ts +0 -1
  520. package/dist/httpRouter/core/error/index.js +0 -1
  521. package/dist/httpRouter/core/factory/httpRoute.factory.base.d.ts +0 -1
  522. package/dist/httpRouter/core/factory/httpRoute.factory.base.js +24 -22
  523. package/dist/httpRouter/core/factory/httpRoute.factory.d.ts +7 -1
  524. package/dist/httpRouter/core/factory/httpRoute.factory.js +36 -13
  525. package/dist/httpRouter/core/factory/index.d.ts +0 -1
  526. package/dist/httpRouter/core/factory/index.js +0 -1
  527. package/dist/httpRouter/core/group/httpRouterGroup.core.d.ts +0 -1
  528. package/dist/httpRouter/core/group/httpRouterGroup.core.js +0 -1
  529. package/dist/httpRouter/core/group/index.d.ts +0 -1
  530. package/dist/httpRouter/core/group/index.js +0 -1
  531. package/dist/httpRouter/core/index.d.ts +0 -1
  532. package/dist/httpRouter/core/index.js +0 -1
  533. package/dist/httpRouter/core/register/httpRouter.register.d.ts +15 -1
  534. package/dist/httpRouter/core/register/httpRouter.register.js +124 -26
  535. package/dist/httpRouter/core/register/httpRouter.shadow.d.ts +18 -0
  536. package/dist/httpRouter/core/register/httpRouter.shadow.js +91 -0
  537. package/dist/httpRouter/core/register/index.d.ts +1 -1
  538. package/dist/httpRouter/core/register/index.js +1 -1
  539. package/dist/httpRouter/core/registry/core/httpRegistry.helper.d.ts +0 -1
  540. package/dist/httpRouter/core/registry/core/httpRegistry.helper.js +0 -1
  541. package/dist/httpRouter/core/registry/core/httpRegistry.type.d.ts +0 -1
  542. package/dist/httpRouter/core/registry/core/httpRegistry.type.js +0 -1
  543. package/dist/httpRouter/core/registry/core/index.d.ts +0 -1
  544. package/dist/httpRouter/core/registry/core/index.js +0 -1
  545. package/dist/httpRouter/core/registry/httpRegistry.core.d.ts +0 -1
  546. package/dist/httpRouter/core/registry/httpRegistry.core.js +0 -1
  547. package/dist/httpRouter/core/registry/httpRegistry.factory.d.ts +0 -1
  548. package/dist/httpRouter/core/registry/httpRegistry.factory.js +0 -1
  549. package/dist/httpRouter/core/registry/httpRegistry.group.d.ts +0 -1
  550. package/dist/httpRouter/core/registry/httpRegistry.group.js +0 -1
  551. package/dist/httpRouter/core/registry/index.d.ts +0 -1
  552. package/dist/httpRouter/core/registry/index.js +0 -1
  553. package/dist/httpRouter/core/types/httpRouter.type.d.ts +27 -1
  554. package/dist/httpRouter/core/types/httpRouter.type.js +0 -1
  555. package/dist/httpRouter/core/types/index.d.ts +0 -1
  556. package/dist/httpRouter/core/types/index.js +0 -1
  557. package/dist/httpRouter/core/util/httpRoute.util.d.ts +0 -1
  558. package/dist/httpRouter/core/util/httpRoute.util.js +0 -1
  559. package/dist/httpRouter/core/util/index.d.ts +0 -1
  560. package/dist/httpRouter/core/util/index.js +0 -1
  561. package/dist/httpRouter/dispatch/httpRoute.dispatcher.d.ts +0 -1
  562. package/dist/httpRouter/dispatch/httpRoute.dispatcher.js +0 -1
  563. package/dist/httpRouter/dispatch/httpRoute.stack.d.ts +0 -1
  564. package/dist/httpRouter/dispatch/httpRoute.stack.js +0 -1
  565. package/dist/httpRouter/dispatch/index.d.ts +0 -1
  566. package/dist/httpRouter/dispatch/index.js +0 -1
  567. package/dist/httpRouter/httpRouter.context.d.ts +0 -1
  568. package/dist/httpRouter/httpRouter.context.js +0 -1
  569. package/dist/httpRouter/httpRouter.state.d.ts +0 -1
  570. package/dist/httpRouter/httpRouter.state.js +0 -1
  571. package/dist/httpRouter/index.d.ts +0 -1
  572. package/dist/httpRouter/index.js +0 -1
  573. package/dist/httpRouter/matching/httpRoute.matcher.core.d.ts +0 -1
  574. package/dist/httpRouter/matching/httpRoute.matcher.core.js +0 -1
  575. package/dist/httpRouter/matching/httpRoute.matcher.d.ts +0 -1
  576. package/dist/httpRouter/matching/httpRoute.matcher.js +0 -1
  577. package/dist/httpRouter/matching/index.d.ts +0 -1
  578. package/dist/httpRouter/matching/index.js +0 -1
  579. package/dist/httpRouter/pattern/core/httpPattern.compilation.d.ts +0 -1
  580. package/dist/httpRouter/pattern/core/httpPattern.compilation.js +0 -1
  581. package/dist/httpRouter/pattern/core/httpPattern.matching.d.ts +0 -1
  582. package/dist/httpRouter/pattern/core/httpPattern.matching.js +0 -1
  583. package/dist/httpRouter/pattern/core/httpPattern.regexBuilding.d.ts +0 -1
  584. package/dist/httpRouter/pattern/core/httpPattern.regexBuilding.js +0 -1
  585. package/dist/httpRouter/pattern/core/httpPattern.segmentParsing.d.ts +0 -1
  586. package/dist/httpRouter/pattern/core/httpPattern.segmentParsing.js +0 -1
  587. package/dist/httpRouter/pattern/core/httpPattern.type.d.ts +0 -1
  588. package/dist/httpRouter/pattern/core/httpPattern.type.js +0 -1
  589. package/dist/httpRouter/pattern/core/index.d.ts +0 -1
  590. package/dist/httpRouter/pattern/core/index.js +0 -1
  591. package/dist/httpRouter/pattern/httpPattern.factory.d.ts +0 -1
  592. package/dist/httpRouter/pattern/httpPattern.factory.js +0 -1
  593. package/dist/httpRouter/pattern/httpRoute.pattern.parse.d.ts +18 -1
  594. package/dist/httpRouter/pattern/httpRoute.pattern.parse.js +51 -13
  595. package/dist/httpRouter/pattern/index.d.ts +0 -1
  596. package/dist/httpRouter/pattern/index.js +0 -1
  597. package/dist/httpRouter/result/httpRoute.result.builder.d.ts +0 -1
  598. package/dist/httpRouter/result/httpRoute.result.builder.js +0 -1
  599. package/dist/httpRouter/result/httpRoute.result.class.d.ts +0 -1
  600. package/dist/httpRouter/result/httpRoute.result.class.js +0 -1
  601. package/dist/httpRouter/result/httpRoute.result.d.ts +0 -1
  602. package/dist/httpRouter/result/httpRoute.result.error.4xx.d.ts +0 -1
  603. package/dist/httpRouter/result/httpRoute.result.error.4xx.js +0 -1
  604. package/dist/httpRouter/result/httpRoute.result.error.5xx.d.ts +0 -1
  605. package/dist/httpRouter/result/httpRoute.result.error.5xx.js +0 -1
  606. package/dist/httpRouter/result/httpRoute.result.factory.d.ts +0 -1
  607. package/dist/httpRouter/result/httpRoute.result.factory.js +0 -1
  608. package/dist/httpRouter/result/httpRoute.result.guard.d.ts +0 -1
  609. package/dist/httpRouter/result/httpRoute.result.guard.js +0 -1
  610. package/dist/httpRouter/result/httpRoute.result.js +0 -1
  611. package/dist/httpRouter/result/httpRoute.result.normalize.d.ts +0 -1
  612. package/dist/httpRouter/result/httpRoute.result.normalize.js +0 -1
  613. package/dist/httpRouter/result/httpRoute.result.output.d.ts +0 -1
  614. package/dist/httpRouter/result/httpRoute.result.output.js +0 -1
  615. package/dist/httpRouter/result/httpRoute.result.serialize.d.ts +0 -1
  616. package/dist/httpRouter/result/httpRoute.result.serialize.js +0 -1
  617. package/dist/httpRouter/result/httpRoute.result.type.d.ts +0 -1
  618. package/dist/httpRouter/result/httpRoute.result.type.js +0 -1
  619. package/dist/httpRouter/result/httpRoute.result.util.d.ts +0 -1
  620. package/dist/httpRouter/result/httpRoute.result.util.js +0 -1
  621. package/dist/httpRouter/result/index.d.ts +0 -1
  622. package/dist/httpRouter/result/index.js +0 -1
  623. package/dist/httpRouter/tree/core/httpTree.enumerate.d.ts +21 -0
  624. package/dist/httpRouter/tree/core/httpTree.enumerate.js +43 -0
  625. package/dist/httpRouter/tree/core/httpTree.helper.d.ts +2 -3
  626. package/dist/httpRouter/tree/core/httpTree.helper.js +11 -10
  627. package/dist/httpRouter/tree/core/httpTree.nodeCreation.d.ts +15 -1
  628. package/dist/httpRouter/tree/core/httpTree.nodeCreation.js +58 -34
  629. package/dist/httpRouter/tree/core/httpTree.traversal.d.ts +15 -14
  630. package/dist/httpRouter/tree/core/httpTree.traversal.js +46 -48
  631. package/dist/httpRouter/tree/core/httpTree.type.d.ts +7 -6
  632. package/dist/httpRouter/tree/core/httpTree.type.js +0 -1
  633. package/dist/httpRouter/tree/core/index.d.ts +1 -1
  634. package/dist/httpRouter/tree/core/index.js +1 -1
  635. package/dist/httpRouter/tree/httpTree.core.d.ts +7 -3
  636. package/dist/httpRouter/tree/httpTree.core.js +17 -19
  637. package/dist/httpRouter/tree/httpTree.factory.d.ts +0 -1
  638. package/dist/httpRouter/tree/httpTree.factory.js +0 -1
  639. package/dist/httpRouter/tree/index.d.ts +0 -1
  640. package/dist/httpRouter/tree/index.js +0 -1
  641. package/dist/httpSecurity/httpSecurity.config.d.ts +10 -2
  642. package/dist/httpSecurity/httpSecurity.config.js +10 -2
  643. package/dist/httpSecurity/httpSecurity.guard.d.ts +0 -1
  644. package/dist/httpSecurity/httpSecurity.guard.js +14 -2
  645. package/dist/httpSecurity/httpSecurity.nodeGuard.d.ts +0 -1
  646. package/dist/httpSecurity/httpSecurity.nodeGuard.js +0 -1
  647. package/dist/httpSecurity/httpSecurity.validator.d.ts +0 -1
  648. package/dist/httpSecurity/httpSecurity.validator.js +0 -1
  649. package/dist/httpSecurity/index.d.ts +1 -2
  650. package/dist/httpSecurity/index.js +1 -2
  651. package/dist/httpSecurityHeaders/core/httpSecurityHeader.type.d.ts +0 -1
  652. package/dist/httpSecurityHeaders/core/httpSecurityHeader.type.js +0 -1
  653. package/dist/httpSecurityHeaders/core/httpSecurityHeader.validation.d.ts +0 -1
  654. package/dist/httpSecurityHeaders/core/httpSecurityHeader.validation.js +0 -1
  655. package/dist/httpSecurityHeaders/core/index.d.ts +0 -1
  656. package/dist/httpSecurityHeaders/core/index.js +0 -1
  657. package/dist/httpSecurityHeaders/httpSecurity.headers.d.ts +0 -1
  658. package/dist/httpSecurityHeaders/httpSecurity.headers.js +0 -1
  659. package/dist/httpSecurityHeaders/httpSecurityHeader.factory.d.ts +0 -1
  660. package/dist/httpSecurityHeaders/httpSecurityHeader.factory.js +0 -1
  661. package/dist/httpSecurityHeaders/httpSecurityHeader.individual.d.ts +0 -1
  662. package/dist/httpSecurityHeaders/httpSecurityHeader.individual.js +0 -1
  663. package/dist/httpSecurityHeaders/httpSecurityHeader.permissionsPolicy.d.ts +0 -1
  664. package/dist/httpSecurityHeaders/httpSecurityHeader.permissionsPolicy.js +0 -1
  665. package/dist/httpSecurityHeaders/httpSecurityHeader.recommended.d.ts +8 -2
  666. package/dist/httpSecurityHeaders/httpSecurityHeader.recommended.js +11 -4
  667. package/dist/httpSecurityHeaders/index.d.ts +0 -1
  668. package/dist/httpSecurityHeaders/index.js +0 -1
  669. package/dist/httpServer/core/httpServer.core.d.ts +0 -1
  670. package/dist/httpServer/core/httpServer.core.js +0 -1
  671. package/dist/httpServer/core/index.d.ts +0 -1
  672. package/dist/httpServer/core/index.js +0 -1
  673. package/dist/httpServer/factory/httpServer.factory.d.ts +0 -1
  674. package/dist/httpServer/factory/httpServer.factory.js +0 -1
  675. package/dist/httpServer/factory/index.d.ts +0 -1
  676. package/dist/httpServer/factory/index.js +0 -1
  677. package/dist/httpServer/index.d.ts +0 -1
  678. package/dist/httpServer/index.js +0 -1
  679. package/dist/httpServer/manager/httpServer.manager.d.ts +0 -1
  680. package/dist/httpServer/manager/httpServer.manager.js +0 -1
  681. package/dist/httpServer/manager/index.d.ts +0 -1
  682. package/dist/httpServer/manager/index.js +0 -1
  683. package/dist/httpServer/types/httpServer.type.d.ts +0 -1
  684. package/dist/httpServer/types/httpServer.type.js +0 -1
  685. package/dist/httpStatus/httpStatus.categoryPredicate.d.ts +0 -1
  686. package/dist/httpStatus/httpStatus.categoryPredicate.js +0 -1
  687. package/dist/httpStatus/httpStatus.clientErrorConstant.d.ts +0 -1
  688. package/dist/httpStatus/httpStatus.clientErrorConstant.js +0 -1
  689. package/dist/httpStatus/httpStatus.clientErrorTextConstant.d.ts +0 -1
  690. package/dist/httpStatus/httpStatus.clientErrorTextConstant.js +0 -1
  691. package/dist/httpStatus/httpStatus.collection.d.ts +0 -1
  692. package/dist/httpStatus/httpStatus.collection.js +0 -1
  693. package/dist/httpStatus/httpStatus.commonPredicate.d.ts +0 -1
  694. package/dist/httpStatus/httpStatus.commonPredicate.js +0 -1
  695. package/dist/httpStatus/httpStatus.constant.d.ts +0 -1
  696. package/dist/httpStatus/httpStatus.constant.js +0 -1
  697. package/dist/httpStatus/httpStatus.errorPredicate.d.ts +0 -1
  698. package/dist/httpStatus/httpStatus.errorPredicate.js +0 -1
  699. package/dist/httpStatus/httpStatus.info.d.ts +0 -1
  700. package/dist/httpStatus/httpStatus.info.js +0 -1
  701. package/dist/httpStatus/httpStatus.informationalSuccessConstant.d.ts +0 -1
  702. package/dist/httpStatus/httpStatus.informationalSuccessConstant.js +0 -1
  703. package/dist/httpStatus/httpStatus.informationalSuccessTextConstant.d.ts +0 -1
  704. package/dist/httpStatus/httpStatus.informationalSuccessTextConstant.js +0 -1
  705. package/dist/httpStatus/httpStatus.lookup.d.ts +0 -1
  706. package/dist/httpStatus/httpStatus.lookup.js +0 -1
  707. package/dist/httpStatus/httpStatus.name.d.ts +0 -1
  708. package/dist/httpStatus/httpStatus.name.js +0 -1
  709. package/dist/httpStatus/httpStatus.predicate.d.ts +0 -1
  710. package/dist/httpStatus/httpStatus.predicate.js +0 -1
  711. package/dist/httpStatus/httpStatus.redirectErrorConstant.d.ts +0 -1
  712. package/dist/httpStatus/httpStatus.redirectErrorConstant.js +0 -1
  713. package/dist/httpStatus/httpStatus.redirectErrorTextConstant.d.ts +0 -1
  714. package/dist/httpStatus/httpStatus.redirectErrorTextConstant.js +0 -1
  715. package/dist/httpStatus/httpStatus.redirectPredicate.d.ts +0 -1
  716. package/dist/httpStatus/httpStatus.redirectPredicate.js +0 -1
  717. package/dist/httpStatus/httpStatus.redirectionConstant.d.ts +0 -1
  718. package/dist/httpStatus/httpStatus.redirectionConstant.js +0 -1
  719. package/dist/httpStatus/httpStatus.redirectionTextConstant.d.ts +0 -1
  720. package/dist/httpStatus/httpStatus.redirectionTextConstant.js +0 -1
  721. package/dist/httpStatus/httpStatus.semantics.d.ts +0 -1
  722. package/dist/httpStatus/httpStatus.semantics.js +0 -1
  723. package/dist/httpStatus/httpStatus.serverErrorConstant.d.ts +0 -1
  724. package/dist/httpStatus/httpStatus.serverErrorConstant.js +0 -1
  725. package/dist/httpStatus/httpStatus.serverErrorTextConstant.d.ts +0 -1
  726. package/dist/httpStatus/httpStatus.serverErrorTextConstant.js +0 -1
  727. package/dist/httpStatus/httpStatus.statusConstant.d.ts +0 -1
  728. package/dist/httpStatus/httpStatus.statusConstant.js +0 -1
  729. package/dist/httpStatus/httpStatus.statusTextConstant.d.ts +0 -1
  730. package/dist/httpStatus/httpStatus.statusTextConstant.js +0 -1
  731. package/dist/httpStatus/httpStatus.type.d.ts +0 -1
  732. package/dist/httpStatus/httpStatus.type.js +0 -1
  733. package/dist/httpStatus/httpStatus.validator.d.ts +0 -1
  734. package/dist/httpStatus/httpStatus.validator.js +0 -1
  735. package/dist/httpStatus/httpStatusCodes.constant.d.ts +0 -1
  736. package/dist/httpStatus/httpStatusCodes.constant.js +0 -1
  737. package/dist/httpStatus/index.d.ts +0 -1
  738. package/dist/httpStatus/index.js +0 -1
  739. package/dist/httpStream/httpStream.backpressure.d.ts +0 -1
  740. package/dist/httpStream/httpStream.backpressure.js +0 -1
  741. package/dist/httpStream/httpStream.constants.d.ts +0 -1
  742. package/dist/httpStream/httpStream.constants.js +0 -1
  743. package/dist/httpStream/httpStream.consume.d.ts +0 -1
  744. package/dist/httpStream/httpStream.consume.js +0 -1
  745. package/dist/httpStream/httpStream.destroy.d.ts +0 -1
  746. package/dist/httpStream/httpStream.destroy.js +0 -1
  747. package/dist/httpStream/httpStream.error.d.ts +0 -1
  748. package/dist/httpStream/httpStream.error.js +0 -1
  749. package/dist/httpStream/httpStream.eventHelper.d.ts +0 -1
  750. package/dist/httpStream/httpStream.eventHelper.js +0 -1
  751. package/dist/httpStream/httpStream.helper.d.ts +0 -1
  752. package/dist/httpStream/httpStream.helper.js +0 -1
  753. package/dist/httpStream/httpStream.pipe.d.ts +0 -1
  754. package/dist/httpStream/httpStream.pipe.js +0 -1
  755. package/dist/httpStream/httpStream.progress.d.ts +0 -1
  756. package/dist/httpStream/httpStream.progress.js +0 -1
  757. package/dist/httpStream/httpStream.read.d.ts +0 -1
  758. package/dist/httpStream/httpStream.read.js +0 -1
  759. package/dist/httpStream/httpStream.request.d.ts +0 -1
  760. package/dist/httpStream/httpStream.request.js +0 -1
  761. package/dist/httpStream/httpStream.state.d.ts +0 -1
  762. package/dist/httpStream/httpStream.state.js +0 -1
  763. package/dist/httpStream/httpStream.transform.d.ts +0 -1
  764. package/dist/httpStream/httpStream.transform.js +0 -1
  765. package/dist/httpStream/httpStream.types.d.ts +0 -1
  766. package/dist/httpStream/httpStream.types.js +0 -1
  767. package/dist/httpStream/index.d.ts +0 -1
  768. package/dist/httpStream/index.js +0 -1
  769. package/dist/httpTrustProxy/httpTrustProxy.compilation.d.ts +0 -1
  770. package/dist/httpTrustProxy/httpTrustProxy.compilation.js +0 -1
  771. package/dist/httpTrustProxy/httpTrustProxy.core.d.ts +0 -1
  772. package/dist/httpTrustProxy/httpTrustProxy.core.js +0 -1
  773. package/dist/httpTrustProxy/httpTrustProxy.helper.d.ts +0 -1
  774. package/dist/httpTrustProxy/httpTrustProxy.helper.js +0 -1
  775. package/dist/httpTrustProxy/httpTrustProxy.ip.d.ts +0 -1
  776. package/dist/httpTrustProxy/httpTrustProxy.ip.js +0 -1
  777. package/dist/httpTrustProxy/httpTrustProxy.parsing.d.ts +0 -1
  778. package/dist/httpTrustProxy/httpTrustProxy.parsing.js +0 -1
  779. package/dist/httpTrustProxy/httpTrustProxy.type.d.ts +0 -1
  780. package/dist/httpTrustProxy/httpTrustProxy.type.js +0 -1
  781. package/dist/httpTrustProxy/index.d.ts +0 -1
  782. package/dist/httpTrustProxy/index.js +0 -1
  783. package/dist/httpTypes/http.types.d.ts +0 -1
  784. package/dist/httpTypes/http.types.js +0 -1
  785. package/dist/httpTypes/index.d.ts +0 -1
  786. package/dist/httpTypes/index.js +0 -1
  787. package/dist/httpUrl/http.url.d.ts +0 -1
  788. package/dist/httpUrl/http.url.js +0 -1
  789. package/dist/httpUrl/index.d.ts +0 -1
  790. package/dist/httpUrl/index.js +0 -1
  791. package/dist/httpValidation/httpValidationAssertion.d.ts +0 -1
  792. package/dist/httpValidation/httpValidationAssertion.js +0 -1
  793. package/dist/httpValidation/httpValidationAuthority.d.ts +0 -1
  794. package/dist/httpValidation/httpValidationAuthority.js +0 -1
  795. package/dist/httpValidation/httpValidationAuthorization.d.ts +0 -1
  796. package/dist/httpValidation/httpValidationAuthorization.js +0 -1
  797. package/dist/httpValidation/httpValidationCacheControl.d.ts +0 -1
  798. package/dist/httpValidation/httpValidationCacheControl.js +0 -1
  799. package/dist/httpValidation/httpValidationContentLength.d.ts +0 -1
  800. package/dist/httpValidation/httpValidationContentLength.js +0 -1
  801. package/dist/httpValidation/httpValidationContentType.d.ts +0 -1
  802. package/dist/httpValidation/httpValidationContentType.js +0 -1
  803. package/dist/httpValidation/httpValidationCookie.d.ts +0 -1
  804. package/dist/httpValidation/httpValidationCookie.js +0 -1
  805. package/dist/httpValidation/httpValidationDate.d.ts +0 -1
  806. package/dist/httpValidation/httpValidationDate.js +0 -1
  807. package/dist/httpValidation/httpValidationETag.d.ts +0 -1
  808. package/dist/httpValidation/httpValidationETag.js +0 -1
  809. package/dist/httpValidation/httpValidationHeader.d.ts +0 -1
  810. package/dist/httpValidation/httpValidationHeader.js +0 -1
  811. package/dist/httpValidation/httpValidationHostname.d.ts +0 -1
  812. package/dist/httpValidation/httpValidationHostname.js +0 -1
  813. package/dist/httpValidation/httpValidationMessage.d.ts +0 -1
  814. package/dist/httpValidation/httpValidationMessage.js +0 -1
  815. package/dist/httpValidation/httpValidationMethod.d.ts +0 -1
  816. package/dist/httpValidation/httpValidationMethod.js +0 -1
  817. package/dist/httpValidation/httpValidationPort.d.ts +0 -1
  818. package/dist/httpValidation/httpValidationPort.js +0 -1
  819. package/dist/httpValidation/httpValidationRange.d.ts +0 -1
  820. package/dist/httpValidation/httpValidationRange.js +0 -1
  821. package/dist/httpValidation/httpValidationRequestTarget.d.ts +0 -1
  822. package/dist/httpValidation/httpValidationRequestTarget.js +0 -1
  823. package/dist/httpValidation/httpValidationStatusCode.d.ts +0 -1
  824. package/dist/httpValidation/httpValidationStatusCode.js +0 -1
  825. package/dist/httpValidation/httpValidationToken.d.ts +0 -1
  826. package/dist/httpValidation/httpValidationToken.js +0 -1
  827. package/dist/httpValidation/httpValidationTypes.type.d.ts +0 -1
  828. package/dist/httpValidation/httpValidationTypes.type.js +0 -1
  829. package/dist/httpValidation/httpValidationUrl.d.ts +0 -1
  830. package/dist/httpValidation/httpValidationUrl.js +0 -1
  831. package/dist/httpValidation/index.d.ts +0 -1
  832. package/dist/httpValidation/index.js +0 -1
  833. package/dist/index.d.ts +0 -1
  834. package/dist/index.js +0 -1
  835. package/package.json +8 -8
  836. package/dist/httpAdapter/httpAdapter.errorResponse.js +0 -137
  837. package/dist/httpQuery/http.query.d.ts +0 -110
  838. package/dist/httpQuery/http.query.js +0 -484
@@ -139,33 +139,36 @@ export function createOptionsResponse(allowedMethods) {
139
139
  * Default handler used when no route matches a request.
140
140
  */
141
141
  export function defaultNotFoundHandler(context) {
142
- return new HttpResponseContext({
143
- status: 404,
144
- headers: { "content-type": "application/json; charset=utf-8" },
145
- body: {
146
- error: "Not Found",
147
- method: context.method,
148
- path: context.path,
149
- },
142
+ return jsonErrorResponse(404, {
143
+ error: "Not Found",
144
+ code: "NOT_FOUND",
145
+ method: context.method,
146
+ path: context.path,
150
147
  });
151
148
  }
152
149
  /**
153
150
  * Default handler used when a path matches but the method does not.
154
151
  */
155
152
  export function defaultMethodNotAllowedHandler(context, allowedMethods) {
156
- return new HttpResponseContext({
157
- status: 405,
158
- headers: {
159
- allow: formatAllowHeader(allowedMethods),
160
- "content-type": "application/json; charset=utf-8",
161
- },
162
- body: {
163
- error: "Method Not Allowed",
164
- method: context.method,
165
- path: context.path,
166
- allowed: [...allowedMethods],
167
- },
168
- });
153
+ return jsonErrorResponse(405, {
154
+ error: "Method Not Allowed",
155
+ code: "METHOD_NOT_ALLOWED",
156
+ method: context.method,
157
+ path: context.path,
158
+ allowed: [...allowedMethods],
159
+ }).setHeader("allow", formatAllowHeader(allowedMethods));
160
+ }
161
+ /**
162
+ * Builds a default error response the same way `.json()` does, so its body
163
+ * is the serialized string every other JSON response carries. The default
164
+ * 404/405 used to keep a plain object as the body while a handler's
165
+ * `.json()` produced a string, so `result.response.body` had two types.
166
+ * Every framework-built error body carries `error` and `code`.
167
+ */
168
+ function jsonErrorResponse(status, body) {
169
+ return new HttpResponseContext({ status })
170
+ .json(body)
171
+ .setHeader("content-type", "application/json; charset=utf-8");
169
172
  }
170
173
  /* -------------------------------------------------------------------------- */
171
174
  /* Route Execution */
@@ -239,4 +242,3 @@ export async function executeRoute(route, context) {
239
242
  };
240
243
  return run(0);
241
244
  }
242
- //# sourceMappingURL=httpRoute.factory.base.js.map
@@ -15,6 +15,13 @@ export declare function createRouter(options?: RouterOptions): HttpRouter;
15
15
  export declare function createRoute(definition: RouteDefinition): RouteDefinition;
16
16
  /**
17
17
  * Builds a route path from a pattern and parameters.
18
+ *
19
+ * Handles every parameter spelling the router accepts — `:id`, `:id?`,
20
+ * `:id(\\d+)`, `{name}`, `{name?:\\w+}` and a trailing `*rest` — and
21
+ * percent-encodes each value (a wildcard value segment by segment). An
22
+ * omitted optional parameter no longer leaves a trailing slash
23
+ * (`/reports/2026/`), and a missing required parameter throws
24
+ * {@link HttpRouterError} rather than a plain `Error`.
18
25
  */
19
26
  export declare function buildRoutePath(pattern: string, params?: Readonly<Record<string, string | number>>): string;
20
27
  /**
@@ -33,4 +40,3 @@ export declare function isRouteConflictError(value: unknown): value is RouteConf
33
40
  * Type guard for InvalidRoutePatternError instances.
34
41
  */
35
42
  export declare function isInvalidRoutePatternError(value: unknown): value is InvalidRoutePatternError;
36
- //# sourceMappingURL=httpRoute.factory.d.ts.map
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { HttpRouter } from "../register/httpRouter.register.js";
5
5
  import { HttpRouterGroup } from "../group/httpRouterGroup.core.js";
6
- import { RouteConflictError, InvalidRoutePatternError, } from "../error/httpRouter.error.js";
6
+ import { HttpRouterError, RouteConflictError, InvalidRoutePatternError, } from "../error/httpRouter.error.js";
7
7
  import { normalizeRoutePattern } from "../util/httpRoute.util.js";
8
8
  /**
9
9
  * Creates a new HTTP router instance.
@@ -24,21 +24,45 @@ export function createRoute(definition) {
24
24
  }
25
25
  /**
26
26
  * Builds a route path from a pattern and parameters.
27
+ *
28
+ * Handles every parameter spelling the router accepts — `:id`, `:id?`,
29
+ * `:id(\\d+)`, `{name}`, `{name?:\\w+}` and a trailing `*rest` — and
30
+ * percent-encodes each value (a wildcard value segment by segment). An
31
+ * omitted optional parameter no longer leaves a trailing slash
32
+ * (`/reports/2026/`), and a missing required parameter throws
33
+ * {@link HttpRouterError} rather than a plain `Error`.
27
34
  */
28
35
  export function buildRoutePath(pattern, params = {}) {
29
36
  const normalized = normalizeRoutePattern(pattern);
30
- return normalized
31
- .replace(/:([a-zA-Z_][a-zA-Z0-9_-]*)(\?)?/g, (_match, name, optional) => {
32
- const value = params[name];
33
- if (value === undefined || value === null) {
34
- if (optional) {
35
- return "";
36
- }
37
- throw new Error(`Missing route parameter "${name}".`);
37
+ const segments = normalized
38
+ .split("/")
39
+ .filter((segment) => segment !== "")
40
+ .map((segment) => buildSegment(segment, params))
41
+ .filter((segment) => segment !== undefined);
42
+ return `/${segments.join("/")}`;
43
+ }
44
+ const COLON_PARAMETER = /^:([a-zA-Z_][a-zA-Z0-9_-]*)(?:\(.*\))?(\?)?$/;
45
+ const BRACE_PARAMETER = /^\{([a-zA-Z_][a-zA-Z0-9_-]*)(\?)?(?::.+)?\}$/;
46
+ function buildSegment(segment, params) {
47
+ if (segment.startsWith("*")) {
48
+ const value = params[segment.slice(1) || "*"];
49
+ return value === undefined
50
+ ? undefined
51
+ : String(value).split("/").map(encodeURIComponent).join("/");
52
+ }
53
+ const match = COLON_PARAMETER.exec(segment) ?? BRACE_PARAMETER.exec(segment);
54
+ if (!match) {
55
+ return segment;
56
+ }
57
+ const [, name, optional] = match;
58
+ const value = name === undefined ? undefined : params[name];
59
+ if (value === undefined || value === null) {
60
+ if (optional) {
61
+ return undefined;
38
62
  }
39
- return encodeURIComponent(String(value));
40
- })
41
- .replace(/\/+/g, "/");
63
+ throw new HttpRouterError(`Missing route parameter "${name}".`);
64
+ }
65
+ return encodeURIComponent(String(value));
42
66
  }
43
67
  /**
44
68
  * Type guard for HttpRouter instances.
@@ -64,4 +88,3 @@ export function isRouteConflictError(value) {
64
88
  export function isInvalidRoutePatternError(value) {
65
89
  return value instanceof InvalidRoutePatternError;
66
90
  }
67
- //# sourceMappingURL=httpRoute.factory.js.map
@@ -5,4 +5,3 @@
5
5
  */
6
6
  export * from "./httpRoute.factory.js";
7
7
  export * from "./httpRoute.factory.base.js";
8
- //# sourceMappingURL=index.d.ts.map
@@ -5,4 +5,3 @@
5
5
  */
6
6
  export * from "./httpRoute.factory.js";
7
7
  export * from "./httpRoute.factory.base.js";
8
- //# sourceMappingURL=index.js.map
@@ -24,4 +24,3 @@ export declare class HttpRouterGroup {
24
24
  private resolve;
25
25
  private mergeOptions;
26
26
  }
27
- //# sourceMappingURL=httpRouterGroup.core.d.ts.map
@@ -78,4 +78,3 @@ function openAPIOf(options) {
78
78
  return options.openapi ??
79
79
  options.metadata?.["openapi"];
80
80
  }
81
- //# sourceMappingURL=httpRouterGroup.core.js.map
@@ -4,4 +4,3 @@
4
4
  * HTTP router group utilities.
5
5
  */
6
6
  export * from "./httpRouterGroup.core.js";
7
- //# sourceMappingURL=index.d.ts.map
@@ -4,4 +4,3 @@
4
4
  * HTTP router group utilities.
5
5
  */
6
6
  export * from "./httpRouterGroup.core.js";
7
- //# sourceMappingURL=index.js.map
@@ -10,4 +10,3 @@ export * from "./error/index.js";
10
10
  export * from "./group/index.js";
11
11
  export * from "./register/index.js";
12
12
  export * from "./util/index.js";
13
- //# sourceMappingURL=index.d.ts.map
@@ -10,4 +10,3 @@ export * from "./error/index.js";
10
10
  export * from "./group/index.js";
11
11
  export * from "./register/index.js";
12
12
  export * from "./util/index.js";
13
- //# sourceMappingURL=index.js.map
@@ -6,6 +6,13 @@ import type { HttpRequestContext as RequestContext } from "../../../httpRequest/
6
6
  import { HttpRouterGroup } from "../group/httpRouterGroup.core.js";
7
7
  export declare class HttpRouter {
8
8
  private readonly routes;
9
+ /**
10
+ * The routes in matching order. Rebuilt lazily after a registration or
11
+ * removal; `match()` used to copy and sort every route on every request.
12
+ */
13
+ private sortedCache;
14
+ private readonly shadowedRoutes;
15
+ private readonly errorHandler;
9
16
  private readonly routerOptions;
10
17
  private readonly notFoundHandler;
11
18
  private readonly methodNotAllowedHandler;
@@ -35,11 +42,18 @@ export declare class HttpRouter {
35
42
  compiled(): readonly CompiledRoute[];
36
43
  find(id: string): MatchedRoute | undefined;
37
44
  match(method: string, path: string): RouterMatch;
45
+ private withAutomaticMethods;
38
46
  dispatch(request: RequestContext, options?: {
39
47
  readonly signal?: AbortSignal;
40
48
  readonly state?: Map<string, unknown>;
41
49
  }): Promise<RouterResult>;
42
50
  private register;
51
+ /**
52
+ * Refuses a registration that leaves a route unreachable: the new route
53
+ * when an earlier-ranked route already matches everything it would, or an
54
+ * existing route the new one would rank ahead of and fully cover.
55
+ */
56
+ private assertReachable;
57
+ private compareRoutes;
43
58
  private sortedRoutes;
44
59
  }
45
- //# sourceMappingURL=httpRouter.register.d.ts.map
@@ -3,13 +3,21 @@
3
3
  */
4
4
  import { HttpRouterError, RouteConflictError, } from "../error/httpRouter.error.js";
5
5
  import { HttpRouterGroup } from "../group/httpRouterGroup.core.js";
6
- import { collectAllowedMethods, createFallbackRoute, createOptionsResponse, defaultMethodNotAllowedHandler, defaultNotFoundHandler, executeRoute, extractRouteSequence, isHttpMethod, normalizeMethod, normalizeMethods, normalizeResponse, } from "../factory/httpRoute.factory.base.js";
6
+ import { collectAllowedMethods, createFallbackRoute, createOptionsResponse, defaultMethodNotAllowedHandler, defaultNotFoundHandler, executeRoute, extractRouteSequence, normalizeMethod, normalizeMethods, normalizeResponse, } from "../factory/httpRoute.factory.base.js";
7
7
  import { getRequestMethod, getRequestSignal, applyRouteParams, getRequestUrl, normalizeMatchPath, normalizePath, normalizeRoutePattern, parseQuery, parseUrl, } from "../util/httpRoute.util.js";
8
8
  import { matchCompiledRoute } from "../../matching/httpRoute.matcher.core.js";
9
9
  import { compareSegmentSpecificity, compileRoute, } from "../../pattern/httpRoute.pattern.parse.js";
10
10
  import { createRouterMiddlewareContext } from "../../httpRouter.context.js";
11
+ import { shadowsRoute } from "./httpRouter.shadow.js";
11
12
  export class HttpRouter {
12
13
  routes = [];
14
+ /**
15
+ * The routes in matching order. Rebuilt lazily after a registration or
16
+ * removal; `match()` used to copy and sort every route on every request.
17
+ */
18
+ sortedCache;
19
+ shadowedRoutes;
20
+ errorHandler;
13
21
  routerOptions;
14
22
  notFoundHandler;
15
23
  methodNotAllowedHandler;
@@ -24,6 +32,8 @@ export class HttpRouter {
24
32
  this.notFoundHandler = options.notFoundHandler ?? defaultNotFoundHandler;
25
33
  this.methodNotAllowedHandler =
26
34
  options.methodNotAllowedHandler ?? defaultMethodNotAllowedHandler;
35
+ this.shadowedRoutes = options.shadowedRoutes ?? "throw";
36
+ this.errorHandler = options.onError;
27
37
  }
28
38
  /* ------------------------------------------------------------------------ */
29
39
  /* Route Registration */
@@ -96,10 +106,12 @@ export class HttpRouter {
96
106
  return false;
97
107
  }
98
108
  this.routes.splice(index, 1);
109
+ this.sortedCache = undefined;
99
110
  return true;
100
111
  }
101
112
  clear() {
102
113
  this.routes.length = 0;
114
+ this.sortedCache = undefined;
103
115
  }
104
116
  count() {
105
117
  return this.routes.length;
@@ -125,8 +137,7 @@ export class HttpRouter {
125
137
  const normalizedPath = normalizePath(path);
126
138
  const matchPath = normalizeMatchPath(path);
127
139
  const candidates = this.sortedRoutes();
128
- const allowedForPath = () => collectAllowedMethods(candidates, matchPath, this.routerOptions.caseSensitive);
129
- const allowed = new Set();
140
+ const allowedForPath = () => this.withAutomaticMethods(collectAllowedMethods(candidates, matchPath, this.routerOptions.caseSensitive));
130
141
  let pathMatched = false;
131
142
  for (const route of candidates) {
132
143
  const params = matchCompiledRoute(route, matchPath, this.routerOptions.caseSensitive);
@@ -140,14 +151,11 @@ export class HttpRouter {
140
151
  matched: true,
141
152
  route: route.definition,
142
153
  params,
143
- allowedMethods: Object.freeze([...allowedForPath()]),
154
+ allowedMethods: Object.freeze(allowedForPath()),
144
155
  path: normalizedPath,
145
156
  method: normalizedMethod,
146
157
  };
147
158
  }
148
- if (isHttpMethod(routeMethod)) {
149
- allowed.add(routeMethod);
150
- }
151
159
  }
152
160
  if (normalizedMethod === "HEAD" && this.routerOptions.automaticHead) {
153
161
  for (const route of candidates) {
@@ -160,7 +168,7 @@ export class HttpRouter {
160
168
  matched: true,
161
169
  route: route.definition,
162
170
  params,
163
- allowedMethods: Object.freeze([...allowedForPath(), "HEAD"]),
171
+ allowedMethods: Object.freeze(allowedForPath()),
164
172
  path: normalizedPath,
165
173
  method: normalizedMethod,
166
174
  };
@@ -174,20 +182,39 @@ export class HttpRouter {
174
182
  matched: true,
175
183
  route: undefined,
176
184
  params: {},
177
- allowedMethods: Object.freeze([...allowedForPath(), "OPTIONS"]),
185
+ allowedMethods: Object.freeze(allowedForPath()),
178
186
  path: normalizedPath,
179
187
  method: normalizedMethod,
180
188
  };
181
189
  }
190
+ /*
191
+ * The methods a `405` advertises must be the ones the router actually
192
+ * answers: the automatic `HEAD` (for a `GET` route) and `OPTIONS` were
193
+ * left out, so `Allow: GET, PATCH` contradicted the `OPTIONS` response
194
+ * for the same path.
195
+ */
182
196
  return {
183
197
  matched: false,
184
198
  route: undefined,
185
199
  params: {},
186
- allowedMethods: Object.freeze([...allowed]),
200
+ allowedMethods: Object.freeze(pathMatched ? allowedForPath() : []),
187
201
  path: normalizedPath,
188
202
  method: normalizedMethod,
189
203
  };
190
204
  }
205
+ withAutomaticMethods(methods) {
206
+ const result = new Set(methods);
207
+ if (result.size === 0) {
208
+ return [];
209
+ }
210
+ if (this.routerOptions.automaticHead && result.has("GET")) {
211
+ result.add("HEAD");
212
+ }
213
+ if (this.routerOptions.automaticOptions) {
214
+ result.add("OPTIONS");
215
+ }
216
+ return [...result];
217
+ }
191
218
  /* ------------------------------------------------------------------------ */
192
219
  /* Dispatch */
193
220
  /* ------------------------------------------------------------------------ */
@@ -213,11 +240,34 @@ export class HttpRouter {
213
240
  };
214
241
  if (match.matched && match.route) {
215
242
  applyRouteParams(request, match.params);
216
- const response = await executeRoute(match.route, routerContext);
217
- return {
218
- response: await normalizeResponse(response),
219
- route: match.route,
220
- };
243
+ try {
244
+ const response = await executeRoute(match.route, routerContext);
245
+ return {
246
+ response: await normalizeResponse(response),
247
+ route: match.route,
248
+ };
249
+ }
250
+ catch (error) {
251
+ if (!this.errorHandler) {
252
+ throw error;
253
+ }
254
+ const handled = await this.errorHandler(error, {
255
+ request,
256
+ path,
257
+ method,
258
+ signal,
259
+ state,
260
+ route: match.route,
261
+ });
262
+ if (handled === undefined) {
263
+ throw error;
264
+ }
265
+ return {
266
+ response: await normalizeResponse(handled),
267
+ route: match.route,
268
+ error,
269
+ };
270
+ }
221
271
  }
222
272
  if (method.toUpperCase() === "OPTIONS" &&
223
273
  match.allowedMethods.length > 0 &&
@@ -282,26 +332,74 @@ export class HttpRouter {
282
332
  handler,
283
333
  middleware: Object.freeze([...(options.middleware ?? [])]),
284
334
  };
285
- this.routes.push({
335
+ const route = {
286
336
  definition,
287
337
  segments: compiled.segments,
288
338
  score: compiled.score,
289
339
  strictTrailingSlash: compiled.strictTrailingSlash,
290
340
  expectsTrailingSlash: compiled.expectsTrailingSlash,
291
- });
341
+ };
342
+ if (this.shadowedRoutes === "throw") {
343
+ this.assertReachable(route);
344
+ }
345
+ this.routes.push(route);
346
+ this.sortedCache = undefined;
292
347
  return () => {
293
348
  this.remove(normalizedMethod, normalizedPath);
294
349
  };
295
350
  }
296
- sortedRoutes() {
297
- return [...this.routes].sort((left, right) => {
298
- const specificity = compareSegmentSpecificity(left.segments, right.segments);
299
- if (specificity !== 0) {
300
- return specificity;
351
+ /**
352
+ * Refuses a registration that leaves a route unreachable: the new route
353
+ * when an earlier-ranked route already matches everything it would, or an
354
+ * existing route the new one would rank ahead of and fully cover.
355
+ */
356
+ assertReachable(candidate) {
357
+ for (const existing of this.routes) {
358
+ const existingFirst = this.compareRoutes(existing, candidate) < 0;
359
+ const [first, second] = existingFirst
360
+ ? [existing, candidate]
361
+ : [candidate, existing];
362
+ if (!shadowsRoute(first, second, this.routerOptions.caseSensitive)) {
363
+ continue;
301
364
  }
302
- return (extractRouteSequence(left.definition.id) -
303
- extractRouteSequence(right.definition.id));
304
- });
365
+ throw shadowedRouteError(second, first);
366
+ }
305
367
  }
368
+ compareRoutes(left, right) {
369
+ const specificity = compareSegmentSpecificity(left.segments, right.segments);
370
+ if (specificity !== 0) {
371
+ return specificity;
372
+ }
373
+ /*
374
+ * At equal specificity a method-specific route is tried before an
375
+ * `all()` route, so `all("/x/:id")` no longer swallows a later
376
+ * `get("/x/:id")`.
377
+ */
378
+ const leftAny = left.definition.method === "*" ? 1 : 0;
379
+ const rightAny = right.definition.method === "*" ? 1 : 0;
380
+ if (leftAny !== rightAny) {
381
+ return leftAny - rightAny;
382
+ }
383
+ return (extractRouteSequence(left.definition.id) -
384
+ extractRouteSequence(right.definition.id));
385
+ }
386
+ sortedRoutes() {
387
+ if (this.sortedCache === undefined) {
388
+ this.sortedCache = [...this.routes].sort((left, right) => this.compareRoutes(left, right));
389
+ }
390
+ return this.sortedCache;
391
+ }
392
+ }
393
+ /**
394
+ * Builds the conflict error for a shadowed route, naming the route that
395
+ * shadows it in both the message and `reason`.
396
+ */
397
+ function shadowedRouteError(shadowed, by) {
398
+ return new RouteConflictError(shadowed.definition.path, shadowed.definition.method, {
399
+ reason: `shadowed by ${by.definition.method} ${by.definition.path}`,
400
+ message: `Route ${shadowed.definition.method} ${shadowed.definition.path} can ` +
401
+ `never match: ${by.definition.method} ${by.definition.path} is tried ` +
402
+ "first and matches every request it would. Pass " +
403
+ '{ shadowedRoutes: "ignore" } to register it anyway.',
404
+ });
306
405
  }
307
- //# sourceMappingURL=httpRouter.register.js.map
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Route shadow detection: a route at least as general as one tried before
3
+ * it, for the same method, can never be reached. Only an exact duplicate
4
+ * used to be refused, so `/x/:id` followed by `/x/:slug` registered without
5
+ * complaint and the second handler never ran.
6
+ */
7
+ import type { CompiledRoute } from "../types/httpRouter.type.js";
8
+ /**
9
+ * Whether `first`, which the router tries before `second`, matches every
10
+ * request `second` matches, leaving `second` unreachable. Deliberately
11
+ * conservative: only a shadow provable from the two patterns alone is
12
+ * reported, so `/x/:id(\\d+)` before `/x/:slug` never is.
13
+ *
14
+ * @param first - The route tried first.
15
+ * @param second - The route tried afterwards.
16
+ * @param caseSensitive - The router's literal comparison mode.
17
+ */
18
+ export declare function shadowsRoute(first: CompiledRoute, second: CompiledRoute, caseSensitive: boolean): boolean;
@@ -0,0 +1,91 @@
1
+ /**
2
+ * Route shadow detection: a route at least as general as one tried before
3
+ * it, for the same method, can never be reached. Only an exact duplicate
4
+ * used to be refused, so `/x/:id` followed by `/x/:slug` registered without
5
+ * complaint and the second handler never ran.
6
+ */
7
+ /**
8
+ * Whether `first`, which the router tries before `second`, matches every
9
+ * request `second` matches, leaving `second` unreachable. Deliberately
10
+ * conservative: only a shadow provable from the two patterns alone is
11
+ * reported, so `/x/:id(\\d+)` before `/x/:slug` never is.
12
+ *
13
+ * @param first - The route tried first.
14
+ * @param second - The route tried afterwards.
15
+ * @param caseSensitive - The router's literal comparison mode.
16
+ */
17
+ export function shadowsRoute(first, second, caseSensitive) {
18
+ if (!methodCovers(first.definition.method, second.definition.method)) {
19
+ return false;
20
+ }
21
+ if (first.strictTrailingSlash !== second.strictTrailingSlash) {
22
+ return false;
23
+ }
24
+ if (first.strictTrailingSlash &&
25
+ (first.expectsTrailingSlash ?? false) !==
26
+ (second.expectsTrailingSlash ?? false)) {
27
+ return false;
28
+ }
29
+ return segmentsCover(first.segments, second.segments, caseSensitive);
30
+ }
31
+ function methodCovers(first, second) {
32
+ return first === "*" || first === second;
33
+ }
34
+ function segmentsCover(first, second, caseSensitive) {
35
+ const length = Math.max(first.length, second.length);
36
+ for (let index = 0; index < length; index += 1) {
37
+ const left = first[index];
38
+ const right = second[index];
39
+ if (left === undefined) {
40
+ return false;
41
+ }
42
+ if (left.type === "wildcard") {
43
+ return true;
44
+ }
45
+ if (right === undefined) {
46
+ return tailMatchesNothing(first, index);
47
+ }
48
+ if (!segmentCovers(left, right, caseSensitive)) {
49
+ return false;
50
+ }
51
+ }
52
+ return true;
53
+ }
54
+ function tailMatchesNothing(segments, start) {
55
+ for (let index = start; index < segments.length; index += 1) {
56
+ const segment = segments[index];
57
+ if (segment === undefined || segment.type === "wildcard") {
58
+ continue;
59
+ }
60
+ if (segment.type === "literal" || !segment.optional) {
61
+ return false;
62
+ }
63
+ }
64
+ return true;
65
+ }
66
+ function segmentCovers(left, right, caseSensitive) {
67
+ if (right.type === "wildcard") {
68
+ return false;
69
+ }
70
+ if (left.type === "literal") {
71
+ return (right.type === "literal" &&
72
+ (caseSensitive
73
+ ? left.value === right.value
74
+ : left.value.toLowerCase() === right.value.toLowerCase()));
75
+ }
76
+ if (right.type === "literal") {
77
+ return left.pattern === undefined || left.pattern.test(right.value);
78
+ }
79
+ if (right.optional && !left.optional) {
80
+ return false;
81
+ }
82
+ return constraintCovers(left, right);
83
+ }
84
+ function constraintCovers(left, right) {
85
+ if (left.pattern === undefined) {
86
+ return true;
87
+ }
88
+ return (right.pattern !== undefined &&
89
+ right.pattern.source === left.pattern.source &&
90
+ right.pattern.flags === left.pattern.flags);
91
+ }
@@ -4,4 +4,4 @@
4
4
  * HTTP route registration utilities.
5
5
  */
6
6
  export * from "./httpRouter.register.js";
7
- //# sourceMappingURL=index.d.ts.map
7
+ export * from "./httpRouter.shadow.js";
@@ -4,4 +4,4 @@
4
4
  * HTTP route registration utilities.
5
5
  */
6
6
  export * from "./httpRouter.register.js";
7
- //# sourceMappingURL=index.js.map
7
+ export * from "./httpRouter.shadow.js";
@@ -31,4 +31,3 @@ export declare function matchesLookup(entry: RouteRegistryEntry, path: string, m
31
31
  */
32
32
  export declare function extractSequence(path: string): number;
33
33
  export {};
34
- //# sourceMappingURL=httpRegistry.helper.d.ts.map
@@ -66,4 +66,3 @@ export function extractSequence(path) {
66
66
  const sequence = /:(\d+)/.exec(path)?.[1];
67
67
  return sequence === undefined ? 0 : parseInt(sequence, 10);
68
68
  }
69
- //# sourceMappingURL=httpRegistry.helper.js.map
@@ -30,4 +30,3 @@ export interface RouteRegistrySnapshot {
30
30
  readonly timestamp: number;
31
31
  readonly version: number;
32
32
  }
33
- //# sourceMappingURL=httpRegistry.type.d.ts.map
@@ -4,4 +4,3 @@
4
4
  * @module httpRoute/registry/types
5
5
  */
6
6
  export {};
7
- //# sourceMappingURL=httpRegistry.type.js.map
@@ -5,4 +5,3 @@
5
5
  */
6
6
  export * from "./httpRegistry.type.js";
7
7
  export * from "./httpRegistry.helper.js";
8
- //# sourceMappingURL=index.d.ts.map
@@ -5,4 +5,3 @@
5
5
  */
6
6
  export * from "./httpRegistry.type.js";
7
7
  export * from "./httpRegistry.helper.js";
8
- //# sourceMappingURL=index.js.map
@@ -20,4 +20,3 @@ export declare class RouteRegistry {
20
20
  get version_number(): number;
21
21
  private createKey;
22
22
  }
23
- //# sourceMappingURL=httpRegistry.core.d.ts.map
@@ -94,4 +94,3 @@ export class RouteRegistry {
94
94
  return `${normalizedMethod}:${normalizedPath}`;
95
95
  }
96
96
  }
97
- //# sourceMappingURL=httpRegistry.core.js.map